summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml24
-rw-r--r--INSTALL.md37
-rw-r--r--Makefile27
-rw-r--r--audio.asm207
-rw-r--r--audio/engine_1.asm448
-rw-r--r--audio/engine_2.asm252
-rw-r--r--audio/engine_3.asm125
-rw-r--r--audio/engine_4.asm130
-rw-r--r--audio/headers/musicheaders1.asm89
-rw-r--r--audio/headers/musicheaders2.asm28
-rw-r--r--audio/headers/musicheaders3.asm81
-rw-r--r--audio/headers/musicheaders4.asm15
-rw-r--r--audio/headers/sfxheaders1.asm319
-rw-r--r--audio/headers/sfxheaders2.asm394
-rw-r--r--audio/headers/sfxheaders3.asm335
-rw-r--r--audio/headers/sfxheaders4.asm414
-rw-r--r--audio/music/bikeriding.asm874
-rw-r--r--audio/music/celadon.asm660
-rw-r--r--audio/music/cinnabar.asm466
-rw-r--r--audio/music/cinnabarmansion.asm200
-rw-r--r--audio/music/cities1.asm1030
-rw-r--r--audio/music/cities2.asm678
-rw-r--r--audio/music/credits.asm1410
-rw-r--r--audio/music/defeatedgymleader.asm960
-rw-r--r--audio/music/defeatedtrainer.asm358
-rw-r--r--audio/music/defeatedwildmon.asm350
-rw-r--r--audio/music/dungeon1.asm920
-rw-r--r--audio/music/dungeon2.asm406
-rw-r--r--audio/music/dungeon3.asm920
-rw-r--r--audio/music/finalbattle.asm2068
-rw-r--r--audio/music/gamecorner.asm874
-rw-r--r--audio/music/gym.asm586
-rw-r--r--audio/music/gymleaderbattle.asm1744
-rw-r--r--audio/music/halloffame.asm130
-rw-r--r--audio/music/indigoplateau.asm472
-rw-r--r--audio/music/introbattle.asm514
-rw-r--r--audio/music/jigglypuffsong.asm60
-rw-r--r--audio/music/lavender.asm280
-rw-r--r--audio/music/meeteviltrainer.asm106
-rw-r--r--audio/music/meetfemaletrainer.asm136
-rw-r--r--audio/music/meetjessiejames.asm398
-rw-r--r--audio/music/meetmaletrainer.asm190
-rw-r--r--audio/music/meetprofoak.asm526
-rw-r--r--audio/music/meetrival.asm486
-rw-r--r--audio/music/museumguy.asm480
-rw-r--r--audio/music/oakslab.asm420
-rw-r--r--audio/music/pallettown.asm500
-rw-r--r--audio/music/pkmnhealed.asm60
-rw-r--r--audio/music/pokecenter.asm638
-rw-r--r--audio/music/pokemontower.asm544
-rwxr-xr-xaudio/music/printer.asm294
-rw-r--r--audio/music/routes1.asm570
-rw-r--r--audio/music/routes2.asm592
-rw-r--r--audio/music/routes3.asm808
-rw-r--r--audio/music/routes4.asm1078
-rw-r--r--audio/music/safarizone.asm130
-rw-r--r--audio/music/silphco.asm1302
-rw-r--r--audio/music/ssanne.asm522
-rw-r--r--audio/music/surfing.asm542
-rw-r--r--audio/music/surfingpikachu.asm904
-rw-r--r--audio/music/titlescreen.asm960
-rw-r--r--audio/music/trainerbattle.asm2628
-rw-r--r--audio/music/unusedsong.asm364
-rw-r--r--audio/music/vermilion.asm542
-rw-r--r--audio/music/wildbattle.asm1278
-rw-r--r--audio/music/yellowintro.asm588
-rw-r--r--audio/music/yellowunusedsong.asm552
-rw-r--r--audio/sfx/59_1.asm18
-rw-r--r--audio/sfx/59_3.asm18
-rw-r--r--audio/sfx/arrow_tiles_1.asm12
-rw-r--r--audio/sfx/arrow_tiles_3.asm12
-rw-r--r--audio/sfx/ball_poof.asm18
-rw-r--r--audio/sfx/ball_toss.asm18
-rw-r--r--audio/sfx/battle_09.asm12
-rw-r--r--audio/sfx/battle_0b.asm6
-rw-r--r--audio/sfx/battle_0c.asm10
-rw-r--r--audio/sfx/battle_0d.asm10
-rw-r--r--audio/sfx/battle_0e.asm8
-rw-r--r--audio/sfx/battle_0f.asm12
-rw-r--r--audio/sfx/battle_12.asm12
-rw-r--r--audio/sfx/battle_13.asm12
-rw-r--r--audio/sfx/battle_14.asm12
-rw-r--r--audio/sfx/battle_16.asm10
-rw-r--r--audio/sfx/battle_17.asm12
-rw-r--r--audio/sfx/battle_18.asm8
-rw-r--r--audio/sfx/battle_19.asm10
-rw-r--r--audio/sfx/battle_1b.asm8
-rw-r--r--audio/sfx/battle_1c.asm10
-rw-r--r--audio/sfx/battle_1e.asm28
-rw-r--r--audio/sfx/battle_20.asm8
-rw-r--r--audio/sfx/battle_21.asm14
-rw-r--r--audio/sfx/battle_22.asm8
-rw-r--r--audio/sfx/battle_23.asm14
-rw-r--r--audio/sfx/battle_24.asm20
-rw-r--r--audio/sfx/battle_25.asm14
-rw-r--r--audio/sfx/battle_26.asm18
-rw-r--r--audio/sfx/battle_27.asm38
-rw-r--r--audio/sfx/battle_28.asm34
-rw-r--r--audio/sfx/battle_29.asm32
-rw-r--r--audio/sfx/battle_2a.asm48
-rw-r--r--audio/sfx/battle_2b.asm38
-rw-r--r--audio/sfx/battle_2c.asm42
-rw-r--r--audio/sfx/battle_2e.asm46
-rw-r--r--audio/sfx/battle_2f.asm34
-rw-r--r--audio/sfx/battle_31.asm32
-rw-r--r--audio/sfx/battle_32.asm20
-rw-r--r--audio/sfx/battle_33.asm32
-rw-r--r--audio/sfx/battle_34.asm36
-rw-r--r--audio/sfx/battle_35.asm38
-rw-r--r--audio/sfx/battle_36.asm82
-rw-r--r--audio/sfx/caught_mon.asm94
-rw-r--r--audio/sfx/collision_1.asm12
-rw-r--r--audio/sfx/collision_3.asm12
-rw-r--r--audio/sfx/cry00_1.asm34
-rw-r--r--audio/sfx/cry00_2.asm34
-rw-r--r--audio/sfx/cry00_3.asm34
-rw-r--r--audio/sfx/cry01_1.asm40
-rw-r--r--audio/sfx/cry01_2.asm40
-rw-r--r--audio/sfx/cry01_3.asm40
-rw-r--r--audio/sfx/cry02_1.asm26
-rw-r--r--audio/sfx/cry02_2.asm26
-rw-r--r--audio/sfx/cry02_3.asm26
-rw-r--r--audio/sfx/cry03_1.asm52
-rw-r--r--audio/sfx/cry03_2.asm52
-rw-r--r--audio/sfx/cry03_3.asm52
-rw-r--r--audio/sfx/cry04_1.asm56
-rw-r--r--audio/sfx/cry04_2.asm56
-rw-r--r--audio/sfx/cry04_3.asm56
-rw-r--r--audio/sfx/cry05_1.asm30
-rw-r--r--audio/sfx/cry05_2.asm30
-rw-r--r--audio/sfx/cry05_3.asm30
-rw-r--r--audio/sfx/cry06_1.asm36
-rw-r--r--audio/sfx/cry06_2.asm36
-rw-r--r--audio/sfx/cry06_3.asm36
-rw-r--r--audio/sfx/cry07_1.asm34
-rw-r--r--audio/sfx/cry07_2.asm34
-rw-r--r--audio/sfx/cry07_3.asm34
-rw-r--r--audio/sfx/cry08_1.asm38
-rw-r--r--audio/sfx/cry08_2.asm38
-rw-r--r--audio/sfx/cry08_3.asm38
-rw-r--r--audio/sfx/cry09_1.asm62
-rw-r--r--audio/sfx/cry09_2.asm62
-rw-r--r--audio/sfx/cry09_3.asm62
-rw-r--r--audio/sfx/cry0a_1.asm62
-rw-r--r--audio/sfx/cry0a_2.asm62
-rw-r--r--audio/sfx/cry0a_3.asm62
-rw-r--r--audio/sfx/cry0b_1.asm66
-rw-r--r--audio/sfx/cry0b_2.asm66
-rw-r--r--audio/sfx/cry0b_3.asm66
-rw-r--r--audio/sfx/cry0c_1.asm50
-rw-r--r--audio/sfx/cry0c_2.asm50
-rw-r--r--audio/sfx/cry0c_3.asm50
-rw-r--r--audio/sfx/cry0d_1.asm72
-rw-r--r--audio/sfx/cry0d_2.asm72
-rw-r--r--audio/sfx/cry0d_3.asm72
-rw-r--r--audio/sfx/cry0e_1.asm38
-rw-r--r--audio/sfx/cry0e_2.asm38
-rw-r--r--audio/sfx/cry0e_3.asm38
-rw-r--r--audio/sfx/cry0f_1.asm50
-rw-r--r--audio/sfx/cry0f_2.asm50
-rw-r--r--audio/sfx/cry0f_3.asm50
-rw-r--r--audio/sfx/cry10_1.asm54
-rw-r--r--audio/sfx/cry10_2.asm54
-rw-r--r--audio/sfx/cry10_3.asm54
-rw-r--r--audio/sfx/cry11_1.asm60
-rw-r--r--audio/sfx/cry11_2.asm60
-rw-r--r--audio/sfx/cry11_3.asm60
-rw-r--r--audio/sfx/cry12_1.asm40
-rw-r--r--audio/sfx/cry12_2.asm40
-rw-r--r--audio/sfx/cry12_3.asm40
-rw-r--r--audio/sfx/cry13_1.asm52
-rw-r--r--audio/sfx/cry13_2.asm52
-rw-r--r--audio/sfx/cry13_3.asm52
-rw-r--r--audio/sfx/cry14_1.asm34
-rw-r--r--audio/sfx/cry14_2.asm34
-rw-r--r--audio/sfx/cry14_3.asm34
-rw-r--r--audio/sfx/cry15_1.asm52
-rw-r--r--audio/sfx/cry15_2.asm52
-rw-r--r--audio/sfx/cry15_3.asm52
-rw-r--r--audio/sfx/cry16_1.asm34
-rw-r--r--audio/sfx/cry16_2.asm34
-rw-r--r--audio/sfx/cry16_3.asm34
-rw-r--r--audio/sfx/cry17_1.asm40
-rw-r--r--audio/sfx/cry17_2.asm40
-rw-r--r--audio/sfx/cry17_3.asm40
-rw-r--r--audio/sfx/cry18_1.asm60
-rw-r--r--audio/sfx/cry18_2.asm60
-rw-r--r--audio/sfx/cry18_3.asm60
-rw-r--r--audio/sfx/cry19_1.asm28
-rw-r--r--audio/sfx/cry19_2.asm28
-rw-r--r--audio/sfx/cry19_3.asm28
-rw-r--r--audio/sfx/cry1a_1.asm52
-rw-r--r--audio/sfx/cry1a_2.asm52
-rw-r--r--audio/sfx/cry1a_3.asm52
-rw-r--r--audio/sfx/cry1b_1.asm44
-rw-r--r--audio/sfx/cry1b_2.asm44
-rw-r--r--audio/sfx/cry1b_3.asm44
-rw-r--r--audio/sfx/cry1c_1.asm54
-rw-r--r--audio/sfx/cry1c_2.asm54
-rw-r--r--audio/sfx/cry1c_3.asm54
-rw-r--r--audio/sfx/cry1d_1.asm50
-rw-r--r--audio/sfx/cry1d_2.asm50
-rw-r--r--audio/sfx/cry1d_3.asm50
-rw-r--r--audio/sfx/cry1e_1.asm68
-rw-r--r--audio/sfx/cry1e_2.asm68
-rw-r--r--audio/sfx/cry1e_3.asm68
-rw-r--r--audio/sfx/cry1f_1.asm40
-rw-r--r--audio/sfx/cry1f_2.asm40
-rw-r--r--audio/sfx/cry1f_3.asm40
-rw-r--r--audio/sfx/cry20_1.asm40
-rw-r--r--audio/sfx/cry20_2.asm40
-rw-r--r--audio/sfx/cry20_3.asm40
-rw-r--r--audio/sfx/cry21_1.asm46
-rw-r--r--audio/sfx/cry21_2.asm46
-rw-r--r--audio/sfx/cry21_3.asm46
-rw-r--r--audio/sfx/cry22_1.asm40
-rw-r--r--audio/sfx/cry22_2.asm40
-rw-r--r--audio/sfx/cry22_3.asm40
-rw-r--r--audio/sfx/cry23_1.asm42
-rw-r--r--audio/sfx/cry23_2.asm42
-rw-r--r--audio/sfx/cry23_3.asm42
-rw-r--r--audio/sfx/cry24_1.asm58
-rw-r--r--audio/sfx/cry24_2.asm58
-rw-r--r--audio/sfx/cry24_3.asm58
-rw-r--r--audio/sfx/cry25_1.asm44
-rw-r--r--audio/sfx/cry25_2.asm44
-rw-r--r--audio/sfx/cry25_3.asm44
-rw-r--r--audio/sfx/cut_1.asm14
-rw-r--r--audio/sfx/cut_3.asm14
-rw-r--r--audio/sfx/cymbal1_1.asm3
-rw-r--r--audio/sfx/cymbal1_2.asm3
-rw-r--r--audio/sfx/cymbal1_3.asm3
-rw-r--r--audio/sfx/cymbal1_4.asm4
-rw-r--r--audio/sfx/cymbal2_1.asm3
-rw-r--r--audio/sfx/cymbal2_2.asm3
-rw-r--r--audio/sfx/cymbal2_3.asm3
-rw-r--r--audio/sfx/cymbal2_4.asm4
-rw-r--r--audio/sfx/cymbal3_1.asm3
-rw-r--r--audio/sfx/cymbal3_2.asm3
-rw-r--r--audio/sfx/cymbal3_3.asm3
-rw-r--r--audio/sfx/cymbal3_4.asm4
-rw-r--r--audio/sfx/damage.asm10
-rw-r--r--audio/sfx/denied_1.asm32
-rw-r--r--audio/sfx/denied_3.asm32
-rw-r--r--audio/sfx/dex_page_added.asm26
-rw-r--r--audio/sfx/doubleslap.asm8
-rw-r--r--audio/sfx/enter_pc_1.asm14
-rw-r--r--audio/sfx/enter_pc_3.asm14
-rw-r--r--audio/sfx/faint_fall.asm12
-rw-r--r--audio/sfx/faint_thud.asm18
-rw-r--r--audio/sfx/fly_1.asm36
-rw-r--r--audio/sfx/fly_3.asm36
-rw-r--r--audio/sfx/get_item1_1.asm60
-rw-r--r--audio/sfx/get_item1_3.asm60
-rw-r--r--audio/sfx/get_item1_4.asm47
-rw-r--r--audio/sfx/get_item2_1.asm98
-rw-r--r--audio/sfx/get_item2_2.asm98
-rw-r--r--audio/sfx/get_item2_3.asm98
-rw-r--r--audio/sfx/get_item2_4.asm100
-rw-r--r--audio/sfx/get_item2_4_2.asm98
-rw-r--r--audio/sfx/get_key_item_1.asm94
-rw-r--r--audio/sfx/get_key_item_3.asm94
-rw-r--r--audio/sfx/go_inside_1.asm8
-rw-r--r--audio/sfx/go_inside_3.asm8
-rw-r--r--audio/sfx/go_outside_1.asm14
-rw-r--r--audio/sfx/go_outside_3.asm14
-rw-r--r--audio/sfx/heal_ailment_1.asm18
-rw-r--r--audio/sfx/heal_ailment_2.asm18
-rw-r--r--audio/sfx/heal_ailment_3.asm18
-rwxr-xr-xaudio/sfx/heal_ailment_4.asm7
-rw-r--r--audio/sfx/heal_hp_1.asm14
-rw-r--r--audio/sfx/heal_hp_2.asm14
-rw-r--r--audio/sfx/heal_hp_3.asm14
-rw-r--r--audio/sfx/healing_machine_1.asm18
-rw-r--r--audio/sfx/healing_machine_3.asm18
-rw-r--r--audio/sfx/horn_drill.asm12
-rw-r--r--audio/sfx/intro_crash.asm8
-rw-r--r--audio/sfx/intro_hip.asm12
-rw-r--r--audio/sfx/intro_hop.asm12
-rw-r--r--audio/sfx/intro_lunge.asm20
-rw-r--r--audio/sfx/intro_raise.asm10
-rw-r--r--audio/sfx/intro_whoosh.asm14
-rw-r--r--audio/sfx/ledge_1.asm12
-rw-r--r--audio/sfx/ledge_3.asm12
-rw-r--r--audio/sfx/level_up.asm94
-rw-r--r--audio/sfx/muted_snare1_1.asm4
-rw-r--r--audio/sfx/muted_snare1_2.asm4
-rw-r--r--audio/sfx/muted_snare1_3.asm4
-rw-r--r--audio/sfx/muted_snare1_4.asm5
-rw-r--r--audio/sfx/muted_snare2_1.asm3
-rw-r--r--audio/sfx/muted_snare2_2.asm3
-rw-r--r--audio/sfx/muted_snare2_3.asm3
-rw-r--r--audio/sfx/muted_snare2_4.asm4
-rw-r--r--audio/sfx/muted_snare3_1.asm3
-rw-r--r--audio/sfx/muted_snare3_2.asm3
-rw-r--r--audio/sfx/muted_snare3_3.asm3
-rw-r--r--audio/sfx/muted_snare3_4.asm4
-rw-r--r--audio/sfx/muted_snare4_1.asm3
-rw-r--r--audio/sfx/muted_snare4_2.asm3
-rw-r--r--audio/sfx/muted_snare4_3.asm3
-rw-r--r--audio/sfx/muted_snare4_4.asm4
-rw-r--r--audio/sfx/noise_instrument01_1.asm3
-rw-r--r--audio/sfx/noise_instrument01_2.asm3
-rw-r--r--audio/sfx/noise_instrument01_3.asm3
-rwxr-xr-xaudio/sfx/noise_instrument01_4.asm3
-rw-r--r--audio/sfx/noise_instrument02_1.asm3
-rw-r--r--audio/sfx/noise_instrument02_2.asm3
-rw-r--r--audio/sfx/noise_instrument02_3.asm3
-rwxr-xr-xaudio/sfx/noise_instrument02_4.asm3
-rw-r--r--audio/sfx/noise_instrument03_1.asm3
-rw-r--r--audio/sfx/noise_instrument03_2.asm3
-rw-r--r--audio/sfx/noise_instrument03_3.asm3
-rwxr-xr-xaudio/sfx/noise_instrument03_4.asm3
-rw-r--r--audio/sfx/noise_instrument04_1.asm3
-rw-r--r--audio/sfx/noise_instrument04_2.asm3
-rw-r--r--audio/sfx/noise_instrument04_3.asm3
-rw-r--r--audio/sfx/noise_instrument04_4.asm3
-rw-r--r--audio/sfx/noise_instrument05_1.asm8
-rw-r--r--audio/sfx/noise_instrument05_2.asm8
-rw-r--r--audio/sfx/noise_instrument05_3.asm8
-rw-r--r--audio/sfx/noise_instrument05_4.asm8
-rw-r--r--audio/sfx/noise_instrument06_1.asm3
-rw-r--r--audio/sfx/noise_instrument06_2.asm3
-rw-r--r--audio/sfx/noise_instrument06_3.asm3
-rw-r--r--audio/sfx/noise_instrument06_4.asm3
-rw-r--r--audio/sfx/noise_instrument07_1.asm4
-rw-r--r--audio/sfx/noise_instrument07_2.asm4
-rw-r--r--audio/sfx/noise_instrument07_3.asm4
-rw-r--r--audio/sfx/noise_instrument07_4.asm4
-rw-r--r--audio/sfx/noise_instrument08_1.asm3
-rw-r--r--audio/sfx/noise_instrument08_2.asm3
-rw-r--r--audio/sfx/noise_instrument08_3.asm3
-rw-r--r--audio/sfx/noise_instrument08_4.asm3
-rw-r--r--audio/sfx/noise_instrument09_1.asm3
-rw-r--r--audio/sfx/noise_instrument09_2.asm3
-rw-r--r--audio/sfx/noise_instrument09_3.asm3
-rw-r--r--audio/sfx/noise_instrument09_4.asm3
-rw-r--r--audio/sfx/noise_instrument10_1.asm3
-rw-r--r--audio/sfx/noise_instrument10_2.asm3
-rw-r--r--audio/sfx/noise_instrument10_3.asm3
-rw-r--r--audio/sfx/noise_instrument10_4.asm3
-rw-r--r--audio/sfx/noise_instrument11_1.asm3
-rw-r--r--audio/sfx/noise_instrument11_2.asm3
-rw-r--r--audio/sfx/noise_instrument11_3.asm3
-rw-r--r--audio/sfx/noise_instrument11_4.asm3
-rw-r--r--audio/sfx/noise_instrument12_1.asm3
-rw-r--r--audio/sfx/noise_instrument12_2.asm3
-rw-r--r--audio/sfx/noise_instrument12_3.asm3
-rw-r--r--audio/sfx/noise_instrument12_4.asm3
-rw-r--r--audio/sfx/noise_instrument13_1.asm3
-rw-r--r--audio/sfx/noise_instrument13_2.asm3
-rw-r--r--audio/sfx/noise_instrument13_3.asm3
-rw-r--r--audio/sfx/noise_instrument13_4.asm3
-rw-r--r--audio/sfx/noise_instrument14_1.asm3
-rw-r--r--audio/sfx/noise_instrument14_2.asm3
-rw-r--r--audio/sfx/noise_instrument14_3.asm3
-rw-r--r--audio/sfx/noise_instrument14_4.asm3
-rw-r--r--audio/sfx/noise_instrument15_1.asm4
-rw-r--r--audio/sfx/noise_instrument15_2.asm4
-rw-r--r--audio/sfx/noise_instrument15_3.asm4
-rw-r--r--audio/sfx/noise_instrument15_4.asm4
-rw-r--r--audio/sfx/noise_instrument16_1.asm4
-rw-r--r--audio/sfx/noise_instrument16_2.asm4
-rw-r--r--audio/sfx/noise_instrument16_3.asm4
-rw-r--r--audio/sfx/noise_instrument16_4.asm4
-rw-r--r--audio/sfx/noise_instrument17_1.asm3
-rw-r--r--audio/sfx/noise_instrument17_2.asm3
-rw-r--r--audio/sfx/noise_instrument17_3.asm3
-rw-r--r--audio/sfx/noise_instrument17_4.asm3
-rw-r--r--audio/sfx/noise_instrument18_1.asm3
-rw-r--r--audio/sfx/noise_instrument18_2.asm3
-rw-r--r--audio/sfx/noise_instrument18_3.asm3
-rw-r--r--audio/sfx/noise_instrument18_4.asm3
-rw-r--r--audio/sfx/noise_instrument19_1.asm3
-rw-r--r--audio/sfx/noise_instrument19_2.asm3
-rw-r--r--audio/sfx/noise_instrument19_3.asm3
-rw-r--r--audio/sfx/noise_instrument19_4.asm3
-rw-r--r--audio/sfx/not_very_effective.asm12
-rw-r--r--audio/sfx/peck.asm6
-rw-r--r--audio/sfx/poisoned_1.asm16
-rw-r--r--audio/sfx/poisoned_3.asm16
-rw-r--r--audio/sfx/pokedex_rating_1.asm94
-rw-r--r--audio/sfx/pokedex_rating_3.asm94
-rw-r--r--audio/sfx/pokeflute.asm32
-rw-r--r--audio/sfx/pokeflute_ch1_ch2.asm14
-rw-r--r--audio/sfx/pokeflute_ch3.asm13
-rw-r--r--audio/sfx/pokeflute_ch5_ch6.asm14
-rw-r--r--audio/sfx/pokeflute_ch7.asm13
-rw-r--r--audio/sfx/pound.asm6
-rw-r--r--audio/sfx/press_ab_1.asm14
-rw-r--r--audio/sfx/press_ab_2.asm14
-rw-r--r--audio/sfx/press_ab_3.asm14
-rw-r--r--audio/sfx/psybeam.asm42
-rw-r--r--audio/sfx/psychic_m.asm56
-rw-r--r--audio/sfx/purchase_1.asm22
-rw-r--r--audio/sfx/purchase_3.asm22
-rw-r--r--audio/sfx/push_boulder_1.asm20
-rw-r--r--audio/sfx/push_boulder_3.asm20
-rw-r--r--audio/sfx/run.asm26
-rw-r--r--audio/sfx/safari_zone_pa.asm18
-rw-r--r--audio/sfx/save_1.asm42
-rw-r--r--audio/sfx/save_3.asm35
-rw-r--r--audio/sfx/shooting_star.asm28
-rw-r--r--audio/sfx/shrink_1.asm20
-rw-r--r--audio/sfx/shrink_3.asm20
-rw-r--r--audio/sfx/silph_scope.asm18
-rw-r--r--audio/sfx/slots_new_spin.asm24
-rw-r--r--audio/sfx/slots_reward.asm10
-rw-r--r--audio/sfx/slots_stop_wheel.asm12
-rw-r--r--audio/sfx/snare1_1.asm3
-rw-r--r--audio/sfx/snare1_2.asm3
-rw-r--r--audio/sfx/snare1_3.asm3
-rwxr-xr-xaudio/sfx/snare1_4.asm4
-rw-r--r--audio/sfx/snare2_1.asm3
-rw-r--r--audio/sfx/snare2_2.asm3
-rw-r--r--audio/sfx/snare2_3.asm3
-rwxr-xr-xaudio/sfx/snare2_4.asm4
-rw-r--r--audio/sfx/snare3_1.asm3
-rw-r--r--audio/sfx/snare3_2.asm3
-rw-r--r--audio/sfx/snare3_3.asm3
-rwxr-xr-xaudio/sfx/snare3_4.asm4
-rw-r--r--audio/sfx/snare4_1.asm3
-rw-r--r--audio/sfx/snare4_2.asm3
-rw-r--r--audio/sfx/snare4_3.asm3
-rw-r--r--audio/sfx/snare4_4.asm4
-rw-r--r--audio/sfx/snare5_1.asm8
-rw-r--r--audio/sfx/snare5_2.asm8
-rw-r--r--audio/sfx/snare5_3.asm8
-rw-r--r--audio/sfx/snare5_4.asm9
-rw-r--r--audio/sfx/snare6_1.asm3
-rw-r--r--audio/sfx/snare6_2.asm3
-rw-r--r--audio/sfx/snare6_3.asm3
-rw-r--r--audio/sfx/snare6_4.asm4
-rw-r--r--audio/sfx/snare7_1.asm3
-rw-r--r--audio/sfx/snare7_2.asm3
-rw-r--r--audio/sfx/snare7_3.asm3
-rw-r--r--audio/sfx/snare7_4.asm4
-rw-r--r--audio/sfx/snare8_1.asm3
-rw-r--r--audio/sfx/snare8_2.asm3
-rw-r--r--audio/sfx/snare8_3.asm3
-rw-r--r--audio/sfx/snare8_4.asm4
-rw-r--r--audio/sfx/snare9_1.asm3
-rw-r--r--audio/sfx/snare9_2.asm3
-rw-r--r--audio/sfx/snare9_3.asm3
-rw-r--r--audio/sfx/snare9_4.asm4
-rw-r--r--audio/sfx/ss_anne_horn_1.asm40
-rw-r--r--audio/sfx/ss_anne_horn_3.asm40
-rw-r--r--audio/sfx/start_menu_1.asm8
-rw-r--r--audio/sfx/start_menu_2.asm8
-rw-r--r--audio/sfx/start_menu_3.asm8
-rw-r--r--audio/sfx/super_effective.asm8
-rw-r--r--audio/sfx/surfing_add_points.asm14
-rw-r--r--audio/sfx/surfing_crash.asm11
-rw-r--r--audio/sfx/surfing_flip.asm16
-rw-r--r--audio/sfx/surfing_jump.asm19
-rw-r--r--audio/sfx/surfing_land.asm11
-rw-r--r--audio/sfx/swap_1.asm18
-rw-r--r--audio/sfx/swap_2.asm18
-rw-r--r--audio/sfx/swap_3.asm18
-rw-r--r--audio/sfx/switch_1.asm16
-rw-r--r--audio/sfx/switch_3.asm16
-rw-r--r--audio/sfx/teleport_enter1_1.asm20
-rw-r--r--audio/sfx/teleport_enter1_3.asm20
-rw-r--r--audio/sfx/teleport_enter2_1.asm12
-rw-r--r--audio/sfx/teleport_enter2_3.asm12
-rw-r--r--audio/sfx/teleport_exit1_1.asm20
-rw-r--r--audio/sfx/teleport_exit1_3.asm20
-rw-r--r--audio/sfx/teleport_exit2_1.asm12
-rw-r--r--audio/sfx/teleport_exit2_3.asm12
-rw-r--r--audio/sfx/tink_1.asm16
-rw-r--r--audio/sfx/tink_2.asm16
-rw-r--r--audio/sfx/tink_3.asm16
-rwxr-xr-xaudio/sfx/tink_4.asm16
-rw-r--r--audio/sfx/trade_machine_1.asm14
-rw-r--r--audio/sfx/trade_machine_3.asm14
-rw-r--r--audio/sfx/triangle1_1.asm3
-rw-r--r--audio/sfx/triangle1_2.asm3
-rw-r--r--audio/sfx/triangle1_3.asm3
-rw-r--r--audio/sfx/triangle1_4.asm4
-rw-r--r--audio/sfx/triangle2_1.asm4
-rw-r--r--audio/sfx/triangle2_2.asm4
-rw-r--r--audio/sfx/triangle2_3.asm4
-rw-r--r--audio/sfx/triangle2_4.asm5
-rw-r--r--audio/sfx/triangle3_1.asm4
-rw-r--r--audio/sfx/triangle3_2.asm4
-rw-r--r--audio/sfx/triangle3_3.asm4
-rw-r--r--audio/sfx/triangle3_4.asm5
-rw-r--r--audio/sfx/turn_off_pc_1.asm14
-rw-r--r--audio/sfx/turn_off_pc_3.asm14
-rw-r--r--audio/sfx/turn_on_pc_1.asm26
-rw-r--r--audio/sfx/turn_on_pc_3.asm28
-rwxr-xr-xaudio/sfx/unknown_80263.asm8
-rw-r--r--audio/sfx/unknown_8026a.asm19
-rw-r--r--audio/sfx/unknown_8027f.asm7
-rwxr-xr-xaudio/sfx/unknown_802cc.asm10
-rw-r--r--audio/sfx/unknown_80337.asm87
-rw-r--r--audio/sfx/unknown_80383.asm35
-rw-r--r--audio/sfx/unknown_803da.asm43
-rw-r--r--audio/sfx/unknown_80411.asm59
-rw-r--r--audio/sfx/unknown_80467.asm61
-rw-r--r--audio/sfx/unknown_804bf.asm45
-rw-r--r--audio/sfx/unknown_804fa.asm53
-rw-r--r--audio/sfx/unknown_80545.asm51
-rw-r--r--audio/sfx/unknown_8058b.asm55
-rw-r--r--audio/sfx/unknown_805db.asm35
-rw-r--r--audio/sfx/unknown_80603.asm39
-rw-r--r--audio/sfx/unknown_80633.asm38
-rw-r--r--audio/sfx/unknown_80661.asm35
-rw-r--r--audio/sfx/unknown_80689.asm32
-rw-r--r--audio/sfx/unknown_806af.asm67
-rw-r--r--audio/sfx/unknown_80712.asm52
-rw-r--r--audio/sfx/unknown_80760.asm30
-rw-r--r--audio/sfx/unknown_8077e.asm73
-rw-r--r--audio/sfx/unknown_807eb.asm41
-rw-r--r--audio/sfx/unknown_8081e.asm63
-rw-r--r--audio/sfx/unknown_80879.asm39
-rw-r--r--audio/sfx/unknown_808a9.asm57
-rw-r--r--audio/sfx/unknown_808fa.asm30
-rw-r--r--audio/sfx/unknown_8091c.asm35
-rw-r--r--audio/sfx/unknown_80944.asm45
-rw-r--r--audio/sfx/unknown_8097f.asm41
-rw-r--r--audio/sfx/unknown_809b2.asm53
-rw-r--r--audio/sfx/unknown_809fb.asm35
-rw-r--r--audio/sfx/unknown_80a23.asm69
-rw-r--r--audio/sfx/unknown_80a89.asm53
-rw-r--r--audio/sfx/unknown_80ad2.asm41
-rw-r--r--audio/sfx/unknown_80b05.asm55
-rw-r--r--audio/sfx/unknown_80b53.asm53
-rw-r--r--audio/sfx/unknown_80b9c.asm51
-rw-r--r--audio/sfx/unknown_80be2.asm61
-rw-r--r--audio/sfx/unknown_80c3b.asm41
-rw-r--r--audio/sfx/unknown_80c6e.asm41
-rw-r--r--audio/sfx/unknown_80ca1.asm48
-rw-r--r--audio/sfx/unknown_80ce7.asm40
-rw-r--r--audio/sfx/unknown_80e5a.asm46
-rw-r--r--audio/sfx/unknown_80e91.asm63
-rw-r--r--audio/sfx/unused2_2.asm72
-rw-r--r--audio/sfx/unused_1.asm54
-rw-r--r--audio/sfx/unused_2.asm54
-rw-r--r--audio/sfx/unused_3.asm54
-rw-r--r--audio/sfx/vine_whip.asm20
-rw-r--r--audio/sfx/withdraw_deposit_1.asm24
-rw-r--r--audio/sfx/withdraw_deposit_3.asm24
-rw-r--r--charmap.asm9
-rw-r--r--constants.asm2
-rw-r--r--constants/event_constants.asm212
-rwxr-xr-xconstants/evolution_constants.asm5
-rw-r--r--constants/hardware_constants.asm10
-rwxr-xr-xconstants/hide_show_constants.asm478
-rw-r--r--constants/map_constants.asm498
-rw-r--r--constants/misc_constants.asm20
-rw-r--r--constants/music_constants.asm89
-rwxr-xr-xconstants/oam_constants.asm13
-rwxr-xr-xconstants/palette_constants.asm7
-rw-r--r--constants/pikachu_emotion_constants.asm32
-rw-r--r--constants/pokedex_constants.asm2
-rw-r--r--constants/pokemon_constants.asm4
-rwxr-xr-xconstants/status_constants.asm40
-rwxr-xr-xconstants/trainer_constants.asm4
-rw-r--r--data/baseStats/victreebel.asm2
-rwxr-xr-xdata/evos_moves.asm3660
-rwxr-xr-xdata/force_bike_surf.asm8
-rwxr-xr-xdata/hidden_item_coords.asm110
-rwxr-xr-xdata/hidden_objects.asm168
-rwxr-xr-xdata/hide_show_data.asm482
-rwxr-xr-xdata/mapHeaders/AgathasRoom.asm8
-rw-r--r--data/mapHeaders/BeachHouse.asm8
-rwxr-xr-xdata/mapHeaders/BikeShop.asm8
-rwxr-xr-xdata/mapHeaders/BillsHouse.asm8
-rwxr-xr-xdata/mapHeaders/BluesHouse.asm8
-rwxr-xr-xdata/mapHeaders/BrunosRoom.asm8
-rwxr-xr-xdata/mapHeaders/CeladonChiefHouse.asm8
-rwxr-xr-xdata/mapHeaders/CeladonCity.asm10
-rwxr-xr-xdata/mapHeaders/CeladonDiner.asm8
-rwxr-xr-xdata/mapHeaders/CeladonGym.asm8
-rwxr-xr-xdata/mapHeaders/CeladonHotel.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMansion1F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMansion2F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMansion3F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMansionRoof.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMansionRoofHouse.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMart1F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMart2F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMart3F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMart4F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMart5F.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMartElevator.asm8
-rwxr-xr-xdata/mapHeaders/CeladonMartRoof.asm8
-rwxr-xr-xdata/mapHeaders/CeladonPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanBadgeHouse.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanCave1F.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanCave2F.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanCaveB1F.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanCity.asm12
-rwxr-xr-xdata/mapHeaders/CeruleanGym.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanMart.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanTradeHouse.asm8
-rwxr-xr-xdata/mapHeaders/CeruleanTrashedHouse.asm8
-rwxr-xr-xdata/mapHeaders/ChampionsRoom.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarGym.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarIsland.asm10
-rwxr-xr-xdata/mapHeaders/CinnabarLab.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarLabFossilRoom.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarLabMetronomeRoom.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarLabTradeRoom.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarMart.asm8
-rwxr-xr-xdata/mapHeaders/CinnabarPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/Colosseum.asm8
-rwxr-xr-xdata/mapHeaders/CopycatsHouse1F.asm8
-rwxr-xr-xdata/mapHeaders/CopycatsHouse2F.asm8
-rwxr-xr-xdata/mapHeaders/Daycare.asm8
-rwxr-xr-xdata/mapHeaders/DiglettsCave.asm8
-rwxr-xr-xdata/mapHeaders/DiglettsCaveRoute11.asm8
-rwxr-xr-xdata/mapHeaders/DiglettsCaveRoute2.asm8
-rwxr-xr-xdata/mapHeaders/FightingDojo.asm8
-rwxr-xr-xdata/mapHeaders/FuchsiaBillsGrandpasHouse.asm8
-rwxr-xr-xdata/mapHeaders/FuchsiaCity.asm11
-rwxr-xr-xdata/mapHeaders/FuchsiaGoodRodHouse.asm8
-rwxr-xr-xdata/mapHeaders/FuchsiaGym.asm8
-rwxr-xr-xdata/mapHeaders/FuchsiaMart.asm8
-rwxr-xr-xdata/mapHeaders/FuchsiaMeetingRoom.asm8
-rwxr-xr-xdata/mapHeaders/FuchsiaPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/GameCorner.asm8
-rwxr-xr-xdata/mapHeaders/GameCornerPrizeRoom.asm8
-rwxr-xr-xdata/mapHeaders/HallOfFame.asm8
-rwxr-xr-xdata/mapHeaders/IndigoPlateau.asm9
-rwxr-xr-xdata/mapHeaders/IndigoPlateauLobby.asm8
-rwxr-xr-xdata/mapHeaders/LancesRoom.asm8
-rwxr-xr-xdata/mapHeaders/LavenderCuboneHouse.asm8
-rwxr-xr-xdata/mapHeaders/LavenderMart.asm8
-rwxr-xr-xdata/mapHeaders/LavenderPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/LavenderTown.asm11
-rwxr-xr-xdata/mapHeaders/LoreleisRoom.asm8
-rwxr-xr-xdata/mapHeaders/MrFujisHouse.asm8
-rwxr-xr-xdata/mapHeaders/MrPsychicsHouse.asm8
-rwxr-xr-xdata/mapHeaders/MtMoon1F.asm8
-rwxr-xr-xdata/mapHeaders/MtMoonB1F.asm8
-rwxr-xr-xdata/mapHeaders/MtMoonB2F.asm8
-rwxr-xr-xdata/mapHeaders/MtMoonPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/Museum1F.asm8
-rwxr-xr-xdata/mapHeaders/Museum2F.asm8
-rwxr-xr-xdata/mapHeaders/NameRatersHouse.asm8
-rwxr-xr-xdata/mapHeaders/OaksLab.asm8
-rwxr-xr-xdata/mapHeaders/PalletTown.asm10
-rwxr-xr-xdata/mapHeaders/PewterCity.asm10
-rwxr-xr-xdata/mapHeaders/PewterGym.asm8
-rwxr-xr-xdata/mapHeaders/PewterMart.asm8
-rwxr-xr-xdata/mapHeaders/PewterNidoranHouse.asm8
-rwxr-xr-xdata/mapHeaders/PewterPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/PewterSpeechHouse.asm8
-rwxr-xr-xdata/mapHeaders/PokemonFanClub.asm8
-rwxr-xr-xdata/mapHeaders/PokemonMansion1F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonMansion2F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonMansion3F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonMansionB1F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower1F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower2F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower3F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower4F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower5F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower6F.asm8
-rwxr-xr-xdata/mapHeaders/PokemonTower7F.asm8
-rwxr-xr-xdata/mapHeaders/PowerPlant.asm8
-rwxr-xr-xdata/mapHeaders/RedsHouse1F.asm8
-rwxr-xr-xdata/mapHeaders/RedsHouse2F.asm8
-rwxr-xr-xdata/mapHeaders/RockTunnel1F.asm8
-rwxr-xr-xdata/mapHeaders/RockTunnelB1F.asm8
-rwxr-xr-xdata/mapHeaders/RockTunnelPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/RocketHideoutB1F.asm8
-rwxr-xr-xdata/mapHeaders/RocketHideoutB2F.asm8
-rwxr-xr-xdata/mapHeaders/RocketHideoutB3F.asm8
-rwxr-xr-xdata/mapHeaders/RocketHideoutB4F.asm8
-rwxr-xr-xdata/mapHeaders/RocketHideoutElevator.asm8
-rwxr-xr-xdata/mapHeaders/Route1.asm10
-rwxr-xr-xdata/mapHeaders/Route10.asm10
-rwxr-xr-xdata/mapHeaders/Route11.asm10
-rwxr-xr-xdata/mapHeaders/Route11Gate1F.asm8
-rwxr-xr-xdata/mapHeaders/Route11Gate2F.asm8
-rwxr-xr-xdata/mapHeaders/Route12.asm11
-rwxr-xr-xdata/mapHeaders/Route12Gate1F.asm8
-rwxr-xr-xdata/mapHeaders/Route12Gate2F.asm8
-rwxr-xr-xdata/mapHeaders/Route12SuperRodHouse.asm8
-rwxr-xr-xdata/mapHeaders/Route13.asm10
-rwxr-xr-xdata/mapHeaders/Route14.asm10
-rwxr-xr-xdata/mapHeaders/Route15.asm10
-rwxr-xr-xdata/mapHeaders/Route15Gate1F.asm8
-rwxr-xr-xdata/mapHeaders/Route15Gate2F.asm8
-rwxr-xr-xdata/mapHeaders/Route16.asm10
-rwxr-xr-xdata/mapHeaders/Route16FlyHouse.asm8
-rwxr-xr-xdata/mapHeaders/Route16Gate1F.asm8
-rwxr-xr-xdata/mapHeaders/Route16Gate2F.asm8
-rwxr-xr-xdata/mapHeaders/Route17.asm10
-rwxr-xr-xdata/mapHeaders/Route18.asm10
-rwxr-xr-xdata/mapHeaders/Route18Gate1F.asm8
-rwxr-xr-xdata/mapHeaders/Route18Gate2F.asm8
-rwxr-xr-xdata/mapHeaders/Route19.asm10
-rwxr-xr-xdata/mapHeaders/Route2.asm10
-rwxr-xr-xdata/mapHeaders/Route20.asm10
-rwxr-xr-xdata/mapHeaders/Route21.asm10
-rwxr-xr-xdata/mapHeaders/Route22.asm10
-rwxr-xr-xdata/mapHeaders/Route22Gate.asm8
-rwxr-xr-xdata/mapHeaders/Route23.asm10
-rwxr-xr-xdata/mapHeaders/Route24.asm10
-rwxr-xr-xdata/mapHeaders/Route25.asm9
-rwxr-xr-xdata/mapHeaders/Route2Gate.asm8
-rwxr-xr-xdata/mapHeaders/Route2TradeHouse.asm8
-rwxr-xr-xdata/mapHeaders/Route3.asm10
-rwxr-xr-xdata/mapHeaders/Route4.asm10
-rwxr-xr-xdata/mapHeaders/Route5.asm10
-rwxr-xr-xdata/mapHeaders/Route5Gate.asm8
-rwxr-xr-xdata/mapHeaders/Route6.asm10
-rwxr-xr-xdata/mapHeaders/Route6Gate.asm8
-rwxr-xr-xdata/mapHeaders/Route7.asm10
-rwxr-xr-xdata/mapHeaders/Route7Gate.asm8
-rwxr-xr-xdata/mapHeaders/Route8.asm10
-rwxr-xr-xdata/mapHeaders/Route8Gate.asm8
-rwxr-xr-xdata/mapHeaders/Route9.asm10
-rwxr-xr-xdata/mapHeaders/SSAnne1F.asm8
-rwxr-xr-xdata/mapHeaders/SSAnne1FRooms.asm8
-rwxr-xr-xdata/mapHeaders/SSAnne2F.asm8
-rwxr-xr-xdata/mapHeaders/SSAnne2FRooms.asm8
-rwxr-xr-xdata/mapHeaders/SSAnne3F.asm8
-rwxr-xr-xdata/mapHeaders/SSAnneB1F.asm8
-rwxr-xr-xdata/mapHeaders/SSAnneB1FRooms.asm8
-rwxr-xr-xdata/mapHeaders/SSAnneBow.asm8
-rwxr-xr-xdata/mapHeaders/SSAnneCaptainsRoom.asm8
-rwxr-xr-xdata/mapHeaders/SSAnneKitchen.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneCenter.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneCenterRestHouse.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneEast.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneEastRestHouse.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneGate.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneNorth.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneNorthRestHouse.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneSecretHouse.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneWest.asm8
-rwxr-xr-xdata/mapHeaders/SafariZoneWestRestHouse.asm8
-rwxr-xr-xdata/mapHeaders/SaffronCity.asm12
-rwxr-xr-xdata/mapHeaders/SaffronGym.asm8
-rwxr-xr-xdata/mapHeaders/SaffronMart.asm8
-rwxr-xr-xdata/mapHeaders/SaffronPidgeyHouse.asm8
-rwxr-xr-xdata/mapHeaders/SaffronPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/SeafoamIslands1F.asm8
-rwxr-xr-xdata/mapHeaders/SeafoamIslandsB1F.asm8
-rwxr-xr-xdata/mapHeaders/SeafoamIslandsB2F.asm8
-rwxr-xr-xdata/mapHeaders/SeafoamIslandsB3F.asm8
-rwxr-xr-xdata/mapHeaders/SeafoamIslandsB4F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo10F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo11F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo1F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo2F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo3F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo4F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo5F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo6F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo7F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo8F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCo9F.asm8
-rwxr-xr-xdata/mapHeaders/SilphCoElevator.asm8
-rwxr-xr-xdata/mapHeaders/TradeCenter.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathNorthSouth.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathRoute5.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathRoute6.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathRoute7.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathRoute7Copy.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathRoute8.asm8
-rwxr-xr-xdata/mapHeaders/UndergroundPathWestEast.asm8
-rwxr-xr-xdata/mapHeaders/VermilionCity.asm10
-rwxr-xr-xdata/mapHeaders/VermilionDock.asm8
-rwxr-xr-xdata/mapHeaders/VermilionGym.asm8
-rwxr-xr-xdata/mapHeaders/VermilionMart.asm8
-rwxr-xr-xdata/mapHeaders/VermilionOldRodHouse.asm8
-rwxr-xr-xdata/mapHeaders/VermilionPidgeyHouse.asm8
-rwxr-xr-xdata/mapHeaders/VermilionPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/VermilionTradeHouse.asm8
-rwxr-xr-xdata/mapHeaders/VictoryRoad1F.asm8
-rwxr-xr-xdata/mapHeaders/VictoryRoad2F.asm8
-rwxr-xr-xdata/mapHeaders/VictoryRoad3F.asm8
-rwxr-xr-xdata/mapHeaders/ViridianCity.asm11
-rwxr-xr-xdata/mapHeaders/ViridianForest.asm8
-rwxr-xr-xdata/mapHeaders/ViridianForestNorthGate.asm8
-rwxr-xr-xdata/mapHeaders/ViridianForestSouthGate.asm8
-rwxr-xr-xdata/mapHeaders/ViridianGym.asm8
-rwxr-xr-xdata/mapHeaders/ViridianMart.asm8
-rwxr-xr-xdata/mapHeaders/ViridianNicknameHouse.asm8
-rwxr-xr-xdata/mapHeaders/ViridianPokecenter.asm8
-rwxr-xr-xdata/mapHeaders/ViridianSchoolHouse.asm8
-rwxr-xr-xdata/mapHeaders/WardensHouse.asm8
-rwxr-xr-xdata/mapHeaders/agatha.asm6
-rw-r--r--data/mapHeaders/beach_house.asm7
-rwxr-xr-xdata/mapHeaders/bikeshop.asm6
-rwxr-xr-xdata/mapHeaders/billshouse.asm6
-rwxr-xr-xdata/mapHeaders/blueshouse.asm6
-rwxr-xr-xdata/mapHeaders/bruno.asm6
-rwxr-xr-xdata/mapHeaders/celadoncity.asm8
-rwxr-xr-xdata/mapHeaders/celadondiner.asm6
-rwxr-xr-xdata/mapHeaders/celadongamecorner.asm6
-rwxr-xr-xdata/mapHeaders/celadongym.asm6
-rwxr-xr-xdata/mapHeaders/celadonhotel.asm6
-rwxr-xr-xdata/mapHeaders/celadonhouse.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion1.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion2.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion3.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion4.asm6
-rwxr-xr-xdata/mapHeaders/celadonmansion5.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart1.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart2.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart3.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart4.asm6
-rwxr-xr-xdata/mapHeaders/celadonmart5.asm6
-rwxr-xr-xdata/mapHeaders/celadonmartelevator.asm6
-rwxr-xr-xdata/mapHeaders/celadonmartroof.asm6
-rwxr-xr-xdata/mapHeaders/celadonpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/celadonprizeroom.asm6
-rwxr-xr-xdata/mapHeaders/ceruleancity.asm10
-rwxr-xr-xdata/mapHeaders/ceruleangym.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanhouse1.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanhouse2.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanhousetrashed.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanmart.asm6
-rwxr-xr-xdata/mapHeaders/ceruleanpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/cinnabargym.asm6
-rwxr-xr-xdata/mapHeaders/cinnabarisland.asm8
-rwxr-xr-xdata/mapHeaders/cinnabarmart.asm6
-rwxr-xr-xdata/mapHeaders/cinnabarpokecenter.asm6
-rw-r--r--data/mapHeaders/colosseum.asm6
-rwxr-xr-xdata/mapHeaders/copycatshouse1f.asm6
-rwxr-xr-xdata/mapHeaders/copycatshouse2f.asm6
-rwxr-xr-xdata/mapHeaders/daycarem.asm6
-rwxr-xr-xdata/mapHeaders/diglettscave.asm6
-rwxr-xr-xdata/mapHeaders/diglettscaveroute11.asm6
-rwxr-xr-xdata/mapHeaders/diglettscaveroute2.asm6
-rwxr-xr-xdata/mapHeaders/fanclub.asm6
-rwxr-xr-xdata/mapHeaders/fightingdojo.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiacity.asm9
-rwxr-xr-xdata/mapHeaders/fuchsiagym.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiahouse1.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiahouse2.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiahouse3.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiamart.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiameetingroom.asm6
-rwxr-xr-xdata/mapHeaders/fuchsiapokecenter.asm6
-rwxr-xr-xdata/mapHeaders/gary.asm6
-rwxr-xr-xdata/mapHeaders/halloffameroom.asm6
-rwxr-xr-xdata/mapHeaders/indigoplateau.asm7
-rwxr-xr-xdata/mapHeaders/indigoplateaulobby.asm6
-rwxr-xr-xdata/mapHeaders/lab1.asm6
-rwxr-xr-xdata/mapHeaders/lab2.asm6
-rwxr-xr-xdata/mapHeaders/lab3.asm6
-rwxr-xr-xdata/mapHeaders/lab4.asm6
-rwxr-xr-xdata/mapHeaders/lance.asm6
-rwxr-xr-xdata/mapHeaders/lavenderhouse1.asm6
-rwxr-xr-xdata/mapHeaders/lavenderhouse2.asm6
-rwxr-xr-xdata/mapHeaders/lavendermart.asm6
-rwxr-xr-xdata/mapHeaders/lavenderpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/lavendertown.asm9
-rwxr-xr-xdata/mapHeaders/lorelei.asm6
-rwxr-xr-xdata/mapHeaders/mansion1.asm6
-rwxr-xr-xdata/mapHeaders/mansion2.asm6
-rwxr-xr-xdata/mapHeaders/mansion3.asm6
-rwxr-xr-xdata/mapHeaders/mansion4.asm6
-rwxr-xr-xdata/mapHeaders/mtmoon1.asm6
-rwxr-xr-xdata/mapHeaders/mtmoon2.asm6
-rwxr-xr-xdata/mapHeaders/mtmoon3.asm6
-rwxr-xr-xdata/mapHeaders/mtmoonpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/museum1f.asm6
-rwxr-xr-xdata/mapHeaders/museum2f.asm6
-rwxr-xr-xdata/mapHeaders/namerater.asm6
-rwxr-xr-xdata/mapHeaders/oakslab.asm6
-rwxr-xr-xdata/mapHeaders/pallettown.asm8
-rwxr-xr-xdata/mapHeaders/pewtercity.asm10
-rwxr-xr-xdata/mapHeaders/pewtergym.asm6
-rwxr-xr-xdata/mapHeaders/pewterhouse1.asm6
-rwxr-xr-xdata/mapHeaders/pewterhouse2.asm6
-rwxr-xr-xdata/mapHeaders/pewtermart.asm6
-rwxr-xr-xdata/mapHeaders/pewterpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower1.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower2.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower3.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower4.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower5.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower6.asm6
-rwxr-xr-xdata/mapHeaders/pokemontower7.asm6
-rwxr-xr-xdata/mapHeaders/powerplant.asm6
-rwxr-xr-xdata/mapHeaders/redshouse1f.asm6
-rwxr-xr-xdata/mapHeaders/redshouse2f.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout1.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout2.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout3.asm6
-rwxr-xr-xdata/mapHeaders/rockethideout4.asm6
-rwxr-xr-xdata/mapHeaders/rockethideoutelevator.asm6
-rwxr-xr-xdata/mapHeaders/rocktunnel1.asm6
-rwxr-xr-xdata/mapHeaders/rocktunnel2.asm6
-rwxr-xr-xdata/mapHeaders/rocktunnelpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/route1.asm8
-rwxr-xr-xdata/mapHeaders/route10.asm8
-rwxr-xr-xdata/mapHeaders/route11.asm8
-rwxr-xr-xdata/mapHeaders/route11gate.asm6
-rwxr-xr-xdata/mapHeaders/route11gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route12.asm9
-rwxr-xr-xdata/mapHeaders/route12gate.asm6
-rwxr-xr-xdata/mapHeaders/route12gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route12house.asm6
-rwxr-xr-xdata/mapHeaders/route13.asm8
-rwxr-xr-xdata/mapHeaders/route14.asm8
-rwxr-xr-xdata/mapHeaders/route15.asm8
-rwxr-xr-xdata/mapHeaders/route15gate.asm6
-rwxr-xr-xdata/mapHeaders/route15gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route16.asm8
-rwxr-xr-xdata/mapHeaders/route16gate.asm6
-rwxr-xr-xdata/mapHeaders/route16gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route16house.asm6
-rwxr-xr-xdata/mapHeaders/route17.asm8
-rwxr-xr-xdata/mapHeaders/route18.asm8
-rwxr-xr-xdata/mapHeaders/route18gate.asm6
-rwxr-xr-xdata/mapHeaders/route18gateupstairs.asm6
-rwxr-xr-xdata/mapHeaders/route19.asm8
-rwxr-xr-xdata/mapHeaders/route2.asm8
-rwxr-xr-xdata/mapHeaders/route20.asm8
-rwxr-xr-xdata/mapHeaders/route21.asm8
-rwxr-xr-xdata/mapHeaders/route22.asm8
-rwxr-xr-xdata/mapHeaders/route22gate.asm6
-rwxr-xr-xdata/mapHeaders/route23.asm8
-rwxr-xr-xdata/mapHeaders/route24.asm8
-rwxr-xr-xdata/mapHeaders/route25.asm7
-rwxr-xr-xdata/mapHeaders/route2gate.asm6
-rwxr-xr-xdata/mapHeaders/route2house.asm6
-rwxr-xr-xdata/mapHeaders/route3.asm8
-rwxr-xr-xdata/mapHeaders/route4.asm8
-rwxr-xr-xdata/mapHeaders/route5.asm8
-rwxr-xr-xdata/mapHeaders/route5gate.asm6
-rwxr-xr-xdata/mapHeaders/route6.asm8
-rwxr-xr-xdata/mapHeaders/route6gate.asm6
-rwxr-xr-xdata/mapHeaders/route7.asm8
-rwxr-xr-xdata/mapHeaders/route7gate.asm6
-rwxr-xr-xdata/mapHeaders/route8.asm8
-rwxr-xr-xdata/mapHeaders/route8gate.asm6
-rwxr-xr-xdata/mapHeaders/route9.asm8
-rwxr-xr-xdata/mapHeaders/safarizonecenter.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneeast.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneentrance.asm6
-rwxr-xr-xdata/mapHeaders/safarizonenorth.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse1.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse2.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse3.asm6
-rwxr-xr-xdata/mapHeaders/safarizoneresthouse4.asm6
-rwxr-xr-xdata/mapHeaders/safarizonesecrethouse.asm6
-rwxr-xr-xdata/mapHeaders/safarizonewest.asm6
-rwxr-xr-xdata/mapHeaders/saffroncity.asm10
-rwxr-xr-xdata/mapHeaders/saffrongym.asm6
-rwxr-xr-xdata/mapHeaders/saffronhouse1.asm6
-rwxr-xr-xdata/mapHeaders/saffronhouse2.asm6
-rwxr-xr-xdata/mapHeaders/saffronmart.asm6
-rwxr-xr-xdata/mapHeaders/saffronpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/school.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands1.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands2.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands3.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands4.asm6
-rwxr-xr-xdata/mapHeaders/seafoamislands5.asm6
-rwxr-xr-xdata/mapHeaders/silphco1.asm6
-rwxr-xr-xdata/mapHeaders/silphco10.asm6
-rwxr-xr-xdata/mapHeaders/silphco11.asm6
-rwxr-xr-xdata/mapHeaders/silphco2.asm6
-rwxr-xr-xdata/mapHeaders/silphco3.asm6
-rwxr-xr-xdata/mapHeaders/silphco4.asm6
-rwxr-xr-xdata/mapHeaders/silphco5.asm6
-rwxr-xr-xdata/mapHeaders/silphco6.asm6
-rwxr-xr-xdata/mapHeaders/silphco7.asm6
-rwxr-xr-xdata/mapHeaders/silphco8.asm6
-rwxr-xr-xdata/mapHeaders/silphco9.asm6
-rwxr-xr-xdata/mapHeaders/silphcoelevator.asm6
-rwxr-xr-xdata/mapHeaders/ssanne1.asm6
-rwxr-xr-xdata/mapHeaders/ssanne10.asm6
-rwxr-xr-xdata/mapHeaders/ssanne2.asm6
-rwxr-xr-xdata/mapHeaders/ssanne3.asm6
-rwxr-xr-xdata/mapHeaders/ssanne4.asm6
-rwxr-xr-xdata/mapHeaders/ssanne5.asm6
-rwxr-xr-xdata/mapHeaders/ssanne6.asm6
-rwxr-xr-xdata/mapHeaders/ssanne7.asm6
-rwxr-xr-xdata/mapHeaders/ssanne8.asm6
-rwxr-xr-xdata/mapHeaders/ssanne9.asm6
-rw-r--r--data/mapHeaders/tradecenter.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute5.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute6.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute7.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute7copy.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathentranceroute8.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathns.asm6
-rwxr-xr-xdata/mapHeaders/undergroundpathwe.asm6
-rwxr-xr-xdata/mapHeaders/unknowndungeon1.asm6
-rwxr-xr-xdata/mapHeaders/unknowndungeon2.asm6
-rwxr-xr-xdata/mapHeaders/unknowndungeon3.asm6
-rwxr-xr-xdata/mapHeaders/vermilioncity.asm8
-rwxr-xr-xdata/mapHeaders/vermiliondock.asm6
-rwxr-xr-xdata/mapHeaders/vermiliongym.asm6
-rwxr-xr-xdata/mapHeaders/vermilionhouse1.asm6
-rwxr-xr-xdata/mapHeaders/vermilionhouse2.asm6
-rwxr-xr-xdata/mapHeaders/vermilionhouse3.asm6
-rwxr-xr-xdata/mapHeaders/vermilionmart.asm6
-rwxr-xr-xdata/mapHeaders/vermilionpokecenter.asm6
-rwxr-xr-xdata/mapHeaders/victoryroad1.asm6
-rwxr-xr-xdata/mapHeaders/victoryroad2.asm6
-rwxr-xr-xdata/mapHeaders/victoryroad3.asm6
-rwxr-xr-xdata/mapHeaders/viridiancity.asm9
-rwxr-xr-xdata/mapHeaders/viridianforest.asm6
-rwxr-xr-xdata/mapHeaders/viridianforestentrance.asm6
-rwxr-xr-xdata/mapHeaders/viridianforestexit.asm6
-rwxr-xr-xdata/mapHeaders/viridiangym.asm6
-rwxr-xr-xdata/mapHeaders/viridianhouse.asm8
-rwxr-xr-xdata/mapHeaders/viridianmart.asm6
-rwxr-xr-xdata/mapHeaders/viridianpokecenter.asm6
-rwxr-xr-xdata/mapObjects/AgathasRoom.asm19
-rw-r--r--data/mapObjects/BeachHouse.asm20
-rwxr-xr-xdata/mapObjects/BikeShop.asm17
-rwxr-xr-xdata/mapObjects/BillsHouse.asm17
-rwxr-xr-xdata/mapObjects/BluesHouse.asm17
-rwxr-xr-xdata/mapObjects/BrunosRoom.asm19
-rwxr-xr-xdata/mapObjects/CeladonChiefHouse.asm17
-rwxr-xr-xdata/mapObjects/CeladonCity.asm54
-rwxr-xr-xdata/mapObjects/CeladonDiner.asm19
-rwxr-xr-xdata/mapObjects/CeladonGym.asm22
-rwxr-xr-xdata/mapObjects/CeladonHotel.asm17
-rwxr-xr-xdata/mapObjects/CeladonMansion1F.asm25
-rwxr-xr-xdata/mapObjects/CeladonMansion2F.asm19
-rwxr-xr-xdata/mapObjects/CeladonMansion3F.asm26
-rwxr-xr-xdata/mapObjects/CeladonMansionRoof.asm17
-rwxr-xr-xdata/mapObjects/CeladonMansionRoofHouse.asm16
-rwxr-xr-xdata/mapObjects/CeladonMart1F.asm25
-rwxr-xr-xdata/mapObjects/CeladonMart2F.asm21
-rwxr-xr-xdata/mapObjects/CeladonMart3F.asm33
-rwxr-xr-xdata/mapObjects/CeladonMart4F.asm20
-rwxr-xr-xdata/mapObjects/CeladonMart5F.asm21
-rwxr-xr-xdata/mapObjects/CeladonMartElevator.asm15
-rwxr-xr-xdata/mapObjects/CeladonMartRoof.asm18
-rwxr-xr-xdata/mapObjects/CeladonPokecenter.asm19
-rwxr-xr-xdata/mapObjects/CeruleanBadgeHouse.asm17
-rwxr-xr-xdata/mapObjects/CeruleanCave1F.asm32
-rwxr-xr-xdata/mapObjects/CeruleanCave2F.asm26
-rwxr-xr-xdata/mapObjects/CeruleanCaveB1F.asm17
-rwxr-xr-xdata/mapObjects/CeruleanCity.asm47
-rwxr-xr-xdata/mapObjects/CeruleanGym.asm18
-rwxr-xr-xdata/mapObjects/CeruleanMart.asm17
-rwxr-xr-xdata/mapObjects/CeruleanPokecenter.asm19
-rwxr-xr-xdata/mapObjects/CeruleanTradeHouse.asm18
-rwxr-xr-xdata/mapObjects/CeruleanTrashedHouse.asm19
-rwxr-xr-xdata/mapObjects/ChampionsRoom.asm20
-rwxr-xr-xdata/mapObjects/CinnabarGym.asm23
-rwxr-xr-xdata/mapObjects/CinnabarIsland.asm27
-rwxr-xr-xdata/mapObjects/CinnabarLab.asm25
-rwxr-xr-xdata/mapObjects/CinnabarLabFossilRoom.asm16
-rwxr-xr-xdata/mapObjects/CinnabarLabMetronomeRoom.asm19
-rwxr-xr-xdata/mapObjects/CinnabarLabTradeRoom.asm17
-rwxr-xr-xdata/mapObjects/CinnabarMart.asm17
-rwxr-xr-xdata/mapObjects/CinnabarPokecenter.asm19
-rw-r--r--data/mapObjects/Colosseum.asm9
-rwxr-xr-xdata/mapObjects/CopycatsHouse1F.asm19
-rwxr-xr-xdata/mapObjects/CopycatsHouse2F.asm19
-rwxr-xr-xdata/mapObjects/Daycare.asm15
-rwxr-xr-xdata/mapObjects/DiglettsCave.asm14
-rwxr-xr-xdata/mapObjects/DiglettsCaveRoute11.asm17
-rwxr-xr-xdata/mapObjects/DiglettsCaveRoute2.asm17
-rwxr-xr-xdata/mapObjects/FightingDojo.asm21
-rwxr-xr-xdata/mapObjects/FuchsiaBillsGrandpasHouse.asm17
-rwxr-xr-xdata/mapObjects/FuchsiaCity.asm52
-rwxr-xr-xdata/mapObjects/FuchsiaGoodRodHouse.asm17
-rwxr-xr-xdata/mapObjects/FuchsiaGym.asm22
-rwxr-xr-xdata/mapObjects/FuchsiaMart.asm17
-rwxr-xr-xdata/mapObjects/FuchsiaMeetingRoom.asm17
-rwxr-xr-xdata/mapObjects/FuchsiaPokecenter.asm19
-rwxr-xr-xdata/mapObjects/GameCorner.asm28
-rwxr-xr-xdata/mapObjects/GameCornerPrizeRoom.asm19
-rwxr-xr-xdata/mapObjects/HallOfFame.asm15
-rwxr-xr-xdata/mapObjects/IndigoPlateau.asm14
-rwxr-xr-xdata/mapObjects/IndigoPlateauLobby.asm22
-rwxr-xr-xdata/mapObjects/LancesRoom.asm17
-rwxr-xr-xdata/mapObjects/LavenderCuboneHouse.asm16
-rwxr-xr-xdata/mapObjects/LavenderMart.asm17
-rwxr-xr-xdata/mapObjects/LavenderPokecenter.asm19
-rwxr-xr-xdata/mapObjects/LavenderTown.asm31
-rwxr-xr-xdata/mapObjects/LoreleisRoom.asm19
-rwxr-xr-xdata/mapObjects/MrFujisHouse.asm20
-rwxr-xr-xdata/mapObjects/MrPsychicsHouse.asm15
-rwxr-xr-xdata/mapObjects/MtMoon1F.asm34
-rwxr-xr-xdata/mapObjects/MtMoonB1F.asm26
-rwxr-xr-xdata/mapObjects/MtMoonB2F.asm28
-rwxr-xr-xdata/mapObjects/MtMoonPokecenter.asm21
-rwxr-xr-xdata/mapObjects/Museum1F.asm25
-rwxr-xr-xdata/mapObjects/Museum2F.asm19
-rwxr-xr-xdata/mapObjects/NameRatersHouse.asm15
-rwxr-xr-xdata/mapObjects/OaksLab.asm23
-rwxr-xr-xdata/mapObjects/PalletTown.asm23
-rwxr-xr-xdata/mapObjects/PewterCity.asm36
-rwxr-xr-xdata/mapObjects/PewterGym.asm17
-rwxr-xr-xdata/mapObjects/PewterMart.asm17
-rwxr-xr-xdata/mapObjects/PewterNidoranHouse.asm17
-rwxr-xr-xdata/mapObjects/PewterPokecenter.asm20
-rwxr-xr-xdata/mapObjects/PewterSpeechHouse.asm16
-rwxr-xr-xdata/mapObjects/PokemonFanClub.asm20
-rwxr-xr-xdata/mapObjects/PokemonMansion1F.asm29
-rwxr-xr-xdata/mapObjects/PokemonMansion2F.asm22
-rwxr-xr-xdata/mapObjects/PokemonMansion3F.asm21
-rwxr-xr-xdata/mapObjects/PokemonMansionB1F.asm20
-rwxr-xr-xdata/mapObjects/PokemonTower1F.asm21
-rwxr-xr-xdata/mapObjects/PokemonTower2F.asm16
-rwxr-xr-xdata/mapObjects/PokemonTower3F.asm18
-rwxr-xr-xdata/mapObjects/PokemonTower4F.asm20
-rwxr-xr-xdata/mapObjects/PokemonTower5F.asm20
-rwxr-xr-xdata/mapObjects/PokemonTower6F.asm19
-rwxr-xr-xdata/mapObjects/PokemonTower7F.asm15
-rwxr-xr-xdata/mapObjects/PowerPlant.asm30
-rwxr-xr-xdata/mapObjects/RedsHouse1F.asm18
-rwxr-xr-xdata/mapObjects/RedsHouse2F.asm12
-rwxr-xr-xdata/mapObjects/RockTunnel1F.asm34
-rwxr-xr-xdata/mapObjects/RockTunnelB1F.asm26
-rwxr-xr-xdata/mapObjects/RockTunnelPokecenter.asm19
-rwxr-xr-xdata/mapObjects/RocketHideoutB1F.asm27
-rwxr-xr-xdata/mapObjects/RocketHideoutB2F.asm25
-rwxr-xr-xdata/mapObjects/RocketHideoutB3F.asm18
-rwxr-xr-xdata/mapObjects/RocketHideoutB4F.asm25
-rwxr-xr-xdata/mapObjects/RocketHideoutElevator.asm15
-rwxr-xr-xdata/mapObjects/Route1.asm14
-rwxr-xr-xdata/mapObjects/Route10.asm28
-rwxr-xr-xdata/mapObjects/Route11.asm31
-rwxr-xr-xdata/mapObjects/Route11Gate1F.asm21
-rwxr-xr-xdata/mapObjects/Route11Gate2F.asm16
-rwxr-xr-xdata/mapObjects/Route12.asm30
-rwxr-xr-xdata/mapObjects/Route12Gate1F.asm21
-rwxr-xr-xdata/mapObjects/Route12Gate2F.asm15
-rwxr-xr-xdata/mapObjects/Route12SuperRodHouse.asm15
-rwxr-xr-xdata/mapObjects/Route13.asm21
-rwxr-xr-xdata/mapObjects/Route14.asm19
-rwxr-xr-xdata/mapObjects/Route15.asm30
-rwxr-xr-xdata/mapObjects/Route15Gate1F.asm21
-rwxr-xr-xdata/mapObjects/Route15Gate2F.asm14
-rwxr-xr-xdata/mapObjects/Route16.asm37
-rwxr-xr-xdata/mapObjects/Route16FlyHouse.asm16
-rwxr-xr-xdata/mapObjects/Route16Gate1F.asm30
-rwxr-xr-xdata/mapObjects/Route16Gate2F.asm16
-rwxr-xr-xdata/mapObjects/Route17.asm24
-rwxr-xr-xdata/mapObjects/Route18.asm23
-rwxr-xr-xdata/mapObjects/Route18Gate1F.asm21
-rwxr-xr-xdata/mapObjects/Route18Gate2F.asm15
-rwxr-xr-xdata/mapObjects/Route19.asm23
-rwxr-xr-xdata/mapObjects/Route2.asm36
-rwxr-xr-xdata/mapObjects/Route20.asm26
-rwxr-xr-xdata/mapObjects/Route21.asm17
-rwxr-xr-xdata/mapObjects/Route22.asm15
-rwxr-xr-xdata/mapObjects/Route22Gate.asm19
-rwxr-xr-xdata/mapObjects/Route23.asm26
-rwxr-xr-xdata/mapObjects/Route24.asm17
-rwxr-xr-xdata/mapObjects/Route25.asm23
-rwxr-xr-xdata/mapObjects/Route2Gate.asm20
-rwxr-xr-xdata/mapObjects/Route2TradeHouse.asm16
-rwxr-xr-xdata/mapObjects/Route3.asm18
-rwxr-xr-xdata/mapObjects/Route4.asm22
-rwxr-xr-xdata/mapObjects/Route5.asm21
-rwxr-xr-xdata/mapObjects/Route5Gate.asm19
-rwxr-xr-xdata/mapObjects/Route6.asm25
-rwxr-xr-xdata/mapObjects/Route6Gate.asm19
-rwxr-xr-xdata/mapObjects/Route7.asm21
-rwxr-xr-xdata/mapObjects/Route7Gate.asm19
-rwxr-xr-xdata/mapObjects/Route8.asm30
-rwxr-xr-xdata/mapObjects/Route8Gate.asm19
-rwxr-xr-xdata/mapObjects/Route9.asm19
-rwxr-xr-xdata/mapObjects/SSAnne1F.asm34
-rwxr-xr-xdata/mapObjects/SSAnne1FRooms.asm33
-rwxr-xr-xdata/mapObjects/SSAnne2F.asm30
-rwxr-xr-xdata/mapObjects/SSAnne2FRooms.asm47
-rwxr-xr-xdata/mapObjects/SSAnne3F.asm15
-rwxr-xr-xdata/mapObjects/SSAnneB1F.asm22
-rwxr-xr-xdata/mapObjects/SSAnneB1FRooms.asm41
-rwxr-xr-xdata/mapObjects/SSAnneBow.asm19
-rwxr-xr-xdata/mapObjects/SSAnneCaptainsRoom.asm15
-rwxr-xr-xdata/mapObjects/SSAnneKitchen.asm19
-rwxr-xr-xdata/mapObjects/SafariZoneCenter.asm31
-rwxr-xr-xdata/mapObjects/SafariZoneCenterRestHouse.asm16
-rwxr-xr-xdata/mapObjects/SafariZoneEast.asm27
-rwxr-xr-xdata/mapObjects/SafariZoneEastRestHouse.asm17
-rwxr-xr-xdata/mapObjects/SafariZoneGate.asm20
-rwxr-xr-xdata/mapObjects/SafariZoneNorth.asm35
-rwxr-xr-xdata/mapObjects/SafariZoneNorthRestHouse.asm17
-rwxr-xr-xdata/mapObjects/SafariZoneSecretHouse.asm15
-rwxr-xr-xdata/mapObjects/SafariZoneWest.asm34
-rwxr-xr-xdata/mapObjects/SafariZoneWestRestHouse.asm17
-rwxr-xr-xdata/mapObjects/SaffronCity.asm50
-rwxr-xr-xdata/mapObjects/SaffronGym.asm83
-rwxr-xr-xdata/mapObjects/SaffronMart.asm17
-rwxr-xr-xdata/mapObjects/SaffronPidgeyHouse.asm18
-rwxr-xr-xdata/mapObjects/SaffronPokecenter.asm19
-rwxr-xr-xdata/mapObjects/SeafoamIslands1F.asm26
-rwxr-xr-xdata/mapObjects/SeafoamIslandsB1F.asm26
-rwxr-xr-xdata/mapObjects/SeafoamIslandsB2F.asm26
-rwxr-xr-xdata/mapObjects/SeafoamIslandsB3F.asm30
-rwxr-xr-xdata/mapObjects/SeafoamIslandsB4F.asm23
-rwxr-xr-xdata/mapObjects/SilphCo10F.asm28
-rwxr-xr-xdata/mapObjects/SilphCo11F.asm24
-rwxr-xr-xdata/mapObjects/SilphCo1F.asm21
-rwxr-xr-xdata/mapObjects/SilphCo2F.asm29
-rwxr-xr-xdata/mapObjects/SilphCo3F.asm34
-rwxr-xr-xdata/mapObjects/SilphCo4F.asm31
-rwxr-xr-xdata/mapObjects/SilphCo5F.asm35
-rwxr-xr-xdata/mapObjects/SilphCo6F.asm30
-rwxr-xr-xdata/mapObjects/SilphCo7F.asm33
-rwxr-xr-xdata/mapObjects/SilphCo8F.asm28
-rwxr-xr-xdata/mapObjects/SilphCo9F.asm24
-rwxr-xr-xdata/mapObjects/SilphCoElevator.asm15
-rw-r--r--data/mapObjects/TradeCenter.asm9
-rwxr-xr-xdata/mapObjects/UndergroundPathNorthSouth.asm14
-rwxr-xr-xdata/mapObjects/UndergroundPathRoute5.asm17
-rwxr-xr-xdata/mapObjects/UndergroundPathRoute6.asm17
-rwxr-xr-xdata/mapObjects/UndergroundPathRoute7.asm17
-rwxr-xr-xdata/mapObjects/UndergroundPathRoute7Copy.asm18
-rwxr-xr-xdata/mapObjects/UndergroundPathRoute8.asm17
-rwxr-xr-xdata/mapObjects/UndergroundPathWestEast.asm14
-rwxr-xr-xdata/mapObjects/VermilionCity.asm42
-rwxr-xr-xdata/mapObjects/VermilionDock.asm14
-rwxr-xr-xdata/mapObjects/VermilionGym.asm19
-rwxr-xr-xdata/mapObjects/VermilionMart.asm17
-rwxr-xr-xdata/mapObjects/VermilionOldRodHouse.asm15
-rwxr-xr-xdata/mapObjects/VermilionPidgeyHouse.asm17
-rwxr-xr-xdata/mapObjects/VermilionPokecenter.asm19
-rwxr-xr-xdata/mapObjects/VermilionTradeHouse.asm15
-rwxr-xr-xdata/mapObjects/VictoryRoad1F.asm23
-rwxr-xr-xdata/mapObjects/VictoryRoad2F.asm37
-rwxr-xr-xdata/mapObjects/VictoryRoad3F.asm28
-rwxr-xr-xdata/mapObjects/ViridianCity.asm34
-rwxr-xr-xdata/mapObjects/ViridianForest.asm38
-rwxr-xr-xdata/mapObjects/ViridianForestNorthGate.asm20
-rwxr-xr-xdata/mapObjects/ViridianForestSouthGate.asm20
-rwxr-xr-xdata/mapObjects/ViridianGym.asm25
-rwxr-xr-xdata/mapObjects/ViridianMart.asm17
-rwxr-xr-xdata/mapObjects/ViridianNicknameHouse.asm18
-rwxr-xr-xdata/mapObjects/ViridianPokecenter.asm19
-rwxr-xr-xdata/mapObjects/ViridianSchoolHouse.asm17
-rwxr-xr-xdata/mapObjects/WardensHouse.asm19
-rwxr-xr-xdata/mapObjects/agatha.asm19
-rw-r--r--data/mapObjects/beach_house.asm20
-rwxr-xr-xdata/mapObjects/bikeshop.asm17
-rwxr-xr-xdata/mapObjects/billshouse.asm17
-rwxr-xr-xdata/mapObjects/blueshouse.asm17
-rwxr-xr-xdata/mapObjects/bruno.asm19
-rwxr-xr-xdata/mapObjects/celadoncity.asm54
-rwxr-xr-xdata/mapObjects/celadondiner.asm19
-rwxr-xr-xdata/mapObjects/celadongamecorner.asm28
-rwxr-xr-xdata/mapObjects/celadongym.asm22
-rwxr-xr-xdata/mapObjects/celadonhotel.asm17
-rwxr-xr-xdata/mapObjects/celadonhouse.asm17
-rwxr-xr-xdata/mapObjects/celadonmansion1.asm25
-rwxr-xr-xdata/mapObjects/celadonmansion2.asm19
-rwxr-xr-xdata/mapObjects/celadonmansion3.asm26
-rwxr-xr-xdata/mapObjects/celadonmansion4.asm17
-rwxr-xr-xdata/mapObjects/celadonmansion5.asm16
-rwxr-xr-xdata/mapObjects/celadonmart1.asm25
-rwxr-xr-xdata/mapObjects/celadonmart2.asm21
-rwxr-xr-xdata/mapObjects/celadonmart3.asm33
-rwxr-xr-xdata/mapObjects/celadonmart4.asm20
-rwxr-xr-xdata/mapObjects/celadonmart5.asm21
-rwxr-xr-xdata/mapObjects/celadonmartelevator.asm15
-rwxr-xr-xdata/mapObjects/celadonmartroof.asm18
-rwxr-xr-xdata/mapObjects/celadonpokecenter.asm19
-rwxr-xr-xdata/mapObjects/celadonprizeroom.asm19
-rwxr-xr-xdata/mapObjects/ceruleancity.asm47
-rwxr-xr-xdata/mapObjects/ceruleangym.asm18
-rwxr-xr-xdata/mapObjects/ceruleanhouse1.asm18
-rwxr-xr-xdata/mapObjects/ceruleanhouse2.asm17
-rwxr-xr-xdata/mapObjects/ceruleanhousetrashed.asm19
-rwxr-xr-xdata/mapObjects/ceruleanmart.asm17
-rwxr-xr-xdata/mapObjects/ceruleanpokecenter.asm19
-rwxr-xr-xdata/mapObjects/cinnabargym.asm23
-rwxr-xr-xdata/mapObjects/cinnabarisland.asm27
-rwxr-xr-xdata/mapObjects/cinnabarmart.asm17
-rwxr-xr-xdata/mapObjects/cinnabarpokecenter.asm19
-rw-r--r--data/mapObjects/colosseum.asm9
-rwxr-xr-xdata/mapObjects/copycatshouse1f.asm19
-rwxr-xr-xdata/mapObjects/copycatshouse2f.asm19
-rwxr-xr-xdata/mapObjects/daycarem.asm15
-rwxr-xr-xdata/mapObjects/diglettscave.asm14
-rwxr-xr-xdata/mapObjects/diglettscaveroute11.asm17
-rwxr-xr-xdata/mapObjects/diglettscaveroute2.asm17
-rwxr-xr-xdata/mapObjects/fanclub.asm20
-rwxr-xr-xdata/mapObjects/fightingdojo.asm21
-rwxr-xr-xdata/mapObjects/fuchsiacity.asm52
-rwxr-xr-xdata/mapObjects/fuchsiagym.asm22
-rwxr-xr-xdata/mapObjects/fuchsiahouse1.asm17
-rwxr-xr-xdata/mapObjects/fuchsiahouse2.asm19
-rwxr-xr-xdata/mapObjects/fuchsiahouse3.asm17
-rwxr-xr-xdata/mapObjects/fuchsiamart.asm17
-rwxr-xr-xdata/mapObjects/fuchsiameetingroom.asm17
-rwxr-xr-xdata/mapObjects/fuchsiapokecenter.asm19
-rwxr-xr-xdata/mapObjects/gary.asm20
-rwxr-xr-xdata/mapObjects/halloffameroom.asm15
-rwxr-xr-xdata/mapObjects/indigoplateau.asm14
-rwxr-xr-xdata/mapObjects/indigoplateaulobby.asm22
-rwxr-xr-xdata/mapObjects/lab1.asm25
-rwxr-xr-xdata/mapObjects/lab2.asm17
-rwxr-xr-xdata/mapObjects/lab3.asm19
-rwxr-xr-xdata/mapObjects/lab4.asm16
-rwxr-xr-xdata/mapObjects/lance.asm17
-rwxr-xr-xdata/mapObjects/lavenderhouse1.asm20
-rwxr-xr-xdata/mapObjects/lavenderhouse2.asm16
-rwxr-xr-xdata/mapObjects/lavendermart.asm17
-rwxr-xr-xdata/mapObjects/lavenderpokecenter.asm19
-rwxr-xr-xdata/mapObjects/lavendertown.asm31
-rwxr-xr-xdata/mapObjects/lorelei.asm19
-rwxr-xr-xdata/mapObjects/mansion1.asm29
-rwxr-xr-xdata/mapObjects/mansion2.asm22
-rwxr-xr-xdata/mapObjects/mansion3.asm21
-rwxr-xr-xdata/mapObjects/mansion4.asm20
-rwxr-xr-xdata/mapObjects/mtmoon1.asm34
-rwxr-xr-xdata/mapObjects/mtmoon2.asm26
-rwxr-xr-xdata/mapObjects/mtmoon3.asm28
-rwxr-xr-xdata/mapObjects/mtmoonpokecenter.asm21
-rwxr-xr-xdata/mapObjects/museum1f.asm25
-rwxr-xr-xdata/mapObjects/museum2f.asm19
-rwxr-xr-xdata/mapObjects/namerater.asm15
-rwxr-xr-xdata/mapObjects/oakslab.asm23
-rwxr-xr-xdata/mapObjects/pallettown.asm23
-rwxr-xr-xdata/mapObjects/pewtercity.asm36
-rwxr-xr-xdata/mapObjects/pewtergym.asm17
-rwxr-xr-xdata/mapObjects/pewterhouse1.asm17
-rwxr-xr-xdata/mapObjects/pewterhouse2.asm16
-rwxr-xr-xdata/mapObjects/pewtermart.asm17
-rwxr-xr-xdata/mapObjects/pewterpokecenter.asm20
-rwxr-xr-xdata/mapObjects/pokemontower1.asm21
-rwxr-xr-xdata/mapObjects/pokemontower2.asm16
-rwxr-xr-xdata/mapObjects/pokemontower3.asm18
-rwxr-xr-xdata/mapObjects/pokemontower4.asm20
-rwxr-xr-xdata/mapObjects/pokemontower5.asm20
-rwxr-xr-xdata/mapObjects/pokemontower6.asm19
-rwxr-xr-xdata/mapObjects/pokemontower7.asm15
-rwxr-xr-xdata/mapObjects/powerplant.asm30
-rwxr-xr-xdata/mapObjects/redshouse1f.asm18
-rwxr-xr-xdata/mapObjects/redshouse2f.asm12
-rwxr-xr-xdata/mapObjects/rockethideout1.asm27
-rwxr-xr-xdata/mapObjects/rockethideout2.asm25
-rwxr-xr-xdata/mapObjects/rockethideout3.asm18
-rwxr-xr-xdata/mapObjects/rockethideout4.asm25
-rwxr-xr-xdata/mapObjects/rockethideoutelevator.asm15
-rwxr-xr-xdata/mapObjects/rocktunnel1.asm34
-rwxr-xr-xdata/mapObjects/rocktunnel2.asm26
-rwxr-xr-xdata/mapObjects/rocktunnelpokecenter.asm19
-rwxr-xr-xdata/mapObjects/route1.asm14
-rwxr-xr-xdata/mapObjects/route10.asm28
-rwxr-xr-xdata/mapObjects/route11.asm31
-rwxr-xr-xdata/mapObjects/route11gate.asm21
-rwxr-xr-xdata/mapObjects/route11gateupstairs.asm16
-rwxr-xr-xdata/mapObjects/route12.asm30
-rwxr-xr-xdata/mapObjects/route12gate.asm21
-rwxr-xr-xdata/mapObjects/route12gateupstairs.asm15
-rwxr-xr-xdata/mapObjects/route12house.asm15
-rwxr-xr-xdata/mapObjects/route13.asm21
-rwxr-xr-xdata/mapObjects/route14.asm19
-rwxr-xr-xdata/mapObjects/route15.asm30
-rwxr-xr-xdata/mapObjects/route15gate.asm21
-rwxr-xr-xdata/mapObjects/route15gateupstairs.asm14
-rwxr-xr-xdata/mapObjects/route16.asm37
-rwxr-xr-xdata/mapObjects/route16gate.asm30
-rwxr-xr-xdata/mapObjects/route16gateupstairs.asm16
-rwxr-xr-xdata/mapObjects/route16house.asm16
-rwxr-xr-xdata/mapObjects/route17.asm24
-rwxr-xr-xdata/mapObjects/route18.asm23
-rwxr-xr-xdata/mapObjects/route18gate.asm21
-rwxr-xr-xdata/mapObjects/route18gateupstairs.asm15
-rwxr-xr-xdata/mapObjects/route19.asm23
-rwxr-xr-xdata/mapObjects/route2.asm36
-rwxr-xr-xdata/mapObjects/route20.asm26
-rwxr-xr-xdata/mapObjects/route21.asm17
-rwxr-xr-xdata/mapObjects/route22.asm15
-rwxr-xr-xdata/mapObjects/route22gate.asm19
-rwxr-xr-xdata/mapObjects/route23.asm26
-rwxr-xr-xdata/mapObjects/route24.asm17
-rwxr-xr-xdata/mapObjects/route25.asm23
-rwxr-xr-xdata/mapObjects/route2gate.asm20
-rwxr-xr-xdata/mapObjects/route2house.asm16
-rwxr-xr-xdata/mapObjects/route3.asm18
-rwxr-xr-xdata/mapObjects/route4.asm22
-rwxr-xr-xdata/mapObjects/route5.asm21
-rwxr-xr-xdata/mapObjects/route5gate.asm19
-rwxr-xr-xdata/mapObjects/route6.asm25
-rwxr-xr-xdata/mapObjects/route6gate.asm19
-rwxr-xr-xdata/mapObjects/route7.asm21
-rwxr-xr-xdata/mapObjects/route7gate.asm19
-rwxr-xr-xdata/mapObjects/route8.asm30
-rwxr-xr-xdata/mapObjects/route8gate.asm19
-rwxr-xr-xdata/mapObjects/route9.asm19
-rwxr-xr-xdata/mapObjects/safarizonecenter.asm31
-rwxr-xr-xdata/mapObjects/safarizoneeast.asm27
-rwxr-xr-xdata/mapObjects/safarizoneentrance.asm20
-rwxr-xr-xdata/mapObjects/safarizonenorth.asm35
-rwxr-xr-xdata/mapObjects/safarizoneresthouse1.asm16
-rwxr-xr-xdata/mapObjects/safarizoneresthouse2.asm17
-rwxr-xr-xdata/mapObjects/safarizoneresthouse3.asm17
-rwxr-xr-xdata/mapObjects/safarizoneresthouse4.asm17
-rwxr-xr-xdata/mapObjects/safarizonesecrethouse.asm15
-rwxr-xr-xdata/mapObjects/safarizonewest.asm34
-rwxr-xr-xdata/mapObjects/saffroncity.asm50
-rwxr-xr-xdata/mapObjects/saffrongym.asm83
-rwxr-xr-xdata/mapObjects/saffronhouse1.asm18
-rwxr-xr-xdata/mapObjects/saffronhouse2.asm15
-rwxr-xr-xdata/mapObjects/saffronmart.asm17
-rwxr-xr-xdata/mapObjects/saffronpokecenter.asm19
-rwxr-xr-xdata/mapObjects/school.asm17
-rwxr-xr-xdata/mapObjects/seafoamislands1.asm26
-rwxr-xr-xdata/mapObjects/seafoamislands2.asm26
-rwxr-xr-xdata/mapObjects/seafoamislands3.asm26
-rwxr-xr-xdata/mapObjects/seafoamislands4.asm30
-rwxr-xr-xdata/mapObjects/seafoamislands5.asm23
-rwxr-xr-xdata/mapObjects/silphco1.asm21
-rwxr-xr-xdata/mapObjects/silphco10.asm28
-rwxr-xr-xdata/mapObjects/silphco11.asm24
-rwxr-xr-xdata/mapObjects/silphco2.asm29
-rwxr-xr-xdata/mapObjects/silphco3.asm34
-rwxr-xr-xdata/mapObjects/silphco4.asm31
-rwxr-xr-xdata/mapObjects/silphco5.asm35
-rwxr-xr-xdata/mapObjects/silphco6.asm30
-rwxr-xr-xdata/mapObjects/silphco7.asm33
-rwxr-xr-xdata/mapObjects/silphco8.asm28
-rwxr-xr-xdata/mapObjects/silphco9.asm24
-rwxr-xr-xdata/mapObjects/silphcoelevator.asm15
-rwxr-xr-xdata/mapObjects/ssanne1.asm34
-rwxr-xr-xdata/mapObjects/ssanne10.asm41
-rwxr-xr-xdata/mapObjects/ssanne2.asm30
-rwxr-xr-xdata/mapObjects/ssanne3.asm15
-rwxr-xr-xdata/mapObjects/ssanne4.asm22
-rwxr-xr-xdata/mapObjects/ssanne5.asm19
-rwxr-xr-xdata/mapObjects/ssanne6.asm19
-rwxr-xr-xdata/mapObjects/ssanne7.asm15
-rwxr-xr-xdata/mapObjects/ssanne8.asm33
-rwxr-xr-xdata/mapObjects/ssanne9.asm47
-rw-r--r--data/mapObjects/tradecenter.asm9
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute5.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute6.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute7.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute7copy.asm18
-rwxr-xr-xdata/mapObjects/undergroundpathentranceroute8.asm17
-rwxr-xr-xdata/mapObjects/undergroundpathns.asm14
-rwxr-xr-xdata/mapObjects/undergroundpathwe.asm14
-rwxr-xr-xdata/mapObjects/unknowndungeon1.asm32
-rwxr-xr-xdata/mapObjects/unknowndungeon2.asm26
-rwxr-xr-xdata/mapObjects/unknowndungeon3.asm17
-rwxr-xr-xdata/mapObjects/vermilioncity.asm42
-rwxr-xr-xdata/mapObjects/vermiliondock.asm14
-rwxr-xr-xdata/mapObjects/vermiliongym.asm19
-rwxr-xr-xdata/mapObjects/vermilionhouse1.asm17
-rwxr-xr-xdata/mapObjects/vermilionhouse2.asm15
-rwxr-xr-xdata/mapObjects/vermilionhouse3.asm15
-rwxr-xr-xdata/mapObjects/vermilionmart.asm17
-rwxr-xr-xdata/mapObjects/vermilionpokecenter.asm19
-rwxr-xr-xdata/mapObjects/victoryroad1.asm23
-rwxr-xr-xdata/mapObjects/victoryroad2.asm37
-rwxr-xr-xdata/mapObjects/victoryroad3.asm28
-rwxr-xr-xdata/mapObjects/viridiancity.asm34
-rwxr-xr-xdata/mapObjects/viridianforest.asm38
-rwxr-xr-xdata/mapObjects/viridianforestentrance.asm20
-rwxr-xr-xdata/mapObjects/viridianforestexit.asm20
-rwxr-xr-xdata/mapObjects/viridiangym.asm25
-rwxr-xr-xdata/mapObjects/viridianhouse.asm18
-rwxr-xr-xdata/mapObjects/viridianmart.asm17
-rwxr-xr-xdata/mapObjects/viridianpokecenter.asm19
-rw-r--r--data/map_header_banks.asm368
-rw-r--r--data/map_header_pointers.asm306
-rw-r--r--data/map_songs.asm428
-rwxr-xr-xdata/mon_party_sprites.asm13
-rwxr-xr-xdata/special_warps.asm48
-rwxr-xr-xdata/super_rod.asm8
-rwxr-xr-xdata/town_map_entries.asm122
-rwxr-xr-xdata/town_map_order.asm10
-rwxr-xr-xdata/trainer_parties.asm194
-rw-r--r--[-rwxr-xr-x]data/wildPokemon/ceruleancave1.asm (renamed from data/wildPokemon/unknowndungeon1.asm)0
-rw-r--r--[-rwxr-xr-x]data/wildPokemon/ceruleancave2.asm (renamed from data/wildPokemon/unknowndungeon2.asm)0
-rw-r--r--[-rwxr-xr-x]data/wildPokemon/ceruleancaveb1.asm (renamed from data/wildPokemon/unknowndungeonb1.asm)0
-rwxr-xr-xdata/wild_mons.asm18
-rw-r--r--engine/add_mon.asm522
-rw-r--r--engine/add_party_mon.asm345
-rw-r--r--engine/bank3c.asm129
-rw-r--r--engine/bank3d.asm205
-rwxr-xr-xengine/battle/animations.asm168
-rw-r--r--engine/battle/bank3d_battle.asm2
-rw-r--r--engine/battle/battle_transitions.asm30
-rw-r--r--engine/battle/common_text.asm4
-rwxr-xr-xengine/battle/core.asm1943
-rw-r--r--engine/battle/decrement_pp.asm8
-rw-r--r--engine/battle/display_effectiveness.asm4
-rw-r--r--engine/battle/draw_hud_pokeball_gfx.asm2
-rwxr-xr-xengine/battle/end_of_battle.asm2
-rw-r--r--engine/battle/experience.asm8
-rw-r--r--engine/battle/init_battle_variables.asm2
-rw-r--r--engine/battle/moveEffects/conversion_effect.asm2
-rw-r--r--engine/battle/moveEffects/focus_energy_effect.asm6
-rw-r--r--engine/battle/moveEffects/haze_effect.asm10
-rw-r--r--engine/battle/moveEffects/heal_effect.asm2
-rw-r--r--engine/battle/moveEffects/leech_seed_effect.asm4
-rw-r--r--engine/battle/moveEffects/mist_effect.asm4
-rw-r--r--engine/battle/moveEffects/recoil_effect.asm2
-rw-r--r--engine/battle/moveEffects/reflect_light_screen_effect.asm8
-rw-r--r--engine/battle/moveEffects/substitute_effect.asm8
-rw-r--r--engine/battle/moveEffects/transform_effect.asm6
-rwxr-xr-xengine/battle/read_trainer_party.asm80
-rwxr-xr-xengine/battle/safari_zone.asm2
-rw-r--r--engine/battle/save_trainer_name.asm26
-rw-r--r--engine/battle/trainer_ai.asm338
-rw-r--r--engine/bcd.asm66
-rw-r--r--engine/black_out.asm48
-rwxr-xr-xengine/cable_club.asm12
-rw-r--r--engine/display_text_id_init.asm75
-rwxr-xr-xengine/evolution.asm2
-rw-r--r--engine/flag_action.asm (renamed from engine/flag_action_predef.asm)0
-rwxr-xr-xengine/give_pokemon.asm2
-rwxr-xr-xengine/hall_of_fame.asm2
-rwxr-xr-xengine/hidden_object_functions14.asm4
-rwxr-xr-xengine/hidden_object_functions17.asm2
-rwxr-xr-xengine/hidden_object_functions18.asm6
-rwxr-xr-xengine/hidden_object_functions3.asm2
-rwxr-xr-xengine/hidden_object_functions7.asm12
-rwxr-xr-xengine/in_game_trades.asm152
-rwxr-xr-xengine/intro.asm34
-rw-r--r--engine/items/inventory.asm151
-rwxr-xr-xengine/items/items.asm588
-rwxr-xr-xengine/learn_move.asm8
-rwxr-xr-xengine/load_pokedex_tiles.asm8
-rw-r--r--engine/menu/bills_pc.asm4
-rw-r--r--engine/menu/diploma.asm (renamed from engine/menu/diploma_1.asm)0
-rw-r--r--engine/menu/draw_badges.asm (renamed from engine/draw_badges.asm)0
-rw-r--r--engine/menu/draw_start_menu.asm87
-rw-r--r--engine/menu/link_menu.asm2
-rwxr-xr-xengine/menu/main_menu.asm146
-rwxr-xr-xengine/menu/naming_screen.asm6
-rwxr-xr-xengine/menu/oaks_pc.asm3
-rwxr-xr-xengine/menu/party_menu.asm208
-rwxr-xr-xengine/menu/pc.asm16
-rwxr-xr-xengine/menu/pokedex.asm18
-rwxr-xr-xengine/menu/prize_menu.asm86
-rwxr-xr-xengine/menu/start_menu.asm14
-rwxr-xr-xengine/menu/start_sub_menus.asm558
-rwxr-xr-xengine/menu/status_screen.asm7
-rw-r--r--engine/menu/swap_items.asm180
-rw-r--r--engine/menu/text_box.asm739
-rw-r--r--engine/menu/text_ids1.asm163
-rw-r--r--engine/menu/text_ids2.asm733
-rwxr-xr-xengine/menu/vending_machine.asm3
-rw-r--r--engine/move_mon.asm172
-rwxr-xr-xengine/oak_speech.asm126
-rw-r--r--engine/overworld/boulders.asm94
-rwxr-xr-xengine/overworld/cable_club_npc.asm3
-rwxr-xr-xengine/overworld/card_key.asm2
-rw-r--r--engine/overworld/check_player_state.asm236
-rw-r--r--engine/overworld/clear_loadmapdata_vars.asm20
-rw-r--r--engine/overworld/clear_variables.asm20
-rwxr-xr-xengine/overworld/elevator.asm2
-rw-r--r--engine/overworld/field_move_messages.asm57
-rw-r--r--engine/overworld/get_coords_tile_in_front_of_player.asm87
-rwxr-xr-xengine/overworld/hidden_items.asm5
-rw-r--r--engine/overworld/item.asm2
-rw-r--r--engine/overworld/load_wild_data.asm33
-rwxr-xr-xengine/overworld/map_sprites.asm14
-rw-r--r--engine/overworld/movement.asm24
-rwxr-xr-xengine/overworld/npc_movement.asm2
-rwxr-xr-xengine/overworld/npc_movement_2.asm2
-rwxr-xr-xengine/overworld/oaks_aide.asm2
-rw-r--r--engine/overworld/player_state.asm456
-rw-r--r--engine/overworld/poison.asm151
-rwxr-xr-xengine/overworld/pokecenter.asm4
-rwxr-xr-xengine/overworld/pokemart.asm228
-rw-r--r--engine/overworld/print_safari_steps.asm36
-rw-r--r--engine/overworld/push_boulder.asm (renamed from engine/overworld/try_pushing_boulder.asm)0
-rw-r--r--engine/overworld/set_blackout_map.asm6
-rw-r--r--engine/overworld/special_warps.asm147
-rw-r--r--engine/overworld/step_functions.asm151
-rw-r--r--engine/overworld/tileset_header.asm (renamed from engine/overworld/load_tileset_header.asm)0
-rw-r--r--engine/overworld/update_map.asm (renamed from engine/overworld/replace_tile_block.asm)0
-rw-r--r--engine/overworld/wild_mons.asm33
-rwxr-xr-xengine/palettes.asm8
-rw-r--r--engine/pathfinding.asm (renamed from engine/overworld/npc_pathfinding.asm)0
-rwxr-xr-xengine/pikachu_emotions.asm4
-rwxr-xr-xengine/pikachu_follow.asm34
-rwxr-xr-xengine/pikachu_pcm.asm8
-rwxr-xr-xengine/pikachu_pic_animation.asm2
-rwxr-xr-xengine/pokedex_rating.asm4
-rwxr-xr-xengine/predefs.asm2
-rw-r--r--engine/predefsA.asm2
-rwxr-xr-xengine/save.asm54
-rwxr-xr-xengine/slot_machine.asm5
-rw-r--r--engine/special_warps.asm149
-rwxr-xr-xengine/surfing_minigame.asm6
-rw-r--r--engine/test_battle.asm45
-rwxr-xr-xengine/town_map.asm2
-rwxr-xr-xengine/trade2.asm33
-rwxr-xr-xengine/yellow_intro.asm4
-rw-r--r--gfx/blocksets/gate.bst (renamed from gfx/blocksets/museum.bst)bin2048 -> 2048 bytes
-rw-r--r--gfx/blocksets/reds_house.bst (renamed from gfx/blocksets/redshouse2.bst)bin304 -> 304 bytes
-rw-r--r--gfx/blocksets/ship_port.bst (renamed from gfx/blocksets/shipport.bst)bin368 -> 368 bytes
-rw-r--r--gfx/tilesets/gate.png (renamed from gfx/tilesets/museum.png)bin1119 -> 1119 bytes
-rw-r--r--gfx/tilesets/reds_house.png (renamed from gfx/tilesets/redshouse2.png)bin845 -> 845 bytes
-rw-r--r--gfx/tilesets/ship_port.png (renamed from gfx/tilesets/shipport.png)bin1125 -> 1125 bytes
-rw-r--r--home.asm41
-rw-r--r--home/audio.asm22
-rw-r--r--home/copy2.asm30
-rw-r--r--home/overworld.asm21
-rw-r--r--home/pic.asm4
-rw-r--r--home/text.asm66
-rw-r--r--home/vcopy.asm202
-rw-r--r--hram.asm5
-rw-r--r--macros.asm792
-rwxr-xr-xmacros/asm_macros.asm190
-rwxr-xr-xmacros/audio_macros.asm214
-rwxr-xr-xmacros/data_macros.asm242
-rw-r--r--macros/event_macros.asm (renamed from constants/event_macros.asm)0
-rwxr-xr-xmacros/text_macros.asm80
-rwxr-xr-xmain.asm2985
-rw-r--r--maps/AgathasRoom.blk (renamed from maps/agatha.blk)0
-rw-r--r--maps/BeachHouse.blk (renamed from maps/beach_house.blk)0
-rw-r--r--maps/BikeShop.blk (renamed from maps/bikeshop.blk)0
-rw-r--r--maps/BillsHouse.blk (renamed from maps/billshouse.blk)0
-rw-r--r--maps/BluesHouse.blk (renamed from maps/blueshouse.blk)0
-rw-r--r--maps/BrunosRoom.blk (renamed from maps/bruno.blk)0
-rw-r--r--maps/CeladonChiefHouse.blk (renamed from maps/celadonhouse.blk)0
-rw-r--r--maps/CeladonCity.blk (renamed from maps/celadoncity.blk)0
-rw-r--r--maps/CeladonDiner.blk (renamed from maps/celadondiner.blk)0
-rw-r--r--maps/CeladonGym.blk (renamed from maps/celadongym.blk)0
-rw-r--r--maps/CeladonHotel.blk (renamed from maps/celadonhotel.blk)0
-rw-r--r--maps/CeladonMansion1F.blk (renamed from maps/celadonmansion1.blk)0
-rw-r--r--maps/CeladonMansion2F.blk (renamed from maps/celadonmansion2.blk)0
-rw-r--r--maps/CeladonMansion3F.blk (renamed from maps/celadonmansion3.blk)0
-rw-r--r--maps/CeladonMansionRoof.blk (renamed from maps/celadonmansion4.blk)0
-rw-r--r--maps/CeladonMansionRoofHouse.blk (renamed from maps/celadonmansion5.blk)0
-rw-r--r--maps/CeladonMart1F.blk (renamed from maps/celadonmart1.blk)0
-rw-r--r--maps/CeladonMart2F.blk (renamed from maps/celadonmart2.blk)0
-rw-r--r--maps/CeladonMart3F.blk (renamed from maps/celadonmart3.blk)0
-rw-r--r--maps/CeladonMart4F.blk (renamed from maps/celadonmart4.blk)0
-rw-r--r--maps/CeladonMart5F.blk (renamed from maps/celadonmart5.blk)0
-rw-r--r--maps/CeladonMartElevator.blk (renamed from maps/celadonmartelevator.blk)0
-rw-r--r--maps/CeladonMartRoof.blk (renamed from maps/celadonmartroof.blk)0
-rw-r--r--maps/CeladonPokecenter.blk (renamed from maps/celadonpokecenter.blk)0
-rw-r--r--maps/CeruleanBadgeHouse.blk (renamed from maps/ceruleanhouse2.blk)0
-rw-r--r--maps/CeruleanCave1F.blk (renamed from maps/unknowndungeon1.blk)0
-rw-r--r--maps/CeruleanCave2F.blk (renamed from maps/unknowndungeon2.blk)0
-rw-r--r--maps/CeruleanCaveB1F.blk (renamed from maps/unknowndungeon3.blk)0
-rw-r--r--maps/CeruleanCity.blk (renamed from maps/ceruleancity.blk)0
-rw-r--r--maps/CeruleanGym.blk (renamed from maps/ceruleangym.blk)0
-rw-r--r--maps/CeruleanMart.blk (renamed from maps/ceruleanmart.blk)0
-rw-r--r--maps/CeruleanPokecenter.blk (renamed from maps/ceruleanpokecenter.blk)0
-rw-r--r--maps/CeruleanTradeHouse.blk (renamed from maps/ceruleanhouse1.blk)0
-rw-r--r--maps/CeruleanTrashedHouse.blk (renamed from maps/ceruleanhousetrashed.blk)0
-rw-r--r--maps/ChampionsRoom.blk (renamed from maps/gary.blk)0
-rw-r--r--maps/CinnabarGym.blk (renamed from maps/cinnabargym.blk)0
-rw-r--r--maps/CinnabarIsland.blk (renamed from maps/cinnabarisland.blk)0
-rw-r--r--maps/CinnabarLab.blk (renamed from maps/lab1.blk)0
-rw-r--r--maps/CinnabarLabFossilRoom.blk (renamed from maps/lab4.blk)0
-rw-r--r--maps/CinnabarLabMetronomeRoom.blk (renamed from maps/lab3.blk)0
-rw-r--r--maps/CinnabarLabTradeRoom.blk (renamed from maps/lab2.blk)0
-rw-r--r--maps/CinnabarMart.blk (renamed from maps/cinnabarmart.blk)0
-rw-r--r--maps/CinnabarPokecenter.blk (renamed from maps/cinnabarpokecenter.blk)0
-rw-r--r--maps/Colosseum.blk (renamed from maps/colosseum.blk)0
-rw-r--r--maps/CopycatsHouse1F.blk (renamed from maps/copycatshouse1f.blk)0
-rw-r--r--maps/CopycatsHouse2F.blk (renamed from maps/copycatshouse2f.blk)0
-rw-r--r--maps/Daycare.blk (renamed from maps/daycarem.blk)0
-rw-r--r--maps/DiglettsCave.blk (renamed from maps/diglettscave.blk)0
-rw-r--r--maps/DiglettsCaveRoute11.blk (renamed from maps/diglettscaveentranceroute11.blk)0
-rw-r--r--maps/DiglettsCaveRoute2.blk (renamed from maps/diglettscaveroute2.blk)0
-rw-r--r--maps/FightingDojo.blk (renamed from maps/fightingdojo.blk)0
-rw-r--r--maps/FuchsiaBillsGrandpasHouse.blk (renamed from maps/fuchsiahouse1.blk)0
-rw-r--r--maps/FuchsiaCity.blk (renamed from maps/fuchsiacity.blk)0
-rw-r--r--maps/FuchsiaGoodRodHouse.blk (renamed from maps/fuchsiahouse3.blk)0
-rw-r--r--maps/FuchsiaGym.blk (renamed from maps/fuchsiagym.blk)0
-rw-r--r--maps/FuchsiaMart.blk (renamed from maps/fuchsiamart.blk)0
-rw-r--r--maps/FuchsiaMeetingRoom.blk (renamed from maps/fuchsiameetingroom.blk)0
-rw-r--r--maps/FuchsiaPokecenter.blk (renamed from maps/fuchsiapokecenter.blk)0
-rw-r--r--maps/GameCorner.blk (renamed from maps/celadongamecorner.blk)0
-rw-r--r--maps/GameCornerPrizeRoom.blk (renamed from maps/celadonprizeroom.blk)0
-rw-r--r--maps/HallOfFame.blk (renamed from maps/halloffameroom.blk)0
-rw-r--r--maps/IndigoPlateau.blk (renamed from maps/indigoplateau.blk)0
-rw-r--r--maps/IndigoPlateauLobby.blk (renamed from maps/indigoplateaulobby.blk)bin48 -> 48 bytes
-rw-r--r--maps/LancesRoom.blk (renamed from maps/lance.blk)0
-rw-r--r--maps/LavenderCuboneHouse.blk (renamed from maps/lavenderhouse1.blk)0
-rw-r--r--maps/LavenderMart.blk (renamed from maps/lavendermart.blk)0
-rw-r--r--maps/LavenderPokecenter.blk (renamed from maps/lavenderpokecenter.blk)0
-rw-r--r--maps/LavenderTown.blk (renamed from maps/lavendertown.blk)0
-rw-r--r--maps/LoreleisRoom.blk (renamed from maps/lorelei.blk)0
-rw-r--r--maps/MrFujisHouse.blk (renamed from maps/lavenderhouse2.blk)0
-rw-r--r--maps/MrPsychicsHouse.blk (renamed from maps/namerater.blk)0
-rw-r--r--maps/MtMoon1F.blk (renamed from maps/mtmoon1.blk)0
-rw-r--r--maps/MtMoonB1F.blk (renamed from maps/mtmoon2.blk)0
-rw-r--r--maps/MtMoonB2F.blk (renamed from maps/mtmoon3.blk)0
-rw-r--r--maps/MtMoonPokecenter.blk (renamed from maps/mtmoonpokecenter.blk)0
-rw-r--r--maps/Museum1F.blk (renamed from maps/museum1f.blk)bin40 -> 40 bytes
-rw-r--r--maps/Museum2F.blk (renamed from maps/museum2f.blk)bin28 -> 28 bytes
-rw-r--r--maps/NameRatersHouse.blk (renamed from maps/pewterhouse1.blk)0
-rw-r--r--maps/OaksLab.blk (renamed from maps/oakslab.blk)0
-rw-r--r--maps/PalletTown.blk (renamed from maps/pallettown.blk)bin90 -> 90 bytes
-rw-r--r--maps/PewterCity.blk (renamed from maps/pewtercity.blk)0
-rw-r--r--maps/PewterGym.blk (renamed from maps/pewtergym.blk)0
-rw-r--r--maps/PewterMart.blk (renamed from maps/pewtermart.blk)0
-rw-r--r--maps/PewterNidoranHouse.blk (renamed from maps/pewterhouse2.blk)0
-rw-r--r--maps/PewterPokecenter.blk (renamed from maps/pewterpokecenter.blk)0
-rw-r--r--maps/PewterSpeechHouse.blk (renamed from maps/route12house.blk)0
-rw-r--r--maps/PokemonFanClub.blk (renamed from maps/fanclub.blk)0
-rw-r--r--maps/PokemonMansion1F.blk (renamed from maps/mansion1.blk)0
-rw-r--r--maps/PokemonMansion2F.blk (renamed from maps/mansion2.blk)0
-rw-r--r--maps/PokemonMansion3F.blk (renamed from maps/mansion3.blk)0
-rw-r--r--maps/PokemonMansionB1F.blk (renamed from maps/mansion4.blk)0
-rw-r--r--maps/PokemonTower1F.blk (renamed from maps/pokemontower1.blk)0
-rw-r--r--maps/PokemonTower2F.blk (renamed from maps/pokemontower2.blk)0
-rw-r--r--maps/PokemonTower3F.blk (renamed from maps/pokemontower3.blk)0
-rw-r--r--maps/PokemonTower4F.blk (renamed from maps/pokemontower4.blk)0
-rw-r--r--maps/PokemonTower5F.blk (renamed from maps/pokemontower5.blk)0
-rw-r--r--maps/PokemonTower6F.blk (renamed from maps/pokemontower6.blk)0
-rw-r--r--maps/PokemonTower7F.blk (renamed from maps/pokemontower7.blk)0
-rw-r--r--maps/PowerPlant.blk (renamed from maps/powerplant.blk)0
-rw-r--r--maps/RedsHouse1F.blk (renamed from maps/redshouse1f.blk)0
-rw-r--r--maps/RedsHouse2F.blk (renamed from maps/redshouse2f.blk)0
-rw-r--r--maps/RockTunnel1F.blk (renamed from maps/rocktunnel1.blk)0
-rw-r--r--maps/RockTunnelB1F.blk (renamed from maps/rocktunnel2.blk)0
-rw-r--r--maps/RockTunnelPokecenter.blk (renamed from maps/rocktunnelpokecenter.blk)0
-rw-r--r--maps/RocketHideoutB1F.blk (renamed from maps/rockethideout1.blk)0
-rw-r--r--maps/RocketHideoutB2F.blk (renamed from maps/rockethideout2.blk)0
-rw-r--r--maps/RocketHideoutB3F.blk (renamed from maps/rockethideout3.blk)0
-rw-r--r--maps/RocketHideoutB4F.blk (renamed from maps/rockethideout4.blk)0
-rw-r--r--maps/RocketHideoutElevator.blk (renamed from maps/rockethideoutelevator.blk)0
-rw-r--r--maps/Route1.blk (renamed from maps/route1.blk)0
-rw-r--r--maps/Route10.blk (renamed from maps/route10.blk)0
-rw-r--r--maps/Route11.blk (renamed from maps/route11.blk)0
-rw-r--r--maps/Route11Gate1F.blk (renamed from maps/route11gate.blk)bin20 -> 20 bytes
-rw-r--r--maps/Route11Gate2F.blk (renamed from maps/route11gateupstairs.blk)bin16 -> 16 bytes
-rw-r--r--maps/Route12.blk (renamed from maps/route12.blk)0
-rw-r--r--maps/Route12Gate1F.blk (renamed from maps/route12gate.blk)bin20 -> 20 bytes
-rw-r--r--maps/Route12Gate2F.blk (renamed from maps/route12gateupstairs.blk)bin16 -> 16 bytes
-rw-r--r--maps/Route12SuperRodHouse.blk (renamed from maps/route16house.blk)0
-rw-r--r--maps/Route13.blk (renamed from maps/route13.blk)0
-rw-r--r--maps/Route14.blk (renamed from maps/route14.blk)0
-rw-r--r--maps/Route15.blk (renamed from maps/route15.blk)0
-rw-r--r--maps/Route15Gate1F.blk (renamed from maps/route15gate.blk)bin20 -> 20 bytes
-rwxr-xr-xmaps/Route15Gate2F.blk (renamed from maps/route15gateupstairs.blk)bin16 -> 16 bytes
-rw-r--r--maps/Route16.blk (renamed from maps/route16.blk)0
-rw-r--r--maps/Route16FlyHouse.blk (renamed from maps/route2house.blk)0
-rw-r--r--maps/Route16Gate1F.blk (renamed from maps/route16gate.blk)bin28 -> 28 bytes
-rw-r--r--maps/Route16Gate2F.blk (renamed from maps/route16gateupstairs.blk)bin16 -> 16 bytes
-rw-r--r--maps/Route17.blk (renamed from maps/route17.blk)0
-rw-r--r--maps/Route18.blk (renamed from maps/route18.blk)0
-rw-r--r--maps/Route18Gate1F.blk (renamed from maps/route18gate.blk)bin20 -> 20 bytes
-rw-r--r--maps/Route18Gate2F.blk (renamed from maps/route18gateupstairs.blk)bin16 -> 16 bytes
-rw-r--r--maps/Route19.blk (renamed from maps/route19-yellow.blk)0
-rw-r--r--maps/Route2.blk (renamed from maps/route2.blk)0
-rw-r--r--maps/Route20.blk (renamed from maps/route20.blk)0
-rw-r--r--maps/Route21.blk (renamed from maps/route21.blk)0
-rw-r--r--maps/Route22.blk (renamed from maps/route22.blk)0
-rw-r--r--maps/Route22Gate.blk (renamed from maps/route22gate.blk)bin20 -> 20 bytes
-rw-r--r--maps/Route23.blk (renamed from maps/route23.blk)0
-rw-r--r--maps/Route24.blk (renamed from maps/route24.blk)0
-rw-r--r--maps/Route25.blk (renamed from maps/route25.blk)0
-rw-r--r--maps/Route2Gate.blk (renamed from maps/route2gate.blk)bin20 -> 20 bytes
-rw-r--r--maps/Route2TradeHouse.blk (renamed from maps/saffronhouse1.blk)0
-rw-r--r--maps/Route3.blk (renamed from maps/route3.blk)0
-rw-r--r--maps/Route4.blk (renamed from maps/route4.blk)0
-rw-r--r--maps/Route5.blk (renamed from maps/route5.blk)0
-rw-r--r--maps/Route5Gate.blk (renamed from maps/route5gate.blk)0
-rw-r--r--maps/Route6.blk (renamed from maps/route6.blk)0
-rw-r--r--maps/Route6Gate.blk (renamed from maps/route6gate.blk)0
-rw-r--r--maps/Route7.blk (renamed from maps/route7.blk)0
-rw-r--r--maps/Route7Gate.blk (renamed from maps/route7gate.blk)0
-rw-r--r--maps/Route8.blk (renamed from maps/route8.blk)0
-rw-r--r--maps/Route8Gate.blk (renamed from maps/route8gate.blk)0
-rw-r--r--maps/Route9.blk (renamed from maps/route9.blk)0
-rw-r--r--maps/SSAnne1F.blk (renamed from maps/ssanne1.blk)0
-rw-r--r--maps/SSAnne1FRooms.blk (renamed from maps/ssanne8.blk)0
-rw-r--r--maps/SSAnne2F.blk (renamed from maps/ssanne2.blk)0
-rw-r--r--maps/SSAnne2FRooms.blk (renamed from maps/ssanne10.blk)0
-rw-r--r--maps/SSAnne3F.blk (renamed from maps/ssanne3.blk)0
-rw-r--r--maps/SSAnneB1F.blk (renamed from maps/ssanne4.blk)0
-rw-r--r--maps/SSAnneB1FRooms.blk (renamed from maps/ssanne9.blk)0
-rw-r--r--maps/SSAnneBow.blk (renamed from maps/ssanne5.blk)0
-rw-r--r--maps/SSAnneCaptainsRoom.blk (renamed from maps/ssanne7.blk)0
-rw-r--r--maps/SSAnneKitchen.blk (renamed from maps/ssanne6.blk)0
-rw-r--r--maps/SafariZoneCenter.blk (renamed from maps/safarizonecenter.blk)0
-rw-r--r--maps/SafariZoneCenterRestHouse.blk (renamed from maps/safarizoneresthouse1.blk)bin16 -> 16 bytes
-rw-r--r--maps/SafariZoneEast.blk (renamed from maps/safarizoneeast.blk)0
-rw-r--r--maps/SafariZoneEastRestHouse.blk (renamed from maps/safarizoneresthouse2.blk)bin16 -> 16 bytes
-rw-r--r--maps/SafariZoneGate.blk (renamed from maps/safarizoneentrance.blk)0
-rw-r--r--maps/SafariZoneNorth.blk (renamed from maps/safarizonenorth.blk)0
-rw-r--r--maps/SafariZoneNorthRestHouse.blk (renamed from maps/safarizoneresthouse3.blk)bin16 -> 16 bytes
-rw-r--r--maps/SafariZoneSecretHouse.blk (renamed from maps/safarizonesecrethouse.blk)0
-rw-r--r--maps/SafariZoneWest.blk (renamed from maps/safarizonewest.blk)0
-rw-r--r--maps/SafariZoneWestRestHouse.blk (renamed from maps/safarizoneresthouse4.blk)bin16 -> 16 bytes
-rw-r--r--maps/SaffronCity.blk (renamed from maps/saffroncity.blk)bin360 -> 360 bytes
-rw-r--r--maps/SaffronGym.blk (renamed from maps/saffrongym.blk)0
-rw-r--r--maps/SaffronMart.blk (renamed from maps/saffronmart.blk)0
-rw-r--r--maps/SaffronPidgeyHouse.blk (renamed from maps/saffronhouse2.blk)0
-rw-r--r--maps/SaffronPokecenter.blk (renamed from maps/saffronpokecenter.blk)0
-rw-r--r--maps/SeafoamIslands1F.blk (renamed from maps/seafoamislands1.blk)0
-rw-r--r--maps/SeafoamIslandsB1F.blk (renamed from maps/seafoamislands2.blk)0
-rw-r--r--maps/SeafoamIslandsB2F.blk (renamed from maps/seafoamislands3.blk)0
-rw-r--r--maps/SeafoamIslandsB3F.blk (renamed from maps/seafoamislands4.blk)0
-rw-r--r--maps/SeafoamIslandsB4F.blk (renamed from maps/seafoamislands5.blk)0
-rw-r--r--maps/SilphCo10F.blk (renamed from maps/silphco10.blk)0
-rw-r--r--maps/SilphCo11F.blk (renamed from maps/silphco11.blk)0
-rw-r--r--maps/SilphCo1F.blk (renamed from maps/silphco1.blk)0
-rw-r--r--maps/SilphCo2F.blk (renamed from maps/silphco2.blk)0
-rw-r--r--maps/SilphCo3F.blk (renamed from maps/silphco3.blk)0
-rw-r--r--maps/SilphCo4F.blk (renamed from maps/silphco4.blk)0
-rw-r--r--maps/SilphCo5F.blk (renamed from maps/silphco5.blk)0
-rw-r--r--maps/SilphCo6F.blk (renamed from maps/silphco6.blk)0
-rw-r--r--maps/SilphCo7F.blk (renamed from maps/silphco7.blk)0
-rw-r--r--maps/SilphCo8F.blk (renamed from maps/silphco8.blk)0
-rw-r--r--maps/SilphCo9F.blk (renamed from maps/silphco9.blk)0
-rw-r--r--maps/SilphCoElevator.blk (renamed from maps/silphcoelevator.blk)0
-rw-r--r--maps/TradeCenter.blk (renamed from maps/tradecenter.blk)0
-rw-r--r--maps/UndergroundPathNorthSouth.blk (renamed from maps/undergroundpathns.blk)0
-rw-r--r--maps/UndergroundPathRoute5.blk (renamed from maps/undergroundpathentranceroute5.blk)bin16 -> 16 bytes
-rw-r--r--maps/UndergroundPathRoute6.blk (renamed from maps/undergroundpathentranceroute6.blk)bin16 -> 16 bytes
-rw-r--r--maps/UndergroundPathRoute7.blk (renamed from maps/undergroundpathentranceroute7.blk)bin16 -> 16 bytes
-rw-r--r--maps/UndergroundPathRoute8.blk (renamed from maps/undergroundpathentranceroute8.blk)bin16 -> 16 bytes
-rw-r--r--maps/UndergroundPathWestEast.blk (renamed from maps/undergroundpathwe.blk)0
-rwxr-xr-xmaps/UnusedDiglettsCaveCopy.blk (renamed from maps/unusedblocks60258.blk)0
-rwxr-xr-xmaps/UnusedEmptyMap.blk (renamed from maps/unusedblocks60cef.blk)0
-rwxr-xr-xmaps/UnusedPokecenterCopy.blk (renamed from maps/unusedblocks58d7d.blk)0
-rw-r--r--maps/VermilionCity.blk (renamed from maps/vermilioncity.blk)0
-rw-r--r--maps/VermilionDock.blk (renamed from maps/vermiliondock.blk)0
-rw-r--r--maps/VermilionGym.blk (renamed from maps/vermiliongym.blk)0
-rw-r--r--maps/VermilionMart.blk (renamed from maps/vermilionmart.blk)0
-rw-r--r--maps/VermilionOldRodHouse.blk (renamed from maps/vermilionhouse1.blk)0
-rw-r--r--maps/VermilionPidgeyHouse.blk (renamed from maps/vermilionhouse2.blk)0
-rw-r--r--maps/VermilionPokecenter.blk (renamed from maps/vermilionpokecenter.blk)0
-rw-r--r--maps/VermilionTradeHouse.blk (renamed from maps/vermilionhouse3.blk)0
-rw-r--r--maps/VictoryRoad1F.blk (renamed from maps/victoryroad1.blk)0
-rw-r--r--maps/VictoryRoad2F.blk (renamed from maps/victoryroad2.blk)0
-rw-r--r--maps/VictoryRoad3F.blk (renamed from maps/victoryroad3.blk)0
-rw-r--r--maps/ViridianCity.blk (renamed from maps/viridiancity.blk)0
-rw-r--r--maps/ViridianForest.blk (renamed from maps/viridianforest.blk)0
-rw-r--r--maps/ViridianForestNorthGate.blk (renamed from maps/viridianforestentrance.blk)bin20 -> 20 bytes
-rw-r--r--maps/ViridianForestSouthGate.blk (renamed from maps/viridianforestexit.blk)bin20 -> 20 bytes
-rw-r--r--maps/ViridianGym.blk (renamed from maps/viridiangym.blk)0
-rw-r--r--maps/ViridianMart.blk (renamed from maps/viridianmart.blk)0
-rw-r--r--maps/ViridianNicknameHouse.blk (renamed from maps/viridianhouse.blk)0
-rw-r--r--maps/ViridianPokecenter.blk (renamed from maps/viridianpokecenter.blk)0
-rw-r--r--maps/ViridianSchoolHouse.blk (renamed from maps/school.blk)0
-rw-r--r--maps/WardensHouse.blk (renamed from maps/fuchsiahouse2.blk)0
-rw-r--r--maps/route19.blk1
-rw-r--r--pokeyellow.link14
-rwxr-xr-xscripts/AgathasRoom.asm155
-rw-r--r--scripts/BeachHouse.asm191
-rwxr-xr-xscripts/BeachHouse2.asm33
-rwxr-xr-xscripts/BikeShop.asm151
-rwxr-xr-xscripts/BillsHouse.asm279
-rwxr-xr-xscripts/BillsHouse2.asm158
-rwxr-xr-xscripts/BluesHouse.asm85
-rwxr-xr-xscripts/BrunosRoom.asm152
-rwxr-xr-xscripts/CeladonChiefHouse.asm20
-rwxr-xr-xscripts/CeladonCity.asm142
-rwxr-xr-xscripts/CeladonCity2.asm (renamed from scripts/celadoncity2.asm)0
-rwxr-xr-xscripts/CeladonDiner.asm31
-rwxr-xr-xscripts/CeladonDiner2.asm (renamed from scripts/celadondiner2.asm)0
-rwxr-xr-xscripts/CeladonGym.asm335
-rwxr-xr-xscripts/CeladonHotel.asm19
-rwxr-xr-xscripts/CeladonMansion1F.asm48
-rwxr-xr-xscripts/CeladonMansion1F_2.asm78
-rwxr-xr-xscripts/CeladonMansion2F.asm10
-rwxr-xr-xscripts/CeladonMansion3F.asm176
-rwxr-xr-xscripts/CeladonMansion3F_2.asm (renamed from scripts/celadonmansion3_2.asm)0
-rwxr-xr-xscripts/CeladonMansionRoof.asm10
-rwxr-xr-xscripts/CeladonMansionRoofHouse.asm22
-rwxr-xr-xscripts/CeladonMart1F.asm20
-rwxr-xr-xscripts/CeladonMart2F.asm21
-rwxr-xr-xscripts/CeladonMart3F.asm75
-rwxr-xr-xscripts/CeladonMart3F_2.asm38
-rwxr-xr-xscripts/CeladonMart4F.asm20
-rwxr-xr-xscripts/CeladonMart5F.asm22
-rwxr-xr-xscripts/CeladonMartElevator.asm73
-rwxr-xr-xscripts/CeladonMartRoof.asm259
-rwxr-xr-xscripts/CeladonPokecenter.asm29
-rwxr-xr-xscripts/CeruleanBadgeHouse.asm109
-rwxr-xr-xscripts/CeruleanCave1F.asm8
-rwxr-xr-xscripts/CeruleanCave2F.asm8
-rwxr-xr-xscripts/CeruleanCaveB1F.asm45
-rwxr-xr-xscripts/CeruleanCity.asm434
-rwxr-xr-xscripts/CeruleanCity_2.asm (renamed from scripts/ceruleancity2.asm)0
-rwxr-xr-xscripts/CeruleanGym.asm217
-rwxr-xr-xscripts/CeruleanMart.asm15
-rwxr-xr-xscripts/CeruleanPokecenter.asm29
-rwxr-xr-xscripts/CeruleanTradeHouse.asm106
-rwxr-xr-xscripts/CeruleanTrashedHouse.asm39
-rwxr-xr-xscripts/ChampionsRoom.asm288
-rwxr-xr-xscripts/CinnabarGym.asm566
-rwxr-xr-xscripts/CinnabarGym3.asm (renamed from scripts/cinnabargym3.asm)0
-rwxr-xr-xscripts/CinnabarGym_2.asm (renamed from scripts/cinnabargym2.asm)0
-rwxr-xr-xscripts/CinnabarIsland.asm85
-rwxr-xr-xscripts/CinnabarLab.asm30
-rwxr-xr-xscripts/CinnabarLabFossilRoom.asm109
-rwxr-xr-xscripts/CinnabarLabMetronomeRoom.asm62
-rwxr-xr-xscripts/CinnabarLabTradeRoom.asm25
-rwxr-xr-xscripts/CinnabarMart.asm15
-rwxr-xr-xscripts/CinnabarPokecenter.asm29
-rw-r--r--scripts/Colosseum.asm9
-rwxr-xr-xscripts/CopycatsHouse1F.asm22
-rwxr-xr-xscripts/CopycatsHouse2F.asm102
-rwxr-xr-xscripts/Daycare.asm298
-rwxr-xr-xscripts/DiglettsCave.asm5
-rwxr-xr-xscripts/DiglettsCaveRoute11.asm12
-rwxr-xr-xscripts/DiglettsCaveRoute2.asm11
-rwxr-xr-xscripts/FightingDojo.asm323
-rwxr-xr-xscripts/FuchsiaBillsGrandpasHouse.asm20
-rwxr-xr-xscripts/FuchsiaCity.asm169
-rwxr-xr-xscripts/FuchsiaGoodRodHouse.asm75
-rwxr-xr-xscripts/FuchsiaGym.asm329
-rwxr-xr-xscripts/FuchsiaMart.asm16
-rwxr-xr-xscripts/FuchsiaMeetingRoom.asm20
-rwxr-xr-xscripts/FuchsiaPokecenter.asm29
-rwxr-xr-xscripts/GameCorner.asm529
-rwxr-xr-xscripts/GameCorner2.asm (renamed from scripts/celadongamecorner2.asm)0
-rwxr-xr-xscripts/GameCornerPrizeRoom.asm20
-rwxr-xr-xscripts/HallOfFame.asm109
-rwxr-xr-xscripts/IndigoPlateau.asm4
-rwxr-xr-xscripts/IndigoPlateauLobby.asm42
-rwxr-xr-xscripts/LancesRoom.asm161
-rwxr-xr-xscripts/LavenderCuboneHouse.asm35
-rwxr-xr-xscripts/LavenderMart.asm32
-rwxr-xr-xscripts/LavenderPokecenter.asm29
-rwxr-xr-xscripts/LavenderTown.asm63
-rwxr-xr-xscripts/LoreleisRoom.asm153
-rwxr-xr-xscripts/MrFujisHouse.asm112
-rwxr-xr-xscripts/MrPsychicsHouse.asm45
-rwxr-xr-xscripts/MtMoon1F.asm219
-rwxr-xr-xscripts/MtMoonB1F.asm10
-rwxr-xr-xscripts/MtMoonB2F.asm673
-rwxr-xr-xscripts/MtMoonB2F_2.asm (renamed from scripts/mtmoon3_2.asm)0
-rwxr-xr-xscripts/MtMoonPokecenter.asm40
-rwxr-xr-xscripts/MtMoonPokecenter2.asm (renamed from scripts/mtmoonpokecenter2.asm)0
-rwxr-xr-xscripts/Museum1F.asm65
-rwxr-xr-xscripts/Museum1F2.asm211
-rwxr-xr-xscripts/Museum2F.asm71
-rwxr-xr-xscripts/NameRatersHouse.asm107
-rwxr-xr-xscripts/OaksLab.asm1156
-rwxr-xr-xscripts/OaksLab2.asm (renamed from scripts/oakslab2.asm)0
-rwxr-xr-xscripts/PalletTown.asm302
-rwxr-xr-xscripts/PewterCity.asm322
-rwxr-xr-xscripts/PewterGym.asm241
-rwxr-xr-xscripts/PewterMart.asm30
-rwxr-xr-xscripts/PewterNidoranHouse.asm24
-rwxr-xr-xscripts/PewterPokecenter.asm39
-rwxr-xr-xscripts/PewterPokecenter2.asm78
-rwxr-xr-xscripts/PewterSpeechHouse.asm14
-rwxr-xr-xscripts/PokemonFanClub.asm307
-rwxr-xr-xscripts/PokemonMansion1F.asm134
-rwxr-xr-xscripts/PokemonMansion2F.asm140
-rwxr-xr-xscripts/PokemonMansion3F.asm151
-rwxr-xr-xscripts/PokemonMansionB1F.asm130
-rwxr-xr-xscripts/PokemonTower1F.asm30
-rwxr-xr-xscripts/PokemonTower2F.asm172
-rwxr-xr-xscripts/PokemonTower2F_2.asm (renamed from scripts/pokemontower2_2.asm)0
-rwxr-xr-xscripts/PokemonTower3F.asm101
-rwxr-xr-xscripts/PokemonTower4F.asm104
-rwxr-xr-xscripts/PokemonTower5F.asm176
-rwxr-xr-xscripts/PokemonTower6F.asm212
-rwxr-xr-xscripts/PokemonTower7F.asm315
-rwxr-xr-xscripts/PowerPlant.asm175
-rwxr-xr-xscripts/RedsHouse1F.asm17
-rwxr-xr-xscripts/RedsHouse1F2.asm (renamed from scripts/redshouse1f2.asm)0
-rwxr-xr-xscripts/RedsHouse2F.asm23
-rwxr-xr-xscripts/RockTunnel1F.asm213
-rwxr-xr-xscripts/RockTunnelB1F.asm241
-rwxr-xr-xscripts/RockTunnelPokecenter.asm29
-rwxr-xr-xscripts/RocketHideoutB1F.asm189
-rwxr-xr-xscripts/RocketHideoutB2F.asm450
-rwxr-xr-xscripts/RocketHideoutB3F.asm206
-rwxr-xr-xscripts/RocketHideoutB4F.asm415
-rwxr-xr-xscripts/RocketHideoutElevator.asm85
-rwxr-xr-xscripts/Route1.asm23
-rwxr-xr-xscripts/Route10.asm198
-rwxr-xr-xscripts/Route11.asm302
-rwxr-xr-xscripts/Route11Gate1F.asm9
-rwxr-xr-xscripts/Route11Gate2F.asm76
-rwxr-xr-xscripts/Route12.asm288
-rwxr-xr-xscripts/Route12Gate1F.asm9
-rwxr-xr-xscripts/Route12Gate2F.asm78
-rwxr-xr-xscripts/Route12SuperRodHouse.asm57
-rwxr-xr-xscripts/Route13.asm312
-rwxr-xr-xscripts/Route14.asm302
-rwxr-xr-xscripts/Route15.asm295
-rwxr-xr-xscripts/Route15Gate1F.asm9
-rwxr-xr-xscripts/Route15Gate2F.asm44
-rwxr-xr-xscripts/Route16.asm259
-rwxr-xr-xscripts/Route16FlyHouse.asm55
-rwxr-xr-xscripts/Route16Gate1F.asm121
-rwxr-xr-xscripts/Route16Gate2F.asm46
-rwxr-xr-xscripts/Route17.asm327
-rwxr-xr-xscripts/Route18.asm111
-rwxr-xr-xscripts/Route18Gate1F.asm112
-rwxr-xr-xscripts/Route18Gate2F.asm32
-rwxr-xr-xscripts/Route19.asm294
-rwxr-xr-xscripts/Route1_2.asm53
-rwxr-xr-xscripts/Route2.asm16
-rwxr-xr-xscripts/Route20.asm353
-rwxr-xr-xscripts/Route21.asm269
-rwxr-xr-xscripts/Route22.asm394
-rwxr-xr-xscripts/Route22Gate.asm96
-rwxr-xr-xscripts/Route22_2.asm (renamed from scripts/route22_2.asm)0
-rwxr-xr-xscripts/Route23.asm236
-rwxr-xr-xscripts/Route24.asm377
-rwxr-xr-xscripts/Route25.asm314
-rwxr-xr-xscripts/Route2Gate.asm39
-rwxr-xr-xscripts/Route2TradeHouse.asm17
-rwxr-xr-xscripts/Route3.asm251
-rwxr-xr-xscripts/Route4.asm62
-rwxr-xr-xscripts/Route5.asm9
-rwxr-xr-xscripts/Route5Gate.asm117
-rwxr-xr-xscripts/Route6.asm190
-rwxr-xr-xscripts/Route6Gate.asm70
-rwxr-xr-xscripts/Route7.asm10
-rwxr-xr-xscripts/Route7Gate.asm73
-rwxr-xr-xscripts/Route8.asm274
-rwxr-xr-xscripts/Route8Gate.asm70
-rwxr-xr-xscripts/Route9.asm268
-rwxr-xr-xscripts/SSAnne1F.asm15
-rwxr-xr-xscripts/SSAnne1FRooms.asm163
-rwxr-xr-xscripts/SSAnne2F.asm197
-rwxr-xr-xscripts/SSAnne2FRooms.asm192
-rwxr-xr-xscripts/SSAnne2FRooms_2.asm (renamed from scripts/ssanne9_2.asm)0
-rwxr-xr-xscripts/SSAnne3F.asm9
-rwxr-xr-xscripts/SSAnneB1F.asm5
-rwxr-xr-xscripts/SSAnneB1FRooms.asm201
-rwxr-xr-xscripts/SSAnneBow.asm88
-rwxr-xr-xscripts/SSAnneCaptainsRoom.asm91
-rwxr-xr-xscripts/SSAnneKitchen.asm72
-rwxr-xr-xscripts/SafariZoneCenter.asm15
-rwxr-xr-xscripts/SafariZoneCenterRestHouse.asm14
-rwxr-xr-xscripts/SafariZoneEast.asm23
-rwxr-xr-xscripts/SafariZoneEastRestHouse.asm20
-rwxr-xr-xscripts/SafariZoneGate.asm201
-rwxr-xr-xscripts/SafariZoneGate2.asm251
-rwxr-xr-xscripts/SafariZoneNorth.asm31
-rwxr-xr-xscripts/SafariZoneNorthRestHouse.asm20
-rwxr-xr-xscripts/SafariZoneSecretHouse.asm45
-rwxr-xr-xscripts/SafariZoneWest.asm28
-rwxr-xr-xscripts/SafariZoneWestRestHouse.asm20
-rwxr-xr-xscripts/SaffronCity.asm122
-rwxr-xr-xscripts/SaffronGym.asm358
-rwxr-xr-xscripts/SaffronMart.asm15
-rwxr-xr-xscripts/SaffronPidgeyHouse.asm27
-rwxr-xr-xscripts/SaffronPokecenter.asm29
-rwxr-xr-xscripts/SeafoamIslands1F.asm47
-rwxr-xr-xscripts/SeafoamIslandsB1F.asm46
-rwxr-xr-xscripts/SeafoamIslandsB2F.asm46
-rwxr-xr-xscripts/SeafoamIslandsB3F.asm149
-rwxr-xr-xscripts/SeafoamIslandsB4F.asm174
-rwxr-xr-xscripts/SilphCo10F.asm122
-rwxr-xr-xscripts/SilphCo11F.asm595
-rwxr-xr-xscripts/SilphCo11F_2.asm (renamed from scripts/silphco11_2.asm)0
-rwxr-xr-xscripts/SilphCo1F.asm16
-rwxr-xr-xscripts/SilphCo2F.asm245
-rwxr-xr-xscripts/SilphCo3F.asm136
-rwxr-xr-xscripts/SilphCo4F.asm199
-rwxr-xr-xscripts/SilphCo5F.asm221
-rwxr-xr-xscripts/SilphCo6F.asm220
-rwxr-xr-xscripts/SilphCo7F.asm513
-rwxr-xr-xscripts/SilphCo8F.asm183
-rwxr-xr-xscripts/SilphCo9F.asm244
-rwxr-xr-xscripts/SilphCoElevator.asm88
-rw-r--r--scripts/TradeCenter.asm38
-rwxr-xr-xscripts/UndergroundPathNorthSouth.asm5
-rwxr-xr-xscripts/UndergroundPathRoute5.asm18
-rwxr-xr-xscripts/UndergroundPathRoute6.asm11
-rwxr-xr-xscripts/UndergroundPathRoute7.asm11
-rwxr-xr-xscripts/UndergroundPathRoute7Copy.asm24
-rwxr-xr-xscripts/UndergroundPathRoute8.asm11
-rwxr-xr-xscripts/UndergroundPathWestEast.asm5
-rwxr-xr-xscripts/VermilionCity.asm286
-rwxr-xr-xscripts/VermilionCity2.asm (renamed from scripts/vermilioncity2.asm)0
-rwxr-xr-xscripts/VermilionDock.asm215
-rwxr-xr-xscripts/VermilionGym.asm267
-rwxr-xr-xscripts/VermilionMart.asm15
-rwxr-xr-xscripts/VermilionOldRodHouse.asm57
-rwxr-xr-xscripts/VermilionPidgeyHouse.asm24
-rwxr-xr-xscripts/VermilionPokecenter.asm29
-rwxr-xr-xscripts/VermilionTradeHouse.asm9
-rwxr-xr-xscripts/VictoryRoad1F.asm106
-rwxr-xr-xscripts/VictoryRoad2F.asm245
-rwxr-xr-xscripts/VictoryRoad3F.asm200
-rwxr-xr-xscripts/ViridianCity.asm363
-rwxr-xr-xscripts/ViridianCity2.asm215
-rwxr-xr-xscripts/ViridianForest.asm206
-rwxr-xr-xscripts/ViridianForest2.asm (renamed from scripts/viridianforest2.asm)0
-rwxr-xr-xscripts/ViridianForestNorthGate.asm14
-rwxr-xr-xscripts/ViridianForestSouthGate.asm15
-rwxr-xr-xscripts/ViridianGym.asm496
-rwxr-xr-xscripts/ViridianMart.asm106
-rwxr-xr-xscripts/ViridianNicknameHouse.asm33
-rwxr-xr-xscripts/ViridianPokecenter.asm29
-rwxr-xr-xscripts/ViridianSchoolHouse.asm22
-rwxr-xr-xscripts/ViridianSchoolHouse2.asm (renamed from scripts/school2.asm)0
-rwxr-xr-xscripts/WardensHouse.asm113
-rwxr-xr-xscripts/agatha.asm156
-rw-r--r--scripts/beach_house.asm191
-rwxr-xr-xscripts/beach_house2.asm33
-rwxr-xr-xscripts/bikeshop.asm151
-rwxr-xr-xscripts/billshouse.asm279
-rwxr-xr-xscripts/billshouse2.asm158
-rwxr-xr-xscripts/blueshouse.asm85
-rwxr-xr-xscripts/bruno.asm153
-rwxr-xr-xscripts/celadoncity.asm141
-rwxr-xr-xscripts/celadondiner.asm31
-rwxr-xr-xscripts/celadongamecorner.asm527
-rwxr-xr-xscripts/celadongym.asm336
-rwxr-xr-xscripts/celadonhotel.asm19
-rwxr-xr-xscripts/celadonhouse.asm20
-rwxr-xr-xscripts/celadonmansion1.asm48
-rwxr-xr-xscripts/celadonmansion1_2.asm78
-rwxr-xr-xscripts/celadonmansion2.asm10
-rwxr-xr-xscripts/celadonmansion3.asm176
-rwxr-xr-xscripts/celadonmansion4.asm10
-rwxr-xr-xscripts/celadonmansion5.asm22
-rwxr-xr-xscripts/celadonmart1.asm20
-rwxr-xr-xscripts/celadonmart2.asm21
-rwxr-xr-xscripts/celadonmart3.asm75
-rwxr-xr-xscripts/celadonmart3_2.asm38
-rwxr-xr-xscripts/celadonmart4.asm20
-rwxr-xr-xscripts/celadonmart5.asm22
-rwxr-xr-xscripts/celadonmartelevator.asm73
-rwxr-xr-xscripts/celadonmartroof.asm259
-rwxr-xr-xscripts/celadonpokecenter.asm29
-rwxr-xr-xscripts/celadonprizeroom.asm20
-rwxr-xr-xscripts/ceruleancity.asm433
-rwxr-xr-xscripts/ceruleangym.asm219
-rwxr-xr-xscripts/ceruleanhouse1.asm106
-rwxr-xr-xscripts/ceruleanhouse2.asm109
-rwxr-xr-xscripts/ceruleanhousetrashed.asm39
-rwxr-xr-xscripts/ceruleanmart.asm15
-rwxr-xr-xscripts/ceruleanpokecenter.asm29
-rwxr-xr-xscripts/cinnabargym.asm566
-rwxr-xr-xscripts/cinnabarisland.asm85
-rwxr-xr-xscripts/cinnabarmart.asm15
-rwxr-xr-xscripts/cinnabarpokecenter.asm29
-rw-r--r--scripts/colosseum.asm9
-rwxr-xr-xscripts/copycatshouse1f.asm22
-rwxr-xr-xscripts/copycatshouse2f.asm100
-rwxr-xr-xscripts/daycarem.asm298
-rwxr-xr-xscripts/diglettscave.asm5
-rwxr-xr-xscripts/diglettscaveroute11.asm12
-rwxr-xr-xscripts/diglettscaveroute2.asm11
-rwxr-xr-xscripts/fanclub.asm307
-rwxr-xr-xscripts/fightingdojo.asm324
-rwxr-xr-xscripts/fuchsiacity.asm169
-rwxr-xr-xscripts/fuchsiagym.asm330
-rwxr-xr-xscripts/fuchsiahouse1.asm20
-rwxr-xr-xscripts/fuchsiahouse2.asm112
-rwxr-xr-xscripts/fuchsiahouse3.asm75
-rwxr-xr-xscripts/fuchsiamart.asm16
-rwxr-xr-xscripts/fuchsiameetingroom.asm20
-rwxr-xr-xscripts/fuchsiapokecenter.asm29
-rwxr-xr-xscripts/gary.asm288
-rwxr-xr-xscripts/halloffameroom.asm109
-rwxr-xr-xscripts/indigoplateau.asm4
-rwxr-xr-xscripts/indigoplateaulobby.asm42
-rwxr-xr-xscripts/lab1.asm30
-rwxr-xr-xscripts/lab2.asm25
-rwxr-xr-xscripts/lab3.asm61
-rwxr-xr-xscripts/lab4.asm109
-rwxr-xr-xscripts/lance.asm162
-rwxr-xr-xscripts/lavenderhouse1.asm112
-rwxr-xr-xscripts/lavenderhouse2.asm35
-rwxr-xr-xscripts/lavendermart.asm32
-rwxr-xr-xscripts/lavenderpokecenter.asm29
-rwxr-xr-xscripts/lavendertown.asm63
-rwxr-xr-xscripts/lorelei.asm154
-rwxr-xr-xscripts/mansion1.asm135
-rwxr-xr-xscripts/mansion2.asm141
-rwxr-xr-xscripts/mansion3.asm152
-rwxr-xr-xscripts/mansion4.asm131
-rwxr-xr-xscripts/mtmoon1.asm220
-rwxr-xr-xscripts/mtmoon2.asm10
-rwxr-xr-xscripts/mtmoon3.asm674
-rwxr-xr-xscripts/mtmoonpokecenter.asm40
-rwxr-xr-xscripts/museum1f.asm65
-rwxr-xr-xscripts/museum1f2.asm211
-rwxr-xr-xscripts/museum2f.asm71
-rwxr-xr-xscripts/namerater.asm107
-rwxr-xr-xscripts/oakslab.asm1160
-rwxr-xr-xscripts/pallettown.asm302
-rwxr-xr-xscripts/pewtercity.asm324
-rwxr-xr-xscripts/pewtergym.asm243
-rwxr-xr-xscripts/pewterhouse1.asm24
-rwxr-xr-xscripts/pewterhouse2.asm14
-rwxr-xr-xscripts/pewtermart.asm30
-rwxr-xr-xscripts/pewterpokecenter.asm39
-rwxr-xr-xscripts/pewterpokecenter2.asm72
-rwxr-xr-xscripts/pokemontower1.asm30
-rwxr-xr-xscripts/pokemontower2.asm172
-rwxr-xr-xscripts/pokemontower3.asm102
-rwxr-xr-xscripts/pokemontower4.asm105
-rwxr-xr-xscripts/pokemontower5.asm177
-rwxr-xr-xscripts/pokemontower6.asm213
-rwxr-xr-xscripts/pokemontower7.asm315
-rwxr-xr-xscripts/powerplant.asm176
-rwxr-xr-xscripts/redshouse1f.asm17
-rwxr-xr-xscripts/redshouse2f.asm23
-rwxr-xr-xscripts/rockethideout1.asm189
-rwxr-xr-xscripts/rockethideout2.asm451
-rwxr-xr-xscripts/rockethideout3.asm207
-rwxr-xr-xscripts/rockethideout4.asm416
-rwxr-xr-xscripts/rockethideoutelevator.asm84
-rwxr-xr-xscripts/rocktunnel1.asm214
-rwxr-xr-xscripts/rocktunnel2.asm242
-rwxr-xr-xscripts/rocktunnelpokecenter.asm29
-rwxr-xr-xscripts/route1.asm23
-rwxr-xr-xscripts/route10.asm199
-rwxr-xr-xscripts/route11.asm303
-rwxr-xr-xscripts/route11gate.asm9
-rwxr-xr-xscripts/route11gateupstairs.asm76
-rwxr-xr-xscripts/route12.asm289
-rwxr-xr-xscripts/route12gate.asm9
-rwxr-xr-xscripts/route12gateupstairs.asm77
-rwxr-xr-xscripts/route12house.asm57
-rwxr-xr-xscripts/route13.asm313
-rwxr-xr-xscripts/route14.asm303
-rwxr-xr-xscripts/route15.asm296
-rwxr-xr-xscripts/route15gate.asm9
-rwxr-xr-xscripts/route15gateupstairs.asm44
-rwxr-xr-xscripts/route16.asm260
-rwxr-xr-xscripts/route16gate.asm121
-rwxr-xr-xscripts/route16gateupstairs.asm46
-rwxr-xr-xscripts/route16house.asm54
-rwxr-xr-xscripts/route17.asm328
-rwxr-xr-xscripts/route18.asm112
-rwxr-xr-xscripts/route18gate.asm112
-rwxr-xr-xscripts/route18gateupstairs.asm32
-rwxr-xr-xscripts/route19.asm295
-rwxr-xr-xscripts/route1_2.asm53
-rwxr-xr-xscripts/route2.asm16
-rwxr-xr-xscripts/route20.asm354
-rwxr-xr-xscripts/route21.asm270
-rwxr-xr-xscripts/route22.asm394
-rwxr-xr-xscripts/route22gate.asm96
-rwxr-xr-xscripts/route23.asm236
-rwxr-xr-xscripts/route24.asm378
-rwxr-xr-xscripts/route25.asm315
-rwxr-xr-xscripts/route2gate.asm39
-rwxr-xr-xscripts/route2house.asm17
-rwxr-xr-xscripts/route3.asm252
-rwxr-xr-xscripts/route4.asm63
-rwxr-xr-xscripts/route5.asm9
-rwxr-xr-xscripts/route5gate.asm117
-rwxr-xr-xscripts/route6.asm191
-rwxr-xr-xscripts/route6gate.asm70
-rwxr-xr-xscripts/route7.asm10
-rwxr-xr-xscripts/route7gate.asm73
-rwxr-xr-xscripts/route8.asm275
-rwxr-xr-xscripts/route8gate.asm70
-rwxr-xr-xscripts/route9.asm269
-rwxr-xr-xscripts/safarizonecenter.asm15
-rwxr-xr-xscripts/safarizoneeast.asm23
-rwxr-xr-xscripts/safarizoneentrance.asm201
-rwxr-xr-xscripts/safarizoneentrance2.asm251
-rwxr-xr-xscripts/safarizonenorth.asm31
-rwxr-xr-xscripts/safarizoneresthouse1.asm14
-rwxr-xr-xscripts/safarizoneresthouse2.asm20
-rwxr-xr-xscripts/safarizoneresthouse3.asm20
-rwxr-xr-xscripts/safarizoneresthouse4.asm20
-rwxr-xr-xscripts/safarizonesecrethouse.asm44
-rwxr-xr-xscripts/safarizonewest.asm28
-rwxr-xr-xscripts/saffroncity.asm121
-rwxr-xr-xscripts/saffrongym.asm359
-rwxr-xr-xscripts/saffronhouse1.asm27
-rwxr-xr-xscripts/saffronhouse2.asm44
-rwxr-xr-xscripts/saffronmart.asm15
-rwxr-xr-xscripts/saffronpokecenter.asm29
-rwxr-xr-xscripts/school.asm22
-rwxr-xr-xscripts/seafoamislands1.asm47
-rwxr-xr-xscripts/seafoamislands2.asm46
-rwxr-xr-xscripts/seafoamislands3.asm46
-rwxr-xr-xscripts/seafoamislands4.asm149
-rwxr-xr-xscripts/seafoamislands5.asm174
-rwxr-xr-xscripts/silphco1.asm16
-rwxr-xr-xscripts/silphco10.asm123
-rwxr-xr-xscripts/silphco11.asm596
-rwxr-xr-xscripts/silphco2.asm245
-rwxr-xr-xscripts/silphco3.asm137
-rwxr-xr-xscripts/silphco4.asm200
-rwxr-xr-xscripts/silphco5.asm222
-rwxr-xr-xscripts/silphco6.asm221
-rwxr-xr-xscripts/silphco7.asm514
-rwxr-xr-xscripts/silphco8.asm184
-rwxr-xr-xscripts/silphco9.asm245
-rwxr-xr-xscripts/silphcoelevator.asm88
-rwxr-xr-xscripts/ssanne1.asm15
-rwxr-xr-xscripts/ssanne10.asm202
-rwxr-xr-xscripts/ssanne2.asm197
-rwxr-xr-xscripts/ssanne3.asm9
-rwxr-xr-xscripts/ssanne4.asm5
-rwxr-xr-xscripts/ssanne5.asm89
-rwxr-xr-xscripts/ssanne6.asm72
-rwxr-xr-xscripts/ssanne7.asm90
-rwxr-xr-xscripts/ssanne8.asm164
-rwxr-xr-xscripts/ssanne9.asm193
-rw-r--r--scripts/tradecenter.asm38
-rwxr-xr-xscripts/undergroundpathentranceroute5.asm18
-rwxr-xr-xscripts/undergroundpathentranceroute6.asm11
-rwxr-xr-xscripts/undergroundpathentranceroute7.asm11
-rwxr-xr-xscripts/undergroundpathentranceroute7copy.asm24
-rwxr-xr-xscripts/undergroundpathentranceroute8.asm11
-rwxr-xr-xscripts/undergroundpathns.asm5
-rwxr-xr-xscripts/undergroundpathwe.asm5
-rwxr-xr-xscripts/unknowndungeon1.asm8
-rwxr-xr-xscripts/unknowndungeon2.asm8
-rwxr-xr-xscripts/unknowndungeon3.asm46
-rwxr-xr-xscripts/vermilioncity.asm286
-rwxr-xr-xscripts/vermiliondock.asm215
-rwxr-xr-xscripts/vermiliongym.asm273
-rwxr-xr-xscripts/vermilionhouse1.asm24
-rwxr-xr-xscripts/vermilionhouse2.asm57
-rwxr-xr-xscripts/vermilionhouse3.asm9
-rwxr-xr-xscripts/vermilionmart.asm15
-rwxr-xr-xscripts/vermilionpokecenter.asm29
-rwxr-xr-xscripts/victoryroad1.asm107
-rwxr-xr-xscripts/victoryroad2.asm246
-rwxr-xr-xscripts/victoryroad3.asm201
-rwxr-xr-xscripts/viridiancity.asm364
-rwxr-xr-xscripts/viridiancity2.asm218
-rwxr-xr-xscripts/viridianforest.asm207
-rwxr-xr-xscripts/viridianforestentrance.asm15
-rwxr-xr-xscripts/viridianforestexit.asm14
-rwxr-xr-xscripts/viridiangym.asm495
-rwxr-xr-xscripts/viridianhouse.asm33
-rwxr-xr-xscripts/viridianmart.asm105
-rwxr-xr-xscripts/viridianpokecenter.asm29
-rw-r--r--sram.asm8
-rw-r--r--text.asm429
-rw-r--r--text/maps/AgathasRoom.asm44
-rw-r--r--text/maps/BeachHouse.asm (renamed from text/maps/beach_house.asm)0
-rw-r--r--text/maps/BikeShop.asm (renamed from text/maps/bike_shop.asm)0
-rw-r--r--text/maps/BillsHouse.asm92
-rw-r--r--text/maps/BluesHouse.asm41
-rw-r--r--text/maps/BrunosRoom.asm37
-rw-r--r--text/maps/CeladonChiefHouse.asm (renamed from text/maps/celadon_house.asm)0
-rw-r--r--text/maps/CeladonCity.asm152
-rw-r--r--text/maps/CeladonDiner.asm59
-rw-r--r--text/maps/CeladonGym.asm219
-rw-r--r--text/maps/CeladonHotel.asm (renamed from text/maps/celadon_hotel.asm)0
-rw-r--r--text/maps/CeladonMansion1F.asm (renamed from text/maps/celadon_mansion_1f.asm)0
-rw-r--r--text/maps/CeladonMansion2F.asm (renamed from text/maps/celadon_mansion_2f.asm)0
-rw-r--r--text/maps/CeladonMansion3F.asm (renamed from text/maps/celadon_mansion_3f.asm)0
-rw-r--r--text/maps/CeladonMansionRoof.asm (renamed from text/maps/celadon_mansion_4f_outside.asm)0
-rw-r--r--text/maps/CeladonMansionRoofHouse.asm (renamed from text/maps/celadon_mansion_4f_inside.asm)0
-rw-r--r--text/maps/CeladonMart1F.asm (renamed from text/maps/celadon_dept_store_1f.asm)0
-rw-r--r--text/maps/CeladonMart2F.asm (renamed from text/maps/celadon_dept_store_2f.asm)0
-rw-r--r--text/maps/CeladonMart3F.asm (renamed from text/maps/celadon_dept_store_3f.asm)0
-rw-r--r--text/maps/CeladonMart4F.asm (renamed from text/maps/celadon_dept_store_4f.asm)0
-rw-r--r--text/maps/CeladonMart5F.asm (renamed from text/maps/celadon_dept_store_5f.asm)0
-rw-r--r--text/maps/CeladonMartRoof.asm138
-rw-r--r--text/maps/CeladonPokecenter.asm (renamed from text/maps/celadon_pokecenter.asm)0
-rw-r--r--text/maps/CeruleanBadgeHouse.asm (renamed from text/maps/cerulean_badge_house_1.asm)0
-rwxr-xr-xtext/maps/CeruleanBadgeHouse_2.asm (renamed from text/maps/cerulean_badge_house_2.asm)0
-rw-r--r--text/maps/CeruleanCaveB1F.asm (renamed from text/maps/unknown_dungeon_b1f.asm)0
-rw-r--r--text/maps/CeruleanCity.asm233
-rw-r--r--text/maps/CeruleanGym.asm134
-rw-r--r--text/maps/CeruleanMart.asm (renamed from text/maps/cerulean_mart.asm)0
-rw-r--r--text/maps/CeruleanPokecenter.asm (renamed from text/maps/cerulean_pokecenter.asm)0
-rw-r--r--text/maps/CeruleanTradeHouse.asm (renamed from text/maps/cerulean_trade_house.asm)0
-rw-r--r--text/maps/CeruleanTrashedHouse.asm (renamed from text/maps/cerulean_trashed_house.asm)0
-rw-r--r--text/maps/ChampionsRoom.asm146
-rw-r--r--text/maps/CinnabarGym.asm253
-rw-r--r--text/maps/CinnabarIsland.asm (renamed from text/maps/cinnabar_island.asm)0
-rw-r--r--text/maps/CinnabarLab.asm (renamed from text/maps/cinnabar_lab.asm)0
-rw-r--r--text/maps/CinnabarLabFossilRoom.asm78
-rw-r--r--text/maps/CinnabarLabMetronomeRoom.asm63
-rw-r--r--text/maps/CinnabarLabTradeRoom.asm (renamed from text/maps/cinnabar_lab_trade_room.asm)0
-rw-r--r--text/maps/CinnabarMart.asm (renamed from text/maps/cinnabar_mart.asm)0
-rw-r--r--text/maps/CinnabarPokecenter.asm (renamed from text/maps/cinnabar_pokecenter.asm)0
-rw-r--r--text/maps/CopycatsHouse1F.asm (renamed from text/maps/copycats_house_1f.asm)0
-rw-r--r--text/maps/CopycatsHouse2F.asm97
-rw-r--r--text/maps/Daycare.asm96
-rw-r--r--text/maps/DiglettsCaveRoute11.asm (renamed from text/maps/digletts_cave_route_11_entrance.asm)0
-rw-r--r--text/maps/DiglettsCaveRoute2.asm (renamed from text/maps/digletts_cave_route_2_entrance.asm)0
-rw-r--r--text/maps/FightingDojo.asm (renamed from text/maps/fighting_dojo.asm)0
-rw-r--r--text/maps/FuchsiaBillsGrandpasHouse.asm (renamed from text/maps/fuchsia_house.asm)0
-rw-r--r--text/maps/FuchsiaCity.asm (renamed from text/maps/fuchsia_city.asm)0
-rw-r--r--text/maps/FuchsiaGoodRodHouse.asm43
-rw-r--r--text/maps/FuchsiaGym.asm220
-rw-r--r--text/maps/FuchsiaMart.asm (renamed from text/maps/fuchsia_mart.asm)0
-rw-r--r--text/maps/FuchsiaMeetingRoom.asm (renamed from text/maps/fuchsia_meeting_room.asm)0
-rw-r--r--text/maps/FuchsiaPokecenter.asm (renamed from text/maps/fuchsia_pokecenter.asm)0
-rw-r--r--text/maps/GameCorner.asm181
-rw-r--r--text/maps/GameCornerPrizeRoom.asm (renamed from text/maps/celadon_prize_room.asm)0
-rwxr-xr-xtext/maps/GameCorner_2.asm (renamed from text/maps/celadon_game_corner_2.asm)0
-rw-r--r--text/maps/HallOfFame.asm (renamed from text/maps/hall_of_fame.asm)0
-rw-r--r--text/maps/IndigoPlateauLobby.asm (renamed from text/maps/indigo_plateau_lobby.asm)0
-rw-r--r--text/maps/LancesRoom.asm63
-rw-r--r--text/maps/LavenderCuboneHouse.asm (renamed from text/maps/lavender_house.asm)0
-rw-r--r--text/maps/LavenderMart.asm (renamed from text/maps/lavender_mart.asm)0
-rw-r--r--text/maps/LavenderPokecenter.asm (renamed from text/maps/lavender_pokecenter.asm)0
-rw-r--r--text/maps/LavenderTown.asm (renamed from text/maps/lavender_town.asm)0
-rw-r--r--text/maps/LoreleisRoom.asm (renamed from text/maps/lorelei.asm)0
-rw-r--r--text/maps/MrFujisHouse.asm86
-rw-r--r--text/maps/MrPsychicsHouse.asm25
-rw-r--r--text/maps/MtMoon1F.asm (renamed from text/maps/mt_moon_1f.asm)0
-rw-r--r--text/maps/MtMoonB1F.asm3
-rw-r--r--text/maps/MtMoonB2F.asm125
-rw-r--r--text/maps/MtMoonPokecenter.asm48
-rw-r--r--text/maps/Museum1F.asm (renamed from text/maps/museum_1f.asm)0
-rw-r--r--text/maps/Museum2F.asm (renamed from text/maps/museum_2f.asm)0
-rw-r--r--text/maps/NameRatersHouse.asm (renamed from text/maps/name_rater.asm)0
-rw-r--r--text/maps/OaksLab.asm (renamed from text/maps/oaks_lab.asm)0
-rw-r--r--text/maps/PalletTown.asm67
-rw-r--r--text/maps/PewterCity.asm117
-rw-r--r--text/maps/PewterGym.asm184
-rw-r--r--text/maps/PewterMart.asm (renamed from text/maps/pewter_mart.asm)0
-rw-r--r--text/maps/PewterNidoranHouse.asm (renamed from text/maps/pewter_house_1.asm)0
-rw-r--r--text/maps/PewterPokecenter.asm (renamed from text/maps/pewter_pokecenter.asm)0
-rw-r--r--text/maps/PewterSpeechHouse.asm (renamed from text/maps/pewter_house_2.asm)0
-rw-r--r--text/maps/PokemonFanClub.asm (renamed from text/maps/fan_club.asm)0
-rw-r--r--text/maps/PokemonMansion1F.asm (renamed from text/maps/mansion_1f.asm)0
-rw-r--r--text/maps/PokemonMansion2F.asm (renamed from text/maps/mansion_2f.asm)0
-rw-r--r--text/maps/PokemonMansion3F.asm (renamed from text/maps/mansion_3f.asm)0
-rw-r--r--text/maps/PokemonMansionB1F.asm (renamed from text/maps/mansion_b1f.asm)0
-rw-r--r--text/maps/PokemonTower1F.asm (renamed from text/maps/pokemon_tower_1f.asm)0
-rw-r--r--text/maps/PokemonTower2F.asm57
-rw-r--r--text/maps/PokemonTower3F.asm (renamed from text/maps/pokemon_tower_3f.asm)0
-rw-r--r--text/maps/PokemonTower4F.asm (renamed from text/maps/pokemon_tower_4f.asm)0
-rw-r--r--text/maps/PokemonTower5F.asm71
-rw-r--r--text/maps/PokemonTower6F.asm (renamed from text/maps/pokemon_tower_6f.asm)0
-rw-r--r--text/maps/PokemonTower7F.asm (renamed from text/maps/pokemon_tower_7f.asm)0
-rw-r--r--text/maps/PowerPlant.asm (renamed from text/maps/power_plant.asm)0
-rw-r--r--text/maps/RedsHouse1F.asm (renamed from text/maps/reds_house_1f.asm)0
-rw-r--r--text/maps/RockTunnel1F.asm (renamed from text/maps/rock_tunnel_b1f.asm)0
-rw-r--r--text/maps/RockTunnelB1F.asm (renamed from text/maps/rock_tunnel_b2f.asm)0
-rw-r--r--text/maps/RockTunnelPokecenter.asm (renamed from text/maps/rock_tunnel_pokecenter.asm)0
-rw-r--r--text/maps/RocketHideoutB1F.asm (renamed from text/maps/rocket_hideout_b1f.asm)0
-rw-r--r--text/maps/RocketHideoutB2F.asm (renamed from text/maps/rocket_hideout_b2f.asm)0
-rw-r--r--text/maps/RocketHideoutB3F.asm (renamed from text/maps/rocket_hideout_b3f.asm)0
-rw-r--r--text/maps/RocketHideoutB4F.asm (renamed from text/maps/rocket_hideout_b4f.asm)0
-rw-r--r--text/maps/RocketHideoutElevator.asm (renamed from text/maps/rocket_hideout_elevator.asm)0
-rw-r--r--text/maps/Route1.asm49
-rw-r--r--text/maps/Route10.asm (renamed from text/maps/route_10.asm)0
-rw-r--r--text/maps/Route11.asm (renamed from text/maps/route_11.asm)0
-rw-r--r--text/maps/Route11Gate1F.asm (renamed from text/maps/route_11_gate.asm)0
-rw-r--r--text/maps/Route11Gate2F.asm (renamed from text/maps/route_11_gate_upstairs.asm)0
-rw-r--r--text/maps/Route12.asm (renamed from text/maps/route_12.asm)0
-rw-r--r--text/maps/Route12Gate1F.asm (renamed from text/maps/route_12_gate.asm)0
-rw-r--r--text/maps/Route12Gate2F.asm42
-rw-r--r--text/maps/Route12SuperRodHouse.asm61
-rw-r--r--text/maps/Route13.asm (renamed from text/maps/route_13.asm)0
-rw-r--r--text/maps/Route14.asm (renamed from text/maps/route_14.asm)0
-rw-r--r--text/maps/Route15.asm (renamed from text/maps/route_15.asm)0
-rw-r--r--text/maps/Route15Gate1F.asm (renamed from text/maps/route_15_gate.asm)0
-rw-r--r--text/maps/Route15Gate2F.asm (renamed from text/maps/route_15_gate_upstairs.asm)0
-rw-r--r--text/maps/Route16.asm (renamed from text/maps/route_16.asm)0
-rw-r--r--text/maps/Route16FlyHouse.asm31
-rw-r--r--text/maps/Route16Gate1F.asm (renamed from text/maps/route_16_gate.asm)0
-rw-r--r--text/maps/Route16Gate2F.asm (renamed from text/maps/route_16_gate_upstairs.asm)0
-rw-r--r--text/maps/Route17.asm (renamed from text/maps/route_17.asm)0
-rw-r--r--text/maps/Route18.asm (renamed from text/maps/route_18.asm)0
-rw-r--r--text/maps/Route18Gate1F.asm (renamed from text/maps/route_18_gate.asm)0
-rw-r--r--text/maps/Route18Gate2F.asm (renamed from text/maps/route_18_gate_upstairs.asm)0
-rw-r--r--text/maps/Route19.asm (renamed from text/maps/route_19.asm)0
-rw-r--r--text/maps/Route2.asm (renamed from text/maps/route_2.asm)0
-rw-r--r--text/maps/Route20.asm (renamed from text/maps/route_20.asm)0
-rw-r--r--text/maps/Route21.asm (renamed from text/maps/route_21.asm)0
-rw-r--r--text/maps/Route22.asm104
-rw-r--r--text/maps/Route22Gate.asm20
-rw-r--r--text/maps/Route23.asm39
-rw-r--r--text/maps/Route24.asm184
-rw-r--r--text/maps/Route25.asm (renamed from text/maps/route_25.asm)0
-rw-r--r--text/maps/Route2Gate.asm (renamed from text/maps/route_2_gate.asm)0
-rw-r--r--text/maps/Route2TradeHouse.asm (renamed from text/maps/route_2_house.asm)0
-rw-r--r--text/maps/Route3.asm (renamed from text/maps/route_3.asm)0
-rw-r--r--text/maps/Route4.asm (renamed from text/maps/route_4.asm)0
-rw-r--r--text/maps/Route5.asm (renamed from text/maps/route_5.asm)0
-rw-r--r--text/maps/Route6.asm (renamed from text/maps/route_6.asm)0
-rw-r--r--text/maps/Route7.asm (renamed from text/maps/route_7.asm)0
-rw-r--r--text/maps/Route8.asm (renamed from text/maps/route_8.asm)0
-rw-r--r--text/maps/Route9.asm (renamed from text/maps/route_9_1.asm)0
-rwxr-xr-xtext/maps/Route9_2.asm (renamed from text/maps/route_9_2.asm)0
-rw-r--r--text/maps/SSAnne1F.asm (renamed from text/maps/ss_anne_1.asm)0
-rw-r--r--text/maps/SSAnne1FRooms.asm (renamed from text/maps/ss_anne_8.asm)0
-rw-r--r--text/maps/SSAnne2F.asm63
-rw-r--r--text/maps/SSAnne2FRooms.asm (renamed from text/maps/ss_anne_9.asm)0
-rw-r--r--text/maps/SSAnne3F.asm (renamed from text/maps/ss_anne_3.asm)0
-rw-r--r--text/maps/SSAnneB1FRooms.asm (renamed from text/maps/ss_anne_10.asm)0
-rw-r--r--text/maps/SSAnneBow.asm (renamed from text/maps/ss_anne_5.asm)0
-rw-r--r--text/maps/SSAnneCaptainsRoom.asm62
-rw-r--r--text/maps/SSAnneKitchen.asm (renamed from text/maps/ss_anne_6.asm)0
-rw-r--r--text/maps/SafariZoneCenter.asm (renamed from text/maps/safari_zone_center.asm)0
-rw-r--r--text/maps/SafariZoneCenterRestHouse.asm (renamed from text/maps/safari_zone_rest_house_1.asm)0
-rw-r--r--text/maps/SafariZoneEast.asm (renamed from text/maps/safari_zone_east.asm)0
-rw-r--r--text/maps/SafariZoneEastRestHouse.asm (renamed from text/maps/safari_zone_rest_house_3.asm)0
-rw-r--r--text/maps/SafariZoneGate.asm143
-rw-r--r--text/maps/SafariZoneNorth.asm (renamed from text/maps/safari_zone_north.asm)0
-rw-r--r--text/maps/SafariZoneNorthRestHouse.asm (renamed from text/maps/safari_zone_rest_house_4.asm)0
-rw-r--r--text/maps/SafariZoneSecretHouse.asm44
-rw-r--r--text/maps/SafariZoneWest.asm (renamed from text/maps/safari_zone_west.asm)0
-rw-r--r--text/maps/SafariZoneWestRestHouse.asm (renamed from text/maps/safari_zone_rest_house_2.asm)0
-rw-r--r--text/maps/SaffronCity.asm (renamed from text/maps/saffron_city.asm)0
-rw-r--r--text/maps/SaffronGates.asm37
-rw-r--r--text/maps/SaffronGym.asm236
-rw-r--r--text/maps/SaffronMart.asm (renamed from text/maps/saffron_mart.asm)0
-rw-r--r--text/maps/SaffronPidgeyHouse.asm (renamed from text/maps/saffron_house.asm)0
-rw-r--r--text/maps/SaffronPokecenter.asm (renamed from text/maps/saffron_pokecenter.asm)0
-rw-r--r--text/maps/SeafoamIslandsB4F.asm (renamed from text/maps/seafoam_islands_b4f.asm)0
-rw-r--r--text/maps/SilphCo10F.asm (renamed from text/maps/silph_co_10f.asm)0
-rw-r--r--text/maps/SilphCo11F.asm114
-rw-r--r--text/maps/SilphCo1F.asm (renamed from text/maps/silph_co_1f.asm)0
-rw-r--r--text/maps/SilphCo2F.asm96
-rw-r--r--text/maps/SilphCo3F.asm46
-rw-r--r--text/maps/SilphCo4F.asm (renamed from text/maps/silph_co_4f.asm)0
-rw-r--r--text/maps/SilphCo5F.asm (renamed from text/maps/silph_co_5f.asm)0
-rw-r--r--text/maps/SilphCo6F.asm (renamed from text/maps/silph_co_6f.asm)0
-rw-r--r--text/maps/SilphCo7F.asm209
-rw-r--r--text/maps/SilphCo8F.asm (renamed from text/maps/silph_co_8f.asm)0
-rw-r--r--text/maps/SilphCo9F.asm (renamed from text/maps/silph_co_9f.asm)0
-rw-r--r--text/maps/UndergroundPathRoute6.asm (renamed from text/maps/underground_path_route_6_entrance.asm)0
-rw-r--r--text/maps/UndergroundPathRoute7.asm (renamed from text/maps/underground_path_route_7_entrance.asm)0
-rw-r--r--text/maps/UndergroundPathRoute7Copy.asm (renamed from text/maps/underground_path_route_7_entrance_unused.asm)0
-rw-r--r--text/maps/UndergroundPathRoute8.asm (renamed from text/maps/underground_path_route_8_entrance.asm)0
-rw-r--r--text/maps/VermilionCity.asm (renamed from text/maps/vermilion_city.asm)0
-rw-r--r--text/maps/VermilionDock.asm (renamed from text/maps/vermilion_dock.asm)0
-rw-r--r--text/maps/VermilionGym.asm166
-rw-r--r--text/maps/VermilionMart.asm (renamed from text/maps/vermilion_mart.asm)0
-rw-r--r--text/maps/VermilionOldRodHouse.asm54
-rw-r--r--text/maps/VermilionPidgeyHouse.asm (renamed from text/maps/vermilion_house.asm)0
-rw-r--r--text/maps/VermilionPokecenter.asm (renamed from text/maps/vermilion_pokecenter.asm)0
-rw-r--r--text/maps/VictoryRoad1F.asm (renamed from text/maps/victory_road_1f.asm)0
-rw-r--r--text/maps/VictoryRoad2F.asm85
-rw-r--r--text/maps/VictoryRoad3F.asm (renamed from text/maps/victory_road_3f.asm)0
-rw-r--r--text/maps/ViridianCity.asm194
-rw-r--r--text/maps/ViridianForest.asm (renamed from text/maps/viridian_forest.asm)0
-rw-r--r--text/maps/ViridianForestNorthGate.asm (renamed from text/maps/viridian_forest_exit.asm)0
-rw-r--r--text/maps/ViridianForestSouthGate.asm (renamed from text/maps/viridian_forest_entrance.asm)0
-rw-r--r--text/maps/ViridianGym.asm237
-rw-r--r--text/maps/ViridianMart.asm32
-rw-r--r--text/maps/ViridianNicknameHouse.asm (renamed from text/maps/viridian_house.asm)0
-rwxr-xr-xtext/maps/ViridianPokecenter.asm (renamed from text/maps/viridian_pokecenter.asm)0
-rw-r--r--text/maps/ViridianSchoolHouse.asm (renamed from text/maps/school.asm)0
-rw-r--r--text/maps/WardensHouse.asm84
-rw-r--r--text/maps/agatha.asm44
-rw-r--r--text/maps/bills_house.asm92
-rw-r--r--text/maps/blues_house.asm41
-rw-r--r--text/maps/bruno.asm37
-rw-r--r--text/maps/celadon_city.asm152
-rw-r--r--text/maps/celadon_dept_store_roof.asm135
-rw-r--r--text/maps/celadon_diner.asm59
-rw-r--r--text/maps/celadon_game_corner_1.asm181
-rw-r--r--text/maps/celadon_gym.asm218
-rw-r--r--text/maps/cerulean_city.asm232
-rw-r--r--text/maps/cerulean_gym.asm134
-rw-r--r--text/maps/champion.asm146
-rw-r--r--text/maps/cinnabar_gym.asm252
-rw-r--r--text/maps/cinnabar_lab_fossil_room.asm78
-rw-r--r--text/maps/cinnabar_lab_metronome_room.asm63
-rw-r--r--text/maps/copycats_house_2f.asm96
-rw-r--r--text/maps/daycare.asm92
-rw-r--r--text/maps/fuchsia_fishing_house.asm43
-rw-r--r--text/maps/fuchsia_gym.asm214
-rw-r--r--text/maps/fujis_house.asm85
-rw-r--r--text/maps/lance.asm63
-rw-r--r--text/maps/mr_psychics_house.asm25
-rw-r--r--text/maps/mt_moon_b1f.asm3
-rw-r--r--text/maps/mt_moon_b2f.asm125
-rw-r--r--text/maps/mt_moon_pokecenter.asm48
-rw-r--r--text/maps/pallet_town.asm67
-rw-r--r--text/maps/pewter_city.asm117
-rw-r--r--text/maps/pewter_gym.asm182
-rw-r--r--text/maps/pokemon_league_gate.asm19
-rw-r--r--text/maps/pokemon_tower_2f.asm57
-rw-r--r--text/maps/pokemon_tower_5f.asm71
-rw-r--r--text/maps/route_1.asm49
-rw-r--r--text/maps/route_12_gate_upstairs.asm42
-rw-r--r--text/maps/route_12_house.asm60
-rw-r--r--text/maps/route_16_house.asm31
-rw-r--r--text/maps/route_22.asm104
-rw-r--r--text/maps/route_23.asm38
-rw-r--r--text/maps/route_24.asm183
-rw-r--r--text/maps/safari_zone_entrance.asm140
-rw-r--r--text/maps/safari_zone_secret_house.asm44
-rw-r--r--text/maps/saffron_gates.asm36
-rw-r--r--text/maps/saffron_gym.asm235
-rw-r--r--text/maps/silph_co_11f.asm114
-rw-r--r--text/maps/silph_co_2f.asm96
-rw-r--r--text/maps/silph_co_3f.asm46
-rw-r--r--text/maps/silph_co_7f.asm209
-rw-r--r--text/maps/ss_anne_2.asm63
-rw-r--r--text/maps/ss_anne_7.asm62
-rw-r--r--text/maps/vermilion_fishing_house.asm53
-rw-r--r--text/maps/vermilion_gym.asm165
-rw-r--r--text/maps/victory_road_2f.asm85
-rw-r--r--text/maps/viridian_city.asm194
-rw-r--r--text/maps/viridian_gym.asm236
-rw-r--r--text/maps/viridian_mart.asm32
-rw-r--r--text/maps/wardens_house.asm83
-rw-r--r--text/oakspeech.asm2
-rwxr-xr-xwram.asm165
2588 files changed, 79461 insertions, 79319 deletions
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 00000000..d3cce374
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,24 @@
+language: c
+install:
+ - |-
+ path="$(pwd)"; cd;
+ wget https://github.com/rednex/rgbds/archive/v0.3.3.tar.gz -O rgbds.tar.gz &&
+ tar xf rgbds.tar.gz &&
+ cd rgbds-0.3.3 &&
+ sudo make install &&
+ cd - &&
+ rm -rf rgbds &&
+ cd "$path"
+before_script:
+ - |-
+ function check_status() {
+ if ! git diff-index --quiet --ignore-submodules=all HEAD --; then
+ echo 'Uncommitted changes detected:';
+ git diff-index HEAD --;
+ return 1;
+ fi;
+ }
+script:
+ - make -j2
+ - make compare
+ - check_status
diff --git a/INSTALL.md b/INSTALL.md
index dc56207b..00cfd03c 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -1,13 +1,15 @@
# Linux
- sudo apt-get install make gcc bison git python
+ sudo apt-get install make git gcc
- git clone https://github.com/bentley/rgbds
- sudo make -C rgbds install
+ sudo apt-get install byacc flex pkg-config libpng-dev
+ git clone https://github.com/rednex/rgbds
+ cd rgbds
+ sudo make install
+ cd ..
git clone https://github.com/pret/pokeyellow
cd pokeyellow
- git submodule update --init
To build **pokeyellow.gbc**:
@@ -16,37 +18,38 @@ To build **pokeyellow.gbc**:
# Mac
-In **Terminal**, run:
+Get [**Homebrew**](http://brew.sh/).
- xcode-select --install
+Then in **Terminal**, run:
- git clone https://github.com/bentley/rgbds
- sudo make -C rgbds install
+ xcode-select --install
+ brew install rgbds
git clone https://github.com/pret/pokeyellow
cd pokeyellow
- git submodule update --init
-Then run (in the shell):
+To build **pokeyellow.gbc**:
make
# Windows
-To build on Windows, use [**Cygwin**](http://cygwin.com/install.html). Use the default settings in the installer.
+Download [**Cygwin**](http://cygwin.com/install.html): **setup-x86_64.exe** for 64-bit Windows, **setup-x86.exe** for 32-bit.
-In the installer, select the following packages: `make` `git` `python` `gettext`
+Run setup and leave the default settings. At "Select Packages", choose to install the following:
-Then get the most recent version of [**rgbds**](https://github.com/rednex/rgbds/releases/).
-Extract the archive and put `rgbasm.exe`, `rgblink.exe` and `rgbfix.exe` in `C:\cygwin\usr\local\bin`.
+- `make`
+- `git`
+- `gcc-core`
-In the **Cygwin terminal**:
+Then download [**rgbds**](https://github.com/rednex/rgbds/releases/): the latest **win64.tar.gz** or **win32.tar.gz** release. Extract it and put all the `exe` and `dll` files individually in **C:\cygwin64\usr\local\bin**.
+
+In the **Cygwin terminal**, enter these commands:
git clone https://github.com/pret/pokeyellow
cd pokeyellow
- git submodule update --init
-Then run (in the Cygwin terminal):
+To build **pokeyellow.gbc**:
make
diff --git a/Makefile b/Makefile
index 5bd0cb0a..27363d87 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
PYTHON := python
-pcm := $(PYTHON) tools/pokemontools/pcm.py pcm
+pcm := $(PYTHON) tools/pokemontools/pcm.py pcm
rom := pokeyellow.gbc
@@ -16,13 +16,14 @@ RGBFIX ?= $(RGBDS)rgbfix
RGBGFX ?= $(RGBDS)rgbgfx
RGBLINK ?= $(RGBDS)rgblink
+
### Build targets
.SUFFIXES:
.SECONDEXPANSION:
.PRECIOUS:
.SECONDARY:
-.PHONY: all clean yellow tidy compare tools
+.PHONY: all yellow clean tidy compare tools
all: $(rom)
yellow: $(rom)
@@ -35,7 +36,6 @@ clean:
rm -f $(rom) $(objs) $(rom:.gbc=.sym)
find . \( -iname '*.1bpp' -o -iname '*.2bpp' -o -iname '*.pic' -o -iname '*.pcm' \) -exec rm {} +
$(MAKE) clean -C tools/
-
tidy:
rm -f $(rom) $(objs) $(rom:.gbc=.sym)
@@ -43,13 +43,15 @@ tidy:
tools:
$(MAKE) -C tools/
-
+
+
# Build tools when building the rom.
# This has to happen before the rules are processed, since that's when scan_includes is run.
ifeq (,$(filter clean tools,$(MAKECMDGOALS)))
$(info $(shell $(MAKE) -C tools))
endif
-
+
+
%.asm: ;
%.o: dep = $(shell tools/scan_includes $(@D)/$*.asm)
@@ -59,10 +61,11 @@ $(objs): %.o: %.asm $$(dep)
opts = -cjsv -k 01 -l 0x33 -m 0x1b -p 0 -r 03 -t "POKEMON YELLOW"
$(rom): $(objs)
- $(RGBLINK) -n pokeyellow.sym -l pokeyellow.link -o $@ $^
- $(RGBFIX) $(opts) $@
- sort $(rom:.gbc=.sym) -o $(rom:.gbc=.sym)
-
+ $(RGBLINK) -n pokeyellow.sym -l pokeyellow.link -o $@ $^
+ $(RGBFIX) $(opts) $@
+ sort $(rom:.gbc=.sym) -o $(rom:.gbc=.sym)
+
+
### Misc file-specific graphics rules
gfx/game_boy.2bpp: tools/gfx += --remove-duplicates
@@ -72,9 +75,11 @@ gfx/pokemon_yellow.2bpp: tools/gfx += --trim-whitespace
gfx/surfing_pikachu_1c.2bpp: tools/gfx += --trim-whitespace
gfx/surfing_pikachu_3.2bpp: tools/gfx += --trim-whitespace
gfx/surfing_pikachu_1.2bpp: tools/gfx += --trim-whitespace
+
+
### Catch-all graphics rules
-%.png: ;
+%.png: ;
%.2bpp: %.png
$(RGBGFX) $(rgbgfx) -o $@ $<
@@ -88,7 +93,7 @@ gfx/surfing_pikachu_1.2bpp: tools/gfx += --trim-whitespace
%.pic: %.2bpp
tools/pkmncompress $< $@
-
+
%.wav: ;
%.pcm: %.wav ; @$(pcm) $<
diff --git a/audio.asm b/audio.asm
index be132c72..9e1a6046 100644
--- a/audio.asm
+++ b/audio.asm
@@ -1,11 +1,10 @@
-INCLUDE "charmap.asm"
INCLUDE "constants.asm"
-SECTION "Sound Effect Headers 1", ROMX ; BANK $2
+SECTION "Sound Effect Headers 1", ROMX ; BANK $02
INCLUDE "audio/headers/sfxheaders1.asm"
-SECTION "Sound Effect Headers 2", ROMX ; BANK $8
+SECTION "Sound Effect Headers 2", ROMX ; BANK $08
INCLUDE "audio/headers/sfxheaders2.asm"
SECTION "Sound Effect Headers 3", ROMX ; BANK $1f
@@ -14,10 +13,11 @@ INCLUDE "audio/headers/sfxheaders3.asm"
SECTION "Sound Effect Headers 4", ROMX ; BANK $20
INCLUDE "audio/headers/sfxheaders4.asm"
-SECTION "Music Headers 1", ROMX ; BANK $2
+
+SECTION "Music Headers 1", ROMX ; BANK $02
INCLUDE "audio/headers/musicheaders1.asm"
-SECTION "Music Headers 2", ROMX ; BANK $8
+SECTION "Music Headers 2", ROMX ; BANK $08
INCLUDE "audio/headers/musicheaders2.asm"
SECTION "Music Headers 3", ROMX ; BANK $1f
@@ -26,28 +26,31 @@ INCLUDE "audio/headers/musicheaders3.asm"
SECTION "Music Headers 4", ROMX ; BANK $20
INCLUDE "audio/headers/musicheaders4.asm"
-SECTION "Sound Effects 1", ROMX ; BANK $2
-
-INCLUDE "audio/sfx/snare1_1.asm"
-INCLUDE "audio/sfx/snare2_1.asm"
-INCLUDE "audio/sfx/snare3_1.asm"
-INCLUDE "audio/sfx/snare4_1.asm"
-INCLUDE "audio/sfx/snare5_1.asm"
-INCLUDE "audio/sfx/triangle1_1.asm"
-INCLUDE "audio/sfx/triangle2_1.asm"
-INCLUDE "audio/sfx/snare6_1.asm"
-INCLUDE "audio/sfx/snare7_1.asm"
-INCLUDE "audio/sfx/snare8_1.asm"
-INCLUDE "audio/sfx/snare9_1.asm"
-INCLUDE "audio/sfx/cymbal1_1.asm"
-INCLUDE "audio/sfx/cymbal2_1.asm"
-INCLUDE "audio/sfx/cymbal3_1.asm"
-INCLUDE "audio/sfx/muted_snare1_1.asm"
-INCLUDE "audio/sfx/triangle3_1.asm"
-INCLUDE "audio/sfx/muted_snare2_1.asm"
-INCLUDE "audio/sfx/muted_snare3_1.asm"
-INCLUDE "audio/sfx/muted_snare4_1.asm"
+
+SECTION "Sound Effects 1", ROMX ; BANK $02
+
+INCLUDE "audio/sfx/noise_instrument01_1.asm"
+INCLUDE "audio/sfx/noise_instrument02_1.asm"
+INCLUDE "audio/sfx/noise_instrument03_1.asm"
+INCLUDE "audio/sfx/noise_instrument04_1.asm"
+INCLUDE "audio/sfx/noise_instrument05_1.asm"
+INCLUDE "audio/sfx/noise_instrument06_1.asm"
+INCLUDE "audio/sfx/noise_instrument07_1.asm"
+INCLUDE "audio/sfx/noise_instrument08_1.asm"
+INCLUDE "audio/sfx/noise_instrument09_1.asm"
+INCLUDE "audio/sfx/noise_instrument10_1.asm"
+INCLUDE "audio/sfx/noise_instrument11_1.asm"
+INCLUDE "audio/sfx/noise_instrument12_1.asm"
+INCLUDE "audio/sfx/noise_instrument13_1.asm"
+INCLUDE "audio/sfx/noise_instrument14_1.asm"
+INCLUDE "audio/sfx/noise_instrument15_1.asm"
+INCLUDE "audio/sfx/noise_instrument16_1.asm"
+INCLUDE "audio/sfx/noise_instrument17_1.asm"
+INCLUDE "audio/sfx/noise_instrument18_1.asm"
+INCLUDE "audio/sfx/noise_instrument19_1.asm"
+
; Audio1_WavePointers: INCLUDE "audio/wave_instruments.asm"
+
INCLUDE "audio/sfx/start_menu_1.asm"
INCLUDE "audio/sfx/pokeflute.asm"
INCLUDE "audio/sfx/cut_1.asm"
@@ -122,28 +125,31 @@ INCLUDE "audio/sfx/cry20_1.asm"
INCLUDE "audio/sfx/cry21_1.asm"
INCLUDE "audio/sfx/cry22_1.asm"
-SECTION "Sound Effects 2", ROMX ; BANK $8
-
-INCLUDE "audio/sfx/snare1_2.asm"
-INCLUDE "audio/sfx/snare2_2.asm"
-INCLUDE "audio/sfx/snare3_2.asm"
-INCLUDE "audio/sfx/snare4_2.asm"
-INCLUDE "audio/sfx/snare5_2.asm"
-INCLUDE "audio/sfx/triangle1_2.asm"
-INCLUDE "audio/sfx/triangle2_2.asm"
-INCLUDE "audio/sfx/snare6_2.asm"
-INCLUDE "audio/sfx/snare7_2.asm"
-INCLUDE "audio/sfx/snare8_2.asm"
-INCLUDE "audio/sfx/snare9_2.asm"
-INCLUDE "audio/sfx/cymbal1_2.asm"
-INCLUDE "audio/sfx/cymbal2_2.asm"
-INCLUDE "audio/sfx/cymbal3_2.asm"
-INCLUDE "audio/sfx/muted_snare1_2.asm"
-INCLUDE "audio/sfx/triangle3_2.asm"
-INCLUDE "audio/sfx/muted_snare2_2.asm"
-INCLUDE "audio/sfx/muted_snare3_2.asm"
-INCLUDE "audio/sfx/muted_snare4_2.asm"
+
+SECTION "Sound Effects 2", ROMX ; BANK $08
+
+INCLUDE "audio/sfx/noise_instrument01_2.asm"
+INCLUDE "audio/sfx/noise_instrument02_2.asm"
+INCLUDE "audio/sfx/noise_instrument03_2.asm"
+INCLUDE "audio/sfx/noise_instrument04_2.asm"
+INCLUDE "audio/sfx/noise_instrument05_2.asm"
+INCLUDE "audio/sfx/noise_instrument06_2.asm"
+INCLUDE "audio/sfx/noise_instrument07_2.asm"
+INCLUDE "audio/sfx/noise_instrument08_2.asm"
+INCLUDE "audio/sfx/noise_instrument09_2.asm"
+INCLUDE "audio/sfx/noise_instrument10_2.asm"
+INCLUDE "audio/sfx/noise_instrument11_2.asm"
+INCLUDE "audio/sfx/noise_instrument12_2.asm"
+INCLUDE "audio/sfx/noise_instrument13_2.asm"
+INCLUDE "audio/sfx/noise_instrument14_2.asm"
+INCLUDE "audio/sfx/noise_instrument15_2.asm"
+INCLUDE "audio/sfx/noise_instrument16_2.asm"
+INCLUDE "audio/sfx/noise_instrument17_2.asm"
+INCLUDE "audio/sfx/noise_instrument18_2.asm"
+INCLUDE "audio/sfx/noise_instrument19_2.asm"
+
; Audio2_WavePointers: INCLUDE "audio/wave_instruments.asm"
+
INCLUDE "audio/sfx/press_ab_2.asm"
INCLUDE "audio/sfx/start_menu_2.asm"
INCLUDE "audio/sfx/tink_2.asm"
@@ -156,7 +162,7 @@ INCLUDE "audio/sfx/faint_thud.asm"
INCLUDE "audio/sfx/run.asm"
INCLUDE "audio/sfx/dex_page_added.asm"
INCLUDE "audio/sfx/swap_2.asm" ; added in yellow
-INCLUDE "audio/sfx/pokeflute_ch3.asm"
+INCLUDE "audio/sfx/pokeflute_ch7.asm"
INCLUDE "audio/sfx/peck.asm"
INCLUDE "audio/sfx/faint_fall.asm"
INCLUDE "audio/sfx/battle_09.asm"
@@ -244,30 +250,32 @@ INCLUDE "audio/sfx/cry1f_2.asm"
INCLUDE "audio/sfx/cry20_2.asm"
INCLUDE "audio/sfx/cry21_2.asm"
INCLUDE "audio/sfx/cry22_2.asm"
-; Audio2_WavePointers: INCLUDE "audio/wave_instruments.asm"
+
SECTION "Sound Effects 3", ROMX ; BANK $1f
-INCLUDE "audio/sfx/snare1_3.asm"
-INCLUDE "audio/sfx/snare2_3.asm"
-INCLUDE "audio/sfx/snare3_3.asm"
-INCLUDE "audio/sfx/snare4_3.asm"
-INCLUDE "audio/sfx/snare5_3.asm"
-INCLUDE "audio/sfx/triangle1_3.asm"
-INCLUDE "audio/sfx/triangle2_3.asm"
-INCLUDE "audio/sfx/snare6_3.asm"
-INCLUDE "audio/sfx/snare7_3.asm"
-INCLUDE "audio/sfx/snare8_3.asm"
-INCLUDE "audio/sfx/snare9_3.asm"
-INCLUDE "audio/sfx/cymbal1_3.asm"
-INCLUDE "audio/sfx/cymbal2_3.asm"
-INCLUDE "audio/sfx/cymbal3_3.asm"
-INCLUDE "audio/sfx/muted_snare1_3.asm"
-INCLUDE "audio/sfx/triangle3_3.asm"
-INCLUDE "audio/sfx/muted_snare2_3.asm"
-INCLUDE "audio/sfx/muted_snare3_3.asm"
-INCLUDE "audio/sfx/muted_snare4_3.asm"
+INCLUDE "audio/sfx/noise_instrument01_3.asm"
+INCLUDE "audio/sfx/noise_instrument02_3.asm"
+INCLUDE "audio/sfx/noise_instrument03_3.asm"
+INCLUDE "audio/sfx/noise_instrument04_3.asm"
+INCLUDE "audio/sfx/noise_instrument05_3.asm"
+INCLUDE "audio/sfx/noise_instrument06_3.asm"
+INCLUDE "audio/sfx/noise_instrument07_3.asm"
+INCLUDE "audio/sfx/noise_instrument08_3.asm"
+INCLUDE "audio/sfx/noise_instrument09_3.asm"
+INCLUDE "audio/sfx/noise_instrument10_3.asm"
+INCLUDE "audio/sfx/noise_instrument11_3.asm"
+INCLUDE "audio/sfx/noise_instrument12_3.asm"
+INCLUDE "audio/sfx/noise_instrument13_3.asm"
+INCLUDE "audio/sfx/noise_instrument14_3.asm"
+INCLUDE "audio/sfx/noise_instrument15_3.asm"
+INCLUDE "audio/sfx/noise_instrument16_3.asm"
+INCLUDE "audio/sfx/noise_instrument17_3.asm"
+INCLUDE "audio/sfx/noise_instrument18_3.asm"
+INCLUDE "audio/sfx/noise_instrument19_3.asm"
+
; Audio3_WavePointers: INCLUDE "audio/wave_instruments.asm"
+
INCLUDE "audio/sfx/start_menu_3.asm"
INCLUDE "audio/sfx/cut_3.asm"
INCLUDE "audio/sfx/go_inside_3.asm"
@@ -350,31 +358,33 @@ INCLUDE "audio/sfx/cry20_3.asm"
INCLUDE "audio/sfx/cry21_3.asm"
INCLUDE "audio/sfx/cry22_3.asm"
+
SECTION "Sound Effects 4", ROMX ; BANK $20
-INCLUDE "audio/sfx/snare1_4.asm"
-INCLUDE "audio/sfx/snare2_4.asm"
-INCLUDE "audio/sfx/snare3_4.asm"
-INCLUDE "audio/sfx/snare4_4.asm"
-INCLUDE "audio/sfx/snare5_4.asm"
-INCLUDE "audio/sfx/triangle1_4.asm"
-INCLUDE "audio/sfx/triangle2_4.asm"
-INCLUDE "audio/sfx/snare6_4.asm"
-INCLUDE "audio/sfx/snare7_4.asm"
-INCLUDE "audio/sfx/snare8_4.asm"
-INCLUDE "audio/sfx/snare9_4.asm"
-INCLUDE "audio/sfx/cymbal1_4.asm"
-INCLUDE "audio/sfx/cymbal2_4.asm"
-INCLUDE "audio/sfx/cymbal3_4.asm"
-INCLUDE "audio/sfx/muted_snare1_4.asm"
-INCLUDE "audio/sfx/triangle3_4.asm"
-INCLUDE "audio/sfx/muted_snare2_4.asm"
-INCLUDE "audio/sfx/muted_snare3_4.asm"
-INCLUDE "audio/sfx/muted_snare4_4.asm"
+INCLUDE "audio/sfx/noise_instrument01_4.asm"
+INCLUDE "audio/sfx/noise_instrument02_4.asm"
+INCLUDE "audio/sfx/noise_instrument03_4.asm"
+INCLUDE "audio/sfx/noise_instrument04_4.asm"
+INCLUDE "audio/sfx/noise_instrument05_4.asm"
+INCLUDE "audio/sfx/noise_instrument06_4.asm"
+INCLUDE "audio/sfx/noise_instrument07_4.asm"
+INCLUDE "audio/sfx/noise_instrument08_4.asm"
+INCLUDE "audio/sfx/noise_instrument09_4.asm"
+INCLUDE "audio/sfx/noise_instrument10_4.asm"
+INCLUDE "audio/sfx/noise_instrument11_4.asm"
+INCLUDE "audio/sfx/noise_instrument12_4.asm"
+INCLUDE "audio/sfx/noise_instrument13_4.asm"
+INCLUDE "audio/sfx/noise_instrument14_4.asm"
+INCLUDE "audio/sfx/noise_instrument15_4.asm"
+INCLUDE "audio/sfx/noise_instrument16_4.asm"
+INCLUDE "audio/sfx/noise_instrument17_4.asm"
+INCLUDE "audio/sfx/noise_instrument18_4.asm"
+INCLUDE "audio/sfx/noise_instrument19_4.asm"
+
INCLUDE "audio/sfx/surfing_add_points.asm"
INCLUDE "audio/sfx/unknown_80263.asm"
INCLUDE "audio/sfx/unknown_8026a.asm"
-INCLUDE "audio/sfx/heal_ailment_4.asm"
+INCLUDE "audio/sfx/unknown_8027f.asm"
INCLUDE "audio/sfx/tink_4.asm"
INCLUDE "audio/sfx/surfing_jump.asm"
INCLUDE "audio/sfx/surfing_flip.asm"
@@ -383,6 +393,7 @@ INCLUDE "audio/sfx/surfing_crash.asm"
INCLUDE "audio/sfx/surfing_land.asm"
INCLUDE "audio/sfx/get_item2_4_2.asm"
INCLUDE "audio/sfx/unknown_80337.asm"
+INCLUDE "audio/sfx/unknown_80383.asm"
INCLUDE "audio/sfx/unknown_803da.asm"
INCLUDE "audio/sfx/unknown_80411.asm"
INCLUDE "audio/sfx/unknown_80467.asm"
@@ -421,12 +432,12 @@ INCLUDE "audio/sfx/unknown_80c6e.asm"
INCLUDE "audio/sfx/unknown_80ca1.asm"
INCLUDE "audio/sfx/unknown_80ce7.asm"
INCLUDE "audio/music/printer.asm"
-INCLUDE "audio/sfx/unknown_80e5a.asm"
+INCLUDE "audio/sfx/get_item1_4.asm"
INCLUDE "audio/sfx/unknown_80e91.asm"
INCLUDE "audio/sfx/get_item2_4.asm"
-SECTION "Audio Engine 1", ROMX ; BANK $2
+SECTION "Audio Engine 1", ROMX ; BANK $02
AudioEngine1::
@@ -444,7 +455,7 @@ PlayBattleMusic::
jr .playSong
.notGymLeaderBattle
ld a, [wCurOpponent]
- cp 200
+ cp OPP_ID_OFFSET
jr c, .wildBattle
cp OPP_SONY3
jr z, .finalBattle
@@ -521,7 +532,8 @@ Music_Cities1AlternateTempo::
ld de, Music_Cities1_branch_aa6f
jp Audio1_OverwriteChannelPointer
-SECTION "Audio Engine 2", ROMX ; BANK $8
+
+SECTION "Audio Engine 2", ROMX ; BANK $08
AudioEngine2::
@@ -547,7 +559,7 @@ Music_DoLowHealthAlarm::
.asm_2138a
ld a, $86
- ld [wChannelSoundIDs + CH4], a ;disable sound channel?
+ ld [wChannelSoundIDs + Ch5], a ;disable sound channel?
ld a, [wLowHealthAlarm]
and $7f ;decrement alarm timer.
dec a
@@ -561,7 +573,7 @@ Music_DoLowHealthAlarm::
.disableAlarm
xor a
ld [wLowHealthAlarm], a ;disable alarm
- ld [wChannelSoundIDs + CH4], a ;re-enable sound channel?
+ ld [wChannelSoundIDs + Ch5], a ;re-enable sound channel?
ld de, .toneDataSilence
jr .playTone
@@ -657,7 +669,7 @@ SurfingPikachu1Graphics3:: INCBIN "gfx/surfing_pikachu_1c.2bpp"
INCLUDE "audio/engine_4.asm"
-SECTION "Music 1", ROMX ; BANK $2
+SECTION "Music 1", ROMX ; BANK $02
Audio1_WavePointers: INCLUDE "audio/wave_instruments.asm"
@@ -688,7 +700,7 @@ INCLUDE "audio/music/gym.asm"
INCLUDE "audio/music/pokecenter.asm"
-SECTION "Music 2", ROMX ; BANK $8
+SECTION "Music 2", ROMX ; BANK $08
INCLUDE "audio/sfx/unused2_2.asm"
INCLUDE "audio/music/gymleaderbattle.asm"
@@ -738,6 +750,5 @@ INCLUDE "audio/music/meetjessiejames.asm"
INCBIN "audio/unknown_832b9.bin"
-; cries are in a different banks
+; cries are in different banks
INCLUDE "audio/pikachu_cries.asm"
-
diff --git a/audio/engine_1.asm b/audio/engine_1.asm
index bb780975..bd021ab3 100644
--- a/audio/engine_1.asm
+++ b/audio/engine_1.asm
@@ -1,7 +1,7 @@
; The first of three duplicated sound engines.
Audio1_UpdateMusic::
- ld c, CH0
+ ld c, Ch1
.loop
ld b, 0
ld hl, wChannelSoundIDs
@@ -10,7 +10,7 @@ Audio1_UpdateMusic::
and a
jr z, .nextChannel
ld a, c
- cp CH4
+ cp Ch5
jr nc, .applyAffects ; if sfx channel
ld a, [wMuteAudioAndPauseMusic]
and a
@@ -30,7 +30,7 @@ Audio1_UpdateMusic::
.nextChannel
ld a, c
inc c ; inc channel number
- cp CH7
+ cp Ch8
jr nz, .loop
ret
@@ -46,9 +46,9 @@ Audio1_ApplyMusicAffects:
dec a ; otherwise, decrease the delay timer
ld [hl], a
ld a, c
- cp CH4
+ cp Ch5
jr nc, .startChecks ; if a sfx channel
- ld hl, wChannelSoundIDs + CH4
+ ld hl, wChannelSoundIDs + Ch5
add hl, bc
ld a, [hl]
and a
@@ -57,25 +57,25 @@ Audio1_ApplyMusicAffects:
.startChecks
ld hl, wChannelFlags1
add hl, bc
- bit BIT_ROTATE_DUTY, [hl]
+ bit BIT_ROTATE_DUTY_CYCLE, [hl]
jr z, .checkForExecuteMusic
- call Audio1_ApplyDutyCycle
+ call Audio1_ApplyDutyCyclePattern
.checkForExecuteMusic
ld b, 0
ld hl, wChannelFlags2
add hl, bc
bit BIT_EXECUTE_MUSIC, [hl]
- jr nz, .checkForPitchBend
+ jr nz, .checkForPitchSlide
ld hl, wChannelFlags1
add hl, bc
bit BIT_NOISE_OR_SFX, [hl]
- jr nz, .skipPitchBendVibrato
-.checkForPitchBend
+ jr nz, .skipPitchSlideVibrato
+.checkForPitchSlide
ld hl, wChannelFlags1
add hl, bc
- bit BIT_PITCH_BEND_ON, [hl]
+ bit BIT_PITCH_SLIDE_ON, [hl]
jr z, .checkVibratoDelay
- jp Audio1_ApplyPitchBend
+ jp Audio1_ApplyPitchSlide
.checkVibratoDelay
ld hl, wChannelVibratoDelayCounters
add hl, bc
@@ -83,7 +83,7 @@ Audio1_ApplyMusicAffects:
and a ; check if delay is over
jr z, .checkForVibrato
dec [hl] ; otherwise, dec delay
-.skipPitchBendVibrato
+.skipPitchSlideVibrato
ret
.checkForVibrato
ld hl, wChannelVibratoExtents
@@ -142,7 +142,7 @@ Audio1_ApplyMusicAffects:
ret
; this routine executes all music commands that take up no time,
-; like tempo changes, duty changes etc. and doesn't return
+; like tempo changes, duty cycle changes etc. and doesn't return
; until the first note is reached
Audio1_PlayNextNote:
; reload the vibrato delay counter
@@ -155,8 +155,8 @@ Audio1_PlayNextNote:
ld hl, wChannelFlags1
add hl, bc
- res BIT_PITCH_BEND_ON, [hl]
- res BIT_PITCH_BEND_DECREASING, [hl]
+ res BIT_PITCH_SLIDE_ON, [hl]
+ res BIT_PITCH_SLIDE_DECREASING, [hl]
ld a, c
cp $4
jr nz, .asm_918c
@@ -166,21 +166,21 @@ Audio1_PlayNextNote:
call Audio1_EnableChannelOutput
ret
.asm_918c
- call Audio1_endchannel
+ call Audio1_sound_ret
ret
-Audio1_endchannel:
+Audio1_sound_ret:
call Audio1_GetNextMusicByte
ld d, a
- cp $ff ; is this command an endchannel?
- jp nz, Audio1_callchannel ; no
+ cp $ff ; is this command a sound_ret?
+ jp nz, Audio1_sound_call ; no
ld b, 0
ld hl, wChannelFlags1
add hl, bc
- bit BIT_CHANNEL_CALL, [hl]
+ bit BIT_SOUND_CALL, [hl]
jr nz, .returnFromCall
ld a, c
- cp CH3
+ cp Ch4
jr nc, .noiseOrSfxChannel
jr .disableChannelOutput
.noiseOrSfxChannel
@@ -188,7 +188,7 @@ Audio1_endchannel:
ld hl, wChannelFlags2
add hl, bc
res BIT_EXECUTE_MUSIC, [hl]
- cp CH6
+ cp Ch7
jr nz, .skipSfxChannel3
; restart hardware channel 3 (wave channel) output
ld a, $0
@@ -196,15 +196,15 @@ Audio1_endchannel:
ld a, $80
ld [rNR30], a
.skipSfxChannel3
- jr nz, .asm_9222
+ jr nz, .dontDisable
ld a, [wDisableChannelOutputWhenSfxEnds]
and a
- jr z, .asm_9222
+ jr z, .dontDisable
xor a
ld [wDisableChannelOutputWhenSfxEnds], a
jr .disableChannelOutput
-.asm_9222
- jr .asm_9248
+.dontDisable
+ jr .afterDisable
.returnFromCall
res 1, [hl]
ld d, $0
@@ -224,31 +224,31 @@ Audio1_endchannel:
inc de
ld a, [de]
ld [hl], a ; loads channel address to return to
- jp Audio1_endchannel
+ jp Audio1_sound_ret
.disableChannelOutput
ld hl, Audio1_HWChannelDisableMasks
add hl, bc
ld a, [rNR51]
and [hl]
ld [rNR51], a
-.asm_9248
- ld a, [wChannelSoundIDs + CH4]
+.afterDisable
+ ld a, [wChannelSoundIDs + Ch5]
cp CRY_SFX_START
- jr nc, .asm_9251
+ jr nc, .maybeCry
jr .skipCry
-.asm_9251
- ld a, [wChannelSoundIDs + CH4]
+.maybeCry
+ ld a, [wChannelSoundIDs + Ch5]
cp CRY_SFX_END
jr z, .skipCry
jr c, .cry
jr .skipCry
.cry
ld a, c
- cp CH4
- jr z, .asm_9265
+ cp Ch5
+ jr z, .skipRewind
call Audio1_GoBackOneCommandIfCry
ret c
-.asm_9265
+.skipRewind
ld a, [wSavedVolume]
ld [rNR50], a
xor a
@@ -259,9 +259,9 @@ Audio1_endchannel:
ld [hl], b
ret
-Audio1_callchannel:
- cp $fd ; is this command a callchannel?
- jp nz, Audio1_loopchannel ; no
+Audio1_sound_call:
+ cp $fd ; is this command a sound_call?
+ jp nz, Audio1_sound_loop ; no
call Audio1_GetNextMusicByte
push af
call Audio1_GetNextMusicByte
@@ -293,12 +293,12 @@ Audio1_callchannel:
ld b, $0
ld hl, wChannelFlags1
add hl, bc
- set BIT_CHANNEL_CALL, [hl] ; set the call flag
- jp Audio1_endchannel
+ set BIT_SOUND_CALL, [hl] ; set the call flag
+ jp Audio1_sound_ret
-Audio1_loopchannel:
- cp $fe ; is this command a loopchannel?
- jp nz, Audio1_notetype ; no
+Audio1_sound_loop:
+ cp $fe ; is this command a sound_loop?
+ jp nz, Audio1_note_type ; no
call Audio1_GetNextMusicByte
ld e, a
and a
@@ -313,7 +313,7 @@ Audio1_loopchannel:
ld [hl], a
call Audio1_GetNextMusicByte ; skip pointer
call Audio1_GetNextMusicByte
- jp Audio1_endchannel
+ jp Audio1_sound_ret
.loopAgain ; inc loop count
inc a
ld [hl], a
@@ -332,12 +332,12 @@ Audio1_loopchannel:
pop af
ld [hli], a
ld [hl], b
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_notetype:
+Audio1_note_type:
and $f0
- cp $d0 ; is this command a notetype?
- jp nz, Audio1_toggleperfectpitch ; no
+ cp $d0 ; is this command a note_type?
+ jp nz, Audio1_toggle_perfect_pitch ; no
ld a, d
and $f
ld b, $0
@@ -345,14 +345,14 @@ Audio1_notetype:
add hl, bc
ld [hl], a ; store low nibble as speed
ld a, c
- cp CH3
+ cp Ch4
jr z, .noiseChannel ; noise channel has 0 params
call Audio1_GetNextMusicByte
ld d, a
ld a, c
- cp CH2
+ cp Ch3
jr z, .musicChannel3
- cp CH6
+ cp Ch7
jr nz, .skipChannel3
ld hl, wSfxWaveInstrument
jr .channel3
@@ -376,11 +376,11 @@ Audio1_notetype:
add hl, bc
ld [hl], d
.noiseChannel
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_toggleperfectpitch:
+Audio1_toggle_perfect_pitch:
ld a, d
- cp $e8 ; is this command a toggleperfectpitch?
+ cp $e8 ; is this command a toggle_perfect_pitch?
jr nz, Audio1_vibrato ; no
ld b, 0
ld hl, wChannelFlags1
@@ -388,11 +388,11 @@ Audio1_toggleperfectpitch:
ld a, [hl]
xor $1
ld [hl], a ; flip bit 0 of wChannelFlags1
- jp Audio1_endchannel
+ jp Audio1_sound_ret
Audio1_vibrato:
cp $ea ; is this command a vibrato?
- jr nz, Audio1_pitchbend ; no
+ jr nz, Audio1_pitch_slide ; no
call Audio1_GetNextMusicByte
ld b, 0
ld hl, wChannelVibratoDelayCounters
@@ -436,14 +436,14 @@ Audio1_vibrato:
or d
ld [hl], a
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_pitchbend:
- cp $eb ; is this command a pitchbend?
- jr nz, Audio1_duty ; no
+Audio1_pitch_slide:
+ cp $eb ; is this command a pitch_slide?
+ jr nz, Audio1_duty_cycle ; no
call Audio1_GetNextMusicByte
ld b, 0
- ld hl, wChannelPitchBendLengthModifiers
+ ld hl, wChannelPitchSlideLengthModifiers
add hl, bc
ld [hl], a
call Audio1_GetNextMusicByte
@@ -455,38 +455,38 @@ Audio1_pitchbend:
and $f
call Audio1_CalculateFrequency
ld b, 0
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
add hl, bc
ld [hl], d
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
add hl, bc
ld [hl], e
ld b, 0
ld hl, wChannelFlags1
add hl, bc
- set BIT_PITCH_BEND_ON, [hl]
+ set BIT_PITCH_SLIDE_ON, [hl]
call Audio1_GetNextMusicByte
ld d, a
- jp Audio1_notelength
+ jp Audio1_note_length
-Audio1_duty:
- cp $ec ; is this command a duty?
+Audio1_duty_cycle:
+ cp $ec ; is this command a duty_cycle?
jr nz, Audio1_tempo ; no
call Audio1_GetNextMusicByte
rrca
rrca
and $c0
ld b, 0
- ld hl, wChannelDuties
+ ld hl, wChannelDutyCycles
add hl, bc
- ld [hl], a ; store duty
- jp Audio1_endchannel
+ ld [hl], a ; store duty cycle
+ jp Audio1_sound_ret
Audio1_tempo:
cp $ed ; is this command a tempo?
- jr nz, Audio1_stereopanning ; no
+ jr nz, Audio1_stereo_panning ; no
ld a, c
- cp CH4
+ cp Ch5
jr nc, .sfxChannel
call Audio1_GetNextMusicByte
ld [wMusicTempo], a ; store first param
@@ -509,19 +509,19 @@ Audio1_tempo:
ld [wChannelNoteDelayCountersFractionalPart + 6], a
ld [wChannelNoteDelayCountersFractionalPart + 7], a
.musicChannelDone
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_stereopanning:
- cp $ee ; is this command a stereopanning?
+Audio1_stereo_panning:
+ cp $ee ; is this command a stereo_panning?
jr nz, Audio1_unknownmusic0xef ; no
call Audio1_GetNextMusicByte
ld [wStereoPanning], a ; store panning
- jp Audio1_endchannel
+ jp Audio1_sound_ret
; this appears to never be used
Audio1_unknownmusic0xef:
cp $ef ; is this command an unknownmusic0xef?
- jr nz, Audio1_dutycycle ; no
+ jr nz, Audio1_duty_cycle_pattern ; no
call Audio1_GetNextMusicByte
push bc
ld b, a
@@ -530,76 +530,77 @@ Audio1_unknownmusic0xef:
ld a, [wDisableChannelOutputWhenSfxEnds]
and a
jr nz, .skip
- ld a, [wChannelSoundIDs + CH7]
+ ld a, [wChannelSoundIDs + Ch8]
ld [wDisableChannelOutputWhenSfxEnds], a
xor a
- ld [wChannelSoundIDs + CH7], a
+ ld [wChannelSoundIDs + Ch8], a
.skip
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_dutycycle:
- cp $fc ; is this command a dutycycle?
+Audio1_duty_cycle_pattern:
+ cp $fc ; is this command a duty_cycle_pattern?
jr nz, Audio1_volume ; no
call Audio1_GetNextMusicByte
ld b, 0
- ld hl, wChannelDutyCycles
+ ld hl, wChannelDutyCyclePatterns
add hl, bc
- ld [hl], a ; store full cycle
- and $c0
- ld hl, wChannelDuties
+ ld [hl], a ; store full pattern
+ and %11000000
+ ld hl, wChannelDutyCycles
add hl, bc
- ld [hl], a ; store first duty
+ ld [hl], a ; store first duty cycle
ld hl, wChannelFlags1
add hl, bc
- set BIT_ROTATE_DUTY, [hl]
- jp Audio1_endchannel
+ set BIT_ROTATE_DUTY_CYCLE, [hl]
+ jp Audio1_sound_ret
Audio1_volume:
cp $f0 ; is this command a volume?
- jr nz, Audio1_executemusic ; no
+ jr nz, Audio1_execute_music ; no
call Audio1_GetNextMusicByte
ld [rNR50], a ; store volume
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_executemusic:
- cp $f8 ; is this command an executemusic?
+Audio1_execute_music:
+ cp $f8 ; is this command an execute_music?
jr nz, Audio1_octave ; no
ld b, $0
ld hl, wChannelFlags2
add hl, bc
set BIT_EXECUTE_MUSIC, [hl]
- jp Audio1_endchannel
+ jp Audio1_sound_ret
Audio1_octave:
and $f0
cp $e0 ; is this command an octave?
- jr nz, Audio1_unknownsfx0x20 ; no
+ jr nz, Audio1_sfx_note ; no
ld hl, wChannelOctaves
ld b, 0
add hl, bc
ld a, d
and $f
ld [hl], a ; store low nibble as octave
- jp Audio1_endchannel
+ jp Audio1_sound_ret
-Audio1_unknownsfx0x20:
- cp $20 ; is this command an unknownsfx0x20?
- jr nz, Audio1_unknownsfx0x10
+; sfx_note is either square_note or noise_note depending on the channel
+Audio1_sfx_note:
+ cp $20 ; is this command a sfx_note?
+ jr nz, Audio1_pitch_sweep
ld a, c
- cp CH3 ; is this a noise or sfx channel?
- jr c, Audio1_unknownsfx0x10 ; no
+ cp Ch4 ; is this a noise or sfx channel?
+ jr c, Audio1_pitch_sweep ; no
ld b, 0
ld hl, wChannelFlags2
add hl, bc
- bit BIT_EXECUTE_MUSIC, [hl] ; is executemusic being used?
- jr nz, Audio1_unknownsfx0x10 ; yes
- call Audio1_notelength
+ bit BIT_EXECUTE_MUSIC, [hl] ; is execute_music being used?
+ jr nz, Audio1_pitch_sweep ; yes
+ call Audio1_note_length
-; This code seems to do the same thing as what Audio1_ApplyDutyAndSoundLength
+; This code seems to do the same thing as what Audio1_ApplyDutyCycleAndSoundLength
; does below.
ld d, a
ld b, 0
- ld hl, wChannelDuties
+ ld hl, wChannelDutyCycles
add hl, bc
ld a, [hl]
or d
@@ -616,7 +617,7 @@ Audio1_unknownsfx0x20:
call Audio1_GetNextMusicByte
ld e, a
ld a, c
- cp CH7
+ cp Ch8
ld a, 0
jr z, .skip
; Channels 1 through 3 have 2 registers that control frequency, but the noise
@@ -628,18 +629,18 @@ Audio1_unknownsfx0x20:
.skip
ld d, a
push de
- call Audio1_ApplyDutyAndSoundLength
+ call Audio1_ApplyDutyCycleAndSoundLength
call Audio1_EnableChannelOutput
pop de
call Audio1_ApplyWavePatternAndFrequency
ret
-Audio1_unknownsfx0x10:
+Audio1_pitch_sweep:
ld a, c
- cp CH4
+ cp Ch5
jr c, Audio1_note ; if not a sfx
ld a, d
- cp $10 ; is this command a unknownsfx0x10?
+ cp $10 ; is this command a pitch_sweep?
jr nz, Audio1_note ; no
ld b, $0
ld hl, wChannelFlags2
@@ -648,17 +649,27 @@ Audio1_unknownsfx0x10:
jr nz, Audio1_note ; no
call Audio1_GetNextMusicByte
ld [rNR10], a
- jp Audio1_endchannel
+ jp Audio1_sound_ret
Audio1_note:
ld a, c
- cp CH3
- jr nz, Audio1_notelength ; if not noise channel
+ cp Ch4
+ jr nz, Audio1_note_length ; if not noise channel
ld a, d
and $f0
- cp $b0 ; is this command a dnote?
- jr z, Audio1_dnote
- jr nc, Audio1_notelength ; no
+ cp $b0 ; is this command a drum_note?
+ jr z, .drum_note
+ jr nc, Audio1_note_length ; no
+
+ ; this executes when on the noise channel and
+ ; the command id is less than $b0
+ ; in this case, the upper nybble is used as the noise instrument ($1-$a)
+ ; and the lower nybble is the length minus 1 (0-15)
+ ; however, this doesn't work for instrument #2 because the command id
+ ; is captured by the noise_note command (command id $2x)
+ ; this essentially acts like a drum_note command that is only 1 byte
+ ; instead of 2 and can only be used with instruments 1 and 3 through 10
+ ; this is unused by the game
swap a
ld b, a
ld a, d
@@ -667,26 +678,26 @@ Audio1_note:
ld a, b
push de
push bc
- jr asm_94fd
+ jr .playDnote
-Audio1_dnote:
+.drum_note
ld a, d
and $f
push af
push bc
- call Audio1_GetNextMusicByte ; get dnote instrument
-asm_94fd
+ call Audio1_GetNextMusicByte ; get drum_note instrument
+.playDnote
ld d, a
ld a, [wDisableChannelOutputWhenSfxEnds]
and a
- jr nz, .asm_9508
+ jr nz, .skipDnote
ld b, d
call DetermineAudioFunction
-.asm_9508
+.skipDnote
pop bc
pop de
-Audio1_notelength:
+Audio1_note_length:
ld a, d
push af
and $f
@@ -700,7 +711,7 @@ Audio1_notelength:
ld l, b
call Audio1_MultiplyAdd
ld a, c
- cp CH4
+ cp Ch5
jr nc, .sfxChannel
ld a, [wMusicTempo]
ld d, a
@@ -710,7 +721,7 @@ Audio1_notelength:
.sfxChannel
ld d, $1
ld e, $0
- cp CH7
+ cp Ch8
jr z, .skip ; if noise channel
call Audio1_SetSfxTempo
ld a, [wSfxTempo]
@@ -736,24 +747,24 @@ Audio1_notelength:
ld hl, wChannelFlags2
add hl, bc
bit BIT_EXECUTE_MUSIC, [hl]
- jr nz, Audio1_notepitch
+ jr nz, Audio1_note_pitch
ld hl, wChannelFlags1
add hl, bc
bit BIT_NOISE_OR_SFX, [hl]
- jr z, Audio1_notepitch
+ jr z, Audio1_note_pitch
pop hl
ret
-Audio1_notepitch:
+Audio1_note_pitch:
pop af
and $f0
cp $c0 ; compare to rest
jr nz, .notRest
ld a, c
- cp CH4
+ cp Ch5
jr nc, .next
; If this isn't an SFX channel, try the corresponding SFX channel.
- ld hl, wChannelSoundIDs + CH4
+ ld hl, wChannelSoundIDs + Ch5
add hl, bc
ld a, [hl]
and a
@@ -761,9 +772,9 @@ Audio1_notepitch:
; fall through
.next
ld a, c
- cp CH2
+ cp Ch3
jr z, .channel3
- cp CH6
+ cp Ch7
jr nz, .notChannel3
.channel3
ld b, 0
@@ -793,16 +804,16 @@ Audio1_notepitch:
ld b, 0
ld hl, wChannelFlags1
add hl, bc
- bit BIT_PITCH_BEND_ON, [hl]
- jr z, .skipPitchBend
- call Audio1_InitPitchBendVars
-.skipPitchBend
+ bit BIT_PITCH_SLIDE_ON, [hl]
+ jr z, .skipPitchSlide
+ call Audio1_InitPitchSlideVars
+.skipPitchSlide
push de
ld a, c
- cp CH4
+ cp Ch5
jr nc, .sfxChannel ; if sfx channel
; If this isn't an SFX channel, try the corresponding SFX channel.
- ld hl, wChannelSoundIDs + CH4
+ ld hl, wChannelSoundIDs + Ch5
ld d, 0
ld e, a
add hl, de
@@ -821,13 +832,13 @@ Audio1_notepitch:
ld b, REG_VOLUME_ENVELOPE
call Audio1_GetRegisterPointer
ld [hl], d
- call Audio1_ApplyDutyAndSoundLength
+ call Audio1_ApplyDutyCycleAndSoundLength
call Audio1_EnableChannelOutput
pop de
ld b, $0
ld hl, wChannelFlags1
add hl, bc
- bit BIT_PERFECT_PITCH, [hl] ; has toggleperfectpitch been used?
+ bit BIT_PERFECT_PITCH, [hl] ; has toggle_perfect_pitch been used?
jr z, .skipFrequencyInc
inc e ; if yes, increment the frequency by 1
jr nc, .skipFrequencyInc
@@ -847,12 +858,12 @@ Audio1_EnableChannelOutput:
or [hl] ; set this channel's bits
ld d, a
ld a, c
- cp CH7
+ cp Ch8
jr z, .noiseChannelOrNoSfx
- cp CH4
+ cp Ch5
jr nc, .skip ; if sfx channel
; If this isn't an SFX channel, try the corresponding SFX channel.
- ld hl, wChannelSoundIDs + CH4
+ ld hl, wChannelSoundIDs + Ch5
add hl, bc
ld a, [hl]
and a
@@ -876,21 +887,21 @@ Audio1_EnableChannelOutput:
ld [rNR51], a
ret
-Audio1_ApplyDutyAndSoundLength:
+Audio1_ApplyDutyCycleAndSoundLength:
ld b, 0
ld hl, wChannelNoteDelayCounters ; use the note delay as sound length
add hl, bc
ld d, [hl]
ld a, c
- cp CH2
+ cp Ch3
jr z, .skipDuty ; if music channel 3
- cp CH6
+ cp Ch7
jr z, .skipDuty ; if sfx channel 3
-; include duty (except on channel 3 which doesn't have it)
+; include duty cycle (except on channel 3 which doesn't have it)
ld a, d
and $3f
ld d, a
- ld hl, wChannelDuties
+ ld hl, wChannelDutyCycles
add hl, bc
ld a, [hl]
or d
@@ -903,15 +914,15 @@ Audio1_ApplyDutyAndSoundLength:
Audio1_ApplyWavePatternAndFrequency:
ld a, c
- cp CH2
+ cp Ch3
jr z, .channel3
- cp CH6
+ cp Ch7
jr nz, .notChannel3
; fall through
.channel3
push de
ld de, wMusicWaveInstrument
- cp CH2
+ cp Ch3
jr z, .next
ld de, wSfxWaveInstrument
.next
@@ -1035,7 +1046,7 @@ Audio1_GoBackOneCommandIfCry:
Audio1_IsCry:
; Returns whether the currently playing audio is a cry in carry.
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
cp CRY_SFX_START
jr nc, .next
jr .no
@@ -1055,9 +1066,9 @@ Audio1_96c3:
ld a, [wAudioROMBank]
cp BANK(AudioEngine2)
jr nz, .asm_96dc
- ld a, [wChannelSoundIDs + CH7]
+ ld a, [wChannelSoundIDs + Ch8]
ld b, a
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
or b
cp $9d
jr c, .asm_96dc
@@ -1071,29 +1082,29 @@ Audio1_96c3:
scf
ret
-Audio1_ApplyPitchBend:
+Audio1_ApplyPitchSlide:
ld hl, wChannelFlags1
add hl, bc
- bit BIT_PITCH_BEND_DECREASING, [hl]
+ bit BIT_PITCH_SLIDE_DECREASING, [hl]
jp nz, .frequencyDecreasing
; frequency increasing
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
add hl, bc
ld e, [hl]
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
add hl, bc
ld d, [hl]
- ld hl, wChannelPitchBendFrequencySteps
+ ld hl, wChannelPitchSlideFrequencySteps
add hl, bc
ld l, [hl]
ld h, b
add hl, de
ld d, h
ld e, l
- ld hl, wChannelPitchBendCurrentFrequencyFractionalPart
+ ld hl, wChannelPitchSlideCurrentFrequencyFractionalPart
add hl, bc
push hl
- ld hl, wChannelPitchBendFrequencyStepsFractionalPart
+ ld hl, wChannelPitchSlideFrequencyStepsFractionalPart
add hl, bc
ld a, [hl]
pop hl
@@ -1105,26 +1116,26 @@ Audio1_ApplyPitchBend:
ld a, 0
adc d
ld d, a
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
add hl, bc
ld a, [hl]
cp d
jp c, .reachedTargetFrequency
jr nz, .applyUpdatedFrequency
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
add hl, bc
ld a, [hl]
cp e
jp c, .reachedTargetFrequency
jr .applyUpdatedFrequency
.frequencyDecreasing
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
add hl, bc
ld a, [hl]
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
add hl, bc
ld d, [hl]
- ld hl, wChannelPitchBendFrequencySteps
+ ld hl, wChannelPitchSlideFrequencySteps
add hl, bc
ld e, [hl]
sub e
@@ -1132,7 +1143,7 @@ Audio1_ApplyPitchBend:
ld a, d
sbc b
ld d, a
- ld hl, wChannelPitchBendFrequencyStepsFractionalPart
+ ld hl, wChannelPitchSlideFrequencyStepsFractionalPart
add hl, bc
ld a, [hl]
add a
@@ -1143,22 +1154,22 @@ Audio1_ApplyPitchBend:
ld a, d
sbc b
ld d, a
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
add hl, bc
ld a, d
cp [hl]
jr c, .reachedTargetFrequency
jr nz, .applyUpdatedFrequency
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
add hl, bc
ld a, e
cp [hl]
jr c, .reachedTargetFrequency
.applyUpdatedFrequency
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
add hl, bc
ld [hl], e
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
add hl, bc
ld [hl], d
ld b, REG_FREQUENCY_LO
@@ -1168,38 +1179,38 @@ Audio1_ApplyPitchBend:
ld [hl], d
ret
.reachedTargetFrequency
-; Turn off pitch bend when the target frequency has been reached.
+; Turn off pitch slide when the target frequency has been reached.
ld hl, wChannelFlags1
add hl, bc
- res BIT_PITCH_BEND_ON, [hl]
- res BIT_PITCH_BEND_DECREASING, [hl]
+ res BIT_PITCH_SLIDE_ON, [hl]
+ res BIT_PITCH_SLIDE_DECREASING, [hl]
ret
-Audio1_InitPitchBendVars:
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
+Audio1_InitPitchSlideVars:
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
add hl, bc
ld [hl], d
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
add hl, bc
ld [hl], e
ld hl, wChannelNoteDelayCounters
add hl, bc
ld a, [hl]
- ld hl, wChannelPitchBendLengthModifiers
+ ld hl, wChannelPitchSlideLengthModifiers
add hl, bc
sub [hl]
jr nc, .next
ld a, 1
.next
ld [hl], a
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
add hl, bc
ld a, e
sub [hl]
ld e, a
ld a, d
sbc b
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
add hl, bc
sub [hl]
jr c, .targetFrequencyGreater
@@ -1207,18 +1218,18 @@ Audio1_InitPitchBendVars:
ld b, 0
ld hl, wChannelFlags1
add hl, bc
- set BIT_PITCH_BEND_DECREASING, [hl]
+ set BIT_PITCH_SLIDE_DECREASING, [hl]
jr .next2
.targetFrequencyGreater
; If the target frequency is greater, subtract the current frequency from
; the target frequency to get the absolute difference.
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
add hl, bc
ld d, [hl]
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
add hl, bc
ld e, [hl]
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
add hl, bc
ld a, [hl]
sub e
@@ -1233,7 +1244,7 @@ Audio1_InitPitchBendVars:
sbc b
ld d, a
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
add hl, bc
ld a, [hl]
sub d
@@ -1241,10 +1252,10 @@ Audio1_InitPitchBendVars:
ld b, 0
ld hl, wChannelFlags1
add hl, bc
- res BIT_PITCH_BEND_DECREASING, [hl]
+ res BIT_PITCH_SLIDE_DECREASING, [hl]
.next2
- ld hl, wChannelPitchBendLengthModifiers
+ ld hl, wChannelPitchSlideLengthModifiers
add hl, bc
.divideLoop
inc b
@@ -1263,20 +1274,20 @@ Audio1_InitPitchBendVars:
add [hl]
ld d, b ; d = quotient + 1
ld b, 0
- ld hl, wChannelPitchBendFrequencySteps
+ ld hl, wChannelPitchSlideFrequencySteps
add hl, bc
ld [hl], d ; store quotient + 1
- ld hl, wChannelPitchBendFrequencyStepsFractionalPart
+ ld hl, wChannelPitchSlideFrequencyStepsFractionalPart
add hl, bc
ld [hl], a ; store remainder - dividend
- ld hl, wChannelPitchBendCurrentFrequencyFractionalPart
+ ld hl, wChannelPitchSlideCurrentFrequencyFractionalPart
add hl, bc
ld [hl], a ; store remainder - dividend
ret
-Audio1_ApplyDutyCycle:
+Audio1_ApplyDutyCyclePattern:
ld b, 0
- ld hl, wChannelDutyCycles
+ ld hl, wChannelDutyCyclePatterns
add hl, bc
ld a, [hl]
rlca
@@ -1358,7 +1369,7 @@ Audio1_PlaySound::
ld a, [wSoundID]
cp $ff
jp z, .stopAllAudio
- cp MAX_SFX_ID
+ cp MAX_SFX_ID_1
jp z, .playSfx
jp c, .playSfx
cp $fe
@@ -1408,28 +1419,27 @@ Audio1_PlaySound::
add hl, de
ld a, [hl]
and a
- jr z, .asm_99a3
+ jr z, .playChannel
ld a, e
- cp $7
- jr nz, .asm_999a
+ cp Ch8
+ jr nz, .notNoiseChannel
ld a, [wSoundID]
- cp $14
- jr nc, .asm_9993
+ cp NOISE_INSTRUMENTS_END
+ jr nc, .notNoiseInstrument
ret
-.asm_9993
+.notNoiseInstrument
ld a, [hl]
- cp $14
- jr z, .asm_99a3
- jr c, .asm_99a3
-.asm_999a
+ cp NOISE_INSTRUMENTS_END
+ jr z, .playChannel
+ jr c, .playChannel
+.notNoiseChannel
ld a, [wSoundID]
cp [hl]
- jr z, .asm_99a3
- jr c, .asm_99a3
+ jr z, .playChannel
+ jr c, .playChannel
ret
-.asm_99a3
+.playChannel
call InitSFXVariables
-.asm_9a2b
ld a, c
and a
jp z, .playSoundCommon
@@ -1478,7 +1488,7 @@ Audio1_PlaySound::
push bc
ld b, 0
ld c, a
- cp CH3
+ cp Ch4
jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
@@ -1512,25 +1522,25 @@ Audio1_PlaySound::
jr nz, .commandPointerLoop
ld a, [wSoundID]
cp CRY_SFX_START
- jr nc, .asm_9aeb
+ jr nc, .maybeCry
jr .done
-.asm_9aeb
+.maybeCry
ld a, [wSoundID]
cp CRY_SFX_END
jr z, .done
jr c, .cry
jr .done
.cry
- ld hl, wChannelSoundIDs + CH4
+ ld hl, wChannelSoundIDs + Ch5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + CH6 * 2 ; sfx wave channel pointer
- ld de, Audio1_CryEndchannel
+ ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld de, Audio1_CryRet
ld [hl], e
inc hl
- ld [hl], d ; overwrite pointer to point to endchannel
+ ld [hl], d ; overwrite pointer to point to sound_ret
ld a, [wSavedVolume]
and a
jr nz, .done
@@ -1541,8 +1551,8 @@ Audio1_PlaySound::
.done
ret
-Audio1_CryEndchannel:
- endchannel
+Audio1_CryRet:
+ sound_ret
Audio1_HWChannelBaseAddresses:
; the low bytes of each HW channel's base address
@@ -1590,5 +1600,3 @@ Audio1_Pitches:
dw $FB58 ; A_
dw $FB9B ; A#
dw $FBDA ; B_
-
-
diff --git a/audio/engine_2.asm b/audio/engine_2.asm
index d1b07df9..5fe686a8 100644
--- a/audio/engine_2.asm
+++ b/audio/engine_2.asm
@@ -1,22 +1,27 @@
+; The second of three duplicated sound engines.
+; This copy has a few differences relating to battle sound effects
+; and the low health alarm that plays in battle
+
Audio2_PlaySound::
ld [wSoundID], a
ld a, [wSoundID]
cp $ff
- jp z, Audio2_2193c
- cp $e9
- jp z, Audio2_218db
- jp c, Audio2_218db
+ jp z, .stopAllAudio
+ cp MAX_SFX_ID_2
+ jp z, .playSfx
+ jp c, .playSfx
cp $fe
- jr z, .asm_218d5
- jp nc, Audio2_218db
-.asm_218d5
+ jr z, .playMusic
+ jp nc, .playSfx
+
+.playMusic
call InitMusicVariables
- jp Audio2_21940
+ jp .playSoundCommon
-Audio2_218db:
+.playSfx
ld l, a
ld e, a
- ld h, $0
+ ld h, 0
ld d, h
add hl, hl
add hl, de
@@ -31,7 +36,7 @@ Audio2_218db:
rlca
rlca
ld c, a
-.asm_218f4
+.sfxChannelLoop
ld d, c
ld a, c
add a
@@ -46,48 +51,48 @@ Audio2_218db:
ld c, d
ld a, [hl]
and $f
- ld e, a
- ld d, $0
+ ld e, a ; software channel ID
+ ld d, 0
ld hl, wChannelSoundIDs
add hl, de
ld a, [hl]
and a
- jr z, .asm_21930
+ jr z, .playChannel
ld a, e
- cp $7
- jr nz, .asm_21927
+ cp Ch8
+ jr nz, .notNoiseChannel
ld a, [wSoundID]
- cp $14
- jr nc, .asm_21920
+ cp NOISE_INSTRUMENTS_END
+ jr nc, .notNoiseInstrument
ret
-.asm_21920
+.notNoiseInstrument
ld a, [hl]
- cp $14
- jr z, .asm_21930
- jr c, .asm_21930
-.asm_21927
+ cp NOISE_INSTRUMENTS_END
+ jr z, .playChannel
+ jr c, .playChannel
+.notNoiseChannel
ld a, [wSoundID]
cp [hl]
- jr z, .asm_21930
- jr c, .asm_21930
+ jr z, .playChannel
+ jr c, .playChannel
ret
-.asm_21930
+.playChannel
call InitSFXVariables
ld a, c
and a
- jp z, Audio2_21940
+ jp z, .playSoundCommon
dec c
- jp .asm_218f4
+ jp .sfxChannelLoop
-Audio2_2193c:
+.stopAllAudio
call StopAllAudio
ret
-Audio2_21940:
+.playSoundCommon
ld a, [wSoundID]
ld l, a
ld e, a
- ld h, $0
+ ld h, 0
ld d, h
add hl, hl
add hl, de
@@ -107,26 +112,26 @@ Audio2_21940:
ld b, c
inc b
inc de
- ld c, $0
-.asm_21962
+ ld c, 0
+.commandPointerLoop
cp c
- jr z, .asm_2196a
+ jr z, .next
inc c
inc hl
inc hl
- jr .asm_21962
-.asm_2196a
+ jr .commandPointerLoop
+.next
push af
push hl
push bc
- ld b, $0
+ ld b, 0
ld c, a
- cp $3
- jr c, .asm_2197a
+ cp Ch4
+ jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
- set 2, [hl]
-.asm_2197a
+ set BIT_NOISE_OR_SFX, [hl]
+.skipSettingFlag
pop bc
pop hl
ld a, [de] ; get channel pointer
@@ -138,7 +143,7 @@ Audio2_21940:
pop af
push hl
push bc
- ld b, $0
+ ld b, 0
ld c, a
ld hl, wChannelSoundIDs
add hl, bc
@@ -152,52 +157,52 @@ Audio2_21940:
and a
ld a, [de]
inc de
- jr nz, .asm_21962
+ jr nz, .commandPointerLoop
ld a, [wSoundID]
- cp $14
- jr nc, .asm_219a3
- jr .asm_219cd
-.asm_219a3
+ cp CRY_SFX_START
+ jr nc, .maybeCry
+ jr .done
+.maybeCry
ld a, [wSoundID]
- cp $86
- jr z, .asm_219cd
- jr c, .asm_219ae
- jr .asm_219cd
-.asm_219ae
- ld hl, wChannelSoundIDs + CH4
+ cp CRY_SFX_END
+ jr z, .done
+ jr c, .cry
+ jr .done
+.cry
+ ld hl, wChannelSoundIDs + Ch5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + CH6 * 2 ; sfx noise channel pointer
- ld de, Noise2_endchannel
+ ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld de, Audio2_CryRet
ld [hl], e
inc hl
- ld [hl], d ; overwrite pointer to point to endchannel
+ ld [hl], d ; overwrite pointer to point to sound_ret
ld a, [wSavedVolume]
and a
- jr nz, .asm_219cd
+ jr nz, .done
ld a, [rNR50]
ld [wSavedVolume], a
ld a, $77
ld [rNR50], a
-.asm_219cd
+.done
ret
-Noise2_endchannel:
- endchannel
+Audio2_CryRet:
+ sound_ret
Music_PokeFluteInBattle::
; begin playing the "caught mon" sound effect
ld a, SFX_CAUGHT_MON
call PlaySoundWaitForCurrent
; then immediately overwrtie the channel pointers
- ld hl, wChannelCommandPointers + CH4 * 2
- ld de, SFX_08_PokeFlute_Ch1
+ ld hl, wChannelCommandPointers + Ch5 * 2
+ ld de, SFX_Pokeflute_Ch5
call Audio2_OverwriteChannelPointer
- ld de, SFX_08_PokeFlute_Ch2
+ ld de, SFX_Pokeflute_Ch6
call Audio2_OverwriteChannelPointer
- ld de, SFX_08_PokeFlute_Ch3
+ ld de, SFX_Pokeflute_Ch7
Audio2_OverwriteChannelPointer:
ld a, e
@@ -206,7 +211,7 @@ Audio2_OverwriteChannelPointer:
ld [hli], a
ret
-INCLUDE "audio/sfx/pokeflute_ch1_ch2.asm"
+INCLUDE "audio/sfx/pokeflute_ch5_ch6.asm"
Audio2_InitMusicVariables::
xor a
@@ -217,53 +222,53 @@ Audio2_InitMusicVariables::
ld [wSfxWaveInstrument], a
ld d, $8
ld hl, wChannelReturnAddresses
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelCommandPointers
- call FillAudioRAM2
+ call Audio2_FillMem
ld d, $4
ld hl, wChannelSoundIDs
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelFlags1
- call FillAudioRAM2
- ld hl, wChannelDuties
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelDutyCycles
- call FillAudioRAM2
+ call Audio2_FillMem
+ ld hl, wChannelDutyCyclePatterns
+ call Audio2_FillMem
ld hl, wChannelVibratoDelayCounters
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelVibratoExtents
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelVibratoRates
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelFrequencyLowBytes
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelVibratoDelayCounterReloadValues
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelFlags2
- call FillAudioRAM2
- ld hl, wChannelPitchBendLengthModifiers
- call FillAudioRAM2
- ld hl, wChannelPitchBendFrequencySteps
- call FillAudioRAM2
- ld hl, wChannelPitchBendFrequencyStepsFractionalPart
- call FillAudioRAM2
- ld hl, wChannelPitchBendCurrentFrequencyFractionalPart
- call FillAudioRAM2
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
- call FillAudioRAM2
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
- call FillAudioRAM2
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
- call FillAudioRAM2
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
- call FillAudioRAM2
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideLengthModifiers
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideFrequencySteps
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideFrequencyStepsFractionalPart
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideCurrentFrequencyFractionalPart
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
+ call Audio2_FillMem
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
+ call Audio2_FillMem
ld a, $1
ld hl, wChannelLoopCounters
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelNoteDelayCounters
- call FillAudioRAM2
+ call Audio2_FillMem
ld hl, wChannelNoteSpeeds
- call FillAudioRAM2
+ call Audio2_FillMem
ld [wMusicTempo], a
ld a, $ff
ld [wStereoPanning], a
@@ -271,7 +276,7 @@ Audio2_InitMusicVariables::
ld [rNR50], a
ld a, $8
ld [rNR10], a
- ld a, $0
+ ld a, 0
ld [rNR51], a
xor a
ld [rNR30], a
@@ -304,10 +309,10 @@ Audio2_InitSFXVariables::
ld hl, wChannelFlags1
add hl, de
ld [hl], a
- ld hl, wChannelDuties
+ ld hl, wChannelDutyCycles
add hl, de
ld [hl], a
- ld hl, wChannelDutyCycles
+ ld hl, wChannelDutyCyclePatterns
add hl, de
ld [hl], a
ld hl, wChannelVibratoDelayCounters
@@ -325,28 +330,28 @@ Audio2_InitSFXVariables::
ld hl, wChannelVibratoDelayCounterReloadValues
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendLengthModifiers
+ ld hl, wChannelPitchSlideLengthModifiers
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendFrequencySteps
+ ld hl, wChannelPitchSlideFrequencySteps
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendFrequencyStepsFractionalPart
+ ld hl, wChannelPitchSlideFrequencyStepsFractionalPart
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendCurrentFrequencyFractionalPart
+ ld hl, wChannelPitchSlideCurrentFrequencyFractionalPart
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendCurrentFrequencyHighBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyHighBytes
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendCurrentFrequencyLowBytes
+ ld hl, wChannelPitchSlideCurrentFrequencyLowBytes
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendTargetFrequencyHighBytes
+ ld hl, wChannelPitchSlideTargetFrequencyHighBytes
add hl, de
ld [hl], a
- ld hl, wChannelPitchBendTargetFrequencyLowBytes
+ ld hl, wChannelPitchSlideTargetFrequencyLowBytes
add hl, de
ld [hl], a
ld hl, wChannelFlags2
@@ -363,30 +368,30 @@ Audio2_InitSFXVariables::
add hl, de
ld [hl], a
ld a, e
- cp $4
+ cp Ch5
ret nz
ld a, $8
- ld [rNR10], a
+ ld [rNR10], a ; sweep off
ret
Audio2_StopAllAudio::
ld a, $80
- ld [rNR52], a
- ld [rNR30], a
+ ld [rNR52], a ; sound hardware on
+ ld [rNR30], a ; wave playback on
xor a
- ld [rNR51], a
- ld [rNR32], a
+ ld [rNR51], a ; no sound output
+ ld [rNR32], a ; mute channel 3 (wave channel)
ld a, $8
- ld [rNR10], a
- ld [rNR12], a
- ld [rNR22], a
- ld [rNR42], a
+ ld [rNR10], a ; sweep off
+ ld [rNR12], a ; mute channel 1 (pulse channel 1)
+ ld [rNR22], a ; mute channel 2 (pulse channel 2)
+ ld [rNR42], a ; mute channel 4 (noise channel)
ld a, $40
- ld [rNR14], a
+ ld [rNR14], a ; counter mode
ld [rNR24], a
ld [rNR44], a
ld a, $77
- ld [rNR50], a
+ ld [rNR50], a ; full volume
xor a
ld [wUnusedC000], a
ld [wDisableChannelOutputWhenSfxEnds], a
@@ -397,18 +402,19 @@ Audio2_StopAllAudio::
ld [wSfxWaveInstrument], a
ld d, $b0
ld hl, wChannelCommandPointers
- call FillAudioRAM2
+ call Audio2_FillMem
ld a, $1
ld d, $18
ld hl, wChannelNoteDelayCounters
- call FillAudioRAM2
+ call Audio2_FillMem
ld [wMusicTempo], a
ld [wSfxTempo], a
ld a, $ff
ld [wStereoPanning], a
ret
-FillAudioRAM2:
+; fills d bytes at hl with a
+Audio2_FillMem
ld b, d
.loop
ld [hli], a
diff --git a/audio/engine_3.asm b/audio/engine_3.asm
index 418ee10b..2d4a30e3 100644
--- a/audio/engine_3.asm
+++ b/audio/engine_3.asm
@@ -4,21 +4,22 @@ Audio3_PlaySound::
ld [wSoundID], a
ld a, [wSoundID]
cp $ff
- jp z, Audio3_7d18e
- cp $c2
- jp z, Audio3_7d12d
- jp c, Audio3_7d12d
+ jp z, .stopAllAudio
+ cp MAX_SFX_ID_3
+ jp z, .playSfx
+ jp c, .playSfx
cp $fd
- jr z, .asm_7d127
- jp nc, Audio3_7d12d
-.asm_7d127
+ jr z, .playMusic
+ jp nc, .playSfx
+
+.playMusic
call InitMusicVariables
- jp Audio3_7d192
+ jp .playSoundCommon
-Audio3_7d12d:
+.playSfx
ld l, a
ld e, a
- ld h, $0
+ ld h, 0
ld d, h
add hl, hl
add hl, de
@@ -33,13 +34,13 @@ Audio3_7d12d:
rlca
rlca
ld c, a
-.asm_7d146
+.sfxChannelLoop
ld d, c
ld a, c
add a
add c
ld c, a
- ld b, $0
+ ld b, 0
ld a, [wSfxHeaderPointer]
ld h, a
ld a, [wSfxHeaderPointer + 1]
@@ -48,48 +49,48 @@ Audio3_7d12d:
ld c, d
ld a, [hl]
and $f
- ld e, a
- ld d, $0
+ ld e, a ; software channel ID
+ ld d, 0
ld hl, wChannelSoundIDs
add hl, de
ld a, [hl]
and a
- jr z, .asm_7d182
+ jr z, .playChannel
ld a, e
- cp $7
- jr nz, .asm_7d179
+ cp Ch8
+ jr nz, .notNoiseChannel
ld a, [wSoundID]
- cp $14
- jr nc, .asm_7d172
+ cp NOISE_INSTRUMENTS_END
+ jr nc, .notNoiseInstrument
ret
-.asm_7d172
+.notNoiseInstrument
ld a, [hl]
- cp $14
- jr z, .asm_7d182
- jr c, .asm_7d182
-.asm_7d179
+ cp NOISE_INSTRUMENTS_END
+ jr z, .playChannel
+ jr c, .playChannel
+.notNoiseChannel
ld a, [wSoundID]
cp [hl]
- jr z, .asm_7d182
- jr c, .asm_7d182
+ jr z, .playChannel
+ jr c, .playChannel
ret
-.asm_7d182
+.playChannel
call InitSFXVariables
ld a, c
and a
- jp z, Audio3_7d192
+ jp z, .playSoundCommon
dec c
- jp .asm_7d146
+ jp .sfxChannelLoop
-Audio3_7d18e:
+.stopAllAudio
call StopAllAudio
ret
-Audio3_7d192:
+.playSoundCommon
ld a, [wSoundID]
ld l, a
ld e, a
- ld h, $0
+ ld h, 0
ld d, h
add hl, hl
add hl, de
@@ -109,26 +110,26 @@ Audio3_7d192:
ld b, c
inc b
inc de
- ld c, $0
-.asm_7d1b4
+ ld c, 0
+.commandPointerLoop
cp c
- jr z, .asm_7d1bc
+ jr z, .next
inc c
inc hl
inc hl
- jr .asm_7d1b4
-.asm_7d1bc
+ jr .commandPointerLoop
+.next
push af
push hl
push bc
- ld b, $0
+ ld b, 0
ld c, a
- cp $3
- jr c, .asm_7d1cc
+ cp Ch4
+ jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
- set 2, [hl]
-.asm_7d1cc
+ set BIT_NOISE_OR_SFX, [hl]
+.skipSettingFlag
pop bc
pop hl
ld a, [de] ; get channel pointer
@@ -140,7 +141,7 @@ Audio3_7d192:
pop af
push hl
push bc
- ld b, $0
+ ld b, 0
ld c, a
ld hl, wChannelSoundIDs
add hl, bc
@@ -154,37 +155,37 @@ Audio3_7d192:
and a
ld a, [de]
inc de
- jr nz, .asm_7d1b4
+ jr nz, .commandPointerLoop
ld a, [wSoundID]
- cp $14
- jr nc, .asm_7d1f5
- jr .asm_7d21f
-.asm_7d1f5
+ cp CRY_SFX_START
+ jr nc, .maybeCry
+ jr .done
+.maybeCry
ld a, [wSoundID]
- cp $86
- jr z, .asm_7d21f
- jr c, .asm_7d200
- jr .asm_7d21f
-.asm_7d200
- ld hl, wChannelSoundIDs + CH4
+ cp CRY_SFX_END
+ jr z, .done
+ jr c, .cry
+ jr .done
+.cry
+ ld hl, wChannelSoundIDs + Ch5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + CH6 * 2 ; sfx noise channel pointer
- ld de, Noise3_endchannel
+ ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld de, Audio3_CryRet
ld [hl], e
inc hl
- ld [hl], d ; overwrite pointer to point to endchannel
+ ld [hl], d ; overwrite pointer to point to sound_ret
ld a, [wSavedVolume]
and a
- jr nz, .asm_7d21f
+ jr nz, .done
ld a, [rNR50]
ld [wSavedVolume], a
ld a, $77
- ld [rNR50], a
-.asm_7d21f
+ ld [rNR50], a ; full volume
+.done
ret
-Noise3_endchannel:
- endchannel
+Audio3_CryRet:
+ sound_ret
diff --git a/audio/engine_4.asm b/audio/engine_4.asm
index f152ff80..2f0d9ade 100644
--- a/audio/engine_4.asm
+++ b/audio/engine_4.asm
@@ -1,24 +1,25 @@
+; The fourth of three duplicated sound engines.
+
Audio4_PlaySound::
-; Duplicate of Audio3_PlaySound
ld [wSoundID], a
ld a, [wSoundID]
cp $ff
- jp z, Audio4_7d18e
- cp $98
- jp z, Audio4_7d12d
- jp c, Audio4_7d12d
+ jp z, .stopAllAudio
+ cp MAX_SFX_ID_4
+ jp z, .playSfx
+ jp c, .playSfx
cp $a3
- jr z, .asm_7d127
- jp nc, Audio4_7d12d
+ jr z, .playMusic
+ jp nc, .playSfx
-.asm_7d127
+.playMusic
call InitMusicVariables
- jp Audio4_7d192
+ jp .playSoundCommon
-Audio4_7d12d:
+.playSfx
ld l, a
ld e, a
- ld h, $0
+ ld h, 0
ld d, h
add hl, hl
add hl, de
@@ -33,13 +34,13 @@ Audio4_7d12d:
rlca
rlca
ld c, a
-.asm_7d146
+.sfxChannelLoop
ld d, c
ld a, c
add a
add c
ld c, a
- ld b, $0
+ ld b, 0
ld a, [wSfxHeaderPointer]
ld h, a
ld a, [wSfxHeaderPointer + 1]
@@ -48,50 +49,48 @@ Audio4_7d12d:
ld c, d
ld a, [hl]
and $f
- ld e, a
- ld d, $0
+ ld e, a ; software channel ID
+ ld d, 0
ld hl, wChannelSoundIDs
add hl, de
ld a, [hl]
and a
- jr z, .asm_7d182
+ jr z, .playChannel
ld a, e
- cp $7
- jr nz, .asm_7d179
+ cp Ch8
+ jr nz, .notNoiseChannel
ld a, [wSoundID]
- cp $14
- jr nc, .asm_7d172
+ cp NOISE_INSTRUMENTS_END
+ jr nc, .notNoiseInstrument
ret
-
-.asm_7d172
+.notNoiseInstrument
ld a, [hl]
- cp $14
- jr z, .asm_7d182
- jr c, .asm_7d182
-.asm_7d179
+ cp NOISE_INSTRUMENTS_END
+ jr z, .playChannel
+ jr c, .playChannel
+.notNoiseChannel
ld a, [wSoundID]
cp [hl]
- jr z, .asm_7d182
- jr c, .asm_7d182
+ jr z, .playChannel
+ jr c, .playChannel
ret
-
-.asm_7d182
+.playChannel
call InitSFXVariables
ld a, c
and a
- jp z, Audio4_7d192
+ jp z, .playSoundCommon
dec c
- jp .asm_7d146
+ jp .sfxChannelLoop
-Audio4_7d18e:
+.stopAllAudio
call StopAllAudio
ret
-Audio4_7d192:
+.playSoundCommon
ld a, [wSoundID]
ld l, a
ld e, a
- ld h, $0
+ ld h, 0
ld d, h
add hl, hl
add hl, de
@@ -111,26 +110,26 @@ Audio4_7d192:
ld b, c
inc b
inc de
- ld c, $0
-.asm_7d1b4
+ ld c, 0
+.commandPointerLoop
cp c
- jr z, .asm_7d1bc
+ jr z, .next
inc c
inc hl
inc hl
- jr .asm_7d1b4
-.asm_7d1bc
+ jr .commandPointerLoop
+.next
push af
push hl
push bc
- ld b, $0
+ ld b, 0
ld c, a
- cp $3
- jr c, .asm_7d1cc
+ cp Ch4
+ jr c, .skipSettingFlag
ld hl, wChannelFlags1
add hl, bc
- set 2, [hl]
-.asm_7d1cc
+ set BIT_NOISE_OR_SFX, [hl]
+.skipSettingFlag
pop bc
pop hl
ld a, [de] ; get channel pointer
@@ -142,7 +141,7 @@ Audio4_7d192:
pop af
push hl
push bc
- ld b, $0
+ ld b, 0
ld c, a
ld hl, wChannelSoundIDs
add hl, bc
@@ -156,38 +155,37 @@ Audio4_7d192:
and a
ld a, [de]
inc de
- jr nz, .asm_7d1b4
+ jr nz, .commandPointerLoop
ld a, [wSoundID]
- cp $14
- jr nc, .asm_7d1f5
- jr .asm_7d21f
-
-.asm_7d1f5
+ cp CRY_SFX_START
+ jr nc, .maybeCry
+ jr .done
+.maybeCry
ld a, [wSoundID]
- cp $86
- jr z, .asm_7d21f
- jr c, .asm_7d200
- jr .asm_7d21f
-.asm_7d200
- ld hl, wChannelSoundIDs + CH4
+ cp CRY_SFX_END
+ jr z, .done
+ jr c, .cry
+ jr .done
+.cry
+ ld hl, wChannelSoundIDs + Ch5
ld [hli], a
ld [hli], a
ld [hli], a
ld [hl], a
- ld hl, wChannelCommandPointers + CH6 * 2 ; sfx noise channel pointer
- ld de, Noise4_endchannel
+ ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer
+ ld de, Audio4_CryRet
ld [hl], e
inc hl
- ld [hl], d ; overwrite pointer to point to endchannel
+ ld [hl], d ; overwrite pointer to point to sound_ret
ld a, [wSavedVolume]
and a
- jr nz, .asm_7d21f
+ jr nz, .done
ld a, [rNR50]
ld [wSavedVolume], a
ld a, $77
- ld [rNR50], a
-.asm_7d21f
+ ld [rNR50], a ; full volume
+.done
ret
-Noise4_endchannel:
- endchannel
+Audio4_CryRet:
+ sound_ret
diff --git a/audio/headers/musicheaders1.asm b/audio/headers/musicheaders1.asm
index 665efceb..ef85eae6 100644
--- a/audio/headers/musicheaders1.asm
+++ b/audio/headers/musicheaders1.asm
@@ -1,115 +1,66 @@
Music_PalletTown::
- dbw ( $80 | CH0 ), Music_PalletTown_Ch1
- dbw CH1, Music_PalletTown_Ch2
- dbw CH2, Music_PalletTown_Ch3
+ audio_header Music_PalletTown, Ch1, Ch2, Ch3
Music_Pokecenter::
- dbw ( $80 | CH0 ), Music_Pokecenter_Ch1
- dbw CH1, Music_Pokecenter_Ch2
- dbw CH2, Music_Pokecenter_Ch3
+ audio_header Music_Pokecenter, Ch1, Ch2, Ch3
Music_Gym::
- dbw ( $80 | CH0 ), Music_Gym_Ch1
- dbw CH1, Music_Gym_Ch2
- dbw CH2, Music_Gym_Ch3
+ audio_header Music_Gym, Ch1, Ch2, Ch3
; Viridian City, Pewter City, Saffron City
Music_Cities1::
- dbw ( $C0 | CH0 ), Music_Cities1_Ch1
- dbw CH1, Music_Cities1_Ch2
- dbw CH2, Music_Cities1_Ch3
- dbw CH3, Music_Cities1_Ch4
+ audio_header Music_Cities1, Ch1, Ch2, Ch3, Ch4
; Cerulean City, Fuchsia City
Music_Cities2::
- dbw ( $80 | CH0 ), Music_Cities2_Ch1
- dbw CH1, Music_Cities2_Ch2
- dbw CH2, Music_Cities2_Ch3
+ audio_header Music_Cities2, Ch1, Ch2, Ch3
Music_Celadon::
- dbw ( $80 | CH0 ), Music_Celadon_Ch1
- dbw CH1, Music_Celadon_Ch2
- dbw CH2, Music_Celadon_Ch3
+ audio_header Music_Celadon, Ch1, Ch2, Ch3
Music_Cinnabar::
- dbw ( $80 | CH0 ), Music_Cinnabar_Ch1
- dbw CH1, Music_Cinnabar_Ch2
- dbw CH2, Music_Cinnabar_Ch3
+ audio_header Music_Cinnabar, Ch1, Ch2, Ch3
Music_Vermilion::
- dbw ( $C0 | CH0 ), Music_Vermilion_Ch1
- dbw CH1, Music_Vermilion_Ch2
- dbw CH2, Music_Vermilion_Ch3
- dbw CH3, Music_Vermilion_Ch4
+ audio_header Music_Vermilion, Ch1, Ch2, Ch3, Ch4
Music_Lavender::
- dbw ( $C0 | CH0 ), Music_Lavender_Ch1
- dbw CH1, Music_Lavender_Ch2
- dbw CH2, Music_Lavender_Ch3
- dbw CH3, Music_Lavender_Ch4
+ audio_header Music_Lavender, Ch1, Ch2, Ch3, Ch4
Music_SSAnne::
- dbw ( $80 | CH0 ), Music_SSAnne_Ch1
- dbw CH1, Music_SSAnne_Ch2
- dbw CH2, Music_SSAnne_Ch3
+ audio_header Music_SSAnne, Ch1, Ch2, Ch3
Music_MeetProfOak::
- dbw ( $80 | CH0 ), Music_MeetProfOak_Ch1
- dbw CH1, Music_MeetProfOak_Ch2
- dbw CH2, Music_MeetProfOak_Ch3
+ audio_header Music_MeetProfOak, Ch1, Ch2, Ch3
Music_MeetRival::
- dbw ( $80 | CH0 ), Music_MeetRival_Ch1
- dbw CH1, Music_MeetRival_Ch2
- dbw CH2, Music_MeetRival_Ch3
+ audio_header Music_MeetRival, Ch1, Ch2, Ch3
Music_MuseumGuy::
- dbw ( $C0 | CH0 ), Music_MuseumGuy_Ch1
- dbw CH1, Music_MuseumGuy_Ch2
- dbw CH2, Music_MuseumGuy_Ch3
- dbw CH3, Music_MuseumGuy_Ch4
+ audio_header Music_MuseumGuy, Ch1, Ch2, Ch3, Ch4
Music_SafariZone::
- dbw ( $80 | CH0 ), Music_SafariZone_Ch1
- dbw CH1, Music_SafariZone_Ch2
- dbw CH2, Music_SafariZone_Ch3
+ audio_header Music_SafariZone, Ch1, Ch2, Ch3
Music_PkmnHealed::
- dbw ( $80 | CH0 ), Music_PkmnHealed_Ch1
- dbw CH1, Music_PkmnHealed_Ch2
- dbw CH2, Music_PkmnHealed_Ch3
+ audio_header Music_PkmnHealed, Ch1, Ch2, Ch3
; Routes 1 and 2
Music_Routes1::
- dbw ( $C0 | CH0 ), Music_Routes1_Ch1
- dbw CH1, Music_Routes1_Ch2
- dbw CH2, Music_Routes1_Ch3
- dbw CH3, Music_Routes1_Ch4
+ audio_header Music_Routes1, Ch1, Ch2, Ch3, Ch4
; Routes 24 and 25
Music_Routes2::
- dbw ( $C0 | CH0 ), Music_Routes2_Ch1
- dbw CH1, Music_Routes2_Ch2
- dbw CH2, Music_Routes2_Ch3
- dbw CH3, Music_Routes2_Ch4
+ audio_header Music_Routes2, Ch1, Ch2, Ch3, Ch4
; Routes 3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 20, 21, 22
Music_Routes3::
- dbw ( $C0 | CH0 ), Music_Routes3_Ch1
- dbw CH1, Music_Routes3_Ch2
- dbw CH2, Music_Routes3_Ch3
- dbw CH3, Music_Routes3_Ch4
+ audio_header Music_Routes3, Ch1, Ch2, Ch3, Ch4
; Routes 11, 12, 13, 14, 15
Music_Routes4::
- dbw ( $C0 | CH0 ), Music_Routes4_Ch1
- dbw CH1, Music_Routes4_Ch2
- dbw CH2, Music_Routes4_Ch3
- dbw CH3, Music_Routes4_Ch4
+ audio_header Music_Routes4, Ch1, Ch2, Ch3, Ch4
; Route 23, Indigo Plateau
Music_IndigoPlateau::
- dbw ( $C0 | CH0 ), Music_IndigoPlateau_Ch1
- dbw CH1, Music_IndigoPlateau_Ch2
- dbw CH2, Music_IndigoPlateau_Ch3
- dbw CH3, Music_IndigoPlateau_Ch4
+ audio_header Music_IndigoPlateau, Ch1, Ch2, Ch3, Ch4
diff --git a/audio/headers/musicheaders2.asm b/audio/headers/musicheaders2.asm
index 7df3f8bf..d6cca9a9 100644
--- a/audio/headers/musicheaders2.asm
+++ b/audio/headers/musicheaders2.asm
@@ -1,34 +1,20 @@
Music_GymLeaderBattle::
- dbw ( $80 | CH0 ), Music_GymLeaderBattle_Ch1
- dbw CH1, Music_GymLeaderBattle_Ch2
- dbw CH2, Music_GymLeaderBattle_Ch3
+ audio_header Music_GymLeaderBattle, Ch1, Ch2, Ch3
Music_TrainerBattle::
- dbw ( $80 | CH0 ), Music_TrainerBattle_Ch1
- dbw CH1, Music_TrainerBattle_Ch2
- dbw CH2, Music_TrainerBattle_Ch3
+ audio_header Music_TrainerBattle, Ch1, Ch2, Ch3
Music_WildBattle::
- dbw ( $80 | CH0 ), Music_WildBattle_Ch1
- dbw CH1, Music_WildBattle_Ch2
- dbw CH2, Music_WildBattle_Ch3
+ audio_header Music_WildBattle, Ch1, Ch2, Ch3
Music_FinalBattle::
- dbw ( $80 | CH0 ), Music_FinalBattle_Ch1
- dbw CH1, Music_FinalBattle_Ch2
- dbw CH2, Music_FinalBattle_Ch3
+ audio_header Music_FinalBattle, Ch1, Ch2, Ch3
Music_DefeatedTrainer::
- dbw ( $80 | CH0 ), Music_DefeatedTrainer_Ch1
- dbw CH1, Music_DefeatedTrainer_Ch2
- dbw CH2, Music_DefeatedTrainer_Ch3
+ audio_header Music_DefeatedTrainer, Ch1, Ch2, Ch3
Music_DefeatedWildMon::
- dbw ( $80 | CH0 ), Music_DefeatedWildMon_Ch1
- dbw CH1, Music_DefeatedWildMon_Ch2
- dbw CH2, Music_DefeatedWildMon_Ch3
+ audio_header Music_DefeatedWildMon, Ch1, Ch2, Ch3
Music_DefeatedGymLeader::
- dbw ( $80 | CH0 ), Music_DefeatedGymLeader_Ch1
- dbw CH1, Music_DefeatedGymLeader_Ch2
- dbw CH2, Music_DefeatedGymLeader_Ch3
+ audio_header Music_DefeatedGymLeader, Ch1, Ch2, Ch3
diff --git a/audio/headers/musicheaders3.asm b/audio/headers/musicheaders3.asm
index c694be9b..51c67966 100644
--- a/audio/headers/musicheaders3.asm
+++ b/audio/headers/musicheaders3.asm
@@ -1,97 +1,56 @@
Music_TitleScreen::
- dbw ( $C0 | CH0 ), Music_TitleScreen_Ch1
- dbw CH1, Music_TitleScreen_Ch2
- dbw CH2, Music_TitleScreen_Ch3
- dbw CH3, Music_TitleScreen_Ch4
+ audio_header Music_TitleScreen, Ch1, Ch2, Ch3, Ch4
Music_Credits::
- dbw ( $80 | CH0 ), Music_Credits_Ch1
- dbw CH1, Music_Credits_Ch2
- dbw CH2, Music_Credits_Ch3
+ audio_header Music_Credits, Ch1, Ch2, Ch3
Music_HallOfFame::
- dbw ( $80 | CH0 ), Music_HallOfFame_Ch1
- dbw CH1, Music_HallOfFame_Ch2
- dbw CH2, Music_HallOfFame_Ch3
+ audio_header Music_HallOfFame, Ch1, Ch2, Ch3
Music_OaksLab::
- dbw ( $80 | CH0 ), Music_OaksLab_Ch1
- dbw CH1, Music_OaksLab_Ch2
- dbw CH2, Music_OaksLab_Ch3
+ audio_header Music_OaksLab, Ch1, Ch2, Ch3
Music_JigglypuffSong::
- dbw $40, Music_JigglypuffSong_Ch1
- dbw CH1, Music_JigglypuffSong_Ch2
+ audio_header Music_JigglypuffSong, Ch1, Ch2
Music_BikeRiding::
- dbw ( $C0 | CH0 ), Music_BikeRiding_Ch1
- dbw CH1, Music_BikeRiding_Ch2
- dbw CH2, Music_BikeRiding_Ch3
- dbw CH3, Music_BikeRiding_Ch4
+ audio_header Music_BikeRiding, Ch1, Ch2, Ch3, Ch4
Music_Surfing::
- dbw ( $80 | CH0 ), Music_Surfing_Ch1
- dbw CH1, Music_Surfing_Ch2
- dbw CH2, Music_Surfing_Ch3
+ audio_header Music_Surfing, Ch1, Ch2, Ch3
Music_GameCorner::
- dbw ( $80 | CH0 ), Music_GameCorner_Ch1
- dbw CH1, Music_GameCorner_Ch2
- dbw CH2, Music_GameCorner_Ch3
+ audio_header Music_GameCorner, Ch1, Ch2, Ch3
-Music_IntroBattle::
- dbw ( $80 | CH0 ), Music_YellowIntro_Ch1
- dbw CH1, Music_YellowIntro_Ch2
- dbw CH2, Music_YellowIntro_Ch3
+Music_YellowIntro::
+ audio_header Music_YellowIntro, Ch1, Ch2, Ch3
-; Power Plant, Unknown Dungeon, Rocket HQ
+; Power Plant, Cerulean Cave, Rocket HQ
Music_Dungeon1::
- dbw ( $C0 | CH0 ), Music_Dungeon1_Ch1
- dbw CH1, Music_Dungeon1_Ch2
- dbw CH2, Music_Dungeon1_Ch3
- dbw CH3, Music_Dungeon1_Ch4
+ audio_header Music_Dungeon1, Ch1, Ch2, Ch3, Ch4
; Viridian Forest, Seafoam Islands
Music_Dungeon2::
- dbw ( $C0 | CH0 ), Music_Dungeon2_Ch1
- dbw CH1, Music_Dungeon2_Ch2
- dbw CH2, Music_Dungeon2_Ch3
- dbw CH3, Music_Dungeon2_Ch4
+ audio_header Music_Dungeon2, Ch1, Ch2, Ch3, Ch4
; Mt. Moon, Rock Tunnel, Victory Road
Music_Dungeon3::
- dbw ( $C0 | CH0 ), Music_Dungeon3_Ch1
- dbw CH1, Music_Dungeon3_Ch2
- dbw CH2, Music_Dungeon3_Ch3
- dbw CH3, Music_Dungeon3_Ch4
+ audio_header Music_Dungeon3, Ch1, Ch2, Ch3, Ch4
Music_CinnabarMansion::
- dbw ( $C0 | CH0 ), Music_CinnabarMansion_Ch1
- dbw CH1, Music_CinnabarMansion_Ch2
- dbw CH2, Music_CinnabarMansion_Ch3
- dbw CH3, Music_CinnabarMansion_Ch4
+ audio_header Music_CinnabarMansion, Ch1, Ch2, Ch3, Ch4
Music_PokemonTower::
- dbw ( $80 | CH0 ), Music_PokemonTower_Ch1
- dbw CH1, Music_PokemonTower_Ch2
- dbw CH2, Music_PokemonTower_Ch3
+ audio_header Music_PokemonTower, Ch1, Ch2, Ch3
Music_SilphCo::
- dbw ( $80 | CH0 ), Music_SilphCo_Ch1
- dbw CH1, Music_SilphCo_Ch2
- dbw CH2, Music_SilphCo_Ch3
+ audio_header Music_SilphCo, Ch1, Ch2, Ch3
Music_MeetEvilTrainer::
- dbw ( $80 | CH0 ), Music_MeetEvilTrainer_Ch1
- dbw CH1, Music_MeetEvilTrainer_Ch2
- dbw CH2, Music_MeetEvilTrainer_Ch3
+ audio_header Music_MeetEvilTrainer, Ch1, Ch2, Ch3
Music_MeetFemaleTrainer::
- dbw ( $80 | CH0 ), Music_MeetFemaleTrainer_Ch1
- dbw CH1, Music_MeetFemaleTrainer_Ch2
- dbw CH2, Music_MeetFemaleTrainer_Ch3
+ audio_header Music_MeetFemaleTrainer, Ch1, Ch2, Ch3
Music_MeetMaleTrainer::
- dbw ( $80 | CH0 ), Music_MeetMaleTrainer_Ch1
- dbw CH1, Music_MeetMaleTrainer_Ch2
- dbw CH2, Music_MeetMaleTrainer_Ch3
+ audio_header Music_MeetMaleTrainer, Ch1, Ch2, Ch3
diff --git a/audio/headers/musicheaders4.asm b/audio/headers/musicheaders4.asm
index be5d822a..8c537ff9 100644
--- a/audio/headers/musicheaders4.asm
+++ b/audio/headers/musicheaders4.asm
@@ -1,18 +1,11 @@
Music_SurfingPikachu::
- dbw ((3 - 1) << 6) | CH0, Music_SurfingPikachu_Ch1
- dbw CH1, Music_SurfingPikachu_Ch2
- dbw CH2, Music_SurfingPikachu_Ch3
+ audio_header Music_SurfingPikachu, Ch1, Ch2, Ch3
Music_MeetJessieJames::
- dbw ((3 - 1) << 6) | CH0, Music_MeetJessieJames_Ch1
- dbw CH1, Music_MeetJessieJames_Ch2
- dbw CH2, Music_MeetJessieJames_Ch3
+ audio_header Music_MeetJessieJames, Ch1, Ch2, Ch3
Music_YellowUnusedSong::
- dbw ((4 - 1) << 6) | CH0, Music_YellowUnusedSong_Ch1
- dbw CH1, Music_YellowUnusedSong_Ch2
- dbw CH2, Music_YellowUnusedSong_Ch3
- dbw CH3, Music_YellowUnusedSong_Ch4
+ audio_header Music_YellowUnusedSong, Ch1, Ch2, Ch3, Ch4
Music_GBPrinter::
- dbw ((1 - 1) << 6) | CH2, Music_GBPrinter_Ch3
+ audio_header Music_GBPrinter, Ch3
diff --git a/audio/headers/sfxheaders1.asm b/audio/headers/sfxheaders1.asm
index fdbcb5f3..de0d3b89 100644
--- a/audio/headers/sfxheaders1.asm
+++ b/audio/headers/sfxheaders1.asm
@@ -1,377 +1,288 @@
SFX_Headers_1::
dbw -1, -1 ; padding
-SFX_Snare1_1::
- dbw CH7, SFX_Snare1_1_Ch1
+SFX_Noise_Instrument01_1::
+ audio_header SFX_Noise_Instrument01_1, Ch8
-SFX_Snare2_1::
- dbw CH7, SFX_Snare2_1_Ch1
+SFX_Noise_Instrument02_1::
+ audio_header SFX_Noise_Instrument02_1, Ch8
-SFX_Snare3_1::
- dbw CH7, SFX_Snare3_1_Ch1
+SFX_Noise_Instrument03_1::
+ audio_header SFX_Noise_Instrument03_1, Ch8
-SFX_Snare4_1::
- dbw CH7, SFX_Snare4_1_Ch1
+SFX_Noise_Instrument04_1::
+ audio_header SFX_Noise_Instrument04_1, Ch8
-SFX_Snare5_1::
- dbw CH7, SFX_Snare5_1_Ch1
+SFX_Noise_Instrument05_1::
+ audio_header SFX_Noise_Instrument05_1, Ch8
-SFX_Triangle1_1::
- dbw CH7, SFX_Triangle1_1_Ch1
+SFX_Noise_Instrument06_1::
+ audio_header SFX_Noise_Instrument06_1, Ch8
-SFX_Triangle2_1::
- dbw CH7, SFX_Triangle2_1_Ch1
+SFX_Noise_Instrument07_1::
+ audio_header SFX_Noise_Instrument07_1, Ch8
-SFX_Snare6_1::
- dbw CH7, SFX_Snare6_1_Ch1
+SFX_Noise_Instrument08_1::
+ audio_header SFX_Noise_Instrument08_1, Ch8
-SFX_Snare7_1::
- dbw CH7, SFX_Snare7_1_Ch1
+SFX_Noise_Instrument09_1::
+ audio_header SFX_Noise_Instrument09_1, Ch8
-SFX_Snare8_1::
- dbw CH7, SFX_Snare8_1_Ch1
+SFX_Noise_Instrument10_1::
+ audio_header SFX_Noise_Instrument10_1, Ch8
-SFX_Snare9_1::
- dbw CH7, SFX_Snare9_1_Ch1
+SFX_Noise_Instrument11_1::
+ audio_header SFX_Noise_Instrument11_1, Ch8
-SFX_Cymbal1_1::
- dbw CH7, SFX_Cymbal1_1_Ch1
+SFX_Noise_Instrument12_1::
+ audio_header SFX_Noise_Instrument12_1, Ch8
-SFX_Cymbal2_1::
- dbw CH7, SFX_Cymbal2_1_Ch1
+SFX_Noise_Instrument13_1::
+ audio_header SFX_Noise_Instrument13_1, Ch8
-SFX_Cymbal3_1::
- dbw CH7, SFX_Cymbal3_1_Ch1
+SFX_Noise_Instrument14_1::
+ audio_header SFX_Noise_Instrument14_1, Ch8
-SFX_Muted_Snare1_1::
- dbw CH7, SFX_Muted_Snare1_1_Ch1
+SFX_Noise_Instrument15_1::
+ audio_header SFX_Noise_Instrument15_1, Ch8
-SFX_Triangle3_1::
- dbw CH7, SFX_Triangle3_1_Ch1
+SFX_Noise_Instrument16_1::
+ audio_header SFX_Noise_Instrument16_1, Ch8
-SFX_Muted_Snare2_1::
- dbw CH7, SFX_Muted_Snare2_1_Ch1
+SFX_Noise_Instrument17_1::
+ audio_header SFX_Noise_Instrument17_1, Ch8
-SFX_Muted_Snare3_1::
- dbw CH7, SFX_Muted_Snare3_1_Ch1
+SFX_Noise_Instrument18_1::
+ audio_header SFX_Noise_Instrument18_1, Ch8
-SFX_Muted_Snare4_1::
- dbw CH7, SFX_Muted_Snare4_1_Ch1
+SFX_Noise_Instrument19_1::
+ audio_header SFX_Noise_Instrument19_1, Ch8
SFX_Cry00_1::
- dbw ( $80 | CH4 ), SFX_Cry00_1_Ch1
- dbw CH5, SFX_Cry00_1_Ch2
- dbw CH7, SFX_Cry00_1_Ch3
+ audio_header SFX_Cry00_1, Ch5, Ch6, Ch8
SFX_Cry01_1::
- dbw ( $80 | CH4 ), SFX_Cry01_1_Ch1
- dbw CH5, SFX_Cry01_1_Ch2
- dbw CH7, SFX_Cry01_1_Ch3
+ audio_header SFX_Cry01_1, Ch5, Ch6, Ch8
SFX_Cry02_1::
- dbw ( $80 | CH4 ), SFX_Cry02_1_Ch1
- dbw CH5, SFX_Cry02_1_Ch2
- dbw CH7, SFX_Cry02_1_Ch3
+ audio_header SFX_Cry02_1, Ch5, Ch6, Ch8
SFX_Cry03_1::
- dbw ( $80 | CH4 ), SFX_Cry03_1_Ch1
- dbw CH5, SFX_Cry03_1_Ch2
- dbw CH7, SFX_Cry03_1_Ch3
+ audio_header SFX_Cry03_1, Ch5, Ch6, Ch8
SFX_Cry04_1::
- dbw ( $80 | CH4 ), SFX_Cry04_1_Ch1
- dbw CH5, SFX_Cry04_1_Ch2
- dbw CH7, SFX_Cry04_1_Ch3
+ audio_header SFX_Cry04_1, Ch5, Ch6, Ch8
SFX_Cry05_1::
- dbw ( $80 | CH4 ), SFX_Cry05_1_Ch1
- dbw CH5, SFX_Cry05_1_Ch2
- dbw CH7, SFX_Cry05_1_Ch3
+ audio_header SFX_Cry05_1, Ch5, Ch6, Ch8
SFX_Cry06_1::
- dbw ( $80 | CH4 ), SFX_Cry06_1_Ch1
- dbw CH5, SFX_Cry06_1_Ch2
- dbw CH7, SFX_Cry06_1_Ch3
+ audio_header SFX_Cry06_1, Ch5, Ch6, Ch8
SFX_Cry07_1::
- dbw ( $80 | CH4 ), SFX_Cry07_1_Ch1
- dbw CH5, SFX_Cry07_1_Ch2
- dbw CH7, SFX_Cry07_1_Ch3
+ audio_header SFX_Cry07_1, Ch5, Ch6, Ch8
SFX_Cry08_1::
- dbw ( $80 | CH4 ), SFX_Cry08_1_Ch1
- dbw CH5, SFX_Cry08_1_Ch2
- dbw CH7, SFX_Cry08_1_Ch3
+ audio_header SFX_Cry08_1, Ch5, Ch6, Ch8
SFX_Cry09_1::
- dbw ( $80 | CH4 ), SFX_Cry09_1_Ch1
- dbw CH5, SFX_Cry09_1_Ch2
- dbw CH7, SFX_Cry09_1_Ch3
+ audio_header SFX_Cry09_1, Ch5, Ch6, Ch8
SFX_Cry0A_1::
- dbw ( $80 | CH4 ), SFX_Cry0A_1_Ch1
- dbw CH5, SFX_Cry0A_1_Ch2
- dbw CH7, SFX_Cry0A_1_Ch3
+ audio_header SFX_Cry0A_1, Ch5, Ch6, Ch8
SFX_Cry0B_1::
- dbw ( $80 | CH4 ), SFX_Cry0B_1_Ch1
- dbw CH5, SFX_Cry0B_1_Ch2
- dbw CH7, SFX_Cry0B_1_Ch3
+ audio_header SFX_Cry0B_1, Ch5, Ch6, Ch8
SFX_Cry0C_1::
- dbw ( $80 | CH4 ), SFX_Cry0C_1_Ch1
- dbw CH5, SFX_Cry0C_1_Ch2
- dbw CH7, SFX_Cry0C_1_Ch3
+ audio_header SFX_Cry0C_1, Ch5, Ch6, Ch8
SFX_Cry0D_1::
- dbw ( $80 | CH4 ), SFX_Cry0D_1_Ch1
- dbw CH5, SFX_Cry0D_1_Ch2
- dbw CH7, SFX_Cry0D_1_Ch3
+ audio_header SFX_Cry0D_1, Ch5, Ch6, Ch8
SFX_Cry0E_1::
- dbw ( $80 | CH4 ), SFX_Cry0E_1_Ch1
- dbw CH5, SFX_Cry0E_1_Ch2
- dbw CH7, SFX_Cry0E_1_Ch3
+ audio_header SFX_Cry0E_1, Ch5, Ch6, Ch8
SFX_Cry0F_1::
- dbw ( $80 | CH4 ), SFX_Cry0F_1_Ch1
- dbw CH5, SFX_Cry0F_1_Ch2
- dbw CH7, SFX_Cry0F_1_Ch3
+ audio_header SFX_Cry0F_1, Ch5, Ch6, Ch8
SFX_Cry10_1::
- dbw ( $80 | CH4 ), SFX_Cry10_1_Ch1
- dbw CH5, SFX_Cry10_1_Ch2
- dbw CH7, SFX_Cry10_1_Ch3
+ audio_header SFX_Cry10_1, Ch5, Ch6, Ch8
SFX_Cry11_1::
- dbw ( $80 | CH4 ), SFX_Cry11_1_Ch1
- dbw CH5, SFX_Cry11_1_Ch2
- dbw CH7, SFX_Cry11_1_Ch3
+ audio_header SFX_Cry11_1, Ch5, Ch6, Ch8
SFX_Cry12_1::
- dbw ( $80 | CH4 ), SFX_Cry12_1_Ch1
- dbw CH5, SFX_Cry12_1_Ch2
- dbw CH7, SFX_Cry12_1_Ch3
+ audio_header SFX_Cry12_1, Ch5, Ch6, Ch8
SFX_Cry13_1::
- dbw ( $80 | CH4 ), SFX_Cry13_1_Ch1
- dbw CH5, SFX_Cry13_1_Ch2
- dbw CH7, SFX_Cry13_1_Ch3
+ audio_header SFX_Cry13_1, Ch5, Ch6, Ch8
SFX_Cry14_1::
- dbw ( $80 | CH4 ), SFX_Cry14_1_Ch1
- dbw CH5, SFX_Cry14_1_Ch2
- dbw CH7, SFX_Cry14_1_Ch3
+ audio_header SFX_Cry14_1, Ch5, Ch6, Ch8
SFX_Cry15_1::
- dbw ( $80 | CH4 ), SFX_Cry15_1_Ch1
- dbw CH5, SFX_Cry15_1_Ch2
- dbw CH7, SFX_Cry15_1_Ch3
+ audio_header SFX_Cry15_1, Ch5, Ch6, Ch8
SFX_Cry16_1::
- dbw ( $80 | CH4 ), SFX_Cry16_1_Ch1
- dbw CH5, SFX_Cry16_1_Ch2
- dbw CH7, SFX_Cry16_1_Ch3
+ audio_header SFX_Cry16_1, Ch5, Ch6, Ch8
SFX_Cry17_1::
- dbw ( $80 | CH4 ), SFX_Cry17_1_Ch1
- dbw CH5, SFX_Cry17_1_Ch2
- dbw CH7, SFX_Cry17_1_Ch3
+ audio_header SFX_Cry17_1, Ch5, Ch6, Ch8
SFX_Cry18_1::
- dbw ( $80 | CH4 ), SFX_Cry18_1_Ch1
- dbw CH5, SFX_Cry18_1_Ch2
- dbw CH7, SFX_Cry18_1_Ch3
+ audio_header SFX_Cry18_1, Ch5, Ch6, Ch8
SFX_Cry19_1::
- dbw ( $80 | CH4 ), SFX_Cry19_1_Ch1
- dbw CH5, SFX_Cry19_1_Ch2
- dbw CH7, SFX_Cry19_1_Ch3
+ audio_header SFX_Cry19_1, Ch5, Ch6, Ch8
SFX_Cry1A_1::
- dbw ( $80 | CH4 ), SFX_Cry1A_1_Ch1
- dbw CH5, SFX_Cry1A_1_Ch2
- dbw CH7, SFX_Cry1A_1_Ch3
+ audio_header SFX_Cry1A_1, Ch5, Ch6, Ch8
SFX_Cry1B_1::
- dbw ( $80 | CH4 ), SFX_Cry1B_1_Ch1
- dbw CH5, SFX_Cry1B_1_Ch2
- dbw CH7, SFX_Cry1B_1_Ch3
+ audio_header SFX_Cry1B_1, Ch5, Ch6, Ch8
SFX_Cry1C_1::
- dbw ( $80 | CH4 ), SFX_Cry1C_1_Ch1
- dbw CH5, SFX_Cry1C_1_Ch2
- dbw CH7, SFX_Cry1C_1_Ch3
+ audio_header SFX_Cry1C_1, Ch5, Ch6, Ch8
SFX_Cry1D_1::
- dbw ( $80 | CH4 ), SFX_Cry1D_1_Ch1
- dbw CH5, SFX_Cry1D_1_Ch2
- dbw CH7, SFX_Cry1D_1_Ch3
+ audio_header SFX_Cry1D_1, Ch5, Ch6, Ch8
SFX_Cry1E_1::
- dbw ( $80 | CH4 ), SFX_Cry1E_1_Ch1
- dbw CH5, SFX_Cry1E_1_Ch2
- dbw CH7, SFX_Cry1E_1_Ch3
+ audio_header SFX_Cry1E_1, Ch5, Ch6, Ch8
SFX_Cry1F_1::
- dbw ( $80 | CH4 ), SFX_Cry1F_1_Ch1
- dbw CH5, SFX_Cry1F_1_Ch2
- dbw CH7, SFX_Cry1F_1_Ch3
+ audio_header SFX_Cry1F_1, Ch5, Ch6, Ch8
SFX_Cry20_1::
- dbw ( $80 | CH4 ), SFX_Cry20_1_Ch1
- dbw CH5, SFX_Cry20_1_Ch2
- dbw CH7, SFX_Cry20_1_Ch3
+ audio_header SFX_Cry20_1, Ch5, Ch6, Ch8
SFX_Cry21_1::
- dbw ( $80 | CH4 ), SFX_Cry21_1_Ch1
- dbw CH5, SFX_Cry21_1_Ch2
- dbw CH7, SFX_Cry21_1_Ch3
+ audio_header SFX_Cry21_1, Ch5, Ch6, Ch8
SFX_Cry22_1::
- dbw ( $80 | CH4 ), SFX_Cry22_1_Ch1
- dbw CH5, SFX_Cry22_1_Ch2
- dbw CH7, SFX_Cry22_1_Ch3
+ audio_header SFX_Cry22_1, Ch5, Ch6, Ch8
SFX_Cry23_1::
- dbw ( $80 | CH4 ), SFX_Cry23_1_Ch1
- dbw CH5, SFX_Cry23_1_Ch2
- dbw CH7, SFX_Cry23_1_Ch3
+ audio_header SFX_Cry23_1, Ch5, Ch6, Ch8
SFX_Cry24_1::
- dbw ( $80 | CH4 ), SFX_Cry24_1_Ch1
- dbw CH5, SFX_Cry24_1_Ch2
- dbw CH7, SFX_Cry24_1_Ch3
+ audio_header SFX_Cry24_1, Ch5, Ch6, Ch8
SFX_Cry25_1::
- dbw ( $80 | CH4 ), SFX_Cry25_1_Ch1
- dbw CH5, SFX_Cry25_1_Ch2
- dbw CH7, SFX_Cry25_1_Ch3
+ audio_header SFX_Cry25_1, Ch5, Ch6, Ch8
SFX_Get_Item1_1::
- dbw ( $80 | CH4 ), SFX_Get_Item1_1_Ch1
- dbw CH5, SFX_Get_Item1_1_Ch2
- dbw CH6, SFX_Get_Item1_1_Ch3
+ audio_header SFX_Get_Item1_1, Ch5, Ch6, Ch7
SFX_Get_Item2_1::
- dbw ( $80 | CH4 ), SFX_Get_Item2_1_Ch1
- dbw CH5, SFX_Get_Item2_1_Ch2
- dbw CH6, SFX_Get_Item2_1_Ch3
+ audio_header SFX_Get_Item2_1, Ch5, Ch6, Ch7
SFX_Tink_1::
- dbw CH4, SFX_Tink_1_Ch1
+ audio_header SFX_Tink_1, Ch5
SFX_Heal_HP_1::
- dbw CH4, SFX_Heal_HP_1_Ch1
+ audio_header SFX_Heal_HP_1, Ch5
SFX_Heal_Ailment_1::
- dbw CH4, SFX_Heal_Ailment_1_Ch1
+ audio_header SFX_Heal_Ailment_1, Ch5
SFX_Start_Menu_1::
- dbw CH7, SFX_Start_Menu_1_Ch1
+ audio_header SFX_Start_Menu_1, Ch8
SFX_Press_AB_1::
- dbw CH4, SFX_Press_AB_1_Ch1
+ audio_header SFX_Press_AB_1, Ch5
SFX_Pokedex_Rating_1::
- dbw ( $80 | CH4 ), SFX_Pokedex_Rating_1_Ch1
- dbw CH5, SFX_Pokedex_Rating_1_Ch2
- dbw CH6, SFX_Pokedex_Rating_1_Ch3
+ audio_header SFX_Pokedex_Rating_1, Ch5, Ch6, Ch7
SFX_Get_Key_Item_1::
- dbw ( $80 | CH4 ), SFX_Get_Key_Item_1_Ch1
- dbw CH5, SFX_Get_Key_Item_1_Ch2
- dbw CH6, SFX_Get_Key_Item_1_Ch3
+ audio_header SFX_Get_Key_Item_1, Ch5, Ch6, Ch7
SFX_Poisoned_1::
- dbw CH4, SFX_Poisoned_1_Ch1
+ audio_header SFX_Poisoned_1, Ch5
SFX_Trade_Machine_1::
- dbw CH4, SFX_Trade_Machine_1_Ch1
+ audio_header SFX_Trade_Machine_1, Ch5
SFX_Turn_On_PC_1::
- dbw CH4, SFX_Turn_On_PC_1_Ch1
+ audio_header SFX_Turn_On_PC_1, Ch5
SFX_Turn_Off_PC_1::
- dbw CH4, SFX_Turn_Off_PC_1_Ch1
+ audio_header SFX_Turn_Off_PC_1, Ch5
SFX_Enter_PC_1::
- dbw CH4, SFX_Enter_PC_1_Ch1
+ audio_header SFX_Enter_PC_1, Ch5
SFX_Shrink_1::
- dbw CH4, SFX_Shrink_1_Ch1
+ audio_header SFX_Shrink_1, Ch5
SFX_Switch_1::
- dbw CH4, SFX_Switch_1_Ch1
+ audio_header SFX_Switch_1, Ch5
SFX_Healing_Machine_1::
- dbw CH4, SFX_Healing_Machine_1_Ch1
+ audio_header SFX_Healing_Machine_1, Ch5
SFX_Teleport_Exit1_1::
- dbw CH4, SFX_Teleport_Exit1_1_Ch1
+ audio_header SFX_Teleport_Exit1_1, Ch5
SFX_Teleport_Enter1_1::
- dbw CH4, SFX_Teleport_Enter1_1_Ch1
+ audio_header SFX_Teleport_Enter1_1, Ch5
SFX_Teleport_Exit2_1::
- dbw CH4, SFX_Teleport_Exit2_1_Ch1
+ audio_header SFX_Teleport_Exit2_1, Ch5
SFX_Ledge_1::
- dbw CH4, SFX_Ledge_1_Ch1
+ audio_header SFX_Ledge_1, Ch5
SFX_Teleport_Enter2_1::
- dbw CH7, SFX_Teleport_Enter2_1_Ch1
+ audio_header SFX_Teleport_Enter2_1, Ch8
SFX_Fly_1::
- dbw CH7, SFX_Fly_1_Ch1
+ audio_header SFX_Fly_1, Ch8
SFX_Denied_1::
- dbw ( $40 | CH4 ), SFX_Denied_1_Ch1
- dbw CH5, SFX_Denied_1_Ch2
+ audio_header SFX_Denied_1, Ch5, Ch6
SFX_Arrow_Tiles_1::
- dbw CH4, SFX_Arrow_Tiles_1_Ch1
+ audio_header SFX_Arrow_Tiles_1, Ch5
SFX_Push_Boulder_1::
- dbw CH7, SFX_Push_Boulder_1_Ch1
+ audio_header SFX_Push_Boulder_1, Ch8
SFX_SS_Anne_Horn_1::
- dbw ( $40 | CH4 ), SFX_SS_Anne_Horn_1_Ch1
- dbw CH5, SFX_SS_Anne_Horn_1_Ch2
+ audio_header SFX_SS_Anne_Horn_1, Ch5, Ch6
SFX_Withdraw_Deposit_1::
- dbw CH4, SFX_Withdraw_Deposit_1_Ch1
+ audio_header SFX_Withdraw_Deposit_1, Ch5
SFX_Cut_1::
- dbw CH7, SFX_Cut_1_Ch1
+ audio_header SFX_Cut_1, Ch8
SFX_Go_Inside_1::
- dbw CH7, SFX_Go_Inside_1_Ch1
+ audio_header SFX_Go_Inside_1, Ch8
SFX_Swap_1::
- dbw ( $40 | CH4 ), SFX_Swap_1_Ch1
- dbw CH5, SFX_Swap_1_Ch2
+ audio_header SFX_Swap_1, Ch5, Ch6
SFX_59_1::
- dbw ( $40 | CH4 ), SFX_59_1_Ch1
- dbw CH5, SFX_59_1_Ch2
+ audio_header SFX_59_1, Ch5, Ch6
SFX_Purchase_1::
- dbw ( $40 | CH4 ), SFX_Purchase_1_Ch1
- dbw CH5, SFX_Purchase_1_Ch2
+ audio_header SFX_Purchase_1, Ch5, Ch6
SFX_Collision_1::
- dbw CH4, SFX_Collision_1_Ch1
+ audio_header SFX_Collision_1, Ch5
SFX_Go_Outside_1::
- dbw CH7, SFX_Go_Outside_1_Ch1
+ audio_header SFX_Go_Outside_1, Ch8
SFX_Save_1::
- dbw ( $40 | CH4 ), SFX_Save_1_Ch1
- dbw CH5, SFX_Save_1_Ch2
+ audio_header SFX_Save_1, Ch5, Ch6
+; the Pokeflute sound effect directly hijacks channel 3
SFX_Pokeflute::
- dbw CH2, SFX_Pokeflute_Ch1
+ audio_header SFX_Pokeflute, Ch3
SFX_Safari_Zone_PA::
- dbw CH4, SFX_Safari_Zone_PA_Ch1
+ audio_header SFX_Safari_Zone_PA, Ch5
diff --git a/audio/headers/sfxheaders2.asm b/audio/headers/sfxheaders2.asm
index 2f517d10..eb8eb4c1 100644
--- a/audio/headers/sfxheaders2.asm
+++ b/audio/headers/sfxheaders2.asm
@@ -1,473 +1,359 @@
SFX_Headers_2::
dbw -1, -1 ; padding
-SFX_Snare1_2::
- dbw CH7, SFX_Snare1_2_Ch1
+SFX_Noise_Instrument01_2::
+ audio_header SFX_Noise_Instrument01_2, Ch8
-SFX_Snare2_2::
- dbw CH7, SFX_Snare2_2_Ch1
+SFX_Noise_Instrument02_2::
+ audio_header SFX_Noise_Instrument02_2, Ch8
-SFX_Snare3_2::
- dbw CH7, SFX_Snare3_2_Ch1
+SFX_Noise_Instrument03_2::
+ audio_header SFX_Noise_Instrument03_2, Ch8
-SFX_Snare4_2::
- dbw CH7, SFX_Snare4_2_Ch1
+SFX_Noise_Instrument04_2::
+ audio_header SFX_Noise_Instrument04_2, Ch8
-SFX_Snare5_2::
- dbw CH7, SFX_Snare5_2_Ch1
+SFX_Noise_Instrument05_2::
+ audio_header SFX_Noise_Instrument05_2, Ch8
-SFX_Triangle1_2::
- dbw CH7, SFX_Triangle1_2_Ch1
+SFX_Noise_Instrument06_2::
+ audio_header SFX_Noise_Instrument06_2, Ch8
-SFX_Triangle2_2::
- dbw CH7, SFX_Triangle2_2_Ch1
+SFX_Noise_Instrument07_2::
+ audio_header SFX_Noise_Instrument07_2, Ch8
-SFX_Snare6_2::
- dbw CH7, SFX_Snare6_2_Ch1
+SFX_Noise_Instrument08_2::
+ audio_header SFX_Noise_Instrument08_2, Ch8
-SFX_Snare7_2::
- dbw CH7, SFX_Snare7_2_Ch1
+SFX_Noise_Instrument09_2::
+ audio_header SFX_Noise_Instrument09_2, Ch8
-SFX_Snare8_2::
- dbw CH7, SFX_Snare8_2_Ch1
+SFX_Noise_Instrument10_2::
+ audio_header SFX_Noise_Instrument10_2, Ch8
-SFX_Snare9_2::
- dbw CH7, SFX_Snare9_2_Ch1
+SFX_Noise_Instrument11_2::
+ audio_header SFX_Noise_Instrument11_2, Ch8
-SFX_Cymbal1_2::
- dbw CH7, SFX_Cymbal1_2_Ch1
+SFX_Noise_Instrument12_2::
+ audio_header SFX_Noise_Instrument12_2, Ch8
-SFX_Cymbal2_2::
- dbw CH7, SFX_Cymbal2_2_Ch1
+SFX_Noise_Instrument13_2::
+ audio_header SFX_Noise_Instrument13_2, Ch8
-SFX_Cymbal3_2::
- dbw CH7, SFX_Cymbal3_2_Ch1
+SFX_Noise_Instrument14_2::
+ audio_header SFX_Noise_Instrument14_2, Ch8
-SFX_Muted_Snare1_2::
- dbw CH7, SFX_Muted_Snare1_2_Ch1
+SFX_Noise_Instrument15_2::
+ audio_header SFX_Noise_Instrument15_2, Ch8
-SFX_Triangle3_2::
- dbw CH7, SFX_Triangle3_2_Ch1
+SFX_Noise_Instrument16_2::
+ audio_header SFX_Noise_Instrument16_2, Ch8
-SFX_Muted_Snare2_2::
- dbw CH7, SFX_Muted_Snare2_2_Ch1
+SFX_Noise_Instrument17_2::
+ audio_header SFX_Noise_Instrument17_2, Ch8
-SFX_Muted_Snare3_2::
- dbw CH7, SFX_Muted_Snare3_2_Ch1
+SFX_Noise_Instrument18_2::
+ audio_header SFX_Noise_Instrument18_2, Ch8
-SFX_Muted_Snare4_2::
- dbw CH7, SFX_Muted_Snare4_2_Ch1
+SFX_Noise_Instrument19_2::
+ audio_header SFX_Noise_Instrument19_2, Ch8
SFX_Cry00_2::
- dbw ( $80 | CH4 ), SFX_Cry00_2_Ch1
- dbw CH5, SFX_Cry00_2_Ch2
- dbw CH7, SFX_Cry00_2_Ch3
+ audio_header SFX_Cry00_2, Ch5, Ch6, Ch8
SFX_Cry01_2::
- dbw ( $80 | CH4 ), SFX_Cry01_2_Ch1
- dbw CH5, SFX_Cry01_2_Ch2
- dbw CH7, SFX_Cry01_2_Ch3
+ audio_header SFX_Cry01_2, Ch5, Ch6, Ch8
SFX_Cry02_2::
- dbw ( $80 | CH4 ), SFX_Cry02_2_Ch1
- dbw CH5, SFX_Cry02_2_Ch2
- dbw CH7, SFX_Cry02_2_Ch3
+ audio_header SFX_Cry02_2, Ch5, Ch6, Ch8
SFX_Cry03_2::
- dbw ( $80 | CH4 ), SFX_Cry03_2_Ch1
- dbw CH5, SFX_Cry03_2_Ch2
- dbw CH7, SFX_Cry03_2_Ch3
+ audio_header SFX_Cry03_2, Ch5, Ch6, Ch8
SFX_Cry04_2::
- dbw ( $80 | CH4 ), SFX_Cry04_2_Ch1
- dbw CH5, SFX_Cry04_2_Ch2
- dbw CH7, SFX_Cry04_2_Ch3
+ audio_header SFX_Cry04_2, Ch5, Ch6, Ch8
SFX_Cry05_2::
- dbw ( $80 | CH4 ), SFX_Cry05_2_Ch1
- dbw CH5, SFX_Cry05_2_Ch2
- dbw CH7, SFX_Cry05_2_Ch3
+ audio_header SFX_Cry05_2, Ch5, Ch6, Ch8
SFX_Cry06_2::
- dbw ( $80 | CH4 ), SFX_Cry06_2_Ch1
- dbw CH5, SFX_Cry06_2_Ch2
- dbw CH7, SFX_Cry06_2_Ch3
+ audio_header SFX_Cry06_2, Ch5, Ch6, Ch8
SFX_Cry07_2::
- dbw ( $80 | CH4 ), SFX_Cry07_2_Ch1
- dbw CH5, SFX_Cry07_2_Ch2
- dbw CH7, SFX_Cry07_2_Ch3
+ audio_header SFX_Cry07_2, Ch5, Ch6, Ch8
SFX_Cry08_2::
- dbw ( $80 | CH4 ), SFX_Cry08_2_Ch1
- dbw CH5, SFX_Cry08_2_Ch2
- dbw CH7, SFX_Cry08_2_Ch3
+ audio_header SFX_Cry08_2, Ch5, Ch6, Ch8
SFX_Cry09_2::
- dbw ( $80 | CH4 ), SFX_Cry09_2_Ch1
- dbw CH5, SFX_Cry09_2_Ch2
- dbw CH7, SFX_Cry09_2_Ch3
+ audio_header SFX_Cry09_2, Ch5, Ch6, Ch8
SFX_Cry0A_2::
- dbw ( $80 | CH4 ), SFX_Cry0A_2_Ch1
- dbw CH5, SFX_Cry0A_2_Ch2
- dbw CH7, SFX_Cry0A_2_Ch3
+ audio_header SFX_Cry0A_2, Ch5, Ch6, Ch8
SFX_Cry0B_2::
- dbw ( $80 | CH4 ), SFX_Cry0B_2_Ch1
- dbw CH5, SFX_Cry0B_2_Ch2
- dbw CH7, SFX_Cry0B_2_Ch3
+ audio_header SFX_Cry0B_2, Ch5, Ch6, Ch8
SFX_Cry0C_2::
- dbw ( $80 | CH4 ), SFX_Cry0C_2_Ch1
- dbw CH5, SFX_Cry0C_2_Ch2
- dbw CH7, SFX_Cry0C_2_Ch3
+ audio_header SFX_Cry0C_2, Ch5, Ch6, Ch8
SFX_Cry0D_2::
- dbw ( $80 | CH4 ), SFX_Cry0D_2_Ch1
- dbw CH5, SFX_Cry0D_2_Ch2
- dbw CH7, SFX_Cry0D_2_Ch3
+ audio_header SFX_Cry0D_2, Ch5, Ch6, Ch8
SFX_Cry0E_2::
- dbw ( $80 | CH4 ), SFX_Cry0E_2_Ch1
- dbw CH5, SFX_Cry0E_2_Ch2
- dbw CH7, SFX_Cry0E_2_Ch3
+ audio_header SFX_Cry0E_2, Ch5, Ch6, Ch8
SFX_Cry0F_2::
- dbw ( $80 | CH4 ), SFX_Cry0F_2_Ch1
- dbw CH5, SFX_Cry0F_2_Ch2
- dbw CH7, SFX_Cry0F_2_Ch3
+ audio_header SFX_Cry0F_2, Ch5, Ch6, Ch8
SFX_Cry10_2::
- dbw ( $80 | CH4 ), SFX_Cry10_2_Ch1
- dbw CH5, SFX_Cry10_2_Ch2
- dbw CH7, SFX_Cry10_2_Ch3
+ audio_header SFX_Cry10_2, Ch5, Ch6, Ch8
SFX_Cry11_2::
- dbw ( $80 | CH4 ), SFX_Cry11_2_Ch1
- dbw CH5, SFX_Cry11_2_Ch2
- dbw CH7, SFX_Cry11_2_Ch3
+ audio_header SFX_Cry11_2, Ch5, Ch6, Ch8
SFX_Cry12_2::
- dbw ( $80 | CH4 ), SFX_Cry12_2_Ch1
- dbw CH5, SFX_Cry12_2_Ch2
- dbw CH7, SFX_Cry12_2_Ch3
+ audio_header SFX_Cry12_2, Ch5, Ch6, Ch8
SFX_Cry13_2::
- dbw ( $80 | CH4 ), SFX_Cry13_2_Ch1
- dbw CH5, SFX_Cry13_2_Ch2
- dbw CH7, SFX_Cry13_2_Ch3
+ audio_header SFX_Cry13_2, Ch5, Ch6, Ch8
SFX_Cry14_2::
- dbw ( $80 | CH4 ), SFX_Cry14_2_Ch1
- dbw CH5, SFX_Cry14_2_Ch2
- dbw CH7, SFX_Cry14_2_Ch3
+ audio_header SFX_Cry14_2, Ch5, Ch6, Ch8
SFX_Cry15_2::
- dbw ( $80 | CH4 ), SFX_Cry15_2_Ch1
- dbw CH5, SFX_Cry15_2_Ch2
- dbw CH7, SFX_Cry15_2_Ch3
+ audio_header SFX_Cry15_2, Ch5, Ch6, Ch8
SFX_Cry16_2::
- dbw ( $80 | CH4 ), SFX_Cry16_2_Ch1
- dbw CH5, SFX_Cry16_2_Ch2
- dbw CH7, SFX_Cry16_2_Ch3
+ audio_header SFX_Cry16_2, Ch5, Ch6, Ch8
SFX_Cry17_2::
- dbw ( $80 | CH4 ), SFX_Cry17_2_Ch1
- dbw CH5, SFX_Cry17_2_Ch2
- dbw CH7, SFX_Cry17_2_Ch3
+ audio_header SFX_Cry17_2, Ch5, Ch6, Ch8
SFX_Cry18_2::
- dbw ( $80 | CH4 ), SFX_Cry18_2_Ch1
- dbw CH5, SFX_Cry18_2_Ch2
- dbw CH7, SFX_Cry18_2_Ch3
+ audio_header SFX_Cry18_2, Ch5, Ch6, Ch8
SFX_Cry19_2::
- dbw ( $80 | CH4 ), SFX_Cry19_2_Ch1
- dbw CH5, SFX_Cry19_2_Ch2
- dbw CH7, SFX_Cry19_2_Ch3
+ audio_header SFX_Cry19_2, Ch5, Ch6, Ch8
SFX_Cry1A_2::
- dbw ( $80 | CH4 ), SFX_Cry1A_2_Ch1
- dbw CH5, SFX_Cry1A_2_Ch2
- dbw CH7, SFX_Cry1A_2_Ch3
+ audio_header SFX_Cry1A_2, Ch5, Ch6, Ch8
SFX_Cry1B_2::
- dbw ( $80 | CH4 ), SFX_Cry1B_2_Ch1
- dbw CH5, SFX_Cry1B_2_Ch2
- dbw CH7, SFX_Cry1B_2_Ch3
+ audio_header SFX_Cry1B_2, Ch5, Ch6, Ch8
SFX_Cry1C_2::
- dbw ( $80 | CH4 ), SFX_Cry1C_2_Ch1
- dbw CH5, SFX_Cry1C_2_Ch2
- dbw CH7, SFX_Cry1C_2_Ch3
+ audio_header SFX_Cry1C_2, Ch5, Ch6, Ch8
SFX_Cry1D_2::
- dbw ( $80 | CH4 ), SFX_Cry1D_2_Ch1
- dbw CH5, SFX_Cry1D_2_Ch2
- dbw CH7, SFX_Cry1D_2_Ch3
+ audio_header SFX_Cry1D_2, Ch5, Ch6, Ch8
SFX_Cry1E_2::
- dbw ( $80 | CH4 ), SFX_Cry1E_2_Ch1
- dbw CH5, SFX_Cry1E_2_Ch2
- dbw CH7, SFX_Cry1E_2_Ch3
+ audio_header SFX_Cry1E_2, Ch5, Ch6, Ch8
SFX_Cry1F_2::
- dbw ( $80 | CH4 ), SFX_Cry1F_2_Ch1
- dbw CH5, SFX_Cry1F_2_Ch2
- dbw CH7, SFX_Cry1F_2_Ch3
+ audio_header SFX_Cry1F_2, Ch5, Ch6, Ch8
SFX_Cry20_2::
- dbw ( $80 | CH4 ), SFX_Cry20_2_Ch1
- dbw CH5, SFX_Cry20_2_Ch2
- dbw CH7, SFX_Cry20_2_Ch3
+ audio_header SFX_Cry20_2, Ch5, Ch6, Ch8
SFX_Cry21_2::
- dbw ( $80 | CH4 ), SFX_Cry21_2_Ch1
- dbw CH5, SFX_Cry21_2_Ch2
- dbw CH7, SFX_Cry21_2_Ch3
+ audio_header SFX_Cry21_2, Ch5, Ch6, Ch8
SFX_Cry22_2::
- dbw ( $80 | CH4 ), SFX_Cry22_2_Ch1
- dbw CH5, SFX_Cry22_2_Ch2
- dbw CH7, SFX_Cry22_2_Ch3
+ audio_header SFX_Cry22_2, Ch5, Ch6, Ch8
SFX_Cry23_2::
- dbw ( $80 | CH4 ), SFX_Cry23_2_Ch1
- dbw CH5, SFX_Cry23_2_Ch2
- dbw CH7, SFX_Cry23_2_Ch3
+ audio_header SFX_Cry23_2, Ch5, Ch6, Ch8
SFX_Cry24_2::
- dbw ( $80 | CH4 ), SFX_Cry24_2_Ch1
- dbw CH5, SFX_Cry24_2_Ch2
- dbw CH7, SFX_Cry24_2_Ch3
+ audio_header SFX_Cry24_2, Ch5, Ch6, Ch8
SFX_Cry25_2::
- dbw ( $80 | CH4 ), SFX_Cry25_2_Ch1
- dbw CH5, SFX_Cry25_2_Ch2
- dbw CH7, SFX_Cry25_2_Ch3
+ audio_header SFX_Cry25_2, Ch5, Ch6, Ch8
SFX_Level_Up::
- dbw ( $80 | CH4 ), SFX_Level_Up_Ch1
- dbw CH5, SFX_Level_Up_Ch2
- dbw CH6, SFX_Level_Up_Ch3
+ audio_header SFX_Level_Up, Ch5, Ch6, Ch7
SFX_Get_Item2_2::
- dbw ( $80 | CH4 ), SFX_Get_Item2_2_Ch1
- dbw CH5, SFX_Get_Item2_2_Ch2
- dbw CH6, SFX_Get_Item2_2_Ch3
+ audio_header SFX_Get_Item2_2, Ch5, Ch6, Ch7
SFX_Tink_2::
- dbw CH4, SFX_Tink_2_Ch1
+ audio_header SFX_Tink_2, Ch5
SFX_Heal_HP_2::
- dbw CH4, SFX_Heal_HP_2_Ch1
+ audio_header SFX_Heal_HP_2, Ch5
SFX_Heal_Ailment_2::
- dbw CH4, SFX_Heal_Ailment_2_Ch1
+ audio_header SFX_Heal_Ailment_2, Ch5
SFX_Start_Menu_2::
- dbw CH7, SFX_Start_Menu_2_Ch1
+ audio_header SFX_Start_Menu_2, Ch8
SFX_Press_AB_2::
- dbw CH4, SFX_Press_AB_2_Ch1
+ audio_header SFX_Press_AB_2, Ch5
SFX_Ball_Toss::
- dbw ( $40 | CH4 ), SFX_Ball_Toss_Ch1
- dbw CH5, SFX_Ball_Toss_Ch2
+ audio_header SFX_Ball_Toss, Ch5, Ch6
SFX_Ball_Poof::
- dbw ( $40 | CH4 ), SFX_Ball_Poof_Ch1
- dbw CH7, SFX_Ball_Poof_Ch2
+ audio_header SFX_Ball_Poof, Ch5, Ch8
SFX_Faint_Thud::
- dbw ( $40 | CH4 ), SFX_Faint_Thud_Ch1
- dbw CH7, SFX_Faint_Thud_Ch2
+ audio_header SFX_Faint_Thud, Ch5, Ch8
SFX_Run::
- dbw CH7, SFX_Run_Ch1
+ audio_header SFX_Run, Ch8
SFX_Dex_Page_Added::
- dbw ( $40 | CH4 ), SFX_Dex_Page_Added_Ch1
- dbw CH5, SFX_Dex_Page_Added_Ch2
+ audio_header SFX_Dex_Page_Added, Ch5, Ch6
SFX_Caught_Mon::
- dbw ( $80 | CH4 ), SFX_Caught_Mon_Ch1
- dbw CH5, SFX_Caught_Mon_Ch2
- dbw CH6, SFX_Caught_Mon_Ch3
+ audio_header SFX_Caught_Mon, Ch5, Ch6, Ch7
SFX_Peck::
- dbw CH7, SFX_Peck_Ch1
+ audio_header SFX_Peck, Ch8
SFX_Faint_Fall::
- dbw CH4, SFX_Faint_Fall_Ch1
+ audio_header SFX_Faint_Fall, Ch5
SFX_Battle_09::
- dbw CH4, SFX_Battle_09_Ch1
+ audio_header SFX_Battle_09, Ch5
SFX_Pound::
- dbw CH7, SFX_Pound_Ch1
+ audio_header SFX_Pound, Ch8
SFX_Battle_0B::
- dbw CH7, SFX_Battle_0B_Ch1
+ audio_header SFX_Battle_0B, Ch8
SFX_Battle_0C::
- dbw CH7, SFX_Battle_0C_Ch1
+ audio_header SFX_Battle_0C, Ch8
SFX_Battle_0D::
- dbw CH7, SFX_Battle_0D_Ch1
+ audio_header SFX_Battle_0D, Ch8
SFX_Battle_0E::
- dbw CH7, SFX_Battle_0E_Ch1
+ audio_header SFX_Battle_0E, Ch8
SFX_Battle_0F::
- dbw CH7, SFX_Battle_0F_Ch1
+ audio_header SFX_Battle_0F, Ch8
SFX_Damage::
- dbw CH7, SFX_Damage_Ch1
+ audio_header SFX_Damage, Ch8
SFX_Not_Very_Effective::
- dbw CH7, SFX_Not_Very_Effective_Ch1
+ audio_header SFX_Not_Very_Effective, Ch8
SFX_Battle_12::
- dbw CH7, SFX_Battle_12_Ch1
+ audio_header SFX_Battle_12, Ch8
SFX_Battle_13::
- dbw CH7, SFX_Battle_13_Ch1
+ audio_header SFX_Battle_13, Ch8
SFX_Battle_14::
- dbw CH7, SFX_Battle_14_Ch1
+ audio_header SFX_Battle_14, Ch8
SFX_Vine_Whip::
- dbw CH7, SFX_Vine_Whip_Ch1
+ audio_header SFX_Vine_Whip, Ch8
SFX_Battle_16::
- dbw CH7, SFX_Battle_16_Ch1
+ audio_header SFX_Battle_16, Ch8
SFX_Battle_17::
- dbw CH7, SFX_Battle_17_Ch1
+ audio_header SFX_Battle_17, Ch8
SFX_Battle_18::
- dbw CH7, SFX_Battle_18_Ch1
+ audio_header SFX_Battle_18, Ch8
SFX_Battle_19::
- dbw CH7, SFX_Battle_19_Ch1
+ audio_header SFX_Battle_19, Ch8
SFX_Super_Effective::
- dbw CH7, SFX_Super_Effective_Ch1
+ audio_header SFX_Super_Effective, Ch8
SFX_Battle_1B::
- dbw CH7, SFX_Battle_1B_Ch1
+ audio_header SFX_Battle_1B, Ch8
SFX_Battle_1C::
- dbw CH7, SFX_Battle_1C_Ch1
+ audio_header SFX_Battle_1C, Ch8
SFX_Doubleslap::
- dbw CH7, SFX_Doubleslap_Ch1
+ audio_header SFX_Doubleslap, Ch8
SFX_Battle_1E::
- dbw ( $40 | CH4 ), SFX_Battle_1E_Ch1
- dbw CH7, SFX_Battle_1E_Ch2
+ audio_header SFX_Battle_1E, Ch5, Ch8
SFX_Horn_Drill::
- dbw CH7, SFX_Horn_Drill_Ch1
+ audio_header SFX_Horn_Drill, Ch8
SFX_Battle_20::
- dbw CH7, SFX_Battle_20_Ch1
+ audio_header SFX_Battle_20, Ch8
SFX_Battle_21::
- dbw CH7, SFX_Battle_21_Ch1
+ audio_header SFX_Battle_21, Ch8
SFX_Battle_22::
- dbw CH7, SFX_Battle_22_Ch1
+ audio_header SFX_Battle_22, Ch8
SFX_Battle_23::
- dbw CH7, SFX_Battle_23_Ch1
+ audio_header SFX_Battle_23, Ch8
SFX_Battle_24::
- dbw ( $40 | CH4 ), SFX_Battle_24_Ch1
- dbw CH7, SFX_Battle_24_Ch2
+ audio_header SFX_Battle_24, Ch5, Ch8
SFX_Battle_25::
- dbw CH7, SFX_Battle_25_Ch1
+ audio_header SFX_Battle_25, Ch8
SFX_Battle_26::
- dbw CH7, SFX_Battle_26_Ch1
+ audio_header SFX_Battle_26, Ch8
SFX_Battle_27::
- dbw ( $80 | CH4 ), SFX_Battle_27_Ch1
- dbw CH5, SFX_Battle_27_Ch2
- dbw CH7, SFX_Battle_27_Ch3
+ audio_header SFX_Battle_27, Ch5, Ch6, Ch8
SFX_Battle_28::
- dbw ( $80 | CH4 ), SFX_Battle_28_Ch1
- dbw CH5, SFX_Battle_28_Ch2
- dbw CH7, SFX_Battle_28_Ch3
+ audio_header SFX_Battle_28, Ch5, Ch6, Ch8
-SFX_Earthquake::
- dbw ( $40 | CH4 ), SFX_Earthquake_Ch1
- dbw CH7, SFX_Earthquake_Ch2
+SFX_Battle_29::
+ audio_header SFX_Battle_29, Ch5, Ch8
SFX_Battle_2A::
- dbw ( $80 | CH4 ), SFX_Battle_2A_Ch1
- dbw CH5, SFX_Battle_2A_Ch2
- dbw CH7, SFX_Battle_2A_Ch3
+ audio_header SFX_Battle_2A, Ch5, Ch6, Ch8
SFX_Battle_2B::
- dbw ( $40 | CH4 ), SFX_Battle_2B_Ch1
- dbw CH7, SFX_Battle_2B_Ch2
+ audio_header SFX_Battle_2B, Ch5, Ch8
SFX_Battle_2C::
- dbw ( $80 | CH4 ), SFX_Battle_2C_Ch1
- dbw CH5, SFX_Battle_2C_Ch2
- dbw CH7, SFX_Battle_2C_Ch3
+ audio_header SFX_Battle_2C, Ch5, Ch6, Ch8
SFX_Psybeam::
- dbw ( $80 | CH4 ), SFX_Psybeam_Ch1
- dbw CH5, SFX_Psybeam_Ch2
- dbw CH7, SFX_Psybeam_Ch3
+ audio_header SFX_Psybeam, Ch5, Ch6, Ch8
SFX_Battle_2E::
- dbw ( $80 | CH4 ), SFX_Battle_2E_Ch1
- dbw CH5, SFX_Battle_2E_Ch2
- dbw CH7, SFX_Battle_2E_Ch3
+ audio_header SFX_Battle_2E, Ch5, Ch6, Ch8
-SFX_Thunderbolt::
- dbw ( $80 | CH4 ), SFX_Thunderbolt_Ch1
- dbw CH5, SFX_Thunderbolt_Ch2
- dbw CH7, SFX_Thunderbolt_Ch3
+SFX_Battle_2F::
+ audio_header SFX_Battle_2F, Ch5, Ch6, Ch8
SFX_Psychic_M::
- dbw ( $80 | CH4 ), SFX_Psychic_M_Ch1
- dbw CH5, SFX_Psychic_M_Ch2
- dbw CH7, SFX_Psychic_M_Ch3
+ audio_header SFX_Psychic_M, Ch5, Ch6, Ch8
SFX_Battle_31::
- dbw ( $40 | CH4 ), SFX_Battle_31_Ch1
- dbw CH5, SFX_Battle_31_Ch2
+ audio_header SFX_Battle_31, Ch5, Ch6
SFX_Battle_32::
- dbw ( $40 | CH4 ), SFX_Battle_32_Ch1
- dbw CH5, SFX_Battle_32_Ch2
+ audio_header SFX_Battle_32, Ch5, Ch6
SFX_Battle_33::
- dbw ( $40 | CH4 ), SFX_Battle_33_Ch1
- dbw CH5, SFX_Battle_33_Ch2
+ audio_header SFX_Battle_33, Ch5, Ch6
SFX_Battle_34::
- dbw ( $80 | CH4 ), SFX_Battle_34_Ch1
- dbw CH5, SFX_Battle_34_Ch2
- dbw CH7, SFX_Battle_34_Ch3
+ audio_header SFX_Battle_34, Ch5, Ch6, Ch8
SFX_Battle_35::
- dbw ( $40 | CH4 ), SFX_Battle_35_Ch1
- dbw CH5, SFX_Battle_35_Ch2
+ audio_header SFX_Battle_35, Ch5, Ch6
SFX_Battle_36::
- dbw ( $80 | CH4 ), SFX_Battle_36_Ch1
- dbw CH5, SFX_Battle_36_Ch2
- dbw CH7, SFX_Battle_36_Ch3
+ audio_header SFX_Battle_36, Ch5, Ch6, Ch8
SFX_Silph_Scope::
- dbw CH4, SFX_Silph_Scope_Ch1
+ audio_header SFX_Silph_Scope, Ch5
diff --git a/audio/headers/sfxheaders3.asm b/audio/headers/sfxheaders3.asm
index cd940357..d1e0a127 100644
--- a/audio/headers/sfxheaders3.asm
+++ b/audio/headers/sfxheaders3.asm
@@ -1,402 +1,311 @@
SFX_Headers_3::
dbw -1, -1 ; padding
-SFX_Snare1_3::
- dbw CH7, SFX_Snare1_3_Ch1
+SFX_Noise_Instrument01_3::
+ audio_header SFX_Noise_Instrument01_3, Ch8
-SFX_Snare2_3::
- dbw CH7, SFX_Snare2_3_Ch1
+SFX_Noise_Instrument02_3::
+ audio_header SFX_Noise_Instrument02_3, Ch8
-SFX_Snare3_3::
- dbw CH7, SFX_Snare3_3_Ch1
+SFX_Noise_Instrument03_3::
+ audio_header SFX_Noise_Instrument03_3, Ch8
-SFX_Snare4_3::
- dbw CH7, SFX_Snare4_3_Ch1
+SFX_Noise_Instrument04_3::
+ audio_header SFX_Noise_Instrument04_3, Ch8
-SFX_Snare5_3::
- dbw CH7, SFX_Snare5_3_Ch1
+SFX_Noise_Instrument05_3::
+ audio_header SFX_Noise_Instrument05_3, Ch8
-SFX_Triangle1_3::
- dbw CH7, SFX_Triangle1_3_Ch1
+SFX_Noise_Instrument06_3::
+ audio_header SFX_Noise_Instrument06_3, Ch8
-SFX_Triangle2_3::
- dbw CH7, SFX_Triangle2_3_Ch1
+SFX_Noise_Instrument07_3::
+ audio_header SFX_Noise_Instrument07_3, Ch8
-SFX_Snare6_3::
- dbw CH7, SFX_Snare6_3_Ch1
+SFX_Noise_Instrument08_3::
+ audio_header SFX_Noise_Instrument08_3, Ch8
-SFX_Snare7_3::
- dbw CH7, SFX_Snare7_3_Ch1
+SFX_Noise_Instrument09_3::
+ audio_header SFX_Noise_Instrument09_3, Ch8
-SFX_Snare8_3::
- dbw CH7, SFX_Snare8_3_Ch1
+SFX_Noise_Instrument10_3::
+ audio_header SFX_Noise_Instrument10_3, Ch8
-SFX_Snare9_3::
- dbw CH7, SFX_Snare9_3_Ch1
+SFX_Noise_Instrument11_3::
+ audio_header SFX_Noise_Instrument11_3, Ch8
-SFX_Cymbal1_3::
- dbw CH7, SFX_Cymbal1_3_Ch1
+SFX_Noise_Instrument12_3::
+ audio_header SFX_Noise_Instrument12_3, Ch8
-SFX_Cymbal2_3::
- dbw CH7, SFX_Cymbal2_3_Ch1
+SFX_Noise_Instrument13_3::
+ audio_header SFX_Noise_Instrument13_3, Ch8
-SFX_Cymbal3_3::
- dbw CH7, SFX_Cymbal3_3_Ch1
+SFX_Noise_Instrument14_3::
+ audio_header SFX_Noise_Instrument14_3, Ch8
-SFX_Muted_Snare1_3::
- dbw CH7, SFX_Muted_Snare1_3_Ch1
+SFX_Noise_Instrument15_3::
+ audio_header SFX_Noise_Instrument15_3, Ch8
-SFX_Triangle3_3::
- dbw CH7, SFX_Triangle3_3_Ch1
+SFX_Noise_Instrument16_3::
+ audio_header SFX_Noise_Instrument16_3, Ch8
-SFX_Muted_Snare2_3::
- dbw CH7, SFX_Muted_Snare2_3_Ch1
+SFX_Noise_Instrument17_3::
+ audio_header SFX_Noise_Instrument17_3, Ch8
-SFX_Muted_Snare3_3::
- dbw CH7, SFX_Muted_Snare3_3_Ch1
+SFX_Noise_Instrument18_3::
+ audio_header SFX_Noise_Instrument18_3, Ch8
-SFX_Muted_Snare4_3::
- dbw CH7, SFX_Muted_Snare4_3_Ch1
+SFX_Noise_Instrument19_3::
+ audio_header SFX_Noise_Instrument19_3, Ch8
SFX_Cry00_3::
- dbw ( $80 | CH4 ), SFX_Cry00_3_Ch1
- dbw CH5, SFX_Cry00_3_Ch2
- dbw CH7, SFX_Cry00_3_Ch3
+ audio_header SFX_Cry00_3, Ch5, Ch6, Ch8
SFX_Cry01_3::
- dbw ( $80 | CH4 ), SFX_Cry01_3_Ch1
- dbw CH5, SFX_Cry01_3_Ch2
- dbw CH7, SFX_Cry01_3_Ch3
+ audio_header SFX_Cry01_3, Ch5, Ch6, Ch8
SFX_Cry02_3::
- dbw ( $80 | CH4 ), SFX_Cry02_3_Ch1
- dbw CH5, SFX_Cry02_3_Ch2
- dbw CH7, SFX_Cry02_3_Ch3
+ audio_header SFX_Cry02_3, Ch5, Ch6, Ch8
SFX_Cry03_3::
- dbw ( $80 | CH4 ), SFX_Cry03_3_Ch1
- dbw CH5, SFX_Cry03_3_Ch2
- dbw CH7, SFX_Cry03_3_Ch3
+ audio_header SFX_Cry03_3, Ch5, Ch6, Ch8
SFX_Cry04_3::
- dbw ( $80 | CH4 ), SFX_Cry04_3_Ch1
- dbw CH5, SFX_Cry04_3_Ch2
- dbw CH7, SFX_Cry04_3_Ch3
+ audio_header SFX_Cry04_3, Ch5, Ch6, Ch8
SFX_Cry05_3::
- dbw ( $80 | CH4 ), SFX_Cry05_3_Ch1
- dbw CH5, SFX_Cry05_3_Ch2
- dbw CH7, SFX_Cry05_3_Ch3
+ audio_header SFX_Cry05_3, Ch5, Ch6, Ch8
SFX_Cry06_3::
- dbw ( $80 | CH4 ), SFX_Cry06_3_Ch1
- dbw CH5, SFX_Cry06_3_Ch2
- dbw CH7, SFX_Cry06_3_Ch3
+ audio_header SFX_Cry06_3, Ch5, Ch6, Ch8
SFX_Cry07_3::
- dbw ( $80 | CH4 ), SFX_Cry07_3_Ch1
- dbw CH5, SFX_Cry07_3_Ch2
- dbw CH7, SFX_Cry07_3_Ch3
+ audio_header SFX_Cry07_3, Ch5, Ch6, Ch8
SFX_Cry08_3::
- dbw ( $80 | CH4 ), SFX_Cry08_3_Ch1
- dbw CH5, SFX_Cry08_3_Ch2
- dbw CH7, SFX_Cry08_3_Ch3
+ audio_header SFX_Cry08_3, Ch5, Ch6, Ch8
SFX_Cry09_3::
- dbw ( $80 | CH4 ), SFX_Cry09_3_Ch1
- dbw CH5, SFX_Cry09_3_Ch2
- dbw CH7, SFX_Cry09_3_Ch3
+ audio_header SFX_Cry09_3, Ch5, Ch6, Ch8
SFX_Cry0A_3::
- dbw ( $80 | CH4 ), SFX_Cry0A_3_Ch1
- dbw CH5, SFX_Cry0A_3_Ch2
- dbw CH7, SFX_Cry0A_3_Ch3
+ audio_header SFX_Cry0A_3, Ch5, Ch6, Ch8
SFX_Cry0B_3::
- dbw ( $80 | CH4 ), SFX_Cry0B_3_Ch1
- dbw CH5, SFX_Cry0B_3_Ch2
- dbw CH7, SFX_Cry0B_3_Ch3
+ audio_header SFX_Cry0B_3, Ch5, Ch6, Ch8
SFX_Cry0C_3::
- dbw ( $80 | CH4 ), SFX_Cry0C_3_Ch1
- dbw CH5, SFX_Cry0C_3_Ch2
- dbw CH7, SFX_Cry0C_3_Ch3
+ audio_header SFX_Cry0C_3, Ch5, Ch6, Ch8
SFX_Cry0D_3::
- dbw ( $80 | CH4 ), SFX_Cry0D_3_Ch1
- dbw CH5, SFX_Cry0D_3_Ch2
- dbw CH7, SFX_Cry0D_3_Ch3
+ audio_header SFX_Cry0D_3, Ch5, Ch6, Ch8
SFX_Cry0E_3::
- dbw ( $80 | CH4 ), SFX_Cry0E_3_Ch1
- dbw CH5, SFX_Cry0E_3_Ch2
- dbw CH7, SFX_Cry0E_3_Ch3
+ audio_header SFX_Cry0E_3, Ch5, Ch6, Ch8
SFX_Cry0F_3::
- dbw ( $80 | CH4 ), SFX_Cry0F_3_Ch1
- dbw CH5, SFX_Cry0F_3_Ch2
- dbw CH7, SFX_Cry0F_3_Ch3
+ audio_header SFX_Cry0F_3, Ch5, Ch6, Ch8
SFX_Cry10_3::
- dbw ( $80 | CH4 ), SFX_Cry10_3_Ch1
- dbw CH5, SFX_Cry10_3_Ch2
- dbw CH7, SFX_Cry10_3_Ch3
+ audio_header SFX_Cry10_3, Ch5, Ch6, Ch8
SFX_Cry11_3::
- dbw ( $80 | CH4 ), SFX_Cry11_3_Ch1
- dbw CH5, SFX_Cry11_3_Ch2
- dbw CH7, SFX_Cry11_3_Ch3
+ audio_header SFX_Cry11_3, Ch5, Ch6, Ch8
SFX_Cry12_3::
- dbw ( $80 | CH4 ), SFX_Cry12_3_Ch1
- dbw CH5, SFX_Cry12_3_Ch2
- dbw CH7, SFX_Cry12_3_Ch3
+ audio_header SFX_Cry12_3, Ch5, Ch6, Ch8
SFX_Cry13_3::
- dbw ( $80 | CH4 ), SFX_Cry13_3_Ch1
- dbw CH5, SFX_Cry13_3_Ch2
- dbw CH7, SFX_Cry13_3_Ch3
+ audio_header SFX_Cry13_3, Ch5, Ch6, Ch8
SFX_Cry14_3::
- dbw ( $80 | CH4 ), SFX_Cry14_3_Ch1
- dbw CH5, SFX_Cry14_3_Ch2
- dbw CH7, SFX_Cry14_3_Ch3
+ audio_header SFX_Cry14_3, Ch5, Ch6, Ch8
SFX_Cry15_3::
- dbw ( $80 | CH4 ), SFX_Cry15_3_Ch1
- dbw CH5, SFX_Cry15_3_Ch2
- dbw CH7, SFX_Cry15_3_Ch3
+ audio_header SFX_Cry15_3, Ch5, Ch6, Ch8
SFX_Cry16_3::
- dbw ( $80 | CH4 ), SFX_Cry16_3_Ch1
- dbw CH5, SFX_Cry16_3_Ch2
- dbw CH7, SFX_Cry16_3_Ch3
+ audio_header SFX_Cry16_3, Ch5, Ch6, Ch8
SFX_Cry17_3::
- dbw ( $80 | CH4 ), SFX_Cry17_3_Ch1
- dbw CH5, SFX_Cry17_3_Ch2
- dbw CH7, SFX_Cry17_3_Ch3
+ audio_header SFX_Cry17_3, Ch5, Ch6, Ch8
SFX_Cry18_3::
- dbw ( $80 | CH4 ), SFX_Cry18_3_Ch1
- dbw CH5, SFX_Cry18_3_Ch2
- dbw CH7, SFX_Cry18_3_Ch3
+ audio_header SFX_Cry18_3, Ch5, Ch6, Ch8
SFX_Cry19_3::
- dbw ( $80 | CH4 ), SFX_Cry19_3_Ch1
- dbw CH5, SFX_Cry19_3_Ch2
- dbw CH7, SFX_Cry19_3_Ch3
+ audio_header SFX_Cry19_3, Ch5, Ch6, Ch8
SFX_Cry1A_3::
- dbw ( $80 | CH4 ), SFX_Cry1A_3_Ch1
- dbw CH5, SFX_Cry1A_3_Ch2
- dbw CH7, SFX_Cry1A_3_Ch3
+ audio_header SFX_Cry1A_3, Ch5, Ch6, Ch8
SFX_Cry1B_3::
- dbw ( $80 | CH4 ), SFX_Cry1B_3_Ch1
- dbw CH5, SFX_Cry1B_3_Ch2
- dbw CH7, SFX_Cry1B_3_Ch3
+ audio_header SFX_Cry1B_3, Ch5, Ch6, Ch8
SFX_Cry1C_3::
- dbw ( $80 | CH4 ), SFX_Cry1C_3_Ch1
- dbw CH5, SFX_Cry1C_3_Ch2
- dbw CH7, SFX_Cry1C_3_Ch3
+ audio_header SFX_Cry1C_3, Ch5, Ch6, Ch8
SFX_Cry1D_3::
- dbw ( $80 | CH4 ), SFX_Cry1D_3_Ch1
- dbw CH5, SFX_Cry1D_3_Ch2
- dbw CH7, SFX_Cry1D_3_Ch3
+ audio_header SFX_Cry1D_3, Ch5, Ch6, Ch8
SFX_Cry1E_3::
- dbw ( $80 | CH4 ), SFX_Cry1E_3_Ch1
- dbw CH5, SFX_Cry1E_3_Ch2
- dbw CH7, SFX_Cry1E_3_Ch3
+ audio_header SFX_Cry1E_3, Ch5, Ch6, Ch8
SFX_Cry1F_3::
- dbw ( $80 | CH4 ), SFX_Cry1F_3_Ch1
- dbw CH5, SFX_Cry1F_3_Ch2
- dbw CH7, SFX_Cry1F_3_Ch3
+ audio_header SFX_Cry1F_3, Ch5, Ch6, Ch8
SFX_Cry20_3::
- dbw ( $80 | CH4 ), SFX_Cry20_3_Ch1
- dbw CH5, SFX_Cry20_3_Ch2
- dbw CH7, SFX_Cry20_3_Ch3
+ audio_header SFX_Cry20_3, Ch5, Ch6, Ch8
SFX_Cry21_3::
- dbw ( $80 | CH4 ), SFX_Cry21_3_Ch1
- dbw CH5, SFX_Cry21_3_Ch2
- dbw CH7, SFX_Cry21_3_Ch3
+ audio_header SFX_Cry21_3, Ch5, Ch6, Ch8
SFX_Cry22_3::
- dbw ( $80 | CH4 ), SFX_Cry22_3_Ch1
- dbw CH5, SFX_Cry22_3_Ch2
- dbw CH7, SFX_Cry22_3_Ch3
+ audio_header SFX_Cry22_3, Ch5, Ch6, Ch8
SFX_Cry23_3::
- dbw ( $80 | CH4 ), SFX_Cry23_3_Ch1
- dbw CH5, SFX_Cry23_3_Ch2
- dbw CH7, SFX_Cry23_3_Ch3
+ audio_header SFX_Cry23_3, Ch5, Ch6, Ch8
SFX_Cry24_3::
- dbw ( $80 | CH4 ), SFX_Cry24_3_Ch1
- dbw CH5, SFX_Cry24_3_Ch2
- dbw CH7, SFX_Cry24_3_Ch3
+ audio_header SFX_Cry24_3, Ch5, Ch6, Ch8
SFX_Cry25_3::
- dbw ( $80 | CH4 ), SFX_Cry25_3_Ch1
- dbw CH5, SFX_Cry25_3_Ch2
- dbw CH7, SFX_Cry25_3_Ch3
+ audio_header SFX_Cry25_3, Ch5, Ch6, Ch8
SFX_Get_Item1_3::
- dbw ( $80 | CH4 ), SFX_Get_Item1_3_Ch1
- dbw CH5, SFX_Get_Item1_3_Ch2
- dbw CH6, SFX_Get_Item1_3_Ch3
+ audio_header SFX_Get_Item1_3, Ch5, Ch6, Ch7
SFX_Get_Item2_3::
- dbw ( $80 | CH4 ), SFX_Get_Item2_3_Ch1
- dbw CH5, SFX_Get_Item2_3_Ch2
- dbw CH6, SFX_Get_Item2_3_Ch3
+ audio_header SFX_Get_Item2_3, Ch5, Ch6, Ch7
SFX_Tink_3::
- dbw CH4, SFX_Tink_3_Ch1
+ audio_header SFX_Tink_3, Ch5
SFX_Heal_HP_3::
- dbw CH4, SFX_Heal_HP_3_Ch1
+ audio_header SFX_Heal_HP_3, Ch5
SFX_Heal_Ailment_3::
- dbw CH4, SFX_Heal_Ailment_3_Ch1
+ audio_header SFX_Heal_Ailment_3, Ch5
SFX_Start_Menu_3::
- dbw CH7, SFX_Start_Menu_3_Ch1
+ audio_header SFX_Start_Menu_3, Ch8
SFX_Press_AB_3::
- dbw CH4, SFX_Press_AB_3_Ch1
+ audio_header SFX_Press_AB_3, Ch5
SFX_Pokedex_Rating_3::
- dbw ( $80 | CH4 ), SFX_Pokedex_Rating_3_Ch1
- dbw CH5, SFX_Pokedex_Rating_3_Ch2
- dbw CH6, SFX_Pokedex_Rating_3_Ch3
+ audio_header SFX_Pokedex_Rating_3, Ch5, Ch6, Ch7
SFX_Get_Key_Item_3::
- dbw ( $80 | CH4 ), SFX_Get_Key_Item_3_Ch1
- dbw CH5, SFX_Get_Key_Item_3_Ch2
- dbw CH6, SFX_Get_Key_Item_3_Ch3
+ audio_header SFX_Get_Key_Item_3, Ch5, Ch6, Ch7
SFX_Poisoned_3::
- dbw CH4, SFX_Poisoned_3_Ch1
+ audio_header SFX_Poisoned_3, Ch5
SFX_Trade_Machine_3::
- dbw CH4, SFX_Trade_Machine_3_Ch1
+ audio_header SFX_Trade_Machine_3, Ch5
SFX_Turn_On_PC_3::
- dbw CH4, SFX_Turn_On_PC_3_Ch1
+ audio_header SFX_Turn_On_PC_3, Ch5
SFX_Turn_Off_PC_3::
- dbw CH4, SFX_Turn_Off_PC_3_Ch1
+ audio_header SFX_Turn_Off_PC_3, Ch5
SFX_Enter_PC_3::
- dbw CH4, SFX_Enter_PC_3_Ch1
+ audio_header SFX_Enter_PC_3, Ch5
SFX_Shrink_3::
- dbw CH4, SFX_Shrink_3_Ch1
+ audio_header SFX_Shrink_3, Ch5
SFX_Switch_3::
- dbw CH4, SFX_Switch_3_Ch1
+ audio_header SFX_Switch_3, Ch5
SFX_Healing_Machine_3::
- dbw CH4, SFX_Healing_Machine_3_Ch1
+ audio_header SFX_Healing_Machine_3, Ch5
SFX_Teleport_Exit1_3::
- dbw CH4, SFX_Teleport_Exit1_3_Ch1
+ audio_header SFX_Teleport_Exit1_3, Ch5
SFX_Teleport_Enter1_3::
- dbw CH4, SFX_Teleport_Enter1_3_Ch1
+ audio_header SFX_Teleport_Enter1_3, Ch5
SFX_Teleport_Exit2_3::
- dbw CH4, SFX_Teleport_Exit2_3_Ch1
+ audio_header SFX_Teleport_Exit2_3, Ch5
SFX_Ledge_3::
- dbw CH4, SFX_Ledge_3_Ch1
+ audio_header SFX_Ledge_3, Ch5
SFX_Teleport_Enter2_3::
- dbw CH7, SFX_Teleport_Enter2_3_Ch1
+ audio_header SFX_Teleport_Enter2_3, Ch8
SFX_Fly_3::
- dbw CH7, SFX_Fly_3_Ch1
+ audio_header SFX_Fly_3, Ch8
SFX_Denied_3::
- dbw ( $40 | CH4 ), SFX_Denied_3_Ch1
- dbw CH5, SFX_Denied_3_Ch2
+ audio_header SFX_Denied_3, Ch5, Ch6
SFX_Arrow_Tiles_3::
- dbw CH4, SFX_Arrow_Tiles_3_Ch1
+ audio_header SFX_Arrow_Tiles_3, Ch5
SFX_Push_Boulder_3::
- dbw CH7, SFX_Push_Boulder_3_Ch1
+ audio_header SFX_Push_Boulder_3, Ch8
SFX_SS_Anne_Horn_3::
- dbw ( $40 | CH4 ), SFX_SS_Anne_Horn_3_Ch1
- dbw CH5, SFX_SS_Anne_Horn_3_Ch2
+ audio_header SFX_SS_Anne_Horn_3, Ch5, Ch6
SFX_Withdraw_Deposit_3::
- dbw CH4, SFX_Withdraw_Deposit_3_Ch1
+ audio_header SFX_Withdraw_Deposit_3, Ch5
SFX_Cut_3::
- dbw CH7, SFX_Cut_3_Ch1
+ audio_header SFX_Cut_3, Ch8
SFX_Go_Inside_3::
- dbw CH7, SFX_Go_Inside_3_Ch1
+ audio_header SFX_Go_Inside_3, Ch8
SFX_Swap_3::
- dbw ( $40 | CH4 ), SFX_Swap_3_Ch1
- dbw CH5, SFX_Swap_3_Ch2
+ audio_header SFX_Swap_3, Ch5, Ch6
SFX_59_3::
- dbw ( $40 | CH4 ), SFX_59_3_Ch1
- dbw CH5, SFX_59_3_Ch2
+ audio_header SFX_59_3, Ch5, Ch6
SFX_Purchase_3::
- dbw ( $40 | CH4 ), SFX_Purchase_3_Ch1
- dbw CH5, SFX_Purchase_3_Ch2
+ audio_header SFX_Purchase_3, Ch5, Ch6
SFX_Collision_3::
- dbw CH4, SFX_Collision_3_Ch1
+ audio_header SFX_Collision_3, Ch5
SFX_Go_Outside_3::
- dbw CH7, SFX_Go_Outside_3_Ch1
+ audio_header SFX_Go_Outside_3, Ch8
SFX_Save_3::
- dbw ( $40 | CH4 ), SFX_Save_3_Ch1
- dbw CH5, SFX_Save_3_Ch2
+ audio_header SFX_Save_3, Ch5, Ch6
SFX_Intro_Lunge::
- dbw CH7, SFX_Intro_Lunge_Ch1
+ audio_header SFX_Intro_Lunge, Ch8
SFX_Intro_Hip::
- dbw CH4, SFX_Intro_Hip_Ch1
+ audio_header SFX_Intro_Hip, Ch5
SFX_Intro_Hop::
- dbw CH4, SFX_Intro_Hop_Ch1
+ audio_header SFX_Intro_Hop, Ch5
SFX_Intro_Raise::
- dbw CH7, SFX_Intro_Raise_Ch1
+ audio_header SFX_Intro_Raise, Ch8
SFX_Intro_Crash::
- dbw CH7, SFX_Intro_Crash_Ch1
+ audio_header SFX_Intro_Crash, Ch8
SFX_Intro_Whoosh::
- dbw CH7, SFX_Intro_Whoosh_Ch1
+ audio_header SFX_Intro_Whoosh, Ch8
SFX_Slots_Stop_Wheel::
- dbw CH4, SFX_Slots_Stop_Wheel_Ch1
+ audio_header SFX_Slots_Stop_Wheel, Ch5
SFX_Slots_Reward::
- dbw CH4, SFX_Slots_Reward_Ch1
+ audio_header SFX_Slots_Reward, Ch5
SFX_Slots_New_Spin::
- dbw ( $40 | CH4 ), SFX_Slots_New_Spin_Ch1
- dbw CH5, SFX_Slots_New_Spin_Ch2
+ audio_header SFX_Slots_New_Spin, Ch5, Ch6
SFX_Shooting_Star::
- dbw CH4, SFX_Shooting_Star_Ch1
+ audio_header SFX_Shooting_Star, Ch5
diff --git a/audio/headers/sfxheaders4.asm b/audio/headers/sfxheaders4.asm
index 1fdb69ab..c7f7e9d6 100644
--- a/audio/headers/sfxheaders4.asm
+++ b/audio/headers/sfxheaders4.asm
@@ -1,294 +1,212 @@
SFX_Headers_4::
dbw -1, -1 ; padding
-SFX_Snare1_4::
- dbw CH7, SFX_Snare1_4_Ch7
+SFX_Noise_Instrument01_4::
+ audio_header SFX_Noise_Instrument01_4, Ch8
-SFX_Snare2_4::
- dbw CH7, SFX_Snare2_4_Ch7
+SFX_Noise_Instrument02_4::
+ audio_header SFX_Noise_Instrument02_4, Ch8
-SFX_Snare3_4::
- dbw CH7, SFX_Snare3_4_Ch7
+SFX_Noise_Instrument03_4::
+ audio_header SFX_Noise_Instrument03_4, Ch8
-SFX_Snare4_4::
- dbw CH7, SFX_Snare4_4_Ch7
+SFX_Noise_Instrument04_4::
+ audio_header SFX_Noise_Instrument04_4, Ch8
-SFX_Snare5_4::
- dbw CH7, SFX_Snare5_4_Ch7
+SFX_Noise_Instrument05_4::
+ audio_header SFX_Noise_Instrument05_4, Ch8
-SFX_Triangle1_4::
- dbw CH7, SFX_Triangle1_4_Ch7
+SFX_Noise_Instrument06_4::
+ audio_header SFX_Noise_Instrument06_4, Ch8
-SFX_Triangle2_4::
- dbw CH7, SFX_Triangle2_4_Ch7
+SFX_Noise_Instrument07_4::
+ audio_header SFX_Noise_Instrument07_4, Ch8
-SFX_Snare6_4::
- dbw CH7, SFX_Snare6_4_Ch7
+SFX_Noise_Instrument08_4::
+ audio_header SFX_Noise_Instrument08_4, Ch8
-SFX_Snare7_4::
- dbw CH7, SFX_Snare7_4_Ch7
+SFX_Noise_Instrument09_4::
+ audio_header SFX_Noise_Instrument09_4, Ch8
-SFX_Snare8_4::
- dbw CH7, SFX_Snare8_4_Ch7
+SFX_Noise_Instrument10_4::
+ audio_header SFX_Noise_Instrument10_4, Ch8
-SFX_Snare9_4::
- dbw CH7, SFX_Snare9_4_Ch7
+SFX_Noise_Instrument11_4::
+ audio_header SFX_Noise_Instrument11_4, Ch8
-SFX_Cymbal1_4::
- dbw CH7, SFX_Cymbal1_4_Ch7
+SFX_Noise_Instrument12_4::
+ audio_header SFX_Noise_Instrument12_4, Ch8
-SFX_Cymbal2_4::
- dbw CH7, SFX_Cymbal2_4_Ch7
+SFX_Noise_Instrument13_4::
+ audio_header SFX_Noise_Instrument13_4, Ch8
-SFX_Cymbal3_4::
- dbw CH7, SFX_Cymbal3_4_Ch7
+SFX_Noise_Instrument14_4::
+ audio_header SFX_Noise_Instrument14_4, Ch8
-SFX_Muted_Snare1_4::
- dbw CH7, SFX_Muted_Snare1_4_Ch7
+SFX_Noise_Instrument15_4::
+ audio_header SFX_Noise_Instrument15_4, Ch8
-SFX_Triangle3_4::
- dbw CH7, SFX_Triangle3_4_Ch7
+SFX_Noise_Instrument16_4::
+ audio_header SFX_Noise_Instrument16_4, Ch8
-SFX_Muted_Snare2_4::
- dbw CH7, SFX_Muted_Snare2_4_Ch7
+SFX_Noise_Instrument17_4::
+ audio_header SFX_Noise_Instrument17_4, Ch8
-SFX_Muted_Snare3_4::
- dbw CH7, SFX_Muted_Snare3_4_Ch7
+SFX_Noise_Instrument18_4::
+ audio_header SFX_Noise_Instrument18_4, Ch8
-SFX_Muted_Snare4_4::
- dbw CH7, SFX_Muted_Snare4_4_Ch7
+SFX_Noise_Instrument19_4::
+ audio_header SFX_Noise_Instrument19_4, Ch8
-SFX_8003c_4::
- dbw ( $80 | CH4 ), SFX_805db_4_Ch4
- dbw CH5, SFX_805ea_4_Ch5
- dbw CH7, SFX_805f9_4_Ch7
+SFX_Unknown_805db::
+ audio_header SFX_Unknown_805db, Ch5, Ch6, Ch8
-SFX_80045_4::
- dbw ( $80 | CH4 ), SFX_807eb_4_Ch4
- dbw CH5, SFX_807fe_4_Ch5
- dbw CH7, SFX_80811_4_Ch7
+SFX_Unknown_807eb::
+ audio_header SFX_Unknown_807eb, Ch5, Ch6, Ch8
-SFX_8004e_4::
- dbw ( $80 | CH4 ), SFX_80760_4_Ch4
- dbw CH5, SFX_8076f_4_Ch5
- dbw CH7, SFX_8077d_4_Ch7
-
-SFX_80057_4::
- dbw ( $80 | CH4 ), SFX_804fa_4_Ch4
- dbw CH5, SFX_80519_4_Ch5
- dbw CH7, SFX_80538_4_Ch7
-
-SFX_80060_4::
- dbw ( $80 | CH4 ), SFX_808a9_4_Ch4
- dbw CH5, SFX_808c8_4_Ch5
- dbw CH7, SFX_808e7_4_Ch7
-
-SFX_80069_4::
- dbw ( $80 | CH4 ), SFX_80689_4_Ch4
- dbw CH5, SFX_8069c_4_Ch5
- dbw CH7, SFX_806ae_4_Ch7
-
-SFX_80072_4::
- dbw ( $80 | CH4 ), SFX_80633_4_Ch4
- dbw CH5, SFX_8064d_4_Ch5
- dbw CH7, SFX_8064e_4_Ch7
-
-SFX_8007b_4::
- dbw ( $80 | CH4 ), SFX_80661_4_Ch4
- dbw CH5, SFX_80670_4_Ch5
- dbw CH7, SFX_8067f_4_Ch7
-
-SFX_80084_4::
- dbw ( $80 | CH4 ), SFX_80879_4_Ch4
- dbw CH5, SFX_8088c_4_Ch5
- dbw CH7, SFX_8089f_4_Ch7
-
-SFX_8008d_4::
- dbw ( $80 | CH4 ), SFX_80383_4_Ch4
- dbw CH5, SFX_803a0_4_Ch5
- dbw CH7, SFX_803c1_4_Ch7
-
-SFX_80096_4::
- dbw ( $80 | CH4 ), SFX_8081e_4_Ch4
- dbw CH5, SFX_8083d_4_Ch5
- dbw CH7, SFX_80860_4_Ch7
-
-SFX_8009f_4::
- dbw ( $80 | CH4 ), SFX_806af_4_Ch4
- dbw CH5, SFX_806da_4_Ch5
- dbw CH7, SFX_806f9_4_Ch7
-
-SFX_800a8_4::
- dbw ( $80 | CH4 ), SFX_80712_4_Ch4
- dbw CH5, SFX_80739_4_Ch5
- dbw CH7, SFX_8075f_4_Ch7
-
-SFX_800b1_4::
- dbw ( $80 | CH4 ), SFX_8077e_4_Ch4
- dbw CH5, SFX_8079d_4_Ch5
- dbw CH7, SFX_807cc_4_Ch7
-
-SFX_800ba_4::
- dbw ( $80 | CH4 ), SFX_80603_4_Ch4
- dbw CH5, SFX_80616_4_Ch5
- dbw CH7, SFX_80629_4_Ch7
-
-SFX_800c3_4::
- dbw ( $80 | CH4 ), SFX_80545_4_Ch4
- dbw CH5, SFX_80560_4_Ch5
- dbw CH7, SFX_8057b_4_Ch7
-
-SFX_800cc_4::
- dbw ( $80 | CH4 ), SFX_8058b_4_Ch4
- dbw CH5, SFX_805ae_4_Ch5
- dbw CH7, SFX_805d1_4_Ch7
-
-SFX_800d5_4::
- dbw ( $80 | CH4 ), SFX_80467_4_Ch4
- dbw CH5, SFX_80486_4_Ch5
- dbw CH7, SFX_804a9_4_Ch7
-
-SFX_800de_4::
- dbw ( $80 | CH4 ), SFX_8097f_4_Ch4
- dbw CH5, SFX_80992_4_Ch5
- dbw CH7, SFX_809a5_4_Ch7
-
-SFX_800e7_4::
- dbw ( $80 | CH4 ), SFX_809b2_4_Ch4
- dbw CH5, SFX_809cd_4_Ch5
- dbw CH7, SFX_809e8_4_Ch7
-
-SFX_800f0_4::
- dbw ( $80 | CH4 ), SFX_809fb_4_Ch4
- dbw CH5, SFX_80a0a_4_Ch5
- dbw CH7, SFX_80a19_4_Ch7
-
-SFX_800f9_4::
- dbw ( $80 | CH4 ), SFX_80a89_4_Ch4
- dbw CH5, SFX_80aa4_4_Ch5
- dbw CH7, SFX_80abf_4_Ch7
-
-SFX_80102_4::
- dbw ( $80 | CH4 ), SFX_8091c_4_Ch4
- dbw CH5, SFX_8092b_4_Ch5
- dbw CH7, SFX_8093a_4_Ch7
-
-SFX_8010b_4::
- dbw ( $80 | CH4 ), SFX_80ad2_4_Ch4
- dbw CH5, SFX_80ae5_4_Ch5
- dbw CH7, SFX_80af8_4_Ch7
-
-SFX_80114_4::
- dbw ( $80 | CH4 ), SFX_80be2_4_Ch4
- dbw CH5, SFX_80c05_4_Ch5
- dbw CH7, SFX_80c28_4_Ch7
-
-SFX_8011d_4::
- dbw ( $80 | CH4 ), SFX_808fa_4_Ch4
- dbw CH5, SFX_80909_4_Ch5
- dbw CH7, SFX_8091b_4_Ch7
-
-SFX_80126_4::
- dbw ( $80 | CH4 ), SFX_80b53_4_Ch4
- dbw CH5, SFX_80b6e_4_Ch5
- dbw CH7, SFX_80b89_4_Ch7
-
-SFX_8012f_4::
- dbw ( $80 | CH4 ), SFX_80944_4_Ch4
- dbw CH5, SFX_8095b_4_Ch5
- dbw CH7, SFX_80972_4_Ch7
-
-SFX_80138_4::
- dbw ( $80 | CH4 ), SFX_80b05_4_Ch4
- dbw CH5, SFX_80b28_4_Ch5
- dbw CH7, SFX_80b43_4_Ch7
-
-SFX_80141_4::
- dbw ( $80 | CH4 ), SFX_80b9c_4_Ch4
- dbw CH5, SFX_80bb7_4_Ch5
- dbw CH7, SFX_80bd2_4_Ch7
-
-SFX_8014a_4::
- dbw ( $80 | CH4 ), SFX_80a23_4_Ch4
- dbw CH5, SFX_80a46_4_Ch5
- dbw CH7, SFX_80a6d_4_Ch7
-
-SFX_80153_4::
- dbw ( $80 | CH4 ), SFX_80c3b_4_Ch4
- dbw CH5, SFX_80c4e_4_Ch5
- dbw CH7, SFX_80c61_4_Ch7
-
-SFX_8015c_4::
- dbw ( $80 | CH4 ), SFX_80c6e_4_Ch4
- dbw CH5, SFX_80c81_4_Ch5
- dbw CH7, SFX_80c94_4_Ch7
-
-SFX_80165_4::
- dbw ( $80 | CH4 ), SFX_80ca1_4_Ch4
- dbw CH5, SFX_80cc4_4_Ch5
- dbw CH7, SFX_80ce6_4_Ch7
-
-SFX_8016e_4::
- dbw ( $80 | CH4 ), SFX_80ce7_4_Ch4
- dbw CH5, SFX_80cfa_4_Ch5
- dbw CH7, SFX_80d0d_4_Ch7
-
-SFX_80177_4::
- dbw ( $80 | CH4 ), SFX_803da_4_Ch4
- dbw CH5, SFX_803f1_4_Ch5
- dbw CH7, SFX_80404_4_Ch7
-
-SFX_80180_4::
- dbw ( $80 | CH4 ), SFX_80411_4_Ch4
- dbw CH5, SFX_80434_4_Ch5
- dbw CH7, SFX_80457_4_Ch7
-
-SFX_80189_4::
- dbw ( $80 | CH4 ), SFX_804bf_4_Ch4
- dbw CH5, SFX_804d6_4_Ch5
- dbw CH7, SFX_804ed_4_Ch7
+SFX_Unknown_80760::
+ audio_header SFX_Unknown_80760, Ch5, Ch6, Ch8
+
+SFX_Unknown_804fa::
+ audio_header SFX_Unknown_804fa, Ch5, Ch6, Ch8
+
+SFX_Unknown_808a9::
+ audio_header SFX_Unknown_808a9, Ch5, Ch6, Ch8
+
+SFX_Unknown_80689::
+ audio_header SFX_Unknown_80689, Ch5, Ch6, Ch8
+
+SFX_Unknown_80633::
+ audio_header SFX_Unknown_80633, Ch5, Ch6, Ch8
+
+SFX_Unknown_80661::
+ audio_header SFX_Unknown_80661, Ch5, Ch6, Ch8
+
+SFX_Unknown_80879::
+ audio_header SFX_Unknown_80879, Ch5, Ch6, Ch8
+
+SFX_Unknown_80383::
+ audio_header SFX_Unknown_80383, Ch5, Ch6, Ch8
+
+SFX_Unknown_8081e::
+ audio_header SFX_Unknown_8081e, Ch5, Ch6, Ch8
+
+SFX_Unknown_806af::
+ audio_header SFX_Unknown_806af, Ch5, Ch6, Ch8
+
+SFX_Unknown_80712::
+ audio_header SFX_Unknown_80712, Ch5, Ch6, Ch8
+
+SFX_Unknown_8077e::
+ audio_header SFX_Unknown_8077e, Ch5, Ch6, Ch8
+
+SFX_Unknown_80603::
+ audio_header SFX_Unknown_80603, Ch5, Ch6, Ch8
+
+SFX_Unknown_80545::
+ audio_header SFX_Unknown_80545, Ch5, Ch6, Ch8
+
+SFX_Unknown_8058b::
+ audio_header SFX_Unknown_8058b, Ch5, Ch6, Ch8
+
+SFX_Unknown_80467::
+ audio_header SFX_Unknown_80467, Ch5, Ch6, Ch8
+
+SFX_Unknown_8097f::
+ audio_header SFX_Unknown_8097f, Ch5, Ch6, Ch8
+
+SFX_Unknown_809b2::
+ audio_header SFX_Unknown_809b2, Ch5, Ch6, Ch8
+
+SFX_Unknown_809fb::
+ audio_header SFX_Unknown_809fb, Ch5, Ch6, Ch8
+
+SFX_Unknown_80a89::
+ audio_header SFX_Unknown_80a89, Ch5, Ch6, Ch8
+
+SFX_Unknown_8091c::
+ audio_header SFX_Unknown_8091c, Ch5, Ch6, Ch8
+
+SFX_Unknown_80ad2::
+ audio_header SFX_Unknown_80ad2, Ch5, Ch6, Ch8
+
+SFX_Unknown_80be2::
+ audio_header SFX_Unknown_80be2, Ch5, Ch6, Ch8
+
+SFX_Unknown_808fa::
+ audio_header SFX_Unknown_808fa, Ch5, Ch6, Ch8
+
+SFX_Unknown_80b53::
+ audio_header SFX_Unknown_80b53, Ch5, Ch6, Ch8
+
+SFX_Unknown_80944::
+ audio_header SFX_Unknown_80944, Ch5, Ch6, Ch8
+
+SFX_Unknown_80b05::
+ audio_header SFX_Unknown_80b05, Ch5, Ch6, Ch8
+
+SFX_Unknown_80b9c::
+ audio_header SFX_Unknown_80b9c, Ch5, Ch6, Ch8
+
+SFX_Unknown_80a23::
+ audio_header SFX_Unknown_80a23, Ch5, Ch6, Ch8
+
+SFX_Unknown_80c3b::
+ audio_header SFX_Unknown_80c3b, Ch5, Ch6, Ch8
+
+SFX_Unknown_80c6e::
+ audio_header SFX_Unknown_80c6e, Ch5, Ch6, Ch8
+
+SFX_Unknown_80ca1::
+ audio_header SFX_Unknown_80ca1, Ch5, Ch6, Ch8
+
+SFX_Unknown_80ce7::
+ audio_header SFX_Unknown_80ce7, Ch5, Ch6, Ch8
+
+SFX_Unknown_803da::
+ audio_header SFX_Unknown_803da, Ch5, Ch6, Ch8
+
+SFX_Unknown_80411::
+ audio_header SFX_Unknown_80411, Ch5, Ch6, Ch8
+
+SFX_Unknown_804bf::
+ audio_header SFX_Unknown_804bf, Ch5, Ch6, Ch8
SFX_Get_Item1_4::
- dbw ( $80 | CH4 ), SFX_80e5a_4_Ch4
- dbw CH5, SFX_80e71_4_Ch5
- dbw CH6, SFX_80e81_4_Ch6
+ audio_header SFX_Get_Item1_4, Ch5, Ch6, Ch7
SFX_Get_Item2_4::
- dbw ( $80 | CH4 ), SFX_80ec8_4_Ch4
- dbw CH5, SFX_80ee7_4_Ch5
- dbw CH6, SFX_80eff_4_Ch6
+ audio_header SFX_Get_Item2_4, Ch5, Ch6, Ch7
SFX_Tink_4::
- dbw CH4, SFX_8028e_4_Ch4
+ audio_header SFX_Tink_4, Ch5
-SFX_Heal_Ailment_4::
- dbw CH4, SFX_8027f_4_Ch4
+SFX_Unknown_8027f::
+ audio_header SFX_Unknown_8027f, Ch5
-SFX_Start_Menu_4::
- dbw CH4, SFX_8026a_4_Ch4
+SFX_Unknown_8026a::
+ audio_header SFX_Unknown_8026a, Ch5
-SFX_PressAB_4::
- dbw CH7, SFX_80263_4_Ch7
+SFX_Unknown_80263::
+ audio_header SFX_Unknown_80263, Ch8
SFX_Surfing_Add_Points::
- dbw CH4, SFX_Surfing_Add_Points_Ch4
+ audio_header SFX_Surfing_Add_Points, Ch5
SFX_Surfing_Jump::
- dbw CH7, SFX_Surfing_Jump_Ch7
+ audio_header SFX_Surfing_Jump, Ch8
SFX_Surfing_Flip::
- dbw CH4, SFX_Surfing_Flip_Ch4
+ audio_header SFX_Surfing_Flip, Ch5
SFX_Surfing_Land::
- dbw CH7, SFX_Surfing_Land_Ch7
+ audio_header SFX_Surfing_Land, Ch8
-SFX_801bc_4::
- dbw CH4, SFX_802cc_4_Ch4
+SFX_Unknown_802cc::
+ audio_header SFX_Unknown_802cc, Ch5
SFX_Surfing_Crash::
- dbw CH7, SFX_Surfing_Crash_Ch7
+ audio_header SFX_Surfing_Crash, Ch8
SFX_Get_Item2_4_2::
- dbw ( $80 | CH4 ), SFX_Get_Item2_4_2_Ch1
- dbw CH5, SFX_Get_Item2_4_2_Ch2
- dbw CH6, SFX_Get_Item2_4_2_Ch3
+ audio_header SFX_Get_Item2_4_2, Ch5, Ch6, Ch7
diff --git a/audio/music/bikeriding.asm b/audio/music/bikeriding.asm
index b5378a94..302e5cf9 100644
--- a/audio/music/bikeriding.asm
+++ b/audio/music/bikeriding.asm
@@ -1,704 +1,704 @@
Music_BikeRiding_Ch1::
tempo 144
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 1, 4
- notetype 12, 11, 5
+ note_type 12, 11, 5
octave 3
- G_ 2
+ note G_, 2
Music_BikeRiding_branch_7dbc9::
octave 4
- C_ 4
- D_ 4
- E_ 2
- C_ 2
- E_ 2
- G_ 2
- G_ 2
- F_ 2
- E_ 2
- F_ 4
- E_ 2
- D_ 2
- F_ 4
- D_ 4
+ note C_, 4
+ note D_, 4
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note G_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 4
+ note E_, 2
+ note D_, 2
+ note F_, 4
+ note D_, 4
octave 3
- B_ 2
- octave 4
- F_ 4
- D_ 4
- E_ 2
- F_ 2
- G_ 2
- C_ 2
- E_ 2
- C_ 2
- D_ 2
- E_ 2
- notetype 12, 11, 6
- F_ 10
- notetype 12, 10, 6
- F_ 2
- E_ 2
- F_ 2
- G_ 10
- E_ 2
- D_ 2
- E_ 2
- F_ 6
- toggleperfectpitch
- notetype 12, 11, 3
- E_ 2
- D_ 2
- D_ 1
- E_ 1
- F_ 2
- E_ 1
- F_ 1
- toggleperfectpitch
- notetype 12, 11, 5
- G_ 6
- G_ 6
- A_ 2
- F_ 2
- G_ 6
- notetype 12, 11, 4
- G_ 2
- F_ 4
- notetype 12, 10, 4
- E_ 2
- D_ 2
- notetype 12, 9, 3
+ note B_, 2
+ octave 4
+ note F_, 4
+ note D_, 4
+ note E_, 2
+ note F_, 2
+ note G_, 2
+ note C_, 2
+ note E_, 2
+ note C_, 2
+ note D_, 2
+ note E_, 2
+ note_type 12, 11, 6
+ note F_, 10
+ note_type 12, 10, 6
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note G_, 10
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 6
+ toggle_perfect_pitch
+ note_type 12, 11, 3
+ note E_, 2
+ note D_, 2
+ note D_, 1
+ note E_, 1
+ note F_, 2
+ note E_, 1
+ note F_, 1
+ toggle_perfect_pitch
+ note_type 12, 11, 5
+ note G_, 6
+ note G_, 6
+ note A_, 2
+ note F_, 2
+ note G_, 6
+ note_type 12, 11, 4
+ note G_, 2
+ note F_, 4
+ note_type 12, 10, 4
+ note E_, 2
+ note D_, 2
+ note_type 12, 9, 3
octave 3
- A_ 2
+ note A_, 2
octave 4
- C_ 4
- C_ 2
+ note C_, 4
+ note C_, 2
octave 3
- B_ 2
- A_ 1
- B_ 1
- A_ 2
- B_ 2
- octave 4
- C_ 2
- C_ 4
- C_ 2
+ note B_, 2
+ note A_, 1
+ note B_, 1
+ note A_, 2
+ note B_, 2
+ octave 4
+ note C_, 2
+ note C_, 4
+ note C_, 2
octave 3
- A_ 2
- B_ 2
- B_ 2
- A_ 2
+ note A_, 2
+ note B_, 2
+ note B_, 2
+ note A_, 2
octave 4
- C_ 4
+ note C_, 4
octave 3
- A_ 2
- B_ 1
+ note A_, 2
+ note B_, 1
octave 4
- C_ 1
+ note C_, 1
octave 3
- B_ 2
+ note B_, 2
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- C_ 4
+ note C_, 4
octave 3
- B_ 1
+ note B_, 1
octave 4
- C_ 1
- D_ 1
+ note C_, 1
+ note D_, 1
octave 3
- B_ 1
- octave 4
- C_ 4
- notetype 12, 3, 13
- C_ 4
- notetype 12, 11, 4
- F_ 6
- G_ 4
- F_ 1
- G_ 1
- F_ 4
- E_ 6
- F_ 2
- E_ 2
- D_ 1
- E_ 1
- D_ 2
- C_ 2
- notetype 12, 11, 5
+ note B_, 1
+ octave 4
+ note C_, 4
+ note_type 12, 3, -5
+ note C_, 4
+ note_type 12, 11, 4
+ note F_, 6
+ note G_, 4
+ note F_, 1
+ note G_, 1
+ note F_, 4
+ note E_, 6
+ note F_, 2
+ note E_, 2
+ note D_, 1
+ note E_, 1
+ note D_, 2
+ note C_, 2
+ note_type 12, 11, 5
octave 3
- A_ 4
+ note A_, 4
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- C_ 4
- F_ 4
- D_ 4
- F# 4
+ note E_, 4
+ note C_, 4
+ note F_, 4
+ note D_, 4
+ note F#, 4
vibrato 10, 2, 6
- notetype 12, 8, 0
- G_ 16
- G_ 4
- notetype 12, 8, 7
- G_ 12
- notetype 12, 11, 5
+ note_type 12, 8, 0
+ note G_, 16
+ note G_, 4
+ note_type 12, 8, 7
+ note G_, 12
+ note_type 12, 11, 5
vibrato 8, 1, 4
- loopchannel 0, Music_BikeRiding_branch_7dbc9
+ sound_loop 0, Music_BikeRiding_branch_7dbc9
Music_BikeRiding_Ch2::
- duty 2
+ duty_cycle 2
vibrato 6, 1, 5
- notetype 12, 12, 3
+ note_type 12, 12, 3
octave 4
- C_ 2
+ note C_, 2
Music_BikeRiding_branch_7dc75::
- E_ 4
- F_ 4
- G_ 4
+ note E_, 4
+ note F_, 4
+ note G_, 4
octave 5
- C_ 4
- octave 4
- B_ 6
- A_ 1
- B_ 1
- A_ 10
- F_ 2
- G_ 2
- A_ 2
+ note C_, 4
+ octave 4
+ note B_, 6
+ note A_, 1
+ note B_, 1
+ note A_, 10
+ note F_, 2
+ note G_, 2
+ note A_, 2
octave 5
- D_ 2
- C_ 2
+ note D_, 2
+ note C_, 2
octave 4
- B_ 2
- A_ 1
- B_ 1
+ note B_, 2
+ note A_, 1
+ note B_, 1
octave 5
- C_ 6
- octave 4
- A_ 2
- G_ 4
- duty 3
- notetype 12, 8, 4
- A# 6
- duty 2
- notetype 12, 12, 5
+ note C_, 6
+ octave 4
+ note A_, 2
+ note G_, 4
+ duty_cycle 3
+ note_type 12, 8, 4
+ note A#, 6
+ duty_cycle 2
+ note_type 12, 12, 5
octave 5
- C_ 2
+ note C_, 2
octave 4
- B_ 2
+ note B_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- A_ 10
+ note A_, 10
octave 5
- C_ 2
+ note C_, 2
octave 4
- B_ 2
+ note B_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G_ 10
- notetype 12, 12, 3
+ note G_, 10
+ note_type 12, 12, 3
octave 5
- C_ 4
- E_ 2
- D_ 2
- C_ 2
+ note C_, 4
+ note E_, 2
+ note D_, 2
+ note C_, 2
octave 4
- B_ 2
+ note B_, 2
octave 5
- C_ 2
- notetype 12, 11, 0
- D_ 4
- notetype 12, 12, 7
- D_ 10
- D_ 1
- C_ 1
- notetype 12, 11, 0
- octave 4
- B_ 4
- notetype 12, 12, 7
- B_ 12
- notetype 12, 12, 4
- F_ 6
- F_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- E_ 6
- E_ 2
- F_ 2
- E_ 2
- D_ 2
- C_ 2
- F_ 2
- E_ 2
- D_ 2
- F_ 2
- G_ 4
- A_ 2
- F_ 2
- E_ 2
- G_ 4
- F_ 2
- E_ 6
- notetype 6, 12, 2
- F_ 1
- G_ 1
- A_ 1
- B_ 1
- notetype 12, 12, 3
+ note C_, 2
+ note_type 12, 11, 0
+ note D_, 4
+ note_type 12, 12, 7
+ note D_, 10
+ note D_, 1
+ note C_, 1
+ note_type 12, 11, 0
+ octave 4
+ note B_, 4
+ note_type 12, 12, 7
+ note B_, 12
+ note_type 12, 12, 4
+ note F_, 6
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note E_, 6
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note F_, 2
+ note G_, 4
+ note A_, 2
+ note F_, 2
+ note E_, 2
+ note G_, 4
+ note F_, 2
+ note E_, 6
+ note_type 6, 12, 2
+ note F_, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
+ note_type 12, 12, 3
octave 5
- C_ 2
+ note C_, 2
octave 4
- B_ 2
- A_ 2
+ note B_, 2
+ note A_, 2
octave 5
- C_ 2
- octave 4
- B_ 4
- A_ 4
- G_ 2
- A# 4
- A_ 2
- G_ 4
- F_ 2
- E_ 2
- notetype 8, 12, 4
- A_ 4
- G_ 4
- F_ 4
- B_ 4
- A_ 4
- G_ 4
+ note C_, 2
+ octave 4
+ note B_, 4
+ note A_, 4
+ note G_, 2
+ note A#, 4
+ note A_, 2
+ note G_, 4
+ note F_, 2
+ note E_, 2
+ note_type 8, 12, 4
+ note A_, 4
+ note G_, 4
+ note F_, 4
+ note B_, 4
+ note A_, 4
+ note G_, 4
octave 5
- C_ 4
+ note C_, 4
octave 4
- B_ 4
- A_ 4
+ note B_, 4
+ note A_, 4
octave 5
- D_ 4
- E_ 4
- C_ 4
- notetype 12, 12, 7
- D_ 12
- C_ 4
- notetype 12, 11, 0
- octave 4
- B_ 4
- notetype 12, 12, 7
- B_ 12
- notetype 12, 12, 3
- loopchannel 0, Music_BikeRiding_branch_7dc75
+ note D_, 4
+ note E_, 4
+ note C_, 4
+ note_type 12, 12, 7
+ note D_, 12
+ note C_, 4
+ note_type 12, 11, 0
+ octave 4
+ note B_, 4
+ note_type 12, 12, 7
+ note B_, 12
+ note_type 12, 12, 3
+ sound_loop 0, Music_BikeRiding_branch_7dc75
Music_BikeRiding_Ch3::
- notetype 12, 1, 3
+ note_type 12, 1, 3
rest 2
Music_BikeRiding_branch_7dd17::
octave 4
- C_ 1
+ note C_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 3
- G_ 1
+ note G_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
- loopchannel 0, Music_BikeRiding_branch_7dd17
+ sound_loop 0, Music_BikeRiding_branch_7dd17
Music_BikeRiding_Ch4::
- dspeed 12
+ drum_speed 12
rest 2
Music_BikeRiding_branch_7de6a::
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7deb4
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dec2
- callchannel Music_BikeRiding_branch_7deb4
- callchannel Music_BikeRiding_branch_7deb4
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7deb4
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dec2
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7deb4
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dea7
- callchannel Music_BikeRiding_branch_7dea7
- loopchannel 0, Music_BikeRiding_branch_7de6a
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7deb4
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dec2
+ sound_call Music_BikeRiding_branch_7deb4
+ sound_call Music_BikeRiding_branch_7deb4
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7deb4
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dec2
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7deb4
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_call Music_BikeRiding_branch_7dea7
+ sound_loop 0, Music_BikeRiding_branch_7de6a
Music_BikeRiding_branch_7dea7::
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
- endchannel
+ drum_note 16, 2
+ sound_ret
Music_BikeRiding_branch_7deb4::
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
- triangle3 2
- triangle3 2
- endchannel
+ drum_note 16, 2
+ drum_note 16, 2
+ drum_note 16, 2
+ sound_ret
Music_BikeRiding_branch_7dec2::
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 2
+ drum_note 16, 2
rest 2
- triangle3 1
- triangle3 1
- endchannel
+ drum_note 16, 1
+ drum_note 16, 1
+ sound_ret
diff --git a/audio/music/celadon.asm b/audio/music/celadon.asm
index 3f015d8d..5f03fc51 100644
--- a/audio/music/celadon.asm
+++ b/audio/music/celadon.asm
@@ -1,411 +1,411 @@
Music_Celadon_Ch1::
tempo 144
volume 7, 7
- duty 3
- toggleperfectpitch
- notetype 12, 2, 15
+ duty_cycle 3
+ toggle_perfect_pitch
+ note_type 12, 2, -7
rest 8
octave 3
- D_ 8
+ note D_, 8
Music_Celadon_branch_b6d4::
- duty 2
- notetype 12, 11, 2
- G_ 4
- B_ 4
- G_ 2
- B_ 4
- G_ 2
- E_ 1
- E_ 1
- G_ 1
- E_ 1
- B_ 2
- octave 4
- C_ 2
+ duty_cycle 2
+ note_type 12, 11, 2
+ note G_, 4
+ note B_, 4
+ note G_, 2
+ note B_, 4
+ note G_, 2
+ note E_, 1
+ note E_, 1
+ note G_, 1
+ note E_, 1
+ note B_, 2
+ octave 4
+ note C_, 2
octave 3
- A_ 8
- F# 4
- A_ 4
- F# 2
- A_ 6
- A_ 1
- B_ 1
- octave 4
- C_ 1
+ note A_, 8
+ note F#, 4
+ note A_, 4
+ note F#, 2
+ note A_, 6
+ note A_, 1
+ note B_, 1
+ octave 4
+ note C_, 1
octave 3
- B_ 1
- A_ 2
- B_ 2
- G_ 4
+ note B_, 1
+ note A_, 2
+ note B_, 2
+ note G_, 4
octave 4
- G_ 4
+ note G_, 4
octave 3
- G_ 4
- B_ 4
- G_ 2
- B_ 4
- G_ 2
- E_ 1
- F# 1
- G_ 1
- A_ 1
- B_ 2
- octave 4
- C_ 2
+ note G_, 4
+ note B_, 4
+ note G_, 2
+ note B_, 4
+ note G_, 2
+ note E_, 1
+ note F#, 1
+ note G_, 1
+ note A_, 1
+ note B_, 2
+ octave 4
+ note C_, 2
octave 3
- A_ 8
- A_ 2
- B_ 2
+ note A_, 8
+ note A_, 2
+ note B_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- B_ 2
- A_ 2
- G_ 2
- F# 2
- G_ 2
- F# 4
- D_ 1
- E_ 1
- F# 1
- G_ 1
- A_ 8
- notetype 12, 9, 4
- B_ 8
- G_ 4
- D_ 4
- G_ 4
- A_ 2
- octave 4
- C_ 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 4
+ note D_, 1
+ note E_, 1
+ note F#, 1
+ note G_, 1
+ note A_, 8
+ note_type 12, 9, 4
+ note B_, 8
+ note G_, 4
+ note D_, 4
+ note G_, 4
+ note A_, 2
+ octave 4
+ note C_, 2
octave 3
- B_ 8
- A_ 8
- F# 4
- G_ 4
- A_ 4
- G_ 4
- F# 4
- A_ 4
- B_ 8
- G_ 4
- D_ 4
- G_ 4
- A_ 2
- octave 4
- C_ 2
+ note B_, 8
+ note A_, 8
+ note F#, 4
+ note G_, 4
+ note A_, 4
+ note G_, 4
+ note F#, 4
+ note A_, 4
+ note B_, 8
+ note G_, 4
+ note D_, 4
+ note G_, 4
+ note A_, 2
+ octave 4
+ note C_, 2
octave 3
- B_ 8
- A_ 8
- F# 4
- G_ 4
- A_ 4
- G_ 4
- F# 4
- A_ 4
- loopchannel 0, Music_Celadon_branch_b6d4
+ note B_, 8
+ note A_, 8
+ note F#, 4
+ note G_, 4
+ note A_, 4
+ note G_, 4
+ note F#, 4
+ note A_, 4
+ sound_loop 0, Music_Celadon_branch_b6d4
Music_Celadon_Ch2::
- duty 3
- notetype 12, 12, 2
- octave 4
- D_ 1
- C# 1
- D_ 1
- E_ 1
- F# 1
- E_ 1
- F# 1
- G_ 1
- notetype 12, 10, 0
- A_ 8
+ duty_cycle 3
+ note_type 12, 12, 2
+ octave 4
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note E_, 1
+ note F#, 1
+ note E_, 1
+ note F#, 1
+ note G_, 1
+ note_type 12, 10, 0
+ note A_, 8
Music_Celadon_branch_b74a::
- duty 2
- notetype 12, 12, 2
- octave 4
- B_ 4
- G_ 4
- B_ 2
- G_ 6
- B_ 1
- G_ 1
- A_ 1
- B_ 1
+ duty_cycle 2
+ note_type 12, 12, 2
+ octave 4
+ note B_, 4
+ note G_, 4
+ note B_, 2
+ note G_, 6
+ note B_, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 5
- C_ 2
- octave 4
- B_ 2
- A_ 8
- A_ 4
- F# 4
- A_ 2
- F# 6
- A_ 1
- G_ 1
- F# 1
- G_ 1
- A_ 2
- B_ 2
- G_ 4
- B_ 4
- B_ 4
- G_ 4
- B_ 2
- G_ 4
+ note C_, 2
+ octave 4
+ note B_, 2
+ note A_, 8
+ note A_, 4
+ note F#, 4
+ note A_, 2
+ note F#, 6
+ note A_, 1
+ note G_, 1
+ note F#, 1
+ note G_, 1
+ note A_, 2
+ note B_, 2
+ note G_, 4
+ note B_, 4
+ note B_, 4
+ note G_, 4
+ note B_, 2
+ note G_, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- B_ 1
- G_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 5
- C_ 2
- octave 4
- B_ 2
- A_ 8
- A_ 2
- G_ 2
- F# 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- C# 2
- D_ 8
+ note C_, 2
+ octave 4
+ note B_, 2
+ note A_, 8
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
+ note D_, 8
octave 5
- D_ 8
- notetype 12, 11, 4
+ note D_, 8
+ note_type 12, 11, 4
octave 4
- D_ 8
- C_ 2
+ note D_, 8
+ note C_, 2
octave 3
- B_ 2
- A_ 2
- B_ 2
- octave 4
- E_ 4
- F# 4
- D_ 8
- C_ 8
+ note B_, 2
+ note A_, 2
+ note B_, 2
+ octave 4
+ note E_, 4
+ note F#, 4
+ note D_, 8
+ note C_, 8
octave 3
- A_ 2
- B_ 2
- octave 4
- C_ 2
- D_ 2
- E_ 2
- C_ 2
- D_ 2
- E_ 2
- D_ 8
- D_ 8
- C_ 2
+ note A_, 2
+ note B_, 2
+ octave 4
+ note C_, 2
+ note D_, 2
+ note E_, 2
+ note C_, 2
+ note D_, 2
+ note E_, 2
+ note D_, 8
+ note D_, 8
+ note C_, 2
octave 3
- B_ 2
- A_ 2
- B_ 2
- octave 4
- E_ 4
- D_ 2
- E_ 2
- D_ 8
- C_ 8
- A_ 2
- G_ 2
- F# 2
- E_ 2
- F# 2
- E_ 2
- D_ 2
- E_ 2
- D_ 8
- loopchannel 0, Music_Celadon_branch_b74a
+ note B_, 2
+ note A_, 2
+ note B_, 2
+ octave 4
+ note E_, 4
+ note D_, 2
+ note E_, 2
+ note D_, 8
+ note C_, 8
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note D_, 8
+ sound_loop 0, Music_Celadon_branch_b74a
Music_Celadon_Ch3::
- notetype 12, 1, 3
+ note_type 12, 1, 3
rest 8
octave 5
- D_ 1
- C# 1
- D_ 1
- E_ 1
- F# 1
- E_ 1
- F# 1
- G_ 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note E_, 1
+ note F#, 1
+ note E_, 1
+ note F#, 1
+ note G_, 1
Music_Celadon_branch_b7c1::
octave 4
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- B_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- G_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- C# 2
- D_ 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note B_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note C#, 2
+ note D_, 2
rest 6
- F# 2
+ note F#, 2
rest 4
- F# 2
- G_ 2
+ note F#, 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
- B_ 2
- G_ 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
octave 5
- E_ 2
- D_ 2
- C_ 2
- D_ 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
octave 4
- B_ 2
- G_ 2
+ note B_, 2
+ note G_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- E_ 2
- D_ 2
- C_ 2
- D_ 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
octave 4
- B_ 2
- A_ 2
+ note B_, 2
+ note A_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
- B_ 2
- G_ 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
octave 5
- E_ 2
- D_ 2
- C_ 2
- D_ 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
octave 4
- B_ 2
- G_ 2
+ note B_, 2
+ note G_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
- C_ 2
- octave 4
- B_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- loopchannel 0, Music_Celadon_branch_b7c1
+ note D_, 2
+ note C_, 2
+ octave 4
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ sound_loop 0, Music_Celadon_branch_b7c1
diff --git a/audio/music/cinnabar.asm b/audio/music/cinnabar.asm
index 4fe93c31..69496af5 100644
--- a/audio/music/cinnabar.asm
+++ b/audio/music/cinnabar.asm
@@ -1,354 +1,354 @@
Music_Cinnabar_Ch1::
tempo 144
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 12, 3, 4
- toggleperfectpitch
+ toggle_perfect_pitch
Music_Cinnabar_branch_b878::
- notetype 12, 11, 5
+ note_type 12, 11, 5
rest 4
octave 3
- D_ 4
- E_ 6
- C# 2
- notetype 12, 11, 1
- D_ 4
- notetype 12, 11, 5
- B_ 4
+ note D_, 4
+ note E_, 6
+ note C#, 2
+ note_type 12, 11, 1
+ note D_, 4
+ note_type 12, 11, 5
+ note B_, 4
octave 4
- C_ 6
+ note C_, 6
octave 3
- A_ 2
- notetype 12, 11, 1
- B_ 4
- notetype 12, 11, 5
- G_ 4
- F# 4
- E_ 2
- F# 2
- notetype 12, 11, 1
- G_ 4
- notetype 12, 11, 5
- G_ 4
- F# 4
- E_ 4
- D_ 4
- E_ 4
- F# 6
- A_ 2
- notetype 12, 11, 1
- G_ 4
- notetype 12, 11, 5
- B_ 4
+ note A_, 2
+ note_type 12, 11, 1
+ note B_, 4
+ note_type 12, 11, 5
+ note G_, 4
+ note F#, 4
+ note E_, 2
+ note F#, 2
+ note_type 12, 11, 1
+ note G_, 4
+ note_type 12, 11, 5
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note E_, 4
+ note F#, 6
+ note A_, 2
+ note_type 12, 11, 1
+ note G_, 4
+ note_type 12, 11, 5
+ note B_, 4
octave 4
- C_ 6
+ note C_, 6
octave 3
- A_ 2
- B_ 4
- G_ 4
- F# 3
- E_ 1
- F# 2
- A_ 2
- notetype 12, 10, 2
- G_ 4
+ note A_, 2
+ note B_, 4
+ note G_, 4
+ note F#, 3
+ note E_, 1
+ note F#, 2
+ note A_, 2
+ note_type 12, 10, 2
+ note G_, 4
octave 4
- D_ 1
- E_ 1
- D_ 4
- notetype 12, 7, 2
- D_ 1
- E_ 1
- D_ 4
- notetype 12, 10, 7
+ note D_, 1
+ note E_, 1
+ note D_, 4
+ note_type 12, 7, 2
+ note D_, 1
+ note E_, 1
+ note D_, 4
+ note_type 12, 10, 7
octave 3
- B_ 6
- G_ 2
- E_ 8
+ note B_, 6
+ note G_, 2
+ note E_, 8
octave 4
- C_ 6
+ note C_, 6
octave 3
- A_ 2
- F# 8
+ note A_, 2
+ note F#, 8
octave 4
- F# 6
- D_ 2
+ note F#, 6
+ note D_, 2
octave 3
- B_ 2
- A_ 2
- G_ 2
- F# 2
- G_ 8
- F# 4
- E_ 4
- loopchannel 0, Music_Cinnabar_branch_b878
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note G_, 8
+ note F#, 4
+ note E_, 4
+ sound_loop 0, Music_Cinnabar_branch_b878
Music_Cinnabar_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 3
Music_Cinnabar_branch_b8d9::
- notetype 12, 12, 7
+ note_type 12, 12, 7
octave 3
- G_ 6
- A_ 1
- B_ 1
+ note G_, 6
+ note A_, 1
+ note B_, 1
octave 4
- C_ 6
- D_ 1
- E_ 1
- notetype 12, 12, 1
- D_ 4
- notetype 12, 12, 7
- G_ 4
- A_ 6
- G_ 1
- F# 1
- E_ 4
- D_ 4
- C_ 3
+ note C_, 6
+ note D_, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note D_, 4
+ note_type 12, 12, 7
+ note G_, 4
+ note A_, 6
+ note G_, 1
+ note F#, 1
+ note E_, 4
+ note D_, 4
+ note C_, 3
octave 3
- B_ 1
+ note B_, 1
octave 4
- C_ 2
- D_ 1
- E_ 1
- notetype 12, 12, 1
- D_ 4
- notetype 12, 12, 7
+ note C_, 2
+ note D_, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note D_, 4
+ note_type 12, 12, 7
octave 3
- B_ 8
- A_ 4
- G_ 6
- A_ 1
- B_ 1
+ note B_, 8
+ note A_, 4
+ note G_, 6
+ note A_, 1
+ note B_, 1
octave 4
- C_ 6
- D_ 1
- E_ 1
- notetype 12, 12, 1
- D_ 4
- notetype 12, 12, 7
- G_ 4
- A_ 6
- G_ 1
- F# 1
- E_ 4
- D_ 4
- C_ 3
+ note C_, 6
+ note D_, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note D_, 4
+ note_type 12, 12, 7
+ note G_, 4
+ note A_, 6
+ note G_, 1
+ note F#, 1
+ note E_, 4
+ note D_, 4
+ note C_, 3
octave 3
- B_ 1
+ note B_, 1
octave 4
- C_ 2
- D_ 1
- E_ 1
- notetype 12, 12, 1
- D_ 4
- notetype 12, 12, 7
+ note C_, 2
+ note D_, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note D_, 4
+ note_type 12, 12, 7
octave 3
- A_ 4
- G_ 4
- F# 4
- notetype 12, 11, 0
+ note A_, 4
+ note G_, 4
+ note F#, 4
+ note_type 12, 11, 0
octave 4
- D_ 6
+ note D_, 6
octave 3
- B_ 2
- G_ 8
+ note B_, 2
+ note G_, 8
octave 4
- E_ 6
- C_ 2
+ note E_, 6
+ note C_, 2
octave 3
- A_ 8
+ note A_, 8
octave 4
- A_ 6
- F# 2
- D_ 2
- C_ 2
+ note A_, 6
+ note F#, 2
+ note D_, 2
+ note C_, 2
octave 3
- B_ 2
- A_ 2
- B_ 4
+ note B_, 2
+ note A_, 2
+ note B_, 4
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 2
- A_ 6
- loopchannel 0, Music_Cinnabar_branch_b8d9
+ note B_, 2
+ note A_, 6
+ sound_loop 0, Music_Cinnabar_branch_b8d9
Music_Cinnabar_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
Music_Cinnabar_branch_b93f::
octave 4
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 2
- G_ 1
- G_ 1
- A_ 1
+ note B_, 2
+ note G_, 1
+ note G_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- B_ 4
- A_ 1
+ note B_, 4
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C_ 4
+ note C_, 4
octave 4
- B_ 1
+ note B_, 1
rest 3
octave 5
- D_ 2
+ note D_, 2
octave 4
- B_ 1
- B_ 1
- B_ 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 5
- C_ 2
+ note C_, 2
octave 4
- B_ 1
+ note B_, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
octave 5
- E_ 2
- C_ 1
- C_ 1
- C_ 1
+ note E_, 2
+ note C_, 1
+ note C_, 1
+ note C_, 1
rest 1
- C_ 1
+ note C_, 1
rest 1
- E_ 2
- C_ 1
+ note E_, 2
+ note C_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 3
octave 5
- A_ 2
- F# 1
- F# 1
- D_ 1
+ note A_, 2
+ note F#, 1
+ note F#, 1
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- D_ 2
- C_ 1
+ note D_, 2
+ note C_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 3
octave 5
- D_ 2
- C_ 1
- C_ 1
+ note D_, 2
+ note C_, 1
+ note C_, 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 2
+ note A_, 2
octave 5
- C_ 1
+ note C_, 1
rest 1
- loopchannel 0, Music_Cinnabar_branch_b93f
+ sound_loop 0, Music_Cinnabar_branch_b93f
diff --git a/audio/music/cinnabarmansion.asm b/audio/music/cinnabarmansion.asm
index 438c2f18..ac6c08c3 100644
--- a/audio/music/cinnabarmansion.asm
+++ b/audio/music/cinnabarmansion.asm
@@ -2,171 +2,171 @@ Music_CinnabarMansion_Ch1::
tempo 144
volume 7, 7
vibrato 11, 2, 5
- duty 2
+ duty_cycle 2
Music_CinnabarMansion_branch_7ed19::
- notetype 12, 6, 2
+ note_type 12, 6, 2
octave 5
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
octave 4
- B_ 1
- B_ 1
- C_ 1
+ note B_, 1
+ note B_, 1
+ note C_, 1
rest 2
octave 5
- B_ 2
- E_ 2
+ note B_, 2
+ note E_, 2
octave 4
- C_ 2
- B_ 2
- E_ 2
- C_ 1
+ note C_, 2
+ note B_, 2
+ note E_, 2
+ note C_, 1
octave 5
- B_ 1
+ note B_, 1
rest 2
- loopchannel 14, Music_CinnabarMansion_branch_7ed19
- notetype 12, 10, 5
+ sound_loop 14, Music_CinnabarMansion_branch_7ed19
+ note_type 12, 10, 5
rest 16
rest 16
rest 15
octave 4
- C_ 1
+ note C_, 1
octave 5
- B_ 1
- B_ 2
- loopchannel 0, Music_CinnabarMansion_branch_7ed19
+ note B_, 1
+ note B_, 2
+ sound_loop 0, Music_CinnabarMansion_branch_7ed19
Music_CinnabarMansion_Ch2::
- duty 2
- toggleperfectpitch
+ duty_cycle 2
+ toggle_perfect_pitch
vibrato 10, 2, 4
- notetype 12, 12, 2
+ note_type 12, 12, 2
Music_CinnabarMansion_branch_7ed48::
rest 16
rest 16
- loopchannel 4, Music_CinnabarMansion_branch_7ed48
+ sound_loop 4, Music_CinnabarMansion_branch_7ed48
Music_CinnabarMansion_branch_7ed4e::
- notetype 12, 12, 2
+ note_type 12, 12, 2
Music_CinnabarMansion_branch_7ed50::
- callchannel Music_CinnabarMansion_branch_7ed6c
- loopchannel 3, Music_CinnabarMansion_branch_7ed50
+ sound_call Music_CinnabarMansion_branch_7ed6c
+ sound_loop 3, Music_CinnabarMansion_branch_7ed50
octave 3
- E_ 4
- D# 4
- B_ 4
- A# 4
- G_ 4
- G# 4
+ note E_, 4
+ note D#, 4
+ note B_, 4
+ note A#, 4
+ note G_, 4
+ note G#, 4
rest 4
- A# 4
- E_ 4
- D# 4
- B_ 4
- A# 4
- G_ 4
- G# 4
- G_ 4
- D# 4
- loopchannel 0, Music_CinnabarMansion_branch_7ed4e
+ note A#, 4
+ note E_, 4
+ note D#, 4
+ note B_, 4
+ note A#, 4
+ note G_, 4
+ note G#, 4
+ note G_, 4
+ note D#, 4
+ sound_loop 0, Music_CinnabarMansion_branch_7ed4e
Music_CinnabarMansion_branch_7ed6c::
octave 3
- E_ 4
- D# 4
- B_ 4
- A# 4
- G_ 4
- G# 4
- A_ 4
- A# 4
- E_ 4
- D# 4
- B_ 4
- A# 4
- G_ 4
- G# 4
+ note E_, 4
+ note D#, 4
+ note B_, 4
+ note A#, 4
+ note G_, 4
+ note G#, 4
+ note A_, 4
+ note A#, 4
+ note E_, 4
+ note D#, 4
+ note B_, 4
+ note A#, 4
+ note G_, 4
+ note G#, 4
rest 4
- A# 4
- endchannel
+ note A#, 4
+ sound_ret
Music_CinnabarMansion_Ch3::
- notetype 12, 1, 1
+ note_type 12, 1, 1
Music_CinnabarMansion_branch_7ed80::
octave 2
- B_ 2
+ note B_, 2
rest 2
octave 3
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- C_ 2
+ note C_, 2
rest 2
octave 3
- D# 2
+ note D#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- loopchannel 8, Music_CinnabarMansion_branch_7ed80
- E_ 16
- D# 16
- G_ 16
- G# 8
- D# 8
- loopchannel 0, Music_CinnabarMansion_branch_7ed80
+ sound_loop 8, Music_CinnabarMansion_branch_7ed80
+ note E_, 16
+ note D#, 16
+ note G_, 16
+ note G#, 8
+ note D#, 8
+ sound_loop 0, Music_CinnabarMansion_branch_7ed80
Music_CinnabarMansion_Ch4::
- dspeed 6
+ drum_speed 6
rest 16
rest 16
rest 16
rest 16
Music_CinnabarMansion_branch_7edb5::
- cymbal1 2
- cymbal1 2
- cymbal2 4
- cymbal1 2
- cymbal1 2
- cymbal2 4
- cymbal1 2
- cymbal1 2
- cymbal2 4
- cymbal1 2
- cymbal1 2
- cymbal3 4
- cymbal1 2
- cymbal1 2
+ drum_note 12, 2
+ drum_note 12, 2
+ drum_note 13, 4
+ drum_note 12, 2
+ drum_note 12, 2
+ drum_note 13, 4
+ drum_note 12, 2
+ drum_note 12, 2
+ drum_note 13, 4
+ drum_note 12, 2
+ drum_note 12, 2
+ drum_note 14, 4
+ drum_note 12, 2
+ drum_note 12, 2
rest 2
rest 10
rest 8
- cymbal3 8
- loopchannel 0, Music_CinnabarMansion_branch_7edb5
+ drum_note 14, 8
+ sound_loop 0, Music_CinnabarMansion_branch_7edb5
diff --git a/audio/music/cities1.asm b/audio/music/cities1.asm
index eb9ccde5..00ca3b5f 100644
--- a/audio/music/cities1.asm
+++ b/audio/music/cities1.asm
@@ -1,6 +1,6 @@
Music_Cities1_branch_aa6f::
tempo 232
- loopchannel 0, Music_Cities1_branch_aa79
+ sound_loop 0, Music_Cities1_branch_aa79
Music_Cities1_Ch1::
tempo 144
@@ -8,650 +8,650 @@ Music_Cities1_Ch1::
Music_Cities1_branch_aa79::
volume 7, 7
vibrato 8, 2, 4
- duty 3
+ duty_cycle 3
Music_Cities1_branch_aa80::
- notetype 12, 12, 5
+ note_type 12, 12, 5
octave 3
- G# 4
- F# 4
- E_ 2
- E_ 2
- F# 2
- D# 2
- E_ 2
- E_ 2
- D# 2
- C# 4
- D# 4
- E_ 2
- D# 4
- C# 2
- E_ 2
- E_ 4
- notetype 12, 10, 5
- C# 4
+ note G#, 4
+ note F#, 4
+ note E_, 2
+ note E_, 2
+ note F#, 2
+ note D#, 2
+ note E_, 2
+ note E_, 2
+ note D#, 2
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note D#, 4
+ note C#, 2
+ note E_, 2
+ note E_, 4
+ note_type 12, 10, 5
+ note C#, 4
octave 2
- B_ 6
+ note B_, 6
octave 3
- C# 2
- C# 4
+ note C#, 2
+ note C#, 4
octave 2
- B_ 4
- notetype 12, 12, 5
- callchannel Music_Cities1_branch_ab7d
+ note B_, 4
+ note_type 12, 12, 5
+ sound_call Music_Cities1_branch_ab7d
octave 3
- D# 6
- E_ 2
+ note D#, 6
+ note E_, 2
octave 2
- B_ 4
- notetype 12, 10, 5
+ note B_, 4
+ note_type 12, 10, 5
octave 3
- C# 2
+ note C#, 2
octave 2
- B_ 2
- A_ 4
- B_ 4
- B_ 2
+ note B_, 2
+ note A_, 4
+ note B_, 4
+ note B_, 2
octave 3
- C# 2
- D# 2
- E_ 2
- D# 2
- C# 2
- D# 2
- notetype 12, 12, 5
- G# 2
- E_ 2
- F# 2
- E_ 2
- E_ 4
- F# 2
- D# 2
- E_ 4
- D# 2
- C# 4
- D# 4
- E_ 2
- D# 2
- C# 2
- C# 2
- E_ 2
- E_ 4
- notetype 12, 10, 5
- C# 2
+ note C#, 2
+ note D#, 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note D#, 2
+ note_type 12, 12, 5
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note E_, 4
+ note F#, 2
+ note D#, 2
+ note E_, 4
+ note D#, 2
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note C#, 2
+ note E_, 2
+ note E_, 4
+ note_type 12, 10, 5
+ note C#, 2
octave 2
- A_ 2
- B_ 6
+ note A_, 2
+ note B_, 6
octave 3
- C# 2
- C# 2
+ note C#, 2
+ note C#, 2
octave 2
- B_ 2
- B_ 4
- notetype 12, 12, 5
- callchannel Music_Cities1_branch_ab7d
+ note B_, 2
+ note B_, 4
+ note_type 12, 12, 5
+ sound_call Music_Cities1_branch_ab7d
octave 3
- D# 4
- D# 2
- E_ 2
+ note D#, 4
+ note D#, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 2
- G# 2
- E_ 4
+ note C#, 2
+ note G#, 2
+ note E_, 4
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
- notetype 12, 10, 5
- C# 4
+ note E_, 2
+ note_type 12, 10, 5
+ note C#, 4
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 4
- C# 2
- E_ 4
- notetype 12, 11, 3
- callchannel Music_Cities1_branch_ab8a
- A_ 2
- B_ 2
- A_ 2
- G# 2
- A_ 4
- F# 4
- G# 2
- E_ 2
+ note D#, 4
+ note C#, 2
+ note E_, 4
+ note_type 12, 11, 3
+ sound_call Music_Cities1_branch_ab8a
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 4
+ note F#, 4
+ note G#, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 4
- G# 2
+ note E_, 4
+ note G#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
- E_ 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- D# 2
- C# 2
+ note E_, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
Music_Cities1_branch_ab12::
- C# 2
- D# 2
- C# 2
+ note C#, 2
+ note D#, 2
+ note C#, 2
octave 2
- B_ 4
- B_ 2
+ note B_, 4
+ note B_, 2
octave 3
- C# 2
- D# 2
- loopchannel 2, Music_Cities1_branch_ab12
- E_ 2
+ note C#, 2
+ note D#, 2
+ sound_loop 2, Music_Cities1_branch_ab12
+ note E_, 2
octave 2
- B_ 4
+ note B_, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 2
- G# 2
- G# 2
+ note C#, 2
+ note G#, 2
+ note G#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
+ note D#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- callchannel Music_Cities1_branch_ab8a
- A_ 2
- E_ 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- A_ 2
- F# 2
- G# 2
- E_ 2
+ sound_call Music_Cities1_branch_ab8a
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note F#, 2
+ note G#, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
- C# 2
- G# 2
- C# 2
- D# 2
- B_ 2
- E_ 2
- G# 2
- E_ 2
- F# 2
- E_ 4
- G# 2
- F# 2
- D# 2
+ note E_, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note D#, 2
+ note B_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note E_, 4
+ note G#, 2
+ note F#, 2
+ note D#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 4
- F# 2
- D# 2
- D# 2
- F# 2
+ note D#, 4
+ note F#, 2
+ note D#, 2
+ note D#, 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
+ note D#, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D# 2
- notetype 12, 11, 6
- F# 8
- F# 4
- D# 4
- E_ 8
- notetype 12, 8, 4
+ note D#, 2
+ note_type 12, 11, 6
+ note F#, 8
+ note F#, 4
+ note D#, 4
+ note E_, 8
+ note_type 12, 8, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- E_ 2
- F# 2
- loopchannel 0, Music_Cities1_branch_aa80
+ note E_, 2
+ note F#, 2
+ sound_loop 0, Music_Cities1_branch_aa80
Music_Cities1_branch_ab7d::
octave 3
- F# 2
- D# 4
- E_ 2
- D# 4
- C# 4
+ note F#, 2
+ note D#, 4
+ note E_, 2
+ note D#, 4
+ note C#, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- C# 2
- D# 2
- C# 2
- endchannel
+ note C#, 2
+ note D#, 2
+ note C#, 2
+ sound_ret
Music_Cities1_branch_ab8a::
- A_ 2
- E_ 2
- C# 2
- E_ 4
- A_ 2
- C# 2
- E_ 2
- endchannel
+ note A_, 2
+ note E_, 2
+ note C#, 2
+ note E_, 4
+ note A_, 2
+ note C#, 2
+ note E_, 2
+ sound_ret
Music_Cities1_Ch2::
vibrato 5, 1, 5
- callchannel Music_Cities1_branch_ac00
+ sound_call Music_Cities1_branch_ac00
octave 4
- G# 2
- notetype 12, 12, 4
- E_ 6
- notetype 12, 12, 5
- duty 3
+ note G#, 2
+ note_type 12, 12, 4
+ note E_, 6
+ note_type 12, 12, 5
+ duty_cycle 3
octave 3
- C# 4
- D# 4
- E_ 6
- F# 6
- G# 4
- callchannel Music_Cities1_branch_ac00
+ note C#, 4
+ note D#, 4
+ note E_, 6
+ note F#, 6
+ note G#, 4
+ sound_call Music_Cities1_branch_ac00
octave 4
- G# 2
- notetype 12, 12, 4
- E_ 14
- duty 3
+ note G#, 2
+ note_type 12, 12, 4
+ note E_, 14
+ duty_cycle 3
octave 3
- E_ 6
- F# 6
- G# 4
- notetype 12, 11, 7
- duty 2
+ note E_, 6
+ note F#, 6
+ note G#, 4
+ note_type 12, 11, 7
+ duty_cycle 2
vibrato 8, 1, 7
octave 5
- C# 12
+ note C#, 12
octave 4
- A_ 4
+ note A_, 4
octave 5
- E_ 8
- F# 2
- E_ 2
- D# 2
- C# 2
+ note E_, 8
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
octave 4
- B_ 12
- G# 4
- B_ 16
- F# 12
- G# 2
- A_ 2
- B_ 4
- A_ 4
- G# 4
- F# 4
- G# 12
- E_ 4
- B_ 16
+ note B_, 12
+ note G#, 4
+ note B_, 16
+ note F#, 12
+ note G#, 2
+ note A_, 2
+ note B_, 4
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note G#, 12
+ note E_, 4
+ note B_, 16
octave 5
- C# 12
- D# 2
- E_ 2
- F# 4
- E_ 4
- D# 4
- C# 4
+ note C#, 12
+ note D#, 2
+ note E_, 2
+ note F#, 4
+ note E_, 4
+ note D#, 4
+ note C#, 4
octave 4
- B_ 12
+ note B_, 12
octave 5
- C# 2
- D# 2
- C# 4
+ note C#, 2
+ note D#, 2
+ note C#, 4
octave 4
- B_ 4
- A_ 4
- G# 4
- A_ 12
- B_ 2
+ note B_, 4
+ note A_, 4
+ note G#, 4
+ note A_, 12
+ note B_, 2
octave 5
- C_ 2
- C_ 4
+ note C_, 2
+ note C_, 4
octave 4
- B_ 4
- A_ 4
- F# 4
- notetype 12, 11, 7
- A_ 8
+ note B_, 4
+ note A_, 4
+ note F#, 4
+ note_type 12, 11, 7
+ note A_, 8
octave 5
- C_ 8
+ note C_, 8
octave 4
- B_ 14
- notetype 12, 8, 4
- G# 1
- notetype 12, 10, 4
- A_ 1
- loopchannel 0, Music_Cities1_Ch2
+ note B_, 14
+ note_type 12, 8, 4
+ note G#, 1
+ note_type 12, 10, 4
+ note A_, 1
+ sound_loop 0, Music_Cities1_Ch2
Music_Cities1_branch_ac00::
- duty 2
- notetype 12, 12, 3
+ duty_cycle 2
+ note_type 12, 12, 3
octave 4
- B_ 4
- A_ 4
- notetype 12, 12, 4
- G# 10
- notetype 12, 12, 3
- G# 2
- A_ 2
- B_ 4
- B_ 2
- A_ 2
- G# 2
- A_ 2
- notetype 12, 12, 4
- F# 10
- notetype 12, 12, 5
- duty 3
+ note B_, 4
+ note A_, 4
+ note_type 12, 12, 4
+ note G#, 10
+ note_type 12, 12, 3
+ note G#, 2
+ note A_, 2
+ note B_, 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note_type 12, 12, 4
+ note F#, 10
+ note_type 12, 12, 5
+ duty_cycle 3
octave 3
- E_ 4
- D# 8
- E_ 4
- F# 4
- notetype 12, 12, 3
- duty 2
+ note E_, 4
+ note D#, 8
+ note E_, 4
+ note F#, 4
+ note_type 12, 12, 3
+ duty_cycle 2
octave 4
- A_ 4
- G# 4
- notetype 12, 12, 4
- F# 10
- notetype 12, 12, 3
- F# 2
- G# 2
- A_ 4
- A_ 2
- G# 2
- F# 2
- endchannel
+ note A_, 4
+ note G#, 4
+ note_type 12, 12, 4
+ note F#, 10
+ note_type 12, 12, 3
+ note F#, 2
+ note G#, 2
+ note A_, 4
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ sound_ret
Music_Cities1_Ch3::
- notetype 12, 1, 1
- toggleperfectpitch
+ note_type 12, 1, 1
+ toggle_perfect_pitch
Music_Cities1_branch_ac35::
vibrato 0, 0, 0
octave 4
- callchannel Music_Cities1_branch_acc5
- callchannel Music_Cities1_branch_acc5
- callchannel Music_Cities1_branch_acce
- G# 2
- E_ 2
- F# 2
- G# 2
+ sound_call Music_Cities1_branch_acc5
+ sound_call Music_Cities1_branch_acc5
+ sound_call Music_Cities1_branch_acce
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
- E_ 2
- F# 2
- G# 2
- callchannel Music_Cities1_branch_acc5
- B_ 2
- E_ 2
- F# 2
- G# 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ sound_call Music_Cities1_branch_acc5
+ note B_, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
- E_ 2
- F# 2
- G# 2
- callchannel Music_Cities1_branch_acc5
- callchannel Music_Cities1_branch_acce
- G# 2
- E_ 2
- F# 2
- G# 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ sound_call Music_Cities1_branch_acc5
+ sound_call Music_Cities1_branch_acce
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
- G# 2
- E_ 2
- B_ 2
+ note G#, 2
+ note E_, 2
+ note B_, 2
rest 2
- E_ 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- B_ 2
- E_ 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
vibrato 8, 2, 5
- A_ 8
- E_ 8
- A_ 8
- F# 8
- G# 8
- E_ 8
- G# 12
- E_ 4
- F# 2
- F# 2
- D# 2
- E_ 4
- F# 2
- D# 2
- E_ 2
- F# 2
- F# 2
- B_ 2
- A_ 2
- G# 2
- A_ 2
- G# 2
- F# 2
- G# 2
- G# 2
- E_ 2
- G# 2
+ note A_, 8
+ note E_, 8
+ note A_, 8
+ note F#, 8
+ note G#, 8
+ note E_, 8
+ note G#, 12
+ note E_, 4
+ note F#, 2
+ note F#, 2
+ note D#, 2
+ note E_, 4
+ note F#, 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
+ note F#, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
rest 2
- E_ 2
- F# 2
- G# 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
- E_ 2
- F# 2
- G# 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- A_ 8
- E_ 8
- A_ 8
- B_ 2
- A_ 2
- G# 2
- F# 2
- G# 8
- E_ 8
- B_ 4
- E_ 4
- F# 4
- G# 4
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 8
+ note E_, 8
+ note A_, 8
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 8
+ note E_, 8
+ note B_, 4
+ note E_, 4
+ note F#, 4
+ note G#, 4
rest 2
- D# 2
- E_ 2
- F# 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
rest 2
- F# 2
- B_ 2
- A_ 2
- A_ 4
- G# 4
- F# 2
- D# 2
- A_ 2
- F# 2
+ note F#, 2
+ note B_, 2
+ note A_, 2
+ note A_, 4
+ note G#, 4
+ note F#, 2
+ note D#, 2
+ note A_, 2
+ note F#, 2
rest 2
- E_ 2
- F# 2
- G# 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
- E_ 2
- F# 1
- G# 1
- E_ 1
- F# 1
- G# 4
- B_ 2
- A_ 2
- G# 2
- A_ 2
- G# 2
- F# 2
- loopchannel 0, Music_Cities1_branch_ac35
+ note E_, 2
+ note F#, 1
+ note G#, 1
+ note E_, 1
+ note F#, 1
+ note G#, 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ sound_loop 0, Music_Cities1_branch_ac35
Music_Cities1_branch_acc5::
rest 2
- E_ 2
- F# 2
- G# 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
- E_ 2
- F# 2
- G# 2
- endchannel
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ sound_ret
Music_Cities1_branch_acce::
- A_ 2
- F# 2
- G# 2
- A_ 2
+ note A_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
rest 2
- A_ 2
- G# 2
- F# 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
rest 2
- F# 2
- G# 2
- A_ 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
rest 2
- A_ 2
- G# 2
- F# 2
- D# 2
- D# 2
- E_ 2
- F# 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note D#, 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
rest 2
- D# 2
- E_ 2
- F# 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
rest 2
- D# 2
- E_ 2
- F# 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
rest 2
- D# 2
- E_ 2
- F# 2
- endchannel
+ note D#, 2
+ note E_, 2
+ note F#, 2
+ sound_ret
Music_Cities1_Ch4::
- dspeed 12
- callchannel Music_Cities1_branch_ad36
+ drum_speed 12
+ sound_call Music_Cities1_branch_ad36
Music_Cities1_branch_acf3::
- callchannel Music_Cities1_branch_ad36
- callchannel Music_Cities1_branch_ad45
- callchannel Music_Cities1_branch_ad45
- loopchannel 2, Music_Cities1_branch_acf3
- callchannel Music_Cities1_branch_ad36
- callchannel Music_Cities1_branch_ad5f
- callchannel Music_Cities1_branch_ad52
- triangle1 6
- triangle1 6
- triangle2 4
- callchannel Music_Cities1_branch_ad6e
- callchannel Music_Cities1_branch_ad5f
- callchannel Music_Cities1_branch_ad52
- callchannel Music_Cities1_branch_ad6e
- callchannel Music_Cities1_branch_ad52
- triangle1 6
- triangle1 6
- triangle2 2
- triangle1 2
- triangle1 6
- triangle1 6
- triangle1 4
- triangle1 6
- snare6 6
- snare6 4
- loopchannel 0, Music_Cities1_Ch4
+ sound_call Music_Cities1_branch_ad36
+ sound_call Music_Cities1_branch_ad45
+ sound_call Music_Cities1_branch_ad45
+ sound_loop 2, Music_Cities1_branch_acf3
+ sound_call Music_Cities1_branch_ad36
+ sound_call Music_Cities1_branch_ad5f
+ sound_call Music_Cities1_branch_ad52
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 4
+ sound_call Music_Cities1_branch_ad6e
+ sound_call Music_Cities1_branch_ad5f
+ sound_call Music_Cities1_branch_ad52
+ sound_call Music_Cities1_branch_ad6e
+ sound_call Music_Cities1_branch_ad52
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 2
+ drum_note 6, 2
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 6, 4
+ drum_note 6, 6
+ drum_note 8, 6
+ drum_note 8, 4
+ sound_loop 0, Music_Cities1_Ch4
Music_Cities1_branch_ad36::
- snare6 6
- snare6 6
- snare6 4
- snare6 6
- snare6 6
- snare6 2
- snare6 2
- endchannel
+ drum_note 8, 6
+ drum_note 8, 6
+ drum_note 8, 4
+ drum_note 8, 6
+ drum_note 8, 6
+ drum_note 8, 2
+ drum_note 8, 2
+ sound_ret
Music_Cities1_branch_ad45::
- snare6 6
- snare6 6
- snare6 4
- snare6 6
- snare6 6
- snare6 4
- endchannel
+ drum_note 8, 6
+ drum_note 8, 6
+ drum_note 8, 4
+ drum_note 8, 6
+ drum_note 8, 6
+ drum_note 8, 4
+ sound_ret
Music_Cities1_branch_ad52::
- triangle1 6
- triangle1 6
- triangle2 4
- triangle1 6
- triangle1 6
- triangle2 4
- endchannel
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 4
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 4
+ sound_ret
Music_Cities1_branch_ad5f::
- triangle1 6
- triangle1 6
- triangle2 4
- triangle1 6
- triangle1 6
- triangle2 2
- triangle1 2
- endchannel
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 4
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 2
+ drum_note 6, 2
+ sound_ret
Music_Cities1_branch_ad6e::
- triangle1 6
- triangle1 6
- triangle2 2
- triangle2 2
- endchannel
+ drum_note 6, 6
+ drum_note 6, 6
+ drum_note 7, 2
+ drum_note 7, 2
+ sound_ret
diff --git a/audio/music/cities2.asm b/audio/music/cities2.asm
index 897fb8c9..6397f965 100644
--- a/audio/music/cities2.asm
+++ b/audio/music/cities2.asm
@@ -1,416 +1,416 @@
Music_Cities2_Ch1::
tempo 148
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 3, 2
- toggleperfectpitch
- notetype 12, 11, 6
+ toggle_perfect_pitch
+ note_type 12, 11, 6
rest 8
octave 3
- E_ 2
- D# 2
- C# 2
- C_ 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note C_, 2
octave 2
- B_ 2
+ note B_, 2
rest 14
Music_Cities2_branch_b51a::
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 2
- D# 1
- D_ 1
- C# 4
+ note C#, 2
+ note D#, 1
+ note D_, 1
+ note C#, 4
octave 3
- B_ 4
- G# 8
- E_ 8
- A_ 4
- G# 2
- F# 2
- G# 2
- A_ 2
- B_ 2
+ note B_, 4
+ note G#, 8
+ note E_, 8
+ note A_, 4
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
octave 4
- C# 2
+ note C#, 2
rest 16
- C# 4
+ note C#, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 1
- D# 1
- C# 4
+ note C#, 1
+ note D#, 1
+ note C#, 4
octave 3
- B_ 4
- E_ 1
- E_ 1
- E_ 1
- E_ 1
- E_ 1
+ note B_, 4
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 3
- G# 8
- B_ 4
- A_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- B_ 2
- E_ 2
- F# 2
- G# 2
+ note G#, 8
+ note B_, 4
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
rest 2
octave 4
- E_ 4
+ note E_, 4
octave 3
- B_ 4
- F# 2
- G# 2
- A_ 2
+ note B_, 4
+ note F#, 2
+ note G#, 2
+ note A_, 2
rest 2
octave 4
- F# 4
- D# 4
+ note F#, 4
+ note D#, 4
octave 3
- E_ 2
+ note E_, 2
rest 4
- F# 2
+ note F#, 2
rest 4
- A_ 2
+ note A_, 2
rest 2
- B_ 2
+ note B_, 2
rest 16
rest 16
rest 14
- E_ 16
- F# 8
- G# 4
- F# 4
- E_ 2
+ note E_, 16
+ note F#, 8
+ note G#, 4
+ note F#, 4
+ note E_, 2
rest 14
- loopchannel 0, Music_Cities2_branch_b51a
+ sound_loop 0, Music_Cities2_branch_b51a
Music_Cities2_Ch2::
- duty 3
+ duty_cycle 3
vibrato 8, 2, 3
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 4
- E_ 2
- D# 2
- C# 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- B_ 2
+ note B_, 2
+ note A_, 2
+ note B_, 2
octave 4
- C# 2
- D# 2
- E_ 6
- notetype 12, 12, 2
- duty 2
+ note C#, 2
+ note D#, 2
+ note E_, 6
+ note_type 12, 12, 2
+ duty_cycle 2
octave 4
- E_ 1
+ note E_, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 2
- D# 2
- E_ 1
- F# 1
- G# 1
- A_ 1
+ note C#, 2
+ note D#, 2
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
Music_Cities2_branch_b58b::
- notetype 12, 10, 6
- G# 6
- notetype 12, 12, 2
- A_ 1
- G# 1
- notetype 12, 12, 4
- F# 14
- notetype 12, 12, 2
- E_ 1
+ note_type 12, 10, 6
+ note G#, 6
+ note_type 12, 12, 2
+ note A_, 1
+ note G#, 1
+ note_type 12, 12, 4
+ note F#, 14
+ note_type 12, 12, 2
+ note E_, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 2
- D# 2
- E_ 1
- F# 1
- G# 1
- A_ 1
- notetype 12, 12, 4
- G# 6
- notetype 12, 12, 2
- E_ 1
- G# 1
- notetype 12, 12, 5
- B_ 14
- notetype 12, 12, 2
- E_ 1
+ note C#, 2
+ note D#, 2
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ note_type 12, 12, 4
+ note G#, 6
+ note_type 12, 12, 2
+ note E_, 1
+ note G#, 1
+ note_type 12, 12, 5
+ note B_, 14
+ note_type 12, 12, 2
+ note E_, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 2
- D# 2
- E_ 1
- F# 1
- G# 1
- A_ 1
- notetype 12, 10, 6
- G# 6
- notetype 12, 12, 2
- A_ 1
- G# 1
- notetype 12, 12, 4
- F# 8
- notetype 12, 10, 1
- duty 1
+ note C#, 2
+ note D#, 2
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ note_type 12, 10, 6
+ note G#, 6
+ note_type 12, 12, 2
+ note A_, 1
+ note G#, 1
+ note_type 12, 12, 4
+ note F#, 8
+ note_type 12, 10, 1
+ duty_cycle 1
octave 3
- G# 1
- G# 1
- G# 1
- G# 1
- G# 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
rest 1
- notetype 12, 12, 2
- duty 2
+ note_type 12, 12, 2
+ duty_cycle 2
octave 4
- E_ 1
+ note E_, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 2
- D# 2
- E_ 1
- F# 1
- G# 1
- A_ 1
- notetype 12, 12, 4
- G# 6
- E_ 1
- G# 1
- notetype 12, 12, 6
- B_ 8
- notetype 12, 12, 2
- C# 1
+ note C#, 2
+ note D#, 2
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ note_type 12, 12, 4
+ note G#, 6
+ note E_, 1
+ note G#, 1
+ note_type 12, 12, 6
+ note B_, 8
+ note_type 12, 12, 2
+ note C#, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 1
- D# 1
- E_ 4
- notetype 12, 12, 7
- G# 4
- E_ 4
- notetype 12, 12, 2
- D# 1
- C# 1
- D# 1
- E_ 1
- F# 4
- notetype 12, 12, 7
- B_ 4
- F# 4
- notetype 12, 12, 2
- C# 1
+ note C#, 1
+ note D#, 1
+ note E_, 4
+ note_type 12, 12, 7
+ note G#, 4
+ note E_, 4
+ note_type 12, 12, 2
+ note D#, 1
+ note C#, 1
+ note D#, 1
+ note E_, 1
+ note F#, 4
+ note_type 12, 12, 7
+ note B_, 4
+ note F#, 4
+ note_type 12, 12, 2
+ note C#, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 1
- D# 1
- E_ 2
- E_ 1
- D# 1
- E_ 1
- F# 1
- G# 2
- G# 1
- A_ 1
- G# 1
- A_ 1
- B_ 1
- F# 1
- D# 1
- C# 1
+ note C#, 1
+ note D#, 1
+ note E_, 2
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F#, 1
+ note G#, 2
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note A_, 1
+ note B_, 1
+ note F#, 1
+ note D#, 1
+ note C#, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 1
- D# 1
- F# 1
- notetype 12, 12, 2
- B_ 8
- notetype 12, 11, 7
+ note C#, 1
+ note D#, 1
+ note F#, 1
+ note_type 12, 12, 2
+ note B_, 8
+ note_type 12, 11, 7
octave 3
- E_ 8
+ note E_, 8
octave 2
- B_ 4
+ note B_, 4
octave 3
- F# 4
- G# 4
- A_ 4
- B_ 8
- B_ 8
- G# 4
+ note F#, 4
+ note G#, 4
+ note A_, 4
+ note B_, 8
+ note B_, 8
+ note G#, 4
octave 4
- D# 4
- C# 4
- D# 4
- E_ 2
- D# 2
- C# 2
- D# 2
- notetype 12, 12, 2
- E_ 6
- E_ 1
+ note D#, 4
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note D#, 2
+ note_type 12, 12, 2
+ note E_, 6
+ note E_, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 2
- D# 2
- E_ 1
- F# 1
- G# 1
- A_ 1
- loopchannel 0, Music_Cities2_branch_b58b
+ note C#, 2
+ note D#, 2
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ sound_loop 0, Music_Cities2_branch_b58b
Music_Cities2_Ch3::
- notetype 12, 1, 1
+ note_type 12, 1, 1
rest 16
octave 4
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
Music_Cities2_branch_b64c::
- F# 2
- A_ 2
- F# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
rest 2
- E_ 4
- G# 4
- F# 2
- A_ 2
- F# 2
+ note E_, 4
+ note G#, 4
+ note F#, 2
+ note A_, 2
+ note F#, 2
rest 2
- F# 4
- A_ 4
- C# 2
+ note F#, 4
+ note A_, 4
+ note C#, 2
rest 4
- E_ 2
+ note E_, 2
rest 4
- G# 2
- A_ 2
- B_ 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
rest 8
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- loopchannel 0, Music_Cities2_branch_b64c
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ sound_loop 0, Music_Cities2_branch_b64c
diff --git a/audio/music/credits.asm b/audio/music/credits.asm
index d9a5ec35..b8a6d7dd 100644
--- a/audio/music/credits.asm
+++ b/audio/music/credits.asm
@@ -1,820 +1,820 @@
Music_Credits_Ch1::
tempo 140
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 3, 4
- toggleperfectpitch
- notetype 12, 11, 5
+ toggle_perfect_pitch
+ note_type 12, 11, 5
octave 4
- E_ 6
+ note E_, 6
octave 3
- A_ 1
+ note A_, 1
octave 4
- E_ 1
- D_ 6
+ note E_, 1
+ note D_, 6
octave 3
- G_ 1
+ note G_, 1
octave 4
- D_ 1
- C# 6
+ note D_, 1
+ note C#, 6
octave 3
- F# 1
- octave 4
- C# 1
- D_ 4
- E_ 2
- C# 1
- E_ 1
- C# 1
+ note F#, 1
+ octave 4
+ note C#, 1
+ note D_, 4
+ note E_, 2
+ note C#, 1
+ note E_, 1
+ note C#, 1
rest 1
octave 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- E_ 1
- E_ 1
- F# 1
- G_ 1
- notetype 12, 11, 6
- A_ 4
- E_ 2
- A_ 2
- G_ 4
- A_ 2
- G_ 2
- B_ 4
- A_ 4
- G_ 2
- F# 2
- E_ 2
- D_ 2
- C# 6
- E_ 2
- A_ 4
- C# 4
- E_ 4
- D_ 2
- C# 2
- E_ 2
- F# 2
- G_ 2
- F# 2
- A_ 4
- E_ 2
- A_ 2
- G_ 4
- A_ 2
- G_ 2
- B_ 4
- A_ 4
- G_ 2
- A_ 2
- F# 2
- D_ 2
- E_ 6
- C# 2
- A_ 4
- C# 4
- E_ 4
- D_ 2
- C# 2
- E_ 2
- F# 2
- G_ 2
- F# 2
- G_ 4
- D_ 2
- G_ 2
- B_ 2
- A_ 2
- G_ 2
- A_ 2
- D_ 4
- E_ 2
- F# 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- E_ 6
- A_ 2
- G_ 4
- F# 4
- G_ 4
- F# 4
- E_ 4
- D_ 4
- G_ 4
- D_ 2
- G_ 2
- B_ 2
- octave 4
- C# 2
+ note E_, 1
+ note E_, 1
+ note F#, 1
+ note G_, 1
+ note_type 12, 11, 6
+ note A_, 4
+ note E_, 2
+ note A_, 2
+ note G_, 4
+ note A_, 2
+ note G_, 2
+ note B_, 4
+ note A_, 4
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note C#, 6
+ note E_, 2
+ note A_, 4
+ note C#, 4
+ note E_, 4
+ note D_, 2
+ note C#, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note A_, 4
+ note E_, 2
+ note A_, 2
+ note G_, 4
+ note A_, 2
+ note G_, 2
+ note B_, 4
+ note A_, 4
+ note G_, 2
+ note A_, 2
+ note F#, 2
+ note D_, 2
+ note E_, 6
+ note C#, 2
+ note A_, 4
+ note C#, 4
+ note E_, 4
+ note D_, 2
+ note C#, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note G_, 4
+ note D_, 2
+ note G_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ note D_, 4
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note E_, 6
+ note A_, 2
+ note G_, 4
+ note F#, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note G_, 4
+ note D_, 2
+ note G_, 2
+ note B_, 2
+ octave 4
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- D_ 4
- E_ 2
- F# 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- notetype 12, 11, 7
- E_ 6
- A_ 2
- G_ 4
- F# 4
- notetype 12, 12, 7
- A_ 4
- B_ 4
- octave 4
- C# 4
- D_ 4
+ note B_, 2
+ note A_, 2
+ note D_, 4
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note_type 12, 11, 7
+ note E_, 6
+ note A_, 2
+ note G_, 4
+ note F#, 4
+ note_type 12, 12, 7
+ note A_, 4
+ note B_, 4
+ octave 4
+ note C#, 4
+ note D_, 4
octave 3
- B_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- F# 2
- G_ 2
- A_ 2
- notetype 12, 9, 0
- G_ 8
- F# 8
- E_ 8
- D_ 8
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note_type 12, 9, 0
+ note G_, 8
+ note F#, 8
+ note E_, 8
+ note D_, 8
rest 16
rest 16
rest 8
- notetype 12, 11, 6
- E_ 6
- D# 1
- D_ 1
- notetype 12, 10, 0
- C# 8
- notetype 12, 10, 7
- C# 8
+ note_type 12, 11, 6
+ note E_, 6
+ note D#, 1
+ note D_, 1
+ note_type 12, 10, 0
+ note C#, 8
+ note_type 12, 10, 7
+ note C#, 8
rest 16
rest 16
rest 8
- E_ 6
- C# 1
- E_ 1
- notetype 12, 10, 0
- A_ 8
- notetype 12, 10, 7
- A_ 8
- notetype 12, 11, 6
- G_ 6
- D_ 4
- G_ 2
- B_ 4
- notetype 12, 11, 7
- G_ 8
- F# 4
- G# 4
- notetype 12, 9, 0
- A_ 8
- F# 8
- E_ 8
- C# 8
- notetype 12, 11, 7
- D_ 8
- C# 8
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note_type 12, 10, 0
+ note A_, 8
+ note_type 12, 10, 7
+ note A_, 8
+ note_type 12, 11, 6
+ note G_, 6
+ note D_, 4
+ note G_, 2
+ note B_, 4
+ note_type 12, 11, 7
+ note G_, 8
+ note F#, 4
+ note G#, 4
+ note_type 12, 9, 0
+ note A_, 8
+ note F#, 8
+ note E_, 8
+ note C#, 8
+ note_type 12, 11, 7
+ note D_, 8
+ note C#, 8
octave 2
- B_ 8
+ note B_, 8
octave 3
- D_ 8
- notetype 12, 9, 0
- E_ 8
- D_ 8
- F# 8
- E_ 8
- notetype 12, 10, 0
- D_ 8
- E_ 8
- D_ 8
- C_ 8
- G_ 8
- F_ 8
- E_ 8
- D_ 8
- notetype 12, 10, 0
- C# 6
- notetype 12, 10, 7
- C# 6
- notetype 12, 11, 7
- D_ 4
- E_ 8
- G_ 6
- F# 1
- F_ 1
- notetype 12, 10, 0
- E_ 6
- notetype 12, 10, 7
- E_ 6
- notetype 12, 11, 7
- D_ 4
- notetype 12, 10, 0
- C# 8
- notetype 12, 10, 7
- C# 8
- notetype 12, 11, 7
- E_ 6
- D_ 2
- G_ 4
- F# 4
- E_ 4
- F# 4
- E_ 4
- D_ 4
- E_ 4
- D_ 4
- C# 4
- D_ 4
- C# 4
- C# 4
- E_ 4
- F# 4
- notetype 12, 10, 0
- E_ 6
- notetype 12, 11, 7
- D_ 2
- G_ 4
- F# 4
- E_ 4
- F# 4
- A_ 4
- B_ 4
- notetype 12, 10, 0
- octave 4
- C# 16
- C# 8
- notetype 12, 10, 7
- C# 8
- notetype 12, 11, 5
+ note D_, 8
+ note_type 12, 9, 0
+ note E_, 8
+ note D_, 8
+ note F#, 8
+ note E_, 8
+ note_type 12, 10, 0
+ note D_, 8
+ note E_, 8
+ note D_, 8
+ note C_, 8
+ note G_, 8
+ note F_, 8
+ note E_, 8
+ note D_, 8
+ note_type 12, 10, 0
+ note C#, 6
+ note_type 12, 10, 7
+ note C#, 6
+ note_type 12, 11, 7
+ note D_, 4
+ note E_, 8
+ note G_, 6
+ note F#, 1
+ note F_, 1
+ note_type 12, 10, 0
+ note E_, 6
+ note_type 12, 10, 7
+ note E_, 6
+ note_type 12, 11, 7
+ note D_, 4
+ note_type 12, 10, 0
+ note C#, 8
+ note_type 12, 10, 7
+ note C#, 8
+ note_type 12, 11, 7
+ note E_, 6
+ note D_, 2
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note E_, 4
+ note D_, 4
+ note C#, 4
+ note D_, 4
+ note C#, 4
+ note C#, 4
+ note E_, 4
+ note F#, 4
+ note_type 12, 10, 0
+ note E_, 6
+ note_type 12, 11, 7
+ note D_, 2
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note F#, 4
+ note A_, 4
+ note B_, 4
+ note_type 12, 10, 0
+ octave 4
+ note C#, 16
+ note C#, 8
+ note_type 12, 10, 7
+ note C#, 8
+ note_type 12, 11, 5
octave 3
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- A_ 1
- A_ 1
- notetype 12, 11, 1
- A_ 8
- endchannel
+ note A_, 1
+ note A_, 1
+ note_type 12, 11, 1
+ note A_, 8
+ sound_ret
Music_Credits_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 5
- notetype 12, 12, 5
- octave 4
- A_ 6
- E_ 1
- A_ 1
- G_ 6
- D_ 1
- G_ 1
- notetype 12, 12, 7
- F# 12
- G# 2
- E_ 1
- G# 1
- notetype 12, 12, 2
- A_ 2
- notetype 12, 12, 1
+ note_type 12, 12, 5
+ octave 4
+ note A_, 6
+ note E_, 1
+ note A_, 1
+ note G_, 6
+ note D_, 1
+ note G_, 1
+ note_type 12, 12, 7
+ note F#, 12
+ note G#, 2
+ note E_, 1
+ note G#, 1
+ note_type 12, 12, 2
+ note A_, 2
+ note_type 12, 12, 1
octave 3
- A_ 4
- A_ 1
- A_ 1
- A_ 2
- A_ 2
- A_ 4
- A_ 2
- A_ 4
- A_ 1
- A_ 1
- A_ 2
- A_ 2
- notetype 12, 12, 4
- A_ 1
- F# 1
- A_ 1
- B_ 1
- notetype 12, 12, 7
- octave 4
- C# 6
- C# 1
- D_ 1
- E_ 4
- C# 4
- G_ 4
- F# 4
- E_ 4
- D_ 4
- C# 6
+ note A_, 4
+ note A_, 1
+ note A_, 1
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ note A_, 2
+ note A_, 4
+ note A_, 1
+ note A_, 1
+ note A_, 2
+ note A_, 2
+ note_type 12, 12, 4
+ note A_, 1
+ note F#, 1
+ note A_, 1
+ note B_, 1
+ note_type 12, 12, 7
+ octave 4
+ note C#, 6
+ note C#, 1
+ note D_, 1
+ note E_, 4
+ note C#, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note C#, 6
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 8
+ note E_, 8
octave 3
- A_ 6
- E_ 2
- octave 4
- C# 8
- C# 6
- C# 1
- D_ 1
- E_ 4
- C# 4
- G_ 4
- F# 4
- E_ 4
- D_ 4
- C# 6
+ note A_, 6
+ note E_, 2
+ octave 4
+ note C#, 8
+ note C#, 6
+ note C#, 1
+ note D_, 1
+ note E_, 4
+ note C#, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note C#, 6
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 8
+ note E_, 8
octave 3
- A_ 6
- E_ 2
- notetype 12, 11, 0
+ note A_, 6
+ note E_, 2
+ note_type 12, 11, 0
octave 4
- C# 8
- notetype 12, 12, 7
- D_ 6
+ note C#, 8
+ note_type 12, 12, 7
+ note D_, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- G_ 8
+ note G_, 8
octave 3
- G_ 6
- D_ 2
- B_ 8
- notetype 12, 11, 0
- octave 4
- C# 6
- notetype 12, 11, 7
- C# 6
- D_ 4
- notetype 12, 10, 0
- E_ 8
- notetype 12, 10, 7
- E_ 8
- notetype 12, 12, 7
- D_ 6
+ note G_, 6
+ note D_, 2
+ note B_, 8
+ note_type 12, 11, 0
+ octave 4
+ note C#, 6
+ note_type 12, 11, 7
+ note C#, 6
+ note D_, 4
+ note_type 12, 10, 0
+ note E_, 8
+ note_type 12, 10, 7
+ note E_, 8
+ note_type 12, 12, 7
+ note D_, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- G_ 8
+ note G_, 8
octave 3
- G_ 6
- D_ 2
- B_ 8
- notetype 12, 11, 0
- octave 4
- E_ 7
- notetype 12, 11, 7
- E_ 7
- notetype 12, 12, 3
- E_ 1
- G# 1
- notetype 12, 11, 0
- A_ 8
- notetype 12, 11, 7
- A_ 8
- notetype 12, 12, 6
- G_ 4
- F# 4
- E_ 4
- D_ 4
- notetype 12, 10, 0
- C# 8
- notetype 12, 10, 7
- C# 8
- notetype 12, 9, 0
+ note G_, 6
+ note D_, 2
+ note B_, 8
+ note_type 12, 11, 0
+ octave 4
+ note E_, 7
+ note_type 12, 11, 7
+ note E_, 7
+ note_type 12, 12, 3
+ note E_, 1
+ note G#, 1
+ note_type 12, 11, 0
+ note A_, 8
+ note_type 12, 11, 7
+ note A_, 8
+ note_type 12, 12, 6
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note_type 12, 10, 0
+ note C#, 8
+ note_type 12, 10, 7
+ note C#, 8
+ note_type 12, 9, 0
octave 3
- A_ 8
- notetype 12, 9, 7
- A_ 8
- notetype 12, 11, 0
- E_ 8
- notetype 12, 11, 7
- E_ 8
- notetype 12, 12, 7
- D_ 8
- G_ 6
- F# 1
- F_ 1
- E_ 8
- notetype 12, 11, 7
- G_ 6
- F# 1
- F_ 1
- notetype 12, 11, 0
- E_ 8
- notetype 12, 11, 7
- E_ 8
- notetype 12, 11, 0
- D_ 8
- notetype 12, 11, 7
- D_ 8
- notetype 12, 12, 7
+ note A_, 8
+ note_type 12, 9, 7
+ note A_, 8
+ note_type 12, 11, 0
+ note E_, 8
+ note_type 12, 11, 7
+ note E_, 8
+ note_type 12, 12, 7
+ note D_, 8
+ note G_, 6
+ note F#, 1
+ note F_, 1
+ note E_, 8
+ note_type 12, 11, 7
+ note G_, 6
+ note F#, 1
+ note F_, 1
+ note_type 12, 11, 0
+ note E_, 8
+ note_type 12, 11, 7
+ note E_, 8
+ note_type 12, 11, 0
+ note D_, 8
+ note_type 12, 11, 7
+ note D_, 8
+ note_type 12, 12, 7
octave 2
- B_ 8
+ note B_, 8
octave 3
- F# 6
- D_ 1
- F# 1
- E_ 8
- B_ 6
- G_ 1
- B_ 1
- notetype 12, 11, 0
- octave 4
- C# 8
- notetype 12, 11, 7
- C# 8
- notetype 12, 11, 0
- D_ 8
- notetype 12, 11, 7
- D_ 8
- notetype 12, 12, 7
+ note F#, 6
+ note D_, 1
+ note F#, 1
+ note E_, 8
+ note B_, 6
+ note G_, 1
+ note B_, 1
+ note_type 12, 11, 0
+ octave 4
+ note C#, 8
+ note_type 12, 11, 7
+ note C#, 8
+ note_type 12, 11, 0
+ note D_, 8
+ note_type 12, 11, 7
+ note D_, 8
+ note_type 12, 12, 7
octave 3
- B_ 8
+ note B_, 8
octave 4
- D_ 6
+ note D_, 6
octave 3
- B_ 1
- octave 4
- D_ 1
- notetype 12, 11, 0
- C# 6
- notetype 12, 11, 7
- C# 6
- notetype 12, 12, 7
+ note B_, 1
+ octave 4
+ note D_, 1
+ note_type 12, 11, 0
+ note C#, 6
+ note_type 12, 11, 7
+ note C#, 6
+ note_type 12, 12, 7
octave 3
- B_ 4
- notetype 12, 11, 0
- A_ 8
- notetype 12, 11, 7
- A_ 8
- notetype 12, 11, 0
- F# 6
- notetype 12, 11, 7
- F# 6
- notetype 12, 12, 7
- G# 4
- A_ 8
- F# 8
- notetype 12, 11, 0
- G# 6
- notetype 12, 11, 7
- G# 6
- notetype 12, 12, 7
- A_ 4
- B_ 8
- G# 8
- notetype 12, 11, 0
- A_ 6
- notetype 12, 11, 7
- A_ 6
- notetype 12, 12, 7
- B_ 4
- octave 4
- C_ 8
+ note B_, 4
+ note_type 12, 11, 0
+ note A_, 8
+ note_type 12, 11, 7
+ note A_, 8
+ note_type 12, 11, 0
+ note F#, 6
+ note_type 12, 11, 7
+ note F#, 6
+ note_type 12, 12, 7
+ note G#, 4
+ note A_, 8
+ note F#, 8
+ note_type 12, 11, 0
+ note G#, 6
+ note_type 12, 11, 7
+ note G#, 6
+ note_type 12, 12, 7
+ note A_, 4
+ note B_, 8
+ note G#, 8
+ note_type 12, 11, 0
+ note A_, 6
+ note_type 12, 11, 7
+ note A_, 6
+ note_type 12, 12, 7
+ note B_, 4
+ octave 4
+ note C_, 8
octave 3
- A_ 8
- notetype 12, 11, 0
- B_ 6
- notetype 12, 11, 7
- B_ 6
- notetype 12, 12, 7
- octave 4
- C_ 4
- notetype 12, 11, 0
- D_ 8
+ note A_, 8
+ note_type 12, 11, 0
+ note B_, 6
+ note_type 12, 11, 7
+ note B_, 6
+ note_type 12, 12, 7
+ octave 4
+ note C_, 4
+ note_type 12, 11, 0
+ note D_, 8
octave 3
- B_ 8
- notetype 12, 11, 0
- octave 4
- C# 16
- C# 8
- notetype 12, 11, 7
- C# 8
- notetype 12, 11, 0
+ note B_, 8
+ note_type 12, 11, 0
+ octave 4
+ note C#, 16
+ note C#, 8
+ note_type 12, 11, 7
+ note C#, 8
+ note_type 12, 11, 0
octave 3
- A_ 16
- A_ 8
- notetype 12, 11, 7
- A_ 8
- notetype 12, 12, 7
- G_ 6
- B_ 2
- octave 4
- D_ 8
+ note A_, 16
+ note A_, 8
+ note_type 12, 11, 7
+ note A_, 8
+ note_type 12, 12, 7
+ note G_, 6
+ note B_, 2
+ octave 4
+ note D_, 8
octave 3
- B_ 6
+ note B_, 6
octave 4
- D_ 2
- G_ 6
- F# 1
- F_ 1
- E_ 8
+ note D_, 2
+ note G_, 6
+ note F#, 1
+ note F_, 1
+ note E_, 8
octave 3
- G_ 6
- F# 1
- F_ 1
- E_ 8
- C# 4
- D_ 4
- G_ 6
- B_ 2
- octave 4
- D_ 8
+ note G_, 6
+ note F#, 1
+ note F_, 1
+ note E_, 8
+ note C#, 4
+ note D_, 4
+ note G_, 6
+ note B_, 2
+ octave 4
+ note D_, 8
octave 3
- B_ 6
- octave 4
- D_ 2
- G_ 8
- notetype 12, 11, 0
- A_ 16
- notetype 12, 10, 0
- A_ 8
- notetype 12, 10, 7
- A_ 8
- notetype 12, 12, 1
- A_ 2
- A_ 4
- A_ 1
- A_ 1
- notetype 12, 12, 1
- A_ 8
- endchannel
+ note B_, 6
+ octave 4
+ note D_, 2
+ note G_, 8
+ note_type 12, 11, 0
+ note A_, 16
+ note_type 12, 10, 0
+ note A_, 8
+ note_type 12, 10, 7
+ note A_, 8
+ note_type 12, 12, 1
+ note A_, 2
+ note A_, 4
+ note A_, 1
+ note A_, 1
+ note_type 12, 12, 1
+ note A_, 8
+ sound_ret
Music_Credits_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 5
- C# 6
+ note C#, 6
octave 4
- A_ 1
+ note A_, 1
octave 5
- C# 1
- D_ 6
+ note C#, 1
+ note D_, 6
octave 4
- B_ 1
+ note B_, 1
octave 5
- D_ 1
- F# 6
- D_ 1
- F# 1
- A_ 4
- G# 2
- E_ 1
- G# 1
- A_ 1
+ note D_, 1
+ note F#, 6
+ note D_, 1
+ note F#, 1
+ note A_, 4
+ note G#, 2
+ note E_, 1
+ note G#, 1
+ note A_, 1
rest 15
rest 16
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffae
- callchannel Music_Credits_branch_7ffa4
- octave 4
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- F# 2
- G_ 2
- A_ 2
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffae
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffc1
- octave 4
- A_ 2
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffae
+ sound_call Music_Credits_branch_7ffa4
+ octave 4
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffae
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffc1
+ octave 4
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
- octave 4
- B_ 2
- A_ 2
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffc1
- callchannel Music_Credits_branch_7ffc1
- octave 4
- G_ 4
- A_ 4
- B_ 4
+ note C#, 2
+ octave 4
+ note B_, 2
+ note A_, 2
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffc1
+ sound_call Music_Credits_branch_7ffc1
+ octave 4
+ note G_, 4
+ note A_, 4
+ note B_, 4
octave 5
- D_ 4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffae
- callchannel Music_Credits_branch_7ffae
- callchannel Music_Credits_branch_7ffa4
- E_ 4
- A_ 2
- E_ 4
- A_ 2
- E_ 2
- A_ 2
- callchannel Music_Credits_branch_7ffae
- callchannel Music_Credits_branch_7ffae
- callchannel Music_Credits_branch_7ffa4
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- G# 2
- A_ 2
- callchannel Music_Credits_branch_7ffd2
- callchannel Music_Credits_branch_7ffd2
- callchannel Music_Credits_branch_7ffdb
- callchannel Music_Credits_branch_7ffdb
- F_ 2
- A_ 2
- F_ 2
- A_ 2
- F_ 2
- A_ 2
- F_ 2
- A_ 2
- F_ 2
- A_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- E_ 2
- F_ 2
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffb8
- E_ 4
- A_ 4
- E_ 4
- A_ 4
- E_ 4
- A_ 4
- E_ 4
- A_ 4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffe4
- callchannel Music_Credits_branch_7ffe4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffa4
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffb8
- callchannel Music_Credits_branch_7ffed
- callchannel Music_Credits_branch_7ffed
- A_ 1
+ note D_, 4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffae
+ sound_call Music_Credits_branch_7ffae
+ sound_call Music_Credits_branch_7ffa4
+ note E_, 4
+ note A_, 2
+ note E_, 4
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ sound_call Music_Credits_branch_7ffae
+ sound_call Music_Credits_branch_7ffae
+ sound_call Music_Credits_branch_7ffa4
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ sound_call Music_Credits_branch_7ffd2
+ sound_call Music_Credits_branch_7ffd2
+ sound_call Music_Credits_branch_7ffdb
+ sound_call Music_Credits_branch_7ffdb
+ note F_, 2
+ note A_, 2
+ note F_, 2
+ note A_, 2
+ note F_, 2
+ note A_, 2
+ note F_, 2
+ note A_, 2
+ note F_, 2
+ note A_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffb8
+ note E_, 4
+ note A_, 4
+ note E_, 4
+ note A_, 4
+ note E_, 4
+ note A_, 4
+ note E_, 4
+ note A_, 4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffe4
+ sound_call Music_Credits_branch_7ffe4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffa4
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffb8
+ sound_call Music_Credits_branch_7ffed
+ sound_call Music_Credits_branch_7ffed
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- A_ 1
- A_ 1
- A_ 1
+ note A_, 1
+ note A_, 1
+ note A_, 1
rest 7
- endchannel
+ sound_ret
Music_Credits_branch_7ffa4::
octave 4
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- endchannel
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ sound_ret
Music_Credits_branch_7ffae::
octave 4
- D_ 2
- G_ 2
- D_ 2
- G_ 2
- D_ 2
- G_ 2
- D_ 2
- G_ 2
- endchannel
+ note D_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ sound_ret
Music_Credits_branch_7ffb8::
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- endchannel
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ sound_ret
Music_Credits_branch_7ffc1::
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
- endchannel
+ note C#, 2
+ sound_ret
Music_Credits_branch_7ffd2::
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- endchannel
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ sound_ret
Music_Credits_branch_7ffdb::
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- endchannel
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ sound_ret
Music_Credits_branch_7ffe4::
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- endchannel
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ sound_ret
Music_Credits_branch_7ffed::
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- A_ 1
- A_ 1
- A_ 1
+ note A_, 1
+ note A_, 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- endchannel
+ sound_ret
diff --git a/audio/music/defeatedgymleader.asm b/audio/music/defeatedgymleader.asm
index 7f0d046d..159bf42b 100644
--- a/audio/music/defeatedgymleader.asm
+++ b/audio/music/defeatedgymleader.asm
@@ -1,607 +1,607 @@
Music_DefeatedGymLeader_Ch1::
tempo 112
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 18, 3, 1
- toggleperfectpitch
+ toggle_perfect_pitch
tempo 112
- notetype 12, 10, 6
+ note_type 12, 10, 6
octave 4
- D_ 6
+ note D_, 6
octave 3
- A_ 1
+ note A_, 1
octave 4
- D_ 1
- F# 6
- D_ 1
- F# 1
- notetype 12, 10, 0
- A_ 8
- notetype 12, 10, 7
- A_ 8
+ note D_, 1
+ note F#, 6
+ note D_, 1
+ note F#, 1
+ note_type 12, 10, 0
+ note A_, 8
+ note_type 12, 10, 7
+ note A_, 8
Music_DefeatedGymLeader_branch_23ccc::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 3
- A_ 2
- A_ 2
- F# 4
- G_ 2
- G_ 2
- E_ 4
- D_ 2
- E_ 2
- D_ 2
- E_ 2
- D_ 4
- D_ 4
- A_ 2
- A_ 2
- F# 4
- G_ 2
- G_ 2
- E_ 4
- D_ 2
- E_ 2
- D_ 2
- C# 2
- notetype 12, 11, 1
+ note A_, 2
+ note A_, 2
+ note F#, 4
+ note G_, 2
+ note G_, 2
+ note E_, 4
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note D_, 4
+ note D_, 4
+ note A_, 2
+ note A_, 2
+ note F#, 4
+ note G_, 2
+ note G_, 2
+ note E_, 4
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
+ note_type 12, 11, 1
octave 2
- B_ 8
- notetype 12, 11, 2
+ note B_, 8
+ note_type 12, 11, 2
octave 3
- A_ 2
- A_ 2
- F# 4
- G_ 2
- G_ 2
- E_ 4
- D_ 2
- E_ 2
- D_ 2
- E_ 2
- D_ 4
- D_ 4
- A_ 2
- A_ 2
- F# 4
- G_ 2
- G_ 2
- E_ 4
- D_ 2
- E_ 2
- D_ 2
- C# 2
- notetype 12, 11, 1
+ note A_, 2
+ note A_, 2
+ note F#, 4
+ note G_, 2
+ note G_, 2
+ note E_, 4
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note D_, 4
+ note D_, 4
+ note A_, 2
+ note A_, 2
+ note F#, 4
+ note G_, 2
+ note G_, 2
+ note E_, 4
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
+ note_type 12, 11, 1
octave 2
- B_ 8
- notetype 12, 9, 7
+ note B_, 8
+ note_type 12, 9, 7
octave 3
- D_ 6
+ note D_, 6
octave 2
- A_ 1
+ note A_, 1
octave 3
- D_ 1
- F# 8
- notetype 12, 11, 0
- F# 6
- E_ 1
- F# 1
- A_ 8
- notetype 12, 9, 7
- E_ 6
- C# 1
- E_ 1
- G# 8
- notetype 12, 11, 0
- G# 6
- E_ 1
- G# 1
- B_ 8
- notetype 12, 9, 7
- C# 6
+ note D_, 1
+ note F#, 8
+ note_type 12, 11, 0
+ note F#, 6
+ note E_, 1
+ note F#, 1
+ note A_, 8
+ note_type 12, 9, 7
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note G#, 8
+ note_type 12, 11, 0
+ note G#, 6
+ note E_, 1
+ note G#, 1
+ note B_, 8
+ note_type 12, 9, 7
+ note C#, 6
octave 2
- A_ 1
+ note A_, 1
octave 3
- C# 1
- E_ 8
- notetype 12, 11, 0
- E_ 6
- C# 1
- E_ 1
- E_ 4
- G_ 4
- notetype 12, 9, 0
- F# 8
- E_ 8
- D_ 8
- C# 8
- notetype 12, 9, 7
- D_ 6
+ note C#, 1
+ note E_, 8
+ note_type 12, 11, 0
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note E_, 4
+ note G_, 4
+ note_type 12, 9, 0
+ note F#, 8
+ note E_, 8
+ note D_, 8
+ note C#, 8
+ note_type 12, 9, 7
+ note D_, 6
octave 2
- A_ 1
+ note A_, 1
octave 3
- D_ 1
- F# 8
- notetype 12, 11, 0
- F# 6
- E_ 1
- F# 1
- A_ 8
- notetype 12, 9, 7
- E_ 6
- C# 1
- E_ 1
- G# 8
- notetype 12, 11, 0
- G# 6
- E_ 1
- G# 1
- B_ 8
- notetype 12, 9, 7
- C# 6
+ note D_, 1
+ note F#, 8
+ note_type 12, 11, 0
+ note F#, 6
+ note E_, 1
+ note F#, 1
+ note A_, 8
+ note_type 12, 9, 7
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note G#, 8
+ note_type 12, 11, 0
+ note G#, 6
+ note E_, 1
+ note G#, 1
+ note B_, 8
+ note_type 12, 9, 7
+ note C#, 6
octave 2
- A_ 1
+ note A_, 1
octave 3
- C# 1
- E_ 8
- notetype 12, 11, 0
- E_ 6
- C# 1
- E_ 1
- E_ 4
- G_ 4
- notetype 12, 9, 7
- F# 6
- E_ 1
- F# 1
- A_ 8
- notetype 12, 10, 7
- G_ 8
- E_ 8
- loopchannel 0, Music_DefeatedGymLeader_branch_23ccc
+ note C#, 1
+ note E_, 8
+ note_type 12, 11, 0
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note E_, 4
+ note G_, 4
+ note_type 12, 9, 7
+ note F#, 6
+ note E_, 1
+ note F#, 1
+ note A_, 8
+ note_type 12, 10, 7
+ note G_, 8
+ note E_, 8
+ sound_loop 0, Music_DefeatedGymLeader_branch_23ccc
Music_DefeatedGymLeader_Ch2::
- duty 2
+ duty_cycle 2
vibrato 24, 2, 4
- notetype 12, 12, 4
+ note_type 12, 12, 4
octave 4
- A_ 6
- F# 1
- A_ 1
+ note A_, 6
+ note F#, 1
+ note A_, 1
octave 5
- D_ 6
+ note D_, 6
octave 4
- A_ 1
+ note A_, 1
octave 5
- D_ 1
- notetype 12, 11, 0
- F# 8
- notetype 12, 11, 7
- F# 8
+ note D_, 1
+ note_type 12, 11, 0
+ note F#, 8
+ note_type 12, 11, 7
+ note F#, 8
Music_DefeatedGymLeader_branch_23d84::
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 4
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
- A_ 4
- B_ 2
- A_ 2
- G_ 2
- F# 2
- notetype 12, 12, 4
- A_ 4
- A_ 4
- notetype 12, 12, 2
+ note B_, 2
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note_type 12, 12, 4
+ note A_, 4
+ note A_, 4
+ note_type 12, 12, 2
octave 4
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
- A_ 4
- B_ 2
- A_ 2
- G_ 2
- F# 2
- notetype 12, 12, 1
- D_ 6
- notetype 6, 12, 2
- G_ 1
- A_ 1
- B_ 1
+ note B_, 2
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note_type 12, 12, 1
+ note D_, 6
+ note_type 6, 12, 2
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 4
- C# 1
- notetype 12, 12, 2
- D_ 2
- C# 2
+ note C#, 1
+ note_type 12, 12, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
- A_ 4
- B_ 2
- A_ 2
- G_ 2
- F# 2
- notetype 12, 12, 4
- A_ 4
- A_ 3
- notetype 6, 12, 2
- B_ 1
+ note B_, 2
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note_type 12, 12, 4
+ note A_, 4
+ note A_, 3
+ note_type 6, 12, 2
+ note B_, 1
octave 4
- C# 1
- notetype 12, 12, 2
- D_ 2
- C# 2
+ note C#, 1
+ note_type 12, 12, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
- A_ 4
- B_ 2
- A_ 2
- G_ 2
- F# 2
- notetype 12, 12, 1
- D_ 8
- notetype 12, 12, 7
- A_ 6
- F# 1
- A_ 1
- notetype 12, 11, 0
+ note B_, 2
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note_type 12, 12, 1
+ note D_, 8
+ note_type 12, 12, 7
+ note A_, 6
+ note F#, 1
+ note A_, 1
+ note_type 12, 11, 0
octave 4
- D_ 8
- notetype 12, 10, 0
- D_ 8
- notetype 12, 9, 7
- D_ 8
- notetype 12, 12, 7
+ note D_, 8
+ note_type 12, 10, 0
+ note D_, 8
+ note_type 12, 9, 7
+ note D_, 8
+ note_type 12, 12, 7
octave 3
- B_ 6
- G# 1
- B_ 1
- notetype 12, 8, 0
+ note B_, 6
+ note G#, 1
+ note B_, 1
+ note_type 12, 8, 0
octave 4
- E_ 8
- notetype 12, 10, 0
- E_ 8
- notetype 12, 12, 7
- E_ 8
+ note E_, 8
+ note_type 12, 10, 0
+ note E_, 8
+ note_type 12, 12, 7
+ note E_, 8
octave 3
- G_ 6
- E_ 1
- G_ 1
- notetype 12, 6, 15
+ note G_, 6
+ note E_, 1
+ note G_, 1
+ note_type 12, 6, -7
octave 4
- C# 8
- notetype 12, 12, 7
- C# 8
- F# 4
- E_ 4
- notetype 12, 11, 0
- D_ 14
+ note C#, 8
+ note_type 12, 12, 7
+ note C#, 8
+ note F#, 4
+ note E_, 4
+ note_type 12, 11, 0
+ note D_, 14
octave 3
- B_ 2
- notetype 12, 10, 0
- A_ 8
- notetype 12, 11, 7
- A_ 8
- notetype 12, 12, 7
- A_ 6
- F# 1
- A_ 1
- notetype 12, 11, 0
+ note B_, 2
+ note_type 12, 10, 0
+ note A_, 8
+ note_type 12, 11, 7
+ note A_, 8
+ note_type 12, 12, 7
+ note A_, 6
+ note F#, 1
+ note A_, 1
+ note_type 12, 11, 0
octave 4
- D_ 8
- notetype 12, 10, 0
- D_ 8
- notetype 12, 9, 7
- D_ 8
- notetype 12, 12, 7
+ note D_, 8
+ note_type 12, 10, 0
+ note D_, 8
+ note_type 12, 9, 7
+ note D_, 8
+ note_type 12, 12, 7
octave 3
- B_ 6
- G# 1
- B_ 1
- notetype 12, 4, 15
+ note B_, 6
+ note G#, 1
+ note B_, 1
+ note_type 12, 4, -7
octave 4
- E_ 8
- notetype 12, 11, 0
- E_ 8
- notetype 12, 12, 7
- E_ 8
+ note E_, 8
+ note_type 12, 11, 0
+ note E_, 8
+ note_type 12, 12, 7
+ note E_, 8
octave 3
- G_ 6
- E_ 1
- G_ 1
- notetype 12, 11, 0
+ note G_, 6
+ note E_, 1
+ note G_, 1
+ note_type 12, 11, 0
octave 4
- C# 8
- notetype 12, 11, 7
- C# 8
+ note C#, 8
+ note_type 12, 11, 7
+ note C#, 8
octave 3
- A_ 4
+ note A_, 4
octave 4
- C# 4
- notetype 12, 11, 0
- D_ 14
- E_ 2
- D_ 12
- notetype 12, 12, 2
+ note C#, 4
+ note_type 12, 11, 0
+ note D_, 14
+ note E_, 2
+ note D_, 12
+ note_type 12, 12, 2
octave 3
- G_ 1
- A_ 1
- B_ 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 4
- C# 1
- loopchannel 0, Music_DefeatedGymLeader_branch_23d84
+ note C#, 1
+ sound_loop 0, Music_DefeatedGymLeader_branch_23d84
Music_DefeatedGymLeader_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
vibrato 16, 1, 2
octave 4
- F# 6
- D_ 1
- F# 1
- A_ 6
- F# 1
- A_ 1
+ note F#, 6
+ note D_, 1
+ note F#, 1
+ note A_, 6
+ note F#, 1
+ note A_, 1
octave 5
- D_ 6
+ note D_, 6
octave 4
- A_ 1
+ note A_, 1
octave 5
- D_ 1
- F# 8
+ note D_, 1
+ note F#, 8
Music_DefeatedGymLeader_branch_23e65::
octave 4
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F# 3
+ note F#, 3
rest 1
- F# 3
+ note F#, 3
rest 1
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- D_ 1
+ note D_, 1
rest 5
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 3
+ note G_, 3
rest 1
- D_ 3
+ note D_, 3
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 7
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- C# 2
- D_ 2
- E_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- C# 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- G_ 2
- A_ 2
- G_ 2
- E_ 2
- loopchannel 0, Music_DefeatedGymLeader_branch_23e65
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note E_, 2
+ sound_loop 0, Music_DefeatedGymLeader_branch_23e65
diff --git a/audio/music/defeatedtrainer.asm b/audio/music/defeatedtrainer.asm
index 8ad51afa..158d755c 100644
--- a/audio/music/defeatedtrainer.asm
+++ b/audio/music/defeatedtrainer.asm
@@ -1,266 +1,266 @@
Music_DefeatedTrainer_Ch1::
tempo 224
volume 7, 7
- duty 2
- toggleperfectpitch
+ duty_cycle 2
+ toggle_perfect_pitch
tempo 224
- notetype 4, 10, 2
+ note_type 4, 10, 2
octave 4
- D_ 2
+ note D_, 2
tempo 224
- notetype 4, 10, 2
- D_ 2
- D_ 2
- D_ 2
+ note_type 4, 10, 2
+ note D_, 2
+ note D_, 2
+ note D_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- D_ 2
- notetype 4, 11, 3
- F# 12
- duty 1
+ note D_, 2
+ note_type 4, 11, 3
+ note F#, 12
+ duty_cycle 1
tempo 224
Music_DefeatedTrainer_branch_23a76::
- notetype 4, 6, 3
+ note_type 4, 6, 3
octave 3
- A_ 6
- F# 3
- A_ 3
- B_ 6
- G# 3
- B_ 3
+ note A_, 6
+ note F#, 3
+ note A_, 3
+ note B_, 6
+ note G#, 3
+ note B_, 3
octave 4
- C# 3
+ note C#, 3
octave 3
- B_ 3
- A_ 3
- G_ 3
- A_ 3
- B_ 3
- A_ 3
- G_ 3
- A_ 6
- F# 3
- A_ 3
- B_ 6
- G# 3
- B_ 3
+ note B_, 3
+ note A_, 3
+ note G_, 3
+ note A_, 3
+ note B_, 3
+ note A_, 3
+ note G_, 3
+ note A_, 6
+ note F#, 3
+ note A_, 3
+ note B_, 6
+ note G#, 3
+ note B_, 3
octave 4
- C# 3
- D_ 3
- E_ 3
- F# 3
- C# 3
+ note C#, 3
+ note D_, 3
+ note E_, 3
+ note F#, 3
+ note C#, 3
octave 3
- B_ 3
- A_ 3
+ note B_, 3
+ note A_, 3
octave 4
- C# 3
+ note C#, 3
octave 3
- A_ 6
- F# 3
- A_ 3
- B_ 6
- G# 3
- B_ 3
+ note A_, 6
+ note F#, 3
+ note A_, 3
+ note B_, 6
+ note G#, 3
+ note B_, 3
octave 4
- C_ 6
+ note C_, 6
octave 3
- A_ 3
+ note A_, 3
octave 4
- C_ 3
- D_ 3
+ note C_, 3
+ note D_, 3
octave 3
- B_ 3
+ note B_, 3
octave 4
- D_ 6
- C# 3
+ note D_, 6
+ note C#, 3
octave 3
- B_ 3
- A_ 3
- G_ 3
- F# 3
- G_ 3
- A_ 3
- B_ 3
- A_ 3
- G_ 3
- F# 3
- E_ 3
- F# 3
- G_ 3
- A_ 3
- B_ 3
- loopchannel 0, Music_DefeatedTrainer_branch_23a76
+ note B_, 3
+ note A_, 3
+ note G_, 3
+ note F#, 3
+ note G_, 3
+ note A_, 3
+ note B_, 3
+ note A_, 3
+ note G_, 3
+ note F#, 3
+ note E_, 3
+ note F#, 3
+ note G_, 3
+ note A_, 3
+ note B_, 3
+ sound_loop 0, Music_DefeatedTrainer_branch_23a76
Music_DefeatedTrainer_Ch2::
- duty 2
- notetype 4, 12, 3
+ duty_cycle 2
+ note_type 4, 12, 3
octave 4
- A_ 2
- notetype 4, 12, 3
- A_ 2
- A_ 2
- A_ 2
- B_ 2
+ note A_, 2
+ note_type 4, 12, 3
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note B_, 2
octave 5
- C# 2
- notetype 4, 12, 4
- D_ 12
+ note C#, 2
+ note_type 4, 12, 4
+ note D_, 12
Music_DefeatedTrainer_branch_23ad2::
- notetype 4, 8, 5
+ note_type 4, 8, 5
octave 4
- D_ 6
+ note D_, 6
octave 3
- A_ 3
+ note A_, 3
octave 4
- D_ 3
- E_ 6
+ note D_, 3
+ note E_, 6
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 3
- F# 3
- G_ 3
- A_ 6
- E_ 3
- F# 3
- G_ 6
- D_ 6
+ note E_, 3
+ note F#, 3
+ note G_, 3
+ note A_, 6
+ note E_, 3
+ note F#, 3
+ note G_, 6
+ note D_, 6
octave 3
- A_ 3
+ note A_, 3
octave 4
- D_ 3
- E_ 6
+ note D_, 3
+ note E_, 6
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 3
- F# 3
- G_ 3
- A_ 6
- F# 3
- G_ 3
- A_ 6
- D_ 6
+ note E_, 3
+ note F#, 3
+ note G_, 3
+ note A_, 6
+ note F#, 3
+ note G_, 3
+ note A_, 6
+ note D_, 6
octave 3
- A_ 3
+ note A_, 3
octave 4
- D_ 3
- E_ 6
+ note D_, 3
+ note E_, 6
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 3
- F_ 6
- C_ 3
- F_ 3
- G_ 3
- D_ 3
- G_ 6
- notetype 4, 7, 0
- F# 12
- notetype 4, 7, 7
- F# 12
- notetype 4, 6, 0
- E_ 12
- notetype 4, 6, 7
- E_ 12
- loopchannel 0, Music_DefeatedTrainer_branch_23ad2
+ note E_, 3
+ note F_, 6
+ note C_, 3
+ note F_, 3
+ note G_, 3
+ note D_, 3
+ note G_, 6
+ note_type 4, 7, 0
+ note F#, 12
+ note_type 4, 7, 7
+ note F#, 12
+ note_type 4, 6, 0
+ note E_, 12
+ note_type 4, 6, 7
+ note E_, 12
+ sound_loop 0, Music_DefeatedTrainer_branch_23ad2
Music_DefeatedTrainer_Ch3::
- notetype 4, 1, 0
+ note_type 4, 1, 0
octave 5
- D_ 2
- notetype 4, 1, 0
- D_ 2
- D_ 2
+ note D_, 2
+ note_type 4, 1, 0
+ note D_, 2
+ note D_, 2
octave 4
- B_ 2
- A_ 2
- G_ 2
- A_ 12
- notetype 4, 2, 1
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 12
+ note_type 4, 2, 1
Music_DefeatedTrainer_branch_23b24::
- F# 3
+ note F#, 3
rest 3
- F# 3
+ note F#, 3
rest 3
- G# 3
+ note G#, 3
rest 3
- G# 3
+ note G#, 3
rest 3
- A_ 3
+ note A_, 3
rest 3
- A_ 3
+ note A_, 3
rest 3
- B_ 3
+ note B_, 3
rest 3
- B_ 3
+ note B_, 3
rest 3
- F# 3
+ note F#, 3
rest 3
- F# 3
+ note F#, 3
rest 3
- G# 3
+ note G#, 3
rest 3
- G# 3
+ note G#, 3
rest 3
- A_ 3
+ note A_, 3
rest 3
- A_ 3
+ note A_, 3
rest 3
octave 5
- C# 3
+ note C#, 3
rest 3
- C# 3
+ note C#, 3
octave 4
- A_ 3
- F# 3
+ note A_, 3
+ note F#, 3
octave 5
- D_ 3
+ note D_, 3
octave 4
- F# 3
+ note F#, 3
rest 3
- G# 3
+ note G#, 3
octave 5
- E_ 3
+ note E_, 3
octave 4
- G# 3
+ note G#, 3
rest 3
- A_ 3
+ note A_, 3
octave 5
- F_ 3
+ note F_, 3
octave 4
- A_ 3
+ note A_, 3
rest 3
- B_ 3
+ note B_, 3
octave 5
- G_ 3
+ note G_, 3
octave 4
- B_ 3
- A# 3
- A_ 3
+ note B_, 3
+ note A#, 3
+ note A_, 3
rest 3
- A_ 3
+ note A_, 3
rest 3
- A_ 3
+ note A_, 3
rest 3
- A_ 3
+ note A_, 3
octave 5
- C_ 3
- C# 3
+ note C_, 3
+ note C#, 3
rest 3
- C# 3
+ note C#, 3
rest 3
- C# 3
+ note C#, 3
rest 3
- C# 3
+ note C#, 3
octave 4
- A_ 3
- loopchannel 0, Music_DefeatedTrainer_branch_23b24
+ note A_, 3
+ sound_loop 0, Music_DefeatedTrainer_branch_23b24
diff --git a/audio/music/defeatedwildmon.asm b/audio/music/defeatedwildmon.asm
index 92326a84..364f548e 100644
--- a/audio/music/defeatedwildmon.asm
+++ b/audio/music/defeatedwildmon.asm
@@ -1,302 +1,302 @@
Music_DefeatedWildMon_Ch1::
tempo 112
volume 7, 7
- executemusic
- duty 3
+ execute_music
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
+ toggle_perfect_pitch
tempo 112
- notetype 12, 11, 7
+ note_type 12, 11, 7
octave 3
- B_ 1
- A_ 1
- G# 1
- F# 1
- E_ 12
+ note B_, 1
+ note A_, 1
+ note G#, 1
+ note F#, 1
+ note E_, 12
Music_DefeatedWildMon_branch_23b8b::
- notetype 12, 6, 2
- E_ 2
- F# 2
- E_ 2
- F# 2
- G# 2
- G# 2
- G# 4
- A_ 2
- A_ 2
- A_ 4
- G# 2
- G# 2
- G# 4
- E_ 2
- F# 2
- E_ 2
- F# 2
- G# 2
- G# 2
- G# 4
- A_ 2
- A_ 2
- A_ 4
- G# 8
- F_ 2
- G_ 2
- F_ 2
- G_ 2
- A_ 2
- A_ 2
- A_ 4
- A# 2
- A# 2
- A# 4
- A_ 2
- A_ 2
- A_ 4
- F_ 2
- G_ 2
- F_ 2
- G_ 2
- A_ 2
- A_ 2
- A_ 4
- A# 2
- A# 2
- A# 4
- A_ 8
- loopchannel 0, Music_DefeatedWildMon_branch_23b8b
+ note_type 12, 6, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note G#, 2
+ note G#, 4
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ note G#, 2
+ note G#, 2
+ note G#, 4
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note G#, 2
+ note G#, 4
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ note G#, 8
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note G_, 2
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ note A#, 2
+ note A#, 2
+ note A#, 4
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note G_, 2
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ note A#, 2
+ note A#, 2
+ note A#, 4
+ note A_, 8
+ sound_loop 0, Music_DefeatedWildMon_branch_23b8b
Music_DefeatedWildMon_Ch2::
- executemusic
- duty 2
- notetype 12, 12, 3
+ execute_music
+ duty_cycle 2
+ note_type 12, 12, 3
octave 4
- E_ 1
- F# 1
- G# 1
- A_ 1
- notetype 12, 12, 7
- B_ 12
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ note_type 12, 12, 7
+ note B_, 12
Music_DefeatedWildMon_branch_23bce::
- notetype 12, 8, 2
+ note_type 12, 8, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 2
- B_ 2
- B_ 2
- B_ 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ note B_, 2
+ note B_, 4
octave 4
- C# 2
- C# 2
- C# 4
+ note C#, 2
+ note C#, 2
+ note C#, 4
octave 3
- B_ 2
- B_ 2
- B_ 4
- B_ 2
- A_ 2
- G# 2
- A_ 2
- B_ 2
- B_ 2
- B_ 4
+ note B_, 2
+ note B_, 2
+ note B_, 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ note B_, 2
+ note B_, 4
octave 4
- C# 2
- C# 2
- C# 4
+ note C#, 2
+ note C#, 2
+ note C#, 4
octave 3
- B_ 8
+ note B_, 8
octave 4
- C_ 2
+ note C_, 2
octave 3
- A# 2
- A_ 2
- A# 2
+ note A#, 2
+ note A_, 2
+ note A#, 2
octave 4
- C_ 2
- C_ 2
- C_ 4
- D_ 2
- D_ 2
- D_ 4
- C_ 2
- C_ 2
- C_ 4
- C_ 2
+ note C_, 2
+ note C_, 2
+ note C_, 4
+ note D_, 2
+ note D_, 2
+ note D_, 4
+ note C_, 2
+ note C_, 2
+ note C_, 4
+ note C_, 2
octave 3
- A# 2
- A_ 2
- A# 2
+ note A#, 2
+ note A_, 2
+ note A#, 2
octave 4
- C_ 2
- C_ 2
- C_ 4
- D_ 2
- D_ 2
- D_ 4
- C_ 8
- loopchannel 0, Music_DefeatedWildMon_branch_23bce
+ note C_, 2
+ note C_, 2
+ note C_, 4
+ note D_, 2
+ note D_, 2
+ note D_, 4
+ note C_, 8
+ sound_loop 0, Music_DefeatedWildMon_branch_23bce
Music_DefeatedWildMon_Ch3::
- executemusic
- notetype 12, 2, 0
+ execute_music
+ note_type 12, 2, 0
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 6
- C# 1
+ note C#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
rest 1
octave 6
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
Music_DefeatedWildMon_branch_23c21::
octave 4
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 3
octave 5
- E_ 1
+ note E_, 1
rest 3
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- F# 1
+ note F#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
octave 5
- D# 1
+ note D#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 3
octave 5
- E_ 1
+ note E_, 1
rest 3
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- F# 1
+ note F#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 3
octave 5
- E_ 1
+ note E_, 1
rest 3
octave 4
- D# 4
+ note D#, 4
octave 4
- F_ 1
+ note F_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 3
octave 5
- F_ 1
+ note F_, 1
rest 3
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- G_ 1
+ note G_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 3
- F_ 1
+ note F_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 1
octave 4
- F_ 1
+ note F_, 1
rest 3
octave 5
- F_ 1
+ note F_, 1
rest 3
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- G_ 1
+ note G_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 3
octave 5
- F_ 1
+ note F_, 1
rest 3
octave 4
- D# 4
- loopchannel 0, Music_DefeatedWildMon_branch_23c21
+ note D#, 4
+ sound_loop 0, Music_DefeatedWildMon_branch_23c21
diff --git a/audio/music/dungeon1.asm b/audio/music/dungeon1.asm
index 825207b8..6bcb1fc0 100644
--- a/audio/music/dungeon1.asm
+++ b/audio/music/dungeon1.asm
@@ -1,673 +1,675 @@
Music_Dungeon1_Ch1::
tempo 144
volume 7, 7
- duty 3
- toggleperfectpitch
+ duty_cycle 3
+ toggle_perfect_pitch
vibrato 10, 1, 4
- notetype 12, 4, 13
+ note_type 12, 4, -5
rest 8
+ ; stereo_panning %1110, %1101
octave 4
- F# 8
+ note F#, 8
+ ; stereo_panning %1111, %1111
Music_Dungeon1_branch_7dee5::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 3
Music_Dungeon1_branch_7dee8::
- callchannel Music_Dungeon1_branch_7dfaa
- loopchannel 3, Music_Dungeon1_branch_7dee8
- E_ 1
- D# 1
- B_ 1
- A# 1
- G_ 1
- G# 1
+ sound_call Music_Dungeon1_branch_7dfaa
+ sound_loop 3, Music_Dungeon1_branch_7dee8
+ note E_, 1
+ note D#, 1
+ note B_, 1
+ note A#, 1
+ note G_, 1
+ note G#, 1
rest 1
- A# 1
- E_ 1
- D# 1
- B_ 1
- A# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
+ note A#, 1
+ note E_, 1
+ note D#, 1
+ note B_, 1
+ note A#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
Music_Dungeon1_branch_7deff::
- callchannel Music_Dungeon1_branch_7dfaa
- loopchannel 4, Music_Dungeon1_branch_7deff
- callchannel Music_Dungeon1_branch_7dfd5
- octave 3
- G_ 1
- F# 1
- E_ 1
- G_ 1
- callchannel Music_Dungeon1_branch_7dfd5
- octave 3
- A_ 1
- G_ 1
- E_ 1
- A_ 1
- callchannel Music_Dungeon1_branch_7dfd5
- octave 3
- B_ 1
- A_ 1
- G_ 1
- F# 1
- notetype 12, 12, 3
- G_ 4
- F# 4
- E_ 4
- D# 4
- notetype 12, 12, 2
- callchannel Music_Dungeon1_branch_7dfc5
- octave 3
- B_ 3
- callchannel Music_Dungeon1_branch_7dfc5
- C_ 3
- callchannel Music_Dungeon1_branch_7dfc5
- C# 3
- notetype 12, 12, 3
- octave 3
- G_ 4
- F# 4
- E_ 4
- D# 4
- E_ 4
- D# 4
- C_ 4
+ sound_call Music_Dungeon1_branch_7dfaa
+ sound_loop 4, Music_Dungeon1_branch_7deff
+ sound_call Music_Dungeon1_branch_7dfd5
+ octave 3
+ note G_, 1
+ note F#, 1
+ note E_, 1
+ note G_, 1
+ sound_call Music_Dungeon1_branch_7dfd5
+ octave 3
+ note A_, 1
+ note G_, 1
+ note E_, 1
+ note A_, 1
+ sound_call Music_Dungeon1_branch_7dfd5
+ octave 3
+ note B_, 1
+ note A_, 1
+ note G_, 1
+ note F#, 1
+ note_type 12, 12, 3
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D#, 4
+ note_type 12, 12, 2
+ sound_call Music_Dungeon1_branch_7dfc5
+ octave 3
+ note B_, 3
+ sound_call Music_Dungeon1_branch_7dfc5
+ note C_, 3
+ sound_call Music_Dungeon1_branch_7dfc5
+ note C#, 3
+ note_type 12, 12, 3
+ octave 3
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note D#, 4
+ note C_, 4
octave 2
- B_ 4
- notetype 12, 12, 2
- B_ 1
- A# 1
- G_ 1
- A# 1
- B_ 1
- A# 1
- G_ 1
- A# 1
- octave 3
- C_ 1
+ note B_, 4
+ note_type 12, 12, 2
+ note B_, 1
+ note A#, 1
+ note G_, 1
+ note A#, 1
+ note B_, 1
+ note A#, 1
+ note G_, 1
+ note A#, 1
+ octave 3
+ note C_, 1
octave 2
- B_ 1
- G# 1
- B_ 1
+ note B_, 1
+ note G#, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- G# 1
- B_ 1
+ note B_, 1
+ note G#, 1
+ note B_, 1
octave 3
- C# 1
- C_ 1
+ note C#, 1
+ note C_, 1
octave 2
- A_ 1
+ note A_, 1
octave 3
- C_ 1
- C# 1
- C_ 1
+ note C_, 1
+ note C#, 1
+ note C_, 1
octave 2
- A_ 1
+ note A_, 1
octave 3
- C_ 1
- D_ 1
- C# 1
+ note C_, 1
+ note D_, 1
+ note C#, 1
octave 2
- A# 1
+ note A#, 1
octave 3
- C# 1
- D_ 1
- C# 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
octave 2
- A# 1
+ note A#, 1
octave 3
- C# 1
+ note C#, 1
Music_Dungeon1_branch_7df6e::
rest 16
- loopchannel 8, Music_Dungeon1_branch_7df6e
- notetype 12, 12, 3
- callchannel Music_Dungeon1_branch_7dfbb
- B_ 2
- G_ 2
+ sound_loop 8, Music_Dungeon1_branch_7df6e
+ note_type 12, 12, 3
+ sound_call Music_Dungeon1_branch_7dfbb
+ note B_, 2
+ note G_, 2
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 2
- A_ 4
- F# 2
- callchannel Music_Dungeon1_branch_7dfbb
- A# 2
- G_ 2
- B_ 4
- G_ 2
- F# 2
- G_ 2
- D# 2
- notetype 12, 12, 2
- callchannel Music_Dungeon1_branch_7dfc5
- octave 3
- B_ 3
- callchannel Music_Dungeon1_branch_7dfc5
- C_ 3
- callchannel Music_Dungeon1_branch_7dfc5
- C# 3
- notetype 12, 12, 7
- octave 3
- F# 8
- D# 8
- notetype 12, 12, 2
- callchannel Music_Dungeon1_branch_7dfaa
- callchannel Music_Dungeon1_branch_7dfaa
- loopchannel 0, Music_Dungeon1_branch_7dee5
+ note G_, 2
+ note A_, 4
+ note F#, 2
+ sound_call Music_Dungeon1_branch_7dfbb
+ note A#, 2
+ note G_, 2
+ note B_, 4
+ note G_, 2
+ note F#, 2
+ note G_, 2
+ note D#, 2
+ note_type 12, 12, 2
+ sound_call Music_Dungeon1_branch_7dfc5
+ octave 3
+ note B_, 3
+ sound_call Music_Dungeon1_branch_7dfc5
+ note C_, 3
+ sound_call Music_Dungeon1_branch_7dfc5
+ note C#, 3
+ note_type 12, 12, 7
+ octave 3
+ note F#, 8
+ note D#, 8
+ note_type 12, 12, 2
+ sound_call Music_Dungeon1_branch_7dfaa
+ sound_call Music_Dungeon1_branch_7dfaa
+ sound_loop 0, Music_Dungeon1_branch_7dee5
Music_Dungeon1_branch_7dfaa::
- E_ 1
- D# 1
- B_ 1
- A# 1
- G_ 1
- G# 1
+ note E_, 1
+ note D#, 1
+ note B_, 1
+ note A#, 1
+ note G_, 1
+ note G#, 1
rest 1
- A# 1
- E_ 1
- D# 1
- B_ 1
- A# 1
- G_ 1
- G# 1
+ note A#, 1
+ note E_, 1
+ note D#, 1
+ note B_, 1
+ note A#, 1
+ note G_, 1
+ note G#, 1
rest 1
- A# 1
- endchannel
+ note A#, 1
+ sound_ret
Music_Dungeon1_branch_7dfbb::
octave 2
- G_ 2
- A# 4
- G_ 2
+ note G_, 2
+ note A#, 4
+ note G_, 2
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 2
- A# 2
- endchannel
+ note G_, 2
+ note A#, 2
+ sound_ret
Music_Dungeon1_branch_7dfc5::
octave 3
- E_ 1
- E_ 1
- F_ 1
- E_ 1
- G_ 1
- E_ 1
- A_ 1
- E_ 1
- A# 1
- E_ 1
- B_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note G_, 1
+ note E_, 1
+ note A_, 1
+ note E_, 1
+ note A#, 1
+ note E_, 1
+ note B_, 1
+ note E_, 1
octave 4
- C_ 1
- endchannel
+ note C_, 1
+ sound_ret
Music_Dungeon1_branch_7dfd5::
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 4
octave 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- endchannel
+ sound_ret
Music_Dungeon1_Ch2::
vibrato 11, 1, 5
- duty 3
- notetype 12, 0, 15
+ duty_cycle 3
+ note_type 12, 0, -7
octave 4
- G# 8
- notetype 12, 4, 13
+ note G#, 8
+ note_type 12, 4, -5
octave 5
- D_ 8
+ note D_, 8
Music_Dungeon1_branch_7dfeb::
- notetype 12, 12, 2
+ note_type 12, 12, 2
Music_Dungeon1_branch_7dfed::
- callchannel Music_Dungeon1_branch_7e097
- loopchannel 3, Music_Dungeon1_branch_7dfed
+ sound_call Music_Dungeon1_branch_7e097
+ sound_loop 3, Music_Dungeon1_branch_7dfed
octave 2
- E_ 1
- E_ 1
- B_ 1
+ note E_, 1
+ note E_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
rest 2
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- E_ 1
- E_ 1
- A_ 1
- G_ 1
- F_ 1
- F# 1
- G_ 1
- D# 1
+ note B_, 1
+ note E_, 1
+ note E_, 1
+ note A_, 1
+ note G_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note D#, 1
Music_Dungeon1_branch_7e006::
- callchannel Music_Dungeon1_branch_7e097
- loopchannel 4, Music_Dungeon1_branch_7e006
+ sound_call Music_Dungeon1_branch_7e097
+ sound_loop 4, Music_Dungeon1_branch_7e006
rest 2
- callchannel Music_Dungeon1_branch_7e0ab
+ sound_call Music_Dungeon1_branch_7e0ab
octave 3
- C_ 4
- callchannel Music_Dungeon1_branch_7e0ab
+ note C_, 4
+ sound_call Music_Dungeon1_branch_7e0ab
octave 3
- C# 4
- callchannel Music_Dungeon1_branch_7e0ab
+ note C#, 4
+ sound_call Music_Dungeon1_branch_7e0ab
octave 3
- D# 4
- notetype 12, 13, 3
+ note D#, 4
+ note_type 12, 13, 3
octave 4
- E_ 4
- D# 4
- C_ 4
+ note E_, 4
+ note D#, 4
+ note C_, 4
octave 3
- B_ 4
- notetype 12, 13, 2
- callchannel Music_Dungeon1_branch_7e0b5
+ note B_, 4
+ note_type 12, 13, 2
+ sound_call Music_Dungeon1_branch_7e0b5
octave 3
- F# 4
- callchannel Music_Dungeon1_branch_7e0b5
+ note F#, 4
+ sound_call Music_Dungeon1_branch_7e0b5
octave 3
- G_ 4
- callchannel Music_Dungeon1_branch_7e0b5
+ note G_, 4
+ sound_call Music_Dungeon1_branch_7e0b5
octave 3
- A# 4
- notetype 12, 13, 3
+ note A#, 4
+ note_type 12, 13, 3
octave 4
- E_ 4
- D# 4
- C_ 4
+ note E_, 4
+ note D#, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- C_ 4
- octave 3
- B_ 4
- G_ 4
- F# 2
- notetype 12, 13, 6
- E_ 8
- F_ 8
- F# 8
- G_ 8
- notetype 12, 13, 2
- callchannel Music_Dungeon1_branch_7e0ba
+ note C_, 4
+ octave 3
+ note B_, 4
+ note G_, 4
+ note F#, 2
+ note_type 12, 13, 6
+ note E_, 8
+ note F_, 8
+ note F#, 8
+ note G_, 8
+ note_type 12, 13, 2
+ sound_call Music_Dungeon1_branch_7e0ba
rest 10
- E_ 1
+ note E_, 1
rest 1
- callchannel Music_Dungeon1_branch_7e0ba
+ sound_call Music_Dungeon1_branch_7e0ba
rest 12
- callchannel Music_Dungeon1_branch_7e0ba
+ sound_call Music_Dungeon1_branch_7e0ba
rest 12
- callchannel Music_Dungeon1_branch_7e0ba
+ sound_call Music_Dungeon1_branch_7e0ba
rest 14
- notetype 12, 13, 3
- callchannel Music_Dungeon1_branch_7e0cd
- D# 4
- callchannel Music_Dungeon1_branch_7e0cd
- D# 2
+ note_type 12, 13, 3
+ sound_call Music_Dungeon1_branch_7e0cd
+ note D#, 4
+ sound_call Music_Dungeon1_branch_7e0cd
+ note D#, 2
rest 2
- notetype 12, 13, 2
- callchannel Music_Dungeon1_branch_7e0c0
+ note_type 12, 13, 2
+ sound_call Music_Dungeon1_branch_7e0c0
rest 2
octave 3
- F# 4
+ note F#, 4
octave 2
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C_ 1
+ note C_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- D_ 1
- C# 1
+ note D_, 1
+ note C#, 1
rest 2
octave 3
- G_ 4
- callchannel Music_Dungeon1_branch_7e0c0
+ note G_, 4
+ sound_call Music_Dungeon1_branch_7e0c0
octave 3
- A# 4
- notetype 12, 13, 6
- B_ 8
+ note A#, 4
+ note_type 12, 13, 6
+ note B_, 8
octave 4
- D# 8
- notetype 12, 13, 2
- callchannel Music_Dungeon1_branch_7e097
- callchannel Music_Dungeon1_branch_7e097
- loopchannel 0, Music_Dungeon1_branch_7dfeb
+ note D#, 8
+ note_type 12, 13, 2
+ sound_call Music_Dungeon1_branch_7e097
+ sound_call Music_Dungeon1_branch_7e097
+ sound_loop 0, Music_Dungeon1_branch_7dfeb
Music_Dungeon1_branch_7e097::
octave 2
- E_ 1
- E_ 1
- B_ 1
+ note E_, 1
+ note E_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
rest 2
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- E_ 1
- E_ 1
- B_ 1
+ note B_, 1
+ note E_, 1
+ note E_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
rest 2
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- endchannel
+ note B_, 1
+ sound_ret
Music_Dungeon1_branch_7e0ab::
octave 2
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
octave 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- endchannel
+ sound_ret
Music_Dungeon1_branch_7e0b5::
octave 2
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 10
- endchannel
+ sound_ret
Music_Dungeon1_branch_7e0ba::
octave 1
- E_ 1
- G_ 1
- E_ 1
- D# 1
- endchannel
+ note E_, 1
+ note G_, 1
+ note E_, 1
+ note D#, 1
+ sound_ret
Music_Dungeon1_branch_7e0c0::
octave 2
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
octave 4
- E_ 1
+ note E_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- C# 1
- C_ 1
- endchannel
+ note C#, 1
+ note C_, 1
+ sound_ret
Music_Dungeon1_branch_7e0cd::
octave 3
- E_ 6
- G_ 6
- E_ 4
- A_ 6
+ note E_, 6
+ note G_, 6
+ note E_, 4
+ note A_, 6
octave 4
- C_ 6
+ note C_, 6
octave 3
- B_ 4
- G_ 6
- A# 6
- F# 4
- E_ 6
- F# 6
- endchannel
+ note B_, 4
+ note G_, 6
+ note A#, 6
+ note F#, 4
+ note E_, 6
+ note F#, 6
+ sound_ret
Music_Dungeon1_Ch3::
- notetype 12, 1, 1
+ note_type 12, 1, 1
vibrato 8, 2, 6
rest 14
octave 4
- D_ 1
- D# 1
+ note D_, 1
+ note D#, 1
Music_Dungeon1_branch_7e0e5::
- callchannel Music_Dungeon1_branch_7e140
- callchannel Music_Dungeon1_branch_7e140
+ sound_call Music_Dungeon1_branch_7e140
+ sound_call Music_Dungeon1_branch_7e140
octave 5
- E_ 2
+ note E_, 2
rest 4
octave 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
octave 4
- F# 4
- callchannel Music_Dungeon1_branch_7e154
+ note F#, 4
+ sound_call Music_Dungeon1_branch_7e154
octave 4
- G_ 4
- callchannel Music_Dungeon1_branch_7e154
+ note G_, 4
+ sound_call Music_Dungeon1_branch_7e154
octave 4
- A_ 4
- B_ 4
- A# 4
- G_ 4
- F# 4
+ note A_, 4
+ note B_, 4
+ note A#, 4
+ note G_, 4
+ note F#, 4
rest 6
- callchannel Music_Dungeon1_branch_7e177
- B_ 4
- A# 4
- G_ 4
- F# 4
- G_ 4
- F# 4
- E_ 4
- D# 4
- callchannel Music_Dungeon1_branch_7e15e
+ sound_call Music_Dungeon1_branch_7e177
+ note B_, 4
+ note A#, 4
+ note G_, 4
+ note F#, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note D#, 4
+ sound_call Music_Dungeon1_branch_7e15e
rest 12
- callchannel Music_Dungeon1_branch_7e15e
+ sound_call Music_Dungeon1_branch_7e15e
rest 12
- callchannel Music_Dungeon1_branch_7e15e
+ sound_call Music_Dungeon1_branch_7e15e
rest 10
- E_ 1
+ note E_, 1
rest 1
- callchannel Music_Dungeon1_branch_7e15e
+ sound_call Music_Dungeon1_branch_7e15e
rest 12
- callchannel Music_Dungeon1_branch_7e15e
+ sound_call Music_Dungeon1_branch_7e15e
rest 12
- callchannel Music_Dungeon1_branch_7e15e
+ sound_call Music_Dungeon1_branch_7e15e
rest 10
- D_ 1
- D# 1
- callchannel Music_Dungeon1_branch_7e164
- callchannel Music_Dungeon1_branch_7e164
- E_ 2
+ note D_, 1
+ note D#, 1
+ sound_call Music_Dungeon1_branch_7e164
+ sound_call Music_Dungeon1_branch_7e164
+ note E_, 2
rest 4
- callchannel Music_Dungeon1_branch_7e177
- B_ 8
- F# 6
- D_ 1
- D# 1
+ sound_call Music_Dungeon1_branch_7e177
+ note B_, 8
+ note F#, 6
+ note D_, 1
+ note D#, 1
rest 16
rest 16
- loopchannel 0, Music_Dungeon1_branch_7e0e5
+ sound_loop 0, Music_Dungeon1_branch_7e0e5
Music_Dungeon1_branch_7e140::
octave 5
- E_ 4
- B_ 4
- A# 4
+ note E_, 4
+ note B_, 4
+ note A#, 4
octave 6
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 5
- G# 4
- G_ 4
- B_ 4
- A# 4
- E_ 4
- D# 4
- A_ 4
- G# 4
- E_ 4
- F# 4
- D# 4
- endchannel
+ note G#, 4
+ note G_, 4
+ note B_, 4
+ note A#, 4
+ note E_, 4
+ note D#, 4
+ note A_, 4
+ note G#, 4
+ note E_, 4
+ note F#, 4
+ note D#, 4
+ sound_ret
Music_Dungeon1_branch_7e154::
octave 6
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 4
octave 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- endchannel
+ sound_ret
Music_Dungeon1_branch_7e15e::
octave 3
- E_ 1
- G_ 1
- E_ 1
- D# 1
- endchannel
+ note E_, 1
+ note G_, 1
+ note E_, 1
+ note D#, 1
+ sound_ret
Music_Dungeon1_branch_7e164::
- E_ 4
- B_ 4
- A# 4
+ note E_, 4
+ note B_, 4
+ note A#, 4
octave 4
- D_ 4
- C# 4
- octave 3
- G# 4
- G_ 4
- B_ 4
- A# 4
- E_ 4
- D# 4
- A_ 4
- G# 4
- E_ 4
- F# 4
- D# 4
- endchannel
+ note D_, 4
+ note C#, 4
+ octave 3
+ note G#, 4
+ note G_, 4
+ note B_, 4
+ note A#, 4
+ note E_, 4
+ note D#, 4
+ note A_, 4
+ note G#, 4
+ note E_, 4
+ note F#, 4
+ note D#, 4
+ sound_ret
Music_Dungeon1_branch_7e177::
octave 4
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- F# 4
+ note F#, 4
rest 6
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- G_ 4
+ note G_, 4
rest 6
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- A# 4
- endchannel
+ note E_, 1
+ note E_, 1
+ note A#, 4
+ sound_ret
Music_Dungeon1_Ch4::
- dspeed 12
+ drum_speed 12
rest 14
- cymbal1 1
- cymbal1 1
+ drum_note 12, 1
+ drum_note 12, 1
Music_Dungeon1_branch_7e190::
- callchannel Music_Dungeon1_branch_7e1f1
- loopchannel 3, Music_Dungeon1_branch_7e190
- cymbal2 4
- cymbal1 4
- cymbal2 4
- cymbal1 2
- cymbal1 2
+ sound_call Music_Dungeon1_branch_7e1f1
+ sound_loop 3, Music_Dungeon1_branch_7e190
+ drum_note 13, 4
+ drum_note 12, 4
+ drum_note 13, 4
+ drum_note 12, 2
+ drum_note 12, 2
Music_Dungeon1_branch_7e1a1::
- callchannel Music_Dungeon1_branch_7e1f1
- loopchannel 3, Music_Dungeon1_branch_7e1a1
- cymbal2 4
- cymbal1 4
- cymbal2 4
- cymbal2 4
+ sound_call Music_Dungeon1_branch_7e1f1
+ sound_loop 3, Music_Dungeon1_branch_7e1a1
+ drum_note 13, 4
+ drum_note 12, 4
+ drum_note 13, 4
+ drum_note 13, 4
Music_Dungeon1_branch_7e1b0::
- callchannel Music_Dungeon1_branch_7e1fa
- loopchannel 3, Music_Dungeon1_branch_7e1b0
- callchannel Music_Dungeon1_branch_7e202
+ sound_call Music_Dungeon1_branch_7e1fa
+ sound_loop 3, Music_Dungeon1_branch_7e1b0
+ sound_call Music_Dungeon1_branch_7e202
Music_Dungeon1_branch_7e1ba::
- callchannel Music_Dungeon1_branch_7e1fa
- loopchannel 3, Music_Dungeon1_branch_7e1ba
- callchannel Music_Dungeon1_branch_7e202
- snare7 4
- snare8 4
- snare8 4
+ sound_call Music_Dungeon1_branch_7e1fa
+ sound_loop 3, Music_Dungeon1_branch_7e1ba
+ sound_call Music_Dungeon1_branch_7e202
+ drum_note 9, 4
+ drum_note 10, 4
+ drum_note 10, 4
rest 2
- snare7 2
- cymbal2 4
+ drum_note 9, 2
+ drum_note 13, 4
Music_Dungeon1_branch_7e1cf::
rest 16
- loopchannel 13, Music_Dungeon1_branch_7e1cf
+ sound_loop 13, Music_Dungeon1_branch_7e1cf
rest 12
Music_Dungeon1_branch_7e1d5::
- callchannel Music_Dungeon1_branch_7e1fa
- loopchannel 3, Music_Dungeon1_branch_7e1d5
- cymbal1 4
- cymbal1 4
- cymbal1 4
+ sound_call Music_Dungeon1_branch_7e1fa
+ sound_loop 3, Music_Dungeon1_branch_7e1d5
+ drum_note 12, 4
+ drum_note 12, 4
+ drum_note 12, 4
rest 2
- cymbal1 1
- cymbal1 1
- callchannel Music_Dungeon1_branch_7e1f1
- callchannel Music_Dungeon1_branch_7e1f1
- loopchannel 0, Music_Dungeon1_branch_7e190
+ drum_note 12, 1
+ drum_note 12, 1
+ sound_call Music_Dungeon1_branch_7e1f1
+ sound_call Music_Dungeon1_branch_7e1f1
+ sound_loop 0, Music_Dungeon1_branch_7e190
Music_Dungeon1_branch_7e1f1::
- cymbal2 4
- cymbal1 4
- cymbal2 4
- cymbal1 4
- endchannel
+ drum_note 13, 4
+ drum_note 12, 4
+ drum_note 13, 4
+ drum_note 12, 4
+ sound_ret
Music_Dungeon1_branch_7e1fa::
- cymbal1 1
- cymbal1 1
+ drum_note 12, 1
+ drum_note 12, 1
rest 10
- cymbal3 4
- endchannel
+ drum_note 14, 4
+ sound_ret
Music_Dungeon1_branch_7e202::
- snare7 4
- snare8 4
- snare8 4
- snare9 4
- endchannel
+ drum_note 9, 4
+ drum_note 10, 4
+ drum_note 10, 4
+ drum_note 11, 4
+ sound_ret
diff --git a/audio/music/dungeon2.asm b/audio/music/dungeon2.asm
index 44e9d5bf..2167bfd7 100644
--- a/audio/music/dungeon2.asm
+++ b/audio/music/dungeon2.asm
@@ -1,64 +1,64 @@
Music_Dungeon2_Ch1::
tempo 144
volume 7, 7
- duty 3
- toggleperfectpitch
+ duty_cycle 3
+ toggle_perfect_pitch
vibrato 10, 1, 4
Music_Dungeon2_branch_7e892::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 4
- E_ 4
- E_ 4
- E_ 4
- E_ 4
- A# 4
- A# 4
- A# 4
- A# 4
- E_ 4
- E_ 4
- E_ 4
- E_ 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
octave 5
- C# 4
- C# 4
- C# 4
- C# 4
+ note C#, 4
+ note C#, 4
+ note C#, 4
+ note C#, 4
octave 3
- E_ 4
- E_ 4
- E_ 4
- E_ 4
- A# 4
- A# 4
- A# 4
- A# 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
octave 2
- G_ 2
- A# 4
- G_ 2
+ note G_, 2
+ note A#, 4
+ note G_, 2
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 2
- A# 2
- B_ 2
- G_ 2
+ note G_, 2
+ note A#, 2
+ note B_, 2
+ note G_, 2
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 2
- A_ 4
- F# 2
- loopchannel 2, Music_Dungeon2_branch_7e892
- notetype 12, 1, 15
+ note G_, 2
+ note A_, 4
+ note F#, 2
+ sound_loop 2, Music_Dungeon2_branch_7e892
+ note_type 12, 1, -7
octave 3
- E_ 16
- C_ 16
- D_ 16
+ note E_, 16
+ note C_, 16
+ note D_, 16
octave 2
- A# 16
+ note A#, 16
rest 16
rest 16
rest 16
@@ -67,251 +67,251 @@ Music_Dungeon2_branch_7e892::
rest 16
rest 16
rest 16
- loopchannel 0, Music_Dungeon2_branch_7e892
+ sound_loop 0, Music_Dungeon2_branch_7e892
Music_Dungeon2_Ch2::
vibrato 11, 1, 5
Music_Dungeon2_branch_7e8db::
- duty 3
- notetype 12, 12, 2
+ duty_cycle 3
+ note_type 12, 12, 2
octave 3
- E_ 4
- E_ 4
- E_ 4
- E_ 4
- C_ 4
- C_ 4
- C_ 4
- C_ 4
- E_ 4
- E_ 4
- E_ 4
- E_ 4
- C_ 4
- C_ 4
- C_ 4
- C_ 4
- B_ 4
- B_ 4
- B_ 4
- B_ 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note C_, 4
+ note C_, 4
+ note C_, 4
+ note C_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note C_, 4
+ note C_, 4
+ note C_, 4
+ note C_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
octave 4
- F# 4
- F# 4
- F# 4
- F# 4
- D_ 4
- D_ 4
- D_ 4
- D_ 4
- G_ 4
- G_ 4
- G_ 4
- F# 4
- loopchannel 2, Music_Dungeon2_branch_7e8db
+ note F#, 4
+ note F#, 4
+ note F#, 4
+ note F#, 4
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note G_, 4
+ note G_, 4
+ note G_, 4
+ note F#, 4
+ sound_loop 2, Music_Dungeon2_branch_7e8db
octave 3
- E_ 2
- G_ 2
- E_ 2
- D# 2
- E_ 2
- E_ 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note E_, 2
octave 5
- E_ 2
+ note E_, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- C# 2
- C_ 2
+ note C#, 2
+ note C_, 2
octave 4
- E_ 2
- G_ 2
+ note E_, 2
+ note G_, 2
octave 3
- A# 2
- C# 2
- A# 2
- A_ 2
- A# 2
- G_ 2
+ note A#, 2
+ note C#, 2
+ note A#, 2
+ note A_, 2
+ note A#, 2
+ note G_, 2
octave 5
- G_ 2
+ note G_, 2
rest 2
- F# 2
+ note F#, 2
rest 2
- F_ 2
+ note F_, 2
rest 2
- E_ 2
- D# 2
- D_ 2
- C# 2
+ note E_, 2
+ note D#, 2
+ note D_, 2
+ note C#, 2
rest 16
rest 16
rest 16
rest 16
- notetype 12, 12, 7
- duty 1
+ note_type 12, 12, 7
+ duty_cycle 1
octave 4
- E_ 16
- D_ 16
- C_ 16
- D_ 16
- loopchannel 0, Music_Dungeon2_branch_7e8db
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note D_, 16
+ sound_loop 0, Music_Dungeon2_branch_7e8db
Music_Dungeon2_Ch3::
- notetype 12, 1, 3
+ note_type 12, 1, 3
vibrato 8, 2, 6
Music_Dungeon2_branch_7e940::
- callchannel Music_Dungeon2_branch_7e9d1
- loopchannel 16, Music_Dungeon2_branch_7e940
- E_ 4
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_loop 16, Music_Dungeon2_branch_7e940
+ note E_, 4
rest 4
rest 4
- E_ 4
- C_ 4
+ note E_, 4
+ note C_, 4
rest 4
rest 4
- C_ 4
- D_ 4
+ note C_, 4
+ note D_, 4
rest 4
rest 4
- D_ 4
+ note D_, 4
octave 3
- A# 4
+ note A#, 4
rest 4
rest 4
- A# 4
+ note A#, 4
Music_Dungeon2_branch_7e958::
octave 5
- E_ 2
+ note E_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- A# 2
+ note A#, 2
rest 2
octave 6
- D_ 2
+ note D_, 2
rest 2
- C# 2
+ note C#, 2
rest 2
octave 5
- G# 2
+ note G#, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- A# 2
+ note A#, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- A_ 2
+ note A_, 2
rest 2
- G# 2
+ note G#, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- F# 2
+ note F#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- loopchannel 3, Music_Dungeon2_branch_7e958
+ sound_loop 3, Music_Dungeon2_branch_7e958
octave 4
- E_ 4
- B_ 4
- A# 4
+ note E_, 4
+ note B_, 4
+ note A#, 4
octave 5
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 4
- G# 4
- G_ 4
- B_ 4
- A# 4
- E_ 4
- D# 4
- A_ 4
- G# 4
- E_ 4
- F# 4
- D# 4
+ note G#, 4
+ note G_, 4
+ note B_, 4
+ note A#, 4
+ note E_, 4
+ note D#, 4
+ note A_, 4
+ note G#, 4
+ note E_, 4
+ note F#, 4
+ note D#, 4
octave 3
- E_ 16
- C_ 16
- D_ 16
+ note E_, 16
+ note C_, 16
+ note D_, 16
octave 2
- A# 16
+ note A#, 16
octave 3
- E_ 16
- F_ 16
- G_ 16
+ note E_, 16
+ note F_, 16
+ note G_, 16
octave 3
- B_ 16
+ note B_, 16
rest 16
rest 16
rest 16
rest 16
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- callchannel Music_Dungeon2_branch_7e9d1
- loopchannel 0, Music_Dungeon2_branch_7e940
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_call Music_Dungeon2_branch_7e9d1
+ sound_loop 0, Music_Dungeon2_branch_7e940
octave 2
- G_ 2
- A# 4
- G_ 2
+ note G_, 2
+ note A#, 4
+ note G_, 2
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 2
- A_ 2
- A# 2
- G_ 2
+ note G_, 2
+ note A_, 2
+ note A#, 2
+ note G_, 2
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 2
- A# 2
- G_ 2
+ note G_, 2
+ note A#, 2
+ note G_, 2
rest 2
- endchannel
+ sound_ret
Music_Dungeon2_branch_7e9d1::
octave 4
- E_ 2
+ note E_, 2
rest 4
octave 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
octave 4
- F# 4
- endchannel
+ note F#, 4
+ sound_ret
Music_Dungeon2_Ch4::
- dspeed 12
+ drum_speed 12
Music_Dungeon2_branch_7e9dd::
- cymbal1 4
- cymbal2 4
- cymbal1 4
- snare8 4
- cymbal1 4
- cymbal2 4
- snare9 4
- snare7 4
- loopchannel 0, Music_Dungeon2_branch_7e9dd
+ drum_note 12, 4
+ drum_note 13, 4
+ drum_note 12, 4
+ drum_note 10, 4
+ drum_note 12, 4
+ drum_note 13, 4
+ drum_note 11, 4
+ drum_note 9, 4
+ sound_loop 0, Music_Dungeon2_branch_7e9dd
diff --git a/audio/music/dungeon3.asm b/audio/music/dungeon3.asm
index 767ca626..81b2ead8 100644
--- a/audio/music/dungeon3.asm
+++ b/audio/music/dungeon3.asm
@@ -1,432 +1,432 @@
Music_Dungeon3_Ch1::
tempo 160
volume 7, 7
- duty 3
- toggleperfectpitch
+ duty_cycle 3
+ toggle_perfect_pitch
vibrato 8, 1, 4
Music_Dungeon3_branch_7e9fc::
- notetype 12, 12, 3
+ note_type 12, 12, 3
Music_Dungeon3_branch_7e9fe::
- callchannel Music_Dungeon3_branch_7eab2
- loopchannel 3, Music_Dungeon3_branch_7e9fe
+ sound_call Music_Dungeon3_branch_7eab2
+ sound_loop 3, Music_Dungeon3_branch_7e9fe
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
- D# 2
- E_ 2
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note E_, 2
Music_Dungeon3_branch_7ea11::
- callchannel Music_Dungeon3_branch_7eac1
- loopchannel 4, Music_Dungeon3_branch_7ea11
+ sound_call Music_Dungeon3_branch_7eac1
+ sound_loop 4, Music_Dungeon3_branch_7ea11
Music_Dungeon3_branch_7ea18::
- callchannel Music_Dungeon3_branch_7eab2
- loopchannel 4, Music_Dungeon3_branch_7ea18
+ sound_call Music_Dungeon3_branch_7eab2
+ sound_loop 4, Music_Dungeon3_branch_7ea18
octave 4
- F_ 2
- F_ 2
+ note F_, 2
+ note F_, 2
rest 2
- F_ 2
- E_ 2
- E_ 2
- D# 2
- D# 2
+ note F_, 2
+ note E_, 2
+ note E_, 2
+ note D#, 2
+ note D#, 2
rest 2
- D# 2
- D_ 2
- D_ 2
- callchannel Music_Dungeon3_branch_7eafc
+ note D#, 2
+ note D_, 2
+ note D_, 2
+ sound_call Music_Dungeon3_branch_7eafc
octave 4
- D_ 2
- D_ 2
+ note D_, 2
+ note D_, 2
rest 2
- D_ 2
- D# 2
- D# 2
- E_ 2
- E_ 2
+ note D_, 2
+ note D#, 2
+ note D#, 2
+ note E_, 2
+ note E_, 2
rest 2
- E_ 2
- F_ 2
- F_ 2
+ note E_, 2
+ note F_, 2
+ note F_, 2
Music_Dungeon3_branch_7ea3c::
- callchannel Music_Dungeon3_branch_7eace
- loopchannel 4, Music_Dungeon3_branch_7ea3c
+ sound_call Music_Dungeon3_branch_7eace
+ sound_loop 4, Music_Dungeon3_branch_7ea3c
Music_Dungeon3_branch_7ea43::
- callchannel Music_Dungeon3_branch_7eadd
- loopchannel 3, Music_Dungeon3_branch_7ea43
+ sound_call Music_Dungeon3_branch_7eadd
+ sound_loop 3, Music_Dungeon3_branch_7ea43
octave 3
- C# 2
+ note C#, 2
octave 2
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 3
- C# 2
+ note C#, 2
octave 2
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- F_ 2
- G# 2
- E_ 2
+ note A_, 2
+ note F_, 2
+ note G#, 2
+ note E_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G# 2
- E_ 2
+ note G#, 2
+ note E_, 2
octave 4
- C_ 2
- callchannel Music_Dungeon3_branch_7eaea
- callchannel Music_Dungeon3_branch_7eaea
+ note C_, 2
+ sound_call Music_Dungeon3_branch_7eaea
+ sound_call Music_Dungeon3_branch_7eaea
octave 3
- G# 2
- E_ 2
+ note G#, 2
+ note E_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G# 2
- E_ 2
+ note G#, 2
+ note E_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G# 2
- E_ 2
+ note G#, 2
+ note E_, 2
rest 16
rest 8
- callchannel Music_Dungeon3_branch_7eaf7
- callchannel Music_Dungeon3_branch_7eaf7
- callchannel Music_Dungeon3_branch_7eaf7
- callchannel Music_Dungeon3_branch_7eaf7
- D# 2
+ sound_call Music_Dungeon3_branch_7eaf7
+ sound_call Music_Dungeon3_branch_7eaf7
+ sound_call Music_Dungeon3_branch_7eaf7
+ sound_call Music_Dungeon3_branch_7eaf7
+ note D#, 2
rest 16
rest 16
- loopchannel 0, Music_Dungeon3_branch_7e9fc
+ sound_loop 0, Music_Dungeon3_branch_7e9fc
Music_Dungeon3_branch_7eab2::
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- endchannel
+ note D#, 2
+ sound_ret
Music_Dungeon3_branch_7eac1::
- E_ 2
- G# 2
+ note E_, 2
+ note G#, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- E_ 2
- G# 2
+ note E_, 2
+ note G#, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- E_ 2
- G# 2
- endchannel
+ note E_, 2
+ note G#, 2
+ sound_ret
Music_Dungeon3_branch_7eace::
octave 3
- D# 2
+ note D#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
- D# 2
+ note G_, 2
+ note D#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
- D# 2
+ note G_, 2
+ note D#, 2
octave 2
- B_ 2
- endchannel
+ note B_, 2
+ sound_ret
Music_Dungeon3_branch_7eadd::
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 3
- C# 2
+ note C#, 2
octave 2
- A_ 2
- F_ 2
+ note A_, 2
+ note F_, 2
octave 3
- C# 2
+ note C#, 2
octave 2
- A_ 2
- F_ 2
- endchannel
+ note A_, 2
+ note F_, 2
+ sound_ret
Music_Dungeon3_branch_7eaea::
octave 3
- G# 2
- E_ 2
- G# 2
- E_ 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G# 2
- E_ 2
+ note G#, 2
+ note E_, 2
octave 4
- C_ 2
- endchannel
+ note C_, 2
+ sound_ret
Music_Dungeon3_branch_7eaf7::
- D# 2
- G_ 2
- D# 2
- C# 6
- endchannel
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
+ sound_ret
Music_Dungeon3_branch_7eafc::
tempo 168
octave 1
- A# 1
- B_ 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
tempo 176
octave 1
- A# 1
- B_ 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
tempo 184
octave 1
- A# 1
- B_ 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
tempo 192
octave 1
- A_ 1
- A# 1
- B_ 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
tempo 200
octave 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
- D_ 1
- D# 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
tempo 208
octave 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
- D_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
tempo 216
octave 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
- C# 1
+ note C_, 1
+ note C#, 1
tempo 224
octave 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 2
- C_ 1
+ note C_, 1
tempo 160
- endchannel
+ sound_ret
Music_Dungeon3_Ch2::
vibrato 11, 1, 5
- duty 3
+ duty_cycle 3
Music_Dungeon3_branch_7eb6d::
- notetype 12, 13, 3
+ note_type 12, 13, 3
octave 4
- D# 6
- C# 6
+ note D#, 6
+ note C#, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D# 2
- G_ 2
- D# 2
- C# 6
+ note C#, 2
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D# 2
- G_ 2
- D# 2
- C# 6
+ note C#, 2
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
octave 3
- B_ 2
- A# 2
- B_ 6
+ note B_, 2
+ note A#, 2
+ note B_, 6
octave 4
- C# 8
+ note C#, 8
rest 2
- G# 6
- F# 6
- E_ 2
- F# 2
- G# 2
+ note G#, 6
+ note F#, 6
+ note E_, 2
+ note F#, 2
+ note G#, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G# 2
- F# 6
- E_ 2
- F# 2
- G# 2
+ note G#, 2
+ note F#, 6
+ note E_, 2
+ note F#, 2
+ note G#, 2
octave 5
- C_ 2
- octave 4
- G# 2
- F# 6
- E_ 2
- D# 2
- E_ 6
- F# 6
- E_ 4
- D# 6
- C# 6
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- G_ 2
- D# 2
- C# 6
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- G_ 2
- D# 2
- C# 6
- octave 3
- B_ 2
- A# 2
- B_ 6
- octave 4
- C# 8
+ note C_, 2
+ octave 4
+ note G#, 2
+ note F#, 6
+ note E_, 2
+ note D#, 2
+ note E_, 6
+ note F#, 6
+ note E_, 4
+ note D#, 6
+ note C#, 6
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
+ octave 3
+ note B_, 2
+ note A#, 2
+ note B_, 6
+ octave 4
+ note C#, 8
rest 2
- G# 2
- G# 2
+ note G#, 2
+ note G#, 2
rest 2
- G# 2
- A_ 2
- A_ 2
- A# 2
- A# 2
+ note G#, 2
+ note A_, 2
+ note A_, 2
+ note A#, 2
+ note A#, 2
rest 2
- A# 2
- B_ 2
- B_ 2
+ note A#, 2
+ note B_, 2
+ note B_, 2
rest 8
rest 8
rest 8
@@ -436,179 +436,179 @@ Music_Dungeon3_branch_7eb6d::
rest 8
rest 8
octave 4
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
rest 2
- B_ 2
- A# 2
- A# 2
- A_ 2
- A_ 2
+ note B_, 2
+ note A#, 2
+ note A#, 2
+ note A_, 2
+ note A_, 2
rest 2
- A_ 2
- G# 2
- G# 2
- C# 8
+ note A_, 2
+ note G#, 2
+ note G#, 2
+ note C#, 8
rest 2
octave 3
- B_ 6
- A# 2
- B_ 2
+ note B_, 6
+ note A#, 2
+ note B_, 2
octave 4
- D# 2
- G_ 2
- D# 2
- C# 6
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D# 2
- G_ 2
- D# 2
- C# 6
+ note C#, 2
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D# 6
- G_ 6
+ note C#, 2
+ note D#, 6
+ note G_, 6
octave 3
- G_ 8
+ note G_, 8
rest 2
- F_ 6
- E_ 2
- F_ 2
- A_ 2
+ note F_, 6
+ note E_, 2
+ note F_, 2
+ note A_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- G_ 6
- F_ 2
- G_ 2
- A_ 2
+ note A_, 2
+ note G_, 6
+ note F_, 2
+ note G_, 2
+ note A_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
- G_ 6
- A_ 6
+ note A_, 2
+ note G_, 6
+ note A_, 6
octave 4
- C# 6
- G_ 8
+ note C#, 6
+ note G_, 8
rest 2
- F_ 6
- E_ 2
- F_ 2
- A_ 2
+ note F_, 6
+ note E_, 2
+ note F_, 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
- G_ 6
- A_ 2
+ note A_, 2
+ note G_, 6
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
- G_ 6
- A_ 6
+ note A_, 2
+ note G_, 6
+ note A_, 6
octave 5
- C# 6
+ note C#, 6
octave 4
- F# 8
+ note F#, 8
rest 2
- E_ 6
- D# 2
- E_ 2
- G# 2
+ note E_, 6
+ note D#, 2
+ note E_, 2
+ note G#, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G# 2
- F# 6
- E_ 2
- F# 2
- G# 2
+ note G#, 2
+ note F#, 6
+ note E_, 2
+ note F#, 2
+ note G#, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G# 2
- F# 6
- G# 6
+ note G#, 2
+ note F#, 6
+ note G#, 6
octave 5
- C_ 6
- octave 3
- D# 2
- G_ 2
- D# 2
- C# 6
- D# 2
- G_ 2
- D# 2
- C# 6
+ note C_, 6
+ octave 3
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
+ note D#, 2
+ note G_, 2
+ note D#, 2
+ note C#, 6
octave 2
- E_ 2
- G# 2
- octave 3
- C_ 2
- E_ 2
- G# 2
- octave 4
- C_ 2
- E_ 2
- G# 2
- C_ 2
- E_ 2
- G# 2
- C_ 2
- E_ 2
- G# 2
- C_ 2
- E_ 2
- G# 2
- C_ 2
- E_ 2
- G# 2
- C_ 2
- E_ 2
- G# 2
- C_ 2
- D# 2
+ note E_, 2
+ note G#, 2
+ octave 3
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ octave 4
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ note C_, 2
+ note E_, 2
+ note G#, 2
+ note C_, 2
+ note D#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
+ note D#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- G_ 2
+ note D#, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D# 2
- loopchannel 0, Music_Dungeon3_branch_7eb6d
+ note D#, 2
+ sound_loop 0, Music_Dungeon3_branch_7eb6d
Music_Dungeon3_Ch3::
- notetype 12, 1, 2
+ note_type 12, 1, 2
rest 16
rest 16
rest 16
@@ -621,71 +621,71 @@ Music_Dungeon3_Ch3::
rest 16
rest 16
rest 12
- notetype 6, 1, 0
+ note_type 6, 1, 0
octave 3
- B_ 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
rest 2
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
rest 16
rest 16
rest 10
octave 5
- E_ 8
+ note E_, 8
octave 4
- B_ 8
+ note B_, 8
octave 5
- D# 8
+ note D#, 8
octave 4
- A# 8
+ note A#, 8
octave 5
- D_ 8
+ note D_, 8
octave 4
- A_ 8
+ note A_, 8
octave 5
- C# 8
+ note C#, 8
octave 4
- G# 8
+ note G#, 8
octave 5
- C_ 8
+ note C_, 8
octave 4
- G_ 8
- B_ 8
- F# 8
- A# 8
- F_ 8
- A_ 8
- E_ 8
+ note G_, 8
+ note B_, 8
+ note F#, 8
+ note A#, 8
+ note F_, 8
+ note A_, 8
+ note E_, 8
rest 16
rest 16
rest 8
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
rest 2
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
octave 3
- B_ 1
+ note B_, 1
rest 10
rest 16
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 16
rest 16
rest 16
@@ -707,11 +707,11 @@ Music_Dungeon3_Ch3::
rest 16
rest 16
rest 10
- loopchannel 0, Music_Dungeon3_Ch3
+ sound_loop 0, Music_Dungeon3_Ch3
Music_Dungeon3_Ch4::
- dspeed 12
+ drum_speed 12
rest 16
rest 16
rest 16
@@ -753,4 +753,4 @@ Music_Dungeon3_Ch4::
rest 16
rest 16
rest 10
- endchannel
+ sound_ret
diff --git a/audio/music/finalbattle.asm b/audio/music/finalbattle.asm
index 9a13f00f..6dec6bbb 100644
--- a/audio/music/finalbattle.asm
+++ b/audio/music/finalbattle.asm
@@ -1,1344 +1,1344 @@
Music_FinalBattle_Ch1::
tempo 112
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 2
+ toggle_perfect_pitch
+ note_type 12, 11, 2
octave 3
- F# 1
- F_ 1
- F# 1
- G_ 1
- F# 1
- G_ 1
- G# 1
- G_ 1
- notetype 12, 10, 2
- G# 1
- A_ 1
- G# 1
- A_ 1
- A# 1
- A_ 1
- A# 1
- B_ 1
- notetype 12, 9, 2
- A# 1
- B_ 1
- octave 4
- C_ 1
+ note F#, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note G_, 1
+ note_type 12, 10, 2
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
+ note_type 12, 9, 2
+ note A#, 1
+ note B_, 1
+ octave 4
+ note C_, 1
octave 3
- B_ 1
- octave 4
- C_ 1
- C# 1
- C_ 1
- C# 1
- notetype 12, 8, 2
- D_ 1
- C# 1
- D_ 1
- D# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- notetype 12, 12, 1
+ note B_, 1
+ octave 4
+ note C_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note_type 12, 8, 2
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note_type 12, 12, 1
octave 3
- E_ 1
- E_ 7
- F_ 1
- F_ 7
- G_ 1
- G_ 7
- F_ 1
- F_ 7
- E_ 1
- E_ 7
- F_ 1
- F_ 7
- G_ 1
- G_ 7
- G# 1
- G# 3
- D# 4
- notetype 12, 12, 1
- E_ 1
- E_ 3
- notetype 12, 11, 3
- E_ 4
- notetype 12, 12, 1
- F_ 1
- F_ 3
- notetype 12, 11, 3
- F_ 4
- notetype 12, 12, 1
- G_ 1
- G_ 3
- notetype 12, 11, 3
- G_ 4
- notetype 12, 12, 1
- F_ 1
- F_ 3
- notetype 12, 11, 3
- F_ 4
- notetype 12, 12, 1
- E_ 1
- E_ 3
- notetype 12, 11, 3
- E_ 4
- notetype 12, 12, 1
- F_ 1
- F_ 3
- notetype 12, 11, 3
- F_ 4
- notetype 12, 12, 1
- G_ 1
- G_ 3
- notetype 12, 11, 3
- G_ 4
- notetype 12, 12, 1
- G# 1
- G# 3
- notetype 12, 11, 7
- D# 4
+ note E_, 1
+ note E_, 7
+ note F_, 1
+ note F_, 7
+ note G_, 1
+ note G_, 7
+ note F_, 1
+ note F_, 7
+ note E_, 1
+ note E_, 7
+ note F_, 1
+ note F_, 7
+ note G_, 1
+ note G_, 7
+ note G#, 1
+ note G#, 3
+ note D#, 4
+ note_type 12, 12, 1
+ note E_, 1
+ note E_, 3
+ note_type 12, 11, 3
+ note E_, 4
+ note_type 12, 12, 1
+ note F_, 1
+ note F_, 3
+ note_type 12, 11, 3
+ note F_, 4
+ note_type 12, 12, 1
+ note G_, 1
+ note G_, 3
+ note_type 12, 11, 3
+ note G_, 4
+ note_type 12, 12, 1
+ note F_, 1
+ note F_, 3
+ note_type 12, 11, 3
+ note F_, 4
+ note_type 12, 12, 1
+ note E_, 1
+ note E_, 3
+ note_type 12, 11, 3
+ note E_, 4
+ note_type 12, 12, 1
+ note F_, 1
+ note F_, 3
+ note_type 12, 11, 3
+ note F_, 4
+ note_type 12, 12, 1
+ note G_, 1
+ note G_, 3
+ note_type 12, 11, 3
+ note G_, 4
+ note_type 12, 12, 1
+ note G#, 1
+ note G#, 3
+ note_type 12, 11, 7
+ note D#, 4
Music_FinalBattle_branch_23429::
- notetype 12, 11, 7
+ note_type 12, 11, 7
octave 3
- E_ 4
- B_ 4
- D# 4
- A# 4
- D_ 4
- A_ 4
+ note E_, 4
+ note B_, 4
+ note D#, 4
+ note A#, 4
+ note D_, 4
+ note A_, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- F# 4
- F_ 4
- F# 4
- notetype 12, 11, 1
- F# 2
- F_ 1
- F# 1
- A_ 1
- F# 2
- F# 1
- notetype 12, 11, 7
+ note F#, 4
+ note F_, 4
+ note F#, 4
+ note_type 12, 11, 1
+ note F#, 2
+ note F_, 1
+ note F#, 1
+ note A_, 1
+ note F#, 2
+ note F#, 1
+ note_type 12, 11, 7
octave 2
- B_ 6
- notetype 12, 10, 0
+ note B_, 6
+ note_type 12, 10, 0
octave 3
- D_ 6
- notetype 12, 11, 7
- F# 4
- E_ 4
- B_ 4
- D# 4
- A# 4
- D_ 4
- A_ 4
+ note D_, 6
+ note_type 12, 11, 7
+ note F#, 4
+ note E_, 4
+ note B_, 4
+ note D#, 4
+ note A#, 4
+ note D_, 4
+ note A_, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- F# 4
- F_ 4
- F# 12
- A# 4
- notetype 12, 5, 14
- B_ 12
- notetype 12, 11, 2
- E_ 3
- E_ 3
- E_ 2
- E_ 1
- F# 1
- E_ 1
- B_ 1
- F# 1
- E_ 1
- F# 1
- B_ 1
- F# 1
- E_ 1
- F# 1
- B_ 1
- F# 1
- E_ 1
- F# 1
- B_ 1
- F# 1
- notetype 12, 12, 2
- E_ 1
- F# 1
- B_ 1
- F# 1
- notetype 12, 13, 2
- E_ 1
- F# 1
- B_ 1
- notetype 12, 12, 1
- E_ 1
- E_ 7
- E_ 1
- E_ 7
- E_ 1
- E_ 7
- E_ 1
- E_ 7
- E_ 1
- E_ 3
- notetype 12, 11, 5
- D_ 4
- notetype 12, 12, 1
- E_ 1
- E_ 3
- notetype 12, 11, 5
- F_ 4
- notetype 12, 12, 1
- E_ 1
- E_ 3
- notetype 12, 11, 5
- D_ 4
- notetype 12, 12, 1
- E_ 1
- notetype 12, 11, 7
- E_ 7
- notetype 12, 12, 1
- E_ 2
- B_ 1
- A_ 1
- E_ 2
- B_ 1
- A_ 1
- E_ 2
- B_ 1
- A_ 1
- E_ 2
- B_ 1
- A_ 3
- E_ 1
- D_ 3
- E_ 1
- D_ 3
- E_ 1
- D_ 3
- E_ 1
- D_ 1
- F_ 2
- octave 4
- C_ 1
+ note F#, 4
+ note F_, 4
+ note F#, 12
+ note A#, 4
+ note_type 12, 5, -6
+ note B_, 12
+ note_type 12, 11, 2
+ note E_, 3
+ note E_, 3
+ note E_, 2
+ note E_, 1
+ note F#, 1
+ note E_, 1
+ note B_, 1
+ note F#, 1
+ note E_, 1
+ note F#, 1
+ note B_, 1
+ note F#, 1
+ note E_, 1
+ note F#, 1
+ note B_, 1
+ note F#, 1
+ note E_, 1
+ note F#, 1
+ note B_, 1
+ note F#, 1
+ note_type 12, 12, 2
+ note E_, 1
+ note F#, 1
+ note B_, 1
+ note F#, 1
+ note_type 12, 13, 2
+ note E_, 1
+ note F#, 1
+ note B_, 1
+ note_type 12, 12, 1
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 3
+ note_type 12, 11, 5
+ note D_, 4
+ note_type 12, 12, 1
+ note E_, 1
+ note E_, 3
+ note_type 12, 11, 5
+ note F_, 4
+ note_type 12, 12, 1
+ note E_, 1
+ note E_, 3
+ note_type 12, 11, 5
+ note D_, 4
+ note_type 12, 12, 1
+ note E_, 1
+ note_type 12, 11, 7
+ note E_, 7
+ note_type 12, 12, 1
+ note E_, 2
+ note B_, 1
+ note A_, 1
+ note E_, 2
+ note B_, 1
+ note A_, 1
+ note E_, 2
+ note B_, 1
+ note A_, 1
+ note E_, 2
+ note B_, 1
+ note A_, 3
+ note E_, 1
+ note D_, 3
+ note E_, 1
+ note D_, 3
+ note E_, 1
+ note D_, 3
+ note E_, 1
+ note D_, 1
+ note F_, 2
+ octave 4
+ note C_, 1
octave 3
- B_ 1
- F_ 2
+ note B_, 1
+ note F_, 2
octave 4
- C_ 1
+ note C_, 1
octave 3
- B_ 1
- F_ 2
+ note B_, 1
+ note F_, 2
octave 4
- C_ 1
+ note C_, 1
octave 3
- B_ 1
- F_ 2
+ note B_, 1
+ note F_, 2
octave 4
- C_ 1
+ note C_, 1
octave 3
- B_ 3
- F_ 1
- E_ 3
- F_ 1
- E_ 3
- F_ 1
- E_ 3
- F_ 1
- E_ 1
- F# 2
- octave 4
- C# 1
- C_ 1
+ note B_, 3
+ note F_, 1
+ note E_, 3
+ note F_, 1
+ note E_, 3
+ note F_, 1
+ note E_, 3
+ note F_, 1
+ note E_, 1
+ note F#, 2
+ octave 4
+ note C#, 1
+ note C_, 1
octave 3
- F# 2
+ note F#, 2
octave 4
- C# 1
- C_ 1
+ note C#, 1
+ note C_, 1
octave 3
- F# 2
+ note F#, 2
octave 4
- C# 1
- C_ 1
+ note C#, 1
+ note C_, 1
octave 3
- F# 2
+ note F#, 2
octave 4
- C# 1
- C_ 3
+ note C#, 1
+ note C_, 3
octave 3
- F# 1
- F_ 3
- F# 1
- F_ 3
- F# 1
- F_ 3
- F# 1
- F_ 3
- F# 1
- F_ 3
- F# 1
- F_ 3
- F# 1
- F_ 3
- notetype 12, 11, 7
- octave 4
- C_ 2
- notetype 12, 11, 0
- C# 8
- notetype 12, 11, 7
- C# 8
- notetype 12, 10, 0
+ note F#, 1
+ note F_, 3
+ note F#, 1
+ note F_, 3
+ note F#, 1
+ note F_, 3
+ note F#, 1
+ note F_, 3
+ note F#, 1
+ note F_, 3
+ note F#, 1
+ note F_, 3
+ note F#, 1
+ note F_, 3
+ note_type 12, 11, 7
+ octave 4
+ note C_, 2
+ note_type 12, 11, 0
+ note C#, 8
+ note_type 12, 11, 7
+ note C#, 8
+ note_type 12, 10, 0
octave 3
- F# 8
- F# 8
- notetype 12, 11, 0
+ note F#, 8
+ note F#, 8
+ note_type 12, 11, 0
octave 3
- A_ 8
- notetype 12, 11, 7
- A_ 8
- G_ 4
- B_ 12
- notetype 12, 11, 0
- A_ 8
- notetype 12, 11, 7
- A_ 8
- notetype 12, 11, 0
- E_ 8
- notetype 12, 11, 7
- E_ 8
- notetype 12, 11, 0
- A# 8
- notetype 12, 11, 7
- A# 8
- octave 4
- F_ 8
+ note A_, 8
+ note_type 12, 11, 7
+ note A_, 8
+ note G_, 4
+ note B_, 12
+ note_type 12, 11, 0
+ note A_, 8
+ note_type 12, 11, 7
+ note A_, 8
+ note_type 12, 11, 0
+ note E_, 8
+ note_type 12, 11, 7
+ note E_, 8
+ note_type 12, 11, 0
+ note A#, 8
+ note_type 12, 11, 7
+ note A#, 8
+ octave 4
+ note F_, 8
octave 3
- A# 8
+ note A#, 8
octave 4
- C# 4
- E_ 12
+ note C#, 4
+ note E_, 12
octave 3
- A_ 4
+ note A_, 4
octave 4
- C# 12
- notetype 12, 4, 0
- callchannel Music_FinalBattle_branch_23710
- callchannel Music_FinalBattle_branch_23710
- notetype 12, 11, 7
+ note C#, 12
+ note_type 12, 4, 0
+ sound_call Music_FinalBattle_branch_23710
+ sound_call Music_FinalBattle_branch_23710
+ note_type 12, 11, 7
octave 3
- E_ 4
- B_ 4
- D# 4
- A# 4
- D_ 4
- A_ 4
+ note E_, 4
+ note B_, 4
+ note D#, 4
+ note A#, 4
+ note D_, 4
+ note A_, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- F# 4
- F_ 4
- F# 12
- notetype 12, 11, 0
- A_ 8
- G_ 8
- notetype 12, 11, 7
- E_ 4
- B_ 4
- D# 4
- A# 4
- D_ 4
- A_ 4
+ note F#, 4
+ note F_, 4
+ note F#, 12
+ note_type 12, 11, 0
+ note A_, 8
+ note G_, 8
+ note_type 12, 11, 7
+ note E_, 4
+ note B_, 4
+ note D#, 4
+ note A#, 4
+ note D_, 4
+ note A_, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- F# 4
- F_ 4
- F# 12
- notetype 12, 11, 0
- A_ 8
- notetype 12, 11, 7
- octave 4
- C_ 8
- notetype 12, 11, 0
+ note F#, 4
+ note F_, 4
+ note F#, 12
+ note_type 12, 11, 0
+ note A_, 8
+ note_type 12, 11, 7
+ octave 4
+ note C_, 8
+ note_type 12, 11, 0
octave 3
- B_ 8
- notetype 12, 11, 7
- B_ 8
- notetype 12, 11, 0
- octave 4
- E_ 8
- notetype 12, 11, 7
- E_ 8
- loopchannel 0, Music_FinalBattle_branch_23429
+ note B_, 8
+ note_type 12, 11, 7
+ note B_, 8
+ note_type 12, 11, 0
+ octave 4
+ note E_, 8
+ note_type 12, 11, 7
+ note E_, 8
+ sound_loop 0, Music_FinalBattle_branch_23429
Music_FinalBattle_Ch2::
- duty 3
+ duty_cycle 3
vibrato 8, 2, 5
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 5
- C_ 1
+ note C_, 1
octave 4
- G# 1
- B_ 1
- F# 1
- A_ 1
- E_ 1
- G_ 1
+ note G#, 1
+ note B_, 1
+ note F#, 1
+ note A_, 1
+ note E_, 1
+ note G_, 1
octave 5
- C_ 1
+ note C_, 1
octave 4
- F_ 1
- C# 1
- E_ 1
- C_ 1
- D# 1
+ note F_, 1
+ note C#, 1
+ note E_, 1
+ note C_, 1
+ note D#, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- D_ 1
+ note D_, 1
octave 5
- C_ 1
+ note C_, 1
octave 4
- C_ 1
+ note C_, 1
octave 3
- G# 1
- B_ 1
- F# 1
- A# 1
- F_ 1
- A_ 1
- octave 5
- C_ 1
+ note G#, 1
+ note B_, 1
+ note F#, 1
+ note A#, 1
+ note F_, 1
+ note A_, 1
+ octave 5
+ note C_, 1
octave 3
- G# 1
- D# 1
- G_ 1
- D_ 1
- F_ 1
- C# 1
- E_ 1
- octave 5
- C_ 1
- notetype 12, 12, 1
- octave 4
- E_ 1
- E_ 7
- E_ 1
- E_ 7
- E_ 1
- E_ 7
- E_ 1
- E_ 7
- E_ 1
- E_ 3
- notetype 12, 12, 2
- octave 5
- E_ 4
- notetype 12, 12, 1
- octave 4
- E_ 1
- E_ 3
- notetype 12, 12, 2
- octave 5
- E_ 4
- notetype 12, 12, 1
- octave 4
- E_ 1
- E_ 3
- notetype 12, 12, 2
- octave 5
- E_ 4
- notetype 12, 12, 1
- octave 4
- E_ 1
- E_ 3
- notetype 12, 12, 2
- D# 4
- callchannel Music_FinalBattle_branch_23704
- callchannel Music_FinalBattle_branch_23704
- callchannel Music_FinalBattle_branch_23704
- callchannel Music_FinalBattle_branch_23704
- callchannel Music_FinalBattle_branch_23704
- callchannel Music_FinalBattle_branch_23704
- callchannel Music_FinalBattle_branch_23704
- notetype 12, 12, 1
- octave 4
- E_ 1
- E_ 3
- notetype 12, 4, 10
+ note G#, 1
+ note D#, 1
+ note G_, 1
+ note D_, 1
+ note F_, 1
+ note C#, 1
+ note E_, 1
+ octave 5
+ note C_, 1
+ note_type 12, 12, 1
+ octave 4
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 7
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 2
+ octave 5
+ note E_, 4
+ note_type 12, 12, 1
+ octave 4
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 2
+ octave 5
+ note E_, 4
+ note_type 12, 12, 1
+ octave 4
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 2
+ octave 5
+ note E_, 4
+ note_type 12, 12, 1
+ octave 4
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 2
+ note D#, 4
+ sound_call Music_FinalBattle_branch_23704
+ sound_call Music_FinalBattle_branch_23704
+ sound_call Music_FinalBattle_branch_23704
+ sound_call Music_FinalBattle_branch_23704
+ sound_call Music_FinalBattle_branch_23704
+ sound_call Music_FinalBattle_branch_23704
+ sound_call Music_FinalBattle_branch_23704
+ note_type 12, 12, 1
+ octave 4
+ note E_, 1
+ note E_, 3
+ note_type 12, 4, -2
octave 3
- G# 4
+ note G#, 4
Music_FinalBattle_branch_235e6::
- notetype 12, 13, 7
+ note_type 12, 13, 7
octave 4
- E_ 8
- D# 8
- D_ 8
+ note E_, 8
+ note D#, 8
+ note D_, 8
octave 3
- B_ 8
- notetype 12, 13, 7
- A# 4
- B_ 12
- notetype 12, 11, 1
- F_ 2
- F# 3
- A_ 1
- B_ 1
- A_ 1
- octave 4
- C_ 1
+ note B_, 8
+ note_type 12, 13, 7
+ note A#, 4
+ note B_, 12
+ note_type 12, 11, 1
+ note F_, 2
+ note F#, 3
+ note A_, 1
+ note B_, 1
+ note A_, 1
+ octave 4
+ note C_, 1
octave 3
- B_ 2
- A_ 1
- B_ 1
- B_ 1
- A_ 1
- A# 1
- notetype 12, 13, 7
- octave 4
- E_ 8
- D# 8
- D_ 8
+ note B_, 2
+ note A_, 1
+ note B_, 1
+ note B_, 1
+ note A_, 1
+ note A#, 1
+ note_type 12, 13, 7
+ octave 4
+ note E_, 8
+ note D#, 8
+ note D_, 8
octave 3
- B_ 8
- notetype 12, 13, 7
- A# 4
- B_ 12
- octave 4
- D# 4
- E_ 12
- notetype 12, 10, 0
+ note B_, 8
+ note_type 12, 13, 7
+ note A#, 4
+ note B_, 12
+ octave 4
+ note D#, 4
+ note E_, 12
+ note_type 12, 10, 0
octave 3
- B_ 8
- octave 4
- D_ 8
- F_ 8
- D_ 8
- notetype 12, 13, 1
- E_ 1
- E_ 3
- notetype 12, 12, 4
+ note B_, 8
+ octave 4
+ note D_, 8
+ note F_, 8
+ note D_, 8
+ note_type 12, 13, 1
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 4
octave 3
- D_ 4
- notetype 12, 13, 1
+ note D_, 4
+ note_type 12, 13, 1
octave 4
- E_ 1
- E_ 3
- notetype 12, 12, 4
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 4
octave 3
- F_ 4
- notetype 12, 13, 1
+ note F_, 4
+ note_type 12, 13, 1
octave 4
- E_ 1
- E_ 3
- notetype 12, 12, 4
+ note E_, 1
+ note E_, 3
+ note_type 12, 12, 4
octave 3
- D_ 4
- notetype 12, 13, 1
+ note D_, 4
+ note_type 12, 13, 1
octave 4
- E_ 1
- E_ 1
- notetype 12, 12, 4
+ note E_, 1
+ note E_, 1
+ note_type 12, 12, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- D_ 2
- notetype 12, 12, 2
- octave 4
- E_ 1
- E_ 1
- D_ 1
- E_ 1
- F_ 1
- E_ 1
- D_ 1
- F_ 1
- E_ 1
- E_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- F# 1
- E_ 1
- E_ 1
- F_ 1
- E_ 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- E_ 1
- notetype 12, 12, 4
+ note D_, 2
+ note_type 12, 12, 2
+ octave 4
+ note E_, 1
+ note E_, 1
+ note D_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D_, 1
+ note F_, 1
+ note E_, 1
+ note E_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F#, 1
+ note E_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note E_, 1
+ note_type 12, 12, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- D_ 2
- notetype 12, 13, 7
+ note D_, 2
+ note_type 12, 13, 7
octave 4
- E_ 4
- F_ 2
- F# 12
- notetype 12, 12, 2
+ note E_, 4
+ note F_, 2
+ note F#, 12
+ note_type 12, 12, 2
octave 3
- B_ 2
- B_ 4
- B_ 2
- B_ 4
- B_ 2
- notetype 12, 13, 7
- octave 4
- F_ 4
- F# 2
- G_ 12
- notetype 12, 12, 2
- C_ 2
- C_ 4
- C_ 2
- C_ 4
- C_ 2
- notetype 12, 13, 7
- F# 4
- G_ 2
- G# 12
- notetype 12, 8, 2
- C# 2
- C# 4
- notetype 12, 10, 2
- C# 2
- C# 4
- C# 4
- notetype 12, 13, 2
- C# 2
- C# 4
- notetype 12, 15, 2
- C# 2
- C# 4
- notetype 12, 12, 4
- E_ 1
- F_ 1
- notetype 12, 12, 0
- F# 12
- notetype 12, 12, 7
- F# 4
- notetype 12, 1, 15
+ note B_, 2
+ note B_, 4
+ note B_, 2
+ note B_, 4
+ note B_, 2
+ note_type 12, 13, 7
+ octave 4
+ note F_, 4
+ note F#, 2
+ note G_, 12
+ note_type 12, 12, 2
+ note C_, 2
+ note C_, 4
+ note C_, 2
+ note C_, 4
+ note C_, 2
+ note_type 12, 13, 7
+ note F#, 4
+ note G_, 2
+ note G#, 12
+ note_type 12, 8, 2
+ note C#, 2
+ note C#, 4
+ note_type 12, 10, 2
+ note C#, 2
+ note C#, 4
+ note C#, 4
+ note_type 12, 13, 2
+ note C#, 2
+ note C#, 4
+ note_type 12, 15, 2
+ note C#, 2
+ note C#, 4
+ note_type 12, 12, 4
+ note E_, 1
+ note F_, 1
+ note_type 12, 12, 0
+ note F#, 12
+ note_type 12, 12, 7
+ note F#, 4
+ note_type 12, 1, -7
octave 3
- F# 8
- notetype 12, 9, 0
- F# 8
- notetype 12, 12, 7
- octave 4
- C# 4
- notetype 12, 12, 0
- D_ 12
- D_ 8
- notetype 12, 12, 7
- D_ 8
- notetype 12, 12, 0
- E_ 8
- notetype 12, 12, 7
- E_ 8
- notetype 12, 12, 0
+ note F#, 8
+ note_type 12, 9, 0
+ note F#, 8
+ note_type 12, 12, 7
+ octave 4
+ note C#, 4
+ note_type 12, 12, 0
+ note D_, 12
+ note D_, 8
+ note_type 12, 12, 7
+ note D_, 8
+ note_type 12, 12, 0
+ note E_, 8
+ note_type 12, 12, 7
+ note E_, 8
+ note_type 12, 12, 0
octave 3
- A_ 8
- notetype 12, 12, 7
- A_ 8
- notetype 12, 12, 0
- octave 4
- F_ 8
- notetype 12, 12, 7
- F_ 8
- octave 5
- C_ 8
- octave 4
- A# 8
- notetype 12, 12, 0
- A_ 16
- A_ 8
- notetype 12, 12, 7
- A_ 8
- notetype 12, 12, 5
- callchannel Music_FinalBattle_branch_23710
- notetype 12, 11, 1
- callchannel Music_FinalBattle_branch_23710
- notetype 12, 13, 7
- octave 4
- E_ 8
- D# 8
- D_ 8
+ note A_, 8
+ note_type 12, 12, 7
+ note A_, 8
+ note_type 12, 12, 0
+ octave 4
+ note F_, 8
+ note_type 12, 12, 7
+ note F_, 8
+ octave 5
+ note C_, 8
+ octave 4
+ note A#, 8
+ note_type 12, 12, 0
+ note A_, 16
+ note A_, 8
+ note_type 12, 12, 7
+ note A_, 8
+ note_type 12, 12, 5
+ sound_call Music_FinalBattle_branch_23710
+ note_type 12, 11, 1
+ sound_call Music_FinalBattle_branch_23710
+ note_type 12, 13, 7
+ octave 4
+ note E_, 8
+ note D#, 8
+ note D_, 8
octave 3
- B_ 8
- A# 4
- B_ 12
- notetype 12, 12, 7
- octave 4
- D_ 8
- notetype 12, 4, 12
- C_ 8
- notetype 12, 13, 7
- E_ 8
- D# 8
- D_ 8
+ note B_, 8
+ note A#, 4
+ note B_, 12
+ note_type 12, 12, 7
+ octave 4
+ note D_, 8
+ note_type 12, 4, -4
+ note C_, 8
+ note_type 12, 13, 7
+ note E_, 8
+ note D#, 8
+ note D_, 8
octave 3
- B_ 8
- A# 4
- B_ 12
- notetype 12, 5, 13
- octave 4
- D_ 8
- notetype 12, 12, 0
- F_ 8
- notetype 12, 12, 0
- E_ 8
- notetype 12, 12, 7
- E_ 8
- A# 4
- B_ 12
- loopchannel 0, Music_FinalBattle_branch_235e6
+ note B_, 8
+ note A#, 4
+ note B_, 12
+ note_type 12, 5, -5
+ octave 4
+ note D_, 8
+ note_type 12, 12, 0
+ note F_, 8
+ note_type 12, 12, 0
+ note E_, 8
+ note_type 12, 12, 7
+ note E_, 8
+ note A#, 4
+ note B_, 12
+ sound_loop 0, Music_FinalBattle_branch_235e6
Music_FinalBattle_branch_23704::
octave 4
- E_ 1
- E_ 1
- G_ 1
+ note E_, 1
+ note E_, 1
+ note G_, 1
octave 5
- C_ 1
- E_ 1
- C_ 1
+ note C_, 1
+ note E_, 1
+ note C_, 1
octave 4
- G_ 1
- F_ 1
- endchannel
+ note G_, 1
+ note F_, 1
+ sound_ret
Music_FinalBattle_branch_23710::
octave 4
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- octave 4
- C# 2
- D_ 2
- C# 2
- F# 2
- D_ 2
- endchannel
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D_, 2
+ note C#, 2
+ note F#, 2
+ note D_, 2
+ sound_ret
Music_FinalBattle_Ch3::
- notetype 12, 1, 1
+ note_type 12, 1, 1
octave 4
- E_ 4
+ note E_, 4
octave 5
- E_ 4
+ note E_, 4
octave 4
- F_ 4
+ note F_, 4
octave 5
- D# 4
+ note D#, 4
octave 4
- G_ 4
+ note G_, 4
octave 5
- D_ 4
+ note D_, 4
octave 4
- G# 4
- B_ 4
- E_ 1
- E_ 1
+ note G#, 4
+ note B_, 4
+ note E_, 1
+ note E_, 1
rest 6
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 6
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 6
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
- D# 4
- E_ 1
- E_ 1
+ note D#, 4
+ note E_, 1
+ note E_, 1
rest 2
- B_ 4
- E_ 1
- E_ 1
+ note B_, 4
+ note E_, 1
+ note E_, 1
rest 2
octave 5
- C_ 4
+ note C_, 4
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
octave 5
- D_ 4
+ note D_, 4
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
octave 5
- C_ 4
+ note C_, 4
octave 4
- A# 2
- E_ 1
- E_ 1
+ note A#, 2
+ note E_, 1
+ note E_, 1
rest 2
- B_ 4
- E_ 1
- E_ 1
+ note B_, 4
+ note E_, 1
+ note E_, 1
rest 2
octave 5
- C_ 4
+ note C_, 4
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
octave 5
- D_ 4
+ note D_, 4
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
octave 5
- C_ 4
- D_ 2
+ note C_, 4
+ note D_, 2
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
- B_ 4
- E_ 1
- E_ 1
+ note B_, 4
+ note E_, 1
+ note E_, 1
rest 2
octave 5
- C_ 4
+ note C_, 4
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
octave 5
- D_ 4
+ note D_, 4
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
- E_ 1
- D# 1
- E_ 1
- G_ 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note G_, 1
Music_FinalBattle_branch_2377d::
octave 4
- E_ 1
+ note E_, 1
octave 3
- E_ 1
+ note E_, 1
rest 2
octave 4
- F# 4
- D# 1
+ note F#, 4
+ note D#, 1
octave 3
- D# 1
+ note D#, 1
rest 2
octave 4
- F_ 4
- D_ 1
+ note F_, 4
+ note D_, 1
octave 3
- D_ 1
+ note D_, 1
rest 2
octave 4
- E_ 4
- F# 1
+ note E_, 4
+ note F#, 1
octave 3
- F# 1
+ note F#, 1
rest 2
octave 4
- F# 4
- F_ 4
+ note F#, 4
+ note F_, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
- E_ 1
+ note F#, 2
+ note E_, 1
octave 3
- E_ 1
+ note E_, 1
rest 2
octave 4
- F# 4
- D# 1
+ note F#, 4
+ note D#, 1
octave 3
- D# 1
+ note D#, 1
rest 2
octave 4
- F_ 4
- D_ 1
+ note F_, 4
+ note D_, 1
octave 3
- D_ 1
+ note D_, 1
rest 2
octave 4
- E_ 4
- F# 1
+ note E_, 4
+ note F#, 1
octave 3
- F# 1
+ note F#, 1
rest 2
octave 4
- F# 4
- F_ 4
+ note F#, 4
+ note F_, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
- octave 4
- F# 2
- E_ 1
- D# 1
- E_ 1
- F# 1
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 1
- E_ 1
+ note B_, 2
+ octave 4
+ note F#, 2
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F#, 1
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 1
+ note E_, 1
rest 2
- D_ 4
- E_ 1
- E_ 1
+ note D_, 4
+ note E_, 1
+ note E_, 1
rest 2
- F_ 4
- E_ 1
- E_ 1
+ note F_, 4
+ note E_, 1
+ note E_, 1
rest 2
- D_ 4
- E_ 1
- E_ 1
+ note D_, 4
+ note E_, 1
+ note E_, 1
octave 3
- B_ 6
+ note B_, 6
octave 4
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
rest 2
- D_ 4
- E_ 1
- E_ 1
+ note D_, 4
+ note E_, 1
+ note E_, 1
rest 2
- F_ 4
- E_ 1
- E_ 1
+ note F_, 4
+ note E_, 1
+ note E_, 1
rest 2
- D_ 4
- E_ 1
- E_ 1
+ note D_, 4
+ note E_, 1
+ note E_, 1
octave 3
- B_ 6
+ note B_, 6
octave 4
- E_ 2
+ note E_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- E_ 2
+ note E_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- E_ 2
+ note E_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- E_ 2
+ note E_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- E_ 2
- B_ 2
- B_ 2
- E_ 2
- B_ 2
- B_ 2
+ note E_, 2
+ note B_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note B_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- B_ 2
- F_ 2
+ note B_, 2
+ note F_, 2
octave 5
- D# 2
+ note D#, 2
octave 4
- F_ 2
+ note F_, 2
octave 5
- D# 2
+ note D#, 2
octave 4
- F_ 2
+ note F_, 2
octave 5
- D# 2
+ note D#, 2
octave 4
- F_ 2
+ note F_, 2
octave 5
- D# 2
+ note D#, 2
octave 4
- F_ 2
+ note F_, 2
octave 5
- C_ 2
- C_ 2
+ note C_, 2
+ note C_, 2
octave 4
- F_ 2
+ note F_, 2
octave 5
- C_ 2
- C_ 2
- D_ 2
- C_ 2
+ note C_, 2
+ note C_, 2
+ note D_, 2
+ note C_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
- C# 2
+ note C#, 2
+ note C#, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
- C# 2
- E_ 2
- C# 2
+ note C#, 2
+ note C#, 2
+ note E_, 2
+ note C#, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
- C# 2
+ note C#, 2
+ note C#, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
- C# 2
- E_ 2
- C# 2
- callchannel Music_FinalBattle_branch_2395b
- callchannel Music_FinalBattle_branch_2395b
+ note C#, 2
+ note C#, 2
+ note E_, 2
+ note C#, 2
+ sound_call Music_FinalBattle_branch_2395b
+ sound_call Music_FinalBattle_branch_2395b
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 1
- F# 1
- G_ 1
- G# 1
- callchannel Music_FinalBattle_branch_2396c
- callchannel Music_FinalBattle_branch_2396c
+ note G_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ sound_call Music_FinalBattle_branch_2396c
+ sound_call Music_FinalBattle_branch_2396c
octave 4
- A# 2
+ note A#, 2
octave 5
- F_ 2
+ note F_, 2
octave 4
- A# 2
+ note A#, 2
octave 5
- F_ 2
+ note F_, 2
octave 4
- A# 2
+ note A#, 2
octave 5
- F_ 2
+ note F_, 2
octave 4
- A# 2
+ note A#, 2
octave 5
- F_ 2
+ note F_, 2
octave 4
- A# 2
+ note A#, 2
octave 5
- F_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- C# 2
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
octave 4
- A# 2
- A_ 2
+ note A#, 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- A_ 2
- G# 2
- G_ 2
+ note A_, 2
+ note G#, 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 1
- F# 1
- G_ 1
- G# 1
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- F_ 2
- F# 2
- G_ 2
- F# 2
- B_ 2
- F# 2
- B_ 2
- F# 2
- B_ 2
- F# 2
- B_ 2
- F# 2
- B_ 2
- F# 2
- B_ 2
- F# 2
- B_ 2
- F# 2
- D# 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- F_ 2
- F# 2
- G_ 2
- F# 2
+ note G_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note F_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note D#, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note F_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- F# 2
- F_ 2
- E_ 2
- B_ 2
- octave 5
- E_ 4
- octave 4
- E_ 2
- B_ 2
- octave 5
- D# 4
- octave 4
- E_ 2
- B_ 2
- octave 5
- D_ 4
- octave 4
- E_ 2
- A_ 2
- B_ 4
- loopchannel 0, Music_FinalBattle_branch_2377d
+ note F#, 2
+ note F_, 2
+ note E_, 2
+ note B_, 2
+ octave 5
+ note E_, 4
+ octave 4
+ note E_, 2
+ note B_, 2
+ octave 5
+ note D#, 4
+ octave 4
+ note E_, 2
+ note B_, 2
+ octave 5
+ note D_, 4
+ octave 4
+ note E_, 2
+ note A_, 2
+ note B_, 4
+ sound_loop 0, Music_FinalBattle_branch_2377d
Music_FinalBattle_branch_2395b::
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
+ note C#, 2
octave 4
- F# 2
+ note F#, 2
octave 5
- C# 2
- endchannel
+ note C#, 2
+ sound_ret
Music_FinalBattle_branch_2396c::
octave 4
- A_ 2
+ note A_, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- E_ 2
+ note E_, 2
octave 4
- A_ 2
+ note A_, 2
octave 5
- E_ 2
- endchannel
+ note E_, 2
+ sound_ret
diff --git a/audio/music/gamecorner.asm b/audio/music/gamecorner.asm
index 52b85e08..f152d180 100644
--- a/audio/music/gamecorner.asm
+++ b/audio/music/gamecorner.asm
@@ -1,627 +1,627 @@
Music_GameCorner_Ch1::
tempo 120
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 12, 3, 4
- toggleperfectpitch
- notetype 12, 11, 5
- octave 3
- A_ 6
- notetype 12, 11, 1
- G# 2
- F# 2
- E_ 2
- D# 2
- C# 2
- D# 16
+ toggle_perfect_pitch
+ note_type 12, 11, 5
+ octave 3
+ note A_, 6
+ note_type 12, 11, 1
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note D#, 16
Music_GameCorner_branch_7e222::
- notetype 12, 11, 5
+ note_type 12, 11, 5
octave 3
- C# 4
+ note C#, 4
octave 2
- G# 4
+ note G#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- B_ 4
- octave 3
- A_ 2
- G# 8
- notetype 12, 10, 7
- G# 2
- A_ 2
- B_ 2
- notetype 12, 11, 5
- G# 6
- E_ 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- notetype 12, 10, 7
- F# 8
- D# 8
- notetype 12, 11, 5
- D# 4
+ note B_, 4
+ octave 3
+ note A_, 2
+ note G#, 8
+ note_type 12, 10, 7
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ note_type 12, 11, 5
+ note G#, 6
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note_type 12, 10, 7
+ note F#, 8
+ note D#, 8
+ note_type 12, 11, 5
+ note D#, 4
octave 2
- B_ 4
- octave 3
- F# 4
- D# 4
- B_ 2
- A_ 8
- notetype 12, 11, 7
- octave 4
- E_ 2
- D# 2
- E_ 2
- D# 6
- C# 2
- octave 3
- D# 2
- E_ 2
- F# 2
- G_ 2
- G# 2
- notetype 12, 9, 7
- G# 1
- G_ 1
- G# 1
- G_ 1
- G# 2
- notetype 12, 11, 7
- F# 8
- notetype 12, 11, 5
- C# 4
+ note B_, 4
+ octave 3
+ note F#, 4
+ note D#, 4
+ note B_, 2
+ note A_, 8
+ note_type 12, 11, 7
+ octave 4
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note D#, 6
+ note C#, 2
+ octave 3
+ note D#, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note G#, 2
+ note_type 12, 9, 7
+ note G#, 1
+ note G_, 1
+ note G#, 1
+ note G_, 1
+ note G#, 2
+ note_type 12, 11, 7
+ note F#, 8
+ note_type 12, 11, 5
+ note C#, 4
octave 2
- G# 4
+ note G#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- B_ 4
- octave 3
- A_ 2
- G# 8
- notetype 12, 11, 7
- G# 2
- A_ 2
- B_ 2
- G# 6
- E_ 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- F# 8
- notetype 12, 9, 7
- D# 4
- C# 4
- notetype 12, 11, 5
- D# 4
+ note B_, 4
+ octave 3
+ note A_, 2
+ note G#, 8
+ note_type 12, 11, 7
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ note G#, 6
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note F#, 8
+ note_type 12, 9, 7
+ note D#, 4
+ note C#, 4
+ note_type 12, 11, 5
+ note D#, 4
octave 2
- B_ 4
- octave 3
- F# 4
- D# 4
- B_ 2
- A_ 8
- notetype 12, 11, 7
- F# 2
- G# 2
- A_ 2
- B_ 4
- A_ 4
- B_ 2
- A_ 2
- G# 2
- F# 2
- notetype 12, 12, 2
- E_ 4
+ note B_, 4
+ octave 3
+ note F#, 4
+ note D#, 4
+ note B_, 2
+ note A_, 8
+ note_type 12, 11, 7
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 4
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note_type 12, 12, 2
+ note E_, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- E_ 2
- E_ 4
- E_ 4
- notetype 12, 11, 7
+ note E_, 2
+ note E_, 4
+ note E_, 4
+ note_type 12, 11, 7
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 2
- D_ 2
- D# 10
+ note C#, 2
+ note D_, 2
+ note D#, 10
octave 2
- B_ 2
- octave 3
- C# 2
- D# 2
- E_ 8
- notetype 12, 11, 5
- octave 4
- D# 4
- octave 3
- B_ 4
- F# 4
- D# 4
- notetype 12, 11, 7
- E_ 3
- D# 1
- notetype 12, 11, 2
- C# 2
- D# 2
- E_ 10
- notetype 12, 11, 7
+ note B_, 2
+ octave 3
+ note C#, 2
+ note D#, 2
+ note E_, 8
+ note_type 12, 11, 5
+ octave 4
+ note D#, 4
+ octave 3
+ note B_, 4
+ note F#, 4
+ note D#, 4
+ note_type 12, 11, 7
+ note E_, 3
+ note D#, 1
+ note_type 12, 11, 2
+ note C#, 2
+ note D#, 2
+ note E_, 10
+ note_type 12, 11, 7
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 2
- D_ 2
- D# 10
+ note C#, 2
+ note D_, 2
+ note D#, 10
octave 2
- B_ 2
- octave 3
- C# 2
- D# 2
- E_ 8
- notetype 12, 11, 5
- octave 4
- D# 4
- octave 3
- B_ 4
- F# 4
- A_ 4
- notetype 12, 11, 7
- G# 2
- G# 1
- G_ 1
- G# 1
- G_ 1
- G# 1
- G_ 1
- G# 8
- loopchannel 0, Music_GameCorner_branch_7e222
+ note B_, 2
+ octave 3
+ note C#, 2
+ note D#, 2
+ note E_, 8
+ note_type 12, 11, 5
+ octave 4
+ note D#, 4
+ octave 3
+ note B_, 4
+ note F#, 4
+ note A_, 4
+ note_type 12, 11, 7
+ note G#, 2
+ note G#, 1
+ note G_, 1
+ note G#, 1
+ note G_, 1
+ note G#, 1
+ note G_, 1
+ note G#, 8
+ sound_loop 0, Music_GameCorner_branch_7e222
Music_GameCorner_Ch2::
- duty 2
+ duty_cycle 2
vibrato 10, 2, 3
- notetype 12, 12, 6
- octave 4
- C# 6
- notetype 12, 12, 1
- octave 3
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- duty 3
- B_ 1
- A# 1
- B_ 1
- A# 1
- B_ 1
- A# 1
- B_ 8
+ note_type 12, 12, 6
+ octave 4
+ note C#, 6
+ note_type 12, 12, 1
+ octave 3
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ duty_cycle 3
+ note B_, 1
+ note A#, 1
+ note B_, 1
+ note A#, 1
+ note B_, 1
+ note A#, 1
+ note B_, 8
Music_GameCorner_branch_7e2fa::
- duty 2
- notetype 12, 12, 7
+ duty_cycle 2
+ note_type 12, 12, 7
octave 3
- E_ 4
+ note E_, 4
octave 2
- B_ 4
- octave 3
- G# 4
- E_ 4
- octave 4
- C# 2
- octave 3
- B_ 14
- octave 4
- E_ 6
- D# 2
- C# 2
- octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 16
- F# 4
- D# 4
- A_ 4
- F# 4
- octave 4
- D# 2
- C# 14
- F# 6
- E_ 2
- D# 2
- C# 2
- octave 3
- B_ 2
- A# 2
- B_ 16
- E_ 4
+ note B_, 4
+ octave 3
+ note G#, 4
+ note E_, 4
+ octave 4
+ note C#, 2
+ octave 3
+ note B_, 14
+ octave 4
+ note E_, 6
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 16
+ note F#, 4
+ note D#, 4
+ note A_, 4
+ note F#, 4
+ octave 4
+ note D#, 2
+ note C#, 14
+ note F#, 6
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ note A#, 2
+ note B_, 16
+ note E_, 4
octave 2
- B_ 4
- octave 3
- G# 4
- E_ 4
- octave 4
- C# 2
- octave 3
- B_ 14
- octave 4
- E_ 6
- D# 2
- C# 2
- octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 16
- F# 4
- D# 4
- A_ 4
- F# 4
- octave 4
- D# 2
- C# 14
- F# 6
- E_ 2
- D# 2
- E_ 2
- F# 2
- G# 2
- notetype 12, 12, 1
- E_ 2
- notetype 12, 10, 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- E_ 2
- notetype 12, 12, 7
- octave 3
- B_ 2
- octave 4
- C# 2
- D_ 2
- D# 10
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- E_ 10
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- notetype 12, 12, 5
- F# 4
- D# 4
- octave 3
- B_ 4
- octave 4
- A_ 4
- G# 3
- A_ 1
- notetype 12, 12, 2
- G# 2
- F# 2
- E_ 2
- notetype 12, 12, 7
- octave 3
- B_ 2
- octave 4
- C# 2
- D_ 2
- D# 10
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- E_ 10
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- F# 4
- D# 4
- A_ 4
- F# 4
- B_ 16
- loopchannel 0, Music_GameCorner_branch_7e2fa
+ note B_, 4
+ octave 3
+ note G#, 4
+ note E_, 4
+ octave 4
+ note C#, 2
+ octave 3
+ note B_, 14
+ octave 4
+ note E_, 6
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 16
+ note F#, 4
+ note D#, 4
+ note A_, 4
+ note F#, 4
+ octave 4
+ note D#, 2
+ note C#, 14
+ note F#, 6
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note_type 12, 12, 1
+ note E_, 2
+ note_type 12, 10, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note E_, 2
+ note_type 12, 12, 7
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D_, 2
+ note D#, 10
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note E_, 10
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note_type 12, 12, 5
+ note F#, 4
+ note D#, 4
+ octave 3
+ note B_, 4
+ octave 4
+ note A_, 4
+ note G#, 3
+ note A_, 1
+ note_type 12, 12, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note_type 12, 12, 7
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D_, 2
+ note D#, 10
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note E_, 10
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note F#, 4
+ note D#, 4
+ note A_, 4
+ note F#, 4
+ note B_, 16
+ sound_loop 0, Music_GameCorner_branch_7e2fa
Music_GameCorner_Ch3::
- notetype 12, 1, 3
+ note_type 12, 1, 3
octave 5
- C# 1
+ note C#, 1
rest 5
octave 4
- F# 1
+ note F#, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- B_ 1
+ note B_, 1
rest 9
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
Music_GameCorner_branch_7e3a5::
- callchannel Music_GameCorner_branch_7e418
- callchannel Music_GameCorner_branch_7e42d
- callchannel Music_GameCorner_branch_7e442
- callchannel Music_GameCorner_branch_7e457
- callchannel Music_GameCorner_branch_7e46c
- callchannel Music_GameCorner_branch_7e481
- callchannel Music_GameCorner_branch_7e496
- D# 1
+ sound_call Music_GameCorner_branch_7e418
+ sound_call Music_GameCorner_branch_7e42d
+ sound_call Music_GameCorner_branch_7e442
+ sound_call Music_GameCorner_branch_7e457
+ sound_call Music_GameCorner_branch_7e46c
+ sound_call Music_GameCorner_branch_7e481
+ sound_call Music_GameCorner_branch_7e496
+ note D#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- callchannel Music_GameCorner_branch_7e418
- callchannel Music_GameCorner_branch_7e42d
- callchannel Music_GameCorner_branch_7e442
- callchannel Music_GameCorner_branch_7e457
- callchannel Music_GameCorner_branch_7e46c
- callchannel Music_GameCorner_branch_7e481
- callchannel Music_GameCorner_branch_7e496
- E_ 1
+ sound_call Music_GameCorner_branch_7e418
+ sound_call Music_GameCorner_branch_7e42d
+ sound_call Music_GameCorner_branch_7e442
+ sound_call Music_GameCorner_branch_7e457
+ sound_call Music_GameCorner_branch_7e46c
+ sound_call Music_GameCorner_branch_7e481
+ sound_call Music_GameCorner_branch_7e496
+ note E_, 1
rest 3
octave 3
- B_ 1
+ note B_, 1
rest 3
octave 4
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- B_ 1
+ note B_, 1
rest 1
- callchannel Music_GameCorner_branch_7e46c
- callchannel Music_GameCorner_branch_7e418
- callchannel Music_GameCorner_branch_7e4ab
- E_ 1
+ sound_call Music_GameCorner_branch_7e46c
+ sound_call Music_GameCorner_branch_7e418
+ sound_call Music_GameCorner_branch_7e4ab
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- callchannel Music_GameCorner_branch_7e46c
- callchannel Music_GameCorner_branch_7e418
- callchannel Music_GameCorner_branch_7e4ab
- callchannel Music_GameCorner_branch_7e42d
- loopchannel 0, Music_GameCorner_branch_7e3a5
+ sound_call Music_GameCorner_branch_7e46c
+ sound_call Music_GameCorner_branch_7e418
+ sound_call Music_GameCorner_branch_7e4ab
+ sound_call Music_GameCorner_branch_7e42d
+ sound_loop 0, Music_GameCorner_branch_7e3a5
Music_GameCorner_branch_7e418::
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e42d::
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e442::
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e457::
- D# 1
+ note D#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e46c::
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e481::
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e496::
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- endchannel
+ sound_ret
Music_GameCorner_branch_7e4ab::
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- endchannel
+ sound_ret
diff --git a/audio/music/gym.asm b/audio/music/gym.asm
index b314336d..1ffc4930 100644
--- a/audio/music/gym.asm
+++ b/audio/music/gym.asm
@@ -1,357 +1,357 @@
Music_Gym_Ch1::
tempo 138
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 2, 2
- toggleperfectpitch
- notetype 12, 11, 5
+ toggle_perfect_pitch
+ note_type 12, 11, 5
octave 3
- G_ 6
- C_ 1
- G_ 1
- F_ 6
+ note G_, 6
+ note C_, 1
+ note G_, 1
+ note F_, 6
octave 2
- A# 1
+ note A#, 1
octave 3
- F_ 1
- E_ 6
+ note F_, 1
+ note E_, 6
octave 2
- A_ 1
+ note A_, 1
octave 3
- E_ 1
- F_ 4
- G_ 4
+ note E_, 1
+ note F_, 4
+ note G_, 4
Music_Gym_branch_bcd8::
- E_ 4
- F_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- C_ 2
- notetype 12, 11, 1
- D_ 3
- notetype 12, 11, 5
- E_ 1
- F_ 4
- E_ 2
- D_ 2
- E_ 2
- F_ 2
- E_ 4
- F_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- C_ 2
- D_ 2
- D_ 1
- E_ 1
- F_ 4
- E_ 2
- D_ 2
- E_ 2
- F_ 2
+ note E_, 4
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note_type 12, 11, 1
+ note D_, 3
+ note_type 12, 11, 5
+ note E_, 1
+ note F_, 4
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 4
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
+ note D_, 1
+ note E_, 1
+ note F_, 4
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 2
octave 4
- C_ 4
+ note C_, 4
octave 3
- A# 2
+ note A#, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- A# 2
- A_ 2
- G_ 2
- F_ 2
- notetype 12, 11, 1
- A# 3
- notetype 12, 11, 5
- F_ 1
- F_ 4
- E_ 2
- D_ 2
- E_ 2
- F_ 2
+ note A#, 2
+ note A_, 2
+ note G_, 2
+ note F_, 2
+ note_type 12, 11, 1
+ note A#, 3
+ note_type 12, 11, 5
+ note F_, 1
+ note F_, 4
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 2
octave 4
- C_ 4
+ note C_, 4
octave 3
- A# 2
+ note A#, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- A# 2
- A_ 2
- G_ 2
- F_ 2
- D_ 2
- D_ 1
- E_ 1
- F_ 4
- A# 2
- F_ 1
- A# 1
+ note A#, 2
+ note A_, 2
+ note G_, 2
+ note F_, 2
+ note D_, 2
+ note D_, 1
+ note E_, 1
+ note F_, 4
+ note A#, 2
+ note F_, 1
+ note A#, 1
octave 4
- D_ 4
+ note D_, 4
octave 3
- E_ 2
- C_ 2
- E_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- E_ 2
- F_ 2
- D_ 2
- E_ 2
- C_ 2
- D_ 2
- E_ 2
- C_ 2
- D_ 2
- C_ 2
- C_ 1
- D_ 1
- E_ 4
- C_ 2
- E_ 2
- D_ 2
- C_ 2
- E_ 2
- C_ 1
- E_ 1
- F_ 4
- E_ 2
- D_ 2
- E_ 2
- F_ 2
- E_ 2
- C_ 2
- E_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- E_ 2
- D_ 2
- F_ 2
- D_ 2
- E_ 2
- C_ 2
- D_ 2
- C_ 2
- D_ 2
- C_ 2
- C_ 1
- D_ 1
- E_ 4
- D_ 2
- E_ 2
- F_ 2
- F_ 2
- G_ 2
- E_ 1
- G_ 1
- A# 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ note D_, 2
+ note E_, 2
+ note C_, 2
+ note D_, 2
+ note E_, 2
+ note C_, 2
+ note D_, 2
+ note C_, 2
+ note C_, 1
+ note D_, 1
+ note E_, 4
+ note C_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note E_, 2
+ note C_, 1
+ note E_, 1
+ note F_, 4
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note E_, 2
+ note C_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
+ note C_, 2
+ note C_, 1
+ note D_, 1
+ note E_, 4
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ note F_, 2
+ note G_, 2
+ note E_, 1
+ note G_, 1
+ note A#, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- A# 2
- A_ 2
- G_ 2
- A_ 2
- loopchannel 0, Music_Gym_branch_bcd8
+ note A#, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ sound_loop 0, Music_Gym_branch_bcd8
Music_Gym_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 5
- notetype 12, 12, 7
+ note_type 12, 12, 7
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 1
+ note G_, 1
octave 4
- C_ 1
+ note C_, 1
octave 3
- A# 6
- F_ 1
- A# 1
- notetype 12, 10, 0
- A_ 12
- notetype 12, 12, 7
- B_ 4
+ note A#, 6
+ note F_, 1
+ note A#, 1
+ note_type 12, 10, 0
+ note A_, 12
+ note_type 12, 12, 7
+ note B_, 4
Music_Gym_branch_bd82::
octave 4
- C_ 12
+ note C_, 12
octave 3
- G_ 2
+ note G_, 2
octave 4
- C_ 2
- notetype 12, 12, 2
- D_ 3
+ note C_, 2
+ note_type 12, 12, 2
+ note D_, 3
octave 3
- A# 1
- notetype 12, 12, 7
- A# 12
+ note A#, 1
+ note_type 12, 12, 7
+ note A#, 12
octave 4
- C_ 12
+ note C_, 12
octave 3
- G_ 2
+ note G_, 2
octave 4
- C_ 2
- notetype 12, 12, 4
+ note C_, 2
+ note_type 12, 12, 4
octave 3
- A# 2
- notetype 12, 12, 7
- A# 1
+ note A#, 2
+ note_type 12, 12, 7
+ note A#, 1
octave 4
- C_ 1
- D_ 12
- E_ 12
- D_ 2
- E_ 2
- notetype 12, 12, 2
- F_ 3
- D_ 1
- notetype 12, 12, 7
- D_ 4
- notetype 12, 12, 2
- A# 3
- F_ 1
- notetype 12, 12, 7
- F_ 4
- E_ 12
- D_ 2
- E_ 2
- F_ 2
- D_ 1
- F_ 1
- A# 12
+ note C_, 1
+ note D_, 12
+ note E_, 12
+ note D_, 2
+ note E_, 2
+ note_type 12, 12, 2
+ note F_, 3
+ note D_, 1
+ note_type 12, 12, 7
+ note D_, 4
+ note_type 12, 12, 2
+ note A#, 3
+ note F_, 1
+ note_type 12, 12, 7
+ note F_, 4
+ note E_, 12
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ note D_, 1
+ note F_, 1
+ note A#, 12
octave 3
- G_ 6
+ note G_, 6
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 4
- A# 4
- A_ 4
- G_ 4
- F_ 4
- notetype 12, 12, 3
- E_ 2
- notetype 12, 12, 7
- E_ 1
- F_ 1
- G_ 6
- G_ 2
+ note G_, 4
+ note A#, 4
+ note A_, 4
+ note G_, 4
+ note F_, 4
+ note_type 12, 12, 3
+ note E_, 2
+ note_type 12, 12, 7
+ note E_, 1
+ note F_, 1
+ note G_, 6
+ note G_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G_ 2
- A# 4
- A_ 4
- G_ 4
- C_ 2
- D_ 2
- G_ 6
+ note G_, 2
+ note A#, 4
+ note A_, 4
+ note G_, 4
+ note C_, 2
+ note D_, 2
+ note G_, 6
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 4
- A# 4
- A_ 4
- G_ 4
- F_ 4
- notetype 12, 12, 3
- E_ 2
- notetype 12, 12, 7
- E_ 1
- F_ 1
- G_ 4
- notetype 12, 12, 3
- G_ 2
- notetype 12, 12, 7
- G_ 1
- A_ 1
- A# 4
- notetype 12, 12, 4
+ note G_, 4
+ note A#, 4
+ note A_, 4
+ note G_, 4
+ note F_, 4
+ note_type 12, 12, 3
+ note E_, 2
+ note_type 12, 12, 7
+ note E_, 1
+ note F_, 1
+ note G_, 4
+ note_type 12, 12, 3
+ note G_, 2
+ note_type 12, 12, 7
+ note G_, 1
+ note A_, 1
+ note A#, 4
+ note_type 12, 12, 4
octave 4
- C_ 2
- notetype 12, 12, 7
- C_ 1
- D_ 1
- E_ 12
- loopchannel 0, Music_Gym_branch_bd82
+ note C_, 2
+ note_type 12, 12, 7
+ note C_, 1
+ note D_, 1
+ note E_, 12
+ sound_loop 0, Music_Gym_branch_bd82
Music_Gym_Ch3::
- notetype 12, 1, 1
+ note_type 12, 1, 1
rest 16
rest 10
octave 4
- G_ 2
- F_ 2
- D_ 2
+ note G_, 2
+ note F_, 2
+ note D_, 2
Music_Gym_branch_be02::
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be44
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be44
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be44
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be44
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be4d
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be4d
- callchannel Music_Gym_branch_be3b
- callchannel Music_Gym_branch_be4d
- callchannel Music_Gym_branch_be3b
- F_ 2
- A# 2
- F_ 2
- A# 2
- F_ 2
- A# 2
- A_ 2
- F_ 2
- loopchannel 0, Music_Gym_branch_be02
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be44
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be44
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be44
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be44
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be4d
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be4d
+ sound_call Music_Gym_branch_be3b
+ sound_call Music_Gym_branch_be4d
+ sound_call Music_Gym_branch_be3b
+ note F_, 2
+ note A#, 2
+ note F_, 2
+ note A#, 2
+ note F_, 2
+ note A#, 2
+ note A_, 2
+ note F_, 2
+ sound_loop 0, Music_Gym_branch_be02
Music_Gym_branch_be3b::
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- endchannel
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ sound_ret
Music_Gym_branch_be44::
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- endchannel
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ sound_ret
Music_Gym_branch_be4d::
- F_ 2
- A# 2
- F_ 2
- A# 2
- F_ 2
- A# 2
- F_ 2
- A# 2
- endchannel
+ note F_, 2
+ note A#, 2
+ note F_, 2
+ note A#, 2
+ note F_, 2
+ note A#, 2
+ note F_, 2
+ note A#, 2
+ sound_ret
diff --git a/audio/music/gymleaderbattle.asm b/audio/music/gymleaderbattle.asm
index 1eb2951d..5befd665 100644
--- a/audio/music/gymleaderbattle.asm
+++ b/audio/music/gymleaderbattle.asm
@@ -1,1400 +1,1400 @@
Music_GymLeaderBattle_Ch1::
tempo 104
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 3, 4
- toggleperfectpitch
- notetype 12, 11, 3
+ toggle_perfect_pitch
+ note_type 12, 11, 3
rest 6
octave 3
- F# 1
- F_ 1
- E_ 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- C# 1
- C_ 1
- C# 1
- C_ 1
- octave 2
- B_ 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note C_, 1
+ octave 2
+ note B_, 1
octave 1
- G# 1
- A_ 1
- A# 1
- A_ 1
- A# 1
- B_ 1
- A# 1
- B_ 1
- octave 2
- F# 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
+ note A#, 1
+ note B_, 1
+ octave 2
+ note F#, 1
rest 15
- F# 1
+ note F#, 1
rest 9
- G_ 6
- F# 1
+ note G_, 6
+ note F#, 1
rest 15
- F# 1
+ note F#, 1
rest 9
- F_ 6
- F# 1
+ note F_, 6
+ note F#, 1
rest 15
- F# 1
+ note F#, 1
rest 9
- G_ 6
- F# 1
+ note G_, 6
+ note F#, 1
rest 15
- F# 1
+ note F#, 1
rest 9
- A_ 6
+ note A_, 6
Music_GymLeaderBattle_branch_223b0::
- F# 1
- octave 3
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- octave 2
- E_ 1
- A_ 1
- octave 3
- C# 1
- octave 2
- B_ 1
- A_ 1
- octave 3
- C# 1
- octave 2
- B_ 1
- A_ 1
- octave 3
- C# 1
- octave 2
- B_ 1
- A_ 1
- octave 3
- C# 1
- octave 2
- B_ 1
- A_ 1
- octave 3
- C# 1
+ note F#, 1
+ octave 3
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ octave 2
+ note E_, 1
+ note A_, 1
+ octave 3
+ note C#, 1
+ octave 2
+ note B_, 1
+ note A_, 1
+ octave 3
+ note C#, 1
+ octave 2
+ note B_, 1
+ note A_, 1
+ octave 3
+ note C#, 1
+ octave 2
+ note B_, 1
+ note A_, 1
+ octave 3
+ note C#, 1
+ octave 2
+ note B_, 1
+ note A_, 1
+ octave 3
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
- F# 1
+ note B_, 1
+ note A_, 1
+ note F#, 1
octave 3
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
- C# 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
octave 2
- E_ 1
- A_ 1
+ note E_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
octave 3
- C# 1
+ note C#, 1
octave 2
- B_ 1
- A_ 1
+ note B_, 1
+ note A_, 1
rest 2
octave 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- D_ 4
+ note D_, 4
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- E_ 4
+ note E_, 4
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- D_ 4
+ note D_, 4
octave 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- C# 2
+ note C#, 2
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- D_ 4
+ note D_, 4
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- E_ 4
+ note E_, 4
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- D_ 4
+ note D_, 4
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 2
- C# 2
+ note C#, 2
octave 1
- B_ 2
- A_ 2
+ note B_, 2
+ note A_, 2
octave 2
- C# 2
+ note C#, 2
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
rest 16
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- B_ 1
+ note B_, 1
+ note A_, 1
+ note B_, 1
octave 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- notetype 12, 11, 5
+ note_type 12, 11, 5
octave 3
- C# 12
- notetype 12, 11, 3
+ note C#, 12
+ note_type 12, 11, 3
octave 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- notetype 12, 11, 5
+ note_type 12, 11, 5
octave 3
- A_ 12
- notetype 12, 11, 3
- D# 4
- C# 4
- D# 4
- E_ 2
- F# 4
+ note A_, 12
+ note_type 12, 11, 3
+ note D#, 4
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note F#, 4
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 2
- F# 2
- B_ 2
- F# 2
- D# 2
- F# 2
+ note C#, 2
+ note F#, 2
+ note B_, 2
+ note F#, 2
+ note D#, 2
+ note F#, 2
octave 1
- A_ 1
- rest 1
- A_ 1
- rest 1
- notetype 12, 11, 5
- octave 3
- A_ 12
- notetype 12, 11, 3
- C# 1
- octave 2
- B_ 1
- octave 3
- C# 1
- D# 1
- E_ 1
- D# 1
- E_ 1
- F# 1
- A_ 1
- G# 1
- F# 1
- E_ 1
- F# 1
- E_ 1
- D# 1
- C# 1
- notetype 12, 11, 5
- D# 4
- E_ 4
- C# 2
- D# 6
- F# 4
- E_ 2
- D# 4
- C# 6
+ note A_, 1
+ rest 1
+ note A_, 1
+ rest 1
+ note_type 12, 11, 5
+ octave 3
+ note A_, 12
+ note_type 12, 11, 3
+ note C#, 1
+ octave 2
+ note B_, 1
+ octave 3
+ note C#, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F#, 1
+ note A_, 1
+ note G#, 1
+ note F#, 1
+ note E_, 1
+ note F#, 1
+ note E_, 1
+ note D#, 1
+ note C#, 1
+ note_type 12, 11, 5
+ note D#, 4
+ note E_, 4
+ note C#, 2
+ note D#, 6
+ note F#, 4
+ note E_, 2
+ note D#, 4
+ note C#, 6
rest 16
rest 10
- E_ 6
- D# 4
- E_ 4
- C# 2
- D# 6
- E_ 4
- D# 2
- C# 4
- octave 2
- B_ 6
- octave 3
- D# 4
- E_ 4
- C# 2
- D# 6
- F# 4
- A_ 2
- G# 4
- E_ 6
- loopchannel 0, Music_GymLeaderBattle_branch_223b0
+ note E_, 6
+ note D#, 4
+ note E_, 4
+ note C#, 2
+ note D#, 6
+ note E_, 4
+ note D#, 2
+ note C#, 4
+ octave 2
+ note B_, 6
+ octave 3
+ note D#, 4
+ note E_, 4
+ note C#, 2
+ note D#, 6
+ note F#, 4
+ note A_, 2
+ note G#, 4
+ note E_, 6
+ sound_loop 0, Music_GymLeaderBattle_branch_223b0
Music_GymLeaderBattle_Ch2::
- duty 3
+ duty_cycle 3
vibrato 8, 2, 5
- notetype 12, 12, 3
- octave 4
- F_ 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- C# 1
- C_ 1
- octave 3
- B_ 1
+ note_type 12, 12, 3
+ octave 4
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ octave 3
+ note B_, 1
rest 5
- F# 1
- F_ 1
- E_ 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- C# 1
- B_ 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note B_, 1
rest 15
- B_ 1
+ note B_, 1
rest 9
octave 4
- C_ 6
+ note C_, 6
octave 3
- B_ 1
+ note B_, 1
rest 15
- B_ 1
+ note B_, 1
rest 9
- A# 6
+ note A#, 6
octave 3
- B_ 1
+ note B_, 1
rest 15
- B_ 1
+ note B_, 1
rest 9
octave 4
- C_ 6
+ note C_, 6
octave 3
- B_ 1
+ note B_, 1
rest 15
- B_ 1
+ note B_, 1
rest 9
octave 4
- C# 6
+ note C#, 6
Music_GymLeaderBattle_branch_225e0::
- notetype 12, 12, 5
- D# 4
- C# 4
- D# 4
- E_ 2
- F# 4
- E_ 4
- D# 2
- C# 2
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- notetype 12, 11, 7
- duty 2
- octave 3
- A_ 8
- octave 4
- C# 8
- E_ 8
- C# 8
- notetype 12, 12, 5
- duty 3
- D# 4
- C# 4
- D# 4
- E_ 2
- F# 4
- E_ 4
- D# 2
- C# 2
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- notetype 12, 11, 7
- duty 2
- C# 8
- octave 3
- B_ 8
- A_ 8
- notetype 12, 12, 3
- octave 4
- E_ 4
- E_ 2
- C# 2
- notetype 12, 12, 5
- duty 3
+ note_type 12, 12, 5
+ note D#, 4
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note F#, 4
+ note E_, 4
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note_type 12, 11, 7
+ duty_cycle 2
+ octave 3
+ note A_, 8
+ octave 4
+ note C#, 8
+ note E_, 8
+ note C#, 8
+ note_type 12, 12, 5
+ duty_cycle 3
+ note D#, 4
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note F#, 4
+ note E_, 4
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note_type 12, 11, 7
+ duty_cycle 2
+ note C#, 8
+ octave 3
+ note B_, 8
+ note A_, 8
+ note_type 12, 12, 3
+ octave 4
+ note E_, 4
+ note E_, 2
+ note C#, 2
+ note_type 12, 12, 5
+ duty_cycle 3
octave 1
- B_ 1
+ note B_, 1
rest 3
octave 3
- D_ 1
- C# 1
+ note D_, 1
+ note C#, 1
octave 2
- B_ 1
+ note B_, 1
octave 3
- D_ 1
+ note D_, 1
rest 4
- E_ 1
- D_ 1
+ note E_, 1
+ note D_, 1
octave 2
- B_ 1
+ note B_, 1
octave 3
- E_ 1
+ note E_, 1
rest 4
- F# 1
- E_ 1
- C# 1
- F# 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
rest 2
- E_ 1
- C# 1
- E_ 1
+ note E_, 1
+ note C#, 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- D_ 1
- C# 1
+ note D_, 1
+ note C#, 1
octave 2
- B_ 1
+ note B_, 1
octave 3
- D_ 1
+ note D_, 1
rest 4
- E_ 1
- D_ 1
+ note E_, 1
+ note D_, 1
octave 2
- B_ 1
+ note B_, 1
octave 3
- E_ 1
+ note E_, 1
rest 4
- F# 1
- E_ 1
- C# 1
- F# 1
- E_ 1
+ note F#, 1
+ note E_, 1
+ note C#, 1
+ note F#, 1
+ note E_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- notetype 12, 11, 0
+ note_type 12, 11, 0
octave 3
- B_ 4
+ note B_, 4
octave 4
- C_ 4
+ note C_, 4
octave 3
- A_ 4
- B_ 4
+ note A_, 4
+ note B_, 4
octave 4
- C_ 4
+ note C_, 4
octave 3
- A_ 4
- G_ 4
- notetype 12, 11, 0
- F# 8
- notetype 12, 11, 7
- F# 8
- notetype 12, 12, 3
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
+ note A_, 4
+ note G_, 4
+ note_type 12, 11, 0
+ note F#, 8
+ note_type 12, 11, 7
+ note F#, 8
+ note_type 12, 12, 3
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- A_ 1
- B_ 1
- notetype 12, 11, 0
+ note B_, 1
+ note A_, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
+ note_type 12, 11, 0
octave 3
- B_ 4
+ note B_, 4
octave 4
- C_ 4
+ note C_, 4
octave 3
- A_ 4
- B_ 4
+ note A_, 4
+ note B_, 4
octave 4
- C_ 4
+ note C_, 4
octave 3
- A_ 4
+ note A_, 4
octave 4
- C_ 4
- notetype 12, 11, 0
+ note C_, 4
+ note_type 12, 11, 0
octave 3
- B_ 16
- notetype 12, 3, 15
+ note B_, 16
+ note_type 12, 3, -7
octave 4
- F# 16
- notetype 12, 12, 3
- duty 3
+ note F#, 16
+ note_type 12, 12, 3
+ duty_cycle 3
octave 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- notetype 12, 12, 7
+ note_type 12, 12, 7
octave 3
- A_ 12
- notetype 12, 12, 3
+ note A_, 12
+ note_type 12, 12, 3
octave 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- notetype 12, 12, 7
+ note_type 12, 12, 7
octave 4
- C# 12
- notetype 12, 11, 0
- D# 16
- notetype 12, 11, 7
- D# 16
- notetype 12, 12, 3
+ note C#, 12
+ note_type 12, 11, 0
+ note D#, 16
+ note_type 12, 11, 7
+ note D#, 16
+ note_type 12, 12, 3
octave 1
- A_ 1
- rest 1
- A_ 1
- rest 1
- notetype 12, 12, 7
- octave 4
- C# 12
- notetype 12, 12, 0
- A_ 8
- E_ 8
- B_ 16
- notetype 12, 12, 7
- B_ 16
- notetype 12, 12, 4
- octave 3
- D# 4
- E_ 4
- C# 2
- D# 6
- F# 4
- A_ 2
- G# 4
+ note A_, 1
+ rest 1
+ note A_, 1
+ rest 1
+ note_type 12, 12, 7
+ octave 4
+ note C#, 12
+ note_type 12, 12, 0
+ note A_, 8
+ note E_, 8
+ note B_, 16
+ note_type 12, 12, 7
+ note B_, 16
+ note_type 12, 12, 4
+ octave 3
+ note D#, 4
+ note E_, 4
+ note C#, 2
+ note D#, 6
+ note F#, 4
+ note A_, 2
+ note G#, 4
rest 2
- B_ 1
- octave 4
- D# 1
- F# 1
- A# 1
- notetype 12, 12, 0
- B_ 16
- F# 16
- A_ 16
+ note B_, 1
+ octave 4
+ note D#, 1
+ note F#, 1
+ note A#, 1
+ note_type 12, 12, 0
+ note B_, 16
+ note F#, 16
+ note A_, 16
octave 5
- C# 8
+ note C#, 8
rest 2
- notetype 12, 12, 3
+ note_type 12, 12, 3
octave 4
- A_ 6
- loopchannel 0, Music_GymLeaderBattle_branch_225e0
+ note A_, 6
+ sound_loop 0, Music_GymLeaderBattle_branch_225e0
Music_GymLeaderBattle_Ch3::
vibrato 0, 2, 0
- notetype 12, 1, 3
+ note_type 12, 1, 3
rest 12
octave 3
- B_ 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- C_ 1
- C# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- E_ 1
- F_ 1
- E_ 1
- F_ 1
- F# 1
- F_ 1
- F# 1
+ note C_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note F_, 1
+ note F#, 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C_ 6
+ note C_, 6
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F_ 6
+ note F_, 6
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C_ 6
+ note C_, 6
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 6
- notetype 12, 1, 4
+ note C#, 6
+ note_type 12, 1, 4
Music_GymLeaderBattle_branch_227b1::
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- E_ 4
+ note E_, 4
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- E_ 4
+ note E_, 4
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- D_ 4
+ note D_, 4
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
+ note B_, 2
+ note A_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 13
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 4
- C# 12
+ note C#, 12
octave 3
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 4
- E_ 12
- D# 16
+ note E_, 12
+ note D#, 16
octave 3
- B_ 16
- A_ 1
+ note B_, 16
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 4
- E_ 12
- C# 8
- E_ 8
+ note E_, 12
+ note C#, 8
+ note E_, 8
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- E_ 6
+ note E_, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G_ 6
+ note G_, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C_ 6
+ note C_, 6
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- F# 2
+ note F#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G_ 6
- loopchannel 0, Music_GymLeaderBattle_branch_227b1
+ note G_, 6
+ sound_loop 0, Music_GymLeaderBattle_branch_227b1
diff --git a/audio/music/halloffame.asm b/audio/music/halloffame.asm
index 69f926f6..80dafaa6 100644
--- a/audio/music/halloffame.asm
+++ b/audio/music/halloffame.asm
@@ -1,96 +1,96 @@
Music_HallOfFame_Ch1::
tempo 112
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 12, 2, 2
- toggleperfectpitch
- notetype 12, 11, 3
+ toggle_perfect_pitch
+ note_type 12, 11, 3
rest 16
rest 16
rest 16
rest 12
octave 3
- D_ 1
- E_ 1
- F_ 1
- F# 1
+ note D_, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
Music_HallOfFame_branch_7fbc5::
- notetype 12, 8, 0
+ note_type 12, 8, 0
octave 4
- C_ 16
- E_ 16
- F# 16
- notetype 12, 6, 0
- F_ 16
- loopchannel 3, Music_HallOfFame_branch_7fbc5
+ note C_, 16
+ note E_, 16
+ note F#, 16
+ note_type 12, 6, 0
+ note F_, 16
+ sound_loop 3, Music_HallOfFame_branch_7fbc5
rest 16
rest 16
rest 16
rest 16
- loopchannel 0, Music_HallOfFame_branch_7fbc5
+ sound_loop 0, Music_HallOfFame_branch_7fbc5
Music_HallOfFame_Ch2::
vibrato 8, 2, 5
- duty 3
+ duty_cycle 3
Music_HallOfFame_branch_7fbdf::
- notetype 12, 12, 4
+ note_type 12, 12, 4
octave 3
- G_ 2
- D_ 2
- G_ 2
- A_ 10
- G_ 2
- D_ 2
- G_ 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note A_, 10
+ note G_, 2
+ note D_, 2
+ note G_, 2
octave 4
- C_ 4
+ note C_, 4
octave 3
- B_ 4
- A_ 2
- G_ 2
- D_ 2
- G_ 2
- A_ 10
- F_ 2
- C_ 2
- F_ 2
- A# 4
- A_ 4
- F_ 2
- loopchannel 0, Music_HallOfFame_branch_7fbdf
+ note B_, 4
+ note A_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note A_, 10
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note A#, 4
+ note A_, 4
+ note F_, 2
+ sound_loop 0, Music_HallOfFame_branch_7fbdf
Music_HallOfFame_Ch3::
- notetype 12, 1, 2
+ note_type 12, 1, 2
Music_HallOfFame_branch_7fbfe::
octave 4
- D_ 2
- G_ 2
- D_ 2
- G_ 2
- D_ 2
- G_ 2
- D_ 2
- G_ 2
- loopchannel 12, Music_HallOfFame_branch_7fbfe
- D_ 4
- G_ 4
- D_ 4
- G_ 4
- E_ 4
- G_ 4
- E_ 4
- G_ 4
- F# 4
- A_ 4
- F# 4
- A_ 4
- E_ 4
- G_ 4
- E_ 4
- G_ 4
- loopchannel 0, Music_HallOfFame_Ch3
+ note D_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ sound_loop 12, Music_HallOfFame_branch_7fbfe
+ note D_, 4
+ note G_, 4
+ note D_, 4
+ note G_, 4
+ note E_, 4
+ note G_, 4
+ note E_, 4
+ note G_, 4
+ note F#, 4
+ note A_, 4
+ note F#, 4
+ note A_, 4
+ note E_, 4
+ note G_, 4
+ note E_, 4
+ note G_, 4
+ sound_loop 0, Music_HallOfFame_Ch3
diff --git a/audio/music/indigoplateau.asm b/audio/music/indigoplateau.asm
index 61623e39..cc3c2cef 100644
--- a/audio/music/indigoplateau.asm
+++ b/audio/music/indigoplateau.asm
@@ -1,321 +1,321 @@
Music_IndigoPlateau_Ch1::
tempo 132
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 2
+ toggle_perfect_pitch
+ note_type 12, 11, 2
octave 2
- A_ 8
- A_ 8
- A_ 8
- A_ 4
- notetype 12, 10, 4
- A# 4
+ note A_, 8
+ note A_, 8
+ note A_, 8
+ note A_, 4
+ note_type 12, 10, 4
+ note A#, 4
Music_IndigoPlateau_branch_a605::
- callchannel Music_IndigoPlateau_branch_a659
- notetype 12, 11, 4
+ sound_call Music_IndigoPlateau_branch_a659
+ note_type 12, 11, 4
octave 3
- D_ 4
- callchannel Music_IndigoPlateau_branch_a659
- notetype 12, 11, 4
+ note D_, 4
+ sound_call Music_IndigoPlateau_branch_a659
+ note_type 12, 11, 4
octave 3
- D# 4
- callchannel Music_IndigoPlateau_branch_a659
- notetype 12, 11, 4
+ note D#, 4
+ sound_call Music_IndigoPlateau_branch_a659
+ note_type 12, 11, 4
octave 3
- D_ 4
- callchannel Music_IndigoPlateau_branch_a659
- notetype 12, 10, 0
+ note D_, 4
+ sound_call Music_IndigoPlateau_branch_a659
+ note_type 12, 10, 0
octave 2
- A# 4
- callchannel Music_IndigoPlateau_branch_a659
- notetype 12, 11, 4
+ note A#, 4
+ sound_call Music_IndigoPlateau_branch_a659
+ note_type 12, 11, 4
octave 3
- D_ 4
- notetype 12, 13, 4
+ note D_, 4
+ note_type 12, 13, 4
octave 3
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- notetype 12, 11, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note_type 12, 11, 4
octave 3
- D# 4
- notetype 12, 13, 4
+ note D#, 4
+ note_type 12, 13, 4
octave 3
- A# 4
- A# 4
- A# 4
- A# 4
- A# 4
- A# 4
- A# 4
- notetype 12, 11, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note A#, 4
+ note_type 12, 11, 4
octave 3
- F_ 2
- notetype 12, 11, 4
+ note F_, 2
+ note_type 12, 11, 4
octave 3
- G_ 2
- notetype 12, 11, 0
- A_ 8
+ note G_, 2
+ note_type 12, 11, 0
+ note A_, 8
octave 2
- A_ 8
- notetype 12, 11, 7
+ note A_, 8
+ note_type 12, 11, 7
octave 3
- F_ 8
- notetype 12, 4, 14
+ note F_, 8
+ note_type 12, 4, -6
octave 2
- A# 8
- loopchannel 0, Music_IndigoPlateau_branch_a605
+ note A#, 8
+ sound_loop 0, Music_IndigoPlateau_branch_a605
Music_IndigoPlateau_branch_a659::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 2
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- A_ 4
- endchannel
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ note A_, 4
+ sound_ret
Music_IndigoPlateau_Ch2::
- duty 3
+ duty_cycle 3
vibrato 8, 2, 5
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 3
- D_ 8
- D_ 8
- D_ 8
- D_ 4
- notetype 12, 5, 10
- D# 4
+ note D_, 8
+ note D_, 8
+ note D_, 8
+ note D_, 4
+ note_type 12, 5, -2
+ note D#, 4
Music_IndigoPlateau_branch_a673::
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 5
- A_ 4
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 5
- A# 4
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 5
- A_ 4
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 7
- C# 4
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 5
- A_ 4
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 5
- A# 4
- callchannel Music_IndigoPlateau_branch_a6af
- notetype 12, 12, 5
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 5
+ note A_, 4
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 5
+ note A#, 4
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 5
+ note A_, 4
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 7
+ note C#, 4
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 5
+ note A_, 4
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 5
+ note A#, 4
+ sound_call Music_IndigoPlateau_branch_a6af
+ note_type 12, 12, 5
octave 4
- C_ 2
- notetype 12, 12, 7
+ note C_, 2
+ note_type 12, 12, 7
octave 4
- C# 2
- D_ 8
+ note C#, 2
+ note D_, 8
octave 3
- D_ 8
+ note D_, 8
octave 4
- C_ 8
- notetype 12, 4, 13
+ note C_, 8
+ note_type 12, 4, -5
octave 4
- D# 8
- loopchannel 0, Music_IndigoPlateau_branch_a673
+ note D#, 8
+ sound_loop 0, Music_IndigoPlateau_branch_a673
Music_IndigoPlateau_branch_a6af::
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 3
- D_ 4
- D_ 4
- D_ 4
- D_ 4
- D_ 4
- D_ 4
- D_ 4
- endchannel
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ sound_ret
Music_IndigoPlateau_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- D_ 2
+ note D_, 2
rest 6
- D_ 2
+ note D_, 2
rest 6
- D_ 2
+ note D_, 2
rest 6
- D_ 2
+ note D_, 2
rest 2
- D# 4
+ note D#, 4
Music_IndigoPlateau_branch_a6c6::
- callchannel Music_IndigoPlateau_branch_a6fe
- callchannel Music_IndigoPlateau_branch_a6fe
- callchannel Music_IndigoPlateau_branch_a6fe
- D_ 2
+ sound_call Music_IndigoPlateau_branch_a6fe
+ sound_call Music_IndigoPlateau_branch_a6fe
+ sound_call Music_IndigoPlateau_branch_a6fe
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- F# 4
- callchannel Music_IndigoPlateau_branch_a6fe
- callchannel Music_IndigoPlateau_branch_a6fe
- D_ 2
+ note F#, 4
+ sound_call Music_IndigoPlateau_branch_a6fe
+ sound_call Music_IndigoPlateau_branch_a6fe
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- A# 1
+ note A#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- A_ 8
- D_ 8
- A# 8
- D# 8
- loopchannel 0, Music_IndigoPlateau_branch_a6c6
+ note A_, 8
+ note D_, 8
+ note A#, 8
+ note D#, 8
+ sound_loop 0, Music_IndigoPlateau_branch_a6c6
Music_IndigoPlateau_branch_a6fe::
octave 4
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- D_ 2
+ note D_, 2
rest 2
- A_ 4
- endchannel
+ note A_, 4
+ sound_ret
Music_IndigoPlateau_Ch4::
- dspeed 6
- mutedsnare2 16
- mutedsnare2 16
- mutedsnare2 16
- mutedsnare2 8
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
+ drum_speed 6
+ drum_note 17, 16
+ drum_note 17, 16
+ drum_note 17, 16
+ drum_note 17, 8
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
Music_IndigoPlateau_branch_a728::
- callchannel Music_IndigoPlateau_branch_a791
- callchannel Music_IndigoPlateau_branch_a77e
- callchannel Music_IndigoPlateau_branch_a791
- callchannel Music_IndigoPlateau_branch_a7a8
- callchannel Music_IndigoPlateau_branch_a791
- callchannel Music_IndigoPlateau_branch_a77e
- callchannel Music_IndigoPlateau_branch_a791
- callchannel Music_IndigoPlateau_branch_a7a8
- callchannel Music_IndigoPlateau_branch_a791
- callchannel Music_IndigoPlateau_branch_a77e
- callchannel Music_IndigoPlateau_branch_a791
- callchannel Music_IndigoPlateau_branch_a7a8
- callchannel Music_IndigoPlateau_branch_a77e
- callchannel Music_IndigoPlateau_branch_a7a8
- mutedsnare2 16
- mutedsnare2 8
- mutedsnare3 8
- mutedsnare2 16
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 1
- mutedsnare2 1
- mutedsnare2 1
- mutedsnare2 1
- loopchannel 0, Music_IndigoPlateau_branch_a728
+ sound_call Music_IndigoPlateau_branch_a791
+ sound_call Music_IndigoPlateau_branch_a77e
+ sound_call Music_IndigoPlateau_branch_a791
+ sound_call Music_IndigoPlateau_branch_a7a8
+ sound_call Music_IndigoPlateau_branch_a791
+ sound_call Music_IndigoPlateau_branch_a77e
+ sound_call Music_IndigoPlateau_branch_a791
+ sound_call Music_IndigoPlateau_branch_a7a8
+ sound_call Music_IndigoPlateau_branch_a791
+ sound_call Music_IndigoPlateau_branch_a77e
+ sound_call Music_IndigoPlateau_branch_a791
+ sound_call Music_IndigoPlateau_branch_a7a8
+ sound_call Music_IndigoPlateau_branch_a77e
+ sound_call Music_IndigoPlateau_branch_a7a8
+ drum_note 17, 16
+ drum_note 17, 8
+ drum_note 18, 8
+ drum_note 17, 16
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ sound_loop 0, Music_IndigoPlateau_branch_a728
Music_IndigoPlateau_branch_a77e::
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare4 4
- mutedsnare3 4
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare4 4
- mutedsnare4 2
- mutedsnare3 2
- endchannel
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 19, 4
+ drum_note 18, 4
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 19, 4
+ drum_note 19, 2
+ drum_note 18, 2
+ sound_ret
Music_IndigoPlateau_branch_a791::
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare4 4
- mutedsnare3 4
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare4 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- endchannel
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 19, 4
+ drum_note 18, 4
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 19, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ sound_ret
Music_IndigoPlateau_branch_a7a8::
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- endchannel
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ sound_ret
diff --git a/audio/music/introbattle.asm b/audio/music/introbattle.asm
index fd4a8e35..681631f6 100644
--- a/audio/music/introbattle.asm
+++ b/audio/music/introbattle.asm
@@ -1,329 +1,329 @@
Music_IntroBattle_Ch1::
tempo 98
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 1
+ toggle_perfect_pitch
+ note_type 12, 11, 1
rest 8
octave 2
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- D_ 4
- notetype 12, 11, 1
+ note D_, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- D# 4
- notetype 12, 11, 1
+ note D#, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- D_ 4
- notetype 12, 11, 1
+ note D_, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 10, 0
- A# 4
- notetype 12, 11, 1
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 10, 0
+ note A#, 4
+ note_type 12, 11, 1
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- D_ 4
- notetype 12, 11, 1
+ note D_, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 2, 9
+ note A_, 2
+ note A_, 2
+ note_type 12, 2, -1
octave 3
- G_ 4
- notetype 12, 11, 0
- A_ 8
+ note G_, 4
+ note_type 12, 11, 0
+ note A_, 8
octave 2
- A_ 8
- notetype 12, 11, 7
+ note A_, 8
+ note_type 12, 11, 7
octave 3
- F_ 8
- notetype 12, 4, 15
+ note F_, 8
+ note_type 12, 4, -7
octave 2
- F_ 8
- notetype 12, 11, 1
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note F_, 8
+ note_type 12, 11, 1
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- D_ 4
- notetype 12, 11, 1
+ note D_, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- D# 4
- notetype 12, 11, 1
+ note D#, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- F_ 4
- notetype 12, 11, 1
+ note F_, 4
+ note_type 12, 11, 1
octave 2
- A_ 2
- A_ 2
- notetype 12, 11, 4
+ note A_, 2
+ note A_, 2
+ note_type 12, 11, 4
octave 3
- G_ 4
- notetype 12, 11, 0
- F# 16
- notetype 12, 11, 1
+ note G_, 4
+ note_type 12, 11, 0
+ note F#, 16
+ note_type 12, 11, 1
octave 4
- D_ 16
- endchannel
+ note D_, 16
+ sound_ret
Music_IntroBattle_Ch2::
- duty 3
+ duty_cycle 3
vibrato 8, 2, 5
- notetype 12, 12, 2
+ note_type 12, 12, 2
rest 8
octave 3
- D_ 2
- D_ 2
- notetype 12, 12, 5
- A_ 4
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 12, 5
- A# 4
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 12, 5
- A_ 4
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 11, 7
- C# 4
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 12, 5
- A_ 4
- notetype 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
+ note A_, 4
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
+ note A#, 4
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
+ note A_, 4
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 11, 7
+ note C#, 4
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
+ note A_, 4
+ note_type 12, 12, 2
octave 3
- D_ 2
- D_ 2
- notetype 12, 12, 7
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 7
octave 4
- C# 4
- D_ 8
+ note C#, 4
+ note D_, 8
octave 3
- D_ 8
+ note D_, 8
octave 4
- C_ 8
+ note C_, 8
octave 3
- C_ 8
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 12, 5
- A_ 4
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 12, 5
- A# 4
- notetype 12, 12, 2
- D_ 2
- D_ 2
- notetype 12, 12, 5
+ note C_, 8
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
+ note A_, 4
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
+ note A#, 4
+ note_type 12, 12, 2
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
octave 4
- C_ 4
- notetype 12, 12, 2
+ note C_, 4
+ note_type 12, 12, 2
octave 3
- D_ 2
- D_ 2
- notetype 12, 12, 5
+ note D_, 2
+ note D_, 2
+ note_type 12, 12, 5
octave 4
- C# 4
- notetype 12, 2, 15
- D_ 16
- notetype 12, 12, 1
+ note C#, 4
+ note_type 12, 2, -7
+ note D_, 16
+ note_type 12, 12, 1
octave 5
- D_ 16
- endchannel
+ note D_, 16
+ sound_ret
Music_IntroBattle_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 8
octave 4
- D_ 1
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 4
- D_ 1
+ note A_, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 4
- D_ 1
+ note A_, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 4
- D_ 1
+ note A_, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 4
- D_ 1
+ note F#, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 4
- D_ 1
+ note A_, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A# 4
- A_ 8
- D_ 8
- A# 8
- D_ 8
- D_ 1
+ note A#, 4
+ note A_, 8
+ note D_, 8
+ note A#, 8
+ note D_, 8
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 4
- D_ 1
+ note A_, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 4
- D_ 1
+ note A_, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A# 4
- D_ 1
+ note A#, 4
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A# 4
- A_ 16
- D_ 1
+ note A#, 4
+ note A_, 16
+ note D_, 1
rest 15
- endchannel
+ sound_ret
Music_IntroBattle_Ch4::
- dspeed 6
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 1
- mutedsnare2 1
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 16
- mutedsnare2 16
- mutedsnare2 16
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 1
- mutedsnare2 1
- mutedsnare2 1
- mutedsnare2 1
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare2 4
- mutedsnare2 16
- mutedsnare2 16
- mutedsnare2 2
+ drum_speed 6
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 16
+ drum_note 17, 16
+ drum_note 17, 16
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ drum_note 17, 1
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 17, 4
+ drum_note 17, 16
+ drum_note 17, 16
+ drum_note 17, 2
rest 16
rest 14
- endchannel
+ sound_ret
diff --git a/audio/music/jigglypuffsong.asm b/audio/music/jigglypuffsong.asm
index 9a01246b..d8995fbd 100644
--- a/audio/music/jigglypuffsong.asm
+++ b/audio/music/jigglypuffsong.asm
@@ -2,39 +2,39 @@ Music_JigglypuffSong_Ch1::
tempo 144
volume 7, 7
vibrato 8, 2, 4
- duty 2
- dutycycle 165
- toggleperfectpitch
- notetype 13, 6, 7
+ duty_cycle 2
+ duty_cycle_pattern 2, 2, 1, 1
+ toggle_perfect_pitch
+ note_type 13, 6, 7
octave 4
- E_ 8
- notetype 12, 6, 7
- B_ 2
- G# 6
- F# 8
- G# 2
- A_ 6
- G# 8
- F# 4
- G# 4
- E_ 10
- endchannel
+ note E_, 8
+ note_type 12, 6, 7
+ note B_, 2
+ note G#, 6
+ note F#, 8
+ note G#, 2
+ note A_, 6
+ note G#, 8
+ note F#, 4
+ note G#, 4
+ note E_, 10
+ sound_ret
Music_JigglypuffSong_Ch2::
vibrato 5, 1, 5
- duty 2
- dutycycle 10
- notetype 12, 10, 7
+ duty_cycle 2
+ duty_cycle_pattern 0, 0, 2, 2
+ note_type 12, 10, 7
octave 4
- E_ 8
- B_ 2
- G# 6
- F# 8
- G# 2
- A_ 6
- G# 8
- F# 4
- G# 4
- E_ 10
- endchannel
+ note E_, 8
+ note B_, 2
+ note G#, 6
+ note F#, 8
+ note G#, 2
+ note A_, 6
+ note G#, 8
+ note F#, 4
+ note G#, 4
+ note E_, 10
+ sound_ret
diff --git a/audio/music/lavender.asm b/audio/music/lavender.asm
index 7b60cc24..70fff2e5 100644
--- a/audio/music/lavender.asm
+++ b/audio/music/lavender.asm
@@ -1,199 +1,199 @@
Music_Lavender_Ch1::
tempo 152
volume 7, 7
- duty 1
- toggleperfectpitch
+ duty_cycle 1
+ toggle_perfect_pitch
vibrato 0, 8, 8
- notetype 12, 8, 7
+ note_type 12, 8, 7
rest 16
rest 16
rest 16
rest 16
- notetype 12, 10, 7
+ note_type 12, 10, 7
Music_Lavender_branch_bb6b::
octave 3
- G_ 8
- G_ 8
- E_ 8
- E_ 8
- G_ 4
- F# 4
- E_ 4
- B_ 4
- C# 8
- C# 8
- G_ 8
- G_ 8
- F# 8
- F# 8
- B_ 4
- G_ 4
- F# 4
- B_ 4
+ note G_, 8
+ note G_, 8
+ note E_, 8
+ note E_, 8
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note B_, 4
+ note C#, 8
+ note C#, 8
+ note G_, 8
+ note G_, 8
+ note F#, 8
+ note F#, 8
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
octave 4
- C_ 8
- C_ 8
+ note C_, 8
+ note C_, 8
octave 3
- G_ 8
- G_ 8
- E_ 8
- E_ 8
- G_ 4
- F# 4
- E_ 4
- B_ 4
- C# 8
- C# 8
- G_ 8
- G_ 8
- F# 8
- F# 8
- B_ 4
- G_ 4
- F# 4
- B_ 4
- C_ 8
- C_ 8
- rest 16
- rest 16
- rest 16
- rest 16
- loopchannel 0, Music_Lavender_branch_bb6b
+ note G_, 8
+ note G_, 8
+ note E_, 8
+ note E_, 8
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note B_, 4
+ note C#, 8
+ note C#, 8
+ note G_, 8
+ note G_, 8
+ note F#, 8
+ note F#, 8
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
+ note C_, 8
+ note C_, 8
+ rest 16
+ rest 16
+ rest 16
+ rest 16
+ sound_loop 0, Music_Lavender_branch_bb6b
Music_Lavender_Ch2::
vibrato 0, 3, 4
- duty 3
- notetype 12, 9, 1
+ duty_cycle 3
+ note_type 12, 9, 1
Music_Lavender_branch_bba5::
octave 5
- C_ 4
- G_ 4
- B_ 4
- F# 4
- loopchannel 0, Music_Lavender_branch_bba5
+ note C_, 4
+ note G_, 4
+ note B_, 4
+ note F#, 4
+ sound_loop 0, Music_Lavender_branch_bba5
Music_Lavender_Ch3::
vibrato 4, 1, 1
- notetype 12, 3, 5
+ note_type 12, 3, 5
rest 16
rest 16
rest 16
rest 16
- notetype 12, 2, 5
+ note_type 12, 2, 5
Music_Lavender_branch_bbb9::
octave 4
- E_ 16
- D_ 16
- C_ 16
- E_ 4
- C_ 4
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note E_, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- E_ 16
- D_ 16
- C_ 16
- E_ 4
- C_ 4
+ note E_, 4
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note E_, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- E_ 16
- D_ 16
- C_ 16
- E_ 4
- C_ 4
+ note E_, 4
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note E_, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- notetype 12, 3, 5
+ note E_, 4
+ note_type 12, 3, 5
octave 6
- B_ 4
- G_ 4
- F# 4
- B_ 4
- notetype 12, 2, 5
- B_ 4
- G_ 4
- F# 4
- B_ 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
+ note_type 12, 2, 5
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
octave 7
- B_ 4
- G_ 4
- F# 4
- B_ 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
octave 4
- E_ 4
- G_ 4
- F# 4
- B_ 4
- E_ 16
- D_ 16
- C_ 16
- E_ 4
- C_ 4
+ note E_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note E_, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- E_ 16
- D_ 16
- C_ 16
- E_ 4
- C_ 4
+ note E_, 4
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note E_, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- E_ 16
- D_ 16
- C_ 16
- E_ 4
- C_ 4
+ note E_, 4
+ note E_, 16
+ note D_, 16
+ note C_, 16
+ note E_, 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- E_ 4
- notetype 12, 2, 5
+ note E_, 4
+ note_type 12, 2, 5
octave 6
- B_ 4
- G_ 4
- F# 4
- B_ 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
octave 7
- B_ 4
- G_ 4
- F# 4
- B_ 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
octave 8
- B_ 4
- G_ 4
- F# 4
- B_ 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
octave 4
- E_ 4
- G_ 4
- F# 4
- B_ 4
- loopchannel 0, Music_Lavender_branch_bbb9
+ note E_, 4
+ note G_, 4
+ note F#, 4
+ note B_, 4
+ sound_loop 0, Music_Lavender_branch_bbb9
Music_Lavender_Ch4::
- dspeed 12
+ drum_speed 12
rest 16
rest 16
rest 16
rest 16
Music_Lavender_branch_bc26::
- triangle2 8
- triangle2 8
- loopchannel 0, Music_Lavender_branch_bc26
+ drum_note 7, 8
+ drum_note 7, 8
+ sound_loop 0, Music_Lavender_branch_bc26
diff --git a/audio/music/meeteviltrainer.asm b/audio/music/meeteviltrainer.asm
index 2378a03a..eb7b5944 100644
--- a/audio/music/meeteviltrainer.asm
+++ b/audio/music/meeteviltrainer.asm
@@ -1,80 +1,80 @@
Music_MeetEvilTrainer_Ch1::
tempo 124
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 12, 11, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 12, 11, 1
rest 4
octave 3
- D_ 2
- C# 2
- notetype 12, 4, 15
- D_ 4
+ note D_, 2
+ note C#, 2
+ note_type 12, 4, -7
+ note D_, 4
Music_MeetEvilTrainer_branch_7f6ae::
- notetype 12, 10, 1
- D_ 4
- D_ 4
- D_ 4
- notetype 12, 7, 0
- D_ 4
- loopchannel 0, Music_MeetEvilTrainer_branch_7f6ae
+ note_type 12, 10, 1
+ note D_, 4
+ note D_, 4
+ note D_, 4
+ note_type 12, 7, 0
+ note D_, 4
+ sound_loop 0, Music_MeetEvilTrainer_branch_7f6ae
Music_MeetEvilTrainer_Ch2::
- duty 1
- notetype 12, 11, 6
+ duty_cycle 1
+ note_type 12, 11, 6
octave 3
- B_ 2
- A# 2
- B_ 8
+ note B_, 2
+ note A#, 2
+ note B_, 8
Music_MeetEvilTrainer_branch_7f6c2::
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 4
- D# 2
- D_ 2
- C# 2
- C_ 2
+ note D#, 2
+ note D_, 2
+ note C#, 2
+ note C_, 2
octave 3
- B_ 4
- B_ 4
- B_ 4
- B_ 4
- B_ 4
- notetype 12, 4, 15
- A# 4
- notetype 12, 12, 2
- G_ 2
- G# 2
- A_ 2
- A# 2
- B_ 4
- B_ 4
- B_ 4
- B_ 4
- B_ 4
- notetype 12, 3, 15
- A# 4
- notetype 12, 12, 2
- loopchannel 0, Music_MeetEvilTrainer_branch_7f6c2
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note_type 12, 4, -7
+ note A#, 4
+ note_type 12, 12, 2
+ note G_, 2
+ note G#, 2
+ note A_, 2
+ note A#, 2
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note_type 12, 3, -7
+ note A#, 4
+ note_type 12, 12, 2
+ sound_loop 0, Music_MeetEvilTrainer_branch_7f6c2
Music_MeetEvilTrainer_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 8
octave 4
- F# 1
+ note F#, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
Music_MeetEvilTrainer_branch_7f6ee::
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- A# 4
- loopchannel 0, Music_MeetEvilTrainer_branch_7f6ee
+ note A#, 4
+ sound_loop 0, Music_MeetEvilTrainer_branch_7f6ee
diff --git a/audio/music/meetfemaletrainer.asm b/audio/music/meetfemaletrainer.asm
index 0f24f99e..c76483e5 100644
--- a/audio/music/meetfemaletrainer.asm
+++ b/audio/music/meetfemaletrainer.asm
@@ -1,118 +1,118 @@
Music_MeetFemaleTrainer_Ch1::
tempo 124
volume 7, 7
- duty 1
- toggleperfectpitch
- notetype 12, 11, 2
+ duty_cycle 1
+ toggle_perfect_pitch
+ note_type 12, 11, 2
octave 3
- G# 6
+ note G#, 6
octave 4
- E_ 2
- D# 2
- C# 2
- C_ 2
- notetype 12, 8, 1
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note C_, 2
+ note_type 12, 8, 1
Music_MeetFemaleTrainer_branch_7f70c::
octave 3
- E_ 4
- loopchannel 12, Music_MeetFemaleTrainer_branch_7f70c
- E_ 4
+ note E_, 4
+ sound_loop 12, Music_MeetFemaleTrainer_branch_7f70c
+ note E_, 4
octave 2
- B_ 4
- B_ 4
+ note B_, 4
+ note B_, 4
octave 3
- E_ 4
- loopchannel 0, Music_MeetFemaleTrainer_branch_7f70c
+ note E_, 4
+ sound_loop 0, Music_MeetFemaleTrainer_branch_7f70c
Music_MeetFemaleTrainer_Ch2::
- duty 2
- notetype 12, 12, 2
+ duty_cycle 2
+ note_type 12, 12, 2
octave 3
- B_ 2
- notetype 12, 12, 7
+ note B_, 2
+ note_type 12, 12, 7
octave 4
- B_ 12
+ note B_, 12
Music_MeetFemaleTrainer_branch_7f726::
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- D# 4
- E_ 4
- D# 4
- C# 2
- C_ 2
+ note D#, 4
+ note E_, 4
+ note D#, 4
+ note C#, 2
+ note C_, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 2
- A# 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note A#, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
- G# 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- F# 2
- G# 2
- A_ 2
- loopchannel 0, Music_MeetFemaleTrainer_branch_7f726
+ note B_, 4
+ note A_, 4
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ sound_loop 0, Music_MeetFemaleTrainer_branch_7f726
Music_MeetFemaleTrainer_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 8
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
Music_MeetFemaleTrainer_branch_7f756::
- callchannel Music_MeetFemaleTrainer_branch_7f770
- G# 1
+ sound_call Music_MeetFemaleTrainer_branch_7f770
+ note G#, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- callchannel Music_MeetFemaleTrainer_branch_7f770
- G# 1
+ sound_call Music_MeetFemaleTrainer_branch_7f770
+ note G#, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- B_ 1
+ note B_, 1
rest 3
- loopchannel 0, Music_MeetFemaleTrainer_branch_7f756
+ sound_loop 0, Music_MeetFemaleTrainer_branch_7f756
Music_MeetFemaleTrainer_branch_7f770::
- G# 1
+ note G#, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- endchannel
+ sound_ret
diff --git a/audio/music/meetjessiejames.asm b/audio/music/meetjessiejames.asm
index 086fef53..7f1f4598 100644
--- a/audio/music/meetjessiejames.asm
+++ b/audio/music/meetjessiejames.asm
@@ -1,309 +1,309 @@
Music_MeetJessieJames_Ch1::
tempo 144
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 1, 4
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 3
- G# 1
- G_ 1
- F# 2
- F_ 2
- E_ 2
- D# 2
- D_ 2
- C# 2
- C_ 2
- notetype 12, 11, 6
- D# 12
- C_ 4
+ note G#, 1
+ note G_, 1
+ note F#, 2
+ note F_, 2
+ note E_, 2
+ note D#, 2
+ note D_, 2
+ note C#, 2
+ note C_, 2
+ note_type 12, 11, 6
+ note D#, 12
+ note C_, 4
Music_MeetJessieJames_branch_83187::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 4
- D_ 16
+ note D_, 16
rest 12
- notetype 12, 11, 4
+ note_type 12, 11, 4
octave 3
- A# 4
+ note A#, 4
rest 16
rest 8
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- A# 2
- A_ 4
- D_ 1
- D# 1
- D# 2
- D# 2
- D_ 2
- D# 2
- D_ 2
- D# 2
- F_ 2
- D_ 1
- D# 1
- D# 2
- D# 2
- D_ 2
+ note A#, 2
+ note A_, 4
+ note D_, 1
+ note D#, 1
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note D#, 2
+ note D_, 2
+ note D#, 2
+ note F_, 2
+ note D_, 1
+ note D#, 1
+ note D#, 2
+ note D#, 2
+ note D_, 2
octave 2
- A# 4
- notetype 12, 11, 4
+ note A#, 4
+ note_type 12, 11, 4
octave 3
- B_ 4
- notetype 12, 11, 2
- D_ 1
- D# 1
- D# 2
- D# 2
- D_ 2
- D# 2
- D_ 2
- D# 2
- F_ 2
- D_ 1
- D# 1
- D# 2
- D# 2
- D_ 2
+ note B_, 4
+ note_type 12, 11, 2
+ note D_, 1
+ note D#, 1
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note D#, 2
+ note D_, 2
+ note D#, 2
+ note F_, 2
+ note D_, 1
+ note D#, 1
+ note D#, 2
+ note D#, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- B_ 2
- notetype 12, 11, 4
- A# 4
- loopchannel 0, Music_MeetJessieJames_branch_83187
+ note B_, 2
+ note_type 12, 11, 4
+ note A#, 4
+ sound_loop 0, Music_MeetJessieJames_branch_83187
Music_MeetJessieJames_Ch2::
- duty 3
+ duty_cycle 3
vibrato 6, 1, 5
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 4
- D_ 1
- C# 1
- C_ 2
+ note D_, 1
+ note C#, 1
+ note C_, 2
octave 3
- B_ 2
- A# 2
- A_ 2
- G# 2
- G_ 2
- F# 2
- notetype 12, 12, 7
- A_ 12
+ note B_, 2
+ note A#, 2
+ note A_, 2
+ note G#, 2
+ note G_, 2
+ note F#, 2
+ note_type 12, 12, 7
+ note A_, 12
octave 4
- C# 4
+ note C#, 4
Music_MeetJessieJames_branch_831df::
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 3
- C# 1
- D_ 1
- D_ 2
- D_ 2
- C# 2
- D_ 2
- C# 2
- D_ 2
- E_ 2
- C# 1
- D_ 1
- D_ 2
- D_ 2
- C# 2
+ note C#, 1
+ note D_, 1
+ note D_, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note C#, 1
+ note D_, 1
+ note D_, 2
+ note D_, 2
+ note C#, 2
octave 2
- A_ 4
- notetype 12, 12, 5
+ note A_, 4
+ note_type 12, 12, 5
octave 4
- C# 4
- notetype 12, 12, 2
- D_ 1
+ note C#, 4
+ note_type 12, 12, 2
+ note D_, 1
octave 3
- D_ 1
- D_ 2
- D_ 2
- C# 2
- D_ 2
- C# 2
- D_ 2
- E_ 2
- C# 1
- D_ 1
- D_ 2
- D_ 2
- C# 2
- notetype 12, 12, 6
+ note D_, 1
+ note D_, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note C#, 1
+ note D_, 1
+ note D_, 2
+ note D_, 2
+ note C#, 2
+ note_type 12, 12, 6
octave 4
- D_ 8
- notetype 12, 12, 2
- D# 6
- F_ 4
- D# 4
+ note D_, 8
+ note_type 12, 12, 2
+ note D#, 6
+ note F_, 4
+ note D#, 4
octave 3
- A# 2
+ note A#, 2
octave 4
- D# 6
- F_ 4
- D# 2
- notetype 12, 12, 5
- D_ 4
- notetype 12, 12, 2
- D# 6
- F_ 4
- D# 4
+ note D#, 6
+ note F_, 4
+ note D#, 2
+ note_type 12, 12, 5
+ note D_, 4
+ note_type 12, 12, 2
+ note D#, 6
+ note F_, 4
+ note D#, 4
octave 3
- A# 2
+ note A#, 2
octave 4
- D# 4
- F_ 4
- notetype 12, 12, 5
- D# 8
- loopchannel 0, Music_MeetJessieJames_branch_831df
+ note D#, 4
+ note F_, 4
+ note_type 12, 12, 5
+ note D#, 8
+ sound_loop 0, Music_MeetJessieJames_branch_831df
Music_MeetJessieJames_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 16
rest 8
octave 4
- D_ 2
+ note D_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- C_ 2
- D# 2
+ note C_, 2
+ note D#, 2
Music_MeetJessieJames_branch_83235::
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A# 2
- A_ 2
- D# 2
- D_ 1
+ note A#, 2
+ note A_, 2
+ note D#, 2
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
octave 3
- A_ 2
+ note A_, 2
octave 4
- C_ 2
- D_ 2
- D# 1
+ note C_, 2
+ note D_, 2
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
octave 3
- A# 1
+ note A#, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- A# 1
+ note A#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
octave 3
- A# 1
+ note A#, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- loopchannel 0, Music_MeetJessieJames_branch_83235
- endchannel
+ sound_loop 0, Music_MeetJessieJames_branch_83235
+ sound_ret
diff --git a/audio/music/meetmaletrainer.asm b/audio/music/meetmaletrainer.asm
index 92047849..a2786052 100644
--- a/audio/music/meetmaletrainer.asm
+++ b/audio/music/meetmaletrainer.asm
@@ -1,190 +1,190 @@
Music_MeetMaleTrainer_Ch1::
tempo 112
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 20, 3, 3
- toggleperfectpitch
- notetype 12, 11, 4
+ toggle_perfect_pitch
+ note_type 12, 11, 4
octave 3
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 12
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 12
rest 16
Music_MeetMaleTrainer_branch_7f78f::
octave 3
- B_ 4
- A_ 4
- G# 2
- F# 2
- E_ 2
- D# 2
- F# 4
- E_ 6
- F_ 2
- F# 4
- G_ 8
- octave 4
- D_ 8
- E_ 16
- loopchannel 0, Music_MeetMaleTrainer_branch_7f78f
+ note B_, 4
+ note A_, 4
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note F#, 4
+ note E_, 6
+ note F_, 2
+ note F#, 4
+ note G_, 8
+ octave 4
+ note D_, 8
+ note E_, 16
+ sound_loop 0, Music_MeetMaleTrainer_branch_7f78f
Music_MeetMaleTrainer_Ch2::
- duty 3
+ duty_cycle 3
vibrato 24, 2, 2
- notetype 12, 12, 4
+ note_type 12, 12, 4
octave 4
- E_ 1
- D# 1
- D_ 1
- C# 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
octave 3
- B_ 12
+ note B_, 12
rest 2
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 9
Music_MeetMaleTrainer_branch_7f7b5::
- notetype 12, 12, 4
+ note_type 12, 12, 4
octave 4
- E_ 6
- D# 6
- C# 4
+ note E_, 6
+ note D#, 6
+ note C#, 4
octave 3
- B_ 2
- A_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- B_ 2
- octave 4
- C# 2
- notetype 12, 12, 7
- F_ 16
- notetype 12, 12, 5
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ octave 4
+ note C#, 2
+ note_type 12, 12, 7
+ note F_, 16
+ note_type 12, 12, 5
octave 3
- F# 8
+ note F#, 8
octave 4
- C# 8
- loopchannel 0, Music_MeetMaleTrainer_branch_7f7b5
+ note C#, 8
+ sound_loop 0, Music_MeetMaleTrainer_branch_7f7b5
Music_MeetMaleTrainer_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 6
octave 4
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 3
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 3
- B_ 1
+ note B_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
Music_MeetMaleTrainer_branch_7f7ea::
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- D_ 1
+ note D_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- D_ 1
+ note D_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- D_ 1
+ note D_, 1
rest 1
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- D_ 1
+ note D_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- loopchannel 0, Music_MeetMaleTrainer_branch_7f7ea
+ sound_loop 0, Music_MeetMaleTrainer_branch_7f7ea
diff --git a/audio/music/meetprofoak.asm b/audio/music/meetprofoak.asm
index 6532a187..24c6741a 100644
--- a/audio/music/meetprofoak.asm
+++ b/audio/music/meetprofoak.asm
@@ -1,423 +1,423 @@
Music_MeetProfOak_Ch1::
tempo 112
volume 7, 7
- duty 3
- toggleperfectpitch
- notetype 12, 11, 4
+ duty_cycle 3
+ toggle_perfect_pitch
+ note_type 12, 11, 4
octave 3
- F# 1
- B_ 1
+ note F#, 1
+ note B_, 1
octave 4
- D# 1
- E_ 1
- F# 12
- notetype 12, 10, 2
+ note D#, 1
+ note E_, 1
+ note F#, 12
+ note_type 12, 10, 2
octave 3
- E_ 6
- B_ 10
- E_ 6
- B_ 10
- E_ 6
- D# 4
- F# 2
- F# 4
- E_ 6
- D# 4
- F# 2
- F# 4
- E_ 6
- B_ 10
- E_ 6
- B_ 10
- E_ 6
- D# 4
- F# 2
- F# 4
- E_ 6
- D# 4
- F# 2
- F# 4
+ note E_, 6
+ note B_, 10
+ note E_, 6
+ note B_, 10
+ note E_, 6
+ note D#, 4
+ note F#, 2
+ note F#, 4
+ note E_, 6
+ note D#, 4
+ note F#, 2
+ note F#, 4
+ note E_, 6
+ note B_, 10
+ note E_, 6
+ note B_, 10
+ note E_, 6
+ note D#, 4
+ note F#, 2
+ note F#, 4
+ note E_, 6
+ note D#, 4
+ note F#, 2
+ note F#, 4
Music_MeetProfOak_branch_af85::
- F# 6
- E_ 4
- A_ 2
- A_ 4
- F# 6
- E_ 4
- A_ 2
- A_ 4
- F# 6
- E_ 4
- G# 2
- G# 4
- F# 6
- E_ 4
- G# 2
- G# 4
- E_ 6
- D# 4
- F# 2
- F# 4
- E_ 6
- D# 4
- F# 2
- F# 4
- F# 6
- E_ 4
- G# 2
- G# 4
- F# 6
- E_ 4
- G# 2
- G# 4
- loopchannel 0, Music_MeetProfOak_branch_af85
+ note F#, 6
+ note E_, 4
+ note A_, 2
+ note A_, 4
+ note F#, 6
+ note E_, 4
+ note A_, 2
+ note A_, 4
+ note F#, 6
+ note E_, 4
+ note G#, 2
+ note G#, 4
+ note F#, 6
+ note E_, 4
+ note G#, 2
+ note G#, 4
+ note E_, 6
+ note D#, 4
+ note F#, 2
+ note F#, 4
+ note E_, 6
+ note D#, 4
+ note F#, 2
+ note F#, 4
+ note F#, 6
+ note E_, 4
+ note G#, 2
+ note G#, 4
+ note F#, 6
+ note E_, 4
+ note G#, 2
+ note G#, 4
+ sound_loop 0, Music_MeetProfOak_branch_af85
Music_MeetProfOak_Ch2::
vibrato 8, 1, 1
- duty 2
- notetype 12, 12, 4
+ duty_cycle 2
+ note_type 12, 12, 4
octave 3
- B_ 1
+ note B_, 1
octave 4
- D# 1
- F# 1
- A# 1
- B_ 12
- notetype 12, 11, 2
+ note D#, 1
+ note F#, 1
+ note A#, 1
+ note B_, 12
+ note_type 12, 11, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D# 2
- E_ 4
- D# 2
- C# 4
- notetype 12, 6, 4
+ note C#, 2
+ note D#, 2
+ note E_, 4
+ note D#, 2
+ note C#, 4
+ note_type 12, 6, 4
octave 4
- B_ 2
+ note B_, 2
octave 5
- C# 2
- D# 2
- E_ 4
- D# 2
- C# 4
- notetype 12, 11, 2
+ note C#, 2
+ note D#, 2
+ note E_, 4
+ note D#, 2
+ note C#, 4
+ note_type 12, 11, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 4
- B_ 2
- B_ 4
- notetype 12, 8, 1
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 4
+ note B_, 2
+ note B_, 4
+ note_type 12, 8, 1
octave 4
- B_ 2
- A_ 2
- G# 2
- A_ 4
- B_ 2
- B_ 4
- notetype 12, 11, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 4
+ note B_, 2
+ note B_, 4
+ note_type 12, 11, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D# 2
- E_ 4
- D# 2
- C# 4
- notetype 12, 6, 4
+ note C#, 2
+ note D#, 2
+ note E_, 4
+ note D#, 2
+ note C#, 4
+ note_type 12, 6, 4
octave 4
- B_ 2
+ note B_, 2
octave 5
- C# 2
- D# 2
- E_ 4
- D# 2
- C# 4
- notetype 12, 11, 2
+ note C#, 2
+ note D#, 2
+ note E_, 4
+ note D#, 2
+ note C#, 4
+ note_type 12, 11, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 4
- B_ 2
- B_ 4
- notetype 12, 8, 1
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 4
+ note B_, 2
+ note B_, 4
+ note_type 12, 8, 1
octave 4
- B_ 2
- A_ 2
- G# 2
- A_ 4
- B_ 2
- B_ 4
- notetype 12, 11, 5
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 4
+ note B_, 2
+ note B_, 4
+ note_type 12, 11, 5
Music_MeetProfOak_branch_b005::
octave 4
- C# 6
+ note C#, 6
octave 3
- A_ 1
+ note A_, 1
octave 4
- C# 1
- E_ 6
- C# 1
- E_ 1
- F# 4
- E_ 4
- D# 4
- C# 4
+ note C#, 1
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note F#, 4
+ note E_, 4
+ note D#, 4
+ note C#, 4
octave 3
- B_ 6
- G# 1
- B_ 1
+ note B_, 6
+ note G#, 1
+ note B_, 1
octave 4
- E_ 8
- notetype 12, 6, 5
+ note E_, 8
+ note_type 12, 6, 5
octave 4
- B_ 6
- G# 1
- B_ 1
+ note B_, 6
+ note G#, 1
+ note B_, 1
octave 5
- E_ 8
- notetype 12, 11, 5
+ note E_, 8
+ note_type 12, 11, 5
octave 3
- A_ 6
- F# 1
- A_ 1
+ note A_, 6
+ note F#, 1
+ note A_, 1
octave 4
- D# 8
- E_ 4
- D# 4
- C# 4
- C_ 4
+ note D#, 8
+ note E_, 4
+ note D#, 4
+ note C#, 4
+ note C_, 4
octave 3
- B_ 6
- G# 1
- B_ 1
+ note B_, 6
+ note G#, 1
+ note B_, 1
octave 4
- E_ 6
+ note E_, 6
octave 3
- B_ 1
+ note B_, 1
octave 4
- E_ 1
- notetype 12, 11, 7
- G# 16
- loopchannel 0, Music_MeetProfOak_branch_b005
+ note E_, 1
+ note_type 12, 11, 7
+ note G#, 16
+ sound_loop 0, Music_MeetProfOak_branch_b005
Music_MeetProfOak_Ch3::
- notetype 12, 1, 2
+ note_type 12, 1, 2
rest 10
octave 4
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 5
octave 5
- E_ 4
+ note E_, 4
rest 6
octave 4
- B_ 1
+ note B_, 1
rest 5
octave 5
- E_ 4
+ note E_, 4
octave 4
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
Music_MeetProfOak_branch_b0bc::
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
- loopchannel 2, Music_MeetProfOak_branch_b0bc
+ sound_loop 2, Music_MeetProfOak_branch_b0bc
Music_MeetProfOak_branch_b0d8::
octave 4
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- loopchannel 2, Music_MeetProfOak_branch_b0d8
+ sound_loop 2, Music_MeetProfOak_branch_b0d8
Music_MeetProfOak_branch_b0ed::
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- loopchannel 2, Music_MeetProfOak_branch_b0ed
+ sound_loop 2, Music_MeetProfOak_branch_b0ed
Music_MeetProfOak_branch_b101::
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- loopchannel 2, Music_MeetProfOak_branch_b101
- loopchannel 0, Music_MeetProfOak_branch_b0bc
+ sound_loop 2, Music_MeetProfOak_branch_b101
+ sound_loop 0, Music_MeetProfOak_branch_b0bc
diff --git a/audio/music/meetrival.asm b/audio/music/meetrival.asm
index 153523af..958db7be 100644
--- a/audio/music/meetrival.asm
+++ b/audio/music/meetrival.asm
@@ -1,396 +1,396 @@
Music_MeetRival_branch_b119::
tempo 100
- loopchannel 0, Music_MeetRival_branch_b123
+ sound_loop 0, Music_MeetRival_branch_b123
Music_MeetRival_Ch1::
tempo 112
Music_MeetRival_branch_b123::
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 3
+ toggle_perfect_pitch
+ note_type 12, 11, 3
octave 4
- D_ 1
- C# 1
- C_ 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
octave 3
- B_ 1
- A# 2
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 6
- D_ 1
+ note B_, 1
+ note A#, 2
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 6
+ note D_, 1
rest 3
- D_ 1
+ note D_, 1
rest 5
- A_ 2
- G_ 2
- A_ 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
Music_MeetRival_branch_b140::
- B_ 4
- A# 2
- A_ 4
- G_ 2
+ note B_, 4
+ note A#, 2
+ note A_, 4
+ note G_, 2
octave 4
- C_ 4
- D_ 2
+ note C_, 4
+ note D_, 2
rest 4
- D_ 4
- C# 2
- C_ 2
+ note D_, 4
+ note C#, 2
+ note C_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C_ 4
- E_ 2
- D_ 4
- C_ 2
+ note C_, 4
+ note E_, 2
+ note D_, 4
+ note C_, 2
octave 3
- B_ 4
+ note B_, 4
octave 4
- C_ 2
+ note C_, 2
rest 4
- G_ 4
- G_ 2
- F# 2
- E_ 2
- D_ 2
- F# 2
+ note G_, 4
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note F#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- D_ 2
- F# 2
+ note D_, 2
+ note F#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- D_ 2
+ note D_, 2
octave 3
- D_ 2
+ note D_, 2
octave 4
- D_ 2
+ note D_, 2
rest 2
octave 3
- D_ 2
+ note D_, 2
octave 4
- C_ 4
+ note C_, 4
octave 3
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 4
- C_ 2
- F_ 2
+ note C_, 2
+ note F_, 2
octave 3
- G_ 2
+ note G_, 2
octave 4
- C_ 2
- F_ 2
- D# 2
- C_ 2
+ note C_, 2
+ note F_, 2
+ note D#, 2
+ note C_, 2
octave 3
- A# 2
- G_ 2
+ note A#, 2
+ note G_, 2
rest 4
- A# 4
+ note A#, 4
octave 4
- C_ 2
+ note C_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- C_ 2
- notetype 12, 11, 7
+ note C_, 2
+ note_type 12, 11, 7
octave 3
- G_ 4
- D_ 2
- F_ 6
- F# 4
- D_ 2
+ note G_, 4
+ note D_, 2
+ note F_, 6
+ note F#, 4
+ note D_, 2
rest 4
- D_ 4
- notetype 12, 11, 3
- A_ 2
- G_ 2
- A_ 2
- loopchannel 0, Music_MeetRival_branch_b140
+ note D_, 4
+ note_type 12, 11, 3
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ sound_loop 0, Music_MeetRival_branch_b140
Music_MeetRival_branch_b19b::
tempo 100
- loopchannel 0, Music_MeetRival_branch_b1a5
+ sound_loop 0, Music_MeetRival_branch_b1a5
Music_MeetRival_branch_b1a2::
tempo 112
Music_MeetRival_branch_b1a5::
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 3
+ toggle_perfect_pitch
+ note_type 12, 11, 3
octave 3
- D_ 1
+ note D_, 1
rest 3
- D_ 1
+ note D_, 1
rest 5
- A_ 2
- G_ 2
- A_ 2
- loopchannel 0, Music_MeetRival_branch_b140
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ sound_loop 0, Music_MeetRival_branch_b140
Music_MeetRival_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 6
- notetype 12, 12, 7
- octave 4
- B_ 1
- A# 1
- A_ 1
- G# 1
- G_ 2
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 6
+ note_type 12, 12, 7
+ octave 4
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 2
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 6
octave 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- D_ 1
+ note D_, 1
rest 1
octave 4
- D_ 2
- F_ 2
- F# 2
+ note D_, 2
+ note F_, 2
+ note F#, 2
Music_MeetRival_branch_b1d8::
- notetype 12, 12, 7
- G_ 4
- D_ 2
- F_ 6
- F# 4
- G_ 2
+ note_type 12, 12, 7
+ note G_, 4
+ note D_, 2
+ note F_, 6
+ note F#, 4
+ note G_, 2
rest 4
- G_ 4
- G_ 2
- A# 2
- B_ 2
+ note G_, 4
+ note G_, 2
+ note A#, 2
+ note B_, 2
octave 5
- C_ 4
+ note C_, 4
octave 4
- G_ 2
- A# 6
- B_ 4
+ note G_, 2
+ note A#, 6
+ note B_, 4
octave 5
- C_ 2
+ note C_, 2
rest 4
- C_ 4
- C_ 2
+ note C_, 4
+ note C_, 2
octave 4
- B_ 2
+ note B_, 2
octave 5
- C_ 2
- notetype 12, 11, 0
- D_ 16
- notetype 12, 11, 5
- D_ 6
- notetype 12, 12, 7
- F_ 4
- D_ 2
- C_ 2
- D_ 2
- notetype 12, 11, 0
- C_ 8
- notetype 12, 12, 7
- C_ 8
- octave 4
- C_ 2
+ note C_, 2
+ note_type 12, 11, 0
+ note D_, 16
+ note_type 12, 11, 5
+ note D_, 6
+ note_type 12, 12, 7
+ note F_, 4
+ note D_, 2
+ note C_, 2
+ note D_, 2
+ note_type 12, 11, 0
+ note C_, 8
+ note_type 12, 12, 7
+ note C_, 8
+ octave 4
+ note C_, 2
rest 4
- A# 4
- G_ 2
- F_ 2
- notetype 12, 11, 0
- G_ 16
- notetype 12, 11, 3
- G_ 2
+ note A#, 4
+ note G_, 2
+ note F_, 2
+ note_type 12, 11, 0
+ note G_, 16
+ note_type 12, 11, 3
+ note G_, 2
octave 3
- G_ 2
+ note G_, 2
rest 4
- G_ 4
+ note G_, 4
octave 4
- D_ 2
- F_ 2
- F# 2
- loopchannel 0, Music_MeetRival_branch_b1d8
+ note D_, 2
+ note F_, 2
+ note F#, 2
+ sound_loop 0, Music_MeetRival_branch_b1d8
Music_MeetRival_branch_b21d::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 6
- notetype 12, 12, 7
+ note_type 12, 12, 7
octave 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- D_ 1
+ note D_, 1
rest 1
octave 4
- D_ 2
- F_ 2
- F# 2
- loopchannel 0, Music_MeetRival_branch_b1d8
+ note D_, 2
+ note F_, 2
+ note F#, 2
+ sound_loop 0, Music_MeetRival_branch_b1d8
Music_MeetRival_Ch3::
- notetype 12, 1, 4
+ note_type 12, 1, 4
octave 5
- D_ 2
+ note D_, 2
rest 2
- C# 2
+ note C#, 2
rest 2
- C_ 2
+ note C_, 2
rest 2
octave 4
- B_ 2
+ note B_, 2
rest 2
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
Music_MeetRival_branch_b24b::
- G_ 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
rest 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
rest 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
rest 4
octave 5
- D_ 4
+ note D_, 4
octave 4
- G_ 2
- A# 2
- B_ 2
- G_ 2
+ note G_, 2
+ note A#, 2
+ note B_, 2
+ note G_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G_ 2
+ note G_, 2
rest 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
octave 5
- C_ 2
+ note C_, 2
rest 4
- C_ 4
- C_ 2
+ note C_, 4
+ note C_, 2
octave 4
- B_ 2
- A_ 2
- F# 2
- A_ 2
+ note B_, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
rest 2
- F# 2
- A_ 2
- F# 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
rest 2
- A_ 2
- F# 2
- A_ 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
rest 2
- F# 2
- A_ 2
- F# 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- A_ 2
- E_ 2
+ note A_, 2
+ note E_, 2
octave 5
- C_ 2
+ note C_, 2
rest 2
octave 4
- E_ 2
+ note E_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- E_ 2
- F_ 2
- G_ 2
- E_ 2
+ note E_, 2
+ note F_, 2
+ note G_, 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
octave 5
- C_ 2
+ note C_, 2
octave 4
- B_ 2
- A# 2
- A_ 2
- G_ 2
- A# 2
+ note B_, 2
+ note A#, 2
+ note A_, 2
+ note G_, 2
+ note A#, 2
rest 2
- G_ 2
- A# 2
- G_ 2
+ note G_, 2
+ note A#, 2
+ note G_, 2
rest 2
- A# 2
- G_ 2
+ note A#, 2
+ note G_, 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
rest 2
octave 5
- D_ 2
+ note D_, 2
octave 4
- G_ 2
+ note G_, 2
rest 2
octave 5
- D_ 2
- loopchannel 0, Music_MeetRival_branch_b24b
+ note D_, 2
+ sound_loop 0, Music_MeetRival_branch_b24b
Music_MeetRival_branch_b2b5::
- notetype 12, 1, 4
+ note_type 12, 1, 4
octave 4
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- loopchannel 0, Music_MeetRival_branch_b24b
+ sound_loop 0, Music_MeetRival_branch_b24b
diff --git a/audio/music/museumguy.asm b/audio/music/museumguy.asm
index cb08fcf4..60ebd553 100644
--- a/audio/music/museumguy.asm
+++ b/audio/music/museumguy.asm
@@ -1,337 +1,337 @@
Music_MuseumGuy_Ch1::
tempo 128
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 12, 11, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 12, 11, 1
octave 3
- B_ 2
- A_ 2
- G# 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- D# 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
octave 2
- B_ 4
- B_ 1
+ note B_, 4
+ note B_, 1
octave 3
- D# 1
- E_ 1
- G# 1
- B_ 10
- callchannel Music_MuseumGuy_branch_ade7
- callchannel Music_MuseumGuy_branch_adec
- callchannel Music_MuseumGuy_branch_ade7
- E_ 4
- E_ 4
- E_ 2
- E_ 6
+ note D#, 1
+ note E_, 1
+ note G#, 1
+ note B_, 10
+ sound_call Music_MuseumGuy_branch_ade7
+ sound_call Music_MuseumGuy_branch_adec
+ sound_call Music_MuseumGuy_branch_ade7
+ note E_, 4
+ note E_, 4
+ note E_, 2
+ note E_, 6
Music_MuseumGuy_branch_add6::
- callchannel Music_MuseumGuy_branch_ade7
- callchannel Music_MuseumGuy_branch_adec
- callchannel Music_MuseumGuy_branch_ade7
- E_ 4
- E_ 4
- E_ 2
- E_ 6
- loopchannel 0, Music_MuseumGuy_branch_add6
+ sound_call Music_MuseumGuy_branch_ade7
+ sound_call Music_MuseumGuy_branch_adec
+ sound_call Music_MuseumGuy_branch_ade7
+ note E_, 4
+ note E_, 4
+ note E_, 2
+ note E_, 6
+ sound_loop 0, Music_MuseumGuy_branch_add6
Music_MuseumGuy_branch_ade7::
- E_ 2
- E_ 6
- F# 2
- F# 6
- endchannel
+ note E_, 2
+ note E_, 6
+ note F#, 2
+ note F#, 6
+ sound_ret
Music_MuseumGuy_branch_adec::
- E_ 2
- E_ 6
- D_ 2
- D_ 6
- endchannel
+ note E_, 2
+ note E_, 6
+ note D_, 2
+ note D_, 6
+ sound_ret
Music_MuseumGuy_Ch2::
- duty 2
- notetype 12, 12, 1
+ duty_cycle 2
+ note_type 12, 12, 1
octave 4
- E_ 2
- D_ 2
- C# 2
- D_ 2
- C# 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- E_ 4
- E_ 1
- G# 1
- B_ 1
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note E_, 4
+ note E_, 1
+ note G#, 1
+ note B_, 1
octave 4
- D# 1
- E_ 8
+ note D#, 1
+ note E_, 8
octave 3
- A_ 2
+ note A_, 2
octave 4
- C# 2
- E_ 4
- D_ 2
- F# 2
- A_ 4
+ note C#, 2
+ note E_, 4
+ note D_, 2
+ note F#, 2
+ note A_, 4
octave 3
- A_ 2
+ note A_, 2
octave 4
- C# 2
- E_ 4
- D_ 2
- C# 2
+ note C#, 2
+ note E_, 4
+ note D_, 2
+ note C#, 2
octave 3
- B_ 4
- A_ 2
+ note B_, 4
+ note A_, 2
octave 4
- C# 2
- E_ 4
- D_ 2
- F# 2
- A_ 2
- A_ 2
- G# 2
- E_ 2
- F# 2
- G# 2
- A_ 2
- A_ 2
- A_ 4
+ note C#, 2
+ note E_, 4
+ note D_, 2
+ note F#, 2
+ note A_, 2
+ note A_, 2
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note A_, 2
+ note A_, 4
Music_MuseumGuy_branch_ae26::
octave 3
- A_ 2
+ note A_, 2
octave 4
- C# 2
- E_ 3
- notetype 12, 8, 1
- E_ 1
- notetype 12, 12, 1
- D_ 2
- F# 2
- A_ 3
- notetype 12, 9, 1
- A_ 1
- notetype 12, 12, 1
+ note C#, 2
+ note E_, 3
+ note_type 12, 8, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note D_, 2
+ note F#, 2
+ note A_, 3
+ note_type 12, 9, 1
+ note A_, 1
+ note_type 12, 12, 1
octave 3
- A_ 2
+ note A_, 2
octave 4
- C# 2
- E_ 4
- D_ 1
- C# 1
- C_ 1
+ note C#, 2
+ note E_, 4
+ note D_, 1
+ note C#, 1
+ note C_, 1
octave 3
- B_ 1
- B_ 3
- notetype 12, 10, 1
- G# 1
- notetype 12, 12, 1
- A_ 2
+ note B_, 1
+ note B_, 3
+ note_type 12, 10, 1
+ note G#, 1
+ note_type 12, 12, 1
+ note A_, 2
octave 4
- C# 2
- E_ 3
- notetype 12, 9, 1
- E_ 1
- notetype 12, 12, 1
- D_ 2
- F# 2
- A_ 3
- notetype 12, 8, 1
- A_ 1
- notetype 12, 12, 1
- G# 2
- E_ 1
- notetype 12, 8, 1
- E_ 1
- notetype 12, 12, 1
- F# 2
- notetype 12, 8, 1
- F# 1
- notetype 12, 12, 1
- G# 1
- A_ 2
- A_ 2
- A_ 4
- loopchannel 0, Music_MuseumGuy_branch_ae26
+ note C#, 2
+ note E_, 3
+ note_type 12, 9, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note D_, 2
+ note F#, 2
+ note A_, 3
+ note_type 12, 8, 1
+ note A_, 1
+ note_type 12, 12, 1
+ note G#, 2
+ note E_, 1
+ note_type 12, 8, 1
+ note E_, 1
+ note_type 12, 12, 1
+ note F#, 2
+ note_type 12, 8, 1
+ note F#, 1
+ note_type 12, 12, 1
+ note G#, 1
+ note A_, 2
+ note A_, 2
+ note A_, 4
+ sound_loop 0, Music_MuseumGuy_branch_ae26
Music_MuseumGuy_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 16
octave 4
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 9
- callchannel Music_MuseumGuy_branch_aeb8
- A_ 1
+ sound_call Music_MuseumGuy_branch_aeb8
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 5
- G# 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 5
- callchannel Music_MuseumGuy_branch_aeb8
- B_ 1
+ sound_call Music_MuseumGuy_branch_aeb8
+ note B_, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
Music_MuseumGuy_branch_ae8e::
- callchannel Music_MuseumGuy_branch_aec1
+ sound_call Music_MuseumGuy_branch_aec1
rest 3
octave 6
- E_ 1
+ note E_, 1
rest 1
octave 5
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- callchannel Music_MuseumGuy_branch_aec1
+ sound_call Music_MuseumGuy_branch_aec1
rest 1
octave 6
- E_ 1
+ note E_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- loopchannel 0, Music_MuseumGuy_branch_ae8e
+ sound_loop 0, Music_MuseumGuy_branch_ae8e
Music_MuseumGuy_branch_aeb8::
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 5
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 5
- endchannel
+ sound_ret
Music_MuseumGuy_branch_aec1::
octave 6
- C# 1
+ note C#, 1
rest 1
octave 5
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
octave 6
- F# 1
+ note F#, 1
rest 1
octave 5
- A_ 1
+ note A_, 1
rest 1
- A_ 1
- endchannel
+ note A_, 1
+ sound_ret
Music_MuseumGuy_Ch4::
- dspeed 12
+ drum_speed 12
rest 16
rest 16
rest 16
rest 16
rest 16
rest 14
- dspeed 6
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
+ drum_speed 6
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
Music_MuseumGuy_branch_aee1::
- mutedsnare2 4
- mutedsnare2 6
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 6
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 4
- mutedsnare2 6
- mutedsnare2 2
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 6
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 2
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 6
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- loopchannel 0, Music_MuseumGuy_branch_aee1
+ drum_note 17, 4
+ drum_note 17, 6
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 6
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 4
+ drum_note 17, 6
+ drum_note 17, 2
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 6
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 2
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 6
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ sound_loop 0, Music_MuseumGuy_branch_aee1
diff --git a/audio/music/oakslab.asm b/audio/music/oakslab.asm
index 7214264c..5af9f9a9 100644
--- a/audio/music/oakslab.asm
+++ b/audio/music/oakslab.asm
@@ -1,393 +1,393 @@
Music_OaksLab_Ch1::
tempo 140
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 16, 1, 2
- toggleperfectpitch
- notetype 12, 11, 3
+ toggle_perfect_pitch
+ note_type 12, 11, 3
octave 2
- B_ 1
+ note B_, 1
octave 3
- C# 1
- D_ 1
- E_ 1
- F# 1
- G# 1
- A_ 1
- B_ 1
+ note C#, 1
+ note D_, 1
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ note B_, 1
Music_OaksLab_branch_7eed0::
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 4
- G# 2
- A_ 2
- B_ 1
+ note A_, 4
+ note G#, 2
+ note A_, 2
+ note B_, 1
rest 3
- A_ 6
- G# 1
- B_ 1
+ note A_, 6
+ note G#, 1
+ note B_, 1
octave 4
- C# 4
+ note C#, 4
octave 3
- A_ 4
- G# 2
- A_ 2
- F# 4
- E_ 2
- F# 2
- G# 1
+ note A_, 4
+ note G#, 2
+ note A_, 2
+ note F#, 4
+ note E_, 2
+ note F#, 2
+ note G#, 1
rest 3
- F# 8
- E_ 4
- A_ 6
- E_ 1
- A_ 1
+ note F#, 8
+ note E_, 4
+ note A_, 6
+ note E_, 1
+ note A_, 1
octave 4
- D_ 8
- C# 6
+ note D_, 8
+ note C#, 6
octave 3
- A_ 1
+ note A_, 1
octave 4
- C# 1
- E_ 8
- D_ 4
- C# 4
+ note C#, 1
+ note E_, 8
+ note D_, 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
- G# 1
+ note B_, 4
+ note A_, 4
+ note G#, 1
rest 3
- E_ 4
- F# 4
- G# 4
- loopchannel 0, Music_OaksLab_branch_7eed0
+ note E_, 4
+ note F#, 4
+ note G#, 4
+ sound_loop 0, Music_OaksLab_branch_7eed0
Music_OaksLab_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 5
- notetype 12, 12, 4
+ note_type 12, 12, 4
octave 3
- G# 1
- A_ 1
- B_ 1
+ note G#, 1
+ note A_, 1
+ note B_, 1
octave 4
- C# 1
- D_ 1
- E_ 1
- F# 1
- G# 1
+ note C#, 1
+ note D_, 1
+ note E_, 1
+ note F#, 1
+ note G#, 1
Music_OaksLab_branch_7ef16::
- A_ 6
- G# 1
- F# 1
- E_ 6
- D# 1
- E_ 1
- F# 1
+ note A_, 6
+ note G#, 1
+ note F#, 1
+ note E_, 6
+ note D#, 1
+ note E_, 1
+ note F#, 1
rest 3
- E_ 8
- E_ 4
- F# 6
- E_ 1
- D_ 1
- C# 6
+ note E_, 8
+ note E_, 4
+ note F#, 6
+ note E_, 1
+ note D_, 1
+ note C#, 6
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 1
- D_ 1
+ note C#, 1
+ note D_, 1
rest 3
- C# 8
- C# 4
- D_ 6
+ note C#, 8
+ note C#, 4
+ note D_, 6
octave 3
- A_ 1
+ note A_, 1
octave 4
- D_ 1
- F# 8
- E_ 6
- C# 1
- E_ 1
- A_ 8
- G# 4
- A_ 2
- G# 2
- F# 4
- G# 2
- F# 2
- E_ 1
+ note D_, 1
+ note F#, 8
+ note E_, 6
+ note C#, 1
+ note E_, 1
+ note A_, 8
+ note G#, 4
+ note A_, 2
+ note G#, 2
+ note F#, 4
+ note G#, 2
+ note F#, 2
+ note E_, 1
rest 1
octave 3
- G# 1
+ note G#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- loopchannel 0, Music_OaksLab_branch_7ef16
+ sound_loop 0, Music_OaksLab_branch_7ef16
Music_OaksLab_Ch3::
- notetype 12, 1, 1
+ note_type 12, 1, 1
rest 2
octave 4
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
Music_OaksLab_branch_7ef5c::
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- A_ 1
+ note A_, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- A_ 1
+ note A_, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 3
- A_ 1
+ note A_, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 5
- G# 1
+ note G#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 3
- A_ 1
+ note A_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- loopchannel 0, Music_OaksLab_branch_7ef5c
+ sound_loop 0, Music_OaksLab_branch_7ef5c
diff --git a/audio/music/pallettown.asm b/audio/music/pallettown.asm
index 0c8b7dbc..26e5710f 100644
--- a/audio/music/pallettown.asm
+++ b/audio/music/pallettown.asm
@@ -1,314 +1,314 @@
Music_PalletTown_Ch1::
tempo 160
volume 7, 7
- duty 2
- notetype 12, 12, 3
+ duty_cycle 2
+ note_type 12, 12, 3
Music_PalletTown_branch_a7ce::
octave 3
- B_ 4
+ note B_, 4
octave 4
- C_ 2
- D_ 4
- G_ 2
- D_ 2
- C_ 2
+ note C_, 2
+ note D_, 4
+ note G_, 2
+ note D_, 2
+ note C_, 2
octave 3
- B_ 4
- G_ 2
+ note B_, 4
+ note G_, 2
octave 4
- D_ 4
- D_ 2
- C_ 2
+ note D_, 4
+ note D_, 2
+ note C_, 2
octave 3
- B_ 2
+ note B_, 2
rest 2
- B_ 2
+ note B_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C_ 8
+ note C_, 8
rest 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- A_ 2
- B_ 2
- G_ 2
- A_ 2
- F# 2
- B_ 4
+ note A_, 2
+ note B_, 2
+ note G_, 2
+ note A_, 2
+ note F#, 2
+ note B_, 4
octave 4
- C_ 2
- D_ 4
- G_ 2
- D_ 2
- C_ 2
+ note C_, 2
+ note D_, 4
+ note G_, 2
+ note D_, 2
+ note C_, 2
octave 3
- B_ 4
- G_ 2
+ note B_, 4
+ note G_, 2
octave 4
- D_ 4
- D_ 2
- G_ 2
- F# 2
- E_ 4
- D_ 2
- C_ 4
+ note D_, 4
+ note D_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 4
+ note D_, 2
+ note C_, 4
octave 3
- A_ 2
- B_ 2
+ note A_, 2
+ note B_, 2
octave 4
- C_ 2
- D_ 2
- C_ 2
+ note C_, 2
+ note D_, 2
+ note C_, 2
octave 3
- B_ 2
- A_ 2
- G_ 4
- F# 4
+ note B_, 2
+ note A_, 2
+ note G_, 4
+ note F#, 4
octave 4
- C_ 2
+ note C_, 2
octave 3
- G_ 2
- E_ 2
- G_ 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
octave 4
- D_ 2
+ note D_, 2
octave 3
- A_ 2
- F# 2
- A_ 2
- notetype 12, 11, 3
- B_ 2
- G_ 2
- D_ 2
- G_ 2
- B_ 2
- G_ 2
- D_ 2
- G_ 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note_type 12, 11, 3
+ note B_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G_ 2
- E_ 2
- G_ 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
octave 4
- D_ 2
+ note D_, 2
octave 3
- A_ 2
- F# 2
- A_ 2
- B_ 2
- G_ 2
- D_ 2
- G_ 2
- B_ 2
- G_ 2
- D_ 2
- G_ 2
- A_ 2
- E_ 2
- C_ 2
- E_ 2
- A_ 2
- E_ 2
- C_ 2
- E_ 2
- A_ 2
- E_ 2
- C_ 2
- E_ 2
- A_ 2
- E_ 2
- C_ 2
- E_ 2
- F# 2
- D_ 2
- C_ 2
- D_ 2
- G_ 2
- E_ 2
- C_ 2
- E_ 2
- G_ 2
- E_ 2
- C_ 2
- E_ 2
- F# 2
- D_ 2
- C_ 2
- D_ 2
- loopchannel 0, Music_PalletTown_branch_a7ce
- endchannel
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note D_, 2
+ note G_, 2
+ note A_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note F#, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
+ note G_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note C_, 2
+ note E_, 2
+ note F#, 2
+ note D_, 2
+ note C_, 2
+ note D_, 2
+ sound_loop 0, Music_PalletTown_branch_a7ce
+ sound_ret
Music_PalletTown_Ch2::
- duty 2
+ duty_cycle 2
Music_PalletTown_branch_a861::
- notetype 12, 13, 3
+ note_type 12, 13, 3
octave 5
- D_ 2
- notetype 12, 10, 3
- C_ 2
- notetype 12, 13, 3
+ note D_, 2
+ note_type 12, 10, 3
+ note C_, 2
+ note_type 12, 13, 3
octave 4
- B_ 2
- notetype 12, 11, 3
- A_ 2
- notetype 12, 13, 3
+ note B_, 2
+ note_type 12, 11, 3
+ note A_, 2
+ note_type 12, 13, 3
octave 5
- G_ 2
- notetype 12, 11, 3
- E_ 2
- notetype 12, 13, 3
- F# 2
- E_ 2
- D_ 6
+ note G_, 2
+ note_type 12, 11, 3
+ note E_, 2
+ note_type 12, 13, 3
+ note F#, 2
+ note E_, 2
+ note D_, 6
octave 4
- B_ 2
- G_ 2
- G_ 2
- A_ 2
- B_ 2
+ note B_, 2
+ note G_, 2
+ note G_, 2
+ note A_, 2
+ note B_, 2
octave 5
- C_ 10
+ note C_, 10
octave 4
- F# 2
- G_ 2
- A_ 2
- B_ 6
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note B_, 6
octave 5
- C_ 1
+ note C_, 1
octave 4
- B_ 1
- A_ 8
+ note B_, 1
+ note A_, 8
octave 5
- D_ 2
- notetype 12, 10, 3
- C_ 2
- notetype 12, 13, 3
+ note D_, 2
+ note_type 12, 10, 3
+ note C_, 2
+ note_type 12, 13, 3
octave 4
- B_ 2
- notetype 12, 11, 3
+ note B_, 2
+ note_type 12, 11, 3
octave 5
- D_ 2
- notetype 12, 13, 3
- G_ 2
- notetype 12, 10, 3
- F# 2
- notetype 12, 11, 3
- F# 2
- notetype 12, 13, 3
- G_ 2
- E_ 6
- D_ 2
- D_ 8
- C_ 2
+ note D_, 2
+ note_type 12, 13, 3
+ note G_, 2
+ note_type 12, 10, 3
+ note F#, 2
+ note_type 12, 11, 3
+ note F#, 2
+ note_type 12, 13, 3
+ note G_, 2
+ note E_, 6
+ note D_, 2
+ note D_, 8
+ note C_, 2
octave 4
- B_ 2
- A_ 2
- G_ 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
octave 5
- D_ 2
- C_ 2
+ note D_, 2
+ note C_, 2
octave 4
- B_ 2
- A_ 2
- G_ 10
- G_ 2
- A_ 2
- B_ 2
+ note B_, 2
+ note A_, 2
+ note G_, 10
+ note G_, 2
+ note A_, 2
+ note B_, 2
octave 5
- C_ 8
- D_ 6
- C_ 2
+ note C_, 8
+ note D_, 6
+ note C_, 2
octave 4
- B_ 8
+ note B_, 8
rest 2
- G_ 2
- A_ 2
- B_ 2
+ note G_, 2
+ note A_, 2
+ note B_, 2
octave 5
- C_ 4
- C_ 4
- D_ 6
- C_ 1
- D_ 1
+ note C_, 4
+ note C_, 4
+ note D_, 6
+ note C_, 1
+ note D_, 1
octave 4
- B_ 8
+ note B_, 8
rest 2
- B_ 2
- A_ 2
- G_ 2
- A_ 8
- E_ 4
- B_ 4
- A_ 8
- G_ 4
- E_ 4
- F# 8
- G_ 4
- B_ 4
- B_ 8
- A_ 8
- loopchannel 0, Music_PalletTown_branch_a861
- endchannel
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 8
+ note E_, 4
+ note B_, 4
+ note A_, 8
+ note G_, 4
+ note E_, 4
+ note F#, 8
+ note G_, 4
+ note B_, 4
+ note B_, 8
+ note A_, 8
+ sound_loop 0, Music_PalletTown_branch_a861
+ sound_ret
Music_PalletTown_Ch3::
vibrato 24, 2, 8
- notetype 12, 1, 2
+ note_type 12, 1, 2
Music_PalletTown_branch_a8e3::
octave 4
- G_ 6
- E_ 6
- F# 4
- G_ 6
- A_ 6
- G_ 4
- E_ 6
- F# 6
- E_ 4
- G_ 6
- E_ 6
- D_ 4
- G_ 6
- E_ 6
- F# 4
- G_ 6
- A_ 6
- G_ 4
- E_ 6
- F# 6
- A_ 4
- G_ 6
- E_ 6
- D_ 4
- C_ 8
- D_ 8
- G_ 8
- E_ 4
- D_ 4
- C_ 8
- D_ 8
- G_ 8
- A_ 4
- G_ 4
- E_ 8
- A_ 8
- E_ 8
- G_ 8
- F# 8
- E_ 8
- E_ 8
- F# 8
- loopchannel 0, Music_PalletTown_branch_a8e3
- endchannel
+ note G_, 6
+ note E_, 6
+ note F#, 4
+ note G_, 6
+ note A_, 6
+ note G_, 4
+ note E_, 6
+ note F#, 6
+ note E_, 4
+ note G_, 6
+ note E_, 6
+ note D_, 4
+ note G_, 6
+ note E_, 6
+ note F#, 4
+ note G_, 6
+ note A_, 6
+ note G_, 4
+ note E_, 6
+ note F#, 6
+ note A_, 4
+ note G_, 6
+ note E_, 6
+ note D_, 4
+ note C_, 8
+ note D_, 8
+ note G_, 8
+ note E_, 4
+ note D_, 4
+ note C_, 8
+ note D_, 8
+ note G_, 8
+ note A_, 4
+ note G_, 4
+ note E_, 8
+ note A_, 8
+ note E_, 8
+ note G_, 8
+ note F#, 8
+ note E_, 8
+ note E_, 8
+ note F#, 8
+ sound_loop 0, Music_PalletTown_branch_a8e3
+ sound_ret
diff --git a/audio/music/pkmnhealed.asm b/audio/music/pkmnhealed.asm
index 2b7b545b..2fe9e4ce 100644
--- a/audio/music/pkmnhealed.asm
+++ b/audio/music/pkmnhealed.asm
@@ -1,47 +1,47 @@
Music_PkmnHealed_Ch1::
tempo 144
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 12, 8, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 12, 8, 1
rest 2
- pitchbend 0, 75
- B_ 2
- pitchbend 0, 84
- B_ 2
- pitchbend 0, 68
- E_ 2
+ pitch_slide 1, 4, B_
+ note B_, 2
+ pitch_slide 1, 3, E_
+ note B_, 2
+ pitch_slide 1, 4, E_
+ note E_, 2
rest 4
- pitchbend 0, 59
- E_ 4
- pitchbend 0, 75
- B_ 4
- endchannel
+ pitch_slide 1, 5, B_
+ note E_, 4
+ pitch_slide 1, 4, B_
+ note B_, 4
+ sound_ret
Music_PkmnHealed_Ch2::
- duty 2
- notetype 12, 12, 3
+ duty_cycle 2
+ note_type 12, 12, 3
octave 4
- B_ 4
- B_ 4
- B_ 2
- G# 2
- notetype 12, 12, 4
+ note B_, 4
+ note B_, 4
+ note B_, 2
+ note G#, 2
+ note_type 12, 12, 4
octave 5
- E_ 8
- endchannel
+ note E_, 8
+ sound_ret
Music_PkmnHealed_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- E_ 2
- G# 2
- E_ 6
+ note E_, 2
+ note G#, 2
+ note E_, 6
rest 2
- endchannel
+ sound_ret
diff --git a/audio/music/pokecenter.asm b/audio/music/pokecenter.asm
index 5de546ad..a4a3f2bf 100644
--- a/audio/music/pokecenter.asm
+++ b/audio/music/pokecenter.asm
@@ -1,375 +1,375 @@
Music_Pokecenter_Ch1::
tempo 144
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 10, 2, 2
- toggleperfectpitch
+ toggle_perfect_pitch
Music_Pokecenter_branch_be61::
- notetype 12, 10, 3
+ note_type 12, 10, 3
octave 3
- F# 2
- F_ 2
- F# 2
- notetype 12, 11, 5
+ note F#, 2
+ note F_, 2
+ note F#, 2
+ note_type 12, 11, 5
octave 4
- D_ 4
- C# 2
+ note D_, 4
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- B_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- F# 2
- G_ 2
- A_ 2
- notetype 12, 10, 3
- A_ 2
- E_ 2
- A_ 2
- notetype 12, 11, 5
+ note B_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note_type 12, 10, 3
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note_type 12, 11, 5
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 2
- A_ 2
- G_ 2
- F# 2
- A_ 2
- B_ 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note A_, 2
+ note B_, 2
octave 4
- C# 2
- D_ 2
- C# 2
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- notetype 12, 10, 3
- F# 2
- F_ 2
- F# 2
- notetype 12, 11, 5
+ note B_, 2
+ note A_, 2
+ note_type 12, 10, 3
+ note F#, 2
+ note F_, 2
+ note F#, 2
+ note_type 12, 11, 5
octave 4
- D_ 4
- C# 2
+ note D_, 4
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- B_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- F# 2
- G_ 2
- A_ 2
- notetype 12, 10, 3
- A_ 2
- E_ 2
- A_ 2
- notetype 12, 11, 5
+ note B_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note_type 12, 10, 3
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note_type 12, 11, 5
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- E_ 2
- F# 2
- G_ 2
- A_ 2
- B_ 2
- F# 2
- E_ 2
- D_ 4
- E_ 2
- F# 2
- G_ 2
- A_ 2
- B_ 2
- A_ 2
- G_ 4
- E_ 2
- F# 2
- G_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 4
- C# 2
- D_ 2
- E_ 2
- G_ 2
- F# 2
- G_ 2
- A_ 2
- B_ 2
- A_ 8
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note B_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 4
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 4
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 4
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note G_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 8
octave 4
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 4
- A_ 2
- B_ 2
+ note B_, 4
+ note A_, 2
+ note B_, 2
octave 4
- C# 2
- D_ 2
- E_ 2
- D_ 2
- C# 4
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note D_, 2
+ note C#, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D_ 2
- E_ 2
- C# 2
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 4
- G_ 2
- A_ 2
- B_ 2
- G_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- E_ 2
- F# 2
- G_ 2
- loopchannel 0, Music_Pokecenter_branch_be61
+ note B_, 2
+ note A_, 4
+ note G_, 2
+ note A_, 2
+ note B_, 2
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ sound_loop 0, Music_Pokecenter_branch_be61
Music_Pokecenter_Ch2::
vibrato 8, 2, 5
Music_Pokecenter_branch_befc::
- callchannel Music_Pokecenter_branch_bf4e
- duty 3
- notetype 12, 10, 5
+ sound_call Music_Pokecenter_branch_bf4e
+ duty_cycle 3
+ note_type 12, 10, 5
octave 3
- A_ 4
- E_ 4
- callchannel Music_Pokecenter_branch_bf60
- D_ 2
- F# 6
- duty 3
- notetype 12, 10, 5
+ note A_, 4
+ note E_, 4
+ sound_call Music_Pokecenter_branch_bf60
+ note D_, 2
+ note F#, 6
+ duty_cycle 3
+ note_type 12, 10, 5
octave 3
- A_ 4
- E_ 4
- callchannel Music_Pokecenter_branch_bf4e
- duty 3
- notetype 12, 10, 5
+ note A_, 4
+ note E_, 4
+ sound_call Music_Pokecenter_branch_bf4e
+ duty_cycle 3
+ note_type 12, 10, 5
octave 3
- A_ 4
- E_ 4
- callchannel Music_Pokecenter_branch_bf60
- D_ 8
- duty 3
- notetype 12, 10, 5
+ note A_, 4
+ note E_, 4
+ sound_call Music_Pokecenter_branch_bf60
+ note D_, 8
+ duty_cycle 3
+ note_type 12, 10, 5
octave 3
- D_ 4
- E_ 4
- duty 2
- notetype 12, 12, 6
+ note D_, 4
+ note E_, 4
+ duty_cycle 2
+ note_type 12, 12, 6
octave 4
- F# 8
- A_ 8
- G_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 8
- C# 8
- E_ 8
- F# 2
- G_ 2
- F# 2
- E_ 2
- D_ 8
- F# 8
- A_ 8
- G_ 2
- F# 2
- G_ 2
- A_ 2
- B_ 8
- A_ 4
- G_ 2
- F# 2
- G_ 8
- F# 2
- G_ 2
- F# 2
- E_ 2
- D_ 8
- loopchannel 0, Music_Pokecenter_branch_befc
+ note F#, 8
+ note A_, 8
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 8
+ note C#, 8
+ note E_, 8
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 8
+ note F#, 8
+ note A_, 8
+ note G_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note B_, 8
+ note A_, 4
+ note G_, 2
+ note F#, 2
+ note G_, 8
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 8
+ sound_loop 0, Music_Pokecenter_branch_befc
Music_Pokecenter_branch_bf4e::
- duty 2
- notetype 12, 12, 2
+ duty_cycle 2
+ note_type 12, 12, 2
octave 4
- D_ 2
+ note D_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- D_ 2
- notetype 12, 12, 3
- A_ 4
- G_ 4
- F# 2
- E_ 2
- C# 6
- endchannel
+ note D_, 2
+ note_type 12, 12, 3
+ note A_, 4
+ note G_, 4
+ note F#, 2
+ note E_, 2
+ note C#, 6
+ sound_ret
Music_Pokecenter_branch_bf60::
- duty 2
- notetype 12, 12, 2
+ duty_cycle 2
+ note_type 12, 12, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- C# 2
- notetype 12, 12, 3
- F# 4
- E_ 4
- C# 2
- endchannel
+ note C#, 2
+ note_type 12, 12, 3
+ note F#, 4
+ note E_, 4
+ note C#, 2
+ sound_ret
Music_Pokecenter_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
Music_Pokecenter_branch_bf72::
octave 4
- D_ 2
- F# 2
- D_ 2
- F# 2
- D_ 2
- F# 2
- G_ 2
- F# 2
- callchannel Music_Pokecenter_branch_bfd9
- callchannel Music_Pokecenter_branch_bfe2
- F# 2
- A_ 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- G_ 2
- A_ 2
- D_ 2
- F# 2
- D_ 2
- F# 2
- D_ 2
- F# 2
- G_ 2
- F# 2
- callchannel Music_Pokecenter_branch_bfd9
- callchannel Music_Pokecenter_branch_bfe2
- D_ 2
- F# 2
- D_ 2
- F# 2
- D_ 2
- B_ 2
- A_ 2
- G_ 2
- callchannel Music_Pokecenter_branch_bfeb
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- G# 2
- A_ 2
- callchannel Music_Pokecenter_branch_bfeb
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- G_ 2
- B_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- E_ 2
- G_ 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- F# 2
- G_ 2
- F# 2
- E_ 2
- loopchannel 0, Music_Pokecenter_branch_bf72
+ note D_, 2
+ note F#, 2
+ note D_, 2
+ note F#, 2
+ note D_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ sound_call Music_Pokecenter_branch_bfd9
+ sound_call Music_Pokecenter_branch_bfe2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ note D_, 2
+ note F#, 2
+ note D_, 2
+ note F#, 2
+ note D_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ sound_call Music_Pokecenter_branch_bfd9
+ sound_call Music_Pokecenter_branch_bfe2
+ note D_, 2
+ note F#, 2
+ note D_, 2
+ note F#, 2
+ note D_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ sound_call Music_Pokecenter_branch_bfeb
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ sound_call Music_Pokecenter_branch_bfeb
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note G_, 2
+ note B_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note E_, 2
+ note G_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ sound_loop 0, Music_Pokecenter_branch_bf72
Music_Pokecenter_branch_bfd9::
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- endchannel
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ sound_ret
Music_Pokecenter_branch_bfe2::
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- G_ 2
- A_ 2
- endchannel
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
+ sound_ret
Music_Pokecenter_branch_bfeb::
- F# 2
- A_ 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- F# 2
- A_ 2
- endchannel
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ sound_ret
diff --git a/audio/music/pokemontower.asm b/audio/music/pokemontower.asm
index afae9a75..ef3a3b88 100644
--- a/audio/music/pokemontower.asm
+++ b/audio/music/pokemontower.asm
@@ -1,458 +1,458 @@
Music_PokemonTower_Ch1::
tempo 152
volume 7, 7
- duty 3
- toggleperfectpitch
+ duty_cycle 3
+ toggle_perfect_pitch
vibrato 12, 2, 3
- notetype 12, 8, 0
+ note_type 12, 8, 0
rest 4
octave 4
- B_ 12
+ note B_, 12
Music_PokemonTower_branch_7f05a::
- notetype 12, 11, 4
+ note_type 12, 11, 4
octave 4
- G_ 1
+ note G_, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
octave 3
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 3
- B_ 1
+ note B_, 1
rest 3
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
octave 4
- F# 1
+ note F#, 1
rest 7
- C_ 1
+ note C_, 1
octave 3
- B_ 1
- G_ 1
+ note B_, 1
+ note G_, 1
rest 5
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- D_ 1
+ note D_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
octave 4
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- C# 1
+ note C#, 1
rest 7
- C# 1
+ note C#, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 3
- notetype 12, 8, 4
- C_ 1
+ note_type 12, 8, 4
+ note C_, 1
rest 3
- notetype 12, 11, 4
- D_ 1
+ note_type 12, 11, 4
+ note D_, 1
rest 7
- D_ 1
+ note D_, 1
rest 7
octave 3
- A_ 1
+ note A_, 1
rest 7
- A_ 1
+ note A_, 1
rest 7
- notetype 12, 10, 7
- B_ 8
- B_ 8
+ note_type 12, 10, 7
+ note B_, 8
+ note B_, 8
octave 4
- C_ 8
- C_ 8
- C# 8
- C# 8
- notetype 12, 10, 6
- D_ 16
+ note C_, 8
+ note C_, 8
+ note C#, 8
+ note C#, 8
+ note_type 12, 10, 6
+ note D_, 16
rest 16
rest 16
rest 16
rest 16
- notetype 12, 9, 2
- B_ 4
+ note_type 12, 9, 2
+ note B_, 4
octave 5
- E_ 4
- D_ 4
- C_ 4
+ note E_, 4
+ note D_, 4
+ note C_, 4
octave 4
- B_ 4
+ note B_, 4
octave 5
- E_ 4
- D_ 4
- C_ 4
+ note E_, 4
+ note D_, 4
+ note C_, 4
octave 4
- B_ 4
+ note B_, 4
octave 5
- E_ 4
- D_ 4
- C_ 4
+ note E_, 4
+ note D_, 4
+ note C_, 4
octave 4
- B_ 4
- G_ 4
- F# 4
- E_ 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
octave 5
- C_ 16
- C_ 16
- loopchannel 0, Music_PokemonTower_branch_7f05a
+ note C_, 16
+ note C_, 16
+ sound_loop 0, Music_PokemonTower_branch_7f05a
Music_PokemonTower_Ch2::
vibrato 20, 3, 4
- duty 3
- notetype 12, 10, 0
+ duty_cycle 3
+ note_type 12, 10, 0
octave 5
- C_ 12
+ note C_, 12
octave 4
- E_ 4
+ note E_, 4
Music_PokemonTower_branch_7f0ee::
- notetype 12, 12, 1
+ note_type 12, 12, 1
octave 5
- C_ 8
+ note C_, 8
octave 4
- B_ 4
- notetype 12, 12, 4
- G_ 1
- F# 1
- E_ 1
- D# 1
- notetype 12, 11, 0
- G_ 8
+ note B_, 4
+ note_type 12, 12, 4
+ note G_, 1
+ note F#, 1
+ note E_, 1
+ note D#, 1
+ note_type 12, 11, 0
+ note G_, 8
octave 5
- C_ 8
+ note C_, 8
octave 4
- B_ 4
- G_ 4
- E_ 4
- G_ 4
+ note B_, 4
+ note G_, 4
+ note E_, 4
+ note G_, 4
octave 5
- C_ 8
- notetype 12, 11, 7
- C_ 8
- notetype 12, 12, 2
+ note C_, 8
+ note_type 12, 11, 7
+ note C_, 8
+ note_type 12, 12, 2
octave 4
- G_ 1
- F# 1
- E_ 1
+ note G_, 1
+ note F#, 1
+ note E_, 1
rest 1
- notetype 12, 9, 6
+ note_type 12, 9, 6
octave 3
- G_ 4
- notetype 12, 12, 7
- G_ 4
- B_ 4
- G_ 4
- B_ 4
+ note G_, 4
+ note_type 12, 12, 7
+ note G_, 4
+ note B_, 4
+ note G_, 4
+ note B_, 4
octave 4
- C_ 4
+ note C_, 4
octave 3
- B_ 4
- notetype 12, 11, 0
+ note B_, 4
+ note_type 12, 11, 0
octave 4
- C_ 16
- E_ 8
- notetype 12, 11, 7
- E_ 12
- notetype 12, 12, 5
+ note C_, 16
+ note E_, 8
+ note_type 12, 11, 7
+ note E_, 12
+ note_type 12, 12, 5
octave 5
- C_ 4
+ note C_, 4
octave 4
- B_ 4
- G_ 4
- B_ 4
- G_ 4
- F# 4
- E_ 4
- notetype 12, 11, 0
- F# 12
- G_ 4
- notetype 12, 11, 0
- F# 8
- notetype 12, 11, 7
- F# 8
- notetype 12, 11, 0
- B_ 4
- G_ 4
- F# 4
- E_ 4
- B_ 16
- notetype 12, 11, 0
+ note B_, 4
+ note G_, 4
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note_type 12, 11, 0
+ note F#, 12
+ note G_, 4
+ note_type 12, 11, 0
+ note F#, 8
+ note_type 12, 11, 7
+ note F#, 8
+ note_type 12, 11, 0
+ note B_, 4
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note B_, 16
+ note_type 12, 11, 0
octave 5
- C_ 4
+ note C_, 4
octave 4
- G_ 4
- F# 4
- E_ 4
- notetype 12, 9, 0
+ note G_, 4
+ note F#, 4
+ note E_, 4
+ note_type 12, 9, 0
octave 5
- C_ 16
- notetype 12, 11, 0
- D_ 4
+ note C_, 16
+ note_type 12, 11, 0
+ note D_, 4
octave 4
- A_ 4
- G# 4
- F# 4
- notetype 12, 2, 15
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note_type 12, 2, -7
octave 5
- D_ 16
- notetype 12, 12, 0
- E_ 4
+ note D_, 16
+ note_type 12, 12, 0
+ note E_, 4
octave 4
- B_ 4
- A_ 4
- G_ 4
+ note B_, 4
+ note A_, 4
+ note G_, 4
octave 5
- F_ 4
- C_ 4
+ note F_, 4
+ note C_, 4
octave 4
- A# 4
- G# 4
+ note A#, 4
+ note G#, 4
octave 5
- F# 4
- D_ 4
- C_ 4
+ note F#, 4
+ note D_, 4
+ note C_, 4
octave 4
- A# 4
- G# 4
- F# 4
- E_ 4
- D_ 4
- notetype 12, 11, 0
- C_ 8
- notetype 12, 9, 0
- C_ 8
- notetype 12, 8, 0
- C_ 8
- notetype 12, 7, 0
- C_ 8
- notetype 12, 6, 0
- C_ 8
- notetype 12, 6, 7
- C_ 8
+ note A#, 4
+ note G#, 4
+ note F#, 4
+ note E_, 4
+ note D_, 4
+ note_type 12, 11, 0
+ note C_, 8
+ note_type 12, 9, 0
+ note C_, 8
+ note_type 12, 8, 0
+ note C_, 8
+ note_type 12, 7, 0
+ note C_, 8
+ note_type 12, 6, 0
+ note C_, 8
+ note_type 12, 6, 7
+ note C_, 8
rest 16
- notetype 12, 10, 0
+ note_type 12, 10, 0
octave 5
- G_ 16
+ note G_, 16
octave 6
- C_ 16
+ note C_, 16
octave 5
- B_ 8
- G_ 8
- E_ 8
- G_ 8
+ note B_, 8
+ note G_, 8
+ note E_, 8
+ note G_, 8
octave 6
- C_ 16
+ note C_, 16
vibrato 0, 3, 4
- notetype 12, 10, 7
- C_ 16
- loopchannel 0, Music_PokemonTower_branch_7f0ee
+ note_type 12, 10, 7
+ note C_, 16
+ sound_loop 0, Music_PokemonTower_branch_7f0ee
Music_PokemonTower_Ch3::
vibrato 4, 1, 1
- notetype 12, 1, 3
+ note_type 12, 1, 3
rest 8
octave 5
- G_ 8
+ note G_, 8
Music_PokemonTower_branch_7f1a2::
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- D# 1
- F# 1
- D# 1
- E_ 1
+ note E_, 1
+ note D#, 1
+ note F#, 1
+ note D#, 1
+ note E_, 1
rest 7
- G_ 1
+ note G_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
- E_ 1
- D# 1
+ note E_, 1
+ note D#, 1
octave 4
- B_ 1
+ note B_, 1
rest 5
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
octave 5
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
octave 4
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
- B_ 1
+ note B_, 1
rest 7
octave 5
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- C_ 1
+ note C_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- F# 1
+ note F#, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- D_ 1
+ note D_, 1
rest 7
- D_ 1
+ note D_, 1
rest 3
- D_ 1
+ note D_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 7
- E_ 1
+ note E_, 1
rest 7
- F_ 1
+ note F_, 1
rest 7
- F_ 1
+ note F_, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- F# 1
+ note F#, 1
rest 7
- G_ 1
+ note G_, 1
rest 15
- notetype 12, 1, 5
+ note_type 12, 1, 5
octave 4
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 15
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 7
- notetype 12, 1, 3
+ note_type 12, 1, 3
octave 6
- E_ 1
+ note E_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 15
- E_ 1
+ note E_, 1
rest 15
- E_ 1
+ note E_, 1
rest 15
- E_ 1
+ note E_, 1
rest 15
- E_ 1
+ note E_, 1
rest 15
- E_ 1
+ note E_, 1
rest 7
octave 5
- E_ 1
+ note E_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- loopchannel 0, Music_PokemonTower_branch_7f1a2
+ sound_loop 0, Music_PokemonTower_branch_7f1a2
diff --git a/audio/music/printer.asm b/audio/music/printer.asm
index 853aa290..4466db5b 100755
--- a/audio/music/printer.asm
+++ b/audio/music/printer.asm
@@ -1,316 +1,316 @@
-Music_GBPrinter_Ch3:
+Music_GBPrinter_Ch3::
tempo 256
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- B_ 6
+ note B_, 6
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 6
+ note B_, 6
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
-.loop:
- E_ 1
+.loop
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
- C_ 1
- C# 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
- D# 1
- E_ 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
rest 1
octave 4
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
- A# 1
- B_ 1
+ note B_, 1
+ note A#, 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- loopchannel 0, .loop
+ sound_loop 0, .loop
diff --git a/audio/music/routes1.asm b/audio/music/routes1.asm
index bab18261..cdefb6ee 100644
--- a/audio/music/routes1.asm
+++ b/audio/music/routes1.asm
@@ -2,403 +2,403 @@ Music_Routes1_Ch1::
tempo 152
volume 7, 7
vibrato 4, 2, 3
- duty 2
- toggleperfectpitch
+ duty_cycle 2
+ toggle_perfect_pitch
Music_Routes1_branch_9be9::
- notetype 12, 10, 1
+ note_type 12, 10, 1
rest 4
octave 4
- D_ 2
- D_ 6
- D_ 2
- D_ 6
- D_ 2
- D_ 1
- C# 1
+ note D_, 2
+ note D_, 6
+ note D_, 2
+ note D_, 6
+ note D_, 2
+ note D_, 1
+ note C#, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 1
+ note C#, 1
octave 3
- A_ 2
- A_ 2
- A_ 6
- octave 4
- C# 2
- C# 6
- C# 2
- C# 4
+ note A_, 2
+ note A_, 2
+ note A_, 6
+ octave 4
+ note C#, 2
+ note C#, 6
+ note C#, 2
+ note C#, 4
octave 3
- A_ 2
+ note A_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 4
+ note C#, 4
octave 3
- A_ 2
- A_ 6
- octave 4
- D_ 2
- D_ 6
- D_ 2
- D_ 6
- D_ 2
- D_ 1
- E_ 1
- D_ 1
- C# 1
+ note A_, 2
+ note A_, 6
+ octave 4
+ note D_, 2
+ note D_, 6
+ note D_, 2
+ note D_, 6
+ note D_, 2
+ note D_, 1
+ note E_, 1
+ note D_, 1
+ note C#, 1
octave 3
- B_ 2
- A_ 2
- A_ 6
+ note B_, 2
+ note A_, 2
+ note A_, 6
octave 4
- C# 2
- C# 6
+ note C#, 2
+ note C#, 6
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
- notetype 12, 10, 2
+ note A_, 2
+ note_type 12, 10, 2
octave 4
- G_ 4
- E_ 4
- F# 2
- notetype 12, 10, 1
+ note G_, 4
+ note E_, 4
+ note F#, 2
+ note_type 12, 10, 1
octave 3
- A_ 2
- A_ 6
- A_ 2
- F# 2
- A_ 4
- B_ 2
- octave 4
- C# 2
+ note A_, 2
+ note A_, 6
+ note A_, 2
+ note F#, 2
+ note A_, 4
+ note B_, 2
+ octave 4
+ note C#, 2
octave 3
- B_ 4
- A_ 2
- F# 2
- A_ 4
- G_ 2
- E_ 2
- C# 4
- A_ 2
- octave 4
- D_ 2
+ note B_, 4
+ note A_, 2
+ note F#, 2
+ note A_, 4
+ note G_, 2
+ note E_, 2
+ note C#, 4
+ note A_, 2
+ octave 4
+ note D_, 2
octave 3
- A_ 4
- B_ 2
- G_ 2
- B_ 4
- octave 4
- D_ 2
- E_ 2
- C# 2
- D_ 2
+ note A_, 4
+ note B_, 2
+ note G_, 2
+ note B_, 4
+ octave 4
+ note D_, 2
+ note E_, 2
+ note C#, 2
+ note D_, 2
octave 3
- A_ 2
- A_ 2
- loopchannel 0, Music_Routes1_branch_9be9
- endchannel
+ note A_, 2
+ note A_, 2
+ sound_loop 0, Music_Routes1_branch_9be9
+ sound_ret
Music_Routes1_Ch2::
- duty 2
+ duty_cycle 2
Music_Routes1_branch_9c53::
- notetype 12, 13, 1
- callchannel Music_Routes1_branch_9c65
- callchannel Music_Routes1_branch_9c78
- callchannel Music_Routes1_branch_9c65
- callchannel Music_Routes1_branch_9c8d
- loopchannel 0, Music_Routes1_branch_9c53
+ note_type 12, 13, 1
+ sound_call Music_Routes1_branch_9c65
+ sound_call Music_Routes1_branch_9c78
+ sound_call Music_Routes1_branch_9c65
+ sound_call Music_Routes1_branch_9c8d
+ sound_loop 0, Music_Routes1_branch_9c53
Music_Routes1_branch_9c65::
octave 4
- D_ 1
- E_ 1
- F# 2
- F# 2
- F# 2
- D_ 1
- E_ 1
- F# 2
- F# 2
- F# 2
- D_ 1
- E_ 1
- F# 2
- F# 2
- G_ 3
- F# 1
- E_ 6
- endchannel
+ note D_, 1
+ note E_, 1
+ note F#, 2
+ note F#, 2
+ note F#, 2
+ note D_, 1
+ note E_, 1
+ note F#, 2
+ note F#, 2
+ note F#, 2
+ note D_, 1
+ note E_, 1
+ note F#, 2
+ note F#, 2
+ note G_, 3
+ note F#, 1
+ note E_, 6
+ sound_ret
Music_Routes1_branch_9c78::
- C# 1
- D_ 1
- E_ 2
- E_ 2
- E_ 2
- C# 1
- D_ 1
- E_ 2
- E_ 2
- E_ 2
- C# 1
- D_ 1
- E_ 2
- E_ 2
- F# 1
- E_ 1
- E_ 1
- F# 1
- D_ 4
- F# 2
- endchannel
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note E_, 2
+ note E_, 2
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note E_, 2
+ note E_, 2
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note E_, 2
+ note F#, 1
+ note E_, 1
+ note E_, 1
+ note F#, 1
+ note D_, 4
+ note F#, 2
+ sound_ret
Music_Routes1_branch_9c8d::
- C# 1
- D_ 1
- E_ 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- C# 2
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- notetype 12, 13, 2
- B_ 4
- notetype 6, 13, 1
+ note C#, 2
+ note_type 12, 13, 2
+ note B_, 4
+ note_type 6, 13, 1
octave 3
- B_ 1
+ note B_, 1
octave 4
- C# 1
- notetype 12, 13, 1
+ note C#, 1
+ note_type 12, 13, 1
octave 3
- B_ 1
- A_ 1
- octave 4
- C# 1
- D_ 6
- notetype 12, 13, 2
- F# 1
- G_ 1
- A_ 2
- A_ 2
- F# 2
- D_ 2
+ note B_, 1
+ note A_, 1
+ octave 4
+ note C#, 1
+ note D_, 6
+ note_type 12, 13, 2
+ note F#, 1
+ note G_, 1
+ note A_, 2
+ note A_, 2
+ note F#, 2
+ note D_, 2
octave 5
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 4
- B_ 2
+ note B_, 2
octave 5
- C# 2
- octave 4
- A_ 2
- F# 2
- D_ 3
- F# 1
- E_ 6
- F# 1
- G_ 1
- A_ 2
- A_ 2
- F# 2
- A_ 2
+ note C#, 2
+ octave 4
+ note A_, 2
+ note F#, 2
+ note D_, 3
+ note F#, 1
+ note E_, 6
+ note F#, 1
+ note G_, 1
+ note A_, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
octave 5
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 4
- B_ 3
- G_ 1
- A_ 2
+ note B_, 3
+ note G_, 1
+ note A_, 2
octave 5
- D_ 2
- C# 2
- E_ 2
- D_ 2
- notetype 12, 13, 1
- octave 4
- D_ 2
- D_ 2
- endchannel
- endchannel
+ note D_, 2
+ note C#, 2
+ note E_, 2
+ note D_, 2
+ note_type 12, 13, 1
+ octave 4
+ note D_, 2
+ note D_, 2
+ sound_ret
+ sound_ret
Music_Routes1_Ch3::
vibrato 8, 2, 5
- notetype 12, 1, 3
+ note_type 12, 1, 3
Music_Routes1_branch_9cdd::
rest 2
octave 4
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
+ note B_, 4
+ note A_, 4
octave 4
- D_ 4
+ note D_, 4
octave 3
- A_ 4
- B_ 4
- A_ 4
+ note A_, 4
+ note B_, 4
+ note A_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- A_ 4
- B_ 4
+ note A_, 4
+ note B_, 4
octave 4
- C_ 4
- C# 4
+ note C_, 4
+ note C#, 4
octave 3
- A_ 4
+ note A_, 4
octave 4
- D_ 4
+ note D_, 4
octave 3
- A_ 4
+ note A_, 4
octave 4
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
+ note B_, 4
+ note A_, 4
octave 4
- D_ 4
+ note D_, 4
octave 3
- A_ 4
- B_ 4
- A_ 4
+ note A_, 4
+ note B_, 4
+ note A_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
- B_ 4
+ note B_, 4
+ note A_, 4
+ note B_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- A_ 4
+ note A_, 4
octave 4
- D_ 4
+ note D_, 4
octave 3
- A_ 4
+ note A_, 4
octave 4
- D_ 8
+ note D_, 8
octave 3
- G_ 8
- A_ 8
+ note G_, 8
+ note A_, 8
octave 4
- C# 8
- D_ 8
+ note C#, 8
+ note D_, 8
octave 3
- G_ 8
- A_ 8
+ note G_, 8
+ note A_, 8
octave 4
- D_ 6
- loopchannel 0, Music_Routes1_branch_9cdd
- endchannel
+ note D_, 6
+ sound_loop 0, Music_Routes1_branch_9cdd
+ sound_ret
Music_Routes1_Ch4::
- dspeed 12
+ drum_speed 12
rest 4
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 4
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 4
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 4
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 4
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 4
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 4
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
- mutedsnare1 2
+ drum_note 15, 2
+ drum_note 15, 2
+ drum_note 15, 2
rest 2
- mutedsnare1 2
- mutedsnare1 2
- loopchannel 0, Music_Routes1_Ch4
- endchannel
+ drum_note 15, 2
+ drum_note 15, 2
+ sound_loop 0, Music_Routes1_Ch4
+ sound_ret
diff --git a/audio/music/routes2.asm b/audio/music/routes2.asm
index 42b4deda..e6782df3 100644
--- a/audio/music/routes2.asm
+++ b/audio/music/routes2.asm
@@ -2,424 +2,424 @@ Music_Routes2_Ch1::
tempo 152
volume 7, 7
vibrato 9, 2, 5
- duty 1
+ duty_cycle 1
Music_Routes2_branch_9dc3::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 2
- B_ 4
- octave 3
- G# 6
- F# 2
- E_ 2
- D# 1
- F# 1
- E_ 2
+ note B_, 4
+ octave 3
+ note G#, 6
+ note F#, 2
+ note E_, 2
+ note D#, 1
+ note F#, 1
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
- A_ 2
- G# 4
- F# 4
+ note E_, 2
+ note A_, 2
+ note G#, 4
+ note F#, 4
octave 2
- B_ 4
- octave 3
- G# 6
- F# 2
- E_ 2
- D# 1
- F# 1
- B_ 2
+ note B_, 4
+ octave 3
+ note G#, 6
+ note F#, 2
+ note E_, 2
+ note D#, 1
+ note F#, 1
+ note B_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
- A_ 2
- G# 4
- B_ 4
- notetype 8, 11, 2
+ note E_, 2
+ note A_, 2
+ note G#, 4
+ note B_, 4
+ note_type 8, 11, 2
octave 4
- E_ 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- E_ 2
- D# 2
+ note E_, 2
+ note D#, 2
octave 3
- G# 2
+ note G#, 2
octave 4
- D# 2
- D# 2
+ note D#, 2
+ note D#, 2
octave 3
- G# 2
+ note G#, 2
octave 4
- D# 2
- C# 2
+ note D#, 2
+ note C#, 2
octave 3
- F# 2
+ note F#, 2
octave 4
- C# 2
- C# 2
+ note C#, 2
+ note C#, 2
octave 3
- F# 2
+ note F#, 2
octave 4
- C# 2
- octave 3
- B_ 2
- E_ 2
- B_ 2
- B_ 2
- E_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- A_ 2
- F# 2
- A_ 2
- F# 2
- G# 2
- A_ 2
- A_ 2
- F# 2
- A_ 2
- G# 2
- E_ 2
- B_ 2
- B_ 2
- E_ 2
- B_ 2
- B_ 2
- E_ 2
- B_ 2
- B_ 2
- E_ 2
- B_ 2
- A_ 2
- B_ 2
- A_ 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note B_, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note A_, 2
+ note F#, 2
+ note A_, 2
+ note G#, 2
+ note E_, 2
+ note B_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
- D_ 2
+ note C#, 2
+ note D_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- D_ 2
- F# 2
- E_ 2
- D# 2
- E_ 2
+ note D_, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- E_ 2
- loopchannel 0, Music_Routes2_branch_9dc3
- endchannel
+ note E_, 2
+ sound_loop 0, Music_Routes2_branch_9dc3
+ sound_ret
Music_Routes2_Ch2::
vibrato 8, 2, 6
- duty 3
+ duty_cycle 3
Music_Routes2_branch_9e54::
- notetype 12, 13, 4
+ note_type 12, 13, 4
octave 4
- E_ 6
+ note E_, 6
octave 3
- B_ 1
+ note B_, 1
octave 4
- E_ 1
- F# 6
- A_ 2
- G# 3
- E_ 1
- F# 8
- octave 3
- D# 4
+ note E_, 1
+ note F#, 6
+ note A_, 2
+ note G#, 3
+ note E_, 1
+ note F#, 8
+ octave 3
+ note D#, 4
octave 4
- E_ 6
+ note E_, 6
octave 3
- B_ 1
+ note B_, 1
octave 4
- E_ 1
- F# 6
- A_ 2
- G# 3
- E_ 1
- B_ 8
- octave 3
- G# 4
+ note E_, 1
+ note F#, 6
+ note A_, 2
+ note G#, 3
+ note E_, 1
+ note B_, 8
+ octave 3
+ note G#, 4
octave 5
- C# 6
+ note C#, 6
octave 4
- B_ 1
- A_ 1
- B_ 6
- A_ 1
- G# 1
- A_ 6
- G# 1
- F# 1
- G# 4
- F# 2
- E_ 2
- D_ 2
- D_ 1
- E_ 1
- F# 8
- A_ 4
- G# 3
- F# 1
- E_ 8
- F# 2
- E_ 2
- D_ 2
- D_ 1
- E_ 1
- F# 2
- F# 1
- G# 1
- A_ 4
+ note B_, 1
+ note A_, 1
+ note B_, 6
+ note A_, 1
+ note G#, 1
+ note A_, 6
+ note G#, 1
+ note F#, 1
+ note G#, 4
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note D_, 1
+ note E_, 1
+ note F#, 8
+ note A_, 4
+ note G#, 3
+ note F#, 1
+ note E_, 8
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note D_, 1
+ note E_, 1
+ note F#, 2
+ note F#, 1
+ note G#, 1
+ note A_, 4
octave 5
- C# 4
+ note C#, 4
octave 4
- B_ 3
- A_ 1
- G# 8
+ note B_, 3
+ note A_, 1
+ note G#, 8
rest 4
- loopchannel 0, Music_Routes2_branch_9e54
- endchannel
+ sound_loop 0, Music_Routes2_branch_9e54
+ sound_ret
Music_Routes2_Ch3::
vibrato 9, 2, 8
Music_Routes2_branch_9e9e::
- notetype 12, 1, 1
+ note_type 12, 1, 1
octave 3
- E_ 2
+ note E_, 2
rest 2
octave 2
- B_ 6
+ note B_, 6
octave 3
- D_ 1
- C# 1
- D_ 2
- D# 2
- E_ 2
+ note D_, 1
+ note C#, 1
+ note D_, 2
+ note D#, 2
+ note E_, 2
rest 2
octave 2
- B_ 6
+ note B_, 6
octave 3
- D_ 1
- C# 1
+ note D_, 1
+ note C#, 1
octave 2
- A_ 2
+ note A_, 2
octave 3
- C# 2
- E_ 2
+ note C#, 2
+ note E_, 2
rest 2
octave 2
- B_ 6
+ note B_, 6
octave 3
- D_ 1
- C# 1
- D_ 2
- D# 2
- E_ 2
+ note D_, 1
+ note C#, 1
+ note D_, 2
+ note D#, 2
+ note E_, 2
rest 2
octave 2
- B_ 4
+ note B_, 4
octave 3
- C# 2
+ note C#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D_ 2
- F# 2
- E_ 2
+ note D_, 2
+ note F#, 2
+ note E_, 2
rest 2
octave 2
- A_ 2
+ note A_, 2
rest 2
octave 3
- D# 2
+ note D#, 2
rest 2
octave 2
- G# 2
+ note G#, 2
rest 2
octave 3
- C# 2
+ note C#, 2
rest 2
octave 2
- F# 2
+ note F#, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- E_ 2
- G# 2
- F# 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
rest 2
- A_ 2
+ note A_, 2
rest 2
- F# 2
+ note F#, 2
rest 2
- A_ 2
+ note A_, 2
rest 2
- G# 2
+ note G#, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G# 2
+ note G#, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- F# 2
+ note F#, 2
rest 2
- A_ 2
+ note A_, 2
rest 2
octave 3
- C# 2
+ note C#, 2
rest 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- C# 2
+ note C#, 2
octave 2
- B_ 2
+ note B_, 2
rest 2
octave 3
- E_ 2
+ note E_, 2
rest 2
- G# 2
+ note G#, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- loopchannel 0, Music_Routes2_branch_9e9e
- endchannel
+ sound_loop 0, Music_Routes2_branch_9e9e
+ sound_ret
Music_Routes2_Ch4::
- dspeed 12
- snare3 2
+ drum_speed 12
+ drum_note 3, 2
rest 2
- snare3 1
+ drum_note 3, 1
rest 5
- snare3 1
- snare3 1
- snare3 2
- snare3 2
- snare3 2
- rest 2
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- snare3 3
- snare3 3
- dspeed 12
- snare3 1
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ rest 2
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 3
+ drum_note 3, 3
+ drum_speed 12
+ drum_note 3, 1
rest 3
- snare3 2
+ drum_note 3, 2
rest 2
- snare3 2
+ drum_note 3, 2
rest 4
- snare3 1
- snare3 1
- snare3 2
- rest 2
- snare3 2
- rest 2
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- snare3 3
- snare3 3
- snare3 2
- snare3 2
- snare3 2
- snare3 3
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 3, 2
+ rest 2
+ drum_note 3, 2
+ rest 2
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 3
+ drum_note 3, 3
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 3
rest 3
- dspeed 12
- snare3 1
+ drum_speed 12
+ drum_note 3, 1
rest 5
- snare3 1
- snare3 1
- snare3 2
- snare3 2
- snare3 2
- rest 2
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- snare3 3
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ rest 2
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 3
rest 3
- dspeed 12
- snare3 1
+ drum_speed 12
+ drum_note 3, 1
rest 3
- snare3 2
+ drum_note 3, 2
rest 2
- snare3 2
+ drum_note 3, 2
rest 4
- snare3 1
- snare3 1
- snare3 2
- snare3 2
- snare3 2
- rest 2
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- snare3 3
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ rest 2
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 3
rest 3
- snare3 3
- snare3 3
- snare3 3
+ drum_note 3, 3
+ drum_note 3, 3
+ drum_note 3, 3
rest 3
- dspeed 12
- snare3 1
+ drum_speed 12
+ drum_note 3, 1
rest 5
- snare3 1
- snare3 1
- snare3 2
- snare3 2
- snare3 2
- rest 2
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- snare3 3
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ rest 2
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 3
rest 3
- snare3 3
+ drum_note 3, 3
rest 3
- loopchannel 0, Music_Routes2_Ch4
- endchannel
+ sound_loop 0, Music_Routes2_Ch4
+ sound_ret
diff --git a/audio/music/routes3.asm b/audio/music/routes3.asm
index d0d1672e..26a41590 100644
--- a/audio/music/routes3.asm
+++ b/audio/music/routes3.asm
@@ -1,515 +1,515 @@
Music_Routes3_Ch1::
tempo 148
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 5
+ toggle_perfect_pitch
+ note_type 12, 11, 5
octave 3
- E_ 1
- F# 1
- G_ 6
- F_ 1
- G_ 1
- E_ 1
+ note E_, 1
+ note F#, 1
+ note G_, 6
+ note F_, 1
+ note G_, 1
+ note E_, 1
rest 16
rest 15
Music_Routes3_branch_9fc3::
- notetype 12, 11, 5
- E_ 6
- D_ 1
- E_ 1
- C_ 4
- E_ 4
- C_ 6
- D_ 1
- E_ 1
- F_ 2
- G_ 2
- G_ 2
- A_ 2
- notetype 12, 10, 7
- A# 8
- F_ 8
- D_ 8
- F_ 8
- notetype 12, 11, 5
- E_ 6
- D_ 1
- E_ 1
- C_ 4
- E_ 4
- C_ 6
- D_ 1
- E_ 1
- F_ 2
- G_ 2
- G_ 2
- A_ 2
- notetype 12, 10, 7
- A# 8
- A# 8
- D_ 8
- F_ 8
- notetype 12, 11, 5
- E_ 4
- E_ 2
- F_ 2
- G_ 4
- F_ 2
- E_ 2
- B_ 2
+ note_type 12, 11, 5
+ note E_, 6
+ note D_, 1
+ note E_, 1
+ note C_, 4
+ note E_, 4
+ note C_, 6
+ note D_, 1
+ note E_, 1
+ note F_, 2
+ note G_, 2
+ note G_, 2
+ note A_, 2
+ note_type 12, 10, 7
+ note A#, 8
+ note F_, 8
+ note D_, 8
+ note F_, 8
+ note_type 12, 11, 5
+ note E_, 6
+ note D_, 1
+ note E_, 1
+ note C_, 4
+ note E_, 4
+ note C_, 6
+ note D_, 1
+ note E_, 1
+ note F_, 2
+ note G_, 2
+ note G_, 2
+ note A_, 2
+ note_type 12, 10, 7
+ note A#, 8
+ note A#, 8
+ note D_, 8
+ note F_, 8
+ note_type 12, 11, 5
+ note E_, 4
+ note E_, 2
+ note F_, 2
+ note G_, 4
+ note F_, 2
+ note E_, 2
+ note B_, 2
octave 2
- G_ 4
+ note G_, 4
octave 3
- B_ 8
- A_ 2
- notetype 8, 12, 3
- A_ 4
- F_ 4
- A_ 4
- notetype 8, 4, 15
- A_ 12
- notetype 8, 9, 0
- F_ 12
- G_ 12
- loopchannel 0, Music_Routes3_branch_9fc3
+ note B_, 8
+ note A_, 2
+ note_type 8, 12, 3
+ note A_, 4
+ note F_, 4
+ note A_, 4
+ note_type 8, 4, -7
+ note A_, 12
+ note_type 8, 9, 0
+ note F_, 12
+ note G_, 12
+ sound_loop 0, Music_Routes3_branch_9fc3
Music_Routes3_Ch2::
vibrato 8, 2, 3
- duty 2
- notetype 12, 12, 7
+ duty_cycle 2
+ note_type 12, 12, 7
octave 3
- G_ 1
- A# 1
- B_ 6
- A_ 1
- B_ 1
+ note G_, 1
+ note A#, 1
+ note B_, 6
+ note A_, 1
+ note B_, 1
octave 4
- C_ 1
+ note C_, 1
rest 15
rest 16
Music_Routes3_branch_a01a::
- notetype 12, 12, 7
- duty 2
+ note_type 12, 12, 7
+ duty_cycle 2
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 1
+ note G_, 1
octave 4
- C_ 1
- E_ 10
+ note C_, 1
+ note E_, 10
octave 3
- G_ 2
+ note G_, 2
octave 4
- C_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- C_ 2
- D_ 8
- F_ 8
- notetype 12, 12, 5
- duty 3
+ note C_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 8
+ note F_, 8
+ note_type 12, 12, 5
+ duty_cycle 3
octave 3
- A# 8
- A_ 8
- notetype 12, 12, 7
- duty 2
+ note A#, 8
+ note A_, 8
+ note_type 12, 12, 7
+ duty_cycle 2
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 1
+ note G_, 1
octave 4
- C_ 1
- E_ 10
+ note C_, 1
+ note E_, 10
octave 3
- G_ 2
+ note G_, 2
octave 4
- C_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 2
- C_ 2
- D_ 8
- F_ 8
- notetype 12, 12, 5
- duty 3
+ note C_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note D_, 8
+ note F_, 8
+ note_type 12, 12, 5
+ duty_cycle 3
octave 3
- A# 8
+ note A#, 8
octave 4
- D_ 6
- notetype 12, 12, 7
- duty 2
- C_ 1
- D_ 1
- E_ 2
- D_ 2
- E_ 2
- C_ 8
+ note D_, 6
+ note_type 12, 12, 7
+ duty_cycle 2
+ note C_, 1
+ note D_, 1
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note C_, 8
octave 3
- B_ 1
+ note B_, 1
octave 4
- C_ 1
- D_ 2
+ note C_, 1
+ note D_, 2
octave 3
- G_ 4
+ note G_, 4
octave 4
- G_ 8
- F_ 1
- E_ 1
- notetype 8, 13, 3
- F_ 4
- E_ 4
- notetype 8, 12, 4
- C_ 4
- notetype 8, 12, 5
- C_ 12
- notetype 12, 10, 0
- duty 3
+ note G_, 8
+ note F_, 1
+ note E_, 1
+ note_type 8, 13, 3
+ note F_, 4
+ note E_, 4
+ note_type 8, 12, 4
+ note C_, 4
+ note_type 8, 12, 5
+ note C_, 12
+ note_type 12, 10, 0
+ duty_cycle 3
octave 3
- A_ 8
- B_ 8
- loopchannel 0, Music_Routes3_branch_a01a
+ note A_, 8
+ note B_, 8
+ sound_loop 0, Music_Routes3_branch_a01a
Music_Routes3_Ch3::
vibrato 4, 1, 0
- notetype 6, 1, 2
+ note_type 6, 1, 2
octave 4
- G_ 2
- A# 2
- B_ 8
- A_ 8
- G_ 2
+ note G_, 2
+ note A#, 2
+ note B_, 8
+ note A_, 8
+ note G_, 2
rest 2
- G_ 7
+ note G_, 7
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 2
+ note G_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- G_ 8
- G_ 2
+ note G_, 8
+ note G_, 2
rest 2
- G_ 7
+ note G_, 7
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- G_ 2
+ note G_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- G_ 8
+ note G_, 8
Music_Routes3_branch_a0a3::
- notetype 12, 1, 2
- E_ 1
+ note_type 12, 1, 2
+ note E_, 1
rest 1
- G_ 4
- E_ 1
- E_ 1
- E_ 1
+ note G_, 4
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 4
- E_ 1
+ note G_, 4
+ note E_, 1
rest 1
- G_ 4
- E_ 1
- E_ 1
- E_ 1
+ note G_, 4
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 2
- A_ 2
- F_ 1
+ note G_, 2
+ note A_, 2
+ note F_, 1
rest 1
- A# 4
- F_ 1
- F_ 1
- F_ 1
+ note A#, 4
+ note F_, 1
+ note F_, 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A# 4
- F_ 1
+ note A#, 4
+ note F_, 1
rest 1
- A# 4
- F_ 1
- F_ 1
- F_ 1
+ note A#, 4
+ note F_, 1
+ note F_, 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A# 2
- F_ 2
- E_ 1
+ note A#, 2
+ note F_, 2
+ note E_, 1
rest 1
- G_ 4
- E_ 1
- E_ 1
- E_ 1
+ note G_, 4
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 4
- E_ 1
+ note G_, 4
+ note E_, 1
rest 1
- G_ 4
- E_ 1
- E_ 1
- E_ 1
+ note G_, 4
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 2
- A_ 2
- F_ 1
+ note G_, 2
+ note A_, 2
+ note F_, 1
rest 1
- A# 4
- F_ 1
- F_ 1
- F_ 1
+ note A#, 4
+ note F_, 1
+ note F_, 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A# 4
- F_ 1
+ note A#, 4
+ note F_, 1
rest 1
- A# 4
- F_ 1
- F_ 1
- F_ 1
+ note A#, 4
+ note F_, 1
+ note F_, 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A# 2
- A_ 2
- G_ 1
+ note A#, 2
+ note A_, 2
+ note G_, 1
rest 1
octave 5
- C_ 4
+ note C_, 4
octave 4
- G_ 1
- G_ 1
- G_ 1
+ note G_, 1
+ note G_, 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
octave 5
- C_ 4
+ note C_, 4
octave 4
- G_ 1
+ note G_, 1
rest 1
octave 5
- D_ 4
+ note D_, 4
octave 4
- G_ 1
- G_ 1
- G_ 1
+ note G_, 1
+ note G_, 1
+ note G_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
octave 5
- D_ 4
+ note D_, 4
octave 4
- F_ 1
+ note F_, 1
rest 1
octave 5
- C_ 4
+ note C_, 4
octave 4
- F_ 1
- F_ 1
- F_ 1
+ note F_, 1
+ note F_, 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
octave 5
- C_ 4
+ note C_, 4
octave 4
- F_ 1
+ note F_, 1
rest 1
- A_ 4
- F_ 1
- F_ 1
- F_ 1
+ note A_, 4
+ note F_, 1
+ note F_, 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- A_ 4
- loopchannel 0, Music_Routes3_branch_a0a3
+ note A_, 4
+ sound_loop 0, Music_Routes3_branch_a0a3
Music_Routes3_Ch4::
- dspeed 6
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 8
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare3 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare3 2
- mutedsnare2 4
- mutedsnare3 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
+ drum_speed 6
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 8
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 18, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 18, 2
+ drum_note 17, 4
+ drum_note 18, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
Music_Routes3_branch_a17a::
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare3 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare3 2
- mutedsnare2 4
- mutedsnare2 10
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare4 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 10
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 10
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 8
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 12
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- loopchannel 0, Music_Routes3_branch_a17a
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 18, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 18, 2
+ drum_note 17, 4
+ drum_note 17, 10
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 19, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 10
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 10
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 8
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 12
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ sound_loop 0, Music_Routes3_branch_a17a
diff --git a/audio/music/routes4.asm b/audio/music/routes4.asm
index 9bbf44ea..50679f54 100644
--- a/audio/music/routes4.asm
+++ b/audio/music/routes4.asm
@@ -1,681 +1,681 @@
Music_Routes4_Ch1::
tempo 148
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 10, 3, 4
- toggleperfectpitch
- notetype 12, 10, 2
+ toggle_perfect_pitch
+ note_type 12, 10, 2
octave 2
- G# 4
- G# 4
- G# 4
- notetype 12, 7, 15
- G# 4
- notetype 12, 10, 2
- G# 4
- G# 4
- G# 4
- notetype 12, 11, 7
- B_ 1
+ note G#, 4
+ note G#, 4
+ note G#, 4
+ note_type 12, 7, -7
+ note G#, 4
+ note_type 12, 10, 2
+ note G#, 4
+ note G#, 4
+ note G#, 4
+ note_type 12, 11, 7
+ note B_, 1
octave 3
- E_ 1
- F# 1
- B_ 1
+ note E_, 1
+ note F#, 1
+ note B_, 1
Music_Routes4_branch_a28a::
- notetype 12, 11, 7
- B_ 6
- E_ 2
- E_ 4
+ note_type 12, 11, 7
+ note B_, 6
+ note E_, 2
+ note E_, 4
octave 4
- E_ 4
- D_ 4
- C# 4
+ note E_, 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
- notetype 12, 11, 1
- G# 3
- notetype 12, 11, 7
- E_ 1
- F# 12
- E_ 8
- D# 4
- F# 4
- B_ 6
- E_ 2
- E_ 4
+ note B_, 4
+ note A_, 4
+ note_type 12, 11, 1
+ note G#, 3
+ note_type 12, 11, 7
+ note E_, 1
+ note F#, 12
+ note E_, 8
+ note D#, 4
+ note F#, 4
+ note B_, 6
+ note E_, 2
+ note E_, 4
octave 4
- E_ 4
- D_ 4
- C# 4
+ note E_, 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- C# 4
- notetype 12, 11, 1
- E_ 3
- notetype 12, 11, 7
- D# 1
- E_ 12
+ note C#, 4
+ note_type 12, 11, 1
+ note E_, 3
+ note_type 12, 11, 7
+ note D#, 1
+ note E_, 12
octave 3
- B_ 3
- A_ 1
- G# 8
+ note B_, 3
+ note A_, 1
+ note G#, 8
octave 4
- E_ 4
+ note E_, 4
octave 3
- D_ 2
- E_ 2
- F# 2
- G# 2
- A_ 2
- B_ 2
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
octave 4
- C# 2
- D_ 2
- D_ 2
+ note C#, 2
+ note D_, 2
+ note D_, 2
octave 3
- A_ 2
- F# 2
- E_ 2
- D_ 2
- E_ 2
- F# 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- G# 2
- A_ 2
- B_ 2
+ note A_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
octave 4
- D# 2
- E_ 2
+ note D#, 2
+ note E_, 2
octave 3
- B_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- G# 2
- B_ 2
- notetype 8, 11, 5
- A_ 4
- G# 4
- F# 4
+ note B_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note B_, 2
+ note_type 8, 11, 5
+ note A_, 4
+ note G#, 4
+ note F#, 4
octave 4
- E_ 4
- D# 4
- C# 4
- C# 4
+ note E_, 4
+ note D#, 4
+ note C#, 4
+ note C#, 4
octave 3
- B_ 4
- A_ 4
- B_ 4
+ note B_, 4
+ note A_, 4
+ note B_, 4
octave 4
- C# 4
- D# 4
+ note C#, 4
+ note D#, 4
octave 3
- E_ 3
- F# 3
- G# 3
- A_ 3
- B_ 4
+ note E_, 3
+ note F#, 3
+ note G#, 3
+ note A_, 3
+ note B_, 4
octave 4
- C# 4
- D# 4
- E_ 3
+ note C#, 4
+ note D#, 4
+ note E_, 3
octave 3
- B_ 3
- G# 3
- F# 3
- E_ 3
- F# 3
- G# 3
- A_ 3
- loopchannel 0, Music_Routes4_branch_a28a
+ note B_, 3
+ note G#, 3
+ note F#, 3
+ note E_, 3
+ note F#, 3
+ note G#, 3
+ note A_, 3
+ sound_loop 0, Music_Routes4_branch_a28a
Music_Routes4_Ch2::
vibrato 12, 2, 4
- duty 1
- notetype 12, 9, 2
+ duty_cycle 1
+ note_type 12, 9, 2
octave 3
- E_ 3
- F# 1
- notetype 12, 9, 0
- E_ 12
- notetype 12, 9, 2
+ note E_, 3
+ note F#, 1
+ note_type 12, 9, 0
+ note E_, 12
+ note_type 12, 9, 2
octave 2
- B_ 3
+ note B_, 3
octave 3
- C_ 1
- notetype 12, 9, 0
+ note C_, 1
+ note_type 12, 9, 0
octave 2
- B_ 8
- duty 3
- notetype 12, 12, 7
+ note B_, 8
+ duty_cycle 3
+ note_type 12, 12, 7
octave 3
- E_ 1
- F# 1
- B_ 1
+ note E_, 1
+ note F#, 1
+ note B_, 1
octave 4
- D# 1
+ note D#, 1
Music_Routes4_branch_a325::
- notetype 12, 12, 7
- E_ 6
+ note_type 12, 12, 7
+ note E_, 6
octave 3
- B_ 2
- B_ 4
+ note B_, 2
+ note B_, 4
octave 4
- B_ 4
- A_ 4
- G# 4
- F# 4
- F# 1
- A_ 1
- G# 1
- F# 1
- notetype 12, 12, 2
- G# 3
- E_ 1
- notetype 12, 10, 0
+ note B_, 4
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note F#, 1
+ note A_, 1
+ note G#, 1
+ note F#, 1
+ note_type 12, 12, 2
+ note G#, 3
+ note E_, 1
+ note_type 12, 10, 0
octave 3
- B_ 12
- duty 0
- notetype 12, 12, 2
+ note B_, 12
+ duty_cycle 0
+ note_type 12, 12, 2
octave 2
- B_ 3
- notetype 12, 12, 7
+ note B_, 3
+ note_type 12, 12, 7
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 8
+ note B_, 8
octave 3
- D# 4
- duty 3
+ note D#, 4
+ duty_cycle 3
octave 4
- E_ 6
+ note E_, 6
octave 3
- B_ 2
- B_ 4
+ note B_, 2
+ note B_, 4
octave 4
- B_ 4
- A_ 4
- G# 4
- F# 4
- A_ 1
+ note B_, 4
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note A_, 1
octave 5
- C# 1
+ note C#, 1
octave 4
- B_ 1
- A_ 1
- notetype 12, 12, 2
- B_ 3
- notetype 12, 12, 7
- A_ 1
- notetype 12, 11, 0
- G# 6
- notetype 12, 9, 0
- G# 6
- notetype 12, 7, 0
- G# 6
- notetype 12, 6, 15
- G# 6
- notetype 12, 12, 7
- G# 4
- notetype 8, 12, 3
- A_ 4
- G# 4
- F# 4
- notetype 8, 9, 0
- F# 6
- notetype 8, 7, 15
- F# 6
- duty 0
- notetype 8, 9, 0
+ note B_, 1
+ note A_, 1
+ note_type 12, 12, 2
+ note B_, 3
+ note_type 12, 12, 7
+ note A_, 1
+ note_type 12, 11, 0
+ note G#, 6
+ note_type 12, 9, 0
+ note G#, 6
+ note_type 12, 7, 0
+ note G#, 6
+ note_type 12, 6, -7
+ note G#, 6
+ note_type 12, 12, 7
+ note G#, 4
+ note_type 8, 12, 3
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note_type 8, 9, 0
+ note F#, 6
+ note_type 8, 7, -7
+ note F#, 6
+ duty_cycle 0
+ note_type 8, 9, 0
octave 3
- F# 4
- E_ 4
- F# 4
- A_ 6
- duty 3
- notetype 8, 12, 7
+ note F#, 4
+ note E_, 4
+ note F#, 4
+ note A_, 6
+ duty_cycle 3
+ note_type 8, 12, 7
octave 4
- F# 6
- G# 4
- F# 4
- notetype 8, 12, 4
- E_ 4
- notetype 8, 10, 0
- E_ 12
- duty 0
- notetype 8, 9, 0
+ note F#, 6
+ note G#, 4
+ note F#, 4
+ note_type 8, 12, 4
+ note E_, 4
+ note_type 8, 10, 0
+ note E_, 12
+ duty_cycle 0
+ note_type 8, 9, 0
octave 3
- E_ 4
- D# 4
- E_ 4
- G# 6
- duty 3
- notetype 8, 12, 7
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note G#, 6
+ duty_cycle 3
+ note_type 8, 12, 7
octave 4
- E_ 6
- F# 4
- D# 4
+ note E_, 6
+ note F#, 4
+ note D#, 4
octave 3
- B_ 4
- notetype 8, 10, 0
+ note B_, 4
+ note_type 8, 10, 0
octave 4
- B_ 16
- notetype 8, 10, 7
- B_ 8
- notetype 8, 11, 0
- A_ 6
- notetype 8, 11, 7
- A_ 6
- notetype 12, 10, 7
- G# 1
- F# 1
- notetype 12, 11, 0
- E_ 12
- notetype 12, 10, 0
- E_ 8
- notetype 12, 10, 7
- E_ 10
- loopchannel 0, Music_Routes4_branch_a325
+ note B_, 16
+ note_type 8, 10, 7
+ note B_, 8
+ note_type 8, 11, 0
+ note A_, 6
+ note_type 8, 11, 7
+ note A_, 6
+ note_type 12, 10, 7
+ note G#, 1
+ note F#, 1
+ note_type 12, 11, 0
+ note E_, 12
+ note_type 12, 10, 0
+ note E_, 8
+ note_type 12, 10, 7
+ note E_, 10
+ sound_loop 0, Music_Routes4_branch_a325
Music_Routes4_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- D# 1
+ note D#, 1
rest 3
Music_Routes4_branch_a3d7::
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
- F# 1
- F# 1
- F# 1
- F# 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
- G# 1
- G# 1
- G# 1
- G# 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
- G# 1
- G# 1
- G# 1
- G# 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
- F# 1
- F# 1
- F# 1
- F# 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- A_ 1
+ note A_, 1
rest 1
- B_ 1
+ note B_, 1
rest 3
- B_ 1
- B_ 1
- B_ 1
- B_ 1
- B_ 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 3
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
- F# 1
- F# 1
- F# 1
- F# 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- D_ 1
+ note D_, 1
rest 3
- D_ 1
- D_ 1
- D_ 1
- D_ 1
- D_ 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
rest 1
- D_ 1
+ note D_, 1
rest 3
- D_ 1
+ note D_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
- G# 1
- G# 1
- G# 1
- G# 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
- F# 1
- F# 1
- F# 1
- F# 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- B_ 1
+ note B_, 1
rest 3
- B_ 1
- B_ 1
- B_ 1
- B_ 1
- B_ 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 3
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
- G# 1
- G# 1
- G# 1
- G# 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
+ note G#, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- E_ 1
- E_ 1
- E_ 1
- E_ 1
- E_ 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
+ note E_, 1
rest 1
- E_ 1
+ note E_, 1
rest 3
- D# 1
+ note D#, 1
rest 1
- loopchannel 0, Music_Routes4_branch_a3d7
+ sound_loop 0, Music_Routes4_branch_a3d7
Music_Routes4_Ch4::
- dspeed 12
+ drum_speed 12
rest 16
rest 12
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
Music_Routes4_branch_a4a8::
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare3 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare2 2
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare2 4
- mutedsnare4 1
- mutedsnare4 1
- mutedsnare3 1
- mutedsnare3 1
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- mutedsnare2 2
- loopchannel 0, Music_Routes4_branch_a4a8
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 18, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 17, 2
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 17, 4
+ drum_note 19, 1
+ drum_note 19, 1
+ drum_note 18, 1
+ drum_note 18, 1
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ drum_note 17, 2
+ sound_loop 0, Music_Routes4_branch_a4a8
diff --git a/audio/music/safarizone.asm b/audio/music/safarizone.asm
index 45d84fd0..0ca2f71a 100644
--- a/audio/music/safarizone.asm
+++ b/audio/music/safarizone.asm
@@ -2,110 +2,110 @@ Music_SafariZone_Ch1::
tempo 132
volume 7, 7
vibrato 6, 3, 4
- toggleperfectpitch
- duty 2
- notetype 12, 9, 2
+ toggle_perfect_pitch
+ duty_cycle 2
+ note_type 12, 9, 2
octave 3
- pitchbend 0, 73
- C_ 1
- pitchbend 0, 73
- G_ 1
- pitchbend 0, 73
- C_ 1
- pitchbend 0, 73
- G_ 1
+ pitch_slide 1, 4, A_
+ note C_, 1
+ pitch_slide 1, 4, A_
+ note G_, 1
+ pitch_slide 1, 4, A_
+ note C_, 1
+ pitch_slide 1, 4, A_
+ note G_, 1
rest 4
- duty 3
+ duty_cycle 3
Music_SafariZone_branch_bc4f::
- callchannel Music_SafariZone_branch_bc5f
- notetype 12, 10, 4
- F# 4
- callchannel Music_SafariZone_branch_bc5f
- notetype 12, 10, 4
- F# 4
- loopchannel 0, Music_SafariZone_branch_bc4f
+ sound_call Music_SafariZone_branch_bc5f
+ note_type 12, 10, 4
+ note F#, 4
+ sound_call Music_SafariZone_branch_bc5f
+ note_type 12, 10, 4
+ note F#, 4
+ sound_loop 0, Music_SafariZone_branch_bc4f
Music_SafariZone_branch_bc5f::
- notetype 12, 10, 2
+ note_type 12, 10, 2
octave 3
- C_ 4
- G_ 4
- C_ 4
- G_ 4
- C_ 4
- G_ 4
- C_ 4
- endchannel
+ note C_, 4
+ note G_, 4
+ note C_, 4
+ note G_, 4
+ note C_, 4
+ note G_, 4
+ note C_, 4
+ sound_ret
Music_SafariZone_Ch2::
- duty 2
+ duty_cycle 2
vibrato 8, 2, 5
- notetype 12, 10, 2
+ note_type 12, 10, 2
octave 4
- G_ 1
- D_ 1
- G_ 1
- D_ 1
+ note G_, 1
+ note D_, 1
+ note G_, 1
+ note D_, 1
rest 4
- duty 3
+ duty_cycle 3
Music_SafariZone_branch_bc79::
- callchannel Music_SafariZone_branch_bc89
- notetype 12, 11, 5
- A_ 4
- callchannel Music_SafariZone_branch_bc89
- notetype 12, 11, 5
- B_ 4
- loopchannel 0, Music_SafariZone_branch_bc79
+ sound_call Music_SafariZone_branch_bc89
+ note_type 12, 11, 5
+ note A_, 4
+ sound_call Music_SafariZone_branch_bc89
+ note_type 12, 11, 5
+ note B_, 4
+ sound_loop 0, Music_SafariZone_branch_bc79
Music_SafariZone_branch_bc89::
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 3
- G_ 4
- D_ 4
- G_ 4
- D_ 4
- G_ 4
- D_ 4
- G_ 4
- endchannel
+ note G_, 4
+ note D_, 4
+ note G_, 4
+ note D_, 4
+ note G_, 4
+ note D_, 4
+ note G_, 4
+ sound_ret
Music_SafariZone_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 8
Music_SafariZone_branch_bc97::
- callchannel Music_SafariZone_branch_bca5
+ sound_call Music_SafariZone_branch_bca5
octave 4
- A_ 4
- callchannel Music_SafariZone_branch_bca5
+ note A_, 4
+ sound_call Music_SafariZone_branch_bca5
octave 4
- B_ 4
- loopchannel 0, Music_SafariZone_branch_bc97
+ note B_, 4
+ sound_loop 0, Music_SafariZone_branch_bc97
Music_SafariZone_branch_bca5::
octave 3
- A_ 2
+ note A_, 2
rest 2
octave 4
- D_ 2
+ note D_, 2
rest 2
octave 3
- A_ 2
+ note A_, 2
rest 2
octave 4
- D_ 2
+ note D_, 2
rest 2
octave 3
- A_ 2
+ note A_, 2
rest 2
octave 4
- D_ 2
+ note D_, 2
rest 2
octave 3
- A_ 2
+ note A_, 2
rest 2
- endchannel
+ sound_ret
diff --git a/audio/music/silphco.asm b/audio/music/silphco.asm
index 2b6d8134..3c7512ba 100644
--- a/audio/music/silphco.asm
+++ b/audio/music/silphco.asm
@@ -1,323 +1,323 @@
Music_SilphCo_Ch1::
tempo 160
volume 7, 7
- duty 3
- toggleperfectpitch
+ duty_cycle 3
+ toggle_perfect_pitch
vibrato 8, 2, 2
- notetype 6, 11, 3
+ note_type 6, 11, 3
octave 2
- E_ 1
- F# 1
- G# 1
- A# 1
- octave 3
- C_ 1
- notetype 6, 10, 0
- C_ 12
- notetype 6, 11, 3
- C_ 2
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A#, 1
+ octave 3
+ note C_, 1
+ note_type 6, 10, 0
+ note C_, 12
+ note_type 6, 11, 3
+ note C_, 2
octave 2
- B_ 1
- A# 1
- G# 1
- F# 1
- E_ 1
- E_ 2
+ note B_, 1
+ note A#, 1
+ note G#, 1
+ note F#, 1
+ note E_, 1
+ note E_, 2
rest 2
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 2
Music_SilphCo_branch_7f26d::
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- A# 2
+ note A#, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 2
octave 3
- C_ 2
+ note C_, 2
rest 2
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
octave 2
- A# 2
+ note A#, 2
rest 6
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 10
- E_ 1
- F# 1
- G# 1
- A_ 1
- notetype 6, 10, 0
- B_ 12
- notetype 6, 11, 3
- B_ 1
- A_ 1
- G_ 1
- F_ 1
- E_ 1
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
+ note_type 6, 10, 0
+ note B_, 12
+ note_type 6, 11, 3
+ note B_, 1
+ note A_, 1
+ note G_, 1
+ note F_, 1
+ note E_, 1
rest 11
- F_ 1
- G# 1
- A# 1
- B_ 1
- notetype 6, 10, 0
- octave 3
- C_ 12
- notetype 6, 11, 3
- C_ 1
+ note F_, 1
+ note G#, 1
+ note A#, 1
+ note B_, 1
+ note_type 6, 10, 0
+ octave 3
+ note C_, 12
+ note_type 6, 11, 3
+ note C_, 1
octave 2
- B_ 1
- A_ 1
- G_ 1
- F_ 1
+ note B_, 1
+ note A_, 1
+ note G_, 1
+ note F_, 1
rest 11
- F# 1
- B_ 1
- octave 3
- C_ 1
- C# 1
- notetype 6, 10, 0
- D_ 12
- notetype 6, 11, 3
- D_ 1
- C_ 1
+ note F#, 1
+ note B_, 1
+ octave 3
+ note C_, 1
+ note C#, 1
+ note_type 6, 10, 0
+ note D_, 12
+ note_type 6, 11, 3
+ note D_, 1
+ note C_, 1
octave 2
- A# 1
- G_ 1
- F_ 1
+ note A#, 1
+ note G_, 1
+ note F_, 1
rest 11
- F_ 1
- G# 1
- A# 1
- B_ 1
- notetype 6, 10, 0
- octave 3
- C_ 12
- notetype 6, 11, 3
- C_ 1
+ note F_, 1
+ note G#, 1
+ note A#, 1
+ note B_, 1
+ note_type 6, 10, 0
+ octave 3
+ note C_, 12
+ note_type 6, 11, 3
+ note C_, 1
octave 2
- B_ 1
- G# 1
- F_ 1
- E_ 1
+ note B_, 1
+ note G#, 1
+ note F_, 1
+ note E_, 1
rest 7
- notetype 6, 8, 0
- B_ 16
- notetype 6, 11, 0
+ note_type 6, 8, 0
+ note B_, 16
+ note_type 6, 11, 0
octave 3
- E_ 8
+ note E_, 8
tempo 124
- notetype 6, 11, 3
+ note_type 6, 11, 3
octave 2
- B_ 2
+ note B_, 2
rest 10
- B_ 2
+ note B_, 2
rest 10
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 16
rest 6
- A_ 2
+ note A_, 2
rest 6
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
- A# 2
- A_ 2
- A# 2
- B_ 2
- A# 2
- callchannel Music_SilphCo_branch_7f3f0
- callchannel Music_SilphCo_branch_7f3f0
- callchannel Music_SilphCo_branch_7f3f0
+ note B_, 2
+ note A#, 2
+ note B_, 2
+ note A#, 2
+ note A_, 2
+ note A#, 2
+ note B_, 2
+ note A#, 2
+ sound_call Music_SilphCo_branch_7f3f0
+ sound_call Music_SilphCo_branch_7f3f0
+ sound_call Music_SilphCo_branch_7f3f0
rest 4
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
octave 2
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- A# 2
+ note A#, 2
rest 6
- A_ 2
+ note A_, 2
rest 6
- A_ 2
+ note A_, 2
rest 6
- A_ 2
+ note A_, 2
rest 6
- A_ 2
+ note A_, 2
rest 6
- A_ 2
+ note A_, 2
rest 6
- A_ 2
+ note A_, 2
rest 6
- A# 2
+ note A#, 2
rest 6
- A# 2
+ note A#, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
octave 3
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
octave 2
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
octave 3
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
octave 4
- C_ 2
+ note C_, 2
rest 6
- C_ 2
+ note C_, 2
rest 6
octave 2
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
octave 4
- E_ 2
+ note E_, 2
rest 6
- E_ 2
+ note E_, 2
rest 6
- D# 2
+ note D#, 2
rest 6
- D# 2
+ note D#, 2
rest 2
octave 2
- B_ 1
- A# 1
- G# 1
- F# 1
- E_ 1
- notetype 6, 6, 0
- E_ 16
- E_ 11
- notetype 6, 11, 3
- E_ 1
- F# 1
- G# 1
- A# 1
- octave 3
- C_ 1
- notetype 6, 3, 15
- C_ 16
- notetype 6, 10, 0
- C_ 11
- notetype 6, 9, 3
+ note B_, 1
+ note A#, 1
+ note G#, 1
+ note F#, 1
+ note E_, 1
+ note_type 6, 6, 0
+ note E_, 16
+ note E_, 11
+ note_type 6, 11, 3
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A#, 1
+ octave 3
+ note C_, 1
+ note_type 6, 3, -7
+ note C_, 16
+ note_type 6, 10, 0
+ note C_, 11
+ note_type 6, 9, 3
octave 2
- B_ 1
- A# 1
- G# 1
- F# 1
- E_ 1
- notetype 6, 3, 15
- E_ 16
- notetype 6, 9, 0
- E_ 11
- notetype 6, 11, 3
- F_ 1
- G_ 1
- A# 1
- octave 3
- C_ 1
- D_ 1
- notetype 6, 3, 15
- D_ 16
- notetype 6, 10, 7
- D_ 11
+ note B_, 1
+ note A#, 1
+ note G#, 1
+ note F#, 1
+ note E_, 1
+ note_type 6, 3, -7
+ note E_, 16
+ note_type 6, 9, 0
+ note E_, 11
+ note_type 6, 11, 3
+ note F_, 1
+ note G_, 1
+ note A#, 1
+ octave 3
+ note C_, 1
+ note D_, 1
+ note_type 6, 3, -7
+ note D_, 16
+ note_type 6, 10, 7
+ note D_, 11
rest 4
rest 4
tempo 128
@@ -344,633 +344,633 @@ Music_SilphCo_branch_7f26d::
rest 4
tempo 160
rest 4
- notetype 6, 4, 3
+ note_type 6, 4, 3
octave 2
- B_ 2
+ note B_, 2
rest 6
- notetype 6, 6, 3
- B_ 2
+ note_type 6, 6, 3
+ note B_, 2
rest 6
- notetype 6, 8, 3
- B_ 2
+ note_type 6, 8, 3
+ note B_, 2
rest 6
- notetype 6, 5, 0
- B_ 8
- notetype 6, 11, 3
- B_ 2
+ note_type 6, 5, 0
+ note B_, 8
+ note_type 6, 11, 3
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 2
- loopchannel 0, Music_SilphCo_branch_7f26d
+ sound_loop 0, Music_SilphCo_branch_7f26d
Music_SilphCo_branch_7f3f0::
octave 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 3
- C_ 2
- endchannel
+ note C_, 2
+ sound_ret
Music_SilphCo_Ch2::
vibrato 10, 3, 2
- duty 3
- notetype 6, 12, 3
+ duty_cycle 3
+ note_type 6, 12, 3
octave 3
- E_ 1
- F# 1
- G# 1
- A# 1
+ note E_, 1
+ note F#, 1
+ note G#, 1
+ note A#, 1
octave 4
- C_ 1
- notetype 6, 11, 0
- C_ 12
- notetype 6, 12, 3
- C_ 2
- octave 3
- B_ 1
- A# 1
- G# 1
- F# 1
- E_ 1
- E_ 2
+ note C_, 1
+ note_type 6, 11, 0
+ note C_, 12
+ note_type 6, 12, 3
+ note C_, 2
+ octave 3
+ note B_, 1
+ note A#, 1
+ note G#, 1
+ note F#, 1
+ note E_, 1
+ note E_, 2
rest 2
octave 2
- G_ 2
+ note G_, 2
rest 6
- F# 2
+ note F#, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G# 2
+ note G#, 2
rest 2
Music_SilphCo_branch_7f42e::
- E_ 2
+ note E_, 2
rest 2
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- F# 2
+ note F#, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G# 2
+ note G#, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 2
- notetype 6, 11, 7
- duty 2
+ note_type 6, 11, 7
+ duty_cycle 2
octave 4
- E_ 8
- D# 8
- E_ 8
- F_ 8
- E_ 8
- D# 8
- D_ 8
- D# 8
- E_ 8
- F_ 8
- F# 8
- G_ 8
- G# 8
- D# 8
- D_ 8
- D# 8
- duty 3
- notetype 6, 6, 15
- E_ 16
- notetype 6, 12, 0
- B_ 16
- notetype 6, 12, 4
- octave 3
- E_ 4
- D# 4
- E_ 4
- F_ 4
- E_ 4
- D# 4
- D_ 4
- D# 4
- E_ 4
- F_ 4
- F# 4
- G_ 4
- G# 4
- D# 4
- D_ 4
- D# 4
- notetype 6, 12, 2
- duty 1
+ note E_, 8
+ note D#, 8
+ note E_, 8
+ note F_, 8
+ note E_, 8
+ note D#, 8
+ note D_, 8
+ note D#, 8
+ note E_, 8
+ note F_, 8
+ note F#, 8
+ note G_, 8
+ note G#, 8
+ note D#, 8
+ note D_, 8
+ note D#, 8
+ duty_cycle 3
+ note_type 6, 6, -7
+ note E_, 16
+ note_type 6, 12, 0
+ note B_, 16
+ note_type 6, 12, 4
+ octave 3
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note E_, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note_type 6, 12, 2
+ duty_cycle 1
octave 4
- E_ 4
- D# 4
- E_ 4
- F_ 4
- E_ 4
- D# 4
- D_ 4
- D# 4
- E_ 4
- notetype 6, 12, 4
- duty 3
- octave 3
- F_ 4
- F# 4
- G_ 4
- G# 4
- D# 4
- D_ 4
- D# 4
- E_ 4
- D# 4
- E_ 4
- notetype 6, 12, 0
- F_ 8
- notetype 6, 11, 7
- F_ 8
- notetype 6, 8, 10
- F_ 4
- notetype 6, 12, 4
- duty 3
- F_ 4
- E_ 4
- F_ 4
- notetype 6, 10, 0
- F# 8
- notetype 6, 11, 0
- F# 8
- notetype 6, 9, 9
- F# 4
- notetype 6, 12, 4
- F# 4
- F_ 4
- F# 4
- notetype 6, 9, 0
- G_ 12
- notetype 6, 5, 9
- G_ 8
- notetype 6, 12, 4
- G_ 4
- F# 4
- G_ 4
- F# 4
- F_ 4
- F# 4
- F_ 4
- E_ 4
- F_ 4
- E_ 4
- D# 4
- D_ 4
- C# 4
- D_ 4
- D# 4
- D_ 4
- notetype 6, 12, 2
- duty 1
- F_ 4
- F# 4
- G_ 4
- G# 4
- A_ 4
- notetype 6, 11, 4
- duty 3
- D# 4
- D_ 4
- D# 4
- notetype 6, 12, 2
- duty 1
- F_ 4
- F# 4
- G_ 4
- G# 4
- A# 4
- notetype 6, 11, 4
- duty 3
- D# 4
- D_ 4
- D# 4
- notetype 6, 12, 2
- duty 1
- F_ 4
- F# 4
- G_ 4
- G# 4
- B_ 4
- notetype 6, 11, 4
- duty 3
- D# 4
- D_ 4
- D# 4
- notetype 6, 12, 2
- duty 1
- F_ 4
- F# 4
- G_ 4
- G# 4
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note E_, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 4
+ note_type 6, 12, 4
+ duty_cycle 3
+ octave 3
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note_type 6, 12, 0
+ note F_, 8
+ note_type 6, 11, 7
+ note F_, 8
+ note_type 6, 8, -2
+ note F_, 4
+ note_type 6, 12, 4
+ duty_cycle 3
+ note F_, 4
+ note E_, 4
+ note F_, 4
+ note_type 6, 10, 0
+ note F#, 8
+ note_type 6, 11, 0
+ note F#, 8
+ note_type 6, 9, -1
+ note F#, 4
+ note_type 6, 12, 4
+ note F#, 4
+ note F_, 4
+ note F#, 4
+ note_type 6, 9, 0
+ note G_, 12
+ note_type 6, 5, -1
+ note G_, 8
+ note_type 6, 12, 4
+ note G_, 4
+ note F#, 4
+ note G_, 4
+ note F#, 4
+ note F_, 4
+ note F#, 4
+ note F_, 4
+ note E_, 4
+ note F_, 4
+ note E_, 4
+ note D#, 4
+ note D_, 4
+ note C#, 4
+ note D_, 4
+ note D#, 4
+ note D_, 4
+ note_type 6, 12, 2
+ duty_cycle 1
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note A_, 4
+ note_type 6, 11, 4
+ duty_cycle 3
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note_type 6, 12, 2
+ duty_cycle 1
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note A#, 4
+ note_type 6, 11, 4
+ duty_cycle 3
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note_type 6, 12, 2
+ duty_cycle 1
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note B_, 4
+ note_type 6, 11, 4
+ duty_cycle 3
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note_type 6, 12, 2
+ duty_cycle 1
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
octave 4
- C_ 4
- notetype 6, 11, 4
- duty 3
+ note C_, 4
+ note_type 6, 11, 4
+ duty_cycle 3
octave 3
- D# 4
- D_ 4
- D# 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
rest 4
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 2
- duty 0
+ duty_cycle 0
octave 4
- E_ 2
+ note E_, 2
rest 2
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- G# 2
+ note G#, 2
rest 6
- duty 3
+ duty_cycle 3
octave 3
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G_ 2
+ note G_, 2
rest 2
- duty 0
+ duty_cycle 0
octave 4
- E_ 2
+ note E_, 2
rest 2
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 2
- duty 3
+ duty_cycle 3
octave 3
- G_ 2
+ note G_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
octave 4
- C_ 2
+ note C_, 2
rest 2
octave 3
- G_ 2
+ note G_, 2
rest 2
octave 4
- C_ 2
+ note C_, 2
rest 2
octave 3
- G_ 2
+ note G_, 2
rest 2
octave 4
- C_ 2
+ note C_, 2
rest 2
octave 3
- G_ 2
+ note G_, 2
rest 2
octave 4
- C_ 2
+ note C_, 2
rest 2
octave 3
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
octave 4
- C_ 2
+ note C_, 2
rest 2
octave 3
- G_ 2
+ note G_, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
- G_ 2
+ note G_, 2
rest 2
octave 4
- C_ 2
+ note C_, 2
rest 2
octave 3
- G_ 2
+ note G_, 2
rest 2
- notetype 6, 8, 7
+ note_type 6, 8, 7
octave 5
- E_ 4
- D# 4
- E_ 4
- F_ 4
- E_ 4
- D# 4
- D_ 4
- D# 4
- E_ 4
- F_ 4
- F# 4
- G_ 4
- G# 4
- D# 4
- D_ 4
- D# 4
- rest 4
- notetype 6, 4, 3
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note E_, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ rest 4
+ note_type 6, 4, 3
octave 2
- G_ 2
+ note G_, 2
rest 6
- notetype 6, 6, 3
- F# 2
+ note_type 6, 6, 3
+ note F#, 2
rest 6
- notetype 6, 8, 3
- G_ 2
+ note_type 6, 8, 3
+ note G_, 2
rest 6
- notetype 6, 4, 15
- G# 8
- notetype 6, 11, 4
- G_ 2
+ note_type 6, 4, -7
+ note G#, 8
+ note_type 6, 11, 4
+ note G_, 2
rest 6
- F# 2
+ note F#, 2
rest 6
- G_ 2
+ note G_, 2
rest 6
- G# 2
+ note G#, 2
rest 2
- loopchannel 0, Music_SilphCo_branch_7f42e
+ sound_loop 0, Music_SilphCo_branch_7f42e
Music_SilphCo_Ch3::
vibrato 8, 1, 1
- notetype 12, 1, 1
+ note_type 12, 1, 1
rest 12
octave 5
- E_ 4
- D# 4
- E_ 4
- F_ 4
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
Music_SilphCo_branch_7f5c9::
- E_ 4
- D# 4
- D_ 4
- D# 4
- E_ 4
- F_ 4
- F# 4
- G_ 4
- G# 4
- D# 4
- D_ 4
- D# 4
- E_ 1
+ note E_, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G# 1
+ note G#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 5
- F_ 1
+ note F_, 1
rest 5
- F_ 1
+ note F_, 1
rest 3
- E_ 1
+ note E_, 1
rest 11
- D# 1
+ note D#, 1
rest 3
- E_ 1
+ note E_, 1
rest 5
- F_ 1
+ note F_, 1
rest 5
- F_ 1
+ note F_, 1
rest 3
- E_ 1
+ note E_, 1
rest 11
- D# 1
+ note D#, 1
rest 3
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 3
- F_ 1
+ note F_, 1
rest 3
- F_ 1
+ note F_, 1
rest 3
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- F# 1
+ note F#, 1
rest 3
- F_ 1
+ note F_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- F_ 1
+ note F_, 1
rest 3
- E_ 1
+ note E_, 1
rest 3
- D# 1
+ note D#, 1
rest 3
- D_ 1
+ note D_, 1
rest 1
- D_ 8
- F_ 8
- D_ 8
- F# 8
- D_ 8
- G_ 8
- D_ 8
- A_ 8
- E_ 4
- D# 4
- E_ 4
- F_ 4
+ note D_, 8
+ note F_, 8
+ note D_, 8
+ note F#, 8
+ note D_, 8
+ note G_, 8
+ note D_, 8
+ note A_, 8
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
octave 5
- E_ 2
- D# 2
- E_ 2
- F_ 2
- E_ 2
- D# 2
- D_ 2
- D# 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note D#, 2
+ note D_, 2
+ note D#, 2
octave 4
- E_ 4
- D# 4
- E_ 4
- F_ 4
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
octave 5
- E_ 2
- F_ 2
- F# 2
- G_ 2
- G# 2
- D# 2
- D_ 2
- D# 2
+ note E_, 2
+ note F_, 2
+ note F#, 2
+ note G_, 2
+ note G#, 2
+ note D#, 2
+ note D_, 2
+ note D#, 2
octave 6
- E_ 4
- D# 4
- E_ 4
- F_ 4
- E_ 4
- D# 4
- D_ 4
- D# 4
- E_ 4
- F_ 4
- F# 4
- G_ 4
- G# 4
- D# 4
- D_ 4
- D# 4
- notetype 6, 1, 1
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note E_, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note D#, 4
+ note D_, 4
+ note D#, 4
+ note_type 6, 1, 1
rest 4
rest 4
rest 4
@@ -987,14 +987,14 @@ Music_SilphCo_branch_7f5c9::
rest 4
rest 4
rest 4
- notetype 12, 1, 1
+ note_type 12, 1, 1
rest 4
rest 4
rest 4
rest 4
octave 5
- E_ 4
- D# 4
- E_ 4
- F_ 4
- loopchannel 0, Music_SilphCo_branch_7f5c9
+ note E_, 4
+ note D#, 4
+ note E_, 4
+ note F_, 4
+ sound_loop 0, Music_SilphCo_branch_7f5c9
diff --git a/audio/music/ssanne.asm b/audio/music/ssanne.asm
index ea6b1a0f..4dae83bc 100644
--- a/audio/music/ssanne.asm
+++ b/audio/music/ssanne.asm
@@ -1,338 +1,338 @@
Music_SSAnne_Ch1::
tempo 128
volume 7, 7
- duty 1
+ duty_cycle 1
vibrato 8, 3, 4
- toggleperfectpitch
+ toggle_perfect_pitch
Music_SSAnne_branch_b3b2::
- notetype 12, 10, 4
+ note_type 12, 10, 4
rest 12
octave 3
- E_ 2
- F# 2
- E_ 4
- D_ 4
- C# 2
- D_ 2
- E_ 2
+ note E_, 2
+ note F#, 2
+ note E_, 4
+ note D_, 4
+ note C#, 2
+ note D_, 2
+ note E_, 2
rest 2
- E_ 4
- F# 2
- D_ 2
- E_ 4
- F# 4
- G# 4
+ note E_, 4
+ note F#, 2
+ note D_, 2
+ note E_, 4
+ note F#, 4
+ note G#, 4
rest 4
- E_ 4
- G# 4
+ note E_, 4
+ note G#, 4
rest 4
- C# 2
- E_ 2
- F# 4
- D_ 4
- E_ 4
- D_ 4
- C# 2
- D_ 2
- E_ 2
+ note C#, 2
+ note E_, 2
+ note F#, 4
+ note D_, 4
+ note E_, 4
+ note D_, 4
+ note C#, 2
+ note D_, 2
+ note E_, 2
rest 2
- E_ 4
- F# 2
- D_ 2
- E_ 4
- F# 4
- G# 4
- F# 4
- E_ 4
- F# 4
+ note E_, 4
+ note F#, 2
+ note D_, 2
+ note E_, 4
+ note F#, 4
+ note G#, 4
+ note F#, 4
+ note E_, 4
+ note F#, 4
rest 4
- C# 2
- E_ 2
- F# 4
- D_ 4
- E_ 4
- D_ 4
- C# 2
- D_ 2
- E_ 2
+ note C#, 2
+ note E_, 2
+ note F#, 4
+ note D_, 4
+ note E_, 4
+ note D_, 4
+ note C#, 2
+ note D_, 2
+ note E_, 2
rest 2
- E_ 4
- F# 2
- D_ 2
- E_ 4
- F# 4
- G# 4
- F# 8
- G# 4
- E_ 4
+ note E_, 4
+ note F#, 2
+ note D_, 2
+ note E_, 4
+ note F#, 4
+ note G#, 4
+ note F#, 8
+ note G#, 4
+ note E_, 4
rest 4
- E_ 4
- F# 2
- E_ 2
- D_ 4
+ note E_, 4
+ note F#, 2
+ note E_, 2
+ note D_, 4
rest 4
- D_ 4
- E_ 4
- C# 4
+ note D_, 4
+ note E_, 4
+ note C#, 4
rest 4
- C# 4
- D_ 2
- C# 2
+ note C#, 4
+ note D_, 2
+ note C#, 2
octave 2
- B_ 4
- E_ 4
- B_ 4
+ note B_, 4
+ note E_, 4
+ note B_, 4
octave 3
- D_ 2
+ note D_, 2
octave 2
- B_ 2
- A_ 4
+ note B_, 2
+ note A_, 4
rest 4
- A_ 4
- B_ 2
- A_ 2
- G# 4
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G#, 4
rest 4
- C# 4
- G# 4
- A_ 4
+ note C#, 4
+ note G#, 4
+ note A_, 4
rest 4
- A_ 4
- B_ 4
- B_ 4
+ note A_, 4
+ note B_, 4
+ note B_, 4
rest 4
octave 3
- D_ 8
- loopchannel 0, Music_SSAnne_branch_b3b2
+ note D_, 8
+ sound_loop 0, Music_SSAnne_branch_b3b2
Music_SSAnne_Ch2::
- duty 0
+ duty_cycle 0
vibrato 12, 2, 4
Music_SSAnne_branch_b41e::
- notetype 12, 12, 5
+ note_type 12, 12, 5
octave 3
- A_ 2
- E_ 2
- A_ 4
- B_ 4
+ note A_, 2
+ note E_, 2
+ note A_, 4
+ note B_, 4
octave 4
- D_ 4
- notetype 8, 12, 5
- C# 2
- D_ 2
- C# 2
+ note D_, 4
+ note_type 8, 12, 5
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 3
- A_ 3
- B_ 6
- G# 6
- A_ 3
- B_ 3
+ note B_, 3
+ note A_, 3
+ note B_, 6
+ note G#, 6
+ note A_, 3
+ note B_, 3
octave 4
- C# 6
- D_ 6
- C# 3
+ note C#, 6
+ note D_, 6
+ note C#, 3
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 6
- D_ 3
- C# 3
+ note E_, 6
+ note D_, 3
+ note C#, 3
octave 3
- B_ 6
+ note B_, 6
octave 4
- C# 3
+ note C#, 3
octave 3
- B_ 3
- A_ 3
- E_ 3
- A_ 6
- B_ 6
+ note B_, 3
+ note A_, 3
+ note E_, 3
+ note A_, 6
+ note B_, 6
octave 4
- D_ 6
- C# 2
- D_ 2
- C# 2
+ note D_, 6
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 3
- A_ 3
- B_ 6
- G# 6
- A_ 3
- B_ 3
+ note B_, 3
+ note A_, 3
+ note B_, 6
+ note G#, 6
+ note A_, 3
+ note B_, 3
octave 4
- C# 6
- D_ 6
- C# 3
+ note C#, 6
+ note D_, 6
+ note C#, 3
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 6
- D_ 3
- C# 3
+ note E_, 6
+ note D_, 3
+ note C#, 3
octave 3
- B_ 12
- A_ 3
- E_ 3
- A_ 6
- B_ 6
+ note B_, 12
+ note A_, 3
+ note E_, 3
+ note A_, 6
+ note B_, 6
octave 4
- D_ 6
- C# 2
- D_ 2
- C# 2
+ note D_, 6
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 3
- A_ 3
- B_ 6
- G# 6
- A_ 3
- B_ 3
+ note B_, 3
+ note A_, 3
+ note B_, 6
+ note G#, 6
+ note A_, 3
+ note B_, 3
octave 4
- C# 6
- D_ 6
- C# 3
+ note C#, 6
+ note D_, 6
+ note C#, 3
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 6
- D_ 3
- C# 3
+ note E_, 6
+ note D_, 3
+ note C#, 3
octave 3
- B_ 12
+ note B_, 12
rest 3
octave 4
- C# 3
+ note C#, 3
octave 3
- B_ 3
+ note B_, 3
octave 4
- C# 3
- C# 3
- D_ 3
- C# 3
- D_ 3
- E_ 3
+ note C#, 3
+ note C#, 3
+ note D_, 3
+ note C#, 3
+ note D_, 3
+ note E_, 3
octave 3
- B_ 3
- G# 3
- F# 3
- E_ 3
- F# 3
- G# 3
- B_ 3
+ note B_, 3
+ note G#, 3
+ note F#, 3
+ note E_, 3
+ note F#, 3
+ note G#, 3
+ note B_, 3
rest 3
- A_ 3
- G# 3
- A_ 3
- A_ 3
- B_ 3
- A_ 3
- B_ 3
+ note A_, 3
+ note G#, 3
+ note A_, 3
+ note A_, 3
+ note B_, 3
+ note A_, 3
+ note B_, 3
octave 4
- C# 3
+ note C#, 3
octave 3
- G# 3
- F# 3
- E_ 3
- E_ 3
- F# 3
- G# 3
- B_ 3
+ note G#, 3
+ note F#, 3
+ note E_, 3
+ note E_, 3
+ note F#, 3
+ note G#, 3
+ note B_, 3
rest 3
- F# 3
- E_ 3
- F# 3
- F# 3
- G# 3
- F# 3
- G# 3
- A_ 3
- E_ 3
- C# 3
+ note F#, 3
+ note E_, 3
+ note F#, 3
+ note F#, 3
+ note G#, 3
+ note F#, 3
+ note G#, 3
+ note A_, 3
+ note E_, 3
+ note C#, 3
octave 2
- B_ 3
- A_ 3
- B_ 3
+ note B_, 3
+ note A_, 3
+ note B_, 3
octave 3
- C# 3
- E_ 3
+ note C#, 3
+ note E_, 3
rest 3
- F# 3
- E_ 3
- F# 3
- F# 3
- G# 3
- A_ 3
- B_ 3
+ note F#, 3
+ note E_, 3
+ note F#, 3
+ note F#, 3
+ note G#, 3
+ note A_, 3
+ note B_, 3
octave 4
- C# 3
- D_ 3
- C# 3
+ note C#, 3
+ note D_, 3
+ note C#, 3
octave 3
- B_ 3
+ note B_, 3
octave 4
- E_ 3
- D_ 3
- C# 3
+ note E_, 3
+ note D_, 3
+ note C#, 3
octave 3
- B_ 3
- loopchannel 0, Music_SSAnne_branch_b41e
+ note B_, 3
+ sound_loop 0, Music_SSAnne_branch_b41e
Music_SSAnne_Ch3::
- notetype 12, 1, 3
+ note_type 12, 1, 3
rest 16
rest 12
octave 4
- B_ 2
- G# 2
- A_ 8
- F# 8
- G# 4
+ note B_, 2
+ note G#, 2
+ note A_, 8
+ note F#, 8
+ note G#, 4
rest 4
- B_ 8
- A_ 8
- B_ 8
- A_ 8
- G# 8
- A_ 8
- F# 8
- G# 8
- B_ 8
- A_ 4
- E_ 4
- B_ 4
- E_ 4
- A_ 4
- E_ 4
- G# 4
- E_ 4
- A_ 4
- E_ 4
- F# 4
- G_ 4
- G# 4
- A_ 4
+ note B_, 8
+ note A_, 8
+ note B_, 8
+ note A_, 8
+ note G#, 8
+ note A_, 8
+ note F#, 8
+ note G#, 8
+ note B_, 8
+ note A_, 4
+ note E_, 4
+ note B_, 4
+ note E_, 4
+ note A_, 4
+ note E_, 4
+ note G#, 4
+ note E_, 4
+ note A_, 4
+ note E_, 4
+ note F#, 4
+ note G_, 4
+ note G#, 4
+ note A_, 4
octave 5
- D_ 8
- C# 8
- C# 8
+ note D_, 8
+ note C#, 8
+ note C#, 8
octave 4
- B_ 8
- B_ 8
- A_ 8
- A_ 8
- G# 8
- G# 8
- F# 8
- F# 8
- E_ 8
- E_ 8
- F# 8
- F# 8
- G# 8
- B_ 8
- loopchannel 0, Music_SSAnne_Ch3
+ note B_, 8
+ note B_, 8
+ note A_, 8
+ note A_, 8
+ note G#, 8
+ note G#, 8
+ note F#, 8
+ note F#, 8
+ note E_, 8
+ note E_, 8
+ note F#, 8
+ note F#, 8
+ note G#, 8
+ note B_, 8
+ sound_loop 0, Music_SSAnne_Ch3
diff --git a/audio/music/surfing.asm b/audio/music/surfing.asm
index 03ebfed0..4765f391 100644
--- a/audio/music/surfing.asm
+++ b/audio/music/surfing.asm
@@ -1,335 +1,335 @@
Music_Surfing_Ch1::
tempo 160
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 12, 3, 4
- toggleperfectpitch
- notetype 12, 11, 5
+ toggle_perfect_pitch
+ note_type 12, 11, 5
rest 6
octave 2
- A_ 2
- G# 3
- F# 1
- E_ 6
+ note A_, 2
+ note G#, 3
+ note F#, 1
+ note E_, 6
octave 3
- G# 2
- F# 2
- G# 4
+ note G#, 2
+ note F#, 2
+ note G#, 4
Music_Surfing_branch_7fa30::
- notetype 12, 11, 2
- E_ 2
- E_ 4
- E_ 2
- E_ 4
- D_ 2
- D_ 4
- D_ 2
- D_ 4
- D_ 2
- D_ 4
- notetype 12, 11, 1
- F# 3
- notetype 12, 11, 2
- D_ 3
- E_ 2
- E_ 4
- E_ 2
- E_ 4
- A_ 2
- A_ 4
- G# 2
- G# 4
- F# 2
- F# 4
- E_ 2
- E_ 4
- G# 2
- G# 4
- notetype 12, 11, 1
- F# 3
- notetype 12, 11, 2
- G# 1
- notetype 12, 11, 4
- A_ 2
- B_ 2
+ note_type 12, 11, 2
+ note E_, 2
+ note E_, 4
+ note E_, 2
+ note E_, 4
+ note D_, 2
+ note D_, 4
+ note D_, 2
+ note D_, 4
+ note D_, 2
+ note D_, 4
+ note_type 12, 11, 1
+ note F#, 3
+ note_type 12, 11, 2
+ note D_, 3
+ note E_, 2
+ note E_, 4
+ note E_, 2
+ note E_, 4
+ note A_, 2
+ note A_, 4
+ note G#, 2
+ note G#, 4
+ note F#, 2
+ note F#, 4
+ note E_, 2
+ note E_, 4
+ note G#, 2
+ note G#, 4
+ note_type 12, 11, 1
+ note F#, 3
+ note_type 12, 11, 2
+ note G#, 1
+ note_type 12, 11, 4
+ note A_, 2
+ note B_, 2
octave 4
- C_ 2
- notetype 12, 11, 7
- C# 6
- notetype 12, 11, 3
- D_ 2
- C# 2
+ note C_, 2
+ note_type 12, 11, 7
+ note C#, 6
+ note_type 12, 11, 3
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- G# 2
- A_ 2
- G# 2
- F# 2
- G# 2
- F# 2
- E_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- B_ 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
octave 4
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- G# 2
- A_ 2
- G# 2
- A_ 2
- E_ 2
- G# 2
- B_ 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note B_, 2
octave 4
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 4
- loopchannel 0, Music_Surfing_branch_7fa30
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 4
+ sound_loop 0, Music_Surfing_branch_7fa30
Music_Surfing_Ch2::
- duty 3
+ duty_cycle 3
vibrato 16, 2, 5
- notetype 12, 12, 6
+ note_type 12, 12, 6
octave 3
- A_ 2
- G# 3
- F# 1
- E_ 6
- G# 6
+ note A_, 2
+ note G#, 3
+ note F#, 1
+ note E_, 6
+ note G#, 6
octave 4
- E_ 2
- D_ 2
+ note E_, 2
+ note D_, 2
octave 3
- B_ 2
+ note B_, 2
Music_Surfing_branch_7faae::
- notetype 12, 12, 6
+ note_type 12, 12, 6
octave 4
- E_ 6
- C# 5
- E_ 1
- D_ 6
+ note E_, 6
+ note C#, 5
+ note E_, 1
+ note D_, 6
octave 3
- B_ 6
+ note B_, 6
octave 4
- D_ 6
+ note D_, 6
octave 3
- B_ 2
- notetype 12, 12, 1
+ note B_, 2
+ note_type 12, 12, 1
octave 4
- F# 3
- notetype 12, 12, 6
- D_ 1
- E_ 6
- C# 6
- E_ 6
- C# 5
- E_ 1
- F# 6
- D_ 6
- F# 6
- E_ 2
- notetype 12, 12, 1
- F# 3
- notetype 12, 12, 6
- E_ 1
- A_ 6
- A_ 6
- B_ 2
- A_ 3
- D_ 1
- F# 6
- E_ 2
- F# 3
- E_ 1
- C# 6
- D_ 2
- C# 3
+ note F#, 3
+ note_type 12, 12, 6
+ note D_, 1
+ note E_, 6
+ note C#, 6
+ note E_, 6
+ note C#, 5
+ note E_, 1
+ note F#, 6
+ note D_, 6
+ note F#, 6
+ note E_, 2
+ note_type 12, 12, 1
+ note F#, 3
+ note_type 12, 12, 6
+ note E_, 1
+ note A_, 6
+ note A_, 6
+ note B_, 2
+ note A_, 3
+ note D_, 1
+ note F#, 6
+ note E_, 2
+ note F#, 3
+ note E_, 1
+ note C#, 6
+ note D_, 2
+ note C#, 3
octave 3
- B_ 1
+ note B_, 1
octave 4
- F# 6
- E_ 2
- D# 3
- E_ 1
- A_ 6
- B_ 2
- A_ 3
- D_ 1
- F# 6
- E_ 2
- F# 3
- G# 1
- A_ 6
- G# 2
- F# 3
- E_ 1
- G# 6
- A_ 2
- G# 3
- A_ 1
+ note F#, 6
+ note E_, 2
+ note D#, 3
+ note E_, 1
+ note A_, 6
+ note B_, 2
+ note A_, 3
+ note D_, 1
+ note F#, 6
+ note E_, 2
+ note F#, 3
+ note G#, 1
+ note A_, 6
+ note G#, 2
+ note F#, 3
+ note E_, 1
+ note G#, 6
+ note A_, 2
+ note G#, 3
+ note A_, 1
octave 5
- C# 6
- loopchannel 0, Music_Surfing_branch_7faae
+ note C#, 6
+ sound_loop 0, Music_Surfing_branch_7faae
Music_Surfing_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
rest 12
octave 5
- E_ 6
+ note E_, 6
octave 4
- E_ 2
- F# 2
- G# 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
Music_Surfing_branch_7fb03::
octave 3
- A_ 2
+ note A_, 2
octave 4
- A_ 2
- A_ 2
- E_ 2
- A_ 2
- A_ 2
+ note A_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G# 2
- G# 2
- E_ 2
- G# 2
- G# 2
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note G#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G# 2
- G# 2
- E_ 2
- G# 1
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note G#, 1
rest 2
- E_ 1
- C# 2
- A_ 2
- A_ 2
- E_ 2
- A_ 2
- A_ 2
- C# 2
- A_ 2
- A_ 2
- E_ 2
- A_ 2
- A_ 2
+ note E_, 1
+ note C#, 2
+ note A_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G# 2
- G# 2
- E_ 2
- G# 2
- G# 2
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note G#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G# 2
- G# 2
- E_ 2
- G# 1
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note G#, 1
rest 2
- E_ 1
- C# 2
- A_ 2
- A_ 2
- E_ 2
- A_ 2
- A_ 2
- D_ 2
- F# 2
- F# 2
+ note E_, 1
+ note C#, 2
+ note A_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
+ note D_, 2
+ note F#, 2
+ note F#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- F# 2
- F# 2
- E_ 2
- A_ 2
- A_ 2
- C# 2
- A_ 2
- A_ 2
- E_ 2
- G# 2
- G# 2
+ note F#, 2
+ note F#, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note G#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G# 2
- G# 2
- E_ 2
- A_ 2
- A_ 2
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- A_ 2
- A_ 2
- D_ 2
- F# 2
- F# 2
+ note A_, 2
+ note A_, 2
+ note D_, 2
+ note F#, 2
+ note F#, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- F# 2
- F# 2
- E_ 2
- A_ 2
- A_ 2
- C# 2
- A_ 2
- A_ 2
- E_ 2
- G# 2
- G# 2
+ note F#, 2
+ note F#, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
+ note C#, 2
+ note A_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note G#, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- G# 2
- G# 2
- E_ 2
- A_ 2
- A_ 2
- C# 2
- D_ 2
- E_ 2
- loopchannel 0, Music_Surfing_branch_7fb03
+ note G#, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note A_, 2
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ sound_loop 0, Music_Surfing_branch_7fb03
diff --git a/audio/music/surfingpikachu.asm b/audio/music/surfingpikachu.asm
index 1ee3f760..8e161443 100644
--- a/audio/music/surfingpikachu.asm
+++ b/audio/music/surfingpikachu.asm
@@ -1,690 +1,690 @@
Music_SurfingPikachu_Ch1::
tempo 117
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 1, 4
- notetype 12, 11, 3
- octave 3
- E_ 6
- notetype 12, 11, 2
- F# 2
- notetype 12, 11, 3
- E_ 6
- notetype 12, 11, 2
- F# 16
+ note_type 12, 11, 3
+ octave 3
+ note E_, 6
+ note_type 12, 11, 2
+ note F#, 2
+ note_type 12, 11, 3
+ note E_, 6
+ note_type 12, 11, 2
+ note F#, 16
rest 2
- notetype 12, 11, 3
- E_ 6
- notetype 12, 11, 2
- A_ 2
- notetype 12, 11, 3
- E_ 6
- notetype 12, 11, 2
- A_ 14
- notetype 12, 11, 2
- D# 2
- C# 1
- D# 1
+ note_type 12, 11, 3
+ note E_, 6
+ note_type 12, 11, 2
+ note A_, 2
+ note_type 12, 11, 3
+ note E_, 6
+ note_type 12, 11, 2
+ note A_, 14
+ note_type 12, 11, 2
+ note D#, 2
+ note C#, 1
+ note D#, 1
octave 2
- B_ 6
- octave 3
- E_ 4
- E_ 4
- E_ 8
- G# 4
- G# 4
- G# 2
+ note B_, 6
+ octave 3
+ note E_, 4
+ note E_, 4
+ note E_, 8
+ note G#, 4
+ note G#, 4
+ note G#, 2
Music_SurfingPikachu_branch_82d1a::
- notetype 12, 11, 3
- octave 3
- G# 4
- E_ 4
- F# 4
- E_ 2
- A_ 2
- G# 2
- F# 2
- G# 2
- F# 2
- E_ 2
- D# 2
- E_ 2
- D# 2
- C# 6
- F# 2
- A_ 8
+ note_type 12, 11, 3
+ octave 3
+ note G#, 4
+ note E_, 4
+ note F#, 4
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note E_, 2
+ note D#, 2
+ note C#, 6
+ note F#, 2
+ note A_, 8
octave 2
- B_ 6
- octave 3
- E_ 2
- G# 8
- G# 4
- E_ 4
- F# 4
- E_ 2
- A_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- G# 2
- F# 6
- E_ 2
- F# 1
+ note B_, 6
+ octave 3
+ note E_, 2
+ note G#, 8
+ note G#, 4
+ note E_, 4
+ note F#, 4
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note F#, 6
+ note E_, 2
+ note F#, 1
rest 3
- A_ 4
- duty 0
- notetype 12, 11, 2
- G# 1
- F# 1
- G# 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- D# 2
- F# 2
- F# 2
- D# 2
- F# 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- B_ 1
- A# 1
- B_ 2
- G# 2
- E_ 2
- G# 2
- G_ 2
- G# 2
- A_ 2
- octave 4
- C# 2
- C_ 2
- C# 3
- octave 3
- F# 1
- A_ 2
- G# 2
- F# 2
- A_ 2
- E_ 3
- E_ 1
- B_ 2
- A_ 2
- G# 6
- E_ 1
- F_ 1
- F# 2
- F# 2
- D# 2
- F# 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- B_ 1
- A# 1
- B_ 2
- G# 2
- E_ 2
- G# 2
- G_ 2
- G# 2
- A_ 2
- octave 4
- C# 2
- C_ 2
- C# 3
- octave 3
- F# 1
- A_ 2
- G# 2
- A_ 2
- octave 4
- D# 2
- E_ 2
- E_ 1
- D# 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- E_ 8
- duty 3
- loopchannel 0, Music_SurfingPikachu_branch_82d1a
+ note A_, 4
+ duty_cycle 0
+ note_type 12, 11, 2
+ note G#, 1
+ note F#, 1
+ note G#, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note D#, 2
+ note F#, 2
+ note F#, 2
+ note D#, 2
+ note F#, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note B_, 1
+ note A#, 1
+ note B_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note G_, 2
+ note G#, 2
+ note A_, 2
+ octave 4
+ note C#, 2
+ note C_, 2
+ note C#, 3
+ octave 3
+ note F#, 1
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note E_, 3
+ note E_, 1
+ note B_, 2
+ note A_, 2
+ note G#, 6
+ note E_, 1
+ note F_, 1
+ note F#, 2
+ note F#, 2
+ note D#, 2
+ note F#, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note B_, 1
+ note A#, 1
+ note B_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note G_, 2
+ note G#, 2
+ note A_, 2
+ octave 4
+ note C#, 2
+ note C_, 2
+ note C#, 3
+ octave 3
+ note F#, 1
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ octave 4
+ note D#, 2
+ note E_, 2
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note E_, 8
+ duty_cycle 3
+ sound_loop 0, Music_SurfingPikachu_branch_82d1a
Music_SurfingPikachu_Ch2::
- duty 3
+ duty_cycle 3
vibrato 6, 1, 5
- notetype 12, 12, 4
- octave 3
- B_ 6
- notetype 12, 12, 2
- octave 4
- E_ 2
- notetype 12, 12, 4
- octave 3
- B_ 6
- notetype 12, 12, 2
- octave 4
- E_ 2
- notetype 12, 11, 2
- octave 3
- B_ 2
- octave 4
- C# 2
- D# 2
- C# 2
- octave 3
- B_ 2
- A_ 2
- G# 2
- F# 2
- notetype 12, 12, 4
- octave 4
- C# 6
- notetype 12, 12, 2
- F# 2
- notetype 12, 12, 4
- C# 6
- notetype 12, 12, 2
- F# 2
- notetype 12, 11, 2
- C# 2
- D# 2
- E_ 2
- D# 2
- C# 2
- octave 3
- B_ 2
- A_ 2
- G# 2
- notetype 12, 12, 2
- E_ 6
- B_ 4
- B_ 4
- B_ 8
- B_ 4
- B_ 4
- B_ 2
+ note_type 12, 12, 4
+ octave 3
+ note B_, 6
+ note_type 12, 12, 2
+ octave 4
+ note E_, 2
+ note_type 12, 12, 4
+ octave 3
+ note B_, 6
+ note_type 12, 12, 2
+ octave 4
+ note E_, 2
+ note_type 12, 11, 2
+ octave 3
+ note B_, 2
+ octave 4
+ note C#, 2
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note_type 12, 12, 4
+ octave 4
+ note C#, 6
+ note_type 12, 12, 2
+ note F#, 2
+ note_type 12, 12, 4
+ note C#, 6
+ note_type 12, 12, 2
+ note F#, 2
+ note_type 12, 11, 2
+ note C#, 2
+ note D#, 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note_type 12, 12, 2
+ note E_, 6
+ note B_, 4
+ note B_, 4
+ note B_, 8
+ note B_, 4
+ note B_, 4
+ note B_, 2
Music_SurfingPikachu_branch_82de0::
- notetype 12, 12, 6
+ note_type 12, 12, 6
octave 4
- E_ 4
+ note E_, 4
octave 3
- B_ 4
- A_ 4
+ note B_, 4
+ note A_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 6
- A_ 2
- G# 8
- F# 6
- A_ 2
+ note B_, 6
+ note A_, 2
+ note G#, 8
+ note F#, 6
+ note A_, 2
octave 4
- C# 8
+ note C#, 8
octave 3
- E_ 6
- G# 2
- B_ 8
+ note E_, 6
+ note G#, 2
+ note B_, 8
octave 4
- E_ 4
+ note E_, 4
octave 3
- B_ 4
- A_ 4
+ note B_, 4
+ note A_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 6
+ note B_, 6
octave 4
- D# 2
- E_ 8
- D# 6
- C# 2
- D# 1
+ note D#, 2
+ note E_, 8
+ note D#, 6
+ note C#, 2
+ note D#, 1
rest 3
- F# 4
- E_ 10
- notetype 12, 12, 6
- duty 2
- E_ 2
- D# 2
- C# 2
- octave 3
- B_ 6
- octave 4
- C# 2
- D# 4
- octave 3
- B_ 4
- octave 4
- E_ 6
- F# 2
- G# 8
- A_ 6
- G# 2
- A_ 4
- F# 4
- G# 10
- E_ 2
- D# 2
- C# 2
- octave 3
- B_ 6
- octave 4
- C# 2
- D# 4
- octave 3
- B_ 4
- octave 4
- E_ 6
- F# 2
- G# 8
- A_ 4
- F# 4
- D# 4
+ note F#, 4
+ note E_, 10
+ note_type 12, 12, 6
+ duty_cycle 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 6
+ octave 4
+ note C#, 2
+ note D#, 4
+ octave 3
+ note B_, 4
+ octave 4
+ note E_, 6
+ note F#, 2
+ note G#, 8
+ note A_, 6
+ note G#, 2
+ note A_, 4
+ note F#, 4
+ note G#, 10
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ octave 3
+ note B_, 6
+ octave 4
+ note C#, 2
+ note D#, 4
+ octave 3
+ note B_, 4
+ octave 4
+ note E_, 6
+ note F#, 2
+ note G#, 8
+ note A_, 4
+ note F#, 4
+ note D#, 4
octave 5
- C# 4
+ note C#, 4
octave 4
- B_ 8
- notetype 12, 12, 2
+ note B_, 8
+ note_type 12, 12, 2
octave 5
- E_ 4
- notetype 12, 12, 6
- duty 3
+ note E_, 4
+ note_type 12, 12, 6
+ duty_cycle 3
octave 3
- B_ 1
- A# 1
- B_ 1
+ note B_, 1
+ note A#, 1
+ note B_, 1
octave 4
- C# 1
- loopchannel 0, Music_SurfingPikachu_branch_82de0
+ note C#, 1
+ sound_loop 0, Music_SurfingPikachu_branch_82de0
Music_SurfingPikachu_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- B_ 6
+ note B_, 6
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 6
+ note B_, 6
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 6
+ note A_, 6
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 6
+ note A_, 6
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
Music_SurfingPikachu_branch_82ea0::
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
- C_ 1
- C# 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
- D# 1
- E_ 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
rest 1
octave 4
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- B_ 1
- A# 1
- B_ 1
+ note B_, 1
+ note A#, 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- loopchannel 0, Music_SurfingPikachu_branch_82ea0
+ sound_loop 0, Music_SurfingPikachu_branch_82ea0
diff --git a/audio/music/titlescreen.asm b/audio/music/titlescreen.asm
index b28474eb..a70b2761 100644
--- a/audio/music/titlescreen.asm
+++ b/audio/music/titlescreen.asm
@@ -2,676 +2,676 @@ Music_TitleScreen_Ch1::
tempo 144
volume 7, 7
vibrato 9, 3, 4
- duty 3
- notetype 12, 12, 1
+ duty_cycle 3
+ note_type 12, 12, 1
octave 2
- E_ 1
- G_ 1
- B_ 1
+ note E_, 1
+ note G_, 1
+ note B_, 1
octave 3
- D_ 1
+ note D_, 1
octave 2
- G_ 4
- G_ 6
- G_ 1
- G_ 1
- G_ 4
- G_ 4
- G_ 4
- notetype 8, 12, 1
- A_ 2
- A_ 2
- A_ 2
- A_ 2
- A_ 2
- F# 2
+ note G_, 4
+ note G_, 6
+ note G_, 1
+ note G_, 1
+ note G_, 4
+ note G_, 4
+ note G_, 4
+ note_type 8, 12, 1
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note F#, 2
Music_TitleScreen_branch_7e4e2::
- callchannel Music_TitleScreen_branch_7e541
- callchannel Music_TitleScreen_branch_7e54a
- callchannel Music_TitleScreen_branch_7e541
+ sound_call Music_TitleScreen_branch_7e541
+ sound_call Music_TitleScreen_branch_7e54a
+ sound_call Music_TitleScreen_branch_7e541
octave 3
- C_ 8
- notetype 8, 12, 6
- E_ 4
- E_ 4
- C_ 4
- notetype 12, 12, 6
+ note C_, 8
+ note_type 8, 12, 6
+ note E_, 4
+ note E_, 4
+ note C_, 4
+ note_type 12, 12, 6
octave 2
- B_ 8
- notetype 8, 14, 7
+ note B_, 8
+ note_type 8, 14, 7
octave 3
- F_ 4
- E_ 4
- C_ 4
- notetype 12, 14, 7
- D_ 10
- notetype 12, 12, 6
+ note F_, 4
+ note E_, 4
+ note C_, 4
+ note_type 12, 14, 7
+ note D_, 10
+ note_type 12, 12, 6
octave 2
- B_ 2
+ note B_, 2
octave 3
- C_ 2
- D_ 2
- callchannel Music_TitleScreen_branch_7e541
- callchannel Music_TitleScreen_branch_7e54a
- callchannel Music_TitleScreen_branch_7e541
- C_ 6
- C_ 6
- E_ 4
- D_ 6
- F_ 2
- G_ 2
- D_ 4
- G_ 2
- G_ 6
- A_ 4
- F_ 2
- A_ 2
+ note C_, 2
+ note D_, 2
+ sound_call Music_TitleScreen_branch_7e541
+ sound_call Music_TitleScreen_branch_7e54a
+ sound_call Music_TitleScreen_branch_7e541
+ note C_, 6
+ note C_, 6
+ note E_, 4
+ note D_, 6
+ note F_, 2
+ note G_, 2
+ note D_, 4
+ note G_, 2
+ note G_, 6
+ note A_, 4
+ note F_, 2
+ note A_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- D_ 12
- E_ 4
- F_ 8
- G_ 4
- F_ 4
- E_ 12
- F_ 4
- G_ 8
- notetype 12, 11, 6
+ note D_, 12
+ note E_, 4
+ note F_, 8
+ note G_, 4
+ note F_, 4
+ note E_, 12
+ note F_, 4
+ note G_, 8
+ note_type 12, 11, 6
octave 4
- C_ 4
- C# 4
- callchannel Music_TitleScreen_branch_7e55c
- notetype 8, 11, 4
+ note C_, 4
+ note C#, 4
+ sound_call Music_TitleScreen_branch_7e55c
+ note_type 8, 11, 4
octave 4
- C_ 4
- C_ 4
- C# 4
- callchannel Music_TitleScreen_branch_7e55c
- notetype 8, 11, 2
+ note C_, 4
+ note C_, 4
+ note C#, 4
+ sound_call Music_TitleScreen_branch_7e55c
+ note_type 8, 11, 2
octave 3
- E_ 4
- E_ 4
- C# 4
- loopchannel 0, Music_TitleScreen_branch_7e4e2
+ note E_, 4
+ note E_, 4
+ note C#, 4
+ sound_loop 0, Music_TitleScreen_branch_7e4e2
Music_TitleScreen_branch_7e541::
- notetype 12, 12, 6
+ note_type 12, 12, 6
octave 3
- D_ 6
+ note D_, 6
octave 2
- B_ 2
+ note B_, 2
octave 3
- D_ 8
- endchannel
+ note D_, 8
+ sound_ret
Music_TitleScreen_branch_7e54a::
- C_ 6
- F_ 6
- C_ 4
- D_ 8
- notetype 12, 14, 7
- F_ 6
- E_ 1
- D# 1
- D_ 8
- notetype 8, 12, 6
- C_ 4
+ note C_, 6
+ note F_, 6
+ note C_, 4
+ note D_, 8
+ note_type 12, 14, 7
+ note F_, 6
+ note E_, 1
+ note D#, 1
+ note D_, 8
+ note_type 8, 12, 6
+ note C_, 4
octave 2
- B_ 4
+ note B_, 4
octave 3
- C_ 4
- endchannel
+ note C_, 4
+ sound_ret
Music_TitleScreen_branch_7e55c::
- notetype 12, 12, 1
- D_ 1
+ note_type 12, 12, 1
+ note D_, 1
rest 1
octave 2
- D_ 1
- D_ 1
- D_ 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
rest 1
- D_ 1
- D_ 1
- D_ 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
rest 1
- D_ 1
- D_ 1
- D_ 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
rest 1
- D_ 1
- D_ 1
- D_ 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
rest 1
- D_ 1
- D_ 1
- D_ 1
+ note D_, 1
+ note D_, 1
+ note D_, 1
rest 1
- D_ 1
- D_ 1
- endchannel
+ note D_, 1
+ note D_, 1
+ sound_ret
Music_TitleScreen_Ch2::
vibrato 16, 4, 6
- duty 1
- notetype 12, 14, 1
+ duty_cycle 1
+ note_type 12, 14, 1
octave 2
- G_ 1
- B_ 1
+ note G_, 1
+ note B_, 1
octave 3
- D_ 1
- F# 1
- G_ 4
- G_ 6
- G_ 1
- G_ 1
- G_ 4
- G_ 4
- G_ 4
- notetype 8, 14, 1
- F_ 2
- F_ 2
- F_ 2
- F_ 2
- F_ 2
- F# 2
+ note D_, 1
+ note F#, 1
+ note G_, 4
+ note G_, 6
+ note G_, 1
+ note G_, 1
+ note G_, 4
+ note G_, 4
+ note G_, 4
+ note_type 8, 14, 1
+ note F_, 2
+ note F_, 2
+ note F_, 2
+ note F_, 2
+ note F_, 2
+ note F#, 2
Music_TitleScreen_branch_7e594::
vibrato 16, 4, 6
- callchannel Music_TitleScreen_branch_7e622
+ sound_call Music_TitleScreen_branch_7e622
octave 2
- A_ 4
- F_ 4
- callchannel Music_TitleScreen_branch_7e62c
+ note A_, 4
+ note F_, 4
+ sound_call Music_TitleScreen_branch_7e62c
octave 2
- A_ 8
- B_ 16
- callchannel Music_TitleScreen_branch_7e622
+ note A_, 8
+ note B_, 16
+ sound_call Music_TitleScreen_branch_7e622
octave 2
- A_ 6
- F_ 2
- notetype 8, 14, 7
+ note A_, 6
+ note F_, 2
+ note_type 8, 14, 7
octave 4
- C_ 4
+ note C_, 4
octave 3
- B_ 4
+ note B_, 4
octave 4
- C_ 4
- notetype 12, 14, 7
- D_ 8
- notetype 12, 9, 5
+ note C_, 4
+ note_type 12, 14, 7
+ note D_, 8
+ note_type 12, 9, 5
octave 2
- D_ 6
- D_ 1
- F# 1
- G_ 16
- callchannel Music_TitleScreen_branch_7e622
+ note D_, 6
+ note D_, 1
+ note F#, 1
+ note G_, 16
+ sound_call Music_TitleScreen_branch_7e622
octave 2
- A_ 2
- F_ 6
- callchannel Music_TitleScreen_branch_7e62c
+ note A_, 2
+ note F_, 6
+ sound_call Music_TitleScreen_branch_7e62c
octave 3
- C_ 2
+ note C_, 2
octave 2
- A_ 6
- B_ 6
- G_ 2
- F_ 8
- callchannel Music_TitleScreen_branch_7e622
- notetype 8, 9, 5
+ note A_, 6
+ note B_, 6
+ note G_, 2
+ note F_, 8
+ sound_call Music_TitleScreen_branch_7e622
+ note_type 8, 9, 5
octave 2
- G_ 4
- F_ 5
- A_ 3
- notetype 8, 14, 6
+ note G_, 4
+ note F_, 5
+ note A_, 3
+ note_type 8, 14, 6
octave 4
- F_ 4
- E_ 4
- F_ 4
- notetype 12, 14, 7
- G_ 6
- A# 2
- G_ 8
+ note F_, 4
+ note E_, 4
+ note F_, 4
+ note_type 12, 14, 7
+ note G_, 6
+ note A#, 2
+ note G_, 8
vibrato 16, 2, 6
- duty 3
- notetype 12, 0, 11
- G_ 8
- notetype 12, 14, 7
- A_ 8
- duty 1
- notetype 12, 14, 7
- A# 6
- F_ 2
- F_ 8
+ duty_cycle 3
+ note_type 12, 0, -3
+ note G_, 8
+ note_type 12, 14, 7
+ note A_, 8
+ duty_cycle 1
+ note_type 12, 14, 7
+ note A#, 6
+ note F_, 2
+ note F_, 8
octave 3
- D_ 8
+ note D_, 8
octave 4
- A# 4
- B_ 4
+ note A#, 4
+ note B_, 4
octave 5
- C_ 6
+ note C_, 6
octave 4
- G_ 2
- G_ 8
+ note G_, 2
+ note G_, 8
octave 3
- E_ 8
- notetype 12, 13, 7
+ note E_, 8
+ note_type 12, 13, 7
octave 5
- C_ 4
- C# 4
- callchannel Music_TitleScreen_branch_7e636
+ note C_, 4
+ note C#, 4
+ sound_call Music_TitleScreen_branch_7e636
rest 3
- D_ 1
+ note D_, 1
rest 3
- D_ 1
- notetype 8, 14, 5
+ note D_, 1
+ note_type 8, 14, 5
octave 5
- C_ 4
- C_ 4
- C# 4
- callchannel Music_TitleScreen_branch_7e636
- D_ 1
+ note C_, 4
+ note C_, 4
+ note C#, 4
+ sound_call Music_TitleScreen_branch_7e636
+ note D_, 1
rest 2
- D_ 1
+ note D_, 1
rest 3
- D_ 1
- notetype 8, 14, 3
+ note D_, 1
+ note_type 8, 14, 3
octave 5
- C_ 4
- C_ 4
+ note C_, 4
+ note C_, 4
octave 4
- B_ 4
- loopchannel 0, Music_TitleScreen_branch_7e594
+ note B_, 4
+ sound_loop 0, Music_TitleScreen_branch_7e594
Music_TitleScreen_branch_7e622::
- notetype 12, 14, 7
+ note_type 12, 14, 7
octave 3
- G_ 6
- B_ 2
+ note G_, 6
+ note B_, 2
octave 4
- D_ 8
- notetype 12, 9, 5
- endchannel
+ note D_, 8
+ note_type 12, 9, 5
+ sound_ret
Music_TitleScreen_branch_7e62c::
- notetype 12, 14, 7
+ note_type 12, 14, 7
octave 4
- F_ 6
- E_ 1
- D# 1
- D_ 8
- notetype 12, 9, 5
- endchannel
+ note F_, 6
+ note E_, 1
+ note D#, 1
+ note D_, 8
+ note_type 12, 9, 5
+ sound_ret
Music_TitleScreen_branch_7e636::
- notetype 12, 14, 1
- D_ 1
+ note_type 12, 14, 1
+ note D_, 1
rest 2
octave 4
- D_ 1
+ note D_, 1
rest 3
- D_ 1
+ note D_, 1
rest 3
- D_ 1
+ note D_, 1
rest 3
- D_ 1
- endchannel
+ note D_, 1
+ sound_ret
Music_TitleScreen_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 3
- G_ 1
+ note G_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 5
- G_ 1
- G_ 1
- G_ 1
+ note G_, 1
+ note G_, 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- G_ 1
+ note G_, 1
rest 3
- notetype 8, 1, 0
- F_ 2
- F_ 2
- F_ 2
- F_ 2
- F_ 2
- A_ 2
+ note_type 8, 1, 0
+ note F_, 2
+ note F_, 2
+ note F_, 2
+ note F_, 2
+ note F_, 2
+ note A_, 2
Music_TitleScreen_branch_7e65e::
- callchannel Music_TitleScreen_branch_7e6c9
- callchannel Music_TitleScreen_branch_7e6d0
+ sound_call Music_TitleScreen_branch_7e6c9
+ sound_call Music_TitleScreen_branch_7e6d0
Music_TitleScreen_branch_7e664::
- callchannel Music_TitleScreen_branch_7e6c9
- callchannel Music_TitleScreen_branch_7e6c9
- callchannel Music_TitleScreen_branch_7e6c9
- callchannel Music_TitleScreen_branch_7e6d0
- loopchannel 3, Music_TitleScreen_branch_7e664
- callchannel Music_TitleScreen_branch_7e6c9
- G_ 6
- D_ 3
- A_ 6
- F_ 3
- A_ 3
- F_ 3
- callchannel Music_TitleScreen_branch_7e6d7
- A# 3
- F_ 3
- callchannel Music_TitleScreen_branch_7e6d7
- B_ 3
- G_ 3
- callchannel Music_TitleScreen_branch_7e6dc
+ sound_call Music_TitleScreen_branch_7e6c9
+ sound_call Music_TitleScreen_branch_7e6c9
+ sound_call Music_TitleScreen_branch_7e6c9
+ sound_call Music_TitleScreen_branch_7e6d0
+ sound_loop 3, Music_TitleScreen_branch_7e664
+ sound_call Music_TitleScreen_branch_7e6c9
+ note G_, 6
+ note D_, 3
+ note A_, 6
+ note F_, 3
+ note A_, 3
+ note F_, 3
+ sound_call Music_TitleScreen_branch_7e6d7
+ note A#, 3
+ note F_, 3
+ sound_call Music_TitleScreen_branch_7e6d7
+ note B_, 3
+ note G_, 3
+ sound_call Music_TitleScreen_branch_7e6dc
octave 4
- C_ 3
+ note C_, 3
octave 3
- G_ 3
- callchannel Music_TitleScreen_branch_7e6dc
+ note G_, 3
+ sound_call Music_TitleScreen_branch_7e6dc
octave 4
- C# 3
+ note C#, 3
octave 3
- A_ 3
- callchannel Music_TitleScreen_branch_7e6e5
+ note A_, 3
+ sound_call Music_TitleScreen_branch_7e6e5
octave 5
- pitchbend 0, 66
- D_ 4
+ pitch_slide 1, 4, D_
+ note D_, 4
rest 4
octave 6
- pitchbend 0, 50
- D_ 4
+ pitch_slide 1, 5, D_
+ note D_, 4
octave 5
- pitchbend 0, 66
- D_ 4
+ pitch_slide 1, 4, D_
+ note D_, 4
rest 2
- notetype 8, 1, 0
+ note_type 8, 1, 0
octave 4
- C_ 4
- C_ 4
- C# 4
- callchannel Music_TitleScreen_branch_7e6e5
+ note C_, 4
+ note C_, 4
+ note C#, 4
+ sound_call Music_TitleScreen_branch_7e6e5
octave 6
- pitchbend 0, 50
- D_ 4
+ pitch_slide 1, 5, D_
+ note D_, 4
rest 4
octave 5
- pitchbend 0, 66
- D_ 4
+ pitch_slide 1, 4, D_
+ note D_, 4
rest 6
- notetype 8, 1, 0
+ note_type 8, 1, 0
octave 4
- C_ 4
- C_ 4
+ note C_, 4
+ note C_, 4
octave 3
- B_ 4
- loopchannel 0, Music_TitleScreen_branch_7e65e
+ note B_, 4
+ sound_loop 0, Music_TitleScreen_branch_7e65e
Music_TitleScreen_branch_7e6c9::
- G_ 6
- D_ 3
- G_ 6
- D_ 3
- G_ 3
- D_ 3
- endchannel
+ note G_, 6
+ note D_, 3
+ note G_, 6
+ note D_, 3
+ note G_, 3
+ note D_, 3
+ sound_ret
Music_TitleScreen_branch_7e6d0::
- F_ 6
- C_ 3
- F_ 6
- C_ 3
- F_ 3
- C_ 3
- endchannel
+ note F_, 6
+ note C_, 3
+ note F_, 6
+ note C_, 3
+ note F_, 3
+ note C_, 3
+ sound_ret
Music_TitleScreen_branch_7e6d7::
- A# 6
- F_ 3
- A# 6
- F_ 3
- endchannel
+ note A#, 6
+ note F_, 3
+ note A#, 6
+ note F_, 3
+ sound_ret
Music_TitleScreen_branch_7e6dc::
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 3
+ note G_, 3
octave 4
- C_ 6
+ note C_, 6
octave 3
- G_ 3
- endchannel
+ note G_, 3
+ sound_ret
Music_TitleScreen_branch_7e6e5::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- D_ 1
+ note D_, 1
rest 5
- endchannel
+ sound_ret
Music_TitleScreen_Ch4::
- dspeed 6
+ drum_speed 6
rest 4
- snare3 1
- snare3 1
- snare4 1
- snare4 1
- dspeed 12
- snare2 1
- rest 3
- snare2 1
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 4, 1
+ drum_note 4, 1
+ drum_speed 12
+ drum_note 2, 1
+ rest 3
+ drum_note 2, 1
rest 5
- snare2 1
- snare2 1
- snare2 1
+ drum_note 2, 1
+ drum_note 2, 1
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 3
- dspeed 8
- snare3 2
- snare4 2
- snare2 2
- snare3 2
- snare2 2
- snare1 2
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 4, 2
+ drum_note 2, 2
+ drum_note 3, 2
+ drum_note 2, 2
+ drum_note 1, 2
Music_TitleScreen_branch_7e716::
- dspeed 12
- snare2 1
+ drum_speed 12
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare2 1
- snare2 1
- snare3 1
+ drum_note 2, 1
+ drum_note 2, 1
+ drum_note 3, 1
rest 3
- callchannel Music_TitleScreen_branch_7e834
- callchannel Music_TitleScreen_branch_7e834
- snare2 1
+ sound_call Music_TitleScreen_branch_7e834
+ sound_call Music_TitleScreen_branch_7e834
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare2 1
- snare2 1
- snare3 1
+ drum_note 2, 1
+ drum_note 2, 1
+ drum_note 3, 1
rest 1
- snare3 1
- snare2 1
- callchannel Music_TitleScreen_branch_7e842
- snare2 1
+ drum_note 3, 1
+ drum_note 2, 1
+ sound_call Music_TitleScreen_branch_7e842
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare2 1
- snare3 1
- snare2 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 1
- snare2 1
+ drum_note 2, 1
rest 1
- callchannel Music_TitleScreen_branch_7e842
- snare2 1
+ sound_call Music_TitleScreen_branch_7e842
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare2 1
- snare3 1
- snare2 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 1
- dspeed 6
- snare3 1
- snare3 1
- snare4 1
- snare4 1
- dspeed 12
- callchannel Music_TitleScreen_branch_7e834
- callchannel Music_TitleScreen_branch_7e842
- snare2 1
- rest 3
- snare2 1
+ drum_speed 6
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 4, 1
+ drum_note 4, 1
+ drum_speed 12
+ sound_call Music_TitleScreen_branch_7e834
+ sound_call Music_TitleScreen_branch_7e842
+ drum_note 2, 1
+ rest 3
+ drum_note 2, 1
rest 5
- snare2 1
- snare3 1
- snare2 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare3 1
- snare2 1
- snare2 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 2, 1
rest 1
- snare3 1
- snare2 1
- callchannel Music_TitleScreen_branch_7e834
- callchannel Music_TitleScreen_branch_7e842
- snare2 1
+ drum_note 3, 1
+ drum_note 2, 1
+ sound_call Music_TitleScreen_branch_7e834
+ sound_call Music_TitleScreen_branch_7e842
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare3 1
- snare2 1
- snare2 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 2, 1
rest 1
- snare4 1
- snare3 1
- snare2 1
+ drum_note 4, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 3
- snare3 1
+ drum_note 3, 1
rest 5
- snare2 1
- snare4 1
- snare2 1
+ drum_note 2, 1
+ drum_note 4, 1
+ drum_note 2, 1
rest 1
- dspeed 6
- snare3 1
- snare3 1
- snare4 1
- snare4 1
- dspeed 12
- snare1 1
- rest 3
- snare2 1
+ drum_speed 6
+ drum_note 3, 1
+ drum_note 3, 1
+ drum_note 4, 1
+ drum_note 4, 1
+ drum_speed 12
+ drum_note 1, 1
+ rest 3
+ drum_note 2, 1
rest 5
- snare3 1
- snare2 1
- snare1 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 1, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 3
- snare3 1
+ drum_note 3, 1
rest 5
- snare3 1
- snare2 1
- snare3 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 3, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 3
- snare3 1
+ drum_note 3, 1
rest 5
- snare2 1
- snare3 1
- snare4 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 4, 1
rest 1
- snare3 1
- snare2 1
- snare2 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 2, 1
rest 3
- snare3 1
+ drum_note 3, 1
rest 5
- snare2 1
- snare3 1
- snare2 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 3
- snare5 1
+ drum_note 5, 1
rest 5
- snare2 1
+ drum_note 2, 1
rest 3
- snare3 1
- snare2 1
- snare1 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 1, 1
rest 5
- snare2 1
- snare3 1
- snare2 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 1
- snare1 1
+ drum_note 1, 1
rest 1
- dspeed 8
- snare2 4
- snare3 4
- snare1 4
- dspeed 12
- snare5 1
+ drum_speed 8
+ drum_note 2, 4
+ drum_note 3, 4
+ drum_note 1, 4
+ drum_speed 12
+ drum_note 5, 1
rest 5
- snare2 1
+ drum_note 2, 1
rest 3
- snare3 1
- snare2 1
- snare3 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 3, 1
rest 5
- snare2 1
- snare3 1
- snare1 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 1, 1
rest 1
- snare3 1
- snare2 1
- dspeed 8
- snare2 4
- snare3 4
- snare2 4
- loopchannel 0, Music_TitleScreen_branch_7e716
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_speed 8
+ drum_note 2, 4
+ drum_note 3, 4
+ drum_note 2, 4
+ sound_loop 0, Music_TitleScreen_branch_7e716
Music_TitleScreen_branch_7e834::
- snare2 1
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare2 1
- snare3 1
- snare2 1
+ drum_note 2, 1
+ drum_note 3, 1
+ drum_note 2, 1
rest 3
- endchannel
+ sound_ret
Music_TitleScreen_branch_7e842::
- snare2 1
+ drum_note 2, 1
rest 3
- snare2 1
+ drum_note 2, 1
rest 5
- snare3 1
- snare2 1
- snare2 1
+ drum_note 3, 1
+ drum_note 2, 1
+ drum_note 2, 1
rest 3
- endchannel
+ sound_ret
diff --git a/audio/music/trainerbattle.asm b/audio/music/trainerbattle.asm
index 395f05de..ba5d6d1b 100644
--- a/audio/music/trainerbattle.asm
+++ b/audio/music/trainerbattle.asm
@@ -1,1857 +1,1857 @@
Music_TrainerBattle_Ch1::
tempo 112
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 2
+ toggle_perfect_pitch
+ note_type 12, 11, 2
rest 8
octave 3
- F_ 1
- E_ 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- C# 1
- C_ 1
- C# 1
- C_ 1
- octave 2
- B_ 1
- octave 3
- C_ 1
- octave 2
- B_ 1
- A# 1
- B_ 1
- A# 1
- A_ 1
- A# 1
- octave 3
- D_ 6
- E_ 6
- F_ 4
- D_ 2
- E_ 4
- F_ 6
- C_ 4
- D_ 6
- E_ 6
- F_ 4
- D_ 2
- E_ 4
- F_ 6
- C_ 2
- C# 2
- D_ 6
- E_ 6
- F_ 4
- D_ 2
- E_ 4
- F_ 6
- C_ 4
- D_ 6
- E_ 6
- F_ 4
- D_ 2
- E_ 4
- F_ 6
- C_ 2
- C# 2
+ note F_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note C_, 1
+ octave 2
+ note B_, 1
+ octave 3
+ note C_, 1
+ octave 2
+ note B_, 1
+ note A#, 1
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note A#, 1
+ octave 3
+ note D_, 6
+ note E_, 6
+ note F_, 4
+ note D_, 2
+ note E_, 4
+ note F_, 6
+ note C_, 4
+ note D_, 6
+ note E_, 6
+ note F_, 4
+ note D_, 2
+ note E_, 4
+ note F_, 6
+ note C_, 2
+ note C#, 2
+ note D_, 6
+ note E_, 6
+ note F_, 4
+ note D_, 2
+ note E_, 4
+ note F_, 6
+ note C_, 4
+ note D_, 6
+ note E_, 6
+ note F_, 4
+ note D_, 2
+ note E_, 4
+ note F_, 6
+ note C_, 2
+ note C#, 2
Music_TrainerBattle_branch_22962::
- notetype 12, 11, 5
- D_ 2
- E_ 4
- C# 2
- D_ 4
- octave 2
- B_ 4
- F# 4
- octave 3
- E_ 2
- D_ 4
- C# 2
- D_ 2
- E_ 2
- F_ 8
- notetype 12, 11, 2
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C_ 1
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C_ 1
- notetype 12, 11, 5
- D_ 2
- E_ 4
- C# 2
- D_ 4
- octave 2
- B_ 4
- F# 4
- octave 3
- E_ 2
- D_ 4
- C# 2
- octave 2
- B_ 2
- octave 3
- C# 2
- notetype 12, 10, 7
- D_ 8
- C# 8
- octave 2
- B_ 8
- octave 3
- C# 8
- notetype 12, 11, 5
- D_ 2
- C# 2
- octave 2
- B_ 2
- A_ 2
- G_ 2
+ note_type 12, 11, 5
+ note D_, 2
+ note E_, 4
+ note C#, 2
+ note D_, 4
+ octave 2
+ note B_, 4
+ note F#, 4
+ octave 3
+ note E_, 2
+ note D_, 4
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note F_, 8
+ note_type 12, 11, 2
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C_, 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C_, 1
+ note_type 12, 11, 5
+ note D_, 2
+ note E_, 4
+ note C#, 2
+ note D_, 4
+ octave 2
+ note B_, 4
+ note F#, 4
+ octave 3
+ note E_, 2
+ note D_, 4
+ note C#, 2
+ octave 2
+ note B_, 2
+ octave 3
+ note C#, 2
+ note_type 12, 10, 7
+ note D_, 8
+ note C#, 8
+ octave 2
+ note B_, 8
+ octave 3
+ note C#, 8
+ note_type 12, 11, 5
+ note D_, 2
+ note C#, 2
+ octave 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
rest 2
octave 3
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 2
- B_ 2
- A_ 2
- G_ 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
rest 2
octave 3
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 2
- E_ 4
+ note C#, 2
+ note E_, 4
octave 2
- G_ 1
- A_ 1
- B_ 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C# 1
- D_ 4
+ note C#, 1
+ note D_, 4
octave 2
- F# 1
- G_ 1
- A_ 1
- B_ 1
+ note F#, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C# 4
+ note C#, 4
octave 2
- G_ 1
- A_ 1
- B_ 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 3
- C# 1
- D_ 4
+ note C#, 1
+ note D_, 4
octave 2
- F# 1
- G_ 1
- A_ 1
- B_ 1
+ note F#, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 3
- D_ 2
- C# 2
+ note D_, 2
+ note C#, 2
octave 2
- B_ 2
- A_ 2
- G_ 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
rest 2
octave 3
- D_ 2
- C# 2
- octave 2
- B_ 2
- A_ 2
- B_ 2
- G_ 2
- octave 3
- D_ 2
- E_ 2
- F# 2
- G_ 2
- A_ 2
- B_ 2
- A_ 2
- G_ 2
- A_ 2
+ note D_, 2
+ note C#, 2
+ octave 2
+ note B_, 2
+ note A_, 2
+ note B_, 2
+ note G_, 2
+ octave 3
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note A_, 2
rest 2
- A_ 2
- B_ 2
- A_ 2
- G_ 2
- F# 2
- G_ 2
- A_ 2
- E_ 2
- G_ 2
- F# 2
- octave 2
- B_ 1
- octave 3
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note G_, 2
+ note A_, 2
+ note E_, 2
+ note G_, 2
+ note F#, 2
+ octave 2
+ note B_, 1
+ octave 3
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
- octave 3
- B_ 1
- A# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ octave 3
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
- octave 3
- B_ 1
- A# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ octave 3
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
- octave 3
- B_ 1
- A# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- A# 1
- B_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ octave 3
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
- octave 3
- B_ 1
- A# 1
- B_ 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ octave 3
+ note B_, 1
+ note A#, 1
+ note B_, 1
octave 4
- C_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- octave 3
- A_ 4
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ octave 3
+ note A_, 4
octave 4
- D_ 4
- octave 3
- A_ 2
- D_ 1
- E_ 1
- F# 1
- G_ 1
- G# 1
- A# 1
- B_ 2
+ note D_, 4
+ octave 3
+ note A_, 2
+ note D_, 1
+ note E_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A#, 1
+ note B_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- C_ 2
+ note C_, 2
octave 3
- G_ 2
- B_ 2
- F_ 2
- G_ 2
- A_ 2
+ note G_, 2
+ note B_, 2
+ note F_, 2
+ note G_, 2
+ note A_, 2
octave 4
- C_ 2
- D_ 2
+ note C_, 2
+ note D_, 2
rest 2
octave 3
- A_ 4
+ note A_, 4
octave 4
- C_ 4
- D_ 2
+ note C_, 4
+ note D_, 2
octave 3
- F_ 1
- G_ 1
- A_ 1
- B_ 1
+ note F_, 1
+ note G_, 1
+ note A_, 1
+ note B_, 1
octave 4
- C_ 1
- D_ 1
- E_ 2
- F_ 2
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- D_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
- F_ 2
- E_ 2
+ note C_, 1
+ note D_, 1
+ note E_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note D_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note E_, 2
octave 3
- B_ 2
- C_ 2
+ note B_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- C_ 2
- E_ 2
- D_ 2
+ note C_, 2
+ note E_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- D_ 2
- F_ 2
- C_ 2
+ note D_, 2
+ note F_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- C_ 2
+ note E_, 2
+ note C_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- C_ 2
- E_ 2
- D_ 2
+ note C_, 2
+ note E_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
- D_ 2
+ note F_, 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- D_ 2
- F_ 2
- D_ 16
- C_ 16
+ note D_, 2
+ note F_, 2
+ note D_, 16
+ note C_, 16
octave 2
- A# 16
- G_ 12
+ note A#, 16
+ note G_, 12
octave 3
- D_ 1
- E_ 1
- G_ 1
+ note D_, 1
+ note E_, 1
+ note G_, 1
octave 4
- C_ 1
- D_ 8
- F_ 8
+ note C_, 1
+ note D_, 8
+ note F_, 8
octave 3
- A# 8
+ note A#, 8
octave 4
- C_ 8
- D_ 8
- E_ 8
- F_ 8
- G_ 8
- E_ 2
+ note C_, 8
+ note D_, 8
+ note E_, 8
+ note F_, 8
+ note G_, 8
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 2
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 4
- E_ 2
+ note E_, 2
rest 2
octave 3
- C_ 2
- D_ 4
+ note C_, 2
+ note D_, 4
octave 2
- B_ 2
+ note B_, 2
octave 3
- C# 4
+ note C#, 4
rest 2
- C# 1
- D_ 1
- E_ 1
+ note C#, 1
+ note D_, 1
+ note E_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
octave 2
- B_ 1
+ note B_, 1
rest 1
octave 3
- C# 1
+ note C#, 1
rest 9
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
rest 5
- C# 1
- D_ 1
- E_ 1
+ note C#, 1
+ note D_, 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- D_ 1
+ note D_, 1
rest 1
- D_ 2
- E_ 2
- F_ 2
- G_ 2
- D# 1
- E_ 1
- F_ 1
- F# 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
+ note D_, 2
+ note E_, 2
+ note F_, 2
+ note G_, 2
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
rest 9
- F# 2
- E_ 4
- D# 2
- E_ 2
- F# 2
- G# 2
- E_ 8
- F# 8
- G_ 8
+ note F#, 2
+ note E_, 4
+ note D#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note E_, 8
+ note F#, 8
+ note G_, 8
octave 4
- C_ 4
+ note C_, 4
octave 3
- G_ 1
- G# 1
- A_ 1
- A# 1
- loopchannel 0, Music_TrainerBattle_branch_22962
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note A#, 1
+ sound_loop 0, Music_TrainerBattle_branch_22962
Music_TrainerBattle_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 5
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 4
- A_ 1
- G# 1
- G_ 1
- F# 1
- A_ 1
- F_ 1
- F# 1
- F_ 1
- A_ 1
- E_ 1
- F_ 1
- E_ 1
- A_ 1
- D# 1
- E_ 1
- D# 1
- A_ 1
- D_ 1
- D# 1
- D_ 1
- A_ 1
- C# 1
- D_ 1
- C# 1
- A_ 1
- C_ 1
- C# 1
- C_ 1
- A_ 1
- octave 3
- B_ 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note A_, 1
+ note F_, 1
+ note F#, 1
+ note F_, 1
+ note A_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note A_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note A_, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note A_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note A_, 1
+ note C_, 1
+ note C#, 1
+ note C_, 1
+ note A_, 1
+ octave 3
+ note B_, 1
octave 4
- C_ 1
+ note C_, 1
octave 3
- B_ 1
- notetype 12, 14, 1
+ note B_, 1
+ note_type 12, 14, 1
octave 4
- B_ 16
+ note B_, 16
rest 16
- notetype 12, 13, 1
- B_ 16
+ note_type 12, 13, 1
+ note B_, 16
rest 12
- A_ 4
- notetype 12, 12, 2
+ note A_, 4
+ note_type 12, 12, 2
octave 3
- B_ 6
+ note B_, 6
octave 4
- C# 6
- D_ 4
+ note C#, 6
+ note D_, 4
octave 3
- B_ 2
+ note B_, 2
octave 4
- C# 4
- D_ 6
- A_ 2
- A# 2
- B_ 6
+ note C#, 4
+ note D_, 6
+ note A_, 2
+ note A#, 2
+ note B_, 6
octave 5
- C# 6
- D_ 4
+ note C#, 6
+ note D_, 4
octave 4
- B_ 2
+ note B_, 2
octave 5
- C# 4
- D_ 6
+ note C#, 4
+ note D_, 6
octave 4
- A_ 4
+ note A_, 4
Music_TrainerBattle_branch_22bfc::
- notetype 12, 12, 7
- octave 3
- B_ 6
- F# 14
- B_ 4
- F# 4
- B_ 4
- notetype 12, 5, 0
+ note_type 12, 12, 7
+ octave 3
+ note B_, 6
+ note F#, 14
+ note B_, 4
+ note F#, 4
+ note B_, 4
+ note_type 12, 5, 0
octave 4
- C_ 8
- notetype 12, 3, 0
- C_ 8
- notetype 12, 4, 14
- C_ 8
- notetype 12, 12, 7
- C_ 8
- octave 3
- B_ 6
- F# 14
- B_ 4
- F# 4
- B_ 4
- notetype 12, 9, 0
- A_ 8
- notetype 12, 5, 0
- A_ 8
- notetype 12, 4, 0
- A_ 8
- notetype 12, 3, 0
- A_ 8
- notetype 12, 12, 7
- G_ 16
+ note C_, 8
+ note_type 12, 3, 0
+ note C_, 8
+ note_type 12, 4, -6
+ note C_, 8
+ note_type 12, 12, 7
+ note C_, 8
+ octave 3
+ note B_, 6
+ note F#, 14
+ note B_, 4
+ note F#, 4
+ note B_, 4
+ note_type 12, 9, 0
+ note A_, 8
+ note_type 12, 5, 0
+ note A_, 8
+ note_type 12, 4, 0
+ note A_, 8
+ note_type 12, 3, 0
+ note A_, 8
+ note_type 12, 12, 7
+ note G_, 16
octave 4
- D_ 8
- octave 3
- G_ 8
- notetype 12, 8, 0
- A_ 8
- notetype 12, 5, 0
- A_ 8
- notetype 12, 4, 0
- A_ 8
- notetype 12, 6, 0
- A_ 8
- notetype 12, 12, 7
- G_ 16
+ note D_, 8
+ octave 3
+ note G_, 8
+ note_type 12, 8, 0
+ note A_, 8
+ note_type 12, 5, 0
+ note A_, 8
+ note_type 12, 4, 0
+ note A_, 8
+ note_type 12, 6, 0
+ note A_, 8
+ note_type 12, 12, 7
+ note G_, 16
octave 4
- E_ 8
- F# 8
- E_ 16
- notetype 12, 12, 5
- G_ 4
- A_ 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- E_ 2
- notetype 12, 11, 7
- F# 8
- notetype 12, 5, 0
- F# 8
- notetype 12, 6, 0
- F# 8
- notetype 12, 7, 0
- F# 8
- notetype 12, 10, 0
- G_ 8
- notetype 12, 10, 7
- G_ 8
- notetype 12, 11, 7
- G_ 4
- notetype 12, 12, 5
- A_ 2
- G_ 2
- G_ 2
- F# 2
- E_ 2
- F# 2
- notetype 12, 10, 0
- G# 8
- notetype 12, 7, 0
- G# 8
- notetype 12, 8, 0
- G# 8
- notetype 12, 6, 0
- G# 8
- notetype 12, 10, 0
- A_ 16
- notetype 12, 11, 0
+ note E_, 8
+ note F#, 8
+ note E_, 16
+ note_type 12, 12, 5
+ note G_, 4
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note E_, 2
+ note_type 12, 11, 7
+ note F#, 8
+ note_type 12, 5, 0
+ note F#, 8
+ note_type 12, 6, 0
+ note F#, 8
+ note_type 12, 7, 0
+ note F#, 8
+ note_type 12, 10, 0
+ note G_, 8
+ note_type 12, 10, 7
+ note G_, 8
+ note_type 12, 11, 7
+ note G_, 4
+ note_type 12, 12, 5
+ note A_, 2
+ note G_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note_type 12, 10, 0
+ note G#, 8
+ note_type 12, 7, 0
+ note G#, 8
+ note_type 12, 8, 0
+ note G#, 8
+ note_type 12, 6, 0
+ note G#, 8
+ note_type 12, 10, 0
+ note A_, 16
+ note_type 12, 11, 0
octave 5
- C# 8
- E_ 8
- notetype 12, 12, 0
- D_ 4
+ note C#, 8
+ note E_, 8
+ note_type 12, 12, 0
+ note D_, 4
octave 4
- A_ 4
+ note A_, 4
octave 5
- C_ 2
- notetype 12, 12, 7
+ note C_, 2
+ note_type 12, 12, 7
octave 4
- B_ 8
- notetype 12, 6, 0
- B_ 8
- notetype 12, 6, 9
- B_ 6
- notetype 12, 9, 6
- B_ 6
+ note B_, 8
+ note_type 12, 6, 0
+ note B_, 8
+ note_type 12, 6, -1
+ note B_, 6
+ note_type 12, 9, 6
+ note B_, 6
rest 2
- notetype 12, 12, 0
+ note_type 12, 12, 0
octave 5
- D_ 4
+ note D_, 4
octave 4
- A_ 4
- A# 2
- notetype 12, 11, 0
+ note A_, 4
+ note A#, 2
+ note_type 12, 11, 0
octave 5
- F_ 14
- notetype 12, 6, 0
- G_ 16
- notetype 12, 5, 0
- E_ 16
- notetype 12, 4, 0
- E_ 16
- notetype 12, 12, 7
+ note F_, 14
+ note_type 12, 6, 0
+ note G_, 16
+ note_type 12, 5, 0
+ note E_, 16
+ note_type 12, 4, 0
+ note E_, 16
+ note_type 12, 12, 7
octave 4
- C_ 6
+ note C_, 6
octave 3
- A_ 14
+ note A_, 14
octave 4
- C_ 4
+ note C_, 4
octave 3
- A_ 4
+ note A_, 4
octave 4
- C_ 4
+ note C_, 4
octave 3
- A# 6
+ note A#, 6
octave 4
- F_ 14
+ note F_, 14
octave 3
- A# 4
+ note A#, 4
octave 4
- F_ 4
- D_ 4
- C_ 6
+ note F_, 4
+ note D_, 4
+ note C_, 6
octave 3
- A_ 14
+ note A_, 14
octave 4
- C_ 4
- E_ 2
- D_ 2
- C_ 2
- E_ 2
- D_ 2
- octave 3
- A# 4
+ note C_, 4
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ note E_, 2
+ note D_, 2
+ octave 3
+ note A#, 4
octave 4
- F_ 10
- G_ 6
- F_ 6
- D_ 4
- notetype 12, 11, 0
- F_ 16
- E_ 16
- D_ 16
- E_ 16
- notetype 12, 10, 0
+ note F_, 10
+ note G_, 6
+ note F_, 6
+ note D_, 4
+ note_type 12, 11, 0
+ note F_, 16
+ note E_, 16
+ note D_, 16
+ note E_, 16
+ note_type 12, 10, 0
octave 5
- F_ 16
- E_ 16
- G_ 16
- F_ 16
- notetype 12, 13, 1
- octave 3
- A# 6
- A# 6
- A# 4
- A_ 6
- A_ 6
- A_ 4
+ note F_, 16
+ note E_, 16
+ note G_, 16
+ note F_, 16
+ note_type 12, 13, 1
+ octave 3
+ note A#, 6
+ note A#, 6
+ note A#, 4
+ note A_, 6
+ note A_, 6
+ note A_, 4
octave 4
- C_ 6
- C_ 6
- C_ 4
- octave 3
- A# 6
- A# 6
- A_ 4
- notetype 12, 12, 7
- A_ 4
- B_ 4
- G_ 2
- A_ 10
- B_ 2
+ note C_, 6
+ note C_, 6
+ note C_, 4
+ octave 3
+ note A#, 6
+ note A#, 6
+ note A_, 4
+ note_type 12, 12, 7
+ note A_, 4
+ note B_, 4
+ note G_, 2
+ note A_, 10
+ note B_, 2
octave 4
- C# 2
- E_ 2
- D_ 2
- C# 2
+ note C#, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- A# 16
+ note B_, 2
+ note A#, 16
rest 2
- A# 2
+ note A#, 2
octave 4
- C_ 2
- F_ 2
- E_ 2
- D_ 2
- C_ 2
- octave 3
- A# 2
- B_ 16
+ note C_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ octave 3
+ note A#, 2
+ note B_, 16
rest 2
- B_ 2
+ note B_, 2
octave 4
- C# 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
+ note C#, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
octave 3
- B_ 2
+ note B_, 2
octave 4
- C_ 16
- E_ 8
- G_ 8
- loopchannel 0, Music_TrainerBattle_branch_22bfc
+ note C_, 16
+ note E_, 8
+ note G_, 8
+ sound_loop 0, Music_TrainerBattle_branch_22bfc
Music_TrainerBattle_Ch3::
vibrato 0, 2, 0
- notetype 12, 1, 4
+ note_type 12, 1, 4
octave 3
- B_ 1
- A# 1
- A_ 1
- G# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
- C# 1
- C_ 1
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note C_, 1
octave 2
- B_ 1
- A# 1
- B_ 1
- A# 1
- A_ 1
- G# 1
- A_ 2
- A# 2
- B_ 2
- B_ 2
+ note B_, 1
+ note A#, 1
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note A_, 2
+ note A#, 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F_ 2
- E_ 2
- D_ 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F_ 2
- E_ 2
- D_ 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F_ 2
- E_ 2
- D_ 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- C_ 2
+ note C_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F_ 2
- E_ 2
- D_ 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
octave 2
- B_ 2
- B_ 2
+ note B_, 2
+ note B_, 2
octave 3
- D_ 2
- E_ 2
+ note D_, 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- C_ 2
+ note C_, 2
Music_TrainerBattle_branch_22d9c::
octave 2
- A# 1
- B_ 1
+ note A#, 1
+ note B_, 1
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- A_ 2
- G_ 2
- F# 2
- E_ 2
- D_ 2
- C_ 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- D_ 2
- C# 2
- D_ 2
- C# 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 2
- A_ 2
- G# 2
- G_ 2
+ note A_, 2
+ note G#, 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
- G# 2
- A_ 2
+ note G_, 2
+ note G#, 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
+ note G_, 2
octave 3
- D_ 2
+ note D_, 2
octave 2
- G_ 2
- G# 2
- A_ 2
+ note G_, 2
+ note G#, 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- D_ 2
- C# 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
- D_ 2
- E_ 2
- F# 2
- E_ 2
- D_ 2
- F# 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- D# 2
- F_ 2
- G_ 2
- F_ 2
- D# 2
- G_ 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- E_ 2
- F# 2
- G# 2
- F# 2
- E_ 2
- G# 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- D_ 2
- A_ 2
- F_ 2
- G_ 2
- A_ 2
- G_ 2
- F_ 2
- E_ 2
- D_ 4
+ note F#, 2
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note F#, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note D#, 2
+ note F_, 2
+ note G_, 2
+ note F_, 2
+ note D#, 2
+ note G_, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note D_, 2
+ note A_, 2
+ note F_, 2
+ note G_, 2
+ note A_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note D_, 4
octave 2
- A_ 4
+ note A_, 4
octave 3
- C_ 2
- G_ 2
+ note C_, 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
+ note G_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- G_ 2
- D_ 4
+ note G_, 2
+ note D_, 4
octave 2
- A_ 4
- A# 2
+ note A_, 4
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 4
+ note A#, 4
octave 3
- F_ 4
+ note F_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- F_ 4
+ note F_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- D_ 4
+ note D_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- D_ 4
+ note D_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- F_ 4
+ note F_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- F_ 4
+ note F_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- D_ 4
+ note D_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- D_ 4
+ note D_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A# 4
+ note A#, 4
octave 3
- E_ 4
+ note E_, 4
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- B_ 2
- A_ 2
+ note B_, 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
- E_ 2
+ note E_, 2
+ note E_, 2
octave 2
- B_ 2
- A_ 2
+ note B_, 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A_ 2
+ note A_, 2
octave 3
- E_ 2
+ note E_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- A# 2
+ note A#, 2
octave 3
- F_ 2
+ note F_, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
+ note F#, 2
octave 2
- B_ 2
+ note B_, 2
octave 3
- F# 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- F# 2
- E_ 2
- F# 2
- E_ 2
- D_ 2
- C_ 2
- loopchannel 0, Music_TrainerBattle_branch_22d9c
+ note F#, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note D_, 2
+ note C_, 2
+ sound_loop 0, Music_TrainerBattle_branch_22d9c
diff --git a/audio/music/unusedsong.asm b/audio/music/unusedsong.asm
index 10ca4beb..a2291a2a 100644
--- a/audio/music/unusedsong.asm
+++ b/audio/music/unusedsong.asm
@@ -4,335 +4,335 @@ Music_UnusedSong_Ch1::
vibrato 5, 1, 6
Music_UnusedSong_branch_a91b::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 6
- E_ 1
+ note E_, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
rest 1
octave 6
- C# 1
+ note C#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
octave 6
- E_ 1
+ note E_, 1
rest 4
- E_ 2
+ note E_, 2
rest 2
- D# 1
+ note D#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
rest 1
octave 6
- C# 1
+ note C#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
octave 6
- D# 1
+ note D#, 1
rest 8
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- C# 1
+ note C#, 1
octave 5
- B_ 1
+ note B_, 1
rest 2
octave 6
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- C# 1
+ note C#, 1
octave 5
- B_ 1
+ note B_, 1
rest 2
octave 6
- D# 4
- C# 4
- D# 1
- E_ 1
+ note D#, 4
+ note C#, 4
+ note D#, 1
+ note E_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
octave 5
- B_ 2
+ note B_, 2
rest 1
octave 6
- E_ 1
+ note E_, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
rest 1
octave 6
- C# 1
+ note C#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
octave 6
- E_ 1
+ note E_, 1
rest 8
- D# 1
+ note D#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
rest 1
octave 6
- C# 1
+ note C#, 1
rest 1
octave 5
- B_ 1
+ note B_, 1
octave 6
- D# 1
+ note D#, 1
rest 4
octave 5
- B_ 2
+ note B_, 2
rest 2
octave 6
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- C# 1
+ note C#, 1
octave 5
- B_ 1
+ note B_, 1
rest 2
octave 6
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
- F# 1
+ note E_, 1
+ note F#, 1
rest 2
- F# 4
- E_ 4
- F# 1
- G# 1
+ note F#, 4
+ note E_, 4
+ note F#, 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D# 2
+ note D#, 2
rest 3
octave 5
- A_ 2
+ note A_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
octave 6
- C# 2
+ note C#, 2
rest 2
- E_ 2
- F# 8
+ note E_, 2
+ note F#, 8
rest 2
- E_ 2
- D# 2
- C# 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
rest 2
octave 5
- G# 2
+ note G#, 2
rest 2
- A_ 2
+ note A_, 2
rest 2
- B_ 2
+ note B_, 2
rest 2
octave 6
- D# 2
- E_ 8
+ note D#, 2
+ note E_, 8
rest 2
- D# 2
- C# 2
- D# 2
+ note D#, 2
+ note C#, 2
+ note D#, 2
octave 5
- A_ 2
- G# 2
- A_ 2
- A# 1
- B_ 1
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note A#, 1
+ note B_, 1
rest 4
- F# 2
+ note F#, 2
rest 2
- B_ 2
- A# 2
- B_ 2
+ note B_, 2
+ note A#, 2
+ note B_, 2
octave 6
- C_ 1
- C# 1
+ note C_, 1
+ note C#, 1
rest 8
octave 5
- F# 2
- F_ 2
- F# 2
- G# 2
- A_ 2
+ note F#, 2
+ note F_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
octave 6
- E_ 2
- D# 2
- C# 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
octave 5
- B_ 2
+ note B_, 2
rest 6
- B_ 2
+ note B_, 2
rest 6
- loopchannel 0, Music_UnusedSong_branch_a91b
- endchannel
+ sound_loop 0, Music_UnusedSong_branch_a91b
+ sound_ret
Music_UnusedSong_Ch2::
tempo 144
volume 7, 7
- toggleperfectpitch
+ toggle_perfect_pitch
vibrato 6, 1, 5
Music_UnusedSong_branch_a9d8::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 6
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
- G# 1
+ note A_, 1
+ note G#, 1
rest 8
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
- F# 1
+ note G#, 1
+ note F#, 1
rest 4
octave 5
- B_ 2
+ note B_, 2
rest 2
octave 6
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
- F# 1
+ note E_, 1
+ note F#, 1
rest 2
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
- F# 1
+ note E_, 1
+ note F#, 1
rest 2
- F# 4
- E_ 4
- F# 1
- G# 1
+ note F#, 4
+ note E_, 4
+ note F#, 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- D# 2
+ note D#, 2
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
- G# 1
+ note A_, 1
+ note G#, 1
rest 4
- E_ 2
+ note E_, 2
rest 2
- D# 1
+ note D#, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
- F# 1
+ note G#, 1
+ note F#, 1
rest 8
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
- F# 1
+ note E_, 1
+ note F#, 1
rest 2
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
- F# 1
+ note E_, 1
+ note F#, 1
rest 2
- F# 4
- E_ 4
- F# 1
- G# 1
+ note F#, 4
+ note E_, 4
+ note F#, 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 2
+ note F#, 2
rest 1
- C# 2
+ note C#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- E_ 2
+ note E_, 2
rest 2
- G# 2
+ note G#, 2
rest 2
- D# 8
+ note D#, 8
rest 2
- E_ 2
- D# 2
- C# 2
+ note E_, 2
+ note D#, 2
+ note C#, 2
octave 5
- B_ 2
+ note B_, 2
rest 2
octave 6
- C# 2
+ note C#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- F# 2
+ note F#, 2
rest 2
- C# 8
+ note C#, 8
rest 2
- D# 2
- C# 2
+ note D#, 2
+ note C#, 2
octave 5
- B_ 2
- A_ 2
- G# 2
- A_ 2
- G# 1
- F# 1
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note A_, 2
+ note G#, 1
+ note F#, 1
rest 8
- B_ 2
- A# 2
- B_ 2
- A_ 1
- G# 1
+ note B_, 2
+ note A#, 2
+ note B_, 2
+ note A_, 1
+ note G#, 1
rest 4
- G# 2
- rest 2
- F# 2
- F_ 2
- F# 2
- G# 2
- A_ 2
- E_ 2
- C# 2
- E_ 2
- F# 2
+ note G#, 2
+ rest 2
+ note F#, 2
+ note F_, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note E_, 2
+ note C#, 2
+ note E_, 2
+ note F#, 2
rest 6
- D# 2
+ note D#, 2
rest 6
- loopchannel 0, Music_UnusedSong_branch_a9d8
- endchannel
+ sound_loop 0, Music_UnusedSong_branch_a9d8
+ sound_ret
diff --git a/audio/music/vermilion.asm b/audio/music/vermilion.asm
index 94f87b25..2788cde9 100644
--- a/audio/music/vermilion.asm
+++ b/audio/music/vermilion.asm
@@ -1,323 +1,323 @@
Music_Vermilion_Ch1::
tempo 156
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 12, 3, 4
- toggleperfectpitch
+ toggle_perfect_pitch
Music_Vermilion_branch_b9f6::
- notetype 12, 11, 5
+ note_type 12, 11, 5
octave 3
- E_ 4
- C# 1
- D_ 1
- E_ 2
- A_ 4
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- A_ 4
- F# 1
- G# 1
- A_ 2
- E_ 4
- C# 2
- E_ 2
- A_ 2
- G# 2
- B_ 2
- A_ 2
- G# 2
- E_ 2
- F# 2
- G# 2
- C# 2
- D_ 2
- E_ 2
- F# 2
- E_ 4
- C# 1
- D_ 1
- E_ 2
- A_ 4
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- A_ 4
- F# 1
- G# 1
- A_ 2
- E_ 4
- C# 1
- D_ 1
- E_ 2
- A_ 2
- G# 2
- F# 2
- A_ 2
- G# 2
- E_ 2
- F# 2
- G# 2
- F# 4
- E_ 4
- F# 2
- G# 2
- F# 2
- A_ 2
- G# 2
- B_ 2
- A_ 2
+ note E_, 4
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note A_, 4
+ note F#, 1
+ note G#, 1
+ note A_, 2
+ note E_, 4
+ note C#, 2
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note C#, 2
+ note D_, 2
+ note E_, 2
+ note F#, 2
+ note E_, 4
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note A_, 4
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note A_, 4
+ note F#, 1
+ note G#, 1
+ note A_, 2
+ note E_, 4
+ note C#, 1
+ note D_, 1
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note F#, 4
+ note E_, 4
+ note F#, 2
+ note G#, 2
+ note F#, 2
+ note A_, 2
+ note G#, 2
+ note B_, 2
+ note A_, 2
octave 4
- C# 2
- D_ 2
- C# 2
+ note C#, 2
+ note D_, 2
+ note C#, 2
octave 3
- B_ 2
- A_ 2
- G# 1
- A_ 1
- B_ 2
+ note B_, 2
+ note A_, 2
+ note G#, 1
+ note A_, 1
+ note B_, 2
octave 4
- C# 2
- E_ 2
+ note C#, 2
+ note E_, 2
octave 3
- A_ 2
+ note A_, 2
octave 4
- D_ 2
+ note D_, 2
octave 3
- G# 2
+ note G#, 2
octave 4
- C# 2
+ note C#, 2
octave 3
- F# 2
- B_ 2
- G# 2
- A_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- F# 2
- G# 2
- B_ 2
- loopchannel 0, Music_Vermilion_branch_b9f6
+ note F#, 2
+ note B_, 2
+ note G#, 2
+ note A_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note B_, 2
+ sound_loop 0, Music_Vermilion_branch_b9f6
Music_Vermilion_Ch2::
- duty 3
+ duty_cycle 3
vibrato 10, 2, 3
Music_Vermilion_branch_ba66::
- notetype 12, 12, 7
+ note_type 12, 12, 7
octave 3
- A_ 8
+ note A_, 8
octave 4
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 6
- A_ 1
- B_ 1
+ note B_, 6
+ note A_, 1
+ note B_, 1
octave 4
- C# 8
+ note C#, 8
octave 3
- A_ 8
+ note A_, 8
octave 4
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 6
+ note B_, 6
octave 4
- C# 1
+ note C#, 1
octave 3
- B_ 1
- A_ 8
- A_ 8
+ note B_, 1
+ note A_, 8
+ note A_, 8
octave 4
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 6
- A_ 1
- B_ 1
+ note B_, 6
+ note A_, 1
+ note B_, 1
octave 4
- C# 8
+ note C#, 8
octave 3
- A_ 8
+ note A_, 8
octave 4
- D_ 4
- C# 4
+ note D_, 4
+ note C#, 4
octave 3
- B_ 6
+ note B_, 6
octave 4
- C# 1
+ note C#, 1
octave 3
- B_ 1
- A_ 8
- B_ 4
+ note B_, 1
+ note A_, 8
+ note B_, 4
octave 4
- C# 4
- D_ 4
- E_ 4
- F# 8
- B_ 8
- A_ 4
- G# 4
- F# 4
- E_ 4
- F# 8
- E_ 8
- loopchannel 0, Music_Vermilion_branch_ba66
+ note C#, 4
+ note D_, 4
+ note E_, 4
+ note F#, 8
+ note B_, 8
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note E_, 4
+ note F#, 8
+ note E_, 8
+ sound_loop 0, Music_Vermilion_branch_ba66
Music_Vermilion_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
Music_Vermilion_branch_baa8::
octave 4
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- A_ 2
- G# 2
- F# 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- A_ 2
- G# 2
- F# 2
- G# 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- A_ 2
- E_ 2
- A_ 2
- E_ 2
- B_ 2
- E_ 2
- A_ 2
- E_ 2
- G# 2
- E_ 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- G# 2
- E_ 2
- B_ 2
- A_ 2
- G# 2
- F# 2
- F# 2
- E_ 2
- G# 2
- E_ 2
- A_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- B_ 2
- E_ 2
- A_ 2
- E_ 2
- G# 2
- E_ 2
- loopchannel 0, Music_Vermilion_branch_baa8
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note G#, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note B_, 2
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note F#, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note B_, 2
+ note E_, 2
+ note A_, 2
+ note E_, 2
+ note G#, 2
+ note E_, 2
+ sound_loop 0, Music_Vermilion_branch_baa8
Music_Vermilion_Ch4::
- dspeed 12
+ drum_speed 12
Music_Vermilion_branch_bb0e::
- callchannel Music_Vermilion_branch_bb3f
- triangle1 2
- triangle1 1
- triangle1 1
- triangle1 2
- triangle1 1
- triangle1 1
- triangle1 2
- triangle1 1
- triangle1 1
- triangle1 1
- triangle1 1
- triangle1 1
- triangle1 1
- loopchannel 4, Music_Vermilion_branch_bb0e
- callchannel Music_Vermilion_branch_bb3f
- callchannel Music_Vermilion_branch_bb3f
- callchannel Music_Vermilion_branch_bb3f
- callchannel Music_Vermilion_branch_bb3f
- loopchannel 0, Music_Vermilion_branch_bb0e
+ sound_call Music_Vermilion_branch_bb3f
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 1
+ sound_loop 4, Music_Vermilion_branch_bb0e
+ sound_call Music_Vermilion_branch_bb3f
+ sound_call Music_Vermilion_branch_bb3f
+ sound_call Music_Vermilion_branch_bb3f
+ sound_call Music_Vermilion_branch_bb3f
+ sound_loop 0, Music_Vermilion_branch_bb0e
Music_Vermilion_branch_bb3f::
- triangle1 2
- triangle1 1
- triangle1 1
- triangle1 2
- triangle1 1
- triangle1 1
- triangle1 2
- triangle1 1
- triangle1 1
- triangle1 2
- triangle1 1
- triangle1 1
- endchannel
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ drum_note 6, 2
+ drum_note 6, 1
+ drum_note 6, 1
+ sound_ret
diff --git a/audio/music/wildbattle.asm b/audio/music/wildbattle.asm
index 3a88678f..f7cfab14 100644
--- a/audio/music/wildbattle.asm
+++ b/audio/music/wildbattle.asm
@@ -1,738 +1,738 @@
Music_WildBattle_Ch1::
tempo 104
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 6, 3, 4
- toggleperfectpitch
- notetype 12, 11, 3
+ toggle_perfect_pitch
+ note_type 12, 11, 3
octave 4
- C_ 1
+ note C_, 1
octave 3
- B_ 1
- A# 1
- A_ 1
- A# 1
- A_ 1
- G# 1
- G_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- C# 1
- C_ 1
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note A#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
octave 2
- B_ 1
+ note B_, 1
octave 3
- C_ 1
+ note C_, 1
octave 2
- B_ 1
- A# 1
- A_ 1
- A# 1
- B_ 1
+ note B_, 1
+ note A#, 1
+ note A_, 1
+ note A#, 1
+ note B_, 1
octave 3
- C_ 1
- C# 1
- notetype 12, 11, 1
- G_ 6
- E_ 6
- D# 12
- C# 14
- E_ 6
- D# 10
- notetype 12, 4, 15
- C# 10
- notetype 12, 11, 1
- G_ 6
- E_ 6
- D# 12
- C# 14
- E_ 6
- D# 10
- C# 10
+ note C_, 1
+ note C#, 1
+ note_type 12, 11, 1
+ note G_, 6
+ note E_, 6
+ note D#, 12
+ note C#, 14
+ note E_, 6
+ note D#, 10
+ note_type 12, 4, -7
+ note C#, 10
+ note_type 12, 11, 1
+ note G_, 6
+ note E_, 6
+ note D#, 12
+ note C#, 14
+ note E_, 6
+ note D#, 10
+ note C#, 10
Music_WildBattle_branch_230e0::
- notetype 12, 11, 3
- C# 1
- D_ 1
- C# 1
- C_ 1
- C# 1
- D_ 1
- C# 1
- C_ 1
- C# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- C_ 1
+ note_type 12, 11, 3
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note C_, 1
octave 2
- B_ 1
+ note B_, 1
octave 3
- C_ 1
- C# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- F_ 1
- E_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- A_ 1
- G# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- D_ 1
- C# 1
- D_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- F# 1
- F_ 1
- E_ 1
- D# 1
- E_ 1
- F_ 1
- F# 1
- G_ 1
- G# 1
- notetype 12, 11, 5
- D_ 4
- C_ 4
- D_ 4
- F_ 4
- E_ 6
- D_ 6
- F_ 4
- notetype 12, 11, 7
- A_ 16
- G_ 16
- notetype 12, 11, 5
- D_ 4
- C_ 4
- D_ 4
- F_ 4
- G_ 6
- A_ 6
- B_ 4
- notetype 12, 11, 7
+ note C_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note A_, 1
+ note G#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note D_, 1
+ note C#, 1
+ note D_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
+ note E_, 1
+ note D#, 1
+ note E_, 1
+ note F_, 1
+ note F#, 1
+ note G_, 1
+ note G#, 1
+ note_type 12, 11, 5
+ note D_, 4
+ note C_, 4
+ note D_, 4
+ note F_, 4
+ note E_, 6
+ note D_, 6
+ note F_, 4
+ note_type 12, 11, 7
+ note A_, 16
+ note G_, 16
+ note_type 12, 11, 5
+ note D_, 4
+ note C_, 4
+ note D_, 4
+ note F_, 4
+ note G_, 6
+ note A_, 6
+ note B_, 4
+ note_type 12, 11, 7
octave 4
- C_ 16
- notetype 12, 3, 15
- G_ 16
- notetype 12, 11, 5
+ note C_, 16
+ note_type 12, 3, -7
+ note G_, 16
+ note_type 12, 11, 5
octave 3
- C_ 12
- C_ 2
+ note C_, 12
+ note C_, 2
rest 2
- D_ 2
- C_ 2
+ note D_, 2
+ note C_, 2
rest 12
- C# 12
- C# 2
+ note C#, 12
+ note C#, 2
rest 2
- F_ 2
- notetype 12, 10, 3
- D# 6
- notetype 12, 10, 7
- C# 8
- loopchannel 0, Music_WildBattle_branch_230e0
+ note F_, 2
+ note_type 12, 10, 3
+ note D#, 6
+ note_type 12, 10, 7
+ note C#, 8
+ sound_loop 0, Music_WildBattle_branch_230e0
Music_WildBattle_Ch2::
- duty 3
+ duty_cycle 3
vibrato 8, 2, 5
- notetype 12, 12, 3
+ note_type 12, 12, 3
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
+ note G_, 1
octave 4
- G_ 1
- F# 1
- F_ 1
+ note G_, 1
+ note F#, 1
+ note F_, 1
octave 5
- G_ 1
- notetype 12, 12, 2
+ note G_, 1
+ note_type 12, 12, 2
octave 4
- G_ 6
+ note G_, 6
octave 3
- G_ 6
- G_ 12
- G_ 14
- G_ 6
- G_ 10
- notetype 12, 9, 0
- F# 10
- notetype 12, 12, 2
- G_ 6
- G_ 6
- G_ 12
- G_ 14
- G_ 6
- G_ 10
- G_ 10
+ note G_, 6
+ note G_, 12
+ note G_, 14
+ note G_, 6
+ note G_, 10
+ note_type 12, 9, 0
+ note F#, 10
+ note_type 12, 12, 2
+ note G_, 6
+ note G_, 6
+ note G_, 12
+ note G_, 14
+ note G_, 6
+ note G_, 10
+ note G_, 10
Music_WildBattle_branch_23225::
- notetype 12, 12, 5
- G_ 6
- F# 6
- E_ 4
- G_ 6
- A_ 6
- G_ 4
+ note_type 12, 12, 5
+ note G_, 6
+ note F#, 6
+ note E_, 4
+ note G_, 6
+ note A_, 6
+ note G_, 4
octave 4
- G# 12
- G_ 2
+ note G#, 12
+ note G_, 2
rest 2
- G# 2
- G_ 2
+ note G#, 2
+ note G_, 2
rest 4
- notetype 12, 11, 7
+ note_type 12, 11, 7
octave 5
- C# 8
- notetype 12, 12, 5
+ note C#, 8
+ note_type 12, 12, 5
octave 4
- C_ 6
+ note C_, 6
octave 3
- A# 6
- G# 4
+ note A#, 6
+ note G#, 4
octave 4
- C# 6
- C_ 6
+ note C#, 6
+ note C_, 6
octave 3
- A# 4
+ note A#, 4
octave 4
- F_ 6
- E_ 6
- D_ 4
- notetype 12, 12, 7
+ note F_, 6
+ note E_, 6
+ note D_, 4
+ note_type 12, 12, 7
octave 3
- A# 4
+ note A#, 4
octave 4
- C_ 4
- D_ 4
- F_ 4
- notetype 12, 12, 0
- G# 16
- notetype 12, 11, 0
- G# 16
- notetype 12, 4, 14
- G_ 16
- notetype 12, 12, 7
- G_ 16
+ note C_, 4
+ note D_, 4
+ note F_, 4
+ note_type 12, 12, 0
+ note G#, 16
+ note_type 12, 11, 0
+ note G#, 16
+ note_type 12, 4, -6
+ note G_, 16
+ note_type 12, 12, 7
+ note G_, 16
octave 3
- F_ 8
- A# 8
+ note F_, 8
+ note A#, 8
octave 4
- D_ 8
- F_ 8
- notetype 12, 12, 0
- E_ 16
- notetype 12, 12, 7
- E_ 16
+ note D_, 8
+ note F_, 8
+ note_type 12, 12, 0
+ note E_, 16
+ note_type 12, 12, 7
+ note E_, 16
octave 3
- F_ 8
- A# 8
+ note F_, 8
+ note A#, 8
octave 4
- D_ 8
- F_ 8
- notetype 12, 12, 0
- G_ 16
- notetype 12, 3, 15
+ note D_, 8
+ note F_, 8
+ note_type 12, 12, 0
+ note G_, 16
+ note_type 12, 3, -7
octave 5
- C_ 16
- notetype 12, 12, 5
+ note C_, 16
+ note_type 12, 12, 5
octave 4
- E_ 12
- E_ 2
+ note E_, 12
+ note E_, 2
rest 2
- F_ 2
- notetype 12, 12, 1
- E_ 4
- notetype 12, 12, 5
+ note F_, 2
+ note_type 12, 12, 1
+ note E_, 4
+ note_type 12, 12, 5
rest 10
- F_ 12
- F_ 2
+ note F_, 12
+ note F_, 2
rest 2
- G# 2
- notetype 12, 10, 3
- G_ 6
- notetype 12, 12, 7
- F_ 8
- loopchannel 0, Music_WildBattle_branch_23225
+ note G#, 2
+ note_type 12, 10, 3
+ note G_, 6
+ note_type 12, 12, 7
+ note F_, 8
+ sound_loop 0, Music_WildBattle_branch_23225
Music_WildBattle_Ch3::
vibrato 0, 2, 0
- notetype 12, 1, 1
+ note_type 12, 1, 1
octave 4
- C# 1
+ note C#, 1
rest 1
- C# 1
- C_ 1
- D_ 1
+ note C#, 1
+ note C_, 1
+ note D_, 1
rest 1
- D_ 1
- C_ 1
- D# 1
+ note D_, 1
+ note C_, 1
+ note D#, 1
rest 1
- D# 1
- C_ 1
- E_ 1
+ note D#, 1
+ note C_, 1
+ note E_, 1
rest 1
- E_ 1
- C_ 1
- F_ 1
+ note E_, 1
+ note C_, 1
+ note F_, 1
rest 1
- F_ 1
- C_ 1
- F# 1
+ note F_, 1
+ note C_, 1
+ note F#, 1
rest 1
- F# 1
- C_ 1
- G_ 1
+ note F#, 1
+ note C_, 1
+ note G_, 1
rest 1
- G_ 1
- C_ 1
+ note G_, 1
+ note C_, 1
octave 3
- A# 2
- B_ 2
+ note A#, 2
+ note B_, 2
Music_WildBattle_branch_232b5::
octave 4
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C# 2
- G# 2
- C# 4
- G# 2
- A# 2
- G# 2
- G_ 2
- C# 2
- G# 2
- C# 4
- G# 2
- A# 2
- G# 2
- F_ 2
- loopchannel 2, Music_WildBattle_branch_232b5
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C#, 2
+ note G#, 2
+ note C#, 4
+ note G#, 2
+ note A#, 2
+ note G#, 2
+ note G_, 2
+ note C#, 2
+ note G#, 2
+ note C#, 4
+ note G#, 2
+ note A#, 2
+ note G#, 2
+ note F_, 2
+ sound_loop 2, Music_WildBattle_branch_232b5
Music_WildBattle_branch_232d8::
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- G# 12
- G_ 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note G#, 12
+ note G_, 2
rest 2
- G# 2
- G_ 2
+ note G#, 2
+ note G_, 2
rest 4
- F_ 2
- E_ 2
- D_ 2
- C# 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
+ note F_, 2
+ note E_, 2
+ note D_, 2
+ note C#, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
+ note F_, 2
octave 3
- A# 2
+ note A#, 2
octave 4
- F_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- F_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C_ 2
- G_ 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- C# 2
- G# 2
- loopchannel 0, Music_WildBattle_branch_232d8
+ note F_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C_, 2
+ note G_, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ note C#, 2
+ note G#, 2
+ sound_loop 0, Music_WildBattle_branch_232d8
diff --git a/audio/music/yellowintro.asm b/audio/music/yellowintro.asm
index c809d10f..bb741a22 100644
--- a/audio/music/yellowintro.asm
+++ b/audio/music/yellowintro.asm
@@ -1,484 +1,484 @@
Music_YellowIntro_Ch1::
tempo 116
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 1, 4
- notetype 12, 11, 2
+ note_type 12, 11, 2
octave 3
- G# 2
- B_ 4
- B_ 4
- B_ 4
- B_ 4
- B_ 4
- B_ 3
- A# 1
- B_ 2
- B_ 10
- notetype 12, 11, 6
- octave 4
- C# 1
- C_ 1
- C# 10
+ note G#, 2
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 4
+ note B_, 3
+ note A#, 1
+ note B_, 2
+ note B_, 10
+ note_type 12, 11, 6
+ octave 4
+ note C#, 1
+ note C_, 1
+ note C#, 10
octave 3
- G# 1
- G_ 1
- G# 4
- B_ 4
- octave 4
- E_ 4
- F# 8
- E_ 8
+ note G#, 1
+ note G_, 1
+ note G#, 4
+ note B_, 4
+ octave 4
+ note E_, 4
+ note F#, 8
+ note E_, 8
octave 3
- A_ 4
- B_ 4
+ note A_, 4
+ note B_, 4
octave 4
- C# 4
+ note C#, 4
octave 3
- B_ 4
- G# 6
- notetype 12, 11, 2
- B_ 2
- notetype 12, 11, 6
- G# 6
- notetype 12, 11, 2
- B_ 2
- notetype 12, 11, 6
- octave 4
- E_ 6
- notetype 12, 11, 2
- G# 2
- notetype 12, 11, 6
- E_ 6
- notetype 12, 11, 2
- G# 2
- notetype 12, 11, 6
+ note B_, 4
+ note G#, 6
+ note_type 12, 11, 2
+ note B_, 2
+ note_type 12, 11, 6
+ note G#, 6
+ note_type 12, 11, 2
+ note B_, 2
+ note_type 12, 11, 6
+ octave 4
+ note E_, 6
+ note_type 12, 11, 2
+ note G#, 2
+ note_type 12, 11, 6
+ note E_, 6
+ note_type 12, 11, 2
+ note G#, 2
+ note_type 12, 11, 6
octave 3
- A_ 4
- F# 4
- A_ 4
- B_ 4
- F# 4
- G# 4
- A_ 2
- G# 2
- F# 2
- D# 2
- notetype 12, 11, 3
- B_ 2
- octave 4
- E_ 4
- E_ 4
- E_ 4
- E_ 2
- C# 2
- F# 4
- F# 3
- D# 1
- F# 2
- F# 8
- notetype 12, 11, 6
- F# 1
- F_ 1
- F# 8
+ note A_, 4
+ note F#, 4
+ note A_, 4
+ note B_, 4
+ note F#, 4
+ note G#, 4
+ note A_, 2
+ note G#, 2
+ note F#, 2
+ note D#, 2
+ note_type 12, 11, 3
+ note B_, 2
+ octave 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 2
+ note C#, 2
+ note F#, 4
+ note F#, 3
+ note D#, 1
+ note F#, 2
+ note F#, 8
+ note_type 12, 11, 6
+ note F#, 1
+ note F_, 1
+ note F#, 8
octave 3
- B_ 1
- A# 1
- B_ 8
- octave 4
- F# 1
- F_ 1
- F# 2
- notetype 12, 11, 3
- F# 1
- E_ 1
- D# 1
- C# 1
- notetype 12, 11, 2
+ note B_, 1
+ note A#, 1
+ note B_, 8
+ octave 4
+ note F#, 1
+ note F_, 1
+ note F#, 2
+ note_type 12, 11, 3
+ note F#, 1
+ note E_, 1
+ note D#, 1
+ note C#, 1
+ note_type 12, 11, 2
octave 3
- B_ 16
- endchannel
+ note B_, 16
+ sound_ret
Music_YellowIntro_Ch2::
- duty 2
+ duty_cycle 2
vibrato 6, 1, 5
- notetype 12, 12, 2
+ note_type 12, 12, 2
octave 3
- B_ 2
- octave 4
- E_ 4
- E_ 4
- E_ 4
- E_ 4
- E_ 4
- E_ 3
- D# 1
- E_ 2
- E_ 4
- notetype 12, 12, 5
- G# 1
- G_ 1
- G# 10
+ note B_, 2
+ octave 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 4
+ note E_, 3
+ note D#, 1
+ note E_, 2
+ note E_, 4
+ note_type 12, 12, 5
+ note G#, 1
+ note G_, 1
+ note G#, 10
octave 3
- B_ 1
- A# 1
- B_ 6
- notetype 12, 12, 7
- octave 4
- E_ 4
- G# 4
- B_ 4
+ note B_, 1
+ note A#, 1
+ note B_, 6
+ note_type 12, 12, 7
+ octave 4
+ note E_, 4
+ note G#, 4
+ note B_, 4
octave 5
- C# 16
+ note C#, 16
octave 4
- A_ 4
- G# 4
- F# 4
- E_ 4
+ note A_, 4
+ note G#, 4
+ note F#, 4
+ note E_, 4
octave 3
- B_ 6
- notetype 12, 12, 2
+ note B_, 6
+ note_type 12, 12, 2
octave 4
- E_ 2
- notetype 12, 12, 7
+ note E_, 2
+ note_type 12, 12, 7
octave 3
- B_ 6
- notetype 12, 12, 2
- octave 4
- E_ 2
- notetype 12, 12, 7
- G# 6
- notetype 12, 12, 2
- B_ 2
- notetype 12, 12, 7
- G# 6
- notetype 12, 12, 2
- B_ 2
- notetype 12, 12, 7
- C# 4
+ note B_, 6
+ note_type 12, 12, 2
+ octave 4
+ note E_, 2
+ note_type 12, 12, 7
+ note G#, 6
+ note_type 12, 12, 2
+ note B_, 2
+ note_type 12, 12, 7
+ note G#, 6
+ note_type 12, 12, 2
+ note B_, 2
+ note_type 12, 12, 7
+ note C#, 4
octave 3
- A_ 4
- octave 4
- C# 4
- D# 4
- E_ 2
- D# 2
- C# 2
- D# 4
- D# 2
- C# 2
+ note A_, 4
+ octave 4
+ note C#, 4
+ note D#, 4
+ note E_, 2
+ note D#, 2
+ note C#, 2
+ note D#, 4
+ note D#, 2
+ note C#, 2
octave 3
- B_ 2
- notetype 12, 12, 3
- octave 4
- E_ 2
- G# 4
- G# 4
- G# 4
- G# 2
- F# 2
- A_ 4
- A_ 3
- F# 1
- A_ 2
- A_ 4
- notetype 12, 12, 7
- B_ 1
- A# 1
- B_ 8
- B_ 1
- A# 1
- B_ 8
- B_ 1
- A# 1
- B_ 6
- notetype 12, 12, 3
- B_ 1
- A_ 1
- G# 1
- F# 1
- notetype 12, 12, 2
- E_ 16
- endchannel
+ note B_, 2
+ note_type 12, 12, 3
+ octave 4
+ note E_, 2
+ note G#, 4
+ note G#, 4
+ note G#, 4
+ note G#, 2
+ note F#, 2
+ note A_, 4
+ note A_, 3
+ note F#, 1
+ note A_, 2
+ note A_, 4
+ note_type 12, 12, 7
+ note B_, 1
+ note A#, 1
+ note B_, 8
+ note B_, 1
+ note A#, 1
+ note B_, 8
+ note B_, 1
+ note A#, 1
+ note B_, 6
+ note_type 12, 12, 3
+ note B_, 1
+ note A_, 1
+ note G#, 1
+ note F#, 1
+ note_type 12, 12, 2
+ note E_, 16
+ sound_ret
Music_YellowIntro_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 3
- B_ 1
+ note B_, 1
rest 1
octave 4
- C# 1
+ note C#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- F# 1
+ note F#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- C# 1
+ note C#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 1
octave 4
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- G# 1
+ note G#, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- E_ 1
+ note E_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- A_ 1
+ note A_, 1
rest 1
octave 5
- F# 1
+ note F#, 1
rest 1
octave 4
- F# 1
+ note F#, 1
rest 1
octave 5
- C# 1
+ note C#, 1
rest 3
- F# 1
+ note F#, 1
rest 1
octave 4
- F# 1
- G# 1
- A_ 1
+ note F#, 1
+ note G#, 1
+ note A_, 1
octave 5
- C# 1
- E_ 1
+ note C#, 1
+ note E_, 1
rest 15
- endchannel
+ sound_ret
diff --git a/audio/music/yellowunusedsong.asm b/audio/music/yellowunusedsong.asm
index f65ca164..f1e4d18f 100644
--- a/audio/music/yellowunusedsong.asm
+++ b/audio/music/yellowunusedsong.asm
@@ -1,51 +1,51 @@
Music_YellowUnusedSong_Ch1::
tempo 140
volume 7, 7
- duty 3
+ duty_cycle 3
vibrato 8, 1, 4
- notetype 8, 11, 2
+ note_type 8, 11, 2
octave 3
- A_ 6
- A_ 2
- A_ 2
- A_ 2
- A# 6
- A# 6
- G_ 6
- G_ 6
- A_ 6
- E_ 6
- A_ 6
- A_ 2
- A_ 2
- A_ 2
- A# 6
- A# 6
- A_ 6
- G_ 6
- A_ 12
+ note A_, 6
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A#, 6
+ note A#, 6
+ note G_, 6
+ note G_, 6
+ note A_, 6
+ note E_, 6
+ note A_, 6
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A#, 6
+ note A#, 6
+ note A_, 6
+ note G_, 6
+ note A_, 12
Music_YellowUnusedSong_branch_82fde::
- A_ 6
- A_ 2
- A_ 2
- A_ 2
- A# 6
- A# 6
- G_ 6
- G_ 6
- A_ 6
- E_ 6
- A_ 6
- A_ 2
- A_ 2
- A_ 2
- A# 6
- A# 6
- G_ 6
+ note A_, 6
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A#, 6
+ note A#, 6
+ note G_, 6
+ note G_, 6
+ note A_, 6
+ note E_, 6
+ note A_, 6
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A#, 6
+ note A#, 6
+ note G_, 6
octave 4
- D# 6
- D_ 12
+ note D#, 6
+ note D_, 12
rest 16
rest 16
rest 16
@@ -53,274 +53,274 @@ Music_YellowUnusedSong_branch_82fde::
rest 16
rest 16
octave 3
- A_ 6
- A_ 2
- A_ 2
- A_ 2
- A# 6
- A# 6
- G_ 6
- G_ 6
- A_ 6
- E_ 6
- A_ 6
- A_ 2
- A_ 2
- A_ 2
- A# 6
- A# 6
- A_ 6
- G_ 6
- A_ 12
- loopchannel 0, Music_YellowUnusedSong_branch_82fde
+ note A_, 6
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A#, 6
+ note A#, 6
+ note G_, 6
+ note G_, 6
+ note A_, 6
+ note E_, 6
+ note A_, 6
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note A#, 6
+ note A#, 6
+ note A_, 6
+ note G_, 6
+ note A_, 12
+ sound_loop 0, Music_YellowUnusedSong_branch_82fde
Music_YellowUnusedSong_Ch2::
- duty 2
- notetype 8, 12, 2
+ duty_cycle 2
+ note_type 8, 12, 2
octave 4
- D_ 6
- D_ 2
- D_ 2
- D_ 2
- D# 6
- D# 6
- C_ 6
- C_ 6
- D_ 6
+ note D_, 6
+ note D_, 2
+ note D_, 2
+ note D_, 2
+ note D#, 6
+ note D#, 6
+ note C_, 6
+ note C_, 6
+ note D_, 6
octave 3
- A_ 6
+ note A_, 6
octave 4
- D_ 6
- D_ 2
- D_ 2
- D_ 2
- D# 6
- D# 6
- D_ 6
- A# 6
- A_ 12
+ note D_, 6
+ note D_, 2
+ note D_, 2
+ note D_, 2
+ note D#, 6
+ note D#, 6
+ note D_, 6
+ note A#, 6
+ note A_, 12
Music_YellowUnusedSong_branch_8302a::
- D_ 6
- D_ 2
- D_ 2
- D_ 2
- D# 6
- D# 6
- C_ 6
- C_ 6
- D_ 6
+ note D_, 6
+ note D_, 2
+ note D_, 2
+ note D_, 2
+ note D#, 6
+ note D#, 6
+ note C_, 6
+ note C_, 6
+ note D_, 6
octave 3
- A_ 6
+ note A_, 6
octave 4
- D_ 6
- D_ 2
- D_ 2
- D_ 2
- D# 6
- D# 6
- C_ 6
- G# 6
- G_ 12
- notetype 8, 9, 0
+ note D_, 6
+ note D_, 2
+ note D_, 2
+ note D_, 2
+ note D#, 6
+ note D#, 6
+ note C_, 6
+ note G#, 6
+ note G_, 12
+ note_type 8, 9, 0
octave 3
- D# 16
- D# 8
- D# 16
- D# 8
+ note D#, 16
+ note D#, 8
+ note D#, 16
+ note D#, 8
octave 2
- A# 16
- A# 8
+ note A#, 16
+ note A#, 8
octave 3
- D# 12
- F_ 12
- notetype 8, 12, 2
+ note D#, 12
+ note F_, 12
+ note_type 8, 12, 2
octave 4
- D_ 6
- D_ 2
- D_ 2
- D_ 2
- D# 6
- D# 6
- C_ 6
- C_ 6
- D_ 6
+ note D_, 6
+ note D_, 2
+ note D_, 2
+ note D_, 2
+ note D#, 6
+ note D#, 6
+ note C_, 6
+ note C_, 6
+ note D_, 6
octave 3
- A_ 6
+ note A_, 6
octave 4
- D_ 6
- D_ 2
- D_ 2
- D_ 2
- D# 6
- D# 6
- D_ 6
- A# 6
- A_ 12
- loopchannel 0, Music_YellowUnusedSong_branch_8302a
+ note D_, 6
+ note D_, 2
+ note D_, 2
+ note D_, 2
+ note D#, 6
+ note D#, 6
+ note D_, 6
+ note A#, 6
+ note A_, 12
+ sound_loop 0, Music_YellowUnusedSong_branch_8302a
Music_YellowUnusedSong_Ch3::
- notetype 12, 1, 0
+ note_type 12, 1, 0
vibrato 2, 1, 5
rest 16
rest 12
octave 4
- C_ 4
- D_ 8
- D# 8
- G_ 8
- A# 8
+ note C_, 4
+ note D_, 8
+ note D#, 8
+ note G_, 8
+ note A#, 8
Music_YellowUnusedSong_branch_83075::
- A_ 8
- A# 8
- G_ 8
- A_ 4
- D_ 4
- A_ 8
- A# 8
+ note A_, 8
+ note A#, 8
+ note G_, 8
+ note A_, 4
+ note D_, 4
+ note A_, 8
+ note A#, 8
octave 5
- C# 8
- D_ 8
- D# 16
- D# 16
+ note C#, 8
+ note D_, 8
+ note D#, 16
+ note D#, 16
octave 4
- A# 16
+ note A#, 16
octave 5
- D# 8
- F_ 8
+ note D#, 8
+ note F_, 8
octave 4
- D_ 16
- D_ 16
+ note D_, 16
+ note D_, 16
octave 4
- D_ 8
- D# 8
- G_ 8
- A# 8
- loopchannel 0, Music_YellowUnusedSong_branch_83075
+ note D_, 8
+ note D#, 8
+ note G_, 8
+ note A#, 8
+ sound_loop 0, Music_YellowUnusedSong_branch_83075
Music_YellowUnusedSong_Ch4::
- dspeed 12
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 4
- snare3 4
+ drum_speed 12
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 4
+ drum_note 3, 4
Music_YellowUnusedSong_branch_830c3::
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 4
- snare3 4
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 4
- snare3 2
- snare3 2
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- snare3 4
- dspeed 8
- snare3 2
- snare3 2
- snare3 2
- dspeed 12
- snare3 4
- snare3 4
- snare3 2
- snare3 2
- snare3 2
- snare3 2
- snare3 4
- snare3 4
- loopchannel 0, Music_YellowUnusedSong_branch_830c3
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 4
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_speed 8
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_speed 12
+ drum_note 3, 4
+ drum_note 3, 4
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 2
+ drum_note 3, 4
+ drum_note 3, 4
+ sound_loop 0, Music_YellowUnusedSong_branch_830c3
diff --git a/audio/sfx/59_1.asm b/audio/sfx/59_1.asm
index c14be83e..ef909832 100644
--- a/audio/sfx/59_1.asm
+++ b/audio/sfx/59_1.asm
@@ -1,11 +1,11 @@
-SFX_59_1_Ch1:
- duty 2
- unknownsfx0x20 4, 241, 128, 7
- endchannel
+SFX_59_1_Ch5:
+ duty_cycle 2
+ square_note 4, 15, 1, 1920
+ sound_ret
-SFX_59_1_Ch2:
- duty 2
- unknownsfx0x20 1, 8, 0, 0
- unknownsfx0x20 4, 161, 97, 7
- endchannel
+SFX_59_1_Ch6:
+ duty_cycle 2
+ square_note 1, 0, 8, 0
+ square_note 4, 10, 1, 1889
+ sound_ret
diff --git a/audio/sfx/59_3.asm b/audio/sfx/59_3.asm
index 3b817f2f..7510842f 100644
--- a/audio/sfx/59_3.asm
+++ b/audio/sfx/59_3.asm
@@ -1,11 +1,11 @@
-SFX_59_3_Ch1:
- duty 2
- unknownsfx0x20 4, 241, 128, 7
- endchannel
+SFX_59_3_Ch5:
+ duty_cycle 2
+ square_note 4, 15, 1, 1920
+ sound_ret
-SFX_59_3_Ch2:
- duty 2
- unknownsfx0x20 1, 8, 0, 0
- unknownsfx0x20 4, 161, 97, 7
- endchannel
+SFX_59_3_Ch6:
+ duty_cycle 2
+ square_note 1, 0, 8, 0
+ square_note 4, 10, 1, 1889
+ sound_ret
diff --git a/audio/sfx/arrow_tiles_1.asm b/audio/sfx/arrow_tiles_1.asm
index 6c3959c9..30d12c8b 100644
--- a/audio/sfx/arrow_tiles_1.asm
+++ b/audio/sfx/arrow_tiles_1.asm
@@ -1,6 +1,6 @@
-SFX_Arrow_Tiles_1_Ch1:
- duty 0
- unknownsfx0x10 23
- unknownsfx0x20 15, 210, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Arrow_Tiles_1_Ch5:
+ duty_cycle 0
+ pitch_sweep 1, 7
+ square_note 15, 13, 2, 1792
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/arrow_tiles_3.asm b/audio/sfx/arrow_tiles_3.asm
index 8ff79858..81c1774a 100644
--- a/audio/sfx/arrow_tiles_3.asm
+++ b/audio/sfx/arrow_tiles_3.asm
@@ -1,6 +1,6 @@
-SFX_Arrow_Tiles_3_Ch1:
- duty 0
- unknownsfx0x10 23
- unknownsfx0x20 15, 210, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Arrow_Tiles_3_Ch5:
+ duty_cycle 0
+ pitch_sweep 1, 7
+ square_note 15, 13, 2, 1792
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/ball_poof.asm b/audio/sfx/ball_poof.asm
index 6cd9701b..396adf44 100644
--- a/audio/sfx/ball_poof.asm
+++ b/audio/sfx/ball_poof.asm
@@ -1,11 +1,11 @@
-SFX_Ball_Poof_Ch1:
- duty 2
- unknownsfx0x10 22
- unknownsfx0x20 15, 242, 0, 4
- unknownsfx0x10 8
- endchannel
+SFX_Ball_Poof_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 6
+ square_note 15, 15, 2, 1024
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Ball_Poof_Ch2:
- unknownnoise0x20 15, 162, 34
- endchannel
+SFX_Ball_Poof_Ch8:
+ noise_note 15, 10, 2, 34
+ sound_ret
diff --git a/audio/sfx/ball_toss.asm b/audio/sfx/ball_toss.asm
index 49176db3..207bf720 100644
--- a/audio/sfx/ball_toss.asm
+++ b/audio/sfx/ball_toss.asm
@@ -1,11 +1,11 @@
-SFX_Ball_Toss_Ch1:
- duty 2
- unknownsfx0x10 47
- unknownsfx0x20 15, 242, 128, 7
- endchannel
+SFX_Ball_Toss_Ch5:
+ duty_cycle 2
+ pitch_sweep 2, -7
+ square_note 15, 15, 2, 1920
+ sound_ret
-SFX_Ball_Toss_Ch2:
- duty 2
- unknownsfx0x20 15, 194, 130, 7
- endchannel
+SFX_Ball_Toss_Ch6:
+ duty_cycle 2
+ square_note 15, 12, 2, 1922
+ sound_ret
diff --git a/audio/sfx/battle_09.asm b/audio/sfx/battle_09.asm
index 8b92fc50..7a61373b 100644
--- a/audio/sfx/battle_09.asm
+++ b/audio/sfx/battle_09.asm
@@ -1,6 +1,6 @@
-SFX_Battle_09_Ch1:
- duty 1
- unknownsfx0x10 151
- unknownsfx0x20 15, 242, 0, 5
- unknownsfx0x10 8
- endchannel
+SFX_Battle_09_Ch5:
+ duty_cycle 1
+ pitch_sweep 9, 7
+ square_note 15, 15, 2, 1280
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/battle_0b.asm b/audio/sfx/battle_0b.asm
index 27909666..e60fe9c7 100644
--- a/audio/sfx/battle_0b.asm
+++ b/audio/sfx/battle_0b.asm
@@ -1,3 +1,3 @@
-SFX_Battle_0B_Ch1:
- unknownnoise0x20 8, 241, 84
- endchannel
+SFX_Battle_0B_Ch8:
+ noise_note 8, 15, 1, 84
+ sound_ret
diff --git a/audio/sfx/battle_0c.asm b/audio/sfx/battle_0c.asm
index 7aa009ba..285e0d52 100644
--- a/audio/sfx/battle_0c.asm
+++ b/audio/sfx/battle_0c.asm
@@ -1,5 +1,5 @@
-SFX_Battle_0C_Ch1:
- unknownnoise0x20 15, 143, 17
- unknownnoise0x20 4, 255, 18
- unknownnoise0x20 10, 241, 85
- endchannel
+SFX_Battle_0C_Ch8:
+ noise_note 15, 8, -7, 17
+ noise_note 4, 15, -7, 18
+ noise_note 10, 15, 1, 85
+ sound_ret
diff --git a/audio/sfx/battle_0d.asm b/audio/sfx/battle_0d.asm
index 1b69e13f..293d9743 100644
--- a/audio/sfx/battle_0d.asm
+++ b/audio/sfx/battle_0d.asm
@@ -1,5 +1,5 @@
-SFX_Battle_0D_Ch1:
- unknownnoise0x20 15, 143, 52
- unknownnoise0x20 8, 242, 53
- unknownnoise0x20 10, 241, 85
- endchannel
+SFX_Battle_0D_Ch8:
+ noise_note 15, 8, -7, 52
+ noise_note 8, 15, 2, 53
+ noise_note 10, 15, 1, 85
+ sound_ret
diff --git a/audio/sfx/battle_0e.asm b/audio/sfx/battle_0e.asm
index ff60cb9e..39d971c9 100644
--- a/audio/sfx/battle_0e.asm
+++ b/audio/sfx/battle_0e.asm
@@ -1,4 +1,4 @@
-SFX_Battle_0E_Ch1:
- unknownnoise0x20 15, 159, 35
- unknownnoise0x20 8, 241, 33
- endchannel
+SFX_Battle_0E_Ch8:
+ noise_note 15, 9, -7, 35
+ noise_note 8, 15, 1, 33
+ sound_ret
diff --git a/audio/sfx/battle_0f.asm b/audio/sfx/battle_0f.asm
index 3827a5a6..ae81e747 100644
--- a/audio/sfx/battle_0f.asm
+++ b/audio/sfx/battle_0f.asm
@@ -1,6 +1,6 @@
-SFX_Battle_0F_Ch1:
- unknownnoise0x20 2, 225, 75
- unknownnoise0x20 10, 241, 68
- unknownnoise0x20 2, 225, 58
- unknownnoise0x20 6, 241, 52
- endchannel
+SFX_Battle_0F_Ch8:
+ noise_note 2, 14, 1, 75
+ noise_note 10, 15, 1, 68
+ noise_note 2, 14, 1, 58
+ noise_note 6, 15, 1, 52
+ sound_ret
diff --git a/audio/sfx/battle_12.asm b/audio/sfx/battle_12.asm
index 7d301053..7a092bd3 100644
--- a/audio/sfx/battle_12.asm
+++ b/audio/sfx/battle_12.asm
@@ -1,6 +1,6 @@
-SFX_Battle_12_Ch1:
- unknownnoise0x20 8, 79, 35
- unknownnoise0x20 4, 196, 34
- unknownnoise0x20 6, 242, 35
- loopchannel 4, SFX_Battle_12_Ch1
- endchannel
+SFX_Battle_12_Ch8:
+ noise_note 8, 4, -7, 35
+ noise_note 4, 12, 4, 34
+ noise_note 6, 15, 2, 35
+ sound_loop 4, SFX_Battle_12_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_13.asm b/audio/sfx/battle_13.asm
index 89b8c555..0f910cec 100644
--- a/audio/sfx/battle_13.asm
+++ b/audio/sfx/battle_13.asm
@@ -1,6 +1,6 @@
-SFX_Battle_13_Ch1:
- unknownnoise0x20 8, 79, 51
- unknownnoise0x20 4, 196, 34
- unknownnoise0x20 6, 242, 35
- unknownnoise0x20 15, 242, 34
- endchannel
+SFX_Battle_13_Ch8:
+ noise_note 8, 4, -7, 51
+ noise_note 4, 12, 4, 34
+ noise_note 6, 15, 2, 35
+ noise_note 15, 15, 2, 34
+ sound_ret
diff --git a/audio/sfx/battle_14.asm b/audio/sfx/battle_14.asm
index acc064f7..7c3a7c68 100644
--- a/audio/sfx/battle_14.asm
+++ b/audio/sfx/battle_14.asm
@@ -1,6 +1,6 @@
-SFX_Battle_14_Ch1:
- unknownnoise0x20 8, 255, 50
- unknownnoise0x20 8, 244, 67
- unknownnoise0x20 8, 242, 84
- unknownnoise0x20 8, 241, 101
- endchannel
+SFX_Battle_14_Ch8:
+ noise_note 8, 15, -7, 50
+ noise_note 8, 15, 4, 67
+ noise_note 8, 15, 2, 84
+ noise_note 8, 15, 1, 101
+ sound_ret
diff --git a/audio/sfx/battle_16.asm b/audio/sfx/battle_16.asm
index 3aa31247..6e162cce 100644
--- a/audio/sfx/battle_16.asm
+++ b/audio/sfx/battle_16.asm
@@ -1,5 +1,5 @@
-SFX_Battle_16_Ch1:
- unknownnoise0x20 1, 148, 35
- unknownnoise0x20 1, 180, 34
- unknownnoise0x20 8, 241, 68
- endchannel
+SFX_Battle_16_Ch8:
+ noise_note 1, 9, 4, 35
+ noise_note 1, 11, 4, 34
+ noise_note 8, 15, 1, 68
+ sound_ret
diff --git a/audio/sfx/battle_17.asm b/audio/sfx/battle_17.asm
index 2ff4bd6d..f863f8ee 100644
--- a/audio/sfx/battle_17.asm
+++ b/audio/sfx/battle_17.asm
@@ -1,6 +1,6 @@
-SFX_Battle_17_Ch1:
- unknownnoise0x20 2, 148, 51
- unknownnoise0x20 4, 180, 34
- unknownnoise0x20 4, 241, 68
- unknownnoise0x20 8, 241, 85
- endchannel
+SFX_Battle_17_Ch8:
+ noise_note 2, 9, 4, 51
+ noise_note 4, 11, 4, 34
+ noise_note 4, 15, 1, 68
+ noise_note 8, 15, 1, 85
+ sound_ret
diff --git a/audio/sfx/battle_18.asm b/audio/sfx/battle_18.asm
index 81fa2178..f8ece58e 100644
--- a/audio/sfx/battle_18.asm
+++ b/audio/sfx/battle_18.asm
@@ -1,4 +1,4 @@
-SFX_Battle_18_Ch1:
- unknownnoise0x20 4, 255, 85
- unknownnoise0x20 8, 241, 101
- endchannel
+SFX_Battle_18_Ch8:
+ noise_note 4, 15, -7, 85
+ noise_note 8, 15, 1, 101
+ sound_ret
diff --git a/audio/sfx/battle_19.asm b/audio/sfx/battle_19.asm
index 9981f5e4..a7cf5292 100644
--- a/audio/sfx/battle_19.asm
+++ b/audio/sfx/battle_19.asm
@@ -1,5 +1,5 @@
-SFX_Battle_19_Ch1:
- unknownnoise0x20 2, 132, 67
- unknownnoise0x20 2, 196, 34
- unknownnoise0x20 8, 242, 52
- endchannel
+SFX_Battle_19_Ch8:
+ noise_note 2, 8, 4, 67
+ noise_note 2, 12, 4, 34
+ noise_note 8, 15, 2, 52
+ sound_ret
diff --git a/audio/sfx/battle_1b.asm b/audio/sfx/battle_1b.asm
index 9f89e449..16ea584d 100644
--- a/audio/sfx/battle_1b.asm
+++ b/audio/sfx/battle_1b.asm
@@ -1,4 +1,4 @@
-SFX_Battle_1B_Ch1:
- unknownnoise0x20 2, 241, 34
- unknownnoise0x20 15, 242, 18
- endchannel
+SFX_Battle_1B_Ch8:
+ noise_note 2, 15, 1, 34
+ noise_note 15, 15, 2, 18
+ sound_ret
diff --git a/audio/sfx/battle_1c.asm b/audio/sfx/battle_1c.asm
index 3827b34c..3045576b 100644
--- a/audio/sfx/battle_1c.asm
+++ b/audio/sfx/battle_1c.asm
@@ -1,5 +1,5 @@
-SFX_Battle_1C_Ch1:
- unknownnoise0x20 2, 194, 1
- unknownnoise0x20 15, 244, 1
- unknownnoise0x20 15, 242, 1
- endchannel
+SFX_Battle_1C_Ch8:
+ noise_note 2, 12, 2, 1
+ noise_note 15, 15, 4, 1
+ noise_note 15, 15, 2, 1
+ sound_ret
diff --git a/audio/sfx/battle_1e.asm b/audio/sfx/battle_1e.asm
index f4e9bdc8..26820e8d 100644
--- a/audio/sfx/battle_1e.asm
+++ b/audio/sfx/battle_1e.asm
@@ -1,16 +1,16 @@
-SFX_Battle_1E_Ch1:
- duty 0
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 2
- unknownsfx0x10 34
- unknownsfx0x20 8, 226, 0, 2
- unknownsfx0x10 8
- endchannel
+SFX_Battle_1E_Ch5:
+ duty_cycle 0
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 512
+ pitch_sweep 2, 2
+ square_note 8, 14, 2, 512
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Battle_1E_Ch2:
- unknownnoise0x20 0, 209, 66
- unknownnoise0x20 4, 161, 50
- unknownnoise0x20 0, 209, 34
- unknownnoise0x20 6, 161, 50
- endchannel
+SFX_Battle_1E_Ch8:
+ noise_note 0, 13, 1, 66
+ noise_note 4, 10, 1, 50
+ noise_note 0, 13, 1, 34
+ noise_note 6, 10, 1, 50
+ sound_ret
diff --git a/audio/sfx/battle_20.asm b/audio/sfx/battle_20.asm
index e8a4d9f3..b73b0a8f 100644
--- a/audio/sfx/battle_20.asm
+++ b/audio/sfx/battle_20.asm
@@ -1,4 +1,4 @@
-SFX_Battle_20_Ch1:
- unknownnoise0x20 12, 241, 84
- unknownnoise0x20 8, 241, 100
- endchannel
+SFX_Battle_20_Ch8:
+ noise_note 12, 15, 1, 84
+ noise_note 8, 15, 1, 100
+ sound_ret
diff --git a/audio/sfx/battle_21.asm b/audio/sfx/battle_21.asm
index b59f5833..fc1b1186 100644
--- a/audio/sfx/battle_21.asm
+++ b/audio/sfx/battle_21.asm
@@ -1,7 +1,7 @@
-SFX_Battle_21_Ch1:
- unknownnoise0x20 2, 241, 51
- unknownnoise0x20 2, 193, 50
- unknownnoise0x20 2, 161, 49
- unknownnoise0x20 15, 130, 50
- unknownnoise0x20 8, 241, 52
- endchannel
+SFX_Battle_21_Ch8:
+ noise_note 2, 15, 1, 51
+ noise_note 2, 12, 1, 50
+ noise_note 2, 10, 1, 49
+ noise_note 15, 8, 2, 50
+ noise_note 8, 15, 1, 52
+ sound_ret
diff --git a/audio/sfx/battle_22.asm b/audio/sfx/battle_22.asm
index 66cd218d..3c42996e 100644
--- a/audio/sfx/battle_22.asm
+++ b/audio/sfx/battle_22.asm
@@ -1,4 +1,4 @@
-SFX_Battle_22_Ch1:
- unknownnoise0x20 2, 210, 50
- unknownnoise0x20 15, 242, 67
- endchannel
+SFX_Battle_22_Ch8:
+ noise_note 2, 13, 2, 50
+ noise_note 15, 15, 2, 67
+ sound_ret
diff --git a/audio/sfx/battle_23.asm b/audio/sfx/battle_23.asm
index 7203dcf2..bf546248 100644
--- a/audio/sfx/battle_23.asm
+++ b/audio/sfx/battle_23.asm
@@ -1,7 +1,7 @@
-SFX_Battle_23_Ch1:
- unknownnoise0x20 2, 242, 67
- unknownnoise0x20 4, 181, 50
- unknownnoise0x20 9, 134, 49
- unknownnoise0x20 7, 100, 0
- unknownnoise0x20 15, 242, 85
- endchannel
+SFX_Battle_23_Ch8:
+ noise_note 2, 15, 2, 67
+ noise_note 4, 11, 5, 50
+ noise_note 9, 8, 6, 49
+ noise_note 7, 6, 4, 0
+ noise_note 15, 15, 2, 85
+ sound_ret
diff --git a/audio/sfx/battle_24.asm b/audio/sfx/battle_24.asm
index 7c81b40b..f99cf59a 100644
--- a/audio/sfx/battle_24.asm
+++ b/audio/sfx/battle_24.asm
@@ -1,12 +1,12 @@
-SFX_Battle_24_Ch1:
- duty 1
- unknownsfx0x10 151
- unknownsfx0x20 15, 242, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Battle_24_Ch5:
+ duty_cycle 1
+ pitch_sweep 9, 7
+ square_note 15, 15, 2, 1792
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Battle_24_Ch2:
- unknownnoise0x20 15, 63, 34
- unknownnoise0x20 15, 242, 33
- endchannel
+SFX_Battle_24_Ch8:
+ noise_note 15, 3, -7, 34
+ noise_note 15, 15, 2, 33
+ sound_ret
diff --git a/audio/sfx/battle_25.asm b/audio/sfx/battle_25.asm
index b1f4fc54..54623b5f 100644
--- a/audio/sfx/battle_25.asm
+++ b/audio/sfx/battle_25.asm
@@ -1,7 +1,7 @@
-SFX_Battle_25_Ch1:
- unknownnoise0x20 15, 79, 65
- unknownnoise0x20 8, 143, 65
- unknownnoise0x20 8, 207, 65
- unknownnoise0x20 8, 242, 66
- unknownnoise0x20 15, 242, 65
- endchannel
+SFX_Battle_25_Ch8:
+ noise_note 15, 4, -7, 65
+ noise_note 8, 8, -7, 65
+ noise_note 8, 12, -7, 65
+ noise_note 8, 15, 2, 66
+ noise_note 15, 15, 2, 65
+ sound_ret
diff --git a/audio/sfx/battle_26.asm b/audio/sfx/battle_26.asm
index c656264b..f3baea99 100644
--- a/audio/sfx/battle_26.asm
+++ b/audio/sfx/battle_26.asm
@@ -1,9 +1,9 @@
-SFX_Battle_26_Ch1:
- unknownnoise0x20 10, 255, 80
- unknownnoise0x20 15, 255, 81
- unknownnoise0x20 8, 242, 81
- unknownnoise0x20 6, 255, 82
- unknownnoise0x20 6, 255, 83
- unknownnoise0x20 8, 255, 84
- unknownnoise0x20 15, 242, 84
- endchannel
+SFX_Battle_26_Ch8:
+ noise_note 10, 15, -7, 80
+ noise_note 15, 15, -7, 81
+ noise_note 8, 15, 2, 81
+ noise_note 6, 15, -7, 82
+ noise_note 6, 15, -7, 83
+ noise_note 8, 15, -7, 84
+ noise_note 15, 15, 2, 84
+ sound_ret
diff --git a/audio/sfx/battle_27.asm b/audio/sfx/battle_27.asm
index af86c33f..1b505811 100644
--- a/audio/sfx/battle_27.asm
+++ b/audio/sfx/battle_27.asm
@@ -1,27 +1,27 @@
-SFX_Battle_27_Ch1:
- duty 2
- unknownsfx0x20 15, 63, 192, 7
+SFX_Battle_27_Ch5:
+ duty_cycle 2
+ square_note 15, 3, -7, 1984
SFX_Battle_27_branch_2062a:
- unknownsfx0x20 15, 223, 192, 7
- loopchannel 4, SFX_Battle_27_branch_2062a
- unknownsfx0x20 15, 209, 192, 7
- endchannel
+ square_note 15, 13, -7, 1984
+ sound_loop 4, SFX_Battle_27_branch_2062a
+ square_note 15, 13, 1, 1984
+ sound_ret
-SFX_Battle_27_Ch2:
- dutycycle 179
- unknownsfx0x20 15, 47, 200, 7
+SFX_Battle_27_Ch6:
+ duty_cycle_pattern 2, 3, 0, 3
+ square_note 15, 2, -7, 1992
SFX_Battle_27_branch_2063d:
- unknownsfx0x20 15, 207, 199, 7
- loopchannel 4, SFX_Battle_27_branch_2063d
- unknownsfx0x20 15, 193, 200, 7
- endchannel
+ square_note 15, 12, -7, 1991
+ sound_loop 4, SFX_Battle_27_branch_2063d
+ square_note 15, 12, 1, 1992
+ sound_ret
-SFX_Battle_27_Ch3:
- unknownnoise0x20 3, 151, 18
- unknownnoise0x20 3, 161, 17
- loopchannel 10, SFX_Battle_27_Ch3
- endchannel
+SFX_Battle_27_Ch8:
+ noise_note 3, 9, 7, 18
+ noise_note 3, 10, 1, 17
+ sound_loop 10, SFX_Battle_27_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_28.asm b/audio/sfx/battle_28.asm
index 1c974e85..467e411d 100644
--- a/audio/sfx/battle_28.asm
+++ b/audio/sfx/battle_28.asm
@@ -1,21 +1,21 @@
-SFX_Battle_28_Ch1:
- duty 0
- unknownsfx0x20 0, 241, 192, 7
- unknownsfx0x20 0, 241, 0, 7
- loopchannel 12, SFX_Battle_28_Ch1
- endchannel
+SFX_Battle_28_Ch5:
+ duty_cycle 0
+ square_note 0, 15, 1, 1984
+ square_note 0, 15, 1, 1792
+ sound_loop 12, SFX_Battle_28_Ch5
+ sound_ret
-SFX_Battle_28_Ch2:
- dutycycle 179
- unknownsfx0x20 0, 225, 193, 7
- unknownsfx0x20 0, 225, 1, 7
- loopchannel 12, SFX_Battle_28_Ch2
- endchannel
+SFX_Battle_28_Ch6:
+ duty_cycle_pattern 2, 3, 0, 3
+ square_note 0, 14, 1, 1985
+ square_note 0, 14, 1, 1793
+ sound_loop 12, SFX_Battle_28_Ch6
+ sound_ret
-SFX_Battle_28_Ch3:
- unknownnoise0x20 1, 209, 73
- unknownnoise0x20 1, 209, 41
- loopchannel 6, SFX_Battle_28_Ch3
- endchannel
+SFX_Battle_28_Ch8:
+ noise_note 1, 13, 1, 73
+ noise_note 1, 13, 1, 41
+ sound_loop 6, SFX_Battle_28_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_29.asm b/audio/sfx/battle_29.asm
index 0db98b36..c3999ec8 100644
--- a/audio/sfx/battle_29.asm
+++ b/audio/sfx/battle_29.asm
@@ -1,18 +1,18 @@
-SFX_Earthquake_Ch1:
- dutycycle 201
- unknownsfx0x20 11, 243, 32, 1
- unknownsfx0x20 9, 211, 80, 1
- loopchannel 5, SFX_Earthquake_Ch1
- unknownsfx0x20 8, 227, 48, 1
- unknownsfx0x20 15, 194, 16, 1
- endchannel
+SFX_Battle_29_Ch5:
+ duty_cycle_pattern 3, 0, 2, 1
+ square_note 11, 15, 3, 288
+ square_note 9, 13, 3, 336
+ sound_loop 5, SFX_Battle_29_Ch5
+ square_note 8, 14, 3, 304
+ square_note 15, 12, 2, 272
+ sound_ret
-SFX_Earthquake_Ch2:
- unknownnoise0x20 10, 243, 53
- unknownnoise0x20 14, 246, 69
- loopchannel 4, SFX_Earthquake_Ch2
- unknownnoise0x20 12, 244, 188
- unknownnoise0x20 12, 245, 156
- unknownnoise0x20 15, 244, 172
- endchannel
+SFX_Battle_29_Ch8:
+ noise_note 10, 15, 3, 53
+ noise_note 14, 15, 6, 69
+ sound_loop 4, SFX_Battle_29_Ch8
+ noise_note 12, 15, 4, 188
+ noise_note 12, 15, 5, 156
+ noise_note 15, 15, 4, 172
+ sound_ret
diff --git a/audio/sfx/battle_2a.asm b/audio/sfx/battle_2a.asm
index ab01bf85..1faf2dda 100644
--- a/audio/sfx/battle_2a.asm
+++ b/audio/sfx/battle_2a.asm
@@ -1,28 +1,28 @@
-SFX_Battle_2A_Ch1:
- dutycycle 57
- unknownsfx0x20 4, 244, 0, 6
- unknownsfx0x20 3, 196, 0, 5
- unknownsfx0x20 5, 181, 0, 6
- unknownsfx0x20 13, 226, 192, 6
- loopchannel 3, SFX_Battle_2A_Ch1
- unknownsfx0x20 8, 209, 0, 6
- endchannel
+SFX_Battle_2A_Ch5:
+ duty_cycle_pattern 0, 3, 2, 1
+ square_note 4, 15, 4, 1536
+ square_note 3, 12, 4, 1280
+ square_note 5, 11, 5, 1536
+ square_note 13, 14, 2, 1728
+ sound_loop 3, SFX_Battle_2A_Ch5
+ square_note 8, 13, 1, 1536
+ sound_ret
-SFX_Battle_2A_Ch2:
- dutycycle 141
- unknownsfx0x20 5, 228, 224, 5
- unknownsfx0x20 4, 180, 224, 4
- unknownsfx0x20 6, 165, 232, 5
- unknownsfx0x20 14, 209, 160, 6
- loopchannel 3, SFX_Battle_2A_Ch2
- endchannel
+SFX_Battle_2A_Ch6:
+ duty_cycle_pattern 2, 0, 3, 1
+ square_note 5, 14, 4, 1504
+ square_note 4, 11, 4, 1248
+ square_note 6, 10, 5, 1512
+ square_note 14, 13, 1, 1696
+ sound_loop 3, SFX_Battle_2A_Ch6
+ sound_ret
-SFX_Battle_2A_Ch3:
- unknownnoise0x20 5, 195, 51
- unknownnoise0x20 3, 146, 67
- unknownnoise0x20 10, 181, 51
- unknownnoise0x20 15, 195, 50
- loopchannel 2, SFX_Battle_2A_Ch3
- endchannel
+SFX_Battle_2A_Ch8:
+ noise_note 5, 12, 3, 51
+ noise_note 3, 9, 2, 67
+ noise_note 10, 11, 5, 51
+ noise_note 15, 12, 3, 50
+ sound_loop 2, SFX_Battle_2A_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_2b.asm b/audio/sfx/battle_2b.asm
index 6eddfa76..d60a96f6 100644
--- a/audio/sfx/battle_2b.asm
+++ b/audio/sfx/battle_2b.asm
@@ -1,21 +1,21 @@
-SFX_Battle_2B_Ch1:
- dutycycle 210
- unknownsfx0x20 3, 129, 0, 3
- unknownsfx0x20 3, 193, 0, 4
- unknownsfx0x20 3, 241, 0, 5
- unknownsfx0x20 3, 177, 0, 4
- unknownsfx0x20 3, 113, 0, 3
- loopchannel 5, SFX_Battle_2B_Ch1
- unknownsfx0x20 8, 129, 0, 4
- endchannel
+SFX_Battle_2B_Ch5:
+ duty_cycle_pattern 3, 1, 0, 2
+ square_note 3, 8, 1, 768
+ square_note 3, 12, 1, 1024
+ square_note 3, 15, 1, 1280
+ square_note 3, 11, 1, 1024
+ square_note 3, 7, 1, 768
+ sound_loop 5, SFX_Battle_2B_Ch5
+ square_note 8, 8, 1, 1024
+ sound_ret
-SFX_Battle_2B_Ch2:
- unknownnoise0x20 3, 98, 34
- unknownnoise0x20 3, 162, 50
- unknownnoise0x20 3, 210, 51
- unknownnoise0x20 3, 146, 35
- unknownnoise0x20 3, 82, 18
- loopchannel 5, SFX_Battle_2B_Ch2
- unknownnoise0x20 8, 129, 18
- endchannel
+SFX_Battle_2B_Ch8:
+ noise_note 3, 6, 2, 34
+ noise_note 3, 10, 2, 50
+ noise_note 3, 13, 2, 51
+ noise_note 3, 9, 2, 35
+ noise_note 3, 5, 2, 18
+ sound_loop 5, SFX_Battle_2B_Ch8
+ noise_note 8, 8, 1, 18
+ sound_ret
diff --git a/audio/sfx/battle_2c.asm b/audio/sfx/battle_2c.asm
index 9cd9bd16..7530210f 100644
--- a/audio/sfx/battle_2c.asm
+++ b/audio/sfx/battle_2c.asm
@@ -1,25 +1,25 @@
-SFX_Battle_2C_Ch1:
- dutycycle 57
- unknownsfx0x20 15, 244, 0, 5
- unknownsfx0x20 15, 196, 0, 4
- unknownsfx0x20 15, 226, 192, 5
- loopchannel 3, SFX_Battle_2C_Ch1
- endchannel
+SFX_Battle_2C_Ch5:
+ duty_cycle_pattern 0, 3, 2, 1
+ square_note 15, 15, 4, 1280
+ square_note 15, 12, 4, 1024
+ square_note 15, 14, 2, 1472
+ sound_loop 3, SFX_Battle_2C_Ch5
+ sound_ret
-SFX_Battle_2C_Ch2:
- dutycycle 141
- unknownsfx0x20 7, 228, 48, 4
- unknownsfx0x20 15, 180, 48, 3
- unknownsfx0x20 15, 162, 56, 4
- loopchannel 4, SFX_Battle_2C_Ch2
- endchannel
+SFX_Battle_2C_Ch6:
+ duty_cycle_pattern 2, 0, 3, 1
+ square_note 7, 14, 4, 1072
+ square_note 15, 11, 4, 816
+ square_note 15, 10, 2, 1080
+ sound_loop 4, SFX_Battle_2C_Ch6
+ sound_ret
-SFX_Battle_2C_Ch3:
- unknownnoise0x20 9, 244, 68
- unknownnoise0x20 9, 242, 67
- unknownnoise0x20 15, 244, 66
- unknownnoise0x20 15, 244, 65
- loopchannel 3, SFX_Battle_2C_Ch3
- endchannel
+SFX_Battle_2C_Ch8:
+ noise_note 9, 15, 4, 68
+ noise_note 9, 15, 2, 67
+ noise_note 15, 15, 4, 66
+ noise_note 15, 15, 4, 65
+ sound_loop 3, SFX_Battle_2C_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_2e.asm b/audio/sfx/battle_2e.asm
index a0841ccf..ab5665fa 100644
--- a/audio/sfx/battle_2e.asm
+++ b/audio/sfx/battle_2e.asm
@@ -1,27 +1,27 @@
-SFX_Battle_2E_Ch1:
- duty 0
- unknownsfx0x20 2, 241, 0, 2
- unknownsfx0x20 3, 241, 0, 7
- unknownsfx0x20 4, 241, 0, 5
- unknownsfx0x20 5, 241, 240, 7
- loopchannel 8, SFX_Battle_2E_Ch1
- endchannel
+SFX_Battle_2E_Ch5:
+ duty_cycle 0
+ square_note 2, 15, 1, 512
+ square_note 3, 15, 1, 1792
+ square_note 4, 15, 1, 1280
+ square_note 5, 15, 1, 2032
+ sound_loop 8, SFX_Battle_2E_Ch5
+ sound_ret
-SFX_Battle_2E_Ch2:
- dutycycle 179
- unknownsfx0x20 2, 225, 2, 3
- unknownsfx0x20 3, 225, 242, 7
- unknownsfx0x20 4, 225, 2, 6
- unknownsfx0x20 5, 225, 2, 7
- loopchannel 8, SFX_Battle_2E_Ch2
- endchannel
+SFX_Battle_2E_Ch6:
+ duty_cycle_pattern 2, 3, 0, 3
+ square_note 2, 14, 1, 770
+ square_note 3, 14, 1, 2034
+ square_note 4, 14, 1, 1538
+ square_note 5, 14, 1, 1794
+ sound_loop 8, SFX_Battle_2E_Ch6
+ sound_ret
-SFX_Battle_2E_Ch3:
- unknownnoise0x20 2, 211, 16
- unknownnoise0x20 3, 211, 17
- unknownnoise0x20 2, 210, 16
- unknownnoise0x20 5, 210, 18
- loopchannel 9, SFX_Battle_2E_Ch3
- endchannel
+SFX_Battle_2E_Ch8:
+ noise_note 2, 13, 3, 16
+ noise_note 3, 13, 3, 17
+ noise_note 2, 13, 2, 16
+ noise_note 5, 13, 2, 18
+ sound_loop 9, SFX_Battle_2E_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_2f.asm b/audio/sfx/battle_2f.asm
index f511c832..dd80e599 100644
--- a/audio/sfx/battle_2f.asm
+++ b/audio/sfx/battle_2f.asm
@@ -1,21 +1,21 @@
-SFX_Thunderbolt_Ch1:
- dutycycle 43
- unknownsfx0x20 3, 241, 240, 7
- unknownsfx0x20 4, 242, 0, 2
- loopchannel 8, SFX_Thunderbolt_Ch1
- endchannel
+SFX_Battle_2F_Ch5:
+ duty_cycle_pattern 0, 2, 2, 3
+ square_note 3, 15, 1, 2032
+ square_note 4, 15, 2, 512
+ sound_loop 8, SFX_Battle_2F_Ch5
+ sound_ret
-SFX_Thunderbolt_Ch2:
- dutycycle 179
- unknownsfx0x20 4, 226, 2, 2
- unknownsfx0x20 4, 225, 226, 7
- loopchannel 9, SFX_Thunderbolt_Ch2
- endchannel
+SFX_Battle_2F_Ch6:
+ duty_cycle_pattern 2, 3, 0, 3
+ square_note 4, 14, 2, 514
+ square_note 4, 14, 1, 2018
+ sound_loop 9, SFX_Battle_2F_Ch6
+ sound_ret
-SFX_Thunderbolt_Ch3:
- unknownnoise0x20 4, 255, 67
- unknownnoise0x20 4, 242, 68
- loopchannel 9, SFX_Thunderbolt_Ch3
- endchannel
+SFX_Battle_2F_Ch8:
+ noise_note 4, 15, -7, 67
+ noise_note 4, 15, 2, 68
+ sound_loop 9, SFX_Battle_2F_Ch8
+ sound_ret
diff --git a/audio/sfx/battle_31.asm b/audio/sfx/battle_31.asm
index c88cc476..83dc96f4 100644
--- a/audio/sfx/battle_31.asm
+++ b/audio/sfx/battle_31.asm
@@ -1,18 +1,18 @@
-SFX_Battle_31_Ch1:
- duty 2
- unknownsfx0x20 15, 255, 224, 7
- unknownsfx0x20 15, 255, 224, 7
- unknownsfx0x20 15, 255, 224, 7
- unknownsfx0x20 15, 255, 224, 7
- unknownsfx0x20 15, 242, 224, 7
- endchannel
+SFX_Battle_31_Ch5:
+ duty_cycle 2
+ square_note 15, 15, -7, 2016
+ square_note 15, 15, -7, 2016
+ square_note 15, 15, -7, 2016
+ square_note 15, 15, -7, 2016
+ square_note 15, 15, 2, 2016
+ sound_ret
-SFX_Battle_31_Ch2:
- duty 3
- unknownsfx0x20 15, 255, 226, 7
- unknownsfx0x20 15, 255, 225, 7
- unknownsfx0x20 15, 255, 226, 7
- unknownsfx0x20 15, 255, 225, 7
- unknownsfx0x20 15, 242, 226, 7
- endchannel
+SFX_Battle_31_Ch6:
+ duty_cycle 3
+ square_note 15, 15, -7, 2018
+ square_note 15, 15, -7, 2017
+ square_note 15, 15, -7, 2018
+ square_note 15, 15, -7, 2017
+ square_note 15, 15, 2, 2018
+ sound_ret
diff --git a/audio/sfx/battle_32.asm b/audio/sfx/battle_32.asm
index a85d4334..c906dcac 100644
--- a/audio/sfx/battle_32.asm
+++ b/audio/sfx/battle_32.asm
@@ -1,12 +1,12 @@
-SFX_Battle_32_Ch1:
- duty 2
- unknownsfx0x10 175
- unknownsfx0x20 8, 241, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Battle_32_Ch5:
+ duty_cycle 2
+ pitch_sweep 10, -7
+ square_note 8, 15, 1, 1792
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Battle_32_Ch2:
- duty 3
- unknownsfx0x20 8, 241, 1, 7
- endchannel
+SFX_Battle_32_Ch6:
+ duty_cycle 3
+ square_note 8, 15, 1, 1793
+ sound_ret
diff --git a/audio/sfx/battle_33.asm b/audio/sfx/battle_33.asm
index 25b1ee42..95afe045 100644
--- a/audio/sfx/battle_33.asm
+++ b/audio/sfx/battle_33.asm
@@ -1,18 +1,18 @@
-SFX_Battle_33_Ch1:
- duty 2
- unknownsfx0x20 6, 241, 0, 5
- unknownsfx0x20 6, 241, 128, 5
- unknownsfx0x20 6, 241, 0, 6
- unknownsfx0x20 6, 241, 128, 6
- unknownsfx0x20 8, 241, 0, 7
- endchannel
+SFX_Battle_33_Ch5:
+ duty_cycle 2
+ square_note 6, 15, 1, 1280
+ square_note 6, 15, 1, 1408
+ square_note 6, 15, 1, 1536
+ square_note 6, 15, 1, 1664
+ square_note 8, 15, 1, 1792
+ sound_ret
-SFX_Battle_33_Ch2:
- duty 3
- unknownsfx0x20 6, 225, 16, 5
- unknownsfx0x20 6, 225, 144, 5
- unknownsfx0x20 6, 225, 16, 6
- unknownsfx0x20 6, 225, 144, 6
- unknownsfx0x20 8, 225, 16, 7
- endchannel
+SFX_Battle_33_Ch6:
+ duty_cycle 3
+ square_note 6, 14, 1, 1296
+ square_note 6, 14, 1, 1424
+ square_note 6, 14, 1, 1552
+ square_note 6, 14, 1, 1680
+ square_note 8, 14, 1, 1808
+ sound_ret
diff --git a/audio/sfx/battle_34.asm b/audio/sfx/battle_34.asm
index 14718916..654049e4 100644
--- a/audio/sfx/battle_34.asm
+++ b/audio/sfx/battle_34.asm
@@ -1,22 +1,22 @@
-SFX_Battle_34_Ch1:
- dutycycle 237
- unknownsfx0x20 8, 255, 248, 3
- unknownsfx0x20 15, 255, 0, 4
- unknownsfx0x20 15, 243, 0, 4
- endchannel
+SFX_Battle_34_Ch5:
+ duty_cycle_pattern 3, 2, 3, 1
+ square_note 8, 15, -7, 1016
+ square_note 15, 15, -7, 1024
+ square_note 15, 15, 3, 1024
+ sound_ret
-SFX_Battle_34_Ch2:
- dutycycle 180
- unknownsfx0x20 8, 239, 192, 3
- unknownsfx0x20 15, 239, 192, 3
- unknownsfx0x20 15, 227, 192, 3
- endchannel
+SFX_Battle_34_Ch6:
+ duty_cycle_pattern 2, 3, 1, 0
+ square_note 8, 14, -7, 960
+ square_note 15, 14, -7, 960
+ square_note 15, 14, 3, 960
+ sound_ret
-SFX_Battle_34_Ch3:
- unknownnoise0x20 4, 255, 81
- unknownnoise0x20 8, 255, 84
- unknownnoise0x20 15, 255, 85
- unknownnoise0x20 15, 243, 86
- endchannel
+SFX_Battle_34_Ch8:
+ noise_note 4, 15, -7, 81
+ noise_note 8, 15, -7, 84
+ noise_note 15, 15, -7, 85
+ noise_note 15, 15, 3, 86
+ sound_ret
diff --git a/audio/sfx/battle_35.asm b/audio/sfx/battle_35.asm
index 2fe57bc4..e9f78657 100644
--- a/audio/sfx/battle_35.asm
+++ b/audio/sfx/battle_35.asm
@@ -1,29 +1,29 @@
-SFX_Battle_35_Ch1:
- executemusic
+SFX_Battle_35_Ch5:
+ execute_music
vibrato 10, 2, 4
- duty 2
- notetype 10, 8, 7
+ duty_cycle 2
+ note_type 10, 8, 7
octave 5
- G# 8
+ note G#, 8
octave 6
- F# 4
- E_ 4
+ note F#, 4
+ note E_, 4
octave 5
- G# 8
- endchannel
+ note G#, 8
+ sound_ret
-SFX_Battle_35_Ch2:
- executemusic
+SFX_Battle_35_Ch6:
+ execute_music
vibrato 10, 2, 3
- duty 2
- notetype 11, 6, 7
+ duty_cycle 2
+ note_type 11, 6, 7
octave 5
- G# 8
- notetype 10, 6, 7
+ note G#, 8
+ note_type 10, 6, 7
octave 6
- F# 4
- E_ 4
+ note F#, 4
+ note E_, 4
octave 5
- G# 8
- endchannel
+ note G#, 8
+ sound_ret
diff --git a/audio/sfx/battle_36.asm b/audio/sfx/battle_36.asm
index dcf9c56e..773bf753 100644
--- a/audio/sfx/battle_36.asm
+++ b/audio/sfx/battle_36.asm
@@ -1,47 +1,47 @@
-SFX_Battle_36_Ch1:
- duty 0
- unknownsfx0x20 2, 241, 128, 7
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 2, 241, 144, 7
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 2, 241, 160, 7
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 2, 241, 176, 7
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 2, 241, 192, 7
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 2, 241, 208, 7
+SFX_Battle_36_Ch5:
+ duty_cycle 0
+ square_note 2, 15, 1, 1920
+ square_note 2, 15, 1, 1792
+ square_note 2, 15, 1, 1936
+ square_note 2, 15, 1, 1792
+ square_note 2, 15, 1, 1952
+ square_note 2, 15, 1, 1792
+ square_note 2, 15, 1, 1968
+ square_note 2, 15, 1, 1792
+ square_note 2, 15, 1, 1984
+ square_note 2, 15, 1, 1792
+ square_note 2, 15, 1, 2000
SFX_Battle_36_branch_20930:
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 2, 241, 224, 7
- loopchannel 12, SFX_Battle_36_branch_20930
- unknownsfx0x20 15, 241, 0, 7
- endchannel
+ square_note 2, 15, 1, 1792
+ square_note 2, 15, 1, 2016
+ sound_loop 12, SFX_Battle_36_branch_20930
+ square_note 15, 15, 1, 1792
+ sound_ret
-SFX_Battle_36_Ch2:
- dutycycle 179
- unknownsfx0x20 2, 241, 129, 7
- unknownsfx0x20 2, 241, 1, 7
- unknownsfx0x20 2, 241, 145, 7
- unknownsfx0x20 2, 241, 1, 7
- unknownsfx0x20 2, 241, 161, 7
- unknownsfx0x20 2, 241, 1, 7
- unknownsfx0x20 2, 241, 177, 7
- unknownsfx0x20 2, 241, 1, 7
- unknownsfx0x20 2, 241, 193, 7
- unknownsfx0x20 2, 241, 1, 7
- unknownsfx0x20 2, 241, 209, 7
- unknownsfx0x20 2, 241, 1, 7
- unknownsfx0x20 2, 241, 225, 7
- loopchannel 12, SFX_Battle_36_branch_20930
- unknownsfx0x20 15, 241, 1, 7
- endchannel
+SFX_Battle_36_Ch6:
+ duty_cycle_pattern 2, 3, 0, 3
+ square_note 2, 15, 1, 1921
+ square_note 2, 15, 1, 1793
+ square_note 2, 15, 1, 1937
+ square_note 2, 15, 1, 1793
+ square_note 2, 15, 1, 1953
+ square_note 2, 15, 1, 1793
+ square_note 2, 15, 1, 1969
+ square_note 2, 15, 1, 1793
+ square_note 2, 15, 1, 1985
+ square_note 2, 15, 1, 1793
+ square_note 2, 15, 1, 2001
+ square_note 2, 15, 1, 1793
+ square_note 2, 15, 1, 2017
+ sound_loop 12, SFX_Battle_36_branch_20930
+ square_note 15, 15, 1, 1793
+ sound_ret
-SFX_Battle_36_Ch3:
- unknownnoise0x20 1, 209, 73
- unknownnoise0x20 1, 209, 41
- loopchannel 26, SFX_Battle_36_Ch3
- endchannel
+SFX_Battle_36_Ch8:
+ noise_note 1, 13, 1, 73
+ noise_note 1, 13, 1, 41
+ sound_loop 26, SFX_Battle_36_Ch8
+ sound_ret
diff --git a/audio/sfx/caught_mon.asm b/audio/sfx/caught_mon.asm
index d4f3e858..3fe278f3 100644
--- a/audio/sfx/caught_mon.asm
+++ b/audio/sfx/caught_mon.asm
@@ -1,61 +1,61 @@
-SFX_Caught_Mon_Ch1:
- executemusic
+SFX_Caught_Mon_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 3
- toggleperfectpitch
- notetype 6, 11, 2
+ duty_cycle 3
+ toggle_perfect_pitch
+ note_type 6, 11, 2
octave 3
- E_ 2
- F# 2
- G# 2
- G# 1
- G# 1
- B_ 2
+ note E_, 2
+ note F#, 2
+ note G#, 2
+ note G#, 1
+ note G#, 1
+ note B_, 2
octave 4
- C# 2
- D# 2
- D# 1
- D# 1
- notetype 6, 11, 5
- E_ 8
- endchannel
+ note C#, 2
+ note D#, 2
+ note D#, 1
+ note D#, 1
+ note_type 6, 11, 5
+ note E_, 8
+ sound_ret
-SFX_Caught_Mon_Ch2:
- executemusic
- duty 2
- notetype 6, 12, 2
+SFX_Caught_Mon_Ch6:
+ execute_music
+ duty_cycle 2
+ note_type 6, 12, 2
octave 4
- G# 2
- G# 1
- G# 1
- E_ 2
- E_ 1
- E_ 1
- B_ 2
- B_ 1
- B_ 1
- A_ 2
- A_ 1
- A_ 1
- notetype 6, 12, 5
- G# 8
- endchannel
+ note G#, 2
+ note G#, 1
+ note G#, 1
+ note E_, 2
+ note E_, 1
+ note E_, 1
+ note B_, 2
+ note B_, 1
+ note B_, 1
+ note A_, 2
+ note A_, 1
+ note A_, 1
+ note_type 6, 12, 5
+ note G#, 8
+ sound_ret
-SFX_Caught_Mon_Ch3:
- executemusic
- notetype 6, 1, 0
+SFX_Caught_Mon_Ch7:
+ execute_music
+ note_type 6, 1, 0
octave 4
- B_ 2
+ note B_, 2
rest 2
octave 5
- C# 2
+ note C#, 2
rest 2
- D# 2
+ note D#, 2
rest 2
- F# 2
- G_ 2
- G# 4
- endchannel
+ note F#, 2
+ note G_, 2
+ note G#, 4
+ sound_ret
diff --git a/audio/sfx/collision_1.asm b/audio/sfx/collision_1.asm
index 7a45bdf4..70eb33ae 100644
--- a/audio/sfx/collision_1.asm
+++ b/audio/sfx/collision_1.asm
@@ -1,6 +1,6 @@
-SFX_Collision_1_Ch1:
- duty 2
- unknownsfx0x10 90
- unknownsfx0x20 15, 241, 0, 3
- unknownsfx0x10 8
- endchannel
+SFX_Collision_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 5, -2
+ square_note 15, 15, 1, 768
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/collision_3.asm b/audio/sfx/collision_3.asm
index 601670d5..8b557bcc 100644
--- a/audio/sfx/collision_3.asm
+++ b/audio/sfx/collision_3.asm
@@ -1,6 +1,6 @@
-SFX_Collision_3_Ch1:
- duty 2
- unknownsfx0x10 90
- unknownsfx0x20 15, 241, 0, 3
- unknownsfx0x10 8
- endchannel
+SFX_Collision_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 5, -2
+ square_note 15, 15, 1, 768
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/cry00_1.asm b/audio/sfx/cry00_1.asm
index 4fc82294..22a41634 100644
--- a/audio/sfx/cry00_1.asm
+++ b/audio/sfx/cry00_1.asm
@@ -1,21 +1,21 @@
-SFX_Cry00_1_Ch1:
- dutycycle 245
- unknownsfx0x20 4, 243, 24, 7
- unknownsfx0x20 15, 229, 152, 7
- unknownsfx0x20 8, 145, 88, 7
- endchannel
+SFX_Cry00_1_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 4, 15, 3, 1816
+ square_note 15, 14, 5, 1944
+ square_note 8, 9, 1, 1880
+ sound_ret
-SFX_Cry00_1_Ch2:
- dutycycle 160
- unknownsfx0x20 5, 179, 8, 7
- unknownsfx0x20 15, 197, 136, 7
- unknownsfx0x20 8, 113, 72, 7
- endchannel
+SFX_Cry00_1_Ch6:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 5, 11, 3, 1800
+ square_note 15, 12, 5, 1928
+ square_note 8, 7, 1, 1864
+ sound_ret
-SFX_Cry00_1_Ch3:
- unknownnoise0x20 3, 161, 28
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 8, 129, 28
- endchannel
+SFX_Cry00_1_Ch8:
+ noise_note 3, 10, 1, 28
+ noise_note 14, 9, 4, 44
+ noise_note 8, 8, 1, 28
+ sound_ret
diff --git a/audio/sfx/cry00_2.asm b/audio/sfx/cry00_2.asm
index ccce6943..97d17e8f 100644
--- a/audio/sfx/cry00_2.asm
+++ b/audio/sfx/cry00_2.asm
@@ -1,21 +1,21 @@
-SFX_Cry00_2_Ch1:
- dutycycle 245
- unknownsfx0x20 4, 243, 24, 7
- unknownsfx0x20 15, 229, 152, 7
- unknownsfx0x20 8, 145, 88, 7
- endchannel
+SFX_Cry00_2_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 4, 15, 3, 1816
+ square_note 15, 14, 5, 1944
+ square_note 8, 9, 1, 1880
+ sound_ret
-SFX_Cry00_2_Ch2:
- dutycycle 160
- unknownsfx0x20 5, 179, 8, 7
- unknownsfx0x20 15, 197, 136, 7
- unknownsfx0x20 8, 113, 72, 7
- endchannel
+SFX_Cry00_2_Ch6:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 5, 11, 3, 1800
+ square_note 15, 12, 5, 1928
+ square_note 8, 7, 1, 1864
+ sound_ret
-SFX_Cry00_2_Ch3:
- unknownnoise0x20 3, 161, 28
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 8, 129, 28
- endchannel
+SFX_Cry00_2_Ch8:
+ noise_note 3, 10, 1, 28
+ noise_note 14, 9, 4, 44
+ noise_note 8, 8, 1, 28
+ sound_ret
diff --git a/audio/sfx/cry00_3.asm b/audio/sfx/cry00_3.asm
index 9b8b6fda..e332c35e 100644
--- a/audio/sfx/cry00_3.asm
+++ b/audio/sfx/cry00_3.asm
@@ -1,21 +1,21 @@
-SFX_Cry00_3_Ch1:
- dutycycle 245
- unknownsfx0x20 4, 243, 24, 7
- unknownsfx0x20 15, 229, 152, 7
- unknownsfx0x20 8, 145, 88, 7
- endchannel
+SFX_Cry00_3_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 4, 15, 3, 1816
+ square_note 15, 14, 5, 1944
+ square_note 8, 9, 1, 1880
+ sound_ret
-SFX_Cry00_3_Ch2:
- dutycycle 160
- unknownsfx0x20 5, 179, 8, 7
- unknownsfx0x20 15, 197, 136, 7
- unknownsfx0x20 8, 113, 72, 7
- endchannel
+SFX_Cry00_3_Ch6:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 5, 11, 3, 1800
+ square_note 15, 12, 5, 1928
+ square_note 8, 7, 1, 1864
+ sound_ret
-SFX_Cry00_3_Ch3:
- unknownnoise0x20 3, 161, 28
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 8, 129, 28
- endchannel
+SFX_Cry00_3_Ch8:
+ noise_note 3, 10, 1, 28
+ noise_note 14, 9, 4, 44
+ noise_note 8, 8, 1, 28
+ sound_ret
diff --git a/audio/sfx/cry01_1.asm b/audio/sfx/cry01_1.asm
index d684af6f..cb35392b 100644
--- a/audio/sfx/cry01_1.asm
+++ b/audio/sfx/cry01_1.asm
@@ -1,24 +1,24 @@
-SFX_Cry01_1_Ch1:
- dutycycle 160
- unknownsfx0x20 4, 243, 0, 6
- unknownsfx0x20 8, 213, 96, 7
- unknownsfx0x20 3, 226, 32, 7
- unknownsfx0x20 8, 209, 16, 7
- endchannel
+SFX_Cry01_1_Ch5:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 4, 15, 3, 1536
+ square_note 8, 13, 5, 1888
+ square_note 3, 14, 2, 1824
+ square_note 8, 13, 1, 1808
+ sound_ret
-SFX_Cry01_1_Ch2:
- dutycycle 90
- unknownsfx0x20 5, 179, 241, 6
- unknownsfx0x20 7, 197, 82, 7
- unknownsfx0x20 3, 162, 17, 7
- unknownsfx0x20 8, 177, 1, 6
- endchannel
+SFX_Cry01_1_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 5, 11, 3, 1777
+ square_note 7, 12, 5, 1874
+ square_note 3, 10, 2, 1809
+ square_note 8, 11, 1, 1537
+ sound_ret
-SFX_Cry01_1_Ch3:
- unknownnoise0x20 3, 162, 60
- unknownnoise0x20 12, 148, 44
- unknownnoise0x20 3, 130, 28
- unknownnoise0x20 8, 113, 44
- endchannel
+SFX_Cry01_1_Ch8:
+ noise_note 3, 10, 2, 60
+ noise_note 12, 9, 4, 44
+ noise_note 3, 8, 2, 28
+ noise_note 8, 7, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry01_2.asm b/audio/sfx/cry01_2.asm
index 0e1030e1..449adac7 100644
--- a/audio/sfx/cry01_2.asm
+++ b/audio/sfx/cry01_2.asm
@@ -1,24 +1,24 @@
-SFX_Cry01_2_Ch1:
- dutycycle 160
- unknownsfx0x20 4, 243, 0, 6
- unknownsfx0x20 8, 213, 96, 7
- unknownsfx0x20 3, 226, 32, 7
- unknownsfx0x20 8, 209, 16, 7
- endchannel
+SFX_Cry01_2_Ch5:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 4, 15, 3, 1536
+ square_note 8, 13, 5, 1888
+ square_note 3, 14, 2, 1824
+ square_note 8, 13, 1, 1808
+ sound_ret
-SFX_Cry01_2_Ch2:
- dutycycle 90
- unknownsfx0x20 5, 179, 241, 6
- unknownsfx0x20 7, 197, 82, 7
- unknownsfx0x20 3, 162, 17, 7
- unknownsfx0x20 8, 177, 1, 6
- endchannel
+SFX_Cry01_2_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 5, 11, 3, 1777
+ square_note 7, 12, 5, 1874
+ square_note 3, 10, 2, 1809
+ square_note 8, 11, 1, 1537
+ sound_ret
-SFX_Cry01_2_Ch3:
- unknownnoise0x20 3, 162, 60
- unknownnoise0x20 12, 148, 44
- unknownnoise0x20 3, 130, 28
- unknownnoise0x20 8, 113, 44
- endchannel
+SFX_Cry01_2_Ch8:
+ noise_note 3, 10, 2, 60
+ noise_note 12, 9, 4, 44
+ noise_note 3, 8, 2, 28
+ noise_note 8, 7, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry01_3.asm b/audio/sfx/cry01_3.asm
index be084d7e..ef8e5e8c 100644
--- a/audio/sfx/cry01_3.asm
+++ b/audio/sfx/cry01_3.asm
@@ -1,24 +1,24 @@
-SFX_Cry01_3_Ch1:
- dutycycle 160
- unknownsfx0x20 4, 243, 0, 6
- unknownsfx0x20 8, 213, 96, 7
- unknownsfx0x20 3, 226, 32, 7
- unknownsfx0x20 8, 209, 16, 7
- endchannel
+SFX_Cry01_3_Ch5:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 4, 15, 3, 1536
+ square_note 8, 13, 5, 1888
+ square_note 3, 14, 2, 1824
+ square_note 8, 13, 1, 1808
+ sound_ret
-SFX_Cry01_3_Ch2:
- dutycycle 90
- unknownsfx0x20 5, 179, 241, 6
- unknownsfx0x20 7, 197, 82, 7
- unknownsfx0x20 3, 162, 17, 7
- unknownsfx0x20 8, 177, 1, 6
- endchannel
+SFX_Cry01_3_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 5, 11, 3, 1777
+ square_note 7, 12, 5, 1874
+ square_note 3, 10, 2, 1809
+ square_note 8, 11, 1, 1537
+ sound_ret
-SFX_Cry01_3_Ch3:
- unknownnoise0x20 3, 162, 60
- unknownnoise0x20 12, 148, 44
- unknownnoise0x20 3, 130, 28
- unknownnoise0x20 8, 113, 44
- endchannel
+SFX_Cry01_3_Ch8:
+ noise_note 3, 10, 2, 60
+ noise_note 12, 9, 4, 44
+ noise_note 3, 8, 2, 28
+ noise_note 8, 7, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry02_1.asm b/audio/sfx/cry02_1.asm
index d4b520c9..3db37e97 100644
--- a/audio/sfx/cry02_1.asm
+++ b/audio/sfx/cry02_1.asm
@@ -1,17 +1,17 @@
-SFX_Cry02_1_Ch1:
- duty 0
- unknownsfx0x20 8, 245, 128, 4
- unknownsfx0x20 2, 225, 224, 5
- unknownsfx0x20 8, 209, 220, 5
- endchannel
+SFX_Cry02_1_Ch5:
+ duty_cycle 0
+ square_note 8, 15, 5, 1152
+ square_note 2, 14, 1, 1504
+ square_note 8, 13, 1, 1500
+ sound_ret
-SFX_Cry02_1_Ch2:
- dutycycle 165
- unknownsfx0x20 7, 149, 65, 4
- unknownsfx0x20 2, 129, 33, 5
- unknownsfx0x20 8, 97, 26, 5
+SFX_Cry02_1_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 7, 9, 5, 1089
+ square_note 2, 8, 1, 1313
+ square_note 8, 6, 1, 1306
-SFX_Cry02_1_Ch3:
- endchannel
+SFX_Cry02_1_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry02_2.asm b/audio/sfx/cry02_2.asm
index 526e8c48..a623e071 100644
--- a/audio/sfx/cry02_2.asm
+++ b/audio/sfx/cry02_2.asm
@@ -1,17 +1,17 @@
-SFX_Cry02_2_Ch1:
- duty 0
- unknownsfx0x20 8, 245, 128, 4
- unknownsfx0x20 2, 225, 224, 5
- unknownsfx0x20 8, 209, 220, 5
- endchannel
+SFX_Cry02_2_Ch5:
+ duty_cycle 0
+ square_note 8, 15, 5, 1152
+ square_note 2, 14, 1, 1504
+ square_note 8, 13, 1, 1500
+ sound_ret
-SFX_Cry02_2_Ch2:
- dutycycle 165
- unknownsfx0x20 7, 149, 65, 4
- unknownsfx0x20 2, 129, 33, 5
- unknownsfx0x20 8, 97, 26, 5
+SFX_Cry02_2_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 7, 9, 5, 1089
+ square_note 2, 8, 1, 1313
+ square_note 8, 6, 1, 1306
-SFX_Cry02_2_Ch3:
- endchannel
+SFX_Cry02_2_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry02_3.asm b/audio/sfx/cry02_3.asm
index 2366ff97..4e0861d1 100644
--- a/audio/sfx/cry02_3.asm
+++ b/audio/sfx/cry02_3.asm
@@ -1,17 +1,17 @@
-SFX_Cry02_3_Ch1:
- duty 0
- unknownsfx0x20 8, 245, 128, 4
- unknownsfx0x20 2, 225, 224, 5
- unknownsfx0x20 8, 209, 220, 5
- endchannel
+SFX_Cry02_3_Ch5:
+ duty_cycle 0
+ square_note 8, 15, 5, 1152
+ square_note 2, 14, 1, 1504
+ square_note 8, 13, 1, 1500
+ sound_ret
-SFX_Cry02_3_Ch2:
- dutycycle 165
- unknownsfx0x20 7, 149, 65, 4
- unknownsfx0x20 2, 129, 33, 5
- unknownsfx0x20 8, 97, 26, 5
+SFX_Cry02_3_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 7, 9, 5, 1089
+ square_note 2, 8, 1, 1313
+ square_note 8, 6, 1, 1306
-SFX_Cry02_3_Ch3:
- endchannel
+SFX_Cry02_3_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry03_1.asm b/audio/sfx/cry03_1.asm
index 72ea5d38..cb58c394 100644
--- a/audio/sfx/cry03_1.asm
+++ b/audio/sfx/cry03_1.asm
@@ -1,30 +1,30 @@
-SFX_Cry03_1_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 247, 8, 6
- unknownsfx0x20 6, 230, 0, 6
- unknownsfx0x20 6, 215, 240, 5
- unknownsfx0x20 6, 196, 224, 5
- unknownsfx0x20 5, 211, 192, 5
- unknownsfx0x20 4, 211, 160, 5
- unknownsfx0x20 8, 225, 128, 5
- endchannel
+SFX_Cry03_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1544
+ square_note 6, 14, 6, 1536
+ square_note 6, 13, 7, 1520
+ square_note 6, 12, 4, 1504
+ square_note 5, 13, 3, 1472
+ square_note 4, 13, 3, 1440
+ square_note 8, 14, 1, 1408
+ sound_ret
-SFX_Cry03_1_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 199, 4, 5
- unknownsfx0x20 6, 166, 2, 5
- unknownsfx0x20 6, 151, 241, 4
- unknownsfx0x20 4, 180, 225, 4
- unknownsfx0x20 5, 163, 194, 4
- unknownsfx0x20 4, 179, 163, 4
- unknownsfx0x20 8, 193, 130, 4
- endchannel
+SFX_Cry03_1_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 12, 7, 1284
+ square_note 6, 10, 6, 1282
+ square_note 6, 9, 7, 1265
+ square_note 4, 11, 4, 1249
+ square_note 5, 10, 3, 1218
+ square_note 4, 11, 3, 1187
+ square_note 8, 12, 1, 1154
+ sound_ret
-SFX_Cry03_1_Ch3:
- unknownnoise0x20 12, 228, 76
- unknownnoise0x20 10, 199, 92
- unknownnoise0x20 12, 182, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Cry03_1_Ch8:
+ noise_note 12, 14, 4, 76
+ noise_note 10, 12, 7, 92
+ noise_note 12, 11, 6, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/cry03_2.asm b/audio/sfx/cry03_2.asm
index de043909..2813ce1a 100644
--- a/audio/sfx/cry03_2.asm
+++ b/audio/sfx/cry03_2.asm
@@ -1,30 +1,30 @@
-SFX_Cry03_2_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 247, 8, 6
- unknownsfx0x20 6, 230, 0, 6
- unknownsfx0x20 6, 215, 240, 5
- unknownsfx0x20 6, 196, 224, 5
- unknownsfx0x20 5, 211, 192, 5
- unknownsfx0x20 4, 211, 160, 5
- unknownsfx0x20 8, 225, 128, 5
- endchannel
+SFX_Cry03_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1544
+ square_note 6, 14, 6, 1536
+ square_note 6, 13, 7, 1520
+ square_note 6, 12, 4, 1504
+ square_note 5, 13, 3, 1472
+ square_note 4, 13, 3, 1440
+ square_note 8, 14, 1, 1408
+ sound_ret
-SFX_Cry03_2_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 199, 4, 5
- unknownsfx0x20 6, 166, 2, 5
- unknownsfx0x20 6, 151, 241, 4
- unknownsfx0x20 4, 180, 225, 4
- unknownsfx0x20 5, 163, 194, 4
- unknownsfx0x20 4, 179, 163, 4
- unknownsfx0x20 8, 193, 130, 4
- endchannel
+SFX_Cry03_2_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 12, 7, 1284
+ square_note 6, 10, 6, 1282
+ square_note 6, 9, 7, 1265
+ square_note 4, 11, 4, 1249
+ square_note 5, 10, 3, 1218
+ square_note 4, 11, 3, 1187
+ square_note 8, 12, 1, 1154
+ sound_ret
-SFX_Cry03_2_Ch3:
- unknownnoise0x20 12, 228, 76
- unknownnoise0x20 10, 199, 92
- unknownnoise0x20 12, 182, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Cry03_2_Ch8:
+ noise_note 12, 14, 4, 76
+ noise_note 10, 12, 7, 92
+ noise_note 12, 11, 6, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/cry03_3.asm b/audio/sfx/cry03_3.asm
index 467745f9..ae561a7a 100644
--- a/audio/sfx/cry03_3.asm
+++ b/audio/sfx/cry03_3.asm
@@ -1,30 +1,30 @@
-SFX_Cry03_3_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 247, 8, 6
- unknownsfx0x20 6, 230, 0, 6
- unknownsfx0x20 6, 215, 240, 5
- unknownsfx0x20 6, 196, 224, 5
- unknownsfx0x20 5, 211, 192, 5
- unknownsfx0x20 4, 211, 160, 5
- unknownsfx0x20 8, 225, 128, 5
- endchannel
+SFX_Cry03_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1544
+ square_note 6, 14, 6, 1536
+ square_note 6, 13, 7, 1520
+ square_note 6, 12, 4, 1504
+ square_note 5, 13, 3, 1472
+ square_note 4, 13, 3, 1440
+ square_note 8, 14, 1, 1408
+ sound_ret
-SFX_Cry03_3_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 199, 4, 5
- unknownsfx0x20 6, 166, 2, 5
- unknownsfx0x20 6, 151, 241, 4
- unknownsfx0x20 4, 180, 225, 4
- unknownsfx0x20 5, 163, 194, 4
- unknownsfx0x20 4, 179, 163, 4
- unknownsfx0x20 8, 193, 130, 4
- endchannel
+SFX_Cry03_3_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 12, 7, 1284
+ square_note 6, 10, 6, 1282
+ square_note 6, 9, 7, 1265
+ square_note 4, 11, 4, 1249
+ square_note 5, 10, 3, 1218
+ square_note 4, 11, 3, 1187
+ square_note 8, 12, 1, 1154
+ sound_ret
-SFX_Cry03_3_Ch3:
- unknownnoise0x20 12, 228, 76
- unknownnoise0x20 10, 199, 92
- unknownnoise0x20 12, 182, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Cry03_3_Ch8:
+ noise_note 12, 14, 4, 76
+ noise_note 10, 12, 7, 92
+ noise_note 12, 11, 6, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/cry04_1.asm b/audio/sfx/cry04_1.asm
index 2c34f1c6..24662192 100644
--- a/audio/sfx/cry04_1.asm
+++ b/audio/sfx/cry04_1.asm
@@ -1,32 +1,32 @@
-SFX_Cry04_1_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 247, 160, 6
- unknownsfx0x20 8, 230, 164, 6
- unknownsfx0x20 4, 214, 160, 6
- unknownsfx0x20 12, 211, 32, 6
- unknownsfx0x20 8, 195, 36, 6
- unknownsfx0x20 4, 194, 32, 6
- unknownsfx0x20 8, 177, 16, 6
- endchannel
+SFX_Cry04_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1696
+ square_note 8, 14, 6, 1700
+ square_note 4, 13, 6, 1696
+ square_note 12, 13, 3, 1568
+ square_note 8, 12, 3, 1572
+ square_note 4, 12, 2, 1568
+ square_note 8, 11, 1, 1552
+ sound_ret
-SFX_Cry04_1_Ch2:
- dutycycle 90
- unknownsfx0x20 4, 231, 1, 6
- unknownsfx0x20 8, 214, 3, 6
- unknownsfx0x20 4, 198, 1, 6
- unknownsfx0x20 12, 195, 129, 5
- unknownsfx0x20 8, 179, 131, 5
- unknownsfx0x20 4, 178, 130, 5
- unknownsfx0x20 8, 161, 113, 5
- endchannel
+SFX_Cry04_1_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 4, 14, 7, 1537
+ square_note 8, 13, 6, 1539
+ square_note 4, 12, 6, 1537
+ square_note 12, 12, 3, 1409
+ square_note 8, 11, 3, 1411
+ square_note 4, 11, 2, 1410
+ square_note 8, 10, 1, 1393
+ sound_ret
-SFX_Cry04_1_Ch3:
- unknownnoise0x20 7, 214, 92
- unknownnoise0x20 8, 230, 76
- unknownnoise0x20 4, 212, 92
- unknownnoise0x20 4, 212, 76
- unknownnoise0x20 7, 195, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Cry04_1_Ch8:
+ noise_note 7, 13, 6, 92
+ noise_note 8, 14, 6, 76
+ noise_note 4, 13, 4, 92
+ noise_note 4, 13, 4, 76
+ noise_note 7, 12, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry04_2.asm b/audio/sfx/cry04_2.asm
index 38bfbf63..f18fd9cd 100644
--- a/audio/sfx/cry04_2.asm
+++ b/audio/sfx/cry04_2.asm
@@ -1,32 +1,32 @@
-SFX_Cry04_2_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 247, 160, 6
- unknownsfx0x20 8, 230, 164, 6
- unknownsfx0x20 4, 214, 160, 6
- unknownsfx0x20 12, 211, 32, 6
- unknownsfx0x20 8, 195, 36, 6
- unknownsfx0x20 4, 194, 32, 6
- unknownsfx0x20 8, 177, 16, 6
- endchannel
+SFX_Cry04_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1696
+ square_note 8, 14, 6, 1700
+ square_note 4, 13, 6, 1696
+ square_note 12, 13, 3, 1568
+ square_note 8, 12, 3, 1572
+ square_note 4, 12, 2, 1568
+ square_note 8, 11, 1, 1552
+ sound_ret
-SFX_Cry04_2_Ch2:
- dutycycle 90
- unknownsfx0x20 4, 231, 1, 6
- unknownsfx0x20 8, 214, 3, 6
- unknownsfx0x20 4, 198, 1, 6
- unknownsfx0x20 12, 195, 129, 5
- unknownsfx0x20 8, 179, 131, 5
- unknownsfx0x20 4, 178, 130, 5
- unknownsfx0x20 8, 161, 113, 5
- endchannel
+SFX_Cry04_2_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 4, 14, 7, 1537
+ square_note 8, 13, 6, 1539
+ square_note 4, 12, 6, 1537
+ square_note 12, 12, 3, 1409
+ square_note 8, 11, 3, 1411
+ square_note 4, 11, 2, 1410
+ square_note 8, 10, 1, 1393
+ sound_ret
-SFX_Cry04_2_Ch3:
- unknownnoise0x20 7, 214, 92
- unknownnoise0x20 8, 230, 76
- unknownnoise0x20 4, 212, 92
- unknownnoise0x20 4, 212, 76
- unknownnoise0x20 7, 195, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Cry04_2_Ch8:
+ noise_note 7, 13, 6, 92
+ noise_note 8, 14, 6, 76
+ noise_note 4, 13, 4, 92
+ noise_note 4, 13, 4, 76
+ noise_note 7, 12, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry04_3.asm b/audio/sfx/cry04_3.asm
index bd73c271..718af40f 100644
--- a/audio/sfx/cry04_3.asm
+++ b/audio/sfx/cry04_3.asm
@@ -1,32 +1,32 @@
-SFX_Cry04_3_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 247, 160, 6
- unknownsfx0x20 8, 230, 164, 6
- unknownsfx0x20 4, 214, 160, 6
- unknownsfx0x20 12, 211, 32, 6
- unknownsfx0x20 8, 195, 36, 6
- unknownsfx0x20 4, 194, 32, 6
- unknownsfx0x20 8, 177, 16, 6
- endchannel
+SFX_Cry04_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1696
+ square_note 8, 14, 6, 1700
+ square_note 4, 13, 6, 1696
+ square_note 12, 13, 3, 1568
+ square_note 8, 12, 3, 1572
+ square_note 4, 12, 2, 1568
+ square_note 8, 11, 1, 1552
+ sound_ret
-SFX_Cry04_3_Ch2:
- dutycycle 90
- unknownsfx0x20 4, 231, 1, 6
- unknownsfx0x20 8, 214, 3, 6
- unknownsfx0x20 4, 198, 1, 6
- unknownsfx0x20 12, 195, 129, 5
- unknownsfx0x20 8, 179, 131, 5
- unknownsfx0x20 4, 178, 130, 5
- unknownsfx0x20 8, 161, 113, 5
- endchannel
+SFX_Cry04_3_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 4, 14, 7, 1537
+ square_note 8, 13, 6, 1539
+ square_note 4, 12, 6, 1537
+ square_note 12, 12, 3, 1409
+ square_note 8, 11, 3, 1411
+ square_note 4, 11, 2, 1410
+ square_note 8, 10, 1, 1393
+ sound_ret
-SFX_Cry04_3_Ch3:
- unknownnoise0x20 7, 214, 92
- unknownnoise0x20 8, 230, 76
- unknownnoise0x20 4, 212, 92
- unknownnoise0x20 4, 212, 76
- unknownnoise0x20 7, 195, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Cry04_3_Ch8:
+ noise_note 7, 13, 6, 92
+ noise_note 8, 14, 6, 76
+ noise_note 4, 13, 4, 92
+ noise_note 4, 13, 4, 76
+ noise_note 7, 12, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry05_1.asm b/audio/sfx/cry05_1.asm
index 8de5bf02..1c3fce20 100644
--- a/audio/sfx/cry05_1.asm
+++ b/audio/sfx/cry05_1.asm
@@ -1,19 +1,19 @@
-SFX_Cry05_1_Ch1:
- dutycycle 10
- unknownsfx0x20 6, 226, 0, 5
- unknownsfx0x20 6, 227, 128, 5
- unknownsfx0x20 6, 211, 112, 5
- unknownsfx0x20 8, 161, 96, 5
- endchannel
+SFX_Cry05_1_Ch5:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 14, 2, 1280
+ square_note 6, 14, 3, 1408
+ square_note 6, 13, 3, 1392
+ square_note 8, 10, 1, 1376
+ sound_ret
-SFX_Cry05_1_Ch2:
- dutycycle 245
- unknownsfx0x20 6, 226, 130, 4
- unknownsfx0x20 6, 211, 1, 5
- unknownsfx0x20 6, 178, 226, 4
- unknownsfx0x20 8, 129, 193, 4
+SFX_Cry05_1_Ch6:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 6, 14, 2, 1154
+ square_note 6, 13, 3, 1281
+ square_note 6, 11, 2, 1250
+ square_note 8, 8, 1, 1217
-SFX_Cry05_1_Ch3:
- endchannel
+SFX_Cry05_1_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry05_2.asm b/audio/sfx/cry05_2.asm
index 28879677..53f076f2 100644
--- a/audio/sfx/cry05_2.asm
+++ b/audio/sfx/cry05_2.asm
@@ -1,19 +1,19 @@
-SFX_Cry05_2_Ch1:
- dutycycle 10
- unknownsfx0x20 6, 226, 0, 5
- unknownsfx0x20 6, 227, 128, 5
- unknownsfx0x20 6, 211, 112, 5
- unknownsfx0x20 8, 161, 96, 5
- endchannel
+SFX_Cry05_2_Ch5:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 14, 2, 1280
+ square_note 6, 14, 3, 1408
+ square_note 6, 13, 3, 1392
+ square_note 8, 10, 1, 1376
+ sound_ret
-SFX_Cry05_2_Ch2:
- dutycycle 245
- unknownsfx0x20 6, 226, 130, 4
- unknownsfx0x20 6, 211, 1, 5
- unknownsfx0x20 6, 178, 226, 4
- unknownsfx0x20 8, 129, 193, 4
+SFX_Cry05_2_Ch6:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 6, 14, 2, 1154
+ square_note 6, 13, 3, 1281
+ square_note 6, 11, 2, 1250
+ square_note 8, 8, 1, 1217
-SFX_Cry05_2_Ch3:
- endchannel
+SFX_Cry05_2_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry05_3.asm b/audio/sfx/cry05_3.asm
index 261492af..2d5b02b8 100644
--- a/audio/sfx/cry05_3.asm
+++ b/audio/sfx/cry05_3.asm
@@ -1,19 +1,19 @@
-SFX_Cry05_3_Ch1:
- dutycycle 10
- unknownsfx0x20 6, 226, 0, 5
- unknownsfx0x20 6, 227, 128, 5
- unknownsfx0x20 6, 211, 112, 5
- unknownsfx0x20 8, 161, 96, 5
- endchannel
+SFX_Cry05_3_Ch5:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 14, 2, 1280
+ square_note 6, 14, 3, 1408
+ square_note 6, 13, 3, 1392
+ square_note 8, 10, 1, 1376
+ sound_ret
-SFX_Cry05_3_Ch2:
- dutycycle 245
- unknownsfx0x20 6, 226, 130, 4
- unknownsfx0x20 6, 211, 1, 5
- unknownsfx0x20 6, 178, 226, 4
- unknownsfx0x20 8, 129, 193, 4
+SFX_Cry05_3_Ch6:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 6, 14, 2, 1154
+ square_note 6, 13, 3, 1281
+ square_note 6, 11, 2, 1250
+ square_note 8, 8, 1, 1217
-SFX_Cry05_3_Ch3:
- endchannel
+SFX_Cry05_3_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry06_1.asm b/audio/sfx/cry06_1.asm
index e171b025..03b75b0a 100644
--- a/audio/sfx/cry06_1.asm
+++ b/audio/sfx/cry06_1.asm
@@ -1,22 +1,22 @@
-SFX_Cry06_1_Ch1:
- dutycycle 250
- unknownsfx0x20 6, 131, 71, 2
- unknownsfx0x20 15, 98, 38, 2
- unknownsfx0x20 4, 82, 69, 2
- unknownsfx0x20 9, 99, 6, 2
- unknownsfx0x20 15, 130, 37, 2
- unknownsfx0x20 15, 66, 7, 2
+SFX_Cry06_1_Ch5:
+ duty_cycle_pattern 3, 3, 2, 2
+ square_note 6, 8, 3, 583
+ square_note 15, 6, 2, 550
+ square_note 4, 5, 2, 581
+ square_note 9, 6, 3, 518
+ square_note 15, 8, 2, 549
+ square_note 15, 4, 2, 519
-SFX_Cry06_1_Ch2:
- endchannel
+SFX_Cry06_1_Ch6:
+ sound_ret
-SFX_Cry06_1_Ch3:
- unknownnoise0x20 8, 212, 140
- unknownnoise0x20 4, 226, 156
- unknownnoise0x20 15, 198, 140
- unknownnoise0x20 8, 228, 172
- unknownnoise0x20 15, 215, 156
- unknownnoise0x20 15, 242, 172
- endchannel
+SFX_Cry06_1_Ch8:
+ noise_note 8, 13, 4, 140
+ noise_note 4, 14, 2, 156
+ noise_note 15, 12, 6, 140
+ noise_note 8, 14, 4, 172
+ noise_note 15, 13, 7, 156
+ noise_note 15, 15, 2, 172
+ sound_ret
diff --git a/audio/sfx/cry06_2.asm b/audio/sfx/cry06_2.asm
index 5e6e9e6a..6ddbfeb0 100644
--- a/audio/sfx/cry06_2.asm
+++ b/audio/sfx/cry06_2.asm
@@ -1,22 +1,22 @@
-SFX_Cry06_2_Ch1:
- dutycycle 250
- unknownsfx0x20 6, 131, 71, 2
- unknownsfx0x20 15, 98, 38, 2
- unknownsfx0x20 4, 82, 69, 2
- unknownsfx0x20 9, 99, 6, 2
- unknownsfx0x20 15, 130, 37, 2
- unknownsfx0x20 15, 66, 7, 2
+SFX_Cry06_2_Ch5:
+ duty_cycle_pattern 3, 3, 2, 2
+ square_note 6, 8, 3, 583
+ square_note 15, 6, 2, 550
+ square_note 4, 5, 2, 581
+ square_note 9, 6, 3, 518
+ square_note 15, 8, 2, 549
+ square_note 15, 4, 2, 519
-SFX_Cry06_2_Ch2:
- endchannel
+SFX_Cry06_2_Ch6:
+ sound_ret
-SFX_Cry06_2_Ch3:
- unknownnoise0x20 8, 212, 140
- unknownnoise0x20 4, 226, 156
- unknownnoise0x20 15, 198, 140
- unknownnoise0x20 8, 228, 172
- unknownnoise0x20 15, 215, 156
- unknownnoise0x20 15, 242, 172
- endchannel
+SFX_Cry06_2_Ch8:
+ noise_note 8, 13, 4, 140
+ noise_note 4, 14, 2, 156
+ noise_note 15, 12, 6, 140
+ noise_note 8, 14, 4, 172
+ noise_note 15, 13, 7, 156
+ noise_note 15, 15, 2, 172
+ sound_ret
diff --git a/audio/sfx/cry06_3.asm b/audio/sfx/cry06_3.asm
index 5d2994f1..d509053b 100644
--- a/audio/sfx/cry06_3.asm
+++ b/audio/sfx/cry06_3.asm
@@ -1,22 +1,22 @@
-SFX_Cry06_3_Ch1:
- dutycycle 250
- unknownsfx0x20 6, 131, 71, 2
- unknownsfx0x20 15, 98, 38, 2
- unknownsfx0x20 4, 82, 69, 2
- unknownsfx0x20 9, 99, 6, 2
- unknownsfx0x20 15, 130, 37, 2
- unknownsfx0x20 15, 66, 7, 2
+SFX_Cry06_3_Ch5:
+ duty_cycle_pattern 3, 3, 2, 2
+ square_note 6, 8, 3, 583
+ square_note 15, 6, 2, 550
+ square_note 4, 5, 2, 581
+ square_note 9, 6, 3, 518
+ square_note 15, 8, 2, 549
+ square_note 15, 4, 2, 519
-SFX_Cry06_3_Ch2:
- endchannel
+SFX_Cry06_3_Ch6:
+ sound_ret
-SFX_Cry06_3_Ch3:
- unknownnoise0x20 8, 212, 140
- unknownnoise0x20 4, 226, 156
- unknownnoise0x20 15, 198, 140
- unknownnoise0x20 8, 228, 172
- unknownnoise0x20 15, 215, 156
- unknownnoise0x20 15, 242, 172
- endchannel
+SFX_Cry06_3_Ch8:
+ noise_note 8, 13, 4, 140
+ noise_note 4, 14, 2, 156
+ noise_note 15, 12, 6, 140
+ noise_note 8, 14, 4, 172
+ noise_note 15, 13, 7, 156
+ noise_note 15, 15, 2, 172
+ sound_ret
diff --git a/audio/sfx/cry07_1.asm b/audio/sfx/cry07_1.asm
index e48a50a2..3733e746 100644
--- a/audio/sfx/cry07_1.asm
+++ b/audio/sfx/cry07_1.asm
@@ -1,21 +1,21 @@
-SFX_Cry07_1_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 243, 224, 6
- unknownsfx0x20 15, 228, 64, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Cry07_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1760
+ square_note 15, 14, 4, 1600
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_Cry07_1_Ch2:
- dutycycle 10
- unknownsfx0x20 3, 195, 131, 6
- unknownsfx0x20 14, 180, 2, 6
- unknownsfx0x20 8, 161, 1, 6
- endchannel
+SFX_Cry07_1_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 3, 12, 3, 1667
+ square_note 14, 11, 4, 1538
+ square_note 8, 10, 1, 1537
+ sound_ret
-SFX_Cry07_1_Ch3:
- unknownnoise0x20 4, 211, 92
- unknownnoise0x20 15, 230, 76
- unknownnoise0x20 8, 177, 92
- endchannel
+SFX_Cry07_1_Ch8:
+ noise_note 4, 13, 3, 92
+ noise_note 15, 14, 6, 76
+ noise_note 8, 11, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry07_2.asm b/audio/sfx/cry07_2.asm
index ab902a30..6a134397 100644
--- a/audio/sfx/cry07_2.asm
+++ b/audio/sfx/cry07_2.asm
@@ -1,21 +1,21 @@
-SFX_Cry07_2_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 243, 224, 6
- unknownsfx0x20 15, 228, 64, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Cry07_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1760
+ square_note 15, 14, 4, 1600
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_Cry07_2_Ch2:
- dutycycle 10
- unknownsfx0x20 3, 195, 131, 6
- unknownsfx0x20 14, 180, 2, 6
- unknownsfx0x20 8, 161, 1, 6
- endchannel
+SFX_Cry07_2_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 3, 12, 3, 1667
+ square_note 14, 11, 4, 1538
+ square_note 8, 10, 1, 1537
+ sound_ret
-SFX_Cry07_2_Ch3:
- unknownnoise0x20 4, 211, 92
- unknownnoise0x20 15, 230, 76
- unknownnoise0x20 8, 177, 92
- endchannel
+SFX_Cry07_2_Ch8:
+ noise_note 4, 13, 3, 92
+ noise_note 15, 14, 6, 76
+ noise_note 8, 11, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry07_3.asm b/audio/sfx/cry07_3.asm
index 40fad544..a8b60f38 100644
--- a/audio/sfx/cry07_3.asm
+++ b/audio/sfx/cry07_3.asm
@@ -1,21 +1,21 @@
-SFX_Cry07_3_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 243, 224, 6
- unknownsfx0x20 15, 228, 64, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Cry07_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1760
+ square_note 15, 14, 4, 1600
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_Cry07_3_Ch2:
- dutycycle 10
- unknownsfx0x20 3, 195, 131, 6
- unknownsfx0x20 14, 180, 2, 6
- unknownsfx0x20 8, 161, 1, 6
- endchannel
+SFX_Cry07_3_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 3, 12, 3, 1667
+ square_note 14, 11, 4, 1538
+ square_note 8, 10, 1, 1537
+ sound_ret
-SFX_Cry07_3_Ch3:
- unknownnoise0x20 4, 211, 92
- unknownnoise0x20 15, 230, 76
- unknownnoise0x20 8, 177, 92
- endchannel
+SFX_Cry07_3_Ch8:
+ noise_note 4, 13, 3, 92
+ noise_note 15, 14, 6, 76
+ noise_note 8, 11, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry08_1.asm b/audio/sfx/cry08_1.asm
index 6ec5ca3c..92f17fa8 100644
--- a/audio/sfx/cry08_1.asm
+++ b/audio/sfx/cry08_1.asm
@@ -1,23 +1,23 @@
-SFX_Cry08_1_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 246, 101, 5
- unknownsfx0x20 10, 228, 124, 5
- unknownsfx0x20 3, 194, 92, 5
- unknownsfx0x20 15, 178, 60, 5
- endchannel
+SFX_Cry08_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 6, 1381
+ square_note 10, 14, 4, 1404
+ square_note 3, 12, 2, 1372
+ square_note 15, 11, 2, 1340
+ sound_ret
-SFX_Cry08_1_Ch2:
- dutycycle 90
- unknownsfx0x20 14, 214, 3, 5
- unknownsfx0x20 9, 180, 27, 5
- unknownsfx0x20 4, 146, 250, 4
- unknownsfx0x20 15, 162, 219, 4
- endchannel
+SFX_Cry08_1_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 14, 13, 6, 1283
+ square_note 9, 11, 4, 1307
+ square_note 4, 9, 2, 1274
+ square_note 15, 10, 2, 1243
+ sound_ret
-SFX_Cry08_1_Ch3:
- unknownnoise0x20 12, 230, 76
- unknownnoise0x20 11, 215, 92
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Cry08_1_Ch8:
+ noise_note 12, 14, 6, 76
+ noise_note 11, 13, 7, 92
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry08_2.asm b/audio/sfx/cry08_2.asm
index 9c154b1c..53ac2891 100644
--- a/audio/sfx/cry08_2.asm
+++ b/audio/sfx/cry08_2.asm
@@ -1,23 +1,23 @@
-SFX_Cry08_2_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 246, 101, 5
- unknownsfx0x20 10, 228, 124, 5
- unknownsfx0x20 3, 194, 92, 5
- unknownsfx0x20 15, 178, 60, 5
- endchannel
+SFX_Cry08_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 6, 1381
+ square_note 10, 14, 4, 1404
+ square_note 3, 12, 2, 1372
+ square_note 15, 11, 2, 1340
+ sound_ret
-SFX_Cry08_2_Ch2:
- dutycycle 90
- unknownsfx0x20 14, 214, 3, 5
- unknownsfx0x20 9, 180, 27, 5
- unknownsfx0x20 4, 146, 250, 4
- unknownsfx0x20 15, 162, 219, 4
- endchannel
+SFX_Cry08_2_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 14, 13, 6, 1283
+ square_note 9, 11, 4, 1307
+ square_note 4, 9, 2, 1274
+ square_note 15, 10, 2, 1243
+ sound_ret
-SFX_Cry08_2_Ch3:
- unknownnoise0x20 12, 230, 76
- unknownnoise0x20 11, 215, 92
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Cry08_2_Ch8:
+ noise_note 12, 14, 6, 76
+ noise_note 11, 13, 7, 92
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry08_3.asm b/audio/sfx/cry08_3.asm
index 95fea40e..81bcf360 100644
--- a/audio/sfx/cry08_3.asm
+++ b/audio/sfx/cry08_3.asm
@@ -1,23 +1,23 @@
-SFX_Cry08_3_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 246, 101, 5
- unknownsfx0x20 10, 228, 124, 5
- unknownsfx0x20 3, 194, 92, 5
- unknownsfx0x20 15, 178, 60, 5
- endchannel
+SFX_Cry08_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 6, 1381
+ square_note 10, 14, 4, 1404
+ square_note 3, 12, 2, 1372
+ square_note 15, 11, 2, 1340
+ sound_ret
-SFX_Cry08_3_Ch2:
- dutycycle 90
- unknownsfx0x20 14, 214, 3, 5
- unknownsfx0x20 9, 180, 27, 5
- unknownsfx0x20 4, 146, 250, 4
- unknownsfx0x20 15, 162, 219, 4
- endchannel
+SFX_Cry08_3_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 14, 13, 6, 1283
+ square_note 9, 11, 4, 1307
+ square_note 4, 9, 2, 1274
+ square_note 15, 10, 2, 1243
+ sound_ret
-SFX_Cry08_3_Ch3:
- unknownnoise0x20 12, 230, 76
- unknownnoise0x20 11, 215, 92
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Cry08_3_Ch8:
+ noise_note 12, 14, 6, 76
+ noise_note 11, 13, 7, 92
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry09_1.asm b/audio/sfx/cry09_1.asm
index 46aae33c..f8c600bd 100644
--- a/audio/sfx/cry09_1.asm
+++ b/audio/sfx/cry09_1.asm
@@ -1,35 +1,35 @@
-SFX_Cry09_1_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 160, 7
- unknownsfx0x20 6, 230, 163, 7
- unknownsfx0x20 10, 244, 160, 7
- dutycycle 165
- unknownsfx0x20 10, 246, 216, 7
- unknownsfx0x20 4, 227, 215, 7
- unknownsfx0x20 15, 242, 216, 7
- endchannel
+SFX_Cry09_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1952
+ square_note 6, 14, 6, 1955
+ square_note 10, 15, 4, 1952
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 15, 6, 2008
+ square_note 4, 14, 3, 2007
+ square_note 15, 15, 2, 2008
+ sound_ret
-SFX_Cry09_1_Ch2:
- dutycycle 5
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 15, 167, 161, 6
- unknownsfx0x20 6, 134, 162, 6
- unknownsfx0x20 10, 116, 161, 6
- dutycycle 95
- unknownsfx0x20 10, 118, 214, 6
- unknownsfx0x20 4, 131, 217, 6
- unknownsfx0x20 15, 162, 215, 6
- endchannel
+SFX_Cry09_1_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 2, 0, 8, 0
+ square_note 15, 10, 7, 1697
+ square_note 6, 8, 6, 1698
+ square_note 10, 7, 4, 1697
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 10, 7, 6, 1750
+ square_note 4, 8, 3, 1753
+ square_note 15, 10, 2, 1751
+ sound_ret
-SFX_Cry09_1_Ch3:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 6, 197, 59
- unknownnoise0x20 6, 228, 61
- unknownnoise0x20 8, 182, 60
- unknownnoise0x20 6, 212, 61
- unknownnoise0x20 8, 193, 59
- endchannel
+SFX_Cry09_1_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 15, 13, 7, 60
+ noise_note 6, 12, 5, 59
+ noise_note 6, 14, 4, 61
+ noise_note 8, 11, 6, 60
+ noise_note 6, 13, 4, 61
+ noise_note 8, 12, 1, 59
+ sound_ret
diff --git a/audio/sfx/cry09_2.asm b/audio/sfx/cry09_2.asm
index 8ce97609..12965e07 100644
--- a/audio/sfx/cry09_2.asm
+++ b/audio/sfx/cry09_2.asm
@@ -1,35 +1,35 @@
-SFX_Cry09_2_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 160, 7
- unknownsfx0x20 6, 230, 163, 7
- unknownsfx0x20 10, 244, 160, 7
- dutycycle 165
- unknownsfx0x20 10, 246, 216, 7
- unknownsfx0x20 4, 227, 215, 7
- unknownsfx0x20 15, 242, 216, 7
- endchannel
+SFX_Cry09_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1952
+ square_note 6, 14, 6, 1955
+ square_note 10, 15, 4, 1952
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 15, 6, 2008
+ square_note 4, 14, 3, 2007
+ square_note 15, 15, 2, 2008
+ sound_ret
-SFX_Cry09_2_Ch2:
- dutycycle 5
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 15, 167, 161, 6
- unknownsfx0x20 6, 134, 162, 6
- unknownsfx0x20 10, 116, 161, 6
- dutycycle 95
- unknownsfx0x20 10, 118, 214, 6
- unknownsfx0x20 4, 131, 217, 6
- unknownsfx0x20 15, 162, 215, 6
- endchannel
+SFX_Cry09_2_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 2, 0, 8, 0
+ square_note 15, 10, 7, 1697
+ square_note 6, 8, 6, 1698
+ square_note 10, 7, 4, 1697
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 10, 7, 6, 1750
+ square_note 4, 8, 3, 1753
+ square_note 15, 10, 2, 1751
+ sound_ret
-SFX_Cry09_2_Ch3:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 6, 197, 59
- unknownnoise0x20 6, 228, 61
- unknownnoise0x20 8, 182, 60
- unknownnoise0x20 6, 212, 61
- unknownnoise0x20 8, 193, 59
- endchannel
+SFX_Cry09_2_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 15, 13, 7, 60
+ noise_note 6, 12, 5, 59
+ noise_note 6, 14, 4, 61
+ noise_note 8, 11, 6, 60
+ noise_note 6, 13, 4, 61
+ noise_note 8, 12, 1, 59
+ sound_ret
diff --git a/audio/sfx/cry09_3.asm b/audio/sfx/cry09_3.asm
index a6b40dde..2c85d750 100644
--- a/audio/sfx/cry09_3.asm
+++ b/audio/sfx/cry09_3.asm
@@ -1,35 +1,35 @@
-SFX_Cry09_3_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 160, 7
- unknownsfx0x20 6, 230, 163, 7
- unknownsfx0x20 10, 244, 160, 7
- dutycycle 165
- unknownsfx0x20 10, 246, 216, 7
- unknownsfx0x20 4, 227, 215, 7
- unknownsfx0x20 15, 242, 216, 7
- endchannel
+SFX_Cry09_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1952
+ square_note 6, 14, 6, 1955
+ square_note 10, 15, 4, 1952
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 15, 6, 2008
+ square_note 4, 14, 3, 2007
+ square_note 15, 15, 2, 2008
+ sound_ret
-SFX_Cry09_3_Ch2:
- dutycycle 5
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 15, 167, 161, 6
- unknownsfx0x20 6, 134, 162, 6
- unknownsfx0x20 10, 116, 161, 6
- dutycycle 95
- unknownsfx0x20 10, 118, 214, 6
- unknownsfx0x20 4, 131, 217, 6
- unknownsfx0x20 15, 162, 215, 6
- endchannel
+SFX_Cry09_3_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 2, 0, 8, 0
+ square_note 15, 10, 7, 1697
+ square_note 6, 8, 6, 1698
+ square_note 10, 7, 4, 1697
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 10, 7, 6, 1750
+ square_note 4, 8, 3, 1753
+ square_note 15, 10, 2, 1751
+ sound_ret
-SFX_Cry09_3_Ch3:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 6, 197, 59
- unknownnoise0x20 6, 228, 61
- unknownnoise0x20 8, 182, 60
- unknownnoise0x20 6, 212, 61
- unknownnoise0x20 8, 193, 59
- endchannel
+SFX_Cry09_3_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 15, 13, 7, 60
+ noise_note 6, 12, 5, 59
+ noise_note 6, 14, 4, 61
+ noise_note 8, 11, 6, 60
+ noise_note 6, 13, 4, 61
+ noise_note 8, 12, 1, 59
+ sound_ret
diff --git a/audio/sfx/cry0a_1.asm b/audio/sfx/cry0a_1.asm
index 4264e858..bcb71844 100644
--- a/audio/sfx/cry0a_1.asm
+++ b/audio/sfx/cry0a_1.asm
@@ -1,35 +1,35 @@
-SFX_Cry0A_1_Ch1:
- dutycycle 240
- unknownsfx0x20 8, 247, 224, 6
- unknownsfx0x20 6, 230, 229, 6
- unknownsfx0x20 3, 244, 224, 6
- unknownsfx0x20 3, 246, 208, 6
- unknownsfx0x20 3, 227, 192, 6
- unknownsfx0x20 4, 242, 176, 6
- unknownsfx0x20 15, 162, 200, 6
- endchannel
+SFX_Cry0A_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 15, 7, 1760
+ square_note 6, 14, 6, 1765
+ square_note 3, 15, 4, 1760
+ square_note 3, 15, 6, 1744
+ square_note 3, 14, 3, 1728
+ square_note 4, 15, 2, 1712
+ square_note 15, 10, 2, 1736
+ sound_ret
-SFX_Cry0A_1_Ch2:
- dutycycle 5
- unknownsfx0x20 3, 8, 0, 0
- unknownsfx0x20 8, 167, 161, 6
- unknownsfx0x20 6, 134, 163, 6
- unknownsfx0x20 3, 116, 161, 6
- unknownsfx0x20 3, 118, 145, 6
- unknownsfx0x20 3, 131, 130, 6
- unknownsfx0x20 4, 162, 113, 6
- unknownsfx0x20 15, 114, 137, 6
- endchannel
+SFX_Cry0A_1_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 3, 0, 8, 0
+ square_note 8, 10, 7, 1697
+ square_note 6, 8, 6, 1699
+ square_note 3, 7, 4, 1697
+ square_note 3, 7, 6, 1681
+ square_note 3, 8, 3, 1666
+ square_note 4, 10, 2, 1649
+ square_note 15, 7, 2, 1673
+ sound_ret
-SFX_Cry0A_1_Ch3:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 8, 215, 60
- unknownnoise0x20 5, 197, 59
- unknownnoise0x20 3, 212, 44
- unknownnoise0x20 2, 182, 60
- unknownnoise0x20 3, 164, 44
- unknownnoise0x20 8, 145, 60
- endchannel
+SFX_Cry0A_1_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 8, 13, 7, 60
+ noise_note 5, 12, 5, 59
+ noise_note 3, 13, 4, 44
+ noise_note 2, 11, 6, 60
+ noise_note 3, 10, 4, 44
+ noise_note 8, 9, 1, 60
+ sound_ret
diff --git a/audio/sfx/cry0a_2.asm b/audio/sfx/cry0a_2.asm
index 42a8e603..fb365e91 100644
--- a/audio/sfx/cry0a_2.asm
+++ b/audio/sfx/cry0a_2.asm
@@ -1,35 +1,35 @@
-SFX_Cry0A_2_Ch1:
- dutycycle 240
- unknownsfx0x20 8, 247, 224, 6
- unknownsfx0x20 6, 230, 229, 6
- unknownsfx0x20 3, 244, 224, 6
- unknownsfx0x20 3, 246, 208, 6
- unknownsfx0x20 3, 227, 192, 6
- unknownsfx0x20 4, 242, 176, 6
- unknownsfx0x20 15, 162, 200, 6
- endchannel
+SFX_Cry0A_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 15, 7, 1760
+ square_note 6, 14, 6, 1765
+ square_note 3, 15, 4, 1760
+ square_note 3, 15, 6, 1744
+ square_note 3, 14, 3, 1728
+ square_note 4, 15, 2, 1712
+ square_note 15, 10, 2, 1736
+ sound_ret
-SFX_Cry0A_2_Ch2:
- dutycycle 5
- unknownsfx0x20 3, 8, 0, 0
- unknownsfx0x20 8, 167, 161, 6
- unknownsfx0x20 6, 134, 163, 6
- unknownsfx0x20 3, 116, 161, 6
- unknownsfx0x20 3, 118, 145, 6
- unknownsfx0x20 3, 131, 130, 6
- unknownsfx0x20 4, 162, 113, 6
- unknownsfx0x20 15, 114, 137, 6
- endchannel
+SFX_Cry0A_2_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 3, 0, 8, 0
+ square_note 8, 10, 7, 1697
+ square_note 6, 8, 6, 1699
+ square_note 3, 7, 4, 1697
+ square_note 3, 7, 6, 1681
+ square_note 3, 8, 3, 1666
+ square_note 4, 10, 2, 1649
+ square_note 15, 7, 2, 1673
+ sound_ret
-SFX_Cry0A_2_Ch3:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 8, 215, 60
- unknownnoise0x20 5, 197, 59
- unknownnoise0x20 3, 212, 44
- unknownnoise0x20 2, 182, 60
- unknownnoise0x20 3, 164, 44
- unknownnoise0x20 8, 145, 60
- endchannel
+SFX_Cry0A_2_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 8, 13, 7, 60
+ noise_note 5, 12, 5, 59
+ noise_note 3, 13, 4, 44
+ noise_note 2, 11, 6, 60
+ noise_note 3, 10, 4, 44
+ noise_note 8, 9, 1, 60
+ sound_ret
diff --git a/audio/sfx/cry0a_3.asm b/audio/sfx/cry0a_3.asm
index f8576fa1..bf6dfcf1 100644
--- a/audio/sfx/cry0a_3.asm
+++ b/audio/sfx/cry0a_3.asm
@@ -1,35 +1,35 @@
-SFX_Cry0A_3_Ch1:
- dutycycle 240
- unknownsfx0x20 8, 247, 224, 6
- unknownsfx0x20 6, 230, 229, 6
- unknownsfx0x20 3, 244, 224, 6
- unknownsfx0x20 3, 246, 208, 6
- unknownsfx0x20 3, 227, 192, 6
- unknownsfx0x20 4, 242, 176, 6
- unknownsfx0x20 15, 162, 200, 6
- endchannel
+SFX_Cry0A_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 15, 7, 1760
+ square_note 6, 14, 6, 1765
+ square_note 3, 15, 4, 1760
+ square_note 3, 15, 6, 1744
+ square_note 3, 14, 3, 1728
+ square_note 4, 15, 2, 1712
+ square_note 15, 10, 2, 1736
+ sound_ret
-SFX_Cry0A_3_Ch2:
- dutycycle 5
- unknownsfx0x20 3, 8, 0, 0
- unknownsfx0x20 8, 167, 161, 6
- unknownsfx0x20 6, 134, 163, 6
- unknownsfx0x20 3, 116, 161, 6
- unknownsfx0x20 3, 118, 145, 6
- unknownsfx0x20 3, 131, 130, 6
- unknownsfx0x20 4, 162, 113, 6
- unknownsfx0x20 15, 114, 137, 6
- endchannel
+SFX_Cry0A_3_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 3, 0, 8, 0
+ square_note 8, 10, 7, 1697
+ square_note 6, 8, 6, 1699
+ square_note 3, 7, 4, 1697
+ square_note 3, 7, 6, 1681
+ square_note 3, 8, 3, 1666
+ square_note 4, 10, 2, 1649
+ square_note 15, 7, 2, 1673
+ sound_ret
-SFX_Cry0A_3_Ch3:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 8, 215, 60
- unknownnoise0x20 5, 197, 59
- unknownnoise0x20 3, 212, 44
- unknownnoise0x20 2, 182, 60
- unknownnoise0x20 3, 164, 44
- unknownnoise0x20 8, 145, 60
- endchannel
+SFX_Cry0A_3_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 8, 13, 7, 60
+ noise_note 5, 12, 5, 59
+ noise_note 3, 13, 4, 44
+ noise_note 2, 11, 6, 60
+ noise_note 3, 10, 4, 44
+ noise_note 8, 9, 1, 60
+ sound_ret
diff --git a/audio/sfx/cry0b_1.asm b/audio/sfx/cry0b_1.asm
index d0da6c2e..51e445ab 100644
--- a/audio/sfx/cry0b_1.asm
+++ b/audio/sfx/cry0b_1.asm
@@ -1,37 +1,37 @@
-SFX_Cry0B_1_Ch1:
- dutycycle 204
- unknownsfx0x20 4, 241, 0, 7
- unknownsfx0x20 4, 225, 128, 7
- unknownsfx0x20 4, 209, 64, 7
- unknownsfx0x20 4, 225, 64, 7
- unknownsfx0x20 4, 241, 128, 7
- unknownsfx0x20 4, 209, 0, 7
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 209, 130, 7
- unknownsfx0x20 4, 193, 66, 7
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Cry0B_1_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 1, 1792
+ square_note 4, 14, 1, 1920
+ square_note 4, 13, 1, 1856
+ square_note 4, 14, 1, 1856
+ square_note 4, 15, 1, 1920
+ square_note 4, 13, 1, 1792
+ square_note 4, 15, 1, 1793
+ square_note 4, 13, 1, 1922
+ square_note 4, 12, 1, 1858
+ square_note 8, 11, 1, 1857
+ sound_ret
-SFX_Cry0B_1_Ch2:
- dutycycle 68
- unknownsfx0x20 12, 8, 0, 0
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 225, 130, 7
- unknownsfx0x20 4, 209, 65, 7
- unknownsfx0x20 4, 225, 65, 7
- unknownsfx0x20 4, 241, 130, 7
- unknownsfx0x20 8, 209, 1, 7
- endchannel
+SFX_Cry0B_1_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 0, 8, 0
+ square_note 4, 15, 1, 1793
+ square_note 4, 14, 1, 1922
+ square_note 4, 13, 1, 1857
+ square_note 4, 14, 1, 1857
+ square_note 4, 15, 1, 1922
+ square_note 8, 13, 1, 1793
+ sound_ret
-SFX_Cry0B_1_Ch3:
- unknownnoise0x20 15, 8, 0
- unknownnoise0x20 4, 8, 0
- unknownnoise0x20 4, 209, 76
- unknownnoise0x20 4, 177, 44
- unknownnoise0x20 4, 209, 60
- unknownnoise0x20 4, 177, 60
- unknownnoise0x20 4, 193, 44
- unknownnoise0x20 8, 161, 76
- endchannel
+SFX_Cry0B_1_Ch8:
+ noise_note 15, 0, 8, 0
+ noise_note 4, 0, 8, 0
+ noise_note 4, 13, 1, 76
+ noise_note 4, 11, 1, 44
+ noise_note 4, 13, 1, 60
+ noise_note 4, 11, 1, 60
+ noise_note 4, 12, 1, 44
+ noise_note 8, 10, 1, 76
+ sound_ret
diff --git a/audio/sfx/cry0b_2.asm b/audio/sfx/cry0b_2.asm
index 0fe7840a..68cb0ba6 100644
--- a/audio/sfx/cry0b_2.asm
+++ b/audio/sfx/cry0b_2.asm
@@ -1,37 +1,37 @@
-SFX_Cry0B_2_Ch1:
- dutycycle 204
- unknownsfx0x20 4, 241, 0, 7
- unknownsfx0x20 4, 225, 128, 7
- unknownsfx0x20 4, 209, 64, 7
- unknownsfx0x20 4, 225, 64, 7
- unknownsfx0x20 4, 241, 128, 7
- unknownsfx0x20 4, 209, 0, 7
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 209, 130, 7
- unknownsfx0x20 4, 193, 66, 7
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Cry0B_2_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 1, 1792
+ square_note 4, 14, 1, 1920
+ square_note 4, 13, 1, 1856
+ square_note 4, 14, 1, 1856
+ square_note 4, 15, 1, 1920
+ square_note 4, 13, 1, 1792
+ square_note 4, 15, 1, 1793
+ square_note 4, 13, 1, 1922
+ square_note 4, 12, 1, 1858
+ square_note 8, 11, 1, 1857
+ sound_ret
-SFX_Cry0B_2_Ch2:
- dutycycle 68
- unknownsfx0x20 12, 8, 0, 0
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 225, 130, 7
- unknownsfx0x20 4, 209, 65, 7
- unknownsfx0x20 4, 225, 65, 7
- unknownsfx0x20 4, 241, 130, 7
- unknownsfx0x20 8, 209, 1, 7
- endchannel
+SFX_Cry0B_2_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 0, 8, 0
+ square_note 4, 15, 1, 1793
+ square_note 4, 14, 1, 1922
+ square_note 4, 13, 1, 1857
+ square_note 4, 14, 1, 1857
+ square_note 4, 15, 1, 1922
+ square_note 8, 13, 1, 1793
+ sound_ret
-SFX_Cry0B_2_Ch3:
- unknownnoise0x20 15, 8, 0
- unknownnoise0x20 4, 8, 0
- unknownnoise0x20 4, 209, 76
- unknownnoise0x20 4, 177, 44
- unknownnoise0x20 4, 209, 60
- unknownnoise0x20 4, 177, 60
- unknownnoise0x20 4, 193, 44
- unknownnoise0x20 8, 161, 76
- endchannel
+SFX_Cry0B_2_Ch8:
+ noise_note 15, 0, 8, 0
+ noise_note 4, 0, 8, 0
+ noise_note 4, 13, 1, 76
+ noise_note 4, 11, 1, 44
+ noise_note 4, 13, 1, 60
+ noise_note 4, 11, 1, 60
+ noise_note 4, 12, 1, 44
+ noise_note 8, 10, 1, 76
+ sound_ret
diff --git a/audio/sfx/cry0b_3.asm b/audio/sfx/cry0b_3.asm
index ff761b85..3328a8b6 100644
--- a/audio/sfx/cry0b_3.asm
+++ b/audio/sfx/cry0b_3.asm
@@ -1,37 +1,37 @@
-SFX_Cry0B_3_Ch1:
- dutycycle 204
- unknownsfx0x20 4, 241, 0, 7
- unknownsfx0x20 4, 225, 128, 7
- unknownsfx0x20 4, 209, 64, 7
- unknownsfx0x20 4, 225, 64, 7
- unknownsfx0x20 4, 241, 128, 7
- unknownsfx0x20 4, 209, 0, 7
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 209, 130, 7
- unknownsfx0x20 4, 193, 66, 7
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Cry0B_3_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 1, 1792
+ square_note 4, 14, 1, 1920
+ square_note 4, 13, 1, 1856
+ square_note 4, 14, 1, 1856
+ square_note 4, 15, 1, 1920
+ square_note 4, 13, 1, 1792
+ square_note 4, 15, 1, 1793
+ square_note 4, 13, 1, 1922
+ square_note 4, 12, 1, 1858
+ square_note 8, 11, 1, 1857
+ sound_ret
-SFX_Cry0B_3_Ch2:
- dutycycle 68
- unknownsfx0x20 12, 8, 0, 0
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 225, 130, 7
- unknownsfx0x20 4, 209, 65, 7
- unknownsfx0x20 4, 225, 65, 7
- unknownsfx0x20 4, 241, 130, 7
- unknownsfx0x20 8, 209, 1, 7
- endchannel
+SFX_Cry0B_3_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 0, 8, 0
+ square_note 4, 15, 1, 1793
+ square_note 4, 14, 1, 1922
+ square_note 4, 13, 1, 1857
+ square_note 4, 14, 1, 1857
+ square_note 4, 15, 1, 1922
+ square_note 8, 13, 1, 1793
+ sound_ret
-SFX_Cry0B_3_Ch3:
- unknownnoise0x20 15, 8, 0
- unknownnoise0x20 4, 8, 0
- unknownnoise0x20 4, 209, 76
- unknownnoise0x20 4, 177, 44
- unknownnoise0x20 4, 209, 60
- unknownnoise0x20 4, 177, 60
- unknownnoise0x20 4, 193, 44
- unknownnoise0x20 8, 161, 76
- endchannel
+SFX_Cry0B_3_Ch8:
+ noise_note 15, 0, 8, 0
+ noise_note 4, 0, 8, 0
+ noise_note 4, 13, 1, 76
+ noise_note 4, 11, 1, 44
+ noise_note 4, 13, 1, 60
+ noise_note 4, 11, 1, 60
+ noise_note 4, 12, 1, 44
+ noise_note 8, 10, 1, 76
+ sound_ret
diff --git a/audio/sfx/cry0c_1.asm b/audio/sfx/cry0c_1.asm
index 4ff72662..a59f9e8d 100644
--- a/audio/sfx/cry0c_1.asm
+++ b/audio/sfx/cry0c_1.asm
@@ -1,29 +1,29 @@
-SFX_Cry0C_1_Ch1:
- dutycycle 204
- unknownsfx0x20 8, 245, 0, 6
- unknownsfx0x20 2, 210, 56, 6
- unknownsfx0x20 2, 194, 48, 6
- unknownsfx0x20 2, 194, 40, 6
- unknownsfx0x20 2, 178, 32, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 2, 162, 24, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Cry0C_1_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 8, 15, 5, 1536
+ square_note 2, 13, 2, 1592
+ square_note 2, 12, 2, 1584
+ square_note 2, 12, 2, 1576
+ square_note 2, 11, 2, 1568
+ square_note 2, 11, 2, 1552
+ square_note 2, 10, 2, 1560
+ square_note 2, 11, 2, 1552
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_Cry0C_1_Ch2:
- dutycycle 68
- unknownsfx0x20 12, 195, 192, 5
- unknownsfx0x20 3, 177, 249, 5
- unknownsfx0x20 2, 161, 241, 5
- unknownsfx0x20 2, 161, 233, 5
- unknownsfx0x20 2, 145, 225, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 2, 129, 209, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 8, 145, 225, 5
+SFX_Cry0C_1_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 12, 3, 1472
+ square_note 3, 11, 1, 1529
+ square_note 2, 10, 1, 1521
+ square_note 2, 10, 1, 1513
+ square_note 2, 9, 1, 1505
+ square_note 2, 9, 1, 1497
+ square_note 2, 8, 1, 1489
+ square_note 2, 9, 1, 1497
+ square_note 8, 9, 1, 1505
-SFX_Cry0C_1_Ch3:
- endchannel
+SFX_Cry0C_1_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry0c_2.asm b/audio/sfx/cry0c_2.asm
index 8fb925da..5be195a9 100644
--- a/audio/sfx/cry0c_2.asm
+++ b/audio/sfx/cry0c_2.asm
@@ -1,29 +1,29 @@
-SFX_Cry0C_2_Ch1:
- dutycycle 204
- unknownsfx0x20 8, 245, 0, 6
- unknownsfx0x20 2, 210, 56, 6
- unknownsfx0x20 2, 194, 48, 6
- unknownsfx0x20 2, 194, 40, 6
- unknownsfx0x20 2, 178, 32, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 2, 162, 24, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Cry0C_2_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 8, 15, 5, 1536
+ square_note 2, 13, 2, 1592
+ square_note 2, 12, 2, 1584
+ square_note 2, 12, 2, 1576
+ square_note 2, 11, 2, 1568
+ square_note 2, 11, 2, 1552
+ square_note 2, 10, 2, 1560
+ square_note 2, 11, 2, 1552
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_Cry0C_2_Ch2:
- dutycycle 68
- unknownsfx0x20 12, 195, 192, 5
- unknownsfx0x20 3, 177, 249, 5
- unknownsfx0x20 2, 161, 241, 5
- unknownsfx0x20 2, 161, 233, 5
- unknownsfx0x20 2, 145, 225, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 2, 129, 209, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 8, 145, 225, 5
+SFX_Cry0C_2_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 12, 3, 1472
+ square_note 3, 11, 1, 1529
+ square_note 2, 10, 1, 1521
+ square_note 2, 10, 1, 1513
+ square_note 2, 9, 1, 1505
+ square_note 2, 9, 1, 1497
+ square_note 2, 8, 1, 1489
+ square_note 2, 9, 1, 1497
+ square_note 8, 9, 1, 1505
-SFX_Cry0C_2_Ch3:
- endchannel
+SFX_Cry0C_2_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry0c_3.asm b/audio/sfx/cry0c_3.asm
index 149b585d..f75f7a64 100644
--- a/audio/sfx/cry0c_3.asm
+++ b/audio/sfx/cry0c_3.asm
@@ -1,29 +1,29 @@
-SFX_Cry0C_3_Ch1:
- dutycycle 204
- unknownsfx0x20 8, 245, 0, 6
- unknownsfx0x20 2, 210, 56, 6
- unknownsfx0x20 2, 194, 48, 6
- unknownsfx0x20 2, 194, 40, 6
- unknownsfx0x20 2, 178, 32, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 2, 162, 24, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Cry0C_3_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 8, 15, 5, 1536
+ square_note 2, 13, 2, 1592
+ square_note 2, 12, 2, 1584
+ square_note 2, 12, 2, 1576
+ square_note 2, 11, 2, 1568
+ square_note 2, 11, 2, 1552
+ square_note 2, 10, 2, 1560
+ square_note 2, 11, 2, 1552
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_Cry0C_3_Ch2:
- dutycycle 68
- unknownsfx0x20 12, 195, 192, 5
- unknownsfx0x20 3, 177, 249, 5
- unknownsfx0x20 2, 161, 241, 5
- unknownsfx0x20 2, 161, 233, 5
- unknownsfx0x20 2, 145, 225, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 2, 129, 209, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 8, 145, 225, 5
+SFX_Cry0C_3_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 12, 3, 1472
+ square_note 3, 11, 1, 1529
+ square_note 2, 10, 1, 1521
+ square_note 2, 10, 1, 1513
+ square_note 2, 9, 1, 1505
+ square_note 2, 9, 1, 1497
+ square_note 2, 8, 1, 1489
+ square_note 2, 9, 1, 1497
+ square_note 8, 9, 1, 1505
-SFX_Cry0C_3_Ch3:
- endchannel
+SFX_Cry0C_3_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry0d_1.asm b/audio/sfx/cry0d_1.asm
index dccccb4e..3bd1c4e5 100644
--- a/audio/sfx/cry0d_1.asm
+++ b/audio/sfx/cry0d_1.asm
@@ -1,40 +1,40 @@
-SFX_Cry0D_1_Ch1:
- dutycycle 136
- unknownsfx0x20 5, 242, 80, 6
- unknownsfx0x20 9, 209, 96, 6
- unknownsfx0x20 5, 226, 18, 6
- unknownsfx0x20 9, 193, 34, 6
- unknownsfx0x20 5, 242, 16, 6
- unknownsfx0x20 6, 209, 32, 6
- loopchannel 2, SFX_Cry0D_1_Ch1
- endchannel
+SFX_Cry0D_1_Ch5:
+ duty_cycle_pattern 2, 0, 2, 0
+ square_note 5, 15, 2, 1616
+ square_note 9, 13, 1, 1632
+ square_note 5, 14, 2, 1554
+ square_note 9, 12, 1, 1570
+ square_note 5, 15, 2, 1552
+ square_note 6, 13, 1, 1568
+ sound_loop 2, SFX_Cry0D_1_Ch5
+ sound_ret
-SFX_Cry0D_1_Ch2:
- dutycycle 64
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 5, 242, 81, 6
- unknownsfx0x20 9, 209, 97, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 12, 209, 33, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 4, 209, 33, 6
- endchannel
+SFX_Cry0D_1_Ch6:
+ duty_cycle_pattern 1, 0, 0, 0
+ square_note 4, 0, 8, 0
+ square_note 5, 15, 2, 1617
+ square_note 9, 13, 1, 1633
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 12, 13, 1, 1569
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 4, 13, 1, 1569
+ sound_ret
-SFX_Cry0D_1_Ch3:
- unknownnoise0x20 6, 210, 28
- unknownnoise0x20 9, 177, 44
- unknownnoise0x20 8, 194, 44
- unknownnoise0x20 9, 177, 60
- unknownnoise0x20 6, 194, 44
- unknownnoise0x20 9, 162, 60
- unknownnoise0x20 7, 194, 44
- unknownnoise0x20 5, 161, 60
- unknownnoise0x20 9, 194, 44
- unknownnoise0x20 4, 161, 60
- endchannel
+SFX_Cry0D_1_Ch8:
+ noise_note 6, 13, 2, 28
+ noise_note 9, 11, 1, 44
+ noise_note 8, 12, 2, 44
+ noise_note 9, 11, 1, 60
+ noise_note 6, 12, 2, 44
+ noise_note 9, 10, 2, 60
+ noise_note 7, 12, 2, 44
+ noise_note 5, 10, 1, 60
+ noise_note 9, 12, 2, 44
+ noise_note 4, 10, 1, 60
+ sound_ret
diff --git a/audio/sfx/cry0d_2.asm b/audio/sfx/cry0d_2.asm
index 718364dd..1c57d5dc 100644
--- a/audio/sfx/cry0d_2.asm
+++ b/audio/sfx/cry0d_2.asm
@@ -1,40 +1,40 @@
-SFX_Cry0D_2_Ch1:
- dutycycle 136
- unknownsfx0x20 5, 242, 80, 6
- unknownsfx0x20 9, 209, 96, 6
- unknownsfx0x20 5, 226, 18, 6
- unknownsfx0x20 9, 193, 34, 6
- unknownsfx0x20 5, 242, 16, 6
- unknownsfx0x20 6, 209, 32, 6
- loopchannel 2, SFX_Cry0D_2_Ch1
- endchannel
+SFX_Cry0D_2_Ch5:
+ duty_cycle_pattern 2, 0, 2, 0
+ square_note 5, 15, 2, 1616
+ square_note 9, 13, 1, 1632
+ square_note 5, 14, 2, 1554
+ square_note 9, 12, 1, 1570
+ square_note 5, 15, 2, 1552
+ square_note 6, 13, 1, 1568
+ sound_loop 2, SFX_Cry0D_2_Ch5
+ sound_ret
-SFX_Cry0D_2_Ch2:
- dutycycle 64
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 5, 242, 81, 6
- unknownsfx0x20 9, 209, 97, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 12, 209, 33, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 4, 209, 33, 6
- endchannel
+SFX_Cry0D_2_Ch6:
+ duty_cycle_pattern 1, 0, 0, 0
+ square_note 4, 0, 8, 0
+ square_note 5, 15, 2, 1617
+ square_note 9, 13, 1, 1633
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 12, 13, 1, 1569
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 4, 13, 1, 1569
+ sound_ret
-SFX_Cry0D_2_Ch3:
- unknownnoise0x20 6, 210, 28
- unknownnoise0x20 9, 177, 44
- unknownnoise0x20 8, 194, 44
- unknownnoise0x20 9, 177, 60
- unknownnoise0x20 6, 194, 44
- unknownnoise0x20 9, 162, 60
- unknownnoise0x20 7, 194, 44
- unknownnoise0x20 5, 161, 60
- unknownnoise0x20 9, 194, 44
- unknownnoise0x20 4, 161, 60
- endchannel
+SFX_Cry0D_2_Ch8:
+ noise_note 6, 13, 2, 28
+ noise_note 9, 11, 1, 44
+ noise_note 8, 12, 2, 44
+ noise_note 9, 11, 1, 60
+ noise_note 6, 12, 2, 44
+ noise_note 9, 10, 2, 60
+ noise_note 7, 12, 2, 44
+ noise_note 5, 10, 1, 60
+ noise_note 9, 12, 2, 44
+ noise_note 4, 10, 1, 60
+ sound_ret
diff --git a/audio/sfx/cry0d_3.asm b/audio/sfx/cry0d_3.asm
index ce26e7e5..be354add 100644
--- a/audio/sfx/cry0d_3.asm
+++ b/audio/sfx/cry0d_3.asm
@@ -1,40 +1,40 @@
-SFX_Cry0D_3_Ch1:
- dutycycle 136
- unknownsfx0x20 5, 242, 80, 6
- unknownsfx0x20 9, 209, 96, 6
- unknownsfx0x20 5, 226, 18, 6
- unknownsfx0x20 9, 193, 34, 6
- unknownsfx0x20 5, 242, 16, 6
- unknownsfx0x20 6, 209, 32, 6
- loopchannel 2, SFX_Cry0D_3_Ch1
- endchannel
+SFX_Cry0D_3_Ch5:
+ duty_cycle_pattern 2, 0, 2, 0
+ square_note 5, 15, 2, 1616
+ square_note 9, 13, 1, 1632
+ square_note 5, 14, 2, 1554
+ square_note 9, 12, 1, 1570
+ square_note 5, 15, 2, 1552
+ square_note 6, 13, 1, 1568
+ sound_loop 2, SFX_Cry0D_3_Ch5
+ sound_ret
-SFX_Cry0D_3_Ch2:
- dutycycle 64
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 5, 242, 81, 6
- unknownsfx0x20 9, 209, 97, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 12, 209, 33, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 4, 209, 33, 6
- endchannel
+SFX_Cry0D_3_Ch6:
+ duty_cycle_pattern 1, 0, 0, 0
+ square_note 4, 0, 8, 0
+ square_note 5, 15, 2, 1617
+ square_note 9, 13, 1, 1633
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 12, 13, 1, 1569
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 4, 13, 1, 1569
+ sound_ret
-SFX_Cry0D_3_Ch3:
- unknownnoise0x20 6, 210, 28
- unknownnoise0x20 9, 177, 44
- unknownnoise0x20 8, 194, 44
- unknownnoise0x20 9, 177, 60
- unknownnoise0x20 6, 194, 44
- unknownnoise0x20 9, 162, 60
- unknownnoise0x20 7, 194, 44
- unknownnoise0x20 5, 161, 60
- unknownnoise0x20 9, 194, 44
- unknownnoise0x20 4, 161, 60
- endchannel
+SFX_Cry0D_3_Ch8:
+ noise_note 6, 13, 2, 28
+ noise_note 9, 11, 1, 44
+ noise_note 8, 12, 2, 44
+ noise_note 9, 11, 1, 60
+ noise_note 6, 12, 2, 44
+ noise_note 9, 10, 2, 60
+ noise_note 7, 12, 2, 44
+ noise_note 5, 10, 1, 60
+ noise_note 9, 12, 2, 44
+ noise_note 4, 10, 1, 60
+ sound_ret
diff --git a/audio/sfx/cry0e_1.asm b/audio/sfx/cry0e_1.asm
index c30aaf20..183280e2 100644
--- a/audio/sfx/cry0e_1.asm
+++ b/audio/sfx/cry0e_1.asm
@@ -1,23 +1,23 @@
-SFX_Cry0E_1_Ch1:
- dutycycle 165
- unknownsfx0x20 4, 225, 0, 7
- unknownsfx0x20 4, 242, 128, 7
- unknownsfx0x20 2, 146, 64, 7
- unknownsfx0x20 8, 225, 0, 6
- endchannel
+SFX_Cry0E_1_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 4, 14, 1, 1792
+ square_note 4, 15, 2, 1920
+ square_note 2, 9, 2, 1856
+ square_note 8, 14, 1, 1536
+ sound_ret
-SFX_Cry0E_1_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 177, 225, 6
- unknownsfx0x20 3, 194, 225, 6
- unknownsfx0x20 3, 98, 129, 6
- unknownsfx0x20 8, 177, 225, 5
- endchannel
+SFX_Cry0E_1_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 11, 1, 1761
+ square_note 3, 12, 2, 1761
+ square_note 3, 6, 2, 1665
+ square_note 8, 11, 1, 1505
+ sound_ret
-SFX_Cry0E_1_Ch3:
- unknownnoise0x20 2, 97, 50
- unknownnoise0x20 2, 97, 33
- unknownnoise0x20 8, 97, 17
- endchannel
+SFX_Cry0E_1_Ch8:
+ noise_note 2, 6, 1, 50
+ noise_note 2, 6, 1, 33
+ noise_note 8, 6, 1, 17
+ sound_ret
diff --git a/audio/sfx/cry0e_2.asm b/audio/sfx/cry0e_2.asm
index 194fb04b..905adbb3 100644
--- a/audio/sfx/cry0e_2.asm
+++ b/audio/sfx/cry0e_2.asm
@@ -1,23 +1,23 @@
-SFX_Cry0E_2_Ch1:
- dutycycle 165
- unknownsfx0x20 4, 225, 0, 7
- unknownsfx0x20 4, 242, 128, 7
- unknownsfx0x20 2, 146, 64, 7
- unknownsfx0x20 8, 225, 0, 6
- endchannel
+SFX_Cry0E_2_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 4, 14, 1, 1792
+ square_note 4, 15, 2, 1920
+ square_note 2, 9, 2, 1856
+ square_note 8, 14, 1, 1536
+ sound_ret
-SFX_Cry0E_2_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 177, 225, 6
- unknownsfx0x20 3, 194, 225, 6
- unknownsfx0x20 3, 98, 129, 6
- unknownsfx0x20 8, 177, 225, 5
- endchannel
+SFX_Cry0E_2_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 11, 1, 1761
+ square_note 3, 12, 2, 1761
+ square_note 3, 6, 2, 1665
+ square_note 8, 11, 1, 1505
+ sound_ret
-SFX_Cry0E_2_Ch3:
- unknownnoise0x20 2, 97, 50
- unknownnoise0x20 2, 97, 33
- unknownnoise0x20 8, 97, 17
- endchannel
+SFX_Cry0E_2_Ch8:
+ noise_note 2, 6, 1, 50
+ noise_note 2, 6, 1, 33
+ noise_note 8, 6, 1, 17
+ sound_ret
diff --git a/audio/sfx/cry0e_3.asm b/audio/sfx/cry0e_3.asm
index 062e8970..a17dc577 100644
--- a/audio/sfx/cry0e_3.asm
+++ b/audio/sfx/cry0e_3.asm
@@ -1,23 +1,23 @@
-SFX_Cry0E_3_Ch1:
- dutycycle 165
- unknownsfx0x20 4, 225, 0, 7
- unknownsfx0x20 4, 242, 128, 7
- unknownsfx0x20 2, 146, 64, 7
- unknownsfx0x20 8, 225, 0, 6
- endchannel
+SFX_Cry0E_3_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 4, 14, 1, 1792
+ square_note 4, 15, 2, 1920
+ square_note 2, 9, 2, 1856
+ square_note 8, 14, 1, 1536
+ sound_ret
-SFX_Cry0E_3_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 177, 225, 6
- unknownsfx0x20 3, 194, 225, 6
- unknownsfx0x20 3, 98, 129, 6
- unknownsfx0x20 8, 177, 225, 5
- endchannel
+SFX_Cry0E_3_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 11, 1, 1761
+ square_note 3, 12, 2, 1761
+ square_note 3, 6, 2, 1665
+ square_note 8, 11, 1, 1505
+ sound_ret
-SFX_Cry0E_3_Ch3:
- unknownnoise0x20 2, 97, 50
- unknownnoise0x20 2, 97, 33
- unknownnoise0x20 8, 97, 17
- endchannel
+SFX_Cry0E_3_Ch8:
+ noise_note 2, 6, 1, 50
+ noise_note 2, 6, 1, 33
+ noise_note 8, 6, 1, 17
+ sound_ret
diff --git a/audio/sfx/cry0f_1.asm b/audio/sfx/cry0f_1.asm
index 1646d4b5..2cf79d6d 100644
--- a/audio/sfx/cry0f_1.asm
+++ b/audio/sfx/cry0f_1.asm
@@ -1,29 +1,29 @@
-SFX_Cry0F_1_Ch1:
- dutycycle 241
- unknownsfx0x20 4, 247, 192, 7
- unknownsfx0x20 12, 230, 194, 7
- unknownsfx0x20 6, 181, 128, 6
- unknownsfx0x20 4, 196, 112, 6
- unknownsfx0x20 4, 181, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Cry0F_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 1
+ square_note 4, 15, 7, 1984
+ square_note 12, 14, 6, 1986
+ square_note 6, 11, 5, 1664
+ square_note 4, 12, 4, 1648
+ square_note 4, 11, 5, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_Cry0F_1_Ch2:
- dutycycle 204
- unknownsfx0x20 3, 199, 129, 7
- unknownsfx0x20 12, 182, 128, 7
- unknownsfx0x20 6, 165, 65, 6
- unknownsfx0x20 4, 196, 50, 6
- unknownsfx0x20 6, 181, 33, 6
- unknownsfx0x20 8, 161, 2, 6
- endchannel
+SFX_Cry0F_1_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 12, 7, 1921
+ square_note 12, 11, 6, 1920
+ square_note 6, 10, 5, 1601
+ square_note 4, 12, 4, 1586
+ square_note 6, 11, 5, 1569
+ square_note 8, 10, 1, 1538
+ sound_ret
-SFX_Cry0F_1_Ch3:
- unknownnoise0x20 3, 228, 60
- unknownnoise0x20 12, 214, 44
- unknownnoise0x20 4, 228, 60
- unknownnoise0x20 8, 183, 92
- unknownnoise0x20 15, 194, 93
- endchannel
+SFX_Cry0F_1_Ch8:
+ noise_note 3, 14, 4, 60
+ noise_note 12, 13, 6, 44
+ noise_note 4, 14, 4, 60
+ noise_note 8, 11, 7, 92
+ noise_note 15, 12, 2, 93
+ sound_ret
diff --git a/audio/sfx/cry0f_2.asm b/audio/sfx/cry0f_2.asm
index 6058e7cc..39f70bfe 100644
--- a/audio/sfx/cry0f_2.asm
+++ b/audio/sfx/cry0f_2.asm
@@ -1,29 +1,29 @@
-SFX_Cry0F_2_Ch1:
- dutycycle 241
- unknownsfx0x20 4, 247, 192, 7
- unknownsfx0x20 12, 230, 194, 7
- unknownsfx0x20 6, 181, 128, 6
- unknownsfx0x20 4, 196, 112, 6
- unknownsfx0x20 4, 181, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Cry0F_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 1
+ square_note 4, 15, 7, 1984
+ square_note 12, 14, 6, 1986
+ square_note 6, 11, 5, 1664
+ square_note 4, 12, 4, 1648
+ square_note 4, 11, 5, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_Cry0F_2_Ch2:
- dutycycle 204
- unknownsfx0x20 3, 199, 129, 7
- unknownsfx0x20 12, 182, 128, 7
- unknownsfx0x20 6, 165, 65, 6
- unknownsfx0x20 4, 196, 50, 6
- unknownsfx0x20 6, 181, 33, 6
- unknownsfx0x20 8, 161, 2, 6
- endchannel
+SFX_Cry0F_2_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 12, 7, 1921
+ square_note 12, 11, 6, 1920
+ square_note 6, 10, 5, 1601
+ square_note 4, 12, 4, 1586
+ square_note 6, 11, 5, 1569
+ square_note 8, 10, 1, 1538
+ sound_ret
-SFX_Cry0F_2_Ch3:
- unknownnoise0x20 3, 228, 60
- unknownnoise0x20 12, 214, 44
- unknownnoise0x20 4, 228, 60
- unknownnoise0x20 8, 183, 92
- unknownnoise0x20 15, 194, 93
- endchannel
+SFX_Cry0F_2_Ch8:
+ noise_note 3, 14, 4, 60
+ noise_note 12, 13, 6, 44
+ noise_note 4, 14, 4, 60
+ noise_note 8, 11, 7, 92
+ noise_note 15, 12, 2, 93
+ sound_ret
diff --git a/audio/sfx/cry0f_3.asm b/audio/sfx/cry0f_3.asm
index 113f5ed1..f96df482 100644
--- a/audio/sfx/cry0f_3.asm
+++ b/audio/sfx/cry0f_3.asm
@@ -1,29 +1,29 @@
-SFX_Cry0F_3_Ch1:
- dutycycle 241
- unknownsfx0x20 4, 247, 192, 7
- unknownsfx0x20 12, 230, 194, 7
- unknownsfx0x20 6, 181, 128, 6
- unknownsfx0x20 4, 196, 112, 6
- unknownsfx0x20 4, 181, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Cry0F_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 1
+ square_note 4, 15, 7, 1984
+ square_note 12, 14, 6, 1986
+ square_note 6, 11, 5, 1664
+ square_note 4, 12, 4, 1648
+ square_note 4, 11, 5, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_Cry0F_3_Ch2:
- dutycycle 204
- unknownsfx0x20 3, 199, 129, 7
- unknownsfx0x20 12, 182, 128, 7
- unknownsfx0x20 6, 165, 65, 6
- unknownsfx0x20 4, 196, 50, 6
- unknownsfx0x20 6, 181, 33, 6
- unknownsfx0x20 8, 161, 2, 6
- endchannel
+SFX_Cry0F_3_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 12, 7, 1921
+ square_note 12, 11, 6, 1920
+ square_note 6, 10, 5, 1601
+ square_note 4, 12, 4, 1586
+ square_note 6, 11, 5, 1569
+ square_note 8, 10, 1, 1538
+ sound_ret
-SFX_Cry0F_3_Ch3:
- unknownnoise0x20 3, 228, 60
- unknownnoise0x20 12, 214, 44
- unknownnoise0x20 4, 228, 60
- unknownnoise0x20 8, 183, 92
- unknownnoise0x20 15, 194, 93
- endchannel
+SFX_Cry0F_3_Ch8:
+ noise_note 3, 14, 4, 60
+ noise_note 12, 13, 6, 44
+ noise_note 4, 14, 4, 60
+ noise_note 8, 11, 7, 92
+ noise_note 15, 12, 2, 93
+ sound_ret
diff --git a/audio/sfx/cry10_1.asm b/audio/sfx/cry10_1.asm
index 5199b973..dc8d2b71 100644
--- a/audio/sfx/cry10_1.asm
+++ b/audio/sfx/cry10_1.asm
@@ -1,31 +1,31 @@
-SFX_Cry10_1_Ch1:
- dutycycle 201
- unknownsfx0x20 8, 247, 128, 6
- unknownsfx0x20 2, 247, 96, 6
- unknownsfx0x20 1, 231, 64, 6
- unknownsfx0x20 1, 231, 32, 6
- unknownsfx0x20 15, 209, 0, 6
- unknownsfx0x20 4, 199, 64, 7
- unknownsfx0x20 4, 167, 48, 7
- unknownsfx0x20 15, 145, 32, 7
- endchannel
+SFX_Cry10_1_Ch5:
+ duty_cycle_pattern 3, 0, 2, 1
+ square_note 8, 15, 7, 1664
+ square_note 2, 15, 7, 1632
+ square_note 1, 14, 7, 1600
+ square_note 1, 14, 7, 1568
+ square_note 15, 13, 1, 1536
+ square_note 4, 12, 7, 1856
+ square_note 4, 10, 7, 1840
+ square_note 15, 9, 1, 1824
+ sound_ret
-SFX_Cry10_1_Ch2:
- dutycycle 121
- unknownsfx0x20 10, 231, 130, 6
- unknownsfx0x20 2, 231, 98, 6
- unknownsfx0x20 1, 215, 66, 6
- unknownsfx0x20 1, 215, 34, 6
- unknownsfx0x20 15, 193, 2, 6
- unknownsfx0x20 4, 183, 66, 7
- unknownsfx0x20 2, 151, 50, 7
- unknownsfx0x20 15, 129, 34, 7
- endchannel
+SFX_Cry10_1_Ch6:
+ duty_cycle_pattern 1, 3, 2, 1
+ square_note 10, 14, 7, 1666
+ square_note 2, 14, 7, 1634
+ square_note 1, 13, 7, 1602
+ square_note 1, 13, 7, 1570
+ square_note 15, 12, 1, 1538
+ square_note 4, 11, 7, 1858
+ square_note 2, 9, 7, 1842
+ square_note 15, 8, 1, 1826
+ sound_ret
-SFX_Cry10_1_Ch3:
- unknownnoise0x20 4, 116, 33
- unknownnoise0x20 4, 116, 16
- unknownnoise0x20 4, 113, 32
- endchannel
+SFX_Cry10_1_Ch8:
+ noise_note 4, 7, 4, 33
+ noise_note 4, 7, 4, 16
+ noise_note 4, 7, 1, 32
+ sound_ret
diff --git a/audio/sfx/cry10_2.asm b/audio/sfx/cry10_2.asm
index 789c61b1..f026f7c1 100644
--- a/audio/sfx/cry10_2.asm
+++ b/audio/sfx/cry10_2.asm
@@ -1,31 +1,31 @@
-SFX_Cry10_2_Ch1:
- dutycycle 201
- unknownsfx0x20 8, 247, 128, 6
- unknownsfx0x20 2, 247, 96, 6
- unknownsfx0x20 1, 231, 64, 6
- unknownsfx0x20 1, 231, 32, 6
- unknownsfx0x20 15, 209, 0, 6
- unknownsfx0x20 4, 199, 64, 7
- unknownsfx0x20 4, 167, 48, 7
- unknownsfx0x20 15, 145, 32, 7
- endchannel
+SFX_Cry10_2_Ch5:
+ duty_cycle_pattern 3, 0, 2, 1
+ square_note 8, 15, 7, 1664
+ square_note 2, 15, 7, 1632
+ square_note 1, 14, 7, 1600
+ square_note 1, 14, 7, 1568
+ square_note 15, 13, 1, 1536
+ square_note 4, 12, 7, 1856
+ square_note 4, 10, 7, 1840
+ square_note 15, 9, 1, 1824
+ sound_ret
-SFX_Cry10_2_Ch2:
- dutycycle 121
- unknownsfx0x20 10, 231, 130, 6
- unknownsfx0x20 2, 231, 98, 6
- unknownsfx0x20 1, 215, 66, 6
- unknownsfx0x20 1, 215, 34, 6
- unknownsfx0x20 15, 193, 2, 6
- unknownsfx0x20 4, 183, 66, 7
- unknownsfx0x20 2, 151, 50, 7
- unknownsfx0x20 15, 129, 34, 7
- endchannel
+SFX_Cry10_2_Ch6:
+ duty_cycle_pattern 1, 3, 2, 1
+ square_note 10, 14, 7, 1666
+ square_note 2, 14, 7, 1634
+ square_note 1, 13, 7, 1602
+ square_note 1, 13, 7, 1570
+ square_note 15, 12, 1, 1538
+ square_note 4, 11, 7, 1858
+ square_note 2, 9, 7, 1842
+ square_note 15, 8, 1, 1826
+ sound_ret
-SFX_Cry10_2_Ch3:
- unknownnoise0x20 4, 116, 33
- unknownnoise0x20 4, 116, 16
- unknownnoise0x20 4, 113, 32
- endchannel
+SFX_Cry10_2_Ch8:
+ noise_note 4, 7, 4, 33
+ noise_note 4, 7, 4, 16
+ noise_note 4, 7, 1, 32
+ sound_ret
diff --git a/audio/sfx/cry10_3.asm b/audio/sfx/cry10_3.asm
index 83980fc7..4b494b60 100644
--- a/audio/sfx/cry10_3.asm
+++ b/audio/sfx/cry10_3.asm
@@ -1,31 +1,31 @@
-SFX_Cry10_3_Ch1:
- dutycycle 201
- unknownsfx0x20 8, 247, 128, 6
- unknownsfx0x20 2, 247, 96, 6
- unknownsfx0x20 1, 231, 64, 6
- unknownsfx0x20 1, 231, 32, 6
- unknownsfx0x20 15, 209, 0, 6
- unknownsfx0x20 4, 199, 64, 7
- unknownsfx0x20 4, 167, 48, 7
- unknownsfx0x20 15, 145, 32, 7
- endchannel
+SFX_Cry10_3_Ch5:
+ duty_cycle_pattern 3, 0, 2, 1
+ square_note 8, 15, 7, 1664
+ square_note 2, 15, 7, 1632
+ square_note 1, 14, 7, 1600
+ square_note 1, 14, 7, 1568
+ square_note 15, 13, 1, 1536
+ square_note 4, 12, 7, 1856
+ square_note 4, 10, 7, 1840
+ square_note 15, 9, 1, 1824
+ sound_ret
-SFX_Cry10_3_Ch2:
- dutycycle 121
- unknownsfx0x20 10, 231, 130, 6
- unknownsfx0x20 2, 231, 98, 6
- unknownsfx0x20 1, 215, 66, 6
- unknownsfx0x20 1, 215, 34, 6
- unknownsfx0x20 15, 193, 2, 6
- unknownsfx0x20 4, 183, 66, 7
- unknownsfx0x20 2, 151, 50, 7
- unknownsfx0x20 15, 129, 34, 7
- endchannel
+SFX_Cry10_3_Ch6:
+ duty_cycle_pattern 1, 3, 2, 1
+ square_note 10, 14, 7, 1666
+ square_note 2, 14, 7, 1634
+ square_note 1, 13, 7, 1602
+ square_note 1, 13, 7, 1570
+ square_note 15, 12, 1, 1538
+ square_note 4, 11, 7, 1858
+ square_note 2, 9, 7, 1842
+ square_note 15, 8, 1, 1826
+ sound_ret
-SFX_Cry10_3_Ch3:
- unknownnoise0x20 4, 116, 33
- unknownnoise0x20 4, 116, 16
- unknownnoise0x20 4, 113, 32
- endchannel
+SFX_Cry10_3_Ch8:
+ noise_note 4, 7, 4, 33
+ noise_note 4, 7, 4, 16
+ noise_note 4, 7, 1, 32
+ sound_ret
diff --git a/audio/sfx/cry11_1.asm b/audio/sfx/cry11_1.asm
index d7e0b0f9..09fa8123 100644
--- a/audio/sfx/cry11_1.asm
+++ b/audio/sfx/cry11_1.asm
@@ -1,34 +1,34 @@
-SFX_Cry11_1_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 160, 7
- unknownsfx0x20 8, 230, 164, 7
- unknownsfx0x20 4, 214, 160, 7
- unknownsfx0x20 15, 211, 32, 7
- unknownsfx0x20 8, 195, 35, 7
- unknownsfx0x20 2, 194, 40, 7
- unknownsfx0x20 8, 177, 48, 7
- endchannel
+SFX_Cry11_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1952
+ square_note 8, 14, 6, 1956
+ square_note 4, 13, 6, 1952
+ square_note 15, 13, 3, 1824
+ square_note 8, 12, 3, 1827
+ square_note 2, 12, 2, 1832
+ square_note 8, 11, 1, 1840
+ sound_ret
-SFX_Cry11_1_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 6, 167, 65, 7
- unknownsfx0x20 8, 134, 67, 7
- unknownsfx0x20 4, 118, 65, 7
- unknownsfx0x20 13, 131, 194, 6
- unknownsfx0x20 7, 115, 193, 6
- unknownsfx0x20 3, 130, 204, 6
- unknownsfx0x20 8, 113, 216, 6
- endchannel
+SFX_Cry11_1_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 0, 8, 0
+ square_note 6, 10, 7, 1857
+ square_note 8, 8, 6, 1859
+ square_note 4, 7, 6, 1857
+ square_note 13, 8, 3, 1730
+ square_note 7, 7, 3, 1729
+ square_note 3, 8, 2, 1740
+ square_note 8, 7, 1, 1752
+ sound_ret
-SFX_Cry11_1_Ch3:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 230, 58
- unknownnoise0x20 4, 215, 58
- unknownnoise0x20 6, 214, 44
- unknownnoise0x20 8, 229, 60
- unknownnoise0x20 12, 210, 61
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry11_1_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 6, 58
+ noise_note 4, 13, 7, 58
+ noise_note 6, 13, 6, 44
+ noise_note 8, 14, 5, 60
+ noise_note 12, 13, 2, 61
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry11_2.asm b/audio/sfx/cry11_2.asm
index f46580eb..b51b01c1 100644
--- a/audio/sfx/cry11_2.asm
+++ b/audio/sfx/cry11_2.asm
@@ -1,34 +1,34 @@
-SFX_Cry11_2_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 160, 7
- unknownsfx0x20 8, 230, 164, 7
- unknownsfx0x20 4, 214, 160, 7
- unknownsfx0x20 15, 211, 32, 7
- unknownsfx0x20 8, 195, 35, 7
- unknownsfx0x20 2, 194, 40, 7
- unknownsfx0x20 8, 177, 48, 7
- endchannel
+SFX_Cry11_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1952
+ square_note 8, 14, 6, 1956
+ square_note 4, 13, 6, 1952
+ square_note 15, 13, 3, 1824
+ square_note 8, 12, 3, 1827
+ square_note 2, 12, 2, 1832
+ square_note 8, 11, 1, 1840
+ sound_ret
-SFX_Cry11_2_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 6, 167, 65, 7
- unknownsfx0x20 8, 134, 67, 7
- unknownsfx0x20 4, 118, 65, 7
- unknownsfx0x20 13, 131, 194, 6
- unknownsfx0x20 7, 115, 193, 6
- unknownsfx0x20 3, 130, 204, 6
- unknownsfx0x20 8, 113, 216, 6
- endchannel
+SFX_Cry11_2_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 0, 8, 0
+ square_note 6, 10, 7, 1857
+ square_note 8, 8, 6, 1859
+ square_note 4, 7, 6, 1857
+ square_note 13, 8, 3, 1730
+ square_note 7, 7, 3, 1729
+ square_note 3, 8, 2, 1740
+ square_note 8, 7, 1, 1752
+ sound_ret
-SFX_Cry11_2_Ch3:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 230, 58
- unknownnoise0x20 4, 215, 58
- unknownnoise0x20 6, 214, 44
- unknownnoise0x20 8, 229, 60
- unknownnoise0x20 12, 210, 61
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry11_2_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 6, 58
+ noise_note 4, 13, 7, 58
+ noise_note 6, 13, 6, 44
+ noise_note 8, 14, 5, 60
+ noise_note 12, 13, 2, 61
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry11_3.asm b/audio/sfx/cry11_3.asm
index c07e01a5..1a8b0c10 100644
--- a/audio/sfx/cry11_3.asm
+++ b/audio/sfx/cry11_3.asm
@@ -1,34 +1,34 @@
-SFX_Cry11_3_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 160, 7
- unknownsfx0x20 8, 230, 164, 7
- unknownsfx0x20 4, 214, 160, 7
- unknownsfx0x20 15, 211, 32, 7
- unknownsfx0x20 8, 195, 35, 7
- unknownsfx0x20 2, 194, 40, 7
- unknownsfx0x20 8, 177, 48, 7
- endchannel
+SFX_Cry11_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1952
+ square_note 8, 14, 6, 1956
+ square_note 4, 13, 6, 1952
+ square_note 15, 13, 3, 1824
+ square_note 8, 12, 3, 1827
+ square_note 2, 12, 2, 1832
+ square_note 8, 11, 1, 1840
+ sound_ret
-SFX_Cry11_3_Ch2:
- dutycycle 10
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 6, 167, 65, 7
- unknownsfx0x20 8, 134, 67, 7
- unknownsfx0x20 4, 118, 65, 7
- unknownsfx0x20 13, 131, 194, 6
- unknownsfx0x20 7, 115, 193, 6
- unknownsfx0x20 3, 130, 204, 6
- unknownsfx0x20 8, 113, 216, 6
- endchannel
+SFX_Cry11_3_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 0, 8, 0
+ square_note 6, 10, 7, 1857
+ square_note 8, 8, 6, 1859
+ square_note 4, 7, 6, 1857
+ square_note 13, 8, 3, 1730
+ square_note 7, 7, 3, 1729
+ square_note 3, 8, 2, 1740
+ square_note 8, 7, 1, 1752
+ sound_ret
-SFX_Cry11_3_Ch3:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 230, 58
- unknownnoise0x20 4, 215, 58
- unknownnoise0x20 6, 214, 44
- unknownnoise0x20 8, 229, 60
- unknownnoise0x20 12, 210, 61
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry11_3_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 6, 58
+ noise_note 4, 13, 7, 58
+ noise_note 6, 13, 6, 44
+ noise_note 8, 14, 5, 60
+ noise_note 12, 13, 2, 61
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry12_1.asm b/audio/sfx/cry12_1.asm
index 62956626..d2ee5f6e 100644
--- a/audio/sfx/cry12_1.asm
+++ b/audio/sfx/cry12_1.asm
@@ -1,24 +1,24 @@
-SFX_Cry12_1_Ch1:
- dutycycle 165
- unknownsfx0x20 12, 242, 64, 4
- unknownsfx0x20 15, 227, 160, 4
- unknownsfx0x20 4, 210, 144, 4
- unknownsfx0x20 8, 209, 128, 4
- endchannel
+SFX_Cry12_1_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 12, 15, 2, 1088
+ square_note 15, 14, 3, 1184
+ square_note 4, 13, 2, 1168
+ square_note 8, 13, 1, 1152
+ sound_ret
-SFX_Cry12_1_Ch2:
- dutycycle 238
- unknownsfx0x20 11, 210, 56, 4
- unknownsfx0x20 14, 198, 152, 4
- unknownsfx0x20 3, 178, 136, 4
- unknownsfx0x20 8, 177, 120, 4
- endchannel
+SFX_Cry12_1_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 11, 13, 2, 1080
+ square_note 14, 12, 6, 1176
+ square_note 3, 11, 2, 1160
+ square_note 8, 11, 1, 1144
+ sound_ret
-SFX_Cry12_1_Ch3:
- unknownnoise0x20 10, 230, 108
- unknownnoise0x20 15, 210, 92
- unknownnoise0x20 3, 194, 108
- unknownnoise0x20 8, 209, 92
- endchannel
+SFX_Cry12_1_Ch8:
+ noise_note 10, 14, 6, 108
+ noise_note 15, 13, 2, 92
+ noise_note 3, 12, 2, 108
+ noise_note 8, 13, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry12_2.asm b/audio/sfx/cry12_2.asm
index 4acb8911..8a4afa2a 100644
--- a/audio/sfx/cry12_2.asm
+++ b/audio/sfx/cry12_2.asm
@@ -1,24 +1,24 @@
-SFX_Cry12_2_Ch1:
- dutycycle 165
- unknownsfx0x20 12, 242, 64, 4
- unknownsfx0x20 15, 227, 160, 4
- unknownsfx0x20 4, 210, 144, 4
- unknownsfx0x20 8, 209, 128, 4
- endchannel
+SFX_Cry12_2_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 12, 15, 2, 1088
+ square_note 15, 14, 3, 1184
+ square_note 4, 13, 2, 1168
+ square_note 8, 13, 1, 1152
+ sound_ret
-SFX_Cry12_2_Ch2:
- dutycycle 238
- unknownsfx0x20 11, 210, 56, 4
- unknownsfx0x20 14, 198, 152, 4
- unknownsfx0x20 3, 178, 136, 4
- unknownsfx0x20 8, 177, 120, 4
- endchannel
+SFX_Cry12_2_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 11, 13, 2, 1080
+ square_note 14, 12, 6, 1176
+ square_note 3, 11, 2, 1160
+ square_note 8, 11, 1, 1144
+ sound_ret
-SFX_Cry12_2_Ch3:
- unknownnoise0x20 10, 230, 108
- unknownnoise0x20 15, 210, 92
- unknownnoise0x20 3, 194, 108
- unknownnoise0x20 8, 209, 92
- endchannel
+SFX_Cry12_2_Ch8:
+ noise_note 10, 14, 6, 108
+ noise_note 15, 13, 2, 92
+ noise_note 3, 12, 2, 108
+ noise_note 8, 13, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry12_3.asm b/audio/sfx/cry12_3.asm
index bb433ac9..b114cdf4 100644
--- a/audio/sfx/cry12_3.asm
+++ b/audio/sfx/cry12_3.asm
@@ -1,24 +1,24 @@
-SFX_Cry12_3_Ch1:
- dutycycle 165
- unknownsfx0x20 12, 242, 64, 4
- unknownsfx0x20 15, 227, 160, 4
- unknownsfx0x20 4, 210, 144, 4
- unknownsfx0x20 8, 209, 128, 4
- endchannel
+SFX_Cry12_3_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 12, 15, 2, 1088
+ square_note 15, 14, 3, 1184
+ square_note 4, 13, 2, 1168
+ square_note 8, 13, 1, 1152
+ sound_ret
-SFX_Cry12_3_Ch2:
- dutycycle 238
- unknownsfx0x20 11, 210, 56, 4
- unknownsfx0x20 14, 198, 152, 4
- unknownsfx0x20 3, 178, 136, 4
- unknownsfx0x20 8, 177, 120, 4
- endchannel
+SFX_Cry12_3_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 11, 13, 2, 1080
+ square_note 14, 12, 6, 1176
+ square_note 3, 11, 2, 1160
+ square_note 8, 11, 1, 1144
+ sound_ret
-SFX_Cry12_3_Ch3:
- unknownnoise0x20 10, 230, 108
- unknownnoise0x20 15, 210, 92
- unknownnoise0x20 3, 194, 108
- unknownnoise0x20 8, 209, 92
- endchannel
+SFX_Cry12_3_Ch8:
+ noise_note 10, 14, 6, 108
+ noise_note 15, 13, 2, 92
+ noise_note 3, 12, 2, 108
+ noise_note 8, 13, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry13_1.asm b/audio/sfx/cry13_1.asm
index 7f9ef226..7ba33d8d 100644
--- a/audio/sfx/cry13_1.asm
+++ b/audio/sfx/cry13_1.asm
@@ -1,30 +1,30 @@
-SFX_Cry13_1_Ch1:
- dutycycle 51
- unknownsfx0x20 15, 246, 192, 5
- unknownsfx0x20 8, 227, 188, 5
- unknownsfx0x20 6, 210, 208, 5
- unknownsfx0x20 6, 178, 224, 5
- unknownsfx0x20 6, 194, 240, 5
- unknownsfx0x20 8, 177, 0, 6
- endchannel
+SFX_Cry13_1_Ch5:
+ duty_cycle_pattern 0, 3, 0, 3
+ square_note 15, 15, 6, 1472
+ square_note 8, 14, 3, 1468
+ square_note 6, 13, 2, 1488
+ square_note 6, 11, 2, 1504
+ square_note 6, 12, 2, 1520
+ square_note 8, 11, 1, 1536
+ sound_ret
-SFX_Cry13_1_Ch2:
- dutycycle 153
- unknownsfx0x20 14, 198, 177, 4
- unknownsfx0x20 7, 195, 173, 4
- unknownsfx0x20 5, 178, 193, 4
- unknownsfx0x20 8, 146, 209, 4
- unknownsfx0x20 6, 162, 225, 4
- unknownsfx0x20 8, 145, 241, 4
- endchannel
+SFX_Cry13_1_Ch6:
+ duty_cycle_pattern 2, 1, 2, 1
+ square_note 14, 12, 6, 1201
+ square_note 7, 12, 3, 1197
+ square_note 5, 11, 2, 1217
+ square_note 8, 9, 2, 1233
+ square_note 6, 10, 2, 1249
+ square_note 8, 9, 1, 1265
+ sound_ret
-SFX_Cry13_1_Ch3:
- unknownnoise0x20 10, 230, 92
- unknownnoise0x20 10, 214, 108
- unknownnoise0x20 4, 194, 76
- unknownnoise0x20 6, 211, 92
- unknownnoise0x20 8, 179, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Cry13_1_Ch8:
+ noise_note 10, 14, 6, 92
+ noise_note 10, 13, 6, 108
+ noise_note 4, 12, 2, 76
+ noise_note 6, 13, 3, 92
+ noise_note 8, 11, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry13_2.asm b/audio/sfx/cry13_2.asm
index 35d723dd..31ba80a1 100644
--- a/audio/sfx/cry13_2.asm
+++ b/audio/sfx/cry13_2.asm
@@ -1,30 +1,30 @@
-SFX_Cry13_2_Ch1:
- dutycycle 51
- unknownsfx0x20 15, 246, 192, 5
- unknownsfx0x20 8, 227, 188, 5
- unknownsfx0x20 6, 210, 208, 5
- unknownsfx0x20 6, 178, 224, 5
- unknownsfx0x20 6, 194, 240, 5
- unknownsfx0x20 8, 177, 0, 6
- endchannel
+SFX_Cry13_2_Ch5:
+ duty_cycle_pattern 0, 3, 0, 3
+ square_note 15, 15, 6, 1472
+ square_note 8, 14, 3, 1468
+ square_note 6, 13, 2, 1488
+ square_note 6, 11, 2, 1504
+ square_note 6, 12, 2, 1520
+ square_note 8, 11, 1, 1536
+ sound_ret
-SFX_Cry13_2_Ch2:
- dutycycle 153
- unknownsfx0x20 14, 198, 177, 4
- unknownsfx0x20 7, 195, 173, 4
- unknownsfx0x20 5, 178, 193, 4
- unknownsfx0x20 8, 146, 209, 4
- unknownsfx0x20 6, 162, 225, 4
- unknownsfx0x20 8, 145, 241, 4
- endchannel
+SFX_Cry13_2_Ch6:
+ duty_cycle_pattern 2, 1, 2, 1
+ square_note 14, 12, 6, 1201
+ square_note 7, 12, 3, 1197
+ square_note 5, 11, 2, 1217
+ square_note 8, 9, 2, 1233
+ square_note 6, 10, 2, 1249
+ square_note 8, 9, 1, 1265
+ sound_ret
-SFX_Cry13_2_Ch3:
- unknownnoise0x20 10, 230, 92
- unknownnoise0x20 10, 214, 108
- unknownnoise0x20 4, 194, 76
- unknownnoise0x20 6, 211, 92
- unknownnoise0x20 8, 179, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Cry13_2_Ch8:
+ noise_note 10, 14, 6, 92
+ noise_note 10, 13, 6, 108
+ noise_note 4, 12, 2, 76
+ noise_note 6, 13, 3, 92
+ noise_note 8, 11, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry13_3.asm b/audio/sfx/cry13_3.asm
index a298e5ff..8ca4cb0b 100644
--- a/audio/sfx/cry13_3.asm
+++ b/audio/sfx/cry13_3.asm
@@ -1,30 +1,30 @@
-SFX_Cry13_3_Ch1:
- dutycycle 51
- unknownsfx0x20 15, 246, 192, 5
- unknownsfx0x20 8, 227, 188, 5
- unknownsfx0x20 6, 210, 208, 5
- unknownsfx0x20 6, 178, 224, 5
- unknownsfx0x20 6, 194, 240, 5
- unknownsfx0x20 8, 177, 0, 6
- endchannel
+SFX_Cry13_3_Ch5:
+ duty_cycle_pattern 0, 3, 0, 3
+ square_note 15, 15, 6, 1472
+ square_note 8, 14, 3, 1468
+ square_note 6, 13, 2, 1488
+ square_note 6, 11, 2, 1504
+ square_note 6, 12, 2, 1520
+ square_note 8, 11, 1, 1536
+ sound_ret
-SFX_Cry13_3_Ch2:
- dutycycle 153
- unknownsfx0x20 14, 198, 177, 4
- unknownsfx0x20 7, 195, 173, 4
- unknownsfx0x20 5, 178, 193, 4
- unknownsfx0x20 8, 146, 209, 4
- unknownsfx0x20 6, 162, 225, 4
- unknownsfx0x20 8, 145, 241, 4
- endchannel
+SFX_Cry13_3_Ch6:
+ duty_cycle_pattern 2, 1, 2, 1
+ square_note 14, 12, 6, 1201
+ square_note 7, 12, 3, 1197
+ square_note 5, 11, 2, 1217
+ square_note 8, 9, 2, 1233
+ square_note 6, 10, 2, 1249
+ square_note 8, 9, 1, 1265
+ sound_ret
-SFX_Cry13_3_Ch3:
- unknownnoise0x20 10, 230, 92
- unknownnoise0x20 10, 214, 108
- unknownnoise0x20 4, 194, 76
- unknownnoise0x20 6, 211, 92
- unknownnoise0x20 8, 179, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Cry13_3_Ch8:
+ noise_note 10, 14, 6, 92
+ noise_note 10, 13, 6, 108
+ noise_note 4, 12, 2, 76
+ noise_note 6, 13, 3, 92
+ noise_note 8, 11, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/cry14_1.asm b/audio/sfx/cry14_1.asm
index b3cb43b9..d892918f 100644
--- a/audio/sfx/cry14_1.asm
+++ b/audio/sfx/cry14_1.asm
@@ -1,21 +1,21 @@
-SFX_Cry14_1_Ch1:
- dutycycle 240
- unknownsfx0x20 8, 228, 144, 7
- unknownsfx0x20 15, 245, 192, 7
- unknownsfx0x20 8, 209, 216, 7
- endchannel
+SFX_Cry14_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 14, 4, 1936
+ square_note 15, 15, 5, 1984
+ square_note 8, 13, 1, 2008
+ sound_ret
-SFX_Cry14_1_Ch2:
- dutycycle 165
- unknownsfx0x20 10, 196, 113, 7
- unknownsfx0x20 15, 182, 162, 7
- unknownsfx0x20 8, 161, 183, 7
- endchannel
+SFX_Cry14_1_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 12, 4, 1905
+ square_note 15, 11, 6, 1954
+ square_note 8, 10, 1, 1975
+ sound_ret
-SFX_Cry14_1_Ch3:
- unknownnoise0x20 8, 228, 76
- unknownnoise0x20 14, 196, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry14_1_Ch8:
+ noise_note 8, 14, 4, 76
+ noise_note 14, 12, 4, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry14_2.asm b/audio/sfx/cry14_2.asm
index d243bcbd..040bfe10 100644
--- a/audio/sfx/cry14_2.asm
+++ b/audio/sfx/cry14_2.asm
@@ -1,21 +1,21 @@
-SFX_Cry14_2_Ch1:
- dutycycle 240
- unknownsfx0x20 8, 228, 144, 7
- unknownsfx0x20 15, 245, 192, 7
- unknownsfx0x20 8, 209, 216, 7
- endchannel
+SFX_Cry14_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 14, 4, 1936
+ square_note 15, 15, 5, 1984
+ square_note 8, 13, 1, 2008
+ sound_ret
-SFX_Cry14_2_Ch2:
- dutycycle 165
- unknownsfx0x20 10, 196, 113, 7
- unknownsfx0x20 15, 182, 162, 7
- unknownsfx0x20 8, 161, 183, 7
- endchannel
+SFX_Cry14_2_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 12, 4, 1905
+ square_note 15, 11, 6, 1954
+ square_note 8, 10, 1, 1975
+ sound_ret
-SFX_Cry14_2_Ch3:
- unknownnoise0x20 8, 228, 76
- unknownnoise0x20 14, 196, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry14_2_Ch8:
+ noise_note 8, 14, 4, 76
+ noise_note 14, 12, 4, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry14_3.asm b/audio/sfx/cry14_3.asm
index b1a32bc4..142707c5 100644
--- a/audio/sfx/cry14_3.asm
+++ b/audio/sfx/cry14_3.asm
@@ -1,21 +1,21 @@
-SFX_Cry14_3_Ch1:
- dutycycle 240
- unknownsfx0x20 8, 228, 144, 7
- unknownsfx0x20 15, 245, 192, 7
- unknownsfx0x20 8, 209, 216, 7
- endchannel
+SFX_Cry14_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 14, 4, 1936
+ square_note 15, 15, 5, 1984
+ square_note 8, 13, 1, 2008
+ sound_ret
-SFX_Cry14_3_Ch2:
- dutycycle 165
- unknownsfx0x20 10, 196, 113, 7
- unknownsfx0x20 15, 182, 162, 7
- unknownsfx0x20 8, 161, 183, 7
- endchannel
+SFX_Cry14_3_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 12, 4, 1905
+ square_note 15, 11, 6, 1954
+ square_note 8, 10, 1, 1975
+ sound_ret
-SFX_Cry14_3_Ch3:
- unknownnoise0x20 8, 228, 76
- unknownnoise0x20 14, 196, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry14_3_Ch8:
+ noise_note 8, 14, 4, 76
+ noise_note 14, 12, 4, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry15_1.asm b/audio/sfx/cry15_1.asm
index 4ebd4963..473d46cb 100644
--- a/audio/sfx/cry15_1.asm
+++ b/audio/sfx/cry15_1.asm
@@ -1,30 +1,30 @@
-SFX_Cry15_1_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 243, 128, 7
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 8, 211, 16, 7
- unknownsfx0x20 4, 194, 0, 7
- unknownsfx0x20 4, 210, 240, 6
- unknownsfx0x20 8, 193, 224, 6
- endchannel
+SFX_Cry15_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1920
+ square_note 15, 14, 7, 1792
+ square_note 8, 13, 3, 1808
+ square_note 4, 12, 2, 1792
+ square_note 4, 13, 2, 1776
+ square_note 8, 12, 1, 1760
+ sound_ret
-SFX_Cry15_1_Ch2:
- dutycycle 90
- unknownsfx0x20 6, 195, 1, 7
- unknownsfx0x20 14, 183, 129, 6
- unknownsfx0x20 7, 179, 146, 6
- unknownsfx0x20 3, 162, 129, 6
- unknownsfx0x20 4, 178, 114, 6
- unknownsfx0x20 8, 161, 97, 6
- endchannel
+SFX_Cry15_1_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 6, 12, 3, 1793
+ square_note 14, 11, 7, 1665
+ square_note 7, 11, 3, 1682
+ square_note 3, 10, 2, 1665
+ square_note 4, 11, 2, 1650
+ square_note 8, 10, 1, 1633
+ sound_ret
-SFX_Cry15_1_Ch3:
- unknownnoise0x20 6, 227, 92
- unknownnoise0x20 14, 214, 76
- unknownnoise0x20 6, 198, 60
- unknownnoise0x20 3, 179, 76
- unknownnoise0x20 3, 162, 92
- unknownnoise0x20 8, 177, 108
- endchannel
+SFX_Cry15_1_Ch8:
+ noise_note 6, 14, 3, 92
+ noise_note 14, 13, 6, 76
+ noise_note 6, 12, 6, 60
+ noise_note 3, 11, 3, 76
+ noise_note 3, 10, 2, 92
+ noise_note 8, 11, 1, 108
+ sound_ret
diff --git a/audio/sfx/cry15_2.asm b/audio/sfx/cry15_2.asm
index 77807203..82398789 100644
--- a/audio/sfx/cry15_2.asm
+++ b/audio/sfx/cry15_2.asm
@@ -1,30 +1,30 @@
-SFX_Cry15_2_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 243, 128, 7
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 8, 211, 16, 7
- unknownsfx0x20 4, 194, 0, 7
- unknownsfx0x20 4, 210, 240, 6
- unknownsfx0x20 8, 193, 224, 6
- endchannel
+SFX_Cry15_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1920
+ square_note 15, 14, 7, 1792
+ square_note 8, 13, 3, 1808
+ square_note 4, 12, 2, 1792
+ square_note 4, 13, 2, 1776
+ square_note 8, 12, 1, 1760
+ sound_ret
-SFX_Cry15_2_Ch2:
- dutycycle 90
- unknownsfx0x20 6, 195, 1, 7
- unknownsfx0x20 14, 183, 129, 6
- unknownsfx0x20 7, 179, 146, 6
- unknownsfx0x20 3, 162, 129, 6
- unknownsfx0x20 4, 178, 114, 6
- unknownsfx0x20 8, 161, 97, 6
- endchannel
+SFX_Cry15_2_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 6, 12, 3, 1793
+ square_note 14, 11, 7, 1665
+ square_note 7, 11, 3, 1682
+ square_note 3, 10, 2, 1665
+ square_note 4, 11, 2, 1650
+ square_note 8, 10, 1, 1633
+ sound_ret
-SFX_Cry15_2_Ch3:
- unknownnoise0x20 6, 227, 92
- unknownnoise0x20 14, 214, 76
- unknownnoise0x20 6, 198, 60
- unknownnoise0x20 3, 179, 76
- unknownnoise0x20 3, 162, 92
- unknownnoise0x20 8, 177, 108
- endchannel
+SFX_Cry15_2_Ch8:
+ noise_note 6, 14, 3, 92
+ noise_note 14, 13, 6, 76
+ noise_note 6, 12, 6, 60
+ noise_note 3, 11, 3, 76
+ noise_note 3, 10, 2, 92
+ noise_note 8, 11, 1, 108
+ sound_ret
diff --git a/audio/sfx/cry15_3.asm b/audio/sfx/cry15_3.asm
index 2c24d658..dcd6683b 100644
--- a/audio/sfx/cry15_3.asm
+++ b/audio/sfx/cry15_3.asm
@@ -1,30 +1,30 @@
-SFX_Cry15_3_Ch1:
- dutycycle 240
- unknownsfx0x20 4, 243, 128, 7
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 8, 211, 16, 7
- unknownsfx0x20 4, 194, 0, 7
- unknownsfx0x20 4, 210, 240, 6
- unknownsfx0x20 8, 193, 224, 6
- endchannel
+SFX_Cry15_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1920
+ square_note 15, 14, 7, 1792
+ square_note 8, 13, 3, 1808
+ square_note 4, 12, 2, 1792
+ square_note 4, 13, 2, 1776
+ square_note 8, 12, 1, 1760
+ sound_ret
-SFX_Cry15_3_Ch2:
- dutycycle 90
- unknownsfx0x20 6, 195, 1, 7
- unknownsfx0x20 14, 183, 129, 6
- unknownsfx0x20 7, 179, 146, 6
- unknownsfx0x20 3, 162, 129, 6
- unknownsfx0x20 4, 178, 114, 6
- unknownsfx0x20 8, 161, 97, 6
- endchannel
+SFX_Cry15_3_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 6, 12, 3, 1793
+ square_note 14, 11, 7, 1665
+ square_note 7, 11, 3, 1682
+ square_note 3, 10, 2, 1665
+ square_note 4, 11, 2, 1650
+ square_note 8, 10, 1, 1633
+ sound_ret
-SFX_Cry15_3_Ch3:
- unknownnoise0x20 6, 227, 92
- unknownnoise0x20 14, 214, 76
- unknownnoise0x20 6, 198, 60
- unknownnoise0x20 3, 179, 76
- unknownnoise0x20 3, 162, 92
- unknownnoise0x20 8, 177, 108
- endchannel
+SFX_Cry15_3_Ch8:
+ noise_note 6, 14, 3, 92
+ noise_note 14, 13, 6, 76
+ noise_note 6, 12, 6, 60
+ noise_note 3, 11, 3, 76
+ noise_note 3, 10, 2, 92
+ noise_note 8, 11, 1, 108
+ sound_ret
diff --git a/audio/sfx/cry16_1.asm b/audio/sfx/cry16_1.asm
index 8a7ee4c1..410ec4ad 100644
--- a/audio/sfx/cry16_1.asm
+++ b/audio/sfx/cry16_1.asm
@@ -1,21 +1,21 @@
-SFX_Cry16_1_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 215, 128, 7
- unknownsfx0x20 4, 230, 160, 7
- unknownsfx0x20 15, 210, 64, 7
- endchannel
+SFX_Cry16_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 13, 7, 1920
+ square_note 4, 14, 6, 1952
+ square_note 15, 13, 2, 1856
+ sound_ret
-SFX_Cry16_1_Ch2:
- dutycycle 90
- unknownsfx0x20 15, 199, 83, 7
- unknownsfx0x20 5, 182, 114, 7
- unknownsfx0x20 15, 194, 17, 7
- endchannel
+SFX_Cry16_1_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 15, 12, 7, 1875
+ square_note 5, 11, 6, 1906
+ square_note 15, 12, 2, 1809
+ sound_ret
-SFX_Cry16_1_Ch3:
- unknownnoise0x20 13, 246, 76
- unknownnoise0x20 4, 230, 60
- unknownnoise0x20 15, 242, 76
- endchannel
+SFX_Cry16_1_Ch8:
+ noise_note 13, 15, 6, 76
+ noise_note 4, 14, 6, 60
+ noise_note 15, 15, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry16_2.asm b/audio/sfx/cry16_2.asm
index 46729c2a..a91355a6 100644
--- a/audio/sfx/cry16_2.asm
+++ b/audio/sfx/cry16_2.asm
@@ -1,21 +1,21 @@
-SFX_Cry16_2_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 215, 128, 7
- unknownsfx0x20 4, 230, 160, 7
- unknownsfx0x20 15, 210, 64, 7
- endchannel
+SFX_Cry16_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 13, 7, 1920
+ square_note 4, 14, 6, 1952
+ square_note 15, 13, 2, 1856
+ sound_ret
-SFX_Cry16_2_Ch2:
- dutycycle 90
- unknownsfx0x20 15, 199, 83, 7
- unknownsfx0x20 5, 182, 114, 7
- unknownsfx0x20 15, 194, 17, 7
- endchannel
+SFX_Cry16_2_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 15, 12, 7, 1875
+ square_note 5, 11, 6, 1906
+ square_note 15, 12, 2, 1809
+ sound_ret
-SFX_Cry16_2_Ch3:
- unknownnoise0x20 13, 246, 76
- unknownnoise0x20 4, 230, 60
- unknownnoise0x20 15, 242, 76
- endchannel
+SFX_Cry16_2_Ch8:
+ noise_note 13, 15, 6, 76
+ noise_note 4, 14, 6, 60
+ noise_note 15, 15, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry16_3.asm b/audio/sfx/cry16_3.asm
index a94ac495..838a4241 100644
--- a/audio/sfx/cry16_3.asm
+++ b/audio/sfx/cry16_3.asm
@@ -1,21 +1,21 @@
-SFX_Cry16_3_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 215, 128, 7
- unknownsfx0x20 4, 230, 160, 7
- unknownsfx0x20 15, 210, 64, 7
- endchannel
+SFX_Cry16_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 13, 7, 1920
+ square_note 4, 14, 6, 1952
+ square_note 15, 13, 2, 1856
+ sound_ret
-SFX_Cry16_3_Ch2:
- dutycycle 90
- unknownsfx0x20 15, 199, 83, 7
- unknownsfx0x20 5, 182, 114, 7
- unknownsfx0x20 15, 194, 17, 7
- endchannel
+SFX_Cry16_3_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 15, 12, 7, 1875
+ square_note 5, 11, 6, 1906
+ square_note 15, 12, 2, 1809
+ sound_ret
-SFX_Cry16_3_Ch3:
- unknownnoise0x20 13, 246, 76
- unknownnoise0x20 4, 230, 60
- unknownnoise0x20 15, 242, 76
- endchannel
+SFX_Cry16_3_Ch8:
+ noise_note 13, 15, 6, 76
+ noise_note 4, 14, 6, 60
+ noise_note 15, 15, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry17_1.asm b/audio/sfx/cry17_1.asm
index ddf0967d..dcfde2bc 100644
--- a/audio/sfx/cry17_1.asm
+++ b/audio/sfx/cry17_1.asm
@@ -1,24 +1,24 @@
-SFX_Cry17_1_Ch1:
- dutycycle 15
- unknownsfx0x20 15, 247, 0, 5
- unknownsfx0x20 15, 231, 8, 5
- unknownsfx0x20 8, 180, 128, 4
- unknownsfx0x20 15, 162, 96, 4
- endchannel
+SFX_Cry17_1_Ch5:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 15, 15, 7, 1280
+ square_note 15, 14, 7, 1288
+ square_note 8, 11, 4, 1152
+ square_note 15, 10, 2, 1120
+ sound_ret
-SFX_Cry17_1_Ch2:
- dutycycle 68
- unknownsfx0x20 14, 215, 129, 4
- unknownsfx0x20 14, 199, 137, 4
- unknownsfx0x20 10, 180, 1, 4
- unknownsfx0x20 15, 194, 225, 3
- endchannel
+SFX_Cry17_1_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 14, 13, 7, 1153
+ square_note 14, 12, 7, 1161
+ square_note 10, 11, 4, 1025
+ square_note 15, 12, 2, 993
+ sound_ret
-SFX_Cry17_1_Ch3:
- unknownnoise0x20 14, 247, 124
- unknownnoise0x20 12, 246, 108
- unknownnoise0x20 9, 228, 124
- unknownnoise0x20 15, 226, 108
- endchannel
+SFX_Cry17_1_Ch8:
+ noise_note 14, 15, 7, 124
+ noise_note 12, 15, 6, 108
+ noise_note 9, 14, 4, 124
+ noise_note 15, 14, 2, 108
+ sound_ret
diff --git a/audio/sfx/cry17_2.asm b/audio/sfx/cry17_2.asm
index f2528875..f2b1f366 100644
--- a/audio/sfx/cry17_2.asm
+++ b/audio/sfx/cry17_2.asm
@@ -1,24 +1,24 @@
-SFX_Cry17_2_Ch1:
- dutycycle 15
- unknownsfx0x20 15, 247, 0, 5
- unknownsfx0x20 15, 231, 8, 5
- unknownsfx0x20 8, 180, 128, 4
- unknownsfx0x20 15, 162, 96, 4
- endchannel
+SFX_Cry17_2_Ch5:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 15, 15, 7, 1280
+ square_note 15, 14, 7, 1288
+ square_note 8, 11, 4, 1152
+ square_note 15, 10, 2, 1120
+ sound_ret
-SFX_Cry17_2_Ch2:
- dutycycle 68
- unknownsfx0x20 14, 215, 129, 4
- unknownsfx0x20 14, 199, 137, 4
- unknownsfx0x20 10, 180, 1, 4
- unknownsfx0x20 15, 194, 225, 3
- endchannel
+SFX_Cry17_2_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 14, 13, 7, 1153
+ square_note 14, 12, 7, 1161
+ square_note 10, 11, 4, 1025
+ square_note 15, 12, 2, 993
+ sound_ret
-SFX_Cry17_2_Ch3:
- unknownnoise0x20 14, 247, 124
- unknownnoise0x20 12, 246, 108
- unknownnoise0x20 9, 228, 124
- unknownnoise0x20 15, 226, 108
- endchannel
+SFX_Cry17_2_Ch8:
+ noise_note 14, 15, 7, 124
+ noise_note 12, 15, 6, 108
+ noise_note 9, 14, 4, 124
+ noise_note 15, 14, 2, 108
+ sound_ret
diff --git a/audio/sfx/cry17_3.asm b/audio/sfx/cry17_3.asm
index f180a3b8..dabb4dbc 100644
--- a/audio/sfx/cry17_3.asm
+++ b/audio/sfx/cry17_3.asm
@@ -1,24 +1,24 @@
-SFX_Cry17_3_Ch1:
- dutycycle 15
- unknownsfx0x20 15, 247, 0, 5
- unknownsfx0x20 15, 231, 8, 5
- unknownsfx0x20 8, 180, 128, 4
- unknownsfx0x20 15, 162, 96, 4
- endchannel
+SFX_Cry17_3_Ch5:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 15, 15, 7, 1280
+ square_note 15, 14, 7, 1288
+ square_note 8, 11, 4, 1152
+ square_note 15, 10, 2, 1120
+ sound_ret
-SFX_Cry17_3_Ch2:
- dutycycle 68
- unknownsfx0x20 14, 215, 129, 4
- unknownsfx0x20 14, 199, 137, 4
- unknownsfx0x20 10, 180, 1, 4
- unknownsfx0x20 15, 194, 225, 3
- endchannel
+SFX_Cry17_3_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 14, 13, 7, 1153
+ square_note 14, 12, 7, 1161
+ square_note 10, 11, 4, 1025
+ square_note 15, 12, 2, 993
+ sound_ret
-SFX_Cry17_3_Ch3:
- unknownnoise0x20 14, 247, 124
- unknownnoise0x20 12, 246, 108
- unknownnoise0x20 9, 228, 124
- unknownnoise0x20 15, 226, 108
- endchannel
+SFX_Cry17_3_Ch8:
+ noise_note 14, 15, 7, 124
+ noise_note 12, 15, 6, 108
+ noise_note 9, 14, 4, 124
+ noise_note 15, 14, 2, 108
+ sound_ret
diff --git a/audio/sfx/cry18_1.asm b/audio/sfx/cry18_1.asm
index c28bf7f4..c67f03d1 100644
--- a/audio/sfx/cry18_1.asm
+++ b/audio/sfx/cry18_1.asm
@@ -1,34 +1,34 @@
-SFX_Cry18_1_Ch1:
- dutycycle 80
- unknownsfx0x20 10, 245, 128, 6
- unknownsfx0x20 3, 226, 160, 6
- unknownsfx0x20 3, 242, 192, 6
- unknownsfx0x20 3, 226, 224, 6
- unknownsfx0x20 3, 210, 0, 7
- unknownsfx0x20 3, 194, 224, 6
- unknownsfx0x20 3, 210, 192, 6
- unknownsfx0x20 8, 193, 160, 6
- endchannel
+SFX_Cry18_1_Ch5:
+ duty_cycle_pattern 1, 1, 0, 0
+ square_note 10, 15, 5, 1664
+ square_note 3, 14, 2, 1696
+ square_note 3, 15, 2, 1728
+ square_note 3, 14, 2, 1760
+ square_note 3, 13, 2, 1792
+ square_note 3, 12, 2, 1760
+ square_note 3, 13, 2, 1728
+ square_note 8, 12, 1, 1696
+ sound_ret
-SFX_Cry18_1_Ch2:
- dutycycle 15
- unknownsfx0x20 9, 213, 49, 6
- unknownsfx0x20 3, 210, 82, 6
- unknownsfx0x20 3, 226, 113, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 178, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 113, 6
- unknownsfx0x20 8, 177, 81, 6
- endchannel
+SFX_Cry18_1_Ch6:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 9, 13, 5, 1585
+ square_note 3, 13, 2, 1618
+ square_note 3, 14, 2, 1649
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1714
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1649
+ square_note 8, 11, 1, 1617
+ sound_ret
-SFX_Cry18_1_Ch3:
- unknownnoise0x20 6, 227, 76
- unknownnoise0x20 4, 195, 60
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 4, 196, 44
- unknownnoise0x20 6, 180, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Cry18_1_Ch8:
+ noise_note 6, 14, 3, 76
+ noise_note 4, 12, 3, 60
+ noise_note 5, 13, 4, 60
+ noise_note 4, 12, 4, 44
+ noise_note 6, 11, 4, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry18_2.asm b/audio/sfx/cry18_2.asm
index 1c3c26b9..55be1c3f 100644
--- a/audio/sfx/cry18_2.asm
+++ b/audio/sfx/cry18_2.asm
@@ -1,34 +1,34 @@
-SFX_Cry18_2_Ch1:
- dutycycle 80
- unknownsfx0x20 10, 245, 128, 6
- unknownsfx0x20 3, 226, 160, 6
- unknownsfx0x20 3, 242, 192, 6
- unknownsfx0x20 3, 226, 224, 6
- unknownsfx0x20 3, 210, 0, 7
- unknownsfx0x20 3, 194, 224, 6
- unknownsfx0x20 3, 210, 192, 6
- unknownsfx0x20 8, 193, 160, 6
- endchannel
+SFX_Cry18_2_Ch5:
+ duty_cycle_pattern 1, 1, 0, 0
+ square_note 10, 15, 5, 1664
+ square_note 3, 14, 2, 1696
+ square_note 3, 15, 2, 1728
+ square_note 3, 14, 2, 1760
+ square_note 3, 13, 2, 1792
+ square_note 3, 12, 2, 1760
+ square_note 3, 13, 2, 1728
+ square_note 8, 12, 1, 1696
+ sound_ret
-SFX_Cry18_2_Ch2:
- dutycycle 15
- unknownsfx0x20 9, 213, 49, 6
- unknownsfx0x20 3, 210, 82, 6
- unknownsfx0x20 3, 226, 113, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 178, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 113, 6
- unknownsfx0x20 8, 177, 81, 6
- endchannel
+SFX_Cry18_2_Ch6:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 9, 13, 5, 1585
+ square_note 3, 13, 2, 1618
+ square_note 3, 14, 2, 1649
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1714
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1649
+ square_note 8, 11, 1, 1617
+ sound_ret
-SFX_Cry18_2_Ch3:
- unknownnoise0x20 6, 227, 76
- unknownnoise0x20 4, 195, 60
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 4, 196, 44
- unknownnoise0x20 6, 180, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Cry18_2_Ch8:
+ noise_note 6, 14, 3, 76
+ noise_note 4, 12, 3, 60
+ noise_note 5, 13, 4, 60
+ noise_note 4, 12, 4, 44
+ noise_note 6, 11, 4, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry18_3.asm b/audio/sfx/cry18_3.asm
index ceeda42f..cc0db3ec 100644
--- a/audio/sfx/cry18_3.asm
+++ b/audio/sfx/cry18_3.asm
@@ -1,34 +1,34 @@
-SFX_Cry18_3_Ch1:
- dutycycle 80
- unknownsfx0x20 10, 245, 128, 6
- unknownsfx0x20 3, 226, 160, 6
- unknownsfx0x20 3, 242, 192, 6
- unknownsfx0x20 3, 226, 224, 6
- unknownsfx0x20 3, 210, 0, 7
- unknownsfx0x20 3, 194, 224, 6
- unknownsfx0x20 3, 210, 192, 6
- unknownsfx0x20 8, 193, 160, 6
- endchannel
+SFX_Cry18_3_Ch5:
+ duty_cycle_pattern 1, 1, 0, 0
+ square_note 10, 15, 5, 1664
+ square_note 3, 14, 2, 1696
+ square_note 3, 15, 2, 1728
+ square_note 3, 14, 2, 1760
+ square_note 3, 13, 2, 1792
+ square_note 3, 12, 2, 1760
+ square_note 3, 13, 2, 1728
+ square_note 8, 12, 1, 1696
+ sound_ret
-SFX_Cry18_3_Ch2:
- dutycycle 15
- unknownsfx0x20 9, 213, 49, 6
- unknownsfx0x20 3, 210, 82, 6
- unknownsfx0x20 3, 226, 113, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 178, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 113, 6
- unknownsfx0x20 8, 177, 81, 6
- endchannel
+SFX_Cry18_3_Ch6:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 9, 13, 5, 1585
+ square_note 3, 13, 2, 1618
+ square_note 3, 14, 2, 1649
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1714
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1649
+ square_note 8, 11, 1, 1617
+ sound_ret
-SFX_Cry18_3_Ch3:
- unknownnoise0x20 6, 227, 76
- unknownnoise0x20 4, 195, 60
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 4, 196, 44
- unknownnoise0x20 6, 180, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Cry18_3_Ch8:
+ noise_note 6, 14, 3, 76
+ noise_note 4, 12, 3, 60
+ noise_note 5, 13, 4, 60
+ noise_note 4, 12, 4, 44
+ noise_note 6, 11, 4, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry19_1.asm b/audio/sfx/cry19_1.asm
index 4b5b4ed0..eca89a1c 100644
--- a/audio/sfx/cry19_1.asm
+++ b/audio/sfx/cry19_1.asm
@@ -1,18 +1,18 @@
-SFX_Cry19_1_Ch1:
- dutycycle 27
- unknownsfx0x20 7, 210, 64, 7
- unknownsfx0x20 15, 229, 96, 7
- unknownsfx0x20 15, 193, 48, 7
- endchannel
+SFX_Cry19_1_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 7, 13, 2, 1856
+ square_note 15, 14, 5, 1888
+ square_note 15, 12, 1, 1840
+ sound_ret
-SFX_Cry19_1_Ch2:
- dutycycle 129
- unknownsfx0x20 2, 194, 1, 7
- unknownsfx0x20 4, 194, 8, 7
- unknownsfx0x20 15, 215, 65, 7
- unknownsfx0x20 15, 162, 1, 7
+SFX_Cry19_1_Ch6:
+ duty_cycle_pattern 2, 0, 0, 1
+ square_note 2, 12, 2, 1793
+ square_note 4, 12, 2, 1800
+ square_note 15, 13, 7, 1857
+ square_note 15, 10, 2, 1793
-SFX_Cry19_1_Ch3:
- endchannel
+SFX_Cry19_1_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry19_2.asm b/audio/sfx/cry19_2.asm
index 9c9557a9..3a7d51fd 100644
--- a/audio/sfx/cry19_2.asm
+++ b/audio/sfx/cry19_2.asm
@@ -1,18 +1,18 @@
-SFX_Cry19_2_Ch1:
- dutycycle 27
- unknownsfx0x20 7, 210, 64, 7
- unknownsfx0x20 15, 229, 96, 7
- unknownsfx0x20 15, 193, 48, 7
- endchannel
+SFX_Cry19_2_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 7, 13, 2, 1856
+ square_note 15, 14, 5, 1888
+ square_note 15, 12, 1, 1840
+ sound_ret
-SFX_Cry19_2_Ch2:
- dutycycle 129
- unknownsfx0x20 2, 194, 1, 7
- unknownsfx0x20 4, 194, 8, 7
- unknownsfx0x20 15, 215, 65, 7
- unknownsfx0x20 15, 162, 1, 7
+SFX_Cry19_2_Ch6:
+ duty_cycle_pattern 2, 0, 0, 1
+ square_note 2, 12, 2, 1793
+ square_note 4, 12, 2, 1800
+ square_note 15, 13, 7, 1857
+ square_note 15, 10, 2, 1793
-SFX_Cry19_2_Ch3:
- endchannel
+SFX_Cry19_2_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry19_3.asm b/audio/sfx/cry19_3.asm
index 71eccbf8..965e6cf0 100644
--- a/audio/sfx/cry19_3.asm
+++ b/audio/sfx/cry19_3.asm
@@ -1,18 +1,18 @@
-SFX_Cry19_3_Ch1:
- dutycycle 27
- unknownsfx0x20 7, 210, 64, 7
- unknownsfx0x20 15, 229, 96, 7
- unknownsfx0x20 15, 193, 48, 7
- endchannel
+SFX_Cry19_3_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 7, 13, 2, 1856
+ square_note 15, 14, 5, 1888
+ square_note 15, 12, 1, 1840
+ sound_ret
-SFX_Cry19_3_Ch2:
- dutycycle 129
- unknownsfx0x20 2, 194, 1, 7
- unknownsfx0x20 4, 194, 8, 7
- unknownsfx0x20 15, 215, 65, 7
- unknownsfx0x20 15, 162, 1, 7
+SFX_Cry19_3_Ch6:
+ duty_cycle_pattern 2, 0, 0, 1
+ square_note 2, 12, 2, 1793
+ square_note 4, 12, 2, 1800
+ square_note 15, 13, 7, 1857
+ square_note 15, 10, 2, 1793
-SFX_Cry19_3_Ch3:
- endchannel
+SFX_Cry19_3_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry1a_1.asm b/audio/sfx/cry1a_1.asm
index 7f8911c7..f319878a 100644
--- a/audio/sfx/cry1a_1.asm
+++ b/audio/sfx/cry1a_1.asm
@@ -1,30 +1,30 @@
-SFX_Cry1A_1_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 64, 7
- unknownsfx0x20 12, 230, 68, 7
- unknownsfx0x20 6, 213, 80, 7
- unknownsfx0x20 4, 195, 96, 7
- unknownsfx0x20 3, 195, 128, 7
- unknownsfx0x20 8, 209, 160, 7
- endchannel
+SFX_Cry1A_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1856
+ square_note 12, 14, 6, 1860
+ square_note 6, 13, 5, 1872
+ square_note 4, 12, 3, 1888
+ square_note 3, 12, 3, 1920
+ square_note 8, 13, 1, 1952
+ sound_ret
-SFX_Cry1A_1_Ch2:
- dutycycle 10
- unknownsfx0x20 6, 199, 1, 7
- unknownsfx0x20 11, 182, 2, 7
- unknownsfx0x20 6, 165, 17, 7
- unknownsfx0x20 4, 147, 33, 7
- unknownsfx0x20 3, 163, 65, 7
- unknownsfx0x20 8, 145, 98, 7
- endchannel
+SFX_Cry1A_1_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 12, 7, 1793
+ square_note 11, 11, 6, 1794
+ square_note 6, 10, 5, 1809
+ square_note 4, 9, 3, 1825
+ square_note 3, 10, 3, 1857
+ square_note 8, 9, 1, 1890
+ sound_ret
-SFX_Cry1A_1_Ch3:
- unknownnoise0x20 3, 226, 60
- unknownnoise0x20 8, 214, 76
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 12, 199, 76
- unknownnoise0x20 2, 226, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry1A_1_Ch8:
+ noise_note 3, 14, 2, 60
+ noise_note 8, 13, 6, 76
+ noise_note 5, 13, 4, 60
+ noise_note 12, 12, 7, 76
+ noise_note 2, 14, 2, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry1a_2.asm b/audio/sfx/cry1a_2.asm
index da54ff6e..64fd0674 100644
--- a/audio/sfx/cry1a_2.asm
+++ b/audio/sfx/cry1a_2.asm
@@ -1,30 +1,30 @@
-SFX_Cry1A_2_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 64, 7
- unknownsfx0x20 12, 230, 68, 7
- unknownsfx0x20 6, 213, 80, 7
- unknownsfx0x20 4, 195, 96, 7
- unknownsfx0x20 3, 195, 128, 7
- unknownsfx0x20 8, 209, 160, 7
- endchannel
+SFX_Cry1A_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1856
+ square_note 12, 14, 6, 1860
+ square_note 6, 13, 5, 1872
+ square_note 4, 12, 3, 1888
+ square_note 3, 12, 3, 1920
+ square_note 8, 13, 1, 1952
+ sound_ret
-SFX_Cry1A_2_Ch2:
- dutycycle 10
- unknownsfx0x20 6, 199, 1, 7
- unknownsfx0x20 11, 182, 2, 7
- unknownsfx0x20 6, 165, 17, 7
- unknownsfx0x20 4, 147, 33, 7
- unknownsfx0x20 3, 163, 65, 7
- unknownsfx0x20 8, 145, 98, 7
- endchannel
+SFX_Cry1A_2_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 12, 7, 1793
+ square_note 11, 11, 6, 1794
+ square_note 6, 10, 5, 1809
+ square_note 4, 9, 3, 1825
+ square_note 3, 10, 3, 1857
+ square_note 8, 9, 1, 1890
+ sound_ret
-SFX_Cry1A_2_Ch3:
- unknownnoise0x20 3, 226, 60
- unknownnoise0x20 8, 214, 76
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 12, 199, 76
- unknownnoise0x20 2, 226, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry1A_2_Ch8:
+ noise_note 3, 14, 2, 60
+ noise_note 8, 13, 6, 76
+ noise_note 5, 13, 4, 60
+ noise_note 12, 12, 7, 76
+ noise_note 2, 14, 2, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry1a_3.asm b/audio/sfx/cry1a_3.asm
index d16cf035..a55f0dcf 100644
--- a/audio/sfx/cry1a_3.asm
+++ b/audio/sfx/cry1a_3.asm
@@ -1,30 +1,30 @@
-SFX_Cry1A_3_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 64, 7
- unknownsfx0x20 12, 230, 68, 7
- unknownsfx0x20 6, 213, 80, 7
- unknownsfx0x20 4, 195, 96, 7
- unknownsfx0x20 3, 195, 128, 7
- unknownsfx0x20 8, 209, 160, 7
- endchannel
+SFX_Cry1A_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1856
+ square_note 12, 14, 6, 1860
+ square_note 6, 13, 5, 1872
+ square_note 4, 12, 3, 1888
+ square_note 3, 12, 3, 1920
+ square_note 8, 13, 1, 1952
+ sound_ret
-SFX_Cry1A_3_Ch2:
- dutycycle 10
- unknownsfx0x20 6, 199, 1, 7
- unknownsfx0x20 11, 182, 2, 7
- unknownsfx0x20 6, 165, 17, 7
- unknownsfx0x20 4, 147, 33, 7
- unknownsfx0x20 3, 163, 65, 7
- unknownsfx0x20 8, 145, 98, 7
- endchannel
+SFX_Cry1A_3_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 12, 7, 1793
+ square_note 11, 11, 6, 1794
+ square_note 6, 10, 5, 1809
+ square_note 4, 9, 3, 1825
+ square_note 3, 10, 3, 1857
+ square_note 8, 9, 1, 1890
+ sound_ret
-SFX_Cry1A_3_Ch3:
- unknownnoise0x20 3, 226, 60
- unknownnoise0x20 8, 214, 76
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 12, 199, 76
- unknownnoise0x20 2, 226, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Cry1A_3_Ch8:
+ noise_note 3, 14, 2, 60
+ noise_note 8, 13, 6, 76
+ noise_note 5, 13, 4, 60
+ noise_note 12, 12, 7, 76
+ noise_note 2, 14, 2, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry1b_1.asm b/audio/sfx/cry1b_1.asm
index f6f03c98..0070a0f1 100644
--- a/audio/sfx/cry1b_1.asm
+++ b/audio/sfx/cry1b_1.asm
@@ -1,26 +1,26 @@
-SFX_Cry1B_1_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 192, 6
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 4, 244, 240, 6
- unknownsfx0x20 4, 228, 224, 6
- unknownsfx0x20 8, 209, 208, 6
- endchannel
+SFX_Cry1B_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1728
+ square_note 15, 14, 7, 1792
+ square_note 4, 15, 4, 1776
+ square_note 4, 14, 4, 1760
+ square_note 8, 13, 1, 1744
+ sound_ret
-SFX_Cry1B_1_Ch2:
- dutycycle 10
- unknownsfx0x20 7, 230, 129, 6
- unknownsfx0x20 14, 213, 193, 6
- unknownsfx0x20 4, 196, 177, 6
- unknownsfx0x20 4, 212, 161, 6
- unknownsfx0x20 8, 193, 145, 6
- endchannel
+SFX_Cry1B_1_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 7, 14, 6, 1665
+ square_note 14, 13, 5, 1729
+ square_note 4, 12, 4, 1713
+ square_note 4, 13, 4, 1697
+ square_note 8, 12, 1, 1681
+ sound_ret
-SFX_Cry1B_1_Ch3:
- unknownnoise0x20 10, 166, 60
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 5, 163, 60
- unknownnoise0x20 8, 145, 44
- endchannel
+SFX_Cry1B_1_Ch8:
+ noise_note 10, 10, 6, 60
+ noise_note 14, 9, 4, 44
+ noise_note 5, 10, 3, 60
+ noise_note 8, 9, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry1b_2.asm b/audio/sfx/cry1b_2.asm
index fe96943d..9453ce9b 100644
--- a/audio/sfx/cry1b_2.asm
+++ b/audio/sfx/cry1b_2.asm
@@ -1,26 +1,26 @@
-SFX_Cry1B_2_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 192, 6
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 4, 244, 240, 6
- unknownsfx0x20 4, 228, 224, 6
- unknownsfx0x20 8, 209, 208, 6
- endchannel
+SFX_Cry1B_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1728
+ square_note 15, 14, 7, 1792
+ square_note 4, 15, 4, 1776
+ square_note 4, 14, 4, 1760
+ square_note 8, 13, 1, 1744
+ sound_ret
-SFX_Cry1B_2_Ch2:
- dutycycle 10
- unknownsfx0x20 7, 230, 129, 6
- unknownsfx0x20 14, 213, 193, 6
- unknownsfx0x20 4, 196, 177, 6
- unknownsfx0x20 4, 212, 161, 6
- unknownsfx0x20 8, 193, 145, 6
- endchannel
+SFX_Cry1B_2_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 7, 14, 6, 1665
+ square_note 14, 13, 5, 1729
+ square_note 4, 12, 4, 1713
+ square_note 4, 13, 4, 1697
+ square_note 8, 12, 1, 1681
+ sound_ret
-SFX_Cry1B_2_Ch3:
- unknownnoise0x20 10, 166, 60
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 5, 163, 60
- unknownnoise0x20 8, 145, 44
- endchannel
+SFX_Cry1B_2_Ch8:
+ noise_note 10, 10, 6, 60
+ noise_note 14, 9, 4, 44
+ noise_note 5, 10, 3, 60
+ noise_note 8, 9, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry1b_3.asm b/audio/sfx/cry1b_3.asm
index 8a034b1e..f6a1d76a 100644
--- a/audio/sfx/cry1b_3.asm
+++ b/audio/sfx/cry1b_3.asm
@@ -1,26 +1,26 @@
-SFX_Cry1B_3_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 247, 192, 6
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 4, 244, 240, 6
- unknownsfx0x20 4, 228, 224, 6
- unknownsfx0x20 8, 209, 208, 6
- endchannel
+SFX_Cry1B_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1728
+ square_note 15, 14, 7, 1792
+ square_note 4, 15, 4, 1776
+ square_note 4, 14, 4, 1760
+ square_note 8, 13, 1, 1744
+ sound_ret
-SFX_Cry1B_3_Ch2:
- dutycycle 10
- unknownsfx0x20 7, 230, 129, 6
- unknownsfx0x20 14, 213, 193, 6
- unknownsfx0x20 4, 196, 177, 6
- unknownsfx0x20 4, 212, 161, 6
- unknownsfx0x20 8, 193, 145, 6
- endchannel
+SFX_Cry1B_3_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 7, 14, 6, 1665
+ square_note 14, 13, 5, 1729
+ square_note 4, 12, 4, 1713
+ square_note 4, 13, 4, 1697
+ square_note 8, 12, 1, 1681
+ sound_ret
-SFX_Cry1B_3_Ch3:
- unknownnoise0x20 10, 166, 60
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 5, 163, 60
- unknownnoise0x20 8, 145, 44
- endchannel
+SFX_Cry1B_3_Ch8:
+ noise_note 10, 10, 6, 60
+ noise_note 14, 9, 4, 44
+ noise_note 5, 10, 3, 60
+ noise_note 8, 9, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry1c_1.asm b/audio/sfx/cry1c_1.asm
index 1561353e..929835a5 100644
--- a/audio/sfx/cry1c_1.asm
+++ b/audio/sfx/cry1c_1.asm
@@ -1,31 +1,31 @@
-SFX_Cry1C_1_Ch1:
- dutycycle 245
- unknownsfx0x20 7, 214, 225, 7
- unknownsfx0x20 6, 198, 226, 7
- unknownsfx0x20 9, 214, 225, 7
- unknownsfx0x20 7, 198, 224, 7
- unknownsfx0x20 5, 182, 226, 7
- unknownsfx0x20 7, 198, 225, 7
- unknownsfx0x20 6, 182, 224, 7
- unknownsfx0x20 8, 161, 223, 7
- endchannel
+SFX_Cry1C_1_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 7, 13, 6, 2017
+ square_note 6, 12, 6, 2018
+ square_note 9, 13, 6, 2017
+ square_note 7, 12, 6, 2016
+ square_note 5, 11, 6, 2018
+ square_note 7, 12, 6, 2017
+ square_note 6, 11, 6, 2016
+ square_note 8, 10, 1, 2015
+ sound_ret
-SFX_Cry1C_1_Ch2:
- dutycycle 68
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 6, 179, 199, 7
- unknownsfx0x20 10, 196, 195, 7
- unknownsfx0x20 8, 180, 199, 7
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 15, 162, 197, 7
- endchannel
+SFX_Cry1C_1_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 6, 12, 3, 1993
+ square_note 6, 11, 3, 1991
+ square_note 10, 12, 4, 1987
+ square_note 8, 11, 4, 1991
+ square_note 6, 12, 3, 1993
+ square_note 15, 10, 2, 1989
+ sound_ret
-SFX_Cry1C_1_Ch3:
- unknownnoise0x20 13, 25, 124
- unknownnoise0x20 13, 247, 140
- unknownnoise0x20 12, 214, 124
- unknownnoise0x20 8, 196, 108
- unknownnoise0x20 15, 179, 92
- endchannel
+SFX_Cry1C_1_Ch8:
+ noise_note 13, 1, -1, 124
+ noise_note 13, 15, 7, 140
+ noise_note 12, 13, 6, 124
+ noise_note 8, 12, 4, 108
+ noise_note 15, 11, 3, 92
+ sound_ret
diff --git a/audio/sfx/cry1c_2.asm b/audio/sfx/cry1c_2.asm
index c589a24d..c9f23916 100644
--- a/audio/sfx/cry1c_2.asm
+++ b/audio/sfx/cry1c_2.asm
@@ -1,31 +1,31 @@
-SFX_Cry1C_2_Ch1:
- dutycycle 245
- unknownsfx0x20 7, 214, 225, 7
- unknownsfx0x20 6, 198, 226, 7
- unknownsfx0x20 9, 214, 225, 7
- unknownsfx0x20 7, 198, 224, 7
- unknownsfx0x20 5, 182, 226, 7
- unknownsfx0x20 7, 198, 225, 7
- unknownsfx0x20 6, 182, 224, 7
- unknownsfx0x20 8, 161, 223, 7
- endchannel
+SFX_Cry1C_2_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 7, 13, 6, 2017
+ square_note 6, 12, 6, 2018
+ square_note 9, 13, 6, 2017
+ square_note 7, 12, 6, 2016
+ square_note 5, 11, 6, 2018
+ square_note 7, 12, 6, 2017
+ square_note 6, 11, 6, 2016
+ square_note 8, 10, 1, 2015
+ sound_ret
-SFX_Cry1C_2_Ch2:
- dutycycle 68
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 6, 179, 199, 7
- unknownsfx0x20 10, 196, 195, 7
- unknownsfx0x20 8, 180, 199, 7
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 15, 162, 197, 7
- endchannel
+SFX_Cry1C_2_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 6, 12, 3, 1993
+ square_note 6, 11, 3, 1991
+ square_note 10, 12, 4, 1987
+ square_note 8, 11, 4, 1991
+ square_note 6, 12, 3, 1993
+ square_note 15, 10, 2, 1989
+ sound_ret
-SFX_Cry1C_2_Ch3:
- unknownnoise0x20 13, 25, 124
- unknownnoise0x20 13, 247, 140
- unknownnoise0x20 12, 214, 124
- unknownnoise0x20 8, 196, 108
- unknownnoise0x20 15, 179, 92
- endchannel
+SFX_Cry1C_2_Ch8:
+ noise_note 13, 1, -1, 124
+ noise_note 13, 15, 7, 140
+ noise_note 12, 13, 6, 124
+ noise_note 8, 12, 4, 108
+ noise_note 15, 11, 3, 92
+ sound_ret
diff --git a/audio/sfx/cry1c_3.asm b/audio/sfx/cry1c_3.asm
index 930e3368..7b18f038 100644
--- a/audio/sfx/cry1c_3.asm
+++ b/audio/sfx/cry1c_3.asm
@@ -1,31 +1,31 @@
-SFX_Cry1C_3_Ch1:
- dutycycle 245
- unknownsfx0x20 7, 214, 225, 7
- unknownsfx0x20 6, 198, 226, 7
- unknownsfx0x20 9, 214, 225, 7
- unknownsfx0x20 7, 198, 224, 7
- unknownsfx0x20 5, 182, 226, 7
- unknownsfx0x20 7, 198, 225, 7
- unknownsfx0x20 6, 182, 224, 7
- unknownsfx0x20 8, 161, 223, 7
- endchannel
+SFX_Cry1C_3_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 7, 13, 6, 2017
+ square_note 6, 12, 6, 2018
+ square_note 9, 13, 6, 2017
+ square_note 7, 12, 6, 2016
+ square_note 5, 11, 6, 2018
+ square_note 7, 12, 6, 2017
+ square_note 6, 11, 6, 2016
+ square_note 8, 10, 1, 2015
+ sound_ret
-SFX_Cry1C_3_Ch2:
- dutycycle 68
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 6, 179, 199, 7
- unknownsfx0x20 10, 196, 195, 7
- unknownsfx0x20 8, 180, 199, 7
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 15, 162, 197, 7
- endchannel
+SFX_Cry1C_3_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 6, 12, 3, 1993
+ square_note 6, 11, 3, 1991
+ square_note 10, 12, 4, 1987
+ square_note 8, 11, 4, 1991
+ square_note 6, 12, 3, 1993
+ square_note 15, 10, 2, 1989
+ sound_ret
-SFX_Cry1C_3_Ch3:
- unknownnoise0x20 13, 25, 124
- unknownnoise0x20 13, 247, 140
- unknownnoise0x20 12, 214, 124
- unknownnoise0x20 8, 196, 108
- unknownnoise0x20 15, 179, 92
- endchannel
+SFX_Cry1C_3_Ch8:
+ noise_note 13, 1, -1, 124
+ noise_note 13, 15, 7, 140
+ noise_note 12, 13, 6, 124
+ noise_note 8, 12, 4, 108
+ noise_note 15, 11, 3, 92
+ sound_ret
diff --git a/audio/sfx/cry1d_1.asm b/audio/sfx/cry1d_1.asm
index 6b8b3f79..a532ec5c 100644
--- a/audio/sfx/cry1d_1.asm
+++ b/audio/sfx/cry1d_1.asm
@@ -1,29 +1,29 @@
-SFX_Cry1D_1_Ch1:
- dutycycle 244
- unknownsfx0x20 15, 240, 5, 7
- unknownsfx0x20 10, 224, 0, 7
- unknownsfx0x20 6, 180, 16, 7
- unknownsfx0x20 4, 211, 0, 7
- unknownsfx0x20 6, 178, 32, 6
- unknownsfx0x20 8, 161, 36, 6
- endchannel
+SFX_Cry1D_1_Ch5:
+ duty_cycle_pattern 3, 3, 1, 0
+ square_note 15, 15, 0, 1797
+ square_note 10, 14, 0, 1792
+ square_note 6, 11, 4, 1808
+ square_note 4, 13, 3, 1792
+ square_note 6, 11, 2, 1568
+ square_note 8, 10, 1, 1572
+ sound_ret
-SFX_Cry1D_1_Ch2:
- dutycycle 34
- unknownsfx0x20 15, 176, 195, 6
- unknownsfx0x20 10, 160, 193, 6
- unknownsfx0x20 6, 132, 210, 6
- unknownsfx0x20 4, 147, 193, 6
- unknownsfx0x20 6, 130, 225, 5
- unknownsfx0x20 8, 97, 232, 5
- endchannel
+SFX_Cry1D_1_Ch6:
+ duty_cycle_pattern 0, 2, 0, 2
+ square_note 15, 11, 0, 1731
+ square_note 10, 10, 0, 1729
+ square_note 6, 8, 4, 1746
+ square_note 4, 9, 3, 1729
+ square_note 6, 8, 2, 1505
+ square_note 8, 6, 1, 1512
+ sound_ret
-SFX_Cry1D_1_Ch3:
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 15, 214, 60
- unknownnoise0x20 10, 197, 74
- unknownnoise0x20 1, 178, 91
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Cry1D_1_Ch8:
+ noise_note 6, 14, 6, 76
+ noise_note 15, 13, 6, 60
+ noise_note 10, 12, 5, 74
+ noise_note 1, 11, 2, 91
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry1d_2.asm b/audio/sfx/cry1d_2.asm
index 31fccb8d..c919ba1e 100644
--- a/audio/sfx/cry1d_2.asm
+++ b/audio/sfx/cry1d_2.asm
@@ -1,29 +1,29 @@
-SFX_Cry1D_2_Ch1:
- dutycycle 244
- unknownsfx0x20 15, 240, 5, 7
- unknownsfx0x20 10, 224, 0, 7
- unknownsfx0x20 6, 180, 16, 7
- unknownsfx0x20 4, 211, 0, 7
- unknownsfx0x20 6, 178, 32, 6
- unknownsfx0x20 8, 161, 36, 6
- endchannel
+SFX_Cry1D_2_Ch5:
+ duty_cycle_pattern 3, 3, 1, 0
+ square_note 15, 15, 0, 1797
+ square_note 10, 14, 0, 1792
+ square_note 6, 11, 4, 1808
+ square_note 4, 13, 3, 1792
+ square_note 6, 11, 2, 1568
+ square_note 8, 10, 1, 1572
+ sound_ret
-SFX_Cry1D_2_Ch2:
- dutycycle 34
- unknownsfx0x20 15, 176, 195, 6
- unknownsfx0x20 10, 160, 193, 6
- unknownsfx0x20 6, 132, 210, 6
- unknownsfx0x20 4, 147, 193, 6
- unknownsfx0x20 6, 130, 225, 5
- unknownsfx0x20 8, 97, 232, 5
- endchannel
+SFX_Cry1D_2_Ch6:
+ duty_cycle_pattern 0, 2, 0, 2
+ square_note 15, 11, 0, 1731
+ square_note 10, 10, 0, 1729
+ square_note 6, 8, 4, 1746
+ square_note 4, 9, 3, 1729
+ square_note 6, 8, 2, 1505
+ square_note 8, 6, 1, 1512
+ sound_ret
-SFX_Cry1D_2_Ch3:
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 15, 214, 60
- unknownnoise0x20 10, 197, 74
- unknownnoise0x20 1, 178, 91
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Cry1D_2_Ch8:
+ noise_note 6, 14, 6, 76
+ noise_note 15, 13, 6, 60
+ noise_note 10, 12, 5, 74
+ noise_note 1, 11, 2, 91
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry1d_3.asm b/audio/sfx/cry1d_3.asm
index fbbe9ca5..47e38997 100644
--- a/audio/sfx/cry1d_3.asm
+++ b/audio/sfx/cry1d_3.asm
@@ -1,29 +1,29 @@
-SFX_Cry1D_3_Ch1:
- dutycycle 244
- unknownsfx0x20 15, 240, 5, 7
- unknownsfx0x20 10, 224, 0, 7
- unknownsfx0x20 6, 180, 16, 7
- unknownsfx0x20 4, 211, 0, 7
- unknownsfx0x20 6, 178, 32, 6
- unknownsfx0x20 8, 161, 36, 6
- endchannel
+SFX_Cry1D_3_Ch5:
+ duty_cycle_pattern 3, 3, 1, 0
+ square_note 15, 15, 0, 1797
+ square_note 10, 14, 0, 1792
+ square_note 6, 11, 4, 1808
+ square_note 4, 13, 3, 1792
+ square_note 6, 11, 2, 1568
+ square_note 8, 10, 1, 1572
+ sound_ret
-SFX_Cry1D_3_Ch2:
- dutycycle 34
- unknownsfx0x20 15, 176, 195, 6
- unknownsfx0x20 10, 160, 193, 6
- unknownsfx0x20 6, 132, 210, 6
- unknownsfx0x20 4, 147, 193, 6
- unknownsfx0x20 6, 130, 225, 5
- unknownsfx0x20 8, 97, 232, 5
- endchannel
+SFX_Cry1D_3_Ch6:
+ duty_cycle_pattern 0, 2, 0, 2
+ square_note 15, 11, 0, 1731
+ square_note 10, 10, 0, 1729
+ square_note 6, 8, 4, 1746
+ square_note 4, 9, 3, 1729
+ square_note 6, 8, 2, 1505
+ square_note 8, 6, 1, 1512
+ sound_ret
-SFX_Cry1D_3_Ch3:
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 15, 214, 60
- unknownnoise0x20 10, 197, 74
- unknownnoise0x20 1, 178, 91
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Cry1D_3_Ch8:
+ noise_note 6, 14, 6, 76
+ noise_note 15, 13, 6, 60
+ noise_note 10, 12, 5, 74
+ noise_note 1, 11, 2, 91
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/cry1e_1.asm b/audio/sfx/cry1e_1.asm
index 9501a06a..19634a5e 100644
--- a/audio/sfx/cry1e_1.asm
+++ b/audio/sfx/cry1e_1.asm
@@ -1,38 +1,38 @@
-SFX_Cry1E_1_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 242, 0, 6
- unknownsfx0x20 6, 226, 64, 6
- unknownsfx0x20 6, 210, 128, 6
- unknownsfx0x20 6, 226, 192, 6
- unknownsfx0x20 6, 210, 0, 7
- unknownsfx0x20 6, 194, 64, 7
- unknownsfx0x20 6, 178, 128, 7
- unknownsfx0x20 8, 161, 192, 7
- endchannel
+SFX_Cry1E_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 2, 1536
+ square_note 6, 14, 2, 1600
+ square_note 6, 13, 2, 1664
+ square_note 6, 14, 2, 1728
+ square_note 6, 13, 2, 1792
+ square_note 6, 12, 2, 1856
+ square_note 6, 11, 2, 1920
+ square_note 8, 10, 1, 1984
+ sound_ret
-SFX_Cry1E_1_Ch2:
- dutycycle 17
- unknownsfx0x20 3, 8, 1, 0
- unknownsfx0x20 6, 194, 193, 5
- unknownsfx0x20 6, 178, 2, 6
- unknownsfx0x20 6, 162, 65, 6
- unknownsfx0x20 6, 178, 130, 6
- unknownsfx0x20 6, 162, 194, 6
- unknownsfx0x20 6, 146, 1, 7
- unknownsfx0x20 6, 162, 66, 7
- unknownsfx0x20 8, 129, 129, 7
- endchannel
+SFX_Cry1E_1_Ch6:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 3, 0, 8, 1
+ square_note 6, 12, 2, 1473
+ square_note 6, 11, 2, 1538
+ square_note 6, 10, 2, 1601
+ square_note 6, 11, 2, 1666
+ square_note 6, 10, 2, 1730
+ square_note 6, 9, 2, 1793
+ square_note 6, 10, 2, 1858
+ square_note 8, 8, 1, 1921
+ sound_ret
-SFX_Cry1E_1_Ch3:
- unknownnoise0x20 6, 8, 1
- unknownnoise0x20 5, 226, 92
- unknownnoise0x20 5, 194, 76
- unknownnoise0x20 5, 210, 60
- unknownnoise0x20 5, 178, 44
- unknownnoise0x20 5, 194, 28
- unknownnoise0x20 5, 162, 27
- unknownnoise0x20 5, 146, 26
- unknownnoise0x20 8, 129, 24
- endchannel
+SFX_Cry1E_1_Ch8:
+ noise_note 6, 0, 8, 1
+ noise_note 5, 14, 2, 92
+ noise_note 5, 12, 2, 76
+ noise_note 5, 13, 2, 60
+ noise_note 5, 11, 2, 44
+ noise_note 5, 12, 2, 28
+ noise_note 5, 10, 2, 27
+ noise_note 5, 9, 2, 26
+ noise_note 8, 8, 1, 24
+ sound_ret
diff --git a/audio/sfx/cry1e_2.asm b/audio/sfx/cry1e_2.asm
index fe112101..74004489 100644
--- a/audio/sfx/cry1e_2.asm
+++ b/audio/sfx/cry1e_2.asm
@@ -1,38 +1,38 @@
-SFX_Cry1E_2_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 242, 0, 6
- unknownsfx0x20 6, 226, 64, 6
- unknownsfx0x20 6, 210, 128, 6
- unknownsfx0x20 6, 226, 192, 6
- unknownsfx0x20 6, 210, 0, 7
- unknownsfx0x20 6, 194, 64, 7
- unknownsfx0x20 6, 178, 128, 7
- unknownsfx0x20 8, 161, 192, 7
- endchannel
+SFX_Cry1E_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 2, 1536
+ square_note 6, 14, 2, 1600
+ square_note 6, 13, 2, 1664
+ square_note 6, 14, 2, 1728
+ square_note 6, 13, 2, 1792
+ square_note 6, 12, 2, 1856
+ square_note 6, 11, 2, 1920
+ square_note 8, 10, 1, 1984
+ sound_ret
-SFX_Cry1E_2_Ch2:
- dutycycle 17
- unknownsfx0x20 3, 8, 1, 0
- unknownsfx0x20 6, 194, 193, 5
- unknownsfx0x20 6, 178, 2, 6
- unknownsfx0x20 6, 162, 65, 6
- unknownsfx0x20 6, 178, 130, 6
- unknownsfx0x20 6, 162, 194, 6
- unknownsfx0x20 6, 146, 1, 7
- unknownsfx0x20 6, 162, 66, 7
- unknownsfx0x20 8, 129, 129, 7
- endchannel
+SFX_Cry1E_2_Ch6:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 3, 0, 8, 1
+ square_note 6, 12, 2, 1473
+ square_note 6, 11, 2, 1538
+ square_note 6, 10, 2, 1601
+ square_note 6, 11, 2, 1666
+ square_note 6, 10, 2, 1730
+ square_note 6, 9, 2, 1793
+ square_note 6, 10, 2, 1858
+ square_note 8, 8, 1, 1921
+ sound_ret
-SFX_Cry1E_2_Ch3:
- unknownnoise0x20 6, 8, 1
- unknownnoise0x20 5, 226, 92
- unknownnoise0x20 5, 194, 76
- unknownnoise0x20 5, 210, 60
- unknownnoise0x20 5, 178, 44
- unknownnoise0x20 5, 194, 28
- unknownnoise0x20 5, 162, 27
- unknownnoise0x20 5, 146, 26
- unknownnoise0x20 8, 129, 24
- endchannel
+SFX_Cry1E_2_Ch8:
+ noise_note 6, 0, 8, 1
+ noise_note 5, 14, 2, 92
+ noise_note 5, 12, 2, 76
+ noise_note 5, 13, 2, 60
+ noise_note 5, 11, 2, 44
+ noise_note 5, 12, 2, 28
+ noise_note 5, 10, 2, 27
+ noise_note 5, 9, 2, 26
+ noise_note 8, 8, 1, 24
+ sound_ret
diff --git a/audio/sfx/cry1e_3.asm b/audio/sfx/cry1e_3.asm
index f5bdbe08..357c2f71 100644
--- a/audio/sfx/cry1e_3.asm
+++ b/audio/sfx/cry1e_3.asm
@@ -1,38 +1,38 @@
-SFX_Cry1E_3_Ch1:
- dutycycle 240
- unknownsfx0x20 6, 242, 0, 6
- unknownsfx0x20 6, 226, 64, 6
- unknownsfx0x20 6, 210, 128, 6
- unknownsfx0x20 6, 226, 192, 6
- unknownsfx0x20 6, 210, 0, 7
- unknownsfx0x20 6, 194, 64, 7
- unknownsfx0x20 6, 178, 128, 7
- unknownsfx0x20 8, 161, 192, 7
- endchannel
+SFX_Cry1E_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 2, 1536
+ square_note 6, 14, 2, 1600
+ square_note 6, 13, 2, 1664
+ square_note 6, 14, 2, 1728
+ square_note 6, 13, 2, 1792
+ square_note 6, 12, 2, 1856
+ square_note 6, 11, 2, 1920
+ square_note 8, 10, 1, 1984
+ sound_ret
-SFX_Cry1E_3_Ch2:
- dutycycle 17
- unknownsfx0x20 3, 8, 1, 0
- unknownsfx0x20 6, 194, 193, 5
- unknownsfx0x20 6, 178, 2, 6
- unknownsfx0x20 6, 162, 65, 6
- unknownsfx0x20 6, 178, 130, 6
- unknownsfx0x20 6, 162, 194, 6
- unknownsfx0x20 6, 146, 1, 7
- unknownsfx0x20 6, 162, 66, 7
- unknownsfx0x20 8, 129, 129, 7
- endchannel
+SFX_Cry1E_3_Ch6:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 3, 0, 8, 1
+ square_note 6, 12, 2, 1473
+ square_note 6, 11, 2, 1538
+ square_note 6, 10, 2, 1601
+ square_note 6, 11, 2, 1666
+ square_note 6, 10, 2, 1730
+ square_note 6, 9, 2, 1793
+ square_note 6, 10, 2, 1858
+ square_note 8, 8, 1, 1921
+ sound_ret
-SFX_Cry1E_3_Ch3:
- unknownnoise0x20 6, 8, 1
- unknownnoise0x20 5, 226, 92
- unknownnoise0x20 5, 194, 76
- unknownnoise0x20 5, 210, 60
- unknownnoise0x20 5, 178, 44
- unknownnoise0x20 5, 194, 28
- unknownnoise0x20 5, 162, 27
- unknownnoise0x20 5, 146, 26
- unknownnoise0x20 8, 129, 24
- endchannel
+SFX_Cry1E_3_Ch8:
+ noise_note 6, 0, 8, 1
+ noise_note 5, 14, 2, 92
+ noise_note 5, 12, 2, 76
+ noise_note 5, 13, 2, 60
+ noise_note 5, 11, 2, 44
+ noise_note 5, 12, 2, 28
+ noise_note 5, 10, 2, 27
+ noise_note 5, 9, 2, 26
+ noise_note 8, 8, 1, 24
+ sound_ret
diff --git a/audio/sfx/cry1f_1.asm b/audio/sfx/cry1f_1.asm
index 28b91c61..1f5b3a8d 100644
--- a/audio/sfx/cry1f_1.asm
+++ b/audio/sfx/cry1f_1.asm
@@ -1,24 +1,24 @@
-SFX_Cry1F_1_Ch1:
- dutycycle 165
- unknownsfx0x20 3, 244, 65, 6
- unknownsfx0x20 13, 214, 33, 7
- unknownsfx0x20 8, 244, 25, 7
- unknownsfx0x20 8, 193, 26, 7
- endchannel
+SFX_Cry1F_1_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 3, 15, 4, 1601
+ square_note 13, 13, 6, 1825
+ square_note 8, 15, 4, 1817
+ square_note 8, 12, 1, 1818
+ sound_ret
-SFX_Cry1F_1_Ch2:
- dutycycle 204
- unknownsfx0x20 4, 244, 128, 5
- unknownsfx0x20 14, 230, 224, 6
- unknownsfx0x20 8, 213, 216, 6
- unknownsfx0x20 8, 209, 220, 6
- endchannel
+SFX_Cry1F_1_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 4, 1408
+ square_note 14, 14, 6, 1760
+ square_note 8, 13, 5, 1752
+ square_note 8, 13, 1, 1756
+ sound_ret
-SFX_Cry1F_1_Ch3:
- unknownnoise0x20 5, 196, 70
- unknownnoise0x20 13, 165, 68
- unknownnoise0x20 8, 196, 69
- unknownnoise0x20 8, 177, 68
- endchannel
+SFX_Cry1F_1_Ch8:
+ noise_note 5, 12, 4, 70
+ noise_note 13, 10, 5, 68
+ noise_note 8, 12, 4, 69
+ noise_note 8, 11, 1, 68
+ sound_ret
diff --git a/audio/sfx/cry1f_2.asm b/audio/sfx/cry1f_2.asm
index 9691654f..99f3a056 100644
--- a/audio/sfx/cry1f_2.asm
+++ b/audio/sfx/cry1f_2.asm
@@ -1,24 +1,24 @@
-SFX_Cry1F_2_Ch1:
- dutycycle 165
- unknownsfx0x20 3, 244, 65, 6
- unknownsfx0x20 13, 214, 33, 7
- unknownsfx0x20 8, 244, 25, 7
- unknownsfx0x20 8, 193, 26, 7
- endchannel
+SFX_Cry1F_2_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 3, 15, 4, 1601
+ square_note 13, 13, 6, 1825
+ square_note 8, 15, 4, 1817
+ square_note 8, 12, 1, 1818
+ sound_ret
-SFX_Cry1F_2_Ch2:
- dutycycle 204
- unknownsfx0x20 4, 244, 128, 5
- unknownsfx0x20 14, 230, 224, 6
- unknownsfx0x20 8, 213, 216, 6
- unknownsfx0x20 8, 209, 220, 6
- endchannel
+SFX_Cry1F_2_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 4, 1408
+ square_note 14, 14, 6, 1760
+ square_note 8, 13, 5, 1752
+ square_note 8, 13, 1, 1756
+ sound_ret
-SFX_Cry1F_2_Ch3:
- unknownnoise0x20 5, 196, 70
- unknownnoise0x20 13, 165, 68
- unknownnoise0x20 8, 196, 69
- unknownnoise0x20 8, 177, 68
- endchannel
+SFX_Cry1F_2_Ch8:
+ noise_note 5, 12, 4, 70
+ noise_note 13, 10, 5, 68
+ noise_note 8, 12, 4, 69
+ noise_note 8, 11, 1, 68
+ sound_ret
diff --git a/audio/sfx/cry1f_3.asm b/audio/sfx/cry1f_3.asm
index 3c50327b..c9cf5441 100644
--- a/audio/sfx/cry1f_3.asm
+++ b/audio/sfx/cry1f_3.asm
@@ -1,24 +1,24 @@
-SFX_Cry1F_3_Ch1:
- dutycycle 165
- unknownsfx0x20 3, 244, 65, 6
- unknownsfx0x20 13, 214, 33, 7
- unknownsfx0x20 8, 244, 25, 7
- unknownsfx0x20 8, 193, 26, 7
- endchannel
+SFX_Cry1F_3_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 3, 15, 4, 1601
+ square_note 13, 13, 6, 1825
+ square_note 8, 15, 4, 1817
+ square_note 8, 12, 1, 1818
+ sound_ret
-SFX_Cry1F_3_Ch2:
- dutycycle 204
- unknownsfx0x20 4, 244, 128, 5
- unknownsfx0x20 14, 230, 224, 6
- unknownsfx0x20 8, 213, 216, 6
- unknownsfx0x20 8, 209, 220, 6
- endchannel
+SFX_Cry1F_3_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 4, 1408
+ square_note 14, 14, 6, 1760
+ square_note 8, 13, 5, 1752
+ square_note 8, 13, 1, 1756
+ sound_ret
-SFX_Cry1F_3_Ch3:
- unknownnoise0x20 5, 196, 70
- unknownnoise0x20 13, 165, 68
- unknownnoise0x20 8, 196, 69
- unknownnoise0x20 8, 177, 68
- endchannel
+SFX_Cry1F_3_Ch8:
+ noise_note 5, 12, 4, 70
+ noise_note 13, 10, 5, 68
+ noise_note 8, 12, 4, 69
+ noise_note 8, 11, 1, 68
+ sound_ret
diff --git a/audio/sfx/cry20_1.asm b/audio/sfx/cry20_1.asm
index 0e9ffb00..15a160ae 100644
--- a/audio/sfx/cry20_1.asm
+++ b/audio/sfx/cry20_1.asm
@@ -1,24 +1,24 @@
-SFX_Cry20_1_Ch1:
- dutycycle 240
- unknownsfx0x20 13, 241, 17, 5
- unknownsfx0x20 13, 225, 21, 5
- unknownsfx0x20 13, 225, 17, 5
- unknownsfx0x20 8, 209, 17, 5
- endchannel
+SFX_Cry20_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 13, 15, 1, 1297
+ square_note 13, 14, 1, 1301
+ square_note 13, 14, 1, 1297
+ square_note 8, 13, 1, 1297
+ sound_ret
-SFX_Cry20_1_Ch2:
- dutycycle 21
- unknownsfx0x20 12, 225, 12, 5
- unknownsfx0x20 12, 209, 16, 5
- unknownsfx0x20 14, 193, 12, 5
- unknownsfx0x20 8, 193, 10, 5
- endchannel
+SFX_Cry20_1_Ch6:
+ duty_cycle_pattern 0, 1, 1, 1
+ square_note 12, 14, 1, 1292
+ square_note 12, 13, 1, 1296
+ square_note 14, 12, 1, 1292
+ square_note 8, 12, 1, 1290
+ sound_ret
-SFX_Cry20_1_Ch3:
- unknownnoise0x20 14, 242, 101
- unknownnoise0x20 13, 226, 85
- unknownnoise0x20 14, 210, 86
- unknownnoise0x20 8, 209, 102
- endchannel
+SFX_Cry20_1_Ch8:
+ noise_note 14, 15, 2, 101
+ noise_note 13, 14, 2, 85
+ noise_note 14, 13, 2, 86
+ noise_note 8, 13, 1, 102
+ sound_ret
diff --git a/audio/sfx/cry20_2.asm b/audio/sfx/cry20_2.asm
index 91891b4f..281e478c 100644
--- a/audio/sfx/cry20_2.asm
+++ b/audio/sfx/cry20_2.asm
@@ -1,24 +1,24 @@
-SFX_Cry20_2_Ch1:
- dutycycle 240
- unknownsfx0x20 13, 241, 17, 5
- unknownsfx0x20 13, 225, 21, 5
- unknownsfx0x20 13, 225, 17, 5
- unknownsfx0x20 8, 209, 17, 5
- endchannel
+SFX_Cry20_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 13, 15, 1, 1297
+ square_note 13, 14, 1, 1301
+ square_note 13, 14, 1, 1297
+ square_note 8, 13, 1, 1297
+ sound_ret
-SFX_Cry20_2_Ch2:
- dutycycle 21
- unknownsfx0x20 12, 225, 12, 5
- unknownsfx0x20 12, 209, 16, 5
- unknownsfx0x20 14, 193, 12, 5
- unknownsfx0x20 8, 193, 10, 5
- endchannel
+SFX_Cry20_2_Ch6:
+ duty_cycle_pattern 0, 1, 1, 1
+ square_note 12, 14, 1, 1292
+ square_note 12, 13, 1, 1296
+ square_note 14, 12, 1, 1292
+ square_note 8, 12, 1, 1290
+ sound_ret
-SFX_Cry20_2_Ch3:
- unknownnoise0x20 14, 242, 101
- unknownnoise0x20 13, 226, 85
- unknownnoise0x20 14, 210, 86
- unknownnoise0x20 8, 209, 102
- endchannel
+SFX_Cry20_2_Ch8:
+ noise_note 14, 15, 2, 101
+ noise_note 13, 14, 2, 85
+ noise_note 14, 13, 2, 86
+ noise_note 8, 13, 1, 102
+ sound_ret
diff --git a/audio/sfx/cry20_3.asm b/audio/sfx/cry20_3.asm
index 1fae1bb3..8191ca6e 100644
--- a/audio/sfx/cry20_3.asm
+++ b/audio/sfx/cry20_3.asm
@@ -1,24 +1,24 @@
-SFX_Cry20_3_Ch1:
- dutycycle 240
- unknownsfx0x20 13, 241, 17, 5
- unknownsfx0x20 13, 225, 21, 5
- unknownsfx0x20 13, 225, 17, 5
- unknownsfx0x20 8, 209, 17, 5
- endchannel
+SFX_Cry20_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 13, 15, 1, 1297
+ square_note 13, 14, 1, 1301
+ square_note 13, 14, 1, 1297
+ square_note 8, 13, 1, 1297
+ sound_ret
-SFX_Cry20_3_Ch2:
- dutycycle 21
- unknownsfx0x20 12, 225, 12, 5
- unknownsfx0x20 12, 209, 16, 5
- unknownsfx0x20 14, 193, 12, 5
- unknownsfx0x20 8, 193, 10, 5
- endchannel
+SFX_Cry20_3_Ch6:
+ duty_cycle_pattern 0, 1, 1, 1
+ square_note 12, 14, 1, 1292
+ square_note 12, 13, 1, 1296
+ square_note 14, 12, 1, 1292
+ square_note 8, 12, 1, 1290
+ sound_ret
-SFX_Cry20_3_Ch3:
- unknownnoise0x20 14, 242, 101
- unknownnoise0x20 13, 226, 85
- unknownnoise0x20 14, 210, 86
- unknownnoise0x20 8, 209, 102
- endchannel
+SFX_Cry20_3_Ch8:
+ noise_note 14, 15, 2, 101
+ noise_note 13, 14, 2, 85
+ noise_note 14, 13, 2, 86
+ noise_note 8, 13, 1, 102
+ sound_ret
diff --git a/audio/sfx/cry21_1.asm b/audio/sfx/cry21_1.asm
index 17d1e16c..2cf517a8 100644
--- a/audio/sfx/cry21_1.asm
+++ b/audio/sfx/cry21_1.asm
@@ -1,27 +1,27 @@
-SFX_Cry21_1_Ch1:
- dutycycle 27
- unknownsfx0x20 3, 243, 100, 5
- unknownsfx0x20 2, 226, 68, 5
- unknownsfx0x20 5, 209, 34, 5
- unknownsfx0x20 2, 178, 132, 4
- unknownsfx0x20 8, 209, 162, 4
- unknownsfx0x20 3, 243, 36, 5
- unknownsfx0x20 4, 228, 228, 4
- unknownsfx0x20 8, 209, 2, 5
- endchannel
+SFX_Cry21_1_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 3, 15, 3, 1380
+ square_note 2, 14, 2, 1348
+ square_note 5, 13, 1, 1314
+ square_note 2, 11, 2, 1156
+ square_note 8, 13, 1, 1186
+ square_note 3, 15, 3, 1316
+ square_note 4, 14, 4, 1252
+ square_note 8, 13, 1, 1282
+ sound_ret
-SFX_Cry21_1_Ch2:
- dutycycle 204
- unknownsfx0x20 3, 211, 96, 5
- unknownsfx0x20 2, 194, 64, 5
- unknownsfx0x20 5, 193, 32, 5
- unknownsfx0x20 2, 146, 128, 4
- unknownsfx0x20 8, 193, 160, 4
- unknownsfx0x20 3, 211, 32, 5
- unknownsfx0x20 3, 196, 224, 4
- unknownsfx0x20 8, 193, 0, 5
+SFX_Cry21_1_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 13, 3, 1376
+ square_note 2, 12, 2, 1344
+ square_note 5, 12, 1, 1312
+ square_note 2, 9, 2, 1152
+ square_note 8, 12, 1, 1184
+ square_note 3, 13, 3, 1312
+ square_note 3, 12, 4, 1248
+ square_note 8, 12, 1, 1280
-SFX_Cry21_1_Ch3:
- endchannel
+SFX_Cry21_1_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry21_2.asm b/audio/sfx/cry21_2.asm
index 14856fc9..8136de63 100644
--- a/audio/sfx/cry21_2.asm
+++ b/audio/sfx/cry21_2.asm
@@ -1,27 +1,27 @@
-SFX_Cry21_2_Ch1:
- dutycycle 27
- unknownsfx0x20 3, 243, 100, 5
- unknownsfx0x20 2, 226, 68, 5
- unknownsfx0x20 5, 209, 34, 5
- unknownsfx0x20 2, 178, 132, 4
- unknownsfx0x20 8, 209, 162, 4
- unknownsfx0x20 3, 243, 36, 5
- unknownsfx0x20 4, 228, 228, 4
- unknownsfx0x20 8, 209, 2, 5
- endchannel
+SFX_Cry21_2_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 3, 15, 3, 1380
+ square_note 2, 14, 2, 1348
+ square_note 5, 13, 1, 1314
+ square_note 2, 11, 2, 1156
+ square_note 8, 13, 1, 1186
+ square_note 3, 15, 3, 1316
+ square_note 4, 14, 4, 1252
+ square_note 8, 13, 1, 1282
+ sound_ret
-SFX_Cry21_2_Ch2:
- dutycycle 204
- unknownsfx0x20 3, 211, 96, 5
- unknownsfx0x20 2, 194, 64, 5
- unknownsfx0x20 5, 193, 32, 5
- unknownsfx0x20 2, 146, 128, 4
- unknownsfx0x20 8, 193, 160, 4
- unknownsfx0x20 3, 211, 32, 5
- unknownsfx0x20 3, 196, 224, 4
- unknownsfx0x20 8, 193, 0, 5
+SFX_Cry21_2_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 13, 3, 1376
+ square_note 2, 12, 2, 1344
+ square_note 5, 12, 1, 1312
+ square_note 2, 9, 2, 1152
+ square_note 8, 12, 1, 1184
+ square_note 3, 13, 3, 1312
+ square_note 3, 12, 4, 1248
+ square_note 8, 12, 1, 1280
-SFX_Cry21_2_Ch3:
- endchannel
+SFX_Cry21_2_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry21_3.asm b/audio/sfx/cry21_3.asm
index 40cbf7f2..d829f9f2 100644
--- a/audio/sfx/cry21_3.asm
+++ b/audio/sfx/cry21_3.asm
@@ -1,27 +1,27 @@
-SFX_Cry21_3_Ch1:
- dutycycle 27
- unknownsfx0x20 3, 243, 100, 5
- unknownsfx0x20 2, 226, 68, 5
- unknownsfx0x20 5, 209, 34, 5
- unknownsfx0x20 2, 178, 132, 4
- unknownsfx0x20 8, 209, 162, 4
- unknownsfx0x20 3, 243, 36, 5
- unknownsfx0x20 4, 228, 228, 4
- unknownsfx0x20 8, 209, 2, 5
- endchannel
+SFX_Cry21_3_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 3, 15, 3, 1380
+ square_note 2, 14, 2, 1348
+ square_note 5, 13, 1, 1314
+ square_note 2, 11, 2, 1156
+ square_note 8, 13, 1, 1186
+ square_note 3, 15, 3, 1316
+ square_note 4, 14, 4, 1252
+ square_note 8, 13, 1, 1282
+ sound_ret
-SFX_Cry21_3_Ch2:
- dutycycle 204
- unknownsfx0x20 3, 211, 96, 5
- unknownsfx0x20 2, 194, 64, 5
- unknownsfx0x20 5, 193, 32, 5
- unknownsfx0x20 2, 146, 128, 4
- unknownsfx0x20 8, 193, 160, 4
- unknownsfx0x20 3, 211, 32, 5
- unknownsfx0x20 3, 196, 224, 4
- unknownsfx0x20 8, 193, 0, 5
+SFX_Cry21_3_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 13, 3, 1376
+ square_note 2, 12, 2, 1344
+ square_note 5, 12, 1, 1312
+ square_note 2, 9, 2, 1152
+ square_note 8, 12, 1, 1184
+ square_note 3, 13, 3, 1312
+ square_note 3, 12, 4, 1248
+ square_note 8, 12, 1, 1280
-SFX_Cry21_3_Ch3:
- endchannel
+SFX_Cry21_3_Ch8:
+ sound_ret
diff --git a/audio/sfx/cry22_1.asm b/audio/sfx/cry22_1.asm
index fb0c6b23..dd910103 100644
--- a/audio/sfx/cry22_1.asm
+++ b/audio/sfx/cry22_1.asm
@@ -1,24 +1,24 @@
-SFX_Cry22_1_Ch1:
- dutycycle 17
- unknownsfx0x20 2, 61, 129, 3
- unknownsfx0x20 7, 245, 1, 6
- unknownsfx0x20 1, 194, 129, 4
- unknownsfx0x20 8, 145, 129, 3
- endchannel
+SFX_Cry22_1_Ch5:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 2, 3, -5, 897
+ square_note 7, 15, 5, 1537
+ square_note 1, 12, 2, 1153
+ square_note 8, 9, 1, 897
+ sound_ret
-SFX_Cry22_1_Ch2:
- dutycycle 238
- unknownsfx0x20 2, 62, 176, 5
- unknownsfx0x20 7, 213, 93, 7
- unknownsfx0x20 1, 178, 176, 6
- unknownsfx0x20 8, 97, 176, 5
- endchannel
+SFX_Cry22_1_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 2, 3, -6, 1456
+ square_note 7, 13, 5, 1885
+ square_note 1, 11, 2, 1712
+ square_note 8, 6, 1, 1456
+ sound_ret
-SFX_Cry22_1_Ch3:
- unknownnoise0x20 2, 146, 73
- unknownnoise0x20 7, 181, 41
- unknownnoise0x20 1, 162, 57
- unknownnoise0x20 8, 145, 73
- endchannel
+SFX_Cry22_1_Ch8:
+ noise_note 2, 9, 2, 73
+ noise_note 7, 11, 5, 41
+ noise_note 1, 10, 2, 57
+ noise_note 8, 9, 1, 73
+ sound_ret
diff --git a/audio/sfx/cry22_2.asm b/audio/sfx/cry22_2.asm
index 7653234e..43e09d67 100644
--- a/audio/sfx/cry22_2.asm
+++ b/audio/sfx/cry22_2.asm
@@ -1,24 +1,24 @@
-SFX_Cry22_2_Ch1:
- dutycycle 17
- unknownsfx0x20 2, 61, 129, 3
- unknownsfx0x20 7, 245, 1, 6
- unknownsfx0x20 1, 194, 129, 4
- unknownsfx0x20 8, 145, 129, 3
- endchannel
+SFX_Cry22_2_Ch5:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 2, 3, -5, 897
+ square_note 7, 15, 5, 1537
+ square_note 1, 12, 2, 1153
+ square_note 8, 9, 1, 897
+ sound_ret
-SFX_Cry22_2_Ch2:
- dutycycle 238
- unknownsfx0x20 2, 62, 176, 5
- unknownsfx0x20 7, 213, 93, 7
- unknownsfx0x20 1, 178, 176, 6
- unknownsfx0x20 8, 97, 176, 5
- endchannel
+SFX_Cry22_2_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 2, 3, -6, 1456
+ square_note 7, 13, 5, 1885
+ square_note 1, 11, 2, 1712
+ square_note 8, 6, 1, 1456
+ sound_ret
-SFX_Cry22_2_Ch3:
- unknownnoise0x20 2, 146, 73
- unknownnoise0x20 7, 181, 41
- unknownnoise0x20 1, 162, 57
- unknownnoise0x20 8, 145, 73
- endchannel
+SFX_Cry22_2_Ch8:
+ noise_note 2, 9, 2, 73
+ noise_note 7, 11, 5, 41
+ noise_note 1, 10, 2, 57
+ noise_note 8, 9, 1, 73
+ sound_ret
diff --git a/audio/sfx/cry22_3.asm b/audio/sfx/cry22_3.asm
index 96fae832..397edba1 100644
--- a/audio/sfx/cry22_3.asm
+++ b/audio/sfx/cry22_3.asm
@@ -1,24 +1,24 @@
-SFX_Cry22_3_Ch1:
- dutycycle 17
- unknownsfx0x20 2, 61, 129, 3
- unknownsfx0x20 7, 245, 1, 6
- unknownsfx0x20 1, 194, 129, 4
- unknownsfx0x20 8, 145, 129, 3
- endchannel
+SFX_Cry22_3_Ch5:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 2, 3, -5, 897
+ square_note 7, 15, 5, 1537
+ square_note 1, 12, 2, 1153
+ square_note 8, 9, 1, 897
+ sound_ret
-SFX_Cry22_3_Ch2:
- dutycycle 238
- unknownsfx0x20 2, 62, 176, 5
- unknownsfx0x20 7, 213, 93, 7
- unknownsfx0x20 1, 178, 176, 6
- unknownsfx0x20 8, 97, 176, 5
- endchannel
+SFX_Cry22_3_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 2, 3, -6, 1456
+ square_note 7, 13, 5, 1885
+ square_note 1, 11, 2, 1712
+ square_note 8, 6, 1, 1456
+ sound_ret
-SFX_Cry22_3_Ch3:
- unknownnoise0x20 2, 146, 73
- unknownnoise0x20 7, 181, 41
- unknownnoise0x20 1, 162, 57
- unknownnoise0x20 8, 145, 73
- endchannel
+SFX_Cry22_3_Ch8:
+ noise_note 2, 9, 2, 73
+ noise_note 7, 11, 5, 41
+ noise_note 1, 10, 2, 57
+ noise_note 8, 9, 1, 73
+ sound_ret
diff --git a/audio/sfx/cry23_1.asm b/audio/sfx/cry23_1.asm
index 4aaa3bfa..5aeafe0f 100644
--- a/audio/sfx/cry23_1.asm
+++ b/audio/sfx/cry23_1.asm
@@ -1,25 +1,25 @@
-SFX_Cry23_1_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 192, 7
- unknownsfx0x20 6, 228, 193, 7
- unknownsfx0x20 10, 246, 192, 7
- unknownsfx0x20 4, 211, 194, 7
- unknownsfx0x20 8, 193, 192, 7
- endchannel
+SFX_Cry23_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1984
+ square_note 6, 14, 4, 1985
+ square_note 10, 15, 6, 1984
+ square_note 4, 13, 3, 1986
+ square_note 8, 12, 1, 1984
+ sound_ret
-SFX_Cry23_1_Ch2:
- dutycycle 95
- unknownsfx0x20 15, 151, 129, 7
- unknownsfx0x20 6, 132, 128, 7
- unknownsfx0x20 10, 150, 129, 7
- unknownsfx0x20 15, 131, 129, 7
- endchannel
+SFX_Cry23_1_Ch6:
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 15, 9, 7, 1921
+ square_note 6, 8, 4, 1920
+ square_note 10, 9, 6, 1921
+ square_note 15, 8, 3, 1921
+ sound_ret
-SFX_Cry23_1_Ch3:
- unknownnoise0x20 3, 242, 60
- unknownnoise0x20 13, 230, 44
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Cry23_1_Ch8:
+ noise_note 3, 15, 2, 60
+ noise_note 13, 14, 6, 44
+ noise_note 15, 13, 7, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry23_2.asm b/audio/sfx/cry23_2.asm
index 644b14cf..04e4136b 100644
--- a/audio/sfx/cry23_2.asm
+++ b/audio/sfx/cry23_2.asm
@@ -1,25 +1,25 @@
-SFX_Cry23_2_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 192, 7
- unknownsfx0x20 6, 228, 193, 7
- unknownsfx0x20 10, 246, 192, 7
- unknownsfx0x20 4, 211, 194, 7
- unknownsfx0x20 8, 193, 192, 7
- endchannel
+SFX_Cry23_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1984
+ square_note 6, 14, 4, 1985
+ square_note 10, 15, 6, 1984
+ square_note 4, 13, 3, 1986
+ square_note 8, 12, 1, 1984
+ sound_ret
-SFX_Cry23_2_Ch2:
- dutycycle 95
- unknownsfx0x20 15, 151, 129, 7
- unknownsfx0x20 6, 132, 128, 7
- unknownsfx0x20 10, 150, 129, 7
- unknownsfx0x20 15, 131, 129, 7
- endchannel
+SFX_Cry23_2_Ch6:
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 15, 9, 7, 1921
+ square_note 6, 8, 4, 1920
+ square_note 10, 9, 6, 1921
+ square_note 15, 8, 3, 1921
+ sound_ret
-SFX_Cry23_2_Ch3:
- unknownnoise0x20 3, 242, 60
- unknownnoise0x20 13, 230, 44
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Cry23_2_Ch8:
+ noise_note 3, 15, 2, 60
+ noise_note 13, 14, 6, 44
+ noise_note 15, 13, 7, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry23_3.asm b/audio/sfx/cry23_3.asm
index d86dfcd4..418e69bb 100644
--- a/audio/sfx/cry23_3.asm
+++ b/audio/sfx/cry23_3.asm
@@ -1,25 +1,25 @@
-SFX_Cry23_3_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 192, 7
- unknownsfx0x20 6, 228, 193, 7
- unknownsfx0x20 10, 246, 192, 7
- unknownsfx0x20 4, 211, 194, 7
- unknownsfx0x20 8, 193, 192, 7
- endchannel
+SFX_Cry23_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1984
+ square_note 6, 14, 4, 1985
+ square_note 10, 15, 6, 1984
+ square_note 4, 13, 3, 1986
+ square_note 8, 12, 1, 1984
+ sound_ret
-SFX_Cry23_3_Ch2:
- dutycycle 95
- unknownsfx0x20 15, 151, 129, 7
- unknownsfx0x20 6, 132, 128, 7
- unknownsfx0x20 10, 150, 129, 7
- unknownsfx0x20 15, 131, 129, 7
- endchannel
+SFX_Cry23_3_Ch6:
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 15, 9, 7, 1921
+ square_note 6, 8, 4, 1920
+ square_note 10, 9, 6, 1921
+ square_note 15, 8, 3, 1921
+ sound_ret
-SFX_Cry23_3_Ch3:
- unknownnoise0x20 3, 242, 60
- unknownnoise0x20 13, 230, 44
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Cry23_3_Ch8:
+ noise_note 3, 15, 2, 60
+ noise_note 13, 14, 6, 44
+ noise_note 15, 13, 7, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/cry24_1.asm b/audio/sfx/cry24_1.asm
index a94803c1..7e992707 100644
--- a/audio/sfx/cry24_1.asm
+++ b/audio/sfx/cry24_1.asm
@@ -1,33 +1,33 @@
-SFX_Cry24_1_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 128, 6
- unknownsfx0x20 10, 230, 132, 6
- unknownsfx0x20 15, 215, 144, 6
- unknownsfx0x20 8, 213, 144, 6
- unknownsfx0x20 6, 196, 136, 6
- unknownsfx0x20 5, 211, 112, 6
- unknownsfx0x20 4, 211, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Cry24_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1664
+ square_note 10, 14, 6, 1668
+ square_note 15, 13, 7, 1680
+ square_note 8, 13, 5, 1680
+ square_note 6, 12, 4, 1672
+ square_note 5, 13, 3, 1648
+ square_note 4, 13, 3, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_Cry24_1_Ch2:
- dutycycle 5
- unknownsfx0x20 15, 183, 65, 6
- unknownsfx0x20 10, 150, 66, 6
- unknownsfx0x20 15, 167, 81, 6
- unknownsfx0x20 8, 165, 81, 6
- unknownsfx0x20 6, 148, 71, 6
- unknownsfx0x20 5, 163, 49, 6
- unknownsfx0x20 4, 147, 34, 6
- unknownsfx0x20 8, 113, 1, 6
- endchannel
+SFX_Cry24_1_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 11, 7, 1601
+ square_note 10, 9, 6, 1602
+ square_note 15, 10, 7, 1617
+ square_note 8, 10, 5, 1617
+ square_note 6, 9, 4, 1607
+ square_note 5, 10, 3, 1585
+ square_note 4, 9, 3, 1570
+ square_note 8, 7, 1, 1537
+ sound_ret
-SFX_Cry24_1_Ch3:
- unknownnoise0x20 15, 228, 60
- unknownnoise0x20 10, 199, 76
- unknownnoise0x20 10, 199, 60
- unknownnoise0x20 12, 183, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Cry24_1_Ch8:
+ noise_note 15, 14, 4, 60
+ noise_note 10, 12, 7, 76
+ noise_note 10, 12, 7, 60
+ noise_note 12, 11, 7, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/cry24_2.asm b/audio/sfx/cry24_2.asm
index cc8b2f87..d845f6ed 100644
--- a/audio/sfx/cry24_2.asm
+++ b/audio/sfx/cry24_2.asm
@@ -1,33 +1,33 @@
-SFX_Cry24_2_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 128, 6
- unknownsfx0x20 10, 230, 132, 6
- unknownsfx0x20 15, 215, 144, 6
- unknownsfx0x20 8, 213, 144, 6
- unknownsfx0x20 6, 196, 136, 6
- unknownsfx0x20 5, 211, 112, 6
- unknownsfx0x20 4, 211, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Cry24_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1664
+ square_note 10, 14, 6, 1668
+ square_note 15, 13, 7, 1680
+ square_note 8, 13, 5, 1680
+ square_note 6, 12, 4, 1672
+ square_note 5, 13, 3, 1648
+ square_note 4, 13, 3, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_Cry24_2_Ch2:
- dutycycle 5
- unknownsfx0x20 15, 183, 65, 6
- unknownsfx0x20 10, 150, 66, 6
- unknownsfx0x20 15, 167, 81, 6
- unknownsfx0x20 8, 165, 81, 6
- unknownsfx0x20 6, 148, 71, 6
- unknownsfx0x20 5, 163, 49, 6
- unknownsfx0x20 4, 147, 34, 6
- unknownsfx0x20 8, 113, 1, 6
- endchannel
+SFX_Cry24_2_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 11, 7, 1601
+ square_note 10, 9, 6, 1602
+ square_note 15, 10, 7, 1617
+ square_note 8, 10, 5, 1617
+ square_note 6, 9, 4, 1607
+ square_note 5, 10, 3, 1585
+ square_note 4, 9, 3, 1570
+ square_note 8, 7, 1, 1537
+ sound_ret
-SFX_Cry24_2_Ch3:
- unknownnoise0x20 15, 228, 60
- unknownnoise0x20 10, 199, 76
- unknownnoise0x20 10, 199, 60
- unknownnoise0x20 12, 183, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Cry24_2_Ch8:
+ noise_note 15, 14, 4, 60
+ noise_note 10, 12, 7, 76
+ noise_note 10, 12, 7, 60
+ noise_note 12, 11, 7, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/cry24_3.asm b/audio/sfx/cry24_3.asm
index 37926146..e8c1f24e 100644
--- a/audio/sfx/cry24_3.asm
+++ b/audio/sfx/cry24_3.asm
@@ -1,33 +1,33 @@
-SFX_Cry24_3_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 247, 128, 6
- unknownsfx0x20 10, 230, 132, 6
- unknownsfx0x20 15, 215, 144, 6
- unknownsfx0x20 8, 213, 144, 6
- unknownsfx0x20 6, 196, 136, 6
- unknownsfx0x20 5, 211, 112, 6
- unknownsfx0x20 4, 211, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Cry24_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1664
+ square_note 10, 14, 6, 1668
+ square_note 15, 13, 7, 1680
+ square_note 8, 13, 5, 1680
+ square_note 6, 12, 4, 1672
+ square_note 5, 13, 3, 1648
+ square_note 4, 13, 3, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_Cry24_3_Ch2:
- dutycycle 5
- unknownsfx0x20 15, 183, 65, 6
- unknownsfx0x20 10, 150, 66, 6
- unknownsfx0x20 15, 167, 81, 6
- unknownsfx0x20 8, 165, 81, 6
- unknownsfx0x20 6, 148, 71, 6
- unknownsfx0x20 5, 163, 49, 6
- unknownsfx0x20 4, 147, 34, 6
- unknownsfx0x20 8, 113, 1, 6
- endchannel
+SFX_Cry24_3_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 11, 7, 1601
+ square_note 10, 9, 6, 1602
+ square_note 15, 10, 7, 1617
+ square_note 8, 10, 5, 1617
+ square_note 6, 9, 4, 1607
+ square_note 5, 10, 3, 1585
+ square_note 4, 9, 3, 1570
+ square_note 8, 7, 1, 1537
+ sound_ret
-SFX_Cry24_3_Ch3:
- unknownnoise0x20 15, 228, 60
- unknownnoise0x20 10, 199, 76
- unknownnoise0x20 10, 199, 60
- unknownnoise0x20 12, 183, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Cry24_3_Ch8:
+ noise_note 15, 14, 4, 60
+ noise_note 10, 12, 7, 76
+ noise_note 10, 12, 7, 60
+ noise_note 12, 11, 7, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/cry25_1.asm b/audio/sfx/cry25_1.asm
index d54b8d6c..64d59389 100644
--- a/audio/sfx/cry25_1.asm
+++ b/audio/sfx/cry25_1.asm
@@ -1,26 +1,26 @@
-SFX_Cry25_1_Ch1:
- dutycycle 165
- unknownsfx0x20 6, 244, 64, 7
- unknownsfx0x20 15, 227, 48, 7
- unknownsfx0x20 4, 244, 64, 7
- unknownsfx0x20 5, 179, 72, 7
- unknownsfx0x20 8, 209, 80, 7
- endchannel
+SFX_Cry25_1_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 6, 15, 4, 1856
+ square_note 15, 14, 3, 1840
+ square_note 4, 15, 4, 1856
+ square_note 5, 11, 3, 1864
+ square_note 8, 13, 1, 1872
+ sound_ret
-SFX_Cry25_1_Ch2:
- dutycycle 119
- unknownsfx0x20 6, 195, 18, 7
- unknownsfx0x20 15, 179, 4, 7
- unknownsfx0x20 3, 195, 18, 7
- unknownsfx0x20 4, 195, 33, 7
- unknownsfx0x20 8, 177, 50, 7
- endchannel
+SFX_Cry25_1_Ch6:
+ duty_cycle_pattern 1, 3, 1, 3
+ square_note 6, 12, 3, 1810
+ square_note 15, 11, 3, 1796
+ square_note 3, 12, 3, 1810
+ square_note 4, 12, 3, 1825
+ square_note 8, 11, 1, 1842
+ sound_ret
-SFX_Cry25_1_Ch3:
- unknownnoise0x20 8, 214, 44
- unknownnoise0x20 12, 198, 60
- unknownnoise0x20 10, 182, 44
- unknownnoise0x20 8, 145, 28
- endchannel
+SFX_Cry25_1_Ch8:
+ noise_note 8, 13, 6, 44
+ noise_note 12, 12, 6, 60
+ noise_note 10, 11, 6, 44
+ noise_note 8, 9, 1, 28
+ sound_ret
diff --git a/audio/sfx/cry25_2.asm b/audio/sfx/cry25_2.asm
index 48e4d057..8ed47006 100644
--- a/audio/sfx/cry25_2.asm
+++ b/audio/sfx/cry25_2.asm
@@ -1,26 +1,26 @@
-SFX_Cry25_2_Ch1:
- dutycycle 165
- unknownsfx0x20 6, 244, 64, 7
- unknownsfx0x20 15, 227, 48, 7
- unknownsfx0x20 4, 244, 64, 7
- unknownsfx0x20 5, 179, 72, 7
- unknownsfx0x20 8, 209, 80, 7
- endchannel
+SFX_Cry25_2_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 6, 15, 4, 1856
+ square_note 15, 14, 3, 1840
+ square_note 4, 15, 4, 1856
+ square_note 5, 11, 3, 1864
+ square_note 8, 13, 1, 1872
+ sound_ret
-SFX_Cry25_2_Ch2:
- dutycycle 119
- unknownsfx0x20 6, 195, 18, 7
- unknownsfx0x20 15, 179, 4, 7
- unknownsfx0x20 3, 195, 18, 7
- unknownsfx0x20 4, 195, 33, 7
- unknownsfx0x20 8, 177, 50, 7
- endchannel
+SFX_Cry25_2_Ch6:
+ duty_cycle_pattern 1, 3, 1, 3
+ square_note 6, 12, 3, 1810
+ square_note 15, 11, 3, 1796
+ square_note 3, 12, 3, 1810
+ square_note 4, 12, 3, 1825
+ square_note 8, 11, 1, 1842
+ sound_ret
-SFX_Cry25_2_Ch3:
- unknownnoise0x20 8, 214, 44
- unknownnoise0x20 12, 198, 60
- unknownnoise0x20 10, 182, 44
- unknownnoise0x20 8, 145, 28
- endchannel
+SFX_Cry25_2_Ch8:
+ noise_note 8, 13, 6, 44
+ noise_note 12, 12, 6, 60
+ noise_note 10, 11, 6, 44
+ noise_note 8, 9, 1, 28
+ sound_ret
diff --git a/audio/sfx/cry25_3.asm b/audio/sfx/cry25_3.asm
index f08c6a00..f9800dc8 100644
--- a/audio/sfx/cry25_3.asm
+++ b/audio/sfx/cry25_3.asm
@@ -1,26 +1,26 @@
-SFX_Cry25_3_Ch1:
- dutycycle 165
- unknownsfx0x20 6, 244, 64, 7
- unknownsfx0x20 15, 227, 48, 7
- unknownsfx0x20 4, 244, 64, 7
- unknownsfx0x20 5, 179, 72, 7
- unknownsfx0x20 8, 209, 80, 7
- endchannel
+SFX_Cry25_3_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 6, 15, 4, 1856
+ square_note 15, 14, 3, 1840
+ square_note 4, 15, 4, 1856
+ square_note 5, 11, 3, 1864
+ square_note 8, 13, 1, 1872
+ sound_ret
-SFX_Cry25_3_Ch2:
- dutycycle 119
- unknownsfx0x20 6, 195, 18, 7
- unknownsfx0x20 15, 179, 4, 7
- unknownsfx0x20 3, 195, 18, 7
- unknownsfx0x20 4, 195, 33, 7
- unknownsfx0x20 8, 177, 50, 7
- endchannel
+SFX_Cry25_3_Ch6:
+ duty_cycle_pattern 1, 3, 1, 3
+ square_note 6, 12, 3, 1810
+ square_note 15, 11, 3, 1796
+ square_note 3, 12, 3, 1810
+ square_note 4, 12, 3, 1825
+ square_note 8, 11, 1, 1842
+ sound_ret
-SFX_Cry25_3_Ch3:
- unknownnoise0x20 8, 214, 44
- unknownnoise0x20 12, 198, 60
- unknownnoise0x20 10, 182, 44
- unknownnoise0x20 8, 145, 28
- endchannel
+SFX_Cry25_3_Ch8:
+ noise_note 8, 13, 6, 44
+ noise_note 12, 12, 6, 60
+ noise_note 10, 11, 6, 44
+ noise_note 8, 9, 1, 28
+ sound_ret
diff --git a/audio/sfx/cut_1.asm b/audio/sfx/cut_1.asm
index a42cd660..fd53e240 100644
--- a/audio/sfx/cut_1.asm
+++ b/audio/sfx/cut_1.asm
@@ -1,7 +1,7 @@
-SFX_Cut_1_Ch1:
- unknownnoise0x20 2, 247, 36
- unknownnoise0x20 2, 247, 52
- unknownnoise0x20 4, 247, 68
- unknownnoise0x20 8, 244, 85
- unknownnoise0x20 8, 241, 68
- endchannel
+SFX_Cut_1_Ch8:
+ noise_note 2, 15, 7, 36
+ noise_note 2, 15, 7, 52
+ noise_note 4, 15, 7, 68
+ noise_note 8, 15, 4, 85
+ noise_note 8, 15, 1, 68
+ sound_ret
diff --git a/audio/sfx/cut_3.asm b/audio/sfx/cut_3.asm
index 12c2366e..b223b99b 100644
--- a/audio/sfx/cut_3.asm
+++ b/audio/sfx/cut_3.asm
@@ -1,7 +1,7 @@
-SFX_Cut_3_Ch1:
- unknownnoise0x20 2, 247, 36
- unknownnoise0x20 2, 247, 52
- unknownnoise0x20 4, 247, 68
- unknownnoise0x20 8, 244, 85
- unknownnoise0x20 8, 241, 68
- endchannel
+SFX_Cut_3_Ch8:
+ noise_note 2, 15, 7, 36
+ noise_note 2, 15, 7, 52
+ noise_note 4, 15, 7, 68
+ noise_note 8, 15, 4, 85
+ noise_note 8, 15, 1, 68
+ sound_ret
diff --git a/audio/sfx/cymbal1_1.asm b/audio/sfx/cymbal1_1.asm
deleted file mode 100644
index 3f3c6d8b..00000000
--- a/audio/sfx/cymbal1_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal1_1_Ch1:
- unknownnoise0x20 0, 161, 16
- endchannel
diff --git a/audio/sfx/cymbal1_2.asm b/audio/sfx/cymbal1_2.asm
deleted file mode 100644
index bb1e3e3e..00000000
--- a/audio/sfx/cymbal1_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal1_2_Ch1:
- unknownnoise0x20 0, 161, 16
- endchannel
diff --git a/audio/sfx/cymbal1_3.asm b/audio/sfx/cymbal1_3.asm
deleted file mode 100644
index 9587977f..00000000
--- a/audio/sfx/cymbal1_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal1_3_Ch1:
- unknownnoise0x20 0, 161, 16
- endchannel
diff --git a/audio/sfx/cymbal1_4.asm b/audio/sfx/cymbal1_4.asm
deleted file mode 100644
index bd941ef5..00000000
--- a/audio/sfx/cymbal1_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Cymbal1_4_Ch7:
- unknownnoise0x20 0, 161, 16
- endchannel
-
diff --git a/audio/sfx/cymbal2_1.asm b/audio/sfx/cymbal2_1.asm
deleted file mode 100644
index 2ec3fc86..00000000
--- a/audio/sfx/cymbal2_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal2_1_Ch1:
- unknownnoise0x20 0, 162, 17
- endchannel
diff --git a/audio/sfx/cymbal2_2.asm b/audio/sfx/cymbal2_2.asm
deleted file mode 100644
index 8b27a0de..00000000
--- a/audio/sfx/cymbal2_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal2_2_Ch1:
- unknownnoise0x20 0, 162, 17
- endchannel
diff --git a/audio/sfx/cymbal2_3.asm b/audio/sfx/cymbal2_3.asm
deleted file mode 100644
index 642a336a..00000000
--- a/audio/sfx/cymbal2_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal2_3_Ch1:
- unknownnoise0x20 0, 162, 17
- endchannel
diff --git a/audio/sfx/cymbal2_4.asm b/audio/sfx/cymbal2_4.asm
deleted file mode 100644
index b33e10fc..00000000
--- a/audio/sfx/cymbal2_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Cymbal2_4_Ch7:
- unknownnoise0x20 0, 162, 17
- endchannel
-
diff --git a/audio/sfx/cymbal3_1.asm b/audio/sfx/cymbal3_1.asm
deleted file mode 100644
index 3fd225e2..00000000
--- a/audio/sfx/cymbal3_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal3_1_Ch1:
- unknownnoise0x20 0, 162, 80
- endchannel
diff --git a/audio/sfx/cymbal3_2.asm b/audio/sfx/cymbal3_2.asm
deleted file mode 100644
index 1435b5ed..00000000
--- a/audio/sfx/cymbal3_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal3_2_Ch1:
- unknownnoise0x20 0, 162, 80
- endchannel
diff --git a/audio/sfx/cymbal3_3.asm b/audio/sfx/cymbal3_3.asm
deleted file mode 100644
index b45fb03d..00000000
--- a/audio/sfx/cymbal3_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Cymbal3_3_Ch1:
- unknownnoise0x20 0, 162, 80
- endchannel
diff --git a/audio/sfx/cymbal3_4.asm b/audio/sfx/cymbal3_4.asm
deleted file mode 100644
index b5e99c56..00000000
--- a/audio/sfx/cymbal3_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Cymbal3_4_Ch7:
- unknownnoise0x20 0, 162, 80
- endchannel
-
diff --git a/audio/sfx/damage.asm b/audio/sfx/damage.asm
index ea2727d8..5e0665f6 100644
--- a/audio/sfx/damage.asm
+++ b/audio/sfx/damage.asm
@@ -1,5 +1,5 @@
-SFX_Damage_Ch1:
- unknownnoise0x20 2, 244, 68
- unknownnoise0x20 2, 244, 20
- unknownnoise0x20 15, 241, 50
- endchannel
+SFX_Damage_Ch8:
+ noise_note 2, 15, 4, 68
+ noise_note 2, 15, 4, 20
+ noise_note 15, 15, 1, 50
+ sound_ret
diff --git a/audio/sfx/denied_1.asm b/audio/sfx/denied_1.asm
index d954308a..2c132003 100644
--- a/audio/sfx/denied_1.asm
+++ b/audio/sfx/denied_1.asm
@@ -1,18 +1,18 @@
-SFX_Denied_1_Ch1:
- duty 3
- unknownsfx0x10 90
- unknownsfx0x20 4, 240, 0, 5
- unknownsfx0x10 8
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Denied_1_Ch5:
+ duty_cycle 3
+ pitch_sweep 5, -2
+ square_note 4, 15, 0, 1280
+ pitch_sweep 0, 8
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1280
+ square_note 1, 0, 0, 0
+ sound_ret
-SFX_Denied_1_Ch2:
- duty 3
- unknownsfx0x20 4, 240, 1, 4
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 1, 4
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Denied_1_Ch6:
+ duty_cycle 3
+ square_note 4, 15, 0, 1025
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1025
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/denied_3.asm b/audio/sfx/denied_3.asm
index ca82a739..56a0753f 100644
--- a/audio/sfx/denied_3.asm
+++ b/audio/sfx/denied_3.asm
@@ -1,18 +1,18 @@
-SFX_Denied_3_Ch1:
- duty 3
- unknownsfx0x10 90
- unknownsfx0x20 4, 240, 0, 5
- unknownsfx0x10 8
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Denied_3_Ch5:
+ duty_cycle 3
+ pitch_sweep 5, -2
+ square_note 4, 15, 0, 1280
+ pitch_sweep 0, 8
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1280
+ square_note 1, 0, 0, 0
+ sound_ret
-SFX_Denied_3_Ch2:
- duty 3
- unknownsfx0x20 4, 240, 1, 4
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 1, 4
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Denied_3_Ch6:
+ duty_cycle 3
+ square_note 4, 15, 0, 1025
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1025
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/dex_page_added.asm b/audio/sfx/dex_page_added.asm
index 6e3a0dcf..555b3beb 100644
--- a/audio/sfx/dex_page_added.asm
+++ b/audio/sfx/dex_page_added.asm
@@ -1,15 +1,15 @@
-SFX_Dex_Page_Added_Ch1:
- duty 2
- unknownsfx0x10 68
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x10 23
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
+SFX_Dex_Page_Added_Ch5:
+ duty_cycle 2
+ pitch_sweep 4, 4
+ square_note 15, 15, 0, 1264
+ pitch_sweep 1, 7
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Dex_Page_Added_Ch2:
- duty 2
- unknownsfx0x20 15, 146, 0, 6
- unknownsfx0x20 15, 146, 130, 7
- endchannel
+SFX_Dex_Page_Added_Ch6:
+ duty_cycle 2
+ square_note 15, 9, 2, 1536
+ square_note 15, 9, 2, 1922
+ sound_ret
diff --git a/audio/sfx/doubleslap.asm b/audio/sfx/doubleslap.asm
index 5cae0a4b..14638602 100644
--- a/audio/sfx/doubleslap.asm
+++ b/audio/sfx/doubleslap.asm
@@ -1,4 +1,4 @@
-SFX_Doubleslap_Ch1:
- unknownnoise0x20 8, 241, 50
- unknownnoise0x20 8, 241, 51
- endchannel
+SFX_Doubleslap_Ch8:
+ noise_note 8, 15, 1, 50
+ noise_note 8, 15, 1, 51
+ sound_ret
diff --git a/audio/sfx/enter_pc_1.asm b/audio/sfx/enter_pc_1.asm
index b2450ced..30c3ecd1 100644
--- a/audio/sfx/enter_pc_1.asm
+++ b/audio/sfx/enter_pc_1.asm
@@ -1,7 +1,7 @@
-SFX_Enter_PC_1_Ch1:
- duty 2
- unknownsfx0x20 6, 240, 0, 7
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 6, 240, 0, 7
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Enter_PC_1_Ch5:
+ duty_cycle 2
+ square_note 6, 15, 0, 1792
+ square_note 4, 0, 0, 0
+ square_note 6, 15, 0, 1792
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/enter_pc_3.asm b/audio/sfx/enter_pc_3.asm
index 061068ce..9c741798 100644
--- a/audio/sfx/enter_pc_3.asm
+++ b/audio/sfx/enter_pc_3.asm
@@ -1,7 +1,7 @@
-SFX_Enter_PC_3_Ch1:
- duty 2
- unknownsfx0x20 4, 240, 0, 7
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 4, 240, 0, 7
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Enter_PC_3_Ch5:
+ duty_cycle 2
+ square_note 4, 15, 0, 1792
+ square_note 4, 0, 0, 0
+ square_note 4, 15, 0, 1792
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/faint_fall.asm b/audio/sfx/faint_fall.asm
index cd1b2cdc..47f45037 100644
--- a/audio/sfx/faint_fall.asm
+++ b/audio/sfx/faint_fall.asm
@@ -1,6 +1,6 @@
-SFX_Faint_Fall_Ch1:
- duty 1
- unknownsfx0x10 175
- unknownsfx0x20 15, 242, 128, 7
- unknownsfx0x10 8
- endchannel
+SFX_Faint_Fall_Ch5:
+ duty_cycle 1
+ pitch_sweep 10, -7
+ square_note 15, 15, 2, 1920
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/faint_thud.asm b/audio/sfx/faint_thud.asm
index 7b6ec0a0..527e027f 100644
--- a/audio/sfx/faint_thud.asm
+++ b/audio/sfx/faint_thud.asm
@@ -1,11 +1,11 @@
-SFX_Faint_Thud_Ch1:
- unknownsfx0x20 15, 209, 0, 2
- unknownsfx0x10 8
- endchannel
+SFX_Faint_Thud_Ch5:
+ square_note 15, 13, 1, 512
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Faint_Thud_Ch2:
- unknownnoise0x20 4, 245, 51
- unknownnoise0x20 8, 244, 34
- unknownnoise0x20 15, 242, 33
- endchannel
+SFX_Faint_Thud_Ch8:
+ noise_note 4, 15, 5, 51
+ noise_note 8, 15, 4, 34
+ noise_note 15, 15, 2, 33
+ sound_ret
diff --git a/audio/sfx/fly_1.asm b/audio/sfx/fly_1.asm
index 2b487bc2..40ebb966 100644
--- a/audio/sfx/fly_1.asm
+++ b/audio/sfx/fly_1.asm
@@ -1,18 +1,18 @@
-SFX_Fly_1_Ch1:
- unknownnoise0x20 2, 241, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 161, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 209, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 129, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 177, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 97, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 145, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 65, 18
- unknownnoise0x20 2, 0, 0
- endchannel
+SFX_Fly_1_Ch8:
+ noise_note 2, 15, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 10, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 13, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 8, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 11, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 6, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 9, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 4, 1, 18
+ noise_note 2, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/fly_3.asm b/audio/sfx/fly_3.asm
index c081030d..e29b5654 100644
--- a/audio/sfx/fly_3.asm
+++ b/audio/sfx/fly_3.asm
@@ -1,18 +1,18 @@
-SFX_Fly_3_Ch1:
- unknownnoise0x20 2, 241, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 161, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 209, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 129, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 177, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 97, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 145, 18
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 65, 18
- unknownnoise0x20 2, 0, 0
- endchannel
+SFX_Fly_3_Ch8:
+ noise_note 2, 15, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 10, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 13, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 8, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 11, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 6, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 9, 1, 18
+ noise_note 2, 0, 0, 0
+ noise_note 2, 4, 1, 18
+ noise_note 2, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/get_item1_1.asm b/audio/sfx/get_item1_1.asm
index ba428722..09f76c70 100644
--- a/audio/sfx/get_item1_1.asm
+++ b/audio/sfx/get_item1_1.asm
@@ -1,47 +1,47 @@
-SFX_Get_Item1_1_Ch1:
- executemusic
+SFX_Get_Item1_1_Ch5:
+ execute_music
tempo 256
volume 7, 7
vibrato 6, 2, 6
- duty 2
- toggleperfectpitch
- notetype 4, 11, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 4, 11, 1
octave 3
- G# 2
- G# 2
- G# 2
- notetype 12, 11, 3
+ note G#, 2
+ note G#, 2
+ note G#, 2
+ note_type 12, 11, 3
octave 4
- E_ 4
- endchannel
+ note E_, 4
+ sound_ret
-SFX_Get_Item1_1_Ch2:
- executemusic
+SFX_Get_Item1_1_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 4, 12, 1
+ duty_cycle 2
+ note_type 4, 12, 1
octave 4
- E_ 2
- E_ 2
- E_ 2
- notetype 12, 12, 3
- B_ 4
- endchannel
+ note E_, 2
+ note E_, 2
+ note E_, 2
+ note_type 12, 12, 3
+ note B_, 4
+ sound_ret
-SFX_Get_Item1_1_Ch3:
- executemusic
- notetype 4, 1, 0
+SFX_Get_Item1_1_Ch7:
+ execute_music
+ note_type 4, 1, 0
octave 4
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- B_ 2
+ note B_, 2
rest 2
- endchannel
+ sound_ret
diff --git a/audio/sfx/get_item1_3.asm b/audio/sfx/get_item1_3.asm
index b30ce40c..dfc1848f 100644
--- a/audio/sfx/get_item1_3.asm
+++ b/audio/sfx/get_item1_3.asm
@@ -1,47 +1,47 @@
-SFX_Get_Item1_3_Ch1:
- executemusic
+SFX_Get_Item1_3_Ch5:
+ execute_music
tempo 256
volume 7, 7
vibrato 6, 2, 6
- duty 2
- toggleperfectpitch
- notetype 4, 11, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 4, 11, 1
octave 3
- G# 2
- G# 2
- G# 2
- notetype 12, 11, 3
+ note G#, 2
+ note G#, 2
+ note G#, 2
+ note_type 12, 11, 3
octave 4
- E_ 4
- endchannel
+ note E_, 4
+ sound_ret
-SFX_Get_Item1_3_Ch2:
- executemusic
+SFX_Get_Item1_3_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 4, 12, 1
+ duty_cycle 2
+ note_type 4, 12, 1
octave 4
- E_ 2
- E_ 2
- E_ 2
- notetype 12, 12, 3
- B_ 4
- endchannel
+ note E_, 2
+ note E_, 2
+ note E_, 2
+ note_type 12, 12, 3
+ note B_, 4
+ sound_ret
-SFX_Get_Item1_3_Ch3:
- executemusic
- notetype 4, 1, 0
+SFX_Get_Item1_3_Ch7:
+ execute_music
+ note_type 4, 1, 0
octave 4
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- B_ 2
+ note B_, 2
rest 2
- endchannel
+ sound_ret
diff --git a/audio/sfx/get_item1_4.asm b/audio/sfx/get_item1_4.asm
new file mode 100644
index 00000000..3fc984c5
--- /dev/null
+++ b/audio/sfx/get_item1_4.asm
@@ -0,0 +1,47 @@
+SFX_Get_Item1_4_Ch5:
+ execute_music
+ tempo 256
+ volume 7, 7
+ vibrato 6, 2, 6
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 4, 11, 1
+ octave 3
+ note G#, 2
+ note G#, 2
+ note G#, 2
+ note_type 12, 11, 3
+ octave 4
+ note E_, 4
+ sound_ret
+
+
+SFX_Get_Item1_4_Ch6:
+ execute_music
+ vibrato 8, 2, 7
+ duty_cycle 2
+ note_type 4, 12, 1
+ octave 4
+ note E_, 2
+ note E_, 2
+ note E_, 2
+ note_type 12, 12, 3
+ note B_, 4
+ sound_ret
+
+
+SFX_Get_Item1_4_Ch7:
+ execute_music
+ note_type 4, 1, 0
+ octave 4
+ note B_, 1
+ rest 1
+ note B_, 1
+ rest 1
+ note B_, 1
+ rest 1
+ note_type 12, 1, 0
+ octave 4
+ note B_, 2
+ rest 2
+ sound_ret
diff --git a/audio/sfx/get_item2_1.asm b/audio/sfx/get_item2_1.asm
index 67bb7bb8..04bbdae2 100644
--- a/audio/sfx/get_item2_1.asm
+++ b/audio/sfx/get_item2_1.asm
@@ -1,69 +1,69 @@
-SFX_Get_Item2_1_Ch1:
- executemusic
+SFX_Get_Item2_1_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 11, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 11, 4
octave 4
- D_ 4
- C_ 4
+ note D_, 4
+ note C_, 4
octave 3
- A_ 8
- notetype 5, 11, 2
+ note A_, 8
+ note_type 5, 11, 2
octave 4
- D# 2
- D# 2
- D_ 2
- C_ 2
- C_ 2
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note C_, 2
+ note C_, 2
octave 3
- A# 2
- notetype 5, 11, 4
+ note A#, 2
+ note_type 5, 11, 4
octave 4
- C_ 8
- endchannel
+ note C_, 8
+ sound_ret
-SFX_Get_Item2_1_Ch2:
- executemusic
+SFX_Get_Item2_1_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 5, 12, 5
+ duty_cycle 2
+ note_type 5, 12, 5
octave 4
- A_ 4
- F_ 4
- C_ 8
- notetype 5, 12, 2
- A# 2
- A# 2
- A# 2
- G_ 2
- G_ 2
- A# 2
- notetype 5, 12, 4
- A_ 8
- endchannel
+ note A_, 4
+ note F_, 4
+ note C_, 8
+ note_type 5, 12, 2
+ note A#, 2
+ note A#, 2
+ note A#, 2
+ note G_, 2
+ note G_, 2
+ note A#, 2
+ note_type 5, 12, 4
+ note A_, 8
+ sound_ret
-SFX_Get_Item2_1_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Item2_1_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- F_ 4
- D# 4
- C_ 8
- D# 1
+ note F_, 4
+ note D#, 4
+ note C_, 8
+ note D#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 8
- endchannel
+ note A_, 8
+ sound_ret
diff --git a/audio/sfx/get_item2_2.asm b/audio/sfx/get_item2_2.asm
index 292a74f6..f05e0728 100644
--- a/audio/sfx/get_item2_2.asm
+++ b/audio/sfx/get_item2_2.asm
@@ -1,69 +1,69 @@
-SFX_Get_Item2_2_Ch1:
- executemusic
+SFX_Get_Item2_2_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 11, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 11, 4
octave 4
- D_ 4
- C_ 4
+ note D_, 4
+ note C_, 4
octave 3
- A_ 8
- notetype 5, 11, 2
+ note A_, 8
+ note_type 5, 11, 2
octave 4
- D# 2
- D# 2
- D_ 2
- C_ 2
- C_ 2
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note C_, 2
+ note C_, 2
octave 3
- A# 2
- notetype 5, 11, 4
+ note A#, 2
+ note_type 5, 11, 4
octave 4
- C_ 8
- endchannel
+ note C_, 8
+ sound_ret
-SFX_Get_Item2_2_Ch2:
- executemusic
+SFX_Get_Item2_2_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 5, 12, 5
+ duty_cycle 2
+ note_type 5, 12, 5
octave 4
- A_ 4
- F_ 4
- C_ 8
- notetype 5, 12, 2
- A# 2
- A# 2
- A# 2
- G_ 2
- G_ 2
- A# 2
- notetype 5, 12, 4
- A_ 8
- endchannel
+ note A_, 4
+ note F_, 4
+ note C_, 8
+ note_type 5, 12, 2
+ note A#, 2
+ note A#, 2
+ note A#, 2
+ note G_, 2
+ note G_, 2
+ note A#, 2
+ note_type 5, 12, 4
+ note A_, 8
+ sound_ret
-SFX_Get_Item2_2_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Item2_2_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- F_ 4
- D# 4
- C_ 8
- D# 1
+ note F_, 4
+ note D#, 4
+ note C_, 8
+ note D#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 8
- endchannel
+ note A_, 8
+ sound_ret
diff --git a/audio/sfx/get_item2_3.asm b/audio/sfx/get_item2_3.asm
index 1a833741..036d375b 100644
--- a/audio/sfx/get_item2_3.asm
+++ b/audio/sfx/get_item2_3.asm
@@ -1,69 +1,69 @@
-SFX_Get_Item2_3_Ch1:
- executemusic
+SFX_Get_Item2_3_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 11, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 11, 4
octave 4
- D_ 4
- C_ 4
+ note D_, 4
+ note C_, 4
octave 3
- A_ 8
- notetype 5, 11, 2
+ note A_, 8
+ note_type 5, 11, 2
octave 4
- D# 2
- D# 2
- D_ 2
- C_ 2
- C_ 2
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note C_, 2
+ note C_, 2
octave 3
- A# 2
- notetype 5, 11, 4
+ note A#, 2
+ note_type 5, 11, 4
octave 4
- C_ 8
- endchannel
+ note C_, 8
+ sound_ret
-SFX_Get_Item2_3_Ch2:
- executemusic
+SFX_Get_Item2_3_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 5, 12, 5
+ duty_cycle 2
+ note_type 5, 12, 5
octave 4
- A_ 4
- F_ 4
- C_ 8
- notetype 5, 12, 2
- A# 2
- A# 2
- A# 2
- G_ 2
- G_ 2
- A# 2
- notetype 5, 12, 4
- A_ 8
- endchannel
+ note A_, 4
+ note F_, 4
+ note C_, 8
+ note_type 5, 12, 2
+ note A#, 2
+ note A#, 2
+ note A#, 2
+ note G_, 2
+ note G_, 2
+ note A#, 2
+ note_type 5, 12, 4
+ note A_, 8
+ sound_ret
-SFX_Get_Item2_3_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Item2_3_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- F_ 4
- D# 4
- C_ 8
- D# 1
+ note F_, 4
+ note D#, 4
+ note C_, 8
+ note D#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 8
- endchannel
+ note A_, 8
+ sound_ret
diff --git a/audio/sfx/get_item2_4.asm b/audio/sfx/get_item2_4.asm
index b2909739..33681fb2 100644
--- a/audio/sfx/get_item2_4.asm
+++ b/audio/sfx/get_item2_4.asm
@@ -1,67 +1,69 @@
-SFX_80ec8_4_Ch4:
- executemusic
+SFX_Get_Item2_4_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 11, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 11, 4
octave 4
- D_ 4
- C_ 4
+ note D_, 4
+ note C_, 4
octave 3
- A_ 8
- notetype 5, 11, 2
+ note A_, 8
+ note_type 5, 11, 2
octave 4
- D# 2
- D# 2
- D_ 2
- C_ 2
- C_ 2
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note C_, 2
+ note C_, 2
octave 3
- A# 2
- notetype 5, 11, 4
+ note A#, 2
+ note_type 5, 11, 4
octave 4
- C_ 8
- endchannel
+ note C_, 8
+ sound_ret
-SFX_80ee7_4_Ch5:
- executemusic
+
+SFX_Get_Item2_4_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 5, 12, 5
+ duty_cycle 2
+ note_type 5, 12, 5
octave 4
- A_ 4
- F_ 4
- C_ 8
- notetype 5, 12, 2
- A# 2
- A# 2
- A# 2
- G_ 2
- G_ 2
- A# 2
- notetype 5, 12, 4
- A_ 8
- endchannel
+ note A_, 4
+ note F_, 4
+ note C_, 8
+ note_type 5, 12, 2
+ note A#, 2
+ note A#, 2
+ note A#, 2
+ note G_, 2
+ note G_, 2
+ note A#, 2
+ note_type 5, 12, 4
+ note A_, 8
+ sound_ret
+
-SFX_80eff_4_Ch6:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Item2_4_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- F_ 4
- D# 4
- C_ 8
- D# 1
+ note F_, 4
+ note D#, 4
+ note C_, 8
+ note D#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 8
- endchannel
+ note A_, 8
+ sound_ret
diff --git a/audio/sfx/get_item2_4_2.asm b/audio/sfx/get_item2_4_2.asm
index 4f7e38eb..04ca9f21 100644
--- a/audio/sfx/get_item2_4_2.asm
+++ b/audio/sfx/get_item2_4_2.asm
@@ -1,69 +1,69 @@
-SFX_Get_Item2_4_2_Ch1:
- executemusic
+SFX_Get_Item2_4_2_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 11, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 11, 4
octave 4
- D_ 4
- C_ 4
+ note D_, 4
+ note C_, 4
octave 3
- A_ 8
- notetype 5, 11, 2
+ note A_, 8
+ note_type 5, 11, 2
octave 4
- D# 2
- D# 2
- D_ 2
- C_ 2
- C_ 2
+ note D#, 2
+ note D#, 2
+ note D_, 2
+ note C_, 2
+ note C_, 2
octave 3
- A# 2
- notetype 5, 11, 4
+ note A#, 2
+ note_type 5, 11, 4
octave 4
- C_ 8
- endchannel
+ note C_, 8
+ sound_ret
-SFX_Get_Item2_4_2_Ch2:
- executemusic
+SFX_Get_Item2_4_2_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 5, 12, 5
+ duty_cycle 2
+ note_type 5, 12, 5
octave 4
- A_ 4
- F_ 4
- C_ 8
- notetype 5, 12, 2
- A# 2
- A# 2
- A# 2
- G_ 2
- G_ 2
- A# 2
- notetype 5, 12, 4
- A_ 8
- endchannel
+ note A_, 4
+ note F_, 4
+ note C_, 8
+ note_type 5, 12, 2
+ note A#, 2
+ note A#, 2
+ note A#, 2
+ note G_, 2
+ note G_, 2
+ note A#, 2
+ note_type 5, 12, 4
+ note A_, 8
+ sound_ret
-SFX_Get_Item2_4_2_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Item2_4_2_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- F_ 4
- D# 4
- C_ 8
- D# 1
+ note F_, 4
+ note D#, 4
+ note C_, 8
+ note D#, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 8
- endchannel
+ note A_, 8
+ sound_ret
diff --git a/audio/sfx/get_key_item_1.asm b/audio/sfx/get_key_item_1.asm
index c8da1745..a19f1143 100644
--- a/audio/sfx/get_key_item_1.asm
+++ b/audio/sfx/get_key_item_1.asm
@@ -1,59 +1,59 @@
-SFX_Get_Key_Item_1_Ch1:
- executemusic
+SFX_Get_Key_Item_1_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 10, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 10, 4
octave 3
- A# 4
- notetype 5, 11, 1
+ note A#, 4
+ note_type 5, 11, 1
octave 4
- C_ 2
- C_ 1
- C_ 1
- notetype 5, 10, 4
- D# 4
- notetype 5, 11, 1
- F_ 2
- F_ 1
- F_ 1
- notetype 5, 11, 4
- A# 8
- endchannel
+ note C_, 2
+ note C_, 1
+ note C_, 1
+ note_type 5, 10, 4
+ note D#, 4
+ note_type 5, 11, 1
+ note F_, 2
+ note F_, 1
+ note F_, 1
+ note_type 5, 11, 4
+ note A#, 8
+ sound_ret
-SFX_Get_Key_Item_1_Ch2:
- executemusic
+SFX_Get_Key_Item_1_Ch6:
+ execute_music
vibrato 4, 2, 3
- duty 2
- notetype 5, 13, 1
+ duty_cycle 2
+ note_type 5, 13, 1
octave 4
- G_ 2
- G_ 1
- G_ 1
- notetype 5, 12, 4
- D# 4
- notetype 5, 13, 1
- G# 2
- G# 1
- G# 1
- A# 2
- A# 1
- A# 1
- notetype 5, 12, 4
+ note G_, 2
+ note G_, 1
+ note G_, 1
+ note_type 5, 12, 4
+ note D#, 4
+ note_type 5, 13, 1
+ note G#, 2
+ note G#, 1
+ note G#, 1
+ note A#, 2
+ note A#, 1
+ note A#, 1
+ note_type 5, 12, 4
octave 5
- D# 8
- endchannel
+ note D#, 8
+ sound_ret
-SFX_Get_Key_Item_1_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Key_Item_1_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 4
- D# 4
- G# 4
- G_ 4
- F_ 4
- D# 8
- endchannel
+ note D#, 4
+ note G#, 4
+ note G_, 4
+ note F_, 4
+ note D#, 8
+ sound_ret
diff --git a/audio/sfx/get_key_item_3.asm b/audio/sfx/get_key_item_3.asm
index e6a50929..c1063a7f 100644
--- a/audio/sfx/get_key_item_3.asm
+++ b/audio/sfx/get_key_item_3.asm
@@ -1,59 +1,59 @@
-SFX_Get_Key_Item_3_Ch1:
- executemusic
+SFX_Get_Key_Item_3_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 5, 10, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 5, 10, 4
octave 3
- A# 4
- notetype 5, 11, 1
+ note A#, 4
+ note_type 5, 11, 1
octave 4
- C_ 2
- C_ 1
- C_ 1
- notetype 5, 10, 4
- D# 4
- notetype 5, 11, 1
- F_ 2
- F_ 1
- F_ 1
- notetype 5, 11, 4
- A# 8
- endchannel
+ note C_, 2
+ note C_, 1
+ note C_, 1
+ note_type 5, 10, 4
+ note D#, 4
+ note_type 5, 11, 1
+ note F_, 2
+ note F_, 1
+ note F_, 1
+ note_type 5, 11, 4
+ note A#, 8
+ sound_ret
-SFX_Get_Key_Item_3_Ch2:
- executemusic
+SFX_Get_Key_Item_3_Ch6:
+ execute_music
vibrato 4, 2, 3
- duty 2
- notetype 5, 13, 1
+ duty_cycle 2
+ note_type 5, 13, 1
octave 4
- G_ 2
- G_ 1
- G_ 1
- notetype 5, 12, 4
- D# 4
- notetype 5, 13, 1
- G# 2
- G# 1
- G# 1
- A# 2
- A# 1
- A# 1
- notetype 5, 12, 4
+ note G_, 2
+ note G_, 1
+ note G_, 1
+ note_type 5, 12, 4
+ note D#, 4
+ note_type 5, 13, 1
+ note G#, 2
+ note G#, 1
+ note G#, 1
+ note A#, 2
+ note A#, 1
+ note A#, 1
+ note_type 5, 12, 4
octave 5
- D# 8
- endchannel
+ note D#, 8
+ sound_ret
-SFX_Get_Key_Item_3_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Get_Key_Item_3_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 4
- D# 4
- G# 4
- G_ 4
- F_ 4
- D# 8
- endchannel
+ note D#, 4
+ note G#, 4
+ note G_, 4
+ note F_, 4
+ note D#, 8
+ sound_ret
diff --git a/audio/sfx/go_inside_1.asm b/audio/sfx/go_inside_1.asm
index 5da5be86..b41dc94d 100644
--- a/audio/sfx/go_inside_1.asm
+++ b/audio/sfx/go_inside_1.asm
@@ -1,4 +1,4 @@
-SFX_Go_Inside_1_Ch1:
- unknownnoise0x20 9, 241, 68
- unknownnoise0x20 8, 209, 67
- endchannel
+SFX_Go_Inside_1_Ch8:
+ noise_note 9, 15, 1, 68
+ noise_note 8, 13, 1, 67
+ sound_ret
diff --git a/audio/sfx/go_inside_3.asm b/audio/sfx/go_inside_3.asm
index 460b3b4a..5aab6564 100644
--- a/audio/sfx/go_inside_3.asm
+++ b/audio/sfx/go_inside_3.asm
@@ -1,4 +1,4 @@
-SFX_Go_Inside_3_Ch1:
- unknownnoise0x20 9, 241, 68
- unknownnoise0x20 8, 209, 67
- endchannel
+SFX_Go_Inside_3_Ch8:
+ noise_note 9, 15, 1, 68
+ noise_note 8, 13, 1, 67
+ sound_ret
diff --git a/audio/sfx/go_outside_1.asm b/audio/sfx/go_outside_1.asm
index 2038d299..2ac3542b 100644
--- a/audio/sfx/go_outside_1.asm
+++ b/audio/sfx/go_outside_1.asm
@@ -1,7 +1,7 @@
-SFX_Go_Outside_1_Ch1:
- unknownnoise0x20 2, 241, 84
- unknownnoise0x20 12, 113, 35
- unknownnoise0x20 2, 177, 84
- unknownnoise0x20 12, 97, 35
- unknownnoise0x20 6, 65, 84
- endchannel
+SFX_Go_Outside_1_Ch8:
+ noise_note 2, 15, 1, 84
+ noise_note 12, 7, 1, 35
+ noise_note 2, 11, 1, 84
+ noise_note 12, 6, 1, 35
+ noise_note 6, 4, 1, 84
+ sound_ret
diff --git a/audio/sfx/go_outside_3.asm b/audio/sfx/go_outside_3.asm
index d45b8410..cd3543f2 100644
--- a/audio/sfx/go_outside_3.asm
+++ b/audio/sfx/go_outside_3.asm
@@ -1,7 +1,7 @@
-SFX_Go_Outside_3_Ch1:
- unknownnoise0x20 2, 241, 84
- unknownnoise0x20 12, 113, 35
- unknownnoise0x20 2, 177, 84
- unknownnoise0x20 12, 97, 35
- unknownnoise0x20 6, 65, 84
- endchannel
+SFX_Go_Outside_3_Ch8:
+ noise_note 2, 15, 1, 84
+ noise_note 12, 7, 1, 35
+ noise_note 2, 11, 1, 84
+ noise_note 12, 6, 1, 35
+ noise_note 6, 4, 1, 84
+ sound_ret
diff --git a/audio/sfx/heal_ailment_1.asm b/audio/sfx/heal_ailment_1.asm
index 3a292b82..88a92881 100644
--- a/audio/sfx/heal_ailment_1.asm
+++ b/audio/sfx/heal_ailment_1.asm
@@ -1,9 +1,9 @@
-SFX_Heal_Ailment_1_Ch1:
- duty 2
- unknownsfx0x10 20
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x10 23
- unknownsfx0x20 15, 242, 0, 6
- unknownsfx0x10 8
- endchannel
+SFX_Heal_Ailment_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 4
+ square_note 4, 15, 2, 1536
+ square_note 4, 15, 2, 1536
+ pitch_sweep 1, 7
+ square_note 15, 15, 2, 1536
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/heal_ailment_2.asm b/audio/sfx/heal_ailment_2.asm
index 25e1bbe0..6e3e68d9 100644
--- a/audio/sfx/heal_ailment_2.asm
+++ b/audio/sfx/heal_ailment_2.asm
@@ -1,9 +1,9 @@
-SFX_Heal_Ailment_2_Ch1:
- duty 2
- unknownsfx0x10 20
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x10 23
- unknownsfx0x20 15, 242, 0, 6
- unknownsfx0x10 8
- endchannel
+SFX_Heal_Ailment_2_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 4
+ square_note 4, 15, 2, 1536
+ square_note 4, 15, 2, 1536
+ pitch_sweep 1, 7
+ square_note 15, 15, 2, 1536
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/heal_ailment_3.asm b/audio/sfx/heal_ailment_3.asm
index 2719358f..660d9abe 100644
--- a/audio/sfx/heal_ailment_3.asm
+++ b/audio/sfx/heal_ailment_3.asm
@@ -1,9 +1,9 @@
-SFX_Heal_Ailment_3_Ch1:
- duty 2
- unknownsfx0x10 20
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x10 23
- unknownsfx0x20 15, 242, 0, 6
- unknownsfx0x10 8
- endchannel
+SFX_Heal_Ailment_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 4
+ square_note 4, 15, 2, 1536
+ square_note 4, 15, 2, 1536
+ pitch_sweep 1, 7
+ square_note 15, 15, 2, 1536
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/heal_ailment_4.asm b/audio/sfx/heal_ailment_4.asm
deleted file mode 100755
index fd80517d..00000000
--- a/audio/sfx/heal_ailment_4.asm
+++ /dev/null
@@ -1,7 +0,0 @@
-SFX_8027f_4_Ch4:
- duty 2
- unknownsfx0x10 23
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
diff --git a/audio/sfx/heal_hp_1.asm b/audio/sfx/heal_hp_1.asm
index a23db490..8dafb807 100644
--- a/audio/sfx/heal_hp_1.asm
+++ b/audio/sfx/heal_hp_1.asm
@@ -1,7 +1,7 @@
-SFX_Heal_HP_1_Ch1:
- duty 2
- unknownsfx0x10 23
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
+SFX_Heal_HP_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 7
+ square_note 15, 15, 0, 1264
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/heal_hp_2.asm b/audio/sfx/heal_hp_2.asm
index f21f6712..9eef9472 100644
--- a/audio/sfx/heal_hp_2.asm
+++ b/audio/sfx/heal_hp_2.asm
@@ -1,7 +1,7 @@
-SFX_Heal_HP_2_Ch1:
- duty 2
- unknownsfx0x10 23
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
+SFX_Heal_HP_2_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 7
+ square_note 15, 15, 0, 1264
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/heal_hp_3.asm b/audio/sfx/heal_hp_3.asm
index 96ff391b..22651532 100644
--- a/audio/sfx/heal_hp_3.asm
+++ b/audio/sfx/heal_hp_3.asm
@@ -1,7 +1,7 @@
-SFX_Heal_HP_3_Ch1:
- duty 2
- unknownsfx0x10 23
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
+SFX_Heal_HP_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 7
+ square_note 15, 15, 0, 1264
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/healing_machine_1.asm b/audio/sfx/healing_machine_1.asm
index ecb7c09c..9350ffd3 100644
--- a/audio/sfx/healing_machine_1.asm
+++ b/audio/sfx/healing_machine_1.asm
@@ -1,9 +1,9 @@
-SFX_Healing_Machine_1_Ch1:
- duty 2
- unknownsfx0x10 44
- unknownsfx0x20 4, 242, 0, 5
- unknownsfx0x10 34
- unknownsfx0x20 2, 241, 0, 5
- unknownsfx0x10 8
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Healing_Machine_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 2, -4
+ square_note 4, 15, 2, 1280
+ pitch_sweep 2, 2
+ square_note 2, 15, 1, 1280
+ pitch_sweep 0, 8
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/healing_machine_3.asm b/audio/sfx/healing_machine_3.asm
index ec73e139..5df3856b 100644
--- a/audio/sfx/healing_machine_3.asm
+++ b/audio/sfx/healing_machine_3.asm
@@ -1,9 +1,9 @@
-SFX_Healing_Machine_3_Ch1:
- duty 2
- unknownsfx0x10 44
- unknownsfx0x20 4, 242, 0, 5
- unknownsfx0x10 34
- unknownsfx0x20 2, 241, 0, 5
- unknownsfx0x10 8
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Healing_Machine_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 2, -4
+ square_note 4, 15, 2, 1280
+ pitch_sweep 2, 2
+ square_note 2, 15, 1, 1280
+ pitch_sweep 0, 8
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/horn_drill.asm b/audio/sfx/horn_drill.asm
index b1af527b..32541241 100644
--- a/audio/sfx/horn_drill.asm
+++ b/audio/sfx/horn_drill.asm
@@ -1,6 +1,6 @@
-SFX_Horn_Drill_Ch1:
- unknownnoise0x20 3, 146, 49
- unknownnoise0x20 3, 178, 50
- unknownnoise0x20 3, 194, 51
- unknownnoise0x20 8, 241, 84
- endchannel
+SFX_Horn_Drill_Ch8:
+ noise_note 3, 9, 2, 49
+ noise_note 3, 11, 2, 50
+ noise_note 3, 12, 2, 51
+ noise_note 8, 15, 1, 84
+ sound_ret
diff --git a/audio/sfx/intro_crash.asm b/audio/sfx/intro_crash.asm
index 69d6ff9b..703edf41 100644
--- a/audio/sfx/intro_crash.asm
+++ b/audio/sfx/intro_crash.asm
@@ -1,4 +1,4 @@
-SFX_Intro_Crash_Ch1:
- unknownnoise0x20 2, 210, 50
- unknownnoise0x20 15, 242, 67
- endchannel
+SFX_Intro_Crash_Ch8:
+ noise_note 2, 13, 2, 50
+ noise_note 15, 15, 2, 67
+ sound_ret
diff --git a/audio/sfx/intro_hip.asm b/audio/sfx/intro_hip.asm
index 3d6de9d6..3d0f6642 100644
--- a/audio/sfx/intro_hip.asm
+++ b/audio/sfx/intro_hip.asm
@@ -1,6 +1,6 @@
-SFX_Intro_Hip_Ch1:
- duty 2
- unknownsfx0x10 38
- unknownsfx0x20 12, 194, 64, 7
- unknownsfx0x10 8
- endchannel
+SFX_Intro_Hip_Ch5:
+ duty_cycle 2
+ pitch_sweep 2, 6
+ square_note 12, 12, 2, 1856
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/intro_hop.asm b/audio/sfx/intro_hop.asm
index 8e077c67..9c7c1ad6 100644
--- a/audio/sfx/intro_hop.asm
+++ b/audio/sfx/intro_hop.asm
@@ -1,6 +1,6 @@
-SFX_Intro_Hop_Ch1:
- duty 2
- unknownsfx0x10 38
- unknownsfx0x20 12, 194, 128, 6
- unknownsfx0x10 8
- endchannel
+SFX_Intro_Hop_Ch5:
+ duty_cycle 2
+ pitch_sweep 2, 6
+ square_note 12, 12, 2, 1664
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/intro_lunge.asm b/audio/sfx/intro_lunge.asm
index cb7570de..ee41e37c 100644
--- a/audio/sfx/intro_lunge.asm
+++ b/audio/sfx/intro_lunge.asm
@@ -1,10 +1,10 @@
-SFX_Intro_Lunge_Ch1:
- unknownnoise0x20 6, 32, 16
- unknownnoise0x20 6, 47, 64
- unknownnoise0x20 6, 79, 65
- unknownnoise0x20 6, 143, 65
- unknownnoise0x20 6, 207, 66
- unknownnoise0x20 8, 215, 66
- unknownnoise0x20 15, 231, 67
- unknownnoise0x20 15, 242, 67
- endchannel
+SFX_Intro_Lunge_Ch8:
+ noise_note 6, 2, 0, 16
+ noise_note 6, 2, -7, 64
+ noise_note 6, 4, -7, 65
+ noise_note 6, 8, -7, 65
+ noise_note 6, 12, -7, 66
+ noise_note 8, 13, 7, 66
+ noise_note 15, 14, 7, 67
+ noise_note 15, 15, 2, 67
+ sound_ret
diff --git a/audio/sfx/intro_raise.asm b/audio/sfx/intro_raise.asm
index 0088228f..1985878b 100644
--- a/audio/sfx/intro_raise.asm
+++ b/audio/sfx/intro_raise.asm
@@ -1,5 +1,5 @@
-SFX_Intro_Raise_Ch1:
- unknownnoise0x20 2, 111, 33
- unknownnoise0x20 2, 175, 49
- unknownnoise0x20 15, 242, 65
- endchannel
+SFX_Intro_Raise_Ch8:
+ noise_note 2, 6, -7, 33
+ noise_note 2, 10, -7, 49
+ noise_note 15, 15, 2, 65
+ sound_ret
diff --git a/audio/sfx/intro_whoosh.asm b/audio/sfx/intro_whoosh.asm
index 5609bfc0..68ba128a 100644
--- a/audio/sfx/intro_whoosh.asm
+++ b/audio/sfx/intro_whoosh.asm
@@ -1,7 +1,7 @@
-SFX_Intro_Whoosh_Ch1:
- unknownnoise0x20 4, 44, 32
- unknownnoise0x20 3, 160, 32
- unknownnoise0x20 3, 176, 33
- unknownnoise0x20 3, 192, 34
- unknownnoise0x20 15, 210, 36
- endchannel
+SFX_Intro_Whoosh_Ch8:
+ noise_note 4, 2, -4, 32
+ noise_note 3, 10, 0, 32
+ noise_note 3, 11, 0, 33
+ noise_note 3, 12, 0, 34
+ noise_note 15, 13, 2, 36
+ sound_ret
diff --git a/audio/sfx/ledge_1.asm b/audio/sfx/ledge_1.asm
index 72aa087e..dd798f40 100644
--- a/audio/sfx/ledge_1.asm
+++ b/audio/sfx/ledge_1.asm
@@ -1,6 +1,6 @@
-SFX_Ledge_1_Ch1:
- duty 2
- unknownsfx0x10 149
- unknownsfx0x20 15, 242, 0, 4
- unknownsfx0x10 8
- endchannel
+SFX_Ledge_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 9, 5
+ square_note 15, 15, 2, 1024
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/ledge_3.asm b/audio/sfx/ledge_3.asm
index a554282e..c218ee1b 100644
--- a/audio/sfx/ledge_3.asm
+++ b/audio/sfx/ledge_3.asm
@@ -1,6 +1,6 @@
-SFX_Ledge_3_Ch1:
- duty 2
- unknownsfx0x10 149
- unknownsfx0x20 15, 242, 0, 4
- unknownsfx0x10 8
- endchannel
+SFX_Ledge_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 9, 5
+ square_note 15, 15, 2, 1024
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/level_up.asm b/audio/sfx/level_up.asm
index f0890eab..f1af4978 100644
--- a/audio/sfx/level_up.asm
+++ b/audio/sfx/level_up.asm
@@ -1,63 +1,63 @@
-SFX_Level_Up_Ch1:
- executemusic
+SFX_Level_Up_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- toggleperfectpitch
- notetype 6, 11, 4
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 6, 11, 4
octave 4
- F_ 4
- notetype 4, 11, 2
- C_ 2
- F_ 2
- C_ 2
- notetype 6, 11, 3
- D# 2
- D# 2
- E_ 2
- notetype 6, 11, 4
- F_ 8
- endchannel
+ note F_, 4
+ note_type 4, 11, 2
+ note C_, 2
+ note F_, 2
+ note C_, 2
+ note_type 6, 11, 3
+ note D#, 2
+ note D#, 2
+ note E_, 2
+ note_type 6, 11, 4
+ note F_, 8
+ sound_ret
-SFX_Level_Up_Ch2:
- executemusic
+SFX_Level_Up_Ch6:
+ execute_music
vibrato 4, 2, 2
- duty 2
- notetype 6, 12, 4
+ duty_cycle 2
+ note_type 6, 12, 4
octave 4
- A_ 4
- notetype 4, 12, 2
- A_ 2
- A_ 2
- A_ 2
- notetype 6, 12, 4
- A# 2
- A# 2
- A# 2
- notetype 6, 12, 4
- A_ 8
- endchannel
+ note A_, 4
+ note_type 4, 12, 2
+ note A_, 2
+ note A_, 2
+ note A_, 2
+ note_type 6, 12, 4
+ note A#, 2
+ note A#, 2
+ note A#, 2
+ note_type 6, 12, 4
+ note A_, 8
+ sound_ret
-SFX_Level_Up_Ch3:
- executemusic
- notetype 6, 1, 0
+SFX_Level_Up_Ch7:
+ execute_music
+ note_type 6, 1, 0
octave 5
- A_ 4
- notetype 4, 1, 0
- F_ 1
+ note A_, 4
+ note_type 4, 1, 0
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- notetype 6, 1, 0
- G_ 1
+ note_type 6, 1, 0
+ note G_, 1
rest 1
- D# 1
+ note D#, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- A_ 8
- endchannel
+ note A_, 8
+ sound_ret
diff --git a/audio/sfx/muted_snare1_1.asm b/audio/sfx/muted_snare1_1.asm
deleted file mode 100644
index b29a5b87..00000000
--- a/audio/sfx/muted_snare1_1.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Muted_Snare1_1_Ch1:
- unknownnoise0x20 0, 161, 24
- unknownnoise0x20 0, 49, 51
- endchannel
diff --git a/audio/sfx/muted_snare1_2.asm b/audio/sfx/muted_snare1_2.asm
deleted file mode 100644
index a7f5467f..00000000
--- a/audio/sfx/muted_snare1_2.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Muted_Snare1_2_Ch1:
- unknownnoise0x20 0, 161, 24
- unknownnoise0x20 0, 49, 51
- endchannel
diff --git a/audio/sfx/muted_snare1_3.asm b/audio/sfx/muted_snare1_3.asm
deleted file mode 100644
index 136018ef..00000000
--- a/audio/sfx/muted_snare1_3.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Muted_Snare1_3_Ch1:
- unknownnoise0x20 0, 161, 24
- unknownnoise0x20 0, 49, 51
- endchannel
diff --git a/audio/sfx/muted_snare1_4.asm b/audio/sfx/muted_snare1_4.asm
deleted file mode 100644
index bcf8c54b..00000000
--- a/audio/sfx/muted_snare1_4.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-SFX_Muted_Snare1_4_Ch7:
- unknownnoise0x20 0, 161, 24
- unknownnoise0x20 0, 49, 51
- endchannel
-
diff --git a/audio/sfx/muted_snare2_1.asm b/audio/sfx/muted_snare2_1.asm
deleted file mode 100644
index 9ad52c27..00000000
--- a/audio/sfx/muted_snare2_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare2_1_Ch1:
- unknownnoise0x20 0, 145, 34
- endchannel
diff --git a/audio/sfx/muted_snare2_2.asm b/audio/sfx/muted_snare2_2.asm
deleted file mode 100644
index 20670ec8..00000000
--- a/audio/sfx/muted_snare2_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare2_2_Ch1:
- unknownnoise0x20 0, 145, 34
- endchannel
diff --git a/audio/sfx/muted_snare2_3.asm b/audio/sfx/muted_snare2_3.asm
deleted file mode 100644
index 007d462d..00000000
--- a/audio/sfx/muted_snare2_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare2_3_Ch1:
- unknownnoise0x20 0, 145, 34
- endchannel
diff --git a/audio/sfx/muted_snare2_4.asm b/audio/sfx/muted_snare2_4.asm
deleted file mode 100644
index 8934afe2..00000000
--- a/audio/sfx/muted_snare2_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Muted_Snare2_4_Ch7:
- unknownnoise0x20 0, 145, 34
- endchannel
-
diff --git a/audio/sfx/muted_snare3_1.asm b/audio/sfx/muted_snare3_1.asm
deleted file mode 100644
index 8db6b874..00000000
--- a/audio/sfx/muted_snare3_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare3_1_Ch1:
- unknownnoise0x20 0, 113, 34
- endchannel
diff --git a/audio/sfx/muted_snare3_2.asm b/audio/sfx/muted_snare3_2.asm
deleted file mode 100644
index 013ea9ab..00000000
--- a/audio/sfx/muted_snare3_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare3_2_Ch1:
- unknownnoise0x20 0, 113, 34
- endchannel
diff --git a/audio/sfx/muted_snare3_3.asm b/audio/sfx/muted_snare3_3.asm
deleted file mode 100644
index 038a66db..00000000
--- a/audio/sfx/muted_snare3_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare3_3_Ch1:
- unknownnoise0x20 0, 113, 34
- endchannel
diff --git a/audio/sfx/muted_snare3_4.asm b/audio/sfx/muted_snare3_4.asm
deleted file mode 100644
index beeec087..00000000
--- a/audio/sfx/muted_snare3_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Muted_Snare3_4_Ch7:
- unknownnoise0x20 0, 113, 34
- endchannel
-
diff --git a/audio/sfx/muted_snare4_1.asm b/audio/sfx/muted_snare4_1.asm
deleted file mode 100644
index 99429995..00000000
--- a/audio/sfx/muted_snare4_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare4_1_Ch1:
- unknownnoise0x20 0, 97, 34
- endchannel
diff --git a/audio/sfx/muted_snare4_2.asm b/audio/sfx/muted_snare4_2.asm
deleted file mode 100644
index 11ee3218..00000000
--- a/audio/sfx/muted_snare4_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare4_2_Ch1:
- unknownnoise0x20 0, 97, 34
- endchannel
diff --git a/audio/sfx/muted_snare4_3.asm b/audio/sfx/muted_snare4_3.asm
deleted file mode 100644
index 86223813..00000000
--- a/audio/sfx/muted_snare4_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Muted_Snare4_3_Ch1:
- unknownnoise0x20 0, 97, 34
- endchannel
diff --git a/audio/sfx/muted_snare4_4.asm b/audio/sfx/muted_snare4_4.asm
deleted file mode 100644
index 7fc65086..00000000
--- a/audio/sfx/muted_snare4_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Muted_Snare4_4_Ch7:
- unknownnoise0x20 0, 97, 34
- endchannel
-
diff --git a/audio/sfx/noise_instrument01_1.asm b/audio/sfx/noise_instrument01_1.asm
new file mode 100644
index 00000000..e545b030
--- /dev/null
+++ b/audio/sfx/noise_instrument01_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument01_1_Ch8:
+ noise_note 0, 12, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument01_2.asm b/audio/sfx/noise_instrument01_2.asm
new file mode 100644
index 00000000..3f4d2bb0
--- /dev/null
+++ b/audio/sfx/noise_instrument01_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument01_2_Ch8:
+ noise_note 0, 12, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument01_3.asm b/audio/sfx/noise_instrument01_3.asm
new file mode 100644
index 00000000..ac360f2e
--- /dev/null
+++ b/audio/sfx/noise_instrument01_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument01_3_Ch8:
+ noise_note 0, 12, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument01_4.asm b/audio/sfx/noise_instrument01_4.asm
new file mode 100755
index 00000000..9b7aaadb
--- /dev/null
+++ b/audio/sfx/noise_instrument01_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument01_4_Ch8:
+ noise_note 0, 12, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument02_1.asm b/audio/sfx/noise_instrument02_1.asm
new file mode 100644
index 00000000..12a7d226
--- /dev/null
+++ b/audio/sfx/noise_instrument02_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument02_1_Ch8:
+ noise_note 0, 11, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument02_2.asm b/audio/sfx/noise_instrument02_2.asm
new file mode 100644
index 00000000..354bbdbc
--- /dev/null
+++ b/audio/sfx/noise_instrument02_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument02_2_Ch8:
+ noise_note 0, 11, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument02_3.asm b/audio/sfx/noise_instrument02_3.asm
new file mode 100644
index 00000000..2f7f0d6f
--- /dev/null
+++ b/audio/sfx/noise_instrument02_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument02_3_Ch8:
+ noise_note 0, 11, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument02_4.asm b/audio/sfx/noise_instrument02_4.asm
new file mode 100755
index 00000000..769e1610
--- /dev/null
+++ b/audio/sfx/noise_instrument02_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument02_4_Ch8:
+ noise_note 0, 11, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument03_1.asm b/audio/sfx/noise_instrument03_1.asm
new file mode 100644
index 00000000..b75b6479
--- /dev/null
+++ b/audio/sfx/noise_instrument03_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument03_1_Ch8:
+ noise_note 0, 10, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument03_2.asm b/audio/sfx/noise_instrument03_2.asm
new file mode 100644
index 00000000..3551baef
--- /dev/null
+++ b/audio/sfx/noise_instrument03_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument03_2_Ch8:
+ noise_note 0, 10, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument03_3.asm b/audio/sfx/noise_instrument03_3.asm
new file mode 100644
index 00000000..c132ab64
--- /dev/null
+++ b/audio/sfx/noise_instrument03_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument03_3_Ch8:
+ noise_note 0, 10, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument03_4.asm b/audio/sfx/noise_instrument03_4.asm
new file mode 100755
index 00000000..d4a0535d
--- /dev/null
+++ b/audio/sfx/noise_instrument03_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument03_4_Ch8:
+ noise_note 0, 10, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument04_1.asm b/audio/sfx/noise_instrument04_1.asm
new file mode 100644
index 00000000..303f1f1f
--- /dev/null
+++ b/audio/sfx/noise_instrument04_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument04_1_Ch8:
+ noise_note 0, 8, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument04_2.asm b/audio/sfx/noise_instrument04_2.asm
new file mode 100644
index 00000000..b43ae39d
--- /dev/null
+++ b/audio/sfx/noise_instrument04_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument04_2_Ch8:
+ noise_note 0, 8, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument04_3.asm b/audio/sfx/noise_instrument04_3.asm
new file mode 100644
index 00000000..fcd27433
--- /dev/null
+++ b/audio/sfx/noise_instrument04_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument04_3_Ch8:
+ noise_note 0, 8, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument04_4.asm b/audio/sfx/noise_instrument04_4.asm
new file mode 100644
index 00000000..5defa2de
--- /dev/null
+++ b/audio/sfx/noise_instrument04_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument04_4_Ch8:
+ noise_note 0, 8, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument05_1.asm b/audio/sfx/noise_instrument05_1.asm
new file mode 100644
index 00000000..d119b958
--- /dev/null
+++ b/audio/sfx/noise_instrument05_1.asm
@@ -0,0 +1,8 @@
+SFX_Noise_Instrument05_1_Ch8:
+ noise_note 7, 8, 4, 55
+ noise_note 6, 8, 4, 54
+ noise_note 5, 8, 3, 53
+ noise_note 4, 8, 3, 52
+ noise_note 3, 8, 2, 51
+ noise_note 2, 8, 1, 50
+ sound_ret
diff --git a/audio/sfx/noise_instrument05_2.asm b/audio/sfx/noise_instrument05_2.asm
new file mode 100644
index 00000000..1a0e63b5
--- /dev/null
+++ b/audio/sfx/noise_instrument05_2.asm
@@ -0,0 +1,8 @@
+SFX_Noise_Instrument05_2_Ch8:
+ noise_note 7, 8, 4, 55
+ noise_note 6, 8, 4, 54
+ noise_note 5, 8, 3, 53
+ noise_note 4, 8, 3, 52
+ noise_note 3, 8, 2, 51
+ noise_note 2, 8, 1, 50
+ sound_ret
diff --git a/audio/sfx/noise_instrument05_3.asm b/audio/sfx/noise_instrument05_3.asm
new file mode 100644
index 00000000..a0fec98f
--- /dev/null
+++ b/audio/sfx/noise_instrument05_3.asm
@@ -0,0 +1,8 @@
+SFX_Noise_Instrument05_3_Ch8:
+ noise_note 7, 8, 4, 55
+ noise_note 6, 8, 4, 54
+ noise_note 5, 8, 3, 53
+ noise_note 4, 8, 3, 52
+ noise_note 3, 8, 2, 51
+ noise_note 2, 8, 1, 50
+ sound_ret
diff --git a/audio/sfx/noise_instrument05_4.asm b/audio/sfx/noise_instrument05_4.asm
new file mode 100644
index 00000000..6e713056
--- /dev/null
+++ b/audio/sfx/noise_instrument05_4.asm
@@ -0,0 +1,8 @@
+SFX_Noise_Instrument05_4_Ch8:
+ noise_note 7, 8, 4, 55
+ noise_note 6, 8, 4, 54
+ noise_note 5, 8, 3, 53
+ noise_note 4, 8, 3, 52
+ noise_note 3, 8, 2, 51
+ noise_note 2, 8, 1, 50
+ sound_ret
diff --git a/audio/sfx/noise_instrument06_1.asm b/audio/sfx/noise_instrument06_1.asm
new file mode 100644
index 00000000..1412fc39
--- /dev/null
+++ b/audio/sfx/noise_instrument06_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument06_1_Ch8:
+ noise_note 0, 5, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument06_2.asm b/audio/sfx/noise_instrument06_2.asm
new file mode 100644
index 00000000..bb591031
--- /dev/null
+++ b/audio/sfx/noise_instrument06_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument06_2_Ch8:
+ noise_note 0, 5, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument06_3.asm b/audio/sfx/noise_instrument06_3.asm
new file mode 100644
index 00000000..b5110d40
--- /dev/null
+++ b/audio/sfx/noise_instrument06_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument06_3_Ch8:
+ noise_note 0, 5, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument06_4.asm b/audio/sfx/noise_instrument06_4.asm
new file mode 100644
index 00000000..fb7402a9
--- /dev/null
+++ b/audio/sfx/noise_instrument06_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument06_4_Ch8:
+ noise_note 0, 5, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument07_1.asm b/audio/sfx/noise_instrument07_1.asm
new file mode 100644
index 00000000..24f481bc
--- /dev/null
+++ b/audio/sfx/noise_instrument07_1.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument07_1_Ch8:
+ noise_note 1, 4, 1, 43
+ noise_note 0, 6, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument07_2.asm b/audio/sfx/noise_instrument07_2.asm
new file mode 100644
index 00000000..87057ed1
--- /dev/null
+++ b/audio/sfx/noise_instrument07_2.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument07_2_Ch8:
+ noise_note 1, 4, 1, 43
+ noise_note 0, 6, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument07_3.asm b/audio/sfx/noise_instrument07_3.asm
new file mode 100644
index 00000000..3beb3f2c
--- /dev/null
+++ b/audio/sfx/noise_instrument07_3.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument07_3_Ch8:
+ noise_note 1, 4, 1, 43
+ noise_note 0, 6, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument07_4.asm b/audio/sfx/noise_instrument07_4.asm
new file mode 100644
index 00000000..d6262f95
--- /dev/null
+++ b/audio/sfx/noise_instrument07_4.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument07_4_Ch8:
+ noise_note 1, 4, 1, 43
+ noise_note 0, 6, 1, 42
+ sound_ret
diff --git a/audio/sfx/noise_instrument08_1.asm b/audio/sfx/noise_instrument08_1.asm
new file mode 100644
index 00000000..60db9e0f
--- /dev/null
+++ b/audio/sfx/noise_instrument08_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument08_1_Ch8:
+ noise_note 0, 8, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument08_2.asm b/audio/sfx/noise_instrument08_2.asm
new file mode 100644
index 00000000..89e5b445
--- /dev/null
+++ b/audio/sfx/noise_instrument08_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument08_2_Ch8:
+ noise_note 0, 8, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument08_3.asm b/audio/sfx/noise_instrument08_3.asm
new file mode 100644
index 00000000..c63be9b4
--- /dev/null
+++ b/audio/sfx/noise_instrument08_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument08_3_Ch8:
+ noise_note 0, 8, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument08_4.asm b/audio/sfx/noise_instrument08_4.asm
new file mode 100644
index 00000000..9c3b3ba6
--- /dev/null
+++ b/audio/sfx/noise_instrument08_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument08_4_Ch8:
+ noise_note 0, 8, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument09_1.asm b/audio/sfx/noise_instrument09_1.asm
new file mode 100644
index 00000000..047f5469
--- /dev/null
+++ b/audio/sfx/noise_instrument09_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument09_1_Ch8:
+ noise_note 0, 8, 2, 35
+ sound_ret
diff --git a/audio/sfx/noise_instrument09_2.asm b/audio/sfx/noise_instrument09_2.asm
new file mode 100644
index 00000000..093f912e
--- /dev/null
+++ b/audio/sfx/noise_instrument09_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument09_2_Ch8:
+ noise_note 0, 8, 2, 35
+ sound_ret
diff --git a/audio/sfx/noise_instrument09_3.asm b/audio/sfx/noise_instrument09_3.asm
new file mode 100644
index 00000000..2ab061db
--- /dev/null
+++ b/audio/sfx/noise_instrument09_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument09_3_Ch8:
+ noise_note 0, 8, 2, 35
+ sound_ret
diff --git a/audio/sfx/noise_instrument09_4.asm b/audio/sfx/noise_instrument09_4.asm
new file mode 100644
index 00000000..89839b7c
--- /dev/null
+++ b/audio/sfx/noise_instrument09_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument09_4_Ch8:
+ noise_note 0, 8, 2, 35
+ sound_ret
diff --git a/audio/sfx/noise_instrument10_1.asm b/audio/sfx/noise_instrument10_1.asm
new file mode 100644
index 00000000..1628fb88
--- /dev/null
+++ b/audio/sfx/noise_instrument10_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument10_1_Ch8:
+ noise_note 0, 8, 2, 37
+ sound_ret
diff --git a/audio/sfx/noise_instrument10_2.asm b/audio/sfx/noise_instrument10_2.asm
new file mode 100644
index 00000000..e1ed23ce
--- /dev/null
+++ b/audio/sfx/noise_instrument10_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument10_2_Ch8:
+ noise_note 0, 8, 2, 37
+ sound_ret
diff --git a/audio/sfx/noise_instrument10_3.asm b/audio/sfx/noise_instrument10_3.asm
new file mode 100644
index 00000000..a175ad17
--- /dev/null
+++ b/audio/sfx/noise_instrument10_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument10_3_Ch8:
+ noise_note 0, 8, 2, 37
+ sound_ret
diff --git a/audio/sfx/noise_instrument10_4.asm b/audio/sfx/noise_instrument10_4.asm
new file mode 100644
index 00000000..694fa6c7
--- /dev/null
+++ b/audio/sfx/noise_instrument10_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument10_4_Ch8:
+ noise_note 0, 8, 2, 37
+ sound_ret
diff --git a/audio/sfx/noise_instrument11_1.asm b/audio/sfx/noise_instrument11_1.asm
new file mode 100644
index 00000000..e2f8729e
--- /dev/null
+++ b/audio/sfx/noise_instrument11_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument11_1_Ch8:
+ noise_note 0, 8, 2, 38
+ sound_ret
diff --git a/audio/sfx/noise_instrument11_2.asm b/audio/sfx/noise_instrument11_2.asm
new file mode 100644
index 00000000..925c421a
--- /dev/null
+++ b/audio/sfx/noise_instrument11_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument11_2_Ch8:
+ noise_note 0, 8, 2, 38
+ sound_ret
diff --git a/audio/sfx/noise_instrument11_3.asm b/audio/sfx/noise_instrument11_3.asm
new file mode 100644
index 00000000..72f54e99
--- /dev/null
+++ b/audio/sfx/noise_instrument11_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument11_3_Ch8:
+ noise_note 0, 8, 2, 38
+ sound_ret
diff --git a/audio/sfx/noise_instrument11_4.asm b/audio/sfx/noise_instrument11_4.asm
new file mode 100644
index 00000000..868b73c6
--- /dev/null
+++ b/audio/sfx/noise_instrument11_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument11_4_Ch8:
+ noise_note 0, 8, 2, 38
+ sound_ret
diff --git a/audio/sfx/noise_instrument12_1.asm b/audio/sfx/noise_instrument12_1.asm
new file mode 100644
index 00000000..f1e6379a
--- /dev/null
+++ b/audio/sfx/noise_instrument12_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument12_1_Ch8:
+ noise_note 0, 10, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument12_2.asm b/audio/sfx/noise_instrument12_2.asm
new file mode 100644
index 00000000..f9c2e1a9
--- /dev/null
+++ b/audio/sfx/noise_instrument12_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument12_2_Ch8:
+ noise_note 0, 10, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument12_3.asm b/audio/sfx/noise_instrument12_3.asm
new file mode 100644
index 00000000..b5347639
--- /dev/null
+++ b/audio/sfx/noise_instrument12_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument12_3_Ch8:
+ noise_note 0, 10, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument12_4.asm b/audio/sfx/noise_instrument12_4.asm
new file mode 100644
index 00000000..1d55d4f5
--- /dev/null
+++ b/audio/sfx/noise_instrument12_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument12_4_Ch8:
+ noise_note 0, 10, 1, 16
+ sound_ret
diff --git a/audio/sfx/noise_instrument13_1.asm b/audio/sfx/noise_instrument13_1.asm
new file mode 100644
index 00000000..50569b26
--- /dev/null
+++ b/audio/sfx/noise_instrument13_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument13_1_Ch8:
+ noise_note 0, 10, 2, 17
+ sound_ret
diff --git a/audio/sfx/noise_instrument13_2.asm b/audio/sfx/noise_instrument13_2.asm
new file mode 100644
index 00000000..5a5120f6
--- /dev/null
+++ b/audio/sfx/noise_instrument13_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument13_2_Ch8:
+ noise_note 0, 10, 2, 17
+ sound_ret
diff --git a/audio/sfx/noise_instrument13_3.asm b/audio/sfx/noise_instrument13_3.asm
new file mode 100644
index 00000000..848746d7
--- /dev/null
+++ b/audio/sfx/noise_instrument13_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument13_3_Ch8:
+ noise_note 0, 10, 2, 17
+ sound_ret
diff --git a/audio/sfx/noise_instrument13_4.asm b/audio/sfx/noise_instrument13_4.asm
new file mode 100644
index 00000000..1b461841
--- /dev/null
+++ b/audio/sfx/noise_instrument13_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument13_4_Ch8:
+ noise_note 0, 10, 2, 17
+ sound_ret
diff --git a/audio/sfx/noise_instrument14_1.asm b/audio/sfx/noise_instrument14_1.asm
new file mode 100644
index 00000000..9621ef42
--- /dev/null
+++ b/audio/sfx/noise_instrument14_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument14_1_Ch8:
+ noise_note 0, 10, 2, 80
+ sound_ret
diff --git a/audio/sfx/noise_instrument14_2.asm b/audio/sfx/noise_instrument14_2.asm
new file mode 100644
index 00000000..d413fb1f
--- /dev/null
+++ b/audio/sfx/noise_instrument14_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument14_2_Ch8:
+ noise_note 0, 10, 2, 80
+ sound_ret
diff --git a/audio/sfx/noise_instrument14_3.asm b/audio/sfx/noise_instrument14_3.asm
new file mode 100644
index 00000000..bc115181
--- /dev/null
+++ b/audio/sfx/noise_instrument14_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument14_3_Ch8:
+ noise_note 0, 10, 2, 80
+ sound_ret
diff --git a/audio/sfx/noise_instrument14_4.asm b/audio/sfx/noise_instrument14_4.asm
new file mode 100644
index 00000000..7d1f5734
--- /dev/null
+++ b/audio/sfx/noise_instrument14_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument14_4_Ch8:
+ noise_note 0, 10, 2, 80
+ sound_ret
diff --git a/audio/sfx/noise_instrument15_1.asm b/audio/sfx/noise_instrument15_1.asm
new file mode 100644
index 00000000..308746c0
--- /dev/null
+++ b/audio/sfx/noise_instrument15_1.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument15_1_Ch8:
+ noise_note 0, 10, 1, 24
+ noise_note 0, 3, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument15_2.asm b/audio/sfx/noise_instrument15_2.asm
new file mode 100644
index 00000000..c1f63942
--- /dev/null
+++ b/audio/sfx/noise_instrument15_2.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument15_2_Ch8:
+ noise_note 0, 10, 1, 24
+ noise_note 0, 3, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument15_3.asm b/audio/sfx/noise_instrument15_3.asm
new file mode 100644
index 00000000..f77872ae
--- /dev/null
+++ b/audio/sfx/noise_instrument15_3.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument15_3_Ch8:
+ noise_note 0, 10, 1, 24
+ noise_note 0, 3, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument15_4.asm b/audio/sfx/noise_instrument15_4.asm
new file mode 100644
index 00000000..6d25965a
--- /dev/null
+++ b/audio/sfx/noise_instrument15_4.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument15_4_Ch8:
+ noise_note 0, 10, 1, 24
+ noise_note 0, 3, 1, 51
+ sound_ret
diff --git a/audio/sfx/noise_instrument16_1.asm b/audio/sfx/noise_instrument16_1.asm
new file mode 100644
index 00000000..ac830985
--- /dev/null
+++ b/audio/sfx/noise_instrument16_1.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument16_1_Ch8:
+ noise_note 2, 9, 1, 40
+ noise_note 0, 7, 1, 24
+ sound_ret
diff --git a/audio/sfx/noise_instrument16_2.asm b/audio/sfx/noise_instrument16_2.asm
new file mode 100644
index 00000000..e61531bf
--- /dev/null
+++ b/audio/sfx/noise_instrument16_2.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument16_2_Ch8:
+ noise_note 2, 9, 1, 40
+ noise_note 0, 7, 1, 24
+ sound_ret
diff --git a/audio/sfx/noise_instrument16_3.asm b/audio/sfx/noise_instrument16_3.asm
new file mode 100644
index 00000000..99dbca77
--- /dev/null
+++ b/audio/sfx/noise_instrument16_3.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument16_3_Ch8:
+ noise_note 2, 9, 1, 40
+ noise_note 0, 7, 1, 24
+ sound_ret
diff --git a/audio/sfx/noise_instrument16_4.asm b/audio/sfx/noise_instrument16_4.asm
new file mode 100644
index 00000000..8a3e4808
--- /dev/null
+++ b/audio/sfx/noise_instrument16_4.asm
@@ -0,0 +1,4 @@
+SFX_Noise_Instrument16_4_Ch8:
+ noise_note 2, 9, 1, 40
+ noise_note 0, 7, 1, 24
+ sound_ret
diff --git a/audio/sfx/noise_instrument17_1.asm b/audio/sfx/noise_instrument17_1.asm
new file mode 100644
index 00000000..41565402
--- /dev/null
+++ b/audio/sfx/noise_instrument17_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument17_1_Ch8:
+ noise_note 0, 9, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument17_2.asm b/audio/sfx/noise_instrument17_2.asm
new file mode 100644
index 00000000..f89ec777
--- /dev/null
+++ b/audio/sfx/noise_instrument17_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument17_2_Ch8:
+ noise_note 0, 9, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument17_3.asm b/audio/sfx/noise_instrument17_3.asm
new file mode 100644
index 00000000..9330fbc0
--- /dev/null
+++ b/audio/sfx/noise_instrument17_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument17_3_Ch8:
+ noise_note 0, 9, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument17_4.asm b/audio/sfx/noise_instrument17_4.asm
new file mode 100644
index 00000000..42d04ea2
--- /dev/null
+++ b/audio/sfx/noise_instrument17_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument17_4_Ch8:
+ noise_note 0, 9, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument18_1.asm b/audio/sfx/noise_instrument18_1.asm
new file mode 100644
index 00000000..e77e331d
--- /dev/null
+++ b/audio/sfx/noise_instrument18_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument18_1_Ch8:
+ noise_note 0, 7, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument18_2.asm b/audio/sfx/noise_instrument18_2.asm
new file mode 100644
index 00000000..e937f9f6
--- /dev/null
+++ b/audio/sfx/noise_instrument18_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument18_2_Ch8:
+ noise_note 0, 7, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument18_3.asm b/audio/sfx/noise_instrument18_3.asm
new file mode 100644
index 00000000..59a5d069
--- /dev/null
+++ b/audio/sfx/noise_instrument18_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument18_3_Ch8:
+ noise_note 0, 7, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument18_4.asm b/audio/sfx/noise_instrument18_4.asm
new file mode 100644
index 00000000..c0c77719
--- /dev/null
+++ b/audio/sfx/noise_instrument18_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument18_4_Ch8:
+ noise_note 0, 7, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument19_1.asm b/audio/sfx/noise_instrument19_1.asm
new file mode 100644
index 00000000..2fa183d6
--- /dev/null
+++ b/audio/sfx/noise_instrument19_1.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument19_1_Ch8:
+ noise_note 0, 6, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument19_2.asm b/audio/sfx/noise_instrument19_2.asm
new file mode 100644
index 00000000..49d09fcc
--- /dev/null
+++ b/audio/sfx/noise_instrument19_2.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument19_2_Ch8:
+ noise_note 0, 6, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument19_3.asm b/audio/sfx/noise_instrument19_3.asm
new file mode 100644
index 00000000..a90b3e4b
--- /dev/null
+++ b/audio/sfx/noise_instrument19_3.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument19_3_Ch8:
+ noise_note 0, 6, 1, 34
+ sound_ret
diff --git a/audio/sfx/noise_instrument19_4.asm b/audio/sfx/noise_instrument19_4.asm
new file mode 100644
index 00000000..1b37d5a1
--- /dev/null
+++ b/audio/sfx/noise_instrument19_4.asm
@@ -0,0 +1,3 @@
+SFX_Noise_Instrument19_4_Ch8:
+ noise_note 0, 6, 1, 34
+ sound_ret
diff --git a/audio/sfx/not_very_effective.asm b/audio/sfx/not_very_effective.asm
index 8a4c521e..c8dfe725 100644
--- a/audio/sfx/not_very_effective.asm
+++ b/audio/sfx/not_very_effective.asm
@@ -1,6 +1,6 @@
-SFX_Not_Very_Effective_Ch1:
- unknownnoise0x20 4, 143, 85
- unknownnoise0x20 2, 244, 68
- unknownnoise0x20 8, 244, 34
- unknownnoise0x20 15, 242, 33
- endchannel
+SFX_Not_Very_Effective_Ch8:
+ noise_note 4, 8, -7, 85
+ noise_note 2, 15, 4, 68
+ noise_note 8, 15, 4, 34
+ noise_note 15, 15, 2, 33
+ sound_ret
diff --git a/audio/sfx/peck.asm b/audio/sfx/peck.asm
index c474e9b3..d478dff6 100644
--- a/audio/sfx/peck.asm
+++ b/audio/sfx/peck.asm
@@ -1,3 +1,3 @@
-SFX_Peck_Ch1:
- unknownnoise0x20 2, 161, 18
- endchannel
+SFX_Peck_Ch8:
+ noise_note 2, 10, 1, 18
+ sound_ret
diff --git a/audio/sfx/poisoned_1.asm b/audio/sfx/poisoned_1.asm
index bfd619fd..6827147c 100644
--- a/audio/sfx/poisoned_1.asm
+++ b/audio/sfx/poisoned_1.asm
@@ -1,8 +1,8 @@
-SFX_Poisoned_1_Ch1:
- duty 0
- unknownsfx0x10 20
- unknownsfx0x20 4, 242, 0, 6
- loopchannel 4, SFX_Poisoned_1_Ch1
- unknownsfx0x20 15, 243, 0, 6
- unknownsfx0x10 8
- endchannel
+SFX_Poisoned_1_Ch5:
+ duty_cycle 0
+ pitch_sweep 1, 4
+ square_note 4, 15, 2, 1536
+ sound_loop 4, SFX_Poisoned_1_Ch5
+ square_note 15, 15, 3, 1536
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/poisoned_3.asm b/audio/sfx/poisoned_3.asm
index b972ca92..fa1808c3 100644
--- a/audio/sfx/poisoned_3.asm
+++ b/audio/sfx/poisoned_3.asm
@@ -1,8 +1,8 @@
-SFX_Poisoned_3_Ch1:
- duty 0
- unknownsfx0x10 20
- unknownsfx0x20 4, 242, 0, 6
- loopchannel 4, SFX_Poisoned_3_Ch1
- unknownsfx0x20 15, 243, 0, 6
- unknownsfx0x10 8
- endchannel
+SFX_Poisoned_3_Ch5:
+ duty_cycle 0
+ pitch_sweep 1, 4
+ square_note 4, 15, 2, 1536
+ sound_loop 4, SFX_Poisoned_3_Ch5
+ square_note 15, 15, 3, 1536
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/pokedex_rating_1.asm b/audio/sfx/pokedex_rating_1.asm
index eccf0ee5..0df1138f 100644
--- a/audio/sfx/pokedex_rating_1.asm
+++ b/audio/sfx/pokedex_rating_1.asm
@@ -1,77 +1,77 @@
-SFX_Pokedex_Rating_1_Ch1:
- executemusic
+SFX_Pokedex_Rating_1_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- notetype 5, 11, 1
+ duty_cycle 2
+ note_type 5, 11, 1
octave 3
- A_ 2
- A_ 2
- G_ 2
- G_ 2
- F_ 2
- E_ 2
- F_ 2
- A_ 2
+ note A_, 2
+ note A_, 2
+ note G_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note A_, 2
octave 4
- C_ 4
- E_ 4
+ note C_, 4
+ note E_, 4
octave 3
- F_ 4
- endchannel
+ note F_, 4
+ sound_ret
-SFX_Pokedex_Rating_1_Ch2:
- executemusic
- duty 2
- notetype 5, 12, 2
+SFX_Pokedex_Rating_1_Ch6:
+ execute_music
+ duty_cycle 2
+ note_type 5, 12, 2
octave 5
- F_ 2
- E_ 1
+ note F_, 2
+ note E_, 1
rest 1
- D_ 2
- C_ 1
+ note D_, 2
+ note C_, 1
rest 1
octave 4
- A# 2
+ note A#, 2
octave 5
- C_ 2
- D_ 2
- E_ 2
- F_ 4
- G_ 4
- F_ 4
- endchannel
+ note C_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 4
+ note G_, 4
+ note F_, 4
+ sound_ret
-SFX_Pokedex_Rating_1_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Pokedex_Rating_1_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- F_ 2
+ note F_, 2
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- A# 1
+ note A#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 3
- C_ 1
+ note C_, 1
rest 3
octave 4
- F_ 2
+ note F_, 2
rest 2
- endchannel
+ sound_ret
diff --git a/audio/sfx/pokedex_rating_3.asm b/audio/sfx/pokedex_rating_3.asm
index ec82888e..18dbcda2 100644
--- a/audio/sfx/pokedex_rating_3.asm
+++ b/audio/sfx/pokedex_rating_3.asm
@@ -1,77 +1,77 @@
-SFX_Pokedex_Rating_3_Ch1:
- executemusic
+SFX_Pokedex_Rating_3_Ch5:
+ execute_music
tempo 256
volume 7, 7
- duty 2
- notetype 5, 11, 1
+ duty_cycle 2
+ note_type 5, 11, 1
octave 3
- A_ 2
- A_ 2
- G_ 2
- G_ 2
- F_ 2
- E_ 2
- F_ 2
- A_ 2
+ note A_, 2
+ note A_, 2
+ note G_, 2
+ note G_, 2
+ note F_, 2
+ note E_, 2
+ note F_, 2
+ note A_, 2
octave 4
- C_ 4
- E_ 4
+ note C_, 4
+ note E_, 4
octave 3
- F_ 4
- endchannel
+ note F_, 4
+ sound_ret
-SFX_Pokedex_Rating_3_Ch2:
- executemusic
- duty 2
- notetype 5, 12, 2
+SFX_Pokedex_Rating_3_Ch6:
+ execute_music
+ duty_cycle 2
+ note_type 5, 12, 2
octave 5
- F_ 2
- E_ 1
+ note F_, 2
+ note E_, 1
rest 1
- D_ 2
- C_ 1
+ note D_, 2
+ note C_, 1
rest 1
octave 4
- A# 2
+ note A#, 2
octave 5
- C_ 2
- D_ 2
- E_ 2
- F_ 4
- G_ 4
- F_ 4
- endchannel
+ note C_, 2
+ note D_, 2
+ note E_, 2
+ note F_, 4
+ note G_, 4
+ note F_, 4
+ sound_ret
-SFX_Pokedex_Rating_3_Ch3:
- executemusic
- notetype 5, 1, 0
+SFX_Pokedex_Rating_3_Ch7:
+ execute_music
+ note_type 5, 1, 0
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- F_ 2
+ note F_, 2
octave 5
- C_ 1
+ note C_, 1
rest 1
octave 4
- A# 1
+ note A#, 1
rest 1
- A_ 1
+ note A_, 1
rest 1
- G_ 1
+ note G_, 1
rest 1
- F_ 1
+ note F_, 1
rest 1
- E_ 1
+ note E_, 1
rest 1
octave 5
- F_ 1
+ note F_, 1
rest 3
- C_ 1
+ note C_, 1
rest 3
octave 4
- F_ 2
+ note F_, 2
rest 2
- endchannel
+ sound_ret
diff --git a/audio/sfx/pokeflute.asm b/audio/sfx/pokeflute.asm
index cf61a6ee..88f33d0b 100644
--- a/audio/sfx/pokeflute.asm
+++ b/audio/sfx/pokeflute.asm
@@ -1,21 +1,21 @@
-SFX_Pokeflute_Ch1:
+SFX_Pokeflute_Ch3:
vibrato 16, 1, 4
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 5
- E_ 2
- F_ 2
- G_ 4
- A_ 2
- G_ 2
+ note E_, 2
+ note F_, 2
+ note G_, 4
+ note A_, 2
+ note G_, 2
octave 6
- C_ 4
- C_ 2
- D_ 2
- C_ 2
+ note C_, 4
+ note C_, 2
+ note D_, 2
+ note C_, 2
octave 5
- G_ 2
- A_ 2
- F_ 2
- G_ 8
+ note G_, 2
+ note A_, 2
+ note F_, 2
+ note G_, 8
rest 12
- endchannel
+ sound_ret
diff --git a/audio/sfx/pokeflute_ch1_ch2.asm b/audio/sfx/pokeflute_ch1_ch2.asm
deleted file mode 100644
index 84631bca..00000000
--- a/audio/sfx/pokeflute_ch1_ch2.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-SFX_08_PokeFlute_Ch1:
- tempo 256
-
-
-SFX_08_PokeFlute_Ch2:
- executemusic
- notetype 8, 0, 0
- rest 5
- rest 7
- rest 5
- rest 5
- rest 5
- rest 5
- endchannel
diff --git a/audio/sfx/pokeflute_ch3.asm b/audio/sfx/pokeflute_ch3.asm
deleted file mode 100644
index 3c883462..00000000
--- a/audio/sfx/pokeflute_ch3.asm
+++ /dev/null
@@ -1,13 +0,0 @@
-SFX_08_PokeFlute_Ch3:
- executemusic
- vibrato 16, 1, 4
- notetype 8, 1, 0
- octave 5
- E_ 3
- F_ 3
- G_ 7
- A_ 3
- G_ 3
- octave 6
- C_ 13
- endchannel
diff --git a/audio/sfx/pokeflute_ch5_ch6.asm b/audio/sfx/pokeflute_ch5_ch6.asm
new file mode 100644
index 00000000..4f0e96a8
--- /dev/null
+++ b/audio/sfx/pokeflute_ch5_ch6.asm
@@ -0,0 +1,14 @@
+SFX_Pokeflute_Ch5:
+ tempo 256
+
+
+SFX_Pokeflute_Ch6:
+ execute_music
+ note_type 8, 0, 0
+ rest 5
+ rest 7
+ rest 5
+ rest 5
+ rest 5
+ rest 5
+ sound_ret
diff --git a/audio/sfx/pokeflute_ch7.asm b/audio/sfx/pokeflute_ch7.asm
new file mode 100644
index 00000000..4435c0fb
--- /dev/null
+++ b/audio/sfx/pokeflute_ch7.asm
@@ -0,0 +1,13 @@
+SFX_Pokeflute_Ch7:
+ execute_music
+ vibrato 16, 1, 4
+ note_type 8, 1, 0
+ octave 5
+ note E_, 3
+ note F_, 3
+ note G_, 7
+ note A_, 3
+ note G_, 3
+ octave 6
+ note C_, 13
+ sound_ret
diff --git a/audio/sfx/pound.asm b/audio/sfx/pound.asm
index f70f6725..d1891751 100644
--- a/audio/sfx/pound.asm
+++ b/audio/sfx/pound.asm
@@ -1,3 +1,3 @@
-SFX_Pound_Ch1:
- unknownnoise0x20 2, 161, 34
- endchannel
+SFX_Pound_Ch8:
+ noise_note 2, 10, 1, 34
+ sound_ret
diff --git a/audio/sfx/press_ab_1.asm b/audio/sfx/press_ab_1.asm
index f68a6384..7767547c 100644
--- a/audio/sfx/press_ab_1.asm
+++ b/audio/sfx/press_ab_1.asm
@@ -1,7 +1,7 @@
-SFX_Press_AB_1_Ch1:
- duty 2
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 0, 129, 208, 7
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 12, 161, 208, 7
- endchannel
+SFX_Press_AB_1_Ch5:
+ duty_cycle 2
+ square_note 0, 9, 1, 1984
+ square_note 0, 8, 1, 2000
+ square_note 0, 9, 1, 1984
+ square_note 12, 10, 1, 2000
+ sound_ret
diff --git a/audio/sfx/press_ab_2.asm b/audio/sfx/press_ab_2.asm
index 83b5ccd6..7e01bce5 100644
--- a/audio/sfx/press_ab_2.asm
+++ b/audio/sfx/press_ab_2.asm
@@ -1,7 +1,7 @@
-SFX_Press_AB_2_Ch1:
- duty 2
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 0, 129, 208, 7
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 12, 161, 208, 7
- endchannel
+SFX_Press_AB_2_Ch5:
+ duty_cycle 2
+ square_note 0, 9, 1, 1984
+ square_note 0, 8, 1, 2000
+ square_note 0, 9, 1, 1984
+ square_note 12, 10, 1, 2000
+ sound_ret
diff --git a/audio/sfx/press_ab_3.asm b/audio/sfx/press_ab_3.asm
index 167c0fb1..4b4c78b9 100644
--- a/audio/sfx/press_ab_3.asm
+++ b/audio/sfx/press_ab_3.asm
@@ -1,7 +1,7 @@
-SFX_Press_AB_3_Ch1:
- duty 2
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 0, 129, 208, 7
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 12, 161, 208, 7
- endchannel
+SFX_Press_AB_3_Ch5:
+ duty_cycle 2
+ square_note 0, 9, 1, 1984
+ square_note 0, 8, 1, 2000
+ square_note 0, 9, 1, 1984
+ square_note 12, 10, 1, 2000
+ sound_ret
diff --git a/audio/sfx/psybeam.asm b/audio/sfx/psybeam.asm
index 893d4334..2b94cf6d 100644
--- a/audio/sfx/psybeam.asm
+++ b/audio/sfx/psybeam.asm
@@ -1,25 +1,25 @@
-SFX_Psybeam_Ch1:
- dutycycle 161
- unknownsfx0x20 10, 241, 64, 6
- unknownsfx0x20 10, 243, 128, 6
- unknownsfx0x20 10, 242, 32, 6
- loopchannel 4, SFX_Psybeam_Ch1
- unknownsfx0x20 10, 241, 64, 6
- endchannel
+SFX_Psybeam_Ch5:
+ duty_cycle_pattern 2, 2, 0, 1
+ square_note 10, 15, 1, 1600
+ square_note 10, 15, 3, 1664
+ square_note 10, 15, 2, 1568
+ sound_loop 4, SFX_Psybeam_Ch5
+ square_note 10, 15, 1, 1600
+ sound_ret
-SFX_Psybeam_Ch2:
- dutycycle 179
- unknownsfx0x20 10, 243, 113, 5
- unknownsfx0x20 7, 227, 49, 5
- unknownsfx0x20 10, 241, 81, 5
- loopchannel 4, SFX_Psybeam_Ch2
- unknownsfx0x20 10, 241, 113, 5
- endchannel
+SFX_Psybeam_Ch6:
+ duty_cycle_pattern 2, 3, 0, 3
+ square_note 10, 15, 3, 1393
+ square_note 7, 14, 3, 1329
+ square_note 10, 15, 1, 1361
+ sound_loop 4, SFX_Psybeam_Ch6
+ square_note 10, 15, 1, 1393
+ sound_ret
-SFX_Psybeam_Ch3:
- unknownnoise0x20 2, 209, 74
- unknownnoise0x20 2, 210, 42
- loopchannel 21, SFX_Psybeam_Ch3
- endchannel
+SFX_Psybeam_Ch8:
+ noise_note 2, 13, 1, 74
+ noise_note 2, 13, 2, 42
+ sound_loop 21, SFX_Psybeam_Ch8
+ sound_ret
diff --git a/audio/sfx/psychic_m.asm b/audio/sfx/psychic_m.asm
index abaa8345..ff0ab384 100644
--- a/audio/sfx/psychic_m.asm
+++ b/audio/sfx/psychic_m.asm
@@ -1,32 +1,32 @@
-SFX_Psychic_M_Ch1:
- duty 2
- unknownsfx0x10 247
- unknownsfx0x20 8, 196, 189, 7
- unknownsfx0x20 8, 196, 190, 7
- unknownsfx0x20 8, 196, 191, 7
- unknownsfx0x20 8, 196, 192, 7
- unknownsfx0x20 15, 196, 193, 7
- unknownsfx0x20 15, 242, 192, 7
- unknownsfx0x10 8
- endchannel
+SFX_Psychic_M_Ch5:
+ duty_cycle 2
+ pitch_sweep 15, 7
+ square_note 8, 12, 4, 1981
+ square_note 8, 12, 4, 1982
+ square_note 8, 12, 4, 1983
+ square_note 8, 12, 4, 1984
+ square_note 15, 12, 4, 1985
+ square_note 15, 15, 2, 1984
+ pitch_sweep 0, 8
+ sound_ret
-SFX_Psychic_M_Ch2:
- duty 2
- unknownsfx0x20 8, 196, 112, 7
- unknownsfx0x20 8, 196, 97, 7
- unknownsfx0x20 8, 196, 98, 7
- unknownsfx0x20 8, 196, 99, 7
- unknownsfx0x20 15, 196, 100, 7
- unknownsfx0x20 15, 242, 100, 7
- endchannel
+SFX_Psychic_M_Ch6:
+ duty_cycle 2
+ square_note 8, 12, 4, 1904
+ square_note 8, 12, 4, 1889
+ square_note 8, 12, 4, 1890
+ square_note 8, 12, 4, 1891
+ square_note 15, 12, 4, 1892
+ square_note 15, 15, 2, 1892
+ sound_ret
-SFX_Psychic_M_Ch3:
- unknownnoise0x20 15, 63, 20
- unknownnoise0x20 15, 207, 19
- unknownnoise0x20 15, 207, 18
- unknownnoise0x20 15, 207, 17
- unknownnoise0x20 15, 207, 16
- unknownnoise0x20 15, 194, 16
- endchannel
+SFX_Psychic_M_Ch8:
+ noise_note 15, 3, -7, 20
+ noise_note 15, 12, -7, 19
+ noise_note 15, 12, -7, 18
+ noise_note 15, 12, -7, 17
+ noise_note 15, 12, -7, 16
+ noise_note 15, 12, 2, 16
+ sound_ret
diff --git a/audio/sfx/purchase_1.asm b/audio/sfx/purchase_1.asm
index 767035ea..9dc06f0b 100644
--- a/audio/sfx/purchase_1.asm
+++ b/audio/sfx/purchase_1.asm
@@ -1,13 +1,13 @@
-SFX_Purchase_1_Ch1:
- duty 2
- unknownsfx0x20 4, 225, 0, 7
- unknownsfx0x20 8, 242, 224, 7
- endchannel
+SFX_Purchase_1_Ch5:
+ duty_cycle 2
+ square_note 4, 14, 1, 1792
+ square_note 8, 15, 2, 2016
+ sound_ret
-SFX_Purchase_1_Ch2:
- duty 2
- unknownsfx0x20 1, 8, 0, 0
- unknownsfx0x20 4, 145, 193, 6
- unknownsfx0x20 8, 162, 161, 7
- endchannel
+SFX_Purchase_1_Ch6:
+ duty_cycle 2
+ square_note 1, 0, 8, 0
+ square_note 4, 9, 1, 1729
+ square_note 8, 10, 2, 1953
+ sound_ret
diff --git a/audio/sfx/purchase_3.asm b/audio/sfx/purchase_3.asm
index 65a22527..eaa4bb60 100644
--- a/audio/sfx/purchase_3.asm
+++ b/audio/sfx/purchase_3.asm
@@ -1,13 +1,13 @@
-SFX_Purchase_3_Ch1:
- duty 2
- unknownsfx0x20 4, 225, 0, 7
- unknownsfx0x20 8, 242, 224, 7
- endchannel
+SFX_Purchase_3_Ch5:
+ duty_cycle 2
+ square_note 4, 14, 1, 1792
+ square_note 8, 15, 2, 2016
+ sound_ret
-SFX_Purchase_3_Ch2:
- duty 2
- unknownsfx0x20 1, 8, 0, 0
- unknownsfx0x20 4, 145, 193, 6
- unknownsfx0x20 8, 162, 161, 7
- endchannel
+SFX_Purchase_3_Ch6:
+ duty_cycle 2
+ square_note 1, 0, 8, 0
+ square_note 4, 9, 1, 1729
+ square_note 8, 10, 2, 1953
+ sound_ret
diff --git a/audio/sfx/push_boulder_1.asm b/audio/sfx/push_boulder_1.asm
index cf43bbcf..c2155ca9 100644
--- a/audio/sfx/push_boulder_1.asm
+++ b/audio/sfx/push_boulder_1.asm
@@ -1,10 +1,10 @@
-SFX_Push_Boulder_1_Ch1:
- unknownnoise0x20 4, 162, 35
- unknownnoise0x20 8, 241, 52
- unknownnoise0x20 15, 0, 0
- unknownnoise0x20 2, 247, 36
- unknownnoise0x20 2, 247, 52
- unknownnoise0x20 4, 247, 68
- unknownnoise0x20 8, 244, 85
- unknownnoise0x20 8, 241, 68
- endchannel
+SFX_Push_Boulder_1_Ch8:
+ noise_note 4, 10, 2, 35
+ noise_note 8, 15, 1, 52
+ noise_note 15, 0, 0, 0
+ noise_note 2, 15, 7, 36
+ noise_note 2, 15, 7, 52
+ noise_note 4, 15, 7, 68
+ noise_note 8, 15, 4, 85
+ noise_note 8, 15, 1, 68
+ sound_ret
diff --git a/audio/sfx/push_boulder_3.asm b/audio/sfx/push_boulder_3.asm
index 9f536964..5f084139 100644
--- a/audio/sfx/push_boulder_3.asm
+++ b/audio/sfx/push_boulder_3.asm
@@ -1,10 +1,10 @@
-SFX_Push_Boulder_3_Ch1:
- unknownnoise0x20 4, 162, 35
- unknownnoise0x20 8, 241, 52
- unknownnoise0x20 15, 0, 0
- unknownnoise0x20 2, 247, 36
- unknownnoise0x20 2, 247, 52
- unknownnoise0x20 4, 247, 68
- unknownnoise0x20 8, 244, 85
- unknownnoise0x20 8, 241, 68
- endchannel
+SFX_Push_Boulder_3_Ch8:
+ noise_note 4, 10, 2, 35
+ noise_note 8, 15, 1, 52
+ noise_note 15, 0, 0, 0
+ noise_note 2, 15, 7, 36
+ noise_note 2, 15, 7, 52
+ noise_note 4, 15, 7, 68
+ noise_note 8, 15, 4, 85
+ noise_note 8, 15, 1, 68
+ sound_ret
diff --git a/audio/sfx/run.asm b/audio/sfx/run.asm
index 656d3d01..b4ed791b 100644
--- a/audio/sfx/run.asm
+++ b/audio/sfx/run.asm
@@ -1,13 +1,13 @@
-SFX_Run_Ch1:
- unknownnoise0x20 2, 97, 35
- unknownnoise0x20 2, 161, 51
- unknownnoise0x20 2, 193, 51
- unknownnoise0x20 2, 81, 17
- unknownnoise0x20 2, 241, 51
- unknownnoise0x20 2, 65, 17
- unknownnoise0x20 2, 193, 51
- unknownnoise0x20 2, 49, 17
- unknownnoise0x20 2, 129, 51
- unknownnoise0x20 2, 49, 17
- unknownnoise0x20 8, 65, 51
- endchannel
+SFX_Run_Ch8:
+ noise_note 2, 6, 1, 35
+ noise_note 2, 10, 1, 51
+ noise_note 2, 12, 1, 51
+ noise_note 2, 5, 1, 17
+ noise_note 2, 15, 1, 51
+ noise_note 2, 4, 1, 17
+ noise_note 2, 12, 1, 51
+ noise_note 2, 3, 1, 17
+ noise_note 2, 8, 1, 51
+ noise_note 2, 3, 1, 17
+ noise_note 8, 4, 1, 51
+ sound_ret
diff --git a/audio/sfx/safari_zone_pa.asm b/audio/sfx/safari_zone_pa.asm
index d385feb3..6ce7b7c3 100644
--- a/audio/sfx/safari_zone_pa.asm
+++ b/audio/sfx/safari_zone_pa.asm
@@ -1,9 +1,9 @@
-SFX_Safari_Zone_PA_Ch1:
- duty 2
- unknownsfx0x20 15, 243, 48, 7
- unknownsfx0x20 8, 101, 48, 7
- unknownsfx0x20 15, 244, 0, 7
- unknownsfx0x20 15, 116, 0, 7
- unknownsfx0x20 15, 68, 0, 7
- unknownsfx0x20 15, 36, 0, 7
- endchannel
+SFX_Safari_Zone_PA_Ch5:
+ duty_cycle 2
+ square_note 15, 15, 3, 1840
+ square_note 8, 6, 5, 1840
+ square_note 15, 15, 4, 1792
+ square_note 15, 7, 4, 1792
+ square_note 15, 4, 4, 1792
+ square_note 15, 2, 4, 1792
+ sound_ret
diff --git a/audio/sfx/save_1.asm b/audio/sfx/save_1.asm
index 13cb46e5..d0849ff5 100644
--- a/audio/sfx/save_1.asm
+++ b/audio/sfx/save_1.asm
@@ -1,23 +1,23 @@
-SFX_Save_1_Ch1:
- duty 2
- unknownsfx0x20 4, 244, 0, 7
- unknownsfx0x20 2, 228, 0, 6
- unknownsfx0x20 2, 228, 128, 6
- unknownsfx0x20 2, 228, 192, 6
- unknownsfx0x20 2, 228, 0, 7
- unknownsfx0x20 2, 228, 160, 7
- unknownsfx0x20 15, 242, 224, 7
- endchannel
+SFX_Save_1_Ch5:
+ duty_cycle 2
+ square_note 4, 15, 4, 1792
+ square_note 2, 14, 4, 1536
+ square_note 2, 14, 4, 1664
+ square_note 2, 14, 4, 1728
+ square_note 2, 14, 4, 1792
+ square_note 2, 14, 4, 1952
+ square_note 15, 15, 2, 2016
+ sound_ret
-SFX_Save_1_Ch2:
- duty 2
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 2, 212, 1, 7
- unknownsfx0x20 2, 196, 1, 6
- unknownsfx0x20 2, 196, 129, 6
- unknownsfx0x20 2, 196, 193, 6
- unknownsfx0x20 2, 196, 1, 7
- unknownsfx0x20 2, 196, 161, 7
- unknownsfx0x20 15, 210, 225, 7
- endchannel
+SFX_Save_1_Ch6:
+ duty_cycle 2
+ square_note 4, 0, 8, 0
+ square_note 2, 13, 4, 1793
+ square_note 2, 12, 4, 1537
+ square_note 2, 12, 4, 1665
+ square_note 2, 12, 4, 1729
+ square_note 2, 12, 4, 1793
+ square_note 2, 12, 4, 1953
+ square_note 15, 13, 2, 2017
+ sound_ret
diff --git a/audio/sfx/save_3.asm b/audio/sfx/save_3.asm
index 7f0df72c..10589ab3 100644
--- a/audio/sfx/save_3.asm
+++ b/audio/sfx/save_3.asm
@@ -1,18 +1,19 @@
-SFX_Save_3_Ch1:
- duty 2
- unknownsfx0x20 3, 228, 0, 6
- unknownsfx0x20 3, 228, 128, 6
- unknownsfx0x20 3, 228, 192, 6
- unknownsfx0x20 3, 228, 0, 7
- unknownsfx0x20 15, 242, 224, 7
- endchannel
+SFX_Save_3_Ch5:
+ duty_cycle 2
+ square_note 3, 14, 4, 1536
+ square_note 3, 14, 4, 1664
+ square_note 3, 14, 4, 1728
+ square_note 3, 14, 4, 1792
+ square_note 15, 15, 2, 2016
+ sound_ret
-SFX_Save_3_Ch2:
- duty 2
- unknownsfx0x20 3, 8, 0, 0
- unknownsfx0x20 3, 196, 1, 6
- unknownsfx0x20 3, 196, 129, 6
- unknownsfx0x20 3, 196, 193, 6
- unknownsfx0x20 3, 196, 1, 7
- unknownsfx0x20 15, 210, 225, 7
- endchannel
+
+SFX_Save_3_Ch6:
+ duty_cycle 2
+ square_note 3, 0, 8, 0
+ square_note 3, 12, 4, 1537
+ square_note 3, 12, 4, 1665
+ square_note 3, 12, 4, 1729
+ square_note 3, 12, 4, 1793
+ square_note 15, 13, 2, 2017
+ sound_ret
diff --git a/audio/sfx/shooting_star.asm b/audio/sfx/shooting_star.asm
index 282f83b5..6a06ec5a 100644
--- a/audio/sfx/shooting_star.asm
+++ b/audio/sfx/shooting_star.asm
@@ -1,14 +1,14 @@
-SFX_Shooting_Star_Ch1:
- dutycycle 136
- unknownsfx0x10 47
- unknownsfx0x20 4, 64, 224, 7
- unknownsfx0x20 4, 96, 224, 7
- unknownsfx0x20 4, 128, 224, 7
- unknownsfx0x20 8, 160, 224, 7
- unknownsfx0x20 8, 160, 224, 7
- unknownsfx0x20 8, 128, 224, 7
- unknownsfx0x20 8, 96, 224, 7
- unknownsfx0x20 8, 48, 224, 7
- unknownsfx0x20 15, 18, 224, 7
- unknownsfx0x10 8
- endchannel
+SFX_Shooting_Star_Ch5:
+ duty_cycle_pattern 2, 0, 2, 0
+ pitch_sweep 2, -7
+ square_note 4, 4, 0, 2016
+ square_note 4, 6, 0, 2016
+ square_note 4, 8, 0, 2016
+ square_note 8, 10, 0, 2016
+ square_note 8, 10, 0, 2016
+ square_note 8, 8, 0, 2016
+ square_note 8, 6, 0, 2016
+ square_note 8, 3, 0, 2016
+ square_note 15, 1, 2, 2016
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/shrink_1.asm b/audio/sfx/shrink_1.asm
index d69d60de..912dd3f9 100644
--- a/audio/sfx/shrink_1.asm
+++ b/audio/sfx/shrink_1.asm
@@ -1,10 +1,10 @@
-SFX_Shrink_1_Ch1:
- duty 1
- unknownsfx0x10 23
- unknownsfx0x20 15, 215, 0, 6
- unknownsfx0x20 15, 183, 128, 5
- unknownsfx0x20 15, 135, 0, 5
- unknownsfx0x20 15, 71, 128, 4
- unknownsfx0x20 15, 23, 0, 4
- unknownsfx0x10 8
- endchannel
+SFX_Shrink_1_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 7
+ square_note 15, 13, 7, 1536
+ square_note 15, 11, 7, 1408
+ square_note 15, 8, 7, 1280
+ square_note 15, 4, 7, 1152
+ square_note 15, 1, 7, 1024
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/shrink_3.asm b/audio/sfx/shrink_3.asm
index e5c4b7af..88da25c2 100644
--- a/audio/sfx/shrink_3.asm
+++ b/audio/sfx/shrink_3.asm
@@ -1,10 +1,10 @@
-SFX_Shrink_3_Ch1:
- duty 1
- unknownsfx0x10 23
- unknownsfx0x20 15, 215, 0, 6
- unknownsfx0x20 15, 183, 128, 5
- unknownsfx0x20 15, 135, 0, 5
- unknownsfx0x20 15, 71, 128, 4
- unknownsfx0x20 15, 23, 0, 4
- unknownsfx0x10 8
- endchannel
+SFX_Shrink_3_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 7
+ square_note 15, 13, 7, 1536
+ square_note 15, 11, 7, 1408
+ square_note 15, 8, 7, 1280
+ square_note 15, 4, 7, 1152
+ square_note 15, 1, 7, 1024
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/silph_scope.asm b/audio/sfx/silph_scope.asm
index ad789af2..4a565740 100644
--- a/audio/sfx/silph_scope.asm
+++ b/audio/sfx/silph_scope.asm
@@ -1,9 +1,9 @@
-SFX_Silph_Scope_Ch1:
- duty 0
- unknownsfx0x20 0, 210, 0, 7
- unknownsfx0x20 0, 210, 64, 7
- unknownsfx0x20 0, 210, 128, 7
- unknownsfx0x20 0, 210, 192, 7
- unknownsfx0x20 10, 225, 224, 7
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Silph_Scope_Ch5:
+ duty_cycle 0
+ square_note 0, 13, 2, 1792
+ square_note 0, 13, 2, 1856
+ square_note 0, 13, 2, 1920
+ square_note 0, 13, 2, 1984
+ square_note 10, 14, 1, 2016
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/slots_new_spin.asm b/audio/sfx/slots_new_spin.asm
index d29529e9..a8b668b8 100644
--- a/audio/sfx/slots_new_spin.asm
+++ b/audio/sfx/slots_new_spin.asm
@@ -1,14 +1,14 @@
-SFX_Slots_New_Spin_Ch1:
- duty 3
- unknownsfx0x20 5, 225, 0, 7
- unknownsfx0x20 2, 225, 128, 7
- unknownsfx0x20 15, 241, 192, 7
- endchannel
+SFX_Slots_New_Spin_Ch5:
+ duty_cycle 3
+ square_note 5, 14, 1, 1792
+ square_note 2, 14, 1, 1920
+ square_note 15, 15, 1, 1984
+ sound_ret
-SFX_Slots_New_Spin_Ch2:
- duty 2
- unknownsfx0x20 4, 193, 193, 6
- unknownsfx0x20 2, 193, 65, 7
- unknownsfx0x20 15, 209, 129, 7
- endchannel
+SFX_Slots_New_Spin_Ch6:
+ duty_cycle 2
+ square_note 4, 12, 1, 1729
+ square_note 2, 12, 1, 1857
+ square_note 15, 13, 1, 1921
+ sound_ret
diff --git a/audio/sfx/slots_reward.asm b/audio/sfx/slots_reward.asm
index d7833f55..8f2d1829 100644
--- a/audio/sfx/slots_reward.asm
+++ b/audio/sfx/slots_reward.asm
@@ -1,5 +1,5 @@
-SFX_Slots_Reward_Ch1:
- duty 2
- unknownsfx0x20 2, 241, 0, 7
- unknownsfx0x20 8, 129, 224, 7
- endchannel
+SFX_Slots_Reward_Ch5:
+ duty_cycle 2
+ square_note 2, 15, 1, 1792
+ square_note 8, 8, 1, 2016
+ sound_ret
diff --git a/audio/sfx/slots_stop_wheel.asm b/audio/sfx/slots_stop_wheel.asm
index 00641a5e..b9a69c19 100644
--- a/audio/sfx/slots_stop_wheel.asm
+++ b/audio/sfx/slots_stop_wheel.asm
@@ -1,6 +1,6 @@
-SFX_Slots_Stop_Wheel_Ch1:
- duty 2
- unknownsfx0x20 1, 242, 160, 6
- unknownsfx0x20 1, 242, 224, 6
- unknownsfx0x20 8, 241, 0, 7
- endchannel
+SFX_Slots_Stop_Wheel_Ch5:
+ duty_cycle 2
+ square_note 1, 15, 2, 1696
+ square_note 1, 15, 2, 1760
+ square_note 8, 15, 1, 1792
+ sound_ret
diff --git a/audio/sfx/snare1_1.asm b/audio/sfx/snare1_1.asm
deleted file mode 100644
index 9f7b4138..00000000
--- a/audio/sfx/snare1_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare1_1_Ch1:
- unknownnoise0x20 0, 193, 51
- endchannel
diff --git a/audio/sfx/snare1_2.asm b/audio/sfx/snare1_2.asm
deleted file mode 100644
index 55fdf84a..00000000
--- a/audio/sfx/snare1_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare1_2_Ch1:
- unknownnoise0x20 0, 193, 51
- endchannel
diff --git a/audio/sfx/snare1_3.asm b/audio/sfx/snare1_3.asm
deleted file mode 100644
index cab603c1..00000000
--- a/audio/sfx/snare1_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare1_3_Ch1:
- unknownnoise0x20 0, 193, 51
- endchannel
diff --git a/audio/sfx/snare1_4.asm b/audio/sfx/snare1_4.asm
deleted file mode 100755
index edeb78ec..00000000
--- a/audio/sfx/snare1_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare1_4_Ch7:
- unknownnoise0x20 0, 193, 51
- endchannel
-
diff --git a/audio/sfx/snare2_1.asm b/audio/sfx/snare2_1.asm
deleted file mode 100644
index e40facb5..00000000
--- a/audio/sfx/snare2_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare2_1_Ch1:
- unknownnoise0x20 0, 177, 51
- endchannel
diff --git a/audio/sfx/snare2_2.asm b/audio/sfx/snare2_2.asm
deleted file mode 100644
index 82deb096..00000000
--- a/audio/sfx/snare2_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare2_2_Ch1:
- unknownnoise0x20 0, 177, 51
- endchannel
diff --git a/audio/sfx/snare2_3.asm b/audio/sfx/snare2_3.asm
deleted file mode 100644
index fb5e1672..00000000
--- a/audio/sfx/snare2_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare2_3_Ch1:
- unknownnoise0x20 0, 177, 51
- endchannel
diff --git a/audio/sfx/snare2_4.asm b/audio/sfx/snare2_4.asm
deleted file mode 100755
index 43807c44..00000000
--- a/audio/sfx/snare2_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare2_4_Ch7:
- unknownnoise0x20 0, 177, 51
- endchannel
-
diff --git a/audio/sfx/snare3_1.asm b/audio/sfx/snare3_1.asm
deleted file mode 100644
index c2b20add..00000000
--- a/audio/sfx/snare3_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare3_1_Ch1:
- unknownnoise0x20 0, 161, 51
- endchannel
diff --git a/audio/sfx/snare3_2.asm b/audio/sfx/snare3_2.asm
deleted file mode 100644
index 16f87fc5..00000000
--- a/audio/sfx/snare3_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare3_2_Ch1:
- unknownnoise0x20 0, 161, 51
- endchannel
diff --git a/audio/sfx/snare3_3.asm b/audio/sfx/snare3_3.asm
deleted file mode 100644
index 6b9a006f..00000000
--- a/audio/sfx/snare3_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare3_3_Ch1:
- unknownnoise0x20 0, 161, 51
- endchannel
diff --git a/audio/sfx/snare3_4.asm b/audio/sfx/snare3_4.asm
deleted file mode 100755
index a0fcb0d7..00000000
--- a/audio/sfx/snare3_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare3_4_Ch7:
- unknownnoise0x20 0, 161, 51
- endchannel
-
diff --git a/audio/sfx/snare4_1.asm b/audio/sfx/snare4_1.asm
deleted file mode 100644
index 2796410c..00000000
--- a/audio/sfx/snare4_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare4_1_Ch1:
- unknownnoise0x20 0, 129, 51
- endchannel
diff --git a/audio/sfx/snare4_2.asm b/audio/sfx/snare4_2.asm
deleted file mode 100644
index 920321ab..00000000
--- a/audio/sfx/snare4_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare4_2_Ch1:
- unknownnoise0x20 0, 129, 51
- endchannel
diff --git a/audio/sfx/snare4_3.asm b/audio/sfx/snare4_3.asm
deleted file mode 100644
index a47c332c..00000000
--- a/audio/sfx/snare4_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare4_3_Ch1:
- unknownnoise0x20 0, 129, 51
- endchannel
diff --git a/audio/sfx/snare4_4.asm b/audio/sfx/snare4_4.asm
deleted file mode 100644
index c1d5cc21..00000000
--- a/audio/sfx/snare4_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare4_4_Ch7:
- unknownnoise0x20 0, 129, 51
- endchannel
-
diff --git a/audio/sfx/snare5_1.asm b/audio/sfx/snare5_1.asm
deleted file mode 100644
index dd4eab3a..00000000
--- a/audio/sfx/snare5_1.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-SFX_Snare5_1_Ch1:
- unknownnoise0x20 7, 132, 55
- unknownnoise0x20 6, 132, 54
- unknownnoise0x20 5, 131, 53
- unknownnoise0x20 4, 131, 52
- unknownnoise0x20 3, 130, 51
- unknownnoise0x20 2, 129, 50
- endchannel
diff --git a/audio/sfx/snare5_2.asm b/audio/sfx/snare5_2.asm
deleted file mode 100644
index fad74021..00000000
--- a/audio/sfx/snare5_2.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-SFX_Snare5_2_Ch1:
- unknownnoise0x20 7, 132, 55
- unknownnoise0x20 6, 132, 54
- unknownnoise0x20 5, 131, 53
- unknownnoise0x20 4, 131, 52
- unknownnoise0x20 3, 130, 51
- unknownnoise0x20 2, 129, 50
- endchannel
diff --git a/audio/sfx/snare5_3.asm b/audio/sfx/snare5_3.asm
deleted file mode 100644
index d0ca1d91..00000000
--- a/audio/sfx/snare5_3.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-SFX_Snare5_3_Ch1:
- unknownnoise0x20 7, 132, 55
- unknownnoise0x20 6, 132, 54
- unknownnoise0x20 5, 131, 53
- unknownnoise0x20 4, 131, 52
- unknownnoise0x20 3, 130, 51
- unknownnoise0x20 2, 129, 50
- endchannel
diff --git a/audio/sfx/snare5_4.asm b/audio/sfx/snare5_4.asm
deleted file mode 100644
index 37fe8b27..00000000
--- a/audio/sfx/snare5_4.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-SFX_Snare5_4_Ch7:
- unknownnoise0x20 7, 132, 55
- unknownnoise0x20 6, 132, 54
- unknownnoise0x20 5, 131, 53
- unknownnoise0x20 4, 131, 52
- unknownnoise0x20 3, 130, 51
- unknownnoise0x20 2, 129, 50
- endchannel
-
diff --git a/audio/sfx/snare6_1.asm b/audio/sfx/snare6_1.asm
deleted file mode 100644
index 74bf01c7..00000000
--- a/audio/sfx/snare6_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare6_1_Ch1:
- unknownnoise0x20 0, 129, 16
- endchannel
diff --git a/audio/sfx/snare6_2.asm b/audio/sfx/snare6_2.asm
deleted file mode 100644
index 0a96680e..00000000
--- a/audio/sfx/snare6_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare6_2_Ch1:
- unknownnoise0x20 0, 129, 16
- endchannel
diff --git a/audio/sfx/snare6_3.asm b/audio/sfx/snare6_3.asm
deleted file mode 100644
index f3130931..00000000
--- a/audio/sfx/snare6_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare6_3_Ch1:
- unknownnoise0x20 0, 129, 16
- endchannel
diff --git a/audio/sfx/snare6_4.asm b/audio/sfx/snare6_4.asm
deleted file mode 100644
index 1b835f00..00000000
--- a/audio/sfx/snare6_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare6_4_Ch7:
- unknownnoise0x20 0, 129, 16
- endchannel
-
diff --git a/audio/sfx/snare7_1.asm b/audio/sfx/snare7_1.asm
deleted file mode 100644
index ef8f80ab..00000000
--- a/audio/sfx/snare7_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare7_1_Ch1:
- unknownnoise0x20 0, 130, 35
- endchannel
diff --git a/audio/sfx/snare7_2.asm b/audio/sfx/snare7_2.asm
deleted file mode 100644
index 5e266b12..00000000
--- a/audio/sfx/snare7_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare7_2_Ch1:
- unknownnoise0x20 0, 130, 35
- endchannel
diff --git a/audio/sfx/snare7_3.asm b/audio/sfx/snare7_3.asm
deleted file mode 100644
index 26db3703..00000000
--- a/audio/sfx/snare7_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare7_3_Ch1:
- unknownnoise0x20 0, 130, 35
- endchannel
diff --git a/audio/sfx/snare7_4.asm b/audio/sfx/snare7_4.asm
deleted file mode 100644
index ed03d368..00000000
--- a/audio/sfx/snare7_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare7_4_Ch7:
- unknownnoise0x20 0, 130, 35
- endchannel
-
diff --git a/audio/sfx/snare8_1.asm b/audio/sfx/snare8_1.asm
deleted file mode 100644
index 5f624177..00000000
--- a/audio/sfx/snare8_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare8_1_Ch1:
- unknownnoise0x20 0, 130, 37
- endchannel
diff --git a/audio/sfx/snare8_2.asm b/audio/sfx/snare8_2.asm
deleted file mode 100644
index cf5d5654..00000000
--- a/audio/sfx/snare8_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare8_2_Ch1:
- unknownnoise0x20 0, 130, 37
- endchannel
diff --git a/audio/sfx/snare8_3.asm b/audio/sfx/snare8_3.asm
deleted file mode 100644
index 7da0e415..00000000
--- a/audio/sfx/snare8_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare8_3_Ch1:
- unknownnoise0x20 0, 130, 37
- endchannel
diff --git a/audio/sfx/snare8_4.asm b/audio/sfx/snare8_4.asm
deleted file mode 100644
index ec0e6665..00000000
--- a/audio/sfx/snare8_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare8_4_Ch7:
- unknownnoise0x20 0, 130, 37
- endchannel
-
diff --git a/audio/sfx/snare9_1.asm b/audio/sfx/snare9_1.asm
deleted file mode 100644
index c511cdaf..00000000
--- a/audio/sfx/snare9_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare9_1_Ch1:
- unknownnoise0x20 0, 130, 38
- endchannel
diff --git a/audio/sfx/snare9_2.asm b/audio/sfx/snare9_2.asm
deleted file mode 100644
index db9aecf9..00000000
--- a/audio/sfx/snare9_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare9_2_Ch1:
- unknownnoise0x20 0, 130, 38
- endchannel
diff --git a/audio/sfx/snare9_3.asm b/audio/sfx/snare9_3.asm
deleted file mode 100644
index 18df2e46..00000000
--- a/audio/sfx/snare9_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Snare9_3_Ch1:
- unknownnoise0x20 0, 130, 38
- endchannel
diff --git a/audio/sfx/snare9_4.asm b/audio/sfx/snare9_4.asm
deleted file mode 100644
index 254e9ce6..00000000
--- a/audio/sfx/snare9_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Snare9_4_Ch7:
- unknownnoise0x20 0, 130, 38
- endchannel
-
diff --git a/audio/sfx/ss_anne_horn_1.asm b/audio/sfx/ss_anne_horn_1.asm
index 66c95262..7f5094f4 100644
--- a/audio/sfx/ss_anne_horn_1.asm
+++ b/audio/sfx/ss_anne_horn_1.asm
@@ -1,22 +1,22 @@
-SFX_SS_Anne_Horn_1_Ch1:
- duty 2
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 242, 0, 5
- endchannel
+SFX_SS_Anne_Horn_1_Ch5:
+ duty_cycle 2
+ square_note 15, 15, 0, 1280
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 2, 1280
+ sound_ret
-SFX_SS_Anne_Horn_1_Ch2:
- duty 3
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 242, 130, 4
- endchannel
+SFX_SS_Anne_Horn_1_Ch6:
+ duty_cycle 3
+ square_note 15, 15, 0, 1154
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 2, 1154
+ sound_ret
diff --git a/audio/sfx/ss_anne_horn_3.asm b/audio/sfx/ss_anne_horn_3.asm
index 070f111c..fda8e346 100644
--- a/audio/sfx/ss_anne_horn_3.asm
+++ b/audio/sfx/ss_anne_horn_3.asm
@@ -1,22 +1,22 @@
-SFX_SS_Anne_Horn_3_Ch1:
- duty 2
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 240, 0, 5
- unknownsfx0x20 15, 242, 0, 5
- endchannel
+SFX_SS_Anne_Horn_3_Ch5:
+ duty_cycle 2
+ square_note 15, 15, 0, 1280
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 0, 1280
+ square_note 15, 15, 2, 1280
+ sound_ret
-SFX_SS_Anne_Horn_3_Ch2:
- duty 3
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 240, 130, 4
- unknownsfx0x20 15, 242, 130, 4
- endchannel
+SFX_SS_Anne_Horn_3_Ch6:
+ duty_cycle 3
+ square_note 15, 15, 0, 1154
+ square_note 4, 0, 0, 0
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 0, 1154
+ square_note 15, 15, 2, 1154
+ sound_ret
diff --git a/audio/sfx/start_menu_1.asm b/audio/sfx/start_menu_1.asm
index f509326c..c82e97e1 100644
--- a/audio/sfx/start_menu_1.asm
+++ b/audio/sfx/start_menu_1.asm
@@ -1,4 +1,4 @@
-SFX_Start_Menu_1_Ch1:
- unknownnoise0x20 1, 226, 51
- unknownnoise0x20 8, 225, 34
- endchannel
+SFX_Start_Menu_1_Ch8:
+ noise_note 1, 14, 2, 51
+ noise_note 8, 14, 1, 34
+ sound_ret
diff --git a/audio/sfx/start_menu_2.asm b/audio/sfx/start_menu_2.asm
index 92bb7558..9860346d 100644
--- a/audio/sfx/start_menu_2.asm
+++ b/audio/sfx/start_menu_2.asm
@@ -1,4 +1,4 @@
-SFX_Start_Menu_2_Ch1:
- unknownnoise0x20 1, 226, 51
- unknownnoise0x20 8, 225, 34
- endchannel
+SFX_Start_Menu_2_Ch8:
+ noise_note 1, 14, 2, 51
+ noise_note 8, 14, 1, 34
+ sound_ret
diff --git a/audio/sfx/start_menu_3.asm b/audio/sfx/start_menu_3.asm
index 74c82cf3..d114af51 100644
--- a/audio/sfx/start_menu_3.asm
+++ b/audio/sfx/start_menu_3.asm
@@ -1,4 +1,4 @@
-SFX_Start_Menu_3_Ch1:
- unknownnoise0x20 1, 226, 51
- unknownnoise0x20 8, 225, 34
- endchannel
+SFX_Start_Menu_3_Ch8:
+ noise_note 1, 14, 2, 51
+ noise_note 8, 14, 1, 34
+ sound_ret
diff --git a/audio/sfx/super_effective.asm b/audio/sfx/super_effective.asm
index 70d7014a..c6e25dc9 100644
--- a/audio/sfx/super_effective.asm
+++ b/audio/sfx/super_effective.asm
@@ -1,4 +1,4 @@
-SFX_Super_Effective_Ch1:
- unknownnoise0x20 4, 241, 52
- unknownnoise0x20 15, 242, 100
- endchannel
+SFX_Super_Effective_Ch8:
+ noise_note 4, 15, 1, 52
+ noise_note 15, 15, 2, 100
+ sound_ret
diff --git a/audio/sfx/surfing_add_points.asm b/audio/sfx/surfing_add_points.asm
index ea95edf8..3eeed285 100644
--- a/audio/sfx/surfing_add_points.asm
+++ b/audio/sfx/surfing_add_points.asm
@@ -1,7 +1,7 @@
-SFX_Surfing_Add_Points_Ch4:
- duty 2
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 0, 129, 208, 7
- unknownsfx0x20 0, 145, 192, 7
- unknownsfx0x20 12, 161, 208, 7
- endchannel
+SFX_Surfing_Add_Points_Ch5:
+ duty_cycle 2
+ square_note 0, 9, 1, 1984
+ square_note 0, 8, 1, 2000
+ square_note 0, 9, 1, 1984
+ square_note 12, 10, 1, 2000
+ sound_ret
diff --git a/audio/sfx/surfing_crash.asm b/audio/sfx/surfing_crash.asm
index 88055c35..e1af7f6a 100644
--- a/audio/sfx/surfing_crash.asm
+++ b/audio/sfx/surfing_crash.asm
@@ -1,6 +1,5 @@
-SFX_Surfing_Crash_Ch7:
- unknownnoise0x20 2, 241, 50
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 4, 230, 33
- endchannel
-
+SFX_Surfing_Crash_Ch8:
+ noise_note 2, 15, 1, 50
+ noise_note 2, 0, 0, 0
+ noise_note 4, 14, 6, 33
+ sound_ret
diff --git a/audio/sfx/surfing_flip.asm b/audio/sfx/surfing_flip.asm
index 5a135d02..034a55d2 100644
--- a/audio/sfx/surfing_flip.asm
+++ b/audio/sfx/surfing_flip.asm
@@ -1,8 +1,8 @@
-SFX_Surfing_Flip_Ch4:
- duty 2
- unknownsfx0x20 3, 196, 96, 7
- unknownsfx0x20 0, 164, 64, 7
- unknownsfx0x20 2, 196, 64, 7
- unknownsfx0x20 0, 164, 96, 7
- unknownsfx0x20 15, 193, 96, 7
- endchannel
+SFX_Surfing_Flip_Ch5:
+ duty_cycle 2
+ square_note 3, 12, 4, 1888
+ square_note 0, 10, 4, 1856
+ square_note 2, 12, 4, 1856
+ square_note 0, 10, 4, 1888
+ square_note 15, 12, 1, 1888
+ sound_ret
diff --git a/audio/sfx/surfing_jump.asm b/audio/sfx/surfing_jump.asm
index 13fffb64..af12d9e9 100644
--- a/audio/sfx/surfing_jump.asm
+++ b/audio/sfx/surfing_jump.asm
@@ -1,10 +1,9 @@
-SFX_Surfing_Jump_Ch7:
- unknownnoise0x20 6, 241, 17
- unknownnoise0x20 7, 242, 34
- unknownnoise0x20 8, 243, 51
- unknownnoise0x20 9, 244, 66
- unknownnoise0x20 10, 245, 51
- unknownnoise0x20 11, 246, 34
- unknownnoise0x20 12, 247, 17
- endchannel
-
+SFX_Surfing_Jump_Ch8:
+ noise_note 6, 15, 1, 17
+ noise_note 7, 15, 2, 34
+ noise_note 8, 15, 3, 51
+ noise_note 9, 15, 4, 66
+ noise_note 10, 15, 5, 51
+ noise_note 11, 15, 6, 34
+ noise_note 12, 15, 7, 17
+ sound_ret
diff --git a/audio/sfx/surfing_land.asm b/audio/sfx/surfing_land.asm
index 028ef16a..41ece761 100644
--- a/audio/sfx/surfing_land.asm
+++ b/audio/sfx/surfing_land.asm
@@ -1,6 +1,5 @@
-SFX_Surfing_Land_Ch7:
- unknownnoise0x20 3, 243, 102
- unknownnoise0x20 3, 51, 83
- unknownnoise0x20 7, 245, 81
- endchannel
-
+SFX_Surfing_Land_Ch8:
+ noise_note 3, 15, 3, 102
+ noise_note 3, 3, 3, 83
+ noise_note 7, 15, 5, 81
+ sound_ret
diff --git a/audio/sfx/swap_1.asm b/audio/sfx/swap_1.asm
index 782dd3fb..98bfff72 100644
--- a/audio/sfx/swap_1.asm
+++ b/audio/sfx/swap_1.asm
@@ -1,11 +1,11 @@
-SFX_Swap_1_Ch1:
- duty 2
- unknownsfx0x20 8, 225, 64, 7
- endchannel
+SFX_Swap_1_Ch5:
+ duty_cycle 2
+ square_note 8, 14, 1, 1856
+ sound_ret
-SFX_Swap_1_Ch2:
- duty 2
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Swap_1_Ch6:
+ duty_cycle 2
+ square_note 2, 0, 8, 0
+ square_note 8, 11, 1, 1857
+ sound_ret
diff --git a/audio/sfx/swap_2.asm b/audio/sfx/swap_2.asm
index 270cf15b..51d0f273 100644
--- a/audio/sfx/swap_2.asm
+++ b/audio/sfx/swap_2.asm
@@ -1,11 +1,11 @@
-SFX_Swap_2_Ch1:
- duty 2
- unknownsfx0x20 8, 225, 64, 7
- endchannel
+SFX_Swap_2_Ch5:
+ duty_cycle 2
+ square_note 8, 14, 1, 1856
+ sound_ret
-SFX_Swap_2_Ch2:
- duty 2
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Swap_2_Ch6:
+ duty_cycle 2
+ square_note 2, 0, 8, 0
+ square_note 8, 11, 1, 1857
+ sound_ret
diff --git a/audio/sfx/swap_3.asm b/audio/sfx/swap_3.asm
index 4fc1db1d..8e86ac7c 100644
--- a/audio/sfx/swap_3.asm
+++ b/audio/sfx/swap_3.asm
@@ -1,11 +1,11 @@
-SFX_Swap_3_Ch1:
- duty 2
- unknownsfx0x20 8, 225, 64, 7
- endchannel
+SFX_Swap_3_Ch5:
+ duty_cycle 2
+ square_note 8, 14, 1, 1856
+ sound_ret
-SFX_Swap_3_Ch2:
- duty 2
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Swap_3_Ch6:
+ duty_cycle 2
+ square_note 2, 0, 8, 0
+ square_note 8, 11, 1, 1857
+ sound_ret
diff --git a/audio/sfx/switch_1.asm b/audio/sfx/switch_1.asm
index ac9fb680..145fd35a 100644
--- a/audio/sfx/switch_1.asm
+++ b/audio/sfx/switch_1.asm
@@ -1,8 +1,8 @@
-SFX_Switch_1_Ch1:
- duty 2
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 2, 241, 128, 6
- unknownsfx0x20 1, 0, 0, 0
- unknownsfx0x20 4, 241, 128, 7
- unknownsfx0x20 4, 0, 0, 0
- endchannel
+SFX_Switch_1_Ch5:
+ duty_cycle 2
+ square_note 4, 0, 0, 0
+ square_note 2, 15, 1, 1664
+ square_note 1, 0, 0, 0
+ square_note 4, 15, 1, 1920
+ square_note 4, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/switch_3.asm b/audio/sfx/switch_3.asm
index 81b68d26..ce6f1f15 100644
--- a/audio/sfx/switch_3.asm
+++ b/audio/sfx/switch_3.asm
@@ -1,8 +1,8 @@
-SFX_Switch_3_Ch1:
- duty 2
- unknownsfx0x20 4, 0, 0, 0
- unknownsfx0x20 2, 241, 128, 6
- unknownsfx0x20 1, 0, 0, 0
- unknownsfx0x20 4, 241, 128, 7
- unknownsfx0x20 4, 0, 0, 0
- endchannel
+SFX_Switch_3_Ch5:
+ duty_cycle 2
+ square_note 4, 0, 0, 0
+ square_note 2, 15, 1, 1664
+ square_note 1, 0, 0, 0
+ square_note 4, 15, 1, 1920
+ square_note 4, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/teleport_enter1_1.asm b/audio/sfx/teleport_enter1_1.asm
index 0522ee16..eddaffa6 100644
--- a/audio/sfx/teleport_enter1_1.asm
+++ b/audio/sfx/teleport_enter1_1.asm
@@ -1,10 +1,10 @@
-SFX_Teleport_Enter1_1_Ch1:
- duty 1
- unknownsfx0x10 23
- unknownsfx0x20 15, 215, 0, 7
- unknownsfx0x20 15, 183, 128, 6
- unknownsfx0x20 15, 135, 0, 6
- unknownsfx0x20 15, 71, 128, 5
- unknownsfx0x20 15, 23, 0, 5
- unknownsfx0x10 8
- endchannel
+SFX_Teleport_Enter1_1_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 7
+ square_note 15, 13, 7, 1792
+ square_note 15, 11, 7, 1664
+ square_note 15, 8, 7, 1536
+ square_note 15, 4, 7, 1408
+ square_note 15, 1, 7, 1280
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/teleport_enter1_3.asm b/audio/sfx/teleport_enter1_3.asm
index 6518e416..fc185621 100644
--- a/audio/sfx/teleport_enter1_3.asm
+++ b/audio/sfx/teleport_enter1_3.asm
@@ -1,10 +1,10 @@
-SFX_Teleport_Enter1_3_Ch1:
- duty 1
- unknownsfx0x10 23
- unknownsfx0x20 15, 215, 0, 7
- unknownsfx0x20 15, 183, 128, 6
- unknownsfx0x20 15, 135, 0, 6
- unknownsfx0x20 15, 71, 128, 5
- unknownsfx0x20 15, 23, 0, 5
- unknownsfx0x10 8
- endchannel
+SFX_Teleport_Enter1_3_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 7
+ square_note 15, 13, 7, 1792
+ square_note 15, 11, 7, 1664
+ square_note 15, 8, 7, 1536
+ square_note 15, 4, 7, 1408
+ square_note 15, 1, 7, 1280
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/teleport_enter2_1.asm b/audio/sfx/teleport_enter2_1.asm
index 338c1c30..c7901999 100644
--- a/audio/sfx/teleport_enter2_1.asm
+++ b/audio/sfx/teleport_enter2_1.asm
@@ -1,6 +1,6 @@
-SFX_Teleport_Enter2_1_Ch1:
- unknownnoise0x20 2, 241, 50
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 241, 34
- unknownnoise0x20 1, 0, 0
- endchannel
+SFX_Teleport_Enter2_1_Ch8:
+ noise_note 2, 15, 1, 50
+ noise_note 2, 0, 0, 0
+ noise_note 2, 15, 1, 34
+ noise_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/teleport_enter2_3.asm b/audio/sfx/teleport_enter2_3.asm
index f6cd103c..2c0414f3 100644
--- a/audio/sfx/teleport_enter2_3.asm
+++ b/audio/sfx/teleport_enter2_3.asm
@@ -1,6 +1,6 @@
-SFX_Teleport_Enter2_3_Ch1:
- unknownnoise0x20 2, 241, 50
- unknownnoise0x20 2, 0, 0
- unknownnoise0x20 2, 241, 34
- unknownnoise0x20 1, 0, 0
- endchannel
+SFX_Teleport_Enter2_3_Ch8:
+ noise_note 2, 15, 1, 50
+ noise_note 2, 0, 0, 0
+ noise_note 2, 15, 1, 34
+ noise_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/teleport_exit1_1.asm b/audio/sfx/teleport_exit1_1.asm
index f916d539..5e27525e 100644
--- a/audio/sfx/teleport_exit1_1.asm
+++ b/audio/sfx/teleport_exit1_1.asm
@@ -1,10 +1,10 @@
-SFX_Teleport_Exit1_1_Ch1:
- duty 1
- unknownsfx0x10 23
- unknownsfx0x20 15, 215, 0, 5
- unknownsfx0x20 15, 183, 128, 5
- unknownsfx0x20 15, 135, 0, 6
- unknownsfx0x20 15, 71, 128, 6
- unknownsfx0x20 15, 23, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Teleport_Exit1_1_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 7
+ square_note 15, 13, 7, 1280
+ square_note 15, 11, 7, 1408
+ square_note 15, 8, 7, 1536
+ square_note 15, 4, 7, 1664
+ square_note 15, 1, 7, 1792
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/teleport_exit1_3.asm b/audio/sfx/teleport_exit1_3.asm
index 67739bd1..350da576 100644
--- a/audio/sfx/teleport_exit1_3.asm
+++ b/audio/sfx/teleport_exit1_3.asm
@@ -1,10 +1,10 @@
-SFX_Teleport_Exit1_3_Ch1:
- duty 1
- unknownsfx0x10 23
- unknownsfx0x20 15, 215, 0, 5
- unknownsfx0x20 15, 183, 128, 5
- unknownsfx0x20 15, 135, 0, 6
- unknownsfx0x20 15, 71, 128, 6
- unknownsfx0x20 15, 23, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Teleport_Exit1_3_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 7
+ square_note 15, 13, 7, 1280
+ square_note 15, 11, 7, 1408
+ square_note 15, 8, 7, 1536
+ square_note 15, 4, 7, 1664
+ square_note 15, 1, 7, 1792
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/teleport_exit2_1.asm b/audio/sfx/teleport_exit2_1.asm
index 1e1de5a5..a2a36942 100644
--- a/audio/sfx/teleport_exit2_1.asm
+++ b/audio/sfx/teleport_exit2_1.asm
@@ -1,6 +1,6 @@
-SFX_Teleport_Exit2_1_Ch1:
- duty 1
- unknownsfx0x10 22
- unknownsfx0x20 15, 210, 0, 5
- unknownsfx0x10 8
- endchannel
+SFX_Teleport_Exit2_1_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 6
+ square_note 15, 13, 2, 1280
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/teleport_exit2_3.asm b/audio/sfx/teleport_exit2_3.asm
index 928e486e..70d809c3 100644
--- a/audio/sfx/teleport_exit2_3.asm
+++ b/audio/sfx/teleport_exit2_3.asm
@@ -1,6 +1,6 @@
-SFX_Teleport_Exit2_3_Ch1:
- duty 1
- unknownsfx0x10 22
- unknownsfx0x20 15, 210, 0, 5
- unknownsfx0x10 8
- endchannel
+SFX_Teleport_Exit2_3_Ch5:
+ duty_cycle 1
+ pitch_sweep 1, 6
+ square_note 15, 13, 2, 1280
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/tink_1.asm b/audio/sfx/tink_1.asm
index e6eff9ac..7d56a081 100644
--- a/audio/sfx/tink_1.asm
+++ b/audio/sfx/tink_1.asm
@@ -1,8 +1,8 @@
-SFX_Tink_1_Ch1:
- duty 2
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 2
- unknownsfx0x10 34
- unknownsfx0x20 8, 226, 0, 2
- unknownsfx0x10 8
- endchannel
+SFX_Tink_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 512
+ pitch_sweep 2, 2
+ square_note 8, 14, 2, 512
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/tink_2.asm b/audio/sfx/tink_2.asm
index fa06cf19..94aa8929 100644
--- a/audio/sfx/tink_2.asm
+++ b/audio/sfx/tink_2.asm
@@ -1,8 +1,8 @@
-SFX_Tink_2_Ch1:
- duty 2
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 2
- unknownsfx0x10 34
- unknownsfx0x20 8, 226, 0, 2
- unknownsfx0x10 8
- endchannel
+SFX_Tink_2_Ch5:
+ duty_cycle 2
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 512
+ pitch_sweep 2, 2
+ square_note 8, 14, 2, 512
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/tink_3.asm b/audio/sfx/tink_3.asm
index d786d289..1134fdc4 100644
--- a/audio/sfx/tink_3.asm
+++ b/audio/sfx/tink_3.asm
@@ -1,8 +1,8 @@
-SFX_Tink_3_Ch1:
- duty 2
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 2
- unknownsfx0x10 34
- unknownsfx0x20 8, 226, 0, 2
- unknownsfx0x10 8
- endchannel
+SFX_Tink_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 512
+ pitch_sweep 2, 2
+ square_note 8, 14, 2, 512
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/tink_4.asm b/audio/sfx/tink_4.asm
index 4efa3209..16b7be91 100755
--- a/audio/sfx/tink_4.asm
+++ b/audio/sfx/tink_4.asm
@@ -1,8 +1,8 @@
-SFX_8028e_4_Ch4:
- duty 2
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 2
- unknownsfx0x10 34
- unknownsfx0x20 8, 226, 0, 2
- unknownsfx0x10 8
- endchannel
+SFX_Tink_4_Ch5:
+ duty_cycle 2
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 512
+ pitch_sweep 2, 2
+ square_note 8, 14, 2, 512
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/trade_machine_1.asm b/audio/sfx/trade_machine_1.asm
index 87993851..f09982eb 100644
--- a/audio/sfx/trade_machine_1.asm
+++ b/audio/sfx/trade_machine_1.asm
@@ -1,7 +1,7 @@
-SFX_Trade_Machine_1_Ch1:
- duty 2
- unknownsfx0x10 21
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
+SFX_Trade_Machine_1_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 5
+ square_note 15, 15, 0, 1264
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/trade_machine_3.asm b/audio/sfx/trade_machine_3.asm
index 6b70d5da..a85b717e 100644
--- a/audio/sfx/trade_machine_3.asm
+++ b/audio/sfx/trade_machine_3.asm
@@ -1,7 +1,7 @@
-SFX_Trade_Machine_3_Ch1:
- duty 2
- unknownsfx0x10 21
- unknownsfx0x20 15, 240, 240, 4
- unknownsfx0x20 15, 242, 80, 6
- unknownsfx0x10 8
- endchannel
+SFX_Trade_Machine_3_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 5
+ square_note 15, 15, 0, 1264
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/triangle1_1.asm b/audio/sfx/triangle1_1.asm
deleted file mode 100644
index 94b61fe1..00000000
--- a/audio/sfx/triangle1_1.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Triangle1_1_Ch1:
- unknownnoise0x20 0, 81, 42
- endchannel
diff --git a/audio/sfx/triangle1_2.asm b/audio/sfx/triangle1_2.asm
deleted file mode 100644
index 1c9c1d29..00000000
--- a/audio/sfx/triangle1_2.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Triangle1_2_Ch1:
- unknownnoise0x20 0, 81, 42
- endchannel
diff --git a/audio/sfx/triangle1_3.asm b/audio/sfx/triangle1_3.asm
deleted file mode 100644
index b900da7c..00000000
--- a/audio/sfx/triangle1_3.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-SFX_Triangle1_3_Ch1:
- unknownnoise0x20 0, 81, 42
- endchannel
diff --git a/audio/sfx/triangle1_4.asm b/audio/sfx/triangle1_4.asm
deleted file mode 100644
index a90e4c48..00000000
--- a/audio/sfx/triangle1_4.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle1_4_Ch7:
- unknownnoise0x20 0, 81, 42
- endchannel
-
diff --git a/audio/sfx/triangle2_1.asm b/audio/sfx/triangle2_1.asm
deleted file mode 100644
index 0f648237..00000000
--- a/audio/sfx/triangle2_1.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle2_1_Ch1:
- unknownnoise0x20 1, 65, 43
- unknownnoise0x20 0, 97, 42
- endchannel
diff --git a/audio/sfx/triangle2_2.asm b/audio/sfx/triangle2_2.asm
deleted file mode 100644
index cbc2a642..00000000
--- a/audio/sfx/triangle2_2.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle2_2_Ch1:
- unknownnoise0x20 1, 65, 43
- unknownnoise0x20 0, 97, 42
- endchannel
diff --git a/audio/sfx/triangle2_3.asm b/audio/sfx/triangle2_3.asm
deleted file mode 100644
index 44fc95dd..00000000
--- a/audio/sfx/triangle2_3.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle2_3_Ch1:
- unknownnoise0x20 1, 65, 43
- unknownnoise0x20 0, 97, 42
- endchannel
diff --git a/audio/sfx/triangle2_4.asm b/audio/sfx/triangle2_4.asm
deleted file mode 100644
index 58b6d511..00000000
--- a/audio/sfx/triangle2_4.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-SFX_Triangle2_4_Ch7:
- unknownnoise0x20 1, 65, 43
- unknownnoise0x20 0, 97, 42
- endchannel
-
diff --git a/audio/sfx/triangle3_1.asm b/audio/sfx/triangle3_1.asm
deleted file mode 100644
index f5622bd7..00000000
--- a/audio/sfx/triangle3_1.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle3_1_Ch1:
- unknownnoise0x20 2, 145, 40
- unknownnoise0x20 0, 113, 24
- endchannel
diff --git a/audio/sfx/triangle3_2.asm b/audio/sfx/triangle3_2.asm
deleted file mode 100644
index 8b0b76e5..00000000
--- a/audio/sfx/triangle3_2.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle3_2_Ch1:
- unknownnoise0x20 2, 145, 40
- unknownnoise0x20 0, 113, 24
- endchannel
diff --git a/audio/sfx/triangle3_3.asm b/audio/sfx/triangle3_3.asm
deleted file mode 100644
index d40779fb..00000000
--- a/audio/sfx/triangle3_3.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-SFX_Triangle3_3_Ch1:
- unknownnoise0x20 2, 145, 40
- unknownnoise0x20 0, 113, 24
- endchannel
diff --git a/audio/sfx/triangle3_4.asm b/audio/sfx/triangle3_4.asm
deleted file mode 100644
index a2fab704..00000000
--- a/audio/sfx/triangle3_4.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-SFX_Triangle3_4_Ch7:
- unknownnoise0x20 2, 145, 40
- unknownnoise0x20 0, 113, 24
- endchannel
-
diff --git a/audio/sfx/turn_off_pc_1.asm b/audio/sfx/turn_off_pc_1.asm
index ca29a4cc..429727b9 100644
--- a/audio/sfx/turn_off_pc_1.asm
+++ b/audio/sfx/turn_off_pc_1.asm
@@ -1,7 +1,7 @@
-SFX_Turn_Off_PC_1_Ch1:
- duty 2
- unknownsfx0x20 4, 240, 0, 6
- unknownsfx0x20 4, 240, 0, 4
- unknownsfx0x20 4, 240, 0, 2
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Turn_Off_PC_1_Ch5:
+ duty_cycle 2
+ square_note 4, 15, 0, 1536
+ square_note 4, 15, 0, 1024
+ square_note 4, 15, 0, 512
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/turn_off_pc_3.asm b/audio/sfx/turn_off_pc_3.asm
index 2ae0787b..b6682ae2 100644
--- a/audio/sfx/turn_off_pc_3.asm
+++ b/audio/sfx/turn_off_pc_3.asm
@@ -1,7 +1,7 @@
-SFX_Turn_Off_PC_3_Ch1:
- duty 2
- unknownsfx0x20 4, 240, 0, 6
- unknownsfx0x20 4, 240, 0, 4
- unknownsfx0x20 4, 240, 0, 2
- unknownsfx0x20 1, 0, 0, 0
- endchannel
+SFX_Turn_Off_PC_3_Ch5:
+ duty_cycle 2
+ square_note 4, 15, 0, 1536
+ square_note 4, 15, 0, 1024
+ square_note 4, 15, 0, 512
+ square_note 1, 0, 0, 0
+ sound_ret
diff --git a/audio/sfx/turn_on_pc_1.asm b/audio/sfx/turn_on_pc_1.asm
index 22433707..98c724b5 100644
--- a/audio/sfx/turn_on_pc_1.asm
+++ b/audio/sfx/turn_on_pc_1.asm
@@ -1,13 +1,13 @@
-SFX_Turn_On_PC_1_Ch1:
- duty 2
- unknownsfx0x20 15, 242, 192, 7
- unknownsfx0x20 15, 0, 0, 0
- unknownsfx0x20 3, 161, 128, 7
- unknownsfx0x20 3, 161, 0, 7
- unknownsfx0x20 3, 161, 64, 7
- unknownsfx0x20 3, 161, 0, 7
- unknownsfx0x20 3, 161, 128, 7
- unknownsfx0x20 3, 161, 0, 7
- unknownsfx0x20 3, 161, 192, 7
- unknownsfx0x20 8, 161, 0, 7
- endchannel
+SFX_Turn_On_PC_1_Ch5:
+ duty_cycle 2
+ square_note 15, 15, 2, 1984
+ square_note 15, 0, 0, 0
+ square_note 3, 10, 1, 1920
+ square_note 3, 10, 1, 1792
+ square_note 3, 10, 1, 1856
+ square_note 3, 10, 1, 1792
+ square_note 3, 10, 1, 1920
+ square_note 3, 10, 1, 1792
+ square_note 3, 10, 1, 1984
+ square_note 8, 10, 1, 1792
+ sound_ret
diff --git a/audio/sfx/turn_on_pc_3.asm b/audio/sfx/turn_on_pc_3.asm
index d97dc1c7..e33aefa1 100644
--- a/audio/sfx/turn_on_pc_3.asm
+++ b/audio/sfx/turn_on_pc_3.asm
@@ -1,14 +1,14 @@
-SFX_Turn_On_PC_3_Ch1:
- duty 2
- unknownsfx0x20 15, 242, 192, 7
- unknownsfx0x20 15, 0, 0, 0
- unknownsfx0x20 15, 0, 0, 0
- unknownsfx0x20 3, 129, 128, 7
- unknownsfx0x20 3, 129, 0, 7
- unknownsfx0x20 3, 129, 64, 7
- unknownsfx0x20 3, 129, 0, 7
- unknownsfx0x20 3, 129, 128, 7
- unknownsfx0x20 3, 129, 0, 7
- unknownsfx0x20 3, 129, 192, 7
- unknownsfx0x20 3, 129, 0, 7
- endchannel
+SFX_Turn_On_PC_3_Ch5:
+ duty_cycle 2
+ square_note 15, 15, 2, 1984
+ square_note 15, 0, 0, 0
+ square_note 15, 0, 0, 0
+ square_note 3, 8, 1, 1920
+ square_note 3, 8, 1, 1792
+ square_note 3, 8, 1, 1856
+ square_note 3, 8, 1, 1792
+ square_note 3, 8, 1, 1920
+ square_note 3, 8, 1, 1792
+ square_note 3, 8, 1, 1984
+ square_note 3, 8, 1, 1792
+ sound_ret
diff --git a/audio/sfx/unknown_80263.asm b/audio/sfx/unknown_80263.asm
index 884c1352..e1be6dd5 100755
--- a/audio/sfx/unknown_80263.asm
+++ b/audio/sfx/unknown_80263.asm
@@ -1,4 +1,4 @@
-SFX_80263_4_Ch7:
- unknownnoise0x20 1, 226, 51
- unknownnoise0x20 8, 225, 34
- endchannel
+SFX_Unknown_80263_Ch8:
+ noise_note 1, 14, 2, 51
+ noise_note 8, 14, 1, 34
+ sound_ret
diff --git a/audio/sfx/unknown_8026a.asm b/audio/sfx/unknown_8026a.asm
index 9dd6a02b..c9ee20c4 100644
--- a/audio/sfx/unknown_8026a.asm
+++ b/audio/sfx/unknown_8026a.asm
@@ -1,10 +1,9 @@
-SFX_8026a_4_Ch4:
- duty 2
- unknownsfx0x10 20
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x20 4, 242, 0, 6
- unknownsfx0x10 23
- unknownsfx0x20 15, 242, 0, 6
- unknownsfx0x10 8
- endchannel
-
+SFX_Unknown_8026a_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 4
+ square_note 4, 15, 2, 1536
+ square_note 4, 15, 2, 1536
+ pitch_sweep 1, 7
+ square_note 15, 15, 2, 1536
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/unknown_8027f.asm b/audio/sfx/unknown_8027f.asm
new file mode 100644
index 00000000..5fbb4618
--- /dev/null
+++ b/audio/sfx/unknown_8027f.asm
@@ -0,0 +1,7 @@
+SFX_Unknown_8027f_Ch5:
+ duty_cycle 2
+ pitch_sweep 1, 7
+ square_note 15, 15, 0, 1264
+ square_note 15, 15, 2, 1616
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/unknown_802cc.asm b/audio/sfx/unknown_802cc.asm
index 9e209638..3126cf1e 100755
--- a/audio/sfx/unknown_802cc.asm
+++ b/audio/sfx/unknown_802cc.asm
@@ -1,5 +1,5 @@
-SFX_802cc_4_Ch4:
- duty 2
- unknownsfx0x20 3, 180, 192, 7
- unknownsfx0x20 0, 161, 128, 7
- endchannel
+SFX_Unknown_802cc_Ch5:
+ duty_cycle 2
+ square_note 3, 11, 4, 1984
+ square_note 0, 10, 1, 1920
+ sound_ret
diff --git a/audio/sfx/unknown_80337.asm b/audio/sfx/unknown_80337.asm
index c21f8794..047dfaf4 100644
--- a/audio/sfx/unknown_80337.asm
+++ b/audio/sfx/unknown_80337.asm
@@ -1,64 +1,31 @@
-SFX_80337_4_Branch:
- dutycycle 240
- unknownsfx0x20 15, 224, 128, 7
- unknownsfx0x20 15, 240, 132, 7
- unknownsfx0x20 15, 195, 224, 5
- unknownsfx0x20 15, 196, 0, 6
- unknownsfx0x20 10, 108, 128, 7
- unknownsfx0x20 8, 113, 132, 7
- endchannel
+SFX_Unknown_80337_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 14, 0, 1920
+ square_note 15, 15, 0, 1924
+ square_note 15, 12, 3, 1504
+ square_note 15, 12, 4, 1536
+ square_note 10, 6, -4, 1920
+ square_note 8, 7, 1, 1924
+ sound_ret
-SFX_80352_4_Branch:
- dutycycle 5
- unknownsfx0x20 15, 160, 65, 7
- unknownsfx0x20 15, 176, 67, 7
- unknownsfx0x20 15, 147, 177, 5
- unknownsfx0x20 15, 148, 193, 5
- unknownsfx0x20 10, 76, 65, 7
- unknownsfx0x20 8, 49, 70, 7
- endchannel
-SFX_8036c_4_Branch:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 224, 58
- unknownnoise0x20 15, 208, 58
- unknownnoise0x20 8, 208, 44
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 12, 125, 76
- unknownnoise0x20 15, 211, 76
- endchannel
+SFX_Unknown_80337_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 10, 0, 1857
+ square_note 15, 11, 0, 1859
+ square_note 15, 9, 3, 1457
+ square_note 15, 9, 4, 1473
+ square_note 10, 4, -4, 1857
+ square_note 8, 3, 1, 1862
+ sound_ret
-SFX_80383_4_Ch4:
- dutycycle 240
- unknownsfx0x20 15, 247, 160, 7
- unknownsfx0x20 6, 230, 163, 7
- unknownsfx0x20 10, 244, 160, 7
- dutycycle 165
- unknownsfx0x20 10, 246, 216, 7
- unknownsfx0x20 4, 227, 215, 7
- unknownsfx0x20 15, 242, 216, 7
- endchannel
-
-SFX_803a0_4_Ch5:
- dutycycle 5
- unknownsfx0x20 2, 8, 0, 0
- unknownsfx0x20 15, 167, 161, 6
- unknownsfx0x20 6, 134, 162, 6
- unknownsfx0x20 10, 116, 161, 6
- dutycycle 95
- unknownsfx0x20 10, 118, 214, 6
- unknownsfx0x20 4, 131, 217, 6
- unknownsfx0x20 15, 162, 215, 6
- endchannel
-
-SFX_803c1_4_Ch7:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 6, 197, 59
- unknownnoise0x20 6, 228, 61
- unknownnoise0x20 8, 182, 60
- unknownnoise0x20 6, 212, 61
- unknownnoise0x20 8, 193, 59
- endchannel
+SFX_Unknown_80337_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 0, 58
+ noise_note 15, 13, 0, 58
+ noise_note 8, 13, 0, 44
+ noise_note 6, 14, 6, 76
+ noise_note 12, 7, -5, 76
+ noise_note 15, 13, 3, 76
+ sound_ret
diff --git a/audio/sfx/unknown_80383.asm b/audio/sfx/unknown_80383.asm
new file mode 100644
index 00000000..a99c601b
--- /dev/null
+++ b/audio/sfx/unknown_80383.asm
@@ -0,0 +1,35 @@
+SFX_Unknown_80383_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1952
+ square_note 6, 14, 6, 1955
+ square_note 10, 15, 4, 1952
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 15, 6, 2008
+ square_note 4, 14, 3, 2007
+ square_note 15, 15, 2, 2008
+ sound_ret
+
+
+SFX_Unknown_80383_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 2, 0, 8, 0
+ square_note 15, 10, 7, 1697
+ square_note 6, 8, 6, 1698
+ square_note 10, 7, 4, 1697
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 10, 7, 6, 1750
+ square_note 4, 8, 3, 1753
+ square_note 15, 10, 2, 1751
+ sound_ret
+
+
+SFX_Unknown_80383_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 15, 13, 7, 60
+ noise_note 6, 12, 5, 59
+ noise_note 6, 14, 4, 61
+ noise_note 8, 11, 6, 60
+ noise_note 6, 13, 4, 61
+ noise_note 8, 12, 1, 59
+ sound_ret
diff --git a/audio/sfx/unknown_803da.asm b/audio/sfx/unknown_803da.asm
index 442bd112..40fba1ca 100644
--- a/audio/sfx/unknown_803da.asm
+++ b/audio/sfx/unknown_803da.asm
@@ -1,24 +1,25 @@
-SFX_803da_4_Ch4:
- dutycycle 240
- unknownsfx0x20 15, 247, 192, 7
- unknownsfx0x20 6, 228, 193, 7
- unknownsfx0x20 10, 246, 192, 7
- unknownsfx0x20 4, 211, 194, 7
- unknownsfx0x20 8, 193, 192, 7
- endchannel
+SFX_Unknown_803da_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1984
+ square_note 6, 14, 4, 1985
+ square_note 10, 15, 6, 1984
+ square_note 4, 13, 3, 1986
+ square_note 8, 12, 1, 1984
+ sound_ret
-SFX_803f1_4_Ch5:
- dutycycle 95
- unknownsfx0x20 15, 151, 129, 7
- unknownsfx0x20 6, 132, 128, 7
- unknownsfx0x20 10, 150, 129, 7
- unknownsfx0x20 15, 131, 129, 7
- endchannel
-SFX_80404_4_Ch7:
- unknownnoise0x20 3, 242, 60
- unknownnoise0x20 13, 230, 44
- unknownnoise0x20 15, 215, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Unknown_803da_Ch6:
+ duty_cycle_pattern 1, 1, 3, 3
+ square_note 15, 9, 7, 1921
+ square_note 6, 8, 4, 1920
+ square_note 10, 9, 6, 1921
+ square_note 15, 8, 3, 1921
+ sound_ret
+
+SFX_Unknown_803da_Ch8:
+ noise_note 3, 15, 2, 60
+ noise_note 13, 14, 6, 44
+ noise_note 15, 13, 7, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_80411.asm b/audio/sfx/unknown_80411.asm
index 4ef49cdf..a6ba154b 100644
--- a/audio/sfx/unknown_80411.asm
+++ b/audio/sfx/unknown_80411.asm
@@ -1,32 +1,33 @@
-SFX_80411_4_Ch4:
- dutycycle 240
- unknownsfx0x20 15, 247, 128, 6
- unknownsfx0x20 10, 230, 132, 6
- unknownsfx0x20 15, 215, 144, 6
- unknownsfx0x20 8, 213, 144, 6
- unknownsfx0x20 6, 196, 136, 6
- unknownsfx0x20 5, 211, 112, 6
- unknownsfx0x20 4, 211, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Unknown_80411_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 7, 1664
+ square_note 10, 14, 6, 1668
+ square_note 15, 13, 7, 1680
+ square_note 8, 13, 5, 1680
+ square_note 6, 12, 4, 1672
+ square_note 5, 13, 3, 1648
+ square_note 4, 13, 3, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_80434_4_Ch5:
- dutycycle 5
- unknownsfx0x20 15, 183, 65, 6
- unknownsfx0x20 10, 150, 66, 6
- unknownsfx0x20 15, 167, 81, 6
- unknownsfx0x20 8, 165, 81, 6
- unknownsfx0x20 6, 148, 71, 6
- unknownsfx0x20 5, 163, 49, 6
- unknownsfx0x20 4, 147, 34, 6
- unknownsfx0x20 8, 113, 1, 6
- endchannel
-SFX_80457_4_Ch7:
- unknownnoise0x20 15, 228, 60
- unknownnoise0x20 10, 199, 76
- unknownnoise0x20 10, 199, 60
- unknownnoise0x20 12, 183, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Unknown_80411_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 11, 7, 1601
+ square_note 10, 9, 6, 1602
+ square_note 15, 10, 7, 1617
+ square_note 8, 10, 5, 1617
+ square_note 6, 9, 4, 1607
+ square_note 5, 10, 3, 1585
+ square_note 4, 9, 3, 1570
+ square_note 8, 7, 1, 1537
+ sound_ret
+
+SFX_Unknown_80411_Ch8:
+ noise_note 15, 14, 4, 60
+ noise_note 10, 12, 7, 76
+ noise_note 10, 12, 7, 60
+ noise_note 12, 11, 7, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/unknown_80467.asm b/audio/sfx/unknown_80467.asm
index 7e5335ff..07fe1ca8 100644
--- a/audio/sfx/unknown_80467.asm
+++ b/audio/sfx/unknown_80467.asm
@@ -1,33 +1,34 @@
-SFX_80467_4_Ch4:
- dutycycle 240
- unknownsfx0x20 6, 247, 160, 7
- unknownsfx0x20 8, 230, 164, 7
- unknownsfx0x20 4, 214, 160, 7
- unknownsfx0x20 15, 211, 32, 7
- unknownsfx0x20 8, 195, 35, 7
- unknownsfx0x20 2, 194, 40, 7
- unknownsfx0x20 8, 177, 48, 7
- endchannel
+SFX_Unknown_80467_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1952
+ square_note 8, 14, 6, 1956
+ square_note 4, 13, 6, 1952
+ square_note 15, 13, 3, 1824
+ square_note 8, 12, 3, 1827
+ square_note 2, 12, 2, 1832
+ square_note 8, 11, 1, 1840
+ sound_ret
-SFX_80486_4_Ch5:
- dutycycle 10
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 6, 167, 65, 7
- unknownsfx0x20 8, 134, 67, 7
- unknownsfx0x20 4, 118, 65, 7
- unknownsfx0x20 13, 131, 194, 6
- unknownsfx0x20 7, 115, 193, 6
- unknownsfx0x20 3, 130, 204, 6
- unknownsfx0x20 8, 113, 216, 6
- endchannel
-SFX_804a9_4_Ch7:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 230, 58
- unknownnoise0x20 4, 215, 58
- unknownnoise0x20 6, 214, 44
- unknownnoise0x20 8, 229, 60
- unknownnoise0x20 12, 210, 61
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Unknown_80467_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 0, 8, 0
+ square_note 6, 10, 7, 1857
+ square_note 8, 8, 6, 1859
+ square_note 4, 7, 6, 1857
+ square_note 13, 8, 3, 1730
+ square_note 7, 7, 3, 1729
+ square_note 3, 8, 2, 1740
+ square_note 8, 7, 1, 1752
+ sound_ret
+
+SFX_Unknown_80467_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 6, 58
+ noise_note 4, 13, 7, 58
+ noise_note 6, 13, 6, 44
+ noise_note 8, 14, 5, 60
+ noise_note 12, 13, 2, 61
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_804bf.asm b/audio/sfx/unknown_804bf.asm
index 6776692c..a4e5c616 100644
--- a/audio/sfx/unknown_804bf.asm
+++ b/audio/sfx/unknown_804bf.asm
@@ -1,25 +1,26 @@
-SFX_804bf_4_Ch4:
- dutycycle 165
- unknownsfx0x20 6, 244, 64, 7
- unknownsfx0x20 15, 227, 48, 7
- unknownsfx0x20 4, 244, 64, 7
- unknownsfx0x20 5, 179, 72, 7
- unknownsfx0x20 8, 209, 80, 7
- endchannel
+SFX_Unknown_804bf_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 6, 15, 4, 1856
+ square_note 15, 14, 3, 1840
+ square_note 4, 15, 4, 1856
+ square_note 5, 11, 3, 1864
+ square_note 8, 13, 1, 1872
+ sound_ret
-SFX_804d6_4_Ch5:
- dutycycle 119
- unknownsfx0x20 6, 195, 18, 7
- unknownsfx0x20 15, 179, 4, 7
- unknownsfx0x20 3, 195, 18, 7
- unknownsfx0x20 4, 195, 33, 7
- unknownsfx0x20 8, 177, 50, 7
- endchannel
-SFX_804ed_4_Ch7:
- unknownnoise0x20 8, 214, 44
- unknownnoise0x20 12, 198, 60
- unknownnoise0x20 10, 182, 44
- unknownnoise0x20 8, 145, 28
- endchannel
+SFX_Unknown_804bf_Ch6:
+ duty_cycle_pattern 1, 3, 1, 3
+ square_note 6, 12, 3, 1810
+ square_note 15, 11, 3, 1796
+ square_note 3, 12, 3, 1810
+ square_note 4, 12, 3, 1825
+ square_note 8, 11, 1, 1842
+ sound_ret
+
+SFX_Unknown_804bf_Ch8:
+ noise_note 8, 13, 6, 44
+ noise_note 12, 12, 6, 60
+ noise_note 10, 11, 6, 44
+ noise_note 8, 9, 1, 28
+ sound_ret
diff --git a/audio/sfx/unknown_804fa.asm b/audio/sfx/unknown_804fa.asm
index 74b7e681..0660ffd5 100644
--- a/audio/sfx/unknown_804fa.asm
+++ b/audio/sfx/unknown_804fa.asm
@@ -1,29 +1,30 @@
-SFX_804fa_4_Ch4:
- dutycycle 240
- unknownsfx0x20 4, 247, 8, 6
- unknownsfx0x20 6, 230, 0, 6
- unknownsfx0x20 6, 215, 240, 5
- unknownsfx0x20 6, 196, 224, 5
- unknownsfx0x20 5, 211, 192, 5
- unknownsfx0x20 4, 211, 160, 5
- unknownsfx0x20 8, 225, 128, 5
- endchannel
+SFX_Unknown_804fa_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1544
+ square_note 6, 14, 6, 1536
+ square_note 6, 13, 7, 1520
+ square_note 6, 12, 4, 1504
+ square_note 5, 13, 3, 1472
+ square_note 4, 13, 3, 1440
+ square_note 8, 14, 1, 1408
+ sound_ret
-SFX_80519_4_Ch5:
- dutycycle 10
- unknownsfx0x20 4, 199, 4, 5
- unknownsfx0x20 6, 166, 2, 5
- unknownsfx0x20 6, 151, 241, 4
- unknownsfx0x20 4, 180, 225, 4
- unknownsfx0x20 5, 163, 194, 4
- unknownsfx0x20 4, 179, 163, 4
- unknownsfx0x20 8, 193, 130, 4
- endchannel
-SFX_80538_4_Ch7:
- unknownnoise0x20 12, 228, 76
- unknownnoise0x20 10, 199, 92
- unknownnoise0x20 12, 182, 76
- unknownnoise0x20 15, 162, 92
- endchannel
+SFX_Unknown_804fa_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 12, 7, 1284
+ square_note 6, 10, 6, 1282
+ square_note 6, 9, 7, 1265
+ square_note 4, 11, 4, 1249
+ square_note 5, 10, 3, 1218
+ square_note 4, 11, 3, 1187
+ square_note 8, 12, 1, 1154
+ sound_ret
+
+SFX_Unknown_804fa_Ch8:
+ noise_note 12, 14, 4, 76
+ noise_note 10, 12, 7, 92
+ noise_note 12, 11, 6, 76
+ noise_note 15, 10, 2, 92
+ sound_ret
diff --git a/audio/sfx/unknown_80545.asm b/audio/sfx/unknown_80545.asm
index 9ba19478..ab819869 100644
--- a/audio/sfx/unknown_80545.asm
+++ b/audio/sfx/unknown_80545.asm
@@ -1,28 +1,29 @@
-SFX_80545_4_Ch4:
- dutycycle 241
- unknownsfx0x20 4, 247, 192, 7
- unknownsfx0x20 12, 230, 194, 7
- unknownsfx0x20 6, 181, 128, 6
- unknownsfx0x20 4, 196, 112, 6
- unknownsfx0x20 4, 181, 96, 6
- unknownsfx0x20 8, 193, 64, 6
- endchannel
+SFX_Unknown_80545_Ch5:
+ duty_cycle_pattern 3, 3, 0, 1
+ square_note 4, 15, 7, 1984
+ square_note 12, 14, 6, 1986
+ square_note 6, 11, 5, 1664
+ square_note 4, 12, 4, 1648
+ square_note 4, 11, 5, 1632
+ square_note 8, 12, 1, 1600
+ sound_ret
-SFX_80560_4_Ch5:
- dutycycle 204
- unknownsfx0x20 3, 199, 129, 7
- unknownsfx0x20 12, 182, 128, 7
- unknownsfx0x20 6, 165, 65, 6
- unknownsfx0x20 4, 196, 50, 6
- unknownsfx0x20 6, 181, 33, 6
- unknownsfx0x20 8, 161, 2, 6
- endchannel
-SFX_8057b_4_Ch7:
- unknownnoise0x20 3, 228, 60
- unknownnoise0x20 12, 214, 44
- unknownnoise0x20 4, 228, 60
- unknownnoise0x20 8, 183, 92
- unknownnoise0x20 15, 194, 93
- endchannel
+SFX_Unknown_80545_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 12, 7, 1921
+ square_note 12, 11, 6, 1920
+ square_note 6, 10, 5, 1601
+ square_note 4, 12, 4, 1586
+ square_note 6, 11, 5, 1569
+ square_note 8, 10, 1, 1538
+ sound_ret
+
+SFX_Unknown_80545_Ch8:
+ noise_note 3, 14, 4, 60
+ noise_note 12, 13, 6, 44
+ noise_note 4, 14, 4, 60
+ noise_note 8, 11, 7, 92
+ noise_note 15, 12, 2, 93
+ sound_ret
diff --git a/audio/sfx/unknown_8058b.asm b/audio/sfx/unknown_8058b.asm
index 9e424200..b3082714 100644
--- a/audio/sfx/unknown_8058b.asm
+++ b/audio/sfx/unknown_8058b.asm
@@ -1,30 +1,31 @@
-SFX_8058b_4_Ch4:
- dutycycle 201
- unknownsfx0x20 8, 247, 128, 6
- unknownsfx0x20 2, 247, 96, 6
- unknownsfx0x20 1, 231, 64, 6
- unknownsfx0x20 1, 231, 32, 6
- unknownsfx0x20 15, 209, 0, 6
- unknownsfx0x20 4, 199, 64, 7
- unknownsfx0x20 4, 167, 48, 7
- unknownsfx0x20 15, 145, 32, 7
- endchannel
+SFX_Unknown_8058b_Ch5:
+ duty_cycle_pattern 3, 0, 2, 1
+ square_note 8, 15, 7, 1664
+ square_note 2, 15, 7, 1632
+ square_note 1, 14, 7, 1600
+ square_note 1, 14, 7, 1568
+ square_note 15, 13, 1, 1536
+ square_note 4, 12, 7, 1856
+ square_note 4, 10, 7, 1840
+ square_note 15, 9, 1, 1824
+ sound_ret
-SFX_805ae_4_Ch5:
- dutycycle 121
- unknownsfx0x20 10, 231, 130, 6
- unknownsfx0x20 2, 231, 98, 6
- unknownsfx0x20 1, 215, 66, 6
- unknownsfx0x20 1, 215, 34, 6
- unknownsfx0x20 15, 193, 2, 6
- unknownsfx0x20 4, 183, 66, 7
- unknownsfx0x20 2, 151, 50, 7
- unknownsfx0x20 15, 129, 34, 7
- endchannel
-SFX_805d1_4_Ch7:
- unknownnoise0x20 4, 116, 33
- unknownnoise0x20 4, 116, 16
- unknownnoise0x20 4, 113, 32
- endchannel
+SFX_Unknown_8058b_Ch6:
+ duty_cycle_pattern 1, 3, 2, 1
+ square_note 10, 14, 7, 1666
+ square_note 2, 14, 7, 1634
+ square_note 1, 13, 7, 1602
+ square_note 1, 13, 7, 1570
+ square_note 15, 12, 1, 1538
+ square_note 4, 11, 7, 1858
+ square_note 2, 9, 7, 1842
+ square_note 15, 8, 1, 1826
+ sound_ret
+
+SFX_Unknown_8058b_Ch8:
+ noise_note 4, 7, 4, 33
+ noise_note 4, 7, 4, 16
+ noise_note 4, 7, 1, 32
+ sound_ret
diff --git a/audio/sfx/unknown_805db.asm b/audio/sfx/unknown_805db.asm
index 5e978a1e..7bb82004 100644
--- a/audio/sfx/unknown_805db.asm
+++ b/audio/sfx/unknown_805db.asm
@@ -1,20 +1,21 @@
-SFX_805db_4_Ch4:
- dutycycle 245
- unknownsfx0x20 4, 243, 24, 7
- unknownsfx0x20 15, 229, 152, 7
- unknownsfx0x20 8, 145, 88, 7
- endchannel
+SFX_Unknown_805db_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 4, 15, 3, 1816
+ square_note 15, 14, 5, 1944
+ square_note 8, 9, 1, 1880
+ sound_ret
-SFX_805ea_4_Ch5:
- dutycycle 160
- unknownsfx0x20 5, 179, 8, 7
- unknownsfx0x20 15, 197, 136, 7
- unknownsfx0x20 8, 113, 72, 7
- endchannel
-SFX_805f9_4_Ch7:
- unknownnoise0x20 3, 161, 28
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 8, 129, 28
- endchannel
+SFX_Unknown_805db_Ch6:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 5, 11, 3, 1800
+ square_note 15, 12, 5, 1928
+ square_note 8, 7, 1, 1864
+ sound_ret
+
+SFX_Unknown_805db_Ch8:
+ noise_note 3, 10, 1, 28
+ noise_note 14, 9, 4, 44
+ noise_note 8, 8, 1, 28
+ sound_ret
diff --git a/audio/sfx/unknown_80603.asm b/audio/sfx/unknown_80603.asm
index 3cbc9ca2..c673990c 100644
--- a/audio/sfx/unknown_80603.asm
+++ b/audio/sfx/unknown_80603.asm
@@ -1,22 +1,23 @@
-SFX_80603_4_Ch4:
- dutycycle 165
- unknownsfx0x20 4, 225, 0, 7
- unknownsfx0x20 4, 242, 128, 7
- unknownsfx0x20 2, 146, 64, 7
- unknownsfx0x20 8, 225, 0, 6
- endchannel
+SFX_Unknown_80603_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 4, 14, 1, 1792
+ square_note 4, 15, 2, 1920
+ square_note 2, 9, 2, 1856
+ square_note 8, 14, 1, 1536
+ sound_ret
-SFX_80616_4_Ch5:
- dutycycle 10
- unknownsfx0x20 4, 177, 225, 6
- unknownsfx0x20 3, 194, 225, 6
- unknownsfx0x20 3, 98, 129, 6
- unknownsfx0x20 8, 177, 225, 5
- endchannel
-SFX_80629_4_Ch7:
- unknownnoise0x20 2, 97, 50
- unknownnoise0x20 2, 97, 33
- unknownnoise0x20 8, 97, 17
- endchannel
+SFX_Unknown_80603_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 4, 11, 1, 1761
+ square_note 3, 12, 2, 1761
+ square_note 3, 6, 2, 1665
+ square_note 8, 11, 1, 1505
+ sound_ret
+
+SFX_Unknown_80603_Ch8:
+ noise_note 2, 6, 1, 50
+ noise_note 2, 6, 1, 33
+ noise_note 8, 6, 1, 17
+ sound_ret
diff --git a/audio/sfx/unknown_80633.asm b/audio/sfx/unknown_80633.asm
index 9be59347..c2b421e1 100644
--- a/audio/sfx/unknown_80633.asm
+++ b/audio/sfx/unknown_80633.asm
@@ -1,20 +1,22 @@
-SFX_80633_4_Ch4:
- dutycycle 250
- unknownsfx0x20 6, 131, 71, 2
- unknownsfx0x20 15, 98, 38, 2
- unknownsfx0x20 4, 82, 69, 2
- unknownsfx0x20 9, 99, 6, 2
- unknownsfx0x20 15, 130, 37, 2
- unknownsfx0x20 15, 66, 7, 2
-SFX_8064d_4_Ch5:
- endchannel
+SFX_Unknown_80633_Ch5:
+ duty_cycle_pattern 3, 3, 2, 2
+ square_note 6, 8, 3, 583
+ square_note 15, 6, 2, 550
+ square_note 4, 5, 2, 581
+ square_note 9, 6, 3, 518
+ square_note 15, 8, 2, 549
+ square_note 15, 4, 2, 519
-SFX_8064e_4_Ch7:
- unknownnoise0x20 8, 212, 140
- unknownnoise0x20 4, 226, 156
- unknownnoise0x20 15, 198, 140
- unknownnoise0x20 8, 228, 172
- unknownnoise0x20 15, 215, 156
- unknownnoise0x20 15, 242, 172
- endchannel
+SFX_Unknown_80633_Ch6:
+ sound_ret
+
+
+SFX_Unknown_80633_Ch8:
+ noise_note 8, 13, 4, 140
+ noise_note 4, 14, 2, 156
+ noise_note 15, 12, 6, 140
+ noise_note 8, 14, 4, 172
+ noise_note 15, 13, 7, 156
+ noise_note 15, 15, 2, 172
+ sound_ret
diff --git a/audio/sfx/unknown_80661.asm b/audio/sfx/unknown_80661.asm
index f6848664..e45a2b1f 100644
--- a/audio/sfx/unknown_80661.asm
+++ b/audio/sfx/unknown_80661.asm
@@ -1,20 +1,21 @@
-SFX_80661_4_Ch4:
- dutycycle 240
- unknownsfx0x20 4, 243, 224, 6
- unknownsfx0x20 15, 228, 64, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Unknown_80661_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1760
+ square_note 15, 14, 4, 1600
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_80670_4_Ch5:
- dutycycle 10
- unknownsfx0x20 3, 195, 131, 6
- unknownsfx0x20 14, 180, 2, 6
- unknownsfx0x20 8, 161, 1, 6
- endchannel
-SFX_8067f_4_Ch7:
- unknownnoise0x20 4, 211, 92
- unknownnoise0x20 15, 230, 76
- unknownnoise0x20 8, 177, 92
- endchannel
+SFX_Unknown_80661_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 3, 12, 3, 1667
+ square_note 14, 11, 4, 1538
+ square_note 8, 10, 1, 1537
+ sound_ret
+
+SFX_Unknown_80661_Ch8:
+ noise_note 4, 13, 3, 92
+ noise_note 15, 14, 6, 76
+ noise_note 8, 11, 1, 92
+ sound_ret
diff --git a/audio/sfx/unknown_80689.asm b/audio/sfx/unknown_80689.asm
index 0e2c573a..50e3d7dc 100644
--- a/audio/sfx/unknown_80689.asm
+++ b/audio/sfx/unknown_80689.asm
@@ -1,17 +1,19 @@
-SFX_80689_4_Ch4:
- dutycycle 10
- unknownsfx0x20 6, 226, 0, 5
- unknownsfx0x20 6, 227, 128, 5
- unknownsfx0x20 6, 211, 112, 5
- unknownsfx0x20 8, 161, 96, 5
- endchannel
+SFX_Unknown_80689_Ch5:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 14, 2, 1280
+ square_note 6, 14, 3, 1408
+ square_note 6, 13, 3, 1392
+ square_note 8, 10, 1, 1376
+ sound_ret
-SFX_8069c_4_Ch5:
- dutycycle 245
- unknownsfx0x20 6, 226, 130, 4
- unknownsfx0x20 6, 211, 1, 5
- unknownsfx0x20 6, 178, 226, 4
- unknownsfx0x20 8, 129, 193, 4
-SFX_806ae_4_Ch7:
- endchannel
+SFX_Unknown_80689_Ch6:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 6, 14, 2, 1154
+ square_note 6, 13, 3, 1281
+ square_note 6, 11, 2, 1250
+ square_note 8, 8, 1, 1217
+
+
+SFX_Unknown_80689_Ch8:
+ sound_ret
diff --git a/audio/sfx/unknown_806af.asm b/audio/sfx/unknown_806af.asm
index 3cb97c62..611b655a 100644
--- a/audio/sfx/unknown_806af.asm
+++ b/audio/sfx/unknown_806af.asm
@@ -1,36 +1,37 @@
-SFX_806af_4_Ch4:
- dutycycle 204
- unknownsfx0x20 4, 241, 0, 7
- unknownsfx0x20 4, 225, 128, 7
- unknownsfx0x20 4, 209, 64, 7
- unknownsfx0x20 4, 225, 64, 7
- unknownsfx0x20 4, 241, 128, 7
- unknownsfx0x20 4, 209, 0, 7
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 209, 130, 7
- unknownsfx0x20 4, 193, 66, 7
- unknownsfx0x20 8, 177, 65, 7
- endchannel
+SFX_Unknown_806af_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 1, 1792
+ square_note 4, 14, 1, 1920
+ square_note 4, 13, 1, 1856
+ square_note 4, 14, 1, 1856
+ square_note 4, 15, 1, 1920
+ square_note 4, 13, 1, 1792
+ square_note 4, 15, 1, 1793
+ square_note 4, 13, 1, 1922
+ square_note 4, 12, 1, 1858
+ square_note 8, 11, 1, 1857
+ sound_ret
-SFX_806da_4_Ch5:
- dutycycle 68
- unknownsfx0x20 12, 8, 0, 0
- unknownsfx0x20 4, 241, 1, 7
- unknownsfx0x20 4, 225, 130, 7
- unknownsfx0x20 4, 209, 65, 7
- unknownsfx0x20 4, 225, 65, 7
- unknownsfx0x20 4, 241, 130, 7
- unknownsfx0x20 8, 209, 1, 7
- endchannel
-SFX_806f9_4_Ch7:
- unknownnoise0x20 15, 8, 0
- unknownnoise0x20 4, 8, 0
- unknownnoise0x20 4, 209, 76
- unknownnoise0x20 4, 177, 44
- unknownnoise0x20 4, 209, 60
- unknownnoise0x20 4, 177, 60
- unknownnoise0x20 4, 193, 44
- unknownnoise0x20 8, 161, 76
- endchannel
+SFX_Unknown_806af_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 0, 8, 0
+ square_note 4, 15, 1, 1793
+ square_note 4, 14, 1, 1922
+ square_note 4, 13, 1, 1857
+ square_note 4, 14, 1, 1857
+ square_note 4, 15, 1, 1922
+ square_note 8, 13, 1, 1793
+ sound_ret
+
+SFX_Unknown_806af_Ch8:
+ noise_note 15, 0, 8, 0
+ noise_note 4, 0, 8, 0
+ noise_note 4, 13, 1, 76
+ noise_note 4, 11, 1, 44
+ noise_note 4, 13, 1, 60
+ noise_note 4, 11, 1, 60
+ noise_note 4, 12, 1, 44
+ noise_note 8, 10, 1, 76
+ sound_ret
diff --git a/audio/sfx/unknown_80712.asm b/audio/sfx/unknown_80712.asm
index 689f12ad..48d00508 100644
--- a/audio/sfx/unknown_80712.asm
+++ b/audio/sfx/unknown_80712.asm
@@ -1,27 +1,29 @@
-SFX_80712_4_Ch4:
- dutycycle 204
- unknownsfx0x20 8, 245, 0, 6
- unknownsfx0x20 2, 210, 56, 6
- unknownsfx0x20 2, 194, 48, 6
- unknownsfx0x20 2, 194, 40, 6
- unknownsfx0x20 2, 178, 32, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 2, 162, 24, 6
- unknownsfx0x20 2, 178, 16, 6
- unknownsfx0x20 8, 193, 32, 6
- endchannel
+SFX_Unknown_80712_Ch5:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 8, 15, 5, 1536
+ square_note 2, 13, 2, 1592
+ square_note 2, 12, 2, 1584
+ square_note 2, 12, 2, 1576
+ square_note 2, 11, 2, 1568
+ square_note 2, 11, 2, 1552
+ square_note 2, 10, 2, 1560
+ square_note 2, 11, 2, 1552
+ square_note 8, 12, 1, 1568
+ sound_ret
-SFX_80739_4_Ch5:
- dutycycle 68
- unknownsfx0x20 12, 195, 192, 5
- unknownsfx0x20 3, 177, 249, 5
- unknownsfx0x20 2, 161, 241, 5
- unknownsfx0x20 2, 161, 233, 5
- unknownsfx0x20 2, 145, 225, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 2, 129, 209, 5
- unknownsfx0x20 2, 145, 217, 5
- unknownsfx0x20 8, 145, 225, 5
-SFX_8075f_4_Ch7:
- endchannel
+SFX_Unknown_80712_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 12, 12, 3, 1472
+ square_note 3, 11, 1, 1529
+ square_note 2, 10, 1, 1521
+ square_note 2, 10, 1, 1513
+ square_note 2, 9, 1, 1505
+ square_note 2, 9, 1, 1497
+ square_note 2, 8, 1, 1489
+ square_note 2, 9, 1, 1497
+ square_note 8, 9, 1, 1505
+
+
+SFX_Unknown_80712_Ch8:
+ sound_ret
diff --git a/audio/sfx/unknown_80760.asm b/audio/sfx/unknown_80760.asm
index 47d28da0..4fd9eba2 100644
--- a/audio/sfx/unknown_80760.asm
+++ b/audio/sfx/unknown_80760.asm
@@ -1,15 +1,17 @@
-SFX_80760_4_Ch4:
- duty 0
- unknownsfx0x20 8, 245, 128, 4
- unknownsfx0x20 2, 225, 224, 5
- unknownsfx0x20 8, 209, 220, 5
- endchannel
-
-SFX_8076f_4_Ch5:
- dutycycle 165
- unknownsfx0x20 7, 149, 65, 4
- unknownsfx0x20 2, 129, 33, 5
- unknownsfx0x20 8, 97, 26, 5
-SFX_8077d_4_Ch7:
- endchannel
+SFX_Unknown_80760_Ch5:
+ duty_cycle 0
+ square_note 8, 15, 5, 1152
+ square_note 2, 14, 1, 1504
+ square_note 8, 13, 1, 1500
+ sound_ret
+
+SFX_Unknown_80760_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 7, 9, 5, 1089
+ square_note 2, 8, 1, 1313
+ square_note 8, 6, 1, 1306
+
+
+SFX_Unknown_80760_Ch8:
+ sound_ret
diff --git a/audio/sfx/unknown_8077e.asm b/audio/sfx/unknown_8077e.asm
index 2047af78..c0ea51ad 100644
--- a/audio/sfx/unknown_8077e.asm
+++ b/audio/sfx/unknown_8077e.asm
@@ -1,39 +1,40 @@
-SFX_8077e_4_Ch4:
- dutycycle 136
- unknownsfx0x20 5, 242, 80, 6
- unknownsfx0x20 9, 209, 96, 6
- unknownsfx0x20 5, 226, 18, 6
- unknownsfx0x20 9, 193, 34, 6
- unknownsfx0x20 5, 242, 16, 6
- unknownsfx0x20 6, 209, 32, 6
- loopchannel 2, SFX_8077e_4_Ch4
- endchannel
+SFX_Unknown_8077e_Ch5:
+ duty_cycle_pattern 2, 0, 2, 0
+ square_note 5, 15, 2, 1616
+ square_note 9, 13, 1, 1632
+ square_note 5, 14, 2, 1554
+ square_note 9, 12, 1, 1570
+ square_note 5, 15, 2, 1552
+ square_note 6, 13, 1, 1568
+ sound_loop 2, SFX_Unknown_8077e_Ch5
+ sound_ret
-SFX_8079d_4_Ch5:
- dutycycle 64
- unknownsfx0x20 4, 8, 0, 0
- unknownsfx0x20 5, 242, 81, 6
- unknownsfx0x20 9, 209, 97, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 12, 209, 33, 6
- unknownsfx0x20 5, 226, 20, 6
- unknownsfx0x20 8, 193, 36, 6
- unknownsfx0x20 5, 242, 17, 6
- unknownsfx0x20 4, 209, 33, 6
- endchannel
-SFX_807cc_4_Ch7:
- unknownnoise0x20 6, 210, 28
- unknownnoise0x20 9, 177, 44
- unknownnoise0x20 8, 194, 44
- unknownnoise0x20 9, 177, 60
- unknownnoise0x20 6, 194, 44
- unknownnoise0x20 9, 162, 60
- unknownnoise0x20 7, 194, 44
- unknownnoise0x20 5, 161, 60
- unknownnoise0x20 9, 194, 44
- unknownnoise0x20 4, 161, 60
- endchannel
+SFX_Unknown_8077e_Ch6:
+ duty_cycle_pattern 1, 0, 0, 0
+ square_note 4, 0, 8, 0
+ square_note 5, 15, 2, 1617
+ square_note 9, 13, 1, 1633
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 12, 13, 1, 1569
+ square_note 5, 14, 2, 1556
+ square_note 8, 12, 1, 1572
+ square_note 5, 15, 2, 1553
+ square_note 4, 13, 1, 1569
+ sound_ret
+
+SFX_Unknown_8077e_Ch8:
+ noise_note 6, 13, 2, 28
+ noise_note 9, 11, 1, 44
+ noise_note 8, 12, 2, 44
+ noise_note 9, 11, 1, 60
+ noise_note 6, 12, 2, 44
+ noise_note 9, 10, 2, 60
+ noise_note 7, 12, 2, 44
+ noise_note 5, 10, 1, 60
+ noise_note 9, 12, 2, 44
+ noise_note 4, 10, 1, 60
+ sound_ret
diff --git a/audio/sfx/unknown_807eb.asm b/audio/sfx/unknown_807eb.asm
index 8554695e..c98628a0 100644
--- a/audio/sfx/unknown_807eb.asm
+++ b/audio/sfx/unknown_807eb.asm
@@ -1,23 +1,24 @@
-SFX_807eb_4_Ch4:
- dutycycle 160
- unknownsfx0x20 4, 243, 0, 6
- unknownsfx0x20 8, 213, 96, 7
- unknownsfx0x20 3, 226, 32, 7
- unknownsfx0x20 8, 209, 16, 7
- endchannel
+SFX_Unknown_807eb_Ch5:
+ duty_cycle_pattern 2, 2, 0, 0
+ square_note 4, 15, 3, 1536
+ square_note 8, 13, 5, 1888
+ square_note 3, 14, 2, 1824
+ square_note 8, 13, 1, 1808
+ sound_ret
-SFX_807fe_4_Ch5:
- dutycycle 90
- unknownsfx0x20 5, 179, 241, 6
- unknownsfx0x20 7, 197, 82, 7
- unknownsfx0x20 3, 162, 17, 7
- unknownsfx0x20 8, 177, 1, 6
- endchannel
-SFX_80811_4_Ch7:
- unknownnoise0x20 3, 162, 60
- unknownnoise0x20 12, 148, 44
- unknownnoise0x20 3, 130, 28
- unknownnoise0x20 8, 113, 44
- endchannel
+SFX_Unknown_807eb_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 5, 11, 3, 1777
+ square_note 7, 12, 5, 1874
+ square_note 3, 10, 2, 1809
+ square_note 8, 11, 1, 1537
+ sound_ret
+
+SFX_Unknown_807eb_Ch8:
+ noise_note 3, 10, 2, 60
+ noise_note 12, 9, 4, 44
+ noise_note 3, 8, 2, 28
+ noise_note 8, 7, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_8081e.asm b/audio/sfx/unknown_8081e.asm
index 1581d121..ca5e8aa1 100644
--- a/audio/sfx/unknown_8081e.asm
+++ b/audio/sfx/unknown_8081e.asm
@@ -1,34 +1,35 @@
-SFX_8081e_4_Ch4:
- dutycycle 240
- unknownsfx0x20 8, 247, 224, 6
- unknownsfx0x20 6, 230, 229, 6
- unknownsfx0x20 3, 244, 224, 6
- unknownsfx0x20 3, 246, 208, 6
- unknownsfx0x20 3, 227, 192, 6
- unknownsfx0x20 4, 242, 176, 6
- unknownsfx0x20 15, 162, 200, 6
- endchannel
+SFX_Unknown_8081e_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 15, 7, 1760
+ square_note 6, 14, 6, 1765
+ square_note 3, 15, 4, 1760
+ square_note 3, 15, 6, 1744
+ square_note 3, 14, 3, 1728
+ square_note 4, 15, 2, 1712
+ square_note 15, 10, 2, 1736
+ sound_ret
-SFX_8083d_4_Ch5:
- dutycycle 5
- unknownsfx0x20 3, 8, 0, 0
- unknownsfx0x20 8, 167, 161, 6
- unknownsfx0x20 6, 134, 163, 6
- unknownsfx0x20 3, 116, 161, 6
- unknownsfx0x20 3, 118, 145, 6
- unknownsfx0x20 3, 131, 130, 6
- unknownsfx0x20 4, 162, 113, 6
- unknownsfx0x20 15, 114, 137, 6
- endchannel
-SFX_80860_4_Ch7:
- unknownnoise0x20 2, 242, 60
- unknownnoise0x20 8, 228, 62
- unknownnoise0x20 8, 215, 60
- unknownnoise0x20 5, 197, 59
- unknownnoise0x20 3, 212, 44
- unknownnoise0x20 2, 182, 60
- unknownnoise0x20 3, 164, 44
- unknownnoise0x20 8, 145, 60
- endchannel
+SFX_Unknown_8081e_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 3, 0, 8, 0
+ square_note 8, 10, 7, 1697
+ square_note 6, 8, 6, 1699
+ square_note 3, 7, 4, 1697
+ square_note 3, 7, 6, 1681
+ square_note 3, 8, 3, 1666
+ square_note 4, 10, 2, 1649
+ square_note 15, 7, 2, 1673
+ sound_ret
+
+SFX_Unknown_8081e_Ch8:
+ noise_note 2, 15, 2, 60
+ noise_note 8, 14, 4, 62
+ noise_note 8, 13, 7, 60
+ noise_note 5, 12, 5, 59
+ noise_note 3, 13, 4, 44
+ noise_note 2, 11, 6, 60
+ noise_note 3, 10, 4, 44
+ noise_note 8, 9, 1, 60
+ sound_ret
diff --git a/audio/sfx/unknown_80879.asm b/audio/sfx/unknown_80879.asm
index 23839d60..bbb4043e 100644
--- a/audio/sfx/unknown_80879.asm
+++ b/audio/sfx/unknown_80879.asm
@@ -1,22 +1,23 @@
-SFX_80879_4_Ch4:
- dutycycle 240
- unknownsfx0x20 15, 246, 101, 5
- unknownsfx0x20 10, 228, 124, 5
- unknownsfx0x20 3, 194, 92, 5
- unknownsfx0x20 15, 178, 60, 5
- endchannel
+SFX_Unknown_80879_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 15, 6, 1381
+ square_note 10, 14, 4, 1404
+ square_note 3, 12, 2, 1372
+ square_note 15, 11, 2, 1340
+ sound_ret
-SFX_8088c_4_Ch5:
- dutycycle 90
- unknownsfx0x20 14, 214, 3, 5
- unknownsfx0x20 9, 180, 27, 5
- unknownsfx0x20 4, 146, 250, 4
- unknownsfx0x20 15, 162, 219, 4
- endchannel
-SFX_8089f_4_Ch7:
- unknownnoise0x20 12, 230, 76
- unknownnoise0x20 11, 215, 92
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Unknown_80879_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 14, 13, 6, 1283
+ square_note 9, 11, 4, 1307
+ square_note 4, 9, 2, 1274
+ square_note 15, 10, 2, 1243
+ sound_ret
+
+SFX_Unknown_80879_Ch8:
+ noise_note 12, 14, 6, 76
+ noise_note 11, 13, 7, 92
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/unknown_808a9.asm b/audio/sfx/unknown_808a9.asm
index efa4a0d6..b27eeada 100644
--- a/audio/sfx/unknown_808a9.asm
+++ b/audio/sfx/unknown_808a9.asm
@@ -1,31 +1,32 @@
-SFX_808a9_4_Ch4:
- dutycycle 240
- unknownsfx0x20 4, 247, 160, 6
- unknownsfx0x20 8, 230, 164, 6
- unknownsfx0x20 4, 214, 160, 6
- unknownsfx0x20 12, 211, 32, 6
- unknownsfx0x20 8, 195, 36, 6
- unknownsfx0x20 4, 194, 32, 6
- unknownsfx0x20 8, 177, 16, 6
- endchannel
+SFX_Unknown_808a9_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 7, 1696
+ square_note 8, 14, 6, 1700
+ square_note 4, 13, 6, 1696
+ square_note 12, 13, 3, 1568
+ square_note 8, 12, 3, 1572
+ square_note 4, 12, 2, 1568
+ square_note 8, 11, 1, 1552
+ sound_ret
-SFX_808c8_4_Ch5:
- dutycycle 90
- unknownsfx0x20 4, 231, 1, 6
- unknownsfx0x20 8, 214, 3, 6
- unknownsfx0x20 4, 198, 1, 6
- unknownsfx0x20 12, 195, 129, 5
- unknownsfx0x20 8, 179, 131, 5
- unknownsfx0x20 4, 178, 130, 5
- unknownsfx0x20 8, 161, 113, 5
- endchannel
-SFX_808e7_4_Ch7:
- unknownnoise0x20 7, 214, 92
- unknownnoise0x20 8, 230, 76
- unknownnoise0x20 4, 212, 92
- unknownnoise0x20 4, 212, 76
- unknownnoise0x20 7, 195, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Unknown_808a9_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 4, 14, 7, 1537
+ square_note 8, 13, 6, 1539
+ square_note 4, 12, 6, 1537
+ square_note 12, 12, 3, 1409
+ square_note 8, 11, 3, 1411
+ square_note 4, 11, 2, 1410
+ square_note 8, 10, 1, 1393
+ sound_ret
+
+SFX_Unknown_808a9_Ch8:
+ noise_note 7, 13, 6, 92
+ noise_note 8, 14, 6, 76
+ noise_note 4, 13, 4, 92
+ noise_note 4, 13, 4, 76
+ noise_note 7, 12, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/unknown_808fa.asm b/audio/sfx/unknown_808fa.asm
index 4bd5839f..37d49937 100644
--- a/audio/sfx/unknown_808fa.asm
+++ b/audio/sfx/unknown_808fa.asm
@@ -1,16 +1,18 @@
-SFX_808fa_4_Ch4:
- dutycycle 27
- unknownsfx0x20 7, 210, 64, 7
- unknownsfx0x20 15, 229, 96, 7
- unknownsfx0x20 15, 193, 48, 7
- endchannel
+SFX_Unknown_808fa_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 7, 13, 2, 1856
+ square_note 15, 14, 5, 1888
+ square_note 15, 12, 1, 1840
+ sound_ret
-SFX_80909_4_Ch5:
- dutycycle 129
- unknownsfx0x20 2, 194, 1, 7
- unknownsfx0x20 4, 194, 8, 7
- unknownsfx0x20 15, 215, 65, 7
- unknownsfx0x20 15, 162, 1, 7
-SFX_8091b_4_Ch7:
- endchannel
+SFX_Unknown_808fa_Ch6:
+ duty_cycle_pattern 2, 0, 0, 1
+ square_note 2, 12, 2, 1793
+ square_note 4, 12, 2, 1800
+ square_note 15, 13, 7, 1857
+ square_note 15, 10, 2, 1793
+
+
+SFX_Unknown_808fa_Ch8:
+ sound_ret
diff --git a/audio/sfx/unknown_8091c.asm b/audio/sfx/unknown_8091c.asm
index c4fa4c20..0d160799 100644
--- a/audio/sfx/unknown_8091c.asm
+++ b/audio/sfx/unknown_8091c.asm
@@ -1,20 +1,21 @@
-SFX_8091c_4_Ch4:
- dutycycle 240
- unknownsfx0x20 15, 215, 128, 7
- unknownsfx0x20 4, 230, 160, 7
- unknownsfx0x20 15, 210, 64, 7
- endchannel
+SFX_Unknown_8091c_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 13, 7, 1920
+ square_note 4, 14, 6, 1952
+ square_note 15, 13, 2, 1856
+ sound_ret
-SFX_8092b_4_Ch5:
- dutycycle 90
- unknownsfx0x20 15, 199, 83, 7
- unknownsfx0x20 5, 182, 114, 7
- unknownsfx0x20 15, 194, 17, 7
- endchannel
-SFX_8093a_4_Ch7:
- unknownnoise0x20 13, 246, 76
- unknownnoise0x20 4, 230, 60
- unknownnoise0x20 15, 242, 76
- endchannel
+SFX_Unknown_8091c_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 15, 12, 7, 1875
+ square_note 5, 11, 6, 1906
+ square_note 15, 12, 2, 1809
+ sound_ret
+
+SFX_Unknown_8091c_Ch8:
+ noise_note 13, 15, 6, 76
+ noise_note 4, 14, 6, 60
+ noise_note 15, 15, 2, 76
+ sound_ret
diff --git a/audio/sfx/unknown_80944.asm b/audio/sfx/unknown_80944.asm
index e16cec26..adfc42b2 100644
--- a/audio/sfx/unknown_80944.asm
+++ b/audio/sfx/unknown_80944.asm
@@ -1,25 +1,26 @@
-SFX_80944_4_Ch4:
- dutycycle 240
- unknownsfx0x20 6, 247, 192, 6
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 4, 244, 240, 6
- unknownsfx0x20 4, 228, 224, 6
- unknownsfx0x20 8, 209, 208, 6
- endchannel
+SFX_Unknown_80944_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1728
+ square_note 15, 14, 7, 1792
+ square_note 4, 15, 4, 1776
+ square_note 4, 14, 4, 1760
+ square_note 8, 13, 1, 1744
+ sound_ret
-SFX_8095b_4_Ch5:
- dutycycle 10
- unknownsfx0x20 7, 230, 129, 6
- unknownsfx0x20 14, 213, 193, 6
- unknownsfx0x20 4, 196, 177, 6
- unknownsfx0x20 4, 212, 161, 6
- unknownsfx0x20 8, 193, 145, 6
- endchannel
-SFX_80972_4_Ch7:
- unknownnoise0x20 10, 166, 60
- unknownnoise0x20 14, 148, 44
- unknownnoise0x20 5, 163, 60
- unknownnoise0x20 8, 145, 44
- endchannel
+SFX_Unknown_80944_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 7, 14, 6, 1665
+ square_note 14, 13, 5, 1729
+ square_note 4, 12, 4, 1713
+ square_note 4, 13, 4, 1697
+ square_note 8, 12, 1, 1681
+ sound_ret
+
+SFX_Unknown_80944_Ch8:
+ noise_note 10, 10, 6, 60
+ noise_note 14, 9, 4, 44
+ noise_note 5, 10, 3, 60
+ noise_note 8, 9, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_8097f.asm b/audio/sfx/unknown_8097f.asm
index b178821c..259b6b34 100644
--- a/audio/sfx/unknown_8097f.asm
+++ b/audio/sfx/unknown_8097f.asm
@@ -1,23 +1,24 @@
-SFX_8097f_4_Ch4:
- dutycycle 165
- unknownsfx0x20 12, 242, 64, 4
- unknownsfx0x20 15, 227, 160, 4
- unknownsfx0x20 4, 210, 144, 4
- unknownsfx0x20 8, 209, 128, 4
- endchannel
+SFX_Unknown_8097f_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 12, 15, 2, 1088
+ square_note 15, 14, 3, 1184
+ square_note 4, 13, 2, 1168
+ square_note 8, 13, 1, 1152
+ sound_ret
-SFX_80992_4_Ch5:
- dutycycle 238
- unknownsfx0x20 11, 210, 56, 4
- unknownsfx0x20 14, 198, 152, 4
- unknownsfx0x20 3, 178, 136, 4
- unknownsfx0x20 8, 177, 120, 4
- endchannel
-SFX_809a5_4_Ch7:
- unknownnoise0x20 10, 230, 108
- unknownnoise0x20 15, 210, 92
- unknownnoise0x20 3, 194, 108
- unknownnoise0x20 8, 209, 92
- endchannel
+SFX_Unknown_8097f_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 11, 13, 2, 1080
+ square_note 14, 12, 6, 1176
+ square_note 3, 11, 2, 1160
+ square_note 8, 11, 1, 1144
+ sound_ret
+
+SFX_Unknown_8097f_Ch8:
+ noise_note 10, 14, 6, 108
+ noise_note 15, 13, 2, 92
+ noise_note 3, 12, 2, 108
+ noise_note 8, 13, 1, 92
+ sound_ret
diff --git a/audio/sfx/unknown_809b2.asm b/audio/sfx/unknown_809b2.asm
index 095f7134..08946ec9 100644
--- a/audio/sfx/unknown_809b2.asm
+++ b/audio/sfx/unknown_809b2.asm
@@ -1,29 +1,30 @@
-SFX_809b2_4_Ch4:
- dutycycle 51
- unknownsfx0x20 15, 246, 192, 5
- unknownsfx0x20 8, 227, 188, 5
- unknownsfx0x20 6, 210, 208, 5
- unknownsfx0x20 6, 178, 224, 5
- unknownsfx0x20 6, 194, 240, 5
- unknownsfx0x20 8, 177, 0, 6
- endchannel
+SFX_Unknown_809b2_Ch5:
+ duty_cycle_pattern 0, 3, 0, 3
+ square_note 15, 15, 6, 1472
+ square_note 8, 14, 3, 1468
+ square_note 6, 13, 2, 1488
+ square_note 6, 11, 2, 1504
+ square_note 6, 12, 2, 1520
+ square_note 8, 11, 1, 1536
+ sound_ret
-SFX_809cd_4_Ch5:
- dutycycle 153
- unknownsfx0x20 14, 198, 177, 4
- unknownsfx0x20 7, 195, 173, 4
- unknownsfx0x20 5, 178, 193, 4
- unknownsfx0x20 8, 146, 209, 4
- unknownsfx0x20 6, 162, 225, 4
- unknownsfx0x20 8, 145, 241, 4
- endchannel
-SFX_809e8_4_Ch7:
- unknownnoise0x20 10, 230, 92
- unknownnoise0x20 10, 214, 108
- unknownnoise0x20 4, 194, 76
- unknownnoise0x20 6, 211, 92
- unknownnoise0x20 8, 179, 76
- unknownnoise0x20 8, 161, 92
- endchannel
+SFX_Unknown_809b2_Ch6:
+ duty_cycle_pattern 2, 1, 2, 1
+ square_note 14, 12, 6, 1201
+ square_note 7, 12, 3, 1197
+ square_note 5, 11, 2, 1217
+ square_note 8, 9, 2, 1233
+ square_note 6, 10, 2, 1249
+ square_note 8, 9, 1, 1265
+ sound_ret
+
+SFX_Unknown_809b2_Ch8:
+ noise_note 10, 14, 6, 92
+ noise_note 10, 13, 6, 108
+ noise_note 4, 12, 2, 76
+ noise_note 6, 13, 3, 92
+ noise_note 8, 11, 3, 76
+ noise_note 8, 10, 1, 92
+ sound_ret
diff --git a/audio/sfx/unknown_809fb.asm b/audio/sfx/unknown_809fb.asm
index 7424d61b..68edf2c9 100644
--- a/audio/sfx/unknown_809fb.asm
+++ b/audio/sfx/unknown_809fb.asm
@@ -1,20 +1,21 @@
-SFX_809fb_4_Ch4:
- dutycycle 240
- unknownsfx0x20 8, 228, 144, 7
- unknownsfx0x20 15, 245, 192, 7
- unknownsfx0x20 8, 209, 216, 7
- endchannel
+SFX_Unknown_809fb_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 8, 14, 4, 1936
+ square_note 15, 15, 5, 1984
+ square_note 8, 13, 1, 2008
+ sound_ret
-SFX_80a0a_4_Ch5:
- dutycycle 165
- unknownsfx0x20 10, 196, 113, 7
- unknownsfx0x20 15, 182, 162, 7
- unknownsfx0x20 8, 161, 183, 7
- endchannel
-SFX_80a19_4_Ch7:
- unknownnoise0x20 8, 228, 76
- unknownnoise0x20 14, 196, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Unknown_809fb_Ch6:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 10, 12, 4, 1905
+ square_note 15, 11, 6, 1954
+ square_note 8, 10, 1, 1975
+ sound_ret
+
+SFX_Unknown_809fb_Ch8:
+ noise_note 8, 14, 4, 76
+ noise_note 14, 12, 4, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_80a23.asm b/audio/sfx/unknown_80a23.asm
index c20a37d4..447ad7f3 100644
--- a/audio/sfx/unknown_80a23.asm
+++ b/audio/sfx/unknown_80a23.asm
@@ -1,37 +1,38 @@
-SFX_80a23_4_Ch4:
- dutycycle 240
- unknownsfx0x20 6, 242, 0, 6
- unknownsfx0x20 6, 226, 64, 6
- unknownsfx0x20 6, 210, 128, 6
- unknownsfx0x20 6, 226, 192, 6
- unknownsfx0x20 6, 210, 0, 7
- unknownsfx0x20 6, 194, 64, 7
- unknownsfx0x20 6, 178, 128, 7
- unknownsfx0x20 8, 161, 192, 7
- endchannel
+SFX_Unknown_80a23_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 2, 1536
+ square_note 6, 14, 2, 1600
+ square_note 6, 13, 2, 1664
+ square_note 6, 14, 2, 1728
+ square_note 6, 13, 2, 1792
+ square_note 6, 12, 2, 1856
+ square_note 6, 11, 2, 1920
+ square_note 8, 10, 1, 1984
+ sound_ret
-SFX_80a46_4_Ch5:
- dutycycle 17
- unknownsfx0x20 3, 8, 1, 0
- unknownsfx0x20 6, 194, 193, 5
- unknownsfx0x20 6, 178, 2, 6
- unknownsfx0x20 6, 162, 65, 6
- unknownsfx0x20 6, 178, 130, 6
- unknownsfx0x20 6, 162, 194, 6
- unknownsfx0x20 6, 146, 1, 7
- unknownsfx0x20 6, 162, 66, 7
- unknownsfx0x20 8, 129, 129, 7
- endchannel
-SFX_80a6d_4_Ch7:
- unknownnoise0x20 6, 8, 1
- unknownnoise0x20 5, 226, 92
- unknownnoise0x20 5, 194, 76
- unknownnoise0x20 5, 210, 60
- unknownnoise0x20 5, 178, 44
- unknownnoise0x20 5, 194, 28
- unknownnoise0x20 5, 162, 27
- unknownnoise0x20 5, 146, 26
- unknownnoise0x20 8, 129, 24
- endchannel
+SFX_Unknown_80a23_Ch6:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 3, 0, 8, 1
+ square_note 6, 12, 2, 1473
+ square_note 6, 11, 2, 1538
+ square_note 6, 10, 2, 1601
+ square_note 6, 11, 2, 1666
+ square_note 6, 10, 2, 1730
+ square_note 6, 9, 2, 1793
+ square_note 6, 10, 2, 1858
+ square_note 8, 8, 1, 1921
+ sound_ret
+
+SFX_Unknown_80a23_Ch8:
+ noise_note 6, 0, 8, 1
+ noise_note 5, 14, 2, 92
+ noise_note 5, 12, 2, 76
+ noise_note 5, 13, 2, 60
+ noise_note 5, 11, 2, 44
+ noise_note 5, 12, 2, 28
+ noise_note 5, 10, 2, 27
+ noise_note 5, 9, 2, 26
+ noise_note 8, 8, 1, 24
+ sound_ret
diff --git a/audio/sfx/unknown_80a89.asm b/audio/sfx/unknown_80a89.asm
index b79cf7c3..21a1d998 100644
--- a/audio/sfx/unknown_80a89.asm
+++ b/audio/sfx/unknown_80a89.asm
@@ -1,29 +1,30 @@
-SFX_80a89_4_Ch4:
- dutycycle 240
- unknownsfx0x20 4, 243, 128, 7
- unknownsfx0x20 15, 231, 0, 7
- unknownsfx0x20 8, 211, 16, 7
- unknownsfx0x20 4, 194, 0, 7
- unknownsfx0x20 4, 210, 240, 6
- unknownsfx0x20 8, 193, 224, 6
- endchannel
+SFX_Unknown_80a89_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 4, 15, 3, 1920
+ square_note 15, 14, 7, 1792
+ square_note 8, 13, 3, 1808
+ square_note 4, 12, 2, 1792
+ square_note 4, 13, 2, 1776
+ square_note 8, 12, 1, 1760
+ sound_ret
-SFX_80aa4_4_Ch5:
- dutycycle 90
- unknownsfx0x20 6, 195, 1, 7
- unknownsfx0x20 14, 183, 129, 6
- unknownsfx0x20 7, 179, 146, 6
- unknownsfx0x20 3, 162, 129, 6
- unknownsfx0x20 4, 178, 114, 6
- unknownsfx0x20 8, 161, 97, 6
- endchannel
-SFX_80abf_4_Ch7:
- unknownnoise0x20 6, 227, 92
- unknownnoise0x20 14, 214, 76
- unknownnoise0x20 6, 198, 60
- unknownnoise0x20 3, 179, 76
- unknownnoise0x20 3, 162, 92
- unknownnoise0x20 8, 177, 108
- endchannel
+SFX_Unknown_80a89_Ch6:
+ duty_cycle_pattern 1, 1, 2, 2
+ square_note 6, 12, 3, 1793
+ square_note 14, 11, 7, 1665
+ square_note 7, 11, 3, 1682
+ square_note 3, 10, 2, 1665
+ square_note 4, 11, 2, 1650
+ square_note 8, 10, 1, 1633
+ sound_ret
+
+SFX_Unknown_80a89_Ch8:
+ noise_note 6, 14, 3, 92
+ noise_note 14, 13, 6, 76
+ noise_note 6, 12, 6, 60
+ noise_note 3, 11, 3, 76
+ noise_note 3, 10, 2, 92
+ noise_note 8, 11, 1, 108
+ sound_ret
diff --git a/audio/sfx/unknown_80ad2.asm b/audio/sfx/unknown_80ad2.asm
index db7b45b2..ab114678 100644
--- a/audio/sfx/unknown_80ad2.asm
+++ b/audio/sfx/unknown_80ad2.asm
@@ -1,23 +1,24 @@
-SFX_80ad2_4_Ch4:
- dutycycle 15
- unknownsfx0x20 15, 247, 0, 5
- unknownsfx0x20 15, 231, 8, 5
- unknownsfx0x20 8, 180, 128, 4
- unknownsfx0x20 15, 162, 96, 4
- endchannel
+SFX_Unknown_80ad2_Ch5:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 15, 15, 7, 1280
+ square_note 15, 14, 7, 1288
+ square_note 8, 11, 4, 1152
+ square_note 15, 10, 2, 1120
+ sound_ret
-SFX_80ae5_4_Ch5:
- dutycycle 68
- unknownsfx0x20 14, 215, 129, 4
- unknownsfx0x20 14, 199, 137, 4
- unknownsfx0x20 10, 180, 1, 4
- unknownsfx0x20 15, 194, 225, 3
- endchannel
-SFX_80af8_4_Ch7:
- unknownnoise0x20 14, 247, 124
- unknownnoise0x20 12, 246, 108
- unknownnoise0x20 9, 228, 124
- unknownnoise0x20 15, 226, 108
- endchannel
+SFX_Unknown_80ad2_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 14, 13, 7, 1153
+ square_note 14, 12, 7, 1161
+ square_note 10, 11, 4, 1025
+ square_note 15, 12, 2, 993
+ sound_ret
+
+SFX_Unknown_80ad2_Ch8:
+ noise_note 14, 15, 7, 124
+ noise_note 12, 15, 6, 108
+ noise_note 9, 14, 4, 124
+ noise_note 15, 14, 2, 108
+ sound_ret
diff --git a/audio/sfx/unknown_80b05.asm b/audio/sfx/unknown_80b05.asm
index 68ca90f5..e92fb103 100644
--- a/audio/sfx/unknown_80b05.asm
+++ b/audio/sfx/unknown_80b05.asm
@@ -1,30 +1,31 @@
-SFX_80b05_4_Ch4:
- dutycycle 245
- unknownsfx0x20 7, 214, 225, 7
- unknownsfx0x20 6, 198, 226, 7
- unknownsfx0x20 9, 214, 225, 7
- unknownsfx0x20 7, 198, 224, 7
- unknownsfx0x20 5, 182, 226, 7
- unknownsfx0x20 7, 198, 225, 7
- unknownsfx0x20 6, 182, 224, 7
- unknownsfx0x20 8, 161, 223, 7
- endchannel
+SFX_Unknown_80b05_Ch5:
+ duty_cycle_pattern 3, 3, 1, 1
+ square_note 7, 13, 6, 2017
+ square_note 6, 12, 6, 2018
+ square_note 9, 13, 6, 2017
+ square_note 7, 12, 6, 2016
+ square_note 5, 11, 6, 2018
+ square_note 7, 12, 6, 2017
+ square_note 6, 11, 6, 2016
+ square_note 8, 10, 1, 2015
+ sound_ret
-SFX_80b28_4_Ch5:
- dutycycle 68
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 6, 179, 199, 7
- unknownsfx0x20 10, 196, 195, 7
- unknownsfx0x20 8, 180, 199, 7
- unknownsfx0x20 6, 195, 201, 7
- unknownsfx0x20 15, 162, 197, 7
- endchannel
-SFX_80b43_4_Ch7:
- unknownnoise0x20 13, 25, 124
- unknownnoise0x20 13, 247, 140
- unknownnoise0x20 12, 214, 124
- unknownnoise0x20 8, 196, 108
- unknownnoise0x20 15, 179, 92
- endchannel
+SFX_Unknown_80b05_Ch6:
+ duty_cycle_pattern 1, 0, 1, 0
+ square_note 6, 12, 3, 1993
+ square_note 6, 11, 3, 1991
+ square_note 10, 12, 4, 1987
+ square_note 8, 11, 4, 1991
+ square_note 6, 12, 3, 1993
+ square_note 15, 10, 2, 1989
+ sound_ret
+
+SFX_Unknown_80b05_Ch8:
+ noise_note 13, 1, -1, 124
+ noise_note 13, 15, 7, 140
+ noise_note 12, 13, 6, 124
+ noise_note 8, 12, 4, 108
+ noise_note 15, 11, 3, 92
+ sound_ret
diff --git a/audio/sfx/unknown_80b53.asm b/audio/sfx/unknown_80b53.asm
index 3033d299..7645d225 100644
--- a/audio/sfx/unknown_80b53.asm
+++ b/audio/sfx/unknown_80b53.asm
@@ -1,29 +1,30 @@
-SFX_80b53_4_Ch4:
- dutycycle 240
- unknownsfx0x20 6, 247, 64, 7
- unknownsfx0x20 12, 230, 68, 7
- unknownsfx0x20 6, 213, 80, 7
- unknownsfx0x20 4, 195, 96, 7
- unknownsfx0x20 3, 195, 128, 7
- unknownsfx0x20 8, 209, 160, 7
- endchannel
+SFX_Unknown_80b53_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 6, 15, 7, 1856
+ square_note 12, 14, 6, 1860
+ square_note 6, 13, 5, 1872
+ square_note 4, 12, 3, 1888
+ square_note 3, 12, 3, 1920
+ square_note 8, 13, 1, 1952
+ sound_ret
-SFX_80b6e_4_Ch5:
- dutycycle 10
- unknownsfx0x20 6, 199, 1, 7
- unknownsfx0x20 11, 182, 2, 7
- unknownsfx0x20 6, 165, 17, 7
- unknownsfx0x20 4, 147, 33, 7
- unknownsfx0x20 3, 163, 65, 7
- unknownsfx0x20 8, 145, 98, 7
- endchannel
-SFX_80b89_4_Ch7:
- unknownnoise0x20 3, 226, 60
- unknownnoise0x20 8, 214, 76
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 12, 199, 76
- unknownnoise0x20 2, 226, 60
- unknownnoise0x20 8, 209, 44
- endchannel
+SFX_Unknown_80b53_Ch6:
+ duty_cycle_pattern 0, 0, 2, 2
+ square_note 6, 12, 7, 1793
+ square_note 11, 11, 6, 1794
+ square_note 6, 10, 5, 1809
+ square_note 4, 9, 3, 1825
+ square_note 3, 10, 3, 1857
+ square_note 8, 9, 1, 1890
+ sound_ret
+
+SFX_Unknown_80b53_Ch8:
+ noise_note 3, 14, 2, 60
+ noise_note 8, 13, 6, 76
+ noise_note 5, 13, 4, 60
+ noise_note 12, 12, 7, 76
+ noise_note 2, 14, 2, 60
+ noise_note 8, 13, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_80b9c.asm b/audio/sfx/unknown_80b9c.asm
index 5e54107e..9e6bf047 100644
--- a/audio/sfx/unknown_80b9c.asm
+++ b/audio/sfx/unknown_80b9c.asm
@@ -1,28 +1,29 @@
-SFX_80b9c_4_Ch4:
- dutycycle 244
- unknownsfx0x20 15, 240, 5, 7
- unknownsfx0x20 10, 224, 0, 7
- unknownsfx0x20 6, 180, 16, 7
- unknownsfx0x20 4, 211, 0, 7
- unknownsfx0x20 6, 178, 32, 6
- unknownsfx0x20 8, 161, 36, 6
- endchannel
+SFX_Unknown_80b9c_Ch5:
+ duty_cycle_pattern 3, 3, 1, 0
+ square_note 15, 15, 0, 1797
+ square_note 10, 14, 0, 1792
+ square_note 6, 11, 4, 1808
+ square_note 4, 13, 3, 1792
+ square_note 6, 11, 2, 1568
+ square_note 8, 10, 1, 1572
+ sound_ret
-SFX_80bb7_4_Ch5:
- dutycycle 34
- unknownsfx0x20 15, 176, 195, 6
- unknownsfx0x20 10, 160, 193, 6
- unknownsfx0x20 6, 132, 210, 6
- unknownsfx0x20 4, 147, 193, 6
- unknownsfx0x20 6, 130, 225, 5
- unknownsfx0x20 8, 97, 232, 5
- endchannel
-SFX_80bd2_4_Ch7:
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 15, 214, 60
- unknownnoise0x20 10, 197, 74
- unknownnoise0x20 1, 178, 91
- unknownnoise0x20 15, 194, 76
- endchannel
+SFX_Unknown_80b9c_Ch6:
+ duty_cycle_pattern 0, 2, 0, 2
+ square_note 15, 11, 0, 1731
+ square_note 10, 10, 0, 1729
+ square_note 6, 8, 4, 1746
+ square_note 4, 9, 3, 1729
+ square_note 6, 8, 2, 1505
+ square_note 8, 6, 1, 1512
+ sound_ret
+
+SFX_Unknown_80b9c_Ch8:
+ noise_note 6, 14, 6, 76
+ noise_note 15, 13, 6, 60
+ noise_note 10, 12, 5, 74
+ noise_note 1, 11, 2, 91
+ noise_note 15, 12, 2, 76
+ sound_ret
diff --git a/audio/sfx/unknown_80be2.asm b/audio/sfx/unknown_80be2.asm
index 4660d8f2..2efda306 100644
--- a/audio/sfx/unknown_80be2.asm
+++ b/audio/sfx/unknown_80be2.asm
@@ -1,33 +1,34 @@
-SFX_80be2_4_Ch4:
- dutycycle 80
- unknownsfx0x20 10, 245, 128, 6
- unknownsfx0x20 3, 226, 160, 6
- unknownsfx0x20 3, 242, 192, 6
- unknownsfx0x20 3, 226, 224, 6
- unknownsfx0x20 3, 210, 0, 7
- unknownsfx0x20 3, 194, 224, 6
- unknownsfx0x20 3, 210, 192, 6
- unknownsfx0x20 8, 193, 160, 6
- endchannel
+SFX_Unknown_80be2_Ch5:
+ duty_cycle_pattern 1, 1, 0, 0
+ square_note 10, 15, 5, 1664
+ square_note 3, 14, 2, 1696
+ square_note 3, 15, 2, 1728
+ square_note 3, 14, 2, 1760
+ square_note 3, 13, 2, 1792
+ square_note 3, 12, 2, 1760
+ square_note 3, 13, 2, 1728
+ square_note 8, 12, 1, 1696
+ sound_ret
-SFX_80c05_4_Ch5:
- dutycycle 15
- unknownsfx0x20 9, 213, 49, 6
- unknownsfx0x20 3, 210, 82, 6
- unknownsfx0x20 3, 226, 113, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 178, 6
- unknownsfx0x20 3, 178, 145, 6
- unknownsfx0x20 3, 194, 113, 6
- unknownsfx0x20 8, 177, 81, 6
- endchannel
-SFX_80c28_4_Ch7:
- unknownnoise0x20 6, 227, 76
- unknownnoise0x20 4, 195, 60
- unknownnoise0x20 5, 212, 60
- unknownnoise0x20 4, 196, 44
- unknownnoise0x20 6, 180, 60
- unknownnoise0x20 8, 193, 44
- endchannel
+SFX_Unknown_80be2_Ch6:
+ duty_cycle_pattern 0, 0, 3, 3
+ square_note 9, 13, 5, 1585
+ square_note 3, 13, 2, 1618
+ square_note 3, 14, 2, 1649
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1714
+ square_note 3, 11, 2, 1681
+ square_note 3, 12, 2, 1649
+ square_note 8, 11, 1, 1617
+ sound_ret
+
+SFX_Unknown_80be2_Ch8:
+ noise_note 6, 14, 3, 76
+ noise_note 4, 12, 3, 60
+ noise_note 5, 13, 4, 60
+ noise_note 4, 12, 4, 44
+ noise_note 6, 11, 4, 60
+ noise_note 8, 12, 1, 44
+ sound_ret
diff --git a/audio/sfx/unknown_80c3b.asm b/audio/sfx/unknown_80c3b.asm
index f6106ebf..9eadefb9 100644
--- a/audio/sfx/unknown_80c3b.asm
+++ b/audio/sfx/unknown_80c3b.asm
@@ -1,23 +1,24 @@
-SFX_80c3b_4_Ch4:
- dutycycle 165
- unknownsfx0x20 3, 244, 65, 6
- unknownsfx0x20 13, 214, 33, 7
- unknownsfx0x20 8, 244, 25, 7
- unknownsfx0x20 8, 193, 26, 7
- endchannel
+SFX_Unknown_80c3b_Ch5:
+ duty_cycle_pattern 2, 2, 1, 1
+ square_note 3, 15, 4, 1601
+ square_note 13, 13, 6, 1825
+ square_note 8, 15, 4, 1817
+ square_note 8, 12, 1, 1818
+ sound_ret
-SFX_80c4e_4_Ch5:
- dutycycle 204
- unknownsfx0x20 4, 244, 128, 5
- unknownsfx0x20 14, 230, 224, 6
- unknownsfx0x20 8, 213, 216, 6
- unknownsfx0x20 8, 209, 220, 6
- endchannel
-SFX_80c61_4_Ch7:
- unknownnoise0x20 5, 196, 70
- unknownnoise0x20 13, 165, 68
- unknownnoise0x20 8, 196, 69
- unknownnoise0x20 8, 177, 68
- endchannel
+SFX_Unknown_80c3b_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 4, 15, 4, 1408
+ square_note 14, 14, 6, 1760
+ square_note 8, 13, 5, 1752
+ square_note 8, 13, 1, 1756
+ sound_ret
+
+SFX_Unknown_80c3b_Ch8:
+ noise_note 5, 12, 4, 70
+ noise_note 13, 10, 5, 68
+ noise_note 8, 12, 4, 69
+ noise_note 8, 11, 1, 68
+ sound_ret
diff --git a/audio/sfx/unknown_80c6e.asm b/audio/sfx/unknown_80c6e.asm
index 54c4b3f9..360ad173 100644
--- a/audio/sfx/unknown_80c6e.asm
+++ b/audio/sfx/unknown_80c6e.asm
@@ -1,23 +1,24 @@
-SFX_80c6e_4_Ch4:
- dutycycle 240
- unknownsfx0x20 13, 241, 17, 5
- unknownsfx0x20 13, 225, 21, 5
- unknownsfx0x20 13, 225, 17, 5
- unknownsfx0x20 8, 209, 17, 5
- endchannel
+SFX_Unknown_80c6e_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 13, 15, 1, 1297
+ square_note 13, 14, 1, 1301
+ square_note 13, 14, 1, 1297
+ square_note 8, 13, 1, 1297
+ sound_ret
-SFX_80c81_4_Ch5:
- dutycycle 21
- unknownsfx0x20 12, 225, 12, 5
- unknownsfx0x20 12, 209, 16, 5
- unknownsfx0x20 14, 193, 12, 5
- unknownsfx0x20 8, 193, 10, 5
- endchannel
-SFX_80c94_4_Ch7:
- unknownnoise0x20 14, 242, 101
- unknownnoise0x20 13, 226, 85
- unknownnoise0x20 14, 210, 86
- unknownnoise0x20 8, 209, 102
- endchannel
+SFX_Unknown_80c6e_Ch6:
+ duty_cycle_pattern 0, 1, 1, 1
+ square_note 12, 14, 1, 1292
+ square_note 12, 13, 1, 1296
+ square_note 14, 12, 1, 1292
+ square_note 8, 12, 1, 1290
+ sound_ret
+
+SFX_Unknown_80c6e_Ch8:
+ noise_note 14, 15, 2, 101
+ noise_note 13, 14, 2, 85
+ noise_note 14, 13, 2, 86
+ noise_note 8, 13, 1, 102
+ sound_ret
diff --git a/audio/sfx/unknown_80ca1.asm b/audio/sfx/unknown_80ca1.asm
index df3b29be..d42abd93 100644
--- a/audio/sfx/unknown_80ca1.asm
+++ b/audio/sfx/unknown_80ca1.asm
@@ -1,25 +1,27 @@
-SFX_80ca1_4_Ch4:
- dutycycle 27
- unknownsfx0x20 3, 243, 100, 5
- unknownsfx0x20 2, 226, 68, 5
- unknownsfx0x20 5, 209, 34, 5
- unknownsfx0x20 2, 178, 132, 4
- unknownsfx0x20 8, 209, 162, 4
- unknownsfx0x20 3, 243, 36, 5
- unknownsfx0x20 4, 228, 228, 4
- unknownsfx0x20 8, 209, 2, 5
- endchannel
+SFX_Unknown_80ca1_Ch5:
+ duty_cycle_pattern 0, 1, 2, 3
+ square_note 3, 15, 3, 1380
+ square_note 2, 14, 2, 1348
+ square_note 5, 13, 1, 1314
+ square_note 2, 11, 2, 1156
+ square_note 8, 13, 1, 1186
+ square_note 3, 15, 3, 1316
+ square_note 4, 14, 4, 1252
+ square_note 8, 13, 1, 1282
+ sound_ret
-SFX_80cc4_4_Ch5:
- dutycycle 204
- unknownsfx0x20 3, 211, 96, 5
- unknownsfx0x20 2, 194, 64, 5
- unknownsfx0x20 5, 193, 32, 5
- unknownsfx0x20 2, 146, 128, 4
- unknownsfx0x20 8, 193, 160, 4
- unknownsfx0x20 3, 211, 32, 5
- unknownsfx0x20 3, 196, 224, 4
- unknownsfx0x20 8, 193, 0, 5
-SFX_80ce6_4_Ch7:
- endchannel
+SFX_Unknown_80ca1_Ch6:
+ duty_cycle_pattern 3, 0, 3, 0
+ square_note 3, 13, 3, 1376
+ square_note 2, 12, 2, 1344
+ square_note 5, 12, 1, 1312
+ square_note 2, 9, 2, 1152
+ square_note 8, 12, 1, 1184
+ square_note 3, 13, 3, 1312
+ square_note 3, 12, 4, 1248
+ square_note 8, 12, 1, 1280
+
+
+SFX_Unknown_80ca1_Ch8:
+ sound_ret
diff --git a/audio/sfx/unknown_80ce7.asm b/audio/sfx/unknown_80ce7.asm
index 6b5a2163..9c7706c2 100644
--- a/audio/sfx/unknown_80ce7.asm
+++ b/audio/sfx/unknown_80ce7.asm
@@ -1,24 +1,24 @@
-SFX_80ce7_4_Ch4:
- dutycycle 17
- unknownsfx0x20 2, 61, 129, 3
- unknownsfx0x20 7, 245, 1, 6
- unknownsfx0x20 1, 194, 129, 4
- unknownsfx0x20 8, 145, 129, 3
- endchannel
+SFX_Unknown_80ce7_Ch5:
+ duty_cycle_pattern 0, 1, 0, 1
+ square_note 2, 3, -5, 897
+ square_note 7, 15, 5, 1537
+ square_note 1, 12, 2, 1153
+ square_note 8, 9, 1, 897
+ sound_ret
-SFX_80cfa_4_Ch5:
- dutycycle 238
- unknownsfx0x20 2, 62, 176, 5
- unknownsfx0x20 7, 213, 93, 7
- unknownsfx0x20 1, 178, 176, 6
- unknownsfx0x20 8, 97, 176, 5
- endchannel
-SFX_80d0d_4_Ch7:
- unknownnoise0x20 2, 146, 73
- unknownnoise0x20 7, 181, 41
- unknownnoise0x20 1, 162, 57
- unknownnoise0x20 8, 145, 73
- endchannel
+SFX_Unknown_80ce7_Ch6:
+ duty_cycle_pattern 3, 2, 3, 2
+ square_note 2, 3, -6, 1456
+ square_note 7, 13, 5, 1885
+ square_note 1, 11, 2, 1712
+ square_note 8, 6, 1, 1456
+ sound_ret
+SFX_Unknown_80ce7_Ch8:
+ noise_note 2, 9, 2, 73
+ noise_note 7, 11, 5, 41
+ noise_note 1, 10, 2, 57
+ noise_note 8, 9, 1, 73
+ sound_ret
diff --git a/audio/sfx/unknown_80e5a.asm b/audio/sfx/unknown_80e5a.asm
deleted file mode 100644
index 76cf48d4..00000000
--- a/audio/sfx/unknown_80e5a.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-SFX_80e5a_4_Ch4:
- executemusic
- tempo 256
- volume 7, 7
- vibrato 6, 2, 6
- duty 2
- toggleperfectpitch
- notetype 4, 11, 1
- octave 3
- G# 2
- G# 2
- G# 2
- notetype 12, 11, 3
- octave 4
- E_ 4
- endchannel
-
-SFX_80e71_4_Ch5:
- executemusic
- vibrato 8, 2, 7
- duty 2
- notetype 4, 12, 1
- octave 4
- E_ 2
- E_ 2
- E_ 2
- notetype 12, 12, 3
- B_ 4
- endchannel
-
-SFX_80e81_4_Ch6:
- executemusic
- notetype 4, 1, 0
- octave 4
- B_ 1
- rest 1
- B_ 1
- rest 1
- B_ 1
- rest 1
- notetype 12, 1, 0
- octave 4
- B_ 2
- rest 2
- endchannel
-
diff --git a/audio/sfx/unknown_80e91.asm b/audio/sfx/unknown_80e91.asm
index 2b180d9d..8db0a395 100644
--- a/audio/sfx/unknown_80e91.asm
+++ b/audio/sfx/unknown_80e91.asm
@@ -1,46 +1,47 @@
-SFX_80e91_4_Ch4:
- executemusic
+SFX_Unknown_80e91_Ch5:
+ execute_music
tempo 256
volume 7, 7
vibrato 6, 2, 6
- duty 2
- toggleperfectpitch
- notetype 4, 11, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 4, 11, 1
octave 3
- G# 2
- G# 2
- G# 2
- notetype 12, 11, 3
+ note G#, 2
+ note G#, 2
+ note G#, 2
+ note_type 12, 11, 3
octave 4
- E_ 4
- endchannel
+ note E_, 4
+ sound_ret
-SFX_80ea8_4_Ch5:
- executemusic
+
+SFX_Unknown_80e91_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 4, 12, 1
+ duty_cycle 2
+ note_type 4, 12, 1
octave 4
- E_ 2
- E_ 2
- E_ 2
- notetype 12, 12, 3
- B_ 4
- endchannel
+ note E_, 2
+ note E_, 2
+ note E_, 2
+ note_type 12, 12, 3
+ note B_, 4
+ sound_ret
+
-SFX_80eb8_4_Ch6:
- executemusic
- notetype 4, 1, 0
+SFX_Unknown_80e91_Ch8:
+ execute_music
+ note_type 4, 1, 0
octave 4
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- notetype 12, 1, 0
+ note_type 12, 1, 0
octave 4
- B_ 2
+ note B_, 2
rest 2
- endchannel
-
+ sound_ret
diff --git a/audio/sfx/unused2_2.asm b/audio/sfx/unused2_2.asm
index 7e0350d4..aa93f91c 100644
--- a/audio/sfx/unused2_2.asm
+++ b/audio/sfx/unused2_2.asm
@@ -1,56 +1,56 @@
-SFX_08_unused2_Ch1:
- executemusic
+SFX_Unused2_Ch5:
+ execute_music
tempo 256
volume 7, 7
vibrato 6, 2, 6
- duty 2
- toggleperfectpitch
- notetype 6, 11, 1
+ duty_cycle 2
+ toggle_perfect_pitch
+ note_type 6, 11, 1
octave 3
- G# 2
- G# 2
- notetype 6, 11, 3
- G# 2
- B_ 2
+ note G#, 2
+ note G#, 2
+ note_type 6, 11, 3
+ note G#, 2
+ note B_, 2
octave 4
- E_ 8
- endchannel
+ note E_, 8
+ sound_ret
-SFX_08_unused2_Ch2:
- executemusic
+SFX_Unused2_Ch6:
+ execute_music
vibrato 8, 2, 7
- duty 2
- notetype 6, 12, 1
+ duty_cycle 2
+ note_type 6, 12, 1
octave 4
- E_ 2
- E_ 1
- E_ 1
- notetype 6, 12, 3
- E_ 2
- G# 2
- B_ 8
- endchannel
+ note E_, 2
+ note E_, 1
+ note E_, 1
+ note_type 6, 12, 3
+ note E_, 2
+ note G#, 2
+ note B_, 8
+ sound_ret
-SFX_08_unused2_Ch3:
- executemusic
- notetype 6, 1, 0
+SFX_Unused2_Ch7:
+ execute_music
+ note_type 6, 1, 0
octave 4
- B_ 1
+ note B_, 1
rest 1
- notetype 3, 1, 0
- B_ 1
+ note_type 3, 1, 0
+ note B_, 1
rest 1
- B_ 1
+ note B_, 1
rest 1
- notetype 6, 1, 0
- B_ 1
+ note_type 6, 1, 0
+ note B_, 1
rest 1
octave 5
- E_ 1
+ note E_, 1
rest 1
octave 4
- B_ 4
+ note B_, 4
rest 4
- endchannel
+ sound_ret
diff --git a/audio/sfx/unused_1.asm b/audio/sfx/unused_1.asm
index d0bbfd59..b7a8b4a0 100644
--- a/audio/sfx/unused_1.asm
+++ b/audio/sfx/unused_1.asm
@@ -1,31 +1,31 @@
-SFX_02_unused_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 224, 128, 7
- unknownsfx0x20 15, 240, 132, 7
- unknownsfx0x20 15, 195, 224, 5
- unknownsfx0x20 15, 196, 0, 6
- unknownsfx0x20 10, 108, 128, 7
- unknownsfx0x20 8, 113, 132, 7
- endchannel
+SFX_Unused_1_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 14, 0, 1920
+ square_note 15, 15, 0, 1924
+ square_note 15, 12, 3, 1504
+ square_note 15, 12, 4, 1536
+ square_note 10, 6, -4, 1920
+ square_note 8, 7, 1, 1924
+ sound_ret
-SFX_02_unused_Ch2:
- dutycycle 5
- unknownsfx0x20 15, 160, 65, 7
- unknownsfx0x20 15, 176, 67, 7
- unknownsfx0x20 15, 147, 177, 5
- unknownsfx0x20 15, 148, 193, 5
- unknownsfx0x20 10, 76, 65, 7
- unknownsfx0x20 8, 49, 70, 7
- endchannel
+SFX_Unused_1_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 10, 0, 1857
+ square_note 15, 11, 0, 1859
+ square_note 15, 9, 3, 1457
+ square_note 15, 9, 4, 1473
+ square_note 10, 4, -4, 1857
+ square_note 8, 3, 1, 1862
+ sound_ret
-SFX_02_unused_Ch3:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 224, 58
- unknownnoise0x20 15, 208, 58
- unknownnoise0x20 8, 208, 44
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 12, 125, 76
- unknownnoise0x20 15, 211, 76
- endchannel
+SFX_Unused_1_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 0, 58
+ noise_note 15, 13, 0, 58
+ noise_note 8, 13, 0, 44
+ noise_note 6, 14, 6, 76
+ noise_note 12, 7, -5, 76
+ noise_note 15, 13, 3, 76
+ sound_ret
diff --git a/audio/sfx/unused_2.asm b/audio/sfx/unused_2.asm
index fd491b71..7a050ea4 100644
--- a/audio/sfx/unused_2.asm
+++ b/audio/sfx/unused_2.asm
@@ -1,31 +1,31 @@
-SFX_08_unused_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 224, 128, 7
- unknownsfx0x20 15, 240, 132, 7
- unknownsfx0x20 15, 195, 224, 5
- unknownsfx0x20 15, 196, 0, 6
- unknownsfx0x20 10, 108, 128, 7
- unknownsfx0x20 8, 113, 132, 7
- endchannel
+SFX_Unused_2_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 14, 0, 1920
+ square_note 15, 15, 0, 1924
+ square_note 15, 12, 3, 1504
+ square_note 15, 12, 4, 1536
+ square_note 10, 6, -4, 1920
+ square_note 8, 7, 1, 1924
+ sound_ret
-SFX_08_unused_Ch2:
- dutycycle 5
- unknownsfx0x20 15, 160, 65, 7
- unknownsfx0x20 15, 176, 67, 7
- unknownsfx0x20 15, 147, 177, 5
- unknownsfx0x20 15, 148, 193, 5
- unknownsfx0x20 10, 76, 65, 7
- unknownsfx0x20 8, 49, 70, 7
- endchannel
+SFX_Unused_2_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 10, 0, 1857
+ square_note 15, 11, 0, 1859
+ square_note 15, 9, 3, 1457
+ square_note 15, 9, 4, 1473
+ square_note 10, 4, -4, 1857
+ square_note 8, 3, 1, 1862
+ sound_ret
-SFX_08_unused_Ch3:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 224, 58
- unknownnoise0x20 15, 208, 58
- unknownnoise0x20 8, 208, 44
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 12, 125, 76
- unknownnoise0x20 15, 211, 76
- endchannel
+SFX_Unused_2_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 0, 58
+ noise_note 15, 13, 0, 58
+ noise_note 8, 13, 0, 44
+ noise_note 6, 14, 6, 76
+ noise_note 12, 7, -5, 76
+ noise_note 15, 13, 3, 76
+ sound_ret
diff --git a/audio/sfx/unused_3.asm b/audio/sfx/unused_3.asm
index b00e55f5..a204fc10 100644
--- a/audio/sfx/unused_3.asm
+++ b/audio/sfx/unused_3.asm
@@ -1,31 +1,31 @@
-SFX_1f_unused_Ch1:
- dutycycle 240
- unknownsfx0x20 15, 224, 128, 7
- unknownsfx0x20 15, 240, 132, 7
- unknownsfx0x20 15, 195, 224, 5
- unknownsfx0x20 15, 196, 0, 6
- unknownsfx0x20 10, 108, 128, 7
- unknownsfx0x20 8, 113, 132, 7
- endchannel
+SFX_Unused_3_Ch5:
+ duty_cycle_pattern 3, 3, 0, 0
+ square_note 15, 14, 0, 1920
+ square_note 15, 15, 0, 1924
+ square_note 15, 12, 3, 1504
+ square_note 15, 12, 4, 1536
+ square_note 10, 6, -4, 1920
+ square_note 8, 7, 1, 1924
+ sound_ret
-SFX_1f_unused_Ch2:
- dutycycle 5
- unknownsfx0x20 15, 160, 65, 7
- unknownsfx0x20 15, 176, 67, 7
- unknownsfx0x20 15, 147, 177, 5
- unknownsfx0x20 15, 148, 193, 5
- unknownsfx0x20 10, 76, 65, 7
- unknownsfx0x20 8, 49, 70, 7
- endchannel
+SFX_Unused_3_Ch6:
+ duty_cycle_pattern 0, 0, 1, 1
+ square_note 15, 10, 0, 1857
+ square_note 15, 11, 0, 1859
+ square_note 15, 9, 3, 1457
+ square_note 15, 9, 4, 1473
+ square_note 10, 4, -4, 1857
+ square_note 8, 3, 1, 1862
+ sound_ret
-SFX_1f_unused_Ch3:
- unknownnoise0x20 2, 242, 76
- unknownnoise0x20 6, 224, 58
- unknownnoise0x20 15, 208, 58
- unknownnoise0x20 8, 208, 44
- unknownnoise0x20 6, 230, 76
- unknownnoise0x20 12, 125, 76
- unknownnoise0x20 15, 211, 76
- endchannel
+SFX_Unused_3_Ch8:
+ noise_note 2, 15, 2, 76
+ noise_note 6, 14, 0, 58
+ noise_note 15, 13, 0, 58
+ noise_note 8, 13, 0, 44
+ noise_note 6, 14, 6, 76
+ noise_note 12, 7, -5, 76
+ noise_note 15, 13, 3, 76
+ sound_ret
diff --git a/audio/sfx/vine_whip.asm b/audio/sfx/vine_whip.asm
index a8445131..c53a7d0a 100644
--- a/audio/sfx/vine_whip.asm
+++ b/audio/sfx/vine_whip.asm
@@ -1,10 +1,10 @@
-SFX_Vine_Whip_Ch1:
- unknownnoise0x20 1, 194, 51
- unknownnoise0x20 2, 242, 33
- unknownnoise0x20 1, 226, 51
- unknownnoise0x20 1, 194, 50
- unknownnoise0x20 1, 146, 18
- unknownnoise0x20 1, 178, 49
- unknownnoise0x20 12, 145, 16
- unknownnoise0x20 8, 242, 65
- endchannel
+SFX_Vine_Whip_Ch8:
+ noise_note 1, 12, 2, 51
+ noise_note 2, 15, 2, 33
+ noise_note 1, 14, 2, 51
+ noise_note 1, 12, 2, 50
+ noise_note 1, 9, 2, 18
+ noise_note 1, 11, 2, 49
+ noise_note 12, 9, 1, 16
+ noise_note 8, 15, 2, 65
+ sound_ret
diff --git a/audio/sfx/withdraw_deposit_1.asm b/audio/sfx/withdraw_deposit_1.asm
index 59827ceb..c7ab2447 100644
--- a/audio/sfx/withdraw_deposit_1.asm
+++ b/audio/sfx/withdraw_deposit_1.asm
@@ -1,12 +1,12 @@
-SFX_Withdraw_Deposit_1_Ch1:
- duty 1
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 5
- unknownsfx0x10 34
- unknownsfx0x20 4, 226, 0, 5
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 7
- unknownsfx0x10 34
- unknownsfx0x20 15, 226, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Withdraw_Deposit_1_Ch5:
+ duty_cycle 1
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 1280
+ pitch_sweep 2, 2
+ square_note 4, 14, 2, 1280
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 1792
+ pitch_sweep 2, 2
+ square_note 15, 14, 2, 1792
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/audio/sfx/withdraw_deposit_3.asm b/audio/sfx/withdraw_deposit_3.asm
index 0add48e1..568f3230 100644
--- a/audio/sfx/withdraw_deposit_3.asm
+++ b/audio/sfx/withdraw_deposit_3.asm
@@ -1,12 +1,12 @@
-SFX_Withdraw_Deposit_3_Ch1:
- duty 1
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 5
- unknownsfx0x10 34
- unknownsfx0x20 4, 226, 0, 5
- unknownsfx0x10 58
- unknownsfx0x20 4, 242, 0, 7
- unknownsfx0x10 34
- unknownsfx0x20 15, 226, 0, 7
- unknownsfx0x10 8
- endchannel
+SFX_Withdraw_Deposit_3_Ch5:
+ duty_cycle 1
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 1280
+ pitch_sweep 2, 2
+ square_note 4, 14, 2, 1280
+ pitch_sweep 3, -2
+ square_note 4, 15, 2, 1792
+ pitch_sweep 2, 2
+ square_note 15, 14, 2, 1792
+ pitch_sweep 0, 8
+ sound_ret
diff --git a/charmap.asm b/charmap.asm
index 8f57a130..4b5278c6 100644
--- a/charmap.asm
+++ b/charmap.asm
@@ -157,6 +157,7 @@ charmap "<TARGET>", $59
charmap "<USER>", $5A
charmap "′", $71
charmap "″", $73
+charmap "№", $74
charmap "…", $75
charmap "┌", $79
@@ -166,8 +167,6 @@ charmap "│", $7C
charmap "└", $7D
charmap "┘", $7E
-charmap "№", $74
-
charmap " ", $7F
charmap "A", $80
charmap "B", $81
@@ -233,18 +232,24 @@ charmap "'l", $BC
charmap "'s", $BD
charmap "'t", $BE
charmap "'v", $BF
+
charmap "'", $E0
+
charmap "-", $E3
charmap "'r", $E4
charmap "'m", $E5
charmap "?", $E6
charmap "!", $E7
charmap ".", $E8
+
charmap "▷", $EC
charmap "▶", $ED
+charmap "▲", $ED
+charmap "▼", $EE
charmap "♂", $EF
charmap "¥", $F0
charmap "×", $F1
+charmap "⠄", $F2
charmap "/", $F3
charmap ",", $F4
charmap "♀", $F5
diff --git a/constants.asm b/constants.asm
index cc636558..fa32422b 100644
--- a/constants.asm
+++ b/constants.asm
@@ -1,4 +1,5 @@
INCLUDE "macros.asm"
+INCLUDE "charmap.asm"
INCLUDE "hram.asm"
INCLUDE "vram.asm"
@@ -28,6 +29,5 @@ INCLUDE "constants/music_constants.asm"
INCLUDE "constants/tilesets.asm"
INCLUDE "constants/starter_mons.asm"
INCLUDE "constants/event_constants.asm"
-INCLUDE "constants/event_macros.asm"
INCLUDE "constants/text_constants.asm"
INCLUDE "constants/pikachu_emotion_constants.asm"
diff --git a/constants/event_constants.asm b/constants/event_constants.asm
index d2bf1123..b35f74f8 100644
--- a/constants/event_constants.asm
+++ b/constants/event_constants.asm
@@ -427,12 +427,12 @@ const_value = 0
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_2 ; 1AB, (D77C, bit 3)
- const EVENT_BEAT_CELADON_GYM_TRAINER_3 ; 1AC, (D77C, bit 4)
- const EVENT_BEAT_CELADON_GYM_TRAINER_4 ; 1AD, (D77C, bit 5)
- const EVENT_BEAT_CELADON_GYM_TRAINER_5 ; 1AE, (D77C, bit 6)
- const EVENT_BEAT_CELADON_GYM_TRAINER_6 ; 1AF, (D77C, bit 7)
- const EVENT_BEAT_CELADON_GYM_TRAINER_7 ; 1B0, (D77D, bit 0)
+ 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)
@@ -603,11 +603,11 @@ const_value = 0
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_2 ; 25B, (D792, bit 3)
- const EVENT_BEAT_FUCHSIA_GYM_TRAINER_3 ; 25C, (D792, bit 4)
- const EVENT_BEAT_FUCHSIA_GYM_TRAINER_4 ; 25D, (D792, bit 5)
- const EVENT_BEAT_FUCHSIA_GYM_TRAINER_5 ; 25E, (D792, bit 6)
- const EVENT_BEAT_FUCHSIA_GYM_TRAINER_6 ; 25F, (D792, bit 7)
+ 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)
@@ -995,13 +995,13 @@ const_value = 0
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_2 ; 3E3, (D7C3, bit 3)
- const EVENT_BEAT_ROUTE_3_TRAINER_3 ; 3E4, (D7C3, bit 4)
- const EVENT_BEAT_ROUTE_3_TRAINER_4 ; 3E5, (D7C3, bit 5)
- const EVENT_BEAT_ROUTE_3_TRAINER_5 ; 3E6, (D7C3, bit 6)
- const EVENT_BEAT_ROUTE_3_TRAINER_6 ; 3E7, (D7C3, bit 7)
- const EVENT_BEAT_ROUTE_3_TRAINER_7 ; 3E8, (D7C4, bit 0)
- const EVENT_BEAT_ROUTE_3_TRAINER_8 ; 3E9, (D7C4, bit 1)
+ 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)
@@ -1090,14 +1090,14 @@ const_value = 0
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_2 ; 442, (D7CF, bit 2)
- const EVENT_BEAT_ROUTE_9_TRAINER_3 ; 443, (D7CF, bit 3)
- const EVENT_BEAT_ROUTE_9_TRAINER_4 ; 444, (D7CF, bit 4)
- const EVENT_BEAT_ROUTE_9_TRAINER_5 ; 445, (D7CF, bit 5)
- const EVENT_BEAT_ROUTE_9_TRAINER_6 ; 446, (D7CF, bit 6)
- const EVENT_BEAT_ROUTE_9_TRAINER_7 ; 447, (D7CF, bit 7)
- const EVENT_BEAT_ROUTE_9_TRAINER_8 ; 448, (D7D0, bit 0)
- const EVENT_BEAT_ROUTE_9_TRAINER_9 ; 449, (D7D0, 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)
@@ -1113,13 +1113,13 @@ const_value = 0
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_1 ; 459, (D7D2, bit 1)
- const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2 ; 45A, (D7D2, bit 2)
- const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3 ; 45B, (D7D2, bit 3)
- const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4 ; 45C, (D7D2, bit 4)
- const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5 ; 45D, (D7D2, bit 5)
- const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6 ; 45E, (D7D2, bit 6)
- const EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_7 ; 45F, (D7D2, bit 7)
+ 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)
@@ -1170,15 +1170,15 @@ const_value = 0
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_2 ; 492, (D7D9, bit 2)
- const EVENT_BEAT_ROUTE_13_TRAINER_3 ; 493, (D7D9, bit 3)
- const EVENT_BEAT_ROUTE_13_TRAINER_4 ; 494, (D7D9, bit 4)
- const EVENT_BEAT_ROUTE_13_TRAINER_5 ; 495, (D7D9, bit 5)
- const EVENT_BEAT_ROUTE_13_TRAINER_6 ; 496, (D7D9, bit 6)
- const EVENT_BEAT_ROUTE_13_TRAINER_7 ; 497, (D7D9, bit 7)
- const EVENT_BEAT_ROUTE_13_TRAINER_8 ; 498, (D7DA, bit 0)
- const EVENT_BEAT_ROUTE_13_TRAINER_9 ; 499, (D7DA, bit 1)
- const EVENT_BEAT_ROUTE_13_TRAINER_10 ; 49A, (D7DA, bit 2)
+ 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)
@@ -1282,15 +1282,15 @@ const_value = 0
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_2 ; 502, (D7E7, bit 2)
- const EVENT_BEAT_ROUTE_20_TRAINER_3 ; 503, (D7E7, bit 3)
- const EVENT_BEAT_ROUTE_20_TRAINER_4 ; 504, (D7E7, bit 4)
- const EVENT_BEAT_ROUTE_20_TRAINER_5 ; 505, (D7E7, bit 5)
- const EVENT_BEAT_ROUTE_20_TRAINER_6 ; 506, (D7E7, bit 6)
- const EVENT_BEAT_ROUTE_20_TRAINER_7 ; 507, (D7E7, bit 7)
- const EVENT_BEAT_ROUTE_20_TRAINER_8 ; 508, (D7E8, bit 0)
- const EVENT_BEAT_ROUTE_20_TRAINER_9 ; 509, (D7E8, bit 1)
- const EVENT_BEAT_ROUTE_20_TRAINER_10 ; 50A, (D7E8, bit 2)
+ 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)
@@ -1338,20 +1338,20 @@ const_value = 0
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_2 ; 53A, (D7EE, bit 2)
- const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3 ; 53B, (D7EE, bit 3)
- const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4 ; 53C, (D7EE, bit 4)
- const EVENT_BEAT_VICTORY_ROAD_2_TRAINER_5 ; 53D, (D7EE, bit 5)
+ 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_2 ; 543, (D7EF, bit 3)
- const EVENT_BEAT_ROUTE_24_TRAINER_3 ; 544, (D7EF, bit 4)
- const EVENT_BEAT_ROUTE_24_TRAINER_4 ; 545, (D7EF, bit 5)
- const EVENT_BEAT_ROUTE_24_TRAINER_5 ; 546, (D7EF, bit 6)
- const EVENT_BEAT_ROUTE_24_TRAINER_6 ; 547, (D7EF, bit 7)
+ 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)
@@ -1362,14 +1362,14 @@ const_value = 0
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_2 ; 552, (D7F1, bit 2)
- const EVENT_BEAT_ROUTE_25_TRAINER_3 ; 553, (D7F1, bit 3)
- const EVENT_BEAT_ROUTE_25_TRAINER_4 ; 554, (D7F1, bit 4)
- const EVENT_BEAT_ROUTE_25_TRAINER_5 ; 555, (D7F1, bit 5)
- const EVENT_BEAT_ROUTE_25_TRAINER_6 ; 556, (D7F1, bit 6)
- const EVENT_BEAT_ROUTE_25_TRAINER_7 ; 557, (D7F1, bit 7)
- const EVENT_BEAT_ROUTE_25_TRAINER_8 ; 558, (D7F2, bit 0)
- const EVENT_BEAT_ROUTE_25_TRAINER_9 ; 559, (D7F2, 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)
@@ -1394,18 +1394,18 @@ const_value = 0
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_2 ; 572, (D7F5, bit 2)
- const EVENT_BEAT_MT_MOON_1_TRAINER_3 ; 573, (D7F5, bit 3)
- const EVENT_BEAT_MT_MOON_1_TRAINER_4 ; 574, (D7F5, bit 4)
- const EVENT_BEAT_MT_MOON_1_TRAINER_5 ; 575, (D7F5, bit 5)
- const EVENT_BEAT_MT_MOON_1_TRAINER_6 ; 576, (D7F5, bit 6)
- const EVENT_BEAT_MT_MOON_1_TRAINER_7 ; 577, (D7F5, bit 7)
+ 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_GOT_DOME_FOSSIL ; 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_2 ; 57B, (D7F6, bit 3)
- const EVENT_BEAT_MT_MOON_3_TRAINER_3 ; 57C, (D7F6, bit 4)
- const EVENT_BEAT_MT_MOON_3_TRAINER_4 ; 57D, (D7F6, bit 5)
+ 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_57E ; 57E, (D7F6, bit 6)
const EVENT_GOT_HELIX_FOSSIL ; 57F, (D7F6, bit 7)
const EVENT_580 ; 580, (D7F7, bit 0)
@@ -1634,9 +1634,9 @@ const_value = 0
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_2 ; 662, (D813, bit 2)
- const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3 ; 663, (D813, bit 3)
- const EVENT_BEAT_VICTORY_ROAD_3_TRAINER_4 ; 664, (D813, bit 4)
+ 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)
@@ -1650,10 +1650,10 @@ const_value = 0
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_2 ; 672, (D815, bit 2)
- const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3 ; 673, (D815, bit 3)
- const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4 ; 674, (D815, bit 4)
- const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5 ; 675, (D815, bit 5)
+ 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)
@@ -1682,7 +1682,7 @@ const_value = 0
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_2 ; 692, (D819, bit 2)
+ 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)
@@ -1699,8 +1699,8 @@ const_value = 0
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_2 ; 6A3, (D81B, bit 3)
- const EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3 ; 6A4, (D81B, bit 4)
+ 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)
@@ -1811,8 +1811,8 @@ const_value = 0
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_2 ; 713, (D829, bit 3)
- const EVENT_BEAT_SILPH_CO_4F_TRAINER_3 ; 714, (D829, bit 4)
+ 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)
@@ -1827,9 +1827,9 @@ const_value = 0
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_2 ; 723, (D82B, bit 3)
- const EVENT_BEAT_SILPH_CO_5F_TRAINER_3 ; 724, (D82B, bit 4)
- const EVENT_BEAT_SILPH_CO_5F_TRAINER_4 ; 725, (D82B, bit 5)
+ 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)
@@ -1847,8 +1847,8 @@ const_value = 0
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_2 ; 737, (D82D, bit 7)
- const EVENT_BEAT_SILPH_CO_6F_TRAINER_3 ; 738, (D82E, bit 0)
+ 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)
@@ -1862,9 +1862,9 @@ const_value = 0
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_2 ; 746, (D82F, bit 6)
- const EVENT_BEAT_SILPH_CO_7F_TRAINER_3 ; 747, (D82F, bit 7)
- const EVENT_BEAT_SILPH_CO_7F_TRAINER_4 ; 748, (D830, bit 0)
+ 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)
@@ -2066,7 +2066,7 @@ const_value = 0
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_2 ; 812, (D849, bit 2)
+ 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)
@@ -2082,7 +2082,7 @@ const_value = 0
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_2 ; 822, (D84B, bit 2)
+ 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)
@@ -2482,13 +2482,13 @@ const_value = 0
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_2 ; 9B2, (D87D, bit 2)
- const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3 ; 9B3, (D87D, bit 3)
- const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4 ; 9B4, (D87D, bit 4)
- const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5 ; 9B5, (D87D, bit 5)
- const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6 ; 9B6, (D87D, bit 6)
- const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7 ; 9B7, (D87D, bit 7)
- const EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_8 ; 9B8, (D87E, bit 0)
+ 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)
diff --git a/constants/evolution_constants.asm b/constants/evolution_constants.asm
index 2e3f3613..86c466d8 100755
--- a/constants/evolution_constants.asm
+++ b/constants/evolution_constants.asm
@@ -1,4 +1,9 @@
+; See data/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/hardware_constants.asm b/constants/hardware_constants.asm
index 21a3ad93..9f2aa1b7 100644
--- a/constants/hardware_constants.asm
+++ b/constants/hardware_constants.asm
@@ -22,14 +22,6 @@ JOYPAD EQU 4
LY_VBLANK EQU 145
-; OAM attribute flags
-OAM_PALETTE EQU %111
-OAM_TILE_BANK EQU 3
-OAM_OBP_NUM EQU 4 ; Non CGB Mode Only
-OAM_X_FLIP EQU 5
-OAM_Y_FLIP EQU 6
-OAM_PRIORITY EQU 7 ; 0: OBJ above BG, 1: OBJ behind BG (colors 1-3)
-
; serial
START_TRANSFER_EXTERNAL_CLOCK EQU $80
START_TRANSFER_INTERNAL_CLOCK EQU $81
@@ -68,7 +60,7 @@ rNR34 EQU $ff1e ; Channel 3 Frequency's higher data (R/W)
rNR41 EQU $ff20 ; Channel 4 Sound Length (R/W)
rNR42 EQU $ff21 ; Channel 4 Volume Envelope (R/W)
rNR43 EQU $ff22 ; Channel 4 Polynomial Counter (R/W)
-rNR44 EQU $ff23 ; Channel 4 Counter/consecutive; Inital (R/W)
+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
diff --git a/constants/hide_show_constants.asm b/constants/hide_show_constants.asm
index fb4116d7..de0addaf 100755
--- a/constants/hide_show_constants.asm
+++ b/constants/hide_show_constants.asm
@@ -4,242 +4,242 @@
const_def
- const HS_PALLET_TOWN_OAK ; 00
- const HS_LYING_OLD_MAN ; 01
- const HS_OLD_MAN_1 ; 02
- const HS_OLD_MAN ; 03
- const HS_MUSEUM_GUY ; 04
- const HS_GYM_GUY ; 05
- const HS_CERULEAN_RIVAL ; 06
- const HS_CERULEAN_ROCKET ; 07
- const HS_CERULEAN_GUARD_1 ; 08
- const HS_UNKNOWN_DUNGEON_GUY ; 09
- const HS_CERULEAN_GUARD_2 ; 0A
- const HS_SAFFRON_CITY_1 ; 0B
- const HS_SAFFRON_CITY_2 ; 0C
- const HS_SAFFRON_CITY_3 ; 0D
- const HS_SAFFRON_CITY_4 ; 0E
- const HS_SAFFRON_CITY_5 ; 0F
- const HS_SAFFRON_CITY_6 ; 10
- const HS_SAFFRON_CITY_7 ; 11
- const HS_SAFFRON_CITY_8 ; 12
- const HS_SAFFRON_CITY_9 ; 13
- const HS_SAFFRON_CITY_A ; 14
- const HS_SAFFRON_CITY_B ; 15
- const HS_SAFFRON_CITY_C ; 16
- const HS_SAFFRON_CITY_D ; 17
- const HS_SAFFRON_CITY_E ; 18
- const HS_SAFFRON_CITY_F ; 19
- const HS_ROUTE_2_ITEM_1 ; 1A
- const HS_ROUTE_2_ITEM_2 ; 1B
- const HS_ROUTE_4_ITEM ; 1C
- const HS_ROUTE_9_ITEM ; 1D
- const HS_ROUTE_12_SNORLAX ; 1E
- const HS_ROUTE_12_ITEM_1 ; 1F
- const HS_ROUTE_12_ITEM_2 ; 20
- const HS_ROUTE_15_ITEM ; 21
- const HS_ROUTE_16_SNORLAX ; 22
- const HS_ROUTE_22_RIVAL_1 ; 23
- const HS_ROUTE_22_RIVAL_2 ; 24
- const HS_NUGGET_BRIDGE_GUY ; 25
- const HS_ROUTE_24_ITEM ; 26
- const HS_ROUTE_25_ITEM ; 27
- const HS_DAISY_SITTING ; 28
- const HS_DAISY_WALKING ; 29
- const HS_TOWN_MAP ; 2A
- const HS_OAKS_LAB_RIVAL ; 2B
- const HS_STARTER_BALL_1 ; 2C
- const HS_OAKS_LAB_OAK_1 ; 2D
- const HS_POKEDEX_1 ; 2E
- const HS_POKEDEX_2 ; 2F
- const HS_OAKS_LAB_OAK_2 ; 30
- const HS_VIRIDIAN_GYM_GIOVANNI ; 31
- const HS_VIRIDIAN_GYM_ITEM ; 32
- const HS_OLD_AMBER ; 33
- const HS_CERULEAN_BULBASAUR ; 34
- const HS_UNKNOWN_DUNGEON_1_ITEM_1 ; 35
- const HS_UNKNOWN_DUNGEON_1_ITEM_2 ; 36
- const HS_UNKNOWN_DUNGEON_1_ITEM_3 ; 37
- const HS_UNKNOWN_DUNGEON_1_ITEM_4 ; 38
- const HS_POKEMONTOWER_2_RIVAL ; 39
- const HS_POKEMONTOWER_3_ITEM ; 3A
- const HS_POKEMONTOWER_4_ITEM_1 ; 3B
- const HS_POKEMONTOWER_4_ITEM_2 ; 3C
- const HS_POKEMONTOWER_4_ITEM_3 ; 3D
- const HS_POKEMONTOWER_5_ITEM ; 3E
- const HS_POKEMONTOWER_6_ITEM_1 ; 3F
- const HS_POKEMONTOWER_6_ITEM_2 ; 40
- const HS_POKEMONTOWER_7_JESSIE ; 41
- const HS_POKEMONTOWER_7_JAMES ; 42
- const HS_POKEMONTOWER_7_MR_FUJI ; 43
- const HS_LAVENDER_HOUSE_1_MR_FUJI ; 44
- const HS_CELADON_MANSION_5_GIFT ; 45
- const HS_GAME_CORNER_ROCKET ; 46
- const HS_FUCHSIA_HOUSE_2_ITEM ; 47
- const HS_MANSION_1_ITEM_1 ; 48
- const HS_MANSION_1_ITEM_2 ; 49
- const HS_FIGHTING_DOJO_GIFT_1 ; 4A
- const HS_FIGHTING_DOJO_GIFT_2 ; 4B
- const HS_SILPH_CO_1F_RECEPTIONIST ; 4C
- const HS_VOLTORB_1 ; 4D
- const HS_VOLTORB_2 ; 4E
- const HS_VOLTORB_3 ; 4F
- const HS_ELECTRODE_1 ; 50
- const HS_VOLTORB_4 ; 51
- const HS_VOLTORB_5 ; 52
- const HS_ELECTRODE_2 ; 53
- const HS_VOLTORB_6 ; 54
- const HS_ZAPDOS ; 55
- const HS_POWER_PLANT_ITEM_1 ; 56
- const HS_POWER_PLANT_ITEM_2 ; 57
- const HS_POWER_PLANT_ITEM_3 ; 58
- const HS_POWER_PLANT_ITEM_4 ; 59
- const HS_POWER_PLANT_ITEM_5 ; 5A
- const HS_MOLTRES ; 5B
- const HS_VICTORY_ROAD_2_ITEM_1 ; 5C
- const HS_VICTORY_ROAD_2_ITEM_2 ; 5D
- const HS_VICTORY_ROAD_2_ITEM_3 ; 5E
- const HS_VICTORY_ROAD_2_ITEM_4 ; 5F
- const HS_VICTORY_ROAD_2_BOULDER ; 60
- const HS_BILL_POKEMON ; 61
- const HS_BILL_1 ; 62
- const HS_BILL_2 ; 63
- const HS_VIRIDIAN_FOREST_ITEM_1 ; 64
- const HS_VIRIDIAN_FOREST_ITEM_2 ; 65
- const HS_VIRIDIAN_FOREST_ITEM_3 ; 66
- const HS_MT_MOON_1_ITEM_1 ; 67
- const HS_MT_MOON_1_ITEM_2 ; 68
- const HS_MT_MOON_1_ITEM_3 ; 69
- const HS_MT_MOON_1_ITEM_4 ; 6A
- const HS_MT_MOON_1_ITEM_5 ; 6B
- const HS_MT_MOON_1_ITEM_6 ; 6C
- const HS_MT_MOON_JESSIE ; 6D
- const HS_MT_MOON_JAMES ; 6E
- const HS_MT_MOON_3_FOSSIL_1 ; 6F
- const HS_MT_MOON_3_FOSSIL_2 ; 70
- const HS_MT_MOON_3_ITEM_1 ; 71
- const HS_MT_MOON_3_ITEM_2 ; 72
- const HS_SS_ANNE_2_RIVAL ; 73
- const HS_SS_ANNE_8_ITEM ; 74
- const HS_SS_ANNE_9_ITEM_1 ; 75
- const HS_SS_ANNE_9_ITEM_2 ; 76
- const HS_SS_ANNE_10_ITEM_1 ; 77
- const HS_SS_ANNE_10_ITEM_2 ; 78
- const HS_SS_ANNE_10_ITEM_3 ; 79
- const HS_VICTORY_ROAD_3_ITEM_1 ; 7A
- const HS_VICTORY_ROAD_3_ITEM_2 ; 7B
- const HS_VICTORY_ROAD_3_BOULDER ; 7C
- const HS_ROCKET_HIDEOUT_1_ITEM_1 ; 7D
- const HS_ROCKET_HIDEOUT_1_ITEM_2 ; 7E
- const HS_ROCKET_HIDEOUT_2_ITEM_1 ; 7F
- const HS_ROCKET_HIDEOUT_2_ITEM_2 ; 80
- const HS_ROCKET_HIDEOUT_2_ITEM_3 ; 81
- const HS_ROCKET_HIDEOUT_2_ITEM_4 ; 82
- const HS_ROCKET_HIDEOUT_3_ITEM_1 ; 83
- const HS_ROCKET_HIDEOUT_3_ITEM_2 ; 84
- const HS_ROCKET_HIDEOUT_4_GIOVANNI ; 85
- const HS_ROCKET_HIDEOUT_4_JAMES ; 86
- const HS_ROCKET_HIDEOUT_4_JESSIE ; 87
- const HS_ROCKET_HIDEOUT_4_ITEM_1 ; 88
- const HS_ROCKET_HIDEOUT_4_ITEM_2 ; 89
- const HS_ROCKET_HIDEOUT_4_ITEM_3 ; 8A
- const HS_ROCKET_HIDEOUT_4_ITEM_4 ; 8B
- const HS_ROCKET_HIDEOUT_4_ITEM_5 ; 8C
- const HS_SILPH_CO_2F_1 ; 8D
- const HS_SILPH_CO_2F_2 ; 8E
- const HS_SILPH_CO_2F_3 ; 8F
- const HS_SILPH_CO_2F_4 ; 90
- const HS_SILPH_CO_2F_5 ; 91
- const HS_SILPH_CO_3F_1 ; 92
- const HS_SILPH_CO_3F_2 ; 93
- const HS_SILPH_CO_3F_ITEM ; 94
- const HS_SILPH_CO_4F_1 ; 95
- const HS_SILPH_CO_4F_2 ; 96
- const HS_SILPH_CO_4F_3 ; 97
- const HS_SILPH_CO_4F_ITEM_1 ; 98
- const HS_SILPH_CO_4F_ITEM_2 ; 99
- const HS_SILPH_CO_4F_ITEM_3 ; 9A
- const HS_SILPH_CO_5F_1 ; 9B
- const HS_SILPH_CO_5F_2 ; 9C
- const HS_SILPH_CO_5F_3 ; 9D
- const HS_SILPH_CO_5F_4 ; 9E
- const HS_SILPH_CO_5F_ITEM_1 ; 9F
- const HS_SILPH_CO_5F_ITEM_2 ; A0
- const HS_SILPH_CO_5F_ITEM_3 ; A1
- const HS_SILPH_CO_6F_1 ; A2
- const HS_SILPH_CO_6F_2 ; A3
- const HS_SILPH_CO_6F_3 ; A4
- const HS_SILPH_CO_6F_ITEM_1 ; A5
- const HS_SILPH_CO_6F_ITEM_2 ; A6
- const HS_SILPH_CO_7F_1 ; A7
- const HS_SILPH_CO_7F_2 ; A8
- const HS_SILPH_CO_7F_3 ; A9
- const HS_SILPH_CO_7F_4 ; AA
- const HS_SILPH_CO_7F_RIVAL ; AB
- const HS_SILPH_CO_7F_ITEM_1 ; AC
- const HS_SILPH_CO_7F_ITEM_2 ; AD
- const HS_SILPH_CO_7F_8 ; AE
- const HS_SILPH_CO_8F_1 ; AF
- const HS_SILPH_CO_8F_2 ; B0
- const HS_SILPH_CO_8F_3 ; B1
- const HS_SILPH_CO_9F_1 ; B2
- const HS_SILPH_CO_9F_2 ; B3
- const HS_SILPH_CO_9F_3 ; B4
- const HS_SILPH_CO_10F_1 ; B5
- const HS_SILPH_CO_10F_2 ; B6
- const HS_SILPH_CO_10F_3 ; B7
- const HS_SILPH_CO_10F_ITEM_1 ; B8
- const HS_SILPH_CO_10F_ITEM_2 ; B9
- const HS_SILPH_CO_10F_ITEM_3 ; BA
- const HS_SILPH_CO_11F_1 ; BB
- const HS_SILPH_CO_11F_JAMES ; BC
- const HS_SILPH_CO_11F_2 ; BD
- const HS_SILPH_CO_11F_JESSIE ; BE
- const HS_MAP_F4_1 ; BF
- const HS_MANSION_2_ITEM ; C0
- const HS_MANSION_3_ITEM_1 ; C1
- const HS_MANSION_3_ITEM_2 ; C2
- const HS_MANSION_4_ITEM_1 ; C3
- const HS_MANSION_4_ITEM_2 ; C4
- const HS_MANSION_4_ITEM_3 ; C5
- const HS_MANSION_4_ITEM_4 ; C6
- const HS_MANSION_4_ITEM_5 ; C7
- const HS_SAFARI_ZONE_EAST_ITEM_1 ; C8
- const HS_SAFARI_ZONE_EAST_ITEM_2 ; C9
- const HS_SAFARI_ZONE_EAST_ITEM_3 ; CA
- const HS_SAFARI_ZONE_EAST_ITEM_4 ; CB
- const HS_SAFARI_ZONE_NORTH_ITEM_1 ; CC
- const HS_SAFARI_ZONE_NORTH_ITEM_2 ; CD
- const HS_SAFARI_ZONE_WEST_ITEM_1 ; CE
- const HS_SAFARI_ZONE_WEST_ITEM_2 ; CF
- const HS_SAFARI_ZONE_WEST_ITEM_3 ; D0
- const HS_SAFARI_ZONE_WEST_ITEM_4 ; D1
- const HS_SAFARI_ZONE_CENTER_ITEM ; D2
- const HS_UNKNOWN_DUNGEON_2_ITEM_1 ; D3
- const HS_UNKNOWN_DUNGEON_2_ITEM_2 ; D4
- const HS_UNKNOWN_DUNGEON_2_ITEM_3 ; D5
- const HS_UNKNOWN_DUNGEON_2_ITEM_4 ; D6
- const HS_MEWTWO ; D7
- const HS_UNKNOWN_DUNGEON_3_ITEM_1 ; D8
- const HS_UNKNOWN_DUNGEON_3_ITEM_2 ; D9
- const HS_UNKNOWN_DUNGEON_3_ITEM_3 ; DA
- const HS_UNKNOWN_DUNGEON_3_ITEM_4 ; DB
- const HS_VICTORY_ROAD_1_ITEM_1 ; DC
- const HS_VICTORY_ROAD_1_ITEM_2 ; DD
- const HS_CHAMPIONS_ROOM_OAK ; DE
- const HS_SEAFOAM_ISLANDS_1_BOULDER_1 ; DF
- const HS_SEAFOAM_ISLANDS_1_BOULDER_2 ; E0
- const HS_SEAFOAM_ISLANDS_2_BOULDER_1 ; E1
- const HS_SEAFOAM_ISLANDS_2_BOULDER_2 ; E2
- const HS_SEAFOAM_ISLANDS_3_BOULDER_1 ; E3
- const HS_SEAFOAM_ISLANDS_3_BOULDER_2 ; E4
- const HS_SEAFOAM_ISLANDS_4_BOULDER_1 ; E5
- const HS_SEAFOAM_ISLANDS_4_BOULDER_2 ; E6
- const HS_SEAFOAM_ISLANDS_4_BOULDER_3 ; E7
- const HS_SEAFOAM_ISLANDS_4_BOULDER_4 ; E8
- const HS_SEAFOAM_ISLANDS_5_BOULDER_1 ; E9
- const HS_SEAFOAM_ISLANDS_5_BOULDER_2 ; EA
- const HS_ARTICUNO ; EB
- const HS_DAISY_SITTING_COPY ; EC
- const HS_DAISY_WALKING_COPY ; ED
- const HS_TOWN_MAP_COPY ; EE
+ const HS_PALLET_TOWN_OAK ; 00
+ const HS_LYING_OLD_MAN ; 01
+ const HS_OLD_MAN_1 ; 02
+ const HS_OLD_MAN ; 03
+ const HS_MUSEUM_GUY ; 04
+ const HS_GYM_GUY ; 05
+ const HS_CERULEAN_RIVAL ; 06
+ const HS_CERULEAN_ROCKET ; 07
+ const HS_CERULEAN_GUARD_1 ; 08
+ const HS_CERULEAN_CAVE_GUY ; 09
+ const HS_CERULEAN_GUARD_2 ; 0A
+ const HS_SAFFRON_CITY_1 ; 0B
+ const HS_SAFFRON_CITY_2 ; 0C
+ const HS_SAFFRON_CITY_3 ; 0D
+ const HS_SAFFRON_CITY_4 ; 0E
+ const HS_SAFFRON_CITY_5 ; 0F
+ const HS_SAFFRON_CITY_6 ; 10
+ const HS_SAFFRON_CITY_7 ; 11
+ const HS_SAFFRON_CITY_8 ; 12
+ const HS_SAFFRON_CITY_9 ; 13
+ const HS_SAFFRON_CITY_A ; 14
+ const HS_SAFFRON_CITY_B ; 15
+ const HS_SAFFRON_CITY_C ; 16
+ const HS_SAFFRON_CITY_D ; 17
+ const HS_SAFFRON_CITY_E ; 18
+ const HS_SAFFRON_CITY_F ; 19
+ const HS_ROUTE_2_ITEM_1 ; 1A X
+ const HS_ROUTE_2_ITEM_2 ; 1B X
+ const HS_ROUTE_4_ITEM ; 1C X
+ const HS_ROUTE_9_ITEM ; 1D X
+ const HS_ROUTE_12_SNORLAX ; 1E
+ const HS_ROUTE_12_ITEM_1 ; 1F X
+ const HS_ROUTE_12_ITEM_2 ; 20 X
+ const HS_ROUTE_15_ITEM ; 21 X
+ const HS_ROUTE_16_SNORLAX ; 22
+ const HS_ROUTE_22_RIVAL_1 ; 23
+ const HS_ROUTE_22_RIVAL_2 ; 24
+ const HS_NUGGET_BRIDGE_GUY ; 25
+ const HS_ROUTE_24_ITEM ; 26 X
+ const HS_ROUTE_25_ITEM ; 27 X
+ const HS_DAISY_SITTING ; 28
+ const HS_DAISY_WALKING ; 29
+ const HS_TOWN_MAP ; 2A
+ const HS_OAKS_LAB_RIVAL ; 2B
+ const HS_STARTER_BALL_1 ; 2C
+ const HS_OAKS_LAB_OAK_1 ; 2D
+ const HS_POKEDEX_1 ; 2E
+ const HS_POKEDEX_2 ; 2F
+ const HS_OAKS_LAB_OAK_2 ; 30
+ const HS_VIRIDIAN_GYM_GIOVANNI ; 31
+ const HS_VIRIDIAN_GYM_ITEM ; 32 X
+ const HS_OLD_AMBER ; 33
+ const HS_CERULEAN_BULBASAUR ; 34
+ const HS_CERULEAN_CAVE_1F_ITEM_1 ; 35 X
+ const HS_CERULEAN_CAVE_1F_ITEM_2 ; 36 X
+ const HS_CERULEAN_CAVE_1F_ITEM_3 ; 37 X
+ const HS_CERULEAN_CAVE_1F_ITEM_4 ; 38 X
+ const HS_POKEMON_TOWER_2F_RIVAL ; 39
+ const HS_POKEMON_TOWER_3F_ITEM ; 3A X
+ const HS_POKEMON_TOWER_4F_ITEM_1 ; 3B X
+ const HS_POKEMON_TOWER_4F_ITEM_2 ; 3C X
+ const HS_POKEMON_TOWER_4F_ITEM_3 ; 3D X
+ const HS_POKEMON_TOWER_5F_ITEM ; 3E X
+ const HS_POKEMON_TOWER_6F_ITEM_1 ; 3F X
+ const HS_POKEMON_TOWER_6F_ITEM_2 ; 40 X
+ const HS_POKEMON_TOWER_7F_JESSIE ; 41
+ const HS_POKEMON_TOWER_7F_JAMES ; 42
+ const HS_POKEMON_TOWER_7F_MR_FUJI ; 43
+ const HS_MR_FUJIS_HOUSE_MR_FUJI ; 44
+ const HS_CELADON_MANSION_EEVEE_GIFT ; 45
+ const HS_GAME_CORNER_ROCKET ; 46
+ const HS_WARDENS_HOUSE_ITEM ; 47 X
+ const HS_POKEMON_MANSION_1F_ITEM_1 ; 48 X
+ const HS_POKEMON_MANSION_1F_ITEM_2 ; 49 X
+ const HS_FIGHTING_DOJO_GIFT_1 ; 4A
+ const HS_FIGHTING_DOJO_GIFT_2 ; 4B
+ const HS_SILPH_CO_1F_RECEPTIONIST ; 4C
+ const HS_VOLTORB_1 ; 4D X
+ const HS_VOLTORB_2 ; 4E X
+ const HS_VOLTORB_3 ; 4F X
+ const HS_ELECTRODE_1 ; 50 X
+ const HS_VOLTORB_4 ; 51 X
+ const HS_VOLTORB_5 ; 52 X
+ const HS_ELECTRODE_2 ; 53 X
+ const HS_VOLTORB_6 ; 54 X
+ const HS_ZAPDOS ; 55 X
+ const HS_POWER_PLANT_ITEM_1 ; 56 X
+ const HS_POWER_PLANT_ITEM_2 ; 57 X
+ const HS_POWER_PLANT_ITEM_3 ; 58 X
+ const HS_POWER_PLANT_ITEM_4 ; 59 X
+ const HS_POWER_PLANT_ITEM_5 ; 5A X
+ const HS_MOLTRES ; 5B X
+ const HS_VICTORY_ROAD_2F_ITEM_1 ; 5C X
+ const HS_VICTORY_ROAD_2F_ITEM_2 ; 5D X
+ const HS_VICTORY_ROAD_2F_ITEM_3 ; 5E X
+ const HS_VICTORY_ROAD_2F_ITEM_4 ; 5F X
+ const HS_VICTORY_ROAD_2F_BOULDER ; 60
+ const HS_BILL_POKEMON ; 61
+ const HS_BILL_1 ; 62
+ const HS_BILL_2 ; 63
+ const HS_VIRIDIAN_FOREST_ITEM_1 ; 64 X
+ const HS_VIRIDIAN_FOREST_ITEM_2 ; 65 X
+ const HS_VIRIDIAN_FOREST_ITEM_3 ; 66 X
+ const HS_MT_MOON_1F_ITEM_1 ; 67 X
+ const HS_MT_MOON_1F_ITEM_2 ; 68 X
+ const HS_MT_MOON_1F_ITEM_3 ; 69 X
+ const HS_MT_MOON_1F_ITEM_4 ; 6A X
+ const HS_MT_MOON_1F_ITEM_5 ; 6B X
+ const HS_MT_MOON_1F_ITEM_6 ; 6C X
+ const HS_MT_MOON_B2F_JESSIE ; 6D
+ const HS_MT_MOON_B2F_JAMES ; 6E
+ const HS_MT_MOON_B2F_FOSSIL_1 ; 6F
+ const HS_MT_MOON_B2F_FOSSIL_2 ; 70
+ const HS_MT_MOON_B2F_ITEM_1 ; 71 X
+ const HS_MT_MOON_B2F_ITEM_2 ; 72 X
+ const HS_SS_ANNE_2F_RIVAL ; 73
+ const HS_SS_ANNE_1F_ROOMS_ITEM ; 74 X
+ const HS_SS_ANNE_2F_ROOMS_ITEM_1 ; 75 X
+ const HS_SS_ANNE_2F_ROOMS_ITEM_2 ; 76 X
+ const HS_SS_ANNE_B1F_ROOMS_ITEM_1 ; 77 X
+ const HS_SS_ANNE_B1F_ROOMS_ITEM_2 ; 78 X
+ const HS_SS_ANNE_B1F_ROOMS_ITEM_3 ; 79 X
+ const HS_VICTORY_ROAD_3F_ITEM_1 ; 7A X
+ const HS_VICTORY_ROAD_3F_ITEM_2 ; 7B X
+ const HS_VICTORY_ROAD_3F_BOULDER ; 7C
+ const HS_ROCKET_HIDEOUT_B1F_ITEM_1 ; 7D X
+ const HS_ROCKET_HIDEOUT_B1F_ITEM_2 ; 7E X
+ const HS_ROCKET_HIDEOUT_B2F_ITEM_1 ; 7F X
+ const HS_ROCKET_HIDEOUT_B2F_ITEM_2 ; 80 X
+ const HS_ROCKET_HIDEOUT_B2F_ITEM_3 ; 81 X
+ const HS_ROCKET_HIDEOUT_B2F_ITEM_4 ; 82 X
+ const HS_ROCKET_HIDEOUT_B3F_ITEM_1 ; 83 X
+ const HS_ROCKET_HIDEOUT_B3F_ITEM_2 ; 84 X
+ const HS_ROCKET_HIDEOUT_B4F_GIOVANNI ; 85
+ const HS_ROCKET_HIDEOUT_B4F_JAMES ; 86
+ const HS_ROCKET_HIDEOUT_B4F_JESSIE ; 87
+ const HS_ROCKET_HIDEOUT_B4F_ITEM_1 ; 88 X
+ const HS_ROCKET_HIDEOUT_B4F_ITEM_2 ; 89 X
+ const HS_ROCKET_HIDEOUT_B4F_ITEM_3 ; 8A X
+ const HS_ROCKET_HIDEOUT_B4F_ITEM_4 ; 8B
+ const HS_ROCKET_HIDEOUT_B4F_ITEM_5 ; 8C
+ const HS_SILPH_CO_2F_1 ; 8D XXX never (de)activated?
+ const HS_SILPH_CO_2F_2 ; 8E
+ const HS_SILPH_CO_2F_3 ; 8F
+ const HS_SILPH_CO_2F_4 ; 90
+ const HS_SILPH_CO_2F_5 ; 91
+ const HS_SILPH_CO_3F_1 ; 92
+ const HS_SILPH_CO_3F_2 ; 93
+ const HS_SILPH_CO_3F_ITEM ; 94 X
+ const HS_SILPH_CO_4F_1 ; 95
+ const HS_SILPH_CO_4F_2 ; 96
+ const HS_SILPH_CO_4F_3 ; 97
+ const HS_SILPH_CO_4F_ITEM_1 ; 98 X
+ const HS_SILPH_CO_4F_ITEM_2 ; 99 X
+ const HS_SILPH_CO_4F_ITEM_3 ; 9A X
+ const HS_SILPH_CO_5F_1 ; 9B
+ const HS_SILPH_CO_5F_2 ; 9C
+ const HS_SILPH_CO_5F_3 ; 9D
+ const HS_SILPH_CO_5F_4 ; 9E
+ const HS_SILPH_CO_5F_ITEM_1 ; 9F X
+ const HS_SILPH_CO_5F_ITEM_2 ; A0 X
+ const HS_SILPH_CO_5F_ITEM_3 ; A1 X
+ const HS_SILPH_CO_6F_1 ; A2
+ const HS_SILPH_CO_6F_2 ; A3
+ const HS_SILPH_CO_6F_3 ; A4
+ const HS_SILPH_CO_6F_ITEM_1 ; A5 X
+ const HS_SILPH_CO_6F_ITEM_2 ; A6 X
+ const HS_SILPH_CO_7F_1 ; A7
+ const HS_SILPH_CO_7F_2 ; A8
+ const HS_SILPH_CO_7F_3 ; A9
+ const HS_SILPH_CO_7F_4 ; AA
+ const HS_SILPH_CO_7F_RIVAL ; AB
+ const HS_SILPH_CO_7F_ITEM_1 ; AC X
+ const HS_SILPH_CO_7F_ITEM_2 ; AD X
+ const HS_SILPH_CO_7F_8 ; AE XXX sprite doesn't exist
+ const HS_SILPH_CO_8F_1 ; AF
+ const HS_SILPH_CO_8F_2 ; B0
+ const HS_SILPH_CO_8F_3 ; B1
+ const HS_SILPH_CO_9F_1 ; B2
+ const HS_SILPH_CO_9F_2 ; B3
+ const HS_SILPH_CO_9F_3 ; B4
+ const HS_SILPH_CO_10F_1 ; B5
+ const HS_SILPH_CO_10F_2 ; B6
+ const HS_SILPH_CO_10F_3 ; B7 XXX never (de)activated?
+ const HS_SILPH_CO_10F_ITEM_1 ; B8 X
+ const HS_SILPH_CO_10F_ITEM_2 ; B9 X
+ const HS_SILPH_CO_10F_ITEM_3 ; BA X
+ const HS_SILPH_CO_11F_1 ; BB
+ const HS_SILPH_CO_11F_JAMES ; BC
+ const HS_SILPH_CO_11F_2 ; BD
+ const HS_SILPH_CO_11F_JESSIE ; BE
+ const HS_UNUSED_MAP_F4_1 ; BF XXX sprite doesn't exist
+ const HS_POKEMON_MANSION_2F_ITEM ; C0 X
+ const HS_POKEMON_MANSION_3F_ITEM_1 ; C1 X
+ const HS_POKEMON_MANSION_3F_ITEM_2 ; C2 X
+ const HS_POKEMON_MANSION_B1F_ITEM_1 ; C3 X
+ const HS_POKEMON_MANSION_B1F_ITEM_2 ; C4 X
+ const HS_POKEMON_MANSION_B1F_ITEM_3 ; C5 X
+ const HS_POKEMON_MANSION_B1F_ITEM_4 ; C6 X
+ const HS_POKEMON_MANSION_B1F_ITEM_5 ; C7 X
+ const HS_SAFARI_ZONE_EAST_ITEM_1 ; C8 X
+ const HS_SAFARI_ZONE_EAST_ITEM_2 ; C9 X
+ const HS_SAFARI_ZONE_EAST_ITEM_3 ; CA X
+ const HS_SAFARI_ZONE_EAST_ITEM_4 ; CB X
+ const HS_SAFARI_ZONE_NORTH_ITEM_1 ; CC X
+ const HS_SAFARI_ZONE_NORTH_ITEM_2 ; CD X
+ const HS_SAFARI_ZONE_WEST_ITEM_1 ; CE X
+ const HS_SAFARI_ZONE_WEST_ITEM_2 ; CF X
+ const HS_SAFARI_ZONE_WEST_ITEM_3 ; D0 X
+ const HS_SAFARI_ZONE_WEST_ITEM_4 ; D1 X
+ const HS_SAFARI_ZONE_CENTER_ITEM ; D2 X
+ const HS_CERULEAN_CAVE_2F_ITEM_1 ; D3 X
+ const HS_CERULEAN_CAVE_2F_ITEM_2 ; D4 X
+ const HS_CERULEAN_CAVE_2F_ITEM_3 ; D5 X
+ const HS_CERULEAN_CAVE_2F_ITEM_4 ; D6 X
+ const HS_MEWTWO ; D7 X
+ const HS_CERULEAN_CAVE_B1F_ITEM_1 ; D8 X
+ const HS_CERULEAN_CAVE_B1F_ITEM_2 ; D9 X
+ const HS_CERULEAN_CAVE_B1F_ITEM_3 ; DA X
+ const HS_CERULEAN_CAVE_B1F_ITEM_4 ; DB X
+ const HS_VICTORY_ROAD_1F_ITEM_1 ; DC X
+ const HS_VICTORY_ROAD_1F_ITEM_2 ; DD X
+ const HS_CHAMPIONS_ROOM_OAK ; DE
+ const HS_SEAFOAM_ISLANDS_1F_BOULDER_1 ; DF
+ const HS_SEAFOAM_ISLANDS_1F_BOULDER_2 ; E0
+ const HS_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; E1
+ const HS_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; E2
+ const HS_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; E3
+ const HS_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; E4
+ const HS_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; E5
+ const HS_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; E6
+ const HS_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; E7
+ const HS_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E8
+ const HS_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; E9
+ const HS_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; EA
+ const HS_ARTICUNO ; EB X
+ const HS_DAISY_SITTING_COPY ; EC
+ const HS_DAISY_WALKING_COPY ; ED
+ const HS_TOWN_MAP_COPY ; EE
diff --git a/constants/map_constants.asm b/constants/map_constants.asm
index c2068dd9..cf006604 100644
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -5,252 +5,252 @@ mapconst: MACRO
ENDM
const_def
- mapconst PALLET_TOWN, 9, 10 ; $00
- mapconst VIRIDIAN_CITY, 18, 20 ; $01
- mapconst PEWTER_CITY, 18, 20 ; $02
- mapconst CERULEAN_CITY, 18, 20 ; $03
- mapconst LAVENDER_TOWN, 9, 10 ; $04
- mapconst VERMILION_CITY, 18, 20 ; $05
- mapconst CELADON_CITY, 18, 25 ; $06
- mapconst FUCHSIA_CITY, 18, 20 ; $07
- mapconst CINNABAR_ISLAND, 9, 10 ; $08
- mapconst INDIGO_PLATEAU, 9, 10 ; $09
- mapconst SAFFRON_CITY, 18, 20 ; $0A
- mapconst UNUSED_MAP_0B, 0, 0 ; $0B
- mapconst ROUTE_1, 18, 10 ; $0C
- mapconst ROUTE_2, 36, 10 ; $0D
- mapconst ROUTE_3, 9, 35 ; $0E
- mapconst ROUTE_4, 9, 45 ; $0F
- mapconst ROUTE_5, 18, 10 ; $10
- mapconst ROUTE_6, 18, 10 ; $11
- mapconst ROUTE_7, 9, 10 ; $12
- mapconst ROUTE_8, 9, 30 ; $13
- mapconst ROUTE_9, 9, 30 ; $14
- mapconst ROUTE_10, 36, 10 ; $15
- mapconst ROUTE_11, 9, 30 ; $16
- mapconst ROUTE_12, 54, 10 ; $17
- mapconst ROUTE_13, 9, 30 ; $18
- mapconst ROUTE_14, 27, 10 ; $19
- mapconst ROUTE_15, 9, 30 ; $1A
- mapconst ROUTE_16, 9, 20 ; $1B
- mapconst ROUTE_17, 72, 10 ; $1C
- mapconst ROUTE_18, 9, 25 ; $1D
- mapconst ROUTE_19, 27, 10 ; $1E
- mapconst ROUTE_20, 9, 50 ; $1F
- mapconst ROUTE_21, 45, 10 ; $20
- mapconst ROUTE_22, 9, 20 ; $21
- mapconst ROUTE_23, 72, 10 ; $22
- mapconst ROUTE_24, 18, 10 ; $23
- mapconst ROUTE_25, 9, 30 ; $24
- mapconst REDS_HOUSE_1F, 4, 4 ; $25
- mapconst REDS_HOUSE_2F, 4, 4 ; $26
- mapconst BLUES_HOUSE, 4, 4 ; $27
- mapconst OAKS_LAB, 6, 5 ; $28
- mapconst VIRIDIAN_POKECENTER, 4, 7 ; $29
- mapconst VIRIDIAN_MART, 4, 4 ; $2A
- mapconst VIRIDIAN_SCHOOL, 4, 4 ; $2B
- mapconst VIRIDIAN_HOUSE, 4, 4 ; $2C
- mapconst VIRIDIAN_GYM, 9, 10 ; $2D
- mapconst DIGLETTS_CAVE_EXIT, 4, 4 ; $2E
- mapconst VIRIDIAN_FOREST_EXIT, 4, 5 ; $2F
- mapconst ROUTE_2_HOUSE, 4, 4 ; $30
- mapconst ROUTE_2_GATE, 4, 5 ; $31
- mapconst VIRIDIAN_FOREST_ENTRANCE, 4, 5 ; $32
- mapconst VIRIDIAN_FOREST, 24, 17 ; $33
- mapconst MUSEUM_1F, 4, 10 ; $34
- mapconst MUSEUM_2F, 4, 7 ; $35
- mapconst PEWTER_GYM, 7, 5 ; $36
- mapconst PEWTER_HOUSE_1, 4, 4 ; $37
- mapconst PEWTER_MART, 4, 4 ; $38
- mapconst PEWTER_HOUSE_2, 4, 4 ; $39
- mapconst PEWTER_POKECENTER, 4, 7 ; $3A
- mapconst MT_MOON_1, 18, 20 ; $3B
- mapconst MT_MOON_2, 14, 14 ; $3C
- mapconst MT_MOON_3, 18, 20 ; $3D
- mapconst TRASHED_HOUSE, 4, 4 ; $3E
- mapconst CERULEAN_HOUSE_1, 4, 4 ; $3F
- mapconst CERULEAN_POKECENTER, 4, 7 ; $40
- mapconst CERULEAN_GYM, 7, 5 ; $41
- mapconst BIKE_SHOP, 4, 4 ; $42
- mapconst CERULEAN_MART, 4, 4 ; $43
- mapconst MT_MOON_POKECENTER, 4, 7 ; $44
- mapconst TRASHED_HOUSE_COPY, 4, 4 ; $45
- mapconst ROUTE_5_GATE, 3, 4 ; $46
- mapconst PATH_ENTRANCE_ROUTE_5, 4, 4 ; $47
- mapconst DAYCAREM, 4, 4 ; $48
- mapconst ROUTE_6_GATE, 3, 4 ; $49
- mapconst PATH_ENTRANCE_ROUTE_6, 4, 4 ; $4A
- mapconst PATH_ENTRANCE_ROUTE_6_COPY, 4, 4 ; $4B
- mapconst ROUTE_7_GATE, 4, 3 ; $4C
- mapconst PATH_ENTRANCE_ROUTE_7, 4, 4 ; $4D
- mapconst PATH_ENTRANCE_ROUTE_7_COPY, 4, 4 ; $4E
- mapconst ROUTE_8_GATE, 4, 3 ; $4F
- mapconst PATH_ENTRANCE_ROUTE_8, 4, 4 ; $50
- mapconst ROCK_TUNNEL_POKECENTER, 4, 7 ; $51
- mapconst ROCK_TUNNEL_1, 18, 20 ; $52
- mapconst POWER_PLANT, 18, 20 ; $53
- mapconst ROUTE_11_GATE_1F, 5, 4 ; $54
- mapconst DIGLETTS_CAVE_ENTRANCE, 4, 4 ; $55
- mapconst ROUTE_11_GATE_2F, 4, 4 ; $56
- mapconst ROUTE_12_GATE_1F, 4, 5 ; $57
- mapconst BILLS_HOUSE, 4, 4 ; $58
- mapconst VERMILION_POKECENTER, 4, 7 ; $59
- mapconst POKEMON_FAN_CLUB, 4, 4 ; $5A
- mapconst VERMILION_MART, 4, 4 ; $5B
- mapconst VERMILION_GYM, 9, 5 ; $5C
- mapconst VERMILION_HOUSE_1, 4, 4 ; $5D
- mapconst VERMILION_DOCK, 6, 14 ; $5E
- mapconst SS_ANNE_1, 9, 20 ; $5F
- mapconst SS_ANNE_2, 9, 20 ; $60
- mapconst SS_ANNE_3, 3, 10 ; $61
- mapconst SS_ANNE_4, 4, 15 ; $62
- mapconst SS_ANNE_5, 7, 10 ; $63
- mapconst SS_ANNE_6, 8, 7 ; $64
- mapconst SS_ANNE_7, 4, 3 ; $65
- mapconst SS_ANNE_8, 8, 12 ; $66
- mapconst SS_ANNE_9, 8, 12 ; $67
- mapconst SS_ANNE_10, 8, 12 ; $68
- mapconst UNUSED_MAP_69, 0, 0 ; $69
- mapconst UNUSED_MAP_6A, 0, 0 ; $6A
- mapconst UNUSED_MAP_6B, 0, 0 ; $6B
- mapconst VICTORY_ROAD_1, 9, 10 ; $6C
- mapconst UNUSED_MAP_6D, 0, 0 ; $6D
- mapconst UNUSED_MAP_6E, 0, 0 ; $6E
- mapconst UNUSED_MAP_6F, 0, 0 ; $6F
- mapconst UNUSED_MAP_70, 0, 0 ; $70
- mapconst LANCES_ROOM, 13, 13 ; $71
- mapconst UNUSED_MAP_72, 0, 0 ; $72
- mapconst UNUSED_MAP_73, 0, 0 ; $73
- mapconst UNUSED_MAP_74, 0, 0 ; $74
- mapconst UNUSED_MAP_75, 0, 0 ; $75
- mapconst HALL_OF_FAME, 4, 5 ; $76
- mapconst UNDERGROUND_PATH_NS, 24, 4 ; $77
- mapconst CHAMPIONS_ROOM, 4, 4 ; $78
- mapconst UNDERGROUND_PATH_WE, 4, 25 ; $79
- mapconst CELADON_MART_1, 4, 10 ; $7A
- mapconst CELADON_MART_2, 4, 10 ; $7B
- mapconst CELADON_MART_3, 4, 10 ; $7C
- mapconst CELADON_MART_4, 4, 10 ; $7D
- mapconst CELADON_MART_ROOF, 4, 10 ; $7E
- mapconst CELADON_MART_ELEVATOR, 2, 2 ; $7F
- mapconst CELADON_MANSION_1, 6, 4 ; $80
- mapconst CELADON_MANSION_2, 6, 4 ; $81
- mapconst CELADON_MANSION_3, 6, 4 ; $82
- mapconst CELADON_MANSION_4, 6, 4 ; $83
- mapconst CELADON_MANSION_5, 4, 4 ; $84
- mapconst CELADON_POKECENTER, 4, 7 ; $85
- mapconst CELADON_GYM, 9, 5 ; $86
- mapconst GAME_CORNER, 9, 10 ; $87
- mapconst CELADON_MART_5, 4, 10 ; $88
- mapconst CELADON_PRIZE_ROOM, 4, 5 ; $89
- mapconst CELADON_DINER, 4, 5 ; $8A
- mapconst CELADON_HOUSE, 4, 4 ; $8B
- mapconst CELADON_HOTEL, 4, 7 ; $8C
- mapconst LAVENDER_POKECENTER, 4, 7 ; $8D
- mapconst POKEMONTOWER_1, 9, 10 ; $8E
- mapconst POKEMONTOWER_2, 9, 10 ; $8F
- mapconst POKEMONTOWER_3, 9, 10 ; $90
- mapconst POKEMONTOWER_4, 9, 10 ; $91
- mapconst POKEMONTOWER_5, 9, 10 ; $92
- mapconst POKEMONTOWER_6, 9, 10 ; $93
- mapconst POKEMONTOWER_7, 9, 10 ; $94
- mapconst LAVENDER_HOUSE_1, 4, 4 ; $95
- mapconst LAVENDER_MART, 4, 4 ; $96
- mapconst LAVENDER_HOUSE_2, 4, 4 ; $97
- mapconst FUCHSIA_MART, 4, 4 ; $98
- mapconst FUCHSIA_HOUSE_1, 4, 4 ; $99
- mapconst FUCHSIA_POKECENTER, 4, 7 ; $9A
- mapconst FUCHSIA_HOUSE_2, 4, 5 ; $9B
- mapconst SAFARI_ZONE_ENTRANCE, 3, 4 ; $9C
- mapconst FUCHSIA_GYM, 9, 5 ; $9D
- mapconst FUCHSIA_MEETING_ROOM, 4, 7 ; $9E
- mapconst SEAFOAM_ISLANDS_2, 9, 15 ; $9F
- mapconst SEAFOAM_ISLANDS_3, 9, 15 ; $A0
- mapconst SEAFOAM_ISLANDS_4, 9, 15 ; $A1
- mapconst SEAFOAM_ISLANDS_5, 9, 15 ; $A2
- mapconst VERMILION_HOUSE_2, 4, 4 ; $A3
- mapconst FUCHSIA_HOUSE_3, 4, 4 ; $A4
- mapconst MANSION_1, 14, 15 ; $A5
- mapconst CINNABAR_GYM, 9, 10 ; $A6
- mapconst CINNABAR_LAB_1, 4, 9 ; $A7
- mapconst CINNABAR_LAB_2, 4, 4 ; $A8
- mapconst CINNABAR_LAB_3, 4, 4 ; $A9
- mapconst CINNABAR_LAB_4, 4, 4 ; $AA
- mapconst CINNABAR_POKECENTER, 4, 7 ; $AB
- mapconst CINNABAR_MART, 4, 4 ; $AC
- mapconst CINNABAR_MART_COPY, 4, 4 ; $AD
- mapconst INDIGO_PLATEAU_LOBBY, 6, 8 ; $AE
- mapconst COPYCATS_HOUSE_1F, 4, 4 ; $AF
- mapconst COPYCATS_HOUSE_2F, 4, 4 ; $B0
- mapconst FIGHTING_DOJO, 6, 5 ; $B1
- mapconst SAFFRON_GYM, 9, 10 ; $B2
- mapconst SAFFRON_HOUSE_1, 4, 4 ; $B3
- mapconst SAFFRON_MART, 4, 4 ; $B4
- mapconst SILPH_CO_1F, 9, 15 ; $B5
- mapconst SAFFRON_POKECENTER, 4, 7 ; $B6
- mapconst SAFFRON_HOUSE_2, 4, 4 ; $B7
- mapconst ROUTE_15_GATE_1F, 5, 4 ; $B8
- mapconst ROUTE_15_GATE_2F, 4, 4 ; $B9
- mapconst ROUTE_16_GATE_1F, 7, 4 ; $BA
- mapconst ROUTE_16_GATE_2F, 4, 4 ; $BB
- mapconst ROUTE_16_HOUSE, 4, 4 ; $BC
- mapconst ROUTE_12_HOUSE, 4, 4 ; $BD
- mapconst ROUTE_18_GATE_1F, 5, 4 ; $BE
- mapconst ROUTE_18_GATE_2F, 4, 4 ; $BF
- mapconst SEAFOAM_ISLANDS_1, 9, 15 ; $C0
- mapconst ROUTE_22_GATE, 4, 5 ; $C1
- mapconst VICTORY_ROAD_2, 9, 15 ; $C2
- mapconst ROUTE_12_GATE_2F, 4, 4 ; $C3
- mapconst VERMILION_HOUSE_3, 4, 4 ; $C4
- mapconst DIGLETTS_CAVE, 18, 20 ; $C5
- mapconst VICTORY_ROAD_3, 9, 15 ; $C6
- mapconst ROCKET_HIDEOUT_1, 14, 15 ; $C7
- mapconst ROCKET_HIDEOUT_2, 14, 15 ; $C8
- mapconst ROCKET_HIDEOUT_3, 14, 15 ; $C9
- mapconst ROCKET_HIDEOUT_4, 12, 15 ; $CA
- mapconst ROCKET_HIDEOUT_ELEVATOR, 4, 3 ; $CB
- mapconst UNUSED_MAP_CC, 0, 0 ; $CC
- mapconst UNUSED_MAP_CD, 0, 0 ; $CD
- mapconst UNUSED_MAP_CE, 0, 0 ; $CE
- mapconst SILPH_CO_2F, 9, 15 ; $CF
- mapconst SILPH_CO_3F, 9, 15 ; $D0
- mapconst SILPH_CO_4F, 9, 15 ; $D1
- mapconst SILPH_CO_5F, 9, 15 ; $D2
- mapconst SILPH_CO_6F, 9, 13 ; $D3
- mapconst SILPH_CO_7F, 9, 13 ; $D4
- mapconst SILPH_CO_8F, 9, 13 ; $D5
- mapconst MANSION_2, 14, 15 ; $D6
- mapconst MANSION_3, 9, 15 ; $D7
- mapconst MANSION_4, 14, 15 ; $D8
- mapconst SAFARI_ZONE_EAST, 13, 15 ; $D9
- mapconst SAFARI_ZONE_NORTH, 18, 20 ; $DA
- mapconst SAFARI_ZONE_WEST, 13, 15 ; $DB
- mapconst SAFARI_ZONE_CENTER, 13, 15 ; $DC
- mapconst SAFARI_ZONE_REST_HOUSE_1, 4, 4 ; $DD
- mapconst SAFARI_ZONE_SECRET_HOUSE, 4, 4 ; $DE
- mapconst SAFARI_ZONE_REST_HOUSE_2, 4, 4 ; $DF
- mapconst SAFARI_ZONE_REST_HOUSE_3, 4, 4 ; $E0
- mapconst SAFARI_ZONE_REST_HOUSE_4, 4, 4 ; $E1
- mapconst UNKNOWN_DUNGEON_2, 9, 15 ; $E2
- mapconst UNKNOWN_DUNGEON_3, 9, 15 ; $E3
- mapconst UNKNOWN_DUNGEON_1, 9, 15 ; $E4
- mapconst NAME_RATERS_HOUSE, 4, 4 ; $E5
- mapconst CERULEAN_HOUSE_2, 4, 4 ; $E6
- mapconst UNUSED_MAP_E7, 0, 0 ; $E7
- mapconst ROCK_TUNNEL_2, 18, 20 ; $E8
- mapconst SILPH_CO_9F, 9, 13 ; $E9
- mapconst SILPH_CO_10F, 9, 8 ; $EA
- mapconst SILPH_CO_11F, 9, 9 ; $EB
- mapconst SILPH_CO_ELEVATOR, 2, 2 ; $EC
- mapconst UNUSED_MAP_ED, 0, 0 ; $ED
- mapconst UNUSED_MAP_EE, 0, 0 ; $EE
- mapconst TRADE_CENTER, 4, 5 ; $EF
- mapconst COLOSSEUM, 4, 5 ; $F0
- mapconst UNUSED_MAP_F1, 0, 0 ; $F1
- mapconst UNUSED_MAP_F2, 0, 0 ; $F2
- mapconst UNUSED_MAP_F3, 0, 0 ; $F3
- mapconst UNUSED_MAP_F4, 0, 0 ; $F4
- mapconst LORELEIS_ROOM, 6, 5 ; $F5
- mapconst BRUNOS_ROOM, 6, 5 ; $F6
- mapconst AGATHAS_ROOM, 6, 5 ; $F7
- mapconst BEACH_HOUSE, 4, 7 ; $F8
+ mapconst PALLET_TOWN, 9, 10 ; $00
+ mapconst VIRIDIAN_CITY, 18, 20 ; $01
+ mapconst PEWTER_CITY, 18, 20 ; $02
+ mapconst CERULEAN_CITY, 18, 20 ; $03
+ mapconst LAVENDER_TOWN, 9, 10 ; $04
+ mapconst VERMILION_CITY, 18, 20 ; $05
+ mapconst CELADON_CITY, 18, 25 ; $06
+ mapconst FUCHSIA_CITY, 18, 20 ; $07
+ mapconst CINNABAR_ISLAND, 9, 10 ; $08
+ mapconst INDIGO_PLATEAU, 9, 10 ; $09
+ mapconst SAFFRON_CITY, 18, 20 ; $0A
+ mapconst UNUSED_MAP_0B, 0, 0 ; $0B
+ mapconst ROUTE_1, 18, 10 ; $0C
+ mapconst ROUTE_2, 36, 10 ; $0D
+ mapconst ROUTE_3, 9, 35 ; $0E
+ mapconst ROUTE_4, 9, 45 ; $0F
+ mapconst ROUTE_5, 18, 10 ; $10
+ mapconst ROUTE_6, 18, 10 ; $11
+ mapconst ROUTE_7, 9, 10 ; $12
+ mapconst ROUTE_8, 9, 30 ; $13
+ mapconst ROUTE_9, 9, 30 ; $14
+ mapconst ROUTE_10, 36, 10 ; $15
+ mapconst ROUTE_11, 9, 30 ; $16
+ mapconst ROUTE_12, 54, 10 ; $17
+ mapconst ROUTE_13, 9, 30 ; $18
+ mapconst ROUTE_14, 27, 10 ; $19
+ mapconst ROUTE_15, 9, 30 ; $1A
+ mapconst ROUTE_16, 9, 20 ; $1B
+ mapconst ROUTE_17, 72, 10 ; $1C
+ mapconst ROUTE_18, 9, 25 ; $1D
+ mapconst ROUTE_19, 27, 10 ; $1E
+ mapconst ROUTE_20, 9, 50 ; $1F
+ mapconst ROUTE_21, 45, 10 ; $20
+ mapconst ROUTE_22, 9, 20 ; $21
+ mapconst ROUTE_23, 72, 10 ; $22
+ mapconst ROUTE_24, 18, 10 ; $23
+ mapconst ROUTE_25, 9, 30 ; $24
+ mapconst REDS_HOUSE_1F, 4, 4 ; $25
+ mapconst REDS_HOUSE_2F, 4, 4 ; $26
+ mapconst BLUES_HOUSE, 4, 4 ; $27
+ mapconst OAKS_LAB, 6, 5 ; $28
+ mapconst VIRIDIAN_POKECENTER, 4, 7 ; $29
+ mapconst VIRIDIAN_MART, 4, 4 ; $2A
+ mapconst VIRIDIAN_SCHOOL_HOUSE, 4, 4 ; $2B
+ mapconst VIRIDIAN_NICKNAME_HOUSE, 4, 4 ; $2C
+ mapconst VIRIDIAN_GYM, 9, 10 ; $2D
+ mapconst DIGLETTS_CAVE_ROUTE_2, 4, 4 ; $2E
+ mapconst VIRIDIAN_FOREST_NORTH_GATE, 4, 5 ; $2F
+ mapconst ROUTE_2_TRADE_HOUSE, 4, 4 ; $30
+ mapconst ROUTE_2_GATE, 4, 5 ; $31
+ mapconst VIRIDIAN_FOREST_SOUTH_GATE, 4, 5 ; $32
+ mapconst VIRIDIAN_FOREST, 24, 17 ; $33
+ mapconst MUSEUM_1F, 4, 10 ; $34
+ mapconst MUSEUM_2F, 4, 7 ; $35
+ mapconst PEWTER_GYM, 7, 5 ; $36
+ mapconst PEWTER_NIDORAN_HOUSE, 4, 4 ; $37
+ mapconst PEWTER_MART, 4, 4 ; $38
+ mapconst PEWTER_SPEECH_HOUSE, 4, 4 ; $39
+ mapconst PEWTER_POKECENTER, 4, 7 ; $3A
+ mapconst MT_MOON_1F, 18, 20 ; $3B
+ mapconst MT_MOON_B1F, 14, 14 ; $3C
+ mapconst MT_MOON_B2F, 18, 20 ; $3D
+ mapconst CERULEAN_TRASHED_HOUSE, 4, 4 ; $3E
+ mapconst CERULEAN_TRADE_HOUSE, 4, 4 ; $3F
+ mapconst CERULEAN_POKECENTER, 4, 7 ; $40
+ mapconst CERULEAN_GYM, 7, 5 ; $41
+ mapconst BIKE_SHOP, 4, 4 ; $42
+ mapconst CERULEAN_MART, 4, 4 ; $43
+ mapconst MT_MOON_POKECENTER, 4, 7 ; $44
+ mapconst CERULEAN_TRASHED_HOUSE_COPY, 4, 4 ; $45
+ mapconst ROUTE_5_GATE, 3, 4 ; $46
+ mapconst UNDERGROUND_PATH_ROUTE_5, 4, 4 ; $47
+ mapconst DAYCARE, 4, 4 ; $48
+ mapconst ROUTE_6_GATE, 3, 4 ; $49
+ mapconst UNDERGROUND_PATH_ROUTE_6, 4, 4 ; $4A
+ mapconst UNDERGROUND_PATH_ROUTE_6_COPY, 4, 4 ; $4B
+ mapconst ROUTE_7_GATE, 4, 3 ; $4C
+ mapconst UNDERGROUND_PATH_ROUTE_7, 4, 4 ; $4D
+ mapconst UNDERGROUND_PATH_ROUTE_7_COPY, 4, 4 ; $4E
+ mapconst ROUTE_8_GATE, 4, 3 ; $4F
+ mapconst UNDERGROUND_PATH_ROUTE_8, 4, 4 ; $50
+ mapconst ROCK_TUNNEL_POKECENTER, 4, 7 ; $51
+ mapconst ROCK_TUNNEL_1F, 18, 20 ; $52
+ mapconst POWER_PLANT, 18, 20 ; $53
+ mapconst ROUTE_11_GATE_1F, 5, 4 ; $54
+ mapconst DIGLETTS_CAVE_ROUTE_11, 4, 4 ; $55
+ mapconst ROUTE_11_GATE_2F, 4, 4 ; $56
+ mapconst ROUTE_12_GATE_1F, 4, 5 ; $57
+ mapconst BILLS_HOUSE, 4, 4 ; $58
+ mapconst VERMILION_POKECENTER, 4, 7 ; $59
+ mapconst POKEMON_FAN_CLUB, 4, 4 ; $5A
+ mapconst VERMILION_MART, 4, 4 ; $5B
+ mapconst VERMILION_GYM, 9, 5 ; $5C
+ mapconst VERMILION_PIDGEY_HOUSE, 4, 4 ; $5D
+ mapconst VERMILION_DOCK, 6, 14 ; $5E
+ mapconst SS_ANNE_1F, 9, 20 ; $5F
+ mapconst SS_ANNE_2F, 9, 20 ; $60
+ mapconst SS_ANNE_3F, 3, 10 ; $61
+ mapconst SS_ANNE_B1F, 4, 15 ; $62
+ mapconst SS_ANNE_BOW, 7, 10 ; $63
+ mapconst SS_ANNE_KITCHEN, 8, 7 ; $64
+ mapconst SS_ANNE_CAPTAINS_ROOM, 4, 3 ; $65
+ mapconst SS_ANNE_1F_ROOMS, 8, 12 ; $66
+ mapconst SS_ANNE_2F_ROOMS, 8, 12 ; $67
+ mapconst SS_ANNE_B1F_ROOMS, 8, 12 ; $68
+ mapconst UNUSED_MAP_69, 0, 0 ; $69
+ mapconst UNUSED_MAP_6A, 0, 0 ; $6A
+ mapconst UNUSED_MAP_6B, 0, 0 ; $6B
+ mapconst VICTORY_ROAD_1F, 9, 10 ; $6C
+ mapconst UNUSED_MAP_6D, 0, 0 ; $6D
+ mapconst UNUSED_MAP_6E, 0, 0 ; $6E
+ mapconst UNUSED_MAP_6F, 0, 0 ; $6F
+ mapconst UNUSED_MAP_70, 0, 0 ; $70
+ mapconst LANCES_ROOM, 13, 13 ; $71
+ mapconst UNUSED_MAP_72, 0, 0 ; $72
+ mapconst UNUSED_MAP_73, 0, 0 ; $73
+ mapconst UNUSED_MAP_74, 0, 0 ; $74
+ mapconst UNUSED_MAP_75, 0, 0 ; $75
+ mapconst HALL_OF_FAME, 4, 5 ; $76
+ mapconst UNDERGROUND_PATH_NORTH_SOUTH, 24, 4 ; $77
+ mapconst CHAMPIONS_ROOM, 4, 4 ; $78
+ mapconst UNDERGROUND_PATH_WEST_EAST, 4, 25 ; $79
+ mapconst CELADON_MART_1F, 4, 10 ; $7A
+ mapconst CELADON_MART_2F, 4, 10 ; $7B
+ mapconst CELADON_MART_3F, 4, 10 ; $7C
+ mapconst CELADON_MART_4F, 4, 10 ; $7D
+ mapconst CELADON_MART_ROOF, 4, 10 ; $7E
+ mapconst CELADON_MART_ELEVATOR, 2, 2 ; $7F
+ mapconst CELADON_MANSION_1F, 6, 4 ; $80
+ mapconst CELADON_MANSION_2F, 6, 4 ; $81
+ mapconst CELADON_MANSION_3F, 6, 4 ; $82
+ mapconst CELADON_MANSION_ROOF, 6, 4 ; $83
+ mapconst CELADON_MANSION_ROOF_HOUSE, 4, 4 ; $84
+ mapconst CELADON_POKECENTER, 4, 7 ; $85
+ mapconst CELADON_GYM, 9, 5 ; $86
+ mapconst GAME_CORNER, 9, 10 ; $87
+ mapconst CELADON_MART_5F, 4, 10 ; $88
+ mapconst GAME_CORNER_PRIZE_ROOM, 4, 5 ; $89
+ mapconst CELADON_DINER, 4, 5 ; $8A
+ mapconst CELADON_CHIEF_HOUSE, 4, 4 ; $8B
+ mapconst CELADON_HOTEL, 4, 7 ; $8C
+ mapconst LAVENDER_POKECENTER, 4, 7 ; $8D
+ mapconst POKEMON_TOWER_1F, 9, 10 ; $8E
+ mapconst POKEMON_TOWER_2F, 9, 10 ; $8F
+ mapconst POKEMON_TOWER_3F, 9, 10 ; $90
+ mapconst POKEMON_TOWER_4F, 9, 10 ; $91
+ mapconst POKEMON_TOWER_5F, 9, 10 ; $92
+ mapconst POKEMON_TOWER_6F, 9, 10 ; $93
+ mapconst POKEMON_TOWER_7F, 9, 10 ; $94
+ mapconst MR_FUJIS_HOUSE, 4, 4 ; $95
+ mapconst LAVENDER_MART, 4, 4 ; $96
+ mapconst LAVENDER_CUBONE_HOUSE, 4, 4 ; $97
+ mapconst FUCHSIA_MART, 4, 4 ; $98
+ mapconst FUCHSIA_BILLS_GRANDPAS_HOUSE, 4, 4 ; $99
+ mapconst FUCHSIA_POKECENTER, 4, 7 ; $9A
+ mapconst WARDENS_HOUSE, 4, 5 ; $9B
+ mapconst SAFARI_ZONE_GATE, 3, 4 ; $9C
+ mapconst FUCHSIA_GYM, 9, 5 ; $9D
+ mapconst FUCHSIA_MEETING_ROOM, 4, 7 ; $9E
+ mapconst SEAFOAM_ISLANDS_B1F, 9, 15 ; $9F
+ mapconst SEAFOAM_ISLANDS_B2F, 9, 15 ; $A0
+ mapconst SEAFOAM_ISLANDS_B3F, 9, 15 ; $A1
+ mapconst SEAFOAM_ISLANDS_B4F, 9, 15 ; $A2
+ mapconst VERMILION_OLD_ROD_HOUSE, 4, 4 ; $A3
+ mapconst FUCHSIA_GOOD_ROD_HOUSE, 4, 4 ; $A4
+ mapconst POKEMON_MANSION_1F, 14, 15 ; $A5
+ mapconst CINNABAR_GYM, 9, 10 ; $A6
+ mapconst CINNABAR_LAB, 4, 9 ; $A7
+ mapconst CINNABAR_LAB_TRADE_ROOM, 4, 4 ; $A8
+ mapconst CINNABAR_LAB_METRONOME_ROOM, 4, 4 ; $A9
+ mapconst CINNABAR_LAB_FOSSIL_ROOM, 4, 4 ; $AA
+ mapconst CINNABAR_POKECENTER, 4, 7 ; $AB
+ mapconst CINNABAR_MART, 4, 4 ; $AC
+ mapconst CINNABAR_MART_COPY, 4, 4 ; $AD
+ mapconst INDIGO_PLATEAU_LOBBY, 6, 8 ; $AE
+ mapconst COPYCATS_HOUSE_1F, 4, 4 ; $AF
+ mapconst COPYCATS_HOUSE_2F, 4, 4 ; $B0
+ mapconst FIGHTING_DOJO, 6, 5 ; $B1
+ mapconst SAFFRON_GYM, 9, 10 ; $B2
+ mapconst SAFFRON_PIDGEY_HOUSE, 4, 4 ; $B3
+ mapconst SAFFRON_MART, 4, 4 ; $B4
+ mapconst SILPH_CO_1F, 9, 15 ; $B5
+ mapconst SAFFRON_POKECENTER, 4, 7 ; $B6
+ mapconst MR_PSYCHICS_HOUSE, 4, 4 ; $B7
+ mapconst ROUTE_15_GATE_1F, 5, 4 ; $B8
+ mapconst ROUTE_15_GATE_2F, 4, 4 ; $B9
+ mapconst ROUTE_16_GATE_1F, 7, 4 ; $BA
+ mapconst ROUTE_16_GATE_2F, 4, 4 ; $BB
+ mapconst ROUTE_16_FLY_HOUSE, 4, 4 ; $BC
+ mapconst ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; $BD
+ mapconst ROUTE_18_GATE_1F, 5, 4 ; $BE
+ mapconst ROUTE_18_GATE_2F, 4, 4 ; $BF
+ mapconst SEAFOAM_ISLANDS_1F, 9, 15 ; $C0
+ mapconst ROUTE_22_GATE, 4, 5 ; $C1
+ mapconst VICTORY_ROAD_2F, 9, 15 ; $C2
+ mapconst ROUTE_12_GATE_2F, 4, 4 ; $C3
+ mapconst VERMILION_TRADE_HOUSE, 4, 4 ; $C4
+ mapconst DIGLETTS_CAVE, 18, 20 ; $C5
+ mapconst VICTORY_ROAD_3F, 9, 15 ; $C6
+ mapconst ROCKET_HIDEOUT_B1F, 14, 15 ; $C7
+ mapconst ROCKET_HIDEOUT_B2F, 14, 15 ; $C8
+ mapconst ROCKET_HIDEOUT_B3F, 14, 15 ; $C9
+ mapconst ROCKET_HIDEOUT_B4F, 12, 15 ; $CA
+ mapconst ROCKET_HIDEOUT_ELEVATOR, 4, 3 ; $CB
+ mapconst UNUSED_MAP_CC, 0, 0 ; $CC
+ mapconst UNUSED_MAP_CD, 0, 0 ; $CD
+ mapconst UNUSED_MAP_CE, 0, 0 ; $CE
+ mapconst SILPH_CO_2F, 9, 15 ; $CF
+ mapconst SILPH_CO_3F, 9, 15 ; $D0
+ mapconst SILPH_CO_4F, 9, 15 ; $D1
+ mapconst SILPH_CO_5F, 9, 15 ; $D2
+ mapconst SILPH_CO_6F, 9, 13 ; $D3
+ mapconst SILPH_CO_7F, 9, 13 ; $D4
+ mapconst SILPH_CO_8F, 9, 13 ; $D5
+ mapconst POKEMON_MANSION_2F, 14, 15 ; $D6
+ mapconst POKEMON_MANSION_3F, 9, 15 ; $D7
+ mapconst POKEMON_MANSION_B1F, 14, 15 ; $D8
+ mapconst SAFARI_ZONE_EAST, 13, 15 ; $D9
+ mapconst SAFARI_ZONE_NORTH, 18, 20 ; $DA
+ mapconst SAFARI_ZONE_WEST, 13, 15 ; $DB
+ mapconst SAFARI_ZONE_CENTER, 13, 15 ; $DC
+ mapconst SAFARI_ZONE_CENTER_REST_HOUSE, 4, 4 ; $DD
+ mapconst SAFARI_ZONE_SECRET_HOUSE, 4, 4 ; $DE
+ mapconst SAFARI_ZONE_WEST_REST_HOUSE, 4, 4 ; $DF
+ mapconst SAFARI_ZONE_EAST_REST_HOUSE, 4, 4 ; $E0
+ mapconst SAFARI_ZONE_NORTH_REST_HOUSE, 4, 4 ; $E1
+ mapconst CERULEAN_CAVE_2F, 9, 15 ; $E2
+ mapconst CERULEAN_CAVE_B1F, 9, 15 ; $E3
+ mapconst CERULEAN_CAVE_1F, 9, 15 ; $E4
+ mapconst NAME_RATERS_HOUSE, 4, 4 ; $E5
+ mapconst CERULEAN_BADGE_HOUSE, 4, 4 ; $E6
+ mapconst UNUSED_MAP_E7, 0, 0 ; $E7
+ mapconst ROCK_TUNNEL_B1F, 18, 20 ; $E8
+ mapconst SILPH_CO_9F, 9, 13 ; $E9
+ mapconst SILPH_CO_10F, 9, 8 ; $EA
+ mapconst SILPH_CO_11F, 9, 9 ; $EB
+ mapconst SILPH_CO_ELEVATOR, 2, 2 ; $EC
+ mapconst UNUSED_MAP_ED, 0, 0 ; $ED
+ mapconst UNUSED_MAP_EE, 0, 0 ; $EE
+ mapconst TRADE_CENTER, 4, 5 ; $EF
+ mapconst COLOSSEUM, 4, 5 ; $F0
+ mapconst UNUSED_MAP_F1, 0, 0 ; $F1
+ mapconst UNUSED_MAP_F2, 0, 0 ; $F2
+ mapconst UNUSED_MAP_F3, 0, 0 ; $F3
+ mapconst UNUSED_MAP_F4, 0, 0 ; $F4
+ mapconst LORELEIS_ROOM, 6, 5 ; $F5
+ mapconst BRUNOS_ROOM, 6, 5 ; $F6
+ mapconst AGATHAS_ROOM, 6, 5 ; $F7
+ mapconst BEACH_HOUSE, 4, 7 ; $F8
diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm
index 8e5b9866..bc8a767c 100644
--- a/constants/misc_constants.asm
+++ b/constants/misc_constants.asm
@@ -45,6 +45,8 @@ 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
@@ -110,12 +112,12 @@ ZZZ_BUBBLE EQU 6
FISH_BUBBLE EQU 7
; slot symbols
-SLOTS7 EQU $0200
-SLOTSBAR EQU $0604
-SLOTSCHERRY EQU $0A08
-SLOTSFISH EQU $0E0C
-SLOTSBIRD EQU $1210
-SLOTSMOUSE EQU $1614
+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
@@ -125,7 +127,7 @@ TMHM_PARTY_MENU EQU 3
SWAP_MONS_PARTY_MENU EQU 4
EVO_STONE_PARTY_MENU EQU 5
-; party memu message IDs
+; party menu message IDs
ANTIDOTE_MSG EQU $F0
BURN_HEAL_MSG EQU $F1
ICE_HEAL_MSG EQU $F2
@@ -208,6 +210,10 @@ 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
+
; pikachu happiness modifiers
const_value set 1
const PIKAHAPPY_LEVELUP
diff --git a/constants/music_constants.asm b/constants/music_constants.asm
index 2fc4a0dc..bf37dea9 100644
--- a/constants/music_constants.asm
+++ b/constants/music_constants.asm
@@ -20,19 +20,28 @@ REG_DUTY_SOUND_LEN EQU 1
REG_VOLUME_ENVELOPE EQU 2
REG_FREQUENCY_LO EQU 3
-MAX_SFX_ID EQU $B9
+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"
+MAX_SFX_ID_4 EQUS "SFX_GET_ITEM2_4_2 + 2"
-CRY_SFX_START EQU $14
-CRY_SFX_END EQU $86
+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 toggleperfectpitch command
-BIT_CHANNEL_CALL EQU 1 ; if in channel 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_BEND_ON EQU 4 ; if pitch bend is active
-BIT_PITCH_BEND_DECREASING EQU 5 ; if the pitch bend frequency is decreasing (instead of increasing)
-BIT_ROTATE_DUTY EQU 6 ; if rotating duty
+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
@@ -83,7 +92,7 @@ ENDM
music_const MUSIC_BIKE_RIDING, Music_BikeRiding
music_const MUSIC_SURFING, Music_Surfing
music_const MUSIC_GAME_CORNER, Music_GameCorner
- music_const MUSIC_INTRO_BATTLE, Music_IntroBattle
+ music_const MUSIC_YELLOW_INTRO, Music_YellowIntro
music_const MUSIC_DUNGEON1, Music_Dungeon1
music_const MUSIC_DUNGEON2, Music_Dungeon2
music_const MUSIC_DUNGEON3, Music_Dungeon3
@@ -96,30 +105,30 @@ ENDM
; AUDIO_4
music_const MUSIC_SURFING_PIKACHU, Music_SurfingPikachu
- music_const MUSIC_MEET_JESSIE_JAMES, Music_MeetJessieJames
+ music_const MUSIC_MEET_JESSIE_JAMES, Music_MeetJessieJames
music_const MUSIC_YELLOW_UNUSED_SONG, Music_YellowUnusedSong
music_const MUSIC_GB_PRINTER, Music_GBPrinter
; AUDIO_1 AUDIO_2 AUDIO_3 AUDIO_4
- music_const SFX_SNARE_1, SFX_Snare1_1
- music_const SFX_SNARE_2, SFX_Snare2_1
- music_const SFX_SNARE_3, SFX_Snare3_1
- music_const SFX_SNARE_4, SFX_Snare4_1
- music_const SFX_SNARE_5, SFX_Snare5_1
- music_const SFX_TRIANGLE_1, SFX_Triangle1_1
- music_const SFX_TRIANGLE_2, SFX_Triangle2_1
- music_const SFX_SNARE_6, SFX_Snare6_1
- music_const SFX_SNARE_7, SFX_Snare7_1
- music_const SFX_SNARE_8, SFX_Snare8_1
- music_const SFX_SNARE_9, SFX_Snare9_1
- music_const SFX_CYMBAL_1, SFX_Cymbal1_1
- music_const SFX_CYMBAL_2, SFX_Cymbal2_1
- music_const SFX_CYMBAL_3, SFX_Cymbal3_1
- music_const SFX_MUTED_SNARE_1, SFX_Muted_Snare1_1
- music_const SFX_TRIANGLE_3, SFX_Triangle3_1
- music_const SFX_MUTED_SNARE_2, SFX_Muted_Snare2_1
- music_const SFX_MUTED_SNARE_3, SFX_Muted_Snare3_1
- music_const SFX_MUTED_SNARE_4, SFX_Muted_Snare4_1
+ 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
+ music_const SFX_NOISE_INSTRUMENT04, SFX_Noise_Instrument04_1
+ music_const SFX_NOISE_INSTRUMENT05, SFX_Noise_Instrument05_1
+ music_const SFX_NOISE_INSTRUMENT06, SFX_Noise_Instrument06_1
+ music_const SFX_NOISE_INSTRUMENT07, SFX_Noise_Instrument07_1
+ music_const SFX_NOISE_INSTRUMENT08, SFX_Noise_Instrument08_1
+ music_const SFX_NOISE_INSTRUMENT09, SFX_Noise_Instrument09_1
+ music_const SFX_NOISE_INSTRUMENT10, SFX_Noise_Instrument10_1
+ music_const SFX_NOISE_INSTRUMENT11, SFX_Noise_Instrument11_1
+ music_const SFX_NOISE_INSTRUMENT12, SFX_Noise_Instrument12_1
+ music_const SFX_NOISE_INSTRUMENT13, SFX_Noise_Instrument13_1
+ music_const SFX_NOISE_INSTRUMENT14, SFX_Noise_Instrument14_1
+ music_const SFX_NOISE_INSTRUMENT15, SFX_Noise_Instrument15_1
+ music_const SFX_NOISE_INSTRUMENT16, SFX_Noise_Instrument16_1
+ 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
music_const SFX_CRY_00, SFX_Cry00_1
music_const SFX_CRY_01, SFX_Cry01_1
music_const SFX_CRY_02, SFX_Cry02_1
@@ -247,13 +256,13 @@ ENDM
music_const SFX_BATTLE_26, SFX_Battle_26
music_const SFX_BATTLE_27, SFX_Battle_27
music_const SFX_BATTLE_28, SFX_Battle_28
- music_const SFX_EARTHQUAKE, SFX_Earthquake
+ music_const SFX_BATTLE_29, SFX_Battle_29
music_const SFX_BATTLE_2A, SFX_Battle_2A
music_const SFX_BATTLE_2B, SFX_Battle_2B
music_const SFX_BATTLE_2C, SFX_Battle_2C
music_const SFX_PSYBEAM, SFX_Psybeam
music_const SFX_BATTLE_2E, SFX_Battle_2E
- music_const SFX_THUNDERBOLT, SFX_Thunderbolt
+ music_const SFX_BATTLE_2F, SFX_Battle_2F
music_const SFX_PSYCHIC_M, SFX_Psychic_M
music_const SFX_BATTLE_31, SFX_Battle_31
music_const SFX_BATTLE_32, SFX_Battle_32
@@ -276,10 +285,10 @@ ENDM
music_const SFX_SHOOTING_STAR, SFX_Shooting_Star
; AUDIO_4
- music_const SFX_SURFING_ADD_POINTS, SFX_Surfing_Add_Points
- music_const SFX_SURFING_JUMP, SFX_Surfing_Jump
- music_const SFX_SURFING_FLIP, SFX_Surfing_Flip
- music_const SFX_SURFING_LAND, SFX_Surfing_Land
- music_const SFX_UNKNOWN_801BC_4, SFX_801bc_4
- music_const SFX_SURFING_CRASH, SFX_Surfing_Crash
- music_const SFX_GET_ITEM2_4_2, SFX_Get_Item2_4_2 \ No newline at end of file
+ music_const SFX_SURFING_ADD_POINTS, SFX_Surfing_Add_Points
+ music_const SFX_SURFING_JUMP, SFX_Surfing_Jump
+ music_const SFX_SURFING_FLIP, SFX_Surfing_Flip
+ music_const SFX_SURFING_LAND, SFX_Surfing_Land
+ music_const SFX_UNKNOWN_801BC_4, SFX_801bc_4
+ music_const SFX_SURFING_CRASH, SFX_Surfing_Crash
+ music_const SFX_GET_ITEM2_4_2, SFX_Get_Item2_4_2
diff --git a/constants/oam_constants.asm b/constants/oam_constants.asm
index 8e855fc9..9eb52385 100755
--- a/constants/oam_constants.asm
+++ b/constants/oam_constants.asm
@@ -5,8 +5,17 @@ OAMFLAG_VFLIPPED EQU %00100000 ; OAM flag flips the sprite vertically.
; Used for making left facing sprites face right and to alternate between left and right foot animation when walking up or down
; OAM attribute flags
-OAM_HFLIP EQU %00100000 ; horizontal flip
-OAM_VFLIP EQU %01000000 ; vertical flip
+OAM_PALETTE EQU %111
+OAM_TILE_BANK EQU 3
+OAM_OBP_NUM EQU 4 ; Non CGB Mode Only
+OAM_X_FLIP EQU 5
+OAM_Y_FLIP EQU 6
+OAM_PRIORITY EQU 7 ; 0: OBJ above BG, 1: OBJ behind BG (colors 1-3)
+
+; OAM attribute masks
+OAM_HFLIP EQU 1 << OAM_X_FLIP ; horizontal flip
+OAM_VFLIP EQU 1 << OAM_Y_FLIP ; vertical flip
+OAM_BEHIND_BG EQU 1 << OAM_PRIORITY ; behind bg (except color 0)
frame: MACRO
db \1
diff --git a/constants/palette_constants.asm b/constants/palette_constants.asm
index fda3b470..0988b361 100755
--- a/constants/palette_constants.asm
+++ b/constants/palette_constants.asm
@@ -1,3 +1,10 @@
+; monochrome palette color ids
+ const_def
+ const WHITE
+ const LIGHT_GRAY
+ const DARK_GRAY
+ const BLACK
+
SET_PAL_BATTLE_BLACK EQU $00
SET_PAL_BATTLE EQU $01
SET_PAL_TOWN_MAP EQU $02
diff --git a/constants/pikachu_emotion_constants.asm b/constants/pikachu_emotion_constants.asm
index 25d9a7aa..feb4a438 100644
--- a/constants/pikachu_emotion_constants.asm
+++ b/constants/pikachu_emotion_constants.asm
@@ -133,23 +133,23 @@ pikacry: MACRO
endm
- enum_start
- enum pikapic_nop_command
+ const_def
+ const pikapic_nop_command
pikapic_nop: macro
db pikapic_nop_command
endm
- enum pikapic_writebyte_command
+ const pikapic_writebyte_command
pikapic_writebyte: macro
db pikapic_writebyte_command, \1
endm
- enum pikapic_loadgfx_command
+ const pikapic_loadgfx_command
pikapic_loadgfx: macro
db pikapic_loadgfx_command, (\1_id - PikaPicAnimGFXHeaders) / 4
endm
- enum pikapic_animation_command
+ const pikapic_animation_command
pikapic_animation: macro
; frameset pointer, starting vtile, y offset, x offset
db pikapic_animation_command
@@ -157,42 +157,42 @@ pikapic_animation: macro
db 0, \2, \3, \4
endm
- enum pikapic_nop4_command
+ const pikapic_nop4_command
pikapic_nop4: macro
db pikapic_nop4_command
endm
- enum pikapic_nop5_command
+ const pikapic_nop5_command
pikapic_nop5: macro
db pikapic_nop5_command
endm
- enum pikapic_waitbgmapeleteobject_command
+ const pikapic_waitbgmapeleteobject_command
pikapic_waitbgmapeleteobject: macro
db pikapic_waitbgmapeleteobject_command, \1
endm
- enum pikapic_nop7_command
+ const pikapic_nop7_command
pikapic_nop7: macro
db pikapic_nop7_command
endm
- enum pikapic_nop8_command
+ const pikapic_nop8_command
pikapic_nop8: macro
db pikapic_nop8_command
endm
- enum pikapic_jump_command
+ const pikapic_jump_command
pikapic_jump: macro ; 9
dbw pikapic_jump_command, \1
endm
- enum pikapic_setduration_command
+ const pikapic_setduration_command
pikapic_setduration: macro ; a
dbw pikapic_setduration_command, \1
endm
- enum pikapic_cry_command
+ const pikapic_cry_command
pikapic_cry: macro ; b
db pikapic_cry_command
IF _NARG == 0
@@ -202,17 +202,17 @@ else
endc
endm
- enum pikapic_thunderbolt_command
+ const pikapic_thunderbolt_command
pikapic_thunderbolt: macro ; c
db pikapic_thunderbolt_command
endm
- enum pikapic_waitbgmap_command
+ const pikapic_waitbgmap_command
pikapic_waitbgmap: macro ; d
db pikapic_waitbgmap_command
endm
- enum pikapic_ret_command
+ const pikapic_ret_command
pikapic_ret: macro ; e
db pikapic_ret_command
endm
diff --git a/constants/pokedex_constants.asm b/constants/pokedex_constants.asm
index 360fbb4c..b80547f7 100644
--- a/constants/pokedex_constants.asm
+++ b/constants/pokedex_constants.asm
@@ -152,4 +152,4 @@ const_value = 1
const DEX_MEWTWO ; 150
const DEX_MEW ; 151
-NUM_POKEMON EQU 151
+NUM_POKEMON EQU const_value + -1
diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm
index 96d44ef5..f8a38731 100644
--- a/constants/pokemon_constants.asm
+++ b/constants/pokemon_constants.asm
@@ -136,7 +136,7 @@ const_value = 1
const MISSINGNO_86 ; $86
const MISSINGNO_87 ; $87
const MUK ; $88
- const MISSINGNO_8A ; $8A
+ const MISSINGNO_89 ; $89
const KINGLER ; $8A
const CLOYSTER ; $8B
const MISSINGNO_8C ; $8C
@@ -190,3 +190,5 @@ const_value = 1
const BELLSPROUT ; $BC
const WEEPINBELL ; $BD
const VICTREEBEL ; $BE
+
+NUM_POKEMON_INDEXES EQU const_value + -1
diff --git a/constants/status_constants.asm b/constants/status_constants.asm
index d9be6250..25babb82 100755
--- a/constants/status_constants.asm
+++ b/constants/status_constants.asm
@@ -6,27 +6,27 @@ FRZ EQU 5
PAR EQU 6
; volatile statuses 1
-StoringEnergy EQU 0 ; Bide
-ThrashingAbout EQU 1 ; e.g. Thrash
-AttackingMultipleTimes EQU 2 ; e.g. Double Kick, Fury Attack
-Flinched EQU 3
-ChargingUp EQU 4 ; e.g. Solar Beam, Fly
-UsingTrappingMove EQU 5 ; e.g. Wrap
-Invulnerable EQU 6 ; charging up Fly/Dig
-Confused EQU 7
+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
-UsingXAccuracy EQU 0
-ProtectedByMist EQU 1
-GettingPumped EQU 2 ; Focus Energy
-; EQU 3 ; unused?
-HasSubstituteUp EQU 4
-NeedsToRecharge EQU 5 ; Hyper Beam
-UsingRage EQU 6
-Seeded EQU 7
+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
-BadlyPoisoned EQU 0
-HasLightScreenUp EQU 1
-HasReflectUp EQU 2
-Transformed EQU 3
+BADLY_POISONED EQU 0
+HAS_LIGHT_SCREEN_UP EQU 1
+HAS_REFLECT_UP EQU 2
+TRANSFORMED EQU 3
diff --git a/constants/trainer_constants.asm b/constants/trainer_constants.asm
index e11cc4aa..65b60cc5 100755
--- a/constants/trainer_constants.asm
+++ b/constants/trainer_constants.asm
@@ -1,6 +1,8 @@
+OPP_ID_OFFSET EQU 200
+
trainer_const: MACRO
\1 EQU const_value
-OPP_\1 EQU const_value + 200
+OPP_\1 EQU const_value + OPP_ID_OFFSET
const_value = const_value + 1
ENDM
diff --git a/data/baseStats/victreebel.asm b/data/baseStats/victreebel.asm
index 685ece60..56bfd25a 100644
--- a/data/baseStats/victreebel.asm
+++ b/data/baseStats/victreebel.asm
@@ -1,4 +1,4 @@
-db DEX_VICTREEBEL ; pokedex id
+db DEX_VICTREEBEL ; pokedex id
db 80 ; base hp
db 105 ; base attack
db 65 ; base defense
diff --git a/data/evos_moves.asm b/data/evos_moves.asm
index d819b916..27397eb0 100755
--- a/data/evos_moves.asm
+++ b/data/evos_moves.asm
@@ -1,2349 +1,2161 @@
+; See constants/evolution_constants.asm
+; The max number of evolutions per monster is MAX_EVOLUTIONS
+
EvosMovesPointerTable:
- dw Mon112_EvosMoves
- dw Mon115_EvosMoves
- dw Mon032_EvosMoves
- dw Mon035_EvosMoves
- dw Mon021_EvosMoves
- dw Mon100_EvosMoves
- dw Mon034_EvosMoves
- dw Mon080_EvosMoves
- dw Mon002_EvosMoves
- dw Mon103_EvosMoves
- dw Mon108_EvosMoves
- dw Mon102_EvosMoves
- dw Mon088_EvosMoves
- dw Mon094_EvosMoves
- dw Mon029_EvosMoves
- dw Mon031_EvosMoves
- dw Mon104_EvosMoves
- dw Mon111_EvosMoves
- dw Mon131_EvosMoves
- dw Mon059_EvosMoves
- dw Mon151_EvosMoves
- dw Mon130_EvosMoves
- dw Mon090_EvosMoves
- dw Mon072_EvosMoves
- dw Mon092_EvosMoves
- dw Mon123_EvosMoves
- dw Mon120_EvosMoves
- dw Mon009_EvosMoves
- dw Mon127_EvosMoves
- dw Mon114_EvosMoves
- dw Mon152_EvosMoves ;MissingNo
- dw Mon153_EvosMoves ;MissingNo
- dw Mon058_EvosMoves
- dw Mon095_EvosMoves
- dw Mon022_EvosMoves
- dw Mon016_EvosMoves
- dw Mon079_EvosMoves
- dw Mon064_EvosMoves
- dw Mon075_EvosMoves
- dw Mon113_EvosMoves
- dw Mon067_EvosMoves
- dw Mon122_EvosMoves
- dw Mon106_EvosMoves
- dw Mon107_EvosMoves
- dw Mon024_EvosMoves
- dw Mon047_EvosMoves
- dw Mon054_EvosMoves
- dw Mon096_EvosMoves
- dw Mon076_EvosMoves
- dw Mon154_EvosMoves ;MissingNo
- dw Mon126_EvosMoves
- dw Mon155_EvosMoves ;MissingNo
- dw Mon125_EvosMoves
- dw Mon082_EvosMoves
- dw Mon109_EvosMoves
- dw Mon156_EvosMoves ;MissingNo
- dw Mon056_EvosMoves
- dw Mon086_EvosMoves
- dw Mon050_EvosMoves
- dw Mon128_EvosMoves
- dw Mon157_EvosMoves ;MissingNo
- dw Mon158_EvosMoves ;MissingNo
- dw Mon159_EvosMoves ;MissingNo
- dw Mon083_EvosMoves
- dw Mon048_EvosMoves
- dw Mon149_EvosMoves
- dw Mon160_EvosMoves ;MissingNo
- dw Mon161_EvosMoves ;MissingNo
- dw Mon162_EvosMoves ;MissingNo
- dw Mon084_EvosMoves
- dw Mon060_EvosMoves
- dw Mon124_EvosMoves
- dw Mon146_EvosMoves
- dw Mon144_EvosMoves
- dw Mon145_EvosMoves
- dw Mon132_EvosMoves
- dw Mon052_EvosMoves
- dw Mon098_EvosMoves
- dw Mon163_EvosMoves ;MissingNo
- dw Mon164_EvosMoves ;MissingNo
- dw Mon165_EvosMoves ;MissingNo
- dw Mon037_EvosMoves
- dw Mon038_EvosMoves
- dw Mon025_EvosMoves
- dw Mon026_EvosMoves
- dw Mon166_EvosMoves ;MissingNo
- dw Mon167_EvosMoves ;MissingNo
- dw Mon147_EvosMoves
- dw Mon148_EvosMoves
- dw Mon140_EvosMoves
- dw Mon141_EvosMoves
- dw Mon116_EvosMoves
- dw Mon117_EvosMoves
- dw Mon168_EvosMoves ;MissingNo
- dw Mon169_EvosMoves ;MissingNo
- dw Mon027_EvosMoves
- dw Mon028_EvosMoves
- dw Mon138_EvosMoves
- dw Mon139_EvosMoves
- dw Mon039_EvosMoves
- dw Mon040_EvosMoves
- dw Mon133_EvosMoves
- dw Mon136_EvosMoves
- dw Mon135_EvosMoves
- dw Mon134_EvosMoves
- dw Mon066_EvosMoves
- dw Mon041_EvosMoves
- dw Mon023_EvosMoves
- dw Mon046_EvosMoves
- dw Mon061_EvosMoves
- dw Mon062_EvosMoves
- dw Mon013_EvosMoves
- dw Mon014_EvosMoves
- dw Mon015_EvosMoves
- dw Mon170_EvosMoves ;MissingNo
- dw Mon085_EvosMoves
- dw Mon057_EvosMoves
- dw Mon051_EvosMoves
- dw Mon049_EvosMoves
- dw Mon087_EvosMoves
- dw Mon171_EvosMoves ;MissingNo
- dw Mon172_EvosMoves ;MissingNo
- dw Mon010_EvosMoves
- dw Mon011_EvosMoves
- dw Mon012_EvosMoves
- dw Mon068_EvosMoves
- dw Mon173_EvosMoves ;MissingNo
- dw Mon055_EvosMoves
- dw Mon097_EvosMoves
- dw Mon042_EvosMoves
- dw Mon150_EvosMoves
- dw Mon143_EvosMoves
- dw Mon129_EvosMoves
- dw Mon174_EvosMoves ;MissingNo
- dw Mon175_EvosMoves ;MissingNo
- dw Mon089_EvosMoves
- dw Mon176_EvosMoves ;MissingNo
- dw Mon099_EvosMoves
- dw Mon091_EvosMoves
- dw Mon177_EvosMoves ;MissingNo
- dw Mon101_EvosMoves
- dw Mon036_EvosMoves
- dw Mon110_EvosMoves
- dw Mon053_EvosMoves
- dw Mon105_EvosMoves
- dw Mon178_EvosMoves ;MissingNo
- dw Mon093_EvosMoves
- dw Mon063_EvosMoves
- dw Mon065_EvosMoves
- dw Mon017_EvosMoves
- dw Mon018_EvosMoves
- dw Mon121_EvosMoves
- dw Mon001_EvosMoves
- dw Mon003_EvosMoves
- dw Mon073_EvosMoves
- dw Mon179_EvosMoves ;MissingNo
- dw Mon118_EvosMoves
- dw Mon119_EvosMoves
- dw Mon180_EvosMoves ;MissingNo
- dw Mon181_EvosMoves ;MissingNo
- dw Mon182_EvosMoves ;MissingNo
- dw Mon183_EvosMoves ;MissingNo
- dw Mon077_EvosMoves
- dw Mon078_EvosMoves
- dw Mon019_EvosMoves
- dw Mon020_EvosMoves
- dw Mon033_EvosMoves
- dw Mon030_EvosMoves
- dw Mon074_EvosMoves
- dw Mon137_EvosMoves
- dw Mon142_EvosMoves
- dw Mon184_EvosMoves ;MissingNo
- dw Mon081_EvosMoves
- dw Mon185_EvosMoves ;MissingNo
- dw Mon186_EvosMoves ;MissingNo
- dw Mon004_EvosMoves
- dw Mon007_EvosMoves
- dw Mon005_EvosMoves
- dw Mon008_EvosMoves
- dw Mon006_EvosMoves
- dw Mon187_EvosMoves ;MissingNo
- dw Mon188_EvosMoves ;MissingNo
- dw Mon189_EvosMoves ;MissingNo
- dw Mon190_EvosMoves ;MissingNo
- dw Mon043_EvosMoves
- dw Mon044_EvosMoves
- dw Mon045_EvosMoves
- dw Mon069_EvosMoves
- dw Mon070_EvosMoves
- dw Mon071_EvosMoves
-
-Mon112_EvosMoves:
-;RHYDON
-;Evolutions
- db 0
-;Learnset
- db 30,STOMP
- db 35,TAIL_WHIP
- db 40,FURY_ATTACK
- db 48,HORN_DRILL
- db 55,LEER
- db 64,TAKE_DOWN
- db 0
-
-Mon115_EvosMoves:
-;KANGASKHAN
-;Evolutions
- db 0
-;Learnset
- db 26,BITE
- db 31,TAIL_WHIP
- db 36,MEGA_PUNCH
- db 41,LEER
- db 46,DIZZY_PUNCH
- db 0
-
-Mon032_EvosMoves:
-;NIDORAN_M
-;Evolutions
- db EV_LEVEL,16,NIDORINO
- db 0
-;Learnset
- db 8,HORN_ATTACK
- db 12,DOUBLE_KICK
- db 17,POISON_STING
- db 23,FOCUS_ENERGY
- db 30,FURY_ATTACK
- db 38,HORN_DRILL
- db 0
-
-Mon035_EvosMoves:
-;CLEFAIRY
-;Evolutions
- db EV_ITEM,MOON_STONE,1,CLEFABLE
- db 0
-;Learnset
- db 13,SING
- db 18,DOUBLESLAP
- db 24,MINIMIZE
- db 31,METRONOME
- db 39,DEFENSE_CURL
- db 48,LIGHT_SCREEN
- db 0
-
-Mon021_EvosMoves:
-;SPEAROW
-;Evolutions
- db EV_LEVEL,20,FEAROW
- db 0
-;Learnset
- db 9,LEER
- db 15,FURY_ATTACK
- db 22,MIRROR_MOVE
- db 29,DRILL_PECK
- db 36,AGILITY
- db 0
-
-Mon100_EvosMoves:
-;VOLTORB
-;Evolutions
- db EV_LEVEL,30,ELECTRODE
- db 0
-;Learnset
- db 17,SONICBOOM
- db 22,SELFDESTRUCT
- db 29,LIGHT_SCREEN
- db 36,SWIFT
- db 43,EXPLOSION
- db 0
-
-Mon034_EvosMoves:
-;NIDOKING
-;Evolutions
- db 0
-;Learnset
- db 8,HORN_ATTACK
- db 12,DOUBLE_KICK
- db 23,THRASH
- db 0
-
-Mon080_EvosMoves:
-;SLOWBRO
-;Evolutions
- db 0
-;Learnset
- db 18,DISABLE
- db 22,HEADBUTT
- db 27,GROWL
- db 33,WATER_GUN
- db 37,WITHDRAW
- db 44,AMNESIA
- db 55,PSYCHIC_M
- db 0
-
-Mon002_EvosMoves:
-;IVYSAUR
-;Evolutions
- db EV_LEVEL,32,VENUSAUR
- db 0
-;Learnset
- db 7,LEECH_SEED
- db 13,VINE_WHIP
- db 22,POISONPOWDER
- db 30,RAZOR_LEAF
- db 38,GROWTH
- db 46,SLEEP_POWDER
- db 54,SOLARBEAM
- db 0
-
-Mon103_EvosMoves:
-;EXEGGUTOR
-;Evolutions
- db 0
-;Learnset
- db 28,STOMP
- db 0
-
-Mon108_EvosMoves:
-;LICKITUNG
-;Evolutions
- db 0
-;Learnset
- db 7,STOMP
- db 15,DISABLE
- db 23,DEFENSE_CURL
- db 31,SLAM
- db 39,SCREECH
- db 0
-
-Mon102_EvosMoves:
-;EXEGGCUTE
-;Evolutions
- db EV_ITEM,LEAF_STONE,1,EXEGGUTOR
- db 0
-;Learnset
- db 25,REFLECT
- db 28,LEECH_SEED
- db 32,STUN_SPORE
- db 37,POISONPOWDER
- db 42,SOLARBEAM
- db 48,SLEEP_POWDER
+ dw RhydonEvosMoves
+ dw KangaskhanEvosMoves
+ dw NidoranMEvosMoves
+ dw ClefairyEvosMoves
+ dw SpearowEvosMoves
+ dw VoltorbEvosMoves
+ dw NidokingEvosMoves
+ dw SlowbroEvosMoves
+ dw IvysaurEvosMoves
+ dw ExeggutorEvosMoves
+ dw LickitungEvosMoves
+ dw ExeggcuteEvosMoves
+ dw GrimerEvosMoves
+ dw GengarEvosMoves
+ dw NidoranFEvosMoves
+ dw NidoqueenEvosMoves
+ dw CuboneEvosMoves
+ dw RhyhornEvosMoves
+ dw LaprasEvosMoves
+ dw ArcanineEvosMoves
+ dw MewEvosMoves
+ dw GyaradosEvosMoves
+ dw ShellderEvosMoves
+ dw TentacoolEvosMoves
+ dw GastlyEvosMoves
+ dw ScytherEvosMoves
+ dw StaryuEvosMoves
+ dw BlastoiseEvosMoves
+ dw PinsirEvosMoves
+ dw TangelaEvosMoves
+ dw MissingNo1FEvosMoves
+ dw MissingNo20EvosMoves
+ dw GrowlitheEvosMoves
+ dw OnixEvosMoves
+ dw FearowEvosMoves
+ dw PidgeyEvosMoves
+ dw SlowpokeEvosMoves
+ dw KadabraEvosMoves
+ dw GravelerEvosMoves
+ dw ChanseyEvosMoves
+ dw MachokeEvosMoves
+ dw MrMimeEvosMoves
+ dw HitmonleeEvosMoves
+ dw HitmonchanEvosMoves
+ dw ArbokEvosMoves
+ dw ParasectEvosMoves
+ dw PsyduckEvosMoves
+ dw DrowzeeEvosMoves
+ dw GolemEvosMoves
+ dw MissingNo32EvosMoves
+ dw MagmarEvosMoves
+ dw MissingNo34EvosMoves
+ dw ElectabuzzEvosMoves
+ dw MagnetonEvosMoves
+ dw KoffingEvosMoves
+ dw MissingNo38EvosMoves
+ dw MankeyEvosMoves
+ dw SeelEvosMoves
+ dw DiglettEvosMoves
+ dw TaurosEvosMoves
+ dw MissingNo3DEvosMoves
+ dw MissingNo3EEvosMoves
+ dw MissingNo3FEvosMoves
+ dw FarfetchdEvosMoves
+ dw VenonatEvosMoves
+ dw DragoniteEvosMoves
+ dw MissingNo43EvosMoves
+ dw MissingNo44EvosMoves
+ dw MissingNo45EvosMoves
+ dw DoduoEvosMoves
+ dw PoliwagEvosMoves
+ dw JynxEvosMoves
+ dw MoltresEvosMoves
+ dw ArticunoEvosMoves
+ dw ZapdosEvosMoves
+ dw DittoEvosMoves
+ dw MeowthEvosMoves
+ dw KrabbyEvosMoves
+ dw MissingNo4FEvosMoves
+ dw MissingNo50EvosMoves
+ dw MissingNo51EvosMoves
+ dw VulpixEvosMoves
+ dw NinetalesEvosMoves
+ dw PikachuEvosMoves
+ dw RaichuEvosMoves
+ dw MissingNo56EvosMoves
+ dw MissingNo57EvosMoves
+ dw DratiniEvosMoves
+ dw DragonairEvosMoves
+ dw KabutoEvosMoves
+ dw KabutopsEvosMoves
+ dw HorseaEvosMoves
+ dw SeadraEvosMoves
+ dw MissingNo5EEvosMoves
+ dw MissingNo5FEvosMoves
+ dw SandshrewEvosMoves
+ dw SandslashEvosMoves
+ dw OmanyteEvosMoves
+ dw OmastarEvosMoves
+ dw JigglypuffEvosMoves
+ dw WigglytuffEvosMoves
+ dw EeveeEvosMoves
+ dw FlareonEvosMoves
+ dw JolteonEvosMoves
+ dw VaporeonEvosMoves
+ dw MachopEvosMoves
+ dw ZubatEvosMoves
+ dw EkansEvosMoves
+ dw ParasEvosMoves
+ dw PoliwhirlEvosMoves
+ dw PoliwrathEvosMoves
+ dw WeedleEvosMoves
+ dw KakunaEvosMoves
+ dw BeedrillEvosMoves
+ dw MissingNo73EvosMoves
+ dw DodrioEvosMoves
+ dw PrimeapeEvosMoves
+ dw DugtrioEvosMoves
+ dw VenomothEvosMoves
+ dw DewgongEvosMoves
+ dw MissingNo79EvosMoves
+ dw MissingNo7AEvosMoves
+ dw CaterpieEvosMoves
+ dw MetapodEvosMoves
+ dw ButterfreeEvosMoves
+ dw MachampEvosMoves
+ dw MissingNo7FEvosMoves
+ dw GolduckEvosMoves
+ dw HypnoEvosMoves
+ dw GolbatEvosMoves
+ dw MewtwoEvosMoves
+ dw SnorlaxEvosMoves
+ dw MagikarpEvosMoves
+ dw MissingNo86EvosMoves
+ dw MissingNo87EvosMoves
+ dw MukEvosMoves
+ dw MissingNo8AEvosMoves
+ dw KinglerEvosMoves
+ dw CloysterEvosMoves
+ dw MissingNo8CEvosMoves
+ dw ElectrodeEvosMoves
+ dw ClefableEvosMoves
+ dw WeezingEvosMoves
+ dw PersianEvosMoves
+ dw MarowakEvosMoves
+ dw MissingNo92EvosMoves
+ dw HaunterEvosMoves
+ dw AbraEvosMoves
+ dw AlakazamEvosMoves
+ dw PidgeottoEvosMoves
+ dw PidgeotEvosMoves
+ dw StarmieEvosMoves
+ dw BulbasaurEvosMoves
+ dw VenusaurEvosMoves
+ dw TentacruelEvosMoves
+ dw MissingNo9CEvosMoves
+ dw GoldeenEvosMoves
+ dw SeakingEvosMoves
+ dw MissingNo9FEvosMoves
+ dw MissingNoA0EvosMoves
+ dw MissingNoA1EvosMoves
+ dw MissingNoA2EvosMoves
+ dw PonytaEvosMoves
+ dw RapidashEvosMoves
+ dw RattataEvosMoves
+ dw RaticateEvosMoves
+ dw NidorinoEvosMoves
+ dw NidorinaEvosMoves
+ dw GeodudeEvosMoves
+ dw PorygonEvosMoves
+ dw AerodactylEvosMoves
+ dw MissingNoACEvosMoves
+ dw MagnemiteEvosMoves
+ dw MissingNoAEEvosMoves
+ dw MissingNoAFEvosMoves
+ dw CharmanderEvosMoves
+ dw SquirtleEvosMoves
+ dw CharmeleonEvosMoves
+ dw WartortleEvosMoves
+ dw CharizardEvosMoves
+ dw MissingNoB5EvosMoves
+ dw FossilKabutopsEvosMoves
+ dw FossilAerodactylEvosMoves
+ dw MonGhostEvosMoves
+ dw OddishEvosMoves
+ dw GloomEvosMoves
+ dw VileplumeEvosMoves
+ dw BellsproutEvosMoves
+ dw WeepinbellEvosMoves
+ dw VictreebelEvosMoves
+
+RhydonEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 30, STOMP
+ db 35, TAIL_WHIP
+ db 40, FURY_ATTACK
+ db 48, HORN_DRILL
+ db 55, LEER
+ db 64, TAKE_DOWN
+ db 0
+
+KangaskhanEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 26, BITE
+ db 31, TAIL_WHIP
+ db 36, MEGA_PUNCH
+ db 41, LEER
+ db 46, DIZZY_PUNCH
+ db 0
+
+NidoranMEvosMoves:
+; Evolutions
+ db EV_LEVEL, 16, NIDORINO
+ db 0
+; Learnset
+ db 8, HORN_ATTACK
+ db 12, DOUBLE_KICK
+ db 17, POISON_STING
+ db 23, FOCUS_ENERGY
+ db 30, FURY_ATTACK
+ db 38, HORN_DRILL
+ db 0
+
+ClefairyEvosMoves:
+; Evolutions
+ db EV_ITEM, MOON_STONE, 1, CLEFABLE
+ db 0
+; Learnset
+ db 13, SING
+ db 18, DOUBLESLAP
+ db 24, MINIMIZE
+ db 31, METRONOME
+ db 39, DEFENSE_CURL
+ db 48, LIGHT_SCREEN
+ db 0
+
+SpearowEvosMoves:
+; Evolutions
+ db EV_LEVEL, 20, FEAROW
+ db 0
+; Learnset
+ db 9, LEER
+ db 15, FURY_ATTACK
+ db 22, MIRROR_MOVE
+ db 29, DRILL_PECK
+ db 36, AGILITY
+ db 0
+
+VoltorbEvosMoves:
+; Evolutions
+ db EV_LEVEL, 30, ELECTRODE
+ db 0
+; Learnset
+ db 17, SONICBOOM
+ db 22, SELFDESTRUCT
+ db 29, LIGHT_SCREEN
+ db 36, SWIFT
+ db 43, EXPLOSION
+ db 0
+
+NidokingEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 8, HORN_ATTACK
+ db 12, DOUBLE_KICK
+ db 23, THRASH
+ db 0
+
+SlowbroEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 18, DISABLE
+ db 22, HEADBUTT
+ db 27, GROWL
+ db 33, WATER_GUN
+ db 37, WITHDRAW
+ db 44, AMNESIA
+ db 55, PSYCHIC_M
+ db 0
+
+IvysaurEvosMoves:
+; Evolutions
+ db EV_LEVEL, 32, VENUSAUR
+ db 0
+; Learnset
+ db 7, LEECH_SEED
+ db 13, VINE_WHIP
+ db 22, POISONPOWDER
+ db 30, RAZOR_LEAF
+ db 38, GROWTH
+ db 46, SLEEP_POWDER
+ db 54, SOLARBEAM
+ db 0
+
+ExeggutorEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 28, STOMP
+ db 0
+
+LickitungEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 7, STOMP
+ db 15, DISABLE
+ db 23, DEFENSE_CURL
+ db 31, SLAM
+ db 39, SCREECH
+ db 0
+
+ExeggcuteEvosMoves:
+; Evolutions
+ db EV_ITEM, LEAF_STONE, 1, EXEGGUTOR
+ db 0
+; Learnset
+ db 25, REFLECT
+ db 28, LEECH_SEED
+ db 32, STUN_SPORE
+ db 37, POISONPOWDER
+ db 42, SOLARBEAM
+ db 48, SLEEP_POWDER
+ db 0
+
+GrimerEvosMoves:
+; Evolutions
+ db EV_LEVEL, 38, MUK
+ db 0
+; Learnset
+ db 30, POISON_GAS
+ db 33, MINIMIZE
+ db 37, SLUDGE
+ db 42, HARDEN
+ db 48, SCREECH
+ db 55, ACID_ARMOR
+ db 0
+
+GengarEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 29, HYPNOSIS
+ db 38, DREAM_EATER
+ db 0
+
+NidoranFEvosMoves:
+; Evolutions
+ db EV_LEVEL, 16, NIDORINA
+ db 0
+; Learnset
+ db 8, SCRATCH
+ db 12, DOUBLE_KICK
+ db 17, POISON_STING
+ db 23, TAIL_WHIP
+ db 30, BITE
+ db 38, FURY_SWIPES
+ db 0
+
+NidoqueenEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 8, SCRATCH
+ db 12, DOUBLE_KICK
+ db 23, BODY_SLAM
+ db 0
+
+CuboneEvosMoves:
+; Evolutions
+ db EV_LEVEL, 28, MAROWAK
+ db 0
+; Learnset
+ db 10, BONE_CLUB
+ db 13, TAIL_WHIP
+ db 18, HEADBUTT
+ db 25, LEER
+ db 31, FOCUS_ENERGY
+ db 38, THRASH
+ db 43, BONEMERANG
+ db 46, RAGE
+ db 0
+
+RhyhornEvosMoves:
+; Evolutions
+ db EV_LEVEL, 42, RHYDON
+ db 0
+; Learnset
+ db 30, STOMP
+ db 35, TAIL_WHIP
+ db 40, FURY_ATTACK
+ db 45, HORN_DRILL
+ db 50, LEER
+ db 55, TAKE_DOWN
+ db 0
+
+LaprasEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 16, SING
+ db 20, MIST
+ db 25, BODY_SLAM
+ db 31, CONFUSE_RAY
+ db 38, ICE_BEAM
+ db 46, HYDRO_PUMP
+ db 0
+
+ArcanineEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 0
+
+MewEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 10, TRANSFORM
+ db 20, MEGA_PUNCH
+ db 30, METRONOME
+ db 40, PSYCHIC_M
+ db 0
+
+GyaradosEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 20, BITE
+ db 25, DRAGON_RAGE
+ db 32, LEER
+ db 41, HYDRO_PUMP
+ db 52, HYPER_BEAM
+ db 0
+
+ShellderEvosMoves:
+; Evolutions
+ db EV_ITEM, WATER_STONE, 1, CLOYSTER
+ db 0
+; Learnset
+ db 18, SUPERSONIC
+ db 23, CLAMP
+ db 30, AURORA_BEAM
+ db 39, LEER
+ db 50, ICE_BEAM
+ db 0
+
+TentacoolEvosMoves:
+; Evolutions
+ db EV_LEVEL, 30, TENTACRUEL
+ db 0
+; Learnset
+ db 7, SUPERSONIC
+ db 13, WRAP
+ db 18, POISON_STING
+ db 22, WATER_GUN
+ db 27, CONSTRICT
+ db 33, BARRIER
+ db 40, SCREECH
+ db 48, HYDRO_PUMP
+ db 0
+
+GastlyEvosMoves:
+; Evolutions
+ db EV_LEVEL, 25, HAUNTER
+ db 0
+; Learnset
+ db 27, HYPNOSIS
+ db 35, DREAM_EATER
+ db 0
+
+ScytherEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 17, LEER
+ db 20, FOCUS_ENERGY
+ db 24, DOUBLE_TEAM
+ db 29, SLASH
+ db 35, SWORDS_DANCE
+ db 42, AGILITY
+ db 50, WING_ATTACK
+ db 0
+
+StaryuEvosMoves:
+; Evolutions
+ db EV_ITEM, WATER_STONE, 1, STARMIE
+ db 0
+; Learnset
+ db 17, WATER_GUN
+ db 22, HARDEN
+ db 27, RECOVER
+ db 32, SWIFT
+ db 37, MINIMIZE
+ db 42, LIGHT_SCREEN
+ db 47, HYDRO_PUMP
+ db 0
+
+BlastoiseEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 8, BUBBLE
+ db 15, WATER_GUN
+ db 24, BITE
+ db 31, WITHDRAW
+ db 42, SKULL_BASH
+ db 52, HYDRO_PUMP
+ db 0
+
+PinsirEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 21, BIND
+ db 25, SEISMIC_TOSS
+ db 30, GUILLOTINE
+ db 36, FOCUS_ENERGY
+ db 43, HARDEN
+ db 49, SLASH
+ db 54, SWORDS_DANCE
+ db 0
+
+TangelaEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 24, BIND
+ db 27, ABSORB
+ db 29, VINE_WHIP
+ db 32, POISONPOWDER
+ db 36, STUN_SPORE
+ db 39, SLEEP_POWDER
+ db 45, SLAM
+ db 48, GROWTH
+ db 0
+
+MissingNo1FEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 0
+
+MissingNo20EvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 0
+
+GrowlitheEvosMoves:
+; Evolutions
+ db EV_ITEM, FIRE_STONE, 1, ARCANINE
+ db 0
+; Learnset
+ db 18, EMBER
+ db 23, LEER
+ db 30, TAKE_DOWN
+ db 39, AGILITY
+ db 50, FLAMETHROWER
+ db 0
+
+OnixEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 15, BIND
+ db 19, ROCK_THROW
+ db 25, RAGE
+ db 33, SLAM
+ db 43, HARDEN
+ db 0
+
+FearowEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 9, LEER
+ db 15, FURY_ATTACK
+ db 25, MIRROR_MOVE
+ db 34, DRILL_PECK
+ db 43, AGILITY
+ db 0
+
+PidgeyEvosMoves:
+; Evolutions
+ db EV_LEVEL, 18, PIDGEOTTO
+ db 0
+; Learnset
+ db 5, SAND_ATTACK
+ db 12, QUICK_ATTACK
+ db 19, WHIRLWIND
+ db 28, WING_ATTACK
+ db 36, AGILITY
+ db 44, MIRROR_MOVE
+ db 0
+
+SlowpokeEvosMoves:
+; Evolutions
+ db EV_LEVEL, 37, SLOWBRO
+ db 0
+; Learnset
+ db 18, DISABLE
+ db 22, HEADBUTT
+ db 27, GROWL
+ db 33, WATER_GUN
+ db 40, AMNESIA
+ db 48, PSYCHIC_M
+ db 0
+
+KadabraEvosMoves:
+; Evolutions
+ db EV_TRADE, 1, ALAKAZAM
+ db 0
+; Learnset
+ db 16, CONFUSION
+ db 20, DISABLE
+ db 27, PSYBEAM
+ db 31, RECOVER
+ db 38, PSYCHIC_M
+ db 42, REFLECT
+ db 0
+
+GravelerEvosMoves:
+; Evolutions
+ db EV_TRADE, 1, GOLEM
+ db 0
+; Learnset
+ db 11, DEFENSE_CURL
+ db 16, ROCK_THROW
+ db 21, SELFDESTRUCT
+ db 29, HARDEN
+ db 36, EARTHQUAKE
+ db 43, EXPLOSION
db 0
-Mon088_EvosMoves:
-;GRIMER
-;Evolutions
- db EV_LEVEL,38,MUK
- db 0
-;Learnset
- db 30,POISON_GAS
- db 33,MINIMIZE
- db 37,SLUDGE
- db 42,HARDEN
- db 48,SCREECH
- db 55,ACID_ARMOR
+ChanseyEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 12, DOUBLESLAP
+ db 24, SING
+ db 30, GROWL
+ db 38, MINIMIZE
+ db 44, DEFENSE_CURL
+ db 48, LIGHT_SCREEN
+ db 54, DOUBLE_EDGE
db 0
-Mon094_EvosMoves:
-;GENGAR
-;Evolutions
- db 0
-;Learnset
- db 29,HYPNOSIS
- db 38,DREAM_EATER
+MachokeEvosMoves:
+; Evolutions
+ db EV_TRADE, 1, MACHAMP
+ db 0
+; Learnset
+ db 20, LOW_KICK
+ db 25, LEER
+ db 36, FOCUS_ENERGY
+ db 44, SEISMIC_TOSS
+ db 52, SUBMISSION
db 0
-Mon029_EvosMoves:
-;NIDORAN_F
-;Evolutions
- db EV_LEVEL,16,NIDORINA
- db 0
-;Learnset
- db 8,SCRATCH
- db 12,DOUBLE_KICK
- db 17,POISON_STING
- db 23,TAIL_WHIP
- db 30,BITE
- db 38,FURY_SWIPES
+MrMimeEvosMoves:
+; Evolutions
db 0
-
-Mon031_EvosMoves:
-;NIDOQUEEN
-;Evolutions
- db 0
-;Learnset
- db 8,SCRATCH
- db 12,DOUBLE_KICK
- db 23,BODY_SLAM
- db 0
-
-Mon104_EvosMoves:
-;CUBONE
-;Evolutions
- db EV_LEVEL,28,MAROWAK
- db 0
-;Learnset
- db 10,BONE_CLUB
- db 13,TAIL_WHIP
- db 18,HEADBUTT
- db 25,LEER
- db 31,FOCUS_ENERGY
- db 38,THRASH
- db 43,BONEMERANG
- db 46,RAGE
+; Learnset
+ db 15, CONFUSION
+ db 23, LIGHT_SCREEN
+ db 31, DOUBLESLAP
+ db 39, MEDITATE
+ db 47, SUBSTITUTE
db 0
-Mon111_EvosMoves:
-;RHYHORN
-;Evolutions
- db EV_LEVEL,42,RHYDON
- db 0
-;Learnset
- db 30,STOMP
- db 35,TAIL_WHIP
- db 40,FURY_ATTACK
- db 45,HORN_DRILL
- db 50,LEER
- db 55,TAKE_DOWN
- db 0
-
-Mon131_EvosMoves:
-;LAPRAS
-;Evolutions
- db 0
-;Learnset
- db 16,SING
- db 20,MIST
- db 25,BODY_SLAM
- db 31,CONFUSE_RAY
- db 38,ICE_BEAM
- db 46,HYDRO_PUMP
- db 0
-
-Mon059_EvosMoves:
-;ARCANINE
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon151_EvosMoves:
-;MEW
-;Evolutions
- db 0
-;Learnset
- db 10,TRANSFORM
- db 20,MEGA_PUNCH
- db 30,METRONOME
- db 40,PSYCHIC_M
- db 0
-
-Mon130_EvosMoves:
-;GYARADOS
-;Evolutions
- db 0
-;Learnset
- db 20,BITE
- db 25,DRAGON_RAGE
- db 32,LEER
- db 41,HYDRO_PUMP
- db 52,HYPER_BEAM
- db 0
-
-Mon090_EvosMoves:
-;SHELLDER
-;Evolutions
- db EV_ITEM,WATER_STONE,1,CLOYSTER
- db 0
-;Learnset
- db 18,SUPERSONIC
- db 23,CLAMP
- db 30,AURORA_BEAM
- db 39,LEER
- db 50,ICE_BEAM
- db 0
-
-Mon072_EvosMoves:
-;TENTACOOL
-;Evolutions
- db EV_LEVEL,30,TENTACRUEL
- db 0
-;Learnset
- db 7,SUPERSONIC
- db 13,WRAP
- db 18,POISON_STING
- db 22,WATER_GUN
- db 27,CONSTRICT
- db 33,BARRIER
- db 40,SCREECH
- db 48,HYDRO_PUMP
- db 0
-
-Mon092_EvosMoves:
-;GASTLY
-;Evolutions
- db EV_LEVEL,25,HAUNTER
- db 0
-;Learnset
- db 27,HYPNOSIS
- db 35,DREAM_EATER
+HitmonleeEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 33, ROLLING_KICK
+ db 38, JUMP_KICK
+ db 43, FOCUS_ENERGY
+ db 48, HI_JUMP_KICK
+ db 53, MEGA_KICK
db 0
-Mon123_EvosMoves:
-;SCYTHER
-;Evolutions
+HitmonchanEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 17,LEER
- db 20,FOCUS_ENERGY
- db 24,DOUBLE_TEAM
- db 29,SLASH
- db 35,SWORDS_DANCE
- db 42,AGILITY
- db 50,WING_ATTACK
+; Learnset
+ db 33, FIRE_PUNCH
+ db 38, ICE_PUNCH
+ db 43, THUNDERPUNCH
+ db 48, MEGA_PUNCH
+ db 53, COUNTER
db 0
-Mon120_EvosMoves:
-;STARYU
-;Evolutions
- db EV_ITEM,WATER_STONE,1,STARMIE
- db 0
-;Learnset
- db 17,WATER_GUN
- db 22,HARDEN
- db 27,RECOVER
- db 32,SWIFT
- db 37,MINIMIZE
- db 42,LIGHT_SCREEN
- db 47,HYDRO_PUMP
+ArbokEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 10, POISON_STING
+ db 17, BITE
+ db 27, GLARE
+ db 36, SCREECH
+ db 47, ACID
db 0
-Mon009_EvosMoves:
-;BLASTOISE
-;Evolutions
- db 0
-;Learnset
- db 8,BUBBLE
- db 15,WATER_GUN
- db 24,BITE
- db 31,WITHDRAW
- db 42,SKULL_BASH
- db 52,HYDRO_PUMP
- db 0
-
-Mon127_EvosMoves:
-;PINSIR
-;Evolutions
- db 0
-;Learnset
- db 21,BIND
- db 25,SEISMIC_TOSS
- db 30,GUILLOTINE
- db 36,FOCUS_ENERGY
- db 43,HARDEN
- db 49,SLASH
- db 54,SWORDS_DANCE
- db 0
-
-Mon114_EvosMoves:
-;TANGELA
-;Evolutions
- db 0
-;Learnset
- db 24,BIND
- db 27,ABSORB
- db 29,VINE_WHIP
- db 32,POISONPOWDER
- db 36,STUN_SPORE
- db 39,SLEEP_POWDER
- db 45,SLAM
- db 48,GROWTH
- db 0
-
-Mon152_EvosMoves:
-;MISSINGNO_1F
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon153_EvosMoves:
-;MISSINGNO_20
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon058_EvosMoves:
-;GROWLITHE
-;Evolutions
- db EV_ITEM,FIRE_STONE,1,ARCANINE
- db 0
-;Learnset
- db 18,EMBER
- db 23,LEER
- db 30,TAKE_DOWN
- db 39,AGILITY
- db 50,FLAMETHROWER
- db 0
-
-Mon095_EvosMoves:
-;ONIX
-;Evolutions
- db 0
-;Learnset
- db 15,BIND
- db 19,ROCK_THROW
- db 25,RAGE
- db 33,SLAM
- db 43,HARDEN
- db 0
-
-Mon022_EvosMoves:
-;FEAROW
-;Evolutions
- db 0
-;Learnset
- db 9,LEER
- db 15,FURY_ATTACK
- db 25,MIRROR_MOVE
- db 34,DRILL_PECK
- db 43,AGILITY
- db 0
-
-Mon016_EvosMoves:
-;PIDGEY
-;Evolutions
- db EV_LEVEL,18,PIDGEOTTO
- db 0
-;Learnset
- db 5,SAND_ATTACK
- db 12,QUICK_ATTACK
- db 19,WHIRLWIND
- db 28,WING_ATTACK
- db 36,AGILITY
- db 44,MIRROR_MOVE
- db 0
-
-Mon079_EvosMoves:
-;SLOWPOKE
-;Evolutions
- db EV_LEVEL,37,SLOWBRO
+ParasectEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 13, STUN_SPORE
+ db 20, LEECH_LIFE
+ db 30, SPORE
+ db 39, SLASH
+ db 48, GROWTH
db 0
-;Learnset
- db 18,DISABLE
- db 22,HEADBUTT
- db 27,GROWL
- db 33,WATER_GUN
- db 40,AMNESIA
- db 48,PSYCHIC_M
- db 0
-
-Mon064_EvosMoves:
-;KADABRA
-;Evolutions
- db EV_TRADE,1,ALAKAZAM
+
+PsyduckEvosMoves:
+; Evolutions
+ db EV_LEVEL, 33, GOLDUCK
db 0
-;Learnset
- db 16,CONFUSION
- db 20,DISABLE
- db 27,PSYBEAM
- db 31,RECOVER
- db 38,PSYCHIC_M
- db 42,REFLECT
- db 0
-
-Mon075_EvosMoves:
-;GRAVELER
-;Evolutions
- db EV_TRADE,1,GOLEM
+; Learnset
+ db 28, TAIL_WHIP
+ db 31, DISABLE
+ db 36, CONFUSION
+ db 43, FURY_SWIPES
+ db 52, HYDRO_PUMP
db 0
-;Learnset
- db 11,DEFENSE_CURL
- db 16,ROCK_THROW
- db 21,SELFDESTRUCT
- db 29,HARDEN
- db 36,EARTHQUAKE
- db 43,EXPLOSION
- db 0
-
-Mon113_EvosMoves:
-;CHANSEY
-;Evolutions
- db 0
-;Learnset
- db 12,DOUBLESLAP
- db 24,SING
- db 30,GROWL
- db 38,MINIMIZE
- db 44,DEFENSE_CURL
- db 48,LIGHT_SCREEN
- db 54,DOUBLE_EDGE
- db 0
-
-Mon067_EvosMoves:
-;MACHOKE
-;Evolutions
- db EV_TRADE,1,MACHAMP
- db 0
-;Learnset
- db 20,LOW_KICK
- db 25,LEER
- db 36,FOCUS_ENERGY
- db 44,SEISMIC_TOSS
- db 52,SUBMISSION
- db 0
-
-Mon122_EvosMoves:
-;MR_MIME
-;Evolutions
- db 0
-;Learnset
- db 15,CONFUSION
- db 23,LIGHT_SCREEN
- db 31,DOUBLESLAP
- db 39,MEDITATE
- db 47,SUBSTITUTE
- db 0
-
-Mon106_EvosMoves:
-;HITMONLEE
-;Evolutions
- db 0
-;Learnset
- db 33,ROLLING_KICK
- db 38,JUMP_KICK
- db 43,FOCUS_ENERGY
- db 48,HI_JUMP_KICK
- db 53,MEGA_KICK
- db 0
-
-Mon107_EvosMoves:
-;HITMONCHAN
-;Evolutions
+
+DrowzeeEvosMoves:
+; Evolutions
+ db EV_LEVEL, 26, HYPNO
db 0
-;Learnset
- db 33,FIRE_PUNCH
- db 38,ICE_PUNCH
- db 43,THUNDERPUNCH
- db 48,MEGA_PUNCH
- db 53,COUNTER
- db 0
-
-Mon024_EvosMoves:
-;ARBOK
-;Evolutions
+; Learnset
+ db 12, DISABLE
+ db 17, CONFUSION
+ db 24, HEADBUTT
+ db 29, POISON_GAS
+ db 32, PSYCHIC_M
+ db 37, MEDITATE
db 0
-;Learnset
- db 10,POISON_STING
- db 17,BITE
- db 27,GLARE
- db 36,SCREECH
- db 47,ACID
- db 0
-
-Mon047_EvosMoves:
-;PARASECT
-;Evolutions
+
+GolemEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 13,STUN_SPORE
- db 20,LEECH_LIFE
- db 30,SPORE
- db 39,SLASH
- db 48,GROWTH
+; Learnset
+ db 11, DEFENSE_CURL
+ db 16, ROCK_THROW
+ db 21, SELFDESTRUCT
+ db 29, HARDEN
+ db 36, EARTHQUAKE
+ db 43, EXPLOSION
db 0
-
-Mon054_EvosMoves:
-;PSYDUCK
-;Evolutions
- db EV_LEVEL,33,GOLDUCK
+
+MissingNo32EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 28,TAIL_WHIP
- db 31,DISABLE
- db 36,CONFUSION
- db 43,FURY_SWIPES
- db 52,HYDRO_PUMP
+; Learnset
db 0
-Mon096_EvosMoves:
-;DROWZEE
-;Evolutions
- db EV_LEVEL,26,HYPNO
+MagmarEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 12,DISABLE
- db 17,CONFUSION
- db 24,HEADBUTT
- db 29,POISON_GAS
- db 32,PSYCHIC_M
- db 37,MEDITATE
+; Learnset
+ db 36, LEER
+ db 39, CONFUSE_RAY
+ db 43, FIRE_PUNCH
+ db 48, SMOKESCREEN
+ db 52, SMOG
+ db 55, FLAMETHROWER
db 0
-Mon076_EvosMoves:
-;GOLEM
-;Evolutions
+MissingNo34EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 11,DEFENSE_CURL
- db 16,ROCK_THROW
- db 21,SELFDESTRUCT
- db 29,HARDEN
- db 36,EARTHQUAKE
- db 43,EXPLOSION
+; Learnset
db 0
-Mon154_EvosMoves:
-;MISSINGNO_32
-;Evolutions
+ElectabuzzEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 34, THUNDERSHOCK
+ db 37, SCREECH
+ db 42, THUNDERPUNCH
+ db 49, LIGHT_SCREEN
+ db 54, THUNDER
db 0
-Mon126_EvosMoves:
-;MAGMAR
-;Evolutions
+MagnetonEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 36,LEER
- db 39,CONFUSE_RAY
- db 43,FIRE_PUNCH
- db 48,SMOKESCREEN
- db 52,SMOG
- db 55,FLAMETHROWER
+; Learnset
+ db 21, SONICBOOM
+ db 25, THUNDERSHOCK
+ db 29, SUPERSONIC
+ db 38, THUNDER_WAVE
+ db 46, SWIFT
+ db 54, SCREECH
db 0
-Mon155_EvosMoves:
-;MISSINGNO_34
-;Evolutions
+KoffingEvosMoves:
+; Evolutions
+ db EV_LEVEL, 35, WEEZING
db 0
-;Learnset
+; Learnset
+ db 32, SLUDGE
+ db 37, SMOKESCREEN
+ db 40, SELFDESTRUCT
+ db 45, HAZE
+ db 48, EXPLOSION
db 0
-Mon125_EvosMoves:
-;ELECTABUZZ
-;Evolutions
+MissingNo38EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 34,THUNDERSHOCK
- db 37,SCREECH
- db 42,THUNDERPUNCH
- db 49,LIGHT_SCREEN
- db 54,THUNDER
+; Learnset
db 0
-Mon082_EvosMoves:
-;MAGNETON
-;Evolutions
+MankeyEvosMoves:
+; Evolutions
+ db EV_LEVEL, 28, PRIMEAPE
db 0
-;Learnset
- db 21,SONICBOOM
- db 25,THUNDERSHOCK
- db 29,SUPERSONIC
- db 38,THUNDER_WAVE
- db 46,SWIFT
- db 54,SCREECH
+; Learnset
+ db 9, LOW_KICK
+ db 15, KARATE_CHOP
+ db 21, FURY_SWIPES
+ db 27, FOCUS_ENERGY
+ db 33, SEISMIC_TOSS
+ db 39, THRASH
+ db 45, SCREECH
db 0
-Mon109_EvosMoves:
-;KOFFING
-;Evolutions
- db EV_LEVEL,35,WEEZING
+SeelEvosMoves:
+; Evolutions
+ db EV_LEVEL, 34, DEWGONG
db 0
-;Learnset
- db 32,SLUDGE
- db 37,SMOKESCREEN
- db 40,SELFDESTRUCT
- db 45,HAZE
- db 48,EXPLOSION
+; Learnset
+ db 30, GROWL
+ db 35, AURORA_BEAM
+ db 40, REST
+ db 45, TAKE_DOWN
+ db 50, ICE_BEAM
db 0
-Mon156_EvosMoves:
-;MISSINGNO_38
-;Evolutions
+DiglettEvosMoves:
+; Evolutions
+ db EV_LEVEL, 26, DUGTRIO
db 0
-;Learnset
+; Learnset
+ db 15, GROWL
+ db 19, DIG
+ db 24, SAND_ATTACK
+ db 31, SLASH
+ db 40, EARTHQUAKE
db 0
-Mon056_EvosMoves:
-;MANKEY
-;Evolutions
- db EV_LEVEL,28,PRIMEAPE
+TaurosEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 9,LOW_KICK
- db 15,KARATE_CHOP
- db 21,FURY_SWIPES
- db 27,FOCUS_ENERGY
- db 33,SEISMIC_TOSS
- db 39,THRASH
- db 45,SCREECH
+; Learnset
+ db 21, STOMP
+ db 28, TAIL_WHIP
+ db 35, LEER
+ db 44, RAGE
+ db 51, TAKE_DOWN
db 0
-Mon086_EvosMoves:
-;SEEL
-;Evolutions
- db EV_LEVEL,34,DEWGONG
+MissingNo3DEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 30,GROWL
- db 35,AURORA_BEAM
- db 40,REST
- db 45,TAKE_DOWN
- db 50,ICE_BEAM
+; Learnset
db 0
-Mon050_EvosMoves:
-;DIGLETT
-;Evolutions
- db EV_LEVEL,26,DUGTRIO
+MissingNo3EEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 15,GROWL
- db 19,DIG
- db 24,SAND_ATTACK
- db 31,SLASH
- db 40,EARTHQUAKE
+; Learnset
db 0
-Mon128_EvosMoves:
-;TAUROS
-;Evolutions
+MissingNo3FEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 21,STOMP
- db 28,TAIL_WHIP
- db 35,LEER
- db 44,RAGE
- db 51,TAKE_DOWN
+; Learnset
db 0
-Mon157_EvosMoves:
-;MISSINGNO_3D
-;Evolutions
+FarfetchdEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 7, LEER
+ db 15, FURY_ATTACK
+ db 23, SWORDS_DANCE
+ db 31, AGILITY
+ db 39, SLASH
db 0
-Mon158_EvosMoves:
-;MISSINGNO_3E
-;Evolutions
+VenonatEvosMoves:
+; Evolutions
+ db EV_LEVEL, 31, VENOMOTH
db 0
-;Learnset
+; Learnset
+ db 11, SUPERSONIC
+ db 19, CONFUSION
+ db 22, POISONPOWDER
+ db 27, LEECH_LIFE
+ db 30, STUN_SPORE
+ db 35, PSYBEAM
+ db 38, SLEEP_POWDER
+ db 43, PSYCHIC_M
db 0
-Mon159_EvosMoves:
-;MISSINGNO_3F
-;Evolutions
+DragoniteEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 10, THUNDER_WAVE
+ db 20, AGILITY
+ db 35, SLAM
+ db 45, DRAGON_RAGE
+ db 60, HYPER_BEAM
db 0
-Mon083_EvosMoves:
-;FARFETCH_D
-;Evolutions
+MissingNo43EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 7,LEER
- db 15,FURY_ATTACK
- db 23,SWORDS_DANCE
- db 31,AGILITY
- db 39,SLASH
+; Learnset
db 0
-Mon048_EvosMoves:
-;VENONAT
-;Evolutions
- db EV_LEVEL,31,VENOMOTH
+MissingNo44EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 11,SUPERSONIC
- db 19,CONFUSION
- db 22,POISONPOWDER
- db 27,LEECH_LIFE
- db 30,STUN_SPORE
- db 35,PSYBEAM
- db 38,SLEEP_POWDER
- db 43,PSYCHIC_M
+; Learnset
db 0
-Mon149_EvosMoves:
-;DRAGONITE
-;Evolutions
+MissingNo45EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,THUNDER_WAVE
- db 20,AGILITY
- db 35,SLAM
- db 45,DRAGON_RAGE
- db 60,HYPER_BEAM
+; Learnset
db 0
-Mon160_EvosMoves:
-;MISSINGNO_43
-;Evolutions
+DoduoEvosMoves:
+; Evolutions
+ db EV_LEVEL, 31, DODRIO
db 0
-;Learnset
+; Learnset
+ db 20, GROWL
+ db 24, FURY_ATTACK
+ db 30, DRILL_PECK
+ db 36, RAGE
+ db 40, TRI_ATTACK
+ db 44, AGILITY
db 0
-Mon161_EvosMoves:
-;MISSINGNO_44
-;Evolutions
+PoliwagEvosMoves:
+; Evolutions
+ db EV_LEVEL, 25, POLIWHIRL
db 0
-;Learnset
+; Learnset
+ db 16, HYPNOSIS
+ db 19, WATER_GUN
+ db 25, DOUBLESLAP
+ db 31, BODY_SLAM
+ db 38, AMNESIA
+ db 45, HYDRO_PUMP
db 0
-Mon162_EvosMoves:
-;MISSINGNO_45
-;Evolutions
+JynxEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 18, LICK
+ db 23, DOUBLESLAP
+ db 31, ICE_PUNCH
+ db 39, BODY_SLAM
+ db 47, THRASH
+ db 58, BLIZZARD
db 0
-Mon084_EvosMoves:
-;DODUO
-;Evolutions
- db EV_LEVEL,31,DODRIO
+MoltresEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 20,GROWL
- db 24,FURY_ATTACK
- db 30,DRILL_PECK
- db 36,RAGE
- db 40,TRI_ATTACK
- db 44,AGILITY
+; Learnset
+ db 51, LEER
+ db 55, AGILITY
+ db 60, SKY_ATTACK
db 0
-Mon060_EvosMoves:
-;POLIWAG
-;Evolutions
- db EV_LEVEL,25,POLIWHIRL
+ArticunoEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 16,HYPNOSIS
- db 19,WATER_GUN
- db 25,DOUBLESLAP
- db 31,BODY_SLAM
- db 38,AMNESIA
- db 45,HYDRO_PUMP
+; Learnset
+ db 51, BLIZZARD
+ db 55, AGILITY
+ db 60, MIST
db 0
-Mon124_EvosMoves:
-;JYNX
-;Evolutions
+ZapdosEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 18,LICK
- db 23,DOUBLESLAP
- db 31,ICE_PUNCH
- db 39,BODY_SLAM
- db 47,THRASH
- db 58,BLIZZARD
+; Learnset
+ db 51, THUNDER
+ db 55, AGILITY
+ db 60, LIGHT_SCREEN
db 0
-Mon146_EvosMoves:
-;MOLTRES
-;Evolutions
+DittoEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 51,LEER
- db 55,AGILITY
- db 60,SKY_ATTACK
+; Learnset
db 0
-Mon144_EvosMoves:
-;ARTICUNO
-;Evolutions
+MeowthEvosMoves:
+; Evolutions
+ db EV_LEVEL, 28, PERSIAN
db 0
-;Learnset
- db 51,BLIZZARD
- db 55,AGILITY
- db 60,MIST
+; Learnset
+ db 12, BITE
+ db 17, PAY_DAY
+ db 24, SCREECH
+ db 33, FURY_SWIPES
+ db 44, SLASH
db 0
-Mon145_EvosMoves:
-;ZAPDOS
-;Evolutions
+KrabbyEvosMoves:
+; Evolutions
+ db EV_LEVEL, 28, KINGLER
db 0
-;Learnset
- db 51,THUNDER
- db 55,AGILITY
- db 60,LIGHT_SCREEN
+; Learnset
+ db 20, VICEGRIP
+ db 25, GUILLOTINE
+ db 30, STOMP
+ db 35, CRABHAMMER
+ db 40, HARDEN
db 0
-Mon132_EvosMoves:
-;DITTO
-;Evolutions
+MissingNo4FEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon052_EvosMoves:
-;MEOWTH
-;Evolutions
- db EV_LEVEL,28,PERSIAN
+MissingNo50EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 12,BITE
- db 17,PAY_DAY
- db 24,SCREECH
- db 33,FURY_SWIPES
- db 44,SLASH
+; Learnset
db 0
-Mon098_EvosMoves:
-;KRABBY
-;Evolutions
- db EV_LEVEL,28,KINGLER
+MissingNo51EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 20,VICEGRIP
- db 25,GUILLOTINE
- db 30,STOMP
- db 35,CRABHAMMER
- db 40,HARDEN
+; Learnset
db 0
-Mon163_EvosMoves:
-;MISSINGNO_4F
-;Evolutions
+VulpixEvosMoves:
+; Evolutions
+ db EV_ITEM, FIRE_STONE, 1, NINETALES
db 0
-;Learnset
+; Learnset
+ db 16, QUICK_ATTACK
+ db 21, ROAR
+ db 28, CONFUSE_RAY
+ db 35, FLAMETHROWER
+ db 42, FIRE_SPIN
db 0
-Mon164_EvosMoves:
-;MISSINGNO_50
-;Evolutions
+NinetalesEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon165_EvosMoves:
-;MISSINGNO_51
-;Evolutions
+PikachuEvosMoves:
+; Evolutions
+ db EV_ITEM, THUNDER_STONE, 1, RAICHU
db 0
-;Learnset
+; Learnset
+ db 6, TAIL_WHIP
+ db 8, THUNDER_WAVE
+ db 11, QUICK_ATTACK
+ db 15, DOUBLE_TEAM
+ db 20, SLAM
+ db 26, THUNDERBOLT
+ db 33, AGILITY
+ db 41, THUNDER
+ db 50, LIGHT_SCREEN
db 0
-Mon037_EvosMoves:
-;VULPIX
-;Evolutions
- db EV_ITEM,FIRE_STONE,1,NINETALES
+RaichuEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 16,QUICK_ATTACK
- db 21,ROAR
- db 28,CONFUSE_RAY
- db 35,FLAMETHROWER
- db 42,FIRE_SPIN
+; Learnset
db 0
-Mon038_EvosMoves:
-;NINETALES
-;Evolutions
+MissingNo56EvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon025_EvosMoves:
-;PIKACHU
-;Evolutions
- db EV_ITEM,THUNDER_STONE,1,RAICHU
+MissingNo57EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 6,TAIL_WHIP
- db 8,THUNDER_WAVE
- db 11,QUICK_ATTACK
- db 15,DOUBLE_TEAM
- db 20,SLAM
- db 26,THUNDERBOLT
- db 33,AGILITY
- db 41,THUNDER
- db 50,LIGHT_SCREEN
+; Learnset
db 0
-Mon026_EvosMoves:
-;RAICHU
-;Evolutions
+DratiniEvosMoves:
+; Evolutions
+ db EV_LEVEL, 30, DRAGONAIR
db 0
-;Learnset
+; Learnset
+ db 10, THUNDER_WAVE
+ db 20, AGILITY
+ db 30, SLAM
+ db 40, DRAGON_RAGE
+ db 50, HYPER_BEAM
db 0
-Mon166_EvosMoves:
-;MISSINGNO_56
-;Evolutions
+DragonairEvosMoves:
+; Evolutions
+ db EV_LEVEL, 55, DRAGONITE
db 0
-;Learnset
+; Learnset
+ db 10, THUNDER_WAVE
+ db 20, AGILITY
+ db 35, SLAM
+ db 45, DRAGON_RAGE
+ db 55, HYPER_BEAM
db 0
-Mon167_EvosMoves:
-;MISSINGNO_57
-;Evolutions
+KabutoEvosMoves:
+; Evolutions
+ db EV_LEVEL, 40, KABUTOPS
db 0
-;Learnset
+; Learnset
+ db 34, ABSORB
+ db 39, SLASH
+ db 44, LEER
+ db 49, HYDRO_PUMP
db 0
-Mon147_EvosMoves:
-;DRATINI
-;Evolutions
- db EV_LEVEL,30,DRAGONAIR
+KabutopsEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,THUNDER_WAVE
- db 20,AGILITY
- db 30,SLAM
- db 40,DRAGON_RAGE
- db 50,HYPER_BEAM
+; Learnset
+ db 34, ABSORB
+ db 39, SLASH
+ db 46, LEER
+ db 53, HYDRO_PUMP
db 0
-Mon148_EvosMoves:
-;DRAGONAIR
-;Evolutions
- db EV_LEVEL,55,DRAGONITE
+HorseaEvosMoves:
+; Evolutions
+ db EV_LEVEL, 32, SEADRA
db 0
-;Learnset
- db 10,THUNDER_WAVE
- db 20,AGILITY
- db 35,SLAM
- db 45,DRAGON_RAGE
- db 55,HYPER_BEAM
+; Learnset
+ db 19, SMOKESCREEN
+ db 24, LEER
+ db 30, WATER_GUN
+ db 37, AGILITY
+ db 45, HYDRO_PUMP
db 0
-Mon140_EvosMoves:
-;KABUTO
-;Evolutions
- db EV_LEVEL,40,KABUTOPS
+SeadraEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 34,ABSORB
- db 39,SLASH
- db 44,LEER
- db 49,HYDRO_PUMP
+; Learnset
+ db 19, SMOKESCREEN
+ db 24, LEER
+ db 30, WATER_GUN
+ db 41, AGILITY
+ db 52, HYDRO_PUMP
db 0
-Mon141_EvosMoves:
-;KABUTOPS
-;Evolutions
+MissingNo5EEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 34,ABSORB
- db 39,SLASH
- db 46,LEER
- db 53,HYDRO_PUMP
+; Learnset
db 0
-Mon116_EvosMoves:
-;HORSEA
-;Evolutions
- db EV_LEVEL,32,SEADRA
+MissingNo5FEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 19,SMOKESCREEN
- db 24,LEER
- db 30,WATER_GUN
- db 37,AGILITY
- db 45,HYDRO_PUMP
+; Learnset
db 0
-Mon117_EvosMoves:
-;SEADRA
-;Evolutions
+SandshrewEvosMoves:
+; Evolutions
+ db EV_LEVEL, 22, SANDSLASH
db 0
-;Learnset
- db 19,SMOKESCREEN
- db 24,LEER
- db 30,WATER_GUN
- db 41,AGILITY
- db 52,HYDRO_PUMP
+; Learnset
+ db 10, SAND_ATTACK
+ db 17, SLASH
+ db 24, POISON_STING
+ db 31, SWIFT
+ db 38, FURY_SWIPES
db 0
-Mon168_EvosMoves:
-;MISSINGNO_5E
-;Evolutions
+SandslashEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 10, SAND_ATTACK
+ db 17, SLASH
+ db 27, POISON_STING
+ db 36, SWIFT
+ db 47, FURY_SWIPES
db 0
-Mon169_EvosMoves:
-;MISSINGNO_5F
-;Evolutions
+OmanyteEvosMoves:
+; Evolutions
+ db EV_LEVEL, 40, OMASTAR
db 0
-;Learnset
+; Learnset
+ db 34, HORN_ATTACK
+ db 39, LEER
+ db 46, SPIKE_CANNON
+ db 53, HYDRO_PUMP
db 0
-Mon027_EvosMoves:
-;SANDSHREW
-;Evolutions
- db EV_LEVEL,22,SANDSLASH
+OmastarEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,SAND_ATTACK
- db 17,SLASH
- db 24,POISON_STING
- db 31,SWIFT
- db 38,FURY_SWIPES
+; Learnset
+ db 34, HORN_ATTACK
+ db 39, LEER
+ db 44, SPIKE_CANNON
+ db 49, HYDRO_PUMP
db 0
-
-Mon028_EvosMoves:
-;SANDSLASH
-;Evolutions
+
+JigglypuffEvosMoves:
+; Evolutions
+ db EV_ITEM, MOON_STONE, 1, WIGGLYTUFF
db 0
-;Learnset
- db 10,SAND_ATTACK
- db 17,SLASH
- db 27,POISON_STING
- db 36,SWIFT
- db 47,FURY_SWIPES
+; Learnset
+ db 9, POUND
+ db 14, DISABLE
+ db 19, DEFENSE_CURL
+ db 24, DOUBLESLAP
+ db 29, REST
+ db 34, BODY_SLAM
+ db 39, DOUBLE_EDGE
db 0
-Mon138_EvosMoves:
-;OMANYTE
-;Evolutions
- db EV_LEVEL,40,OMASTAR
- db 0
-;Learnset
- db 34,HORN_ATTACK
- db 39,LEER
- db 46,SPIKE_CANNON
- db 53,HYDRO_PUMP
+WigglytuffEvosMoves:
+; Evolutions
+ db 0
+; Learnset
db 0
-Mon139_EvosMoves:
-;OMASTAR
-;Evolutions
- db 0
-;Learnset
- db 34,HORN_ATTACK
- db 39,LEER
- db 44,SPIKE_CANNON
- db 49,HYDRO_PUMP
+EeveeEvosMoves:
+; Evolutions
+ db EV_ITEM, FIRE_STONE, 1, FLAREON
+ db EV_ITEM, THUNDER_STONE, 1, JOLTEON
+ db EV_ITEM, WATER_STONE, 1, VAPOREON
+ db 0
+; Learnset
+ db 8, SAND_ATTACK
+ db 16, GROWL
+ db 23, QUICK_ATTACK
+ db 30, BITE
+ db 36, FOCUS_ENERGY
+ db 42, TAKE_DOWN
db 0
-Mon039_EvosMoves:
-;JIGGLYPUFF
-;Evolutions
- db EV_ITEM,MOON_STONE,1,WIGGLYTUFF
- db 0
-;Learnset
- db 9,POUND
- db 14,DISABLE
- db 19,DEFENSE_CURL
- db 24,DOUBLESLAP
- db 29,REST
- db 34,BODY_SLAM
- db 39,DOUBLE_EDGE
- db 0
-
-Mon040_EvosMoves:
-;WIGGLYTUFF
-;Evolutions
- db 0
-;Learnset
- db 0
-
-Mon133_EvosMoves:
-;EEVEE
-;Evolutions
- db EV_ITEM,FIRE_STONE,1,FLAREON
- db EV_ITEM,THUNDER_STONE,1,JOLTEON
- db EV_ITEM,WATER_STONE,1,VAPOREON
- db 0
-;Learnset
- db 8,SAND_ATTACK
- db 16,GROWL
- db 23,QUICK_ATTACK
- db 30,BITE
- db 36,FOCUS_ENERGY
- db 42,TAKE_DOWN
+FlareonEvosMoves:
+; Evolutions
db 0
-
-Mon136_EvosMoves:
-;FLAREON
-;Evolutions
- db 0
-;Learnset
- db 8,SAND_ATTACK
- db 16,EMBER
- db 23,QUICK_ATTACK
- db 30,BITE
- db 36,FIRE_SPIN
- db 42,SMOG
- db 47,LEER
- db 52,FLAMETHROWER
- db 0
-
-Mon135_EvosMoves:
-;JOLTEON
-;Evolutions
- db 0
-;Learnset
- db 8,SAND_ATTACK
- db 16,THUNDERSHOCK
- db 23,QUICK_ATTACK
- db 30,DOUBLE_KICK
- db 36,PIN_MISSILE
- db 42,THUNDER_WAVE
- db 47,AGILITY
- db 52,THUNDER
- db 0
-
-Mon134_EvosMoves:
-;VAPOREON
-;Evolutions
- db 0
-;Learnset
- db 8,SAND_ATTACK
- db 16,WATER_GUN
- db 23,QUICK_ATTACK
- db 30,BITE
- db 36,AURORA_BEAM
- db 42,HAZE
- db 42,MIST
- db 47,ACID_ARMOR
- db 52,HYDRO_PUMP
- db 0
-
-Mon066_EvosMoves:
-;MACHOP
-;Evolutions
- db EV_LEVEL,28,MACHOKE
- db 0
-;Learnset
- db 20,LOW_KICK
- db 25,LEER
- db 32,FOCUS_ENERGY
- db 39,SEISMIC_TOSS
- db 46,SUBMISSION
+; Learnset
+ db 8, SAND_ATTACK
+ db 16, EMBER
+ db 23, QUICK_ATTACK
+ db 30, BITE
+ db 36, FIRE_SPIN
+ db 42, SMOG
+ db 47, LEER
+ db 52, FLAMETHROWER
db 0
-Mon041_EvosMoves:
-;ZUBAT
-;Evolutions
- db EV_LEVEL,22,GOLBAT
- db 0
-;Learnset
- db 10,SUPERSONIC
- db 15,BITE
- db 21,CONFUSE_RAY
- db 28,WING_ATTACK
- db 36,HAZE
+JolteonEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 8, SAND_ATTACK
+ db 16, THUNDERSHOCK
+ db 23, QUICK_ATTACK
+ db 30, DOUBLE_KICK
+ db 36, PIN_MISSILE
+ db 42, THUNDER_WAVE
+ db 47, AGILITY
+ db 52, THUNDER
db 0
-Mon023_EvosMoves:
-;EKANS
-;Evolutions
- db EV_LEVEL,22,ARBOK
+VaporeonEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,POISON_STING
- db 17,BITE
- db 24,GLARE
- db 31,SCREECH
- db 38,ACID
- db 0
-
-Mon046_EvosMoves:
-;PARAS
-;Evolutions
- db EV_LEVEL,24,PARASECT
- db 0
-;Learnset
- db 13,STUN_SPORE
- db 20,LEECH_LIFE
- db 27,SPORE
- db 34,SLASH
- db 41,GROWTH
+; Learnset
+ db 8, SAND_ATTACK
+ db 16, WATER_GUN
+ db 23, QUICK_ATTACK
+ db 30, BITE
+ db 36, AURORA_BEAM
+ db 42, HAZE
+ db 42, MIST
+ db 47, ACID_ARMOR
+ db 52, HYDRO_PUMP
db 0
-Mon061_EvosMoves:
-;POLIWHIRL
-;Evolutions
- db EV_ITEM,WATER_STONE,1,POLIWRATH
- db 0
-;Learnset
- db 16,HYPNOSIS
- db 19,WATER_GUN
- db 26,DOUBLESLAP
- db 33,BODY_SLAM
- db 41,AMNESIA
- db 49,HYDRO_PUMP
+MachopEvosMoves:
+; Evolutions
+ db EV_LEVEL, 28, MACHOKE
+ db 0
+; Learnset
+ db 20, LOW_KICK
+ db 25, LEER
+ db 32, FOCUS_ENERGY
+ db 39, SEISMIC_TOSS
+ db 46, SUBMISSION
db 0
-Mon062_EvosMoves:
-;POLIWRATH
-;Evolutions
- db 0
-;Learnset
- db 16,HYPNOSIS
- db 19,WATER_GUN
- db 0
-
-Mon013_EvosMoves:
-;WEEDLE
-;Evolutions
- db EV_LEVEL,7,KAKUNA
+ZubatEvosMoves:
+; Evolutions
+ db EV_LEVEL, 22, GOLBAT
db 0
-;Learnset
+; Learnset
+ db 10, SUPERSONIC
+ db 15, BITE
+ db 21, CONFUSE_RAY
+ db 28, WING_ATTACK
+ db 36, HAZE
db 0
-Mon014_EvosMoves:
-;KAKUNA
-;Evolutions
- db EV_LEVEL,10,BEEDRILL
+EkansEvosMoves:
+; Evolutions
+ db EV_LEVEL, 22, ARBOK
db 0
-;Learnset
+; Learnset
+ db 10, POISON_STING
+ db 17, BITE
+ db 24, GLARE
+ db 31, SCREECH
+ db 38, ACID
db 0
-Mon015_EvosMoves:
-;BEEDRILL
-;Evolutions
+ParasEvosMoves:
+; Evolutions
+ db EV_LEVEL, 24, PARASECT
db 0
-;Learnset
- db 12,FURY_ATTACK
- db 16,FOCUS_ENERGY
- db 20,TWINEEDLE
- db 25,RAGE
- db 30,PIN_MISSILE
- db 35,AGILITY
+; Learnset
+ db 13, STUN_SPORE
+ db 20, LEECH_LIFE
+ db 27, SPORE
+ db 34, SLASH
+ db 41, GROWTH
db 0
-Mon170_EvosMoves:
-;MISSINGNO_73
-;Evolutions
+PoliwhirlEvosMoves:
+; Evolutions
+ db EV_ITEM, WATER_STONE, 1, POLIWRATH
db 0
-;Learnset
+; Learnset
+ db 16, HYPNOSIS
+ db 19, WATER_GUN
+ db 26, DOUBLESLAP
+ db 33, BODY_SLAM
+ db 41, AMNESIA
+ db 49, HYDRO_PUMP
db 0
-Mon085_EvosMoves:
-;DODRIO
-;Evolutions
+PoliwrathEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 20,GROWL
- db 24,FURY_ATTACK
- db 30,DRILL_PECK
- db 39,RAGE
- db 45,TRI_ATTACK
- db 51,AGILITY
+; Learnset
+ db 16, HYPNOSIS
+ db 19, WATER_GUN
db 0
-Mon057_EvosMoves:
-;PRIMEAPE
-;Evolutions
+WeedleEvosMoves:
+; Evolutions
+ db EV_LEVEL, 7, KAKUNA
db 0
-;Learnset
- db 9,LOW_KICK
- db 15,KARATE_CHOP
- db 21,FURY_SWIPES
- db 27,FOCUS_ENERGY
- db 28,RAGE
- db 37,SEISMIC_TOSS
- db 46,THRASH
- db 45,SCREECH
+; Learnset
db 0
-Mon051_EvosMoves:
-;DUGTRIO
-;Evolutions
+KakunaEvosMoves:
+; Evolutions
+ db EV_LEVEL, 10, BEEDRILL
db 0
-;Learnset
- db 15,GROWL
- db 19,DIG
- db 24,SAND_ATTACK
- db 35,SLASH
- db 47,EARTHQUAKE
+; Learnset
db 0
-Mon049_EvosMoves:
-;VENOMOTH
-;Evolutions
+BeedrillEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 22,POISONPOWDER
- db 27,LEECH_LIFE
- db 30,STUN_SPORE
- db 38,PSYBEAM
- db 43,SLEEP_POWDER
- db 50,PSYCHIC_M
+; Learnset
+ db 12, FURY_ATTACK
+ db 16, FOCUS_ENERGY
+ db 20, TWINEEDLE
+ db 25, RAGE
+ db 30, PIN_MISSILE
+ db 35, AGILITY
db 0
-Mon087_EvosMoves:
-;DEWGONG
-;Evolutions
+MissingNo73EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 30,GROWL
- db 35,AURORA_BEAM
- db 44,REST
- db 50,TAKE_DOWN
- db 56,ICE_BEAM
+; Learnset
db 0
-Mon171_EvosMoves:
-;MISSINGNO_79
-;Evolutions
+DodrioEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 20, GROWL
+ db 24, FURY_ATTACK
+ db 30, DRILL_PECK
+ db 39, RAGE
+ db 45, TRI_ATTACK
+ db 51, AGILITY
db 0
-Mon172_EvosMoves:
-;MISSINGNO_7A
-;Evolutions
+PrimeapeEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 9, LOW_KICK
+ db 15, KARATE_CHOP
+ db 21, FURY_SWIPES
+ db 27, FOCUS_ENERGY
+ db 28, RAGE
+ db 37, SEISMIC_TOSS
+ db 46, THRASH
+ db 45, SCREECH
db 0
-Mon010_EvosMoves:
-;CATERPIE
-;Evolutions
- db EV_LEVEL,7,METAPOD
+DugtrioEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 15, GROWL
+ db 19, DIG
+ db 24, SAND_ATTACK
+ db 35, SLASH
+ db 47, EARTHQUAKE
db 0
-Mon011_EvosMoves:
-;METAPOD
-;Evolutions
- db EV_LEVEL,10,BUTTERFREE
+VenomothEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 7,HARDEN
+; Learnset
+ db 22, POISONPOWDER
+ db 27, LEECH_LIFE
+ db 30, STUN_SPORE
+ db 38, PSYBEAM
+ db 43, SLEEP_POWDER
+ db 50, PSYCHIC_M
db 0
-Mon012_EvosMoves:
-;BUTTERFREE
-;Evolutions
+DewgongEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,CONFUSION
- db 13,POISONPOWDER
- db 14,STUN_SPORE
- db 15,SLEEP_POWDER
- db 18,SUPERSONIC
- db 23,WHIRLWIND
- db 28,GUST
- db 34,PSYBEAM
+; Learnset
+ db 30, GROWL
+ db 35, AURORA_BEAM
+ db 44, REST
+ db 50, TAKE_DOWN
+ db 56, ICE_BEAM
db 0
-Mon068_EvosMoves:
-;MACHAMP
-;Evolutions
+MissingNo79EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 20,LOW_KICK
- db 25,LEER
- db 36,FOCUS_ENERGY
- db 44,SEISMIC_TOSS
- db 52,SUBMISSION
+; Learnset
db 0
-Mon173_EvosMoves:
-;MISSINGNO_7F
-;Evolutions
+MissingNo7AEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon055_EvosMoves:
-;GOLDUCK
-;Evolutions
+CaterpieEvosMoves:
+; Evolutions
+ db EV_LEVEL, 7, METAPOD
db 0
-;Learnset
- db 28,TAIL_WHIP
- db 31,DISABLE
- db 39,CONFUSION
- db 48,FURY_SWIPES
- db 59,HYDRO_PUMP
+; Learnset
db 0
-Mon097_EvosMoves:
-;HYPNO
-;Evolutions
+MetapodEvosMoves:
+; Evolutions
+ db EV_LEVEL, 10, BUTTERFREE
db 0
-;Learnset
- db 12,DISABLE
- db 17,CONFUSION
- db 24,HEADBUTT
- db 33,POISON_GAS
- db 37,PSYCHIC_M
- db 43,MEDITATE
+; Learnset
+ db 7, HARDEN
db 0
-Mon042_EvosMoves:
-;GOLBAT
-;Evolutions
+ButterfreeEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,SUPERSONIC
- db 15,BITE
- db 21,CONFUSE_RAY
- db 32,WING_ATTACK
- db 43,HAZE
+; Learnset
+ db 10, CONFUSION
+ db 13, POISONPOWDER
+ db 14, STUN_SPORE
+ db 15, SLEEP_POWDER
+ db 18, SUPERSONIC
+ db 23, WHIRLWIND
+ db 28, GUST
+ db 34, PSYBEAM
db 0
-Mon150_EvosMoves:
-;MEWTWO
-;Evolutions
+MachampEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 63,BARRIER
- db 66,PSYCHIC_M
- db 70,RECOVER
- db 75,MIST
- db 81,AMNESIA
+; Learnset
+ db 20, LOW_KICK
+ db 25, LEER
+ db 36, FOCUS_ENERGY
+ db 44, SEISMIC_TOSS
+ db 52, SUBMISSION
db 0
-Mon143_EvosMoves:
-;SNORLAX
-;Evolutions
+MissingNo7FEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 35,BODY_SLAM
- db 41,HARDEN
- db 48,DOUBLE_EDGE
- db 56,HYPER_BEAM
+; Learnset
db 0
-Mon129_EvosMoves:
-;MAGIKARP
-;Evolutions
- db EV_LEVEL,20,GYARADOS
+GolduckEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 15,TACKLE
+; Learnset
+ db 28, TAIL_WHIP
+ db 31, DISABLE
+ db 39, CONFUSION
+ db 48, FURY_SWIPES
+ db 59, HYDRO_PUMP
db 0
-Mon174_EvosMoves:
-;MISSINGNO_86
-;Evolutions
+HypnoEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 12, DISABLE
+ db 17, CONFUSION
+ db 24, HEADBUTT
+ db 33, POISON_GAS
+ db 37, PSYCHIC_M
+ db 43, MEDITATE
db 0
-Mon175_EvosMoves:
-;MISSINGNO_87
-;Evolutions
+GolbatEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 10, SUPERSONIC
+ db 15, BITE
+ db 21, CONFUSE_RAY
+ db 32, WING_ATTACK
+ db 43, HAZE
db 0
-Mon089_EvosMoves:
-;MUK
-;Evolutions
+MewtwoEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 30,POISON_GAS
- db 33,MINIMIZE
- db 37,SLUDGE
- db 45,HARDEN
- db 53,SCREECH
- db 60,ACID_ARMOR
+; Learnset
+ db 63, BARRIER
+ db 66, PSYCHIC_M
+ db 70, RECOVER
+ db 75, MIST
+ db 81, AMNESIA
db 0
-Mon176_EvosMoves:
-;MISSINGNO_8A
-;Evolutions
+SnorlaxEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 35, BODY_SLAM
+ db 41, HARDEN
+ db 48, DOUBLE_EDGE
+ db 56, HYPER_BEAM
db 0
-Mon099_EvosMoves:
-;KINGLER
-;Evolutions
+MagikarpEvosMoves:
+; Evolutions
+ db EV_LEVEL, 20, GYARADOS
db 0
-;Learnset
- db 20,VICEGRIP
- db 25,GUILLOTINE
- db 34,STOMP
- db 42,CRABHAMMER
- db 49,HARDEN
+; Learnset
+ db 15, TACKLE
db 0
-Mon091_EvosMoves:
-;CLOYSTER
-;Evolutions
+MissingNo86EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 50,SPIKE_CANNON
+; Learnset
db 0
-Mon177_EvosMoves:
-;MISSINGNO_8C
-;Evolutions
+MissingNo87EvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon101_EvosMoves:
-;ELECTRODE
-;Evolutions
+MukEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 17,SONICBOOM
- db 22,SELFDESTRUCT
- db 29,LIGHT_SCREEN
- db 40,SWIFT
- db 50,EXPLOSION
+; Learnset
+ db 30, POISON_GAS
+ db 33, MINIMIZE
+ db 37, SLUDGE
+ db 45, HARDEN
+ db 53, SCREECH
+ db 60, ACID_ARMOR
db 0
-Mon036_EvosMoves:
-;CLEFABLE
-;Evolutions
+MissingNo8AEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon110_EvosMoves:
-;WEEZING
-;Evolutions
+KinglerEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 32,SLUDGE
- db 39,SMOKESCREEN
- db 43,SELFDESTRUCT
- db 49,HAZE
- db 53,EXPLOSION
+; Learnset
+ db 20, VICEGRIP
+ db 25, GUILLOTINE
+ db 34, STOMP
+ db 42, CRABHAMMER
+ db 49, HARDEN
db 0
-Mon053_EvosMoves:
-;PERSIAN
-;Evolutions
+CloysterEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 12,BITE
- db 17,PAY_DAY
- db 24,SCREECH
- db 37,FURY_SWIPES
- db 51,SLASH
+; Learnset
+ db 50, SPIKE_CANNON
db 0
-Mon105_EvosMoves:
-;MAROWAK
-;Evolutions
+MissingNo8CEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 10,BONE_CLUB
- db 13,TAIL_WHIP
- db 18,HEADBUTT
- db 25,LEER
- db 33,FOCUS_ENERGY
- db 41,THRASH
- db 48,BONEMERANG
- db 55,RAGE
+; Learnset
db 0
-Mon178_EvosMoves:
-;MISSINGNO_92
-;Evolutions
+ElectrodeEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 17, SONICBOOM
+ db 22, SELFDESTRUCT
+ db 29, LIGHT_SCREEN
+ db 40, SWIFT
+ db 50, EXPLOSION
db 0
-Mon093_EvosMoves:
-;HAUNTER
-;Evolutions
- db EV_TRADE,1,GENGAR
+ClefableEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 29,HYPNOSIS
- db 38,DREAM_EATER
+; Learnset
db 0
-Mon063_EvosMoves:
-;ABRA
-;Evolutions
- db EV_LEVEL,16,KADABRA
+WeezingEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 32, SLUDGE
+ db 39, SMOKESCREEN
+ db 43, SELFDESTRUCT
+ db 49, HAZE
+ db 53, EXPLOSION
db 0
-Mon065_EvosMoves:
-;ALAKAZAM
-;Evolutions
+PersianEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 16,CONFUSION
- db 20,DISABLE
- db 27,PSYBEAM
- db 31,RECOVER
- db 38,PSYCHIC_M
- db 42,REFLECT
+; Learnset
+ db 12, BITE
+ db 17, PAY_DAY
+ db 24, SCREECH
+ db 37, FURY_SWIPES
+ db 51, SLASH
db 0
-Mon017_EvosMoves:
-;PIDGEOTTO
-;Evolutions
- db EV_LEVEL,36,PIDGEOT
+MarowakEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 5,SAND_ATTACK
- db 12,QUICK_ATTACK
- db 21,WHIRLWIND
- db 31,WING_ATTACK
- db 40,AGILITY
- db 49,MIRROR_MOVE
+; Learnset
+ db 10, BONE_CLUB
+ db 13, TAIL_WHIP
+ db 18, HEADBUTT
+ db 25, LEER
+ db 33, FOCUS_ENERGY
+ db 41, THRASH
+ db 48, BONEMERANG
+ db 55, RAGE
db 0
-Mon018_EvosMoves:
-;PIDGEOT
-;Evolutions
+MissingNo92EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 5,SAND_ATTACK
- db 12,QUICK_ATTACK
- db 21,WHIRLWIND
- db 31,WING_ATTACK
- db 44,AGILITY
- db 54,MIRROR_MOVE
+; Learnset
db 0
-Mon121_EvosMoves:
-;STARMIE
-;Evolutions
+HaunterEvosMoves:
+; Evolutions
+ db EV_TRADE, 1, GENGAR
db 0
-;Learnset
+; Learnset
+ db 29, HYPNOSIS
+ db 38, DREAM_EATER
db 0
-Mon001_EvosMoves:
-;BULBASAUR
-;Evolutions
- db EV_LEVEL,16,IVYSAUR
+AbraEvosMoves:
+; Evolutions
+ db EV_LEVEL, 16, KADABRA
db 0
-;Learnset
- db 7,LEECH_SEED
- db 13,VINE_WHIP
- db 20,POISONPOWDER
- db 27,RAZOR_LEAF
- db 34,GROWTH
- db 41,SLEEP_POWDER
- db 48,SOLARBEAM
+; Learnset
db 0
-Mon003_EvosMoves:
-;VENUSAUR
-;Evolutions
+AlakazamEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 7,LEECH_SEED
- db 13,VINE_WHIP
- db 22,POISONPOWDER
- db 30,RAZOR_LEAF
- db 43,GROWTH
- db 55,SLEEP_POWDER
- db 65,SOLARBEAM
+; Learnset
+ db 16, CONFUSION
+ db 20, DISABLE
+ db 27, PSYBEAM
+ db 31, RECOVER
+ db 38, PSYCHIC_M
+ db 42, REFLECT
db 0
-Mon073_EvosMoves:
-;TENTACRUEL
-;Evolutions
+PidgeottoEvosMoves:
+; Evolutions
+ db EV_LEVEL, 36, PIDGEOT
db 0
-;Learnset
- db 7,SUPERSONIC
- db 13,WRAP
- db 18,POISON_STING
- db 22,WATER_GUN
- db 27,CONSTRICT
- db 35,BARRIER
- db 43,SCREECH
- db 50,HYDRO_PUMP
+; Learnset
+ db 5, SAND_ATTACK
+ db 12, QUICK_ATTACK
+ db 21, WHIRLWIND
+ db 31, WING_ATTACK
+ db 40, AGILITY
+ db 49, MIRROR_MOVE
db 0
-Mon179_EvosMoves:
-;MISSINGNO_9C
-;Evolutions
+PidgeotEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 5, SAND_ATTACK
+ db 12, QUICK_ATTACK
+ db 21, WHIRLWIND
+ db 31, WING_ATTACK
+ db 44, AGILITY
+ db 54, MIRROR_MOVE
db 0
-Mon118_EvosMoves:
-;GOLDEEN
-;Evolutions
- db EV_LEVEL,33,SEAKING
+StarmieEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 19,SUPERSONIC
- db 24,HORN_ATTACK
- db 30,FURY_ATTACK
- db 37,WATERFALL
- db 45,HORN_DRILL
- db 54,AGILITY
+; Learnset
db 0
-Mon119_EvosMoves:
-;SEAKING
-;Evolutions
+BulbasaurEvosMoves:
+; Evolutions
+ db EV_LEVEL, 16, IVYSAUR
db 0
-;Learnset
- db 19,SUPERSONIC
- db 24,HORN_ATTACK
- db 30,FURY_ATTACK
- db 39,WATERFALL
- db 48,HORN_DRILL
- db 54,AGILITY
+; Learnset
+ db 7, LEECH_SEED
+ db 13, VINE_WHIP
+ db 20, POISONPOWDER
+ db 27, RAZOR_LEAF
+ db 34, GROWTH
+ db 41, SLEEP_POWDER
+ db 48, SOLARBEAM
db 0
-Mon180_EvosMoves:
-;MISSINGNO_9F
-;Evolutions
+VenusaurEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 7, LEECH_SEED
+ db 13, VINE_WHIP
+ db 22, POISONPOWDER
+ db 30, RAZOR_LEAF
+ db 43, GROWTH
+ db 55, SLEEP_POWDER
+ db 65, SOLARBEAM
db 0
-Mon181_EvosMoves:
-;MISSINGNO_A0
-;Evolutions
+TentacruelEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 7, SUPERSONIC
+ db 13, WRAP
+ db 18, POISON_STING
+ db 22, WATER_GUN
+ db 27, CONSTRICT
+ db 35, BARRIER
+ db 43, SCREECH
+ db 50, HYDRO_PUMP
db 0
-Mon182_EvosMoves:
-;MISSINGNO_A1
-;Evolutions
+MissingNo9CEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
db 0
-Mon183_EvosMoves:
-;MISSINGNO_A2
-;Evolutions
+GoldeenEvosMoves:
+; Evolutions
+ db EV_LEVEL, 33, SEAKING
db 0
-;Learnset
+; Learnset
+ db 19, SUPERSONIC
+ db 24, HORN_ATTACK
+ db 30, FURY_ATTACK
+ db 37, WATERFALL
+ db 45, HORN_DRILL
+ db 54, AGILITY
db 0
-Mon077_EvosMoves:
-;PONYTA
-;Evolutions
- db EV_LEVEL,40,RAPIDASH
+SeakingEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 30,TAIL_WHIP
- db 32,STOMP
- db 35,GROWL
- db 39,FIRE_SPIN
- db 43,TAKE_DOWN
- db 48,AGILITY
+; Learnset
+ db 19, SUPERSONIC
+ db 24, HORN_ATTACK
+ db 30, FURY_ATTACK
+ db 39, WATERFALL
+ db 48, HORN_DRILL
+ db 54, AGILITY
db 0
-Mon078_EvosMoves:
-;RAPIDASH
-;Evolutions
+MissingNo9FEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 30,TAIL_WHIP
- db 32,STOMP
- db 35,GROWL
- db 39,FIRE_SPIN
- db 47,TAKE_DOWN
- db 55,AGILITY
+; Learnset
db 0
-Mon019_EvosMoves:
-;RATTATA
-;Evolutions
- db EV_LEVEL,20,RATICATE
+MissingNoA0EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 7,QUICK_ATTACK
- db 14,HYPER_FANG
- db 23,FOCUS_ENERGY
- db 34,SUPER_FANG
+; Learnset
db 0
-Mon020_EvosMoves:
-;RATICATE
-;Evolutions
+MissingNoA1EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 7,QUICK_ATTACK
- db 14,HYPER_FANG
- db 27,FOCUS_ENERGY
- db 41,SUPER_FANG
+; Learnset
db 0
-Mon033_EvosMoves:
-;NIDORINO
-;Evolutions
- db EV_ITEM,MOON_STONE,1,NIDOKING
+MissingNoA2EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 8,HORN_ATTACK
- db 12,DOUBLE_KICK
- db 19,POISON_STING
- db 27,FOCUS_ENERGY
- db 36,FURY_ATTACK
- db 46,HORN_DRILL
+; Learnset
db 0
-Mon030_EvosMoves:
-;NIDORINA
-;Evolutions
- db EV_ITEM,MOON_STONE,1,NIDOQUEEN
+PonytaEvosMoves:
+; Evolutions
+ db EV_LEVEL, 40, RAPIDASH
db 0
-;Learnset
- db 8,SCRATCH
- db 12,DOUBLE_KICK
- db 19,POISON_STING
- db 27,TAIL_WHIP
- db 36,BITE
- db 46,FURY_SWIPES
+; Learnset
+ db 30, TAIL_WHIP
+ db 32, STOMP
+ db 35, GROWL
+ db 39, FIRE_SPIN
+ db 43, TAKE_DOWN
+ db 48, AGILITY
db 0
-Mon074_EvosMoves:
-;GEODUDE
-;Evolutions
- db EV_LEVEL,25,GRAVELER
+RapidashEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 11,DEFENSE_CURL
- db 16,ROCK_THROW
- db 21,SELFDESTRUCT
- db 26,HARDEN
- db 31,EARTHQUAKE
- db 36,EXPLOSION
+; Learnset
+ db 30, TAIL_WHIP
+ db 32, STOMP
+ db 35, GROWL
+ db 39, FIRE_SPIN
+ db 47, TAKE_DOWN
+ db 55, AGILITY
db 0
-Mon137_EvosMoves:
-;PORYGON
-;Evolutions
+RattataEvosMoves:
+; Evolutions
+ db EV_LEVEL, 20, RATICATE
db 0
-;Learnset
- db 23,PSYBEAM
- db 28,RECOVER
- db 35,AGILITY
- db 42,TRI_ATTACK
- db 0
-
-Mon142_EvosMoves:
-;AERODACTYL
-;Evolutions
+; Learnset
+ db 7, QUICK_ATTACK
+ db 14, HYPER_FANG
+ db 23, FOCUS_ENERGY
+ db 34, SUPER_FANG
db 0
-;Learnset
- db 33,SUPERSONIC
- db 38,BITE
- db 45,TAKE_DOWN
- db 54,HYPER_BEAM
+
+RaticateEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 7, QUICK_ATTACK
+ db 14, HYPER_FANG
+ db 27, FOCUS_ENERGY
+ db 41, SUPER_FANG
+ db 0
+
+NidorinoEvosMoves:
+; Evolutions
+ db EV_ITEM, MOON_STONE, 1, NIDOKING
+ db 0
+; Learnset
+ db 8, HORN_ATTACK
+ db 12, DOUBLE_KICK
+ db 19, POISON_STING
+ db 27, FOCUS_ENERGY
+ db 36, FURY_ATTACK
+ db 46, HORN_DRILL
db 0
-Mon184_EvosMoves:
-;MISSINGNO_AC
-;Evolutions
+NidorinaEvosMoves:
+; Evolutions
+ db EV_ITEM, MOON_STONE, 1, NIDOQUEEN
db 0
-;Learnset
+; Learnset
+ db 8, SCRATCH
+ db 12, DOUBLE_KICK
+ db 19, POISON_STING
+ db 27, TAIL_WHIP
+ db 36, BITE
+ db 46, FURY_SWIPES
db 0
-Mon081_EvosMoves:
-;MAGNEMITE
-;Evolutions
- db EV_LEVEL,30,MAGNETON
+GeodudeEvosMoves:
+; Evolutions
+ db EV_LEVEL, 25, GRAVELER
db 0
-;Learnset
- db 21,SONICBOOM
- db 25,THUNDERSHOCK
- db 29,SUPERSONIC
- db 35,THUNDER_WAVE
- db 41,SWIFT
- db 47,SCREECH
+; Learnset
+ db 11, DEFENSE_CURL
+ db 16, ROCK_THROW
+ db 21, SELFDESTRUCT
+ db 26, HARDEN
+ db 31, EARTHQUAKE
+ db 36, EXPLOSION
db 0
-Mon185_EvosMoves:
-;MISSINGNO_AE
-;Evolutions
+PorygonEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 23, PSYBEAM
+ db 28, RECOVER
+ db 35, AGILITY
+ db 42, TRI_ATTACK
db 0
-Mon186_EvosMoves:
-;MISSINGNO_AF
-;Evolutions
+AerodactylEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 33, SUPERSONIC
+ db 38, BITE
+ db 45, TAKE_DOWN
+ db 54, HYPER_BEAM
db 0
-Mon004_EvosMoves:
-;CHARMANDER
-;Evolutions
- db EV_LEVEL,16,CHARMELEON
+MissingNoACEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 9,EMBER
- db 15,LEER
- db 22,RAGE
- db 30,SLASH
- db 38,FLAMETHROWER
- db 46,FIRE_SPIN
+; Learnset
db 0
-Mon007_EvosMoves:
-;SQUIRTLE
-;Evolutions
- db EV_LEVEL,16,WARTORTLE
+MagnemiteEvosMoves:
+; Evolutions
+ db EV_LEVEL, 30, MAGNETON
db 0
-;Learnset
- db 8,BUBBLE
- db 15,WATER_GUN
- db 22,BITE
- db 28,WITHDRAW
- db 35,SKULL_BASH
- db 42,HYDRO_PUMP
+; Learnset
+ db 21, SONICBOOM
+ db 25, THUNDERSHOCK
+ db 29, SUPERSONIC
+ db 35, THUNDER_WAVE
+ db 41, SWIFT
+ db 47, SCREECH
db 0
-Mon005_EvosMoves:
-;CHARMELEON
-;Evolutions
- db EV_LEVEL,36,CHARIZARD
+MissingNoAEEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 9,EMBER
- db 15,LEER
- db 24,RAGE
- db 33,SLASH
- db 42,FLAMETHROWER
- db 56,FIRE_SPIN
+; Learnset
db 0
-Mon008_EvosMoves:
-;WARTORTLE
-;Evolutions
- db EV_LEVEL,36,BLASTOISE
+MissingNoAFEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 8,BUBBLE
- db 15,WATER_GUN
- db 24,BITE
- db 31,WITHDRAW
- db 39,SKULL_BASH
- db 47,HYDRO_PUMP
+; Learnset
db 0
-Mon006_EvosMoves:
-;CHARIZARD
-;Evolutions
+CharmanderEvosMoves:
+; Evolutions
+ db EV_LEVEL, 16, CHARMELEON
db 0
-;Learnset
- db 9,EMBER
- db 15,LEER
- db 24,RAGE
- db 36,SLASH
- db 46,FLAMETHROWER
- db 55,FIRE_SPIN
+; Learnset
+ db 9, EMBER
+ db 15, LEER
+ db 22, RAGE
+ db 30, SLASH
+ db 38, FLAMETHROWER
+ db 46, FIRE_SPIN
db 0
-Mon187_EvosMoves:
-;MISSINGNO_B5
-;Evolutions
+SquirtleEvosMoves:
+; Evolutions
+ db EV_LEVEL, 16, WARTORTLE
db 0
-;Learnset
+; Learnset
+ db 8, BUBBLE
+ db 15, WATER_GUN
+ db 22, BITE
+ db 28, WITHDRAW
+ db 35, SKULL_BASH
+ db 42, HYDRO_PUMP
db 0
-Mon188_EvosMoves:
-;FOSSIL_KABUTOPS
-;Evolutions
+CharmeleonEvosMoves:
+; Evolutions
+ db EV_LEVEL, 36, CHARIZARD
db 0
-;Learnset
+; Learnset
+ db 9, EMBER
+ db 15, LEER
+ db 24, RAGE
+ db 33, SLASH
+ db 42, FLAMETHROWER
+ db 56, FIRE_SPIN
db 0
-Mon189_EvosMoves:
-;FOSSIL_AERODACTYL
-;Evolutions
+WartortleEvosMoves:
+; Evolutions
+ db EV_LEVEL, 36, BLASTOISE
db 0
-;Learnset
+; Learnset
+ db 8, BUBBLE
+ db 15, WATER_GUN
+ db 24, BITE
+ db 31, WITHDRAW
+ db 39, SKULL_BASH
+ db 47, HYDRO_PUMP
db 0
-Mon190_EvosMoves:
-;MON_GHOST
-;Evolutions
+CharizardEvosMoves:
+; Evolutions
db 0
-;Learnset
+; Learnset
+ db 9, EMBER
+ db 15, LEER
+ db 24, RAGE
+ db 36, SLASH
+ db 46, FLAMETHROWER
+ db 55, FIRE_SPIN
db 0
-Mon043_EvosMoves:
-;ODDISH
-;Evolutions
- db EV_LEVEL,21,GLOOM
+MissingNoB5EvosMoves:
+; Evolutions
db 0
-;Learnset
- db 15,POISONPOWDER
- db 17,STUN_SPORE
- db 19,SLEEP_POWDER
- db 24,ACID
- db 33,PETAL_DANCE
- db 46,SOLARBEAM
+; Learnset
db 0
-Mon044_EvosMoves:
-;GLOOM
-;Evolutions
- db EV_ITEM,LEAF_STONE,1,VILEPLUME
+FossilKabutopsEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 15,POISONPOWDER
- db 17,STUN_SPORE
- db 19,SLEEP_POWDER
- db 28,ACID
- db 38,PETAL_DANCE
- db 52,SOLARBEAM
+; Learnset
db 0
-Mon045_EvosMoves:
-;VILEPLUME
-;Evolutions
+FossilAerodactylEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 15,POISONPOWDER
- db 17,STUN_SPORE
- db 19,SLEEP_POWDER
+; Learnset
db 0
-Mon069_EvosMoves:
-;BELLSPROUT
-;Evolutions
- db EV_LEVEL,21,WEEPINBELL
+MonGhostEvosMoves:
+; Evolutions
db 0
-;Learnset
- db 13,WRAP
- db 15,POISONPOWDER
- db 18,SLEEP_POWDER
- db 21,STUN_SPORE
- db 26,ACID
- db 33,RAZOR_LEAF
- db 42,SLAM
+; Learnset
db 0
-Mon070_EvosMoves:
-;WEEPINBELL
-;Evolutions
- db EV_ITEM,LEAF_STONE,1,VICTREEBEL
+OddishEvosMoves:
+; Evolutions
+ db EV_LEVEL, 21, GLOOM
db 0
-;Learnset
- db 13,WRAP
- db 15,POISONPOWDER
- db 18,SLEEP_POWDER
- db 23,STUN_SPORE
- db 29,ACID
- db 38,RAZOR_LEAF
- db 49,SLAM
+; Learnset
+ db 15, POISONPOWDER
+ db 17, STUN_SPORE
+ db 19, SLEEP_POWDER
+ db 24, ACID
+ db 33, PETAL_DANCE
+ db 46, SOLARBEAM
db 0
-Mon071_EvosMoves:
-;VICTREEBEL
-;Evolutions
+GloomEvosMoves:
+; Evolutions
+ db EV_ITEM, LEAF_STONE, 1, VILEPLUME
db 0
-;Learnset
- db 13,WRAP
- db 15,POISONPOWDER
- db 18,SLEEP_POWDER
+; Learnset
+ db 15, POISONPOWDER
+ db 17, STUN_SPORE
+ db 19, SLEEP_POWDER
+ db 28, ACID
+ db 38, PETAL_DANCE
+ db 52, SOLARBEAM
db 0
+VileplumeEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 15, POISONPOWDER
+ db 17, STUN_SPORE
+ db 19, SLEEP_POWDER
+ db 0
+
+BellsproutEvosMoves:
+; Evolutions
+ db EV_LEVEL, 21, WEEPINBELL
+ db 0
+; Learnset
+ db 13, WRAP
+ db 15, POISONPOWDER
+ db 18, SLEEP_POWDER
+ db 21, STUN_SPORE
+ db 26, ACID
+ db 33, RAZOR_LEAF
+ db 42, SLAM
+ db 0
+
+WeepinbellEvosMoves:
+; Evolutions
+ db EV_ITEM, LEAF_STONE, 1, VICTREEBEL
+ db 0
+; Learnset
+ db 13, WRAP
+ db 15, POISONPOWDER
+ db 18, SLEEP_POWDER
+ db 23, STUN_SPORE
+ db 29, ACID
+ db 38, RAZOR_LEAF
+ db 49, SLAM
+ db 0
+
+VictreebelEvosMoves:
+; Evolutions
+ db 0
+; Learnset
+ db 13, WRAP
+ db 15, POISONPOWDER
+ db 18, SLEEP_POWDER
+ db 0
diff --git a/data/force_bike_surf.asm b/data/force_bike_surf.asm
index 926db476..fb352aa9 100755
--- a/data/force_bike_surf.asm
+++ b/data/force_bike_surf.asm
@@ -4,8 +4,8 @@ ForcedBikeOrSurfMaps:
db ROUTE_16,$0B,$11
db ROUTE_18,$08,$21
db ROUTE_18,$09,$21
- db SEAFOAM_ISLANDS_4,$07,$12
- db SEAFOAM_ISLANDS_4,$07,$13
- db SEAFOAM_ISLANDS_5,$0E,$04
- db SEAFOAM_ISLANDS_5,$0E,$05
+ db SEAFOAM_ISLANDS_B3F,$07,$12
+ db SEAFOAM_ISLANDS_B3F,$07,$13
+ db SEAFOAM_ISLANDS_B4F,$0E,$04
+ db SEAFOAM_ISLANDS_B4F,$0E,$05
db $FF ;end
diff --git a/data/hidden_item_coords.asm b/data/hidden_item_coords.asm
index e94ebf80..acc79172 100755
--- a/data/hidden_item_coords.asm
+++ b/data/hidden_item_coords.asm
@@ -1,58 +1,58 @@
HiddenItemCoords:
; map ID, then coords
- db SILPH_CO_5F, $03, $0c
- db SILPH_CO_9F, $0f, $02
- db MANSION_3, $09, $01
- db MANSION_4, $09, $01
- db SAFARI_ZONE_WEST, $05, $06
- db UNKNOWN_DUNGEON_2, $0d, $10
- db UNKNOWN_DUNGEON_3, $0e, $08
- db UNUSED_MAP_6F, $0b, $0e
- db SEAFOAM_ISLANDS_3, $0f, $0f
- db SEAFOAM_ISLANDS_4, $10, $09
- db SEAFOAM_ISLANDS_5, $11, $19
- db VIRIDIAN_FOREST, $12, $01
- db VIRIDIAN_FOREST, $2a, $10
- db MT_MOON_3, $0c, $12
- db MT_MOON_3, $09, $21
- db SS_ANNE_10, $01, $03
- db SS_ANNE_6, $09, $0d
- db UNDERGROUND_PATH_NS, $04, $03
- db UNDERGROUND_PATH_NS, $22, $04
- db UNDERGROUND_PATH_WE, $02, $0c
- db UNDERGROUND_PATH_WE, $05, $15
- db ROCKET_HIDEOUT_1, $0f, $15
- db ROCKET_HIDEOUT_3, $11, $1b
- db ROCKET_HIDEOUT_4, $01, $19
- db ROUTE_10, $11, $09
- db ROUTE_10, $35, $10
- db POWER_PLANT, $10, $11
- db POWER_PLANT, $01, $0c
- db ROUTE_11, $05, $30
- db ROUTE_12, $3f, $02
- db ROUTE_13, $0e, $01
- db ROUTE_13, $0d, $10
- db ROUTE_17, $0e, $0f
- db ROUTE_17, $2d, $08
- db ROUTE_17, $48, $11
- db ROUTE_17, $5b, $04
- db ROUTE_17, $79, $08
- db ROUTE_23, $2c, $09
- db ROUTE_23, $46, $13
- db ROUTE_23, $5a, $08
- db VICTORY_ROAD_2, $02, $05
- db VICTORY_ROAD_2, $07, $1a
- db ROUTE_25, $03, $26
- db ROUTE_25, $01, $0a
- db ROUTE_4, $03, $28
- db ROUTE_9, $07, $0e
- db COPYCATS_HOUSE_2F, $01, $01
- db VIRIDIAN_CITY, $04, $0e
- db CERULEAN_CITY, $08, $0f
- db UNKNOWN_DUNGEON_1, $07, $12
- db POKEMONTOWER_5, $0c, $04
- db VERMILION_CITY, $0b, $0e
- db CELADON_CITY, $0f, $30
- db SAFARI_ZONE_ENTRANCE, $01, $0a
- db MANSION_1, $10, $08
+ db SILPH_CO_5F,$03,$0c
+ db SILPH_CO_9F,$0f,$02
+ db POKEMON_MANSION_3F,$09,$01
+ db POKEMON_MANSION_B1F,$09,$01
+ db SAFARI_ZONE_WEST,$05,$06
+ db CERULEAN_CAVE_2F,$0d,$10
+ db CERULEAN_CAVE_B1F,$0e,$08
+ db UNUSED_MAP_6F,$0b,$0e
+ db SEAFOAM_ISLANDS_B2F,$0f,$0f
+ db SEAFOAM_ISLANDS_B3F,$10,$09
+ db SEAFOAM_ISLANDS_B4F,$11,$19
+ db VIRIDIAN_FOREST,$12,$01
+ db VIRIDIAN_FOREST,$2a,$10
+ db MT_MOON_B2F,$0c,$12
+ db MT_MOON_B2F,$09,$21
+ db SS_ANNE_B1F_ROOMS,$01,$03
+ db SS_ANNE_KITCHEN,$09,$0d
+ db UNDERGROUND_PATH_NORTH_SOUTH,$04,$03
+ db UNDERGROUND_PATH_NORTH_SOUTH,$22,$04
+ db UNDERGROUND_PATH_WEST_EAST,$02,$0c
+ db UNDERGROUND_PATH_WEST_EAST,$05,$15
+ db ROCKET_HIDEOUT_B1F,$0f,$15
+ db ROCKET_HIDEOUT_B3F,$11,$1b
+ db ROCKET_HIDEOUT_B4F,$01,$19
+ db ROUTE_10,$11,$09
+ db ROUTE_10,$35,$10
+ db POWER_PLANT,$10,$11
+ db POWER_PLANT,$01,$0c
+ db ROUTE_11,$05,$30
+ db ROUTE_12,$3f,$02
+ db ROUTE_13,$0e,$01
+ db ROUTE_13,$0d,$10
+ db ROUTE_17,$0e,$0f
+ db ROUTE_17,$2d,$08
+ db ROUTE_17,$48,$11
+ db ROUTE_17,$5b,$04
+ db ROUTE_17,$79,$08
+ db ROUTE_23,$2c,$09
+ db ROUTE_23,$46,$13
+ db ROUTE_23,$5a,$08
+ db VICTORY_ROAD_2F,$02,$05
+ db VICTORY_ROAD_2F,$07,$1a
+ db ROUTE_25,$03,$26
+ db ROUTE_25,$01,$0a
+ db ROUTE_4,$03,$28
+ db ROUTE_9,$07,$0e
+ db COPYCATS_HOUSE_2F,$01,$01
+ db VIRIDIAN_CITY,$04,$0e
+ db CERULEAN_CITY,$08,$0f
+ db CERULEAN_CAVE_1F,$07,$12
+ db POKEMON_TOWER_5F,$0c,$04
+ db VERMILION_CITY,$0b,$0e
+ db CELADON_CITY,$0f,$30
+ db SAFARI_ZONE_GATE,$01,$0a
+ db POKEMON_MANSION_1F,$10,$08
db $ff
diff --git a/data/hidden_objects.asm b/data/hidden_objects.asm
index 190c03e9..f4865bb9 100755
--- a/data/hidden_objects.asm
+++ b/data/hidden_objects.asm
@@ -1,85 +1,85 @@
HiddenObjectMaps:
- dbw SILPH_CO_11F, SilphCo11FHiddenObjects
- dbw SILPH_CO_5F, SilphCo5FHiddenObjects
- dbw SILPH_CO_9F, SilphCo9FHiddenObjects
- dbw MANSION_2, Mansion2HiddenObjects
- dbw MANSION_3, Mansion3HiddenObjects
- dbw MANSION_4, Mansion4HiddenObjects
- dbw SAFARI_ZONE_WEST, SafariZoneWestHiddenObjects
- dbw UNKNOWN_DUNGEON_2, UnknownDungeon2HiddenObjects
- dbw UNKNOWN_DUNGEON_3, UnknownDungeon3HiddenObjects
- dbw UNUSED_MAP_6F, UnusedMap6FHiddenObjects
- dbw SEAFOAM_ISLANDS_3, SeafoamIslands3HiddenObjects
- dbw SEAFOAM_ISLANDS_4, SeafoamIslands4HiddenObjects
- dbw SEAFOAM_ISLANDS_5, SeafoamIslands5HiddenObjects
- dbw VIRIDIAN_FOREST, ViridianForestHiddenObjects
- dbw MT_MOON_3, MtMoon3HiddenObjects
- dbw SS_ANNE_10, SSAnne10HiddenObjects
- dbw SS_ANNE_6, SSAnne6HiddenObjects
- dbw UNDERGROUND_PATH_NS, UndergroundPathNsHiddenObjects
- dbw UNDERGROUND_PATH_WE, UndergroundPathWeHiddenObjects
- dbw ROCKET_HIDEOUT_1, RocketHideout1HiddenObjects
- dbw ROCKET_HIDEOUT_3, RocketHideout3HiddenObjects
- dbw ROCKET_HIDEOUT_4, RocketHideout4HiddenObjects
- dbw ROUTE_10, Route10HiddenObjects
- dbw ROCK_TUNNEL_POKECENTER, RockTunnelPokecenterHiddenObjects
- dbw POWER_PLANT, PowerPlantHiddenObjects
- dbw ROUTE_11, Route11HiddenObjects
- dbw ROUTE_12, Route12HiddenObjects
- dbw ROUTE_13, Route13HiddenObjects
- dbw ROUTE_15_GATE_2F, Route15Gate2FHiddenObjects
- dbw ROUTE_17, Route17HiddenObjects
- dbw ROUTE_23, Route23HiddenObjects
- dbw VICTORY_ROAD_2, VictoryRoad2HiddenObjects
- dbw ROUTE_25, Route25HiddenObjects
- dbw BILLS_HOUSE, BillsHouseHiddenObjects
- dbw ROUTE_4, Route4HiddenObjects
- dbw MT_MOON_POKECENTER, MtMoonPokecenterHiddenObjects
- dbw ROUTE_9, Route9HiddenObjects
- dbw TRADE_CENTER, TradeCenterHiddenObjects
- dbw COLOSSEUM, ColosseumHiddenObjects
- dbw INDIGO_PLATEAU, IndigoPlateauHiddenObjects
- dbw INDIGO_PLATEAU_LOBBY, IndigoPlateauLobbyHiddenObjects
- dbw COPYCATS_HOUSE_2F, CopycatsHouse2FHiddenObjects
- dbw FIGHTING_DOJO, FightingDojoHiddenObjects
- dbw SAFFRON_GYM, SaffronGymHiddenObjects
- dbw SAFFRON_POKECENTER, SaffronPokecenterHiddenObjects
- dbw REDS_HOUSE_2F, RedsHouse2FHiddenObjects
- dbw BLUES_HOUSE, BluesHouseHiddenObjects
- dbw OAKS_LAB, OaksLabHiddenObjects
- dbw VIRIDIAN_CITY, ViridianCityHiddenObjects
- dbw VIRIDIAN_POKECENTER, ViridianPokecenterHiddenObjects
- dbw VIRIDIAN_SCHOOL, ViridianSchoolHiddenObjects
- dbw VIRIDIAN_GYM, ViridianGymHiddenObjects
- dbw MUSEUM_1F, Museum1FHiddenObjects
- dbw PEWTER_GYM, PewterGymHiddenObjects
- dbw PEWTER_POKECENTER, PewterPokecenterHiddenObjects
- dbw CERULEAN_CITY, CeruleanCityHiddenObjects
- dbw CERULEAN_POKECENTER, CeruleanPokecenterHiddenObjects
- dbw CERULEAN_GYM, CeruleanGymHiddenObjects
- dbw BIKE_SHOP, BikeShopHiddenObjects
- dbw UNKNOWN_DUNGEON_1, UnknownDungeon1HiddenObjects
- dbw LAVENDER_POKECENTER, LavenderPokecenterHiddenObjects
- dbw POKEMONTOWER_5, Pokemontower5HiddenObjects
- dbw LAVENDER_HOUSE_1, LavenderHouse1HiddenObjects
- dbw VERMILION_CITY, VermilionCityHiddenObjects
- dbw VERMILION_POKECENTER, VermilionPokecenterHiddenObjects
- dbw POKEMON_FAN_CLUB, PokemonFanClubHiddenObjects
- dbw VERMILION_GYM, VermilionGymHiddenObjects
- dbw CELADON_CITY, CeladonCityHiddenObjects
- dbw CELADON_HOTEL, CeladonHotelHiddenObjects
- dbw CELADON_MANSION_2, CeladonMansion2HiddenObjects
- dbw CELADON_MANSION_5, CeladonMansion5HiddenObjects
- dbw CELADON_POKECENTER, CeladonPokecenterHiddenObjects
- dbw CELADON_GYM, CeladonGymHiddenObjects
- dbw GAME_CORNER, GameCornerHiddenObjects
- dbw FUCHSIA_POKECENTER, FuchsiaPokecenterHiddenObjects
- dbw SAFARI_ZONE_ENTRANCE, SafariZoneEntranceHiddenObjects
- dbw FUCHSIA_GYM, FuchsiaGymHiddenObjects
- dbw MANSION_1, Mansion1HiddenObjects
- dbw CINNABAR_GYM, CinnabarGymHiddenObjects
- dbw CINNABAR_LAB_4, CinnabarLab4HiddenObjects
- dbw CINNABAR_POKECENTER, CinnabarPokecenterHiddenObjects
+ dbw SILPH_CO_11F, SilphCo11FHiddenObjects
+ dbw SILPH_CO_5F, SilphCo5FHiddenObjects
+ dbw SILPH_CO_9F, SilphCo9FHiddenObjects
+ dbw POKEMON_MANSION_2F, Mansion2HiddenObjects
+ dbw POKEMON_MANSION_3F, Mansion3HiddenObjects
+ dbw POKEMON_MANSION_B1F, Mansion4HiddenObjects
+ dbw SAFARI_ZONE_WEST, SafariZoneWestHiddenObjects
+ dbw CERULEAN_CAVE_2F, CeruleanCave2HiddenObjects
+ dbw CERULEAN_CAVE_B1F, CeruleanCave3HiddenObjects
+ dbw UNUSED_MAP_6F, UnusedMap6FHiddenObjects
+ dbw SEAFOAM_ISLANDS_B2F, SeafoamIslands3HiddenObjects
+ dbw SEAFOAM_ISLANDS_B3F, SeafoamIslands4HiddenObjects
+ dbw SEAFOAM_ISLANDS_B4F, SeafoamIslands5HiddenObjects
+ dbw VIRIDIAN_FOREST, ViridianForestHiddenObjects
+ dbw MT_MOON_B2F, MtMoon3HiddenObjects
+ dbw SS_ANNE_B1F_ROOMS, SSAnne10HiddenObjects
+ dbw SS_ANNE_KITCHEN, SSAnne6HiddenObjects
+ dbw UNDERGROUND_PATH_NORTH_SOUTH, UndergroundPathNsHiddenObjects
+ dbw UNDERGROUND_PATH_WEST_EAST, UndergroundPathWeHiddenObjects
+ dbw ROCKET_HIDEOUT_B1F, RocketHideout1HiddenObjects
+ dbw ROCKET_HIDEOUT_B3F, RocketHideout3HiddenObjects
+ dbw ROCKET_HIDEOUT_B4F, RocketHideout4HiddenObjects
+ dbw ROUTE_10, Route10HiddenObjects
+ dbw ROCK_TUNNEL_POKECENTER, RockTunnelPokecenterHiddenObjects
+ dbw POWER_PLANT, PowerPlantHiddenObjects
+ dbw ROUTE_11, Route11HiddenObjects
+ dbw ROUTE_12, Route12HiddenObjects
+ dbw ROUTE_13, Route13HiddenObjects
+ dbw ROUTE_15_GATE_2F, Route15Gate2FHiddenObjects
+ dbw ROUTE_17, Route17HiddenObjects
+ dbw ROUTE_23, Route23HiddenObjects
+ dbw VICTORY_ROAD_2F, VictoryRoad2HiddenObjects
+ dbw ROUTE_25, Route25HiddenObjects
+ dbw BILLS_HOUSE, BillsHouseHiddenObjects
+ dbw ROUTE_4, Route4HiddenObjects
+ dbw MT_MOON_POKECENTER, MtMoonPokecenterHiddenObjects
+ dbw ROUTE_9, Route9HiddenObjects
+ dbw TRADE_CENTER, TradeCenterHiddenObjects
+ dbw COLOSSEUM, ColosseumHiddenObjects
+ dbw INDIGO_PLATEAU, IndigoPlateauHiddenObjects
+ dbw INDIGO_PLATEAU_LOBBY, IndigoPlateauLobbyHiddenObjects
+ dbw COPYCATS_HOUSE_2F, CopycatsHouse2FHiddenObjects
+ dbw FIGHTING_DOJO, FightingDojoHiddenObjects
+ dbw SAFFRON_GYM, SaffronGymHiddenObjects
+ dbw SAFFRON_POKECENTER, SaffronPokecenterHiddenObjects
+ dbw REDS_HOUSE_2F, RedsHouse2FHiddenObjects
+ dbw BLUES_HOUSE, BluesHouseHiddenObjects
+ dbw OAKS_LAB, OaksLabHiddenObjects
+ dbw VIRIDIAN_CITY, ViridianCityHiddenObjects
+ dbw VIRIDIAN_POKECENTER, ViridianPokecenterHiddenObjects
+ dbw VIRIDIAN_SCHOOL_HOUSE, ViridianSchoolHiddenObjects
+ dbw VIRIDIAN_GYM, ViridianGymHiddenObjects
+ dbw MUSEUM_1F, Museum1FHiddenObjects
+ dbw PEWTER_GYM, PewterGymHiddenObjects
+ dbw PEWTER_POKECENTER, PewterPokecenterHiddenObjects
+ dbw CERULEAN_CITY, CeruleanCityHiddenObjects
+ dbw CERULEAN_POKECENTER, CeruleanPokecenterHiddenObjects
+ dbw CERULEAN_GYM, CeruleanGymHiddenObjects
+ dbw BIKE_SHOP, BikeShopHiddenObjects
+ dbw CERULEAN_CAVE_1F, CeruleanCave1HiddenObjects
+ dbw LAVENDER_POKECENTER, LavenderPokecenterHiddenObjects
+ dbw POKEMON_TOWER_5F, Pokemontower5HiddenObjects
+ dbw MR_FUJIS_HOUSE, LavenderHouse1HiddenObjects
+ dbw VERMILION_CITY, VermilionCityHiddenObjects
+ dbw VERMILION_POKECENTER, VermilionPokecenterHiddenObjects
+ dbw POKEMON_FAN_CLUB, PokemonFanClubHiddenObjects
+ dbw VERMILION_GYM, VermilionGymHiddenObjects
+ dbw CELADON_CITY, CeladonCityHiddenObjects
+ dbw CELADON_HOTEL, CeladonHotelHiddenObjects
+ dbw CELADON_MANSION_2F, CeladonMansion2HiddenObjects
+ dbw CELADON_MANSION_ROOF_HOUSE, CeladonMansion5HiddenObjects
+ dbw CELADON_POKECENTER, CeladonPokecenterHiddenObjects
+ dbw CELADON_GYM, CeladonGymHiddenObjects
+ dbw GAME_CORNER, GameCornerHiddenObjects
+ dbw FUCHSIA_POKECENTER, FuchsiaPokecenterHiddenObjects
+ dbw SAFARI_ZONE_GATE, SafariZoneEntranceHiddenObjects
+ dbw FUCHSIA_GYM, FuchsiaGymHiddenObjects
+ dbw POKEMON_MANSION_1F, Mansion1HiddenObjects
+ dbw CINNABAR_GYM, CinnabarGymHiddenObjects
+ dbw CINNABAR_LAB_FOSSIL_ROOM, CinnabarLab4HiddenObjects
+ dbw CINNABAR_POKECENTER, CinnabarPokecenterHiddenObjects
db $ff
; format: y-coord, x-coord, text id/item id, object routine
@@ -119,11 +119,11 @@ SafariZoneWestHiddenObjects:
hidden_object 5, 6, REVIVE, HiddenItems
db $ff
-UnknownDungeon2HiddenObjects:
+CeruleanCave2HiddenObjects:
hidden_object 13, 16, PP_UP, HiddenItems
db $ff
-UnknownDungeon3HiddenObjects:
+CeruleanCave3HiddenObjects:
hidden_object 14, 8, PP_UP, HiddenItems
db $ff
@@ -372,7 +372,7 @@ BikeShopHiddenObjects:
hidden_object 5, 1, $d0, PrintNewBikeText
db $ff
-UnknownDungeon1HiddenObjects:
+CeruleanCave1HiddenObjects:
hidden_object 7, 18, PP_UP, HiddenItems
db $ff
diff --git a/data/hide_show_data.asm b/data/hide_show_data.asm
index d4f9190e..df9e5e8f 100755
--- a/data/hide_show_data.asm
+++ b/data/hide_show_data.asm
@@ -271,323 +271,323 @@ Hide EQU $11 ; (HideObjectPredef - PredefPointers) / 3
Show EQU $15 ; (ShowObjectPredef - PredefPointers) / 3
MapHSXX:
- db $FF, $FF, $FF
+ db $FF,$FF,$FF
MapHS00:
- db PALLET_TOWN, $01, Hide
+ db PALLET_TOWN,$01,Hide
MapHS01:
- db VIRIDIAN_CITY, $05, Show
- db VIRIDIAN_CITY, $07, Hide
- db VIRIDIAN_CITY, $08, Hide
+ db VIRIDIAN_CITY,$05,Show
+ db VIRIDIAN_CITY,$07,Hide
+ db VIRIDIAN_CITY,$08,Hide
MapHS02:
- db PEWTER_CITY, $03, Show
- db PEWTER_CITY, $05, Show
+ db PEWTER_CITY,$03,Show
+ db PEWTER_CITY,$05,Show
MapHS03:
- db CERULEAN_CITY, $01, Hide
- db CERULEAN_CITY, $02, Show
- db CERULEAN_CITY, $06, Hide
- db CERULEAN_CITY, $0A, Show
- db CERULEAN_CITY, $0B, Show
+ db CERULEAN_CITY,$01,Hide
+ db CERULEAN_CITY,$02,Show
+ db CERULEAN_CITY,$06,Hide
+ db CERULEAN_CITY,$0A,Show
+ db CERULEAN_CITY,$0B,Show
MapHS0A:
- db SAFFRON_CITY, $01, Show
- db SAFFRON_CITY, $02, Show
- db SAFFRON_CITY, $03, Show
- db SAFFRON_CITY, $04, Show
- db SAFFRON_CITY, $05, Show
- db SAFFRON_CITY, $06, Show
- db SAFFRON_CITY, $07, Show
- db SAFFRON_CITY, $08, Hide
- db SAFFRON_CITY, $09, Hide
- db SAFFRON_CITY, $0A, Hide
- db SAFFRON_CITY, $0B, Hide
- db SAFFRON_CITY, $0C, Hide
- db SAFFRON_CITY, $0D, Hide
- db SAFFRON_CITY, $0E, Show
- db SAFFRON_CITY, $0F, Hide
+ db SAFFRON_CITY,$01,Show
+ db SAFFRON_CITY,$02,Show
+ db SAFFRON_CITY,$03,Show
+ db SAFFRON_CITY,$04,Show
+ db SAFFRON_CITY,$05,Show
+ db SAFFRON_CITY,$06,Show
+ db SAFFRON_CITY,$07,Show
+ db SAFFRON_CITY,$08,Hide
+ db SAFFRON_CITY,$09,Hide
+ db SAFFRON_CITY,$0A,Hide
+ db SAFFRON_CITY,$0B,Hide
+ db SAFFRON_CITY,$0C,Hide
+ db SAFFRON_CITY,$0D,Hide
+ db SAFFRON_CITY,$0E,Show
+ db SAFFRON_CITY,$0F,Hide
MapHS0D:
- db ROUTE_2, $01, Show
- db ROUTE_2, $02, Show
+ db ROUTE_2,$01,Show
+ db ROUTE_2,$02,Show
MapHS0F:
- db ROUTE_4, $03, Show
+ db ROUTE_4,$03,Show
MapHS14:
- db ROUTE_9, $0A, Show
+ db ROUTE_9,$0A,Show
MapHS17:
- db ROUTE_12, $01, Show
- db ROUTE_12, $09, Show
- db ROUTE_12, $0A, Show
+ db ROUTE_12,$01,Show
+ db ROUTE_12,$09,Show
+ db ROUTE_12,$0A,Show
MapHS1A:
- db ROUTE_15, $0B, Show
+ db ROUTE_15,$0B,Show
MapHS1B:
- db ROUTE_16, $07, Show
+ db ROUTE_16,$07,Show
MapHS21:
- db ROUTE_22, $01, Hide
- db ROUTE_22, $02, Hide
+ db ROUTE_22,$01,Hide
+ db ROUTE_22,$02,Hide
MapHS23:
- db ROUTE_24, $01, Show
- db ROUTE_24, $08, Show
+ db ROUTE_24,$01,Show
+ db ROUTE_24,$08,Show
MapHS24:
- db ROUTE_25, $0A, Show
+ db ROUTE_25,$0A,Show
MapHS27:
- db BLUES_HOUSE, $01, Show
- db BLUES_HOUSE, $02, Hide
- db BLUES_HOUSE, $03, Show
+ db BLUES_HOUSE,$01,Show
+ db BLUES_HOUSE,$02,Hide
+ db BLUES_HOUSE,$03,Show
MapHS28:
- db OAKS_LAB, $01, Show
- db OAKS_LAB, $02, Show
- db OAKS_LAB, $03, Hide
- db OAKS_LAB, $04, Show
- db OAKS_LAB, $05, Show
- db OAKS_LAB, $06, Hide
+ db OAKS_LAB,$01,Show
+ db OAKS_LAB,$02,Show
+ db OAKS_LAB,$03,Hide
+ db OAKS_LAB,$04,Show
+ db OAKS_LAB,$05,Show
+ db OAKS_LAB,$06,Hide
MapHS2D:
- db VIRIDIAN_GYM, $01, Show
- db VIRIDIAN_GYM, $0B, Show
+ db VIRIDIAN_GYM,$01,Show
+ db VIRIDIAN_GYM,$0B,Show
MapHS34:
- db MUSEUM_1F, $05, Show
+ db MUSEUM_1F,$05,Show
MapHS3F: ; bulbasaur adoption house
- db CERULEAN_HOUSE_1, $02, Show
+ db CERULEAN_TRADE_HOUSE,$02,Show
MapHSE4:
- db UNKNOWN_DUNGEON_1, $01, Show
- db UNKNOWN_DUNGEON_1, $02, Show
- db UNKNOWN_DUNGEON_1, $03, Show
- db UNKNOWN_DUNGEON_1, $04, Show
+ db CERULEAN_CAVE_1F,$01,Show
+ db CERULEAN_CAVE_1F,$02,Show
+ db CERULEAN_CAVE_1F,$03,Show
+ db CERULEAN_CAVE_1F,$04,Show
MapHS8F:
- db POKEMONTOWER_2, $01, Show
+ db POKEMON_TOWER_2F,$01,Show
MapHS90:
- db POKEMONTOWER_3, $04, Show
+ db POKEMON_TOWER_3F,$04,Show
MapHS91:
- db POKEMONTOWER_4, $04, Show
- db POKEMONTOWER_4, $05, Show
- db POKEMONTOWER_4, $06, Show
+ db POKEMON_TOWER_4F,$04,Show
+ db POKEMON_TOWER_4F,$05,Show
+ db POKEMON_TOWER_4F,$06,Show
MapHS92:
- db POKEMONTOWER_5, $06, Show
+ db POKEMON_TOWER_5F,$06,Show
MapHS93:
- db POKEMONTOWER_6, $04, Show
- db POKEMONTOWER_6, $05, Show
+ db POKEMON_TOWER_6F,$04,Show
+ db POKEMON_TOWER_6F,$05,Show
MapHS94:
- db POKEMONTOWER_7, $01, Hide ; jessie & james?
- db POKEMONTOWER_7, $02, Hide
- db POKEMONTOWER_7, $03, Show
+ db POKEMON_TOWER_7F,$01,Hide ; jessie & james?
+ db POKEMON_TOWER_7F,$02,Hide
+ db POKEMON_TOWER_7F,$03,Show
MapHS95:
- db LAVENDER_HOUSE_1, $05, Hide
+ db MR_FUJIS_HOUSE,$05,Hide
MapHS84:
- db CELADON_MANSION_5, $02, Show
+ db CELADON_MANSION_ROOF_HOUSE,$02,Show
MapHS87:
- db GAME_CORNER, $0B, Show
+ db GAME_CORNER,$0B,Show
MapHS9B:
- db FUCHSIA_HOUSE_2, $02, Show
+ db WARDENS_HOUSE,$02,Show
MapHSA5:
- db MANSION_1, $02, Show
- db MANSION_1, $03, Show
+ db POKEMON_MANSION_1F,$02,Show
+ db POKEMON_MANSION_1F,$03,Show
MapHSB1:
- db FIGHTING_DOJO, $06, Show
- db FIGHTING_DOJO, $07, Show
+ db FIGHTING_DOJO,$06,Show
+ db FIGHTING_DOJO,$07,Show
MapHSB5:
- db SILPH_CO_1F, $01, Hide
+ db SILPH_CO_1F,$01,Hide
MapHS53:
- db POWER_PLANT, $01, Show
- db POWER_PLANT, $02, Show
- db POWER_PLANT, $03, Show
- db POWER_PLANT, $04, Show
- db POWER_PLANT, $05, Show
- db POWER_PLANT, $06, Show
- db POWER_PLANT, $07, Show
- db POWER_PLANT, $08, Show
- db POWER_PLANT, $09, Show
- db POWER_PLANT, $0A, Show
- db POWER_PLANT, $0B, Show
- db POWER_PLANT, $0C, Show
- db POWER_PLANT, $0D, Show
- db POWER_PLANT, $0E, Show
+ db POWER_PLANT,$01,Show
+ db POWER_PLANT,$02,Show
+ db POWER_PLANT,$03,Show
+ db POWER_PLANT,$04,Show
+ db POWER_PLANT,$05,Show
+ db POWER_PLANT,$06,Show
+ db POWER_PLANT,$07,Show
+ db POWER_PLANT,$08,Show
+ db POWER_PLANT,$09,Show
+ db POWER_PLANT,$0A,Show
+ db POWER_PLANT,$0B,Show
+ db POWER_PLANT,$0C,Show
+ db POWER_PLANT,$0D,Show
+ db POWER_PLANT,$0E,Show
MapHSC2:
- db VICTORY_ROAD_2, $06, Show
- db VICTORY_ROAD_2, $07, Show
- db VICTORY_ROAD_2, $08, Show
- db VICTORY_ROAD_2, $09, Show
- db VICTORY_ROAD_2, $0A, Show
- db VICTORY_ROAD_2, $0D, Show
+ db VICTORY_ROAD_2F,$06,Show
+ db VICTORY_ROAD_2F,$07,Show
+ db VICTORY_ROAD_2F,$08,Show
+ db VICTORY_ROAD_2F,$09,Show
+ db VICTORY_ROAD_2F,$0A,Show
+ db VICTORY_ROAD_2F,$0D,Show
MapHS58:
- db BILLS_HOUSE, $01, Show
- db BILLS_HOUSE, $02, Hide
- db BILLS_HOUSE, $03, Hide
+ db BILLS_HOUSE,$01,Show
+ db BILLS_HOUSE,$02,Hide
+ db BILLS_HOUSE,$03,Hide
MapHS33:
- db VIRIDIAN_FOREST, $07, Show
- db VIRIDIAN_FOREST, $08, Show
- db VIRIDIAN_FOREST, $09, Show
+ db VIRIDIAN_FOREST,$07,Show
+ db VIRIDIAN_FOREST,$08,Show
+ db VIRIDIAN_FOREST,$09,Show
MapHS3B:
- db MT_MOON_1, $08, Show
- db MT_MOON_1, $09, Show
- db MT_MOON_1, $0A, Show
- db MT_MOON_1, $0B, Show
- db MT_MOON_1, $0C, Show
- db MT_MOON_1, $0D, Show
+ db MT_MOON_1F,$08,Show
+ db MT_MOON_1F,$09,Show
+ db MT_MOON_1F,$0A,Show
+ db MT_MOON_1F,$0B,Show
+ db MT_MOON_1F,$0C,Show
+ db MT_MOON_1F,$0D,Show
MapHS3D:
- db MT_MOON_3, $02, Hide
- db MT_MOON_3, $06, Hide
- db MT_MOON_3, $07, Show
- db MT_MOON_3, $08, Show
- db MT_MOON_3, $09, Show
- db MT_MOON_3, $0A, Show
+ db MT_MOON_B2F,$02,Hide
+ db MT_MOON_B2F,$06,Hide
+ db MT_MOON_B2F,$07,Show
+ db MT_MOON_B2F,$08,Show
+ db MT_MOON_B2F,$09,Show
+ db MT_MOON_B2F,$0A,Show
MapHS60:
- db SS_ANNE_2, $02, Hide
+ db SS_ANNE_2F,$02,Hide
MapHS66:
- db SS_ANNE_8, $0A, Show
+ db SS_ANNE_1F_ROOMS,$0A,Show
MapHS67:
- db SS_ANNE_9, $06, Show
- db SS_ANNE_9, $09, Show
+ db SS_ANNE_2F_ROOMS,$06,Show
+ db SS_ANNE_2F_ROOMS,$09,Show
MapHS68:
- db SS_ANNE_10, $09, Show
- db SS_ANNE_10, $0A, Show
- db SS_ANNE_10, $0B, Show
+ db SS_ANNE_B1F_ROOMS,$09,Show
+ db SS_ANNE_B1F_ROOMS,$0A,Show
+ db SS_ANNE_B1F_ROOMS,$0B,Show
MapHSC6:
- db VICTORY_ROAD_3, $05, Show
- db VICTORY_ROAD_3, $06, Show
- db VICTORY_ROAD_3, $0A, Show
+ db VICTORY_ROAD_3F,$05,Show
+ db VICTORY_ROAD_3F,$06,Show
+ db VICTORY_ROAD_3F,$0A,Show
MapHSC7:
- db ROCKET_HIDEOUT_1, $06, Show
- db ROCKET_HIDEOUT_1, $07, Show
+ db ROCKET_HIDEOUT_B1F,$06,Show
+ db ROCKET_HIDEOUT_B1F,$07,Show
MapHSC8:
- db ROCKET_HIDEOUT_2, $02, Show
- db ROCKET_HIDEOUT_2, $03, Show
- db ROCKET_HIDEOUT_2, $04, Show
- db ROCKET_HIDEOUT_2, $05, Show
+ db ROCKET_HIDEOUT_B2F,$02,Show
+ db ROCKET_HIDEOUT_B2F,$03,Show
+ db ROCKET_HIDEOUT_B2F,$04,Show
+ db ROCKET_HIDEOUT_B2F,$05,Show
MapHSC9:
- db ROCKET_HIDEOUT_3, $03, Show
- db ROCKET_HIDEOUT_3, $04, Show
+ db ROCKET_HIDEOUT_B3F,$03,Show
+ db ROCKET_HIDEOUT_B3F,$04,Show
MapHSCA:
- db ROCKET_HIDEOUT_4, $01, Show
- db ROCKET_HIDEOUT_4, $02, Hide
- db ROCKET_HIDEOUT_4, $03, Hide
- db ROCKET_HIDEOUT_4, $05, Show
- db ROCKET_HIDEOUT_4, $06, Show
- db ROCKET_HIDEOUT_4, $07, Show
- db ROCKET_HIDEOUT_4, $08, Hide
- db ROCKET_HIDEOUT_4, $09, Hide
+ db ROCKET_HIDEOUT_B4F,$01,Show
+ db ROCKET_HIDEOUT_B4F,$02,Hide
+ db ROCKET_HIDEOUT_B4F,$03,Hide
+ db ROCKET_HIDEOUT_B4F,$05,Show
+ db ROCKET_HIDEOUT_B4F,$06,Show
+ db ROCKET_HIDEOUT_B4F,$07,Show
+ db ROCKET_HIDEOUT_B4F,$08,Hide
+ db ROCKET_HIDEOUT_B4F,$09,Hide
MapHSCF:
- db SILPH_CO_2F, $01, Show
- db SILPH_CO_2F, $02, Show
- db SILPH_CO_2F, $03, Show
- db SILPH_CO_2F, $04, Show
- db SILPH_CO_2F, $05, Show
+ db SILPH_CO_2F,$01,Show
+ db SILPH_CO_2F,$02,Show
+ db SILPH_CO_2F,$03,Show
+ db SILPH_CO_2F,$04,Show
+ db SILPH_CO_2F,$05,Show
MapHSD0:
- db SILPH_CO_3F, $02, Show
- db SILPH_CO_3F, $03, Show
- db SILPH_CO_3F, $04, Show
+ db SILPH_CO_3F,$02,Show
+ db SILPH_CO_3F,$03,Show
+ db SILPH_CO_3F,$04,Show
MapHSD1:
- db SILPH_CO_4F, $02, Show
- db SILPH_CO_4F, $03, Show
- db SILPH_CO_4F, $04, Show
- db SILPH_CO_4F, $05, Show
- db SILPH_CO_4F, $06, Show
- db SILPH_CO_4F, $07, Show
+ db SILPH_CO_4F,$02,Show
+ db SILPH_CO_4F,$03,Show
+ db SILPH_CO_4F,$04,Show
+ db SILPH_CO_4F,$05,Show
+ db SILPH_CO_4F,$06,Show
+ db SILPH_CO_4F,$07,Show
MapHSD2:
- db SILPH_CO_5F, $02, Show
- db SILPH_CO_5F, $03, Show
- db SILPH_CO_5F, $04, Show
- db SILPH_CO_5F, $05, Show
- db SILPH_CO_5F, $06, Show
- db SILPH_CO_5F, $07, Show
- db SILPH_CO_5F, $08, Show
+ db SILPH_CO_5F,$02,Show
+ db SILPH_CO_5F,$03,Show
+ db SILPH_CO_5F,$04,Show
+ db SILPH_CO_5F,$05,Show
+ db SILPH_CO_5F,$06,Show
+ db SILPH_CO_5F,$07,Show
+ db SILPH_CO_5F,$08,Show
MapHSD3:
- db SILPH_CO_6F, $06, Show
- db SILPH_CO_6F, $07, Show
- db SILPH_CO_6F, $08, Show
- db SILPH_CO_6F, $09, Show
- db SILPH_CO_6F, $0A, Show
+ db SILPH_CO_6F,$06,Show
+ db SILPH_CO_6F,$07,Show
+ db SILPH_CO_6F,$08,Show
+ db SILPH_CO_6F,$09,Show
+ db SILPH_CO_6F,$0A,Show
MapHSD4:
- db SILPH_CO_7F, $05, Show
- db SILPH_CO_7F, $06, Show
- db SILPH_CO_7F, $07, Show
- db SILPH_CO_7F, $08, Show
- db SILPH_CO_7F, $09, Show
- db SILPH_CO_7F, $0A, Show
- db SILPH_CO_7F, $0B, Show
- db SILPH_CO_7F, $0C, Show
+ db SILPH_CO_7F,$05,Show
+ db SILPH_CO_7F,$06,Show
+ db SILPH_CO_7F,$07,Show
+ db SILPH_CO_7F,$08,Show
+ db SILPH_CO_7F,$09,Show
+ db SILPH_CO_7F,$0A,Show
+ db SILPH_CO_7F,$0B,Show
+ db SILPH_CO_7F,$0C,Show
MapHSD5:
- db SILPH_CO_8F, $02, Show
- db SILPH_CO_8F, $03, Show
- db SILPH_CO_8F, $04, Show
+ db SILPH_CO_8F,$02,Show
+ db SILPH_CO_8F,$03,Show
+ db SILPH_CO_8F,$04,Show
MapHSE9:
- db SILPH_CO_9F, $02, Show
- db SILPH_CO_9F, $03, Show
- db SILPH_CO_9F, $04, Show
+ db SILPH_CO_9F,$02,Show
+ db SILPH_CO_9F,$03,Show
+ db SILPH_CO_9F,$04,Show
MapHSEA:
- db SILPH_CO_10F, $01, Show
- db SILPH_CO_10F, $02, Show
- db SILPH_CO_10F, $03, Show
- db SILPH_CO_10F, $04, Show
- db SILPH_CO_10F, $05, Show
- db SILPH_CO_10F, $06, Show
+ db SILPH_CO_10F,$01,Show
+ db SILPH_CO_10F,$02,Show
+ db SILPH_CO_10F,$03,Show
+ db SILPH_CO_10F,$04,Show
+ db SILPH_CO_10F,$05,Show
+ db SILPH_CO_10F,$06,Show
MapHSEB:
- db SILPH_CO_11F, $03, Show
- db SILPH_CO_11F, $04, Show
- db SILPH_CO_11F, $05, Show
- db SILPH_CO_11F, $06, Show
+ db SILPH_CO_11F,$03,Show
+ db SILPH_CO_11F,$04,Show
+ db SILPH_CO_11F,$05,Show
+ db SILPH_CO_11F,$06,Show
MapHSF4:
- db $F4, $02, Show
+ db UNUSED_MAP_F4,$02,Show
MapHSD6:
- db MANSION_2, $02, Show
+ db POKEMON_MANSION_2F,$02,Show
MapHSD7:
- db MANSION_3, $03, Show
- db MANSION_3, $04, Show
+ db POKEMON_MANSION_3F,$03,Show
+ db POKEMON_MANSION_3F,$04,Show
MapHSD8:
- db MANSION_4, $03, Show
- db MANSION_4, $04, Show
- db MANSION_4, $05, Show
- db MANSION_4, $06, Show
- db MANSION_4, $08, Show
+ db POKEMON_MANSION_B1F,$03,Show
+ db POKEMON_MANSION_B1F,$04,Show
+ db POKEMON_MANSION_B1F,$05,Show
+ db POKEMON_MANSION_B1F,$06,Show
+ db POKEMON_MANSION_B1F,$08,Show
MapHSD9:
- db SAFARI_ZONE_EAST, $01, Show
- db SAFARI_ZONE_EAST, $02, Show
- db SAFARI_ZONE_EAST, $03, Show
- db SAFARI_ZONE_EAST, $04, Show
+ db SAFARI_ZONE_EAST,$01,Show
+ db SAFARI_ZONE_EAST,$02,Show
+ db SAFARI_ZONE_EAST,$03,Show
+ db SAFARI_ZONE_EAST,$04,Show
MapHSDA:
- db SAFARI_ZONE_NORTH, $01, Show
- db SAFARI_ZONE_NORTH, $02, Show
+ db SAFARI_ZONE_NORTH,$01,Show
+ db SAFARI_ZONE_NORTH,$02,Show
MapHSDB:
- db SAFARI_ZONE_WEST, $01, Show
- db SAFARI_ZONE_WEST, $02, Show
- db SAFARI_ZONE_WEST, $03, Show
- db SAFARI_ZONE_WEST, $04, Show
+ db SAFARI_ZONE_WEST,$01,Show
+ db SAFARI_ZONE_WEST,$02,Show
+ db SAFARI_ZONE_WEST,$03,Show
+ db SAFARI_ZONE_WEST,$04,Show
MapHSDC:
- db SAFARI_ZONE_CENTER, $01, Show
+ db SAFARI_ZONE_CENTER,$01,Show
MapHSE2:
- db UNKNOWN_DUNGEON_2, $01, Show
- db UNKNOWN_DUNGEON_2, $02, Show
- db UNKNOWN_DUNGEON_2, $03, Show
- db UNKNOWN_DUNGEON_2, $04, Show
+ db CERULEAN_CAVE_2F,$01,Show
+ db CERULEAN_CAVE_2F,$02,Show
+ db CERULEAN_CAVE_2F,$03,Show
+ db CERULEAN_CAVE_2F,$04,Show
MapHSE3:
- db UNKNOWN_DUNGEON_3, $01, Show
- db UNKNOWN_DUNGEON_3, $02, Show
- db UNKNOWN_DUNGEON_3, $03, Show
- db UNKNOWN_DUNGEON_3, $04, Show
- db UNKNOWN_DUNGEON_3, $05, Show
+ db CERULEAN_CAVE_B1F,$01,Show
+ db CERULEAN_CAVE_B1F,$02,Show
+ db CERULEAN_CAVE_B1F,$03,Show
+ db CERULEAN_CAVE_B1F,$04,Show
+ db CERULEAN_CAVE_B1F,$05,Show
MapHS6C:
- db VICTORY_ROAD_1, $03, Show
- db VICTORY_ROAD_1, $04, Show
+ db VICTORY_ROAD_1F,$03,Show
+ db VICTORY_ROAD_1F,$04,Show
MapHS78:
- db CHAMPIONS_ROOM, $02, Hide
+ db CHAMPIONS_ROOM,$02,Hide
MapHSC0:
- db SEAFOAM_ISLANDS_1, $01, Show
- db SEAFOAM_ISLANDS_1, $02, Show
+ db SEAFOAM_ISLANDS_1F,$01,Show
+ db SEAFOAM_ISLANDS_1F,$02,Show
MapHS9F:
- db SEAFOAM_ISLANDS_2, $01, Hide
- db SEAFOAM_ISLANDS_2, $02, Hide
+ db SEAFOAM_ISLANDS_B1F,$01,Hide
+ db SEAFOAM_ISLANDS_B1F,$02,Hide
MapHSA0:
- db SEAFOAM_ISLANDS_3, $01, Hide
- db SEAFOAM_ISLANDS_3, $02, Hide
+ db SEAFOAM_ISLANDS_B2F,$01,Hide
+ db SEAFOAM_ISLANDS_B2F,$02,Hide
MapHSA1:
- db SEAFOAM_ISLANDS_4, $02, Show
- db SEAFOAM_ISLANDS_4, $03, Show
- db SEAFOAM_ISLANDS_4, $05, Hide
- db SEAFOAM_ISLANDS_4, $06, Hide
+ db SEAFOAM_ISLANDS_B3F,$02,Show
+ db SEAFOAM_ISLANDS_B3F,$03,Show
+ db SEAFOAM_ISLANDS_B3F,$05,Hide
+ db SEAFOAM_ISLANDS_B3F,$06,Hide
MapHSA2:
- db SEAFOAM_ISLANDS_5, $01, Hide
- db SEAFOAM_ISLANDS_5, $02, Hide
- db SEAFOAM_ISLANDS_5, $03, Show
+ db SEAFOAM_ISLANDS_B4F,$01,Hide
+ db SEAFOAM_ISLANDS_B4F,$02,Hide
+ db SEAFOAM_ISLANDS_B4F,$03,Show
MapHS27Copy:
; doesn't seem to be referenced
- db BLUES_HOUSE, $01, Show
- db BLUES_HOUSE, $02, Hide
- db BLUES_HOUSE, $03, Show
+ db BLUES_HOUSE,$01,Show
+ db BLUES_HOUSE,$02,Hide
+ db BLUES_HOUSE,$03,Show
- db $FF, $01, Show
+ db $FF,$01,Show
diff --git a/data/mapHeaders/AgathasRoom.asm b/data/mapHeaders/AgathasRoom.asm
new file mode 100755
index 00000000..73cd7291
--- /dev/null
+++ b/data/mapHeaders/AgathasRoom.asm
@@ -0,0 +1,8 @@
+AgathasRoom_h:
+ db CEMETERY ; tileset
+ db AGATHAS_ROOM_HEIGHT, AGATHAS_ROOM_WIDTH ; dimensions (y, x)
+ dw AgathasRoom_Blocks ; blocks
+ dw AgathasRoom_TextPointers ; texts
+ dw AgathasRoom_Script ; scripts
+ db 0 ; connections
+ dw AgathasRoom_Object ; objects
diff --git a/data/mapHeaders/BeachHouse.asm b/data/mapHeaders/BeachHouse.asm
new file mode 100644
index 00000000..b1b69e5a
--- /dev/null
+++ b/data/mapHeaders/BeachHouse.asm
@@ -0,0 +1,8 @@
+BeachHouse_h:
+ db BEACH_HOUSE_TILESET
+ db BEACH_HOUSE_HEIGHT, BEACH_HOUSE_WIDTH ; dimensions (y, x)
+ dw BeachHouse_Blocks ; blocks
+ dw BeachHouse_TextPointers ; texts
+ dw BeachHouse_Script ; scripts
+ db 0 ; connections
+ dw BeachHouse_Object ; objects
diff --git a/data/mapHeaders/BikeShop.asm b/data/mapHeaders/BikeShop.asm
new file mode 100755
index 00000000..c447fd80
--- /dev/null
+++ b/data/mapHeaders/BikeShop.asm
@@ -0,0 +1,8 @@
+BikeShop_h:
+ db CLUB ; tileset
+ db BIKE_SHOP_HEIGHT, BIKE_SHOP_WIDTH ; dimensions (y, x)
+ dw BikeShop_Blocks ; blocks
+ dw BikeShop_TextPointers ; texts
+ dw BikeShop_Script ; scripts
+ db 0 ; connections
+ dw BikeShop_Object ; objects
diff --git a/data/mapHeaders/BillsHouse.asm b/data/mapHeaders/BillsHouse.asm
new file mode 100755
index 00000000..bba9cf83
--- /dev/null
+++ b/data/mapHeaders/BillsHouse.asm
@@ -0,0 +1,8 @@
+BillsHouse_h:
+ db INTERIOR ; tileset
+ db BILLS_HOUSE_HEIGHT, BILLS_HOUSE_WIDTH ; dimensions (y, x)
+ dw BillsHouse_Blocks ; blocks
+ dw BillsHouse_TextPointers ; texts
+ dw BillsHouse_Script ; scripts
+ db 0 ; connections
+ dw BillsHouse_Object ; objects
diff --git a/data/mapHeaders/BluesHouse.asm b/data/mapHeaders/BluesHouse.asm
new file mode 100755
index 00000000..6ef0433e
--- /dev/null
+++ b/data/mapHeaders/BluesHouse.asm
@@ -0,0 +1,8 @@
+BluesHouse_h:
+ db HOUSE ; tileset
+ db BLUES_HOUSE_HEIGHT, BLUES_HOUSE_WIDTH ; dimensions (y, x)
+ dw BluesHouse_Blocks ; blocks
+ dw BluesHouse_TextPointers ; texts
+ dw BluesHouse_Script ; scripts
+ db 0 ; connections
+ dw BluesHouse_Object ; objects
diff --git a/data/mapHeaders/BrunosRoom.asm b/data/mapHeaders/BrunosRoom.asm
new file mode 100755
index 00000000..78c7989d
--- /dev/null
+++ b/data/mapHeaders/BrunosRoom.asm
@@ -0,0 +1,8 @@
+BrunosRoom_h:
+ db GYM ; tileset
+ db BRUNOS_ROOM_HEIGHT, BRUNOS_ROOM_WIDTH ; dimensions (y, x)
+ dw BrunosRoom_Blocks ; blocks
+ dw BrunosRoom_TextPointers ; texts
+ dw BrunosRoom_Script ; scripts
+ db 0 ; connections
+ dw BrunosRoom_Object ; objects
diff --git a/data/mapHeaders/CeladonChiefHouse.asm b/data/mapHeaders/CeladonChiefHouse.asm
new file mode 100755
index 00000000..a31c8121
--- /dev/null
+++ b/data/mapHeaders/CeladonChiefHouse.asm
@@ -0,0 +1,8 @@
+CeladonChiefHouse_h:
+ db MANSION ; tileset
+ db CELADON_CHIEF_HOUSE_HEIGHT, CELADON_CHIEF_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeladonChiefHouse_Blocks ; blocks
+ dw CeladonChiefHouse_TextPointers ; texts
+ dw CeladonChiefHouse_Script ; scripts
+ db 0 ; connections
+ dw CeladonChiefHouse_Object ; objects
diff --git a/data/mapHeaders/CeladonCity.asm b/data/mapHeaders/CeladonCity.asm
new file mode 100755
index 00000000..62243d27
--- /dev/null
+++ b/data/mapHeaders/CeladonCity.asm
@@ -0,0 +1,10 @@
+CeladonCity_h:
+ db OVERWORLD ; tileset
+ db CELADON_CITY_HEIGHT, CELADON_CITY_WIDTH ; dimensions (y, x)
+ dw CeladonCity_Blocks ; blocks
+ dw CeladonCity_TextPointers ; texts
+ dw CeladonCity_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION CELADON_CITY, ROUTE_16, 4, 0, Route16_Blocks
+ EAST_MAP_CONNECTION CELADON_CITY, ROUTE_7, 4, 0, Route7_Blocks, 1
+ dw CeladonCity_Object ; objects
diff --git a/data/mapHeaders/CeladonDiner.asm b/data/mapHeaders/CeladonDiner.asm
new file mode 100755
index 00000000..d4220db7
--- /dev/null
+++ b/data/mapHeaders/CeladonDiner.asm
@@ -0,0 +1,8 @@
+CeladonDiner_h:
+ db LOBBY ; tileset
+ db CELADON_DINER_HEIGHT, CELADON_DINER_WIDTH ; dimensions (y, x)
+ dw CeladonDiner_Blocks ; blocks
+ dw CeladonDiner_TextPointers ; texts
+ dw CeladonDiner_Script ; scripts
+ db 0 ; connections
+ dw CeladonDiner_Object ; objects
diff --git a/data/mapHeaders/CeladonGym.asm b/data/mapHeaders/CeladonGym.asm
new file mode 100755
index 00000000..04a9427c
--- /dev/null
+++ b/data/mapHeaders/CeladonGym.asm
@@ -0,0 +1,8 @@
+CeladonGym_h:
+ db GYM ; tileset
+ db CELADON_GYM_HEIGHT, CELADON_GYM_WIDTH ; dimensions (y, x)
+ dw CeladonGym_Blocks ; blocks
+ dw CeladonGym_TextPointers ; texts
+ dw CeladonGym_Script ; scripts
+ db 0 ; connections
+ dw CeladonGym_Object ; objects
diff --git a/data/mapHeaders/CeladonHotel.asm b/data/mapHeaders/CeladonHotel.asm
new file mode 100755
index 00000000..e06c2fd3
--- /dev/null
+++ b/data/mapHeaders/CeladonHotel.asm
@@ -0,0 +1,8 @@
+CeladonHotel_h:
+ db POKECENTER ; tileset
+ db CELADON_HOTEL_HEIGHT, CELADON_HOTEL_WIDTH ; dimensions (y, x)
+ dw CeladonHotel_Blocks ; blocks
+ dw CeladonHotel_TextPointers ; texts
+ dw CeladonHotel_Script ; scripts
+ db 0 ; connections
+ dw CeladonHotel_Object ; objects
diff --git a/data/mapHeaders/CeladonMansion1F.asm b/data/mapHeaders/CeladonMansion1F.asm
new file mode 100755
index 00000000..d2d0ee99
--- /dev/null
+++ b/data/mapHeaders/CeladonMansion1F.asm
@@ -0,0 +1,8 @@
+CeladonMansion1F_h:
+ db MANSION ; tileset
+ db CELADON_MANSION_1F_HEIGHT, CELADON_MANSION_1F_WIDTH ; dimensions (y, x)
+ dw CeladonMansion1F_Blocks ; blocks
+ dw CeladonMansion1F_TextPointers ; texts
+ dw CeladonMansion1F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMansion1F_Object ; objects
diff --git a/data/mapHeaders/CeladonMansion2F.asm b/data/mapHeaders/CeladonMansion2F.asm
new file mode 100755
index 00000000..eceac30e
--- /dev/null
+++ b/data/mapHeaders/CeladonMansion2F.asm
@@ -0,0 +1,8 @@
+CeladonMansion2F_h:
+ db MANSION ; tileset
+ db CELADON_MANSION_2F_HEIGHT, CELADON_MANSION_2F_WIDTH ; dimensions (y, x)
+ dw CeladonMansion2F_Blocks ; blocks
+ dw CeladonMansion2F_TextPointers ; texts
+ dw CeladonMansion2F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMansion2F_Object ; objects
diff --git a/data/mapHeaders/CeladonMansion3F.asm b/data/mapHeaders/CeladonMansion3F.asm
new file mode 100755
index 00000000..b5a0a705
--- /dev/null
+++ b/data/mapHeaders/CeladonMansion3F.asm
@@ -0,0 +1,8 @@
+CeladonMansion3F_h:
+ db MANSION ; tileset
+ db CELADON_MANSION_3F_HEIGHT, CELADON_MANSION_3F_WIDTH ; dimensions (y, x)
+ dw CeladonMansion3F_Blocks ; blocks
+ dw CeladonMansion3F_TextPointers ; texts
+ dw CeladonMansion3F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMansion3F_Object ; objects
diff --git a/data/mapHeaders/CeladonMansionRoof.asm b/data/mapHeaders/CeladonMansionRoof.asm
new file mode 100755
index 00000000..d7a050c8
--- /dev/null
+++ b/data/mapHeaders/CeladonMansionRoof.asm
@@ -0,0 +1,8 @@
+CeladonMansionRoof_h:
+ db MANSION ; tileset
+ db CELADON_MANSION_ROOF_HEIGHT, CELADON_MANSION_ROOF_WIDTH ; dimensions (y, x)
+ dw CeladonMansionRoof_Blocks ; blocks
+ dw CeladonMansionRoof_TextPointers ; texts
+ dw CeladonMansionRoof_Script ; scripts
+ db 0 ; connections
+ dw CeladonMansionRoof_Object ; objects
diff --git a/data/mapHeaders/CeladonMansionRoofHouse.asm b/data/mapHeaders/CeladonMansionRoofHouse.asm
new file mode 100755
index 00000000..7fcf49e1
--- /dev/null
+++ b/data/mapHeaders/CeladonMansionRoofHouse.asm
@@ -0,0 +1,8 @@
+CeladonMansionRoofHouse_h:
+ db HOUSE ; tileset
+ db CELADON_MANSION_ROOF_HOUSE_HEIGHT, CELADON_MANSION_ROOF_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeladonMansionRoofHouse_Blocks ; blocks
+ dw CeladonMansionRoofHouse_TextPointers ; texts
+ dw CeladonMansionRoofHouse_Script ; scripts
+ db 0 ; connections
+ dw CeladonMansionRoofHouse_Object ; objects
diff --git a/data/mapHeaders/CeladonMart1F.asm b/data/mapHeaders/CeladonMart1F.asm
new file mode 100755
index 00000000..51e968fa
--- /dev/null
+++ b/data/mapHeaders/CeladonMart1F.asm
@@ -0,0 +1,8 @@
+CeladonMart1F_h:
+ db LOBBY ; tileset
+ db CELADON_MART_1F_HEIGHT, CELADON_MART_1F_WIDTH ; dimensions (y, x)
+ dw CeladonMart1F_Blocks ; blocks
+ dw CeladonMart1F_TextPointers ; texts
+ dw CeladonMart1F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMart1F_Object ; objects
diff --git a/data/mapHeaders/CeladonMart2F.asm b/data/mapHeaders/CeladonMart2F.asm
new file mode 100755
index 00000000..77106405
--- /dev/null
+++ b/data/mapHeaders/CeladonMart2F.asm
@@ -0,0 +1,8 @@
+CeladonMart2F_h:
+ db LOBBY ; tileset
+ db CELADON_MART_2F_HEIGHT, CELADON_MART_2F_WIDTH ; dimensions (y, x)
+ dw CeladonMart2F_Blocks ; blocks
+ dw CeladonMart2F_TextPointers ; texts
+ dw CeladonMart2F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMart2F_Object ; objects
diff --git a/data/mapHeaders/CeladonMart3F.asm b/data/mapHeaders/CeladonMart3F.asm
new file mode 100755
index 00000000..c460945c
--- /dev/null
+++ b/data/mapHeaders/CeladonMart3F.asm
@@ -0,0 +1,8 @@
+CeladonMart3F_h:
+ db LOBBY ; tileset
+ db CELADON_MART_3F_HEIGHT, CELADON_MART_3F_WIDTH ; dimensions (y, x)
+ dw CeladonMart3F_Blocks ; blocks
+ dw CeladonMart3F_TextPointers ; texts
+ dw CeladonMart3F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMart3F_Object ; objects
diff --git a/data/mapHeaders/CeladonMart4F.asm b/data/mapHeaders/CeladonMart4F.asm
new file mode 100755
index 00000000..a742570b
--- /dev/null
+++ b/data/mapHeaders/CeladonMart4F.asm
@@ -0,0 +1,8 @@
+CeladonMart4F_h:
+ db LOBBY ; tileset
+ db CELADON_MART_4F_HEIGHT, CELADON_MART_4F_WIDTH ; dimensions (y, x)
+ dw CeladonMart4F_Blocks ; blocks
+ dw CeladonMart4F_TextPointers ; texts
+ dw CeladonMart4F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMart4F_Object ; objects
diff --git a/data/mapHeaders/CeladonMart5F.asm b/data/mapHeaders/CeladonMart5F.asm
new file mode 100755
index 00000000..4b5223e0
--- /dev/null
+++ b/data/mapHeaders/CeladonMart5F.asm
@@ -0,0 +1,8 @@
+CeladonMart5F_h:
+ db LOBBY ; tileset
+ db CELADON_MART_5F_HEIGHT, CELADON_MART_5F_WIDTH ; dimensions (y, x)
+ dw CeladonMart5F_Blocks ; blocks
+ dw CeladonMart5F_TextPointers ; texts
+ dw CeladonMart5F_Script ; scripts
+ db 0 ; connections
+ dw CeladonMart5F_Object ; objects
diff --git a/data/mapHeaders/CeladonMartElevator.asm b/data/mapHeaders/CeladonMartElevator.asm
new file mode 100755
index 00000000..06e87608
--- /dev/null
+++ b/data/mapHeaders/CeladonMartElevator.asm
@@ -0,0 +1,8 @@
+CeladonMartElevator_h:
+ db LOBBY ; tileset
+ db CELADON_MART_ELEVATOR_HEIGHT, CELADON_MART_ELEVATOR_WIDTH ; dimensions (y, x)
+ dw CeladonMartElevator_Blocks ; blocks
+ dw CeladonMartElevator_TextPointers ; texts
+ dw CeladonMartElevator_Script ; scripts
+ db 0 ; connections
+ dw CeladonMartElevator_Object ; objects
diff --git a/data/mapHeaders/CeladonMartRoof.asm b/data/mapHeaders/CeladonMartRoof.asm
new file mode 100755
index 00000000..163e25ed
--- /dev/null
+++ b/data/mapHeaders/CeladonMartRoof.asm
@@ -0,0 +1,8 @@
+CeladonMartRoof_h:
+ db LOBBY ; tileset
+ db CELADON_MART_ROOF_HEIGHT, CELADON_MART_ROOF_WIDTH ; dimensions (y, x)
+ dw CeladonMartRoof_Blocks ; blocks
+ dw CeladonMartRoof_TextPointers ; texts
+ dw CeladonMartRoof_Script ; scripts
+ db 0 ; connections
+ dw CeladonMartRoof_Object ; objects
diff --git a/data/mapHeaders/CeladonPokecenter.asm b/data/mapHeaders/CeladonPokecenter.asm
new file mode 100755
index 00000000..b5d9bd73
--- /dev/null
+++ b/data/mapHeaders/CeladonPokecenter.asm
@@ -0,0 +1,8 @@
+CeladonPokecenter_h:
+ db POKECENTER ; tileset
+ db CELADON_POKECENTER_HEIGHT, CELADON_POKECENTER_WIDTH ; dimensions (y, x)
+ dw CeladonPokecenter_Blocks ; blocks
+ dw CeladonPokecenter_TextPointers ; texts
+ dw CeladonPokecenter_Script ; scripts
+ db 0 ; connections
+ dw CeladonPokecenter_Object ; objects
diff --git a/data/mapHeaders/CeruleanBadgeHouse.asm b/data/mapHeaders/CeruleanBadgeHouse.asm
new file mode 100755
index 00000000..a94f1912
--- /dev/null
+++ b/data/mapHeaders/CeruleanBadgeHouse.asm
@@ -0,0 +1,8 @@
+CeruleanBadgeHouse_h:
+ db SHIP ; tileset
+ db CERULEAN_BADGE_HOUSE_HEIGHT, CERULEAN_BADGE_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeruleanBadgeHouse_Blocks ; blocks
+ dw CeruleanBadgeHouse_TextPointers ; texts
+ dw CeruleanBadgeHouse_Script ; scripts
+ db 0 ; connections
+ dw CeruleanBadgeHouse_Object ; objects
diff --git a/data/mapHeaders/CeruleanCave1F.asm b/data/mapHeaders/CeruleanCave1F.asm
new file mode 100755
index 00000000..932dfb48
--- /dev/null
+++ b/data/mapHeaders/CeruleanCave1F.asm
@@ -0,0 +1,8 @@
+CeruleanCave1F_h:
+ db CAVERN ; tileset
+ db CERULEAN_CAVE_1F_HEIGHT, CERULEAN_CAVE_1F_WIDTH ; dimensions (y, x)
+ dw CeruleanCave1F_Blocks ; blocks
+ dw CeruleanCave1F_TextPointers ; texts
+ dw CeruleanCave1F_Script ; scripts
+ db 0 ; connections
+ dw CeruleanCave1F_Object ; objects
diff --git a/data/mapHeaders/CeruleanCave2F.asm b/data/mapHeaders/CeruleanCave2F.asm
new file mode 100755
index 00000000..7cf82371
--- /dev/null
+++ b/data/mapHeaders/CeruleanCave2F.asm
@@ -0,0 +1,8 @@
+CeruleanCave2F_h:
+ db CAVERN ; tileset
+ db CERULEAN_CAVE_2F_HEIGHT, CERULEAN_CAVE_2F_WIDTH ; dimensions (y, x)
+ dw CeruleanCave2F_Blocks ; blocks
+ dw CeruleanCave2F_TextPointers ; texts
+ dw CeruleanCave2F_Script ; scripts
+ db 0 ; connections
+ dw CeruleanCave2F_Object ; objects
diff --git a/data/mapHeaders/CeruleanCaveB1F.asm b/data/mapHeaders/CeruleanCaveB1F.asm
new file mode 100755
index 00000000..eb940faa
--- /dev/null
+++ b/data/mapHeaders/CeruleanCaveB1F.asm
@@ -0,0 +1,8 @@
+CeruleanCaveB1F_h:
+ db CAVERN ; tileset
+ db CERULEAN_CAVE_B1F_HEIGHT, CERULEAN_CAVE_B1F_WIDTH ; dimensions (y, x)
+ dw CeruleanCaveB1F_Blocks ; blocks
+ dw CeruleanCaveB1F_TextPointers ; texts
+ dw CeruleanCaveB1F_Script ; scripts
+ db 0 ; connections
+ dw CeruleanCaveB1F_Object ; objects
diff --git a/data/mapHeaders/CeruleanCity.asm b/data/mapHeaders/CeruleanCity.asm
new file mode 100755
index 00000000..cd5444ab
--- /dev/null
+++ b/data/mapHeaders/CeruleanCity.asm
@@ -0,0 +1,12 @@
+CeruleanCity_h:
+ db OVERWORLD ; tileset
+ db CERULEAN_CITY_HEIGHT, CERULEAN_CITY_WIDTH ; dimensions (y, x)
+ dw CeruleanCity_Blocks ; blocks
+ dw CeruleanCity_TextPointers ; texts
+ dw CeruleanCity_Script ; scripts
+ db NORTH | SOUTH | WEST | EAST ; connections
+ NORTH_MAP_CONNECTION CERULEAN_CITY, ROUTE_24, 5, 0, Route24_Blocks
+ SOUTH_MAP_CONNECTION CERULEAN_CITY, ROUTE_5, 5, 0, Route5_Blocks, 1
+ WEST_MAP_CONNECTION CERULEAN_CITY, ROUTE_4, 4, 0, Route4_Blocks
+ EAST_MAP_CONNECTION CERULEAN_CITY, ROUTE_9, 4, 0, Route9_Blocks
+ dw CeruleanCity_Object ; objects
diff --git a/data/mapHeaders/CeruleanGym.asm b/data/mapHeaders/CeruleanGym.asm
new file mode 100755
index 00000000..3bdb0283
--- /dev/null
+++ b/data/mapHeaders/CeruleanGym.asm
@@ -0,0 +1,8 @@
+CeruleanGym_h:
+ db GYM ; tileset
+ db CERULEAN_GYM_HEIGHT, CERULEAN_GYM_WIDTH ; dimensions (y, x)
+ dw CeruleanGym_Blocks ; blocks
+ dw CeruleanGym_TextPointers ; texts
+ dw CeruleanGym_Script ; scripts
+ db 0 ; connections
+ dw CeruleanGym_Object ; objects
diff --git a/data/mapHeaders/CeruleanMart.asm b/data/mapHeaders/CeruleanMart.asm
new file mode 100755
index 00000000..f020d4a3
--- /dev/null
+++ b/data/mapHeaders/CeruleanMart.asm
@@ -0,0 +1,8 @@
+CeruleanMart_h:
+ db MART ; tileset
+ db CERULEAN_MART_HEIGHT, CERULEAN_MART_WIDTH ; dimensions (y, x)
+ dw CeruleanMart_Blocks ; blocks
+ dw CeruleanMart_TextPointers ; texts
+ dw CeruleanMart_Script ; scripts
+ db 0 ; connections
+ dw CeruleanMart_Object ; objects
diff --git a/data/mapHeaders/CeruleanPokecenter.asm b/data/mapHeaders/CeruleanPokecenter.asm
new file mode 100755
index 00000000..3286acbb
--- /dev/null
+++ b/data/mapHeaders/CeruleanPokecenter.asm
@@ -0,0 +1,8 @@
+CeruleanPokecenter_h:
+ db POKECENTER ; tileset
+ db CERULEAN_POKECENTER_HEIGHT, CERULEAN_POKECENTER_WIDTH ; dimensions (y, x)
+ dw CeruleanPokecenter_Blocks ; blocks
+ dw CeruleanPokecenter_TextPointers ; texts
+ dw CeruleanPokecenter_Script ; scripts
+ db 0 ; connections
+ dw CeruleanPokecenter_Object ; objects
diff --git a/data/mapHeaders/CeruleanTradeHouse.asm b/data/mapHeaders/CeruleanTradeHouse.asm
new file mode 100755
index 00000000..23c5062c
--- /dev/null
+++ b/data/mapHeaders/CeruleanTradeHouse.asm
@@ -0,0 +1,8 @@
+CeruleanTradeHouse_h:
+ db HOUSE ; tileset
+ db CERULEAN_TRADE_HOUSE_HEIGHT, CERULEAN_TRADE_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeruleanTradeHouse_Blocks ; blocks
+ dw CeruleanTradeHouse_TextPointers ; texts
+ dw CeruleanTradeHouse_Script ; scripts
+ db 0 ; connections
+ dw CeruleanTradeHouse_Object ; objects
diff --git a/data/mapHeaders/CeruleanTrashedHouse.asm b/data/mapHeaders/CeruleanTrashedHouse.asm
new file mode 100755
index 00000000..e105b1ed
--- /dev/null
+++ b/data/mapHeaders/CeruleanTrashedHouse.asm
@@ -0,0 +1,8 @@
+CeruleanTrashedHouse_h:
+ db HOUSE ; tileset
+ db CERULEAN_TRASHED_HOUSE_HEIGHT, CERULEAN_TRASHED_HOUSE_WIDTH ; dimensions (y, x)
+ dw CeruleanTrashedHouse_Blocks ; blocks
+ dw CeruleanTrashedHouse_TextPointers ; texts
+ dw CeruleanTrashedHouse_Script ; scripts
+ db 0 ; connections
+ dw CeruleanTrashedHouse_Object ; objects
diff --git a/data/mapHeaders/ChampionsRoom.asm b/data/mapHeaders/ChampionsRoom.asm
new file mode 100755
index 00000000..a22b236a
--- /dev/null
+++ b/data/mapHeaders/ChampionsRoom.asm
@@ -0,0 +1,8 @@
+ChampionsRoom_h:
+ db GYM ; tileset
+ db CHAMPIONS_ROOM_HEIGHT, CHAMPIONS_ROOM_WIDTH ; dimensions (y, x)
+ dw ChampionsRoom_Blocks ; blocks
+ dw ChampionsRoom_TextPointers ; texts
+ dw ChampionsRoom_Script ; scripts
+ db $0 ; connections
+ dw ChampionsRoom_Object ; objects
diff --git a/data/mapHeaders/CinnabarGym.asm b/data/mapHeaders/CinnabarGym.asm
new file mode 100755
index 00000000..e871b8f3
--- /dev/null
+++ b/data/mapHeaders/CinnabarGym.asm
@@ -0,0 +1,8 @@
+CinnabarGym_h:
+ db FACILITY ; tileset
+ db CINNABAR_GYM_HEIGHT, CINNABAR_GYM_WIDTH ; dimensions (y, x)
+ dw CinnabarGym_Blocks ; blocks
+ dw CinnabarGym_TextPointers ; texts
+ dw CinnabarGym_Script ; scripts
+ db 0 ; connections
+ dw CinnabarGym_Object ; objects
diff --git a/data/mapHeaders/CinnabarIsland.asm b/data/mapHeaders/CinnabarIsland.asm
new file mode 100755
index 00000000..b8c5d7d4
--- /dev/null
+++ b/data/mapHeaders/CinnabarIsland.asm
@@ -0,0 +1,10 @@
+CinnabarIsland_h:
+ db OVERWORLD ; tileset
+ db CINNABAR_ISLAND_HEIGHT, CINNABAR_ISLAND_WIDTH ; dimensions (y, x)
+ dw CinnabarIsland_Blocks ; blocks
+ dw CinnabarIsland_TextPointers ; texts
+ dw CinnabarIsland_Script ; scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION CINNABAR_ISLAND, ROUTE_21, 0, 0, Route21_Blocks
+ EAST_MAP_CONNECTION CINNABAR_ISLAND, ROUTE_20, 0, 0, Route20_Blocks
+ dw CinnabarIsland_Object ; objects
diff --git a/data/mapHeaders/CinnabarLab.asm b/data/mapHeaders/CinnabarLab.asm
new file mode 100755
index 00000000..c1167960
--- /dev/null
+++ b/data/mapHeaders/CinnabarLab.asm
@@ -0,0 +1,8 @@
+CinnabarLab_h:
+ db LAB ; tileset
+ db CINNABAR_LAB_HEIGHT, CINNABAR_LAB_WIDTH ; dimensions (y, x)
+ dw CinnabarLab_Blocks ; blocks
+ dw CinnabarLab_TextPointers ; texts
+ dw CinnabarLab_Script ; scripts
+ db 0 ; connections
+ dw CinnabarLab_Object ; objects
diff --git a/data/mapHeaders/CinnabarLabFossilRoom.asm b/data/mapHeaders/CinnabarLabFossilRoom.asm
new file mode 100755
index 00000000..4ac2963b
--- /dev/null
+++ b/data/mapHeaders/CinnabarLabFossilRoom.asm
@@ -0,0 +1,8 @@
+CinnabarLabFossilRoom_h:
+ db LAB ; tileset
+ db CINNABAR_LAB_FOSSIL_ROOM_HEIGHT, CINNABAR_LAB_FOSSIL_ROOM_WIDTH ; dimensions (y, x)
+ dw CinnabarLabFossilRoom_Blocks ; blocks
+ dw CinnabarLabFossilRoom_TextPointers ; texts
+ dw CinnabarLabFossilRoom_Script ; scripts
+ db 0 ; connections
+ dw CinnabarLabFossilRoom_Object ; objects
diff --git a/data/mapHeaders/CinnabarLabMetronomeRoom.asm b/data/mapHeaders/CinnabarLabMetronomeRoom.asm
new file mode 100755
index 00000000..8eb9e502
--- /dev/null
+++ b/data/mapHeaders/CinnabarLabMetronomeRoom.asm
@@ -0,0 +1,8 @@
+CinnabarLabMetronomeRoom_h:
+ db LAB ; tileset
+ db CINNABAR_LAB_METRONOME_ROOM_HEIGHT, CINNABAR_LAB_METRONOME_ROOM_WIDTH ; dimensions (y, x)
+ dw CinnabarLabMetronomeRoom_Blocks ; blocks
+ dw CinnabarLabMetronomeRoom_TextPointers ; texts
+ dw CinnabarLabMetronomeRoom_Script ; scripts
+ db 0 ; connections
+ dw CinnabarLabMetronomeRoom_Object ; objects
diff --git a/data/mapHeaders/CinnabarLabTradeRoom.asm b/data/mapHeaders/CinnabarLabTradeRoom.asm
new file mode 100755
index 00000000..1e0ffd0e
--- /dev/null
+++ b/data/mapHeaders/CinnabarLabTradeRoom.asm
@@ -0,0 +1,8 @@
+CinnabarLabTradeRoom_h:
+ db LAB ; tileset
+ db CINNABAR_LAB_TRADE_ROOM_HEIGHT, CINNABAR_LAB_TRADE_ROOM_WIDTH ; dimensions (y, x)
+ dw CinnabarLabTradeRoom_Blocks ; blocks
+ dw CinnabarLabTradeRoom_TextPointers ; texts
+ dw CinnabarLabTradeRoom_Script ; scripts
+ db 0 ; connections
+ dw CinnabarLabTradeRoom_Object ; objects
diff --git a/data/mapHeaders/CinnabarMart.asm b/data/mapHeaders/CinnabarMart.asm
new file mode 100755
index 00000000..5833b2ef
--- /dev/null
+++ b/data/mapHeaders/CinnabarMart.asm
@@ -0,0 +1,8 @@
+CinnabarMart_h:
+ db MART ; tileset
+ db CINNABAR_MART_HEIGHT, CINNABAR_MART_WIDTH ; dimensions (y, x)
+ dw CinnabarMart_Blocks ; blocks
+ dw CinnabarMart_TextPointers ; texts
+ dw CinnabarMart_Script ; scripts
+ db 0 ; connections
+ dw CinnabarMart_Object ; objects
diff --git a/data/mapHeaders/CinnabarPokecenter.asm b/data/mapHeaders/CinnabarPokecenter.asm
new file mode 100755
index 00000000..9c54b9b9
--- /dev/null
+++ b/data/mapHeaders/CinnabarPokecenter.asm
@@ -0,0 +1,8 @@
+CinnabarPokecenter_h:
+ db POKECENTER ; tileset
+ db CINNABAR_POKECENTER_HEIGHT, CINNABAR_POKECENTER_WIDTH ; dimensions (y, x)
+ dw CinnabarPokecenter_Blocks ; blocks
+ dw CinnabarPokecenter_TextPointers ; texts
+ dw CinnabarPokecenter_Script ; scripts
+ db 0 ; connections
+ dw CinnabarPokecenter_Object ; objects
diff --git a/data/mapHeaders/Colosseum.asm b/data/mapHeaders/Colosseum.asm
new file mode 100755
index 00000000..9b106204
--- /dev/null
+++ b/data/mapHeaders/Colosseum.asm
@@ -0,0 +1,8 @@
+Colosseum_h:
+ db CLUB ; tileset
+ db COLOSSEUM_HEIGHT, COLOSSEUM_WIDTH ; dimensions (y, x)
+ dw Colosseum_Blocks ; blocks
+ dw Colosseum_TextPointers ; texts
+ dw Colosseum_Script ; scripts
+ db 0 ; connections
+ dw Colosseum_Object ; objects
diff --git a/data/mapHeaders/CopycatsHouse1F.asm b/data/mapHeaders/CopycatsHouse1F.asm
new file mode 100755
index 00000000..f3cfc261
--- /dev/null
+++ b/data/mapHeaders/CopycatsHouse1F.asm
@@ -0,0 +1,8 @@
+CopycatsHouse1F_h:
+ db REDS_HOUSE_1 ; tileset
+ db COPYCATS_HOUSE_1F_HEIGHT, COPYCATS_HOUSE_1F_WIDTH ; dimensions (y, x)
+ dw CopycatsHouse1F_Blocks ; blocks
+ dw CopycatsHouse1F_TextPointers ; texts
+ dw CopycatsHouse1F_Script ; scripts
+ db 0 ; connections
+ dw CopycatsHouse1F_Object ; objects
diff --git a/data/mapHeaders/CopycatsHouse2F.asm b/data/mapHeaders/CopycatsHouse2F.asm
new file mode 100755
index 00000000..453ba455
--- /dev/null
+++ b/data/mapHeaders/CopycatsHouse2F.asm
@@ -0,0 +1,8 @@
+CopycatsHouse2F_h:
+ db REDS_HOUSE_2 ; tileset
+ db COPYCATS_HOUSE_2F_HEIGHT, COPYCATS_HOUSE_2F_WIDTH ; dimensions (y, x)
+ dw CopycatsHouse2F_Blocks ; blocks
+ dw CopycatsHouse2F_TextPointers ; texts
+ dw CopycatsHouse2F_Script ; scripts
+ db 0 ; connections
+ dw CopycatsHouse2F_Object ; objects
diff --git a/data/mapHeaders/Daycare.asm b/data/mapHeaders/Daycare.asm
new file mode 100755
index 00000000..2fb7a771
--- /dev/null
+++ b/data/mapHeaders/Daycare.asm
@@ -0,0 +1,8 @@
+Daycare_h:
+ db HOUSE ; tileset
+ db DAYCARE_HEIGHT, DAYCARE_WIDTH ; dimensions (y, x)
+ dw Daycare_Blocks ; blocks
+ dw Daycare_TextPointers ; texts
+ dw Daycare_Script ; scripts
+ db 0 ; connections
+ dw Daycare_Object ; objects
diff --git a/data/mapHeaders/DiglettsCave.asm b/data/mapHeaders/DiglettsCave.asm
new file mode 100755
index 00000000..096019de
--- /dev/null
+++ b/data/mapHeaders/DiglettsCave.asm
@@ -0,0 +1,8 @@
+DiglettsCave_h:
+ db CAVERN ; tileset
+ db DIGLETTS_CAVE_HEIGHT, DIGLETTS_CAVE_WIDTH ; dimensions (y, x)
+ dw DiglettsCave_Blocks ; blocks
+ dw DiglettsCave_TextPointers ; texts
+ dw DiglettsCave_Script ; scripts
+ db 0 ; connections
+ dw DiglettsCave_Object ; objects
diff --git a/data/mapHeaders/DiglettsCaveRoute11.asm b/data/mapHeaders/DiglettsCaveRoute11.asm
new file mode 100755
index 00000000..363859b2
--- /dev/null
+++ b/data/mapHeaders/DiglettsCaveRoute11.asm
@@ -0,0 +1,8 @@
+DiglettsCaveRoute11_h:
+ db CAVERN ; tileset
+ db DIGLETTS_CAVE_ROUTE_11_HEIGHT, DIGLETTS_CAVE_ROUTE_11_WIDTH ; dimensions (y, x)
+ dw DiglettsCaveRoute11_Blocks ; blocks
+ dw DiglettsCaveRoute11_TextPointers ; texts
+ dw DiglettsCaveRoute11_Script ; scripts
+ db 0 ; connections
+ dw DiglettsCaveRoute11_Object ; objects
diff --git a/data/mapHeaders/DiglettsCaveRoute2.asm b/data/mapHeaders/DiglettsCaveRoute2.asm
new file mode 100755
index 00000000..c977415b
--- /dev/null
+++ b/data/mapHeaders/DiglettsCaveRoute2.asm
@@ -0,0 +1,8 @@
+DiglettsCaveRoute2_h:
+ db CAVERN ; tileset
+ db DIGLETTS_CAVE_ROUTE_2_HEIGHT, DIGLETTS_CAVE_ROUTE_2_WIDTH ; dimensions (y, x)
+ dw DiglettsCaveRoute2_Blocks ; blocks
+ dw DiglettsCaveRoute2_TextPointers ; texts
+ dw DiglettsCaveRoute2_Script ; scripts
+ db 0 ; connections
+ dw DiglettsCaveRoute2_Object ; objects
diff --git a/data/mapHeaders/FightingDojo.asm b/data/mapHeaders/FightingDojo.asm
new file mode 100755
index 00000000..5c802843
--- /dev/null
+++ b/data/mapHeaders/FightingDojo.asm
@@ -0,0 +1,8 @@
+FightingDojo_h:
+ db DOJO ; tileset
+ db FIGHTING_DOJO_HEIGHT, FIGHTING_DOJO_WIDTH ; dimensions (y, x)
+ dw FightingDojo_Blocks ; blocks
+ dw FightingDojo_TextPointers ; texts
+ dw FightingDojo_Script ; scripts
+ db 0 ; connections
+ dw FightingDojo_Object ; objects
diff --git a/data/mapHeaders/FuchsiaBillsGrandpasHouse.asm b/data/mapHeaders/FuchsiaBillsGrandpasHouse.asm
new file mode 100755
index 00000000..bc4fe8e6
--- /dev/null
+++ b/data/mapHeaders/FuchsiaBillsGrandpasHouse.asm
@@ -0,0 +1,8 @@
+FuchsiaBillsGrandpasHouse_h:
+ db HOUSE ; tileset
+ db FUCHSIA_BILLS_GRANDPAS_HOUSE_HEIGHT, FUCHSIA_BILLS_GRANDPAS_HOUSE_WIDTH ; dimensions (y, x)
+ dw FuchsiaBillsGrandpasHouse_Blocks ; blocks
+ dw FuchsiaBillsGrandpasHouse_TextPointers ; texts
+ dw FuchsiaBillsGrandpasHouse_Script ; scripts
+ db 0 ; connections
+ dw FuchsiaBillsGrandpasHouse_Object ; objects
diff --git a/data/mapHeaders/FuchsiaCity.asm b/data/mapHeaders/FuchsiaCity.asm
new file mode 100755
index 00000000..87398877
--- /dev/null
+++ b/data/mapHeaders/FuchsiaCity.asm
@@ -0,0 +1,11 @@
+FuchsiaCity_h:
+ db OVERWORLD ; tileset
+ db FUCHSIA_CITY_HEIGHT, FUCHSIA_CITY_WIDTH ; dimensions (y, x)
+ dw FuchsiaCity_Blocks ; blocks
+ dw FuchsiaCity_TextPointers ; texts
+ dw FuchsiaCity_Script ; scripts
+ db SOUTH | WEST | EAST ; connections
+ SOUTH_MAP_CONNECTION FUCHSIA_CITY, ROUTE_19, 5, 0, Route19_Blocks
+ WEST_MAP_CONNECTION FUCHSIA_CITY, ROUTE_18, 4, 0, Route18_Blocks
+ EAST_MAP_CONNECTION FUCHSIA_CITY, ROUTE_15, 4, 0, Route15_Blocks
+ dw FuchsiaCity_Object ; objects
diff --git a/data/mapHeaders/FuchsiaGoodRodHouse.asm b/data/mapHeaders/FuchsiaGoodRodHouse.asm
new file mode 100755
index 00000000..4871970e
--- /dev/null
+++ b/data/mapHeaders/FuchsiaGoodRodHouse.asm
@@ -0,0 +1,8 @@
+FuchsiaGoodRodHouse_h:
+ db SHIP ; tileset
+ db FUCHSIA_GOOD_ROD_HOUSE_HEIGHT, FUCHSIA_GOOD_ROD_HOUSE_WIDTH ; dimensions (y, x)
+ dw FuchsiaGoodRodHouse_Blocks ; blocks
+ dw FuchsiaGoodRodHouse_TextPointers ; texts
+ dw FuchsiaGoodRodHouse_Script ; scripts
+ db 0 ; connections
+ dw FuchsiaGoodRodHouse_Object ; objects
diff --git a/data/mapHeaders/FuchsiaGym.asm b/data/mapHeaders/FuchsiaGym.asm
new file mode 100755
index 00000000..71ef5960
--- /dev/null
+++ b/data/mapHeaders/FuchsiaGym.asm
@@ -0,0 +1,8 @@
+FuchsiaGym_h:
+ db GYM ; tileset
+ db FUCHSIA_GYM_HEIGHT, FUCHSIA_GYM_WIDTH ; dimensions (y, x)
+ dw FuchsiaGym_Blocks ; blocks
+ dw FuchsiaGym_TextPointers ; texts
+ dw FuchsiaGym_Script ; scripts
+ db 0 ; connections
+ dw FuchsiaGym_Object ; objects
diff --git a/data/mapHeaders/FuchsiaMart.asm b/data/mapHeaders/FuchsiaMart.asm
new file mode 100755
index 00000000..7c1c34d2
--- /dev/null
+++ b/data/mapHeaders/FuchsiaMart.asm
@@ -0,0 +1,8 @@
+FuchsiaMart_h:
+ db MART ; tileset
+ db FUCHSIA_MART_HEIGHT, FUCHSIA_MART_WIDTH ; dimensions (y, x)
+ dw FuchsiaMart_Blocks ; blocks
+ dw FuchsiaMart_TextPointers ; texts
+ dw FuchsiaMart_Script ; scripts
+ db 0 ; connections
+ dw FuchsiaMart_Object ; objects
diff --git a/data/mapHeaders/FuchsiaMeetingRoom.asm b/data/mapHeaders/FuchsiaMeetingRoom.asm
new file mode 100755
index 00000000..8bc0cdbf
--- /dev/null
+++ b/data/mapHeaders/FuchsiaMeetingRoom.asm
@@ -0,0 +1,8 @@
+FuchsiaMeetingRoom_h:
+ db LAB ; tileset
+ db FUCHSIA_MEETING_ROOM_HEIGHT, FUCHSIA_MEETING_ROOM_WIDTH ; dimensions (y, x)
+ dw FuchsiaMeetingRoom_Blocks ; blocks
+ dw FuchsiaMeetingRoom_TextPointers ; texts
+ dw FuchsiaMeetingRoom_Script ; scripts
+ db 0 ; connections
+ dw FuchsiaMeetingRoom_Object ; objects
diff --git a/data/mapHeaders/FuchsiaPokecenter.asm b/data/mapHeaders/FuchsiaPokecenter.asm
new file mode 100755
index 00000000..bf654ea6
--- /dev/null
+++ b/data/mapHeaders/FuchsiaPokecenter.asm
@@ -0,0 +1,8 @@
+FuchsiaPokecenter_h:
+ db POKECENTER ; tileset
+ db FUCHSIA_POKECENTER_HEIGHT, FUCHSIA_POKECENTER_WIDTH ; dimensions (y, x)
+ dw FuchsiaPokecenter_Blocks ; blocks
+ dw FuchsiaPokecenter_TextPointers ; texts
+ dw FuchsiaPokecenter_Script ; scripts
+ db 0 ; connections
+ dw FuchsiaPokecenter_Object ; objects
diff --git a/data/mapHeaders/GameCorner.asm b/data/mapHeaders/GameCorner.asm
new file mode 100755
index 00000000..c8b69724
--- /dev/null
+++ b/data/mapHeaders/GameCorner.asm
@@ -0,0 +1,8 @@
+GameCorner_h:
+ db LOBBY ; tileset
+ db GAME_CORNER_HEIGHT, GAME_CORNER_WIDTH ; dimensions (y, x)
+ dw GameCorner_Blocks ; blocks
+ dw GameCorner_TextPointers ; texts
+ dw GameCorner_Script ; scripts
+ db 0 ; connections
+ dw GameCorner_Object ; objects
diff --git a/data/mapHeaders/GameCornerPrizeRoom.asm b/data/mapHeaders/GameCornerPrizeRoom.asm
new file mode 100755
index 00000000..e43d2ec7
--- /dev/null
+++ b/data/mapHeaders/GameCornerPrizeRoom.asm
@@ -0,0 +1,8 @@
+GameCornerPrizeRoom_h:
+ db LOBBY ; tileset
+ db GAME_CORNER_PRIZE_ROOM_HEIGHT, GAME_CORNER_PRIZE_ROOM_WIDTH ; dimensions (y, x)
+ dw GameCornerPrizeRoom_Blocks ; blocks
+ dw GameCornerPrizeRoom_TextPointers ; texts
+ dw GameCornerPrizeRoom_Script ; scripts
+ db 0 ; connections
+ dw GameCornerPrizeRoom_Object ; objects
diff --git a/data/mapHeaders/HallOfFame.asm b/data/mapHeaders/HallOfFame.asm
new file mode 100755
index 00000000..e7f7a982
--- /dev/null
+++ b/data/mapHeaders/HallOfFame.asm
@@ -0,0 +1,8 @@
+HallOfFame_h:
+ db GYM ; tileset
+ db HALL_OF_FAME_HEIGHT, HALL_OF_FAME_WIDTH ; dimensions (y, x)
+ dw HallOfFame_Blocks ; blocks
+ dw HallOfFame_TextPointers ; texts
+ dw HallOfFame_Script ; scripts
+ db 0 ; connections
+ dw HallOfFame_Object ; objects
diff --git a/data/mapHeaders/IndigoPlateau.asm b/data/mapHeaders/IndigoPlateau.asm
new file mode 100755
index 00000000..ee8b2f0c
--- /dev/null
+++ b/data/mapHeaders/IndigoPlateau.asm
@@ -0,0 +1,9 @@
+IndigoPlateau_h:
+ db PLATEAU ; tileset
+ db INDIGO_PLATEAU_HEIGHT, INDIGO_PLATEAU_WIDTH ; dimensions (y, x)
+ dw IndigoPlateau_Blocks ; blocks
+ dw IndigoPlateau_TextPointers ; texts
+ dw IndigoPlateau_Script ; scripts
+ db SOUTH ; connections
+ SOUTH_MAP_CONNECTION INDIGO_PLATEAU, ROUTE_23, 0, 0, Route23_Blocks
+ dw IndigoPlateau_Object ; objects
diff --git a/data/mapHeaders/IndigoPlateauLobby.asm b/data/mapHeaders/IndigoPlateauLobby.asm
new file mode 100755
index 00000000..f099c87d
--- /dev/null
+++ b/data/mapHeaders/IndigoPlateauLobby.asm
@@ -0,0 +1,8 @@
+IndigoPlateauLobby_h:
+ db MART ; tileset
+ db INDIGO_PLATEAU_LOBBY_HEIGHT, INDIGO_PLATEAU_LOBBY_WIDTH ; dimensions (y, x)
+ dw IndigoPlateauLobby_Blocks ; blocks
+ dw IndigoPlateauLobby_TextPointers ; texts
+ dw IndigoPlateauLobby_Script ; scripts
+ db 0 ; connections
+ dw IndigoPlateauLobby_Object ; objects
diff --git a/data/mapHeaders/LancesRoom.asm b/data/mapHeaders/LancesRoom.asm
new file mode 100755
index 00000000..a9cea4b6
--- /dev/null
+++ b/data/mapHeaders/LancesRoom.asm
@@ -0,0 +1,8 @@
+LancesRoom_h:
+ db DOJO ; tileset
+ db LANCES_ROOM_HEIGHT, LANCES_ROOM_WIDTH ; dimensions (y, x)
+ dw LancesRoom_Blocks ; blocks
+ dw LancesRoom_TextPointers ; texts
+ dw LancesRoom_Script ; scripts
+ db 0 ; connections
+ dw LancesRoom_Object ; objects
diff --git a/data/mapHeaders/LavenderCuboneHouse.asm b/data/mapHeaders/LavenderCuboneHouse.asm
new file mode 100755
index 00000000..06e9cb40
--- /dev/null
+++ b/data/mapHeaders/LavenderCuboneHouse.asm
@@ -0,0 +1,8 @@
+LavenderCuboneHouse_h:
+ db HOUSE ; tileset
+ db LAVENDER_CUBONE_HOUSE_HEIGHT, LAVENDER_CUBONE_HOUSE_WIDTH ; dimensions (y, x)
+ dw LavenderCuboneHouse_Blocks ; blocks
+ dw LavenderCuboneHouse_TextPointers ; texts
+ dw LavenderCuboneHouse_Script ; scripts
+ db 0 ; connections
+ dw LavenderCuboneHouse_Object ; objects
diff --git a/data/mapHeaders/LavenderMart.asm b/data/mapHeaders/LavenderMart.asm
new file mode 100755
index 00000000..c6869d3c
--- /dev/null
+++ b/data/mapHeaders/LavenderMart.asm
@@ -0,0 +1,8 @@
+LavenderMart_h:
+ db MART ; tileset
+ db LAVENDER_MART_HEIGHT, LAVENDER_MART_WIDTH ; dimensions (y, x)
+ dw LavenderMart_Blocks ; blocks
+ dw LavenderMart_TextPointers ; texts
+ dw LavenderMart_Script ; scripts
+ db 0 ; connections
+ dw LavenderMart_Object ; objects
diff --git a/data/mapHeaders/LavenderPokecenter.asm b/data/mapHeaders/LavenderPokecenter.asm
new file mode 100755
index 00000000..820e19cd
--- /dev/null
+++ b/data/mapHeaders/LavenderPokecenter.asm
@@ -0,0 +1,8 @@
+LavenderPokecenter_h:
+ db POKECENTER ; tileset
+ db LAVENDER_POKECENTER_HEIGHT, LAVENDER_POKECENTER_WIDTH ; dimensions (y, x)
+ dw LavenderPokecenter_Blocks ; blocks
+ dw LavenderPokecenter_TextPointers ; texts
+ dw LavenderPokecenter_Script ; scripts
+ db 0 ; connections
+ dw LavenderPokecenter_Object ; objects
diff --git a/data/mapHeaders/LavenderTown.asm b/data/mapHeaders/LavenderTown.asm
new file mode 100755
index 00000000..99c9515d
--- /dev/null
+++ b/data/mapHeaders/LavenderTown.asm
@@ -0,0 +1,11 @@
+LavenderTown_h:
+ db OVERWORLD ; tileset
+ db LAVENDER_TOWN_HEIGHT, LAVENDER_TOWN_WIDTH ; dimensions (y, x)
+ dw LavenderTown_Blocks ; blocks
+ dw LavenderTown_TextPointers ; texts
+ dw LavenderTown_Script ; scripts
+ db NORTH | SOUTH | WEST ; connections
+ NORTH_MAP_CONNECTION LAVENDER_TOWN, ROUTE_10, 0, 0, Route10_Blocks
+ SOUTH_MAP_CONNECTION LAVENDER_TOWN, ROUTE_12, 0, 0, Route12_Blocks, 1
+ WEST_MAP_CONNECTION LAVENDER_TOWN, ROUTE_8, 0, 0, Route8_Blocks
+ dw LavenderTown_Object ; objects
diff --git a/data/mapHeaders/LoreleisRoom.asm b/data/mapHeaders/LoreleisRoom.asm
new file mode 100755
index 00000000..216b6621
--- /dev/null
+++ b/data/mapHeaders/LoreleisRoom.asm
@@ -0,0 +1,8 @@
+LoreleisRoom_h:
+ db GYM ; tileset
+ db LORELEIS_ROOM_HEIGHT, LORELEIS_ROOM_WIDTH ; dimensions (y, x)
+ dw LoreleisRoom_Blocks ; blocks
+ dw LoreleisRoom_TextPointers ; texts
+ dw LoreleisRoom_Script ; scripts
+ db 0 ; connections
+ dw LoreleisRoom_Object ; objects
diff --git a/data/mapHeaders/MrFujisHouse.asm b/data/mapHeaders/MrFujisHouse.asm
new file mode 100755
index 00000000..4ae9c5b7
--- /dev/null
+++ b/data/mapHeaders/MrFujisHouse.asm
@@ -0,0 +1,8 @@
+MrFujisHouse_h:
+ db HOUSE ; tileset
+ db MR_FUJIS_HOUSE_HEIGHT, MR_FUJIS_HOUSE_WIDTH ; dimensions (y, x)
+ dw MrFujisHouse_Blocks ; blocks
+ dw MrFujisHouse_TextPointers ; texts
+ dw MrFujisHouse_Script ; scripts
+ db 0 ; connections
+ dw MrFujisHouse_Object ; objects
diff --git a/data/mapHeaders/MrPsychicsHouse.asm b/data/mapHeaders/MrPsychicsHouse.asm
new file mode 100755
index 00000000..5e4ce91b
--- /dev/null
+++ b/data/mapHeaders/MrPsychicsHouse.asm
@@ -0,0 +1,8 @@
+MrPsychicsHouse_h:
+ db HOUSE ; tileset
+ db MR_PSYCHICS_HOUSE_HEIGHT, MR_PSYCHICS_HOUSE_WIDTH ; dimensions (y, x)
+ dw MrPsychicsHouse_Blocks ; blocks
+ dw MrPsychicsHouse_TextPointers ; texts
+ dw MrPsychicsHouse_Script ; scripts
+ db 0 ; connections
+ dw MrPsychicsHouse_Object ; objects
diff --git a/data/mapHeaders/MtMoon1F.asm b/data/mapHeaders/MtMoon1F.asm
new file mode 100755
index 00000000..29ce5d6b
--- /dev/null
+++ b/data/mapHeaders/MtMoon1F.asm
@@ -0,0 +1,8 @@
+MtMoon1F_h:
+ db CAVERN ; tileset
+ db MT_MOON_1F_HEIGHT, MT_MOON_1F_WIDTH ; dimensions (y, x)
+ dw MtMoon1F_Blocks ; blocks
+ dw MtMoon1F_TextPointers ; texts
+ dw MtMoon1F_Script ; scripts
+ db 0 ; connections
+ dw MtMoon1F_Object ; objects
diff --git a/data/mapHeaders/MtMoonB1F.asm b/data/mapHeaders/MtMoonB1F.asm
new file mode 100755
index 00000000..7ebc3dab
--- /dev/null
+++ b/data/mapHeaders/MtMoonB1F.asm
@@ -0,0 +1,8 @@
+MtMoonB1F_h:
+ db CAVERN ; tileset
+ db MT_MOON_B1F_HEIGHT, MT_MOON_B1F_WIDTH ; dimensions (y, x)
+ dw MtMoonB1F_Blocks ; blocks
+ dw MtMoonB1F_TextPointers ; texts
+ dw MtMoonB1F_Script ; scripts
+ db 0 ; connections
+ dw MtMoonB1F_Object ; objects
diff --git a/data/mapHeaders/MtMoonB2F.asm b/data/mapHeaders/MtMoonB2F.asm
new file mode 100755
index 00000000..2ec86247
--- /dev/null
+++ b/data/mapHeaders/MtMoonB2F.asm
@@ -0,0 +1,8 @@
+MtMoonB2F_h:
+ db CAVERN ; tileset
+ db MT_MOON_B2F_HEIGHT, MT_MOON_B2F_WIDTH ; dimensions (y, x)
+ dw MtMoonB2F_Blocks ; blocks
+ dw MtMoonB2F_TextPointers ; texts
+ dw MtMoonB2F_Script ; scripts
+ db 0 ; connections
+ dw MtMoonB2F_Object ; objects
diff --git a/data/mapHeaders/MtMoonPokecenter.asm b/data/mapHeaders/MtMoonPokecenter.asm
new file mode 100755
index 00000000..c3c014ff
--- /dev/null
+++ b/data/mapHeaders/MtMoonPokecenter.asm
@@ -0,0 +1,8 @@
+MtMoonPokecenter_h:
+ db POKECENTER ; tileset
+ db MT_MOON_POKECENTER_HEIGHT, MT_MOON_POKECENTER_WIDTH ; dimensions (y, x)
+ dw MtMoonPokecenter_Blocks ; blocks
+ dw MtMoonPokecenter_TextPointers ; texts
+ dw MtMoonPokecenter_Script ; scripts
+ db 0 ; connections
+ dw MtMoonPokecenter_Object ; objects
diff --git a/data/mapHeaders/Museum1F.asm b/data/mapHeaders/Museum1F.asm
new file mode 100755
index 00000000..55625fc4
--- /dev/null
+++ b/data/mapHeaders/Museum1F.asm
@@ -0,0 +1,8 @@
+Museum1F_h:
+ db MUSEUM ; tileset
+ db MUSEUM_1F_HEIGHT, MUSEUM_1F_WIDTH ; dimensions (y, x)
+ dw Museum1F_Blocks ; blocks
+ dw Museum1F_TextPointers ; texts
+ dw Museum1F_Script ; scripts
+ db 0 ; connections
+ dw Museum1F_Object ; objects
diff --git a/data/mapHeaders/Museum2F.asm b/data/mapHeaders/Museum2F.asm
new file mode 100755
index 00000000..b39e161d
--- /dev/null
+++ b/data/mapHeaders/Museum2F.asm
@@ -0,0 +1,8 @@
+Museum2F_h:
+ db MUSEUM ; tileset
+ db MUSEUM_2F_HEIGHT, MUSEUM_2F_WIDTH ; dimensions (y, x)
+ dw Museum2F_Blocks ; blocks
+ dw Museum2F_TextPointers ; texts
+ dw Museum2F_Script ; scripts
+ db 0 ; connections
+ dw Museum2F_Object ; objects
diff --git a/data/mapHeaders/NameRatersHouse.asm b/data/mapHeaders/NameRatersHouse.asm
new file mode 100755
index 00000000..7e3acee1
--- /dev/null
+++ b/data/mapHeaders/NameRatersHouse.asm
@@ -0,0 +1,8 @@
+NameRatersHouse_h:
+ db HOUSE ; tileset
+ db NAME_RATERS_HOUSE_HEIGHT, NAME_RATERS_HOUSE_WIDTH ; dimensions (y, x)
+ dw NameRatersHouse_Blocks ; blocks
+ dw NameRatersHouse_TextPointers ; texts
+ dw NameRatersHouse_Script ; scripts
+ db 0 ; connections
+ dw NameRatersHouse_Object ; objects
diff --git a/data/mapHeaders/OaksLab.asm b/data/mapHeaders/OaksLab.asm
new file mode 100755
index 00000000..ffbcdd52
--- /dev/null
+++ b/data/mapHeaders/OaksLab.asm
@@ -0,0 +1,8 @@
+OaksLab_h:
+ db DOJO ; tileset
+ db OAKS_LAB_HEIGHT, OAKS_LAB_WIDTH ; dimensions (y, x)
+ dw OaksLab_Blocks ; blocks
+ dw OaksLab_TextPointers ; texts
+ dw OaksLab_Script ; scripts
+ db 0 ; connections
+ dw OaksLab_Object ; objects
diff --git a/data/mapHeaders/PalletTown.asm b/data/mapHeaders/PalletTown.asm
new file mode 100755
index 00000000..eb8525ae
--- /dev/null
+++ b/data/mapHeaders/PalletTown.asm
@@ -0,0 +1,10 @@
+PalletTown_h:
+ db OVERWORLD ; tileset
+ db PALLET_TOWN_HEIGHT, PALLET_TOWN_WIDTH ; dimensions (y, x)
+ dw PalletTown_Blocks ; blocks
+ dw PalletTown_TextPointers ; texts
+ dw PalletTown_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION PALLET_TOWN, ROUTE_1, 0, 0, Route1_Blocks
+ SOUTH_MAP_CONNECTION PALLET_TOWN, ROUTE_21, 0, 0, Route21_Blocks, 1
+ dw PalletTown_Object ; objects
diff --git a/data/mapHeaders/PewterCity.asm b/data/mapHeaders/PewterCity.asm
new file mode 100755
index 00000000..73610f86
--- /dev/null
+++ b/data/mapHeaders/PewterCity.asm
@@ -0,0 +1,10 @@
+PewterCity_h:
+ db OVERWORLD ; tileset
+ db PEWTER_CITY_HEIGHT, PEWTER_CITY_WIDTH ; dimensions (y, x)
+ dw PewterCity_Blocks ; blocks
+ dw PewterCity_TextPointers ; texts
+ dw PewterCity_Script ; scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION PEWTER_CITY, ROUTE_2, 5, 0, Route2_Blocks
+ EAST_MAP_CONNECTION PEWTER_CITY, ROUTE_3, 4, 0, Route3_Blocks
+ dw PewterCity_Object ; objects
diff --git a/data/mapHeaders/PewterGym.asm b/data/mapHeaders/PewterGym.asm
new file mode 100755
index 00000000..bb9c2e84
--- /dev/null
+++ b/data/mapHeaders/PewterGym.asm
@@ -0,0 +1,8 @@
+PewterGym_h:
+ db GYM ; tileset
+ db PEWTER_GYM_HEIGHT, PEWTER_GYM_WIDTH ; dimensions (y, x)
+ dw PewterGym_Blocks ; blocks
+ dw PewterGym_TextPointers ; texts
+ dw PewterGym_Script ; scripts
+ db 0 ; connections
+ dw PewterGym_Object ; objects
diff --git a/data/mapHeaders/PewterMart.asm b/data/mapHeaders/PewterMart.asm
new file mode 100755
index 00000000..dc8c5c78
--- /dev/null
+++ b/data/mapHeaders/PewterMart.asm
@@ -0,0 +1,8 @@
+PewterMart_h:
+ db MART ; tileset
+ db PEWTER_MART_HEIGHT, PEWTER_MART_WIDTH ; dimensions (y, x)
+ dw PewterMart_Blocks ; blocks
+ dw PewterMart_TextPointers ; texts
+ dw PewterMart_Script ; scripts
+ db 0 ; connections
+ dw PewterMart_Object ; objects
diff --git a/data/mapHeaders/PewterNidoranHouse.asm b/data/mapHeaders/PewterNidoranHouse.asm
new file mode 100755
index 00000000..ffab8473
--- /dev/null
+++ b/data/mapHeaders/PewterNidoranHouse.asm
@@ -0,0 +1,8 @@
+PewterNidoranHouse_h:
+ db HOUSE ; tileset
+ db PEWTER_NIDORAN_HOUSE_HEIGHT, PEWTER_NIDORAN_HOUSE_WIDTH ; dimensions (y, x)
+ dw PewterNidoranHouse_Blocks ; blocks
+ dw PewterNidoranHouse_TextPointers ; texts
+ dw PewterNidoranHouse_Script ; scripts
+ db 0 ; connections
+ dw PewterNidoranHouse_Object ; objects
diff --git a/data/mapHeaders/PewterPokecenter.asm b/data/mapHeaders/PewterPokecenter.asm
new file mode 100755
index 00000000..89adbb80
--- /dev/null
+++ b/data/mapHeaders/PewterPokecenter.asm
@@ -0,0 +1,8 @@
+PewterPokecenter_h:
+ db POKECENTER ; tileset
+ db PEWTER_POKECENTER_HEIGHT, PEWTER_POKECENTER_WIDTH ; dimensions (y, x)
+ dw PewterPokecenter_Blocks ; blocks
+ dw PewterPokecenter_TextPointers ; texts
+ dw PewterPokecenter_Script ; scripts
+ db 0 ; connections
+ dw PewterPokecenter_Object ; objects
diff --git a/data/mapHeaders/PewterSpeechHouse.asm b/data/mapHeaders/PewterSpeechHouse.asm
new file mode 100755
index 00000000..7750c8c7
--- /dev/null
+++ b/data/mapHeaders/PewterSpeechHouse.asm
@@ -0,0 +1,8 @@
+PewterSpeechHouse_h:
+ db HOUSE ; tileset
+ db PEWTER_SPEECH_HOUSE_HEIGHT, PEWTER_SPEECH_HOUSE_WIDTH ; dimensions (y, x)
+ dw PewterSpeechHouse_Blocks ; blocks
+ dw PewterSpeechHouse_TextPointers ; texts
+ dw PewterSpeechHouse_Script ; scripts
+ db 0 ; connections
+ dw PewterSpeechHouse_Object ; objects
diff --git a/data/mapHeaders/PokemonFanClub.asm b/data/mapHeaders/PokemonFanClub.asm
new file mode 100755
index 00000000..18ebb923
--- /dev/null
+++ b/data/mapHeaders/PokemonFanClub.asm
@@ -0,0 +1,8 @@
+PokemonFanClub_h:
+ db INTERIOR ; tileset
+ db POKEMON_FAN_CLUB_HEIGHT, POKEMON_FAN_CLUB_WIDTH ; dimensions (y, x)
+ dw PokemonFanClub_Blocks ; blocks
+ dw PokemonFanClub_TextPointers ; texts
+ dw PokemonFanClub_Script ; scripts
+ db 0 ; connections
+ dw PokemonFanClub_Object ; objects
diff --git a/data/mapHeaders/PokemonMansion1F.asm b/data/mapHeaders/PokemonMansion1F.asm
new file mode 100755
index 00000000..357b0cbb
--- /dev/null
+++ b/data/mapHeaders/PokemonMansion1F.asm
@@ -0,0 +1,8 @@
+PokemonMansion1F_h:
+ db FACILITY ; tileset
+ db POKEMON_MANSION_1F_HEIGHT, POKEMON_MANSION_1F_WIDTH ; dimensions (y, x)
+ dw PokemonMansion1F_Blocks ; blocks
+ dw PokemonMansion1F_TextPointers ; texts
+ dw PokemonMansion1F_Script ; scripts
+ db 0 ; connections
+ dw PokemonMansion1F_Object ; objects
diff --git a/data/mapHeaders/PokemonMansion2F.asm b/data/mapHeaders/PokemonMansion2F.asm
new file mode 100755
index 00000000..71c0e3bb
--- /dev/null
+++ b/data/mapHeaders/PokemonMansion2F.asm
@@ -0,0 +1,8 @@
+PokemonMansion2F_h:
+ db FACILITY ; tileset
+ db POKEMON_MANSION_2F_HEIGHT, POKEMON_MANSION_2F_WIDTH ; dimensions (y, x)
+ dw PokemonMansion2F_Blocks ; blocks
+ dw PokemonMansion2F_TextPointers ; texts
+ dw PokemonMansion2F_Script ; scripts
+ db 0 ; connections
+ dw PokemonMansion2F_Object ; objects
diff --git a/data/mapHeaders/PokemonMansion3F.asm b/data/mapHeaders/PokemonMansion3F.asm
new file mode 100755
index 00000000..fe4076f9
--- /dev/null
+++ b/data/mapHeaders/PokemonMansion3F.asm
@@ -0,0 +1,8 @@
+PokemonMansion3F_h:
+ db FACILITY ; tileset
+ db POKEMON_MANSION_3F_HEIGHT, POKEMON_MANSION_3F_WIDTH ; dimensions (y, x)
+ dw PokemonMansion3F_Blocks ; blocks
+ dw PokemonMansion3F_TextPointers ; texts
+ dw PokemonMansion3F_Script ; scripts
+ db 0 ; connections
+ dw PokemonMansion3F_Object ; objects
diff --git a/data/mapHeaders/PokemonMansionB1F.asm b/data/mapHeaders/PokemonMansionB1F.asm
new file mode 100755
index 00000000..ccf892b2
--- /dev/null
+++ b/data/mapHeaders/PokemonMansionB1F.asm
@@ -0,0 +1,8 @@
+PokemonMansionB1F_h:
+ db FACILITY ; tileset
+ db POKEMON_MANSION_B1F_HEIGHT, POKEMON_MANSION_B1F_WIDTH ; dimensions (y, x)
+ dw PokemonMansionB1F_Blocks ; blocks
+ dw PokemonMansionB1F_TextPointers ; texts
+ dw PokemonMansionB1F_Script ; scripts
+ db 0 ; connections
+ dw PokemonMansionB1F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower1F.asm b/data/mapHeaders/PokemonTower1F.asm
new file mode 100755
index 00000000..561274bb
--- /dev/null
+++ b/data/mapHeaders/PokemonTower1F.asm
@@ -0,0 +1,8 @@
+PokemonTower1F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_1F_HEIGHT, POKEMON_TOWER_1F_WIDTH ; dimensions (y, x)
+ dw PokemonTower1F_Blocks ; blocks
+ dw PokemonTower1F_TextPointers ; texts
+ dw PokemonTower1F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower1F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower2F.asm b/data/mapHeaders/PokemonTower2F.asm
new file mode 100755
index 00000000..41e3271e
--- /dev/null
+++ b/data/mapHeaders/PokemonTower2F.asm
@@ -0,0 +1,8 @@
+PokemonTower2F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_2F_HEIGHT, POKEMON_TOWER_2F_WIDTH ; dimensions (y, x)
+ dw PokemonTower2F_Blocks ; blocks
+ dw PokemonTower2F_TextPointers ; texts
+ dw PokemonTower2F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower2F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower3F.asm b/data/mapHeaders/PokemonTower3F.asm
new file mode 100755
index 00000000..932c4a20
--- /dev/null
+++ b/data/mapHeaders/PokemonTower3F.asm
@@ -0,0 +1,8 @@
+PokemonTower3F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_3F_HEIGHT, POKEMON_TOWER_3F_WIDTH ; dimensions (y, x)
+ dw PokemonTower3F_Blocks ; blocks
+ dw PokemonTower3F_TextPointers ; texts
+ dw PokemonTower3F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower3F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower4F.asm b/data/mapHeaders/PokemonTower4F.asm
new file mode 100755
index 00000000..b3027cb0
--- /dev/null
+++ b/data/mapHeaders/PokemonTower4F.asm
@@ -0,0 +1,8 @@
+PokemonTower4F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_4F_HEIGHT, POKEMON_TOWER_4F_WIDTH ; dimensions (y, x)
+ dw PokemonTower4F_Blocks ; blocks
+ dw PokemonTower4F_TextPointers ; texts
+ dw PokemonTower4F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower4F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower5F.asm b/data/mapHeaders/PokemonTower5F.asm
new file mode 100755
index 00000000..9452c553
--- /dev/null
+++ b/data/mapHeaders/PokemonTower5F.asm
@@ -0,0 +1,8 @@
+PokemonTower5F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_5F_HEIGHT, POKEMON_TOWER_5F_WIDTH ; dimensions (y, x)
+ dw PokemonTower5F_Blocks ; blocks
+ dw PokemonTower5F_TextPointers ; texts
+ dw PokemonTower5F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower5F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower6F.asm b/data/mapHeaders/PokemonTower6F.asm
new file mode 100755
index 00000000..336c8f66
--- /dev/null
+++ b/data/mapHeaders/PokemonTower6F.asm
@@ -0,0 +1,8 @@
+PokemonTower6F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_6F_HEIGHT, POKEMON_TOWER_6F_WIDTH ; dimensions (y, x)
+ dw PokemonTower6F_Blocks ; blocks
+ dw PokemonTower6F_TextPointers ; texts
+ dw PokemonTower6F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower6F_Object ; objects
diff --git a/data/mapHeaders/PokemonTower7F.asm b/data/mapHeaders/PokemonTower7F.asm
new file mode 100755
index 00000000..da10fa53
--- /dev/null
+++ b/data/mapHeaders/PokemonTower7F.asm
@@ -0,0 +1,8 @@
+PokemonTower7F_h:
+ db CEMETERY ; tileset
+ db POKEMON_TOWER_7F_HEIGHT, POKEMON_TOWER_7F_WIDTH ; dimensions (y, x)
+ dw PokemonTower7F_Blocks ; blocks
+ dw PokemonTower7F_TextPointers ; texts
+ dw PokemonTower7F_Script ; scripts
+ db 0 ; connections
+ dw PokemonTower7F_Object ; objects
diff --git a/data/mapHeaders/PowerPlant.asm b/data/mapHeaders/PowerPlant.asm
new file mode 100755
index 00000000..91f03d63
--- /dev/null
+++ b/data/mapHeaders/PowerPlant.asm
@@ -0,0 +1,8 @@
+PowerPlant_h:
+ db FACILITY ; tileset
+ db POWER_PLANT_HEIGHT, POWER_PLANT_WIDTH ; dimensions (y, x)
+ dw PowerPlant_Blocks ; blocks
+ dw PowerPlant_TextPointers ; texts
+ dw PowerPlant_Script ; scripts
+ db 0 ; connections
+ dw PowerPlant_Object ; objects
diff --git a/data/mapHeaders/RedsHouse1F.asm b/data/mapHeaders/RedsHouse1F.asm
new file mode 100755
index 00000000..c9acc489
--- /dev/null
+++ b/data/mapHeaders/RedsHouse1F.asm
@@ -0,0 +1,8 @@
+RedsHouse1F_h:
+ db REDS_HOUSE_1 ; tileset
+ db REDS_HOUSE_1F_HEIGHT, REDS_HOUSE_1F_WIDTH ; dimensions (y, x)
+ dw RedsHouse1F_Blocks ; blocks
+ dw RedsHouse1F_TextPointers ; texts
+ dw RedsHouse1F_Script ; scripts
+ db 0 ; connections
+ dw RedsHouse1F_Object ; objects
diff --git a/data/mapHeaders/RedsHouse2F.asm b/data/mapHeaders/RedsHouse2F.asm
new file mode 100755
index 00000000..42215466
--- /dev/null
+++ b/data/mapHeaders/RedsHouse2F.asm
@@ -0,0 +1,8 @@
+RedsHouse2F_h:
+ db REDS_HOUSE_2 ; tileset
+ db REDS_HOUSE_2F_HEIGHT, REDS_HOUSE_2F_WIDTH ; dimensions (y, x)
+ dw RedsHouse2F_Blocks ; blocks
+ dw RedsHouse2F_TextPointers ; texts
+ dw RedsHouse2F_Script ; scripts
+ db $00 ; connections
+ dw RedsHouse2F_Object ; objects
diff --git a/data/mapHeaders/RockTunnel1F.asm b/data/mapHeaders/RockTunnel1F.asm
new file mode 100755
index 00000000..dd552ac9
--- /dev/null
+++ b/data/mapHeaders/RockTunnel1F.asm
@@ -0,0 +1,8 @@
+RockTunnel1F_h:
+ db CAVERN ; tileset
+ db ROCK_TUNNEL_1F_HEIGHT, ROCK_TUNNEL_1F_WIDTH ; dimensions (y, x)
+ dw RockTunnel1F_Blocks ; blocks
+ dw RockTunnel1F_TextPointers ; texts
+ dw RockTunnel1F_Script ; scripts
+ db 0 ; connections
+ dw RockTunnel1F_Object ; objects
diff --git a/data/mapHeaders/RockTunnelB1F.asm b/data/mapHeaders/RockTunnelB1F.asm
new file mode 100755
index 00000000..4e765f20
--- /dev/null
+++ b/data/mapHeaders/RockTunnelB1F.asm
@@ -0,0 +1,8 @@
+RockTunnelB1F_h:
+ db CAVERN ; tileset
+ db ROCK_TUNNEL_B1F_HEIGHT, ROCK_TUNNEL_B1F_WIDTH ; dimensions (y, x)
+ dw RockTunnelB1F_Blocks ; blocks
+ dw RockTunnelB1F_TextPointers ; texts
+ dw RockTunnelB1F_Script ; scripts
+ db 0 ; connections
+ dw RockTunnelB1F_Object ; objects
diff --git a/data/mapHeaders/RockTunnelPokecenter.asm b/data/mapHeaders/RockTunnelPokecenter.asm
new file mode 100755
index 00000000..ac29f1cf
--- /dev/null
+++ b/data/mapHeaders/RockTunnelPokecenter.asm
@@ -0,0 +1,8 @@
+RockTunnelPokecenter_h:
+ db POKECENTER ; tileset
+ db ROCK_TUNNEL_POKECENTER_HEIGHT, ROCK_TUNNEL_POKECENTER_WIDTH ; dimensions (y, x)
+ dw RockTunnelPokecenter_Blocks ; blocks
+ dw RockTunnelPokecenter_TextPointers ; texts
+ dw RockTunnelPokecenter_Script ; scripts
+ db 0 ; connections
+ dw RockTunnelPokecenter_Object ; objects
diff --git a/data/mapHeaders/RocketHideoutB1F.asm b/data/mapHeaders/RocketHideoutB1F.asm
new file mode 100755
index 00000000..3c842f1e
--- /dev/null
+++ b/data/mapHeaders/RocketHideoutB1F.asm
@@ -0,0 +1,8 @@
+RocketHideoutB1F_h:
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_B1F_HEIGHT, ROCKET_HIDEOUT_B1F_WIDTH ; dimensions (y, x)
+ dw RocketHideoutB1F_Blocks ; blocks
+ dw RocketHideoutB1F_TextPointers ; texts
+ dw RocketHideoutB1F_Script ; scripts
+ db 0 ; connections
+ dw RocketHideoutB1F_Object ; objects
diff --git a/data/mapHeaders/RocketHideoutB2F.asm b/data/mapHeaders/RocketHideoutB2F.asm
new file mode 100755
index 00000000..b570c2a6
--- /dev/null
+++ b/data/mapHeaders/RocketHideoutB2F.asm
@@ -0,0 +1,8 @@
+RocketHideoutB2F_h:
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_B2F_HEIGHT, ROCKET_HIDEOUT_B2F_WIDTH ; dimensions (y, x)
+ dw RocketHideoutB2F_Blocks ; blocks
+ dw RocketHideoutB2F_TextPointers ; texts
+ dw RocketHideoutB2F_Script ; scripts
+ db 0 ; connections
+ dw RocketHideoutB2F_Object ; objects
diff --git a/data/mapHeaders/RocketHideoutB3F.asm b/data/mapHeaders/RocketHideoutB3F.asm
new file mode 100755
index 00000000..7eab257e
--- /dev/null
+++ b/data/mapHeaders/RocketHideoutB3F.asm
@@ -0,0 +1,8 @@
+RocketHideoutB3F_h:
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_B3F_HEIGHT, ROCKET_HIDEOUT_B3F_WIDTH ; dimensions (y, x)
+ dw RocketHideoutB3F_Blocks ; blocks
+ dw RocketHideoutB3F_TextPointers ; texts
+ dw RocketHideoutB3F_Script ; scripts
+ db 0 ; connections
+ dw RocketHideoutB3F_Object ; objects
diff --git a/data/mapHeaders/RocketHideoutB4F.asm b/data/mapHeaders/RocketHideoutB4F.asm
new file mode 100755
index 00000000..57797c56
--- /dev/null
+++ b/data/mapHeaders/RocketHideoutB4F.asm
@@ -0,0 +1,8 @@
+RocketHideoutB4F_h:
+ db FACILITY ; tileset
+ db ROCKET_HIDEOUT_B4F_HEIGHT, ROCKET_HIDEOUT_B4F_WIDTH ; dimensions (y, x)
+ dw RocketHideoutB4F_Blocks ; blocks
+ dw RocketHideoutB4F_TextPointers ; texts
+ dw RocketHideoutB4F_Script ; scripts
+ db 0 ; connections
+ dw RocketHideoutB4F_Object ; objects
diff --git a/data/mapHeaders/RocketHideoutElevator.asm b/data/mapHeaders/RocketHideoutElevator.asm
new file mode 100755
index 00000000..742d0038
--- /dev/null
+++ b/data/mapHeaders/RocketHideoutElevator.asm
@@ -0,0 +1,8 @@
+RocketHideoutElevator_h:
+ db LOBBY ; tileset
+ db ROCKET_HIDEOUT_ELEVATOR_HEIGHT, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; dimensions (y, x)
+ dw RocketHideoutElevator_Blocks ; blocks
+ dw RocketHideoutElevator_TextPointers ; texts
+ dw RocketHideoutElevator_Script ; scripts
+ db 0 ; connections
+ dw RocketHideoutElevator_Object ; objects
diff --git a/data/mapHeaders/Route1.asm b/data/mapHeaders/Route1.asm
new file mode 100755
index 00000000..ce460937
--- /dev/null
+++ b/data/mapHeaders/Route1.asm
@@ -0,0 +1,10 @@
+Route1_h:
+ db OVERWORLD ; tileset
+ db ROUTE_1_HEIGHT, ROUTE_1_WIDTH ; dimensions (y, x)
+ dw Route1_Blocks ; blocks
+ dw Route1_TextPointers ; texts
+ dw Route1_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_1, VIRIDIAN_CITY, -3, 2, ViridianCity_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_1, PALLET_TOWN, 0, 0, PalletTown_Blocks, 1
+ dw Route1_Object ; objects
diff --git a/data/mapHeaders/Route10.asm b/data/mapHeaders/Route10.asm
new file mode 100755
index 00000000..8c51bfc6
--- /dev/null
+++ b/data/mapHeaders/Route10.asm
@@ -0,0 +1,10 @@
+Route10_h:
+ db OVERWORLD ; tileset
+ db ROUTE_10_HEIGHT, ROUTE_10_WIDTH ; dimensions (y, x)
+ dw Route10_Blocks ; blocks
+ dw Route10_TextPointers ; texts
+ dw Route10_Script ; scripts
+ db SOUTH | WEST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_10, LAVENDER_TOWN, 0, 0, LavenderTown_Blocks
+ WEST_MAP_CONNECTION ROUTE_10, ROUTE_9, 0, 0, Route9_Blocks
+ dw Route10_Object ; objects
diff --git a/data/mapHeaders/Route11.asm b/data/mapHeaders/Route11.asm
new file mode 100755
index 00000000..b7814465
--- /dev/null
+++ b/data/mapHeaders/Route11.asm
@@ -0,0 +1,10 @@
+Route11_h:
+ db OVERWORLD ; tileset
+ db ROUTE_11_HEIGHT, ROUTE_11_WIDTH ; dimensions (y, x)
+ dw Route11_Blocks ; blocks
+ dw Route11_TextPointers ; texts
+ dw Route11_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_11, VERMILION_CITY, -3, 1, VermilionCity_Blocks
+ EAST_MAP_CONNECTION ROUTE_11, ROUTE_12, -3, 24, Route12_Blocks, 1
+ dw Route11_Object ; objects
diff --git a/data/mapHeaders/Route11Gate1F.asm b/data/mapHeaders/Route11Gate1F.asm
new file mode 100755
index 00000000..2e01d168
--- /dev/null
+++ b/data/mapHeaders/Route11Gate1F.asm
@@ -0,0 +1,8 @@
+Route11Gate1F_h:
+ db GATE ; tileset
+ db ROUTE_11_GATE_1F_HEIGHT, ROUTE_11_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route11Gate1F_Blocks ; blocks
+ dw Route11Gate1F_TextPointers ; texts
+ dw Route11Gate1F_Script ; scripts
+ db 0 ; connections
+ dw Route11Gate1F_Object ; objects
diff --git a/data/mapHeaders/Route11Gate2F.asm b/data/mapHeaders/Route11Gate2F.asm
new file mode 100755
index 00000000..ecb2ab7c
--- /dev/null
+++ b/data/mapHeaders/Route11Gate2F.asm
@@ -0,0 +1,8 @@
+Route11Gate2F_h:
+ db GATE ; tileset
+ db ROUTE_11_GATE_2F_HEIGHT, ROUTE_11_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route11Gate2F_Blocks ; blocks
+ dw Route11Gate2F_TextPointers ; texts
+ dw Route11Gate2F_Script ; scripts
+ db 0 ; connections
+ dw Route11Gate2F_Object ; objects
diff --git a/data/mapHeaders/Route12.asm b/data/mapHeaders/Route12.asm
new file mode 100755
index 00000000..2f76aa27
--- /dev/null
+++ b/data/mapHeaders/Route12.asm
@@ -0,0 +1,11 @@
+Route12_h:
+ db OVERWORLD ; tileset
+ db ROUTE_12_HEIGHT, ROUTE_12_WIDTH ; dimensions (y, x)
+ dw Route12_Blocks ; blocks
+ dw Route12_TextPointers ; texts
+ dw Route12_Script ; scripts
+ db NORTH | SOUTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_12, LAVENDER_TOWN, 0, 0, LavenderTown_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_12, ROUTE_13, -3, 17, Route13_Blocks
+ WEST_MAP_CONNECTION ROUTE_12, ROUTE_11, 27, 0, Route11_Blocks
+ dw Route12_Object ; objects
diff --git a/data/mapHeaders/Route12Gate1F.asm b/data/mapHeaders/Route12Gate1F.asm
new file mode 100755
index 00000000..e44aecab
--- /dev/null
+++ b/data/mapHeaders/Route12Gate1F.asm
@@ -0,0 +1,8 @@
+Route12Gate1F_h:
+ db GATE ; tileset
+ db ROUTE_12_GATE_1F_HEIGHT, ROUTE_12_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route12Gate1F_Blocks ; blocks
+ dw Route12Gate1F_TextPointers ; texts
+ dw Route12Gate1F_Script ; scripts
+ db 0 ; connections
+ dw Route12Gate1F_Object ; objects
diff --git a/data/mapHeaders/Route12Gate2F.asm b/data/mapHeaders/Route12Gate2F.asm
new file mode 100755
index 00000000..94d5d54c
--- /dev/null
+++ b/data/mapHeaders/Route12Gate2F.asm
@@ -0,0 +1,8 @@
+Route12Gate2F_h:
+ db GATE ; tileset
+ db ROUTE_12_GATE_2F_HEIGHT, ROUTE_12_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route12Gate2F_Blocks ; blocks
+ dw Route12Gate2F_TextPointers ; texts
+ dw Route12Gate2F_Script ; scripts
+ db 0 ; connections
+ dw Route12Gate2F_Object ; objects
diff --git a/data/mapHeaders/Route12SuperRodHouse.asm b/data/mapHeaders/Route12SuperRodHouse.asm
new file mode 100755
index 00000000..ef5e0f2c
--- /dev/null
+++ b/data/mapHeaders/Route12SuperRodHouse.asm
@@ -0,0 +1,8 @@
+Route12SuperRodHouse_h:
+ db HOUSE ; tileset
+ db ROUTE_12_SUPER_ROD_HOUSE_HEIGHT, ROUTE_12_SUPER_ROD_HOUSE_WIDTH ; dimensions (y, x)
+ dw Route12SuperRodHouse_Blocks ; blocks
+ dw Route12SuperRodHouse_TextPointers ; texts
+ dw Route12SuperRodHouse_Script ; scripts
+ db 0 ; connections
+ dw Route12SuperRodHouse_Object ; objects
diff --git a/data/mapHeaders/Route13.asm b/data/mapHeaders/Route13.asm
new file mode 100755
index 00000000..e6e244b9
--- /dev/null
+++ b/data/mapHeaders/Route13.asm
@@ -0,0 +1,10 @@
+Route13_h:
+ db OVERWORLD ; tileset
+ db ROUTE_13_HEIGHT, ROUTE_13_WIDTH ; dimensions (y, x)
+ dw Route13_Blocks ; blocks
+ dw Route13_TextPointers ; texts
+ dw Route13_Script ; scripts
+ db NORTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_13, ROUTE_12, 20, 0, Route12_Blocks
+ WEST_MAP_CONNECTION ROUTE_13, ROUTE_14, 0, 0, Route14_Blocks
+ dw Route13_Object ; objects
diff --git a/data/mapHeaders/Route14.asm b/data/mapHeaders/Route14.asm
new file mode 100755
index 00000000..c3934ac5
--- /dev/null
+++ b/data/mapHeaders/Route14.asm
@@ -0,0 +1,10 @@
+Route14_h:
+ db OVERWORLD ; tileset
+ db ROUTE_14_HEIGHT, ROUTE_14_WIDTH ; dimensions (y, x)
+ dw Route14_Blocks ; blocks
+ dw Route14_TextPointers ; texts
+ dw Route14_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_14, ROUTE_15, 18, 0, Route15_Blocks
+ EAST_MAP_CONNECTION ROUTE_14, ROUTE_13, 0, 0, Route13_Blocks
+ dw Route14_Object ; objects
diff --git a/data/mapHeaders/Route15.asm b/data/mapHeaders/Route15.asm
new file mode 100755
index 00000000..eb14d750
--- /dev/null
+++ b/data/mapHeaders/Route15.asm
@@ -0,0 +1,10 @@
+Route15_h:
+ db OVERWORLD ; tileset
+ db ROUTE_15_HEIGHT, ROUTE_15_WIDTH ; dimensions (y, x)
+ dw Route15_Blocks ; blocks
+ dw Route15_TextPointers ; texts
+ dw Route15_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_15, FUCHSIA_CITY, -3, 1, FuchsiaCity_Blocks
+ EAST_MAP_CONNECTION ROUTE_15, ROUTE_14, -3, 15, Route14_Blocks
+ dw Route15_Object ; objects
diff --git a/data/mapHeaders/Route15Gate1F.asm b/data/mapHeaders/Route15Gate1F.asm
new file mode 100755
index 00000000..b1ae5662
--- /dev/null
+++ b/data/mapHeaders/Route15Gate1F.asm
@@ -0,0 +1,8 @@
+Route15Gate1F_h:
+ db GATE ; tileset
+ db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route15Gate1F_Blocks ; blocks
+ dw Route15Gate1F_TextPointers ; texts
+ dw Route15Gate1F_Script ; scripts
+ db 0 ; connections
+ dw Route15Gate1F_Object ; objects
diff --git a/data/mapHeaders/Route15Gate2F.asm b/data/mapHeaders/Route15Gate2F.asm
new file mode 100755
index 00000000..501da092
--- /dev/null
+++ b/data/mapHeaders/Route15Gate2F.asm
@@ -0,0 +1,8 @@
+Route15Gate2F_h:
+ db GATE ; tileset
+ db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route15Gate2F_Blocks ; blocks
+ dw Route15Gate2F_TextPointers ; texts
+ dw Route15Gate2F_Script ; scripts
+ db 0 ; connections
+ dw Route15Gate2F_Object ; objects
diff --git a/data/mapHeaders/Route16.asm b/data/mapHeaders/Route16.asm
new file mode 100755
index 00000000..d12b6ea9
--- /dev/null
+++ b/data/mapHeaders/Route16.asm
@@ -0,0 +1,10 @@
+Route16_h:
+ db OVERWORLD ; tileset
+ db ROUTE_16_HEIGHT, ROUTE_16_WIDTH ; dimensions (y, x)
+ dw Route16_Blocks ; blocks
+ dw Route16_TextPointers ; texts
+ dw Route16_Script ; scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_16, ROUTE_17, 0, 0, Route17_Blocks
+ EAST_MAP_CONNECTION ROUTE_16, CELADON_CITY, -3, 1, CeladonCity_Blocks, 1
+ dw Route16_Object ; objects
diff --git a/data/mapHeaders/Route16FlyHouse.asm b/data/mapHeaders/Route16FlyHouse.asm
new file mode 100755
index 00000000..0d3f828d
--- /dev/null
+++ b/data/mapHeaders/Route16FlyHouse.asm
@@ -0,0 +1,8 @@
+Route16FlyHouse_h:
+ db HOUSE ; tileset
+ db ROUTE_16_FLY_HOUSE_HEIGHT, ROUTE_16_FLY_HOUSE_WIDTH ; dimensions (y, x)
+ dw Route16FlyHouse_Blocks ; blocks
+ dw Route16FlyHouse_TextPointers ; texts
+ dw Route16FlyHouse_Script ; scripts
+ db 0 ; connections
+ dw Route16FlyHouse_Object ; objects
diff --git a/data/mapHeaders/Route16Gate1F.asm b/data/mapHeaders/Route16Gate1F.asm
new file mode 100755
index 00000000..561fb597
--- /dev/null
+++ b/data/mapHeaders/Route16Gate1F.asm
@@ -0,0 +1,8 @@
+Route16Gate1F_h:
+ db GATE ; tileset
+ db ROUTE_16_GATE_1F_HEIGHT, ROUTE_16_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route16Gate1F_Blocks ; blocks
+ dw Route16Gate1F_TextPointers ; texts
+ dw Route16Gate1F_Script ; scripts
+ db 0 ; connections
+ dw Route16Gate1F_Object ; objects
diff --git a/data/mapHeaders/Route16Gate2F.asm b/data/mapHeaders/Route16Gate2F.asm
new file mode 100755
index 00000000..90783ab7
--- /dev/null
+++ b/data/mapHeaders/Route16Gate2F.asm
@@ -0,0 +1,8 @@
+Route16Gate2F_h:
+ db GATE ; tileset
+ db ROUTE_16_GATE_2F_HEIGHT, ROUTE_16_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route16Gate2F_Blocks ; blocks
+ dw Route16Gate2F_TextPointers ; texts
+ dw Route16Gate2F_Script ; scripts
+ db 0 ; connections
+ dw Route16Gate2F_Object ; objects
diff --git a/data/mapHeaders/Route17.asm b/data/mapHeaders/Route17.asm
new file mode 100755
index 00000000..58a785b4
--- /dev/null
+++ b/data/mapHeaders/Route17.asm
@@ -0,0 +1,10 @@
+Route17_h:
+ db OVERWORLD ; tileset
+ db ROUTE_17_HEIGHT, ROUTE_17_WIDTH ; dimensions (y, x)
+ dw Route17_Blocks ; blocks
+ dw Route17_TextPointers ; texts
+ dw Route17_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_17, ROUTE_16, 0, 0, Route16_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_17, ROUTE_18, 0, 0, Route18_Blocks, 1
+ dw Route17_Object ; objects
diff --git a/data/mapHeaders/Route18.asm b/data/mapHeaders/Route18.asm
new file mode 100755
index 00000000..5e10bdbd
--- /dev/null
+++ b/data/mapHeaders/Route18.asm
@@ -0,0 +1,10 @@
+Route18_h:
+ db OVERWORLD ; tileset
+ db ROUTE_18_HEIGHT, ROUTE_18_WIDTH ; dimensions (y, x)
+ dw Route18_Blocks ; blocks
+ dw Route18_TextPointers ; texts
+ dw Route18_Script ; scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_18, ROUTE_17, 0, 0, Route17_Blocks
+ EAST_MAP_CONNECTION ROUTE_18, FUCHSIA_CITY, -3, 1, FuchsiaCity_Blocks, 1
+ dw Route18_Object ; objects
diff --git a/data/mapHeaders/Route18Gate1F.asm b/data/mapHeaders/Route18Gate1F.asm
new file mode 100755
index 00000000..0e4a0dc3
--- /dev/null
+++ b/data/mapHeaders/Route18Gate1F.asm
@@ -0,0 +1,8 @@
+Route18Gate1F_h:
+ db GATE ; tileset
+ db ROUTE_18_GATE_1F_HEIGHT, ROUTE_18_GATE_1F_WIDTH ; dimensions (y, x)
+ dw Route18Gate1F_Blocks ; blocks
+ dw Route18Gate1F_TextPointers ; texts
+ dw Route18Gate1F_Script ; scripts
+ db 0 ; connections
+ dw Route18Gate1F_Object ; objects
diff --git a/data/mapHeaders/Route18Gate2F.asm b/data/mapHeaders/Route18Gate2F.asm
new file mode 100755
index 00000000..5d8f7126
--- /dev/null
+++ b/data/mapHeaders/Route18Gate2F.asm
@@ -0,0 +1,8 @@
+Route18Gate2F_h:
+ db GATE ; tileset
+ db ROUTE_18_GATE_2F_HEIGHT, ROUTE_18_GATE_2F_WIDTH ; dimensions (y, x)
+ dw Route18Gate2F_Blocks ; blocks
+ dw Route18Gate2F_TextPointers ; texts
+ dw Route18Gate2F_Script ; scripts
+ db 0 ; connections
+ dw Route18Gate2F_Object ; objects
diff --git a/data/mapHeaders/Route19.asm b/data/mapHeaders/Route19.asm
new file mode 100755
index 00000000..79972677
--- /dev/null
+++ b/data/mapHeaders/Route19.asm
@@ -0,0 +1,10 @@
+Route19_h:
+ db OVERWORLD ; tileset
+ db ROUTE_19_HEIGHT, ROUTE_19_WIDTH ; dimensions (y, x)
+ dw Route19_Blocks ; blocks
+ dw Route19_TextPointers ; texts
+ dw Route19_Script ; scripts
+ db NORTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_19, FUCHSIA_CITY, -3, 2, FuchsiaCity_Blocks
+ WEST_MAP_CONNECTION ROUTE_19, ROUTE_20, 18, 0, Route20_Blocks
+ dw Route19_Object ; objects
diff --git a/data/mapHeaders/Route2.asm b/data/mapHeaders/Route2.asm
new file mode 100755
index 00000000..94511d06
--- /dev/null
+++ b/data/mapHeaders/Route2.asm
@@ -0,0 +1,10 @@
+Route2_h:
+ db OVERWORLD ; tileset
+ db ROUTE_2_HEIGHT, ROUTE_2_WIDTH ; dimensions (y, x)
+ dw Route2_Blocks ; blocks
+ dw Route2_TextPointers ; texts
+ dw Route2_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_2, PEWTER_CITY, -3, 2, PewterCity_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_2, VIRIDIAN_CITY, -3, 2, ViridianCity_Blocks, 1
+ dw Route2_Object ; objects
diff --git a/data/mapHeaders/Route20.asm b/data/mapHeaders/Route20.asm
new file mode 100755
index 00000000..689f51cd
--- /dev/null
+++ b/data/mapHeaders/Route20.asm
@@ -0,0 +1,10 @@
+Route20_h:
+ db OVERWORLD ; tileset
+ db ROUTE_20_HEIGHT, ROUTE_20_WIDTH ; dimensions (y, x)
+ dw Route20_Blocks ; blocks
+ dw Route20_TextPointers ; texts
+ dw Route20_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_20, CINNABAR_ISLAND, 0, 0, CinnabarIsland_Blocks
+ EAST_MAP_CONNECTION ROUTE_20, ROUTE_19, -3, 15, Route19_Blocks
+ dw Route20_Object ; objects
diff --git a/data/mapHeaders/Route21.asm b/data/mapHeaders/Route21.asm
new file mode 100755
index 00000000..f37869dc
--- /dev/null
+++ b/data/mapHeaders/Route21.asm
@@ -0,0 +1,10 @@
+Route21_h:
+ db OVERWORLD ; tileset
+ db ROUTE_21_HEIGHT, ROUTE_21_WIDTH ; dimensions (y, x)
+ dw Route21_Blocks ; blocks
+ dw Route21_TextPointers ; texts
+ dw Route21_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_21, PALLET_TOWN, 0, 0, PalletTown_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_21, CINNABAR_ISLAND, 0, 0, CinnabarIsland_Blocks, 1
+ dw Route21_Object ; objects
diff --git a/data/mapHeaders/Route22.asm b/data/mapHeaders/Route22.asm
new file mode 100755
index 00000000..4d07475f
--- /dev/null
+++ b/data/mapHeaders/Route22.asm
@@ -0,0 +1,10 @@
+Route22_h:
+ db OVERWORLD ; tileset
+ db ROUTE_22_HEIGHT, ROUTE_22_WIDTH ; dimensions (y, x)
+ dw Route22_Blocks ; blocks
+ dw Route22_TextPointers ; texts
+ dw Route22_Script ; scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION ROUTE_22, ROUTE_23, 0, 0, Route23_Blocks
+ EAST_MAP_CONNECTION ROUTE_22, VIRIDIAN_CITY, -3, 1, ViridianCity_Blocks, 1
+ dw Route22_Object ; objects
diff --git a/data/mapHeaders/Route22Gate.asm b/data/mapHeaders/Route22Gate.asm
new file mode 100755
index 00000000..4d3ae0cc
--- /dev/null
+++ b/data/mapHeaders/Route22Gate.asm
@@ -0,0 +1,8 @@
+Route22Gate_h:
+ db GATE ; tileset
+ db ROUTE_22_GATE_HEIGHT, ROUTE_22_GATE_WIDTH ; dimensions (y, x)
+ dw Route22Gate_Blocks ; blocks
+ dw Route22Gate_TextPointers ; texts
+ dw Route22Gate_Script ; scripts
+ db 0 ; connections
+ dw Route22Gate_Object ; objects
diff --git a/data/mapHeaders/Route23.asm b/data/mapHeaders/Route23.asm
new file mode 100755
index 00000000..6b1fde97
--- /dev/null
+++ b/data/mapHeaders/Route23.asm
@@ -0,0 +1,10 @@
+Route23_h:
+ db PLATEAU ; tileset
+ db ROUTE_23_HEIGHT, ROUTE_23_WIDTH ; dimensions (y, x)
+ dw Route23_Blocks ; blocks
+ dw Route23_TextPointers ; texts
+ dw Route23_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_23, INDIGO_PLATEAU, 0, 0, IndigoPlateau_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_23, ROUTE_22, 0, 0, Route22_Blocks, 1
+ dw Route23_Object ; objects
diff --git a/data/mapHeaders/Route24.asm b/data/mapHeaders/Route24.asm
new file mode 100755
index 00000000..87776f60
--- /dev/null
+++ b/data/mapHeaders/Route24.asm
@@ -0,0 +1,10 @@
+Route24_h:
+ db OVERWORLD ; tileset
+ db ROUTE_24_HEIGHT, ROUTE_24_WIDTH ; dimensions (y, x)
+ dw Route24_Blocks ; blocks
+ dw Route24_TextPointers ; texts
+ dw Route24_Script ; scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_24, CERULEAN_CITY, -3, 2, CeruleanCity_Blocks, 1
+ EAST_MAP_CONNECTION ROUTE_24, ROUTE_25, 0, 0, Route25_Blocks
+ dw Route24_Object ; objects
diff --git a/data/mapHeaders/Route25.asm b/data/mapHeaders/Route25.asm
new file mode 100755
index 00000000..c300eeb3
--- /dev/null
+++ b/data/mapHeaders/Route25.asm
@@ -0,0 +1,9 @@
+Route25_h:
+ db OVERWORLD ; tileset
+ db ROUTE_25_HEIGHT, ROUTE_25_WIDTH ; dimensions (y, x)
+ dw Route25_Blocks ; blocks
+ dw Route25_TextPointers ; texts
+ dw Route25_Script ; scripts
+ db WEST ; connections
+ WEST_MAP_CONNECTION ROUTE_25, ROUTE_24, 0, 0, Route24_Blocks
+ dw Route25_Object ; objects
diff --git a/data/mapHeaders/Route2Gate.asm b/data/mapHeaders/Route2Gate.asm
new file mode 100755
index 00000000..9b284178
--- /dev/null
+++ b/data/mapHeaders/Route2Gate.asm
@@ -0,0 +1,8 @@
+Route2Gate_h:
+ db GATE ; tileset
+ db ROUTE_2_GATE_HEIGHT, ROUTE_2_GATE_WIDTH ; dimensions (y, x)
+ dw Route2Gate_Blocks ; blocks
+ dw Route2Gate_TextPointers ; texts
+ dw Route2Gate_Script ; scripts
+ db 0 ; connections
+ dw Route2Gate_Object ; objects
diff --git a/data/mapHeaders/Route2TradeHouse.asm b/data/mapHeaders/Route2TradeHouse.asm
new file mode 100755
index 00000000..33693943
--- /dev/null
+++ b/data/mapHeaders/Route2TradeHouse.asm
@@ -0,0 +1,8 @@
+Route2TradeHouse_h:
+ db HOUSE ; tileset
+ db ROUTE_2_TRADE_HOUSE_HEIGHT, ROUTE_2_TRADE_HOUSE_WIDTH ; dimensions (y, x)
+ dw Route2TradeHouse_Blocks ; blocks
+ dw Route2TradeHouse_TextPointers ; texts
+ dw Route2TradeHouse_Script ; scripts
+ db 0 ; connections
+ dw Route2TradeHouse_Object ; objects
diff --git a/data/mapHeaders/Route3.asm b/data/mapHeaders/Route3.asm
new file mode 100755
index 00000000..c611e4b8
--- /dev/null
+++ b/data/mapHeaders/Route3.asm
@@ -0,0 +1,10 @@
+Route3_h:
+ db OVERWORLD ; tileset
+ db ROUTE_3_HEIGHT, ROUTE_3_WIDTH ; dimensions (y, x)
+ dw Route3_Blocks ; blocks
+ dw Route3_TextPointers ; texts
+ dw Route3_Script ; scripts
+ db NORTH | WEST ; connections
+ NORTH_MAP_CONNECTION ROUTE_3, ROUTE_4, 25, 0, Route4_Blocks
+ WEST_MAP_CONNECTION ROUTE_3, PEWTER_CITY, -3, 1, PewterCity_Blocks
+ dw Route3_Object ; objects
diff --git a/data/mapHeaders/Route4.asm b/data/mapHeaders/Route4.asm
new file mode 100755
index 00000000..999a1207
--- /dev/null
+++ b/data/mapHeaders/Route4.asm
@@ -0,0 +1,10 @@
+Route4_h:
+ db OVERWORLD ; tileset
+ db ROUTE_4_HEIGHT, ROUTE_4_WIDTH ; dimensions (y, x)
+ dw Route4_Blocks ; blocks
+ dw Route4_TextPointers ; texts
+ dw Route4_Script ; scripts
+ db SOUTH | EAST ; connections
+ SOUTH_MAP_CONNECTION ROUTE_4, ROUTE_3, -3, 22, Route3_Blocks
+ EAST_MAP_CONNECTION ROUTE_4, CERULEAN_CITY, -3, 1, CeruleanCity_Blocks, 1
+ dw Route4_Object ; objects
diff --git a/data/mapHeaders/Route5.asm b/data/mapHeaders/Route5.asm
new file mode 100755
index 00000000..6480aebd
--- /dev/null
+++ b/data/mapHeaders/Route5.asm
@@ -0,0 +1,10 @@
+Route5_h:
+ db OVERWORLD ; tileset
+ db ROUTE_5_HEIGHT, ROUTE_5_WIDTH ; dimensions (y, x)
+ dw Route5_Blocks ; blocks
+ dw Route5_TextPointers ; texts
+ dw Route5_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_5, CERULEAN_CITY, -3, 2, CeruleanCity_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_5, SAFFRON_CITY, -3, 2, SaffronCity_Blocks, 1
+ dw Route5_Object ; objects
diff --git a/data/mapHeaders/Route5Gate.asm b/data/mapHeaders/Route5Gate.asm
new file mode 100755
index 00000000..bb418182
--- /dev/null
+++ b/data/mapHeaders/Route5Gate.asm
@@ -0,0 +1,8 @@
+Route5Gate_h:
+ db GATE ; tileset
+ db ROUTE_5_GATE_HEIGHT, ROUTE_5_GATE_WIDTH ; dimensions (y, x)
+ dw Route5Gate_Blocks ; blocks
+ dw Route5Gate_TextPointers ; texts
+ dw Route5Gate_Script ; scripts
+ db 0 ; connections
+ dw Route5Gate_Object ; objects
diff --git a/data/mapHeaders/Route6.asm b/data/mapHeaders/Route6.asm
new file mode 100755
index 00000000..9385ce5f
--- /dev/null
+++ b/data/mapHeaders/Route6.asm
@@ -0,0 +1,10 @@
+Route6_h:
+ db OVERWORLD ; tileset
+ db ROUTE_6_HEIGHT, ROUTE_6_WIDTH ; dimensions (y, x)
+ dw Route6_Blocks ; blocks
+ dw Route6_TextPointers ; texts
+ dw Route6_Script ; scripts
+ db NORTH | SOUTH ; connections
+ NORTH_MAP_CONNECTION ROUTE_6, SAFFRON_CITY, -3, 2, SaffronCity_Blocks
+ SOUTH_MAP_CONNECTION ROUTE_6, VERMILION_CITY, -3, 2, VermilionCity_Blocks, 1
+ dw Route6_Object ; objects
diff --git a/data/mapHeaders/Route6Gate.asm b/data/mapHeaders/Route6Gate.asm
new file mode 100755
index 00000000..282cc5b6
--- /dev/null
+++ b/data/mapHeaders/Route6Gate.asm
@@ -0,0 +1,8 @@
+Route6Gate_h:
+ db GATE ; tileset
+ db ROUTE_6_GATE_HEIGHT, ROUTE_6_GATE_WIDTH ; dimensions (y, x)
+ dw Route6Gate_Blocks ; blocks
+ dw Route6Gate_TextPointers ; texts
+ dw Route6Gate_Script ; scripts
+ db 0 ; connections
+ dw Route6Gate_Object ; objects
diff --git a/data/mapHeaders/Route7.asm b/data/mapHeaders/Route7.asm
new file mode 100755
index 00000000..9b34ea1f
--- /dev/null
+++ b/data/mapHeaders/Route7.asm
@@ -0,0 +1,10 @@
+Route7_h:
+ db OVERWORLD ; tileset
+ db ROUTE_7_HEIGHT, ROUTE_7_WIDTH ; dimensions (y, x)
+ dw Route7_Blocks ; blocks
+ dw Route7_TextPointers ; texts
+ dw Route7_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_7, CELADON_CITY, -3, 1, CeladonCity_Blocks
+ EAST_MAP_CONNECTION ROUTE_7, SAFFRON_CITY, -3, 1, SaffronCity_Blocks, 1
+ dw Route7_Object ; objects
diff --git a/data/mapHeaders/Route7Gate.asm b/data/mapHeaders/Route7Gate.asm
new file mode 100755
index 00000000..61771e42
--- /dev/null
+++ b/data/mapHeaders/Route7Gate.asm
@@ -0,0 +1,8 @@
+Route7Gate_h:
+ db GATE ; tileset
+ db ROUTE_7_GATE_HEIGHT, ROUTE_7_GATE_WIDTH ; dimensions (y, x)
+ dw Route7Gate_Blocks ; blocks
+ dw Route7Gate_TextPointers ; texts
+ dw Route7Gate_Script ; scripts
+ db 0 ; connections
+ dw Route7Gate_Object ; objects
diff --git a/data/mapHeaders/Route8.asm b/data/mapHeaders/Route8.asm
new file mode 100755
index 00000000..bd2ee71e
--- /dev/null
+++ b/data/mapHeaders/Route8.asm
@@ -0,0 +1,10 @@
+Route8_h:
+ db OVERWORLD ; tileset
+ db ROUTE_8_HEIGHT, ROUTE_8_WIDTH ; dimensions (y, x)
+ dw Route8_Blocks ; blocks
+ dw Route8_TextPointers ; texts
+ dw Route8_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_8, SAFFRON_CITY, -3, 1, SaffronCity_Blocks
+ EAST_MAP_CONNECTION ROUTE_8, LAVENDER_TOWN, 0, 0, LavenderTown_Blocks
+ dw Route8_Object ; objects
diff --git a/data/mapHeaders/Route8Gate.asm b/data/mapHeaders/Route8Gate.asm
new file mode 100755
index 00000000..dd14a237
--- /dev/null
+++ b/data/mapHeaders/Route8Gate.asm
@@ -0,0 +1,8 @@
+Route8Gate_h:
+ db GATE ; tileset
+ db ROUTE_8_GATE_HEIGHT, ROUTE_8_GATE_WIDTH ; dimensions (y, x)
+ dw Route8Gate_Blocks ; blocks
+ dw Route8Gate_TextPointers ; texts
+ dw Route8Gate_Script ; scripts
+ db 0 ; connections
+ dw Route8Gate_Object ; objects
diff --git a/data/mapHeaders/Route9.asm b/data/mapHeaders/Route9.asm
new file mode 100755
index 00000000..3dec3b0a
--- /dev/null
+++ b/data/mapHeaders/Route9.asm
@@ -0,0 +1,10 @@
+Route9_h:
+ db OVERWORLD ; tileset
+ db ROUTE_9_HEIGHT, ROUTE_9_WIDTH ; dimensions (y, x)
+ dw Route9_Blocks ; blocks
+ dw Route9_TextPointers ; texts
+ dw Route9_Script ; scripts
+ db WEST | EAST ; connections
+ WEST_MAP_CONNECTION ROUTE_9, CERULEAN_CITY, -3, 1, CeruleanCity_Blocks
+ EAST_MAP_CONNECTION ROUTE_9, ROUTE_10, 0, 0, Route10_Blocks, 1
+ dw Route9_Object ; objects
diff --git a/data/mapHeaders/SSAnne1F.asm b/data/mapHeaders/SSAnne1F.asm
new file mode 100755
index 00000000..a69423d6
--- /dev/null
+++ b/data/mapHeaders/SSAnne1F.asm
@@ -0,0 +1,8 @@
+SSAnne1F_h:
+ db SHIP ; tileset
+ db SS_ANNE_1F_HEIGHT, SS_ANNE_1F_WIDTH ; dimensions (y, x)
+ dw SSAnne1F_Blocks ; blocks
+ dw SSAnne1F_TextPointers ; texts
+ dw SSAnne1F_Script ; scripts
+ db 0 ; connections
+ dw SSAnne1F_Object ; objects
diff --git a/data/mapHeaders/SSAnne1FRooms.asm b/data/mapHeaders/SSAnne1FRooms.asm
new file mode 100755
index 00000000..1f8af23d
--- /dev/null
+++ b/data/mapHeaders/SSAnne1FRooms.asm
@@ -0,0 +1,8 @@
+SSAnne1FRooms_h:
+ db SHIP ; tileset
+ db SS_ANNE_1F_ROOMS_HEIGHT, SS_ANNE_1F_ROOMS_WIDTH ; dimensions (y, x)
+ dw SSAnne1FRooms_Blocks ; blocks
+ dw SSAnne1FRooms_TextPointers ; texts
+ dw SSAnne1FRooms_Script ; scripts
+ db 0 ; connections
+ dw SSAnne1FRooms_Object ; objects
diff --git a/data/mapHeaders/SSAnne2F.asm b/data/mapHeaders/SSAnne2F.asm
new file mode 100755
index 00000000..d42d16f4
--- /dev/null
+++ b/data/mapHeaders/SSAnne2F.asm
@@ -0,0 +1,8 @@
+SSAnne2F_h:
+ db SHIP ; tileset
+ db SS_ANNE_2F_HEIGHT, SS_ANNE_2F_WIDTH ; dimensions (y, x)
+ dw SSAnne2F_Blocks ; blocks
+ dw SSAnne2F_TextPointers ; texts
+ dw SSAnne2F_Script ; scripts
+ db 0 ; connections
+ dw SSAnne2F_Object ; objects
diff --git a/data/mapHeaders/SSAnne2FRooms.asm b/data/mapHeaders/SSAnne2FRooms.asm
new file mode 100755
index 00000000..f22de0fa
--- /dev/null
+++ b/data/mapHeaders/SSAnne2FRooms.asm
@@ -0,0 +1,8 @@
+SSAnne2FRooms_h:
+ db SHIP ; tileset
+ db SS_ANNE_2F_ROOMS_HEIGHT, SS_ANNE_2F_ROOMS_WIDTH ; dimensions (y, x)
+ dw SSAnne2FRooms_Blocks ; blocks
+ dw SSAnne2FRooms_TextPointers ; texts
+ dw SSAnne2FRooms_Script ; scripts
+ db 0 ; connections
+ dw SSAnne2FRooms_Object ; objects
diff --git a/data/mapHeaders/SSAnne3F.asm b/data/mapHeaders/SSAnne3F.asm
new file mode 100755
index 00000000..1c5dafea
--- /dev/null
+++ b/data/mapHeaders/SSAnne3F.asm
@@ -0,0 +1,8 @@
+SSAnne3F_h:
+ db SHIP ; tileset
+ db SS_ANNE_3F_HEIGHT, SS_ANNE_3F_WIDTH ; dimensions (y, x)
+ dw SSAnne3F_Blocks ; blocks
+ dw SSAnne3F_TextPointers ; texts
+ dw SSAnne3F_Script ; scripts
+ db 0 ; connections
+ dw SSAnne3F_Object ; objects
diff --git a/data/mapHeaders/SSAnneB1F.asm b/data/mapHeaders/SSAnneB1F.asm
new file mode 100755
index 00000000..a3ca6dfa
--- /dev/null
+++ b/data/mapHeaders/SSAnneB1F.asm
@@ -0,0 +1,8 @@
+SSAnneB1F_h:
+ db SHIP ; tileset
+ db SS_ANNE_B1F_HEIGHT, SS_ANNE_B1F_WIDTH ; dimensions (y, x)
+ dw SSAnneB1F_Blocks ; blocks
+ dw SSAnneB1F_TextPointers ; texts
+ dw SSAnneB1F_Script ; scripts
+ db 0 ; connections
+ dw SSAnneB1F_Object ; objects
diff --git a/data/mapHeaders/SSAnneB1FRooms.asm b/data/mapHeaders/SSAnneB1FRooms.asm
new file mode 100755
index 00000000..f08e343b
--- /dev/null
+++ b/data/mapHeaders/SSAnneB1FRooms.asm
@@ -0,0 +1,8 @@
+SSAnneB1FRooms_h:
+ db SHIP ; tileset
+ db SS_ANNE_B1F_ROOMS_HEIGHT, SS_ANNE_B1F_ROOMS_WIDTH ; dimensions (y, x)
+ dw SSAnneB1FRooms_Blocks ; blocks
+ dw SSAnneB1FRooms_TextPointers ; texts
+ dw SSAnneB1FRooms_Script ; scripts
+ db 0 ; connections
+ dw SSAnneB1FRooms_Object ; objects
diff --git a/data/mapHeaders/SSAnneBow.asm b/data/mapHeaders/SSAnneBow.asm
new file mode 100755
index 00000000..baa71147
--- /dev/null
+++ b/data/mapHeaders/SSAnneBow.asm
@@ -0,0 +1,8 @@
+SSAnneBow_h:
+ db SHIP ; tileset
+ db SS_ANNE_BOW_HEIGHT, SS_ANNE_BOW_WIDTH ; dimensions (y, x)
+ dw SSAnneBow_Blocks ; blocks
+ dw SSAnneBow_TextPointers ; texts
+ dw SSAnneBow_Script ; scripts
+ db 0 ; connections
+ dw SSAnneBow_Object ; objects
diff --git a/data/mapHeaders/SSAnneCaptainsRoom.asm b/data/mapHeaders/SSAnneCaptainsRoom.asm
new file mode 100755
index 00000000..433f060a
--- /dev/null
+++ b/data/mapHeaders/SSAnneCaptainsRoom.asm
@@ -0,0 +1,8 @@
+SSAnneCaptainsRoom_h:
+ db SHIP ; tileset
+ db SS_ANNE_CAPTAINS_ROOM_HEIGHT, SS_ANNE_CAPTAINS_ROOM_WIDTH ; dimensions (y, x)
+ dw SSAnneCaptainsRoom_Blocks ; blocks
+ dw SSAnneCaptainsRoom_TextPointers ; texts
+ dw SSAnneCaptainsRoom_Script ; scripts
+ db 0 ; connections
+ dw SSAnneCaptainsRoom_Object ; objects
diff --git a/data/mapHeaders/SSAnneKitchen.asm b/data/mapHeaders/SSAnneKitchen.asm
new file mode 100755
index 00000000..eacbbfb8
--- /dev/null
+++ b/data/mapHeaders/SSAnneKitchen.asm
@@ -0,0 +1,8 @@
+SSAnneKitchen_h:
+ db SHIP ; tileset
+ db SS_ANNE_KITCHEN_HEIGHT, SS_ANNE_KITCHEN_WIDTH ; dimensions (y, x)
+ dw SSAnneKitchen_Blocks ; blocks
+ dw SSAnneKitchen_TextPointers ; texts
+ dw SSAnneKitchen_Script ; scripts
+ db 0 ; connections
+ dw SSAnneKitchen_Object ; objects
diff --git a/data/mapHeaders/SafariZoneCenter.asm b/data/mapHeaders/SafariZoneCenter.asm
new file mode 100755
index 00000000..8ec6c890
--- /dev/null
+++ b/data/mapHeaders/SafariZoneCenter.asm
@@ -0,0 +1,8 @@
+SafariZoneCenter_h:
+ db FOREST ; tileset
+ db SAFARI_ZONE_CENTER_HEIGHT, SAFARI_ZONE_CENTER_WIDTH ; dimensions (y, x)
+ dw SafariZoneCenter_Blocks ; blocks
+ dw SafariZoneCenter_TextPointers ; texts
+ dw SafariZoneCenter_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneCenter_Object ; objects
diff --git a/data/mapHeaders/SafariZoneCenterRestHouse.asm b/data/mapHeaders/SafariZoneCenterRestHouse.asm
new file mode 100755
index 00000000..9b1064f2
--- /dev/null
+++ b/data/mapHeaders/SafariZoneCenterRestHouse.asm
@@ -0,0 +1,8 @@
+SafariZoneCenterRestHouse_h:
+ db GATE ; tileset
+ db SAFARI_ZONE_CENTER_REST_HOUSE_HEIGHT, SAFARI_ZONE_CENTER_REST_HOUSE_WIDTH ; dimensions (y, x)
+ dw SafariZoneCenterRestHouse_Blocks ; blocks
+ dw SafariZoneCenterRestHouse_TextPointers ; texts
+ dw SafariZoneCenterRestHouse_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneCenterRestHouse_Object ; objects
diff --git a/data/mapHeaders/SafariZoneEast.asm b/data/mapHeaders/SafariZoneEast.asm
new file mode 100755
index 00000000..99556473
--- /dev/null
+++ b/data/mapHeaders/SafariZoneEast.asm
@@ -0,0 +1,8 @@
+SafariZoneEast_h:
+ db FOREST ; tileset
+ db SAFARI_ZONE_EAST_HEIGHT, SAFARI_ZONE_EAST_WIDTH ; dimensions (y, x)
+ dw SafariZoneEast_Blocks ; blocks
+ dw SafariZoneEast_TextPointers ; texts
+ dw SafariZoneEast_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneEast_Object ; objects
diff --git a/data/mapHeaders/SafariZoneEastRestHouse.asm b/data/mapHeaders/SafariZoneEastRestHouse.asm
new file mode 100755
index 00000000..b9f219c5
--- /dev/null
+++ b/data/mapHeaders/SafariZoneEastRestHouse.asm
@@ -0,0 +1,8 @@
+SafariZoneEastRestHouse_h:
+ db GATE ; tileset
+ db SAFARI_ZONE_EAST_REST_HOUSE_HEIGHT, SAFARI_ZONE_EAST_REST_HOUSE_WIDTH ; dimensions (y, x)
+ dw SafariZoneEastRestHouse_Blocks ; blocks
+ dw SafariZoneEastRestHouse_TextPointers ; texts
+ dw SafariZoneEastRestHouse_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneEastRestHouse_Object ; objects
diff --git a/data/mapHeaders/SafariZoneGate.asm b/data/mapHeaders/SafariZoneGate.asm
new file mode 100755
index 00000000..ed306ad0
--- /dev/null
+++ b/data/mapHeaders/SafariZoneGate.asm
@@ -0,0 +1,8 @@
+SafariZoneGate_h:
+ db GATE ; tileset
+ db SAFARI_ZONE_GATE_HEIGHT, SAFARI_ZONE_GATE_WIDTH ; dimensions (y, x)
+ dw SafariZoneGate_Blocks ; blocks
+ dw SafariZoneGate_TextPointers ; texts
+ dw SafariZoneGate_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneGate_Object ; objects
diff --git a/data/mapHeaders/SafariZoneNorth.asm b/data/mapHeaders/SafariZoneNorth.asm
new file mode 100755
index 00000000..3d1a2f51
--- /dev/null
+++ b/data/mapHeaders/SafariZoneNorth.asm
@@ -0,0 +1,8 @@
+SafariZoneNorth_h:
+ db FOREST ; tileset
+ db SAFARI_ZONE_NORTH_HEIGHT, SAFARI_ZONE_NORTH_WIDTH ; dimensions (y, x)
+ dw SafariZoneNorth_Blocks ; blocks
+ dw SafariZoneNorth_TextPointers ; texts
+ dw SafariZoneNorth_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneNorth_Object ; objects
diff --git a/data/mapHeaders/SafariZoneNorthRestHouse.asm b/data/mapHeaders/SafariZoneNorthRestHouse.asm
new file mode 100755
index 00000000..938c15cf
--- /dev/null
+++ b/data/mapHeaders/SafariZoneNorthRestHouse.asm
@@ -0,0 +1,8 @@
+SafariZoneNorthRestHouse_h:
+ db GATE ; tileset
+ db SAFARI_ZONE_NORTH_REST_HOUSE_HEIGHT, SAFARI_ZONE_NORTH_REST_HOUSE_WIDTH ; dimensions (y, x)
+ dw SafariZoneNorthRestHouse_Blocks ; blocks
+ dw SafariZoneNorthRestHouse_TextPointers ; texts
+ dw SafariZoneNorthRestHouse_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneNorthRestHouse_Object ; objects
diff --git a/data/mapHeaders/SafariZoneSecretHouse.asm b/data/mapHeaders/SafariZoneSecretHouse.asm
new file mode 100755
index 00000000..91068691
--- /dev/null
+++ b/data/mapHeaders/SafariZoneSecretHouse.asm
@@ -0,0 +1,8 @@
+SafariZoneSecretHouse_h:
+ db LAB ; tileset
+ db SAFARI_ZONE_SECRET_HOUSE_HEIGHT, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; dimensions (y, x)
+ dw SafariZoneSecretHouse_Blocks ; blocks
+ dw SafariZoneSecretHouse_TextPointers ; texts
+ dw SafariZoneSecretHouse_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneSecretHouse_Object ; objects
diff --git a/data/mapHeaders/SafariZoneWest.asm b/data/mapHeaders/SafariZoneWest.asm
new file mode 100755
index 00000000..876169d1
--- /dev/null
+++ b/data/mapHeaders/SafariZoneWest.asm
@@ -0,0 +1,8 @@
+SafariZoneWest_h:
+ db FOREST ; tileset
+ db SAFARI_ZONE_WEST_HEIGHT, SAFARI_ZONE_WEST_WIDTH ; dimensions (y, x)
+ dw SafariZoneWest_Blocks ; blocks
+ dw SafariZoneWest_TextPointers ; texts
+ dw SafariZoneWest_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneWest_Object ; objects
diff --git a/data/mapHeaders/SafariZoneWestRestHouse.asm b/data/mapHeaders/SafariZoneWestRestHouse.asm
new file mode 100755
index 00000000..886382ec
--- /dev/null
+++ b/data/mapHeaders/SafariZoneWestRestHouse.asm
@@ -0,0 +1,8 @@
+SafariZoneWestRestHouse_h:
+ db GATE ; tileset
+ db SAFARI_ZONE_WEST_REST_HOUSE_HEIGHT, SAFARI_ZONE_WEST_REST_HOUSE_WIDTH ; dimensions (y, x)
+ dw SafariZoneWestRestHouse_Blocks ; blocks
+ dw SafariZoneWestRestHouse_TextPointers ; texts
+ dw SafariZoneWestRestHouse_Script ; scripts
+ db 0 ; connections
+ dw SafariZoneWestRestHouse_Object ; objects
diff --git a/data/mapHeaders/SaffronCity.asm b/data/mapHeaders/SaffronCity.asm
new file mode 100755
index 00000000..13239891
--- /dev/null
+++ b/data/mapHeaders/SaffronCity.asm
@@ -0,0 +1,12 @@
+SaffronCity_h:
+ db OVERWORLD ; tileset
+ db SAFFRON_CITY_HEIGHT, SAFFRON_CITY_WIDTH ; dimensions (y, x)
+ dw SaffronCity_Blocks ; blocks
+ dw SaffronCity_TextPointers ; texts
+ dw SaffronCity_Script ; scripts
+ db NORTH | SOUTH | WEST | EAST ; connections
+ NORTH_MAP_CONNECTION SAFFRON_CITY, ROUTE_5, 5, 0, Route5_Blocks
+ SOUTH_MAP_CONNECTION SAFFRON_CITY, ROUTE_6, 5, 0, Route6_Blocks, 1
+ WEST_MAP_CONNECTION SAFFRON_CITY, ROUTE_7, 4, 0, Route7_Blocks
+ EAST_MAP_CONNECTION SAFFRON_CITY, ROUTE_8, 4, 0, Route8_Blocks
+ dw SaffronCity_Object ; objects
diff --git a/data/mapHeaders/SaffronGym.asm b/data/mapHeaders/SaffronGym.asm
new file mode 100755
index 00000000..6cbadb2c
--- /dev/null
+++ b/data/mapHeaders/SaffronGym.asm
@@ -0,0 +1,8 @@
+SaffronGym_h:
+ db FACILITY ; tileset
+ db SAFFRON_GYM_HEIGHT, SAFFRON_GYM_WIDTH ; dimensions (y, x)
+ dw SaffronGym_Blocks ; blocks
+ dw SaffronGym_TextPointers ; texts
+ dw SaffronGym_Script ; scripts
+ db 0 ; connections
+ dw SaffronGym_Object ; objects
diff --git a/data/mapHeaders/SaffronMart.asm b/data/mapHeaders/SaffronMart.asm
new file mode 100755
index 00000000..abd537b6
--- /dev/null
+++ b/data/mapHeaders/SaffronMart.asm
@@ -0,0 +1,8 @@
+SaffronMart_h:
+ db MART ; tileset
+ db SAFFRON_MART_HEIGHT, SAFFRON_MART_WIDTH ; dimensions (y, x)
+ dw SaffronMart_Blocks ; blocks
+ dw SaffronMart_TextPointers ; texts
+ dw SaffronMart_Script ; scripts
+ db 0 ; connections
+ dw SaffronMart_Object ; objects
diff --git a/data/mapHeaders/SaffronPidgeyHouse.asm b/data/mapHeaders/SaffronPidgeyHouse.asm
new file mode 100755
index 00000000..5d6e21ae
--- /dev/null
+++ b/data/mapHeaders/SaffronPidgeyHouse.asm
@@ -0,0 +1,8 @@
+SaffronPidgeyHouse_h:
+ db HOUSE ; tileset
+ db SAFFRON_PIDGEY_HOUSE_HEIGHT, SAFFRON_PIDGEY_HOUSE_WIDTH ; dimensions (y, x)
+ dw SaffronPidgeyHouse_Blocks ; blocks
+ dw SaffronPidgeyHouse_TextPointers ; texts
+ dw SaffronPidgeyHouse_Script ; scripts
+ db 0 ; connections
+ dw SaffronPidgeyHouse_Object ; objects
diff --git a/data/mapHeaders/SaffronPokecenter.asm b/data/mapHeaders/SaffronPokecenter.asm
new file mode 100755
index 00000000..32f1ec71
--- /dev/null
+++ b/data/mapHeaders/SaffronPokecenter.asm
@@ -0,0 +1,8 @@
+SaffronPokecenter_h:
+ db POKECENTER ; tileset
+ db SAFFRON_POKECENTER_HEIGHT, SAFFRON_POKECENTER_WIDTH ; dimensions (y, x)
+ dw SaffronPokecenter_Blocks ; blocks
+ dw SaffronPokecenter_TextPointers ; texts
+ dw SaffronPokecenter_Script ; scripts
+ db 0 ; connections
+ dw SaffronPokecenter_Object ; objects
diff --git a/data/mapHeaders/SeafoamIslands1F.asm b/data/mapHeaders/SeafoamIslands1F.asm
new file mode 100755
index 00000000..f5260cda
--- /dev/null
+++ b/data/mapHeaders/SeafoamIslands1F.asm
@@ -0,0 +1,8 @@
+SeafoamIslands1F_h:
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_1F_HEIGHT, SEAFOAM_ISLANDS_1F_WIDTH ; dimensions (y, x)
+ dw SeafoamIslands1F_Blocks ; blocks
+ dw SeafoamIslands1F_TextPointers ; texts
+ dw SeafoamIslands1F_Script ; scripts
+ db 0 ; connections
+ dw SeafoamIslands1F_Object ; objects
diff --git a/data/mapHeaders/SeafoamIslandsB1F.asm b/data/mapHeaders/SeafoamIslandsB1F.asm
new file mode 100755
index 00000000..23116f74
--- /dev/null
+++ b/data/mapHeaders/SeafoamIslandsB1F.asm
@@ -0,0 +1,8 @@
+SeafoamIslandsB1F_h:
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_B1F_HEIGHT, SEAFOAM_ISLANDS_B1F_WIDTH ; dimensions (y, x)
+ dw SeafoamIslandsB1F_Blocks ; blocks
+ dw SeafoamIslandsB1F_TextPointers ; texts
+ dw SeafoamIslandsB1F_Script ; scripts
+ db 0 ; connections
+ dw SeafoamIslandsB1F_Object ; objects
diff --git a/data/mapHeaders/SeafoamIslandsB2F.asm b/data/mapHeaders/SeafoamIslandsB2F.asm
new file mode 100755
index 00000000..10d45dad
--- /dev/null
+++ b/data/mapHeaders/SeafoamIslandsB2F.asm
@@ -0,0 +1,8 @@
+SeafoamIslandsB2F_h:
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_B2F_HEIGHT, SEAFOAM_ISLANDS_B2F_WIDTH ; dimensions (y, x)
+ dw SeafoamIslandsB2F_Blocks ; blocks
+ dw SeafoamIslandsB2F_TextPointers ; texts
+ dw SeafoamIslandsB2F_Script ; scripts
+ db 0 ; connections
+ dw SeafoamIslandsB2F_Object ; objects
diff --git a/data/mapHeaders/SeafoamIslandsB3F.asm b/data/mapHeaders/SeafoamIslandsB3F.asm
new file mode 100755
index 00000000..812d1121
--- /dev/null
+++ b/data/mapHeaders/SeafoamIslandsB3F.asm
@@ -0,0 +1,8 @@
+SeafoamIslandsB3F_h:
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_B3F_HEIGHT, SEAFOAM_ISLANDS_B3F_WIDTH ; dimensions (y, x)
+ dw SeafoamIslandsB3F_Blocks ; blocks
+ dw SeafoamIslandsB3F_TextPointers ; texts
+ dw SeafoamIslandsB3F_Script ; scripts
+ db 0 ; connections
+ dw SeafoamIslandsB3F_Object ; objects
diff --git a/data/mapHeaders/SeafoamIslandsB4F.asm b/data/mapHeaders/SeafoamIslandsB4F.asm
new file mode 100755
index 00000000..96c25e06
--- /dev/null
+++ b/data/mapHeaders/SeafoamIslandsB4F.asm
@@ -0,0 +1,8 @@
+SeafoamIslandsB4F_h:
+ db CAVERN ; tileset
+ db SEAFOAM_ISLANDS_B4F_HEIGHT, SEAFOAM_ISLANDS_B4F_WIDTH ; dimensions (y, x)
+ dw SeafoamIslandsB4F_Blocks ; blocks
+ dw SeafoamIslandsB4F_TextPointers ; texts
+ dw SeafoamIslandsB4F_Script ; scripts
+ db 0 ; connections
+ dw SeafoamIslandsB4F_Object ; objects
diff --git a/data/mapHeaders/SilphCo10F.asm b/data/mapHeaders/SilphCo10F.asm
new file mode 100755
index 00000000..ad040479
--- /dev/null
+++ b/data/mapHeaders/SilphCo10F.asm
@@ -0,0 +1,8 @@
+SilphCo10F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_10F_HEIGHT, SILPH_CO_10F_WIDTH ; dimensions (y, x)
+ dw SilphCo10F_Blocks ; blocks
+ dw SilphCo10F_TextPointers ; texts
+ dw SilphCo10F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo10F_Object ; objects
diff --git a/data/mapHeaders/SilphCo11F.asm b/data/mapHeaders/SilphCo11F.asm
new file mode 100755
index 00000000..08d6d650
--- /dev/null
+++ b/data/mapHeaders/SilphCo11F.asm
@@ -0,0 +1,8 @@
+SilphCo11F_h:
+ db INTERIOR ; tileset
+ db SILPH_CO_11F_HEIGHT, SILPH_CO_11F_WIDTH ; dimensions (y, x)
+ dw SilphCo11F_Blocks ; blocks
+ dw SilphCo11F_TextPointers ; texts
+ dw SilphCo11F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo11F_Object ; objects
diff --git a/data/mapHeaders/SilphCo1F.asm b/data/mapHeaders/SilphCo1F.asm
new file mode 100755
index 00000000..45e6c5bf
--- /dev/null
+++ b/data/mapHeaders/SilphCo1F.asm
@@ -0,0 +1,8 @@
+SilphCo1F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_1F_HEIGHT, SILPH_CO_1F_WIDTH ; dimensions (y, x)
+ dw SilphCo1F_Blocks ; blocks
+ dw SilphCo1F_TextPointers ; texts
+ dw SilphCo1F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo1F_Object ; objects
diff --git a/data/mapHeaders/SilphCo2F.asm b/data/mapHeaders/SilphCo2F.asm
new file mode 100755
index 00000000..69c2fb51
--- /dev/null
+++ b/data/mapHeaders/SilphCo2F.asm
@@ -0,0 +1,8 @@
+SilphCo2F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_2F_HEIGHT, SILPH_CO_2F_WIDTH ; dimensions (y, x)
+ dw SilphCo2F_Blocks ; blocks
+ dw SilphCo2F_TextPointers ; texts
+ dw SilphCo2F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo2F_Object ; objects
diff --git a/data/mapHeaders/SilphCo3F.asm b/data/mapHeaders/SilphCo3F.asm
new file mode 100755
index 00000000..6911a604
--- /dev/null
+++ b/data/mapHeaders/SilphCo3F.asm
@@ -0,0 +1,8 @@
+SilphCo3F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_3F_HEIGHT, SILPH_CO_3F_WIDTH ; dimensions (y, x)
+ dw SilphCo3F_Blocks ; blocks
+ dw SilphCo3F_TextPointers ; texts
+ dw SilphCo3F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo3F_Object ; objects
diff --git a/data/mapHeaders/SilphCo4F.asm b/data/mapHeaders/SilphCo4F.asm
new file mode 100755
index 00000000..591ddc07
--- /dev/null
+++ b/data/mapHeaders/SilphCo4F.asm
@@ -0,0 +1,8 @@
+SilphCo4F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_4F_HEIGHT, SILPH_CO_4F_WIDTH ; dimensions (y, x)
+ dw SilphCo4F_Blocks ; blocks
+ dw SilphCo4F_TextPointers ; texts
+ dw SilphCo4F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo4F_Object ; objects
diff --git a/data/mapHeaders/SilphCo5F.asm b/data/mapHeaders/SilphCo5F.asm
new file mode 100755
index 00000000..0303ceba
--- /dev/null
+++ b/data/mapHeaders/SilphCo5F.asm
@@ -0,0 +1,8 @@
+SilphCo5F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_5F_HEIGHT, SILPH_CO_5F_WIDTH ; dimensions (y, x)
+ dw SilphCo5F_Blocks ; blocks
+ dw SilphCo5F_TextPointers ; texts
+ dw SilphCo5F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo5F_Object ; objects
diff --git a/data/mapHeaders/SilphCo6F.asm b/data/mapHeaders/SilphCo6F.asm
new file mode 100755
index 00000000..b26a7587
--- /dev/null
+++ b/data/mapHeaders/SilphCo6F.asm
@@ -0,0 +1,8 @@
+SilphCo6F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_6F_HEIGHT, SILPH_CO_6F_WIDTH ; dimensions (y, x)
+ dw SilphCo6F_Blocks ; blocks
+ dw SilphCo6F_TextPointers ; texts
+ dw SilphCo6F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo6F_Object ; objects
diff --git a/data/mapHeaders/SilphCo7F.asm b/data/mapHeaders/SilphCo7F.asm
new file mode 100755
index 00000000..5c6ea959
--- /dev/null
+++ b/data/mapHeaders/SilphCo7F.asm
@@ -0,0 +1,8 @@
+SilphCo7F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_7F_HEIGHT, SILPH_CO_7F_WIDTH ; dimensions (y, x)
+ dw SilphCo7F_Blocks ; blocks
+ dw SilphCo7F_TextPointers ; texts
+ dw SilphCo7F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo7F_Object ; objects
diff --git a/data/mapHeaders/SilphCo8F.asm b/data/mapHeaders/SilphCo8F.asm
new file mode 100755
index 00000000..e467298e
--- /dev/null
+++ b/data/mapHeaders/SilphCo8F.asm
@@ -0,0 +1,8 @@
+SilphCo8F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_8F_HEIGHT, SILPH_CO_8F_WIDTH ; dimensions (y, x)
+ dw SilphCo8F_Blocks ; blocks
+ dw SilphCo8F_TextPointers ; texts
+ dw SilphCo8F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo8F_Object ; objects
diff --git a/data/mapHeaders/SilphCo9F.asm b/data/mapHeaders/SilphCo9F.asm
new file mode 100755
index 00000000..ec591e51
--- /dev/null
+++ b/data/mapHeaders/SilphCo9F.asm
@@ -0,0 +1,8 @@
+SilphCo9F_h:
+ db FACILITY ; tileset
+ db SILPH_CO_9F_HEIGHT, SILPH_CO_9F_WIDTH ; dimensions (y, x)
+ dw SilphCo9F_Blocks ; blocks
+ dw SilphCo9F_TextPointers ; texts
+ dw SilphCo9F_Script ; scripts
+ db 0 ; connections
+ dw SilphCo9F_Object ; objects
diff --git a/data/mapHeaders/SilphCoElevator.asm b/data/mapHeaders/SilphCoElevator.asm
new file mode 100755
index 00000000..0abe2810
--- /dev/null
+++ b/data/mapHeaders/SilphCoElevator.asm
@@ -0,0 +1,8 @@
+SilphCoElevator_h:
+ db LOBBY ; tileset
+ db SILPH_CO_ELEVATOR_HEIGHT, SILPH_CO_ELEVATOR_WIDTH ; dimensions (y, x)
+ dw SilphCoElevator_Blocks ; blocks
+ dw SilphCoElevator_TextPointers ; texts
+ dw SilphCoElevator_Script ; scripts
+ db 0 ; connections
+ dw SilphCoElevator_Object ; objects
diff --git a/data/mapHeaders/TradeCenter.asm b/data/mapHeaders/TradeCenter.asm
new file mode 100755
index 00000000..39981c35
--- /dev/null
+++ b/data/mapHeaders/TradeCenter.asm
@@ -0,0 +1,8 @@
+TradeCenter_h:
+ db CLUB ; tileset
+ db TRADE_CENTER_HEIGHT, TRADE_CENTER_WIDTH ; dimensions (y, x)
+ dw TradeCenter_Blocks ; blocks
+ dw TradeCenter_TextPointers ; texts
+ dw TradeCenter_Script ; scripts
+ db 0 ; connections
+ dw TradeCenter_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathNorthSouth.asm b/data/mapHeaders/UndergroundPathNorthSouth.asm
new file mode 100755
index 00000000..5dd8cdf8
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathNorthSouth.asm
@@ -0,0 +1,8 @@
+UndergroundPathNorthSouth_h:
+ db UNDERGROUND ; tileset
+ db UNDERGROUND_PATH_NORTH_SOUTH_HEIGHT, UNDERGROUND_PATH_NORTH_SOUTH_WIDTH ; dimensions (y, x)
+ dw UndergroundPathNorthSouth_Blocks ; blocks
+ dw UndergroundPathNorthSouth_TextPointers ; texts
+ dw UndergroundPathNorthSouth_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathNorthSouth_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathRoute5.asm b/data/mapHeaders/UndergroundPathRoute5.asm
new file mode 100755
index 00000000..14c6aa4d
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathRoute5.asm
@@ -0,0 +1,8 @@
+UndergroundPathRoute5_h:
+ db GATE ; tileset
+ db UNDERGROUND_PATH_ROUTE_5_HEIGHT, UNDERGROUND_PATH_ROUTE_5_WIDTH ; dimensions (y, x)
+ dw UndergroundPathRoute5_Blocks ; blocks
+ dw UndergroundPathRoute5_TextPointers ; texts
+ dw UndergroundPathRoute5_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathRoute5_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathRoute6.asm b/data/mapHeaders/UndergroundPathRoute6.asm
new file mode 100755
index 00000000..6aea459c
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathRoute6.asm
@@ -0,0 +1,8 @@
+UndergroundPathRoute6_h:
+ db GATE ; tileset
+ db UNDERGROUND_PATH_ROUTE_6_HEIGHT, UNDERGROUND_PATH_ROUTE_6_WIDTH ; dimensions (y, x)
+ dw UndergroundPathRoute6_Blocks ; blocks
+ dw UndergroundPathRoute6_TextPointers ; texts
+ dw UndergroundPathRoute6_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathRoute6_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathRoute7.asm b/data/mapHeaders/UndergroundPathRoute7.asm
new file mode 100755
index 00000000..91495ea3
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathRoute7.asm
@@ -0,0 +1,8 @@
+UndergroundPathRoute7_h:
+ db GATE ; tileset
+ db UNDERGROUND_PATH_ROUTE_7_HEIGHT, UNDERGROUND_PATH_ROUTE_7_WIDTH ; dimensions (y, x)
+ dw UndergroundPathRoute7_Blocks ; blocks
+ dw UndergroundPathRoute7_TextPointers ; texts
+ dw UndergroundPathRoute7_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathRoute7_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathRoute7Copy.asm b/data/mapHeaders/UndergroundPathRoute7Copy.asm
new file mode 100755
index 00000000..9d3f4c62
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathRoute7Copy.asm
@@ -0,0 +1,8 @@
+UndergroundPathRoute7Copy_h:
+ db GATE ; tileset
+ db UNDERGROUND_PATH_ROUTE_7_HEIGHT, UNDERGROUND_PATH_ROUTE_7_WIDTH ; dimensions (y, x)
+ dw UndergroundPathRoute7Copy_Blocks ; blocks
+ dw UndergroundPathRoute7Copy_TextPointers ; texts
+ dw UndergroundPathRoute7Copy_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathRoute7Copy_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathRoute8.asm b/data/mapHeaders/UndergroundPathRoute8.asm
new file mode 100755
index 00000000..f34265b8
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathRoute8.asm
@@ -0,0 +1,8 @@
+UndergroundPathRoute8_h:
+ db GATE ; tileset
+ db UNDERGROUND_PATH_ROUTE_8_HEIGHT, UNDERGROUND_PATH_ROUTE_8_WIDTH ; dimensions (y, x)
+ dw UndergroundPathRoute8_Blocks ; blocks
+ dw UndergroundPathRoute8_TextPointers ; texts
+ dw UndergroundPathRoute8_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathRoute8_Object ; objects
diff --git a/data/mapHeaders/UndergroundPathWestEast.asm b/data/mapHeaders/UndergroundPathWestEast.asm
new file mode 100755
index 00000000..d084bd73
--- /dev/null
+++ b/data/mapHeaders/UndergroundPathWestEast.asm
@@ -0,0 +1,8 @@
+UndergroundPathWestEast_h:
+ db UNDERGROUND ; tileset
+ db UNDERGROUND_PATH_WEST_EAST_HEIGHT, UNDERGROUND_PATH_WEST_EAST_WIDTH ; dimensions (y, x)
+ dw UndergroundPathWestEast_Blocks ; blocks
+ dw UndergroundPathWestEast_TextPointers ; texts
+ dw UndergroundPathWestEast_Script ; scripts
+ db 0 ; connections
+ dw UndergroundPathWestEast_Object ; objects
diff --git a/data/mapHeaders/VermilionCity.asm b/data/mapHeaders/VermilionCity.asm
new file mode 100755
index 00000000..6521ad89
--- /dev/null
+++ b/data/mapHeaders/VermilionCity.asm
@@ -0,0 +1,10 @@
+VermilionCity_h:
+ db OVERWORLD ; tileset
+ db VERMILION_CITY_HEIGHT, VERMILION_CITY_WIDTH ; dimensions (y, x)
+ dw VermilionCity_Blocks ; blocks
+ dw VermilionCity_TextPointers ; texts
+ dw VermilionCity_Script ; scripts
+ db NORTH | EAST ; connections
+ NORTH_MAP_CONNECTION VERMILION_CITY, ROUTE_6, 5, 0, Route6_Blocks
+ EAST_MAP_CONNECTION VERMILION_CITY, ROUTE_11, 4, 0, Route11_Blocks
+ dw VermilionCity_Object ; objects
diff --git a/data/mapHeaders/VermilionDock.asm b/data/mapHeaders/VermilionDock.asm
new file mode 100755
index 00000000..f7dca8e6
--- /dev/null
+++ b/data/mapHeaders/VermilionDock.asm
@@ -0,0 +1,8 @@
+VermilionDock_h:
+ db SHIP_PORT ; tileset
+ db VERMILION_DOCK_HEIGHT, VERMILION_DOCK_WIDTH ; dimensions (y, x)
+ dw VermilionDock_Blocks ; blocks
+ dw VermilionDock_TextPointers ; texts
+ dw VermilionDock_Script ; scripts
+ db 0 ; connections
+ dw VermilionDock_Object ; objects
diff --git a/data/mapHeaders/VermilionGym.asm b/data/mapHeaders/VermilionGym.asm
new file mode 100755
index 00000000..fe304a2e
--- /dev/null
+++ b/data/mapHeaders/VermilionGym.asm
@@ -0,0 +1,8 @@
+VermilionGym_h:
+ db GYM ; tileset
+ db VERMILION_GYM_HEIGHT, VERMILION_GYM_WIDTH ; dimensions (y, x)
+ dw VermilionGym_Blocks ; blocks
+ dw VermilionGym_TextPointers ; texts
+ dw VermilionGym_Script ; scripts
+ db 0 ; connections
+ dw VermilionGym_Object ; objects
diff --git a/data/mapHeaders/VermilionMart.asm b/data/mapHeaders/VermilionMart.asm
new file mode 100755
index 00000000..67f24f59
--- /dev/null
+++ b/data/mapHeaders/VermilionMart.asm
@@ -0,0 +1,8 @@
+VermilionMart_h:
+ db MART ; tileset
+ db VERMILION_MART_HEIGHT, VERMILION_MART_WIDTH ; dimensions (y, x)
+ dw VermilionMart_Blocks ; blocks
+ dw VermilionMart_TextPointers ; texts
+ dw VermilionMart_Script ; scripts
+ db 0 ; connections
+ dw VermilionMart_Object ; objects
diff --git a/data/mapHeaders/VermilionOldRodHouse.asm b/data/mapHeaders/VermilionOldRodHouse.asm
new file mode 100755
index 00000000..f4b69110
--- /dev/null
+++ b/data/mapHeaders/VermilionOldRodHouse.asm
@@ -0,0 +1,8 @@
+VermilionOldRodHouse_h:
+ db HOUSE ; tileset
+ db VERMILION_OLD_ROD_HOUSE_HEIGHT, VERMILION_OLD_ROD_HOUSE_WIDTH ; dimensions (y, x)
+ dw VermilionOldRodHouse_Blocks ; blocks
+ dw VermilionOldRodHouse_TextPointers ; texts
+ dw VermilionOldRodHouse_Script ; scripts
+ db 0 ; connections
+ dw VermilionOldRodHouse_Object ; objects
diff --git a/data/mapHeaders/VermilionPidgeyHouse.asm b/data/mapHeaders/VermilionPidgeyHouse.asm
new file mode 100755
index 00000000..af052fa6
--- /dev/null
+++ b/data/mapHeaders/VermilionPidgeyHouse.asm
@@ -0,0 +1,8 @@
+VermilionPidgeyHouse_h:
+ db HOUSE ; tileset
+ db VERMILION_PIDGEY_HOUSE_HEIGHT, VERMILION_PIDGEY_HOUSE_WIDTH ; dimensions (y, x)
+ dw VermilionPidgeyHouse_Blocks ; blocks
+ dw VermilionPidgeyHouse_TextPointers ; texts
+ dw VermilionPidgeyHouse_Script ; scripts
+ db 0 ; connections
+ dw VermilionPidgeyHouse_Object ; objects
diff --git a/data/mapHeaders/VermilionPokecenter.asm b/data/mapHeaders/VermilionPokecenter.asm
new file mode 100755
index 00000000..3d4c23ec
--- /dev/null
+++ b/data/mapHeaders/VermilionPokecenter.asm
@@ -0,0 +1,8 @@
+VermilionPokecenter_h:
+ db POKECENTER ; tileset
+ db VERMILION_POKECENTER_HEIGHT, VERMILION_POKECENTER_WIDTH ; dimensions (y, x)
+ dw VermilionPokecenter_Blocks ; blocks
+ dw VermilionPokecenter_TextPointers ; texts
+ dw VermilionPokecenter_Script ; scripts
+ db 0 ; connections
+ dw VermilionPokecenter_Object ; objects
diff --git a/data/mapHeaders/VermilionTradeHouse.asm b/data/mapHeaders/VermilionTradeHouse.asm
new file mode 100755
index 00000000..21d30049
--- /dev/null
+++ b/data/mapHeaders/VermilionTradeHouse.asm
@@ -0,0 +1,8 @@
+VermilionTradeHouse_h:
+ db HOUSE ; tileset
+ db VERMILION_TRADE_HOUSE_HEIGHT, VERMILION_TRADE_HOUSE_WIDTH ; dimensions (y, x)
+ dw VermilionTradeHouse_Blocks ; blocks
+ dw VermilionTradeHouse_TextPointers ; texts
+ dw VermilionTradeHouse_Script ; scripts
+ db 0 ; connections
+ dw VermilionTradeHouse_Object ; objects
diff --git a/data/mapHeaders/VictoryRoad1F.asm b/data/mapHeaders/VictoryRoad1F.asm
new file mode 100755
index 00000000..3508d782
--- /dev/null
+++ b/data/mapHeaders/VictoryRoad1F.asm
@@ -0,0 +1,8 @@
+VictoryRoad1F_h:
+ db CAVERN ; tileset
+ db VICTORY_ROAD_1F_HEIGHT, VICTORY_ROAD_1F_WIDTH ; dimensions (y, x)
+ dw VictoryRoad1F_Blocks ; blocks
+ dw VictoryRoad1F_TextPointers ; texts
+ dw VictoryRoad1F_Script ; scripts
+ db 0 ; connections
+ dw VictoryRoad1F_Object ; objects
diff --git a/data/mapHeaders/VictoryRoad2F.asm b/data/mapHeaders/VictoryRoad2F.asm
new file mode 100755
index 00000000..31693c1c
--- /dev/null
+++ b/data/mapHeaders/VictoryRoad2F.asm
@@ -0,0 +1,8 @@
+VictoryRoad2F_h:
+ db CAVERN ; tileset
+ db VICTORY_ROAD_2F_HEIGHT, VICTORY_ROAD_2F_WIDTH ; dimensions (y, x)
+ dw VictoryRoad2F_Blocks ; blocks
+ dw VictoryRoad2F_TextPointers ; texts
+ dw VictoryRoad2F_Script ; scripts
+ db 0 ; connections
+ dw VictoryRoad2F_Object ; objects
diff --git a/data/mapHeaders/VictoryRoad3F.asm b/data/mapHeaders/VictoryRoad3F.asm
new file mode 100755
index 00000000..3f5e21d2
--- /dev/null
+++ b/data/mapHeaders/VictoryRoad3F.asm
@@ -0,0 +1,8 @@
+VictoryRoad3F_h:
+ db CAVERN ; tileset
+ db VICTORY_ROAD_3F_HEIGHT, VICTORY_ROAD_3F_WIDTH ; dimensions (y, x)
+ dw VictoryRoad3F_Blocks ; blocks
+ dw VictoryRoad3F_TextPointers ; texts
+ dw VictoryRoad3F_Script ; scripts
+ db 0 ; connections
+ dw VictoryRoad3F_Object ; objects
diff --git a/data/mapHeaders/ViridianCity.asm b/data/mapHeaders/ViridianCity.asm
new file mode 100755
index 00000000..09f7b9f4
--- /dev/null
+++ b/data/mapHeaders/ViridianCity.asm
@@ -0,0 +1,11 @@
+ViridianCity_h:
+ db OVERWORLD ; tileset
+ db VIRIDIAN_CITY_HEIGHT, VIRIDIAN_CITY_WIDTH ; dimensions (y, x)
+ dw ViridianCity_Blocks ; blocks
+ dw ViridianCity_TextPointers ; texts
+ dw ViridianCity_Script ; scripts
+ db NORTH | SOUTH | WEST ; connections
+ NORTH_MAP_CONNECTION VIRIDIAN_CITY, ROUTE_2, 5, 0, Route2_Blocks
+ SOUTH_MAP_CONNECTION VIRIDIAN_CITY, ROUTE_1, 5, 0, Route1_Blocks, 1
+ WEST_MAP_CONNECTION VIRIDIAN_CITY, ROUTE_22, 4, 0, Route22_Blocks
+ dw ViridianCity_Object ; objects
diff --git a/data/mapHeaders/ViridianForest.asm b/data/mapHeaders/ViridianForest.asm
new file mode 100755
index 00000000..a8df3e6e
--- /dev/null
+++ b/data/mapHeaders/ViridianForest.asm
@@ -0,0 +1,8 @@
+ViridianForest_h:
+ db FOREST ; tileset
+ db VIRIDIAN_FOREST_HEIGHT, VIRIDIAN_FOREST_WIDTH ; dimensions (y, x)
+ dw ViridianForest_Blocks ; blocks
+ dw ViridianForest_TextPointers ; texts
+ dw ViridianForest_Script ; scripts
+ db 0 ; connections
+ dw ViridianForest_Object ; objects
diff --git a/data/mapHeaders/ViridianForestNorthGate.asm b/data/mapHeaders/ViridianForestNorthGate.asm
new file mode 100755
index 00000000..48535977
--- /dev/null
+++ b/data/mapHeaders/ViridianForestNorthGate.asm
@@ -0,0 +1,8 @@
+ViridianForestNorthGate_h:
+ db FOREST_GATE ; tileset
+ db VIRIDIAN_FOREST_NORTH_GATE_HEIGHT, VIRIDIAN_FOREST_NORTH_GATE_WIDTH ; dimensions (y, x)
+ dw ViridianForestNorthGate_Blocks ; blocks
+ dw ViridianForestNorthGate_TextPointers ; texts
+ dw ViridianForestNorthGate_Script ; scripts
+ db 0 ; connections
+ dw ViridianForestNorthGate_Object ; objects
diff --git a/data/mapHeaders/ViridianForestSouthGate.asm b/data/mapHeaders/ViridianForestSouthGate.asm
new file mode 100755
index 00000000..b134ebea
--- /dev/null
+++ b/data/mapHeaders/ViridianForestSouthGate.asm
@@ -0,0 +1,8 @@
+ViridianForestSouthGate_h:
+ db FOREST_GATE ; tileset
+ db VIRIDIAN_FOREST_SOUTH_GATE_HEIGHT, VIRIDIAN_FOREST_SOUTH_GATE_WIDTH ; dimensions (y, x)
+ dw ViridianForestSouthGate_Blocks ; blocks
+ dw ViridianForestSouthGate_TextPointers ; texts
+ dw ViridianForestSouthGate_Script ; scripts
+ db 0 ; connections
+ dw ViridianForestSouthGate_Object ; objects
diff --git a/data/mapHeaders/ViridianGym.asm b/data/mapHeaders/ViridianGym.asm
new file mode 100755
index 00000000..9b27845c
--- /dev/null
+++ b/data/mapHeaders/ViridianGym.asm
@@ -0,0 +1,8 @@
+ViridianGym_h:
+ db GYM ; tileset
+ db VIRIDIAN_GYM_HEIGHT, VIRIDIAN_GYM_WIDTH ; dimensions (y, x)
+ dw ViridianGym_Blocks ; blocks
+ dw ViridianGym_TextPointers ; texts
+ dw ViridianGym_Script ; scripts
+ db 0 ; connections
+ dw ViridianGym_Object ; objects
diff --git a/data/mapHeaders/ViridianMart.asm b/data/mapHeaders/ViridianMart.asm
new file mode 100755
index 00000000..063f3327
--- /dev/null
+++ b/data/mapHeaders/ViridianMart.asm
@@ -0,0 +1,8 @@
+ViridianMart_h:
+ db MART ; tileset
+ db VIRIDIAN_MART_HEIGHT, VIRIDIAN_MART_WIDTH ; dimensions (y, x)
+ dw ViridianMart_Blocks ; blocks
+ dw ViridianMart_TextPointers ; texts
+ dw ViridianMart_Script ; scripts
+ db 0 ; connections
+ dw ViridianMart_Object ; objects
diff --git a/data/mapHeaders/ViridianNicknameHouse.asm b/data/mapHeaders/ViridianNicknameHouse.asm
new file mode 100755
index 00000000..b6a00392
--- /dev/null
+++ b/data/mapHeaders/ViridianNicknameHouse.asm
@@ -0,0 +1,8 @@
+ViridianNicknameHouse_h:
+ db HOUSE ; tileset
+ db VIRIDIAN_NICKNAME_HOUSE_HEIGHT, VIRIDIAN_NICKNAME_HOUSE_WIDTH ; dimensions (y, x)
+ dw ViridianNicknameHouse_Blocks ; blocks
+ dw ViridianNicknameHouse_TextPointers ; texts
+ dw ViridianNicknameHouse_Script ; scripts
+ db 0 ; connections
+ dw ViridianNicknameHouse_Object ; objects
diff --git a/data/mapHeaders/ViridianPokecenter.asm b/data/mapHeaders/ViridianPokecenter.asm
new file mode 100755
index 00000000..25c569d8
--- /dev/null
+++ b/data/mapHeaders/ViridianPokecenter.asm
@@ -0,0 +1,8 @@
+ViridianPokecenter_h:
+ db POKECENTER ; tileset
+ db VIRIDIAN_POKECENTER_HEIGHT, VIRIDIAN_POKECENTER_WIDTH ; dimensions (y, x)
+ dw ViridianPokecenter_Blocks ; blocks
+ dw ViridianPokecenter_TextPointers ; texts
+ dw ViridianPokecenter_Script ; scripts
+ db 0 ; connections
+ dw ViridianPokecenter_Object ; objects
diff --git a/data/mapHeaders/ViridianSchoolHouse.asm b/data/mapHeaders/ViridianSchoolHouse.asm
new file mode 100755
index 00000000..15e5c88f
--- /dev/null
+++ b/data/mapHeaders/ViridianSchoolHouse.asm
@@ -0,0 +1,8 @@
+ViridianSchoolHouse_h:
+ db HOUSE ; tileset
+ db VIRIDIAN_SCHOOL_HOUSE_HEIGHT, VIRIDIAN_SCHOOL_HOUSE_WIDTH ; dimensions (y, x)
+ dw ViridianSchoolHouse_Blocks ; blocks
+ dw ViridianSchoolHouse_TextPointers ; texts
+ dw ViridianSchoolHouse_Script ; scripts
+ db 0 ; connections
+ dw ViridianSchoolHouse_Object ; objects
diff --git a/data/mapHeaders/WardensHouse.asm b/data/mapHeaders/WardensHouse.asm
new file mode 100755
index 00000000..128e357a
--- /dev/null
+++ b/data/mapHeaders/WardensHouse.asm
@@ -0,0 +1,8 @@
+WardensHouse_h:
+ db LAB ; tileset
+ db WARDENS_HOUSE_HEIGHT, WARDENS_HOUSE_WIDTH ; dimensions (y, x)
+ dw WardensHouse_Blocks ; blocks
+ dw WardensHouse_TextPointers ; texts
+ dw WardensHouse_Script ; scripts
+ db 0 ; connections
+ dw WardensHouse_Object ; objects
diff --git a/data/mapHeaders/agatha.asm b/data/mapHeaders/agatha.asm
deleted file mode 100755
index f3389579..00000000
--- a/data/mapHeaders/agatha.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Agatha_h:
- db CEMETERY ; tileset
- db AGATHAS_ROOM_HEIGHT, AGATHAS_ROOM_WIDTH ; dimensions (y, x)
- dw AgathaBlocks, AgathaTextPointers, AgathaScript ; blocks, texts, scripts
- db $00 ; connections
- dw AgathaObject ; objects
diff --git a/data/mapHeaders/beach_house.asm b/data/mapHeaders/beach_house.asm
deleted file mode 100644
index 99d237f6..00000000
--- a/data/mapHeaders/beach_house.asm
+++ /dev/null
@@ -1,7 +0,0 @@
-BeachHouse_h:
-
- db BEACH_HOUSE_TILESET
- db BEACH_HOUSE_HEIGHT, BEACH_HOUSE_WIDTH ; dimensions (y, x)
- dw BeachHouseBlockdata,BeachHouseTextPointers,BeachHouseScript ; blocks, texts, scripts
- db 0 ; connections
- dw BeachHouseObjects ; objects
diff --git a/data/mapHeaders/bikeshop.asm b/data/mapHeaders/bikeshop.asm
deleted file mode 100755
index b63b03df..00000000
--- a/data/mapHeaders/bikeshop.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-BikeShop_h:
- db CLUB ; tileset
- db BIKE_SHOP_HEIGHT, BIKE_SHOP_WIDTH ; dimensions (y, x)
- dw BikeShopBlocks, BikeShopTextPointers, BikeShopScript ; blocks, texts, scripts
- db $00 ; connections
- dw BikeShopObject ; objects
diff --git a/data/mapHeaders/billshouse.asm b/data/mapHeaders/billshouse.asm
deleted file mode 100755
index 735f8d62..00000000
--- a/data/mapHeaders/billshouse.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-BillsHouse_h:
- db INTERIOR ; tileset
- db BILLS_HOUSE_HEIGHT, BILLS_HOUSE_WIDTH ; dimensions (y, x)
- dw BillsHouseBlocks, BillsHouseTextPointers, BillsHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw BillsHouseObject ; objects
diff --git a/data/mapHeaders/blueshouse.asm b/data/mapHeaders/blueshouse.asm
deleted file mode 100755
index 47e5c5b4..00000000
--- a/data/mapHeaders/blueshouse.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-BluesHouse_h:
- db HOUSE ; tileset
- db BLUES_HOUSE_HEIGHT, BLUES_HOUSE_WIDTH ; dimensions
- dw BluesHouseBlocks, BluesHouseTextPointers, BluesHouseScript
- db 0
- dw BluesHouseObject
diff --git a/data/mapHeaders/bruno.asm b/data/mapHeaders/bruno.asm
deleted file mode 100755
index 1267ebe2..00000000
--- a/data/mapHeaders/bruno.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Bruno_h:
- db GYM ; tileset
- db BRUNOS_ROOM_HEIGHT, BRUNOS_ROOM_WIDTH ; dimensions (y, x)
- dw BrunoBlocks, BrunoTextPointers, BrunoScript ; blocks, texts, scripts
- db $00 ; connections
- dw BrunoObject ; objects
diff --git a/data/mapHeaders/celadoncity.asm b/data/mapHeaders/celadoncity.asm
deleted file mode 100755
index 7f94cad5..00000000
--- a/data/mapHeaders/celadoncity.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-CeladonCity_h:
- db OVERWORLD ; tileset
- db CELADON_CITY_HEIGHT, CELADON_CITY_WIDTH ; dimensions (y, x)
- dw CeladonCityBlocks, CeladonCityTextPointers, CeladonCityScript ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION CELADON_CITY, ROUTE_16, 4, 0, Route16Blocks
- EAST_MAP_CONNECTION CELADON_CITY, ROUTE_7, 4, 0, Route7Blocks, 1
- dw CeladonCityObject ; objects
diff --git a/data/mapHeaders/celadondiner.asm b/data/mapHeaders/celadondiner.asm
deleted file mode 100755
index 9520d76e..00000000
--- a/data/mapHeaders/celadondiner.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonDiner_h:
- db LOBBY ; tileset
- db CELADON_DINER_HEIGHT, CELADON_DINER_WIDTH ; dimensions (y, x)
- dw CeladonDinerBlocks, CeladonDinerTextPointers, CeladonDinerScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonDinerObject ; objects
diff --git a/data/mapHeaders/celadongamecorner.asm b/data/mapHeaders/celadongamecorner.asm
deleted file mode 100755
index 3c5674a7..00000000
--- a/data/mapHeaders/celadongamecorner.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonGameCorner_h:
- db LOBBY ; tileset
- db GAME_CORNER_HEIGHT, GAME_CORNER_WIDTH ; dimensions (y, x)
- dw CeladonGameCornerBlocks, CeladonGameCornerTextPointers, CeladonGameCornerScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonGameCornerObject ; objects
diff --git a/data/mapHeaders/celadongym.asm b/data/mapHeaders/celadongym.asm
deleted file mode 100755
index c0dcf162..00000000
--- a/data/mapHeaders/celadongym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonGym_h:
- db GYM ; tileset
- db CELADON_GYM_HEIGHT, CELADON_GYM_WIDTH ; dimensions (y, x)
- dw CeladonGymBlocks, CeladonGymTextPointers, CeladonGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonGymObject ; objects
diff --git a/data/mapHeaders/celadonhotel.asm b/data/mapHeaders/celadonhotel.asm
deleted file mode 100755
index 019c3cc3..00000000
--- a/data/mapHeaders/celadonhotel.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonHotel_h:
- db POKECENTER ; tileset
- db CELADON_HOTEL_HEIGHT, CELADON_HOTEL_WIDTH ; dimensions (y, x)
- dw CeladonHotelBlocks, CeladonHotelTextPointers, CeladonHotelScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonHotelObject ; objects
diff --git a/data/mapHeaders/celadonhouse.asm b/data/mapHeaders/celadonhouse.asm
deleted file mode 100755
index ba510282..00000000
--- a/data/mapHeaders/celadonhouse.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonHouse_h:
- db MANSION ; tileset
- db CELADON_HOUSE_HEIGHT, CELADON_HOUSE_WIDTH ; dimensions (y, x)
- dw CeladonHouseBlocks, CeladonHouseTextPointers, CeladonHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonHouseObject ; objects
diff --git a/data/mapHeaders/celadonmansion1.asm b/data/mapHeaders/celadonmansion1.asm
deleted file mode 100755
index 8c94cc63..00000000
--- a/data/mapHeaders/celadonmansion1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMansion1_h:
- db MANSION ; tileset
- db CELADON_MANSION_1_HEIGHT, CELADON_MANSION_1_WIDTH ; dimensions (y, x)
- dw CeladonMansion1Blocks, CeladonMansion1TextPointers, CeladonMansion1Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion1Object ; objects
diff --git a/data/mapHeaders/celadonmansion2.asm b/data/mapHeaders/celadonmansion2.asm
deleted file mode 100755
index 462dfdf3..00000000
--- a/data/mapHeaders/celadonmansion2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMansion2_h:
- db MANSION ; tileset
- db CELADON_MANSION_2_HEIGHT, CELADON_MANSION_2_WIDTH ; dimensions (y, x)
- dw CeladonMansion2Blocks, CeladonMansion2TextPointers, CeladonMansion2Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion2Object ; objects
diff --git a/data/mapHeaders/celadonmansion3.asm b/data/mapHeaders/celadonmansion3.asm
deleted file mode 100755
index 81b3f2e2..00000000
--- a/data/mapHeaders/celadonmansion3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMansion3_h:
- db MANSION ; tileset
- db CELADON_MANSION_3_HEIGHT, CELADON_MANSION_3_WIDTH ; dimensions (y, x)
- dw CeladonMansion3Blocks, CeladonMansion3TextPointers, CeladonMansion3Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion3Object ; objects
diff --git a/data/mapHeaders/celadonmansion4.asm b/data/mapHeaders/celadonmansion4.asm
deleted file mode 100755
index c5cf2da9..00000000
--- a/data/mapHeaders/celadonmansion4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMansion4_h:
- db MANSION ; tileset
- db CELADON_MANSION_4_HEIGHT, CELADON_MANSION_4_WIDTH ; dimensions (y, x)
- dw CeladonMansion4Blocks, CeladonMansion4TextPointers, CeladonMansion4Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion4Object ; objects
diff --git a/data/mapHeaders/celadonmansion5.asm b/data/mapHeaders/celadonmansion5.asm
deleted file mode 100755
index d26faccf..00000000
--- a/data/mapHeaders/celadonmansion5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMansion5_h:
- db HOUSE ; tileset
- db CELADON_MANSION_5_HEIGHT, CELADON_MANSION_5_WIDTH ; dimensions (y, x)
- dw CeladonMansion5Blocks, CeladonMansion5TextPointers, CeladonMansion5Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMansion5Object ; objects
diff --git a/data/mapHeaders/celadonmart1.asm b/data/mapHeaders/celadonmart1.asm
deleted file mode 100755
index 50d171bc..00000000
--- a/data/mapHeaders/celadonmart1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMart1_h:
- db LOBBY ; tileset
- db CELADON_MART_1_HEIGHT, CELADON_MART_1_WIDTH ; dimensions (y, x)
- dw CeladonMart1Blocks, CeladonMart1TextPointers, CeladonMart1Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart1Object ; objects
diff --git a/data/mapHeaders/celadonmart2.asm b/data/mapHeaders/celadonmart2.asm
deleted file mode 100755
index ecd609cb..00000000
--- a/data/mapHeaders/celadonmart2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMart2_h:
- db LOBBY ; tileset
- db CELADON_MART_2_HEIGHT, CELADON_MART_2_WIDTH ; dimensions (y, x)
- dw CeladonMart2Blocks, CeladonMart2TextPointers, CeladonMart2Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart2Object ; objects
diff --git a/data/mapHeaders/celadonmart3.asm b/data/mapHeaders/celadonmart3.asm
deleted file mode 100755
index af109528..00000000
--- a/data/mapHeaders/celadonmart3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMart3_h:
- db LOBBY ; tileset
- db CELADON_MART_3_HEIGHT, CELADON_MART_3_WIDTH ; dimensions (y, x)
- dw CeladonMart3Blocks, CeladonMart3TextPointers, CeladonMart3Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart3Object ; objects
diff --git a/data/mapHeaders/celadonmart4.asm b/data/mapHeaders/celadonmart4.asm
deleted file mode 100755
index 4ae820d9..00000000
--- a/data/mapHeaders/celadonmart4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMart4_h:
- db LOBBY ; tileset
- db CELADON_MART_4_HEIGHT, CELADON_MART_4_WIDTH ; dimensions (y, x)
- dw CeladonMart4Blocks, CeladonMart4TextPointers, CeladonMart4Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart4Object ; objects
diff --git a/data/mapHeaders/celadonmart5.asm b/data/mapHeaders/celadonmart5.asm
deleted file mode 100755
index 0d28464f..00000000
--- a/data/mapHeaders/celadonmart5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMart5_h:
- db LOBBY ; tileset
- db CELADON_MART_5_HEIGHT, CELADON_MART_5_WIDTH ; dimensions (y, x)
- dw CeladonMart5Blocks, CeladonMart5TextPointers, CeladonMart5Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMart5Object ; objects
diff --git a/data/mapHeaders/celadonmartelevator.asm b/data/mapHeaders/celadonmartelevator.asm
deleted file mode 100755
index 498587c6..00000000
--- a/data/mapHeaders/celadonmartelevator.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMartElevator_h:
- db LOBBY ; tileset
- db CELADON_MART_ELEVATOR_HEIGHT, CELADON_MART_ELEVATOR_WIDTH ; dimensions (y, x)
- dw CeladonMartElevatorBlocks, CeladonMartElevatorTextPointers, CeladonMartElevatorScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMartElevatorObject ; objects
diff --git a/data/mapHeaders/celadonmartroof.asm b/data/mapHeaders/celadonmartroof.asm
deleted file mode 100755
index 8814092b..00000000
--- a/data/mapHeaders/celadonmartroof.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonMartRoof_h:
- db LOBBY ; tileset
- db CELADON_MART_ROOF_HEIGHT, CELADON_MART_ROOF_WIDTH ; dimensions (y, x)
- dw CeladonMartRoofBlocks, CeladonMartRoofTextPointers, CeladonMartRoofScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonMartRoofObject ; objects
diff --git a/data/mapHeaders/celadonpokecenter.asm b/data/mapHeaders/celadonpokecenter.asm
deleted file mode 100755
index b9464c68..00000000
--- a/data/mapHeaders/celadonpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonPokecenter_h:
- db POKECENTER ; tileset
- db CELADON_POKECENTER_HEIGHT, CELADON_POKECENTER_WIDTH ; dimensions (y, x)
- dw CeladonPokecenterBlocks, CeladonPokecenterTextPointers, CeladonPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonPokecenterObject ; objects
diff --git a/data/mapHeaders/celadonprizeroom.asm b/data/mapHeaders/celadonprizeroom.asm
deleted file mode 100755
index f7a5dc12..00000000
--- a/data/mapHeaders/celadonprizeroom.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeladonPrizeRoom_h:
- db LOBBY ; tileset
- db CELADON_PRIZE_ROOM_HEIGHT, CELADON_PRIZE_ROOM_WIDTH ; dimensions (y, x)
- dw CeladonPrizeRoomBlocks, CeladonPrizeRoomTextPointers, CeladonPrizeRoomScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeladonPrizeRoomObject ; objects
diff --git a/data/mapHeaders/ceruleancity.asm b/data/mapHeaders/ceruleancity.asm
deleted file mode 100755
index be6dc5b2..00000000
--- a/data/mapHeaders/ceruleancity.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-CeruleanCity_h:
- db OVERWORLD ; tileset
- db CERULEAN_CITY_HEIGHT, CERULEAN_CITY_WIDTH ; dimensions (y, x)
- dw CeruleanCityBlocks, CeruleanCityTextPointers, CeruleanCityScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST | EAST ; connections
- NORTH_MAP_CONNECTION CERULEAN_CITY, ROUTE_24, 5, 0, Route24Blocks
- SOUTH_MAP_CONNECTION CERULEAN_CITY, ROUTE_5, 5, 0, Route5Blocks, 1
- WEST_MAP_CONNECTION CERULEAN_CITY, ROUTE_4, 4, 0, Route4Blocks
- EAST_MAP_CONNECTION CERULEAN_CITY, ROUTE_9, 4, 0, Route9Blocks
- dw CeruleanCityObject ; objects
diff --git a/data/mapHeaders/ceruleangym.asm b/data/mapHeaders/ceruleangym.asm
deleted file mode 100755
index f95e1a79..00000000
--- a/data/mapHeaders/ceruleangym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeruleanGym_h:
- db GYM ; tileset
- db CERULEAN_GYM_HEIGHT, CERULEAN_GYM_WIDTH ; dimensions (y, x)
- dw CeruleanGymBlocks, CeruleanGymTextPointers, CeruleanGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanGymObject ; objects
diff --git a/data/mapHeaders/ceruleanhouse1.asm b/data/mapHeaders/ceruleanhouse1.asm
deleted file mode 100755
index 2a8c9197..00000000
--- a/data/mapHeaders/ceruleanhouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeruleanHouse1_h:
- db HOUSE ; tileset
- db CERULEAN_HOUSE_1_HEIGHT, CERULEAN_HOUSE_1_WIDTH ; dimensions (y, x)
- dw CeruleanHouse1Blocks, CeruleanHouse1TextPointers, CeruleanHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanHouse1Object ; objects
diff --git a/data/mapHeaders/ceruleanhouse2.asm b/data/mapHeaders/ceruleanhouse2.asm
deleted file mode 100755
index 1e040ffd..00000000
--- a/data/mapHeaders/ceruleanhouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeruleanHouse2_h:
- db SHIP ; tileset
- db CERULEAN_HOUSE_2_HEIGHT, CERULEAN_HOUSE_2_WIDTH ; dimensions (y, x)
- dw CeruleanHouse2Blocks, CeruleanHouse2TextPointers, CeruleanHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanHouse2Object ; objects
diff --git a/data/mapHeaders/ceruleanhousetrashed.asm b/data/mapHeaders/ceruleanhousetrashed.asm
deleted file mode 100755
index 90119dc5..00000000
--- a/data/mapHeaders/ceruleanhousetrashed.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeruleanHouseTrashed_h:
- db HOUSE ; tileset
- db TRASHED_HOUSE_HEIGHT, TRASHED_HOUSE_WIDTH ; dimensions (y, x)
- dw CeruleanHouseTrashedBlocks, CeruleanHouseTrashedTextPointers, CeruleanHouseTrashedScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanHouseTrashedObject ; objects
diff --git a/data/mapHeaders/ceruleanmart.asm b/data/mapHeaders/ceruleanmart.asm
deleted file mode 100755
index 3f3231e8..00000000
--- a/data/mapHeaders/ceruleanmart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeruleanMart_h:
- db MART ; tileset
- db CERULEAN_MART_HEIGHT, CERULEAN_MART_WIDTH ; dimensions (y, x)
- dw CeruleanMartBlocks, CeruleanMartTextPointers, CeruleanMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanMartObject ; objects
diff --git a/data/mapHeaders/ceruleanpokecenter.asm b/data/mapHeaders/ceruleanpokecenter.asm
deleted file mode 100755
index 636a89ae..00000000
--- a/data/mapHeaders/ceruleanpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CeruleanPokecenter_h:
- db POKECENTER ; tileset
- db CERULEAN_POKECENTER_HEIGHT, CERULEAN_POKECENTER_WIDTH ; dimensions (y, x)
- dw CeruleanPokecenterBlocks, CeruleanPokecenterTextPointers, CeruleanPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw CeruleanPokecenterObject ; objects
diff --git a/data/mapHeaders/cinnabargym.asm b/data/mapHeaders/cinnabargym.asm
deleted file mode 100755
index 3f05790c..00000000
--- a/data/mapHeaders/cinnabargym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CinnabarGym_h:
- db FACILITY ; tileset
- db CINNABAR_GYM_HEIGHT, CINNABAR_GYM_WIDTH ; dimensions (y, x)
- dw CinnabarGymBlocks, CinnabarGymTextPointers, CinnabarGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw CinnabarGymObject ; objects
diff --git a/data/mapHeaders/cinnabarisland.asm b/data/mapHeaders/cinnabarisland.asm
deleted file mode 100755
index 6ae6424d..00000000
--- a/data/mapHeaders/cinnabarisland.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-CinnabarIsland_h:
- db OVERWORLD ; tileset
- db CINNABAR_ISLAND_HEIGHT, CINNABAR_ISLAND_WIDTH ; dimensions (y, x)
- dw CinnabarIslandBlocks, CinnabarIslandTextPointers, CinnabarIslandScript ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION CINNABAR_ISLAND, ROUTE_21, 0, 0, Route21Blocks
- EAST_MAP_CONNECTION CINNABAR_ISLAND, ROUTE_20, 0, 0, Route20Blocks
- dw CinnabarIslandObject ; objects
diff --git a/data/mapHeaders/cinnabarmart.asm b/data/mapHeaders/cinnabarmart.asm
deleted file mode 100755
index b686713f..00000000
--- a/data/mapHeaders/cinnabarmart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CinnabarMart_h:
- db MART ; tileset
- db CINNABAR_MART_HEIGHT, CINNABAR_MART_WIDTH ; dimensions (y, x)
- dw CinnabarMartBlocks, CinnabarMartTextPointers, CinnabarMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw CinnabarMartObject ; objects
diff --git a/data/mapHeaders/cinnabarpokecenter.asm b/data/mapHeaders/cinnabarpokecenter.asm
deleted file mode 100755
index b1f002bd..00000000
--- a/data/mapHeaders/cinnabarpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CinnabarPokecenter_h:
- db POKECENTER ; tileset
- db CINNABAR_POKECENTER_HEIGHT, CINNABAR_POKECENTER_WIDTH ; dimensions (y, x)
- dw CinnabarPokecenterBlocks, CinnabarPokecenterTextPointers, CinnabarPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw CinnabarPokecenterObject ; objects
diff --git a/data/mapHeaders/colosseum.asm b/data/mapHeaders/colosseum.asm
deleted file mode 100644
index 67e1188b..00000000
--- a/data/mapHeaders/colosseum.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Colosseum_h:
- db CLUB ; tileset
- db COLOSSEUM_HEIGHT, COLOSSEUM_WIDTH ; dimensions (y, x)
- dw ColosseumBlocks, ColosseumTextPointers, ColosseumScript ; blocks, texts, scripts
- db $00 ; connections
- dw ColosseumObject ; objects
diff --git a/data/mapHeaders/copycatshouse1f.asm b/data/mapHeaders/copycatshouse1f.asm
deleted file mode 100755
index bdca2189..00000000
--- a/data/mapHeaders/copycatshouse1f.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CopycatsHouse1F_h:
- db REDS_HOUSE_1 ; tileset
- db COPYCATS_HOUSE_1F_HEIGHT, COPYCATS_HOUSE_1F_WIDTH ; dimensions (y, x)
- dw CopycatsHouse1FBlocks, CopycatsHouse1FTextPointers, CopycatsHouse1FScript ; blocks, texts, scripts
- db $00 ; connections
- dw CopycatsHouse1FObject ; objects
diff --git a/data/mapHeaders/copycatshouse2f.asm b/data/mapHeaders/copycatshouse2f.asm
deleted file mode 100755
index 3eecf718..00000000
--- a/data/mapHeaders/copycatshouse2f.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-CopycatsHouse2F_h:
- db REDS_HOUSE_2 ; tileset
- db COPYCATS_HOUSE_2F_HEIGHT, COPYCATS_HOUSE_2F_WIDTH ; dimensions (y, x)
- dw CopycatsHouse2FBlocks, CopycatsHouse2FTextPointers, CopycatsHouse2FScript ; blocks, texts, scripts
- db $00 ; connections
- dw CopycatsHouse2FObject ; objects
diff --git a/data/mapHeaders/daycarem.asm b/data/mapHeaders/daycarem.asm
deleted file mode 100755
index 1b8d4c1c..00000000
--- a/data/mapHeaders/daycarem.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-DayCareM_h:
- db HOUSE ; tileset
- db DAYCAREM_HEIGHT, DAYCAREM_WIDTH ; dimensions (y, x)
- dw DayCareMBlocks, DayCareMTextPointers, DayCareMScript ; blocks, texts, scripts
- db $00 ; connections
- dw DayCareMObject ; objects
diff --git a/data/mapHeaders/diglettscave.asm b/data/mapHeaders/diglettscave.asm
deleted file mode 100755
index 0e68a55c..00000000
--- a/data/mapHeaders/diglettscave.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-DiglettsCave_h:
- db CAVERN ; tileset
- db DIGLETTS_CAVE_HEIGHT, DIGLETTS_CAVE_WIDTH ; dimensions (y, x)
- dw DiglettsCaveBlocks, DiglettsCaveTextPointers, DiglettsCaveScript ; blocks, texts, scripts
- db $00 ; connections
- dw DiglettsCaveObject ; objects
diff --git a/data/mapHeaders/diglettscaveroute11.asm b/data/mapHeaders/diglettscaveroute11.asm
deleted file mode 100755
index 7670c83f..00000000
--- a/data/mapHeaders/diglettscaveroute11.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-DiglettsCaveEntranceRoute11_h:
- db CAVERN ; tileset
- db DIGLETTS_CAVE_ENTRANCE_HEIGHT, DIGLETTS_CAVE_ENTRANCE_WIDTH ; dimensions (y, x)
- dw DiglettsCaveEntranceRoute11Blocks, DiglettsCaveEntranceRoute11TextPointers, DiglettsCaveEntranceRoute11Script ; blocks, texts, scripts
- db $00 ; connections
- dw DiglettsCaveEntranceRoute11Object ; objects
diff --git a/data/mapHeaders/diglettscaveroute2.asm b/data/mapHeaders/diglettscaveroute2.asm
deleted file mode 100755
index 0499b4c3..00000000
--- a/data/mapHeaders/diglettscaveroute2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-DiglettsCaveRoute2_h:
- db CAVERN ; tileset
- db DIGLETTS_CAVE_EXIT_HEIGHT, DIGLETTS_CAVE_EXIT_WIDTH ; dimensions (y, x)
- dw DiglettsCaveRoute2Blocks, DiglettsCaveRoute2TextPointers, DiglettsCaveRoute2Script ; blocks, texts, scripts
- db $00 ; connections
- dw DiglettsCaveRoute2Object ; objects
diff --git a/data/mapHeaders/fanclub.asm b/data/mapHeaders/fanclub.asm
deleted file mode 100755
index 8e8205b4..00000000
--- a/data/mapHeaders/fanclub.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FanClub_h:
- db INTERIOR ; tileset
- db POKEMON_FAN_CLUB_HEIGHT, POKEMON_FAN_CLUB_WIDTH ; dimensions (y, x)
- dw FanClubBlocks, FanClubTextPointers, FanClubScript ; blocks, texts, scripts
- db $00 ; connections
- dw FanClubObject ; objects
diff --git a/data/mapHeaders/fightingdojo.asm b/data/mapHeaders/fightingdojo.asm
deleted file mode 100755
index cb0a2fdb..00000000
--- a/data/mapHeaders/fightingdojo.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FightingDojo_h:
- db DOJO ; tileset
- db FIGHTING_DOJO_HEIGHT, FIGHTING_DOJO_WIDTH ; dimensions (y, x)
- dw FightingDojoBlocks, FightingDojoTextPointers, FightingDojoScript ; blocks, texts, scripts
- db $00 ; connections
- dw FightingDojoObject ; objects
diff --git a/data/mapHeaders/fuchsiacity.asm b/data/mapHeaders/fuchsiacity.asm
deleted file mode 100755
index 2bfd2793..00000000
--- a/data/mapHeaders/fuchsiacity.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-FuchsiaCity_h:
- db OVERWORLD ; tileset
- db FUCHSIA_CITY_HEIGHT, FUCHSIA_CITY_WIDTH ; dimensions (y, x)
- dw FuchsiaCityBlocks, FuchsiaCityTextPointers, FuchsiaCityScript ; blocks, texts, scripts
- db SOUTH | WEST | EAST ; connections
- SOUTH_MAP_CONNECTION FUCHSIA_CITY, ROUTE_19, 5, 0, Route19Blocks
- WEST_MAP_CONNECTION FUCHSIA_CITY, ROUTE_18, 4, 0, Route18Blocks
- EAST_MAP_CONNECTION FUCHSIA_CITY, ROUTE_15, 4, 0, Route15Blocks
- dw FuchsiaCityObject ; objects
diff --git a/data/mapHeaders/fuchsiagym.asm b/data/mapHeaders/fuchsiagym.asm
deleted file mode 100755
index 9d16f178..00000000
--- a/data/mapHeaders/fuchsiagym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaGym_h:
- db GYM ; tileset
- db FUCHSIA_GYM_HEIGHT, FUCHSIA_GYM_WIDTH ; dimensions (y, x)
- dw FuchsiaGymBlocks, FuchsiaGymTextPointers, FuchsiaGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaGymObject ; objects
diff --git a/data/mapHeaders/fuchsiahouse1.asm b/data/mapHeaders/fuchsiahouse1.asm
deleted file mode 100755
index c4ab2c95..00000000
--- a/data/mapHeaders/fuchsiahouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaHouse1_h:
- db HOUSE ; tileset
- db FUCHSIA_HOUSE_1_HEIGHT, FUCHSIA_HOUSE_1_WIDTH ; dimensions (y, x)
- dw FuchsiaHouse1Blocks, FuchsiaHouse1TextPointers, FuchsiaHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaHouse1Object ; objects
diff --git a/data/mapHeaders/fuchsiahouse2.asm b/data/mapHeaders/fuchsiahouse2.asm
deleted file mode 100755
index 530f44b6..00000000
--- a/data/mapHeaders/fuchsiahouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaHouse2_h:
- db LAB ; tileset
- db FUCHSIA_HOUSE_2_HEIGHT, FUCHSIA_HOUSE_2_WIDTH ; dimensions (y, x)
- dw FuchsiaHouse2Blocks, FuchsiaHouse2TextPointers, FuchsiaHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaHouse2Object ; objects
diff --git a/data/mapHeaders/fuchsiahouse3.asm b/data/mapHeaders/fuchsiahouse3.asm
deleted file mode 100755
index e52b6b8a..00000000
--- a/data/mapHeaders/fuchsiahouse3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaHouse3_h:
- db SHIP ; tileset
- db FUCHSIA_HOUSE_3_HEIGHT, FUCHSIA_HOUSE_3_WIDTH ; dimensions (y, x)
- dw FuchsiaHouse3Blocks, FuchsiaHouse3TextPointers, FuchsiaHouse3Script ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaHouse3Object ; objects
diff --git a/data/mapHeaders/fuchsiamart.asm b/data/mapHeaders/fuchsiamart.asm
deleted file mode 100755
index dcdfe8c7..00000000
--- a/data/mapHeaders/fuchsiamart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaMart_h:
- db MART ; tileset
- db FUCHSIA_MART_HEIGHT, FUCHSIA_MART_WIDTH ; dimensions (y, x)
- dw FuchsiaMartBlocks, FuchsiaMartTextPointers, FuchsiaMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaMartObject ; objects
diff --git a/data/mapHeaders/fuchsiameetingroom.asm b/data/mapHeaders/fuchsiameetingroom.asm
deleted file mode 100755
index b44acf29..00000000
--- a/data/mapHeaders/fuchsiameetingroom.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaMeetingRoom_h:
- db LAB ; tileset
- db FUCHSIA_MEETING_ROOM_HEIGHT, FUCHSIA_MEETING_ROOM_WIDTH ; dimensions (y, x)
- dw FuchsiaMeetingRoomBlocks, FuchsiaMeetingRoomTextPointers, FuchsiaMeetingRoomScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaMeetingRoomObject ; objects
diff --git a/data/mapHeaders/fuchsiapokecenter.asm b/data/mapHeaders/fuchsiapokecenter.asm
deleted file mode 100755
index dc6f1e6b..00000000
--- a/data/mapHeaders/fuchsiapokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-FuchsiaPokecenter_h:
- db POKECENTER ; tileset
- db FUCHSIA_POKECENTER_HEIGHT, FUCHSIA_POKECENTER_WIDTH ; dimensions (y, x)
- dw FuchsiaPokecenterBlocks, FuchsiaPokecenterTextPointers, FuchsiaPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw FuchsiaPokecenterObject ; objects
diff --git a/data/mapHeaders/gary.asm b/data/mapHeaders/gary.asm
deleted file mode 100755
index 792c4b32..00000000
--- a/data/mapHeaders/gary.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Gary_h:
- db GYM ;tileset
- db CHAMPIONS_ROOM_HEIGHT, CHAMPIONS_ROOM_WIDTH ; Height, Width
- dw GaryBlocks, GaryTextPointers, GaryScript
- db $0 ;No Connections
- dw GaryObject
diff --git a/data/mapHeaders/halloffameroom.asm b/data/mapHeaders/halloffameroom.asm
deleted file mode 100755
index a90464a8..00000000
--- a/data/mapHeaders/halloffameroom.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-HallofFameRoom_h:
- db GYM ; tileset
- db HALL_OF_FAME_HEIGHT, HALL_OF_FAME_WIDTH ; dimensions (y, x)
- dw HallofFameRoomBlocks, HallofFameRoomTextPointers, HallofFameRoomScript ; blocks, texts, scripts
- db $00 ; connections
- dw HallofFameRoomObject ; objects
diff --git a/data/mapHeaders/indigoplateau.asm b/data/mapHeaders/indigoplateau.asm
deleted file mode 100755
index deaf5041..00000000
--- a/data/mapHeaders/indigoplateau.asm
+++ /dev/null
@@ -1,7 +0,0 @@
-IndigoPlateau_h:
- db PLATEAU ; tileset
- db INDIGO_PLATEAU_HEIGHT, INDIGO_PLATEAU_WIDTH ; dimensions (y, x)
- dw IndigoPlateauBlocks, IndigoPlateauTextPointers, IndigoPlateauScript ; blocks, texts, scripts
- db SOUTH ; connections
- SOUTH_MAP_CONNECTION INDIGO_PLATEAU, ROUTE_23, 0, 0, Route23Blocks
- dw IndigoPlateauObject ; objects
diff --git a/data/mapHeaders/indigoplateaulobby.asm b/data/mapHeaders/indigoplateaulobby.asm
deleted file mode 100755
index 4cf92d82..00000000
--- a/data/mapHeaders/indigoplateaulobby.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-IndigoPlateauLobby_h:
- db MART ; tileset
- db INDIGO_PLATEAU_LOBBY_HEIGHT, INDIGO_PLATEAU_LOBBY_WIDTH ; dimensions (y, x)
- dw IndigoPlateauLobbyBlocks, IndigoPlateauLobbyTextPointers, IndigoPlateauLobbyScript ; blocks, texts, scripts
- db $00 ; connections
- dw IndigoPlateauLobbyObject ; objects
diff --git a/data/mapHeaders/lab1.asm b/data/mapHeaders/lab1.asm
deleted file mode 100755
index d0e976e7..00000000
--- a/data/mapHeaders/lab1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Lab1_h:
- db LAB ; tileset
- db CINNABAR_LAB_1_HEIGHT, CINNABAR_LAB_1_WIDTH ; dimensions (y, x)
- dw Lab1Blocks, Lab1TextPointers, Lab1Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab1Object ; objects
diff --git a/data/mapHeaders/lab2.asm b/data/mapHeaders/lab2.asm
deleted file mode 100755
index 75cbcf1f..00000000
--- a/data/mapHeaders/lab2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Lab2_h:
- db LAB ; tileset
- db CINNABAR_LAB_2_HEIGHT, CINNABAR_LAB_2_WIDTH ; dimensions (y, x)
- dw Lab2Blocks, Lab2TextPointers, Lab2Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab2Object ; objects
diff --git a/data/mapHeaders/lab3.asm b/data/mapHeaders/lab3.asm
deleted file mode 100755
index 9af39022..00000000
--- a/data/mapHeaders/lab3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Lab3_h:
- db LAB ; tileset
- db CINNABAR_LAB_3_HEIGHT, CINNABAR_LAB_3_WIDTH ; dimensions (y, x)
- dw Lab3Blocks, Lab3TextPointers, Lab3Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab3Object ; objects
diff --git a/data/mapHeaders/lab4.asm b/data/mapHeaders/lab4.asm
deleted file mode 100755
index e0b23c7d..00000000
--- a/data/mapHeaders/lab4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Lab4_h:
- db LAB ; tileset
- db CINNABAR_LAB_4_HEIGHT, CINNABAR_LAB_4_WIDTH ; dimensions (y, x)
- dw Lab4Blocks, Lab4TextPointers, Lab4Script ; blocks, texts, scripts
- db $00 ; connections
- dw Lab4Object ; objects
diff --git a/data/mapHeaders/lance.asm b/data/mapHeaders/lance.asm
deleted file mode 100755
index 13b2a343..00000000
--- a/data/mapHeaders/lance.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Lance_h:
- db DOJO ; tileset
- db LANCES_ROOM_HEIGHT, LANCES_ROOM_WIDTH ; dimensions (y, x)
- dw LanceBlocks, LanceTextPointers, LanceScript ; blocks, texts, scripts
- db $00 ; connections
- dw LanceObject ; objects
diff --git a/data/mapHeaders/lavenderhouse1.asm b/data/mapHeaders/lavenderhouse1.asm
deleted file mode 100755
index f1750dc0..00000000
--- a/data/mapHeaders/lavenderhouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-LavenderHouse1_h:
- db HOUSE ; tileset
- db LAVENDER_HOUSE_1_HEIGHT, LAVENDER_HOUSE_1_WIDTH ; dimensions (y, x)
- dw LavenderHouse1Blocks, LavenderHouse1TextPointers, LavenderHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderHouse1Object ; objects
diff --git a/data/mapHeaders/lavenderhouse2.asm b/data/mapHeaders/lavenderhouse2.asm
deleted file mode 100755
index 449ccf07..00000000
--- a/data/mapHeaders/lavenderhouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-LavenderHouse2_h:
- db HOUSE ; tileset
- db LAVENDER_HOUSE_2_HEIGHT, LAVENDER_HOUSE_2_WIDTH ; dimensions (y, x)
- dw LavenderHouse2Blocks, LavenderHouse2TextPointers, LavenderHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderHouse2Object ; objects
diff --git a/data/mapHeaders/lavendermart.asm b/data/mapHeaders/lavendermart.asm
deleted file mode 100755
index e2bd0c9c..00000000
--- a/data/mapHeaders/lavendermart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-LavenderMart_h:
- db MART ; tileset
- db LAVENDER_MART_HEIGHT, LAVENDER_MART_WIDTH ; dimensions (y, x)
- dw LavenderMartBlocks, LavenderMartTextPointers, LavenderMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderMartObject ; objects
diff --git a/data/mapHeaders/lavenderpokecenter.asm b/data/mapHeaders/lavenderpokecenter.asm
deleted file mode 100755
index c0d41294..00000000
--- a/data/mapHeaders/lavenderpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-LavenderPokecenter_h:
- db POKECENTER ; tileset
- db LAVENDER_POKECENTER_HEIGHT, LAVENDER_POKECENTER_WIDTH ; dimensions (y, x)
- dw LavenderPokecenterBlocks, LavenderPokecenterTextPointers, LavenderPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw LavenderPokecenterObject ; objects
diff --git a/data/mapHeaders/lavendertown.asm b/data/mapHeaders/lavendertown.asm
deleted file mode 100755
index 74bbd7a8..00000000
--- a/data/mapHeaders/lavendertown.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-LavenderTown_h:
- db OVERWORLD ; tileset
- db LAVENDER_TOWN_HEIGHT, LAVENDER_TOWN_WIDTH ; dimensions (y, x)
- dw LavenderTownBlocks, LavenderTownTextPointers, LavenderTownScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST ; connections
- NORTH_MAP_CONNECTION LAVENDER_TOWN, ROUTE_10, 0, 0, Route10Blocks
- SOUTH_MAP_CONNECTION LAVENDER_TOWN, ROUTE_12, 0, 0, Route12Blocks, 1
- WEST_MAP_CONNECTION LAVENDER_TOWN, ROUTE_8, 0, 0, Route8Blocks
- dw LavenderTownObject ; objects
diff --git a/data/mapHeaders/lorelei.asm b/data/mapHeaders/lorelei.asm
deleted file mode 100755
index 634435d3..00000000
--- a/data/mapHeaders/lorelei.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Lorelei_h:
- db GYM ; tileset
- db LORELEIS_ROOM_HEIGHT, LORELEIS_ROOM_WIDTH ; dimensions (y, x)
- dw LoreleiBlocks, LoreleiTextPointers, LoreleiScript ; blocks, texts, scripts
- db $00 ; connections
- dw LoreleiObject ; objects
diff --git a/data/mapHeaders/mansion1.asm b/data/mapHeaders/mansion1.asm
deleted file mode 100755
index 46b0a83e..00000000
--- a/data/mapHeaders/mansion1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Mansion1_h:
- db FACILITY ; tileset
- db MANSION_1_HEIGHT, MANSION_1_WIDTH ; dimensions (y, x)
- dw Mansion1Blocks, Mansion1TextPointers, Mansion1Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion1Object ; objects
diff --git a/data/mapHeaders/mansion2.asm b/data/mapHeaders/mansion2.asm
deleted file mode 100755
index ee4b570c..00000000
--- a/data/mapHeaders/mansion2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Mansion2_h:
- db FACILITY ; tileset
- db MANSION_2_HEIGHT, MANSION_2_WIDTH ; dimensions (y, x)
- dw Mansion2Blocks, Mansion2TextPointers, Mansion2Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion2Object ; objects
diff --git a/data/mapHeaders/mansion3.asm b/data/mapHeaders/mansion3.asm
deleted file mode 100755
index 97074347..00000000
--- a/data/mapHeaders/mansion3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Mansion3_h:
- db FACILITY ; tileset
- db MANSION_3_HEIGHT, MANSION_3_WIDTH ; dimensions (y, x)
- dw Mansion3Blocks, Mansion3TextPointers, Mansion3Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion3Object ; objects
diff --git a/data/mapHeaders/mansion4.asm b/data/mapHeaders/mansion4.asm
deleted file mode 100755
index 45b1636a..00000000
--- a/data/mapHeaders/mansion4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Mansion4_h:
- db FACILITY ; tileset
- db MANSION_4_HEIGHT, MANSION_4_WIDTH ; dimensions (y, x)
- dw Mansion4Blocks, Mansion4TextPointers, Mansion4Script ; blocks, texts, scripts
- db $00 ; connections
- dw Mansion4Object ; objects
diff --git a/data/mapHeaders/mtmoon1.asm b/data/mapHeaders/mtmoon1.asm
deleted file mode 100755
index da64b667..00000000
--- a/data/mapHeaders/mtmoon1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-MtMoon1_h:
- db CAVERN ; tileset
- db MT_MOON_1_HEIGHT, MT_MOON_1_WIDTH ; dimensions (y, x)
- dw MtMoon1Blocks, MtMoon1TextPointers, MtMoon1Script ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoon1Object ; objects
diff --git a/data/mapHeaders/mtmoon2.asm b/data/mapHeaders/mtmoon2.asm
deleted file mode 100755
index 7121c33e..00000000
--- a/data/mapHeaders/mtmoon2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-MtMoon2_h:
- db CAVERN ; tileset
- db MT_MOON_2_HEIGHT, MT_MOON_2_WIDTH ; dimensions (y, x)
- dw MtMoon2Blocks, MtMoon2TextPointers, MtMoon2Script ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoon2Object ; objects
diff --git a/data/mapHeaders/mtmoon3.asm b/data/mapHeaders/mtmoon3.asm
deleted file mode 100755
index 643eb95d..00000000
--- a/data/mapHeaders/mtmoon3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-MtMoon3_h:
- db CAVERN ; tileset
- db MT_MOON_3_HEIGHT, MT_MOON_3_WIDTH ; dimensions (y, x)
- dw MtMoon3Blocks, MtMoon3TextPointers, MtMoon3Script ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoon3Object ; objects
diff --git a/data/mapHeaders/mtmoonpokecenter.asm b/data/mapHeaders/mtmoonpokecenter.asm
deleted file mode 100755
index ba82c478..00000000
--- a/data/mapHeaders/mtmoonpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-MtMoonPokecenter_h:
- db POKECENTER ; tileset
- db MT_MOON_POKECENTER_HEIGHT, MT_MOON_POKECENTER_WIDTH ; dimensions (y, x)
- dw MtMoonPokecenterBlocks, MtMoonPokecenterTextPointers, MtMoonPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw MtMoonPokecenterObject ; objects
diff --git a/data/mapHeaders/museum1f.asm b/data/mapHeaders/museum1f.asm
deleted file mode 100755
index 10611513..00000000
--- a/data/mapHeaders/museum1f.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Museum1F_h:
- db MUSEUM ; tileset
- db MUSEUM_1F_HEIGHT, MUSEUM_1F_WIDTH ; dimensions (y, x)
- dw Museum1FBlocks, Museum1FTextPointers, Museum1FScript ; blocks, texts, scripts
- db $00 ; connections
- dw Museum1FObject ; objects
diff --git a/data/mapHeaders/museum2f.asm b/data/mapHeaders/museum2f.asm
deleted file mode 100755
index 62f9f7ca..00000000
--- a/data/mapHeaders/museum2f.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Museum2F_h:
- db MUSEUM ; tileset
- db MUSEUM_2F_HEIGHT, MUSEUM_2F_WIDTH ; dimensions (y, x)
- dw Museum2FBlocks, Museum2FTextPointers, Museum2FScript ; blocks, texts, scripts
- db $00 ; connections
- dw Museum2FObject ; objects
diff --git a/data/mapHeaders/namerater.asm b/data/mapHeaders/namerater.asm
deleted file mode 100755
index 3fdef0d7..00000000
--- a/data/mapHeaders/namerater.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-NameRater_h:
- db HOUSE ; tileset
- db NAME_RATERS_HOUSE_HEIGHT, NAME_RATERS_HOUSE_WIDTH ; dimensions (y, x)
- dw NameRaterBlocks, NameRaterTextPointers, NameRaterScript ; blocks, texts, scripts
- db $00 ; connections
- dw NameRaterObject ; objects
diff --git a/data/mapHeaders/oakslab.asm b/data/mapHeaders/oakslab.asm
deleted file mode 100755
index ba2c9d22..00000000
--- a/data/mapHeaders/oakslab.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-OaksLab_h:
- db DOJO ; tileset
- db OAKS_LAB_HEIGHT, OAKS_LAB_WIDTH ; dimensions (y, x)
- dw OaksLabBlocks, OaksLabTextPointers, OaksLabScript ; blocks, texts, scripts
- db $00 ; connections
- dw OaksLabObject ; objects
diff --git a/data/mapHeaders/pallettown.asm b/data/mapHeaders/pallettown.asm
deleted file mode 100755
index a957314c..00000000
--- a/data/mapHeaders/pallettown.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-PalletTown_h:
- db OVERWORLD ; tileset
- db PALLET_TOWN_HEIGHT, PALLET_TOWN_WIDTH ; dimensions
- dw PalletTownBlocks, PalletTownTextPointers, PalletTownScript
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION PALLET_TOWN, ROUTE_1, 0, 0, Route1Blocks
- SOUTH_MAP_CONNECTION PALLET_TOWN, ROUTE_21, 0, 0, Route21Blocks, 1
- dw PalletTownObject
diff --git a/data/mapHeaders/pewtercity.asm b/data/mapHeaders/pewtercity.asm
deleted file mode 100755
index ff5bd7b9..00000000
--- a/data/mapHeaders/pewtercity.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-PewterCity_h:
- db OVERWORLD ; tileset
- db PEWTER_CITY_HEIGHT, PEWTER_CITY_WIDTH ; dimensions (y, x)
- dw PewterCityBlocks, PewterCityTextPointers, PewterCityScript ; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION PEWTER_CITY, ROUTE_2, 5, 0, Route2Blocks
- EAST_MAP_CONNECTION PEWTER_CITY, ROUTE_3, 4, 0, Route3Blocks
- dw PewterCityObject ; objects
-
- db $0
diff --git a/data/mapHeaders/pewtergym.asm b/data/mapHeaders/pewtergym.asm
deleted file mode 100755
index 8eee73b3..00000000
--- a/data/mapHeaders/pewtergym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PewterGym_h:
- db GYM ; tileset
- db PEWTER_GYM_HEIGHT, PEWTER_GYM_WIDTH ; dimensions (y, x)
- dw PewterGymBlocks, PewterGymTextPointers, PewterGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw PewterGymObject ; objects
diff --git a/data/mapHeaders/pewterhouse1.asm b/data/mapHeaders/pewterhouse1.asm
deleted file mode 100755
index 40209926..00000000
--- a/data/mapHeaders/pewterhouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PewterHouse1_h:
- db HOUSE ; tileset
- db PEWTER_HOUSE_1_HEIGHT, PEWTER_HOUSE_1_WIDTH ; dimensions (y, x)
- dw PewterHouse1Blocks, PewterHouse1TextPointers, PewterHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw PewterHouse1Object ; objects
diff --git a/data/mapHeaders/pewterhouse2.asm b/data/mapHeaders/pewterhouse2.asm
deleted file mode 100755
index 25fc3e9d..00000000
--- a/data/mapHeaders/pewterhouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PewterHouse2_h:
- db HOUSE ; tileset
- db PEWTER_HOUSE_2_HEIGHT, PEWTER_HOUSE_2_WIDTH ; dimensions (y, x)
- dw PewterHouse2Blocks, PewterHouse2TextPointers, PewterHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw PewterHouse2Object ; objects
diff --git a/data/mapHeaders/pewtermart.asm b/data/mapHeaders/pewtermart.asm
deleted file mode 100755
index 02481bfc..00000000
--- a/data/mapHeaders/pewtermart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PewterMart_h:
- db MART ; tileset
- db PEWTER_MART_HEIGHT, PEWTER_MART_WIDTH ; dimensions (y, x)
- dw PewterMartBlocks, PewterMartTextPointers, PewterMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw PewterMartObject ; objects
diff --git a/data/mapHeaders/pewterpokecenter.asm b/data/mapHeaders/pewterpokecenter.asm
deleted file mode 100755
index f3abc838..00000000
--- a/data/mapHeaders/pewterpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PewterPokecenter_h:
- db POKECENTER ; tileset
- db PEWTER_POKECENTER_HEIGHT, PEWTER_POKECENTER_WIDTH ; dimensions (y, x)
- dw PewterPokecenterBlocks, PewterPokecenterTextPointers, PewterPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw PewterPokecenterObject ; objects
diff --git a/data/mapHeaders/pokemontower1.asm b/data/mapHeaders/pokemontower1.asm
deleted file mode 100755
index 9a799d73..00000000
--- a/data/mapHeaders/pokemontower1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower1_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_1_HEIGHT, POKEMONTOWER_1_WIDTH ; dimensions (y, x)
- dw PokemonTower1Blocks, PokemonTower1TextPointers, PokemonTower1Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower1Object ; objects
diff --git a/data/mapHeaders/pokemontower2.asm b/data/mapHeaders/pokemontower2.asm
deleted file mode 100755
index a2c395c9..00000000
--- a/data/mapHeaders/pokemontower2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower2_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_2_HEIGHT, POKEMONTOWER_2_WIDTH ; dimensions (y, x)
- dw PokemonTower2Blocks, PokemonTower2TextPointers, PokemonTower2Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower2Object ; objects
diff --git a/data/mapHeaders/pokemontower3.asm b/data/mapHeaders/pokemontower3.asm
deleted file mode 100755
index af81c9e6..00000000
--- a/data/mapHeaders/pokemontower3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower3_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_3_HEIGHT, POKEMONTOWER_3_WIDTH ; dimensions (y, x)
- dw PokemonTower3Blocks, PokemonTower3TextPointers, PokemonTower3Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower3Object ; objects
diff --git a/data/mapHeaders/pokemontower4.asm b/data/mapHeaders/pokemontower4.asm
deleted file mode 100755
index 073c34c0..00000000
--- a/data/mapHeaders/pokemontower4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower4_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_4_HEIGHT, POKEMONTOWER_4_WIDTH ; dimensions (y, x)
- dw PokemonTower4Blocks, PokemonTower4TextPointers, PokemonTower4Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower4Object ; objects
diff --git a/data/mapHeaders/pokemontower5.asm b/data/mapHeaders/pokemontower5.asm
deleted file mode 100755
index a7636534..00000000
--- a/data/mapHeaders/pokemontower5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower5_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_5_HEIGHT, POKEMONTOWER_5_WIDTH ; dimensions (y, x)
- dw PokemonTower5Blocks, PokemonTower5TextPointers, PokemonTower5Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower5Object ; objects
diff --git a/data/mapHeaders/pokemontower6.asm b/data/mapHeaders/pokemontower6.asm
deleted file mode 100755
index a83ae0ba..00000000
--- a/data/mapHeaders/pokemontower6.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower6_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_6_HEIGHT, POKEMONTOWER_6_WIDTH ; dimensions (y, x)
- dw PokemonTower6Blocks, PokemonTower6TextPointers, PokemonTower6Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower6Object ; objects
diff --git a/data/mapHeaders/pokemontower7.asm b/data/mapHeaders/pokemontower7.asm
deleted file mode 100755
index 4e13bcee..00000000
--- a/data/mapHeaders/pokemontower7.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PokemonTower7_h:
- db CEMETERY ; tileset
- db POKEMONTOWER_7_HEIGHT, POKEMONTOWER_7_WIDTH ; dimensions (y, x)
- dw PokemonTower7Blocks, PokemonTower7TextPointers, PokemonTower7Script ; blocks, texts, scripts
- db $00 ; connections
- dw PokemonTower7Object ; objects
diff --git a/data/mapHeaders/powerplant.asm b/data/mapHeaders/powerplant.asm
deleted file mode 100755
index 9c78311d..00000000
--- a/data/mapHeaders/powerplant.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-PowerPlant_h:
- db FACILITY ; tileset
- db POWER_PLANT_HEIGHT, POWER_PLANT_WIDTH ; dimensions (y, x)
- dw PowerPlantBlocks, PowerPlantTextPointers, PowerPlantScript ; blocks, texts, scripts
- db $00 ; connections
- dw PowerPlantObject ; objects
diff --git a/data/mapHeaders/redshouse1f.asm b/data/mapHeaders/redshouse1f.asm
deleted file mode 100755
index 82d83042..00000000
--- a/data/mapHeaders/redshouse1f.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RedsHouse1F_h:
- db REDS_HOUSE_1 ; tileset
- db REDS_HOUSE_1F_HEIGHT, REDS_HOUSE_1F_WIDTH ; dimensions
- dw RedsHouse1FBlocks, RedsHouse1FTextPointers, RedsHouse1FScript
- db 0 ; no connections
- dw RedsHouse1FObject
diff --git a/data/mapHeaders/redshouse2f.asm b/data/mapHeaders/redshouse2f.asm
deleted file mode 100755
index c4b0969c..00000000
--- a/data/mapHeaders/redshouse2f.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RedsHouse2F_h:
- db REDS_HOUSE_2 ; tileset
- db REDS_HOUSE_2F_HEIGHT, REDS_HOUSE_2F_WIDTH ; dimensions
- dw RedsHouse2FBlocks, RedsHouse2FTextPointers, RedsHouse2FScript
- db $00 ; no connections
- dw RedsHouse2FObject
diff --git a/data/mapHeaders/rockethideout1.asm b/data/mapHeaders/rockethideout1.asm
deleted file mode 100755
index a9dcf424..00000000
--- a/data/mapHeaders/rockethideout1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RocketHideout1_h:
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_1_HEIGHT, ROCKET_HIDEOUT_1_WIDTH ; dimensions (y, x)
- dw RocketHideout1Blocks, RocketHideout1TextPointers, RocketHideout1Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout1Object ; objects
diff --git a/data/mapHeaders/rockethideout2.asm b/data/mapHeaders/rockethideout2.asm
deleted file mode 100755
index 8f034360..00000000
--- a/data/mapHeaders/rockethideout2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RocketHideout2_h:
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_2_HEIGHT, ROCKET_HIDEOUT_2_WIDTH ; dimensions (y, x)
- dw RocketHideout2Blocks, RocketHideout2TextPointers, RocketHideout2Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout2Object ; objects
diff --git a/data/mapHeaders/rockethideout3.asm b/data/mapHeaders/rockethideout3.asm
deleted file mode 100755
index 5fc9fb95..00000000
--- a/data/mapHeaders/rockethideout3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RocketHideout3_h:
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_3_HEIGHT, ROCKET_HIDEOUT_3_WIDTH ; dimensions (y, x)
- dw RocketHideout3Blocks, RocketHideout3TextPointers, RocketHideout3Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout3Object ; objects
diff --git a/data/mapHeaders/rockethideout4.asm b/data/mapHeaders/rockethideout4.asm
deleted file mode 100755
index 0cde5bee..00000000
--- a/data/mapHeaders/rockethideout4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RocketHideout4_h:
- db FACILITY ; tileset
- db ROCKET_HIDEOUT_4_HEIGHT, ROCKET_HIDEOUT_4_WIDTH ; dimensions (y, x)
- dw RocketHideout4Blocks, RocketHideout4TextPointers, RocketHideout4Script ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideout4Object ; objects
diff --git a/data/mapHeaders/rockethideoutelevator.asm b/data/mapHeaders/rockethideoutelevator.asm
deleted file mode 100755
index d4917812..00000000
--- a/data/mapHeaders/rockethideoutelevator.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RocketHideoutElevator_h:
- db LOBBY ; tileset
- db ROCKET_HIDEOUT_ELEVATOR_HEIGHT, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; dimensions (y, x)
- dw RocketHideoutElevatorBlocks, RocketHideoutElevatorTextPointers, RocketHideoutElevatorScript ; blocks, texts, scripts
- db $00 ; connections
- dw RocketHideoutElevatorObject ; objects
diff --git a/data/mapHeaders/rocktunnel1.asm b/data/mapHeaders/rocktunnel1.asm
deleted file mode 100755
index db67517d..00000000
--- a/data/mapHeaders/rocktunnel1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RockTunnel1_h:
- db CAVERN ; tileset
- db ROCK_TUNNEL_1_HEIGHT, ROCK_TUNNEL_1_WIDTH ; dimensions (y, x)
- dw RockTunnel1Blocks, RockTunnel1TextPointers, RockTunnel1Script ; blocks, texts, scripts
- db $00 ; connections
- dw RockTunnel1Object ; objects
diff --git a/data/mapHeaders/rocktunnel2.asm b/data/mapHeaders/rocktunnel2.asm
deleted file mode 100755
index 5b85701b..00000000
--- a/data/mapHeaders/rocktunnel2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RockTunnel2_h:
- db CAVERN ; tileset
- db ROCK_TUNNEL_2_HEIGHT, ROCK_TUNNEL_2_WIDTH ; dimensions (y, x)
- dw RockTunnel2Blocks, RockTunnel2TextPointers, RockTunnel2Script ; blocks, texts, scripts
- db $00 ; connections
- dw RockTunnel2Object ; objects
diff --git a/data/mapHeaders/rocktunnelpokecenter.asm b/data/mapHeaders/rocktunnelpokecenter.asm
deleted file mode 100755
index e1bad3bd..00000000
--- a/data/mapHeaders/rocktunnelpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-RockTunnelPokecenter_h:
- db POKECENTER ; tileset
- db ROCK_TUNNEL_POKECENTER_HEIGHT, ROCK_TUNNEL_POKECENTER_WIDTH ; dimensions (y, x)
- dw RockTunnelPokecenterBlocks, RockTunnelPokecenterTextPointers, RockTunnelPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw RockTunnelPokecenterObject ; objects
diff --git a/data/mapHeaders/route1.asm b/data/mapHeaders/route1.asm
deleted file mode 100755
index 5f6a858e..00000000
--- a/data/mapHeaders/route1.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route1_h:
- db OVERWORLD ; tileset
- db ROUTE_1_HEIGHT, ROUTE_1_WIDTH ; dimensions (y, x)
- dw Route1Blocks, Route1TextPointers, Route1Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_1, VIRIDIAN_CITY, -3, 2, ViridianCityBlocks
- SOUTH_MAP_CONNECTION ROUTE_1, PALLET_TOWN, 0, 0, PalletTownBlocks, 1
- dw Route1Object ; objects
diff --git a/data/mapHeaders/route10.asm b/data/mapHeaders/route10.asm
deleted file mode 100755
index 7ee588cf..00000000
--- a/data/mapHeaders/route10.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route10_h:
- db OVERWORLD ; tileset
- db ROUTE_10_HEIGHT, ROUTE_10_WIDTH ; dimensions (y, x)
- dw Route10Blocks, Route10TextPointers, Route10Script ; blocks, texts, scripts
- db SOUTH | WEST ; connections
- SOUTH_MAP_CONNECTION ROUTE_10, LAVENDER_TOWN, 0, 0, LavenderTownBlocks
- WEST_MAP_CONNECTION ROUTE_10, ROUTE_9, 0, 0, Route9Blocks
- dw Route10Object ; objects
diff --git a/data/mapHeaders/route11.asm b/data/mapHeaders/route11.asm
deleted file mode 100755
index 04ae8f24..00000000
--- a/data/mapHeaders/route11.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route11_h:
- db OVERWORLD ; tileset
- db ROUTE_11_HEIGHT, ROUTE_11_WIDTH ; dimensions (y, x)
- dw Route11Blocks, Route11TextPointers, Route11Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_11, VERMILION_CITY, -3, 1, VermilionCityBlocks
- EAST_MAP_CONNECTION ROUTE_11, ROUTE_12, -3, 24, Route12Blocks, 1
- dw Route11Object ; objects
diff --git a/data/mapHeaders/route11gate.asm b/data/mapHeaders/route11gate.asm
deleted file mode 100755
index 26539a19..00000000
--- a/data/mapHeaders/route11gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route11Gate_h:
- db GATE ; tileset
- db ROUTE_11_GATE_1F_HEIGHT, ROUTE_11_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route11GateBlocks, Route11GateTextPointers, Route11GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route11GateObject ; objects
diff --git a/data/mapHeaders/route11gateupstairs.asm b/data/mapHeaders/route11gateupstairs.asm
deleted file mode 100755
index ac556804..00000000
--- a/data/mapHeaders/route11gateupstairs.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route11GateUpstairs_h:
- db GATE ; tileset
- db ROUTE_11_GATE_2F_HEIGHT, ROUTE_11_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route11GateUpstairsBlocks, Route11GateUpstairsTextPointers, Route11GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route11GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route12.asm b/data/mapHeaders/route12.asm
deleted file mode 100755
index b11e0128..00000000
--- a/data/mapHeaders/route12.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-Route12_h:
- db OVERWORLD ; tileset
- db ROUTE_12_HEIGHT, ROUTE_12_WIDTH ; dimensions (y, x)
- dw Route12Blocks, Route12TextPointers, Route12Script ; blocks, texts, scripts
- db NORTH | SOUTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_12, LAVENDER_TOWN, 0, 0, LavenderTownBlocks
- SOUTH_MAP_CONNECTION ROUTE_12, ROUTE_13, -3, 17, Route13Blocks
- WEST_MAP_CONNECTION ROUTE_12, ROUTE_11, 27, 0, Route11Blocks
- dw Route12Object ; objects
diff --git a/data/mapHeaders/route12gate.asm b/data/mapHeaders/route12gate.asm
deleted file mode 100755
index bcd36d73..00000000
--- a/data/mapHeaders/route12gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route12Gate_h:
- db GATE ; tileset
- db ROUTE_12_GATE_1F_HEIGHT, ROUTE_12_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route12GateBlocks, Route12GateTextPointers, Route12GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route12GateObject ; objects
diff --git a/data/mapHeaders/route12gateupstairs.asm b/data/mapHeaders/route12gateupstairs.asm
deleted file mode 100755
index 96109a38..00000000
--- a/data/mapHeaders/route12gateupstairs.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route12GateUpstairs_h:
- db GATE ; tileset
- db ROUTE_12_GATE_2F_HEIGHT, ROUTE_12_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route12GateUpstairsBlocks, Route12GateUpstairsTextPointers, Route12GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route12GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route12house.asm b/data/mapHeaders/route12house.asm
deleted file mode 100755
index 11f45d24..00000000
--- a/data/mapHeaders/route12house.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route12House_h:
- db HOUSE ; tileset
- db ROUTE_12_HOUSE_HEIGHT, ROUTE_12_HOUSE_WIDTH ; dimensions (y, x)
- dw Route12HouseBlocks, Route12HouseTextPointers, Route12HouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route12HouseObject ; objects
diff --git a/data/mapHeaders/route13.asm b/data/mapHeaders/route13.asm
deleted file mode 100755
index 53a88633..00000000
--- a/data/mapHeaders/route13.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route13_h:
- db OVERWORLD ; tileset
- db ROUTE_13_HEIGHT, ROUTE_13_WIDTH ; dimensions (y, x)
- dw Route13Blocks, Route13TextPointers, Route13Script ; blocks, texts, scripts
- db NORTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_13, ROUTE_12, 20, 0, Route12Blocks
- WEST_MAP_CONNECTION ROUTE_13, ROUTE_14, 0, 0, Route14Blocks
- dw Route13Object ; objects
diff --git a/data/mapHeaders/route14.asm b/data/mapHeaders/route14.asm
deleted file mode 100755
index f860d332..00000000
--- a/data/mapHeaders/route14.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route14_h:
- db OVERWORLD ; tileset
- db ROUTE_14_HEIGHT, ROUTE_14_WIDTH ; dimensions (y, x)
- dw Route14Blocks, Route14TextPointers, Route14Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_14, ROUTE_15, 18, 0, Route15Blocks
- EAST_MAP_CONNECTION ROUTE_14, ROUTE_13, 0, 0, Route13Blocks
- dw Route14Object ; objects
diff --git a/data/mapHeaders/route15.asm b/data/mapHeaders/route15.asm
deleted file mode 100755
index 48d5ff20..00000000
--- a/data/mapHeaders/route15.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route15_h:
- db OVERWORLD ; tileset
- db ROUTE_15_HEIGHT, ROUTE_15_WIDTH ; dimensions (y, x)
- dw Route15Blocks, Route15TextPointers, Route15Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_15, FUCHSIA_CITY, -3, 1, FuchsiaCityBlocks
- EAST_MAP_CONNECTION ROUTE_15, ROUTE_14, -3, 15, Route14Blocks
- dw Route15Object ; objects
diff --git a/data/mapHeaders/route15gate.asm b/data/mapHeaders/route15gate.asm
deleted file mode 100755
index 072d8f72..00000000
--- a/data/mapHeaders/route15gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route15Gate_h:
- db GATE ; tileset
- db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route15GateBlocks, Route15GateTextPointers, Route15GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route15GateObject ; objects
diff --git a/data/mapHeaders/route15gateupstairs.asm b/data/mapHeaders/route15gateupstairs.asm
deleted file mode 100755
index 96e7e2ca..00000000
--- a/data/mapHeaders/route15gateupstairs.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route15GateUpstairs_h:
- db GATE ; tileset
- db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route15GateUpstairsBlocks, Route15GateUpstairsTextPointers, Route15GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route15GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route16.asm b/data/mapHeaders/route16.asm
deleted file mode 100755
index eee71ba2..00000000
--- a/data/mapHeaders/route16.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route16_h:
- db OVERWORLD ; tileset
- db ROUTE_16_HEIGHT, ROUTE_16_WIDTH ; dimensions (y, x)
- dw Route16Blocks, Route16TextPointers, Route16Script ; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_16, ROUTE_17, 0, 0, Route17Blocks
- EAST_MAP_CONNECTION ROUTE_16, CELADON_CITY, -3, 1, CeladonCityBlocks, 1
- dw Route16Object ; objects
diff --git a/data/mapHeaders/route16gate.asm b/data/mapHeaders/route16gate.asm
deleted file mode 100755
index b3381258..00000000
--- a/data/mapHeaders/route16gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route16Gate_h:
- db GATE ; tileset
- db ROUTE_16_GATE_1F_HEIGHT, ROUTE_16_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route16GateBlocks, Route16GateTextPointers, Route16GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route16GateObject ; objects
diff --git a/data/mapHeaders/route16gateupstairs.asm b/data/mapHeaders/route16gateupstairs.asm
deleted file mode 100755
index e8dd7d45..00000000
--- a/data/mapHeaders/route16gateupstairs.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route16GateUpstairs_h:
- db GATE ; tileset
- db ROUTE_16_GATE_2F_HEIGHT, ROUTE_16_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route16GateUpstairsBlocks, Route16GateUpstairsTextPointers, Route16GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route16GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route16house.asm b/data/mapHeaders/route16house.asm
deleted file mode 100755
index 5945e11b..00000000
--- a/data/mapHeaders/route16house.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route16House_h:
- db HOUSE ; tileset
- db ROUTE_16_HOUSE_HEIGHT, ROUTE_16_HOUSE_WIDTH ; dimensions (y, x)
- dw Route16HouseBlocks, Route16HouseTextPointers, Route16HouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route16HouseObject ; objects
diff --git a/data/mapHeaders/route17.asm b/data/mapHeaders/route17.asm
deleted file mode 100755
index 82a5d0f4..00000000
--- a/data/mapHeaders/route17.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route17_h:
- db OVERWORLD ; tileset
- db ROUTE_17_HEIGHT, ROUTE_17_WIDTH ; dimensions (y, x)
- dw Route17Blocks, Route17TextPointers, Route17Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_17, ROUTE_16, 0, 0, Route16Blocks
- SOUTH_MAP_CONNECTION ROUTE_17, ROUTE_18, 0, 0, Route18Blocks, 1
- dw Route17Object ; objects
diff --git a/data/mapHeaders/route18.asm b/data/mapHeaders/route18.asm
deleted file mode 100755
index 180111b5..00000000
--- a/data/mapHeaders/route18.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route18_h:
- db OVERWORLD ; tileset
- db ROUTE_18_HEIGHT, ROUTE_18_WIDTH ; dimensions (y, x)
- dw Route18Blocks, Route18TextPointers, Route18Script ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_18, ROUTE_17, 0, 0, Route17Blocks
- EAST_MAP_CONNECTION ROUTE_18, FUCHSIA_CITY, -3, 1, FuchsiaCityBlocks, 1
- dw Route18Object ; objects
diff --git a/data/mapHeaders/route18gate.asm b/data/mapHeaders/route18gate.asm
deleted file mode 100755
index 090d43df..00000000
--- a/data/mapHeaders/route18gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route18Gate_h:
- db GATE ; tileset
- db ROUTE_18_GATE_1F_HEIGHT, ROUTE_18_GATE_1F_WIDTH ; dimensions (y, x)
- dw Route18GateBlocks, Route18GateTextPointers, Route18GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route18GateObject ; objects
diff --git a/data/mapHeaders/route18gateupstairs.asm b/data/mapHeaders/route18gateupstairs.asm
deleted file mode 100755
index ac9e3d0a..00000000
--- a/data/mapHeaders/route18gateupstairs.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route18GateUpstairs_h:
- db GATE ; tileset
- db ROUTE_18_GATE_2F_HEIGHT, ROUTE_18_GATE_2F_WIDTH ; dimensions (y, x)
- dw Route18GateUpstairsBlocks, Route18GateUpstairsTextPointers, Route18GateUpstairsScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route18GateUpstairsObject ; objects
diff --git a/data/mapHeaders/route19.asm b/data/mapHeaders/route19.asm
deleted file mode 100755
index 1de353f8..00000000
--- a/data/mapHeaders/route19.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route19_h:
- db OVERWORLD ; tileset
- db ROUTE_19_HEIGHT, ROUTE_19_WIDTH ; dimensions (y, x)
- dw Route19Blocks, Route19TextPointers, Route19Script ; blocks, texts, scripts
- db NORTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_19, FUCHSIA_CITY, -3, 2, FuchsiaCityBlocks
- WEST_MAP_CONNECTION ROUTE_19, ROUTE_20, 18, 0, Route20Blocks
- dw Route19Object ; objects
diff --git a/data/mapHeaders/route2.asm b/data/mapHeaders/route2.asm
deleted file mode 100755
index 38e80842..00000000
--- a/data/mapHeaders/route2.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route2_h:
- db 00 ; Tileset
- db ROUTE_2_HEIGHT,ROUTE_2_WIDTH ;Height,Width blocks (1 block = 4x4 tiles)
- dw Route2Blocks, Route2TextPointers, Route2Script
- db NORTH | SOUTH ;Connection Byte
- NORTH_MAP_CONNECTION ROUTE_2, PEWTER_CITY, -3, 2, PewterCityBlocks
- SOUTH_MAP_CONNECTION ROUTE_2, VIRIDIAN_CITY, -3, 2, ViridianCityBlocks, 1
- dw Route2Object ;Object Data Pointer
diff --git a/data/mapHeaders/route20.asm b/data/mapHeaders/route20.asm
deleted file mode 100755
index f871179f..00000000
--- a/data/mapHeaders/route20.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route20_h:
- db OVERWORLD ; tileset
- db ROUTE_20_HEIGHT, ROUTE_20_WIDTH ; dimensions (y, x)
- dw Route20Blocks, Route20TextPointers, Route20Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_20, CINNABAR_ISLAND, 0, 0, CinnabarIslandBlocks
- EAST_MAP_CONNECTION ROUTE_20, ROUTE_19, -3, 15, Route19Blocks
- dw Route20Object ; objects
diff --git a/data/mapHeaders/route21.asm b/data/mapHeaders/route21.asm
deleted file mode 100755
index a2c06868..00000000
--- a/data/mapHeaders/route21.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route21_h:
- db OVERWORLD ; tileset
- db ROUTE_21_HEIGHT, ROUTE_21_WIDTH ; dimensions (y, x)
- dw Route21Blocks, Route21TextPointers, Route21Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_21, PALLET_TOWN, 0, 0, PalletTownBlocks
- SOUTH_MAP_CONNECTION ROUTE_21, CINNABAR_ISLAND, 0, 0, CinnabarIslandBlocks, 1
- dw Route21Object ; objects
diff --git a/data/mapHeaders/route22.asm b/data/mapHeaders/route22.asm
deleted file mode 100755
index c227d433..00000000
--- a/data/mapHeaders/route22.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route22_h:
- db OVERWORLD ; tileset
- db ROUTE_22_HEIGHT, ROUTE_22_WIDTH ; dimensions (y, x)
- dw Route22Blocks, Route22TextPointers, Route22Script ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION ROUTE_22, ROUTE_23, 0, 0, Route23Blocks
- EAST_MAP_CONNECTION ROUTE_22, VIRIDIAN_CITY, -3, 1, ViridianCityBlocks, 1
- dw Route22Object ; objects
diff --git a/data/mapHeaders/route22gate.asm b/data/mapHeaders/route22gate.asm
deleted file mode 100755
index 7b8963ba..00000000
--- a/data/mapHeaders/route22gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route22Gate_h:
- db GATE ; tileset
- db ROUTE_22_GATE_HEIGHT, ROUTE_22_GATE_WIDTH ; dimensions (y, x)
- dw Route22GateBlocks, Route22GateTextPointers, Route22GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route22GateObject ; objects
diff --git a/data/mapHeaders/route23.asm b/data/mapHeaders/route23.asm
deleted file mode 100755
index bec192c2..00000000
--- a/data/mapHeaders/route23.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route23_h:
- db PLATEAU ; tileset
- db ROUTE_23_HEIGHT, ROUTE_23_WIDTH ; dimensions (y, x)
- dw Route23Blocks, Route23TextPointers, Route23Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_23, INDIGO_PLATEAU, 0, 0, IndigoPlateauBlocks
- SOUTH_MAP_CONNECTION ROUTE_23, ROUTE_22, 0, 0, Route22Blocks, 1
- dw Route23Object ; objects
diff --git a/data/mapHeaders/route24.asm b/data/mapHeaders/route24.asm
deleted file mode 100755
index 9a313aba..00000000
--- a/data/mapHeaders/route24.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route24_h:
- db OVERWORLD ; tileset
- db ROUTE_24_HEIGHT, ROUTE_24_WIDTH ; dimensions (y, x)
- dw Route24Blocks, Route24TextPointers, Route24Script ; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_24, CERULEAN_CITY, -3, 2, CeruleanCityBlocks, 1
- EAST_MAP_CONNECTION ROUTE_24, ROUTE_25, 0, 0, Route25Blocks
- dw Route24Object ; objects
diff --git a/data/mapHeaders/route25.asm b/data/mapHeaders/route25.asm
deleted file mode 100755
index 39ffa45d..00000000
--- a/data/mapHeaders/route25.asm
+++ /dev/null
@@ -1,7 +0,0 @@
-Route25_h:
- db OVERWORLD ; tileset
- db ROUTE_25_HEIGHT, ROUTE_25_WIDTH ; dimensions (y, x)
- dw Route25Blocks, Route25TextPointers, Route25Script ; blocks, texts, scripts
- db WEST ; connections
- WEST_MAP_CONNECTION ROUTE_25, ROUTE_24, 0, 0, Route24Blocks
- dw Route25Object ; objects
diff --git a/data/mapHeaders/route2gate.asm b/data/mapHeaders/route2gate.asm
deleted file mode 100755
index 5cb7bcbc..00000000
--- a/data/mapHeaders/route2gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route2Gate_h:
- db GATE ; tileset
- db ROUTE_2_GATE_HEIGHT, ROUTE_2_GATE_WIDTH ; dimensions (y, x)
- dw Route2GateBlocks, Route2GateTextPointers, Route2GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route2GateObject ; objects
diff --git a/data/mapHeaders/route2house.asm b/data/mapHeaders/route2house.asm
deleted file mode 100755
index c7c140f6..00000000
--- a/data/mapHeaders/route2house.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route2House_h:
- db HOUSE ; tileset
- db ROUTE_2_HOUSE_HEIGHT, ROUTE_2_HOUSE_WIDTH ; dimensions (y, x)
- dw Route2HouseBlocks, Route2HouseTextPointers, Route2HouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route2HouseObject ; objects
diff --git a/data/mapHeaders/route3.asm b/data/mapHeaders/route3.asm
deleted file mode 100755
index 19adfea8..00000000
--- a/data/mapHeaders/route3.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route3_h:
- db OVERWORLD ; tileset
- db ROUTE_3_HEIGHT, ROUTE_3_WIDTH ; dimensions (y, x)
- dw Route3Blocks, Route3TextPointers, Route3Script ; blocks, texts, scripts
- db NORTH | WEST ; connections
- NORTH_MAP_CONNECTION ROUTE_3, ROUTE_4, 25, 0, Route4Blocks
- WEST_MAP_CONNECTION ROUTE_3, PEWTER_CITY, -3, 1, PewterCityBlocks
- dw Route3Object ; objects
diff --git a/data/mapHeaders/route4.asm b/data/mapHeaders/route4.asm
deleted file mode 100755
index a322f23c..00000000
--- a/data/mapHeaders/route4.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route4_h:
- db OVERWORLD ; tileset
- db ROUTE_4_HEIGHT, ROUTE_4_WIDTH ; dimensions (y, x)
- dw Route4Blocks, Route4TextPointers, Route4Script; blocks, texts, scripts
- db SOUTH | EAST ; connections
- SOUTH_MAP_CONNECTION ROUTE_4, ROUTE_3, -3, 22, Route3Blocks
- EAST_MAP_CONNECTION ROUTE_4, CERULEAN_CITY, -3, 1, CeruleanCityBlocks, 1
- dw Route4Object ; objects
diff --git a/data/mapHeaders/route5.asm b/data/mapHeaders/route5.asm
deleted file mode 100755
index b982c02d..00000000
--- a/data/mapHeaders/route5.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route5_h:
- db OVERWORLD ; tileset
- db ROUTE_5_HEIGHT, ROUTE_5_WIDTH ; dimensions (y, x)
- dw Route5Blocks, Route5TextPointers, Route5Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_5, CERULEAN_CITY, -3, 2, CeruleanCityBlocks
- SOUTH_MAP_CONNECTION ROUTE_5, SAFFRON_CITY, -3, 2, SaffronCityBlocks, 1
- dw Route5Object ; objects
diff --git a/data/mapHeaders/route5gate.asm b/data/mapHeaders/route5gate.asm
deleted file mode 100755
index 68810da1..00000000
--- a/data/mapHeaders/route5gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route5Gate_h:
- db GATE ; tileset
- db ROUTE_5_GATE_HEIGHT, ROUTE_5_GATE_WIDTH ; dimensions (y, x)
- dw Route5GateBlocks, Route5GateTextPointers, Route5GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route5GateObject ; objects
diff --git a/data/mapHeaders/route6.asm b/data/mapHeaders/route6.asm
deleted file mode 100755
index 6ed13d4e..00000000
--- a/data/mapHeaders/route6.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route6_h:
- db OVERWORLD ; tileset
- db ROUTE_6_HEIGHT, ROUTE_6_WIDTH ; dimensions (y, x)
- dw Route6Blocks, Route6TextPointers, Route6Script ; blocks, texts, scripts
- db NORTH | SOUTH ; connections
- NORTH_MAP_CONNECTION ROUTE_6, SAFFRON_CITY, -3, 2, SaffronCityBlocks
- SOUTH_MAP_CONNECTION ROUTE_6, VERMILION_CITY, -3, 2, VermilionCityBlocks, 1
- dw Route6Object ; objects
diff --git a/data/mapHeaders/route6gate.asm b/data/mapHeaders/route6gate.asm
deleted file mode 100755
index f689240c..00000000
--- a/data/mapHeaders/route6gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route6Gate_h:
- db GATE ; tileset
- db ROUTE_6_GATE_HEIGHT, ROUTE_6_GATE_WIDTH ; dimensions (y, x)
- dw Route6GateBlocks, Route6GateTextPointers, Route6GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route6GateObject ; objects
diff --git a/data/mapHeaders/route7.asm b/data/mapHeaders/route7.asm
deleted file mode 100755
index 62f3bedf..00000000
--- a/data/mapHeaders/route7.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route7_h:
- db OVERWORLD ; tileset
- db ROUTE_7_HEIGHT, ROUTE_7_WIDTH ; dimensions (y, x)
- dw Route7Blocks, Route7TextPointers, Route7Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_7, CELADON_CITY, -3, 1, CeladonCityBlocks
- EAST_MAP_CONNECTION ROUTE_7, SAFFRON_CITY, -3, 1, SaffronCityBlocks, 1
- dw Route7Object ; objects
diff --git a/data/mapHeaders/route7gate.asm b/data/mapHeaders/route7gate.asm
deleted file mode 100755
index 9e01914f..00000000
--- a/data/mapHeaders/route7gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route7Gate_h:
- db GATE ; tileset
- db ROUTE_7_GATE_HEIGHT, ROUTE_7_GATE_WIDTH ; dimensions (y, x)
- dw Route7GateBlocks, Route7GateTextPointers, Route7GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route7GateObject ; objects
diff --git a/data/mapHeaders/route8.asm b/data/mapHeaders/route8.asm
deleted file mode 100755
index 5187fd8f..00000000
--- a/data/mapHeaders/route8.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route8_h:
- db OVERWORLD ; tileset
- db ROUTE_8_HEIGHT, ROUTE_8_WIDTH ; dimensions (y, x)
- dw Route8Blocks, Route8TextPointers, Route8Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_8, SAFFRON_CITY, -3, 1, SaffronCityBlocks
- EAST_MAP_CONNECTION ROUTE_8, LAVENDER_TOWN, 0, 0, LavenderTownBlocks
- dw Route8Object ; objects
diff --git a/data/mapHeaders/route8gate.asm b/data/mapHeaders/route8gate.asm
deleted file mode 100755
index d206e978..00000000
--- a/data/mapHeaders/route8gate.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-Route8Gate_h:
- db GATE ; tileset
- db ROUTE_8_GATE_HEIGHT, ROUTE_8_GATE_WIDTH ; dimensions (y, x)
- dw Route8GateBlocks, Route8GateTextPointers, Route8GateScript ; blocks, texts, scripts
- db $00 ; connections
- dw Route8GateObject ; objects
diff --git a/data/mapHeaders/route9.asm b/data/mapHeaders/route9.asm
deleted file mode 100755
index 044a4ec0..00000000
--- a/data/mapHeaders/route9.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-Route9_h:
- db OVERWORLD ; tileset
- db ROUTE_9_HEIGHT, ROUTE_9_WIDTH ; dimensions (y, x)
- dw Route9Blocks, Route9TextPointers, Route9Script ; blocks, texts, scripts
- db WEST | EAST ; connections
- WEST_MAP_CONNECTION ROUTE_9, CERULEAN_CITY, -3, 1, CeruleanCityBlocks
- EAST_MAP_CONNECTION ROUTE_9, ROUTE_10, 0, 0, Route10Blocks, 1
- dw Route9Object ; objects
diff --git a/data/mapHeaders/safarizonecenter.asm b/data/mapHeaders/safarizonecenter.asm
deleted file mode 100755
index 6da27c12..00000000
--- a/data/mapHeaders/safarizonecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneCenter_h:
- db FOREST ; tileset
- db SAFARI_ZONE_CENTER_HEIGHT, SAFARI_ZONE_CENTER_WIDTH ; dimensions (y, x)
- dw SafariZoneCenterBlocks, SafariZoneCenterTextPointers, SafariZoneCenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneCenterObject ; objects
diff --git a/data/mapHeaders/safarizoneeast.asm b/data/mapHeaders/safarizoneeast.asm
deleted file mode 100755
index 089620dc..00000000
--- a/data/mapHeaders/safarizoneeast.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneEast_h:
- db FOREST ; tileset
- db SAFARI_ZONE_EAST_HEIGHT, SAFARI_ZONE_EAST_WIDTH ; dimensions (y, x)
- dw SafariZoneEastBlocks, SafariZoneEastTextPointers, SafariZoneEastScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneEastObject ; objects
diff --git a/data/mapHeaders/safarizoneentrance.asm b/data/mapHeaders/safarizoneentrance.asm
deleted file mode 100755
index 1122d5a3..00000000
--- a/data/mapHeaders/safarizoneentrance.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneEntrance_h:
- db GATE ; tileset
- db SAFARI_ZONE_ENTRANCE_HEIGHT, SAFARI_ZONE_ENTRANCE_WIDTH ; dimensions (y, x)
- dw SafariZoneEntranceBlocks, SafariZoneEntranceTextPointers, SafariZoneEntranceScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneEntranceObject ; objects
diff --git a/data/mapHeaders/safarizonenorth.asm b/data/mapHeaders/safarizonenorth.asm
deleted file mode 100755
index a3a46769..00000000
--- a/data/mapHeaders/safarizonenorth.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneNorth_h:
- db FOREST ; tileset
- db SAFARI_ZONE_NORTH_HEIGHT, SAFARI_ZONE_NORTH_WIDTH ; dimensions (y, x)
- dw SafariZoneNorthBlocks, SafariZoneNorthTextPointers, SafariZoneNorthScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneNorthObject ; objects
diff --git a/data/mapHeaders/safarizoneresthouse1.asm b/data/mapHeaders/safarizoneresthouse1.asm
deleted file mode 100755
index b2988b47..00000000
--- a/data/mapHeaders/safarizoneresthouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneRestHouse1_h:
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_1_HEIGHT, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse1Blocks, SafariZoneRestHouse1TextPointers, SafariZoneRestHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse1Object ; objects
diff --git a/data/mapHeaders/safarizoneresthouse2.asm b/data/mapHeaders/safarizoneresthouse2.asm
deleted file mode 100755
index 589d9850..00000000
--- a/data/mapHeaders/safarizoneresthouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneRestHouse2_h:
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_2_HEIGHT, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse2Blocks, SafariZoneRestHouse2TextPointers, SafariZoneRestHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse2Object ; objects
diff --git a/data/mapHeaders/safarizoneresthouse3.asm b/data/mapHeaders/safarizoneresthouse3.asm
deleted file mode 100755
index 21ffd3b6..00000000
--- a/data/mapHeaders/safarizoneresthouse3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneRestHouse3_h:
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_3_HEIGHT, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse3Blocks, SafariZoneRestHouse3TextPointers, SafariZoneRestHouse3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse3Object ; objects
diff --git a/data/mapHeaders/safarizoneresthouse4.asm b/data/mapHeaders/safarizoneresthouse4.asm
deleted file mode 100755
index fa7de7ad..00000000
--- a/data/mapHeaders/safarizoneresthouse4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneRestHouse4_h:
- db GATE ; tileset
- db SAFARI_ZONE_REST_HOUSE_4_HEIGHT, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; dimensions (y, x)
- dw SafariZoneRestHouse4Blocks, SafariZoneRestHouse4TextPointers, SafariZoneRestHouse4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneRestHouse4Object ; objects
diff --git a/data/mapHeaders/safarizonesecrethouse.asm b/data/mapHeaders/safarizonesecrethouse.asm
deleted file mode 100755
index 6b081b1a..00000000
--- a/data/mapHeaders/safarizonesecrethouse.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneSecretHouse_h:
- db LAB ; tileset
- db SAFARI_ZONE_SECRET_HOUSE_HEIGHT, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; dimensions (y, x)
- dw SafariZoneSecretHouseBlocks, SafariZoneSecretHouseTextPointers, SafariZoneSecretHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneSecretHouseObject ; objects
diff --git a/data/mapHeaders/safarizonewest.asm b/data/mapHeaders/safarizonewest.asm
deleted file mode 100755
index c1c54d13..00000000
--- a/data/mapHeaders/safarizonewest.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SafariZoneWest_h:
- db FOREST ; tileset
- db SAFARI_ZONE_WEST_HEIGHT, SAFARI_ZONE_WEST_WIDTH ; dimensions (y, x)
- dw SafariZoneWestBlocks, SafariZoneWestTextPointers, SafariZoneWestScript ; blocks, texts, scripts
- db $00 ; connections
- dw SafariZoneWestObject ; objects
diff --git a/data/mapHeaders/saffroncity.asm b/data/mapHeaders/saffroncity.asm
deleted file mode 100755
index 8f4ea922..00000000
--- a/data/mapHeaders/saffroncity.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-SaffronCity_h:
- db OVERWORLD ; tileset
- db SAFFRON_CITY_HEIGHT, SAFFRON_CITY_WIDTH ; dimensions (y, x)
- dw SaffronCityBlocks, SaffronCityTextPointers, SaffronCityScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST | EAST ; connections
- NORTH_MAP_CONNECTION SAFFRON_CITY, ROUTE_5, 5, 0, Route5Blocks
- SOUTH_MAP_CONNECTION SAFFRON_CITY, ROUTE_6, 5, 0, Route6Blocks, 1
- WEST_MAP_CONNECTION SAFFRON_CITY, ROUTE_7, 4, 0, Route7Blocks
- EAST_MAP_CONNECTION SAFFRON_CITY, ROUTE_8, 4, 0, Route8Blocks
- dw SaffronCityObject ; objects
diff --git a/data/mapHeaders/saffrongym.asm b/data/mapHeaders/saffrongym.asm
deleted file mode 100755
index da3b4c04..00000000
--- a/data/mapHeaders/saffrongym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SaffronGym_h:
- db FACILITY ; tileset
- db SAFFRON_GYM_HEIGHT, SAFFRON_GYM_WIDTH ; dimensions (y, x)
- dw SaffronGymBlocks, SaffronGymTextPointers, SaffronGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronGymObject ; objects
diff --git a/data/mapHeaders/saffronhouse1.asm b/data/mapHeaders/saffronhouse1.asm
deleted file mode 100755
index 9e22b03b..00000000
--- a/data/mapHeaders/saffronhouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SaffronHouse1_h:
- db HOUSE ; tileset
- db SAFFRON_HOUSE_1_HEIGHT, SAFFRON_HOUSE_1_WIDTH ; dimensions (y, x)
- dw SaffronHouse1Blocks, SaffronHouse1TextPointers, SaffronHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronHouse1Object ; objects
diff --git a/data/mapHeaders/saffronhouse2.asm b/data/mapHeaders/saffronhouse2.asm
deleted file mode 100755
index c38d0231..00000000
--- a/data/mapHeaders/saffronhouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SaffronHouse2_h:
- db HOUSE ; tileset
- db SAFFRON_HOUSE_2_HEIGHT, SAFFRON_HOUSE_2_WIDTH ; dimensions (y, x)
- dw SaffronHouse2Blocks, SaffronHouse2TextPointers, SaffronHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronHouse2Object ; objects
diff --git a/data/mapHeaders/saffronmart.asm b/data/mapHeaders/saffronmart.asm
deleted file mode 100755
index 747e4da9..00000000
--- a/data/mapHeaders/saffronmart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SaffronMart_h:
- db MART ; tileset
- db SAFFRON_MART_HEIGHT, SAFFRON_MART_WIDTH ; dimensions (y, x)
- dw SaffronMartBlocks, SaffronMartTextPointers, SaffronMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronMartObject ; objects
diff --git a/data/mapHeaders/saffronpokecenter.asm b/data/mapHeaders/saffronpokecenter.asm
deleted file mode 100755
index aa972289..00000000
--- a/data/mapHeaders/saffronpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SaffronPokecenter_h:
- db POKECENTER ; tileset
- db SAFFRON_POKECENTER_HEIGHT, SAFFRON_POKECENTER_WIDTH ; dimensions (y, x)
- dw SaffronPokecenterBlocks, SaffronPokecenterTextPointers, SaffronPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw SaffronPokecenterObject ; objects
diff --git a/data/mapHeaders/school.asm b/data/mapHeaders/school.asm
deleted file mode 100755
index 8ace4fba..00000000
--- a/data/mapHeaders/school.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-School_h:
- db HOUSE ; tileset
- db VIRIDIAN_SCHOOL_HEIGHT, VIRIDIAN_SCHOOL_WIDTH ; dimensions (y, x)
- dw SchoolBlocks, SchoolTextPointers, SchoolScript ; blocks, texts, scripts
- db $00 ; connections
- dw SchoolObject ; objects
diff --git a/data/mapHeaders/seafoamislands1.asm b/data/mapHeaders/seafoamislands1.asm
deleted file mode 100755
index f52a65a8..00000000
--- a/data/mapHeaders/seafoamislands1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SeafoamIslands1_h:
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_1_HEIGHT, SEAFOAM_ISLANDS_1_WIDTH ; dimensions (y, x)
- dw SeafoamIslands1Blocks, SeafoamIslands1TextPointers, SeafoamIslands1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands1Object ; objects
diff --git a/data/mapHeaders/seafoamislands2.asm b/data/mapHeaders/seafoamislands2.asm
deleted file mode 100755
index 08ec4bfa..00000000
--- a/data/mapHeaders/seafoamislands2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SeafoamIslands2_h:
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_2_HEIGHT, SEAFOAM_ISLANDS_2_WIDTH ; dimensions (y, x)
- dw SeafoamIslands2Blocks, SeafoamIslands2TextPointers, SeafoamIslands2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands2Object ; objects
diff --git a/data/mapHeaders/seafoamislands3.asm b/data/mapHeaders/seafoamislands3.asm
deleted file mode 100755
index 4050cd71..00000000
--- a/data/mapHeaders/seafoamislands3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SeafoamIslands3_h:
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_3_HEIGHT, SEAFOAM_ISLANDS_3_WIDTH ; dimensions (y, x)
- dw SeafoamIslands3Blocks, SeafoamIslands3TextPointers, SeafoamIslands3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands3Object ; objects
diff --git a/data/mapHeaders/seafoamislands4.asm b/data/mapHeaders/seafoamislands4.asm
deleted file mode 100755
index d3912ce0..00000000
--- a/data/mapHeaders/seafoamislands4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SeafoamIslands4_h:
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_4_HEIGHT, SEAFOAM_ISLANDS_4_WIDTH ; dimensions (y, x)
- dw SeafoamIslands4Blocks, SeafoamIslands4TextPointers, SeafoamIslands4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands4Object ; objects
diff --git a/data/mapHeaders/seafoamislands5.asm b/data/mapHeaders/seafoamislands5.asm
deleted file mode 100755
index 2ae6d4b7..00000000
--- a/data/mapHeaders/seafoamislands5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SeafoamIslands5_h:
- db CAVERN ; tileset
- db SEAFOAM_ISLANDS_5_HEIGHT, SEAFOAM_ISLANDS_5_WIDTH ; dimensions (y, x)
- dw SeafoamIslands5Blocks, SeafoamIslands5TextPointers, SeafoamIslands5Script ; blocks, texts, scripts
- db $00 ; connections
- dw SeafoamIslands5Object ; objects
diff --git a/data/mapHeaders/silphco1.asm b/data/mapHeaders/silphco1.asm
deleted file mode 100755
index 203f08b7..00000000
--- a/data/mapHeaders/silphco1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo1_h:
- db FACILITY ; tileset
- db SILPH_CO_1F_HEIGHT, SILPH_CO_1F_WIDTH ; dimensions (y, x)
- dw SilphCo1Blocks, SilphCo1TextPointers, SilphCo1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo1Object ; objects
diff --git a/data/mapHeaders/silphco10.asm b/data/mapHeaders/silphco10.asm
deleted file mode 100755
index a16a6323..00000000
--- a/data/mapHeaders/silphco10.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo10_h:
- db FACILITY ; tileset
- db SILPH_CO_10F_HEIGHT, SILPH_CO_10F_WIDTH ; dimensions (y, x)
- dw SilphCo10Blocks, SilphCo10TextPointers, SilphCo10Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo10Object ; objects
diff --git a/data/mapHeaders/silphco11.asm b/data/mapHeaders/silphco11.asm
deleted file mode 100755
index a5d2f1b0..00000000
--- a/data/mapHeaders/silphco11.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo11_h:
- db INTERIOR ; tileset
- db SILPH_CO_11F_HEIGHT, SILPH_CO_11F_WIDTH ; dimensions (y, x)
- dw SilphCo11Blocks, SilphCo11TextPointers, SilphCo11Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo11Object ; objects
diff --git a/data/mapHeaders/silphco2.asm b/data/mapHeaders/silphco2.asm
deleted file mode 100755
index f0783e98..00000000
--- a/data/mapHeaders/silphco2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo2_h:
- db FACILITY ; tileset
- db SILPH_CO_2F_HEIGHT, SILPH_CO_2F_WIDTH ; dimensions (y, x)
- dw SilphCo2Blocks, SilphCo2TextPointers, SilphCo2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo2Object ; objects
diff --git a/data/mapHeaders/silphco3.asm b/data/mapHeaders/silphco3.asm
deleted file mode 100755
index b89a3802..00000000
--- a/data/mapHeaders/silphco3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo3_h:
- db FACILITY ; tileset
- db SILPH_CO_3F_HEIGHT, SILPH_CO_3F_WIDTH ; dimensions (y, x)
- dw SilphCo3Blocks, SilphCo3TextPointers, SilphCo3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo3Object ; objects
diff --git a/data/mapHeaders/silphco4.asm b/data/mapHeaders/silphco4.asm
deleted file mode 100755
index 3c03a771..00000000
--- a/data/mapHeaders/silphco4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo4_h:
- db FACILITY ; tileset
- db SILPH_CO_4F_HEIGHT, SILPH_CO_4F_WIDTH ; dimensions (y, x)
- dw SilphCo4Blocks, SilphCo4TextPointers, SilphCo4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo4Object ; objects
diff --git a/data/mapHeaders/silphco5.asm b/data/mapHeaders/silphco5.asm
deleted file mode 100755
index 42704025..00000000
--- a/data/mapHeaders/silphco5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo5_h:
- db FACILITY ; tileset
- db SILPH_CO_5F_HEIGHT, SILPH_CO_5F_WIDTH ; dimensions (y, x)
- dw SilphCo5Blocks, SilphCo5TextPointers, SilphCo5Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo5Object ; objects
diff --git a/data/mapHeaders/silphco6.asm b/data/mapHeaders/silphco6.asm
deleted file mode 100755
index c204360a..00000000
--- a/data/mapHeaders/silphco6.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo6_h:
- db FACILITY ; tileset
- db SILPH_CO_6F_HEIGHT, SILPH_CO_6F_WIDTH ; dimensions (y, x)
- dw SilphCo6Blocks, SilphCo6TextPointers, SilphCo6Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo6Object ; objects
diff --git a/data/mapHeaders/silphco7.asm b/data/mapHeaders/silphco7.asm
deleted file mode 100755
index bc31b335..00000000
--- a/data/mapHeaders/silphco7.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo7_h:
- db FACILITY ; tileset
- db SILPH_CO_7F_HEIGHT, SILPH_CO_7F_WIDTH ; dimensions (y, x)
- dw SilphCo7Blocks, SilphCo7TextPointers, SilphCo7Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo7Object ; objects
diff --git a/data/mapHeaders/silphco8.asm b/data/mapHeaders/silphco8.asm
deleted file mode 100755
index aa3e0317..00000000
--- a/data/mapHeaders/silphco8.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo8_h:
- db FACILITY ; tileset
- db SILPH_CO_8F_HEIGHT, SILPH_CO_8F_WIDTH ; dimensions (y, x)
- dw SilphCo8Blocks, SilphCo8TextPointers, SilphCo8Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo8Object ; objects
diff --git a/data/mapHeaders/silphco9.asm b/data/mapHeaders/silphco9.asm
deleted file mode 100755
index 97427fa3..00000000
--- a/data/mapHeaders/silphco9.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCo9_h:
- db FACILITY ; tileset
- db SILPH_CO_9F_HEIGHT, SILPH_CO_9F_WIDTH ; dimensions (y, x)
- dw SilphCo9Blocks, SilphCo9TextPointers, SilphCo9Script ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCo9Object ; objects
diff --git a/data/mapHeaders/silphcoelevator.asm b/data/mapHeaders/silphcoelevator.asm
deleted file mode 100755
index 8a6ae1ca..00000000
--- a/data/mapHeaders/silphcoelevator.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SilphCoElevator_h:
- db LOBBY ; tileset
- db SILPH_CO_ELEVATOR_HEIGHT, SILPH_CO_ELEVATOR_WIDTH ; dimensions (y, x)
- dw SilphCoElevatorBlocks, SilphCoElevatorTextPointers, SilphCoElevatorScript ; blocks, texts, scripts
- db $00 ; connections
- dw SilphCoElevatorObject ; objects
diff --git a/data/mapHeaders/ssanne1.asm b/data/mapHeaders/ssanne1.asm
deleted file mode 100755
index e6b48564..00000000
--- a/data/mapHeaders/ssanne1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne1_h:
- db SHIP ; tileset
- db SS_ANNE_1_HEIGHT, SS_ANNE_1_WIDTH ; dimensions (y, x)
- dw SSAnne1Blocks, SSAnne1TextPointers, SSAnne1Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne1Object ; objects
diff --git a/data/mapHeaders/ssanne10.asm b/data/mapHeaders/ssanne10.asm
deleted file mode 100755
index ef07424b..00000000
--- a/data/mapHeaders/ssanne10.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne10_h:
- db SHIP ; tileset
- db SS_ANNE_10_HEIGHT, SS_ANNE_10_WIDTH ; dimensions (y, x)
- dw SSAnne10Blocks, SSAnne10TextPointers, SSAnne10Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne10Object ; objects
diff --git a/data/mapHeaders/ssanne2.asm b/data/mapHeaders/ssanne2.asm
deleted file mode 100755
index cd5f3aa4..00000000
--- a/data/mapHeaders/ssanne2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne2_h:
- db SHIP ; tileset
- db SS_ANNE_2_HEIGHT, SS_ANNE_2_WIDTH ; dimensions (y, x)
- dw SSAnne2Blocks, SSAnne2TextPointers, SSAnne2Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne2Object ; objects
diff --git a/data/mapHeaders/ssanne3.asm b/data/mapHeaders/ssanne3.asm
deleted file mode 100755
index ffa57ddd..00000000
--- a/data/mapHeaders/ssanne3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne3_h:
- db SHIP ; tileset
- db SS_ANNE_3_HEIGHT, SS_ANNE_3_WIDTH ; dimensions (y, x)
- dw SSAnne3Blocks, SSAnne3TextPointers, SSAnne3Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne3Object ; objects
diff --git a/data/mapHeaders/ssanne4.asm b/data/mapHeaders/ssanne4.asm
deleted file mode 100755
index 492b4b8d..00000000
--- a/data/mapHeaders/ssanne4.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne4_h:
- db SHIP ; tileset
- db SS_ANNE_4_HEIGHT, SS_ANNE_4_WIDTH ; dimensions (y, x)
- dw SSAnne4Blocks, SSAnne4TextPointers, SSAnne4Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne4Object ; objects
diff --git a/data/mapHeaders/ssanne5.asm b/data/mapHeaders/ssanne5.asm
deleted file mode 100755
index 29ffb6b9..00000000
--- a/data/mapHeaders/ssanne5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne5_h:
- db SHIP ; tileset
- db SS_ANNE_5_HEIGHT, SS_ANNE_5_WIDTH ; dimensions (y, x)
- dw SSAnne5Blocks, SSAnne5TextPointers, SSAnne5Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne5Object ; objects
diff --git a/data/mapHeaders/ssanne6.asm b/data/mapHeaders/ssanne6.asm
deleted file mode 100755
index e347528a..00000000
--- a/data/mapHeaders/ssanne6.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne6_h:
- db SHIP ; tileset
- db SS_ANNE_6_HEIGHT, SS_ANNE_6_WIDTH ; dimensions (y, x)
- dw SSAnne6Blocks, SSAnne6TextPointers, SSAnne6Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne6Object ; objects
diff --git a/data/mapHeaders/ssanne7.asm b/data/mapHeaders/ssanne7.asm
deleted file mode 100755
index 9b437688..00000000
--- a/data/mapHeaders/ssanne7.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne7_h:
- db SHIP ; tileset
- db SS_ANNE_7_HEIGHT, SS_ANNE_7_WIDTH ; dimensions (y, x)
- dw SSAnne7Blocks, SSAnne7TextPointers, SSAnne7Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne7Object ; objects
diff --git a/data/mapHeaders/ssanne8.asm b/data/mapHeaders/ssanne8.asm
deleted file mode 100755
index 64b5c565..00000000
--- a/data/mapHeaders/ssanne8.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne8_h:
- db SHIP ; tileset
- db SS_ANNE_8_HEIGHT, SS_ANNE_8_WIDTH ; dimensions (y, x)
- dw SSAnne8Blocks, SSAnne8TextPointers, SSAnne8Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne8Object ; objects
diff --git a/data/mapHeaders/ssanne9.asm b/data/mapHeaders/ssanne9.asm
deleted file mode 100755
index c8e6e16f..00000000
--- a/data/mapHeaders/ssanne9.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-SSAnne9_h:
- db SHIP ; tileset
- db SS_ANNE_9_HEIGHT, SS_ANNE_9_WIDTH ; dimensions (y, x)
- dw SSAnne9Blocks, SSAnne9TextPointers, SSAnne9Script ; blocks, texts, scripts
- db $00 ; connections
- dw SSAnne9Object ; objects
diff --git a/data/mapHeaders/tradecenter.asm b/data/mapHeaders/tradecenter.asm
deleted file mode 100644
index 09217ff0..00000000
--- a/data/mapHeaders/tradecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-TradeCenter_h:
- db CLUB ; tileset
- db TRADE_CENTER_HEIGHT, TRADE_CENTER_WIDTH ; dimensions (y, x)
- dw TradeCenterBlocks, TradeCenterTextPointers, TradeCenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw TradeCenterObject ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute5.asm b/data/mapHeaders/undergroundpathentranceroute5.asm
deleted file mode 100755
index 6e2c5727..00000000
--- a/data/mapHeaders/undergroundpathentranceroute5.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathEntranceRoute5_h:
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_5_HEIGHT, PATH_ENTRANCE_ROUTE_5_WIDTH ; dimensions (y, x)
- dw UndergroundPathEntranceRoute5Blocks, UndergroundPathEntranceRoute5TextPointers, UndergroundPathEntranceRoute5Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute5Object ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute6.asm b/data/mapHeaders/undergroundpathentranceroute6.asm
deleted file mode 100755
index bb22e93e..00000000
--- a/data/mapHeaders/undergroundpathentranceroute6.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathEntranceRoute6_h:
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_6_HEIGHT, PATH_ENTRANCE_ROUTE_6_WIDTH ; dimensions (y, x)
- dw UndergroundPathEntranceRoute6Blocks, UndergroundPathEntranceRoute6TextPointers, UndergroundPathEntranceRoute6Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute6Object ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute7.asm b/data/mapHeaders/undergroundpathentranceroute7.asm
deleted file mode 100755
index 49b03415..00000000
--- a/data/mapHeaders/undergroundpathentranceroute7.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathEntranceRoute7_h:
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x)
- dw UndergroundPathEntranceRoute7Blocks, UndergroundPathEntranceRoute7TextPointers, UndergroundPathEntranceRoute7Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute7Object ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute7copy.asm b/data/mapHeaders/undergroundpathentranceroute7copy.asm
deleted file mode 100755
index e12ee454..00000000
--- a/data/mapHeaders/undergroundpathentranceroute7copy.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathEntranceRoute7Copy_h:
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x)
- dw UndergroundPathEntranceRoute7CopyBlocks, UndergroundPathEntranceRoute7CopyTextPointers, UndergroundPathEntranceRoute7CopyScript ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute7CopyObject ; objects
diff --git a/data/mapHeaders/undergroundpathentranceroute8.asm b/data/mapHeaders/undergroundpathentranceroute8.asm
deleted file mode 100755
index c70cb697..00000000
--- a/data/mapHeaders/undergroundpathentranceroute8.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathEntranceRoute8_h:
- db GATE ; tileset
- db PATH_ENTRANCE_ROUTE_8_HEIGHT, PATH_ENTRANCE_ROUTE_8_WIDTH ; dimensions (y, x)
- dw UndergroundPathEntranceRoute8Blocks, UndergroundPathEntranceRoute8TextPointers, UndergroundPathEntranceRoute8Script ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathEntranceRoute8Object ; objects
diff --git a/data/mapHeaders/undergroundpathns.asm b/data/mapHeaders/undergroundpathns.asm
deleted file mode 100755
index 4dc86647..00000000
--- a/data/mapHeaders/undergroundpathns.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathNS_h:
- db UNDERGROUND ; tileset
- db UNDERGROUND_PATH_NS_HEIGHT, UNDERGROUND_PATH_NS_WIDTH ; dimensions (y, x)
- dw UndergroundPathNSBlocks, UndergroundPathNSTextPointers, UndergroundPathNSScript ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathNSObject ; objects
diff --git a/data/mapHeaders/undergroundpathwe.asm b/data/mapHeaders/undergroundpathwe.asm
deleted file mode 100755
index df2f98e1..00000000
--- a/data/mapHeaders/undergroundpathwe.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UndergroundPathWE_h:
- db UNDERGROUND ; tileset
- db UNDERGROUND_PATH_WE_HEIGHT, UNDERGROUND_PATH_WE_WIDTH ; dimensions (y, x)
- dw UndergroundPathWEBlocks, UndergroundPathWETextPointers, UndergroundPathWEScript ; blocks, texts, scripts
- db $00 ; connections
- dw UndergroundPathWEObject ; objects
diff --git a/data/mapHeaders/unknowndungeon1.asm b/data/mapHeaders/unknowndungeon1.asm
deleted file mode 100755
index e784ffac..00000000
--- a/data/mapHeaders/unknowndungeon1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UnknownDungeon1_h:
- db CAVERN ; tileset
- db UNKNOWN_DUNGEON_1_HEIGHT, UNKNOWN_DUNGEON_1_WIDTH ; dimensions (y, x)
- dw UnknownDungeon1Blocks, UnknownDungeon1TextPointers, UnknownDungeon1Script ; blocks, texts, scripts
- db $00 ; connections
- dw UnknownDungeon1Object ; objects
diff --git a/data/mapHeaders/unknowndungeon2.asm b/data/mapHeaders/unknowndungeon2.asm
deleted file mode 100755
index 3c4c8d4e..00000000
--- a/data/mapHeaders/unknowndungeon2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UnknownDungeon2_h:
- db CAVERN ; tileset
- db UNKNOWN_DUNGEON_2_HEIGHT, UNKNOWN_DUNGEON_2_WIDTH ; dimensions (y, x)
- dw UnknownDungeon2Blocks, UnknownDungeon2TextPointers, UnknownDungeon2Script ; blocks, texts, scripts
- db $00 ; connections
- dw UnknownDungeon2Object ; objects
diff --git a/data/mapHeaders/unknowndungeon3.asm b/data/mapHeaders/unknowndungeon3.asm
deleted file mode 100755
index 2e01c079..00000000
--- a/data/mapHeaders/unknowndungeon3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-UnknownDungeon3_h:
- db CAVERN ; tileset
- db UNKNOWN_DUNGEON_3_HEIGHT, UNKNOWN_DUNGEON_3_WIDTH ; dimensions (y, x)
- dw UnknownDungeon3Blocks, UnknownDungeon3TextPointers, UnknownDungeon3Script ; blocks, texts, scripts
- db $00 ; connections
- dw UnknownDungeon3Object ; objects
diff --git a/data/mapHeaders/vermilioncity.asm b/data/mapHeaders/vermilioncity.asm
deleted file mode 100755
index c162ab24..00000000
--- a/data/mapHeaders/vermilioncity.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-VermilionCity_h:
- db OVERWORLD ; tileset
- db VERMILION_CITY_HEIGHT, VERMILION_CITY_WIDTH ; dimensions (y, x)
- dw VermilionCityBlocks, VermilionCityTextPointers, VermilionCityScript ; blocks, texts, scripts
- db NORTH | EAST ; connections
- NORTH_MAP_CONNECTION VERMILION_CITY, ROUTE_6, 5, 0, Route6Blocks
- EAST_MAP_CONNECTION VERMILION_CITY, ROUTE_11, 4, 0, Route11Blocks
- dw VermilionCityObject ; objects
diff --git a/data/mapHeaders/vermiliondock.asm b/data/mapHeaders/vermiliondock.asm
deleted file mode 100755
index 16b1c7d8..00000000
--- a/data/mapHeaders/vermiliondock.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionDock_h:
- db SHIP_PORT ; tileset
- db VERMILION_DOCK_HEIGHT, VERMILION_DOCK_WIDTH ; dimensions (y, x)
- dw VermilionDockBlocks, VermilionDockTextPointers, VermilionDockScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionDockObject ; objects
diff --git a/data/mapHeaders/vermiliongym.asm b/data/mapHeaders/vermiliongym.asm
deleted file mode 100755
index 7624ed75..00000000
--- a/data/mapHeaders/vermiliongym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionGym_h:
- db GYM ; tileset
- db VERMILION_GYM_HEIGHT, VERMILION_GYM_WIDTH ; dimensions (y, x)
- dw VermilionGymBlocks, VermilionGymTextPointers, VermilionGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionGymObject ; objects
diff --git a/data/mapHeaders/vermilionhouse1.asm b/data/mapHeaders/vermilionhouse1.asm
deleted file mode 100755
index 94aac1d0..00000000
--- a/data/mapHeaders/vermilionhouse1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionHouse1_h:
- db HOUSE ; tileset
- db VERMILION_HOUSE_1_HEIGHT, VERMILION_HOUSE_1_WIDTH ; dimensions (y, x)
- dw VermilionHouse1Blocks, VermilionHouse1TextPointers, VermilionHouse1Script ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionHouse1Object ; objects
diff --git a/data/mapHeaders/vermilionhouse2.asm b/data/mapHeaders/vermilionhouse2.asm
deleted file mode 100755
index b4124088..00000000
--- a/data/mapHeaders/vermilionhouse2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionHouse2_h:
- db HOUSE ; tileset
- db VERMILION_HOUSE_2_HEIGHT, VERMILION_HOUSE_2_WIDTH ; dimensions (y, x)
- dw VermilionHouse2Blocks, VermilionHouse2TextPointers, VermilionHouse2Script ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionHouse2Object ; objects
diff --git a/data/mapHeaders/vermilionhouse3.asm b/data/mapHeaders/vermilionhouse3.asm
deleted file mode 100755
index 01683532..00000000
--- a/data/mapHeaders/vermilionhouse3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionHouse3_h:
- db HOUSE ; tileset
- db VERMILION_HOUSE_3_HEIGHT, VERMILION_HOUSE_3_WIDTH ; dimensions (y, x)
- dw VermilionHouse3Blocks, VermilionHouse3TextPointers, VermilionHouse3Script ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionHouse3Object ; objects
diff --git a/data/mapHeaders/vermilionmart.asm b/data/mapHeaders/vermilionmart.asm
deleted file mode 100755
index 97fccc4d..00000000
--- a/data/mapHeaders/vermilionmart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionMart_h:
- db MART ; tileset
- db VERMILION_MART_HEIGHT, VERMILION_MART_WIDTH ; dimensions (y, x)
- dw VermilionMartBlocks, VermilionMartTextPointers, VermilionMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionMartObject ; objects
diff --git a/data/mapHeaders/vermilionpokecenter.asm b/data/mapHeaders/vermilionpokecenter.asm
deleted file mode 100755
index e1a63f9e..00000000
--- a/data/mapHeaders/vermilionpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VermilionPokecenter_h:
- db POKECENTER ; tileset
- db VERMILION_POKECENTER_HEIGHT, VERMILION_POKECENTER_WIDTH ; dimensions (y, x)
- dw VermilionPokecenterBlocks, VermilionPokecenterTextPointers, VermilionPokecenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw VermilionPokecenterObject ; objects
diff --git a/data/mapHeaders/victoryroad1.asm b/data/mapHeaders/victoryroad1.asm
deleted file mode 100755
index 6d2f4338..00000000
--- a/data/mapHeaders/victoryroad1.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VictoryRoad1_h:
- db CAVERN ; tileset
- db VICTORY_ROAD_1_HEIGHT, VICTORY_ROAD_1_WIDTH ; dimensions (y, x)
- dw VictoryRoad1Blocks, VictoryRoad1TextPointers, VictoryRoad1Script ; blocks, texts, scripts
- db $00 ; connections
- dw VictoryRoad1Object ; objects
diff --git a/data/mapHeaders/victoryroad2.asm b/data/mapHeaders/victoryroad2.asm
deleted file mode 100755
index fa9803b2..00000000
--- a/data/mapHeaders/victoryroad2.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VictoryRoad2_h:
- db CAVERN ; tileset
- db VICTORY_ROAD_2_HEIGHT, VICTORY_ROAD_2_WIDTH ; dimensions (y, x)
- dw VictoryRoad2Blocks, VictoryRoad2TextPointers, VictoryRoad2Script ; blocks, texts, scripts
- db $00 ; connections
- dw VictoryRoad2Object ; objects
diff --git a/data/mapHeaders/victoryroad3.asm b/data/mapHeaders/victoryroad3.asm
deleted file mode 100755
index 4202bfb6..00000000
--- a/data/mapHeaders/victoryroad3.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-VictoryRoad3_h:
- db CAVERN ; tileset
- db VICTORY_ROAD_3_HEIGHT, VICTORY_ROAD_3_WIDTH ; dimensions (y, x)
- dw VictoryRoad3Blocks, VictoryRoad3TextPointers, VictoryRoad3Script ; blocks, texts, scripts
- db $00 ; connections
- dw VictoryRoad3Object ; objects
diff --git a/data/mapHeaders/viridiancity.asm b/data/mapHeaders/viridiancity.asm
deleted file mode 100755
index 79b19368..00000000
--- a/data/mapHeaders/viridiancity.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-ViridianCity_h:
- db OVERWORLD ; tileset
- db VIRIDIAN_CITY_HEIGHT, VIRIDIAN_CITY_WIDTH ; dimensions (y, x)
- dw ViridianCityBlocks, ViridianCityTextPointers, ViridianCityScript ; blocks, texts, scripts
- db NORTH | SOUTH | WEST ; connections
- NORTH_MAP_CONNECTION VIRIDIAN_CITY, ROUTE_2, 5, 0, Route2Blocks
- SOUTH_MAP_CONNECTION VIRIDIAN_CITY, ROUTE_1, 5, 0, Route1Blocks, 1
- WEST_MAP_CONNECTION VIRIDIAN_CITY, ROUTE_22, 4, 0, Route22Blocks
- dw ViridianCityObject ; objects
diff --git a/data/mapHeaders/viridianforest.asm b/data/mapHeaders/viridianforest.asm
deleted file mode 100755
index ef7905b0..00000000
--- a/data/mapHeaders/viridianforest.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-ViridianForest_h:
- db FOREST ; tileset
- db VIRIDIAN_FOREST_HEIGHT, VIRIDIAN_FOREST_WIDTH ; dimensions (y, x)
- dw ViridianForestBlocks, ViridianForestTextPointers, ViridianForestScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianForestObject ; objects
diff --git a/data/mapHeaders/viridianforestentrance.asm b/data/mapHeaders/viridianforestentrance.asm
deleted file mode 100755
index 6e861c58..00000000
--- a/data/mapHeaders/viridianforestentrance.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-ViridianForestEntrance_h:
- db FOREST_GATE ; tileset
- db VIRIDIAN_FOREST_ENTRANCE_HEIGHT, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; dimensions (y, x)
- dw ViridianForestEntranceBlocks, ViridianForestEntranceTextPointers, ViridianForestEntranceScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianForestEntranceObject ; objects
diff --git a/data/mapHeaders/viridianforestexit.asm b/data/mapHeaders/viridianforestexit.asm
deleted file mode 100755
index 8e1dd25e..00000000
--- a/data/mapHeaders/viridianforestexit.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-ViridianForestExit_h:
- db FOREST_GATE ; tileset
- db VIRIDIAN_FOREST_EXIT_HEIGHT, VIRIDIAN_FOREST_EXIT_WIDTH ; dimensions (y, x)
- dw ViridianForestExitBlocks, ViridianForestExitTextPointers, ViridianForestExitScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianForestExitObject ; objects
diff --git a/data/mapHeaders/viridiangym.asm b/data/mapHeaders/viridiangym.asm
deleted file mode 100755
index 40b0d69f..00000000
--- a/data/mapHeaders/viridiangym.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-ViridianGym_h:
- db GYM ; tileset
- db VIRIDIAN_GYM_HEIGHT, VIRIDIAN_GYM_WIDTH ; dimensions (y, x)
- dw ViridianGymBlocks, ViridianGymTextPointers, ViridianGymScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianGymObject ; objects
diff --git a/data/mapHeaders/viridianhouse.asm b/data/mapHeaders/viridianhouse.asm
deleted file mode 100755
index c8724b4e..00000000
--- a/data/mapHeaders/viridianhouse.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-ViridianHouse_h:
- db HOUSE ; tileset
- db VIRIDIAN_HOUSE_HEIGHT, VIRIDIAN_HOUSE_WIDTH ; dimensions (y, x)
- dw ViridianHouseBlocks, ViridianHouseTextPointers, ViridianHouseScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianHouseObject ; objects
-
- db $0
diff --git a/data/mapHeaders/viridianmart.asm b/data/mapHeaders/viridianmart.asm
deleted file mode 100755
index 3d799a5b..00000000
--- a/data/mapHeaders/viridianmart.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-ViridianMart_h:
- db MART ; tileset
- db VIRIDIAN_MART_HEIGHT, VIRIDIAN_MART_WIDTH ; dimensions (y, x)
- dw ViridianMartBlocks, ViridianMartTextPointers, ViridianMartScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianMartObject ; objects
diff --git a/data/mapHeaders/viridianpokecenter.asm b/data/mapHeaders/viridianpokecenter.asm
deleted file mode 100755
index 3218e89d..00000000
--- a/data/mapHeaders/viridianpokecenter.asm
+++ /dev/null
@@ -1,6 +0,0 @@
-ViridianPokecenter_h:
- db POKECENTER ; tileset
- db VIRIDIAN_POKECENTER_HEIGHT, VIRIDIAN_POKECENTER_WIDTH ; dimensions (y, x)
- dw ViridianPokecenterBlocks, ViridianPokecenterTextPointers, ViridianPokeCenterScript ; blocks, texts, scripts
- db $00 ; connections
- dw ViridianPokecenterObject ; objects
diff --git a/data/mapObjects/AgathasRoom.asm b/data/mapObjects/AgathasRoom.asm
new file mode 100755
index 00000000..4a82e78d
--- /dev/null
+++ b/data/mapObjects/AgathasRoom.asm
@@ -0,0 +1,19 @@
+AgathasRoom_Object:
+ db $0 ; border block
+
+ db 4 ; warps
+ warp 4, 11, 2, BRUNOS_ROOM
+ warp 5, 11, 3, BRUNOS_ROOM
+ warp 4, 0, 0, LANCES_ROOM
+ warp 5, 0, 0, LANCES_ROOM
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_AGATHA, 5, 2, STAY, DOWN, 1, OPP_AGATHA, 1
+
+ ; warp-to
+ warp_to 4, 11, AGATHAS_ROOM_WIDTH ; BRUNOS_ROOM
+ warp_to 5, 11, AGATHAS_ROOM_WIDTH ; BRUNOS_ROOM
+ warp_to 4, 0, AGATHAS_ROOM_WIDTH ; LANCES_ROOM
+ warp_to 5, 0, AGATHAS_ROOM_WIDTH ; LANCES_ROOM
diff --git a/data/mapObjects/BeachHouse.asm b/data/mapObjects/BeachHouse.asm
new file mode 100644
index 00000000..02bd8037
--- /dev/null
+++ b/data/mapObjects/BeachHouse.asm
@@ -0,0 +1,20 @@
+BeachHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2,7,0,-1
+ warp 3,7,0,-1
+
+ db 4 ; signs
+ sign 3,0,3
+ sign 7,0,4
+ sign 11,0,5
+ sign 13,1,6
+
+ db 2 ; objects
+ object SPRITE_FISHER, 2, 3, STAY, DOWN, 1 ; surfin' dude
+ object $3d, 5, 3, WALK, $01, 2 ; pikachu
+
+ ; warp-to
+ warp_to 2,7, BEACH_HOUSE_WIDTH
+ warp_to 3,7, BEACH_HOUSE_WIDTH
diff --git a/data/mapObjects/BikeShop.asm b/data/mapObjects/BikeShop.asm
new file mode 100755
index 00000000..9f21ab3e
--- /dev/null
+++ b/data/mapObjects/BikeShop.asm
@@ -0,0 +1,17 @@
+BikeShop_Object:
+ db $e ; border block
+
+ db 2 ; warps
+ warp 2, 7, 4, -1
+ warp 3, 7, 4, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_BIKE_SHOP_GUY, 6, 2, STAY, NONE, 1 ; person
+ object SPRITE_MOM_GEISHA, 5, 6, WALK, 1, 2 ; person
+ object SPRITE_BUG_CATCHER, 1, 3, STAY, UP, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, BIKE_SHOP_WIDTH
+ warp_to 3, 7, BIKE_SHOP_WIDTH
diff --git a/data/mapObjects/BillsHouse.asm b/data/mapObjects/BillsHouse.asm
new file mode 100755
index 00000000..c8f708cb
--- /dev/null
+++ b/data/mapObjects/BillsHouse.asm
@@ -0,0 +1,17 @@
+BillsHouse_Object:
+ db $d ; border block
+
+ db 2 ; warps
+ warp 2, 7, 0, -1
+ warp 3, 7, 0, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_SLOWBRO, 6, 5, STAY, NONE, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 4, 4, STAY, NONE, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 6, 5, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, BILLS_HOUSE_WIDTH
+ warp_to 3, 7, BILLS_HOUSE_WIDTH
diff --git a/data/mapObjects/BluesHouse.asm b/data/mapObjects/BluesHouse.asm
new file mode 100755
index 00000000..24c5baab
--- /dev/null
+++ b/data/mapObjects/BluesHouse.asm
@@ -0,0 +1,17 @@
+BluesHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 1, -1
+ warp 3, 7, 1, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_DAISY, 2, 3, STAY, RIGHT, 1, 0 ; Daisy, sitting by map
+ object SPRITE_DAISY, 6, 4, WALK, 1, 2, 0 ; Daisy, walking around
+ object SPRITE_BOOK_MAP_DEX, 3, 3, STAY, NONE, 3, 0 ; map on table
+
+ ; warp-to
+ warp_to 2, 7, BLUES_HOUSE_WIDTH
+ warp_to 3, 7, BLUES_HOUSE_WIDTH
diff --git a/data/mapObjects/BrunosRoom.asm b/data/mapObjects/BrunosRoom.asm
new file mode 100755
index 00000000..dde1e2dd
--- /dev/null
+++ b/data/mapObjects/BrunosRoom.asm
@@ -0,0 +1,19 @@
+BrunosRoom_Object:
+ db $3 ; border block
+
+ db 4 ; warps
+ warp 4, 11, 2, LORELEIS_ROOM
+ warp 5, 11, 3, LORELEIS_ROOM
+ warp 4, 0, 0, AGATHAS_ROOM
+ warp 5, 0, 1, AGATHAS_ROOM
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_BRUNO, 5, 2, STAY, DOWN, 1, OPP_BRUNO, 1
+
+ ; warp-to
+ warp_to 4, 11, BRUNOS_ROOM_WIDTH ; LORELEIS_ROOM
+ warp_to 5, 11, BRUNOS_ROOM_WIDTH ; LORELEIS_ROOM
+ warp_to 4, 0, BRUNOS_ROOM_WIDTH ; AGATHAS_ROOM
+ warp_to 5, 0, BRUNOS_ROOM_WIDTH ; AGATHAS_ROOM
diff --git a/data/mapObjects/CeladonChiefHouse.asm b/data/mapObjects/CeladonChiefHouse.asm
new file mode 100755
index 00000000..88850f35
--- /dev/null
+++ b/data/mapObjects/CeladonChiefHouse.asm
@@ -0,0 +1,17 @@
+CeladonChiefHouse_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 2, 7, 11, -1
+ warp 3, 7, 11, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_OLD_PERSON, 4, 2, STAY, DOWN, 1 ; person
+ object SPRITE_ROCKET, 1, 4, WALK, 0, 2 ; person
+ object SPRITE_SAILOR, 5, 6, STAY, LEFT, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, CELADON_CHIEF_HOUSE_WIDTH
+ warp_to 3, 7, CELADON_CHIEF_HOUSE_WIDTH
diff --git a/data/mapObjects/CeladonCity.asm b/data/mapObjects/CeladonCity.asm
new file mode 100755
index 00000000..005fc61e
--- /dev/null
+++ b/data/mapObjects/CeladonCity.asm
@@ -0,0 +1,54 @@
+CeladonCity_Object:
+ db $f ; border block
+
+ db 13 ; warps
+ warp 8, 13, 0, CELADON_MART_1F
+ warp 10, 13, 2, CELADON_MART_1F
+ warp 24, 9, 0, CELADON_MANSION_1F
+ warp 24, 3, 2, CELADON_MANSION_1F
+ warp 25, 3, 2, CELADON_MANSION_1F
+ warp 41, 9, 0, CELADON_POKECENTER
+ warp 12, 27, 0, CELADON_GYM
+ warp 28, 19, 0, GAME_CORNER
+ warp 39, 19, 0, CELADON_MART_5F ; beta warp! no longer used
+ warp 33, 19, 0, GAME_CORNER_PRIZE_ROOM
+ warp 31, 27, 0, CELADON_DINER
+ warp 35, 27, 0, CELADON_CHIEF_HOUSE
+ warp 43, 27, 0, CELADON_HOTEL
+
+ db 9 ; signs
+ sign 27, 15, 10 ; CeladonCityText10
+ sign 19, 15, 11 ; CeladonCityText11
+ sign 42, 9, 12 ; PokeCenterSignText
+ sign 13, 29, 13 ; CeladonCityText13
+ sign 21, 9, 14 ; CeladonCityText14
+ sign 12, 13, 15 ; CeladonCityText15
+ sign 39, 21, 16 ; CeladonCityText16
+ sign 33, 21, 17 ; CeladonCityText17
+ sign 27, 21, 18 ; CeladonCityText18
+
+ db 9 ; objects
+ object SPRITE_LITTLE_GIRL, 8, 17, WALK, 0, 1 ; person
+ object SPRITE_OLD_PERSON, 11, 28, STAY, UP, 2 ; person
+ object SPRITE_GIRL, 14, 19, WALK, 1, 3 ; person
+ object SPRITE_OLD_PERSON, 25, 22, STAY, DOWN, 4 ; person
+ object SPRITE_OLD_PERSON, 22, 16, STAY, DOWN, 5 ; person
+ object SPRITE_FISHER2, 32, 12, STAY, LEFT, 6 ; person
+ object SPRITE_SLOWBRO, 30, 12, STAY, RIGHT, 7 ; person
+ object SPRITE_ROCKET, 32, 29, WALK, 2, 8 ; person
+ object SPRITE_ROCKET, 42, 14, WALK, 2, 9 ; person
+
+ ; warp-to
+ warp_to 8, 13, CELADON_CITY_WIDTH ; CELADON_MART_1F
+ warp_to 10, 13, CELADON_CITY_WIDTH ; CELADON_MART_1F
+ warp_to 24, 9, CELADON_CITY_WIDTH ; CELADON_MANSION_1F
+ warp_to 24, 3, CELADON_CITY_WIDTH ; CELADON_MANSION_1F
+ warp_to 25, 3, CELADON_CITY_WIDTH ; CELADON_MANSION_1F
+ warp_to 41, 9, CELADON_CITY_WIDTH ; CELADON_POKECENTER
+ warp_to 12, 27, CELADON_CITY_WIDTH ; CELADON_GYM
+ warp_to 28, 19, CELADON_CITY_WIDTH ; GAME_CORNER
+ warp_to 39, 19, CELADON_CITY_WIDTH ; CELADON_MART_5F
+ warp_to 33, 19, CELADON_CITY_WIDTH ; GAME_CORNER_PRIZE_ROOM
+ warp_to 31, 27, CELADON_CITY_WIDTH ; CELADON_DINER
+ warp_to 35, 27, CELADON_CITY_WIDTH ; CELADON_CHIEF_HOUSE
+ warp_to 43, 27, CELADON_CITY_WIDTH ; CELADON_HOTEL
diff --git a/data/mapObjects/CeladonDiner.asm b/data/mapObjects/CeladonDiner.asm
new file mode 100755
index 00000000..0a4a895d
--- /dev/null
+++ b/data/mapObjects/CeladonDiner.asm
@@ -0,0 +1,19 @@
+CeladonDiner_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 3, 7, 10, -1
+ warp 4, 7, 10, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_COOK, 8, 5, WALK, 2, 1 ; person
+ object SPRITE_MOM_GEISHA, 7, 2, STAY, NONE, 2 ; person
+ object SPRITE_FAT_BALD_GUY, 1, 4, STAY, DOWN, 3 ; person
+ object SPRITE_FISHER2, 5, 3, STAY, RIGHT, 4 ; person
+ object SPRITE_GYM_HELPER, 0, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, CELADON_DINER_WIDTH
+ warp_to 4, 7, CELADON_DINER_WIDTH
diff --git a/data/mapObjects/CeladonGym.asm b/data/mapObjects/CeladonGym.asm
new file mode 100755
index 00000000..98fce576
--- /dev/null
+++ b/data/mapObjects/CeladonGym.asm
@@ -0,0 +1,22 @@
+CeladonGym_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 17, 6, -1
+ warp 5, 17, 6, -1
+
+ db 0 ; signs
+
+ db 8 ; objects
+ object SPRITE_ERIKA, 4, 3, STAY, DOWN, 1, OPP_ERIKA, 1
+ object SPRITE_LASS, 2, 11, STAY, RIGHT, 2, OPP_LASS, 17
+ object SPRITE_FOULARD_WOMAN, 7, 10, STAY, LEFT, 3, OPP_BEAUTY, 1
+ object SPRITE_LASS, 9, 5, STAY, DOWN, 4, OPP_JR_TRAINER_F, 11
+ object SPRITE_FOULARD_WOMAN, 1, 5, STAY, DOWN, 5, OPP_BEAUTY, 2
+ object SPRITE_LASS, 6, 3, STAY, DOWN, 6, OPP_LASS, 18
+ object SPRITE_FOULARD_WOMAN, 3, 3, STAY, DOWN, 7, OPP_BEAUTY, 3
+ object SPRITE_LASS, 5, 3, STAY, DOWN, 8, OPP_COOLTRAINER_F, 1
+
+ ; warp-to
+ warp_to 4, 17, CELADON_GYM_WIDTH
+ warp_to 5, 17, CELADON_GYM_WIDTH
diff --git a/data/mapObjects/CeladonHotel.asm b/data/mapObjects/CeladonHotel.asm
new file mode 100755
index 00000000..f4aa1305
--- /dev/null
+++ b/data/mapObjects/CeladonHotel.asm
@@ -0,0 +1,17 @@
+CeladonHotel_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 12, -1
+ warp 4, 7, 12, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_OLD_MEDIUM_WOMAN, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_FOULARD_WOMAN, 2, 4, STAY, NONE, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 8, 4, WALK, 2, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, CELADON_HOTEL_WIDTH
+ warp_to 4, 7, CELADON_HOTEL_WIDTH
diff --git a/data/mapObjects/CeladonMansion1F.asm b/data/mapObjects/CeladonMansion1F.asm
new file mode 100755
index 00000000..1abd434c
--- /dev/null
+++ b/data/mapObjects/CeladonMansion1F.asm
@@ -0,0 +1,25 @@
+CeladonMansion1F_Object:
+ db $f ; border block
+
+ db 5 ; warps
+ warp 4, 11, 2, -1
+ warp 5, 11, 2, -1
+ warp 4, 0, 4, -1
+ warp 7, 1, 1, CELADON_MANSION_2F
+ warp 2, 1, 2, CELADON_MANSION_2F
+
+ db 1 ; signs
+ sign 4, 9, 5 ; CeladonMansion1Text5
+
+ db 4 ; objects
+ object SPRITE_SLOWBRO, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_OLD_MEDIUM_WOMAN, 1, 5, STAY, DOWN, 2 ; person
+ object SPRITE_CLEFAIRY, 1, 8, WALK, 2, 3 ; person
+ object SPRITE_SLOWBRO, 4, 4, WALK, 1, 4 ; person
+
+ ; warp-to
+ warp_to 4, 11, CELADON_MANSION_1F_WIDTH
+ warp_to 5, 11, CELADON_MANSION_1F_WIDTH
+ warp_to 4, 0, CELADON_MANSION_1F_WIDTH
+ warp_to 7, 1, CELADON_MANSION_1F_WIDTH ; CELADON_MANSION_2F
+ warp_to 2, 1, CELADON_MANSION_1F_WIDTH ; CELADON_MANSION_2F
diff --git a/data/mapObjects/CeladonMansion2F.asm b/data/mapObjects/CeladonMansion2F.asm
new file mode 100755
index 00000000..09c94d29
--- /dev/null
+++ b/data/mapObjects/CeladonMansion2F.asm
@@ -0,0 +1,19 @@
+CeladonMansion2F_Object:
+ db $f ; border block
+
+ db 4 ; warps
+ warp 6, 1, 0, CELADON_MANSION_3F
+ warp 7, 1, 3, CELADON_MANSION_1F
+ warp 2, 1, 4, CELADON_MANSION_1F
+ warp 4, 1, 3, CELADON_MANSION_3F
+
+ db 1 ; signs
+ sign 4, 9, 1 ; CeladonMansion2Text1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 6, 1, CELADON_MANSION_2F_WIDTH ; CELADON_MANSION_3F
+ warp_to 7, 1, CELADON_MANSION_2F_WIDTH ; CELADON_MANSION_1F
+ warp_to 2, 1, CELADON_MANSION_2F_WIDTH ; CELADON_MANSION_1F
+ warp_to 4, 1, CELADON_MANSION_2F_WIDTH ; CELADON_MANSION_3F
diff --git a/data/mapObjects/CeladonMansion3F.asm b/data/mapObjects/CeladonMansion3F.asm
new file mode 100755
index 00000000..32701f14
--- /dev/null
+++ b/data/mapObjects/CeladonMansion3F.asm
@@ -0,0 +1,26 @@
+CeladonMansion3F_Object:
+ db $f ; border block
+
+ db 4 ; warps
+ warp 6, 1, 0, CELADON_MANSION_2F
+ warp 7, 1, 0, CELADON_MANSION_ROOF
+ warp 2, 1, 1, CELADON_MANSION_ROOF
+ warp 4, 1, 3, CELADON_MANSION_2F
+
+ db 4 ; signs
+ sign 1, 3, 5 ; CeladonMansion3Text5
+ sign 4, 3, 6 ; CeladonMansion3Text6
+ sign 1, 6, 7 ; CeladonMansion3Text7
+ sign 4, 9, 8 ; CeladonMansion3Text8
+
+ db 4 ; objects
+ object SPRITE_BIKE_SHOP_GUY, 0, 4, STAY, UP, 1 ; person
+ object SPRITE_MART_GUY, 3, 4, STAY, UP, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 0, 7, STAY, UP, 3 ; person
+ object SPRITE_LAPRAS_GIVER, 2, 3, STAY, NONE, 4 ; person
+
+ ; warp-to
+ warp_to 6, 1, CELADON_MANSION_3F_WIDTH ; CELADON_MANSION_2F
+ warp_to 7, 1, CELADON_MANSION_3F_WIDTH ; CELADON_MANSION_ROOF
+ warp_to 2, 1, CELADON_MANSION_3F_WIDTH ; CELADON_MANSION_ROOF
+ warp_to 4, 1, CELADON_MANSION_3F_WIDTH ; CELADON_MANSION_2F
diff --git a/data/mapObjects/CeladonMansionRoof.asm b/data/mapObjects/CeladonMansionRoof.asm
new file mode 100755
index 00000000..353b0b96
--- /dev/null
+++ b/data/mapObjects/CeladonMansionRoof.asm
@@ -0,0 +1,17 @@
+CeladonMansionRoof_Object:
+ db $9 ; border block
+
+ db 3 ; warps
+ warp 6, 1, 1, CELADON_MANSION_3F
+ warp 2, 1, 2, CELADON_MANSION_3F
+ warp 2, 7, 0, CELADON_MANSION_ROOF_HOUSE
+
+ db 1 ; signs
+ sign 3, 7, 1 ; CeladonMansion4Text1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 6, 1, CELADON_MANSION_ROOF_WIDTH ; CELADON_MANSION_3F
+ warp_to 2, 1, CELADON_MANSION_ROOF_WIDTH ; CELADON_MANSION_3F
+ warp_to 2, 7, CELADON_MANSION_ROOF_WIDTH ; CELADON_MANSION_ROOF_HOUSE
diff --git a/data/mapObjects/CeladonMansionRoofHouse.asm b/data/mapObjects/CeladonMansionRoofHouse.asm
new file mode 100755
index 00000000..b6a6149f
--- /dev/null
+++ b/data/mapObjects/CeladonMansionRoofHouse.asm
@@ -0,0 +1,16 @@
+CeladonMansionRoofHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 2, CELADON_MANSION_ROOF
+ warp 3, 7, 2, CELADON_MANSION_ROOF
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_HIKER, 2, 2, STAY, DOWN, 1 ; person
+ object SPRITE_BALL, 4, 3, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, CELADON_MANSION_ROOF_HOUSE_WIDTH ; CELADON_MANSION_ROOF
+ warp_to 3, 7, CELADON_MANSION_ROOF_HOUSE_WIDTH ; CELADON_MANSION_ROOF
diff --git a/data/mapObjects/CeladonMart1F.asm b/data/mapObjects/CeladonMart1F.asm
new file mode 100755
index 00000000..2037369a
--- /dev/null
+++ b/data/mapObjects/CeladonMart1F.asm
@@ -0,0 +1,25 @@
+CeladonMart1F_Object:
+ db $f ; border block
+
+ db 6 ; warps
+ warp 2, 7, 0, -1
+ warp 3, 7, 0, -1
+ warp 16, 7, 1, -1
+ warp 17, 7, 1, -1
+ warp 12, 1, 0, CELADON_MART_2F
+ warp 1, 1, 0, CELADON_MART_ELEVATOR
+
+ db 2 ; signs
+ sign 11, 4, 2 ; CeladonMart1Text2
+ sign 14, 1, 3 ; CeladonMart1Text3
+
+ db 1 ; objects
+ object SPRITE_CABLE_CLUB_WOMAN, 8, 3, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, CELADON_MART_1F_WIDTH
+ warp_to 3, 7, CELADON_MART_1F_WIDTH
+ warp_to 16, 7, CELADON_MART_1F_WIDTH
+ warp_to 17, 7, CELADON_MART_1F_WIDTH
+ warp_to 12, 1, CELADON_MART_1F_WIDTH ; CELADON_MART_2F
+ warp_to 1, 1, CELADON_MART_1F_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/CeladonMart2F.asm b/data/mapObjects/CeladonMart2F.asm
new file mode 100755
index 00000000..2f5f428e
--- /dev/null
+++ b/data/mapObjects/CeladonMart2F.asm
@@ -0,0 +1,21 @@
+CeladonMart2F_Object:
+ db $f ; border block
+
+ db 3 ; warps
+ warp 12, 1, 4, CELADON_MART_1F
+ warp 16, 1, 1, CELADON_MART_3F
+ warp 1, 1, 0, CELADON_MART_ELEVATOR
+
+ db 1 ; signs
+ sign 14, 1, 5 ; CeladonMart2Text5
+
+ db 4 ; objects
+ object SPRITE_MART_GUY, 5, 3, STAY, DOWN, 1 ; person
+ object SPRITE_MART_GUY, 6, 3, STAY, DOWN, 2 ; person
+ object SPRITE_FAT_BALD_GUY, 19, 5, STAY, NONE, 3 ; person
+ object SPRITE_GIRL, 14, 4, WALK, 1, 4 ; person
+
+ ; warp-to
+ warp_to 12, 1, CELADON_MART_2F_WIDTH ; CELADON_MART_1F
+ warp_to 16, 1, CELADON_MART_2F_WIDTH ; CELADON_MART_3F
+ warp_to 1, 1, CELADON_MART_2F_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/CeladonMart3F.asm b/data/mapObjects/CeladonMart3F.asm
new file mode 100755
index 00000000..6c6adfd4
--- /dev/null
+++ b/data/mapObjects/CeladonMart3F.asm
@@ -0,0 +1,33 @@
+CeladonMart3F_Object:
+ db $f ; border block
+
+ db 3 ; warps
+ warp 12, 1, 0, CELADON_MART_4F
+ warp 16, 1, 1, CELADON_MART_2F
+ warp 1, 1, 0, CELADON_MART_ELEVATOR
+
+ db 12 ; signs
+ sign 2, 4, 6 ; CeladonMart3Text6
+ sign 3, 4, 7 ; CeladonMart3Text7
+ sign 5, 4, 8 ; CeladonMart3Text8
+ sign 6, 4, 9 ; CeladonMart3Text9
+ sign 2, 6, 10 ; CeladonMart3Text10
+ sign 3, 6, 11 ; CeladonMart3Text11
+ sign 5, 6, 12 ; CeladonMart3Text12
+ sign 6, 6, 13 ; CeladonMart3Text13
+ sign 14, 1, 14 ; CeladonMart3Text14
+ sign 4, 1, 15 ; CeladonMart3Text15
+ sign 6, 1, 16 ; CeladonMart3Text16
+ sign 10, 1, 17 ; CeladonMart3Text17
+
+ db 5 ; objects
+ object SPRITE_MART_GUY, 16, 5, STAY, NONE, 1 ; person
+ object SPRITE_GAMEBOY_KID, 11, 6, STAY, RIGHT, 2 ; person
+ object SPRITE_GAMEBOY_KID, 7, 2, STAY, DOWN, 3 ; person
+ object SPRITE_GAMEBOY_KID, 8, 2, STAY, DOWN, 4 ; person
+ object SPRITE_YOUNG_BOY, 2, 5, STAY, UP, 5 ; person
+
+ ; warp-to
+ warp_to 12, 1, CELADON_MART_3F_WIDTH ; CELADON_MART_4F
+ warp_to 16, 1, CELADON_MART_3F_WIDTH ; CELADON_MART_2F
+ warp_to 1, 1, CELADON_MART_3F_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/CeladonMart4F.asm b/data/mapObjects/CeladonMart4F.asm
new file mode 100755
index 00000000..18ba3bdc
--- /dev/null
+++ b/data/mapObjects/CeladonMart4F.asm
@@ -0,0 +1,20 @@
+CeladonMart4F_Object:
+ db $f ; border block
+
+ db 3 ; warps
+ warp 12, 1, 0, CELADON_MART_3F
+ warp 16, 1, 1, CELADON_MART_5F
+ warp 1, 1, 0, CELADON_MART_ELEVATOR
+
+ db 1 ; signs
+ sign 14, 1, 4 ; CeladonMart4Text4
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 5, 7, STAY, NONE, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 15, 5, WALK, 2, 2 ; person
+ object SPRITE_BUG_CATCHER, 5, 2, WALK, 2, 3 ; person
+
+ ; warp-to
+ warp_to 12, 1, CELADON_MART_4F_WIDTH ; CELADON_MART_3F
+ warp_to 16, 1, CELADON_MART_4F_WIDTH ; CELADON_MART_5F
+ warp_to 1, 1, CELADON_MART_4F_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/CeladonMart5F.asm b/data/mapObjects/CeladonMart5F.asm
new file mode 100755
index 00000000..fb1201c9
--- /dev/null
+++ b/data/mapObjects/CeladonMart5F.asm
@@ -0,0 +1,21 @@
+CeladonMart5F_Object:
+ db $f ; border block
+
+ db 3 ; warps
+ warp 12, 1, 0, CELADON_MART_ROOF
+ warp 16, 1, 1, CELADON_MART_4F
+ warp 1, 1, 0, CELADON_MART_ELEVATOR
+
+ db 1 ; signs
+ sign 14, 1, 5 ; CeladonMart5Text5
+
+ db 4 ; objects
+ object SPRITE_GENTLEMAN, 14, 5, WALK, 1, 1 ; person
+ object SPRITE_SAILOR, 2, 6, STAY, NONE, 2 ; person
+ object SPRITE_MART_GUY, 5, 3, STAY, DOWN, 3 ; person
+ object SPRITE_MART_GUY, 6, 3, STAY, DOWN, 4 ; person
+
+ ; warp-to
+ warp_to 12, 1, CELADON_MART_5F_WIDTH ; CELADON_MART_ROOF
+ warp_to 16, 1, CELADON_MART_5F_WIDTH ; CELADON_MART_4F
+ warp_to 1, 1, CELADON_MART_5F_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/CeladonMartElevator.asm b/data/mapObjects/CeladonMartElevator.asm
new file mode 100755
index 00000000..9688daef
--- /dev/null
+++ b/data/mapObjects/CeladonMartElevator.asm
@@ -0,0 +1,15 @@
+CeladonMartElevator_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 1, 3, 5, CELADON_MART_1F
+ warp 2, 3, 5, CELADON_MART_1F
+
+ db 1 ; signs
+ sign 3, 0, 1 ; CeladonMartElevatorText1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 1, 3, CELADON_MART_ELEVATOR_WIDTH ; CELADON_MART_1F
+ warp_to 2, 3, CELADON_MART_ELEVATOR_WIDTH ; CELADON_MART_1F
diff --git a/data/mapObjects/CeladonMartRoof.asm b/data/mapObjects/CeladonMartRoof.asm
new file mode 100755
index 00000000..05cef2d4
--- /dev/null
+++ b/data/mapObjects/CeladonMartRoof.asm
@@ -0,0 +1,18 @@
+CeladonMartRoof_Object:
+ db $42 ; border block
+
+ db 1 ; warps
+ warp 15, 2, 0, CELADON_MART_5F
+
+ db 4 ; signs
+ sign 10, 1, 3 ; CeladonMartRoofText3
+ sign 11, 1, 4 ; CeladonMartRoofText4
+ sign 12, 2, 5 ; CeladonMartRoofText5
+ sign 13, 2, 6 ; CeladonMartRoofText6
+
+ db 2 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 10, 4, STAY, LEFT, 1 ; person
+ object SPRITE_LITTLE_GIRL, 5, 5, WALK, 0, 2 ; person
+
+ ; warp-to
+ warp_to 15, 2, CELADON_MART_ROOF_WIDTH ; CELADON_MART_5F
diff --git a/data/mapObjects/CeladonPokecenter.asm b/data/mapObjects/CeladonPokecenter.asm
new file mode 100755
index 00000000..91698e34
--- /dev/null
+++ b/data/mapObjects/CeladonPokecenter.asm
@@ -0,0 +1,19 @@
+CeladonPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 5, -1
+ warp 4, 7, 5, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_GENTLEMAN, 7, 3, STAY, DOWN, 2 ; person
+ object SPRITE_FOULARD_WOMAN, 10, 5, WALK, 0, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, CELADON_POKECENTER_WIDTH
+ warp_to 4, 7, CELADON_POKECENTER_WIDTH
diff --git a/data/mapObjects/CeruleanBadgeHouse.asm b/data/mapObjects/CeruleanBadgeHouse.asm
new file mode 100755
index 00000000..62a6873b
--- /dev/null
+++ b/data/mapObjects/CeruleanBadgeHouse.asm
@@ -0,0 +1,17 @@
+CeruleanBadgeHouse_Object:
+ db $c ; border block
+
+ db 3 ; warps
+ warp 2, 0, 9, -1
+ warp 2, 7, 8, -1
+ warp 3, 7, 8, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FAT_BALD_GUY, 5, 3, STAY, RIGHT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 0, CERULEAN_BADGE_HOUSE_WIDTH
+ warp_to 2, 7, CERULEAN_BADGE_HOUSE_WIDTH
+ warp_to 3, 7, CERULEAN_BADGE_HOUSE_WIDTH
diff --git a/data/mapObjects/CeruleanCave1F.asm b/data/mapObjects/CeruleanCave1F.asm
new file mode 100755
index 00000000..a7f72b34
--- /dev/null
+++ b/data/mapObjects/CeruleanCave1F.asm
@@ -0,0 +1,32 @@
+CeruleanCave1F_Object:
+ db $7d ; border block
+
+ db 9 ; warps
+ warp 24, 17, 6, -1
+ warp 25, 17, 6, -1
+ warp 27, 1, 0, CERULEAN_CAVE_2F
+ warp 23, 7, 1, CERULEAN_CAVE_2F
+ warp 18, 9, 2, CERULEAN_CAVE_2F
+ warp 7, 1, 3, CERULEAN_CAVE_2F
+ warp 1, 3, 4, CERULEAN_CAVE_2F
+ warp 3, 11, 5, CERULEAN_CAVE_2F
+ warp 0, 6, 0, CERULEAN_CAVE_B1F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_BALL, $1d, $10, STAY, NONE, $1, RARE_CANDY
+ object SPRITE_BALL, $7, $b, STAY, NONE, $2, MAX_ELIXER
+ object SPRITE_BALL, $1d, $9, STAY, NONE, $3, MAX_REVIVE
+ object SPRITE_BALL, $12, $3, STAY, NONE, $4, ULTRA_BALL
+
+ ; warp-to
+ warp_to 24, 17, CERULEAN_CAVE_1F_WIDTH
+ warp_to 25, 17, CERULEAN_CAVE_1F_WIDTH
+ warp_to 27, 1, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_2F
+ warp_to 23, 7, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_2F
+ warp_to 18, 9, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_2F
+ warp_to 7, 1, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_2F
+ warp_to 1, 3, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_2F
+ warp_to 3, 11, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_2F
+ warp_to 0, 6, CERULEAN_CAVE_1F_WIDTH ; CERULEAN_CAVE_B1F
diff --git a/data/mapObjects/CeruleanCave2F.asm b/data/mapObjects/CeruleanCave2F.asm
new file mode 100755
index 00000000..9a15eef8
--- /dev/null
+++ b/data/mapObjects/CeruleanCave2F.asm
@@ -0,0 +1,26 @@
+CeruleanCave2F_Object:
+ db $7d ; border block
+
+ db 6 ; warps
+ warp 29, 1, 2, CERULEAN_CAVE_1F
+ warp 22, 6, 3, CERULEAN_CAVE_1F
+ warp 19, 7, 4, CERULEAN_CAVE_1F
+ warp 9, 1, 5, CERULEAN_CAVE_1F
+ warp 1, 3, 6, CERULEAN_CAVE_1F
+ warp 3, 11, 7, CERULEAN_CAVE_1F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_BALL, 0, 11, STAY, NONE, 1, RARE_CANDY
+ object SPRITE_BALL, 16, 7, STAY, NONE, 2, ULTRA_BALL
+ object SPRITE_BALL, 19, 11, STAY, NONE, 3, MAX_REVIVE
+ object SPRITE_BALL, 27, 9, STAY, NONE, 4, FULL_RESTORE
+
+ ; warp-to
+ warp_to 29, 1, CERULEAN_CAVE_2F_WIDTH ; CERULEAN_CAVE_1F
+ warp_to 22, 6, CERULEAN_CAVE_2F_WIDTH ; CERULEAN_CAVE_1F
+ warp_to 19, 7, CERULEAN_CAVE_2F_WIDTH ; CERULEAN_CAVE_1F
+ warp_to 9, 1, CERULEAN_CAVE_2F_WIDTH ; CERULEAN_CAVE_1F
+ warp_to 1, 3, CERULEAN_CAVE_2F_WIDTH ; CERULEAN_CAVE_1F
+ warp_to 3, 11, CERULEAN_CAVE_2F_WIDTH ; CERULEAN_CAVE_1F
diff --git a/data/mapObjects/CeruleanCaveB1F.asm b/data/mapObjects/CeruleanCaveB1F.asm
new file mode 100755
index 00000000..193d674b
--- /dev/null
+++ b/data/mapObjects/CeruleanCaveB1F.asm
@@ -0,0 +1,17 @@
+CeruleanCaveB1F_Object:
+ db $7d ; border block
+
+ db 1 ; warps
+ warp 3, 6, 8, CERULEAN_CAVE_1F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_SLOWBRO, 27, 13, STAY, DOWN, 1, MEWTWO, 70
+ object SPRITE_BALL, 26, 1, STAY, NONE, 2, ULTRA_BALL
+ object SPRITE_BALL, 2, 13, STAY, NONE, 3, ULTRA_BALL
+ object SPRITE_BALL, 3, 13, STAY, NONE, 4, MAX_REVIVE
+ object SPRITE_BALL, 15, 3, STAY, NONE, 5, MAX_ELIXER
+
+ ; warp-to
+ warp_to 3, 6, CERULEAN_CAVE_B1F_WIDTH ; CERULEAN_CAVE_1F
diff --git a/data/mapObjects/CeruleanCity.asm b/data/mapObjects/CeruleanCity.asm
new file mode 100755
index 00000000..ca05e65f
--- /dev/null
+++ b/data/mapObjects/CeruleanCity.asm
@@ -0,0 +1,47 @@
+CeruleanCity_Object:
+ db $a ; border block
+
+ db 10 ; warps
+ warp 27, 11, 0, CERULEAN_TRASHED_HOUSE
+ warp 13, 15, 0, CERULEAN_TRADE_HOUSE
+ warp 19, 17, 0, CERULEAN_POKECENTER
+ warp 30, 19, 0, CERULEAN_GYM
+ warp 13, 25, 0, BIKE_SHOP
+ warp 25, 25, 0, CERULEAN_MART
+ warp 4, 11, 0, CERULEAN_CAVE_1F
+ warp 27, 9, 2, CERULEAN_TRASHED_HOUSE
+ warp 9, 11, 1, CERULEAN_BADGE_HOUSE
+ warp 9, 9, 0, CERULEAN_BADGE_HOUSE
+
+ db 6 ; signs
+ sign 23, 19, 12 ; CeruleanCityText12
+ sign 17, 29, 13 ; CeruleanCityText13
+ sign 26, 25, 14 ; MartSignText
+ sign 20, 17, 15 ; PokeCenterSignText
+ sign 11, 25, 16 ; CeruleanCityText16
+ sign 27, 21, 17 ; CeruleanCityText17
+
+ db 11 ; objects
+ object SPRITE_BLUE, 20, 2, STAY, DOWN, 1 ; person
+ object SPRITE_ROCKET, 30, 8, STAY, NONE, 2, OPP_ROCKET, 5
+ object SPRITE_BLACK_HAIR_BOY_1, 31, 20, STAY, DOWN, 3 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 15, 18, WALK, 1, 4 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 9, 21, WALK, 2, 5 ; person
+ object SPRITE_OFFICER_JENNY, 28, 12, STAY, DOWN, 6 ; person
+ object SPRITE_LASS, 29, 26, STAY, LEFT, 7 ; person
+ object SPRITE_BALL, 28, 26, STAY, DOWN, 8 ; person
+ object SPRITE_LASS, 9, 27, WALK, 2, 9 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 4, 12, STAY, DOWN, 10 ; person
+ object SPRITE_OFFICER_JENNY, 27, 12, STAY, DOWN, 11 ; person
+
+ ; warp-to
+ warp_to 27, 11, CERULEAN_CITY_WIDTH ; CERULEAN_TRASHED_HOUSE
+ warp_to 13, 15, CERULEAN_CITY_WIDTH ; CERULEAN_TRADE_HOUSE
+ warp_to 19, 17, CERULEAN_CITY_WIDTH ; CERULEAN_POKECENTER
+ warp_to 30, 19, CERULEAN_CITY_WIDTH ; CERULEAN_GYM
+ warp_to 13, 25, CERULEAN_CITY_WIDTH ; BIKE_SHOP
+ warp_to 25, 25, CERULEAN_CITY_WIDTH ; CERULEAN_MART
+ warp_to 4, 11, CERULEAN_CITY_WIDTH ; CERULEAN_CAVE_1F
+ warp_to 27, 9, CERULEAN_CITY_WIDTH ; CERULEAN_TRASHED_HOUSE
+ warp_to 9, 11, CERULEAN_CITY_WIDTH ; CERULEAN_BADGE_HOUSE
+ warp_to 9, 9, CERULEAN_CITY_WIDTH ; CERULEAN_BADGE_HOUSE
diff --git a/data/mapObjects/CeruleanGym.asm b/data/mapObjects/CeruleanGym.asm
new file mode 100755
index 00000000..96713648
--- /dev/null
+++ b/data/mapObjects/CeruleanGym.asm
@@ -0,0 +1,18 @@
+CeruleanGym_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 13, 3, -1
+ warp 5, 13, 3, -1
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_BRUNETTE_GIRL, 4, 2, STAY, DOWN, 1, OPP_MISTY, 1
+ object SPRITE_LASS, 2, 3, STAY, RIGHT, 2, OPP_JR_TRAINER_F, 1
+ object SPRITE_SWIMMER, 8, 7, STAY, LEFT, 3, OPP_SWIMMER, 1
+ object SPRITE_GYM_HELPER, 7, 10, STAY, DOWN, 4 ; person
+
+ ; warp-to
+ warp_to 4, 13, CERULEAN_GYM_WIDTH
+ warp_to 5, 13, CERULEAN_GYM_WIDTH
diff --git a/data/mapObjects/CeruleanMart.asm b/data/mapObjects/CeruleanMart.asm
new file mode 100755
index 00000000..4659375f
--- /dev/null
+++ b/data/mapObjects/CeruleanMart.asm
@@ -0,0 +1,17 @@
+CeruleanMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 5, -1
+ warp 4, 7, 5, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 3, 4, WALK, 1, 2 ; person
+ object SPRITE_LASS, 6, 2, WALK, 2, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, CERULEAN_MART_WIDTH
+ warp_to 4, 7, CERULEAN_MART_WIDTH
diff --git a/data/mapObjects/CeruleanPokecenter.asm b/data/mapObjects/CeruleanPokecenter.asm
new file mode 100755
index 00000000..78b2330e
--- /dev/null
+++ b/data/mapObjects/CeruleanPokecenter.asm
@@ -0,0 +1,19 @@
+CeruleanPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 2, -1
+ warp 4, 7, 2, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 10, 5, WALK, 0, 2 ; person
+ object SPRITE_GENTLEMAN, 4, 3, STAY, UP, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, CERULEAN_POKECENTER_WIDTH
+ warp_to 4, 7, CERULEAN_POKECENTER_WIDTH
diff --git a/data/mapObjects/CeruleanTradeHouse.asm b/data/mapObjects/CeruleanTradeHouse.asm
new file mode 100755
index 00000000..e51f9544
--- /dev/null
+++ b/data/mapObjects/CeruleanTradeHouse.asm
@@ -0,0 +1,18 @@
+CeruleanTradeHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 1, -1
+ warp 3, 7, 1, -1
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_GIRL, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_BULBASAUR, 4, 1, STAY, DOWN, 2 ; person
+ object SPRITE_ODDISH, 1, 4, STAY, NONE, 3 ; person
+ object SPRITE_SANDSHREW, 5, 3, STAY, LEFT, 4 ; person
+
+ ; warp-to
+ warp_to 2, 7, CERULEAN_TRADE_HOUSE_WIDTH
+ warp_to 3, 7, CERULEAN_TRADE_HOUSE_WIDTH
diff --git a/data/mapObjects/CeruleanTrashedHouse.asm b/data/mapObjects/CeruleanTrashedHouse.asm
new file mode 100755
index 00000000..44b7cf20
--- /dev/null
+++ b/data/mapObjects/CeruleanTrashedHouse.asm
@@ -0,0 +1,19 @@
+CeruleanTrashedHouse_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 2, 7, 0, -1
+ warp 3, 7, 0, -1
+ warp 3, 0, 7, -1
+
+ db 1 ; signs
+ sign 3, 0, 3 ; CeruleanHouseTrashedText3
+
+ db 2 ; objects
+ object SPRITE_FISHER, 2, 1, STAY, DOWN, 1 ; person
+ object SPRITE_GIRL, 5, 6, WALK, 2, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, CERULEAN_TRASHED_HOUSE_WIDTH
+ warp_to 3, 7, CERULEAN_TRASHED_HOUSE_WIDTH
+ warp_to 3, 0, CERULEAN_TRASHED_HOUSE_WIDTH
diff --git a/data/mapObjects/ChampionsRoom.asm b/data/mapObjects/ChampionsRoom.asm
new file mode 100755
index 00000000..1e0cb7f4
--- /dev/null
+++ b/data/mapObjects/ChampionsRoom.asm
@@ -0,0 +1,20 @@
+ChampionsRoom_Object:
+ db $3 ; border block
+
+ db 4 ; warps
+ warp 3, 7, 1, LANCES_ROOM
+ warp 4, 7, 2, LANCES_ROOM
+ warp 3, 0, 0, HALL_OF_FAME
+ warp 4, 0, 0, HALL_OF_FAME
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BLUE, 4, 2, STAY, DOWN, 1 ; person
+ object SPRITE_OAK, 3, 7, STAY, UP, 2 ; person
+
+ ; warp-to
+ warp_to 3, 7, CHAMPIONS_ROOM_WIDTH ; LANCES_ROOM
+ warp_to 4, 7, CHAMPIONS_ROOM_WIDTH ; LANCES_ROOM
+ warp_to 3, 0, CHAMPIONS_ROOM_WIDTH ; HALL_OF_FAME
+ warp_to 4, 0, CHAMPIONS_ROOM_WIDTH ; HALL_OF_FAME
diff --git a/data/mapObjects/CinnabarGym.asm b/data/mapObjects/CinnabarGym.asm
new file mode 100755
index 00000000..1a6e96cd
--- /dev/null
+++ b/data/mapObjects/CinnabarGym.asm
@@ -0,0 +1,23 @@
+CinnabarGym_Object:
+ db $2e ; border block
+
+ db 2 ; warps
+ warp 16, 17, 1, -1
+ warp 17, 17, 1, -1
+
+ db 0 ; signs
+
+ db 9 ; objects
+ object SPRITE_MR_MASTERBALL, 3, 3, STAY, DOWN, 1, OPP_BLAINE, 1
+ object SPRITE_BLACK_HAIR_BOY_2, 17, 2, STAY, DOWN, 2, OPP_SUPER_NERD, 9
+ object SPRITE_BLACK_HAIR_BOY_2, 17, 8, STAY, DOWN, 3, OPP_BURGLAR, 4
+ object SPRITE_BLACK_HAIR_BOY_2, 11, 4, STAY, DOWN, 4, OPP_SUPER_NERD, 10
+ object SPRITE_BLACK_HAIR_BOY_2, 11, 8, STAY, DOWN, 5, OPP_BURGLAR, 5
+ object SPRITE_BLACK_HAIR_BOY_2, 11, 14, STAY, DOWN, 6, OPP_SUPER_NERD, 11
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 14, STAY, DOWN, 7, OPP_BURGLAR, 6
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 8, STAY, DOWN, 8, OPP_SUPER_NERD, 12
+ object SPRITE_GYM_HELPER, 16, 13, STAY, DOWN, 9 ; person
+
+ ; warp-to
+ warp_to 16, 17, CINNABAR_GYM_WIDTH
+ warp_to 17, 17, CINNABAR_GYM_WIDTH
diff --git a/data/mapObjects/CinnabarIsland.asm b/data/mapObjects/CinnabarIsland.asm
new file mode 100755
index 00000000..1932e134
--- /dev/null
+++ b/data/mapObjects/CinnabarIsland.asm
@@ -0,0 +1,27 @@
+CinnabarIsland_Object:
+ db $43 ; border block
+
+ db 5 ; warps
+ warp 6, 3, 1, POKEMON_MANSION_1F
+ warp 18, 3, 0, CINNABAR_GYM
+ warp 6, 9, 0, CINNABAR_LAB
+ warp 11, 11, 0, CINNABAR_POKECENTER
+ warp 15, 11, 0, CINNABAR_MART
+
+ db 5 ; signs
+ sign 9, 5, 3 ; CinnabarIslandText3
+ sign 16, 11, 4 ; MartSignText
+ sign 12, 11, 5 ; PokeCenterSignText
+ sign 9, 11, 6 ; CinnabarIslandText6
+ sign 13, 3, 7 ; CinnabarIslandText7
+
+ db 2 ; objects
+ object SPRITE_GIRL, 12, 5, WALK, 2, 1 ; person
+ object SPRITE_GAMBLER, 14, 6, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 6, 3, CINNABAR_ISLAND_WIDTH ; POKEMON_MANSION_1F
+ warp_to 18, 3, CINNABAR_ISLAND_WIDTH ; CINNABAR_GYM
+ warp_to 6, 9, CINNABAR_ISLAND_WIDTH ; CINNABAR_LAB
+ warp_to 11, 11, CINNABAR_ISLAND_WIDTH ; CINNABAR_POKECENTER
+ warp_to 15, 11, CINNABAR_ISLAND_WIDTH ; CINNABAR_MART
diff --git a/data/mapObjects/CinnabarLab.asm b/data/mapObjects/CinnabarLab.asm
new file mode 100755
index 00000000..deb5d8ed
--- /dev/null
+++ b/data/mapObjects/CinnabarLab.asm
@@ -0,0 +1,25 @@
+CinnabarLab_Object:
+ db $17 ; border block
+
+ db 5 ; warps
+ warp 2, 7, 2, -1
+ warp 3, 7, 2, -1
+ warp 8, 4, 0, CINNABAR_LAB_TRADE_ROOM
+ warp 12, 4, 0, CINNABAR_LAB_METRONOME_ROOM
+ warp 16, 4, 0, CINNABAR_LAB_FOSSIL_ROOM
+
+ db 4 ; signs
+ sign 3, 2, 2 ; Lab1Text2
+ sign 9, 4, 3 ; Lab1Text3
+ sign 13, 4, 4 ; Lab1Text4
+ sign 17, 4, 5 ; Lab1Text5
+
+ db 1 ; objects
+ object SPRITE_FISHER, 1, 3, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, CINNABAR_LAB_WIDTH
+ warp_to 3, 7, CINNABAR_LAB_WIDTH
+ warp_to 8, 4, CINNABAR_LAB_WIDTH ; CINNABAR_LAB_TRADE_ROOM
+ warp_to 12, 4, CINNABAR_LAB_WIDTH ; CINNABAR_LAB_METRONOME_ROOM
+ warp_to 16, 4, CINNABAR_LAB_WIDTH ; CINNABAR_LAB_FOSSIL_ROOM
diff --git a/data/mapObjects/CinnabarLabFossilRoom.asm b/data/mapObjects/CinnabarLabFossilRoom.asm
new file mode 100755
index 00000000..d31502e6
--- /dev/null
+++ b/data/mapObjects/CinnabarLabFossilRoom.asm
@@ -0,0 +1,16 @@
+CinnabarLabFossilRoom_Object:
+ db $17 ; border block
+
+ db 2 ; warps
+ warp 2, 7, 4, CINNABAR_LAB
+ warp 3, 7, 4, CINNABAR_LAB
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_OAK_AIDE, 5, 2, WALK, 2, 1 ; person
+ object SPRITE_OAK_AIDE, 7, 6, STAY, UP, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, CINNABAR_LAB_FOSSIL_ROOM_WIDTH ; CINNABAR_LAB
+ warp_to 3, 7, CINNABAR_LAB_FOSSIL_ROOM_WIDTH ; CINNABAR_LAB
diff --git a/data/mapObjects/CinnabarLabMetronomeRoom.asm b/data/mapObjects/CinnabarLabMetronomeRoom.asm
new file mode 100755
index 00000000..37f93d43
--- /dev/null
+++ b/data/mapObjects/CinnabarLabMetronomeRoom.asm
@@ -0,0 +1,19 @@
+CinnabarLabMetronomeRoom_Object:
+ db $17 ; border block
+
+ db 2 ; warps
+ warp 2, 7, 3, CINNABAR_LAB
+ warp 3, 7, 3, CINNABAR_LAB
+
+ db 3 ; signs
+ sign 0, 4, 3 ; Lab3Text3
+ sign 1, 4, 4 ; Lab3Text4
+ sign 2, 1, 5 ; Lab3Text5
+
+ db 2 ; objects
+ object SPRITE_OAK_AIDE, 7, 2, STAY, DOWN, 1 ; person
+ object SPRITE_OAK_AIDE, 2, 3, WALK, 2, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, CINNABAR_LAB_METRONOME_ROOM_WIDTH ; CINNABAR_LAB
+ warp_to 3, 7, CINNABAR_LAB_METRONOME_ROOM_WIDTH ; CINNABAR_LAB
diff --git a/data/mapObjects/CinnabarLabTradeRoom.asm b/data/mapObjects/CinnabarLabTradeRoom.asm
new file mode 100755
index 00000000..449cc914
--- /dev/null
+++ b/data/mapObjects/CinnabarLabTradeRoom.asm
@@ -0,0 +1,17 @@
+CinnabarLabTradeRoom_Object:
+ db $17 ; border block
+
+ db 2 ; warps
+ warp 2, 7, 2, CINNABAR_LAB
+ warp 3, 7, 2, CINNABAR_LAB
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 2, STAY, DOWN, 1 ; person
+ object SPRITE_OLD_PERSON, 1, 4, STAY, NONE, 2 ; person
+ object SPRITE_FOULARD_WOMAN, 5, 5, STAY, UP, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, CINNABAR_LAB_TRADE_ROOM_WIDTH ; CINNABAR_LAB
+ warp_to 3, 7, CINNABAR_LAB_TRADE_ROOM_WIDTH ; CINNABAR_LAB
diff --git a/data/mapObjects/CinnabarMart.asm b/data/mapObjects/CinnabarMart.asm
new file mode 100755
index 00000000..af88ddf0
--- /dev/null
+++ b/data/mapObjects/CinnabarMart.asm
@@ -0,0 +1,17 @@
+CinnabarMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 4, -1
+ warp 4, 7, 4, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_ERIKA, 6, 2, STAY, NONE, 2 ; person
+ object SPRITE_OAK_AIDE, 3, 4, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, CINNABAR_MART_WIDTH
+ warp_to 4, 7, CINNABAR_MART_WIDTH
diff --git a/data/mapObjects/CinnabarPokecenter.asm b/data/mapObjects/CinnabarPokecenter.asm
new file mode 100755
index 00000000..3c9efb34
--- /dev/null
+++ b/data/mapObjects/CinnabarPokecenter.asm
@@ -0,0 +1,19 @@
+CinnabarPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 3, -1
+ warp 4, 7, 3, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_LASS, 9, 4, WALK, 0, 2 ; person
+ object SPRITE_GENTLEMAN, 2, 6, STAY, NONE, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, CINNABAR_POKECENTER_WIDTH
+ warp_to 4, 7, CINNABAR_POKECENTER_WIDTH
diff --git a/data/mapObjects/Colosseum.asm b/data/mapObjects/Colosseum.asm
new file mode 100644
index 00000000..18762584
--- /dev/null
+++ b/data/mapObjects/Colosseum.asm
@@ -0,0 +1,9 @@
+Colosseum_Object:
+ db $e ; border block
+
+ db 0 ; warps
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_RED, 2, 2, STAY, 0, 1 ; person
diff --git a/data/mapObjects/CopycatsHouse1F.asm b/data/mapObjects/CopycatsHouse1F.asm
new file mode 100755
index 00000000..8bde12fe
--- /dev/null
+++ b/data/mapObjects/CopycatsHouse1F.asm
@@ -0,0 +1,19 @@
+CopycatsHouse1F_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 2, 7, 0, -1
+ warp 3, 7, 0, -1
+ warp 7, 1, 0, COPYCATS_HOUSE_2F
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MOM_GEISHA, 2, 2, STAY, DOWN, 1 ; person
+ object SPRITE_FAT_BALD_GUY, 5, 4, STAY, LEFT, 2 ; person
+ object SPRITE_CHANSEY, 1, 4, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, COPYCATS_HOUSE_1F_WIDTH
+ warp_to 3, 7, COPYCATS_HOUSE_1F_WIDTH
+ warp_to 7, 1, COPYCATS_HOUSE_1F_WIDTH ; COPYCATS_HOUSE_2F
diff --git a/data/mapObjects/CopycatsHouse2F.asm b/data/mapObjects/CopycatsHouse2F.asm
new file mode 100755
index 00000000..18b56419
--- /dev/null
+++ b/data/mapObjects/CopycatsHouse2F.asm
@@ -0,0 +1,19 @@
+CopycatsHouse2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 1, 2, COPYCATS_HOUSE_1F
+
+ db 2 ; signs
+ sign 3, 5, 6 ; CopycatsHouse2FText6
+ sign 0, 1, 7 ; CopycatsHouse2FText7
+
+ db 5 ; objects
+ object SPRITE_BRUNETTE_GIRL, 4, 3, WALK, 0, 1 ; person
+ object SPRITE_BIRD, 4, 6, WALK, 2, 2 ; person
+ object SPRITE_SLOWBRO, 5, 1, STAY, DOWN, 3 ; person
+ object SPRITE_BIRD, 2, 0, STAY, DOWN, 4 ; person
+ object SPRITE_CLEFAIRY, 1, 6, STAY, RIGHT, 5 ; person
+
+ ; warp-to
+ warp_to 7, 1, COPYCATS_HOUSE_2F_WIDTH ; COPYCATS_HOUSE_1F
diff --git a/data/mapObjects/Daycare.asm b/data/mapObjects/Daycare.asm
new file mode 100755
index 00000000..c58c83e4
--- /dev/null
+++ b/data/mapObjects/Daycare.asm
@@ -0,0 +1,15 @@
+Daycare_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 4, -1
+ warp 3, 7, 4, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GENTLEMAN, 2, 3, STAY, RIGHT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, DAYCARE_WIDTH
+ warp_to 3, 7, DAYCARE_WIDTH
diff --git a/data/mapObjects/DiglettsCave.asm b/data/mapObjects/DiglettsCave.asm
new file mode 100755
index 00000000..b4fd0af8
--- /dev/null
+++ b/data/mapObjects/DiglettsCave.asm
@@ -0,0 +1,14 @@
+DiglettsCave_Object:
+ db $19 ; border block
+
+ db 2 ; warps
+ warp 5, 5, 2, DIGLETTS_CAVE_ROUTE_2
+ warp 37, 31, 2, DIGLETTS_CAVE_ROUTE_11
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 5, 5, DIGLETTS_CAVE_WIDTH ; DIGLETTS_CAVE_ROUTE_2
+ warp_to 37, 31, DIGLETTS_CAVE_WIDTH ; DIGLETTS_CAVE_ROUTE_11
diff --git a/data/mapObjects/DiglettsCaveRoute11.asm b/data/mapObjects/DiglettsCaveRoute11.asm
new file mode 100755
index 00000000..a4c70f06
--- /dev/null
+++ b/data/mapObjects/DiglettsCaveRoute11.asm
@@ -0,0 +1,17 @@
+DiglettsCaveRoute11_Object:
+ db $7d ; border block
+
+ db 3 ; warps
+ warp 2, 7, 4, -1
+ warp 3, 7, 4, -1
+ warp 4, 4, 1, DIGLETTS_CAVE
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GAMBLER, 2, 3, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, DIGLETTS_CAVE_ROUTE_11_WIDTH
+ warp_to 3, 7, DIGLETTS_CAVE_ROUTE_11_WIDTH
+ warp_to 4, 4, DIGLETTS_CAVE_ROUTE_11_WIDTH ; DIGLETTS_CAVE
diff --git a/data/mapObjects/DiglettsCaveRoute2.asm b/data/mapObjects/DiglettsCaveRoute2.asm
new file mode 100755
index 00000000..0567fee6
--- /dev/null
+++ b/data/mapObjects/DiglettsCaveRoute2.asm
@@ -0,0 +1,17 @@
+DiglettsCaveRoute2_Object:
+ db $7d ; border block
+
+ db 3 ; warps
+ warp 2, 7, 0, -1
+ warp 3, 7, 0, -1
+ warp 4, 4, 0, DIGLETTS_CAVE
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FISHER, 3, 3, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, DIGLETTS_CAVE_ROUTE_2_WIDTH
+ warp_to 3, 7, DIGLETTS_CAVE_ROUTE_2_WIDTH
+ warp_to 4, 4, DIGLETTS_CAVE_ROUTE_2_WIDTH ; DIGLETTS_CAVE
diff --git a/data/mapObjects/FightingDojo.asm b/data/mapObjects/FightingDojo.asm
new file mode 100755
index 00000000..fdc7b838
--- /dev/null
+++ b/data/mapObjects/FightingDojo.asm
@@ -0,0 +1,21 @@
+FightingDojo_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 11, 1, -1
+ warp 5, 11, 1, -1
+
+ db 0 ; signs
+
+ db 7 ; objects
+ object SPRITE_HIKER, 5, 3, STAY, DOWN, 1, OPP_BLACKBELT, 1
+ object SPRITE_HIKER, 3, 4, STAY, RIGHT, 2, OPP_BLACKBELT, 2
+ object SPRITE_HIKER, 3, 6, STAY, RIGHT, 3, OPP_BLACKBELT, 3
+ object SPRITE_HIKER, 5, 5, STAY, LEFT, 4, OPP_BLACKBELT, 4
+ object SPRITE_HIKER, 5, 7, STAY, LEFT, 5, OPP_BLACKBELT, 5
+ object SPRITE_BALL, 4, 1, STAY, NONE, 6 ; person
+ object SPRITE_BALL, 5, 1, STAY, NONE, 7 ; person
+
+ ; warp-to
+ warp_to 4, 11, FIGHTING_DOJO_WIDTH
+ warp_to 5, 11, FIGHTING_DOJO_WIDTH
diff --git a/data/mapObjects/FuchsiaBillsGrandpasHouse.asm b/data/mapObjects/FuchsiaBillsGrandpasHouse.asm
new file mode 100755
index 00000000..363b56f9
--- /dev/null
+++ b/data/mapObjects/FuchsiaBillsGrandpasHouse.asm
@@ -0,0 +1,17 @@
+FuchsiaBillsGrandpasHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 1, -1
+ warp 3, 7, 1, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MOM_GEISHA, 2, 3, STAY, RIGHT, 1 ; person
+ object SPRITE_GAMBLER, 7, 2, STAY, UP, 2 ; person
+ object SPRITE_BUG_CATCHER, 5, 5, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, FUCHSIA_BILLS_GRANDPAS_HOUSE_WIDTH
+ warp_to 3, 7, FUCHSIA_BILLS_GRANDPAS_HOUSE_WIDTH
diff --git a/data/mapObjects/FuchsiaCity.asm b/data/mapObjects/FuchsiaCity.asm
new file mode 100755
index 00000000..0368905c
--- /dev/null
+++ b/data/mapObjects/FuchsiaCity.asm
@@ -0,0 +1,52 @@
+FuchsiaCity_Object:
+ db $f ; border block
+
+ db 9 ; warps
+ warp 5, 13, 0, FUCHSIA_MART
+ warp 11, 27, 0, FUCHSIA_BILLS_GRANDPAS_HOUSE
+ warp 19, 27, 0, FUCHSIA_POKECENTER
+ warp 27, 27, 0, WARDENS_HOUSE
+ warp 18, 3, 0, SAFARI_ZONE_GATE
+ warp 5, 27, 0, FUCHSIA_GYM
+ warp 22, 13, 0, FUCHSIA_MEETING_ROOM
+ warp 31, 27, 1, FUCHSIA_GOOD_ROD_HOUSE
+ warp 31, 24, 0, FUCHSIA_GOOD_ROD_HOUSE
+
+ db 14 ; signs
+ sign 15, 23, 11 ; FuchsiaCityText11
+ sign 25, 15, 12 ; FuchsiaCityText12
+ sign 17, 5, 13 ; FuchsiaCityText13
+ sign 6, 13, 14 ; MartSignText
+ sign 20, 27, 15 ; PokeCenterSignText
+ sign 27, 29, 16 ; FuchsiaCityText16
+ sign 21, 15, 17 ; FuchsiaCityText17
+ sign 5, 29, 18 ; FuchsiaCityText18
+ sign 33, 7, 19 ; FuchsiaCityText19
+ sign 27, 7, 20 ; FuchsiaCityText20
+ sign 13, 7, 21 ; FuchsiaCityText21
+ sign 31, 13, 22 ; FuchsiaCityText22
+ sign 13, 15, 23 ; FuchsiaCityText23
+ sign 7, 7, 24 ; FuchsiaCityText24
+
+ db 10 ; objects
+ object SPRITE_BUG_CATCHER, 10, 12, WALK, 2, 1 ; person
+ object SPRITE_GAMBLER, 28, 17, WALK, 2, 2 ; person
+ object SPRITE_FISHER2, 30, 14, STAY, DOWN, 3 ; person
+ object SPRITE_BUG_CATCHER, 24, 8, STAY, UP, 4 ; person
+ object SPRITE_CHANSEY, 31, 5, STAY, DOWN, 5 ; person
+ object SPRITE_BALL, 25, 6, STAY, NONE, 6 ; person
+ object SPRITE_SLOWBRO, 12, 6, WALK, 2, 7 ; person
+ object SPRITE_SLOWBRO, 30, 12, WALK, 2, 8 ; person
+ object SPRITE_SEEL, 8, 17, WALK, 0, 9 ; person
+ object SPRITE_OMANYTE, 6, 5, STAY, NONE, 10 ; person
+
+ ; warp-to
+ warp_to 5, 13, FUCHSIA_CITY_WIDTH ; FUCHSIA_MART
+ warp_to 11, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_BILLS_GRANDPAS_HOUSE
+ warp_to 19, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_POKECENTER
+ warp_to 27, 27, FUCHSIA_CITY_WIDTH ; WARDENS_HOUSE
+ warp_to 18, 3, FUCHSIA_CITY_WIDTH ; SAFARI_ZONE_GATE
+ warp_to 5, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_GYM
+ warp_to 22, 13, FUCHSIA_CITY_WIDTH ; FUCHSIA_MEETING_ROOM
+ warp_to 31, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_GOOD_ROD_HOUSE
+ warp_to 31, 24, FUCHSIA_CITY_WIDTH ; FUCHSIA_GOOD_ROD_HOUSE
diff --git a/data/mapObjects/FuchsiaGoodRodHouse.asm b/data/mapObjects/FuchsiaGoodRodHouse.asm
new file mode 100755
index 00000000..390447c8
--- /dev/null
+++ b/data/mapObjects/FuchsiaGoodRodHouse.asm
@@ -0,0 +1,17 @@
+FuchsiaGoodRodHouse_Object:
+ db $c ; border block
+
+ db 3 ; warps
+ warp 2, 0, 8, -1
+ warp 2, 7, 7, -1
+ warp 3, 7, 7, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FISHER, 5, 3, STAY, RIGHT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 0, FUCHSIA_GOOD_ROD_HOUSE_WIDTH
+ warp_to 2, 7, FUCHSIA_GOOD_ROD_HOUSE_WIDTH
+ warp_to 3, 7, FUCHSIA_GOOD_ROD_HOUSE_WIDTH
diff --git a/data/mapObjects/FuchsiaGym.asm b/data/mapObjects/FuchsiaGym.asm
new file mode 100755
index 00000000..4e717086
--- /dev/null
+++ b/data/mapObjects/FuchsiaGym.asm
@@ -0,0 +1,22 @@
+FuchsiaGym_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 17, 5, -1
+ warp 5, 17, 5, -1
+
+ db 0 ; signs
+
+ db 8 ; objects
+ object SPRITE_LAPRAS_GIVER, 4, 10, STAY, DOWN, 1, OPP_KOGA, 1
+ object SPRITE_ROCKER, 8, 13, STAY, DOWN, 2, OPP_JUGGLER, 7
+ object SPRITE_ROCKER, 7, 8, STAY, RIGHT, 3, OPP_JUGGLER, 3
+ object SPRITE_ROCKER, 1, 12, STAY, DOWN, 4, OPP_JUGGLER, 8
+ object SPRITE_ROCKER, 3, 5, STAY, UP, 5, OPP_TAMER, 1
+ object SPRITE_ROCKER, 8, 2, STAY, DOWN, 6, OPP_TAMER, 2
+ object SPRITE_ROCKER, 2, 7, STAY, LEFT, 7, OPP_JUGGLER, 4
+ object SPRITE_GYM_HELPER, 7, 15, STAY, DOWN, 8 ; person
+
+ ; warp-to
+ warp_to 4, 17, FUCHSIA_GYM_WIDTH
+ warp_to 5, 17, FUCHSIA_GYM_WIDTH
diff --git a/data/mapObjects/FuchsiaMart.asm b/data/mapObjects/FuchsiaMart.asm
new file mode 100755
index 00000000..cfa71d8d
--- /dev/null
+++ b/data/mapObjects/FuchsiaMart.asm
@@ -0,0 +1,17 @@
+FuchsiaMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 0, -1
+ warp 4, 7, 0, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_FAT_BALD_GUY, 4, 2, STAY, NONE, 2 ; person
+ object SPRITE_LASS, 6, 5, WALK, 1, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, FUCHSIA_MART_WIDTH
+ warp_to 4, 7, FUCHSIA_MART_WIDTH
diff --git a/data/mapObjects/FuchsiaMeetingRoom.asm b/data/mapObjects/FuchsiaMeetingRoom.asm
new file mode 100755
index 00000000..9130d920
--- /dev/null
+++ b/data/mapObjects/FuchsiaMeetingRoom.asm
@@ -0,0 +1,17 @@
+FuchsiaMeetingRoom_Object:
+ db $17 ; border block
+
+ db 2 ; warps
+ warp 4, 7, 6, -1
+ warp 5, 7, 6, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_WHITE_PLAYER, 4, 1, STAY, DOWN, 1 ; person
+ object SPRITE_WHITE_PLAYER, 0, 2, STAY, UP, 2 ; person
+ object SPRITE_WHITE_PLAYER, 10, 1, STAY, DOWN, 3 ; person
+
+ ; warp-to
+ warp_to 4, 7, FUCHSIA_MEETING_ROOM_WIDTH
+ warp_to 5, 7, FUCHSIA_MEETING_ROOM_WIDTH
diff --git a/data/mapObjects/FuchsiaPokecenter.asm b/data/mapObjects/FuchsiaPokecenter.asm
new file mode 100755
index 00000000..b0056acd
--- /dev/null
+++ b/data/mapObjects/FuchsiaPokecenter.asm
@@ -0,0 +1,19 @@
+FuchsiaPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 2, -1
+ warp 4, 7, 2, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_ROCKER, 4, 3, STAY, UP, 2 ; person
+ object SPRITE_LASS, 6, 5, WALK, 2, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, FUCHSIA_POKECENTER_WIDTH
+ warp_to 4, 7, FUCHSIA_POKECENTER_WIDTH
diff --git a/data/mapObjects/GameCorner.asm b/data/mapObjects/GameCorner.asm
new file mode 100755
index 00000000..afac025e
--- /dev/null
+++ b/data/mapObjects/GameCorner.asm
@@ -0,0 +1,28 @@
+GameCorner_Object:
+ db $f ; border block
+
+ db 3 ; warps
+ warp 15, 17, 7, -1
+ warp 16, 17, 7, -1
+ warp 17, 4, 1, ROCKET_HIDEOUT_B1F
+
+ db 1 ; signs
+ sign 9, 4, 12 ; CeladonGameCornerText12
+
+ db 11 ; objects
+ object SPRITE_FOULARD_WOMAN, 2, 6, STAY, DOWN, 1 ; person
+ object SPRITE_MART_GUY, 5, 6, STAY, DOWN, 2 ; person
+ object SPRITE_FAT_BALD_GUY, 2, 10, STAY, LEFT, 3 ; person
+ object SPRITE_FOULARD_WOMAN, 2, 13, STAY, LEFT, 4 ; person
+ object SPRITE_FISHER, 5, 11, STAY, RIGHT, 5 ; person
+ object SPRITE_MOM_GEISHA, 8, 11, STAY, LEFT, 6 ; person
+ object SPRITE_GYM_HELPER, 8, 14, STAY, LEFT, 7 ; person
+ object SPRITE_GAMBLER, 11, 15, STAY, RIGHT, 8 ; person
+ object SPRITE_FAT_BALD_GUY, 14, 11, STAY, LEFT, 9 ; person
+ object SPRITE_FISHER, 17, 13, STAY, RIGHT, 10 ; person
+ object SPRITE_ROCKET, 9, 5, STAY, UP, 11, OPP_ROCKET, 7
+
+ ; warp-to
+ warp_to 15, 17, GAME_CORNER_WIDTH
+ warp_to 16, 17, GAME_CORNER_WIDTH
+ warp_to 17, 4, GAME_CORNER_WIDTH ; ROCKET_HIDEOUT_B1F
diff --git a/data/mapObjects/GameCornerPrizeRoom.asm b/data/mapObjects/GameCornerPrizeRoom.asm
new file mode 100755
index 00000000..35cd3ac8
--- /dev/null
+++ b/data/mapObjects/GameCornerPrizeRoom.asm
@@ -0,0 +1,19 @@
+GameCornerPrizeRoom_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 4, 7, 9, -1
+ warp 5, 7, 9, -1
+
+ db 3 ; signs
+ sign 2, 2, 3 ; CeladonPrizeRoomText3
+ sign 4, 2, 4 ; CeladonPrizeRoomText4
+ sign 6, 2, 5 ; CeladonPrizeRoomText5
+
+ db 2 ; objects
+ object SPRITE_BALDING_GUY, 1, 4, STAY, NONE, 1 ; person
+ object SPRITE_GAMBLER, 7, 3, WALK, 2, 2 ; person
+
+ ; warp-to
+ warp_to 4, 7, GAME_CORNER_PRIZE_ROOM_WIDTH
+ warp_to 5, 7, GAME_CORNER_PRIZE_ROOM_WIDTH
diff --git a/data/mapObjects/HallOfFame.asm b/data/mapObjects/HallOfFame.asm
new file mode 100755
index 00000000..3762d871
--- /dev/null
+++ b/data/mapObjects/HallOfFame.asm
@@ -0,0 +1,15 @@
+HallOfFame_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 7, 2, CHAMPIONS_ROOM
+ warp 5, 7, 3, CHAMPIONS_ROOM
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_OAK, 5, 2, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 4, 7, HALL_OF_FAME_WIDTH ; CHAMPIONS_ROOM
+ warp_to 5, 7, HALL_OF_FAME_WIDTH ; CHAMPIONS_ROOM
diff --git a/data/mapObjects/IndigoPlateau.asm b/data/mapObjects/IndigoPlateau.asm
new file mode 100755
index 00000000..1447be11
--- /dev/null
+++ b/data/mapObjects/IndigoPlateau.asm
@@ -0,0 +1,14 @@
+IndigoPlateau_Object:
+ db $e ; border block
+
+ db 2 ; warps
+ warp 9, 5, 0, INDIGO_PLATEAU_LOBBY
+ warp 10, 5, 0, INDIGO_PLATEAU_LOBBY
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 9, 5, INDIGO_PLATEAU_WIDTH ; INDIGO_PLATEAU_LOBBY
+ warp_to 10, 5, INDIGO_PLATEAU_WIDTH ; INDIGO_PLATEAU_LOBBY
diff --git a/data/mapObjects/IndigoPlateauLobby.asm b/data/mapObjects/IndigoPlateauLobby.asm
new file mode 100755
index 00000000..d7de23a7
--- /dev/null
+++ b/data/mapObjects/IndigoPlateauLobby.asm
@@ -0,0 +1,22 @@
+IndigoPlateauLobby_Object:
+ db $0 ; border block
+
+ db 3 ; warps
+ warp 7, 11, 0, -1
+ warp 8, 11, 1, -1
+ warp 8, 0, 0, LORELEIS_ROOM
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_NURSE, 7, 5, STAY, DOWN, 1 ; person
+ object SPRITE_GYM_HELPER, 4, 9, STAY, RIGHT, 2 ; person
+ object SPRITE_LASS, 5, 1, STAY, DOWN, 3 ; person
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 4 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 13, 6, STAY, DOWN, 5 ; person
+ object SPRITE_CHANSEY, 8, 5, STAY, DOWN, 6 ; person
+
+ ; warp-to
+ warp_to 7, 11, INDIGO_PLATEAU_LOBBY_WIDTH
+ warp_to 8, 11, INDIGO_PLATEAU_LOBBY_WIDTH
+ warp_to 8, 0, INDIGO_PLATEAU_LOBBY_WIDTH ; LORELEIS_ROOM
diff --git a/data/mapObjects/LancesRoom.asm b/data/mapObjects/LancesRoom.asm
new file mode 100755
index 00000000..6f22631a
--- /dev/null
+++ b/data/mapObjects/LancesRoom.asm
@@ -0,0 +1,17 @@
+LancesRoom_Object:
+ db $3 ; border block
+
+ db 3 ; warps
+ warp 24, 16, 2, AGATHAS_ROOM
+ warp 5, 0, 0, CHAMPIONS_ROOM
+ warp 6, 0, 0, CHAMPIONS_ROOM
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_LANCE, 6, 1, STAY, DOWN, 1, OPP_LANCE, 1
+
+ ; warp-to
+ warp_to 24, 16, LANCES_ROOM_WIDTH ; AGATHAS_ROOM
+ warp_to 5, 0, LANCES_ROOM_WIDTH ; CHAMPIONS_ROOM
+ warp_to 6, 0, LANCES_ROOM_WIDTH ; CHAMPIONS_ROOM
diff --git a/data/mapObjects/LavenderCuboneHouse.asm b/data/mapObjects/LavenderCuboneHouse.asm
new file mode 100755
index 00000000..96f1b3ba
--- /dev/null
+++ b/data/mapObjects/LavenderCuboneHouse.asm
@@ -0,0 +1,16 @@
+LavenderCuboneHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 4, -1
+ warp 3, 7, 4, -1
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_SLOWBRO, 3, 5, STAY, UP, 1 ; person
+ object SPRITE_BRUNETTE_GIRL, 2, 4, STAY, RIGHT, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, LAVENDER_CUBONE_HOUSE_WIDTH
+ warp_to 3, 7, LAVENDER_CUBONE_HOUSE_WIDTH
diff --git a/data/mapObjects/LavenderMart.asm b/data/mapObjects/LavenderMart.asm
new file mode 100755
index 00000000..df14ad39
--- /dev/null
+++ b/data/mapObjects/LavenderMart.asm
@@ -0,0 +1,17 @@
+LavenderMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 3, -1
+ warp 4, 7, 3, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_BALDING_GUY, 3, 4, STAY, NONE, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 7, 2, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, LAVENDER_MART_WIDTH
+ warp_to 4, 7, LAVENDER_MART_WIDTH
diff --git a/data/mapObjects/LavenderPokecenter.asm b/data/mapObjects/LavenderPokecenter.asm
new file mode 100755
index 00000000..6e38a8e9
--- /dev/null
+++ b/data/mapObjects/LavenderPokecenter.asm
@@ -0,0 +1,19 @@
+LavenderPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 0, -1
+ warp 4, 7, 0, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_GENTLEMAN, 5, 3, STAY, NONE, 2 ; person
+ object SPRITE_LITTLE_GIRL, 10, 5, WALK, 2, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, LAVENDER_POKECENTER_WIDTH
+ warp_to 4, 7, LAVENDER_POKECENTER_WIDTH
diff --git a/data/mapObjects/LavenderTown.asm b/data/mapObjects/LavenderTown.asm
new file mode 100755
index 00000000..4aead666
--- /dev/null
+++ b/data/mapObjects/LavenderTown.asm
@@ -0,0 +1,31 @@
+LavenderTown_Object:
+ db $2c ; border block
+
+ db 6 ; warps
+ warp 3, 5, 0, LAVENDER_POKECENTER
+ warp 14, 5, 0, POKEMON_TOWER_1F
+ warp 7, 9, 0, MR_FUJIS_HOUSE
+ warp 15, 13, 0, LAVENDER_MART
+ warp 3, 13, 0, LAVENDER_CUBONE_HOUSE
+ warp 7, 13, 0, NAME_RATERS_HOUSE
+
+ db 6 ; signs
+ sign 11, 9, 4 ; LavenderTownText4
+ sign 9, 3, 5 ; LavenderTownText5
+ sign 16, 13, 6 ; MartSignText
+ sign 4, 5, 7 ; PokeCenterSignText
+ sign 5, 9, 8 ; LavenderTownText8
+ sign 17, 7, 9 ; LavenderTownText9
+
+ db 3 ; objects
+ object SPRITE_LITTLE_GIRL, 15, 9, WALK, 0, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 9, 10, STAY, NONE, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 8, 7, WALK, 2, 3 ; person
+
+ ; warp-to
+ warp_to 3, 5, LAVENDER_TOWN_WIDTH ; LAVENDER_POKECENTER
+ warp_to 14, 5, LAVENDER_TOWN_WIDTH ; POKEMON_TOWER_1F
+ warp_to 7, 9, LAVENDER_TOWN_WIDTH ; MR_FUJIS_HOUSE
+ warp_to 15, 13, LAVENDER_TOWN_WIDTH ; LAVENDER_MART
+ warp_to 3, 13, LAVENDER_TOWN_WIDTH ; LAVENDER_CUBONE_HOUSE
+ warp_to 7, 13, LAVENDER_TOWN_WIDTH ; NAME_RATERS_HOUSE
diff --git a/data/mapObjects/LoreleisRoom.asm b/data/mapObjects/LoreleisRoom.asm
new file mode 100755
index 00000000..06450bb4
--- /dev/null
+++ b/data/mapObjects/LoreleisRoom.asm
@@ -0,0 +1,19 @@
+LoreleisRoom_Object:
+ db $3 ; border block
+
+ db 4 ; warps
+ warp 4, 11, 2, INDIGO_PLATEAU_LOBBY
+ warp 5, 11, 2, INDIGO_PLATEAU_LOBBY
+ warp 4, 0, 0, BRUNOS_ROOM
+ warp 5, 0, 1, BRUNOS_ROOM
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_LORELEI, 5, 2, STAY, DOWN, 1, OPP_LORELEI, 1
+
+ ; warp-to
+ warp_to 4, 11, LORELEIS_ROOM_WIDTH ; INDIGO_PLATEAU_LOBBY
+ warp_to 5, 11, LORELEIS_ROOM_WIDTH ; INDIGO_PLATEAU_LOBBY
+ warp_to 4, 0, LORELEIS_ROOM_WIDTH ; BRUNOS_ROOM
+ warp_to 5, 0, LORELEIS_ROOM_WIDTH ; BRUNOS_ROOM
diff --git a/data/mapObjects/MrFujisHouse.asm b/data/mapObjects/MrFujisHouse.asm
new file mode 100755
index 00000000..5b6ca2a6
--- /dev/null
+++ b/data/mapObjects/MrFujisHouse.asm
@@ -0,0 +1,20 @@
+MrFujisHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 2, -1
+ warp 3, 7, 2, -1
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 5, STAY, NONE, 1 ; person
+ object SPRITE_LITTLE_GIRL, 6, 3, STAY, DOWN, 2 ; person
+ object SPRITE_SLOWBRO, 6, 4, STAY, UP, 3 ; person
+ object SPRITE_SLOWBRO, 1, 3, STAY, NONE, 4 ; person
+ object SPRITE_MR_FUJI, 3, 1, STAY, NONE, 5 ; person
+ object SPRITE_BOOK_MAP_DEX, 3, 3, STAY, NONE, 6 ; person
+
+ ; warp-to
+ warp_to 2, 7, MR_FUJIS_HOUSE_WIDTH
+ warp_to 3, 7, MR_FUJIS_HOUSE_WIDTH
diff --git a/data/mapObjects/MrPsychicsHouse.asm b/data/mapObjects/MrPsychicsHouse.asm
new file mode 100755
index 00000000..01f9e11c
--- /dev/null
+++ b/data/mapObjects/MrPsychicsHouse.asm
@@ -0,0 +1,15 @@
+MrPsychicsHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 7, -1
+ warp 3, 7, 7, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FISHER, 5, 3, STAY, LEFT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, MR_PSYCHICS_HOUSE_WIDTH
+ warp_to 3, 7, MR_PSYCHICS_HOUSE_WIDTH
diff --git a/data/mapObjects/MtMoon1F.asm b/data/mapObjects/MtMoon1F.asm
new file mode 100755
index 00000000..56820161
--- /dev/null
+++ b/data/mapObjects/MtMoon1F.asm
@@ -0,0 +1,34 @@
+MtMoon1F_Object:
+ db $3 ; border block
+
+ db 5 ; warps
+ warp 14, 35, 1, -1
+ warp 15, 35, 1, -1
+ warp 5, 5, 0, MT_MOON_B1F
+ warp 17, 11, 2, MT_MOON_B1F
+ warp 25, 15, 3, MT_MOON_B1F
+
+ db 1 ; signs
+ sign 15, 23, 14 ; MtMoon1Text14
+
+ db 13 ; objects
+ object SPRITE_HIKER, 5, 6, STAY, DOWN, 1, OPP_HIKER, 1
+ object SPRITE_BUG_CATCHER, 12, 16, STAY, RIGHT, 2, OPP_YOUNGSTER, 3
+ object SPRITE_LASS, 30, 4, STAY, DOWN, 3, OPP_LASS, 5
+ object SPRITE_BLACK_HAIR_BOY_2, 24, 31, STAY, UP, 4, OPP_SUPER_NERD, 1
+ object SPRITE_LASS, 16, 23, STAY, DOWN, 5, OPP_LASS, 6
+ object SPRITE_BUG_CATCHER, 7, 22, STAY, DOWN, 6, OPP_BUG_CATCHER, 7
+ object SPRITE_BUG_CATCHER, 30, 27, STAY, RIGHT, 7, OPP_BUG_CATCHER, 8
+ object SPRITE_BALL, 2, 20, STAY, NONE, 8, POTION
+ object SPRITE_BALL, 2, 2, STAY, NONE, 9, MOON_STONE
+ object SPRITE_BALL, 35, 31, STAY, NONE, 10, RARE_CANDY
+ object SPRITE_BALL, 36, 23, STAY, NONE, 11, ESCAPE_ROPE
+ object SPRITE_BALL, 20, 33, STAY, NONE, 12, POTION
+ object SPRITE_BALL, 5, 32, STAY, NONE, 13, TM_12
+
+ ; warp-to
+ warp_to 14, 35, MT_MOON_1F_WIDTH
+ warp_to 15, 35, MT_MOON_1F_WIDTH
+ warp_to 5, 5, MT_MOON_1F_WIDTH ; MT_MOON_B1F
+ warp_to 17, 11, MT_MOON_1F_WIDTH ; MT_MOON_B1F
+ warp_to 25, 15, MT_MOON_1F_WIDTH ; MT_MOON_B1F
diff --git a/data/mapObjects/MtMoonB1F.asm b/data/mapObjects/MtMoonB1F.asm
new file mode 100755
index 00000000..a8365ba7
--- /dev/null
+++ b/data/mapObjects/MtMoonB1F.asm
@@ -0,0 +1,26 @@
+MtMoonB1F_Object:
+ db $3 ; border block
+
+ db 8 ; warps
+ warp 5, 5, 2, MT_MOON_1F
+ warp 17, 11, 0, MT_MOON_B2F
+ warp 25, 9, 3, MT_MOON_1F
+ warp 25, 15, 4, MT_MOON_1F
+ warp 21, 17, 1, MT_MOON_B2F
+ warp 13, 27, 2, MT_MOON_B2F
+ warp 23, 3, 3, MT_MOON_B2F
+ warp 27, 3, 2, -1
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 5, 5, MT_MOON_B1F_WIDTH ; MT_MOON_1F
+ warp_to 17, 11, MT_MOON_B1F_WIDTH ; MT_MOON_B2F
+ warp_to 25, 9, MT_MOON_B1F_WIDTH ; MT_MOON_1F
+ warp_to 25, 15, MT_MOON_B1F_WIDTH ; MT_MOON_1F
+ warp_to 21, 17, MT_MOON_B1F_WIDTH ; MT_MOON_B2F
+ warp_to 13, 27, MT_MOON_B1F_WIDTH ; MT_MOON_B2F
+ warp_to 23, 3, MT_MOON_B1F_WIDTH ; MT_MOON_B2F
+ warp_to 27, 3, MT_MOON_B1F_WIDTH
diff --git a/data/mapObjects/MtMoonB2F.asm b/data/mapObjects/MtMoonB2F.asm
new file mode 100755
index 00000000..a4c9869a
--- /dev/null
+++ b/data/mapObjects/MtMoonB2F.asm
@@ -0,0 +1,28 @@
+MtMoonB2F_Object:
+ db $3 ; border block
+
+ db 4 ; warps
+ warp 25, 9, 1, MT_MOON_B1F
+ warp 21, 17, 4, MT_MOON_B1F
+ warp 15, 27, 5, MT_MOON_B1F
+ warp 5, 7, 6, MT_MOON_B1F
+
+ db 0 ; signs
+
+ db 10 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 12, 8, STAY, RIGHT, 1, OPP_SUPER_NERD, 2
+ object SPRITE_JESSIE, 9, 3, STAY, LEFT, 2
+ object SPRITE_ROCKET, 15, 22, STAY, DOWN, 3, OPP_ROCKET, 2
+ object SPRITE_ROCKET, 29, 11, STAY, UP, 4, OPP_ROCKET, 3
+ object SPRITE_ROCKET, 29, 17, STAY, LEFT, 5, OPP_ROCKET, 1
+ object SPRITE_JAMES, 9, 4, STAY, LEFT, 6
+ object SPRITE_OMANYTE, 12, 6, STAY, NONE, 7 ; person
+ object SPRITE_OMANYTE, 13, 6, STAY, NONE, 8 ; person
+ object SPRITE_BALL, 25, 21, STAY, NONE, 9, HP_UP
+ object SPRITE_BALL, 29, 5, STAY, NONE, 10, TM_01
+
+ ; warp-to
+ warp_to 25, 9, MT_MOON_B2F_WIDTH ; MT_MOON_B1F
+ warp_to 21, 17, MT_MOON_B2F_WIDTH ; MT_MOON_B1F
+ warp_to 15, 27, MT_MOON_B2F_WIDTH ; MT_MOON_B1F
+ warp_to 5, 7, MT_MOON_B2F_WIDTH ; MT_MOON_B1F
diff --git a/data/mapObjects/MtMoonPokecenter.asm b/data/mapObjects/MtMoonPokecenter.asm
new file mode 100755
index 00000000..1027f88a
--- /dev/null
+++ b/data/mapObjects/MtMoonPokecenter.asm
@@ -0,0 +1,21 @@
+MtMoonPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 0, -1
+ warp 4, 7, 0, -1
+
+ db 0 ; signs
+
+ db 7 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_BUG_CATCHER, 4, 3, STAY, UP, 2 ; person
+ object SPRITE_GENTLEMAN, 7, 3, STAY, UP, 3 ; person
+ object SPRITE_FAT_BALD_GUY, 10, 6, WALK, 2, 4 ; person
+ object SPRITE_CLIPBOARD, 7, 2, STAY, NONE, 5 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 6 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 7 ; person
+
+ ; warp-to
+ warp_to 3, 7, MT_MOON_POKECENTER_WIDTH
+ warp_to 4, 7, MT_MOON_POKECENTER_WIDTH
diff --git a/data/mapObjects/Museum1F.asm b/data/mapObjects/Museum1F.asm
new file mode 100755
index 00000000..1cfd2c68
--- /dev/null
+++ b/data/mapObjects/Museum1F.asm
@@ -0,0 +1,25 @@
+Museum1F_Object:
+ db $a ; border block
+
+ db 5 ; warps
+ warp 10, 7, 0, -1
+ warp 11, 7, 0, -1
+ warp 16, 7, 1, -1
+ warp 17, 7, 1, -1
+ warp 7, 7, 0, MUSEUM_2F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_OAK_AIDE, 12, 4, STAY, LEFT, 1 ; person
+ object SPRITE_GAMBLER, 1, 4, STAY, NONE, 2 ; person
+ object SPRITE_OAK_AIDE, 15, 2, STAY, DOWN, 3 ; person
+ object SPRITE_OAK_AIDE, 17, 4, STAY, NONE, 4 ; person
+ object SPRITE_OLD_AMBER, 16, 2, STAY, NONE, 5 ; person
+
+ ; warp-to
+ warp_to 10, 7, MUSEUM_1F_WIDTH
+ warp_to 11, 7, MUSEUM_1F_WIDTH
+ warp_to 16, 7, MUSEUM_1F_WIDTH
+ warp_to 17, 7, MUSEUM_1F_WIDTH
+ warp_to 7, 7, MUSEUM_1F_WIDTH ; MUSEUM_2F
diff --git a/data/mapObjects/Museum2F.asm b/data/mapObjects/Museum2F.asm
new file mode 100755
index 00000000..80815820
--- /dev/null
+++ b/data/mapObjects/Museum2F.asm
@@ -0,0 +1,19 @@
+Museum2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 7, 4, MUSEUM_1F
+
+ db 2 ; signs
+ sign 11, 2, 6 ; Museum2FText6
+ sign 2, 5, 7 ; Museum2FText7
+
+ db 5 ; objects
+ object SPRITE_BUG_CATCHER, 1, 7, WALK, 2, 1 ; person
+ object SPRITE_OLD_PERSON, 0, 5, STAY, DOWN, 2 ; person
+ object SPRITE_OAK_AIDE, 7, 5, STAY, DOWN, 3 ; person
+ object SPRITE_BRUNETTE_GIRL, 11, 5, STAY, NONE, 4 ; person
+ object SPRITE_HIKER, 12, 5, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 7, 7, MUSEUM_2F_WIDTH ; MUSEUM_1F
diff --git a/data/mapObjects/NameRatersHouse.asm b/data/mapObjects/NameRatersHouse.asm
new file mode 100755
index 00000000..da95bc43
--- /dev/null
+++ b/data/mapObjects/NameRatersHouse.asm
@@ -0,0 +1,15 @@
+NameRatersHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 5, -1
+ warp 3, 7, 5, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_MR_MASTERBALL, 5, 3, STAY, LEFT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, NAME_RATERS_HOUSE_WIDTH
+ warp_to 3, 7, NAME_RATERS_HOUSE_WIDTH
diff --git a/data/mapObjects/OaksLab.asm b/data/mapObjects/OaksLab.asm
new file mode 100755
index 00000000..cf48bec9
--- /dev/null
+++ b/data/mapObjects/OaksLab.asm
@@ -0,0 +1,23 @@
+OaksLab_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 11, 2, -1
+ warp 5, 11, 2, -1
+
+ db 0 ; signs
+
+ db 9 ; objects
+ object SPRITE_BLUE, 4, 3, STAY, NONE, 1, OPP_SONY1, 1
+ object SPRITE_BALL, 7, 3, STAY, NONE, 2 ; person
+ object SPRITE_OAK, 5, 2, STAY, DOWN, 3 ; person
+ object SPRITE_BOOK_MAP_DEX, 2, 1, STAY, NONE, 4 ; person
+ object SPRITE_BOOK_MAP_DEX, 3, 1, STAY, NONE, 5 ; person
+ object SPRITE_OAK, 5, 10, STAY, UP, 6 ; person
+ object SPRITE_GIRL, 1, 9, WALK, 1, 7 ; person
+ object SPRITE_OAK_AIDE, 2, 10, STAY, NONE, 8 ; person
+ object SPRITE_OAK_AIDE, 8, 10, STAY, NONE, 9 ; person
+
+ ; warp-to
+ warp_to 4, 11, OAKS_LAB_WIDTH
+ warp_to 5, 11, OAKS_LAB_WIDTH
diff --git a/data/mapObjects/PalletTown.asm b/data/mapObjects/PalletTown.asm
new file mode 100755
index 00000000..93807688
--- /dev/null
+++ b/data/mapObjects/PalletTown.asm
@@ -0,0 +1,23 @@
+PalletTown_Object:
+ db $b ; border block
+
+ db 3 ; warps
+ warp 5, 5, 0, REDS_HOUSE_1F
+ warp 13, 5, 0, BLUES_HOUSE
+ warp 12, 11, 1, OAKS_LAB
+
+ db 4 ; signs
+ sign 13, 13, 4 ; PalletTownText4
+ sign 7, 9, 5 ; PalletTownText5
+ sign 3, 5, 6 ; PalletTownText6
+ sign 11, 5, 7 ; PalletTownText7
+
+ db 3 ; objects
+ object SPRITE_OAK, 10, 4, STAY, NONE, 1 ; person
+ object SPRITE_GIRL, 3, 8, WALK, 0, 2 ; person
+ object SPRITE_FISHER2, 11, 14, WALK, 0, 3 ; person
+
+ ; warp-to
+ warp_to 5, 5, PALLET_TOWN_WIDTH ; REDS_HOUSE_1F
+ warp_to 13, 5, PALLET_TOWN_WIDTH ; BLUES_HOUSE
+ warp_to 12, 11, PALLET_TOWN_WIDTH ; OAKS_LAB
diff --git a/data/mapObjects/PewterCity.asm b/data/mapObjects/PewterCity.asm
new file mode 100755
index 00000000..e1a3eecb
--- /dev/null
+++ b/data/mapObjects/PewterCity.asm
@@ -0,0 +1,36 @@
+PewterCity_Object:
+ db $a ; border block
+
+ db 7 ; warps
+ warp 14, 7, 0, MUSEUM_1F
+ warp 19, 5, 2, MUSEUM_1F
+ warp 16, 17, 0, PEWTER_GYM
+ warp 29, 13, 0, PEWTER_NIDORAN_HOUSE
+ warp 23, 17, 0, PEWTER_MART
+ warp 7, 29, 0, PEWTER_SPEECH_HOUSE
+ warp 13, 25, 0, PEWTER_POKECENTER
+
+ db 7 ; signs
+ sign 19, 29, 6 ; PewterCityText6
+ sign 33, 19, 7 ; PewterCityText7
+ sign 24, 17, 8 ; MartSignText
+ sign 14, 25, 9 ; PokeCenterSignText
+ sign 15, 9, 10 ; PewterCityText10
+ sign 11, 17, 11 ; PewterCityText11
+ sign 25, 23, 12 ; PewterCityText12
+
+ db 5 ; objects
+ object SPRITE_LASS, 8, 15, STAY, NONE, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 17, 25, STAY, NONE, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 27, 17, STAY, NONE, 3 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 26, 25, WALK, 2, 4 ; person
+ object SPRITE_BUG_CATCHER, 35, 16, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 14, 7, PEWTER_CITY_WIDTH ; MUSEUM_1F
+ warp_to 19, 5, PEWTER_CITY_WIDTH ; MUSEUM_1F
+ warp_to 16, 17, PEWTER_CITY_WIDTH ; PEWTER_GYM
+ warp_to 29, 13, PEWTER_CITY_WIDTH ; PEWTER_NIDORAN_HOUSE
+ warp_to 23, 17, PEWTER_CITY_WIDTH ; PEWTER_MART
+ warp_to 7, 29, PEWTER_CITY_WIDTH ; PEWTER_SPEECH_HOUSE
+ warp_to 13, 25, PEWTER_CITY_WIDTH ; PEWTER_POKECENTER
diff --git a/data/mapObjects/PewterGym.asm b/data/mapObjects/PewterGym.asm
new file mode 100755
index 00000000..538c3923
--- /dev/null
+++ b/data/mapObjects/PewterGym.asm
@@ -0,0 +1,17 @@
+PewterGym_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 13, 2, -1
+ warp 5, 13, 2, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 4, 1, STAY, DOWN, 1, OPP_BROCK, 1
+ object SPRITE_BLACK_HAIR_BOY_1, 3, 6, STAY, RIGHT, 2, OPP_JR_TRAINER_M, 1
+ object SPRITE_GYM_HELPER, 7, 10, STAY, DOWN, 3 ; person
+
+ ; warp-to
+ warp_to 4, 13, PEWTER_GYM_WIDTH
+ warp_to 5, 13, PEWTER_GYM_WIDTH
diff --git a/data/mapObjects/PewterMart.asm b/data/mapObjects/PewterMart.asm
new file mode 100755
index 00000000..9b983316
--- /dev/null
+++ b/data/mapObjects/PewterMart.asm
@@ -0,0 +1,17 @@
+PewterMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 4, -1
+ warp 4, 7, 4, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_BUG_CATCHER, 3, 3, WALK, 1, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 5, 5, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, PEWTER_MART_WIDTH
+ warp_to 4, 7, PEWTER_MART_WIDTH
diff --git a/data/mapObjects/PewterNidoranHouse.asm b/data/mapObjects/PewterNidoranHouse.asm
new file mode 100755
index 00000000..f00317d1
--- /dev/null
+++ b/data/mapObjects/PewterNidoranHouse.asm
@@ -0,0 +1,17 @@
+PewterNidoranHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 3, -1
+ warp 3, 7, 3, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_SLOWBRO, 4, 5, STAY, LEFT, 1 ; person
+ object SPRITE_YOUNG_BOY, 3, 5, STAY, RIGHT, 2 ; person
+ object SPRITE_FAT_BALD_GUY, 1, 2, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, PEWTER_NIDORAN_HOUSE_WIDTH
+ warp_to 3, 7, PEWTER_NIDORAN_HOUSE_WIDTH
diff --git a/data/mapObjects/PewterPokecenter.asm b/data/mapObjects/PewterPokecenter.asm
new file mode 100755
index 00000000..4d460747
--- /dev/null
+++ b/data/mapObjects/PewterPokecenter.asm
@@ -0,0 +1,20 @@
+PewterPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 6, -1
+ warp 4, 7, 6, -1
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_GENTLEMAN, 11, 7, STAY, LEFT, 2 ; person
+ object SPRITE_JIGGLYPUFF, 1, 3, STAY, DOWN, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_LASS, 4, 3, STAY, UP, 5 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 6 ; person
+
+ ; warp-to
+ warp_to 3, 7, PEWTER_POKECENTER_WIDTH
+ warp_to 4, 7, PEWTER_POKECENTER_WIDTH
diff --git a/data/mapObjects/PewterSpeechHouse.asm b/data/mapObjects/PewterSpeechHouse.asm
new file mode 100755
index 00000000..e7134cb5
--- /dev/null
+++ b/data/mapObjects/PewterSpeechHouse.asm
@@ -0,0 +1,16 @@
+PewterSpeechHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 5, -1
+ warp 3, 7, 5, -1
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_GAMBLER, 2, 3, STAY, RIGHT, 1 ; person
+ object SPRITE_BUG_CATCHER, 4, 5, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, PEWTER_SPEECH_HOUSE_WIDTH
+ warp_to 3, 7, PEWTER_SPEECH_HOUSE_WIDTH
diff --git a/data/mapObjects/PokemonFanClub.asm b/data/mapObjects/PokemonFanClub.asm
new file mode 100755
index 00000000..588ebdc2
--- /dev/null
+++ b/data/mapObjects/PokemonFanClub.asm
@@ -0,0 +1,20 @@
+PokemonFanClub_Object:
+ db $d ; border block
+
+ db 2 ; warps
+ warp 2, 7, 1, -1
+ warp 3, 7, 1, -1
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_FISHER2, 6, 3, STAY, LEFT, 1 ; person
+ object SPRITE_GIRL, 1, 3, STAY, RIGHT, 2 ; person
+ object SPRITE_CLEFAIRY_2, 6, 4, STAY, LEFT, 3 ; person
+ object SPRITE_SEEL, 1, 4, STAY, RIGHT, 4 ; person
+ object SPRITE_GENTLEMAN, 3, 1, STAY, DOWN, 5 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 5, 1, STAY, DOWN, 6 ; person
+
+ ; warp-to
+ warp_to 2, 7, POKEMON_FAN_CLUB_WIDTH
+ warp_to 3, 7, POKEMON_FAN_CLUB_WIDTH
diff --git a/data/mapObjects/PokemonMansion1F.asm b/data/mapObjects/PokemonMansion1F.asm
new file mode 100755
index 00000000..109b5b8e
--- /dev/null
+++ b/data/mapObjects/PokemonMansion1F.asm
@@ -0,0 +1,29 @@
+PokemonMansion1F_Object:
+ db $2e ; border block
+
+ db 8 ; warps
+ warp 4, 27, 0, -1
+ warp 5, 27, 0, -1
+ warp 6, 27, 0, -1
+ warp 7, 27, 0, -1
+ warp 5, 10, 0, POKEMON_MANSION_2F
+ warp 21, 23, 0, POKEMON_MANSION_B1F
+ warp 26, 27, 0, -1
+ warp 27, 27, 0, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_OAK_AIDE, 17, 17, STAY, LEFT, 1, OPP_SCIENTIST, 4
+ object SPRITE_BALL, 14, 3, STAY, NONE, 2, ESCAPE_ROPE
+ object SPRITE_BALL, 18, 21, STAY, NONE, 3, CARBOS
+
+ ; warp-to
+ warp_to 4, 27, POKEMON_MANSION_1F_WIDTH
+ warp_to 5, 27, POKEMON_MANSION_1F_WIDTH
+ warp_to 6, 27, POKEMON_MANSION_1F_WIDTH
+ warp_to 7, 27, POKEMON_MANSION_1F_WIDTH
+ warp_to 5, 10, POKEMON_MANSION_1F_WIDTH ; POKEMON_MANSION_2F
+ warp_to 21, 23, POKEMON_MANSION_1F_WIDTH ; POKEMON_MANSION_B1F
+ warp_to 26, 27, POKEMON_MANSION_1F_WIDTH
+ warp_to 27, 27, POKEMON_MANSION_1F_WIDTH
diff --git a/data/mapObjects/PokemonMansion2F.asm b/data/mapObjects/PokemonMansion2F.asm
new file mode 100755
index 00000000..6c0cc5f8
--- /dev/null
+++ b/data/mapObjects/PokemonMansion2F.asm
@@ -0,0 +1,22 @@
+PokemonMansion2F_Object:
+ db $1 ; border block
+
+ db 4 ; warps
+ warp 5, 10, 4, POKEMON_MANSION_1F
+ warp 7, 10, 0, POKEMON_MANSION_3F
+ warp 25, 14, 2, POKEMON_MANSION_3F
+ warp 6, 1, 1, POKEMON_MANSION_3F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 17, WALK, 2, 1, OPP_BURGLAR, 7
+ object SPRITE_BALL, 28, 7, STAY, NONE, 2, CALCIUM
+ object SPRITE_BOOK_MAP_DEX, 18, 2, STAY, NONE, 3 ; person
+ object SPRITE_BOOK_MAP_DEX, 3, 22, STAY, NONE, 4 ; person
+
+ ; warp-to
+ warp_to 5, 10, POKEMON_MANSION_2F_WIDTH ; POKEMON_MANSION_1F
+ warp_to 7, 10, POKEMON_MANSION_2F_WIDTH ; POKEMON_MANSION_3F
+ warp_to 25, 14, POKEMON_MANSION_2F_WIDTH ; POKEMON_MANSION_3F
+ warp_to 6, 1, POKEMON_MANSION_2F_WIDTH ; POKEMON_MANSION_3F
diff --git a/data/mapObjects/PokemonMansion3F.asm b/data/mapObjects/PokemonMansion3F.asm
new file mode 100755
index 00000000..7c8c9c22
--- /dev/null
+++ b/data/mapObjects/PokemonMansion3F.asm
@@ -0,0 +1,21 @@
+PokemonMansion3F_Object:
+ db $1 ; border block
+
+ db 3 ; warps
+ warp 7, 10, 1, POKEMON_MANSION_2F
+ warp 6, 1, 3, POKEMON_MANSION_2F
+ warp 25, 14, 2, POKEMON_MANSION_2F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 5, 11, WALK, 2, 1, OPP_BURGLAR, 8
+ object SPRITE_OAK_AIDE, 20, 11, STAY, LEFT, 2, OPP_SCIENTIST, 12
+ object SPRITE_BALL, 1, 16, STAY, NONE, 3, MAX_POTION
+ object SPRITE_BALL, 25, 5, STAY, NONE, 4, IRON
+ object SPRITE_BOOK_MAP_DEX, 6, 12, STAY, NONE, 5 ; person
+
+ ; warp-to
+ warp_to 7, 10, POKEMON_MANSION_3F_WIDTH ; POKEMON_MANSION_2F
+ warp_to 6, 1, POKEMON_MANSION_3F_WIDTH ; POKEMON_MANSION_2F
+ warp_to 25, 14, POKEMON_MANSION_3F_WIDTH ; POKEMON_MANSION_2F
diff --git a/data/mapObjects/PokemonMansionB1F.asm b/data/mapObjects/PokemonMansionB1F.asm
new file mode 100755
index 00000000..ac232799
--- /dev/null
+++ b/data/mapObjects/PokemonMansionB1F.asm
@@ -0,0 +1,20 @@
+PokemonMansionB1F_Object:
+ db $1 ; border block
+
+ db 1 ; warps
+ warp 23, 22, 5, POKEMON_MANSION_1F
+
+ db 0 ; signs
+
+ db 8 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 16, 23, STAY, NONE, 1, OPP_BURGLAR, 9
+ object SPRITE_OAK_AIDE, 27, 11, STAY, DOWN, 2, OPP_SCIENTIST, 13
+ object SPRITE_BALL, 10, 2, STAY, NONE, 3, RARE_CANDY
+ object SPRITE_BALL, 1, 22, STAY, NONE, 4, FULL_RESTORE
+ object SPRITE_BALL, 19, 25, STAY, NONE, 5, TM_14
+ object SPRITE_BALL, 5, 4, STAY, NONE, 6, TM_22
+ object SPRITE_BOOK_MAP_DEX, 16, 20, STAY, NONE, 7 ; person
+ object SPRITE_BALL, 5, 13, STAY, NONE, 8, SECRET_KEY
+
+ ; warp-to
+ warp_to 23, 22, POKEMON_MANSION_B1F_WIDTH ; POKEMON_MANSION_1F
diff --git a/data/mapObjects/PokemonTower1F.asm b/data/mapObjects/PokemonTower1F.asm
new file mode 100755
index 00000000..cf62836b
--- /dev/null
+++ b/data/mapObjects/PokemonTower1F.asm
@@ -0,0 +1,21 @@
+PokemonTower1F_Object:
+ db $1 ; border block
+
+ db 3 ; warps
+ warp 10, 17, 1, -1
+ warp 11, 17, 1, -1
+ warp 18, 9, 1, POKEMON_TOWER_2F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_CABLE_CLUB_WOMAN, 15, 13, STAY, UP, 1 ; person
+ object SPRITE_MOM_GEISHA, 6, 8, STAY, NONE, 2 ; person
+ object SPRITE_BALDING_GUY, 8, 12, STAY, NONE, 3 ; person
+ object SPRITE_GIRL, 13, 7, STAY, NONE, 4 ; person
+ object SPRITE_MEDIUM, 17, 7, STAY, LEFT, 5 ; person
+
+ ; warp-to
+ warp_to 10, 17, POKEMON_TOWER_1F_WIDTH
+ warp_to 11, 17, POKEMON_TOWER_1F_WIDTH
+ warp_to 18, 9, POKEMON_TOWER_1F_WIDTH ; POKEMON_TOWER_2F
diff --git a/data/mapObjects/PokemonTower2F.asm b/data/mapObjects/PokemonTower2F.asm
new file mode 100755
index 00000000..5ce437d1
--- /dev/null
+++ b/data/mapObjects/PokemonTower2F.asm
@@ -0,0 +1,16 @@
+PokemonTower2F_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 3, 9, 0, POKEMON_TOWER_3F
+ warp 18, 9, 2, POKEMON_TOWER_1F
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BLUE, 14, 5, STAY, NONE, 1 ; person
+ object SPRITE_MEDIUM, 3, 7, STAY, RIGHT, 2 ; person
+
+ ; warp-to
+ warp_to 3, 9, POKEMON_TOWER_2F_WIDTH ; POKEMON_TOWER_3F
+ warp_to 18, 9, POKEMON_TOWER_2F_WIDTH ; POKEMON_TOWER_1F
diff --git a/data/mapObjects/PokemonTower3F.asm b/data/mapObjects/PokemonTower3F.asm
new file mode 100755
index 00000000..79b83f88
--- /dev/null
+++ b/data/mapObjects/PokemonTower3F.asm
@@ -0,0 +1,18 @@
+PokemonTower3F_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 3, 9, 0, POKEMON_TOWER_2F
+ warp 18, 9, 1, POKEMON_TOWER_4F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_MEDIUM, 12, 3, STAY, LEFT, 1, OPP_CHANNELER, 5
+ object SPRITE_MEDIUM, 9, 8, STAY, DOWN, 2, OPP_CHANNELER, 6
+ object SPRITE_MEDIUM, 10, 13, STAY, DOWN, 3, OPP_CHANNELER, 8
+ object SPRITE_BALL, 12, 1, STAY, NONE, 4, ESCAPE_ROPE
+
+ ; warp-to
+ warp_to 3, 9, POKEMON_TOWER_3F_WIDTH ; POKEMON_TOWER_2F
+ warp_to 18, 9, POKEMON_TOWER_3F_WIDTH ; POKEMON_TOWER_4F
diff --git a/data/mapObjects/PokemonTower4F.asm b/data/mapObjects/PokemonTower4F.asm
new file mode 100755
index 00000000..db86c02c
--- /dev/null
+++ b/data/mapObjects/PokemonTower4F.asm
@@ -0,0 +1,20 @@
+PokemonTower4F_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 3, 9, 0, POKEMON_TOWER_5F
+ warp 18, 9, 1, POKEMON_TOWER_3F
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_MEDIUM, 5, 10, STAY, RIGHT, 1, OPP_CHANNELER, 9
+ object SPRITE_MEDIUM, 15, 7, STAY, DOWN, 2, OPP_CHANNELER, 10
+ object SPRITE_MEDIUM, 14, 12, STAY, LEFT, 3, OPP_CHANNELER, 12
+ object SPRITE_BALL, 12, 10, STAY, NONE, 4, ELIXER
+ object SPRITE_BALL, 9, 10, STAY, NONE, 5, AWAKENING
+ object SPRITE_BALL, 12, 16, STAY, NONE, 6, HP_UP
+
+ ; warp-to
+ warp_to 3, 9, POKEMON_TOWER_4F_WIDTH ; POKEMON_TOWER_5F
+ warp_to 18, 9, POKEMON_TOWER_4F_WIDTH ; POKEMON_TOWER_3F
diff --git a/data/mapObjects/PokemonTower5F.asm b/data/mapObjects/PokemonTower5F.asm
new file mode 100755
index 00000000..b482871f
--- /dev/null
+++ b/data/mapObjects/PokemonTower5F.asm
@@ -0,0 +1,20 @@
+PokemonTower5F_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 3, 9, 0, POKEMON_TOWER_4F
+ warp 18, 9, 0, POKEMON_TOWER_6F
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_MEDIUM, 12, 8, STAY, NONE, 1 ; person
+ object SPRITE_MEDIUM, 17, 7, STAY, LEFT, 2, OPP_CHANNELER, 14
+ object SPRITE_MEDIUM, 14, 3, STAY, LEFT, 3, OPP_CHANNELER, 16
+ object SPRITE_MEDIUM, 6, 10, STAY, RIGHT, 4, OPP_CHANNELER, 17
+ object SPRITE_MEDIUM, 9, 16, STAY, RIGHT, 5, OPP_CHANNELER, 18
+ object SPRITE_BALL, 6, 14, STAY, NONE, 6, NUGGET
+
+ ; warp-to
+ warp_to 3, 9, POKEMON_TOWER_5F_WIDTH ; POKEMON_TOWER_4F
+ warp_to 18, 9, POKEMON_TOWER_5F_WIDTH ; POKEMON_TOWER_6F
diff --git a/data/mapObjects/PokemonTower6F.asm b/data/mapObjects/PokemonTower6F.asm
new file mode 100755
index 00000000..823fe78a
--- /dev/null
+++ b/data/mapObjects/PokemonTower6F.asm
@@ -0,0 +1,19 @@
+PokemonTower6F_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 18, 9, 1, POKEMON_TOWER_5F
+ warp 9, 16, 0, POKEMON_TOWER_7F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_MEDIUM, 12, 10, STAY, RIGHT, 1, OPP_CHANNELER, 19
+ object SPRITE_MEDIUM, 9, 5, STAY, DOWN, 2, OPP_CHANNELER, 20
+ object SPRITE_MEDIUM, 16, 5, STAY, LEFT, 3, OPP_CHANNELER, 21
+ object SPRITE_BALL, 6, 8, STAY, NONE, 4, RARE_CANDY
+ object SPRITE_BALL, 14, 14, STAY, NONE, 5, X_ACCURACY
+
+ ; warp-to
+ warp_to 18, 9, POKEMON_TOWER_6F_WIDTH ; POKEMON_TOWER_5F
+ warp_to 9, 16, POKEMON_TOWER_6F_WIDTH ; POKEMON_TOWER_7F
diff --git a/data/mapObjects/PokemonTower7F.asm b/data/mapObjects/PokemonTower7F.asm
new file mode 100755
index 00000000..ccd4f23c
--- /dev/null
+++ b/data/mapObjects/PokemonTower7F.asm
@@ -0,0 +1,15 @@
+PokemonTower7F_Object:
+ db $1 ; border block
+
+ db 1 ; warps
+ warp 9, 16, 1, POKEMON_TOWER_6F
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_JESSIE, 10, 8, STAY, DOWN, 1
+ object SPRITE_JAMES, 11, 8, STAY, DOWN, 2
+ object SPRITE_MR_FUJI, 10, 3, STAY, DOWN, 3
+
+ ; warp-to
+ warp_to 9, 16, POKEMON_TOWER_7F_WIDTH ; POKEMON_TOWER_6F
diff --git a/data/mapObjects/PowerPlant.asm b/data/mapObjects/PowerPlant.asm
new file mode 100755
index 00000000..a8548b1c
--- /dev/null
+++ b/data/mapObjects/PowerPlant.asm
@@ -0,0 +1,30 @@
+PowerPlant_Object:
+ db $2e ; border block
+
+ db 3 ; warps
+ warp 4, 35, 3, -1
+ warp 5, 35, 3, -1
+ warp 0, 11, 3, -1
+
+ db 0 ; signs
+
+ db 14 ; objects
+ object SPRITE_BALL, 9, 20, STAY, NONE, 1, VOLTORB, 40
+ object SPRITE_BALL, 32, 18, STAY, NONE, 2, VOLTORB, 40
+ object SPRITE_BALL, 21, 25, STAY, NONE, 3, VOLTORB, 40
+ object SPRITE_BALL, 25, 18, STAY, NONE, 4, ELECTRODE, 43
+ object SPRITE_BALL, 23, 34, STAY, NONE, 5, VOLTORB, 40
+ object SPRITE_BALL, 26, 28, STAY, NONE, 6, VOLTORB, 40
+ object SPRITE_BALL, 21, 14, STAY, NONE, 7, ELECTRODE, 43
+ object SPRITE_BALL, 37, 32, STAY, NONE, 8, VOLTORB, 40
+ object SPRITE_BIRD, 4, 9, STAY, UP, 9, ZAPDOS, 50
+ object SPRITE_BALL, 7, 25, STAY, NONE, 10, CARBOS
+ object SPRITE_BALL, 28, 3, STAY, NONE, 11, HP_UP
+ object SPRITE_BALL, 34, 3, STAY, NONE, 12, RARE_CANDY
+ object SPRITE_BALL, 26, 32, STAY, NONE, 13, TM_25
+ object SPRITE_BALL, 20, 32, STAY, NONE, 14, TM_33
+
+ ; warp-to
+ warp_to 4, 35, POWER_PLANT_WIDTH
+ warp_to 5, 35, POWER_PLANT_WIDTH
+ warp_to 0, 11, POWER_PLANT_WIDTH
diff --git a/data/mapObjects/RedsHouse1F.asm b/data/mapObjects/RedsHouse1F.asm
new file mode 100755
index 00000000..a54b5411
--- /dev/null
+++ b/data/mapObjects/RedsHouse1F.asm
@@ -0,0 +1,18 @@
+RedsHouse1F_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 2, 7, 0, -1 ; exit1
+ warp 3, 7, 0, -1 ; exit2
+ warp 7, 1, 0, REDS_HOUSE_2F ; staircase
+
+ db 1 ; signs
+ sign 3, 1, 2 ; TV
+
+ db 1 ; objects
+ object SPRITE_MOM, 5, 4, STAY, LEFT, 1 ; Mom
+
+ ; warp-to
+ warp_to 2, 7, REDS_HOUSE_1F_WIDTH
+ warp_to 3, 7, REDS_HOUSE_1F_WIDTH
+ warp_to 7, 1, REDS_HOUSE_1F_WIDTH
diff --git a/data/mapObjects/RedsHouse2F.asm b/data/mapObjects/RedsHouse2F.asm
new file mode 100755
index 00000000..98e9c236
--- /dev/null
+++ b/data/mapObjects/RedsHouse2F.asm
@@ -0,0 +1,12 @@
+RedsHouse2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 1, 2, REDS_HOUSE_1F
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 7, 1, REDS_HOUSE_2F_WIDTH
diff --git a/data/mapObjects/RockTunnel1F.asm b/data/mapObjects/RockTunnel1F.asm
new file mode 100755
index 00000000..1cf5a12f
--- /dev/null
+++ b/data/mapObjects/RockTunnel1F.asm
@@ -0,0 +1,34 @@
+RockTunnel1F_Object:
+ db $3 ; border block
+
+ db 8 ; warps
+ warp 15, 3, 1, -1
+ warp 15, 0, 1, -1
+ warp 15, 33, 2, -1
+ warp 15, 35, 2, -1
+ warp 37, 3, 0, ROCK_TUNNEL_B1F
+ warp 5, 3, 1, ROCK_TUNNEL_B1F
+ warp 17, 11, 2, ROCK_TUNNEL_B1F
+ warp 37, 17, 3, ROCK_TUNNEL_B1F
+
+ db 1 ; signs
+ sign 11, 29, 8 ; RockTunnel1Text8
+
+ db 7 ; objects
+ object SPRITE_HIKER, 7, 5, STAY, DOWN, 1, OPP_HIKER, 12
+ object SPRITE_HIKER, 5, 16, STAY, DOWN, 2, OPP_HIKER, 13
+ object SPRITE_HIKER, 17, 15, STAY, LEFT, 3, OPP_HIKER, 14
+ object SPRITE_BLACK_HAIR_BOY_2, 23, 8, STAY, LEFT, 4, OPP_POKEMANIAC, 7
+ object SPRITE_LASS, 37, 21, STAY, LEFT, 5, OPP_JR_TRAINER_F, 17
+ object SPRITE_LASS, 22, 24, STAY, DOWN, 6, OPP_JR_TRAINER_F, 18
+ object SPRITE_LASS, 32, 24, STAY, RIGHT, 7, OPP_JR_TRAINER_F, 19
+
+ ; warp-to
+ warp_to 15, 3, ROCK_TUNNEL_1F_WIDTH
+ warp_to 15, 0, ROCK_TUNNEL_1F_WIDTH
+ warp_to 15, 33, ROCK_TUNNEL_1F_WIDTH
+ warp_to 15, 35, ROCK_TUNNEL_1F_WIDTH
+ warp_to 37, 3, ROCK_TUNNEL_1F_WIDTH ; ROCK_TUNNEL_B1F
+ warp_to 5, 3, ROCK_TUNNEL_1F_WIDTH ; ROCK_TUNNEL_B1F
+ warp_to 17, 11, ROCK_TUNNEL_1F_WIDTH ; ROCK_TUNNEL_B1F
+ warp_to 37, 17, ROCK_TUNNEL_1F_WIDTH ; ROCK_TUNNEL_B1F
diff --git a/data/mapObjects/RockTunnelB1F.asm b/data/mapObjects/RockTunnelB1F.asm
new file mode 100755
index 00000000..f562168e
--- /dev/null
+++ b/data/mapObjects/RockTunnelB1F.asm
@@ -0,0 +1,26 @@
+RockTunnelB1F_Object:
+ db $3 ; border block
+
+ db 4 ; warps
+ warp 33, 25, 4, ROCK_TUNNEL_1F
+ warp 27, 3, 5, ROCK_TUNNEL_1F
+ warp 23, 11, 6, ROCK_TUNNEL_1F
+ warp 3, 3, 7, ROCK_TUNNEL_1F
+
+ db 0 ; signs
+
+ db 8 ; objects
+ object SPRITE_LASS, 11, 13, STAY, DOWN, 1, OPP_JR_TRAINER_F, 9
+ object SPRITE_HIKER, 6, 10, STAY, DOWN, 2, OPP_HIKER, 9
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 5, STAY, DOWN, 3, OPP_POKEMANIAC, 3
+ object SPRITE_BLACK_HAIR_BOY_2, 20, 21, STAY, RIGHT, 4, OPP_POKEMANIAC, 4
+ object SPRITE_HIKER, 30, 10, STAY, DOWN, 5, OPP_HIKER, 10
+ object SPRITE_LASS, 14, 28, STAY, RIGHT, 6, OPP_JR_TRAINER_F, 10
+ object SPRITE_HIKER, 33, 5, STAY, RIGHT, 7, OPP_HIKER, 11
+ object SPRITE_BLACK_HAIR_BOY_2, 26, 30, STAY, DOWN, 8, OPP_POKEMANIAC, 5
+
+ ; warp-to
+ warp_to 33, 25, ROCK_TUNNEL_B1F_WIDTH ; ROCK_TUNNEL_1F
+ warp_to 27, 3, ROCK_TUNNEL_B1F_WIDTH ; ROCK_TUNNEL_1F
+ warp_to 23, 11, ROCK_TUNNEL_B1F_WIDTH ; ROCK_TUNNEL_1F
+ warp_to 3, 3, ROCK_TUNNEL_B1F_WIDTH ; ROCK_TUNNEL_1F
diff --git a/data/mapObjects/RockTunnelPokecenter.asm b/data/mapObjects/RockTunnelPokecenter.asm
new file mode 100755
index 00000000..dfd08017
--- /dev/null
+++ b/data/mapObjects/RockTunnelPokecenter.asm
@@ -0,0 +1,19 @@
+RockTunnelPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 0, -1
+ warp 4, 7, 0, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_GENTLEMAN, 7, 3, STAY, DOWN, 2 ; person
+ object SPRITE_FISHER2, 2, 5, STAY, NONE, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, ROCK_TUNNEL_POKECENTER_WIDTH
+ warp_to 4, 7, ROCK_TUNNEL_POKECENTER_WIDTH
diff --git a/data/mapObjects/RocketHideoutB1F.asm b/data/mapObjects/RocketHideoutB1F.asm
new file mode 100755
index 00000000..99537510
--- /dev/null
+++ b/data/mapObjects/RocketHideoutB1F.asm
@@ -0,0 +1,27 @@
+RocketHideoutB1F_Object:
+ db $2e ; border block
+
+ db 5 ; warps
+ warp 23, 2, 0, ROCKET_HIDEOUT_B2F
+ warp 21, 2, 2, GAME_CORNER
+ warp 24, 19, 0, ROCKET_HIDEOUT_ELEVATOR
+ warp 21, 24, 3, ROCKET_HIDEOUT_B2F
+ warp 25, 19, 1, ROCKET_HIDEOUT_ELEVATOR
+
+ db 0 ; signs
+
+ db 7 ; objects
+ object SPRITE_ROCKET, 26, 8, STAY, LEFT, 1, OPP_ROCKET, 8
+ object SPRITE_ROCKET, 12, 6, STAY, RIGHT, 2, OPP_ROCKET, 9
+ object SPRITE_ROCKET, 18, 17, STAY, DOWN, 3, OPP_ROCKET, 10
+ object SPRITE_ROCKET, 15, 25, STAY, RIGHT, 4, OPP_ROCKET, 11
+ object SPRITE_ROCKET, 28, 18, STAY, LEFT, 5, OPP_ROCKET, 12
+ object SPRITE_BALL, 11, 14, STAY, NONE, 6, ESCAPE_ROPE
+ object SPRITE_BALL, 9, 17, STAY, NONE, 7, HYPER_POTION
+
+ ; warp-to
+ warp_to 23, 2, ROCKET_HIDEOUT_B1F_WIDTH ; ROCKET_HIDEOUT_B2F
+ warp_to 21, 2, ROCKET_HIDEOUT_B1F_WIDTH ; GAME_CORNER
+ warp_to 24, 19, ROCKET_HIDEOUT_B1F_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
+ warp_to 21, 24, ROCKET_HIDEOUT_B1F_WIDTH ; ROCKET_HIDEOUT_B2F
+ warp_to 25, 19, ROCKET_HIDEOUT_B1F_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/RocketHideoutB2F.asm b/data/mapObjects/RocketHideoutB2F.asm
new file mode 100755
index 00000000..36fe9289
--- /dev/null
+++ b/data/mapObjects/RocketHideoutB2F.asm
@@ -0,0 +1,25 @@
+RocketHideoutB2F_Object:
+ db $2e ; border block
+
+ db 5 ; warps
+ warp 27, 8, 0, ROCKET_HIDEOUT_B1F
+ warp 21, 8, 0, ROCKET_HIDEOUT_B3F
+ warp 24, 19, 0, ROCKET_HIDEOUT_ELEVATOR
+ warp 21, 22, 3, ROCKET_HIDEOUT_B1F
+ warp 25, 19, 1, ROCKET_HIDEOUT_ELEVATOR
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_ROCKET, 20, 12, STAY, DOWN, 1, OPP_ROCKET, 13
+ object SPRITE_BALL, 1, 11, STAY, NONE, 2, MOON_STONE
+ object SPRITE_BALL, 16, 8, STAY, NONE, 3, NUGGET
+ object SPRITE_BALL, 6, 12, STAY, NONE, 4, TM_07
+ object SPRITE_BALL, 3, 21, STAY, NONE, 5, SUPER_POTION
+
+ ; warp-to
+ warp_to 27, 8, ROCKET_HIDEOUT_B2F_WIDTH ; ROCKET_HIDEOUT_B1F
+ warp_to 21, 8, ROCKET_HIDEOUT_B2F_WIDTH ; ROCKET_HIDEOUT_B3F
+ warp_to 24, 19, ROCKET_HIDEOUT_B2F_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
+ warp_to 21, 22, ROCKET_HIDEOUT_B2F_WIDTH ; ROCKET_HIDEOUT_B1F
+ warp_to 25, 19, ROCKET_HIDEOUT_B2F_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/RocketHideoutB3F.asm b/data/mapObjects/RocketHideoutB3F.asm
new file mode 100755
index 00000000..6169dbed
--- /dev/null
+++ b/data/mapObjects/RocketHideoutB3F.asm
@@ -0,0 +1,18 @@
+RocketHideoutB3F_Object:
+ db $2e ; border block
+
+ db 2 ; warps
+ warp 25, 6, 1, ROCKET_HIDEOUT_B2F
+ warp 19, 18, 0, ROCKET_HIDEOUT_B4F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_ROCKET, 10, 22, STAY, RIGHT, 1, OPP_ROCKET, 14
+ object SPRITE_ROCKET, 26, 12, STAY, UP, 2, OPP_ROCKET, 15
+ object SPRITE_BALL, 26, 17, STAY, NONE, 3, TM_10
+ object SPRITE_BALL, 20, 14, STAY, NONE, 4, RARE_CANDY
+
+ ; warp-to
+ warp_to 25, 6, ROCKET_HIDEOUT_B3F_WIDTH ; ROCKET_HIDEOUT_B2F
+ warp_to 19, 18, ROCKET_HIDEOUT_B3F_WIDTH ; ROCKET_HIDEOUT_B4F
diff --git a/data/mapObjects/RocketHideoutB4F.asm b/data/mapObjects/RocketHideoutB4F.asm
new file mode 100755
index 00000000..ba746951
--- /dev/null
+++ b/data/mapObjects/RocketHideoutB4F.asm
@@ -0,0 +1,25 @@
+RocketHideoutB4F_Object:
+ db $2e ; border block
+
+ db 3 ; warps
+ warp 19, 10, 1, ROCKET_HIDEOUT_B3F
+ warp 24, 15, 0, ROCKET_HIDEOUT_ELEVATOR
+ warp 25, 15, 1, ROCKET_HIDEOUT_ELEVATOR
+
+ db 0 ; signs
+
+ db 9 ; objects
+ object SPRITE_GIOVANNI, 25, 3, STAY, DOWN, 1, OPP_GIOVANNI, 1
+ object SPRITE_JAMES, 25, 10, STAY, DOWN, 2
+ object SPRITE_JESSIE, 24, 10, STAY, DOWN, 3
+ object SPRITE_ROCKET, 11, 2, STAY, DOWN, 4, OPP_ROCKET, 18
+ object SPRITE_BALL, 10, 12, STAY, NONE, 5, HP_UP
+ object SPRITE_BALL, 9, 4, STAY, NONE, 6, TM_02
+ object SPRITE_BALL, 12, 20, STAY, NONE, 7, IRON
+ object SPRITE_BALL, 25, 2, STAY, NONE, 8, SILPH_SCOPE
+ object SPRITE_BALL, 10, 2, STAY, NONE, 9, LIFT_KEY
+
+ ; warp-to
+ warp_to 19, 10, ROCKET_HIDEOUT_B4F_WIDTH ; ROCKET_HIDEOUT_B3F
+ warp_to 24, 15, ROCKET_HIDEOUT_B4F_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
+ warp_to 25, 15, ROCKET_HIDEOUT_B4F_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/RocketHideoutElevator.asm b/data/mapObjects/RocketHideoutElevator.asm
new file mode 100755
index 00000000..bc4fd7ff
--- /dev/null
+++ b/data/mapObjects/RocketHideoutElevator.asm
@@ -0,0 +1,15 @@
+RocketHideoutElevator_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 2, 1, 2, ROCKET_HIDEOUT_B1F
+ warp 3, 1, 4, ROCKET_HIDEOUT_B1F
+
+ db 1 ; signs
+ sign 1, 1, 1 ; RocketHideoutElevatorText1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 2, 1, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; ROCKET_HIDEOUT_B1F
+ warp_to 3, 1, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; ROCKET_HIDEOUT_B1F
diff --git a/data/mapObjects/Route1.asm b/data/mapObjects/Route1.asm
new file mode 100755
index 00000000..0815fe67
--- /dev/null
+++ b/data/mapObjects/Route1.asm
@@ -0,0 +1,14 @@
+Route1_Object:
+ db $b ; border block
+
+ db 0 ; warps
+
+ db 1 ; signs
+ sign 9, 27, 3 ; Route1Text3
+
+ db 2 ; objects
+ object SPRITE_BUG_CATCHER, 5, 24, WALK, 1, 1 ; person
+ object SPRITE_BUG_CATCHER, 15, 13, WALK, 2, 2 ; person
+
+ ; warp-to (unused)
+ warp_to 2, 7, 4
diff --git a/data/mapObjects/Route10.asm b/data/mapObjects/Route10.asm
new file mode 100755
index 00000000..12850577
--- /dev/null
+++ b/data/mapObjects/Route10.asm
@@ -0,0 +1,28 @@
+Route10_Object:
+ db $2c ; border block
+
+ db 4 ; warps
+ warp 11, 19, 0, ROCK_TUNNEL_POKECENTER
+ warp 8, 17, 0, ROCK_TUNNEL_1F
+ warp 8, 53, 2, ROCK_TUNNEL_1F
+ warp 6, 39, 0, POWER_PLANT
+
+ db 4 ; signs
+ sign 7, 19, 7 ; Route10Text7
+ sign 12, 19, 8 ; PokeCenterSignText
+ sign 9, 55, 9 ; Route10Text9
+ sign 5, 41, 10 ; Route10Text10
+
+ db 6 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 10, 44, STAY, LEFT, 1, OPP_POKEMANIAC, 1
+ object SPRITE_HIKER, 3, 57, STAY, UP, 2, OPP_HIKER, 7
+ object SPRITE_BLACK_HAIR_BOY_2, 14, 64, STAY, LEFT, 3, OPP_POKEMANIAC, 2
+ object SPRITE_LASS, 7, 25, STAY, LEFT, 4, OPP_JR_TRAINER_F, 7
+ object SPRITE_HIKER, 3, 61, STAY, DOWN, 5, OPP_HIKER, 8
+ object SPRITE_LASS, 7, 54, STAY, DOWN, 6, OPP_JR_TRAINER_F, 8
+
+ ; warp-to
+ warp_to 11, 19, ROUTE_10_WIDTH ; ROCK_TUNNEL_POKECENTER
+ warp_to 8, 17, ROUTE_10_WIDTH ; ROCK_TUNNEL_1F
+ warp_to 8, 53, ROUTE_10_WIDTH ; ROCK_TUNNEL_1F
+ warp_to 6, 39, ROUTE_10_WIDTH ; POWER_PLANT
diff --git a/data/mapObjects/Route11.asm b/data/mapObjects/Route11.asm
new file mode 100755
index 00000000..a72bf347
--- /dev/null
+++ b/data/mapObjects/Route11.asm
@@ -0,0 +1,31 @@
+Route11_Object:
+ db $f ; border block
+
+ db 5 ; warps
+ warp 49, 8, 0, ROUTE_11_GATE_1F
+ warp 49, 9, 0, ROUTE_11_GATE_1F
+ warp 58, 8, 2, ROUTE_11_GATE_1F
+ warp 58, 9, 2, ROUTE_11_GATE_1F
+ warp 4, 5, 0, DIGLETTS_CAVE_ROUTE_11
+
+ db 1 ; signs
+ sign 1, 5, 11 ; Route11Text11
+
+ db 10 ; objects
+ object SPRITE_GAMBLER, 10, 14, STAY, DOWN, 1, OPP_GAMBLER, 1
+ object SPRITE_GAMBLER, 26, 9, STAY, DOWN, 2, OPP_GAMBLER, 2
+ object SPRITE_BUG_CATCHER, 13, 5, STAY, LEFT, 3, OPP_YOUNGSTER, 9
+ object SPRITE_BLACK_HAIR_BOY_2, 36, 11, STAY, DOWN, 4, OPP_ENGINEER, 2
+ object SPRITE_BUG_CATCHER, 22, 4, STAY, UP, 5, OPP_YOUNGSTER, 10
+ object SPRITE_GAMBLER, 45, 7, STAY, DOWN, 6, OPP_GAMBLER, 3
+ object SPRITE_GAMBLER, 33, 3, STAY, UP, 7, OPP_GAMBLER, 4
+ object SPRITE_BUG_CATCHER, 43, 5, STAY, RIGHT, 8, OPP_YOUNGSTER, 11
+ object SPRITE_BLACK_HAIR_BOY_2, 45, 16, STAY, LEFT, 9, OPP_ENGINEER, 3
+ object SPRITE_BUG_CATCHER, 22, 12, STAY, UP, 10, OPP_YOUNGSTER, 12
+
+ ; warp-to
+ warp_to 49, 8, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
+ warp_to 49, 9, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
+ warp_to 58, 8, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
+ warp_to 58, 9, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
+ warp_to 4, 5, ROUTE_11_WIDTH ; DIGLETTS_CAVE_ROUTE_11
diff --git a/data/mapObjects/Route11Gate1F.asm b/data/mapObjects/Route11Gate1F.asm
new file mode 100755
index 00000000..5c4a120c
--- /dev/null
+++ b/data/mapObjects/Route11Gate1F.asm
@@ -0,0 +1,21 @@
+Route11Gate1F_Object:
+ db $a ; border block
+
+ db 5 ; warps
+ warp 0, 4, 0, -1
+ warp 0, 5, 1, -1
+ warp 7, 4, 2, -1
+ warp 7, 5, 3, -1
+ warp 6, 8, 0, ROUTE_11_GATE_2F
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 4, 1, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 0, 4, ROUTE_11_GATE_1F_WIDTH
+ warp_to 0, 5, ROUTE_11_GATE_1F_WIDTH
+ warp_to 7, 4, ROUTE_11_GATE_1F_WIDTH
+ warp_to 7, 5, ROUTE_11_GATE_1F_WIDTH
+ warp_to 6, 8, ROUTE_11_GATE_1F_WIDTH ; ROUTE_11_GATE_2F
diff --git a/data/mapObjects/Route11Gate2F.asm b/data/mapObjects/Route11Gate2F.asm
new file mode 100755
index 00000000..bf305bba
--- /dev/null
+++ b/data/mapObjects/Route11Gate2F.asm
@@ -0,0 +1,16 @@
+Route11Gate2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 7, 4, ROUTE_11_GATE_1F
+
+ db 2 ; signs
+ sign 1, 2, 3 ; Route11GateUpstairsText3
+ sign 6, 2, 4 ; Route11GateUpstairsText4
+
+ db 2 ; objects
+ object SPRITE_BUG_CATCHER, 4, 2, WALK, 2, 1 ; person
+ object SPRITE_OAK_AIDE, 2, 6, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 7, 7, ROUTE_11_GATE_2F_WIDTH ; ROUTE_11_GATE_1F
diff --git a/data/mapObjects/Route12.asm b/data/mapObjects/Route12.asm
new file mode 100755
index 00000000..8043b5db
--- /dev/null
+++ b/data/mapObjects/Route12.asm
@@ -0,0 +1,30 @@
+Route12_Object:
+ db $43 ; border block
+
+ db 4 ; warps
+ warp 10, 15, 0, ROUTE_12_GATE_1F
+ warp 11, 15, 0, ROUTE_12_GATE_1F
+ warp 10, 21, 2, ROUTE_12_GATE_1F
+ warp 11, 77, 0, ROUTE_12_SUPER_ROD_HOUSE
+
+ db 2 ; signs
+ sign 13, 13, 11 ; Route12Text11
+ sign 11, 63, 12 ; Route12Text12
+
+ db 10 ; objects
+ object SPRITE_SNORLAX, 10, 62, STAY, DOWN, 1 ; person
+ object SPRITE_FISHER2, 14, 31, STAY, LEFT, 2, OPP_FISHER, 3
+ object SPRITE_FISHER2, 5, 39, STAY, UP, 3, OPP_FISHER, 4
+ object SPRITE_BLACK_HAIR_BOY_1, 11, 92, STAY, LEFT, 4, OPP_JR_TRAINER_M, 9
+ object SPRITE_BLACK_HAIR_BOY_2, 14, 76, STAY, UP, 5, OPP_ROCKER, 2
+ object SPRITE_FISHER2, 12, 40, STAY, LEFT, 6, OPP_FISHER, 5
+ object SPRITE_FISHER2, 9, 52, STAY, RIGHT, 7, OPP_FISHER, 6
+ object SPRITE_FISHER2, 6, 87, STAY, DOWN, 8, OPP_FISHER, 11
+ object SPRITE_BALL, 14, 35, STAY, NONE, 9, TM_16
+ object SPRITE_BALL, 5, 89, STAY, NONE, 10, IRON
+
+ ; warp-to
+ warp_to 10, 15, ROUTE_12_WIDTH ; ROUTE_12_GATE_1F
+ warp_to 11, 15, ROUTE_12_WIDTH ; ROUTE_12_GATE_1F
+ warp_to 10, 21, ROUTE_12_WIDTH ; ROUTE_12_GATE_1F
+ warp_to 11, 77, ROUTE_12_WIDTH ; ROUTE_12_SUPER_ROD_HOUSE
diff --git a/data/mapObjects/Route12Gate1F.asm b/data/mapObjects/Route12Gate1F.asm
new file mode 100755
index 00000000..94f6b91a
--- /dev/null
+++ b/data/mapObjects/Route12Gate1F.asm
@@ -0,0 +1,21 @@
+Route12Gate1F_Object:
+ db $a ; border block
+
+ db 5 ; warps
+ warp 4, 0, 0, -1
+ warp 5, 0, 1, -1
+ warp 4, 7, 2, -1
+ warp 5, 7, 2, -1
+ warp 8, 6, 0, ROUTE_12_GATE_2F
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 1, 3, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 4, 0, ROUTE_12_GATE_1F_WIDTH
+ warp_to 5, 0, ROUTE_12_GATE_1F_WIDTH
+ warp_to 4, 7, ROUTE_12_GATE_1F_WIDTH
+ warp_to 5, 7, ROUTE_12_GATE_1F_WIDTH
+ warp_to 8, 6, ROUTE_12_GATE_1F_WIDTH ; ROUTE_12_GATE_2F
diff --git a/data/mapObjects/Route12Gate2F.asm b/data/mapObjects/Route12Gate2F.asm
new file mode 100755
index 00000000..cc6c1c19
--- /dev/null
+++ b/data/mapObjects/Route12Gate2F.asm
@@ -0,0 +1,15 @@
+Route12Gate2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 7, 4, ROUTE_12_GATE_1F
+
+ db 2 ; signs
+ sign 1, 2, 2 ; Route12GateUpstairsText2
+ sign 6, 2, 3 ; Route12GateUpstairsText3
+
+ db 1 ; objects
+ object SPRITE_BRUNETTE_GIRL, 3, 4, WALK, 1, 1 ; person
+
+ ; warp-to
+ warp_to 7, 7, ROUTE_12_GATE_2F_WIDTH ; ROUTE_12_GATE_1F
diff --git a/data/mapObjects/Route12SuperRodHouse.asm b/data/mapObjects/Route12SuperRodHouse.asm
new file mode 100755
index 00000000..458378a2
--- /dev/null
+++ b/data/mapObjects/Route12SuperRodHouse.asm
@@ -0,0 +1,15 @@
+Route12SuperRodHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 3, -1
+ warp 3, 7, 3, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FISHER, 2, 4, STAY, RIGHT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, ROUTE_12_SUPER_ROD_HOUSE_WIDTH
+ warp_to 3, 7, ROUTE_12_SUPER_ROD_HOUSE_WIDTH
diff --git a/data/mapObjects/Route13.asm b/data/mapObjects/Route13.asm
new file mode 100755
index 00000000..3f460901
--- /dev/null
+++ b/data/mapObjects/Route13.asm
@@ -0,0 +1,21 @@
+Route13_Object:
+ db $43 ; border block
+
+ db 0 ; warps
+
+ db 3 ; signs
+ sign 15, 13, 11 ; Route13Text11
+ sign 33, 5, 12 ; Route13Text12
+ sign 31, 11, 13 ; Route13Text13
+
+ db 10 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 49, 10, STAY, RIGHT, 1, OPP_BIRD_KEEPER, 1
+ object SPRITE_LASS, 48, 10, STAY, DOWN, 2, OPP_JR_TRAINER_F, 12
+ object SPRITE_LASS, 27, 9, STAY, DOWN, 3, OPP_JR_TRAINER_F, 13
+ object SPRITE_LASS, 23, 10, STAY, LEFT, 4, OPP_JR_TRAINER_F, 14
+ object SPRITE_LASS, 50, 5, STAY, DOWN, 5, OPP_JR_TRAINER_F, 15
+ object SPRITE_BLACK_HAIR_BOY_1, 12, 4, STAY, RIGHT, 6, OPP_BIRD_KEEPER, 2
+ object SPRITE_FOULARD_WOMAN, 33, 6, STAY, DOWN, 7, OPP_BEAUTY, 4
+ object SPRITE_FOULARD_WOMAN, 32, 6, STAY, DOWN, 8, OPP_BEAUTY, 5
+ object SPRITE_BIKER, 10, 7, STAY, UP, 9, OPP_BIKER, 1
+ object SPRITE_BLACK_HAIR_BOY_1, 7, 13, STAY, UP, 10, OPP_BIRD_KEEPER, 3
diff --git a/data/mapObjects/Route14.asm b/data/mapObjects/Route14.asm
new file mode 100755
index 00000000..565e587f
--- /dev/null
+++ b/data/mapObjects/Route14.asm
@@ -0,0 +1,19 @@
+Route14_Object:
+ db $43 ; border block
+
+ db 0 ; warps
+
+ db 1 ; signs
+ sign 17, 13, 11 ; Route14Text11
+
+ db 10 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 4, 4, STAY, DOWN, 1, OPP_BIRD_KEEPER, 14
+ object SPRITE_BLACK_HAIR_BOY_1, 15, 6, STAY, DOWN, 2, OPP_BIRD_KEEPER, 15
+ object SPRITE_BLACK_HAIR_BOY_1, 12, 11, STAY, DOWN, 3, OPP_BIRD_KEEPER, 16
+ object SPRITE_BLACK_HAIR_BOY_1, 14, 15, STAY, UP, 4, OPP_BIRD_KEEPER, 17
+ object SPRITE_BLACK_HAIR_BOY_1, 15, 31, STAY, LEFT, 5, OPP_BIRD_KEEPER, 4
+ object SPRITE_BLACK_HAIR_BOY_1, 6, 49, STAY, UP, 6, OPP_BIRD_KEEPER, 5
+ object SPRITE_BIKER, 5, 39, STAY, DOWN, 7, OPP_BIKER, 13
+ object SPRITE_BIKER, 4, 30, STAY, RIGHT, 8, OPP_BIKER, 14
+ object SPRITE_BIKER, 15, 30, STAY, LEFT, 9, OPP_BIKER, 15
+ object SPRITE_BIKER, 4, 31, STAY, RIGHT, 10, OPP_BIKER, 2
diff --git a/data/mapObjects/Route15.asm b/data/mapObjects/Route15.asm
new file mode 100755
index 00000000..10cd8090
--- /dev/null
+++ b/data/mapObjects/Route15.asm
@@ -0,0 +1,30 @@
+Route15_Object:
+ db $43 ; border block
+
+ db 4 ; warps
+ warp 7, 8, 0, ROUTE_15_GATE_1F
+ warp 7, 9, 0, ROUTE_15_GATE_1F
+ warp 14, 8, 2, ROUTE_15_GATE_1F
+ warp 14, 9, 2, ROUTE_15_GATE_1F
+
+ db 1 ; signs
+ sign 39, 9, 12 ; Route15Text12
+
+ db 11 ; objects
+ object SPRITE_LASS, 41, 11, STAY, DOWN, 1, OPP_JR_TRAINER_F, 20
+ object SPRITE_LASS, 53, 10, STAY, LEFT, 2, OPP_JR_TRAINER_F, 21
+ object SPRITE_BLACK_HAIR_BOY_1, 31, 13, STAY, UP, 3, OPP_BIRD_KEEPER, 6
+ object SPRITE_BLACK_HAIR_BOY_1, 35, 13, STAY, UP, 4, OPP_BIRD_KEEPER, 7
+ object SPRITE_FOULARD_WOMAN, 53, 11, STAY, DOWN, 5, OPP_BEAUTY, 9
+ object SPRITE_FOULARD_WOMAN, 41, 10, STAY, RIGHT, 6, OPP_BEAUTY, 10
+ object SPRITE_BIKER, 48, 10, STAY, DOWN, 7, OPP_BIKER, 3
+ object SPRITE_BIKER, 46, 10, STAY, DOWN, 8, OPP_BIKER, 4
+ object SPRITE_LASS, 37, 5, STAY, RIGHT, 9, OPP_JR_TRAINER_F, 22
+ object SPRITE_LASS, 18, 13, STAY, UP, 10, OPP_JR_TRAINER_F, 23
+ object SPRITE_BALL, 18, 5, STAY, NONE, 11, TM_20
+
+ ; warp-to
+ warp_to 7, 8, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
+ warp_to 7, 9, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
+ warp_to 14, 8, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
+ warp_to 14, 9, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
diff --git a/data/mapObjects/Route15Gate1F.asm b/data/mapObjects/Route15Gate1F.asm
new file mode 100755
index 00000000..23b1f5a7
--- /dev/null
+++ b/data/mapObjects/Route15Gate1F.asm
@@ -0,0 +1,21 @@
+Route15Gate1F_Object:
+ db $a ; border block
+
+ db 5 ; warps
+ warp 0, 4, 0, -1
+ warp 0, 5, 1, -1
+ warp 7, 4, 2, -1
+ warp 7, 5, 3, -1
+ warp 6, 8, 0, ROUTE_15_GATE_2F
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 4, 1, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 0, 4, ROUTE_15_GATE_1F_WIDTH
+ warp_to 0, 5, ROUTE_15_GATE_1F_WIDTH
+ warp_to 7, 4, ROUTE_15_GATE_1F_WIDTH
+ warp_to 7, 5, ROUTE_15_GATE_1F_WIDTH
+ warp_to 6, 8, ROUTE_15_GATE_1F_WIDTH ; ROUTE_15_GATE_2F
diff --git a/data/mapObjects/Route15Gate2F.asm b/data/mapObjects/Route15Gate2F.asm
new file mode 100755
index 00000000..162f2b1f
--- /dev/null
+++ b/data/mapObjects/Route15Gate2F.asm
@@ -0,0 +1,14 @@
+Route15Gate2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 7, 4, ROUTE_15_GATE_1F
+
+ db 1 ; signs
+ sign 6, 2, 2 ; Route15GateUpstairsText2
+
+ db 1 ; objects
+ object SPRITE_OAK_AIDE, 4, 2, STAY, DOWN, 1
+
+ ; warp-to
+ warp_to 7, 7, ROUTE_15_GATE_2F_WIDTH ; ROUTE_15_GATE_1F
diff --git a/data/mapObjects/Route16.asm b/data/mapObjects/Route16.asm
new file mode 100755
index 00000000..93531d13
--- /dev/null
+++ b/data/mapObjects/Route16.asm
@@ -0,0 +1,37 @@
+Route16_Object:
+ db $f ; border block
+
+ db 9 ; warps
+ warp 17, 10, 0, ROUTE_16_GATE_1F
+ warp 17, 11, 0, ROUTE_16_GATE_1F
+ warp 24, 10, 2, ROUTE_16_GATE_1F
+ warp 24, 11, 2, ROUTE_16_GATE_1F
+ warp 17, 4, 4, ROUTE_16_GATE_1F
+ warp 17, 5, 4, ROUTE_16_GATE_1F
+ warp 24, 4, 6, ROUTE_16_GATE_1F
+ warp 24, 5, 6, ROUTE_16_GATE_1F
+ warp 7, 5, 0, ROUTE_16_FLY_HOUSE
+
+ db 2 ; signs
+ sign 27, 11, 8 ; Route16Text8
+ sign 5, 17, 9 ; Route16Text9
+
+ db 7 ; objects
+ object SPRITE_BIKER, 17, 12, STAY, LEFT, 1, OPP_BIKER, 5
+ object SPRITE_BIKER, 14, 13, STAY, RIGHT, 2, OPP_CUE_BALL, 1
+ object SPRITE_BIKER, 11, 12, STAY, UP, 3, OPP_CUE_BALL, 2
+ object SPRITE_BIKER, 9, 11, STAY, LEFT, 4, OPP_BIKER, 6
+ object SPRITE_BIKER, 6, 10, STAY, RIGHT, 5, OPP_CUE_BALL, 3
+ object SPRITE_BIKER, 3, 12, STAY, RIGHT, 6, OPP_BIKER, 7
+ object SPRITE_SNORLAX, 26, 10, STAY, DOWN, 7 ; person
+
+ ; warp-to
+ warp_to 17, 10, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 17, 11, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 24, 10, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 24, 11, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 17, 4, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 17, 5, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 24, 4, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 24, 5, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
+ warp_to 7, 5, ROUTE_16_WIDTH ; ROUTE_16_FLY_HOUSE
diff --git a/data/mapObjects/Route16FlyHouse.asm b/data/mapObjects/Route16FlyHouse.asm
new file mode 100755
index 00000000..ec493fef
--- /dev/null
+++ b/data/mapObjects/Route16FlyHouse.asm
@@ -0,0 +1,16 @@
+Route16FlyHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 8, -1
+ warp 3, 7, 8, -1
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BRUNETTE_GIRL, 2, 3, STAY, RIGHT, 1 ; person
+ object SPRITE_BIRD, 6, 4, WALK, 0, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, ROUTE_16_FLY_HOUSE_WIDTH
+ warp_to 3, 7, ROUTE_16_FLY_HOUSE_WIDTH
diff --git a/data/mapObjects/Route16Gate1F.asm b/data/mapObjects/Route16Gate1F.asm
new file mode 100755
index 00000000..1d5baa1d
--- /dev/null
+++ b/data/mapObjects/Route16Gate1F.asm
@@ -0,0 +1,30 @@
+Route16Gate1F_Object:
+ db $a ; border block
+
+ db 9 ; warps
+ warp 0, 8, 0, -1
+ warp 0, 9, 1, -1
+ warp 7, 8, 2, -1
+ warp 7, 9, 2, -1
+ warp 0, 2, 4, -1
+ warp 0, 3, 5, -1
+ warp 7, 2, 6, -1
+ warp 7, 3, 7, -1
+ warp 6, 12, 0, ROUTE_16_GATE_2F
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_GUARD, 4, 5, STAY, DOWN, 1 ; person
+ object SPRITE_GAMBLER, 4, 3, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 0, 8, ROUTE_16_GATE_1F_WIDTH
+ warp_to 0, 9, ROUTE_16_GATE_1F_WIDTH
+ warp_to 7, 8, ROUTE_16_GATE_1F_WIDTH
+ warp_to 7, 9, ROUTE_16_GATE_1F_WIDTH
+ warp_to 0, 2, ROUTE_16_GATE_1F_WIDTH
+ warp_to 0, 3, ROUTE_16_GATE_1F_WIDTH
+ warp_to 7, 2, ROUTE_16_GATE_1F_WIDTH
+ warp_to 7, 3, ROUTE_16_GATE_1F_WIDTH
+ warp_to 6, 12, ROUTE_16_GATE_1F_WIDTH ; ROUTE_16_GATE_2F
diff --git a/data/mapObjects/Route16Gate2F.asm b/data/mapObjects/Route16Gate2F.asm
new file mode 100755
index 00000000..5914f854
--- /dev/null
+++ b/data/mapObjects/Route16Gate2F.asm
@@ -0,0 +1,16 @@
+Route16Gate2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 7, 8, ROUTE_16_GATE_1F
+
+ db 2 ; signs
+ sign 1, 2, 3 ; Route16GateUpstairsText3
+ sign 6, 2, 4 ; Route16GateUpstairsText4
+
+ db 2 ; objects
+ object SPRITE_YOUNG_BOY, 4, 2, STAY, NONE, 1 ; person
+ object SPRITE_LITTLE_GIRL, 2, 5, WALK, 2, 2 ; person
+
+ ; warp-to
+ warp_to 7, 7, ROUTE_16_GATE_2F_WIDTH ; ROUTE_16_GATE_1F
diff --git a/data/mapObjects/Route17.asm b/data/mapObjects/Route17.asm
new file mode 100755
index 00000000..f5bc4307
--- /dev/null
+++ b/data/mapObjects/Route17.asm
@@ -0,0 +1,24 @@
+Route17_Object:
+ db $43 ; border block
+
+ db 0 ; warps
+
+ db 6 ; signs
+ sign 9, 51, 11 ; Route17Text11
+ sign 9, 63, 12 ; Route17Text12
+ sign 9, 75, 13 ; Route17Text13
+ sign 9, 87, 14 ; Route17Text14
+ sign 9, 111, 15 ; Route17Text15
+ sign 9, 141, 16 ; Route17Text16
+
+ db 10 ; objects
+ object SPRITE_BIKER, 12, 19, STAY, LEFT, 1, OPP_CUE_BALL, 4
+ object SPRITE_BIKER, 11, 16, STAY, RIGHT, 2, OPP_CUE_BALL, 5
+ object SPRITE_BIKER, 4, 18, STAY, UP, 3, OPP_BIKER, 8
+ object SPRITE_BIKER, 7, 32, STAY, LEFT, 4, OPP_BIKER, 9
+ object SPRITE_BIKER, 14, 34, STAY, RIGHT, 5, OPP_BIKER, 10
+ object SPRITE_BIKER, 17, 58, STAY, LEFT, 6, OPP_CUE_BALL, 6
+ object SPRITE_BIKER, 2, 68, STAY, RIGHT, 7, OPP_CUE_BALL, 7
+ object SPRITE_BIKER, 14, 98, STAY, RIGHT, 8, OPP_CUE_BALL, 8
+ object SPRITE_BIKER, 5, 98, STAY, LEFT, 9, OPP_BIKER, 11
+ object SPRITE_BIKER, 10, 118, STAY, DOWN, 10, OPP_BIKER, 12
diff --git a/data/mapObjects/Route18.asm b/data/mapObjects/Route18.asm
new file mode 100755
index 00000000..dc6cc6b6
--- /dev/null
+++ b/data/mapObjects/Route18.asm
@@ -0,0 +1,23 @@
+Route18_Object:
+ db $43 ; border block
+
+ db 4 ; warps
+ warp 33, 8, 0, ROUTE_18_GATE_1F
+ warp 33, 9, 0, ROUTE_18_GATE_1F
+ warp 40, 8, 2, ROUTE_18_GATE_1F
+ warp 40, 9, 2, ROUTE_18_GATE_1F
+
+ db 2 ; signs
+ sign 43, 7, 4 ; Route18Text4
+ sign 33, 5, 5 ; Route18Text5
+
+ db 3 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 36, 11, STAY, RIGHT, 1, OPP_BIRD_KEEPER, 8
+ object SPRITE_BLACK_HAIR_BOY_1, 40, 15, STAY, LEFT, 2, OPP_BIRD_KEEPER, 9
+ object SPRITE_BLACK_HAIR_BOY_1, 42, 13, STAY, LEFT, 3, OPP_BIRD_KEEPER, 10
+
+ ; warp-to
+ warp_to 33, 8, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
+ warp_to 33, 9, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
+ warp_to 40, 8, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
+ warp_to 40, 9, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
diff --git a/data/mapObjects/Route18Gate1F.asm b/data/mapObjects/Route18Gate1F.asm
new file mode 100755
index 00000000..83cb386a
--- /dev/null
+++ b/data/mapObjects/Route18Gate1F.asm
@@ -0,0 +1,21 @@
+Route18Gate1F_Object:
+ db $a ; border block
+
+ db 5 ; warps
+ warp 0, 4, 0, -1
+ warp 0, 5, 1, -1
+ warp 7, 4, 2, -1
+ warp 7, 5, 3, -1
+ warp 6, 8, 0, ROUTE_18_GATE_2F
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 4, 1, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 0, 4, ROUTE_18_GATE_1F_WIDTH
+ warp_to 0, 5, ROUTE_18_GATE_1F_WIDTH
+ warp_to 7, 4, ROUTE_18_GATE_1F_WIDTH
+ warp_to 7, 5, ROUTE_18_GATE_1F_WIDTH
+ warp_to 6, 8, ROUTE_18_GATE_1F_WIDTH ; ROUTE_18_GATE_2F
diff --git a/data/mapObjects/Route18Gate2F.asm b/data/mapObjects/Route18Gate2F.asm
new file mode 100755
index 00000000..1981a7f0
--- /dev/null
+++ b/data/mapObjects/Route18Gate2F.asm
@@ -0,0 +1,15 @@
+Route18Gate2F_Object:
+ db $a ; border block
+
+ db 1 ; warps
+ warp 7, 7, 4, ROUTE_18_GATE_1F
+
+ db 2 ; signs
+ sign 1, 2, 2 ; Route18GateUpstairsText2
+ sign 6, 2, 3 ; Route18GateUpstairsText3
+
+ db 1 ; objects
+ object SPRITE_COOK, 4, 2, WALK, 2, 1 ; person
+
+ ; warp-to
+ warp_to 7, 7, ROUTE_18_GATE_2F_WIDTH ; ROUTE_18_GATE_1F
diff --git a/data/mapObjects/Route19.asm b/data/mapObjects/Route19.asm
new file mode 100755
index 00000000..d1b3034b
--- /dev/null
+++ b/data/mapObjects/Route19.asm
@@ -0,0 +1,23 @@
+Route19_Object:
+ db $43 ; border block
+
+ db 1 ; warps
+ warp 5, 9, 0, BEACH_HOUSE
+
+ db 1 ; signs
+ sign 11, 11, 11
+
+ db 10 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 9, 7, STAY, RIGHT, 1, OPP_SWIMMER, 2
+ object SPRITE_BLACK_HAIR_BOY_1, 12, 9, STAY, LEFT, 2, OPP_SWIMMER, 3
+ object SPRITE_SWIMMER, 13, 25, STAY, LEFT, 3, OPP_SWIMMER, 4
+ object SPRITE_SWIMMER, 4, 27, STAY, RIGHT, 4, OPP_SWIMMER, 5
+ object SPRITE_SWIMMER, 16, 31, STAY, UP, 5, OPP_SWIMMER, 6
+ object SPRITE_SWIMMER, 9, 13, STAY, DOWN, 6, OPP_SWIMMER, 7
+ object SPRITE_SWIMMER, 8, 43, STAY, LEFT, 7, OPP_BEAUTY, 12
+ object SPRITE_SWIMMER, 11, 43, STAY, RIGHT, 8, OPP_BEAUTY, 13
+ object SPRITE_SWIMMER, 9, 42, STAY, UP, 9, OPP_SWIMMER, 8
+ object SPRITE_SWIMMER, 10, 44, STAY, DOWN, 10, OPP_BEAUTY, 14
+
+ ; warp-to
+ warp_to 5, 9, ROUTE_19_WIDTH ; BEACH_HOUSE
diff --git a/data/mapObjects/Route2.asm b/data/mapObjects/Route2.asm
new file mode 100755
index 00000000..9595fec0
--- /dev/null
+++ b/data/mapObjects/Route2.asm
@@ -0,0 +1,36 @@
+Route2_Object:
+ db $f ; border block
+
+ db 7 ; warps
+ warp 12, 9, 0, DIGLETTS_CAVE_ROUTE_2
+ warp 3, 11, 1, VIRIDIAN_FOREST_NORTH_GATE
+ warp 15, 19, 0, ROUTE_2_TRADE_HOUSE
+ warp 16, 35, 1, ROUTE_2_GATE
+ warp 15, 39, 2, ROUTE_2_GATE
+ warp 3, 43, 2, VIRIDIAN_FOREST_SOUTH_GATE
+ warp 17, 35, 1, ROUTE_2_GATE
+
+ db 2 ; signs
+ sign 5, 65, 3 ; Route2Text3
+ sign 11, 11, 4 ; Route2Text4
+
+ db 2 ; objects
+ object SPRITE_BALL, 13, 54, STAY, NONE, 1, MOON_STONE
+ object SPRITE_BALL, 13, 45, STAY, NONE, 2, HP_UP
+
+ ; warp-to
+ warp_to 12, 9, ROUTE_2_WIDTH ; DIGLETTS_CAVE_ROUTE_2
+ warp_to 3, 11, ROUTE_2_WIDTH ; VIRIDIAN_FOREST_NORTH_GATE
+ warp_to 15, 19, ROUTE_2_WIDTH ; ROUTE_2_TRADE_HOUSE
+ warp_to 16, 35, ROUTE_2_WIDTH ; ROUTE_2_GATE
+ warp_to 15, 39, ROUTE_2_WIDTH ; ROUTE_2_GATE
+ warp_to 3, 43, ROUTE_2_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
+ warp_to 17, 35, ROUTE_2_WIDTH ; ROUTE_2_GATE
+
+ ; unused
+ warp_to 2, 7, 4
+ dw $c712
+ db $9, $7
+ warp_to 2, 7, 4
+ warp_to 2, 7, 4
+ warp_to 2, 7, 4
diff --git a/data/mapObjects/Route20.asm b/data/mapObjects/Route20.asm
new file mode 100755
index 00000000..7bceef97
--- /dev/null
+++ b/data/mapObjects/Route20.asm
@@ -0,0 +1,26 @@
+Route20_Object:
+ db $43 ; border block
+
+ db 2 ; warps
+ warp 48, 5, 0, SEAFOAM_ISLANDS_1F
+ warp 58, 9, 2, SEAFOAM_ISLANDS_1F
+
+ db 2 ; signs
+ sign 51, 7, 11 ; Route20Text11
+ sign 57, 11, 12 ; Route20Text12
+
+ db 10 ; objects
+ object SPRITE_SWIMMER, 87, 8, STAY, UP, 1, OPP_SWIMMER, 9
+ object SPRITE_SWIMMER, 68, 11, STAY, UP, 2, OPP_BEAUTY, 15
+ object SPRITE_SWIMMER, 45, 10, STAY, DOWN, 3, OPP_BEAUTY, 6
+ object SPRITE_SWIMMER, 55, 14, STAY, RIGHT, 4, OPP_JR_TRAINER_F, 24
+ object SPRITE_SWIMMER, 38, 13, STAY, DOWN, 5, OPP_SWIMMER, 10
+ object SPRITE_SWIMMER, 87, 13, STAY, UP, 6, OPP_SWIMMER, 11
+ object SPRITE_BLACK_HAIR_BOY_1, 34, 9, STAY, UP, 7, OPP_BIRD_KEEPER, 11
+ object SPRITE_SWIMMER, 25, 7, STAY, UP, 8, OPP_BEAUTY, 7
+ object SPRITE_SWIMMER, 24, 12, STAY, DOWN, 9, OPP_JR_TRAINER_F, 16
+ object SPRITE_SWIMMER, 15, 8, STAY, UP, 10, OPP_BEAUTY, 8
+
+ ; warp-to
+ warp_to 48, 5, ROUTE_20_WIDTH ; SEAFOAM_ISLANDS_1F
+ warp_to 58, 9, ROUTE_20_WIDTH ; SEAFOAM_ISLANDS_1F
diff --git a/data/mapObjects/Route21.asm b/data/mapObjects/Route21.asm
new file mode 100755
index 00000000..b7759b59
--- /dev/null
+++ b/data/mapObjects/Route21.asm
@@ -0,0 +1,17 @@
+Route21_Object:
+ db $43 ; border block
+
+ db 0 ; warps
+
+ db 0 ; signs
+
+ db 9 ; objects
+ object SPRITE_FISHER2, 4, 24, STAY, LEFT, 1, OPP_FISHER, 7
+ object SPRITE_FISHER2, 6, 25, STAY, DOWN, 2, OPP_FISHER, 9
+ object SPRITE_SWIMMER, 10, 31, STAY, UP, 3, OPP_SWIMMER, 12
+ object SPRITE_SWIMMER, 12, 30, STAY, RIGHT, 4, OPP_CUE_BALL, 9
+ object SPRITE_SWIMMER, 16, 63, STAY, DOWN, 5, OPP_SWIMMER, 13
+ object SPRITE_SWIMMER, 5, 71, STAY, RIGHT, 6, OPP_SWIMMER, 14
+ object SPRITE_SWIMMER, 15, 71, STAY, LEFT, 7, OPP_SWIMMER, 15
+ object SPRITE_FISHER2, 14, 56, STAY, LEFT, 8, OPP_FISHER, 8
+ object SPRITE_FISHER2, 17, 57, STAY, RIGHT, 9, OPP_FISHER, 10
diff --git a/data/mapObjects/Route22.asm b/data/mapObjects/Route22.asm
new file mode 100755
index 00000000..56e759fd
--- /dev/null
+++ b/data/mapObjects/Route22.asm
@@ -0,0 +1,15 @@
+Route22_Object:
+ db $2c ; border block
+
+ db 1 ; warps
+ warp 8, 5, 0, ROUTE_22_GATE
+
+ db 1 ; signs
+ sign 7, 11, 3 ; Route22FrontGateText
+
+ db 2 ; objects
+ object SPRITE_BLUE, 25, 5, STAY, NONE, 1 ; person
+ object SPRITE_BLUE, 25, 5, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 8, 5, ROUTE_22_WIDTH ; ROUTE_22_GATE
diff --git a/data/mapObjects/Route22Gate.asm b/data/mapObjects/Route22Gate.asm
new file mode 100755
index 00000000..e59ca6cf
--- /dev/null
+++ b/data/mapObjects/Route22Gate.asm
@@ -0,0 +1,19 @@
+Route22Gate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 4, 7, 0, -1
+ warp 5, 7, 0, -1
+ warp 4, 0, 0, -1
+ warp 5, 0, 0, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 6, 2, STAY, LEFT, 1 ; person
+
+ ; warp-to
+ warp_to 4, 7, ROUTE_22_GATE_WIDTH
+ warp_to 5, 7, ROUTE_22_GATE_WIDTH
+ warp_to 4, 0, ROUTE_22_GATE_WIDTH
+ warp_to 5, 0, ROUTE_22_GATE_WIDTH
diff --git a/data/mapObjects/Route23.asm b/data/mapObjects/Route23.asm
new file mode 100755
index 00000000..b510c285
--- /dev/null
+++ b/data/mapObjects/Route23.asm
@@ -0,0 +1,26 @@
+Route23_Object:
+ db $f ; border block
+
+ db 4 ; warps
+ warp 7, 139, 2, ROUTE_22_GATE
+ warp 8, 139, 3, ROUTE_22_GATE
+ warp 4, 31, 0, VICTORY_ROAD_1F
+ warp 14, 31, 1, VICTORY_ROAD_2F
+
+ db 1 ; signs
+ sign 3, 33, 8 ; Route23Text8
+
+ db 7 ; objects
+ object SPRITE_GUARD, 4, 35, STAY, DOWN, 1 ; person
+ object SPRITE_GUARD, 10, 56, STAY, DOWN, 2 ; person
+ object SPRITE_SWIMMER, 8, 85, STAY, DOWN, 3 ; person
+ object SPRITE_SWIMMER, 11, 96, STAY, DOWN, 4 ; person
+ object SPRITE_GUARD, 12, 105, STAY, DOWN, 5 ; person
+ object SPRITE_GUARD, 8, 119, STAY, DOWN, 6 ; person
+ object SPRITE_GUARD, 8, 136, STAY, DOWN, 7 ; person
+
+ ; warp-to
+ warp_to 7, 139, ROUTE_23_WIDTH ; ROUTE_22_GATE
+ warp_to 8, 139, ROUTE_23_WIDTH ; ROUTE_22_GATE
+ warp_to 4, 31, ROUTE_23_WIDTH ; VICTORY_ROAD_1F
+ warp_to 14, 31, ROUTE_23_WIDTH ; VICTORY_ROAD_2F
diff --git a/data/mapObjects/Route24.asm b/data/mapObjects/Route24.asm
new file mode 100755
index 00000000..5f41c519
--- /dev/null
+++ b/data/mapObjects/Route24.asm
@@ -0,0 +1,17 @@
+Route24_Object:
+ db $2c ; border block
+
+ db 0 ; warps
+
+ db 0 ; signs
+
+ db 9 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 11, 15, STAY, LEFT, 1, OPP_ROCKET, 6
+ object SPRITE_BLACK_HAIR_BOY_1, 5, 20, STAY, UP, 2, OPP_JR_TRAINER_M, 2
+ object SPRITE_BLACK_HAIR_BOY_1, 11, 19, STAY, LEFT, 3, OPP_JR_TRAINER_M, 3
+ object SPRITE_LASS, 10, 22, STAY, RIGHT, 4, OPP_LASS, 7
+ object SPRITE_BUG_CATCHER, 11, 25, STAY, LEFT, 5, OPP_YOUNGSTER, 4
+ object SPRITE_LASS, 10, 28, STAY, RIGHT, 6, OPP_LASS, 8
+ object SPRITE_BUG_CATCHER, 11, 31, STAY, LEFT, 7, OPP_BUG_CATCHER, 9
+ object SPRITE_BALL, 10, 5, STAY, NONE, 8, TM_45
+ object SPRITE_BLACK_HAIR_BOY_1, 6, 5, STAY, DOWN, 9
diff --git a/data/mapObjects/Route25.asm b/data/mapObjects/Route25.asm
new file mode 100755
index 00000000..a85f85ca
--- /dev/null
+++ b/data/mapObjects/Route25.asm
@@ -0,0 +1,23 @@
+Route25_Object:
+ db $2c ; border block
+
+ db 1 ; warps
+ warp 45, 3, 0, BILLS_HOUSE
+
+ db 1 ; signs
+ sign 43, 3, 11 ; Route25Text11
+
+ db 10 ; objects
+ object SPRITE_BUG_CATCHER, 14, 2, STAY, DOWN, 1, OPP_YOUNGSTER, 5
+ object SPRITE_BUG_CATCHER, 18, 5, STAY, UP, 2, OPP_YOUNGSTER, 6
+ object SPRITE_BLACK_HAIR_BOY_1, 24, 4, STAY, DOWN, 3, OPP_JR_TRAINER_M, 2
+ object SPRITE_LASS, 18, 8, STAY, RIGHT, 4, OPP_LASS, 9
+ object SPRITE_BUG_CATCHER, 32, 3, STAY, LEFT, 5, OPP_YOUNGSTER, 7
+ object SPRITE_LASS, 37, 4, STAY, DOWN, 6, OPP_LASS, 10
+ object SPRITE_HIKER, 8, 4, STAY, RIGHT, 7, OPP_HIKER, 2
+ object SPRITE_HIKER, 23, 9, STAY, UP, 8, OPP_HIKER, 3
+ object SPRITE_HIKER, 13, 7, STAY, RIGHT, 9, OPP_HIKER, 4
+ object SPRITE_BALL, 22, 2, STAY, NONE, 10, TM_19
+
+ ; warp-to
+ warp_to 45, 3, ROUTE_25_WIDTH ; BILLS_HOUSE
diff --git a/data/mapObjects/Route2Gate.asm b/data/mapObjects/Route2Gate.asm
new file mode 100755
index 00000000..a7feb780
--- /dev/null
+++ b/data/mapObjects/Route2Gate.asm
@@ -0,0 +1,20 @@
+Route2Gate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 4, 0, 3, -1
+ warp 5, 0, 3, -1
+ warp 4, 7, 4, -1
+ warp 5, 7, 4, -1
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_OAK_AIDE, 1, 4, STAY, LEFT, 1 ; person
+ object SPRITE_BUG_CATCHER, 5, 4, WALK, 2, 2 ; person
+
+ ; warp-to
+ warp_to 4, 0, ROUTE_2_GATE_WIDTH
+ warp_to 5, 0, ROUTE_2_GATE_WIDTH
+ warp_to 4, 7, ROUTE_2_GATE_WIDTH
+ warp_to 5, 7, ROUTE_2_GATE_WIDTH
diff --git a/data/mapObjects/Route2TradeHouse.asm b/data/mapObjects/Route2TradeHouse.asm
new file mode 100755
index 00000000..29948d6b
--- /dev/null
+++ b/data/mapObjects/Route2TradeHouse.asm
@@ -0,0 +1,16 @@
+Route2TradeHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 2, -1
+ warp 3, 7, 2, -1
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_OAK_AIDE, 2, 4, STAY, RIGHT, 1 ; person
+ object SPRITE_GAMEBOY_KID, 4, 1, STAY, DOWN, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, ROUTE_2_TRADE_HOUSE_WIDTH
+ warp_to 3, 7, ROUTE_2_TRADE_HOUSE_WIDTH
diff --git a/data/mapObjects/Route3.asm b/data/mapObjects/Route3.asm
new file mode 100755
index 00000000..372ea6cf
--- /dev/null
+++ b/data/mapObjects/Route3.asm
@@ -0,0 +1,18 @@
+Route3_Object:
+ db $2c ; border block
+
+ db 0 ; warps
+
+ db 1 ; signs
+ sign 59, 9, 10 ; Route3Text10
+
+ db 9 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 57, 11, STAY, NONE, 1 ; person
+ object SPRITE_BUG_CATCHER, 10, 6, STAY, RIGHT, 2, OPP_BUG_CATCHER, 4
+ object SPRITE_BUG_CATCHER, 14, 4, STAY, DOWN, 3, OPP_YOUNGSTER, 1
+ object SPRITE_LASS, 16, 9, STAY, LEFT, 4, OPP_LASS, 1
+ object SPRITE_BUG_CATCHER, 19, 5, STAY, DOWN, 5, OPP_BUG_CATCHER, 5
+ object SPRITE_LASS, 23, 4, STAY, LEFT, 6, OPP_LASS, 2
+ object SPRITE_BUG_CATCHER, 22, 9, STAY, LEFT, 7, OPP_YOUNGSTER, 2
+ object SPRITE_BUG_CATCHER, 24, 6, STAY, RIGHT, 8, OPP_BUG_CATCHER, 6
+ object SPRITE_LASS, 33, 10, STAY, UP, 9, OPP_LASS, 3
diff --git a/data/mapObjects/Route4.asm b/data/mapObjects/Route4.asm
new file mode 100755
index 00000000..4ab88f8f
--- /dev/null
+++ b/data/mapObjects/Route4.asm
@@ -0,0 +1,22 @@
+Route4_Object:
+ db $2c ; border block
+
+ db 3 ; warps
+ warp 11, 5, 0, MT_MOON_POKECENTER
+ warp 18, 5, 0, MT_MOON_1F
+ warp 24, 5, 7, MT_MOON_B1F
+
+ db 3 ; signs
+ sign 12, 5, 4 ; PokeCenterSignText
+ sign 17, 7, 5 ; Route4Text5
+ sign 27, 7, 6 ; Route4Text6
+
+ db 3 ; objects
+ object SPRITE_LASS, 9, 8, WALK, 0, 1 ; person
+ object SPRITE_LASS, 63, 3, STAY, RIGHT, 2, OPP_LASS, 4
+ object SPRITE_BALL, 57, 3, STAY, NONE, 3, TM_04
+
+ ; warp-to
+ warp_to 11, 5, ROUTE_4_WIDTH ; MT_MOON_POKECENTER
+ warp_to 18, 5, ROUTE_4_WIDTH ; MT_MOON_1F
+ warp_to 24, 5, ROUTE_4_WIDTH ; MT_MOON_B1F
diff --git a/data/mapObjects/Route5.asm b/data/mapObjects/Route5.asm
new file mode 100755
index 00000000..fd74edf6
--- /dev/null
+++ b/data/mapObjects/Route5.asm
@@ -0,0 +1,21 @@
+Route5_Object:
+ db $a ; border block
+
+ db 5 ; warps
+ warp 10, 29, 2, ROUTE_5_GATE
+ warp 9, 29, 2, ROUTE_5_GATE
+ warp 10, 33, 0, ROUTE_5_GATE
+ warp 17, 27, 0, UNDERGROUND_PATH_ROUTE_5
+ warp 10, 21, 0, DAYCARE
+
+ db 1 ; signs
+ sign 17, 29, 1 ; Route5Text1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 10, 29, ROUTE_5_WIDTH ; ROUTE_5_GATE
+ warp_to 9, 29, ROUTE_5_WIDTH ; ROUTE_5_GATE
+ warp_to 10, 33, ROUTE_5_WIDTH ; ROUTE_5_GATE
+ warp_to 17, 27, ROUTE_5_WIDTH ; UNDERGROUND_PATH_ROUTE_5
+ warp_to 10, 21, ROUTE_5_WIDTH ; DAYCARE
diff --git a/data/mapObjects/Route5Gate.asm b/data/mapObjects/Route5Gate.asm
new file mode 100755
index 00000000..e0e06a1d
--- /dev/null
+++ b/data/mapObjects/Route5Gate.asm
@@ -0,0 +1,19 @@
+Route5Gate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 3, 5, 2, -1
+ warp 4, 5, 2, -1
+ warp 3, 0, 1, -1
+ warp 4, 0, 0, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 1, 3, STAY, RIGHT, 1 ; person
+
+ ; warp-to
+ warp_to 3, 5, ROUTE_5_GATE_WIDTH
+ warp_to 4, 5, ROUTE_5_GATE_WIDTH
+ warp_to 3, 0, ROUTE_5_GATE_WIDTH
+ warp_to 4, 0, ROUTE_5_GATE_WIDTH
diff --git a/data/mapObjects/Route6.asm b/data/mapObjects/Route6.asm
new file mode 100755
index 00000000..13825be1
--- /dev/null
+++ b/data/mapObjects/Route6.asm
@@ -0,0 +1,25 @@
+Route6_Object:
+ db $f ; border block
+
+ db 4 ; warps
+ warp 9, 1, 2, ROUTE_6_GATE
+ warp 10, 1, 2, ROUTE_6_GATE
+ warp 10, 7, 0, ROUTE_6_GATE
+ warp 17, 13, 0, UNDERGROUND_PATH_ROUTE_6
+
+ db 1 ; signs
+ sign 19, 15, 7 ; Route6Text7
+
+ db 6 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 10, 21, STAY, RIGHT, 1, OPP_JR_TRAINER_M, 10
+ object SPRITE_LASS, 11, 21, STAY, LEFT, 2, OPP_JR_TRAINER_F, 25
+ object SPRITE_BUG_CATCHER, 0, 15, STAY, RIGHT, 3, OPP_BUG_CATCHER, 10
+ object SPRITE_BLACK_HAIR_BOY_1, 11, 31, STAY, LEFT, 4, OPP_JR_TRAINER_M, 5
+ object SPRITE_LASS, 11, 30, STAY, LEFT, 5, OPP_JR_TRAINER_F, 3
+ object SPRITE_BUG_CATCHER, 19, 26, STAY, LEFT, 6, OPP_BUG_CATCHER, 11
+
+ ; warp-to
+ warp_to 9, 1, ROUTE_6_WIDTH ; ROUTE_6_GATE
+ warp_to 10, 1, ROUTE_6_WIDTH ; ROUTE_6_GATE
+ warp_to 10, 7, ROUTE_6_WIDTH ; ROUTE_6_GATE
+ warp_to 17, 13, ROUTE_6_WIDTH ; UNDERGROUND_PATH_ROUTE_6
diff --git a/data/mapObjects/Route6Gate.asm b/data/mapObjects/Route6Gate.asm
new file mode 100755
index 00000000..8ed96d04
--- /dev/null
+++ b/data/mapObjects/Route6Gate.asm
@@ -0,0 +1,19 @@
+Route6Gate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 3, 5, 2, -1
+ warp 4, 5, 2, -1
+ warp 3, 0, 1, -1
+ warp 4, 0, 1, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 6, 2, STAY, LEFT, 1 ; person
+
+ ; warp-to
+ warp_to 3, 5, ROUTE_6_GATE_WIDTH
+ warp_to 4, 5, ROUTE_6_GATE_WIDTH
+ warp_to 3, 0, ROUTE_6_GATE_WIDTH
+ warp_to 4, 0, ROUTE_6_GATE_WIDTH
diff --git a/data/mapObjects/Route7.asm b/data/mapObjects/Route7.asm
new file mode 100755
index 00000000..3da2fd4b
--- /dev/null
+++ b/data/mapObjects/Route7.asm
@@ -0,0 +1,21 @@
+Route7_Object:
+ db $f ; border block
+
+ db 5 ; warps
+ warp 18, 9, 2, ROUTE_7_GATE
+ warp 18, 10, 2, ROUTE_7_GATE
+ warp 11, 9, 0, ROUTE_7_GATE
+ warp 11, 10, 0, ROUTE_7_GATE
+ warp 5, 13, 0, UNDERGROUND_PATH_ROUTE_7
+
+ db 1 ; signs
+ sign 3, 13, 1 ; Route7Text1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 18, 9, ROUTE_7_WIDTH ; ROUTE_7_GATE
+ warp_to 18, 10, ROUTE_7_WIDTH ; ROUTE_7_GATE
+ warp_to 11, 9, ROUTE_7_WIDTH ; ROUTE_7_GATE
+ warp_to 11, 10, ROUTE_7_WIDTH ; ROUTE_7_GATE
+ warp_to 5, 13, ROUTE_7_WIDTH ; UNDERGROUND_PATH_ROUTE_7
diff --git a/data/mapObjects/Route7Gate.asm b/data/mapObjects/Route7Gate.asm
new file mode 100755
index 00000000..c9dc8dca
--- /dev/null
+++ b/data/mapObjects/Route7Gate.asm
@@ -0,0 +1,19 @@
+Route7Gate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 0, 3, 3, -1
+ warp 0, 4, 3, -1
+ warp 5, 3, 1, -1
+ warp 5, 4, 1, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 3, 1, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 0, 3, ROUTE_7_GATE_WIDTH
+ warp_to 0, 4, ROUTE_7_GATE_WIDTH
+ warp_to 5, 3, ROUTE_7_GATE_WIDTH
+ warp_to 5, 4, ROUTE_7_GATE_WIDTH
diff --git a/data/mapObjects/Route8.asm b/data/mapObjects/Route8.asm
new file mode 100755
index 00000000..2fc0045c
--- /dev/null
+++ b/data/mapObjects/Route8.asm
@@ -0,0 +1,30 @@
+Route8_Object:
+ db $2c ; border block
+
+ db 5 ; warps
+ warp 1, 9, 0, ROUTE_8_GATE
+ warp 1, 10, 0, ROUTE_8_GATE
+ warp 8, 9, 2, ROUTE_8_GATE
+ warp 8, 10, 2, ROUTE_8_GATE
+ warp 13, 3, 0, UNDERGROUND_PATH_ROUTE_8
+
+ db 1 ; signs
+ sign 17, 3, 10 ; Route8Text10
+
+ db 9 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 8, 5, STAY, RIGHT, 1, OPP_SUPER_NERD, 3
+ object SPRITE_GAMBLER, 13, 9, STAY, UP, 2, OPP_GAMBLER, 5
+ object SPRITE_BLACK_HAIR_BOY_2, 42, 6, STAY, UP, 3, OPP_SUPER_NERD, 4
+ object SPRITE_LASS, 26, 3, STAY, LEFT, 4, OPP_LASS, 13
+ object SPRITE_BLACK_HAIR_BOY_2, 26, 4, STAY, RIGHT, 5, OPP_SUPER_NERD, 5
+ object SPRITE_LASS, 26, 5, STAY, LEFT, 6, OPP_LASS, 14
+ object SPRITE_LASS, 26, 6, STAY, RIGHT, 7, OPP_LASS, 15
+ object SPRITE_GAMBLER, 46, 13, STAY, DOWN, 8, OPP_GAMBLER, 7
+ object SPRITE_LASS, 51, 12, STAY, LEFT, 9, OPP_LASS, 16
+
+ ; warp-to
+ warp_to 1, 9, ROUTE_8_WIDTH ; ROUTE_8_GATE
+ warp_to 1, 10, ROUTE_8_WIDTH ; ROUTE_8_GATE
+ warp_to 8, 9, ROUTE_8_WIDTH ; ROUTE_8_GATE
+ warp_to 8, 10, ROUTE_8_WIDTH ; ROUTE_8_GATE
+ warp_to 13, 3, ROUTE_8_WIDTH ; UNDERGROUND_PATH_ROUTE_8
diff --git a/data/mapObjects/Route8Gate.asm b/data/mapObjects/Route8Gate.asm
new file mode 100755
index 00000000..008a0fcb
--- /dev/null
+++ b/data/mapObjects/Route8Gate.asm
@@ -0,0 +1,19 @@
+Route8Gate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 0, 3, 1, -1
+ warp 0, 4, 1, -1
+ warp 5, 3, 3, -1
+ warp 5, 4, 3, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GUARD, 2, 1, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 0, 3, ROUTE_8_GATE_WIDTH
+ warp_to 0, 4, ROUTE_8_GATE_WIDTH
+ warp_to 5, 3, ROUTE_8_GATE_WIDTH
+ warp_to 5, 4, ROUTE_8_GATE_WIDTH
diff --git a/data/mapObjects/Route9.asm b/data/mapObjects/Route9.asm
new file mode 100755
index 00000000..c531cf7a
--- /dev/null
+++ b/data/mapObjects/Route9.asm
@@ -0,0 +1,19 @@
+Route9_Object:
+ db $2c ; border block
+
+ db 0 ; warps
+
+ db 1 ; signs
+ sign 25, 7, 11 ; Route9Text11
+
+ db 10 ; objects
+ object SPRITE_LASS, 13, 10, STAY, LEFT, 1, OPP_JR_TRAINER_F, 5
+ object SPRITE_BLACK_HAIR_BOY_1, 24, 7, STAY, LEFT, 2, OPP_YOUNGSTER, 14
+ object SPRITE_BLACK_HAIR_BOY_1, 31, 7, STAY, RIGHT, 3, OPP_JR_TRAINER_M, 8
+ object SPRITE_LASS, 48, 8, STAY, RIGHT, 4, OPP_JR_TRAINER_F, 6
+ object SPRITE_HIKER, 16, 15, STAY, LEFT, 5, OPP_HIKER, 11
+ object SPRITE_HIKER, 43, 3, STAY, LEFT, 6, OPP_HIKER, 6
+ object SPRITE_BUG_CATCHER, 22, 2, STAY, DOWN, 7, OPP_BUG_CATCHER, 13
+ object SPRITE_HIKER, 45, 15, STAY, RIGHT, 8, OPP_HIKER, 5
+ object SPRITE_BUG_CATCHER, 40, 8, STAY, RIGHT, 9, OPP_BUG_CATCHER, 14
+ object SPRITE_BALL, 10, 15, STAY, NONE, 10, TM_30
diff --git a/data/mapObjects/SSAnne1F.asm b/data/mapObjects/SSAnne1F.asm
new file mode 100755
index 00000000..3e454f06
--- /dev/null
+++ b/data/mapObjects/SSAnne1F.asm
@@ -0,0 +1,34 @@
+SSAnne1F_Object:
+ db $c ; border block
+
+ db 11 ; warps
+ warp 26, 0, 1, VERMILION_DOCK
+ warp 27, 0, 1, VERMILION_DOCK
+ warp 31, 8, 0, SS_ANNE_1F_ROOMS
+ warp 23, 8, 1, SS_ANNE_1F_ROOMS
+ warp 19, 8, 2, SS_ANNE_1F_ROOMS
+ warp 15, 8, 3, SS_ANNE_1F_ROOMS
+ warp 11, 8, 4, SS_ANNE_1F_ROOMS
+ warp 7, 8, 5, SS_ANNE_1F_ROOMS
+ warp 2, 6, 6, SS_ANNE_2F
+ warp 37, 15, 5, SS_ANNE_B1F
+ warp 3, 16, 0, SS_ANNE_KITCHEN
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_WAITER, 12, 6, WALK, 2, 1 ; person
+ object SPRITE_SAILOR, 27, 5, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 26, 0, SS_ANNE_1F_WIDTH ; VERMILION_DOCK
+ warp_to 27, 0, SS_ANNE_1F_WIDTH ; VERMILION_DOCK
+ warp_to 31, 8, SS_ANNE_1F_WIDTH ; SS_ANNE_1F_ROOMS
+ warp_to 23, 8, SS_ANNE_1F_WIDTH ; SS_ANNE_1F_ROOMS
+ warp_to 19, 8, SS_ANNE_1F_WIDTH ; SS_ANNE_1F_ROOMS
+ warp_to 15, 8, SS_ANNE_1F_WIDTH ; SS_ANNE_1F_ROOMS
+ warp_to 11, 8, SS_ANNE_1F_WIDTH ; SS_ANNE_1F_ROOMS
+ warp_to 7, 8, SS_ANNE_1F_WIDTH ; SS_ANNE_1F_ROOMS
+ warp_to 2, 6, SS_ANNE_1F_WIDTH ; SS_ANNE_2F
+ warp_to 37, 15, SS_ANNE_1F_WIDTH ; SS_ANNE_B1F
+ warp_to 3, 16, SS_ANNE_1F_WIDTH ; SS_ANNE_KITCHEN
diff --git a/data/mapObjects/SSAnne1FRooms.asm b/data/mapObjects/SSAnne1FRooms.asm
new file mode 100755
index 00000000..fcd36532
--- /dev/null
+++ b/data/mapObjects/SSAnne1FRooms.asm
@@ -0,0 +1,33 @@
+SSAnne1FRooms_Object:
+ db $c ; border block
+
+ db 6 ; warps
+ warp 0, 0, 2, SS_ANNE_1F
+ warp 10, 0, 3, SS_ANNE_1F
+ warp 20, 0, 4, SS_ANNE_1F
+ warp 0, 10, 5, SS_ANNE_1F
+ warp 10, 10, 6, SS_ANNE_1F
+ warp 20, 10, 7, SS_ANNE_1F
+
+ db 0 ; signs
+
+ db 11 ; objects
+ object SPRITE_GENTLEMAN, 2, 3, STAY, LEFT, 1, OPP_GENTLEMAN, 1
+ object SPRITE_GENTLEMAN, 11, 4, STAY, UP, 2, OPP_GENTLEMAN, 2
+ object SPRITE_BUG_CATCHER, 11, 14, STAY, UP, 3, OPP_YOUNGSTER, 8
+ object SPRITE_LASS, 13, 11, STAY, LEFT, 4, OPP_LASS, 11
+ object SPRITE_GIRL, 22, 3, WALK, 1, 5 ; person
+ object SPRITE_FAT_BALD_GUY, 0, 14, STAY, NONE, 6 ; person
+ object SPRITE_LITTLE_GIRL, 2, 11, STAY, DOWN, 7 ; person
+ object SPRITE_JIGGLYPUFF, 3, 11, STAY, DOWN, 8 ; person
+ object SPRITE_GIRL, 10, 13, STAY, RIGHT, 9 ; person
+ object SPRITE_BALL, 12, 15, STAY, NONE, 10, TM_08
+ object SPRITE_GENTLEMAN, 21, 13, WALK, 2, 11 ; person
+
+ ; warp-to
+ warp_to 0, 0, SS_ANNE_1F_ROOMS_WIDTH ; SS_ANNE_1F
+ warp_to 10, 0, SS_ANNE_1F_ROOMS_WIDTH ; SS_ANNE_1F
+ warp_to 20, 0, SS_ANNE_1F_ROOMS_WIDTH ; SS_ANNE_1F
+ warp_to 0, 10, SS_ANNE_1F_ROOMS_WIDTH ; SS_ANNE_1F
+ warp_to 10, 10, SS_ANNE_1F_ROOMS_WIDTH ; SS_ANNE_1F
+ warp_to 20, 10, SS_ANNE_1F_ROOMS_WIDTH ; SS_ANNE_1F
diff --git a/data/mapObjects/SSAnne2F.asm b/data/mapObjects/SSAnne2F.asm
new file mode 100755
index 00000000..6abd5ac4
--- /dev/null
+++ b/data/mapObjects/SSAnne2F.asm
@@ -0,0 +1,30 @@
+SSAnne2F_Object:
+ db $c ; border block
+
+ db 9 ; warps
+ warp 9, 11, 0, SS_ANNE_2F_ROOMS
+ warp 13, 11, 2, SS_ANNE_2F_ROOMS
+ warp 17, 11, 4, SS_ANNE_2F_ROOMS
+ warp 21, 11, 6, SS_ANNE_2F_ROOMS
+ warp 25, 11, 8, SS_ANNE_2F_ROOMS
+ warp 29, 11, 10, SS_ANNE_2F_ROOMS
+ warp 2, 4, 8, SS_ANNE_1F
+ warp 2, 12, 1, SS_ANNE_3F
+ warp 36, 4, 0, SS_ANNE_CAPTAINS_ROOM
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_WAITER, 3, 7, WALK, 1, 1 ; person
+ object SPRITE_BLUE, 36, 4, STAY, DOWN, 2, OPP_SONY1, 1
+
+ ; warp-to
+ warp_to 9, 11, SS_ANNE_2F_WIDTH ; SS_ANNE_2F_ROOMS
+ warp_to 13, 11, SS_ANNE_2F_WIDTH ; SS_ANNE_2F_ROOMS
+ warp_to 17, 11, SS_ANNE_2F_WIDTH ; SS_ANNE_2F_ROOMS
+ warp_to 21, 11, SS_ANNE_2F_WIDTH ; SS_ANNE_2F_ROOMS
+ warp_to 25, 11, SS_ANNE_2F_WIDTH ; SS_ANNE_2F_ROOMS
+ warp_to 29, 11, SS_ANNE_2F_WIDTH ; SS_ANNE_2F_ROOMS
+ warp_to 2, 4, SS_ANNE_2F_WIDTH ; SS_ANNE_1F
+ warp_to 2, 12, SS_ANNE_2F_WIDTH ; SS_ANNE_3F
+ warp_to 36, 4, SS_ANNE_2F_WIDTH ; SS_ANNE_CAPTAINS_ROOM
diff --git a/data/mapObjects/SSAnne2FRooms.asm b/data/mapObjects/SSAnne2FRooms.asm
new file mode 100755
index 00000000..ebb053a8
--- /dev/null
+++ b/data/mapObjects/SSAnne2FRooms.asm
@@ -0,0 +1,47 @@
+SSAnne2FRooms_Object:
+ db $c ; border block
+
+ db 12 ; warps
+ warp 2, 5, 0, SS_ANNE_2F
+ warp 3, 5, 0, SS_ANNE_2F
+ warp 12, 5, 1, SS_ANNE_2F
+ warp 13, 5, 1, SS_ANNE_2F
+ warp 22, 5, 2, SS_ANNE_2F
+ warp 23, 5, 2, SS_ANNE_2F
+ warp 2, 15, 3, SS_ANNE_2F
+ warp 3, 15, 3, SS_ANNE_2F
+ warp 12, 15, 4, SS_ANNE_2F
+ warp 13, 15, 4, SS_ANNE_2F
+ warp 22, 15, 5, SS_ANNE_2F
+ warp 23, 15, 5, SS_ANNE_2F
+
+ db 0 ; signs
+
+ db 13 ; objects
+ object SPRITE_GENTLEMAN, 10, 2, STAY, RIGHT, 1, OPP_GENTLEMAN, 3
+ object SPRITE_FISHER2, 13, 4, STAY, LEFT, 2, OPP_FISHER, 1
+ object SPRITE_GENTLEMAN, 0, 14, STAY, RIGHT, 3, OPP_GENTLEMAN, 5
+ object SPRITE_LASS, 2, 11, STAY, DOWN, 4, OPP_LASS, 12
+ object SPRITE_GENTLEMAN, 1, 2, STAY, DOWN, 5 ; person
+ object SPRITE_BALL, 12, 1, STAY, NONE, 6, MAX_ETHER
+ object SPRITE_GENTLEMAN, 21, 2, STAY, DOWN, 7 ; person
+ object SPRITE_OLD_PERSON, 22, 1, STAY, DOWN, 8 ; person
+ object SPRITE_BALL, 0, 12, STAY, NONE, 9, RARE_CANDY
+ object SPRITE_GENTLEMAN, 12, 12, STAY, DOWN, 10 ; person
+ object SPRITE_YOUNG_BOY, 11, 14, STAY, NONE, 11 ; person
+ object SPRITE_BRUNETTE_GIRL, 22, 12, STAY, LEFT, 12 ; person
+ object SPRITE_FOULARD_WOMAN, 20, 12, STAY, RIGHT, 13 ; person
+
+ ; warp-to
+ warp_to 2, 5, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 3, 5, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 12, 5, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 13, 5, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 22, 5, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 23, 5, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 2, 15, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 3, 15, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 12, 15, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 13, 15, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 22, 15, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
+ warp_to 23, 15, SS_ANNE_2F_ROOMS_WIDTH ; SS_ANNE_2F
diff --git a/data/mapObjects/SSAnne3F.asm b/data/mapObjects/SSAnne3F.asm
new file mode 100755
index 00000000..f0bfc17b
--- /dev/null
+++ b/data/mapObjects/SSAnne3F.asm
@@ -0,0 +1,15 @@
+SSAnne3F_Object:
+ db $c ; border block
+
+ db 2 ; warps
+ warp 0, 3, 0, SS_ANNE_BOW
+ warp 19, 3, 7, SS_ANNE_2F
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_SAILOR, 9, 3, WALK, 2, 1 ; person
+
+ ; warp-to
+ warp_to 0, 3, SS_ANNE_3F_WIDTH ; SS_ANNE_BOW
+ warp_to 19, 3, SS_ANNE_3F_WIDTH ; SS_ANNE_2F
diff --git a/data/mapObjects/SSAnneB1F.asm b/data/mapObjects/SSAnneB1F.asm
new file mode 100755
index 00000000..fe54ea24
--- /dev/null
+++ b/data/mapObjects/SSAnneB1F.asm
@@ -0,0 +1,22 @@
+SSAnneB1F_Object:
+ db $c ; border block
+
+ db 6 ; warps
+ warp 23, 3, 8, SS_ANNE_B1F_ROOMS
+ warp 19, 3, 6, SS_ANNE_B1F_ROOMS
+ warp 15, 3, 4, SS_ANNE_B1F_ROOMS
+ warp 11, 3, 2, SS_ANNE_B1F_ROOMS
+ warp 7, 3, 0, SS_ANNE_B1F_ROOMS
+ warp 27, 5, 9, SS_ANNE_1F
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 23, 3, SS_ANNE_B1F_WIDTH ; SS_ANNE_B1F_ROOMS
+ warp_to 19, 3, SS_ANNE_B1F_WIDTH ; SS_ANNE_B1F_ROOMS
+ warp_to 15, 3, SS_ANNE_B1F_WIDTH ; SS_ANNE_B1F_ROOMS
+ warp_to 11, 3, SS_ANNE_B1F_WIDTH ; SS_ANNE_B1F_ROOMS
+ warp_to 7, 3, SS_ANNE_B1F_WIDTH ; SS_ANNE_B1F_ROOMS
+ warp_to 27, 5, SS_ANNE_B1F_WIDTH ; SS_ANNE_1F
diff --git a/data/mapObjects/SSAnneB1FRooms.asm b/data/mapObjects/SSAnneB1FRooms.asm
new file mode 100755
index 00000000..1d31b89c
--- /dev/null
+++ b/data/mapObjects/SSAnneB1FRooms.asm
@@ -0,0 +1,41 @@
+SSAnneB1FRooms_Object:
+ db $c ; border block
+
+ db 10 ; warps
+ warp 2, 5, 4, SS_ANNE_B1F
+ warp 3, 5, 4, SS_ANNE_B1F
+ warp 12, 5, 3, SS_ANNE_B1F
+ warp 13, 5, 3, SS_ANNE_B1F
+ warp 22, 5, 2, SS_ANNE_B1F
+ warp 23, 5, 2, SS_ANNE_B1F
+ warp 2, 15, 1, SS_ANNE_B1F
+ warp 3, 15, 1, SS_ANNE_B1F
+ warp 12, 15, 0, SS_ANNE_B1F
+ warp 13, 15, 0, SS_ANNE_B1F
+
+ db 0 ; signs
+
+ db 11 ; objects
+ object SPRITE_SAILOR, 0, 13, STAY, DOWN, 1, OPP_SAILOR, 3
+ object SPRITE_SAILOR, 2, 11, STAY, DOWN, 2, OPP_SAILOR, 4
+ object SPRITE_SAILOR, 12, 3, STAY, LEFT, 3, OPP_SAILOR, 5
+ object SPRITE_SAILOR, 22, 2, STAY, DOWN, 4, OPP_SAILOR, 6
+ object SPRITE_SAILOR, 0, 2, STAY, RIGHT, 5, OPP_SAILOR, 7
+ object SPRITE_FISHER2, 0, 4, STAY, RIGHT, 6, OPP_FISHER, 2
+ object SPRITE_BLACK_HAIR_BOY_2, 10, 13, STAY, RIGHT, 7 ; person
+ object SPRITE_SLOWBRO, 11, 12, STAY, NONE, 8 ; person
+ object SPRITE_BALL, 20, 2, STAY, NONE, 9, ETHER
+ object SPRITE_BALL, 10, 2, STAY, NONE, 10, TM_44
+ object SPRITE_BALL, 12, 11, STAY, NONE, 11, MAX_POTION
+
+ ; warp-to
+ warp_to 2, 5, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 3, 5, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 12, 5, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 13, 5, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 22, 5, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 23, 5, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 2, 15, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 3, 15, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 12, 15, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
+ warp_to 13, 15, SS_ANNE_B1F_ROOMS_WIDTH ; SS_ANNE_B1F
diff --git a/data/mapObjects/SSAnneBow.asm b/data/mapObjects/SSAnneBow.asm
new file mode 100755
index 00000000..8873c8f8
--- /dev/null
+++ b/data/mapObjects/SSAnneBow.asm
@@ -0,0 +1,19 @@
+SSAnneBow_Object:
+ db $23 ; border block
+
+ db 2 ; warps
+ warp 13, 6, 0, SS_ANNE_3F
+ warp 13, 7, 0, SS_ANNE_3F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 5, 2, STAY, UP, 1 ; person
+ object SPRITE_SAILOR, 4, 9, STAY, NONE, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 7, 11, STAY, NONE, 3 ; person
+ object SPRITE_SAILOR, 4, 4, STAY, DOWN, 4, OPP_SAILOR, 1
+ object SPRITE_SAILOR, 10, 8, STAY, UP, 5, OPP_SAILOR, 2
+
+ ; warp-to
+ warp_to 13, 6, SS_ANNE_BOW_WIDTH ; SS_ANNE_3F
+ warp_to 13, 7, SS_ANNE_BOW_WIDTH ; SS_ANNE_3F
diff --git a/data/mapObjects/SSAnneCaptainsRoom.asm b/data/mapObjects/SSAnneCaptainsRoom.asm
new file mode 100755
index 00000000..545656cc
--- /dev/null
+++ b/data/mapObjects/SSAnneCaptainsRoom.asm
@@ -0,0 +1,15 @@
+SSAnneCaptainsRoom_Object:
+ db $c ; border block
+
+ db 1 ; warps
+ warp 0, 7, 8, SS_ANNE_2F
+
+ db 2 ; signs
+ sign 4, 1, 2 ; SSAnne7Text2
+ sign 1, 2, 3 ; SSAnne7Text3
+
+ db 1 ; objects
+ object SPRITE_SS_CAPTAIN, 4, 2, STAY, UP, 1 ; person
+
+ ; warp-to
+ warp_to 0, 7, SS_ANNE_CAPTAINS_ROOM_WIDTH ; SS_ANNE_2F
diff --git a/data/mapObjects/SSAnneKitchen.asm b/data/mapObjects/SSAnneKitchen.asm
new file mode 100755
index 00000000..b5771e68
--- /dev/null
+++ b/data/mapObjects/SSAnneKitchen.asm
@@ -0,0 +1,19 @@
+SSAnneKitchen_Object:
+ db $c ; border block
+
+ db 1 ; warps
+ warp 6, 0, 10, SS_ANNE_1F
+
+ db 0 ; signs
+
+ db 7 ; objects
+ object SPRITE_COOK, 1, 8, WALK, 1, 1 ; person
+ object SPRITE_COOK, 5, 8, WALK, 1, 2 ; person
+ object SPRITE_COOK, 9, 7, WALK, 1, 3 ; person
+ object SPRITE_COOK, 13, 6, STAY, NONE, 4 ; person
+ object SPRITE_COOK, 13, 8, STAY, NONE, 5 ; person
+ object SPRITE_COOK, 13, 10, STAY, NONE, 6 ; person
+ object SPRITE_COOK, 11, 13, STAY, UP, 7 ; person
+
+ ; warp-to
+ warp_to 6, 0, SS_ANNE_KITCHEN_WIDTH ; SS_ANNE_1F
diff --git a/data/mapObjects/SafariZoneCenter.asm b/data/mapObjects/SafariZoneCenter.asm
new file mode 100755
index 00000000..e54cec74
--- /dev/null
+++ b/data/mapObjects/SafariZoneCenter.asm
@@ -0,0 +1,31 @@
+SafariZoneCenter_Object:
+ db $0 ; border block
+
+ db 9 ; warps
+ warp 14, 25, 2, SAFARI_ZONE_GATE
+ warp 15, 25, 3, SAFARI_ZONE_GATE
+ warp 0, 10, 4, SAFARI_ZONE_WEST
+ warp 0, 11, 5, SAFARI_ZONE_WEST
+ warp 14, 0, 4, SAFARI_ZONE_NORTH
+ warp 15, 0, 5, SAFARI_ZONE_NORTH
+ warp 29, 10, 2, SAFARI_ZONE_EAST
+ warp 29, 11, 3, SAFARI_ZONE_EAST
+ warp 17, 19, 0, SAFARI_ZONE_CENTER_REST_HOUSE
+
+ db 2 ; signs
+ sign 18, 20, 2 ; SafariZoneCenterText2
+ sign 14, 22, 3 ; SafariZoneCenterText3
+
+ db 1 ; objects
+ object SPRITE_BALL, 14, 10, STAY, NONE, 1, NUGGET
+
+ ; warp-to
+ warp_to 14, 25, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_GATE
+ warp_to 15, 25, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_GATE
+ warp_to 0, 10, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 0, 11, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 14, 0, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 15, 0, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 29, 10, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_EAST
+ warp_to 29, 11, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_EAST
+ warp_to 17, 19, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_CENTER_REST_HOUSE
diff --git a/data/mapObjects/SafariZoneCenterRestHouse.asm b/data/mapObjects/SafariZoneCenterRestHouse.asm
new file mode 100755
index 00000000..9eda9970
--- /dev/null
+++ b/data/mapObjects/SafariZoneCenterRestHouse.asm
@@ -0,0 +1,16 @@
+SafariZoneCenterRestHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 8, SAFARI_ZONE_CENTER
+ warp 3, 7, 8, SAFARI_ZONE_CENTER
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_GIRL, 3, 2, STAY, DOWN, 1 ; person
+ object SPRITE_OAK_AIDE, 1, 4, WALK, 1, 2 ; person
+
+ ; warp-to
+ warp_to 2, 7, SAFARI_ZONE_CENTER_REST_HOUSE_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 3, 7, SAFARI_ZONE_CENTER_REST_HOUSE_WIDTH ; SAFARI_ZONE_CENTER
diff --git a/data/mapObjects/SafariZoneEast.asm b/data/mapObjects/SafariZoneEast.asm
new file mode 100755
index 00000000..df612ea9
--- /dev/null
+++ b/data/mapObjects/SafariZoneEast.asm
@@ -0,0 +1,27 @@
+SafariZoneEast_Object:
+ db $0 ; border block
+
+ db 5 ; warps
+ warp 0, 4, 6, SAFARI_ZONE_NORTH
+ warp 0, 5, 7, SAFARI_ZONE_NORTH
+ warp 0, 22, 6, SAFARI_ZONE_CENTER
+ warp 0, 23, 6, SAFARI_ZONE_CENTER
+ warp 25, 9, 0, SAFARI_ZONE_EAST_REST_HOUSE
+
+ db 3 ; signs
+ sign 26, 10, 5 ; SafariZoneEastText5
+ sign 6, 4, 6 ; SafariZoneEastText6
+ sign 5, 23, 7 ; SafariZoneEastText7
+
+ db 4 ; objects
+ object SPRITE_BALL, 21, 10, STAY, NONE, 1, FULL_RESTORE
+ object SPRITE_BALL, 3, 7, STAY, NONE, 2, MAX_POTION
+ object SPRITE_BALL, 20, 13, STAY, NONE, 3, CARBOS
+ object SPRITE_BALL, 15, 12, STAY, NONE, 4, TM_37
+
+ ; warp-to
+ warp_to 0, 4, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 0, 5, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 0, 22, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 0, 23, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 25, 9, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_EAST_REST_HOUSE
diff --git a/data/mapObjects/SafariZoneEastRestHouse.asm b/data/mapObjects/SafariZoneEastRestHouse.asm
new file mode 100755
index 00000000..e7c68343
--- /dev/null
+++ b/data/mapObjects/SafariZoneEastRestHouse.asm
@@ -0,0 +1,17 @@
+SafariZoneEastRestHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 4, SAFARI_ZONE_EAST
+ warp 3, 7, 4, SAFARI_ZONE_EAST
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_OAK_AIDE, 1, 3, WALK, 1, 1 ; person
+ object SPRITE_ROCKER, 4, 2, STAY, NONE, 2 ; person
+ object SPRITE_LAPRAS_GIVER, 5, 2, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, SAFARI_ZONE_EAST_REST_HOUSE_WIDTH ; SAFARI_ZONE_EAST
+ warp_to 3, 7, SAFARI_ZONE_EAST_REST_HOUSE_WIDTH ; SAFARI_ZONE_EAST
diff --git a/data/mapObjects/SafariZoneGate.asm b/data/mapObjects/SafariZoneGate.asm
new file mode 100755
index 00000000..6749b45b
--- /dev/null
+++ b/data/mapObjects/SafariZoneGate.asm
@@ -0,0 +1,20 @@
+SafariZoneGate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 3, 5, 4, -1
+ warp 4, 5, 4, -1
+ warp 3, 0, 0, SAFARI_ZONE_CENTER
+ warp 4, 0, 1, SAFARI_ZONE_CENTER
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_WHITE_PLAYER, 6, 2, STAY, LEFT, 1 ; person
+ object SPRITE_WHITE_PLAYER, 1, 4, STAY, RIGHT, 2 ; person
+
+ ; warp-to
+ warp_to 3, 5, SAFARI_ZONE_GATE_WIDTH
+ warp_to 4, 5, SAFARI_ZONE_GATE_WIDTH
+ warp_to 3, 0, SAFARI_ZONE_GATE_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 4, 0, SAFARI_ZONE_GATE_WIDTH ; SAFARI_ZONE_CENTER
diff --git a/data/mapObjects/SafariZoneNorth.asm b/data/mapObjects/SafariZoneNorth.asm
new file mode 100755
index 00000000..9eda7b4b
--- /dev/null
+++ b/data/mapObjects/SafariZoneNorth.asm
@@ -0,0 +1,35 @@
+SafariZoneNorth_Object:
+ db $0 ; border block
+
+ db 9 ; warps
+ warp 2, 35, 0, SAFARI_ZONE_WEST
+ warp 3, 35, 1, SAFARI_ZONE_WEST
+ warp 8, 35, 2, SAFARI_ZONE_WEST
+ warp 9, 35, 3, SAFARI_ZONE_WEST
+ warp 20, 35, 4, SAFARI_ZONE_CENTER
+ warp 21, 35, 5, SAFARI_ZONE_CENTER
+ warp 39, 30, 0, SAFARI_ZONE_EAST
+ warp 39, 31, 1, SAFARI_ZONE_EAST
+ warp 35, 3, 0, SAFARI_ZONE_NORTH_REST_HOUSE
+
+ db 5 ; signs
+ sign 36, 4, 3 ; SafariZoneNorthText3
+ sign 4, 25, 4 ; SafariZoneNorthText4
+ sign 13, 31, 5 ; SafariZoneNorthText5
+ sign 19, 33, 6 ; SafariZoneNorthText6
+ sign 26, 28, 7 ; SafariZoneNorthText7
+
+ db 2 ; objects
+ object SPRITE_BALL, 25, 1, STAY, NONE, 1, PROTEIN
+ object SPRITE_BALL, 19, 7, STAY, NONE, 2, TM_40
+
+ ; warp-to
+ warp_to 2, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 3, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 8, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 9, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 20, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 21, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 39, 30, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_EAST
+ warp_to 39, 31, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_EAST
+ warp_to 35, 3, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_NORTH_REST_HOUSE
diff --git a/data/mapObjects/SafariZoneNorthRestHouse.asm b/data/mapObjects/SafariZoneNorthRestHouse.asm
new file mode 100755
index 00000000..34b3ab4f
--- /dev/null
+++ b/data/mapObjects/SafariZoneNorthRestHouse.asm
@@ -0,0 +1,17 @@
+SafariZoneNorthRestHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 8, SAFARI_ZONE_NORTH
+ warp 3, 7, 8, SAFARI_ZONE_NORTH
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_OAK_AIDE, 6, 3, WALK, 2, 1 ; person
+ object SPRITE_WHITE_PLAYER, 3, 4, STAY, NONE, 2 ; person
+ object SPRITE_GENTLEMAN, 1, 5, WALK, 1, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, SAFARI_ZONE_NORTH_REST_HOUSE_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 3, 7, SAFARI_ZONE_NORTH_REST_HOUSE_WIDTH ; SAFARI_ZONE_NORTH
diff --git a/data/mapObjects/SafariZoneSecretHouse.asm b/data/mapObjects/SafariZoneSecretHouse.asm
new file mode 100755
index 00000000..2a5fc22d
--- /dev/null
+++ b/data/mapObjects/SafariZoneSecretHouse.asm
@@ -0,0 +1,15 @@
+SafariZoneSecretHouse_Object:
+ db $17 ; border block
+
+ db 2 ; warps
+ warp 2, 7, 6, SAFARI_ZONE_WEST
+ warp 3, 7, 6, SAFARI_ZONE_WEST
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FISHER, 3, 3, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 3, 7, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; SAFARI_ZONE_WEST
diff --git a/data/mapObjects/SafariZoneWest.asm b/data/mapObjects/SafariZoneWest.asm
new file mode 100755
index 00000000..7faced72
--- /dev/null
+++ b/data/mapObjects/SafariZoneWest.asm
@@ -0,0 +1,34 @@
+SafariZoneWest_Object:
+ db $0 ; border block
+
+ db 8 ; warps
+ warp 20, 0, 0, SAFARI_ZONE_NORTH
+ warp 21, 0, 1, SAFARI_ZONE_NORTH
+ warp 26, 0, 2, SAFARI_ZONE_NORTH
+ warp 27, 0, 3, SAFARI_ZONE_NORTH
+ warp 29, 22, 2, SAFARI_ZONE_CENTER
+ warp 29, 23, 3, SAFARI_ZONE_CENTER
+ warp 3, 3, 0, SAFARI_ZONE_SECRET_HOUSE
+ warp 11, 11, 0, SAFARI_ZONE_WEST_REST_HOUSE
+
+ db 4 ; signs
+ sign 12, 12, 5 ; SafariZoneWestText5
+ sign 17, 3, 6 ; SafariZoneWestText6
+ sign 26, 4, 7 ; SafariZoneWestText7
+ sign 24, 22, 8 ; SafariZoneWestText8
+
+ db 4 ; objects
+ object SPRITE_BALL, 8, 20, STAY, NONE, 1, MAX_POTION
+ object SPRITE_BALL, 9, 7, STAY, NONE, 2, TM_32
+ object SPRITE_BALL, 18, 18, STAY, NONE, 3, MAX_REVIVE
+ object SPRITE_BALL, 19, 7, STAY, NONE, 4, GOLD_TEETH
+
+ ; warp-to
+ warp_to 20, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 21, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 26, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 27, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
+ warp_to 29, 22, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 29, 23, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_CENTER
+ warp_to 3, 3, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_SECRET_HOUSE
+ warp_to 11, 11, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_WEST_REST_HOUSE
diff --git a/data/mapObjects/SafariZoneWestRestHouse.asm b/data/mapObjects/SafariZoneWestRestHouse.asm
new file mode 100755
index 00000000..9f1bc0ed
--- /dev/null
+++ b/data/mapObjects/SafariZoneWestRestHouse.asm
@@ -0,0 +1,17 @@
+SafariZoneWestRestHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 7, SAFARI_ZONE_WEST
+ warp 3, 7, 7, SAFARI_ZONE_WEST
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_OAK_AIDE, 4, 4, WALK, 0, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 0, 2, STAY, RIGHT, 2 ; person
+ object SPRITE_ERIKA, 6, 2, STAY, DOWN, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, SAFARI_ZONE_WEST_REST_HOUSE_WIDTH ; SAFARI_ZONE_WEST
+ warp_to 3, 7, SAFARI_ZONE_WEST_REST_HOUSE_WIDTH ; SAFARI_ZONE_WEST
diff --git a/data/mapObjects/SaffronCity.asm b/data/mapObjects/SaffronCity.asm
new file mode 100755
index 00000000..fd8ed6b1
--- /dev/null
+++ b/data/mapObjects/SaffronCity.asm
@@ -0,0 +1,50 @@
+SaffronCity_Object:
+ db $f ; border block
+
+ db 8 ; warps
+ warp 7, 5, 0, COPYCATS_HOUSE_1F
+ warp 26, 3, 0, FIGHTING_DOJO
+ warp 34, 3, 0, SAFFRON_GYM
+ warp 13, 11, 0, SAFFRON_PIDGEY_HOUSE
+ warp 25, 11, 0, SAFFRON_MART
+ warp 18, 21, 0, SILPH_CO_1F
+ warp 9, 29, 0, SAFFRON_POKECENTER
+ warp 29, 29, 0, MR_PSYCHICS_HOUSE
+
+ db 10 ; signs
+ sign 17, 5, 16 ; SaffronCityText16
+ sign 27, 5, 17 ; SaffronCityText17
+ sign 35, 5, 18 ; SaffronCityText18
+ sign 26, 11, 19 ; MartSignText
+ sign 39, 19, 20 ; SaffronCityText20
+ sign 5, 21, 21 ; SaffronCityText21
+ sign 15, 21, 22 ; SaffronCityText22
+ sign 10, 29, 23 ; PokeCenterSignText
+ sign 27, 29, 24 ; SaffronCityText24
+ sign 1, 19, 25 ; SaffronCityText25
+
+ db 14 ; objects
+ object SPRITE_ROCKET, 7, 6, STAY, NONE, 1 ; person
+ object SPRITE_ROCKET, 20, 8, WALK, 2, 2 ; person
+ object SPRITE_ROCKET, 34, 4, STAY, NONE, 3 ; person
+ object SPRITE_ROCKET, 13, 12, STAY, NONE, 4 ; person
+ object SPRITE_ROCKET, 11, 25, WALK, 2, 5 ; person
+ object SPRITE_ROCKET, 32, 13, WALK, 2, 6 ; person
+ object SPRITE_ROCKET, 18, 30, WALK, 2, 7 ; person
+ object SPRITE_OAK_AIDE, 8, 14, WALK, 0, 8 ; person
+ object SPRITE_LAPRAS_GIVER, 23, 23, STAY, NONE, 9 ; person
+ object SPRITE_ERIKA, 17, 30, WALK, 2, 10 ; person
+ object SPRITE_GENTLEMAN, 30, 12, STAY, DOWN, 11 ; person
+ object SPRITE_BIRD, 31, 12, STAY, DOWN, 12 ; person
+ object SPRITE_ROCKER, 18, 8, STAY, UP, 13 ; person
+ object SPRITE_ROCKET, 18, 22, STAY, DOWN, 14 ; person
+
+ ; warp-to
+ warp_to 7, 5, SAFFRON_CITY_WIDTH ; COPYCATS_HOUSE_1F
+ warp_to 26, 3, SAFFRON_CITY_WIDTH ; FIGHTING_DOJO
+ warp_to 34, 3, SAFFRON_CITY_WIDTH ; SAFFRON_GYM
+ warp_to 13, 11, SAFFRON_CITY_WIDTH ; SAFFRON_PIDGEY_HOUSE
+ warp_to 25, 11, SAFFRON_CITY_WIDTH ; SAFFRON_MART
+ warp_to 18, 21, SAFFRON_CITY_WIDTH ; SILPH_CO_1F
+ warp_to 9, 29, SAFFRON_CITY_WIDTH ; SAFFRON_POKECENTER
+ warp_to 29, 29, SAFFRON_CITY_WIDTH ; MR_PSYCHICS_HOUSE
diff --git a/data/mapObjects/SaffronGym.asm b/data/mapObjects/SaffronGym.asm
new file mode 100755
index 00000000..4cb80bcd
--- /dev/null
+++ b/data/mapObjects/SaffronGym.asm
@@ -0,0 +1,83 @@
+SaffronGym_Object:
+ db $2e ; border block
+
+ db 32 ; warps
+ warp 8, 17, 2, -1
+ warp 9, 17, 2, -1
+ warp 1, 3, 22, SAFFRON_GYM
+ warp 5, 3, 15, SAFFRON_GYM
+ warp 1, 5, 18, SAFFRON_GYM
+ warp 5, 5, 8, SAFFRON_GYM
+ warp 1, 9, 27, SAFFRON_GYM
+ warp 5, 9, 16, SAFFRON_GYM
+ warp 1, 11, 5, SAFFRON_GYM
+ warp 5, 11, 13, SAFFRON_GYM
+ warp 1, 15, 23, SAFFRON_GYM
+ warp 5, 15, 30, SAFFRON_GYM
+ warp 1, 17, 17, SAFFRON_GYM
+ warp 5, 17, 9, SAFFRON_GYM
+ warp 9, 3, 26, SAFFRON_GYM
+ warp 11, 3, 3, SAFFRON_GYM
+ warp 9, 5, 7, SAFFRON_GYM
+ warp 11, 5, 12, SAFFRON_GYM
+ warp 11, 11, 4, SAFFRON_GYM
+ warp 11, 15, 31, SAFFRON_GYM
+ warp 15, 3, 24, SAFFRON_GYM
+ warp 19, 3, 28, SAFFRON_GYM
+ warp 15, 5, 2, SAFFRON_GYM
+ warp 19, 5, 10, SAFFRON_GYM
+ warp 15, 9, 20, SAFFRON_GYM
+ warp 19, 9, 29, SAFFRON_GYM
+ warp 15, 11, 14, SAFFRON_GYM
+ warp 19, 11, 6, SAFFRON_GYM
+ warp 15, 15, 21, SAFFRON_GYM
+ warp 19, 15, 25, SAFFRON_GYM
+ warp 15, 17, 11, SAFFRON_GYM
+ warp 19, 17, 19, SAFFRON_GYM
+
+ db 0 ; signs
+
+ db 9 ; objects
+ object SPRITE_LASS, 9, 8, STAY, DOWN, 1, OPP_SABRINA, 1
+ object SPRITE_MEDIUM, 10, 1, STAY, DOWN, 2, OPP_CHANNELER, 22
+ object SPRITE_BUG_CATCHER, 17, 1, STAY, DOWN, 3, OPP_PSYCHIC_TR, 1
+ object SPRITE_MEDIUM, 3, 7, STAY, DOWN, 4, OPP_CHANNELER, 23
+ object SPRITE_BUG_CATCHER, 17, 7, STAY, DOWN, 5, OPP_PSYCHIC_TR, 2
+ object SPRITE_MEDIUM, 3, 13, STAY, DOWN, 6, OPP_CHANNELER, 24
+ object SPRITE_BUG_CATCHER, 17, 13, STAY, DOWN, 7, OPP_PSYCHIC_TR, 3
+ object SPRITE_BUG_CATCHER, 3, 1, STAY, DOWN, 8, OPP_PSYCHIC_TR, 4
+ object SPRITE_GYM_HELPER, 10, 15, STAY, DOWN, 9 ; person
+
+ ; warp-to
+ warp_to 8, 17, SAFFRON_GYM_WIDTH
+ warp_to 9, 17, SAFFRON_GYM_WIDTH
+ warp_to 1, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 5, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 1, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 5, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 1, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 5, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 1, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 5, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 1, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 5, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 1, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 5, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 9, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 11, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 9, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 11, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 11, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 11, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 15, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 19, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 15, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 19, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 15, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 19, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 15, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 19, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 15, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 19, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 15, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
+ warp_to 19, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
diff --git a/data/mapObjects/SaffronMart.asm b/data/mapObjects/SaffronMart.asm
new file mode 100755
index 00000000..c376f2de
--- /dev/null
+++ b/data/mapObjects/SaffronMart.asm
@@ -0,0 +1,17 @@
+SaffronMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 4, -1
+ warp 4, 7, 4, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_2, 4, 2, STAY, NONE, 2 ; person
+ object SPRITE_LASS, 6, 5, WALK, 0, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, SAFFRON_MART_WIDTH
+ warp_to 4, 7, SAFFRON_MART_WIDTH
diff --git a/data/mapObjects/SaffronPidgeyHouse.asm b/data/mapObjects/SaffronPidgeyHouse.asm
new file mode 100755
index 00000000..65a851bf
--- /dev/null
+++ b/data/mapObjects/SaffronPidgeyHouse.asm
@@ -0,0 +1,18 @@
+SaffronPidgeyHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 3, -1
+ warp 3, 7, 3, -1
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_BRUNETTE_GIRL, 2, 3, STAY, RIGHT, 1 ; person
+ object SPRITE_BIRD, 0, 4, WALK, 1, 2 ; person
+ object SPRITE_BUG_CATCHER, 4, 1, STAY, DOWN, 3 ; person
+ object SPRITE_PAPER_SHEET, 3, 3, STAY, NONE, 4 ; person
+
+ ; warp-to
+ warp_to 2, 7, SAFFRON_PIDGEY_HOUSE_WIDTH
+ warp_to 3, 7, SAFFRON_PIDGEY_HOUSE_WIDTH
diff --git a/data/mapObjects/SaffronPokecenter.asm b/data/mapObjects/SaffronPokecenter.asm
new file mode 100755
index 00000000..db28f048
--- /dev/null
+++ b/data/mapObjects/SaffronPokecenter.asm
@@ -0,0 +1,19 @@
+SaffronPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 6, -1
+ warp 4, 7, 6, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_FOULARD_WOMAN, 5, 5, STAY, NONE, 2 ; person
+ object SPRITE_GENTLEMAN, 8, 3, STAY, DOWN, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, SAFFRON_POKECENTER_WIDTH
+ warp_to 4, 7, SAFFRON_POKECENTER_WIDTH
diff --git a/data/mapObjects/SeafoamIslands1F.asm b/data/mapObjects/SeafoamIslands1F.asm
new file mode 100755
index 00000000..67b3f0e5
--- /dev/null
+++ b/data/mapObjects/SeafoamIslands1F.asm
@@ -0,0 +1,26 @@
+SeafoamIslands1F_Object:
+ db $7d ; border block
+
+ db 7 ; warps
+ warp 4, 17, 0, -1
+ warp 5, 17, 0, -1
+ warp 26, 17, 1, -1
+ warp 27, 17, 1, -1
+ warp 7, 5, 1, SEAFOAM_ISLANDS_B1F
+ warp 25, 3, 6, SEAFOAM_ISLANDS_B1F
+ warp 23, 15, 4, SEAFOAM_ISLANDS_B1F
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BOULDER, 18, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
+ object SPRITE_BOULDER, 26, 7, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
+
+ ; warp-to
+ warp_to 4, 17, SEAFOAM_ISLANDS_1F_WIDTH
+ warp_to 5, 17, SEAFOAM_ISLANDS_1F_WIDTH
+ warp_to 26, 17, SEAFOAM_ISLANDS_1F_WIDTH
+ warp_to 27, 17, SEAFOAM_ISLANDS_1F_WIDTH
+ warp_to 7, 5, SEAFOAM_ISLANDS_1F_WIDTH ; SEAFOAM_ISLANDS_B1F
+ warp_to 25, 3, SEAFOAM_ISLANDS_1F_WIDTH ; SEAFOAM_ISLANDS_B1F
+ warp_to 23, 15, SEAFOAM_ISLANDS_1F_WIDTH ; SEAFOAM_ISLANDS_B1F
diff --git a/data/mapObjects/SeafoamIslandsB1F.asm b/data/mapObjects/SeafoamIslandsB1F.asm
new file mode 100755
index 00000000..426ca0c3
--- /dev/null
+++ b/data/mapObjects/SeafoamIslandsB1F.asm
@@ -0,0 +1,26 @@
+SeafoamIslandsB1F_Object:
+ db $7d ; border block
+
+ db 7 ; warps
+ warp 4, 2, 0, SEAFOAM_ISLANDS_B2F
+ warp 7, 5, 4, SEAFOAM_ISLANDS_1F
+ warp 13, 7, 2, SEAFOAM_ISLANDS_B2F
+ warp 19, 15, 3, SEAFOAM_ISLANDS_B2F
+ warp 23, 15, 6, SEAFOAM_ISLANDS_1F
+ warp 25, 11, 5, SEAFOAM_ISLANDS_B2F
+ warp 25, 3, 5, SEAFOAM_ISLANDS_1F
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BOULDER, 17, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
+ object SPRITE_BOULDER, 22, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
+
+ ; warp-to
+ warp_to 4, 2, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 7, 5, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_1F
+ warp_to 13, 7, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 19, 15, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 23, 15, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_1F
+ warp_to 25, 11, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 25, 3, SEAFOAM_ISLANDS_B1F_WIDTH ; SEAFOAM_ISLANDS_1F
diff --git a/data/mapObjects/SeafoamIslandsB2F.asm b/data/mapObjects/SeafoamIslandsB2F.asm
new file mode 100755
index 00000000..9c1a7898
--- /dev/null
+++ b/data/mapObjects/SeafoamIslandsB2F.asm
@@ -0,0 +1,26 @@
+SeafoamIslandsB2F_Object:
+ db $7d ; border block
+
+ db 7 ; warps
+ warp 5, 3, 0, SEAFOAM_ISLANDS_B1F
+ warp 5, 13, 0, SEAFOAM_ISLANDS_B3F
+ warp 13, 7, 2, SEAFOAM_ISLANDS_B1F
+ warp 19, 15, 3, SEAFOAM_ISLANDS_B1F
+ warp 25, 3, 3, SEAFOAM_ISLANDS_B3F
+ warp 25, 11, 5, SEAFOAM_ISLANDS_B1F
+ warp 25, 14, 4, SEAFOAM_ISLANDS_B3F
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BOULDER, 18, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
+ object SPRITE_BOULDER, 23, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
+
+ ; warp-to
+ warp_to 5, 3, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B1F
+ warp_to 5, 13, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B3F
+ warp_to 13, 7, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B1F
+ warp_to 19, 15, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B1F
+ warp_to 25, 3, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B3F
+ warp_to 25, 11, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B1F
+ warp_to 25, 14, SEAFOAM_ISLANDS_B2F_WIDTH ; SEAFOAM_ISLANDS_B3F
diff --git a/data/mapObjects/SeafoamIslandsB3F.asm b/data/mapObjects/SeafoamIslandsB3F.asm
new file mode 100755
index 00000000..d194e1cd
--- /dev/null
+++ b/data/mapObjects/SeafoamIslandsB3F.asm
@@ -0,0 +1,30 @@
+SeafoamIslandsB3F_Object:
+ db $7d ; border block
+
+ db 7 ; warps
+ warp 5, 12, 1, SEAFOAM_ISLANDS_B2F
+ warp 8, 6, 2, SEAFOAM_ISLANDS_B4F
+ warp 25, 4, 3, SEAFOAM_ISLANDS_B4F
+ warp 25, 3, 4, SEAFOAM_ISLANDS_B2F
+ warp 25, 14, 6, SEAFOAM_ISLANDS_B2F
+ warp 20, 17, 0, SEAFOAM_ISLANDS_B4F
+ warp 21, 17, 1, SEAFOAM_ISLANDS_B4F
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_BOULDER, 5, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
+ object SPRITE_BOULDER, 3, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
+ object SPRITE_BOULDER, 8, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 3 ; person
+ object SPRITE_BOULDER, 9, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 4 ; person
+ object SPRITE_BOULDER, 18, 6, STAY, NONE, 5 ; person
+ object SPRITE_BOULDER, 19, 6, STAY, NONE, 6 ; person
+
+ ; warp-to
+ warp_to 5, 12, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 8, 6, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B4F
+ warp_to 25, 4, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B4F
+ warp_to 25, 3, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 25, 14, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B2F
+ warp_to 20, 17, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B4F
+ warp_to 21, 17, SEAFOAM_ISLANDS_B3F_WIDTH ; SEAFOAM_ISLANDS_B4F
diff --git a/data/mapObjects/SeafoamIslandsB4F.asm b/data/mapObjects/SeafoamIslandsB4F.asm
new file mode 100755
index 00000000..62d88b0c
--- /dev/null
+++ b/data/mapObjects/SeafoamIslandsB4F.asm
@@ -0,0 +1,23 @@
+SeafoamIslandsB4F_Object:
+ db $7d ; border block
+
+ db 4 ; warps
+ warp 20, 17, 5, SEAFOAM_ISLANDS_B3F
+ warp 21, 17, 6, SEAFOAM_ISLANDS_B3F
+ warp 11, 7, 1, SEAFOAM_ISLANDS_B3F
+ warp 25, 4, 2, SEAFOAM_ISLANDS_B3F
+
+ db 2 ; signs
+ sign 9, 15, 4 ; SeafoamIslands5Text4
+ sign 23, 1, 5 ; SeafoamIslands5Text5
+
+ db 3 ; objects
+ object SPRITE_BOULDER, 4, 15, STAY, NONE, 1 ; person
+ object SPRITE_BOULDER, 5, 15, STAY, NONE, 2 ; person
+ object SPRITE_BIRD, 6, 1, STAY, DOWN, 3, ARTICUNO, 50
+
+ ; warp-to
+ warp_to 20, 17, SEAFOAM_ISLANDS_B4F_WIDTH ; SEAFOAM_ISLANDS_B3F
+ warp_to 21, 17, SEAFOAM_ISLANDS_B4F_WIDTH ; SEAFOAM_ISLANDS_B3F
+ warp_to 11, 7, SEAFOAM_ISLANDS_B4F_WIDTH ; SEAFOAM_ISLANDS_B3F
+ warp_to 25, 4, SEAFOAM_ISLANDS_B4F_WIDTH ; SEAFOAM_ISLANDS_B3F
diff --git a/data/mapObjects/SilphCo10F.asm b/data/mapObjects/SilphCo10F.asm
new file mode 100755
index 00000000..1c8948d3
--- /dev/null
+++ b/data/mapObjects/SilphCo10F.asm
@@ -0,0 +1,28 @@
+SilphCo10F_Object:
+ db $2e ; border block
+
+ db 6 ; warps
+ warp 8, 0, 0, SILPH_CO_9F
+ warp 10, 0, 0, SILPH_CO_11F
+ warp 12, 0, 0, SILPH_CO_ELEVATOR
+ warp 9, 11, 3, SILPH_CO_4F
+ warp 13, 15, 5, SILPH_CO_4F
+ warp 13, 7, 6, SILPH_CO_4F
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_ROCKET, 1, 9, STAY, RIGHT, 1, OPP_ROCKET, 39
+ object SPRITE_OAK_AIDE, 10, 2, STAY, LEFT, 2, OPP_SCIENTIST, 11
+ object SPRITE_ERIKA, 9, 15, WALK, 0, 3 ; person
+ object SPRITE_BALL, 2, 12, STAY, NONE, 4, TM_26
+ object SPRITE_BALL, 4, 14, STAY, NONE, 5, RARE_CANDY
+ object SPRITE_BALL, 5, 11, STAY, NONE, 6, CARBOS
+
+ ; warp-to
+ warp_to 8, 0, SILPH_CO_10F_WIDTH ; SILPH_CO_9F
+ warp_to 10, 0, SILPH_CO_10F_WIDTH ; SILPH_CO_11F
+ warp_to 12, 0, SILPH_CO_10F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 9, 11, SILPH_CO_10F_WIDTH ; SILPH_CO_4F
+ warp_to 13, 15, SILPH_CO_10F_WIDTH ; SILPH_CO_4F
+ warp_to 13, 7, SILPH_CO_10F_WIDTH ; SILPH_CO_4F
diff --git a/data/mapObjects/SilphCo11F.asm b/data/mapObjects/SilphCo11F.asm
new file mode 100755
index 00000000..ec6331b2
--- /dev/null
+++ b/data/mapObjects/SilphCo11F.asm
@@ -0,0 +1,24 @@
+SilphCo11F_Object:
+ db $d ; border block
+
+ db 4 ; warps
+ warp 9, 0, 1, SILPH_CO_10F
+ warp 13, 0, 0, SILPH_CO_ELEVATOR
+ warp 5, 5, 9, -1
+ warp 3, 2, 3, SILPH_CO_7F
+
+ db 0 ; signs
+
+ db 6 ; objects
+ object SPRITE_MR_MASTERBALL, 7, 5, STAY, DOWN, 1 ; person
+ object SPRITE_FOULARD_WOMAN, 10, 5, STAY, DOWN, 2 ; person
+ object SPRITE_GIOVANNI, 6, 9, STAY, DOWN, 3, OPP_GIOVANNI, 2
+ object SPRITE_JAMES, 2, 8, STAY, UP, 4
+ object SPRITE_ROCKET, 15, 9, STAY, UP, 5, OPP_ROCKET, 40
+ object SPRITE_JESSIE, 3, 8, STAY, UP, 6
+
+ ; warp-to
+ warp_to 9, 0, SILPH_CO_11F_WIDTH ; SILPH_CO_10F
+ warp_to 13, 0, SILPH_CO_11F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 5, 5, SILPH_CO_11F_WIDTH
+ warp_to 3, 2, SILPH_CO_11F_WIDTH ; SILPH_CO_7F
diff --git a/data/mapObjects/SilphCo1F.asm b/data/mapObjects/SilphCo1F.asm
new file mode 100755
index 00000000..fc040091
--- /dev/null
+++ b/data/mapObjects/SilphCo1F.asm
@@ -0,0 +1,21 @@
+SilphCo1F_Object:
+ db $2e ; border block
+
+ db 5 ; warps
+ warp 10, 17, 5, -1
+ warp 11, 17, 5, -1
+ warp 26, 0, 0, SILPH_CO_2F
+ warp 20, 0, 0, SILPH_CO_ELEVATOR
+ warp 16, 10, 6, SILPH_CO_3F
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_CABLE_CLUB_WOMAN, 4, 2, STAY, DOWN, 1 ; person
+
+ ; warp-to
+ warp_to 10, 17, SILPH_CO_1F_WIDTH
+ warp_to 11, 17, SILPH_CO_1F_WIDTH
+ warp_to 26, 0, SILPH_CO_1F_WIDTH ; SILPH_CO_2F
+ warp_to 20, 0, SILPH_CO_1F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 16, 10, SILPH_CO_1F_WIDTH ; SILPH_CO_3F
diff --git a/data/mapObjects/SilphCo2F.asm b/data/mapObjects/SilphCo2F.asm
new file mode 100755
index 00000000..bc30d78d
--- /dev/null
+++ b/data/mapObjects/SilphCo2F.asm
@@ -0,0 +1,29 @@
+SilphCo2F_Object:
+ db $2e ; border block
+
+ db 7 ; warps
+ warp 24, 0, 2, SILPH_CO_1F
+ warp 26, 0, 0, SILPH_CO_3F
+ warp 20, 0, 0, SILPH_CO_ELEVATOR
+ warp 3, 3, 6, SILPH_CO_3F
+ warp 13, 3, 4, SILPH_CO_8F
+ warp 27, 15, 5, SILPH_CO_8F
+ warp 9, 15, 4, SILPH_CO_6F
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_ERIKA, 10, 1, STAY, UP, 1 ; person
+ object SPRITE_OAK_AIDE, 5, 12, STAY, DOWN, 2, OPP_SCIENTIST, 2
+ object SPRITE_OAK_AIDE, 24, 13, STAY, LEFT, 3, OPP_SCIENTIST, 3
+ object SPRITE_ROCKET, 16, 11, STAY, UP, 4, OPP_ROCKET, 23
+ object SPRITE_ROCKET, 24, 7, STAY, UP, 5, OPP_ROCKET, 24
+
+ ; warp-to
+ warp_to 24, 0, SILPH_CO_2F_WIDTH ; SILPH_CO_1F
+ warp_to 26, 0, SILPH_CO_2F_WIDTH ; SILPH_CO_3F
+ warp_to 20, 0, SILPH_CO_2F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 3, 3, SILPH_CO_2F_WIDTH ; SILPH_CO_3F
+ warp_to 13, 3, SILPH_CO_2F_WIDTH ; SILPH_CO_8F
+ warp_to 27, 15, SILPH_CO_2F_WIDTH ; SILPH_CO_8F
+ warp_to 9, 15, SILPH_CO_2F_WIDTH ; SILPH_CO_6F
diff --git a/data/mapObjects/SilphCo3F.asm b/data/mapObjects/SilphCo3F.asm
new file mode 100755
index 00000000..f45cdf81
--- /dev/null
+++ b/data/mapObjects/SilphCo3F.asm
@@ -0,0 +1,34 @@
+SilphCo3F_Object:
+ db $2e ; border block
+
+ db 10 ; warps
+ warp 26, 0, 1, SILPH_CO_2F
+ warp 24, 0, 0, SILPH_CO_4F
+ warp 20, 0, 0, SILPH_CO_ELEVATOR
+ warp 23, 11, 9, SILPH_CO_3F
+ warp 3, 3, 5, SILPH_CO_5F
+ warp 3, 15, 6, SILPH_CO_5F
+ warp 27, 3, 3, SILPH_CO_2F
+ warp 3, 11, 3, SILPH_CO_9F
+ warp 11, 11, 4, SILPH_CO_7F
+ warp 27, 15, 3, SILPH_CO_3F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_LAPRAS_GIVER, 24, 8, STAY, NONE, 1 ; person
+ object SPRITE_ROCKET, 20, 7, STAY, LEFT, 2, OPP_ROCKET, 25
+ object SPRITE_OAK_AIDE, 7, 9, STAY, DOWN, 3, OPP_SCIENTIST, 4
+ object SPRITE_BALL, 8, 5, STAY, NONE, 4, HYPER_POTION
+
+ ; warp-to
+ warp_to 26, 0, SILPH_CO_3F_WIDTH ; SILPH_CO_2F
+ warp_to 24, 0, SILPH_CO_3F_WIDTH ; SILPH_CO_4F
+ warp_to 20, 0, SILPH_CO_3F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 23, 11, SILPH_CO_3F_WIDTH ; SILPH_CO_3F
+ warp_to 3, 3, SILPH_CO_3F_WIDTH ; SILPH_CO_5F
+ warp_to 3, 15, SILPH_CO_3F_WIDTH ; SILPH_CO_5F
+ warp_to 27, 3, SILPH_CO_3F_WIDTH ; SILPH_CO_2F
+ warp_to 3, 11, SILPH_CO_3F_WIDTH ; SILPH_CO_9F
+ warp_to 11, 11, SILPH_CO_3F_WIDTH ; SILPH_CO_7F
+ warp_to 27, 15, SILPH_CO_3F_WIDTH ; SILPH_CO_3F
diff --git a/data/mapObjects/SilphCo4F.asm b/data/mapObjects/SilphCo4F.asm
new file mode 100755
index 00000000..3d865bbc
--- /dev/null
+++ b/data/mapObjects/SilphCo4F.asm
@@ -0,0 +1,31 @@
+SilphCo4F_Object:
+ db $2e ; border block
+
+ db 7 ; warps
+ warp 24, 0, 1, SILPH_CO_3F
+ warp 26, 0, 1, SILPH_CO_5F
+ warp 20, 0, 0, SILPH_CO_ELEVATOR
+ warp 11, 7, 3, SILPH_CO_10F
+ warp 17, 3, 3, SILPH_CO_6F
+ warp 3, 15, 4, SILPH_CO_10F
+ warp 17, 11, 5, SILPH_CO_10F
+
+ db 0 ; signs
+
+ db 7 ; objects
+ object SPRITE_LAPRAS_GIVER, 6, 2, STAY, NONE, 1 ; person
+ object SPRITE_ROCKET, 9, 14, STAY, RIGHT, 2, OPP_ROCKET, 26
+ object SPRITE_OAK_AIDE, 14, 6, STAY, LEFT, 3, OPP_SCIENTIST, 5
+ object SPRITE_ROCKET, 26, 10, STAY, UP, 4, OPP_ROCKET, 27
+ object SPRITE_BALL, 3, 9, STAY, NONE, 5, FULL_HEAL
+ object SPRITE_BALL, 4, 7, STAY, NONE, 6, MAX_REVIVE
+ object SPRITE_BALL, 5, 8, STAY, NONE, 7, ESCAPE_ROPE
+
+ ; warp-to
+ warp_to 24, 0, SILPH_CO_4F_WIDTH ; SILPH_CO_3F
+ warp_to 26, 0, SILPH_CO_4F_WIDTH ; SILPH_CO_5F
+ warp_to 20, 0, SILPH_CO_4F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 11, 7, SILPH_CO_4F_WIDTH ; SILPH_CO_10F
+ warp_to 17, 3, SILPH_CO_4F_WIDTH ; SILPH_CO_6F
+ warp_to 3, 15, SILPH_CO_4F_WIDTH ; SILPH_CO_10F
+ warp_to 17, 11, SILPH_CO_4F_WIDTH ; SILPH_CO_10F
diff --git a/data/mapObjects/SilphCo5F.asm b/data/mapObjects/SilphCo5F.asm
new file mode 100755
index 00000000..c10f17c8
--- /dev/null
+++ b/data/mapObjects/SilphCo5F.asm
@@ -0,0 +1,35 @@
+SilphCo5F_Object:
+ db $2e ; border block
+
+ db 7 ; warps
+ warp 24, 0, 1, SILPH_CO_6F
+ warp 26, 0, 1, SILPH_CO_4F
+ warp 20, 0, 0, SILPH_CO_ELEVATOR
+ warp 27, 3, 5, SILPH_CO_7F
+ warp 9, 15, 4, SILPH_CO_9F
+ warp 11, 5, 4, SILPH_CO_3F
+ warp 3, 15, 5, SILPH_CO_3F
+
+ db 0 ; signs
+
+ db 11 ; objects
+ object SPRITE_LAPRAS_GIVER, 13, 9, STAY, NONE, 1 ; person
+ object SPRITE_ROCKET, 8, 16, STAY, RIGHT, 2, OPP_ROCKET, 28
+ object SPRITE_OAK_AIDE, 8, 3, STAY, RIGHT, 3, OPP_SCIENTIST, 6
+ object SPRITE_ROCKER, 18, 10, STAY, UP, 4, OPP_JUGGLER, 1
+ object SPRITE_ROCKET, 28, 4, STAY, UP, 5, OPP_ROCKET, 29
+ object SPRITE_BALL, 2, 13, STAY, NONE, 6, TM_09
+ object SPRITE_BALL, 4, 6, STAY, NONE, 7, PROTEIN
+ object SPRITE_BALL, 21, 16, STAY, NONE, 8, CARD_KEY
+ object SPRITE_CLIPBOARD, 22, 12, STAY, NONE, 9 ; person
+ object SPRITE_CLIPBOARD, 25, 10, STAY, NONE, 10 ; person
+ object SPRITE_CLIPBOARD, 24, 6, STAY, NONE, 11 ; person
+
+ ; warp-to
+ warp_to 24, 0, SILPH_CO_5F_WIDTH ; SILPH_CO_6F
+ warp_to 26, 0, SILPH_CO_5F_WIDTH ; SILPH_CO_4F
+ warp_to 20, 0, SILPH_CO_5F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 27, 3, SILPH_CO_5F_WIDTH ; SILPH_CO_7F
+ warp_to 9, 15, SILPH_CO_5F_WIDTH ; SILPH_CO_9F
+ warp_to 11, 5, SILPH_CO_5F_WIDTH ; SILPH_CO_3F
+ warp_to 3, 15, SILPH_CO_5F_WIDTH ; SILPH_CO_3F
diff --git a/data/mapObjects/SilphCo6F.asm b/data/mapObjects/SilphCo6F.asm
new file mode 100755
index 00000000..ad2ac32f
--- /dev/null
+++ b/data/mapObjects/SilphCo6F.asm
@@ -0,0 +1,30 @@
+SilphCo6F_Object:
+ db $2e ; border block
+
+ db 5 ; warps
+ warp 16, 0, 1, SILPH_CO_7F
+ warp 14, 0, 0, SILPH_CO_5F
+ warp 18, 0, 0, SILPH_CO_ELEVATOR
+ warp 3, 3, 4, SILPH_CO_4F
+ warp 23, 3, 6, SILPH_CO_2F
+
+ db 0 ; signs
+
+ db 10 ; objects
+ object SPRITE_LAPRAS_GIVER, 10, 6, STAY, NONE, 1 ; person
+ object SPRITE_LAPRAS_GIVER, 20, 6, STAY, NONE, 2 ; person
+ object SPRITE_ERIKA, 21, 6, STAY, DOWN, 3 ; person
+ object SPRITE_ERIKA, 11, 10, STAY, RIGHT, 4 ; person
+ object SPRITE_LAPRAS_GIVER, 18, 13, STAY, UP, 5 ; person
+ object SPRITE_ROCKET, 17, 3, STAY, RIGHT, 6, OPP_ROCKET, 30
+ object SPRITE_OAK_AIDE, 7, 8, STAY, DOWN, 7, OPP_SCIENTIST, 7
+ object SPRITE_ROCKET, 14, 15, STAY, LEFT, 8, OPP_ROCKET, 31
+ object SPRITE_BALL, 3, 12, STAY, NONE, 9, HP_UP
+ object SPRITE_BALL, 2, 15, STAY, NONE, 10, X_ACCURACY
+
+ ; warp-to
+ warp_to 16, 0, SILPH_CO_6F_WIDTH ; SILPH_CO_7F
+ warp_to 14, 0, SILPH_CO_6F_WIDTH ; SILPH_CO_5F
+ warp_to 18, 0, SILPH_CO_6F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 3, 3, SILPH_CO_6F_WIDTH ; SILPH_CO_4F
+ warp_to 23, 3, SILPH_CO_6F_WIDTH ; SILPH_CO_2F
diff --git a/data/mapObjects/SilphCo7F.asm b/data/mapObjects/SilphCo7F.asm
new file mode 100755
index 00000000..255f4b33
--- /dev/null
+++ b/data/mapObjects/SilphCo7F.asm
@@ -0,0 +1,33 @@
+SilphCo7F_Object:
+ db $2e ; border block
+
+ db 6 ; warps
+ warp 16, 0, 1, SILPH_CO_8F
+ warp 22, 0, 0, SILPH_CO_6F
+ warp 18, 0, 0, SILPH_CO_ELEVATOR
+ warp 5, 7, 3, SILPH_CO_11F
+ warp 5, 3, 8, SILPH_CO_3F
+ warp 21, 15, 3, SILPH_CO_5F
+
+ db 0 ; signs
+
+ db 11 ; objects
+ object SPRITE_LAPRAS_GIVER, 1, 5, STAY, NONE, 1 ; person
+ object SPRITE_LAPRAS_GIVER, 13, 13, STAY, UP, 2 ; person
+ object SPRITE_LAPRAS_GIVER, 7, 10, STAY, NONE, 3 ; person
+ object SPRITE_ERIKA, 10, 8, STAY, NONE, 4 ; person
+ object SPRITE_ROCKET, 13, 1, STAY, DOWN, 5, OPP_ROCKET, 32
+ object SPRITE_OAK_AIDE, 2, 13, STAY, DOWN, 6, OPP_SCIENTIST, 8
+ object SPRITE_ROCKET, 20, 2, STAY, LEFT, 7, OPP_ROCKET, 33
+ object SPRITE_ROCKET, 19, 14, STAY, RIGHT, 8, OPP_ROCKET, 34
+ object SPRITE_BLUE, 3, 7, STAY, UP, 9 ; person
+ object SPRITE_BALL, 1, 9, STAY, NONE, 10, CALCIUM
+ object SPRITE_BALL, 24, 11, STAY, NONE, 11, TM_03
+
+ ; warp-to
+ warp_to 16, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_8F
+ warp_to 22, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_6F
+ warp_to 18, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 5, 7, SILPH_CO_7F_WIDTH ; SILPH_CO_11F
+ warp_to 5, 3, SILPH_CO_7F_WIDTH ; SILPH_CO_3F
+ warp_to 21, 15, SILPH_CO_7F_WIDTH ; SILPH_CO_5F
diff --git a/data/mapObjects/SilphCo8F.asm b/data/mapObjects/SilphCo8F.asm
new file mode 100755
index 00000000..d05c7844
--- /dev/null
+++ b/data/mapObjects/SilphCo8F.asm
@@ -0,0 +1,28 @@
+SilphCo8F_Object:
+ db $2e ; border block
+
+ db 7 ; warps
+ warp 16, 0, 1, SILPH_CO_9F
+ warp 14, 0, 0, SILPH_CO_7F
+ warp 18, 0, 0, SILPH_CO_ELEVATOR
+ warp 3, 11, 6, SILPH_CO_8F
+ warp 3, 15, 4, SILPH_CO_2F
+ warp 11, 5, 5, SILPH_CO_2F
+ warp 11, 9, 3, SILPH_CO_8F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_LAPRAS_GIVER, 4, 2, STAY, NONE, 1 ; person
+ object SPRITE_ROCKET, 19, 2, STAY, LEFT, 2, OPP_ROCKET, 35
+ object SPRITE_OAK_AIDE, 10, 2, STAY, DOWN, 3, OPP_SCIENTIST, 9
+ object SPRITE_ROCKET, 12, 15, STAY, RIGHT, 4, OPP_ROCKET, 36
+
+ ; warp-to
+ warp_to 16, 0, SILPH_CO_8F_WIDTH ; SILPH_CO_9F
+ warp_to 14, 0, SILPH_CO_8F_WIDTH ; SILPH_CO_7F
+ warp_to 18, 0, SILPH_CO_8F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 3, 11, SILPH_CO_8F_WIDTH ; SILPH_CO_8F
+ warp_to 3, 15, SILPH_CO_8F_WIDTH ; SILPH_CO_2F
+ warp_to 11, 5, SILPH_CO_8F_WIDTH ; SILPH_CO_2F
+ warp_to 11, 9, SILPH_CO_8F_WIDTH ; SILPH_CO_8F_WIDTH
diff --git a/data/mapObjects/SilphCo9F.asm b/data/mapObjects/SilphCo9F.asm
new file mode 100755
index 00000000..28ef5f10
--- /dev/null
+++ b/data/mapObjects/SilphCo9F.asm
@@ -0,0 +1,24 @@
+SilphCo9F_Object:
+ db $2e ; border block
+
+ db 5 ; warps
+ warp 14, 0, 0, SILPH_CO_10F
+ warp 16, 0, 0, SILPH_CO_8F
+ warp 18, 0, 0, SILPH_CO_ELEVATOR
+ warp 9, 3, 7, SILPH_CO_3F
+ warp 17, 15, 4, SILPH_CO_5F
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_NURSE, 3, 14, STAY, DOWN, 1 ; person
+ object SPRITE_ROCKET, 2, 4, STAY, UP, 2, OPP_ROCKET, 37
+ object SPRITE_OAK_AIDE, 21, 13, STAY, DOWN, 3, OPP_SCIENTIST, 10
+ object SPRITE_ROCKET, 13, 16, STAY, UP, 4, OPP_ROCKET, 38
+
+ ; warp-to
+ warp_to 14, 0, SILPH_CO_9F_WIDTH ; SILPH_CO_10F
+ warp_to 16, 0, SILPH_CO_9F_WIDTH ; SILPH_CO_8F
+ warp_to 18, 0, SILPH_CO_9F_WIDTH ; SILPH_CO_ELEVATOR
+ warp_to 9, 3, SILPH_CO_9F_WIDTH ; SILPH_CO_3F
+ warp_to 17, 15, SILPH_CO_9F_WIDTH ; SILPH_CO_5F
diff --git a/data/mapObjects/SilphCoElevator.asm b/data/mapObjects/SilphCoElevator.asm
new file mode 100755
index 00000000..9c4b5a79
--- /dev/null
+++ b/data/mapObjects/SilphCoElevator.asm
@@ -0,0 +1,15 @@
+SilphCoElevator_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 1, 3, 0, 237
+ warp 2, 3, 0, 237
+
+ db 1 ; signs
+ sign 3, 0, 1 ; SilphCoElevatorText1
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 1, 3, SILPH_CO_ELEVATOR_WIDTH
+ warp_to 2, 3, SILPH_CO_ELEVATOR_WIDTH
diff --git a/data/mapObjects/TradeCenter.asm b/data/mapObjects/TradeCenter.asm
new file mode 100644
index 00000000..e6df8087
--- /dev/null
+++ b/data/mapObjects/TradeCenter.asm
@@ -0,0 +1,9 @@
+TradeCenter_Object:
+ db $e ; border block
+
+ db 0 ; warps
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_RED, 2, 2, STAY, 0, 1 ; person
diff --git a/data/mapObjects/UndergroundPathNorthSouth.asm b/data/mapObjects/UndergroundPathNorthSouth.asm
new file mode 100755
index 00000000..35e21cca
--- /dev/null
+++ b/data/mapObjects/UndergroundPathNorthSouth.asm
@@ -0,0 +1,14 @@
+UndergroundPathNorthSouth_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 5, 4, 2, UNDERGROUND_PATH_ROUTE_5
+ warp 2, 41, 2, UNDERGROUND_PATH_ROUTE_6
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 5, 4, UNDERGROUND_PATH_NORTH_SOUTH_WIDTH ; UNDERGROUND_PATH_ROUTE_5
+ warp_to 2, 41, UNDERGROUND_PATH_NORTH_SOUTH_WIDTH ; UNDERGROUND_PATH_ROUTE_6
diff --git a/data/mapObjects/UndergroundPathRoute5.asm b/data/mapObjects/UndergroundPathRoute5.asm
new file mode 100755
index 00000000..af71ebb4
--- /dev/null
+++ b/data/mapObjects/UndergroundPathRoute5.asm
@@ -0,0 +1,17 @@
+UndergroundPathRoute5_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 3, 7, 3, -1
+ warp 4, 7, 3, -1
+ warp 4, 4, 0, UNDERGROUND_PATH_NORTH_SOUTH
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_LITTLE_GIRL, 2, 3, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 3, 7, UNDERGROUND_PATH_ROUTE_5_WIDTH
+ warp_to 4, 7, UNDERGROUND_PATH_ROUTE_5_WIDTH
+ warp_to 4, 4, UNDERGROUND_PATH_ROUTE_5_WIDTH ; UNDERGROUND_PATH_NORTH_SOUTH
diff --git a/data/mapObjects/UndergroundPathRoute6.asm b/data/mapObjects/UndergroundPathRoute6.asm
new file mode 100755
index 00000000..5a40ade2
--- /dev/null
+++ b/data/mapObjects/UndergroundPathRoute6.asm
@@ -0,0 +1,17 @@
+UndergroundPathRoute6_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 3, 7, 3, -1
+ warp 4, 7, 3, -1
+ warp 4, 4, 1, UNDERGROUND_PATH_NORTH_SOUTH
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GIRL, 2, 3, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 3, 7, UNDERGROUND_PATH_ROUTE_6_WIDTH
+ warp_to 4, 7, UNDERGROUND_PATH_ROUTE_6_WIDTH
+ warp_to 4, 4, UNDERGROUND_PATH_ROUTE_6_WIDTH ; UNDERGROUND_PATH_NORTH_SOUTH
diff --git a/data/mapObjects/UndergroundPathRoute7.asm b/data/mapObjects/UndergroundPathRoute7.asm
new file mode 100755
index 00000000..4666e0c9
--- /dev/null
+++ b/data/mapObjects/UndergroundPathRoute7.asm
@@ -0,0 +1,17 @@
+UndergroundPathRoute7_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 3, 7, 4, -1
+ warp 4, 7, 4, -1
+ warp 4, 4, 0, UNDERGROUND_PATH_WEST_EAST
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FAT_BALD_GUY, 2, 4, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 3, 7, UNDERGROUND_PATH_ROUTE_7_WIDTH
+ warp_to 4, 7, UNDERGROUND_PATH_ROUTE_7_WIDTH
+ warp_to 4, 4, UNDERGROUND_PATH_ROUTE_7_WIDTH ; UNDERGROUND_PATH_WEST_EAST
diff --git a/data/mapObjects/UndergroundPathRoute7Copy.asm b/data/mapObjects/UndergroundPathRoute7Copy.asm
new file mode 100755
index 00000000..c020646e
--- /dev/null
+++ b/data/mapObjects/UndergroundPathRoute7Copy.asm
@@ -0,0 +1,18 @@
+UndergroundPathRoute7Copy_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 3, 7, 5, -1
+ warp 4, 7, 5, -1
+ warp 4, 4, 0, UNDERGROUND_PATH_WEST_EAST
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_GIRL, 3, 2, STAY, NONE, 1 ; person
+ object SPRITE_FAT_BALD_GUY, 2, 4, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 3, 7, UNDERGROUND_PATH_ROUTE_7_COPY_WIDTH
+ warp_to 4, 7, UNDERGROUND_PATH_ROUTE_7_COPY_WIDTH
+ warp_to 4, 4, UNDERGROUND_PATH_ROUTE_7_COPY_WIDTH ; UNDERGROUND_PATH_WEST_EAST
diff --git a/data/mapObjects/UndergroundPathRoute8.asm b/data/mapObjects/UndergroundPathRoute8.asm
new file mode 100755
index 00000000..8be0d474
--- /dev/null
+++ b/data/mapObjects/UndergroundPathRoute8.asm
@@ -0,0 +1,17 @@
+UndergroundPathRoute8_Object:
+ db $a ; border block
+
+ db 3 ; warps
+ warp 3, 7, 4, -1
+ warp 4, 7, 4, -1
+ warp 4, 4, 1, UNDERGROUND_PATH_WEST_EAST
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GIRL, 3, 4, STAY, NONE, 1 ; person
+
+ ; warp-to
+ warp_to 3, 7, UNDERGROUND_PATH_ROUTE_8_WIDTH
+ warp_to 4, 7, UNDERGROUND_PATH_ROUTE_8_WIDTH
+ warp_to 4, 4, UNDERGROUND_PATH_ROUTE_8_WIDTH ; UNDERGROUND_PATH_WEST_EAST
diff --git a/data/mapObjects/UndergroundPathWestEast.asm b/data/mapObjects/UndergroundPathWestEast.asm
new file mode 100755
index 00000000..fa064aca
--- /dev/null
+++ b/data/mapObjects/UndergroundPathWestEast.asm
@@ -0,0 +1,14 @@
+UndergroundPathWestEast_Object:
+ db $1 ; border block
+
+ db 2 ; warps
+ warp 2, 5, 2, UNDERGROUND_PATH_ROUTE_7
+ warp 47, 2, 2, UNDERGROUND_PATH_ROUTE_8
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 2, 5, UNDERGROUND_PATH_WEST_EAST_WIDTH ; UNDERGROUND_PATH_ROUTE_7
+ warp_to 47, 2, UNDERGROUND_PATH_WEST_EAST_WIDTH ; UNDERGROUND_PATH_ROUTE_8
diff --git a/data/mapObjects/VermilionCity.asm b/data/mapObjects/VermilionCity.asm
new file mode 100755
index 00000000..646f126a
--- /dev/null
+++ b/data/mapObjects/VermilionCity.asm
@@ -0,0 +1,42 @@
+VermilionCity_Object:
+ db $43 ; border block
+
+ db 9 ; warps
+ warp 11, 3, 0, VERMILION_POKECENTER
+ warp 9, 13, 0, POKEMON_FAN_CLUB
+ warp 23, 13, 0, VERMILION_MART
+ warp 12, 19, 0, VERMILION_GYM
+ warp 23, 19, 0, VERMILION_PIDGEY_HOUSE
+ warp 18, 31, 0, VERMILION_DOCK
+ warp 19, 31, 0, VERMILION_DOCK
+ warp 15, 13, 0, VERMILION_TRADE_HOUSE
+ warp 7, 3, 0, VERMILION_OLD_ROD_HOUSE
+
+ db 7 ; signs
+ sign 27, 3, 8 ; VermilionCityText7
+ sign 37, 13, 9 ; VermilionCityText8
+ sign 24, 13, 10 ; MartSignText
+ sign 12, 3, 11 ; PokeCenterSignText
+ sign 7, 13, 12 ; VermilionCityText11
+ sign 7, 19, 13 ; VermilionCityText12
+ sign 29, 15, 14 ; VermilionCityText13
+
+ db 7 ; objects
+ object SPRITE_LASS, 19, 7, WALK, 2, 1 ; person
+ object SPRITE_GAMBLER, 14, 6, STAY, NONE, 2 ; person
+ object SPRITE_SAILOR, 19, 30, STAY, UP, 3 ; person
+ object SPRITE_GAMBLER, 30, 7, STAY, NONE, 4 ; person
+ object SPRITE_SLOWBRO, 29, 9, WALK, 1, 5 ; person
+ object SPRITE_SAILOR, 25, 27, WALK, 2, 6 ; person
+ object SPRITE_OFFICER_JENNY, 19, 15, STAY, NONE, 7 ; person
+
+ ; warp-to
+ warp_to 11, 3, VERMILION_CITY_WIDTH ; VERMILION_POKECENTER
+ warp_to 9, 13, VERMILION_CITY_WIDTH ; POKEMON_FAN_CLUB
+ warp_to 23, 13, VERMILION_CITY_WIDTH ; VERMILION_MART
+ warp_to 12, 19, VERMILION_CITY_WIDTH ; VERMILION_GYM
+ warp_to 23, 19, VERMILION_CITY_WIDTH ; VERMILION_PIDGEY_HOUSE
+ warp_to 18, 31, VERMILION_CITY_WIDTH ; VERMILION_DOCK
+ warp_to 19, 31, VERMILION_CITY_WIDTH ; VERMILION_DOCK
+ warp_to 15, 13, VERMILION_CITY_WIDTH ; VERMILION_TRADE_HOUSE
+ warp_to 7, 3, VERMILION_CITY_WIDTH ; VERMILION_OLD_ROD_HOUSE
diff --git a/data/mapObjects/VermilionDock.asm b/data/mapObjects/VermilionDock.asm
new file mode 100755
index 00000000..6f07554a
--- /dev/null
+++ b/data/mapObjects/VermilionDock.asm
@@ -0,0 +1,14 @@
+VermilionDock_Object:
+ db $f ; border block
+
+ db 2 ; warps
+ warp 14, 0, 5, -1
+ warp 14, 2, 1, SS_ANNE_1F
+
+ db 0 ; signs
+
+ db 0 ; objects
+
+ ; warp-to
+ warp_to 14, 0, VERMILION_DOCK_WIDTH
+ warp_to 14, 2, VERMILION_DOCK_WIDTH ; SS_ANNE_1F
diff --git a/data/mapObjects/VermilionGym.asm b/data/mapObjects/VermilionGym.asm
new file mode 100755
index 00000000..4ace83be
--- /dev/null
+++ b/data/mapObjects/VermilionGym.asm
@@ -0,0 +1,19 @@
+VermilionGym_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 4, 17, 3, -1
+ warp 5, 17, 3, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_ROCKER, 5, 1, STAY, DOWN, 1, OPP_LT_SURGE, 1
+ object SPRITE_GENTLEMAN, 9, 6, STAY, LEFT, 2, OPP_GENTLEMAN, 3
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 8, STAY, LEFT, 3, OPP_ROCKER, 1
+ object SPRITE_SAILOR, 0, 10, STAY, RIGHT, 4, OPP_SAILOR, 8
+ object SPRITE_GYM_HELPER, 4, 14, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 4, 17, VERMILION_GYM_WIDTH
+ warp_to 5, 17, VERMILION_GYM_WIDTH
diff --git a/data/mapObjects/VermilionMart.asm b/data/mapObjects/VermilionMart.asm
new file mode 100755
index 00000000..74bcf35f
--- /dev/null
+++ b/data/mapObjects/VermilionMart.asm
@@ -0,0 +1,17 @@
+VermilionMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 2, -1
+ warp 4, 7, 2, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 5, 6, STAY, NONE, 2 ; person
+ object SPRITE_LASS, 3, 3, WALK, 2, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, VERMILION_MART_WIDTH
+ warp_to 4, 7, VERMILION_MART_WIDTH
diff --git a/data/mapObjects/VermilionOldRodHouse.asm b/data/mapObjects/VermilionOldRodHouse.asm
new file mode 100755
index 00000000..f5b4b96a
--- /dev/null
+++ b/data/mapObjects/VermilionOldRodHouse.asm
@@ -0,0 +1,15 @@
+VermilionOldRodHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 8, -1
+ warp 3, 7, 8, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_FISHER, 2, 4, STAY, RIGHT, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, VERMILION_OLD_ROD_HOUSE_WIDTH
+ warp_to 3, 7, VERMILION_OLD_ROD_HOUSE_WIDTH
diff --git a/data/mapObjects/VermilionPidgeyHouse.asm b/data/mapObjects/VermilionPidgeyHouse.asm
new file mode 100755
index 00000000..0e820f86
--- /dev/null
+++ b/data/mapObjects/VermilionPidgeyHouse.asm
@@ -0,0 +1,17 @@
+VermilionPidgeyHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 4, -1
+ warp 3, 7, 4, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_BUG_CATCHER, 5, 3, STAY, LEFT, 1 ; person
+ object SPRITE_BIRD, 3, 5, WALK, 2, 2 ; person
+ object SPRITE_PAPER_SHEET, 4, 3, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, VERMILION_PIDGEY_HOUSE_WIDTH
+ warp_to 3, 7, VERMILION_PIDGEY_HOUSE_WIDTH
diff --git a/data/mapObjects/VermilionPokecenter.asm b/data/mapObjects/VermilionPokecenter.asm
new file mode 100755
index 00000000..a99bdf28
--- /dev/null
+++ b/data/mapObjects/VermilionPokecenter.asm
@@ -0,0 +1,19 @@
+VermilionPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 0, -1
+ warp 4, 7, 0, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_FISHER, 10, 5, STAY, NONE, 2 ; person
+ object SPRITE_SAILOR, 5, 4, STAY, NONE, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, VERMILION_POKECENTER_WIDTH
+ warp_to 4, 7, VERMILION_POKECENTER_WIDTH
diff --git a/data/mapObjects/VermilionTradeHouse.asm b/data/mapObjects/VermilionTradeHouse.asm
new file mode 100755
index 00000000..fcf8a8e9
--- /dev/null
+++ b/data/mapObjects/VermilionTradeHouse.asm
@@ -0,0 +1,15 @@
+VermilionTradeHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 7, -1
+ warp 3, 7, 7, -1
+
+ db 0 ; signs
+
+ db 1 ; objects
+ object SPRITE_GENTLEMAN, 3, 5, STAY, UP, 1 ; person
+
+ ; warp-to
+ warp_to 2, 7, VERMILION_TRADE_HOUSE_WIDTH
+ warp_to 3, 7, VERMILION_TRADE_HOUSE_WIDTH
diff --git a/data/mapObjects/VictoryRoad1F.asm b/data/mapObjects/VictoryRoad1F.asm
new file mode 100755
index 00000000..cc0c47ce
--- /dev/null
+++ b/data/mapObjects/VictoryRoad1F.asm
@@ -0,0 +1,23 @@
+VictoryRoad1F_Object:
+ db $7d ; border block
+
+ db 3 ; warps
+ warp 8, 17, 2, -1
+ warp 9, 17, 2, -1
+ warp 1, 1, 0, VICTORY_ROAD_2F
+
+ db 0 ; signs
+
+ db 7 ; objects
+ object SPRITE_LASS, 7, 5, STAY, RIGHT, 1, OPP_COOLTRAINER_F, 5
+ object SPRITE_BLACK_HAIR_BOY_1, 3, 2, STAY, DOWN, 2, OPP_COOLTRAINER_M, 5
+ object SPRITE_BALL, 11, 0, STAY, NONE, 3, TM_43
+ object SPRITE_BALL, 9, 2, STAY, NONE, 4, RARE_CANDY
+ object SPRITE_BOULDER, 5, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 5 ; person
+ object SPRITE_BOULDER, 14, 2, STAY, BOULDER_MOVEMENT_BYTE_2, 6 ; person
+ object SPRITE_BOULDER, 2, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 7 ; person
+
+ ; warp-to
+ warp_to 8, 17, VICTORY_ROAD_1F_WIDTH
+ warp_to 9, 17, VICTORY_ROAD_1F_WIDTH
+ warp_to 1, 1, VICTORY_ROAD_1F_WIDTH ; VICTORY_ROAD_2F
diff --git a/data/mapObjects/VictoryRoad2F.asm b/data/mapObjects/VictoryRoad2F.asm
new file mode 100755
index 00000000..55559bca
--- /dev/null
+++ b/data/mapObjects/VictoryRoad2F.asm
@@ -0,0 +1,37 @@
+VictoryRoad2F_Object:
+ db $7d ; border block
+
+ db 7 ; warps
+ warp 0, 8, 2, VICTORY_ROAD_1F
+ warp 29, 7, 3, -1
+ warp 29, 8, 3, -1
+ warp 23, 7, 0, VICTORY_ROAD_3F
+ warp 25, 14, 2, VICTORY_ROAD_3F
+ warp 27, 7, 1, VICTORY_ROAD_3F
+ warp 1, 1, 3, VICTORY_ROAD_3F
+
+ db 0 ; signs
+
+ db 13 ; objects
+ object SPRITE_HIKER, 12, 9, STAY, LEFT, 1, OPP_BLACKBELT, 9
+ object SPRITE_BLACK_HAIR_BOY_2, 21, 13, STAY, LEFT, 2, OPP_JUGGLER, 2
+ object SPRITE_BLACK_HAIR_BOY_1, 19, 8, STAY, DOWN, 3, OPP_TAMER, 5
+ object SPRITE_BLACK_HAIR_BOY_2, 4, 2, STAY, DOWN, 4, OPP_POKEMANIAC, 6
+ object SPRITE_BLACK_HAIR_BOY_2, 26, 3, STAY, LEFT, 5, OPP_JUGGLER, 5
+ object SPRITE_BIRD, 11, 5, STAY, UP, 6, MOLTRES, 50
+ object SPRITE_BALL, 27, 5, STAY, NONE, 7, TM_17
+ object SPRITE_BALL, 18, 9, STAY, NONE, 8, FULL_HEAL
+ object SPRITE_BALL, 9, 11, STAY, NONE, 9, TM_05
+ object SPRITE_BALL, 11, 0, STAY, NONE, 10, GUARD_SPEC
+ object SPRITE_BOULDER, 4, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 11 ; person
+ object SPRITE_BOULDER, 5, 5, STAY, BOULDER_MOVEMENT_BYTE_2, 12 ; person
+ object SPRITE_BOULDER, 23, 16, STAY, BOULDER_MOVEMENT_BYTE_2, 13 ; person
+
+ ; warp-to
+ warp_to 0, 8, VICTORY_ROAD_2F_WIDTH ; VICTORY_ROAD_1F
+ warp_to 29, 7, VICTORY_ROAD_2F_WIDTH
+ warp_to 29, 8, VICTORY_ROAD_2F_WIDTH
+ warp_to 23, 7, VICTORY_ROAD_2F_WIDTH ; VICTORY_ROAD_3F
+ warp_to 25, 14, VICTORY_ROAD_2F_WIDTH ; VICTORY_ROAD_3F
+ warp_to 27, 7, VICTORY_ROAD_2F_WIDTH ; VICTORY_ROAD_3F
+ warp_to 1, 1, VICTORY_ROAD_2F_WIDTH ; VICTORY_ROAD_3F
diff --git a/data/mapObjects/VictoryRoad3F.asm b/data/mapObjects/VictoryRoad3F.asm
new file mode 100755
index 00000000..2eb42417
--- /dev/null
+++ b/data/mapObjects/VictoryRoad3F.asm
@@ -0,0 +1,28 @@
+VictoryRoad3F_Object:
+ db $7d ; border block
+
+ db 4 ; warps
+ warp 23, 7, 3, VICTORY_ROAD_2F
+ warp 26, 8, 5, VICTORY_ROAD_2F
+ warp 27, 15, 4, VICTORY_ROAD_2F
+ warp 2, 0, 6, VICTORY_ROAD_2F
+
+ db 0 ; signs
+
+ db 10 ; objects
+ object SPRITE_BLACK_HAIR_BOY_1, 28, 5, STAY, LEFT, 1, OPP_COOLTRAINER_M, 2
+ object SPRITE_LASS, 7, 13, STAY, RIGHT, 2, OPP_COOLTRAINER_F, 2
+ object SPRITE_BLACK_HAIR_BOY_1, 6, 14, STAY, LEFT, 3, OPP_COOLTRAINER_M, 3
+ object SPRITE_LASS, 13, 3, STAY, RIGHT, 4, OPP_COOLTRAINER_F, 3
+ object SPRITE_BALL, 26, 5, STAY, NONE, 5, MAX_REVIVE
+ object SPRITE_BALL, 7, 7, STAY, NONE, 6, TM_47
+ object SPRITE_BOULDER, 22, 3, STAY, BOULDER_MOVEMENT_BYTE_2, 7 ; person
+ object SPRITE_BOULDER, 13, 12, STAY, BOULDER_MOVEMENT_BYTE_2, 8 ; person
+ object SPRITE_BOULDER, 24, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 9 ; person
+ object SPRITE_BOULDER, 22, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 10 ; person
+
+ ; warp-to
+ warp_to 23, 7, VICTORY_ROAD_3F_WIDTH ; VICTORY_ROAD_2F
+ warp_to 26, 8, VICTORY_ROAD_3F_WIDTH ; VICTORY_ROAD_2F
+ warp_to 27, 15, VICTORY_ROAD_3F_WIDTH ; VICTORY_ROAD_2F
+ warp_to 2, 0, VICTORY_ROAD_3F_WIDTH ; VICTORY_ROAD_2F
diff --git a/data/mapObjects/ViridianCity.asm b/data/mapObjects/ViridianCity.asm
new file mode 100755
index 00000000..9a2a554d
--- /dev/null
+++ b/data/mapObjects/ViridianCity.asm
@@ -0,0 +1,34 @@
+ViridianCity_Object:
+ db $f ; border block
+
+ db 5 ; warps
+ warp 23, 25, 0, VIRIDIAN_POKECENTER
+ warp 29, 19, 0, VIRIDIAN_MART
+ warp 21, 15, 0, VIRIDIAN_SCHOOL_HOUSE
+ warp 21, 9, 0, VIRIDIAN_NICKNAME_HOUSE
+ warp 32, 7, 0, VIRIDIAN_GYM
+
+ db 6 ; signs
+ sign 17, 17, 9 ; ViridianCityText8
+ sign 19, 1, 10 ; ViridianCityText9
+ sign 21, 29, 11 ; ViridianCityText10
+ sign 30, 19, 12 ; MartSignText
+ sign 24, 25, 13 ; PokeCenterSignText
+ sign 27, 7, 14 ; ViridianCityText13
+
+ db 8 ; objects
+ object SPRITE_BUG_CATCHER, 13, 20, WALK, 0, 1 ; person
+ object SPRITE_GAMBLER, 30, 8, STAY, NONE, 2 ; person
+ object SPRITE_BUG_CATCHER, 30, 25, WALK, 0, 3 ; person
+ object SPRITE_GIRL, 17, 9, STAY, RIGHT, 4 ; person
+ object SPRITE_LYING_OLD_MAN, 18, 9, STAY, NONE, 5 ; person
+ object SPRITE_FISHER2, 6, 23, STAY, DOWN, 6 ; person
+ object SPRITE_GAMBLER, 17, 5, WALK, 2, 7 ; person
+ object SPRITE_GAMBLER, 18, 9, STAY, NONE, 8
+
+ ; warp-to
+ warp_to 23, 25, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_POKECENTER
+ warp_to 29, 19, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_MART
+ warp_to 21, 15, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_SCHOOL_HOUSE
+ warp_to 21, 9, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_NICKNAME_HOUSE
+ warp_to 32, 7, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_GYM
diff --git a/data/mapObjects/ViridianForest.asm b/data/mapObjects/ViridianForest.asm
new file mode 100755
index 00000000..94f74b96
--- /dev/null
+++ b/data/mapObjects/ViridianForest.asm
@@ -0,0 +1,38 @@
+ViridianForest_Object:
+ db $3 ; border block
+
+ db 6 ; warps
+ warp 1, 0, 2, VIRIDIAN_FOREST_NORTH_GATE
+ warp 2, 0, 2, VIRIDIAN_FOREST_NORTH_GATE
+ warp 15, 47, 1, VIRIDIAN_FOREST_SOUTH_GATE
+ warp 16, 47, 1, VIRIDIAN_FOREST_SOUTH_GATE
+ warp 17, 47, 1, VIRIDIAN_FOREST_SOUTH_GATE
+ warp 18, 47, 1, VIRIDIAN_FOREST_SOUTH_GATE
+
+ db 6 ; signs
+ sign 24, 40, 11 ; ViridianForestText9
+ sign 16, 32, 12 ; ViridianForestText10
+ sign 26, 17, 13 ; ViridianForestText11
+ sign 4, 24, 14 ; ViridianForestText12
+ sign 18, 45, 15 ; ViridianForestText13
+ sign 2, 1, 16 ; ViridianForestText14
+
+ db 10 ; objects
+ object SPRITE_BUG_CATCHER, 16, 43, STAY, NONE, 1 ; person
+ object SPRITE_BUG_CATCHER, 30, 33, STAY, LEFT, 2, OPP_BUG_CATCHER, 1
+ object SPRITE_BUG_CATCHER, 30, 19, STAY, LEFT, 3, OPP_BUG_CATCHER, 2
+ object SPRITE_BUG_CATCHER, 2, 18, STAY, LEFT, 4, OPP_BUG_CATCHER, 3
+ object SPRITE_LASS, 2, 41, STAY, NONE, 5, OPP_LASS, 19
+ object SPRITE_BUG_CATCHER, 13, 17, STAY, RIGHT, 6, OPP_BUG_CATCHER, 15
+ object SPRITE_BALL, 25, 11, STAY, NONE, 7, POTION
+ object SPRITE_BALL, 12, 29, STAY, NONE, 8, POTION
+ object SPRITE_BALL, 1, 31, STAY, NONE, 9, POKE_BALL
+ object SPRITE_BUG_CATCHER, 27, 40, STAY, NONE, 10 ; person
+
+ ; warp-to
+ warp_to 1, 0, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_NORTH_GATE
+ warp_to 2, 0, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_NORTH_GATE
+ warp_to 15, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
+ warp_to 16, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
+ warp_to 17, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
+ warp_to 18, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
diff --git a/data/mapObjects/ViridianForestNorthGate.asm b/data/mapObjects/ViridianForestNorthGate.asm
new file mode 100755
index 00000000..81e7fece
--- /dev/null
+++ b/data/mapObjects/ViridianForestNorthGate.asm
@@ -0,0 +1,20 @@
+ViridianForestNorthGate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 4, 0, 1, -1
+ warp 5, 0, 1, -1
+ warp 4, 7, 0, VIRIDIAN_FOREST
+ warp 5, 7, 0, VIRIDIAN_FOREST
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_BLACK_HAIR_BOY_2, 3, 2, STAY, NONE, 1 ; person
+ object SPRITE_OLD_PERSON, 2, 5, STAY, NONE, 2 ; person
+
+ ; warp-to
+ warp_to 4, 0, VIRIDIAN_FOREST_NORTH_GATE_WIDTH
+ warp_to 5, 0, VIRIDIAN_FOREST_NORTH_GATE_WIDTH
+ warp_to 4, 7, VIRIDIAN_FOREST_NORTH_GATE_WIDTH ; VIRIDIAN_FOREST
+ warp_to 5, 7, VIRIDIAN_FOREST_NORTH_GATE_WIDTH ; VIRIDIAN_FOREST
diff --git a/data/mapObjects/ViridianForestSouthGate.asm b/data/mapObjects/ViridianForestSouthGate.asm
new file mode 100755
index 00000000..47432513
--- /dev/null
+++ b/data/mapObjects/ViridianForestSouthGate.asm
@@ -0,0 +1,20 @@
+ViridianForestSouthGate_Object:
+ db $a ; border block
+
+ db 4 ; warps
+ warp 4, 0, 3, VIRIDIAN_FOREST
+ warp 5, 0, 3, VIRIDIAN_FOREST
+ warp 4, 7, 5, -1
+ warp 5, 7, 5, -1
+
+ db 0 ; signs
+
+ db 2 ; objects
+ object SPRITE_GIRL, 8, 4, STAY, LEFT, 1 ; person
+ object SPRITE_LITTLE_GIRL, 2, 4, WALK, 1, 2 ; person
+
+ ; warp-to
+ warp_to 4, 0, VIRIDIAN_FOREST_SOUTH_GATE_WIDTH ; VIRIDIAN_FOREST
+ warp_to 5, 0, VIRIDIAN_FOREST_SOUTH_GATE_WIDTH ; VIRIDIAN_FOREST
+ warp_to 4, 7, VIRIDIAN_FOREST_SOUTH_GATE_WIDTH
+ warp_to 5, 7, VIRIDIAN_FOREST_SOUTH_GATE_WIDTH
diff --git a/data/mapObjects/ViridianGym.asm b/data/mapObjects/ViridianGym.asm
new file mode 100755
index 00000000..e3fd17bd
--- /dev/null
+++ b/data/mapObjects/ViridianGym.asm
@@ -0,0 +1,25 @@
+ViridianGym_Object:
+ db $3 ; border block
+
+ db 2 ; warps
+ warp 16, 17, 4, -1
+ warp 17, 17, 4, -1
+
+ db 0 ; signs
+
+ db 11 ; objects
+ object SPRITE_GIOVANNI, 2, 1, STAY, DOWN, 1, OPP_GIOVANNI, 3
+ object SPRITE_BLACK_HAIR_BOY_1, 12, 7, STAY, DOWN, 2, OPP_COOLTRAINER_M, 9
+ object SPRITE_HIKER, 11, 11, STAY, UP, 3, OPP_BLACKBELT, 6
+ object SPRITE_ROCKER, 10, 7, STAY, DOWN, 4, OPP_TAMER, 3
+ object SPRITE_HIKER, 3, 7, STAY, LEFT, 5, OPP_BLACKBELT, 7
+ object SPRITE_BLACK_HAIR_BOY_1, 13, 5, STAY, RIGHT, 6, OPP_COOLTRAINER_M, 10
+ object SPRITE_HIKER, 10, 1, STAY, DOWN, 7, OPP_BLACKBELT, 8
+ object SPRITE_ROCKER, 2, 16, STAY, RIGHT, 8, OPP_TAMER, 4
+ object SPRITE_BLACK_HAIR_BOY_1, 6, 5, STAY, DOWN, 9, OPP_COOLTRAINER_M, 1
+ object SPRITE_GYM_HELPER, 16, 15, STAY, DOWN, 10 ; person
+ object SPRITE_BALL, 16, 9, STAY, NONE, 11, REVIVE
+
+ ; warp-to
+ warp_to 16, 17, VIRIDIAN_GYM_WIDTH
+ warp_to 17, 17, VIRIDIAN_GYM_WIDTH
diff --git a/data/mapObjects/ViridianMart.asm b/data/mapObjects/ViridianMart.asm
new file mode 100755
index 00000000..b3e7fee5
--- /dev/null
+++ b/data/mapObjects/ViridianMart.asm
@@ -0,0 +1,17 @@
+ViridianMart_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 1, -1
+ warp 4, 7, 1, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
+ object SPRITE_BUG_CATCHER, 5, 5, WALK, 1, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 3, 3, STAY, NONE, 3 ; person
+
+ ; warp-to
+ warp_to 3, 7, VIRIDIAN_MART_WIDTH
+ warp_to 4, 7, VIRIDIAN_MART_WIDTH
diff --git a/data/mapObjects/ViridianNicknameHouse.asm b/data/mapObjects/ViridianNicknameHouse.asm
new file mode 100755
index 00000000..aaf20a91
--- /dev/null
+++ b/data/mapObjects/ViridianNicknameHouse.asm
@@ -0,0 +1,18 @@
+ViridianNicknameHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 3, -1
+ warp 3, 7, 3, -1
+
+ db 0 ; signs
+
+ db 4 ; objects
+ object SPRITE_BALDING_GUY, 5, 3, STAY, NONE, 1 ; person
+ object SPRITE_LITTLE_GIRL, 1, 4, WALK, 1, 2 ; person
+ object SPRITE_BIRD, 5, 5, WALK, 2, 3 ; person
+ object SPRITE_CLIPBOARD, 4, 0, STAY, NONE, 4 ; person
+
+ ; warp-to
+ warp_to 2, 7, VIRIDIAN_NICKNAME_HOUSE_WIDTH
+ warp_to 3, 7, VIRIDIAN_NICKNAME_HOUSE_WIDTH
diff --git a/data/mapObjects/ViridianPokecenter.asm b/data/mapObjects/ViridianPokecenter.asm
new file mode 100755
index 00000000..70024ede
--- /dev/null
+++ b/data/mapObjects/ViridianPokecenter.asm
@@ -0,0 +1,19 @@
+ViridianPokecenter_Object:
+ db $0 ; border block
+
+ db 2 ; warps
+ warp 3, 7, 0, -1
+ warp 4, 7, 0, -1
+
+ db 0 ; signs
+
+ db 5 ; objects
+ object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
+ object SPRITE_GENTLEMAN, 10, 5, WALK, 1, 2 ; person
+ object SPRITE_BLACK_HAIR_BOY_1, 4, 3, STAY, UP, 3 ; person
+ object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
+ object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
+
+ ; warp-to
+ warp_to 3, 7, VIRIDIAN_POKECENTER_WIDTH
+ warp_to 4, 7, VIRIDIAN_POKECENTER_WIDTH
diff --git a/data/mapObjects/ViridianSchoolHouse.asm b/data/mapObjects/ViridianSchoolHouse.asm
new file mode 100755
index 00000000..29b0614c
--- /dev/null
+++ b/data/mapObjects/ViridianSchoolHouse.asm
@@ -0,0 +1,17 @@
+ViridianSchoolHouse_Object:
+ db $a ; border block
+
+ db 2 ; warps
+ warp 2, 7, 2, -1
+ warp 3, 7, 2, -1
+
+ db 0 ; signs
+
+ db 3 ; objects
+ object SPRITE_BRUNETTE_GIRL, 3, 5, STAY, UP, 1 ; person
+ object SPRITE_LASS, 4, 1, STAY, DOWN, 2 ; person
+ object SPRITE_LITTLE_GIRL, 4, 5, STAY, UP, 3 ; person
+
+ ; warp-to
+ warp_to 2, 7, VIRIDIAN_SCHOOL_HOUSE_WIDTH
+ warp_to 3, 7, VIRIDIAN_SCHOOL_HOUSE_WIDTH
diff --git a/data/mapObjects/WardensHouse.asm b/data/mapObjects/WardensHouse.asm
new file mode 100755
index 00000000..d8445738
--- /dev/null
+++ b/data/mapObjects/WardensHouse.asm
@@ -0,0 +1,19 @@
+WardensHouse_Object:
+ db $17 ; border block
+
+ db 2 ; warps
+ warp 4, 7, 3, -1
+ warp 5, 7, 3, -1
+
+ db 2 ; signs
+ sign 4, 3, 4 ; FuchsiaHouse2Text4
+ sign 5, 3, 5 ; FuchsiaHouse2Text5
+
+ db 3 ; objects
+ object SPRITE_WARDEN, 2, 3, STAY, NONE, 1 ; person
+ object SPRITE_BALL, 8, 3, STAY, NONE, 2, RARE_CANDY
+ object SPRITE_BOULDER, 8, 4, STAY, BOULDER_MOVEMENT_BYTE_2, 3 ; person
+
+ ; warp-to
+ warp_to 4, 7, WARDENS_HOUSE_WIDTH
+ warp_to 5, 7, WARDENS_HOUSE_WIDTH
diff --git a/data/mapObjects/agatha.asm b/data/mapObjects/agatha.asm
deleted file mode 100755
index cd8bbfe7..00000000
--- a/data/mapObjects/agatha.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-AgathaObject:
- db $0 ; border block
-
- db 4 ; warps
- warp 4, 11, 2, BRUNOS_ROOM
- warp 5, 11, 3, BRUNOS_ROOM
- warp 4, 0, 0, LANCES_ROOM
- warp 5, 0, 0, LANCES_ROOM
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_AGATHA, 5, 2, STAY, DOWN, 1, OPP_AGATHA, 1
-
- ; warp-to
- warp_to 4, 11, AGATHAS_ROOM_WIDTH ; BRUNOS_ROOM
- warp_to 5, 11, AGATHAS_ROOM_WIDTH ; BRUNOS_ROOM
- warp_to 4, 0, AGATHAS_ROOM_WIDTH ; LANCES_ROOM
- warp_to 5, 0, AGATHAS_ROOM_WIDTH ; LANCES_ROOM
diff --git a/data/mapObjects/beach_house.asm b/data/mapObjects/beach_house.asm
deleted file mode 100644
index cbca9f28..00000000
--- a/data/mapObjects/beach_house.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-BeachHouseObjects:
- db $a ; border block
-
- db 2 ; warps
- warp 2,7,0,-1
- warp 3,7,0,-1
-
- db 4 ; signs
- sign 3,0,3
- sign 7,0,4
- sign 11,0,5
- sign 13,1,6
-
- db 2 ; objects
- object SPRITE_FISHER, 2, 3, STAY, DOWN, 1 ; surfin' dude
- object $3d, 5, 3, WALK, $01, 2 ; pikachu
-
- ; warp-to
- warp_to 2,7, BEACH_HOUSE_WIDTH
- warp_to 3,7, BEACH_HOUSE_WIDTH
diff --git a/data/mapObjects/bikeshop.asm b/data/mapObjects/bikeshop.asm
deleted file mode 100755
index 98208a94..00000000
--- a/data/mapObjects/bikeshop.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-BikeShopObject:
- db $e ; border block
-
- db 2 ; warps
- warp 2, 7, 4, -1
- warp 3, 7, 4, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_BIKE_SHOP_GUY, 6, 2, STAY, NONE, 1 ; person
- object SPRITE_MOM_GEISHA, 5, 6, WALK, 1, 2 ; person
- object SPRITE_BUG_CATCHER, 1, 3, STAY, UP, 3 ; person
-
- ; warp-to
- warp_to 2, 7, BIKE_SHOP_WIDTH
- warp_to 3, 7, BIKE_SHOP_WIDTH
diff --git a/data/mapObjects/billshouse.asm b/data/mapObjects/billshouse.asm
deleted file mode 100755
index 317d7c01..00000000
--- a/data/mapObjects/billshouse.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-BillsHouseObject:
- db $d ; border block
-
- db 2 ; warps
- warp 2, 7, 0, -1
- warp 3, 7, 0, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_SLOWBRO, 6, 5, STAY, NONE, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 4, 4, STAY, NONE, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 6, 5, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 2, 7, BILLS_HOUSE_WIDTH
- warp_to 3, 7, BILLS_HOUSE_WIDTH
diff --git a/data/mapObjects/blueshouse.asm b/data/mapObjects/blueshouse.asm
deleted file mode 100755
index 65523b26..00000000
--- a/data/mapObjects/blueshouse.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-BluesHouseObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 1, -1
- warp 3, 7, 1, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_DAISY, 2, 3, STAY, RIGHT, 1, 0 ; Daisy, sitting by map
- object SPRITE_DAISY, 6, 4, WALK, 1, 2, 0 ; Daisy, walking around
- object SPRITE_BOOK_MAP_DEX, 3, 3, STAY, NONE, 3, 0 ; map on table
-
- ; warp-to
- warp_to 2, 7, BLUES_HOUSE_WIDTH
- warp_to 3, 7, BLUES_HOUSE_WIDTH
diff --git a/data/mapObjects/bruno.asm b/data/mapObjects/bruno.asm
deleted file mode 100755
index 45d21186..00000000
--- a/data/mapObjects/bruno.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-BrunoObject:
- db $3 ; border block
-
- db 4 ; warps
- warp 4, 11, 2, LORELEIS_ROOM
- warp 5, 11, 3, LORELEIS_ROOM
- warp 4, 0, 0, AGATHAS_ROOM
- warp 5, 0, 1, AGATHAS_ROOM
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_BRUNO, 5, 2, STAY, DOWN, 1, OPP_BRUNO, 1
-
- ; warp-to
- warp_to 4, 11, BRUNOS_ROOM_WIDTH ; LORELEIS_ROOM
- warp_to 5, 11, BRUNOS_ROOM_WIDTH ; LORELEIS_ROOM
- warp_to 4, 0, BRUNOS_ROOM_WIDTH ; AGATHAS_ROOM
- warp_to 5, 0, BRUNOS_ROOM_WIDTH ; AGATHAS_ROOM
diff --git a/data/mapObjects/celadoncity.asm b/data/mapObjects/celadoncity.asm
deleted file mode 100755
index c7135904..00000000
--- a/data/mapObjects/celadoncity.asm
+++ /dev/null
@@ -1,54 +0,0 @@
-CeladonCityObject:
- db $f ; border block
-
- db 13 ; warps
- warp 8, 13, 0, CELADON_MART_1
- warp 10, 13, 2, CELADON_MART_1
- warp 24, 9, 0, CELADON_MANSION_1
- warp 24, 3, 2, CELADON_MANSION_1
- warp 25, 3, 2, CELADON_MANSION_1
- warp 41, 9, 0, CELADON_POKECENTER
- warp 12, 27, 0, CELADON_GYM
- warp 28, 19, 0, GAME_CORNER
- warp 39, 19, 0, CELADON_MART_5 ; beta warp! no longer used
- warp 33, 19, 0, CELADON_PRIZE_ROOM
- warp 31, 27, 0, CELADON_DINER
- warp 35, 27, 0, CELADON_HOUSE
- warp 43, 27, 0, CELADON_HOTEL
-
- db 9 ; signs
- sign 27, 15, 10 ; CeladonCityText10
- sign 19, 15, 11 ; CeladonCityText11
- sign 42, 9, 12 ; PokeCenterSignText
- sign 13, 29, 13 ; CeladonCityText13
- sign 21, 9, 14 ; CeladonCityText14
- sign 12, 13, 15 ; CeladonCityText15
- sign 39, 21, 16 ; CeladonCityText16
- sign 33, 21, 17 ; CeladonCityText17
- sign 27, 21, 18 ; CeladonCityText18
-
- db 9 ; objects
- object SPRITE_LITTLE_GIRL, 8, 17, WALK, 0, 1 ; person
- object SPRITE_OLD_PERSON, 11, 28, STAY, UP, 2 ; person
- object SPRITE_GIRL, 14, 19, WALK, 1, 3 ; person
- object SPRITE_OLD_PERSON, 25, 22, STAY, DOWN, 4 ; person
- object SPRITE_OLD_PERSON, 22, 16, STAY, DOWN, 5 ; person
- object SPRITE_FISHER2, 32, 12, STAY, LEFT, 6 ; person
- object SPRITE_SLOWBRO, 30, 12, STAY, RIGHT, 7 ; person
- object SPRITE_ROCKET, 32, 29, WALK, 2, 8 ; person
- object SPRITE_ROCKET, 42, 14, WALK, 2, 9 ; person
-
- ; warp-to
- warp_to 8, 13, CELADON_CITY_WIDTH ; CELADON_MART_1F
- warp_to 10, 13, CELADON_CITY_WIDTH ; CELADON_MART_1F
- warp_to 24, 9, CELADON_CITY_WIDTH ; CELADON_MANSION_1F
- warp_to 24, 3, CELADON_CITY_WIDTH ; CELADON_MANSION_1F
- warp_to 25, 3, CELADON_CITY_WIDTH ; CELADON_MANSION_1F
- warp_to 41, 9, CELADON_CITY_WIDTH ; CELADON_POKECENTER
- warp_to 12, 27, CELADON_CITY_WIDTH ; CELADON_GYM
- warp_to 28, 19, CELADON_CITY_WIDTH ; GAME_CORNER
- warp_to 39, 19, CELADON_CITY_WIDTH ; CELADON_MART_5F
- warp_to 33, 19, CELADON_CITY_WIDTH ; GAME_CORNER_PRIZE_ROOM
- warp_to 31, 27, CELADON_CITY_WIDTH ; CELADON_DINER
- warp_to 35, 27, CELADON_CITY_WIDTH ; CELADON_CHIEF_HOUSE
- warp_to 43, 27, CELADON_CITY_WIDTH ; CELADON_HOTEL
diff --git a/data/mapObjects/celadondiner.asm b/data/mapObjects/celadondiner.asm
deleted file mode 100755
index b976a045..00000000
--- a/data/mapObjects/celadondiner.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeladonDinerObject:
- db $f ; border block
-
- db 2 ; warps
- warp 3, 7, 10, -1
- warp 4, 7, 10, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_COOK, 8, 5, WALK, 2, 1 ; person
- object SPRITE_MOM_GEISHA, 7, 2, STAY, NONE, 2 ; person
- object SPRITE_FAT_BALD_GUY, 1, 4, STAY, DOWN, 3 ; person
- object SPRITE_FISHER2, 5, 3, STAY, RIGHT, 4 ; person
- object SPRITE_GYM_HELPER, 0, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, CELADON_DINER_WIDTH
- warp_to 4, 7, CELADON_DINER_WIDTH
diff --git a/data/mapObjects/celadongamecorner.asm b/data/mapObjects/celadongamecorner.asm
deleted file mode 100755
index be5a3c71..00000000
--- a/data/mapObjects/celadongamecorner.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-CeladonGameCornerObject:
- db $f ; border block
-
- db 3 ; warps
- warp 15, 17, 7, -1
- warp 16, 17, 7, -1
- warp 17, 4, 1, ROCKET_HIDEOUT_1
-
- db 1 ; signs
- sign 9, 4, 12 ; CeladonGameCornerText12
-
- db 11 ; objects
- object SPRITE_FOULARD_WOMAN, 2, 6, STAY, DOWN, 1 ; person
- object SPRITE_MART_GUY, 5, 6, STAY, DOWN, 2 ; person
- object SPRITE_FAT_BALD_GUY, 2, 10, STAY, LEFT, 3 ; person
- object SPRITE_FOULARD_WOMAN, 2, 13, STAY, LEFT, 4 ; person
- object SPRITE_FISHER, 5, 11, STAY, RIGHT, 5 ; person
- object SPRITE_MOM_GEISHA, 8, 11, STAY, LEFT, 6 ; person
- object SPRITE_GYM_HELPER, 8, 14, STAY, LEFT, 7 ; person
- object SPRITE_GAMBLER, 11, 15, STAY, RIGHT, 8 ; person
- object SPRITE_FAT_BALD_GUY, 14, 11, STAY, LEFT, 9 ; person
- object SPRITE_FISHER, 17, 13, STAY, RIGHT, 10 ; person
- object SPRITE_ROCKET, 9, 5, STAY, UP, 11, OPP_ROCKET, 7
-
- ; warp-to
- warp_to 15, 17, GAME_CORNER_WIDTH
- warp_to 16, 17, GAME_CORNER_WIDTH
- warp_to 17, 4, GAME_CORNER_WIDTH ; ROCKET_HIDEOUT_B1F
diff --git a/data/mapObjects/celadongym.asm b/data/mapObjects/celadongym.asm
deleted file mode 100755
index b087153b..00000000
--- a/data/mapObjects/celadongym.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-CeladonGymObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 17, 6, -1
- warp 5, 17, 6, -1
-
- db 0 ; signs
-
- db 8 ; objects
- object SPRITE_ERIKA, 4, 3, STAY, DOWN, 1, OPP_ERIKA, 1
- object SPRITE_LASS, 2, 11, STAY, RIGHT, 2, OPP_LASS, 17
- object SPRITE_FOULARD_WOMAN, 7, 10, STAY, LEFT, 3, OPP_BEAUTY, 1
- object SPRITE_LASS, 9, 5, STAY, DOWN, 4, OPP_JR_TRAINER_F, 11
- object SPRITE_FOULARD_WOMAN, 1, 5, STAY, DOWN, 5, OPP_BEAUTY, 2
- object SPRITE_LASS, 6, 3, STAY, DOWN, 6, OPP_LASS, 18
- object SPRITE_FOULARD_WOMAN, 3, 3, STAY, DOWN, 7, OPP_BEAUTY, 3
- object SPRITE_LASS, 5, 3, STAY, DOWN, 8, OPP_COOLTRAINER_F, 1
-
- ; warp-to
- warp_to 4, 17, CELADON_GYM_WIDTH
- warp_to 5, 17, CELADON_GYM_WIDTH
diff --git a/data/mapObjects/celadonhotel.asm b/data/mapObjects/celadonhotel.asm
deleted file mode 100755
index 09b4d99c..00000000
--- a/data/mapObjects/celadonhotel.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-CeladonHotelObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 12, -1
- warp 4, 7, 12, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_OLD_MEDIUM_WOMAN, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_FOULARD_WOMAN, 2, 4, STAY, NONE, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 8, 4, WALK, 2, 3 ; person
-
- ; warp-to
- warp_to 3, 7, CELADON_HOTEL_WIDTH
- warp_to 4, 7, CELADON_HOTEL_WIDTH
diff --git a/data/mapObjects/celadonhouse.asm b/data/mapObjects/celadonhouse.asm
deleted file mode 100755
index d24354a6..00000000
--- a/data/mapObjects/celadonhouse.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-CeladonHouseObject:
- db $f ; border block
-
- db 2 ; warps
- warp 2, 7, 11, -1
- warp 3, 7, 11, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_OLD_PERSON, 4, 2, STAY, DOWN, 1 ; person
- object SPRITE_ROCKET, 1, 4, WALK, 0, 2 ; person
- object SPRITE_SAILOR, 5, 6, STAY, LEFT, 3 ; person
-
- ; warp-to
- warp_to 2, 7, CELADON_HOUSE_WIDTH
- warp_to 3, 7, CELADON_HOUSE_WIDTH
diff --git a/data/mapObjects/celadonmansion1.asm b/data/mapObjects/celadonmansion1.asm
deleted file mode 100755
index 423a9a2e..00000000
--- a/data/mapObjects/celadonmansion1.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-CeladonMansion1Object:
- db $f ; border block
-
- db 5 ; warps
- warp 4, 11, 2, -1
- warp 5, 11, 2, -1
- warp 4, 0, 4, -1
- warp 7, 1, 1, CELADON_MANSION_2
- warp 2, 1, 2, CELADON_MANSION_2
-
- db 1 ; signs
- sign 4, 9, 5 ; CeladonMansion1Text5
-
- db 4 ; objects
- object SPRITE_SLOWBRO, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_OLD_MEDIUM_WOMAN, 1, 5, STAY, DOWN, 2 ; person
- object SPRITE_CLEFAIRY, 1, 8, WALK, 2, 3 ; person
- object SPRITE_SLOWBRO, 4, 4, WALK, 1, 4 ; person
-
- ; warp-to
- warp_to 4, 11, CELADON_MANSION_1_WIDTH
- warp_to 5, 11, CELADON_MANSION_1_WIDTH
- warp_to 4, 0, CELADON_MANSION_1_WIDTH
- warp_to 7, 1, CELADON_MANSION_1_WIDTH ; CELADON_MANSION_2
- warp_to 2, 1, CELADON_MANSION_1_WIDTH ; CELADON_MANSION_2
diff --git a/data/mapObjects/celadonmansion2.asm b/data/mapObjects/celadonmansion2.asm
deleted file mode 100755
index f2b96d89..00000000
--- a/data/mapObjects/celadonmansion2.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeladonMansion2Object:
- db $f ; border block
-
- db 4 ; warps
- warp 6, 1, 0, CELADON_MANSION_3
- warp 7, 1, 3, CELADON_MANSION_1
- warp 2, 1, 4, CELADON_MANSION_1
- warp 4, 1, 3, CELADON_MANSION_3
-
- db 1 ; signs
- sign 4, 9, 1 ; CeladonMansion2Text1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 6, 1, CELADON_MANSION_2_WIDTH ; CELADON_MANSION_3
- warp_to 7, 1, CELADON_MANSION_2_WIDTH ; CELADON_MANSION_1
- warp_to 2, 1, CELADON_MANSION_2_WIDTH ; CELADON_MANSION_1
- warp_to 4, 1, CELADON_MANSION_2_WIDTH ; CELADON_MANSION_3
diff --git a/data/mapObjects/celadonmansion3.asm b/data/mapObjects/celadonmansion3.asm
deleted file mode 100755
index 129a7148..00000000
--- a/data/mapObjects/celadonmansion3.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-CeladonMansion3Object:
- db $f ; border block
-
- db 4 ; warps
- warp 6, 1, 0, CELADON_MANSION_2
- warp 7, 1, 0, CELADON_MANSION_4
- warp 2, 1, 1, CELADON_MANSION_4
- warp 4, 1, 3, CELADON_MANSION_2
-
- db 4 ; signs
- sign 1, 3, 5 ; CeladonMansion3Text5
- sign 4, 3, 6 ; CeladonMansion3Text6
- sign 1, 6, 7 ; CeladonMansion3Text7
- sign 4, 9, 8 ; CeladonMansion3Text8
-
- db 4 ; objects
- object SPRITE_BIKE_SHOP_GUY, 0, 4, STAY, UP, 1 ; person
- object SPRITE_MART_GUY, 3, 4, STAY, UP, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 0, 7, STAY, UP, 3 ; person
- object SPRITE_LAPRAS_GIVER, 2, 3, STAY, NONE, 4 ; person
-
- ; warp-to
- warp_to 6, 1, CELADON_MANSION_3_WIDTH ; CELADON_MANSION_2F
- warp_to 7, 1, CELADON_MANSION_3_WIDTH ; CELADON_MANSION_ROOF
- warp_to 2, 1, CELADON_MANSION_3_WIDTH ; CELADON_MANSION_ROOF
- warp_to 4, 1, CELADON_MANSION_3_WIDTH ; CELADON_MANSION_2F
diff --git a/data/mapObjects/celadonmansion4.asm b/data/mapObjects/celadonmansion4.asm
deleted file mode 100755
index 49ec71cf..00000000
--- a/data/mapObjects/celadonmansion4.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-CeladonMansion4Object:
- db $9 ; border block
-
- db 3 ; warps
- warp 6, 1, 1, CELADON_MANSION_3
- warp 2, 1, 2, CELADON_MANSION_3
- warp 2, 7, 0, CELADON_MANSION_5
-
- db 1 ; signs
- sign 3, 7, 1 ; CeladonMansion4Text1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 6, 1, CELADON_MANSION_4_WIDTH ; CELADON_MANSION_3F
- warp_to 2, 1, CELADON_MANSION_4_WIDTH ; CELADON_MANSION_3F
- warp_to 2, 7, CELADON_MANSION_4_WIDTH ; CELADON_MANSION_ROOF_HOUSE
diff --git a/data/mapObjects/celadonmansion5.asm b/data/mapObjects/celadonmansion5.asm
deleted file mode 100755
index 3c5c04e3..00000000
--- a/data/mapObjects/celadonmansion5.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-CeladonMansion5Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 2, CELADON_MANSION_4
- warp 3, 7, 2, CELADON_MANSION_4
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_HIKER, 2, 2, STAY, DOWN, 1 ; person
- object SPRITE_BALL, 4, 3, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 2, 7, CELADON_MANSION_5_WIDTH ; CELADON_MANSION_ROOF
- warp_to 3, 7, CELADON_MANSION_5_WIDTH ; CELADON_MANSION_ROOF
diff --git a/data/mapObjects/celadonmart1.asm b/data/mapObjects/celadonmart1.asm
deleted file mode 100755
index b2a8fdcd..00000000
--- a/data/mapObjects/celadonmart1.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-CeladonMart1Object:
- db $f ; border block
-
- db 6 ; warps
- warp 2, 7, 0, -1
- warp 3, 7, 0, -1
- warp 16, 7, 1, -1
- warp 17, 7, 1, -1
- warp 12, 1, 0, CELADON_MART_2
- warp 1, 1, 0, CELADON_MART_ELEVATOR
-
- db 2 ; signs
- sign 11, 4, 2 ; CeladonMart1Text2
- sign 14, 1, 3 ; CeladonMart1Text3
-
- db 1 ; objects
- object SPRITE_CABLE_CLUB_WOMAN, 8, 3, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 2, 7, CELADON_MART_1_WIDTH
- warp_to 3, 7, CELADON_MART_1_WIDTH
- warp_to 16, 7, CELADON_MART_1_WIDTH
- warp_to 17, 7, CELADON_MART_1_WIDTH
- warp_to 12, 1, CELADON_MART_1_WIDTH ; CELADON_MART_2F
- warp_to 1, 1, CELADON_MART_1_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart2.asm b/data/mapObjects/celadonmart2.asm
deleted file mode 100755
index db095add..00000000
--- a/data/mapObjects/celadonmart2.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-CeladonMart2Object:
- db $f ; border block
-
- db 3 ; warps
- warp 12, 1, 4, CELADON_MART_1
- warp 16, 1, 1, CELADON_MART_3
- warp 1, 1, 0, CELADON_MART_ELEVATOR
-
- db 1 ; signs
- sign 14, 1, 5 ; CeladonMart2Text5
-
- db 4 ; objects
- object SPRITE_MART_GUY, 5, 3, STAY, DOWN, 1 ; person
- object SPRITE_MART_GUY, 6, 3, STAY, DOWN, 2 ; person
- object SPRITE_FAT_BALD_GUY, 19, 5, STAY, NONE, 3 ; person
- object SPRITE_GIRL, 14, 4, WALK, 1, 4 ; person
-
- ; warp-to
- warp_to 12, 1, CELADON_MART_2_WIDTH ; CELADON_MART_1F
- warp_to 16, 1, CELADON_MART_2_WIDTH ; CELADON_MART_3F
- warp_to 1, 1, CELADON_MART_2_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart3.asm b/data/mapObjects/celadonmart3.asm
deleted file mode 100755
index c412ed5b..00000000
--- a/data/mapObjects/celadonmart3.asm
+++ /dev/null
@@ -1,33 +0,0 @@
-CeladonMart3Object:
- db $f ; border block
-
- db 3 ; warps
- warp 12, 1, 0, CELADON_MART_4
- warp 16, 1, 1, CELADON_MART_2
- warp 1, 1, 0, CELADON_MART_ELEVATOR
-
- db 12 ; signs
- sign 2, 4, 6 ; CeladonMart3Text6
- sign 3, 4, 7 ; CeladonMart3Text7
- sign 5, 4, 8 ; CeladonMart3Text8
- sign 6, 4, 9 ; CeladonMart3Text9
- sign 2, 6, 10 ; CeladonMart3Text10
- sign 3, 6, 11 ; CeladonMart3Text11
- sign 5, 6, 12 ; CeladonMart3Text12
- sign 6, 6, 13 ; CeladonMart3Text13
- sign 14, 1, 14 ; CeladonMart3Text14
- sign 4, 1, 15 ; CeladonMart3Text15
- sign 6, 1, 16 ; CeladonMart3Text16
- sign 10, 1, 17 ; CeladonMart3Text17
-
- db 5 ; objects
- object SPRITE_MART_GUY, 16, 5, STAY, NONE, 1 ; person
- object SPRITE_GAMEBOY_KID, 11, 6, STAY, RIGHT, 2 ; person
- object SPRITE_GAMEBOY_KID, 7, 2, STAY, DOWN, 3 ; person
- object SPRITE_GAMEBOY_KID, 8, 2, STAY, DOWN, 4 ; person
- object SPRITE_YOUNG_BOY, 2, 5, STAY, UP, 5 ; person
-
- ; warp-to
- warp_to 12, 1, CELADON_MART_3_WIDTH ; CELADON_MART_4F
- warp_to 16, 1, CELADON_MART_3_WIDTH ; CELADON_MART_2F
- warp_to 1, 1, CELADON_MART_3_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart4.asm b/data/mapObjects/celadonmart4.asm
deleted file mode 100755
index eeb75d7f..00000000
--- a/data/mapObjects/celadonmart4.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-CeladonMart4Object:
- db $f ; border block
-
- db 3 ; warps
- warp 12, 1, 0, CELADON_MART_3
- warp 16, 1, 1, CELADON_MART_5
- warp 1, 1, 0, CELADON_MART_ELEVATOR
-
- db 1 ; signs
- sign 14, 1, 4 ; CeladonMart4Text4
-
- db 3 ; objects
- object SPRITE_MART_GUY, 5, 7, STAY, NONE, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 15, 5, WALK, 2, 2 ; person
- object SPRITE_BUG_CATCHER, 5, 2, WALK, 2, 3 ; person
-
- ; warp-to
- warp_to 12, 1, CELADON_MART_4_WIDTH ; CELADON_MART_3F
- warp_to 16, 1, CELADON_MART_4_WIDTH ; CELADON_MART_5F
- warp_to 1, 1, CELADON_MART_4_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmart5.asm b/data/mapObjects/celadonmart5.asm
deleted file mode 100755
index ff4f3955..00000000
--- a/data/mapObjects/celadonmart5.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-CeladonMart5Object:
- db $f ; border block
-
- db 3 ; warps
- warp 12, 1, 0, CELADON_MART_ROOF
- warp 16, 1, 1, CELADON_MART_4
- warp 1, 1, 0, CELADON_MART_ELEVATOR
-
- db 1 ; signs
- sign 14, 1, 5 ; CeladonMart5Text5
-
- db 4 ; objects
- object SPRITE_GENTLEMAN, 14, 5, WALK, 1, 1 ; person
- object SPRITE_SAILOR, 2, 6, STAY, NONE, 2 ; person
- object SPRITE_MART_GUY, 5, 3, STAY, DOWN, 3 ; person
- object SPRITE_MART_GUY, 6, 3, STAY, DOWN, 4 ; person
-
- ; warp-to
- warp_to 12, 1, CELADON_MART_5_WIDTH ; CELADON_MART_ROOF
- warp_to 16, 1, CELADON_MART_5_WIDTH ; CELADON_MART_4F
- warp_to 1, 1, CELADON_MART_5_WIDTH ; CELADON_MART_ELEVATOR
diff --git a/data/mapObjects/celadonmartelevator.asm b/data/mapObjects/celadonmartelevator.asm
deleted file mode 100755
index 14fca2bf..00000000
--- a/data/mapObjects/celadonmartelevator.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-CeladonMartElevatorObject:
- db $f ; border block
-
- db 2 ; warps
- warp 1, 3, 5, CELADON_MART_1
- warp 2, 3, 5, CELADON_MART_1
-
- db 1 ; signs
- sign 3, 0, 1 ; CeladonMartElevatorText1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 1, 3, CELADON_MART_ELEVATOR_WIDTH ; CELADON_MART_1F
- warp_to 2, 3, CELADON_MART_ELEVATOR_WIDTH ; CELADON_MART_1F
diff --git a/data/mapObjects/celadonmartroof.asm b/data/mapObjects/celadonmartroof.asm
deleted file mode 100755
index 744a636d..00000000
--- a/data/mapObjects/celadonmartroof.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-CeladonMartRoofObject:
- db $42 ; border block
-
- db 1 ; warps
- warp 15, 2, 0, CELADON_MART_5
-
- db 4 ; signs
- sign 10, 1, 3 ; CeladonMartRoofText3
- sign 11, 1, 4 ; CeladonMartRoofText4
- sign 12, 2, 5 ; CeladonMartRoofText5
- sign 13, 2, 6 ; CeladonMartRoofText6
-
- db 2 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 10, 4, STAY, LEFT, 1 ; person
- object SPRITE_LITTLE_GIRL, 5, 5, WALK, 0, 2 ; person
-
- ; warp-to
- warp_to 15, 2, CELADON_MART_ROOF_WIDTH ; CELADON_MART_5F
diff --git a/data/mapObjects/celadonpokecenter.asm b/data/mapObjects/celadonpokecenter.asm
deleted file mode 100755
index d4d40baa..00000000
--- a/data/mapObjects/celadonpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeladonPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 5, -1
- warp 4, 7, 5, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_GENTLEMAN, 7, 3, STAY, DOWN, 2 ; person
- object SPRITE_FOULARD_WOMAN, 10, 5, WALK, 0, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, CELADON_POKECENTER_WIDTH
- warp_to 4, 7, CELADON_POKECENTER_WIDTH
diff --git a/data/mapObjects/celadonprizeroom.asm b/data/mapObjects/celadonprizeroom.asm
deleted file mode 100755
index bdaafe02..00000000
--- a/data/mapObjects/celadonprizeroom.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeladonPrizeRoomObject:
- db $f ; border block
-
- db 2 ; warps
- warp 4, 7, 9, -1
- warp 5, 7, 9, -1
-
- db 3 ; signs
- sign 2, 2, 3 ; CeladonPrizeRoomText3
- sign 4, 2, 4 ; CeladonPrizeRoomText4
- sign 6, 2, 5 ; CeladonPrizeRoomText5
-
- db 2 ; objects
- object SPRITE_BALDING_GUY, 1, 4, STAY, NONE, 1 ; person
- object SPRITE_GAMBLER, 7, 3, WALK, 2, 2 ; person
-
- ; warp-to
- warp_to 4, 7, CELADON_PRIZE_ROOM_WIDTH
- warp_to 5, 7, CELADON_PRIZE_ROOM_WIDTH
diff --git a/data/mapObjects/ceruleancity.asm b/data/mapObjects/ceruleancity.asm
deleted file mode 100755
index 864717fc..00000000
--- a/data/mapObjects/ceruleancity.asm
+++ /dev/null
@@ -1,47 +0,0 @@
-CeruleanCityObject:
- db $a ; border block
-
- db $a ; warps
- warp 27, 11, 0, TRASHED_HOUSE
- warp 13, 15, 0, CERULEAN_HOUSE_1
- warp 19, 17, 0, CERULEAN_POKECENTER
- warp 30, 19, 0, CERULEAN_GYM
- warp 13, 25, 0, BIKE_SHOP
- warp 25, 25, 0, CERULEAN_MART
- warp 4, 11, 0, UNKNOWN_DUNGEON_1
- warp 27, 9, 2, TRASHED_HOUSE
- warp 9, 11, 1, CERULEAN_HOUSE_2
- warp 9, 9, 0, CERULEAN_HOUSE_2
-
- db 6 ; signs
- sign 23, 19, 12 ; CeruleanCityText12
- sign 17, 29, 13 ; CeruleanCityText13
- sign 26, 25, 14 ; MartSignText
- sign 20, 17, 15 ; PokeCenterSignText
- sign 11, 25, 16 ; CeruleanCityText16
- sign 27, 21, 17 ; CeruleanCityText17
-
- db 11 ; objects
- object SPRITE_BLUE, 20, 2, STAY, DOWN, 1 ; person
- object SPRITE_ROCKET, 30, 8, STAY, NONE, 2, OPP_ROCKET, 5
- object SPRITE_BLACK_HAIR_BOY_1, 31, 20, STAY, DOWN, 3 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 15, 18, WALK, 1, 4 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 9, 21, WALK, 2, 5 ; person
- object SPRITE_OFFICER_JENNY, 28, 12, STAY, DOWN, 6 ; person
- object SPRITE_LASS, 29, 26, STAY, LEFT, 7 ; person
- object SPRITE_BALL, 28, 26, STAY, DOWN, 8 ; person
- object SPRITE_LASS, 9, 27, WALK, 2, 9 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 4, 12, STAY, DOWN, 10 ; person
- object SPRITE_OFFICER_JENNY, 27, 12, STAY, DOWN, 11 ; person
-
- ; warp-to
- warp_to 27, 11, CERULEAN_CITY_WIDTH ; CERULEAN_TRASHED_HOUSE
- warp_to 13, 15, CERULEAN_CITY_WIDTH ; CERULEAN_TRADE_HOUSE
- warp_to 19, 17, CERULEAN_CITY_WIDTH ; CERULEAN_POKECENTER
- warp_to 30, 19, CERULEAN_CITY_WIDTH ; CERULEAN_GYM
- warp_to 13, 25, CERULEAN_CITY_WIDTH ; BIKE_SHOP
- warp_to 25, 25, CERULEAN_CITY_WIDTH ; CERULEAN_MART
- warp_to 4, 11, CERULEAN_CITY_WIDTH ; CERULEAN_CAVE_1F
- warp_to 27, 9, CERULEAN_CITY_WIDTH ; CERULEAN_TRASHED_HOUSE
- warp_to 9, 11, CERULEAN_CITY_WIDTH ; CERULEAN_BADGE_HOUSE
- warp_to 9, 9, CERULEAN_CITY_WIDTH ; CERULEAN_BADGE_HOUSE
diff --git a/data/mapObjects/ceruleangym.asm b/data/mapObjects/ceruleangym.asm
deleted file mode 100755
index d774c5dd..00000000
--- a/data/mapObjects/ceruleangym.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-CeruleanGymObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 13, 3, -1
- warp 5, 13, 3, -1
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_BRUNETTE_GIRL, 4, 2, STAY, DOWN, 1, OPP_MISTY, 1
- object SPRITE_LASS, 2, 3, STAY, RIGHT, 2, OPP_JR_TRAINER_F, 1
- object SPRITE_SWIMMER, 8, 7, STAY, LEFT, 3, OPP_SWIMMER, 1
- object SPRITE_GYM_HELPER, 7, 10, STAY, DOWN, 4 ; person
-
- ; warp-to
- warp_to 4, 13, CERULEAN_GYM_WIDTH
- warp_to 5, 13, CERULEAN_GYM_WIDTH
diff --git a/data/mapObjects/ceruleanhouse1.asm b/data/mapObjects/ceruleanhouse1.asm
deleted file mode 100755
index efbbebd6..00000000
--- a/data/mapObjects/ceruleanhouse1.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-CeruleanHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 1, -1
- warp 3, 7, 1, -1
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_GIRL, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_BULBASAUR, 4, 1, STAY, DOWN, 2 ; person
- object SPRITE_ODDISH, 1, 4, STAY, NONE, 3 ; person
- object SPRITE_SANDSHREW, 5, 3, STAY, LEFT, 4 ; person
-
- ; warp-to
- warp_to 2, 7, CERULEAN_HOUSE_1_WIDTH
- warp_to 3, 7, CERULEAN_HOUSE_1_WIDTH
diff --git a/data/mapObjects/ceruleanhouse2.asm b/data/mapObjects/ceruleanhouse2.asm
deleted file mode 100755
index cf54c719..00000000
--- a/data/mapObjects/ceruleanhouse2.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-CeruleanHouse2Object:
- db $c ; border block
-
- db 3 ; warps
- warp 2, 0, 9, -1
- warp 2, 7, 8, -1
- warp 3, 7, 8, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FAT_BALD_GUY, 5, 3, STAY, RIGHT, 1 ; person
-
- ; warp-to
- warp_to 2, 0, CERULEAN_HOUSE_2_WIDTH
- warp_to 2, 7, CERULEAN_HOUSE_2_WIDTH
- warp_to 3, 7, CERULEAN_HOUSE_2_WIDTH
diff --git a/data/mapObjects/ceruleanhousetrashed.asm b/data/mapObjects/ceruleanhousetrashed.asm
deleted file mode 100755
index 7b90ff73..00000000
--- a/data/mapObjects/ceruleanhousetrashed.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeruleanHouseTrashedObject:
- db $a ; border block
-
- db 3 ; warps
- warp 2, 7, 0, -1
- warp 3, 7, 0, -1
- warp 3, 0, 7, -1
-
- db 1 ; signs
- sign 3, 0, 3 ; CeruleanHouseTrashedText3
-
- db 2 ; objects
- object SPRITE_FISHER, 2, 1, STAY, DOWN, 1 ; person
- object SPRITE_GIRL, 5, 6, WALK, 2, 2 ; person
-
- ; warp-to
- warp_to 2, 7, TRASHED_HOUSE_WIDTH
- warp_to 3, 7, TRASHED_HOUSE_WIDTH
- warp_to 3, 0, TRASHED_HOUSE_WIDTH
diff --git a/data/mapObjects/ceruleanmart.asm b/data/mapObjects/ceruleanmart.asm
deleted file mode 100755
index 389e0317..00000000
--- a/data/mapObjects/ceruleanmart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-CeruleanMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 5, -1
- warp 4, 7, 5, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 3, 4, WALK, 1, 2 ; person
- object SPRITE_LASS, 6, 2, WALK, 2, 3 ; person
-
- ; warp-to
- warp_to 3, 7, CERULEAN_MART_WIDTH
- warp_to 4, 7, CERULEAN_MART_WIDTH
diff --git a/data/mapObjects/ceruleanpokecenter.asm b/data/mapObjects/ceruleanpokecenter.asm
deleted file mode 100755
index 1297e6f4..00000000
--- a/data/mapObjects/ceruleanpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeruleanPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 2, -1
- warp 4, 7, 2, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 10, 5, WALK, 0, 2 ; person
- object SPRITE_GENTLEMAN, 4, 3, STAY, UP, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, CERULEAN_POKECENTER_WIDTH
- warp_to 4, 7, CERULEAN_POKECENTER_WIDTH
diff --git a/data/mapObjects/cinnabargym.asm b/data/mapObjects/cinnabargym.asm
deleted file mode 100755
index 5de7f989..00000000
--- a/data/mapObjects/cinnabargym.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-CinnabarGymObject:
- db $2e ; border block
-
- db 2 ; warps
- warp 16, 17, 1, -1
- warp 17, 17, 1, -1
-
- db 0 ; signs
-
- db 9 ; objects
- object SPRITE_MR_MASTERBALL, 3, 3, STAY, DOWN, 1, OPP_BLAINE, 1
- object SPRITE_BLACK_HAIR_BOY_2, 17, 2, STAY, DOWN, 2, OPP_SUPER_NERD, 9
- object SPRITE_BLACK_HAIR_BOY_2, 17, 8, STAY, DOWN, 3, OPP_BURGLAR, 4
- object SPRITE_BLACK_HAIR_BOY_2, 11, 4, STAY, DOWN, 4, OPP_SUPER_NERD, 10
- object SPRITE_BLACK_HAIR_BOY_2, 11, 8, STAY, DOWN, 5, OPP_BURGLAR, 5
- object SPRITE_BLACK_HAIR_BOY_2, 11, 14, STAY, DOWN, 6, OPP_SUPER_NERD, 11
- object SPRITE_BLACK_HAIR_BOY_2, 3, 14, STAY, DOWN, 7, OPP_BURGLAR, 6
- object SPRITE_BLACK_HAIR_BOY_2, 3, 8, STAY, DOWN, 8, OPP_SUPER_NERD, 12
- object SPRITE_GYM_HELPER, 16, 13, STAY, DOWN, 9 ; person
-
- ; warp-to
- warp_to 16, 17, CINNABAR_GYM_WIDTH
- warp_to 17, 17, CINNABAR_GYM_WIDTH
diff --git a/data/mapObjects/cinnabarisland.asm b/data/mapObjects/cinnabarisland.asm
deleted file mode 100755
index 264a59f8..00000000
--- a/data/mapObjects/cinnabarisland.asm
+++ /dev/null
@@ -1,27 +0,0 @@
-CinnabarIslandObject:
- db $43 ; border block
-
- db 5 ; warps
- warp 6, 3, 1, MANSION_1
- warp 18, 3, 0, CINNABAR_GYM
- warp 6, 9, 0, CINNABAR_LAB_1
- warp 11, 11, 0, CINNABAR_POKECENTER
- warp 15, 11, 0, CINNABAR_MART
-
- db 5 ; signs
- sign 9, 5, 3 ; CinnabarIslandText3
- sign 16, 11, 4 ; MartSignText
- sign 12, 11, 5 ; PokeCenterSignText
- sign 9, 11, 6 ; CinnabarIslandText6
- sign 13, 3, 7 ; CinnabarIslandText7
-
- db 2 ; objects
- object SPRITE_GIRL, 12, 5, WALK, 2, 1 ; person
- object SPRITE_GAMBLER, 14, 6, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 6, 3, CINNABAR_ISLAND_WIDTH ; POKEMON_MANSION_1F
- warp_to 18, 3, CINNABAR_ISLAND_WIDTH ; CINNABAR_GYM
- warp_to 6, 9, CINNABAR_ISLAND_WIDTH ; CINNABAR_LAB
- warp_to 11, 11, CINNABAR_ISLAND_WIDTH ; CINNABAR_POKECENTER
- warp_to 15, 11, CINNABAR_ISLAND_WIDTH ; CINNABAR_MART
diff --git a/data/mapObjects/cinnabarmart.asm b/data/mapObjects/cinnabarmart.asm
deleted file mode 100755
index cf135039..00000000
--- a/data/mapObjects/cinnabarmart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-CinnabarMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 4, -1
- warp 4, 7, 4, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_ERIKA, 6, 2, STAY, NONE, 2 ; person
- object SPRITE_OAK_AIDE, 3, 4, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 3, 7, CINNABAR_MART_WIDTH
- warp_to 4, 7, CINNABAR_MART_WIDTH
diff --git a/data/mapObjects/cinnabarpokecenter.asm b/data/mapObjects/cinnabarpokecenter.asm
deleted file mode 100755
index 99fb3169..00000000
--- a/data/mapObjects/cinnabarpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CinnabarPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 3, -1
- warp 4, 7, 3, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_LASS, 9, 4, WALK, 0, 2 ; person
- object SPRITE_GENTLEMAN, 2, 6, STAY, NONE, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, CINNABAR_POKECENTER_WIDTH
- warp_to 4, 7, CINNABAR_POKECENTER_WIDTH
diff --git a/data/mapObjects/colosseum.asm b/data/mapObjects/colosseum.asm
deleted file mode 100644
index 1c32de2f..00000000
--- a/data/mapObjects/colosseum.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-ColosseumObject:
- db $e ; border block
-
- db 0 ; warps
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_RED, 2, 2, STAY, 0, 1 ; person
diff --git a/data/mapObjects/copycatshouse1f.asm b/data/mapObjects/copycatshouse1f.asm
deleted file mode 100755
index 4a8c2641..00000000
--- a/data/mapObjects/copycatshouse1f.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CopycatsHouse1FObject:
- db $a ; border block
-
- db 3 ; warps
- warp 2, 7, 0, -1
- warp 3, 7, 0, -1
- warp 7, 1, 0, COPYCATS_HOUSE_2F
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MOM_GEISHA, 2, 2, STAY, DOWN, 1 ; person
- object SPRITE_FAT_BALD_GUY, 5, 4, STAY, LEFT, 2 ; person
- object SPRITE_CHANSEY, 1, 4, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 2, 7, COPYCATS_HOUSE_1F_WIDTH
- warp_to 3, 7, COPYCATS_HOUSE_1F_WIDTH
- warp_to 7, 1, COPYCATS_HOUSE_1F_WIDTH ; COPYCATS_HOUSE_2F
diff --git a/data/mapObjects/copycatshouse2f.asm b/data/mapObjects/copycatshouse2f.asm
deleted file mode 100755
index 529f3416..00000000
--- a/data/mapObjects/copycatshouse2f.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CopycatsHouse2FObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 1, 2, COPYCATS_HOUSE_1F
-
- db 2 ; signs
- sign 3, 5, 6 ; CopycatsHouse2FText6
- sign 0, 1, 7 ; CopycatsHouse2FText7
-
- db 5 ; objects
- object SPRITE_BRUNETTE_GIRL, 4, 3, WALK, 0, 1 ; person
- object SPRITE_BIRD, 4, 6, WALK, 2, 2 ; person
- object SPRITE_SLOWBRO, 5, 1, STAY, DOWN, 3 ; person
- object SPRITE_BIRD, 2, 0, STAY, DOWN, 4 ; person
- object SPRITE_CLEFAIRY, 1, 6, STAY, RIGHT, 5 ; person
-
- ; warp-to
- warp_to 7, 1, COPYCATS_HOUSE_2F_WIDTH ; COPYCATS_HOUSE_1F
diff --git a/data/mapObjects/daycarem.asm b/data/mapObjects/daycarem.asm
deleted file mode 100755
index 7c10fe70..00000000
--- a/data/mapObjects/daycarem.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-DayCareMObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 4, -1
- warp 3, 7, 4, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GENTLEMAN, 2, 3, STAY, RIGHT, 1 ; person
-
- ; warp-to
- warp_to 2, 7, DAYCAREM_WIDTH
- warp_to 3, 7, DAYCAREM_WIDTH
diff --git a/data/mapObjects/diglettscave.asm b/data/mapObjects/diglettscave.asm
deleted file mode 100755
index 844bc832..00000000
--- a/data/mapObjects/diglettscave.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-DiglettsCaveObject:
- db $19 ; border block
-
- db 2 ; warps
- warp 5, 5, 2, DIGLETTS_CAVE_EXIT
- warp 37, 31, 2, DIGLETTS_CAVE_ENTRANCE
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 5, 5, DIGLETTS_CAVE_WIDTH ; DIGLETTS_CAVE_ROUTE_2
- warp_to 37, 31, DIGLETTS_CAVE_WIDTH ; DIGLETTS_CAVE_ROUTE_11
diff --git a/data/mapObjects/diglettscaveroute11.asm b/data/mapObjects/diglettscaveroute11.asm
deleted file mode 100755
index af28bfbf..00000000
--- a/data/mapObjects/diglettscaveroute11.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-DiglettsCaveEntranceRoute11Object:
- db $7d ; border block
-
- db 3 ; warps
- warp 2, 7, 4, -1
- warp 3, 7, 4, -1
- warp 4, 4, 1, DIGLETTS_CAVE
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GAMBLER, 2, 3, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 2, 7, DIGLETTS_CAVE_ENTRANCE_WIDTH
- warp_to 3, 7, DIGLETTS_CAVE_ENTRANCE_WIDTH
- warp_to 4, 4, DIGLETTS_CAVE_ENTRANCE_WIDTH ; DIGLETTS_CAVE
diff --git a/data/mapObjects/diglettscaveroute2.asm b/data/mapObjects/diglettscaveroute2.asm
deleted file mode 100755
index 645cc385..00000000
--- a/data/mapObjects/diglettscaveroute2.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-DiglettsCaveRoute2Object:
- db $7d ; border block
-
- db 3 ; warps
- warp 2, 7, 0, -1
- warp 3, 7, 0, -1
- warp 4, 4, 0, DIGLETTS_CAVE
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FISHER, 3, 3, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 2, 7, DIGLETTS_CAVE_EXIT_WIDTH
- warp_to 3, 7, DIGLETTS_CAVE_EXIT_WIDTH
- warp_to 4, 4, DIGLETTS_CAVE_EXIT_WIDTH ; DIGLETTS_CAVE
diff --git a/data/mapObjects/fanclub.asm b/data/mapObjects/fanclub.asm
deleted file mode 100755
index 9ddc6e3a..00000000
--- a/data/mapObjects/fanclub.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-FanClubObject:
- db $d ; border block
-
- db 2 ; warps
- warp 2, 7, 1, -1
- warp 3, 7, 1, -1
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_FISHER2, 6, 3, STAY, LEFT, 1 ; person
- object SPRITE_GIRL, 1, 3, STAY, RIGHT, 2 ; person
- object SPRITE_CLEFAIRY_2, 6, 4, STAY, LEFT, 3 ; person
- object SPRITE_SEEL, 1, 4, STAY, RIGHT, 4 ; person
- object SPRITE_GENTLEMAN, 3, 1, STAY, DOWN, 5 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 5, 1, STAY, DOWN, 6 ; person
-
- ; warp-to
- warp_to 2, 7, POKEMON_FAN_CLUB_WIDTH
- warp_to 3, 7, POKEMON_FAN_CLUB_WIDTH
diff --git a/data/mapObjects/fightingdojo.asm b/data/mapObjects/fightingdojo.asm
deleted file mode 100755
index b9ff9449..00000000
--- a/data/mapObjects/fightingdojo.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-FightingDojoObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 11, 1, -1
- warp 5, 11, 1, -1
-
- db 0 ; signs
-
- db 7 ; objects
- object SPRITE_HIKER, 5, 3, STAY, DOWN, 1, OPP_BLACKBELT, 1
- object SPRITE_HIKER, 3, 4, STAY, RIGHT, 2, OPP_BLACKBELT, 2
- object SPRITE_HIKER, 3, 6, STAY, RIGHT, 3, OPP_BLACKBELT, 3
- object SPRITE_HIKER, 5, 5, STAY, LEFT, 4, OPP_BLACKBELT, 4
- object SPRITE_HIKER, 5, 7, STAY, LEFT, 5, OPP_BLACKBELT, 5
- object SPRITE_BALL, 4, 1, STAY, NONE, 6 ; person
- object SPRITE_BALL, 5, 1, STAY, NONE, 7 ; person
-
- ; warp-to
- warp_to 4, 11, FIGHTING_DOJO_WIDTH
- warp_to 5, 11, FIGHTING_DOJO_WIDTH
diff --git a/data/mapObjects/fuchsiacity.asm b/data/mapObjects/fuchsiacity.asm
deleted file mode 100755
index 35f9365d..00000000
--- a/data/mapObjects/fuchsiacity.asm
+++ /dev/null
@@ -1,52 +0,0 @@
-FuchsiaCityObject:
- db $f ; border block
-
- db 9 ; warps
- warp 5, 13, 0, FUCHSIA_MART
- warp 11, 27, 0, FUCHSIA_HOUSE_1
- warp 19, 27, 0, FUCHSIA_POKECENTER
- warp 27, 27, 0, FUCHSIA_HOUSE_2
- warp 18, 3, 0, SAFARI_ZONE_ENTRANCE
- warp 5, 27, 0, FUCHSIA_GYM
- warp 22, 13, 0, FUCHSIA_MEETING_ROOM
- warp 31, 27, 1, FUCHSIA_HOUSE_3
- warp 31, 24, 0, FUCHSIA_HOUSE_3
-
- db 14 ; signs
- sign 15, 23, 11 ; FuchsiaCityText11
- sign 25, 15, 12 ; FuchsiaCityText12
- sign 17, 5, 13 ; FuchsiaCityText13
- sign 6, 13, 14 ; MartSignText
- sign 20, 27, 15 ; PokeCenterSignText
- sign 27, 29, 16 ; FuchsiaCityText16
- sign 21, 15, 17 ; FuchsiaCityText17
- sign 5, 29, 18 ; FuchsiaCityText18
- sign 33, 7, 19 ; FuchsiaCityText19
- sign 27, 7, 20 ; FuchsiaCityText20
- sign 13, 7, 21 ; FuchsiaCityText21
- sign 31, 13, 22 ; FuchsiaCityText22
- sign 13, 15, 23 ; FuchsiaCityText23
- sign 7, 7, 24 ; FuchsiaCityText24
-
- db 10 ; objects
- object SPRITE_BUG_CATCHER, 10, 12, WALK, 2, 1 ; person
- object SPRITE_GAMBLER, 28, 17, WALK, 2, 2 ; person
- object SPRITE_FISHER2, 30, 14, STAY, DOWN, 3 ; person
- object SPRITE_BUG_CATCHER, 24, 8, STAY, UP, 4 ; person
- object SPRITE_CHANSEY, 31, 5, STAY, DOWN, 5 ; person
- object SPRITE_BALL, 25, 6, STAY, NONE, 6 ; person
- object SPRITE_SLOWBRO, 12, 6, WALK, 2, 7 ; person
- object SPRITE_SLOWBRO, 30, 12, WALK, 2, 8 ; person
- object SPRITE_SEEL, 8, 17, WALK, 0, 9 ; person
- object SPRITE_OMANYTE, 6, 5, STAY, NONE, 10 ; person
-
- ; warp-to
- warp_to 5, 13, FUCHSIA_CITY_WIDTH ; FUCHSIA_MART
- warp_to 11, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_BILLS_GRANDPAS_HOUSE
- warp_to 19, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_POKECENTER
- warp_to 27, 27, FUCHSIA_CITY_WIDTH ; WARDENS_HOUSE
- warp_to 18, 3, FUCHSIA_CITY_WIDTH ; SAFARI_ZONE_GATE
- warp_to 5, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_GYM
- warp_to 22, 13, FUCHSIA_CITY_WIDTH ; FUCHSIA_MEETING_ROOM
- warp_to 31, 27, FUCHSIA_CITY_WIDTH ; FUCHSIA_GOOD_ROD_HOUSE
- warp_to 31, 24, FUCHSIA_CITY_WIDTH ; FUCHSIA_GOOD_ROD_HOUSE
diff --git a/data/mapObjects/fuchsiagym.asm b/data/mapObjects/fuchsiagym.asm
deleted file mode 100755
index 48dcc1d7..00000000
--- a/data/mapObjects/fuchsiagym.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-FuchsiaGymObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 17, 5, -1
- warp 5, 17, 5, -1
-
- db 0 ; signs
-
- db 8 ; objects
- object SPRITE_LAPRAS_GIVER, 4, 10, STAY, DOWN, 1, OPP_KOGA, 1
- object SPRITE_ROCKER, 8, 13, STAY, DOWN, 2, OPP_JUGGLER, 7
- object SPRITE_ROCKER, 7, 8, STAY, RIGHT, 3, OPP_JUGGLER, 3
- object SPRITE_ROCKER, 1, 12, STAY, DOWN, 4, OPP_JUGGLER, 8
- object SPRITE_ROCKER, 3, 5, STAY, UP, 5, OPP_TAMER, 1
- object SPRITE_ROCKER, 8, 2, STAY, DOWN, 6, OPP_TAMER, 2
- object SPRITE_ROCKER, 2, 7, STAY, LEFT, 7, OPP_JUGGLER, 4
- object SPRITE_GYM_HELPER, 7, 15, STAY, DOWN, 8 ; person
-
- ; warp-to
- warp_to 4, 17, FUCHSIA_GYM_WIDTH
- warp_to 5, 17, FUCHSIA_GYM_WIDTH
diff --git a/data/mapObjects/fuchsiahouse1.asm b/data/mapObjects/fuchsiahouse1.asm
deleted file mode 100755
index ca4638f9..00000000
--- a/data/mapObjects/fuchsiahouse1.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-FuchsiaHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 1, -1
- warp 3, 7, 1, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MOM_GEISHA, 2, 3, STAY, RIGHT, 1 ; person
- object SPRITE_GAMBLER, 7, 2, STAY, UP, 2 ; person
- object SPRITE_BUG_CATCHER, 5, 5, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 2, 7, FUCHSIA_HOUSE_1_WIDTH
- warp_to 3, 7, FUCHSIA_HOUSE_1_WIDTH
diff --git a/data/mapObjects/fuchsiahouse2.asm b/data/mapObjects/fuchsiahouse2.asm
deleted file mode 100755
index e3702594..00000000
--- a/data/mapObjects/fuchsiahouse2.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-FuchsiaHouse2Object:
- db $17 ; border block
-
- db 2 ; warps
- warp 4, 7, 3, -1
- warp 5, 7, 3, -1
-
- db 2 ; signs
- sign 4, 3, 4 ; FuchsiaHouse2Text4
- sign 5, 3, 5 ; FuchsiaHouse2Text5
-
- db 3 ; objects
- object SPRITE_WARDEN, 2, 3, STAY, NONE, 1 ; person
- object SPRITE_BALL, 8, 3, STAY, NONE, 2, RARE_CANDY
- object SPRITE_BOULDER, 8, 4, STAY, BOULDER_MOVEMENT_BYTE_2, 3 ; person
-
- ; warp-to
- warp_to 4, 7, FUCHSIA_HOUSE_2_WIDTH
- warp_to 5, 7, FUCHSIA_HOUSE_2_WIDTH
diff --git a/data/mapObjects/fuchsiahouse3.asm b/data/mapObjects/fuchsiahouse3.asm
deleted file mode 100755
index 0bed500b..00000000
--- a/data/mapObjects/fuchsiahouse3.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-FuchsiaHouse3Object:
- db $c ; border block
-
- db 3 ; warps
- warp 2, 0, 8, -1
- warp 2, 7, 7, -1
- warp 3, 7, 7, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FISHER, 5, 3, STAY, RIGHT, 1 ; person
-
- ; warp-to
- warp_to 2, 0, FUCHSIA_HOUSE_3_WIDTH
- warp_to 2, 7, FUCHSIA_HOUSE_3_WIDTH
- warp_to 3, 7, FUCHSIA_HOUSE_3_WIDTH
diff --git a/data/mapObjects/fuchsiamart.asm b/data/mapObjects/fuchsiamart.asm
deleted file mode 100755
index bfb93979..00000000
--- a/data/mapObjects/fuchsiamart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-FuchsiaMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 0, -1
- warp 4, 7, 0, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_FAT_BALD_GUY, 4, 2, STAY, NONE, 2 ; person
- object SPRITE_LASS, 6, 5, WALK, 1, 3 ; person
-
- ; warp-to
- warp_to 3, 7, FUCHSIA_MART_WIDTH
- warp_to 4, 7, FUCHSIA_MART_WIDTH
diff --git a/data/mapObjects/fuchsiameetingroom.asm b/data/mapObjects/fuchsiameetingroom.asm
deleted file mode 100755
index c6c10415..00000000
--- a/data/mapObjects/fuchsiameetingroom.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-FuchsiaMeetingRoomObject:
- db $17 ; border block
-
- db 2 ; warps
- warp 4, 7, 6, -1
- warp 5, 7, 6, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_WHITE_PLAYER, 4, 1, STAY, DOWN, 1 ; person
- object SPRITE_WHITE_PLAYER, 0, 2, STAY, UP, 2 ; person
- object SPRITE_WHITE_PLAYER, 10, 1, STAY, DOWN, 3 ; person
-
- ; warp-to
- warp_to 4, 7, FUCHSIA_MEETING_ROOM_WIDTH
- warp_to 5, 7, FUCHSIA_MEETING_ROOM_WIDTH
diff --git a/data/mapObjects/fuchsiapokecenter.asm b/data/mapObjects/fuchsiapokecenter.asm
deleted file mode 100755
index bed81891..00000000
--- a/data/mapObjects/fuchsiapokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-FuchsiaPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 2, -1
- warp 4, 7, 2, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_ROCKER, 4, 3, STAY, UP, 2 ; person
- object SPRITE_LASS, 6, 5, WALK, 2, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, FUCHSIA_POKECENTER_WIDTH
- warp_to 4, 7, FUCHSIA_POKECENTER_WIDTH
diff --git a/data/mapObjects/gary.asm b/data/mapObjects/gary.asm
deleted file mode 100755
index 10d9f0ed..00000000
--- a/data/mapObjects/gary.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-GaryObject:
- db $3 ; border block
-
- db 4 ; warps
- warp 3, 7, 1, LANCES_ROOM
- warp 4, 7, 2, LANCES_ROOM
- warp 3, 0, 0, HALL_OF_FAME
- warp 4, 0, 0, HALL_OF_FAME
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BLUE, 4, 2, STAY, DOWN, 1 ; person
- object SPRITE_OAK, 3, 7, STAY, UP, 2 ; person
-
- ; warp-to
- warp_to 3, 7, CHAMPIONS_ROOM_WIDTH ; LANCES_ROOM
- warp_to 4, 7, CHAMPIONS_ROOM_WIDTH ; LANCES_ROOM
- warp_to 3, 0, CHAMPIONS_ROOM_WIDTH ; HALL_OF_FAME
- warp_to 4, 0, CHAMPIONS_ROOM_WIDTH ; HALL_OF_FAME
diff --git a/data/mapObjects/halloffameroom.asm b/data/mapObjects/halloffameroom.asm
deleted file mode 100755
index a815a053..00000000
--- a/data/mapObjects/halloffameroom.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-HallofFameRoomObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 7, 2, CHAMPIONS_ROOM
- warp 5, 7, 3, CHAMPIONS_ROOM
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_OAK, 5, 2, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 4, 7, HALL_OF_FAME_WIDTH ; CHAMPIONS_ROOM
- warp_to 5, 7, HALL_OF_FAME_WIDTH ; CHAMPIONS_ROOM
diff --git a/data/mapObjects/indigoplateau.asm b/data/mapObjects/indigoplateau.asm
deleted file mode 100755
index d18f25e1..00000000
--- a/data/mapObjects/indigoplateau.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-IndigoPlateauObject:
- db $e ; border block
-
- db 2 ; warps
- warp 9, 5, 0, INDIGO_PLATEAU_LOBBY
- warp 10, 5, 0, INDIGO_PLATEAU_LOBBY
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 9, 5, INDIGO_PLATEAU_WIDTH ; INDIGO_PLATEAU_LOBBY
- warp_to 10, 5, INDIGO_PLATEAU_WIDTH ; INDIGO_PLATEAU_LOBBY
diff --git a/data/mapObjects/indigoplateaulobby.asm b/data/mapObjects/indigoplateaulobby.asm
deleted file mode 100755
index bb5895ac..00000000
--- a/data/mapObjects/indigoplateaulobby.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-IndigoPlateauLobbyObject:
- db $0 ; border block
-
- db 3 ; warps
- warp 7, 11, 0, -1
- warp 8, 11, 1, -1
- warp 8, 0, 0, LORELEIS_ROOM
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_NURSE, 7, 5, STAY, DOWN, 1 ; person
- object SPRITE_GYM_HELPER, 4, 9, STAY, RIGHT, 2 ; person
- object SPRITE_LASS, 5, 1, STAY, DOWN, 3 ; person
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 4 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 13, 6, STAY, DOWN, 5 ; person
- object SPRITE_CHANSEY, 8, 5, STAY, DOWN, 6 ; person
-
- ; warp-to
- warp_to 7, 11, INDIGO_PLATEAU_LOBBY_WIDTH
- warp_to 8, 11, INDIGO_PLATEAU_LOBBY_WIDTH
- warp_to 8, 0, INDIGO_PLATEAU_LOBBY_WIDTH ; LORELEIS_ROOM
diff --git a/data/mapObjects/lab1.asm b/data/mapObjects/lab1.asm
deleted file mode 100755
index b9eea581..00000000
--- a/data/mapObjects/lab1.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-Lab1Object:
- db $17 ; border block
-
- db 5 ; warps
- warp 2, 7, 2, -1
- warp 3, 7, 2, -1
- warp 8, 4, 0, CINNABAR_LAB_2
- warp 12, 4, 0, CINNABAR_LAB_3
- warp 16, 4, 0, CINNABAR_LAB_4
-
- db 4 ; signs
- sign 3, 2, 2 ; Lab1Text2
- sign 9, 4, 3 ; Lab1Text3
- sign 13, 4, 4 ; Lab1Text4
- sign 17, 4, 5 ; Lab1Text5
-
- db 1 ; objects
- object SPRITE_FISHER, 1, 3, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 2, 7, CINNABAR_LAB_1_WIDTH
- warp_to 3, 7, CINNABAR_LAB_1_WIDTH
- warp_to 8, 4, CINNABAR_LAB_1_WIDTH ; CINNABAR_LAB_2
- warp_to 12, 4, CINNABAR_LAB_1_WIDTH ; CINNABAR_LAB_3
- warp_to 16, 4, CINNABAR_LAB_1_WIDTH ; CINNABAR_LAB_4
diff --git a/data/mapObjects/lab2.asm b/data/mapObjects/lab2.asm
deleted file mode 100755
index 3062fcae..00000000
--- a/data/mapObjects/lab2.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-Lab2Object:
- db $17 ; border block
-
- db 2 ; warps
- warp 2, 7, 2, CINNABAR_LAB_1
- warp 3, 7, 2, CINNABAR_LAB_1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 3, 2, STAY, DOWN, 1 ; person
- object SPRITE_OLD_PERSON, 1, 4, STAY, NONE, 2 ; person
- object SPRITE_FOULARD_WOMAN, 5, 5, STAY, UP, 3 ; person
-
- ; warp-to
- warp_to 2, 7, CINNABAR_LAB_2_WIDTH ; CINNABAR_LAB_1
- warp_to 3, 7, CINNABAR_LAB_2_WIDTH ; CINNABAR_LAB_1
diff --git a/data/mapObjects/lab3.asm b/data/mapObjects/lab3.asm
deleted file mode 100755
index 73ba321d..00000000
--- a/data/mapObjects/lab3.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Lab3Object:
- db $17 ; border block
-
- db 2 ; warps
- warp 2, 7, 3, CINNABAR_LAB_1
- warp 3, 7, 3, CINNABAR_LAB_1
-
- db 3 ; signs
- sign 0, 4, 3 ; Lab3Text3
- sign 1, 4, 4 ; Lab3Text4
- sign 2, 1, 5 ; Lab3Text5
-
- db 2 ; objects
- object SPRITE_OAK_AIDE, 7, 2, STAY, DOWN, 1 ; person
- object SPRITE_OAK_AIDE, 2, 3, WALK, 2, 2 ; person
-
- ; warp-to
- warp_to 2, 7, CINNABAR_LAB_3_WIDTH ; CINNABAR_LAB_1
- warp_to 3, 7, CINNABAR_LAB_3_WIDTH ; CINNABAR_LAB_1
diff --git a/data/mapObjects/lab4.asm b/data/mapObjects/lab4.asm
deleted file mode 100755
index b9956f5f..00000000
--- a/data/mapObjects/lab4.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-Lab4Object:
- db $17 ; border block
-
- db 2 ; warps
- warp 2, 7, 4, CINNABAR_LAB_1
- warp 3, 7, 4, CINNABAR_LAB_1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_OAK_AIDE, 5, 2, WALK, 2, 1 ; person
- object SPRITE_OAK_AIDE, 7, 6, STAY, UP, 2 ; person
-
- ; warp-to
- warp_to 2, 7, CINNABAR_LAB_4_WIDTH ; CINNABAR_LAB_1
- warp_to 3, 7, CINNABAR_LAB_4_WIDTH ; CINNABAR_LAB_1
diff --git a/data/mapObjects/lance.asm b/data/mapObjects/lance.asm
deleted file mode 100755
index 77c0058c..00000000
--- a/data/mapObjects/lance.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-LanceObject:
- db $3 ; border block
-
- db 3 ; warps
- warp 24, 16, 2, AGATHAS_ROOM
- warp 5, 0, 0, CHAMPIONS_ROOM
- warp 6, 0, 0, CHAMPIONS_ROOM
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_LANCE, 6, 1, STAY, DOWN, 1, OPP_LANCE, 1
-
- ; warp-to
- warp_to 24, 16, LANCES_ROOM_WIDTH ; AGATHAS_ROOM
- warp_to 5, 0, LANCES_ROOM_WIDTH ; CHAMPIONS_ROOM
- warp_to 6, 0, LANCES_ROOM_WIDTH ; CHAMPIONS_ROOM
diff --git a/data/mapObjects/lavenderhouse1.asm b/data/mapObjects/lavenderhouse1.asm
deleted file mode 100755
index d9b61302..00000000
--- a/data/mapObjects/lavenderhouse1.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-LavenderHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 2, -1
- warp 3, 7, 2, -1
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 3, 5, STAY, NONE, 1 ; person
- object SPRITE_LITTLE_GIRL, 6, 3, STAY, DOWN, 2 ; person
- object SPRITE_SLOWBRO, 6, 4, STAY, UP, 3 ; person
- object SPRITE_SLOWBRO, 1, 3, STAY, NONE, 4 ; person
- object SPRITE_MR_FUJI, 3, 1, STAY, NONE, 5 ; person
- object SPRITE_BOOK_MAP_DEX, 3, 3, STAY, NONE, 6 ; person
-
- ; warp-to
- warp_to 2, 7, LAVENDER_HOUSE_1_WIDTH
- warp_to 3, 7, LAVENDER_HOUSE_1_WIDTH
diff --git a/data/mapObjects/lavenderhouse2.asm b/data/mapObjects/lavenderhouse2.asm
deleted file mode 100755
index 6d900f45..00000000
--- a/data/mapObjects/lavenderhouse2.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-LavenderHouse2Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 4, -1
- warp 3, 7, 4, -1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_SLOWBRO, 3, 5, STAY, UP, 1 ; person
- object SPRITE_BRUNETTE_GIRL, 2, 4, STAY, RIGHT, 2 ; person
-
- ; warp-to
- warp_to 2, 7, LAVENDER_HOUSE_2_WIDTH
- warp_to 3, 7, LAVENDER_HOUSE_2_WIDTH
diff --git a/data/mapObjects/lavendermart.asm b/data/mapObjects/lavendermart.asm
deleted file mode 100755
index 6661fee9..00000000
--- a/data/mapObjects/lavendermart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-LavenderMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 3, -1
- warp 4, 7, 3, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_BALDING_GUY, 3, 4, STAY, NONE, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 7, 2, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 3, 7, LAVENDER_MART_WIDTH
- warp_to 4, 7, LAVENDER_MART_WIDTH
diff --git a/data/mapObjects/lavenderpokecenter.asm b/data/mapObjects/lavenderpokecenter.asm
deleted file mode 100755
index 38b5a00e..00000000
--- a/data/mapObjects/lavenderpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-LavenderPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 0, -1
- warp 4, 7, 0, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_GENTLEMAN, 5, 3, STAY, NONE, 2 ; person
- object SPRITE_LITTLE_GIRL, 10, 5, WALK, 2, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, LAVENDER_POKECENTER_WIDTH
- warp_to 4, 7, LAVENDER_POKECENTER_WIDTH
diff --git a/data/mapObjects/lavendertown.asm b/data/mapObjects/lavendertown.asm
deleted file mode 100755
index c694d763..00000000
--- a/data/mapObjects/lavendertown.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-LavenderTownObject:
- db $2c ; border block
-
- db 6 ; warps
- warp 3, 5, 0, LAVENDER_POKECENTER
- warp 14, 5, 0, POKEMONTOWER_1
- warp 7, 9, 0, LAVENDER_HOUSE_1
- warp 15, 13, 0, LAVENDER_MART
- warp 3, 13, 0, LAVENDER_HOUSE_2
- warp 7, 13, 0, NAME_RATERS_HOUSE
-
- db 6 ; signs
- sign 11, 9, 4 ; LavenderTownText4
- sign 9, 3, 5 ; LavenderTownText5
- sign 16, 13, 6 ; MartSignText
- sign 4, 5, 7 ; PokeCenterSignText
- sign 5, 9, 8 ; LavenderTownText8
- sign 17, 7, 9 ; LavenderTownText9
-
- db 3 ; objects
- object SPRITE_LITTLE_GIRL, 15, 9, WALK, 0, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 9, 10, STAY, NONE, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 8, 7, WALK, 2, 3 ; person
-
- ; warp-to
- warp_to 3, 5, LAVENDER_TOWN_WIDTH ; LAVENDER_POKECENTER
- warp_to 14, 5, LAVENDER_TOWN_WIDTH ; POKEMON_TOWER_1F
- warp_to 7, 9, LAVENDER_TOWN_WIDTH ; MR_FUJIS_HOUSE
- warp_to 15, 13, LAVENDER_TOWN_WIDTH ; LAVENDER_MART
- warp_to 3, 13, LAVENDER_TOWN_WIDTH ; LAVENDER_CUBONE_HOUSE
- warp_to 7, 13, LAVENDER_TOWN_WIDTH ; NAME_RATERS_HOUSE
diff --git a/data/mapObjects/lorelei.asm b/data/mapObjects/lorelei.asm
deleted file mode 100755
index e5f0f9f2..00000000
--- a/data/mapObjects/lorelei.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-LoreleiObject:
- db $3 ; border block
-
- db 4 ; warps
- warp 4, 11, 2, INDIGO_PLATEAU_LOBBY
- warp 5, 11, 2, INDIGO_PLATEAU_LOBBY
- warp 4, 0, 0, BRUNOS_ROOM
- warp 5, 0, 1, BRUNOS_ROOM
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_LORELEI, 5, 2, STAY, DOWN, 1, OPP_LORELEI, 1
-
- ; warp-to
- warp_to 4, 11, LORELEIS_ROOM_WIDTH ; INDIGO_PLATEAU_LOBBY
- warp_to 5, 11, LORELEIS_ROOM_WIDTH ; INDIGO_PLATEAU_LOBBY
- warp_to 4, 0, LORELEIS_ROOM_WIDTH ; BRUNOS_ROOM
- warp_to 5, 0, LORELEIS_ROOM_WIDTH ; BRUNOS_ROOM
diff --git a/data/mapObjects/mansion1.asm b/data/mapObjects/mansion1.asm
deleted file mode 100755
index 1b97c898..00000000
--- a/data/mapObjects/mansion1.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-Mansion1Object:
- db $2e ; border block
-
- db 8 ; warps
- warp 4, 27, 0, -1
- warp 5, 27, 0, -1
- warp 6, 27, 0, -1
- warp 7, 27, 0, -1
- warp 5, 10, 0, MANSION_2
- warp 21, 23, 0, MANSION_4
- warp 26, 27, 0, -1
- warp 27, 27, 0, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_OAK_AIDE, 17, 17, STAY, LEFT, 1, OPP_SCIENTIST, 4
- object SPRITE_BALL, 14, 3, STAY, NONE, 2, ESCAPE_ROPE
- object SPRITE_BALL, 18, 21, STAY, NONE, 3, CARBOS
-
- ; warp-to
- warp_to 4, 27, MANSION_1_WIDTH
- warp_to 5, 27, MANSION_1_WIDTH
- warp_to 6, 27, MANSION_1_WIDTH
- warp_to 7, 27, MANSION_1_WIDTH
- warp_to 5, 10, MANSION_1_WIDTH ; POKEMON_MANSION_2F
- warp_to 21, 23, MANSION_1_WIDTH ; POKEMON_MANSION_B1F
- warp_to 26, 27, MANSION_1_WIDTH
- warp_to 27, 27, MANSION_1_WIDTH
diff --git a/data/mapObjects/mansion2.asm b/data/mapObjects/mansion2.asm
deleted file mode 100755
index 6fd86b97..00000000
--- a/data/mapObjects/mansion2.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-Mansion2Object:
- db $1 ; border block
-
- db 4 ; warps
- warp 5, 10, 4, MANSION_1
- warp 7, 10, 0, MANSION_3
- warp 25, 14, 2, MANSION_3
- warp 6, 1, 1, MANSION_3
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 3, 17, WALK, 2, 1, OPP_BURGLAR, 7
- object SPRITE_BALL, 28, 7, STAY, NONE, 2, CALCIUM
- object SPRITE_BOOK_MAP_DEX, 18, 2, STAY, NONE, 3 ; person
- object SPRITE_BOOK_MAP_DEX, 3, 22, STAY, NONE, 4 ; person
-
- ; warp-to
- warp_to 5, 10, MANSION_2_WIDTH ; POKEMON_MANSION_1F
- warp_to 7, 10, MANSION_2_WIDTH ; POKEMON_MANSION_3F
- warp_to 25, 14, MANSION_2_WIDTH ; POKEMON_MANSION_3F
- warp_to 6, 1, MANSION_2_WIDTH ; POKEMON_MANSION_3F
diff --git a/data/mapObjects/mansion3.asm b/data/mapObjects/mansion3.asm
deleted file mode 100755
index 54fbfa75..00000000
--- a/data/mapObjects/mansion3.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Mansion3Object:
- db $1 ; border block
-
- db 3 ; warps
- warp 7, 10, 1, MANSION_2
- warp 6, 1, 3, MANSION_2
- warp 25, 14, 2, MANSION_2
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 5, 11, WALK, 2, 1, OPP_BURGLAR, 8
- object SPRITE_OAK_AIDE, 20, 11, STAY, LEFT, 2, OPP_SCIENTIST, 12
- object SPRITE_BALL, 1, 16, STAY, NONE, 3, MAX_POTION
- object SPRITE_BALL, 25, 5, STAY, NONE, 4, IRON
- object SPRITE_BOOK_MAP_DEX, 6, 12, STAY, NONE, 5 ; person
-
- ; warp-to
- warp_to 7, 10, MANSION_3_WIDTH ; POKEMON_MANSION_2F
- warp_to 6, 1, MANSION_3_WIDTH ; POKEMON_MANSION_2F
- warp_to 25, 14, MANSION_3_WIDTH ; POKEMON_MANSION_2F
diff --git a/data/mapObjects/mansion4.asm b/data/mapObjects/mansion4.asm
deleted file mode 100755
index bcd85206..00000000
--- a/data/mapObjects/mansion4.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-Mansion4Object:
- db $1 ; border block
-
- db 1 ; warps
- warp 23, 22, 5, MANSION_1
-
- db 0 ; signs
-
- db 8 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 16, 23, STAY, NONE, 1, OPP_BURGLAR, 9
- object SPRITE_OAK_AIDE, 27, 11, STAY, DOWN, 2, OPP_SCIENTIST, 13
- object SPRITE_BALL, 10, 2, STAY, NONE, 3, RARE_CANDY
- object SPRITE_BALL, 1, 22, STAY, NONE, 4, FULL_RESTORE
- object SPRITE_BALL, 19, 25, STAY, NONE, 5, TM_14
- object SPRITE_BALL, 5, 4, STAY, NONE, 6, TM_22
- object SPRITE_BOOK_MAP_DEX, 16, 20, STAY, NONE, 7 ; person
- object SPRITE_BALL, 5, 13, STAY, NONE, 8, SECRET_KEY
-
- ; warp-to
- warp_to 23, 22, MANSION_4_WIDTH ; POKEMON_MANSION_1F
diff --git a/data/mapObjects/mtmoon1.asm b/data/mapObjects/mtmoon1.asm
deleted file mode 100755
index 0215d821..00000000
--- a/data/mapObjects/mtmoon1.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-MtMoon1Object:
- db $3 ; border block
-
- db 5 ; warps
- warp 14, 35, 1, -1
- warp 15, 35, 1, -1
- warp 5, 5, 0, MT_MOON_2
- warp 17, 11, 2, MT_MOON_2
- warp 25, 15, 3, MT_MOON_2
-
- db 1 ; signs
- sign 15, 23, 14 ; MtMoon1Text14
-
- db 13 ; objects
- object SPRITE_HIKER, 5, 6, STAY, DOWN, 1, OPP_HIKER, 1
- object SPRITE_BUG_CATCHER, 12, 16, STAY, RIGHT, 2, OPP_YOUNGSTER, 3
- object SPRITE_LASS, 30, 4, STAY, DOWN, 3, OPP_LASS, 5
- object SPRITE_BLACK_HAIR_BOY_2, 24, 31, STAY, UP, 4, OPP_SUPER_NERD, 1
- object SPRITE_LASS, 16, 23, STAY, DOWN, 5, OPP_LASS, 6
- object SPRITE_BUG_CATCHER, 7, 22, STAY, DOWN, 6, OPP_BUG_CATCHER, 7
- object SPRITE_BUG_CATCHER, 30, 27, STAY, RIGHT, 7, OPP_BUG_CATCHER, 8
- object SPRITE_BALL, 2, 20, STAY, NONE, 8, POTION
- object SPRITE_BALL, 2, 2, STAY, NONE, 9, MOON_STONE
- object SPRITE_BALL, 35, 31, STAY, NONE, 10, RARE_CANDY
- object SPRITE_BALL, 36, 23, STAY, NONE, 11, ESCAPE_ROPE
- object SPRITE_BALL, 20, 33, STAY, NONE, 12, POTION
- object SPRITE_BALL, 5, 32, STAY, NONE, 13, TM_12
-
- ; warp-to
- warp_to 14, 35, MT_MOON_1_WIDTH
- warp_to 15, 35, MT_MOON_1_WIDTH
- warp_to 5, 5, MT_MOON_1_WIDTH ; MT_MOON_B1F
- warp_to 17, 11, MT_MOON_1_WIDTH ; MT_MOON_B1F
- warp_to 25, 15, MT_MOON_1_WIDTH ; MT_MOON_B1F
diff --git a/data/mapObjects/mtmoon2.asm b/data/mapObjects/mtmoon2.asm
deleted file mode 100755
index ee56e471..00000000
--- a/data/mapObjects/mtmoon2.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-MtMoon2Object:
- db $3 ; border block
-
- db 8 ; warps
- warp 5, 5, 2, MT_MOON_1
- warp 17, 11, 0, MT_MOON_3
- warp 25, 9, 3, MT_MOON_1
- warp 25, 15, 4, MT_MOON_1
- warp 21, 17, 1, MT_MOON_3
- warp 13, 27, 2, MT_MOON_3
- warp 23, 3, 3, MT_MOON_3
- warp 27, 3, 2, -1
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 5, 5, MT_MOON_2_WIDTH ; MT_MOON_1F
- warp_to 17, 11, MT_MOON_2_WIDTH ; MT_MOON_B2F
- warp_to 25, 9, MT_MOON_2_WIDTH ; MT_MOON_1F
- warp_to 25, 15, MT_MOON_2_WIDTH ; MT_MOON_1F
- warp_to 21, 17, MT_MOON_2_WIDTH ; MT_MOON_B2F
- warp_to 13, 27, MT_MOON_2_WIDTH ; MT_MOON_B2F
- warp_to 23, 3, MT_MOON_2_WIDTH ; MT_MOON_B2F
- warp_to 27, 3, MT_MOON_2_WIDTH
diff --git a/data/mapObjects/mtmoon3.asm b/data/mapObjects/mtmoon3.asm
deleted file mode 100755
index f76a3e26..00000000
--- a/data/mapObjects/mtmoon3.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-MtMoon3Object:
- db $3 ; border block
-
- db 4 ; warps
- warp 25, 9, 1, MT_MOON_2
- warp 21, 17, 4, MT_MOON_2
- warp 15, 27, 5, MT_MOON_2
- warp 5, 7, 6, MT_MOON_2
-
- db 0 ; signs
-
- db 10 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 12, 8, STAY, RIGHT, 1, OPP_SUPER_NERD, 2
- object SPRITE_JESSIE, 9, 3, STAY, LEFT, 2
- object SPRITE_ROCKET, 15, 22, STAY, DOWN, 3, OPP_ROCKET, 2
- object SPRITE_ROCKET, 29, 11, STAY, UP, 4, OPP_ROCKET, 3
- object SPRITE_ROCKET, 29, 17, STAY, LEFT, 5, OPP_ROCKET, 1
- object SPRITE_JAMES, 9, 4, STAY, LEFT, 6
- object SPRITE_OMANYTE, 12, 6, STAY, NONE, 7 ; person
- object SPRITE_OMANYTE, 13, 6, STAY, NONE, 8 ; person
- object SPRITE_BALL, 25, 21, STAY, NONE, 9, HP_UP
- object SPRITE_BALL, 29, 5, STAY, NONE, 10, TM_01
-
- ; warp-to
- warp_to 25, 9, MT_MOON_3_WIDTH ; MT_MOON_2
- warp_to 21, 17, MT_MOON_3_WIDTH ; MT_MOON_2
- warp_to 15, 27, MT_MOON_3_WIDTH ; MT_MOON_2
- warp_to 5, 7, MT_MOON_3_WIDTH ; MT_MOON_2
diff --git a/data/mapObjects/mtmoonpokecenter.asm b/data/mapObjects/mtmoonpokecenter.asm
deleted file mode 100755
index 7469efa8..00000000
--- a/data/mapObjects/mtmoonpokecenter.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-MtMoonPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 0, -1
- warp 4, 7, 0, -1
-
- db 0 ; signs
-
- db 7 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_BUG_CATCHER, 4, 3, STAY, UP, 2 ; person
- object SPRITE_GENTLEMAN, 7, 3, STAY, UP, 3 ; person
- object SPRITE_FAT_BALD_GUY, 10, 6, WALK, 2, 4 ; person
- object SPRITE_CLIPBOARD, 7, 2, STAY, NONE, 5 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 6 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 7 ; person
-
- ; warp-to
- warp_to 3, 7, MT_MOON_POKECENTER_WIDTH
- warp_to 4, 7, MT_MOON_POKECENTER_WIDTH
diff --git a/data/mapObjects/museum1f.asm b/data/mapObjects/museum1f.asm
deleted file mode 100755
index 3034dc74..00000000
--- a/data/mapObjects/museum1f.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-Museum1FObject:
- db $a ; border block
-
- db 5 ; warps
- warp 10, 7, 0, -1
- warp 11, 7, 0, -1
- warp 16, 7, 1, -1
- warp 17, 7, 1, -1
- warp 7, 7, 0, MUSEUM_2F
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_OAK_AIDE, 12, 4, STAY, LEFT, 1 ; person
- object SPRITE_GAMBLER, 1, 4, STAY, NONE, 2 ; person
- object SPRITE_OAK_AIDE, 15, 2, STAY, DOWN, 3 ; person
- object SPRITE_OAK_AIDE, 17, 4, STAY, NONE, 4 ; person
- object SPRITE_OLD_AMBER, 16, 2, STAY, NONE, 5 ; person
-
- ; warp-to
- warp_to 10, 7, MUSEUM_1F_WIDTH
- warp_to 11, 7, MUSEUM_1F_WIDTH
- warp_to 16, 7, MUSEUM_1F_WIDTH
- warp_to 17, 7, MUSEUM_1F_WIDTH
- warp_to 7, 7, MUSEUM_1F_WIDTH ; MUSEUM_2F
diff --git a/data/mapObjects/museum2f.asm b/data/mapObjects/museum2f.asm
deleted file mode 100755
index 11fad941..00000000
--- a/data/mapObjects/museum2f.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Museum2FObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 7, 4, MUSEUM_1F
-
- db 2 ; signs
- sign 11, 2, 6 ; Museum2FText6
- sign 2, 5, 7 ; Museum2FText7
-
- db 5 ; objects
- object SPRITE_BUG_CATCHER, 1, 7, WALK, 2, 1 ; person
- object SPRITE_OLD_PERSON, 0, 5, STAY, DOWN, 2 ; person
- object SPRITE_OAK_AIDE, 7, 5, STAY, DOWN, 3 ; person
- object SPRITE_BRUNETTE_GIRL, 11, 5, STAY, NONE, 4 ; person
- object SPRITE_HIKER, 12, 5, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 7, 7, MUSEUM_2F_WIDTH ; MUSEUM_1F
diff --git a/data/mapObjects/namerater.asm b/data/mapObjects/namerater.asm
deleted file mode 100755
index 10487f0b..00000000
--- a/data/mapObjects/namerater.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-NameRaterObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 5, -1
- warp 3, 7, 5, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_MR_MASTERBALL, 5, 3, STAY, LEFT, 1 ; person
-
- ; warp-to
- warp_to 2, 7, NAME_RATERS_HOUSE_WIDTH
- warp_to 3, 7, NAME_RATERS_HOUSE_WIDTH
diff --git a/data/mapObjects/oakslab.asm b/data/mapObjects/oakslab.asm
deleted file mode 100755
index 8595d81c..00000000
--- a/data/mapObjects/oakslab.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-OaksLabObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 11, 2, -1
- warp 5, 11, 2, -1
-
- db 0 ; signs
-
- db 9 ; objects
- object SPRITE_BLUE, 4, 3, STAY, NONE, 1, OPP_SONY1, 1
- object SPRITE_BALL, 7, 3, STAY, NONE, 2 ; person
- object SPRITE_OAK, 5, 2, STAY, DOWN, 3 ; person
- object SPRITE_BOOK_MAP_DEX, 2, 1, STAY, NONE, 4 ; person
- object SPRITE_BOOK_MAP_DEX, 3, 1, STAY, NONE, 5 ; person
- object SPRITE_OAK, 5, 10, STAY, UP, 6 ; person
- object SPRITE_GIRL, 1, 9, WALK, 1, 7 ; person
- object SPRITE_OAK_AIDE, 2, 10, STAY, NONE, 8 ; person
- object SPRITE_OAK_AIDE, 8, 10, STAY, NONE, 9 ; person
-
- ; warp-to
- warp_to 4, 11, OAKS_LAB_WIDTH
- warp_to 5, 11, OAKS_LAB_WIDTH
diff --git a/data/mapObjects/pallettown.asm b/data/mapObjects/pallettown.asm
deleted file mode 100755
index ce6c80da..00000000
--- a/data/mapObjects/pallettown.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-PalletTownObject:
- db $b ; border block
-
- db 3 ; warps
- warp 5, 5, 0, REDS_HOUSE_1F
- warp 13, 5, 0, BLUES_HOUSE
- warp 12, 11, 1, OAKS_LAB
-
- db 4 ; signs
- sign 13, 13, 4 ; PalletTownText4
- sign 7, 9, 5 ; PalletTownText5
- sign 3, 5, 6 ; PalletTownText6
- sign 11, 5, 7 ; PalletTownText7
-
- db 3 ; objects
- object SPRITE_OAK, 10, 4, STAY, NONE, 1 ; person
- object SPRITE_GIRL, 3, 8, WALK, 0, 2 ; person
- object SPRITE_FISHER2, 11, 14, WALK, 0, 3 ; person
-
- ; warp-to
- warp_to 5, 5, PALLET_TOWN_WIDTH ; REDS_HOUSE_1F
- warp_to 13, 5, PALLET_TOWN_WIDTH ; BLUES_HOUSE
- warp_to 12, 11, PALLET_TOWN_WIDTH ; OAKS_LAB
diff --git a/data/mapObjects/pewtercity.asm b/data/mapObjects/pewtercity.asm
deleted file mode 100755
index 8ad183dc..00000000
--- a/data/mapObjects/pewtercity.asm
+++ /dev/null
@@ -1,36 +0,0 @@
-PewterCityObject:
- db $a ; border block
-
- db 7 ; warps
- warp 14, 7, 0, MUSEUM_1F
- warp 19, 5, 2, MUSEUM_1F
- warp 16, 17, 0, PEWTER_GYM
- warp 29, 13, 0, PEWTER_HOUSE_1
- warp 23, 17, 0, PEWTER_MART
- warp 7, 29, 0, PEWTER_HOUSE_2
- warp 13, 25, 0, PEWTER_POKECENTER
-
- db 7 ; signs
- sign 19, 29, 6 ; PewterCityText6
- sign 33, 19, 7 ; PewterCityText7
- sign 24, 17, 8 ; MartSignText
- sign 14, 25, 9 ; PokeCenterSignText
- sign 15, 9, 10 ; PewterCityText10
- sign 11, 17, 11 ; PewterCityText11
- sign 25, 23, 12 ; PewterCityText12
-
- db 5 ; objects
- object SPRITE_LASS, 8, 15, STAY, NONE, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 17, 25, STAY, NONE, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 27, 17, STAY, NONE, 3 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 26, 25, WALK, 2, 4 ; person
- object SPRITE_BUG_CATCHER, 35, 16, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 14, 7, PEWTER_CITY_WIDTH ; MUSEUM_1F
- warp_to 19, 5, PEWTER_CITY_WIDTH ; MUSEUM_1F
- warp_to 16, 17, PEWTER_CITY_WIDTH ; PEWTER_GYM
- warp_to 29, 13, PEWTER_CITY_WIDTH ; PEWTER_NIDORAN_HOUSE
- warp_to 23, 17, PEWTER_CITY_WIDTH ; PEWTER_MART
- warp_to 7, 29, PEWTER_CITY_WIDTH ; PEWTER_SPEECH_HOUSE
- warp_to 13, 25, PEWTER_CITY_WIDTH ; PEWTER_POKECENTER
diff --git a/data/mapObjects/pewtergym.asm b/data/mapObjects/pewtergym.asm
deleted file mode 100755
index fc571f26..00000000
--- a/data/mapObjects/pewtergym.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-PewterGymObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 13, 2, -1
- warp 5, 13, 2, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 4, 1, STAY, DOWN, 1, OPP_BROCK, 1
- object SPRITE_BLACK_HAIR_BOY_1, 3, 6, STAY, RIGHT, 2, OPP_JR_TRAINER_M, 1
- object SPRITE_GYM_HELPER, 7, 10, STAY, DOWN, 3 ; person
-
- ; warp-to
- warp_to 4, 13, PEWTER_GYM_WIDTH
- warp_to 5, 13, PEWTER_GYM_WIDTH
diff --git a/data/mapObjects/pewterhouse1.asm b/data/mapObjects/pewterhouse1.asm
deleted file mode 100755
index 63abe6b3..00000000
--- a/data/mapObjects/pewterhouse1.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-PewterHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 3, -1
- warp 3, 7, 3, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_SLOWBRO, 4, 5, STAY, LEFT, 1 ; person
- object SPRITE_YOUNG_BOY, 3, 5, STAY, RIGHT, 2 ; person
- object SPRITE_FAT_BALD_GUY, 1, 2, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 2, 7, PEWTER_HOUSE_1_WIDTH
- warp_to 3, 7, PEWTER_HOUSE_1_WIDTH
diff --git a/data/mapObjects/pewterhouse2.asm b/data/mapObjects/pewterhouse2.asm
deleted file mode 100755
index 48cb243d..00000000
--- a/data/mapObjects/pewterhouse2.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-PewterHouse2Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 5, -1
- warp 3, 7, 5, -1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_GAMBLER, 2, 3, STAY, RIGHT, 1 ; person
- object SPRITE_BUG_CATCHER, 4, 5, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 2, 7, PEWTER_HOUSE_2_WIDTH
- warp_to 3, 7, PEWTER_HOUSE_2_WIDTH
diff --git a/data/mapObjects/pewtermart.asm b/data/mapObjects/pewtermart.asm
deleted file mode 100755
index e79952c9..00000000
--- a/data/mapObjects/pewtermart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-PewterMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 4, -1
- warp 4, 7, 4, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_BUG_CATCHER, 3, 3, WALK, 1, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 5, 5, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 3, 7, PEWTER_MART_WIDTH
- warp_to 4, 7, PEWTER_MART_WIDTH
diff --git a/data/mapObjects/pewterpokecenter.asm b/data/mapObjects/pewterpokecenter.asm
deleted file mode 100755
index 9370cc16..00000000
--- a/data/mapObjects/pewterpokecenter.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-PewterPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 6, -1
- warp 4, 7, 6, -1
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_GENTLEMAN, 11, 7, STAY, LEFT, 2 ; person
- object SPRITE_JIGGLYPUFF, 1, 3, STAY, DOWN, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_LASS, 4, 3, STAY, UP, 5 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 6 ; person
-
- ; warp-to
- warp_to 3, 7, PEWTER_POKECENTER_WIDTH
- warp_to 4, 7, PEWTER_POKECENTER_WIDTH
diff --git a/data/mapObjects/pokemontower1.asm b/data/mapObjects/pokemontower1.asm
deleted file mode 100755
index e29867ac..00000000
--- a/data/mapObjects/pokemontower1.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-PokemonTower1Object:
- db $1 ; border block
-
- db 3 ; warps
- warp 10, 17, 1, -1
- warp 11, 17, 1, -1
- warp 18, 9, 1, POKEMONTOWER_2
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_CABLE_CLUB_WOMAN, 15, 13, STAY, UP, 1 ; person
- object SPRITE_MOM_GEISHA, 6, 8, STAY, NONE, 2 ; person
- object SPRITE_BALDING_GUY, 8, 12, STAY, NONE, 3 ; person
- object SPRITE_GIRL, 13, 7, STAY, NONE, 4 ; person
- object SPRITE_MEDIUM, 17, 7, STAY, LEFT, 5 ; person
-
- ; warp-to
- warp_to 10, 17, POKEMONTOWER_1_WIDTH
- warp_to 11, 17, POKEMONTOWER_1_WIDTH
- warp_to 18, 9, POKEMONTOWER_1_WIDTH ; POKEMON_TOWER_2F
diff --git a/data/mapObjects/pokemontower2.asm b/data/mapObjects/pokemontower2.asm
deleted file mode 100755
index 96223a26..00000000
--- a/data/mapObjects/pokemontower2.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-PokemonTower2Object:
- db $1 ; border block
-
- db 2 ; warps
- warp 3, 9, 0, POKEMONTOWER_3
- warp 18, 9, 2, POKEMONTOWER_1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BLUE, 14, 5, STAY, NONE, 1 ; person
- object SPRITE_MEDIUM, 3, 7, STAY, RIGHT, 2 ; person
-
- ; warp-to
- warp_to 3, 9, POKEMONTOWER_2_WIDTH ; POKEMON_TOWER_3F
- warp_to 18, 9, POKEMONTOWER_2_WIDTH ; POKEMON_TOWER_1F
diff --git a/data/mapObjects/pokemontower3.asm b/data/mapObjects/pokemontower3.asm
deleted file mode 100755
index f8151f00..00000000
--- a/data/mapObjects/pokemontower3.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-PokemonTower3Object:
- db $1 ; border block
-
- db 2 ; warps
- warp 3, 9, 0, POKEMONTOWER_2
- warp 18, 9, 1, POKEMONTOWER_4
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_MEDIUM, 12, 3, STAY, LEFT, 1, OPP_CHANNELER, 5
- object SPRITE_MEDIUM, 9, 8, STAY, DOWN, 2, OPP_CHANNELER, 6
- object SPRITE_MEDIUM, 10, 13, STAY, DOWN, 3, OPP_CHANNELER, 8
- object SPRITE_BALL, 12, 1, STAY, NONE, 4, ESCAPE_ROPE
-
- ; warp-to
- warp_to 3, 9, POKEMONTOWER_3_WIDTH ; POKEMON_TOWER_2F
- warp_to 18, 9, POKEMONTOWER_3_WIDTH ; POKEMON_TOWER_4F
diff --git a/data/mapObjects/pokemontower4.asm b/data/mapObjects/pokemontower4.asm
deleted file mode 100755
index a6723d5f..00000000
--- a/data/mapObjects/pokemontower4.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-PokemonTower4Object:
- db $1 ; border block
-
- db 2 ; warps
- warp 3, 9, 0, POKEMONTOWER_5
- warp 18, 9, 1, POKEMONTOWER_3
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_MEDIUM, 5, 10, STAY, RIGHT, 1, OPP_CHANNELER, 9
- object SPRITE_MEDIUM, 15, 7, STAY, DOWN, 2, OPP_CHANNELER, 10
- object SPRITE_MEDIUM, 14, 12, STAY, LEFT, 3, OPP_CHANNELER, 12
- object SPRITE_BALL, 12, 10, STAY, NONE, 4, ELIXER
- object SPRITE_BALL, 9, 10, STAY, NONE, 5, AWAKENING
- object SPRITE_BALL, 12, 16, STAY, NONE, 6, HP_UP
-
- ; warp-to
- warp_to 3, 9, POKEMONTOWER_4_WIDTH ; POKEMON_TOWER_5F
- warp_to 18, 9, POKEMONTOWER_4_WIDTH ; POKEMON_TOWER_3F
diff --git a/data/mapObjects/pokemontower5.asm b/data/mapObjects/pokemontower5.asm
deleted file mode 100755
index da550fe2..00000000
--- a/data/mapObjects/pokemontower5.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-PokemonTower5Object:
- db $1 ; border block
-
- db 2 ; warps
- warp 3, 9, 0, POKEMONTOWER_4
- warp 18, 9, 0, POKEMONTOWER_6
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_MEDIUM, 12, 8, STAY, NONE, 1 ; person
- object SPRITE_MEDIUM, 17, 7, STAY, LEFT, 2, OPP_CHANNELER, 14
- object SPRITE_MEDIUM, 14, 3, STAY, LEFT, 3, OPP_CHANNELER, 16
- object SPRITE_MEDIUM, 6, 10, STAY, RIGHT, 4, OPP_CHANNELER, 17
- object SPRITE_MEDIUM, 9, 16, STAY, RIGHT, 5, OPP_CHANNELER, 18
- object SPRITE_BALL, 6, 14, STAY, NONE, 6, NUGGET
-
- ; warp-to
- warp_to 3, 9, POKEMONTOWER_5_WIDTH ; POKEMON_TOWER_4F
- warp_to 18, 9, POKEMONTOWER_5_WIDTH ; POKEMON_TOWER_6F
diff --git a/data/mapObjects/pokemontower6.asm b/data/mapObjects/pokemontower6.asm
deleted file mode 100755
index 1d2ecdd3..00000000
--- a/data/mapObjects/pokemontower6.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-PokemonTower6Object:
- db $1 ; border block
-
- db 2 ; warps
- warp 18, 9, 1, POKEMONTOWER_5
- warp 9, 16, 0, POKEMONTOWER_7
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_MEDIUM, 12, 10, STAY, RIGHT, 1, OPP_CHANNELER, 19
- object SPRITE_MEDIUM, 9, 5, STAY, DOWN, 2, OPP_CHANNELER, 20
- object SPRITE_MEDIUM, 16, 5, STAY, LEFT, 3, OPP_CHANNELER, 21
- object SPRITE_BALL, 6, 8, STAY, NONE, 4, RARE_CANDY
- object SPRITE_BALL, 14, 14, STAY, NONE, 5, X_ACCURACY
-
- ; warp-to
- warp_to 18, 9, POKEMONTOWER_6_WIDTH ; POKEMON_TOWER_5F
- warp_to 9, 16, POKEMONTOWER_6_WIDTH ; POKEMON_TOWER_7F
diff --git a/data/mapObjects/pokemontower7.asm b/data/mapObjects/pokemontower7.asm
deleted file mode 100755
index 67adcd69..00000000
--- a/data/mapObjects/pokemontower7.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-PokemonTower7Object:
- db $1 ; border block
-
- db 1 ; warps
- warp 9, 16, 1, POKEMONTOWER_6
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_JESSIE, 10, 8, STAY, DOWN, 1
- object SPRITE_JAMES, 11, 8, STAY, DOWN, 2
- object SPRITE_MR_FUJI, 10, 3, STAY, DOWN, 3
-
- ; warp-to
- warp_to 9, 16, POKEMONTOWER_7_WIDTH ; POKEMONTOWER_6
diff --git a/data/mapObjects/powerplant.asm b/data/mapObjects/powerplant.asm
deleted file mode 100755
index 402f899f..00000000
--- a/data/mapObjects/powerplant.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-PowerPlantObject:
- db $2e ; border block
-
- db 3 ; warps
- warp 4, 35, 3, -1
- warp 5, 35, 3, -1
- warp 0, 11, 3, -1
-
- db 0 ; signs
-
- db 14 ; objects
- object SPRITE_BALL, 9, 20, STAY, NONE, 1, VOLTORB, 40
- object SPRITE_BALL, 32, 18, STAY, NONE, 2, VOLTORB, 40
- object SPRITE_BALL, 21, 25, STAY, NONE, 3, VOLTORB, 40
- object SPRITE_BALL, 25, 18, STAY, NONE, 4, ELECTRODE, 43
- object SPRITE_BALL, 23, 34, STAY, NONE, 5, VOLTORB, 40
- object SPRITE_BALL, 26, 28, STAY, NONE, 6, VOLTORB, 40
- object SPRITE_BALL, 21, 14, STAY, NONE, 7, ELECTRODE, 43
- object SPRITE_BALL, 37, 32, STAY, NONE, 8, VOLTORB, 40
- object SPRITE_BIRD, 4, 9, STAY, UP, 9, ZAPDOS, 50
- object SPRITE_BALL, 7, 25, STAY, NONE, 10, CARBOS
- object SPRITE_BALL, 28, 3, STAY, NONE, 11, HP_UP
- object SPRITE_BALL, 34, 3, STAY, NONE, 12, RARE_CANDY
- object SPRITE_BALL, 26, 32, STAY, NONE, 13, TM_25
- object SPRITE_BALL, 20, 32, STAY, NONE, 14, TM_33
-
- ; warp-to
- warp_to 4, 35, POWER_PLANT_WIDTH
- warp_to 5, 35, POWER_PLANT_WIDTH
- warp_to 0, 11, POWER_PLANT_WIDTH
diff --git a/data/mapObjects/redshouse1f.asm b/data/mapObjects/redshouse1f.asm
deleted file mode 100755
index c70ee1f6..00000000
--- a/data/mapObjects/redshouse1f.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-RedsHouse1FObject:
- db $0A ; border block
-
- db 3 ; warps
- warp 2, 7, 0, -1 ; exit1
- warp 3, 7, 0, -1 ; exit2
- warp 7, 1, 0, REDS_HOUSE_2F ; staircase
-
- db 1 ; signs
- sign 3, 1, 2 ; TV
-
- db 1 ; objects
- object SPRITE_MOM, 5, 4, STAY, LEFT, 1 ; Mom
-
- ; warp-to
- warp_to 2, 7, REDS_HOUSE_1F_WIDTH
- warp_to 3, 7, REDS_HOUSE_1F_WIDTH
- warp_to 7, 1, REDS_HOUSE_1F_WIDTH
diff --git a/data/mapObjects/redshouse2f.asm b/data/mapObjects/redshouse2f.asm
deleted file mode 100755
index ec13e99c..00000000
--- a/data/mapObjects/redshouse2f.asm
+++ /dev/null
@@ -1,12 +0,0 @@
-RedsHouse2FObject:
- db $0A ; border block
-
- db 1 ; warps
- warp 7, 1, 2, REDS_HOUSE_1F
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 7, 1, REDS_HOUSE_2F_WIDTH
diff --git a/data/mapObjects/rockethideout1.asm b/data/mapObjects/rockethideout1.asm
deleted file mode 100755
index 14bed205..00000000
--- a/data/mapObjects/rockethideout1.asm
+++ /dev/null
@@ -1,27 +0,0 @@
-RocketHideout1Object:
- db $2e ; border block
-
- db 5 ; warps
- warp 23, 2, 0, ROCKET_HIDEOUT_2
- warp 21, 2, 2, GAME_CORNER
- warp 24, 19, 0, ROCKET_HIDEOUT_ELEVATOR
- warp 21, 24, 3, ROCKET_HIDEOUT_2
- warp 25, 19, 1, ROCKET_HIDEOUT_ELEVATOR
-
- db 0 ; signs
-
- db 7 ; objects
- object SPRITE_ROCKET, 26, 8, STAY, LEFT, 1, OPP_ROCKET, 8
- object SPRITE_ROCKET, 12, 6, STAY, RIGHT, 2, OPP_ROCKET, 9
- object SPRITE_ROCKET, 18, 17, STAY, DOWN, 3, OPP_ROCKET, 10
- object SPRITE_ROCKET, 15, 25, STAY, RIGHT, 4, OPP_ROCKET, 11
- object SPRITE_ROCKET, 28, 18, STAY, LEFT, 5, OPP_ROCKET, 12
- object SPRITE_BALL, 11, 14, STAY, NONE, 6, ESCAPE_ROPE
- object SPRITE_BALL, 9, 17, STAY, NONE, 7, HYPER_POTION
-
- ; warp-to
- warp_to 23, 2, ROCKET_HIDEOUT_1_WIDTH ; ROCKET_HIDEOUT_B2F
- warp_to 21, 2, ROCKET_HIDEOUT_1_WIDTH ; GAME_CORNER
- warp_to 24, 19, ROCKET_HIDEOUT_1_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
- warp_to 21, 24, ROCKET_HIDEOUT_1_WIDTH ; ROCKET_HIDEOUT_B2F
- warp_to 25, 19, ROCKET_HIDEOUT_1_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/rockethideout2.asm b/data/mapObjects/rockethideout2.asm
deleted file mode 100755
index 3c3d4277..00000000
--- a/data/mapObjects/rockethideout2.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-RocketHideout2Object:
- db $2e ; border block
-
- db 5 ; warps
- warp 27, 8, 0, ROCKET_HIDEOUT_1
- warp 21, 8, 0, ROCKET_HIDEOUT_3
- warp 24, 19, 0, ROCKET_HIDEOUT_ELEVATOR
- warp 21, 22, 3, ROCKET_HIDEOUT_1
- warp 25, 19, 1, ROCKET_HIDEOUT_ELEVATOR
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_ROCKET, 20, 12, STAY, DOWN, 1, OPP_ROCKET, 13
- object SPRITE_BALL, 1, 11, STAY, NONE, 2, MOON_STONE
- object SPRITE_BALL, 16, 8, STAY, NONE, 3, NUGGET
- object SPRITE_BALL, 6, 12, STAY, NONE, 4, TM_07
- object SPRITE_BALL, 3, 21, STAY, NONE, 5, SUPER_POTION
-
- ; warp-to
- warp_to 27, 8, ROCKET_HIDEOUT_2_WIDTH ; ROCKET_HIDEOUT_B1F
- warp_to 21, 8, ROCKET_HIDEOUT_2_WIDTH ; ROCKET_HIDEOUT_B3F
- warp_to 24, 19, ROCKET_HIDEOUT_2_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
- warp_to 21, 22, ROCKET_HIDEOUT_2_WIDTH ; ROCKET_HIDEOUT_B1F
- warp_to 25, 19, ROCKET_HIDEOUT_2_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/rockethideout3.asm b/data/mapObjects/rockethideout3.asm
deleted file mode 100755
index 690724b0..00000000
--- a/data/mapObjects/rockethideout3.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-RocketHideout3Object:
- db $2e ; border block
-
- db 2 ; warps
- warp 25, 6, 1, ROCKET_HIDEOUT_2
- warp 19, 18, 0, ROCKET_HIDEOUT_4
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_ROCKET, 10, 22, STAY, RIGHT, 1, OPP_ROCKET, 14
- object SPRITE_ROCKET, 26, 12, STAY, UP, 2, OPP_ROCKET, 15
- object SPRITE_BALL, 26, 17, STAY, NONE, 3, TM_10
- object SPRITE_BALL, 20, 14, STAY, NONE, 4, RARE_CANDY
-
- ; warp-to
- warp_to 25, 6, ROCKET_HIDEOUT_3_WIDTH ; ROCKET_HIDEOUT_B2F
- warp_to 19, 18, ROCKET_HIDEOUT_3_WIDTH ; ROCKET_HIDEOUT_B4F
diff --git a/data/mapObjects/rockethideout4.asm b/data/mapObjects/rockethideout4.asm
deleted file mode 100755
index 60998c61..00000000
--- a/data/mapObjects/rockethideout4.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-RocketHideout4Object:
- db $2e ; border block
-
- db 3 ; warps
- warp 19, 10, 1, ROCKET_HIDEOUT_3
- warp 24, 15, 0, ROCKET_HIDEOUT_ELEVATOR
- warp 25, 15, 1, ROCKET_HIDEOUT_ELEVATOR
-
- db 0 ; signs
-
- db 9 ; objects
- object SPRITE_GIOVANNI, 25, 3, STAY, DOWN, 1, OPP_GIOVANNI, 1
- object SPRITE_JAMES, 25, 10, STAY, DOWN, 2
- object SPRITE_JESSIE, 24, 10, STAY, DOWN, 3
- object SPRITE_ROCKET, 11, 2, STAY, DOWN, 4, OPP_ROCKET, 18
- object SPRITE_BALL, 10, 12, STAY, NONE, 5, HP_UP
- object SPRITE_BALL, 9, 4, STAY, NONE, 6, TM_02
- object SPRITE_BALL, 12, 20, STAY, NONE, 7, IRON
- object SPRITE_BALL, 25, 2, STAY, NONE, 8, SILPH_SCOPE
- object SPRITE_BALL, 10, 2, STAY, NONE, 9, LIFT_KEY
-
- ; warp-to
- warp_to 19, 10, ROCKET_HIDEOUT_4_WIDTH ; ROCKET_HIDEOUT_3
- warp_to 24, 15, ROCKET_HIDEOUT_4_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
- warp_to 25, 15, ROCKET_HIDEOUT_4_WIDTH ; ROCKET_HIDEOUT_ELEVATOR
diff --git a/data/mapObjects/rockethideoutelevator.asm b/data/mapObjects/rockethideoutelevator.asm
deleted file mode 100755
index 3c17e7e4..00000000
--- a/data/mapObjects/rockethideoutelevator.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-RocketHideoutElevatorObject:
- db $f ; border block
-
- db 2 ; warps
- warp 2, 1, 2, ROCKET_HIDEOUT_1
- warp 3, 1, 4, ROCKET_HIDEOUT_1
-
- db 1 ; signs
- sign 1, 1, 1 ; RocketHideoutElevatorText1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 2, 1, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; ROCKET_HIDEOUT_B1F
- warp_to 3, 1, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; ROCKET_HIDEOUT_B1F
diff --git a/data/mapObjects/rocktunnel1.asm b/data/mapObjects/rocktunnel1.asm
deleted file mode 100755
index 310c4792..00000000
--- a/data/mapObjects/rocktunnel1.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-RockTunnel1Object:
- db $3 ; border block
-
- db 8 ; warps
- warp 15, 3, 1, -1
- warp 15, 0, 1, -1
- warp 15, 33, 2, -1
- warp 15, 35, 2, -1
- warp 37, 3, 0, ROCK_TUNNEL_2
- warp 5, 3, 1, ROCK_TUNNEL_2
- warp 17, 11, 2, ROCK_TUNNEL_2
- warp 37, 17, 3, ROCK_TUNNEL_2
-
- db 1 ; signs
- sign 11, 29, 8 ; RockTunnel1Text8
-
- db 7 ; objects
- object SPRITE_HIKER, 7, 5, STAY, DOWN, 1, OPP_HIKER, 12
- object SPRITE_HIKER, 5, 16, STAY, DOWN, 2, OPP_HIKER, 13
- object SPRITE_HIKER, 17, 15, STAY, LEFT, 3, OPP_HIKER, 14
- object SPRITE_BLACK_HAIR_BOY_2, 23, 8, STAY, LEFT, 4, OPP_POKEMANIAC, 7
- object SPRITE_LASS, 37, 21, STAY, LEFT, 5, OPP_JR_TRAINER_F, 17
- object SPRITE_LASS, 22, 24, STAY, DOWN, 6, OPP_JR_TRAINER_F, 18
- object SPRITE_LASS, 32, 24, STAY, RIGHT, 7, OPP_JR_TRAINER_F, 19
-
- ; warp-to
- warp_to 15, 3, ROCK_TUNNEL_1_WIDTH
- warp_to 15, 0, ROCK_TUNNEL_1_WIDTH
- warp_to 15, 33, ROCK_TUNNEL_1_WIDTH
- warp_to 15, 35, ROCK_TUNNEL_1_WIDTH
- warp_to 37, 3, ROCK_TUNNEL_1_WIDTH ; ROCK_TUNNEL_B1F
- warp_to 5, 3, ROCK_TUNNEL_1_WIDTH ; ROCK_TUNNEL_B1F
- warp_to 17, 11, ROCK_TUNNEL_1_WIDTH ; ROCK_TUNNEL_B1F
- warp_to 37, 17, ROCK_TUNNEL_1_WIDTH ; ROCK_TUNNEL_B1F
diff --git a/data/mapObjects/rocktunnel2.asm b/data/mapObjects/rocktunnel2.asm
deleted file mode 100755
index 1a3201a4..00000000
--- a/data/mapObjects/rocktunnel2.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-RockTunnel2Object:
- db $3 ; border block
-
- db 4 ; warps
- warp 33, 25, 4, ROCK_TUNNEL_1
- warp 27, 3, 5, ROCK_TUNNEL_1
- warp 23, 11, 6, ROCK_TUNNEL_1
- warp 3, 3, 7, ROCK_TUNNEL_1
-
- db 0 ; signs
-
- db 8 ; objects
- object SPRITE_LASS, 11, 13, STAY, DOWN, 1, OPP_JR_TRAINER_F, 9
- object SPRITE_HIKER, 6, 10, STAY, DOWN, 2, OPP_HIKER, 9
- object SPRITE_BLACK_HAIR_BOY_2, 3, 5, STAY, DOWN, 3, OPP_POKEMANIAC, 3
- object SPRITE_BLACK_HAIR_BOY_2, 20, 21, STAY, RIGHT, 4, OPP_POKEMANIAC, 4
- object SPRITE_HIKER, 30, 10, STAY, DOWN, 5, OPP_HIKER, 10
- object SPRITE_LASS, 14, 28, STAY, RIGHT, 6, OPP_JR_TRAINER_F, 10
- object SPRITE_HIKER, 33, 5, STAY, RIGHT, 7, OPP_HIKER, 11
- object SPRITE_BLACK_HAIR_BOY_2, 26, 30, STAY, DOWN, 8, OPP_POKEMANIAC, 5
-
- ; warp-to
- warp_to 33, 25, ROCK_TUNNEL_2_WIDTH ; ROCK_TUNNEL_1F
- warp_to 27, 3, ROCK_TUNNEL_2_WIDTH ; ROCK_TUNNEL_1F
- warp_to 23, 11, ROCK_TUNNEL_2_WIDTH ; ROCK_TUNNEL_1F
- warp_to 3, 3, ROCK_TUNNEL_2_WIDTH ; ROCK_TUNNEL_1F
diff --git a/data/mapObjects/rocktunnelpokecenter.asm b/data/mapObjects/rocktunnelpokecenter.asm
deleted file mode 100755
index f2d429b7..00000000
--- a/data/mapObjects/rocktunnelpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-RockTunnelPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 0, -1
- warp 4, 7, 0, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_GENTLEMAN, 7, 3, STAY, DOWN, 2 ; person
- object SPRITE_FISHER2, 2, 5, STAY, NONE, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, ROCK_TUNNEL_POKECENTER_WIDTH
- warp_to 4, 7, ROCK_TUNNEL_POKECENTER_WIDTH
diff --git a/data/mapObjects/route1.asm b/data/mapObjects/route1.asm
deleted file mode 100755
index 26505ea6..00000000
--- a/data/mapObjects/route1.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-Route1Object:
- db $b ; border block
-
- db 0 ; warps
-
- db 1 ; signs
- sign 9, 27, 3 ; Route1Text3
-
- db 2 ; objects
- object SPRITE_BUG_CATCHER, 5, 24, WALK, 1, 1 ; person
- object SPRITE_BUG_CATCHER, 15, 13, WALK, 2, 2 ; person
-
- ; warp-to (unused)
- warp_to 2, 7, 4
diff --git a/data/mapObjects/route10.asm b/data/mapObjects/route10.asm
deleted file mode 100755
index 40d5c93a..00000000
--- a/data/mapObjects/route10.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-Route10Object:
- db $2c ; border block
-
- db 4 ; warps
- warp 11, 19, 0, ROCK_TUNNEL_POKECENTER
- warp 8, 17, 0, ROCK_TUNNEL_1
- warp 8, 53, 2, ROCK_TUNNEL_1
- warp 6, 39, 0, POWER_PLANT
-
- db 4 ; signs
- sign 7, 19, 7 ; Route10Text7
- sign 12, 19, 8 ; PokeCenterSignText
- sign 9, 55, 9 ; Route10Text9
- sign 5, 41, 10 ; Route10Text10
-
- db 6 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 10, 44, STAY, LEFT, 1, OPP_POKEMANIAC, 1
- object SPRITE_HIKER, 3, 57, STAY, UP, 2, OPP_HIKER, 7
- object SPRITE_BLACK_HAIR_BOY_2, 14, 64, STAY, LEFT, 3, OPP_POKEMANIAC, 2
- object SPRITE_LASS, 7, 25, STAY, LEFT, 4, OPP_JR_TRAINER_F, 7
- object SPRITE_HIKER, 3, 61, STAY, DOWN, 5, OPP_HIKER, 8
- object SPRITE_LASS, 7, 54, STAY, DOWN, 6, OPP_JR_TRAINER_F, 8
-
- ; warp-to
- warp_to 11, 19, ROUTE_10_WIDTH ; ROCK_TUNNEL_POKECENTER
- warp_to 8, 17, ROUTE_10_WIDTH ; ROCK_TUNNEL_1F
- warp_to 8, 53, ROUTE_10_WIDTH ; ROCK_TUNNEL_1F
- warp_to 6, 39, ROUTE_10_WIDTH ; POWER_PLANT
diff --git a/data/mapObjects/route11.asm b/data/mapObjects/route11.asm
deleted file mode 100755
index f2bbb01b..00000000
--- a/data/mapObjects/route11.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-Route11Object:
- db $f ; border block
-
- db 5 ; warps
- warp 49, 8, 0, ROUTE_11_GATE_1F
- warp 49, 9, 0, ROUTE_11_GATE_1F
- warp 58, 8, 2, ROUTE_11_GATE_1F
- warp 58, 9, 2, ROUTE_11_GATE_1F
- warp 4, 5, 0, DIGLETTS_CAVE_ENTRANCE
-
- db 1 ; signs
- sign 1, 5, 11 ; Route11Text11
-
- db 10 ; objects
- object SPRITE_GAMBLER, 10, 14, STAY, DOWN, 1, OPP_GAMBLER, 1
- object SPRITE_GAMBLER, 26, 9, STAY, DOWN, 2, OPP_GAMBLER, 2
- object SPRITE_BUG_CATCHER, 13, 5, STAY, LEFT, 3, OPP_YOUNGSTER, 9
- object SPRITE_BLACK_HAIR_BOY_2, 36, 11, STAY, DOWN, 4, OPP_ENGINEER, 2
- object SPRITE_BUG_CATCHER, 22, 4, STAY, UP, 5, OPP_YOUNGSTER, 10
- object SPRITE_GAMBLER, 45, 7, STAY, DOWN, 6, OPP_GAMBLER, 3
- object SPRITE_GAMBLER, 33, 3, STAY, UP, 7, OPP_GAMBLER, 4
- object SPRITE_BUG_CATCHER, 43, 5, STAY, RIGHT, 8, OPP_YOUNGSTER, 11
- object SPRITE_BLACK_HAIR_BOY_2, 45, 16, STAY, LEFT, 9, OPP_ENGINEER, 3
- object SPRITE_BUG_CATCHER, 22, 12, STAY, UP, 10, OPP_YOUNGSTER, 12
-
- ; warp-to
- warp_to 49, 8, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
- warp_to 49, 9, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
- warp_to 58, 8, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
- warp_to 58, 9, ROUTE_11_WIDTH ; ROUTE_11_GATE_1F
- warp_to 4, 5, ROUTE_11_WIDTH ; DIGLETTS_CAVE_ROUTE_11
diff --git a/data/mapObjects/route11gate.asm b/data/mapObjects/route11gate.asm
deleted file mode 100755
index fa627963..00000000
--- a/data/mapObjects/route11gate.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route11GateObject:
- db $a ; border block
-
- db 5 ; warps
- warp 0, 4, 0, -1
- warp 0, 5, 1, -1
- warp 7, 4, 2, -1
- warp 7, 5, 3, -1
- warp 6, 8, 0, ROUTE_11_GATE_2F
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 4, 1, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 0, 4, ROUTE_11_GATE_1F_WIDTH
- warp_to 0, 5, ROUTE_11_GATE_1F_WIDTH
- warp_to 7, 4, ROUTE_11_GATE_1F_WIDTH
- warp_to 7, 5, ROUTE_11_GATE_1F_WIDTH
- warp_to 6, 8, ROUTE_11_GATE_1F_WIDTH ; ROUTE_11_GATE_2F
diff --git a/data/mapObjects/route11gateupstairs.asm b/data/mapObjects/route11gateupstairs.asm
deleted file mode 100755
index e112c685..00000000
--- a/data/mapObjects/route11gateupstairs.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-Route11GateUpstairsObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 7, 4, ROUTE_11_GATE_1F
-
- db 2 ; signs
- sign 1, 2, 3 ; Route11GateUpstairsText3
- sign 6, 2, 4 ; Route11GateUpstairsText4
-
- db 2 ; objects
- object SPRITE_BUG_CATCHER, 4, 2, WALK, 2, 1 ; person
- object SPRITE_OAK_AIDE, 2, 6, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 7, 7, ROUTE_11_GATE_2F_WIDTH ; ROUTE_11_GATE_1F
diff --git a/data/mapObjects/route12.asm b/data/mapObjects/route12.asm
deleted file mode 100755
index 394bae3d..00000000
--- a/data/mapObjects/route12.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-Route12Object:
- db $43 ; border block
-
- db 4 ; warps
- warp 10, 15, 0, ROUTE_12_GATE_1F
- warp 11, 15, 0, ROUTE_12_GATE_1F
- warp 10, 21, 2, ROUTE_12_GATE_1F
- warp 11, 77, 0, ROUTE_12_HOUSE
-
- db 2 ; signs
- sign 13, 13, 11 ; Route12Text11
- sign 11, 63, 12 ; Route12Text12
-
- db 10 ; objects
- object SPRITE_SNORLAX, 10, 62, STAY, DOWN, 1 ; person
- object SPRITE_FISHER2, 14, 31, STAY, LEFT, 2, OPP_FISHER, 3
- object SPRITE_FISHER2, 5, 39, STAY, UP, 3, OPP_FISHER, 4
- object SPRITE_BLACK_HAIR_BOY_1, 11, 92, STAY, LEFT, 4, OPP_JR_TRAINER_M, 9
- object SPRITE_BLACK_HAIR_BOY_2, 14, 76, STAY, UP, 5, OPP_ROCKER, 2
- object SPRITE_FISHER2, 12, 40, STAY, LEFT, 6, OPP_FISHER, 5
- object SPRITE_FISHER2, 9, 52, STAY, RIGHT, 7, OPP_FISHER, 6
- object SPRITE_FISHER2, 6, 87, STAY, DOWN, 8, OPP_FISHER, 11
- object SPRITE_BALL, 14, 35, STAY, NONE, 9, TM_16
- object SPRITE_BALL, 5, 89, STAY, NONE, 10, IRON
-
- ; warp-to
- warp_to 10, 15, ROUTE_12_WIDTH ; ROUTE_12_GATE_1F
- warp_to 11, 15, ROUTE_12_WIDTH ; ROUTE_12_GATE_1F
- warp_to 10, 21, ROUTE_12_WIDTH ; ROUTE_12_GATE_1F
- warp_to 11, 77, ROUTE_12_WIDTH ; ROUTE_12_SUPER_ROD_HOUSE
diff --git a/data/mapObjects/route12gate.asm b/data/mapObjects/route12gate.asm
deleted file mode 100755
index bbfab54c..00000000
--- a/data/mapObjects/route12gate.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route12GateObject:
- db $a ; border block
-
- db 5 ; warps
- warp 4, 0, 0, -1
- warp 5, 0, 1, -1
- warp 4, 7, 2, -1
- warp 5, 7, 2, -1
- warp 8, 6, 0, ROUTE_12_GATE_2F
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 1, 3, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 4, 0, ROUTE_12_GATE_1F_WIDTH
- warp_to 5, 0, ROUTE_12_GATE_1F_WIDTH
- warp_to 4, 7, ROUTE_12_GATE_1F_WIDTH
- warp_to 5, 7, ROUTE_12_GATE_1F_WIDTH
- warp_to 8, 6, ROUTE_12_GATE_1F_WIDTH ; ROUTE_12_GATE_2F
diff --git a/data/mapObjects/route12gateupstairs.asm b/data/mapObjects/route12gateupstairs.asm
deleted file mode 100755
index 9351ebac..00000000
--- a/data/mapObjects/route12gateupstairs.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-Route12GateUpstairsObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 7, 4, ROUTE_12_GATE_1F
-
- db 2 ; signs
- sign 1, 2, 2 ; Route12GateUpstairsText2
- sign 6, 2, 3 ; Route12GateUpstairsText3
-
- db 1 ; objects
- object SPRITE_BRUNETTE_GIRL, 3, 4, WALK, 1, 1 ; person
-
- ; warp-to
- warp_to 7, 7, ROUTE_12_GATE_2F_WIDTH ; ROUTE_12_GATE_1F
diff --git a/data/mapObjects/route12house.asm b/data/mapObjects/route12house.asm
deleted file mode 100755
index 3161ebe6..00000000
--- a/data/mapObjects/route12house.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-Route12HouseObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 3, -1
- warp 3, 7, 3, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FISHER, 2, 4, STAY, RIGHT, 1 ; person
-
- ; warp-to
- warp_to 2, 7, ROUTE_12_HOUSE_WIDTH
- warp_to 3, 7, ROUTE_12_HOUSE_WIDTH
diff --git a/data/mapObjects/route13.asm b/data/mapObjects/route13.asm
deleted file mode 100755
index b2a40c2c..00000000
--- a/data/mapObjects/route13.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route13Object:
- db $43 ; border block
-
- db 0 ; warps
-
- db 3 ; signs
- sign 15, 13, 11 ; Route13Text11
- sign 33, 5, 12 ; Route13Text12
- sign 31, 11, 13 ; Route13Text13
-
- db 10 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 49, 10, STAY, RIGHT, 1, OPP_BIRD_KEEPER, 1
- object SPRITE_LASS, 48, 10, STAY, DOWN, 2, OPP_JR_TRAINER_F, 12
- object SPRITE_LASS, 27, 9, STAY, DOWN, 3, OPP_JR_TRAINER_F, 13
- object SPRITE_LASS, 23, 10, STAY, LEFT, 4, OPP_JR_TRAINER_F, 14
- object SPRITE_LASS, 50, 5, STAY, DOWN, 5, OPP_JR_TRAINER_F, 15
- object SPRITE_BLACK_HAIR_BOY_1, 12, 4, STAY, RIGHT, 6, OPP_BIRD_KEEPER, 2
- object SPRITE_FOULARD_WOMAN, 33, 6, STAY, DOWN, 7, OPP_BEAUTY, 4
- object SPRITE_FOULARD_WOMAN, 32, 6, STAY, DOWN, 8, OPP_BEAUTY, 5
- object SPRITE_BIKER, 10, 7, STAY, UP, 9, OPP_BIKER, 1
- object SPRITE_BLACK_HAIR_BOY_1, 7, 13, STAY, UP, 10, OPP_BIRD_KEEPER, 3
diff --git a/data/mapObjects/route14.asm b/data/mapObjects/route14.asm
deleted file mode 100755
index 9694715b..00000000
--- a/data/mapObjects/route14.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route14Object:
- db $43 ; border block
-
- db 0 ; warps
-
- db 1 ; signs
- sign 17, 13, 11 ; Route14Text11
-
- db 10 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 4, 4, STAY, DOWN, 1, OPP_BIRD_KEEPER, 14
- object SPRITE_BLACK_HAIR_BOY_1, 15, 6, STAY, DOWN, 2, OPP_BIRD_KEEPER, 15
- object SPRITE_BLACK_HAIR_BOY_1, 12, 11, STAY, DOWN, 3, OPP_BIRD_KEEPER, 16
- object SPRITE_BLACK_HAIR_BOY_1, 14, 15, STAY, UP, 4, OPP_BIRD_KEEPER, 17
- object SPRITE_BLACK_HAIR_BOY_1, 15, 31, STAY, LEFT, 5, OPP_BIRD_KEEPER, 4
- object SPRITE_BLACK_HAIR_BOY_1, 6, 49, STAY, UP, 6, OPP_BIRD_KEEPER, 5
- object SPRITE_BIKER, 5, 39, STAY, DOWN, 7, OPP_BIKER, 13
- object SPRITE_BIKER, 4, 30, STAY, RIGHT, 8, OPP_BIKER, 14
- object SPRITE_BIKER, 15, 30, STAY, LEFT, 9, OPP_BIKER, 15
- object SPRITE_BIKER, 4, 31, STAY, RIGHT, 10, OPP_BIKER, 2
diff --git a/data/mapObjects/route15.asm b/data/mapObjects/route15.asm
deleted file mode 100755
index 244e4f41..00000000
--- a/data/mapObjects/route15.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-Route15Object:
- db $43 ; border block
-
- db 4 ; warps
- warp 7, 8, 0, ROUTE_15_GATE_1F
- warp 7, 9, 0, ROUTE_15_GATE_1F
- warp 14, 8, 2, ROUTE_15_GATE_1F
- warp 14, 9, 2, ROUTE_15_GATE_1F
-
- db 1 ; signs
- sign 39, 9, 12 ; Route15Text12
-
- db 11 ; objects
- object SPRITE_LASS, 41, 11, STAY, DOWN, 1, OPP_JR_TRAINER_F, 20
- object SPRITE_LASS, 53, 10, STAY, LEFT, 2, OPP_JR_TRAINER_F, 21
- object SPRITE_BLACK_HAIR_BOY_1, 31, 13, STAY, UP, 3, OPP_BIRD_KEEPER, 6
- object SPRITE_BLACK_HAIR_BOY_1, 35, 13, STAY, UP, 4, OPP_BIRD_KEEPER, 7
- object SPRITE_FOULARD_WOMAN, 53, 11, STAY, DOWN, 5, OPP_BEAUTY, 9
- object SPRITE_FOULARD_WOMAN, 41, 10, STAY, RIGHT, 6, OPP_BEAUTY, 10
- object SPRITE_BIKER, 48, 10, STAY, DOWN, 7, OPP_BIKER, 3
- object SPRITE_BIKER, 46, 10, STAY, DOWN, 8, OPP_BIKER, 4
- object SPRITE_LASS, 37, 5, STAY, RIGHT, 9, OPP_JR_TRAINER_F, 22
- object SPRITE_LASS, 18, 13, STAY, UP, 10, OPP_JR_TRAINER_F, 23
- object SPRITE_BALL, 18, 5, STAY, NONE, 11, TM_20
-
- ; warp-to
- warp_to 7, 8, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
- warp_to 7, 9, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
- warp_to 14, 8, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
- warp_to 14, 9, ROUTE_15_WIDTH ; ROUTE_15_GATE_1F
diff --git a/data/mapObjects/route15gate.asm b/data/mapObjects/route15gate.asm
deleted file mode 100755
index 13c39674..00000000
--- a/data/mapObjects/route15gate.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route15GateObject:
- db $a ; border block
-
- db 5 ; warps
- warp 0, 4, 0, -1
- warp 0, 5, 1, -1
- warp 7, 4, 2, -1
- warp 7, 5, 3, -1
- warp 6, 8, 0, ROUTE_15_GATE_2F
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 4, 1, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 0, 4, ROUTE_15_GATE_1F_WIDTH
- warp_to 0, 5, ROUTE_15_GATE_1F_WIDTH
- warp_to 7, 4, ROUTE_15_GATE_1F_WIDTH
- warp_to 7, 5, ROUTE_15_GATE_1F_WIDTH
- warp_to 6, 8, ROUTE_15_GATE_1F_WIDTH ; ROUTE_15_GATE_2F
diff --git a/data/mapObjects/route15gateupstairs.asm b/data/mapObjects/route15gateupstairs.asm
deleted file mode 100755
index ff180883..00000000
--- a/data/mapObjects/route15gateupstairs.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-Route15GateUpstairsObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 7, 4, ROUTE_15_GATE_1F
-
- db 1 ; signs
- sign 6, 2, 2 ; Route15GateUpstairsText2
-
- db 1 ; objects
- object SPRITE_OAK_AIDE, 4, 2, STAY, DOWN, 1
-
- ; warp-to
- warp_to 7, 7, ROUTE_15_GATE_2F_WIDTH ; ROUTE_15_GATE_1F
diff --git a/data/mapObjects/route16.asm b/data/mapObjects/route16.asm
deleted file mode 100755
index 0b84caa7..00000000
--- a/data/mapObjects/route16.asm
+++ /dev/null
@@ -1,37 +0,0 @@
-Route16Object:
- db $f ; border block
-
- db 9 ; warps
- warp 17, 10, 0, ROUTE_16_GATE_1F
- warp 17, 11, 0, ROUTE_16_GATE_1F
- warp 24, 10, 2, ROUTE_16_GATE_1F
- warp 24, 11, 2, ROUTE_16_GATE_1F
- warp 17, 4, 4, ROUTE_16_GATE_1F
- warp 17, 5, 4, ROUTE_16_GATE_1F
- warp 24, 4, 6, ROUTE_16_GATE_1F
- warp 24, 5, 6, ROUTE_16_GATE_1F
- warp 7, 5, 0, ROUTE_16_HOUSE
-
- db 2 ; signs
- sign 27, 11, 8 ; Route16Text8
- sign 5, 17, 9 ; Route16Text9
-
- db 7 ; objects
- object SPRITE_BIKER, 17, 12, STAY, LEFT, 1, OPP_BIKER, 5
- object SPRITE_BIKER, 14, 13, STAY, RIGHT, 2, OPP_CUE_BALL, 1
- object SPRITE_BIKER, 11, 12, STAY, UP, 3, OPP_CUE_BALL, 2
- object SPRITE_BIKER, 9, 11, STAY, LEFT, 4, OPP_BIKER, 6
- object SPRITE_BIKER, 6, 10, STAY, RIGHT, 5, OPP_CUE_BALL, 3
- object SPRITE_BIKER, 3, 12, STAY, RIGHT, 6, OPP_BIKER, 7
- object SPRITE_SNORLAX, 26, 10, STAY, DOWN, 7 ; person
-
- ; warp-to
- warp_to 17, 10, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 17, 11, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 24, 10, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 24, 11, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 17, 4, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 17, 5, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 24, 4, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 24, 5, ROUTE_16_WIDTH ; ROUTE_16_GATE_1F
- warp_to 7, 5, ROUTE_16_WIDTH ; ROUTE_16_FLY_HOUSE
diff --git a/data/mapObjects/route16gate.asm b/data/mapObjects/route16gate.asm
deleted file mode 100755
index 4e1863ed..00000000
--- a/data/mapObjects/route16gate.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-Route16GateObject:
- db $a ; border block
-
- db 9 ; warps
- warp 0, 8, 0, -1
- warp 0, 9, 1, -1
- warp 7, 8, 2, -1
- warp 7, 9, 2, -1
- warp 0, 2, 4, -1
- warp 0, 3, 5, -1
- warp 7, 2, 6, -1
- warp 7, 3, 7, -1
- warp 6, 12, 0, ROUTE_16_GATE_2F
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_GUARD, 4, 5, STAY, DOWN, 1 ; person
- object SPRITE_GAMBLER, 4, 3, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 0, 8, ROUTE_16_GATE_1F_WIDTH
- warp_to 0, 9, ROUTE_16_GATE_1F_WIDTH
- warp_to 7, 8, ROUTE_16_GATE_1F_WIDTH
- warp_to 7, 9, ROUTE_16_GATE_1F_WIDTH
- warp_to 0, 2, ROUTE_16_GATE_1F_WIDTH
- warp_to 0, 3, ROUTE_16_GATE_1F_WIDTH
- warp_to 7, 2, ROUTE_16_GATE_1F_WIDTH
- warp_to 7, 3, ROUTE_16_GATE_1F_WIDTH
- warp_to 6, 12, ROUTE_16_GATE_1F_WIDTH ; ROUTE_16_GATE_2F
diff --git a/data/mapObjects/route16gateupstairs.asm b/data/mapObjects/route16gateupstairs.asm
deleted file mode 100755
index 41487e6e..00000000
--- a/data/mapObjects/route16gateupstairs.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-Route16GateUpstairsObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 7, 8, ROUTE_16_GATE_1F
-
- db 2 ; signs
- sign 1, 2, 3 ; Route16GateUpstairsText3
- sign 6, 2, 4 ; Route16GateUpstairsText4
-
- db 2 ; objects
- object SPRITE_YOUNG_BOY, 4, 2, STAY, NONE, 1 ; person
- object SPRITE_LITTLE_GIRL, 2, 5, WALK, 2, 2 ; person
-
- ; warp-to
- warp_to 7, 7, ROUTE_16_GATE_2F_WIDTH ; ROUTE_16_GATE_1F
diff --git a/data/mapObjects/route16house.asm b/data/mapObjects/route16house.asm
deleted file mode 100755
index 7a097105..00000000
--- a/data/mapObjects/route16house.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-Route16HouseObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 8, -1
- warp 3, 7, 8, -1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BRUNETTE_GIRL, 2, 3, STAY, RIGHT, 1 ; person
- object SPRITE_BIRD, 6, 4, WALK, 0, 2 ; person
-
- ; warp-to
- warp_to 2, 7, ROUTE_16_HOUSE_WIDTH
- warp_to 3, 7, ROUTE_16_HOUSE_WIDTH
diff --git a/data/mapObjects/route17.asm b/data/mapObjects/route17.asm
deleted file mode 100755
index 48750597..00000000
--- a/data/mapObjects/route17.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-Route17Object:
- db $43 ; border block
-
- db 0 ; warps
-
- db 6 ; signs
- sign 9, 51, 11 ; Route17Text11
- sign 9, 63, 12 ; Route17Text12
- sign 9, 75, 13 ; Route17Text13
- sign 9, 87, 14 ; Route17Text14
- sign 9, 111, 15 ; Route17Text15
- sign 9, 141, 16 ; Route17Text16
-
- db 10 ; objects
- object SPRITE_BIKER, 12, 19, STAY, LEFT, 1, OPP_CUE_BALL, 4
- object SPRITE_BIKER, 11, 16, STAY, RIGHT, 2, OPP_CUE_BALL, 5
- object SPRITE_BIKER, 4, 18, STAY, UP, 3, OPP_BIKER, 8
- object SPRITE_BIKER, 7, 32, STAY, LEFT, 4, OPP_BIKER, 9
- object SPRITE_BIKER, 14, 34, STAY, RIGHT, 5, OPP_BIKER, 10
- object SPRITE_BIKER, 17, 58, STAY, LEFT, 6, OPP_CUE_BALL, 6
- object SPRITE_BIKER, 2, 68, STAY, RIGHT, 7, OPP_CUE_BALL, 7
- object SPRITE_BIKER, 14, 98, STAY, RIGHT, 8, OPP_CUE_BALL, 8
- object SPRITE_BIKER, 5, 98, STAY, LEFT, 9, OPP_BIKER, 11
- object SPRITE_BIKER, 10, 118, STAY, DOWN, 10, OPP_BIKER, 12
diff --git a/data/mapObjects/route18.asm b/data/mapObjects/route18.asm
deleted file mode 100755
index 9c12faf6..00000000
--- a/data/mapObjects/route18.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-Route18Object:
- db $43 ; border block
-
- db 4 ; warps
- warp 33, 8, 0, ROUTE_18_GATE_1F
- warp 33, 9, 0, ROUTE_18_GATE_1F
- warp 40, 8, 2, ROUTE_18_GATE_1F
- warp 40, 9, 2, ROUTE_18_GATE_1F
-
- db 2 ; signs
- sign 43, 7, 4 ; Route18Text4
- sign 33, 5, 5 ; Route18Text5
-
- db 3 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 36, 11, STAY, RIGHT, 1, OPP_BIRD_KEEPER, 8
- object SPRITE_BLACK_HAIR_BOY_1, 40, 15, STAY, LEFT, 2, OPP_BIRD_KEEPER, 9
- object SPRITE_BLACK_HAIR_BOY_1, 42, 13, STAY, LEFT, 3, OPP_BIRD_KEEPER, 10
-
- ; warp-to
- warp_to 33, 8, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
- warp_to 33, 9, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
- warp_to 40, 8, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
- warp_to 40, 9, ROUTE_18_WIDTH ; ROUTE_18_GATE_1F
diff --git a/data/mapObjects/route18gate.asm b/data/mapObjects/route18gate.asm
deleted file mode 100755
index c73d7131..00000000
--- a/data/mapObjects/route18gate.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route18GateObject:
- db $a ; border block
-
- db 5 ; warps
- warp 0, 4, 0, -1
- warp 0, 5, 1, -1
- warp 7, 4, 2, -1
- warp 7, 5, 3, -1
- warp 6, 8, 0, ROUTE_18_GATE_2F
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 4, 1, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 0, 4, ROUTE_18_GATE_1F_WIDTH
- warp_to 0, 5, ROUTE_18_GATE_1F_WIDTH
- warp_to 7, 4, ROUTE_18_GATE_1F_WIDTH
- warp_to 7, 5, ROUTE_18_GATE_1F_WIDTH
- warp_to 6, 8, ROUTE_18_GATE_1F_WIDTH ; ROUTE_18_GATE_2F
diff --git a/data/mapObjects/route18gateupstairs.asm b/data/mapObjects/route18gateupstairs.asm
deleted file mode 100755
index 4110089e..00000000
--- a/data/mapObjects/route18gateupstairs.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-Route18GateUpstairsObject:
- db $a ; border block
-
- db 1 ; warps
- warp 7, 7, 4, ROUTE_18_GATE_1F
-
- db 2 ; signs
- sign 1, 2, 2 ; Route18GateUpstairsText2
- sign 6, 2, 3 ; Route18GateUpstairsText3
-
- db 1 ; objects
- object SPRITE_COOK, 4, 2, WALK, 2, 1 ; person
-
- ; warp-to
- warp_to 7, 7, ROUTE_18_GATE_2F_WIDTH ; ROUTE_18_GATE_1F
diff --git a/data/mapObjects/route19.asm b/data/mapObjects/route19.asm
deleted file mode 100755
index fafcd20f..00000000
--- a/data/mapObjects/route19.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-Route19Object:
- db $43 ; border block
-
- db 1 ; warps
- warp 5, 9, 0, BEACH_HOUSE
-
- db 1 ; signs
- sign 11, 11, 11
-
- db 10 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 9, 7, STAY, RIGHT, 1, OPP_SWIMMER, 2
- object SPRITE_BLACK_HAIR_BOY_1, 12, 9, STAY, LEFT, 2, OPP_SWIMMER, 3
- object SPRITE_SWIMMER, 13, 25, STAY, LEFT, 3, OPP_SWIMMER, 4
- object SPRITE_SWIMMER, 4, 27, STAY, RIGHT, 4, OPP_SWIMMER, 5
- object SPRITE_SWIMMER, 16, 31, STAY, UP, 5, OPP_SWIMMER, 6
- object SPRITE_SWIMMER, 9, 13, STAY, DOWN, 6, OPP_SWIMMER, 7
- object SPRITE_SWIMMER, 8, 43, STAY, LEFT, 7, OPP_BEAUTY, 12
- object SPRITE_SWIMMER, 11, 43, STAY, RIGHT, 8, OPP_BEAUTY, 13
- object SPRITE_SWIMMER, 9, 42, STAY, UP, 9, OPP_SWIMMER, 8
- object SPRITE_SWIMMER, 10, 44, STAY, DOWN, 10, OPP_BEAUTY, 14
-
- ; warp-to
- warp_to 5, 9, ROUTE_19_WIDTH ; BEACH_HOUSE
diff --git a/data/mapObjects/route2.asm b/data/mapObjects/route2.asm
deleted file mode 100755
index b9f7ae19..00000000
--- a/data/mapObjects/route2.asm
+++ /dev/null
@@ -1,36 +0,0 @@
-Route2Object:
- db $f ; border block
-
- db 7 ; warps
- warp 12, 9, 0, DIGLETTS_CAVE_EXIT
- warp 3, 11, 1, VIRIDIAN_FOREST_EXIT
- warp 15, 19, 0, ROUTE_2_HOUSE
- warp 16, 35, 1, ROUTE_2_GATE
- warp 15, 39, 2, ROUTE_2_GATE
- warp 3, 43, 2, VIRIDIAN_FOREST_ENTRANCE
- warp 17, 35, 1, ROUTE_2_GATE
-
- db 2 ; signs
- sign 5, 65, 3 ; Route2Text3
- sign 11, 11, 4 ; Route2Text4
-
- db 2 ; objects
- object SPRITE_BALL, 13, 54, STAY, NONE, 1, MOON_STONE
- object SPRITE_BALL, 13, 45, STAY, NONE, 2, HP_UP
-
- ; warp-to
- warp_to 12, 9, ROUTE_2_WIDTH ; DIGLETTS_CAVE_ROUTE_2
- warp_to 3, 11, ROUTE_2_WIDTH ; VIRIDIAN_FOREST_NORTH_GATE
- warp_to 15, 19, ROUTE_2_WIDTH ; ROUTE_2_TRADE_HOUSE
- warp_to 16, 35, ROUTE_2_WIDTH ; ROUTE_2_GATE
- warp_to 15, 39, ROUTE_2_WIDTH ; ROUTE_2_GATE
- warp_to 3, 43, ROUTE_2_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
- warp_to 17, 35, ROUTE_2_WIDTH ; ROUTE_2_GATE
-
- ; unused
- warp_to 2, 7, 4
- dw $c712
- db $9, $7
- warp_to 2, 7, 4
- warp_to 2, 7, 4
- warp_to 2, 7, 4
diff --git a/data/mapObjects/route20.asm b/data/mapObjects/route20.asm
deleted file mode 100755
index bfd87d8f..00000000
--- a/data/mapObjects/route20.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-Route20Object:
- db $43 ; border block
-
- db 2 ; warps
- warp 48, 5, 0, SEAFOAM_ISLANDS_1
- warp 58, 9, 2, SEAFOAM_ISLANDS_1
-
- db 2 ; signs
- sign 51, 7, 11 ; Route20Text11
- sign 57, 11, 12 ; Route20Text12
-
- db 10 ; objects
- object SPRITE_SWIMMER, 87, 8, STAY, UP, 1, OPP_SWIMMER, 9
- object SPRITE_SWIMMER, 68, 11, STAY, UP, 2, OPP_BEAUTY, 15
- object SPRITE_SWIMMER, 45, 10, STAY, DOWN, 3, OPP_BEAUTY, 6
- object SPRITE_SWIMMER, 55, 14, STAY, RIGHT, 4, OPP_JR_TRAINER_F, 24
- object SPRITE_SWIMMER, 38, 13, STAY, DOWN, 5, OPP_SWIMMER, 10
- object SPRITE_SWIMMER, 87, 13, STAY, UP, 6, OPP_SWIMMER, 11
- object SPRITE_BLACK_HAIR_BOY_1, 34, 9, STAY, UP, 7, OPP_BIRD_KEEPER, 11
- object SPRITE_SWIMMER, 25, 7, STAY, UP, 8, OPP_BEAUTY, 7
- object SPRITE_SWIMMER, 24, 12, STAY, DOWN, 9, OPP_JR_TRAINER_F, 16
- object SPRITE_SWIMMER, 15, 8, STAY, UP, 10, OPP_BEAUTY, 8
-
- ; warp-to
- warp_to 48, 5, ROUTE_20_WIDTH ; SEAFOAM_ISLANDS_1F
- warp_to 58, 9, ROUTE_20_WIDTH ; SEAFOAM_ISLANDS_1F
diff --git a/data/mapObjects/route21.asm b/data/mapObjects/route21.asm
deleted file mode 100755
index bb2409ce..00000000
--- a/data/mapObjects/route21.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-Route21Object:
- db $43 ; border block
-
- db 0 ; warps
-
- db 0 ; signs
-
- db 9 ; objects
- object SPRITE_FISHER2, 4, 24, STAY, LEFT, 1, OPP_FISHER, 7
- object SPRITE_FISHER2, 6, 25, STAY, DOWN, 2, OPP_FISHER, 9
- object SPRITE_SWIMMER, 10, 31, STAY, UP, 3, OPP_SWIMMER, 12
- object SPRITE_SWIMMER, 12, 30, STAY, RIGHT, 4, OPP_CUE_BALL, 9
- object SPRITE_SWIMMER, 16, 63, STAY, DOWN, 5, OPP_SWIMMER, 13
- object SPRITE_SWIMMER, 5, 71, STAY, RIGHT, 6, OPP_SWIMMER, 14
- object SPRITE_SWIMMER, 15, 71, STAY, LEFT, 7, OPP_SWIMMER, 15
- object SPRITE_FISHER2, 14, 56, STAY, LEFT, 8, OPP_FISHER, 8
- object SPRITE_FISHER2, 17, 57, STAY, RIGHT, 9, OPP_FISHER, 10
diff --git a/data/mapObjects/route22.asm b/data/mapObjects/route22.asm
deleted file mode 100755
index e91eb792..00000000
--- a/data/mapObjects/route22.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-Route22Object:
- db $2c ; border block
-
- db 1 ; warps
- warp 8, 5, 0, ROUTE_22_GATE
-
- db 1 ; signs
- sign 7, 11, 3 ; Route22FrontGateText
-
- db 2 ; objects
- object SPRITE_BLUE, 25, 5, STAY, NONE, 1 ; person
- object SPRITE_BLUE, 25, 5, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 8, 5, ROUTE_22_WIDTH ; ROUTE_22_GATE
diff --git a/data/mapObjects/route22gate.asm b/data/mapObjects/route22gate.asm
deleted file mode 100755
index bd7764da..00000000
--- a/data/mapObjects/route22gate.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route22GateObject:
- db $a ; border block
-
- db 4 ; warps
- warp 4, 7, 0, -1
- warp 5, 7, 0, -1
- warp 4, 0, 0, -1
- warp 5, 0, 0, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 6, 2, STAY, LEFT, 1 ; person
-
- ; warp-to
- warp_to 4, 7, ROUTE_22_GATE_WIDTH
- warp_to 5, 7, ROUTE_22_GATE_WIDTH
- warp_to 4, 0, ROUTE_22_GATE_WIDTH
- warp_to 5, 0, ROUTE_22_GATE_WIDTH
diff --git a/data/mapObjects/route23.asm b/data/mapObjects/route23.asm
deleted file mode 100755
index eafb0def..00000000
--- a/data/mapObjects/route23.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-Route23Object:
- db $f ; border block
-
- db 4 ; warps
- warp 7, 139, 2, ROUTE_22_GATE
- warp 8, 139, 3, ROUTE_22_GATE
- warp 4, 31, 0, VICTORY_ROAD_1
- warp 14, 31, 1, VICTORY_ROAD_2
-
- db 1 ; signs
- sign 3, 33, 8 ; Route23Text8
-
- db 7 ; objects
- object SPRITE_GUARD, 4, 35, STAY, DOWN, 1 ; person
- object SPRITE_GUARD, 10, 56, STAY, DOWN, 2 ; person
- object SPRITE_SWIMMER, 8, 85, STAY, DOWN, 3 ; person
- object SPRITE_SWIMMER, 11, 96, STAY, DOWN, 4 ; person
- object SPRITE_GUARD, 12, 105, STAY, DOWN, 5 ; person
- object SPRITE_GUARD, 8, 119, STAY, DOWN, 6 ; person
- object SPRITE_GUARD, 8, 136, STAY, DOWN, 7 ; person
-
- ; warp-to
- warp_to 7, 139, ROUTE_23_WIDTH ; ROUTE_22_GATE
- warp_to 8, 139, ROUTE_23_WIDTH ; ROUTE_22_GATE
- warp_to 4, 31, ROUTE_23_WIDTH ; VICTORY_ROAD_1F
- warp_to 14, 31, ROUTE_23_WIDTH ; VICTORY_ROAD_2F
diff --git a/data/mapObjects/route24.asm b/data/mapObjects/route24.asm
deleted file mode 100755
index e4e44f18..00000000
--- a/data/mapObjects/route24.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-Route24Object:
- db $2c ; border block
-
- db 0 ; warps
-
- db 0 ; signs
-
- db 9 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 11, 15, STAY, LEFT, 1, OPP_ROCKET, 6
- object SPRITE_BLACK_HAIR_BOY_1, 5, 20, STAY, UP, 2, OPP_JR_TRAINER_M, 2
- object SPRITE_BLACK_HAIR_BOY_1, 11, 19, STAY, LEFT, 3, OPP_JR_TRAINER_M, 3
- object SPRITE_LASS, 10, 22, STAY, RIGHT, 4, OPP_LASS, 7
- object SPRITE_BUG_CATCHER, 11, 25, STAY, LEFT, 5, OPP_YOUNGSTER, 4
- object SPRITE_LASS, 10, 28, STAY, RIGHT, 6, OPP_LASS, 8
- object SPRITE_BUG_CATCHER, 11, 31, STAY, LEFT, 7, OPP_BUG_CATCHER, 9
- object SPRITE_BALL, 10, 5, STAY, NONE, 8, TM_45
- object SPRITE_BLACK_HAIR_BOY_1, 6, 5, STAY, DOWN, 9
diff --git a/data/mapObjects/route25.asm b/data/mapObjects/route25.asm
deleted file mode 100755
index 3ba5fbdb..00000000
--- a/data/mapObjects/route25.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-Route25Object:
- db $2c ; border block
-
- db 1 ; warps
- warp 45, 3, 0, BILLS_HOUSE
-
- db 1 ; signs
- sign 43, 3, 11 ; Route25Text11
-
- db 10 ; objects
- object SPRITE_BUG_CATCHER, 14, 2, STAY, DOWN, 1, OPP_YOUNGSTER, 5
- object SPRITE_BUG_CATCHER, 18, 5, STAY, UP, 2, OPP_YOUNGSTER, 6
- object SPRITE_BLACK_HAIR_BOY_1, 24, 4, STAY, DOWN, 3, OPP_JR_TRAINER_M, 2
- object SPRITE_LASS, 18, 8, STAY, RIGHT, 4, OPP_LASS, 9
- object SPRITE_BUG_CATCHER, 32, 3, STAY, LEFT, 5, OPP_YOUNGSTER, 7
- object SPRITE_LASS, 37, 4, STAY, DOWN, 6, OPP_LASS, 10
- object SPRITE_HIKER, 8, 4, STAY, RIGHT, 7, OPP_HIKER, 2
- object SPRITE_HIKER, 23, 9, STAY, UP, 8, OPP_HIKER, 3
- object SPRITE_HIKER, 13, 7, STAY, RIGHT, 9, OPP_HIKER, 4
- object SPRITE_BALL, 22, 2, STAY, NONE, 10, TM_19
-
- ; warp-to
- warp_to 45, 3, ROUTE_25_WIDTH ; BILLS_HOUSE
diff --git a/data/mapObjects/route2gate.asm b/data/mapObjects/route2gate.asm
deleted file mode 100755
index 714b8ee6..00000000
--- a/data/mapObjects/route2gate.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-Route2GateObject:
- db $a ; border block
-
- db 4 ; warps
- warp 4, 0, 3, -1
- warp 5, 0, 3, -1
- warp 4, 7, 4, -1
- warp 5, 7, 4, -1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_OAK_AIDE, 1, 4, STAY, LEFT, 1 ; person
- object SPRITE_BUG_CATCHER, 5, 4, WALK, 2, 2 ; person
-
- ; warp-to
- warp_to 4, 0, ROUTE_2_GATE_WIDTH
- warp_to 5, 0, ROUTE_2_GATE_WIDTH
- warp_to 4, 7, ROUTE_2_GATE_WIDTH
- warp_to 5, 7, ROUTE_2_GATE_WIDTH
diff --git a/data/mapObjects/route2house.asm b/data/mapObjects/route2house.asm
deleted file mode 100755
index 1f655e15..00000000
--- a/data/mapObjects/route2house.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-Route2HouseObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 2, -1
- warp 3, 7, 2, -1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_OAK_AIDE, 2, 4, STAY, RIGHT, 1 ; person
- object SPRITE_GAMEBOY_KID, 4, 1, STAY, DOWN, 2 ; person
-
- ; warp-to
- warp_to 2, 7, ROUTE_2_HOUSE_WIDTH
- warp_to 3, 7, ROUTE_2_HOUSE_WIDTH
diff --git a/data/mapObjects/route3.asm b/data/mapObjects/route3.asm
deleted file mode 100755
index 422fa29b..00000000
--- a/data/mapObjects/route3.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-Route3Object:
- db $2c ; border block
-
- db 0 ; warps
-
- db 1 ; signs
- sign 59, 9, 10 ; Route3Text10
-
- db 9 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 57, 11, STAY, NONE, 1 ; person
- object SPRITE_BUG_CATCHER, 10, 6, STAY, RIGHT, 2, OPP_BUG_CATCHER, 4
- object SPRITE_BUG_CATCHER, 14, 4, STAY, DOWN, 3, OPP_YOUNGSTER, 1
- object SPRITE_LASS, 16, 9, STAY, LEFT, 4, OPP_LASS, 1
- object SPRITE_BUG_CATCHER, 19, 5, STAY, DOWN, 5, OPP_BUG_CATCHER, 5
- object SPRITE_LASS, 23, 4, STAY, LEFT, 6, OPP_LASS, 2
- object SPRITE_BUG_CATCHER, 22, 9, STAY, LEFT, 7, OPP_YOUNGSTER, 2
- object SPRITE_BUG_CATCHER, 24, 6, STAY, RIGHT, 8, OPP_BUG_CATCHER, 6
- object SPRITE_LASS, 33, 10, STAY, UP, 9, OPP_LASS, 3
diff --git a/data/mapObjects/route4.asm b/data/mapObjects/route4.asm
deleted file mode 100755
index 2cb56c59..00000000
--- a/data/mapObjects/route4.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-Route4Object:
- db $2c ; border block
-
- db 3 ; warps
- warp 11, 5, 0, MT_MOON_POKECENTER
- warp 18, 5, 0, MT_MOON_1
- warp 24, 5, 7, MT_MOON_2
-
- db 3 ; signs
- sign 12, 5, 4 ; PokeCenterSignText
- sign 17, 7, 5 ; Route4Text5
- sign 27, 7, 6 ; Route4Text6
-
- db 3 ; objects
- object SPRITE_LASS, 9, 8, WALK, 0, 1 ; person
- object SPRITE_LASS, 63, 3, STAY, RIGHT, 2, OPP_LASS, 4
- object SPRITE_BALL, 57, 3, STAY, NONE, 3, TM_04
-
- ; warp-to
- warp_to 11, 5, ROUTE_4_WIDTH ; MT_MOON_POKECENTER
- warp_to 18, 5, ROUTE_4_WIDTH ; MT_MOON_1F
- warp_to 24, 5, ROUTE_4_WIDTH ; MT_MOON_B1F
diff --git a/data/mapObjects/route5.asm b/data/mapObjects/route5.asm
deleted file mode 100755
index 08d6d9f9..00000000
--- a/data/mapObjects/route5.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route5Object:
- db $a ; border block
-
- db $5 ; warps
- warp 10, 29, 2, ROUTE_5_GATE
- warp 9, 29, 2, ROUTE_5_GATE
- warp 10, 33, 0, ROUTE_5_GATE
- warp 17, 27, 0, PATH_ENTRANCE_ROUTE_5
- warp 10, 21, 0, DAYCAREM
-
- db 1 ; signs
- sign 17, 29, 1 ; Route5Text1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 10, 29, ROUTE_5_WIDTH ; ROUTE_5_GATE
- warp_to 9, 29, ROUTE_5_WIDTH ; ROUTE_5_GATE
- warp_to 10, 33, ROUTE_5_WIDTH ; ROUTE_5_GATE
- warp_to 17, 27, ROUTE_5_WIDTH ; UNDERGROUND_PATH_ROUTE_5
- warp_to 10, 21, ROUTE_5_WIDTH ; DAYCARE
diff --git a/data/mapObjects/route5gate.asm b/data/mapObjects/route5gate.asm
deleted file mode 100755
index 8b230942..00000000
--- a/data/mapObjects/route5gate.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route5GateObject:
- db $a ; border block
-
- db 4 ; warps
- warp 3, 5, 2, -1
- warp 4, 5, 2, -1
- warp 3, 0, 1, -1
- warp 4, 0, 0, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 1, 3, STAY, RIGHT, 1 ; person
-
- ; warp-to
- warp_to 3, 5, ROUTE_5_GATE_WIDTH
- warp_to 4, 5, ROUTE_5_GATE_WIDTH
- warp_to 3, 0, ROUTE_5_GATE_WIDTH
- warp_to 4, 0, ROUTE_5_GATE_WIDTH
diff --git a/data/mapObjects/route6.asm b/data/mapObjects/route6.asm
deleted file mode 100755
index a024d777..00000000
--- a/data/mapObjects/route6.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-Route6Object:
- db $f ; border block
-
- db 4 ; warps
- warp 9, 1, 2, ROUTE_6_GATE
- warp 10, 1, 2, ROUTE_6_GATE
- warp 10, 7, 0, ROUTE_6_GATE
- warp 17, 13, 0, PATH_ENTRANCE_ROUTE_6
-
- db 1 ; signs
- sign 19, 15, 7 ; Route6Text7
-
- db 6 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 10, 21, STAY, RIGHT, 1, OPP_JR_TRAINER_M, 10
- object SPRITE_LASS, 11, 21, STAY, LEFT, 2, OPP_JR_TRAINER_F, 25
- object SPRITE_BUG_CATCHER, 0, 15, STAY, RIGHT, 3, OPP_BUG_CATCHER, 10
- object SPRITE_BLACK_HAIR_BOY_1, 11, 31, STAY, LEFT, 4, OPP_JR_TRAINER_M, 5
- object SPRITE_LASS, 11, 30, STAY, LEFT, 5, OPP_JR_TRAINER_F, 3
- object SPRITE_BUG_CATCHER, 19, 26, STAY, LEFT, 6, OPP_BUG_CATCHER, 11
-
- ; warp-to
- warp_to 9, 1, ROUTE_6_WIDTH ; ROUTE_6_GATE
- warp_to 10, 1, ROUTE_6_WIDTH ; ROUTE_6_GATE
- warp_to 10, 7, ROUTE_6_WIDTH ; ROUTE_6_GATE
- warp_to 17, 13, ROUTE_6_WIDTH ; UNDERGROUND_PATH_ROUTE_6
diff --git a/data/mapObjects/route6gate.asm b/data/mapObjects/route6gate.asm
deleted file mode 100755
index e3b7b2b8..00000000
--- a/data/mapObjects/route6gate.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route6GateObject:
- db $a ; border block
-
- db 4 ; warps
- warp 3, 5, 2, -1
- warp 4, 5, 2, -1
- warp 3, 0, 1, -1
- warp 4, 0, 1, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 6, 2, STAY, LEFT, 1 ; person
-
- ; warp-to
- warp_to 3, 5, ROUTE_6_GATE_WIDTH
- warp_to 4, 5, ROUTE_6_GATE_WIDTH
- warp_to 3, 0, ROUTE_6_GATE_WIDTH
- warp_to 4, 0, ROUTE_6_GATE_WIDTH
diff --git a/data/mapObjects/route7.asm b/data/mapObjects/route7.asm
deleted file mode 100755
index 2207bfd4..00000000
--- a/data/mapObjects/route7.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-Route7Object:
- db $f ; border block
-
- db 5 ; warps
- warp 18, 9, 2, ROUTE_7_GATE
- warp 18, 10, 2, ROUTE_7_GATE
- warp 11, 9, 0, ROUTE_7_GATE
- warp 11, 10, 0, ROUTE_7_GATE
- warp 5, 13, 0, PATH_ENTRANCE_ROUTE_7
-
- db 1 ; signs
- sign 3, 13, 1 ; Route7Text1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 18, 9, ROUTE_7_WIDTH ; ROUTE_7_GATE
- warp_to 18, 10, ROUTE_7_WIDTH ; ROUTE_7_GATE
- warp_to 11, 9, ROUTE_7_WIDTH ; ROUTE_7_GATE
- warp_to 11, 10, ROUTE_7_WIDTH ; ROUTE_7_GATE
- warp_to 5, 13, ROUTE_7_WIDTH ; UNDERGROUND_PATH_ROUTE_7
diff --git a/data/mapObjects/route7gate.asm b/data/mapObjects/route7gate.asm
deleted file mode 100755
index 5b894657..00000000
--- a/data/mapObjects/route7gate.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route7GateObject:
- db $a ; border block
-
- db 4 ; warps
- warp 0, 3, 3, -1
- warp 0, 4, 3, -1
- warp 5, 3, 1, -1
- warp 5, 4, 1, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 3, 1, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 0, 3, ROUTE_7_GATE_WIDTH
- warp_to 0, 4, ROUTE_7_GATE_WIDTH
- warp_to 5, 3, ROUTE_7_GATE_WIDTH
- warp_to 5, 4, ROUTE_7_GATE_WIDTH
diff --git a/data/mapObjects/route8.asm b/data/mapObjects/route8.asm
deleted file mode 100755
index 5d2b73cb..00000000
--- a/data/mapObjects/route8.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-Route8Object:
- db $2c ; border block
-
- db 5 ; warps
- warp 1, 9, 0, ROUTE_8_GATE
- warp 1, 10, 0, ROUTE_8_GATE
- warp 8, 9, 2, ROUTE_8_GATE
- warp 8, 10, 2, ROUTE_8_GATE
- warp 13, 3, 0, PATH_ENTRANCE_ROUTE_8
-
- db 1 ; signs
- sign 17, 3, 10 ; Route8Text10
-
- db 9 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 8, 5, STAY, RIGHT, 1, OPP_SUPER_NERD, 3
- object SPRITE_GAMBLER, 13, 9, STAY, UP, 2, OPP_GAMBLER, 5
- object SPRITE_BLACK_HAIR_BOY_2, 42, 6, STAY, UP, 3, OPP_SUPER_NERD, 4
- object SPRITE_LASS, 26, 3, STAY, LEFT, 4, OPP_LASS, 13
- object SPRITE_BLACK_HAIR_BOY_2, 26, 4, STAY, RIGHT, 5, OPP_SUPER_NERD, 5
- object SPRITE_LASS, 26, 5, STAY, LEFT, 6, OPP_LASS, 14
- object SPRITE_LASS, 26, 6, STAY, RIGHT, 7, OPP_LASS, 15
- object SPRITE_GAMBLER, 46, 13, STAY, DOWN, 8, OPP_GAMBLER, 7
- object SPRITE_LASS, 51, 12, STAY, LEFT, 9, OPP_LASS, 16
-
- ; warp-to
- warp_to 1, 9, ROUTE_8_WIDTH ; ROUTE_8_GATE
- warp_to 1, 10, ROUTE_8_WIDTH ; ROUTE_8_GATE
- warp_to 8, 9, ROUTE_8_WIDTH ; ROUTE_8_GATE
- warp_to 8, 10, ROUTE_8_WIDTH ; ROUTE_8_GATE
- warp_to 13, 3, ROUTE_8_WIDTH ; UNDERGROUND_PATH_ROUTE_8
diff --git a/data/mapObjects/route8gate.asm b/data/mapObjects/route8gate.asm
deleted file mode 100755
index 23fa54d6..00000000
--- a/data/mapObjects/route8gate.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route8GateObject:
- db $a ; border block
-
- db 4 ; warps
- warp 0, 3, 1, -1
- warp 0, 4, 1, -1
- warp 5, 3, 3, -1
- warp 5, 4, 3, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GUARD, 2, 1, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 0, 3, ROUTE_8_GATE_WIDTH
- warp_to 0, 4, ROUTE_8_GATE_WIDTH
- warp_to 5, 3, ROUTE_8_GATE_WIDTH
- warp_to 5, 4, ROUTE_8_GATE_WIDTH
diff --git a/data/mapObjects/route9.asm b/data/mapObjects/route9.asm
deleted file mode 100755
index 9013ce54..00000000
--- a/data/mapObjects/route9.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-Route9Object:
- db $2c ; border block
-
- db 0 ; warps
-
- db 1 ; signs
- sign 25, 7, 11 ; Route9Text11
-
- db 10 ; objects
- object SPRITE_LASS, 13, 10, STAY, LEFT, 1, OPP_JR_TRAINER_F, 5
- object SPRITE_BLACK_HAIR_BOY_1, 24, 7, STAY, LEFT, 2, OPP_YOUNGSTER, 14
- object SPRITE_BLACK_HAIR_BOY_1, 31, 7, STAY, RIGHT, 3, OPP_JR_TRAINER_M, 8
- object SPRITE_LASS, 48, 8, STAY, RIGHT, 4, OPP_JR_TRAINER_F, 6
- object SPRITE_HIKER, 16, 15, STAY, LEFT, 5, OPP_HIKER, 11
- object SPRITE_HIKER, 43, 3, STAY, LEFT, 6, OPP_HIKER, 6
- object SPRITE_BUG_CATCHER, 22, 2, STAY, DOWN, 7, OPP_BUG_CATCHER, 13
- object SPRITE_HIKER, 45, 15, STAY, RIGHT, 8, OPP_HIKER, 5
- object SPRITE_BUG_CATCHER, 40, 8, STAY, RIGHT, 9, OPP_BUG_CATCHER, 14
- object SPRITE_BALL, 10, 15, STAY, NONE, 10, TM_30
diff --git a/data/mapObjects/safarizonecenter.asm b/data/mapObjects/safarizonecenter.asm
deleted file mode 100755
index 9e0d5751..00000000
--- a/data/mapObjects/safarizonecenter.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-SafariZoneCenterObject:
- db $0 ; border block
-
- db 9 ; warps
- warp 14, 25, 2, SAFARI_ZONE_ENTRANCE
- warp 15, 25, 3, SAFARI_ZONE_ENTRANCE
- warp 0, 10, 4, SAFARI_ZONE_WEST
- warp 0, 11, 5, SAFARI_ZONE_WEST
- warp 14, 0, 4, SAFARI_ZONE_NORTH
- warp 15, 0, 5, SAFARI_ZONE_NORTH
- warp 29, 10, 2, SAFARI_ZONE_EAST
- warp 29, 11, 3, SAFARI_ZONE_EAST
- warp 17, 19, 0, SAFARI_ZONE_REST_HOUSE_1
-
- db 2 ; signs
- sign 18, 20, 2 ; SafariZoneCenterText2
- sign 14, 22, 3 ; SafariZoneCenterText3
-
- db 1 ; objects
- object SPRITE_BALL, 14, 10, STAY, NONE, 1, NUGGET
-
- ; warp-to
- warp_to 14, 25, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_GATE
- warp_to 15, 25, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_GATE
- warp_to 0, 10, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_WEST
- warp_to 0, 11, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_WEST
- warp_to 14, 0, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 15, 0, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 29, 10, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_EAST
- warp_to 29, 11, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_EAST
- warp_to 17, 19, SAFARI_ZONE_CENTER_WIDTH ; SAFARI_ZONE_CENTER_REST_HOUSE
diff --git a/data/mapObjects/safarizoneeast.asm b/data/mapObjects/safarizoneeast.asm
deleted file mode 100755
index 4426159d..00000000
--- a/data/mapObjects/safarizoneeast.asm
+++ /dev/null
@@ -1,27 +0,0 @@
-SafariZoneEastObject:
- db $0 ; border block
-
- db 5 ; warps
- warp 0, 4, 6, SAFARI_ZONE_NORTH
- warp 0, 5, 7, SAFARI_ZONE_NORTH
- warp 0, 22, 6, SAFARI_ZONE_CENTER
- warp 0, 23, 6, SAFARI_ZONE_CENTER
- warp 25, 9, 0, SAFARI_ZONE_REST_HOUSE_3
-
- db 3 ; signs
- sign 26, 10, 5 ; SafariZoneEastText5
- sign 6, 4, 6 ; SafariZoneEastText6
- sign 5, 23, 7 ; SafariZoneEastText7
-
- db 4 ; objects
- object SPRITE_BALL, 21, 10, STAY, NONE, 1, FULL_RESTORE
- object SPRITE_BALL, 3, 7, STAY, NONE, 2, MAX_POTION
- object SPRITE_BALL, 20, 13, STAY, NONE, 3, CARBOS
- object SPRITE_BALL, 15, 12, STAY, NONE, 4, TM_37
-
- ; warp-to
- warp_to 0, 4, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 0, 5, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 0, 22, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 0, 23, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 25, 9, SAFARI_ZONE_EAST_WIDTH ; SAFARI_ZONE_EAST_REST_HOUSE
diff --git a/data/mapObjects/safarizoneentrance.asm b/data/mapObjects/safarizoneentrance.asm
deleted file mode 100755
index 5a3379c7..00000000
--- a/data/mapObjects/safarizoneentrance.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-SafariZoneEntranceObject:
- db $a ; border block
-
- db 4 ; warps
- warp 3, 5, 4, -1
- warp 4, 5, 4, -1
- warp 3, 0, 0, SAFARI_ZONE_CENTER
- warp 4, 0, 1, SAFARI_ZONE_CENTER
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_WHITE_PLAYER, 6, 2, STAY, LEFT, 1 ; person
- object SPRITE_WHITE_PLAYER, 1, 4, STAY, RIGHT, 2 ; person
-
- ; warp-to
- warp_to 3, 5, SAFARI_ZONE_ENTRANCE_WIDTH
- warp_to 4, 5, SAFARI_ZONE_ENTRANCE_WIDTH
- warp_to 3, 0, SAFARI_ZONE_ENTRANCE_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 4, 0, SAFARI_ZONE_ENTRANCE_WIDTH ; SAFARI_ZONE_CENTER
diff --git a/data/mapObjects/safarizonenorth.asm b/data/mapObjects/safarizonenorth.asm
deleted file mode 100755
index b768a077..00000000
--- a/data/mapObjects/safarizonenorth.asm
+++ /dev/null
@@ -1,35 +0,0 @@
-SafariZoneNorthObject:
- db $0 ; border block
-
- db 9 ; warps
- warp 2, 35, 0, SAFARI_ZONE_WEST
- warp 3, 35, 1, SAFARI_ZONE_WEST
- warp 8, 35, 2, SAFARI_ZONE_WEST
- warp 9, 35, 3, SAFARI_ZONE_WEST
- warp 20, 35, 4, SAFARI_ZONE_CENTER
- warp 21, 35, 5, SAFARI_ZONE_CENTER
- warp 39, 30, 0, SAFARI_ZONE_EAST
- warp 39, 31, 1, SAFARI_ZONE_EAST
- warp 35, 3, 0, SAFARI_ZONE_REST_HOUSE_4
-
- db 5 ; signs
- sign 36, 4, 3 ; SafariZoneNorthText3
- sign 4, 25, 4 ; SafariZoneNorthText4
- sign 13, 31, 5 ; SafariZoneNorthText5
- sign 19, 33, 6 ; SafariZoneNorthText6
- sign 26, 28, 7 ; SafariZoneNorthText7
-
- db 2 ; objects
- object SPRITE_BALL, 25, 1, STAY, NONE, 1, PROTEIN
- object SPRITE_BALL, 19, 7, STAY, NONE, 2, TM_40
-
- ; warp-to
- warp_to 2, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
- warp_to 3, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
- warp_to 8, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
- warp_to 9, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_WEST
- warp_to 20, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 21, 35, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 39, 30, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_EAST
- warp_to 39, 31, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_EAST
- warp_to 35, 3, SAFARI_ZONE_NORTH_WIDTH ; SAFARI_ZONE_NORTH_REST_HOUSE
diff --git a/data/mapObjects/safarizoneresthouse1.asm b/data/mapObjects/safarizoneresthouse1.asm
deleted file mode 100755
index 031debec..00000000
--- a/data/mapObjects/safarizoneresthouse1.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-SafariZoneRestHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 8, SAFARI_ZONE_CENTER
- warp 3, 7, 8, SAFARI_ZONE_CENTER
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_GIRL, 3, 2, STAY, DOWN, 1 ; person
- object SPRITE_OAK_AIDE, 1, 4, WALK, 1, 2 ; person
-
- ; warp-to
- warp_to 2, 7, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 3, 7, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; SAFARI_ZONE_CENTER
diff --git a/data/mapObjects/safarizoneresthouse2.asm b/data/mapObjects/safarizoneresthouse2.asm
deleted file mode 100755
index 7e589731..00000000
--- a/data/mapObjects/safarizoneresthouse2.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-SafariZoneRestHouse2Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 7, SAFARI_ZONE_WEST
- warp 3, 7, 7, SAFARI_ZONE_WEST
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_OAK_AIDE, 4, 4, WALK, 0, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 0, 2, STAY, RIGHT, 2 ; person
- object SPRITE_ERIKA, 6, 2, STAY, DOWN, 3 ; person
-
- ; warp-to
- warp_to 2, 7, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; SAFARI_ZONE_WEST
- warp_to 3, 7, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; SAFARI_ZONE_WEST
diff --git a/data/mapObjects/safarizoneresthouse3.asm b/data/mapObjects/safarizoneresthouse3.asm
deleted file mode 100755
index 00623953..00000000
--- a/data/mapObjects/safarizoneresthouse3.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-SafariZoneRestHouse3Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 4, SAFARI_ZONE_EAST
- warp 3, 7, 4, SAFARI_ZONE_EAST
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_OAK_AIDE, 1, 3, WALK, 1, 1 ; person
- object SPRITE_ROCKER, 4, 2, STAY, NONE, 2 ; person
- object SPRITE_LAPRAS_GIVER, 5, 2, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 2, 7, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; SAFARI_ZONE_EAST
- warp_to 3, 7, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; SAFARI_ZONE_EAST
diff --git a/data/mapObjects/safarizoneresthouse4.asm b/data/mapObjects/safarizoneresthouse4.asm
deleted file mode 100755
index d3b81b4e..00000000
--- a/data/mapObjects/safarizoneresthouse4.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-SafariZoneRestHouse4Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 8, SAFARI_ZONE_NORTH
- warp 3, 7, 8, SAFARI_ZONE_NORTH
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_OAK_AIDE, 6, 3, WALK, 2, 1 ; person
- object SPRITE_WHITE_PLAYER, 3, 4, STAY, NONE, 2 ; person
- object SPRITE_GENTLEMAN, 1, 5, WALK, 1, 3 ; person
-
- ; warp-to
- warp_to 2, 7, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 3, 7, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; SAFARI_ZONE_NORTH
diff --git a/data/mapObjects/safarizonesecrethouse.asm b/data/mapObjects/safarizonesecrethouse.asm
deleted file mode 100755
index 4faa90c6..00000000
--- a/data/mapObjects/safarizonesecrethouse.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SafariZoneSecretHouseObject:
- db $17 ; border block
-
- db 2 ; warps
- warp 2, 7, 6, SAFARI_ZONE_WEST
- warp 3, 7, 6, SAFARI_ZONE_WEST
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FISHER, 3, 3, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 2, 7, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; SAFARI_ZONE_WEST
- warp_to 3, 7, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; SAFARI_ZONE_WEST
diff --git a/data/mapObjects/safarizonewest.asm b/data/mapObjects/safarizonewest.asm
deleted file mode 100755
index 3b3acd50..00000000
--- a/data/mapObjects/safarizonewest.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-SafariZoneWestObject:
- db $0 ; border block
-
- db 8 ; warps
- warp 20, 0, 0, SAFARI_ZONE_NORTH
- warp 21, 0, 1, SAFARI_ZONE_NORTH
- warp 26, 0, 2, SAFARI_ZONE_NORTH
- warp 27, 0, 3, SAFARI_ZONE_NORTH
- warp 29, 22, 2, SAFARI_ZONE_CENTER
- warp 29, 23, 3, SAFARI_ZONE_CENTER
- warp 3, 3, 0, SAFARI_ZONE_SECRET_HOUSE
- warp 11, 11, 0, SAFARI_ZONE_REST_HOUSE_2
-
- db 4 ; signs
- sign 12, 12, 5 ; SafariZoneWestText5
- sign 17, 3, 6 ; SafariZoneWestText6
- sign 26, 4, 7 ; SafariZoneWestText7
- sign 24, 22, 8 ; SafariZoneWestText8
-
- db 4 ; objects
- object SPRITE_BALL, 8, 20, STAY, NONE, 1, MAX_POTION
- object SPRITE_BALL, 9, 7, STAY, NONE, 2, TM_32
- object SPRITE_BALL, 18, 18, STAY, NONE, 3, MAX_REVIVE
- object SPRITE_BALL, 19, 7, STAY, NONE, 4, GOLD_TEETH
-
- ; warp-to
- warp_to 20, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 21, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 26, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 27, 0, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_NORTH
- warp_to 29, 22, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 29, 23, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_CENTER
- warp_to 3, 3, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_SECRET_HOUSE
- warp_to 11, 11, SAFARI_ZONE_WEST_WIDTH ; SAFARI_ZONE_WEST_REST_HOUSE
diff --git a/data/mapObjects/saffroncity.asm b/data/mapObjects/saffroncity.asm
deleted file mode 100755
index 6ff8ea93..00000000
--- a/data/mapObjects/saffroncity.asm
+++ /dev/null
@@ -1,50 +0,0 @@
-SaffronCityObject:
- db $f ; border block
-
- db 8 ; warps
- warp 7, 5, 0, COPYCATS_HOUSE_1F
- warp 26, 3, 0, FIGHTING_DOJO
- warp 34, 3, 0, SAFFRON_GYM
- warp 13, 11, 0, SAFFRON_HOUSE_1
- warp 25, 11, 0, SAFFRON_MART
- warp 18, 21, 0, SILPH_CO_1F
- warp 9, 29, 0, SAFFRON_POKECENTER
- warp 29, 29, 0, SAFFRON_HOUSE_2
-
- db 10 ; signs
- sign 17, 5, 16 ; SaffronCityText16
- sign 27, 5, 17 ; SaffronCityText17
- sign 35, 5, 18 ; SaffronCityText18
- sign 26, 11, 19 ; MartSignText
- sign 39, 19, 20 ; SaffronCityText20
- sign 5, 21, 21 ; SaffronCityText21
- sign 15, 21, 22 ; SaffronCityText22
- sign 10, 29, 23 ; PokeCenterSignText
- sign 27, 29, 24 ; SaffronCityText24
- sign 1, 19, 25 ; SaffronCityText25
-
- db 14 ; objects
- object SPRITE_ROCKET, 7, 6, STAY, NONE, 1 ; person
- object SPRITE_ROCKET, 20, 8, WALK, 2, 2 ; person
- object SPRITE_ROCKET, 34, 4, STAY, NONE, 3 ; person
- object SPRITE_ROCKET, 13, 12, STAY, NONE, 4 ; person
- object SPRITE_ROCKET, 11, 25, WALK, 2, 5 ; person
- object SPRITE_ROCKET, 32, 13, WALK, 2, 6 ; person
- object SPRITE_ROCKET, 18, 30, WALK, 2, 7 ; person
- object SPRITE_OAK_AIDE, 8, 14, WALK, 0, 8 ; person
- object SPRITE_LAPRAS_GIVER, 23, 23, STAY, NONE, 9 ; person
- object SPRITE_ERIKA, 17, 30, WALK, 2, 10 ; person
- object SPRITE_GENTLEMAN, 30, 12, STAY, DOWN, 11 ; person
- object SPRITE_BIRD, 31, 12, STAY, DOWN, 12 ; person
- object SPRITE_ROCKER, 18, 8, STAY, UP, 13 ; person
- object SPRITE_ROCKET, 18, 22, STAY, DOWN, 14 ; person
-
- ; warp-to
- warp_to 7, 5, SAFFRON_CITY_WIDTH ; COPYCATS_HOUSE_1F
- warp_to 26, 3, SAFFRON_CITY_WIDTH ; FIGHTING_DOJO
- warp_to 34, 3, SAFFRON_CITY_WIDTH ; SAFFRON_GYM
- warp_to 13, 11, SAFFRON_CITY_WIDTH ; SAFFRON_PIDGEY_HOUSE
- warp_to 25, 11, SAFFRON_CITY_WIDTH ; SAFFRON_MART
- warp_to 18, 21, SAFFRON_CITY_WIDTH ; SILPH_CO_1F
- warp_to 9, 29, SAFFRON_CITY_WIDTH ; SAFFRON_POKECENTER
- warp_to 29, 29, SAFFRON_CITY_WIDTH ; MR_PSYCHICS_HOUSE
diff --git a/data/mapObjects/saffrongym.asm b/data/mapObjects/saffrongym.asm
deleted file mode 100755
index 43065f22..00000000
--- a/data/mapObjects/saffrongym.asm
+++ /dev/null
@@ -1,83 +0,0 @@
-SaffronGymObject:
- db $2e ; border block
-
- db 32 ; warps
- warp 8, 17, 2, -1
- warp 9, 17, 2, -1
- warp 1, 3, 22, SAFFRON_GYM
- warp 5, 3, 15, SAFFRON_GYM
- warp 1, 5, 18, SAFFRON_GYM
- warp 5, 5, 8, SAFFRON_GYM
- warp 1, 9, 27, SAFFRON_GYM
- warp 5, 9, 16, SAFFRON_GYM
- warp 1, 11, 5, SAFFRON_GYM
- warp 5, 11, 13, SAFFRON_GYM
- warp 1, 15, 23, SAFFRON_GYM
- warp 5, 15, 30, SAFFRON_GYM
- warp 1, 17, 17, SAFFRON_GYM
- warp 5, 17, 9, SAFFRON_GYM
- warp 9, 3, 26, SAFFRON_GYM
- warp 11, 3, 3, SAFFRON_GYM
- warp 9, 5, 7, SAFFRON_GYM
- warp 11, 5, 12, SAFFRON_GYM
- warp 11, 11, 4, SAFFRON_GYM
- warp 11, 15, 31, SAFFRON_GYM
- warp 15, 3, 24, SAFFRON_GYM
- warp 19, 3, 28, SAFFRON_GYM
- warp 15, 5, 2, SAFFRON_GYM
- warp 19, 5, 10, SAFFRON_GYM
- warp 15, 9, 20, SAFFRON_GYM
- warp 19, 9, 29, SAFFRON_GYM
- warp 15, 11, 14, SAFFRON_GYM
- warp 19, 11, 6, SAFFRON_GYM
- warp 15, 15, 21, SAFFRON_GYM
- warp 19, 15, 25, SAFFRON_GYM
- warp 15, 17, 11, SAFFRON_GYM
- warp 19, 17, 19, SAFFRON_GYM
-
- db 0 ; signs
-
- db 9 ; objects
- object SPRITE_LASS, 9, 8, STAY, DOWN, 1, OPP_SABRINA, 1
- object SPRITE_MEDIUM, 10, 1, STAY, DOWN, 2, OPP_CHANNELER, 22
- object SPRITE_BUG_CATCHER, 17, 1, STAY, DOWN, 3, OPP_PSYCHIC_TR, 1
- object SPRITE_MEDIUM, 3, 7, STAY, DOWN, 4, OPP_CHANNELER, 23
- object SPRITE_BUG_CATCHER, 17, 7, STAY, DOWN, 5, OPP_PSYCHIC_TR, 2
- object SPRITE_MEDIUM, 3, 13, STAY, DOWN, 6, OPP_CHANNELER, 24
- object SPRITE_BUG_CATCHER, 17, 13, STAY, DOWN, 7, OPP_PSYCHIC_TR, 3
- object SPRITE_BUG_CATCHER, 3, 1, STAY, DOWN, 8, OPP_PSYCHIC_TR, 4
- object SPRITE_GYM_HELPER, 10, 15, STAY, DOWN, 9 ; person
-
- ; warp-to
- warp_to 8, 17, SAFFRON_GYM_WIDTH
- warp_to 9, 17, SAFFRON_GYM_WIDTH
- warp_to 1, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 5, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 1, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 5, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 1, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 5, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 1, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 5, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 1, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 5, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 1, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 5, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 9, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 11, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 9, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 11, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 11, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 11, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 15, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 19, 3, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 15, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 19, 5, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 15, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 19, 9, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 15, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 19, 11, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 15, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 19, 15, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 15, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
- warp_to 19, 17, SAFFRON_GYM_WIDTH ; SAFFRON_GYM
diff --git a/data/mapObjects/saffronhouse1.asm b/data/mapObjects/saffronhouse1.asm
deleted file mode 100755
index c6abb539..00000000
--- a/data/mapObjects/saffronhouse1.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-SaffronHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 3, -1
- warp 3, 7, 3, -1
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_BRUNETTE_GIRL, 2, 3, STAY, RIGHT, 1 ; person
- object SPRITE_BIRD, 0, 4, WALK, 1, 2 ; person
- object SPRITE_BUG_CATCHER, 4, 1, STAY, DOWN, 3 ; person
- object SPRITE_PAPER_SHEET, 3, 3, STAY, NONE, 4 ; person
-
- ; warp-to
- warp_to 2, 7, SAFFRON_HOUSE_1_WIDTH
- warp_to 3, 7, SAFFRON_HOUSE_1_WIDTH
diff --git a/data/mapObjects/saffronhouse2.asm b/data/mapObjects/saffronhouse2.asm
deleted file mode 100755
index ac1827b9..00000000
--- a/data/mapObjects/saffronhouse2.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SaffronHouse2Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 7, -1
- warp 3, 7, 7, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FISHER, 5, 3, STAY, LEFT, 1 ; person
-
- ; warp-to
- warp_to 2, 7, SAFFRON_HOUSE_2_WIDTH
- warp_to 3, 7, SAFFRON_HOUSE_2_WIDTH
diff --git a/data/mapObjects/saffronmart.asm b/data/mapObjects/saffronmart.asm
deleted file mode 100755
index 6293b901..00000000
--- a/data/mapObjects/saffronmart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-SaffronMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 4, -1
- warp 4, 7, 4, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_2, 4, 2, STAY, NONE, 2 ; person
- object SPRITE_LASS, 6, 5, WALK, 0, 3 ; person
-
- ; warp-to
- warp_to 3, 7, SAFFRON_MART_WIDTH
- warp_to 4, 7, SAFFRON_MART_WIDTH
diff --git a/data/mapObjects/saffronpokecenter.asm b/data/mapObjects/saffronpokecenter.asm
deleted file mode 100755
index 19e939a6..00000000
--- a/data/mapObjects/saffronpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-SaffronPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 6, -1
- warp 4, 7, 6, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_FOULARD_WOMAN, 5, 5, STAY, NONE, 2 ; person
- object SPRITE_GENTLEMAN, 8, 3, STAY, DOWN, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, SAFFRON_POKECENTER_WIDTH
- warp_to 4, 7, SAFFRON_POKECENTER_WIDTH
diff --git a/data/mapObjects/school.asm b/data/mapObjects/school.asm
deleted file mode 100755
index 590ae732..00000000
--- a/data/mapObjects/school.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-SchoolObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 2, -1
- warp 3, 7, 2, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_BRUNETTE_GIRL, 3, 5, STAY, UP, 1 ; person
- object SPRITE_LASS, 4, 1, STAY, DOWN, 2 ; person
- object SPRITE_LITTLE_GIRL, 4, 5, STAY, UP, 3 ; person
-
- ; warp-to
- warp_to 2, 7, VIRIDIAN_SCHOOL_WIDTH
- warp_to 3, 7, VIRIDIAN_SCHOOL_WIDTH
diff --git a/data/mapObjects/seafoamislands1.asm b/data/mapObjects/seafoamislands1.asm
deleted file mode 100755
index 6dd877e2..00000000
--- a/data/mapObjects/seafoamislands1.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-SeafoamIslands1Object:
- db $7d ; border block
-
- db 7 ; warps
- warp 4, 17, 0, -1
- warp 5, 17, 0, -1
- warp 26, 17, 1, -1
- warp 27, 17, 1, -1
- warp 7, 5, 1, SEAFOAM_ISLANDS_2
- warp 25, 3, 6, SEAFOAM_ISLANDS_2
- warp 23, 15, 4, SEAFOAM_ISLANDS_2
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BOULDER, 18, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
- object SPRITE_BOULDER, 26, 7, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
-
- ; warp-to
- warp_to 4, 17, SEAFOAM_ISLANDS_1_WIDTH
- warp_to 5, 17, SEAFOAM_ISLANDS_1_WIDTH
- warp_to 26, 17, SEAFOAM_ISLANDS_1_WIDTH
- warp_to 27, 17, SEAFOAM_ISLANDS_1_WIDTH
- warp_to 7, 5, SEAFOAM_ISLANDS_1_WIDTH ; SEAFOAM_ISLANDS_2
- warp_to 25, 3, SEAFOAM_ISLANDS_1_WIDTH ; SEAFOAM_ISLANDS_2
- warp_to 23, 15, SEAFOAM_ISLANDS_1_WIDTH ; SEAFOAM_ISLANDS_2
diff --git a/data/mapObjects/seafoamislands2.asm b/data/mapObjects/seafoamislands2.asm
deleted file mode 100755
index 76c2ce3c..00000000
--- a/data/mapObjects/seafoamislands2.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-SeafoamIslands2Object:
- db $7d ; border block
-
- db 7 ; warps
- warp 4, 2, 0, SEAFOAM_ISLANDS_3
- warp 7, 5, 4, SEAFOAM_ISLANDS_1
- warp 13, 7, 2, SEAFOAM_ISLANDS_3
- warp 19, 15, 3, SEAFOAM_ISLANDS_3
- warp 23, 15, 6, SEAFOAM_ISLANDS_1
- warp 25, 11, 5, SEAFOAM_ISLANDS_3
- warp 25, 3, 5, SEAFOAM_ISLANDS_1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BOULDER, 17, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
- object SPRITE_BOULDER, 22, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
-
- ; warp-to
- warp_to 4, 2, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_3
- warp_to 7, 5, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_1
- warp_to 13, 7, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_3
- warp_to 19, 15, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_3
- warp_to 23, 15, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_1
- warp_to 25, 11, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_3
- warp_to 25, 3, SEAFOAM_ISLANDS_2_WIDTH ; SEAFOAM_ISLANDS_1
diff --git a/data/mapObjects/seafoamislands3.asm b/data/mapObjects/seafoamislands3.asm
deleted file mode 100755
index 50bc43e5..00000000
--- a/data/mapObjects/seafoamislands3.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-SeafoamIslands3Object:
- db $7d ; border block
-
- db 7 ; warps
- warp 5, 3, 0, SEAFOAM_ISLANDS_2
- warp 5, 13, 0, SEAFOAM_ISLANDS_4
- warp 13, 7, 2, SEAFOAM_ISLANDS_2
- warp 19, 15, 3, SEAFOAM_ISLANDS_2
- warp 25, 3, 3, SEAFOAM_ISLANDS_4
- warp 25, 11, 5, SEAFOAM_ISLANDS_2
- warp 25, 14, 4, SEAFOAM_ISLANDS_4
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BOULDER, 18, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
- object SPRITE_BOULDER, 23, 6, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
-
- ; warp-to
- warp_to 5, 3, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B1F
- warp_to 5, 13, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B3F
- warp_to 13, 7, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B1F
- warp_to 19, 15, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B1F
- warp_to 25, 3, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B3F
- warp_to 25, 11, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B1F
- warp_to 25, 14, SEAFOAM_ISLANDS_3_WIDTH ; SEAFOAM_ISLANDS_B3F
diff --git a/data/mapObjects/seafoamislands4.asm b/data/mapObjects/seafoamislands4.asm
deleted file mode 100755
index 262fb9b0..00000000
--- a/data/mapObjects/seafoamislands4.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-SeafoamIslands4Object:
- db $7d ; border block
-
- db 7 ; warps
- warp 5, 12, 1, SEAFOAM_ISLANDS_3
- warp 8, 6, 2, SEAFOAM_ISLANDS_5
- warp 25, 4, 3, SEAFOAM_ISLANDS_5
- warp 25, 3, 4, SEAFOAM_ISLANDS_3
- warp 25, 14, 6, SEAFOAM_ISLANDS_3
- warp 20, 17, 0, SEAFOAM_ISLANDS_5
- warp 21, 17, 1, SEAFOAM_ISLANDS_5
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_BOULDER, 5, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 1 ; person
- object SPRITE_BOULDER, 3, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 2 ; person
- object SPRITE_BOULDER, 8, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 3 ; person
- object SPRITE_BOULDER, 9, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 4 ; person
- object SPRITE_BOULDER, 18, 6, STAY, NONE, 5 ; person
- object SPRITE_BOULDER, 19, 6, STAY, NONE, 6 ; person
-
- ; warp-to
- warp_to 5, 12, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B2F
- warp_to 8, 6, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B4F
- warp_to 25, 4, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B4F
- warp_to 25, 3, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B2F
- warp_to 25, 14, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B2F
- warp_to 20, 17, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B4F
- warp_to 21, 17, SEAFOAM_ISLANDS_4_WIDTH ; SEAFOAM_ISLANDS_B4F
diff --git a/data/mapObjects/seafoamislands5.asm b/data/mapObjects/seafoamislands5.asm
deleted file mode 100755
index 9f6a70f0..00000000
--- a/data/mapObjects/seafoamislands5.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-SeafoamIslands5Object:
- db $7d ; border block
-
- db 4 ; warps
- warp 20, 17, 5, SEAFOAM_ISLANDS_4
- warp 21, 17, 6, SEAFOAM_ISLANDS_4
- warp 11, 7, 1, SEAFOAM_ISLANDS_4
- warp 25, 4, 2, SEAFOAM_ISLANDS_4
-
- db 2 ; signs
- sign 9, 15, 4 ; SeafoamIslands5Text4
- sign 23, 1, 5 ; SeafoamIslands5Text5
-
- db 3 ; objects
- object SPRITE_BOULDER, 4, 15, STAY, NONE, 1 ; person
- object SPRITE_BOULDER, 5, 15, STAY, NONE, 2 ; person
- object SPRITE_BIRD, 6, 1, STAY, DOWN, 3, ARTICUNO, 50
-
- ; warp-to
- warp_to 20, 17, SEAFOAM_ISLANDS_5_WIDTH ; SEAFOAM_ISLANDS_B3F
- warp_to 21, 17, SEAFOAM_ISLANDS_5_WIDTH ; SEAFOAM_ISLANDS_B3F
- warp_to 11, 7, SEAFOAM_ISLANDS_5_WIDTH ; SEAFOAM_ISLANDS_B3F
- warp_to 25, 4, SEAFOAM_ISLANDS_5_WIDTH ; SEAFOAM_ISLANDS_B3F
diff --git a/data/mapObjects/silphco1.asm b/data/mapObjects/silphco1.asm
deleted file mode 100755
index 0f98247b..00000000
--- a/data/mapObjects/silphco1.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-SilphCo1Object:
- db $2e ; border block
-
- db 5 ; warps
- warp 10, 17, 5, -1
- warp 11, 17, 5, -1
- warp 26, 0, 0, SILPH_CO_2F
- warp 20, 0, 0, SILPH_CO_ELEVATOR
- warp 16, 10, 6, SILPH_CO_3F
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_CABLE_CLUB_WOMAN, 4, 2, STAY, DOWN, 1 ; person
-
- ; warp-to
- warp_to 10, 17, SILPH_CO_1F_WIDTH
- warp_to 11, 17, SILPH_CO_1F_WIDTH
- warp_to 26, 0, SILPH_CO_1F_WIDTH ; SILPH_CO_2F
- warp_to 20, 0, SILPH_CO_1F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 16, 10, SILPH_CO_1F_WIDTH ; SILPH_CO_3F
diff --git a/data/mapObjects/silphco10.asm b/data/mapObjects/silphco10.asm
deleted file mode 100755
index 90fa2acd..00000000
--- a/data/mapObjects/silphco10.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-SilphCo10Object:
- db $2e ; border block
-
- db 6 ; warps
- warp 8, 0, 0, SILPH_CO_9F
- warp 10, 0, 0, SILPH_CO_11F
- warp 12, 0, 0, SILPH_CO_ELEVATOR
- warp 9, 11, 3, SILPH_CO_4F
- warp 13, 15, 5, SILPH_CO_4F
- warp 13, 7, 6, SILPH_CO_4F
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_ROCKET, 1, 9, STAY, RIGHT, 1, OPP_ROCKET, 39
- object SPRITE_OAK_AIDE, 10, 2, STAY, LEFT, 2, OPP_SCIENTIST, 11
- object SPRITE_ERIKA, 9, 15, WALK, 0, 3 ; person
- object SPRITE_BALL, 2, 12, STAY, NONE, 4, TM_26
- object SPRITE_BALL, 4, 14, STAY, NONE, 5, RARE_CANDY
- object SPRITE_BALL, 5, 11, STAY, NONE, 6, CARBOS
-
- ; warp-to
- warp_to 8, 0, SILPH_CO_10F_WIDTH ; SILPH_CO_9F
- warp_to 10, 0, SILPH_CO_10F_WIDTH ; SILPH_CO_11F
- warp_to 12, 0, SILPH_CO_10F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 9, 11, SILPH_CO_10F_WIDTH ; SILPH_CO_4F
- warp_to 13, 15, SILPH_CO_10F_WIDTH ; SILPH_CO_4F
- warp_to 13, 7, SILPH_CO_10F_WIDTH ; SILPH_CO_4F
diff --git a/data/mapObjects/silphco11.asm b/data/mapObjects/silphco11.asm
deleted file mode 100755
index e3cdd1a7..00000000
--- a/data/mapObjects/silphco11.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-SilphCo11Object:
- db $d ; border block
-
- db 4 ; warps
- warp 9, 0, 1, SILPH_CO_10F
- warp 13, 0, 0, SILPH_CO_ELEVATOR
- warp 5, 5, 9, -1
- warp 3, 2, 3, SILPH_CO_7F
-
- db 0 ; signs
-
- db 6 ; objects
- object SPRITE_MR_MASTERBALL, 7, 5, STAY, DOWN, 1 ; person
- object SPRITE_FOULARD_WOMAN, 10, 5, STAY, DOWN, 2 ; person
- object SPRITE_GIOVANNI, 6, 9, STAY, DOWN, 3, OPP_GIOVANNI, 2
- object SPRITE_JAMES, 2, 8, STAY, UP, 4
- object SPRITE_ROCKET, 15, 9, STAY, UP, 5, OPP_ROCKET, 40
- object SPRITE_JESSIE, 3, 8, STAY, UP, 6
-
- ; warp-to
- warp_to 9, 0, SILPH_CO_11F_WIDTH ; SILPH_CO_10F
- warp_to 13, 0, SILPH_CO_11F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 5, 5, SILPH_CO_11F_WIDTH
- warp_to 3, 2, SILPH_CO_11F_WIDTH ; SILPH_CO_7F
diff --git a/data/mapObjects/silphco2.asm b/data/mapObjects/silphco2.asm
deleted file mode 100755
index 4b7f34f6..00000000
--- a/data/mapObjects/silphco2.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-SilphCo2Object:
- db $2e ; border block
-
- db 7 ; warps
- warp 24, 0, 2, SILPH_CO_1F
- warp 26, 0, 0, SILPH_CO_3F
- warp 20, 0, 0, SILPH_CO_ELEVATOR
- warp 3, 3, 6, SILPH_CO_3F
- warp 13, 3, 4, SILPH_CO_8F
- warp 27, 15, 5, SILPH_CO_8F
- warp 9, 15, 4, SILPH_CO_6F
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_ERIKA, 10, 1, STAY, UP, 1 ; person
- object SPRITE_OAK_AIDE, 5, 12, STAY, DOWN, 2, OPP_SCIENTIST, 2
- object SPRITE_OAK_AIDE, 24, 13, STAY, LEFT, 3, OPP_SCIENTIST, 3
- object SPRITE_ROCKET, 16, 11, STAY, UP, 4, OPP_ROCKET, 23
- object SPRITE_ROCKET, 24, 7, STAY, UP, 5, OPP_ROCKET, 24
-
- ; warp-to
- warp_to 24, 0, SILPH_CO_2F_WIDTH ; SILPH_CO_1F
- warp_to 26, 0, SILPH_CO_2F_WIDTH ; SILPH_CO_3F
- warp_to 20, 0, SILPH_CO_2F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 3, 3, SILPH_CO_2F_WIDTH ; SILPH_CO_3F
- warp_to 13, 3, SILPH_CO_2F_WIDTH ; SILPH_CO_8F
- warp_to 27, 15, SILPH_CO_2F_WIDTH ; SILPH_CO_8F
- warp_to 9, 15, SILPH_CO_2F_WIDTH ; SILPH_CO_6F
diff --git a/data/mapObjects/silphco3.asm b/data/mapObjects/silphco3.asm
deleted file mode 100755
index 86b3b215..00000000
--- a/data/mapObjects/silphco3.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-SilphCo3Object:
- db $2e ; border block
-
- db 10 ; warps
- warp 26, 0, 1, SILPH_CO_2F
- warp 24, 0, 0, SILPH_CO_4F
- warp 20, 0, 0, SILPH_CO_ELEVATOR
- warp 23, 11, 9, SILPH_CO_3F
- warp 3, 3, 5, SILPH_CO_5F
- warp 3, 15, 6, SILPH_CO_5F
- warp 27, 3, 3, SILPH_CO_2F
- warp 3, 11, 3, SILPH_CO_9F
- warp 11, 11, 4, SILPH_CO_7F
- warp 27, 15, 3, SILPH_CO_3F
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_LAPRAS_GIVER, 24, 8, STAY, NONE, 1 ; person
- object SPRITE_ROCKET, 20, 7, STAY, LEFT, 2, OPP_ROCKET, 25
- object SPRITE_OAK_AIDE, 7, 9, STAY, DOWN, 3, OPP_SCIENTIST, 4
- object SPRITE_BALL, 8, 5, STAY, NONE, 4, HYPER_POTION
-
- ; warp-to
- warp_to 26, 0, SILPH_CO_3F_WIDTH ; SILPH_CO_2F
- warp_to 24, 0, SILPH_CO_3F_WIDTH ; SILPH_CO_4F
- warp_to 20, 0, SILPH_CO_3F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 23, 11, SILPH_CO_3F_WIDTH ; SILPH_CO_3F
- warp_to 3, 3, SILPH_CO_3F_WIDTH ; SILPH_CO_5F
- warp_to 3, 15, SILPH_CO_3F_WIDTH ; SILPH_CO_5F
- warp_to 27, 3, SILPH_CO_3F_WIDTH ; SILPH_CO_2F
- warp_to 3, 11, SILPH_CO_3F_WIDTH ; SILPH_CO_9F
- warp_to 11, 11, SILPH_CO_3F_WIDTH ; SILPH_CO_7F
- warp_to 27, 15, SILPH_CO_3F_WIDTH ; SILPH_CO_3F
diff --git a/data/mapObjects/silphco4.asm b/data/mapObjects/silphco4.asm
deleted file mode 100755
index 73082342..00000000
--- a/data/mapObjects/silphco4.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-SilphCo4Object:
- db $2e ; border block
-
- db 7 ; warps
- warp 24, 0, 1, SILPH_CO_3F
- warp 26, 0, 1, SILPH_CO_5F
- warp 20, 0, 0, SILPH_CO_ELEVATOR
- warp 11, 7, 3, SILPH_CO_10F
- warp 17, 3, 3, SILPH_CO_6F
- warp 3, 15, 4, SILPH_CO_10F
- warp 17, 11, 5, SILPH_CO_10F
-
- db 0 ; signs
-
- db 7 ; objects
- object SPRITE_LAPRAS_GIVER, 6, 2, STAY, NONE, 1 ; person
- object SPRITE_ROCKET, 9, 14, STAY, RIGHT, 2, OPP_ROCKET, 26
- object SPRITE_OAK_AIDE, 14, 6, STAY, LEFT, 3, OPP_SCIENTIST, 5
- object SPRITE_ROCKET, 26, 10, STAY, UP, 4, OPP_ROCKET, 27
- object SPRITE_BALL, 3, 9, STAY, NONE, 5, FULL_HEAL
- object SPRITE_BALL, 4, 7, STAY, NONE, 6, MAX_REVIVE
- object SPRITE_BALL, 5, 8, STAY, NONE, 7, ESCAPE_ROPE
-
- ; warp-to
- warp_to 24, 0, SILPH_CO_4F_WIDTH ; SILPH_CO_3F
- warp_to 26, 0, SILPH_CO_4F_WIDTH ; SILPH_CO_5F
- warp_to 20, 0, SILPH_CO_4F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 11, 7, SILPH_CO_4F_WIDTH ; SILPH_CO_10F
- warp_to 17, 3, SILPH_CO_4F_WIDTH ; SILPH_CO_6F
- warp_to 3, 15, SILPH_CO_4F_WIDTH ; SILPH_CO_10F
- warp_to 17, 11, SILPH_CO_4F_WIDTH ; SILPH_CO_10F
diff --git a/data/mapObjects/silphco5.asm b/data/mapObjects/silphco5.asm
deleted file mode 100755
index 5a7d59fc..00000000
--- a/data/mapObjects/silphco5.asm
+++ /dev/null
@@ -1,35 +0,0 @@
-SilphCo5Object:
- db $2e ; border block
-
- db 7 ; warps
- warp 24, 0, 1, SILPH_CO_6F
- warp 26, 0, 1, SILPH_CO_4F
- warp 20, 0, 0, SILPH_CO_ELEVATOR
- warp 27, 3, 5, SILPH_CO_7F
- warp 9, 15, 4, SILPH_CO_9F
- warp 11, 5, 4, SILPH_CO_3F
- warp 3, 15, 5, SILPH_CO_3F
-
- db 0 ; signs
-
- db 11 ; objects
- object SPRITE_LAPRAS_GIVER, 13, 9, STAY, NONE, 1 ; person
- object SPRITE_ROCKET, 8, 16, STAY, RIGHT, 2, OPP_ROCKET, 28
- object SPRITE_OAK_AIDE, 8, 3, STAY, RIGHT, 3, OPP_SCIENTIST, 6
- object SPRITE_ROCKER, 18, 10, STAY, UP, 4, OPP_JUGGLER, 1
- object SPRITE_ROCKET, 28, 4, STAY, UP, 5, OPP_ROCKET, 29
- object SPRITE_BALL, 2, 13, STAY, NONE, 6, TM_09
- object SPRITE_BALL, 4, 6, STAY, NONE, 7, PROTEIN
- object SPRITE_BALL, 21, 16, STAY, NONE, 8, CARD_KEY
- object SPRITE_CLIPBOARD, 22, 12, STAY, NONE, 9 ; person
- object SPRITE_CLIPBOARD, 25, 10, STAY, NONE, 10 ; person
- object SPRITE_CLIPBOARD, 24, 6, STAY, NONE, 11 ; person
-
- ; warp-to
- warp_to 24, 0, SILPH_CO_5F_WIDTH ; SILPH_CO_6F
- warp_to 26, 0, SILPH_CO_5F_WIDTH ; SILPH_CO_4F
- warp_to 20, 0, SILPH_CO_5F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 27, 3, SILPH_CO_5F_WIDTH ; SILPH_CO_7F
- warp_to 9, 15, SILPH_CO_5F_WIDTH ; SILPH_CO_9F
- warp_to 11, 5, SILPH_CO_5F_WIDTH ; SILPH_CO_3F
- warp_to 3, 15, SILPH_CO_5F_WIDTH ; SILPH_CO_3F
diff --git a/data/mapObjects/silphco6.asm b/data/mapObjects/silphco6.asm
deleted file mode 100755
index c936970d..00000000
--- a/data/mapObjects/silphco6.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-SilphCo6Object:
- db $2e ; border block
-
- db 5 ; warps
- warp 16, 0, 1, SILPH_CO_7F
- warp 14, 0, 0, SILPH_CO_5F
- warp 18, 0, 0, SILPH_CO_ELEVATOR
- warp 3, 3, 4, SILPH_CO_4F
- warp 23, 3, 6, SILPH_CO_2F
-
- db 0 ; signs
-
- db 10 ; objects
- object SPRITE_LAPRAS_GIVER, 10, 6, STAY, NONE, 1 ; person
- object SPRITE_LAPRAS_GIVER, 20, 6, STAY, NONE, 2 ; person
- object SPRITE_ERIKA, 21, 6, STAY, DOWN, 3 ; person
- object SPRITE_ERIKA, 11, 10, STAY, RIGHT, 4 ; person
- object SPRITE_LAPRAS_GIVER, 18, 13, STAY, UP, 5 ; person
- object SPRITE_ROCKET, 17, 3, STAY, RIGHT, 6, OPP_ROCKET, 30
- object SPRITE_OAK_AIDE, 7, 8, STAY, DOWN, 7, OPP_SCIENTIST, 7
- object SPRITE_ROCKET, 14, 15, STAY, LEFT, 8, OPP_ROCKET, 31
- object SPRITE_BALL, 3, 12, STAY, NONE, 9, HP_UP
- object SPRITE_BALL, 2, 15, STAY, NONE, 10, X_ACCURACY
-
- ; warp-to
- warp_to 16, 0, SILPH_CO_6F_WIDTH ; SILPH_CO_7F
- warp_to 14, 0, SILPH_CO_6F_WIDTH ; SILPH_CO_5F
- warp_to 18, 0, SILPH_CO_6F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 3, 3, SILPH_CO_6F_WIDTH ; SILPH_CO_4F
- warp_to 23, 3, SILPH_CO_6F_WIDTH ; SILPH_CO_2F
diff --git a/data/mapObjects/silphco7.asm b/data/mapObjects/silphco7.asm
deleted file mode 100755
index 96dc64a5..00000000
--- a/data/mapObjects/silphco7.asm
+++ /dev/null
@@ -1,33 +0,0 @@
-SilphCo7Object:
- db $2e ; border block
-
- db 6 ; warps
- warp 16, 0, 1, SILPH_CO_8F
- warp 22, 0, 0, SILPH_CO_6F
- warp 18, 0, 0, SILPH_CO_ELEVATOR
- warp 5, 7, 3, SILPH_CO_11F
- warp 5, 3, 8, SILPH_CO_3F
- warp 21, 15, 3, SILPH_CO_5F
-
- db 0 ; signs
-
- db 11 ; objects
- object SPRITE_LAPRAS_GIVER, 1, 5, STAY, NONE, 1 ; person
- object SPRITE_LAPRAS_GIVER, 13, 13, STAY, UP, 2 ; person
- object SPRITE_LAPRAS_GIVER, 7, 10, STAY, NONE, 3 ; person
- object SPRITE_ERIKA, 10, 8, STAY, NONE, 4 ; person
- object SPRITE_ROCKET, 13, 1, STAY, DOWN, 5, OPP_ROCKET, 32
- object SPRITE_OAK_AIDE, 2, 13, STAY, DOWN, 6, OPP_SCIENTIST, 8
- object SPRITE_ROCKET, 20, 2, STAY, LEFT, 7, OPP_ROCKET, 33
- object SPRITE_ROCKET, 19, 14, STAY, RIGHT, 8, OPP_ROCKET, 34
- object SPRITE_BLUE, 3, 7, STAY, UP, 9 ; person
- object SPRITE_BALL, 1, 9, STAY, NONE, 10, CALCIUM
- object SPRITE_BALL, 24, 11, STAY, NONE, 11, TM_03
-
- ; warp-to
- warp_to 16, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_8F
- warp_to 22, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_6F
- warp_to 18, 0, SILPH_CO_7F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 5, 7, SILPH_CO_7F_WIDTH ; SILPH_CO_11F
- warp_to 5, 3, SILPH_CO_7F_WIDTH ; SILPH_CO_3F
- warp_to 21, 15, SILPH_CO_7F_WIDTH ; SILPH_CO_5F
diff --git a/data/mapObjects/silphco8.asm b/data/mapObjects/silphco8.asm
deleted file mode 100755
index 513e84ea..00000000
--- a/data/mapObjects/silphco8.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-SilphCo8Object:
- db $2e ; border block
-
- db 7 ; warps
- warp 16, 0, 1, SILPH_CO_9F
- warp 14, 0, 0, SILPH_CO_7F
- warp 18, 0, 0, SILPH_CO_ELEVATOR
- warp 3, 11, 6, SILPH_CO_8F
- warp 3, 15, 4, SILPH_CO_2F
- warp 11, 5, 5, SILPH_CO_2F
- warp 11, 9, 3, SILPH_CO_8F
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_LAPRAS_GIVER, 4, 2, STAY, NONE, 1 ; person
- object SPRITE_ROCKET, 19, 2, STAY, LEFT, 2, OPP_ROCKET, 35
- object SPRITE_OAK_AIDE, 10, 2, STAY, DOWN, 3, OPP_SCIENTIST, 9
- object SPRITE_ROCKET, 12, 15, STAY, RIGHT, 4, OPP_ROCKET, 36
-
- ; warp-to
- warp_to 16, 0, SILPH_CO_8F_WIDTH ; SILPH_CO_9F
- warp_to 14, 0, SILPH_CO_8F_WIDTH ; SILPH_CO_7F
- warp_to 18, 0, SILPH_CO_8F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 3, 11, SILPH_CO_8F_WIDTH ; SILPH_CO_8F
- warp_to 3, 15, SILPH_CO_8F_WIDTH ; SILPH_CO_2F
- warp_to 11, 5, SILPH_CO_8F_WIDTH ; SILPH_CO_2F
- warp_to 11, 9, SILPH_CO_8F_WIDTH ; SILPH_CO_8F_WIDTH
diff --git a/data/mapObjects/silphco9.asm b/data/mapObjects/silphco9.asm
deleted file mode 100755
index 377d7ca0..00000000
--- a/data/mapObjects/silphco9.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-SilphCo9Object:
- db $2e ; border block
-
- db 5 ; warps
- warp 14, 0, 0, SILPH_CO_10F
- warp 16, 0, 0, SILPH_CO_8F
- warp 18, 0, 0, SILPH_CO_ELEVATOR
- warp 9, 3, 7, SILPH_CO_3F
- warp 17, 15, 4, SILPH_CO_5F
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_NURSE, 3, 14, STAY, DOWN, 1 ; person
- object SPRITE_ROCKET, 2, 4, STAY, UP, 2, OPP_ROCKET, 37
- object SPRITE_OAK_AIDE, 21, 13, STAY, DOWN, 3, OPP_SCIENTIST, 10
- object SPRITE_ROCKET, 13, 16, STAY, UP, 4, OPP_ROCKET, 38
-
- ; warp-to
- warp_to 14, 0, SILPH_CO_9F_WIDTH ; SILPH_CO_10F
- warp_to 16, 0, SILPH_CO_9F_WIDTH ; SILPH_CO_8F
- warp_to 18, 0, SILPH_CO_9F_WIDTH ; SILPH_CO_ELEVATOR
- warp_to 9, 3, SILPH_CO_9F_WIDTH ; SILPH_CO_3F
- warp_to 17, 15, SILPH_CO_9F_WIDTH ; SILPH_CO_5F
diff --git a/data/mapObjects/silphcoelevator.asm b/data/mapObjects/silphcoelevator.asm
deleted file mode 100755
index 205fc046..00000000
--- a/data/mapObjects/silphcoelevator.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SilphCoElevatorObject:
- db $f ; border block
-
- db 2 ; warps
- warp 1, 3, 0, 237
- warp 2, 3, 0, 237
-
- db 1 ; signs
- sign 3, 0, 1 ; SilphCoElevatorText1
-
- db 0 ; objects
-
- ; warp-to
- warp_to 1, 3, SILPH_CO_ELEVATOR_WIDTH
- warp_to 2, 3, SILPH_CO_ELEVATOR_WIDTH
diff --git a/data/mapObjects/ssanne1.asm b/data/mapObjects/ssanne1.asm
deleted file mode 100755
index 92a12616..00000000
--- a/data/mapObjects/ssanne1.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-SSAnne1Object:
- db $c ; border block
-
- db 11 ; warps
- warp 26, 0, 1, VERMILION_DOCK
- warp 27, 0, 1, VERMILION_DOCK
- warp 31, 8, 0, SS_ANNE_8
- warp 23, 8, 1, SS_ANNE_8
- warp 19, 8, 2, SS_ANNE_8
- warp 15, 8, 3, SS_ANNE_8
- warp 11, 8, 4, SS_ANNE_8
- warp 7, 8, 5, SS_ANNE_8
- warp 2, 6, 6, SS_ANNE_2
- warp 37, 15, 5, SS_ANNE_4
- warp 3, 16, 0, SS_ANNE_6
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_WAITER, 12, 6, WALK, 2, 1 ; person
- object SPRITE_SAILOR, 27, 5, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 26, 0, SS_ANNE_1_WIDTH ; VERMILION_DOCK
- warp_to 27, 0, SS_ANNE_1_WIDTH ; VERMILION_DOCK
- warp_to 31, 8, SS_ANNE_1_WIDTH ; SS_ANNE_1F_ROOMS
- warp_to 23, 8, SS_ANNE_1_WIDTH ; SS_ANNE_1F_ROOMS
- warp_to 19, 8, SS_ANNE_1_WIDTH ; SS_ANNE_1F_ROOMS
- warp_to 15, 8, SS_ANNE_1_WIDTH ; SS_ANNE_1F_ROOMS
- warp_to 11, 8, SS_ANNE_1_WIDTH ; SS_ANNE_1F_ROOMS
- warp_to 7, 8, SS_ANNE_1_WIDTH ; SS_ANNE_1F_ROOMS
- warp_to 2, 6, SS_ANNE_1_WIDTH ; SS_ANNE_2F
- warp_to 37, 15, SS_ANNE_1_WIDTH ; SS_ANNE_B1F
- warp_to 3, 16, SS_ANNE_1_WIDTH ; SS_ANNE_KITCHEN
diff --git a/data/mapObjects/ssanne10.asm b/data/mapObjects/ssanne10.asm
deleted file mode 100755
index 0f92eee1..00000000
--- a/data/mapObjects/ssanne10.asm
+++ /dev/null
@@ -1,41 +0,0 @@
-SSAnne10Object:
- db $c ; border block
-
- db 10 ; warps
- warp 2, 5, 4, SS_ANNE_4
- warp 3, 5, 4, SS_ANNE_4
- warp 12, 5, 3, SS_ANNE_4
- warp 13, 5, 3, SS_ANNE_4
- warp 22, 5, 2, SS_ANNE_4
- warp 23, 5, 2, SS_ANNE_4
- warp 2, 15, 1, SS_ANNE_4
- warp 3, 15, 1, SS_ANNE_4
- warp 12, 15, 0, SS_ANNE_4
- warp 13, 15, 0, SS_ANNE_4
-
- db 0 ; signs
-
- db 11 ; objects
- object SPRITE_SAILOR, 0, 13, STAY, DOWN, 1, OPP_SAILOR, 3
- object SPRITE_SAILOR, 2, 11, STAY, DOWN, 2, OPP_SAILOR, 4
- object SPRITE_SAILOR, 12, 3, STAY, LEFT, 3, OPP_SAILOR, 5
- object SPRITE_SAILOR, 22, 2, STAY, DOWN, 4, OPP_SAILOR, 6
- object SPRITE_SAILOR, 0, 2, STAY, RIGHT, 5, OPP_SAILOR, 7
- object SPRITE_FISHER2, 0, 4, STAY, RIGHT, 6, OPP_FISHER, 2
- object SPRITE_BLACK_HAIR_BOY_2, 10, 13, STAY, RIGHT, 7 ; person
- object SPRITE_SLOWBRO, 11, 12, STAY, NONE, 8 ; person
- object SPRITE_BALL, 20, 2, STAY, NONE, 9, ETHER
- object SPRITE_BALL, 10, 2, STAY, NONE, 10, TM_44
- object SPRITE_BALL, 12, 11, STAY, NONE, 11, MAX_POTION
-
- ; warp-to
- warp_to 2, 5, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 3, 5, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 12, 5, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 13, 5, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 22, 5, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 23, 5, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 2, 15, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 3, 15, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 12, 15, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
- warp_to 13, 15, SS_ANNE_10_WIDTH ; SS_ANNE_B1F
diff --git a/data/mapObjects/ssanne2.asm b/data/mapObjects/ssanne2.asm
deleted file mode 100755
index 2ab7947c..00000000
--- a/data/mapObjects/ssanne2.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-SSAnne2Object:
- db $c ; border block
-
- db 9 ; warps
- warp 9, 11, 0, SS_ANNE_9
- warp 13, 11, 2, SS_ANNE_9
- warp 17, 11, 4, SS_ANNE_9
- warp 21, 11, 6, SS_ANNE_9
- warp 25, 11, 8, SS_ANNE_9
- warp 29, 11, 10, SS_ANNE_9
- warp 2, 4, 8, SS_ANNE_1
- warp 2, 12, 1, SS_ANNE_3
- warp 36, 4, 0, SS_ANNE_7
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_WAITER, 3, 7, WALK, 1, 1 ; person
- object SPRITE_BLUE, 36, 4, STAY, DOWN, 2, OPP_SONY1, 1
-
- ; warp-to
- warp_to 9, 11, SS_ANNE_2_WIDTH ; SS_ANNE_2F_ROOMS
- warp_to 13, 11, SS_ANNE_2_WIDTH ; SS_ANNE_2F_ROOMS
- warp_to 17, 11, SS_ANNE_2_WIDTH ; SS_ANNE_2F_ROOMS
- warp_to 21, 11, SS_ANNE_2_WIDTH ; SS_ANNE_2F_ROOMS
- warp_to 25, 11, SS_ANNE_2_WIDTH ; SS_ANNE_2F_ROOMS
- warp_to 29, 11, SS_ANNE_2_WIDTH ; SS_ANNE_2F_ROOMS
- warp_to 2, 4, SS_ANNE_2_WIDTH ; SS_ANNE_1F
- warp_to 2, 12, SS_ANNE_2_WIDTH ; SS_ANNE_3F
- warp_to 36, 4, SS_ANNE_2_WIDTH ; SS_ANNE_CAPTAINS_ROOM
diff --git a/data/mapObjects/ssanne3.asm b/data/mapObjects/ssanne3.asm
deleted file mode 100755
index fea7c143..00000000
--- a/data/mapObjects/ssanne3.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SSAnne3Object:
- db $c ; border block
-
- db 2 ; warps
- warp 0, 3, 0, SS_ANNE_5
- warp 19, 3, 7, SS_ANNE_2
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_SAILOR, 9, 3, WALK, 2, 1 ; person
-
- ; warp-to
- warp_to 0, 3, SS_ANNE_3_WIDTH ; SS_ANNE_BOW
- warp_to 19, 3, SS_ANNE_3_WIDTH ; SS_ANNE_2F
diff --git a/data/mapObjects/ssanne4.asm b/data/mapObjects/ssanne4.asm
deleted file mode 100755
index f4a0d720..00000000
--- a/data/mapObjects/ssanne4.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-SSAnne4Object:
- db $c ; border block
-
- db 6 ; warps
- warp 23, 3, 8, SS_ANNE_10
- warp 19, 3, 6, SS_ANNE_10
- warp 15, 3, 4, SS_ANNE_10
- warp 11, 3, 2, SS_ANNE_10
- warp 7, 3, 0, SS_ANNE_10
- warp 27, 5, 9, SS_ANNE_1
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 23, 3, SS_ANNE_4_WIDTH ; SS_ANNE_B1F_ROOMS
- warp_to 19, 3, SS_ANNE_4_WIDTH ; SS_ANNE_B1F_ROOMS
- warp_to 15, 3, SS_ANNE_4_WIDTH ; SS_ANNE_B1F_ROOMS
- warp_to 11, 3, SS_ANNE_4_WIDTH ; SS_ANNE_B1F_ROOMS
- warp_to 7, 3, SS_ANNE_4_WIDTH ; SS_ANNE_B1F_ROOMS
- warp_to 27, 5, SS_ANNE_4_WIDTH ; SS_ANNE_1F
diff --git a/data/mapObjects/ssanne5.asm b/data/mapObjects/ssanne5.asm
deleted file mode 100755
index 106557be..00000000
--- a/data/mapObjects/ssanne5.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-SSAnne5Object:
- db $23 ; border block
-
- db 2 ; warps
- warp 13, 6, 0, SS_ANNE_3
- warp 13, 7, 0, SS_ANNE_3
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 5, 2, STAY, UP, 1 ; person
- object SPRITE_SAILOR, 4, 9, STAY, NONE, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 7, 11, STAY, NONE, 3 ; person
- object SPRITE_SAILOR, 4, 4, STAY, DOWN, 4, OPP_SAILOR, 1
- object SPRITE_SAILOR, 10, 8, STAY, UP, 5, OPP_SAILOR, 2
-
- ; warp-to
- warp_to 13, 6, SS_ANNE_5_WIDTH ; SS_ANNE_3
- warp_to 13, 7, SS_ANNE_5_WIDTH ; SS_ANNE_3
diff --git a/data/mapObjects/ssanne6.asm b/data/mapObjects/ssanne6.asm
deleted file mode 100755
index a25fe9b3..00000000
--- a/data/mapObjects/ssanne6.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-SSAnne6Object:
- db $c ; border block
-
- db 1 ; warps
- warp 6, 0, 10, SS_ANNE_1
-
- db 0 ; signs
-
- db 7 ; objects
- object SPRITE_COOK, 1, 8, WALK, 1, 1 ; person
- object SPRITE_COOK, 5, 8, WALK, 1, 2 ; person
- object SPRITE_COOK, 9, 7, WALK, 1, 3 ; person
- object SPRITE_COOK, 13, 6, STAY, NONE, 4 ; person
- object SPRITE_COOK, 13, 8, STAY, NONE, 5 ; person
- object SPRITE_COOK, 13, 10, STAY, NONE, 6 ; person
- object SPRITE_COOK, 11, 13, STAY, UP, 7 ; person
-
- ; warp-to
- warp_to 6, 0, SS_ANNE_6_WIDTH ; SS_ANNE_1
diff --git a/data/mapObjects/ssanne7.asm b/data/mapObjects/ssanne7.asm
deleted file mode 100755
index 7657170e..00000000
--- a/data/mapObjects/ssanne7.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SSAnne7Object:
- db $c ; border block
-
- db 1 ; warps
- warp 0, 7, 8, SS_ANNE_2
-
- db 2 ; signs
- sign 4, 1, 2 ; SSAnne7Text2
- sign 1, 2, 3 ; SSAnne7Text3
-
- db 1 ; objects
- object SPRITE_SS_CAPTAIN, 4, 2, STAY, UP, 1 ; person
-
- ; warp-to
- warp_to 0, 7, SS_ANNE_7_WIDTH ; SS_ANNE_2
diff --git a/data/mapObjects/ssanne8.asm b/data/mapObjects/ssanne8.asm
deleted file mode 100755
index b5ad60fd..00000000
--- a/data/mapObjects/ssanne8.asm
+++ /dev/null
@@ -1,33 +0,0 @@
-SSAnne8Object:
- db $c ; border block
-
- db 6 ; warps
- warp 0, 0, 2, SS_ANNE_1
- warp 10, 0, 3, SS_ANNE_1
- warp 20, 0, 4, SS_ANNE_1
- warp 0, 10, 5, SS_ANNE_1
- warp 10, 10, 6, SS_ANNE_1
- warp 20, 10, 7, SS_ANNE_1
-
- db 0 ; signs
-
- db 11 ; objects
- object SPRITE_GENTLEMAN, 2, 3, STAY, LEFT, 1, OPP_GENTLEMAN, 1
- object SPRITE_GENTLEMAN, 11, 4, STAY, UP, 2, OPP_GENTLEMAN, 2
- object SPRITE_BUG_CATCHER, 11, 14, STAY, UP, 3, OPP_YOUNGSTER, 8
- object SPRITE_LASS, 13, 11, STAY, LEFT, 4, OPP_LASS, 11
- object SPRITE_GIRL, 22, 3, WALK, 1, 5 ; person
- object SPRITE_FAT_BALD_GUY, 0, 14, STAY, NONE, 6 ; person
- object SPRITE_LITTLE_GIRL, 2, 11, STAY, DOWN, 7 ; person
- object SPRITE_JIGGLYPUFF, 3, 11, STAY, DOWN, 8 ; person
- object SPRITE_GIRL, 10, 13, STAY, RIGHT, 9 ; person
- object SPRITE_BALL, 12, 15, STAY, NONE, 10, TM_08
- object SPRITE_GENTLEMAN, 21, 13, WALK, 2, 11 ; person
-
- ; warp-to
- warp_to 0, 0, SS_ANNE_8_WIDTH ; SS_ANNE_1
- warp_to 10, 0, SS_ANNE_8_WIDTH ; SS_ANNE_1
- warp_to 20, 0, SS_ANNE_8_WIDTH ; SS_ANNE_1
- warp_to 0, 10, SS_ANNE_8_WIDTH ; SS_ANNE_1
- warp_to 10, 10, SS_ANNE_8_WIDTH ; SS_ANNE_1
- warp_to 20, 10, SS_ANNE_8_WIDTH ; SS_ANNE_1
diff --git a/data/mapObjects/ssanne9.asm b/data/mapObjects/ssanne9.asm
deleted file mode 100755
index 455e6983..00000000
--- a/data/mapObjects/ssanne9.asm
+++ /dev/null
@@ -1,47 +0,0 @@
-SSAnne9Object:
- db $c ; border block
-
- db 12 ; warps
- warp 2, 5, 0, SS_ANNE_2
- warp 3, 5, 0, SS_ANNE_2
- warp 12, 5, 1, SS_ANNE_2
- warp 13, 5, 1, SS_ANNE_2
- warp 22, 5, 2, SS_ANNE_2
- warp 23, 5, 2, SS_ANNE_2
- warp 2, 15, 3, SS_ANNE_2
- warp 3, 15, 3, SS_ANNE_2
- warp 12, 15, 4, SS_ANNE_2
- warp 13, 15, 4, SS_ANNE_2
- warp 22, 15, 5, SS_ANNE_2
- warp 23, 15, 5, SS_ANNE_2
-
- db 0 ; signs
-
- db 13 ; objects
- object SPRITE_GENTLEMAN, 10, 2, STAY, RIGHT, 1, OPP_GENTLEMAN, 3
- object SPRITE_FISHER2, 13, 4, STAY, LEFT, 2, OPP_FISHER, 1
- object SPRITE_GENTLEMAN, 0, 14, STAY, RIGHT, 3, OPP_GENTLEMAN, 5
- object SPRITE_LASS, 2, 11, STAY, DOWN, 4, OPP_LASS, 12
- object SPRITE_GENTLEMAN, 1, 2, STAY, DOWN, 5 ; person
- object SPRITE_BALL, 12, 1, STAY, NONE, 6, MAX_ETHER
- object SPRITE_GENTLEMAN, 21, 2, STAY, DOWN, 7 ; person
- object SPRITE_OLD_PERSON, 22, 1, STAY, DOWN, 8 ; person
- object SPRITE_BALL, 0, 12, STAY, NONE, 9, RARE_CANDY
- object SPRITE_GENTLEMAN, 12, 12, STAY, DOWN, 10 ; person
- object SPRITE_YOUNG_BOY, 11, 14, STAY, NONE, 11 ; person
- object SPRITE_BRUNETTE_GIRL, 22, 12, STAY, LEFT, 12 ; person
- object SPRITE_FOULARD_WOMAN, 20, 12, STAY, RIGHT, 13 ; person
-
- ; warp-to
- warp_to 2, 5, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 3, 5, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 12, 5, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 13, 5, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 22, 5, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 23, 5, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 2, 15, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 3, 15, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 12, 15, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 13, 15, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 22, 15, SS_ANNE_9_WIDTH ; SS_ANNE_2
- warp_to 23, 15, SS_ANNE_9_WIDTH ; SS_ANNE_2
diff --git a/data/mapObjects/tradecenter.asm b/data/mapObjects/tradecenter.asm
deleted file mode 100644
index 63c3e04a..00000000
--- a/data/mapObjects/tradecenter.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-TradeCenterObject:
- db $e ; border block
-
- db 0 ; warps
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_RED, 2, 2, STAY, 0, 1 ; person
diff --git a/data/mapObjects/undergroundpathentranceroute5.asm b/data/mapObjects/undergroundpathentranceroute5.asm
deleted file mode 100755
index dd6746a7..00000000
--- a/data/mapObjects/undergroundpathentranceroute5.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-UndergroundPathEntranceRoute5Object:
- db $a ; border block
-
- db 3 ; warps
- warp 3, 7, 3, -1
- warp 4, 7, 3, -1
- warp 4, 4, 0, UNDERGROUND_PATH_NS
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_LITTLE_GIRL, 2, 3, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 3, 7, PATH_ENTRANCE_ROUTE_5_WIDTH
- warp_to 4, 7, PATH_ENTRANCE_ROUTE_5_WIDTH
- warp_to 4, 4, PATH_ENTRANCE_ROUTE_5_WIDTH ; UNDERGROUND_PATH_NORTH_SOUTH
diff --git a/data/mapObjects/undergroundpathentranceroute6.asm b/data/mapObjects/undergroundpathentranceroute6.asm
deleted file mode 100755
index bb2fed89..00000000
--- a/data/mapObjects/undergroundpathentranceroute6.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-UndergroundPathEntranceRoute6Object:
- db $a ; border block
-
- db 3 ; warps
- warp 3, 7, 3, -1
- warp 4, 7, 3, -1
- warp 4, 4, 1, UNDERGROUND_PATH_NS
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GIRL, 2, 3, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 3, 7, PATH_ENTRANCE_ROUTE_6_WIDTH
- warp_to 4, 7, PATH_ENTRANCE_ROUTE_6_WIDTH
- warp_to 4, 4, PATH_ENTRANCE_ROUTE_6_WIDTH ; UNDERGROUND_PATH_NORTH_SOUTH
diff --git a/data/mapObjects/undergroundpathentranceroute7.asm b/data/mapObjects/undergroundpathentranceroute7.asm
deleted file mode 100755
index be4a10d4..00000000
--- a/data/mapObjects/undergroundpathentranceroute7.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-UndergroundPathEntranceRoute7Object:
- db $a ; border block
-
- db 3 ; warps
- warp 3, 7, 4, -1
- warp 4, 7, 4, -1
- warp 4, 4, 0, UNDERGROUND_PATH_WE
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FAT_BALD_GUY, 2, 4, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 3, 7, PATH_ENTRANCE_ROUTE_7_WIDTH
- warp_to 4, 7, PATH_ENTRANCE_ROUTE_7_WIDTH
- warp_to 4, 4, PATH_ENTRANCE_ROUTE_7_WIDTH ; UNDERGROUND_PATH_WEST_EAST
diff --git a/data/mapObjects/undergroundpathentranceroute7copy.asm b/data/mapObjects/undergroundpathentranceroute7copy.asm
deleted file mode 100755
index 20b74599..00000000
--- a/data/mapObjects/undergroundpathentranceroute7copy.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-UndergroundPathEntranceRoute7CopyObject:
- db $a ; border block
-
- db 3 ; warps
- warp 3, 7, 5, -1
- warp 4, 7, 5, -1
- warp 4, 4, 0, UNDERGROUND_PATH_WE
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_GIRL, 3, 2, STAY, NONE, 1 ; person
- object SPRITE_FAT_BALD_GUY, 2, 4, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 3, 7, PATH_ENTRANCE_ROUTE_7_COPY_WIDTH
- warp_to 4, 7, PATH_ENTRANCE_ROUTE_7_COPY_WIDTH
- warp_to 4, 4, PATH_ENTRANCE_ROUTE_7_COPY_WIDTH ; UNDERGROUND_PATH_WE
diff --git a/data/mapObjects/undergroundpathentranceroute8.asm b/data/mapObjects/undergroundpathentranceroute8.asm
deleted file mode 100755
index 4ae05e89..00000000
--- a/data/mapObjects/undergroundpathentranceroute8.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-UndergroundPathEntranceRoute8Object:
- db $a ; border block
-
- db 3 ; warps
- warp 3, 7, 4, -1
- warp 4, 7, 4, -1
- warp 4, 4, 1, UNDERGROUND_PATH_WE
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GIRL, 3, 4, STAY, NONE, 1 ; person
-
- ; warp-to
- warp_to 3, 7, PATH_ENTRANCE_ROUTE_8_WIDTH
- warp_to 4, 7, PATH_ENTRANCE_ROUTE_8_WIDTH
- warp_to 4, 4, PATH_ENTRANCE_ROUTE_8_WIDTH ; UNDERGROUND_PATH_WEST_EAST
diff --git a/data/mapObjects/undergroundpathns.asm b/data/mapObjects/undergroundpathns.asm
deleted file mode 100755
index 69fc1857..00000000
--- a/data/mapObjects/undergroundpathns.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-UndergroundPathNSObject:
- db $1 ; border block
-
- db 2 ; warps
- warp 5, 4, 2, PATH_ENTRANCE_ROUTE_5
- warp 2, 41, 2, PATH_ENTRANCE_ROUTE_6
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 5, 4, UNDERGROUND_PATH_NS_WIDTH ; UNDERGROUND_PATH_ROUTE_5
- warp_to 2, 41, UNDERGROUND_PATH_NS_WIDTH ; UNDERGROUND_PATH_ROUTE_6
diff --git a/data/mapObjects/undergroundpathwe.asm b/data/mapObjects/undergroundpathwe.asm
deleted file mode 100755
index dab6e292..00000000
--- a/data/mapObjects/undergroundpathwe.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-UndergroundPathWEObject:
- db $1 ; border block
-
- db 2 ; warps
- warp 2, 5, 2, PATH_ENTRANCE_ROUTE_7
- warp 47, 2, 2, PATH_ENTRANCE_ROUTE_8
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 2, 5, UNDERGROUND_PATH_WE_WIDTH ; UNDERGROUND_PATH_ROUTE_7
- warp_to 47, 2, UNDERGROUND_PATH_WE_WIDTH ; UNDERGROUND_PATH_ROUTE_8
diff --git a/data/mapObjects/unknowndungeon1.asm b/data/mapObjects/unknowndungeon1.asm
deleted file mode 100755
index 1287f752..00000000
--- a/data/mapObjects/unknowndungeon1.asm
+++ /dev/null
@@ -1,32 +0,0 @@
-UnknownDungeon1Object:
- db $7d ; border block
-
- db 9 ; warps
- warp 24, 17, 6, -1
- warp 25, 17, 6, -1
- warp 27, 1, 0, UNKNOWN_DUNGEON_2
- warp 23, 7, 1, UNKNOWN_DUNGEON_2
- warp 18, 9, 2, UNKNOWN_DUNGEON_2
- warp 7, 1, 3, UNKNOWN_DUNGEON_2
- warp 1, 3, 4, UNKNOWN_DUNGEON_2
- warp 3, 11, 5, UNKNOWN_DUNGEON_2
- warp 0, 6, 0, UNKNOWN_DUNGEON_3
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_BALL, $1d, $10, STAY, NONE, $1, RARE_CANDY
- object SPRITE_BALL, $7, $b, STAY, NONE, $2, MAX_ELIXER
- object SPRITE_BALL, $1d, $9, STAY, NONE, $3, MAX_REVIVE
- object SPRITE_BALL, $12, $3, STAY, NONE, $4, ULTRA_BALL
-
- ; warp-to
- warp_to 24, 17, UNKNOWN_DUNGEON_1_WIDTH
- warp_to 25, 17, UNKNOWN_DUNGEON_1_WIDTH
- warp_to 27, 1, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_2
- warp_to 23, 7, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_2
- warp_to 18, 9, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_2
- warp_to 7, 1, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_2
- warp_to 1, 3, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_2
- warp_to 3, 11, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_2
- warp_to 0, 6, UNKNOWN_DUNGEON_1_WIDTH ; UNKNOWN_DUNGEON_3
diff --git a/data/mapObjects/unknowndungeon2.asm b/data/mapObjects/unknowndungeon2.asm
deleted file mode 100755
index 9d53c2bf..00000000
--- a/data/mapObjects/unknowndungeon2.asm
+++ /dev/null
@@ -1,26 +0,0 @@
-UnknownDungeon2Object:
- db $7d ; border block
-
- db 6 ; warps
- warp 29, 1, 2, UNKNOWN_DUNGEON_1
- warp 22, 6, 3, UNKNOWN_DUNGEON_1
- warp 19, 7, 4, UNKNOWN_DUNGEON_1
- warp 9, 1, 5, UNKNOWN_DUNGEON_1
- warp 1, 3, 6, UNKNOWN_DUNGEON_1
- warp 3, 11, 7, UNKNOWN_DUNGEON_1
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_BALL, 0, 11, STAY, NONE, 1, RARE_CANDY
- object SPRITE_BALL, 16, 7, STAY, NONE, 2, ULTRA_BALL
- object SPRITE_BALL, 19, 11, STAY, NONE, 3, MAX_REVIVE
- object SPRITE_BALL, 27, 9, STAY, NONE, 4, FULL_RESTORE
-
- ; warp-to
- warp_to 29, 1, UNKNOWN_DUNGEON_2_WIDTH ; CERULEAN_CAVE_1F
- warp_to 22, 6, UNKNOWN_DUNGEON_2_WIDTH ; CERULEAN_CAVE_1F
- warp_to 19, 7, UNKNOWN_DUNGEON_2_WIDTH ; CERULEAN_CAVE_1F
- warp_to 9, 1, UNKNOWN_DUNGEON_2_WIDTH ; CERULEAN_CAVE_1F
- warp_to 1, 3, UNKNOWN_DUNGEON_2_WIDTH ; CERULEAN_CAVE_1F
- warp_to 3, 11, UNKNOWN_DUNGEON_2_WIDTH ; CERULEAN_CAVE_1F
diff --git a/data/mapObjects/unknowndungeon3.asm b/data/mapObjects/unknowndungeon3.asm
deleted file mode 100755
index b658d9f3..00000000
--- a/data/mapObjects/unknowndungeon3.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-UnknownDungeon3Object:
- db $7d ; border block
-
- db 1 ; warps
- warp 3, 6, 8, UNKNOWN_DUNGEON_1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_SLOWBRO, 27, 13, STAY, DOWN, 1, MEWTWO, 70
- object SPRITE_BALL, 26, 1, STAY, NONE, 2, ULTRA_BALL
- object SPRITE_BALL, 2, 13, STAY, NONE, 3, ULTRA_BALL
- object SPRITE_BALL, 3, 13, STAY, NONE, 4, MAX_REVIVE
- object SPRITE_BALL, 15, 3, STAY, NONE, 5, MAX_ELIXER
-
- ; warp-to
- warp_to 3, 6, UNKNOWN_DUNGEON_3_WIDTH ; UNKNOWN_DUNGEON_1
diff --git a/data/mapObjects/vermilioncity.asm b/data/mapObjects/vermilioncity.asm
deleted file mode 100755
index f4e5f1ce..00000000
--- a/data/mapObjects/vermilioncity.asm
+++ /dev/null
@@ -1,42 +0,0 @@
-VermilionCityObject:
- db $43 ; border block
-
- db 9 ; warps
- warp 11, 3, 0, VERMILION_POKECENTER
- warp 9, 13, 0, POKEMON_FAN_CLUB
- warp 23, 13, 0, VERMILION_MART
- warp 12, 19, 0, VERMILION_GYM
- warp 23, 19, 0, VERMILION_HOUSE_1
- warp 18, 31, 0, VERMILION_DOCK
- warp 19, 31, 0, VERMILION_DOCK
- warp 15, 13, 0, VERMILION_HOUSE_3
- warp 7, 3, 0, VERMILION_HOUSE_2
-
- db 7 ; signs
- sign 27, 3, 8 ; VermilionCityText7
- sign 37, 13, 9 ; VermilionCityText8
- sign 24, 13, 10 ; MartSignText
- sign 12, 3, 11 ; PokeCenterSignText
- sign 7, 13, 12 ; VermilionCityText11
- sign 7, 19, 13 ; VermilionCityText12
- sign 29, 15, 14 ; VermilionCityText13
-
- db 7 ; objects
- object SPRITE_LASS, 19, 7, WALK, 2, 1 ; person
- object SPRITE_GAMBLER, 14, 6, STAY, NONE, 2 ; person
- object SPRITE_SAILOR, 19, 30, STAY, UP, 3 ; person
- object SPRITE_GAMBLER, 30, 7, STAY, NONE, 4 ; person
- object SPRITE_SLOWBRO, 29, 9, WALK, 1, 5 ; person
- object SPRITE_SAILOR, 25, 27, WALK, 2, 6 ; person
- object SPRITE_OFFICER_JENNY, 19, 15, STAY, NONE, 7 ; person
-
- ; warp-to
- warp_to 11, 3, VERMILION_CITY_WIDTH ; VERMILION_POKECENTER
- warp_to 9, 13, VERMILION_CITY_WIDTH ; POKEMON_FAN_CLUB
- warp_to 23, 13, VERMILION_CITY_WIDTH ; VERMILION_MART
- warp_to 12, 19, VERMILION_CITY_WIDTH ; VERMILION_GYM
- warp_to 23, 19, VERMILION_CITY_WIDTH ; VERMILION_PIDGEY_HOUSE
- warp_to 18, 31, VERMILION_CITY_WIDTH ; VERMILION_DOCK
- warp_to 19, 31, VERMILION_CITY_WIDTH ; VERMILION_DOCK
- warp_to 15, 13, VERMILION_CITY_WIDTH ; VERMILION_TRADE_HOUSE
- warp_to 7, 3, VERMILION_CITY_WIDTH ; VERMILION_OLD_ROD_HOUSE
diff --git a/data/mapObjects/vermiliondock.asm b/data/mapObjects/vermiliondock.asm
deleted file mode 100755
index 289689b5..00000000
--- a/data/mapObjects/vermiliondock.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-VermilionDockObject:
- db $f ; border block
-
- db 2 ; warps
- warp 14, 0, 5, -1
- warp 14, 2, 1, SS_ANNE_1
-
- db 0 ; signs
-
- db 0 ; objects
-
- ; warp-to
- warp_to 14, 0, VERMILION_DOCK_WIDTH
- warp_to 14, 2, VERMILION_DOCK_WIDTH ; SS_ANNE_1
diff --git a/data/mapObjects/vermiliongym.asm b/data/mapObjects/vermiliongym.asm
deleted file mode 100755
index 843454c0..00000000
--- a/data/mapObjects/vermiliongym.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-VermilionGymObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 4, 17, 3, -1
- warp 5, 17, 3, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_ROCKER, 5, 1, STAY, DOWN, 1, OPP_LT_SURGE, 1
- object SPRITE_GENTLEMAN, 9, 6, STAY, LEFT, 2, OPP_GENTLEMAN, 3
- object SPRITE_BLACK_HAIR_BOY_2, 3, 8, STAY, LEFT, 3, OPP_ROCKER, 1
- object SPRITE_SAILOR, 0, 10, STAY, RIGHT, 4, OPP_SAILOR, 8
- object SPRITE_GYM_HELPER, 4, 14, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 4, 17, VERMILION_GYM_WIDTH
- warp_to 5, 17, VERMILION_GYM_WIDTH
diff --git a/data/mapObjects/vermilionhouse1.asm b/data/mapObjects/vermilionhouse1.asm
deleted file mode 100755
index bbb7491b..00000000
--- a/data/mapObjects/vermilionhouse1.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-VermilionHouse1Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 4, -1
- warp 3, 7, 4, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_BUG_CATCHER, 5, 3, STAY, LEFT, 1 ; person
- object SPRITE_BIRD, 3, 5, WALK, 2, 2 ; person
- object SPRITE_PAPER_SHEET, 4, 3, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 2, 7, VERMILION_HOUSE_1_WIDTH
- warp_to 3, 7, VERMILION_HOUSE_1_WIDTH
diff --git a/data/mapObjects/vermilionhouse2.asm b/data/mapObjects/vermilionhouse2.asm
deleted file mode 100755
index e612b06a..00000000
--- a/data/mapObjects/vermilionhouse2.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-VermilionHouse2Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 8, -1
- warp 3, 7, 8, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_FISHER, 2, 4, STAY, RIGHT, 1 ; person
-
- ; warp-to
- warp_to 2, 7, VERMILION_HOUSE_2_WIDTH
- warp_to 3, 7, VERMILION_HOUSE_2_WIDTH
diff --git a/data/mapObjects/vermilionhouse3.asm b/data/mapObjects/vermilionhouse3.asm
deleted file mode 100755
index bc5ec829..00000000
--- a/data/mapObjects/vermilionhouse3.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-VermilionHouse3Object:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 7, -1
- warp 3, 7, 7, -1
-
- db 0 ; signs
-
- db 1 ; objects
- object SPRITE_GENTLEMAN, 3, 5, STAY, UP, 1 ; person
-
- ; warp-to
- warp_to 2, 7, VERMILION_HOUSE_3_WIDTH
- warp_to 3, 7, VERMILION_HOUSE_3_WIDTH
diff --git a/data/mapObjects/vermilionmart.asm b/data/mapObjects/vermilionmart.asm
deleted file mode 100755
index f5b15c7d..00000000
--- a/data/mapObjects/vermilionmart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-VermilionMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 2, -1
- warp 4, 7, 2, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 5, 6, STAY, NONE, 2 ; person
- object SPRITE_LASS, 3, 3, WALK, 2, 3 ; person
-
- ; warp-to
- warp_to 3, 7, VERMILION_MART_WIDTH
- warp_to 4, 7, VERMILION_MART_WIDTH
diff --git a/data/mapObjects/vermilionpokecenter.asm b/data/mapObjects/vermilionpokecenter.asm
deleted file mode 100755
index b18a34c1..00000000
--- a/data/mapObjects/vermilionpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-VermilionPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 0, -1
- warp 4, 7, 0, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_FISHER, 10, 5, STAY, NONE, 2 ; person
- object SPRITE_SAILOR, 5, 4, STAY, NONE, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, VERMILION_POKECENTER_WIDTH
- warp_to 4, 7, VERMILION_POKECENTER_WIDTH
diff --git a/data/mapObjects/victoryroad1.asm b/data/mapObjects/victoryroad1.asm
deleted file mode 100755
index 325a9715..00000000
--- a/data/mapObjects/victoryroad1.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-VictoryRoad1Object:
- db $7d ; border block
-
- db 3 ; warps
- warp 8, 17, 2, -1
- warp 9, 17, 2, -1
- warp 1, 1, 0, VICTORY_ROAD_2
-
- db 0 ; signs
-
- db 7 ; objects
- object SPRITE_LASS, 7, 5, STAY, RIGHT, 1, OPP_COOLTRAINER_F, 5
- object SPRITE_BLACK_HAIR_BOY_1, 3, 2, STAY, DOWN, 2, OPP_COOLTRAINER_M, 5
- object SPRITE_BALL, 11, 0, STAY, NONE, 3, TM_43
- object SPRITE_BALL, 9, 2, STAY, NONE, 4, RARE_CANDY
- object SPRITE_BOULDER, 5, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 5 ; person
- object SPRITE_BOULDER, 14, 2, STAY, BOULDER_MOVEMENT_BYTE_2, 6 ; person
- object SPRITE_BOULDER, 2, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 7 ; person
-
- ; warp-to
- warp_to 8, 17, VICTORY_ROAD_1_WIDTH
- warp_to 9, 17, VICTORY_ROAD_1_WIDTH
- warp_to 1, 1, VICTORY_ROAD_1_WIDTH ; VICTORY_ROAD_2F
diff --git a/data/mapObjects/victoryroad2.asm b/data/mapObjects/victoryroad2.asm
deleted file mode 100755
index bc55e2da..00000000
--- a/data/mapObjects/victoryroad2.asm
+++ /dev/null
@@ -1,37 +0,0 @@
-VictoryRoad2Object:
- db $7d ; border block
-
- db 7 ; warps
- warp 0, 8, 2, VICTORY_ROAD_1
- warp 29, 7, 3, -1
- warp 29, 8, 3, -1
- warp 23, 7, 0, VICTORY_ROAD_3
- warp 25, 14, 2, VICTORY_ROAD_3
- warp 27, 7, 1, VICTORY_ROAD_3
- warp 1, 1, 3, VICTORY_ROAD_3
-
- db 0 ; signs
-
- db 13 ; objects
- object SPRITE_HIKER, 12, 9, STAY, LEFT, 1, OPP_BLACKBELT, 9
- object SPRITE_BLACK_HAIR_BOY_2, 21, 13, STAY, LEFT, 2, OPP_JUGGLER, 2
- object SPRITE_BLACK_HAIR_BOY_1, 19, 8, STAY, DOWN, 3, OPP_TAMER, 5
- object SPRITE_BLACK_HAIR_BOY_2, 4, 2, STAY, DOWN, 4, OPP_POKEMANIAC, 6
- object SPRITE_BLACK_HAIR_BOY_2, 26, 3, STAY, LEFT, 5, OPP_JUGGLER, 5
- object SPRITE_BIRD, 11, 5, STAY, UP, 6, MOLTRES, 50
- object SPRITE_BALL, 27, 5, STAY, NONE, 7, TM_17
- object SPRITE_BALL, 18, 9, STAY, NONE, 8, FULL_HEAL
- object SPRITE_BALL, 9, 11, STAY, NONE, 9, TM_05
- object SPRITE_BALL, 11, 0, STAY, NONE, 10, GUARD_SPEC
- object SPRITE_BOULDER, 4, 14, STAY, BOULDER_MOVEMENT_BYTE_2, 11 ; person
- object SPRITE_BOULDER, 5, 5, STAY, BOULDER_MOVEMENT_BYTE_2, 12 ; person
- object SPRITE_BOULDER, 23, 16, STAY, BOULDER_MOVEMENT_BYTE_2, 13 ; person
-
- ; warp-to
- warp_to 0, 8, VICTORY_ROAD_2_WIDTH ; VICTORY_ROAD_1F
- warp_to 29, 7, VICTORY_ROAD_2_WIDTH
- warp_to 29, 8, VICTORY_ROAD_2_WIDTH
- warp_to 23, 7, VICTORY_ROAD_2_WIDTH ; VICTORY_ROAD_3F
- warp_to 25, 14, VICTORY_ROAD_2_WIDTH ; VICTORY_ROAD_3F
- warp_to 27, 7, VICTORY_ROAD_2_WIDTH ; VICTORY_ROAD_3F
- warp_to 1, 1, VICTORY_ROAD_2_WIDTH ; VICTORY_ROAD_3F
diff --git a/data/mapObjects/victoryroad3.asm b/data/mapObjects/victoryroad3.asm
deleted file mode 100755
index a71cd172..00000000
--- a/data/mapObjects/victoryroad3.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-VictoryRoad3Object:
- db $7d ; border block
-
- db 4 ; warps
- warp 23, 7, 3, VICTORY_ROAD_2
- warp 26, 8, 5, VICTORY_ROAD_2
- warp 27, 15, 4, VICTORY_ROAD_2
- warp 2, 0, 6, VICTORY_ROAD_2
-
- db 0 ; signs
-
- db 10 ; objects
- object SPRITE_BLACK_HAIR_BOY_1, 28, 5, STAY, LEFT, 1, OPP_COOLTRAINER_M, 2
- object SPRITE_LASS, 7, 13, STAY, RIGHT, 2, OPP_COOLTRAINER_F, 2
- object SPRITE_BLACK_HAIR_BOY_1, 6, 14, STAY, LEFT, 3, OPP_COOLTRAINER_M, 3
- object SPRITE_LASS, 13, 3, STAY, RIGHT, 4, OPP_COOLTRAINER_F, 3
- object SPRITE_BALL, 26, 5, STAY, NONE, 5, MAX_REVIVE
- object SPRITE_BALL, 7, 7, STAY, NONE, 6, TM_47
- object SPRITE_BOULDER, 22, 3, STAY, BOULDER_MOVEMENT_BYTE_2, 7 ; person
- object SPRITE_BOULDER, 13, 12, STAY, BOULDER_MOVEMENT_BYTE_2, 8 ; person
- object SPRITE_BOULDER, 24, 10, STAY, BOULDER_MOVEMENT_BYTE_2, 9 ; person
- object SPRITE_BOULDER, 22, 15, STAY, BOULDER_MOVEMENT_BYTE_2, 10 ; person
-
- ; warp-to
- warp_to 23, 7, VICTORY_ROAD_3_WIDTH ; VICTORY_ROAD_2F
- warp_to 26, 8, VICTORY_ROAD_3_WIDTH ; VICTORY_ROAD_2F
- warp_to 27, 15, VICTORY_ROAD_3_WIDTH ; VICTORY_ROAD_2F
- warp_to 2, 0, VICTORY_ROAD_3_WIDTH ; VICTORY_ROAD_2F
diff --git a/data/mapObjects/viridiancity.asm b/data/mapObjects/viridiancity.asm
deleted file mode 100755
index 8a571da9..00000000
--- a/data/mapObjects/viridiancity.asm
+++ /dev/null
@@ -1,34 +0,0 @@
-ViridianCityObject:
- db $f ; border block
-
- db 5 ; warps
- warp 23, 25, 0, VIRIDIAN_POKECENTER
- warp 29, 19, 0, VIRIDIAN_MART
- warp 21, 15, 0, VIRIDIAN_SCHOOL
- warp 21, 9, 0, VIRIDIAN_HOUSE
- warp 32, 7, 0, VIRIDIAN_GYM
-
- db 6 ; signs
- sign 17, 17, 9 ; ViridianCityText8
- sign 19, 1, 10 ; ViridianCityText9
- sign 21, 29, 11 ; ViridianCityText10
- sign 30, 19, 12 ; MartSignText
- sign 24, 25, 13 ; PokeCenterSignText
- sign 27, 7, 14 ; ViridianCityText13
-
- db 8 ; objects
- object SPRITE_BUG_CATCHER, 13, 20, WALK, 0, 1 ; person
- object SPRITE_GAMBLER, 30, 8, STAY, NONE, 2 ; person
- object SPRITE_BUG_CATCHER, 30, 25, WALK, 0, 3 ; person
- object SPRITE_GIRL, 17, 9, STAY, RIGHT, 4 ; person
- object SPRITE_LYING_OLD_MAN, 18, 9, STAY, NONE, 5 ; person
- object SPRITE_FISHER2, 6, 23, STAY, DOWN, 6 ; person
- object SPRITE_GAMBLER, 17, 5, WALK, 2, 7 ; person
- object SPRITE_GAMBLER, 18, 9, STAY, NONE, 8
-
- ; warp-to
- warp_to 23, 25, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_POKECENTER
- warp_to 29, 19, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_MART
- warp_to 21, 15, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_SCHOOL_HOUSE
- warp_to 21, 9, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_NICKNAME_HOUSE
- warp_to 32, 7, VIRIDIAN_CITY_WIDTH ; VIRIDIAN_GYM
diff --git a/data/mapObjects/viridianforest.asm b/data/mapObjects/viridianforest.asm
deleted file mode 100755
index 9502ed7d..00000000
--- a/data/mapObjects/viridianforest.asm
+++ /dev/null
@@ -1,38 +0,0 @@
-ViridianForestObject:
- db $3 ; border block
-
- db 6 ; warps
- warp 1, 0, 2, VIRIDIAN_FOREST_EXIT
- warp 2, 0, 2, VIRIDIAN_FOREST_EXIT
- warp 15, 47, 1, VIRIDIAN_FOREST_ENTRANCE
- warp 16, 47, 1, VIRIDIAN_FOREST_ENTRANCE
- warp 17, 47, 1, VIRIDIAN_FOREST_ENTRANCE
- warp 18, 47, 1, VIRIDIAN_FOREST_ENTRANCE
-
- db 6 ; signs
- sign 24, 40, 11 ; ViridianForestText9
- sign 16, 32, 12 ; ViridianForestText10
- sign 26, 17, 13 ; ViridianForestText11
- sign 4, 24, 14 ; ViridianForestText12
- sign 18, 45, 15 ; ViridianForestText13
- sign 2, 1, 16 ; ViridianForestText14
-
- db 10 ; objects
- object SPRITE_BUG_CATCHER, 16, 43, STAY, NONE, 1 ; person
- object SPRITE_BUG_CATCHER, 30, 33, STAY, LEFT, 2, OPP_BUG_CATCHER, 1
- object SPRITE_BUG_CATCHER, 30, 19, STAY, LEFT, 3, OPP_BUG_CATCHER, 2
- object SPRITE_BUG_CATCHER, 2, 18, STAY, LEFT, 4, OPP_BUG_CATCHER, 3
- object SPRITE_LASS, 2, 41, STAY, NONE, 5, OPP_LASS, 19
- object SPRITE_BUG_CATCHER, 13, 17, STAY, RIGHT, 6, OPP_BUG_CATCHER, 15
- object SPRITE_BALL, 25, 11, STAY, NONE, 7, POTION
- object SPRITE_BALL, 12, 29, STAY, NONE, 8, POTION
- object SPRITE_BALL, 1, 31, STAY, NONE, 9, POKE_BALL
- object SPRITE_BUG_CATCHER, 27, 40, STAY, NONE, 10 ; person
-
- ; warp-to
- warp_to 1, 0, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_NORTH_GATE
- warp_to 2, 0, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_NORTH_GATE
- warp_to 15, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
- warp_to 16, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
- warp_to 17, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
- warp_to 18, 47, VIRIDIAN_FOREST_WIDTH ; VIRIDIAN_FOREST_SOUTH_GATE
diff --git a/data/mapObjects/viridianforestentrance.asm b/data/mapObjects/viridianforestentrance.asm
deleted file mode 100755
index d84e5df5..00000000
--- a/data/mapObjects/viridianforestentrance.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-ViridianForestEntranceObject:
- db $a ; border block
-
- db 4 ; warps
- warp 4, 0, 3, VIRIDIAN_FOREST
- warp 5, 0, 3, VIRIDIAN_FOREST
- warp 4, 7, 5, -1
- warp 5, 7, 5, -1
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_GIRL, 8, 4, STAY, LEFT, 1 ; person
- object SPRITE_LITTLE_GIRL, 2, 4, WALK, 1, 2 ; person
-
- ; warp-to
- warp_to 4, 0, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; VIRIDIAN_FOREST
- warp_to 5, 0, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; VIRIDIAN_FOREST
- warp_to 4, 7, VIRIDIAN_FOREST_ENTRANCE_WIDTH
- warp_to 5, 7, VIRIDIAN_FOREST_ENTRANCE_WIDTH
diff --git a/data/mapObjects/viridianforestexit.asm b/data/mapObjects/viridianforestexit.asm
deleted file mode 100755
index 521ad818..00000000
--- a/data/mapObjects/viridianforestexit.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-ViridianForestExitObject:
- db $a ; border block
-
- db 4 ; warps
- warp 4, 0, 1, -1
- warp 5, 0, 1, -1
- warp 4, 7, 0, VIRIDIAN_FOREST
- warp 5, 7, 0, VIRIDIAN_FOREST
-
- db 0 ; signs
-
- db 2 ; objects
- object SPRITE_BLACK_HAIR_BOY_2, 3, 2, STAY, NONE, 1 ; person
- object SPRITE_OLD_PERSON, 2, 5, STAY, NONE, 2 ; person
-
- ; warp-to
- warp_to 4, 0, VIRIDIAN_FOREST_EXIT_WIDTH
- warp_to 5, 0, VIRIDIAN_FOREST_EXIT_WIDTH
- warp_to 4, 7, VIRIDIAN_FOREST_EXIT_WIDTH ; VIRIDIAN_FOREST
- warp_to 5, 7, VIRIDIAN_FOREST_EXIT_WIDTH ; VIRIDIAN_FOREST
diff --git a/data/mapObjects/viridiangym.asm b/data/mapObjects/viridiangym.asm
deleted file mode 100755
index c6ddb1d4..00000000
--- a/data/mapObjects/viridiangym.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-ViridianGymObject:
- db $3 ; border block
-
- db 2 ; warps
- warp 16, 17, 4, -1
- warp 17, 17, 4, -1
-
- db 0 ; signs
-
- db 11 ; objects
- object SPRITE_GIOVANNI, 2, 1, STAY, DOWN, 1, OPP_GIOVANNI, 3
- object SPRITE_BLACK_HAIR_BOY_1, 12, 7, STAY, DOWN, 2, OPP_COOLTRAINER_M, 9
- object SPRITE_HIKER, 11, 11, STAY, UP, 3, OPP_BLACKBELT, 6
- object SPRITE_ROCKER, 10, 7, STAY, DOWN, 4, OPP_TAMER, 3
- object SPRITE_HIKER, 3, 7, STAY, LEFT, 5, OPP_BLACKBELT, 7
- object SPRITE_BLACK_HAIR_BOY_1, 13, 5, STAY, RIGHT, 6, OPP_COOLTRAINER_M, 10
- object SPRITE_HIKER, 10, 1, STAY, DOWN, 7, OPP_BLACKBELT, 8
- object SPRITE_ROCKER, 2, 16, STAY, RIGHT, 8, OPP_TAMER, 4
- object SPRITE_BLACK_HAIR_BOY_1, 6, 5, STAY, DOWN, 9, OPP_COOLTRAINER_M, 1
- object SPRITE_GYM_HELPER, 16, 15, STAY, DOWN, 10 ; person
- object SPRITE_BALL, 16, 9, STAY, NONE, 11, REVIVE
-
- ; warp-to
- warp_to 16, 17, VIRIDIAN_GYM_WIDTH
- warp_to 17, 17, VIRIDIAN_GYM_WIDTH
diff --git a/data/mapObjects/viridianhouse.asm b/data/mapObjects/viridianhouse.asm
deleted file mode 100755
index 932542a6..00000000
--- a/data/mapObjects/viridianhouse.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-ViridianHouseObject:
- db $a ; border block
-
- db 2 ; warps
- warp 2, 7, 3, -1
- warp 3, 7, 3, -1
-
- db 0 ; signs
-
- db 4 ; objects
- object SPRITE_BALDING_GUY, 5, 3, STAY, NONE, 1 ; person
- object SPRITE_LITTLE_GIRL, 1, 4, WALK, 1, 2 ; person
- object SPRITE_BIRD, 5, 5, WALK, 2, 3 ; person
- object SPRITE_CLIPBOARD, 4, 0, STAY, NONE, 4 ; person
-
- ; warp-to
- warp_to 2, 7, VIRIDIAN_HOUSE_WIDTH
- warp_to 3, 7, VIRIDIAN_HOUSE_WIDTH
diff --git a/data/mapObjects/viridianmart.asm b/data/mapObjects/viridianmart.asm
deleted file mode 100755
index e692f810..00000000
--- a/data/mapObjects/viridianmart.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-ViridianMartObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 1, -1
- warp 4, 7, 1, -1
-
- db 0 ; signs
-
- db 3 ; objects
- object SPRITE_MART_GUY, 0, 5, STAY, RIGHT, 1 ; person
- object SPRITE_BUG_CATCHER, 5, 5, WALK, 1, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 3, 3, STAY, NONE, 3 ; person
-
- ; warp-to
- warp_to 3, 7, VIRIDIAN_MART_WIDTH
- warp_to 4, 7, VIRIDIAN_MART_WIDTH
diff --git a/data/mapObjects/viridianpokecenter.asm b/data/mapObjects/viridianpokecenter.asm
deleted file mode 100755
index 55efe10a..00000000
--- a/data/mapObjects/viridianpokecenter.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-ViridianPokecenterObject:
- db $0 ; border block
-
- db 2 ; warps
- warp 3, 7, 0, -1
- warp 4, 7, 0, -1
-
- db 0 ; signs
-
- db 5 ; objects
- object SPRITE_NURSE, 3, 1, STAY, DOWN, 1 ; person
- object SPRITE_GENTLEMAN, 10, 5, WALK, 1, 2 ; person
- object SPRITE_BLACK_HAIR_BOY_1, 4, 3, STAY, UP, 3 ; person
- object SPRITE_CABLE_CLUB_WOMAN, 11, 2, STAY, DOWN, 4 ; person
- object SPRITE_CHANSEY, 4, 1, STAY, DOWN, 5 ; person
-
- ; warp-to
- warp_to 3, 7, VIRIDIAN_POKECENTER_WIDTH
- warp_to 4, 7, VIRIDIAN_POKECENTER_WIDTH
diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm
index f26b305d..f52f0d5f 100644
--- a/data/map_header_banks.asm
+++ b/data/map_header_banks.asm
@@ -1,176 +1,176 @@
; see also MapHeaderPointers
-MapHeaderBanks::
- db BANK(PalletTown_h) ;PALLET_TOWN
- db BANK(ViridianCity_h) ; VIRIDIAN_CITY
- db BANK(PewterCity_h) ; PEWTER_CITY
- db BANK(CeruleanCity_h) ; CERULEAN_CITY
- db BANK(LavenderTown_h) ; LAVENDER_TOWN
- db BANK(VermilionCity_h) ; VERMILION_CITY
- db BANK(CeladonCity_h) ; CELADON_CITY
- db BANK(FuchsiaCity_h) ; FUCHSIA_CITY
- db BANK(CinnabarIsland_h) ; CINNABAR_ISLAND
- db BANK(IndigoPlateau_h) ; INDIGO_PLATEAU
- db BANK(SaffronCity_h) ; SAFFRON_CITY
- db $01 ; unused
- db BANK(Route1_h) ; ROUTE_1
- db BANK(Route2_h) ; ROUTE_2
- db BANK(Route3_h) ; ROUTE_3
- db BANK(Route4_h) ; ROUTE_4
- db BANK(Route5_h) ; ROUTE_5
- db BANK(Route6_h) ; ROUTE_6
- db BANK(Route7_h) ; ROUTE_7
- db BANK(Route8_h) ; ROUTE_8
- db BANK(Route9_h) ; ROUTE_9
- db BANK(Route10_h) ; ROUTE_10
- db BANK(Route11_h) ; ROUTE_11
- db BANK(Route12_h) ; ROUTE_12
- db BANK(Route13_h) ; ROUTE_13
- db BANK(Route14_h) ; ROUTE_14
- db BANK(Route15_h) ; ROUTE_15
- db BANK(Route16_h) ; ROUTE_16
- db BANK(Route17_h) ; ROUTE_17
- db BANK(Route18_h) ; ROUTE_18
- db BANK(Route19_h) ; ROUTE_19
- db BANK(Route20_h) ; ROUTE_20
- db BANK(Route21_h) ; ROUTE_21
- db BANK(Route22_h) ; ROUTE_22
- db BANK(Route23_h) ; ROUTE_23
- db BANK(Route24_h) ; ROUTE_24
- db BANK(Route25_h) ; ROUTE_25
+MapHeaderBanks:
+ db BANK(PalletTown_h)
+ db BANK(ViridianCity_h)
+ db BANK(PewterCity_h)
+ db BANK(CeruleanCity_h)
+ db BANK(LavenderTown_h)
+ db BANK(VermilionCity_h)
+ db BANK(CeladonCity_h)
+ db BANK(FuchsiaCity_h)
+ db BANK(CinnabarIsland_h)
+ db BANK(IndigoPlateau_h)
+ db BANK(SaffronCity_h)
+ db $01 ; UNUSED_MAP_0B
+ db BANK(Route1_h)
+ db BANK(Route2_h)
+ db BANK(Route3_h)
+ db BANK(Route4_h)
+ db BANK(Route5_h)
+ db BANK(Route6_h)
+ db BANK(Route7_h)
+ db BANK(Route8_h)
+ db BANK(Route9_h)
+ db BANK(Route10_h)
+ db BANK(Route11_h)
+ db BANK(Route12_h)
+ db BANK(Route13_h)
+ db BANK(Route14_h)
+ db BANK(Route15_h)
+ db BANK(Route16_h)
+ db BANK(Route17_h)
+ db BANK(Route18_h)
+ db BANK(Route19_h)
+ db BANK(Route20_h)
+ db BANK(Route21_h)
+ db BANK(Route22_h)
+ db BANK(Route23_h)
+ db BANK(Route24_h)
+ db BANK(Route25_h)
db BANK(RedsHouse1F_h)
db BANK(RedsHouse2F_h)
db BANK(BluesHouse_h)
db BANK(OaksLab_h)
db BANK(ViridianPokecenter_h)
db BANK(ViridianMart_h)
- db BANK(School_h)
- db BANK(ViridianHouse_h)
+ db BANK(ViridianSchoolHouse_h)
+ db BANK(ViridianNicknameHouse_h)
db BANK(ViridianGym_h)
db BANK(DiglettsCaveRoute2_h)
- db BANK(ViridianForestExit_h)
- db BANK(Route2House_h)
+ db BANK(ViridianForestNorthGate_h)
+ db BANK(Route2TradeHouse_h)
db BANK(Route2Gate_h)
- db BANK(ViridianForestEntrance_h)
+ db BANK(ViridianForestSouthGate_h)
db BANK(ViridianForest_h)
db BANK(Museum1F_h)
db BANK(Museum2F_h)
db BANK(PewterGym_h)
- db BANK(PewterHouse1_h)
+ db BANK(PewterNidoranHouse_h)
db BANK(PewterMart_h)
- db BANK(PewterHouse2_h)
+ db BANK(PewterSpeechHouse_h)
db BANK(PewterPokecenter_h)
- db BANK(MtMoon1_h)
- db BANK(MtMoon2_h)
- db BANK(MtMoon3_h)
- db BANK(CeruleanHouseTrashed_h)
- db BANK(CeruleanHouse1_h)
+ db BANK(MtMoon1F_h)
+ db BANK(MtMoonB1F_h)
+ db BANK(MtMoonB2F_h)
+ db BANK(CeruleanTrashedHouse_h)
+ db BANK(CeruleanTradeHouse_h)
db BANK(CeruleanPokecenter_h)
db BANK(CeruleanGym_h)
db BANK(BikeShop_h)
db BANK(CeruleanMart_h)
db BANK(MtMoonPokecenter_h)
- db BANK(CeruleanHouseTrashed_h)
+ db BANK(CeruleanTrashedHouse_h)
db BANK(Route5Gate_h)
- db BANK(UndergroundPathEntranceRoute5_h)
- db BANK(DayCareM_h)
+ db BANK(UndergroundPathRoute5_h)
+ db BANK(Daycare_h)
db BANK(Route6Gate_h)
- db BANK(UndergroundPathEntranceRoute6_h)
- db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE
+ db BANK(UndergroundPathRoute6_h)
+ db BANK(UndergroundPathRoute6_h) ; UNDERGROUND_PATH_ROUTE_6_COPY
db BANK(Route7Gate_h)
- db BANK(UndergroundPathEntranceRoute7_h)
- db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE
+ db BANK(UndergroundPathRoute7_h)
+ db BANK(UndergroundPathRoute7Copy_h)
db BANK(Route8Gate_h)
- db BANK(UndergroundPathEntranceRoute8_h)
+ db BANK(UndergroundPathRoute8_h)
db BANK(RockTunnelPokecenter_h)
- db BANK(RockTunnel1_h)
+ db BANK(RockTunnel1F_h)
db BANK(PowerPlant_h)
- db BANK(Route11Gate_h)
- db BANK(DiglettsCaveEntranceRoute11_h)
- db BANK(Route11GateUpstairs_h)
- db BANK(Route12Gate_h)
+ db BANK(Route11Gate1F_h)
+ db BANK(DiglettsCaveRoute11_h)
+ db BANK(Route11Gate2F_h)
+ db BANK(Route12Gate1F_h)
db BANK(BillsHouse_h)
db BANK(VermilionPokecenter_h)
- db BANK(FanClub_h)
+ db BANK(PokemonFanClub_h)
db BANK(VermilionMart_h)
db BANK(VermilionGym_h)
- db BANK(VermilionHouse1_h)
+ db BANK(VermilionPidgeyHouse_h)
db BANK(VermilionDock_h)
- db BANK(SSAnne1_h)
- db BANK(SSAnne2_h)
- db BANK(SSAnne3_h)
- db BANK(SSAnne4_h)
- db BANK(SSAnne5_h)
- db BANK(SSAnne6_h)
- db BANK(SSAnne7_h)
- db BANK(SSAnne8_h)
- db BANK(SSAnne9_h)
- db BANK(SSAnne10_h)
- db $1d ; unused
- db $1d ; unused
- db $1d ; unused
- db BANK(VictoryRoad1_h)
- db $1d ; unused
- db $1d ; unused
- db $1d ; unused
- db $1d ; unused
- db BANK(Lance_h)
- db $1d ; unused
- db $1d ; unused
- db $1d ; unused
- db $1d ; unused
- db BANK(HallofFameRoom_h)
- db BANK(UndergroundPathNS_h)
- db BANK(Gary_h)
- db BANK(UndergroundPathWE_h)
- db BANK(CeladonMart1_h)
- db BANK(CeladonMart2_h)
- db BANK(CeladonMart3_h)
- db BANK(CeladonMart4_h)
+ db BANK(SSAnne1F_h)
+ db BANK(SSAnne2F_h)
+ db BANK(SSAnne3F_h)
+ db BANK(SSAnneB1F_h)
+ db BANK(SSAnneBow_h)
+ db BANK(SSAnneKitchen_h)
+ db BANK(SSAnneCaptainsRoom_h)
+ db BANK(SSAnne1FRooms_h)
+ db BANK(SSAnne2FRooms_h)
+ db BANK(SSAnneB1FRooms_h)
+ db $1D ; UNUSED_MAP_69
+ db $1D ; UNUSED_MAP_6A
+ db $1D ; UNUSED_MAP_6B
+ db BANK(VictoryRoad1F_h)
+ db $1D ; UNUSED_MAP_6D
+ db $1D ; UNUSED_MAP_6E
+ db $1D ; UNUSED_MAP_6F
+ db $1D ; UNUSED_MAP_70
+ db BANK(LancesRoom_h)
+ db $1D ; UNUSED_MAP_72
+ db $1D ; UNUSED_MAP_73
+ db $1D ; UNUSED_MAP_74
+ db $1D ; UNUSED_MAP_75
+ db BANK(HallOfFame_h)
+ db BANK(UndergroundPathNorthSouth_h)
+ db BANK(ChampionsRoom_h)
+ db BANK(UndergroundPathWestEast_h)
+ db BANK(CeladonMart1F_h)
+ db BANK(CeladonMart2F_h)
+ db BANK(CeladonMart3F_h)
+ db BANK(CeladonMart4F_h)
db BANK(CeladonMartRoof_h)
db BANK(CeladonMartElevator_h)
- db BANK(CeladonMansion1_h)
- db BANK(CeladonMansion2_h)
- db BANK(CeladonMansion3_h)
- db BANK(CeladonMansion4_h)
- db BANK(CeladonMansion5_h)
+ db BANK(CeladonMansion1F_h)
+ db BANK(CeladonMansion2F_h)
+ db BANK(CeladonMansion3F_h)
+ db BANK(CeladonMansionRoof_h)
+ db BANK(CeladonMansionRoofHouse_h)
db BANK(CeladonPokecenter_h)
db BANK(CeladonGym_h)
- db BANK(CeladonGameCorner_h)
- db BANK(CeladonMart5_h)
- db BANK(CeladonPrizeRoom_h)
+ db BANK(GameCorner_h)
+ db BANK(CeladonMart5F_h)
+ db BANK(GameCornerPrizeRoom_h)
db BANK(CeladonDiner_h)
- db BANK(CeladonHouse_h)
+ db BANK(CeladonChiefHouse_h)
db BANK(CeladonHotel_h)
db BANK(LavenderPokecenter_h)
- db BANK(PokemonTower1_h)
- db BANK(PokemonTower2_h)
- db BANK(PokemonTower3_h)
- db BANK(PokemonTower4_h)
- db BANK(PokemonTower5_h)
- db BANK(PokemonTower6_h)
- db BANK(PokemonTower7_h)
- db BANK(LavenderHouse1_h)
+ db BANK(PokemonTower1F_h)
+ db BANK(PokemonTower2F_h)
+ db BANK(PokemonTower3F_h)
+ db BANK(PokemonTower4F_h)
+ db BANK(PokemonTower5F_h)
+ db BANK(PokemonTower6F_h)
+ db BANK(PokemonTower7F_h)
+ db BANK(MrFujisHouse_h)
db BANK(LavenderMart_h)
- db BANK(LavenderHouse2_h)
+ db BANK(LavenderCuboneHouse_h)
db BANK(FuchsiaMart_h)
- db BANK(FuchsiaHouse1_h)
+ db BANK(FuchsiaBillsGrandpasHouse_h)
db BANK(FuchsiaPokecenter_h)
- db BANK(FuchsiaHouse2_h)
- db BANK(SafariZoneEntrance_h)
+ db BANK(WardensHouse_h)
+ db BANK(SafariZoneGate_h)
db BANK(FuchsiaGym_h)
db BANK(FuchsiaMeetingRoom_h)
- db BANK(SeafoamIslands2_h)
- db BANK(SeafoamIslands3_h)
- db BANK(SeafoamIslands4_h)
- db BANK(SeafoamIslands5_h)
- db BANK(VermilionHouse2_h)
- db BANK(FuchsiaHouse3_h)
- db BANK(Mansion1_h)
+ db BANK(SeafoamIslandsB1F_h)
+ db BANK(SeafoamIslandsB2F_h)
+ db BANK(SeafoamIslandsB3F_h)
+ db BANK(SeafoamIslandsB4F_h)
+ db BANK(VermilionOldRodHouse_h)
+ db BANK(FuchsiaGoodRodHouse_h)
+ db BANK(PokemonMansion1F_h)
db BANK(CinnabarGym_h)
- db BANK(Lab1_h)
- db BANK(Lab2_h)
- db BANK(Lab3_h)
- db BANK(Lab4_h)
+ db BANK(CinnabarLab_h)
+ db BANK(CinnabarLabTradeRoom_h)
+ db BANK(CinnabarLabMetronomeRoom_h)
+ db BANK(CinnabarLabFossilRoom_h)
db BANK(CinnabarPokecenter_h)
db BANK(CinnabarMart_h)
db BANK(CinnabarMart_h)
@@ -179,73 +179,73 @@ MapHeaderBanks::
db BANK(CopycatsHouse2F_h)
db BANK(FightingDojo_h)
db BANK(SaffronGym_h)
- db BANK(SaffronHouse1_h)
+ db BANK(SaffronPidgeyHouse_h)
db BANK(SaffronMart_h)
- db BANK(SilphCo1_h)
+ db BANK(SilphCo1F_h)
db BANK(SaffronPokecenter_h)
- db BANK(SaffronHouse2_h)
- db BANK(Route15Gate_h)
- db BANK(Route15GateUpstairs_h)
- db BANK(Route16Gate_h)
- db BANK(Route16GateUpstairs_h)
- db BANK(Route16House_h)
- db BANK(Route12House_h)
- db BANK(Route18Gate_h)
- db BANK(Route18GateUpstairs_h)
- db BANK(SeafoamIslands1_h)
+ db BANK(MrPsychicsHouse_h)
+ db BANK(Route15Gate1F_h)
+ db BANK(Route15Gate2F_h)
+ db BANK(Route16Gate1F_h)
+ db BANK(Route16Gate2F_h)
+ db BANK(Route16FlyHouse_h)
+ db BANK(Route12SuperRodHouse_h)
+ db BANK(Route18Gate1F_h)
+ db BANK(Route18Gate2F_h)
+ db BANK(SeafoamIslands1F_h)
db BANK(Route22Gate_h)
- db BANK(VictoryRoad2_h)
- db BANK(Route12GateUpstairs_h)
- db BANK(VermilionHouse3_h)
+ db BANK(VictoryRoad2F_h)
+ db BANK(Route12Gate2F_h)
+ db BANK(VermilionTradeHouse_h)
db BANK(DiglettsCave_h)
- db BANK(VictoryRoad3_h)
- db BANK(RocketHideout1_h)
- db BANK(RocketHideout2_h)
- db BANK(RocketHideout3_h)
- db BANK(RocketHideout4_h)
+ db BANK(VictoryRoad3F_h)
+ db BANK(RocketHideoutB1F_h)
+ db BANK(RocketHideoutB2F_h)
+ db BANK(RocketHideoutB3F_h)
+ db BANK(RocketHideoutB4F_h)
db BANK(RocketHideoutElevator_h)
- db $01 ; unused
- db $01 ; unused
- db $01 ; unused
- db BANK(SilphCo2_h)
- db BANK(SilphCo3_h)
- db BANK(SilphCo4_h)
- db BANK(SilphCo5_h)
- db BANK(SilphCo6_h)
- db BANK(SilphCo7_h)
- db BANK(SilphCo8_h)
- db BANK(Mansion2_h)
- db BANK(Mansion3_h)
- db BANK(Mansion4_h)
+ db $01 ; UNUSED_MAP_CC
+ db $01 ; UNUSED_MAP_CD
+ db $01 ; UNUSED_MAP_CE
+ db BANK(SilphCo2F_h)
+ db BANK(SilphCo3F_h)
+ db BANK(SilphCo4F_h)
+ db BANK(SilphCo5F_h)
+ db BANK(SilphCo6F_h)
+ db BANK(SilphCo7F_h)
+ db BANK(SilphCo8F_h)
+ db BANK(PokemonMansion2F_h)
+ db BANK(PokemonMansion3F_h)
+ db BANK(PokemonMansionB1F_h)
db BANK(SafariZoneEast_h)
db BANK(SafariZoneNorth_h)
db BANK(SafariZoneWest_h)
db BANK(SafariZoneCenter_h)
- db BANK(SafariZoneRestHouse1_h)
+ db BANK(SafariZoneCenterRestHouse_h)
db BANK(SafariZoneSecretHouse_h)
- db BANK(SafariZoneRestHouse2_h)
- db BANK(SafariZoneRestHouse3_h)
- db BANK(SafariZoneRestHouse4_h)
- db BANK(UnknownDungeon2_h)
- db BANK(UnknownDungeon3_h)
- db BANK(UnknownDungeon1_h)
- db BANK(NameRater_h)
- db BANK(CeruleanHouse2_h)
- db $01 ; unused
- db BANK(RockTunnel2_h)
- db BANK(SilphCo9_h)
- db BANK(SilphCo10_h)
- db BANK(SilphCo11_h)
+ db BANK(SafariZoneWestRestHouse_h)
+ db BANK(SafariZoneEastRestHouse_h)
+ db BANK(SafariZoneNorthRestHouse_h)
+ db BANK(CeruleanCave2F_h)
+ db BANK(CeruleanCaveB1F_h)
+ db BANK(CeruleanCave1F_h)
+ db BANK(NameRatersHouse_h)
+ db BANK(CeruleanBadgeHouse_h)
+ db $01 ; UNUSED_MAP_E7
+ db BANK(RockTunnelB1F_h)
+ db BANK(SilphCo9F_h)
+ db BANK(SilphCo10F_h)
+ db BANK(SilphCo11F_h)
db BANK(SilphCoElevator_h)
- db $11 ; unused
- db $11 ; unused
+ db $11 ; UNUSED_MAP_ED
+ db $11 ; UNUSED_MAP_EE
db BANK(TradeCenter_h)
db BANK(Colosseum_h)
- db $11 ; unused
- db $11 ; unused
- db $11 ; unused
- db $11 ; unused
- db BANK(Lorelei_h)
- db BANK(Bruno_h)
- db BANK(Agatha_h)
+ db $11 ; UNUSED_MAP_F1
+ db $11 ; UNUSED_MAP_F2
+ db $11 ; UNUSED_MAP_F3
+ db $11 ; UNUSED_MAP_F4
+ db BANK(LoreleisRoom_h)
+ db BANK(BrunosRoom_h)
+ db BANK(AgathasRoom_h)
db BANK(BeachHouse_h)
diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm
index 325ff4bb..6ea31795 100644
--- a/data/map_header_pointers.asm
+++ b/data/map_header_pointers.asm
@@ -11,7 +11,7 @@ MapHeaderPointers::
dw CinnabarIsland_h
dw IndigoPlateau_h
dw SaffronCity_h
- dw SaffronCity_h
+ dw SaffronCity_h ; UNUSED_MAP_0B
dw Route1_h
dw Route2_h
dw Route3_h
@@ -40,212 +40,212 @@ MapHeaderPointers::
dw RedsHouse1F_h
dw RedsHouse2F_h
dw BluesHouse_h
- dw OaksLab_h ;id=40
+ dw OaksLab_h
dw ViridianPokecenter_h
dw ViridianMart_h
- dw School_h
- dw ViridianHouse_h
+ dw ViridianSchoolHouse_h
+ dw ViridianNicknameHouse_h
dw ViridianGym_h
dw DiglettsCaveRoute2_h
- dw ViridianForestExit_h
- dw Route2House_h
+ dw ViridianForestNorthGate_h
+ dw Route2TradeHouse_h
dw Route2Gate_h
- dw ViridianForestEntrance_h ;id=50
+ dw ViridianForestSouthGate_h
dw ViridianForest_h
dw Museum1F_h
dw Museum2F_h
dw PewterGym_h
- dw PewterHouse1_h
+ dw PewterNidoranHouse_h
dw PewterMart_h
- dw PewterHouse2_h
+ dw PewterSpeechHouse_h
dw PewterPokecenter_h
- dw MtMoon1_h
- dw MtMoon2_h ;id=60
- dw MtMoon3_h
- dw CeruleanHouseTrashed_h
- dw CeruleanHouse1_h
+ dw MtMoon1F_h
+ dw MtMoonB1F_h
+ dw MtMoonB2F_h
+ dw CeruleanTrashedHouse_h
+ dw CeruleanTradeHouse_h
dw CeruleanPokecenter_h
dw CeruleanGym_h
dw BikeShop_h
dw CeruleanMart_h
dw MtMoonPokecenter_h
- dw CeruleanHouseTrashed_h ; copy
+ dw CeruleanTrashedHouse_h ; CERULEAN_TRASHED_HOUSE_COPY
dw Route5Gate_h
- dw UndergroundPathEntranceRoute5_h
- dw DayCareM_h
+ dw UndergroundPathRoute5_h
+ dw Daycare_h
dw Route6Gate_h
- dw UndergroundPathEntranceRoute6_h
- dw UndergroundPathEntranceRoute6_h ; unused
+ dw UndergroundPathRoute6_h
+ dw UndergroundPathRoute6_h ; UNDERGROUND_PATH_ROUTE_6_COPY
dw Route7Gate_h
- dw UndergroundPathEntranceRoute7_h
- dw UndergroundPathEntranceRoute7Copy_h
+ dw UndergroundPathRoute7_h
+ dw UndergroundPathRoute7Copy_h
dw Route8Gate_h
- dw UndergroundPathEntranceRoute8_h ;id=80
+ dw UndergroundPathRoute8_h
dw RockTunnelPokecenter_h
- dw RockTunnel1_h
+ dw RockTunnel1F_h
dw PowerPlant_h
- dw Route11Gate_h
- dw DiglettsCaveEntranceRoute11_h
- dw Route11GateUpstairs_h
- dw Route12Gate_h
+ dw Route11Gate1F_h
+ dw DiglettsCaveRoute11_h
+ dw Route11Gate2F_h
+ dw Route12Gate1F_h
dw BillsHouse_h
dw VermilionPokecenter_h
- dw FanClub_h ;id=90
+ dw PokemonFanClub_h
dw VermilionMart_h
dw VermilionGym_h
- dw VermilionHouse1_h
+ dw VermilionPidgeyHouse_h
dw VermilionDock_h
- dw SSAnne1_h
- dw SSAnne2_h
- dw SSAnne3_h
- dw SSAnne4_h
- dw SSAnne5_h
- dw SSAnne6_h ;id=100
- dw SSAnne7_h
- dw SSAnne8_h
- dw SSAnne9_h
- dw SSAnne10_h
- dw Lance_h ; unused
- dw Lance_h ; unused
- dw Lance_h ; unused
- dw VictoryRoad1_h
- dw Lance_h ; unused
- dw Lance_h ; unused ;id=110
- dw Lance_h ; unused
- dw Lance_h ; unused
- dw Lance_h
- dw Lance_h ; unused
- dw Lance_h ; unused
- dw Lance_h ; unused
- dw Lance_h ; unused
- dw HallofFameRoom_h
- dw UndergroundPathNS_h
- dw Gary_h ;id=120
- dw UndergroundPathWE_h
- dw CeladonMart1_h
- dw CeladonMart2_h
- dw CeladonMart3_h
- dw CeladonMart4_h
+ dw SSAnne1F_h
+ dw SSAnne2F_h
+ dw SSAnne3F_h
+ dw SSAnneB1F_h
+ dw SSAnneBow_h
+ dw SSAnneKitchen_h
+ dw SSAnneCaptainsRoom_h
+ dw SSAnne1FRooms_h
+ dw SSAnne2FRooms_h
+ dw SSAnneB1FRooms_h
+ dw LancesRoom_h ; UNUSED_MAP_69
+ dw LancesRoom_h ; UNUSED_MAP_6A
+ dw LancesRoom_h ; UNUSED_MAP_6B
+ dw VictoryRoad1F_h
+ dw LancesRoom_h ; UNUSED_MAP_6D
+ dw LancesRoom_h ; UNUSED_MAP_6E
+ dw LancesRoom_h ; UNUSED_MAP_6F
+ dw LancesRoom_h ; UNUSED_MAP_70
+ dw LancesRoom_h
+ dw LancesRoom_h ; UNUSED_MAP_72
+ dw LancesRoom_h ; UNUSED_MAP_73
+ dw LancesRoom_h ; UNUSED_MAP_74
+ dw LancesRoom_h ; UNUSED_MAP_75
+ dw HallOfFame_h
+ dw UndergroundPathNorthSouth_h
+ dw ChampionsRoom_h
+ dw UndergroundPathWestEast_h
+ dw CeladonMart1F_h
+ dw CeladonMart2F_h
+ dw CeladonMart3F_h
+ dw CeladonMart4F_h
dw CeladonMartRoof_h
dw CeladonMartElevator_h
- dw CeladonMansion1_h
- dw CeladonMansion2_h
- dw CeladonMansion3_h ;id=130
- dw CeladonMansion4_h
- dw CeladonMansion5_h
+ dw CeladonMansion1F_h
+ dw CeladonMansion2F_h
+ dw CeladonMansion3F_h
+ dw CeladonMansionRoof_h
+ dw CeladonMansionRoofHouse_h
dw CeladonPokecenter_h
dw CeladonGym_h
- dw CeladonGameCorner_h
- dw CeladonMart5_h
- dw CeladonPrizeRoom_h
+ dw GameCorner_h
+ dw CeladonMart5F_h
+ dw GameCornerPrizeRoom_h
dw CeladonDiner_h
- dw CeladonHouse_h
- dw CeladonHotel_h ;id=140
+ dw CeladonChiefHouse_h
+ dw CeladonHotel_h
dw LavenderPokecenter_h
- dw PokemonTower1_h
- dw PokemonTower2_h
- dw PokemonTower3_h
- dw PokemonTower4_h
- dw PokemonTower5_h
- dw PokemonTower6_h
- dw PokemonTower7_h
- dw LavenderHouse1_h
- dw LavenderMart_h ;id=150
- dw LavenderHouse2_h
+ dw PokemonTower1F_h
+ dw PokemonTower2F_h
+ dw PokemonTower3F_h
+ dw PokemonTower4F_h
+ dw PokemonTower5F_h
+ dw PokemonTower6F_h
+ dw PokemonTower7F_h
+ dw MrFujisHouse_h
+ dw LavenderMart_h
+ dw LavenderCuboneHouse_h
dw FuchsiaMart_h
- dw FuchsiaHouse1_h
+ dw FuchsiaBillsGrandpasHouse_h
dw FuchsiaPokecenter_h
- dw FuchsiaHouse2_h
- dw SafariZoneEntrance_h
+ dw WardensHouse_h
+ dw SafariZoneGate_h
dw FuchsiaGym_h
dw FuchsiaMeetingRoom_h
- dw SeafoamIslands2_h
- dw SeafoamIslands3_h ;id=160
- dw SeafoamIslands4_h
- dw SeafoamIslands5_h
- dw VermilionHouse2_h
- dw FuchsiaHouse3_h
- dw Mansion1_h
+ dw SeafoamIslandsB1F_h
+ dw SeafoamIslandsB2F_h
+ dw SeafoamIslandsB3F_h
+ dw SeafoamIslandsB4F_h
+ dw VermilionOldRodHouse_h
+ dw FuchsiaGoodRodHouse_h
+ dw PokemonMansion1F_h
dw CinnabarGym_h
- dw Lab1_h
- dw Lab2_h
- dw Lab3_h
- dw Lab4_h ;id=170
+ dw CinnabarLab_h
+ dw CinnabarLabTradeRoom_h
+ dw CinnabarLabMetronomeRoom_h
+ dw CinnabarLabFossilRoom_h
dw CinnabarPokecenter_h
dw CinnabarMart_h
- dw CinnabarMart_h ; unused
+ dw CinnabarMart_h ; CINNABAR_MART_COPY
dw IndigoPlateauLobby_h
dw CopycatsHouse1F_h
dw CopycatsHouse2F_h
dw FightingDojo_h
dw SaffronGym_h
- dw SaffronHouse1_h
- dw SaffronMart_h ;id=180
- dw SilphCo1_h
+ dw SaffronPidgeyHouse_h
+ dw SaffronMart_h
+ dw SilphCo1F_h
dw SaffronPokecenter_h
- dw SaffronHouse2_h
- dw Route15Gate_h
- dw Route15GateUpstairs_h
- dw Route16Gate_h
- dw Route16GateUpstairs_h
- dw Route16House_h
- dw Route12House_h
- dw Route18Gate_h ;id=190
- dw Route18GateUpstairs_h
- dw SeafoamIslands1_h
+ dw MrPsychicsHouse_h
+ dw Route15Gate1F_h
+ dw Route15Gate2F_h
+ dw Route16Gate1F_h
+ dw Route16Gate2F_h
+ dw Route16FlyHouse_h
+ dw Route12SuperRodHouse_h
+ dw Route18Gate1F_h
+ dw Route18Gate2F_h
+ dw SeafoamIslands1F_h
dw Route22Gate_h
- dw VictoryRoad2_h
- dw Route12GateUpstairs_h
- dw VermilionHouse3_h
+ dw VictoryRoad2F_h
+ dw Route12Gate2F_h
+ dw VermilionTradeHouse_h
dw DiglettsCave_h
- dw VictoryRoad3_h
- dw RocketHideout1_h
- dw RocketHideout2_h ;200
- dw RocketHideout3_h
- dw RocketHideout4_h
+ dw VictoryRoad3F_h
+ dw RocketHideoutB1F_h
+ dw RocketHideoutB2F_h
+ dw RocketHideoutB3F_h
+ dw RocketHideoutB4F_h
dw RocketHideoutElevator_h
- dw RocketHideoutElevator_h ; unused
- dw RocketHideoutElevator_h ; unused
- dw RocketHideoutElevator_h ; unused
- dw SilphCo2_h
- dw SilphCo3_h
- dw SilphCo4_h
- dw SilphCo5_h ;210
- dw SilphCo6_h
- dw SilphCo7_h
- dw SilphCo8_h
- dw Mansion2_h
- dw Mansion3_h
- dw Mansion4_h
+ dw RocketHideoutElevator_h ; UNUSED_MAP_CC
+ dw RocketHideoutElevator_h ; UNUSED_MAP_CD
+ dw RocketHideoutElevator_h ; UNUSED_MAP_CE
+ dw SilphCo2F_h
+ dw SilphCo3F_h
+ dw SilphCo4F_h
+ dw SilphCo5F_h
+ dw SilphCo6F_h
+ dw SilphCo7F_h
+ dw SilphCo8F_h
+ dw PokemonMansion2F_h
+ dw PokemonMansion3F_h
+ dw PokemonMansionB1F_h
dw SafariZoneEast_h
dw SafariZoneNorth_h
dw SafariZoneWest_h
- dw SafariZoneCenter_h ;220
- dw SafariZoneRestHouse1_h
+ dw SafariZoneCenter_h
+ dw SafariZoneCenterRestHouse_h
dw SafariZoneSecretHouse_h
- dw SafariZoneRestHouse2_h
- dw SafariZoneRestHouse3_h
- dw SafariZoneRestHouse4_h
- dw UnknownDungeon2_h
- dw UnknownDungeon3_h
- dw UnknownDungeon1_h
- dw NameRater_h
- dw CeruleanHouse2_h
- dw Route16Gate_h ; unused
- dw RockTunnel2_h
- dw SilphCo9_h
- dw SilphCo10_h
- dw SilphCo11_h
+ dw SafariZoneWestRestHouse_h
+ dw SafariZoneEastRestHouse_h
+ dw SafariZoneNorthRestHouse_h
+ dw CeruleanCave2F_h
+ dw CeruleanCaveB1F_h
+ dw CeruleanCave1F_h
+ dw NameRatersHouse_h
+ dw CeruleanBadgeHouse_h
+ dw Route16Gate1F_h ; UNUSED_MAP_E7
+ dw RockTunnelB1F_h
+ dw SilphCo9F_h
+ dw SilphCo10F_h
+ dw SilphCo11F_h
dw SilphCoElevator_h
- dw SilphCo2_h ; unused
- dw SilphCo2_h ; unused
+ dw SilphCo2F_h ; UNUSED_MAP_ED
+ dw SilphCo2F_h ; UNUSED_MAP_EE
dw TradeCenter_h
dw Colosseum_h
- dw SilphCo2_h ; unused
- dw SilphCo2_h ; unused
- dw SilphCo2_h ; unused
- dw SilphCo2_h ; unused
- dw Lorelei_h
- dw Bruno_h
- dw Agatha_h ;247
+ dw SilphCo2F_h ; UNUSED_MAP_F1
+ dw SilphCo2F_h ; UNUSED_MAP_F2
+ dw SilphCo2F_h ; UNUSED_MAP_F3
+ dw SilphCo2F_h ; UNUSED_MAP_F4
+ dw LoreleisRoom_h
+ dw BrunosRoom_h
+ dw AgathasRoom_h ;247
dw BeachHouse_h
diff --git a/data/map_songs.asm b/data/map_songs.asm
index 973f6945..63417ade 100644
--- a/data/map_songs.asm
+++ b/data/map_songs.asm
@@ -1,5 +1,5 @@
MapSongBanks:
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; PALLET_TOWN
db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY
db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY
db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY
@@ -10,7 +10,7 @@ MapSongBanks:
db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND
db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU
db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY
- db MUSIC_CITIES1, BANK(Music_Cities1) ; unused
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UNUSED_MAP_0B
db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1
db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2
db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3
@@ -36,215 +36,215 @@ MapSongBanks:
db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23
db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24
db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse
- db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart
- db MUSIC_CITIES1, BANK(Music_Cities1) ; School
- db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse
- db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2
- db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F
- db MUSIC_GYM, BANK(Music_Gym) ; PewterGym
- db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart
- db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3
- db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed
- db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter
- db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym
- db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5
- db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7
- db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate
- db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart
- db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused
- db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom
- db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary
- db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter
- db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym
- db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse
- db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7
- db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart
- db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2
- db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance
- db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5
- db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2
- db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1
- db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3
- db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart
- db MUSIC_CINNABAR, BANK(Music_Cinnabar)
- db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby
- db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F
- db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F
- db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo
- db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym
- db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1
- db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter
- db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs
- db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House
- db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2
- db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs
- db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3
- db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3
- db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3
- db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1
- db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater
- db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2
- db MUSIC_CINNABAR, BANK(Music_Cinnabar)
- db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11
- db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM
- db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_SILPH_CO, BANK(Music_SilphCo)
- db MUSIC_GYM, BANK(Music_Gym) ; Lorelei
- db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno
- db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha
- db MUSIC_ROUTES3, BANK(Music_Routes3) ; BeachHouse
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; REDS_HOUSE_1F
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; REDS_HOUSE_2F
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BLUES_HOUSE
+ db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OAKS_LAB
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VIRIDIAN_POKECENTER
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VIRIDIAN_MART
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_SCHOOL_HOUSE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_NICKNAME_HOUSE
+ db MUSIC_GYM, BANK(Music_Gym) ; VIRIDIAN_GYM
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DIGLETTS_CAVE_ROUTE_2
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_FOREST_NORTH_GATE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_2_TRADE_HOUSE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_2_GATE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_FOREST_SOUTH_GATE
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; VIRIDIAN_FOREST
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; MUSEUM_1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; MUSEUM_2F
+ db MUSIC_GYM, BANK(Music_Gym) ; PEWTER_GYM
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_NIDORAN_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PEWTER_MART
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_SPEECH_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PEWTER_POKECENTER
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MT_MOON_1F
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MT_MOON_B1F
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MT_MOON_B2F
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_TRASHED_HOUSE
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_TRADE_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CERULEAN_POKECENTER
+ db MUSIC_GYM, BANK(Music_Gym) ; CERULEAN_GYM
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; BIKE_SHOP
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CERULEAN_MART
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MT_MOON_POKECENTER
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CERULEAN_TRASHED_HOUSE_COPY
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_5_GATE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UNDERGROUND_PATH_ROUTE_5
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; DAYCARE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_6_GATE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UNDERGROUND_PATH_ROUTE_6
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; UNDERGROUND_PATH_ROUTE_6_COPY
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_7_GATE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UNDERGROUND_PATH_ROUTE_7
+ db MUSIC_CELADON, BANK(Music_Celadon) ; UNDERGROUND_PATH_ROUTE_7_COPY
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_8_GATE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; UNDERGROUND_PATH_ROUTE_8
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ROCK_TUNNEL_POKECENTER
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; ROCK_TUNNEL_1F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; POWER_PLANT
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; ROUTE_11_GATE_1F
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DIGLETTS_CAVE_ROUTE_11
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; ROUTE_11_GATE_2F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_12_GATE_1F
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; BILLS_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VERMILION_POKECENTER
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; POKEMON_FAN_CLUB
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VERMILION_MART
+ db MUSIC_GYM, BANK(Music_Gym) ; VERMILION_GYM
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_PIDGEY_HOUSE
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VERMILION_DOCK
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_1F
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_2F
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_3F
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_B1F
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_BOW
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_KITCHEN
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_CAPTAINS_ROOM
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_1F_ROOMS
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_2F_ROOMS
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SS_ANNE_B1F_ROOMS
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; UNUSED_MAP_69
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; UNUSED_MAP_6A
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; UNUSED_MAP_6B
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VICTORY_ROAD_1F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; UNUSED_MAP_6D
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UNUSED_MAP_6E
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_6F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_70
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; LANCES_ROOM
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; UNUSED_MAP_72
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; UNUSED_MAP_73
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; UNUSED_MAP_74
+ db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; UNUSED_MAP_75
+ db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HALL_OF_FAME
+ db MUSIC_ROUTES1, BANK(Music_Routes1) ; UNDERGROUND_PATH_NORTH_SOUTH
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; CHAMPIONS_ROOM
+ db MUSIC_ROUTES1, BANK(Music_Routes1) ; UNDERGROUND_PATH_WEST_EAST
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_1F
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_2F
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_3F
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_4F
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_ROOF
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_ELEVATOR
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_MANSION_1F
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_MANSION_2F
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_MANSION_3F
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_MANSION_ROOF
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_MANSION_ROOF_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_POKECENTER
+ db MUSIC_GYM, BANK(Music_Gym) ; CELADON_GYM
+ db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; GAME_CORNER
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CELADON_MART_5F
+ db MUSIC_CELADON, BANK(Music_Celadon) ; GAME_CORNER_PRIZE_ROOM
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_DINER
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CHIEF_HOUSE
+ db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_HOTEL
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LAVENDER_POKECENTER
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_1F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_2F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_3F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_4F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_5F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_6F
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; POKEMON_TOWER_7F
+ db MUSIC_LAVENDER, BANK(Music_Lavender) ; MR_FUJIS_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LAVENDER_MART
+ db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_CUBONE_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FUCHSIA_MART
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_BILLS_GRANDPAS_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FUCHSIA_POKECENTER
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; WARDENS_HOUSE
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; SAFARI_ZONE_GATE
+ db MUSIC_GYM, BANK(Music_Gym) ; FUCHSIA_GYM
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_MEETING_ROOM
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SEAFOAM_ISLANDS_B1F
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SEAFOAM_ISLANDS_B2F
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SEAFOAM_ISLANDS_B3F
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SEAFOAM_ISLANDS_B4F
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; VERMILION_OLD_ROD_HOUSE
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_GOOD_ROD_HOUSE
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; POKEMON_MANSION_1F
+ db MUSIC_GYM, BANK(Music_Gym) ; CINNABAR_GYM
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_LAB
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_LAB_TRADE_ROOM
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_LAB_METRONOME_ROOM
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_LAB_FOSSIL_ROOM
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CINNABAR_POKECENTER
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CINNABAR_MART
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_MART_COPY
+ db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU_LOBBY
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; COPYCATS_HOUSE_1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; COPYCATS_HOUSE_2F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; FIGHTING_DOJO
+ db MUSIC_GYM, BANK(Music_Gym) ; SAFFRON_GYM
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_PIDGEY_HOUSE
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SAFFRON_MART
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_1F
+ db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SAFFRON_POKECENTER
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; MR_PSYCHICS_HOUSE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_15_GATE_1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_15_GATE_2F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_16_GATE_1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_16_GATE_2F
+ db MUSIC_CELADON, BANK(Music_Celadon) ; ROUTE_16_FLY_HOUSE
+ db MUSIC_CELADON, BANK(Music_Celadon) ; ROUTE_12_SUPER_ROD_HOUSE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_18_GATE_1F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_18_GATE_2F
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SEAFOAM_ISLANDS_1F
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ROUTE_22_GATE
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VICTORY_ROAD_2F
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; ROUTE_12_GATE_2F
+ db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_TRADE_HOUSE
+ db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DIGLETTS_CAVE
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VICTORY_ROAD_3F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; ROCKET_HIDEOUT_B1F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; ROCKET_HIDEOUT_B2F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; ROCKET_HIDEOUT_B3F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; ROCKET_HIDEOUT_B4F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; ROCKET_HIDEOUT_ELEVATOR
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UNUSED_MAP_CC
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UNUSED_MAP_CD
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UNUSED_MAP_CE
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_2F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_3F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_4F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_5F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_6F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_7F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_8F
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; POKEMON_MANSION_2F
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; POKEMON_MANSION_3F
+ db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; POKEMON_MANSION_B1F
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_EAST
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_NORTH
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_WEST
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_CENTER
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_CENTER_REST_HOUSE
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_SECRET_HOUSE
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_WEST_REST_HOUSE
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_EAST_REST_HOUSE
+ db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SAFARI_ZONE_NORTH_REST_HOUSE
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; CERULEAN_CAVE_2F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; CERULEAN_CAVE_B1F
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; CERULEAN_CAVE_1F
+ db MUSIC_CITIES2, BANK(Music_Cities2) ; NAME_RATERS_HOUSE
+ db MUSIC_CITIES1, BANK(Music_Cities1) ; CERULEAN_BADGE_HOUSE
+ db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; UNUSED_MAP_E7
+ db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; ROCK_TUNNEL_B1F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_9F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_10F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_11F
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_ELEVATOR
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_ED
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_EE
+ db MUSIC_CELADON, BANK(Music_Celadon) ; TRADE_CENTER
+ db MUSIC_CELADON, BANK(Music_Celadon) ; COLOSSEUM
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_F1
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_F2
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_F3
+ db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_F4
+ db MUSIC_GYM, BANK(Music_Gym) ; LORELEIS_ROOM
+ db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; BRUNOS_ROOM
+ db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; AGATHAS_ROOM
+ db MUSIC_ROUTES3, BANK(Music_Routes3) ; BEACH_HOUSE
diff --git a/data/mon_party_sprites.asm b/data/mon_party_sprites.asm
index 81600f45..b94fa0d3 100755
--- a/data/mon_party_sprites.asm
+++ b/data/mon_party_sprites.asm
@@ -1,22 +1,11 @@
MonPartyData:
-; MON = 0
-; BALL_M = 1
-; HELIX = 2
-; FAIRY = 3
-; BIRD_M = 4
-; WATER = 5
-; BUG = 6
-; GRASS = 7
-; SNAKE = 8
-; QUADRUPED = 9
-; PIKACHU = A
dn SPRITE_GRASS, SPRITE_GRASS ;Bulbasaur/Ivysaur
dn SPRITE_GRASS, SPRITE_MON ;Venusaur/Charmander
dn SPRITE_MON, SPRITE_MON ;Charmeleon/Charizard
dn SPRITE_WATER, SPRITE_WATER ;Squirtle/Wartortle
dn SPRITE_WATER, SPRITE_BUG ;Blastoise/Caterpie
dn SPRITE_BUG, SPRITE_BUG ;Metapod/Butterfree
- dn SPRITE_BUG, SPRITE_BUG ;Weedle/Kakuna
+ dn SPRITE_BUG, SPRITE_BUG ;Weedle/Kakuna
dn SPRITE_BUG, SPRITE_BIRD_M ;Beedrill/Pidgey
dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Pidgeotto/Pidgeot
dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Rattata/Raticate
diff --git a/data/special_warps.asm b/data/special_warps.asm
index 27837109..6b536b67 100755
--- a/data/special_warps.asm
+++ b/data/special_warps.asm
@@ -2,33 +2,33 @@
; 00: target map ID
; 01: which dungeon warp in the source map was used
DungeonWarpList:
- db SEAFOAM_ISLANDS_2,$01
- db SEAFOAM_ISLANDS_2,$02
- db SEAFOAM_ISLANDS_3,$01
- db SEAFOAM_ISLANDS_3,$02
- db SEAFOAM_ISLANDS_4,$01
- db SEAFOAM_ISLANDS_4,$02
- db SEAFOAM_ISLANDS_5,$01
- db SEAFOAM_ISLANDS_5,$02
- db VICTORY_ROAD_2,$02
- db MANSION_1,$01
- db MANSION_1,$02
- db MANSION_2,$03
+ db SEAFOAM_ISLANDS_B1F,$01
+ db SEAFOAM_ISLANDS_B1F,$02
+ db SEAFOAM_ISLANDS_B2F,$01
+ db SEAFOAM_ISLANDS_B2F,$02
+ db SEAFOAM_ISLANDS_B3F,$01
+ db SEAFOAM_ISLANDS_B3F,$02
+ db SEAFOAM_ISLANDS_B4F,$01
+ db SEAFOAM_ISLANDS_B4F,$02
+ db VICTORY_ROAD_2F,$02
+ db POKEMON_MANSION_1F,$01
+ db POKEMON_MANSION_1F,$02
+ db POKEMON_MANSION_2F,$03
db $FF
DungeonWarpData:
- FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,18
- FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,23
- FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,19
- FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,22
- FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,18
- FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,19
- FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,4
- FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,5
- FLYWARP_DATA VICTORY_ROAD_2_WIDTH,16,22
- FLYWARP_DATA MANSION_1_WIDTH,14,16
- FLYWARP_DATA MANSION_1_WIDTH,14,16
- FLYWARP_DATA MANSION_2_WIDTH,14,18
+ FLYWARP_DATA SEAFOAM_ISLANDS_B1F_WIDTH,7,18
+ FLYWARP_DATA SEAFOAM_ISLANDS_B1F_WIDTH,7,23
+ FLYWARP_DATA SEAFOAM_ISLANDS_B2F_WIDTH,7,19
+ FLYWARP_DATA SEAFOAM_ISLANDS_B2F_WIDTH,7,22
+ FLYWARP_DATA SEAFOAM_ISLANDS_B3F_WIDTH,7,18
+ FLYWARP_DATA SEAFOAM_ISLANDS_B3F_WIDTH,7,19
+ FLYWARP_DATA SEAFOAM_ISLANDS_B4F_WIDTH,14,4
+ FLYWARP_DATA SEAFOAM_ISLANDS_B4F_WIDTH,14,5
+ FLYWARP_DATA VICTORY_ROAD_2F_WIDTH,16,22
+ FLYWARP_DATA POKEMON_MANSION_1F_WIDTH,14,16
+ FLYWARP_DATA POKEMON_MANSION_1F_WIDTH,14,16
+ FLYWARP_DATA POKEMON_MANSION_2F_WIDTH,14,18
;Format:
; db Map_id
diff --git a/data/super_rod.asm b/data/super_rod.asm
index 1303edbb..01c6b588 100755
--- a/data/super_rod.asm
+++ b/data/super_rod.asm
@@ -26,8 +26,8 @@ FishingSlots::
db SAFARI_ZONE_EAST,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,DRATINI,15
db SAFARI_ZONE_NORTH,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,DRATINI,15
db SAFARI_ZONE_WEST,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,DRATINI,15
- db SEAFOAM_ISLANDS_4,KRABBY,25,STARYU,20,KINGLER,35,STARYU,40
- db SEAFOAM_ISLANDS_5,KRABBY,25,STARYU,20,KINGLER,35,STARYU,40
- db UNKNOWN_DUNGEON_1,GOLDEEN,25,SEAKING,35,SEAKING,45,SEAKING,55
- db UNKNOWN_DUNGEON_3,GOLDEEN,30,SEAKING,40,SEAKING,50,SEAKING,60
+ db SEAFOAM_ISLANDS_B3F,KRABBY,25,STARYU,20,KINGLER,35,STARYU,40
+ db SEAFOAM_ISLANDS_B4F,KRABBY,25,STARYU,20,KINGLER,35,STARYU,40
+ db CERULEAN_CAVE_1F,GOLDEEN,25,SEAKING,35,SEAKING,45,SEAKING,55
+ db CERULEAN_CAVE_B1F,GOLDEEN,30,SEAKING,40,SEAKING,50,SEAKING,60
db $ff
diff --git a/data/town_map_entries.asm b/data/town_map_entries.asm
index e9ced645..eed56919 100755
--- a/data/town_map_entries.asm
+++ b/data/town_map_entries.asm
@@ -38,65 +38,65 @@ ExternalMapEntries:
EMAP $B,$0,Route25Name
InternalMapEntries:
- IMAP OAKS_LAB, $2,$B,PalletTownName
- IMAP VIRIDIAN_GYM, $2,$8,ViridianCityName
- IMAP VIRIDIAN_FOREST_ENTRANCE, $2,$6,Route2Name
- IMAP VIRIDIAN_FOREST, $2,$4,ViridianForestName
- IMAP PEWTER_POKECENTER, $2,$3,PewterCityName
- IMAP MT_MOON_3, $6,$2,MountMoonName
- IMAP CERULEAN_MART, $A,$2,CeruleanCityName
- IMAP MT_MOON_POKECENTER, $5,$2,Route4Name
- IMAP TRASHED_HOUSE_COPY, $A,$2,CeruleanCityName
- IMAP DAYCAREM, $A,$4,Route5Name
- IMAP PATH_ENTRANCE_ROUTE_6_COPY,$A,$6,Route6Name
- IMAP PATH_ENTRANCE_ROUTE_7_COPY,$9,$5,Route7Name
- IMAP PATH_ENTRANCE_ROUTE_8, $B,$5,Route8Name
- IMAP ROCK_TUNNEL_1, $E,$3,RockTunnelName
- IMAP POWER_PLANT, $F,$4,PowerPlantName
- IMAP ROUTE_11_GATE_2F, $D,$9,Route11Name
- IMAP ROUTE_12_GATE_1F, $E,$7,Route12Name
- IMAP BILLS_HOUSE, $C,$0,SeaCottageName
- IMAP VERMILION_DOCK, $A,$9,VermilionCityName
- IMAP SS_ANNE_10, $9,$A,SSAnneName
- IMAP VICTORY_ROAD_1, $0,$4,VictoryRoadName
- IMAP HALL_OF_FAME, $0,$2,PokemonLeagueName
- IMAP UNDERGROUND_PATH_NS, $A,$5,UndergroundPathName
- IMAP CHAMPIONS_ROOM, $0,$2,PokemonLeagueName
- IMAP UNDERGROUND_PATH_WE, $A,$5,UndergroundPathName
- IMAP CELADON_HOTEL, $7,$5,CeladonCityName
- IMAP LAVENDER_POKECENTER, $E,$5,LavenderTownName
- IMAP POKEMONTOWER_7, $F,$5,PokemonTowerName
- IMAP LAVENDER_HOUSE_2, $E,$5,LavenderTownName
- IMAP FUCHSIA_HOUSE_2, $8,$D,FuchsiaCityName
- IMAP SAFARI_ZONE_ENTRANCE, $8,$C,SafariZoneName
- IMAP FUCHSIA_MEETING_ROOM, $8,$D,FuchsiaCityName
- IMAP SEAFOAM_ISLANDS_5, $5,$F,SeafoamIslandsName
- IMAP VERMILION_HOUSE_2, $A,$9,VermilionCityName
- IMAP FUCHSIA_HOUSE_3, $8,$D,FuchsiaCityName
- IMAP MANSION_1, $2,$F,PokemonMansionName
- IMAP CINNABAR_MART_COPY, $2,$F,CinnabarIslandName
- IMAP INDIGO_PLATEAU_LOBBY, $0,$2,IndigoPlateauName
- IMAP SAFFRON_HOUSE_2, $A,$5,SaffronCityName
- IMAP ROUTE_15_GATE_2F, $9,$D,Route15Name
- IMAP ROUTE_16_HOUSE, $4,$5,Route16Name
- IMAP ROUTE_12_HOUSE, $E,$A,Route12Name
- IMAP ROUTE_18_GATE_2F, $7,$D,Route18Name
- IMAP SEAFOAM_ISLANDS_1, $5,$F,SeafoamIslandsName
- IMAP ROUTE_22_GATE, $0,$7,Route22Name
- IMAP VICTORY_ROAD_2, $0,$4,VictoryRoadName
- IMAP ROUTE_12_GATE_2F, $E,$7,Route12Name
- IMAP VERMILION_HOUSE_3, $A,$9,VermilionCityName
- IMAP DIGLETTS_CAVE, $3,$4,DiglettsCaveName
- IMAP VICTORY_ROAD_3, $0,$4,VictoryRoadName
- IMAP UNUSED_MAP_CE, $7,$5,RocketHQName
- IMAP SILPH_CO_8F, $A,$5,SilphCoName
- IMAP MANSION_4, $2,$F,PokemonMansionName
- IMAP SAFARI_ZONE_REST_HOUSE_4, $8,$C,SafariZoneName
- IMAP UNKNOWN_DUNGEON_1, $9,$1,CeruleanCaveName
- IMAP NAME_RATERS_HOUSE, $E,$5,LavenderTownName
- IMAP CERULEAN_HOUSE_2, $A,$2,CeruleanCityName
- IMAP ROCK_TUNNEL_2, $E,$3,RockTunnelName
- IMAP SILPH_CO_ELEVATOR, $A,$5,SilphCoName
- IMAP AGATHAS_ROOM, $0,$2,PokemonLeagueName
- IMAP BEACH_HOUSE, $6,$F,Route19Name
+ IMAP OAKS_LAB, $2,$B,PalletTownName
+ IMAP VIRIDIAN_GYM, $2,$8,ViridianCityName
+ IMAP VIRIDIAN_FOREST_SOUTH_GATE, $2,$6,Route2Name
+ IMAP VIRIDIAN_FOREST, $2,$4,ViridianForestName
+ IMAP PEWTER_POKECENTER, $2,$3,PewterCityName
+ IMAP MT_MOON_B2F, $6,$2,MountMoonName
+ IMAP CERULEAN_MART, $A,$2,CeruleanCityName
+ IMAP MT_MOON_POKECENTER, $5,$2,Route4Name
+ IMAP CERULEAN_TRASHED_HOUSE_COPY, $A,$2,CeruleanCityName
+ IMAP DAYCARE, $A,$4,Route5Name
+ IMAP UNDERGROUND_PATH_ROUTE_6_COPY, $A,$6,Route6Name
+ IMAP UNDERGROUND_PATH_ROUTE_7_COPY, $9,$5,Route7Name
+ IMAP UNDERGROUND_PATH_ROUTE_8, $B,$5,Route8Name
+ IMAP ROCK_TUNNEL_1F, $E,$3,RockTunnelName
+ IMAP POWER_PLANT, $F,$4,PowerPlantName
+ IMAP ROUTE_11_GATE_2F, $D,$9,Route11Name
+ IMAP ROUTE_12_GATE_1F, $E,$7,Route12Name
+ IMAP BILLS_HOUSE, $C,$0,SeaCottageName
+ IMAP VERMILION_DOCK, $A,$9,VermilionCityName
+ IMAP SS_ANNE_B1F_ROOMS, $9,$A,SSAnneName
+ IMAP VICTORY_ROAD_1F, $0,$4,VictoryRoadName
+ IMAP HALL_OF_FAME, $0,$2,PokemonLeagueName
+ IMAP UNDERGROUND_PATH_NORTH_SOUTH, $A,$5,UndergroundPathName
+ IMAP CHAMPIONS_ROOM, $0,$2,PokemonLeagueName
+ IMAP UNDERGROUND_PATH_WEST_EAST, $A,$5,UndergroundPathName
+ IMAP CELADON_HOTEL, $7,$5,CeladonCityName
+ IMAP LAVENDER_POKECENTER, $E,$5,LavenderTownName
+ IMAP POKEMON_TOWER_7F, $F,$5,PokemonTowerName
+ IMAP LAVENDER_CUBONE_HOUSE, $E,$5,LavenderTownName
+ IMAP WARDENS_HOUSE, $8,$D,FuchsiaCityName
+ IMAP SAFARI_ZONE_GATE, $8,$C,SafariZoneName
+ IMAP FUCHSIA_MEETING_ROOM, $8,$D,FuchsiaCityName
+ IMAP SEAFOAM_ISLANDS_B4F, $5,$F,SeafoamIslandsName
+ IMAP VERMILION_OLD_ROD_HOUSE, $A,$9,VermilionCityName
+ IMAP FUCHSIA_GOOD_ROD_HOUSE, $8,$D,FuchsiaCityName
+ IMAP POKEMON_MANSION_1F, $2,$F,PokemonMansionName
+ IMAP CINNABAR_MART_COPY, $2,$F,CinnabarIslandName
+ IMAP INDIGO_PLATEAU_LOBBY, $0,$2,IndigoPlateauName
+ IMAP MR_PSYCHICS_HOUSE, $A,$5,SaffronCityName
+ IMAP ROUTE_15_GATE_2F, $9,$D,Route15Name
+ IMAP ROUTE_16_FLY_HOUSE, $4,$5,Route16Name
+ IMAP ROUTE_12_SUPER_ROD_HOUSE, $E,$A,Route12Name
+ IMAP ROUTE_18_GATE_2F, $7,$D,Route18Name
+ IMAP SEAFOAM_ISLANDS_1F, $5,$F,SeafoamIslandsName
+ IMAP ROUTE_22_GATE, $0,$7,Route22Name
+ IMAP VICTORY_ROAD_2F, $0,$4,VictoryRoadName
+ IMAP ROUTE_12_GATE_2F, $E,$7,Route12Name
+ IMAP VERMILION_TRADE_HOUSE, $A,$9,VermilionCityName
+ IMAP DIGLETTS_CAVE, $3,$4,DiglettsCaveName
+ IMAP VICTORY_ROAD_3F, $0,$4,VictoryRoadName
+ IMAP UNUSED_MAP_CE, $7,$5,RocketHQName
+ IMAP SILPH_CO_8F, $A,$5,SilphCoName
+ IMAP POKEMON_MANSION_B1F, $2,$F,PokemonMansionName
+ IMAP SAFARI_ZONE_NORTH_REST_HOUSE, $8,$C,SafariZoneName
+ IMAP CERULEAN_CAVE_1F, $9,$1,CeruleanCaveName
+ IMAP NAME_RATERS_HOUSE, $E,$5,LavenderTownName
+ IMAP CERULEAN_BADGE_HOUSE, $A,$2,CeruleanCityName
+ IMAP ROCK_TUNNEL_B1F, $E,$3,RockTunnelName
+ IMAP SILPH_CO_ELEVATOR, $A,$5,SilphCoName
+ IMAP AGATHAS_ROOM, $0,$2,PokemonLeagueName
+ IMAP BEACH_HOUSE, $6,$F,Route19Name
db $FF
diff --git a/data/town_map_order.asm b/data/town_map_order.asm
index 10131a31..a082c376 100755
--- a/data/town_map_order.asm
+++ b/data/town_map_order.asm
@@ -7,7 +7,7 @@ TownMapOrder:
db DIGLETTS_CAVE
db PEWTER_CITY
db ROUTE_3
- db MT_MOON_1
+ db MT_MOON_1F
db ROUTE_4
db CERULEAN_CITY
db ROUTE_24
@@ -16,12 +16,12 @@ TownMapOrder:
db ROUTE_5
db ROUTE_6
db VERMILION_CITY
- db SS_ANNE_1
+ db SS_ANNE_1F
db ROUTE_9
db ROCK_TUNNEL_POKECENTER
db ROUTE_10
db LAVENDER_TOWN
- db POKEMONTOWER_2
+ db POKEMON_TOWER_2F
db ROUTE_8
db ROUTE_7
db CELADON_CITY
@@ -37,13 +37,13 @@ TownMapOrder:
db FUCHSIA_CITY
db SAFARI_ZONE_EAST
db ROUTE_19
- db SEAFOAM_ISLANDS_2
+ db SEAFOAM_ISLANDS_B1F
db ROUTE_20
db CINNABAR_ISLAND
db ROUTE_21
db ROUTE_22
db ROUTE_23
- db VICTORY_ROAD_3
+ db VICTORY_ROAD_3F
db INDIGO_PLATEAU
db POWER_PLANT
TownMapOrderEnd:
diff --git a/data/trainer_parties.asm b/data/trainer_parties.asm
index 865d1907..0c3dcc8f 100755
--- a/data/trainer_parties.asm
+++ b/data/trainer_parties.asm
@@ -59,16 +59,22 @@ TrainerDataPointers:
YoungsterData:
db 11,RATTATA,EKANS,0
db 14,SPEAROW,0
+; Mt. Moon 1F
db 10,RATTATA,RATTATA,ZUBAT,0
+; Route 24
db 14,RATTATA,EKANS,ZUBAT,0
+; Route 25
db 15,RATTATA,SPEAROW,0
db 17,SLOWPOKE,0
db 14,EKANS,SANDSHREW,0
+; SS Anne 1F Rooms
db 21,NIDORAN_M,0
+; Route 11
db 21,EKANS,0
db 19,SANDSHREW,ZUBAT,0
db 17,RATTATA,RATTATA,RATICATE,0
db 18,NIDORAN_M,NIDORINO,0
+; Unused
db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0
db 24,SANDSHREW,0
BugCatcherData:
@@ -78,12 +84,17 @@ BugCatcherData:
db 10,CATERPIE,WEEDLE,CATERPIE,0
db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0
db 11,CATERPIE,METAPOD,0
+; Mt. Moon 1F
db 11,WEEDLE,KAKUNA,0
db 10,CATERPIE,METAPOD,CATERPIE,0
+; Route 24
db 14,CATERPIE,WEEDLE,0
+; Route 6
db 16,WEEDLE,CATERPIE,WEEDLE,0
db 20,BUTTERFREE,0
+; Unused
db 18,METAPOD,CATERPIE,VENONAT,0
+; Route 9
db 19,BEEDRILL,BEEDRILL,0
db 20,CATERPIE,WEEDLE,VENONAT,0
db 8,CATERPIE,METAPOD,0
@@ -91,150 +102,224 @@ LassData:
db 9,PIDGEY,PIDGEY,0
db 10,RATTATA,NIDORAN_M,0
db 14,JIGGLYPUFF,0
+; Route 4
db 31,PARAS,PARAS,PARASECT,0
+; Mt. Moon 1F
db 11,ODDISH,BELLSPROUT,0
db 14,CLEFAIRY,0
+; Route 24
db 16,PIDGEY,NIDORAN_F,0
db 14,PIDGEY,NIDORAN_F,0
+; Route 25
db 15,NIDORAN_M,NIDORAN_F,0
db 13,ODDISH,PIDGEY,ODDISH,0
+; SS Anne 1F Rooms
db 18,PIDGEY,NIDORAN_F,0
+; SS Anne 2F Rooms
db 20,JIGGLYPUFF,0
+; Route 8
db 23,NIDORAN_F,NIDORINA,0
db 24,MEOWTH,MEOWTH,MEOWTH,0
db 19,PIDGEY,RATTATA,NIDORAN_F,MEOWTH,NIDORAN_M,0
db 22,CLEFAIRY,CLEFAIRY,0
+; Celadon Gym
db 23,BELLSPROUT,WEEPINBELL,0
db 23,ODDISH,GLOOM,0
db 6,NIDORAN_F,NIDORAN_M,0
SailorData:
+; SS Anne Stern
db 18,MACHOP,SHELLDER,0
db 17,MACHOP,TENTACOOL,0
+; SS Anne B1F Rooms
db 21,SHELLDER,0
db 17,HORSEA,SHELLDER,TENTACOOL,0
db 18,TENTACOOL,STARYU,0
db 17,HORSEA,HORSEA,HORSEA,0
db 20,MACHOP,0
+; Vermilion Gym
db 24,MAGNEMITE,0
JrTrainerMData:
+; Pewter Gym
db 9,DIGLETT,SANDSHREW,0
+; Route 24/Route 25
db 14,RATTATA,EKANS,0
+; Route 24
db 18,MANKEY,0
+; Route 6
db 20,SQUIRTLE,0
db 16,SPEAROW,RATICATE,0
+; Unused
db 18,DIGLETT,DIGLETT,SANDSHREW,0
+; Route 9
db 21,GROWLITHE,CHARMANDER,0
db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0
+; Route 12
db 29,NIDORAN_M,NIDORINO,0
db 16,WEEPINBELL,0
JrTrainerFData:
+; Cerulean Gym
db 19,GOLDEEN,0
+; Route 6
db 16,ODDISH,BELLSPROUT,0
db 16,PIDGEY,PIDGEY,PIDGEY,0
+; Unused
db 22,BULBASAUR,0
+; Route 9
db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0
db 23,MEOWTH,0
+; Route 10
db 20,JIGGLYPUFF,CLEFAIRY,0
db 21,PIDGEY,PIDGEOTTO,0
+; Rock Tunnel B1F
db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0
db 22,ODDISH,BULBASAUR,0
+; Celadon Gym
db 24,BULBASAUR,IVYSAUR,0
+; Route 13
db 24,PIDGEY,MEOWTH,RATTATA,PIDGEY,MEOWTH,0
db 30,POLIWAG,POLIWAG,0
db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0
db 28,GOLDEEN,POLIWAG,HORSEA,0
+; Route 20
db 31,GOLDEEN,SEAKING,0
+; Rock Tunnel 1F
db 22,BELLSPROUT,CLEFAIRY,0
db 20,MEOWTH,ODDISH,PIDGEY,0
db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0
+; Route 15
db 28,GLOOM,ODDISH,ODDISH,0
db 29,PIDGEY,PIDGEOTTO,0
db 33,CLEFAIRY,0
db 29,BELLSPROUT,ODDISH,TANGELA,0
+; Route 20
db 30,TENTACOOL,HORSEA,SEEL,0
db 20,CUBONE,0
PokemaniacData:
+; Route 10
db 30,RHYHORN,LICKITUNG,0
db 20,CUBONE,SLOWPOKE,0
+; Rock Tunnel B1F
db 20,SLOWPOKE,SLOWPOKE,SLOWPOKE,0
db 22,CHARMANDER,CUBONE,0
db 25,SLOWPOKE,0
+; Victory Road 2F
db 40,CHARMELEON,LAPRAS,LICKITUNG,0
+; Rock Tunnel 1F
db 23,CUBONE,SLOWPOKE,0
SuperNerdData:
+; Mt. Moon 1F
db 11,MAGNEMITE,VOLTORB,0
+; Mt. Moon B2F
db 12,GRIMER,VOLTORB,KOFFING,0
+; Route 8
db 20,VOLTORB,KOFFING,VOLTORB,MAGNEMITE,0
db 22,GRIMER,MUK,GRIMER,0
db 26,KOFFING,0
+; Unused
db 22,KOFFING,MAGNEMITE,WEEZING,0
db 20,MAGNEMITE,MAGNEMITE,KOFFING,MAGNEMITE,0
db 24,MAGNEMITE,VOLTORB,0
+; Cinnabar Gym
db 36,VULPIX,VULPIX,NINETALES,0
db 34,PONYTA,CHARMANDER,VULPIX,GROWLITHE,0
db 41,RAPIDASH,0
db 37,GROWLITHE,VULPIX,0
HikerData:
+; Mt. Moon 1F
db 10,GEODUDE,GEODUDE,ONIX,0
+; Route 25
db 15,MACHOP,GEODUDE,0
db 13,GEODUDE,GEODUDE,MACHOP,GEODUDE,0
db 17,ONIX,0
+; Route 9
db 21,GEODUDE,ONIX,0
db 20,GEODUDE,MACHOP,GEODUDE,0
+; Route 10
db 21,GEODUDE,ONIX,0
db 19,ONIX,GRAVELER,0
+; Rock Tunnel B1F
db 21,GEODUDE,GEODUDE,GRAVELER,0
db 25,GEODUDE,0
+; Route 9/Rock Tunnel B1F
db 20,MACHOP,ONIX,0
+; Rock Tunnel 1F
db 19,GEODUDE,MACHOP,GEODUDE,GEODUDE,0
db 20,ONIX,ONIX,GEODUDE,0
db 21,GEODUDE,GRAVELER,0
BikerData:
+; Route 13
db 28,KOFFING,KOFFING,KOFFING,0
+; Route 14
db 29,KOFFING,GRIMER,0
+; Route 15
db 25,KOFFING,KOFFING,WEEZING,KOFFING,GRIMER,0
db 28,KOFFING,GRIMER,WEEZING,0
+; Route 16
db 29,GRIMER,KOFFING,0
db 33,WEEZING,0
db 26,GRIMER,GRIMER,GRIMER,GRIMER,0
+; Route 17
+ ; From https://www.smogon.com/smog/issue27/glitch:
+ ; 0E:5FC2 is offset of the ending 0 for this first Biker on Route 17.
+ ; BaseStats + (MonBaseStatsEnd - MonBaseStats) * (000 - 1) = $5FC2;
+ ; that's the formula from GetMonHeader for the base stats of mon #000.
+ ; (BaseStats = $43DE and BANK(BaseStats) = $0E.)
+ ; Finally, PokedexOrder lists 0 as the dex ID for every MissingNo.
+ ; The result is that this data gets interpreted as the base stats
+ ; for MissingNo: 0,33,MUK,0,29,VOLTORB,VOLTORB,0,...,28,GRIMER,GRIMER.
db 28,WEEZING,KOFFING,WEEZING,0
db 33,MUK,0
db 29,VOLTORB,VOLTORB,0
db 29,WEEZING,MUK,0
db 25,KOFFING,WEEZING,KOFFING,KOFFING,WEEZING,0
+; Route 14
db 26,KOFFING,KOFFING,GRIMER,KOFFING,0
db 28,GRIMER,GRIMER,KOFFING,0
db 29,KOFFING,MUK,0
BurglarData:
+; Unused
db 29,GROWLITHE,VULPIX,0
db 33,GROWLITHE,0
db 28,VULPIX,CHARMANDER,PONYTA,0
+; Cinnabar Gym
db 36,GROWLITHE,VULPIX,NINETALES,0
db 41,PONYTA,0
db 37,VULPIX,GROWLITHE,0
+; Mansion 2F
db 34,CHARMANDER,CHARMELEON,0
+; Mansion 3F
db 38,NINETALES,0
+; Mansion B1F
db 34,GROWLITHE,PONYTA,0
EngineerData:
+; Unused
db 21,VOLTORB,MAGNEMITE,0
+; Route 11
db 21,MAGNEMITE,0
db 18,MAGNEMITE,MAGNEMITE,MAGNETON,0
Juggler1Data:
; none
FisherData:
+; SS Anne 2F Rooms
db 17,GOLDEEN,TENTACOOL,GOLDEEN,0
+; SS Anne B1F Rooms
db 17,TENTACOOL,STARYU,SHELLDER,0
+; Route 12
db 22,GOLDEEN,POLIWAG,GOLDEEN,0
db 24,TENTACOOL,GOLDEEN,0
db 27,GOLDEEN,0
db 21,POLIWAG,SHELLDER,GOLDEEN,HORSEA,0
+; Route 21
db 28,SEAKING,GOLDEEN,SEAKING,SEAKING,0
db 31,SHELLDER,CLOYSTER,0
db 27,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,0
db 33,SEAKING,GOLDEEN,0
+; Route 12
db 24,MAGIKARP,MAGIKARP,0
SwimmerData:
+; Cerulean Gym
db 16,HORSEA,SHELLDER,0
+; Route 19
db 30,TENTACOOL,SHELLDER,0
db 29,GOLDEEN,HORSEA,STARYU,0
db 30,POLIWAG,POLIWHIRL,0
@@ -242,167 +327,244 @@ SwimmerData:
db 29,GOLDEEN,SHELLDER,SEAKING,0
db 30,HORSEA,HORSEA,0
db 27,TENTACOOL,TENTACOOL,STARYU,HORSEA,TENTACRUEL,0
+; Route 20
db 31,SHELLDER,CLOYSTER,0
db 35,STARYU,0
db 28,HORSEA,HORSEA,SEADRA,HORSEA,0
+; Route 21
db 33,SEADRA,TENTACRUEL,0
db 37,STARMIE,0
db 33,STARYU,WARTORTLE,0
db 32,POLIWHIRL,TENTACOOL,SEADRA,0
CueBallData:
+; Route 16
db 28,MACHOP,MANKEY,MACHOP,0
db 29,MANKEY,MACHOP,0
db 33,MACHOP,0
+; Route 17
db 29,MANKEY,PRIMEAPE,0
db 29,MACHOP,MACHOKE,0
db 33,MACHOKE,0
db 26,MANKEY,MANKEY,MACHOKE,MACHOP,0
db 29,PRIMEAPE,MACHOKE,0
+; Route 21
db 31,TENTACOOL,TENTACOOL,TENTACRUEL,0
GamblerData:
+; Route 11
db 18,POLIWAG,HORSEA,0
db 18,BELLSPROUT,ODDISH,0
db 18,VOLTORB,MAGNEMITE,0
db 18,GROWLITHE,VULPIX,0
+; Route 8
db 22,POLIWAG,POLIWAG,POLIWHIRL,0
+; Unused
db 22,ONIX,GEODUDE,GRAVELER,0
+; Route 8
db 24,GROWLITHE,VULPIX,0
BeautyData:
+; Celadon Gym
db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0
db 24,BELLSPROUT,BELLSPROUT,0
db 26,EXEGGCUTE,0
+; Route 13
db 27,RATTATA,VULPIX,RATTATA,0
db 29,CLEFAIRY,MEOWTH,0
+; Route 20
db 35,SEAKING,0
db 30,SHELLDER,SHELLDER,CLOYSTER,0
db 31,POLIWAG,SEAKING,0
+; Route 15
db 29,PIDGEOTTO,WIGGLYTUFF,0
db 29,BULBASAUR,IVYSAUR,0
+; Unused
db 33,WEEPINBELL,BELLSPROUT,WEEPINBELL,0
+; Route 19
db 27,POLIWAG,GOLDEEN,SEAKING,GOLDEEN,POLIWAG,0
db 30,GOLDEEN,SEAKING,0
db 29,STARYU,STARYU,STARYU,0
+; Route 20
db 30,SEADRA,HORSEA,SEADRA,0
PsychicData:
+; Saffron Gym
db 31,KADABRA,SLOWPOKE,MR_MIME,KADABRA,0
db 34,MR_MIME,KADABRA,0
db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0
db 38,SLOWBRO,0
RockerData:
+; Vermilion Gym
db 20,VOLTORB,VOLTORB,VOLTORB,0
+; Route 12
db 29,VOLTORB,ELECTRODE,0
JugglerData:
+; Silph Co. 5F
db 29,KADABRA,MR_MIME,0
+; Victory Road 2F
db 41,DROWZEE,HYPNO,KADABRA,KADABRA,0
+; Fuchsia Gym
db 31,DROWZEE,DROWZEE,KADABRA,DROWZEE,0
db 34,DROWZEE,HYPNO,0
+; Victory Road 2F
db 48,MR_MIME,0
+; Unused
db 33,HYPNO,0
+; Fuchsia Gym
db 38,HYPNO,0
db 34,DROWZEE,KADABRA,0
TamerData:
+; Fuchsia Gym
db 34,SANDSLASH,ARBOK,0
db 33,ARBOK,SANDSLASH,ARBOK,0
+; Viridian Gym
db 43,RHYHORN,0
db 39,ARBOK,TAUROS,0
+; Victory Road 2F
db 44,PERSIAN,GOLDUCK,0
+; Unused
db 42,RHYHORN,PRIMEAPE,ARBOK,TAUROS,0
BirdKeeperData:
+; Route 13
db 29,PIDGEY,PIDGEOTTO,0
db 25,SPEAROW,PIDGEY,PIDGEY,SPEAROW,SPEAROW,0
db 26,PIDGEY,PIDGEOTTO,SPEAROW,FEAROW,0
+; Route 14
db 33,FARFETCHD,0
db 29,SPEAROW,FEAROW,0
+; Route 15
db 26,PIDGEOTTO,FARFETCHD,DODUO,PIDGEY,0
db 28,DODRIO,DODUO,DODUO,0
+; Route 18
db 29,SPEAROW,FEAROW,0
db 34,DODRIO,0
db 26,SPEAROW,SPEAROW,FEAROW,SPEAROW,0
+; Route 20
db 30,FEAROW,FEAROW,PIDGEOTTO,0
+; Unused
db 39,PIDGEOTTO,PIDGEOTTO,PIDGEY,PIDGEOTTO,0
db 42,FARFETCHD,FEAROW,0
+; Route 14
db 28,PIDGEY,DODUO,PIDGEOTTO,0
db 26,PIDGEY,SPEAROW,PIDGEY,FEAROW,0
db 29,PIDGEOTTO,FEAROW,0
db 28,SPEAROW,DODUO,FEAROW,0
BlackbeltData:
+; Fighting Dojo
db 37,HITMONLEE,HITMONCHAN,0
db 31,MANKEY,MANKEY,PRIMEAPE,0
db 32,MACHOP,MACHOKE,0
db 36,PRIMEAPE,0
db 31,MACHOP,MANKEY,PRIMEAPE,0
+; Viridian Gym
db 40,MACHOP,MACHOKE,0
db 43,MACHOKE,0
db 38,MACHOKE,MACHOP,MACHOKE,0
+; Victory Road 2F
db 43,MACHOKE,MACHOP,MACHOKE,0
Green1Data:
db 5,EEVEE,0
+; Route 22
db $FF,9,SPEAROW,8,EEVEE,0
+; Cerulean City
db $FF,18,SPEAROW,15,SANDSHREW,15,RATTATA,17,EEVEE,0
ProfOakData:
+; Unused
db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,BLASTOISE,70,GYARADOS,0
db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,VENUSAUR,70,GYARADOS,0
db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,CHARIZARD,70,GYARADOS,0
ChiefData:
; none
ScientistData:
+; Unused
db 34,KOFFING,VOLTORB,0
+; Silph Co. 2F
db 26,GRIMER,WEEZING,KOFFING,WEEZING,0
db 28,MAGNEMITE,VOLTORB,MAGNETON,0
+; Silph Co. 3F/Mansion 1F
db 29,ELECTRODE,WEEZING,0
+; Silph Co. 4F
db 33,ELECTRODE,0
+; Silph Co. 5F
db 26,MAGNETON,KOFFING,WEEZING,MAGNEMITE,0
+; Silph Co. 6F
db 25,VOLTORB,KOFFING,MAGNETON,MAGNEMITE,KOFFING,0
+; Silph Co. 7F
db 29,ELECTRODE,MUK,0
+; Silph Co. 8F
db 29,GRIMER,ELECTRODE,0
+; Silph Co. 9F
db 28,VOLTORB,KOFFING,MAGNETON,0
+; Silph Co. 10F
db 29,MAGNEMITE,KOFFING,0
+; Mansion 3F
db 33,MAGNEMITE,MAGNETON,VOLTORB,0
+; Mansion B1F
db 34,MAGNEMITE,ELECTRODE,0
GiovanniData:
+; Rocket Hideout B4F
db $FF,25,ONIX,24,RHYHORN,29,PERSIAN,0
+; Silph Co. 11F
db $FF,37,NIDORINO,35,PERSIAN,37,RHYHORN,41,NIDOQUEEN,0
+; Viridian Gym
db $FF,50,DUGTRIO,53,PERSIAN,53,NIDOQUEEN,55,NIDOKING,55,RHYDON,0
RocketData:
+; Mt. Moon B2F
db 13,RATTATA,ZUBAT,0
db 11,SANDSHREW,RATTATA,ZUBAT,0
db 12,ZUBAT,EKANS,0
db 16,RATICATE,0
+; Cerulean City
db 17,MACHOP,DROWZEE,0
+; Route 24
db 15,EKANS,ZUBAT,0
+; Game Corner
db 20,RATICATE,ZUBAT,0
+; Rocket Hideout B1F
db 21,DROWZEE,MACHOP,0
db 21,RATICATE,RATICATE,0
db 20,GRIMER,KOFFING,KOFFING,0
db 19,RATTATA,RATICATE,RATICATE,RATTATA,0
db 22,GRIMER,KOFFING,0
+; Rocket Hideout B2F
db 17,ZUBAT,KOFFING,GRIMER,ZUBAT,RATICATE,0
+; Rocket Hideout B3F
db 20,RATTATA,RATICATE,DROWZEE,0
db 21,MACHOP,MACHOP,0
+; Rocket Hideout B4F
db 23,SANDSHREW,EKANS,SANDSLASH,0
db 23,EKANS,SANDSHREW,ARBOK,0
db 21,KOFFING,ZUBAT,0
+; Pokémon Tower 7F
db 25,ZUBAT,ZUBAT,GOLBAT,0
db 26,KOFFING,DROWZEE,0
db 23,ZUBAT,RATTATA,RATICATE,ZUBAT,0
+; Unused
db 26,DROWZEE,KOFFING,0
+; Silph Co. 2F
db 29,CUBONE,ZUBAT,0
db 25,GOLBAT,ZUBAT,ZUBAT,RATICATE,ZUBAT,0
+; Silph Co. 3F
db 28,RATICATE,HYPNO,RATICATE,0
+; Silph Co. 4F
db 29,MACHOP,DROWZEE,0
db 28,EKANS,ZUBAT,CUBONE,0
+; Silph Co. 5F
db 33,ARBOK,0
db 33,HYPNO,0
+; Silph Co. 6F
db 29,MACHOP,MACHOKE,0
db 28,ZUBAT,ZUBAT,GOLBAT,0
+; Silph Co. 7F
db 26,RATICATE,ARBOK,KOFFING,GOLBAT,0
db 29,CUBONE,CUBONE,0
db 29,SANDSHREW,SANDSLASH,0
+; Silph Co. 8F
db 26,RATICATE,ZUBAT,GOLBAT,RATTATA,0
db 28,WEEZING,GOLBAT,KOFFING,0
+; Silph Co. 9F
db 28,DROWZEE,GRIMER,MACHOP,0
db 28,GOLBAT,DROWZEE,HYPNO,0
+; Silph Co. 10F
db 33,MACHOKE,0
+; Silph Co. 11F
db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0
db 32,CUBONE,DROWZEE,MAROWAK,0
;JessieJamesData:
@@ -416,22 +578,33 @@ RocketData:
db 29,WEEZING,0
db 33,WEEZING,0
CooltrainerMData:
+; Viridian Gym
db 39,NIDORINO,NIDOKING,0
+; Victory Road 3F
db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0
db 43,KINGLER,TENTACRUEL,BLASTOISE,0
+; Unused
db 45,KINGLER,STARMIE,0
+; Victory Road 1F
db 42,IVYSAUR,WARTORTLE,CHARMELEON,CHARIZARD,0
+; Unused
db 44,IVYSAUR,WARTORTLE,CHARMELEON,0
db 49,NIDOKING,0
db 44,KINGLER,CLOYSTER,0
+; Viridian Gym
db 39,SANDSLASH,DUGTRIO,0
db 43,RHYHORN,0
CooltrainerFData:
+; Celadon Gym
db 24,WEEPINBELL,GLOOM,IVYSAUR,0
+; Victory Road 3F
db 43,BELLSPROUT,WEEPINBELL,VICTREEBEL,0
db 43,PARASECT,DEWGONG,CHANSEY,0
+; Unused
db 46,VILEPLUME,BUTTERFREE,0
+; Victory Road 1F
db 44,PERSIAN,NINETALES,0
+; Unused
db 45,IVYSAUR,VENUSAUR,0
db 45,NIDORINA,NIDOQUEEN,0
db 43,PERSIAN,NINETALES,RAICHU,0
@@ -452,19 +625,27 @@ BlaineData:
SabrinaData:
db $FF,50,ABRA,50,KADABRA,50,ALAKAZAM,0
GentlemanData:
+; SS Anne 1F Rooms
db 18,GROWLITHE,GROWLITHE,0
db 19,NIDORAN_M,NIDORAN_F,0
+; SS Anne 2F Rooms/Vermilion Gym
db 22,VOLTORB,MAGNEMITE,0
+; Unused
db 48,PRIMEAPE,0
+; SS Anne 2F Rooms
db 17,GROWLITHE,PONYTA,0
Green2Data:
+; SS Anne 2F
db $FF,19,SPEAROW,16,RATTATA,18,SANDSHREW,20,EEVEE,0
+; Pokémon Tower 2F
db $FF,25,FEAROW,23,SHELLDER,22,VULPIX,20,SANDSHREW,25,EEVEE,0
db $FF,25,FEAROW,23,MAGNEMITE,22,SHELLDER,20,SANDSHREW,25,EEVEE,0
db $FF,25,FEAROW,23,VULPIX,22,MAGNEMITE,20,SANDSHREW,25,EEVEE,0
+; Silph Co. 7F
db $FF,38,SANDSLASH,35,NINETALES,37,CLOYSTER,35,KADABRA,40,JOLTEON,0
db $FF,38,SANDSLASH,35,CLOYSTER,37,MAGNETON,35,KADABRA,40,FLAREON,0
db $FF,38,SANDSLASH,35,MAGNETON,37,NINETALES,35,KADABRA,40,VAPOREON,0
+; Route 22
db $FF,47,SANDSLASH,45,EXEGGCUTE,45,NINETALES,47,CLOYSTER,50,KADABRA,53,JOLTEON,0
db $FF,47,SANDSLASH,45,EXEGGCUTE,45,CLOYSTER,47,MAGNETON,50,KADABRA,53,FLAREON,0
db $FF,47,SANDSLASH,45,EXEGGCUTE,45,MAGNETON,47,NINETALES,50,KADABRA,53,VAPOREON,0
@@ -475,27 +656,40 @@ Green3Data:
LoreleiData:
db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0
ChannelerData:
+; Unused
db 22,GASTLY,0
db 24,GASTLY,0
db 23,GASTLY,GASTLY,0
db 24,GASTLY,0
+; Pokémon Tower 3F
db 23,GASTLY,0
db 24,GASTLY,0
+; Unused
db 24,HAUNTER,0
+; Pokémon Tower 3F
db 22,GASTLY,0
+; Pokémon Tower 4F
db 24,GASTLY,0
db 23,GASTLY,GASTLY,0
+; Unused
db 24,GASTLY,0
+; Pokémon Tower 4F
db 22,GASTLY,0
+; Unused
db 24,GASTLY,0
+; Pokémon Tower 5F
db 23,HAUNTER,0
+; Unused
db 24,GASTLY,0
+; Pokémon Tower 5F
db 22,GASTLY,0
db 24,GASTLY,0
db 22,HAUNTER,0
+; Pokémon Tower 6F
db 22,GASTLY,GASTLY,GASTLY,0
db 24,GASTLY,0
db 24,GASTLY,0
+; Saffron Gym
db 34,GASTLY,HAUNTER,0
db 38,HAUNTER,0
db 33,GASTLY,GASTLY,HAUNTER,0
diff --git a/data/wildPokemon/unknowndungeon1.asm b/data/wildPokemon/ceruleancave1.asm
index ff7be04e..ff7be04e 100755..100644
--- a/data/wildPokemon/unknowndungeon1.asm
+++ b/data/wildPokemon/ceruleancave1.asm
diff --git a/data/wildPokemon/unknowndungeon2.asm b/data/wildPokemon/ceruleancave2.asm
index 1fd20019..1fd20019 100755..100644
--- a/data/wildPokemon/unknowndungeon2.asm
+++ b/data/wildPokemon/ceruleancave2.asm
diff --git a/data/wildPokemon/unknowndungeonb1.asm b/data/wildPokemon/ceruleancaveb1.asm
index 5848678f..5848678f 100755..100644
--- a/data/wildPokemon/unknowndungeonb1.asm
+++ b/data/wildPokemon/ceruleancaveb1.asm
diff --git a/data/wild_mons.asm b/data/wild_mons.asm
index c1c44e95..ac4a8897 100755
--- a/data/wild_mons.asm
+++ b/data/wild_mons.asm
@@ -254,12 +254,12 @@ WildDataPointers:
; first part: pokemon found in grass
; second part: pokemon found while surfing
; each part goes as follows:
- ; if first byte == 00, then
- ; no wild pokemon on this map
- ; if first byte != 00, then
- ; first byte is encounter rate
- ; followed by 20 bytes:
- ; level, species (ten times)
+ ; if first byte == 00, then
+ ; no wild pokemon on this map
+ ; if first byte != 00, then
+ ; first byte is encounter rate
+ ; followed by 20 bytes:
+ ; level, species (ten times)
INCLUDE "data/wildPokemon/nomons.asm"
INCLUDE "data/wildPokemon/route1.asm"
@@ -312,9 +312,9 @@ INCLUDE "data/wildPokemon/mansion2.asm"
INCLUDE "data/wildPokemon/mansion3.asm"
INCLUDE "data/wildPokemon/mansionb1.asm"
INCLUDE "data/wildPokemon/route21.asm"
-INCLUDE "data/wildPokemon/unknowndungeon1.asm"
-INCLUDE "data/wildPokemon/unknowndungeon2.asm"
-INCLUDE "data/wildPokemon/unknowndungeonb1.asm"
+INCLUDE "data/wildPokemon/ceruleancave1.asm"
+INCLUDE "data/wildPokemon/ceruleancave2.asm"
+INCLUDE "data/wildPokemon/ceruleancaveb1.asm"
INCLUDE "data/wildPokemon/powerplant.asm"
INCLUDE "data/wildPokemon/route23.asm"
INCLUDE "data/wildPokemon/victoryroad2.asm"
diff --git a/engine/add_mon.asm b/engine/add_mon.asm
new file mode 100644
index 00000000..40b776d4
--- /dev/null
+++ b/engine/add_mon.asm
@@ -0,0 +1,522 @@
+_AddPartyMon:
+; Adds a new mon to the player's or enemy's party.
+; [wMonDataLocation] is used in an unusual way in this function.
+; If the lower nybble is 0, the mon is added to the player's party, else the enemy's.
+; If the entire value is 0, then the player is allowed to name the mon.
+ ld de, wPartyCount
+ ld a, [wMonDataLocation]
+ and $f
+ jr z, .next
+ ld de, wEnemyPartyCount
+.next
+ ld a, [de]
+ inc a
+ cp PARTY_LENGTH + 1
+ ret nc ; return if the party is already full
+ ld [de], a
+ ld a, [de]
+ ld [hNewPartyLength], a
+ add e
+ ld e, a
+ jr nc, .noCarry
+ inc d
+.noCarry
+ ld a, [wcf91]
+ ld [de], a ; write species of new mon in party list
+ inc de
+ ld a, $ff ; terminator
+ ld [de], a
+ ld hl, wPartyMonOT
+ ld a, [wMonDataLocation]
+ and $f
+ jr z, .next2
+ ld hl, wEnemyMonOT
+.next2
+ ld a, [hNewPartyLength]
+ dec a
+ call SkipFixedLengthTextEntries
+ ld d, h
+ ld e, l
+ ld hl, wPlayerName
+ ld bc, NAME_LENGTH
+ call CopyData
+ ld a, [wMonDataLocation]
+ and a
+ jr nz, .skipNaming
+ ld hl, wPartyMonNicks
+ ld a, [hNewPartyLength]
+ dec a
+ call SkipFixedLengthTextEntries
+ ld a, NAME_MON_SCREEN
+ ld [wNamingScreenType], a
+ predef AskName
+.skipNaming
+ ld hl, wPartyMons
+ ld a, [wMonDataLocation]
+ and $f
+ jr z, .next3
+ ld hl, wEnemyMons
+.next3
+ ld a, [hNewPartyLength]
+ dec a
+ ld bc, wPartyMon2 - wPartyMon1
+ call AddNTimes
+ ld e, l
+ ld d, h
+ push hl
+ ld a, [wcf91]
+ ld [wd0b5], a
+ call GetMonHeader
+ ld hl, wMonHeader
+ ld a, [hli]
+ ld [de], a ; species
+ inc de
+ pop hl
+ push hl
+ ld a, [wMonDataLocation]
+ and $f
+ ld a, $98 ; set enemy trainer mon IVs to fixed average values
+ ld b, $88
+ jr nz, .next4
+
+; If the mon is being added to the player's party, update the pokedex.
+ ld a, [wcf91]
+ ld [wd11e], a
+ push de
+ predef IndexToPokedex
+ pop de
+ ld a, [wd11e]
+ dec a
+ ld c, a
+ ld b, FLAG_TEST
+ ld hl, wPokedexOwned
+ call FlagAction
+ ld a, c ; whether the mon was already flagged as owned
+ ld [wUnusedD153], a ; not read
+ ld a, [wd11e]
+ dec a
+ ld c, a
+ ld b, FLAG_SET
+ push bc
+ call FlagAction
+ pop bc
+ ld hl, wPokedexSeen
+ call FlagAction
+
+ pop hl
+ push hl
+
+ ld a, [wIsInBattle]
+ and a ; is this a wild mon caught in battle?
+ jr nz, .copyEnemyMonData
+
+; Not wild.
+ call Random ; generate random IVs
+ ld b, a
+ call Random
+
+.next4
+ push bc
+ ld bc, wPartyMon1DVs - wPartyMon1
+ add hl, bc
+ pop bc
+ ld [hli], a
+ ld [hl], b ; write IVs
+ ld bc, (wPartyMon1HPExp - 1) - (wPartyMon1DVs + 1)
+ add hl, bc
+ ld a, 1
+ ld c, a
+ xor a
+ ld b, a
+ call CalcStat ; calc HP stat (set cur Hp to max HP)
+ ld a, [H_MULTIPLICAND+1]
+ ld [de], a
+ inc de
+ ld a, [H_MULTIPLICAND+2]
+ ld [de], a
+ inc de
+ xor a
+ ld [de], a ; box level
+ inc de
+ ld [de], a ; status ailments
+ inc de
+ jr .copyMonTypesAndMoves
+.copyEnemyMonData
+ ld bc, wEnemyMon1DVs - wEnemyMon1
+ add hl, bc
+ ld a, [wEnemyMonDVs] ; copy IVs from cur enemy mon
+ ld [hli], a
+ ld a, [wEnemyMonDVs + 1]
+ ld [hl], a
+ ld a, [wEnemyMonHP] ; copy HP from cur enemy mon
+ ld [de], a
+ inc de
+ ld a, [wEnemyMonHP+1]
+ ld [de], a
+ inc de
+ xor a
+ ld [de], a ; box level
+ inc de
+ ld a, [wEnemyMonStatus] ; copy status ailments from cur enemy mon
+ ld [de], a
+ inc de
+.copyMonTypesAndMoves
+ ld hl, wMonHTypes
+ ld a, [hli] ; type 1
+ ld [de], a
+ inc de
+ ld a, [hli] ; type 2
+ ld [de], a
+ inc de
+ ld a, [hli] ; catch rate (held item in gen 2)
+ ld [de], a
+ ld a, [wcf91]
+ cp KADABRA
+ jr nz, .skipGivingTwistedSpoon
+ ld a, $60 ; twistedspoon in gen 2
+ ld [de], a
+.skipGivingTwistedSpoon
+ ld hl, wMonHMoves
+ ld a, [hli]
+ inc de
+ push de
+ ld [de], a
+ ld a, [hli]
+ inc de
+ ld [de], a
+ ld a, [hli]
+ inc de
+ ld [de], a
+ ld a, [hli]
+ inc de
+ ld [de], a
+ push de
+ dec de
+ dec de
+ dec de
+ xor a
+ ld [wLearningMovesFromDayCare], a
+ predef WriteMonMoves
+ pop de
+ ld a, [wPlayerID] ; set trainer ID to player ID
+ inc de
+ ld [de], a
+ ld a, [wPlayerID + 1]
+ inc de
+ ld [de], a
+ push de
+ ld a, [wCurEnemyLVL]
+ ld d, a
+ callab CalcExperience
+ pop de
+ inc de
+ ld a, [hExperience] ; write experience
+ ld [de], a
+ inc de
+ ld a, [hExperience + 1]
+ ld [de], a
+ inc de
+ ld a, [hExperience + 2]
+ ld [de], a
+ xor a
+ ld b, NUM_STATS * 2
+.writeEVsLoop ; set all EVs to 0
+ inc de
+ ld [de], a
+ dec b
+ jr nz, .writeEVsLoop
+ inc de
+ inc de
+ pop hl
+ call AddPartyMon_WriteMovePP
+ inc de
+ ld a, [wCurEnemyLVL]
+ ld [de], a
+ inc de
+ ld a, [wIsInBattle]
+ dec a
+ jr nz, .calcFreshStats
+ ld hl, wEnemyMonMaxHP
+ ld bc, $a
+ call CopyData ; copy stats of cur enemy mon
+ pop hl
+ jr .done
+.calcFreshStats
+ pop hl
+ ld bc, wPartyMon1HPExp - 1 - wPartyMon1
+ add hl, bc
+ ld b, $0
+ call CalcStats ; calculate fresh set of stats
+.done
+ scf
+ ret
+
+LoadMovePPs:
+ call GetPredefRegisters
+ ; fallthrough
+AddPartyMon_WriteMovePP:
+ ld b, NUM_MOVES
+.pploop
+ ld a, [hli] ; read move ID
+ and a
+ jr z, .empty
+ dec a
+ push hl
+ push de
+ push bc
+ ld hl, Moves
+ ld bc, MoveEnd - Moves
+ call AddNTimes
+ ld de, wcd6d
+ ld a, BANK(Moves)
+ call FarCopyData
+ pop bc
+ pop de
+ pop hl
+ ld a, [wcd6d + 5] ; PP is byte 5 of move data
+.empty
+ inc de
+ ld [de], a
+ dec b
+ jr nz, .pploop ; there are still moves to read
+ ret
+
+; adds enemy mon [wcf91] (at position [wWhichPokemon] in enemy list) to own party
+; used in the cable club trade center
+_AddEnemyMonToPlayerParty:
+ ld hl, wPartyCount
+ ld a, [hl]
+ cp PARTY_LENGTH
+ scf
+ ret z ; party full, return failure
+ inc a
+ ld [hl], a ; add 1 to party members
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [wcf91]
+ ld [hli], a ; add mon as last list entry
+ ld [hl], $ff ; write new sentinel
+ ld hl, wPartyMons
+ ld a, [wPartyCount]
+ dec a
+ ld bc, wPartyMon2 - wPartyMon1
+ call AddNTimes
+ ld e, l
+ ld d, h
+ ld hl, wLoadedMon
+ call CopyData ; write new mon's data (from wLoadedMon)
+ ld hl, wPartyMonOT
+ ld a, [wPartyCount]
+ dec a
+ call SkipFixedLengthTextEntries
+ ld d, h
+ ld e, l
+ ld hl, wEnemyMonOT
+ ld a, [wWhichPokemon]
+ call SkipFixedLengthTextEntries
+ ld bc, NAME_LENGTH
+ call CopyData ; write new mon's OT name (from an enemy mon)
+ ld hl, wPartyMonNicks
+ ld a, [wPartyCount]
+ dec a
+ call SkipFixedLengthTextEntries
+ ld d, h
+ ld e, l
+ ld hl, wEnemyMonNicks
+ ld a, [wWhichPokemon]
+ call SkipFixedLengthTextEntries
+ ld bc, NAME_LENGTH
+ call CopyData ; write new mon's nickname (from an enemy mon)
+ ld a, [wcf91]
+ ld [wd11e], a
+ predef IndexToPokedex
+ ld a, [wd11e]
+ dec a
+ ld c, a
+ ld b, FLAG_SET
+ ld hl, wPokedexOwned
+ push bc
+ call FlagAction ; add to owned pokemon
+ pop bc
+ ld hl, wPokedexSeen
+ call FlagAction ; add to seen pokemon
+ and a
+ ret ; return success
+
+_MoveMon:
+ ld a, [wMoveMonType]
+ and a ; BOX_TO_PARTY
+ jr z, .checkPartyMonSlots
+ cp DAYCARE_TO_PARTY
+ jr z, .checkPartyMonSlots
+ cp PARTY_TO_DAYCARE
+ ld hl, wDayCareMon
+ jr z, .findMonDataSrc
+ ; else it's PARTY_TO_BOX
+ ld hl, wNumInBox
+ ld a, [hl]
+ cp MONS_PER_BOX
+ jr nz, .partyOrBoxNotFull
+ jr .boxFull
+.checkPartyMonSlots
+ ld hl, wPartyCount
+ ld a, [hl]
+ cp PARTY_LENGTH
+ jr nz, .partyOrBoxNotFull
+.boxFull
+ scf
+ ret
+.partyOrBoxNotFull
+ inc a
+ ld [hl], a ; increment number of mons in party/box
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld a, [wMoveMonType]
+ cp DAYCARE_TO_PARTY
+ ld a, [wDayCareMon]
+ jr z, .copySpecies
+ ld a, [wcf91]
+.copySpecies
+ ld [hli], a ; write new mon ID
+ ld [hl], $ff ; write new sentinel
+.findMonDataDest
+ ld a, [wMoveMonType]
+ dec a
+ ld hl, wPartyMons
+ ld bc, wPartyMon2 - wPartyMon1 ; $2c
+ ld a, [wPartyCount]
+ jr nz, .addMonOffset
+ ; if it's PARTY_TO_BOX
+ ld hl, wBoxMons
+ ld bc, wBoxMon2 - wBoxMon1 ; $21
+ ld a, [wNumInBox]
+.addMonOffset
+ dec a
+ call AddNTimes
+.findMonDataSrc
+ push hl
+ ld e, l
+ ld d, h
+ ld a, [wMoveMonType]
+ and a
+ ld hl, wBoxMons
+ ld bc, wBoxMon2 - wBoxMon1 ; $21
+ jr z, .addMonOffset2
+ cp DAYCARE_TO_PARTY
+ ld hl, wDayCareMon
+ jr z, .copyMonData
+ ld hl, wPartyMons
+ ld bc, wPartyMon2 - wPartyMon1 ; $2c
+.addMonOffset2
+ ld a, [wWhichPokemon]
+ call AddNTimes
+.copyMonData
+ push hl
+ push de
+ ld bc, wBoxMon2 - wBoxMon1
+ call CopyData
+ pop de
+ pop hl
+ ld a, [wMoveMonType]
+ and a ; BOX_TO_PARTY
+ jr z, .findOTdest
+ cp DAYCARE_TO_PARTY
+ jr z, .findOTdest
+ ld bc, wBoxMon2 - wBoxMon1
+ add hl, bc
+ ld a, [hl] ; hl = Level
+ inc de
+ inc de
+ inc de
+ ld [de], a ; de = BoxLevel
+.findOTdest
+ ld a, [wMoveMonType]
+ cp PARTY_TO_DAYCARE
+ ld de, wDayCareMonOT
+ jr z, .findOTsrc
+ dec a
+ ld hl, wPartyMonOT
+ ld a, [wPartyCount]
+ jr nz, .addOToffset
+ ld hl, wBoxMonOT
+ ld a, [wNumInBox]
+.addOToffset
+ dec a
+ call SkipFixedLengthTextEntries
+ ld d, h
+ ld e, l
+.findOTsrc
+ ld hl, wBoxMonOT
+ ld a, [wMoveMonType]
+ and a
+ jr z, .addOToffset2
+ ld hl, wDayCareMonOT
+ cp DAYCARE_TO_PARTY
+ jr z, .copyOT
+ ld hl, wPartyMonOT
+.addOToffset2
+ ld a, [wWhichPokemon]
+ call SkipFixedLengthTextEntries
+.copyOT
+ ld bc, NAME_LENGTH
+ call CopyData
+ ld a, [wMoveMonType]
+.findNickDest
+ cp PARTY_TO_DAYCARE
+ ld de, wDayCareMonName
+ jr z, .findNickSrc
+ dec a
+ ld hl, wPartyMonNicks
+ ld a, [wPartyCount]
+ jr nz, .addNickOffset
+ ld hl, wBoxMonNicks
+ ld a, [wNumInBox]
+.addNickOffset
+ dec a
+ call SkipFixedLengthTextEntries
+ ld d, h
+ ld e, l
+.findNickSrc
+ ld hl, wBoxMonNicks
+ ld a, [wMoveMonType]
+ and a
+ jr z, .addNickOffset2
+ ld hl, wDayCareMonName
+ cp DAYCARE_TO_PARTY
+ jr z, .copyNick
+ ld hl, wPartyMonNicks
+.addNickOffset2
+ ld a, [wWhichPokemon]
+ call SkipFixedLengthTextEntries
+.copyNick
+ ld bc, NAME_LENGTH
+ call CopyData
+ pop hl
+ ld a, [wMoveMonType]
+ cp PARTY_TO_BOX
+ jr z, .done
+ cp PARTY_TO_DAYCARE
+ jr z, .done
+ push hl
+ srl a
+ add $2
+ ld [wMonDataLocation], a
+ call LoadMonData
+ callba CalcLevelFromExperience
+ ld a, d
+ ld [wCurEnemyLVL], a
+ pop hl
+ ld bc, wBoxMon2 - wBoxMon1
+ add hl, bc
+ ld [hli], a
+ ld d, h
+ ld e, l
+ ld bc, -18
+ add hl, bc
+ ld b, $1
+ call CalcStats
+.done
+ and a
+ ret
diff --git a/engine/add_party_mon.asm b/engine/add_party_mon.asm
deleted file mode 100644
index 1aa6bd16..00000000
--- a/engine/add_party_mon.asm
+++ /dev/null
@@ -1,345 +0,0 @@
-_AddPartyMon:
-; Adds a new mon to the player's or enemy's party.
-; [wMonDataLocation] is used in an unusual way in this function.
-; If the lower nybble is 0, the mon is added to the player's party, else the enemy's.
-; If the entire value is 0, then the player is allowed to name the mon.
- ld de, wPartyCount
- ld a, [wMonDataLocation]
- and $f
- jr z, .next
- ld de, wEnemyPartyCount
-.next
- ld a, [de]
- inc a
- cp PARTY_LENGTH + 1
- ret nc ; return if the party is already full
- ld [de], a
- ld a, [de]
- ld [hNewPartyLength], a
- add e
- ld e, a
- jr nc, .noCarry
- inc d
-.noCarry
- ld a, [wcf91]
- ld [de], a ; write species of new mon in party list
- inc de
- ld a, $ff ; terminator
- ld [de], a
- ld hl, wPartyMonOT
- ld a, [wMonDataLocation]
- and $f
- jr z, .next2
- ld hl, wEnemyMonOT
-.next2
- ld a, [hNewPartyLength]
- dec a
- call SkipFixedLengthTextEntries
- ld d, h
- ld e, l
- ld hl, wPlayerName
- ld bc, NAME_LENGTH
- call CopyData
- ld a, [wMonDataLocation]
- and a
- jr nz, .skipNaming
- ld hl, wPartyMonNicks
- ld a, [hNewPartyLength]
- dec a
- call SkipFixedLengthTextEntries
- ld a, NAME_MON_SCREEN
- ld [wNamingScreenType], a
- predef AskName
-.skipNaming
- ld hl, wPartyMons
- ld a, [wMonDataLocation]
- and $f
- jr z, .next3
- ld hl, wEnemyMons
-.next3
- ld a, [hNewPartyLength]
- dec a
- ld bc, wPartyMon2 - wPartyMon1
- call AddNTimes
- ld e, l
- ld d, h
- push hl
- ld a, [wcf91]
- ld [wd0b5], a
- call GetMonHeader
- ld hl, wMonHeader
- ld a, [hli]
- ld [de], a ; species
- inc de
- pop hl
- push hl
- ld a, [wMonDataLocation]
- and $f
- ld a, $98 ; set enemy trainer mon IVs to fixed average values
- ld b, $88
- jr nz, .next4
-
-; If the mon is being added to the player's party, update the pokedex.
- ld a, [wcf91]
- ld [wd11e], a
- push de
- predef IndexToPokedex
- pop de
- ld a, [wd11e]
- dec a
- ld c, a
- ld b, FLAG_TEST
- ld hl, wPokedexOwned
- call FlagAction
- ld a, c ; whether the mon was already flagged as owned
- ld [wUnusedD153], a ; not read
- ld a, [wd11e]
- dec a
- ld c, a
- ld b, FLAG_SET
- push bc
- call FlagAction
- pop bc
- ld hl, wPokedexSeen
- call FlagAction
-
- pop hl
- push hl
-
- ld a, [wIsInBattle]
- and a ; is this a wild mon caught in battle?
- jr nz, .copyEnemyMonData
-
-; Not wild.
- call Random ; generate random IVs
- ld b, a
- call Random
-
-.next4
- push bc
- ld bc, wPartyMon1DVs - wPartyMon1
- add hl, bc
- pop bc
- ld [hli], a
- ld [hl], b ; write IVs
- ld bc, (wPartyMon1HPExp - 1) - (wPartyMon1DVs + 1)
- add hl, bc
- ld a, 1
- ld c, a
- xor a
- ld b, a
- call CalcStat ; calc HP stat (set cur Hp to max HP)
- ld a, [H_MULTIPLICAND+1]
- ld [de], a
- inc de
- ld a, [H_MULTIPLICAND+2]
- ld [de], a
- inc de
- xor a
- ld [de], a ; box level
- inc de
- ld [de], a ; status ailments
- inc de
- jr .copyMonTypesAndMoves
-.copyEnemyMonData
- ld bc, wEnemyMon1DVs - wEnemyMon1
- add hl, bc
- ld a, [wEnemyMonDVs] ; copy IVs from cur enemy mon
- ld [hli], a
- ld a, [wEnemyMonDVs + 1]
- ld [hl], a
- ld a, [wEnemyMonHP] ; copy HP from cur enemy mon
- ld [de], a
- inc de
- ld a, [wEnemyMonHP+1]
- ld [de], a
- inc de
- xor a
- ld [de], a ; box level
- inc de
- ld a, [wEnemyMonStatus] ; copy status ailments from cur enemy mon
- ld [de], a
- inc de
-.copyMonTypesAndMoves
- ld hl, wMonHTypes
- ld a, [hli] ; type 1
- ld [de], a
- inc de
- ld a, [hli] ; type 2
- ld [de], a
- inc de
- ld a, [hli] ; catch rate (held item in gen 2)
- ld [de], a
- ld a, [wcf91]
- cp KADABRA
- jr nz, .skipGivingTwistedSpoon
- ld a, $60 ; twistedspoon in gen 2
- ld [de], a
-.skipGivingTwistedSpoon
- ld hl, wMonHMoves
- ld a, [hli]
- inc de
- push de
- ld [de], a
- ld a, [hli]
- inc de
- ld [de], a
- ld a, [hli]
- inc de
- ld [de], a
- ld a, [hli]
- inc de
- ld [de], a
- push de
- dec de
- dec de
- dec de
- xor a
- ld [wLearningMovesFromDayCare], a
- predef WriteMonMoves
- pop de
- ld a, [wPlayerID] ; set trainer ID to player ID
- inc de
- ld [de], a
- ld a, [wPlayerID + 1]
- inc de
- ld [de], a
- push de
- ld a, [wCurEnemyLVL]
- ld d, a
- callab CalcExperience
- pop de
- inc de
- ld a, [hExperience] ; write experience
- ld [de], a
- inc de
- ld a, [hExperience + 1]
- ld [de], a
- inc de
- ld a, [hExperience + 2]
- ld [de], a
- xor a
- ld b, NUM_STATS * 2
-.writeEVsLoop ; set all EVs to 0
- inc de
- ld [de], a
- dec b
- jr nz, .writeEVsLoop
- inc de
- inc de
- pop hl
- call AddPartyMon_WriteMovePP
- inc de
- ld a, [wCurEnemyLVL]
- ld [de], a
- inc de
- ld a, [wIsInBattle]
- dec a
- jr nz, .calcFreshStats
- ld hl, wEnemyMonMaxHP
- ld bc, $a
- call CopyData ; copy stats of cur enemy mon
- pop hl
- jr .done
-.calcFreshStats
- pop hl
- ld bc, wPartyMon1HPExp - 1 - wPartyMon1
- add hl, bc
- ld b, $0
- call CalcStats ; calculate fresh set of stats
-.done
- scf
- ret
-
-LoadMovePPs:
- call GetPredefRegisters
- ; fallthrough
-AddPartyMon_WriteMovePP:
- ld b, NUM_MOVES
-.pploop
- ld a, [hli] ; read move ID
- and a
- jr z, .empty
- dec a
- push hl
- push de
- push bc
- ld hl, Moves
- ld bc, MoveEnd - Moves
- call AddNTimes
- ld de, wcd6d
- ld a, BANK(Moves)
- call FarCopyData
- pop bc
- pop de
- pop hl
- ld a, [wcd6d + 5] ; PP is byte 5 of move data
-.empty
- inc de
- ld [de], a
- dec b
- jr nz, .pploop ; there are still moves to read
- ret
-
-; adds enemy mon [wcf91] (at position [wWhichPokemon] in enemy list) to own party
-; used in the cable club trade center
-_AddEnemyMonToPlayerParty:
- ld hl, wPartyCount
- ld a, [hl]
- cp PARTY_LENGTH
- scf
- ret z ; party full, return failure
- inc a
- ld [hl], a ; add 1 to party members
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [wcf91]
- ld [hli], a ; add mon as last list entry
- ld [hl], $ff ; write new sentinel
- ld hl, wPartyMons
- ld a, [wPartyCount]
- dec a
- ld bc, wPartyMon2 - wPartyMon1
- call AddNTimes
- ld e, l
- ld d, h
- ld hl, wLoadedMon
- call CopyData ; write new mon's data (from wLoadedMon)
- ld hl, wPartyMonOT
- ld a, [wPartyCount]
- dec a
- call SkipFixedLengthTextEntries
- ld d, h
- ld e, l
- ld hl, wEnemyMonOT
- ld a, [wWhichPokemon]
- call SkipFixedLengthTextEntries
- ld bc, NAME_LENGTH
- call CopyData ; write new mon's OT name (from an enemy mon)
- ld hl, wPartyMonNicks
- ld a, [wPartyCount]
- dec a
- call SkipFixedLengthTextEntries
- ld d, h
- ld e, l
- ld hl, wEnemyMonNicks
- ld a, [wWhichPokemon]
- call SkipFixedLengthTextEntries
- ld bc, NAME_LENGTH
- call CopyData ; write new mon's nickname (from an enemy mon)
- ld a, [wcf91]
- ld [wd11e], a
- predef IndexToPokedex
- ld a, [wd11e]
- dec a
- ld c, a
- ld b, FLAG_SET
- ld hl, wPokedexOwned
- push bc
- call FlagAction ; add to owned pokemon
- pop bc
- ld hl, wPokedexSeen
- call FlagAction ; add to seen pokemon
- and a
- ret ; return success
diff --git a/engine/bank3c.asm b/engine/bank3c.asm
index 10f7ffdd..9c0e281f 100644
--- a/engine/bank3c.asm
+++ b/engine/bank3c.asm
@@ -1,54 +1,7 @@
INCLUDE "engine/pikachu_pcm.asm"
INCLUDE "engine/overworld/advance_player_sprite.asm"
-ResetStatusAndHalveMoneyOnBlackout:
-; Reset player status on blackout.
- xor a
- ld [wd435], a
- xor a ; gamefreak copypasting functions (double xor a)
- ld [wBattleResult], a
- ld [wWalkBikeSurfState], a
- ld [wIsInBattle], a
- ld [wMapPalOffset], a
- ld [wNPCMovementScriptFunctionNum], a
- ld [hJoyHeld], a
- ld [wNPCMovementScriptPointerTableNum], a
- ld [wFlags_0xcd60], a
-
- ld [hMoney], a
- ld [hMoney + 1], a
- ld [hMoney + 2], a
- call HasEnoughMoney
- jr c, .lostmoney ; never happens
-
- ; Halve the player's money.
- ld a, [wPlayerMoney]
- ld [hMoney], a
- ld a, [wPlayerMoney + 1]
- ld [hMoney + 1], a
- ld a, [wPlayerMoney + 2]
- ld [hMoney + 2], a
- xor a
- ld [hDivideBCDDivisor], a
- ld [hDivideBCDDivisor + 1], a
- ld a, 2
- ld [hDivideBCDDivisor + 2], a
- predef DivideBCDPredef3
- ld a, [hDivideBCDQuotient]
- ld [wPlayerMoney], a
- ld a, [hDivideBCDQuotient + 1]
- ld [wPlayerMoney + 1], a
- ld a, [hDivideBCDQuotient + 2]
- ld [wPlayerMoney + 2], a
-
-.lostmoney
- ld hl, wd732
- set 2, [hl]
- res 3, [hl]
- set 6, [hl]
- ld a, %11111111
- ld [wJoyIgnore], a
- predef_jump HealParty
+INCLUDE "engine/black_out.asm"
SetMapSpecificScriptFlagsOnMapReload:
ld a, [wCurMap]
@@ -85,17 +38,17 @@ SetMapSpecificScriptFlagsOnMapReload:
db SILPH_CO_9F
db SILPH_CO_10F
db SILPH_CO_11F
- db MANSION_2
- db MANSION_3
- db MANSION_4
- db MANSION_1
+ db POKEMON_MANSION_2F
+ db POKEMON_MANSION_3F
+ db POKEMON_MANSION_B1F
+ db POKEMON_MANSION_1F
db CINNABAR_GYM
db GAME_CORNER
- db ROCKET_HIDEOUT_1
- db ROCKET_HIDEOUT_4
- db VICTORY_ROAD_3
- db VICTORY_ROAD_1
- db VICTORY_ROAD_2
+ db ROCKET_HIDEOUT_B1F
+ db ROCKET_HIDEOUT_B4F
+ db VICTORY_ROAD_3F
+ db VICTORY_ROAD_1F
+ db VICTORY_ROAD_2F
db LANCES_ROOM
db LORELEIS_ROOM
db BRUNOS_ROOM
@@ -200,37 +153,37 @@ NurseChanseyText:
db "@"
INCLUDE "engine/HoF_room_pc.asm"
-INCLUDE "scripts/viridiancity2.asm"
-INCLUDE "scripts/vermilioncity2.asm"
-INCLUDE "scripts/celadoncity2.asm"
-INCLUDE "scripts/route1_2.asm"
-INCLUDE "scripts/route22_2.asm"
-INCLUDE "scripts/redshouse1f2.asm"
-INCLUDE "scripts/oakslab2.asm"
-INCLUDE "scripts/school2.asm"
-INCLUDE "scripts/museum1f2.asm"
-INCLUDE "scripts/pewterpokecenter2.asm"
-INCLUDE "scripts/pokemontower2_2.asm"
-INCLUDE "scripts/celadonmart3_2.asm"
-INCLUDE "scripts/celadonmansion1_2.asm"
-INCLUDE "scripts/celadonmansion3_2.asm"
-INCLUDE "scripts/celadongamecorner2.asm"
-INCLUDE "scripts/celadondiner2.asm"
-INCLUDE "scripts/safarizoneentrance2.asm"
-INCLUDE "scripts/cinnabargym3.asm"
-INCLUDE "scripts/mtmoonpokecenter2.asm"
-
-INCLUDE "data/mapHeaders/beach_house.asm"
-INCLUDE "scripts/beach_house.asm"
-BeachHouseBlockdata:
-INCBIN "maps/beach_house.blk"
-INCLUDE "data/mapObjects/beach_house.asm"
-
-INCLUDE "scripts/beach_house2.asm"
-INCLUDE "scripts/billshouse2.asm"
-INCLUDE "scripts/viridianforest2.asm"
-INCLUDE "scripts/ssanne9_2.asm"
-INCLUDE "scripts/silphco11_2.asm"
+INCLUDE "scripts/ViridianCity2.asm"
+INCLUDE "scripts/VermilionCity2.asm"
+INCLUDE "scripts/CeladonCity2.asm"
+INCLUDE "scripts/Route1_2.asm"
+INCLUDE "scripts/Route22_2.asm"
+INCLUDE "scripts/RedsHouse1F2.asm"
+INCLUDE "scripts/OaksLab2.asm"
+INCLUDE "scripts/ViridianSchoolHouse2.asm"
+INCLUDE "scripts/Museum1F2.asm"
+INCLUDE "scripts/PewterPokecenter2.asm"
+INCLUDE "scripts/PokemonTower2F_2.asm"
+INCLUDE "scripts/CeladonMart3F_2.asm"
+INCLUDE "scripts/CeladonMansion1F_2.asm"
+INCLUDE "scripts/CeladonMansion3F_2.asm"
+INCLUDE "scripts/GameCorner2.asm"
+INCLUDE "scripts/CeladonDiner2.asm"
+INCLUDE "scripts/SafariZoneGate2.asm"
+INCLUDE "scripts/CinnabarGym3.asm"
+INCLUDE "scripts/MtMoonPokecenter2.asm"
+
+INCLUDE "data/mapHeaders/BeachHouse.asm"
+INCLUDE "scripts/BeachHouse.asm"
+BeachHouse_Blocks:
+INCBIN "maps/BeachHouse.blk"
+INCLUDE "data/mapObjects/BeachHouse.asm"
+
+INCLUDE "scripts/BeachHouse2.asm"
+INCLUDE "scripts/BillsHouse2.asm"
+INCLUDE "scripts/ViridianForest2.asm"
+INCLUDE "scripts/SSAnne2FRooms_2.asm"
+INCLUDE "scripts/SilphCo11F_2.asm"
INCLUDE "engine/overworld/hidden_objects.asm"
INCLUDE "engine/vermilion_gym_trash_cans.asm"
diff --git a/engine/bank3d.asm b/engine/bank3d.asm
index b37bdd00..0cfdea08 100644
--- a/engine/bank3d.asm
+++ b/engine/bank3d.asm
@@ -435,210 +435,9 @@ HandleMenuInputPokemonSelectionDouble:
ld [wLastMenuItem], a
ret
-PrintStrengthTxt:
- ld hl, wd728
- set 0, [hl]
- ld hl, Text_f5b17
- call PrintText
- ld hl, Text_f5b28
- jp PrintText
-
-Text_f5b17:
- TX_FAR _UsedStrengthText
- TX_ASM
- ld a, [wcf91]
- call PlayCry
- call Delay3
- jp TextScriptEnd
-
-Text_f5b28:
- TX_FAR _CanMoveBouldersText
- db "@"
-
-IsSurfingAllowed:
-; Returns whether surfing is allowed in bit 1 of wd728.
-; Surfing isn't allowed on the Cycling Road or in the lowest level of the
-; Seafoam Islands before the current has been slowed with boulders.
- ld hl, wd728
- set 1, [hl]
- ld a, [wd732]
- bit 5, a
- jr nz, .forcedToRideBike
- ld a, [wCurMap]
- cp SEAFOAM_ISLANDS_5
- ret nz
- CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
- ret z
- ld hl, CoordsData_f5b64
- call ArePlayerCoordsInArray
- ret nc
- ld hl, wd728
- res 1, [hl]
- ld hl, CurrentTooFastText
- jp PrintText
-.forcedToRideBike
- ld hl, wd728
- res 1, [hl]
- ld hl, CyclingIsFunText
- jp PrintText
-
-CoordsData_f5b64:
- db 11, 07
- db $ff
-
-CurrentTooFastText:
- TX_FAR _CurrentTooFastText
- db "@"
-
-CyclingIsFunText:
- TX_FAR _CyclingIsFunText
- db "@"
-
-AddItemToInventory_:
- ld a, [wItemQuantity] ; a = item quantity
- push af
- push bc
- push de
- push hl
- push hl
- ld d, PC_ITEM_CAPACITY ; how many items the PC can hold
- ld a, wNumBagItems & $FF
- cp l
- jr nz, .checkIfInventoryFull
- ld a, wNumBagItems >> 8
- cp h
- jr nz, .checkIfInventoryFull
-; if the destination is the bag
- ld d, BAG_ITEM_CAPACITY ; how many items the bag can hold
-.checkIfInventoryFull
- ld a, [hl]
- sub d
- ld d, a
- ld a, [hli]
- and a
- jr z, .addNewItem
-.notAtEndOfInventory
- ld a, [hli]
- ld b, a ; b = ID of current item in table
- ld a, [wcf91] ; a = ID of item being added
- cp b ; does the current item in the table match the item being added?
- jp z, .increaseItemQuantity ; if so, increase the item's quantity
- inc hl
-.loop
- ld a, [hl]
- cp a, $ff ; is it the end of the table?
- jr nz, .notAtEndOfInventory
-.addNewItem ; add an item not yet in the inventory
- pop hl
- ld a, d
- and a ; is there room for a new item slot?
- jr z, .done
-; if there is room
- inc [hl] ; increment the number of items in the inventory
- ld a, [hl] ; the number of items will be the index of the new item
- add a
- dec a
- ld c, a
- ld b, 0
- add hl, bc ; hl = address to store the item
- ld a, [wcf91]
- ld [hli], a ; store item ID
- ld a, [wItemQuantity]
- ld [hli], a ; store item quantity
- ld [hl], $ff ; store terminator
- jp .success
-.increaseItemQuantity ; increase the quantity of an item already in the inventory
- ld a, [wItemQuantity]
- ld b, a ; b = quantity to add
- ld a, [hl] ; a = existing item quantity
- add b ; a = new item quantity
- cp a, 100
- jp c, .storeNewQuantity ; if the new quantity is less than 100, store it
-; if the new quantity is greater than or equal to 100,
-; try to max out the current slot and add the rest in a new slot
- sub a, 99
- ld [wItemQuantity], a ; a = amount left over (to put in the new slot)
- ld a, d
- and a ; is there room for a new item slot?
- jr z, .increaseItemQuantityFailed
-; if so, store 99 in the current slot and store the rest in a new slot
- ld a, 99
- ld [hli], a
- jp .loop
-.increaseItemQuantityFailed
- pop hl
- and a
- jr .done
-.storeNewQuantity
- ld [hl], a
- pop hl
-.success
- scf
-.done
- pop hl
- pop de
- pop bc
- pop bc
- ld a, b
- ld [wItemQuantity], a ; restore the initial value from when the function was called
- ret
+INCLUDE "engine/overworld/field_move_messages.asm"
-; function to remove an item (in varying quantities) from the player's bag or PC box
-; INPUT:
-; hl = address of inventory (either wNumBagItems or wNumBoxItems)
-; [wWhichPokemon] = index (within the inventory) of the item to remove
-; [wItemQuantity] = quantity to remove
-RemoveItemFromInventory_:
- push hl
- inc hl
- ld a, [wWhichPokemon] ; index (within the inventory) of the item being removed
- add a
- add l
- ld l, a
- jr nc, .noCarry
- inc h
-.noCarry
- inc hl
- ld a, [wItemQuantity] ; quantity being removed
- ld e, a
- ld a, [hl] ; a = current quantity
- sub e
- ld [hld], a ; store new quantity
- ld [wMaxItemQuantity], a
- and a
- jr nz, .skipMovingUpSlots
-; if the remaining quantity is 0,
-; remove the emptied item slot and move up all the following item slots
-.moveSlotsUp
- ld e, l
- ld d, h
- inc de
- inc de ; de = address of the slot following the emptied one
-.loop ; loop to move up the following slots
- ld a, [de]
- inc de
- ld [hli], a
- cp a, $ff
- jr nz, .loop
-; update menu info
- xor a
- ld [wListScrollOffset], a
- ld [wCurrentMenuItem], a
- ld [wBagSavedMenuItem], a
- ld [wSavedListScrollOffset], a
- pop hl
- ld a, [hl] ; a = number of items in inventory
- dec a ; decrement the number of items
- ld [hl], a ; store new number of items
- ld [wListCount], a
- cp a, 2
- jr c, .done
- ld [wMaxMenuItem], a
- jr .done
-.skipMovingUpSlots
- pop hl
-.done
- ret
+INCLUDE "engine/items/inventory.asm"
TrainerInfoTextBoxTileGraphics: INCBIN "gfx/trainer_info.2bpp"
TrainerInfoTextBoxTileGraphicsEnd:
diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm
index 629aa8cd..de1e67b9 100755
--- a/engine/battle/animations.asm
+++ b/engine/battle/animations.asm
@@ -115,7 +115,7 @@ DrawFrameBlock:
.flipHorizontalTranslateDown
ld a, [wBaseCoordY]
add [hl]
- add a, 40 ; translate Y coordinate downwards
+ add 40 ; translate Y coordinate downwards
ld [de], a ; store Y
inc hl
inc de
@@ -134,7 +134,7 @@ DrawFrameBlock:
inc hl
inc de
ld a, [hli]
- add a, $31 ; base tile ID for battle animations
+ add $31 ; base tile ID for battle animations
ld [de], a ; store tile ID
inc de
ld a, [hli]
@@ -159,18 +159,18 @@ DrawFrameBlock:
jp nz, .loop ; go back up if there are more tiles to draw
.afterDrawingTiles
ld a, [wFBMode]
- cp a, 2
+ cp 2
jr z, .advanceFrameBlockDestAddr; skip delay and don't clean OAM buffer
ld a, [wSubAnimFrameDelay]
ld c, a
call DelayFrames
ld a, [wFBMode]
- cp a, 3
+ cp 3
jr z, .advanceFrameBlockDestAddr ; skip cleaning OAM buffer
- cp a, 4
+ cp 4
jr z, .done ; skip cleaning OAM buffer and don't advance the frame block destination address
ld a, [wAnimationID]
- cp a, GROWL
+ cp GROWL
jr z, .resetFrameBlockDestAddr
call AnimationCleanOAM
.resetFrameBlockDestAddr
@@ -204,9 +204,9 @@ PlayAnimation:
ld l, a
.animationLoop
ld a, [hli]
- cp a, $FF
+ cp $FF
jr z, .AnimationOver
- cp a, $C0 ; is this subanimation or a special effect?
+ cp $C0 ; is this subanimation or a special effect?
jr c, .playSubanimation
.doSpecialEffect
ld c, a
@@ -221,7 +221,7 @@ PlayAnimation:
jr .searchSpecialEffectTableLoop
.foundMatch
ld a, [hli]
- cp a, $FF ; is there a sound to play?
+ cp $FF ; is there a sound to play?
jr z, .skipPlayingSound
ld [wAnimSoundID], a ; store sound
push hl
@@ -243,7 +243,7 @@ PlayAnimation:
jp hl ; jump to special effect function
.playSubanimation
ld c, a
- and a, %00111111
+ and %00111111
ld [wSubAnimFrameDelay], a
xor a
sla c
@@ -296,11 +296,11 @@ LoadSubanimation:
ld d, a ; de = address of subanimation
ld a, [de]
ld b, a
- and a, 31
+ and 31
ld [wSubAnimCounter], a ; number of frame blocks
ld a, b
- and a, %11100000
- cp a, 5 << 5 ; is subanimation type 5?
+ and %11100000
+ cp 5 << 5 ; is subanimation type 5?
jr nz, .isNotType5
.isType5
call GetSubanimationTransform2
@@ -312,7 +312,7 @@ LoadSubanimation:
srl a
swap a
ld [wSubAnimTransform], a
- cp a, 4 ; is the animation reversed?
+ cp 4 ; is the animation reversed?
ld hl, 0
jr nz, .storeSubentryAddr
; if the animation is reversed, then place the initial subentry address at the end of the list of subentries
@@ -410,7 +410,7 @@ MoveAnimation:
jr z, .animationFinished
; if throwing a Poké Ball, skip the regular animation code
- cp a, TOSS_ANIM
+ cp TOSS_ANIM
jr nz, .moveAnimation
ld de, .animationFinished
push de
@@ -453,11 +453,11 @@ ShareMoveAnimations:
ld a, [wAnimationID]
- cp a, AMNESIA
+ cp AMNESIA
ld b, CONF_ANIM
jr z, .replaceAnim
- cp a, REST
+ cp REST
ld b, SLP_ANIM
ret nz
@@ -596,7 +596,7 @@ WriteLowerByteOfBGMapAndEnableBGTransfer:
PlaySubanimation:
ld a, [wAnimSoundID]
- cp a, $FF
+ cp $FF
jr z, .skipPlayingSound
call GetMoveSound
call PlaySound
@@ -648,7 +648,7 @@ PlaySubanimation:
ld a, [wSubAnimSubEntryAddr]
ld l, a
ld a, [wSubAnimTransform]
- cp a, 4 ; is the animation reversed?
+ cp 4 ; is the animation reversed?
ld bc, 3
jr nz, .nextSubanimationSubentry
ld bc, -3
@@ -775,34 +775,34 @@ AnimationIdSpecialEffects:
DoBallTossSpecialEffects:
ld a, [wcf91]
- cp a, 3 ; is it a Master Ball or Ultra Ball?
+ cp 3 ; is it a Master Ball or Ultra Ball?
jr nc, .skipFlashingEffect
.flashingEffect ; do a flashing effect if it's Master Ball or Ultra Ball
ld a, [rOBP0]
- xor a, %00111100 ; complement colors 1 and 2
+ xor %00111100 ; complement colors 1 and 2
ld [rOBP0], a
call UpdateGBCPal_OBP0
.skipFlashingEffect
ld a, [wSubAnimCounter]
- cp a, 11 ; is it the beginning of the subanimation?
+ cp 11 ; is it the beginning of the subanimation?
jr nz, .skipPlayingSound
; if it is the beginning of the subanimation, play a sound
ld a, SFX_BALL_TOSS
call PlaySound
.skipPlayingSound
ld a, [wIsInBattle]
- cp a, 02 ; is it a trainer battle?
+ cp 02 ; is it a trainer battle?
jr z, .isTrainerBattle
ld a, [wd11e]
- cp a, $10 ; is the enemy pokemon the Ghost Marowak?
+ cp $10 ; is the enemy pokemon the Ghost Marowak?
ret nz
; if the enemy pokemon is the Ghost Marowak, make it dodge during the last 3 frames
ld a, [wSubAnimCounter]
- cp a, 3
+ cp 3
jr z, .moveGhostMarowakLeft
- cp a, 2
+ cp 2
jr z, .moveGhostMarowakLeft
- cp a, 1
+ cp 1
ret nz
.moveGhostMarowakLeft
coord hl, 17, 0
@@ -822,7 +822,7 @@ DoBallTossSpecialEffects:
ret
.isTrainerBattle ; if it's a trainer battle, shorten the animation by one frame
ld a, [wSubAnimCounter]
- cp a, 3
+ cp 3
ret nz
dec a
ld [wSubAnimCounter], a
@@ -830,7 +830,7 @@ DoBallTossSpecialEffects:
DoBallShakeSpecialEffects:
ld a, [wSubAnimCounter]
- cp a, 4 ; is it the beginning of a shake?
+ cp 4 ; is it the beginning of a shake?
jr nz, .skipPlayingSound
; if it is the beginning of a shake, play a sound and wait 2/3 of a second
ld a, SFX_TINK
@@ -864,21 +864,21 @@ DoBallShakeSpecialEffects:
; plays a sound after the second frame of the poof animation
DoPoofSpecialEffects:
ld a, [wSubAnimCounter]
- cp a, 5
+ cp 5
ret nz
ld a, SFX_BALL_POOF
jp PlaySound
DoRockSlideSpecialEffects:
ld a, [wSubAnimCounter]
- cp a, 12
+ cp 12
ret nc
- cp a, 8
+ cp 8
jr nc, .shakeScreen
- cp a, 1
+ cp 1
jp z, AnimationFlashScreen ; if it's the end of the subanimation, flash the screen
ret
-; if the subaninmation counter is between 8 and 11, shake the screen horizontally and vertically
+; if the subanimation counter is between 8 and 11, shake the screen horizontally and vertically
.shakeScreen
ld b, 1
predef PredefShakeScreenHorizontally ; shake horizontally
@@ -887,21 +887,21 @@ DoRockSlideSpecialEffects:
FlashScreenEveryEightFrameBlocks:
ld a, [wSubAnimCounter]
- and a, 7 ; is the subanimation counter exactly 8?
+ and 7 ; is the subanimation counter exactly 8?
call z, AnimationFlashScreen ; if so, flash the screen
ret
; flashes the screen if the subanimation counter is divisible by 4
FlashScreenEveryFourFrameBlocks:
ld a, [wSubAnimCounter]
- and a, 3
+ and 3
call z, AnimationFlashScreen
ret
; used for Explosion and Selfdestruct
DoExplodeSpecialEffects:
ld a, [wSubAnimCounter]
- cp a, 1 ; is it the end of the subanimation?
+ cp 1 ; is it the end of the subanimation?
jr nz, FlashScreenEveryFourFrameBlocks
; if it's the end of the subanimation, make the attacking pokemon disappear
coord hl, 1, 5
@@ -910,13 +910,13 @@ DoExplodeSpecialEffects:
; flashes the screen when subanimation counter is 1 modulo 4
DoBlizzardSpecialEffects:
ld a, [wSubAnimCounter]
- cp a, 13
+ cp 13
jp z, AnimationFlashScreen
- cp a, 9
+ cp 9
jp z, AnimationFlashScreen
- cp a, 5
+ cp 5
jp z, AnimationFlashScreen
- cp a, 1
+ cp 1
jp z, AnimationFlashScreen
ret
@@ -924,18 +924,18 @@ DoBlizzardSpecialEffects:
; unused
FlashScreenUnused:
ld a, [wSubAnimCounter]
- cp a, 14
+ cp 14
jp z, AnimationFlashScreen
- cp a, 9
+ cp 9
jp z, AnimationFlashScreen
- cp a, 2
+ cp 2
jp z, AnimationFlashScreen
ret
; function to make the pokemon disappear at the beginning of the animation
TradeHidePokemon:
ld a, [wSubAnimCounter]
- cp a, 6
+ cp 6
ret nz
ld a, 2 * SCREEN_WIDTH + 7
jp ClearMonPicFromTileMap ; make pokemon disappear
@@ -943,7 +943,7 @@ TradeHidePokemon:
; function to make a shaking pokeball jump up at the end of the animation
TradeShakePokeball:
ld a, [wSubAnimCounter]
- cp a, 1
+ cp 1
ret nz
; if it's the end of the animation, make the ball jump up
ld de, BallMoveDistances1
@@ -952,13 +952,13 @@ TradeShakePokeball:
ld bc, 4
.innerLoop
ld a, [de]
- cp a, $ff
+ cp $ff
jr z, .done
add [hl] ; add to Y value of OAM entry
ld [hl], a
add hl, bc
ld a, l
- cp a, 4 * 4 ; there are 4 entries, each 4 bytes
+ cp 4 * 4 ; there are 4 entries, each 4 bytes
jr nz, .innerLoop
inc de
push bc
@@ -982,20 +982,20 @@ TradeJumpPokeball:
ld bc, 4
.innerLoop
ld a, [de]
- cp a, $ff
+ cp $ff
jp z, ClearScreen
add [hl]
ld [hl], a
add hl, bc
ld a, l
- cp a, 4 * 4 ; there are 4 entries, each 4 bytes
+ cp 4 * 4 ; there are 4 entries, each 4 bytes
jr nz, .innerLoop
inc de
push de
ld a, [de]
- cp a, 12
+ cp 12
jr z, .playSound
- cp a, $ff
+ cp $ff
jr nz, .skipPlayingSound
.playSound ; play sound if next move distance is 12 or this is the last one
ld a, SFX_BATTLE_18
@@ -1006,7 +1006,7 @@ TradeJumpPokeball:
call DelayFrames
pop bc
ld a, [hSCX] ; background scroll X
- sub a, 8 ; scroll to the left
+ sub 8 ; scroll to the left
ld [hSCX], a
pop de
jr .loop
@@ -1125,7 +1125,7 @@ AnimationDelay10:
CallWithTurnFlipped:
ld a, [H_WHOSETURN]
push af
- xor a, 1
+ xor 1
ld [H_WHOSETURN], a
ld de, .returnAddress
push de
@@ -1148,7 +1148,7 @@ AnimationFlashScreenLong:
push hl
.innerLoop
ld a, [hli]
- cp a, $01 ; is it the end of the palettes?
+ cp $01 ; is it the end of the palettes?
jr z, .endOfPalettes
ld [rBGP], a
call UpdateGBCPal_BGP
@@ -1198,13 +1198,13 @@ FlashScreenLongSGB:
; causes a delay of 1 frame for the second and third cycles
FlashScreenLongDelay:
ld a, [wFlashScreenLongCounter]
- cp a, 4 ; never true since [wFlashScreenLongCounter] starts at 3
+ cp 4 ; never true since [wFlashScreenLongCounter] starts at 3
ld c, 4
jr z, .delayFrames
- cp a, 3
+ cp 3
ld c, 2
jr z, .delayFrames
- cp a, 2 ; nothing is done with this
+ cp 2 ; nothing is done with this
ld c, 1
.delayFrames
jp DelayFrames
@@ -1599,7 +1599,7 @@ AnimationShowMonPic:
jp Delay3
AnimationShowEnemyMonPic:
-; Shows the emenmy mon's front sprite. Used in animations like Seismic Toss
+; Shows the enemy mon's front sprite. Used in animations like Seismic Toss
; to make the mon's sprite reappear after disappears offscreen.
ld hl, AnimationShowMonPic
jp CallWithTurnFlipped
@@ -2201,7 +2201,7 @@ HideSubstituteShowMonAnim:
push de
push bc
; if the substitute broke, slide it down, else slide it offscreen horizontally
- bit HasSubstituteUp, a
+ bit HAS_SUBSTITUTE_UP, a
jr nz, .substituteStillUp
call AnimationSlideMonDown
jr .next2
@@ -2211,7 +2211,7 @@ HideSubstituteShowMonAnim:
pop bc
pop de
ld a, [de]
- bit Invulnerable, a
+ bit INVULNERABLE, a
pop hl
jr nz, .invulnerable
ld a, [bc]
@@ -2524,9 +2524,9 @@ GetMoveSound:
IsCryMove:
; set carry if the move animation involves playing a monster cry
ld a, [wAnimationID]
- cp a, GROWL
+ cp GROWL
jr z, .CryMove
- cp a, ROAR
+ cp ROAR
jr z, .CryMove
and a ; clear carry
ret
@@ -2589,12 +2589,12 @@ MoveSoundTable:
db SFX_BATTLE_2A, $80, $c0 ; ACID
db SFX_BATTLE_19, $10, $a0 ; EMBER
db SFX_BATTLE_19, $21, $e0 ; FLAMETHROWER
- db SFX_EARTHQUAKE, $00, $80 ; MIST
+ db SFX_BATTLE_29, $00, $80 ; MIST
db SFX_BATTLE_24, $20, $60 ; WATER_GUN
db SFX_BATTLE_2A, $00, $80 ; HYDRO_PUMP
db SFX_BATTLE_2C, $00, $80 ; SURF
db SFX_BATTLE_28, $40, $80 ; ICE_BEAM
- db SFX_EARTHQUAKE, $f0, $e0 ; BLIZZARD
+ db SFX_BATTLE_29, $f0, $e0 ; BLIZZARD
db SFX_PSYBEAM, $00, $80 ; PSYBEAM
db SFX_BATTLE_2A, $f0, $60 ; BUBBLEBEAM
db SFX_BATTLE_28, $00, $80 ; AURORA_BEAM
@@ -2617,15 +2617,15 @@ MoveSoundTable:
db SFX_BATTLE_1C, $01, $c0 ; SLEEP_POWDER
db SFX_BATTLE_13, $14, $c0 ; PETAL_DANCE
db SFX_BATTLE_1B, $02, $a0 ; STRING_SHOT
- db SFX_EARTHQUAKE, $f0, $80 ; DRAGON_RAGE
- db SFX_EARTHQUAKE, $20, $c0 ; FIRE_SPIN
- db SFX_THUNDERBOLT, $00, $20 ; THUNDERSHOCK
- db SFX_THUNDERBOLT, $20, $80 ; THUNDERBOLT
+ db SFX_BATTLE_29, $f0, $80 ; DRAGON_RAGE
+ db SFX_BATTLE_29, $20, $c0 ; FIRE_SPIN
+ db SFX_BATTLE_2F, $00, $20 ; THUNDERSHOCK
+ db SFX_BATTLE_2F, $20, $80 ; THUNDERBOLT
db SFX_BATTLE_2E, $12, $60 ; THUNDER_WAVE
db SFX_BATTLE_26, $00, $80 ; THUNDER
db SFX_BATTLE_14, $01, $e0 ; ROCK_THROW
- db SFX_EARTHQUAKE, $0f, $e0 ; EARTHQUAKE
- db SFX_EARTHQUAKE, $11, $20 ; FISSURE
+ db SFX_BATTLE_29, $0f, $e0 ; EARTHQUAKE
+ db SFX_BATTLE_29, $11, $20 ; FISSURE
db SFX_DAMAGE, $10, $40 ; DIG
db SFX_BATTLE_0F, $10, $c0 ; TOXIC
db SFX_BATTLE_14, $00, $20 ; CONFUSION
@@ -2661,7 +2661,7 @@ MoveSoundTable:
db SFX_NOT_VERY_EFFECTIVE, $10, $ff ; SMOG
db SFX_BATTLE_2A, $20, $20 ; SLUDGE
db SFX_BATTLE_32, $00, $80 ; BONE_CLUB
- db SFX_EARTHQUAKE, $1f, $20 ; FIRE_BLAST
+ db SFX_BATTLE_29, $1f, $20 ; FIRE_BLAST
db SFX_BATTLE_25, $2f, $80 ; WATERFALL
db SFX_BATTLE_0F, $1f, $ff ; CLAMP
db SFX_BATTLE_2B, $1f, $60 ; SWIFT
@@ -2696,7 +2696,7 @@ MoveSoundTable:
db SFX_BATTLE_1E, $12, $ff ; HYPER_FANG
db SFX_BATTLE_31, $80, $04 ; SHARPEN
db SFX_BATTLE_33, $f0, $10 ; CONVERSION
- db SFX_EARTHQUAKE, $f8, $ff ; TRI_ATTACK
+ db SFX_BATTLE_29, $f8, $ff ; TRI_ATTACK
db SFX_BATTLE_26, $f0, $ff ; SUPER_FANG
db SFX_NOT_VERY_EFFECTIVE, $01, $ff ; SLASH
db SFX_BATTLE_2C, $d8, $04 ; SUBSTITUTE
@@ -2765,11 +2765,11 @@ TileIDListPointerTable:
dn 5, 7
dw DownscaledMonTiles_3x7
dn 3, 7
- dw DownscaledMonTiles_79ce9
+ dw GengarIntroTiles1
dn 7, 7
- dw DownscaledMonTiles_79d1a
+ dw GengarIntroTiles2
dn 7, 7
- dw DownscaledMonTiles_79d4b
+ dw GengarIntroTiles3
dn 7, 7
dw DownscaledMonTiles_79d7c
dn 8, 6
@@ -2809,7 +2809,7 @@ DownscaledMonTiles_3x7:
db $02, $09, $10, $17, $1E, $25, $2C
db $04, $0B, $12, $19, $20, $27, $2E
-DownscaledMonTiles_79ce9:
+GengarIntroTiles1:
db $00, $00, $00, $00, $00, $00, $00
db $00, $00, $00, $00, $00, $19, $00
db $02, $06, $0B, $10, $14, $1A, $00
@@ -2818,7 +2818,7 @@ DownscaledMonTiles_79ce9:
db $04, $09, $0E, $13, $17, $1D, $1F
db $05, $0A, $0F, $01, $18, $1E, $20
-DownscaledMonTiles_79d1a:
+GengarIntroTiles2:
db $00, $00, $00, $30, $00, $37, $00
db $00, $00, $2B, $31, $34, $38, $3D
db $21, $26, $2C, $01, $35, $39, $3E
@@ -2827,7 +2827,7 @@ DownscaledMonTiles_79d1a:
db $24, $29, $2F, $01, $01, $3B, $00
db $25, $2A, $01, $01, $01, $3C, $00
-DownscaledMonTiles_79d4b:
+GengarIntroTiles3:
db $00, $00, $00, $00, $00, $00, $00
db $00, $00, $47, $4D, $00, $00, $00
db $00, $00, $48, $4E, $52, $56, $5B
@@ -3158,30 +3158,30 @@ BattleAnimCopyTileMapToVRAM:
TossBallAnimation:
ld a, [wIsInBattle]
- cp a, 2
+ cp 2
jr z, .BlockBall ; if in trainer battle, play different animation
ld a, [wPokeBallAnimData]
ld b, a
; upper nybble: how many animations (from PokeBallAnimations) to play
; this will be 4 for successful capture, 6 for breakout
- and a, $F0
+ and $F0
swap a
ld c, a
; lower nybble: number of shakes
; store these for later
ld a, b
- and a, $F
+ and $F
ld [wNumShakes], a
ld hl, .PokeBallAnimations
; choose which toss animation to use
ld a, [wcf91]
- cp a, POKE_BALL
+ cp POKE_BALL
ld b, TOSS_ANIM
jr z, .done
- cp a, GREAT_BALL
+ cp GREAT_BALL
ld b, GREATTOSS_ANIM
jr z, .done
ld b, ULTRATOSS_ANIM
diff --git a/engine/battle/bank3d_battle.asm b/engine/battle/bank3d_battle.asm
index 740fc71a..0cf24fe1 100644
--- a/engine/battle/bank3d_battle.asm
+++ b/engine/battle/bank3d_battle.asm
@@ -30,7 +30,7 @@ asm_f601d:
res 1, [hl]
call InitBattleVariables
ld a, [wEnemyMonSpecies2]
- sub $c8
+ sub OPP_ID_OFFSET
jp c, InitWildBattle
ld [wTrainerClass], a
call GetTrainerInformation
diff --git a/engine/battle/battle_transitions.asm b/engine/battle/battle_transitions.asm
index ec95a5d9..e4392a01 100644
--- a/engine/battle/battle_transitions.asm
+++ b/engine/battle/battle_transitions.asm
@@ -82,7 +82,7 @@ BattleTransitions:
GetBattleTransitionID_WildOrTrainer:
ld a, [wCurOpponent]
- cp 200
+ cp OPP_ID_OFFSET
jr nc, .trainer
res 0, c
ret
@@ -118,8 +118,8 @@ GetBattleTransitionID_CompareLevels:
ld [wBattleTransitionSpiralDirection], a
ret
-; fails to recognize VICTORY_ROAD_2, VICTORY_ROAD_3, all ROCKET_HIDEOUT maps,
-; MANSION_1, SEAFOAM_ISLANDS_[2-5], POWER_PLANT, DIGLETTS_CAVE
+; fails to recognize VICTORY_ROAD_2F, VICTORY_ROAD_3F, all ROCKET_HIDEOUT maps,
+; POKEMON_MANSION_1F, SEAFOAM_ISLANDS_[B1F-B4F], POWER_PLANT, DIGLETTS_CAVE
; and SILPH_CO_[9-11]F as dungeon maps
GetBattleTransitionID_IsDungeonMap:
ld a, [wCurMap]
@@ -155,30 +155,30 @@ GetBattleTransitionID_IsDungeonMap:
; is equal to one of these maps
DungeonMaps1:
db VIRIDIAN_FOREST
- db ROCK_TUNNEL_1
- db SEAFOAM_ISLANDS_1
- db ROCK_TUNNEL_2
+ db ROCK_TUNNEL_1F
+ db SEAFOAM_ISLANDS_1F
+ db ROCK_TUNNEL_B1F
db $FF
; GetBattleTransitionID_IsDungeonMap checks if wCurMap
; is in between or equal to each pair of maps
DungeonMaps2:
; all MT_MOON maps
- db MT_MOON_1
- db MT_MOON_3
+ db MT_MOON_1F
+ db MT_MOON_B2F
- ; all SS_ANNE maps, VICTORY_ROAD_1, LANCES_ROOM, and HALL_OF_FAME
- db SS_ANNE_1
+ ; all SS_ANNE maps, VICTORY_ROAD_1F, LANCES_ROOM, and HALL_OF_FAME
+ db SS_ANNE_1F
db HALL_OF_FAME
- ; all POKEMONTOWER maps and Lavender Town buildings
+ ; all POKEMON_TOWER maps and Lavender Town buildings
db LAVENDER_POKECENTER
- db LAVENDER_HOUSE_2
+ db LAVENDER_CUBONE_HOUSE
- ; SILPH_CO_[2-8]F, MANSION[2-4], SAFARI_ZONE, and UNKNOWN_DUNGEON maps,
- ; except for SILPH_CO_1F
+ ; SILPH_CO_[2-8]F, POKEMON_MANSION[2F-B1F], SAFARI_ZONE, and
+ ; CERULEAN_CAVE maps, except for SILPH_CO_1F
db SILPH_CO_2F
- db UNKNOWN_DUNGEON_1
+ db CERULEAN_CAVE_1F
db $FF
LoadBattleTransitionTile:
diff --git a/engine/battle/common_text.asm b/engine/battle/common_text.asm
index d84d0300..e8f4f002 100644
--- a/engine/battle/common_text.asm
+++ b/engine/battle/common_text.asm
@@ -3,9 +3,9 @@ PrintBeginningBattleText:
dec a
jr nz, .trainerBattle
ld a, [wCurMap]
- cp POKEMONTOWER_3
+ cp POKEMON_TOWER_3F
jr c, .notPokemonTower
- cp LAVENDER_HOUSE_1
+ cp MR_FUJIS_HOUSE
jr c, .pokemonTower
.notPokemonTower
ld a,[wBattleType]
diff --git a/engine/battle/core.asm b/engine/battle/core.asm
index f23dd649..60146902 100755
--- a/engine/battle/core.asm
+++ b/engine/battle/core.asm
@@ -390,15 +390,15 @@ MainInBattleLoop:
xor a
ld [wFirstMonsNotOutYet], a
ld a, [wPlayerBattleStatus2]
- and (1 << NeedsToRecharge) | (1 << UsingRage) ; check if the player is using Rage or needs to recharge
+ and (1 << NEEDS_TO_RECHARGE) | (1 << USING_RAGE) ; check if the player is using Rage or needs to recharge
jr nz, .selectEnemyMove
; the player is not using Rage and doesn't need to recharge
ld hl, wEnemyBattleStatus1
- res Flinched, [hl] ; reset flinch bit
+ res FLINCHED, [hl] ; reset flinch bit
ld hl, wPlayerBattleStatus1
- res Flinched, [hl] ; reset flinch bit
+ res FLINCHED, [hl] ; reset flinch bit
ld a, [hl]
- and (1 << ThrashingAbout) | (1 << ChargingUp) ; check if the player is thrashing about or charging for an attack
+ and (1 << THRASHING_ABOUT) | (1 << CHARGING_UP) ; check if the player is thrashing about or charging for an attack
jr nz, .selectEnemyMove ; if so, jump
; the player is neither thrashing about nor charging for an attack
call DisplayBattleMenu ; show battle menu
@@ -410,12 +410,12 @@ MainInBattleLoop:
and (1 << FRZ) | SLP ; is mon frozen or asleep?
jr nz, .selectEnemyMove ; if so, jump
ld a, [wPlayerBattleStatus1]
- and (1 << StoringEnergy) | (1 << UsingTrappingMove) ; check player is using Bide or using a multi-turn attack like wrap
+ and (1 << STORING_ENERGY) | (1 << USING_TRAPPING_MOVE) ; check player is using Bide or using a multi-turn attack like wrap
jr nz, .selectEnemyMove ; if so, jump
ld a, [wEnemyBattleStatus1]
- bit UsingTrappingMove, a ; check if enemy is using a multi-turn attack like wrap
+ bit USING_TRAPPING_MOVE, a ; check if enemy is using a multi-turn attack like wrap
jr z, .selectPlayerMove ; if not, jump
-; enemy is using a mult-turn attack like wrap, so player is trapped and cannot execute a move
+; enemy is using a multi-turn attack like wrap, so player is trapped and cannot execute a move
ld a, $ff
ld [wPlayerSelectedMove], a
jr .selectEnemyMove
@@ -441,17 +441,17 @@ MainInBattleLoop:
jr nz, .noLinkBattle
; link battle
ld a, [wSerialExchangeNybbleReceiveData]
- cp $f
+ cp LINKBATTLE_RUN
jp z, EnemyRan
- cp $e
+ cp LINKBATTLE_STRUGGLE
jr z, .noLinkBattle
- cp $d
+ cp LINKBATTLE_NO_ACTION
jr z, .noLinkBattle
- sub $4
+ sub 4
jr c, .noLinkBattle
; the link battle enemy has switched mons
ld a, [wPlayerBattleStatus1]
- bit UsingTrappingMove, a ; check if using multi-turn move like Wrap
+ bit USING_TRAPPING_MOVE, a ; check if using multi-turn move like Wrap
jr z, .specialMoveNotUsed
ld a, [wPlayerMoveListIndex]
ld hl, wBattleMonMoves
@@ -497,8 +497,8 @@ MainInBattleLoop:
jr nc, .playerMovesFirst ; if player is faster
jr .enemyMovesFirst ; if enemy is faster
.speedEqual ; 50/50 chance for both players
- ld a, [$ffaa]
- cp $2
+ ld a, [hSerialConnectionStatus]
+ cp USING_INTERNAL_CLOCK
jr z, .invertOutcome
call BattleRandom
cp $80
@@ -588,7 +588,7 @@ HandlePoisonBurnLeechSeed:
call PrintText
xor a
ld [wAnimationType], a
- ld a,BURN_PSN_ANIM
+ ld a, BURN_PSN_ANIM
call PlayMoveAnimation ; play burn/poison animation
pop hl
call HandlePoisonBurnLeechSeed_DecreaseOwnHP
@@ -609,7 +609,7 @@ HandlePoisonBurnLeechSeed:
ld [H_WHOSETURN], a
xor a
ld [wAnimationType], a
- ld a,ABSORB
+ ld a, ABSORB
call PlayMoveAnimation ; play leech seed animation (from opposing mon)
pop af
ld [H_WHOSETURN], a
@@ -676,7 +676,7 @@ HandlePoisonBurnLeechSeed_DecreaseOwnHP:
ld hl, wEnemyBattleStatus3
ld de, wEnemyToxicCounter
.playersTurn
- bit BadlyPoisoned, [hl]
+ bit BADLY_POISONED, [hl]
jr z, .noToxic
ld a, [de] ; increment toxic counter
inc a
@@ -713,7 +713,7 @@ HandlePoisonBurnLeechSeed_DecreaseOwnHP:
ret
; adds bc to enemy HP
-; bc isn't updated if HP substracted was capped to prevent overkill
+; bc isn't updated if HP subtracted was capped to prevent overkill
HandlePoisonBurnLeechSeed_IncreaseEnemyHP:
push hl
ld hl, wEnemyMonMaxHP
@@ -785,14 +785,14 @@ CheckNumAttacksLeft:
jr nz, .checkEnemy
; player has 0 attacks left
ld hl, wPlayerBattleStatus1
- res UsingTrappingMove, [hl] ; player not using multi-turn attack like wrap any more
+ res USING_TRAPPING_MOVE, [hl] ; player not using multi-turn attack like wrap any more
.checkEnemy
ld a, [wEnemyNumAttacksLeft]
and a
ret nz
; enemy has 0 attacks left
ld hl, wEnemyBattleStatus1
- res UsingTrappingMove, [hl] ; enemy not using multi-turn attack like wrap any more
+ res USING_TRAPPING_MOVE, [hl] ; enemy not using multi-turn attack like wrap any more
ret
HandleEnemyMonFainted:
@@ -842,7 +842,7 @@ FaintEnemyPokemon:
ld [hl], a
.wild
ld hl, wPlayerBattleStatus1
- res AttackingMultipleTimes, [hl]
+ res ATTACKING_MULTIPLE_TIMES, [hl]
; Bug. This only zeroes the high byte of the player's accumulated damage,
; setting the accumulated damage to itself mod 256 instead of 0 as was probably
; intended. That alone is problematic, but this mistake has another more severe
@@ -881,7 +881,7 @@ FaintEnemyPokemon:
ld a, SFX_FAINT_FALL
call PlaySoundWaitForCurrent
.sfxwait
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
cp SFX_FAINT_FALL
jr z, .sfxwait
ld a, SFX_FAINT_THUD
@@ -965,7 +965,7 @@ EndLowHealthAlarm:
; the low health alarm and prevents it from reactivating until the next battle.
xor a
ld [wLowHealthAlarm], a ; turn off low health alarm
- ld [wChannelSoundIDs + CH4], a
+ ld [wChannelSoundIDs + Ch5], a
inc a
ld [wLowHealthAlarmDisabled], a ; prevent it from reactivating
ret
@@ -1004,7 +1004,7 @@ ReplaceFaintedEnemyMon:
; link battle
call LinkBattleExchangeData
ld a, [wSerialExchangeNybbleReceiveData]
- cp $f
+ cp LINKBATTLE_RUN
ret z
call LoadScreenTilesFromBuffer1
.notLinkBattle
@@ -1257,7 +1257,7 @@ ChooseNextMon:
ret
; called when player is out of usable mons.
-; prints approriate lose message, sets carry flag if player blacked out (special case for initial rival fight)
+; prints appropriate lose message, sets carry flag if player blacked out (special case for initial rival fight)
HandlePlayerBlackOut:
ld a, [wLinkState]
cp LINK_STATE_BATTLING
@@ -1402,138 +1402,138 @@ SlideTrainerPicOffScreen:
; send out a trainer's mon
EnemySendOut:
- ld hl,wPartyGainExpFlags
+ ld hl, wPartyGainExpFlags
xor a
- ld [hl],a
- ld a,[wPlayerMonNumber]
- ld c,a
- ld b,FLAG_SET
+ ld [hl], a
+ ld a, [wPlayerMonNumber]
+ ld c, a
+ ld b, FLAG_SET
push bc
predef FlagActionPredef
- ld hl,wPartyFoughtCurrentEnemyFlags
+ ld hl, wPartyFoughtCurrentEnemyFlags
xor a
- ld [hl],a
+ ld [hl], a
pop bc
predef FlagActionPredef
; don't change wPartyGainExpFlags or wPartyFoughtCurrentEnemyFlags
EnemySendOutFirstMon:
xor a
- ld hl,wEnemyStatsToDouble ; clear enemy statuses
- ld [hli],a
- ld [hli],a
- ld [hli],a
- ld [hli],a
- ld [hl],a
- ld [wEnemyDisabledMove],a
- ld [wEnemyDisabledMoveNumber],a
- ld [wEnemyMonMinimized],a
- ld hl,wPlayerUsedMove
- ld [hli],a
- ld [hl],a
+ ld hl, wEnemyStatsToDouble ; clear enemy statuses
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld [wEnemyDisabledMove], a
+ ld [wEnemyDisabledMoveNumber], a
+ ld [wEnemyMonMinimized], a
+ ld hl, wPlayerUsedMove
+ ld [hli], a
+ ld [hl], a
dec a
- ld [wAICount],a
- ld hl,wPlayerBattleStatus1
- res 5,[hl]
+ ld [wAICount], a
+ ld hl, wPlayerBattleStatus1
+ res 5, [hl]
coord hl, 18, 0
- ld a,8
+ ld a, 8
call SlideTrainerPicOffScreen
call PrintEmptyString
call SaveScreenTilesToBuffer1
- ld a,[wLinkState]
+ ld a, [wLinkState]
cp LINK_STATE_BATTLING
- jr nz,.next
- ld a,[wSerialExchangeNybbleReceiveData]
+ jr nz, .next
+ ld a, [wSerialExchangeNybbleReceiveData]
sub 4
- ld [wWhichPokemon],a
+ ld [wWhichPokemon], a
jr .next3
.next
- ld b,$FF
+ ld b, $FF
.next2
inc b
- ld a,[wEnemyMonPartyPos]
+ ld a, [wEnemyMonPartyPos]
cp b
- jr z,.next2
- ld hl,wEnemyMon1
- ld a,b
- ld [wWhichPokemon],a
+ jr z, .next2
+ ld hl, wEnemyMon1
+ ld a, b
+ ld [wWhichPokemon], a
push bc
- ld bc,wEnemyMon2 - wEnemyMon1
+ ld bc, wEnemyMon2 - wEnemyMon1
call AddNTimes
pop bc
inc hl
- ld a,[hli]
- ld c,a
- ld a,[hl]
+ ld a, [hli]
+ ld c, a
+ ld a, [hl]
or c
- jr z,.next2
+ jr z, .next2
.next3
- ld a,[wWhichPokemon]
- ld hl,wEnemyMon1Level
- ld bc,wEnemyMon2 - wEnemyMon1
+ ld a, [wWhichPokemon]
+ ld hl, wEnemyMon1Level
+ ld bc, wEnemyMon2 - wEnemyMon1
call AddNTimes
- ld a,[hl]
- ld [wCurEnemyLVL],a
- ld a,[wWhichPokemon]
+ ld a, [hl]
+ ld [wCurEnemyLVL], a
+ ld a, [wWhichPokemon]
inc a
- ld hl,wEnemyPartyCount
- ld c,a
- ld b,0
- add hl,bc
- ld a,[hl]
- ld [wEnemyMonSpecies2],a
- ld [wcf91],a
+ ld hl, wEnemyPartyCount
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld a, [hl]
+ ld [wEnemyMonSpecies2], a
+ ld [wcf91], a
call LoadEnemyMonData
- ld hl,wEnemyMonHP
- ld a,[hli]
- ld [wLastSwitchInEnemyMonHP],a
- ld a,[hl]
- ld [wLastSwitchInEnemyMonHP + 1],a
- ld a,1
- ld [wCurrentMenuItem],a
- ld a,[wFirstMonsNotOutYet]
+ ld hl, wEnemyMonHP
+ ld a, [hli]
+ ld [wLastSwitchInEnemyMonHP], a
+ ld a, [hl]
+ ld [wLastSwitchInEnemyMonHP + 1], a
+ ld a, 1
+ ld [wCurrentMenuItem], a
+ ld a, [wFirstMonsNotOutYet]
dec a
- jr z,.next4
- ld a,[wPartyCount]
+ jr z, .next4
+ ld a, [wPartyCount]
dec a
- jr z,.next4
- ld a,[wLinkState]
+ jr z, .next4
+ ld a, [wLinkState]
cp LINK_STATE_BATTLING
- jr z,.next4
- ld a,[wOptions]
- bit 6,a
- jr nz,.next4
+ jr z, .next4
+ ld a, [wOptions]
+ bit 6, a
+ jr nz, .next4
ld hl, TrainerAboutToUseText
call PrintText
coord hl, 0, 7
lb bc, 8, 1
- ld a,TWO_OPTION_MENU
- ld [wTextBoxID],a
+ ld a, TWO_OPTION_MENU
+ ld [wTextBoxID], a
call DisplayTextBoxID
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
and a
- jr nz,.next4
- ld a,BATTLE_PARTY_MENU
- ld [wPartyMenuTypeOrMessageID],a
+ jr nz, .next4
+ ld a, BATTLE_PARTY_MENU
+ ld [wPartyMenuTypeOrMessageID], a
call DisplayPartyMenu
.next9
- ld a,1
- ld [wCurrentMenuItem],a
- jr c,.next7
- ld hl,wPlayerMonNumber
- ld a,[wWhichPokemon]
+ ld a, 1
+ ld [wCurrentMenuItem], a
+ jr c, .next7
+ ld hl, wPlayerMonNumber
+ ld a, [wWhichPokemon]
cp [hl]
- jr nz,.next6
- ld hl,AlreadyOutText
+ jr nz, .next6
+ ld hl, AlreadyOutText
call PrintText
.next8
call GoBackToPartyMenu
jr .next9
.next6
call HasMonFainted
- jr z,.next8
+ jr z, .next8
xor a
- ld [wCurrentMenuItem],a
+ ld [wCurrentMenuItem], a
.next7
call GBPalWhiteOut
call LoadHudTilePatterns
@@ -1546,27 +1546,27 @@ EnemySendOutFirstMon:
ld b, SET_PAL_BATTLE
call RunPaletteCommand
call GBPalNormal
- ld hl,TrainerSentOutText
+ ld hl, TrainerSentOutText
call PrintText
- ld a,[wEnemyMonSpecies2]
- ld [wcf91],a
- ld [wd0b5],a
+ ld a, [wEnemyMonSpecies2]
+ ld [wcf91], a
+ ld [wd0b5], a
call GetMonHeader
- ld de,vFrontPic
+ ld de, vFrontPic
call LoadMonFrontSprite
- ld a,-$31
- ld [hStartTileID],a
+ ld a, -$31
+ ld [hStartTileID], a
coord hl, 15, 6
predef AnimateSendingOutMon
- ld a,[wEnemyMonSpecies2]
+ ld a, [wEnemyMonSpecies2]
call PlayCry
call DrawEnemyHUDAndHPBar
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
and a
ret nz
xor a
- ld [wPartyGainExpFlags],a
- ld [wPartyFoughtCurrentEnemyFlags],a
+ ld [wPartyGainExpFlags], a
+ ld [wPartyFoughtCurrentEnemyFlags], a
call SaveScreenTilesToBuffer1
jp SwitchPlayerMon
@@ -1720,12 +1720,12 @@ TryRunningFromBattle:
call SaveScreenTilesToBuffer1
xor a
ld [wActionResultOrTookBattleTurn], a
- ld a, $f
+ ld a, LINKBATTLE_RUN
ld [wPlayerMoveListIndex], a
call LinkBattleExchangeData
call LoadScreenTilesFromBuffer1
ld a, [wSerialExchangeNybbleReceiveData]
- cp $f
+ cp LINKBATTLE_RUN
ld a, $2
jr z, .playSound
dec a
@@ -1883,7 +1883,7 @@ SendOutMon:
ld b, SET_PAL_BATTLE
call RunPaletteCommand
ld hl, wEnemyBattleStatus1
- res UsingTrappingMove, [hl]
+ res USING_TRAPPING_MOVE, [hl]
callab IsThisPartymonStarterPikachu
jr c, .starterPikachu
ld a, $1
@@ -2029,7 +2029,7 @@ DrawPlayerHUDAndHPBar:
ld [hl], $0
ret z
xor a
- ld [wChannelSoundIDs + CH4], a
+ ld [wChannelSoundIDs + Ch5], a
ret
.setLowHealthAlarm
ld hl, wLowHealthAlarm
@@ -2215,7 +2215,7 @@ DisplayBattleMenu:
ld [hl], "▶"
ld c, 20
call DelayFrames
- ld [hl], $ec
+ ld [hl], "▷"
ld a, $2 ; select the "ITEM" menu
jp .upperLeftMenuItemWasNotSelected
.oldManName
@@ -2449,13 +2449,13 @@ UseBagItem:
jp z, BagWasSelected ; if not, go back to the bag menu
ld a, [wPlayerBattleStatus1]
- bit UsingTrappingMove, a ; is the player using a multi-turn move like wrap?
+ bit USING_TRAPPING_MOVE, a ; is the player using a multi-turn move like wrap?
jr z, .checkIfMonCaptured
ld hl, wPlayerNumAttacksLeft
dec [hl]
jr nz, .checkIfMonCaptured
ld hl, wPlayerBattleStatus1
- res UsingTrappingMove, [hl] ; not using multi-turn move any more
+ res USING_TRAPPING_MOVE, [hl] ; not using multi-turn move any more
.checkIfMonCaptured
ld a, [wCapturedMonSpecies]
@@ -2564,7 +2564,7 @@ PartyMenuOrRockOrRun:
ld a, 1
ld [H_WHOSETURN], a
ld a, [wEnemyBattleStatus2]
- bit HasSubstituteUp, a ; does the enemy mon have a substitute?
+ bit HAS_SUBSTITUTE_UP, a ; does the enemy mon have a substitute?
ld hl, AnimationSubstitute
jr nz, .doEnemyMonAnimation
; enemy mon doesn't have substitute
@@ -2786,7 +2786,7 @@ SelectMenuItem:
dec a
ld bc, SCREEN_WIDTH
call AddNTimes
- ld [hl], $ec
+ ld [hl], "▷"
.select
ld hl, hFlags_0xFFFA
set 1, [hl]
@@ -2994,7 +2994,7 @@ NoMovesLeftText:
SwapMovesInMenu:
ld a, [wPlayerBattleStatus3]
- bit Transformed, a
+ bit TRANSFORMED, a
jp nz, MoveSelectionMenu
ld a, [wMenuItemToSwap]
and a
@@ -3156,35 +3156,35 @@ SelectEnemyMove:
call LinkBattleExchangeData
call LoadScreenTilesFromBuffer1
ld a, [wSerialExchangeNybbleReceiveData]
- cp $e
+ cp LINKBATTLE_STRUGGLE
jp z, .linkedOpponentUsedStruggle
- cp $d
+ cp LINKBATTLE_NO_ACTION
jr z, .unableToSelectMove
- cp $4
+ cp 4
ret nc
ld [wEnemyMoveListIndex], a
ld c, a
ld hl, wEnemyMonMoves
- ld b, $0
+ ld b, 0
add hl, bc
ld a, [hl]
jr .done
.noLinkBattle
ld a, [wEnemyBattleStatus2]
- and (1 << NeedsToRecharge) | (1 << UsingRage) ; need to recharge or using rage
+ and (1 << NEEDS_TO_RECHARGE) | (1 << USING_RAGE) ; need to recharge or using rage
ret nz
ld hl, wEnemyBattleStatus1
ld a, [hl]
- and (1 << ChargingUp) | (1 << ThrashingAbout) ; using a charging move or thrash/petal dance
+ and (1 << CHARGING_UP) | (1 << THRASHING_ABOUT) ; using a charging move or thrash/petal dance
ret nz
ld a, [wEnemyMonStatus]
and SLP | 1 << FRZ ; sleeping or frozen
ret nz
ld a, [wEnemyBattleStatus1]
- and (1 << UsingTrappingMove) | (1 << StoringEnergy) ; using a trapping move like wrap or bide
+ and (1 << USING_TRAPPING_MOVE) | (1 << STORING_ENERGY) ; using a trapping move like wrap or bide
ret nz
ld a, [wPlayerBattleStatus1]
- bit UsingTrappingMove, a ; caught in player's trapping move (e.g. wrap)
+ bit USING_TRAPPING_MOVE, a ; caught in player's trapping move (e.g. wrap)
jr z, .canSelectMove
.unableToSelectMove
ld a, $ff
@@ -3244,7 +3244,7 @@ LinkBattleExchangeData:
ld a, $ff
ld [wSerialExchangeNybbleReceiveData], a
ld a, [wPlayerMoveListIndex]
- cp $f ; is the player running from battle?
+ cp LINKBATTLE_RUN ; is the player running from battle?
jr z, .doExchange
ld a, [wActionResultOrTookBattleTurn]
and a ; is the player switching in another mon?
@@ -3252,10 +3252,10 @@ LinkBattleExchangeData:
; the player used a move
ld a, [wPlayerSelectedMove]
cp STRUGGLE
- ld b, $e
+ ld b, LINKBATTLE_STRUGGLE
jr z, .next
- dec b
- inc a
+ dec b ; LINKBATTLE_NO_ACTION
+ inc a ; does move equal -1 (i.e. no action)?
jr z, .next
ld a, [wPlayerMoveListIndex]
jr .doExchange
@@ -3311,7 +3311,7 @@ ExecutePlayerMove:
.playerHasNoSpecialCondition
call GetCurrentMove
ld hl, wPlayerBattleStatus1
- bit ChargingUp, [hl] ; charging up for attack
+ bit CHARGING_UP, [hl] ; charging up for attack
jr nz, PlayerCanExecuteChargingMove
call CheckForDisobedience
jp z, ExecutePlayerMoveDone
@@ -3326,160 +3326,160 @@ CheckIfPlayerNeedsToChargeUp:
; in-battle stuff
PlayerCanExecuteChargingMove:
- ld hl,wPlayerBattleStatus1
- res ChargingUp,[hl] ; reset charging up and invulnerability statuses if mon was charging up for an attack
+ ld hl, wPlayerBattleStatus1
+ res CHARGING_UP, [hl] ; reset charging up and invulnerability statuses if mon was charging up for an attack
; being fully paralyzed or hurting oneself in confusion removes charging up status
; resulting in the Pokemon being invulnerable for the whole battle
- res Invulnerable,[hl]
+ res INVULNERABLE, [hl]
PlayerCanExecuteMove:
call PrintMonName1Text
- ld hl,DecrementPP
- ld de,wPlayerSelectedMove ; pointer to the move just used
- ld b,BANK(DecrementPP)
+ ld hl, DecrementPP
+ ld de, wPlayerSelectedMove ; pointer to the move just used
+ ld b, BANK(DecrementPP)
call Bankswitch
- ld a,[wPlayerMoveEffect] ; effect of the move just used
- ld hl,ResidualEffects1
- ld de,1
+ ld a, [wPlayerMoveEffect] ; effect of the move just used
+ ld hl, ResidualEffects1
+ ld de, 1
call IsInArray
- jp c,JumpMoveEffect ; ResidualEffects1 moves skip damage calculation and accuracy tests
+ jp c, JumpMoveEffect ; ResidualEffects1 moves skip damage calculation and accuracy tests
; unless executed as part of their exclusive effect functions
- ld a,[wPlayerMoveEffect]
- ld hl,SpecialEffectsCont
- ld de,1
+ ld a, [wPlayerMoveEffect]
+ ld hl, SpecialEffectsCont
+ ld de, 1
call IsInArray
- call c,JumpMoveEffect ; execute the effects of SpecialEffectsCont moves (e.g. Wrap, Thrash) but don't skip anything
+ call c, JumpMoveEffect ; execute the effects of SpecialEffectsCont moves (e.g. Wrap, Thrash) but don't skip anything
PlayerCalcMoveDamage:
- ld a,[wPlayerMoveEffect]
- ld hl,SetDamageEffects
- ld de,1
+ ld a, [wPlayerMoveEffect]
+ ld hl, SetDamageEffects
+ ld de, 1
call IsInArray
- jp c,.moveHitTest ; SetDamageEffects moves (e.g. Seismic Toss and Super Fang) skip damage calculation
+ jp c, .moveHitTest ; SetDamageEffects moves (e.g. Seismic Toss and Super Fang) skip damage calculation
call CriticalHitTest
call HandleCounterMove
- jr z,handleIfPlayerMoveMissed
+ jr z, handleIfPlayerMoveMissed
call GetDamageVarsForPlayerAttack
call CalculateDamage
- jp z,playerCheckIfFlyOrChargeEffect ; for moves with 0 BP, skip any further damage calculation and, for now, skip MoveHitTest
+ jp z, playerCheckIfFlyOrChargeEffect ; for moves with 0 BP, skip any further damage calculation and, for now, skip MoveHitTest
; for these moves, accuracy tests will only occur if they are called as part of the effect itself
call AdjustDamageForMoveType
call RandomizeDamage
.moveHitTest
call MoveHitTest
handleIfPlayerMoveMissed:
- ld a,[wMoveMissed]
+ ld a, [wMoveMissed]
and a
- jr z,getPlayerAnimationType
- ld a,[wPlayerMoveEffect]
- sub a,EXPLODE_EFFECT
- jr z,playPlayerMoveAnimation ; don't play any animation if the move missed, unless it was EXPLODE_EFFECT
+ jr z, getPlayerAnimationType
+ ld a, [wPlayerMoveEffect]
+ sub EXPLODE_EFFECT
+ jr z, playPlayerMoveAnimation ; don't play any animation if the move missed, unless it was EXPLODE_EFFECT
jr playerCheckIfFlyOrChargeEffect
getPlayerAnimationType:
- ld a,[wPlayerMoveEffect]
+ ld a, [wPlayerMoveEffect]
and a
- ld a,4 ; move has no effect other than dealing damage
- jr z,playPlayerMoveAnimation
- ld a,5 ; move has effect
+ ld a, 4 ; move has no effect other than dealing damage
+ jr z, playPlayerMoveAnimation
+ ld a, 5 ; move has effect
playPlayerMoveAnimation:
push af
- ld a,[wPlayerBattleStatus2]
- bit HasSubstituteUp,a
- ld hl,HideSubstituteShowMonAnim
- ld b,BANK(HideSubstituteShowMonAnim)
- call nz,Bankswitch
+ ld a, [wPlayerBattleStatus2]
+ bit HAS_SUBSTITUTE_UP, a
+ ld hl, HideSubstituteShowMonAnim
+ ld b, BANK(HideSubstituteShowMonAnim)
+ call nz, Bankswitch
pop af
- ld [wAnimationType],a
- ld a,[wPlayerMoveNum]
+ ld [wAnimationType], a
+ ld a, [wPlayerMoveNum]
call PlayMoveAnimation
call HandleExplodingAnimation
call DrawPlayerHUDAndHPBar
- ld a,[wPlayerBattleStatus2]
- bit HasSubstituteUp,a
- ld hl,ReshowSubstituteAnim
- ld b,BANK(ReshowSubstituteAnim)
- call nz,Bankswitch
+ ld a, [wPlayerBattleStatus2]
+ bit HAS_SUBSTITUTE_UP, a
+ ld hl, ReshowSubstituteAnim
+ ld b, BANK(ReshowSubstituteAnim)
+ call nz, Bankswitch
jr MirrorMoveCheck
playerCheckIfFlyOrChargeEffect:
- ld c,30
+ ld c, 30
call DelayFrames
- ld a,[wPlayerMoveEffect]
- cp a,FLY_EFFECT
- jr z,.playAnim
- cp a,CHARGE_EFFECT
- jr z,.playAnim
+ ld a, [wPlayerMoveEffect]
+ cp FLY_EFFECT
+ jr z, .playAnim
+ cp CHARGE_EFFECT
+ jr z, .playAnim
jr MirrorMoveCheck
.playAnim
xor a
- ld [wAnimationType],a
- ld a,STATUS_AFFECTED_ANIM
+ ld [wAnimationType], a
+ ld a, STATUS_AFFECTED_ANIM
call PlayMoveAnimation
MirrorMoveCheck:
- ld a,[wPlayerMoveEffect]
- cp a,MIRROR_MOVE_EFFECT
- jr nz,.metronomeCheck
+ ld a, [wPlayerMoveEffect]
+ cp MIRROR_MOVE_EFFECT
+ jr nz, .metronomeCheck
call MirrorMoveCopyMove
- jp z,ExecutePlayerMoveDone
+ jp z, ExecutePlayerMoveDone
xor a
- ld [wMonIsDisobedient],a
+ ld [wMonIsDisobedient], a
jp CheckIfPlayerNeedsToChargeUp ; if Mirror Move was successful go back to damage calculation for copied move
.metronomeCheck
- cp a,METRONOME_EFFECT
- jr nz,.next
+ cp METRONOME_EFFECT
+ jr nz, .next
call MetronomePickMove
jp CheckIfPlayerNeedsToChargeUp ; Go back to damage calculation for the move picked by Metronome
.next
- ld a,[wPlayerMoveEffect]
- ld hl,ResidualEffects2
- ld de,1
+ ld a, [wPlayerMoveEffect]
+ ld hl, ResidualEffects2
+ ld de, 1
call IsInArray
- jp c,JumpMoveEffect ; done here after executing effects of ResidualEffects2
- ld a,[wMoveMissed]
+ jp c, JumpMoveEffect ; done here after executing effects of ResidualEffects2
+ ld a, [wMoveMissed]
and a
- jr z,.moveDidNotMiss
+ jr z, .moveDidNotMiss
call PrintMoveFailureText
- ld a,[wPlayerMoveEffect]
- cp a,EXPLODE_EFFECT ; even if Explosion or Selfdestruct missed, its effect still needs to be activated
- jr z,.notDone
+ ld a, [wPlayerMoveEffect]
+ cp EXPLODE_EFFECT ; even if Explosion or Selfdestruct missed, its effect still needs to be activated
+ jr z, .notDone
jp ExecutePlayerMoveDone ; otherwise, we're done if the move missed
.moveDidNotMiss
call ApplyAttackToEnemyPokemon
call PrintCriticalOHKOText
callab DisplayEffectiveness
- ld a,1
- ld [wMoveDidntMiss],a
+ ld a, 1
+ ld [wMoveDidntMiss], a
.notDone
- ld a,[wPlayerMoveEffect]
- ld hl,AlwaysHappenSideEffects
- ld de,1
+ ld a, [wPlayerMoveEffect]
+ ld hl, AlwaysHappenSideEffects
+ ld de, 1
call IsInArray
- call c,JumpMoveEffect ; not done after executing effects of AlwaysHappenSideEffects
- ld hl,wEnemyMonHP
- ld a,[hli]
- ld b,[hl]
+ call c, JumpMoveEffect ; not done after executing effects of AlwaysHappenSideEffects
+ ld hl, wEnemyMonHP
+ ld a, [hli]
+ ld b, [hl]
or b
ret z ; don't do anything else if the enemy fainted
call HandleBuildingRage
- ld hl,wPlayerBattleStatus1
- bit AttackingMultipleTimes,[hl]
- jr z,.executeOtherEffects
- ld a,[wPlayerNumAttacksLeft]
+ ld hl, wPlayerBattleStatus1
+ bit ATTACKING_MULTIPLE_TIMES, [hl]
+ jr z, .executeOtherEffects
+ ld a, [wPlayerNumAttacksLeft]
dec a
- ld [wPlayerNumAttacksLeft],a
- jp nz,getPlayerAnimationType ; for multi-hit moves, apply attack until PlayerNumAttacksLeft hits 0 or the enemy faints.
+ ld [wPlayerNumAttacksLeft], a
+ jp nz, getPlayerAnimationType ; for multi-hit moves, apply attack until PlayerNumAttacksLeft hits 0 or the enemy faints.
; damage calculation and accuracy tests only happen for the first hit
- res AttackingMultipleTimes,[hl] ; clear attacking multiple times status when all attacks are over
- ld hl,MultiHitText
+ res ATTACKING_MULTIPLE_TIMES, [hl] ; clear attacking multiple times status when all attacks are over
+ ld hl, MultiHitText
call PrintText
xor a
- ld [wPlayerNumHits],a
+ ld [wPlayerNumHits], a
.executeOtherEffects
- ld a,[wPlayerMoveEffect]
+ ld a, [wPlayerMoveEffect]
and a
- jp z,ExecutePlayerMoveDone
- ld hl,SpecialEffects
- ld de,1
+ jp z, ExecutePlayerMoveDone
+ ld hl, SpecialEffects
+ ld de, 1
call IsInArray
- call nc,JumpMoveEffect ; move effects not included in SpecialEffects or in either of the ResidualEffect arrays,
+ call nc, JumpMoveEffect ; move effects not included in SpecialEffects or in either of the ResidualEffect arrays,
; which are the effects not covered yet. Rage effect will be executed for a second time (though it's irrelevant).
; Includes side effects that only need to be called if the target didn't faint.
; Responsible for executing Twineedle's second side effect (poison).
@@ -3491,26 +3491,26 @@ MultiHitText:
ExecutePlayerMoveDone:
xor a
- ld [wActionResultOrTookBattleTurn],a
- ld b,1
+ ld [wActionResultOrTookBattleTurn], a
+ ld b, 1
ret
PrintGhostText:
; print the ghost battle messages
call IsGhostBattle
ret nz
- ld a,[H_WHOSETURN]
+ ld a, [H_WHOSETURN]
and a
- jr nz,.Ghost
- ld a,[wBattleMonStatus] ; player’s turn
- and a,SLP | (1 << FRZ)
+ jr nz, .Ghost
+ ld a, [wBattleMonStatus] ; player’s turn
+ and SLP | (1 << FRZ)
ret nz
- ld hl,ScaredText
+ ld hl, ScaredText
call PrintText
xor a
ret
.Ghost ; ghost’s turn
- ld hl,GetOutText
+ ld hl, GetOutText
call PrintText
xor a
ret
@@ -3524,266 +3524,266 @@ GetOutText:
db "@"
IsGhostBattle:
- ld a,[wIsInBattle]
+ ld a, [wIsInBattle]
dec a
ret nz
- ld a,[wCurMap]
- cp a,POKEMONTOWER_1
- jr c,.next
- cp a,LAVENDER_HOUSE_1
- jr nc,.next
- ld b,SILPH_SCOPE
+ ld a, [wCurMap]
+ cp POKEMON_TOWER_1F
+ jr c, .next
+ cp MR_FUJIS_HOUSE
+ jr nc, .next
+ ld b, SILPH_SCOPE
call IsItemInBag
ret z
.next
- ld a,1
+ ld a, 1
and a
ret
; checks for various status conditions affecting the player mon
; stores whether the mon cannot use a move this turn in Z flag
CheckPlayerStatusConditions:
- ld hl,wBattleMonStatus
- ld a,[hl]
- and a,SLP ; sleep mask
- jr z,.FrozenCheck
+ ld hl, wBattleMonStatus
+ ld a, [hl]
+ and SLP ; sleep mask
+ jr z, .FrozenCheck
; sleeping
dec a
- ld [wBattleMonStatus],a ; decrement number of turns left
+ ld [wBattleMonStatus], a ; decrement number of turns left
and a
- jr z,.WakeUp ; if the number of turns hit 0, wake up
+ jr z, .WakeUp ; if the number of turns hit 0, wake up
; fast asleep
xor a
- ld [wAnimationType],a
- ld a,SLP_ANIM - 1
+ ld [wAnimationType], a
+ ld a, SLP_ANIM - 1
call PlayMoveAnimation
- ld hl,FastAsleepText
+ ld hl, FastAsleepText
call PrintText
jr .sleepDone
.WakeUp
- ld hl,WokeUpText
+ ld hl, WokeUpText
call PrintText
.sleepDone
xor a
- ld [wPlayerUsedMove],a
- ld hl,ExecutePlayerMoveDone ; player can't move this turn
+ ld [wPlayerUsedMove], a
+ ld hl, ExecutePlayerMoveDone ; player can't move this turn
jp .returnToHL
.FrozenCheck
- bit FRZ,[hl] ; frozen?
- jr z,.HeldInPlaceCheck
- ld hl,IsFrozenText
+ bit FRZ, [hl] ; frozen?
+ jr z, .HeldInPlaceCheck
+ ld hl, IsFrozenText
call PrintText
xor a
- ld [wPlayerUsedMove],a
- ld hl,ExecutePlayerMoveDone ; player can't move this turn
+ ld [wPlayerUsedMove], a
+ ld hl, ExecutePlayerMoveDone ; player can't move this turn
jp .returnToHL
.HeldInPlaceCheck
- ld a,[wEnemyBattleStatus1]
- bit UsingTrappingMove,a ; is enemy using a mult-turn move like wrap?
- jp z,.FlinchedCheck
- ld hl,CantMoveText
+ ld a, [wEnemyBattleStatus1]
+ bit USING_TRAPPING_MOVE, a ; is enemy using a mult-turn move like wrap?
+ jp z, .FlinchedCheck
+ ld hl, CantMoveText
call PrintText
- ld hl,ExecutePlayerMoveDone ; player can't move this turn
+ ld hl, ExecutePlayerMoveDone ; player can't move this turn
jp .returnToHL
.FlinchedCheck
- ld hl,wPlayerBattleStatus1
- bit Flinched,[hl]
- jp z,.HyperBeamCheck
- res Flinched,[hl] ; reset player's flinch status
- ld hl,FlinchedText
+ ld hl, wPlayerBattleStatus1
+ bit FLINCHED, [hl]
+ jp z, .HyperBeamCheck
+ res FLINCHED, [hl] ; reset player's flinch status
+ ld hl, FlinchedText
call PrintText
- ld hl,ExecutePlayerMoveDone ; player can't move this turn
+ ld hl, ExecutePlayerMoveDone ; player can't move this turn
jp .returnToHL
.HyperBeamCheck
- ld hl,wPlayerBattleStatus2
- bit NeedsToRecharge,[hl]
- jr z,.AnyMoveDisabledCheck
- res NeedsToRecharge,[hl] ; reset player's recharge status
- ld hl,MustRechargeText
+ ld hl, wPlayerBattleStatus2
+ bit NEEDS_TO_RECHARGE, [hl]
+ jr z, .AnyMoveDisabledCheck
+ res NEEDS_TO_RECHARGE, [hl] ; reset player's recharge status
+ ld hl, MustRechargeText
call PrintText
- ld hl,ExecutePlayerMoveDone ; player can't move this turn
+ ld hl, ExecutePlayerMoveDone ; player can't move this turn
jp .returnToHL
.AnyMoveDisabledCheck
- ld hl,wPlayerDisabledMove
- ld a,[hl]
+ ld hl, wPlayerDisabledMove
+ ld a, [hl]
and a
- jr z,.ConfusedCheck
+ jr z, .ConfusedCheck
dec a
- ld [hl],a
+ ld [hl], a
and $f ; did Disable counter hit 0?
- jr nz,.ConfusedCheck
- ld [hl],a
- ld [wPlayerDisabledMoveNumber],a
- ld hl,DisabledNoMoreText
+ jr nz, .ConfusedCheck
+ ld [hl], a
+ ld [wPlayerDisabledMoveNumber], a
+ ld hl, DisabledNoMoreText
call PrintText
.ConfusedCheck
- ld a,[wPlayerBattleStatus1]
+ ld a, [wPlayerBattleStatus1]
add a ; is player confused?
- jr nc,.TriedToUseDisabledMoveCheck
- ld hl,wPlayerConfusedCounter
+ jr nc, .TriedToUseDisabledMoveCheck
+ ld hl, wPlayerConfusedCounter
dec [hl]
- jr nz,.IsConfused
- ld hl,wPlayerBattleStatus1
- res Confused,[hl] ; if confused counter hit 0, reset confusion status
- ld hl,ConfusedNoMoreText
+ jr nz, .IsConfused
+ ld hl, wPlayerBattleStatus1
+ res CONFUSED, [hl] ; if confused counter hit 0, reset confusion status
+ ld hl, ConfusedNoMoreText
call PrintText
jr .TriedToUseDisabledMoveCheck
.IsConfused
- ld hl,IsConfusedText
+ ld hl, IsConfusedText
call PrintText
xor a
- ld [wAnimationType],a
- ld a,CONF_ANIM - 1
+ ld [wAnimationType], a
+ ld a, CONF_ANIM - 1
call PlayMoveAnimation
call BattleRandom
- cp a,$80 ; 50% chance to hurt itself
- jr c,.TriedToUseDisabledMoveCheck
- ld hl,wPlayerBattleStatus1
- ld a,[hl]
- and a, 1 << Confused ; if mon hurts itself, clear every other status from wPlayerBattleStatus1
- ld [hl],a
+ cp $80 ; 50% chance to hurt itself
+ jr c, .TriedToUseDisabledMoveCheck
+ ld hl, wPlayerBattleStatus1
+ ld a, [hl]
+ and 1 << CONFUSED ; if mon hurts itself, clear every other status from wPlayerBattleStatus1
+ ld [hl], a
call HandleSelfConfusionDamage
jr .MonHurtItselfOrFullyParalysed
.TriedToUseDisabledMoveCheck
; prevents a disabled move that was selected before being disabled from being used
- ld a,[wPlayerDisabledMoveNumber]
+ ld a, [wPlayerDisabledMoveNumber]
and a
- jr z,.ParalysisCheck
- ld hl,wPlayerSelectedMove
+ jr z, .ParalysisCheck
+ ld hl, wPlayerSelectedMove
cp [hl]
- jr nz,.ParalysisCheck
+ jr nz, .ParalysisCheck
call PrintMoveIsDisabledText
- ld hl,ExecutePlayerMoveDone ; if a disabled move was somehow selected, player can't move this turn
+ ld hl, ExecutePlayerMoveDone ; if a disabled move was somehow selected, player can't move this turn
jp .returnToHL
.ParalysisCheck
- ld hl,wBattleMonStatus
- bit PAR,[hl]
- jr z,.BideCheck
+ ld hl, wBattleMonStatus
+ bit PAR, [hl]
+ jr z, .BideCheck
call BattleRandom
- cp a,$3F ; 25% to be fully paralyzed
- jr nc,.BideCheck
- ld hl,FullyParalyzedText
+ cp $3F ; 25% to be fully paralyzed
+ jr nc, .BideCheck
+ ld hl, FullyParalyzedText
call PrintText
.MonHurtItselfOrFullyParalysed
- ld hl,wPlayerBattleStatus1
- ld a,[hl]
+ ld hl, wPlayerBattleStatus1
+ ld a, [hl]
; clear bide, thrashing, charging up, and trapping moves such as warp (already cleared for confusion damage)
- and $ff ^ ((1 << StoringEnergy) | (1 << ThrashingAbout) | (1 << ChargingUp) | (1 << UsingTrappingMove))
- ld [hl],a
- ld a,[wPlayerMoveEffect]
- cp a,FLY_EFFECT
- jr z,.FlyOrChargeEffect
- cp a,CHARGE_EFFECT
- jr z,.FlyOrChargeEffect
+ and $ff ^ ((1 << STORING_ENERGY) | (1 << THRASHING_ABOUT) | (1 << CHARGING_UP) | (1 << USING_TRAPPING_MOVE))
+ ld [hl], a
+ ld a, [wPlayerMoveEffect]
+ cp FLY_EFFECT
+ jr z, .FlyOrChargeEffect
+ cp CHARGE_EFFECT
+ jr z, .FlyOrChargeEffect
jr .NotFlyOrChargeEffect
.FlyOrChargeEffect
xor a
- ld [wAnimationType],a
- ld a,STATUS_AFFECTED_ANIM
+ ld [wAnimationType], a
+ ld a, STATUS_AFFECTED_ANIM
call PlayMoveAnimation
.NotFlyOrChargeEffect
- ld hl,ExecutePlayerMoveDone
+ ld hl, ExecutePlayerMoveDone
jp .returnToHL ; if using a two-turn move, we need to recharge the first turn
.BideCheck
- ld hl,wPlayerBattleStatus1
- bit StoringEnergy,[hl] ; is mon using bide?
- jr z,.ThrashingAboutCheck
- xor a
- ld [wPlayerMoveNum],a
- ld hl,wDamage
- ld a,[hli]
- ld b,a
- ld c,[hl]
- ld hl,wPlayerBideAccumulatedDamage + 1
- ld a,[hl]
- add c ; acumulate damage taken
- ld [hld],a
- ld a,[hl]
+ ld hl, wPlayerBattleStatus1
+ bit STORING_ENERGY, [hl] ; is mon using bide?
+ jr z, .ThrashingAboutCheck
+ xor a
+ ld [wPlayerMoveNum], a
+ ld hl, wDamage
+ ld a, [hli]
+ ld b, a
+ ld c, [hl]
+ ld hl, wPlayerBideAccumulatedDamage + 1
+ ld a, [hl]
+ add c ; accumulate damage taken
+ ld [hld], a
+ ld a, [hl]
adc b
- ld [hl],a
- ld hl,wPlayerNumAttacksLeft
+ ld [hl], a
+ ld hl, wPlayerNumAttacksLeft
dec [hl] ; did Bide counter hit 0?
- jr z,.UnleashEnergy
- ld hl,ExecutePlayerMoveDone
+ jr z, .UnleashEnergy
+ ld hl, ExecutePlayerMoveDone
jp .returnToHL ; unless mon unleashes energy, can't move this turn
.UnleashEnergy
- ld hl,wPlayerBattleStatus1
- res StoringEnergy,[hl] ; not using bide any more
- ld hl,UnleashedEnergyText
+ ld hl, wPlayerBattleStatus1
+ res STORING_ENERGY, [hl] ; not using bide any more
+ ld hl, UnleashedEnergyText
call PrintText
- ld a,1
- ld [wPlayerMovePower],a
- ld hl,wPlayerBideAccumulatedDamage + 1
- ld a,[hld]
+ ld a, 1
+ ld [wPlayerMovePower], a
+ ld hl, wPlayerBideAccumulatedDamage + 1
+ ld a, [hld]
add a
- ld b,a
- ld [wDamage + 1],a
- ld a,[hl]
+ ld b, a
+ ld [wDamage + 1], a
+ ld a, [hl]
rl a ; double the damage
- ld [wDamage],a
+ ld [wDamage], a
or b
- jr nz,.next
- ld a,1
- ld [wMoveMissed],a
+ jr nz, .next
+ ld a, 1
+ ld [wMoveMissed], a
.next
xor a
- ld [hli],a
- ld [hl],a
- ld a,BIDE
- ld [wPlayerMoveNum],a
- ld hl,handleIfPlayerMoveMissed ; skip damage calculation, DecrementPP and MoveHitTest
+ ld [hli], a
+ ld [hl], a
+ ld a, BIDE
+ ld [wPlayerMoveNum], a
+ ld hl, handleIfPlayerMoveMissed ; skip damage calculation, DecrementPP and MoveHitTest
jp .returnToHL
.ThrashingAboutCheck
- bit ThrashingAbout,[hl] ; is mon using thrash or petal dance?
- jr z,.MultiturnMoveCheck
- ld a,THRASH
- ld [wPlayerMoveNum],a
- ld hl,ThrashingAboutText
+ bit THRASHING_ABOUT, [hl] ; is mon using thrash or petal dance?
+ jr z, .MultiturnMoveCheck
+ ld a, THRASH
+ ld [wPlayerMoveNum], a
+ ld hl, ThrashingAboutText
call PrintText
- ld hl,wPlayerNumAttacksLeft
+ ld hl, wPlayerNumAttacksLeft
dec [hl] ; did Thrashing About counter hit 0?
- ld hl,PlayerCalcMoveDamage ; skip DecrementPP
- jp nz,.returnToHL
+ ld hl, PlayerCalcMoveDamage ; skip DecrementPP
+ jp nz, .returnToHL
push hl
- ld hl,wPlayerBattleStatus1
- res ThrashingAbout,[hl] ; no longer thrashing about
- set Confused,[hl] ; confused
+ ld hl, wPlayerBattleStatus1
+ res THRASHING_ABOUT, [hl] ; no longer thrashing about
+ set CONFUSED, [hl] ; confused
call BattleRandom
- and a,3
+ and 3
inc a
inc a ; confused for 2-5 turns
- ld [wPlayerConfusedCounter],a
+ ld [wPlayerConfusedCounter], a
pop hl ; skip DecrementPP
jp .returnToHL
.MultiturnMoveCheck
- bit UsingTrappingMove,[hl] ; is mon using multi-turn move?
- jp z,.RageCheck
- ld hl,AttackContinuesText
+ bit USING_TRAPPING_MOVE, [hl] ; is mon using multi-turn move?
+ jp z, .RageCheck
+ ld hl, AttackContinuesText
call PrintText
- ld a,[wPlayerNumAttacksLeft]
+ ld a, [wPlayerNumAttacksLeft]
dec a ; did multi-turn move end?
- ld [wPlayerNumAttacksLeft],a
- ld hl,getPlayerAnimationType ; if it didn't, skip damage calculation (deal damage equal to last hit),
+ ld [wPlayerNumAttacksLeft], a
+ ld hl, getPlayerAnimationType ; if it didn't, skip damage calculation (deal damage equal to last hit),
; DecrementPP and MoveHitTest
- jp nz,.returnToHL
+ jp nz, .returnToHL
jp .returnToHL
.RageCheck
ld a, [wPlayerBattleStatus2]
- bit UsingRage, a ; is mon using rage?
+ bit USING_RAGE, a ; is mon using rage?
jp z, .checkPlayerStatusConditionsDone ; if we made it this far, mon can move normally this turn
ld a, RAGE
ld [wd11e], a
@@ -3873,7 +3873,7 @@ PrintMoveIsDisabledText:
ld de, wEnemyBattleStatus1
.removeChargingUp
ld a, [de]
- res ChargingUp, a ; end the pokemon's
+ res CHARGING_UP, a ; end the pokemon's
ld [de], a
ld a, [hl]
ld [wd11e], a
@@ -4409,7 +4409,7 @@ GetDamageVarsForPlayerAttack:
ld b, a
ld c, [hl] ; bc = enemy defense
ld a, [wEnemyBattleStatus3]
- bit HasReflectUp, a ; check for Reflect
+ bit HAS_REFLECT_UP, a ; check for Reflect
jr z, .physicalAttackCritCheck
; if the enemy has used Reflect, double the enemy's defense
sla c
@@ -4439,13 +4439,13 @@ GetDamageVarsForPlayerAttack:
ld b, a
ld c, [hl] ; bc = enemy special
ld a, [wEnemyBattleStatus3]
- bit HasLightScreenUp, a ; check for Light Screen
+ bit HAS_LIGHT_SCREEN_UP, a ; check for Light Screen
jr z, .specialAttackCritCheck
; if the enemy has used Light Screen, double the enemy's special
sla c
rl b
; reflect and light screen boosts do not cap the stat at 999, so weird things will happen during stats scaling if
-; a Pokemon with 512 or more Defense has ued Reflect, or if a Pokemon with 512 or more Special has used Light Screen
+; a Pokemon with 512 or more Defense has used Reflect, or if a Pokemon with 512 or more Special has used Light Screen
.specialAttackCritCheck
ld hl, wBattleMonSpecial
ld a, [wCriticalHitOrOHKO]
@@ -4522,7 +4522,7 @@ GetDamageVarsForEnemyAttack:
ld b, a
ld c, [hl] ; bc = player defense
ld a, [wPlayerBattleStatus3]
- bit HasReflectUp, a ; check for Reflect
+ bit HAS_REFLECT_UP, a ; check for Reflect
jr z, .physicalAttackCritCheck
; if the player has used Reflect, double the player's defense
sla c
@@ -4552,13 +4552,13 @@ GetDamageVarsForEnemyAttack:
ld b, a
ld c, [hl]
ld a, [wPlayerBattleStatus3]
- bit HasLightScreenUp, a ; check for Light Screen
+ bit HAS_LIGHT_SCREEN_UP, a ; check for Light Screen
jr z, .specialAttackCritCheck
; if the player has used Light Screen, double the player's special
sla c
rl b
; reflect and light screen boosts do not cap the stat at 999, so weird things will happen during stats scaling if
-; a Pokemon with 512 or more Defense has ued Reflect, or if a Pokemon with 512 or more Special has used Light Screen
+; a Pokemon with 512 or more Defense has used Reflect, or if a Pokemon with 512 or more Special has used Light Screen
.specialAttackCritCheck
ld hl, wEnemyMonSpecial
ld a, [wCriticalHitOrOHKO]
@@ -4661,10 +4661,10 @@ GetEnemyMonStat:
CalculateDamage:
; input:
-; b: attack
-; c: opponent defense
-; d: base power
-; e: level
+; b: attack
+; c: opponent defense
+; d: base power
+; e: level
ld a, [H_WHOSETURN] ; whose turn?
and a
@@ -4674,7 +4674,7 @@ CalculateDamage:
.effect
; EXPLODE_EFFECT halves defense.
- cp a, EXPLODE_EFFECT
+ cp EXPLODE_EFFECT
jr nz, .ok
srl c
jr nz, .ok
@@ -4682,13 +4682,13 @@ CalculateDamage:
.ok
; Multi-hit attacks may or may not have 0 bp.
- cp a, TWO_TO_FIVE_ATTACKS_EFFECT
+ cp TWO_TO_FIVE_ATTACKS_EFFECT
jr z, .skipbp
- cp a, $1e
+ cp $1e
jr z, .skipbp
; Calculate OHKO damage based on remaining HP.
- cp a, OHKO_EFFECT
+ cp OHKO_EFFECT
jp z, JumpToOHKOMoveEffect
; Don't calculate damage for moves that don't do any.
@@ -4866,7 +4866,7 @@ CriticalHitTest:
dec hl
ld c, [hl] ; read move id
ld a, [de]
- bit GettingPumped, a ; test for focus energy
+ bit GETTING_PUMPED, a ; test for focus energy
jr nz, .focusEnergyUsed ; bug: using focus energy causes a shift to the right instead of left,
; resulting in 1/4 the usual crit chance
sla b ; (effective (base speed/2)*2)
@@ -4921,297 +4921,297 @@ HandleCounterMove:
; the outcome may be affected by the player's actions in the move selection menu prior to switching the Pokemon.
; This might also lead to desync glitches in link battles.
- ld a,[H_WHOSETURN] ; whose turn
+ ld a, [H_WHOSETURN] ; whose turn
and a
; player's turn
- ld hl,wEnemySelectedMove
- ld de,wEnemyMovePower
- ld a,[wPlayerSelectedMove]
- jr z,.next
+ ld hl, wEnemySelectedMove
+ ld de, wEnemyMovePower
+ ld a, [wPlayerSelectedMove]
+ jr z, .next
; enemy's turn
- ld hl,wPlayerSelectedMove
- ld de,wPlayerMovePower
- ld a,[wEnemySelectedMove]
+ ld hl, wPlayerSelectedMove
+ ld de, wPlayerMovePower
+ ld a, [wEnemySelectedMove]
.next
- cp a,COUNTER
+ cp COUNTER
ret nz ; return if not using Counter
- ld a,$01
- ld [wMoveMissed],a ; initialize the move missed variable to true (it is set to false below if the move hits)
- ld a,[hl]
- cp a,COUNTER
+ ld a, $01
+ ld [wMoveMissed], a ; initialize the move missed variable to true (it is set to false below if the move hits)
+ ld a, [hl]
+ cp COUNTER
ret z ; miss if the opponent's last selected move is Counter.
- ld a,[de]
+ ld a, [de]
and a
ret z ; miss if the opponent's last selected move's Base Power is 0.
; check if the move the target last selected was Normal or Fighting type
inc de
- ld a,[de]
+ ld a, [de]
and a ; normal type
- jr z,.counterableType
- cp a,FIGHTING
- jr z,.counterableType
+ jr z, .counterableType
+ cp FIGHTING
+ jr z, .counterableType
; if the move wasn't Normal or Fighting type, miss
xor a
ret
.counterableType
- ld hl,wDamage
- ld a,[hli]
+ ld hl, wDamage
+ ld a, [hli]
or [hl]
ret z ; If we made it here, Counter still misses if the last move used in battle did no damage to its target.
; wDamage is shared by both players, so Counter may strike back damage dealt by the Counter user itself
; if the conditions meet, even though 99% of the times damage will come from the target.
; if it did damage, double it
- ld a,[hl]
+ ld a, [hl]
add a
- ldd [hl],a
- ld a,[hl]
+ ldd [hl], a
+ ld a, [hl]
adc a
- ld [hl],a
- jr nc,.noCarry
+ ld [hl], a
+ jr nc, .noCarry
; damage is capped at 0xFFFF
- ld a,$ff
- ld [hli],a
- ld [hl],a
+ ld a, $ff
+ ld [hli], a
+ ld [hl], a
.noCarry
xor a
- ld [wMoveMissed],a
+ ld [wMoveMissed], a
call MoveHitTest ; do the normal move hit test in addition to Counter's special rules
xor a
ret
ApplyAttackToEnemyPokemon:
- ld a,[wPlayerMoveEffect]
- cp a,OHKO_EFFECT
- jr z,ApplyDamageToEnemyPokemon
- cp a,SUPER_FANG_EFFECT
- jr z,.superFangEffect
- cp a,SPECIAL_DAMAGE_EFFECT
- jr z,.specialDamage
- ld a,[wPlayerMovePower]
- and a
- jp z,ApplyAttackToEnemyPokemonDone ; no attack to apply if base power is 0
+ ld a, [wPlayerMoveEffect]
+ cp OHKO_EFFECT
+ jr z, ApplyDamageToEnemyPokemon
+ cp SUPER_FANG_EFFECT
+ jr z, .superFangEffect
+ cp SPECIAL_DAMAGE_EFFECT
+ jr z, .specialDamage
+ ld a, [wPlayerMovePower]
+ and a
+ jp z, ApplyAttackToEnemyPokemonDone ; no attack to apply if base power is 0
jr ApplyDamageToEnemyPokemon
.superFangEffect
; set the damage to half the target's HP
- ld hl,wEnemyMonHP
- ld de,wDamage
- ld a,[hli]
+ ld hl, wEnemyMonHP
+ ld de, wDamage
+ ld a, [hli]
srl a
- ld [de],a
+ ld [de], a
inc de
- ld b,a
- ld a,[hl]
+ ld b, a
+ ld a, [hl]
rr a
- ld [de],a
+ ld [de], a
or b
- jr nz,ApplyDamageToEnemyPokemon
+ jr nz, ApplyDamageToEnemyPokemon
; make sure Super Fang's damage is always at least 1
- ld a,$01
- ld [de],a
+ ld a, $01
+ ld [de], a
jr ApplyDamageToEnemyPokemon
.specialDamage
- ld hl,wBattleMonLevel
- ld a,[hl]
- ld b,a ; Seismic Toss deals damage equal to the user's level
- ld a,[wPlayerMoveNum]
- cp a,SEISMIC_TOSS
- jr z,.storeDamage
- cp a,NIGHT_SHADE
- jr z,.storeDamage
- ld b,SONICBOOM_DAMAGE ; 20
- cp a,SONICBOOM
- jr z,.storeDamage
- ld b,DRAGON_RAGE_DAMAGE ; 40
- cp a,DRAGON_RAGE
- jr z,.storeDamage
+ ld hl, wBattleMonLevel
+ ld a, [hl]
+ ld b, a ; Seismic Toss deals damage equal to the user's level
+ ld a, [wPlayerMoveNum]
+ cp SEISMIC_TOSS
+ jr z, .storeDamage
+ cp NIGHT_SHADE
+ jr z, .storeDamage
+ ld b, SONICBOOM_DAMAGE ; 20
+ cp SONICBOOM
+ jr z, .storeDamage
+ ld b, DRAGON_RAGE_DAMAGE ; 40
+ cp DRAGON_RAGE
+ jr z, .storeDamage
; Psywave
- ld a,[hl]
- ld b,a
+ ld a, [hl]
+ ld b, a
srl a
add b
- ld b,a ; b = level * 1.5
+ ld b, a ; b = level * 1.5
; loop until a random number in the range [1, b) is found
.loop
call BattleRandom
and a
- jr z,.loop
+ jr z, .loop
cp b
- jr nc,.loop
- ld b,a
+ jr nc, .loop
+ ld b, a
.storeDamage ; store damage value at b
- ld hl,wDamage
+ ld hl, wDamage
xor a
- ld [hli],a
- ld a,b
- ld [hl],a
+ ld [hli], a
+ ld a, b
+ ld [hl], a
ApplyDamageToEnemyPokemon:
- ld hl,wDamage
- ld a,[hli]
- ld b,a
- ld a,[hl]
+ ld hl, wDamage
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
or b
- jr z,ApplyAttackToEnemyPokemonDone ; we're done if damage is 0
- ld a,[wEnemyBattleStatus2]
- bit HasSubstituteUp,a ; does the enemy have a substitute?
- jp nz,AttackSubstitute
+ jr z, ApplyAttackToEnemyPokemonDone ; we're done if damage is 0
+ ld a, [wEnemyBattleStatus2]
+ bit HAS_SUBSTITUTE_UP, a ; does the enemy have a substitute?
+ jp nz, AttackSubstitute
; subtract the damage from the pokemon's current HP
; also, save the current HP at wHPBarOldHP
- ld a,[hld]
- ld b,a
- ld a,[wEnemyMonHP + 1]
- ld [wHPBarOldHP],a
+ ld a, [hld]
+ ld b, a
+ ld a, [wEnemyMonHP + 1]
+ ld [wHPBarOldHP], a
sub b
- ld [wEnemyMonHP + 1],a
- ld a,[hl]
- ld b,a
- ld a,[wEnemyMonHP]
- ld [wHPBarOldHP+1],a
+ ld [wEnemyMonHP + 1], a
+ ld a, [hl]
+ ld b, a
+ ld a, [wEnemyMonHP]
+ ld [wHPBarOldHP+1], a
sbc b
- ld [wEnemyMonHP],a
- jr nc,.animateHpBar
+ ld [wEnemyMonHP], a
+ jr nc, .animateHpBar
; if more damage was done than the current HP, zero the HP and set the damage (wDamage)
; equal to how much HP the pokemon had before the attack
- ld a,[wHPBarOldHP+1]
- ld [hli],a
- ld a,[wHPBarOldHP]
- ld [hl],a
- xor a
- ld hl,wEnemyMonHP
- ld [hli],a
- ld [hl],a
+ ld a, [wHPBarOldHP+1]
+ ld [hli], a
+ ld a, [wHPBarOldHP]
+ ld [hl], a
+ xor a
+ ld hl, wEnemyMonHP
+ ld [hli], a
+ ld [hl], a
.animateHpBar
- ld hl,wEnemyMonMaxHP
- ld a,[hli]
- ld [wHPBarMaxHP+1],a
- ld a,[hl]
- ld [wHPBarMaxHP],a
- ld hl,wEnemyMonHP
- ld a,[hli]
- ld [wHPBarNewHP+1],a
- ld a,[hl]
- ld [wHPBarNewHP],a
+ ld hl, wEnemyMonMaxHP
+ ld a, [hli]
+ ld [wHPBarMaxHP+1], a
+ ld a, [hl]
+ ld [wHPBarMaxHP], a
+ ld hl, wEnemyMonHP
+ ld a, [hli]
+ ld [wHPBarNewHP+1], a
+ ld a, [hl]
+ ld [wHPBarNewHP], a
coord hl, 2, 2
xor a
- ld [wHPBarType],a
+ ld [wHPBarType], a
predef UpdateHPBar2 ; animate the HP bar shortening
ApplyAttackToEnemyPokemonDone:
jp DrawHUDsAndHPBars
ApplyAttackToPlayerPokemon:
- ld a,[wEnemyMoveEffect]
- cp a,OHKO_EFFECT
- jr z,ApplyDamageToPlayerPokemon
- cp a,SUPER_FANG_EFFECT
- jr z,.superFangEffect
- cp a,SPECIAL_DAMAGE_EFFECT
- jr z,.specialDamage
- ld a,[wEnemyMovePower]
- and a
- jp z,ApplyAttackToPlayerPokemonDone
+ ld a, [wEnemyMoveEffect]
+ cp OHKO_EFFECT
+ jr z, ApplyDamageToPlayerPokemon
+ cp SUPER_FANG_EFFECT
+ jr z, .superFangEffect
+ cp SPECIAL_DAMAGE_EFFECT
+ jr z, .specialDamage
+ ld a, [wEnemyMovePower]
+ and a
+ jp z, ApplyAttackToPlayerPokemonDone
jr ApplyDamageToPlayerPokemon
.superFangEffect
; set the damage to half the target's HP
- ld hl,wBattleMonHP
- ld de,wDamage
- ld a,[hli]
+ ld hl, wBattleMonHP
+ ld de, wDamage
+ ld a, [hli]
srl a
- ld [de],a
+ ld [de], a
inc de
- ld b,a
- ld a,[hl]
+ ld b, a
+ ld a, [hl]
rr a
- ld [de],a
+ ld [de], a
or b
- jr nz,ApplyDamageToPlayerPokemon
+ jr nz, ApplyDamageToPlayerPokemon
; make sure Super Fang's damage is always at least 1
- ld a,$01
- ld [de],a
+ ld a, $01
+ ld [de], a
jr ApplyDamageToPlayerPokemon
.specialDamage
- ld hl,wEnemyMonLevel
- ld a,[hl]
- ld b,a
- ld a,[wEnemyMoveNum]
- cp a,SEISMIC_TOSS
- jr z,.storeDamage
- cp a,NIGHT_SHADE
- jr z,.storeDamage
- ld b,SONICBOOM_DAMAGE
- cp a,SONICBOOM
- jr z,.storeDamage
- ld b,DRAGON_RAGE_DAMAGE
- cp a,DRAGON_RAGE
- jr z,.storeDamage
+ ld hl, wEnemyMonLevel
+ ld a, [hl]
+ ld b, a
+ ld a, [wEnemyMoveNum]
+ cp SEISMIC_TOSS
+ jr z, .storeDamage
+ cp NIGHT_SHADE
+ jr z, .storeDamage
+ ld b, SONICBOOM_DAMAGE
+ cp SONICBOOM
+ jr z, .storeDamage
+ ld b, DRAGON_RAGE_DAMAGE
+ cp DRAGON_RAGE
+ jr z, .storeDamage
; Psywave
- ld a,[hl]
- ld b,a
+ ld a, [hl]
+ ld b, a
srl a
add b
- ld b,a ; b = attacker's level * 1.5
+ ld b, a ; b = attacker's level * 1.5
; loop until a random number in the range [0, b) is found
; this differs from the range when the player attacks, which is [1, b)
; it's possible for the enemy to do 0 damage with Psywave, but the player always does at least 1 damage
.loop
call BattleRandom
cp b
- jr nc,.loop
- ld b,a
+ jr nc, .loop
+ ld b, a
.storeDamage
- ld hl,wDamage
+ ld hl, wDamage
xor a
- ld [hli],a
- ld a,b
- ld [hl],a
+ ld [hli], a
+ ld a, b
+ ld [hl], a
ApplyDamageToPlayerPokemon:
- ld hl,wDamage
- ld a,[hli]
- ld b,a
- ld a,[hl]
+ ld hl, wDamage
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
or b
- jr z,ApplyAttackToPlayerPokemonDone ; we're done if damage is 0
- ld a,[wPlayerBattleStatus2]
- bit HasSubstituteUp,a ; does the player have a substitute?
- jp nz,AttackSubstitute
+ jr z, ApplyAttackToPlayerPokemonDone ; we're done if damage is 0
+ ld a, [wPlayerBattleStatus2]
+ bit HAS_SUBSTITUTE_UP, a ; does the player have a substitute?
+ jp nz, AttackSubstitute
; subtract the damage from the pokemon's current HP
; also, save the current HP at wHPBarOldHP and the new HP at wHPBarNewHP
- ld a,[hld]
- ld b,a
- ld a,[wBattleMonHP + 1]
- ld [wHPBarOldHP],a
+ ld a, [hld]
+ ld b, a
+ ld a, [wBattleMonHP + 1]
+ ld [wHPBarOldHP], a
sub b
- ld [wBattleMonHP + 1],a
- ld [wHPBarNewHP],a
- ld b,[hl]
- ld a,[wBattleMonHP]
- ld [wHPBarOldHP+1],a
+ ld [wBattleMonHP + 1], a
+ ld [wHPBarNewHP], a
+ ld b, [hl]
+ ld a, [wBattleMonHP]
+ ld [wHPBarOldHP+1], a
sbc b
- ld [wBattleMonHP],a
- ld [wHPBarNewHP+1],a
- jr nc,.animateHpBar
+ ld [wBattleMonHP], a
+ ld [wHPBarNewHP+1], a
+ jr nc, .animateHpBar
; if more damage was done than the current HP, zero the HP and set the damage (wDamage)
; equal to how much HP the pokemon had before the attack
- ld a,[wHPBarOldHP+1]
- ld [hli],a
- ld a,[wHPBarOldHP]
- ld [hl],a
- xor a
- ld hl,wBattleMonHP
- ld [hli],a
- ld [hl],a
- ld hl,wHPBarNewHP
- ld [hli],a
- ld [hl],a
+ ld a, [wHPBarOldHP+1]
+ ld [hli], a
+ ld a, [wHPBarOldHP]
+ ld [hl], a
+ xor a
+ ld hl, wBattleMonHP
+ ld [hli], a
+ ld [hl], a
+ ld hl, wHPBarNewHP
+ ld [hli], a
+ ld [hl], a
.animateHpBar
- ld hl,wBattleMonMaxHP
- ld a,[hli]
- ld [wHPBarMaxHP+1],a
- ld a,[hl]
- ld [wHPBarMaxHP],a
+ ld hl, wBattleMonMaxHP
+ ld a, [hli]
+ ld [wHPBarMaxHP+1], a
+ ld a, [hl]
+ ld [wHPBarMaxHP], a
coord hl, 10, 9
- ld a,$01
- ld [wHPBarType],a
+ ld a, $01
+ ld [wHPBarType], a
predef UpdateHPBar2 ; animate the HP bar shortening
ApplyAttackToPlayerPokemonDone:
jp DrawHUDsAndHPBars
@@ -5224,51 +5224,51 @@ AttackSubstitute:
; Normal recoil such as from Double-Edge isn't affected by this glitch,
; because this function is never called in that case.
- ld hl,SubstituteTookDamageText
+ ld hl, SubstituteTookDamageText
call PrintText
; values for player turn
- ld de,wEnemySubstituteHP
- ld bc,wEnemyBattleStatus2
- ld a,[H_WHOSETURN]
+ ld de, wEnemySubstituteHP
+ ld bc, wEnemyBattleStatus2
+ ld a, [H_WHOSETURN]
and a
- jr z,.applyDamageToSubstitute
+ jr z, .applyDamageToSubstitute
; values for enemy turn
- ld de,wPlayerSubstituteHP
- ld bc,wPlayerBattleStatus2
+ ld de, wPlayerSubstituteHP
+ ld bc, wPlayerBattleStatus2
.applyDamageToSubstitute
- ld hl,wDamage
- ld a,[hli]
+ ld hl, wDamage
+ ld a, [hli]
and a
- jr nz,.substituteBroke ; damage > 0xFF always breaks substitutes
+ jr nz, .substituteBroke ; damage > 0xFF always breaks substitutes
; subtract damage from HP of substitute
- ld a,[de]
+ ld a, [de]
sub [hl]
- ld [de],a
+ ld [de], a
ret nc
.substituteBroke
; If the target's Substitute breaks, wDamage isn't updated with the amount of HP
; the Substitute had before being attacked.
- ld h,b
- ld l,c
- res HasSubstituteUp,[hl] ; unset the substitute bit
- ld hl,SubstituteBrokeText
+ ld h, b
+ ld l, c
+ res HAS_SUBSTITUTE_UP, [hl] ; unset the substitute bit
+ ld hl, SubstituteBrokeText
call PrintText
; flip whose turn it is for the next function call
- ld a,[H_WHOSETURN]
- xor a,$01
- ld [H_WHOSETURN],a
+ ld a, [H_WHOSETURN]
+ xor $01
+ ld [H_WHOSETURN], a
callab Func_79929 ; animate the substitute breaking
; flip the turn back to the way it was
- ld a,[H_WHOSETURN]
- xor a,$01
- ld [H_WHOSETURN],a
- ld hl,wPlayerMoveEffect ; value for player's turn
+ ld a, [H_WHOSETURN]
+ xor $01
+ ld [H_WHOSETURN], a
+ ld hl, wPlayerMoveEffect ; value for player's turn
and a
- jr z,.nullifyEffect
- ld hl,wEnemyMoveEffect ; value for enemy's turn
+ jr z, .nullifyEffect
+ ld hl, wEnemyMoveEffect ; value for enemy's turn
.nullifyEffect
xor a
- ld [hl],a ; zero the effect of the attacker's move
+ ld [hl], a ; zero the effect of the attacker's move
jp DrawHUDsAndHPBars
SubstituteTookDamageText:
@@ -5282,44 +5282,44 @@ SubstituteBrokeText:
; this function raises the attack modifier of a pokemon using Rage when that pokemon is attacked
HandleBuildingRage:
; values for the player turn
- ld hl,wEnemyBattleStatus2
- ld de,wEnemyMonStatMods
- ld bc,wEnemyMoveNum
- ld a,[H_WHOSETURN]
+ ld hl, wEnemyBattleStatus2
+ ld de, wEnemyMonStatMods
+ ld bc, wEnemyMoveNum
+ ld a, [H_WHOSETURN]
and a
- jr z,.next
+ jr z, .next
; values for the enemy turn
- ld hl,wPlayerBattleStatus2
- ld de,wPlayerMonStatMods
- ld bc,wPlayerMoveNum
+ ld hl, wPlayerBattleStatus2
+ ld de, wPlayerMonStatMods
+ ld bc, wPlayerMoveNum
.next
- bit UsingRage,[hl] ; is the pokemon being attacked under the effect of Rage?
+ bit USING_RAGE, [hl] ; is the pokemon being attacked under the effect of Rage?
ret z ; return if not
- ld a,[de]
- cp a,$0d ; maximum stat modifier value
+ ld a, [de]
+ cp $0d ; maximum stat modifier value
ret z ; return if attack modifier is already maxed
- ld a,[H_WHOSETURN]
- xor a,$01 ; flip turn for the stat modifier raising function
- ld [H_WHOSETURN],a
+ ld a, [H_WHOSETURN]
+ xor $01 ; flip turn for the stat modifier raising function
+ ld [H_WHOSETURN], a
; temporarily change the target pokemon's move to $00 and the effect to the one
; that causes the attack modifier to go up one stage
- ld h,b
- ld l,c
- ld [hl],$00 ; null move number
+ ld h, b
+ ld l, c
+ ld [hl], $00 ; null move number
inc hl
- ld [hl],ATTACK_UP1_EFFECT
+ ld [hl], ATTACK_UP1_EFFECT
push hl
- ld hl,BuildingRageText
+ ld hl, BuildingRageText
call PrintText
call StatModifierUpEffect ; stat modifier raising function
pop hl
xor a
- ldd [hl],a ; null move effect
- ld a,RAGE
- ld [hl],a ; restore the target pokemon's move number to Rage
- ld a,[H_WHOSETURN]
- xor a,$01 ; flip turn back to the way it was
- ld [H_WHOSETURN],a
+ ldd [hl], a ; null move effect
+ ld a, RAGE
+ ld [hl], a ; restore the target pokemon's move number to Rage
+ ld a, [H_WHOSETURN]
+ xor $01 ; flip turn back to the way it was
+ ld [H_WHOSETURN], a
ret
BuildingRageText:
@@ -5335,25 +5335,25 @@ MirrorMoveCopyMove:
; ccf1 is also set to 0 whenever the player is fast asleep or frozen solid.
; ccf2 is also set to 0 whenever the enemy is fast asleep or frozen solid.
- ld a,[H_WHOSETURN]
+ ld a, [H_WHOSETURN]
and a
; values for player turn
- ld a,[wEnemyUsedMove]
- ld hl,wPlayerSelectedMove
- ld de,wPlayerMoveNum
- jr z,.next
+ ld a, [wEnemyUsedMove]
+ ld hl, wPlayerSelectedMove
+ ld de, wPlayerMoveNum
+ jr z, .next
; values for enemy turn
- ld a,[wPlayerUsedMove]
- ld de,wEnemyMoveNum
- ld hl,wEnemySelectedMove
+ ld a, [wPlayerUsedMove]
+ ld de, wEnemyMoveNum
+ ld hl, wEnemySelectedMove
.next
- ld [hl],a
- cp a,MIRROR_MOVE ; did the target Pokemon last use Mirror Move, and miss?
- jr z,.mirrorMoveFailed
+ ld [hl], a
+ cp MIRROR_MOVE ; did the target Pokemon last use Mirror Move, and miss?
+ jr z, .mirrorMoveFailed
and a ; has the target selected any move yet?
- jr nz,ReloadMoveData
+ jr nz, ReloadMoveData
.mirrorMoveFailed
- ld hl,MirrorMoveFailedText
+ ld hl, MirrorMoveFailedText
call PrintText
xor a
ret
@@ -5364,78 +5364,78 @@ MirrorMoveFailedText:
; function used to reload move data for moves like Mirror Move and Metronome
ReloadMoveData:
- ld [wd11e],a
+ ld [wd11e], a
dec a
- ld hl,Moves
- ld bc,MoveEnd - Moves
+ ld hl, Moves
+ ld bc, MoveEnd - Moves
call AddNTimes
- ld a,BANK(Moves)
+ ld a, BANK(Moves)
call FarCopyData ; copy the move's stats
call IncrementMovePP
; the follow two function calls are used to reload the move name
call GetMoveName
call CopyStringToCF4B
- ld a,$01
+ ld a, $01
and a
ret
; function that picks a random move for metronome
MetronomePickMove:
xor a
- ld [wAnimationType],a
- ld a,METRONOME
+ ld [wAnimationType], a
+ ld a, METRONOME
call PlayMoveAnimation ; play Metronome's animation
; values for player turn
- ld de,wPlayerMoveNum
- ld hl,wPlayerSelectedMove
- ld a,[H_WHOSETURN]
+ ld de, wPlayerMoveNum
+ ld hl, wPlayerSelectedMove
+ ld a, [H_WHOSETURN]
and a
- jr z,.pickMoveLoop
+ jr z, .pickMoveLoop
; values for enemy turn
- ld de,wEnemyMoveNum
- ld hl,wEnemySelectedMove
+ ld de, wEnemyMoveNum
+ ld hl, wEnemySelectedMove
; loop to pick a random number in the range [1, $a5) to be the move used by Metronome
.pickMoveLoop
call BattleRandom
and a
- jr z,.pickMoveLoop
- cp a,NUM_ATTACKS + 1 ; max normal move number + 1 (this is Struggle's move number)
- jr nc,.pickMoveLoop
- cp a,METRONOME
- jr z,.pickMoveLoop
- ld [hl],a
+ jr z, .pickMoveLoop
+ cp NUM_ATTACKS + 1 ; max normal move number + 1 (this is Struggle's move number)
+ jr nc, .pickMoveLoop
+ cp METRONOME
+ jr z, .pickMoveLoop
+ ld [hl], a
jr ReloadMoveData
; this function increments the current move's PP
; it's used to prevent moves that run another move within the same turn
; (like Mirror Move and Metronome) from losing 2 PP
IncrementMovePP:
- ld a,[H_WHOSETURN]
+ ld a, [H_WHOSETURN]
and a
; values for player turn
- ld hl,wBattleMonPP
- ld de,wPartyMon1PP
- ld a,[wPlayerMoveListIndex]
- jr z,.next
+ ld hl, wBattleMonPP
+ ld de, wPartyMon1PP
+ ld a, [wPlayerMoveListIndex]
+ jr z, .next
; values for enemy turn
- ld hl,wEnemyMonPP
- ld de,wEnemyMon1PP
- ld a,[wEnemyMoveListIndex]
+ ld hl, wEnemyMonPP
+ ld de, wEnemyMon1PP
+ ld a, [wEnemyMoveListIndex]
.next
- ld b,$00
- ld c,a
- add hl,bc
+ ld b, $00
+ ld c, a
+ add hl, bc
inc [hl] ; increment PP in the currently battling pokemon memory location
- ld h,d
- ld l,e
- add hl,bc
- ld a,[H_WHOSETURN]
- and a
- ld a,[wPlayerMonNumber] ; value for player turn
- jr z,.updatePP
- ld a,[wEnemyMonPartyPos] ; value for enemy turn
+ ld h, d
+ ld l, e
+ add hl, bc
+ ld a, [H_WHOSETURN]
+ and a
+ ld a, [wPlayerMonNumber] ; value for player turn
+ jr z, .updatePP
+ ld a, [wEnemyMonPartyPos] ; value for enemy turn
.updatePP
- ld bc,wEnemyMon2 - wEnemyMon1
+ ld bc, wEnemyMon2 - wEnemyMon1
call AddNTimes
inc [hl] ; increment PP in the party memory location
ret
@@ -5443,107 +5443,107 @@ IncrementMovePP:
; function to adjust the base damage of an attack to account for type effectiveness
AdjustDamageForMoveType:
; values for player turn
- ld hl,wBattleMonType
- ld a,[hli]
- ld b,a ; b = type 1 of attacker
- ld c,[hl] ; c = type 2 of attacker
- ld hl,wEnemyMonType
- ld a,[hli]
- ld d,a ; d = type 1 of defender
- ld e,[hl] ; e = type 2 of defender
- ld a,[wPlayerMoveType]
- ld [wMoveType],a
- ld a,[H_WHOSETURN]
- and a
- jr z,.next
+ ld hl, wBattleMonType
+ ld a, [hli]
+ ld b, a ; b = type 1 of attacker
+ ld c, [hl] ; c = type 2 of attacker
+ ld hl, wEnemyMonType
+ ld a, [hli]
+ ld d, a ; d = type 1 of defender
+ ld e, [hl] ; e = type 2 of defender
+ ld a, [wPlayerMoveType]
+ ld [wMoveType], a
+ ld a, [H_WHOSETURN]
+ and a
+ jr z, .next
; values for enemy turn
- ld hl,wEnemyMonType
- ld a,[hli]
- ld b,a ; b = type 1 of attacker
- ld c,[hl] ; c = type 2 of attacker
- ld hl,wBattleMonType
- ld a,[hli]
- ld d,a ; d = type 1 of defender
- ld e,[hl] ; e = type 2 of defender
- ld a,[wEnemyMoveType]
- ld [wMoveType],a
+ ld hl, wEnemyMonType
+ ld a, [hli]
+ ld b, a ; b = type 1 of attacker
+ ld c, [hl] ; c = type 2 of attacker
+ ld hl, wBattleMonType
+ ld a, [hli]
+ ld d, a ; d = type 1 of defender
+ ld e, [hl] ; e = type 2 of defender
+ ld a, [wEnemyMoveType]
+ ld [wMoveType], a
.next
- ld a,[wMoveType]
+ ld a, [wMoveType]
cp b ; does the move type match type 1 of the attacker?
- jr z,.sameTypeAttackBonus
+ jr z, .sameTypeAttackBonus
cp c ; does the move type match type 2 of the attacker?
- jr z,.sameTypeAttackBonus
+ jr z, .sameTypeAttackBonus
jr .skipSameTypeAttackBonus
.sameTypeAttackBonus
; if the move type matches one of the attacker's types
- ld hl,wDamage + 1
- ld a,[hld]
- ld h,[hl]
- ld l,a ; hl = damage
- ld b,h
- ld c,l ; bc = damage
+ ld hl, wDamage + 1
+ ld a, [hld]
+ ld h, [hl]
+ ld l, a ; hl = damage
+ ld b, h
+ ld c, l ; bc = damage
srl b
rr c ; bc = floor(0.5 * damage)
- add hl,bc ; hl = floor(1.5 * damage)
+ add hl, bc ; hl = floor(1.5 * damage)
; store damage
- ld a,h
- ld [wDamage],a
- ld a,l
- ld [wDamage + 1],a
- ld hl,wDamageMultipliers
- set 7,[hl]
+ ld a, h
+ ld [wDamage], a
+ ld a, l
+ ld [wDamage + 1], a
+ ld hl, wDamageMultipliers
+ set 7, [hl]
.skipSameTypeAttackBonus
- ld a,[wMoveType]
- ld b,a
- ld hl,TypeEffects
+ ld a, [wMoveType]
+ ld b, a
+ ld hl, TypeEffects
.loop
- ld a,[hli] ; a = "attacking type" of the current type pair
- cp a,$ff
- jr z,.done
+ ld a, [hli] ; a = "attacking type" of the current type pair
+ cp $ff
+ jr z, .done
cp b ; does move type match "attacking type"?
- jr nz,.nextTypePair
- ld a,[hl] ; a = "defending type" of the current type pair
+ jr nz, .nextTypePair
+ ld a, [hl] ; a = "defending type" of the current type pair
cp d ; does type 1 of defender match "defending type"?
- jr z,.matchingPairFound
+ jr z, .matchingPairFound
cp e ; does type 2 of defender match "defending type"?
- jr z,.matchingPairFound
+ jr z, .matchingPairFound
jr .nextTypePair
.matchingPairFound
; if the move type matches the "attacking type" and one of the defender's types matches the "defending type"
push hl
push bc
inc hl
- ld a,[wDamageMultipliers]
- and a,$80
- ld b,a
- ld a,[hl] ; a = damage multiplier
- ld [H_MULTIPLIER],a
+ ld a, [wDamageMultipliers]
+ and $80
+ ld b, a
+ ld a, [hl] ; a = damage multiplier
+ ld [H_MULTIPLIER], a
add b
- ld [wDamageMultipliers],a
- xor a
- ld [H_MULTIPLICAND],a
- ld hl,wDamage
- ld a,[hli]
- ld [H_MULTIPLICAND + 1],a
- ld a,[hld]
- ld [H_MULTIPLICAND + 2],a
+ ld [wDamageMultipliers], a
+ xor a
+ ld [H_MULTIPLICAND], a
+ ld hl, wDamage
+ ld a, [hli]
+ ld [H_MULTIPLICAND + 1], a
+ ld a, [hld]
+ ld [H_MULTIPLICAND + 2], a
call Multiply
- ld a,10
- ld [H_DIVISOR],a
- ld b,$04
+ ld a, 10
+ ld [H_DIVISOR], a
+ ld b, $04
call Divide
- ld a,[H_QUOTIENT + 2]
- ld [hli],a
- ld b,a
- ld a,[H_QUOTIENT + 3]
- ld [hl],a
+ ld a, [H_QUOTIENT + 2]
+ ld [hli], a
+ ld b, a
+ ld a, [H_QUOTIENT + 3]
+ ld [hl], a
or b ; is damage 0?
- jr nz,.skipTypeImmunity
+ jr nz, .skipTypeImmunity
.typeImmunity
; if damage is 0, make the move miss
; this only occurs if a move that would do 2 or 3 damage is 0.25x effective against the target
inc a
- ld [wMoveMissed],a
+ ld [wMoveMissed], a
.skipTypeImmunity
pop bc
pop hl
@@ -5555,26 +5555,26 @@ AdjustDamageForMoveType:
ret
AIGetTypeEffectiveness:
- ld a,[wEnemyMoveType]
- ld d,a ; d = type of enemy move
- ld hl,wBattleMonType
- ld b,[hl] ; b = type 1 of player's pokemon
+ ld a, [wEnemyMoveType]
+ ld d, a ; d = type of enemy move
+ ld hl, wBattleMonType
+ ld b, [hl] ; b = type 1 of player's pokemon
inc hl
- ld c,[hl] ; c = type 2 of player's pokemon
- ld a,$10
- ld [wd11e],a ; initialize [wd11e] to neutral effectiveness
- ld hl,TypeEffects
+ ld c, [hl] ; c = type 2 of player's pokemon
+ ld a, $10
+ ld [wd11e], a ; initialize [wd11e] to neutral effectiveness
+ ld hl, TypeEffects
.loop
- ld a,[hli]
- cp a,$ff
+ ld a, [hli]
+ cp $ff
ret z
cp d ; match the type of the move
- jr nz,.nextTypePair1
- ld a,[hli]
+ jr nz, .nextTypePair1
+ ld a, [hli]
cp b ; match with type 1 of pokemon
- jr z,.done
+ jr z, .done
cp c ; or match with type 2 of pokemon
- jr z,.done
+ jr z, .done
jr .nextTypePair2
.nextTypePair1
inc hl
@@ -5594,8 +5594,8 @@ AIGetTypeEffectiveness:
ret c
.ok
- ld a,[hl]
- ld [wd11e],a ; store damage multiplier
+ ld a, [hl]
+ ld [wd11e], a ; store damage multiplier
ret
INCLUDE "data/type_effects.asm"
@@ -5603,52 +5603,52 @@ INCLUDE "data/type_effects.asm"
; some tests that need to pass for a move to hit
MoveHitTest:
; player's turn
- ld hl,wEnemyBattleStatus1
- ld de,wPlayerMoveEffect
- ld bc,wEnemyMonStatus
- ld a,[H_WHOSETURN]
+ ld hl, wEnemyBattleStatus1
+ ld de, wPlayerMoveEffect
+ ld bc, wEnemyMonStatus
+ ld a, [H_WHOSETURN]
and a
- jr z,.dreamEaterCheck
+ jr z, .dreamEaterCheck
; enemy's turn
- ld hl,wPlayerBattleStatus1
- ld de,wEnemyMoveEffect
- ld bc,wBattleMonStatus
+ ld hl, wPlayerBattleStatus1
+ ld de, wEnemyMoveEffect
+ ld bc, wBattleMonStatus
.dreamEaterCheck
- ld a,[de]
- cp a,DREAM_EATER_EFFECT
- jr nz,.swiftCheck
- ld a,[bc]
- and a,SLP ; is the target pokemon sleeping?
- jp z,.moveMissed
+ ld a, [de]
+ cp DREAM_EATER_EFFECT
+ jr nz, .swiftCheck
+ ld a, [bc]
+ and SLP ; is the target pokemon sleeping?
+ jp z, .moveMissed
.swiftCheck
- ld a,[de]
- cp a,SWIFT_EFFECT
+ ld a, [de]
+ cp SWIFT_EFFECT
ret z ; Swift never misses (interestingly, Azure Heights lists this is a myth, but it appears to be true)
call CheckTargetSubstitute ; substitute check (note that this overwrites a)
- jr z,.checkForDigOrFlyStatus
+ 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.
- cp a,DRAIN_HP_EFFECT
- jp z,.moveMissed
- cp a,DREAM_EATER_EFFECT
- jp z,.moveMissed
+ cp DRAIN_HP_EFFECT
+ jp z, .moveMissed
+ cp DREAM_EATER_EFFECT
+ jp z, .moveMissed
.checkForDigOrFlyStatus
- bit Invulnerable,[hl]
- jp nz,.moveMissed
- ld a,[H_WHOSETURN]
+ bit INVULNERABLE, [hl]
+ jp nz, .moveMissed
+ ld a, [H_WHOSETURN]
and a
- jr nz,.enemyTurn
+ jr nz, .enemyTurn
.playerTurn
; this checks if the move effect is disallowed by mist
- ld a,[wPlayerMoveEffect]
- cp a,ATTACK_DOWN1_EFFECT
- jr c,.skipEnemyMistCheck
- cp a,HAZE_EFFECT + 1
- jr c,.enemyMistCheck
- cp a,ATTACK_DOWN2_EFFECT
- jr c,.skipEnemyMistCheck
- cp a,REFLECT_EFFECT + 1
- jr c,.enemyMistCheck
+ ld a, [wPlayerMoveEffect]
+ cp ATTACK_DOWN1_EFFECT
+ jr c, .skipEnemyMistCheck
+ cp HAZE_EFFECT + 1
+ jr c, .enemyMistCheck
+ cp ATTACK_DOWN2_EFFECT
+ jr c, .skipEnemyMistCheck
+ cp REFLECT_EFFECT + 1
+ jr c, .enemyMistCheck
jr .skipEnemyMistCheck
.enemyMistCheck
; if move effect is from $12 to $19 inclusive or $3a to $41 inclusive
@@ -5657,98 +5657,98 @@ MoveHitTest:
; FLASH, CONVERSION*, HAZE*, SCREECH, LIGHT SCREEN*, REFLECT*
; the moves that are marked with an asterisk are not affected since this
; function is not called when those moves are used
- ld a,[wEnemyBattleStatus2]
- bit ProtectedByMist,a ; is mon protected by mist?
- jp nz,.moveMissed
+ ld a, [wEnemyBattleStatus2]
+ bit PROTECTED_BY_MIST, a ; is mon protected by mist?
+ jp nz, .moveMissed
.skipEnemyMistCheck
- ld a,[wPlayerBattleStatus2]
- bit UsingXAccuracy,a ; is the player using X Accuracy?
+ ld a, [wPlayerBattleStatus2]
+ bit USING_X_ACCURACY, a ; is the player using X Accuracy?
ret nz ; if so, always hit regardless of accuracy/evasion
jr .calcHitChance
.enemyTurn
- ld a,[wEnemyMoveEffect]
- cp a,ATTACK_DOWN1_EFFECT
- jr c,.skipPlayerMistCheck
- cp a,HAZE_EFFECT + 1
- jr c,.playerMistCheck
- cp a,ATTACK_DOWN2_EFFECT
- jr c,.skipPlayerMistCheck
- cp a,REFLECT_EFFECT + 1
- jr c,.playerMistCheck
+ ld a, [wEnemyMoveEffect]
+ cp ATTACK_DOWN1_EFFECT
+ jr c, .skipPlayerMistCheck
+ cp HAZE_EFFECT + 1
+ jr c, .playerMistCheck
+ cp ATTACK_DOWN2_EFFECT
+ jr c, .skipPlayerMistCheck
+ cp REFLECT_EFFECT + 1
+ jr c, .playerMistCheck
jr .skipPlayerMistCheck
.playerMistCheck
; similar to enemy mist check
- ld a,[wPlayerBattleStatus2]
- bit ProtectedByMist,a ; is mon protected by mist?
- jp nz,.moveMissed
+ ld a, [wPlayerBattleStatus2]
+ bit PROTECTED_BY_MIST, a ; is mon protected by mist?
+ jp nz, .moveMissed
.skipPlayerMistCheck
- ld a,[wEnemyBattleStatus2]
- bit UsingXAccuracy,a ; is the enemy using X Accuracy?
+ ld a, [wEnemyBattleStatus2]
+ bit USING_X_ACCURACY, a ; is the enemy using X Accuracy?
ret nz ; if so, always hit regardless of accuracy/evasion
.calcHitChance
call CalcHitChance ; scale the move accuracy according to attacker's accuracy and target's evasion
- ld a,[wPlayerMoveAccuracy]
- ld b,a
- ld a,[H_WHOSETURN]
+ ld a, [wPlayerMoveAccuracy]
+ ld b, a
+ ld a, [H_WHOSETURN]
and a
- jr z,.doAccuracyCheck
- ld a,[wEnemyMoveAccuracy]
- ld b,a
+ jr z, .doAccuracyCheck
+ ld a, [wEnemyMoveAccuracy]
+ ld b, a
.doAccuracyCheck
; if the random number generated is greater than or equal to the scaled accuracy, the move misses
; note that this means that even the highest accuracy is still just a 255/256 chance, not 100%
call BattleRandom
cp b
- jr nc,.moveMissed
+ jr nc, .moveMissed
ret
.moveMissed
xor a
- ld hl,wDamage ; zero the damage
- ld [hli],a
- ld [hl],a
+ ld hl, wDamage ; zero the damage
+ ld [hli], a
+ ld [hl], a
inc a
- ld [wMoveMissed],a
- ld a,[H_WHOSETURN]
+ ld [wMoveMissed], a
+ ld a, [H_WHOSETURN]
and a
- jr z,.playerTurn2
+ jr z, .playerTurn2
.enemyTurn2
- ld hl,wEnemyBattleStatus1
- res UsingTrappingMove,[hl] ; end multi-turn attack e.g. wrap
+ ld hl, wEnemyBattleStatus1
+ res USING_TRAPPING_MOVE, [hl] ; end multi-turn attack e.g. wrap
ret
.playerTurn2
- ld hl,wPlayerBattleStatus1
- res UsingTrappingMove,[hl] ; end multi-turn attack e.g. wrap
+ ld hl, wPlayerBattleStatus1
+ res USING_TRAPPING_MOVE, [hl] ; end multi-turn attack e.g. wrap
ret
; values for player turn
CalcHitChance:
- ld hl,wPlayerMoveAccuracy
- ld a,[H_WHOSETURN]
- and a
- ld a,[wPlayerMonAccuracyMod]
- ld b,a
- ld a,[wEnemyMonEvasionMod]
- ld c,a
- jr z,.next
+ ld hl, wPlayerMoveAccuracy
+ ld a, [H_WHOSETURN]
+ and a
+ ld a, [wPlayerMonAccuracyMod]
+ ld b, a
+ ld a, [wEnemyMonEvasionMod]
+ ld c, a
+ jr z, .next
; values for enemy turn
- ld hl,wEnemyMoveAccuracy
- ld a,[wEnemyMonAccuracyMod]
- ld b,a
- ld a,[wPlayerMonEvasionMod]
- ld c,a
+ ld hl, wEnemyMoveAccuracy
+ ld a, [wEnemyMonAccuracyMod]
+ ld b, a
+ ld a, [wPlayerMonEvasionMod]
+ ld c, a
.next
- ld a,$0e
+ ld a, $0e
sub c
- ld c,a ; c = 14 - EVASIONMOD (this "reflects" the value over 7, so that an increase in the target's evasion
+ ld c, a ; c = 14 - EVASIONMOD (this "reflects" the value over 7, so that an increase in the target's evasion
; decreases the hit chance instead of increasing the hit chance)
; zero the high bytes of the multiplicand
xor a
- ld [H_MULTIPLICAND],a
- ld [H_MULTIPLICAND + 1],a
- ld a,[hl]
- ld [H_MULTIPLICAND + 2],a ; set multiplicand to move accuracy
+ ld [H_MULTIPLICAND], a
+ ld [H_MULTIPLICAND + 1], a
+ ld a, [hl]
+ ld [H_MULTIPLICAND + 2], a ; set multiplicand to move accuracy
push hl
- ld d,$02 ; loop has two iterations
+ ld d, $02 ; loop has two iterations
; loop to do the calculations, the first iteration multiplies by the accuracy ratio and
; the second iteration multiplies by the evasion ratio
.loop
@@ -5756,40 +5756,40 @@ CalcHitChance:
ld hl, StatModifierRatios ; stat modifier ratios
dec b
sla b
- ld c,b
- ld b,$00
- add hl,bc ; hl = address of stat modifier ratio
+ ld c, b
+ ld b, $00
+ add hl, bc ; hl = address of stat modifier ratio
pop bc
- ld a,[hli]
- ld [H_MULTIPLIER],a ; set multiplier to the numerator of the ratio
+ ld a, [hli]
+ ld [H_MULTIPLIER], a ; set multiplier to the numerator of the ratio
call Multiply
- ld a,[hl]
- ld [H_DIVISOR],a ; set divisor to the the denominator of the ratio
+ ld a, [hl]
+ ld [H_DIVISOR], a ; set divisor to the the denominator of the ratio
; (the dividend is the product of the previous multiplication)
- ld b,$04 ; number of bytes in the dividend
+ ld b, $04 ; number of bytes in the dividend
call Divide
- ld a,[H_QUOTIENT + 3]
- ld b,a
- ld a,[H_QUOTIENT + 2]
+ ld a, [H_QUOTIENT + 3]
+ ld b, a
+ ld a, [H_QUOTIENT + 2]
or b
- jp nz,.nextCalculation
+ jp nz, .nextCalculation
; make sure the result is always at least one
- ld [H_QUOTIENT + 2],a
- ld a,$01
- ld [H_QUOTIENT + 3],a
+ ld [H_QUOTIENT + 2], a
+ ld a, $01
+ ld [H_QUOTIENT + 3], a
.nextCalculation
- ld b,c
+ ld b, c
dec d
- jr nz,.loop
- ld a,[H_QUOTIENT + 2]
+ jr nz, .loop
+ ld a, [H_QUOTIENT + 2]
and a ; is the calculated hit chance over 0xFF?
- ld a,[H_QUOTIENT + 3]
- jr z,.storeAccuracy
+ ld a, [H_QUOTIENT + 3]
+ jr z, .storeAccuracy
; if calculated hit chance over 0xFF
- ld a,$ff ; set the hit chance to 0xFF
+ ld a, $ff ; set the hit chance to 0xFF
.storeAccuracy
pop hl
- ld [hl],a ; store the hit chance in the move accuracy variable
+ ld [hl], a ; store the hit chance in the move accuracy variable
ret
; multiplies damage by a random percentage from ~85% to 100%
@@ -5841,9 +5841,9 @@ ExecuteEnemyMove:
jr nz, .executeEnemyMove
ld b, $1
ld a, [wSerialExchangeNybbleReceiveData]
- cp $e
+ cp LINKBATTLE_STRUGGLE
jr z, .executeEnemyMove
- cp $4
+ cp 4
ret nc
.executeEnemyMove
ld hl, wAILayer2Encouragement
@@ -5858,7 +5858,7 @@ ExecuteEnemyMove:
jp hl
.enemyHasNoSpecialConditions
ld hl, wEnemyBattleStatus1
- bit ChargingUp, [hl] ; is the enemy charging up for attack?
+ bit CHARGING_UP, [hl] ; is the enemy charging up for attack?
jr nz, EnemyCanExecuteChargingMove ; if so, jump
call GetCurrentMove
@@ -5871,8 +5871,8 @@ CheckIfEnemyNeedsToChargeUp:
jr EnemyCanExecuteMove
EnemyCanExecuteChargingMove:
ld hl, wEnemyBattleStatus1
- res ChargingUp, [hl] ; no longer charging up for attack
- res Invulnerable, [hl] ; no longer invulnerable to typical attacks
+ res CHARGING_UP, [hl] ; no longer charging up for attack
+ res INVULNERABLE, [hl] ; no longer invulnerable to typical attacks
ld a, [wEnemyMoveNum]
ld [wd0b5], a
ld a, BANK(MoveNames)
@@ -5940,7 +5940,7 @@ handleExplosionMiss:
playEnemyMoveAnimation:
push af
ld a, [wEnemyBattleStatus2]
- bit HasSubstituteUp, a ; does mon have a substitute?
+ bit HAS_SUBSTITUTE_UP, a ; does mon have a substitute?
ld hl, HideSubstituteShowMonAnim
ld b, BANK(HideSubstituteShowMonAnim)
call nz, Bankswitch
@@ -5951,7 +5951,7 @@ playEnemyMoveAnimation:
call HandleExplodingAnimation
call DrawEnemyHUDAndHPBar
ld a, [wEnemyBattleStatus2]
- bit HasSubstituteUp, a ; does mon have a substitute?
+ bit HAS_SUBSTITUTE_UP, a ; does mon have a substitute?
ld hl, ReshowSubstituteAnim
ld b, BANK(ReshowSubstituteAnim)
call nz, Bankswitch ; slide the substitute's sprite out
@@ -5970,7 +5970,7 @@ EnemyCheckIfFlyOrChargeEffect:
.playAnim
xor a
ld [wAnimationType], a
- ld a,STATUS_AFFECTED_ANIM
+ ld a, STATUS_AFFECTED_ANIM
call PlayMoveAnimation
EnemyCheckIfMirrorMoveEffect:
ld a, [wEnemyMoveEffect]
@@ -6017,14 +6017,14 @@ EnemyCheckIfMirrorMoveEffect:
ret z
call HandleBuildingRage
ld hl, wEnemyBattleStatus1
- bit AttackingMultipleTimes, [hl] ; is mon hitting multiple times? (example: double kick)
+ bit ATTACKING_MULTIPLE_TIMES, [hl] ; is mon hitting multiple times? (example: double kick)
jr z, .notMultiHitMove
push hl
ld hl, wEnemyNumAttacksLeft
dec [hl]
pop hl
jp nz, GetEnemyAnimationType
- res AttackingMultipleTimes, [hl] ; mon is no longer hitting multiple times
+ res ATTACKING_MULTIPLE_TIMES, [hl] ; mon is no longer hitting multiple times
ld hl, HitXTimesText
call PrintText
xor a
@@ -6062,7 +6062,7 @@ CheckEnemyStatusConditions:
call PrintText
xor a
ld [wAnimationType], a
- ld a,SLP_ANIM
+ ld a, SLP_ANIM
call PlayMoveAnimation
jr .sleepDone
.wokeUp
@@ -6084,7 +6084,7 @@ CheckEnemyStatusConditions:
jp .enemyReturnToHL
.checkIfTrapped
ld a, [wPlayerBattleStatus1]
- bit UsingTrappingMove, a ; is the player using a multi-turn attack like warp
+ bit USING_TRAPPING_MOVE, a ; is the player using a multi-turn attack like warp
jp z, .checkIfFlinched
ld hl, CantMoveText
call PrintText
@@ -6092,18 +6092,18 @@ CheckEnemyStatusConditions:
jp .enemyReturnToHL
.checkIfFlinched
ld hl, wEnemyBattleStatus1
- bit Flinched, [hl] ; check if enemy mon flinched
+ bit FLINCHED, [hl] ; check if enemy mon flinched
jp z, .checkIfMustRecharge
- res Flinched, [hl]
+ res FLINCHED, [hl]
ld hl, FlinchedText
call PrintText
ld hl, ExecuteEnemyMoveDone ; enemy can't move this turn
jp .enemyReturnToHL
.checkIfMustRecharge
ld hl, wEnemyBattleStatus2
- bit NeedsToRecharge, [hl] ; check if enemy mon has to recharge after using a move
+ bit NEEDS_TO_RECHARGE, [hl] ; check if enemy mon has to recharge after using a move
jr z, .checkIfAnyMoveDisabled
- res NeedsToRecharge, [hl]
+ res NEEDS_TO_RECHARGE, [hl]
ld hl, MustRechargeText
call PrintText
ld hl, ExecuteEnemyMoveDone ; enemy can't move this turn
@@ -6129,7 +6129,7 @@ CheckEnemyStatusConditions:
dec [hl]
jr nz, .isConfused
ld hl, wEnemyBattleStatus1
- res Confused, [hl] ; if confused counter hit 0, reset confusion status
+ res CONFUSED, [hl] ; if confused counter hit 0, reset confusion status
ld hl, ConfusedNoMoreText
call PrintText
jp .checkIfTriedToUseDisabledMove
@@ -6138,14 +6138,14 @@ CheckEnemyStatusConditions:
call PrintText
xor a
ld [wAnimationType], a
- ld a,CONF_ANIM
+ ld a, CONF_ANIM
call PlayMoveAnimation
call BattleRandom
cp $80
jr c, .checkIfTriedToUseDisabledMove
ld hl, wEnemyBattleStatus1
ld a, [hl]
- and 1 << Confused ; if mon hurts itself, clear every other status from wEnemyBattleStatus1
+ and 1 << CONFUSED ; if mon hurts itself, clear every other status from wEnemyBattleStatus1
ld [hl], a
ld hl, HurtItselfText
call PrintText
@@ -6212,7 +6212,7 @@ CheckEnemyStatusConditions:
ld hl, wEnemyBattleStatus1
ld a, [hl]
; clear bide, thrashing about, charging up, and multi-turn moves such as warp
- and $ff ^ ((1 << StoringEnergy) | (1 << ThrashingAbout) | (1 << ChargingUp) | (1 << UsingTrappingMove))
+ and $ff ^ ((1 << STORING_ENERGY) | (1 << THRASHING_ABOUT) | (1 << CHARGING_UP) | (1 << USING_TRAPPING_MOVE))
ld [hl], a
ld a, [wEnemyMoveEffect]
cp FLY_EFFECT
@@ -6230,7 +6230,7 @@ CheckEnemyStatusConditions:
jp .enemyReturnToHL ; if using a two-turn move, enemy needs to recharge the first turn
.checkIfUsingBide
ld hl, wEnemyBattleStatus1
- bit StoringEnergy, [hl] ; is mon using bide?
+ bit STORING_ENERGY, [hl] ; is mon using bide?
jr z, .checkIfThrashingAbout
xor a
ld [wEnemyMoveNum], a
@@ -6252,7 +6252,7 @@ CheckEnemyStatusConditions:
jp .enemyReturnToHL ; unless mon unleashes energy, can't move this turn
.unleashEnergy
ld hl, wEnemyBattleStatus1
- res StoringEnergy, [hl] ; not using bide any more
+ res STORING_ENERGY, [hl] ; not using bide any more
ld hl, UnleashedEnergyText
call PrintText
ld a, $1
@@ -6279,7 +6279,7 @@ CheckEnemyStatusConditions:
ld hl, handleIfEnemyMoveMissed ; skip damage calculation, DecrementPP and MoveHitTest
jp .enemyReturnToHL
.checkIfThrashingAbout
- bit ThrashingAbout, [hl] ; is mon using thrash or petal dance?
+ bit THRASHING_ABOUT, [hl] ; is mon using thrash or petal dance?
jr z, .checkIfUsingMultiturnMove
ld a, THRASH
ld [wEnemyMoveNum], a
@@ -6291,8 +6291,8 @@ CheckEnemyStatusConditions:
jp nz, .enemyReturnToHL
push hl
ld hl, wEnemyBattleStatus1
- res ThrashingAbout, [hl] ; mon is no longer using thrash or petal dance
- set Confused, [hl] ; mon is now confused
+ res THRASHING_ABOUT, [hl] ; mon is no longer using thrash or petal dance
+ set CONFUSED, [hl] ; mon is now confused
call BattleRandom
and $3
inc a
@@ -6301,7 +6301,7 @@ CheckEnemyStatusConditions:
pop hl ; skip DecrementPP
jp .enemyReturnToHL
.checkIfUsingMultiturnMove
- bit UsingTrappingMove, [hl] ; is mon using multi-turn move?
+ bit USING_TRAPPING_MOVE, [hl] ; is mon using multi-turn move?
jp z, .checkIfUsingRage
ld hl, AttackContinuesText
call PrintText
@@ -6313,7 +6313,7 @@ CheckEnemyStatusConditions:
jp .enemyReturnToHL
.checkIfUsingRage
ld a, [wEnemyBattleStatus2]
- bit UsingRage, a ; is mon using rage?
+ bit USING_RAGE, a ; is mon using rage?
jp z, .checkEnemyStatusConditionsDone ; if we made it this far, mon can move normally this turn
ld a, RAGE
ld [wd11e], a
@@ -6371,7 +6371,7 @@ LoadEnemyMonData:
ld [wd0b5], a
call GetMonHeader
ld a, [wEnemyBattleStatus3]
- bit Transformed, a ; is enemy mon transformed?
+ bit TRANSFORMED, a ; is enemy mon transformed?
ld hl, wTransformedEnemyMonOriginalDVs ; original DVs before transforming
ld a, [hli]
ld b, [hl]
@@ -6403,7 +6403,7 @@ LoadEnemyMonData:
cp $2 ; is it a trainer battle?
jr z, .copyHPAndStatusFromPartyData
ld a, [wEnemyBattleStatus3]
- bit Transformed, a ; is enemy mon transformed?
+ bit TRANSFORMED, a ; is enemy mon transformed?
jr nz, .copyTypes ; if transformed, jump
; if it's a wild mon and not transformed, init the current HP to max HP and the status to 0
ld a, [wEnemyMonMaxHP]
@@ -6982,7 +6982,7 @@ HandleExplodingAnimation:
ret nz
.isExplodingMove
ld a, [de]
- bit Invulnerable, a ; fly/dig
+ bit INVULNERABLE, a ; fly/dig
ret nz
ld a, [hli]
cp GHOST
@@ -6997,7 +6997,7 @@ HandleExplodingAnimation:
ld [wAnimationType], a
PlayMoveAnimation:
- ld [wAnimationID],a
+ ld [wAnimationID], a
call Delay3
predef MoveAnimation
callab Func_78e98
@@ -7125,8 +7125,8 @@ SleepEffect:
.sleepEffect
ld a, [bc]
- bit NeedsToRecharge, a ; does the target need to recharge? (hyper beam)
- res NeedsToRecharge, a ; target no longer needs to recharge
+ bit NEEDS_TO_RECHARGE, a ; does the target need to recharge? (hyper beam)
+ res NEEDS_TO_RECHARGE, a ; target no longer needs to recharge
ld [bc], a
jr nz, .setSleepCounter ; if the target had to recharge, all hit tests will be skipped
; including the event where the target already has another status
@@ -7186,16 +7186,16 @@ PoisonEffect:
ld de, wEnemyMoveEffect
.poisonEffect
call CheckTargetSubstitute
- jr nz, .noEffect ; can't posion a substitute target
+ jr nz, .noEffect ; can't poison a substitute target
ld a, [hli]
ld b, a
and a
jr nz, .noEffect ; miss if target is already statused
ld a, [hli]
- cp POISON ; can't posion a poison-type target
+ cp POISON ; can't poison a poison-type target
jr z, .noEffect
ld a, [hld]
- cp POISON ; can't posion a poison-type target
+ cp POISON ; can't poison a poison-type target
jr z, .noEffect
ld a, [de]
cp POISON_SIDE_EFFECT1
@@ -7235,7 +7235,7 @@ PoisonEffect:
.ok
cp TOXIC
jr nz, .normalPoison ; done if move is not Toxic
- set BadlyPoisoned, [hl] ; else set Toxic battstatus
+ set BADLY_POISONED, [hl] ; else set Toxic battstatus
xor a
ld [de], a
ld hl, BadlyPoisonedText
@@ -7288,7 +7288,7 @@ ExplodeEffect:
inc hl
ld [hl], a ; set mon's status to 0
ld a, [de]
- res Seeded, a ; clear mon's leech seed status
+ res SEEDED, a ; clear mon's leech seed status
ld [de], a
ret
@@ -7326,7 +7326,7 @@ FreezeBurnParalyzeEffect:
ld b, $1a ; 0x1A/0x100 or 26/256 = 10.2%~ chance
jr c, .next1 ; branch ahead if this is a 10% chance effect..
ld b, $4d ; else use 0x4D/0x100 or 77/256 = 30.1%~ chance
- sub a, $1e ; subtract $1E to map to equivalent 10% chance effects
+ sub $1e ; subtract $1E to map to equivalent 10% chance effects
.next1
push af
call BattleRandom ; get random 8bit value for probability test
@@ -7334,9 +7334,9 @@ FreezeBurnParalyzeEffect:
pop bc
ret nc ; do nothing if random value is >= 1A or 4D [no status applied]
ld a, b ; what type of effect is this?
- cp a, BURN_SIDE_EFFECT1
+ cp BURN_SIDE_EFFECT1
jr z, .burn1
- cp a, FREEZE_SIDE_EFFECT
+ cp FREEZE_SIDE_EFFECT
jr z, .freeze1
; .paralyze
ld a, 1 << PAR
@@ -7388,7 +7388,7 @@ FreezeBurnParalyzeEffect:
ld b, $1a
jr c, .next2
ld b, $4d
- sub a, $1e
+ sub $1e
.next2
push af
call BattleRandom
@@ -7396,9 +7396,9 @@ FreezeBurnParalyzeEffect:
pop bc
ret nc
ld a, b
- cp a, BURN_SIDE_EFFECT1
+ cp BURN_SIDE_EFFECT1
jr z, .burn2
- cp a, FREEZE_SIDE_EFFECT
+ cp FREEZE_SIDE_EFFECT
jr z, .freeze2
ld a, 1 << PAR
ld [wBattleMonStatus], a
@@ -7433,16 +7433,16 @@ FrozenText:
CheckDefrost:
; any fire-type move that has a chance inflict burn (all but Fire Spin) will defrost a frozen target
- and a, 1 << FRZ ; are they frozen?
+ and 1 << FRZ ; are they frozen?
ret z ; return if so
ld a, [H_WHOSETURN]
and a
jr nz, .opponent
;player [attacker]
ld a, [wPlayerMoveType]
- sub a, FIRE
+ sub FIRE
ret nz ; return if type of move used isn't fire
- ld [wEnemyMonStatus], a ; set opponent status to 00 ["defrost" a frozen monster]
+ ld [wEnemyMonStatus], a ; set opponent status to 00 ["defrost" a frozen monster]
ld hl, wEnemyMon1Status
ld a, [wEnemyMonPartyPos]
ld bc, wEnemyMon2 - wEnemyMon1
@@ -7452,8 +7452,8 @@ CheckDefrost:
ld hl, FireDefrostedText
jr .common
.opponent
- ld a, [wEnemyMoveType] ; same as above with addresses swapped
- sub a, FIRE
+ ld a, [wEnemyMoveType] ; same as above with addresses swapped
+ sub FIRE
ret nz
ld [wBattleMonStatus], a
ld hl, wPartyMon1Status
@@ -7594,7 +7594,7 @@ UpdateStatDone:
jr nz, .notMinimize
; if a substitute is up, slide off the substitute and show the mon pic before
; playing the minimize animation
- bit HasSubstituteUp, [hl]
+ bit HAS_SUBSTITUTE_UP, [hl]
push af
push bc
push de
@@ -7650,7 +7650,7 @@ MonsStatsRoseText:
ret
GreatlyRoseText:
- db $0a
+ TX_DELAY
TX_FAR _GreatlyRoseText
; fallthrough
RoseText:
@@ -7697,11 +7697,11 @@ StatModifierDownEffect:
and a
jp nz, MoveMissed
ld a, [bc]
- bit Invulnerable, a ; fly/dig
+ bit INVULNERABLE, a ; fly/dig
jp nz, MoveMissed
ld a, [de]
sub ATTACK_DOWN1_EFFECT
- cp EVASION_DOWN1_EFFECT + $3 - ATTACK_DOWN1_EFFECT ; covers al -1 effects
+ cp EVASION_DOWN1_EFFECT + $3 - ATTACK_DOWN1_EFFECT ; covers all -1 effects
jr c, .decrementStatMod
sub ATTACK_DOWN2_EFFECT - ATTACK_DOWN1_EFFECT ; map -2 effects to corresponding -1 effect
.decrementStatMod
@@ -7855,7 +7855,7 @@ MonsStatsFellText:
ret
GreatlyFellText:
- db $0a
+ TX_DELAY
TX_FAR _GreatlyFellText
; fallthrough
FellText:
@@ -7913,7 +7913,7 @@ BideEffect:
ld de, wEnemyBideAccumulatedDamage
ld bc, wEnemyNumAttacksLeft
.bideEffect
- set StoringEnergy, [hl] ; mon is now using bide
+ set STORING_ENERGY, [hl] ; mon is now using bide
xor a
ld [de], a
inc de
@@ -7938,7 +7938,7 @@ ThrashPetalDanceEffect:
ld hl, wEnemyBattleStatus1
ld de, wEnemyNumAttacksLeft
.thrashPetalDanceEffect
- set ThrashingAbout, [hl] ; mon is now using thrash/petal dance
+ set THRASHING_ABOUT, [hl] ; mon is now using thrash/petal dance
call BattleRandom
and $1
inc a
@@ -7968,9 +7968,8 @@ SwitchAndTeleportEffect:
cp c ; get a random number between 0 and c
jr nc, .rejectionSampleLoop1
srl b
- srl b ; b = enemy level * 4
-; bug: does not account for overflow, so levels above 63 can lead to erroneousness results
- cp b ; is rand[0, playerLevel + enemyLevel] > enemyLevel?
+ srl b ; b = enemyLevel / 4
+ cp b ; is rand[0, playerLevel + enemyLevel) >= (enemyLevel / 4)?
jr nc, .playerMoveWasSuccessful ; if so, allow teleporting
ld c, 50
call DelayFrames
@@ -8075,9 +8074,9 @@ TwoToFiveAttacksEffect:
ld de, wEnemyNumAttacksLeft
ld bc, wEnemyNumHits
.twoToFiveAttacksEffect
- bit AttackingMultipleTimes, [hl] ; is mon attacking multiple times?
+ bit ATTACKING_MULTIPLE_TIMES, [hl] ; is mon attacking multiple times?
ret nz
- set AttackingMultipleTimes, [hl] ; mon is now attacking multiple times
+ set ATTACKING_MULTIPLE_TIMES, [hl] ; mon is now attacking multiple times
ld hl, wPlayerMoveEffect
ld a, [H_WHOSETURN]
and a
@@ -8133,7 +8132,7 @@ FlinchSideEffect:
call BattleRandom
cp b
ret nc
- set Flinched, [hl] ; set mon's status to flinching
+ set FLINCHED, [hl] ; set mon's status to flinching
call ClearHyperBeam
ret
@@ -8151,18 +8150,18 @@ ChargeEffect:
ld de, wEnemyMoveEffect
ld b, ANIM_AF
.chargeEffect
- set ChargingUp, [hl]
+ set CHARGING_UP, [hl]
ld a, [de]
dec de ; de contains enemy or player MOVENUM
cp FLY_EFFECT
jr nz, .notFly
- set Invulnerable, [hl] ; mon is now invulnerable to typical attacks (fly/dig)
+ set INVULNERABLE, [hl] ; mon is now invulnerable to typical attacks (fly/dig)
ld b, TELEPORT ; load Teleport's animation
.notFly
ld a, [de]
cp DIG
jr nz, .notDigOrFly
- set Invulnerable, [hl] ; mon is now invulnerable to typical attacks (fly/dig)
+ set INVULNERABLE, [hl] ; mon is now invulnerable to typical attacks (fly/dig)
ld b, ANIM_C0
.notDigOrFly
push de
@@ -8170,7 +8169,7 @@ ChargeEffect:
inc hl ; battle status 2
push hl
ld a, [hl]
- bit HasSubstituteUp, a
+ bit HAS_SUBSTITUTE_UP, a
ld hl, HideSubstituteShowMonAnim
ld b, BANK(HideSubstituteShowMonAnim)
call nz, Bankswitch
@@ -8181,7 +8180,7 @@ ChargeEffect:
ld a, b
call PlayBattleAnimation
ld a, [hl]
- bit HasSubstituteUp, a
+ bit HAS_SUBSTITUTE_UP, a
ld hl, ReshowSubstituteAnim
ld b, BANK(ReshowSubstituteAnim)
call nz, Bankswitch
@@ -8248,11 +8247,11 @@ TrappingEffect:
ld hl, wEnemyBattleStatus1
ld de, wEnemyNumAttacksLeft
.trappingEffect
- bit UsingTrappingMove, [hl]
+ bit USING_TRAPPING_MOVE, [hl]
ret nz
call ClearHyperBeam ; since this effect is called before testing whether the move will hit,
; the target won't need to recharge even if the trapping move missed
- set UsingTrappingMove, [hl] ; mon is now using a trapping move
+ set USING_TRAPPING_MOVE, [hl] ; mon is now using a trapping move
call BattleRandom ; 3/8 chance for 2 and 3 attacks, and 1/8 chance for 4 and 5 attacks
and $3
cp $2
@@ -8298,9 +8297,9 @@ ConfusionSideEffectSuccess:
ld bc, wPlayerConfusedCounter
ld a, [wEnemyMoveEffect]
.confuseTarget
- bit Confused, [hl] ; is mon confused?
+ bit CONFUSED, [hl] ; is mon confused?
jr nz, ConfusionEffectFailed
- set Confused, [hl] ; mon is now confused
+ set CONFUSED, [hl] ; mon is now confused
push af
call BattleRandom
and $3
@@ -8337,7 +8336,7 @@ HyperBeamEffect:
jr z, .hyperBeamEffect
ld hl, wEnemyBattleStatus2
.hyperBeamEffect
- set NeedsToRecharge, [hl] ; mon now needs to recharge
+ set NEEDS_TO_RECHARGE, [hl] ; mon now needs to recharge
ret
ClearHyperBeam:
@@ -8348,7 +8347,7 @@ ClearHyperBeam:
jr z, .playerTurn
ld hl, wPlayerBattleStatus2
.playerTurn
- res NeedsToRecharge, [hl] ; mon no longer needs to recharge
+ res NEEDS_TO_RECHARGE, [hl] ; mon no longer needs to recharge
pop hl
ret
@@ -8359,7 +8358,7 @@ RageEffect:
jr z, .player
ld hl, wEnemyBattleStatus2
.player
- set UsingRage, [hl] ; mon is now in "rage" mode
+ set USING_RAGE, [hl] ; mon is now in "rage" mode
ret
MimicEffect:
@@ -8380,7 +8379,7 @@ MimicEffect:
ld hl, wEnemyMonMoves
ld a, [wEnemyBattleStatus1]
.enemyTurn
- bit Invulnerable, a
+ bit INVULNERABLE, a
jr nz, .mimicMissed
.getRandomMove
push hl
@@ -8404,7 +8403,7 @@ MimicEffect:
jr .playerTurn
.letPlayerChooseMove
ld a, [wEnemyBattleStatus1]
- bit Invulnerable, a
+ bit INVULNERABLE, a
jr nz, .mimicMissed
ld a, [wCurrentMenuItem]
push af
@@ -8603,7 +8602,7 @@ CheckTargetSubstitute:
jr z, .next1
ld hl, wPlayerBattleStatus2
.next1
- bit HasSubstituteUp, [hl]
+ bit HAS_SUBSTITUTE_UP, [hl]
pop hl
ret
diff --git a/engine/battle/decrement_pp.asm b/engine/battle/decrement_pp.asm
index e23a85ba..b7c428f7 100644
--- a/engine/battle/decrement_pp.asm
+++ b/engine/battle/decrement_pp.asm
@@ -1,15 +1,15 @@
DecrementPP:
; after using a move, decrement pp in battle and (if not transformed?) in party
ld a, [de]
- cp a, STRUGGLE
+ cp STRUGGLE
ret z ; if the pokemon is using "struggle", there's nothing to do
; we don't decrement PP for "struggle"
ld hl, wPlayerBattleStatus1
ld a, [hli] ; load the wPlayerBattleStatus1 pokemon status flags and increment hl to load the
; wPlayerBattleStatus2 status flags later
- and a, (1 << StoringEnergy) | (1 << ThrashingAbout) | (1 << AttackingMultipleTimes)
+ and (1 << STORING_ENERGY) | (1 << THRASHING_ABOUT) | (1 << ATTACKING_MULTIPLE_TIMES)
ret nz ; if any of these statuses are true, don't decrement PP
- bit UsingRage, [hl]
+ bit USING_RAGE, [hl]
ret nz ; don't decrement PP either if Pokemon is using Rage
ld hl, wBattleMonPP ; PP of first move (in battle)
@@ -18,7 +18,7 @@ DecrementPP:
; decrement PP in the party struct
ld a, [wPlayerBattleStatus3]
- bit Transformed, a
+ bit TRANSFORMED, a
ret nz ; Return if transformed. Pokemon Red stores the "current pokemon's" PP
; separately from the "Pokemon in your party's" PP. This is
; duplication -- in all cases *other* than Pokemon with Transform.
diff --git a/engine/battle/display_effectiveness.asm b/engine/battle/display_effectiveness.asm
index 85f2bc3e..1bf14460 100644
--- a/engine/battle/display_effectiveness.asm
+++ b/engine/battle/display_effectiveness.asm
@@ -1,7 +1,7 @@
DisplayEffectiveness:
ld a, [wDamageMultipliers]
- and a, $7F
- cp a, $0A
+ and $7F
+ cp $0A
ret z
ld hl, SuperEffectiveText
jr nc, .done
diff --git a/engine/battle/draw_hud_pokeball_gfx.asm b/engine/battle/draw_hud_pokeball_gfx.asm
index 8f9dce46..96294774 100644
--- a/engine/battle/draw_hud_pokeball_gfx.asm
+++ b/engine/battle/draw_hud_pokeball_gfx.asm
@@ -194,7 +194,7 @@ SetupPlayerAndEnemyPokeballs:
ld hl, wOAMBuffer + $18
jp WritePokeballOAMData
-; four tiles: pokeball, black pokeball (status ailment), crossed out pokeball (faited) and pokeball slot (no mon)
+; four tiles: pokeball, black pokeball (status ailment), crossed out pokeball (fainted) and pokeball slot (no mon)
PokeballTileGraphics::
INCBIN "gfx/pokeball.2bpp"
PokeballTileGraphicsEnd:
diff --git a/engine/battle/end_of_battle.asm b/engine/battle/end_of_battle.asm
index 47c9fa5d..5c0c3991 100755
--- a/engine/battle/end_of_battle.asm
+++ b/engine/battle/end_of_battle.asm
@@ -50,7 +50,7 @@ EndOfBattle:
.resetVariables
xor a
ld [wLowHealthAlarm], a ;disable low health alarm
- ld [wChannelSoundIDs + CH4], a
+ ld [wChannelSoundIDs + Ch5], a
ld [wIsInBattle], a
ld [wBattleType], a
ld [wMoveMissed], a
diff --git a/engine/battle/experience.asm b/engine/battle/experience.asm
index 9946c6c6..722685c2 100644
--- a/engine/battle/experience.asm
+++ b/engine/battle/experience.asm
@@ -119,11 +119,11 @@ GainExperience:
ld d, MAX_LEVEL
callab CalcExperience ; get max exp
; compare max exp with current exp
- ld a, [$ff96]
+ ld a, [hExperience]
ld b, a
- ld a, [$ff97]
+ ld a, [hExperience + 1]
ld c, a
- ld a, [$ff98]
+ ld a, [hExperience + 2]
ld d, a
pop hl
ld a, [hld]
@@ -378,5 +378,5 @@ ExpPointsText:
GrewLevelText:
TX_FAR _GrewLevelText
- db $0b
+ TX_SFX_LEVEL_UP
db "@"
diff --git a/engine/battle/init_battle_variables.asm b/engine/battle/init_battle_variables.asm
index bdd5d8f4..7bc912d2 100644
--- a/engine/battle/init_battle_variables.asm
+++ b/engine/battle/init_battle_variables.asm
@@ -30,7 +30,7 @@ InitBattleVariables:
ld a, [wCurMap]
cp SAFARI_ZONE_EAST
jr c, .notSafariBattle
- cp SAFARI_ZONE_REST_HOUSE_1
+ cp SAFARI_ZONE_CENTER_REST_HOUSE
jr nc, .notSafariBattle
ld a, BATTLE_TYPE_SAFARI
ld [wBattleType], a
diff --git a/engine/battle/moveEffects/conversion_effect.asm b/engine/battle/moveEffects/conversion_effect.asm
index 9c347876..f23c3d70 100644
--- a/engine/battle/moveEffects/conversion_effect.asm
+++ b/engine/battle/moveEffects/conversion_effect.asm
@@ -11,7 +11,7 @@ ConversionEffect_:
pop de
ld a, [wPlayerBattleStatus1]
.conversionEffect
- bit Invulnerable, a ; is mon immune to typical attacks (dig/fly)
+ bit INVULNERABLE, a ; is mon immune to typical attacks (dig/fly)
jr nz, PrintButItFailedText
; copy target's types to user
ld a, [hli]
diff --git a/engine/battle/moveEffects/focus_energy_effect.asm b/engine/battle/moveEffects/focus_energy_effect.asm
index 9ba0ade0..16dad7bb 100644
--- a/engine/battle/moveEffects/focus_energy_effect.asm
+++ b/engine/battle/moveEffects/focus_energy_effect.asm
@@ -5,9 +5,9 @@ FocusEnergyEffect_:
jr z, .notEnemy
ld hl, wEnemyBattleStatus2
.notEnemy
- bit GettingPumped, [hl] ; is mon already using focus energy?
+ bit GETTING_PUMPED, [hl] ; is mon already using focus energy?
jr nz, .alreadyUsing
- set GettingPumped, [hl] ; mon is now using focus energy
+ set GETTING_PUMPED, [hl] ; mon is now using focus energy
callab PlayCurrentMoveAnimation
ld hl, GettingPumpedText
jp PrintText
@@ -17,6 +17,6 @@ FocusEnergyEffect_:
jpab PrintButItFailedText_
GettingPumpedText:
- db $0a
+ TX_DELAY
TX_FAR _GettingPumpedText
db "@"
diff --git a/engine/battle/moveEffects/haze_effect.asm b/engine/battle/moveEffects/haze_effect.asm
index bd20f231..47723ba2 100644
--- a/engine/battle/moveEffects/haze_effect.asm
+++ b/engine/battle/moveEffects/haze_effect.asm
@@ -12,6 +12,7 @@ HazeEffect_:
ld hl, wEnemyMonUnmodifiedAttack
ld de, wEnemyMonAttack
call ResetStats
+; cure non-volatile status, but only for the target
ld hl, wEnemyMonStatus
ld de, wEnemySelectedMove
ld a, [H_WHOSETURN]
@@ -46,15 +47,14 @@ HazeEffect_:
jp PrintText
CureVolatileStatuses:
-; only cures statuses of the Pokemon not using Haze
- res Confused, [hl]
+ res CONFUSED, [hl]
inc hl ; BATTSTATUS2
ld a, [hl]
- ; clear UsingXAccuracy, ProtectedByMist, GettingPumped, and Seeded statuses
- and $ff ^((1 << UsingXAccuracy) | (1 << ProtectedByMist) | (1 << GettingPumped) | (1 << Seeded))
+ ; clear USING_X_ACCURACY, PROTECTED_BY_MIST, GETTING_PUMPED, and SEEDED statuses
+ and $ff ^((1 << USING_X_ACCURACY) | (1 << PROTECTED_BY_MIST) | (1 << GETTING_PUMPED) | (1 << SEEDED))
ld [hli], a ; BATTSTATUS3
ld a, [hl]
- and %11110000 | (1 << Transformed) ; clear Bad Poison, Reflect and Light Screen statuses
+ and %11110000 | (1 << TRANSFORMED) ; clear Bad Poison, Reflect and Light Screen statuses
ld [hl], a
ret
diff --git a/engine/battle/moveEffects/heal_effect.asm b/engine/battle/moveEffects/heal_effect.asm
index 377c14c4..97afa394 100644
--- a/engine/battle/moveEffects/heal_effect.asm
+++ b/engine/battle/moveEffects/heal_effect.asm
@@ -76,7 +76,7 @@ HealEffect_:
ld a, [de]
sbc [hl]
jr c, .playAnim
-; copy max HP to current HP if an overflow ocurred
+; copy max HP to current HP if an overflow occurred
ld a, [hli]
ld [de], a
ld [wHPBarNewHP+1], a
diff --git a/engine/battle/moveEffects/leech_seed_effect.asm b/engine/battle/moveEffects/leech_seed_effect.asm
index 0f3a2666..f4d3ee9c 100644
--- a/engine/battle/moveEffects/leech_seed_effect.asm
+++ b/engine/battle/moveEffects/leech_seed_effect.asm
@@ -19,9 +19,9 @@ LeechSeedEffect_:
ld a, [de]
cp GRASS
jr z, .moveMissed
- bit Seeded, [hl]
+ bit SEEDED, [hl]
jr nz, .moveMissed
- set Seeded, [hl]
+ set SEEDED, [hl]
callab PlayCurrentMoveAnimation
ld hl, WasSeededText
jp PrintText
diff --git a/engine/battle/moveEffects/mist_effect.asm b/engine/battle/moveEffects/mist_effect.asm
index b92777de..65070a3e 100644
--- a/engine/battle/moveEffects/mist_effect.asm
+++ b/engine/battle/moveEffects/mist_effect.asm
@@ -5,9 +5,9 @@ MistEffect_:
jr z, .mistEffect
ld hl, wEnemyBattleStatus2
.mistEffect
- bit ProtectedByMist, [hl] ; is mon protected by mist?
+ bit PROTECTED_BY_MIST, [hl] ; is mon protected by mist?
jr nz, .mistAlreadyInUse
- set ProtectedByMist, [hl] ; mon is now protected by mist
+ set PROTECTED_BY_MIST, [hl] ; mon is now protected by mist
callab PlayCurrentMoveAnimation
ld hl, ShroudedInMistText
jp PrintText
diff --git a/engine/battle/moveEffects/recoil_effect.asm b/engine/battle/moveEffects/recoil_effect.asm
index 7fc90c44..0f2f087b 100644
--- a/engine/battle/moveEffects/recoil_effect.asm
+++ b/engine/battle/moveEffects/recoil_effect.asm
@@ -25,7 +25,7 @@ RecoilEffect_:
jr nz, .updateHP
inc c ; minimum recoil damage is 1
.updateHP
-; substract HP from user due to the recoil damage
+; subtract HP from user due to the recoil damage
ld a, [hli]
ld [wHPBarMaxHP+1], a
ld a, [hl]
diff --git a/engine/battle/moveEffects/reflect_light_screen_effect.asm b/engine/battle/moveEffects/reflect_light_screen_effect.asm
index f2165956..e5748b19 100644
--- a/engine/battle/moveEffects/reflect_light_screen_effect.asm
+++ b/engine/battle/moveEffects/reflect_light_screen_effect.asm
@@ -10,15 +10,15 @@ ReflectLightScreenEffect_:
ld a, [de]
cp LIGHT_SCREEN_EFFECT
jr nz, .reflect
- bit HasLightScreenUp, [hl] ; is mon already protected by light screen?
+ bit HAS_LIGHT_SCREEN_UP, [hl] ; is mon already protected by light screen?
jr nz, .moveFailed
- set HasLightScreenUp, [hl] ; mon is now protected by light screen
+ set HAS_LIGHT_SCREEN_UP, [hl] ; mon is now protected by light screen
ld hl, LightScreenProtectedText
jr .playAnim
.reflect
- bit HasReflectUp, [hl] ; is mon already protected by reflect?
+ bit HAS_REFLECT_UP, [hl] ; is mon already protected by reflect?
jr nz, .moveFailed
- set HasReflectUp, [hl] ; mon is now protected by reflect
+ set HAS_REFLECT_UP, [hl] ; mon is now protected by reflect
ld hl, ReflectGainedArmorText
.playAnim
push hl
diff --git a/engine/battle/moveEffects/substitute_effect.asm b/engine/battle/moveEffects/substitute_effect.asm
index 03314ebf..b5d006fc 100644
--- a/engine/battle/moveEffects/substitute_effect.asm
+++ b/engine/battle/moveEffects/substitute_effect.asm
@@ -12,7 +12,7 @@ SubstituteEffect_:
ld bc, wEnemyBattleStatus2
.notEnemy
ld a, [bc]
- bit HasSubstituteUp, a ; user already has substitute?
+ bit HAS_SUBSTITUTE_UP, a ; user already has substitute?
jr nz, .alreadyHasSubstitute
; quarter health to remove from user
; assumes max HP is 1023 or lower
@@ -37,13 +37,13 @@ SubstituteEffect_:
sbc 0
pop bc
jr c, .notEnoughHP ; underflow means user would be left with negative health
- ; bug: since it only brances on carry, it will possibly leave user with 0 HP
+ ; bug: since it only branches on carry, it will possibly leave user with 0 HP
.userHasZeroOrMoreHP
- ldi [hl], a ; save resulting HP after substraction into current HP
+ ldi [hl], a ; save resulting HP after subtraction into current HP
ld [hl], d
ld h, b
ld l, c
- set HasSubstituteUp, [hl]
+ set HAS_SUBSTITUTE_UP, [hl]
ld a, [wOptions]
bit 7, a ; battle animation is enabled?
ld hl, PlayCurrentMoveAnimation
diff --git a/engine/battle/moveEffects/transform_effect.asm b/engine/battle/moveEffects/transform_effect.asm
index 2906de11..ec07b303 100644
--- a/engine/battle/moveEffects/transform_effect.asm
+++ b/engine/battle/moveEffects/transform_effect.asm
@@ -12,7 +12,7 @@ TransformEffect_:
ld [wPlayerMoveListIndex], a
ld a, [wPlayerBattleStatus1]
.hitTest
- bit Invulnerable, a ; is mon invulnerable to typical attacks? (fly/dig)
+ bit INVULNERABLE, a ; is mon invulnerable to typical attacks? (fly/dig)
jp nz, .failed
push hl
push de
@@ -24,7 +24,7 @@ TransformEffect_:
ld hl, wEnemyBattleStatus2
.transformEffect
; animation(s) played are different if target has Substitute up
- bit HasSubstituteUp, [hl]
+ bit HAS_SUBSTITUTE_UP, [hl]
push af
ld hl, HideSubstituteShowMonAnim
ld b, BANK(HideSubstituteShowMonAnim)
@@ -44,7 +44,7 @@ TransformEffect_:
call nz, Bankswitch
pop bc
ld a, [bc]
- set Transformed, a ; mon is now Transformed
+ set TRANSFORMED, a ; mon is now transformed
ld [bc], a
pop de
pop hl
diff --git a/engine/battle/read_trainer_party.asm b/engine/battle/read_trainer_party.asm
index 3f10a85d..b4ee46a0 100755
--- a/engine/battle/read_trainer_party.asm
+++ b/engine/battle/read_trainer_party.asm
@@ -1,43 +1,43 @@
ReadTrainer:
; don't change any moves in a link battle
- ld a,[wLinkState]
+ ld a, [wLinkState]
and a
ret nz
; set [wEnemyPartyCount] to 0, [wEnemyPartyMons] to FF
; XXX first is total enemy pokemon?
; XXX second is species of first pokemon?
- ld hl,wEnemyPartyCount
+ ld hl, wEnemyPartyCount
xor a
- ld [hli],a
+ ld [hli], a
dec a
- ld [hl],a
+ ld [hl], a
; get the pointer to trainer data for this class
- ld a,[wTrainerClass] ; get trainer class
+ ld a, [wTrainerClass] ; get trainer class
dec a
add a
- ld hl,TrainerDataPointers
- ld c,a
- ld b,0
- add hl,bc ; hl points to trainer class
- ld a,[hli]
- ld h,[hl]
- ld l,a
- ld a,[wTrainerNo]
- ld b,a
+ ld hl, TrainerDataPointers
+ ld c, a
+ ld b, 0
+ add hl, bc ; hl points to trainer class
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wTrainerNo]
+ ld b, a
; At this point b contains the trainer number,
; and hl points to the trainer class.
; Our next task is to iterate through the trainers,
; decrementing b each time, until we get to the right one.
.outer
dec b
- jr z,.IterateTrainer
+ jr z, .IterateTrainer
.inner
- ld a,[hli]
+ ld a, [hli]
and a
- jr nz,.inner
+ jr nz, .inner
jr .outer
; if the first byte of trainer data is FF,
@@ -46,17 +46,17 @@ ReadTrainer:
; - if [wLoneAttackNo] != 0, one pokemon on the team has a special move
; else the first byte is the level of every pokemon on the team
.IterateTrainer
- ld a,[hli]
+ ld a, [hli]
cp $FF ; is the trainer special?
- jr z,.SpecialTrainer ; if so, check for special moves
- ld [wCurEnemyLVL],a
+ jr z, .SpecialTrainer ; if so, check for special moves
+ ld [wCurEnemyLVL], a
.LoopTrainerData
- ld a,[hli]
+ ld a, [hli]
and a ; have we reached the end of the trainer data?
jp z, .AddAdditionalMoveData
- ld [wcf91],a ; write species somewhere (XXX why?)
- ld a,ENEMY_PARTY_DATA
- ld [wMonDataLocation],a
+ ld [wcf91], a ; write species somewhere (XXX why?)
+ ld a, ENEMY_PARTY_DATA
+ ld [wMonDataLocation], a
push hl
call AddPartyMon
pop hl
@@ -66,14 +66,14 @@ ReadTrainer:
; - each pokemon has a specific level
; (as opposed to the whole team being of the same level)
; - if [wLoneAttackNo] != 0, one pokemon on the team has a special move
- ld a,[hli]
+ ld a, [hli]
and a ; have we reached the end of the trainer data?
- jr z,.AddAdditionalMoveData
- ld [wCurEnemyLVL],a
- ld a,[hli]
- ld [wcf91],a
- ld a,ENEMY_PARTY_DATA
- ld [wMonDataLocation],a
+ jr z, .AddAdditionalMoveData
+ ld [wCurEnemyLVL], a
+ ld a, [hli]
+ ld [wcf91], a
+ ld a, ENEMY_PARTY_DATA
+ ld [wMonDataLocation], a
push hl
call AddPartyMon
pop hl
@@ -123,23 +123,23 @@ ReadTrainer:
.FinishUp
; clear wAmountMoneyWon addresses
xor a
- ld de,wAmountMoneyWon
- ld [de],a
+ ld de, wAmountMoneyWon
+ ld [de], a
inc de
- ld [de],a
+ ld [de], a
inc de
- ld [de],a
- ld a,[wCurEnemyLVL]
- ld b,a
+ ld [de], a
+ ld a, [wCurEnemyLVL]
+ ld b, a
.LastLoop
; update wAmountMoneyWon addresses (money to win) based on enemy's level
- ld hl,wTrainerBaseMoney + 1
- ld c,2 ; wAmountMoneyWon is a 3-byte number
+ ld hl, wTrainerBaseMoney + 1
+ ld c, 2 ; wAmountMoneyWon is a 3-byte number
push bc
predef AddBCDPredef
pop bc
inc de
inc de
dec b
- jr nz,.LastLoop ; repeat wCurEnemyLVL times
+ jr nz, .LastLoop ; repeat wCurEnemyLVL times
ret
diff --git a/engine/battle/safari_zone.asm b/engine/battle/safari_zone.asm
index c6c0fa80..88064f9a 100755
--- a/engine/battle/safari_zone.asm
+++ b/engine/battle/safari_zone.asm
@@ -19,7 +19,7 @@ PrintSafariZoneBattleText:
ld [wd0b5], a
call GetMonHeader
ld a, [wMonHCatchRate]
- ld [wEnemyMonCatchRate], a
+ ld [wEnemyMonActualCatchRate], a
pop hl
.asm_4138
push hl
diff --git a/engine/battle/save_trainer_name.asm b/engine/battle/save_trainer_name.asm
index 7e2c911c..49d0429f 100644
--- a/engine/battle/save_trainer_name.asm
+++ b/engine/battle/save_trainer_name.asm
@@ -1,21 +1,21 @@
SaveTrainerName:
- ld hl,TrainerNamePointers
- ld a,[wTrainerClass]
+ ld hl, TrainerNamePointers
+ ld a, [wTrainerClass]
dec a
- ld c,a
- ld b,0
- add hl,bc
- add hl,bc
- ld a,[hli]
- ld h,[hl]
- ld l,a
- ld de,wcd6d
+ ld c, a
+ ld b, 0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, wcd6d
.CopyCharacter
- ld a,[hli]
- ld [de],a
+ ld a, [hli]
+ ld [de], a
inc de
cp "@"
- jr nz,.CopyCharacter
+ jr nz, .CopyCharacter
ret
TrainerNamePointers:
diff --git a/engine/battle/trainer_ai.asm b/engine/battle/trainer_ai.asm
index ddaf1350..c8fdfb29 100644
--- a/engine/battle/trainer_ai.asm
+++ b/engine/battle/trainer_ai.asm
@@ -51,7 +51,7 @@ AIEnemyTrainerChooseMoves:
ld l, a
ld de, .nextMoveChoiceModification ; set return address
push de
- jp hl ; execute modification function
+ jp hl ; execute modification function
.loopFindMinimumEntries ; all entries will be decremented sequentially until one of them is zero
ld hl, wBuffer ; temp move selection array
ld de, wEnemyMonMoves ; enemy moves
@@ -114,7 +114,7 @@ AIMoveChoiceModification1:
ld a, [wBattleMonStatus]
and a
ret z ; return if no status ailment on player's mon
- ld hl, wBuffer - 1 ; temp move selection array (-1 byte offest)
+ ld hl, wBuffer - 1 ; temp move selection array (-1 byte offset)
ld de, wEnemyMonMoves ; enemy moves
ld b, NUM_MOVES + 1
.nextMove
@@ -154,7 +154,7 @@ StatusAilmentMoveEffects:
; slightly encourage moves with specific effects.
; in particular, stat-modifying moves and other move effects
-; that fall in-bewteen
+; that fall in-between
AIMoveChoiceModification2:
ld a, [wAILayer2Encouragement]
cp $1
@@ -212,7 +212,7 @@ AIMoveChoiceModification3:
cp $10
jr z, .nextMove
jr c, .notEffectiveMove
- dec [hl] ; sligthly encourage this move
+ dec [hl] ; slightly encourage this move
jr .nextMove
.notEffectiveMove ; discourages non-effective moves if better moves are available
push hl
@@ -253,7 +253,7 @@ AIMoveChoiceModification3:
pop hl
and a
jr z, .nextMove
- inc [hl] ; sligthly discourage this move
+ inc [hl] ; slightly discourage this move
jr .nextMove
AIMoveChoiceModification4:
ret
@@ -263,10 +263,10 @@ ReadMove:
push de
push bc
dec a
- ld hl,Moves
- ld bc,MoveEnd - Moves
+ ld hl, Moves
+ ld bc, MoveEnd - Moves
call AddNTimes
- ld de,wEnemyMoveNum
+ ld de, wEnemyMoveNum
call CopyData
pop bc
pop de
@@ -337,40 +337,40 @@ INCLUDE "data/trainer_moves.asm"
INCLUDE "data/trainer_parties.asm"
TrainerAI:
- ld a,[wIsInBattle]
+ ld a, [wIsInBattle]
dec a
jr z, .done ; if not a trainer, we're done here
- ld a,[wLinkState]
+ ld a, [wLinkState]
cp LINK_STATE_BATTLING
jr z, .done ; if in a link battle, we're done as well
ld a, [wEnemyBattleStatus1]
- and 1 << ChargingUp | 1 << ThrashingAbout | 1 << StoringEnergy ; %10011
+ and 1 << CHARGING_UP | 1 << THRASHING_ABOUT | 1 << STORING_ENERGY ; %10011
jr nz, .done ; don't follow trainer ai if opponent is in a locked state
ld a, [wEnemyBattleStatus2]
- and 1 << UsingRage ; %1000000
+ and 1 << USING_RAGE ; %1000000
jr nz, .done ; don't follow trainer ai if opponent is locked in rage
; note that this doesn't check for hyper beam recharge which can cause problems
ld a,[wTrainerClass] ; what trainer class is this?
dec a
- ld c,a
- ld b,0
- ld hl,TrainerAIPointers
- add hl,bc
- add hl,bc
- add hl,bc
- ld a,[wAICount]
+ ld c, a
+ ld b, 0
+ ld hl, TrainerAIPointers
+ add hl, bc
+ add hl, bc
+ add hl, bc
+ ld a, [wAICount]
and a
jr z, .done; if no AI uses left, we're done here
inc hl
inc a
- jr nz,.getpointer
+ jr nz, .getpointer
dec hl
- ld a,[hli]
- ld [wAICount],a
+ ld a, [hli]
+ ld [wAICount], a
.getpointer
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
call Random
jp hl
.done
@@ -451,17 +451,17 @@ CooltrainerMAI:
CooltrainerFAI:
cp 25 percent + 1
- ld a,10
+ ld a, 10
call AICheckIfHPBelowFraction
- jp c,AIUseHyperPotion
- ld a,5
+ jp c, AIUseHyperPotion
+ ld a, 5
call AICheckIfHPBelowFraction
ret nc
jp AISwitchIfEnoughMons
BrockAI:
; if his active monster has a status condition, use a full heal
- ld a,[wEnemyMonStatus]
+ ld a, [wEnemyMonStatus]
and a
ret z
jp AIUseFullHeal
@@ -479,7 +479,7 @@ LtSurgeAI:
ErikaAI:
cp 50 percent + 1
ret nc
- ld a,10
+ ld a, 10
call AICheckIfHPBelowFraction
ret nc
jp AIUseSuperPotion
@@ -492,7 +492,7 @@ KogaAI:
BlaineAI:
cp 25 percent + 1
ret nc
- ld a,10
+ ld a, 10
call AICheckIfHPBelowFraction
ret nc
jp AIUseSuperPotion
@@ -505,7 +505,7 @@ SabrinaAI:
Sony2AI:
cp 13 percent - 1
ret nc
- ld a,5
+ ld a, 5
call AICheckIfHPBelowFraction
ret nc
jp AIUsePotion
@@ -513,7 +513,7 @@ Sony2AI:
Sony3AI:
cp 13 percent - 1
ret nc
- ld a,5
+ ld a, 5
call AICheckIfHPBelowFraction
ret nc
jp AIUseFullRestore
@@ -521,7 +521,7 @@ Sony3AI:
LoreleiAI:
cp 50 percent + 1
ret nc
- ld a,5
+ ld a, 5
call AICheckIfHPBelowFraction
ret nc
jp AIUseSuperPotion
@@ -533,10 +533,10 @@ BrunoAI:
AgathaAI:
cp 8 percent
- jp c,AISwitchIfEnoughMons
+ jp c, AISwitchIfEnoughMons
cp 50 percent + 1
ret nc
- ld a,4
+ ld a, 4
call AICheckIfHPBelowFraction
ret nc
jp AIUseSuperPotion
@@ -544,7 +544,7 @@ AgathaAI:
LanceAI:
cp 50 percent + 1
ret nc
- ld a,5
+ ld a, 5
call AICheckIfHPBelowFraction
ret nc
jp AIUseHyperPotion
@@ -556,133 +556,133 @@ GenericAI:
; end of individual trainer AI routines
DecrementAICount:
- ld hl,wAICount
+ ld hl, wAICount
dec [hl]
scf
ret
AIPlayRestoringSFX:
- ld a,SFX_HEAL_AILMENT
+ ld a, SFX_HEAL_AILMENT
jp PlaySoundWaitForCurrent
AIUseFullRestore:
call AICureStatus
- ld a,FULL_RESTORE
- ld [wAIItem],a
- ld de,wHPBarOldHP
- ld hl,wEnemyMonHP + 1
- ld a,[hld]
- ld [de],a
+ ld a, FULL_RESTORE
+ ld [wAIItem], a
+ ld de, wHPBarOldHP
+ ld hl, wEnemyMonHP + 1
+ ld a, [hld]
+ ld [de], a
inc de
- ld a,[hl]
- ld [de],a
+ ld a, [hl]
+ ld [de], a
inc de
- ld hl,wEnemyMonMaxHP + 1
- ld a,[hld]
- ld [de],a
+ ld hl, wEnemyMonMaxHP + 1
+ ld a, [hld]
+ ld [de], a
inc de
- ld [wHPBarMaxHP],a
- ld [wEnemyMonHP + 1],a
- ld a,[hl]
- ld [de],a
- ld [wHPBarMaxHP+1],a
- ld [wEnemyMonHP],a
+ ld [wHPBarMaxHP], a
+ ld [wEnemyMonHP + 1], a
+ ld a, [hl]
+ ld [de], a
+ ld [wHPBarMaxHP+1], a
+ ld [wEnemyMonHP], a
jr AIPrintItemUseAndUpdateHPBar
AIUsePotion:
; enemy trainer heals his monster with a potion
- ld a,POTION
- ld b,20
+ ld a, POTION
+ ld b, 20
jr AIRecoverHP
AIUseSuperPotion:
; enemy trainer heals his monster with a super potion
- ld a,SUPER_POTION
- ld b,50
+ ld a, SUPER_POTION
+ ld b, 50
jr AIRecoverHP
AIUseHyperPotion:
; enemy trainer heals his monster with a hyper potion
- ld a,HYPER_POTION
- ld b,200
+ ld a, HYPER_POTION
+ ld b, 200
; fallthrough
AIRecoverHP:
; heal b HP and print "trainer used $(a) on pokemon!"
- ld [wAIItem],a
- ld hl,wEnemyMonHP + 1
- ld a,[hl]
- ld [wHPBarOldHP],a
+ ld [wAIItem], a
+ ld hl, wEnemyMonHP + 1
+ ld a, [hl]
+ ld [wHPBarOldHP], a
add b
- ld [hld],a
- ld [wHPBarNewHP],a
- ld a,[hl]
- ld [wHPBarOldHP+1],a
- ld [wHPBarNewHP+1],a
- jr nc,.next
+ ld [hld], a
+ ld [wHPBarNewHP], a
+ ld a, [hl]
+ ld [wHPBarOldHP+1], a
+ ld [wHPBarNewHP+1], a
+ jr nc, .next
inc a
- ld [hl],a
- ld [wHPBarNewHP+1],a
+ ld [hl], a
+ ld [wHPBarNewHP+1], a
.next
inc hl
- ld a,[hld]
- ld b,a
- ld de,wEnemyMonMaxHP + 1
- ld a,[de]
+ ld a, [hld]
+ ld b, a
+ ld de, wEnemyMonMaxHP + 1
+ ld a, [de]
dec de
- ld [wHPBarMaxHP],a
+ ld [wHPBarMaxHP], a
sub b
- ld a,[hli]
- ld b,a
- ld a,[de]
- ld [wHPBarMaxHP+1],a
+ ld a, [hli]
+ ld b, a
+ ld a, [de]
+ ld [wHPBarMaxHP+1], a
sbc b
- jr nc,AIPrintItemUseAndUpdateHPBar
+ jr nc, AIPrintItemUseAndUpdateHPBar
inc de
- ld a,[de]
+ ld a, [de]
dec de
- ld [hld],a
- ld [wHPBarNewHP],a
- ld a,[de]
- ld [hl],a
- ld [wHPBarNewHP+1],a
+ ld [hld], a
+ ld [wHPBarNewHP], a
+ ld a, [de]
+ ld [hl], a
+ ld [wHPBarNewHP+1], a
; fallthrough
AIPrintItemUseAndUpdateHPBar:
call AIPrintItemUse_
coord hl, 2, 2
xor a
- ld [wHPBarType],a
+ ld [wHPBarType], a
predef UpdateHPBar2
jp DecrementAICount
AISwitchIfEnoughMons:
; enemy trainer switches if there are 3 or more unfainted mons in party
- ld a,[wEnemyPartyCount]
- ld c,a
- ld hl,wEnemyMon1HP
+ ld a, [wEnemyPartyCount]
+ ld c, a
+ ld hl, wEnemyMon1HP
- ld d,0 ; keep count of unfainted monsters
+ ld d, 0 ; keep count of unfainted monsters
; count how many monsters haven't fainted yet
.loop
- ld a,[hli]
- ld b,a
- ld a,[hld]
+ ld a, [hli]
+ ld b, a
+ ld a, [hld]
or b
- jr z,.Fainted ; has monster fainted?
+ jr z, .Fainted ; has monster fainted?
inc d
.Fainted
push bc
ld bc, wEnemyMon2 - wEnemyMon1
- add hl,bc
+ add hl, bc
pop bc
dec c
- jr nz,.loop
+ jr nz, .loop
- ld a,d ; how many available monsters are there?
+ ld a, d ; how many available monsters are there?
cp 2 ; don't bother if only 1 or 2
- jp nc,SwitchEnemyMon
+ jp nc, SwitchEnemyMon
and a
ret
@@ -690,14 +690,14 @@ SwitchEnemyMon:
; prepare to withdraw the active monster: copy hp, number, and status to roster
- ld a,[wEnemyMonPartyPos]
- ld hl,wEnemyMon1HP
- ld bc,wEnemyMon2 - wEnemyMon1
+ ld a, [wEnemyMonPartyPos]
+ ld hl, wEnemyMon1HP
+ ld bc, wEnemyMon2 - wEnemyMon1
call AddNTimes
- ld d,h
- ld e,l
- ld hl,wEnemyMonHP
- ld bc,4
+ ld d, h
+ ld e, l
+ ld hl, wEnemyMonHP
+ ld bc, 4
call CopyData
ld hl, AIBattleWithdrawText
@@ -705,13 +705,13 @@ SwitchEnemyMon:
; This wFirstMonsNotOutYet variable is abused to prevent the player from
; switching in a new mon in response to this switch.
- ld a,1
- ld [wFirstMonsNotOutYet],a
+ ld a, 1
+ ld [wFirstMonsNotOutYet], a
callab EnemySendOut
xor a
- ld [wFirstMonsNotOutYet],a
+ ld [wFirstMonsNotOutYet], a
- ld a,[wLinkState]
+ ld a, [wLinkState]
cp LINK_STATE_BATTLING
ret z
scf
@@ -724,120 +724,120 @@ AIBattleWithdrawText:
AIUseFullHeal:
call AIPlayRestoringSFX
call AICureStatus
- ld a,FULL_HEAL
+ ld a, FULL_HEAL
jp AIPrintItemUse
AICureStatus:
; cures the status of enemy's active pokemon
- ld a,[wEnemyMonPartyPos]
- ld hl,wEnemyMon1Status
- ld bc,wEnemyMon2 - wEnemyMon1
+ ld a, [wEnemyMonPartyPos]
+ ld hl, wEnemyMon1Status
+ ld bc, wEnemyMon2 - wEnemyMon1
call AddNTimes
xor a
- ld [hl],a ; clear status in enemy team roster
- ld [wEnemyMonStatus],a ; clear status of active enemy
- ld hl,wEnemyBattleStatus3
- res 0,[hl]
+ ld [hl], a ; clear status in enemy team roster
+ ld [wEnemyMonStatus], a ; clear status of active enemy
+ ld hl, wEnemyBattleStatus3
+ res 0, [hl]
ret
AIUseXAccuracy: ; unused
call AIPlayRestoringSFX
- ld hl,wEnemyBattleStatus2
- set 0,[hl]
- ld a,X_ACCURACY
+ ld hl, wEnemyBattleStatus2
+ set 0, [hl]
+ ld a, X_ACCURACY
jp AIPrintItemUse
AIUseGuardSpec:
call AIPlayRestoringSFX
- ld hl,wEnemyBattleStatus2
- set 1,[hl]
- ld a,GUARD_SPEC
+ ld hl, wEnemyBattleStatus2
+ set 1, [hl]
+ ld a, GUARD_SPEC
jp AIPrintItemUse
AIUseDireHit: ; unused
call AIPlayRestoringSFX
- ld hl,wEnemyBattleStatus2
- set 2,[hl]
- ld a,DIRE_HIT
+ ld hl, wEnemyBattleStatus2
+ set 2, [hl]
+ ld a, DIRE_HIT
jp AIPrintItemUse
AICheckIfHPBelowFraction:
; return carry if enemy trainer's current HP is below 1 / a of the maximum
- ld [H_DIVISOR],a
- ld hl,wEnemyMonMaxHP
- ld a,[hli]
- ld [H_DIVIDEND],a
- ld a,[hl]
- ld [H_DIVIDEND + 1],a
- ld b,2
+ ld [H_DIVISOR], a
+ ld hl, wEnemyMonMaxHP
+ ld a, [hli]
+ ld [H_DIVIDEND], a
+ ld a, [hl]
+ ld [H_DIVIDEND + 1], a
+ ld b, 2
call Divide
- ld a,[H_QUOTIENT + 3]
- ld c,a
- ld a,[H_QUOTIENT + 2]
- ld b,a
- ld hl,wEnemyMonHP + 1
- ld a,[hld]
- ld e,a
- ld a,[hl]
- ld d,a
- ld a,d
+ ld a, [H_QUOTIENT + 3]
+ ld c, a
+ ld a, [H_QUOTIENT + 2]
+ ld b, a
+ ld hl, wEnemyMonHP + 1
+ ld a, [hld]
+ ld e, a
+ ld a, [hl]
+ ld d, a
+ ld a, d
sub b
ret nz
- ld a,e
+ ld a, e
sub c
ret
AIUseXAttack:
- ld b,$A
- ld a,X_ATTACK
+ ld b, $A
+ ld a, X_ATTACK
jr AIIncreaseStat
AIUseXDefend:
- ld b,$B
- ld a,X_DEFEND
+ ld b, $B
+ ld a, X_DEFEND
jr AIIncreaseStat
AIUseXSpeed:
- ld b,$C
- ld a,X_SPEED
+ ld b, $C
+ ld a, X_SPEED
jr AIIncreaseStat
AIUseXSpecial:
- ld b,$D
- ld a,X_SPECIAL
+ ld b, $D
+ ld a, X_SPECIAL
; fallthrough
AIIncreaseStat:
- ld [wAIItem],a
+ ld [wAIItem], a
push bc
call AIPrintItemUse_
pop bc
- ld hl,wEnemyMoveEffect
- ld a,[hld]
+ ld hl, wEnemyMoveEffect
+ ld a, [hld]
push af
- ld a,[hl]
+ ld a, [hl]
push af
push hl
- ld a,ANIM_AF
- ld [hli],a
- ld [hl],b
+ ld a, ANIM_AF
+ ld [hli], a
+ ld [hl], b
callab StatModifierUpEffect
pop hl
pop af
- ld [hli],a
+ ld [hli], a
pop af
- ld [hl],a
+ ld [hl], a
jp DecrementAICount
AIPrintItemUse:
- ld [wAIItem],a
+ ld [wAIItem], a
call AIPrintItemUse_
jp DecrementAICount
AIPrintItemUse_:
; print "x used [wAIItem] on z!"
- ld a,[wAIItem]
- ld [wd11e],a
+ ld a, [wAIItem]
+ ld [wd11e], a
call GetItemName
ld hl, AIBattleUseItemText
jp PrintText
diff --git a/engine/bcd.asm b/engine/bcd.asm
index 204c2e40..d84e504b 100644
--- a/engine/bcd.asm
+++ b/engine/bcd.asm
@@ -13,10 +13,12 @@ DivideBCD::
ld [hDivideBCDBuffer + 1], a
ld [hDivideBCDBuffer + 2], a
ld d, $1
-.loop1
+.mulBy10Loop
+; multiply the divisor by 10 until the leading digit is nonzero
+; to set up the standard long division algorithm
ld a, [hDivideBCDDivisor]
and $f0
- jr nz, .go
+ jr nz, .next
inc d
ld a, [hDivideBCDDivisor]
swap a
@@ -40,85 +42,85 @@ DivideBCD::
ld a, [hDivideBCDDivisor + 2]
and $f0
ld [hDivideBCDDivisor + 2], a
- jr .loop1
+ jr .mulBy10Loop
-.go
+.next
push de
push de
- call DivideBCD_f686
+ call DivideBCD_getNextDigit
pop de
ld a, b
swap a
and $f0
ld [hDivideBCDBuffer], a
dec d
- jr z, .skip
+ jr z, .next2
push de
- call DivideBCD_f65d
- call DivideBCD_f686
+ call DivideBCD_divDivisorBy10
+ call DivideBCD_getNextDigit
pop de
ld a, [hDivideBCDBuffer]
or b
ld [hDivideBCDBuffer], a
dec d
- jr z, .skip
+ jr z, .next2
push de
- call DivideBCD_f65d
- call DivideBCD_f686
+ call DivideBCD_divDivisorBy10
+ call DivideBCD_getNextDigit
pop de
ld a, b
swap a
and $f0
ld [hDivideBCDBuffer + 1], a
dec d
- jr z, .skip
+ jr z, .next2
push de
- call DivideBCD_f65d
- call DivideBCD_f686
+ call DivideBCD_divDivisorBy10
+ call DivideBCD_getNextDigit
pop de
ld a, [hDivideBCDBuffer + 1]
or b
ld [hDivideBCDBuffer + 1], a
dec d
- jr z, .skip
+ jr z, .next2
push de
- call DivideBCD_f65d
- call DivideBCD_f686
+ call DivideBCD_divDivisorBy10
+ call DivideBCD_getNextDigit
pop de
ld a, b
swap a
and $f0
ld [hDivideBCDBuffer + 2], a
dec d
- jr z, .skip
+ jr z, .next2
push de
- call DivideBCD_f65d
- call DivideBCD_f686
+ call DivideBCD_divDivisorBy10
+ call DivideBCD_getNextDigit
pop de
ld a, [hDivideBCDBuffer + 2]
or b
ld [hDivideBCDBuffer + 2], a
-.skip
+.next2
ld a, [hDivideBCDBuffer]
- ld [hDivideBCDQuotient], a
+ ld [hDivideBCDQuotient], a ; the same memory location as hDivideBCDDivisor
ld a, [hDivideBCDBuffer + 1]
ld [hDivideBCDQuotient + 1], a
ld a, [hDivideBCDBuffer + 2]
ld [hDivideBCDQuotient + 2], a
pop de
- ld a, $6
+ ld a, $6
sub d
and a
ret z
-.loop2
+.divResultBy10loop
push af
- call DivideBCD_f65d
+ call DivideBCD_divDivisorBy10
pop af
dec a
- jr nz, .loop2
+ jr nz, .divResultBy10loop
ret
-DivideBCD_f65d:
+DivideBCD_divDivisorBy10:
ld a, [hDivideBCDDivisor + 2]
swap a
and $f
@@ -143,22 +145,22 @@ DivideBCD_f65d:
ld [hDivideBCDDivisor], a
ret
-DivideBCD_f686:
+DivideBCD_getNextDigit:
ld bc, $3
-.asm_f689
- ld de, hMoney
+.loop
+ ld de, hMoney ; the dividend
ld hl, hDivideBCDDivisor
push bc
call StringCmp
pop bc
ret c
inc b
- ld de, hMoney + 2
+ ld de, hMoney + 2 ; since SubBCD works starting from the least significant digit
ld hl, hDivideBCDDivisor + 2
push bc
call SubBCD
pop bc
- jr .asm_f689
+ jr .loop
AddBCDPredef::
diff --git a/engine/black_out.asm b/engine/black_out.asm
new file mode 100644
index 00000000..0daa084b
--- /dev/null
+++ b/engine/black_out.asm
@@ -0,0 +1,48 @@
+ResetStatusAndHalveMoneyOnBlackout::
+; Reset player status on blackout.
+ xor a
+ ld [wd435], a
+ xor a ; gamefreak copypasting functions (double xor a)
+ ld [wBattleResult], a
+ ld [wWalkBikeSurfState], a
+ ld [wIsInBattle], a
+ ld [wMapPalOffset], a
+ ld [wNPCMovementScriptFunctionNum], a
+ ld [hJoyHeld], a
+ ld [wNPCMovementScriptPointerTableNum], a
+ ld [wFlags_0xcd60], a
+
+ ld [hMoney], a
+ ld [hMoney + 1], a
+ ld [hMoney + 2], a
+ call HasEnoughMoney
+ jr c, .lostmoney ; never happens
+
+ ; Halve the player's money.
+ ld a, [wPlayerMoney]
+ ld [hMoney], a
+ ld a, [wPlayerMoney + 1]
+ ld [hMoney + 1], a
+ ld a, [wPlayerMoney + 2]
+ ld [hMoney + 2], a
+ xor a
+ ld [hDivideBCDDivisor], a
+ ld [hDivideBCDDivisor + 1], a
+ ld a, 2
+ ld [hDivideBCDDivisor + 2], a
+ predef DivideBCDPredef3
+ ld a, [hDivideBCDQuotient]
+ ld [wPlayerMoney], a
+ ld a, [hDivideBCDQuotient + 1]
+ ld [wPlayerMoney + 1], a
+ ld a, [hDivideBCDQuotient + 2]
+ ld [wPlayerMoney + 2], a
+
+.lostmoney
+ ld hl, wd732
+ set 2, [hl]
+ res 3, [hl]
+ set 6, [hl]
+ ld a, %11111111
+ ld [wJoyIgnore], a
+ predef_jump HealParty
diff --git a/engine/cable_club.asm b/engine/cable_club.asm
index 7ff5fda1..a8dc5d8d 100755
--- a/engine/cable_club.asm
+++ b/engine/cable_club.asm
@@ -554,11 +554,11 @@ TradeCenter_SelectMon:
ld a, " "
ld [hl], a
.cancelMenuItem_Loop
- ld a, $ed ; filled arrow cursor
+ ld a, "▶" ; filled arrow cursor
Coorda 1, 16
.cancelMenuItem_JoypadLoop
call JoypadLowSensitivity
- ld a, [$ffb5]
+ ld a, [hJoy5]
and a ; pressed anything?
jr z, .cancelMenuItem_JoypadLoop
bit 0, a ; A button pressed?
@@ -573,7 +573,7 @@ TradeCenter_SelectMon:
ld [wCurrentMenuItem], a
jp .playerMonMenu
.cancelMenuItem_APressed
- ld a, $ec ; unfilled arrow cursor
+ ld a, "▷" ; unfilled arrow cursor
Coorda 1, 16
ld a, $f
ld [wSerialExchangeNybbleSendData], a
@@ -595,7 +595,7 @@ ReturnToCableClubRoom:
dec a
ld [wDestinationWarpID], a
call LoadMapData
- callba ClearVariablesAfterLoadingMapData
+ callba ClearVariablesOnEnterMap
pop hl
pop af
ld [hl], a
@@ -622,7 +622,7 @@ TradeCenter_PlaceSelectedEnemyMonMenuCursor:
coord hl, 1, 9
ld bc, SCREEN_WIDTH
call AddNTimes
- ld [hl], $ec ; cursor
+ ld [hl], "▷" ; cursor
ret
TradeCenter_DisplayStats:
@@ -921,7 +921,7 @@ CableClub_Run:
ld [wGrassRate], a
inc a ; LINK_STATE_IN_CABLE_CLUB
ld [wLinkState], a
- ld [$ffb5], a
+ ld [hJoy5], a
ld a, 10
ld [wAudioFadeOutControl], a
ld a, BANK(Music_Celadon)
diff --git a/engine/display_text_id_init.asm b/engine/display_text_id_init.asm
new file mode 100644
index 00000000..0ef37370
--- /dev/null
+++ b/engine/display_text_id_init.asm
@@ -0,0 +1,75 @@
+; function that performs initialization for DisplayTextID
+DisplayTextIDInit:
+ xor a
+ ld [wListMenuID], a
+ ld a, [wAutoTextBoxDrawingControl]
+ bit 0, a
+ jr nz, .skipDrawingTextBoxBorder
+ ld a, [hSpriteIndexOrTextID] ; text ID (or sprite ID)
+ and a
+ jr nz, .notStartMenu
+; if text ID is 0 (i.e. the start menu)
+; Note that the start menu text border is also drawn in the function directly
+; below this, so this seems unnecessary.
+ CheckEvent EVENT_GOT_POKEDEX
+; start menu with pokedex
+ coord hl, 10, 0
+ lb bc, 14, 8
+ jr nz, .drawTextBoxBorder
+; start menu without pokedex
+ coord hl, 10, 0
+ lb bc, 12, 8
+ jr .drawTextBoxBorder
+; if text ID is not 0 (i.e. not the start menu) then do a standard dialogue text box
+.notStartMenu
+ coord hl, 0, 12
+ lb bc, 4, 18
+.drawTextBoxBorder
+ call TextBoxBorder
+.skipDrawingTextBoxBorder
+ ld hl, wFontLoaded
+ set 0, [hl]
+ ld hl, wFlags_0xcd60
+ bit 4, [hl]
+ res 4, [hl]
+ jr nz, .skipMovingSprites
+ call UpdateSprites
+.skipMovingSprites
+; loop to copy C1X9 (direction the sprite is facing) to C2X9 for each sprite
+; this is done because when you talk to an NPC, they turn to look your way
+; the original direction they were facing must be restored after the dialogue is over
+ ld hl, wSpriteStateData1 + $19
+ ld c, $0f
+ ld de, $0010
+.spriteFacingDirectionCopyLoop
+ ld a, [hl]
+ inc h
+ ld [hl], a
+ dec h
+ add hl, de
+ dec c
+ jr nz, .spriteFacingDirectionCopyLoop
+; 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 c, e
+.spriteStandStillLoop
+ ld a, [hl]
+ cp $ff ; is the sprite visible?
+ jr z, .nextSprite
+; if it is visible
+ and $fc
+ ld [hl], a
+.nextSprite
+ add hl, de
+ dec c
+ jr nz, .spriteStandStillLoop
+ ld b, $9c ; window background address
+ call CopyScreenTileBufferToVRAM ; transfer background in WRAM to VRAM
+ xor a
+ ld [hWY], a ; put the window on the screen
+ call LoadFontTilePatterns
+ ld a, $01
+ ld [H_AUTOBGTRANSFERENABLED], a ; enable continuous WRAM to VRAM transfer each V-blank
+ ret
diff --git a/engine/evolution.asm b/engine/evolution.asm
index 9cefff27..7277e991 100755
--- a/engine/evolution.asm
+++ b/engine/evolution.asm
@@ -8,7 +8,7 @@ EvolveMon:
push af
xor a
ld [wLowHealthAlarm], a
- ld [wChannelSoundIDs + CH4], a
+ ld [wChannelSoundIDs + Ch5], a
call StopAllMusic
ld a, $1
ld [H_AUTOBGTRANSFERENABLED], a
diff --git a/engine/flag_action_predef.asm b/engine/flag_action.asm
index dc516887..dc516887 100644
--- a/engine/flag_action_predef.asm
+++ b/engine/flag_action.asm
diff --git a/engine/give_pokemon.asm b/engine/give_pokemon.asm
index 9cbb4039..6fdca2ef 100755
--- a/engine/give_pokemon.asm
+++ b/engine/give_pokemon.asm
@@ -75,7 +75,7 @@ UnknownTerminator_f6794:
GotMonText:
TX_FAR _GotMonText
- db $0b
+ TX_SFX_ITEM_1
db "@"
SetToBoxText:
diff --git a/engine/hall_of_fame.asm b/engine/hall_of_fame.asm
index f0749a06..39a7a2e3 100755
--- a/engine/hall_of_fame.asm
+++ b/engine/hall_of_fame.asm
@@ -6,7 +6,7 @@ AnimateHallOfFame:
call LoadFontTilePatterns
call LoadTextBoxTilePatterns
call DisableLCD
- ld hl,vBGMap0
+ ld hl, vBGMap0
ld bc, $800
ld a, " "
call FillMemory
diff --git a/engine/hidden_object_functions14.asm b/engine/hidden_object_functions14.asm
index 4bb76433..04f9cb35 100755
--- a/engine/hidden_object_functions14.asm
+++ b/engine/hidden_object_functions14.asm
@@ -7,7 +7,7 @@ PrintNotebookText:
TMNotebook:
TX_FAR TMNotebookText
- db $0d
+ TX_WAIT
db "@"
ViridianSchoolNotebook:
@@ -45,7 +45,7 @@ TurnPageText:
ViridianSchoolNotebookText5:
TX_FAR _ViridianSchoolNotebookText5
- db $0d
+ TX_WAIT
db "@"
ViridianSchoolNotebookText1:
diff --git a/engine/hidden_object_functions17.asm b/engine/hidden_object_functions17.asm
index 6019eb4a..8775fd39 100755
--- a/engine/hidden_object_functions17.asm
+++ b/engine/hidden_object_functions17.asm
@@ -81,7 +81,7 @@ FanClubPicture2Text:
DisplayMonFrontSpriteInBox:
; Displays a pokemon's front sprite in a pop-up window.
-; [wcf91] = pokemon interal id number
+; [wcf91] = pokemon internal id number
ld a, 1
ld [H_AUTOBGTRANSFERENABLED], a
call Delay3
diff --git a/engine/hidden_object_functions18.asm b/engine/hidden_object_functions18.asm
index 8d468988..3fd5dd47 100755
--- a/engine/hidden_object_functions18.asm
+++ b/engine/hidden_object_functions18.asm
@@ -96,11 +96,11 @@ BenchGuyTextPointers:
db_tx_pre MtMoonPokecenterBenchGuyText
db ROCK_TUNNEL_POKECENTER, SPRITE_FACING_LEFT
db_tx_pre RockTunnelPokecenterBenchGuyText
- db SAFARI_ZONE_REST_HOUSE_2,SPRITE_FACING_LEFT
+ db SAFARI_ZONE_WEST_REST_HOUSE,SPRITE_FACING_LEFT
db_tx_pre UnusedBenchGuyText1
- db SAFARI_ZONE_REST_HOUSE_3,SPRITE_FACING_LEFT
+ db SAFARI_ZONE_EAST_REST_HOUSE,SPRITE_FACING_LEFT
db_tx_pre UnusedBenchGuyText2
- db SAFARI_ZONE_REST_HOUSE_4,SPRITE_FACING_LEFT
+ db SAFARI_ZONE_NORTH_REST_HOUSE,SPRITE_FACING_LEFT
db_tx_pre UnusedBenchGuyText3
db $FF
diff --git a/engine/hidden_object_functions3.asm b/engine/hidden_object_functions3.asm
index 03836917..11aecd5b 100755
--- a/engine/hidden_object_functions3.asm
+++ b/engine/hidden_object_functions3.asm
@@ -127,7 +127,7 @@ ElevatorText:
TownMapText:
TX_FAR _TownMapText
- db $06
+ TX_BLINK
TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
diff --git a/engine/hidden_object_functions7.asm b/engine/hidden_object_functions7.asm
index 9d27ad20..2498c167 100755
--- a/engine/hidden_object_functions7.asm
+++ b/engine/hidden_object_functions7.asm
@@ -70,7 +70,7 @@ SafariZoneGameOver:
ld a, SFX_SAFARI_ZONE_PA
call PlayMusic
.waitForMusicToPlay
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
cp SFX_SAFARI_ZONE_PA
jr nz, .waitForMusicToPlay
ld a, TEXT_SAFARI_GAME_OVER
@@ -78,12 +78,12 @@ SafariZoneGameOver:
call DisplayTextID
xor a
ld [wPlayerMovingDirection], a
- ld a, SAFARI_ZONE_ENTRANCE
+ ld a, SAFARI_ZONE_GATE
ld [hWarpDestinationMap], a
ld a, $3
ld [wDestinationWarpID], a
ld a, $5
- ld [wSafariZoneEntranceCurScript], a
+ ld [wSafariZoneGateCurScript], a
SetEvent EVENT_SAFARI_GAME_OVER
ld a, 1
ld [wSafariZoneGameOver], a
@@ -247,9 +247,9 @@ CinnabarGymQuiz_1ea92:
ret
CinnabarGymQuizCorrectText:
- db $0b
+ TX_SFX_ITEM_1
TX_FAR _CinnabarGymQuizCorrectText
- db $06
+ TX_BLINK
TX_ASM
ld a, [$ffe0]
@@ -417,7 +417,7 @@ BillsHouseMonitorText:
BillsHouseInitiatedText:
TX_FAR _BillsHouseInitiatedText
- db $06
+ TX_BLINK
TX_ASM
call StopAllMusic
ld c, 16
diff --git a/engine/in_game_trades.asm b/engine/in_game_trades.asm
index 60719c7e..720920df 100755
--- a/engine/in_game_trades.asm
+++ b/engine/in_game_trades.asm
@@ -1,77 +1,77 @@
DoInGameTradeDialogue:
; trigger the trade offer/action specified by wWhichTrade
call SaveScreenTilesToBuffer2
- ld hl,TradeMons
- ld a,[wWhichTrade]
- ld bc,$e
+ ld hl, TradeMons
+ ld a, [wWhichTrade]
+ ld bc, $e
call AddNTimes
- ld a,[hli]
- ld [wInGameTradeGiveMonSpecies],a
- ld a,[hli]
- ld [wInGameTradeReceiveMonSpecies],a
- ld a,[hli]
+ ld a, [hli]
+ ld [wInGameTradeGiveMonSpecies], a
+ ld a, [hli]
+ ld [wInGameTradeReceiveMonSpecies], a
+ ld a, [hli]
push af
- ld de,wInGameTradeMonNick
+ ld de, wInGameTradeMonNick
ld bc, NAME_LENGTH
call CopyData
pop af
- ld l,a
- ld h,0
- ld de,InGameTradeTextPointers
- add hl,hl
- add hl,de
- ld a,[hli]
- ld [wInGameTradeTextPointerTablePointer],a
- ld a,[hl]
- ld [wInGameTradeTextPointerTablePointer + 1],a
- ld a,[wInGameTradeGiveMonSpecies]
- ld de,wInGameTradeGiveMonName
+ ld l, a
+ ld h, 0
+ ld de, InGameTradeTextPointers
+ add hl, hl
+ add hl, de
+ ld a, [hli]
+ ld [wInGameTradeTextPointerTablePointer], a
+ ld a, [hl]
+ ld [wInGameTradeTextPointerTablePointer + 1], a
+ ld a, [wInGameTradeGiveMonSpecies]
+ ld de, wInGameTradeGiveMonName
call InGameTrade_GetMonName
- ld a,[wInGameTradeReceiveMonSpecies]
- ld de,wInGameTradeReceiveMonName
+ ld a, [wInGameTradeReceiveMonSpecies]
+ ld de, wInGameTradeReceiveMonName
call InGameTrade_GetMonName
- ld a,$4
- ld [wInGameTradeTextPointerTableIndex],a
- ld b,FLAG_TEST
+ ld a, $4
+ ld [wInGameTradeTextPointerTableIndex], a
+ ld b, FLAG_TEST
call InGameTrade_FlagActionPredef
- ld a,c
+ ld a, c
and a
- jr nz,.printText
+ jr nz, .printText
; if the trade hasn't been done yet
- ld a,$0
- ld [wInGameTradeTextPointerTableIndex],a
+ ld a, $0
+ ld [wInGameTradeTextPointerTableIndex], a
call .printText
- ld a,$1
- ld [wInGameTradeTextPointerTableIndex],a
+ ld a, $1
+ ld [wInGameTradeTextPointerTableIndex], a
call YesNoChoice
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
and a
- jr nz,.printText
+ jr nz, .printText
call InGameTrade_DoTrade
- jr c,.printText
+ jr c, .printText
ld hl, TradedForText
call PrintText
.printText
- ld hl,wInGameTradeTextPointerTableIndex
- ld a,[hld] ; wInGameTradeTextPointerTableIndex
- ld e,a
- ld d,0
- ld a,[hld] ; wInGameTradeTextPointerTablePointer + 1
- ld l,[hl] ; wInGameTradeTextPointerTablePointer
- ld h,a
- add hl,de
- add hl,de
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld hl, wInGameTradeTextPointerTableIndex
+ ld a, [hld] ; wInGameTradeTextPointerTableIndex
+ ld e, a
+ ld d, 0
+ ld a, [hld] ; wInGameTradeTextPointerTablePointer + 1
+ ld l, [hl] ; wInGameTradeTextPointerTablePointer
+ ld h, a
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
jp PrintText
; copies name of species a to hl
InGameTrade_GetMonName:
push de
- ld [wd11e],a
+ ld [wd11e], a
call GetMonName
- ld hl,wcd6d
+ ld hl, wcd6d
pop de
ld bc, NAME_LENGTH
jp CopyData
@@ -80,50 +80,50 @@ INCLUDE "data/trades.asm"
InGameTrade_DoTrade:
xor a ; NORMAL_PARTY_MENU
- ld [wPartyMenuTypeOrMessageID],a
+ ld [wPartyMenuTypeOrMessageID], a
dec a
- ld [wUpdateSpritesEnabled],a
+ ld [wUpdateSpritesEnabled], a
call DisplayPartyMenu
push af
call InGameTrade_RestoreScreen
pop af
- ld a,$1
- jp c,.tradeFailed ; jump if the player didn't select a pokemon
- ld a,[wInGameTradeGiveMonSpecies]
- ld b,a
- ld a,[wcf91]
+ ld a, $1
+ jp c, .tradeFailed ; jump if the player didn't select a pokemon
+ ld a, [wInGameTradeGiveMonSpecies]
+ ld b, a
+ ld a, [wcf91]
cp b
- ld a,$2
- jr nz,.tradeFailed ; jump if the selected mon's species is not the required one
- ld a,[wWhichPokemon]
- ld hl,wPartyMon1Level
+ ld a, $2
+ jr nz, .tradeFailed ; jump if the selected mon's species is not the required one
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMon1Level
ld bc, wPartyMon2 - wPartyMon1
call AddNTimes
- ld a,[hl]
- ld [wCurEnemyLVL],a
- ld b,FLAG_SET
+ ld a, [hl]
+ ld [wCurEnemyLVL], a
+ ld b, FLAG_SET
call InGameTrade_FlagActionPredef
ld hl, ConnectCableText
call PrintText
- ld a,[wWhichPokemon]
+ ld a, [wWhichPokemon]
push af
- ld a,[wCurEnemyLVL]
+ ld a, [wCurEnemyLVL]
push af
call LoadHpBarAndStatusTilePatterns
call InGameTrade_PrepareTradeData
predef InternalClockTradeAnim
pop af
- ld [wCurEnemyLVL],a
+ ld [wCurEnemyLVL], a
pop af
- ld [wWhichPokemon],a
- ld a,[wInGameTradeReceiveMonSpecies]
- ld [wcf91],a
+ ld [wWhichPokemon], a
+ ld a, [wInGameTradeReceiveMonSpecies]
+ ld [wcf91], a
xor a
- ld [wMonDataLocation],a ; not used
- ld [wRemoveMonFromBox],a
+ ld [wMonDataLocation], a ; not used
+ ld [wRemoveMonFromBox], a
call RemovePokemon
- ld a,$80 ; prevent the player from naming the mon
- ld [wMonDataLocation],a
+ ld a, $80 ; prevent the player from naming the mon
+ ld [wMonDataLocation], a
call AddPartyMon
call InGameTrade_CopyDataToReceivedMon
call InGameTrade_CheckForTradeEvo
@@ -131,12 +131,12 @@ InGameTrade_DoTrade:
call InGameTrade_RestoreScreen
callba RedrawMapView
and a
- ld a,$3
+ ld a, $3
jr .tradeSucceeded
.tradeFailed
scf
.tradeSucceeded
- ld [wInGameTradeTextPointerTableIndex],a
+ ld [wInGameTradeTextPointerTableIndex], a
ret
InGameTrade_RestoreScreen:
@@ -285,7 +285,9 @@ ConnectCableText:
TradedForText:
TX_FAR _TradedForText
- db $11, $a, "@"
+ TX_SFX_KEY_ITEM
+ TX_DELAY
+ db "@"
WannaTrade1Text:
TX_FAR _WannaTrade1Text
diff --git a/engine/intro.asm b/engine/intro.asm
index 37bd0151..00e892da 100755
--- a/engine/intro.asm
+++ b/engine/intro.asm
@@ -1,6 +1,14 @@
-MOVE_GENGAR_RIGHT EQU $00
-MOVE_GENGAR_LEFT EQU $01
-MOVE_NIDORINO_RIGHT EQU $ff
+const_value = -1
+ const MOVE_NIDORINO_RIGHT
+ const MOVE_GENGAR_RIGHT
+ const MOVE_GENGAR_LEFT
+
+ANIMATION_END EQU 80
+
+const_value = 3
+ const GENGAR_INTRO_TILES1
+ const GENGAR_INTRO_TILES2
+ const GENGAR_INTRO_TILES3
PlayIntro:
xor a
@@ -32,7 +40,7 @@ InitIntroNidorinoOAM:
ld [hli], a ; X
ld a, d
ld [hli], a ; tile
- ld a, $80
+ ld a, OAM_BEHIND_BG
ld [hli], a ; attributes
inc d
dec c
@@ -47,7 +55,7 @@ InitIntroNidorinoOAM:
IntroClearScreen:
ld hl, vBGMap1
- ld bc, $240
+ ld bc, BG_MAP_WIDTH * SCREEN_HEIGHT
jr IntroClearCommon
IntroClearMiddleOfScreen:
@@ -56,7 +64,7 @@ IntroClearMiddleOfScreen:
ld bc, SCREEN_WIDTH * 10
IntroClearCommon:
- ld [hl], $0
+ ld [hl], 0
inc hl
dec bc
ld a, b
@@ -65,7 +73,7 @@ IntroClearCommon:
ret
IntroPlaceBlackTiles:
- ld a, $1
+ ld a, 1
.loop
ld [hli], a
dec c
@@ -80,7 +88,7 @@ PlayShootingStar:
ld b, SET_PAL_GAME_FREAK_INTRO
call RunPaletteCommand
callba LoadCopyrightAndTextBoxTiles
- ld a, %11100100
+ ldPal a, BLACK, DARK_GRAY, LIGHT_GRAY, WHITE
ld [rBGP], a
call UpdateGBCPal_BGP
ld c, 180
@@ -138,10 +146,10 @@ IntroDrawBlackBars:
ld c, SCREEN_WIDTH * 4
call IntroPlaceBlackTiles
ld hl, vBGMap1
- ld c, $80
+ ld c, BG_MAP_WIDTH * 4
call IntroPlaceBlackTiles
- ld hl, vBGMap1 + $1c0
- ld c, $80
+ ld hl, vBGMap1 + BG_MAP_WIDTH * 14
+ ld c, BG_MAP_WIDTH * 4
jp IntroPlaceBlackTiles
EmptyFunc4:
@@ -150,5 +158,7 @@ EmptyFunc4:
GameFreakIntro:
INCBIN "gfx/gamefreak_intro.2bpp"
INCBIN "gfx/gamefreak_logo.2bpp"
- ds $10 ; blank tile
+ rept 16
+ db $00 ; blank tile
+ endr
GameFreakIntroEnd:
diff --git a/engine/items/inventory.asm b/engine/items/inventory.asm
new file mode 100644
index 00000000..58bcf7e9
--- /dev/null
+++ b/engine/items/inventory.asm
@@ -0,0 +1,151 @@
+; function to add an item (in varying quantities) to the player's bag or PC box
+; INPUT:
+; hl = address of inventory (either wNumBagItems or wNumBoxItems)
+; [wcf91] = item ID
+; [wItemQuantity] = item quantity
+; sets carry flag if successful, unsets carry flag if unsuccessful
+AddItemToInventory_:
+ ld a, [wItemQuantity] ; a = item quantity
+ push af
+ push bc
+ push de
+ push hl
+ push hl
+ ld d, PC_ITEM_CAPACITY ; how many items the PC can hold
+ ld a, wNumBagItems & $FF
+ cp l
+ jr nz, .checkIfInventoryFull
+ ld a, wNumBagItems >> 8
+ cp h
+ jr nz, .checkIfInventoryFull
+; if the destination is the bag
+ ld d, BAG_ITEM_CAPACITY ; how many items the bag can hold
+.checkIfInventoryFull
+ ld a, [hl]
+ sub d
+ ld d, a
+ ld a, [hli]
+ and a
+ jr z, .addNewItem
+.notAtEndOfInventory
+ ld a, [hli]
+ ld b, a ; b = ID of current item in table
+ ld a, [wcf91] ; a = ID of item being added
+ cp b ; does the current item in the table match the item being added?
+ jp z, .increaseItemQuantity ; if so, increase the item's quantity
+ inc hl
+.loop
+ ld a, [hl]
+ cp a, $ff ; is it the end of the table?
+ jr nz, .notAtEndOfInventory
+.addNewItem ; add an item not yet in the inventory
+ pop hl
+ ld a, d
+ and a ; is there room for a new item slot?
+ jr z, .done
+; if there is room
+ inc [hl] ; increment the number of items in the inventory
+ ld a, [hl] ; the number of items will be the index of the new item
+ add a
+ dec a
+ ld c, a
+ ld b, 0
+ add hl, bc ; hl = address to store the item
+ ld a, [wcf91]
+ ld [hli], a ; store item ID
+ ld a, [wItemQuantity]
+ ld [hli], a ; store item quantity
+ ld [hl], $ff ; store terminator
+ jp .success
+.increaseItemQuantity ; increase the quantity of an item already in the inventory
+ ld a, [wItemQuantity]
+ ld b, a ; b = quantity to add
+ ld a, [hl] ; a = existing item quantity
+ add b ; a = new item quantity
+ cp 100
+ jp c, .storeNewQuantity ; if the new quantity is less than 100, store it
+; if the new quantity is greater than or equal to 100,
+; try to max out the current slot and add the rest in a new slot
+ sub 99
+ ld [wItemQuantity], a ; a = amount left over (to put in the new slot)
+ ld a, d
+ and a ; is there room for a new item slot?
+ jr z, .increaseItemQuantityFailed
+; if so, store 99 in the current slot and store the rest in a new slot
+ ld a, 99
+ ld [hli], a
+ jp .loop
+.increaseItemQuantityFailed
+ pop hl
+ and a
+ jr .done
+.storeNewQuantity
+ ld [hl], a
+ pop hl
+.success
+ scf
+.done
+ pop hl
+ pop de
+ pop bc
+ pop bc
+ ld a, b
+ ld [wItemQuantity], a ; restore the initial value from when the function was called
+ ret
+
+; function to remove an item (in varying quantities) from the player's bag or PC box
+; INPUT:
+; hl = address of inventory (either wNumBagItems or wNumBoxItems)
+; [wWhichPokemon] = index (within the inventory) of the item to remove
+; [wItemQuantity] = quantity to remove
+RemoveItemFromInventory_:
+ push hl
+ inc hl
+ ld a, [wWhichPokemon] ; index (within the inventory) of the item being removed
+ add a
+ add l
+ ld l, a
+ jr nc, .noCarry
+ inc h
+.noCarry
+ inc hl
+ ld a, [wItemQuantity] ; quantity being removed
+ ld e, a
+ ld a, [hl] ; a = current quantity
+ sub e
+ ld [hld], a ; store new quantity
+ ld [wMaxItemQuantity], a
+ and a
+ jr nz, .skipMovingUpSlots
+; if the remaining quantity is 0,
+; remove the emptied item slot and move up all the following item slots
+.moveSlotsUp
+ ld e, l
+ ld d, h
+ inc de
+ inc de ; de = address of the slot following the emptied one
+.loop ; loop to move up the following slots
+ ld a, [de]
+ inc de
+ ld [hli], a
+ cp $ff
+ jr nz, .loop
+; update menu info
+ xor a
+ ld [wListScrollOffset], a
+ ld [wCurrentMenuItem], a
+ ld [wBagSavedMenuItem], a
+ ld [wSavedListScrollOffset], a
+ pop hl
+ ld a, [hl] ; a = number of items in inventory
+ dec a ; decrement the number of items
+ ld [hl], a ; store new number of items
+ ld [wListCount], a
+ cp 2
+ jr c, .done
+ ld [wMaxMenuItem], a
+ jr .done
+.skipMovingUpSlots
+ pop hl
+.done
+ ret
diff --git a/engine/items/items.asm b/engine/items/items.asm
index 8cce45f0..15c7c24f 100755
--- a/engine/items/items.asm
+++ b/engine/items/items.asm
@@ -1,7 +1,7 @@
UseItem_:
ld a, 1
ld [wActionResultOrTookBattleTurn], a ; initialise to success value
- ld a, [wcf91] ;contains item_ID
+ ld a, [wcf91] ;contains item_ID
cp HM_01
jp nc, ItemUseTMHM
ld hl, ItemUsePtrTable
@@ -103,67 +103,67 @@ ItemUsePtrTable:
ItemUseBall:
; Balls can't be used out of battle.
- ld a,[wIsInBattle]
+ ld a, [wIsInBattle]
and a
- jp z,ItemUseNotTime
+ jp z, ItemUseNotTime
; Balls can't catch trainers' Pokémon.
dec a
- jp nz,ThrowBallAtTrainerMon
+ jp nz, ThrowBallAtTrainerMon
; If this is for the old man battle, skip checking if the party & box are full.
- ld a,[wBattleType]
+ ld a, [wBattleType]
cp BATTLE_TYPE_OLD_MAN
- jr z,.canUseBall
+ jr z, .canUseBall
cp BATTLE_TYPE_PIKACHU
- jr z,.canUseBall
+ jr z, .canUseBall
- ld a,[wPartyCount] ; is party full?
- cp a,PARTY_LENGTH
- jr nz,.canUseBall
- ld a,[wNumInBox] ; is box full?
- cp a,MONS_PER_BOX
- jp z,BoxFullCannotThrowBall
+ ld a, [wPartyCount] ; is party full?
+ cp PARTY_LENGTH
+ jr nz, .canUseBall
+ ld a, [wNumInBox] ; is box full?
+ cp MONS_PER_BOX
+ jp z, BoxFullCannotThrowBall
.canUseBall
xor a
- ld [wCapturedMonSpecies],a
+ ld [wCapturedMonSpecies], a
- ld a,[wBattleType]
- cp a,BATTLE_TYPE_SAFARI
- jr nz,.skipSafariZoneCode
+ ld a, [wBattleType]
+ cp BATTLE_TYPE_SAFARI
+ jr nz, .skipSafariZoneCode
.safariZone
- ld hl,wNumSafariBalls
+ ld hl, wNumSafariBalls
dec [hl] ; remove a Safari Ball
.skipSafariZoneCode
call RunDefaultPaletteCommand
- ld a,$43 ; successful capture value
- ld [wPokeBallAnimData],a
+ ld a, $43 ; successful capture value
+ ld [wPokeBallAnimData], a
call LoadScreenTilesFromBuffer1
- ld hl,ItemUseText00
+ ld hl, ItemUseText00
call PrintText
; If the player is fighting an unidentified ghost, set the value that indicates
; the Pokémon can't be caught and skip the capture calculations.
callab IsGhostBattle
- ld b,$10 ; can't be caught value
- jp z,.setAnimData
+ ld b, $10 ; can't be caught value
+ jp z, .setAnimData
- ld a,[wBattleType]
+ ld a, [wBattleType]
cp BATTLE_TYPE_OLD_MAN
- jr z,.oldManBattle
+ jr z, .oldManBattle
cp BATTLE_TYPE_PIKACHU
- jr z,.oldManBattle ; pikachu battle technically old man battle
+ jr z, .oldManBattle ; pikachu battle technically old man battle
jr .notOldManBattle
.oldManBattle
- ld hl,wGrassRate
- ld de,wPlayerName
- ld bc,NAME_LENGTH
+ ld hl, wGrassRate
+ ld de, wPlayerName
+ ld bc, NAME_LENGTH
call CopyData ; save the player's name in the Wild Monster data (part of the Cinnabar Island Missingno. glitch)
ld a, [wBattleType]
cp BATTLE_TYPE_OLD_MAN
@@ -177,13 +177,13 @@ ItemUseBall:
.notOldManBattle
; If the player is fighting the ghost Marowak, set the value that indicates the
; Pokémon can't be caught and skip the capture calculations.
- ld a,[wCurMap]
- cp a,POKEMONTOWER_6
- jr nz,.loop
- ld a,[wEnemyMonSpecies2]
- cp a,MAROWAK
- ld b,$10 ; can't be caught value
- jp z,.setAnimData
+ ld a, [wCurMap]
+ cp POKEMON_TOWER_6F
+ jr nz, .loop
+ ld a, [wEnemyMonSpecies2]
+ cp MAROWAK
+ ld b, $10 ; can't be caught value
+ jp z, .setAnimData
; Get the first random number. Let it be called Rand1.
; Rand1 must be within a certain range according the kind of ball being thrown.
@@ -195,35 +195,34 @@ ItemUseBall:
.loop
call Random
- ld b,a
+ ld b, a
; Get the item ID.
- ld hl,wcf91
-.asm_d54a
- ld a,[hl]
+ ld hl, wcf91
+ ld a, [hl]
; The Master Ball always succeeds.
- cp a,MASTER_BALL
- jp z,.captured
+ cp MASTER_BALL
+ jp z, .captured
; Anything will do for the basic Poké Ball.
- cp a,POKE_BALL
- jr z,.checkForAilments
+ cp POKE_BALL
+ jr z, .checkForAilments
; If it's a Great/Ultra/Safari Ball and Rand1 is greater than 200, try again.
- ld a,200
+ ld a, 200
cp b
- jr c,.loop
+ jr c, .loop
; Less than or equal to 200 is good enough for a Great Ball.
- ld a,[hl]
- cp a,GREAT_BALL
- jr z,.checkForAilments
+ ld a, [hl]
+ cp GREAT_BALL
+ jr z, .checkForAilments
; If it's an Ultra/Safari Ball and Rand1 is greater than 150, try again.
- ld a,150
+ ld a, 150
cp b
- jr c,.loop
+ jr c, .loop
.checkForAilments
; Pokémon can be caught more easily with a status ailment.
@@ -234,176 +233,176 @@ ItemUseBall:
; Burn/Paralysis/Poison: Status = 12
; Freeze/Sleep: Status = 25
; If Status is greater than Rand1, the Pokémon will be caught for sure.
- ld a,[wEnemyMonStatus]
+ ld a, [wEnemyMonStatus]
and a
- jr z,.skipAilmentValueSubtraction ; no ailments
- and a, 1 << FRZ | SLP
- ld c,12
- jr z,.notFrozenOrAsleep
- ld c,25
+ jr z, .skipAilmentValueSubtraction ; no ailments
+ and 1 << FRZ | SLP
+ ld c, 12
+ jr z, .notFrozenOrAsleep
+ ld c, 25
.notFrozenOrAsleep
ld a, b
sub c
- jp c,.captured
- ld b,a
+ jp c, .captured
+ ld b, a
.skipAilmentValueSubtraction
- push bc ; save (Rand1 - Status)
+ push bc ; save (Rand1 - Status)
; Calculate MaxHP * 255.
xor a
- ld [H_MULTIPLICAND],a
- ld hl,wEnemyMonMaxHP
- ld a,[hli]
- ld [H_MULTIPLICAND + 1],a
- ld a,[hl]
- ld [H_MULTIPLICAND + 2],a
- ld a,255
- ld [H_MULTIPLIER],a
+ ld [H_MULTIPLICAND], a
+ ld hl, wEnemyMonMaxHP
+ ld a, [hli]
+ ld [H_MULTIPLICAND + 1], a
+ ld a, [hl]
+ ld [H_MULTIPLICAND + 2], a
+ ld a, 255
+ ld [H_MULTIPLIER], a
call Multiply
; Determine BallFactor. It's 8 for Great Balls and 12 for the others.
- ld a,[wcf91]
+ ld a, [wcf91]
cp GREAT_BALL
- ld a,12
- jr nz,.skip1
- ld a,8
+ ld a, 12
+ jr nz, .skip1
+ ld a, 8
.skip1
; Note that the results of all division operations are floored.
; Calculate (MaxHP * 255) / BallFactor.
- ld [H_DIVISOR],a
- ld b,4 ; number of bytes in dividend
+ ld [H_DIVISOR], a
+ ld b, 4 ; number of bytes in dividend
call Divide
; Divide the enemy's current HP by 4. HP is not supposed to exceed 999 so
; the result should fit in a. If the division results in a quotient of 0,
; change it to 1.
- ld hl,wEnemyMonHP
- ld a,[hli]
- ld b,a
- ld a,[hl]
+ ld hl, wEnemyMonHP
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
srl b
rr a
srl b
rr a
and a
- jr nz,.skip2
+ jr nz, .skip2
inc a
.skip2
; Let W = ((MaxHP * 255) / BallFactor) / max(HP / 4, 1). Calculate W.
- ld [H_DIVISOR],a
- ld b,4
+ ld [H_DIVISOR], a
+ ld b, 4
call Divide
; If W > 255, store 255 in [H_QUOTIENT + 3].
; Let X = min(W, 255) = [H_QUOTIENT + 3].
- ld a,[H_QUOTIENT + 2]
+ ld a, [H_QUOTIENT + 2]
and a
- jr z,.skip3
- ld a,255
- ld [H_QUOTIENT + 3],a
+ jr z, .skip3
+ ld a, 255
+ ld [H_QUOTIENT + 3], a
.skip3
pop bc ; b = Rand1 - Status
; If Rand1 - Status > CatchRate, the ball fails to capture the Pokémon.
- ld a,[wEnemyMonCatchRate]
+ ld a, [wEnemyMonActualCatchRate]
cp b
- jr c,.failedToCapture
+ jr c, .failedToCapture
; If W > 255, the ball captures the Pokémon.
- ld a,[H_QUOTIENT + 2]
+ ld a, [H_QUOTIENT + 2]
and a
- jr nz,.captured
+ jr nz, .captured
call Random ; Let this random number be called Rand2.
; If Rand2 > X, the ball fails to capture the Pokémon.
- ld b,a
- ld a,[H_QUOTIENT + 3]
+ ld b, a
+ ld a, [H_QUOTIENT + 3]
cp b
- jr c,.failedToCapture
+ jr c, .failedToCapture
.captured
jr .skipShakeCalculations
.failedToCapture
- ld a,[H_QUOTIENT + 3]
- ld [wPokeBallCaptureCalcTemp],a ; Save X.
+ ld a, [H_QUOTIENT + 3]
+ ld [wPokeBallCaptureCalcTemp], a ; Save X.
; Calculate CatchRate * 100.
xor a
- ld [H_MULTIPLICAND],a
- ld [H_MULTIPLICAND + 1],a
- ld a,[wEnemyMonCatchRate]
- ld [H_MULTIPLICAND + 2],a
- ld a,100
- ld [H_MULTIPLIER],a
+ ld [H_MULTIPLICAND], a
+ ld [H_MULTIPLICAND + 1], a
+ ld a, [wEnemyMonActualCatchRate]
+ ld [H_MULTIPLICAND + 2], a
+ ld a, 100
+ ld [H_MULTIPLIER], a
call Multiply
; Determine BallFactor2.
; Poké Ball: BallFactor2 = 255
; Great Ball: BallFactor2 = 200
; Ultra/Safari Ball: BallFactor2 = 150
- ld a,[wcf91]
- ld b,255
+ ld a, [wcf91]
+ ld b, 255
cp POKE_BALL
- jr z,.skip4
- ld b,200
+ jr z, .skip4
+ ld b, 200
cp GREAT_BALL
- jr z,.skip4
- ld b,150
+ jr z, .skip4
+ ld b, 150
cp ULTRA_BALL
- jr z,.skip4
+ jr z, .skip4
.skip4
; Let Y = (CatchRate * 100) / BallFactor2. Calculate Y.
- ld a,b
- ld [H_DIVISOR],a
- ld b,4
+ ld a, b
+ ld [H_DIVISOR], a
+ ld b, 4
call Divide
; If Y > 255, there are 3 shakes.
; Note that this shouldn't be possible.
; The maximum value of Y is (255 * 100) / 150 = 170.
- ld a,[H_QUOTIENT + 2]
+ ld a, [H_QUOTIENT + 2]
and a
- ld b,$63 ; 3 shakes
- jr nz,.setAnimData
+ ld b, $63 ; 3 shakes
+ jr nz, .setAnimData
; Calculate X * Y.
- ld a,[wPokeBallCaptureCalcTemp]
- ld [H_MULTIPLIER],a
+ ld a, [wPokeBallCaptureCalcTemp]
+ ld [H_MULTIPLIER], a
call Multiply
; Calculate (X * Y) / 255.
- ld a,255
- ld [H_DIVISOR],a
- ld b,4
+ ld a, 255
+ ld [H_DIVISOR], a
+ ld b, 4
call Divide
; Determine Status2.
; no status ailment: Status2 = 0
; Burn/Paralysis/Poison: Status2 = 5
; Freeze/Sleep: Status2 = 10
- ld a,[wEnemyMonStatus]
+ ld a, [wEnemyMonStatus]
and a
- jr z,.skip5
+ jr z, .skip5
and 1 << FRZ | SLP
- ld b,5
- jr z,.addAilmentValue
- ld b,10
+ ld b, 5
+ jr z, .addAilmentValue
+ ld b, 10
.addAilmentValue
; If the Pokémon has a status ailment, add Status2.
- ld a,[H_QUOTIENT + 3]
+ ld a, [H_QUOTIENT + 3]
add b
- ld [H_QUOTIENT + 3],a
+ ld [H_QUOTIENT + 3], a
.skip5
; Finally determine the number of shakes.
@@ -413,29 +412,29 @@ ItemUseBall:
; 10 ≤ Z < 30: 1 shake
; 30 ≤ Z < 70: 2 shakes
; 70 ≤ Z: 3 shakes
- ld a,[H_QUOTIENT + 3]
- cp a,10
- ld b,$20
- jr c,.setAnimData
- cp a,30
- ld b,$61
- jr c,.setAnimData
- cp a,70
- ld b,$62
- jr c,.setAnimData
- ld b,$63
+ ld a, [H_QUOTIENT + 3]
+ cp 10
+ ld b, $20
+ jr c, .setAnimData
+ cp 30
+ ld b, $61
+ jr c, .setAnimData
+ cp 70
+ ld b, $62
+ jr c, .setAnimData
+ ld b, $63
.setAnimData
- ld a,b
- ld [wPokeBallAnimData],a
+ ld a, b
+ ld [wPokeBallAnimData], a
.skipShakeCalculations
- ld c,20
+ ld c, 20
call DelayFrames
; Do the animation.
- ld a,TOSS_ANIM
- ld [wAnimationID],a
+ ld a, TOSS_ANIM
+ ld [wAnimationID], a
xor a
ld [H_WHOSETURN], a
ld [wAnimationType], a
@@ -448,36 +447,36 @@ ItemUseBall:
pop af
ld [wcf91], a
pop af
- ld [wWhichPokemon],a
+ ld [wWhichPokemon], a
; Determine the message to display from the animation.
- ld a,[wPokeBallAnimData]
- cp a,$10
- ld hl,ItemUseBallText00
- jp z,.printMessage
- cp a,$20
- ld hl,ItemUseBallText01
- jp z,.printMessage
- cp a,$61
- ld hl,ItemUseBallText02
- jp z,.printMessage
- cp a,$62
- ld hl,ItemUseBallText03
- jp z,.printMessage
- cp a,$63
- ld hl,ItemUseBallText04
- jp z,.printMessage
+ ld a, [wPokeBallAnimData]
+ cp $10
+ ld hl, ItemUseBallText00
+ jp z, .printMessage
+ cp $20
+ ld hl, ItemUseBallText01
+ jp z, .printMessage
+ cp $61
+ ld hl, ItemUseBallText02
+ jp z, .printMessage
+ cp $62
+ ld hl, ItemUseBallText03
+ jp z, .printMessage
+ cp $63
+ ld hl, ItemUseBallText04
+ jp z, .printMessage
; Save current HP.
- ld hl,wEnemyMonHP
- ld a,[hli]
+ ld hl, wEnemyMonHP
+ ld a, [hli]
push af
- ld a,[hli]
+ ld a, [hli]
push af
; Save status ailment.
inc hl
- ld a,[hl]
+ ld a, [hl]
push af
push hl
@@ -485,26 +484,26 @@ ItemUseBall:
; If the Pokémon is transformed, the Pokémon is assumed to be a Ditto.
; This is a bug because a wild Pokémon could have used Transform via
; Mirror Move even though the only wild Pokémon that knows Transform is Ditto.
- ld hl,wEnemyBattleStatus3
- bit Transformed,[hl]
- jr z,.notTransformed
- ld a,DITTO
- ld [wEnemyMonSpecies2],a
+ ld hl, wEnemyBattleStatus3
+ bit TRANSFORMED, [hl]
+ jr z, .notTransformed
+ ld a, DITTO
+ ld [wEnemyMonSpecies2], a
jr .skip6
.notTransformed
; If the Pokémon is not transformed, set the transformed bit and copy the
; DVs to wTransformedEnemyMonOriginalDVs so that LoadEnemyMonData won't generate
; new DVs.
- set Transformed,[hl]
- ld hl,wTransformedEnemyMonOriginalDVs
- ld a,[wEnemyMonDVs]
- ld [hli],a
- ld a,[wEnemyMonDVs + 1]
- ld [hl],a
+ set TRANSFORMED, [hl]
+ ld hl, wTransformedEnemyMonOriginalDVs
+ ld a, [wEnemyMonDVs]
+ ld [hli], a
+ ld a, [wEnemyMonDVs + 1]
+ ld [hl], a
.skip6
- ld a,[wcf91]
+ ld a, [wcf91]
push af
ld a, [wEnemyMonSpecies2]
ld [wcf91], a
@@ -520,17 +519,17 @@ ItemUseBall:
pop af
ld [hld], a
pop af
- ld [hl],a
- ld a,[wEnemyMonSpecies]
- ld [wCapturedMonSpecies],a
- ld [wcf91],a
- ld [wd11e],a
- ld a,[wBattleType]
+ ld [hl], a
+ ld a, [wEnemyMonSpecies]
+ ld [wCapturedMonSpecies], a
+ ld [wcf91], a
+ ld [wd11e], a
+ ld a, [wBattleType]
cp BATTLE_TYPE_OLD_MAN ; is this the old man battle?
- jp z,.oldManCaughtMon ; if so, don't give the player the caught Pokémon
+ jp z, .oldManCaughtMon ; if so, don't give the player the caught Pokémon
cp BATTLE_TYPE_PIKACHU
- jr z,.oldManCaughtMon ; same with Pikachu battle
- ld hl,ItemUseBallText05
+ jr z, .oldManCaughtMon ; same with Pikachu battle
+ ld hl, ItemUseBallText05
call PrintText
; Add the caught Pokémon to the Pokédex.
@@ -551,13 +550,13 @@ ItemUseBall:
pop af
and a ; was the Pokémon already in the Pokédex?
- jr nz,.skipShowingPokedexData ; if so, don't show the Pokédex data
+ jr nz, .skipShowingPokedexData ; if so, don't show the Pokédex data
- ld hl,ItemUseBallText06
+ ld hl, ItemUseBallText06
call PrintText
call ClearSprites
- ld a,[wEnemyMonSpecies]
- ld [wd11e],a
+ ld a, [wEnemyMonSpecies]
+ ld [wd11e], a
predef ShowPokedexData
.skipShowingPokedexData
@@ -565,9 +564,9 @@ ItemUseBall:
ld [wd49c], a
ld a, $85
ld [wPikachuMood], a
- ld a,[wPartyCount]
+ ld a, [wPartyCount]
cp PARTY_LENGTH ; is party full?
- jr z,.sendToBox
+ jr z, .sendToBox
xor a ; PLAYER_PARTY_DATA
ld [wMonDataLocation], a
call ClearSprites
@@ -579,28 +578,28 @@ ItemUseBall:
.sendToBox
call ClearSprites
call SendNewMonToBox
- ld hl,ItemUseBallText07
+ ld hl, ItemUseBallText07
CheckEvent EVENT_MET_BILL
- jr nz,.printTransferredToPCText
- ld hl,ItemUseBallText08
+ jr nz, .printTransferredToPCText
+ ld hl, ItemUseBallText08
.printTransferredToPCText
call PrintText
jr .done
.oldManCaughtMon
- ld hl,ItemUseBallText05
+ ld hl, ItemUseBallText05
.printMessage
call PrintText
call ClearSprites
.done
- ld a,[wBattleType]
+ ld a, [wBattleType]
and a ; is this the old man battle?
ret nz ; if so, don't remove a ball from the bag
; Remove a ball from the bag.
- ld hl,wNumBagItems
+ ld hl, wNumBagItems
inc a
ld [wItemQuantity], a
jp RemoveItemFromInventory
@@ -633,7 +632,8 @@ ItemUseBallText05:
;"All right! {MonName} was caught!"
;play sound
TX_FAR _ItemUseBallText05
- db $12, $06
+ TX_SFX_CAUGHT_MON
+ TX_BLINK
db "@"
ItemUseBallText07:
;"X was transferred to Bill's PC"
@@ -648,7 +648,8 @@ ItemUseBallText06:
;"New DEX data will be added..."
;play sound
TX_FAR _ItemUseBallText06
- db $13, $06
+ TX_SFX_DEX_PAGE_ADDED
+ TX_BLINK
db "@"
ItemUseTownMap:
@@ -916,7 +917,6 @@ ItemUseMedicine:
; if using softboiled
call GoBackToPartyMenu
jr .getPartyMonDataAddress
-
.notUsingSoftboiled
call DisplayPartyMenu
.getPartyMonDataAddress
@@ -962,11 +962,11 @@ ItemUseMedicine:
jp nc, .useVitamin ; if it's a vitamin or Rare Candy
cp FULL_RESTORE
jr nc, .healHP ; if it's a Full Restore or one of the potions
-; fall through if it's one of the status-specifc healing items
+; fall through if it's one of the status-specific healing items
.cureStatusAilment
- ld bc,wPartyMon1Status - wPartyMon1
- add hl,bc ; hl now points to status
- ld a,[wcf91]
+ ld bc, wPartyMon1Status - wPartyMon1
+ add hl, bc ; hl now points to status
+ ld a, [wcf91]
lb bc, ANTIDOTE_MSG, 1 << PSN
cp ANTIDOTE
jr z, .checkMonStatus
@@ -1000,12 +1000,12 @@ ItemUseMedicine:
ld [wBattleMonStatus], a ; remove the status ailment in the in-battle pokemon data
push hl
ld hl, wPlayerBattleStatus3
- res BadlyPoisoned, [hl] ; heal Toxic status
+ res BADLY_POISONED, [hl] ; heal Toxic status
pop hl
- ld bc,wPartyMon1Stats - wPartyMon1Status
- add hl,bc ; hl now points to party stats
- ld de,wBattleMonStats
- ld bc,NUM_STATS * 2
+ ld bc, wPartyMon1Stats - wPartyMon1Status
+ add hl, bc ; hl now points to party stats
+ ld de, wBattleMonStats
+ ld bc, NUM_STATS * 2
call CopyData ; copy party stats to in-battle stat data
predef DoubleOrHalveSelectedStats
jp .doneHealing
@@ -1077,8 +1077,8 @@ ItemUseMedicine:
.compareCurrentHPToMaxHP
push hl
push bc
- ld bc,wPartyMon1MaxHP - (wPartyMon1HP + 1)
- add hl,bc ; hl now points to max HP
+ ld bc, wPartyMon1MaxHP - (wPartyMon1HP + 1)
+ add hl, bc ; hl now points to max HP
pop bc
ld a, [hli]
cp b
@@ -1107,16 +1107,16 @@ ItemUseMedicine:
.notFullHP ; if the pokemon's current HP doesn't equal its max HP
xor a
ld [wLowHealthAlarm], a ;disable low health alarm
- ld [wChannelSoundIDs + CH4], a
+ ld [wChannelSoundIDs + Ch5], a
push hl
push de
- ld bc,wPartyMon1MaxHP - (wPartyMon1HP + 1)
- add hl,bc ; hl now points to max HP
- ld a,[hli]
- ld [wHPBarMaxHP+1],a
- ld a,[hl]
- ld [wHPBarMaxHP],a ; max HP stored at wHPBarMaxHP (2 bytes, big-endian)
- ld a,[wPseudoItemID]
+ ld bc, wPartyMon1MaxHP - (wPartyMon1HP + 1)
+ add hl, bc ; hl now points to max HP
+ ld a, [hli]
+ ld [wHPBarMaxHP+1], a
+ ld a, [hl]
+ ld [wHPBarMaxHP], a ; max HP stored at wHPBarMaxHP (2 bytes, big-endian)
+ ld a, [wPseudoItemID]
and a ; using Softboiled?
jp z, .notUsingSoftboiled2
; if using softboiled
@@ -1143,8 +1143,8 @@ ItemUseMedicine:
ld [H_DIVISOR], a
ld b, 2 ; number of bytes
call Divide ; get 1/5 of max HP of pokemon that used Softboiled
- ld bc,(wPartyMon1HP + 1) - (wPartyMon1MaxHP + 1)
- add hl,bc ; hl now points to LSB of current HP of pokemon that used Softboiled
+ ld bc, (wPartyMon1HP + 1) - (wPartyMon1MaxHP + 1)
+ add hl, bc ; hl now points to LSB of current HP of pokemon that used Softboiled
; subtract 1/5 of max HP from current HP of pokemon that used Softboiled
ld a, [H_QUOTIENT + 3]
push af
@@ -1221,16 +1221,16 @@ ItemUseMedicine:
.noCarry
push de
inc hl
- ld d,h
- ld e,l ; de now points to current HP
- ld hl,(wPartyMon1MaxHP + 1) - (wPartyMon1HP + 1)
- add hl,de ; hl now points to max HP
- ld a,[wcf91]
- cp a,REVIVE
- jr z,.setCurrentHPToHalfMaxHP
- ld a,[hld]
- ld b,a
- ld a,[de]
+ ld d, h
+ ld e, l ; de now points to current HP
+ ld hl, (wPartyMon1MaxHP + 1) - (wPartyMon1HP + 1)
+ add hl, de ; hl now points to max HP
+ ld a, [wcf91]
+ cp REVIVE
+ jr z, .setCurrentHPToHalfMaxHP
+ ld a, [hld]
+ ld b, a
+ ld a, [de]
sub b
dec de
ld b, [hl]
@@ -1269,11 +1269,11 @@ ItemUseMedicine:
ld [wHPBarNewHP], a
dec de
.doneHealingPartyHP ; done updating the pokemon's current HP in the party data structure
- ld a,[wcf91]
- cp a,FULL_RESTORE
- jr nz,.updateInBattleData
- ld bc,wPartyMon1Status - (wPartyMon1MaxHP + 1)
- add hl,bc
+ ld a, [wcf91]
+ cp FULL_RESTORE
+ jr nz, .updateInBattleData
+ ld bc, wPartyMon1Status - (wPartyMon1MaxHP + 1)
+ add hl, bc
xor a
ld [hl], a ; remove the status ailment in the party data
.updateInBattleData
@@ -1294,8 +1294,8 @@ ItemUseMedicine:
xor a
ld [wBattleMonStatus], a ; remove the status ailment in the in-battle pokemon data
.calculateHPBarCoords
- ld hl,wOAMBuffer + $90
- ld bc,2 * SCREEN_WIDTH
+ ld hl, wOAMBuffer + $90
+ ld bc, 2 * SCREEN_WIDTH
inc d
.calculateHPBarCoordsLoop
add hl, bc
@@ -1377,13 +1377,13 @@ ItemUseMedicine:
.useVitamin
push hl
- ld a,[hl]
- ld [wd0b5],a
- ld [wd11e],a
- ld bc,wPartyMon1Level - wPartyMon1
- add hl,bc ; hl now points to level
- ld a,[hl] ; a = level
- ld [wCurEnemyLVL],a ; store level
+ ld a, [hl]
+ ld [wd0b5], a
+ ld [wd11e], a
+ ld bc, wPartyMon1Level - wPartyMon1
+ add hl, bc ; hl now points to level
+ ld a, [hl] ; a = level
+ ld [wCurEnemyLVL], a ; store level
call GetMonHeader
push de
ld a, d
@@ -1397,8 +1397,8 @@ ItemUseMedicine:
push hl
sub HP_UP
add a
- ld bc,wPartyMon1HPExp - wPartyMon1
- add hl,bc
+ ld bc, wPartyMon1HPExp - wPartyMon1
+ add hl, bc
add l
ld l, a
jr nc, .noCarry2
@@ -1448,21 +1448,21 @@ ItemUseMedicine:
jp GBPalWhiteOut
.recalculateStats
- ld bc,wPartyMon1Stats - wPartyMon1
- add hl,bc
- ld d,h
- ld e,l ; de now points to stats
- ld bc,(wPartyMon1Exp + 2) - wPartyMon1Stats
- add hl,bc ; hl now points to LSB of experience
- ld b,1
+ ld bc, wPartyMon1Stats - wPartyMon1
+ add hl, bc
+ ld d, h
+ ld e, l ; de now points to stats
+ ld bc, (wPartyMon1Exp + 2) - wPartyMon1Stats
+ add hl, bc ; hl now points to LSB of experience
+ ld b, 1
jp CalcStats ; recalculate stats
.useRareCandy
push hl
- ld bc,wPartyMon1Level - wPartyMon1
- add hl,bc ; hl now points to level
- ld a,[hl] ; a = level
- cp a, MAX_LEVEL
- jr z,.vitaminNoEffect ; can't raise level above 100
+ ld bc, wPartyMon1Level - wPartyMon1
+ add hl, bc ; hl now points to level
+ ld a, [hl] ; a = level
+ cp MAX_LEVEL
+ jr z, .vitaminNoEffect ; can't raise level above 100
inc a
ld [hl], a ; store incremented level
ld [wCurEnemyLVL], a
@@ -1472,8 +1472,8 @@ ItemUseMedicine:
callab CalcExperience ; calculate experience for next level and store it at $ff96
pop de
pop hl
- ld bc,wPartyMon1Exp - wPartyMon1Level
- add hl,bc ; hl now points to MSB of experience
+ ld bc, wPartyMon1Exp - wPartyMon1Level
+ add hl, bc ; hl now points to MSB of experience
; update experience to minimum for new level
ld a, [hExperience]
ld [hli], a
@@ -1488,18 +1488,18 @@ ItemUseMedicine:
push af
push de
push hl
- ld bc,wPartyMon1MaxHP - wPartyMon1
- add hl,bc ; hl now points to MSB of max HP
- ld a,[hli]
- ld b,a
- ld c,[hl]
+ ld bc, wPartyMon1MaxHP - wPartyMon1
+ add hl, bc ; hl now points to MSB of max HP
+ ld a, [hli]
+ ld b, a
+ ld c, [hl]
pop hl
push bc
push hl
call .recalculateStats
pop hl
- ld bc,(wPartyMon1MaxHP + 1) - wPartyMon1
- add hl,bc ; hl now points to LSB of max HP
+ ld bc, (wPartyMon1MaxHP + 1) - wPartyMon1
+ add hl, bc ; hl now points to LSB of max HP
pop bc
ld a, [hld]
sub c
@@ -1508,9 +1508,9 @@ ItemUseMedicine:
sbc b
ld b, a ; bc = the amount of max HP gained from leveling up
; add the amount gained to the current HP
- ld de,(wPartyMon1HP + 1) - wPartyMon1MaxHP
- add hl,de ; hl now points to LSB of current HP
- ld a,[hl]
+ ld de, (wPartyMon1HP + 1) - wPartyMon1MaxHP
+ add hl, de ; hl now points to LSB of current HP
+ ld a, [hl]
add c
ld [hld], a
ld a, [hl]
@@ -1572,7 +1572,7 @@ VitaminText:
ItemUseBait:
ld hl, ThrewBaitText
call PrintText
- ld hl, wEnemyMonCatchRate ; catch rate
+ ld hl, wEnemyMonActualCatchRate ; catch rate
srl [hl] ; halve catch rate
ld a, BAIT_ANIM
ld hl, wSafariBaitFactor ; bait factor
@@ -1582,7 +1582,7 @@ ItemUseBait:
ItemUseRock:
ld hl, ThrewRockText
call PrintText
- ld hl, wEnemyMonCatchRate ; catch rate
+ ld hl, wEnemyMonActualCatchRate ; catch rate
ld a, [hl]
add a ; double catch rate
jr nc, .noCarry
@@ -1654,7 +1654,7 @@ ItemUseEscapeRope:
ResetEvent EVENT_IN_SAFARI_ZONE
xor a
ld [wNumSafariBalls], a
- ld [wSafariZoneEntranceCurScript], a
+ ld [wSafariZoneGateCurScript], a
inc a
ld [wEscapedFromBattle], a
ld [wActionResultOrTookBattleTurn], a ; item used
@@ -1690,7 +1690,7 @@ ItemUseXAccuracy:
and a
jp z, ItemUseNotTime
ld hl, wPlayerBattleStatus2
- set UsingXAccuracy, [hl] ; X Accuracy bit
+ set USING_X_ACCURACY, [hl] ; X Accuracy bit
callabd_ModifyPikachuHappiness PIKAHAPPY_USEDXITEM
jp PrintItemUseTextAndRemoveItem
@@ -1700,10 +1700,10 @@ ItemUseCardKey:
xor a
ld [wUnusedD71F], a
call GetTileAndCoordsInFrontOfPlayer
- ld a,[GetTileAndCoordsInFrontOfPlayer]
- cp a,$18
- jr nz,.next0
- ld hl,CardKeyTable1
+ ld a, [GetTileAndCoordsInFrontOfPlayer]
+ cp $18
+ jr nz, .next0
+ ld hl, CardKeyTable1
jr .next1
.next0
@@ -1813,7 +1813,7 @@ ItemUseGuardSpec:
ld [wWhichPokemon], a
ld hl, wPlayerBattleStatus2
- set ProtectedByMist, [hl] ; Mist bit
+ set PROTECTED_BY_MIST, [hl] ; Mist bit
jp PrintItemUseTextAndRemoveItem
ItemUseSuperRepel:
@@ -1838,7 +1838,7 @@ ItemUseDireHit:
ld [wWhichPokemon], a
ld hl, wPlayerBattleStatus2
- set GettingPumped, [hl] ; Focus Energy bit
+ set GETTING_PUMPED, [hl] ; Focus Energy bit
jp PrintItemUseTextAndRemoveItem
ItemUseXStat:
@@ -1939,7 +1939,7 @@ ItemUsePokeflute:
.inBattle
xor a
ld [wWereAnyMonsAsleep], a
- ld b, $ff ^ SLP
+ ld b, ~SLP & $ff
ld hl, wPartyMon1Status
call WakeUpEntireParty
ld a, [wIsInBattle]
@@ -1978,7 +1978,7 @@ ItemUsePokeflute:
call WaitForSoundToFinish ; wait for sound to end
callba Music_PokeFluteInBattle ; play in-battle pokeflute music
.musicWaitLoop ; wait for music to finish playing
- ld a, [wChannelSoundIDs + CH6]
+ ld a, [wChannelSoundIDs + Ch7]
and a ; music off?
jr nz, .musicWaitLoop
.skipMusic
@@ -2039,7 +2039,7 @@ FluteWokeUpText:
PlayedFluteHadEffectText:
TX_FAR _PlayedFluteHadEffectText
- db $06
+ TX_BLINK
TX_ASM
ld a, [wIsInBattle]
and a
@@ -2050,7 +2050,7 @@ PlayedFluteHadEffectText:
ld c, BANK(SFX_Pokeflute)
call PlayMusic
.musicWaitLoop ; wait for music to finish playing
- ld a, [wChannelSoundIDs + CH2]
+ ld a, [wChannelSoundIDs + Ch3]
cp SFX_POKEFLUTE
jr z, .musicWaitLoop
call PlayDefaultMusic ; start playing normal music again
@@ -2241,7 +2241,7 @@ ItemUsePPRestore:
cp b
jr nz, .usePPItem
ld a, [wPlayerBattleStatus3]
- bit Transformed, a
+ bit TRANSFORMED, a
jr z, .usePPItem
call ItemUseNotTime
jp .itemNotUsed
@@ -2278,12 +2278,12 @@ ItemUsePPRestore:
cp ETHER
jr nc, .useEther ; if Ether or Max Ether
.usePPUp
- ld bc,wPartyMon1PP - wPartyMon1Moves
- add hl,bc
- ld a,[hl] ; move PP
- cp a,3 << 6 ; have 3 PP Ups already been used?
- jr c,.PPNotMaxedOut
- ld hl,PPMaxedOutText
+ ld bc, wPartyMon1PP - wPartyMon1Moves
+ add hl, bc
+ ld a, [hl] ; move PP
+ cp 3 << 6 ; have 3 PP Ups already been used?
+ jr c, .PPNotMaxedOut
+ ld hl, PPMaxedOutText
call PrintText
jr .chooseMove
@@ -2678,19 +2678,19 @@ DontHavePokemonText:
ItemUseText00:
TX_FAR _ItemUseText001
- db $05
+ TX_LINE
TX_FAR _ItemUseText002
db "@"
GotOnBicycleText:
TX_FAR _GotOnBicycleText1
- db $05
+ TX_LINE
TX_FAR _GotOnBicycleText2
db "@"
GotOffBicycleText:
TX_FAR _GotOffBicycleText1
- db $05
+ TX_LINE
TX_FAR _GotOffBicycleText2
db "@"
@@ -2756,7 +2756,7 @@ AddBonusPP:
ld a, [hl] ; move PP
ld b, a
swap a
- and %1111
+ and %00001111
srl a
srl a
ld c, a ; c = number of PP Ups used
diff --git a/engine/learn_move.asm b/engine/learn_move.asm
index dcaf4235..021d0eeb 100755
--- a/engine/learn_move.asm
+++ b/engine/learn_move.asm
@@ -184,7 +184,9 @@ TryingToLearn:
LearnedMove1Text:
TX_FAR _LearnedMove1Text
- db $b,6,"@"
+ TX_SFX_ITEM_1 ; plays SFX_GET_ITEM_1 in the party menu (rare candy) and plays SFX_LEVEL_UP in battle
+ TX_BLINK
+ db "@"
WhichMoveToForgetText:
TX_FAR _WhichMoveToForgetText
@@ -206,7 +208,7 @@ OneTwoAndText:
; bugfix: In Red/Blue, the SFX_SWAP sound was played in the wrong bank, which played an incorrect sound
; Yellow has fixed this by swapping to the correct bank
TX_FAR _OneTwoAndText
- db $a
+ TX_DELAY
TX_ASM
push af
push bc
@@ -238,7 +240,7 @@ OneTwoAndText:
PoofText:
TX_FAR _PoofText
- db $a
+ TX_DELAY
ForgotAndText:
TX_FAR _ForgotAndText
db "@"
diff --git a/engine/load_pokedex_tiles.asm b/engine/load_pokedex_tiles.asm
index 637b7a24..70bcf04d 100755
--- a/engine/load_pokedex_tiles.asm
+++ b/engine/load_pokedex_tiles.asm
@@ -1,11 +1,11 @@
; Loads tile patterns for tiles used in the pokedex.
LoadPokedexTilePatterns:
call LoadHpBarAndStatusTilePatterns
- ld de,PokedexTileGraphics
- ld hl,vChars2 + $600
+ ld de, PokedexTileGraphics
+ ld hl, vChars2 + $600
lb bc, BANK(PokedexTileGraphics), (PokedexTileGraphicsEnd - PokedexTileGraphics) / $10
call CopyVideoData
- ld de,PokeballTileGraphics
- ld hl,vChars2 + $720
+ ld de, PokeballTileGraphics
+ ld hl, vChars2 + $720
lb bc, BANK(PokeballTileGraphics), $01
jp CopyVideoData ; load pokeball tile for marking caught mons
diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm
index 2f7dcaa9..41626310 100644
--- a/engine/menu/bills_pc.asm
+++ b/engine/menu/bills_pc.asm
@@ -103,7 +103,7 @@ BillsPC_::
bit 3, a ; accessing Bill's PC through another PC?
jr nz, BillsPCMenu
; accessing it directly
- ld a, $99
+ ld a, SFX_TURN_ON_PC
call PlaySound
ld hl, SwitchOnText
call PrintText
@@ -190,7 +190,7 @@ ExitBillsPC:
jr nz, .next
; accessing it directly
call LoadTextBoxTilePatterns
- ld a, $9a
+ ld a, SFX_TURN_OFF_PC
call PlaySound
call WaitForSoundToFinish
.next
diff --git a/engine/menu/diploma_1.asm b/engine/menu/diploma.asm
index 3f309bd2..3f309bd2 100644
--- a/engine/menu/diploma_1.asm
+++ b/engine/menu/diploma.asm
diff --git a/engine/draw_badges.asm b/engine/menu/draw_badges.asm
index 9e6262a0..9e6262a0 100644
--- a/engine/draw_badges.asm
+++ b/engine/menu/draw_badges.asm
diff --git a/engine/menu/draw_start_menu.asm b/engine/menu/draw_start_menu.asm
new file mode 100644
index 00000000..632b8c3a
--- /dev/null
+++ b/engine/menu/draw_start_menu.asm
@@ -0,0 +1,87 @@
+; function that displays the start menu
+DrawStartMenu:
+ CheckEvent EVENT_GOT_POKEDEX
+; menu with pokedex
+ coord hl, 10, 0
+ lb bc, 14, 8
+ jr nz,.drawTextBoxBorder
+; shorter menu if the player doesn't have the pokedex
+ coord hl, 10, 0
+ lb bc, 12, 8
+.drawTextBoxBorder
+ call TextBoxBorder
+ ld a, D_DOWN | D_UP | START | B_BUTTON | A_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, $02
+ ld [wTopMenuItemY], a ; Y position of first menu choice
+ ld a, $0b
+ ld [wTopMenuItemX], a ; X position of first menu choice
+ ld a, [wBattleAndStartSavedMenuItem] ; remembered menu selection from last time
+ ld [wCurrentMenuItem], a
+ ld [wLastMenuItem], a
+ xor a
+ ld [wMenuWatchMovingOutOfBounds], a
+ ld hl, wd730
+ set 6, [hl] ; no pauses between printing each letter
+ coord hl, 12, 2
+ CheckEvent EVENT_GOT_POKEDEX
+; case for not having pokedex
+ ld a, $06
+ jr z, .storeMenuItemCount
+; case for having pokedex
+ ld de, StartMenuPokedexText
+ call PrintStartMenuItem
+ ld a, $07
+.storeMenuItemCount
+ ld [wMaxMenuItem], a ; number of menu items
+ ld de, StartMenuPokemonText
+ call PrintStartMenuItem
+ ld de, StartMenuItemText
+ call PrintStartMenuItem
+ ld de, wPlayerName ; player's name
+ call PrintStartMenuItem
+ ld a, [wd72e]
+ bit 6, a ; is the player using the link feature?
+; case for not using link feature
+ ld de, StartMenuSaveText
+ jr z, .printSaveOrResetText
+; case for using link feature
+ ld de, StartMenuResetText
+.printSaveOrResetText
+ call PrintStartMenuItem
+ ld de, StartMenuOptionText
+ call PrintStartMenuItem
+ ld de, StartMenuExitText
+ call PlaceString
+ ld hl, wd730
+ res 6, [hl] ; turn pauses between printing letters back on
+ ret
+
+StartMenuPokedexText:
+ db "POKéDEX@"
+
+StartMenuPokemonText:
+ db "#MON@"
+
+StartMenuItemText:
+ db "ITEM@"
+
+StartMenuSaveText:
+ db "SAVE@"
+
+StartMenuResetText:
+ db "RESET@"
+
+StartMenuExitText:
+ db "EXIT@"
+
+StartMenuOptionText:
+ db "OPTION@"
+
+PrintStartMenuItem:
+ push hl
+ call PlaceString
+ pop hl
+ ld de, SCREEN_WIDTH * 2
+ add hl, de
+ ret
diff --git a/engine/menu/link_menu.asm b/engine/menu/link_menu.asm
index 3782e93e..9bc28b31 100644
--- a/engine/menu/link_menu.asm
+++ b/engine/menu/link_menu.asm
@@ -904,7 +904,7 @@ TextTerminator_f5a16:
db "@"
TradeCenterText:
- db "TRADE CENTER"
+ db "TRADE CENTER"
next "COLOSSEUM"
next "COLOSSEUM2"
next "CANCEL@"
diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm
index 5ff9cc7d..ce27ebba 100755
--- a/engine/menu/main_menu.asm
+++ b/engine/menu/main_menu.asm
@@ -2,42 +2,42 @@ MainMenu:
; Check save file
call InitOptions
xor a
- ld [wOptionsInitialized],a
+ ld [wOptionsInitialized], a
inc a
- ld [wSaveFileStatus],a
+ ld [wSaveFileStatus], a
call CheckForPlayerNameInSRAM
- jr nc,.mainMenuLoop
+ jr nc, .mainMenuLoop
predef LoadSAV
.mainMenuLoop
- ld c,20
+ ld c, 20
call DelayFrames
xor a ; LINK_STATE_NONE
- ld [wLinkState],a
- ld hl,wPartyAndBillsPCSavedMenuItem
- ld [hli],a
- ld [hli],a
- ld [hli],a
- ld [hl],a
- ld [wDefaultMap],a
- ld hl,wd72e
- res 6,[hl]
+ ld [wLinkState], a
+ ld hl, wPartyAndBillsPCSavedMenuItem
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld [wDefaultMap], a
+ ld hl, wd72e
+ res 6, [hl]
call ClearScreen
call RunDefaultPaletteCommand
call LoadTextBoxTilePatterns
call LoadFontTilePatterns
- ld hl,wd730
- set 6,[hl]
- ld a,[wSaveFileStatus]
- cp a,1
- jr z,.noSaveFile
+ ld hl, wd730
+ set 6, [hl]
+ ld a, [wSaveFileStatus]
+ cp 1
+ jr z, .noSaveFile
; there's a save file
coord hl, 0, 0
lb bc, 6, 13
call TextBoxBorder
coord hl, 2, 2
- ld de,ContinueText
+ ld de, ContinueText
call PlaceString
jr .next2
.noSaveFile
@@ -45,89 +45,89 @@ MainMenu:
lb bc, 4, 13
call TextBoxBorder
coord hl, 2, 2
- ld de,NewGameText
+ ld de, NewGameText
call PlaceString
.next2
- ld hl,wd730
- res 6,[hl]
+ ld hl, wd730
+ res 6, [hl]
call UpdateSprites
xor a
- ld [wCurrentMenuItem],a
- ld [wLastMenuItem],a
- ld [wMenuJoypadPollCount],a
+ ld [wCurrentMenuItem], a
+ ld [wLastMenuItem], a
+ ld [wMenuJoypadPollCount], a
inc a
- ld [wTopMenuItemX],a
+ ld [wTopMenuItemX], a
inc a
- ld [wTopMenuItemY],a
- ld a,A_BUTTON | B_BUTTON | START
- ld [wMenuWatchedKeys],a
- ld a,[wSaveFileStatus]
- ld [wMaxMenuItem],a
+ ld [wTopMenuItemY], a
+ ld a, A_BUTTON | B_BUTTON | START
+ ld [wMenuWatchedKeys], a
+ ld a, [wSaveFileStatus]
+ ld [wMaxMenuItem], a
call HandleMenuInput
- bit 1,a ; pressed B?
- jp nz,DisplayTitleScreen ; if so, go back to the title screen
- ld c,20
+ bit 1, a ; pressed B?
+ jp nz, DisplayTitleScreen ; if so, go back to the title screen
+ ld c, 20
call DelayFrames
- ld a,[wCurrentMenuItem]
- ld b,a
- ld a,[wSaveFileStatus]
- cp a,2
- jp z,.skipInc
+ ld a, [wCurrentMenuItem]
+ ld b, a
+ ld a, [wSaveFileStatus]
+ cp 2
+ jp z, .skipInc
; If there's no save file, increment the current menu item so that the numbers
; are the same whether or not there's a save file.
inc b
.skipInc
- ld a,b
+ ld a, b
and a
- jr z,.choseContinue
- cp a,1
- jp z,StartNewGame
+ jr z, .choseContinue
+ cp 1
+ jp z, StartNewGame
call DisplayOptionMenu
- ld a,1
- ld [wOptionsInitialized],a
+ ld a, 1
+ ld [wOptionsInitialized], a
jp .mainMenuLoop
.choseContinue
call DisplayContinueGameInfo
- ld hl,wCurrentMapScriptFlags
- set 5,[hl]
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
.inputLoop
xor a
- ld [hJoyPressed],a
- ld [hJoyReleased],a
- ld [hJoyHeld],a
+ ld [hJoyPressed], a
+ ld [hJoyReleased], a
+ ld [hJoyHeld], a
call Joypad
- ld a,[hJoyHeld]
- bit 0,a
- jr nz,.pressedA
- bit 1,a
- jp nz,.mainMenuLoop ; pressed B
+ ld a, [hJoyHeld]
+ bit 0, a
+ jr nz, .pressedA
+ bit 1, a
+ jp nz, .mainMenuLoop ; pressed B
jr .inputLoop
.pressedA
call GBPalWhiteOutWithDelay3
call ClearScreen
- ld a,PLAYER_DIR_DOWN
- ld [wPlayerDirection],a
- ld c,10
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerDirection], a
+ ld c, 10
call DelayFrames
- ld a,[wNumHoFTeams]
+ ld a, [wNumHoFTeams]
and a
- jp z,SpecialEnterMap
- ld a,[wCurMap] ; map ID
- cp a,HALL_OF_FAME
- jp nz,SpecialEnterMap
+ jp z, SpecialEnterMap
+ ld a, [wCurMap] ; map ID
+ cp HALL_OF_FAME
+ jp nz, SpecialEnterMap
xor a
- ld [wDestinationMap],a
- ld hl,wd732
- set 2,[hl] ; fly warp or dungeon warp
+ ld [wDestinationMap], a
+ ld hl, wd732
+ set 2, [hl] ; fly warp or dungeon warp
call SpecialWarpIn
jp SpecialEnterMap
InitOptions:
- ld a,1 ; no delay
- ld [wLetterPrintingDelayFlags],a
- ld a,3 ; medium speed
- ld [wOptions],a
- ld a,64 ; audio?
+ ld a, 1 ; no delay
+ ld [wLetterPrintingDelayFlags], a
+ ld a, 3 ; medium speed
+ ld [wOptions], a
+ ld a, 64 ; audio?
ld [wPrinterSettings], a
ret
@@ -175,8 +175,8 @@ ContinueText:
db "CONTINUE", $4e
NewGameText:
- db "NEW GAME", $4e
- db "OPTION@"
+ db "NEW GAME"
+ next "OPTION@"
DisplayContinueGameInfo:
xor a
diff --git a/engine/menu/naming_screen.asm b/engine/menu/naming_screen.asm
index 911c4e99..2560677a 100755
--- a/engine/menu/naming_screen.asm
+++ b/engine/menu/naming_screen.asm
@@ -380,10 +380,10 @@ PrintAlphabet:
jp Delay3
LowerCaseAlphabet:
- db "abcdefghijklmnopqrstuvwxyz ×():;[]",$e1,$e2,"-?!♂♀/",$f2,",¥UPPER CASE@"
+ db "abcdefghijklmnopqrstuvwxyz ×():;[]",$e1,$e2,"-?!♂♀/⠄,¥UPPER CASE@"
UpperCaseAlphabet:
- db "ABCDEFGHIJKLMNOPQRSTUVWXYZ ×():;[]",$e1,$e2,"-?!♂♀/",$f2,",¥lower case@"
+ db "ABCDEFGHIJKLMNOPQRSTUVWXYZ ×():;[]",$e1,$e2,"-?!♂♀/⠄,¥lower case@"
PrintNicknameAndUnderscores:
call CalcStringLength
@@ -423,7 +423,7 @@ PrintNicknameAndUnderscores:
call EraseMenuCursor
ld a, $11 ; "ED" x coord
ld [wTopMenuItemX], a
- ld a, $5 ; "ED" y corrd
+ ld a, $5 ; "ED" y coord
ld [wCurrentMenuItem], a
ld a, [wNamingScreenType]
cp NAME_MON_SCREEN
diff --git a/engine/menu/oaks_pc.asm b/engine/menu/oaks_pc.asm
index e4172ec7..03c9b8f1 100755
--- a/engine/menu/oaks_pc.asm
+++ b/engine/menu/oaks_pc.asm
@@ -20,7 +20,8 @@ GetDexRatedText:
ClosedOaksPCText:
TX_FAR _ClosedOaksPCText
- db $0d,"@"
+ TX_WAIT
+ db "@"
AccessedOaksPCText:
TX_FAR _AccessedOaksPCText
diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm
index 669d49db..00c757be 100755
--- a/engine/menu/party_menu.asm
+++ b/engine/menu/party_menu.asm
@@ -19,38 +19,38 @@
; f8: leveled up
DrawPartyMenu_:
xor a
- ld [H_AUTOBGTRANSFERENABLED],a
+ ld [H_AUTOBGTRANSFERENABLED], a
call ClearScreen
call UpdateSprites
callba LoadMonPartySpriteGfxWithLCDDisabled ; load pokemon icon graphics
RedrawPartyMenu_:
- ld a,[wPartyMenuTypeOrMessageID]
- cp a,SWAP_MONS_PARTY_MENU
- jp z,.printMessage
+ ld a, [wPartyMenuTypeOrMessageID]
+ cp SWAP_MONS_PARTY_MENU
+ jp z, .printMessage
call ErasePartyMenuCursors
callba InitPartyMenuBlkPacket
coord hl, 3, 0
- ld de,wPartySpecies
+ ld de, wPartySpecies
xor a
- ld c,a
- ld [hPartyMonIndex],a
- ld [wWhichPartyMenuHPBar],a
+ ld c, a
+ ld [hPartyMonIndex], a
+ ld [wWhichPartyMenuHPBar], a
.loop
- ld a,[de]
- cp a,$FF ; reached the terminator?
- jp z,.afterDrawingMonEntries
+ ld a, [de]
+ cp $FF ; reached the terminator?
+ jp z, .afterDrawingMonEntries
push bc
push de
push hl
- ld a,c
+ ld a, c
push hl
- ld hl,wPartyMonNicks
+ ld hl, wPartyMonNicks
call GetPartyMonName
pop hl
call PlaceString ; print the pokemon's name
- ld a,[hPartyMonIndex]
- ld [wWhichPokemon],a
+ ld a, [hPartyMonIndex]
+ ld [wWhichPokemon], a
callab IsThisPartymonStarterPikachu_Party
jr nc, .regularMon
call CheckPikachuFollowingPlayer
@@ -61,49 +61,49 @@ RedrawPartyMenu_:
callba WriteMonPartySpriteOAMByPartyIndex ; place the appropriate pokemon icon
ld a, [wWhichPokemon]
inc a
- ld [hPartyMonIndex],a
+ ld [hPartyMonIndex], a
call LoadMonData
pop hl
push hl
- ld a,[wMenuItemToSwap]
+ ld a, [wMenuItemToSwap]
and a ; is the player swapping pokemon positions?
- jr z,.skipUnfilledRightArrow
+ jr z, .skipUnfilledRightArrow
; if the player is swapping pokemon positions
dec a
- ld b,a
- ld a,[wWhichPokemon]
+ ld b, a
+ ld a, [wWhichPokemon]
cp b ; is the player swapping the current pokemon in the list?
- jr nz,.skipUnfilledRightArrow
+ jr nz, .skipUnfilledRightArrow
; the player is swapping the current pokemon in the list
dec hl
dec hl
dec hl
- ld a,$EC ; unfilled right arrow menu cursor
- ld [hli],a ; place the cursor
+ ld a, "▷" ; unfilled right arrow menu cursor
+ ld [hli], a ; place the cursor
inc hl
inc hl
.skipUnfilledRightArrow
- ld a,[wPartyMenuTypeOrMessageID] ; menu type
- cp a,TMHM_PARTY_MENU
- jr z,.teachMoveMenu
- cp a,EVO_STONE_PARTY_MENU
- jr z,.evolutionStoneMenu
+ ld a, [wPartyMenuTypeOrMessageID] ; menu type
+ cp TMHM_PARTY_MENU
+ jr z, .teachMoveMenu
+ cp EVO_STONE_PARTY_MENU
+ jr z, .evolutionStoneMenu
push hl
- ld bc,14 ; 14 columns to the right
- add hl,bc
- ld de,wLoadedMonStatus
+ ld bc, 14 ; 14 columns to the right
+ add hl, bc
+ ld de, wLoadedMonStatus
call PrintStatusCondition
pop hl
push hl
- ld bc,20 + 1 ; down 1 row and right 1 column
- ld a,[hFlags_0xFFFA]
- set 0,a
- ld [hFlags_0xFFFA],a
- add hl,bc
+ ld bc, SCREEN_WIDTH + 1 ; down 1 row and right 1 column
+ ld a, [hFlags_0xFFFA]
+ set 0, a
+ ld [hFlags_0xFFFA], a
+ add hl, bc
predef DrawHP2 ; draw HP bar and prints current / max HP
- ld a,[hFlags_0xFFFA]
- res 0,a
- ld [hFlags_0xFFFA],a
+ ld a, [hFlags_0xFFFA]
+ res 0, a
+ ld [hFlags_0xFFFA], a
call SetPartyMenuHPBarColor ; color the HP bar (on SGB)
pop hl
jr .printLevel
@@ -111,26 +111,26 @@ RedrawPartyMenu_:
push hl
predef CanLearnTM ; check if the pokemon can learn the move
pop hl
- ld de,.ableToLearnMoveText
- ld a,c
+ ld de, .ableToLearnMoveText
+ ld a, c
and a
- jr nz,.placeMoveLearnabilityString
- ld de,.notAbleToLearnMoveText
+ jr nz, .placeMoveLearnabilityString
+ ld de, .notAbleToLearnMoveText
.placeMoveLearnabilityString
push hl
- ld bc,20 + 9 ; down 1 row and right 9 columns
- add hl,bc
+ ld bc, 20 + 9 ; down 1 row and right 9 columns
+ add hl, bc
call PlaceString
pop hl
.printLevel
- ld bc,10 ; move 10 columns to the right
- add hl,bc
+ ld bc, 10 ; move 10 columns to the right
+ add hl, bc
call PrintLevel
pop hl
pop de
inc de
- ld bc,2 * 20
- add hl,bc
+ ld bc, 2 * 20
+ add hl, bc
pop bc
inc c
jp .loop
@@ -140,54 +140,54 @@ RedrawPartyMenu_:
db "NOT ABLE@"
.evolutionStoneMenu
push hl
- ld hl,EvosMovesPointerTable
- ld b,0
- ld a,[wLoadedMonSpecies]
+ ld hl, EvosMovesPointerTable
+ ld b, 0
+ ld a, [wLoadedMonSpecies]
dec a
add a
rl b
- ld c,a
- add hl,bc
- ld de,wcd6d
- ld a,BANK(EvosMovesPointerTable)
- ld bc,2
+ ld c, a
+ add hl, bc
+ ld de, wEvosMoves
+ ld a, BANK(EvosMovesPointerTable)
+ ld bc, 2
call FarCopyData
- ld hl,wcd6d
- ld a,[hli]
- ld h,[hl]
- ld l,a
- ld de,wcd6d
- ld a,BANK(EvosMovesPointerTable)
- ld bc, $0d ; Mon133_EvosEnd - Mon133_EvosMoves
+ ld hl, wEvosMoves
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, wEvosMoves
+ ld a, BANK(EvosMovesPointerTable)
+ ld bc, wEvosMoves.end - wEvosMoves
call FarCopyData
- ld hl,wcd6d
- ld de,.notAbleToEvolveText
+ ld hl, wEvosMoves
+ ld de, .notAbleToEvolveText
; loop through the pokemon's evolution entries
.checkEvolutionsLoop
- ld a,[hli]
+ ld a, [hli]
and a ; reached terminator?
- jr z,.placeEvolutionStoneString ; if so, place the "NOT ABLE" string
+ jr z, .placeEvolutionStoneString ; if so, place the "NOT ABLE" string
inc hl
inc hl
- cp a,EV_ITEM
- jr nz,.checkEvolutionsLoop
+ cp EV_ITEM
+ jr nz, .checkEvolutionsLoop
; if it's a stone evolution entry
dec hl
dec hl
- ld b,[hl]
- ld a,[wEvoStoneItemID] ; the stone the player used
+ ld b, [hl]
+ ld a, [wEvoStoneItemID] ; the stone the player used
inc hl
inc hl
inc hl
cp b ; does the player's stone match this evolution entry's stone?
- jr nz,.checkEvolutionsLoop
+ jr nz, .checkEvolutionsLoop
; if it does match
- ld de,.ableToEvolveText
+ ld de, .ableToEvolveText
.placeEvolutionStoneString
pop hl
push hl
- ld bc,20 + 9 ; down 1 row and right 9 columns
- add hl,bc
+ ld bc, 20 + 9 ; down 1 row and right 9 columns
+ add hl, bc
call PlaceString
pop hl
jr .printLevel
@@ -199,44 +199,44 @@ RedrawPartyMenu_:
ld b, SET_PAL_PARTY_MENU
call RunPaletteCommand
.printMessage
- ld hl,wd730
- ld a,[hl]
+ ld hl, wd730
+ ld a, [hl]
push af
push hl
- set 6,[hl] ; turn off letter printing delay
- ld a,[wPartyMenuTypeOrMessageID] ; message ID
- cp a,$F0
- jr nc,.printItemUseMessage
+ set 6, [hl] ; turn off letter printing delay
+ ld a, [wPartyMenuTypeOrMessageID] ; message ID
+ cp $F0
+ jr nc, .printItemUseMessage
add a
- ld hl,PartyMenuMessagePointers
- ld b,0
- ld c,a
- add hl,bc
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld hl, PartyMenuMessagePointers
+ ld b, 0
+ ld c, a
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
call PrintText
.done
pop hl
pop af
- ld [hl],a
- ld a,1
- ld [H_AUTOBGTRANSFERENABLED],a
+ ld [hl], a
+ ld a, 1
+ ld [H_AUTOBGTRANSFERENABLED], a
call Delay3
jp GBPalNormal
.printItemUseMessage
- and a,$0F
- ld hl,PartyMenuItemUseMessagePointers
+ and $0F
+ ld hl, PartyMenuItemUseMessagePointers
add a
- ld c,a
- ld b,0
- add hl,bc
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld c, a
+ ld b, 0
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
push hl
- ld a,[wUsedItemOnWhichPokemon]
- ld hl,wPartyMonNicks
+ ld a, [wUsedItemOnWhichPokemon]
+ ld hl, wPartyMonNicks
call GetPartyMonName
pop hl
call PrintText
@@ -315,8 +315,8 @@ ReviveText:
RareCandyText:
TX_FAR _RareCandyText
- db $0B
- db $06
+ TX_SFX_ITEM_1 ; probably supposed to play SFX_LEVEL_UP but the wrong music bank is loaded
+ TX_BLINK
db "@"
SetPartyMenuHPBarColor:
diff --git a/engine/menu/pc.asm b/engine/menu/pc.asm
index c9e2cf08..5639bd99 100755
--- a/engine/menu/pc.asm
+++ b/engine/menu/pc.asm
@@ -17,34 +17,34 @@ PCMainMenu:
bit 1, a ;if player pressed B
jp nz, LogOff
ld a, [wMaxMenuItem]
- cp a, 2
+ cp 2
jr nz, .next ;if not 2 menu items (not counting log off) (2 occurs before you get the pokedex)
ld a, [wCurrentMenuItem]
and a
jp z, BillsPC ;if current menu item id is 0, it's bills pc
- cp a, 1
+ cp 1
jr z, .playersPC ;if current menu item id is 1, it's players pc
jp LogOff ;otherwise, it's 2, and you're logging off
.next
- cp a, 3
+ cp 3
jr nz, .next2 ;if not 3 menu items (not counting log off) (3 occurs after you get the pokedex, before you beat the pokemon league)
ld a, [wCurrentMenuItem]
and a
jp z, BillsPC ;if current menu item id is 0, it's bills pc
- cp a, 1
+ cp 1
jr z, .playersPC ;if current menu item id is 1, it's players pc
- cp a, 2
+ cp 2
jp z, OaksPC ;if current menu item id is 2, it's oaks pc
jp LogOff ;otherwise, it's 3, and you're logging off
.next2
ld a, [wCurrentMenuItem]
and a
jp z, BillsPC ;if current menu item id is 0, it's bills pc
- cp a, 1
+ cp 1
jr z, .playersPC ;if current menu item id is 1, it's players pc
- cp a, 2
+ cp 2
jp z, OaksPC ;if current menu item id is 2, it's oaks pc
- cp a, 3
+ cp 3
jp z, PKMNLeague ;if current menu item id is 3, it's pkmnleague
jp LogOff ;otherwise, it's 4, and you're logging off
.playersPC
diff --git a/engine/menu/pokedex.asm b/engine/menu/pokedex.asm
index 166e026d..bc2a7e9b 100755
--- a/engine/menu/pokedex.asm
+++ b/engine/menu/pokedex.asm
@@ -260,7 +260,7 @@ Pokedex_DrawInterface:
ld [H_AUTOBGTRANSFERENABLED], a
; draw the horizontal line separating the seen and owned amounts from the menu
coord hl, 15, 6
- ld a, $7a ; horizontal line tile
+ ld a, "─"
ld [hli], a
ld [hli], a
ld [hli], a
@@ -356,7 +356,7 @@ Pokedex_PlacePokemonList:
ld [wd11e], a
ld d, 7
ld a, [wDexMaxSeenMon]
- cp a, 7
+ cp 7
jr nc, .printPokemonLoop
ld d, a
dec a
@@ -403,7 +403,7 @@ Pokedex_PlacePokemonList:
inc hl
call PlaceString
pop hl
- ld bc, 2 * 20
+ ld bc, 2 * SCREEN_WIDTH
add hl, bc
pop de
pop af
@@ -475,7 +475,7 @@ ShowPokedexDataInternal:
ret
HeightWeightText:
- db "HT ?", $60, "??", $61
+ db "HT ?", $60, "??", $61
next "WT ???lb@"
; XXX does anything point to this?
@@ -556,7 +556,7 @@ DrawDexEntryOnScreen:
coord hl, 2, 8
ld a, "№"
ld [hli], a
- ld a, $f2
+ ld a, "⠄"
ld [hli], a
ld de, wd11e
lb bc, LEADING_ZEROES | 1, 3
@@ -628,16 +628,16 @@ DrawDexEntryOnScreen:
call PrintNumber ; print weight
coord hl, 14, 8
ld a, [hDexWeight + 1]
- sub a, 10
+ sub 10
ld a, [hDexWeight]
- sbc a, 0
+ sbc 0
jr nc, .next
ld [hl], "0" ; if the weight is less than 10, put a 0 before the decimal point
.next
inc hl
ld a, [hli]
ld [hld], a ; make space for the decimal point by moving the last digit forward one tile
- ld [hl], $f2 ; decimal point tile
+ ld [hl], "⠄" ; decimal point tile
pop af
ld [hDexWeight + 1], a ; restore original value of [hDexWeight + 1]
pop af
@@ -729,7 +729,7 @@ PokedexToIndex:
ret
IndexToPokedex:
- ; converts the indexédex number at wd11e to a Pokédex number
+ ; converts the index number at wd11e to a Pokédex number
push bc
push hl
ld a, [wd11e]
diff --git a/engine/menu/prize_menu.asm b/engine/menu/prize_menu.asm
index d1b1be3c..405441c8 100755
--- a/engine/menu/prize_menu.asm
+++ b/engine/menu/prize_menu.asm
@@ -1,38 +1,38 @@
CeladonPrizeMenu:
- ld b,COIN_CASE
+ ld b, COIN_CASE
call IsItemInBag
- jr nz,.havingCoinCase
- ld hl,RequireCoinCaseTextPtr
+ jr nz, .havingCoinCase
+ ld hl, RequireCoinCaseTextPtr
jp PrintText
.havingCoinCase
- ld hl,wd730
- set 6,[hl] ; disable letter-printing delay
- ld hl,ExchangeCoinsForPrizesTextPtr
+ ld hl, wd730
+ set 6, [hl] ; disable letter-printing delay
+ ld hl, ExchangeCoinsForPrizesTextPtr
call PrintText
; the following are the menu settings
xor a
- ld [wCurrentMenuItem],a
- ld [wLastMenuItem],a
- ld a,A_BUTTON | B_BUTTON
- ld [wMenuWatchedKeys],a
- ld a,$03
- ld [wMaxMenuItem],a
- ld a,$04
- ld [wTopMenuItemY],a
- ld a,$01
- ld [wTopMenuItemX],a
+ ld [wCurrentMenuItem], a
+ ld [wLastMenuItem], a
+ ld a, A_BUTTON | B_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, $03
+ ld [wMaxMenuItem], a
+ ld a, $04
+ ld [wTopMenuItemY], a
+ ld a, $01
+ ld [wTopMenuItemX], a
call PrintPrizePrice
coord hl, 0, 2
lb bc, 8, 16
call TextBoxBorder
call GetPrizeMenuId
call UpdateSprites
- ld hl,WhichPrizeTextPtr
+ ld hl, WhichPrizeTextPtr
call PrintText
call HandleMenuInput ; menu choice handler
- bit 1,a ; keypress = B (Cancel)
+ bit 1, a ; keypress = B (Cancel)
jr nz, .noChoice
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
cp 3 ; "NO,THANKS" choice
jr z, .noChoice
call HandlePrizeChoice
@@ -43,7 +43,7 @@ CeladonPrizeMenu:
RequireCoinCaseTextPtr:
TX_FAR _RequireCoinCaseText
- db $0D
+ TX_WAIT
db "@"
ExchangeCoinsForPrizesTextPtr:
@@ -131,11 +131,11 @@ GetPrizeMenuId:
; reg. c:
; [low nybble] number of bytes
; [bit 765 = %100] space-padding (not zero-padding)
- ld c,(1 << 7 | 2)
+ ld c, (1 << 7 | 2)
; Function $15CD displays BCD value (same routine
; used by text-command $02)
call PrintBCDNumber
- ld de,wPrize2Price
+ ld de, wPrize2Price
coord hl, 13, 7
ld c, (1 << 7 | 2)
call PrintBCDNumber
@@ -161,8 +161,8 @@ PrintPrizePrice:
ld de, .SixSpacesString
call PlaceString
coord hl, 13, 1
- ld de,wPlayerCoins
- ld c, (1 << 7 | 2)
+ ld de, wPlayerCoins
+ ld c, %10000010
call PrintBCDNumber
ret
@@ -173,7 +173,7 @@ PrintPrizePrice:
db " @"
LoadCoinsToSubtract:
- ld a,[wWhichPrize]
+ ld a, [wWhichPrize]
add a
ld d, 0
ld e, a
@@ -204,7 +204,7 @@ HandlePrizeChoice:
.getMonName
call GetMonName
.givePrize
- ld hl,SoYouWantPrizeTextPtr
+ ld hl, SoYouWantPrizeTextPtr
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem] ; yes/no answer (Y=0, N=1)
@@ -216,7 +216,7 @@ HandlePrizeChoice:
ld a, [wWhichPrizeWindow]
cp $02
jr nz, .giveMon
- ld a,[wd11e]
+ ld a, [wd11e]
ld b, a
ld a, 1
ld c, a
@@ -224,20 +224,20 @@ HandlePrizeChoice:
jr nc, .bagFull
jr .subtractCoins
.giveMon
- ld a,[wd11e]
- ld [wcf91],a
+ ld a, [wd11e]
+ ld [wcf91], a
push af
call GetPrizeMonLevel
- ld c,a
+ ld c, a
pop af
- ld b,a
+ ld b, a
call GivePokemon
; If either the party or box was full, wait after displaying message.
push af
- ld a,[wAddedToParty]
+ ld a, [wAddedToParty]
and a
- call z,WaitForTextScrollButtonPress
+ call z, WaitForTextScrollButtonPress
pop af
; If the mon couldn't be given to the player (because both the party and box
@@ -246,19 +246,19 @@ HandlePrizeChoice:
.subtractCoins
call LoadCoinsToSubtract
- ld hl,hCoins + 1
- ld de,wPlayerCoins + 1
- ld c,$02 ; how many bytes
+ ld hl, hCoins + 1
+ ld de, wPlayerCoins + 1
+ ld c, $02 ; how many bytes
predef SubBCDPredef
jp PrintPrizePrice
.bagFull
- ld hl,PrizeRoomBagIsFullTextPtr
+ ld hl, PrizeRoomBagIsFullTextPtr
jp PrintText
.notEnoughCoins
- ld hl,SorryNeedMoreCoinsText
+ ld hl, SorryNeedMoreCoinsText
jp PrintText
.printOhFineThen
- ld hl,OhFineThenTextPtr
+ ld hl, OhFineThenTextPtr
jp PrintText
UnknownPrizeData:
@@ -267,7 +267,7 @@ UnknownPrizeData:
HereYouGoTextPtr:
TX_FAR _HereYouGoText
- db $0D
+ TX_WAIT
db "@"
SoYouWantPrizeTextPtr:
@@ -276,17 +276,17 @@ SoYouWantPrizeTextPtr:
SorryNeedMoreCoinsText:
TX_FAR _SorryNeedMoreCoinsText
- db $0D
+ TX_WAIT
db "@"
PrizeRoomBagIsFullTextPtr:
TX_FAR _OopsYouDontHaveEnoughRoomText
- db $0D
+ TX_WAIT
db "@"
OhFineThenTextPtr:
TX_FAR _OhFineThenText
- db $0D ; wait keypress (A/B) without blink
+ TX_WAIT
db "@"
GetPrizeMonLevel:
diff --git a/engine/menu/start_menu.asm b/engine/menu/start_menu.asm
index af687432..498d1467 100755
--- a/engine/menu/start_menu.asm
+++ b/engine/menu/start_menu.asm
@@ -53,7 +53,7 @@ RedisplayStartMenu_DoNotDrawStartMenu:
ld a, [wCurrentMenuItem]
ld [wBattleAndStartSavedMenuItem], a ; save current menu selection
ld a, b
- and a, %00001010 ; was the Start button or B button pressed?
+ and %00001010 ; was the Start button or B button pressed?
jp nz, CloseStartMenu
call SaveScreenTilesToBuffer2 ; copy background from wTileMap to wTileMapBackup2
CheckEvent EVENT_GOT_POKEDEX
@@ -61,17 +61,17 @@ RedisplayStartMenu_DoNotDrawStartMenu:
jr nz, .displayMenuItem
inc a ; adjust position to account for missing pokedex menu item
.displayMenuItem
- cp a, 0
+ cp 0
jp z, StartMenu_Pokedex
- cp a, 1
+ cp 1
jp z, StartMenu_Pokemon
- cp a, 2
+ cp 2
jp z, StartMenu_Item
- cp a, 3
+ cp 3
jp z, StartMenu_TrainerInfo
- cp a, 4
+ cp 4
jp z, StartMenu_SaveReset
- cp a, 5
+ cp 5
jp z, StartMenu_Option
; EXIT falls through to here
diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm
index a93fb2e3..abc8f000 100755
--- a/engine/menu/start_sub_menus.asm
+++ b/engine/menu/start_sub_menus.asm
@@ -7,22 +7,22 @@ StartMenu_Pokedex:
jp RedisplayStartMenu
StartMenu_Pokemon:
- ld a,[wPartyCount]
+ ld a, [wPartyCount]
and a
- jp z,RedisplayStartMenu
+ jp z, RedisplayStartMenu
xor a
- ld [wMenuItemToSwap],a
- ld [wPartyMenuTypeOrMessageID],a
- ld [wUpdateSpritesEnabled],a
+ ld [wMenuItemToSwap], a
+ ld [wPartyMenuTypeOrMessageID], a
+ ld [wUpdateSpritesEnabled], a
call DisplayPartyMenu
jr .checkIfPokemonChosen
.loop
xor a
- ld [wMenuItemToSwap],a
- ld [wPartyMenuTypeOrMessageID],a
+ ld [wMenuItemToSwap], a
+ ld [wPartyMenuTypeOrMessageID], a
call GoBackToPartyMenu
.checkIfPokemonChosen
- jr nc,.chosePokemon
+ jr nc, .chosePokemon
.exitMenu
call GBPalWhiteOutWithDelay3
call RestoreScreenTilesAndReloadTilePatterns
@@ -30,94 +30,94 @@ StartMenu_Pokemon:
jp RedisplayStartMenu
.chosePokemon
call SaveScreenTilesToBuffer1
- ld a,FIELD_MOVE_MON_MENU
- ld [wTextBoxID],a
+ ld a, FIELD_MOVE_MON_MENU
+ ld [wTextBoxID], a
call DisplayTextBoxID ; display pokemon menu options
- ld hl,wFieldMoves
+ ld hl, wFieldMoves
lb bc, 2, 12 ; max menu item ID, top menu item Y
- ld e,5
+ ld e, 5
.adjustMenuVariablesLoop
dec e
- jr z,.storeMenuVariables
- ld a,[hli]
+ jr z, .storeMenuVariables
+ ld a, [hli]
and a ; end of field moves?
- jr z,.storeMenuVariables
+ jr z, .storeMenuVariables
inc b
dec c
dec c
jr .adjustMenuVariablesLoop
.storeMenuVariables
- ld hl,wTopMenuItemY
- ld a,c
- ld [hli],a ; top menu item Y
- ld a,[hFieldMoveMonMenuTopMenuItemX]
- ld [hli],a ; top menu item X
+ ld hl, wTopMenuItemY
+ ld a, c
+ ld [hli], a ; top menu item Y
+ ld a, [hFieldMoveMonMenuTopMenuItemX]
+ ld [hli], a ; top menu item X
xor a
- ld [hli],a ; current menu item ID
+ ld [hli], a ; current menu item ID
inc hl
- ld a,b
- ld [hli],a ; max menu item ID
- ld a,A_BUTTON | B_BUTTON
- ld [hli],a ; menu watched keys
+ ld a, b
+ ld [hli], a ; max menu item ID
+ ld a, A_BUTTON | B_BUTTON
+ ld [hli], a ; menu watched keys
xor a
- ld [hl],a
+ ld [hl], a
call HandleMenuInput
push af
call LoadScreenTilesFromBuffer1 ; restore saved screen
pop af
- bit 1,a ; was the B button pressed?
- jp nz,.loop
+ bit 1, a ; was the B button pressed?
+ jp nz, .loop
; if the B button wasn't pressed
- ld a,[wMaxMenuItem]
- ld b,a
- ld a,[wCurrentMenuItem] ; menu selection
+ ld a, [wMaxMenuItem]
+ ld b, a
+ ld a, [wCurrentMenuItem] ; menu selection
cp b
- jp z,.exitMenu ; if the player chose Cancel
+ jp z, .exitMenu ; if the player chose Cancel
dec b
cp b
- jr z,.choseSwitch
+ jr z, .choseSwitch
dec b
cp b
- jp z,.choseStats
- ld c,a
- ld b,0
- ld hl,wFieldMoves
- add hl,bc
+ jp z, .choseStats
+ ld c, a
+ ld b, 0
+ ld hl, wFieldMoves
+ add hl, bc
jp .choseOutOfBattleMove
.choseSwitch
- ld a,[wPartyCount]
- cp a,2 ; is there more than one pokemon in the party?
- jp c,StartMenu_Pokemon ; if not, no switching
+ ld a, [wPartyCount]
+ cp 2 ; is there more than one pokemon in the party?
+ jp c, StartMenu_Pokemon ; if not, no switching
call SwitchPartyMon_InitVarOrSwapData ; init [wMenuItemToSwap]
- ld a,SWAP_MONS_PARTY_MENU
- ld [wPartyMenuTypeOrMessageID],a
+ ld a, SWAP_MONS_PARTY_MENU
+ ld [wPartyMenuTypeOrMessageID], a
call GoBackToPartyMenu
jp .checkIfPokemonChosen
.choseStats
call ClearSprites
xor a ; PLAYER_PARTY_DATA
- ld [wMonDataLocation],a
+ ld [wMonDataLocation], a
predef StatusScreen
predef StatusScreen2
call ReloadMapData
jp StartMenu_Pokemon
.choseOutOfBattleMove
push hl
- ld a,[wWhichPokemon]
- ld hl,wPartyMonNicks
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMonNicks
call GetPartyMonName
pop hl
- ld a,[hl]
+ ld a, [hl]
dec a
add a
- ld b,0
- ld c,a
- ld hl,.outOfBattleMovePointers
- add hl,bc
- ld a,[hli]
- ld h,[hl]
- ld l,a
- ld a,[wObtainedBadges] ; badges obtained
+ ld b, 0
+ ld c, a
+ ld hl, .outOfBattleMovePointers
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wObtainedBadges] ; badges obtained
jp hl
.outOfBattleMovePointers
dw .cut
@@ -130,44 +130,44 @@ StartMenu_Pokemon:
dw .teleport
dw .softboiled
.fly
- bit 2,a ; does the player have the Thunder Badge?
- jp z,.newBadgeRequired
+ bit 2, a ; does the player have the Thunder Badge?
+ jp z, .newBadgeRequired
call CheckIfInOutsideMap
- jr z,.canFly
- ld a,[wWhichPokemon]
- ld hl,wPartyMonNicks
+ jr z, .canFly
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMonNicks
call GetPartyMonName
- ld hl,.cannotFlyHereText
+ ld hl, .cannotFlyHereText
call PrintText
jp .loop
.canFly
call ChooseFlyDestination
- ld a,[wd732]
- bit 3,a ; did the player decide to fly?
- jr nz,.asm_5d4c
+ ld a, [wd732]
+ bit 3, a ; did the player decide to fly?
+ jr nz, .asm_5d4c
call LoadFontTilePatterns
- ld hl,wd72e
- set 1,[hl]
+ ld hl, wd72e
+ set 1, [hl]
jp StartMenu_Pokemon
.asm_5d4c
call Func_1510
jp .goBackToMap
.cut
- bit 1,a ; does the player have the Cascade Badge?
- jp z,.newBadgeRequired
+ bit 1, a ; does the player have the Cascade Badge?
+ jp z, .newBadgeRequired
predef UsedCut
- ld a,[wActionResultOrTookBattleTurn]
+ ld a, [wActionResultOrTookBattleTurn]
and a
- jp z,.loop
+ jp z, .loop
jp CloseTextDisplay
.surf
- bit 4,a ; does the player have the Soul Badge?
- jp z,.newBadgeRequired
+ bit 4, a ; does the player have the Soul Badge?
+ jp z, .newBadgeRequired
callba IsSurfingAllowed
- ld hl,wd728
- bit 1,[hl]
- res 1,[hl]
- jp z,.loop
+ ld hl, wd728
+ bit 1, [hl]
+ res 1, [hl]
+ jp z, .loop
ld a, [wcf91]
cp PIKACHU ; is this surfing pikachu?
jr z, .surfingPikachu
@@ -178,12 +178,12 @@ StartMenu_Pokemon:
.continue
ld [wd473], a
ld a,SURFBOARD
- ld [wcf91],a
- ld [wPseudoItemID],a
+ ld [wcf91], a
+ ld [wPseudoItemID], a
call UseItem
- ld a,[wActionResultOrTookBattleTurn]
+ ld a, [wActionResultOrTookBattleTurn]
and a
- jr z,.reloadNormalSprite
+ jr z, .reloadNormalSprite
call GBPalWhiteOutWithDelay3
jp .goBackToMap
.reloadNormalSprite
@@ -191,17 +191,17 @@ StartMenu_Pokemon:
ld [wd473], a
jp .loop
.strength
- bit 3,a ; does the player have the Rainbow Badge?
- jp z,.newBadgeRequired
+ bit 3, a ; does the player have the Rainbow Badge?
+ jp z, .newBadgeRequired
predef PrintStrengthTxt
call GBPalWhiteOutWithDelay3
jp .goBackToMap
.flash
- bit 0,a ; does the player have the Boulder Badge?
- jp z,.newBadgeRequired
+ bit 0, a ; does the player have the Boulder Badge?
+ jp z, .newBadgeRequired
xor a
- ld [wMapPalOffset],a
- ld hl,.flashLightsAreaText
+ ld [wMapPalOffset], a
+ ld hl, .flashLightsAreaText
call PrintText
call GBPalWhiteOutWithDelay3
jp .goBackToMap
@@ -209,35 +209,35 @@ StartMenu_Pokemon:
TX_FAR _FlashLightsAreaText
db "@"
.dig
- ld a,ESCAPE_ROPE
- ld [wcf91],a
- ld [wPseudoItemID],a
+ ld a, ESCAPE_ROPE
+ ld [wcf91], a
+ ld [wPseudoItemID], a
call UseItem
- ld a,[wActionResultOrTookBattleTurn]
+ ld a, [wActionResultOrTookBattleTurn]
and a
- jp z,.loop
+ jp z, .loop
call GBPalWhiteOutWithDelay3
jp .goBackToMap
.teleport
call CheckIfInOutsideMap
- jr z,.canTeleport
- ld a,[wWhichPokemon]
- ld hl,wPartyMonNicks
+ jr z, .canTeleport
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMonNicks
call GetPartyMonName
- ld hl,.cannotUseTeleportNowText
+ ld hl, .cannotUseTeleportNowText
call PrintText
jp .loop
.canTeleport
- ld hl,.warpToLastPokemonCenterText
+ ld hl, .warpToLastPokemonCenterText
call PrintText
- ld hl,wd732
- set 3,[hl]
- set 6,[hl]
+ ld hl, wd732
+ set 3, [hl]
+ set 6, [hl]
call Func_1510
- ld hl,wd72e
- set 1,[hl]
- res 4,[hl]
- ld c,60
+ ld hl, wd72e
+ set 1, [hl]
+ res 4, [hl]
+ ld c, 60
call DelayFrames
call GBPalWhiteOutWithDelay3
jp .goBackToMap
@@ -251,39 +251,39 @@ StartMenu_Pokemon:
TX_FAR _CannotFlyHereText
db "@"
.softboiled
- ld hl,wPartyMon1MaxHP
- ld a,[wWhichPokemon]
- ld bc,wPartyMon2 - wPartyMon1
+ ld hl, wPartyMon1MaxHP
+ ld a, [wWhichPokemon]
+ ld bc, wPartyMon2 - wPartyMon1
call AddNTimes
- ld a,[hli]
- ld [H_DIVIDEND],a
- ld a,[hl]
- ld [H_DIVIDEND + 1],a
- ld a,5
- ld [H_DIVISOR],a
- ld b,2 ; number of bytes
+ ld a, [hli]
+ ld [H_DIVIDEND], a
+ ld a, [hl]
+ ld [H_DIVIDEND + 1], a
+ ld a, 5
+ ld [H_DIVISOR], a
+ ld b, 2 ; number of bytes
call Divide
- ld bc,wPartyMon1HP - wPartyMon1MaxHP
- add hl,bc
- ld a,[hld]
- ld b,a
- ld a,[H_QUOTIENT + 3]
+ ld bc, wPartyMon1HP - wPartyMon1MaxHP
+ add hl, bc
+ ld a, [hld]
+ ld b, a
+ ld a, [H_QUOTIENT + 3]
sub b
- ld b,[hl]
- ld a,[H_QUOTIENT + 2]
+ ld b, [hl]
+ ld a, [H_QUOTIENT + 2]
sbc b
- jp nc,.notHealthyEnough
- ld a,[wPartyAndBillsPCSavedMenuItem]
+ jp nc, .notHealthyEnough
+ ld a, [wPartyAndBillsPCSavedMenuItem]
push af
- ld a,POTION
- ld [wcf91],a
- ld [wPseudoItemID],a
+ ld a, POTION
+ ld [wcf91], a
+ ld [wPseudoItemID], a
call UseItem
pop af
- ld [wPartyAndBillsPCSavedMenuItem],a
+ ld [wPartyAndBillsPCSavedMenuItem], a
jp .loop
.notHealthyEnough ; if current HP is less than 1/5 of max HP
- ld hl,.notHealthyEnoughText
+ ld hl, .notHealthyEnoughText
call PrintText
jp .loop
.notHealthyEnoughText
@@ -293,7 +293,7 @@ StartMenu_Pokemon:
call RestoreScreenTilesAndReloadTilePatterns
jp CloseTextDisplay
.newBadgeRequired
- ld hl,.newBadgeRequiredText
+ ld hl, .newBadgeRequiredText
call PrintText
jp .loop
.newBadgeRequiredText
@@ -303,13 +303,13 @@ StartMenu_Pokemon:
; writes a blank tile to all possible menu cursor positions on the party menu
ErasePartyMenuCursors:
coord hl, 0, 1
- ld bc,2 * 20 ; menu cursor positions are 2 rows apart
- ld a,6 ; 6 menu cursor positions
+ ld bc, 2 * 20 ; menu cursor positions are 2 rows apart
+ ld a, 6 ; 6 menu cursor positions
.loop
- ld [hl]," "
- add hl,bc
+ ld [hl], " "
+ add hl, bc
dec a
- jr nz,.loop
+ jr nz, .loop
ret
ItemMenuLoop:
@@ -317,27 +317,27 @@ ItemMenuLoop:
call RunDefaultPaletteCommand
StartMenu_Item:
- ld a,[wLinkState]
+ ld a, [wLinkState]
dec a ; is the player in the Colosseum or Trade Centre?
- jr nz,.notInCableClubRoom
- ld hl,CannotUseItemsHereText
+ jr nz, .notInCableClubRoom
+ ld hl, CannotUseItemsHereText
call PrintText
jr .exitMenu
.notInCableClubRoom
- ld hl,wListPointer
+ ld hl, wListPointer
ld [hl], wNumBagItems & $ff
inc hl
ld [hl], wNumBagItems / $100 ; store item bag pointer in wListPointer (for DisplayListMenuID)
xor a
- ld [wPrintItemPrices],a
- ld a,ITEMLISTMENU
- ld [wListMenuID],a
- ld a,[wBagSavedMenuItem]
- ld [wCurrentMenuItem],a
+ ld [wPrintItemPrices], a
+ ld a, ITEMLISTMENU
+ ld [wListMenuID], a
+ ld a, [wBagSavedMenuItem]
+ ld [wCurrentMenuItem], a
call DisplayListMenuID
- ld a,[wCurrentMenuItem]
- ld [wBagSavedMenuItem],a
- jr nc,.choseItem
+ ld a, [wCurrentMenuItem]
+ ld [wBagSavedMenuItem], a
+ jr nc, .choseItem
.exitMenu
call LoadScreenTilesFromBuffer2 ; restore saved screen
call LoadTextBoxTilePatterns
@@ -345,111 +345,111 @@ StartMenu_Item:
jp RedisplayStartMenu
.choseItem
; erase menu cursor (blank each tile in front of an item name)
- ld a," "
+ ld a, " "
Coorda 5, 4
Coorda 5, 6
Coorda 5, 8
Coorda 5, 10
call PlaceUnfilledArrowMenuCursor
xor a
- ld [wMenuItemToSwap],a
- ld a,[wcf91]
- cp a,BICYCLE
- jp z,.useOrTossItem
+ ld [wMenuItemToSwap], a
+ ld a, [wcf91]
+ cp BICYCLE
+ jp z, .useOrTossItem
.notBicycle1
- ld a,USE_TOSS_MENU_TEMPLATE
- ld [wTextBoxID],a
+ ld a, USE_TOSS_MENU_TEMPLATE
+ ld [wTextBoxID], a
call DisplayTextBoxID
- ld hl,wTopMenuItemY
- ld a,11
- ld [hli],a ; top menu item Y
- ld a,14
- ld [hli],a ; top menu item X
+ ld hl, wTopMenuItemY
+ ld a, 11
+ ld [hli], a ; top menu item Y
+ ld a, 14
+ ld [hli], a ; top menu item X
xor a
- ld [hli],a ; current menu item ID
+ ld [hli], a ; current menu item ID
inc hl
inc a ; a = 1
- ld [hli],a ; max menu item ID
- ld a,A_BUTTON | B_BUTTON
- ld [hli],a ; menu watched keys
+ ld [hli], a ; max menu item ID
+ ld a, A_BUTTON | B_BUTTON
+ ld [hli], a ; menu watched keys
xor a
- ld [hl],a ; old menu item id
+ ld [hl], a ; old menu item id
call HandleMenuInput
call PlaceUnfilledArrowMenuCursor
- bit 1,a ; was the B button pressed?
- jr z,.useOrTossItem
+ bit 1, a ; was the B button pressed?
+ jr z, .useOrTossItem
jp ItemMenuLoop
.useOrTossItem ; if the player made the choice to use or toss the item
- ld a,[wcf91]
- ld [wd11e],a
+ ld a, [wcf91]
+ ld [wd11e], a
call GetItemName
call CopyStringToCF4B ; copy name to wcf4b
- ld a,[wcf91]
- cp a,BICYCLE
- jr nz,.notBicycle2
- ld a,[wd732]
- bit 5,a
- jr z,.useItem_closeMenu
- ld hl,CannotGetOffHereText
+ ld a, [wcf91]
+ cp BICYCLE
+ jr nz, .notBicycle2
+ ld a, [wd732]
+ bit 5, a
+ jr z, .useItem_closeMenu
+ ld hl, CannotGetOffHereText
call PrintText
jp ItemMenuLoop
.notBicycle2
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
and a
- jr nz,.tossItem
+ jr nz, .tossItem
; use item
- ld [wPseudoItemID],a ; a must be 0 due to above conditional jump
- ld a,[wcf91]
- cp a,HM_01
- jr nc,.useItem_partyMenu
- ld hl,UsableItems_CloseMenu
- ld de,1
+ ld [wPseudoItemID], a ; a must be 0 due to above conditional jump
+ ld a, [wcf91]
+ cp HM_01
+ jr nc, .useItem_partyMenu
+ ld hl, UsableItems_CloseMenu
+ ld de, 1
call IsInArray
- jr c,.useItem_closeMenu
- ld a,[wcf91]
- ld hl,UsableItems_PartyMenu
- ld de,1
+ jr c, .useItem_closeMenu
+ ld a, [wcf91]
+ ld hl, UsableItems_PartyMenu
+ ld de, 1
call IsInArray
- jr c,.useItem_partyMenu
+ jr c, .useItem_partyMenu
call UseItem
jp ItemMenuLoop
.useItem_closeMenu
xor a
- ld [wPseudoItemID],a
+ ld [wPseudoItemID], a
call UseItem
- ld a,[wActionResultOrTookBattleTurn]
+ ld a, [wActionResultOrTookBattleTurn]
and a
- jp z,ItemMenuLoop
+ jp z, ItemMenuLoop
jp CloseStartMenu
.useItem_partyMenu
- ld a,[wUpdateSpritesEnabled]
+ ld a, [wUpdateSpritesEnabled]
push af
call UseItem
- ld a,[wActionResultOrTookBattleTurn]
- cp a,$02
- jp z,.partyMenuNotDisplayed
+ ld a, [wActionResultOrTookBattleTurn]
+ cp $02
+ jp z, .partyMenuNotDisplayed
call GBPalWhiteOutWithDelay3
call RestoreScreenTilesAndReloadTilePatterns
pop af
- ld [wUpdateSpritesEnabled],a
+ ld [wUpdateSpritesEnabled], a
jp StartMenu_Item
.partyMenuNotDisplayed
pop af
- ld [wUpdateSpritesEnabled],a
+ ld [wUpdateSpritesEnabled], a
jp ItemMenuLoop
.tossItem
call IsKeyItem
- ld a,[wIsKeyItem]
+ ld a, [wIsKeyItem]
and a
- jr nz,.skipAskingQuantity
- ld a,[wcf91]
+ jr nz, .skipAskingQuantity
+ ld a, [wcf91]
call IsItemHM
- jr c,.skipAskingQuantity
+ jr c, .skipAskingQuantity
call DisplayChooseQuantityMenu
inc a
- jr z,.tossZeroItems
+ jr z, .tossZeroItems
.skipAskingQuantity
- ld hl,wNumBagItems
+ ld hl, wNumBagItems
call TossItem
.tossZeroItems
jp ItemMenuLoop
@@ -516,10 +516,10 @@ StartMenu_TrainerInfo:
call GBPalWhiteOut
call ClearScreen
call UpdateSprites
- ld a,[hTilesetType]
+ ld a, [hTilesetType]
push af
xor a
- ld [hTilesetType],a
+ ld [hTilesetType], a
call DrawTrainerInfo
predef DrawBadges ; draw badges
ld b, SET_PAL_TRAINER_CARD
@@ -534,101 +534,101 @@ StartMenu_TrainerInfo:
callba DrawStartMenu ; XXX what difference does this make?
call LoadGBPal
pop af
- ld [hTilesetType],a
+ ld [hTilesetType], a
jp RedisplayStartMenu_DoNotDrawStartMenu
; loads tile patterns and draws everything except for gym leader faces / badges
DrawTrainerInfo:
- ld de,RedPicFront
+ ld de, RedPicFront
lb bc, BANK(RedPicFront), $01
predef DisplayPicCenteredOrUpperRight
call DisableLCD
coord hl, 0, 2
- ld a," "
+ ld a, " "
call TrainerInfo_DrawVerticalLine
coord hl, 1, 2
call TrainerInfo_DrawVerticalLine
- ld hl,vChars2 + $70
- ld de,vChars2
- ld bc,$70 * 4
+ ld hl, vChars2 + $70
+ ld de, vChars2
+ ld bc, $70 * 4
call CopyData
- ld hl,TrainerInfoTextBoxTileGraphics ; trainer info text box tile patterns
- ld de,vChars2 + $770
- ld bc,$0080
+ ld hl, TrainerInfoTextBoxTileGraphics ; trainer info text box tile patterns
+ ld de, vChars2 + $770
+ ld bc, $0080
push bc
call TrainerInfo_FarCopyData
- ld hl,BlankLeaderNames
- ld de,vChars2 + $600
- ld bc,$0170
+ ld hl, BlankLeaderNames
+ ld de, vChars2 + $600
+ ld bc, $0170
call TrainerInfo_FarCopyData
pop bc
- ld hl,BadgeNumbersTileGraphics ; badge number tile patterns
- ld de,vChars1 + $580
+ ld hl, BadgeNumbersTileGraphics ; badge number tile patterns
+ ld de, vChars1 + $580
call TrainerInfo_FarCopyData
- ld hl,GymLeaderFaceAndBadgeTileGraphics ; gym leader face and badge tile patterns
- ld de,vChars2 + $200
- ld bc,$0400
- ld a,$03
+ ld hl, GymLeaderFaceAndBadgeTileGraphics ; gym leader face and badge tile patterns
+ ld de, vChars2 + $200
+ ld bc, $0400
+ ld a, $03
call FarCopyData
- ld hl,TextBoxGraphics
- ld de,$00d0
- add hl,de ; hl = colon tile pattern
- ld de,vChars1 + $560
- ld bc,$0010
- ld a,$04
+ ld hl, TextBoxGraphics
+ ld de, $00d0
+ add hl, de ; hl = colon tile pattern
+ ld de, vChars1 + $560
+ ld bc, $0010
+ ld a, $04
push bc
call FarCopyData
pop bc
- ld hl,TrainerInfoTextBoxTileGraphics + $80 ; background tile pattern
- ld de,vChars1 + $570
+ ld hl, TrainerInfoTextBoxTileGraphics + $80 ; background tile pattern
+ ld de, vChars1 + $570
call TrainerInfo_FarCopyData
call EnableLCD
- ld hl,wTrainerInfoTextBoxWidthPlus1
- ld a,18 + 1
- ld [hli],a
+ ld hl, wTrainerInfoTextBoxWidthPlus1
+ ld a, 18 + 1
+ ld [hli], a
dec a
- ld [hli],a
- ld [hl],1
+ ld [hli], a
+ ld [hl], 1
coord hl, 0, 0
call TrainerInfo_DrawTextBox
- ld hl,wTrainerInfoTextBoxWidthPlus1
- ld a,16 + 1
- ld [hli],a
+ ld hl, wTrainerInfoTextBoxWidthPlus1
+ ld a, 16 + 1
+ ld [hli], a
dec a
- ld [hli],a
- ld [hl],3
+ ld [hli], a
+ ld [hl], 3
coord hl, 1, 10
call TrainerInfo_DrawTextBox
coord hl, 0, 10
- ld a,$d7
+ ld a, $d7
call TrainerInfo_DrawVerticalLine
coord hl, 19, 10
call TrainerInfo_DrawVerticalLine
coord hl, 6, 9
- ld de,TrainerInfo_BadgesText
+ ld de, TrainerInfo_BadgesText
call PlaceString
coord hl, 2, 2
- ld de,TrainerInfo_NameMoneyTimeText
+ ld de, TrainerInfo_NameMoneyTimeText
call PlaceString
coord hl, 7, 2
- ld de,wPlayerName
+ ld de, wPlayerName
call PlaceString
coord hl, 8, 4
- ld de,wPlayerMoney
- ld c,$e3
+ ld de, wPlayerMoney
+ ld c, $e3
call PrintBCDNumber
coord hl, 9, 6
- ld de,wPlayTimeHours ; hours
+ ld de, wPlayTimeHours ; hours
lb bc, LEFT_ALIGN | 1, 3
call PrintNumber
- ld [hl],$d6 ; colon tile ID
+ ld [hl], $d6 ; colon tile ID
inc hl
- ld de,wPlayTimeMinutes ; minutes
+ ld de, wPlayTimeMinutes ; minutes
lb bc, LEADING_ZEROES | 1, 2
jp PrintNumber
TrainerInfo_FarCopyData:
- ld a,BANK(TrainerInfoTextBoxTileGraphics)
+ ld a, BANK(TrainerInfoTextBoxTileGraphics)
jp FarCopyData
TrainerInfo_NameMoneyTimeText:
@@ -648,43 +648,43 @@ TrainerInfo_BadgesText:
; [wTrainerInfoTextBoxWidth] = width - 1
; [wTrainerInfoTextBoxNextRowOffset] = distance from the end of a text box row to the start of the next
TrainerInfo_DrawTextBox:
- ld a,$79 ; upper left corner tile ID
+ ld a, $79 ; upper left corner tile ID
lb de, $7a, $7b ; top edge and upper right corner tile ID's
call TrainerInfo_DrawHorizontalEdge ; draw top edge
call TrainerInfo_NextTextBoxRow
- ld a,[wTrainerInfoTextBoxWidthPlus1]
- ld e,a
- ld d,0
- ld c,6 ; height of the text box
+ ld a, [wTrainerInfoTextBoxWidthPlus1]
+ ld e, a
+ ld d, 0
+ ld c, 6 ; height of the text box
.loop
- ld [hl],$7c ; left edge tile ID
- add hl,de
- ld [hl],$78 ; right edge tile ID
+ ld [hl], $7c ; left edge tile ID
+ add hl, de
+ ld [hl], $78 ; right edge tile ID
call TrainerInfo_NextTextBoxRow
dec c
- jr nz,.loop
- ld a,$7d ; lower left corner tile ID
- lb de,$77, $7e ; bottom edge and lower right corner tile ID's
+ jr nz, .loop
+ ld a, $7d ; lower left corner tile ID
+ lb de, $77, $7e ; bottom edge and lower right corner tile ID's
TrainerInfo_DrawHorizontalEdge:
- ld [hli],a ; place left corner tile
- ld a,[wTrainerInfoTextBoxWidth]
- ld c,a
- ld a,d
+ ld [hli], a ; place left corner tile
+ ld a, [wTrainerInfoTextBoxWidth]
+ ld c, a
+ ld a, d
.loop
- ld [hli],a ; place edge tile
+ ld [hli], a ; place edge tile
dec c
- jr nz,.loop
- ld a,e
- ld [hl],a ; place right corner tile
+ jr nz, .loop
+ ld a, e
+ ld [hl], a ; place right corner tile
ret
TrainerInfo_NextTextBoxRow:
- ld a,[wTrainerInfoTextBoxNextRowOffset] ; distance to the start of the next row
+ ld a, [wTrainerInfoTextBoxNextRowOffset] ; distance to the start of the next row
.loop
inc hl
dec a
- jr nz,.loop
+ jr nz, .loop
ret
; draws a vertical line
@@ -692,26 +692,26 @@ TrainerInfo_NextTextBoxRow:
; hl = address of top tile in the line
; a = tile ID
TrainerInfo_DrawVerticalLine:
- ld de,20
- ld c,8
+ ld de, SCREEN_WIDTH
+ ld c, 8
.loop
- ld [hl],a
- add hl,de
+ ld [hl], a
+ add hl, de
dec c
- jr nz,.loop
+ jr nz, .loop
ret
StartMenu_SaveReset:
- ld a,[wd72e]
- bit 6,a ; is the player using the link feature?
- jp nz,Init
+ ld a, [wd72e]
+ bit 6, a ; is the player using the link feature?
+ jp nz, Init
predef SaveSAV ; save the game
call LoadScreenTilesFromBuffer2 ; restore saved screen
jp HoldTextDisplayOpen
StartMenu_Option:
xor a
- ld [H_AUTOBGTRANSFERENABLED],a
+ ld [H_AUTOBGTRANSFERENABLED], a
call ClearScreen
call UpdateSprites
callab DisplayOptionMenu
diff --git a/engine/menu/status_screen.asm b/engine/menu/status_screen.asm
index 4adfb543..1e2ba889 100755
--- a/engine/menu/status_screen.asm
+++ b/engine/menu/status_screen.asm
@@ -110,7 +110,7 @@ StatusScreen:
call DrawLineBox ; Draws the box around name, HP and status
ld de, -6
add hl, de
- ld [hl], $f2 ; . after No ("." is a different one)
+ ld [hl], "⠄" ; . after No ("." is a different one)
dec hl
ld [hl], "№"
coord hl, 19, 9
@@ -228,10 +228,11 @@ Type2Text:
db "TYPE2/", $4e
IDNoText:
- db $73, "№", "/", $4e
+ db $73, "№/", $4e
OTText:
- db "OT/", $4e, "@"
+ db "OT/"
+ next "@"
StatusText:
db "STATUS/@"
diff --git a/engine/menu/swap_items.asm b/engine/menu/swap_items.asm
index b1fa78be..563fc7d5 100644
--- a/engine/menu/swap_items.asm
+++ b/engine/menu/swap_items.asm
@@ -1,149 +1,149 @@
HandleItemListSwapping:
- ld a,[wListMenuID]
- cp a,ITEMLISTMENU
- jp nz,DisplayListMenuIDLoop ; only rearrange item list menus
+ ld a, [wListMenuID]
+ cp ITEMLISTMENU
+ jp nz, DisplayListMenuIDLoop ; only rearrange item list menus
push hl
- ld hl,wListPointer
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld hl, wListPointer
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
inc hl ; hl = beginning of list entries
- ld a,[wCurrentMenuItem]
- ld b,a
- ld a,[wListScrollOffset]
+ ld a, [wCurrentMenuItem]
+ ld b, a
+ ld a, [wListScrollOffset]
add b
add a
- ld c,a
- ld b,0
- add hl,bc ; hl = address of currently selected item entry
- ld a,[hl]
+ ld c, a
+ ld b, 0
+ add hl, bc ; hl = address of currently selected item entry
+ ld a, [hl]
pop hl
inc a
- jp z,DisplayListMenuIDLoop ; ignore attempts to swap the Cancel menu item
- ld a,[wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1)
+ jp z, DisplayListMenuIDLoop ; ignore attempts to swap the Cancel menu item
+ ld a, [wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1)
and a ; has the first item to swap already been chosen?
- jr nz,.swapItems
+ jr nz, .swapItems
; if not, set the currently selected item as the first item
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
inc a
- ld b,a
- ld a,[wListScrollOffset] ; index of top (visible) menu item within the list
+ ld b, a
+ ld a, [wListScrollOffset] ; index of top (visible) menu item within the list
add b
- ld [wMenuItemToSwap],a ; ID of item chosen for swapping (counts from 1)
- ld c,20
+ ld [wMenuItemToSwap], a ; ID of item chosen for swapping (counts from 1)
+ ld c, 20
call DelayFrames
jp DisplayListMenuIDLoop
.swapItems
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
inc a
- ld b,a
- ld a,[wListScrollOffset]
+ ld b, a
+ ld a, [wListScrollOffset]
add b
- ld b,a
- ld a,[wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1)
+ ld b, a
+ ld a, [wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1)
cp b ; is the currently selected item the same as the first item to swap?
- jp z,DisplayListMenuIDLoop ; ignore attempts to swap an item with itself
+ jp z, DisplayListMenuIDLoop ; ignore attempts to swap an item with itself
dec a
- ld [wMenuItemToSwap],a ; ID of item chosen for swapping (counts from 1)
- ld c,20
+ ld [wMenuItemToSwap], a ; ID of item chosen for swapping (counts from 1)
+ ld c, 20
call DelayFrames
push hl
push de
- ld hl,wListPointer
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld hl, wListPointer
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
inc hl ; hl = beginning of list entries
- ld d,h
- ld e,l ; de = beginning of list entries
- ld a,[wCurrentMenuItem]
- ld b,a
- ld a,[wListScrollOffset]
+ ld d, h
+ ld e, l ; de = beginning of list entries
+ ld a, [wCurrentMenuItem]
+ ld b, a
+ ld a, [wListScrollOffset]
add b
add a
- ld c,a
- ld b,0
- add hl,bc ; hl = address of currently selected item entry
- ld a,[wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1)
+ ld c, a
+ ld b, 0
+ add hl, bc ; hl = address of currently selected item entry
+ ld a, [wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1)
add a
add e
- ld e,a
- jr nc,.noCarry
+ ld e, a
+ jr nc, .noCarry
inc d
.noCarry ; de = address of first item to swap
- ld a,[de]
- ld b,a
- ld a,[hli]
+ ld a, [de]
+ ld b, a
+ ld a, [hli]
cp b
- jr z,.swapSameItemType
+ jr z, .swapSameItemType
.swapDifferentItems
- ld [$ff95],a ; [$ff95] = second item ID
- ld a,[hld]
- ld [$ff96],a ; [$ff96] = second item quantity
- ld a,[de]
- ld [hli],a ; put first item ID in second item slot
+ ld [$ff95], a ; [$ff95] = second item ID
+ ld a, [hld]
+ ld [$ff96], a ; [$ff96] = 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 [de],a ; put second item quantity in first item slot
+ ld a, [de]
+ ld [hl], a ; put first item quantity in second item slot
+ ld a, [$ff96]
+ ld [de], a ; put second item quantity in first item slot
dec de
- ld a,[$ff95]
- ld [de],a ; put second item ID in first item slot
+ ld a, [$ff95]
+ ld [de], a ; put second item ID in first item slot
xor a
- ld [wMenuItemToSwap],a ; 0 means no item is currently being swapped
+ ld [wMenuItemToSwap], a ; 0 means no item is currently being swapped
pop de
pop hl
jp DisplayListMenuIDLoop
.swapSameItemType
inc de
- ld a,[hl]
- ld b,a
- ld a,[de]
+ ld a, [hl]
+ ld b, a
+ ld a, [de]
add b ; a = sum of both item quantities
- cp a,100 ; is the sum too big for one item slot?
- jr c,.combineItemSlots
+ cp 100 ; is the sum too big for one item slot?
+ jr c, .combineItemSlots
; swap enough items from the first slot to max out the second slot if they can't be combined
- sub a,99
- ld [de],a
- ld a,99
- ld [hl],a
+ sub 99
+ ld [de], a
+ ld a, 99
+ ld [hl], a
jr .done
.combineItemSlots
- ld [hl],a ; put the sum in the second item slot
- ld hl,wListPointer
- ld a,[hli]
- ld h,[hl]
- ld l,a
+ ld [hl], a ; put the sum in the second item slot
+ ld hl, wListPointer
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
dec [hl] ; decrease the number of items
- ld a,[hl]
- ld [wListCount],a ; update number of items variable
- cp a,1
- jr nz,.skipSettingMaxMenuItemID
- ld [wMaxMenuItem],a ; if the number of items is only one now, update the max menu item ID
+ ld a, [hl]
+ ld [wListCount], a ; update number of items variable
+ cp 1
+ jr nz, .skipSettingMaxMenuItemID
+ ld [wMaxMenuItem], a ; if the number of items is only one now, update the max menu item ID
.skipSettingMaxMenuItemID
dec de
- ld h,d
- ld l,e
+ ld h, d
+ ld l, e
inc hl
inc hl ; hl = address of item after first item to swap
.moveItemsUpLoop ; erase the first item slot and move up all the following item slots to fill the gap
- ld a,[hli]
- ld [de],a
+ ld a, [hli]
+ ld [de], a
inc de
inc a ; reached the $ff terminator?
- jr z,.afterMovingItemsUp
- ld a,[hli]
- ld [de],a
+ jr z, .afterMovingItemsUp
+ ld a, [hli]
+ ld [de], a
inc de
jr .moveItemsUpLoop
.afterMovingItemsUp
xor a
- ld [wListScrollOffset],a
- ld [wCurrentMenuItem],a
+ ld [wListScrollOffset], a
+ ld [wCurrentMenuItem], a
.done
xor a
- ld [wMenuItemToSwap],a ; 0 means no item is currently being swapped
+ ld [wMenuItemToSwap], a ; 0 means no item is currently being swapped
pop de
pop hl
jp DisplayListMenuIDLoop
diff --git a/engine/menu/text_box.asm b/engine/menu/text_box.asm
new file mode 100644
index 00000000..a109bff2
--- /dev/null
+++ b/engine/menu/text_box.asm
@@ -0,0 +1,739 @@
+; function to draw various text boxes
+DisplayTextBoxID_:
+ ld a, [wTextBoxID]
+ cp TWO_OPTION_MENU
+ jp z, DisplayTwoOptionMenu
+ ld c, a
+ ld hl, TextBoxFunctionTable
+ ld de, 3
+ call SearchTextBoxTable
+ jr c, .functionTableMatch
+ ld hl, TextBoxCoordTable
+ ld de, 5
+ call SearchTextBoxTable
+ jr c, .coordTableMatch
+ ld hl, TextBoxTextAndCoordTable
+ ld de, 9
+ call SearchTextBoxTable
+ jr c, .textAndCoordTableMatch
+.done
+ ret
+.functionTableMatch
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a ; hl = address of function
+ ld de, .done
+ push de
+ jp hl ; jump to the function
+.coordTableMatch
+ call GetTextBoxIDCoords
+ call GetAddressOfScreenCoords
+ call TextBoxBorder
+ ret
+.textAndCoordTableMatch
+ call GetTextBoxIDCoords
+ push hl
+ call GetAddressOfScreenCoords
+ call TextBoxBorder
+ pop hl
+ call GetTextBoxIDText
+ ld a, [wd730]
+ push af
+ ld a, [wd730]
+ set 6, a ; no pauses between printing each letter
+ ld [wd730], a
+ call PlaceString
+ pop af
+ ld [wd730], a
+ call UpdateSprites
+ ret
+
+; function to search a table terminated with $ff for a byte matching c in increments of de
+; sets carry flag if a match is found and clears carry flag if not
+SearchTextBoxTable:
+ dec de
+.loop
+ ld a, [hli]
+ cp $ff
+ jr z, .notFound
+ cp c
+ jr z, .found
+ add hl, de
+ jr .loop
+.found
+ scf
+.notFound
+ ret
+
+; function to load coordinates from the TextBoxCoordTable or the TextBoxTextAndCoordTable
+; INPUT:
+; hl = address of coordinates
+; OUTPUT:
+; b = height
+; c = width
+; d = row of upper left corner
+; e = column of upper left corner
+GetTextBoxIDCoords:
+ ld a, [hli] ; column of upper left corner
+ ld e, a
+ ld a, [hli] ; row of upper left corner
+ ld d, a
+ ld a, [hli] ; column of lower right corner
+ sub e
+ dec a
+ ld c, a ; c = width
+ ld a, [hli] ; row of lower right corner
+ sub d
+ dec a
+ ld b, a ; b = height
+ ret
+
+; function to load a text address and text coordinates from the TextBoxTextAndCoordTable
+GetTextBoxIDText:
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a ; de = address of text
+ push de ; save text address
+ ld a, [hli]
+ ld e, a ; column of upper left corner of text
+ ld a, [hl]
+ ld d, a ; row of upper left corner of text
+ call GetAddressOfScreenCoords
+ pop de ; restore text address
+ ret
+
+; function to point hl to the screen coordinates
+; INPUT:
+; d = row
+; e = column
+; OUTPUT:
+; hl = address of upper left corner of text box
+GetAddressOfScreenCoords:
+ push bc
+ coord hl, 0, 0
+ ld bc, 20
+.loop ; loop to add d rows to the base address
+ ld a, d
+ and a
+ jr z, .addedRows
+ add hl, bc
+ dec d
+ jr .loop
+.addedRows
+ pop bc
+ add hl, de
+ ret
+
+; Format:
+; 00: text box ID
+; 01-02: function address
+TextBoxFunctionTable:
+ dbw MONEY_BOX, DisplayMoneyBox
+ dbw BUY_SELL_QUIT_MENU, DoBuySellQuitMenu
+ dbw FIELD_MOVE_MON_MENU, DisplayFieldMoveMonMenu
+ db $ff ; terminator
+
+; Format:
+; 00: text box ID
+; 01: column of upper left corner
+; 02: row of upper left corner
+; 03: column of lower right corner
+; 04: row of lower right corner
+TextBoxCoordTable:
+ db MESSAGE_BOX, 0, 12, 19, 17
+ db $03, 0, 0, 19, 14
+ db $07, 0, 0, 11, 6
+ db LIST_MENU_BOX, 4, 2, 19, 12
+ db $10, 7, 0, 19, 17
+ db MON_SPRITE_POPUP, 6, 4, 14, 13
+ db $ff ; terminator
+
+; Format:
+; 00: text box ID
+; 01: column of upper left corner
+; 02: row of upper left corner
+; 03: column of lower right corner
+; 04: row of lower right corner
+; 05-06: address of text
+; 07: column of beginning of text
+; 08: row of beginning of text
+; table of window positions and corresponding text [key, start column, start row, end column, end row, text pointer [2 bytes], text column, text row]
+TextBoxTextAndCoordTable:
+ db JP_MOCHIMONO_MENU_TEMPLATE
+ db 0,0,14,17 ; text box coordinates
+ dw JapaneseMochimonoText
+ db 3,0 ; text coordinates
+
+ db USE_TOSS_MENU_TEMPLATE
+ db 13,10,19,14 ; text box coordinates
+ dw UseTossText
+ db 15,11 ; text coordinates
+
+ db JP_SAVE_MESSAGE_MENU_TEMPLATE
+ db 0,0,7,5 ; text box coordinates
+ dw JapaneseSaveMessageText
+ db 2,2 ; text coordinates
+
+ db JP_SPEED_OPTIONS_MENU_TEMPLATE
+ db 0,6,5,10 ; text box coordinates
+ dw JapaneseSpeedOptionsText
+ db 2,7 ; text coordinates
+
+ db BATTLE_MENU_TEMPLATE
+ db 8,12,19,17 ; text box coordinates
+ dw BattleMenuText
+ db 10,14 ; text coordinates
+
+ db SAFARI_BATTLE_MENU_TEMPLATE
+ db 0,12,19,17 ; text box coordinates
+ dw SafariZoneBattleMenuText
+ db 2,14 ; text coordinates
+
+ db SWITCH_STATS_CANCEL_MENU_TEMPLATE
+ db 11,11,19,17 ; text box coordinates
+ dw SwitchStatsCancelText
+ db 13,12 ; text coordinates
+
+ db BUY_SELL_QUIT_MENU_TEMPLATE
+ db 0,0,10,6 ; text box coordinates
+ dw BuySellQuitText
+ db 2,1 ; text coordinates
+
+ db MONEY_BOX_TEMPLATE
+ db 11,0,19,2 ; text box coordinates
+ dw MoneyText
+ db 13,0 ; text coordinates
+
+ db JP_AH_MENU_TEMPLATE
+ db 7,6,11,10 ; text box coordinates
+ dw JapaneseAhText
+ db 8,8 ; text coordinates
+
+ db JP_POKEDEX_MENU_TEMPLATE
+ db 11,8,19,17 ; text box coordinates
+ dw JapanesePokedexMenu
+ db 12,10 ; text coordinates
+
+; note that there is no terminator
+
+BuySellQuitText:
+ db "BUY"
+ next "SELL"
+ next "QUIT@@"
+
+UseTossText:
+ db "USE"
+ next "TOSS@"
+
+JapaneseSaveMessageText:
+ db "きろく"
+ next "メッセージ@"
+
+JapaneseSpeedOptionsText:
+ db "はやい"
+ next "おそい@"
+
+MoneyText:
+ db "MONEY@"
+
+JapaneseMochimonoText:
+ db "もちもの@"
+
+JapaneseMainMenuText:
+ db "つづきから"
+ next "さいしょから@"
+
+BattleMenuText:
+ db "FIGHT ",$E1,$E2
+ next "ITEM RUN@"
+
+SafariZoneBattleMenuText:
+ db "BALL× BAIT"
+ next "THROW ROCK RUN@"
+
+SwitchStatsCancelText:
+ db "SWITCH"
+ next "STATS"
+ next "CANCEL@"
+
+JapaneseAhText:
+ db "アッ!@"
+
+JapanesePokedexMenu:
+ db "データをみる"
+ next "なきごえ"
+ next "ぶんぷをみる"
+ next "キャンセル@"
+
+DisplayMoneyBox:
+ ld hl, wd730
+ set 6, [hl]
+ ld a, MONEY_BOX_TEMPLATE
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ coord hl, 13, 1
+ lb bc, 1, 6
+ call ClearScreenArea
+ coord hl, 12, 1
+ ld de, wPlayerMoney
+ ld c, $a3
+ call PrintBCDNumber
+ ld hl, wd730
+ res 6, [hl]
+ ret
+
+CurrencyString:
+ db " ¥@"
+
+DoBuySellQuitMenu:
+ ld a, [wd730]
+ set 6, a ; no printing delay
+ ld [wd730], a
+ xor a
+ ld [wChosenMenuItem], a
+ ld a, BUY_SELL_QUIT_MENU_TEMPLATE
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ ld a, A_BUTTON | B_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, $2
+ ld [wMaxMenuItem], a
+ ld a, $1
+ ld [wTopMenuItemY], a
+ ld a, $1
+ ld [wTopMenuItemX], a
+ xor a
+ ld [wCurrentMenuItem], a
+ ld [wLastMenuItem], a
+ ld [wMenuWatchMovingOutOfBounds], a
+ ld a, [wd730]
+ res 6, a ; turn on the printing delay
+ ld [wd730], a
+ call HandleMenuInput
+ call PlaceUnfilledArrowMenuCursor
+ bit 0, a ; was A pressed?
+ jr nz, .pressedA
+ bit 1, a ; was B pressed? (always true since only A/B are watched)
+ jr z, .pressedA
+ ld a, CANCELLED_MENU
+ ld [wMenuExitMethod], a
+ jr .quit
+.pressedA
+ ld a, CHOSE_MENU_ITEM
+ ld [wMenuExitMethod], a
+ ld a, [wCurrentMenuItem]
+ ld [wChosenMenuItem], a
+ ld b, a
+ ld a, [wMaxMenuItem]
+ cp b
+ jr z, .quit
+ ret
+.quit
+ ld a, CANCELLED_MENU
+ ld [wMenuExitMethod], a
+ ld a, [wCurrentMenuItem]
+ ld [wChosenMenuItem], a
+ scf
+ ret
+
+; displays a menu with two options to choose from
+; b = Y of upper left corner of text region
+; c = X of upper left corner of text region
+; hl = address where the text box border should be drawn
+DisplayTwoOptionMenu:
+ push hl
+ ld a, [wd730]
+ set 6, a ; no printing delay
+ ld [wd730], a
+
+; pointless because both values are overwritten before they are read
+ xor a
+ ld [wChosenMenuItem], a
+ ld [wMenuExitMethod], a
+
+ ld a, A_BUTTON | B_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, $1
+ ld [wMaxMenuItem], a
+ ld a, b
+ ld [wTopMenuItemY], a
+ ld a, c
+ ld [wTopMenuItemX], a
+ xor a
+ ld [wLastMenuItem], a
+ ld [wMenuWatchMovingOutOfBounds], a
+ push hl
+ ld hl, wTwoOptionMenuID
+ bit 7, [hl] ; select second menu item by default?
+ res 7, [hl]
+ jr z, .storeCurrentMenuItem
+ inc a
+.storeCurrentMenuItem
+ ld [wCurrentMenuItem], a
+ pop hl
+ push hl
+ push hl
+ call TwoOptionMenu_SaveScreenTiles
+ ld a, [wTwoOptionMenuID]
+ ld hl, TwoOptionMenuStrings
+ ld e, a
+ ld d, $0
+ ld a, $5
+.menuStringLoop
+ add hl, de
+ dec a
+ jr nz, .menuStringLoop
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld e, l
+ ld d, h
+ pop hl
+ push de
+ ld a, [wTwoOptionMenuID]
+ cp TRADE_CANCEL_MENU
+ jr nz, .notTradeCancelMenu
+ call CableClub_TextBoxBorder
+ jr .afterTextBoxBorder
+.notTradeCancelMenu
+ call TextBoxBorder
+.afterTextBoxBorder
+ call UpdateSprites
+ pop hl
+ ld a, [hli]
+ and a ; put blank line before first menu item?
+ ld bc, 20 + 2
+ jr z, .noBlankLine
+ ld bc, 2 * 20 + 2
+.noBlankLine
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ pop hl
+ add hl, bc
+ call PlaceString
+ xor a
+ ld [wTwoOptionMenuID], a
+ ld hl, wd730
+ res 6, [hl] ; turn on the printing delay
+ call HandleMenuInput
+ pop hl
+ bit 1, a ; A button pressed?
+ jr nz, .choseSecondMenuItem ; automatically choose the second option if B is pressed
+.pressedAButton
+ ld a, [wCurrentMenuItem]
+ ld [wChosenMenuItem], a
+ and a
+ jr nz, .choseSecondMenuItem
+; chose first menu item
+ ld a, CHOSE_FIRST_ITEM
+ ld [wMenuExitMethod], a
+ ld c, 15
+ call DelayFrames
+ call TwoOptionMenu_RestoreScreenTiles
+ and a
+ ret
+.choseSecondMenuItem
+ ld a, 1
+ ld [wCurrentMenuItem], a
+ ld [wChosenMenuItem], a
+ ld a, CHOSE_SECOND_ITEM
+ ld [wMenuExitMethod], a
+ ld c, 15
+ call DelayFrames
+ call TwoOptionMenu_RestoreScreenTiles
+ scf
+ ret
+
+; Some of the wider/taller two option menus will not have the screen areas
+; they cover be fully saved/restored by the two functions below.
+; The bottom and right edges of the menu may remain after the function returns.
+
+TwoOptionMenu_SaveScreenTiles:
+ ld de, wBuffer
+ lb bc, 5, 6
+.loop
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .loop
+ push bc
+ ld bc, SCREEN_WIDTH - 6
+ add hl, bc
+ pop bc
+ ld c, $6
+ dec b
+ jr nz, .loop
+ ret
+
+TwoOptionMenu_RestoreScreenTiles:
+ ld de, wBuffer
+ lb bc, 5, 6
+.loop
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec c
+ jr nz, .loop
+ push bc
+ ld bc, SCREEN_WIDTH - 6
+ add hl, bc
+ pop bc
+ ld c, 6
+ dec b
+ jr nz, .loop
+ call UpdateSprites
+ ret
+
+; Format:
+; 00: byte width
+; 01: byte height
+; 02: byte put blank line before first menu item
+; 03: word text pointer
+TwoOptionMenuStrings:
+ db 4,3,0
+ dw .YesNoMenu
+ db 6,3,0
+ dw .NorthWestMenu
+ db 6,3,0
+ dw .SouthEastMenu
+ db 6,3,0
+ dw .YesNoMenu
+ db 6,3,0
+ dw .NorthEastMenu
+ db 7,3,0
+ dw .TradeCancelMenu
+ db 7,4,1
+ dw .HealCancelMenu
+ db 4,3,0
+ dw .NoYesMenu
+
+.NoYesMenu
+ db "NO"
+ next "YES@"
+.YesNoMenu
+ db "YES"
+ next "NO@"
+.NorthWestMenu
+ db "NORTH"
+ next "WEST@"
+.SouthEastMenu
+ db "SOUTH"
+ next "EAST@"
+.NorthEastMenu
+ db "NORTH"
+ next "EAST@"
+.TradeCancelMenu
+ db "TRADE"
+ next "CANCEL@"
+.HealCancelMenu
+ db "HEAL"
+ next "CANCEL@"
+
+DisplayFieldMoveMonMenu:
+ xor a
+ ld hl, wFieldMoves
+ ld [hli], a ; wFieldMoves
+ ld [hli], a ; wFieldMoves + 1
+ ld [hli], a ; wFieldMoves + 2
+ ld [hli], a ; wFieldMoves + 3
+ ld [hli], a ; wNumFieldMoves
+ ld [hl], 12 ; wFieldMovesLeftmostXCoord
+ call GetMonFieldMoves
+ ld a, [wNumFieldMoves]
+ and a
+ jr nz, .fieldMovesExist
+
+; no field moves
+ coord hl, 11, 11
+ lb bc, 5, 7
+ call TextBoxBorder
+ call UpdateSprites
+ ld a, 12
+ ld [hFieldMoveMonMenuTopMenuItemX], a
+ coord hl, 13, 12
+ ld de, PokemonMenuEntries
+ jp PlaceString
+
+.fieldMovesExist
+ push af
+
+; Calculate the text box position and dimensions based on the leftmost X coord
+; of the field move names before adjusting for the number of field moves.
+ coord hl, 0, 11
+ ld a, [wFieldMovesLeftmostXCoord]
+ dec a
+ ld e, a
+ ld d, 0
+ add hl, de
+ ld b, 5
+ ld a, 18
+ sub e
+ ld c, a
+ pop af
+
+; For each field move, move the top of the text box up 2 rows while the leaving
+; the bottom of the text box at the bottom of the screen.
+ ld de, -SCREEN_WIDTH * 2
+.textBoxHeightLoop
+ add hl, de
+ inc b
+ inc b
+ dec a
+ jr nz, .textBoxHeightLoop
+
+; Make space for an extra blank row above the top field move.
+ ld de, -SCREEN_WIDTH
+ add hl, de
+ inc b
+
+ call TextBoxBorder
+ call UpdateSprites
+
+; Calculate the position of the first field move name to print.
+ coord hl, 0, 12
+ ld a, [wFieldMovesLeftmostXCoord]
+ inc a
+ ld e, a
+ ld d, 0
+ add hl, de
+ ld de, -SCREEN_WIDTH * 2
+ ld a, [wNumFieldMoves]
+.calcFirstFieldMoveYLoop
+ add hl, de
+ dec a
+ jr nz, .calcFirstFieldMoveYLoop
+
+ xor a
+ ld [wNumFieldMoves], a
+ ld de, wFieldMoves
+.printNamesLoop
+ push hl
+ ld hl, FieldMoveNames
+ ld a, [de]
+ and a
+ jr z, .donePrintingNames
+ inc de
+ ld b, a ; index of name
+.skipNamesLoop ; skip past names before the name we want
+ dec b
+ jr z, .reachedName
+.skipNameLoop ; skip past current name
+ ld a, [hli]
+ cp "@"
+ jr nz, .skipNameLoop
+ jr .skipNamesLoop
+.reachedName
+ ld b, h
+ ld c, l
+ pop hl
+ push de
+ ld d, b
+ ld e, c
+ call PlaceString
+ ld bc, SCREEN_WIDTH * 2
+ add hl, bc
+ pop de
+ jr .printNamesLoop
+
+.donePrintingNames
+ pop hl
+ ld a, [wFieldMovesLeftmostXCoord]
+ ld [hFieldMoveMonMenuTopMenuItemX], a
+ coord hl, 0, 12
+ ld a, [wFieldMovesLeftmostXCoord]
+ inc a
+ ld e, a
+ ld d, 0
+ add hl, de
+ ld de, PokemonMenuEntries
+ jp PlaceString
+
+FieldMoveNames:
+ db "CUT@"
+ db "FLY@"
+ db "@"
+ db "SURF@"
+ db "STRENGTH@"
+ db "FLASH@"
+ db "DIG@"
+ db "TELEPORT@"
+ db "SOFTBOILED@"
+
+PokemonMenuEntries:
+ db "STATS"
+ next "SWITCH"
+ next "CANCEL@"
+
+GetMonFieldMoves:
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMon1Moves
+ ld bc, wPartyMon2 - wPartyMon1
+ call AddNTimes
+ ld d, h
+ ld e, l
+ ld c, NUM_MOVES + 1
+ ld hl, wFieldMoves
+.loop
+ push hl
+.nextMove
+ dec c
+ jr z, .done
+ ld a, [de] ; move ID
+ and a
+ jr z, .done
+ ld b, a
+ inc de
+ ld hl, FieldMoveDisplayData
+.fieldMoveLoop
+ ld a, [hli]
+ cp $ff
+ jr z, .nextMove ; if the move is not a field move
+ cp b
+ jr z, .foundFieldMove
+ inc hl
+ inc hl
+ jr .fieldMoveLoop
+.foundFieldMove
+ ld a, b
+ ld [wLastFieldMoveID], a
+ ld a, [hli] ; field move name index
+ ld b, [hl] ; field move leftmost X coordinate
+ pop hl
+ ld [hli], a ; store name index in wFieldMoves
+ ld a, [wNumFieldMoves]
+ inc a
+ ld [wNumFieldMoves], a
+ ld a, [wFieldMovesLeftmostXCoord]
+ cp b
+ jr c, .skipUpdatingLeftmostXCoord
+ ld a, b
+ ld [wFieldMovesLeftmostXCoord], a
+.skipUpdatingLeftmostXCoord
+ ld a, [wLastFieldMoveID]
+ ld b, a
+ jr .loop
+.done
+ pop hl
+ ret
+
+; Format: [Move id], [name index], [leftmost tile]
+; Move id = id of move
+; Name index = index of name in FieldMoveNames
+; Leftmost tile = -1 + tile column in which the first letter of the move's name should be displayed
+; "SOFTBOILED" is $08 because it has 4 more letters than "SURF", for example, whose value is $0C
+FieldMoveDisplayData:
+ db CUT, $01, $0C
+ db FLY, $02, $0C
+ db $B4, $03, $0C ; unused field move
+ db SURF, $04, $0C
+ db STRENGTH, $05, $0A
+ db FLASH, $06, $0C
+ db DIG, $07, $0C
+ db TELEPORT, $08, $0A
+ db SOFTBOILED, $09, $08
+ db $ff ; list terminator
diff --git a/engine/menu/text_ids1.asm b/engine/menu/text_ids1.asm
deleted file mode 100644
index e2fd76f4..00000000
--- a/engine/menu/text_ids1.asm
+++ /dev/null
@@ -1,163 +0,0 @@
-; function that performs initialization for DisplayTextID
-DisplayTextIDInit:
- xor a
- ld [wListMenuID],a
- ld a,[wAutoTextBoxDrawingControl]
- bit 0,a
- jr nz,.skipDrawingTextBoxBorder
- ld a,[hSpriteIndexOrTextID] ; text ID (or sprite ID)
- and a
- jr nz,.notStartMenu
-; if text ID is 0 (i.e. the start menu)
-; Note that the start menu text border is also drawn in the function directly
-; below this, so this seems unnecessary.
- CheckEvent EVENT_GOT_POKEDEX
-; start menu with pokedex
- coord hl, 10, 0
- lb bc, 14, 8
- jr nz,.drawTextBoxBorder
-; start menu without pokedex
- coord hl, 10, 0
- lb bc, 12, 8
- jr .drawTextBoxBorder
-; if text ID is not 0 (i.e. not the start menu) then do a standard dialogue text box
-.notStartMenu
- coord hl, 0, 12
- lb bc, 4, 18
-.drawTextBoxBorder
- call TextBoxBorder
-.skipDrawingTextBoxBorder
- ld hl,wFontLoaded
- set 0,[hl]
- ld hl,wFlags_0xcd60
- bit 4,[hl]
- res 4,[hl]
- jr nz,.skipMovingSprites
- call UpdateSprites
-.skipMovingSprites
-; loop to copy C1X9 (direction the sprite is facing) to C2X9 for each sprite
-; this is done because when you talk to an NPC, they turn to look your way
-; the original direction they were facing must be restored after the dialogue is over
- ld hl,wSpriteStateData1 + $19
- ld c,$0f
- ld de,$0010
-.spriteFacingDirectionCopyLoop
- ld a,[hl]
- inc h
- ld [hl],a
- dec h
- add hl,de
- dec c
- jr nz,.spriteFacingDirectionCopyLoop
-; 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 c,e
-.spriteStandStillLoop
- ld a,[hl]
- cp a,$ff ; is the sprite visible?
- jr z,.nextSprite
-; if it is visible
- and a,$fc
- ld [hl],a
-.nextSprite
- add hl,de
- dec c
- jr nz,.spriteStandStillLoop
- ld b,vBGMap1 / $100 ; window background address
- call CopyScreenTileBufferToVRAM ; transfer background in WRAM to VRAM
- xor a
- ld [hWY],a ; put the window on the screen
- call LoadFontTilePatterns
- ld a,$01
- ld [H_AUTOBGTRANSFERENABLED],a ; enable continuous WRAM to VRAM transfer each V-blank
- ret
-
-; function that displays the start menu
-DrawStartMenu:
- CheckEvent EVENT_GOT_POKEDEX
-; menu with pokedex
- coord hl, 10, 0
- lb bc, 14, 8
- jr nz,.drawTextBoxBorder
-; shorter menu if the player doesn't have the pokedex
- coord hl, 10, 0
- lb bc, 12, 8
-.drawTextBoxBorder
- call TextBoxBorder
- ld a,D_DOWN | D_UP | START | B_BUTTON | A_BUTTON
- ld [wMenuWatchedKeys],a
- ld a,$02
- ld [wTopMenuItemY],a ; Y position of first menu choice
- ld a,$0b
- ld [wTopMenuItemX],a ; X position of first menu choice
- ld a,[wBattleAndStartSavedMenuItem] ; remembered menu selection from last time
- ld [wCurrentMenuItem],a
- ld [wLastMenuItem],a
- xor a
- ld [wMenuWatchMovingOutOfBounds],a
- ld hl,wd730
- set 6,[hl] ; no pauses between printing each letter
- coord hl, 12, 2
- CheckEvent EVENT_GOT_POKEDEX
-; case for not having pokdex
- ld a,$06
- jr z,.storeMenuItemCount
-; case for having pokedex
- ld de,StartMenuPokedexText
- call PrintStartMenuItem
- ld a,$07
-.storeMenuItemCount
- ld [wMaxMenuItem],a ; number of menu items
- ld de,StartMenuPokemonText
- call PrintStartMenuItem
- ld de,StartMenuItemText
- call PrintStartMenuItem
- ld de,wPlayerName ; player's name
- call PrintStartMenuItem
- ld a,[wd72e]
- bit 6,a ; is the player using the link feature?
-; case for not using link feature
- ld de,StartMenuSaveText
- jr z,.printSaveOrResetText
-; case for using link feature
- ld de,StartMenuResetText
-.printSaveOrResetText
- call PrintStartMenuItem
- ld de,StartMenuOptionText
- call PrintStartMenuItem
- ld de,StartMenuExitText
- call PlaceString
- ld hl,wd730
- res 6,[hl] ; turn pauses between printing letters back on
- ret
-
-StartMenuPokedexText:
- db "POKéDEX@"
-
-StartMenuPokemonText:
- db "#MON@"
-
-StartMenuItemText:
- db "ITEM@"
-
-StartMenuSaveText:
- db "SAVE@"
-
-StartMenuResetText:
- db "RESET@"
-
-StartMenuExitText:
- db "EXIT@"
-
-StartMenuOptionText:
- db "OPTION@"
-
-PrintStartMenuItem:
- push hl
- call PlaceString
- pop hl
- ld de,SCREEN_WIDTH * 2
- add hl,de
- ret
diff --git a/engine/menu/text_ids2.asm b/engine/menu/text_ids2.asm
deleted file mode 100644
index b22c9507..00000000
--- a/engine/menu/text_ids2.asm
+++ /dev/null
@@ -1,733 +0,0 @@
-; function to draw various text boxes
-DisplayTextBoxID_:
- ld a,[wTextBoxID]
- cp a,TWO_OPTION_MENU
- jp z,DisplayTwoOptionMenu
- ld c,a
- ld hl,TextBoxFunctionTable
- ld de,3
- call SearchTextBoxTable
- jr c,.functionTableMatch
- ld hl,TextBoxCoordTable
- ld de,5
- call SearchTextBoxTable
- jr c,.coordTableMatch
- ld hl,TextBoxTextAndCoordTable
- ld de,9
- call SearchTextBoxTable
- jr c,.textAndCoordTableMatch
-.done
- ret
-.functionTableMatch
- ld a,[hli]
- ld h,[hl]
- ld l,a ; hl = address of function
- ld de,.done
- push de
- jp hl ; jump to the function
-.coordTableMatch
- call GetTextBoxIDCoords
- call GetAddressOfScreenCoords
- call TextBoxBorder
- ret
-.textAndCoordTableMatch
- call GetTextBoxIDCoords
- push hl
- call GetAddressOfScreenCoords
- call TextBoxBorder
- pop hl
- call GetTextBoxIDText
- ld a,[wd730]
- push af
- ld a,[wd730]
- set 6,a ; no pauses between printing each letter
- ld [wd730],a
- call PlaceString
- pop af
- ld [wd730],a
- call UpdateSprites
- ret
-
-; function to search a table terminated with $ff for a byte matching c in increments of de
-; sets carry flag if a match is found and clears carry flag if not
-SearchTextBoxTable:
- dec de
-.loop
- ld a,[hli]
- cp a,$ff
- jr z,.notFound
- cp c
- jr z,.found
- add hl,de
- jr .loop
-.found
- scf
-.notFound
- ret
-
-; function to load coordinates from the TextBoxCoordTable or the TextBoxTextAndCoordTable
-; INPUT:
-; hl = address of coordinates
-; OUTPUT:
-; b = height
-; c = width
-; d = row of upper left corner
-; e = column of upper left corner
-GetTextBoxIDCoords:
- ld a,[hli] ; column of upper left corner
- ld e,a
- ld a,[hli] ; row of upper left corner
- ld d,a
- ld a,[hli] ; column of lower right corner
- sub e
- dec a
- ld c,a ; c = width
- ld a,[hli] ; row of lower right corner
- sub d
- dec a
- ld b,a ; b = height
- ret
-
-; function to load a text address and text coordinates from the TextBoxTextAndCoordTable
-GetTextBoxIDText:
- ld a,[hli]
- ld e,a
- ld a,[hli]
- ld d,a ; de = address of text
- push de ; save text address
- ld a,[hli]
- ld e,a ; column of upper left corner of text
- ld a,[hl]
- ld d,a ; row of upper left corner of text
- call GetAddressOfScreenCoords
- pop de ; restore text address
- ret
-
-; function to point hl to the screen coordinates
-; INPUT:
-; d = row
-; e = column
-; OUTPUT:
-; hl = address of upper left corner of text box
-GetAddressOfScreenCoords:
- push bc
- coord hl, 0, 0
- ld bc,20
-.loop ; loop to add d rows to the base address
- ld a,d
- and a
- jr z,.addedRows
- add hl,bc
- dec d
- jr .loop
-.addedRows
- pop bc
- add hl,de
- ret
-
-; Format:
-; 00: text box ID
-; 01-02: function address
-TextBoxFunctionTable:
- dbw MONEY_BOX, DisplayMoneyBox
- dbw BUY_SELL_QUIT_MENU, DoBuySellQuitMenu
- dbw FIELD_MOVE_MON_MENU, DisplayFieldMoveMonMenu
- db $ff ; terminator
-
-; Format:
-; 00: text box ID
-; 01: column of upper left corner
-; 02: row of upper left corner
-; 03: column of lower right corner
-; 04: row of lower right corner
-TextBoxCoordTable:
- db MESSAGE_BOX, 0, 12, 19, 17
- db $03, 0, 0, 19, 14
- db $07, 0, 0, 11, 6
- db LIST_MENU_BOX, 4, 2, 19, 12
- db $10, 7, 0, 19, 17
- db MON_SPRITE_POPUP, 6, 4, 14, 13
- db $ff ; terminator
-
-; Format:
-; 00: text box ID
-; 01: column of upper left corner
-; 02: row of upper left corner
-; 03: column of lower right corner
-; 04: row of lower right corner
-; 05-06: address of text
-; 07: column of beginning of text
-; 08: row of beginning of text
-; table of window positions and corresponding text [key, start column, start row, end column, end row, text pointer [2 bytes], text column, text row]
-TextBoxTextAndCoordTable:
- db JP_MOCHIMONO_MENU_TEMPLATE
- db 0,0,14,17 ; text box coordinates
- dw JapaneseMochimonoText
- db 3,0 ; text coordinates
-
- db USE_TOSS_MENU_TEMPLATE
- db 13,10,19,14 ; text box coordinates
- dw UseTossText
- db 15,11 ; text coordinates
-
- db JP_SAVE_MESSAGE_MENU_TEMPLATE
- db 0,0,7,5 ; text box coordinates
- dw JapaneseSaveMessageText
- db 2,2 ; text coordinates
-
- db JP_SPEED_OPTIONS_MENU_TEMPLATE
- db 0,6,5,10 ; text box coordinates
- dw JapaneseSpeedOptionsText
- db 2,7 ; text coordinates
-
- db BATTLE_MENU_TEMPLATE
- db 8,12,19,17 ; text box coordinates
- dw BattleMenuText
- db 10,14 ; text coordinates
-
- db SAFARI_BATTLE_MENU_TEMPLATE
- db 0,12,19,17 ; text box coordinates
- dw SafariZoneBattleMenuText
- db 2,14 ; text coordinates
-
- db SWITCH_STATS_CANCEL_MENU_TEMPLATE
- db 11,11,19,17 ; text box coordinates
- dw SwitchStatsCancelText
- db 13,12 ; text coordinates
-
- db BUY_SELL_QUIT_MENU_TEMPLATE
- db 0,0,10,6 ; text box coordinates
- dw BuySellQuitText
- db 2,1 ; text coordinates
-
- db MONEY_BOX_TEMPLATE
- db 11,0,19,2 ; text box coordinates
- dw MoneyText
- db 13,0 ; text coordinates
-
- db JP_AH_MENU_TEMPLATE
- db 7,6,11,10 ; text box coordinates
- dw JapaneseAhText
- db 8,8 ; text coordinates
-
- db JP_POKEDEX_MENU_TEMPLATE
- db 11,8,19,17 ; text box coordinates
- dw JapanesePokedexMenu
- db 12,10 ; text coordinates
-
-; note that there is no terminator
-
-BuySellQuitText:
- db "BUY"
- next "SELL"
- next "QUIT@@"
-
-UseTossText:
- db "USE"
- next "TOSS@"
-
-JapaneseSaveMessageText:
- db "きろく"
- next "メッセージ@"
-
-JapaneseSpeedOptionsText:
- db "はやい"
- next "おそい@"
-
-MoneyText:
- db "MONEY@"
-
-JapaneseMochimonoText:
- db "もちもの@"
-
-JapaneseMainMenuText:
- db "つづきから"
- next "さいしょから@"
-
-BattleMenuText:
- db "FIGHT ",$E1,$E2
- next "ITEM RUN@"
-
-SafariZoneBattleMenuText:
- db "BALL× BAIT"
- next "THROW ROCK RUN@"
-
-SwitchStatsCancelText:
- db "SWITCH"
- next "STATS"
- next "CANCEL@"
-
-JapaneseAhText:
- db "アッ!@"
-
-JapanesePokedexMenu:
- db "データをみる"
- next "なきごえ"
- next "ぶんぷをみる"
- next "キャンセル@"
-
-DisplayMoneyBox:
- ld hl, wd730
- set 6, [hl]
- ld a, MONEY_BOX_TEMPLATE
- ld [wTextBoxID], a
- call DisplayTextBoxID
- coord hl, 13, 1
- lb bc, 1, 6
- call ClearScreenArea
- coord hl, 12, 1
- ld de, wPlayerMoney
- ld c, $a3
- call PrintBCDNumber
- ld hl, wd730
- res 6, [hl]
- ret
-
-CurrencyString:
- db " ¥@"
-
-DoBuySellQuitMenu:
- ld a, [wd730]
- set 6, a ; no printing delay
- ld [wd730], a
- xor a
- ld [wChosenMenuItem], a
- ld a, BUY_SELL_QUIT_MENU_TEMPLATE
- ld [wTextBoxID], a
- call DisplayTextBoxID
- ld a, A_BUTTON | B_BUTTON
- ld [wMenuWatchedKeys], a
- ld a, $2
- ld [wMaxMenuItem], a
- ld a, $1
- ld [wTopMenuItemY], a
- ld a, $1
- ld [wTopMenuItemX], a
- xor a
- ld [wCurrentMenuItem], a
- ld [wLastMenuItem], a
- ld [wMenuWatchMovingOutOfBounds], a
- ld a, [wd730]
- res 6, a ; turn on the printing delay
- ld [wd730], a
- call HandleMenuInput
- call PlaceUnfilledArrowMenuCursor
- bit 0, a ; was A pressed?
- jr nz, .pressedA
- bit 1, a ; was B pressed? (always true since only A/B are watched)
- jr z, .pressedA
- ld a, CANCELLED_MENU
- ld [wMenuExitMethod], a
- jr .quit
-.pressedA
- ld a, CHOSE_MENU_ITEM
- ld [wMenuExitMethod], a
- ld a, [wCurrentMenuItem]
- ld [wChosenMenuItem], a
- ld b, a
- ld a, [wMaxMenuItem]
- cp b
- jr z, .quit
- ret
-.quit
- ld a, CANCELLED_MENU
- ld [wMenuExitMethod], a
- ld a, [wCurrentMenuItem]
- ld [wChosenMenuItem], a
- scf
- ret
-
-; displays a menu with two options to choose from
-; b = Y of upper left corner of text region
-; c = X of upper left corner of text region
-; hl = address where the text box border should be drawn
-DisplayTwoOptionMenu:
- push hl
- ld a, [wd730]
- set 6, a ; no printing delay
- ld [wd730], a
-
-; pointless because both values are overwritten before they are read
- xor a
- ld [wChosenMenuItem], a
- ld [wMenuExitMethod], a
-
- ld a, A_BUTTON | B_BUTTON
- ld [wMenuWatchedKeys], a
- ld a, $1
- ld [wMaxMenuItem], a
- ld a, b
- ld [wTopMenuItemY], a
- ld a, c
- ld [wTopMenuItemX], a
- xor a
- ld [wLastMenuItem], a
- ld [wMenuWatchMovingOutOfBounds], a
- push hl
- ld hl, wTwoOptionMenuID
- bit 7, [hl] ; select second menu item by default?
- res 7, [hl]
- jr z, .storeCurrentMenuItem
- inc a
-.storeCurrentMenuItem
- ld [wCurrentMenuItem], a
- pop hl
- push hl
- push hl
- call TwoOptionMenu_SaveScreenTiles
- ld a, [wTwoOptionMenuID]
- ld hl, TwoOptionMenuStrings
- ld e, a
- ld d, $0
- ld a, $5
-.menuStringLoop
- add hl, de
- dec a
- jr nz, .menuStringLoop
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld e, l
- ld d, h
- pop hl
- push de
- ld a, [wTwoOptionMenuID]
- cp TRADE_CANCEL_MENU
- jr nz, .notTradeCancelMenu
- call CableClub_TextBoxBorder
- jr .afterTextBoxBorder
-.notTradeCancelMenu
- call TextBoxBorder
-.afterTextBoxBorder
- call UpdateSprites
- pop hl
- ld a, [hli]
- and a ; put blank line before first menu item?
- ld bc, 20 + 2
- jr z, .noBlankLine
- ld bc, 2 * 20 + 2
-.noBlankLine
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- pop hl
- add hl, bc
- call PlaceString
- xor a
- ld [wTwoOptionMenuID], a
- ld hl, wd730
- res 6, [hl]
- call HandleMenuInput
- pop hl
- bit 1, a ; A button pressed?
- jr nz, .choseSecondMenuItem ; automatically choose the second option if B is pressed
-.pressedAButton
- ld a, [wCurrentMenuItem]
- ld [wChosenMenuItem], a
- and a
- jr nz, .choseSecondMenuItem
-; chose first menu item
- ld a, CHOSE_FIRST_ITEM
- ld [wMenuExitMethod], a
- ld c, 15
- call DelayFrames
- call TwoOptionMenu_RestoreScreenTiles
- and a
- ret
-.choseSecondMenuItem
- ld a, 1
- ld [wCurrentMenuItem], a
- ld [wChosenMenuItem], a
- ld a, CHOSE_SECOND_ITEM
- ld [wMenuExitMethod], a
- ld c, 15
- call DelayFrames
- call TwoOptionMenu_RestoreScreenTiles
- scf
- ret
-
-; Some of the wider/taller two option menus will not have the screen areas
-; they cover be fully saved/restored by the two functions below.
-; The bottom and right edges of the menu may remain after the function returns.
-
-TwoOptionMenu_SaveScreenTiles:
- ld de, wBuffer
- lb bc, 5, 6
-.loop
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .loop
- push bc
- ld bc, SCREEN_WIDTH - 6
- add hl, bc
- pop bc
- ld c, $6
- dec b
- jr nz, .loop
- ret
-
-TwoOptionMenu_RestoreScreenTiles:
- ld de, wBuffer
- lb bc, 5, 6
-.loop
- ld a, [de]
- inc de
- ld [hli], a
- dec c
- jr nz, .loop
- push bc
- ld bc, SCREEN_WIDTH - 6
- add hl, bc
- pop bc
- ld c, 6
- dec b
- jr nz, .loop
- call UpdateSprites
- ret
-
-; Format:
-; 00: byte width
-; 01: byte height
-; 02: byte put blank line before first menu item
-; 03: word text pointer
-TwoOptionMenuStrings:
- db 4,3,0
- dw .YesNoMenu
- db 6,3,0
- dw .NorthWestMenu
- db 6,3,0
- dw .SouthEastMenu
- db 6,3,0
- dw .YesNoMenu
- db 6,3,0
- dw .NorthEastMenu
- db 7,3,0
- dw .TradeCancelMenu
- db 7,4,1
- dw .HealCancelMenu
- db 4,3,0
- dw .NoYesMenu
-
-.NoYesMenu
- db "NO",$4E,"YES@"
-.YesNoMenu
- db "YES",$4E,"NO@"
-.NorthWestMenu
- db "NORTH",$4E,"WEST@"
-.SouthEastMenu
- db "SOUTH",$4E,"EAST@"
-.NorthEastMenu
- db "NORTH",$4E,"EAST@"
-.TradeCancelMenu
- db "TRADE",$4E,"CANCEL@"
-.HealCancelMenu
- db "HEAL",$4E,"CANCEL@"
-
-DisplayFieldMoveMonMenu:
- xor a
- ld hl, wFieldMoves
- ld [hli], a ; wFieldMoves
- ld [hli], a ; wFieldMoves + 1
- ld [hli], a ; wFieldMoves + 2
- ld [hli], a ; wFieldMoves + 3
- ld [hli], a ; wNumFieldMoves
- ld [hl], 12 ; wFieldMovesLeftmostXCoord
- call GetMonFieldMoves
- ld a, [wNumFieldMoves]
- and a
- jr nz, .fieldMovesExist
-
-; no field moves
- coord hl, 11, 11
- lb bc, 5, 7
- call TextBoxBorder
- call UpdateSprites
- ld a, 12
- ld [hFieldMoveMonMenuTopMenuItemX], a ; fffb, not fff7
- coord hl, 13, 12
- ld de, PokemonMenuEntries
- jp PlaceString
-
-.fieldMovesExist
- push af
-
-; Calculate the text box position and dimensions based on the leftmost X coord
-; of the field move names before adjusting for the number of field moves.
- coord hl, 0, 11
- ld a, [wFieldMovesLeftmostXCoord]
- dec a
- ld e, a
- ld d, 0
- add hl, de
- ld b, 5
- ld a, 18
- sub e
- ld c, a
- pop af
-
-; For each field move, move the top of the text box up 2 rows while the leaving
-; the bottom of the text box at the bottom of the screen.
- ld de, -SCREEN_WIDTH * 2
-.textBoxHeightLoop
- add hl, de
- inc b
- inc b
- dec a
- jr nz, .textBoxHeightLoop
-
-; Make space for an extra blank row above the top field move.
- ld de, -SCREEN_WIDTH
- add hl, de
- inc b
-
- call TextBoxBorder
- call UpdateSprites
-
-; Calculate the position of the first field move name to print.
- coord hl, 0, 12
- ld a, [wFieldMovesLeftmostXCoord]
- inc a
- ld e, a
- ld d, 0
- add hl, de
- ld de, -SCREEN_WIDTH * 2
- ld a, [wNumFieldMoves]
-.calcFirstFieldMoveYLoop
- add hl, de
- dec a
- jr nz, .calcFirstFieldMoveYLoop
-
- xor a
- ld [wNumFieldMoves], a
- ld de, wFieldMoves
-.printNamesLoop
- push hl
- ld hl, FieldMoveNames
- ld a, [de]
- and a
- jr z, .donePrintingNames
- inc de
- ld b, a ; index of name
-.skipNamesLoop ; skip past names before the name we want
- dec b
- jr z, .reachedName
-.skipNameLoop ; skip past current name
- ld a, [hli]
- cp "@"
- jr nz, .skipNameLoop
- jr .skipNamesLoop
-.reachedName
- ld b, h
- ld c, l
- pop hl
- push de
- ld d, b
- ld e, c
- call PlaceString
- ld bc, SCREEN_WIDTH * 2
- add hl, bc
- pop de
- jr .printNamesLoop
-
-.donePrintingNames
- pop hl
- ld a, [wFieldMovesLeftmostXCoord]
- ld [hFieldMoveMonMenuTopMenuItemX], a
- coord hl, 0, 12
- ld a, [wFieldMovesLeftmostXCoord]
- inc a
- ld e, a
- ld d, 0
- add hl, de
- ld de, PokemonMenuEntries
- jp PlaceString
-
-FieldMoveNames:
- db "CUT@"
- db "FLY@"
- db "@"
- db "SURF@"
- db "STRENGTH@"
- db "FLASH@"
- db "DIG@"
- db "TELEPORT@"
- db "SOFTBOILED@"
-
-PokemonMenuEntries:
- db "STATS"
- next "SWITCH"
- next "CANCEL@"
-
-GetMonFieldMoves:
- ld a, [wWhichPokemon]
- ld hl, wPartyMon1Moves
- ld bc, wPartyMon2 - wPartyMon1
- call AddNTimes
- ld d, h
- ld e, l
- ld c, NUM_MOVES + 1
- ld hl, wFieldMoves
-.loop
- push hl
-.nextMove
- dec c
- jr z, .done
- ld a, [de] ; move ID
- and a
- jr z, .done
- ld b, a
- inc de
- ld hl, FieldMoveDisplayData
-.fieldMoveLoop
- ld a, [hli]
- cp $ff
- jr z, .nextMove ; if the move is not a field move
- cp b
- jr z, .foundFieldMove
- inc hl
- inc hl
- jr .fieldMoveLoop
-.foundFieldMove
- ld a, b
- ld [wLastFieldMoveID], a
- ld a, [hli] ; field move name index
- ld b, [hl] ; field move leftmost X coordinate
- pop hl
- ld [hli], a ; store name index in wFieldMoves
- ld a, [wNumFieldMoves]
- inc a
- ld [wNumFieldMoves], a
- ld a, [wFieldMovesLeftmostXCoord]
- cp b
- jr c, .skipUpdatingLeftmostXCoord
- ld a, b
- ld [wFieldMovesLeftmostXCoord], a
-.skipUpdatingLeftmostXCoord
- ld a, [wLastFieldMoveID]
- ld b, a
- jr .loop
-.done
- pop hl
- ret
-
-; Format: [Move id], [name index], [leftmost tile]
-; Move id = id of move
-; Name index = index of name in FieldMoveNames
-; Leftmost tile = -1 + tile column in which the first letter of the move's name should be displayed
-; "SOFTBOILED" is $08 because it has 4 more letters than "SURF", for example, whose value is $0C
-FieldMoveDisplayData:
- db CUT, $01, $0C
- db FLY, $02, $0C
- db $B4, $03, $0C ; unused field move
- db SURF, $04, $0C
- db STRENGTH, $05, $0A
- db FLASH, $06, $0C
- db DIG, $07, $0C
- db TELEPORT, $08, $0A
- db SOFTBOILED, $09, $08
- db $ff ; list terminator
-
diff --git a/engine/menu/vending_machine.asm b/engine/menu/vending_machine.asm
index d864141d..37d9b9e7 100755
--- a/engine/menu/vending_machine.asm
+++ b/engine/menu/vending_machine.asm
@@ -92,7 +92,8 @@ DrinkText:
DrinkPriceText:
db "¥200"
next "¥300"
- next "¥350",$4E,"@"
+ next "¥350"
+ next "@"
VendingMachineText4:
TX_FAR _VendingMachineText4
diff --git a/engine/move_mon.asm b/engine/move_mon.asm
deleted file mode 100644
index 3471875e..00000000
--- a/engine/move_mon.asm
+++ /dev/null
@@ -1,172 +0,0 @@
-_MoveMon:
- ld a, [wMoveMonType]
- and a
- jr z, .checkPartyMonSlots
- cp DAYCARE_TO_PARTY
- jr z, .checkPartyMonSlots
- cp PARTY_TO_DAYCARE
- ld hl, wDayCareMon
- jr z, .asm_f3fb
- ld hl, wNumInBox
- ld a, [hl]
- cp MONS_PER_BOX
- jr nz, .partyOrBoxNotFull
- jr .boxFull
-.checkPartyMonSlots
- ld hl, wPartyCount
- ld a, [hl]
- cp PARTY_LENGTH
- jr nz, .partyOrBoxNotFull
-.boxFull
- scf
- ret
-.partyOrBoxNotFull
- inc a
- ld [hl], a ; increment number of mons in party/box
- ld c, a
- ld b, 0
- add hl, bc
- ld a, [wMoveMonType]
- cp DAYCARE_TO_PARTY
- ld a, [wDayCareMon]
- jr z, .asm_f3dc
- ld a, [wcf91]
-.asm_f3dc
- ld [hli], a ; write new mon ID
- ld [hl], $ff ; write new sentinel
- ld a, [wMoveMonType]
- dec a
- ld hl, wPartyMons
- ld bc, wPartyMon2 - wPartyMon1 ; $2c
- ld a, [wPartyCount]
- jr nz, .skipToNewMonEntry
- ld hl, wBoxMons
- ld bc, wBoxMon2 - wBoxMon1 ; $21
- ld a, [wNumInBox]
-.skipToNewMonEntry
- dec a
- call AddNTimes
-.asm_f3fb
- push hl
- ld e, l
- ld d, h
- ld a, [wMoveMonType]
- and a
- ld hl, wBoxMons
- ld bc, wBoxMon2 - wBoxMon1 ; $21
- jr z, .asm_f417
- cp DAYCARE_TO_PARTY
- ld hl, wDayCareMon
- jr z, .asm_f41d
- ld hl, wPartyMons
- ld bc, wPartyMon2 - wPartyMon1 ; $2c
-.asm_f417
- ld a, [wWhichPokemon]
- call AddNTimes
-.asm_f41d
- push hl
- push de
- ld bc, wBoxMon2 - wBoxMon1
- call CopyData
- pop de
- pop hl
- ld a, [wMoveMonType]
- and a
- jr z, .asm_f43a
- cp DAYCARE_TO_PARTY
- jr z, .asm_f43a
- ld bc, wBoxMon2 - wBoxMon1
- add hl, bc
- ld a, [hl]
- inc de
- inc de
- inc de
- ld [de], a
-.asm_f43a
- ld a, [wMoveMonType]
- cp PARTY_TO_DAYCARE
- ld de, wDayCareMonOT
- jr z, .asm_f459
- dec a
- ld hl, wPartyMonOT
- ld a, [wPartyCount]
- jr nz, .asm_f453
- ld hl, wBoxMonOT
- ld a, [wNumInBox]
-.asm_f453
- dec a
- call SkipFixedLengthTextEntries
- ld d, h
- ld e, l
-.asm_f459
- ld hl, wBoxMonOT
- ld a, [wMoveMonType]
- and a
- jr z, .asm_f46c
- ld hl, wDayCareMonOT
- cp DAYCARE_TO_PARTY
- jr z, .asm_f472
- ld hl, wPartyMonOT
-.asm_f46c
- ld a, [wWhichPokemon]
- call SkipFixedLengthTextEntries
-.asm_f472
- ld bc, NAME_LENGTH
- call CopyData
- ld a, [wMoveMonType]
- cp PARTY_TO_DAYCARE
- ld de, wDayCareMonName
- jr z, .asm_f497
- dec a
- ld hl, wPartyMonNicks
- ld a, [wPartyCount]
- jr nz, .asm_f491
- ld hl, wBoxMonNicks
- ld a, [wNumInBox]
-.asm_f491
- dec a
- call SkipFixedLengthTextEntries
- ld d, h
- ld e, l
-.asm_f497
- ld hl, wBoxMonNicks
- ld a, [wMoveMonType]
- and a
- jr z, .asm_f4aa
- ld hl, wDayCareMonName
- cp DAYCARE_TO_PARTY
- jr z, .asm_f4b0
- ld hl, wPartyMonNicks
-.asm_f4aa
- ld a, [wWhichPokemon]
- call SkipFixedLengthTextEntries
-.asm_f4b0
- ld bc, NAME_LENGTH
- call CopyData
- pop hl
- ld a, [wMoveMonType]
- cp PARTY_TO_BOX
- jr z, .asm_f4ea
- cp PARTY_TO_DAYCARE
- jr z, .asm_f4ea
- push hl
- srl a
- add $2
- ld [wMonDataLocation], a
- call LoadMonData
- callba CalcLevelFromExperience
- ld a, d
- ld [wCurEnemyLVL], a
- pop hl
- ld bc, wBoxMon2 - wBoxMon1
- add hl, bc
- ld [hli], a
- ld d, h
- ld e, l
- ld bc, -18
- add hl, bc
- ld b, $1
- call CalcStats
-.asm_f4ea
- and a
- ret
diff --git a/engine/oak_speech.asm b/engine/oak_speech.asm
index 38fe66f9..8a537579 100755
--- a/engine/oak_speech.asm
+++ b/engine/oak_speech.asm
@@ -43,116 +43,116 @@ SetDefaultNames:
OakSpeech:
call StopAllMusic ; stop music
ld a, BANK(Music_Routes2)
- ld c,a
+ ld c, a
ld a, MUSIC_ROUTES2
call PlayMusic
call ClearScreen
call LoadTextBoxTilePatterns
call SetDefaultNames
predef InitPlayerData2
- ld hl,wNumBoxItems
- ld a,POTION
- ld [wcf91],a
- ld a,1
- ld [wItemQuantity],a
+ ld hl, wNumBoxItems
+ ld a, POTION
+ ld [wcf91], a
+ ld a, 1
+ ld [wItemQuantity], a
call AddItemToInventory ; give one potion
- ld a,[wDefaultMap]
- ld [wDestinationMap],a
+ ld a, [wDefaultMap]
+ ld [wDestinationMap], a
call SpecialWarpIn
xor a
- ld [hTilesetType],a
- ld a,[wd732]
- bit 1,a ; possibly a debug mode bit
- jp nz,.skipChoosingNames
- ld de,ProfOakPic
+ ld [hTilesetType], a
+ ld a, [wd732]
+ bit 1, a ; possibly a debug mode bit
+ jp nz, .skipChoosingNames
+ ld de, ProfOakPic
lb bc, Bank(ProfOakPic), $00
call IntroDisplayPicCenteredOrUpperRight
call FadeInIntroPic
- ld hl,OakSpeechText1
+ ld hl, OakSpeechText1
call PrintText
call GBFadeOutToWhite
call ClearScreen
- ld a,PIKACHU
- ld [wd0b5],a
- ld [wcf91],a
+ ld a, PIKACHU
+ ld [wd0b5], a
+ ld [wcf91], a
call GetMonHeader
coord hl, 6, 4
call LoadFlippedFrontSpriteByMonIndex
call MovePicLeft
- ld hl,OakSpeechText2
+ ld hl, OakSpeechText2
call PrintText
call GBFadeOutToWhite
call ClearScreen
- ld de,RedPicFront
+ ld de, RedPicFront
lb bc, Bank(RedPicFront), $00
call IntroDisplayPicCenteredOrUpperRight
call MovePicLeft
- ld hl,IntroducePlayerText
+ ld hl, IntroducePlayerText
call PrintText
call ChoosePlayerName
call GBFadeOutToWhite
call ClearScreen
- ld de,Rival1Pic
+ ld de, Rival1Pic
lb bc, Bank(Rival1Pic), $00
call IntroDisplayPicCenteredOrUpperRight
call FadeInIntroPic
- ld hl,IntroduceRivalText
+ ld hl, IntroduceRivalText
call PrintText
call ChooseRivalName
.skipChoosingNames
call GBFadeOutToWhite
call ClearScreen
- ld de,RedPicFront
+ ld de, RedPicFront
lb bc, Bank(RedPicFront), $00
call IntroDisplayPicCenteredOrUpperRight
call GBFadeInFromWhite
- ld a,[wd72d]
+ ld a, [wd72d]
and a
- jr nz,.next
- ld hl,OakSpeechText3
+ jr nz, .next
+ ld hl, OakSpeechText3
call PrintText
.next
- ld a,[H_LOADEDROMBANK]
+ ld a, [H_LOADEDROMBANK]
push af
- ld a,SFX_SHRINK
+ ld a, SFX_SHRINK
call PlaySound
pop af
call BankswitchCommon
- ld c,4
+ ld c, 4
call DelayFrames
- ld hl,vSprites
- ld de,RedSprite
+ ld hl, vSprites
+ ld de, RedSprite
ld b, BANK(RedSprite)
ld c, $0C
call CopyVideoData
- ld de,ShrinkPic1
+ ld de, ShrinkPic1
lb bc, BANK(ShrinkPic1), $00
call IntroDisplayPicCenteredOrUpperRight
- ld c,4
+ ld c, 4
call DelayFrames
- ld de,ShrinkPic2
+ ld de, ShrinkPic2
lb bc, BANK(ShrinkPic2), $00
call IntroDisplayPicCenteredOrUpperRight
call ResetPlayerSpriteData
- ld a,[H_LOADEDROMBANK]
+ ld a, [H_LOADEDROMBANK]
push af
ld a, BANK(Music_PalletTown)
- ld [wAudioROMBank],a
- ld [wAudioSavedROMBank],a
+ ld [wAudioROMBank], a
+ ld [wAudioSavedROMBank], a
ld a, 10
- ld [wAudioFadeOutControl],a
+ ld [wAudioFadeOutControl], a
call StopAllMusic ; stop music
pop af
call BankswitchCommon
- ld c,20
+ ld c, 20
call DelayFrames
coord hl, 6, 5
lb bc, 7, 7
call ClearScreenArea
call LoadTextBoxTilePatterns
- ld a,1
- ld [wUpdateSpritesEnabled],a
- ld c,50
+ ld a, 1
+ ld [wUpdateSpritesEnabled], a
+ ld c, 50
call DelayFrames
call GBFadeOutToWhite
call ClearScreen ; rip more tail-end optimizations
@@ -163,7 +163,7 @@ OakSpeechText1:
db "@"
OakSpeechText2:
TX_FAR _OakSpeechText2A
- db $14 ; play NIDORINA cry from TextCommandSounds
+ TX_CRY_NIDORINA
TX_FAR _OakSpeechText2B
db "@"
IntroducePlayerText:
@@ -177,16 +177,16 @@ OakSpeechText3:
db "@"
FadeInIntroPic:
- ld hl,IntroFadePalettes
- ld b,6
+ ld hl, IntroFadePalettes
+ ld b, 6
.next
- ld a,[hli]
- ld [rBGP],a
+ ld a, [hli]
+ ld [rBGP], a
call UpdateGBCPal_BGP
- ld c,10
+ ld c, 10
call DelayFrames
dec b
- jr nz,.next
+ jr nz, .next
ret
IntroFadePalettes:
@@ -198,20 +198,20 @@ IntroFadePalettes:
db %11100100
MovePicLeft:
- ld a,119
- ld [rWX],a
+ ld a, 119
+ ld [rWX], a
call DelayFrame
- ld a,%11100100
- ld [rBGP],a
+ ld a, %11100100
+ ld [rBGP], a
call UpdateGBCPal_BGP
.next
call DelayFrame
- ld a,[rWX]
+ ld a, [rWX]
sub 8
cp $FF
ret z
- ld [rWX],a
+ ld [rWX], a
jr .next
DisplayPicCenteredOrUpperRight:
@@ -221,24 +221,24 @@ IntroDisplayPicCenteredOrUpperRight:
; de = address of compressed pic
; c: 0 = centred, non-zero = upper-right
push bc
- ld a,b
+ ld a, b
call UncompressSpriteFromDE
ld a, $0
call SwitchSRAMBankAndLatchClockData
- ld hl,sSpriteBuffer1
- ld de,sSpriteBuffer0
- ld bc,$310
+ ld hl, sSpriteBuffer1
+ ld de, sSpriteBuffer0
+ ld bc, $310
call CopyData
call PrepareRTCDataAndDisableSRAM
- ld de,vFrontPic
+ ld de, vFrontPic
call InterlaceMergeSpriteBuffers
pop bc
- ld a,c
+ ld a, c
and a
coord hl, 15, 1
- jr nz,.next
+ jr nz, .next
coord hl, 6, 4
.next
xor a
- ld [hStartTileID],a
+ ld [hStartTileID], a
predef_jump CopyUncompressedPicToTilemap
diff --git a/engine/overworld/boulders.asm b/engine/overworld/boulders.asm
deleted file mode 100644
index 669b7b83..00000000
--- a/engine/overworld/boulders.asm
+++ /dev/null
@@ -1,94 +0,0 @@
-CheckForCollisionWhenPushingBoulder:
- call GetTileTwoStepsInFrontOfPlayer
- call IsTilePassable
- jr c, .done
- ld hl, TilePairCollisionsLand
- call CheckForTilePairCollisions2
- ld a, $ff
- jr c, .done ; if there is an elevation difference between the current tile and the one two steps ahead
- ld a, [wTileInFrontOfBoulderAndBoulderCollisionResult]
- cp $15 ; stairs tile
- ld a, $ff
- jr z, .done ; if the tile two steps ahead is stairs
- call CheckForBoulderCollisionWithSprites
-.done
- ld [wTileInFrontOfBoulderAndBoulderCollisionResult], a
- ret
-
-; sets a to $ff if there is a collision and $00 if there is no collision
-CheckForBoulderCollisionWithSprites:
- ld a, [wBoulderSpriteIndex]
- dec a
- swap a
- ld d, 0
- ld e, a
- ld hl, wSpriteStateData2 + $14
- add hl, de
- ld a, [hli] ; map Y position
- ld [$ffdc], a
- ld a, [hl] ; map X position
- ld [$ffdd], a
- ld a, [wNumSprites]
- ld c, a
- ld de, $f
- ld hl, wSpriteStateData2 + $14
- ld a, [$ffdb]
- and $3 ; facing up or down?
- jr z, .pushingHorizontallyLoop
-.pushingVerticallyLoop
- inc hl
- ld a, [$ffdd]
- cp [hl]
- jr nz, .nextSprite1 ; if X coordinates don't match
- dec hl
- ld a, [hli]
- ld b, a
- ld a, [$ffdb]
- rrca
- jr c, .pushingDown
-; pushing up
- ld a, [$ffdc]
- dec a
- jr .compareYCoords
-.pushingDown
- ld a, [$ffdc]
- inc a
-.compareYCoords
- cp b
- jr z, .failure
-.nextSprite1
- dec c
- jr z, .success
- add hl, de
- jr .pushingVerticallyLoop
-.pushingHorizontallyLoop
- ld a, [hli]
- ld b, a
- ld a, [$ffdc]
- cp b
- jr nz, .nextSprite2
- ld b, [hl]
- ld a, [$ffdb]
- bit 2, a
- jr nz, .pushingLeft
-; pushing right
- ld a, [$ffdd]
- inc a
- jr .compareXCoords
-.pushingLeft
- ld a, [$ffdd]
- dec a
-.compareXCoords
- cp b
- jr z, .failure
-.nextSprite2
- dec c
- jr z, .success
- add hl, de
- jr .pushingHorizontallyLoop
-.failure
- ld a, $ff
- ret
-.success
- xor a
- ret
diff --git a/engine/overworld/cable_club_npc.asm b/engine/overworld/cable_club_npc.asm
index e3ce8e8d..12ce64a4 100755
--- a/engine/overworld/cable_club_npc.asm
+++ b/engine/overworld/cable_club_npc.asm
@@ -180,7 +180,8 @@ CableClubNPCPleaseApplyHereHaveToSaveText:
CableClubNPCPleaseWaitText:
TX_FAR _CableClubNPCPleaseWaitText
- db $a, "@"
+ TX_DELAY
+ db "@"
CableClubNPCLinkClosedBecauseOfInactivityText:
TX_FAR _CableClubNPCLinkClosedBecauseOfInactivityText
diff --git a/engine/overworld/card_key.asm b/engine/overworld/card_key.asm
index 9026960c..a4452b4a 100755
--- a/engine/overworld/card_key.asm
+++ b/engine/overworld/card_key.asm
@@ -74,7 +74,7 @@ SilphCoMapList:
CardKeySuccessText:
TX_FAR _CardKeySuccessText1
- TX_SFX_ITEM
+ TX_SFX_ITEM_1
TX_FAR _CardKeySuccessText2
db "@"
diff --git a/engine/overworld/check_player_state.asm b/engine/overworld/check_player_state.asm
deleted file mode 100644
index 2fcb5b9d..00000000
--- a/engine/overworld/check_player_state.asm
+++ /dev/null
@@ -1,236 +0,0 @@
-; only used for setting bit 2 of wd736 upon entering a new map
-IsPlayerStandingOnWarp:
- ld a, [wNumberOfWarps]
- and a
- ret z
- ld c, a
- ld hl, wWarpEntries
-.loop
- ld a, [wYCoord]
- cp [hl]
- jr nz, .nextWarp1
- inc hl
- ld a, [wXCoord]
- cp [hl]
- jr nz, .nextWarp2
- inc hl
- ld a, [hli] ; target warp
- ld [wDestinationWarpID], a
- ld a, [hl] ; target map
- ld [$ff8b], a
- ld hl, wd736
- set 2, [hl] ; standing on warp flag
- ret
-.nextWarp1
- inc hl
-.nextWarp2
- inc hl
- inc hl
- inc hl
- dec c
- jr nz, .loop
- ret
-
-CheckForceBikeOrSurf:
- ld hl, wd732
- bit 5, [hl]
- ret nz
- ld hl, ForcedBikeOrSurfMaps
- ld a, [wYCoord]
- ld b, a
- ld a, [wXCoord]
- ld c, a
- ld a, [wCurMap]
- ld d, a
-.loop
- ld a, [hli]
- cp $ff
- ret z ;if we reach FF then it's not part of the list
- cp d ;compare to current map
- jr nz, .incorrectMap
- ld a, [hli]
- cp b ;compare y-coord
- jr nz, .incorrectY
- ld a, [hli]
- cp c ;compare x-coord
- jr nz, .loop ; incorrect x-coord, check next item
- ld a, [wCurMap]
- cp SEAFOAM_ISLANDS_4
- ld a, $2
- ld [wSeafoamIslands4CurScript], a
- jr z, .forceSurfing
- ld a, [wCurMap]
- cp SEAFOAM_ISLANDS_5
- ld a, $2
- ld [wSeafoamIslands5CurScript], a
- jr z, .forceSurfing
- ;force bike riding
- ld hl, wd732
- set 5, [hl]
- ld a, $1
- ld [wWalkBikeSurfState], a
- ld [wWalkBikeSurfStateCopy], a
- call ForceBikeOrSurf
- ret
-.incorrectMap
- inc hl
-.incorrectY
- inc hl
- jr .loop
-.forceSurfing
- ld a, $2
- ld [wWalkBikeSurfState], a
- ld [wWalkBikeSurfStateCopy], a
- call ForceBikeOrSurf
- ret
-
-INCLUDE "data/force_bike_surf.asm"
-
-IsPlayerFacingEdgeOfMap:
- push hl
- push de
- push bc
- ld a, [wSpritePlayerStateData1FacingDirection] ; player sprite's facing direction
- srl a
- ld c, a
- ld b, $0
- ld hl, .functionPointerTable
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [wYCoord]
- ld b, a
- ld a, [wXCoord]
- ld c, a
- ld de, .returnaddress
- push de
- jp hl
-.returnaddress
- pop bc
- pop de
- pop hl
- ret
-
-.functionPointerTable
- dw .facingDown
- dw .facingUp
- dw .facingLeft
- dw .facingRight
-
-.facingDown
- ld a, [wCurMapHeight]
- add a
- dec a
- cp b
- jr z, .setCarry
- jr .resetCarry
-
-.facingUp
- ld a, b
- and a
- jr z, .setCarry
- jr .resetCarry
-
-.facingLeft
- ld a, c
- and a
- jr z, .setCarry
- jr .resetCarry
-
-.facingRight
- ld a, [wCurMapWidth]
- add a
- dec a
- cp c
- jr z, .setCarry
- jr .resetCarry
-.resetCarry
- and a
- ret
-.setCarry
- scf
- ret
-
-IsWarpTileInFrontOfPlayer:
- push hl
- push de
- push bc
- call _GetTileAndCoordsInFrontOfPlayer
- ld a, [wCurMap]
- cp SS_ANNE_5
- jr z, .ssAnne5
- ld a, [wSpritePlayerStateData1FacingDirection] ; player sprite's facing direction
- srl a
- ld c, a
- ld b, 0
- ld hl, .warpTileListPointers
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld a, [wTileInFrontOfPlayer]
- ld de, $1
- call IsInArray
-.done
- pop bc
- pop de
- pop hl
- ret
-
-.warpTileListPointers:
- dw .facingDownWarpTiles
- dw .facingUpWarpTiles
- dw .facingLeftWarpTiles
- dw .facingRightWarpTiles
-
-.facingDownWarpTiles
- db $01,$12,$17,$3D,$04,$18,$33,$FF
-
-.facingUpWarpTiles
- db $01,$5C,$FF
-
-.facingLeftWarpTiles
- db $1A,$4B,$FF
-
-.facingRightWarpTiles
- db $0F,$4E,$FF
-
-.ssAnne5
- ld a, [wTileInFrontOfPlayer]
- cp $15
- jr nz, .notSSAnne5Warp
- scf
- jr .done
-.notSSAnne5Warp
- and a
- jr .done
-
-IsPlayerStandingOnDoorTileOrWarpTile:
- push hl
- push de
- push bc
- callba IsPlayerStandingOnDoorTile
- jr c, .done
- ld a, [wCurMapTileset]
- add a
- ld c, a
- ld b, $0
- ld hl, WarpTileIDPointers
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld de, $1
- aCoord 8, 9
- call IsInArray
- jr nc, .done
- ld hl, wd736
- res 2, [hl]
-.done
- pop bc
- pop de
- pop hl
- ret
-
-INCLUDE "data/warp_tile_ids.asm"
diff --git a/engine/overworld/clear_loadmapdata_vars.asm b/engine/overworld/clear_loadmapdata_vars.asm
deleted file mode 100644
index c5dc21fa..00000000
--- a/engine/overworld/clear_loadmapdata_vars.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-ClearVariablesAfterLoadingMapData:
- ld a, $90
- ld [hWY], a
- ld [rWY], a
- xor a
- ld [H_AUTOBGTRANSFERENABLED], a
- ld [wStepCounter], a
- ld [wLoneAttackNo], a ; wGymLeaderNo
- ld [hJoyPressed], a
- ld [hJoyReleased], a
- ld [hJoyHeld], a
- ld [wActionResultOrTookBattleTurn], a
- ld [wUnusedD5A3], a
- ld hl, wCardKeyDoorY
- ld [hli], a
- ld [hl], a
- ld hl, wUnusedCD3D
- ld bc, wStandingOnWarpPadOrHole - wUnusedCD3D
- call FillMemory
- ret
diff --git a/engine/overworld/clear_variables.asm b/engine/overworld/clear_variables.asm
new file mode 100644
index 00000000..9a59cc7c
--- /dev/null
+++ b/engine/overworld/clear_variables.asm
@@ -0,0 +1,20 @@
+ClearVariablesOnEnterMap:
+ ld a, SCREEN_HEIGHT_PIXELS
+ ld [hWY], a
+ ld [rWY], a
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a
+ ld [wStepCounter], a
+ ld [wLoneAttackNo], a
+ ld [hJoyPressed], a
+ ld [hJoyReleased], a
+ ld [hJoyHeld], a
+ ld [wActionResultOrTookBattleTurn], a
+ ld [wUnusedD5A3], a
+ ld hl, wCardKeyDoorY
+ ld [hli], a
+ ld [hl], a
+ ld hl, wWhichTrade
+ ld bc, wStandingOnWarpPadOrHole - wWhichTrade
+ call FillMemory
+ ret
diff --git a/engine/overworld/elevator.asm b/engine/overworld/elevator.asm
index cd7bf5ba..47ec78f9 100755
--- a/engine/overworld/elevator.asm
+++ b/engine/overworld/elevator.asm
@@ -31,7 +31,7 @@ ShakeElevator:
ld a, SFX_SAFARI_ZONE_PA
call PlayMusic
.musicLoop
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
cp SFX_SAFARI_ZONE_PA
jr z, .musicLoop
call UpdateSprites
diff --git a/engine/overworld/field_move_messages.asm b/engine/overworld/field_move_messages.asm
new file mode 100644
index 00000000..1d111917
--- /dev/null
+++ b/engine/overworld/field_move_messages.asm
@@ -0,0 +1,57 @@
+PrintStrengthTxt:
+ ld hl, wd728
+ set 0, [hl]
+ ld hl, UsedStrengthText
+ call PrintText
+ ld hl, CanMoveBouldersText
+ jp PrintText
+
+UsedStrengthText:
+ TX_FAR _UsedStrengthText
+ TX_ASM
+ ld a, [wcf91]
+ call PlayCry
+ call Delay3
+ jp TextScriptEnd
+
+CanMoveBouldersText:
+ TX_FAR _CanMoveBouldersText
+ db "@"
+
+IsSurfingAllowed:
+; Returns whether surfing is allowed in bit 1 of wd728.
+; Surfing isn't allowed on the Cycling Road or in the lowest level of the
+; Seafoam Islands before the current has been slowed with boulders.
+ ld hl, wd728
+ set 1, [hl]
+ ld a, [wd732]
+ bit 5, a
+ jr nz, .forcedToRideBike
+ ld a, [wCurMap]
+ cp SEAFOAM_ISLANDS_B4F
+ ret nz
+ CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
+ ret z
+ ld hl, CoordsData_f5b64
+ call ArePlayerCoordsInArray
+ ret nc
+ ld hl, wd728
+ res 1, [hl]
+ ld hl, CurrentTooFastText
+ jp PrintText
+.forcedToRideBike
+ ld hl, wd728
+ res 1, [hl]
+ ld hl, CyclingIsFunText
+ jp PrintText
+
+CoordsData_f5b64:
+ db $0B,$07,$FF
+
+CurrentTooFastText:
+ TX_FAR _CurrentTooFastText
+ db "@"
+
+CyclingIsFunText:
+ TX_FAR _CyclingIsFunText
+ db "@"
diff --git a/engine/overworld/get_coords_tile_in_front_of_player.asm b/engine/overworld/get_coords_tile_in_front_of_player.asm
deleted file mode 100644
index 67f154bc..00000000
--- a/engine/overworld/get_coords_tile_in_front_of_player.asm
+++ /dev/null
@@ -1,87 +0,0 @@
-GetTileAndCoordsInFrontOfPlayer:
- call GetPredefRegisters
-
-_GetTileAndCoordsInFrontOfPlayer:
- ld a, [wYCoord]
- ld d, a
- ld a, [wXCoord]
- ld e, a
- ld a, [wSpritePlayerStateData1FacingDirection] ; player's sprite facing direction
- and a ; cp SPRITE_FACING_DOWN
- jr nz, .notFacingDown
-; facing down
- aCoord 8, 11
- inc d
- jr .storeTile
-.notFacingDown
- cp SPRITE_FACING_UP
- jr nz, .notFacingUp
-; facing up
- aCoord 8, 7
- dec d
- jr .storeTile
-.notFacingUp
- cp SPRITE_FACING_LEFT
- jr nz, .notFacingLeft
-; facing left
- aCoord 6, 9
- dec e
- jr .storeTile
-.notFacingLeft
- cp SPRITE_FACING_RIGHT
- jr nz, .storeTile
-; facing right
- aCoord 10, 9
- inc e
-.storeTile
- ld c, a
- ld [wTileInFrontOfPlayer], a
- ret
-
-GetTileTwoStepsInFrontOfPlayer:
- xor a
- ld [$ffdb], a
- ld hl, wYCoord
- ld a, [hli]
- ld d, a
- ld e, [hl]
- ld a, [wSpritePlayerStateData1FacingDirection] ; player's sprite facing direction
- and a ; cp SPRITE_FACING_DOWN
- jr nz, .notFacingDown
-; facing down
- ld hl, $ffdb
- set 0, [hl]
- aCoord 8, 13
- inc d
- jr .storeTile
-.notFacingDown
- cp SPRITE_FACING_UP
- jr nz, .notFacingUp
-; facing up
- ld hl, $ffdb
- set 1, [hl]
- aCoord 8, 5
- dec d
- jr .storeTile
-.notFacingUp
- cp SPRITE_FACING_LEFT
- jr nz, .notFacingLeft
-; facing left
- ld hl, $ffdb
- set 2, [hl]
- aCoord 4, 9
- dec e
- jr .storeTile
-.notFacingLeft
- cp SPRITE_FACING_RIGHT
- jr nz, .storeTile
-; facing right
- ld hl, $ffdb
- set 3, [hl]
- aCoord 12, 9
- inc e
-.storeTile
- ld c, a
- ld [wTileInFrontOfBoulderAndBoulderCollisionResult], a
- ld [wTileInFrontOfPlayer], a
- ret
diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm
index 15082847..b64411c7 100755
--- a/engine/overworld/hidden_items.asm
+++ b/engine/overworld/hidden_items.asm
@@ -133,11 +133,12 @@ INCLUDE "data/hidden_coins.asm"
FoundHiddenCoinsText:
TX_FAR _FoundHiddenCoinsText
- db $10,"@"
+ TX_SFX_ITEM_2
+ db "@"
DroppedHiddenCoinsText:
TX_FAR _FoundHiddenCoins2Text
- db $10
+ TX_SFX_ITEM_2
TX_FAR _DroppedHiddenCoinsText
db "@"
diff --git a/engine/overworld/item.asm b/engine/overworld/item.asm
index 63eecef9..9f19100a 100644
--- a/engine/overworld/item.asm
+++ b/engine/overworld/item.asm
@@ -46,7 +46,7 @@ PickUpItem:
FoundItemText:
TX_FAR _FoundItemText
- db $0B
+ TX_SFX_ITEM_1
db "@"
NoMoreRoomForItemText:
diff --git a/engine/overworld/load_wild_data.asm b/engine/overworld/load_wild_data.asm
deleted file mode 100644
index 6444ab7e..00000000
--- a/engine/overworld/load_wild_data.asm
+++ /dev/null
@@ -1,33 +0,0 @@
-LoadWildData:
- ld hl,WildDataPointers
- ld a,[wCurMap]
-
- ; get wild data for current map
- ld c,a
- ld b,0
- add hl,bc
- add hl,bc
- ld a,[hli]
- ld h,[hl]
- ld l,a ; hl now points to wild data for current map
- ld a,[hli]
- ld [wGrassRate],a
- and a
- jr z,.NoGrassData ; if no grass data, skip to surfing data
- push hl
- ld de,wGrassMons ; otherwise, load grass data
- ld bc,$0014
- call CopyData
- pop hl
- ld bc,$0014
- add hl,bc
-.NoGrassData
- ld a,[hli]
- ld [wWaterRate],a
- and a
- ret z ; if no water data, we're done
- ld de,wWaterMons ; otherwise, load surfing data
- ld bc,$0014
- jp CopyData
-
-INCLUDE "data/wild_mons.asm"
diff --git a/engine/overworld/map_sprites.asm b/engine/overworld/map_sprites.asm
index 1a877b4a..3e2c3912 100755
--- a/engine/overworld/map_sprites.asm
+++ b/engine/overworld/map_sprites.asm
@@ -7,7 +7,7 @@
; $C1X* and $C2X* are used to denote wSpriteStateData1-wSpriteStateData1 + $ff and wSpriteStateData2 + $00-wSpriteStateData2 + $ff sprite slot
; fields, respectively, within loops. The X is the loop index.
; If there is an inner loop, Y is the inner loop index, i.e. $C1Y* and $C2Y*
-; denote fields of the sprite slots interated over in the inner loop.
+; denote fields of the sprite slots iterated over in the inner loop.
_InitMapSprites:
call InitOutsideMapSprites
ret c ; return if the map is an outside map (already handled by above call)
@@ -308,10 +308,10 @@ GetSplitMapSpriteSetID:
ret c
; Chooses the correct sprite set ID depending on the player's position within
; the map for maps with two sprite sets.
- cp a, $f8
+ cp $f8
jr z, .route20
ld hl, SplitMapSpriteSets
- and a, $0f
+ and $0f
dec a
add a
add a
@@ -321,7 +321,7 @@ GetSplitMapSpriteSetID:
inc h
.noCarry
ld a, [hli] ; determines whether the map is split East/West or North/South
- cp a, $01
+ cp $01
ld a, [hli] ; position of dividing line
ld b, a
jr z, .eastWestDivide
@@ -344,15 +344,15 @@ GetSplitMapSpriteSetID:
.route20
ld hl, wXCoord
ld a, [hl]
- cp a, $2b
+ cp $2b
ld a, $01
ret c
ld a, [hl]
- cp a, $3e
+ cp $3e
ld a, $0a
ret nc
ld a, [hl]
- cp a, $37
+ cp $37
ld b, $08
jr nc, .next
ld b, $0d
diff --git a/engine/overworld/movement.asm b/engine/overworld/movement.asm
index 6fb388fd..f2334479 100644
--- a/engine/overworld/movement.asm
+++ b/engine/overworld/movement.asm
@@ -1,3 +1,5 @@
+MAP_TILESET_SIZE EQU $60
+
UpdatePlayerSprite:
ld a, [wSpriteStateData2]
and a
@@ -13,7 +15,7 @@ UpdatePlayerSprite:
.checkIfTextBoxInFrontOfSprite
aCoord 8, 9
ld [hTilePlayerStandingOn], a
- cp $60
+ cp MAP_TILESET_SIZE
jr c, .lowerLeftTileIsMapTile
.disableSprite
ld a, $ff
@@ -112,7 +114,7 @@ UpdateNPCSprite:
and a
jp z, InitializeSpriteStatus
call CheckSpriteAvailability
- ret c ; if sprite is invisible, on tile >=$60, in grass or player is currently walking
+ ret c ; if sprite is invisible, on tile >=MAP_TILESET_SIZE, in grass or player is currently walking
ld h, wSpriteStateData1 / $100
ld a, [H_CURRENTSPRITEOFFSET]
ld l, a
@@ -290,9 +292,9 @@ UpdateSpriteInWalkingAnimation:
ld a, [H_CURRENTSPRITEOFFSET]
ld l, a
inc h
- ld a, [hl] ; c2x0 (walk animantion counter)
+ ld a, [hl] ; c2x0 (walk animation counter)
dec a
- ld [hl], a ; update walk animantion counter
+ ld [hl], a ; update walk animation counter
ret nz
ld a, $6 ; walking finished, update state
add l
@@ -406,7 +408,7 @@ InitializeSpriteStatus:
call InitializeSpriteScreenPosition ; could have done fallthrough here
ret
-; calculates the spprite's scrren position form its map position and the player position
+; calculates the sprite's screen position form its map position and the player position
InitializeSpriteScreenPosition:
ld h, wSpriteStateData2 / $100
ld a, [H_CURRENTSPRITEOFFSET]
@@ -480,21 +482,21 @@ CheckSpriteAvailability:
; make the sprite invisible if a text box is in front of it
; $5F is the maximum number for map tiles
call GetTileSpriteStandsOn
- ld d, $60
+ ld d, MAP_TILESET_SIZE
ld a, [hli]
cp d
- jr nc, .spriteInvisible ; standing on tile with ID >=$60 (bottom left tile)
+ jr nc, .spriteInvisible ; standing on tile with ID >=MAP_TILESET_SIZE (bottom left tile)
ld a, [hld]
cp d
- jr nc, .spriteInvisible ; standing on tile with ID >=$60 (bottom right tile)
+ jr nc, .spriteInvisible ; standing on tile with ID >=MAP_TILESET_SIZE (bottom right tile)
ld bc, -20
add hl, bc ; go back one row of tiles
ld a, [hli]
cp d
- jr nc, .spriteInvisible ; standing on tile with ID >=$60 (top left tile)
+ jr nc, .spriteInvisible ; standing on tile with ID >=MAP_TILESET_SIZE (top left tile)
ld a, [hl]
cp d
- jr c, .spriteVisible ; standing on tile with ID >=$60 (top right tile)
+ jr c, .spriteVisible ; standing on tile with ID >=MAP_TILESET_SIZE (top right tile)
.spriteInvisible
ld h, wSpriteStateData1 / $100
ld a, [H_CURRENTSPRITEOFFSET]
@@ -655,7 +657,7 @@ CanWalkOntoTile:
scf ; set carry (marking failure to walk)
ret
-; calculates the tile pointer pointing to the tile the current sprite stancs on
+; calculates the tile pointer pointing to the tile the current sprite stands on
; this is always the lower left tile of the 2x2 tile blocks all sprites are snapped to
; hl: output pointer
GetTileSpriteStandsOn:
diff --git a/engine/overworld/npc_movement.asm b/engine/overworld/npc_movement.asm
index 333779fa..670cb121 100755
--- a/engine/overworld/npc_movement.asm
+++ b/engine/overworld/npc_movement.asm
@@ -153,7 +153,7 @@ PalletMovementScript_Done:
ld a, [wSimulatedJoypadStatesIndex]
and a
ret nz
- ld a, $0
+ ld a, HS_PALLET_TOWN_OAK
ld [wMissableObjectIndex], a
predef HideObject
ld hl, wd730
diff --git a/engine/overworld/npc_movement_2.asm b/engine/overworld/npc_movement_2.asm
index 06ee9319..93d1afce 100755
--- a/engine/overworld/npc_movement_2.asm
+++ b/engine/overworld/npc_movement_2.asm
@@ -1,6 +1,6 @@
FreezeEnemyTrainerSprite:
ld a, [wCurMap]
- cp POKEMONTOWER_7
+ cp POKEMON_TOWER_7F
ret z ; the Rockets on Pokemon Tower 7F leave after battling, so don't freeze them
ld hl, RivalIDs
ld a, [wEngagedTrainerClass]
diff --git a/engine/overworld/oaks_aide.asm b/engine/overworld/oaks_aide.asm
index 54ba6b7a..f5068fda 100755
--- a/engine/overworld/oaks_aide.asm
+++ b/engine/overworld/oaks_aide.asm
@@ -63,7 +63,7 @@ OaksAideHereYouGoText:
OaksAideGotItemText:
TX_FAR _OaksAideGotItemText
- db $0b
+ TX_SFX_ITEM_1
db "@"
OaksAideNoRoomText:
diff --git a/engine/overworld/player_state.asm b/engine/overworld/player_state.asm
new file mode 100644
index 00000000..8cbacc61
--- /dev/null
+++ b/engine/overworld/player_state.asm
@@ -0,0 +1,456 @@
+; only used for setting bit 2 of wd736 upon entering a new map
+IsPlayerStandingOnWarp:
+ ld a, [wNumberOfWarps]
+ and a
+ ret z
+ ld c, a
+ ld hl, wWarpEntries
+.loop
+ ld a, [wYCoord]
+ cp [hl]
+ jr nz, .nextWarp1
+ inc hl
+ ld a, [wXCoord]
+ cp [hl]
+ jr nz, .nextWarp2
+ inc hl
+ ld a, [hli] ; target warp
+ ld [wDestinationWarpID], a
+ ld a, [hl] ; target map
+ ld [hWarpDestinationMap], a
+ ld hl, wd736
+ set 2, [hl] ; standing on warp flag
+ ret
+.nextWarp1
+ inc hl
+.nextWarp2
+ inc hl
+ inc hl
+ inc hl
+ dec c
+ jr nz, .loop
+ ret
+
+CheckForceBikeOrSurf:
+ ld hl, wd732
+ bit 5, [hl]
+ ret nz
+ ld hl, ForcedBikeOrSurfMaps
+ ld a, [wYCoord]
+ ld b, a
+ ld a, [wXCoord]
+ ld c, a
+ ld a, [wCurMap]
+ ld d, a
+.loop
+ ld a, [hli]
+ cp $ff
+ ret z ;if we reach FF then it's not part of the list
+ cp d ;compare to current map
+ jr nz, .incorrectMap
+ ld a, [hli]
+ cp b ;compare y-coord
+ jr nz, .incorrectY
+ ld a, [hli]
+ cp c ;compare x-coord
+ jr nz, .loop ; incorrect x-coord, check next item
+ ld a, [wCurMap]
+ cp SEAFOAM_ISLANDS_B3F
+ ld a, $2
+ ld [wSeafoamIslandsB3FCurScript], a
+ jr z, .forceSurfing
+ ld a, [wCurMap]
+ cp SEAFOAM_ISLANDS_B4F
+ ld a, $2
+ ld [wSeafoamIslandsB4FCurScript], a
+ jr z, .forceSurfing
+ ;force bike riding
+ ld hl, wd732
+ set 5, [hl]
+ ld a, $1
+ ld [wWalkBikeSurfState], a
+ ld [wWalkBikeSurfStateCopy], a
+ call ForceBikeOrSurf
+ ret
+.incorrectMap
+ inc hl
+.incorrectY
+ inc hl
+ jr .loop
+.forceSurfing
+ ld a, $2
+ ld [wWalkBikeSurfState], a
+ ld [wWalkBikeSurfStateCopy], a
+ call ForceBikeOrSurf
+ ret
+
+INCLUDE "data/force_bike_surf.asm"
+
+IsPlayerFacingEdgeOfMap:
+ push hl
+ push de
+ push bc
+ ld a, [wSpriteStateData1 + 9] ; player sprite's facing direction
+ srl a
+ ld c, a
+ ld b, $0
+ ld hl, .functionPointerTable
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wYCoord]
+ ld b, a
+ ld a, [wXCoord]
+ ld c, a
+ ld de, .returnaddress
+ push de
+ jp hl
+.returnaddress
+ pop bc
+ pop de
+ pop hl
+ ret
+
+.functionPointerTable
+ dw .facingDown
+ dw .facingUp
+ dw .facingLeft
+ dw .facingRight
+
+.facingDown
+ ld a, [wCurMapHeight]
+ add a
+ dec a
+ cp b
+ jr z, .setCarry
+ jr .resetCarry
+
+.facingUp
+ ld a, b
+ and a
+ jr z, .setCarry
+ jr .resetCarry
+
+.facingLeft
+ ld a, c
+ and a
+ jr z, .setCarry
+ jr .resetCarry
+
+.facingRight
+ ld a, [wCurMapWidth]
+ add a
+ dec a
+ cp c
+ jr z, .setCarry
+ jr .resetCarry
+.resetCarry
+ and a
+ ret
+.setCarry
+ scf
+ ret
+
+IsWarpTileInFrontOfPlayer:
+ push hl
+ push de
+ push bc
+ call _GetTileAndCoordsInFrontOfPlayer
+ ld a, [wCurMap]
+ cp SS_ANNE_BOW
+ jr z, .ssAnne5
+ ld a, [wSpriteStateData1 + 9] ; player sprite's facing direction
+ srl a
+ ld c, a
+ ld b, 0
+ ld hl, .warpTileListPointers
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wTileInFrontOfPlayer]
+ ld de, $1
+ call IsInArray
+.done
+ pop bc
+ pop de
+ pop hl
+ ret
+
+.warpTileListPointers:
+ dw .facingDownWarpTiles
+ dw .facingUpWarpTiles
+ dw .facingLeftWarpTiles
+ dw .facingRightWarpTiles
+
+.facingDownWarpTiles
+ db $01,$12,$17,$3D,$04,$18,$33,$FF
+
+.facingUpWarpTiles
+ db $01,$5C,$FF
+
+.facingLeftWarpTiles
+ db $1A,$4B,$FF
+
+.facingRightWarpTiles
+ db $0F,$4E,$FF
+
+.ssAnne5
+ ld a, [wTileInFrontOfPlayer]
+ cp $15
+ jr nz, .notSSAnne5Warp
+ scf
+ jr .done
+.notSSAnne5Warp
+ and a
+ jr .done
+
+IsPlayerStandingOnDoorTileOrWarpTile:
+ push hl
+ push de
+ push bc
+ callba IsPlayerStandingOnDoorTile
+ jr c, .done
+ ld a, [wCurMapTileset]
+ add a
+ ld c, a
+ ld b, $0
+ ld hl, WarpTileIDPointers
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, $1
+ aCoord 8, 9
+ call IsInArray
+ jr nc, .done
+ ld hl, wd736
+ res 2, [hl]
+.done
+ pop bc
+ pop de
+ pop hl
+ ret
+
+INCLUDE "data/warp_tile_ids.asm"
+
+PrintSafariZoneSteps:
+ ld a, [wCurMap]
+ cp SAFARI_ZONE_EAST
+ ret c
+ cp CERULEAN_CAVE_2F
+ ret nc
+ coord hl, 0, 0
+ lb bc, 3, 7
+ call TextBoxBorder
+ coord hl, 1, 1
+ ld de, wSafariSteps
+ lb bc, 2, 3
+ call PrintNumber
+ coord hl, 4, 1
+ ld de, SafariSteps
+ call PlaceString
+ coord hl, 1, 3
+ ld de, SafariBallText
+ call PlaceString
+ ld a, [wNumSafariBalls]
+ cp 10
+ jr nc, .numSafariBallsTwoDigits
+ coord hl, 5, 3
+ ld a, " "
+ ld [hl], a
+.numSafariBallsTwoDigits
+ coord hl, 6, 3
+ ld de, wNumSafariBalls
+ lb bc, 1, 2
+ jp PrintNumber
+
+SafariSteps:
+ db "/500@"
+
+SafariBallText:
+ db "BALL×× @"
+
+GetTileAndCoordsInFrontOfPlayer:
+ call GetPredefRegisters
+
+_GetTileAndCoordsInFrontOfPlayer:
+ ld a, [wYCoord]
+ ld d, a
+ ld a, [wXCoord]
+ ld e, a
+ ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction
+ and a ; cp SPRITE_FACING_DOWN
+ jr nz, .notFacingDown
+; facing down
+ aCoord 8, 11
+ inc d
+ jr .storeTile
+.notFacingDown
+ cp SPRITE_FACING_UP
+ jr nz, .notFacingUp
+; facing up
+ aCoord 8, 7
+ dec d
+ jr .storeTile
+.notFacingUp
+ cp SPRITE_FACING_LEFT
+ jr nz, .notFacingLeft
+; facing left
+ aCoord 6, 9
+ dec e
+ jr .storeTile
+.notFacingLeft
+ cp SPRITE_FACING_RIGHT
+ jr nz, .storeTile
+; facing right
+ aCoord 10, 9
+ inc e
+.storeTile
+ ld c, a
+ ld [wTileInFrontOfPlayer], a
+ ret
+
+GetTileTwoStepsInFrontOfPlayer:
+ xor a
+ ld [$ffdb], a
+ ld hl, wYCoord
+ ld a, [hli]
+ ld d, a
+ ld e, [hl]
+ ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction
+ and a ; cp SPRITE_FACING_DOWN
+ jr nz, .notFacingDown
+; facing down
+ ld hl, $ffdb
+ set 0, [hl]
+ aCoord 8, 13
+ inc d
+ jr .storeTile
+.notFacingDown
+ cp SPRITE_FACING_UP
+ jr nz, .notFacingUp
+; facing up
+ ld hl, $ffdb
+ set 1, [hl]
+ aCoord 8, 5
+ dec d
+ jr .storeTile
+.notFacingUp
+ cp SPRITE_FACING_LEFT
+ jr nz, .notFacingLeft
+; facing left
+ ld hl, $ffdb
+ set 2, [hl]
+ aCoord 4, 9
+ dec e
+ jr .storeTile
+.notFacingLeft
+ cp SPRITE_FACING_RIGHT
+ jr nz, .storeTile
+; facing right
+ ld hl, $ffdb
+ set 3, [hl]
+ aCoord 12, 9
+ inc e
+.storeTile
+ ld c, a
+ ld [wTileInFrontOfBoulderAndBoulderCollisionResult], a
+ ld [wTileInFrontOfPlayer], a
+ ret
+
+CheckForCollisionWhenPushingBoulder:
+ call GetTileTwoStepsInFrontOfPlayer
+ call IsTilePassable
+ jr c, .done
+ ld hl, TilePairCollisionsLand
+ call CheckForTilePairCollisions2
+ ld a, $ff
+ jr c, .done ; if there is an elevation difference between the current tile and the one two steps ahead
+ ld a, [wTileInFrontOfBoulderAndBoulderCollisionResult]
+ cp $15 ; stairs tile
+ ld a, $ff
+ jr z, .done ; if the tile two steps ahead is stairs
+ call CheckForBoulderCollisionWithSprites
+.done
+ ld [wTileInFrontOfBoulderAndBoulderCollisionResult], a
+ ret
+
+; sets a to $ff if there is a collision and $00 if there is no collision
+CheckForBoulderCollisionWithSprites:
+ ld a, [wBoulderSpriteIndex]
+ dec a
+ swap a
+ ld d, 0
+ ld e, a
+ ld hl, wSpriteStateData2 + $14
+ add hl, de
+ ld a, [hli] ; map Y position
+ ld [$ffdc], a
+ ld a, [hl] ; map X position
+ ld [$ffdd], a
+ ld a, [wNumSprites]
+ ld c, a
+ ld de, $f
+ ld hl, wSpriteStateData2 + $14
+ ld a, [$ffdb]
+ and $3 ; facing up or down?
+ jr z, .pushingHorizontallyLoop
+.pushingVerticallyLoop
+ inc hl
+ ld a, [$ffdd]
+ cp [hl]
+ jr nz, .nextSprite1 ; if X coordinates don't match
+ dec hl
+ ld a, [hli]
+ ld b, a
+ ld a, [$ffdb]
+ rrca
+ jr c, .pushingDown
+; pushing up
+ ld a, [$ffdc]
+ dec a
+ jr .compareYCoords
+.pushingDown
+ ld a, [$ffdc]
+ inc a
+.compareYCoords
+ cp b
+ jr z, .failure
+.nextSprite1
+ dec c
+ jr z, .success
+ add hl, de
+ jr .pushingVerticallyLoop
+.pushingHorizontallyLoop
+ ld a, [hli]
+ ld b, a
+ ld a, [$ffdc]
+ cp b
+ jr nz, .nextSprite2
+ ld b, [hl]
+ ld a, [$ffdb]
+ bit 2, a
+ jr nz, .pushingLeft
+; pushing right
+ ld a, [$ffdd]
+ inc a
+ jr .compareXCoords
+.pushingLeft
+ ld a, [$ffdd]
+ dec a
+.compareXCoords
+ cp b
+ jr z, .failure
+.nextSprite2
+ dec c
+ jr z, .success
+ add hl, de
+ jr .pushingHorizontallyLoop
+.failure
+ ld a, $ff
+ ret
+.success
+ xor a
+ ret
diff --git a/engine/overworld/poison.asm b/engine/overworld/poison.asm
new file mode 100644
index 00000000..03fb8a65
--- /dev/null
+++ b/engine/overworld/poison.asm
@@ -0,0 +1,151 @@
+ApplyOutOfBattlePoisonDamage:
+ ld a, [wd730]
+ add a
+ jp c, .noBlackOut ; no black out if joypad states are being simulated
+ ld a, [wd492]
+ bit 7, a
+ jp nz, .noBlackOut
+ ld a, [wd72e]
+ bit 6, a
+ jp nz, .noBlackOut
+ ld a, [wPartyCount]
+ and a
+ jp z, .noBlackOut
+ call IncrementDayCareMonExp
+ call Func_c4c7
+ ld a, [wStepCounter]
+ and $3 ; is the counter a multiple of 4?
+ jp nz, .skipPoisonEffectAndSound ; only apply poison damage every fourth step
+ ld [wWhichPokemon], a
+ ld hl, wPartyMon1Status
+ ld de, wPartySpecies
+.applyDamageLoop
+ ld a, [hl]
+ and (1 << PSN)
+ jr z, .nextMon2 ; not poisoned
+ dec hl
+ dec hl
+ ld a, [hld]
+ ld b, a
+ ld a, [hli]
+ or b
+ jr z, .nextMon ; already fainted
+; subtract 1 from HP
+ ld a, [hl]
+ dec a
+ ld [hld], a
+ inc a
+ jr nz, .noBorrow
+; borrow 1 from upper byte of HP
+ dec [hl]
+ inc hl
+ jr .nextMon
+.noBorrow
+ ld a, [hli]
+ or [hl]
+ jr nz, .nextMon ; didn't faint from damage
+; the mon fainted from the damage
+ push hl
+ inc hl
+ inc hl
+ ld [hl], a
+ ld a, [de]
+ ld [wd11e], a
+ push de
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMonNicks
+ call GetPartyMonName
+ xor a
+ ld [wJoyIgnore], a
+ call EnableAutoTextBoxDrawing
+ ld a, TEXT_MON_FAINTED
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ callab IsThisPartymonStarterPikachu_Party
+ jr nc, .curMonNotPlayerPikachu
+ ld e, $3
+ callab PlayPikachuSoundClip
+ calladb_ModifyPikachuHappiness PIKAHAPPY_PSNFNT
+.curMonNotPlayerPikachu
+ pop de
+ pop hl
+.nextMon
+ inc hl
+ inc hl
+.nextMon2
+ inc de
+ ld a, [de]
+ inc a
+ jr z, .applyDamageLoopDone
+ ld bc, wPartyMon2 - wPartyMon1
+ add hl, bc
+ push hl
+ ld hl, wWhichPokemon
+ inc [hl]
+ pop hl
+ jr .applyDamageLoop
+.applyDamageLoopDone
+ ld hl, wPartyMon1Status
+ ld a, [wPartyCount]
+ ld d, a
+ ld e, 0
+.countPoisonedLoop
+ ld a, [hl]
+ and (1 << PSN)
+ or e
+ ld e, a
+ ld bc, wPartyMon2 - wPartyMon1
+ add hl, bc
+ dec d
+ jr nz, .countPoisonedLoop
+ ld a, e
+ and a ; are any party members poisoned?
+ jr z, .skipPoisonEffectAndSound
+ ld b, $2
+ predef ChangeBGPalColor0_4Frames ; change BG white to dark grey for 4 frames
+ ld a, SFX_POISONED
+ call PlaySound
+.skipPoisonEffectAndSound
+ predef AnyPartyAlive
+ ld a, d
+ and a
+ jr nz, .noBlackOut
+ call EnableAutoTextBoxDrawing
+ ld a, TEXT_BLACKED_OUT
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wd72e
+ set 5, [hl]
+ ld a, $ff
+ jr .done
+.noBlackOut
+ xor a
+.done
+ ld [wOutOfBattleBlackout], a
+ ret
+
+Func_c4c7:
+ ld a, [wStepCounter]
+ and a
+ jr nz, .asm_c4de
+ call Random
+ and $1
+ jr z, .asm_c4de
+ calladb_ModifyPikachuHappiness $6
+.asm_c4de
+ ld hl, wPikachuMood
+ ld a, [hl]
+ cp $80
+ jr z, .asm_c4ef
+ jr c, .asm_c4ea
+ dec a
+ dec a
+.asm_c4ea
+ inc a
+ ld [hl], a
+ cp $80
+ ret nz
+.asm_c4ef
+ xor a
+ ld [wd49c], a
+ ret
diff --git a/engine/overworld/pokecenter.asm b/engine/overworld/pokecenter.asm
index 1801d9e9..cf0159f9 100755
--- a/engine/overworld/pokecenter.asm
+++ b/engine/overworld/pokecenter.asm
@@ -127,7 +127,7 @@ PokemonCenterWelcomeText:
db "@"
ShallWeHealYourPokemonText:
- db $a
+ TX_DELAY
TX_FAR _ShallWeHealYourPokemonText
db "@"
@@ -140,7 +140,7 @@ PokemonFightingFitText:
db "@"
PokemonCenterFarewellText:
- db $a
+ TX_DELAY
TX_FAR _PokemonCenterFarewellText
db "@"
diff --git a/engine/overworld/pokemart.asm b/engine/overworld/pokemart.asm
index 823939b1..dc5b29b5 100755
--- a/engine/overworld/pokemart.asm
+++ b/engine/overworld/pokemart.asm
@@ -1,230 +1,230 @@
DisplayPokemartDialogue_:
- ld a,[wListScrollOffset]
- ld [wSavedListScrollOffset],a
+ ld a, [wListScrollOffset]
+ ld [wSavedListScrollOffset], a
call UpdateSprites
xor a
- ld [wBoughtOrSoldItemInMart],a
+ ld [wBoughtOrSoldItemInMart], a
.loop
xor a
- ld [wListScrollOffset],a
- ld [wCurrentMenuItem],a
- ld [wPlayerMonNumber],a
+ ld [wListScrollOffset], a
+ ld [wCurrentMenuItem], a
+ ld [wPlayerMonNumber], a
inc a
- ld [wPrintItemPrices],a
- ld a,MONEY_BOX
- ld [wTextBoxID],a
+ ld [wPrintItemPrices], a
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
call DisplayTextBoxID
- ld a,BUY_SELL_QUIT_MENU
- ld [wTextBoxID],a
+ ld a, BUY_SELL_QUIT_MENU
+ ld [wTextBoxID], a
call DisplayTextBoxID
; This code is useless. It copies the address of the pokemart's inventory to hl,
; but the address is never used.
- ld hl,wItemListPointer
- ld a,[hli]
- ld l,[hl]
- ld h,a
+ ld hl, wItemListPointer
+ ld a, [hli]
+ ld l, [hl]
+ ld h, a
- ld a,[wMenuExitMethod]
- cp a,CANCELLED_MENU
- jp z,.done
- ld a,[wChosenMenuItem]
+ ld a, [wMenuExitMethod]
+ cp CANCELLED_MENU
+ jp z, .done
+ ld a, [wChosenMenuItem]
and a ; buying?
- jp z,.buyMenu
+ jp z, .buyMenu
dec a ; selling?
- jp z,.sellMenu
+ jp z, .sellMenu
dec a ; quitting?
- jp z,.done
+ jp z, .done
.sellMenu
; the same variables are set again below, so this code has no effect
xor a
- ld [wPrintItemPrices],a
- ld a,INIT_BAG_ITEM_LIST
- ld [wInitListType],a
+ ld [wPrintItemPrices], a
+ ld a, INIT_BAG_ITEM_LIST
+ ld [wInitListType], a
callab InitList
- ld a,[wNumBagItems]
+ ld a, [wNumBagItems]
and a
- jp z,.bagEmpty
- ld hl,PokemonSellingGreetingText
+ jp z, .bagEmpty
+ ld hl, PokemonSellingGreetingText
call PrintText
call SaveScreenTilesToBuffer1 ; save screen
.sellMenuLoop
call LoadScreenTilesFromBuffer1 ; restore saved screen
- ld a,MONEY_BOX
- ld [wTextBoxID],a
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
call DisplayTextBoxID ; draw money text box
- ld hl,wNumBagItems
- ld a,l
- ld [wListPointer],a
- ld a,h
- ld [wListPointer + 1],a
+ ld hl, wNumBagItems
+ ld a, l
+ ld [wListPointer], a
+ ld a, h
+ ld [wListPointer + 1], a
xor a
- ld [wPrintItemPrices],a
- ld [wCurrentMenuItem],a
- ld a,ITEMLISTMENU
- ld [wListMenuID],a
+ ld [wPrintItemPrices], a
+ ld [wCurrentMenuItem], a
+ ld a, ITEMLISTMENU
+ ld [wListMenuID], a
call DisplayListMenuID
- jp c,.returnToMainPokemartMenu ; if the player closed the menu
+ jp c, .returnToMainPokemartMenu ; if the player closed the menu
.confirmItemSale ; if the player is trying to sell a specific item
call IsKeyItem
- ld a,[wIsKeyItem]
+ ld a, [wIsKeyItem]
and a
- jr nz,.unsellableItem
- ld a,[wcf91]
+ jr nz, .unsellableItem
+ ld a, [wcf91]
call IsItemHM
- jr c,.unsellableItem
- ld a,PRICEDITEMLISTMENU
- ld [wListMenuID],a
- ld [hHalveItemPrices],a ; halve prices when selling
+ jr c, .unsellableItem
+ ld a, PRICEDITEMLISTMENU
+ ld [wListMenuID], a
+ ld [hHalveItemPrices], a ; halve prices when selling
call DisplayChooseQuantityMenu
inc a
- jr z,.sellMenuLoop ; if the player closed the choose quantity menu with the B button
- ld hl,PokemartTellSellPriceText
+ jr z, .sellMenuLoop ; if the player closed the choose quantity menu with the B button
+ ld hl, PokemartTellSellPriceText
lb bc, 14, 1 ; location that PrintText always prints to, this is useless
call PrintText
coord hl, 14, 7
lb bc, 8, 15
- ld a,TWO_OPTION_MENU
- ld [wTextBoxID],a
+ ld a, TWO_OPTION_MENU
+ ld [wTextBoxID], a
call DisplayTextBoxID ; yes/no menu
- ld a,[wMenuExitMethod]
- cp a,CHOSE_SECOND_ITEM
- jr z,.sellMenuLoop ; if the player chose No or pressed the B button
+ ld a, [wMenuExitMethod]
+ cp CHOSE_SECOND_ITEM
+ jr z, .sellMenuLoop ; if the player chose No or pressed the B button
; The following code is supposed to check if the player chose No, but the above
; check already catches it.
- ld a,[wChosenMenuItem]
+ ld a, [wChosenMenuItem]
dec a
- jr z,.sellMenuLoop
+ jr z, .sellMenuLoop
.sellItem
- ld a,[wBoughtOrSoldItemInMart]
+ ld a, [wBoughtOrSoldItemInMart]
and a
- jr nz,.skipSettingFlag1
+ jr nz, .skipSettingFlag1
inc a
- ld [wBoughtOrSoldItemInMart],a
+ ld [wBoughtOrSoldItemInMart], a
.skipSettingFlag1
call AddAmountSoldToMoney
- ld hl,wNumBagItems
+ ld hl, wNumBagItems
call RemoveItemFromInventory
jp .sellMenuLoop
.unsellableItem
- ld hl,PokemartUnsellableItemText
+ ld hl, PokemartUnsellableItemText
call PrintText
jp .returnToMainPokemartMenu
.bagEmpty
- ld hl,PokemartItemBagEmptyText
+ ld hl, PokemartItemBagEmptyText
call PrintText
call SaveScreenTilesToBuffer1
jp .returnToMainPokemartMenu
.buyMenu
; the same variables are set again below, so this code has no effect
- ld a,1
- ld [wPrintItemPrices],a
- ld a,INIT_OTHER_ITEM_LIST
- ld [wInitListType],a
+ ld a, 1
+ ld [wPrintItemPrices], a
+ ld a, INIT_OTHER_ITEM_LIST
+ ld [wInitListType], a
callab InitList
- ld hl,PokemartBuyingGreetingText
+ ld hl, PokemartBuyingGreetingText
call PrintText
call SaveScreenTilesToBuffer1
.buyMenuLoop
call LoadScreenTilesFromBuffer1
- ld a,MONEY_BOX
- ld [wTextBoxID],a
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
call DisplayTextBoxID
- ld hl,wItemList
- ld a,l
- ld [wListPointer],a
- ld a,h
- ld [wListPointer + 1],a
+ ld hl, wItemList
+ ld a, l
+ ld [wListPointer], a
+ ld a, h
+ ld [wListPointer + 1], a
xor a
- ld [wCurrentMenuItem],a
+ ld [wCurrentMenuItem], a
inc a
- ld [wPrintItemPrices],a
+ ld [wPrintItemPrices], a
inc a ; a = 2 (PRICEDITEMLISTMENU)
- ld [wListMenuID],a
+ ld [wListMenuID], a
call DisplayListMenuID
- jr c,.returnToMainPokemartMenu ; if the player closed the menu
- ld a,99
- ld [wMaxItemQuantity],a
+ jr c, .returnToMainPokemartMenu ; if the player closed the menu
+ ld a, 99
+ ld [wMaxItemQuantity], a
xor a
- ld [hHalveItemPrices],a ; don't halve item prices when buying
+ ld [hHalveItemPrices], a ; don't halve item prices when buying
call DisplayChooseQuantityMenu
inc a
- jr z,.buyMenuLoop ; if the player closed the choose quantity menu with the B button
- ld a,[wcf91] ; item ID
- ld [wd11e],a ; store item ID for GetItemName
+ jr z, .buyMenuLoop ; if the player closed the choose quantity menu with the B button
+ ld a, [wcf91] ; item ID
+ ld [wd11e], a ; store item ID for GetItemName
call GetItemName
call CopyStringToCF4B ; copy name to wcf4b
- ld hl,PokemartTellBuyPriceText
+ ld hl, PokemartTellBuyPriceText
call PrintText
coord hl, 14, 7
lb bc, 8, 15
- ld a,TWO_OPTION_MENU
- ld [wTextBoxID],a
+ ld a, TWO_OPTION_MENU
+ ld [wTextBoxID], a
call DisplayTextBoxID ; yes/no menu
- ld a,[wMenuExitMethod]
- cp a,CHOSE_SECOND_ITEM
- jp z,.buyMenuLoop ; if the player chose No or pressed the B button
+ ld a, [wMenuExitMethod]
+ cp CHOSE_SECOND_ITEM
+ jp z, .buyMenuLoop ; if the player chose No or pressed the B button
; The following code is supposed to check if the player chose No, but the above
; check already catches it.
- ld a,[wChosenMenuItem]
+ ld a, [wChosenMenuItem]
dec a
- jr z,.buyMenuLoop
+ jr z, .buyMenuLoop
.buyItem
call .isThereEnoughMoney
- jr c,.notEnoughMoney
- ld hl,wNumBagItems
+ jr c, .notEnoughMoney
+ ld hl, wNumBagItems
call AddItemToInventory
- jr nc,.bagFull
+ jr nc, .bagFull
call SubtractAmountPaidFromMoney
- ld a,[wBoughtOrSoldItemInMart]
+ ld a, [wBoughtOrSoldItemInMart]
and a
- jr nz,.skipSettingFlag2
- ld a,1
- ld [wBoughtOrSoldItemInMart],a
+ jr nz, .skipSettingFlag2
+ ld a, 1
+ ld [wBoughtOrSoldItemInMart], a
.skipSettingFlag2
- ld a,SFX_PURCHASE
+ ld a, SFX_PURCHASE
call PlaySoundWaitForCurrent
call WaitForSoundToFinish
- ld hl,PokemartBoughtItemText
+ ld hl, PokemartBoughtItemText
call PrintText
jp .buyMenuLoop
.returnToMainPokemartMenu
call LoadScreenTilesFromBuffer1
- ld a,MONEY_BOX
- ld [wTextBoxID],a
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
call DisplayTextBoxID
- ld hl,PokemartAnythingElseText
+ ld hl, PokemartAnythingElseText
call PrintText
jp .loop
.isThereEnoughMoney
- ld de,wPlayerMoney
- ld hl,hMoney
- ld c,3 ; length of money in bytes
+ ld de, wPlayerMoney
+ ld hl, hMoney
+ ld c, 3 ; length of money in bytes
jp StringCmp
.notEnoughMoney
- ld hl,PokemartNotEnoughMoneyText
+ ld hl, PokemartNotEnoughMoneyText
call PrintText
jr .returnToMainPokemartMenu
.bagFull
- ld hl,PokemartItemBagFullText
+ ld hl, PokemartItemBagFullText
call PrintText
jr .returnToMainPokemartMenu
.done
- ld hl,PokemartThankYouText
+ ld hl, PokemartThankYouText
call PrintText
- ld a,1
- ld [wUpdateSpritesEnabled],a
+ ld a, 1
+ ld [wUpdateSpritesEnabled], a
call UpdateSprites
- ld a,[wSavedListScrollOffset]
- ld [wListScrollOffset],a
+ ld a, [wSavedListScrollOffset]
+ ld [wListScrollOffset], a
ret
PokemartBuyingGreetingText:
diff --git a/engine/overworld/print_safari_steps.asm b/engine/overworld/print_safari_steps.asm
deleted file mode 100644
index 01dd34e0..00000000
--- a/engine/overworld/print_safari_steps.asm
+++ /dev/null
@@ -1,36 +0,0 @@
-PrintSafariZoneSteps:
- ld a, [wCurMap]
- cp SAFARI_ZONE_EAST
- ret c
- cp UNKNOWN_DUNGEON_2
- ret nc
- coord hl, 0, 0
- lb bc, 3, 7
- call TextBoxBorder
- coord hl, 1, 1
- ld de, wSafariSteps
- lb bc, 2, 3
- call PrintNumber
- coord hl, 4, 1
- ld de, SafariSteps
- call PlaceString
- coord hl, 1, 3
- ld de, SafariBallText
- call PlaceString
- ld a, [wNumSafariBalls]
- cp 10
- jr nc, .numSafariBallsTwoDigits
- coord hl, 5, 3
- ld a, " "
- ld [hl], a
-.numSafariBallsTwoDigits
- coord hl, 6, 3
- ld de, wNumSafariBalls
- lb bc, 1, 2
- jp PrintNumber
-
-SafariSteps:
- db "/500@"
-
-SafariBallText:
- db "BALL×× @"
diff --git a/engine/overworld/try_pushing_boulder.asm b/engine/overworld/push_boulder.asm
index 8a385345..8a385345 100644
--- a/engine/overworld/try_pushing_boulder.asm
+++ b/engine/overworld/push_boulder.asm
diff --git a/engine/overworld/set_blackout_map.asm b/engine/overworld/set_blackout_map.asm
index 9bfe82bd..bac2f0ca 100644
--- a/engine/overworld/set_blackout_map.asm
+++ b/engine/overworld/set_blackout_map.asm
@@ -23,7 +23,7 @@ SetLastBlackoutMap:
ret
SafariZoneRestHouses:
- db SAFARI_ZONE_REST_HOUSE_2
- db SAFARI_ZONE_REST_HOUSE_3
- db SAFARI_ZONE_REST_HOUSE_4
+ db SAFARI_ZONE_WEST_REST_HOUSE
+ db SAFARI_ZONE_EAST_REST_HOUSE
+ db SAFARI_ZONE_NORTH_REST_HOUSE
db -1
diff --git a/engine/overworld/special_warps.asm b/engine/overworld/special_warps.asm
deleted file mode 100644
index 4814e668..00000000
--- a/engine/overworld/special_warps.asm
+++ /dev/null
@@ -1,147 +0,0 @@
-SpecialWarpIn:
- call LoadSpecialWarpData
- predef LoadTilesetHeader
- ld hl,wd732
- bit 2,[hl] ; dungeon warp or fly warp?
- res 2,[hl]
- jr z,.next
-; if dungeon warp or fly warp
- ld a,[wDestinationMap]
- jr .next2
-.next
- bit 1,[hl]
- jr z,.next3
- call EmptyFunc
-.next3
- ld a,0
-.next2
- ld b,a
- ld a,[wd72d]
- and a
- jr nz,.next4
- ld a,b
-.next4
- ld hl,wd732
- bit 4,[hl] ; dungeon warp?
- ret nz
-; if not dungeon warp
- ld [wLastMap],a
- ret
-
-; gets the map ID, tile block map view pointer, tileset, and coordinates
-LoadSpecialWarpData:
- ld a, [wd72d]
- cp TRADE_CENTER
- jr nz, .notTradeCenter
- ld hl, TradeCenterSpec1
- ld a, [hSerialConnectionStatus]
- cp USING_INTERNAL_CLOCK ; which gameboy is clocking determines who is on the left and who is on the right
- jr z, .copyWarpData
- ld hl, TradeCenterSpec2
- jr .copyWarpData
-.notTradeCenter
- cp COLOSSEUM
- jr nz, .notColosseum
- ld hl, ColosseumSpec1
- ld a, [hSerialConnectionStatus]
- cp USING_INTERNAL_CLOCK
- jr z, .copyWarpData
- ld hl, ColosseumSpec2
- jr .copyWarpData
-.notColosseum
- ld a, [wd732]
- bit 1, a
- jr nz, .notFirstMap
- bit 2, a
- jr nz, .notFirstMap
- ld hl, FirstMapSpec
-.copyWarpData
- ld de, wCurMap
- ld c, $7
-.copyWarpDataLoop
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .copyWarpDataLoop
- ld a, [hli]
- ld [wCurMapTileset], a
- xor a
- jr .done
-.notFirstMap
- ld a, [wLastMap] ; this value is overwritten before it's ever read
- ld hl, wd732
- bit 4, [hl] ; used dungeon warp (jumped down hole/waterfall)?
- jr nz, .usedDunegonWarp
- bit 6, [hl] ; return to last pokemon center (or player's house)?
- res 6, [hl]
- jr z, .otherDestination
-; return to last pokemon center or player's house
- ld a, [wLastBlackoutMap]
- jr .usedFlyWarp
-.usedDunegonWarp
- ld hl, wd72d
- res 4, [hl]
- ld a, [wDungeonWarpDestinationMap]
- ld b, a
- ld [wCurMap], a
- ld a, [wWhichDungeonWarp]
- ld c, a
- ld hl, DungeonWarpList
- ld de, 0
- ld a, 6
- ld [wDungeonWarpDataEntrySize], a
-.dungeonWarpListLoop
- ld a, [hli]
- cp b
- jr z, .matchedDungeonWarpDestinationMap
- inc hl
- jr .nextDungeonWarp
-.matchedDungeonWarpDestinationMap
- ld a, [hli]
- cp c
- jr z, .matchedDungeonWarpID
-.nextDungeonWarp
- ld a, [wDungeonWarpDataEntrySize]
- add e
- ld e, a
- jr .dungeonWarpListLoop
-.matchedDungeonWarpID
- ld hl, DungeonWarpData
- add hl, de
- jr .copyWarpData2
-.otherDestination
- ld a, [wDestinationMap]
-.usedFlyWarp
- ld b, a
- ld [wCurMap], a
- ld hl, FlyWarpDataPtr
-.flyWarpDataPtrLoop
- ld a, [hli]
- inc hl
- cp b
- jr z, .foundFlyWarpMatch
- inc hl
- inc hl
- jr .flyWarpDataPtrLoop
-.foundFlyWarpMatch
- ld a, [hli]
- ld h, [hl]
- ld l, a
-.copyWarpData2
- ld de, wCurrentTileBlockMapViewPointer
- ld c, $6
-.copyWarpDataLoop2
- ld a, [hli]
- ld [de], a
- inc de
- dec c
- jr nz, .copyWarpDataLoop2
- xor a ; OVERWORLD
- ld [wCurMapTileset], a
-.done
- ld [wYOffsetSinceLastSpecialWarp], a
- ld [wXOffsetSinceLastSpecialWarp], a
- ld a, $ff ; the player's coordinates have already been updated using a special warp, so don't use any of the normal warps
- ld [wDestinationWarpID], a
- ret
diff --git a/engine/overworld/step_functions.asm b/engine/overworld/step_functions.asm
deleted file mode 100644
index 84b09291..00000000
--- a/engine/overworld/step_functions.asm
+++ /dev/null
@@ -1,151 +0,0 @@
-ApplyOutOfBattlePoisonDamage:
- ld a, [wd730]
- add a
- jp c, .noBlackOut ; no black out if joypad states are being simulated
- ld a, [wd492]
- bit 7, a
- jp nz, .noBlackOut
- ld a, [wd72e]
- bit 6, a
- jp nz, .noBlackOut
- ld a, [wPartyCount]
- and a
- jp z, .noBlackOut
- call IncrementDayCareMonExp
- call Func_c4c7
- ld a, [wStepCounter]
- and $3 ; is the counter a multiple of 4?
- jp nz, .skipPoisonEffectAndSound ; only apply poison damage every fourth step
- ld [wWhichPokemon], a
- ld hl, wPartyMon1Status
- ld de, wPartySpecies
-.applyDamageLoop
- ld a, [hl]
- and (1 << PSN)
- jr z, .nextMon2 ; not poisoned
- dec hl
- dec hl
- ld a, [hld]
- ld b, a
- ld a, [hli]
- or b
- jr z, .nextMon ; already fainted
-; subtract 1 from HP
- ld a, [hl]
- dec a
- ld [hld], a
- inc a
- jr nz, .noBorrow
-; borrow 1 from upper byte of HP
- dec [hl]
- inc hl
- jr .nextMon
-.noBorrow
- ld a, [hli]
- or [hl]
- jr nz, .nextMon ; didn't faint from damage
-; the mon fainted from the damage
- push hl
- inc hl
- inc hl
- ld [hl], a
- ld a, [de]
- ld [wd11e], a
- push de
- ld a, [wWhichPokemon]
- ld hl, wPartyMonNicks
- call GetPartyMonName
- xor a
- ld [wJoyIgnore], a
- call EnableAutoTextBoxDrawing
- ld a, $d0
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- callab IsThisPartymonStarterPikachu_Party
- jr nc, .curMonNotPlayerPikachu
- ld e, $3
- callab PlayPikachuSoundClip
- calladb_ModifyPikachuHappiness PIKAHAPPY_PSNFNT
-.curMonNotPlayerPikachu
- pop de
- pop hl
-.nextMon
- inc hl
- inc hl
-.nextMon2
- inc de
- ld a, [de]
- inc a
- jr z, .applyDamageLoopDone
- ld bc, wPartyMon2 - wPartyMon1
- add hl, bc
- push hl
- ld hl, wWhichPokemon
- inc [hl]
- pop hl
- jr .applyDamageLoop
-.applyDamageLoopDone
- ld hl, wPartyMon1Status
- ld a, [wPartyCount]
- ld d, a
- ld e, 0
-.countPoisonedLoop
- ld a, [hl]
- and (1 << PSN)
- or e
- ld e, a
- ld bc, wPartyMon2 - wPartyMon1
- add hl, bc
- dec d
- jr nz, .countPoisonedLoop
- ld a, e
- and a ; are any party members poisoned?
- jr z, .skipPoisonEffectAndSound
- ld b, $2
- predef InvertBGPal_4Frames ; change BG white to dark grey for 4 frames
- ld a, SFX_POISONED
- call PlaySound
-.skipPoisonEffectAndSound
- predef AnyPartyAlive
- ld a, d
- and a
- jr nz, .noBlackOut
- call EnableAutoTextBoxDrawing
- ld a, $d1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wd72e
- set 5, [hl]
- ld a, $ff
- jr .done
-.noBlackOut
- xor a
-.done
- ld [wOutOfBattleBlackout], a
- ret
-
-Func_c4c7:
- ld a, [wStepCounter]
- and a
- jr nz, .asm_c4de
- call Random
- and $1
- jr z, .asm_c4de
- calladb_ModifyPikachuHappiness $6
-.asm_c4de
- ld hl, wPikachuMood
- ld a, [hl]
- cp $80
- jr z, .asm_c4ef
- jr c, .asm_c4ea
- dec a
- dec a
-.asm_c4ea
- inc a
- ld [hl], a
- cp $80
- ret nz
-.asm_c4ef
- xor a
- ld [wd49c], a
- ret
diff --git a/engine/overworld/load_tileset_header.asm b/engine/overworld/tileset_header.asm
index 05061651..05061651 100644
--- a/engine/overworld/load_tileset_header.asm
+++ b/engine/overworld/tileset_header.asm
diff --git a/engine/overworld/replace_tile_block.asm b/engine/overworld/update_map.asm
index 8577b9e7..8577b9e7 100644
--- a/engine/overworld/replace_tile_block.asm
+++ b/engine/overworld/update_map.asm
diff --git a/engine/overworld/wild_mons.asm b/engine/overworld/wild_mons.asm
new file mode 100644
index 00000000..dae57f23
--- /dev/null
+++ b/engine/overworld/wild_mons.asm
@@ -0,0 +1,33 @@
+LoadWildData:
+ ld hl, WildDataPointers
+ ld a, [wCurMap]
+
+ ; get wild data for current map
+ ld c, a
+ ld b, 0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a ; hl now points to wild data for current map
+ ld a, [hli]
+ ld [wGrassRate], a
+ and a
+ jr z, .NoGrassData ; if no grass data, skip to surfing data
+ push hl
+ ld de, wGrassMons ; otherwise, load grass data
+ ld bc, $0014
+ call CopyData
+ pop hl
+ ld bc, $0014
+ add hl, bc
+.NoGrassData
+ ld a, [hli]
+ ld [wWaterRate], a
+ and a
+ ret z ; if no water data, we're done
+ ld de, wWaterMons ; otherwise, load surfing data
+ ld bc, $0014
+ jp CopyData
+
+INCLUDE "data/wild_mons.asm"
diff --git a/engine/palettes.asm b/engine/palettes.asm
index 3c25d4d2..ec9816ab 100755
--- a/engine/palettes.asm
+++ b/engine/palettes.asm
@@ -78,7 +78,7 @@ SetPal_StatusScreen:
ld bc, $10
call CopyData
ld a, [wcf91]
- cp VICTREEBEL + 1
+ cp NUM_POKEMON_INDEXES + 1
jr c, .pokemon
ld a, $1 ; not pokemon
.pokemon
@@ -155,7 +155,7 @@ SetPal_Overworld:
ld a, [wCurMap]
cp REDS_HOUSE_1F
jr c, .townOrRoute
- cp UNKNOWN_DUNGEON_2
+ cp CERULEAN_CAVE_2F
jr c, .normalDungeonOrBuilding
cp NAME_RATERS_HOUSE
jr c, .caveOrBruno
@@ -401,7 +401,7 @@ GetPal_Pikachu::
ld a, [wCurMap]
cp REDS_HOUSE_1F
jr c, .townOrRoute
- cp UNKNOWN_DUNGEON_2
+ cp CERULEAN_CAVE_2F
jr c, .normalDungeonOrBuilding
cp NAME_RATERS_HOUSE
jr c, .caveOrBruno
@@ -484,7 +484,7 @@ SendSGBPacket:
_SendSGBPacket:
;check number of packets
ld a, [hl]
- and a, $07
+ and $07
ret z
; store number of packets in B
ld b, a
diff --git a/engine/overworld/npc_pathfinding.asm b/engine/pathfinding.asm
index f3d23b7c..f3d23b7c 100644
--- a/engine/overworld/npc_pathfinding.asm
+++ b/engine/pathfinding.asm
diff --git a/engine/pikachu_emotions.asm b/engine/pikachu_emotions.asm
index b3b64970..1518b28e 100755
--- a/engine/pikachu_emotions.asm
+++ b/engine/pikachu_emotions.asm
@@ -281,9 +281,9 @@ MapSpecificPikachuExpression:
ldpikaemotion a, PikachuEmotion28
jr c, .play_emotion
ld a, [wCurMap]
- cp POKEMONTOWER_1
+ cp POKEMON_TOWER_1F
jr c, .notInLavenderTower
- cp POKEMONTOWER_7 + 1
+ cp POKEMON_TOWER_7F + 1
ldpikaemotion a, PikachuEmotion22
jr c, .play_emotion
.notInLavenderTower
diff --git a/engine/pikachu_follow.asm b/engine/pikachu_follow.asm
index db5fa0ee..d9dc91df 100755
--- a/engine/pikachu_follow.asm
+++ b/engine/pikachu_follow.asm
@@ -188,9 +188,9 @@ SetPikachuSpawnOutside::
jr z, .oaks_lab
cp ROUTE_22_GATE
jr z, .route_22_gate
- cp MT_MOON_2
+ cp MT_MOON_B1F
jr z, .mt_moon_2
- cp ROCK_TUNNEL_1
+ cp ROCK_TUNNEL_1F
jr z, .rock_tunnel_1
ld a, [wCurMap]
ld hl, Pointer_fc64b
@@ -235,7 +235,7 @@ SetPikachuSpawnOutside::
ret
Pointer_fc64b::
- db VICTORY_ROAD_2
+ db VICTORY_ROAD_2F
db ROUTE_7_GATE
db ROUTE_8_GATE
db ROUTE_16_GATE_1F
@@ -245,20 +245,20 @@ Pointer_fc64b::
db $ff
Pointer_fc653::
- db VIRIDIAN_FOREST_EXIT
- db CERULEAN_HOUSE_2
- db TRASHED_HOUSE
+ db VIRIDIAN_FOREST_NORTH_GATE
+ db CERULEAN_BADGE_HOUSE
+ db CERULEAN_TRASHED_HOUSE
db VERMILION_DOCK
- db CELADON_MANSION_1
+ db CELADON_MANSION_1F
db ROUTE_2_GATE
- db FUCHSIA_HOUSE_3
+ db FUCHSIA_GOOD_ROD_HOUSE
db $ff
SetPikachuSpawnWarpPad::
ld a, [wCurMap]
- cp VIRIDIAN_FOREST_EXIT
+ cp VIRIDIAN_FOREST_NORTH_GATE
jr z, .viridian_forest_exit
- cp VIRIDIAN_FOREST_ENTRANCE
+ cp VIRIDIAN_FOREST_SOUTH_GATE
jr z, .viridian_forest_entrance
ld a, [wCurMap]
ld hl, Pointer_fc68e
@@ -290,16 +290,16 @@ SetPikachuSpawnWarpPad::
Pointer_fc68e::
db VIRIDIAN_FOREST
- db SAFARI_ZONE_REST_HOUSE_1
- db SAFARI_ZONE_REST_HOUSE_2
- db SAFARI_ZONE_REST_HOUSE_3
- db SAFARI_ZONE_REST_HOUSE_4
+ db SAFARI_ZONE_CENTER_REST_HOUSE
+ db SAFARI_ZONE_WEST_REST_HOUSE
+ db SAFARI_ZONE_EAST_REST_HOUSE
+ db SAFARI_ZONE_NORTH_REST_HOUSE
db SAFARI_ZONE_SECRET_HOUSE
db SILPH_CO_ELEVATOR
db CELADON_MART_ELEVATOR
- db CINNABAR_LAB_2
- db CINNABAR_LAB_3
- db CINNABAR_LAB_4
+ db CINNABAR_LAB_TRADE_ROOM
+ db CINNABAR_LAB_METRONOME_ROOM
+ db CINNABAR_LAB_FOSSIL_ROOM
db $ff
SetPikachuSpawnBackOutside::
diff --git a/engine/pikachu_pcm.asm b/engine/pikachu_pcm.asm
index bb2c089c..1e6f8dc2 100755
--- a/engine/pikachu_pcm.asm
+++ b/engine/pikachu_pcm.asm
@@ -77,10 +77,10 @@ PlayPikachuSoundClip::
and $bb
ld [rNR51], a
xor a
- ld [wChannelSoundIDs+CH4], a
- ld [wChannelSoundIDs+CH5], a
- ld [wChannelSoundIDs+CH6], a
- ld [wChannelSoundIDs+CH7], a
+ ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + Ch6], a
+ ld [wChannelSoundIDs + Ch7], a
+ ld [wChannelSoundIDs + Ch8], a
ld a, [H_LOADEDROMBANK]
ei
ret
diff --git a/engine/pikachu_pic_animation.asm b/engine/pikachu_pic_animation.asm
index 0da8e499..c79d9add 100755
--- a/engine/pikachu_pic_animation.asm
+++ b/engine/pikachu_pic_animation.asm
@@ -792,7 +792,7 @@ PikaPicAnimCommand_thunderbolt:
call DelayFrame
ld a, [wAudioROMBank]
push af
- ld a, BANK(SFX_Thunderbolt)
+ ld a, BANK(SFX_Battle_2F)
ld [wAudioROMBank], a
ld [wAudioSavedROMBank], a
call .LoadAudio
diff --git a/engine/pokedex_rating.asm b/engine/pokedex_rating.asm
index 97bbfc24..4dfb6b39 100755
--- a/engine/pokedex_rating.asm
+++ b/engine/pokedex_rating.asm
@@ -42,7 +42,7 @@ DisplayDexRating:
inc de
.copyRatingTextLoop
ld a, [hli]
- cp a, "@"
+ cp "@"
jr z, .doneCopying
ld [de], a
inc de
@@ -86,7 +86,7 @@ DexRatingsTable:
dw DexRatingText_Own130To139
db 150
dw DexRatingText_Own140To149
- db 152
+ db NUM_POKEMON + 1
dw DexRatingText_Own150To151
DexRatingText_Own0To9:
diff --git a/engine/predefs.asm b/engine/predefs.asm
index e752a7ef..cc6af5ac 100755
--- a/engine/predefs.asm
+++ b/engine/predefs.asm
@@ -88,7 +88,7 @@ PredefPointers::
dbw $03, CheckForHiddenObjectOrBookshelfOrCardKeyDoor ; home bank
dbw $03, GiveItem ; home bank
- add_predef InvertBGPal_4Frames
+ add_predef ChangeBGPalColor0_4Frames
add_predef FindPathToPlayer
add_predef PredefShakeScreenVertically
add_predef CalcPositionOfPlayerRelativeToNPC
diff --git a/engine/predefsA.asm b/engine/predefsA.asm
index eb28b646..e25735c5 100644
--- a/engine/predefsA.asm
+++ b/engine/predefsA.asm
@@ -1,5 +1,5 @@
; inverts the BGP for 4 (6 on CGB due to lag) frames
-InvertBGPal_4Frames:
+ChangeBGPalColor0_4Frames:
call GetPredefRegisters ; leftover of red/blue, has no use here
ld a, [rBGP]
xor $ff
diff --git a/engine/save.asm b/engine/save.asm
index c28ba1f6..7f453bf0 100755
--- a/engine/save.asm
+++ b/engine/save.asm
@@ -131,37 +131,37 @@ LoadSAVIgnoreBadCheckSum:
SaveSAV:
callba PrintSaveScreenText
- ld c,10
+ ld c, 10
call DelayFrames
- ld hl,WouldYouLikeToSaveText
+ ld hl, WouldYouLikeToSaveText
call SaveSAVConfirm
and a ;|0 = Yes|1 = No|
ret nz
- ld c,10
+ ld c, 10
call DelayFrames
- ld a,[wSaveFileStatus]
+ ld a, [wSaveFileStatus]
cp $1
- jr z,.save
+ jr z, .save
call SAVCheckRandomID
- jr z,.save
- ld hl,OlderFileWillBeErasedText
+ jr z, .save
+ ld hl, OlderFileWillBeErasedText
call SaveSAVConfirm
and a
ret nz
.save
call SaveSAVtoSRAM
- ld hl,SavingText
+ ld hl, SavingText
call PrintText
- ld c,128
+ ld c, 128
call DelayFrames
- ld hl,GameSavedText
+ ld hl, GameSavedText
call PrintText
ld c,10
call DelayFrames
ld a, SFX_SAVE
call PlaySoundWaitForCurrent
call WaitForSoundToFinish
- ld c,30
+ ld c, 30
call DelayFrames
ret
@@ -169,10 +169,10 @@ SaveSAVConfirm:
call PrintText
coord hl, 0, 7
lb bc, 8, 1
- ld a,TWO_OPTION_MENU
- ld [wTextBoxID],a
+ ld a, TWO_OPTION_MENU
+ ld [wTextBoxID], a
call DisplayTextBoxID ; yes/no menu
- ld a,[wCurrentMenuItem]
+ ld a, [wCurrentMenuItem]
ret
WouldYouLikeToSaveText:
@@ -587,23 +587,23 @@ SAVCheckRandomID:
ld hl, sPlayerName
ld bc, sMainDataCheckSum - sPlayerName
call SAVCheckSum
- ld c,a
- ld a,[sMainDataCheckSum]
+ ld c, a
+ ld a, [sMainDataCheckSum]
cp c
- jr nz,.next
- ld hl,sMainData + 98 ; player ID
- ld a,[hli]
- ld h,[hl]
- ld l,a
- ld a,[wPlayerID]
+ jr nz, .next
+ ld hl, sMainData + (wPlayerID - wMainDataStart) ; player ID
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wPlayerID]
cp l
- jr nz,.next
- ld a,[wPlayerID + 1]
+ jr nz, .next
+ ld a, [wPlayerID + 1]
cp h
.next
- ld a,$00
- ld [MBC1SRamBankingMode],a
- ld [MBC1SRamEnable],a
+ ld a, $00
+ ld [MBC1SRamBankingMode], a
+ ld [MBC1SRamEnable], a
ret
SaveHallOfFameTeams:
diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm
index 292bb809..b4514618 100755
--- a/engine/slot_machine.asm
+++ b/engine/slot_machine.asm
@@ -613,7 +613,8 @@ SlotReward300Func:
YeahText:
TX_FAR _YeahText
- db $0a, "@"
+ TX_DELAY
+ db "@"
SlotMachine_PrintWinningSymbol:
; prints winning symbol and down arrow in text box
@@ -630,7 +631,7 @@ SlotMachine_PrintWinningSymbol:
inc a
ld [hl], a
coord hl, 18, 16
- ld [hl], $ee ; down arrow
+ ld [hl], "▼"
ret
SlotMachine_SubtractBetFromPlayerCoins:
diff --git a/engine/special_warps.asm b/engine/special_warps.asm
new file mode 100644
index 00000000..3a8b8b86
--- /dev/null
+++ b/engine/special_warps.asm
@@ -0,0 +1,149 @@
+SpecialWarpIn:
+ call LoadSpecialWarpData
+ predef LoadTilesetHeader
+ ld hl, wd732
+ bit 2, [hl] ; dungeon warp or fly warp?
+ res 2, [hl]
+ jr z, .next
+; if dungeon warp or fly warp
+ ld a, [wDestinationMap]
+ jr .next2
+.next
+ bit 1, [hl]
+ jr z, .next3
+ call EmptyFunc
+.next3
+ ld a, 0
+.next2
+ ld b, a
+ ld a, [wd72d]
+ and a
+ jr nz, .next4
+ ld a, b
+.next4
+ ld hl, wd732
+ bit 4, [hl] ; dungeon warp?
+ ret nz
+; if not dungeon warp
+ ld [wLastMap], a
+ ret
+
+; gets the map ID, tile block map view pointer, tileset, and coordinates
+LoadSpecialWarpData:
+ ld a, [wd72d]
+ cp TRADE_CENTER
+ jr nz, .notTradeCenter
+ ld hl, TradeCenterSpec1
+ ld a, [hSerialConnectionStatus]
+ cp USING_INTERNAL_CLOCK ; which gameboy is clocking determines who is on the left and who is on the right
+ jr z, .copyWarpData
+ ld hl, TradeCenterSpec2
+ jr .copyWarpData
+.notTradeCenter
+ cp COLOSSEUM
+ jr nz, .notColosseum
+ ld hl, ColosseumSpec1
+ ld a, [hSerialConnectionStatus]
+ cp USING_INTERNAL_CLOCK
+ jr z, .copyWarpData
+ ld hl, ColosseumSpec2
+ jr .copyWarpData
+.notColosseum
+ ld a, [wd732]
+ bit 1, a
+ jr nz, .notFirstMap
+ bit 2, a
+ jr nz, .notFirstMap
+ ld hl, FirstMapSpec
+.copyWarpData
+ ld de, wCurMap
+ ld c, $7
+.copyWarpDataLoop
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .copyWarpDataLoop
+ ld a, [hli]
+ ld [wCurMapTileset], a
+ xor a
+ jr .done
+.notFirstMap
+ ld a, [wLastMap] ; this value is overwritten before it's ever read
+ ld hl, wd732
+ bit 4, [hl] ; used dungeon warp (jumped down hole/waterfall)?
+ jr nz, .usedDunegonWarp
+ bit 6, [hl] ; return to last pokemon center (or player's house)?
+ res 6, [hl]
+ jr z, .otherDestination
+; return to last pokemon center or player's house
+ ld a, [wLastBlackoutMap]
+ jr .usedFlyWarp
+.usedDunegonWarp
+ ld hl, wd72d
+ res 4, [hl]
+ ld a, [wDungeonWarpDestinationMap]
+ ld b, a
+ ld [wCurMap], a
+ ld a, [wWhichDungeonWarp]
+ ld c, a
+ ld hl, DungeonWarpList
+ ld de, 0
+ ld a, 6
+ ld [wDungeonWarpDataEntrySize], a
+.dungeonWarpListLoop
+ ld a, [hli]
+ cp b
+ jr z, .matchedDungeonWarpDestinationMap
+ inc hl
+ jr .nextDungeonWarp
+.matchedDungeonWarpDestinationMap
+ ld a, [hli]
+ cp c
+ jr z, .matchedDungeonWarpID
+.nextDungeonWarp
+ ld a, [wDungeonWarpDataEntrySize]
+ add e
+ ld e, a
+ jr .dungeonWarpListLoop
+.matchedDungeonWarpID
+ ld hl, DungeonWarpData
+ add hl, de
+ jr .copyWarpData2
+.otherDestination
+ ld a, [wDestinationMap]
+.usedFlyWarp
+ ld b, a
+ ld [wCurMap], a
+ ld hl, FlyWarpDataPtr
+.flyWarpDataPtrLoop
+ ld a, [hli]
+ inc hl
+ cp b
+ jr z, .foundFlyWarpMatch
+ inc hl
+ inc hl
+ jr .flyWarpDataPtrLoop
+.foundFlyWarpMatch
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+.copyWarpData2
+ ld de, wCurrentTileBlockMapViewPointer
+ ld c, $6
+.copyWarpDataLoop2
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .copyWarpDataLoop2
+ xor a ; OVERWORLD
+ ld [wCurMapTileset], a
+.done
+ ld [wYOffsetSinceLastSpecialWarp], a
+ ld [wXOffsetSinceLastSpecialWarp], a
+ ld a, $ff ; the player's coordinates have already been updated using a special warp, so don't use any of the normal warps
+ ld [wDestinationWarpID], a
+ ret
+
+INCLUDE "data/special_warps.asm"
diff --git a/engine/surfing_minigame.asm b/engine/surfing_minigame.asm
index 6bfcfb7c..81e5296d 100755
--- a/engine/surfing_minigame.asm
+++ b/engine/surfing_minigame.asm
@@ -715,7 +715,7 @@ Func_f848d:
ld [wSurfingMinigameRadnessMeter], a
ld [wSurfingMinigameTrickFlags], a
xor a
- ld [wChannelSoundIDs + CH7], a
+ ld [wChannelSoundIDs + Ch8], a
ld a, SFX_SURFING_JUMP
call PlaySound
ret
@@ -751,7 +751,7 @@ SurfingMinigame_ScoreCurrentWave:
ld a, $10
call SetCurrentAnimatedObjectCallbackAndResetFrameStateRegisters
xor a
- ld [wChannelSoundIDs + CH7], a
+ ld [wChannelSoundIDs + Ch8], a
ld a, SFX_SURFING_LAND
call PlaySound
ret
@@ -1010,7 +1010,7 @@ SurfingMinigame_TileInteraction:
call SufingMinigame_ReduceSpeedBy64
.action_3
xor a
- ld [wChannelSoundIDs + CH7], a
+ ld [wChannelSoundIDs + Ch8], a
ld a, SFX_SURFING_CRASH
call PlaySound
and a
diff --git a/engine/test_battle.asm b/engine/test_battle.asm
new file mode 100644
index 00000000..d9dcf1fa
--- /dev/null
+++ b/engine/test_battle.asm
@@ -0,0 +1,45 @@
+TestBattle:
+ ret
+
+.loop
+ call GBPalNormal
+
+ ; Don't mess around
+ ; with obedience.
+ ld a, %10000000 ; EARTHBADGE
+ ld [wObtainedBadges], a
+
+ ld hl, wFlags_D733
+ set BIT_TEST_BATTLE, [hl]
+
+ ; Reset the party.
+ ld hl, wPartyCount
+ xor a
+ ld [hli], a
+ dec a
+ ld [hl], a
+
+ ; Give the player a
+ ; level 20 Rhydon.
+ ld a, RHYDON
+ ld [wcf91], a
+ ld a, 20
+ ld [wCurEnemyLVL], a
+ xor a
+ ld [wMonDataLocation], a
+ ld [wCurMap], a
+ call AddPartyMon
+
+ ; Fight against a
+ ; level 20 Rhydon.
+ ld a, RHYDON
+ ld [wCurOpponent], a
+
+ predef InitOpponent
+
+ ; When the battle ends,
+ ; do it all again.
+ ld a, 1
+ ld [wUpdateSpritesEnabled], a
+ ld [H_AUTOBGTRANSFERENABLED], a
+ jr .loop
diff --git a/engine/town_map.asm b/engine/town_map.asm
index cf09be7c..7d32b5fe 100755
--- a/engine/town_map.asm
+++ b/engine/town_map.asm
@@ -191,7 +191,7 @@ LoadTownMap_Fly:
coord hl, 18, 0
ld [hl], "▶"
coord hl, 19, 0
- ld [hl], $ee
+ ld [hl], "▼"
pop hl
.inputLoop
push hl
diff --git a/engine/trade2.asm b/engine/trade2.asm
index c47da36a..2c79e077 100755
--- a/engine/trade2.asm
+++ b/engine/trade2.asm
@@ -1,49 +1,48 @@
Trade_PrintPlayerMonInfoText:
coord hl, 5, 0
- ld de,Trade_MonInfoText
+ ld de, Trade_MonInfoText
call PlaceString
- ld a,[wTradedPlayerMonSpecies]
- ld [wd11e],a
+ ld a, [wTradedPlayerMonSpecies]
+ ld [wd11e], a
predef IndexToPokedex
coord hl, 9, 0
- ld de,wd11e
+ ld de, wd11e
lb bc, LEADING_ZEROES | 1, 3
call PrintNumber
coord hl, 5, 2
- ld de,wcf4b
+ ld de, wcf4b
call PlaceString
coord hl, 8, 4
- ld de,wTradedPlayerMonOT
+ ld de, wTradedPlayerMonOT
call PlaceString
coord hl, 8, 6
- ld de,wTradedPlayerMonOTID
+ ld de, wTradedPlayerMonOTID
lb bc, LEADING_ZEROES | 2, 5
jp PrintNumber
Trade_PrintEnemyMonInfoText:
coord hl, 5, 10
- ld de,Trade_MonInfoText
+ ld de, Trade_MonInfoText
call PlaceString
- ld a,[wTradedEnemyMonSpecies]
- ld [wd11e],a
+ ld a, [wTradedEnemyMonSpecies]
+ ld [wd11e], a
predef IndexToPokedex
coord hl, 9, 10
- ld de,wd11e
+ ld de, wd11e
lb bc, LEADING_ZEROES | 1, 3
call PrintNumber
coord hl, 5, 12
- ld de,wcd6d
+ ld de, wcd6d
call PlaceString
coord hl, 8, 14
- ld de,wTradedEnemyMonOT
+ ld de, wTradedEnemyMonOT
call PlaceString
coord hl, 8, 16
- ld de,wTradedEnemyMonOTID
+ ld de, wTradedEnemyMonOTID
lb bc, LEADING_ZEROES | 2, 5
jp PrintNumber
Trade_MonInfoText:
- db "──",$74,$F2
- db $4e ; next
+ db "──№⠄",$4E
next "OT/"
- next $73,"№",$F2,"@"
+ next $73,"№⠄","@"
diff --git a/engine/yellow_intro.asm b/engine/yellow_intro.asm
index 60135134..9c9e26b3 100755
--- a/engine/yellow_intro.asm
+++ b/engine/yellow_intro.asm
@@ -851,8 +851,8 @@ InitYellowIntroGFXAndMusic:
ld [hli], a
ld [hli], a
ld [hl], a
- ld a, MUSIC_INTRO_BATTLE
- ld c, BANK(Music_IntroBattle)
+ ld a, MUSIC_YELLOW_INTRO
+ ld c, BANK(Music_YellowIntro)
call PlayMusic
ret
diff --git a/gfx/blocksets/museum.bst b/gfx/blocksets/gate.bst
index e4c820a4..e4c820a4 100644
--- a/gfx/blocksets/museum.bst
+++ b/gfx/blocksets/gate.bst
Binary files differ
diff --git a/gfx/blocksets/redshouse2.bst b/gfx/blocksets/reds_house.bst
index 6c9f4749..6c9f4749 100644
--- a/gfx/blocksets/redshouse2.bst
+++ b/gfx/blocksets/reds_house.bst
Binary files differ
diff --git a/gfx/blocksets/shipport.bst b/gfx/blocksets/ship_port.bst
index 60b4767e..60b4767e 100644
--- a/gfx/blocksets/shipport.bst
+++ b/gfx/blocksets/ship_port.bst
Binary files differ
diff --git a/gfx/tilesets/museum.png b/gfx/tilesets/gate.png
index 372e6751..372e6751 100644
--- a/gfx/tilesets/museum.png
+++ b/gfx/tilesets/gate.png
Binary files differ
diff --git a/gfx/tilesets/redshouse2.png b/gfx/tilesets/reds_house.png
index 5f210d04..5f210d04 100644
--- a/gfx/tilesets/redshouse2.png
+++ b/gfx/tilesets/reds_house.png
Binary files differ
diff --git a/gfx/tilesets/shipport.png b/gfx/tilesets/ship_port.png
index fa5bbb27..fa5bbb27 100644
--- a/gfx/tilesets/shipport.png
+++ b/gfx/tilesets/ship_port.png
Binary files differ
diff --git a/home.asm b/home.asm
index 5ad11ffe..9d9b5dd4 100644
--- a/home.asm
+++ b/home.asm
@@ -1,4 +1,3 @@
-
; The rst vectors are unused.
SECTION "rst 00", ROM0
rst $38
@@ -22,7 +21,7 @@ SECTION "vblank", ROM0
jp VBlank
SECTION "hblank", ROM0
jp LCDC
-SECTION "timer", ROM0
+SECTION "timer", ROM0
jp Timer
SECTION "serial", ROM0
jp Serial
@@ -83,7 +82,6 @@ HideSprites::
INCLUDE "home/copy.asm"
-
SECTION "Entry", ROM0
nop
@@ -98,7 +96,6 @@ SECTION "Header", ROM0
ds $150 - $104
-
SECTION "Main", ROM0
PlayPikachuPCM::
@@ -488,7 +485,7 @@ HandlePartyMenuInput::
ld a, [wMenuItemToSwap]
and a
jp nz, .swappingPokemon
- pop af ; double pop af?
+ pop af
ld [hTilesetType], a
bit 1, b
jr nz, .noPokemonChosen
@@ -784,7 +781,7 @@ UncompressMonSprite::
; define (by index number) the bank that a pokemon's image is in
; index = Mew, bank 1
; index = Kabutops fossil, bank $B
-; index < $1F, bank 9
+; index < $1F, bank 9
; $1F ≤ index < $4A, bank $A
; $4A ≤ index < $74, bank $B
; $74 ≤ index < $99, bank $C
@@ -1330,7 +1327,7 @@ DisplayPlayerBlackedOutText::
ld [wSafariSteps + 1], a
EventFlagAddressa EVENT_IN_SAFARI_ZONE
ld [wcf0d], a
- ld [wSafariZoneEntranceCurScript], a
+ ld [wSafariZoneGateCurScript], a
.didnotblackoutinsafari
jp HoldTextDisplayOpen
@@ -1386,7 +1383,7 @@ SubtractAmountPaidFromMoney::
; adds the amount the player sold to their money
AddAmountSoldToMoney::
ld de, wPlayerMoney + 2
- ld hl, $ffa1 ; total price of items
+ ld hl, hMoney + 2 ; total price of items
ld c, 3 ; length of money in bytes
predef AddBCDPredef ; add total price to money
ld a, MONEY_BOX
@@ -1931,7 +1928,7 @@ PrintListMenuEntries::
jp nz, .loop
ld bc, -8
add hl, bc
- ld a, $ee ; down arrow
+ ld a, "▼"
ld [hl], a
ret
.printCancelMenuItem
@@ -2158,7 +2155,7 @@ DisableWaitingAfterTextDisplay::
; [wcf91] = item ID
; OUTPUT:
; [wActionResultOrTookBattleTurn] = success
-; 00: unsucessful
+; 00: unsuccessful
; 01: successful
; 02: not able to be used right now, no extra menu displayed (only certain items use this)
UseItem::
@@ -2327,7 +2324,7 @@ RunNPCMovementScript::
ld a, [wNPCMovementScriptBank]
call BankswitchCommon
ld a, [wNPCMovementScriptFunctionNum]
- call JumpTable
+ call CallFunctionInTable
pop af
call BankswitchCommon
ret
@@ -2370,7 +2367,7 @@ ExecuteCurMapScriptInTable::
.useProvidedIndex
pop hl
ld [wCurMapScript], a
- call JumpTable
+ call CallFunctionInTable
ld a, [wCurMapScript]
ret
@@ -2539,7 +2536,7 @@ EndTrainerBattle::
ld b, FLAG_SET
call TrainerFlagAction ; flag trainer as fought
ld a, [wEnemyMonOrTrainerClass]
- cp 200
+ cp OPP_ID_OFFSET
jr nc, .skipRemoveSprite ; test if trainer was fought (in that case skip removing the corresponding sprite)
ld hl, wMissableObjectList
ld de, $2
@@ -2573,7 +2570,7 @@ InitBattleEnemyParameters::
ld a, [wEngagedTrainerClass]
ld [wCurOpponent], a
ld [wEnemyMonOrTrainerClass], a
- cp 200
+ cp OPP_ID_OFFSET
ld a, [wEngagedTrainerSet]
jr c, .noTrainer
ld [wTrainerNo], a
@@ -2674,7 +2671,7 @@ EngageMapTrainer::
ld a, [hli] ; load trainer class
ld [wEngagedTrainerClass], a
ld a, [hl] ; load trainer mon set
- ld [wEnemyMonAttackMod], a
+ ld [wEngagedTrainerSet], a
jp PlayTrainerMusic
PrintEndBattleText::
@@ -3403,7 +3400,7 @@ WaitForSoundToFinish::
ret nz
push hl
.waitLoop
- ld hl, wChannelSoundIDs + CH4
+ ld hl, wChannelSoundIDs + Ch5
xor a
or [hl]
inc hl
@@ -3565,7 +3562,7 @@ CopyString::
; this function is used when lower button sensitivity is wanted (e.g. menus)
; OUTPUT: [hJoy5] = pressed buttons in usual format
; there are two flags that control its functionality, [hJoy6] and [hJoy7]
-; there are esentially three modes of operation
+; there are essentially three modes of operation
; 1. Get newly pressed buttons only
; ([hJoy7] == 0, [hJoy6] == any)
; Just copies [hJoyPressed] to [hJoy5].
@@ -3910,7 +3907,7 @@ CalcStat::
ld a, b
add e
jr nc, .noCarry2
- inc d ; da = (Base + IV) * 2 + ceil(Sqrt(stat exp)) / 4
+ inc d ; de = (Base + IV) * 2 + ceil(Sqrt(stat exp)) / 4
.noCarry2
ld [H_MULTIPLICAND + 2], a
ld a, d
@@ -4279,7 +4276,7 @@ EraseMenuCursor::
HandleDownArrowBlinkTiming::
ld a, [hl]
ld b, a
- ld a, $ee ; down arrow
+ ld a, "▼"
cp b
jr nz, .downArrowOff
.downArrowOn
@@ -4313,7 +4310,7 @@ HandleDownArrowBlinkTiming::
ret nz
ld a, $06
ld [H_DOWNARROWBLINKCNT2], a
- ld a, $ee ; down arrow
+ ld a, "▼"
ld [hl], a
ret
@@ -4577,7 +4574,7 @@ endm
ret
-JumpTable::
+CallFunctionInTable::
; Call function a in jumptable hl.
; de is not preserved.
push hl
@@ -4900,8 +4897,6 @@ const_value = 1
add_tx_pre PokemonCenterPCText ; 21
add_tx_pre ViridianSchoolNotebook ; 22
add_tx_pre ViridianSchoolBlackboard ; 23
- ; add_tx_pre FakeTextPredef22
- ; add_tx_pre FakeTextPredef23
add_tx_pre JustAMomentText ; 24
add_tx_pre OpenBillsPCText ; 25
add_tx_pre FoundHiddenItemText ; 26
diff --git a/home/audio.asm b/home/audio.asm
index 3cd2ffd0..fa7020ee 100644
--- a/home/audio.asm
+++ b/home/audio.asm
@@ -73,11 +73,11 @@ CheckForNoBikingMusicMap::
ld a, [wCurMap]
cp ROUTE_23
jr z, .found
- cp VICTORY_ROAD_1
+ cp VICTORY_ROAD_1F
jr z, .found
- cp VICTORY_ROAD_2
+ cp VICTORY_ROAD_2F
jr z, .found
- cp VICTORY_ROAD_3
+ cp VICTORY_ROAD_3F
jr z, .found
cp INDIGO_PLATEAU
jr z, .found
@@ -140,10 +140,10 @@ PlayMusic::
Func_2223::
xor a
- ld [wChannelSoundIDs + CH4], a
- ld [wChannelSoundIDs + CH5], a
- ld [wChannelSoundIDs + CH6], a
- ld [wChannelSoundIDs + CH7], a
+ ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + Ch6], a
+ ld [wChannelSoundIDs + Ch7], a
+ ld [wChannelSoundIDs + Ch8], a
ld [rNR10], a
ret
@@ -160,10 +160,10 @@ PlaySound::
and a
jr z, .next
xor a
- ld [wChannelSoundIDs + CH4], a
- ld [wChannelSoundIDs + CH5], a
- ld [wChannelSoundIDs + CH6], a
- ld [wChannelSoundIDs + CH7], a
+ ld [wChannelSoundIDs + Ch5], a
+ ld [wChannelSoundIDs + Ch6], a
+ ld [wChannelSoundIDs + Ch7], a
+ ld [wChannelSoundIDs + Ch8], a
.next
ld a, [wAudioFadeOutControl]
and a ; has a fade-out length been specified?
diff --git a/home/copy2.asm b/home/copy2.asm
index ad47c4a0..c14112bb 100644
--- a/home/copy2.asm
+++ b/home/copy2.asm
@@ -1,30 +1,30 @@
FarCopyDataDouble::
; Expand bc bytes of 1bpp image data
; from a:de to 2bpp data at hl.
- ld [wFarCopyDataSavedROMBank],a
- ld a,[H_LOADEDROMBANK]
+ ld [wFarCopyDataSavedROMBank], a
+ ld a, [H_LOADEDROMBANK]
push af
- ld a,[wFarCopyDataSavedROMBank]
+ ld a, [wFarCopyDataSavedROMBank]
call BankswitchCommon
- ld a,h ; swap hl and de
- ld h,d
- ld d,a
- ld a,l
- ld l,e
- ld e,a
- ld a,b
+ ld a, h ; swap hl and de
+ ld h, d
+ ld d, a
+ ld a, l
+ ld l, e
+ ld e, a
+ ld a, b
and a
- jr z,.eightbitcopyamount
- ld a,c
+ jr z, .eightbitcopyamount
+ ld a, c
and a ; multiple of $100
jr z, .expandloop ; if so, do not increment b because the first instance of dec c results in underflow
.eightbitcopyamount
inc b
.expandloop
- ld a,[de]
+ ld a, [de]
inc de
- ld [hli],a
- ld [hli],a
+ ld [hli], a
+ ld [hli], a
dec c
jr nz, .expandloop
dec b
diff --git a/home/overworld.asm b/home/overworld.asm
index 8b635aa5..8608cbfe 100644
--- a/home/overworld.asm
+++ b/home/overworld.asm
@@ -3,7 +3,7 @@ EnterMap::
ld a, $ff
ld [wJoyIgnore], a
call LoadMapData
- callba ClearVariablesAfterLoadingMapData
+ callba ClearVariablesOnEnterMap
ld hl, wd72c
bit 0, [hl] ; has the player already made 3 steps since the last battle?
jr z, .skipGivingThreeStepsOfNoRandomBattles
@@ -467,7 +467,7 @@ WarpFound2::
ld [wUnusedD366], a ; not read
ld a, [hWarpDestinationMap]
ld [wCurMap], a
- cp ROCK_TUNNEL_1
+ cp ROCK_TUNNEL_1F
jr nz, .notRockTunnel
ld a, $06
ld [wMapPalOffset], a
@@ -699,15 +699,15 @@ CheckIfInOutsideMap::
; sets carry if the check passes, otherwise clears carry
ExtraWarpCheck::
ld a, [wCurMap]
- cp SS_ANNE_3
+ cp SS_ANNE_3F
jr z, .useFunction1
- cp ROCKET_HIDEOUT_1
+ cp ROCKET_HIDEOUT_B1F
jr z, .useFunction2
- cp ROCKET_HIDEOUT_2
+ cp ROCKET_HIDEOUT_B2F
jr z, .useFunction2
- cp ROCKET_HIDEOUT_4
+ cp ROCKET_HIDEOUT_B4F
jr z, .useFunction2
- cp ROCK_TUNNEL_1
+ cp ROCK_TUNNEL_1F
jr z, .useFunction2
ld a, [wCurMapTileset]
and a ; outside tileset (OVERWORLD)
@@ -871,7 +871,7 @@ LoadTilesetTilePatternData::
LoadTileBlockMap::
; fill C6E8-CBFB with the background tile
ld hl, wOverworldMap
- ld bc, $0514
+ ld bc, wOverworldMapEnd - wOverworldMap
ld a, [wMapBackgroundTile] ; background tile number
call FillMemory
; load tile map of current map (made of tile block IDs)
@@ -1254,7 +1254,7 @@ CollisionCheckOnLand::
call CheckTilePassable
jr nc, .noCollision
.collision
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
cp SFX_COLLISION ; check if collision sound is already playing
jr z, .setCarry
ld a, SFX_COLLISION
@@ -1708,7 +1708,7 @@ CollisionCheckOnWater::
call IsTilePassable
jr nc, .stopSurfing
.collision
- ld a, [wChannelSoundIDs + CH4]
+ ld a, [wChannelSoundIDs + Ch5]
cp SFX_COLLISION ; check if collision sound is already playing
jr z, .setCarry
ld a, SFX_COLLISION
@@ -1716,7 +1716,6 @@ CollisionCheckOnWater::
.setCarry
scf
jr .done
-
.checkIfVermilionDockTileset
ld a, [wCurMapTileset] ; tileset
cp SHIP_PORT ; Vermilion Dock tileset
diff --git a/home/pic.asm b/home/pic.asm
index 353d0f58..236efe9d 100644
--- a/home/pic.asm
+++ b/home/pic.asm
@@ -45,8 +45,8 @@ _UncompressSpriteData::
ld [wSpriteWidth], a
call ReadNextInputBit
ld [wSpriteLoadFlags], a ; initialite bit1 to 0 and bit0 to the first input bit
- ; this will load two chunks of data to sSpriteBuffer1 and sSpriteBuffer2
- ; bit 0 decides in which one the first chunk is placed
+ ; this will load two chunks of data to sSpriteBuffer1 and sSpriteBuffer2
+ ; bit 0 decides in which one the first chunk is placed
; fall through
; uncompresses a chunk from the sprite input data stream (pointed to at wd0da) into sSpriteBuffer1 or sSpriteBuffer2
diff --git a/home/text.asm b/home/text.asm
index b3f96315..f78227eb 100644
--- a/home/text.asm
+++ b/home/text.asm
@@ -1,5 +1,5 @@
TextBoxBorder::
-; Draw a cxb text box at hl.
+; Draw a c×b text box at hl.
; top row
push hl
@@ -11,7 +11,7 @@ TextBoxBorder::
ld [hl], a
pop hl
- ld de, 20
+ ld de, SCREEN_WIDTH
add hl, de
; middle rows
@@ -24,7 +24,7 @@ TextBoxBorder::
ld [hl], "│"
pop hl
- ld de, 20
+ ld de, SCREEN_WIDTH
add hl, de
dec b
jr nz, .next
@@ -257,7 +257,7 @@ Char58:: ; prompt
ld a, [wLinkState]
cp LINK_STATE_BATTLING
jp z, .ok
- ld a, $EE
+ ld a, "▼"
Coorda 18, 16
.ok
call ProtectedDelay3
@@ -275,7 +275,7 @@ Char58Text::
Char51:: ; para
push de
- ld a, $EE
+ ld a, "▼"
Coorda 18, 16
call ProtectedDelay3
call ManualTextScroll
@@ -297,7 +297,7 @@ Char49::
.Char49
push de
- ld a, $EE
+ ld a, "▼"
Coorda 18, 16
call ProtectedDelay3
call ManualTextScroll
@@ -313,7 +313,7 @@ Char49::
jp PlaceNextChar_inc
Char4B::
- ld a, $EE
+ ld a, "▼"
Coorda 18, 16
call ProtectedDelay3
push de
@@ -330,23 +330,27 @@ Char4C::
pop de
jp PlaceNextChar_inc
+; move both rows of text in the normal text box up one row
+; always called twice in a row
+; first time, copy the two rows of text to the "in between" rows that are usually emtpy
+; second time, copy the bottom row of text into the top row of text
ScrollTextUpOneLine::
- coord hl, 0, 14
- coord de, 0, 13
- ld b, 60
-.next
+ coord hl, 0, 14 ; top row of text
+ coord de, 0, 13 ; empty line above text
+ ld b, SCREEN_WIDTH * 3
+.copyText
ld a, [hli]
ld [de], a
inc de
dec b
- jr nz, .next
+ jr nz, .copyText
coord hl, 1, 16
ld a, " "
ld b, SCREEN_WIDTH - 2
-.next2
+.clearText
ld [hli], a
dec b
- jr nz, .next2
+ jr nz, .clearText
; wait five frames
ld b, 5
@@ -372,22 +376,22 @@ TextCommandProcessor::
xor e
ld [wLetterPrintingDelayFlags], a
ld a, c
- ld [wTextDestinationTileAddrBuffer], a
+ ld [wTextDest], a
ld a, b
- ld [wTextDestinationTileAddrBuffer + 1], a
+ ld [wTextDest + 1], a
NextTextCommand::
ld a, [hli]
- cp a, "@" ; terminator
+ cp "@" ; terminator
jr nz, .doTextCommand
pop af
ld [wLetterPrintingDelayFlags], a
ret
.doTextCommand
push hl
- cp a, $17
+ cp $17
jp z, TextCommand17
- cp a, $0e
+ cp $0e
jp nc, TextCommand0B ; if a != 0x17 and a >= 0xE, go to command 0xB
; if a < 0xE, use a jump table
ld hl, TextCommandJumpTable
@@ -483,10 +487,10 @@ TextCommand02::
TextCommand03::
pop hl
ld a, [hli]
- ld [wTextDestinationTileAddrBuffer], a
+ ld [wTextDest], a
ld c, a
ld a, [hli]
- ld [wTextDestinationTileAddrBuffer + 1], a
+ ld [wTextDest + 1], a
ld b, a
jp NextTextCommand
@@ -503,9 +507,9 @@ TextCommand05::
; (no arguments)
TextCommand06::
ld a, [wLinkState]
- cp a, LINK_STATE_BATTLING
+ cp LINK_STATE_BATTLING
jp z, TextCommand0D
- ld a, $ee ; down arrow
+ ld a, "▼"
Coorda 18, 16 ; place down arrow in lower right corner of dialogue text box
push bc
call ManualTextScroll ; blink arrow and wait for A or B to be pressed
@@ -552,10 +556,10 @@ TextCommand09::
ld h, b
ld l, c
ld b, a
- and a, $0f
+ and $0f
ld c, a
ld a, b
- and a, $f0
+ and $f0
swap a
set BIT_LEFT_ALIGN, a
ld b, a
@@ -572,7 +576,7 @@ TextCommand0A::
push bc
call Joypad
ld a, [hJoyHeld]
- and a, A_BUTTON | B_BUTTON
+ and A_BUTTON | B_BUTTON
jr nz, .skipDelay
ld c, 30
call DelayFrames
@@ -599,11 +603,11 @@ TextCommand0B::
inc hl
jr .loop
.matchFound
- cp a, $14
+ cp $14
jr z, .pokemonCry
- cp a, $15
+ cp $15
jr z, .pokemonCry
- cp a, $16
+ cp $16
jr z, .pokemonCry
ld a, [hl]
call PlaySound
@@ -644,13 +648,13 @@ TextCommand0C::
ld h, b
ld l, c
.loop
- ld a, $75 ; ellipsis
+ ld a, "…"
ld [hli], a
push de
call Joypad
pop de
ld a, [hJoyHeld] ; joypad state
- and a, A_BUTTON | B_BUTTON
+ and A_BUTTON | B_BUTTON
jr nz, .skipDelay ; if so, skip the delay
ld c, 10
call DelayFrames
diff --git a/home/vcopy.asm b/home/vcopy.asm
index 2974dfec..bec679c4 100644
--- a/home/vcopy.asm
+++ b/home/vcopy.asm
@@ -10,27 +10,27 @@ GetRowColAddressBgMap::
srl h
rr a
or l
- ld l,a
- ld a,b
+ ld l, a
+ ld a, b
or h
- ld h,a
+ ld h, a
ret
; clears a VRAM background map with blank space tiles
; INPUT: h - high byte of background tile map address in VRAM
ClearBgMap::
- ld a," "
+ ld a, " "
jr .next
- ld a,l
+ ld a, l
.next
- ld de,$400 ; size of VRAM background map
- ld l,e
+ ld de, $400 ; size of VRAM background map
+ ld l, e
.loop
- ld [hli],a
+ ld [hli], a
dec e
- jr nz,.loop
+ jr nz, .loop
dec d
- jr nz,.loop
+ jr nz, .loop
ret
; This function redraws a BG row of height 2 or a BG column of width 2.
@@ -40,76 +40,76 @@ ClearBgMap::
; However, this function is also called repeatedly to redraw the whole screen
; when necessary. It is also used in trade animation and elevator code.
RedrawRowOrColumn::
- ld a,[hRedrawRowOrColumnMode]
+ ld a, [hRedrawRowOrColumnMode]
and a
ret z
- ld b,a
+ ld b, a
xor a
- ld [hRedrawRowOrColumnMode],a
+ ld [hRedrawRowOrColumnMode], a
dec b
- jr nz,.redrawRow
+ jr nz, .redrawRow
.redrawColumn
- ld hl,wRedrawRowOrColumnSrcTiles
- ld a,[hRedrawRowOrColumnDest]
- ld e,a
- ld a,[hRedrawRowOrColumnDest + 1]
- ld d,a
- ld c,SCREEN_HEIGHT
+ ld hl, wRedrawRowOrColumnSrcTiles
+ ld a, [hRedrawRowOrColumnDest]
+ ld e, a
+ ld a, [hRedrawRowOrColumnDest + 1]
+ ld d, a
+ ld c, SCREEN_HEIGHT
.loop1
- ld a,[hli]
- ld [de],a
+ ld a, [hli]
+ ld [de], a
inc de
- ld a,[hli]
- ld [de],a
- ld a,BG_MAP_WIDTH - 1
+ ld a, [hli]
+ ld [de], a
+ ld a, BG_MAP_WIDTH - 1
add e
- ld e,a
- jr nc,.noCarry
+ ld e, a
+ jr nc, .noCarry
inc d
.noCarry
; the following 4 lines wrap us from bottom to top if necessary
- ld a,d
- and a,$03
- or a,$98
- ld d,a
+ ld a, d
+ and $03
+ or $98
+ ld d, a
dec c
- jr nz,.loop1
+ jr nz, .loop1
xor a
- ld [hRedrawRowOrColumnMode],a
+ ld [hRedrawRowOrColumnMode], a
ret
.redrawRow
- ld hl,wRedrawRowOrColumnSrcTiles
- ld a,[hRedrawRowOrColumnDest]
- ld e,a
- ld a,[hRedrawRowOrColumnDest + 1]
- ld d,a
+ ld hl, wRedrawRowOrColumnSrcTiles
+ ld a, [hRedrawRowOrColumnDest]
+ ld e, a
+ ld a, [hRedrawRowOrColumnDest + 1]
+ ld d, a
push de
call .DrawHalf ; draw upper half
pop de
- ld a,BG_MAP_WIDTH ; width of VRAM background map
+ ld a, BG_MAP_WIDTH ; width of VRAM background map
add e
- ld e,a
+ ld e, a
; fall through and draw lower half
.DrawHalf
- ld c,SCREEN_WIDTH / 2
+ ld c, SCREEN_WIDTH / 2
.loop2
- ld a,[hli]
- ld [de],a
+ ld a, [hli]
+ ld [de], a
inc de
- ld a,[hli]
- ld [de],a
- ld a,e
+ ld a, [hli]
+ ld [de], a
+ ld a, e
inc a
; the following 6 lines wrap us from the right edge to the left edge if necessary
- and a,$1f
- ld b,a
- ld a,e
- and a,$e0
+ and $1f
+ ld b, a
+ ld a, e
+ and $e0
or b
- ld e,a
+ ld e, a
dec c
- jr nz,.loop2
+ jr nz, .loop2
ret
; This function automatically transfers tile number data from the tile map at
@@ -120,48 +120,48 @@ RedrawRowOrColumn::
; the above function, RedrawRowOrColumn, is used when walking to
; improve efficiency.
AutoBgMapTransfer::
- ld a,[H_AUTOBGTRANSFERENABLED]
+ ld a, [H_AUTOBGTRANSFERENABLED]
and a
ret z
- ld [H_SPTEMP],sp ; save stack pinter
- ld a,[H_AUTOBGTRANSFERPORTION]
+ ld [H_SPTEMP], sp ; save stack pointer
+ ld a, [H_AUTOBGTRANSFERPORTION]
and a
- jr z,.transferTopThird
+ jr z, .transferTopThird
dec a
- jr z,.transferMiddleThird
+ jr z, .transferMiddleThird
.transferBottomThird
coord hl, 0, 12
- ld sp,hl
- ld a,[H_AUTOBGTRANSFERDEST + 1]
- ld h,a
- ld a,[H_AUTOBGTRANSFERDEST]
- ld l,a
- ld de,(12 * 32)
- add hl,de
+ ld sp, hl
+ ld a, [H_AUTOBGTRANSFERDEST + 1]
+ ld h, a
+ ld a, [H_AUTOBGTRANSFERDEST]
+ ld l, a
+ ld de, (12 * 32)
+ add hl, de
xor a ; TRANSFERTOP
jr .doTransfer
.transferTopThird
coord hl, 0, 0
- ld sp,hl
- ld a,[H_AUTOBGTRANSFERDEST + 1]
- ld h,a
- ld a,[H_AUTOBGTRANSFERDEST]
- ld l,a
- ld a,TRANSFERMIDDLE
+ ld sp, hl
+ ld a, [H_AUTOBGTRANSFERDEST + 1]
+ ld h, a
+ ld a, [H_AUTOBGTRANSFERDEST]
+ ld l, a
+ ld a, TRANSFERMIDDLE
jr .doTransfer
.transferMiddleThird
coord hl, 0, 6
- ld sp,hl
- ld a,[H_AUTOBGTRANSFERDEST + 1]
- ld h,a
- ld a,[H_AUTOBGTRANSFERDEST]
- ld l,a
- ld de,(6 * 32)
- add hl,de
- ld a,TRANSFERBOTTOM
+ ld sp, hl
+ ld a, [H_AUTOBGTRANSFERDEST + 1]
+ ld h, a
+ ld a, [H_AUTOBGTRANSFERDEST]
+ ld l, a
+ ld de, (6 * 32)
+ add hl, de
+ ld a, TRANSFERBOTTOM
.doTransfer
- ld [H_AUTOBGTRANSFERPORTION],a ; store next portion
- ld b,6
+ ld [H_AUTOBGTRANSFERPORTION], a ; store next portion
+ ld b, 6
TransferBgRows::
; unrolled loop and using pop for speed
@@ -198,23 +198,23 @@ TransferBgRows::
; Copies [H_VBCOPYBGNUMROWS] rows from H_VBCOPYBGSRC to H_VBCOPYBGDEST.
; If H_VBCOPYBGSRC is XX00, the transfer is disabled.
VBlankCopyBgMap::
- ld a,[H_VBCOPYBGSRC] ; doubles as enabling byte
+ ld a, [H_VBCOPYBGSRC] ; doubles as enabling byte
and a
ret z
- ld [H_SPTEMP],sp ; save stack pointer
- ld a,[H_VBCOPYBGSRC]
- ld l,a
- ld a,[H_VBCOPYBGSRC + 1]
- ld h,a
- ld sp,hl
- ld a,[H_VBCOPYBGDEST]
- ld l,a
- ld a,[H_VBCOPYBGDEST + 1]
- ld h,a
- ld a,[H_VBCOPYBGNUMROWS]
- ld b,a
+ ld [H_SPTEMP], sp ; save stack pointer
+ ld a, [H_VBCOPYBGSRC]
+ ld l, a
+ ld a, [H_VBCOPYBGSRC + 1]
+ ld h, a
+ ld sp, hl
+ ld a, [H_VBCOPYBGDEST]
+ ld l, a
+ ld a, [H_VBCOPYBGDEST + 1]
+ ld h, a
+ ld a, [H_VBCOPYBGNUMROWS]
+ ld b, a
xor a
- ld [H_VBCOPYBGSRC],a ; disable transfer so it doesn't continue next V-blank
+ ld [H_VBCOPYBGSRC], a ; disable transfer so it doesn't continue next V-blank
jr TransferBgRows
@@ -230,7 +230,7 @@ VBlankCopyDouble::
and a
ret z
- ld [H_SPTEMP],sp ; save stack pointer
+ ld [H_SPTEMP], sp ; save stack pointer
ld a, [H_VBCOPYDOUBLESRC]
ld l, a
@@ -273,8 +273,8 @@ VBlankCopyDouble::
dec b
jr nz, .loop
- ld [H_VBCOPYDOUBLESRC],sp
- ld sp,hl ; load destination into sp to save time with ld [$xxxx],sp
+ ld [H_VBCOPYDOUBLESRC], sp
+ ld sp, hl ; load destination into sp to save time with ld [$xxxx], sp
ld [H_VBCOPYDOUBLEDEST], sp
ld a, [H_SPTEMP]
@@ -297,7 +297,7 @@ VBlankCopy::
and a
ret z
- ld [H_SPTEMP],sp
+ ld [H_SPTEMP], sp
ld a, [H_VBCOPYSRC]
ld l, a
@@ -332,9 +332,9 @@ VBlankCopy::
dec b
jr nz, .loop
- ld [H_VBCOPYSRC],sp
- ld sp,hl
- ld [H_VBCOPYDEST],sp
+ ld [H_VBCOPYSRC], sp
+ ld sp, hl
+ ld [H_VBCOPYDEST], sp
ld a, [H_SPTEMP]
ld l, a
diff --git a/hram.asm b/hram.asm
index 0b5cb8b0..0e1fae7e 100644
--- a/hram.asm
+++ b/hram.asm
@@ -96,7 +96,7 @@ hSwapTemp EQU $FF95
hExperience EQU $FF96 ; 3 bytes, big endian
-; Multiplcation and division variables are meant
+; Multiplication and division variables are meant
; to overlap for back-to-back usage. Big endian.
H_MULTIPLICAND EQU $FF96 ; 3 bytes
@@ -153,8 +153,7 @@ hCoins EQU $FFA0 ; 2-byte BCD number
hDivideBCDDivisor EQU $FFA2 ; 3-byte BCD number
hDivideBCDQuotient EQU $FFA2 ; 3-byte BCD number
-hDivideBCDBuffer EQU $FFA5 ; 3 bytes
-
+hDivideBCDBuffer EQU $FFA5 ; 3-byte BCD number
hSerialReceivedNewData EQU $FFA9
diff --git a/macros.asm b/macros.asm
index 2835c99a..db13fec6 100644
--- a/macros.asm
+++ b/macros.asm
@@ -1,21 +1,8 @@
-
-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.
-
-
-percent EQUS "* $ff / 100"
-
-lb: MACRO ; r, hi, lo
- ld \1, ((\2) & $ff) << 8 + ((\3) & $ff)
- ENDM
+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"
SHADE_BLACK EQU %11
SHADE_DARK EQU %10
@@ -34,16 +21,6 @@ setpalOBP: MACRO
setpal SHADE_BLACK, SHADE_DARK, SHADE_WHITE, SHADE_WHITE
ENDM
-; Constant enumeration is useful for monsters, items, moves, etc.
-const_def: MACRO
-const_value = 0
-ENDM
-
-const: MACRO
-\1 EQU const_value
-const_value = const_value + 1
-ENDM
-
homecall_jump: MACRO
ld a, [H_LOADEDROMBANK]
push af
@@ -65,16 +42,6 @@ homecall_jump_sf: MACRO
jp BankswitchCommon
ENDM
-homecall: MACRO
- ld a, [H_LOADEDROMBANK]
- push af
- ld a, BANK(\1)
- call BankswitchCommon
- call \1
- pop af
- call BankswitchCommon
- ENDM
-
homecall_sf: MACRO ; homecall but save flags by popping into bc instead of af
ld a, [H_LOADEDROMBANK]
push af
@@ -97,18 +64,6 @@ callbs: MACRO
call \1
ENDM
-callba: MACRO
- ld b, BANK(\1)
- ld hl, \1
- call Bankswitch
- ENDM
-
-callab: MACRO
- ld hl, \1
- ld b, BANK(\1)
- call Bankswitch
- ENDM
-
calladb_ModifyPikachuHappiness: MACRO
ld hl, ModifyPikachuHappiness
ld d, \1
@@ -123,721 +78,6 @@ callabd_ModifyPikachuHappiness: MACRO
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
-
-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"
-
-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
-
-;\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
-
-; 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
-
-; data format macros
-RGB: MACRO
- dw (\3 << 10 | \2 << 5 | \1)
- ENDM
-
-; text macros
-; text engine command $1
-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_CURSOR: MACRO
-; Move cursor to (\1, \2)
-; \1: X coord (0 - 19)
-; \2: Y coord (0 - 17)
- db $3
- dwCoord \1, \2
- ENDM
-
-TX_LINE EQUS "db $05"
-TX_BUTTON_SOUND EQUS "db $06"
-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_SFX_ITEM EQUS "db $0b"
-TX_WAIT_BUTTON EQUS "db $0d"
-TX_SFX_CONGRATS EQUS "db $10"
-TX_SFX_KEY_ITEM EQUS "db $11"
-
-TX_FAR: MACRO
-; 17AAAABB (call text at BB:AAAA)
- db $17
- dab \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"
-
-; 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
-
-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_channel EQU $00
-;2_channels EQU $40
-;3_channels EQU $80
-;4_channels EQU $C0
-
-CH0 EQU 0
-CH1 EQU 1
-CH2 EQU 2
-CH3 EQU 3
-CH4 EQU 4
-CH5 EQU 5
-CH6 EQU 6
-CH7 EQU 7
-
-unknownsfx0x10: MACRO
- db $10
- db \1
-ENDM
-
-unknownsfx0x20: MACRO
- db $20 | \1
- db \2
- db \3
- db \4
-ENDM
-
-unknownnoise0x20: MACRO
- db $20 | \1
- db \2
- db \3
-ENDM
-
-;format: pitch length (in 16ths)
-C_: MACRO
- db $00 | (\1 - 1)
-ENDM
-
-C#: MACRO
- db $10 | (\1 - 1)
-ENDM
-
-D_: MACRO
- db $20 | (\1 - 1)
-ENDM
-
-D#: MACRO
- db $30 | (\1 - 1)
-ENDM
-
-E_: MACRO
- db $40 | (\1 - 1)
-ENDM
-
-F_: MACRO
- db $50 | (\1 - 1)
-ENDM
-
-F#: MACRO
- db $60 | (\1 - 1)
-ENDM
-
-G_: MACRO
- db $70 | (\1 - 1)
-ENDM
-
-G#: MACRO
- db $80 | (\1 - 1)
-ENDM
-
-A_: MACRO
- db $90 | (\1 - 1)
-ENDM
-
-A#: MACRO
- db $A0 | (\1 - 1)
-ENDM
-
-B_: MACRO
- db $B0 | (\1 - 1)
-ENDM
-
-;format: instrument length (in 16ths)
-snare1: MACRO
- db $B0 | (\1 - 1)
- db $01
-ENDM
-
-snare2: MACRO
- db $B0 | (\1 - 1)
- db $02
-ENDM
-
-snare3: MACRO
- db $B0 | (\1 - 1)
- db $03
-ENDM
-
-snare4: MACRO
- db $B0 | (\1 - 1)
- db $04
-ENDM
-
-snare5: MACRO
- db $B0 | (\1 - 1)
- db $05
-ENDM
-
-triangle1: MACRO
- db $B0 | (\1 - 1)
- db $06
-ENDM
-
-triangle2: MACRO
- db $B0 | (\1 - 1)
- db $07
-ENDM
-
-snare6: MACRO
- db $B0 | (\1 - 1)
- db $08
-ENDM
-
-snare7: MACRO
- db $B0 | (\1 - 1)
- db $09
-ENDM
-
-snare8: MACRO
- db $B0 | (\1 - 1)
- db $0A
-ENDM
-
-snare9: MACRO
- db $B0 | (\1 - 1)
- db $0B
-ENDM
-
-cymbal1: MACRO
- db $B0 | (\1 - 1)
- db $0C
-ENDM
-
-cymbal2: MACRO
- db $B0 | (\1 - 1)
- db $0D
-ENDM
-
-cymbal3: MACRO
- db $B0 | (\1 - 1)
- db $0E
-ENDM
-
-mutedsnare1: MACRO
- db $B0 | (\1 - 1)
- db $0F
-ENDM
-
-triangle3: MACRO
- db $B0 | (\1 - 1)
- db $10
-ENDM
-
-mutedsnare2: MACRO
- db $B0 | (\1 - 1)
- db $11
-ENDM
-
-mutedsnare3: MACRO
- db $B0 | (\1 - 1)
- db $12
-ENDM
-
-mutedsnare4: MACRO
- db $B0 | (\1 - 1)
- db $13
-ENDM
-
-;format: rest length (in 16ths)
-rest: MACRO
- db $C0 | (\1 - 1)
-ENDM
-
-; format: notetype speed, volume, fade
-notetype: MACRO
- db $D0 | \1
- db (\2 << 4) | \3
-ENDM
-
-dspeed: MACRO
- db $D0 | \1
-ENDM
-
-octave: MACRO
- db $E8 - \1
-ENDM
-
-toggleperfectpitch: MACRO
- db $E8
-ENDM
-
-;format: vibrato delay, rate, depth
-vibrato: MACRO
- db $EA
- db \1
- db (\2 << 4) | \3
-ENDM
-
-pitchbend: MACRO
- db $EB
- db \1
- db \2
-ENDM
-
-duty: MACRO
- db $EC
- db \1
-ENDM
-
-tempo: MACRO
- db $ED
- db \1 / $100
- db \1 % $100
-ENDM
-
-stereopanning: MACRO
- db $EE
- db \1
-ENDM
-
-volume: MACRO
- db $F0
- db (\1 << 4) | \2
-ENDM
-
-executemusic: MACRO
- db $F8
-ENDM
-
-dutycycle: MACRO
- db $FC
- db \1
-ENDM
-
-;format: callchannel address
-callchannel: MACRO
- db $FD
- dw \1
-ENDM
-
-;format: loopchannel count, address
-loopchannel: MACRO
- db $FE
- db \1
- dw \2
-ENDM
-
-endchannel: MACRO
- db $FF
-ENDM
-
-;\1 x position
-;\2 y position
-;\3 destination warp id
-;\4 destination map ($ff = 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 (byte) = current map id
-;\2 (byte) = connected map id
-;\3 (byte) = x movement of connection strip
-;\4 (byte) = connection strip offset
-;\5 (word) = connected map blocks pointer
-NORTH_MAP_CONNECTION: MACRO
- db \2 ; map id
- dw \5 + (\2_WIDTH * (\2_HEIGHT - 3)) + \4; "Connection Strip" location
- dw wOverworldMap + 3 + \3 ; current map position
- IF (\1_WIDTH < \2_WIDTH)
- db \1_WIDTH - \3 + 3 ; width of connection strip
- ELSE
- db \2_WIDTH - \4 ; width of connection strip
- ENDC
- db \2_WIDTH ; map width
- db (\2_HEIGHT * 2) - 1 ; y alignment (y coordinate of player when entering map)
- db (\3 - \4) * -2 ; x alignment (x coordinate of player when entering map)
- dw wOverworldMap + 1 + (\2_HEIGHT * (\2_WIDTH + 6)) ; window (position of the upper left block after entering the map)
-ENDM
-
-;\1 (byte) = current map id
-;\2 (byte) = connected map id
-;\3 (byte) = x movement of connection strip
-;\4 (byte) = connection strip offset
-;\5 (word) = connected map blocks pointer
-;\6 (flag) = add 3 to width of connection strip (why?)
-SOUTH_MAP_CONNECTION: MACRO
- db \2 ; map id
- dw \5 + \4 ; "Conection Strip" location
- dw wOverworldMap + 3 + (\1_HEIGHT + 3) * (\1_WIDTH + 6) + \3 ; current map position
- IF (\1_WIDTH < \2_WIDTH)
- IF (_NARG > 5)
- db \1_WIDTH - \3 + 3 ; width of connection strip
- ELSE
- db \1_WIDTH - \3 ; width of connection strip
- ENDC
- ELSE
- db \2_WIDTH - \4 ; width of connection strip
- ENDC
- db \2_WIDTH ; map width
- db 0 ; y alignment (y coordinate of player when entering map)
- db (\3 - \4) * -2 ; x alignment (x coordinate of player when entering map)
- dw wOverworldMap + 7 + \2_WIDTH ; window (position of the upper left block after entering the map)
-ENDM
-
-;\1 (byte) = current map id
-;\2 (byte) = connected map id
-;\3 (byte) = y movement of connection strip
-;\4 (byte) = connection strip offset
-;\5 (word) = connected map blocks pointer
-WEST_MAP_CONNECTION: MACRO
- db \2 ; map id
- dw \5 + (\2_WIDTH * \4) + \2_WIDTH - 3 ; "Connection Strip" location
- dw wOverworldMap + (\1_WIDTH + 6) * (\3 + 3) ; current map position
- IF (\1_HEIGHT < \2_HEIGHT)
- db \1_HEIGHT - \3 + 3 ; height of connection strip
- ELSE
- db \2_HEIGHT - \4 ; height of connection strip
- ENDC
- db \2_WIDTH ; map width
- db (\3 - \4) * -2 ; y alignment
- db (\2_WIDTH * 2) - 1 ; x alignment
- dw wOverworldMap + 6 + (2 * \2_WIDTH) ; window (position of the upper left block after entering the map)
-ENDM
-
-;\1 (byte) = current map id
-;\2 (byte) = connected map id
-;\3 (byte) = y movement of connection strip
-;\4 (byte) = connection strip offset
-;\5 (word) = connected map blocks pointer
-;\6 (flag) = add 3 to height of connection strip (why?)
-EAST_MAP_CONNECTION: MACRO
- db \2 ; map id
- dw \5 + (\2_WIDTH * \4) ; "Connection Strip" location
- dw wOverworldMap - 3 + (\1_WIDTH + 6) * (\3 + 4) ; current map position
- IF (\1_HEIGHT < \2_HEIGHT)
- IF (_NARG > 5)
- db \1_HEIGHT - \3 + 3 ; height of connection strip
- ELSE
- db \1_HEIGHT - \3 ; height of connection strip
- ENDC
- ELSE
- db \2_HEIGHT - \4 ; height of connection strip
- ENDC
- db \2_WIDTH ; map width
- db (\3 - \4) * -2 ; y alignment
- db 0 ; x alignment
- dw wOverworldMap + 7 + \2_WIDTH ; window (position of the upper left block after entering the map)
-ENDM
-
-tmlearn: MACRO
-x = 0
- rept _NARG
-IF \1 != 0
-x = x | (1 << ((\1 - 1) % 8))
-ENDC
- shift
- endr
- db x
-ENDM
-
sine_wave: MACRO
; \1: amplitude
@@ -849,28 +89,6 @@ x = x + (\1) * $40000
endr
ENDM
-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 = __enum__
-__enum__ = __enum__ + __enumdir__
-endm
-
-enum_set: macro
-__enum__ = \1
-endm
-
ANIM_OBJ_INDEX EQUS "wAnimatedObject0Index - wAnimatedObject0"
ANIM_OBJ_FRAME_SET EQUS "wAnimatedObject0FramesetID - wAnimatedObject0"
ANIM_OBJ_CALLBACK EQUS "wAnimatedObject0AnimSeqID - wAnimatedObject0"
diff --git a/macros/asm_macros.asm b/macros/asm_macros.asm
new file mode 100755
index 00000000..7012d7e1
--- /dev/null
+++ b/macros/asm_macros.asm
@@ -0,0 +1,190 @@
+
+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)
+ call BankswitchCommon
+ call \1
+ pop af
+ call BankswitchCommon
+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
new file mode 100755
index 00000000..6daadbc6
--- /dev/null
+++ b/macros/audio_macros.asm
@@ -0,0 +1,214 @@
+
+;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/data_macros.asm b/macros/data_macros.asm
new file mode 100755
index 00000000..ee5cb8f0
--- /dev/null
+++ b/macros/data_macros.asm
@@ -0,0 +1,242 @@
+
+; Constant enumeration is useful for monsters, items, moves, etc.
+const_def: MACRO
+const_value = 0
+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
+
+;\1 (byte) = current map id
+;\2 (byte) = connected map id
+;\3 (byte) = x movement of connection strip
+;\4 (byte) = connection strip offset
+;\5 (word) = connected map blocks pointer
+NORTH_MAP_CONNECTION: MACRO
+ db \2 ; map id
+ dw \5 + (\2_WIDTH * (\2_HEIGHT - 3)) + \4; "Connection Strip" location
+ dw wOverworldMap + 3 + \3 ; current map position
+ IF (\1_WIDTH < \2_WIDTH)
+ db \1_WIDTH - \3 + 3 ; width of connection strip
+ ELSE
+ db \2_WIDTH - \4 ; width of connection strip
+ ENDC
+ db \2_WIDTH ; map width
+ db (\2_HEIGHT * 2) - 1 ; y alignment (y coordinate of player when entering map)
+ db (\3 - \4) * -2 ; x alignment (x coordinate of player when entering map)
+ dw wOverworldMap + 1 + (\2_HEIGHT * (\2_WIDTH + 6)) ; window (position of the upper left block after entering the map)
+ENDM
+
+;\1 (byte) = current map id
+;\2 (byte) = connected map id
+;\3 (byte) = x movement of connection strip
+;\4 (byte) = connection strip offset
+;\5 (word) = connected map blocks pointer
+;\6 (flag) = add 3 to width of connection strip (why?)
+SOUTH_MAP_CONNECTION: MACRO
+ db \2 ; map id
+ dw \5 + \4 ; "Connection Strip" location
+ dw wOverworldMap + 3 + (\1_HEIGHT + 3) * (\1_WIDTH + 6) + \3 ; current map position
+ IF (\1_WIDTH < \2_WIDTH)
+ IF (_NARG > 5)
+ db \1_WIDTH - \3 + 3 ; width of connection strip
+ ELSE
+ db \1_WIDTH - \3 ; width of connection strip
+ ENDC
+ ELSE
+ db \2_WIDTH - \4 ; width of connection strip
+ ENDC
+ db \2_WIDTH ; map width
+ db 0 ; y alignment (y coordinate of player when entering map)
+ db (\3 - \4) * -2 ; x alignment (x coordinate of player when entering map)
+ dw wOverworldMap + 7 + \2_WIDTH ; window (position of the upper left block after entering the map)
+ENDM
+
+;\1 (byte) = current map id
+;\2 (byte) = connected map id
+;\3 (byte) = y movement of connection strip
+;\4 (byte) = connection strip offset
+;\5 (word) = connected map blocks pointer
+WEST_MAP_CONNECTION: MACRO
+ db \2 ; map id
+ dw \5 + (\2_WIDTH * \4) + \2_WIDTH - 3 ; "Connection Strip" location
+ dw wOverworldMap + (\1_WIDTH + 6) * (\3 + 3) ; current map position
+ IF (\1_HEIGHT < \2_HEIGHT)
+ db \1_HEIGHT - \3 + 3 ; height of connection strip
+ ELSE
+ db \2_HEIGHT - \4 ; height of connection strip
+ ENDC
+ db \2_WIDTH ; map width
+ db (\3 - \4) * -2 ; y alignment
+ db (\2_WIDTH * 2) - 1 ; x alignment
+ dw wOverworldMap + 6 + (2 * \2_WIDTH) ; window (position of the upper left block after entering the map)
+ENDM
+
+;\1 (byte) = current map id
+;\2 (byte) = connected map id
+;\3 (byte) = y movement of connection strip
+;\4 (byte) = connection strip offset
+;\5 (word) = connected map blocks pointer
+;\6 (flag) = add 3 to height of connection strip (why?)
+EAST_MAP_CONNECTION: MACRO
+ db \2 ; map id
+ dw \5 + (\2_WIDTH * \4) ; "Connection Strip" location
+ dw wOverworldMap - 3 + (\1_WIDTH + 6) * (\3 + 4) ; current map position
+ IF (\1_HEIGHT < \2_HEIGHT)
+ IF (_NARG > 5)
+ db \1_HEIGHT - \3 + 3 ; height of connection strip
+ ELSE
+ db \1_HEIGHT - \3 ; height of connection strip
+ ENDC
+ ELSE
+ db \2_HEIGHT - \4 ; height of connection strip
+ ENDC
+ db \2_WIDTH ; map width
+ db (\3 - \4) * -2 ; y alignment
+ db 0 ; x alignment
+ dw wOverworldMap + 7 + \2_WIDTH ; window (position of the upper left block after entering the map)
+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/constants/event_macros.asm b/macros/event_macros.asm
index a3ce9746..a3ce9746 100644
--- a/constants/event_macros.asm
+++ b/macros/event_macros.asm
diff --git a/macros/text_macros.asm b/macros/text_macros.asm
new file mode 100755
index 00000000..21e02634
--- /dev/null
+++ b/macros/text_macros.asm
@@ -0,0 +1,80 @@
+
+; 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/main.asm b/main.asm
index b08aacf3..1c8efc31 100755
--- a/main.asm
+++ b/main.asm
@@ -1,10 +1,9 @@
-INCLUDE "charmap.asm"
INCLUDE "constants.asm"
INCLUDE "home.asm"
-SECTION "bank01", ROMX
+SECTION "bank1", ROMX
INCLUDE "data/facing.asm"
@@ -22,14 +21,17 @@ INCLUDE "engine/overworld/oam.asm"
INCLUDE "engine/print_waiting_text.asm"
INCLUDE "engine/overworld/map_sprite_functions1.asm"
+
INCLUDE "engine/overworld/item.asm"
INCLUDE "engine/overworld/movement.asm"
+
INCLUDE "engine/cable_club.asm"
+
INCLUDE "engine/menu/main_menu.asm"
+
INCLUDE "engine/oak_speech.asm"
-INCLUDE "engine/overworld/special_warps.asm"
-INCLUDE "data/special_warps.asm"
+INCLUDE "engine/special_warps.asm"
INCLUDE "engine/debug1.asm"
@@ -42,63 +44,64 @@ INCLUDE "engine/subtract_paid_money.asm"
INCLUDE "engine/menu/swap_items.asm"
INCLUDE "engine/overworld/pokemart.asm"
+
INCLUDE "engine/learn_move.asm"
+
INCLUDE "engine/overworld/pokecenter.asm"
+
INCLUDE "engine/overworld/set_blackout_map.asm"
-INCLUDE "engine/menu/text_ids1.asm"
+INCLUDE "engine/display_text_id_init.asm"
+INCLUDE "engine/menu/draw_start_menu.asm"
+
INCLUDE "engine/overworld/cable_club_npc.asm"
-INCLUDE "engine/menu/text_ids2.asm"
+
+INCLUDE "engine/menu/text_box.asm"
INCLUDE "engine/battle/moveEffects/drain_hp_effect.asm"
+
INCLUDE "engine/menu/players_pc.asm"
+
INCLUDE "engine/remove_pokemon.asm"
+
INCLUDE "engine/display_pokedex.asm"
-SECTION "bank03", ROMX
+SECTION "bank3", ROMX
INCLUDE "engine/joypad.asm"
-INCLUDE "engine/overworld/clear_loadmapdata_vars.asm"
-INCLUDE "engine/overworld/check_player_state.asm"
-INCLUDE "engine/overworld/print_safari_steps.asm"
-INCLUDE "engine/overworld/get_coords_tile_in_front_of_player.asm"
-INCLUDE "engine/overworld/boulders.asm"
-INCLUDE "engine/overworld/step_functions.asm"
-INCLUDE "engine/overworld/load_tileset_header.asm"
+INCLUDE "engine/overworld/clear_variables.asm"
+INCLUDE "engine/overworld/player_state.asm"
+INCLUDE "engine/overworld/poison.asm"
+INCLUDE "engine/overworld/tileset_header.asm"
INCLUDE "engine/overworld/daycare_exp.asm"
INCLUDE "data/hide_show_data.asm"
-INCLUDE "engine/overworld/load_wild_data.asm"
+INCLUDE "engine/overworld/wild_mons.asm"
INCLUDE "engine/items/items.asm"
-INCLUDE "engine/draw_badges.asm"
+INCLUDE "engine/menu/draw_badges.asm"
-INCLUDE "engine/overworld/replace_tile_block.asm"
+INCLUDE "engine/overworld/update_map.asm"
INCLUDE "engine/overworld/cut.asm"
INCLUDE "engine/overworld/missable_objects.asm"
-INCLUDE "engine/overworld/try_pushing_boulder.asm"
+INCLUDE "engine/overworld/push_boulder.asm"
-INCLUDE "engine/add_party_mon.asm"
-INCLUDE "engine/move_mon.asm"
-INCLUDE "engine/flag_action_predef.asm"
+INCLUDE "engine/add_mon.asm"
+INCLUDE "engine/flag_action.asm"
INCLUDE "engine/heal_party.asm"
INCLUDE "engine/bcd.asm"
-
INCLUDE "engine/init_player_data.asm"
-
INCLUDE "engine/get_bag_item_quantity.asm"
-
-INCLUDE "engine/overworld/npc_pathfinding.asm"
-
+INCLUDE "engine/pathfinding.asm"
INCLUDE "engine/hp_bar.asm"
INCLUDE "engine/hidden_object_functions3.asm"
-SECTION "Graphics", ROMX ; BANK $04
+SECTION "Graphics (BANK 4)", ROMX
PokemonLogoJapanGraphics: INCBIN "gfx/pokemon_logo_japan.2bpp"
FontGraphics: INCBIN "gfx/font.1bpp"
@@ -222,246 +225,254 @@ INCLUDE "engine/battle/moveEffects/substitute_effect.asm"
INCLUDE "engine/menu/pc.asm"
-SECTION "bank06", ROMX
+SECTION "bank6", ROMX
-INCLUDE "data/mapHeaders/celadoncity.asm"
-INCLUDE "data/mapObjects/celadoncity.asm"
-CeladonCityBlocks: INCBIN "maps/celadoncity.blk"
+INCLUDE "data/mapHeaders/CeladonCity.asm"
+INCLUDE "data/mapObjects/CeladonCity.asm"
+CeladonCity_Blocks: INCBIN "maps/CeladonCity.blk"
-INCLUDE "data/mapHeaders/pallettown.asm"
-INCLUDE "data/mapObjects/pallettown.asm"
-PalletTownBlocks: INCBIN "maps/pallettown.blk"
+INCLUDE "data/mapHeaders/PalletTown.asm"
+INCLUDE "data/mapObjects/PalletTown.asm"
+PalletTown_Blocks: INCBIN "maps/PalletTown.blk"
-INCLUDE "data/mapHeaders/viridiancity.asm"
-INCLUDE "data/mapObjects/viridiancity.asm"
-ViridianCityBlocks: INCBIN "maps/viridiancity.blk"
+INCLUDE "data/mapHeaders/ViridianCity.asm"
+INCLUDE "data/mapObjects/ViridianCity.asm"
+ViridianCity_Blocks: INCBIN "maps/ViridianCity.blk"
-INCLUDE "data/mapHeaders/pewtercity.asm"
-INCLUDE "data/mapObjects/pewtercity.asm"
-PewterCityBlocks: INCBIN "maps/pewtercity.blk"
+INCLUDE "data/mapHeaders/PewterCity.asm"
+ ds 1
+INCLUDE "data/mapObjects/PewterCity.asm"
+PewterCity_Blocks: INCBIN "maps/PewterCity.blk"
-INCLUDE "data/mapHeaders/ceruleancity.asm"
-INCLUDE "data/mapObjects/ceruleancity.asm"
-CeruleanCityBlocks: INCBIN "maps/ceruleancity.blk"
+INCLUDE "data/mapHeaders/CeruleanCity.asm"
+INCLUDE "data/mapObjects/CeruleanCity.asm"
+CeruleanCity_Blocks: INCBIN "maps/CeruleanCity.blk"
-INCLUDE "data/mapHeaders/vermilioncity.asm"
-INCLUDE "data/mapObjects/vermilioncity.asm"
-VermilionCityBlocks: INCBIN "maps/vermilioncity.blk"
-INCLUDE "data/mapHeaders/fuchsiacity.asm"
-INCLUDE "data/mapObjects/fuchsiacity.asm"
-FuchsiaCityBlocks: INCBIN "maps/fuchsiacity.blk"
+INCLUDE "data/mapHeaders/VermilionCity.asm"
+INCLUDE "data/mapObjects/VermilionCity.asm"
+VermilionCity_Blocks: INCBIN "maps/VermilionCity.blk"
+INCLUDE "data/mapHeaders/FuchsiaCity.asm"
+INCLUDE "data/mapObjects/FuchsiaCity.asm"
+FuchsiaCity_Blocks: INCBIN "maps/FuchsiaCity.blk"
-INCLUDE "scripts/pallettown.asm"
-INCLUDE "scripts/viridiancity.asm"
-INCLUDE "scripts/pewtercity.asm"
-INCLUDE "scripts/ceruleancity.asm"
-INCLUDE "scripts/vermilioncity.asm"
-INCLUDE "scripts/celadoncity.asm"
-INCLUDE "scripts/fuchsiacity.asm"
+INCLUDE "scripts/PalletTown.asm"
+INCLUDE "scripts/ViridianCity.asm"
+INCLUDE "scripts/PewterCity.asm"
+INCLUDE "scripts/CeruleanCity.asm"
+INCLUDE "scripts/VermilionCity.asm"
+INCLUDE "scripts/CeladonCity.asm"
+INCLUDE "scripts/FuchsiaCity.asm"
-INCLUDE "data/mapHeaders/blueshouse.asm"
-INCLUDE "scripts/blueshouse.asm"
-INCLUDE "data/mapObjects/blueshouse.asm"
-BluesHouseBlocks: INCBIN "maps/blueshouse.blk"
+INCLUDE "data/mapHeaders/BluesHouse.asm"
+INCLUDE "scripts/BluesHouse.asm"
+INCLUDE "data/mapObjects/BluesHouse.asm"
+BluesHouse_Blocks: INCBIN "maps/BluesHouse.blk"
-INCLUDE "data/mapHeaders/vermilionhouse3.asm"
-INCLUDE "scripts/vermilionhouse3.asm"
-INCLUDE "data/mapObjects/vermilionhouse3.asm"
-VermilionHouse3Blocks: INCBIN "maps/vermilionhouse3.blk"
+INCLUDE "data/mapHeaders/VermilionTradeHouse.asm"
+INCLUDE "scripts/VermilionTradeHouse.asm"
+INCLUDE "data/mapObjects/VermilionTradeHouse.asm"
+VermilionTradeHouse_Blocks: INCBIN "maps/VermilionTradeHouse.blk"
-INCLUDE "data/mapHeaders/indigoplateaulobby.asm"
-INCLUDE "scripts/indigoplateaulobby.asm"
-INCLUDE "data/mapObjects/indigoplateaulobby.asm"
-IndigoPlateauLobbyBlocks: INCBIN "maps/indigoplateaulobby.blk"
+INCLUDE "data/mapHeaders/IndigoPlateauLobby.asm"
+INCLUDE "scripts/IndigoPlateauLobby.asm"
+INCLUDE "data/mapObjects/IndigoPlateauLobby.asm"
+IndigoPlateauLobby_Blocks: INCBIN "maps/IndigoPlateauLobby.blk"
-INCLUDE "data/mapHeaders/silphco4.asm"
-INCLUDE "scripts/silphco4.asm"
-INCLUDE "data/mapObjects/silphco4.asm"
-SilphCo4Blocks: INCBIN "maps/silphco4.blk"
+INCLUDE "data/mapHeaders/SilphCo4F.asm"
+INCLUDE "scripts/SilphCo4F.asm"
+INCLUDE "data/mapObjects/SilphCo4F.asm"
+SilphCo4F_Blocks: INCBIN "maps/SilphCo4F.blk"
-INCLUDE "data/mapHeaders/silphco5.asm"
-INCLUDE "scripts/silphco5.asm"
-INCLUDE "data/mapObjects/silphco5.asm"
-SilphCo5Blocks: INCBIN "maps/silphco5.blk"
+INCLUDE "data/mapHeaders/SilphCo5F.asm"
+INCLUDE "scripts/SilphCo5F.asm"
+INCLUDE "data/mapObjects/SilphCo5F.asm"
+SilphCo5F_Blocks: INCBIN "maps/SilphCo5F.blk"
-INCLUDE "data/mapHeaders/silphco6.asm"
-INCLUDE "scripts/silphco6.asm"
-INCLUDE "data/mapObjects/silphco6.asm"
-SilphCo6Blocks: INCBIN "maps/silphco6.blk"
+INCLUDE "data/mapHeaders/SilphCo6F.asm"
+INCLUDE "scripts/SilphCo6F.asm"
+INCLUDE "data/mapObjects/SilphCo6F.asm"
+SilphCo6F_Blocks: INCBIN "maps/SilphCo6F.blk"
INCLUDE "engine/overworld/npc_movement.asm"
INCLUDE "engine/overworld/doors.asm"
INCLUDE "engine/overworld/ledges.asm"
-SECTION "bank07", ROMX
-
-INCLUDE "data/mapHeaders/cinnabarisland.asm"
-INCLUDE "data/mapObjects/cinnabarisland.asm"
-CinnabarIslandBlocks: INCBIN "maps/cinnabarisland.blk"
-
-INCLUDE "data/mapHeaders/route1.asm"
-INCLUDE "data/mapObjects/route1.asm"
-Route1Blocks: INCBIN "maps/route1.blk"
-
-UndergroundPathEntranceRoute8Blocks: INCBIN "maps/undergroundpathentranceroute8.blk"
-OaksLabBlocks: INCBIN "maps/oakslab.blk"
-ViridianHouseBlocks:
-Route2HouseBlocks:
-PewterHouse1Blocks:
-PewterHouse2Blocks:
-CeruleanHouse1Blocks:
-VermilionHouse1Blocks:
-LavenderHouse1Blocks:
-LavenderHouse2Blocks:
-SaffronHouse1Blocks:
-SaffronHouse2Blocks:
-Route16HouseBlocks:
-NameRaterBlocks: INCBIN "maps/viridianhouse.blk"
-SchoolBlocks:
-CeladonMansion5Blocks: INCBIN "maps/school.blk"
-CeruleanHouseTrashedBlocks: INCBIN "maps/ceruleanhousetrashed.blk"
-DiglettsCaveRoute2Blocks:
-DiglettsCaveEntranceRoute11Blocks: INCBIN "maps/diglettscaveroute2.blk"
+SECTION "bank7", ROMX
+
+INCLUDE "data/mapHeaders/CinnabarIsland.asm"
+INCLUDE "data/mapObjects/CinnabarIsland.asm"
+CinnabarIsland_Blocks: INCBIN "maps/CinnabarIsland.blk"
+
+INCLUDE "data/mapHeaders/Route1.asm"
+INCLUDE "data/mapObjects/Route1.asm"
+Route1_Blocks: INCBIN "maps/Route1.blk"
+
+UndergroundPathRoute8_Blocks: INCBIN "maps/UndergroundPathRoute8.blk"
+
+OaksLab_Blocks: INCBIN "maps/OaksLab.blk"
+
+MrPsychicsHouse_Blocks:
+NameRatersHouse_Blocks:
+MrFujisHouse_Blocks:
+Route16FlyHouse_Blocks:
+Route2TradeHouse_Blocks:
+SaffronPidgeyHouse_Blocks:
+VermilionPidgeyHouse_Blocks:
+LavenderCuboneHouse_Blocks:
+CeruleanTradeHouse_Blocks:
+PewterNidoranHouse_Blocks:
+PewterSpeechHouse_Blocks:
+ViridianNicknameHouse_Blocks: INCBIN "maps/ViridianNicknameHouse.blk"
+
+CeladonMansionRoofHouse_Blocks:
+ViridianSchoolHouse_Blocks: INCBIN "maps/ViridianSchoolHouse.blk"
+
+CeruleanTrashedHouse_Blocks: INCBIN "maps/CeruleanTrashedHouse.blk"
+
+DiglettsCaveRoute11_Blocks:
+DiglettsCaveRoute2_Blocks: INCBIN "maps/DiglettsCaveRoute2.blk"
INCLUDE "engine/clear_save.asm"
+
INCLUDE "engine/predefs7.asm"
-INCLUDE "scripts/cinnabarisland.asm"
-INCLUDE "scripts/route1.asm"
-
-INCLUDE "data/mapHeaders/oakslab.asm"
-INCLUDE "scripts/oakslab.asm"
-INCLUDE "data/mapObjects/oakslab.asm"
-
-INCLUDE "data/mapHeaders/viridianmart.asm"
-INCLUDE "scripts/viridianmart.asm"
-INCLUDE "data/mapObjects/viridianmart.asm"
-ViridianMartBlocks:
-CeladonMartBlocks: INCBIN "maps/viridianmart.blk"
-
-INCLUDE "data/mapHeaders/school.asm"
-INCLUDE "scripts/school.asm"
-INCLUDE "data/mapObjects/school.asm"
-
-INCLUDE "data/mapHeaders/viridianhouse.asm"
-INCLUDE "scripts/viridianhouse.asm"
-INCLUDE "data/mapObjects/viridianhouse.asm"
-
-INCLUDE "data/mapHeaders/pewterhouse1.asm"
-INCLUDE "scripts/pewterhouse1.asm"
-INCLUDE "data/mapObjects/pewterhouse1.asm"
-
-INCLUDE "data/mapHeaders/pewterhouse2.asm"
-INCLUDE "scripts/pewterhouse2.asm"
-INCLUDE "data/mapObjects/pewterhouse2.asm"
-
-INCLUDE "data/mapHeaders/ceruleanhousetrashed.asm"
-INCLUDE "scripts/ceruleanhousetrashed.asm"
-INCLUDE "data/mapObjects/ceruleanhousetrashed.asm"
-
-INCLUDE "data/mapHeaders/ceruleanhouse1.asm"
-INCLUDE "scripts/ceruleanhouse1.asm"
-INCLUDE "data/mapObjects/ceruleanhouse1.asm"
-
-INCLUDE "data/mapHeaders/bikeshop.asm"
-INCLUDE "scripts/bikeshop.asm"
-INCLUDE "data/mapObjects/bikeshop.asm"
-BikeShopBlocks: INCBIN "maps/bikeshop.blk"
-
-INCLUDE "data/mapHeaders/lavenderhouse1.asm"
-INCLUDE "scripts/lavenderhouse1.asm"
-INCLUDE "data/mapObjects/lavenderhouse1.asm"
-
-INCLUDE "data/mapHeaders/lavenderhouse2.asm"
-INCLUDE "scripts/lavenderhouse2.asm"
-INCLUDE "data/mapObjects/lavenderhouse2.asm"
-
-INCLUDE "data/mapHeaders/namerater.asm"
-INCLUDE "scripts/namerater.asm"
-INCLUDE "data/mapObjects/namerater.asm"
-
-INCLUDE "data/mapHeaders/vermilionhouse1.asm"
-INCLUDE "scripts/vermilionhouse1.asm"
-INCLUDE "data/mapObjects/vermilionhouse1.asm"
-
-INCLUDE "data/mapHeaders/vermiliondock.asm"
-INCLUDE "scripts/vermiliondock.asm"
-INCLUDE "data/mapObjects/vermiliondock.asm"
-VermilionDockBlocks: INCBIN "maps/vermiliondock.blk"
-
-INCLUDE "data/mapHeaders/celadonmansion5.asm"
-INCLUDE "scripts/celadonmansion5.asm"
-INCLUDE "data/mapObjects/celadonmansion5.asm"
-
-INCLUDE "data/mapHeaders/fuchsiamart.asm"
-INCLUDE "scripts/fuchsiamart.asm"
-INCLUDE "data/mapObjects/fuchsiamart.asm"
-FuchsiaMartBlocks: INCBIN "maps/fuchsiamart.blk"
-
-INCLUDE "data/mapHeaders/saffronhouse1.asm"
-INCLUDE "scripts/saffronhouse1.asm"
-INCLUDE "data/mapObjects/saffronhouse1.asm"
-
-INCLUDE "data/mapHeaders/saffronhouse2.asm"
-INCLUDE "scripts/saffronhouse2.asm"
-INCLUDE "data/mapObjects/saffronhouse2.asm"
-
-INCLUDE "data/mapHeaders/diglettscaveroute2.asm"
-INCLUDE "scripts/diglettscaveroute2.asm"
-INCLUDE "data/mapObjects/diglettscaveroute2.asm"
-
-INCLUDE "data/mapHeaders/route2house.asm"
-INCLUDE "scripts/route2house.asm"
-INCLUDE "data/mapObjects/route2house.asm"
-
-INCLUDE "data/mapHeaders/route5gate.asm"
-INCLUDE "scripts/route5gate.asm"
-INCLUDE "data/mapObjects/route5gate.asm"
-Route5GateBlocks: INCBIN "maps/route5gate.blk"
-
-INCLUDE "data/mapHeaders/route6gate.asm"
-INCLUDE "scripts/route6gate.asm"
-INCLUDE "data/mapObjects/route6gate.asm"
-Route6GateBlocks: INCBIN "maps/route6gate.blk"
-
-INCLUDE "data/mapHeaders/route7gate.asm"
-INCLUDE "scripts/route7gate.asm"
-INCLUDE "data/mapObjects/route7gate.asm"
-Route7GateBlocks: INCBIN "maps/route7gate.blk"
-
-INCLUDE "data/mapHeaders/route8gate.asm"
-INCLUDE "scripts/route8gate.asm"
-INCLUDE "data/mapObjects/route8gate.asm"
-Route8GateBlocks: INCBIN "maps/route8gate.blk"
-
-INCLUDE "data/mapHeaders/undergroundpathentranceroute8.asm"
-INCLUDE "scripts/undergroundpathentranceroute8.asm"
-INCLUDE "data/mapObjects/undergroundpathentranceroute8.asm"
-
-INCLUDE "data/mapHeaders/powerplant.asm"
-INCLUDE "scripts/powerplant.asm"
-INCLUDE "data/mapObjects/powerplant.asm"
-PowerPlantBlocks: INCBIN "maps/powerplant.blk"
-
-INCLUDE "data/mapHeaders/diglettscaveroute11.asm"
-INCLUDE "scripts/diglettscaveroute11.asm"
-INCLUDE "data/mapObjects/diglettscaveroute11.asm"
-
-INCLUDE "data/mapHeaders/route16house.asm"
-INCLUDE "scripts/route16house.asm"
-INCLUDE "data/mapObjects/route16house.asm"
-
-INCLUDE "data/mapHeaders/route22gate.asm"
-INCLUDE "scripts/route22gate.asm"
-INCLUDE "data/mapObjects/route22gate.asm"
-Route22GateBlocks: INCBIN "maps/route22gate.blk"
-
-INCLUDE "data/mapHeaders/billshouse.asm"
-INCLUDE "scripts/billshouse.asm"
-INCLUDE "data/mapObjects/billshouse.asm"
-BillsHouseBlocks: INCBIN "maps/billshouse.blk"
+INCLUDE "scripts/CinnabarIsland.asm"
+
+INCLUDE "scripts/Route1.asm"
+
+INCLUDE "data/mapHeaders/OaksLab.asm"
+INCLUDE "scripts/OaksLab.asm"
+INCLUDE "data/mapObjects/OaksLab.asm"
+
+INCLUDE "data/mapHeaders/ViridianMart.asm"
+INCLUDE "scripts/ViridianMart.asm"
+INCLUDE "data/mapObjects/ViridianMart.asm"
+ViridianMart_Blocks: INCBIN "maps/ViridianMart.blk"
+
+INCLUDE "data/mapHeaders/ViridianSchoolHouse.asm"
+INCLUDE "scripts/ViridianSchoolHouse.asm"
+INCLUDE "data/mapObjects/ViridianSchoolHouse.asm"
+
+INCLUDE "data/mapHeaders/ViridianNicknameHouse.asm"
+ ds 1
+INCLUDE "scripts/ViridianNicknameHouse.asm"
+INCLUDE "data/mapObjects/ViridianNicknameHouse.asm"
+
+INCLUDE "data/mapHeaders/PewterNidoranHouse.asm"
+INCLUDE "scripts/PewterNidoranHouse.asm"
+INCLUDE "data/mapObjects/PewterNidoranHouse.asm"
+
+INCLUDE "data/mapHeaders/PewterSpeechHouse.asm"
+INCLUDE "scripts/PewterSpeechHouse.asm"
+INCLUDE "data/mapObjects/PewterSpeechHouse.asm"
+
+INCLUDE "data/mapHeaders/CeruleanTrashedHouse.asm"
+INCLUDE "scripts/CeruleanTrashedHouse.asm"
+INCLUDE "data/mapObjects/CeruleanTrashedHouse.asm"
+
+INCLUDE "data/mapHeaders/CeruleanTradeHouse.asm"
+INCLUDE "scripts/CeruleanTradeHouse.asm"
+INCLUDE "data/mapObjects/CeruleanTradeHouse.asm"
+
+INCLUDE "data/mapHeaders/BikeShop.asm"
+INCLUDE "scripts/BikeShop.asm"
+INCLUDE "data/mapObjects/BikeShop.asm"
+BikeShop_Blocks: INCBIN "maps/BikeShop.blk"
+
+INCLUDE "data/mapHeaders/MrFujisHouse.asm"
+INCLUDE "scripts/MrFujisHouse.asm"
+INCLUDE "data/mapObjects/MrFujisHouse.asm"
+
+INCLUDE "data/mapHeaders/LavenderCuboneHouse.asm"
+INCLUDE "scripts/LavenderCuboneHouse.asm"
+INCLUDE "data/mapObjects/LavenderCuboneHouse.asm"
+
+INCLUDE "data/mapHeaders/NameRatersHouse.asm"
+INCLUDE "scripts/NameRatersHouse.asm"
+INCLUDE "data/mapObjects/NameRatersHouse.asm"
+
+INCLUDE "data/mapHeaders/VermilionPidgeyHouse.asm"
+INCLUDE "scripts/VermilionPidgeyHouse.asm"
+INCLUDE "data/mapObjects/VermilionPidgeyHouse.asm"
+
+INCLUDE "data/mapHeaders/VermilionDock.asm"
+INCLUDE "scripts/VermilionDock.asm"
+INCLUDE "data/mapObjects/VermilionDock.asm"
+VermilionDock_Blocks: INCBIN "maps/VermilionDock.blk"
+
+INCLUDE "data/mapHeaders/CeladonMansionRoofHouse.asm"
+INCLUDE "scripts/CeladonMansionRoofHouse.asm"
+INCLUDE "data/mapObjects/CeladonMansionRoofHouse.asm"
+
+INCLUDE "data/mapHeaders/FuchsiaMart.asm"
+INCLUDE "scripts/FuchsiaMart.asm"
+INCLUDE "data/mapObjects/FuchsiaMart.asm"
+FuchsiaMart_Blocks: INCBIN "maps/FuchsiaMart.blk"
+
+INCLUDE "data/mapHeaders/SaffronPidgeyHouse.asm"
+INCLUDE "scripts/SaffronPidgeyHouse.asm"
+INCLUDE "data/mapObjects/SaffronPidgeyHouse.asm"
+
+INCLUDE "data/mapHeaders/MrPsychicsHouse.asm"
+INCLUDE "scripts/MrPsychicsHouse.asm"
+INCLUDE "data/mapObjects/MrPsychicsHouse.asm"
+
+INCLUDE "data/mapHeaders/DiglettsCaveRoute2.asm"
+INCLUDE "scripts/DiglettsCaveRoute2.asm"
+INCLUDE "data/mapObjects/DiglettsCaveRoute2.asm"
+
+INCLUDE "data/mapHeaders/Route2TradeHouse.asm"
+INCLUDE "scripts/Route2TradeHouse.asm"
+INCLUDE "data/mapObjects/Route2TradeHouse.asm"
+
+INCLUDE "data/mapHeaders/Route5Gate.asm"
+INCLUDE "scripts/Route5Gate.asm"
+INCLUDE "data/mapObjects/Route5Gate.asm"
+Route5Gate_Blocks: INCBIN "maps/Route5Gate.blk"
+
+INCLUDE "data/mapHeaders/Route6Gate.asm"
+INCLUDE "scripts/Route6Gate.asm"
+INCLUDE "data/mapObjects/Route6Gate.asm"
+Route6Gate_Blocks: INCBIN "maps/Route6Gate.blk"
+
+INCLUDE "data/mapHeaders/Route7Gate.asm"
+INCLUDE "scripts/Route7Gate.asm"
+INCLUDE "data/mapObjects/Route7Gate.asm"
+Route7Gate_Blocks: INCBIN "maps/Route7Gate.blk"
+
+INCLUDE "data/mapHeaders/Route8Gate.asm"
+INCLUDE "scripts/Route8Gate.asm"
+INCLUDE "data/mapObjects/Route8Gate.asm"
+Route8Gate_Blocks: INCBIN "maps/Route8Gate.blk"
+
+INCLUDE "data/mapHeaders/UndergroundPathRoute8.asm"
+INCLUDE "scripts/UndergroundPathRoute8.asm"
+INCLUDE "data/mapObjects/UndergroundPathRoute8.asm"
+
+INCLUDE "data/mapHeaders/PowerPlant.asm"
+INCLUDE "scripts/PowerPlant.asm"
+INCLUDE "data/mapObjects/PowerPlant.asm"
+PowerPlant_Blocks: INCBIN "maps/PowerPlant.blk"
+
+INCLUDE "data/mapHeaders/DiglettsCaveRoute11.asm"
+INCLUDE "scripts/DiglettsCaveRoute11.asm"
+INCLUDE "data/mapObjects/DiglettsCaveRoute11.asm"
+
+INCLUDE "data/mapHeaders/Route16FlyHouse.asm"
+INCLUDE "scripts/Route16FlyHouse.asm"
+INCLUDE "data/mapObjects/Route16FlyHouse.asm"
+
+INCLUDE "data/mapHeaders/Route22Gate.asm"
+INCLUDE "scripts/Route22Gate.asm"
+INCLUDE "data/mapObjects/Route22Gate.asm"
+Route22Gate_Blocks: INCBIN "maps/Route22Gate.blk"
+
+INCLUDE "data/mapHeaders/BillsHouse.asm"
+INCLUDE "scripts/BillsHouse.asm"
+INCLUDE "data/mapObjects/BillsHouse.asm"
+BillsHouse_Blocks: INCBIN "maps/BillsHouse.blk"
INCLUDE "engine/menu/oaks_pc.asm"
@@ -470,66 +481,66 @@ INCLUDE "engine/hidden_object_functions7.asm"
SECTION "Pics 1", ROMX ; BANK $09
-RhydonPicFront: INCBIN "pic/ymon/rhydon.pic"
-RhydonPicBack: INCBIN "pic/monback/rhydonb.pic"
-KangaskhanPicFront: INCBIN "pic/ymon/kangaskhan.pic"
-KangaskhanPicBack: INCBIN "pic/monback/kangaskhanb.pic"
-NidoranMPicFront: INCBIN "pic/ymon/nidoranm.pic"
-NidoranMPicBack: INCBIN "pic/monback/nidoranmb.pic"
-ClefairyPicFront: INCBIN "pic/ymon/clefairy.pic"
-ClefairyPicBack: INCBIN "pic/monback/clefairyb.pic"
-SpearowPicFront: INCBIN "pic/ymon/spearow.pic"
-SpearowPicBack: INCBIN "pic/monback/spearowb.pic"
-VoltorbPicFront: INCBIN "pic/ymon/voltorb.pic"
-VoltorbPicBack: INCBIN "pic/monback/voltorbb.pic"
-NidokingPicFront: INCBIN "pic/ymon/nidoking.pic"
-NidokingPicBack: INCBIN "pic/monback/nidokingb.pic"
-SlowbroPicFront: INCBIN "pic/ymon/slowbro.pic"
-SlowbroPicBack: INCBIN "pic/monback/slowbrob.pic"
-IvysaurPicFront: INCBIN "pic/ymon/ivysaur.pic"
-IvysaurPicBack: INCBIN "pic/monback/ivysaurb.pic"
-ExeggutorPicFront: INCBIN "pic/ymon/exeggutor.pic"
-ExeggutorPicBack: INCBIN "pic/monback/exeggutorb.pic"
-LickitungPicFront: INCBIN "pic/ymon/lickitung.pic"
-LickitungPicBack: INCBIN "pic/monback/lickitungb.pic"
-ExeggcutePicFront: INCBIN "pic/ymon/exeggcute.pic"
-ExeggcutePicBack: INCBIN "pic/monback/exeggcuteb.pic"
-GrimerPicFront: INCBIN "pic/ymon/grimer.pic"
-GrimerPicBack: INCBIN "pic/monback/grimerb.pic"
-GengarPicFront: INCBIN "pic/ymon/gengar.pic"
-GengarPicBack: INCBIN "pic/monback/gengarb.pic"
-NidoranFPicFront: INCBIN "pic/ymon/nidoranf.pic"
-NidoranFPicBack: INCBIN "pic/monback/nidoranfb.pic"
-NidoqueenPicFront: INCBIN "pic/ymon/nidoqueen.pic"
-NidoqueenPicBack: INCBIN "pic/monback/nidoqueenb.pic"
-CubonePicFront: INCBIN "pic/ymon/cubone.pic"
-CubonePicBack: INCBIN "pic/monback/cuboneb.pic"
-RhyhornPicFront: INCBIN "pic/ymon/rhyhorn.pic"
-RhyhornPicBack: INCBIN "pic/monback/rhyhornb.pic"
-LaprasPicFront: INCBIN "pic/ymon/lapras.pic"
-LaprasPicBack: INCBIN "pic/monback/laprasb.pic"
-ArcaninePicFront: INCBIN "pic/ymon/arcanine.pic"
-ArcaninePicBack: INCBIN "pic/monback/arcanineb.pic"
-MewPicFront: INCBIN "pic/ymon/mew.pic"
-MewPicBack: INCBIN "pic/monback/mewb.pic"
-GyaradosPicFront: INCBIN "pic/ymon/gyarados.pic"
-GyaradosPicBack: INCBIN "pic/monback/gyaradosb.pic"
-ShellderPicFront: INCBIN "pic/ymon/shellder.pic"
-ShellderPicBack: INCBIN "pic/monback/shellderb.pic"
-TentacoolPicFront: INCBIN "pic/ymon/tentacool.pic"
-TentacoolPicBack: INCBIN "pic/monback/tentacoolb.pic"
-GastlyPicFront: INCBIN "pic/ymon/gastly.pic"
-GastlyPicBack: INCBIN "pic/monback/gastlyb.pic"
-ScytherPicFront: INCBIN "pic/ymon/scyther.pic"
-ScytherPicBack: INCBIN "pic/monback/scytherb.pic"
-StaryuPicFront: INCBIN "pic/ymon/staryu.pic"
-StaryuPicBack: INCBIN "pic/monback/staryub.pic"
-BlastoisePicFront: INCBIN "pic/ymon/blastoise.pic"
-BlastoisePicBack: INCBIN "pic/monback/blastoiseb.pic"
-PinsirPicFront: INCBIN "pic/ymon/pinsir.pic"
-PinsirPicBack: INCBIN "pic/monback/pinsirb.pic"
-TangelaPicFront: INCBIN "pic/ymon/tangela.pic"
-TangelaPicBack: INCBIN "pic/monback/tangelab.pic"
+RhydonPicFront:: INCBIN "pic/ymon/rhydon.pic"
+RhydonPicBack:: INCBIN "pic/monback/rhydonb.pic"
+KangaskhanPicFront:: INCBIN "pic/ymon/kangaskhan.pic"
+KangaskhanPicBack:: INCBIN "pic/monback/kangaskhanb.pic"
+NidoranMPicFront:: INCBIN "pic/ymon/nidoranm.pic"
+NidoranMPicBack:: INCBIN "pic/monback/nidoranmb.pic"
+ClefairyPicFront:: INCBIN "pic/ymon/clefairy.pic"
+ClefairyPicBack:: INCBIN "pic/monback/clefairyb.pic"
+SpearowPicFront:: INCBIN "pic/ymon/spearow.pic"
+SpearowPicBack:: INCBIN "pic/monback/spearowb.pic"
+VoltorbPicFront:: INCBIN "pic/ymon/voltorb.pic"
+VoltorbPicBack:: INCBIN "pic/monback/voltorbb.pic"
+NidokingPicFront:: INCBIN "pic/ymon/nidoking.pic"
+NidokingPicBack:: INCBIN "pic/monback/nidokingb.pic"
+SlowbroPicFront:: INCBIN "pic/ymon/slowbro.pic"
+SlowbroPicBack:: INCBIN "pic/monback/slowbrob.pic"
+IvysaurPicFront:: INCBIN "pic/ymon/ivysaur.pic"
+IvysaurPicBack:: INCBIN "pic/monback/ivysaurb.pic"
+ExeggutorPicFront:: INCBIN "pic/ymon/exeggutor.pic"
+ExeggutorPicBack:: INCBIN "pic/monback/exeggutorb.pic"
+LickitungPicFront:: INCBIN "pic/ymon/lickitung.pic"
+LickitungPicBack:: INCBIN "pic/monback/lickitungb.pic"
+ExeggcutePicFront:: INCBIN "pic/ymon/exeggcute.pic"
+ExeggcutePicBack:: INCBIN "pic/monback/exeggcuteb.pic"
+GrimerPicFront:: INCBIN "pic/ymon/grimer.pic"
+GrimerPicBack:: INCBIN "pic/monback/grimerb.pic"
+GengarPicFront:: INCBIN "pic/ymon/gengar.pic"
+GengarPicBack:: INCBIN "pic/monback/gengarb.pic"
+NidoranFPicFront:: INCBIN "pic/ymon/nidoranf.pic"
+NidoranFPicBack:: INCBIN "pic/monback/nidoranfb.pic"
+NidoqueenPicFront:: INCBIN "pic/ymon/nidoqueen.pic"
+NidoqueenPicBack:: INCBIN "pic/monback/nidoqueenb.pic"
+CubonePicFront:: INCBIN "pic/ymon/cubone.pic"
+CubonePicBack:: INCBIN "pic/monback/cuboneb.pic"
+RhyhornPicFront:: INCBIN "pic/ymon/rhyhorn.pic"
+RhyhornPicBack:: INCBIN "pic/monback/rhyhornb.pic"
+LaprasPicFront:: INCBIN "pic/ymon/lapras.pic"
+LaprasPicBack:: INCBIN "pic/monback/laprasb.pic"
+ArcaninePicFront:: INCBIN "pic/ymon/arcanine.pic"
+ArcaninePicBack:: INCBIN "pic/monback/arcanineb.pic"
+MewPicFront:: INCBIN "pic/ymon/mew.pic"
+MewPicBack:: INCBIN "pic/monback/mewb.pic"
+GyaradosPicFront:: INCBIN "pic/ymon/gyarados.pic"
+GyaradosPicBack:: INCBIN "pic/monback/gyaradosb.pic"
+ShellderPicFront:: INCBIN "pic/ymon/shellder.pic"
+ShellderPicBack:: INCBIN "pic/monback/shellderb.pic"
+TentacoolPicFront:: INCBIN "pic/ymon/tentacool.pic"
+TentacoolPicBack:: INCBIN "pic/monback/tentacoolb.pic"
+GastlyPicFront:: INCBIN "pic/ymon/gastly.pic"
+GastlyPicBack:: INCBIN "pic/monback/gastlyb.pic"
+ScytherPicFront:: INCBIN "pic/ymon/scyther.pic"
+ScytherPicBack:: INCBIN "pic/monback/scytherb.pic"
+StaryuPicFront:: INCBIN "pic/ymon/staryu.pic"
+StaryuPicBack:: INCBIN "pic/monback/staryub.pic"
+BlastoisePicFront:: INCBIN "pic/ymon/blastoise.pic"
+BlastoisePicBack:: INCBIN "pic/monback/blastoiseb.pic"
+PinsirPicFront:: INCBIN "pic/ymon/pinsir.pic"
+PinsirPicBack:: INCBIN "pic/monback/pinsirb.pic"
+TangelaPicFront:: INCBIN "pic/ymon/tangela.pic"
+TangelaPicBack:: INCBIN "pic/monback/tangelab.pic"
INCLUDE "engine/battle/print_type.asm"
INCLUDE "engine/battle/save_trainer_name.asm"
@@ -537,70 +548,70 @@ INCLUDE "engine/battle/save_trainer_name.asm"
SECTION "Pics 2", ROMX ; BANK $0A
-GrowlithePicFront: INCBIN "pic/ymon/growlithe.pic"
-GrowlithePicBack: INCBIN "pic/monback/growlitheb.pic"
-OnixPicFront: INCBIN "pic/ymon/onix.pic"
-OnixPicBack: INCBIN "pic/monback/onixb.pic"
-FearowPicFront: INCBIN "pic/ymon/fearow.pic"
-FearowPicBack: INCBIN "pic/monback/fearowb.pic"
-PidgeyPicFront: INCBIN "pic/ymon/pidgey.pic"
-PidgeyPicBack: INCBIN "pic/monback/pidgeyb.pic"
-SlowpokePicFront: INCBIN "pic/ymon/slowpoke.pic"
-SlowpokePicBack: INCBIN "pic/monback/slowpokeb.pic"
-KadabraPicFront: INCBIN "pic/ymon/kadabra.pic"
-KadabraPicBack: INCBIN "pic/monback/kadabrab.pic"
-GravelerPicFront: INCBIN "pic/ymon/graveler.pic"
-GravelerPicBack: INCBIN "pic/monback/gravelerb.pic"
-ChanseyPicFront: INCBIN "pic/ymon/chansey.pic"
-ChanseyPicBack: INCBIN "pic/monback/chanseyb.pic"
-MachokePicFront: INCBIN "pic/ymon/machoke.pic"
-MachokePicBack: INCBIN "pic/monback/machokeb.pic"
-MrMimePicFront: INCBIN "pic/ymon/mr.mime.pic"
-MrMimePicBack: INCBIN "pic/monback/mr.mimeb.pic"
-HitmonleePicFront: INCBIN "pic/ymon/hitmonlee.pic"
-HitmonleePicBack: INCBIN "pic/monback/hitmonleeb.pic"
-HitmonchanPicFront: INCBIN "pic/ymon/hitmonchan.pic"
-HitmonchanPicBack: INCBIN "pic/monback/hitmonchanb.pic"
-ArbokPicFront: INCBIN "pic/ymon/arbok.pic"
-ArbokPicBack: INCBIN "pic/monback/arbokb.pic"
-ParasectPicFront: INCBIN "pic/ymon/parasect.pic"
-ParasectPicBack: INCBIN "pic/monback/parasectb.pic"
-PsyduckPicFront: INCBIN "pic/ymon/psyduck.pic"
-PsyduckPicBack: INCBIN "pic/monback/psyduckb.pic"
-DrowzeePicFront: INCBIN "pic/ymon/drowzee.pic"
-DrowzeePicBack: INCBIN "pic/monback/drowzeeb.pic"
-GolemPicFront: INCBIN "pic/ymon/golem.pic"
-GolemPicBack: INCBIN "pic/monback/golemb.pic"
-MagmarPicFront: INCBIN "pic/ymon/magmar.pic"
-MagmarPicBack: INCBIN "pic/monback/magmarb.pic"
-ElectabuzzPicFront: INCBIN "pic/ymon/electabuzz.pic"
-ElectabuzzPicBack: INCBIN "pic/monback/electabuzzb.pic"
-MagnetonPicFront: INCBIN "pic/ymon/magneton.pic"
-MagnetonPicBack: INCBIN "pic/monback/magnetonb.pic"
-KoffingPicFront: INCBIN "pic/ymon/koffing.pic"
-KoffingPicBack: INCBIN "pic/monback/koffingb.pic"
-MankeyPicFront: INCBIN "pic/ymon/mankey.pic"
-MankeyPicBack: INCBIN "pic/monback/mankeyb.pic"
-SeelPicFront: INCBIN "pic/ymon/seel.pic"
-SeelPicBack: INCBIN "pic/monback/seelb.pic"
-DiglettPicFront: INCBIN "pic/ymon/diglett.pic"
-DiglettPicBack: INCBIN "pic/monback/diglettb.pic"
-TaurosPicFront: INCBIN "pic/ymon/tauros.pic"
-TaurosPicBack: INCBIN "pic/monback/taurosb.pic"
-FarfetchdPicFront: INCBIN "pic/ymon/farfetchd.pic"
-FarfetchdPicBack: INCBIN "pic/monback/farfetchdb.pic"
-VenonatPicFront: INCBIN "pic/ymon/venonat.pic"
-VenonatPicBack: INCBIN "pic/monback/venonatb.pic"
-DragonitePicFront: INCBIN "pic/ymon/dragonite.pic"
-DragonitePicBack: INCBIN "pic/monback/dragoniteb.pic"
-DoduoPicFront: INCBIN "pic/ymon/doduo.pic"
-DoduoPicBack: INCBIN "pic/monback/doduob.pic"
-PoliwagPicFront: INCBIN "pic/ymon/poliwag.pic"
-PoliwagPicBack: INCBIN "pic/monback/poliwagb.pic"
-JynxPicFront: INCBIN "pic/ymon/jynx.pic"
-JynxPicBack: INCBIN "pic/monback/jynxb.pic"
-MoltresPicFront: INCBIN "pic/ymon/moltres.pic"
-MoltresPicBack: INCBIN "pic/monback/moltresb.pic"
+GrowlithePicFront:: INCBIN "pic/ymon/growlithe.pic"
+GrowlithePicBack:: INCBIN "pic/monback/growlitheb.pic"
+OnixPicFront:: INCBIN "pic/ymon/onix.pic"
+OnixPicBack:: INCBIN "pic/monback/onixb.pic"
+FearowPicFront:: INCBIN "pic/ymon/fearow.pic"
+FearowPicBack:: INCBIN "pic/monback/fearowb.pic"
+PidgeyPicFront:: INCBIN "pic/ymon/pidgey.pic"
+PidgeyPicBack:: INCBIN "pic/monback/pidgeyb.pic"
+SlowpokePicFront:: INCBIN "pic/ymon/slowpoke.pic"
+SlowpokePicBack:: INCBIN "pic/monback/slowpokeb.pic"
+KadabraPicFront:: INCBIN "pic/ymon/kadabra.pic"
+KadabraPicBack:: INCBIN "pic/monback/kadabrab.pic"
+GravelerPicFront:: INCBIN "pic/ymon/graveler.pic"
+GravelerPicBack:: INCBIN "pic/monback/gravelerb.pic"
+ChanseyPicFront:: INCBIN "pic/ymon/chansey.pic"
+ChanseyPicBack:: INCBIN "pic/monback/chanseyb.pic"
+MachokePicFront:: INCBIN "pic/ymon/machoke.pic"
+MachokePicBack:: INCBIN "pic/monback/machokeb.pic"
+MrMimePicFront:: INCBIN "pic/ymon/mr.mime.pic"
+MrMimePicBack:: INCBIN "pic/monback/mr.mimeb.pic"
+HitmonleePicFront:: INCBIN "pic/ymon/hitmonlee.pic"
+HitmonleePicBack:: INCBIN "pic/monback/hitmonleeb.pic"
+HitmonchanPicFront:: INCBIN "pic/ymon/hitmonchan.pic"
+HitmonchanPicBack:: INCBIN "pic/monback/hitmonchanb.pic"
+ArbokPicFront:: INCBIN "pic/ymon/arbok.pic"
+ArbokPicBack:: INCBIN "pic/monback/arbokb.pic"
+ParasectPicFront:: INCBIN "pic/ymon/parasect.pic"
+ParasectPicBack:: INCBIN "pic/monback/parasectb.pic"
+PsyduckPicFront:: INCBIN "pic/ymon/psyduck.pic"
+PsyduckPicBack:: INCBIN "pic/monback/psyduckb.pic"
+DrowzeePicFront:: INCBIN "pic/ymon/drowzee.pic"
+DrowzeePicBack:: INCBIN "pic/monback/drowzeeb.pic"
+GolemPicFront:: INCBIN "pic/ymon/golem.pic"
+GolemPicBack:: INCBIN "pic/monback/golemb.pic"
+MagmarPicFront:: INCBIN "pic/ymon/magmar.pic"
+MagmarPicBack:: INCBIN "pic/monback/magmarb.pic"
+ElectabuzzPicFront:: INCBIN "pic/ymon/electabuzz.pic"
+ElectabuzzPicBack:: INCBIN "pic/monback/electabuzzb.pic"
+MagnetonPicFront:: INCBIN "pic/ymon/magneton.pic"
+MagnetonPicBack:: INCBIN "pic/monback/magnetonb.pic"
+KoffingPicFront:: INCBIN "pic/ymon/koffing.pic"
+KoffingPicBack:: INCBIN "pic/monback/koffingb.pic"
+MankeyPicFront:: INCBIN "pic/ymon/mankey.pic"
+MankeyPicBack:: INCBIN "pic/monback/mankeyb.pic"
+SeelPicFront:: INCBIN "pic/ymon/seel.pic"
+SeelPicBack:: INCBIN "pic/monback/seelb.pic"
+DiglettPicFront:: INCBIN "pic/ymon/diglett.pic"
+DiglettPicBack:: INCBIN "pic/monback/diglettb.pic"
+TaurosPicFront:: INCBIN "pic/ymon/tauros.pic"
+TaurosPicBack:: INCBIN "pic/monback/taurosb.pic"
+FarfetchdPicFront:: INCBIN "pic/ymon/farfetchd.pic"
+FarfetchdPicBack:: INCBIN "pic/monback/farfetchdb.pic"
+VenonatPicFront:: INCBIN "pic/ymon/venonat.pic"
+VenonatPicBack:: INCBIN "pic/monback/venonatb.pic"
+DragonitePicFront:: INCBIN "pic/ymon/dragonite.pic"
+DragonitePicBack:: INCBIN "pic/monback/dragoniteb.pic"
+DoduoPicFront:: INCBIN "pic/ymon/doduo.pic"
+DoduoPicBack:: INCBIN "pic/monback/doduob.pic"
+PoliwagPicFront:: INCBIN "pic/ymon/poliwag.pic"
+PoliwagPicBack:: INCBIN "pic/monback/poliwagb.pic"
+JynxPicFront:: INCBIN "pic/ymon/jynx.pic"
+JynxPicBack:: INCBIN "pic/monback/jynxb.pic"
+MoltresPicFront:: INCBIN "pic/ymon/moltres.pic"
+MoltresPicBack:: INCBIN "pic/monback/moltresb.pic"
INCLUDE "engine/predefsA.asm"
INCLUDE "engine/battle/moveEffects/leech_seed_effect.asm"
@@ -608,76 +619,76 @@ INCLUDE "engine/battle/moveEffects/leech_seed_effect.asm"
SECTION "Pics 3", ROMX ; BANK $0B
-ArticunoPicFront: INCBIN "pic/ymon/articuno.pic"
-ArticunoPicBack: INCBIN "pic/monback/articunob.pic"
-ZapdosPicFront: INCBIN "pic/ymon/zapdos.pic"
-ZapdosPicBack: INCBIN "pic/monback/zapdosb.pic"
-DittoPicFront: INCBIN "pic/ymon/ditto.pic"
-DittoPicBack: INCBIN "pic/monback/dittob.pic"
-MeowthPicFront: INCBIN "pic/ymon/meowth.pic"
-MeowthPicBack: INCBIN "pic/monback/meowthb.pic"
-KrabbyPicFront: INCBIN "pic/ymon/krabby.pic"
-KrabbyPicBack: INCBIN "pic/monback/krabbyb.pic"
-VulpixPicFront: INCBIN "pic/ymon/vulpix.pic"
-VulpixPicBack: INCBIN "pic/monback/vulpixb.pic"
-NinetalesPicFront: INCBIN "pic/ymon/ninetales.pic"
-NinetalesPicBack: INCBIN "pic/monback/ninetalesb.pic"
-PikachuPicFront: INCBIN "pic/ymon/pikachu.pic"
-PikachuPicBack: INCBIN "pic/monback/pikachub.pic"
-RaichuPicFront: INCBIN "pic/ymon/raichu.pic"
-RaichuPicBack: INCBIN "pic/monback/raichub.pic"
-DratiniPicFront: INCBIN "pic/ymon/dratini.pic"
-DratiniPicBack: INCBIN "pic/monback/dratinib.pic"
-DragonairPicFront: INCBIN "pic/ymon/dragonair.pic"
-DragonairPicBack: INCBIN "pic/monback/dragonairb.pic"
-KabutoPicFront: INCBIN "pic/ymon/kabuto.pic"
-KabutoPicBack: INCBIN "pic/monback/kabutob.pic"
-KabutopsPicFront: INCBIN "pic/ymon/kabutops.pic"
-KabutopsPicBack: INCBIN "pic/monback/kabutopsb.pic"
-HorseaPicFront: INCBIN "pic/ymon/horsea.pic"
-HorseaPicBack: INCBIN "pic/monback/horseab.pic"
-SeadraPicFront: INCBIN "pic/ymon/seadra.pic"
-SeadraPicBack: INCBIN "pic/monback/seadrab.pic"
-SandshrewPicFront: INCBIN "pic/ymon/sandshrew.pic"
-SandshrewPicBack: INCBIN "pic/monback/sandshrewb.pic"
-SandslashPicFront: INCBIN "pic/ymon/sandslash.pic"
-SandslashPicBack: INCBIN "pic/monback/sandslashb.pic"
-OmanytePicFront: INCBIN "pic/ymon/omanyte.pic"
-OmanytePicBack: INCBIN "pic/monback/omanyteb.pic"
-OmastarPicFront: INCBIN "pic/ymon/omastar.pic"
-OmastarPicBack: INCBIN "pic/monback/omastarb.pic"
-JigglypuffPicFront: INCBIN "pic/ymon/jigglypuff.pic"
-JigglypuffPicBack: INCBIN "pic/monback/jigglypuffb.pic"
-WigglytuffPicFront: INCBIN "pic/ymon/wigglytuff.pic"
-WigglytuffPicBack: INCBIN "pic/monback/wigglytuffb.pic"
-EeveePicFront: INCBIN "pic/ymon/eevee.pic"
-EeveePicBack: INCBIN "pic/monback/eeveeb.pic"
-FlareonPicFront: INCBIN "pic/ymon/flareon.pic"
-FlareonPicBack: INCBIN "pic/monback/flareonb.pic"
-JolteonPicFront: INCBIN "pic/ymon/jolteon.pic"
-JolteonPicBack: INCBIN "pic/monback/jolteonb.pic"
-VaporeonPicFront: INCBIN "pic/ymon/vaporeon.pic"
-VaporeonPicBack: INCBIN "pic/monback/vaporeonb.pic"
-MachopPicFront: INCBIN "pic/ymon/machop.pic"
-MachopPicBack: INCBIN "pic/monback/machopb.pic"
-ZubatPicFront: INCBIN "pic/ymon/zubat.pic"
-ZubatPicBack: INCBIN "pic/monback/zubatb.pic"
-EkansPicFront: INCBIN "pic/ymon/ekans.pic"
-EkansPicBack: INCBIN "pic/monback/ekansb.pic"
-ParasPicFront: INCBIN "pic/ymon/paras.pic"
-ParasPicBack: INCBIN "pic/monback/parasb.pic"
-PoliwhirlPicFront: INCBIN "pic/ymon/poliwhirl.pic"
-PoliwhirlPicBack: INCBIN "pic/monback/poliwhirlb.pic"
-PoliwrathPicFront: INCBIN "pic/ymon/poliwrath.pic"
-PoliwrathPicBack: INCBIN "pic/monback/poliwrathb.pic"
-WeedlePicFront: INCBIN "pic/ymon/weedle.pic"
-WeedlePicBack: INCBIN "pic/monback/weedleb.pic"
-KakunaPicFront: INCBIN "pic/ymon/kakuna.pic"
-KakunaPicBack: INCBIN "pic/monback/kakunab.pic"
-BeedrillPicFront: INCBIN "pic/ymon/beedrill.pic"
-BeedrillPicBack: INCBIN "pic/monback/beedrillb.pic"
-
-FossilKabutopsPic: INCBIN "pic/ymon/fossilkabutops.pic"
+ArticunoPicFront:: INCBIN "pic/ymon/articuno.pic"
+ArticunoPicBack:: INCBIN "pic/monback/articunob.pic"
+ZapdosPicFront:: INCBIN "pic/ymon/zapdos.pic"
+ZapdosPicBack:: INCBIN "pic/monback/zapdosb.pic"
+DittoPicFront:: INCBIN "pic/ymon/ditto.pic"
+DittoPicBack:: INCBIN "pic/monback/dittob.pic"
+MeowthPicFront:: INCBIN "pic/ymon/meowth.pic"
+MeowthPicBack:: INCBIN "pic/monback/meowthb.pic"
+KrabbyPicFront:: INCBIN "pic/ymon/krabby.pic"
+KrabbyPicBack:: INCBIN "pic/monback/krabbyb.pic"
+VulpixPicFront:: INCBIN "pic/ymon/vulpix.pic"
+VulpixPicBack:: INCBIN "pic/monback/vulpixb.pic"
+NinetalesPicFront:: INCBIN "pic/ymon/ninetales.pic"
+NinetalesPicBack:: INCBIN "pic/monback/ninetalesb.pic"
+PikachuPicFront:: INCBIN "pic/ymon/pikachu.pic"
+PikachuPicBack:: INCBIN "pic/monback/pikachub.pic"
+RaichuPicFront:: INCBIN "pic/ymon/raichu.pic"
+RaichuPicBack:: INCBIN "pic/monback/raichub.pic"
+DratiniPicFront:: INCBIN "pic/ymon/dratini.pic"
+DratiniPicBack:: INCBIN "pic/monback/dratinib.pic"
+DragonairPicFront:: INCBIN "pic/ymon/dragonair.pic"
+DragonairPicBack:: INCBIN "pic/monback/dragonairb.pic"
+KabutoPicFront:: INCBIN "pic/ymon/kabuto.pic"
+KabutoPicBack:: INCBIN "pic/monback/kabutob.pic"
+KabutopsPicFront:: INCBIN "pic/ymon/kabutops.pic"
+KabutopsPicBack:: INCBIN "pic/monback/kabutopsb.pic"
+HorseaPicFront:: INCBIN "pic/ymon/horsea.pic"
+HorseaPicBack:: INCBIN "pic/monback/horseab.pic"
+SeadraPicFront:: INCBIN "pic/ymon/seadra.pic"
+SeadraPicBack:: INCBIN "pic/monback/seadrab.pic"
+SandshrewPicFront:: INCBIN "pic/ymon/sandshrew.pic"
+SandshrewPicBack:: INCBIN "pic/monback/sandshrewb.pic"
+SandslashPicFront:: INCBIN "pic/ymon/sandslash.pic"
+SandslashPicBack:: INCBIN "pic/monback/sandslashb.pic"
+OmanytePicFront:: INCBIN "pic/ymon/omanyte.pic"
+OmanytePicBack:: INCBIN "pic/monback/omanyteb.pic"
+OmastarPicFront:: INCBIN "pic/ymon/omastar.pic"
+OmastarPicBack:: INCBIN "pic/monback/omastarb.pic"
+JigglypuffPicFront:: INCBIN "pic/ymon/jigglypuff.pic"
+JigglypuffPicBack:: INCBIN "pic/monback/jigglypuffb.pic"
+WigglytuffPicFront:: INCBIN "pic/ymon/wigglytuff.pic"
+WigglytuffPicBack:: INCBIN "pic/monback/wigglytuffb.pic"
+EeveePicFront:: INCBIN "pic/ymon/eevee.pic"
+EeveePicBack:: INCBIN "pic/monback/eeveeb.pic"
+FlareonPicFront:: INCBIN "pic/ymon/flareon.pic"
+FlareonPicBack:: INCBIN "pic/monback/flareonb.pic"
+JolteonPicFront:: INCBIN "pic/ymon/jolteon.pic"
+JolteonPicBack:: INCBIN "pic/monback/jolteonb.pic"
+VaporeonPicFront:: INCBIN "pic/ymon/vaporeon.pic"
+VaporeonPicBack:: INCBIN "pic/monback/vaporeonb.pic"
+MachopPicFront:: INCBIN "pic/ymon/machop.pic"
+MachopPicBack:: INCBIN "pic/monback/machopb.pic"
+ZubatPicFront:: INCBIN "pic/ymon/zubat.pic"
+ZubatPicBack:: INCBIN "pic/monback/zubatb.pic"
+EkansPicFront:: INCBIN "pic/ymon/ekans.pic"
+EkansPicBack:: INCBIN "pic/monback/ekansb.pic"
+ParasPicFront:: INCBIN "pic/ymon/paras.pic"
+ParasPicBack:: INCBIN "pic/monback/parasb.pic"
+PoliwhirlPicFront:: INCBIN "pic/ymon/poliwhirl.pic"
+PoliwhirlPicBack:: INCBIN "pic/monback/poliwhirlb.pic"
+PoliwrathPicFront:: INCBIN "pic/ymon/poliwrath.pic"
+PoliwrathPicBack:: INCBIN "pic/monback/poliwrathb.pic"
+WeedlePicFront:: INCBIN "pic/ymon/weedle.pic"
+WeedlePicBack:: INCBIN "pic/monback/weedleb.pic"
+KakunaPicFront:: INCBIN "pic/ymon/kakuna.pic"
+KakunaPicBack:: INCBIN "pic/monback/kakunab.pic"
+BeedrillPicFront:: INCBIN "pic/ymon/beedrill.pic"
+BeedrillPicBack:: INCBIN "pic/monback/beedrillb.pic"
+
+FossilKabutopsPic:: INCBIN "pic/ymon/fossilkabutops.pic"
INCLUDE "engine/battle/display_effectiveness.asm"
INCLUDE "engine/items/tmhm.asm"
@@ -695,129 +706,129 @@ INCLUDE "engine/game_corner_slots2.asm"
SECTION "Pics 4", ROMX ; BANK $0C
-DodrioPicFront: INCBIN "pic/ymon/dodrio.pic"
-DodrioPicBack: INCBIN "pic/monback/dodriob.pic"
-PrimeapePicFront: INCBIN "pic/ymon/primeape.pic"
-PrimeapePicBack: INCBIN "pic/monback/primeapeb.pic"
-DugtrioPicFront: INCBIN "pic/ymon/dugtrio.pic"
-DugtrioPicBack: INCBIN "pic/monback/dugtriob.pic"
-VenomothPicFront: INCBIN "pic/ymon/venomoth.pic"
-VenomothPicBack: INCBIN "pic/monback/venomothb.pic"
-DewgongPicFront: INCBIN "pic/ymon/dewgong.pic"
-DewgongPicBack: INCBIN "pic/monback/dewgongb.pic"
-CaterpiePicFront: INCBIN "pic/ymon/caterpie.pic"
-CaterpiePicBack: INCBIN "pic/monback/caterpieb.pic"
-MetapodPicFront: INCBIN "pic/ymon/metapod.pic"
-MetapodPicBack: INCBIN "pic/monback/metapodb.pic"
-ButterfreePicFront: INCBIN "pic/ymon/butterfree.pic"
-ButterfreePicBack: INCBIN "pic/monback/butterfreeb.pic"
-MachampPicFront: INCBIN "pic/ymon/machamp.pic"
-MachampPicBack: INCBIN "pic/monback/machampb.pic"
-GolduckPicFront: INCBIN "pic/ymon/golduck.pic"
-GolduckPicBack: INCBIN "pic/monback/golduckb.pic"
-HypnoPicFront: INCBIN "pic/ymon/hypno.pic"
-HypnoPicBack: INCBIN "pic/monback/hypnob.pic"
-GolbatPicFront: INCBIN "pic/ymon/golbat.pic"
-GolbatPicBack: INCBIN "pic/monback/golbatb.pic"
-MewtwoPicFront: INCBIN "pic/ymon/mewtwo.pic"
-MewtwoPicBack: INCBIN "pic/monback/mewtwob.pic"
-SnorlaxPicFront: INCBIN "pic/ymon/snorlax.pic"
-SnorlaxPicBack: INCBIN "pic/monback/snorlaxb.pic"
-MagikarpPicFront: INCBIN "pic/ymon/magikarp.pic"
-MagikarpPicBack: INCBIN "pic/monback/magikarpb.pic"
-MukPicFront: INCBIN "pic/ymon/muk.pic"
-MukPicBack: INCBIN "pic/monback/mukb.pic"
-KinglerPicFront: INCBIN "pic/ymon/kingler.pic"
-KinglerPicBack: INCBIN "pic/monback/kinglerb.pic"
-CloysterPicFront: INCBIN "pic/ymon/cloyster.pic"
-CloysterPicBack: INCBIN "pic/monback/cloysterb.pic"
-ElectrodePicFront: INCBIN "pic/ymon/electrode.pic"
-ElectrodePicBack: INCBIN "pic/monback/electrodeb.pic"
-ClefablePicFront: INCBIN "pic/ymon/clefable.pic"
-ClefablePicBack: INCBIN "pic/monback/clefableb.pic"
-WeezingPicFront: INCBIN "pic/ymon/weezing.pic"
-WeezingPicBack: INCBIN "pic/monback/weezingb.pic"
-PersianPicFront: INCBIN "pic/ymon/persian.pic"
-PersianPicBack: INCBIN "pic/monback/persianb.pic"
-MarowakPicFront: INCBIN "pic/ymon/marowak.pic"
-MarowakPicBack: INCBIN "pic/monback/marowakb.pic"
-HaunterPicFront: INCBIN "pic/ymon/haunter.pic"
-HaunterPicBack: INCBIN "pic/monback/haunterb.pic"
-AbraPicFront: INCBIN "pic/ymon/abra.pic"
-AbraPicBack: INCBIN "pic/monback/abrab.pic"
-AlakazamPicFront: INCBIN "pic/ymon/alakazam.pic"
-AlakazamPicBack: INCBIN "pic/monback/alakazamb.pic"
-PidgeottoPicFront: INCBIN "pic/ymon/pidgeotto.pic"
-PidgeottoPicBack: INCBIN "pic/monback/pidgeottob.pic"
-PidgeotPicFront: INCBIN "pic/ymon/pidgeot.pic"
-PidgeotPicBack: INCBIN "pic/monback/pidgeotb.pic"
-StarmiePicFront: INCBIN "pic/ymon/starmie.pic"
-StarmiePicBack: INCBIN "pic/monback/starmieb.pic"
+DodrioPicFront:: INCBIN "pic/ymon/dodrio.pic"
+DodrioPicBack:: INCBIN "pic/monback/dodriob.pic"
+PrimeapePicFront:: INCBIN "pic/ymon/primeape.pic"
+PrimeapePicBack:: INCBIN "pic/monback/primeapeb.pic"
+DugtrioPicFront:: INCBIN "pic/ymon/dugtrio.pic"
+DugtrioPicBack:: INCBIN "pic/monback/dugtriob.pic"
+VenomothPicFront:: INCBIN "pic/ymon/venomoth.pic"
+VenomothPicBack:: INCBIN "pic/monback/venomothb.pic"
+DewgongPicFront:: INCBIN "pic/ymon/dewgong.pic"
+DewgongPicBack:: INCBIN "pic/monback/dewgongb.pic"
+CaterpiePicFront:: INCBIN "pic/ymon/caterpie.pic"
+CaterpiePicBack:: INCBIN "pic/monback/caterpieb.pic"
+MetapodPicFront:: INCBIN "pic/ymon/metapod.pic"
+MetapodPicBack:: INCBIN "pic/monback/metapodb.pic"
+ButterfreePicFront:: INCBIN "pic/ymon/butterfree.pic"
+ButterfreePicBack:: INCBIN "pic/monback/butterfreeb.pic"
+MachampPicFront:: INCBIN "pic/ymon/machamp.pic"
+MachampPicBack:: INCBIN "pic/monback/machampb.pic"
+GolduckPicFront:: INCBIN "pic/ymon/golduck.pic"
+GolduckPicBack:: INCBIN "pic/monback/golduckb.pic"
+HypnoPicFront:: INCBIN "pic/ymon/hypno.pic"
+HypnoPicBack:: INCBIN "pic/monback/hypnob.pic"
+GolbatPicFront:: INCBIN "pic/ymon/golbat.pic"
+GolbatPicBack:: INCBIN "pic/monback/golbatb.pic"
+MewtwoPicFront:: INCBIN "pic/ymon/mewtwo.pic"
+MewtwoPicBack:: INCBIN "pic/monback/mewtwob.pic"
+SnorlaxPicFront:: INCBIN "pic/ymon/snorlax.pic"
+SnorlaxPicBack:: INCBIN "pic/monback/snorlaxb.pic"
+MagikarpPicFront:: INCBIN "pic/ymon/magikarp.pic"
+MagikarpPicBack:: INCBIN "pic/monback/magikarpb.pic"
+MukPicFront:: INCBIN "pic/ymon/muk.pic"
+MukPicBack:: INCBIN "pic/monback/mukb.pic"
+KinglerPicFront:: INCBIN "pic/ymon/kingler.pic"
+KinglerPicBack:: INCBIN "pic/monback/kinglerb.pic"
+CloysterPicFront:: INCBIN "pic/ymon/cloyster.pic"
+CloysterPicBack:: INCBIN "pic/monback/cloysterb.pic"
+ElectrodePicFront:: INCBIN "pic/ymon/electrode.pic"
+ElectrodePicBack:: INCBIN "pic/monback/electrodeb.pic"
+ClefablePicFront:: INCBIN "pic/ymon/clefable.pic"
+ClefablePicBack:: INCBIN "pic/monback/clefableb.pic"
+WeezingPicFront:: INCBIN "pic/ymon/weezing.pic"
+WeezingPicBack:: INCBIN "pic/monback/weezingb.pic"
+PersianPicFront:: INCBIN "pic/ymon/persian.pic"
+PersianPicBack:: INCBIN "pic/monback/persianb.pic"
+MarowakPicFront:: INCBIN "pic/ymon/marowak.pic"
+MarowakPicBack:: INCBIN "pic/monback/marowakb.pic"
+HaunterPicFront:: INCBIN "pic/ymon/haunter.pic"
+HaunterPicBack:: INCBIN "pic/monback/haunterb.pic"
+AbraPicFront:: INCBIN "pic/ymon/abra.pic"
+AbraPicBack:: INCBIN "pic/monback/abrab.pic"
+AlakazamPicFront:: INCBIN "pic/ymon/alakazam.pic"
+AlakazamPicBack:: INCBIN "pic/monback/alakazamb.pic"
+PidgeottoPicFront:: INCBIN "pic/ymon/pidgeotto.pic"
+PidgeottoPicBack:: INCBIN "pic/monback/pidgeottob.pic"
+PidgeotPicFront:: INCBIN "pic/ymon/pidgeot.pic"
+PidgeotPicBack:: INCBIN "pic/monback/pidgeotb.pic"
+StarmiePicFront:: INCBIN "pic/ymon/starmie.pic"
+StarmiePicBack:: INCBIN "pic/monback/starmieb.pic"
SECTION "Pics 5", ROMX ; BANK $0D
-BulbasaurPicFront: INCBIN "pic/ymon/bulbasaur.pic"
-BulbasaurPicBack: INCBIN "pic/monback/bulbasaurb.pic"
-VenusaurPicFront: INCBIN "pic/ymon/venusaur.pic"
-VenusaurPicBack: INCBIN "pic/monback/venusaurb.pic"
-TentacruelPicFront: INCBIN "pic/ymon/tentacruel.pic"
-TentacruelPicBack: INCBIN "pic/monback/tentacruelb.pic"
-GoldeenPicFront: INCBIN "pic/ymon/goldeen.pic"
-GoldeenPicBack: INCBIN "pic/monback/goldeenb.pic"
-SeakingPicFront: INCBIN "pic/ymon/seaking.pic"
-SeakingPicBack: INCBIN "pic/monback/seakingb.pic"
-PonytaPicFront: INCBIN "pic/ymon/ponyta.pic"
-RapidashPicFront: INCBIN "pic/ymon/rapidash.pic"
-PonytaPicBack: INCBIN "pic/monback/ponytab.pic"
-RapidashPicBack: INCBIN "pic/monback/rapidashb.pic"
-RattataPicFront: INCBIN "pic/ymon/rattata.pic"
-RattataPicBack: INCBIN "pic/monback/rattatab.pic"
-RaticatePicFront: INCBIN "pic/ymon/raticate.pic"
-RaticatePicBack: INCBIN "pic/monback/raticateb.pic"
-NidorinoPicFront: INCBIN "pic/ymon/nidorino.pic"
-NidorinoPicBack: INCBIN "pic/monback/nidorinob.pic"
-NidorinaPicFront: INCBIN "pic/ymon/nidorina.pic"
-NidorinaPicBack: INCBIN "pic/monback/nidorinab.pic"
-GeodudePicFront: INCBIN "pic/ymon/geodude.pic"
-GeodudePicBack: INCBIN "pic/monback/geodudeb.pic"
-PorygonPicFront: INCBIN "pic/ymon/porygon.pic"
-PorygonPicBack: INCBIN "pic/monback/porygonb.pic"
-AerodactylPicFront: INCBIN "pic/ymon/aerodactyl.pic"
-AerodactylPicBack: INCBIN "pic/monback/aerodactylb.pic"
-MagnemitePicFront: INCBIN "pic/ymon/magnemite.pic"
-MagnemitePicBack: INCBIN "pic/monback/magnemiteb.pic"
-CharmanderPicFront: INCBIN "pic/ymon/charmander.pic"
-CharmanderPicBack: INCBIN "pic/monback/charmanderb.pic"
-SquirtlePicFront: INCBIN "pic/ymon/squirtle.pic"
-SquirtlePicBack: INCBIN "pic/monback/squirtleb.pic"
-CharmeleonPicFront: INCBIN "pic/ymon/charmeleon.pic"
-CharmeleonPicBack: INCBIN "pic/monback/charmeleonb.pic"
-WartortlePicFront: INCBIN "pic/ymon/wartortle.pic"
-WartortlePicBack: INCBIN "pic/monback/wartortleb.pic"
-CharizardPicFront: INCBIN "pic/ymon/charizard.pic"
-CharizardPicBack: INCBIN "pic/monback/charizardb.pic"
-FossilAerodactylPic: INCBIN "pic/ymon/fossilaerodactyl.pic"
-GhostPic: INCBIN "pic/other/ghost.pic"
-OddishPicFront: INCBIN "pic/ymon/oddish.pic"
-OddishPicBack: INCBIN "pic/monback/oddishb.pic"
-GloomPicFront: INCBIN "pic/ymon/gloom.pic"
-GloomPicBack: INCBIN "pic/monback/gloomb.pic"
-VileplumePicFront: INCBIN "pic/ymon/vileplume.pic"
-VileplumePicBack: INCBIN "pic/monback/vileplumeb.pic"
-BellsproutPicFront: INCBIN "pic/ymon/bellsprout.pic"
-BellsproutPicBack: INCBIN "pic/monback/bellsproutb.pic"
-WeepinbellPicFront: INCBIN "pic/ymon/weepinbell.pic"
-WeepinbellPicBack: INCBIN "pic/monback/weepinbellb.pic"
-VictreebelPicFront: INCBIN "pic/ymon/victreebel.pic"
-VictreebelPicBack: INCBIN "pic/monback/victreebelb.pic"
+BulbasaurPicFront:: INCBIN "pic/ymon/bulbasaur.pic"
+BulbasaurPicBack:: INCBIN "pic/monback/bulbasaurb.pic"
+VenusaurPicFront:: INCBIN "pic/ymon/venusaur.pic"
+VenusaurPicBack:: INCBIN "pic/monback/venusaurb.pic"
+TentacruelPicFront:: INCBIN "pic/ymon/tentacruel.pic"
+TentacruelPicBack:: INCBIN "pic/monback/tentacruelb.pic"
+GoldeenPicFront:: INCBIN "pic/ymon/goldeen.pic"
+GoldeenPicBack:: INCBIN "pic/monback/goldeenb.pic"
+SeakingPicFront:: INCBIN "pic/ymon/seaking.pic"
+SeakingPicBack:: INCBIN "pic/monback/seakingb.pic"
+PonytaPicFront:: INCBIN "pic/ymon/ponyta.pic"
+RapidashPicFront:: INCBIN "pic/ymon/rapidash.pic"
+PonytaPicBack:: INCBIN "pic/monback/ponytab.pic"
+RapidashPicBack:: INCBIN "pic/monback/rapidashb.pic"
+RattataPicFront:: INCBIN "pic/ymon/rattata.pic"
+RattataPicBack:: INCBIN "pic/monback/rattatab.pic"
+RaticatePicFront:: INCBIN "pic/ymon/raticate.pic"
+RaticatePicBack:: INCBIN "pic/monback/raticateb.pic"
+NidorinoPicFront:: INCBIN "pic/ymon/nidorino.pic"
+NidorinoPicBack:: INCBIN "pic/monback/nidorinob.pic"
+NidorinaPicFront:: INCBIN "pic/ymon/nidorina.pic"
+NidorinaPicBack:: INCBIN "pic/monback/nidorinab.pic"
+GeodudePicFront:: INCBIN "pic/ymon/geodude.pic"
+GeodudePicBack:: INCBIN "pic/monback/geodudeb.pic"
+PorygonPicFront:: INCBIN "pic/ymon/porygon.pic"
+PorygonPicBack:: INCBIN "pic/monback/porygonb.pic"
+AerodactylPicFront:: INCBIN "pic/ymon/aerodactyl.pic"
+AerodactylPicBack:: INCBIN "pic/monback/aerodactylb.pic"
+MagnemitePicFront:: INCBIN "pic/ymon/magnemite.pic"
+MagnemitePicBack:: INCBIN "pic/monback/magnemiteb.pic"
+CharmanderPicFront:: INCBIN "pic/ymon/charmander.pic"
+CharmanderPicBack:: INCBIN "pic/monback/charmanderb.pic"
+SquirtlePicFront:: INCBIN "pic/ymon/squirtle.pic"
+SquirtlePicBack:: INCBIN "pic/monback/squirtleb.pic"
+CharmeleonPicFront:: INCBIN "pic/ymon/charmeleon.pic"
+CharmeleonPicBack:: INCBIN "pic/monback/charmeleonb.pic"
+WartortlePicFront:: INCBIN "pic/ymon/wartortle.pic"
+WartortlePicBack:: INCBIN "pic/monback/wartortleb.pic"
+CharizardPicFront:: INCBIN "pic/ymon/charizard.pic"
+CharizardPicBack:: INCBIN "pic/monback/charizardb.pic"
+FossilAerodactylPic:: INCBIN "pic/ymon/fossilaerodactyl.pic"
+GhostPic:: INCBIN "pic/other/ghost.pic"
+OddishPicFront:: INCBIN "pic/ymon/oddish.pic"
+OddishPicBack:: INCBIN "pic/monback/oddishb.pic"
+GloomPicFront:: INCBIN "pic/ymon/gloom.pic"
+GloomPicBack:: INCBIN "pic/monback/gloomb.pic"
+VileplumePicFront:: INCBIN "pic/ymon/vileplume.pic"
+VileplumePicBack:: INCBIN "pic/monback/vileplumeb.pic"
+BellsproutPicFront:: INCBIN "pic/ymon/bellsprout.pic"
+BellsproutPicBack:: INCBIN "pic/monback/bellsproutb.pic"
+WeepinbellPicFront:: INCBIN "pic/ymon/weepinbell.pic"
+WeepinbellPicBack:: INCBIN "pic/monback/weepinbellb.pic"
+VictreebelPicFront:: INCBIN "pic/ymon/victreebel.pic"
+VictreebelPicBack:: INCBIN "pic/monback/victreebelb.pic"
INCLUDE "engine/titlescreen2.asm"
INCLUDE "engine/slot_machine.asm"
INCLUDE "engine/game_corner_slots.asm"
-SECTION "bank0E", ROMX
+SECTION "bankE", ROMX
INCLUDE "data/moves.asm"
BaseStats: INCLUDE "data/base_stats.asm"
@@ -825,19 +836,19 @@ INCLUDE "data/cries.asm"
INCLUDE "engine/battle/trainer_ai.asm"
INCLUDE "engine/battle/draw_hud_pokeball_gfx.asm"
-TradingAnimationGraphics: INCBIN "gfx/game_boy.2bpp"
- INCBIN "gfx/link_cable.2bpp"
+TradingAnimationGraphics:
+INCBIN "gfx/game_boy.2bpp"
+INCBIN "gfx/link_cable.2bpp"
TradingAnimationGraphicsEnd:
-TradingAnimationGraphics2:
; Pokeball traveling through the link cable.
- INCBIN "gfx/trade2.2bpp"
+TradingAnimationGraphics2: INCBIN "gfx/trade2.2bpp"
TradingAnimationGraphics2End:
INCLUDE "engine/evos_moves.asm"
-SECTION "bank0F", ROMX
+SECTION "bankF", ROMX
INCLUDE "engine/battle/core.asm"
@@ -854,454 +865,461 @@ INCLUDE "engine/menu/options.asm"
SECTION "bank11", ROMX
-INCLUDE "data/mapHeaders/lavendertown.asm"
-INCLUDE "data/mapObjects/lavendertown.asm"
-LavenderTownBlocks: INCBIN "maps/lavendertown.blk"
-ViridianPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk"
-SafariZoneRestHouse1Blocks:
-SafariZoneRestHouse2Blocks:
-SafariZoneRestHouse3Blocks:
-SafariZoneRestHouse4Blocks: INCBIN "maps/safarizoneresthouse1.blk"
+INCLUDE "data/mapHeaders/LavenderTown.asm"
+INCLUDE "data/mapObjects/LavenderTown.asm"
+LavenderTown_Blocks: INCBIN "maps/LavenderTown.blk"
+
+ViridianPokecenter_Blocks: INCBIN "maps/ViridianPokecenter.blk"
+
+SafariZoneCenterRestHouse_Blocks:
+SafariZoneWestRestHouse_Blocks:
+SafariZoneEastRestHouse_Blocks:
+SafariZoneNorthRestHouse_Blocks: INCBIN "maps/SafariZoneCenterRestHouse.blk"
-INCLUDE "scripts/lavendertown.asm"
+INCLUDE "scripts/LavenderTown.asm"
INCLUDE "engine/pokedex_rating.asm"
-INCLUDE "data/mapHeaders/viridianpokecenter.asm"
-INCLUDE "scripts/viridianpokecenter.asm"
-INCLUDE "data/mapObjects/viridianpokecenter.asm"
-
-INCLUDE "data/mapHeaders/celadonmart1.asm"
-INCLUDE "scripts/celadonmart1.asm"
-INCLUDE "data/mapObjects/celadonmart1.asm"
-CeladonMart1Blocks: INCBIN "maps/celadonmart1.blk"
-
-INCLUDE "data/mapHeaders/mansion1.asm"
-INCLUDE "scripts/mansion1.asm"
-INCLUDE "data/mapObjects/mansion1.asm"
-Mansion1Blocks: INCBIN "maps/mansion1.blk"
-
-INCLUDE "data/mapHeaders/rocktunnel1.asm"
-INCLUDE "scripts/rocktunnel1.asm"
-INCLUDE "data/mapObjects/rocktunnel1.asm"
-RockTunnel1Blocks: INCBIN "maps/rocktunnel1.blk"
-
-INCLUDE "data/mapHeaders/seafoamislands1.asm"
-INCLUDE "scripts/seafoamislands1.asm"
-INCLUDE "data/mapObjects/seafoamislands1.asm"
-SeafoamIslands1Blocks: INCBIN "maps/seafoamislands1.blk"
-
-INCLUDE "data/mapHeaders/ssanne3.asm"
-INCLUDE "scripts/ssanne3.asm"
-INCLUDE "data/mapObjects/ssanne3.asm"
-SSAnne3Blocks: INCBIN "maps/ssanne3.blk"
-
-INCLUDE "data/mapHeaders/victoryroad3.asm"
-INCLUDE "scripts/victoryroad3.asm"
-INCLUDE "data/mapObjects/victoryroad3.asm"
-VictoryRoad3Blocks: INCBIN "maps/victoryroad3.blk"
-
-INCLUDE "data/mapHeaders/rockethideout1.asm"
-INCLUDE "scripts/rockethideout1.asm"
-INCLUDE "data/mapObjects/rockethideout1.asm"
-RocketHideout1Blocks: INCBIN "maps/rockethideout1.blk"
-
-INCLUDE "data/mapHeaders/rockethideout2.asm"
-INCLUDE "scripts/rockethideout2.asm"
-INCLUDE "data/mapObjects/rockethideout2.asm"
-RocketHideout2Blocks: INCBIN "maps/rockethideout2.blk"
-
-INCLUDE "data/mapHeaders/rockethideout3.asm"
-INCLUDE "scripts/rockethideout3.asm"
-INCLUDE "data/mapObjects/rockethideout3.asm"
-RocketHideout3Blocks: INCBIN "maps/rockethideout3.blk"
-
-INCLUDE "data/mapHeaders/rockethideout4.asm"
-INCLUDE "scripts/rockethideout4.asm"
-INCLUDE "data/mapObjects/rockethideout4.asm"
-RocketHideout4Blocks: INCBIN "maps/rockethideout4.blk"
-
-INCLUDE "data/mapHeaders/rockethideoutelevator.asm"
-INCLUDE "scripts/rockethideoutelevator.asm"
-INCLUDE "data/mapObjects/rockethideoutelevator.asm"
-RocketHideoutElevatorBlocks: INCBIN "maps/rockethideoutelevator.blk"
-
-INCLUDE "data/mapHeaders/silphcoelevator.asm"
-INCLUDE "scripts/silphcoelevator.asm"
-INCLUDE "data/mapObjects/silphcoelevator.asm"
-SilphCoElevatorBlocks: INCBIN "maps/silphcoelevator.blk"
-
-INCLUDE "data/mapHeaders/safarizoneeast.asm"
-INCLUDE "scripts/safarizoneeast.asm"
-INCLUDE "data/mapObjects/safarizoneeast.asm"
-SafariZoneEastBlocks: INCBIN "maps/safarizoneeast.blk"
-
-INCLUDE "data/mapHeaders/safarizonenorth.asm"
-INCLUDE "scripts/safarizonenorth.asm"
-INCLUDE "data/mapObjects/safarizonenorth.asm"
-SafariZoneNorthBlocks: INCBIN "maps/safarizonenorth.blk"
-
-INCLUDE "data/mapHeaders/safarizonecenter.asm"
-INCLUDE "scripts/safarizonecenter.asm"
-INCLUDE "data/mapObjects/safarizonecenter.asm"
-SafariZoneCenterBlocks: INCBIN "maps/safarizonecenter.blk"
-
-INCLUDE "data/mapHeaders/safarizoneresthouse1.asm"
-INCLUDE "scripts/safarizoneresthouse1.asm"
-INCLUDE "data/mapObjects/safarizoneresthouse1.asm"
-
-INCLUDE "data/mapHeaders/safarizoneresthouse2.asm"
-INCLUDE "scripts/safarizoneresthouse2.asm"
-INCLUDE "data/mapObjects/safarizoneresthouse2.asm"
-
-INCLUDE "data/mapHeaders/safarizoneresthouse3.asm"
-INCLUDE "scripts/safarizoneresthouse3.asm"
-INCLUDE "data/mapObjects/safarizoneresthouse3.asm"
-
-INCLUDE "data/mapHeaders/safarizoneresthouse4.asm"
-INCLUDE "scripts/safarizoneresthouse4.asm"
-INCLUDE "data/mapObjects/safarizoneresthouse4.asm"
-
-INCLUDE "data/mapHeaders/unknowndungeon2.asm"
-INCLUDE "scripts/unknowndungeon2.asm"
-INCLUDE "data/mapObjects/unknowndungeon2.asm"
-UnknownDungeon2Blocks: INCBIN "maps/unknowndungeon2.blk"
-
-INCLUDE "data/mapHeaders/unknowndungeon3.asm"
-INCLUDE "scripts/unknowndungeon3.asm"
-INCLUDE "data/mapObjects/unknowndungeon3.asm"
-UnknownDungeon3Blocks: INCBIN "maps/unknowndungeon3.blk"
-
-INCLUDE "data/mapHeaders/rocktunnel2.asm"
-INCLUDE "scripts/rocktunnel2.asm"
-INCLUDE "data/mapObjects/rocktunnel2.asm"
-RockTunnel2Blocks: INCBIN "maps/rocktunnel2.blk"
-
-INCLUDE "data/mapHeaders/seafoamislands2.asm"
-INCLUDE "scripts/seafoamislands2.asm"
-INCLUDE "data/mapObjects/seafoamislands2.asm"
-SeafoamIslands2Blocks: INCBIN "maps/seafoamislands2.blk"
-
-INCLUDE "data/mapHeaders/seafoamislands3.asm"
-INCLUDE "scripts/seafoamislands3.asm"
-INCLUDE "data/mapObjects/seafoamislands3.asm"
-SeafoamIslands3Blocks: INCBIN "maps/seafoamislands3.blk"
-
-INCLUDE "data/mapHeaders/seafoamislands4.asm"
-INCLUDE "scripts/seafoamislands4.asm"
-INCLUDE "data/mapObjects/seafoamislands4.asm"
-SeafoamIslands4Blocks: INCBIN "maps/seafoamislands4.blk"
-
-INCLUDE "data/mapHeaders/seafoamislands5.asm"
-INCLUDE "scripts/seafoamislands5.asm"
-INCLUDE "data/mapObjects/seafoamislands5.asm"
-SeafoamIslands5Blocks: INCBIN "maps/seafoamislands5.blk"
+INCLUDE "data/mapHeaders/ViridianPokecenter.asm"
+INCLUDE "scripts/ViridianPokecenter.asm"
+INCLUDE "data/mapObjects/ViridianPokecenter.asm"
+
+INCLUDE "data/mapHeaders/CeladonMart1F.asm"
+INCLUDE "scripts/CeladonMart1F.asm"
+INCLUDE "data/mapObjects/CeladonMart1F.asm"
+CeladonMart1F_Blocks: INCBIN "maps/CeladonMart1F.blk"
+
+INCLUDE "data/mapHeaders/PokemonMansion1F.asm"
+INCLUDE "scripts/PokemonMansion1F.asm"
+INCLUDE "data/mapObjects/PokemonMansion1F.asm"
+PokemonMansion1F_Blocks: INCBIN "maps/PokemonMansion1F.blk"
+
+INCLUDE "data/mapHeaders/RockTunnel1F.asm"
+INCLUDE "scripts/RockTunnel1F.asm"
+INCLUDE "data/mapObjects/RockTunnel1F.asm"
+RockTunnel1F_Blocks: INCBIN "maps/RockTunnel1F.blk"
+
+INCLUDE "data/mapHeaders/SeafoamIslands1F.asm"
+INCLUDE "scripts/SeafoamIslands1F.asm"
+INCLUDE "data/mapObjects/SeafoamIslands1F.asm"
+SeafoamIslands1F_Blocks: INCBIN "maps/SeafoamIslands1F.blk"
+
+INCLUDE "data/mapHeaders/SSAnne3F.asm"
+INCLUDE "scripts/SSAnne3F.asm"
+INCLUDE "data/mapObjects/SSAnne3F.asm"
+SSAnne3F_Blocks: INCBIN "maps/SSAnne3F.blk"
+
+INCLUDE "data/mapHeaders/VictoryRoad3F.asm"
+INCLUDE "scripts/VictoryRoad3F.asm"
+INCLUDE "data/mapObjects/VictoryRoad3F.asm"
+VictoryRoad3F_Blocks: INCBIN "maps/VictoryRoad3F.blk"
+
+INCLUDE "data/mapHeaders/RocketHideoutB1F.asm"
+INCLUDE "scripts/RocketHideoutB1F.asm"
+INCLUDE "data/mapObjects/RocketHideoutB1F.asm"
+RocketHideoutB1F_Blocks: INCBIN "maps/RocketHideoutB1F.blk"
+
+INCLUDE "data/mapHeaders/RocketHideoutB2F.asm"
+INCLUDE "scripts/RocketHideoutB2F.asm"
+INCLUDE "data/mapObjects/RocketHideoutB2F.asm"
+RocketHideoutB2F_Blocks: INCBIN "maps/RocketHideoutB2F.blk"
+
+INCLUDE "data/mapHeaders/RocketHideoutB3F.asm"
+INCLUDE "scripts/RocketHideoutB3F.asm"
+INCLUDE "data/mapObjects/RocketHideoutB3F.asm"
+RocketHideoutB3F_Blocks: INCBIN "maps/RocketHideoutB3F.blk"
+
+INCLUDE "data/mapHeaders/RocketHideoutB4F.asm"
+INCLUDE "scripts/RocketHideoutB4F.asm"
+INCLUDE "data/mapObjects/RocketHideoutB4F.asm"
+RocketHideoutB4F_Blocks: INCBIN "maps/RocketHideoutB4F.blk"
+
+INCLUDE "data/mapHeaders/RocketHideoutElevator.asm"
+INCLUDE "scripts/RocketHideoutElevator.asm"
+INCLUDE "data/mapObjects/RocketHideoutElevator.asm"
+RocketHideoutElevator_Blocks: INCBIN "maps/RocketHideoutElevator.blk"
+
+INCLUDE "data/mapHeaders/SilphCoElevator.asm"
+INCLUDE "scripts/SilphCoElevator.asm"
+INCLUDE "data/mapObjects/SilphCoElevator.asm"
+SilphCoElevator_Blocks: INCBIN "maps/SilphCoElevator.blk"
+
+INCLUDE "data/mapHeaders/SafariZoneEast.asm"
+INCLUDE "scripts/SafariZoneEast.asm"
+INCLUDE "data/mapObjects/SafariZoneEast.asm"
+SafariZoneEast_Blocks: INCBIN "maps/SafariZoneEast.blk"
+
+INCLUDE "data/mapHeaders/SafariZoneNorth.asm"
+INCLUDE "scripts/SafariZoneNorth.asm"
+INCLUDE "data/mapObjects/SafariZoneNorth.asm"
+SafariZoneNorth_Blocks: INCBIN "maps/SafariZoneNorth.blk"
+
+INCLUDE "data/mapHeaders/SafariZoneCenter.asm"
+INCLUDE "scripts/SafariZoneCenter.asm"
+INCLUDE "data/mapObjects/SafariZoneCenter.asm"
+SafariZoneCenter_Blocks: INCBIN "maps/SafariZoneCenter.blk"
+
+INCLUDE "data/mapHeaders/SafariZoneCenterRestHouse.asm"
+INCLUDE "scripts/SafariZoneCenterRestHouse.asm"
+INCLUDE "data/mapObjects/SafariZoneCenterRestHouse.asm"
+
+INCLUDE "data/mapHeaders/SafariZoneWestRestHouse.asm"
+INCLUDE "scripts/SafariZoneWestRestHouse.asm"
+INCLUDE "data/mapObjects/SafariZoneWestRestHouse.asm"
+
+INCLUDE "data/mapHeaders/SafariZoneEastRestHouse.asm"
+INCLUDE "scripts/SafariZoneEastRestHouse.asm"
+INCLUDE "data/mapObjects/SafariZoneEastRestHouse.asm"
+
+INCLUDE "data/mapHeaders/SafariZoneNorthRestHouse.asm"
+INCLUDE "scripts/SafariZoneNorthRestHouse.asm"
+INCLUDE "data/mapObjects/SafariZoneNorthRestHouse.asm"
+
+INCLUDE "data/mapHeaders/CeruleanCave2F.asm"
+INCLUDE "scripts/CeruleanCave2F.asm"
+INCLUDE "data/mapObjects/CeruleanCave2F.asm"
+CeruleanCave2F_Blocks: INCBIN "maps/CeruleanCave2F.blk"
+
+INCLUDE "data/mapHeaders/CeruleanCaveB1F.asm"
+INCLUDE "scripts/CeruleanCaveB1F.asm"
+INCLUDE "data/mapObjects/CeruleanCaveB1F.asm"
+CeruleanCaveB1F_Blocks: INCBIN "maps/CeruleanCaveB1F.blk"
+
+INCLUDE "data/mapHeaders/RockTunnelB1F.asm"
+INCLUDE "scripts/RockTunnelB1F.asm"
+INCLUDE "data/mapObjects/RockTunnelB1F.asm"
+RockTunnelB1F_Blocks: INCBIN "maps/RockTunnelB1F.blk"
+
+INCLUDE "data/mapHeaders/SeafoamIslandsB1F.asm"
+INCLUDE "scripts/SeafoamIslandsB1F.asm"
+INCLUDE "data/mapObjects/SeafoamIslandsB1F.asm"
+SeafoamIslandsB1F_Blocks: INCBIN "maps/SeafoamIslandsB1F.blk"
+
+INCLUDE "data/mapHeaders/SeafoamIslandsB2F.asm"
+INCLUDE "scripts/SeafoamIslandsB2F.asm"
+INCLUDE "data/mapObjects/SeafoamIslandsB2F.asm"
+SeafoamIslandsB2F_Blocks: INCBIN "maps/SeafoamIslandsB2F.blk"
+
+INCLUDE "data/mapHeaders/SeafoamIslandsB3F.asm"
+INCLUDE "scripts/SeafoamIslandsB3F.asm"
+INCLUDE "data/mapObjects/SeafoamIslandsB3F.asm"
+SeafoamIslandsB3F_Blocks: INCBIN "maps/SeafoamIslandsB3F.blk"
+
+INCLUDE "data/mapHeaders/SeafoamIslandsB4F.asm"
+INCLUDE "scripts/SeafoamIslandsB4F.asm"
+INCLUDE "data/mapObjects/SeafoamIslandsB4F.asm"
+SeafoamIslandsB4F_Blocks: INCBIN "maps/SeafoamIslandsB4F.blk"
INCLUDE "engine/overworld/dungeon_warps.asm"
SECTION "bank12", ROMX
-INCLUDE "data/mapHeaders/route7.asm"
-INCLUDE "data/mapObjects/route7.asm"
-Route7Blocks: INCBIN "maps/route7.blk"
-MtMoonPokecenterBlocks:
-RockTunnelPokecenterBlocks:
-CeladonPokecenterBlocks: INCBIN "maps/mtmoonpokecenter.blk"
-Route11GateBlocks:
-Route15GateBlocks:
-Route18GateBlocks: INCBIN "maps/route11gate.blk"
-Route11GateUpstairsBlocks:
-Route12GateUpstairsBlocks:
-Route15GateUpstairsBlocks:
-Route16GateUpstairsBlocks:
-Route18GateUpstairsBlocks: INCBIN "maps/route11gateupstairs.blk"
-INCLUDE "scripts/route7.asm"
-
-INCLUDE "data/mapHeaders/redshouse1f.asm"
-INCLUDE "scripts/redshouse1f.asm"
-INCLUDE "data/mapObjects/redshouse1f.asm"
-RedsHouse1FBlocks: INCBIN "maps/redshouse1f.blk"
-
-INCLUDE "data/mapHeaders/celadonmart3.asm"
-INCLUDE "scripts/celadonmart3.asm"
-INCLUDE "data/mapObjects/celadonmart3.asm"
-CeladonMart3Blocks: INCBIN "maps/celadonmart3.blk"
-
-INCLUDE "data/mapHeaders/celadonmart4.asm"
-INCLUDE "scripts/celadonmart4.asm"
-INCLUDE "data/mapObjects/celadonmart4.asm"
-CeladonMart4Blocks: INCBIN "maps/celadonmart4.blk"
-
-INCLUDE "data/mapHeaders/celadonmartroof.asm"
-INCLUDE "scripts/celadonmartroof.asm"
-INCLUDE "data/mapObjects/celadonmartroof.asm"
-CeladonMartRoofBlocks: INCBIN "maps/celadonmartroof.blk"
-
-INCLUDE "data/mapHeaders/celadonmartelevator.asm"
-INCLUDE "scripts/celadonmartelevator.asm"
-INCLUDE "data/mapObjects/celadonmartelevator.asm"
-CeladonMartElevatorBlocks: INCBIN "maps/celadonmartelevator.blk"
-
-INCLUDE "data/mapHeaders/celadonmansion1.asm"
-INCLUDE "scripts/celadonmansion1.asm"
-INCLUDE "data/mapObjects/celadonmansion1.asm"
-CeladonMansion1Blocks: INCBIN "maps/celadonmansion1.blk"
-
-INCLUDE "data/mapHeaders/celadonmansion2.asm"
-INCLUDE "scripts/celadonmansion2.asm"
-INCLUDE "data/mapObjects/celadonmansion2.asm"
-CeladonMansion2Blocks: INCBIN "maps/celadonmansion2.blk"
-
-INCLUDE "data/mapHeaders/celadonmansion3.asm"
-INCLUDE "scripts/celadonmansion3.asm"
-INCLUDE "data/mapObjects/celadonmansion3.asm"
-CeladonMansion3Blocks: INCBIN "maps/celadonmansion3.blk"
-
-INCLUDE "data/mapHeaders/celadonmansion4.asm"
-INCLUDE "scripts/celadonmansion4.asm"
-INCLUDE "data/mapObjects/celadonmansion4.asm"
-CeladonMansion4Blocks: INCBIN "maps/celadonmansion4.blk"
-
-INCLUDE "data/mapHeaders/celadonpokecenter.asm"
-INCLUDE "scripts/celadonpokecenter.asm"
-INCLUDE "data/mapObjects/celadonpokecenter.asm"
-
-INCLUDE "data/mapHeaders/celadongym.asm"
-INCLUDE "scripts/celadongym.asm"
-INCLUDE "data/mapObjects/celadongym.asm"
-CeladonGymBlocks: INCBIN "maps/celadongym.blk"
-
-INCLUDE "data/mapHeaders/celadongamecorner.asm"
-INCLUDE "scripts/celadongamecorner.asm"
-INCLUDE "data/mapObjects/celadongamecorner.asm"
-CeladonGameCornerBlocks: INCBIN "maps/celadongamecorner.blk"
-
-INCLUDE "data/mapHeaders/celadonmart5.asm"
-INCLUDE "scripts/celadonmart5.asm"
-INCLUDE "data/mapObjects/celadonmart5.asm"
-CeladonMart5Blocks: INCBIN "maps/celadonmart5.blk"
-
-INCLUDE "data/mapHeaders/celadonprizeroom.asm"
-INCLUDE "scripts/celadonprizeroom.asm"
-INCLUDE "data/mapObjects/celadonprizeroom.asm"
-CeladonPrizeRoomBlocks: INCBIN "maps/celadonprizeroom.blk"
-
-INCLUDE "data/mapHeaders/celadondiner.asm"
-INCLUDE "scripts/celadondiner.asm"
-INCLUDE "data/mapObjects/celadondiner.asm"
-CeladonDinerBlocks: INCBIN "maps/celadondiner.blk"
-
-INCLUDE "data/mapHeaders/celadonhouse.asm"
-INCLUDE "scripts/celadonhouse.asm"
-INCLUDE "data/mapObjects/celadonhouse.asm"
-CeladonHouseBlocks: INCBIN "maps/celadonhouse.blk"
-
-INCLUDE "data/mapHeaders/celadonhotel.asm"
-INCLUDE "scripts/celadonhotel.asm"
-INCLUDE "data/mapObjects/celadonhotel.asm"
-CeladonHotelBlocks: INCBIN "maps/celadonhotel.blk"
-
-INCLUDE "data/mapHeaders/mtmoonpokecenter.asm"
-INCLUDE "scripts/mtmoonpokecenter.asm"
-INCLUDE "data/mapObjects/mtmoonpokecenter.asm"
-
-INCLUDE "data/mapHeaders/rocktunnelpokecenter.asm"
-INCLUDE "scripts/rocktunnelpokecenter.asm"
-INCLUDE "data/mapObjects/rocktunnelpokecenter.asm"
-
-INCLUDE "data/mapHeaders/route11gate.asm"
-INCLUDE "scripts/route11gate.asm"
-INCLUDE "data/mapObjects/route11gate.asm"
-
-INCLUDE "data/mapHeaders/route11gateupstairs.asm"
-INCLUDE "scripts/route11gateupstairs.asm"
-INCLUDE "data/mapObjects/route11gateupstairs.asm"
-
-INCLUDE "data/mapHeaders/route12gate.asm"
-INCLUDE "scripts/route12gate.asm"
-INCLUDE "data/mapObjects/route12gate.asm"
-Route12GateBlocks: INCBIN "maps/route12gate.blk"
-
-INCLUDE "data/mapHeaders/route12gateupstairs.asm"
-INCLUDE "scripts/route12gateupstairs.asm"
-INCLUDE "data/mapObjects/route12gateupstairs.asm"
-
-INCLUDE "data/mapHeaders/route15gate.asm"
-INCLUDE "scripts/route15gate.asm"
-INCLUDE "data/mapObjects/route15gate.asm"
-
-INCLUDE "data/mapHeaders/route15gateupstairs.asm"
-INCLUDE "scripts/route15gateupstairs.asm"
-INCLUDE "data/mapObjects/route15gateupstairs.asm"
-
-INCLUDE "data/mapHeaders/route16gate.asm"
-INCLUDE "scripts/route16gate.asm"
-INCLUDE "data/mapObjects/route16gate.asm"
-Route16GateBlocks: INCBIN "maps/route16gate.blk"
-
-INCLUDE "data/mapHeaders/route16gateupstairs.asm"
-INCLUDE "scripts/route16gateupstairs.asm"
-INCLUDE "data/mapObjects/route16gateupstairs.asm"
-
-INCLUDE "data/mapHeaders/route18gate.asm"
-INCLUDE "scripts/route18gate.asm"
-INCLUDE "data/mapObjects/route18gate.asm"
-
-INCLUDE "data/mapHeaders/route18gateupstairs.asm"
-INCLUDE "scripts/route18gateupstairs.asm"
-INCLUDE "data/mapObjects/route18gateupstairs.asm"
-
-INCLUDE "data/mapHeaders/mtmoon1.asm"
-INCLUDE "scripts/mtmoon1.asm"
-INCLUDE "data/mapObjects/mtmoon1.asm"
-MtMoon1Blocks: INCBIN "maps/mtmoon1.blk"
-
-INCLUDE "data/mapHeaders/mtmoon3.asm"
-INCLUDE "scripts/mtmoon3.asm"
-INCLUDE "data/mapObjects/mtmoon3.asm"
-MtMoon3Blocks: INCBIN "maps/mtmoon3.blk"
-INCLUDE "scripts/mtmoon3_2.asm"
-
-INCLUDE "data/mapHeaders/safarizonewest.asm"
-INCLUDE "scripts/safarizonewest.asm"
-INCLUDE "data/mapObjects/safarizonewest.asm"
-SafariZoneWestBlocks: INCBIN "maps/safarizonewest.blk"
-
-INCLUDE "data/mapHeaders/safarizonesecrethouse.asm"
-INCLUDE "scripts/safarizonesecrethouse.asm"
-INCLUDE "data/mapObjects/safarizonesecrethouse.asm"
-SafariZoneSecretHouseBlocks: INCBIN "maps/safarizonesecrethouse.blk"
+INCLUDE "data/mapHeaders/Route7.asm"
+INCLUDE "data/mapObjects/Route7.asm"
+Route7_Blocks: INCBIN "maps/Route7.blk"
+
+CeladonPokecenter_Blocks:
+RockTunnelPokecenter_Blocks:
+MtMoonPokecenter_Blocks: INCBIN "maps/MtMoonPokecenter.blk"
+
+Route18Gate1F_Blocks:
+Route15Gate1F_Blocks:
+Route11Gate1F_Blocks: INCBIN "maps/Route11Gate1F.blk"
+
+Route18Gate2F_Blocks:
+Route16Gate2F_Blocks:
+Route15Gate2F_Blocks:
+Route12Gate2F_Blocks:
+Route11Gate2F_Blocks: INCBIN "maps/Route11Gate2F.blk"
+
+INCLUDE "scripts/Route7.asm"
+
+INCLUDE "data/mapHeaders/RedsHouse1F.asm"
+INCLUDE "scripts/RedsHouse1F.asm"
+INCLUDE "data/mapObjects/RedsHouse1F.asm"
+RedsHouse1F_Blocks: INCBIN "maps/RedsHouse1F.blk"
+
+INCLUDE "data/mapHeaders/CeladonMart3F.asm"
+INCLUDE "scripts/CeladonMart3F.asm"
+INCLUDE "data/mapObjects/CeladonMart3F.asm"
+CeladonMart3F_Blocks: INCBIN "maps/CeladonMart3F.blk"
+
+INCLUDE "data/mapHeaders/CeladonMart4F.asm"
+INCLUDE "scripts/CeladonMart4F.asm"
+INCLUDE "data/mapObjects/CeladonMart4F.asm"
+CeladonMart4F_Blocks: INCBIN "maps/CeladonMart4F.blk"
+
+INCLUDE "data/mapHeaders/CeladonMartRoof.asm"
+INCLUDE "scripts/CeladonMartRoof.asm"
+INCLUDE "data/mapObjects/CeladonMartRoof.asm"
+CeladonMartRoof_Blocks: INCBIN "maps/CeladonMartRoof.blk"
+
+INCLUDE "data/mapHeaders/CeladonMartElevator.asm"
+INCLUDE "scripts/CeladonMartElevator.asm"
+INCLUDE "data/mapObjects/CeladonMartElevator.asm"
+CeladonMartElevator_Blocks: INCBIN "maps/CeladonMartElevator.blk"
+
+INCLUDE "data/mapHeaders/CeladonMansion1F.asm"
+INCLUDE "scripts/CeladonMansion1F.asm"
+INCLUDE "data/mapObjects/CeladonMansion1F.asm"
+CeladonMansion1F_Blocks: INCBIN "maps/CeladonMansion1F.blk"
+
+INCLUDE "data/mapHeaders/CeladonMansion2F.asm"
+INCLUDE "scripts/CeladonMansion2F.asm"
+INCLUDE "data/mapObjects/CeladonMansion2F.asm"
+CeladonMansion2F_Blocks: INCBIN "maps/CeladonMansion2F.blk"
+
+INCLUDE "data/mapHeaders/CeladonMansion3F.asm"
+INCLUDE "scripts/CeladonMansion3F.asm"
+INCLUDE "data/mapObjects/CeladonMansion3F.asm"
+CeladonMansion3F_Blocks: INCBIN "maps/CeladonMansion3F.blk"
+
+INCLUDE "data/mapHeaders/CeladonMansionRoof.asm"
+INCLUDE "scripts/CeladonMansionRoof.asm"
+INCLUDE "data/mapObjects/CeladonMansionRoof.asm"
+CeladonMansionRoof_Blocks: INCBIN "maps/CeladonMansionRoof.blk"
+
+INCLUDE "data/mapHeaders/CeladonPokecenter.asm"
+INCLUDE "scripts/CeladonPokecenter.asm"
+INCLUDE "data/mapObjects/CeladonPokecenter.asm"
+
+INCLUDE "data/mapHeaders/CeladonGym.asm"
+INCLUDE "scripts/CeladonGym.asm"
+INCLUDE "data/mapObjects/CeladonGym.asm"
+CeladonGym_Blocks: INCBIN "maps/CeladonGym.blk"
+
+INCLUDE "data/mapHeaders/GameCorner.asm"
+INCLUDE "scripts/GameCorner.asm"
+INCLUDE "data/mapObjects/GameCorner.asm"
+GameCorner_Blocks: INCBIN "maps/GameCorner.blk"
+
+INCLUDE "data/mapHeaders/CeladonMart5F.asm"
+INCLUDE "scripts/CeladonMart5F.asm"
+INCLUDE "data/mapObjects/CeladonMart5F.asm"
+CeladonMart5F_Blocks: INCBIN "maps/CeladonMart5F.blk"
+
+INCLUDE "data/mapHeaders/GameCornerPrizeRoom.asm"
+INCLUDE "scripts/GameCornerPrizeRoom.asm"
+INCLUDE "data/mapObjects/GameCornerPrizeRoom.asm"
+GameCornerPrizeRoom_Blocks: INCBIN "maps/GameCornerPrizeRoom.blk"
+
+INCLUDE "data/mapHeaders/CeladonDiner.asm"
+INCLUDE "scripts/CeladonDiner.asm"
+INCLUDE "data/mapObjects/CeladonDiner.asm"
+CeladonDiner_Blocks: INCBIN "maps/CeladonDiner.blk"
+
+INCLUDE "data/mapHeaders/CeladonChiefHouse.asm"
+INCLUDE "scripts/CeladonChiefHouse.asm"
+INCLUDE "data/mapObjects/CeladonChiefHouse.asm"
+CeladonChiefHouse_Blocks: INCBIN "maps/CeladonChiefHouse.blk"
+
+INCLUDE "data/mapHeaders/CeladonHotel.asm"
+INCLUDE "scripts/CeladonHotel.asm"
+INCLUDE "data/mapObjects/CeladonHotel.asm"
+CeladonHotel_Blocks: INCBIN "maps/CeladonHotel.blk"
+
+INCLUDE "data/mapHeaders/MtMoonPokecenter.asm"
+INCLUDE "scripts/MtMoonPokecenter.asm"
+INCLUDE "data/mapObjects/MtMoonPokecenter.asm"
+
+INCLUDE "data/mapHeaders/RockTunnelPokecenter.asm"
+INCLUDE "scripts/RockTunnelPokecenter.asm"
+INCLUDE "data/mapObjects/RockTunnelPokecenter.asm"
+
+INCLUDE "data/mapHeaders/Route11Gate1F.asm"
+INCLUDE "scripts/Route11Gate1F.asm"
+INCLUDE "data/mapObjects/Route11Gate1F.asm"
+
+INCLUDE "data/mapHeaders/Route11Gate2F.asm"
+INCLUDE "scripts/Route11Gate2F.asm"
+INCLUDE "data/mapObjects/Route11Gate2F.asm"
+
+INCLUDE "data/mapHeaders/Route12Gate1F.asm"
+INCLUDE "scripts/Route12Gate1F.asm"
+INCLUDE "data/mapObjects/Route12Gate1F.asm"
+Route12Gate1F_Blocks: INCBIN "maps/Route12Gate1F.blk"
+
+INCLUDE "data/mapHeaders/Route12Gate2F.asm"
+INCLUDE "scripts/Route12Gate2F.asm"
+INCLUDE "data/mapObjects/Route12Gate2F.asm"
+
+INCLUDE "data/mapHeaders/Route15Gate1F.asm"
+INCLUDE "scripts/Route15Gate1F.asm"
+INCLUDE "data/mapObjects/Route15Gate1F.asm"
+
+INCLUDE "data/mapHeaders/Route15Gate2F.asm"
+INCLUDE "scripts/Route15Gate2F.asm"
+INCLUDE "data/mapObjects/Route15Gate2F.asm"
+
+INCLUDE "data/mapHeaders/Route16Gate1F.asm"
+INCLUDE "scripts/Route16Gate1F.asm"
+INCLUDE "data/mapObjects/Route16Gate1F.asm"
+Route16Gate1F_Blocks: INCBIN "maps/Route16Gate1F.blk"
+
+INCLUDE "data/mapHeaders/Route16Gate2F.asm"
+INCLUDE "scripts/Route16Gate2F.asm"
+INCLUDE "data/mapObjects/Route16Gate2F.asm"
+
+INCLUDE "data/mapHeaders/Route18Gate1F.asm"
+INCLUDE "scripts/Route18Gate1F.asm"
+INCLUDE "data/mapObjects/Route18Gate1F.asm"
+
+INCLUDE "data/mapHeaders/Route18Gate2F.asm"
+INCLUDE "scripts/Route18Gate2F.asm"
+INCLUDE "data/mapObjects/Route18Gate2F.asm"
+
+INCLUDE "data/mapHeaders/MtMoon1F.asm"
+INCLUDE "scripts/MtMoon1F.asm"
+INCLUDE "data/mapObjects/MtMoon1F.asm"
+MtMoon1F_Blocks: INCBIN "maps/MtMoon1F.blk"
+
+INCLUDE "data/mapHeaders/MtMoonB2F.asm"
+INCLUDE "scripts/MtMoonB2F.asm"
+INCLUDE "data/mapObjects/MtMoonB2F.asm"
+MtMoonB2F_Blocks: INCBIN "maps/MtMoonB2F.blk"
+INCLUDE "scripts/MtMoonB2F_2.asm"
+
+INCLUDE "data/mapHeaders/SafariZoneWest.asm"
+INCLUDE "scripts/SafariZoneWest.asm"
+INCLUDE "data/mapObjects/SafariZoneWest.asm"
+SafariZoneWest_Blocks: INCBIN "maps/SafariZoneWest.blk"
+
+INCLUDE "data/mapHeaders/SafariZoneSecretHouse.asm"
+INCLUDE "scripts/SafariZoneSecretHouse.asm"
+INCLUDE "data/mapObjects/SafariZoneSecretHouse.asm"
+SafariZoneSecretHouse_Blocks: INCBIN "maps/SafariZoneSecretHouse.blk"
SECTION "bank13", ROMX
-TrainerPics:
-YoungsterPic: INCBIN "pic/trainer/youngster.pic"
-BugCatcherPic: INCBIN "pic/trainer/bugcatcher.pic"
-LassPic: INCBIN "pic/trainer/lass.pic"
-SailorPic: INCBIN "pic/trainer/sailor.pic"
-JrTrainerMPic: INCBIN "pic/trainer/jr.trainerm.pic"
-JrTrainerFPic: INCBIN "pic/trainer/jr.trainerf.pic"
-PokemaniacPic: INCBIN "pic/trainer/pokemaniac.pic"
-SuperNerdPic: INCBIN "pic/trainer/supernerd.pic"
-HikerPic: INCBIN "pic/trainer/hiker.pic"
-BikerPic: INCBIN "pic/trainer/biker.pic"
-BurglarPic: INCBIN "pic/trainer/burglar.pic"
-EngineerPic: INCBIN "pic/trainer/engineer.pic"
-FisherPic: INCBIN "pic/trainer/fisher.pic"
-SwimmerPic: INCBIN "pic/trainer/swimmer.pic"
-CueBallPic: INCBIN "pic/trainer/cueball.pic"
-GamblerPic: INCBIN "pic/trainer/gambler.pic"
-BeautyPic: INCBIN "pic/trainer/beauty.pic"
-PsychicPic: INCBIN "pic/trainer/psychic.pic"
-RockerPic: INCBIN "pic/trainer/rocker.pic"
-JugglerPic: INCBIN "pic/trainer/juggler.pic"
-TamerPic: INCBIN "pic/trainer/tamer.pic"
-BirdKeeperPic: INCBIN "pic/trainer/birdkeeper.pic"
-BlackbeltPic: INCBIN "pic/trainer/blackbelt.pic"
-Rival1Pic: INCBIN "pic/ytrainer/rival1.pic"
-ProfOakPic: INCBIN "pic/trainer/prof.oak.pic"
-ChiefPic:
-ScientistPic: INCBIN "pic/trainer/scientist.pic"
-GiovanniPic: INCBIN "pic/trainer/giovanni.pic"
-RocketPic: INCBIN "pic/trainer/rocket.pic"
-CooltrainerMPic: INCBIN "pic/trainer/cooltrainerm.pic"
-CooltrainerFPic: INCBIN "pic/trainer/cooltrainerf.pic"
-BrunoPic: INCBIN "pic/trainer/bruno.pic"
-BrockPic: INCBIN "pic/ytrainer/brock.pic"
-MistyPic: INCBIN "pic/ytrainer/misty.pic"
-LtSurgePic: INCBIN "pic/trainer/lt.surge.pic"
-ErikaPic: INCBIN "pic/ytrainer/erika.pic"
-KogaPic: INCBIN "pic/trainer/koga.pic"
-BlainePic: INCBIN "pic/trainer/blaine.pic"
-SabrinaPic: INCBIN "pic/trainer/sabrina.pic"
-GentlemanPic: INCBIN "pic/trainer/gentleman.pic"
-Rival2Pic: INCBIN "pic/ytrainer/rival2.pic"
-Rival3Pic: INCBIN "pic/ytrainer/rival3.pic"
-LoreleiPic: INCBIN "pic/trainer/lorelei.pic"
-ChannelerPic: INCBIN "pic/trainer/channeler.pic"
-AgathaPic: INCBIN "pic/trainer/agatha.pic"
-LancePic: INCBIN "pic/trainer/lance.pic"
-JessieJamesPic: INCBIN "pic/ytrainer/jessiejames.pic"
-
-INCLUDE "data/mapHeaders/tradecenter.asm"
-INCLUDE "scripts/tradecenter.asm"
-INCLUDE "data/mapObjects/tradecenter.asm"
-TradeCenterBlocks: INCBIN "maps/tradecenter.blk"
-
-INCLUDE "data/mapHeaders/colosseum.asm"
-INCLUDE "scripts/colosseum.asm"
-INCLUDE "data/mapObjects/colosseum.asm"
-ColosseumBlocks: INCBIN "maps/colosseum.blk"
+TrainerPics::
+YoungsterPic:: INCBIN "pic/trainer/youngster.pic"
+BugCatcherPic:: INCBIN "pic/trainer/bugcatcher.pic"
+LassPic:: INCBIN "pic/trainer/lass.pic"
+SailorPic:: INCBIN "pic/trainer/sailor.pic"
+JrTrainerMPic:: INCBIN "pic/trainer/jr.trainerm.pic"
+JrTrainerFPic:: INCBIN "pic/trainer/jr.trainerf.pic"
+PokemaniacPic:: INCBIN "pic/trainer/pokemaniac.pic"
+SuperNerdPic:: INCBIN "pic/trainer/supernerd.pic"
+HikerPic:: INCBIN "pic/trainer/hiker.pic"
+BikerPic:: INCBIN "pic/trainer/biker.pic"
+BurglarPic:: INCBIN "pic/trainer/burglar.pic"
+EngineerPic:: INCBIN "pic/trainer/engineer.pic"
+FisherPic:: INCBIN "pic/trainer/fisher.pic"
+SwimmerPic:: INCBIN "pic/trainer/swimmer.pic"
+CueBallPic:: INCBIN "pic/trainer/cueball.pic"
+GamblerPic:: INCBIN "pic/trainer/gambler.pic"
+BeautyPic:: INCBIN "pic/trainer/beauty.pic"
+PsychicPic:: INCBIN "pic/trainer/psychic.pic"
+RockerPic:: INCBIN "pic/trainer/rocker.pic"
+JugglerPic:: INCBIN "pic/trainer/juggler.pic"
+TamerPic:: INCBIN "pic/trainer/tamer.pic"
+BirdKeeperPic:: INCBIN "pic/trainer/birdkeeper.pic"
+BlackbeltPic:: INCBIN "pic/trainer/blackbelt.pic"
+Rival1Pic:: INCBIN "pic/ytrainer/rival1.pic"
+ProfOakPic:: INCBIN "pic/trainer/prof.oak.pic"
+ChiefPic::
+ScientistPic:: INCBIN "pic/trainer/scientist.pic"
+GiovanniPic:: INCBIN "pic/trainer/giovanni.pic"
+RocketPic:: INCBIN "pic/trainer/rocket.pic"
+CooltrainerMPic:: INCBIN "pic/trainer/cooltrainerm.pic"
+CooltrainerFPic:: INCBIN "pic/trainer/cooltrainerf.pic"
+BrunoPic:: INCBIN "pic/trainer/bruno.pic"
+BrockPic:: INCBIN "pic/ytrainer/brock.pic"
+MistyPic:: INCBIN "pic/ytrainer/misty.pic"
+LtSurgePic:: INCBIN "pic/trainer/lt.surge.pic"
+ErikaPic:: INCBIN "pic/ytrainer/erika.pic"
+KogaPic:: INCBIN "pic/trainer/koga.pic"
+BlainePic:: INCBIN "pic/trainer/blaine.pic"
+SabrinaPic:: INCBIN "pic/trainer/sabrina.pic"
+GentlemanPic:: INCBIN "pic/trainer/gentleman.pic"
+Rival2Pic:: INCBIN "pic/ytrainer/rival2.pic"
+Rival3Pic:: INCBIN "pic/ytrainer/rival3.pic"
+LoreleiPic:: INCBIN "pic/trainer/lorelei.pic"
+ChannelerPic:: INCBIN "pic/trainer/channeler.pic"
+AgathaPic:: INCBIN "pic/trainer/agatha.pic"
+LancePic:: INCBIN "pic/trainer/lance.pic"
+JessieJamesPic:: INCBIN "pic/ytrainer/jessiejames.pic"
+
+INCLUDE "data/mapHeaders/TradeCenter.asm"
+INCLUDE "scripts/TradeCenter.asm"
+INCLUDE "data/mapObjects/TradeCenter.asm"
+TradeCenter_Blocks: INCBIN "maps/TradeCenter.blk"
+
+INCLUDE "data/mapHeaders/Colosseum.asm"
+INCLUDE "scripts/Colosseum.asm"
+INCLUDE "data/mapObjects/Colosseum.asm"
+Colosseum_Blocks: INCBIN "maps/Colosseum.blk"
SECTION "bank14", ROMX
-INCLUDE "data/mapHeaders/route22.asm"
-INCLUDE "data/mapObjects/route22.asm"
-Route22Blocks: INCBIN "maps/route22.blk"
-INCLUDE "data/mapHeaders/route20.asm"
-INCLUDE "data/mapObjects/route20.asm"
-Route20Blocks: INCBIN "maps/route20.blk"
-
-INCLUDE "data/mapHeaders/route23.asm"
-INCLUDE "data/mapObjects/route23.asm"
-Route23Blocks: INCBIN "maps/route23.blk"
-
-INCLUDE "data/mapHeaders/route24.asm"
-INCLUDE "data/mapObjects/route24.asm"
-Route24Blocks: INCBIN "maps/route24.blk"
-
-INCLUDE "data/mapHeaders/route25.asm"
-INCLUDE "data/mapObjects/route25.asm"
-Route25Blocks: INCBIN "maps/route25.blk"
-
-; indigoplateau
-INCLUDE "data/mapHeaders/indigoplateau.asm"
-INCLUDE "scripts/indigoplateau.asm"
-INCLUDE "data/mapObjects/indigoplateau.asm"
-IndigoPlateauBlocks: INCBIN "maps/indigoplateau.blk"
-
-INCLUDE "data/mapHeaders/saffroncity.asm"
-INCLUDE "data/mapObjects/saffroncity.asm"
-SaffronCityBlocks: INCBIN "maps/saffroncity.blk"
-INCLUDE "scripts/saffroncity.asm"
-INCLUDE "scripts/route20.asm"
-INCLUDE "scripts/route22.asm"
-INCLUDE "scripts/route23.asm"
-INCLUDE "scripts/route24.asm"
-INCLUDE "scripts/route25.asm"
-
-INCLUDE "data/mapHeaders/victoryroad2.asm"
-INCLUDE "scripts/victoryroad2.asm"
-INCLUDE "data/mapObjects/victoryroad2.asm"
-VictoryRoad2Blocks: INCBIN "maps/victoryroad2.blk"
-
-INCLUDE "data/mapHeaders/mtmoon2.asm"
-INCLUDE "scripts/mtmoon2.asm"
-INCLUDE "data/mapObjects/mtmoon2.asm"
-MtMoon2Blocks: INCBIN "maps/mtmoon2.blk"
-
-INCLUDE "data/mapHeaders/silphco7.asm"
-INCLUDE "scripts/silphco7.asm"
-INCLUDE "data/mapObjects/silphco7.asm"
-SilphCo7Blocks: INCBIN "maps/silphco7.blk"
-
-INCLUDE "data/mapHeaders/mansion2.asm"
-INCLUDE "scripts/mansion2.asm"
-INCLUDE "data/mapObjects/mansion2.asm"
-Mansion2Blocks: INCBIN "maps/mansion2.blk"
-
-INCLUDE "data/mapHeaders/mansion3.asm"
-INCLUDE "scripts/mansion3.asm"
-INCLUDE "data/mapObjects/mansion3.asm"
-Mansion3Blocks: INCBIN "maps/mansion3.blk"
-
-INCLUDE "data/mapHeaders/mansion4.asm"
-INCLUDE "scripts/mansion4.asm"
-INCLUDE "data/mapObjects/mansion4.asm"
-Mansion4Blocks: INCBIN "maps/mansion4.blk"
+INCLUDE "data/mapHeaders/Route22.asm"
+INCLUDE "data/mapObjects/Route22.asm"
+Route22_Blocks: INCBIN "maps/Route22.blk"
+
+INCLUDE "data/mapHeaders/Route20.asm"
+INCLUDE "data/mapObjects/Route20.asm"
+Route20_Blocks: INCBIN "maps/Route20.blk"
+
+INCLUDE "data/mapHeaders/Route23.asm"
+INCLUDE "data/mapObjects/Route23.asm"
+Route23_Blocks: INCBIN "maps/Route23.blk"
+
+INCLUDE "data/mapHeaders/Route24.asm"
+INCLUDE "data/mapObjects/Route24.asm"
+Route24_Blocks: INCBIN "maps/Route24.blk"
+
+INCLUDE "data/mapHeaders/Route25.asm"
+INCLUDE "data/mapObjects/Route25.asm"
+Route25_Blocks: INCBIN "maps/Route25.blk"
+
+INCLUDE "data/mapHeaders/IndigoPlateau.asm"
+INCLUDE "scripts/IndigoPlateau.asm"
+INCLUDE "data/mapObjects/IndigoPlateau.asm"
+IndigoPlateau_Blocks: INCBIN "maps/IndigoPlateau.blk"
+
+INCLUDE "data/mapHeaders/SaffronCity.asm"
+INCLUDE "data/mapObjects/SaffronCity.asm"
+SaffronCity_Blocks: INCBIN "maps/SaffronCity.blk"
+INCLUDE "scripts/SaffronCity.asm"
+
+INCLUDE "scripts/Route20.asm"
+INCLUDE "scripts/Route22.asm"
+INCLUDE "scripts/Route23.asm"
+INCLUDE "scripts/Route24.asm"
+INCLUDE "scripts/Route25.asm"
+
+INCLUDE "data/mapHeaders/VictoryRoad2F.asm"
+INCLUDE "scripts/VictoryRoad2F.asm"
+INCLUDE "data/mapObjects/VictoryRoad2F.asm"
+VictoryRoad2F_Blocks: INCBIN "maps/VictoryRoad2F.blk"
+
+INCLUDE "data/mapHeaders/MtMoonB1F.asm"
+INCLUDE "scripts/MtMoonB1F.asm"
+INCLUDE "data/mapObjects/MtMoonB1F.asm"
+MtMoonB1F_Blocks: INCBIN "maps/MtMoonB1F.blk"
+
+INCLUDE "data/mapHeaders/SilphCo7F.asm"
+INCLUDE "scripts/SilphCo7F.asm"
+INCLUDE "data/mapObjects/SilphCo7F.asm"
+SilphCo7F_Blocks: INCBIN "maps/SilphCo7F.blk"
+
+INCLUDE "data/mapHeaders/PokemonMansion2F.asm"
+INCLUDE "scripts/PokemonMansion2F.asm"
+INCLUDE "data/mapObjects/PokemonMansion2F.asm"
+PokemonMansion2F_Blocks: INCBIN "maps/PokemonMansion2F.blk"
+
+INCLUDE "data/mapHeaders/PokemonMansion3F.asm"
+INCLUDE "scripts/PokemonMansion3F.asm"
+INCLUDE "data/mapObjects/PokemonMansion3F.asm"
+PokemonMansion3F_Blocks: INCBIN "maps/PokemonMansion3F.blk"
+
+INCLUDE "data/mapHeaders/PokemonMansionB1F.asm"
+INCLUDE "scripts/PokemonMansionB1F.asm"
+INCLUDE "data/mapObjects/PokemonMansionB1F.asm"
+PokemonMansionB1F_Blocks: INCBIN "maps/PokemonMansionB1F.blk"
INCLUDE "engine/overworld/card_key.asm"
@@ -1312,130 +1330,131 @@ INCLUDE "engine/hidden_object_functions14.asm"
SECTION "bank15", ROMX
-INCLUDE "data/mapHeaders/route2.asm"
-INCLUDE "data/mapObjects/route2.asm"
-Route2Blocks: INCBIN "maps/route2.blk"
+INCLUDE "data/mapHeaders/Route2.asm"
+INCLUDE "data/mapObjects/Route2.asm"
+Route2_Blocks: INCBIN "maps/Route2.blk"
-INCLUDE "data/mapHeaders/route3.asm"
-INCLUDE "data/mapObjects/route3.asm"
-Route3Blocks: INCBIN "maps/route3.blk"
+INCLUDE "data/mapHeaders/Route3.asm"
+INCLUDE "data/mapObjects/Route3.asm"
+Route3_Blocks: INCBIN "maps/Route3.blk"
-INCLUDE "data/mapHeaders/route4.asm"
-INCLUDE "data/mapObjects/route4.asm"
-Route4Blocks: INCBIN "maps/route4.blk"
+INCLUDE "data/mapHeaders/Route4.asm"
+INCLUDE "data/mapObjects/Route4.asm"
+Route4_Blocks: INCBIN "maps/Route4.blk"
-INCLUDE "data/mapHeaders/route5.asm"
-INCLUDE "data/mapObjects/route5.asm"
-Route5Blocks: INCBIN "maps/route5.blk"
+INCLUDE "data/mapHeaders/Route5.asm"
+INCLUDE "data/mapObjects/Route5.asm"
+Route5_Blocks: INCBIN "maps/Route5.blk"
-INCLUDE "data/mapHeaders/route9.asm"
-INCLUDE "data/mapObjects/route9.asm"
-Route9Blocks: INCBIN "maps/route9.blk"
+INCLUDE "data/mapHeaders/Route9.asm"
+INCLUDE "data/mapObjects/Route9.asm"
+Route9_Blocks: INCBIN "maps/Route9.blk"
-INCLUDE "data/mapHeaders/route13.asm"
-INCLUDE "data/mapObjects/route13.asm"
-Route13Blocks: INCBIN "maps/route13.blk"
+INCLUDE "data/mapHeaders/Route13.asm"
+INCLUDE "data/mapObjects/Route13.asm"
+Route13_Blocks: INCBIN "maps/Route13.blk"
-INCLUDE "data/mapHeaders/route14.asm"
-INCLUDE "data/mapObjects/route14.asm"
-Route14Blocks: INCBIN "maps/route14.blk"
+INCLUDE "data/mapHeaders/Route14.asm"
+INCLUDE "data/mapObjects/Route14.asm"
+Route14_Blocks: INCBIN "maps/Route14.blk"
-INCLUDE "data/mapHeaders/route17.asm"
-INCLUDE "data/mapObjects/route17.asm"
-Route17Blocks: INCBIN "maps/route17.blk"
+INCLUDE "data/mapHeaders/Route17.asm"
+INCLUDE "data/mapObjects/Route17.asm"
+Route17_Blocks: INCBIN "maps/Route17.blk"
-INCLUDE "data/mapHeaders/route19.asm"
-INCLUDE "data/mapObjects/route19.asm"
-Route19Blocks: INCBIN "maps/route19.blk"
+INCLUDE "data/mapHeaders/Route19.asm"
+INCLUDE "data/mapObjects/Route19.asm"
+Route19_Blocks: INCBIN "maps/Route19.blk"
-INCLUDE "data/mapHeaders/route21.asm"
-INCLUDE "data/mapObjects/route21.asm"
-Route21Blocks: INCBIN "maps/route21.blk"
+INCLUDE "data/mapHeaders/Route21.asm"
+INCLUDE "data/mapObjects/Route21.asm"
+Route21_Blocks: INCBIN "maps/Route21.blk"
-DayCareMBlocks:
-VermilionHouse2Blocks:
-Route12HouseBlocks: INCBIN "maps/daycarem.blk"
-FuchsiaHouse3Blocks: INCBIN "maps/fuchsiahouse3.blk"
+VermilionOldRodHouse_Blocks:
+Route12SuperRodHouse_Blocks:
+Daycare_Blocks: INCBIN "maps/Daycare.blk"
+
+FuchsiaGoodRodHouse_Blocks: INCBIN "maps/FuchsiaGoodRodHouse.blk"
INCLUDE "engine/battle/experience.asm"
-INCLUDE "scripts/route2.asm"
-INCLUDE "scripts/route3.asm"
-INCLUDE "scripts/route4.asm"
-INCLUDE "scripts/route5.asm"
-INCLUDE "scripts/route9.asm"
-INCLUDE "scripts/route13.asm"
-INCLUDE "scripts/route14.asm"
-INCLUDE "scripts/route17.asm"
-INCLUDE "scripts/route19.asm"
-INCLUDE "scripts/route21.asm"
-
-INCLUDE "data/mapHeaders/vermilionhouse2.asm"
-INCLUDE "scripts/vermilionhouse2.asm"
-INCLUDE "data/mapObjects/vermilionhouse2.asm"
-
-INCLUDE "data/mapHeaders/celadonmart2.asm"
-INCLUDE "scripts/celadonmart2.asm"
-INCLUDE "data/mapObjects/celadonmart2.asm"
-CeladonMart2Blocks: INCBIN "maps/celadonmart2.blk"
-
-INCLUDE "data/mapHeaders/fuchsiahouse3.asm"
-INCLUDE "scripts/fuchsiahouse3.asm"
-INCLUDE "data/mapObjects/fuchsiahouse3.asm"
-
-INCLUDE "data/mapHeaders/daycarem.asm"
-INCLUDE "scripts/daycarem.asm"
-INCLUDE "data/mapObjects/daycarem.asm"
-
-INCLUDE "data/mapHeaders/route12house.asm"
-INCLUDE "scripts/route12house.asm"
-INCLUDE "data/mapObjects/route12house.asm"
-
-INCLUDE "data/mapHeaders/silphco8.asm"
-INCLUDE "scripts/silphco8.asm"
-INCLUDE "data/mapObjects/silphco8.asm"
-SilphCo8Blocks: INCBIN "maps/silphco8.blk"
-
-INCLUDE "engine/menu/diploma_1.asm"
+INCLUDE "scripts/Route2.asm"
+INCLUDE "scripts/Route3.asm"
+INCLUDE "scripts/Route4.asm"
+INCLUDE "scripts/Route5.asm"
+INCLUDE "scripts/Route9.asm"
+INCLUDE "scripts/Route13.asm"
+INCLUDE "scripts/Route14.asm"
+INCLUDE "scripts/Route17.asm"
+INCLUDE "scripts/Route19.asm"
+INCLUDE "scripts/Route21.asm"
+
+INCLUDE "data/mapHeaders/VermilionOldRodHouse.asm"
+INCLUDE "scripts/VermilionOldRodHouse.asm"
+INCLUDE "data/mapObjects/VermilionOldRodHouse.asm"
+
+INCLUDE "data/mapHeaders/CeladonMart2F.asm"
+INCLUDE "scripts/CeladonMart2F.asm"
+INCLUDE "data/mapObjects/CeladonMart2F.asm"
+CeladonMart2F_Blocks: INCBIN "maps/CeladonMart2F.blk"
+
+INCLUDE "data/mapHeaders/FuchsiaGoodRodHouse.asm"
+INCLUDE "scripts/FuchsiaGoodRodHouse.asm"
+INCLUDE "data/mapObjects/FuchsiaGoodRodHouse.asm"
+
+INCLUDE "data/mapHeaders/Daycare.asm"
+INCLUDE "scripts/Daycare.asm"
+INCLUDE "data/mapObjects/Daycare.asm"
+
+INCLUDE "data/mapHeaders/Route12SuperRodHouse.asm"
+INCLUDE "scripts/Route12SuperRodHouse.asm"
+INCLUDE "data/mapObjects/Route12SuperRodHouse.asm"
+
+INCLUDE "data/mapHeaders/SilphCo8F.asm"
+INCLUDE "scripts/SilphCo8F.asm"
+INCLUDE "data/mapObjects/SilphCo8F.asm"
+SilphCo8F_Blocks: INCBIN "maps/SilphCo8F.blk"
+
+INCLUDE "engine/menu/diploma.asm"
INCLUDE "engine/overworld/trainers.asm"
SECTION "bank16", ROMX
-INCLUDE "data/mapHeaders/route6.asm"
-INCLUDE "data/mapObjects/route6.asm"
-Route6Blocks: INCBIN "maps/route6.blk"
+INCLUDE "data/mapHeaders/Route6.asm"
+INCLUDE "data/mapObjects/Route6.asm"
+Route6_Blocks: INCBIN "maps/Route6.blk"
-INCLUDE "data/mapHeaders/route8.asm"
-INCLUDE "data/mapObjects/route8.asm"
-Route8Blocks: INCBIN "maps/route8.blk"
+INCLUDE "data/mapHeaders/Route8.asm"
+INCLUDE "data/mapObjects/Route8.asm"
+Route8_Blocks: INCBIN "maps/Route8.blk"
-INCLUDE "data/mapHeaders/route10.asm"
-INCLUDE "data/mapObjects/route10.asm"
-Route10Blocks: INCBIN "maps/route10.blk"
+INCLUDE "data/mapHeaders/Route10.asm"
+INCLUDE "data/mapObjects/Route10.asm"
+Route10_Blocks: INCBIN "maps/Route10.blk"
-INCLUDE "data/mapHeaders/route11.asm"
-INCLUDE "data/mapObjects/route11.asm"
-Route11Blocks: INCBIN "maps/route11.blk"
+INCLUDE "data/mapHeaders/Route11.asm"
+INCLUDE "data/mapObjects/Route11.asm"
+Route11_Blocks: INCBIN "maps/Route11.blk"
-INCLUDE "data/mapHeaders/route12.asm"
-INCLUDE "data/mapObjects/route12.asm"
-Route12Blocks: INCBIN "maps/route12.blk"
+INCLUDE "data/mapHeaders/Route12.asm"
+INCLUDE "data/mapObjects/Route12.asm"
+Route12_Blocks: INCBIN "maps/Route12.blk"
-INCLUDE "data/mapHeaders/route15.asm"
-INCLUDE "data/mapObjects/route15.asm"
-Route15Blocks: INCBIN "maps/route15.blk"
+INCLUDE "data/mapHeaders/Route15.asm"
+INCLUDE "data/mapObjects/Route15.asm"
+Route15_Blocks: INCBIN "maps/Route15.blk"
-INCLUDE "data/mapHeaders/route16.asm"
-INCLUDE "data/mapObjects/route16.asm"
-Route16Blocks: INCBIN "maps/route16.blk"
+INCLUDE "data/mapHeaders/Route16.asm"
+INCLUDE "data/mapObjects/Route16.asm"
+Route16_Blocks: INCBIN "maps/Route16.blk"
-INCLUDE "data/mapHeaders/route18.asm"
-INCLUDE "data/mapObjects/route18.asm"
-Route18Blocks: INCBIN "maps/route18.blk"
+INCLUDE "data/mapHeaders/Route18.asm"
+INCLUDE "data/mapObjects/Route18.asm"
+Route18_Blocks: INCBIN "maps/Route18.blk"
-INCBIN "maps/unusedblocks58d7d.blk"
+ INCBIN "maps/UnusedPokecenterCopy.blk"
INCLUDE "engine/experience.asm"
@@ -1443,192 +1462,198 @@ INCLUDE "engine/status_ailments.asm"
INCLUDE "engine/overworld/oaks_aide.asm"
-INCLUDE "scripts/route6.asm"
-INCLUDE "scripts/route8.asm"
-INCLUDE "scripts/route10.asm"
-INCLUDE "scripts/route11.asm"
-INCLUDE "scripts/route12.asm"
-INCLUDE "scripts/route15.asm"
-INCLUDE "scripts/route16.asm"
-INCLUDE "scripts/route18.asm"
-
-INCLUDE "data/mapHeaders/fanclub.asm"
-INCLUDE "scripts/fanclub.asm"
-INCLUDE "data/mapObjects/fanclub.asm"
-FanClubBlocks: INCBIN "maps/fanclub.blk"
-
-INCLUDE "data/mapHeaders/silphco2.asm"
-INCLUDE "scripts/silphco2.asm"
-INCLUDE "data/mapObjects/silphco2.asm"
-SilphCo2Blocks: INCBIN "maps/silphco2.blk"
-
-INCLUDE "data/mapHeaders/silphco3.asm"
-INCLUDE "scripts/silphco3.asm"
-INCLUDE "data/mapObjects/silphco3.asm"
-SilphCo3Blocks: INCBIN "maps/silphco3.blk"
-
-INCLUDE "data/mapHeaders/silphco10.asm"
-INCLUDE "scripts/silphco10.asm"
-INCLUDE "data/mapObjects/silphco10.asm"
-SilphCo10Blocks: INCBIN "maps/silphco10.blk"
-
-INCLUDE "data/mapHeaders/lance.asm"
-INCLUDE "scripts/lance.asm"
-INCLUDE "data/mapObjects/lance.asm"
-LanceBlocks: INCBIN "maps/lance.blk"
-
-INCLUDE "data/mapHeaders/halloffameroom.asm"
-INCLUDE "scripts/halloffameroom.asm"
-INCLUDE "data/mapObjects/halloffameroom.asm"
-HallofFameRoomBlocks: INCBIN "maps/halloffameroom.blk"
+INCLUDE "scripts/Route6.asm"
+INCLUDE "scripts/Route8.asm"
+INCLUDE "scripts/Route10.asm"
+INCLUDE "scripts/Route11.asm"
+INCLUDE "scripts/Route12.asm"
+INCLUDE "scripts/Route15.asm"
+INCLUDE "scripts/Route16.asm"
+INCLUDE "scripts/Route18.asm"
+
+INCLUDE "data/mapHeaders/PokemonFanClub.asm"
+INCLUDE "scripts/PokemonFanClub.asm"
+INCLUDE "data/mapObjects/PokemonFanClub.asm"
+PokemonFanClub_Blocks: INCBIN "maps/PokemonFanClub.blk"
+
+INCLUDE "data/mapHeaders/SilphCo2F.asm"
+INCLUDE "scripts/SilphCo2F.asm"
+INCLUDE "data/mapObjects/SilphCo2F.asm"
+SilphCo2F_Blocks: INCBIN "maps/SilphCo2F.blk"
+
+INCLUDE "data/mapHeaders/SilphCo3F.asm"
+INCLUDE "scripts/SilphCo3F.asm"
+INCLUDE "data/mapObjects/SilphCo3F.asm"
+SilphCo3F_Blocks: INCBIN "maps/SilphCo3F.blk"
+
+INCLUDE "data/mapHeaders/SilphCo10F.asm"
+INCLUDE "scripts/SilphCo10F.asm"
+INCLUDE "data/mapObjects/SilphCo10F.asm"
+SilphCo10F_Blocks: INCBIN "maps/SilphCo10F.blk"
+
+INCLUDE "data/mapHeaders/LancesRoom.asm"
+INCLUDE "scripts/LancesRoom.asm"
+INCLUDE "data/mapObjects/LancesRoom.asm"
+LancesRoom_Blocks: INCBIN "maps/LancesRoom.blk"
+
+INCLUDE "data/mapHeaders/HallOfFame.asm"
+INCLUDE "scripts/HallOfFame.asm"
+INCLUDE "data/mapObjects/HallOfFame.asm"
+HallOfFame_Blocks: INCBIN "maps/HallOfFame.blk"
INCLUDE "engine/overworld/saffron_guards.asm"
SECTION "bank17", ROMX
-CeruleanMartBlocks:
-VermilionMartBlocks:
-LavenderMartBlocks:
-SaffronMartBlocks: INCBIN "maps/ceruleanmart.blk"
-RedsHouse2FBlocks:
-CopycatsHouse2FBlocks: INCBIN "maps/redshouse2f.blk"
-Museum1FBlocks: INCBIN "maps/museum1f.blk"
-Museum2FBlocks: INCBIN "maps/museum2f.blk"
-PewterPokecenterBlocks:
-VermilionPokecenterBlocks:
-LavenderPokecenterBlocks:
-SaffronPokecenterBlocks: INCBIN "maps/pewterpokecenter.blk"
-UndergroundPathEntranceRoute5Blocks:
-UndergroundPathEntranceRoute6Blocks:
-UndergroundPathEntranceRoute7Blocks:
-UndergroundPathEntranceRoute7CopyBlocks: INCBIN "maps/undergroundpathentranceroute5.blk"
-ViridianForestEntranceBlocks:
-ViridianForestExitBlocks:
-Route2GateBlocks: INCBIN "maps/viridianforestentrance.blk"
-
-INCLUDE "data/mapHeaders/redshouse2f.asm"
-INCLUDE "scripts/redshouse2f.asm"
-INCLUDE "data/mapObjects/redshouse2f.asm"
+SaffronMart_Blocks:
+LavenderMart_Blocks:
+CeruleanMart_Blocks:
+VermilionMart_Blocks: INCBIN "maps/VermilionMart.blk"
+
+CopycatsHouse2F_Blocks:
+RedsHouse2F_Blocks: INCBIN "maps/RedsHouse2F.blk"
+
+Museum1F_Blocks: INCBIN "maps/Museum1F.blk"
+
+Museum2F_Blocks: INCBIN "maps/Museum2F.blk"
+
+SaffronPokecenter_Blocks:
+VermilionPokecenter_Blocks:
+LavenderPokecenter_Blocks:
+PewterPokecenter_Blocks: INCBIN "maps/PewterPokecenter.blk"
+
+UndergroundPathRoute7_Blocks:
+UndergroundPathRoute7Copy_Blocks:
+UndergroundPathRoute6_Blocks:
+UndergroundPathRoute5_Blocks: INCBIN "maps/UndergroundPathRoute5.blk"
+
+Route2Gate_Blocks:
+ViridianForestSouthGate_Blocks:
+ViridianForestNorthGate_Blocks: INCBIN "maps/ViridianForestNorthGate.blk"
+
+INCLUDE "data/mapHeaders/RedsHouse2F.asm"
+INCLUDE "scripts/RedsHouse2F.asm"
+INCLUDE "data/mapObjects/RedsHouse2F.asm"
INCLUDE "engine/predefs17.asm"
-INCLUDE "data/mapHeaders/museum1f.asm"
-INCLUDE "scripts/museum1f.asm"
-INCLUDE "data/mapObjects/museum1f.asm"
-
-INCLUDE "data/mapHeaders/museum2f.asm"
-INCLUDE "scripts/museum2f.asm"
-INCLUDE "data/mapObjects/museum2f.asm"
-
-INCLUDE "data/mapHeaders/pewtergym.asm"
-INCLUDE "scripts/pewtergym.asm"
-INCLUDE "data/mapObjects/pewtergym.asm"
-PewterGymBlocks: INCBIN "maps/pewtergym.blk"
-
-INCLUDE "data/mapHeaders/pewterpokecenter.asm"
-INCLUDE "scripts/pewterpokecenter.asm"
-INCLUDE "data/mapObjects/pewterpokecenter.asm"
-
-INCLUDE "data/mapHeaders/ceruleanpokecenter.asm"
-INCLUDE "scripts/ceruleanpokecenter.asm"
-INCLUDE "data/mapObjects/ceruleanpokecenter.asm"
-CeruleanPokecenterBlocks: INCBIN "maps/ceruleanpokecenter.blk"
-
-INCLUDE "data/mapHeaders/ceruleangym.asm"
-INCLUDE "scripts/ceruleangym.asm"
-INCLUDE "data/mapObjects/ceruleangym.asm"
-CeruleanGymBlocks: INCBIN "maps/ceruleangym.blk"
-
-INCLUDE "data/mapHeaders/ceruleanmart.asm"
-INCLUDE "scripts/ceruleanmart.asm"
-INCLUDE "data/mapObjects/ceruleanmart.asm"
-
-INCLUDE "data/mapHeaders/lavenderpokecenter.asm"
-INCLUDE "scripts/lavenderpokecenter.asm"
-INCLUDE "data/mapObjects/lavenderpokecenter.asm"
-
-INCLUDE "data/mapHeaders/lavendermart.asm"
-INCLUDE "scripts/lavendermart.asm"
-INCLUDE "data/mapObjects/lavendermart.asm"
-
-INCLUDE "data/mapHeaders/vermilionpokecenter.asm"
-INCLUDE "scripts/vermilionpokecenter.asm"
-INCLUDE "data/mapObjects/vermilionpokecenter.asm"
-
-INCLUDE "data/mapHeaders/vermilionmart.asm"
-INCLUDE "scripts/vermilionmart.asm"
-INCLUDE "data/mapObjects/vermilionmart.asm"
-
-INCLUDE "data/mapHeaders/vermiliongym.asm"
-INCLUDE "scripts/vermiliongym.asm"
-INCLUDE "data/mapObjects/vermiliongym.asm"
-VermilionGymBlocks: INCBIN "maps/vermiliongym.blk"
-
-INCLUDE "data/mapHeaders/copycatshouse2f.asm"
-INCLUDE "scripts/copycatshouse2f.asm"
-INCLUDE "data/mapObjects/copycatshouse2f.asm"
-
-INCLUDE "data/mapHeaders/fightingdojo.asm"
-INCLUDE "scripts/fightingdojo.asm"
-INCLUDE "data/mapObjects/fightingdojo.asm"
-FightingDojoBlocks: INCBIN "maps/fightingdojo.blk"
-
-INCLUDE "data/mapHeaders/saffrongym.asm"
-INCLUDE "scripts/saffrongym.asm"
-INCLUDE "data/mapObjects/saffrongym.asm"
-SaffronGymBlocks: INCBIN "maps/saffrongym.blk"
-
-INCLUDE "data/mapHeaders/saffronmart.asm"
-INCLUDE "scripts/saffronmart.asm"
-INCLUDE "data/mapObjects/saffronmart.asm"
-
-INCLUDE "data/mapHeaders/silphco1.asm"
-INCLUDE "scripts/silphco1.asm"
-INCLUDE "data/mapObjects/silphco1.asm"
-SilphCo1Blocks: INCBIN "maps/silphco1.blk"
-
-INCLUDE "data/mapHeaders/saffronpokecenter.asm"
-INCLUDE "scripts/saffronpokecenter.asm"
-INCLUDE "data/mapObjects/saffronpokecenter.asm"
-
-INCLUDE "data/mapHeaders/viridianforestexit.asm"
-INCLUDE "scripts/viridianforestexit.asm"
-INCLUDE "data/mapObjects/viridianforestexit.asm"
-
-INCLUDE "data/mapHeaders/route2gate.asm"
-INCLUDE "scripts/route2gate.asm"
-INCLUDE "data/mapObjects/route2gate.asm"
-
-INCLUDE "data/mapHeaders/viridianforestentrance.asm"
-INCLUDE "scripts/viridianforestentrance.asm"
-INCLUDE "data/mapObjects/viridianforestentrance.asm"
-
-INCLUDE "data/mapHeaders/undergroundpathentranceroute5.asm"
-INCLUDE "scripts/undergroundpathentranceroute5.asm"
-INCLUDE "data/mapObjects/undergroundpathentranceroute5.asm"
-
-INCLUDE "data/mapHeaders/undergroundpathentranceroute6.asm"
-INCLUDE "scripts/undergroundpathentranceroute6.asm"
-INCLUDE "data/mapObjects/undergroundpathentranceroute6.asm"
-
-INCLUDE "data/mapHeaders/undergroundpathentranceroute7.asm"
-INCLUDE "scripts/undergroundpathentranceroute7.asm"
-INCLUDE "data/mapObjects/undergroundpathentranceroute7.asm"
-
-INCLUDE "data/mapHeaders/undergroundpathentranceroute7copy.asm"
-INCLUDE "scripts/undergroundpathentranceroute7copy.asm"
-INCLUDE "data/mapObjects/undergroundpathentranceroute7copy.asm"
-
-INCLUDE "data/mapHeaders/silphco9.asm"
-INCLUDE "scripts/silphco9.asm"
-INCLUDE "data/mapObjects/silphco9.asm"
-SilphCo9Blocks: INCBIN "maps/silphco9.blk"
-
-INCLUDE "data/mapHeaders/victoryroad1.asm"
-INCLUDE "scripts/victoryroad1.asm"
-INCLUDE "data/mapObjects/victoryroad1.asm"
-VictoryRoad1Blocks: INCBIN "maps/victoryroad1.blk"
+INCLUDE "data/mapHeaders/Museum1F.asm"
+INCLUDE "scripts/Museum1F.asm"
+INCLUDE "data/mapObjects/Museum1F.asm"
+
+INCLUDE "data/mapHeaders/Museum2F.asm"
+INCLUDE "scripts/Museum2F.asm"
+INCLUDE "data/mapObjects/Museum2F.asm"
+
+INCLUDE "data/mapHeaders/PewterGym.asm"
+INCLUDE "scripts/PewterGym.asm"
+INCLUDE "data/mapObjects/PewterGym.asm"
+PewterGym_Blocks: INCBIN "maps/PewterGym.blk"
+
+INCLUDE "data/mapHeaders/PewterPokecenter.asm"
+INCLUDE "scripts/PewterPokecenter.asm"
+INCLUDE "data/mapObjects/PewterPokecenter.asm"
+
+INCLUDE "data/mapHeaders/CeruleanPokecenter.asm"
+INCLUDE "scripts/CeruleanPokecenter.asm"
+INCLUDE "data/mapObjects/CeruleanPokecenter.asm"
+CeruleanPokecenter_Blocks: INCBIN "maps/CeruleanPokecenter.blk"
+
+INCLUDE "data/mapHeaders/CeruleanGym.asm"
+INCLUDE "scripts/CeruleanGym.asm"
+INCLUDE "data/mapObjects/CeruleanGym.asm"
+CeruleanGym_Blocks: INCBIN "maps/CeruleanGym.blk"
+
+INCLUDE "data/mapHeaders/CeruleanMart.asm"
+INCLUDE "scripts/CeruleanMart.asm"
+INCLUDE "data/mapObjects/CeruleanMart.asm"
+
+INCLUDE "data/mapHeaders/LavenderPokecenter.asm"
+INCLUDE "scripts/LavenderPokecenter.asm"
+INCLUDE "data/mapObjects/LavenderPokecenter.asm"
+
+INCLUDE "data/mapHeaders/LavenderMart.asm"
+INCLUDE "scripts/LavenderMart.asm"
+INCLUDE "data/mapObjects/LavenderMart.asm"
+
+INCLUDE "data/mapHeaders/VermilionPokecenter.asm"
+INCLUDE "scripts/VermilionPokecenter.asm"
+INCLUDE "data/mapObjects/VermilionPokecenter.asm"
+
+INCLUDE "data/mapHeaders/VermilionMart.asm"
+INCLUDE "scripts/VermilionMart.asm"
+INCLUDE "data/mapObjects/VermilionMart.asm"
+
+INCLUDE "data/mapHeaders/VermilionGym.asm"
+INCLUDE "scripts/VermilionGym.asm"
+INCLUDE "data/mapObjects/VermilionGym.asm"
+VermilionGym_Blocks: INCBIN "maps/VermilionGym.blk"
+
+INCLUDE "data/mapHeaders/CopycatsHouse2F.asm"
+INCLUDE "scripts/CopycatsHouse2F.asm"
+INCLUDE "data/mapObjects/CopycatsHouse2F.asm"
+
+INCLUDE "data/mapHeaders/FightingDojo.asm"
+INCLUDE "scripts/FightingDojo.asm"
+INCLUDE "data/mapObjects/FightingDojo.asm"
+FightingDojo_Blocks: INCBIN "maps/FightingDojo.blk"
+
+INCLUDE "data/mapHeaders/SaffronGym.asm"
+INCLUDE "scripts/SaffronGym.asm"
+INCLUDE "data/mapObjects/SaffronGym.asm"
+SaffronGym_Blocks: INCBIN "maps/SaffronGym.blk"
+
+INCLUDE "data/mapHeaders/SaffronMart.asm"
+INCLUDE "scripts/SaffronMart.asm"
+INCLUDE "data/mapObjects/SaffronMart.asm"
+
+INCLUDE "data/mapHeaders/SilphCo1F.asm"
+INCLUDE "scripts/SilphCo1F.asm"
+INCLUDE "data/mapObjects/SilphCo1F.asm"
+SilphCo1F_Blocks: INCBIN "maps/SilphCo1F.blk"
+
+INCLUDE "data/mapHeaders/SaffronPokecenter.asm"
+INCLUDE "scripts/SaffronPokecenter.asm"
+INCLUDE "data/mapObjects/SaffronPokecenter.asm"
+
+INCLUDE "data/mapHeaders/ViridianForestNorthGate.asm"
+INCLUDE "scripts/ViridianForestNorthGate.asm"
+INCLUDE "data/mapObjects/ViridianForestNorthGate.asm"
+
+INCLUDE "data/mapHeaders/Route2Gate.asm"
+INCLUDE "scripts/Route2Gate.asm"
+INCLUDE "data/mapObjects/Route2Gate.asm"
+
+INCLUDE "data/mapHeaders/ViridianForestSouthGate.asm"
+INCLUDE "scripts/ViridianForestSouthGate.asm"
+INCLUDE "data/mapObjects/ViridianForestSouthGate.asm"
+
+INCLUDE "data/mapHeaders/UndergroundPathRoute5.asm"
+INCLUDE "scripts/UndergroundPathRoute5.asm"
+INCLUDE "data/mapObjects/UndergroundPathRoute5.asm"
+
+INCLUDE "data/mapHeaders/UndergroundPathRoute6.asm"
+INCLUDE "scripts/UndergroundPathRoute6.asm"
+INCLUDE "data/mapObjects/UndergroundPathRoute6.asm"
+
+INCLUDE "data/mapHeaders/UndergroundPathRoute7.asm"
+INCLUDE "scripts/UndergroundPathRoute7.asm"
+INCLUDE "data/mapObjects/UndergroundPathRoute7.asm"
+
+INCLUDE "data/mapHeaders/UndergroundPathRoute7Copy.asm"
+INCLUDE "scripts/UndergroundPathRoute7Copy.asm"
+INCLUDE "data/mapObjects/UndergroundPathRoute7Copy.asm"
+
+INCLUDE "data/mapHeaders/SilphCo9F.asm"
+INCLUDE "scripts/SilphCo9F.asm"
+INCLUDE "data/mapObjects/SilphCo9F.asm"
+SilphCo9F_Blocks: INCBIN "maps/SilphCo9F.blk"
+
+INCLUDE "data/mapHeaders/VictoryRoad1F.asm"
+INCLUDE "scripts/VictoryRoad1F.asm"
+INCLUDE "data/mapObjects/VictoryRoad1F.asm"
+VictoryRoad1F_Blocks: INCBIN "maps/VictoryRoad1F.blk"
INCLUDE "engine/evolution.asm"
@@ -1639,118 +1664,118 @@ INCLUDE "engine/hidden_object_functions17.asm"
SECTION "bank18", ROMX
-ViridianForestBlocks: INCBIN "maps/viridianforest.blk"
-UndergroundPathNSBlocks: INCBIN "maps/undergroundpathns.blk"
-UndergroundPathWEBlocks: INCBIN "maps/undergroundpathwe.blk"
+ViridianForest_Blocks: INCBIN "maps/ViridianForest.blk"
+UndergroundPathNorthSouth_Blocks: INCBIN "maps/UndergroundPathNorthSouth.blk"
+UndergroundPathWestEast_Blocks: INCBIN "maps/UndergroundPathWestEast.blk"
-INCBIN "maps/unusedblocks60258.blk"
+ INCBIN "maps/UnusedDiglettsCaveCopy.blk"
-SSAnne9Blocks:
-SSAnne10Blocks: INCBIN "maps/ssanne9.blk"
+SSAnneB1FRooms_Blocks:
+SSAnne2FRooms_Blocks: INCBIN "maps/SSAnne2FRooms.blk"
-INCLUDE "data/mapHeaders/pokemontower1.asm"
-INCLUDE "scripts/pokemontower1.asm"
-INCLUDE "data/mapObjects/pokemontower1.asm"
-PokemonTower1Blocks: INCBIN "maps/pokemontower1.blk"
+INCLUDE "data/mapHeaders/PokemonTower1F.asm"
+INCLUDE "scripts/PokemonTower1F.asm"
+INCLUDE "data/mapObjects/PokemonTower1F.asm"
+PokemonTower1F_Blocks: INCBIN "maps/PokemonTower1F.blk"
-INCLUDE "data/mapHeaders/pokemontower2.asm"
-INCLUDE "scripts/pokemontower2.asm"
-INCLUDE "data/mapObjects/pokemontower2.asm"
-PokemonTower2Blocks: INCBIN "maps/pokemontower2.blk"
+INCLUDE "data/mapHeaders/PokemonTower2F.asm"
+INCLUDE "scripts/PokemonTower2F.asm"
+INCLUDE "data/mapObjects/PokemonTower2F.asm"
+PokemonTower2F_Blocks: INCBIN "maps/PokemonTower2F.blk"
-INCLUDE "data/mapHeaders/pokemontower3.asm"
-INCLUDE "scripts/pokemontower3.asm"
-INCLUDE "data/mapObjects/pokemontower3.asm"
-PokemonTower3Blocks: INCBIN "maps/pokemontower3.blk"
+INCLUDE "data/mapHeaders/PokemonTower3F.asm"
+INCLUDE "scripts/PokemonTower3F.asm"
+INCLUDE "data/mapObjects/PokemonTower3F.asm"
+PokemonTower3F_Blocks: INCBIN "maps/PokemonTower3F.blk"
-INCLUDE "data/mapHeaders/pokemontower4.asm"
-INCLUDE "scripts/pokemontower4.asm"
-INCLUDE "data/mapObjects/pokemontower4.asm"
-PokemonTower4Blocks: INCBIN "maps/pokemontower4.blk"
+INCLUDE "data/mapHeaders/PokemonTower4F.asm"
+INCLUDE "scripts/PokemonTower4F.asm"
+INCLUDE "data/mapObjects/PokemonTower4F.asm"
+PokemonTower4F_Blocks: INCBIN "maps/PokemonTower4F.blk"
-INCLUDE "data/mapHeaders/pokemontower5.asm"
-INCLUDE "scripts/pokemontower5.asm"
-INCLUDE "data/mapObjects/pokemontower5.asm"
-PokemonTower5Blocks: INCBIN "maps/pokemontower5.blk"
+INCLUDE "data/mapHeaders/PokemonTower5F.asm"
+INCLUDE "scripts/PokemonTower5F.asm"
+INCLUDE "data/mapObjects/PokemonTower5F.asm"
+PokemonTower5F_Blocks: INCBIN "maps/PokemonTower5F.blk"
-INCLUDE "data/mapHeaders/pokemontower6.asm"
-INCLUDE "scripts/pokemontower6.asm"
-INCLUDE "data/mapObjects/pokemontower6.asm"
-PokemonTower6Blocks: INCBIN "maps/pokemontower6.blk"
+INCLUDE "data/mapHeaders/PokemonTower6F.asm"
+INCLUDE "scripts/PokemonTower6F.asm"
+INCLUDE "data/mapObjects/PokemonTower6F.asm"
+PokemonTower6F_Blocks: INCBIN "maps/PokemonTower6F.blk"
-INCBIN "maps/unusedblocks60cef.blk"
+ INCBIN "maps/UnusedEmptyMap.blk"
-INCLUDE "data/mapHeaders/pokemontower7.asm"
-INCLUDE "scripts/pokemontower7.asm"
-INCLUDE "data/mapObjects/pokemontower7.asm"
-PokemonTower7Blocks: INCBIN "maps/pokemontower7.blk"
+INCLUDE "data/mapHeaders/PokemonTower7F.asm"
+INCLUDE "scripts/PokemonTower7F.asm"
+INCLUDE "data/mapObjects/PokemonTower7F.asm"
+PokemonTower7F_Blocks: INCBIN "maps/PokemonTower7F.blk"
INCLUDE "engine/overworld/cinnabar_lab.asm"
-INCLUDE "data/mapHeaders/viridianforest.asm"
-INCLUDE "scripts/viridianforest.asm"
-INCLUDE "data/mapObjects/viridianforest.asm"
-
-INCLUDE "data/mapHeaders/ssanne1.asm"
-INCLUDE "scripts/ssanne1.asm"
-INCLUDE "data/mapObjects/ssanne1.asm"
-SSAnne1Blocks: INCBIN "maps/ssanne1.blk"
-
-INCLUDE "data/mapHeaders/ssanne2.asm"
-INCLUDE "scripts/ssanne2.asm"
-INCLUDE "data/mapObjects/ssanne2.asm"
-SSAnne2Blocks: INCBIN "maps/ssanne2.blk"
-
-INCLUDE "data/mapHeaders/ssanne4.asm"
-INCLUDE "scripts/ssanne4.asm"
-INCLUDE "data/mapObjects/ssanne4.asm"
-SSAnne4Blocks: INCBIN "maps/ssanne4.blk"
-
-INCLUDE "data/mapHeaders/ssanne5.asm"
-INCLUDE "scripts/ssanne5.asm"
-INCLUDE "data/mapObjects/ssanne5.asm"
-SSAnne5Blocks: INCBIN "maps/ssanne5.blk"
-
-INCLUDE "data/mapHeaders/ssanne6.asm"
-INCLUDE "scripts/ssanne6.asm"
-INCLUDE "data/mapObjects/ssanne6.asm"
-SSAnne6Blocks: INCBIN "maps/ssanne6.blk"
-
-INCLUDE "data/mapHeaders/ssanne7.asm"
-INCLUDE "scripts/ssanne7.asm"
-INCLUDE "data/mapObjects/ssanne7.asm"
-SSAnne7Blocks: INCBIN "maps/ssanne7.blk"
-
-INCLUDE "data/mapHeaders/ssanne8.asm"
-INCLUDE "scripts/ssanne8.asm"
-INCLUDE "data/mapObjects/ssanne8.asm"
-SSAnne8Blocks: INCBIN "maps/ssanne8.blk"
-
-INCLUDE "data/mapHeaders/ssanne9.asm"
-INCLUDE "scripts/ssanne9.asm"
-INCLUDE "data/mapObjects/ssanne9.asm"
-
-INCLUDE "data/mapHeaders/ssanne10.asm"
-INCLUDE "scripts/ssanne10.asm"
-INCLUDE "data/mapObjects/ssanne10.asm"
-
-INCLUDE "data/mapHeaders/undergroundpathns.asm"
-INCLUDE "scripts/undergroundpathns.asm"
-INCLUDE "data/mapObjects/undergroundpathns.asm"
-
-INCLUDE "data/mapHeaders/undergroundpathwe.asm"
-INCLUDE "scripts/undergroundpathwe.asm"
-INCLUDE "data/mapObjects/undergroundpathwe.asm"
-
-INCLUDE "data/mapHeaders/diglettscave.asm"
-INCLUDE "scripts/diglettscave.asm"
-INCLUDE "data/mapObjects/diglettscave.asm"
-DiglettsCaveBlocks: INCBIN "maps/diglettscave.blk"
-
-INCLUDE "data/mapHeaders/silphco11.asm"
-INCLUDE "scripts/silphco11.asm"
-INCLUDE "data/mapObjects/silphco11.asm"
-SilphCo11Blocks: INCBIN "maps/silphco11.blk"
+INCLUDE "data/mapHeaders/ViridianForest.asm"
+INCLUDE "scripts/ViridianForest.asm"
+INCLUDE "data/mapObjects/ViridianForest.asm"
+
+INCLUDE "data/mapHeaders/SSAnne1F.asm"
+INCLUDE "scripts/SSAnne1F.asm"
+INCLUDE "data/mapObjects/SSAnne1F.asm"
+SSAnne1F_Blocks: INCBIN "maps/SSAnne1F.blk"
+
+INCLUDE "data/mapHeaders/SSAnne2F.asm"
+INCLUDE "scripts/SSAnne2F.asm"
+INCLUDE "data/mapObjects/SSAnne2F.asm"
+SSAnne2F_Blocks: INCBIN "maps/SSAnne2F.blk"
+
+INCLUDE "data/mapHeaders/SSAnneB1F.asm"
+INCLUDE "scripts/SSAnneB1F.asm"
+INCLUDE "data/mapObjects/SSAnneB1F.asm"
+SSAnneB1F_Blocks: INCBIN "maps/SSAnneB1F.blk"
+
+INCLUDE "data/mapHeaders/SSAnneBow.asm"
+INCLUDE "scripts/SSAnneBow.asm"
+INCLUDE "data/mapObjects/SSAnneBow.asm"
+SSAnneBow_Blocks: INCBIN "maps/SSAnneBow.blk"
+
+INCLUDE "data/mapHeaders/SSAnneKitchen.asm"
+INCLUDE "scripts/SSAnneKitchen.asm"
+INCLUDE "data/mapObjects/SSAnneKitchen.asm"
+SSAnneKitchen_Blocks: INCBIN "maps/SSAnneKitchen.blk"
+
+INCLUDE "data/mapHeaders/SSAnneCaptainsRoom.asm"
+INCLUDE "scripts/SSAnneCaptainsRoom.asm"
+INCLUDE "data/mapObjects/SSAnneCaptainsRoom.asm"
+SSAnneCaptainsRoom_Blocks: INCBIN "maps/SSAnneCaptainsRoom.blk"
+
+INCLUDE "data/mapHeaders/SSAnne1FRooms.asm"
+INCLUDE "scripts/SSAnne1FRooms.asm"
+INCLUDE "data/mapObjects/SSAnne1FRooms.asm"
+SSAnne1FRooms_Blocks: INCBIN "maps/SSAnne1FRooms.blk"
+
+INCLUDE "data/mapHeaders/SSAnne2FRooms.asm"
+INCLUDE "scripts/SSAnne2FRooms.asm"
+INCLUDE "data/mapObjects/SSAnne2FRooms.asm"
+
+INCLUDE "data/mapHeaders/SSAnneB1FRooms.asm"
+INCLUDE "scripts/SSAnneB1FRooms.asm"
+INCLUDE "data/mapObjects/SSAnneB1FRooms.asm"
+
+INCLUDE "data/mapHeaders/UndergroundPathNorthSouth.asm"
+INCLUDE "scripts/UndergroundPathNorthSouth.asm"
+INCLUDE "data/mapObjects/UndergroundPathNorthSouth.asm"
+
+INCLUDE "data/mapHeaders/UndergroundPathWestEast.asm"
+INCLUDE "scripts/UndergroundPathWestEast.asm"
+INCLUDE "data/mapObjects/UndergroundPathWestEast.asm"
+
+INCLUDE "data/mapHeaders/DiglettsCave.asm"
+INCLUDE "scripts/DiglettsCave.asm"
+INCLUDE "data/mapObjects/DiglettsCave.asm"
+DiglettsCave_Blocks: INCBIN "maps/DiglettsCave.blk"
+
+INCLUDE "data/mapHeaders/SilphCo11F.asm"
+INCLUDE "scripts/SilphCo11F.asm"
+INCLUDE "data/mapObjects/SilphCo11F.asm"
+SilphCo11F_Blocks: INCBIN "maps/SilphCo11F.blk"
INCLUDE "engine/hidden_object_functions18.asm"
@@ -1758,19 +1783,21 @@ INCLUDE "engine/hidden_object_functions18.asm"
SECTION "bank19", ROMX
Overworld_GFX: INCBIN "gfx/tilesets/overworld.2bpp"
-ds 32
+ ds 32
Overworld_Block: INCBIN "gfx/blocksets/overworld.bst"
+
RedsHouse1_GFX:
-RedsHouse2_GFX: INCBIN "gfx/tilesets/redshouse2.2bpp"
-ds 16
+RedsHouse2_GFX: INCBIN "gfx/tilesets/reds_house.2bpp"
+ ds 16
RedsHouse1_Block:
-RedsHouse2_Block: INCBIN "gfx/blocksets/redshouse2.bst"
+RedsHouse2_Block: INCBIN "gfx/blocksets/reds_house.bst"
+
House_GFX: INCBIN "gfx/tilesets/house.2bpp"
House_Block: INCBIN "gfx/blocksets/house.bst"
Mansion_GFX: INCBIN "gfx/tilesets/mansion.2bpp"
Mansion_Block: INCBIN "gfx/blocksets/mansion.bst"
-ShipPort_GFX: INCBIN "gfx/tilesets/shipport.2bpp"
-ShipPort_Block: INCBIN "gfx/blocksets/shipport.bst"
+ShipPort_GFX: INCBIN "gfx/tilesets/ship_port.2bpp"
+ShipPort_Block: INCBIN "gfx/blocksets/ship_port.bst"
Interior_GFX: INCBIN "gfx/tilesets/interior.2bpp"
Interior_Block: INCBIN "gfx/blocksets/interior.bst"
Plateau_GFX: INCBIN "gfx/tilesets/plateau.2bpp"
@@ -1785,16 +1812,19 @@ Dojo_GFX:
Gym_GFX: INCBIN "gfx/tilesets/gym.2bpp"
Dojo_Block:
Gym_Block: INCBIN "gfx/blocksets/gym.bst"
+
Mart_GFX:
Pokecenter_GFX: INCBIN "gfx/tilesets/pokecenter.2bpp"
Mart_Block:
Pokecenter_Block: INCBIN "gfx/blocksets/pokecenter.bst"
+
ForestGate_GFX:
-Gate_GFX:
-Museum_GFX: INCBIN "gfx/tilesets/museum.2bpp"
+Museum_GFX:
+Gate_GFX: INCBIN "gfx/tilesets/gate.2bpp"
ForestGate_Block:
-Gate_Block:
-Museum_Block: INCBIN "gfx/blocksets/museum.bst"
+Museum_Block:
+Gate_Block: INCBIN "gfx/blocksets/gate.bst"
+
Forest_GFX: INCBIN "gfx/tilesets/forest.2bpp"
Forest_Block: INCBIN "gfx/blocksets/forest.bst"
Facility_GFX: INCBIN "gfx/tilesets/facility.2bpp"
@@ -1836,122 +1866,127 @@ INCLUDE "engine/save.asm"
SECTION "bank1D", ROMX
-CopycatsHouse1FBlocks: INCBIN "maps/copycatshouse1f.blk"
-PewterMartBlocks:
-CinnabarMartBlocks: INCBIN "maps/pewtermart.blk"
-FuchsiaHouse1Blocks: INCBIN "maps/fuchsiahouse1.blk"
-FuchsiaPokecenterBlocks:
-CinnabarPokecenterBlocks: INCBIN "maps/fuchsiapokecenter.blk"
-CeruleanHouse2Blocks: INCBIN "maps/ceruleanhouse2.blk"
+CopycatsHouse1F_Blocks: INCBIN "maps/CopycatsHouse1F.blk"
+
+CinnabarMart_Blocks:
+PewterMart_Blocks: INCBIN "maps/PewterMart.blk"
+
+FuchsiaBillsGrandpasHouse_Blocks: INCBIN "maps/FuchsiaBillsGrandpasHouse.blk"
+
+CinnabarPokecenter_Blocks:
+FuchsiaPokecenter_Blocks: INCBIN "maps/FuchsiaPokecenter.blk"
+
+CeruleanBadgeHouse_Blocks: INCBIN "maps/CeruleanBadgeHouse.blk"
INCLUDE "engine/items/itemfinder.asm"
-INCLUDE "scripts/ceruleancity2.asm"
-INCLUDE "data/mapHeaders/viridiangym.asm"
-INCLUDE "scripts/viridiangym.asm"
-INCLUDE "data/mapObjects/viridiangym.asm"
-ViridianGymBlocks: INCBIN "maps/viridiangym.blk"
+INCLUDE "scripts/CeruleanCity_2.asm"
+
+INCLUDE "data/mapHeaders/ViridianGym.asm"
+INCLUDE "scripts/ViridianGym.asm"
+INCLUDE "data/mapObjects/ViridianGym.asm"
+ViridianGym_Blocks: INCBIN "maps/ViridianGym.blk"
-INCLUDE "data/mapHeaders/pewtermart.asm"
-INCLUDE "scripts/pewtermart.asm"
-INCLUDE "data/mapObjects/pewtermart.asm"
+INCLUDE "data/mapHeaders/PewterMart.asm"
+INCLUDE "scripts/PewterMart.asm"
+INCLUDE "data/mapObjects/PewterMart.asm"
-INCLUDE "data/mapHeaders/unknowndungeon1.asm"
-INCLUDE "scripts/unknowndungeon1.asm"
-INCLUDE "data/mapObjects/unknowndungeon1.asm"
-UnknownDungeon1Blocks: INCBIN "maps/unknowndungeon1.blk"
+INCLUDE "data/mapHeaders/CeruleanCave1F.asm"
+INCLUDE "scripts/CeruleanCave1F.asm"
+INCLUDE "data/mapObjects/CeruleanCave1F.asm"
+CeruleanCave1F_Blocks: INCBIN "maps/CeruleanCave1F.blk"
-INCLUDE "data/mapHeaders/ceruleanhouse2.asm"
-INCLUDE "scripts/ceruleanhouse2.asm"
-INCLUDE "data/mapObjects/ceruleanhouse2.asm"
+INCLUDE "data/mapHeaders/CeruleanBadgeHouse.asm"
+INCLUDE "scripts/CeruleanBadgeHouse.asm"
+INCLUDE "data/mapObjects/CeruleanBadgeHouse.asm"
INCLUDE "engine/menu/vending_machine.asm"
-INCLUDE "data/mapHeaders/fuchsiahouse1.asm"
-INCLUDE "scripts/fuchsiahouse1.asm"
-INCLUDE "data/mapObjects/fuchsiahouse1.asm"
-
-INCLUDE "data/mapHeaders/fuchsiapokecenter.asm"
-INCLUDE "scripts/fuchsiapokecenter.asm"
-INCLUDE "data/mapObjects/fuchsiapokecenter.asm"
-
-INCLUDE "data/mapHeaders/fuchsiahouse2.asm"
-INCLUDE "scripts/fuchsiahouse2.asm"
-INCLUDE "data/mapObjects/fuchsiahouse2.asm"
-FuchsiaHouse2Blocks: INCBIN "maps/fuchsiahouse2.blk"
-
-INCLUDE "data/mapHeaders/safarizoneentrance.asm"
-INCLUDE "data/mapObjects/safarizoneentrance.asm"
-SafariZoneEntranceBlocks: INCBIN "maps/safarizoneentrance.blk"
-INCLUDE "scripts/safarizoneentrance.asm"
-
-INCLUDE "data/mapHeaders/fuchsiagym.asm"
-INCLUDE "scripts/fuchsiagym.asm"
-INCLUDE "data/mapObjects/fuchsiagym.asm"
-FuchsiaGymBlocks: INCBIN "maps/fuchsiagym.blk"
-
-INCLUDE "data/mapHeaders/fuchsiameetingroom.asm"
-INCLUDE "scripts/fuchsiameetingroom.asm"
-INCLUDE "data/mapObjects/fuchsiameetingroom.asm"
-FuchsiaMeetingRoomBlocks: INCBIN "maps/fuchsiameetingroom.blk"
-
-INCLUDE "data/mapHeaders/cinnabargym.asm"
-INCLUDE "scripts/cinnabargym.asm"
-INCLUDE "data/mapObjects/cinnabargym.asm"
-CinnabarGymBlocks: INCBIN "maps/cinnabargym.blk"
-INCLUDE "scripts/cinnabargym2.asm"
-
-INCLUDE "data/mapHeaders/lab1.asm"
-INCLUDE "scripts/lab1.asm"
-INCLUDE "data/mapObjects/lab1.asm"
-Lab1Blocks: INCBIN "maps/lab1.blk"
-
-INCLUDE "data/mapHeaders/lab2.asm"
-INCLUDE "scripts/lab2.asm"
-INCLUDE "data/mapObjects/lab2.asm"
-Lab2Blocks: INCBIN "maps/lab2.blk"
-
-INCLUDE "data/mapHeaders/lab3.asm"
-INCLUDE "scripts/lab3.asm"
-INCLUDE "data/mapObjects/lab3.asm"
-Lab3Blocks: INCBIN "maps/lab3.blk"
-
-INCLUDE "data/mapHeaders/lab4.asm"
-INCLUDE "scripts/lab4.asm"
-INCLUDE "data/mapObjects/lab4.asm"
-Lab4Blocks: INCBIN "maps/lab4.blk"
-
-INCLUDE "data/mapHeaders/cinnabarpokecenter.asm"
-INCLUDE "scripts/cinnabarpokecenter.asm"
-INCLUDE "data/mapObjects/cinnabarpokecenter.asm"
-
-INCLUDE "data/mapHeaders/cinnabarmart.asm"
-INCLUDE "scripts/cinnabarmart.asm"
-INCLUDE "data/mapObjects/cinnabarmart.asm"
-
-INCLUDE "data/mapHeaders/copycatshouse1f.asm"
-INCLUDE "scripts/copycatshouse1f.asm"
-INCLUDE "data/mapObjects/copycatshouse1f.asm"
-
-INCLUDE "data/mapHeaders/gary.asm"
-INCLUDE "scripts/gary.asm"
-INCLUDE "data/mapObjects/gary.asm"
-GaryBlocks: INCBIN "maps/gary.blk"
-
-INCLUDE "data/mapHeaders/lorelei.asm"
-INCLUDE "scripts/lorelei.asm"
-INCLUDE "data/mapObjects/lorelei.asm"
-LoreleiBlocks: INCBIN "maps/lorelei.blk"
-
-INCLUDE "data/mapHeaders/bruno.asm"
-INCLUDE "scripts/bruno.asm"
-INCLUDE "data/mapObjects/bruno.asm"
-BrunoBlocks: INCBIN "maps/bruno.blk"
-
-INCLUDE "data/mapHeaders/agatha.asm"
-INCLUDE "scripts/agatha.asm"
-INCLUDE "data/mapObjects/agatha.asm"
-AgathaBlocks: INCBIN "maps/agatha.blk"
+INCLUDE "data/mapHeaders/FuchsiaBillsGrandpasHouse.asm"
+INCLUDE "scripts/FuchsiaBillsGrandpasHouse.asm"
+INCLUDE "data/mapObjects/FuchsiaBillsGrandpasHouse.asm"
+
+INCLUDE "data/mapHeaders/FuchsiaPokecenter.asm"
+INCLUDE "scripts/FuchsiaPokecenter.asm"
+INCLUDE "data/mapObjects/FuchsiaPokecenter.asm"
+
+INCLUDE "data/mapHeaders/WardensHouse.asm"
+INCLUDE "scripts/WardensHouse.asm"
+INCLUDE "data/mapObjects/WardensHouse.asm"
+WardensHouse_Blocks: INCBIN "maps/WardensHouse.blk"
+
+INCLUDE "data/mapHeaders/SafariZoneGate.asm"
+INCLUDE "data/mapObjects/SafariZoneGate.asm"
+SafariZoneGate_Blocks: INCBIN "maps/SafariZoneGate.blk"
+INCLUDE "scripts/SafariZoneGate.asm"
+
+INCLUDE "data/mapHeaders/FuchsiaGym.asm"
+INCLUDE "scripts/FuchsiaGym.asm"
+INCLUDE "data/mapObjects/FuchsiaGym.asm"
+FuchsiaGym_Blocks: INCBIN "maps/FuchsiaGym.blk"
+
+INCLUDE "data/mapHeaders/FuchsiaMeetingRoom.asm"
+INCLUDE "scripts/FuchsiaMeetingRoom.asm"
+INCLUDE "data/mapObjects/FuchsiaMeetingRoom.asm"
+FuchsiaMeetingRoom_Blocks: INCBIN "maps/FuchsiaMeetingRoom.blk"
+
+INCLUDE "data/mapHeaders/CinnabarGym.asm"
+INCLUDE "scripts/CinnabarGym.asm"
+INCLUDE "data/mapObjects/CinnabarGym.asm"
+CinnabarGym_Blocks: INCBIN "maps/CinnabarGym.blk"
+INCLUDE "scripts/CinnabarGym_2.asm"
+
+INCLUDE "data/mapHeaders/CinnabarLab.asm"
+INCLUDE "scripts/CinnabarLab.asm"
+INCLUDE "data/mapObjects/CinnabarLab.asm"
+CinnabarLab_Blocks: INCBIN "maps/CinnabarLab.blk"
+
+INCLUDE "data/mapHeaders/CinnabarLabTradeRoom.asm"
+INCLUDE "scripts/CinnabarLabTradeRoom.asm"
+INCLUDE "data/mapObjects/CinnabarLabTradeRoom.asm"
+CinnabarLabTradeRoom_Blocks: INCBIN "maps/CinnabarLabTradeRoom.blk"
+
+INCLUDE "data/mapHeaders/CinnabarLabMetronomeRoom.asm"
+INCLUDE "scripts/CinnabarLabMetronomeRoom.asm"
+INCLUDE "data/mapObjects/CinnabarLabMetronomeRoom.asm"
+CinnabarLabMetronomeRoom_Blocks: INCBIN "maps/CinnabarLabMetronomeRoom.blk"
+
+INCLUDE "data/mapHeaders/CinnabarLabFossilRoom.asm"
+INCLUDE "scripts/CinnabarLabFossilRoom.asm"
+INCLUDE "data/mapObjects/CinnabarLabFossilRoom.asm"
+CinnabarLabFossilRoom_Blocks: INCBIN "maps/CinnabarLabFossilRoom.blk"
+
+INCLUDE "data/mapHeaders/CinnabarPokecenter.asm"
+INCLUDE "scripts/CinnabarPokecenter.asm"
+INCLUDE "data/mapObjects/CinnabarPokecenter.asm"
+
+INCLUDE "data/mapHeaders/CinnabarMart.asm"
+INCLUDE "scripts/CinnabarMart.asm"
+INCLUDE "data/mapObjects/CinnabarMart.asm"
+
+INCLUDE "data/mapHeaders/CopycatsHouse1F.asm"
+INCLUDE "scripts/CopycatsHouse1F.asm"
+INCLUDE "data/mapObjects/CopycatsHouse1F.asm"
+
+INCLUDE "data/mapHeaders/ChampionsRoom.asm"
+INCLUDE "scripts/ChampionsRoom.asm"
+INCLUDE "data/mapObjects/ChampionsRoom.asm"
+ChampionsRoom_Blocks: INCBIN "maps/ChampionsRoom.blk"
+
+INCLUDE "data/mapHeaders/LoreleisRoom.asm"
+INCLUDE "scripts/LoreleisRoom.asm"
+INCLUDE "data/mapObjects/LoreleisRoom.asm"
+LoreleisRoom_Blocks: INCBIN "maps/LoreleisRoom.blk"
+
+INCLUDE "data/mapHeaders/BrunosRoom.asm"
+INCLUDE "scripts/BrunosRoom.asm"
+INCLUDE "data/mapObjects/BrunosRoom.asm"
+BrunosRoom_Blocks: INCBIN "maps/BrunosRoom.blk"
+
+INCLUDE "data/mapHeaders/AgathasRoom.asm"
+INCLUDE "scripts/AgathasRoom.asm"
+INCLUDE "data/mapObjects/AgathasRoom.asm"
+AgathasRoom_Blocks: INCBIN "maps/AgathasRoom.blk"
INCLUDE "engine/menu/league_pc.asm"
diff --git a/maps/agatha.blk b/maps/AgathasRoom.blk
index 4167fdc5..4167fdc5 100644
--- a/maps/agatha.blk
+++ b/maps/AgathasRoom.blk
diff --git a/maps/beach_house.blk b/maps/BeachHouse.blk
index 5bcdb58a..5bcdb58a 100644
--- a/maps/beach_house.blk
+++ b/maps/BeachHouse.blk
diff --git a/maps/bikeshop.blk b/maps/BikeShop.blk
index 925be45c..925be45c 100644
--- a/maps/bikeshop.blk
+++ b/maps/BikeShop.blk
diff --git a/maps/billshouse.blk b/maps/BillsHouse.blk
index 112a2e81..112a2e81 100644
--- a/maps/billshouse.blk
+++ b/maps/BillsHouse.blk
diff --git a/maps/blueshouse.blk b/maps/BluesHouse.blk
index 823e6053..823e6053 100644
--- a/maps/blueshouse.blk
+++ b/maps/BluesHouse.blk
diff --git a/maps/bruno.blk b/maps/BrunosRoom.blk
index 2ecc677e..2ecc677e 100644
--- a/maps/bruno.blk
+++ b/maps/BrunosRoom.blk
diff --git a/maps/celadonhouse.blk b/maps/CeladonChiefHouse.blk
index 4181d9de..4181d9de 100644
--- a/maps/celadonhouse.blk
+++ b/maps/CeladonChiefHouse.blk
diff --git a/maps/celadoncity.blk b/maps/CeladonCity.blk
index f1fce6bc..f1fce6bc 100644
--- a/maps/celadoncity.blk
+++ b/maps/CeladonCity.blk
diff --git a/maps/celadondiner.blk b/maps/CeladonDiner.blk
index 4ef657b9..4ef657b9 100644
--- a/maps/celadondiner.blk
+++ b/maps/CeladonDiner.blk
diff --git a/maps/celadongym.blk b/maps/CeladonGym.blk
index 7ac1b683..7ac1b683 100644
--- a/maps/celadongym.blk
+++ b/maps/CeladonGym.blk
diff --git a/maps/celadonhotel.blk b/maps/CeladonHotel.blk
index d1399446..d1399446 100644
--- a/maps/celadonhotel.blk
+++ b/maps/CeladonHotel.blk
diff --git a/maps/celadonmansion1.blk b/maps/CeladonMansion1F.blk
index 97a1a91f..97a1a91f 100644
--- a/maps/celadonmansion1.blk
+++ b/maps/CeladonMansion1F.blk
diff --git a/maps/celadonmansion2.blk b/maps/CeladonMansion2F.blk
index 920282c1..920282c1 100644
--- a/maps/celadonmansion2.blk
+++ b/maps/CeladonMansion2F.blk
diff --git a/maps/celadonmansion3.blk b/maps/CeladonMansion3F.blk
index 5451ea7d..5451ea7d 100644
--- a/maps/celadonmansion3.blk
+++ b/maps/CeladonMansion3F.blk
diff --git a/maps/celadonmansion4.blk b/maps/CeladonMansionRoof.blk
index dafad3db..dafad3db 100644
--- a/maps/celadonmansion4.blk
+++ b/maps/CeladonMansionRoof.blk
diff --git a/maps/celadonmansion5.blk b/maps/CeladonMansionRoofHouse.blk
index 51bf8401..51bf8401 100644
--- a/maps/celadonmansion5.blk
+++ b/maps/CeladonMansionRoofHouse.blk
diff --git a/maps/celadonmart1.blk b/maps/CeladonMart1F.blk
index 0c805e4c..0c805e4c 100644
--- a/maps/celadonmart1.blk
+++ b/maps/CeladonMart1F.blk
diff --git a/maps/celadonmart2.blk b/maps/CeladonMart2F.blk
index 4ddd4f4b..4ddd4f4b 100644
--- a/maps/celadonmart2.blk
+++ b/maps/CeladonMart2F.blk
diff --git a/maps/celadonmart3.blk b/maps/CeladonMart3F.blk
index 3be70750..3be70750 100644
--- a/maps/celadonmart3.blk
+++ b/maps/CeladonMart3F.blk
diff --git a/maps/celadonmart4.blk b/maps/CeladonMart4F.blk
index 2066e69e..2066e69e 100644
--- a/maps/celadonmart4.blk
+++ b/maps/CeladonMart4F.blk
diff --git a/maps/celadonmart5.blk b/maps/CeladonMart5F.blk
index 8558b3de..8558b3de 100644
--- a/maps/celadonmart5.blk
+++ b/maps/CeladonMart5F.blk
diff --git a/maps/celadonmartelevator.blk b/maps/CeladonMartElevator.blk
index 824bc3de..824bc3de 100644
--- a/maps/celadonmartelevator.blk
+++ b/maps/CeladonMartElevator.blk
diff --git a/maps/celadonmartroof.blk b/maps/CeladonMartRoof.blk
index 520407ba..520407ba 100644
--- a/maps/celadonmartroof.blk
+++ b/maps/CeladonMartRoof.blk
diff --git a/maps/celadonpokecenter.blk b/maps/CeladonPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/celadonpokecenter.blk
+++ b/maps/CeladonPokecenter.blk
diff --git a/maps/ceruleanhouse2.blk b/maps/CeruleanBadgeHouse.blk
index 35443909..35443909 100644
--- a/maps/ceruleanhouse2.blk
+++ b/maps/CeruleanBadgeHouse.blk
diff --git a/maps/unknowndungeon1.blk b/maps/CeruleanCave1F.blk
index 7cc9d4d5..7cc9d4d5 100644
--- a/maps/unknowndungeon1.blk
+++ b/maps/CeruleanCave1F.blk
diff --git a/maps/unknowndungeon2.blk b/maps/CeruleanCave2F.blk
index f82b5aed..f82b5aed 100644
--- a/maps/unknowndungeon2.blk
+++ b/maps/CeruleanCave2F.blk
diff --git a/maps/unknowndungeon3.blk b/maps/CeruleanCaveB1F.blk
index 581ade79..581ade79 100644
--- a/maps/unknowndungeon3.blk
+++ b/maps/CeruleanCaveB1F.blk
diff --git a/maps/ceruleancity.blk b/maps/CeruleanCity.blk
index d7abfd3d..d7abfd3d 100644
--- a/maps/ceruleancity.blk
+++ b/maps/CeruleanCity.blk
diff --git a/maps/ceruleangym.blk b/maps/CeruleanGym.blk
index c5a3eab2..c5a3eab2 100644
--- a/maps/ceruleangym.blk
+++ b/maps/CeruleanGym.blk
diff --git a/maps/ceruleanmart.blk b/maps/CeruleanMart.blk
index 62385406..62385406 100644
--- a/maps/ceruleanmart.blk
+++ b/maps/CeruleanMart.blk
diff --git a/maps/ceruleanpokecenter.blk b/maps/CeruleanPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/ceruleanpokecenter.blk
+++ b/maps/CeruleanPokecenter.blk
diff --git a/maps/ceruleanhouse1.blk b/maps/CeruleanTradeHouse.blk
index 823e6053..823e6053 100644
--- a/maps/ceruleanhouse1.blk
+++ b/maps/CeruleanTradeHouse.blk
diff --git a/maps/ceruleanhousetrashed.blk b/maps/CeruleanTrashedHouse.blk
index cbc77e74..cbc77e74 100644
--- a/maps/ceruleanhousetrashed.blk
+++ b/maps/CeruleanTrashedHouse.blk
diff --git a/maps/gary.blk b/maps/ChampionsRoom.blk
index 8e5d10d0..8e5d10d0 100644
--- a/maps/gary.blk
+++ b/maps/ChampionsRoom.blk
diff --git a/maps/cinnabargym.blk b/maps/CinnabarGym.blk
index ab8de94a..ab8de94a 100644
--- a/maps/cinnabargym.blk
+++ b/maps/CinnabarGym.blk
diff --git a/maps/cinnabarisland.blk b/maps/CinnabarIsland.blk
index 1a7922c9..1a7922c9 100644
--- a/maps/cinnabarisland.blk
+++ b/maps/CinnabarIsland.blk
diff --git a/maps/lab1.blk b/maps/CinnabarLab.blk
index 7a6502a2..7a6502a2 100644
--- a/maps/lab1.blk
+++ b/maps/CinnabarLab.blk
diff --git a/maps/lab4.blk b/maps/CinnabarLabFossilRoom.blk
index d9a64a5d..d9a64a5d 100644
--- a/maps/lab4.blk
+++ b/maps/CinnabarLabFossilRoom.blk
diff --git a/maps/lab3.blk b/maps/CinnabarLabMetronomeRoom.blk
index 822db175..822db175 100644
--- a/maps/lab3.blk
+++ b/maps/CinnabarLabMetronomeRoom.blk
diff --git a/maps/lab2.blk b/maps/CinnabarLabTradeRoom.blk
index ef77b656..ef77b656 100644
--- a/maps/lab2.blk
+++ b/maps/CinnabarLabTradeRoom.blk
diff --git a/maps/cinnabarmart.blk b/maps/CinnabarMart.blk
index 62385406..62385406 100644
--- a/maps/cinnabarmart.blk
+++ b/maps/CinnabarMart.blk
diff --git a/maps/cinnabarpokecenter.blk b/maps/CinnabarPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/cinnabarpokecenter.blk
+++ b/maps/CinnabarPokecenter.blk
diff --git a/maps/colosseum.blk b/maps/Colosseum.blk
index d05a5b43..d05a5b43 100644
--- a/maps/colosseum.blk
+++ b/maps/Colosseum.blk
diff --git a/maps/copycatshouse1f.blk b/maps/CopycatsHouse1F.blk
index 1b7d4f07..1b7d4f07 100644
--- a/maps/copycatshouse1f.blk
+++ b/maps/CopycatsHouse1F.blk
diff --git a/maps/copycatshouse2f.blk b/maps/CopycatsHouse2F.blk
index dd9d1ea4..dd9d1ea4 100644
--- a/maps/copycatshouse2f.blk
+++ b/maps/CopycatsHouse2F.blk
diff --git a/maps/daycarem.blk b/maps/Daycare.blk
index 823e6053..823e6053 100644
--- a/maps/daycarem.blk
+++ b/maps/Daycare.blk
diff --git a/maps/diglettscave.blk b/maps/DiglettsCave.blk
index ff81fc7d..ff81fc7d 100644
--- a/maps/diglettscave.blk
+++ b/maps/DiglettsCave.blk
diff --git a/maps/diglettscaveentranceroute11.blk b/maps/DiglettsCaveRoute11.blk
index 5282c7dd..5282c7dd 100644
--- a/maps/diglettscaveentranceroute11.blk
+++ b/maps/DiglettsCaveRoute11.blk
diff --git a/maps/diglettscaveroute2.blk b/maps/DiglettsCaveRoute2.blk
index 5282c7dd..5282c7dd 100644
--- a/maps/diglettscaveroute2.blk
+++ b/maps/DiglettsCaveRoute2.blk
diff --git a/maps/fightingdojo.blk b/maps/FightingDojo.blk
index 3b13cc90..3b13cc90 100644
--- a/maps/fightingdojo.blk
+++ b/maps/FightingDojo.blk
diff --git a/maps/fuchsiahouse1.blk b/maps/FuchsiaBillsGrandpasHouse.blk
index 823e6053..823e6053 100644
--- a/maps/fuchsiahouse1.blk
+++ b/maps/FuchsiaBillsGrandpasHouse.blk
diff --git a/maps/fuchsiacity.blk b/maps/FuchsiaCity.blk
index e57addb1..e57addb1 100644
--- a/maps/fuchsiacity.blk
+++ b/maps/FuchsiaCity.blk
diff --git a/maps/fuchsiahouse3.blk b/maps/FuchsiaGoodRodHouse.blk
index 35443909..35443909 100644
--- a/maps/fuchsiahouse3.blk
+++ b/maps/FuchsiaGoodRodHouse.blk
diff --git a/maps/fuchsiagym.blk b/maps/FuchsiaGym.blk
index dd4f5019..dd4f5019 100644
--- a/maps/fuchsiagym.blk
+++ b/maps/FuchsiaGym.blk
diff --git a/maps/fuchsiamart.blk b/maps/FuchsiaMart.blk
index 62385406..62385406 100644
--- a/maps/fuchsiamart.blk
+++ b/maps/FuchsiaMart.blk
diff --git a/maps/fuchsiameetingroom.blk b/maps/FuchsiaMeetingRoom.blk
index a1c8d921..a1c8d921 100644
--- a/maps/fuchsiameetingroom.blk
+++ b/maps/FuchsiaMeetingRoom.blk
diff --git a/maps/fuchsiapokecenter.blk b/maps/FuchsiaPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/fuchsiapokecenter.blk
+++ b/maps/FuchsiaPokecenter.blk
diff --git a/maps/celadongamecorner.blk b/maps/GameCorner.blk
index 8c8b1fd8..8c8b1fd8 100644
--- a/maps/celadongamecorner.blk
+++ b/maps/GameCorner.blk
diff --git a/maps/celadonprizeroom.blk b/maps/GameCornerPrizeRoom.blk
index f0a6c058..f0a6c058 100644
--- a/maps/celadonprizeroom.blk
+++ b/maps/GameCornerPrizeRoom.blk
diff --git a/maps/halloffameroom.blk b/maps/HallOfFame.blk
index f1aa64a4..f1aa64a4 100644
--- a/maps/halloffameroom.blk
+++ b/maps/HallOfFame.blk
diff --git a/maps/indigoplateau.blk b/maps/IndigoPlateau.blk
index a850b3c6..a850b3c6 100644
--- a/maps/indigoplateau.blk
+++ b/maps/IndigoPlateau.blk
diff --git a/maps/indigoplateaulobby.blk b/maps/IndigoPlateauLobby.blk
index 38561b84..38561b84 100644
--- a/maps/indigoplateaulobby.blk
+++ b/maps/IndigoPlateauLobby.blk
Binary files differ
diff --git a/maps/lance.blk b/maps/LancesRoom.blk
index b05f1c35..b05f1c35 100644
--- a/maps/lance.blk
+++ b/maps/LancesRoom.blk
diff --git a/maps/lavenderhouse1.blk b/maps/LavenderCuboneHouse.blk
index 823e6053..823e6053 100644
--- a/maps/lavenderhouse1.blk
+++ b/maps/LavenderCuboneHouse.blk
diff --git a/maps/lavendermart.blk b/maps/LavenderMart.blk
index 62385406..62385406 100644
--- a/maps/lavendermart.blk
+++ b/maps/LavenderMart.blk
diff --git a/maps/lavenderpokecenter.blk b/maps/LavenderPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/lavenderpokecenter.blk
+++ b/maps/LavenderPokecenter.blk
diff --git a/maps/lavendertown.blk b/maps/LavenderTown.blk
index d094f3b9..d094f3b9 100644
--- a/maps/lavendertown.blk
+++ b/maps/LavenderTown.blk
diff --git a/maps/lorelei.blk b/maps/LoreleisRoom.blk
index 8df8e929..8df8e929 100644
--- a/maps/lorelei.blk
+++ b/maps/LoreleisRoom.blk
diff --git a/maps/lavenderhouse2.blk b/maps/MrFujisHouse.blk
index 823e6053..823e6053 100644
--- a/maps/lavenderhouse2.blk
+++ b/maps/MrFujisHouse.blk
diff --git a/maps/namerater.blk b/maps/MrPsychicsHouse.blk
index 823e6053..823e6053 100644
--- a/maps/namerater.blk
+++ b/maps/MrPsychicsHouse.blk
diff --git a/maps/mtmoon1.blk b/maps/MtMoon1F.blk
index 04edbba7..04edbba7 100644
--- a/maps/mtmoon1.blk
+++ b/maps/MtMoon1F.blk
diff --git a/maps/mtmoon2.blk b/maps/MtMoonB1F.blk
index ee1aa030..ee1aa030 100644
--- a/maps/mtmoon2.blk
+++ b/maps/MtMoonB1F.blk
diff --git a/maps/mtmoon3.blk b/maps/MtMoonB2F.blk
index 216fe705..216fe705 100644
--- a/maps/mtmoon3.blk
+++ b/maps/MtMoonB2F.blk
diff --git a/maps/mtmoonpokecenter.blk b/maps/MtMoonPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/mtmoonpokecenter.blk
+++ b/maps/MtMoonPokecenter.blk
diff --git a/maps/museum1f.blk b/maps/Museum1F.blk
index a96771ba..a96771ba 100644
--- a/maps/museum1f.blk
+++ b/maps/Museum1F.blk
Binary files differ
diff --git a/maps/museum2f.blk b/maps/Museum2F.blk
index 355e5d80..355e5d80 100644
--- a/maps/museum2f.blk
+++ b/maps/Museum2F.blk
Binary files differ
diff --git a/maps/pewterhouse1.blk b/maps/NameRatersHouse.blk
index 823e6053..823e6053 100644
--- a/maps/pewterhouse1.blk
+++ b/maps/NameRatersHouse.blk
diff --git a/maps/oakslab.blk b/maps/OaksLab.blk
index 64d2d6a2..64d2d6a2 100644
--- a/maps/oakslab.blk
+++ b/maps/OaksLab.blk
diff --git a/maps/pallettown.blk b/maps/PalletTown.blk
index 64e5b9cc..64e5b9cc 100644
--- a/maps/pallettown.blk
+++ b/maps/PalletTown.blk
Binary files differ
diff --git a/maps/pewtercity.blk b/maps/PewterCity.blk
index b199480b..b199480b 100644
--- a/maps/pewtercity.blk
+++ b/maps/PewterCity.blk
diff --git a/maps/pewtergym.blk b/maps/PewterGym.blk
index e7fc2212..e7fc2212 100644
--- a/maps/pewtergym.blk
+++ b/maps/PewterGym.blk
diff --git a/maps/pewtermart.blk b/maps/PewterMart.blk
index 62385406..62385406 100644
--- a/maps/pewtermart.blk
+++ b/maps/PewterMart.blk
diff --git a/maps/pewterhouse2.blk b/maps/PewterNidoranHouse.blk
index 823e6053..823e6053 100644
--- a/maps/pewterhouse2.blk
+++ b/maps/PewterNidoranHouse.blk
diff --git a/maps/pewterpokecenter.blk b/maps/PewterPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/pewterpokecenter.blk
+++ b/maps/PewterPokecenter.blk
diff --git a/maps/route12house.blk b/maps/PewterSpeechHouse.blk
index 823e6053..823e6053 100644
--- a/maps/route12house.blk
+++ b/maps/PewterSpeechHouse.blk
diff --git a/maps/fanclub.blk b/maps/PokemonFanClub.blk
index 2622e175..2622e175 100644
--- a/maps/fanclub.blk
+++ b/maps/PokemonFanClub.blk
diff --git a/maps/mansion1.blk b/maps/PokemonMansion1F.blk
index afcb8e7e..afcb8e7e 100644
--- a/maps/mansion1.blk
+++ b/maps/PokemonMansion1F.blk
diff --git a/maps/mansion2.blk b/maps/PokemonMansion2F.blk
index 37896766..37896766 100644
--- a/maps/mansion2.blk
+++ b/maps/PokemonMansion2F.blk
diff --git a/maps/mansion3.blk b/maps/PokemonMansion3F.blk
index 1a86bc71..1a86bc71 100644
--- a/maps/mansion3.blk
+++ b/maps/PokemonMansion3F.blk
diff --git a/maps/mansion4.blk b/maps/PokemonMansionB1F.blk
index 9ced2192..9ced2192 100644
--- a/maps/mansion4.blk
+++ b/maps/PokemonMansionB1F.blk
diff --git a/maps/pokemontower1.blk b/maps/PokemonTower1F.blk
index 25afe15f..25afe15f 100644
--- a/maps/pokemontower1.blk
+++ b/maps/PokemonTower1F.blk
diff --git a/maps/pokemontower2.blk b/maps/PokemonTower2F.blk
index c8acf99d..c8acf99d 100644
--- a/maps/pokemontower2.blk
+++ b/maps/PokemonTower2F.blk
diff --git a/maps/pokemontower3.blk b/maps/PokemonTower3F.blk
index 26d28b79..26d28b79 100644
--- a/maps/pokemontower3.blk
+++ b/maps/PokemonTower3F.blk
diff --git a/maps/pokemontower4.blk b/maps/PokemonTower4F.blk
index 2df4ab1a..2df4ab1a 100644
--- a/maps/pokemontower4.blk
+++ b/maps/PokemonTower4F.blk
diff --git a/maps/pokemontower5.blk b/maps/PokemonTower5F.blk
index a05a575c..a05a575c 100644
--- a/maps/pokemontower5.blk
+++ b/maps/PokemonTower5F.blk
diff --git a/maps/pokemontower6.blk b/maps/PokemonTower6F.blk
index 7256a841..7256a841 100644
--- a/maps/pokemontower6.blk
+++ b/maps/PokemonTower6F.blk
diff --git a/maps/pokemontower7.blk b/maps/PokemonTower7F.blk
index 4598f336..4598f336 100644
--- a/maps/pokemontower7.blk
+++ b/maps/PokemonTower7F.blk
diff --git a/maps/powerplant.blk b/maps/PowerPlant.blk
index 7f2d7eeb..7f2d7eeb 100644
--- a/maps/powerplant.blk
+++ b/maps/PowerPlant.blk
diff --git a/maps/redshouse1f.blk b/maps/RedsHouse1F.blk
index 1b7d4f07..1b7d4f07 100644
--- a/maps/redshouse1f.blk
+++ b/maps/RedsHouse1F.blk
diff --git a/maps/redshouse2f.blk b/maps/RedsHouse2F.blk
index dd9d1ea4..dd9d1ea4 100644
--- a/maps/redshouse2f.blk
+++ b/maps/RedsHouse2F.blk
diff --git a/maps/rocktunnel1.blk b/maps/RockTunnel1F.blk
index bbd18ce6..bbd18ce6 100644
--- a/maps/rocktunnel1.blk
+++ b/maps/RockTunnel1F.blk
diff --git a/maps/rocktunnel2.blk b/maps/RockTunnelB1F.blk
index a579831b..a579831b 100644
--- a/maps/rocktunnel2.blk
+++ b/maps/RockTunnelB1F.blk
diff --git a/maps/rocktunnelpokecenter.blk b/maps/RockTunnelPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/rocktunnelpokecenter.blk
+++ b/maps/RockTunnelPokecenter.blk
diff --git a/maps/rockethideout1.blk b/maps/RocketHideoutB1F.blk
index 18b02211..18b02211 100644
--- a/maps/rockethideout1.blk
+++ b/maps/RocketHideoutB1F.blk
diff --git a/maps/rockethideout2.blk b/maps/RocketHideoutB2F.blk
index b8fc41f8..b8fc41f8 100644
--- a/maps/rockethideout2.blk
+++ b/maps/RocketHideoutB2F.blk
diff --git a/maps/rockethideout3.blk b/maps/RocketHideoutB3F.blk
index 23b45286..23b45286 100644
--- a/maps/rockethideout3.blk
+++ b/maps/RocketHideoutB3F.blk
diff --git a/maps/rockethideout4.blk b/maps/RocketHideoutB4F.blk
index 389c1c7c..389c1c7c 100644
--- a/maps/rockethideout4.blk
+++ b/maps/RocketHideoutB4F.blk
diff --git a/maps/rockethideoutelevator.blk b/maps/RocketHideoutElevator.blk
index 0c296a34..0c296a34 100644
--- a/maps/rockethideoutelevator.blk
+++ b/maps/RocketHideoutElevator.blk
diff --git a/maps/route1.blk b/maps/Route1.blk
index 56a9e4a3..56a9e4a3 100644
--- a/maps/route1.blk
+++ b/maps/Route1.blk
diff --git a/maps/route10.blk b/maps/Route10.blk
index aed525c5..aed525c5 100644
--- a/maps/route10.blk
+++ b/maps/Route10.blk
diff --git a/maps/route11.blk b/maps/Route11.blk
index c026d913..c026d913 100644
--- a/maps/route11.blk
+++ b/maps/Route11.blk
diff --git a/maps/route11gate.blk b/maps/Route11Gate1F.blk
index d1a18368..d1a18368 100644
--- a/maps/route11gate.blk
+++ b/maps/Route11Gate1F.blk
Binary files differ
diff --git a/maps/route11gateupstairs.blk b/maps/Route11Gate2F.blk
index f90c7db9..f90c7db9 100644
--- a/maps/route11gateupstairs.blk
+++ b/maps/Route11Gate2F.blk
Binary files differ
diff --git a/maps/route12.blk b/maps/Route12.blk
index d79f59e3..d79f59e3 100644
--- a/maps/route12.blk
+++ b/maps/Route12.blk
diff --git a/maps/route12gate.blk b/maps/Route12Gate1F.blk
index 5c626eaf..5c626eaf 100644
--- a/maps/route12gate.blk
+++ b/maps/Route12Gate1F.blk
Binary files differ
diff --git a/maps/route12gateupstairs.blk b/maps/Route12Gate2F.blk
index f90c7db9..f90c7db9 100644
--- a/maps/route12gateupstairs.blk
+++ b/maps/Route12Gate2F.blk
Binary files differ
diff --git a/maps/route16house.blk b/maps/Route12SuperRodHouse.blk
index 823e6053..823e6053 100644
--- a/maps/route16house.blk
+++ b/maps/Route12SuperRodHouse.blk
diff --git a/maps/route13.blk b/maps/Route13.blk
index 9d607b6d..9d607b6d 100644
--- a/maps/route13.blk
+++ b/maps/Route13.blk
diff --git a/maps/route14.blk b/maps/Route14.blk
index 38cae243..38cae243 100644
--- a/maps/route14.blk
+++ b/maps/Route14.blk
diff --git a/maps/route15.blk b/maps/Route15.blk
index 77a33889..77a33889 100644
--- a/maps/route15.blk
+++ b/maps/Route15.blk
diff --git a/maps/route15gate.blk b/maps/Route15Gate1F.blk
index d1a18368..d1a18368 100644
--- a/maps/route15gate.blk
+++ b/maps/Route15Gate1F.blk
Binary files differ
diff --git a/maps/route15gateupstairs.blk b/maps/Route15Gate2F.blk
index f90c7db9..f90c7db9 100755
--- a/maps/route15gateupstairs.blk
+++ b/maps/Route15Gate2F.blk
Binary files differ
diff --git a/maps/route16.blk b/maps/Route16.blk
index d3a7d5e5..d3a7d5e5 100644
--- a/maps/route16.blk
+++ b/maps/Route16.blk
diff --git a/maps/route2house.blk b/maps/Route16FlyHouse.blk
index 823e6053..823e6053 100644
--- a/maps/route2house.blk
+++ b/maps/Route16FlyHouse.blk
diff --git a/maps/route16gate.blk b/maps/Route16Gate1F.blk
index 9cd90e33..9cd90e33 100644
--- a/maps/route16gate.blk
+++ b/maps/Route16Gate1F.blk
Binary files differ
diff --git a/maps/route16gateupstairs.blk b/maps/Route16Gate2F.blk
index f90c7db9..f90c7db9 100644
--- a/maps/route16gateupstairs.blk
+++ b/maps/Route16Gate2F.blk
Binary files differ
diff --git a/maps/route17.blk b/maps/Route17.blk
index 2a27af66..2a27af66 100644
--- a/maps/route17.blk
+++ b/maps/Route17.blk
diff --git a/maps/route18.blk b/maps/Route18.blk
index aeb83516..aeb83516 100644
--- a/maps/route18.blk
+++ b/maps/Route18.blk
diff --git a/maps/route18gate.blk b/maps/Route18Gate1F.blk
index d1a18368..d1a18368 100644
--- a/maps/route18gate.blk
+++ b/maps/Route18Gate1F.blk
Binary files differ
diff --git a/maps/route18gateupstairs.blk b/maps/Route18Gate2F.blk
index f90c7db9..f90c7db9 100644
--- a/maps/route18gateupstairs.blk
+++ b/maps/Route18Gate2F.blk
Binary files differ
diff --git a/maps/route19-yellow.blk b/maps/Route19.blk
index 3fc58494..3fc58494 100644
--- a/maps/route19-yellow.blk
+++ b/maps/Route19.blk
diff --git a/maps/route2.blk b/maps/Route2.blk
index dd6227fd..dd6227fd 100644
--- a/maps/route2.blk
+++ b/maps/Route2.blk
diff --git a/maps/route20.blk b/maps/Route20.blk
index aae6a458..aae6a458 100644
--- a/maps/route20.blk
+++ b/maps/Route20.blk
diff --git a/maps/route21.blk b/maps/Route21.blk
index fa1f5b79..fa1f5b79 100644
--- a/maps/route21.blk
+++ b/maps/Route21.blk
diff --git a/maps/route22.blk b/maps/Route22.blk
index 231c6838..231c6838 100644
--- a/maps/route22.blk
+++ b/maps/Route22.blk
diff --git a/maps/route22gate.blk b/maps/Route22Gate.blk
index 9cdf5b28..9cdf5b28 100644
--- a/maps/route22gate.blk
+++ b/maps/Route22Gate.blk
Binary files differ
diff --git a/maps/route23.blk b/maps/Route23.blk
index 1ecf1d1a..1ecf1d1a 100644
--- a/maps/route23.blk
+++ b/maps/Route23.blk
diff --git a/maps/route24.blk b/maps/Route24.blk
index 21de9390..21de9390 100644
--- a/maps/route24.blk
+++ b/maps/Route24.blk
diff --git a/maps/route25.blk b/maps/Route25.blk
index 49c98815..49c98815 100644
--- a/maps/route25.blk
+++ b/maps/Route25.blk
diff --git a/maps/route2gate.blk b/maps/Route2Gate.blk
index 19af9540..19af9540 100644
--- a/maps/route2gate.blk
+++ b/maps/Route2Gate.blk
Binary files differ
diff --git a/maps/saffronhouse1.blk b/maps/Route2TradeHouse.blk
index 823e6053..823e6053 100644
--- a/maps/saffronhouse1.blk
+++ b/maps/Route2TradeHouse.blk
diff --git a/maps/route3.blk b/maps/Route3.blk
index a5284350..a5284350 100644
--- a/maps/route3.blk
+++ b/maps/Route3.blk
diff --git a/maps/route4.blk b/maps/Route4.blk
index 11fefc62..11fefc62 100644
--- a/maps/route4.blk
+++ b/maps/Route4.blk
diff --git a/maps/route5.blk b/maps/Route5.blk
index 224a5b4b..224a5b4b 100644
--- a/maps/route5.blk
+++ b/maps/Route5.blk
diff --git a/maps/route5gate.blk b/maps/Route5Gate.blk
index f69dfa87..f69dfa87 100644
--- a/maps/route5gate.blk
+++ b/maps/Route5Gate.blk
diff --git a/maps/route6.blk b/maps/Route6.blk
index b488b37b..b488b37b 100644
--- a/maps/route6.blk
+++ b/maps/Route6.blk
diff --git a/maps/route6gate.blk b/maps/Route6Gate.blk
index f69dfa87..f69dfa87 100644
--- a/maps/route6gate.blk
+++ b/maps/Route6Gate.blk
diff --git a/maps/route7.blk b/maps/Route7.blk
index 1e58b2f8..1e58b2f8 100644
--- a/maps/route7.blk
+++ b/maps/Route7.blk
diff --git a/maps/route7gate.blk b/maps/Route7Gate.blk
index 79911bdc..79911bdc 100644
--- a/maps/route7gate.blk
+++ b/maps/Route7Gate.blk
diff --git a/maps/route8.blk b/maps/Route8.blk
index 8a9da3d9..8a9da3d9 100644
--- a/maps/route8.blk
+++ b/maps/Route8.blk
diff --git a/maps/route8gate.blk b/maps/Route8Gate.blk
index 79911bdc..79911bdc 100644
--- a/maps/route8gate.blk
+++ b/maps/Route8Gate.blk
diff --git a/maps/route9.blk b/maps/Route9.blk
index e1ebe7cb..e1ebe7cb 100644
--- a/maps/route9.blk
+++ b/maps/Route9.blk
diff --git a/maps/ssanne1.blk b/maps/SSAnne1F.blk
index fd236973..fd236973 100644
--- a/maps/ssanne1.blk
+++ b/maps/SSAnne1F.blk
diff --git a/maps/ssanne8.blk b/maps/SSAnne1FRooms.blk
index 1749e638..1749e638 100644
--- a/maps/ssanne8.blk
+++ b/maps/SSAnne1FRooms.blk
diff --git a/maps/ssanne2.blk b/maps/SSAnne2F.blk
index db2ae854..db2ae854 100644
--- a/maps/ssanne2.blk
+++ b/maps/SSAnne2F.blk
diff --git a/maps/ssanne10.blk b/maps/SSAnne2FRooms.blk
index b6666f9a..b6666f9a 100644
--- a/maps/ssanne10.blk
+++ b/maps/SSAnne2FRooms.blk
diff --git a/maps/ssanne3.blk b/maps/SSAnne3F.blk
index 6e4b42f4..6e4b42f4 100644
--- a/maps/ssanne3.blk
+++ b/maps/SSAnne3F.blk
diff --git a/maps/ssanne4.blk b/maps/SSAnneB1F.blk
index f22fb770..f22fb770 100644
--- a/maps/ssanne4.blk
+++ b/maps/SSAnneB1F.blk
diff --git a/maps/ssanne9.blk b/maps/SSAnneB1FRooms.blk
index b6666f9a..b6666f9a 100644
--- a/maps/ssanne9.blk
+++ b/maps/SSAnneB1FRooms.blk
diff --git a/maps/ssanne5.blk b/maps/SSAnneBow.blk
index e97bab53..e97bab53 100644
--- a/maps/ssanne5.blk
+++ b/maps/SSAnneBow.blk
diff --git a/maps/ssanne7.blk b/maps/SSAnneCaptainsRoom.blk
index b5359f38..b5359f38 100644
--- a/maps/ssanne7.blk
+++ b/maps/SSAnneCaptainsRoom.blk
diff --git a/maps/ssanne6.blk b/maps/SSAnneKitchen.blk
index 2a417ad2..2a417ad2 100644
--- a/maps/ssanne6.blk
+++ b/maps/SSAnneKitchen.blk
diff --git a/maps/safarizonecenter.blk b/maps/SafariZoneCenter.blk
index f4814712..f4814712 100644
--- a/maps/safarizonecenter.blk
+++ b/maps/SafariZoneCenter.blk
diff --git a/maps/safarizoneresthouse1.blk b/maps/SafariZoneCenterRestHouse.blk
index 625b41b6..625b41b6 100644
--- a/maps/safarizoneresthouse1.blk
+++ b/maps/SafariZoneCenterRestHouse.blk
Binary files differ
diff --git a/maps/safarizoneeast.blk b/maps/SafariZoneEast.blk
index 564fa502..564fa502 100644
--- a/maps/safarizoneeast.blk
+++ b/maps/SafariZoneEast.blk
diff --git a/maps/safarizoneresthouse2.blk b/maps/SafariZoneEastRestHouse.blk
index 625b41b6..625b41b6 100644
--- a/maps/safarizoneresthouse2.blk
+++ b/maps/SafariZoneEastRestHouse.blk
Binary files differ
diff --git a/maps/safarizoneentrance.blk b/maps/SafariZoneGate.blk
index f69dfa87..f69dfa87 100644
--- a/maps/safarizoneentrance.blk
+++ b/maps/SafariZoneGate.blk
diff --git a/maps/safarizonenorth.blk b/maps/SafariZoneNorth.blk
index a5f4251c..a5f4251c 100644
--- a/maps/safarizonenorth.blk
+++ b/maps/SafariZoneNorth.blk
diff --git a/maps/safarizoneresthouse3.blk b/maps/SafariZoneNorthRestHouse.blk
index 625b41b6..625b41b6 100644
--- a/maps/safarizoneresthouse3.blk
+++ b/maps/SafariZoneNorthRestHouse.blk
Binary files differ
diff --git a/maps/safarizonesecrethouse.blk b/maps/SafariZoneSecretHouse.blk
index d5dbe9e1..d5dbe9e1 100644
--- a/maps/safarizonesecrethouse.blk
+++ b/maps/SafariZoneSecretHouse.blk
diff --git a/maps/safarizonewest.blk b/maps/SafariZoneWest.blk
index 88c8460c..88c8460c 100644
--- a/maps/safarizonewest.blk
+++ b/maps/SafariZoneWest.blk
diff --git a/maps/safarizoneresthouse4.blk b/maps/SafariZoneWestRestHouse.blk
index 625b41b6..625b41b6 100644
--- a/maps/safarizoneresthouse4.blk
+++ b/maps/SafariZoneWestRestHouse.blk
Binary files differ
diff --git a/maps/saffroncity.blk b/maps/SaffronCity.blk
index e0c2b224..e0c2b224 100644
--- a/maps/saffroncity.blk
+++ b/maps/SaffronCity.blk
Binary files differ
diff --git a/maps/saffrongym.blk b/maps/SaffronGym.blk
index 44a24aad..44a24aad 100644
--- a/maps/saffrongym.blk
+++ b/maps/SaffronGym.blk
diff --git a/maps/saffronmart.blk b/maps/SaffronMart.blk
index 62385406..62385406 100644
--- a/maps/saffronmart.blk
+++ b/maps/SaffronMart.blk
diff --git a/maps/saffronhouse2.blk b/maps/SaffronPidgeyHouse.blk
index 823e6053..823e6053 100644
--- a/maps/saffronhouse2.blk
+++ b/maps/SaffronPidgeyHouse.blk
diff --git a/maps/saffronpokecenter.blk b/maps/SaffronPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/saffronpokecenter.blk
+++ b/maps/SaffronPokecenter.blk
diff --git a/maps/seafoamislands1.blk b/maps/SeafoamIslands1F.blk
index 3cd6e5c7..3cd6e5c7 100644
--- a/maps/seafoamislands1.blk
+++ b/maps/SeafoamIslands1F.blk
diff --git a/maps/seafoamislands2.blk b/maps/SeafoamIslandsB1F.blk
index 61402221..61402221 100644
--- a/maps/seafoamislands2.blk
+++ b/maps/SeafoamIslandsB1F.blk
diff --git a/maps/seafoamislands3.blk b/maps/SeafoamIslandsB2F.blk
index cc037328..cc037328 100644
--- a/maps/seafoamislands3.blk
+++ b/maps/SeafoamIslandsB2F.blk
diff --git a/maps/seafoamislands4.blk b/maps/SeafoamIslandsB3F.blk
index 956a1053..956a1053 100644
--- a/maps/seafoamislands4.blk
+++ b/maps/SeafoamIslandsB3F.blk
diff --git a/maps/seafoamislands5.blk b/maps/SeafoamIslandsB4F.blk
index a118fe57..a118fe57 100644
--- a/maps/seafoamislands5.blk
+++ b/maps/SeafoamIslandsB4F.blk
diff --git a/maps/silphco10.blk b/maps/SilphCo10F.blk
index 88669221..88669221 100644
--- a/maps/silphco10.blk
+++ b/maps/SilphCo10F.blk
diff --git a/maps/silphco11.blk b/maps/SilphCo11F.blk
index 9bd21b04..9bd21b04 100644
--- a/maps/silphco11.blk
+++ b/maps/SilphCo11F.blk
diff --git a/maps/silphco1.blk b/maps/SilphCo1F.blk
index 3bf7c8f0..3bf7c8f0 100644
--- a/maps/silphco1.blk
+++ b/maps/SilphCo1F.blk
diff --git a/maps/silphco2.blk b/maps/SilphCo2F.blk
index 33003175..33003175 100644
--- a/maps/silphco2.blk
+++ b/maps/SilphCo2F.blk
diff --git a/maps/silphco3.blk b/maps/SilphCo3F.blk
index 15dcaf1f..15dcaf1f 100644
--- a/maps/silphco3.blk
+++ b/maps/SilphCo3F.blk
diff --git a/maps/silphco4.blk b/maps/SilphCo4F.blk
index 4e6c32f8..4e6c32f8 100644
--- a/maps/silphco4.blk
+++ b/maps/SilphCo4F.blk
diff --git a/maps/silphco5.blk b/maps/SilphCo5F.blk
index 1fa92a59..1fa92a59 100644
--- a/maps/silphco5.blk
+++ b/maps/SilphCo5F.blk
diff --git a/maps/silphco6.blk b/maps/SilphCo6F.blk
index 02d5b56e..02d5b56e 100644
--- a/maps/silphco6.blk
+++ b/maps/SilphCo6F.blk
diff --git a/maps/silphco7.blk b/maps/SilphCo7F.blk
index a8dd509a..a8dd509a 100644
--- a/maps/silphco7.blk
+++ b/maps/SilphCo7F.blk
diff --git a/maps/silphco8.blk b/maps/SilphCo8F.blk
index 5df4ebd8..5df4ebd8 100644
--- a/maps/silphco8.blk
+++ b/maps/SilphCo8F.blk
diff --git a/maps/silphco9.blk b/maps/SilphCo9F.blk
index 47d080dd..47d080dd 100644
--- a/maps/silphco9.blk
+++ b/maps/SilphCo9F.blk
diff --git a/maps/silphcoelevator.blk b/maps/SilphCoElevator.blk
index 824bc3de..824bc3de 100644
--- a/maps/silphcoelevator.blk
+++ b/maps/SilphCoElevator.blk
diff --git a/maps/tradecenter.blk b/maps/TradeCenter.blk
index 638b48ef..638b48ef 100644
--- a/maps/tradecenter.blk
+++ b/maps/TradeCenter.blk
diff --git a/maps/undergroundpathns.blk b/maps/UndergroundPathNorthSouth.blk
index 6431328e..6431328e 100644
--- a/maps/undergroundpathns.blk
+++ b/maps/UndergroundPathNorthSouth.blk
diff --git a/maps/undergroundpathentranceroute5.blk b/maps/UndergroundPathRoute5.blk
index a17a7ed2..a17a7ed2 100644
--- a/maps/undergroundpathentranceroute5.blk
+++ b/maps/UndergroundPathRoute5.blk
Binary files differ
diff --git a/maps/undergroundpathentranceroute6.blk b/maps/UndergroundPathRoute6.blk
index a17a7ed2..a17a7ed2 100644
--- a/maps/undergroundpathentranceroute6.blk
+++ b/maps/UndergroundPathRoute6.blk
Binary files differ
diff --git a/maps/undergroundpathentranceroute7.blk b/maps/UndergroundPathRoute7.blk
index a17a7ed2..a17a7ed2 100644
--- a/maps/undergroundpathentranceroute7.blk
+++ b/maps/UndergroundPathRoute7.blk
Binary files differ
diff --git a/maps/undergroundpathentranceroute8.blk b/maps/UndergroundPathRoute8.blk
index a17a7ed2..a17a7ed2 100644
--- a/maps/undergroundpathentranceroute8.blk
+++ b/maps/UndergroundPathRoute8.blk
Binary files differ
diff --git a/maps/undergroundpathwe.blk b/maps/UndergroundPathWestEast.blk
index 79ea699a..79ea699a 100644
--- a/maps/undergroundpathwe.blk
+++ b/maps/UndergroundPathWestEast.blk
diff --git a/maps/unusedblocks60258.blk b/maps/UnusedDiglettsCaveCopy.blk
index ff81fc7d..ff81fc7d 100755
--- a/maps/unusedblocks60258.blk
+++ b/maps/UnusedDiglettsCaveCopy.blk
diff --git a/maps/unusedblocks60cef.blk b/maps/UnusedEmptyMap.blk
index 21808bb7..21808bb7 100755
--- a/maps/unusedblocks60cef.blk
+++ b/maps/UnusedEmptyMap.blk
diff --git a/maps/unusedblocks58d7d.blk b/maps/UnusedPokecenterCopy.blk
index dd54efd9..dd54efd9 100755
--- a/maps/unusedblocks58d7d.blk
+++ b/maps/UnusedPokecenterCopy.blk
diff --git a/maps/vermilioncity.blk b/maps/VermilionCity.blk
index 6ba54a34..6ba54a34 100644
--- a/maps/vermilioncity.blk
+++ b/maps/VermilionCity.blk
diff --git a/maps/vermiliondock.blk b/maps/VermilionDock.blk
index f4a95739..f4a95739 100644
--- a/maps/vermiliondock.blk
+++ b/maps/VermilionDock.blk
diff --git a/maps/vermiliongym.blk b/maps/VermilionGym.blk
index 27bea181..27bea181 100644
--- a/maps/vermiliongym.blk
+++ b/maps/VermilionGym.blk
diff --git a/maps/vermilionmart.blk b/maps/VermilionMart.blk
index 62385406..62385406 100644
--- a/maps/vermilionmart.blk
+++ b/maps/VermilionMart.blk
diff --git a/maps/vermilionhouse1.blk b/maps/VermilionOldRodHouse.blk
index 823e6053..823e6053 100644
--- a/maps/vermilionhouse1.blk
+++ b/maps/VermilionOldRodHouse.blk
diff --git a/maps/vermilionhouse2.blk b/maps/VermilionPidgeyHouse.blk
index 823e6053..823e6053 100644
--- a/maps/vermilionhouse2.blk
+++ b/maps/VermilionPidgeyHouse.blk
diff --git a/maps/vermilionpokecenter.blk b/maps/VermilionPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/vermilionpokecenter.blk
+++ b/maps/VermilionPokecenter.blk
diff --git a/maps/vermilionhouse3.blk b/maps/VermilionTradeHouse.blk
index 823e6053..823e6053 100644
--- a/maps/vermilionhouse3.blk
+++ b/maps/VermilionTradeHouse.blk
diff --git a/maps/victoryroad1.blk b/maps/VictoryRoad1F.blk
index 4afaf65d..4afaf65d 100644
--- a/maps/victoryroad1.blk
+++ b/maps/VictoryRoad1F.blk
diff --git a/maps/victoryroad2.blk b/maps/VictoryRoad2F.blk
index f4226ccf..f4226ccf 100644
--- a/maps/victoryroad2.blk
+++ b/maps/VictoryRoad2F.blk
diff --git a/maps/victoryroad3.blk b/maps/VictoryRoad3F.blk
index 53aa23eb..53aa23eb 100644
--- a/maps/victoryroad3.blk
+++ b/maps/VictoryRoad3F.blk
diff --git a/maps/viridiancity.blk b/maps/ViridianCity.blk
index af1bd662..af1bd662 100644
--- a/maps/viridiancity.blk
+++ b/maps/ViridianCity.blk
diff --git a/maps/viridianforest.blk b/maps/ViridianForest.blk
index 358ea01d..358ea01d 100644
--- a/maps/viridianforest.blk
+++ b/maps/ViridianForest.blk
diff --git a/maps/viridianforestentrance.blk b/maps/ViridianForestNorthGate.blk
index 19af9540..19af9540 100644
--- a/maps/viridianforestentrance.blk
+++ b/maps/ViridianForestNorthGate.blk
Binary files differ
diff --git a/maps/viridianforestexit.blk b/maps/ViridianForestSouthGate.blk
index 19af9540..19af9540 100644
--- a/maps/viridianforestexit.blk
+++ b/maps/ViridianForestSouthGate.blk
Binary files differ
diff --git a/maps/viridiangym.blk b/maps/ViridianGym.blk
index 4396d338..4396d338 100644
--- a/maps/viridiangym.blk
+++ b/maps/ViridianGym.blk
diff --git a/maps/viridianmart.blk b/maps/ViridianMart.blk
index 62385406..62385406 100644
--- a/maps/viridianmart.blk
+++ b/maps/ViridianMart.blk
diff --git a/maps/viridianhouse.blk b/maps/ViridianNicknameHouse.blk
index 823e6053..823e6053 100644
--- a/maps/viridianhouse.blk
+++ b/maps/ViridianNicknameHouse.blk
diff --git a/maps/viridianpokecenter.blk b/maps/ViridianPokecenter.blk
index dd54efd9..dd54efd9 100644
--- a/maps/viridianpokecenter.blk
+++ b/maps/ViridianPokecenter.blk
diff --git a/maps/school.blk b/maps/ViridianSchoolHouse.blk
index 51bf8401..51bf8401 100644
--- a/maps/school.blk
+++ b/maps/ViridianSchoolHouse.blk
diff --git a/maps/fuchsiahouse2.blk b/maps/WardensHouse.blk
index 1ad21f96..1ad21f96 100644
--- a/maps/fuchsiahouse2.blk
+++ b/maps/WardensHouse.blk
diff --git a/maps/route19.blk b/maps/route19.blk
deleted file mode 100644
index 3fc58494..00000000
--- a/maps/route19.blk
+++ /dev/null
@@ -1 +0,0 @@
-(,)(,)(,)$W%$W%CCC11111CCC111CCk1111kkCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCkkkkkkkkk \ No newline at end of file
diff --git a/pokeyellow.link b/pokeyellow.link
index ea309bd9..60b2beaf 100644
--- a/pokeyellow.link
+++ b/pokeyellow.link
@@ -50,7 +50,7 @@ ROM0
ROMX $1
org $4000
- "bank01"
+ "bank1"
ROMX $2
org $4000
@@ -62,11 +62,11 @@ ROMX $2
ROMX $3
org $4000
- "bank03"
+ "bank3"
ROMX $4
org $4000
- "Graphics"
+ "Graphics (BANK 4)"
"NPC Sprites 1"
ROMX $5
@@ -75,11 +75,11 @@ ROMX $5
ROMX $6
org $4000
- "bank06"
+ "bank6"
ROMX $7
org $4000
- "bank07"
+ "bank7"
ROMX $8
org $4000
@@ -111,11 +111,11 @@ ROMX $D
ROMX $E
org $4000
- "bank0E"
+ "bankE"
ROMX $F
org $4000
- "bank0F"
+ "bankF"
ROMX $10
org $4000
diff --git a/scripts/AgathasRoom.asm b/scripts/AgathasRoom.asm
new file mode 100755
index 00000000..20245166
--- /dev/null
+++ b/scripts/AgathasRoom.asm
@@ -0,0 +1,155 @@
+AgathasRoom_Script:
+ call AgathaShowOrHideExitBlock
+ call EnableAutoTextBoxDrawing
+ ld hl, AgathaTrainerHeader0
+ ld de, AgathasRoom_ScriptPointers
+ ld a, [wAgathasRoomCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wAgathasRoomCurScript], a
+ ret
+
+AgathaShowOrHideExitBlock:
+; Blocks or clears the exit to the next room.
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
+ jr z, .blockExitToNextRoom
+ ld a, $e
+ jp .setExitBlock
+.blockExitToNextRoom
+ ld a, $3b
+
+.setExitBlock
+ ld [wNewTileBlockID], a
+ lb bc, 0, 2
+ predef_jump ReplaceTileBlock
+
+ResetAgathaScript:
+ xor a
+ ld [wAgathasRoomCurScript], a
+ ret
+
+AgathasRoom_ScriptPointers:
+ dw AgathaScript0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw AgathaScript2
+ dw AgathaScript3
+ dw AgathaScript4
+
+AgathaScript4:
+ ret
+
+AgathaScriptWalkIntoRoom:
+; Walk six steps upward.
+ ld hl, wSimulatedJoypadStatesEnd
+ ld a, D_UP
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $6
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wAgathasRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+AgathaScript0:
+ ld hl, AgathaEntranceCoords
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyPressed], a
+ ld [hJoyHeld], a
+ ld [wSimulatedJoypadStatesEnd], a
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, [wCoordIndex]
+ cp $3 ; Is player standing one tile above the exit?
+ jr c, .stopPlayerFromLeaving
+ CheckAndSetEvent EVENT_AUTOWALKED_INTO_AGATHAS_ROOM
+ jr z, AgathaScriptWalkIntoRoom
+.stopPlayerFromLeaving
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID ; "Don't run away!"
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wAgathasRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+AgathaEntranceCoords:
+ db $0A,$04
+ db $0A,$05
+ db $0B,$04
+ db $0B,$05
+ db $FF
+
+AgathaScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wAgathasRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+AgathaScript2:
+ call EndTrainerBattle
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, ResetAgathaScript
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $1
+ ld [wChampionsRoomCurScript], a
+ ret
+
+AgathasRoom_TextPointers:
+ dw AgathaText1
+ dw AgathaDontRunAwayText
+
+AgathaTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
+ dw AgathaBeforeBattleText ; TextBeforeBattle
+ dw AgathaAfterBattleText ; TextAfterBattle
+ dw AgathaEndBattleText ; TextEndBattle
+ dw AgathaEndBattleText ; TextEndBattle
+
+ db $ff
+
+AgathaText1:
+ TX_ASM
+ ld hl, AgathaTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+AgathaBeforeBattleText:
+ TX_FAR _AgathaBeforeBattleText
+ db "@"
+
+AgathaEndBattleText:
+ TX_FAR _AgathaEndBattleText
+ db "@"
+
+AgathaAfterBattleText:
+ TX_FAR _AgathaAfterBattleText
+ db "@"
+
+AgathaDontRunAwayText:
+ TX_FAR _AgathaDontRunAwayText
+ db "@"
diff --git a/scripts/BeachHouse.asm b/scripts/BeachHouse.asm
new file mode 100644
index 00000000..6a67c7ab
--- /dev/null
+++ b/scripts/BeachHouse.asm
@@ -0,0 +1,191 @@
+BeachHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+BeachHouse_TextPointers:
+ dw SurfinDudeText
+ dw BeachHousePikachuText
+ dw BeachHouseSign1Text
+ dw BeachHouseSign2Text
+ dw BeachHouseSign3Text
+ dw BeachHouseSign4Text
+
+SurfinDudeText:
+ TX_ASM
+ ld a, [wd472]
+ bit 6, a
+ jr nz, .next
+ ld hl, .SurfinDudeText4
+ call PrintText
+ jr .done
+.next
+ ld hl, wd492
+ bit 0, [hl]
+ set 0, [hl]
+ jr nz, .next2
+ ld hl, .SurfinDudeText1
+ jr .next3
+.next2
+ ld hl, .SurfinDudeText3
+.next3
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_f226b
+ ld a, 1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ callba SurfingPikachuMinigame
+ ld hl, wd492
+ set 1, [hl]
+ jr .done
+.asm_f226b
+ ld hl, .SurfinDudeText2
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.SurfinDudeText1
+ TX_FAR _SurfinDudeText1
+ db "@"
+.SurfinDudeText2
+ TX_FAR _SurfinDudeText2
+ db "@"
+.SurfinDudeText3
+ TX_FAR _SurfinDudeText3
+ db "@"
+.SurfinDudeText4
+ TX_FAR _SurfinDudeText4
+ db "@"
+
+BeachHousePikachuText:
+ TX_ASM
+ ld hl, .BeachHousePikachuText
+ call PrintText
+ ld a, PIKACHU
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+.BeachHousePikachuText
+ TX_FAR _BeachHousePikachuText
+ db "@"
+
+BeachHouseSign1Text:
+ TX_ASM
+ ld hl, .BeachHouseSign1Text2
+ ld a, [wd472]
+ bit 6, a
+ jr z, .next
+ ld hl, .BeachHouseSign1Text1
+.next
+ call PrintText
+ jp TextScriptEnd
+
+.BeachHouseSign1Text1
+ TX_FAR _BeachHouseSign1Text1
+ db "@"
+.BeachHouseSign1Text2
+ TX_FAR _BeachHouseSign1Text2
+ db "@"
+
+BeachHouseSign2Text:
+ TX_ASM
+ ld hl, .BeachHouseSign2Text2
+ ld a, [wd472]
+ bit 6, a
+ jr z, .next
+ ld hl, .BeachHouseSign2Text1
+.next
+ call PrintText
+ jp TextScriptEnd
+
+.BeachHouseSign2Text1
+ TX_FAR _BeachHouseSign2Text1
+ db "@"
+.BeachHouseSign2Text2
+ TX_FAR _BeachHouseSign2Text2
+ db "@"
+
+BeachHouseSign3Text:
+ TX_ASM
+ ld hl, .BeachHouseSign3Text2
+ ld a, [wd472]
+ bit 6, a
+ jr z, .next
+ ld hl, .BeachHouseSign3Text1
+.next
+ call PrintText
+ jp TextScriptEnd
+
+.BeachHouseSign3Text1
+ TX_FAR _BeachHouseSign3Text1
+ db "@"
+.BeachHouseSign3Text2
+ TX_FAR _BeachHouseSign3Text2
+ db "@"
+
+BeachHouseSign4Text:
+ TX_ASM
+ ld a, 1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, [wd472]
+ bit 6, a
+ jr z, .asm_f2369
+
+ ld hl, wd492
+ bit 1, [hl]
+ jr z, .next2
+ ld a, 0
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+.next2
+ ld hl, .BeachHousePrinterText2
+ call PrintText
+ ld a, [wd492]
+ bit 1, a
+ jr z, .asm_f236f
+
+ ld a, 1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, .BeachHousePrinterText3
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jp z, Func_f23d0
+ call SaveScreenTilesToBuffer2
+ ld hl, wd730
+ set 6, [hl]
+ xor a
+ ld [wUpdateSpritesEnabled], a
+ callab Printer_PrepareSurfingMinigameHighScoreTileMap
+ call WaitForTextScrollButtonPress
+ ld hl, wd730
+ res 6, [hl]
+ call GBPalWhiteOutWithDelay3
+ call ReloadTilesetTilePatterns
+ call RestoreScreenTilesAndReloadTilePatterns
+ call LoadScreenTilesFromBuffer2
+ call Delay3
+ call GBPalNormal
+ ld a, 1
+ ld [wUpdateSpritesEnabled], a
+ jr .asm_f236f
+.asm_f2369
+ ld hl, .BeachHousePrinterText1
+ call PrintText
+.asm_f236f
+ jp TextScriptEnd
+
+.BeachHousePrinterText1
+ TX_FAR _BeachHousePrinterText1
+ db $d, "@"
+.BeachHousePrinterText2
+ TX_FAR _BeachHousePrinterText2
+ db $d, "@"
+.BeachHousePrinterText3
+ TX_FAR _BeachHousePrinterText3
+ db "@"
+.BeachHousePrinterText4
+ TX_FAR _BeachHousePrinterText4
+ db "@"
diff --git a/scripts/BeachHouse2.asm b/scripts/BeachHouse2.asm
new file mode 100755
index 00000000..a5b7e7be
--- /dev/null
+++ b/scripts/BeachHouse2.asm
@@ -0,0 +1,33 @@
+Func_f23d0:
+ call SaveScreenTilesToBuffer2
+ xor a
+ ld [wUpdateSpritesEnabled], a
+ ld hl, wd730
+ set 6, [hl]
+ callab PrintSurfingMinigameHighScore
+ ld hl, wd730
+ res 6, [hl]
+ call GBPalWhiteOutWithDelay3
+ call ReloadTilesetTilePatterns
+ call RestoreScreenTilesAndReloadTilePatterns
+ call LoadScreenTilesFromBuffer2
+ call Delay3
+ call GBPalNormal
+ ld hl, Text_f2412
+ ld a, [hOaksAideResult]
+ and a
+ jr nz, .asm_f2406
+ ld hl, Text_f240c
+.asm_f2406
+ call PrintText
+ jp TextScriptEnd
+
+Text_f240c:
+ TX_FAR _BeachHousePrinterText5
+ TX_WAIT
+ db "@"
+
+Text_f2412:
+ TX_FAR _BeachHousePrinterText6
+ TX_WAIT
+ db "@"
diff --git a/scripts/BikeShop.asm b/scripts/BikeShop.asm
new file mode 100755
index 00000000..a554cf7c
--- /dev/null
+++ b/scripts/BikeShop.asm
@@ -0,0 +1,151 @@
+BikeShop_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+BikeShop_TextPointers:
+ dw BikeShopText1
+ dw BikeShopText2
+ dw BikeShopText3
+
+BikeShopText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_BICYCLE
+ jr z, .asm_260d4
+ ld hl, BikeShopText_1d82f
+ call PrintText
+ jp .Done
+
+.asm_260d4
+ ld b, BIKE_VOUCHER
+ call IsItemInBag
+ jr z, .asm_41190
+ ld hl, BikeShopText_1d81f
+ call PrintText
+ lb bc, BICYCLE, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, BIKE_VOUCHER
+ ld [$ffdb], a
+ callba RemoveItemByID
+ SetEvent EVENT_GOT_BICYCLE
+ ld hl, BikeShopText_1d824
+ call PrintText
+ jr .Done
+
+.BagFull
+ ld hl, BikeShopText_1d834
+ call PrintText
+ jr .Done
+
+.asm_41190
+ ld hl, BikeShopText_1d810
+ call PrintText
+ xor a
+ ld [wCurrentMenuItem], a
+ ld [wLastMenuItem], a
+ ld a, A_BUTTON | B_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, $1
+ ld [wMaxMenuItem], a
+ ld a, $2
+ ld [wTopMenuItemY], a
+ ld a, $1
+ ld [wTopMenuItemX], a
+ ld hl, wd730
+ set 6, [hl]
+ coord hl, 0, 0
+ lb bc, 4, 15
+ call TextBoxBorder
+ call UpdateSprites
+ coord hl, 2, 2
+ ld de, BikeShopMenuText
+ call PlaceString
+ coord hl, 8, 3
+ ld de, BikeShopMenuPrice
+ call PlaceString
+ ld hl, BikeShopText_1d815
+ call PrintText
+ ; This fixes the bike shop instatext glitch
+ ld hl, wd730
+ res 6, [hl]
+ call HandleMenuInput
+ bit BIT_B_BUTTON, a
+ jr nz, .cancel
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .cancel
+ ld hl, BikeShopCantAffordText
+ call PrintText
+.cancel
+ ld hl, BikeShopComeAgainText
+ call PrintText
+.Done
+ jp TextScriptEnd
+
+BikeShopMenuText:
+ db "BICYCLE"
+ next "CANCEL@"
+
+BikeShopMenuPrice:
+ db "¥1000000@"
+
+BikeShopText_1d810:
+ TX_FAR _BikeShopText_1d810
+ db "@"
+
+BikeShopText_1d815:
+ TX_FAR _BikeShopText_1d815
+ db "@"
+
+BikeShopCantAffordText:
+ TX_FAR _BikeShopCantAffordText
+ db "@"
+
+BikeShopText_1d81f:
+ TX_FAR _BikeShopText_1d81f
+ db "@"
+
+BikeShopText_1d824:
+ TX_FAR _BikeShopText_1d824
+ TX_SFX_KEY_ITEM
+ db "@"
+
+BikeShopComeAgainText:
+ TX_FAR _BikeShopComeAgainText
+ db "@"
+
+BikeShopText_1d82f:
+ TX_FAR _BikeShopText_1d82f
+ db "@"
+
+BikeShopText_1d834:
+ TX_FAR _BikeShopText_1d834
+ db "@"
+
+BikeShopText2:
+ TX_ASM
+ ld hl, BikeShopText_1d843
+ call PrintText
+ jp TextScriptEnd
+
+BikeShopText_1d843:
+ TX_FAR _BikeShopText_1d843
+ db "@"
+
+BikeShopText3:
+ TX_ASM
+ CheckEvent EVENT_GOT_BICYCLE
+ ld hl, BikeShopText_1d861
+ jr nz, .asm_34d2d
+ ld hl, BikeShopText_1d85c
+.asm_34d2d
+ call PrintText
+ jp TextScriptEnd
+
+BikeShopText_1d85c:
+ TX_FAR _BikeShopText_1d85c
+ db "@"
+
+BikeShopText_1d861:
+ TX_FAR _BikeShopText_1d861
+ db "@"
diff --git a/scripts/BillsHouse.asm b/scripts/BillsHouse.asm
new file mode 100755
index 00000000..a9e09947
--- /dev/null
+++ b/scripts/BillsHouse.asm
@@ -0,0 +1,279 @@
+BillsHouse_Script:
+ call BillsHouseScript_1e09e
+ call EnableAutoTextBoxDrawing
+ ld a, [wBillsHouseCurScript]
+ ld hl, BillsHouse_ScriptPointers
+ call CallFunctionInTable
+ ret
+
+BillsHouse_ScriptPointers:
+ dw BillsHouseScript0
+ dw BillsHouseScript1
+ dw BillsHouseScript2
+ dw BillsHouseScript3
+ dw BillsHouseScript4
+ dw BillsHouseScript5
+ dw BillsHouseScript6
+ dw BillsHouseScript7
+ dw BillsHouseScript8
+ dw BillsHouseScript9
+
+BillsHouseScript_1e09e:
+ ld hl, wd492
+ bit 7, [hl]
+ set 7, [hl]
+ ret nz
+ CheckEventHL EVENT_MET_BILL_2
+ jr z, .asm_1e0af
+ jr .asm_1e0b3
+
+.asm_1e0af
+ ld a, $0
+ jr .asm_1e0b5
+
+.asm_1e0b3
+ ld a, $9
+.asm_1e0b5
+ ld [wBillsHouseCurScript], a
+ ret
+
+BillsHouseScript0:
+ ld a, [wd472]
+ bit 7, a
+ jr z, .asm_1e0d2
+ callab CheckPikachuFaintedOrStatused
+ jr c, .asm_1e0d2
+ callab Func_f24d5
+.asm_1e0d2
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wBillsHouseCurScript], a
+ ret
+
+BillsHouseScript1:
+ ret
+
+BillsHouseScript2:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ and a ; cp SPRITE_FACING_DOWN
+ ld de, MovementData_1e79c
+ jr nz, .notDown
+ call CheckPikachuFollowingPlayer
+ jr nz, .asm_1e0f8
+ callab Func_f250b
+.asm_1e0f8
+ ld de, MovementData_1e7a0
+.notDown
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $3
+ ld [wBillsHouseCurScript], a
+ ret
+
+MovementData_1e79c:
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
+
+; make Bill walk around the player
+MovementData_1e7a0:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_UP
+ db $FF
+
+BillsHouseScript3:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_BILL_POKEMON
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call CheckPikachuFollowingPlayer
+ jr z, .asm_1e13e
+ ld hl, PikachuMovementData_1e14d
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ and a ; cp SPRITE_FACING_DOWN
+ jr nz, .asm_1e133
+ ld hl, PikachuMovementData_1e152
+.asm_1e133
+ call ApplyPikachuMovementData
+ callab InitializePikachuTextID
+.asm_1e13e
+ xor a
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BILL_SAID_USE_CELL_SEPARATOR
+ ld a, $4
+ ld [wBillsHouseCurScript], a
+ ret
+
+PikachuMovementData_1e14d:
+ db $00
+ db $1e
+ db $1e
+ db $1e
+ db $3f
+
+PikachuMovementData_1e152:
+ db $00
+ db $1e
+ db $1f
+ db $1e
+ db $1e
+ db $20
+ db $36
+ db $3f
+
+BillsHouseScript4:
+ CheckEvent EVENT_USED_CELL_SEPARATOR_ON_BILL
+ ret z
+ ld a, $fc
+ ld [wJoyIgnore], a
+ ld a, $5
+ ld [wBillsHouseCurScript], a
+ ret
+
+BillsHouseScript5:
+ ld a, $2
+ ld [wSpriteIndex], a
+ ld a, $c
+ ld [$ffeb], a
+ ld a, $40
+ ld [$ffec], a
+ ld a, $6
+ ld [$ffed], a
+ ld a, $5
+ ld [$ffee], a
+ call SetSpritePosition1
+ ld a, HS_BILL_1
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld c, 8
+ call DelayFrames
+ ld hl, wd472
+ bit 7, [hl]
+ jr z, .asm_1e1c6
+ call CheckPikachuFollowingPlayer
+ jr z, .asm_1e1c6
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld hl, PikachuMovementData_1e1a9
+ call ApplyPikachuMovementData
+ ld a, $f
+ ld [wEmotionBubbleSpriteIndex], a
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ callab InitializePikachuTextID
+.asm_1e1c6
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld de, MovementData_1e807
+ call MoveSprite
+ ld a, $6
+ ld [wBillsHouseCurScript], a
+ ret
+
+MovementData_1e807:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+PikachuMovementData_1e1a9:
+ db $00
+ db $37
+ db $3f
+
+BillsHouseScript6:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ SetEvent EVENT_MET_BILL_2 ; this event seems redundant
+ SetEvent EVENT_MET_BILL
+ ld a, $7
+ ld [wBillsHouseCurScript], a
+ ret
+
+BillsHouseScript7:
+ xor a
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld de, RLE_1e219
+ ld hl, wSimulatedJoypadStatesEnd
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $8
+ ld [wBillsHouseCurScript], a
+ ret
+
+RLE_1e219:
+ db D_RIGHT,$3
+ db $FF
+
+BillsHouseScript8:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $9
+ ld [wBillsHouseCurScript], a
+ ret
+
+BillsHouseScript9:
+ ret
+
+BillsHouse_TextPointers:
+ dw BillsHouseText1
+ dw BillsHouseText2
+ dw BillsHouseText3
+ dw BillsHouseText4
+
+BillsHouseText4:
+ TX_FAR _BillsHouseDontLeaveText
+ db "@"
+
+BillsHouseText1:
+ TX_ASM
+ callba Func_f2418
+ jp TextScriptEnd
+
+BillsHouseText2:
+ TX_ASM
+ callba Func_f244a
+ jp TextScriptEnd
+
+BillsHouseText3:
+ TX_ASM
+ callba Func_f24a2
+ jp TextScriptEnd
diff --git a/scripts/BillsHouse2.asm b/scripts/BillsHouse2.asm
new file mode 100755
index 00000000..ce474004
--- /dev/null
+++ b/scripts/BillsHouse2.asm
@@ -0,0 +1,158 @@
+Func_f2418:
+ ld hl, BillsHouseText_f243b
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_f2433
+.asm_f2427
+ ld hl, BillsHouseText_f2440
+ call PrintText
+ ld a, $2
+ ld [wBillsHouseCurScript], a
+ ret
+
+.asm_f2433
+ ld hl, BillsHouseText_f2445
+ call PrintText
+ jr .asm_f2427
+
+BillsHouseText_f243b:
+ TX_FAR _BillsHouseText_1e865
+ db "@"
+
+BillsHouseText_f2440:
+ TX_FAR _BillsHouseText_1e86a
+ db "@"
+
+BillsHouseText_f2445:
+ TX_FAR _BillsHouseText_1e86f
+ db "@"
+
+Func_f244a:
+ CheckEvent EVENT_GOT_SS_TICKET
+ jr nz, .asm_f247e
+ ld hl, BillsHouseText_f248c
+ call PrintText
+ lb bc, S_S_TICKET, 1
+ call GiveItem
+ jr nc, .asm_f2485
+ ld hl, BillsHouseText_f2491
+ call PrintText
+ SetEvent EVENT_GOT_SS_TICKET
+ ld a, HS_CERULEAN_GUARD_1
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, HS_CERULEAN_GUARD_2
+ ld [wMissableObjectIndex], a
+ predef HideObject
+.asm_f247e
+ ld hl, BillsHouseText_f249d
+ call PrintText
+ ret
+
+.asm_f2485
+ ld hl, BillsHouseText_f2498
+ call PrintText
+ ret
+
+BillsHouseText_f248c:
+ TX_FAR _BillThankYouText
+ db "@"
+
+BillsHouseText_f2491:
+ TX_FAR _SSTicketReceivedText
+ TX_SFX_KEY_ITEM
+ TX_BLINK
+ db "@"
+
+BillsHouseText_f2498:
+ TX_FAR _SSTicketNoRoomText
+ db "@"
+
+BillsHouseText_f249d:
+ TX_FAR _BillsHouseText_1e8cb
+ db "@"
+
+Func_f24a2:
+ ld hl, BillsHouseText_f24a9
+ call PrintText
+ ret
+
+BillsHouseText_f24a9:
+ TX_FAR _BillsHouseText_1e8da
+ db "@"
+
+Func_f24ae:
+ ld a, [wCurMap]
+ cp BILLS_HOUSE
+ jr nz, .asm_f24d2
+ call CheckPikachuFollowingPlayer
+ jr z, .asm_f24d2
+ ld a, [wBillsHouseCurScript]
+ cp $5
+ ld e, $1b
+ ret z
+ cp $0
+ ld e, $17
+ ret z
+ CheckEventHL EVENT_MET_BILL_2
+ ld e, $20
+ ret z
+ ld e, $1f
+ ret
+
+.asm_f24d2
+ ld e, $ff
+ ret
+
+Func_f24d5:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ xor a
+ ld [wPlayerMovingDirection], a
+ call UpdateSprites
+ call UpdateSprites
+ ld hl, Data_f2505
+ call ApplyPikachuMovementData
+ ld a, $f ; pikachu
+ ld [wEmotionBubbleSpriteIndex], a
+ ld a, QUESTION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ call DisablePikachuFollowingPlayer
+ callab InitializePikachuTextID
+ ret
+
+Data_f2505:
+ db $00
+ db $20
+ db $20
+ db $20
+ db $1e
+ db $3f
+
+Func_f250b:
+ ld hl, Data_f251c
+ ld b, SPRITE_FACING_UP
+ call TryApplyPikachuMovementData
+ ld hl, Data_f2521
+ ld b, SPRITE_FACING_RIGHT
+ call TryApplyPikachuMovementData
+ ret
+
+Data_f251c:
+ db $00
+ db $1f
+ db $1d
+ db $38
+ db $3f
+
+Data_f2521:
+ db $00
+ db $1e
+ db $1f
+ db $1f
+ db $1d
+ db $38
+ db $3f
diff --git a/scripts/BluesHouse.asm b/scripts/BluesHouse.asm
new file mode 100755
index 00000000..471e6989
--- /dev/null
+++ b/scripts/BluesHouse.asm
@@ -0,0 +1,85 @@
+BluesHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, BluesHouse_ScriptPointers
+ xor a
+ call CallFunctionInTable
+ ret
+
+BluesHouse_ScriptPointers:
+ dw BluesHouseScript0
+ dw BluesHouseScript1
+
+BluesHouseScript0:
+ SetEvent EVENT_ENTERED_BLUES_HOUSE
+
+ ; trigger the next script
+ ld a, 1
+ ld [wBluesHouseCurScript], a
+BluesHouseScript1:
+ ret
+
+BluesHouse_TextPointers:
+ dw BluesHouseText1
+ dw BluesHouseText2
+ dw BluesHouseText3
+
+BluesHouseText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_TOWN_MAP
+ jr nz, .GotMap
+ CheckEvent EVENT_GOT_POKEDEX
+ jr nz, .GiveMap
+ ld hl, DaisyInitialText
+ call PrintText
+ jr .done
+.GiveMap
+ ld hl, DaisyOfferMapText
+ call PrintText
+ lb bc, TOWN_MAP, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, HS_TOWN_MAP
+ ld [wMissableObjectIndex], a
+ predef HideObject ; hide table map object
+ ld hl, GotMapText
+ call PrintText
+ SetEvent EVENT_GOT_TOWN_MAP
+ jr .done
+.GotMap
+ ld hl, DaisyUseMapText
+ call PrintText
+ jr .done
+.BagFull
+ ld hl, DaisyBagFullText
+ call PrintText
+.done
+ jp TextScriptEnd
+
+DaisyInitialText:
+ TX_FAR _DaisyInitialText
+ db "@"
+
+DaisyOfferMapText:
+ TX_FAR _DaisyOfferMapText
+ db "@"
+
+GotMapText:
+ TX_FAR _GotMapText
+ TX_SFX_KEY_ITEM
+ db "@"
+
+DaisyBagFullText:
+ TX_FAR _DaisyBagFullText
+ db "@"
+
+DaisyUseMapText:
+ TX_FAR _DaisyUseMapText
+ db "@"
+
+BluesHouseText2: ; Daisy, walking around
+ TX_FAR _BluesHouseText2
+ db "@"
+
+BluesHouseText3: ; map on table
+ TX_FAR _BluesHouseText3
+ db "@"
diff --git a/scripts/BrunosRoom.asm b/scripts/BrunosRoom.asm
new file mode 100755
index 00000000..a525e5bb
--- /dev/null
+++ b/scripts/BrunosRoom.asm
@@ -0,0 +1,152 @@
+BrunosRoom_Script:
+ call BrunoShowOrHideExitBlock
+ call EnableAutoTextBoxDrawing
+ ld hl, BrunoTrainerHeader0
+ ld de, BrunosRoom_ScriptPointers
+ ld a, [wBrunosRoomCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wBrunosRoomCurScript], a
+ ret
+
+BrunoShowOrHideExitBlock:
+; Blocks or clears the exit to the next room.
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
+ jr z, .blockExitToNextRoom
+ ld a, $5
+ jp .setExitBlock
+.blockExitToNextRoom
+ ld a, $24
+
+.setExitBlock
+ ld [wNewTileBlockID], a
+ lb bc, 0, 2
+ predef_jump ReplaceTileBlock
+
+ResetBrunoScript:
+ xor a
+ ld [wBrunosRoomCurScript], a
+ ret
+
+BrunosRoom_ScriptPointers:
+ dw BrunoScript0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw BrunoScript2
+ dw BrunoScript3
+ dw BrunoScript4
+
+BrunoScript4:
+ ret
+
+BrunoScriptWalkIntoRoom:
+; Walk six steps upward.
+ ld hl, wSimulatedJoypadStatesEnd
+ ld a, D_UP
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $6
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wBrunosRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+BrunoScript0:
+ ld hl, BrunoEntranceCoords
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyPressed], a
+ ld [hJoyHeld], a
+ ld [wSimulatedJoypadStatesEnd], a
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, [wCoordIndex]
+ cp $3 ; Is player standing one tile above the exit?
+ jr c, .stopPlayerFromLeaving
+ CheckAndSetEvent EVENT_AUTOWALKED_INTO_BRUNOS_ROOM
+ jr z, BrunoScriptWalkIntoRoom
+.stopPlayerFromLeaving
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID ; "Don't run away!"
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wBrunosRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+BrunoEntranceCoords:
+ db $0A,$04
+ db $0A,$05
+ db $0B,$04
+ db $0B,$05
+ db $FF
+
+BrunoScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wBrunosRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+BrunoScript2:
+ call EndTrainerBattle
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, ResetBrunoScript
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+BrunosRoom_TextPointers:
+ dw BrunoText1
+ dw BrunoDontRunAwayText
+
+BrunoTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
+ dw BrunoBeforeBattleText ; TextBeforeBattle
+ dw BrunoAfterBattleText ; TextAfterBattle
+ dw BrunoEndBattleText ; TextEndBattle
+ dw BrunoEndBattleText ; TextEndBattle
+
+ db $ff
+
+BrunoText1:
+ TX_ASM
+ ld hl, BrunoTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+BrunoBeforeBattleText:
+ TX_FAR _BrunoBeforeBattleText
+ db "@"
+
+BrunoEndBattleText:
+ TX_FAR _BrunoEndBattleText
+ db "@"
+
+BrunoAfterBattleText:
+ TX_FAR _BrunoAfterBattleText
+ db "@"
+
+BrunoDontRunAwayText:
+ TX_FAR _BrunoDontRunAwayText
+ db "@"
diff --git a/scripts/CeladonChiefHouse.asm b/scripts/CeladonChiefHouse.asm
new file mode 100755
index 00000000..fc37bd4d
--- /dev/null
+++ b/scripts/CeladonChiefHouse.asm
@@ -0,0 +1,20 @@
+CeladonChiefHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonChiefHouse_TextPointers:
+ dw CeladonHouseText1
+ dw CeladonHouseText2
+ dw CeladonHouseText3
+
+CeladonHouseText1:
+ TX_FAR _CeladonHouseText1
+ db "@"
+
+CeladonHouseText2:
+ TX_FAR _CeladonHouseText2
+ db "@"
+
+CeladonHouseText3:
+ TX_FAR _CeladonHouseText3
+ db "@"
diff --git a/scripts/CeladonCity.asm b/scripts/CeladonCity.asm
new file mode 100755
index 00000000..bd49f5af
--- /dev/null
+++ b/scripts/CeladonCity.asm
@@ -0,0 +1,142 @@
+CeladonCity_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, CeladonCity_ScriptPointers
+ ld a, [wCeladonCityCurScript]
+ call CallFunctionInTable
+ ret
+
+CeladonCity_ScriptPointers:
+ dw CeladonCityScript1
+
+CeladonCityScript1:
+ ResetEvents EVENT_1B8, EVENT_1BF
+ ResetEvent EVENT_67F
+ ret
+
+CeladonCity_TextPointers:
+ dw CeladonCityText1
+ dw CeladonCityText2
+ dw CeladonCityText3
+ dw CeladonCityText4
+ dw CeladonCityText5
+ dw CeladonCityText6
+ dw CeladonCityText7
+ dw CeladonCityText8
+ dw CeladonCityText9
+ dw CeladonCityText10
+ dw CeladonCityText11
+ dw PokeCenterSignText
+ dw CeladonCityText13
+ dw CeladonCityText14
+ dw CeladonCityText15
+ dw CeladonCityText16
+ dw CeladonCityText17
+ dw CeladonCityText18
+
+CeladonCityText1:
+ TX_FAR _CeladonCityText1
+ db "@"
+
+CeladonCityText2:
+ TX_FAR _CeladonCityText2
+ db "@"
+
+CeladonCityText3:
+ TX_FAR _CeladonCityText3
+ db "@"
+
+CeladonCityText4:
+ TX_FAR _CeladonCityText4
+ db "@"
+
+CeladonCityText5:
+ TX_ASM
+ CheckEvent EVENT_GOT_TM41
+ jr nz, .asm_7053f
+ ld hl, TM41PreText
+ call PrintText
+ lb bc, TM_41, 1
+ call GiveItem
+ jr c, .Success
+ ld hl, TM41NoRoomText
+ call PrintText
+ jr .Done
+.Success
+ ld hl, ReceivedTM41Text
+ call PrintText
+ SetEvent EVENT_GOT_TM41
+ jr .Done
+.asm_7053f
+ ld hl, TM41ExplanationText
+ call PrintText
+.Done
+ jp TextScriptEnd
+
+TM41PreText:
+ TX_FAR _TM41PreText
+ db "@"
+
+ReceivedTM41Text:
+ TX_FAR _ReceivedTM41Text
+ TX_SFX_ITEM_1
+ db "@"
+
+TM41ExplanationText:
+ TX_FAR _TM41ExplanationText
+ db "@"
+
+TM41NoRoomText:
+ TX_FAR _TM41NoRoomText
+ db "@"
+
+CeladonCityText6:
+ TX_FAR _CeladonCityText6
+ db "@"
+
+CeladonCityText7:
+ TX_FAR _CeladonCityText7
+ TX_ASM
+ ld a, POLIWRATH
+ call PlayCry
+ jp TextScriptEnd
+
+CeladonCityText8:
+ TX_FAR _CeladonCityText8
+ db "@"
+
+CeladonCityText9:
+ TX_FAR _CeladonCityText9
+ db "@"
+
+CeladonCityText10:
+ TX_ASM
+ callba Func_f1ac6
+ jp TextScriptEnd
+
+CeladonCityText11:
+ TX_FAR _CeladonCityText11
+ db "@"
+
+CeladonCityText13:
+ TX_FAR _CeladonCityText13
+ db "@"
+
+CeladonCityText14:
+ TX_FAR _CeladonCityText14
+ db "@"
+
+CeladonCityText15:
+ TX_FAR _CeladonCityText15
+ db "@"
+
+CeladonCityText16:
+ TX_FAR _CeladonCityText16
+ db "@"
+
+CeladonCityText17:
+ TX_FAR _CeladonCityText17
+ db "@"
+
+CeladonCityText18:
+ TX_FAR _CeladonCityText18
+ db "@"
diff --git a/scripts/celadoncity2.asm b/scripts/CeladonCity2.asm
index 12f7b366..12f7b366 100755
--- a/scripts/celadoncity2.asm
+++ b/scripts/CeladonCity2.asm
diff --git a/scripts/CeladonDiner.asm b/scripts/CeladonDiner.asm
new file mode 100755
index 00000000..f444ec15
--- /dev/null
+++ b/scripts/CeladonDiner.asm
@@ -0,0 +1,31 @@
+CeladonDiner_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonDiner_TextPointers:
+ dw CeladonDinerText1
+ dw CeladonDinerText2
+ dw CeladonDinerText3
+ dw CeladonDinerText4
+ dw CeladonDinerText5
+
+CeladonDinerText1:
+ TX_FAR _CeladonDinerText1
+ db "@"
+
+CeladonDinerText2:
+ TX_FAR _CeladonDinerText2
+ db "@"
+
+CeladonDinerText3:
+ TX_FAR _CeladonDinerText3
+ db "@"
+
+CeladonDinerText4:
+ TX_FAR _CeladonDinerText4
+ db "@"
+
+CeladonDinerText5:
+ TX_ASM
+ callab Func_f1f31
+ jp TextScriptEnd
diff --git a/scripts/celadondiner2.asm b/scripts/CeladonDiner2.asm
index 8cd66a19..8cd66a19 100755
--- a/scripts/celadondiner2.asm
+++ b/scripts/CeladonDiner2.asm
diff --git a/scripts/CeladonGym.asm b/scripts/CeladonGym.asm
new file mode 100755
index 00000000..50c02196
--- /dev/null
+++ b/scripts/CeladonGym.asm
@@ -0,0 +1,335 @@
+CeladonGym_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, CeladonGymScript_48927
+ call EnableAutoTextBoxDrawing
+ ld hl, CeladonGymTrainerHeader0
+ ld de, CeladonGym_ScriptPointers
+ ld a, [wCeladonGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wCeladonGymCurScript], a
+ ret
+
+CeladonGymScript_48927:
+ ld hl, Gym4CityName
+ ld de, Gym4LeaderName
+ jp LoadGymLeaderAndCityName
+
+Gym4CityName:
+ db "CELADON CITY@"
+
+Gym4LeaderName:
+ db "ERIKA@"
+
+CeladonGymText_48943:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wCeladonGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+CeladonGym_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw CeladonGymScript3
+
+CeladonGymScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CeladonGymText_48943
+ ld a, $f0
+ ld [wJoyIgnore], a
+
+CeladonGymText_48963:
+ ld a, $9
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_ERIKA
+ lb bc, TM_21, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM21
+ jr .gymVictory
+.BagFull
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 3, [hl]
+ ld hl, wBeatGymFlags
+ set 3, [hl]
+
+ ; deactivate gym trainers
+ SetEventRange EVENT_BEAT_CELADON_GYM_TRAINER_0, EVENT_BEAT_CELADON_GYM_TRAINER_6
+
+ jp CeladonGymText_48943
+
+CeladonGym_TextPointers:
+ dw CeladonGymText1
+ dw CeladonGymText2
+ dw CeladonGymText3
+ dw CeladonGymText4
+ dw CeladonGymText5
+ dw CeladonGymText6
+ dw CeladonGymText7
+ dw CeladonGymText8
+ dw CeladonGymText9
+ dw TM21Text
+ dw TM21NoRoomText
+
+CeladonGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_0
+ dw CeladonGymBattleText2 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText2 ; TextAfterBattle
+ dw CeladonGymEndBattleText2 ; TextEndBattle
+ dw CeladonGymEndBattleText2 ; TextEndBattle
+
+CeladonGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_1
+ dw CeladonGymBattleText3 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText3 ; TextAfterBattle
+ dw CeladonGymEndBattleText3 ; TextEndBattle
+ dw CeladonGymEndBattleText3 ; TextEndBattle
+
+CeladonGymTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_2
+ dw CeladonGymBattleText4 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText4 ; TextAfterBattle
+ dw CeladonGymEndBattleText4 ; TextEndBattle
+ dw CeladonGymEndBattleText4 ; TextEndBattle
+
+CeladonGymTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_3
+ dw CeladonGymBattleText5 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText5 ; TextAfterBattle
+ dw CeladonGymEndBattleText5 ; TextEndBattle
+ dw CeladonGymEndBattleText5 ; TextEndBattle
+
+CeladonGymTrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_4
+ dw CeladonGymBattleText6 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText6 ; TextAfterBattle
+ dw CeladonGymEndBattleText6 ; TextEndBattle
+ dw CeladonGymEndBattleText6 ; TextEndBattle
+
+CeladonGymTrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_5
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_5
+ dw CeladonGymBattleText7 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText7 ; TextAfterBattle
+ dw CeladonGymEndBattleText7 ; TextEndBattle
+ dw CeladonGymEndBattleText7 ; TextEndBattle
+
+CeladonGymTrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_6, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_6, 1
+ dw CeladonGymBattleText8 ; TextBeforeBattle
+ dw CeladonGymAfterBattleText8 ; TextAfterBattle
+ dw CeladonGymEndBattleText8 ; TextEndBattle
+ dw CeladonGymEndBattleText8 ; TextEndBattle
+
+ db $ff
+
+CeladonGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_ERIKA
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM21
+ jr nz, .afterVictory
+ call z, CeladonGymText_48963
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.afterVictory
+ ld hl, CeladonGymText_48a68
+ call PrintText
+ jr .done
+.beginBattle
+ ld hl, CeladonGymText_48a5e
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeladonGymText_48a63
+ ld de, CeladonGymText_48a63
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $4
+ ld [wGymLeaderNo], a
+ ld a, $3
+ ld [wCeladonGymCurScript], a
+ ld [wCurMapScript], a
+.done
+ jp TextScriptEnd
+
+CeladonGymText_48a5e:
+ TX_FAR _CeladonGymText_48a5e
+ db "@"
+
+CeladonGymText_48a63:
+ TX_FAR _CeladonGymText_48a63
+ db "@"
+
+CeladonGymText_48a68:
+ TX_FAR _CeladonGymText_48a68
+ db "@"
+
+CeladonGymText9:
+ TX_FAR _CeladonGymText9
+ db "@"
+
+TM21Text:
+ TX_FAR _ReceivedTM21Text
+ TX_SFX_ITEM_1
+ TX_FAR _TM21ExplanationText
+ db "@"
+
+TM21NoRoomText:
+ TX_FAR _TM21NoRoomText
+ db "@"
+
+CeladonGymText2:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText2:
+ TX_FAR _CeladonGymBattleText2
+ db "@"
+
+CeladonGymEndBattleText2:
+ TX_FAR _CeladonGymEndBattleText2
+ db "@"
+
+CeladonGymAfterBattleText2:
+ TX_FAR _CeladonGymAfterBattleText2
+ db "@"
+
+CeladonGymText3:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText3:
+ TX_FAR _CeladonGymBattleText3
+ db "@"
+
+CeladonGymEndBattleText3:
+ TX_FAR _CeladonGymEndBattleText3
+ db "@"
+
+CeladonGymAfterBattleText3:
+ TX_FAR _CeladonGymAfterBattleText3
+ db "@"
+
+CeladonGymText4:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText4:
+ TX_FAR _CeladonGymBattleText4
+ db "@"
+
+CeladonGymEndBattleText4:
+ TX_FAR _CeladonGymEndBattleText4
+ db "@"
+
+CeladonGymAfterBattleText4:
+ TX_FAR _CeladonGymAfterBattleText4
+ db "@"
+
+CeladonGymText5:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText5:
+ TX_FAR _CeladonGymBattleText5
+ db "@"
+
+CeladonGymEndBattleText5:
+ TX_FAR _CeladonGymEndBattleText5
+ db "@"
+
+CeladonGymAfterBattleText5:
+ TX_FAR _CeladonGymAfterBattleText5
+ db "@"
+
+CeladonGymText6:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText6:
+ TX_FAR _CeladonGymBattleText6
+ db "@"
+
+CeladonGymEndBattleText6:
+ TX_FAR _CeladonGymEndBattleText6
+ db "@"
+
+CeladonGymAfterBattleText6:
+ TX_FAR _CeladonGymAfterBattleText6
+ db "@"
+
+CeladonGymText7:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText7:
+ TX_FAR _CeladonGymBattleText7
+ db "@"
+
+CeladonGymEndBattleText7:
+ TX_FAR _CeladonGymEndBattleText7
+ db "@"
+
+CeladonGymAfterBattleText7:
+ TX_FAR _CeladonGymAfterBattleText7
+ db "@"
+
+CeladonGymText8:
+ TX_ASM
+ ld hl, CeladonGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeladonGymBattleText8:
+ TX_FAR _CeladonGymBattleText8
+ db "@"
+
+CeladonGymEndBattleText8:
+ TX_FAR _CeladonGymEndBattleText8
+ db "@"
+
+CeladonGymAfterBattleText8:
+ TX_FAR _CeladonGymAfterBattleText8
+ db "@"
diff --git a/scripts/CeladonHotel.asm b/scripts/CeladonHotel.asm
new file mode 100755
index 00000000..ee4e140c
--- /dev/null
+++ b/scripts/CeladonHotel.asm
@@ -0,0 +1,19 @@
+CeladonHotel_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeladonHotel_TextPointers:
+ dw CeladonHotelText1
+ dw CeladonHotelText2
+ dw CeladonHotelText3
+
+CeladonHotelText1:
+ TX_FAR _CeladonHotelText1
+ db "@"
+
+CeladonHotelText2:
+ TX_FAR _CeladonHotelText2
+ db "@"
+
+CeladonHotelText3:
+ TX_FAR _CeladonHotelText3
+ db "@"
diff --git a/scripts/CeladonMansion1F.asm b/scripts/CeladonMansion1F.asm
new file mode 100755
index 00000000..1d7c37b4
--- /dev/null
+++ b/scripts/CeladonMansion1F.asm
@@ -0,0 +1,48 @@
+CeladonMansion1F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMansion1F_TextPointers:
+ dw CeladonMansion1Text1
+ dw CeladonMansion1Text2
+ dw CeladonMansion1Text3
+ dw CeladonMansion1Text4
+ dw CeladonMansion1Text5
+
+CeladonMansion1Text1:
+ TX_FAR _CeladonMansion1Text1
+ TX_ASM
+ ld a, MEOWTH
+ call PlayCry
+ jp TextScriptEnd
+
+CeladonMansion1Text2:
+ TX_ASM
+ callba Func_f1e70
+ ld a, [wPikachuHappiness]
+ cp 251
+ jr c, .asm_485d9
+ ld c, 50
+ call DelayFrames
+ ldpikacry e, PikachuCry23
+ callab PlayPikachuSoundClip
+.asm_485d9
+ jp TextScriptEnd
+
+CeladonMansion1Text3:
+ TX_FAR _CeladonMansion1Text3
+ TX_ASM
+ ld a, CLEFAIRY
+ call PlayCry
+ jp TextScriptEnd
+
+CeladonMansion1Text4:
+ TX_FAR _CeladonMansion1Text4
+ TX_ASM
+ ld a, NIDORAN_F
+ call PlayCry
+ jp TextScriptEnd
+
+CeladonMansion1Text5:
+ TX_FAR _CeladonMansion1Text5
+ db "@"
diff --git a/scripts/CeladonMansion1F_2.asm b/scripts/CeladonMansion1F_2.asm
new file mode 100755
index 00000000..cdd56ab8
--- /dev/null
+++ b/scripts/CeladonMansion1F_2.asm
@@ -0,0 +1,78 @@
+Func_f1e70:
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, CeladonMansion1Text_f1e96
+ call PrintText
+ callab IsStarterPikachuInOurParty
+ ret nc
+ ld hl, CeladonMansionText_f1e9c
+ call PrintText
+ ld a, $0
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ call Func_f1ea2
+ call PrintText
+ ret
+
+CeladonMansion1Text_f1e96:
+ TX_FAR _CeladonMansion1Text2
+ TX_WAIT
+ db "@"
+
+CeladonMansionText_f1e9c:
+ TX_FAR _CeladonMansion1Text6
+ TX_BLINK
+ db "@"
+
+Func_f1ea2:
+ ld hl, PikachuHappinessThresholds_f1eb9
+.asm_f1ea5
+ ld a, [hli]
+ inc hl
+ and a
+ jr z, .asm_f1eb5
+ ld b, a
+ ld a, [wPikachuHappiness]
+ cp b
+ jr c, .asm_f1eb5
+ inc hl
+ inc hl
+ jr .asm_f1ea5
+
+.asm_f1eb5
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ret
+
+PikachuHappinessThresholds_f1eb9
+ dw 51, CeladonMansion1Text_f1ed5
+ dw 101, CeladonMansion1Text_f1eda
+ dw 131, CeladonMansion1Text_f1edf
+ dw 161, CeladonMansion1Text_f1ee4
+ dw 201, CeladonMansion1Text_f1ee9
+ dw 255, CeladonMansion1Text_f1eee
+ dbbw 0, $ff, CeladonMansion1Text_f1eee
+
+CeladonMansion1Text_f1ed5:
+ TX_FAR _CeladonMansion1Text7
+ db "@"
+
+CeladonMansion1Text_f1eda:
+ TX_FAR _CeladonMansion1Text8
+ db "@"
+
+CeladonMansion1Text_f1edf:
+ TX_FAR _CeladonMansion1Text9
+ db "@"
+
+CeladonMansion1Text_f1ee4:
+ TX_FAR _CeladonMansion1Text10
+ db "@"
+
+CeladonMansion1Text_f1ee9:
+ TX_FAR _CeladonMansion1Text11
+ db "@"
+
+CeladonMansion1Text_f1eee:
+ TX_FAR _CeladonMansion1Text12
+ db "@"
diff --git a/scripts/CeladonMansion2F.asm b/scripts/CeladonMansion2F.asm
new file mode 100755
index 00000000..9deb606d
--- /dev/null
+++ b/scripts/CeladonMansion2F.asm
@@ -0,0 +1,10 @@
+CeladonMansion2F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMansion2F_TextPointers:
+ dw CeladonMansion2Text1
+
+CeladonMansion2Text1:
+ TX_FAR _CeladonMansion2Text1
+ db "@"
diff --git a/scripts/CeladonMansion3F.asm b/scripts/CeladonMansion3F.asm
new file mode 100755
index 00000000..64a8343b
--- /dev/null
+++ b/scripts/CeladonMansion3F.asm
@@ -0,0 +1,176 @@
+CeladonMansion3F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMansion3_PokedexCount:
+ ld hl, wPokedexOwned
+ ld b, wPokedexOwnedEnd - wPokedexOwned
+ call CountSetBits
+ ld a, [wNumSetBits]
+ ret
+
+CeladonMansion3F_TextPointers:
+ dw ProgrammerText
+ dw GraphicArtistText
+ dw WriterText
+ dw DirectorText
+ dw GameFreakPCText1
+ dw GameFreakPCText2
+ dw GameFreakPCText3
+ dw GameFreakSignText
+
+ProgrammerText:
+ TX_ASM
+ call CeladonMansion3_PokedexCount
+ cp 150
+ ld hl, CeladonMansion3Text_486f5
+ jr nc, .print
+ ld hl, CeladonMansion3Text_486f0
+.print
+ call PrintText
+ jp TextScriptEnd
+
+CeladonMansion3Text_486f0:
+ TX_FAR _ProgrammerText
+ db "@"
+
+CeladonMansion3Text_486f5:
+ TX_FAR _ProgrammerText2
+ db "@"
+
+GraphicArtistText:
+ TX_ASM
+ call CeladonMansion3_PokedexCount
+ cp 150
+ jr nc, .completed
+ ld hl, CeladonMansion3Text_48757
+ jr .print
+
+.completed
+ ld hl, CeladonMansion3Text_4875c
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .declined_print
+ call SaveScreenTilesToBuffer2
+ xor a
+ ld [wUpdateSpritesEnabled], a
+ ld hl, wd730
+ set 6, [hl]
+ callab PrintDiploma
+ ld hl, wd730
+ res 6, [hl]
+ call GBPalWhiteOutWithDelay3
+ call ReloadTilesetTilePatterns
+ call RestoreScreenTilesAndReloadTilePatterns
+ call LoadScreenTilesFromBuffer2
+ call Delay3
+ call GBPalNormal
+ ld hl, CeladonMansion3Text_4876b
+ ld a, [$ffdb]
+ and a
+ jr nz, .print
+ ld hl, CeladonMansion3Text_48766
+ jr .print
+
+.declined_print
+ ld hl, CeladonMansion3Text_48761
+.print
+ call PrintText
+ jp TextScriptEnd
+
+CeladonMansion3Text_48757:
+ TX_FAR _GraphicArtistText
+ db "@"
+
+CeladonMansion3Text_4875c:
+ TX_FAR _GraphicArtistText2
+ db "@"
+
+CeladonMansion3Text_48761:
+ TX_FAR _GraphicArtistText3
+ db "@"
+
+CeladonMansion3Text_48766:
+ TX_FAR _GraphicArtistText4
+ db "@"
+
+CeladonMansion3Text_4876b:
+ TX_FAR _GraphicArtistText5
+ db "@"
+
+WriterText:
+ TX_ASM
+ call CeladonMansion3_PokedexCount
+ cp 150
+ ld hl, CeladonMansion3Text_48789
+ jr nc, .print
+ ld hl, CeladonMansion3Text_48784
+.print
+ call PrintText
+ jp TextScriptEnd
+
+CeladonMansion3Text_48784:
+ TX_FAR _WriterText
+ db "@"
+
+CeladonMansion3Text_48789:
+ TX_FAR _WriterText2
+ db "@"
+
+DirectorText:
+ TX_ASM
+ call CeladonMansion3_PokedexCount
+ ; check pokédex
+ cp 150
+ jr nc, .CompletedDex
+ ld hl, .GameDesigner
+ jr .done
+.CompletedDex
+ ld hl, .CompletedDexText
+ call PrintText
+ call Delay3
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, .UnlockedDiplomaPrinting
+.done
+ call PrintText
+ jp TextScriptEnd
+
+.GameDesigner
+ TX_FAR _GameDesignerText
+ db "@"
+
+.CompletedDexText
+ TX_FAR _CompletedDexText
+ TX_BLINK
+ TX_ASM
+ callab DisplayDiploma
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ jp TextScriptEnd
+
+.UnlockedDiplomaPrinting
+ TX_FAR _CompletedDexText2
+ db "@"
+
+GameFreakPCText1:
+ TX_ASM
+ callba Func_f1ef3
+ jp TextScriptEnd
+
+GameFreakPCText2:
+ TX_ASM
+ callba Func_f1eff
+ jp TextScriptEnd
+
+GameFreakPCText3:
+ TX_ASM
+ callba Func_f1f0b
+ jp TextScriptEnd
+
+GameFreakSignText:
+ TX_ASM
+ callba Func_f1f17
+ jp TextScriptEnd
diff --git a/scripts/celadonmansion3_2.asm b/scripts/CeladonMansion3F_2.asm
index 3a7035ba..3a7035ba 100755
--- a/scripts/celadonmansion3_2.asm
+++ b/scripts/CeladonMansion3F_2.asm
diff --git a/scripts/CeladonMansionRoof.asm b/scripts/CeladonMansionRoof.asm
new file mode 100755
index 00000000..1813e9ee
--- /dev/null
+++ b/scripts/CeladonMansionRoof.asm
@@ -0,0 +1,10 @@
+CeladonMansionRoof_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMansionRoof_TextPointers:
+ dw CeladonMansion4Text1
+
+CeladonMansion4Text1:
+ TX_FAR _CeladonMansion4Text1
+ db "@"
diff --git a/scripts/CeladonMansionRoofHouse.asm b/scripts/CeladonMansionRoofHouse.asm
new file mode 100755
index 00000000..8e485352
--- /dev/null
+++ b/scripts/CeladonMansionRoofHouse.asm
@@ -0,0 +1,22 @@
+CeladonMansionRoofHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMansionRoofHouse_TextPointers:
+ dw CeladonMansion5Text1
+ dw CeladonMansion5Text2
+
+CeladonMansion5Text1:
+ TX_FAR _CeladonMansion5Text1
+ db "@"
+
+CeladonMansion5Text2:
+ TX_ASM
+ lb bc, EEVEE, 25
+ call GivePokemon
+ jr nc, .asm_24365
+ ld a, HS_CELADON_MANSION_EEVEE_GIFT
+ ld [wMissableObjectIndex], a
+ predef HideObject
+.asm_24365
+ jp TextScriptEnd
diff --git a/scripts/CeladonMart1F.asm b/scripts/CeladonMart1F.asm
new file mode 100755
index 00000000..e84eaae0
--- /dev/null
+++ b/scripts/CeladonMart1F.asm
@@ -0,0 +1,20 @@
+CeladonMart1F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMart1F_TextPointers:
+ dw CeladonMart1Text1
+ dw CeladonMart1Text2
+ dw CeladonMart1Text3
+
+CeladonMart1Text1:
+ TX_FAR _CeladonMart1Text1
+ db "@"
+
+CeladonMart1Text2:
+ TX_FAR _CeladonMart1Text2
+ db "@"
+
+CeladonMart1Text3:
+ TX_FAR _CeladonMart1Text3
+ db "@"
diff --git a/scripts/CeladonMart2F.asm b/scripts/CeladonMart2F.asm
new file mode 100755
index 00000000..787c186e
--- /dev/null
+++ b/scripts/CeladonMart2F.asm
@@ -0,0 +1,21 @@
+CeladonMart2F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart2F_TextPointers:
+ dw CeladonMart2Clerk1Text
+ dw CeladonMart2Clerk2Text
+ dw CeladonMart2Text3
+ dw CeladonMart2Text4
+ dw CeladonMart2Text5
+
+CeladonMart2Text3:
+ TX_FAR _CeladonMart2Text3
+ db "@"
+
+CeladonMart2Text4:
+ TX_FAR _CeladonMart2Text4
+ db "@"
+
+CeladonMart2Text5:
+ TX_FAR _CeladonMart2Text5
+ db "@"
diff --git a/scripts/CeladonMart3F.asm b/scripts/CeladonMart3F.asm
new file mode 100755
index 00000000..c8a108d7
--- /dev/null
+++ b/scripts/CeladonMart3F.asm
@@ -0,0 +1,75 @@
+CeladonMart3F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart3F_TextPointers:
+ dw CeladonMart3Text1
+ dw CeladonMart3Text2
+ dw CeladonMart3Text3
+ dw CeladonMart3Text4
+ dw CeladonMart3Text5
+ dw CeladonMart3Text6
+ dw CeladonMart3Text7
+ dw CeladonMart3Text8
+ dw CeladonMart3Text9
+ dw CeladonMart3Text10
+ dw CeladonMart3Text11
+ dw CeladonMart3Text12
+ dw CeladonMart3Text13
+ dw CeladonMart3Text14
+ dw CeladonMart3Text15
+ dw CeladonMart3Text16
+ dw CeladonMart3Text17
+
+CeladonMart3Text1:
+ TX_ASM
+ callab Func_f1e30
+ jp TextScriptEnd
+
+CeladonMart3Text2:
+ TX_FAR _CeladonMart3Text2
+ db "@"
+
+CeladonMart3Text3:
+ TX_FAR _CeladonMart3Text3
+ db "@"
+
+CeladonMart3Text4:
+ TX_FAR _CeladonMart3Text4
+ db "@"
+
+CeladonMart3Text5:
+ TX_FAR _CeladonMart3Text5
+ db "@"
+
+CeladonMart3Text12
+CeladonMart3Text10:
+CeladonMart3Text8:
+CeladonMart3Text6:
+ TX_FAR _CeladonMart3Text6
+ db "@"
+
+CeladonMart3Text7:
+ TX_FAR _CeladonMart3Text7
+ db "@"
+
+CeladonMart3Text9:
+ TX_FAR _CeladonMart3Text9
+ db "@"
+
+CeladonMart3Text11:
+ TX_FAR _CeladonMart3Text11
+ db "@"
+
+CeladonMart3Text13:
+ TX_FAR _CeladonMart3Text13
+ db "@"
+
+CeladonMart3Text14:
+ TX_FAR _CeladonMart3Text14
+ db "@"
+
+CeladonMart3Text17:
+CeladonMart3Text16:
+CeladonMart3Text15:
+ TX_FAR _CeladonMart3Text15
+ db "@"
diff --git a/scripts/CeladonMart3F_2.asm b/scripts/CeladonMart3F_2.asm
new file mode 100755
index 00000000..8c99e0e0
--- /dev/null
+++ b/scripts/CeladonMart3F_2.asm
@@ -0,0 +1,38 @@
+Func_f1e30
+ CheckEvent EVENT_GOT_TM18
+ jr nz, .asm_f1e54
+ ld hl, CeladonMart3Text_f1e5b
+ call PrintText
+ lb bc, TM_18, 1
+ call GiveItem
+ jr nc, .asm_f1e4f
+ SetEvent EVENT_GOT_TM18
+ ld hl, CeladonMart3Text_f1e60
+ jr .asm_f1e57
+
+.asm_f1e4f
+ ld hl, CeladonMart3Text_f1e6b
+ jr .asm_f1e57
+
+.asm_f1e54
+ ld hl, CeladonMart3Text_f1e66
+.asm_f1e57
+ call PrintText
+ ret
+
+CeladonMart3Text_f1e5b:
+ TX_FAR _TM18PreReceiveText
+ db "@"
+
+CeladonMart3Text_f1e60:
+ TX_FAR _ReceivedTM18Text
+ TX_SFX_ITEM_1
+ db "@"
+
+CeladonMart3Text_f1e66:
+ TX_FAR _TM18ExplanationText
+ db "@"
+
+CeladonMart3Text_f1e6b:
+ TX_FAR _TM18NoRoomText
+ db "@"
diff --git a/scripts/CeladonMart4F.asm b/scripts/CeladonMart4F.asm
new file mode 100755
index 00000000..20f817e9
--- /dev/null
+++ b/scripts/CeladonMart4F.asm
@@ -0,0 +1,20 @@
+CeladonMart4F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeladonMart4F_TextPointers:
+ dw CeladonMart4ClerkText
+ dw CeladonMart4Text2
+ dw CeladonMart4Text3
+ dw CeladonMart4Text4
+
+CeladonMart4Text2:
+ TX_FAR _CeladonMart4Text2
+ db "@"
+
+CeladonMart4Text3:
+ TX_FAR _CeladonMart4Text3
+ db "@"
+
+CeladonMart4Text4:
+ TX_FAR _CeladonMart4Text4
+ db "@"
diff --git a/scripts/CeladonMart5F.asm b/scripts/CeladonMart5F.asm
new file mode 100755
index 00000000..74c590be
--- /dev/null
+++ b/scripts/CeladonMart5F.asm
@@ -0,0 +1,22 @@
+CeladonMart5F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMart5F_TextPointers:
+ dw CeladonMart5Text1
+ dw CeladonMart5Text2
+ dw CeladonMart5Clerk1Text
+ dw CeladonMart5Clerk2Text
+ dw CeladonMart5Text5
+
+CeladonMart5Text1:
+ TX_FAR _CeladonMart5Text1
+ db "@"
+
+CeladonMart5Text2:
+ TX_FAR _CeladonMart5Text2
+ db "@"
+
+CeladonMart5Text5:
+ TX_FAR _CeladonMart5Text5
+ db "@"
diff --git a/scripts/CeladonMartElevator.asm b/scripts/CeladonMartElevator.asm
new file mode 100755
index 00000000..34b923f9
--- /dev/null
+++ b/scripts/CeladonMartElevator.asm
@@ -0,0 +1,73 @@
+CeladonMartElevator_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, CeladonMartElevatorScript_4861c
+ pop hl
+ bit 7, [hl]
+ res 7, [hl]
+ call nz, CeladonMartElevatorScript_48654
+ xor a
+ ld [wAutoTextBoxDrawingControl], a
+ inc a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ret
+
+CeladonMartElevatorScript_4861c:
+ ld hl, wWarpEntries
+ ld a, [wWarpedFromWhichWarp]
+ ld b, a
+ ld a, [wWarpedFromWhichMap]
+ ld c, a
+ call CeladonMartElevatorScript_4862a
+
+CeladonMartElevatorScript_4862a:
+ inc hl
+ inc hl
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ret
+
+CeladonMartElevatorScript_48631:
+ ld hl, CeladonMartElevatorFloors
+ call LoadItemList
+ ld hl, CeladonMartElevatorWarpMaps
+ ld de, wElevatorWarpMaps
+ ld bc, CeladonMartElevatorWarpMapsEnd - CeladonMartElevatorWarpMaps
+ jp CopyData
+
+CeladonMartElevatorFloors:
+ db 5 ; number of elements in list
+ db FLOOR_1F
+ db FLOOR_2F
+ db FLOOR_3F
+ db FLOOR_4F
+ db FLOOR_5F
+ db $FF
+
+CeladonMartElevatorWarpMaps:
+; first byte is warp number
+; second byte is map number
+; These specify where the player goes after getting out of the elevator.
+ db $05, CELADON_MART_1F
+ db $02, CELADON_MART_2F
+ db $02, CELADON_MART_3F
+ db $02, CELADON_MART_4F
+ db $02, CELADON_MART_5F
+CeladonMartElevatorWarpMapsEnd:
+
+CeladonMartElevatorScript_48654:
+ jpba ShakeElevator
+
+CeladonMartElevator_TextPointers:
+ dw CeladonMartElevatorText1
+
+CeladonMartElevatorText1:
+ TX_ASM
+ call CeladonMartElevatorScript_48631
+ ld hl, CeladonMartElevatorWarpMaps
+ predef DisplayElevatorFloorMenu
+ jp TextScriptEnd
diff --git a/scripts/CeladonMartRoof.asm b/scripts/CeladonMartRoof.asm
new file mode 100755
index 00000000..64871bdd
--- /dev/null
+++ b/scripts/CeladonMartRoof.asm
@@ -0,0 +1,259 @@
+CeladonMartRoof_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeladonMartRoofScript_GetDrinksInBag:
+; construct a list of all drinks in the player's bag
+ xor a
+ ld [wFilteredBagItemsCount], a
+ ld de, wFilteredBagItems
+ ld hl, CeladonMartRoofDrinkList
+.loop
+ ld a, [hli]
+ and a
+ jr z, .done
+ push hl
+ push de
+ ld [wd11e], a
+ ld b, a
+ predef GetQuantityOfItemInBag
+ pop de
+ pop hl
+ ld a, b
+ and a
+ jr z, .loop ; if the item isn't in the bag
+ ld a, [wd11e]
+ ld [de], a
+ inc de
+ push hl
+ ld hl, wFilteredBagItemsCount
+ inc [hl]
+ pop hl
+ jr .loop
+.done
+ ld a, $ff
+ ld [de], a
+ ret
+
+CeladonMartRoofDrinkList:
+ db FRESH_WATER
+ db SODA_POP
+ db LEMONADE
+ db $00
+
+CeladonMartRoofScript_GiveDrinkToGirl:
+ ld hl, wd730
+ set 6, [hl]
+ ld hl, CeladonMartRoofText_484ee
+ call PrintText
+ xor a
+ ld [wCurrentMenuItem], a
+ ld a, A_BUTTON | B_BUTTON
+ ld [wMenuWatchedKeys], a
+ ld a, [wFilteredBagItemsCount]
+ dec a
+ ld [wMaxMenuItem], a
+ ld a, 2
+ ld [wTopMenuItemY], a
+ ld a, 1
+ ld [wTopMenuItemX], a
+ ld a, [wFilteredBagItemsCount]
+ dec a
+ ld bc, 2
+ ld hl, 3
+ call AddNTimes
+ dec l
+ ld b, l
+ ld c, 12
+ coord hl, 0, 0
+ call TextBoxBorder
+ call UpdateSprites
+ call CeladonMartRoofScript_PrintDrinksInBag
+ ld hl, wd730
+ res 6, [hl]
+ call HandleMenuInput
+ bit BIT_B_BUTTON, a ; pressed b
+ ret nz
+ ld hl, wFilteredBagItems
+ ld a, [wCurrentMenuItem]
+ ld d, 0
+ ld e, a
+ add hl, de
+ ld a, [hl]
+ ld [hItemToRemoveID], a
+ cp FRESH_WATER
+ jr z, .gaveFreshWater
+ cp SODA_POP
+ jr z, .gaveSodaPop
+; gave Lemonade
+ CheckEvent EVENT_GOT_TM49
+ jr nz, .alreadyGaveDrink
+ ld hl, CeladonMartRoofText_48515
+ call PrintText
+ call RemoveItemByIDBank12
+ lb bc, TM_49, 1
+ call GiveItem
+ jr nc, .bagFull
+ ld hl, ReceivedTM49Text
+ call PrintText
+ SetEvent EVENT_GOT_TM49
+ ret
+.gaveSodaPop
+ CheckEvent EVENT_GOT_TM48
+ jr nz, .alreadyGaveDrink
+ ld hl, CeladonMartRoofText_48504
+ call PrintText
+ call RemoveItemByIDBank12
+ lb bc, TM_48, 1
+ call GiveItem
+ jr nc, .bagFull
+ ld hl, CeladonMartRoofText_4850a
+ call PrintText
+ SetEvent EVENT_GOT_TM48
+ ret
+.gaveFreshWater
+ CheckEvent EVENT_GOT_TM13
+ jr nz, .alreadyGaveDrink
+ ld hl, CeladonMartRoofText_484f3
+ call PrintText
+ call RemoveItemByIDBank12
+ lb bc, TM_13, 1
+ call GiveItem
+ jr nc, .bagFull
+ ld hl, CeladonMartRoofText_484f9
+ call PrintText
+ SetEvent EVENT_GOT_TM13
+ ret
+.bagFull
+ ld hl, CeladonMartRoofText_48526
+ call PrintText
+ ret
+.alreadyGaveDrink
+ ld hl, CeladonMartRoofText_4852c
+ call PrintText
+ ret
+
+RemoveItemByIDBank12:
+ callba RemoveItemByID
+ ret
+
+CeladonMartRoofText_484ee:
+ TX_FAR _CeladonMartRoofText_484ee
+ db "@"
+
+CeladonMartRoofText_484f3:
+ TX_FAR _CeladonMartRoofText_484f3
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofText_484f9:
+ TX_FAR _CeladonMartRoofText_484f9
+ TX_SFX_ITEM_1
+ TX_FAR _CeladonMartRoofText_484fe
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofText_48504:
+ TX_FAR _CeladonMartRoofText_48504
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofText_4850a:
+ TX_FAR _CeladonMartRoofText_4850a
+ TX_SFX_ITEM_1
+ TX_FAR _CeladonMartRoofText_4850f
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofText_48515:
+ TX_FAR _CeladonMartRoofText_48515
+ TX_WAIT
+ db "@"
+
+ReceivedTM49Text:
+ TX_FAR _ReceivedTM49Text
+ TX_SFX_ITEM_1
+ TX_FAR _CeladonMartRoofText_48520
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofText_48526:
+ TX_FAR _CeladonMartRoofText_48526
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofText_4852c:
+ TX_FAR _CeladonMartRoofText_4852c
+ TX_WAIT
+ db "@"
+
+CeladonMartRoofScript_PrintDrinksInBag:
+ ld hl, wFilteredBagItems
+ xor a
+ ld [hItemCounter], a
+.loop
+ ld a, [hli]
+ cp $ff
+ ret z
+ push hl
+ ld [wd11e], a
+ call GetItemName
+ coord hl, 2, 2
+ ld a, [hItemCounter]
+ ld bc, SCREEN_WIDTH * 2
+ call AddNTimes
+ ld de, wcd6d
+ call PlaceString
+ ld hl, hItemCounter
+ inc [hl]
+ pop hl
+ jr .loop
+
+CeladonMartRoof_TextPointers:
+ dw CeladonMartRoofText1
+ dw CeladonMartRoofText2
+ dw CeladonMartRoofText5
+ dw CeladonMartRoofText5
+ dw CeladonMartRoofText5
+ dw CeladonMartRoofText6
+
+CeladonMartRoofText1:
+ TX_FAR _CeladonMartRoofText1
+ db "@"
+
+CeladonMartRoofText2:
+ TX_ASM
+ call CeladonMartRoofScript_GetDrinksInBag
+ ld a, [wFilteredBagItemsCount]
+ and a
+ jr z, .noDrinksInBag
+ ld a, 1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, CeladonMartRoofText4
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .done
+ call CeladonMartRoofScript_GiveDrinkToGirl
+ jr .done
+.noDrinksInBag
+ ld hl, CeladonMartRoofText3
+ call PrintText
+.done
+ jp TextScriptEnd
+
+CeladonMartRoofText3:
+ TX_FAR _CeladonMartRoofText_48598
+ db "@"
+
+CeladonMartRoofText4:
+ TX_FAR _CeladonMartRoofText4
+ db "@"
+
+CeladonMartRoofText5:
+ TX_VENDING_MACHINE
+
+CeladonMartRoofText6:
+ TX_FAR _CeladonMartRoofText6
+ db "@"
diff --git a/scripts/CeladonPokecenter.asm b/scripts/CeladonPokecenter.asm
new file mode 100755
index 00000000..21b9452c
--- /dev/null
+++ b/scripts/CeladonPokecenter.asm
@@ -0,0 +1,29 @@
+CeladonPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+CeladonPokecenter_TextPointers:
+ dw CeladonHealNurseText
+ dw CeladonPokecenterText2
+ dw CeladonPokecenterText3
+ dw CeladonTradeNurseText
+ dw CeladonPokecenterText5
+
+CeladonTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+CeladonHealNurseText:
+ TX_POKECENTER_NURSE
+
+CeladonPokecenterText2:
+ TX_FAR _CeladonPokecenterText2
+ db "@"
+
+CeladonPokecenterText3:
+ TX_FAR _CeladonPokecenterText3
+ db "@"
+
+CeladonPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/CeruleanBadgeHouse.asm b/scripts/CeruleanBadgeHouse.asm
new file mode 100755
index 00000000..cab2bf23
--- /dev/null
+++ b/scripts/CeruleanBadgeHouse.asm
@@ -0,0 +1,109 @@
+CeruleanBadgeHouse_Script:
+ ld a, $1
+ ld [wAutoTextBoxDrawingControl], a
+ dec a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ret
+
+CeruleanBadgeHouse_TextPointers:
+ dw CeruleanHouse2Text1
+
+CeruleanHouse2Text1:
+ TX_ASM
+ ld hl, CeruleanHouse2Text_74e77
+ call PrintText
+ xor a
+ ld [wCurrentMenuItem], a
+ ld [wListScrollOffset], a
+.asm_74e23
+ ld hl, CeruleanHouse2Text_74e7c
+ call PrintText
+ ld hl, BadgeItemList
+ call LoadItemList
+ ld hl, wItemList
+ ld a, l
+ ld [wListPointer], a
+ ld a, h
+ ld [wListPointer + 1], a
+ xor a
+ ld [wPrintItemPrices], a
+ ld [wMenuItemToSwap], a
+ ld a, SPECIALLISTMENU
+ ld [wListMenuID], a
+ call DisplayListMenuID
+ jr c, .asm_74e60
+ ld hl, TextPointers_74e86
+ ld a, [wcf91]
+ sub $15
+ add a
+ ld d, $0
+ ld e, a
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call PrintText
+ jr .asm_74e23
+.asm_74e60
+ xor a
+ ld [wListScrollOffset], a
+ ld hl, CeruleanHouse2Text_74e81
+ call PrintText
+ jp TextScriptEnd
+
+BadgeItemList:
+ db $8,BOULDERBADGE,CASCADEBADGE,THUNDERBADGE,RAINBOWBADGE,SOULBADGE,MARSHBADGE,VOLCANOBADGE,EARTHBADGE,$FF
+
+CeruleanHouse2Text_74e77:
+ TX_FAR _CeruleanHouse2Text_74e77
+ db "@"
+
+CeruleanHouse2Text_74e7c:
+ TX_FAR _CeruleanHouse2Text_74e7c
+ db "@"
+
+CeruleanHouse2Text_74e81:
+ TX_FAR _CeruleanHouse2Text_74e81
+ db "@"
+
+TextPointers_74e86:
+ dw CeruleanHouse2Text_74e96
+ dw CeruleanHouse2Text_74e9b
+ dw CeruleanHouse2Text_74ea0
+ dw CeruleanHouse2Text_74ea5
+ dw CeruleanHouse2Text_74eaa
+ dw CeruleanHouse2Text_74eaf
+ dw CeruleanHouse2Text_74eb4
+ dw CeruleanHouse2Text_74eb9
+
+CeruleanHouse2Text_74e96:
+ TX_FAR _CeruleanHouse2Text_74e96
+ db "@"
+
+CeruleanHouse2Text_74e9b:
+ TX_FAR _CeruleanHouse2Text_74e9b
+ db "@"
+
+CeruleanHouse2Text_74ea0:
+ TX_FAR _CeruleanHouse2Text_74ea0
+ db "@"
+
+CeruleanHouse2Text_74ea5:
+ TX_FAR _CeruleanHouse2Text_74ea5
+ db "@"
+
+CeruleanHouse2Text_74eaa:
+ TX_FAR _CeruleanHouse2Text_74eaa
+ db "@"
+
+CeruleanHouse2Text_74eaf:
+ TX_FAR _CeruleanHouse2Text_74eaf
+ db "@"
+
+CeruleanHouse2Text_74eb4:
+ TX_FAR _CeruleanHouse2Text_74eb4
+ db "@"
+
+CeruleanHouse2Text_74eb9:
+ TX_FAR _CeruleanHouse2Text_74eb9
+ db "@"
diff --git a/scripts/CeruleanCave1F.asm b/scripts/CeruleanCave1F.asm
new file mode 100755
index 00000000..e2803587
--- /dev/null
+++ b/scripts/CeruleanCave1F.asm
@@ -0,0 +1,8 @@
+CeruleanCave1F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeruleanCave1F_TextPointers:
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
diff --git a/scripts/CeruleanCave2F.asm b/scripts/CeruleanCave2F.asm
new file mode 100755
index 00000000..e6a70082
--- /dev/null
+++ b/scripts/CeruleanCave2F.asm
@@ -0,0 +1,8 @@
+CeruleanCave2F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeruleanCave2F_TextPointers:
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
diff --git a/scripts/CeruleanCaveB1F.asm b/scripts/CeruleanCaveB1F.asm
new file mode 100755
index 00000000..b98ca4ba
--- /dev/null
+++ b/scripts/CeruleanCaveB1F.asm
@@ -0,0 +1,45 @@
+CeruleanCaveB1F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, MewtwoTrainerHeader
+ ld de, CeruleanCaveB1F_ScriptPointers
+ ld a, [wCeruleanCaveB1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wCeruleanCaveB1FCurScript], a
+ ret
+
+CeruleanCaveB1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+CeruleanCaveB1F_TextPointers:
+ dw MewtwoText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+MewtwoTrainerHeader:
+ dbEventFlagBit EVENT_BEAT_MEWTWO
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MEWTWO
+ dw MewtwoBattleText ; TextBeforeBattle
+ dw MewtwoBattleText ; TextAfterBattle
+ dw MewtwoBattleText ; TextEndBattle
+ dw MewtwoBattleText ; TextEndBattle
+
+ db $ff
+
+MewtwoText:
+ TX_ASM
+ ld hl, MewtwoTrainerHeader
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MewtwoBattleText:
+ TX_FAR _MewtwoBattleText
+ TX_ASM
+ ld a, MEWTWO
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
diff --git a/scripts/CeruleanCity.asm b/scripts/CeruleanCity.asm
new file mode 100755
index 00000000..c36b3dd6
--- /dev/null
+++ b/scripts/CeruleanCity.asm
@@ -0,0 +1,434 @@
+CeruleanCity_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, CeruleanCity_ScriptPointers
+ ld a, [wCeruleanCityCurScript]
+ jp CallFunctionInTable
+
+CeruleanCityScript_1948c:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wCeruleanCityCurScript], a
+ ld a, HS_CERULEAN_RIVAL
+ ld [wMissableObjectIndex], a
+ predef_jump HideObject
+
+CeruleanCity_ScriptPointers:
+ dw CeruleanCityScript0
+ dw CeruleanCityScript1
+ dw CeruleanCityScript2
+ dw CeruleanCityScript3
+ dw CeruleanCityScript4
+
+CeruleanCityScript4:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CeruleanCityScript_1948c
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+ ld [wCeruleanCityCurScript], a
+ ret
+
+CeruleanCityScript0:
+ CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ jr nz, .asm_194f7
+ ld hl, CeruleanCityCoords1
+ call ArePlayerCoordsInArray
+ jr nc, .asm_194f7
+ ld a, [wCoordIndex]
+ cp $1
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+ jr nz, .asm_194e6
+ ld a, PLAYER_DIR_DOWN
+ ld b, SPRITE_FACING_UP
+.asm_194e6
+ ld [wPlayerMovingDirection], a
+ ld a, b
+ ld [wSpriteStateData1 + 2 * $10 + $9], a
+ call Delay3
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+.asm_194f7
+ CheckEvent EVENT_BEAT_CERULEAN_RIVAL
+ ret nz
+ ld hl, CeruleanCityCoords2
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [wWalkBikeSurfState]
+ and a
+ jr z, .asm_19512
+ call StopAllMusic
+.asm_19512
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ xor a
+ ld [hJoyHeld], a
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, [wXCoord]
+ cp $14
+ jr z, .asm_19535
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, $5
+ ld [H_SPRITEDATAOFFSET], a
+ call GetPointerWithinSpriteStateData2
+ ld [hl], $19
+.asm_19535
+ ld a, HS_CERULEAN_RIVAL
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld de, CeruleanCityMovement1
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $1
+ ld [wCeruleanCityCurScript], a
+ ret
+
+CeruleanCityCoords1:
+ db $07,$1e
+ db $09,$1e
+ db $ff
+
+CeruleanCityCoords2:
+ db $06,$14
+ db $06,$15
+ db $ff
+
+CeruleanCityMovement1:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+CeruleanCityScript_1955d:
+ ld a, 1
+ ld [H_SPRITEINDEX], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ jp SetSpriteFacingDirectionAndDelay ; face object
+
+CeruleanCityScript1:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeruleanCityText_1966d
+ ld de, CeruleanCityText_19672
+ call SaveEndBattleTextPointers
+ ld a, OPP_SONY1
+ ld [wCurOpponent], a
+ ld a, 3
+ ld [wTrainerNo], a
+ xor a
+ ld [hJoyHeld], a
+ call CeruleanCityScript_1955d
+ ld a, $2
+ ld [wCeruleanCityCurScript], a
+ ret
+
+CeruleanCityScript2:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CeruleanCityScript_1948c
+ call CeruleanCityScript_1955d
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_CERULEAN_RIVAL
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld a, [wXCoord]
+ cp $14
+ jr nz, .asm_195f0
+ ld de, CeruleanCityMovement4
+ jr .asm_195f3
+.asm_195f0
+ ld de, CeruleanCityMovement3
+.asm_195f3
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $3
+ ld [wCeruleanCityCurScript], a
+ ret
+
+CeruleanCityMovement3:
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+CeruleanCityMovement4:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+CeruleanCityScript3:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_CERULEAN_RIVAL
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ xor a
+ ld [wJoyIgnore], a
+ call PlayDefaultMusic
+ ld a, $0
+ ld [wCeruleanCityCurScript], a
+ ret
+
+CeruleanCity_TextPointers:
+ dw CeruleanCityText1
+ dw CeruleanCityText2
+ dw CeruleanCityText3
+ dw CeruleanCityText4
+ dw CeruleanCityText5
+ dw CeruleanCityText6
+ dw CeruleanCityText7
+ dw CeruleanCityText8
+ dw CeruleanCityText9
+ dw CeruleanCityText10
+ dw CeruleanCityText11
+ dw CeruleanCityText12
+ dw CeruleanCityText13
+ dw MartSignText
+ dw PokeCenterSignText
+ dw CeruleanCityText16
+ dw CeruleanCityText17
+
+CeruleanCityText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_CERULEAN_RIVAL
+ ; do pre-battle text
+ jr z, .PreBattleText
+ ; or talk about bill
+ ld hl, CeruleanCityText_19677
+ call PrintText
+ jr .end
+.PreBattleText
+ ld hl, CeruleanCityText_19668
+ call PrintText
+.end
+ jp TextScriptEnd
+
+CeruleanCityText_19668:
+ TX_FAR _CeruleanCityText_19668
+ db "@"
+
+CeruleanCityText_1966d:
+ TX_FAR _CeruleanCityText_1966d
+ db "@"
+
+CeruleanCityText_19672:
+ TX_FAR _CeruleanCityText_19672
+ db "@"
+
+CeruleanCityText_19677:
+ TX_FAR _CeruleanCityText_19677
+ db "@"
+
+CeruleanCityText2:
+ TX_ASM
+ CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ jr nz, .asm_4ca20
+ ld hl, CeruleanCityText_196d9
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeruleanCityText_196ee
+ ld de, CeruleanCityText_196ee
+ call SaveEndBattleTextPointers
+ ld a, [hSpriteIndexOrTextID]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $4
+ ld [wCeruleanCityCurScript], a
+ jp TextScriptEnd
+.asm_4ca20
+ ld hl, CeruleanCityText_196f3
+ call PrintText
+ lb bc, TM_28, 1
+ call GiveItem
+ jr c, .Success
+ ld hl, TM28NoRoomText
+ call PrintText
+ jr .Done
+.Success
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, ReceivedTM28Text
+ call PrintText
+ callba CeruleanHideRocket
+.Done
+ jp TextScriptEnd
+
+CeruleanCityText_196d9:
+ TX_FAR _CeruleanCityText_196d9
+ db "@"
+
+ReceivedTM28Text:
+ TX_FAR _ReceivedTM28Text
+ TX_SFX_ITEM_1
+ TX_FAR _ReceivedTM28Text2
+ TX_WAIT
+ db "@"
+
+TM28NoRoomText:
+ TX_FAR _TM28NoRoomText
+ db "@"
+
+CeruleanCityText_196ee:
+ TX_FAR _CeruleanCityText_196ee
+ db "@"
+
+CeruleanCityText_196f3:
+ TX_FAR _CeruleanCityText_196f3
+ db "@"
+
+CeruleanCityText3:
+ TX_FAR _CeruleanCityText3
+ db "@"
+
+CeruleanCityText4:
+ TX_FAR _CeruleanCityText4
+ db "@"
+
+CeruleanCityText5:
+ TX_FAR _CeruleanCityText5
+ db "@"
+
+CeruleanCityText11:
+CeruleanCityText6:
+ TX_FAR _CeruleanCityText6
+ db "@"
+
+CeruleanCityText7:
+ TX_ASM
+ ld a, [hRandomAdd]
+ cp 180
+ jr c, .asm_e9fc9
+ ld hl, CeruleanCityText_19730
+ call PrintText
+ jr .asm_d486e
+.asm_e9fc9
+ cp 100
+ jr c, .asm_df99b
+ ld hl, CeruleanCityText_19735
+ call PrintText
+ jr .asm_d486e
+.asm_df99b
+ ld hl, CeruleanCityText_1973a
+ call PrintText
+.asm_d486e
+ jp TextScriptEnd
+
+CeruleanCityText_19730:
+ TX_FAR _CeruleanCityText_19730
+ db "@"
+
+CeruleanCityText_19735:
+ TX_FAR _CeruleanCityText_19735
+ db "@"
+
+CeruleanCityText_1973a:
+ TX_FAR _CeruleanCityText_1973a
+ db "@"
+
+CeruleanCityText8:
+ TX_ASM
+ ld a, [hRandomAdd]
+ cp 180
+ jr c, .asm_e28da
+ ld hl, CeruleanCityText_1976f
+ call PrintText
+ jr .asm_f2f38
+.asm_e28da
+ cp 120
+ jr c, .asm_15d08
+ ld hl, CeruleanCityText_19774
+ call PrintText
+ jr .asm_f2f38
+.asm_15d08
+ cp 60
+ jr c, .asm_d7fea
+ ld hl, CeruleanCityText_19779
+ call PrintText
+ jr .asm_f2f38
+.asm_d7fea
+ ld hl, CeruleanCityText_1977e
+ call PrintText
+.asm_f2f38
+ jp TextScriptEnd
+
+CeruleanCityText_1976f:
+ TX_FAR _CeruleanCityText_1976f
+ db "@"
+
+CeruleanCityText_19774:
+ TX_FAR _CeruleanCityText_19774
+ db "@"
+
+CeruleanCityText_19779:
+ TX_FAR _CeruleanCityText_19779
+ db "@"
+
+CeruleanCityText_1977e:
+ TX_FAR _CeruleanCityText_1977e
+ db "@"
+
+CeruleanCityText9:
+ TX_FAR _CeruleanCityText9
+ db "@"
+
+CeruleanCityText10:
+ TX_FAR _CeruleanCityText10
+ db "@"
+
+CeruleanCityText12:
+ TX_FAR _CeruleanCityText12
+ db "@"
+
+CeruleanCityText13:
+ TX_FAR _CeruleanCityText13
+ db "@"
+
+CeruleanCityText16:
+ TX_FAR _CeruleanCityText16
+ db "@"
+
+CeruleanCityText17:
+ TX_FAR _CeruleanCityText17
+ db "@"
diff --git a/scripts/ceruleancity2.asm b/scripts/CeruleanCity_2.asm
index 53ace5c8..53ace5c8 100755
--- a/scripts/ceruleancity2.asm
+++ b/scripts/CeruleanCity_2.asm
diff --git a/scripts/CeruleanGym.asm b/scripts/CeruleanGym.asm
new file mode 100755
index 00000000..d1dd66e4
--- /dev/null
+++ b/scripts/CeruleanGym.asm
@@ -0,0 +1,217 @@
+CeruleanGym_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, CeruleanGymScript_5c6d0
+ call EnableAutoTextBoxDrawing
+ ld hl, CeruleanGymTrainerHeader0
+ ld de, CeruleanGym_ScriptPointers
+ ld a, [wCeruleanGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wCeruleanGymCurScript], a
+ ret
+
+CeruleanGymScript_5c6d0:
+ ld hl, Gym2CityName
+ ld de, Gym2LeaderName
+ jp LoadGymLeaderAndCityName
+
+Gym2CityName:
+ db "CERULEAN CITY@"
+
+Gym2LeaderName:
+ db "MISTY@"
+
+CeruleanGymScript_5c6ed:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wCeruleanGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+CeruleanGym_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw CeruleanGymScript3
+
+CeruleanGymScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CeruleanGymScript_5c6ed
+ ld a, $f0
+ ld [wJoyIgnore], a
+
+CeruleanGymScript_5c70d:
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_MISTY
+ lb bc, TM_11, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM11
+ jr .gymVictory
+.BagFull
+ ld a, $7
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 1, [hl]
+ ld hl, wBeatGymFlags
+ set 1, [hl]
+
+ ; deactivate gym trainers
+ SetEvents EVENT_BEAT_CERULEAN_GYM_TRAINER_0, EVENT_BEAT_CERULEAN_GYM_TRAINER_1
+
+ jp CeruleanGymScript_5c6ed
+
+CeruleanGym_TextPointers:
+ dw CeruleanGymText1
+ dw CeruleanGymText2
+ dw CeruleanGymText3
+ dw CeruleanGymText4
+ dw CeruleanGymText5
+ dw CeruleanGymText6
+ dw CeruleanGymText7
+
+CeruleanGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_CERULEAN_GYM_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CERULEAN_GYM_TRAINER_0
+ dw CeruleanGymBattleText1 ; TextBeforeBattle
+ dw CeruleanGymAfterBattleText1 ; TextAfterBattle
+ dw CeruleanGymEndBattleText1 ; TextEndBattle
+ dw CeruleanGymEndBattleText1 ; TextEndBattle
+
+CeruleanGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_CERULEAN_GYM_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_CERULEAN_GYM_TRAINER_1
+ dw CeruleanGymBattleText2 ; TextBeforeBattle
+ dw CeruleanGymAfterBattleText2 ; TextAfterBattle
+ dw CeruleanGymEndBattleText2 ; TextEndBattle
+ dw CeruleanGymEndBattleText2 ; TextEndBattle
+
+ db $ff
+
+CeruleanGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_MISTY
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM11
+ jr nz, .afterVictory
+ call z, CeruleanGymScript_5c70d
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.afterVictory
+ ld hl, CeruleanGymText_5c7c3
+ call PrintText
+ jr .done
+.beginBattle
+ ld hl, CeruleanGymText_5c7be
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeruleanGymText_5c7d8
+ ld de, CeruleanGymText_5c7d8
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $2
+ ld [wGymLeaderNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3
+ ld [wCeruleanGymCurScript], a
+.done
+ jp TextScriptEnd
+
+CeruleanGymText_5c7be:
+ TX_FAR _CeruleanGymText_5c7be
+ db "@"
+
+CeruleanGymText_5c7c3:
+ TX_FAR _CeruleanGymText_5c7c3
+ db "@"
+
+CeruleanGymText5:
+ TX_FAR _CeruleanGymText_5c7c8
+ db "@"
+
+CeruleanGymText6:
+ TX_FAR _ReceivedTM11Text
+ TX_SFX_ITEM_1
+ db "@"
+
+CeruleanGymText7:
+ TX_FAR _CeruleanGymText_5c7d3
+ db "@"
+
+CeruleanGymText_5c7d8:
+ TX_FAR _CeruleanGymText_5c7d8
+ db "@"
+
+CeruleanGymText2:
+ TX_ASM
+ ld hl, CeruleanGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeruleanGymBattleText1:
+ TX_FAR _CeruleanGymBattleText1
+ db "@"
+
+CeruleanGymEndBattleText1:
+ TX_FAR _CeruleanGymEndBattleText1
+ db "@"
+
+CeruleanGymAfterBattleText1:
+ TX_FAR _CeruleanGymAfterBattleText1
+ db "@"
+
+CeruleanGymText3:
+ TX_ASM
+ ld hl, CeruleanGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+CeruleanGymBattleText2:
+ TX_FAR _CeruleanGymBattleText2
+ db "@"
+
+CeruleanGymEndBattleText2:
+ TX_FAR _CeruleanGymEndBattleText2
+ db "@"
+
+CeruleanGymAfterBattleText2:
+ TX_FAR _CeruleanGymAfterBattleText2
+ db "@"
+
+CeruleanGymText4:
+ TX_ASM
+ CheckEvent EVENT_BEAT_MISTY
+ jr nz, .asm_5c821
+ ld hl, CeruleanGymText_5c82a
+ call PrintText
+ jr .asm_5c827
+.asm_5c821
+ ld hl, CeruleanGymText_5c82f
+ call PrintText
+.asm_5c827
+ jp TextScriptEnd
+
+CeruleanGymText_5c82a:
+ TX_FAR _CeruleanGymText_5c82a
+ db "@"
+
+CeruleanGymText_5c82f:
+ TX_FAR _CeruleanGymText_5c82f
+ db "@"
diff --git a/scripts/CeruleanMart.asm b/scripts/CeruleanMart.asm
new file mode 100755
index 00000000..f812aadd
--- /dev/null
+++ b/scripts/CeruleanMart.asm
@@ -0,0 +1,15 @@
+CeruleanMart_Script:
+ jp EnableAutoTextBoxDrawing
+
+CeruleanMart_TextPointers:
+ dw CeruleanCashierText
+ dw CeruleanMartText2
+ dw CeruleanMartText3
+
+CeruleanMartText2:
+ TX_FAR _CeruleanMartText2
+ db "@"
+
+CeruleanMartText3:
+ TX_FAR _CeruleanMartText3
+ db "@"
diff --git a/scripts/CeruleanPokecenter.asm b/scripts/CeruleanPokecenter.asm
new file mode 100755
index 00000000..de4fd57d
--- /dev/null
+++ b/scripts/CeruleanPokecenter.asm
@@ -0,0 +1,29 @@
+CeruleanPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+CeruleanPokecenter_TextPointers:
+ dw CeruleanHealNurseText
+ dw CeruleanPokecenterText2
+ dw CeruleanPokecenterText3
+ dw CeruleanTradeNurseText
+ dw CeruleanPokecenterText5
+
+CeruleanTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+CeruleanHealNurseText:
+ TX_POKECENTER_NURSE
+
+CeruleanPokecenterText2:
+ TX_FAR _CeruleanPokecenterText2
+ db "@"
+
+CeruleanPokecenterText3:
+ TX_FAR _CeruleanPokecenterText3
+ db "@"
+
+CeruleanPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/CeruleanTradeHouse.asm b/scripts/CeruleanTradeHouse.asm
new file mode 100755
index 00000000..8b5d4495
--- /dev/null
+++ b/scripts/CeruleanTradeHouse.asm
@@ -0,0 +1,106 @@
+CeruleanTradeHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeruleanTradeHouse_TextPointers:
+ dw CeruleanHouse1Text1
+ dw CeruleanHouse1Text2
+ dw CeruleanHouse1Text3
+ dw CeruleanHouse1Text4
+
+CeruleanHouse1Text1:
+ TX_ASM
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ CheckEvent EVENT_GOT_BULBASAUR_IN_CERULEAN
+ jr nz, .asm_1cfbf
+ ld hl, CeruleanHouse1Text_1cfc8
+ call PrintText
+ ld a, [wPikachuHappiness]
+ cp 147
+ jr c, .asm_1cfb3
+ ld hl, CeruleanHouse1Text_1cfce
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_1cfb6
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, BULBASAUR
+ ld [wd11e], a
+ ld [wcf91], a
+ call GetMonName
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ lb bc, BULBASAUR, 10
+ call GivePokemon
+ jr nc, .asm_1cfb3
+ ld a, [wAddedToParty]
+ and a
+ call z, WaitForTextScrollButtonPress
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, CeruleanHouse1Text_1cfd3
+ call PrintText
+ ld a, HS_CERULEAN_BULBASAUR
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ SetEvent EVENT_GOT_BULBASAUR_IN_CERULEAN
+.asm_1cfb3
+ jp TextScriptEnd
+
+.asm_1cfb6
+ ld hl, CeruleanHouse1Text_1cfdf
+ call PrintText
+ jp TextScriptEnd
+
+.asm_1cfbf
+ ld hl, CeruleanHouse1Text_1cfd9
+ call PrintText
+ jp TextScriptEnd
+
+CeruleanHouse1Text_1cfc8:
+ TX_FAR MelanieText1
+ TX_WAIT
+ db "@"
+
+CeruleanHouse1Text_1cfce:
+ TX_FAR MelanieText2
+ db "@"
+
+CeruleanHouse1Text_1cfd3:
+ TX_FAR MelanieText3
+ TX_WAIT
+ db "@"
+
+CeruleanHouse1Text_1cfd9:
+ TX_FAR MelanieText4
+ TX_WAIT
+ db "@"
+
+CeruleanHouse1Text_1cfdf:
+ TX_FAR MelanieText5
+ TX_WAIT
+ db "@"
+
+CeruleanHouse1Text2:
+ TX_FAR MelanieBulbasaurText
+ TX_ASM
+ ld a, BULBASAUR
+ call PlayCry
+ jp TextScriptEnd
+
+CeruleanHouse1Text3:
+ TX_FAR MelanieOddishText
+ TX_ASM
+ ld a, ODDISH
+ call PlayCry
+ jp TextScriptEnd
+
+CeruleanHouse1Text4:
+ TX_FAR MelanieSandshrewText
+ TX_ASM
+ ld a, SANDSHREW
+ call PlayCry
+ jp TextScriptEnd
diff --git a/scripts/CeruleanTrashedHouse.asm b/scripts/CeruleanTrashedHouse.asm
new file mode 100755
index 00000000..f249ef01
--- /dev/null
+++ b/scripts/CeruleanTrashedHouse.asm
@@ -0,0 +1,39 @@
+CeruleanTrashedHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CeruleanTrashedHouse_TextPointers:
+ dw CeruleanHouseTrashedText1
+ dw CeruleanHouseTrashedText2
+ dw CeruleanHouseTrashedText3
+
+CeruleanHouseTrashedText1:
+ TX_ASM
+ ld b, $e4
+ predef GetQuantityOfItemInBag
+ and b
+ jr z, .asm_f8734
+ ld hl, CeruleanHouseTrashedText_1d6b0
+ call PrintText
+ jr .asm_8dfe9
+.asm_f8734
+ ld hl, CeruleanHouseTrashedText_1d6ab
+ call PrintText
+.asm_8dfe9
+ jp TextScriptEnd
+
+CeruleanHouseTrashedText_1d6ab:
+ TX_FAR _CeruleanTrashedText_1d6ab
+ db "@"
+
+CeruleanHouseTrashedText_1d6b0:
+ TX_FAR _CeruleanTrashedText_1d6b0
+ db "@"
+
+CeruleanHouseTrashedText2:
+ TX_FAR _CeruleanHouseTrashedText2
+ db "@"
+
+CeruleanHouseTrashedText3:
+ TX_FAR _CeruleanHouseTrashedText3
+ db "@"
diff --git a/scripts/ChampionsRoom.asm b/scripts/ChampionsRoom.asm
new file mode 100755
index 00000000..b8ce710b
--- /dev/null
+++ b/scripts/ChampionsRoom.asm
@@ -0,0 +1,288 @@
+ChampionsRoom_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, ChampionsRoom_ScriptPointers
+ ld a, [wChampionsRoomCurScript]
+ call CallFunctionInTable
+ ret
+
+ResetGaryScript:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wChampionsRoomCurScript], a
+ ret
+
+ChampionsRoom_ScriptPointers:
+ dw GaryScript0
+ dw GaryScript1
+ dw GaryScript2
+ dw GaryScript3
+ dw GaryScript4
+ dw GaryScript5
+ dw GaryScript6
+ dw GaryScript7
+ dw GaryScript8
+ dw GaryScript9
+ dw GaryScript10
+
+GaryScript0:
+ ret
+
+GaryScript1:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, GaryEntrance_RLEMovement
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $2
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryEntrance_RLEMovement:
+ db D_UP, 1
+ db D_RIGHT, 1
+ db D_UP, 3
+ db $ff
+
+GaryScript2:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wOptions
+ res 7, [hl] ; Turn on battle animations to make the battle feel more epic.
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, GaryDefeatedText
+ ld de, GaryVictoryText
+ call SaveEndBattleTextPointers
+ ld a, OPP_SONY3
+ ld [wCurOpponent], a
+
+ ; select which team to use during the encounter
+ ld a, [wRivalStarter]
+ add $0 ; Wow GameFreak
+ ld [wTrainerNo], a
+
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, ResetGaryScript
+ call UpdateSprites
+ SetEvent EVENT_BEAT_CHAMPION_RIVAL
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call GaryScript_760c8
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld a, $4
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryScript4:
+ callba Music_Cities1AlternateTempo
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call GaryScript_760c8
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld de, OakEntranceAfterVictoryMovement
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, HS_CHAMPIONS_ROOM_OAK
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, $5
+ ld [wChampionsRoomCurScript], a
+ ret
+
+OakEntranceAfterVictoryMovement:
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
+
+GaryScript5:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call GaryScript_760c8
+ ld a, $6
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryScript6:
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call GaryScript_760c8
+ ld a, $7
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryScript7:
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call GaryScript_760c8
+ ld de, OakExitGaryRoomMovement
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $8
+ ld [wChampionsRoomCurScript], a
+ ret
+
+OakExitGaryRoomMovement:
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
+
+GaryScript8:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_CHAMPIONS_ROOM_OAK
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, $9
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryScript9:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, WalkToHallOfFame_RLEMovment
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $a
+ ld [wChampionsRoomCurScript], a
+ ret
+
+WalkToHallOfFame_RLEMovment:
+ db D_UP, 4
+ db D_LEFT, 1
+ db $ff
+
+GaryScript10:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wChampionsRoomCurScript], a
+ ret
+
+GaryScript_760c8:
+ ld a, $f0
+ ld [wJoyIgnore], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ret
+
+ChampionsRoom_TextPointers:
+ dw GaryText1
+ dw GaryText2
+ dw GaryText3
+ dw GaryText4
+ dw GaryText5
+
+GaryText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_CHAMPION_RIVAL
+ ld hl, GaryChampionIntroText
+ jr z, .printText
+ ld hl, GaryText_76103
+.printText
+ call PrintText
+ jp TextScriptEnd
+
+GaryChampionIntroText:
+ TX_FAR _GaryChampionIntroText
+ db "@"
+
+GaryDefeatedText:
+ TX_FAR _GaryDefeatedText
+ db "@"
+
+GaryVictoryText:
+ TX_FAR _GaryVictoryText
+ db "@"
+
+GaryText_76103:
+ TX_FAR _GaryText_76103
+ db "@"
+
+GaryText2:
+ TX_FAR _GaryText2
+ db "@"
+
+GaryText3:
+ TX_ASM
+ ld a, [wPlayerStarter]
+ ld [wd11e], a
+ call GetMonName
+ ld hl, GaryText_76120
+ call PrintText
+ jp TextScriptEnd
+
+GaryText_76120:
+ TX_FAR _GaryText_76120
+ db "@"
+
+GaryText4:
+ TX_FAR _GaryText_76125
+ db "@"
+
+GaryText5:
+ TX_FAR _GaryText_7612a
+ db "@"
diff --git a/scripts/CinnabarGym.asm b/scripts/CinnabarGym.asm
new file mode 100755
index 00000000..2dc07e58
--- /dev/null
+++ b/scripts/CinnabarGym.asm
@@ -0,0 +1,566 @@
+CinnabarGym_Script:
+ call CinnabarGymScript_75759
+ call EnableAutoTextBoxDrawing
+ ld hl, CinnabarGym_ScriptPointers
+ ld a, [wCinnabarGymCurScript]
+ jp CallFunctionInTable
+
+CinnabarGymScript_75759:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ push hl
+ call nz, CinnabarGymScript_75772
+ pop hl
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, UpdateCinnabarGymGateTileBlocks
+ ResetEvent EVENT_2A7
+ ret
+CinnabarGymScript_75772:
+ ld hl, Gym7CityName
+ ld de, Gym7LeaderName
+ jp LoadGymLeaderAndCityName
+
+Gym7CityName:
+ db "CINNABAR ISLAND@"
+Gym7LeaderName:
+ db "BLAINE@"
+
+CinnabarGymScript_75792:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wCinnabarGymCurScript], a
+ ld [wCurMapScript], a
+ ld [wOpponentAfterWrongAnswer], a
+ ret
+
+CinnabarGymScript_74f48:
+ ld a, [hSpriteIndexOrTextID]
+ ld [wTrainerHeaderFlagBit], a
+ ret
+
+CinnabarGymFlagAction:
+ predef_jump FlagActionPredef
+
+CinnabarGym_ScriptPointers:
+ dw CinnabarGymScript0
+ dw CinnabarGymScript1
+ dw CinnabarGymScript2
+ dw CinnabarGymScript3
+
+CinnabarGymScript0:
+ ld a, [wOpponentAfterWrongAnswer]
+ and a
+ ret z
+ ld [H_SPRITEINDEX], a
+ cp $4
+ jr nz, .asm_757c3
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld hl, PikachuMovementData_74f97
+ ld b, SPRITE_FACING_DOWN
+ call CinnabarGymScript_74fa3
+ ld de, MovementData_757d7
+ jr .asm_757cb
+.asm_757c3
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
+ ld hl, PikachuMovementData_74f9e
+ ld b, SPRITE_FACING_RIGHT
+ call CinnabarGymScript_74fa3
+ ld de, MovementData_757da
+.asm_757cb
+ call MoveSprite
+ ld a, $1
+ ld [wCinnabarGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+MovementData_757d7:
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_UP
+ db $FF
+
+PikachuMovementData_74f97:
+ db $00
+ db $20
+ db $1e
+ db $35
+ db $3f
+
+MovementData_757da:
+ db NPC_MOVEMENT_LEFT
+ db $FF
+
+PikachuMovementData_74f9e:
+ db $00
+ db $1d
+ db $1f
+ db $38
+ db $3f
+
+CinnabarGymScript_74fa3:
+ ld a, [wd472]
+ bit 7, a
+ ret z
+ push hl
+ push bc
+ callab GetPikachuFacingDirectionAndReturnToE
+ pop bc
+ pop hl
+ ld a, b
+ cp e
+ ret nz
+ call ApplyPikachuMovementData
+ ret
+
+CinnabarGymScript1:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, [wOpponentAfterWrongAnswer]
+ ld [wTrainerHeaderFlagBit], a
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+CinnabarGymScript2:
+ call CinnabarGymScript_753e9
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CinnabarGymScript_75792
+ ld a, [wTrainerHeaderFlagBit]
+ sub 2
+ ld c, a
+ ld b, FLAG_TEST
+ EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED
+ call CinnabarGymFlagAction
+ ld a, c
+ and a
+ jr nz, .asm_7500d
+ ld a, [wTrainerHeaderFlagBit]
+ cp 2
+ jr z, .asm_7500d
+ ld c, 30
+ call DelayFrames
+ call CinnabarGymScript_75023
+ call CinnabarGymScript_75041
+ call WaitForSoundToFinish
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ call WaitForSoundToFinish
+ jr .asm_75013
+.asm_7500d
+ call CinnabarGymScript_75023
+ call CinnabarGymScript_75041
+.asm_75013
+ xor a
+ ld [wJoyIgnore], a
+ ld [wOpponentAfterWrongAnswer], a
+ ld a, $0
+ ld [wCinnabarGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+CinnabarGymScript_75023:
+ ld a, [wTrainerHeaderFlagBit]
+ ld [$ffdb], a
+ ld c, a
+ ld b, FLAG_SET
+ EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0
+ call CinnabarGymFlagAction
+ ret
+
+CinnabarGymScript_75032:
+ ld a, [wTrainerHeaderFlagBit]
+ ld [$ffdb], a
+ ld c, a
+ ld b, FLAG_TEST
+ EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0
+ call CinnabarGymFlagAction
+ ret
+
+CinnabarGymScript_75041:
+ ld a, [wTrainerHeaderFlagBit]
+ sub 2
+ ld c, a
+ ld b, FLAG_SET
+ EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED
+ call CinnabarGymFlagAction
+ call UpdateCinnabarGymGateTileBlocks
+ ret
+
+CinnabarGymScript3:
+ call CinnabarGymScript_753e9
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CinnabarGymScript_75792
+ ld a, $f0
+ ld [wJoyIgnore], a
+CinnabarGymScript3_75857:
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_BLAINE
+ lb bc, TM_38, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM38
+ jr .gymVictory
+.BagFull
+ ld a, $c
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 6, [hl]
+ ld hl, wBeatGymFlags
+ set 6, [hl]
+
+ ; deactivate gym trainers
+ SetEventRange EVENT_BEAT_CINNABAR_GYM_TRAINER_0, EVENT_BEAT_CINNABAR_GYM_TRAINER_6
+
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+
+ jp CinnabarGymScript_75792
+
+CinnabarGym_TextPointers:
+ dw CinnabarGymText1
+ dw CinnabarGymText2
+ dw CinnabarGymText3
+ dw CinnabarGymText4
+ dw CinnabarGymText5
+ dw CinnabarGymText6
+ dw CinnabarGymText7
+ dw CinnabarGymText8
+ dw CinnabarGymText9
+ dw BlaineBadgeText
+ dw ReceivedTM38Text
+ dw TM38NoRoomText
+
+CinnabarGymScript_750c3:
+ ld a, [hSpriteIndexOrTextID]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld a, [wSpriteIndex]
+ cp $1
+ jr z, .asm_758d4
+ ld a, $2
+ jr .asm_758d6
+.asm_758d4
+ ld a, $3
+.asm_758d6
+ ld [wCinnabarGymCurScript], a
+ ld [wCurMapScript], a
+ jp TextScriptEnd
+
+CinnabarGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_BLAINE
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM38
+ jr nz, .afterVictory
+ call z, CinnabarGymScript3_75857
+ call DisableWaitingAfterTextDisplay
+ jp TextScriptEnd
+.afterVictory
+ ld hl, BlaineFireBlastText
+ call PrintText
+ jp TextScriptEnd
+.beginBattle
+ ld hl, BlaineBattleText
+ call PrintText
+ ld hl, BlaineEndBattleText
+ ld de, BlaineEndBattleText
+ call SaveEndBattleTextPointers
+ ld a, $7
+ ld [wGymLeaderNo], a
+ jp CinnabarGymScript_750c3
+
+BlaineBattleText:
+ TX_FAR _BlaineBattleText
+ db "@"
+
+BlaineEndBattleText:
+ TX_FAR _BlaineEndBattleText
+ TX_SFX_KEY_ITEM ; actually plays the second channel of SFX_BALL_POOF due to the wrong music bank being loaded
+ TX_WAIT
+ db "@"
+
+BlaineFireBlastText:
+ TX_FAR _BlaineFireBlastText
+ db "@"
+
+BlaineBadgeText:
+ TX_FAR _BlaineBadgeText
+ db "@"
+
+ReceivedTM38Text:
+ TX_FAR _ReceivedTM38Text
+ TX_SFX_ITEM_1
+ TX_FAR _TM38ExplanationText
+ db "@"
+
+TM38NoRoomText:
+ TX_FAR _TM38NoRoomText
+ db "@"
+
+CinnabarGymText2:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_0
+ jr nz, .asm_46bb4
+ ld hl, CinnabarGymText_7595f
+ call PrintText
+ ld hl, CinnabarGymText_75964
+ ld de, CinnabarGymText_75964
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+.asm_46bb4
+ ld hl, CinnabarGymText_75969
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_7595f:
+ TX_FAR _CinnabarGymText_7595f
+ db "@"
+
+CinnabarGymText_75964:
+ TX_FAR _CinnabarGymText_75964
+ db "@"
+
+CinnabarGymText_75969:
+ TX_FAR _CinnabarGymText_75969
+ db "@"
+
+CinnabarGymText3:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_1
+ jr nz, .asm_751a8
+ call CinnabarGymScript_753f3
+ jr nz, .asm_75196
+ CheckEvent EVENT_CINNABAR_GYM_GATE1_UNLOCKED
+ jr nz, .asm_75196
+ ld e, $00
+ jp CinnabarGymScript_753de
+
+.asm_75196
+ ld hl, CinnabarGymText_75994
+ call PrintText
+ ld hl, CinnabarGymText_75999
+ ld de, CinnabarGymText_75999
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+
+.asm_751a8
+ ld hl, CinnabarGymText_7599e
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75994:
+ TX_FAR _CinnabarGymText_75994
+ db "@"
+
+CinnabarGymText_75999:
+ TX_FAR _CinnabarGymText_75999
+ db "@"
+
+CinnabarGymText_7599e:
+ TX_FAR _CinnabarGymText_7599e
+ db "@"
+
+CinnabarGymText4:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_2
+ jr nz, .asm_751ee
+ call CinnabarGymScript_753f3
+ jr nz, .asm_751dc
+ CheckEvent EVENT_CINNABAR_GYM_GATE2_UNLOCKED
+ jr nz, .asm_751dc
+ ld e, $1
+ jp CinnabarGymScript_753de
+
+.asm_751dc
+ ld hl, CinnabarGymText_759c9
+ call PrintText
+ ld hl, CinnabarGymText_759ce
+ ld de, CinnabarGymText_759ce
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+.asm_751ee
+ ld hl, CinnabarGymText_759d3
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_759c9:
+ TX_FAR _CinnabarGymText_759c9
+ db "@"
+
+CinnabarGymText_759ce:
+ TX_FAR _CinnabarGymText_759ce
+ db "@"
+
+CinnabarGymText_759d3:
+ TX_FAR _CinnabarGymText_759d3
+ db "@"
+
+CinnabarGymText5:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_3
+ jr nz, .asm_75234
+ call CinnabarGymScript_753f3
+ jr nz, .asm_75222
+ CheckEvent EVENT_CINNABAR_GYM_GATE3_UNLOCKED
+ jr nz, .asm_75222
+ ld e, $2
+ jp CinnabarGymScript_753de
+
+.asm_75222
+ ld hl, CinnabarGymText_759fe
+ call PrintText
+ ld hl, CinnabarGymText_75a03
+ ld de, CinnabarGymText_75a03
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+.asm_75234
+ ld hl, CinnabarGymText_75a08
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_759fe:
+ TX_FAR _CinnabarGymText_759fe
+ db "@"
+
+CinnabarGymText_75a03:
+ TX_FAR _CinnabarGymText_75a03
+ db "@"
+
+CinnabarGymText_75a08:
+ TX_FAR _CinnabarGymText_75a08
+ db "@"
+
+CinnabarGymText6:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_4
+ jr nz, .asm_776b4
+ call CinnabarGymScript_753f3
+ jr nz, .asm_75222
+ CheckEvent EVENT_CINNABAR_GYM_GATE4_UNLOCKED
+ jr nz, .asm_75222
+ ld e, $3
+ jp CinnabarGymScript_753de
+
+.asm_75222
+ ld hl, CinnabarGymText_75a33
+ call PrintText
+ ld hl, CinnabarGymText_75a38
+ ld de, CinnabarGymText_75a38
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+.asm_776b4
+ ld hl, CinnabarGymText_75a3d
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75a33:
+ TX_FAR _CinnabarGymText_75a33
+ db "@"
+
+CinnabarGymText_75a38:
+ TX_FAR _CinnabarGymText_75a38
+ db "@"
+
+CinnabarGymText_75a3d:
+ TX_FAR _CinnabarGymText_75a3d
+ db "@"
+
+CinnabarGymText7:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_5
+ jr nz, .asm_2f755
+ call CinnabarGymScript_753f3
+ jr nz, .asm_75222
+ CheckEvent EVENT_CINNABAR_GYM_GATE5_UNLOCKED
+ jr nz, .asm_75222
+ ld e, $4
+ jp CinnabarGymScript_753de
+
+.asm_75222
+ ld hl, CinnabarGymText_75a68
+ call PrintText
+ ld hl, CinnabarGymText_75a6d
+ ld de, CinnabarGymText_75a6d
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+.asm_2f755
+ ld hl, CinnabarGymText_75a72
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75a68:
+ TX_FAR _CinnabarGymText_75a68
+ db "@"
+
+CinnabarGymText_75a6d:
+ TX_FAR _CinnabarGymText_75a6d
+ db "@"
+
+CinnabarGymText_75a72:
+ TX_FAR _CinnabarGymText_75a72
+ db "@"
+
+CinnabarGymText8:
+ TX_ASM
+ call CinnabarGymScript_74f48
+ CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_6
+ jr nz, .asm_d87be
+ call CinnabarGymScript_753f3
+ jr nz, .asm_75222
+ CheckEvent EVENT_CINNABAR_GYM_GATE6_UNLOCKED
+ jr nz, .asm_75222
+ ld e, $5
+ jp CinnabarGymScript_753de
+
+.asm_75222
+ ld hl, CinnabarGymText_75a9d
+ call PrintText
+ ld hl, CinnabarGymText_75aa2
+ ld de, CinnabarGymText_75aa2
+ call SaveEndBattleTextPointers
+ jp CinnabarGymScript_750c3
+.asm_d87be
+ ld hl, CinnabarGymText_75aa7
+ call PrintText
+ jp TextScriptEnd
+
+CinnabarGymText_75a9d:
+ TX_FAR _CinnabarGymText_75a9d
+ db "@"
+
+CinnabarGymText_75aa2:
+ TX_FAR _CinnabarGymText_75aa2
+ db "@"
+
+CinnabarGymText_75aa7:
+ TX_FAR _CinnabarGymText_75aa7
+ db "@"
+
+CinnabarGymText9:
+ TX_ASM
+ callab Func_f2133
+ jp TextScriptEnd
diff --git a/scripts/cinnabargym3.asm b/scripts/CinnabarGym3.asm
index 9e8cad74..9e8cad74 100755
--- a/scripts/cinnabargym3.asm
+++ b/scripts/CinnabarGym3.asm
diff --git a/scripts/cinnabargym2.asm b/scripts/CinnabarGym_2.asm
index 00118fb5..00118fb5 100755
--- a/scripts/cinnabargym2.asm
+++ b/scripts/CinnabarGym_2.asm
diff --git a/scripts/CinnabarIsland.asm b/scripts/CinnabarIsland.asm
new file mode 100755
index 00000000..5716428c
--- /dev/null
+++ b/scripts/CinnabarIsland.asm
@@ -0,0 +1,85 @@
+CinnabarIsland_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ ResetEvent EVENT_MANSION_SWITCH_ON
+ ResetEvent EVENT_LAB_STILL_REVIVING_FOSSIL
+ ld hl, CinnabarIsland_ScriptPointers
+ ld a, [wCinnabarIslandCurScript]
+ jp CallFunctionInTable
+
+CinnabarIsland_ScriptPointers:
+ dw CinnabarIslandScript0
+ dw CinnabarIslandScript1
+
+CinnabarIslandScript0:
+ ld b, SECRET_KEY
+ call IsItemInBag
+ ret nz
+ ld a, [wYCoord]
+ cp $4
+ ret nz
+ ld a, [wXCoord]
+ cp $12
+ ret nz
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [hJoyHeld], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ xor a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wCinnabarIslandCurScript], a
+ ret
+
+CinnabarIslandScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $0
+ ld [wCinnabarIslandCurScript], a
+ ret
+
+CinnabarIsland_TextPointers:
+ dw CinnabarIslandText1
+ dw CinnabarIslandText2
+ dw CinnabarIslandText3
+ dw MartSignText
+ dw PokeCenterSignText
+ dw CinnabarIslandText6
+ dw CinnabarIslandText7
+ dw CinnabarIslandText8
+
+CinnabarIslandText8:
+ TX_FAR _CinnabarIslandText8
+ db "@"
+
+CinnabarIslandText1:
+ TX_FAR _CinnabarIslandText1
+ db "@"
+
+CinnabarIslandText2:
+ TX_FAR _CinnabarIslandText2
+ db "@"
+
+CinnabarIslandText3:
+ TX_FAR _CinnabarIslandText3
+ db "@"
+
+CinnabarIslandText6:
+ TX_FAR _CinnabarIslandText6
+ db "@"
+
+CinnabarIslandText7:
+ TX_FAR _CinnabarIslandText7
+ db "@"
diff --git a/scripts/CinnabarLab.asm b/scripts/CinnabarLab.asm
new file mode 100755
index 00000000..aab3324b
--- /dev/null
+++ b/scripts/CinnabarLab.asm
@@ -0,0 +1,30 @@
+CinnabarLab_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+CinnabarLab_TextPointers:
+ dw Lab1Text1
+ dw Lab1Text2
+ dw Lab1Text3
+ dw Lab1Text4
+ dw Lab1Text5
+
+Lab1Text1:
+ TX_FAR _Lab1Text1
+ db "@"
+
+Lab1Text2:
+ TX_FAR _Lab1Text2
+ db "@"
+
+Lab1Text3:
+ TX_FAR _Lab1Text3
+ db "@"
+
+Lab1Text4:
+ TX_FAR _Lab1Text4
+ db "@"
+
+Lab1Text5:
+ TX_FAR _Lab1Text5
+ db "@"
diff --git a/scripts/CinnabarLabFossilRoom.asm b/scripts/CinnabarLabFossilRoom.asm
new file mode 100755
index 00000000..f5f03a19
--- /dev/null
+++ b/scripts/CinnabarLabFossilRoom.asm
@@ -0,0 +1,109 @@
+CinnabarLabFossilRoom_Script:
+ jp EnableAutoTextBoxDrawing
+
+CinnabarLabFossilRoom_TextPointers:
+ dw Lab4Text1
+ dw Lab4Text2
+
+Lab4Script_GetFossilsInBag:
+; construct a list of all fossils in the player's bag
+ xor a
+ ld [wFilteredBagItemsCount], a
+ ld de, wFilteredBagItems
+ ld hl, FossilsList
+.loop
+ ld a, [hli]
+ and a
+ jr z, .done
+ push hl
+ push de
+ ld [wd11e], a
+ ld b, a
+ predef GetQuantityOfItemInBag
+ pop de
+ pop hl
+ ld a, b
+ and a
+ jr z, .loop
+
+ ; A fossil's in the bag
+ ld a, [wd11e]
+ ld [de], a
+ inc de
+ push hl
+ ld hl, wFilteredBagItemsCount
+ inc [hl]
+ pop hl
+ jr .loop
+.done
+ ld a, $ff
+ ld [de], a
+ ret
+
+FossilsList:
+ db DOME_FOSSIL
+ db HELIX_FOSSIL
+ db OLD_AMBER
+ db $00
+
+Lab4Text1:
+ TX_ASM
+ CheckEvent EVENT_GAVE_FOSSIL_TO_LAB
+ jr nz, .asm_75d96
+ ld hl, Lab4Text_75dc6
+ call PrintText
+ call Lab4Script_GetFossilsInBag
+ ld a, [wFilteredBagItemsCount]
+ and a
+ jr z, .asm_75d8d
+ callba GiveFossilToCinnabarLab
+ jr .asm_75d93
+.asm_75d8d
+ ld hl, Lab4Text_75dcb
+ call PrintText
+.asm_75d93
+ jp TextScriptEnd
+.asm_75d96
+ CheckEventAfterBranchReuseA EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_GAVE_FOSSIL_TO_LAB
+ jr z, .asm_75da2
+ ld hl, Lab4Text_75dd0
+ call PrintText
+ jr .asm_75d93
+.asm_75da2
+ call LoadFossilItemAndMonNameBank1D
+ ld hl, Lab4Text_75dd5
+ call PrintText
+ SetEvent EVENT_LAB_HANDING_OVER_FOSSIL_MON
+ ld a, [wFossilMon]
+ ld b, a
+ ld c, 30
+ call GivePokemon
+ jr nc, .asm_75d93
+ ResetEvents EVENT_GAVE_FOSSIL_TO_LAB, EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_LAB_HANDING_OVER_FOSSIL_MON
+ jr .asm_75d93
+
+Lab4Text_75dc6:
+ TX_FAR _Lab4Text_75dc6
+ db "@"
+
+Lab4Text_75dcb:
+ TX_FAR _Lab4Text_75dcb
+ db "@"
+
+Lab4Text_75dd0:
+ TX_FAR _Lab4Text_75dd0
+ db "@"
+
+Lab4Text_75dd5:
+ TX_FAR _Lab4Text_75dd5
+ db "@"
+
+Lab4Text2:
+ TX_ASM
+ ld a, $3
+ ld [wWhichTrade], a
+ predef DoInGameTradeDialogue
+ jp TextScriptEnd
+
+LoadFossilItemAndMonNameBank1D:
+ jpba LoadFossilItemAndMonName
diff --git a/scripts/CinnabarLabMetronomeRoom.asm b/scripts/CinnabarLabMetronomeRoom.asm
new file mode 100755
index 00000000..6eddceae
--- /dev/null
+++ b/scripts/CinnabarLabMetronomeRoom.asm
@@ -0,0 +1,62 @@
+CinnabarLabMetronomeRoom_Script:
+ jp EnableAutoTextBoxDrawing
+
+CinnabarLabMetronomeRoom_TextPointers:
+ dw Lab3Text1
+ dw Lab3Text2
+ dw Lab3Text3
+ dw Lab3Text4
+ dw Lab3Text5
+
+Lab3Text1:
+ TX_ASM
+ CheckEvent EVENT_GOT_TM35
+ jr nz, .asm_e551a
+ ld hl, TM35PreReceiveText
+ call PrintText
+ lb bc, TM_35, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM35Text
+ call PrintText
+ SetEvent EVENT_GOT_TM35
+ jr .asm_eb896
+.BagFull
+ ld hl, TM35NoRoomText
+ call PrintText
+ jr .asm_eb896
+.asm_e551a
+ ld hl, TM35ExplanationText
+ call PrintText
+.asm_eb896
+ jp TextScriptEnd
+
+TM35PreReceiveText:
+ TX_FAR _TM35PreReceiveText
+ db "@"
+
+ReceivedTM35Text:
+ TX_FAR _ReceivedTM35Text
+ TX_SFX_ITEM_1
+ db "@"
+
+TM35ExplanationText:
+ TX_FAR _TM35ExplanationText
+ db "@"
+
+TM35NoRoomText:
+ TX_FAR _TM35NoRoomText
+ db "@"
+
+Lab3Text2:
+ TX_FAR _Lab3Text2
+ db "@"
+
+Lab3Text4:
+Lab3Text3:
+ TX_FAR _Lab3Text3
+ db "@"
+
+Lab3Text5:
+ TX_FAR _Lab3Text5
+ db "@"
diff --git a/scripts/CinnabarLabTradeRoom.asm b/scripts/CinnabarLabTradeRoom.asm
new file mode 100755
index 00000000..6093ae14
--- /dev/null
+++ b/scripts/CinnabarLabTradeRoom.asm
@@ -0,0 +1,25 @@
+CinnabarLabTradeRoom_Script:
+ jp EnableAutoTextBoxDrawing
+
+CinnabarLabTradeRoom_TextPointers:
+ dw Lab2Text1
+ dw Lab2Text2
+ dw Lab2Text3
+
+Lab2Text1:
+ TX_FAR _Lab2Text1
+ db "@"
+
+Lab2Text2:
+ TX_ASM
+ ld a, $7
+ ld [wWhichTrade], a
+ jr Lab2DoTrade
+
+Lab2Text3:
+ TX_ASM
+ ld a, $8
+ ld [wWhichTrade], a
+Lab2DoTrade:
+ predef DoInGameTradeDialogue
+ jp TextScriptEnd
diff --git a/scripts/CinnabarMart.asm b/scripts/CinnabarMart.asm
new file mode 100755
index 00000000..898948c7
--- /dev/null
+++ b/scripts/CinnabarMart.asm
@@ -0,0 +1,15 @@
+CinnabarMart_Script:
+ jp EnableAutoTextBoxDrawing
+
+CinnabarMart_TextPointers:
+ dw CinnabarCashierText
+ dw CinnabarMartText2
+ dw CinnabarMartText3
+
+CinnabarMartText2:
+ TX_FAR _CinnabarMartText2
+ db "@"
+
+CinnabarMartText3:
+ TX_FAR _CinnabarMartText3
+ db "@"
diff --git a/scripts/CinnabarPokecenter.asm b/scripts/CinnabarPokecenter.asm
new file mode 100755
index 00000000..53301266
--- /dev/null
+++ b/scripts/CinnabarPokecenter.asm
@@ -0,0 +1,29 @@
+CinnabarPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+CinnabarPokecenter_TextPointers:
+ dw CinnabarHealNurseText
+ dw CinnabarPokecenterText2
+ dw CinnabarPokecenterText3
+ dw CinnabarTradeNurseText
+ dw CinnabarPokecenterText5
+
+CinnabarHealNurseText:
+ TX_POKECENTER_NURSE
+
+CinnabarPokecenterText2:
+ TX_FAR _CinnabarPokecenterText2
+ db "@"
+
+CinnabarPokecenterText3:
+ TX_FAR _CinnabarPokecenterText3
+ db "@"
+
+CinnabarTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+CinnabarPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/Colosseum.asm b/scripts/Colosseum.asm
new file mode 100644
index 00000000..8cc6b056
--- /dev/null
+++ b/scripts/Colosseum.asm
@@ -0,0 +1,9 @@
+Colosseum_Script:
+ jp TradeCenter_Script
+
+Colosseum_TextPointers:
+ dw ColosseumText1
+
+ColosseumText1:
+ TX_FAR _ColosseumText1
+ db "@"
diff --git a/scripts/CopycatsHouse1F.asm b/scripts/CopycatsHouse1F.asm
new file mode 100755
index 00000000..a86625fc
--- /dev/null
+++ b/scripts/CopycatsHouse1F.asm
@@ -0,0 +1,22 @@
+CopycatsHouse1F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CopycatsHouse1F_TextPointers:
+ dw CopycatsHouse1FText1
+ dw CopycatsHouse1FText2
+ dw CopycatsHouse1FText3
+
+CopycatsHouse1FText1:
+ TX_FAR _CopycatsHouse1FText1
+ db "@"
+
+CopycatsHouse1FText2:
+ TX_FAR _CopycatsHouse1FText2
+ db "@"
+
+CopycatsHouse1FText3:
+ TX_FAR _CopycatsHouse1FText3
+ TX_ASM
+ ld a, CHANSEY
+ call PlayCry
+ jp TextScriptEnd
diff --git a/scripts/CopycatsHouse2F.asm b/scripts/CopycatsHouse2F.asm
new file mode 100755
index 00000000..e0ec5425
--- /dev/null
+++ b/scripts/CopycatsHouse2F.asm
@@ -0,0 +1,102 @@
+CopycatsHouse2F_Script:
+ jp EnableAutoTextBoxDrawing
+
+CopycatsHouse2F_TextPointers:
+ dw CopycatsHouse2FText1
+ dw CopycatsHouse2FText2
+ dw CopycatsHouse2FText3
+ dw CopycatsHouse2FText4
+ dw CopycatsHouse2FText5
+ dw CopycatsHouse2FText6
+ dw CopycatsHouse2FText7
+
+CopycatsHouse2FText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_TM31
+ jr nz, .asm_7ccf3
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, CopycatsHouse2FText_5ccd4
+ call PrintText
+ ld b, POKE_DOLL
+ call IsItemInBag
+ jr z, .asm_62ecd
+ ld hl, TM31PreReceiveText
+ call PrintText
+ lb bc, TM_31, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM31Text
+ call PrintText
+ ld a, POKE_DOLL
+ ld [$ffdb], a
+ callba RemoveItemByID
+ SetEvent EVENT_GOT_TM31
+ jr .asm_62ecd
+.BagFull
+ ld hl, TM31NoRoomText
+ call PrintText
+ jr .asm_62ecd
+.asm_7ccf3
+ ld hl, TM31ExplanationText2
+ call PrintText
+.asm_62ecd
+ jp TextScriptEnd
+
+CopycatsHouse2FText_5ccd4:
+ TX_FAR _CopycatsHouse2FText_5ccd4
+ db "@"
+
+TM31PreReceiveText:
+ TX_FAR _TM31PreReceiveText
+ db "@"
+
+ReceivedTM31Text:
+ TX_FAR _ReceivedTM31Text
+ TX_SFX_ITEM_1
+TM31ExplanationText1:
+ TX_FAR _TM31ExplanationText1
+ TX_WAIT
+ db "@"
+
+TM31ExplanationText2:
+ TX_FAR _TM31ExplanationText2
+ db "@"
+
+TM31NoRoomText:
+ TX_FAR _TM31NoRoomText
+ TX_WAIT
+ db "@"
+
+CopycatsHouse2FText2:
+ TX_FAR _CopycatsHouse2FText2
+ db "@"
+
+CopycatsHouse2FText5:
+CopycatsHouse2FText4:
+CopycatsHouse2FText3:
+ TX_FAR _CopycatsHouse2FText3
+ db "@"
+
+CopycatsHouse2FText6:
+ TX_FAR _CopycatsHouse2FText6
+ db "@"
+
+CopycatsHouse2FText7:
+ TX_ASM
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ ld hl, CopycatsHouse2FText_5cd1c
+ jr nz, .notUp
+ ld hl, CopycatsHouse2FText_5cd17
+.notUp
+ call PrintText
+ jp TextScriptEnd
+
+CopycatsHouse2FText_5cd17:
+ TX_FAR _CopycatsHouse2FText_5cd17
+ db "@"
+
+CopycatsHouse2FText_5cd1c:
+ TX_FAR _CopycatsHouse2FText_5cd1c
+ db "@"
diff --git a/scripts/Daycare.asm b/scripts/Daycare.asm
new file mode 100755
index 00000000..5b65307e
--- /dev/null
+++ b/scripts/Daycare.asm
@@ -0,0 +1,298 @@
+Daycare_Script:
+ jp EnableAutoTextBoxDrawing
+
+Daycare_TextPointers:
+ dw DayCareMText1
+
+DayCareMText1:
+ TX_ASM
+ call SaveScreenTilesToBuffer2
+ ld a, [wDayCareInUse]
+ and a
+ jp nz, .daycareInUse
+ ld hl, DayCareIntroText
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ ld hl, DayCareComeAgainText
+ jp nz, .done
+ ld a, [wPartyCount]
+ dec a
+ ld hl, DayCareOnlyHaveOneMonText
+ jp z, .done
+ ld hl, DayCareWhichMonText
+ call PrintText
+ xor a
+ ld [wUpdateSpritesEnabled], a
+ ld [wPartyMenuTypeOrMessageID], a
+ ld [wMenuItemToSwap], a
+ call DisplayPartyMenu
+ push af
+ call GBPalWhiteOutWithDelay3
+ call RestoreScreenTilesAndReloadTilePatterns
+ call LoadGBPal
+ pop af
+ ld hl, DayCareAllRightThenText
+ jp c, .done
+ callab KnowsHMMove
+ ld hl, DayCareCantAcceptMonWithHMText
+ jp c, .done
+ xor a
+ ld [wPartyAndBillsPCSavedMenuItem], a
+ ld a, [wWhichPokemon]
+ ld hl, wPartyMonNicks
+ call GetPartyMonName
+ ld hl, DayCareWillLookAfterMonText
+ call PrintText
+ ld a, 1
+ ld [wDayCareInUse], a
+ ld a, PARTY_TO_DAYCARE
+ ld [wMoveMonType], a
+ call MoveMon
+ callab IsThisPartymonStarterPikachu
+ push af
+ xor a
+ ld [wRemoveMonFromBox], a
+ call RemovePokemon
+ pop af
+ jr c, .depositedPikachuIntoDayCare
+ ld a, [wcf91]
+ call PlayCry
+ jr .asm_562e3
+
+.depositedPikachuIntoDayCare
+ ldpikacry e, PikachuCry28
+ callab PlayPikachuSoundClip
+.asm_562e3
+ ld hl, DayCareComeSeeMeInAWhileText
+ jp .done
+
+.daycareInUse
+ xor a
+ ld hl, wDayCareMonName
+ call GetPartyMonName
+ ld a, DAYCARE_DATA
+ ld [wMonDataLocation], a
+ call LoadMonData
+ callab CalcLevelFromExperience
+ ld a, d
+ cp MAX_LEVEL
+ jr c, .skipCalcExp
+
+ ld d, MAX_LEVEL
+ callab CalcExperience
+ ld hl, wDayCareMonExp
+ ld a, [hExperience]
+ ld [hli], a
+ ld a, [hExperience + 1]
+ ld [hli], a
+ ld a, [hExperience + 2]
+ ld [hl], a
+ ld d, MAX_LEVEL
+
+.skipCalcExp
+ xor a
+ ld [wDayCareNumLevelsGrown], a
+ ld hl, wDayCareMonBoxLevel
+ ld a, [hl]
+ ld [wDayCareStartLevel], a
+ cp d
+ ld [hl], d
+ ld hl, DayCareMonNeedsMoreTimeText
+ jr z, .next
+ ld a, [wDayCareStartLevel]
+ ld b, a
+ ld a, d
+ sub b
+ ld [wDayCareNumLevelsGrown], a
+ ld hl, DayCareMonHasGrownText
+
+.next
+ call PrintText
+ ld a, [wPartyCount]
+ cp PARTY_LENGTH
+ ld hl, DayCareNoRoomForMonText
+ jp z, .leaveMonInDayCare
+ ld de, wDayCareTotalCost
+ xor a
+ ld [de], a
+ inc de
+ ld [de], a
+ ld hl, wDayCarePerLevelCost
+ ld a, $1
+ ld [hli], a
+ ld [hl], $0
+ ld a, [wDayCareNumLevelsGrown]
+ inc a
+ ld b, a
+ ld c, 2
+.calcPriceLoop
+ push hl
+ push de
+ push bc
+ predef AddBCDPredef
+ pop bc
+ pop de
+ pop hl
+ dec b
+ jr nz, .calcPriceLoop
+ ld hl, DayCareOweMoneyText
+ call PrintText
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ call YesNoChoice
+ ld hl, DayCareAllRightThenText
+ ld a, [wCurrentMenuItem]
+ and a
+ jp nz, .leaveMonInDayCare
+ ld hl, wDayCareTotalCost
+ ld [hMoney], a
+ ld a, [hli]
+ ld [hMoney + 1], a
+ ld a, [hl]
+ ld [hMoney + 2], a
+ call HasEnoughMoney
+ jr nc, .enoughMoney
+ ld hl, DayCareNotEnoughMoneyText
+ jp .leaveMonInDayCare
+
+.enoughMoney
+ xor a
+ ld [wDayCareInUse], a
+ ld hl, wDayCareNumLevelsGrown
+ ld [hli], a
+ inc hl
+ ld de, wPlayerMoney + 2
+ ld c, $3
+ predef SubBCDPredef
+ ld a, SFX_PURCHASE
+ call PlaySoundWaitForCurrent
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ ld hl, DayCareHeresYourMonText
+ call PrintText
+ ld a, DAYCARE_TO_PARTY
+ ld [wMoveMonType], a
+ call MoveMon
+ ld a, [wDayCareMonSpecies]
+ ld [wcf91], a
+ ld a, [wPartyCount]
+ dec a
+ push af
+ ld bc, wPartyMon2 - wPartyMon1
+ push bc
+ ld hl, wPartyMon1Moves
+ call AddNTimes
+ ld d, h
+ ld e, l
+ ld a, 1
+ ld [wLearningMovesFromDayCare], a
+ predef WriteMonMoves
+ pop bc
+ pop af
+
+; set mon's HP to max
+ ld hl, wPartyMon1HP
+ call AddNTimes
+ ld d, h
+ ld e, l
+ ld bc, wPartyMon1MaxHP - wPartyMon1HP
+ add hl, bc
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ ld [de], a
+
+ ld a, [wPartyCount]
+ dec a
+ ld [wWhichPokemon], a
+ callab IsThisPartymonStarterPikachu
+ jr c, .withdrewPikachuFromDayCare
+ ld a, [wcf91]
+ call PlayCry
+ jr .asm_56430
+
+.withdrewPikachuFromDayCare
+ ld a, $6
+ ld [wPikachuSpawnState], a
+
+ ; GameFreak... TriHard
+ ld hl, SchedulePikachuSpawnForAfterText
+ ld b, BANK(SchedulePikachuSpawnForAfterText)
+ ld hl, Bankswitch
+
+ ldpikacry e, PikachuCry35
+ callab PlayPikachuSoundClip
+.asm_56430
+ ld hl, DayCareGotMonBackText
+ jr .done
+
+.leaveMonInDayCare
+ ld a, [wDayCareStartLevel]
+ ld [wDayCareMonBoxLevel], a
+
+.done
+ call PrintText
+ jp TextScriptEnd
+
+DayCareIntroText:
+ TX_FAR _DayCareIntroText
+ db "@"
+
+DayCareWhichMonText:
+ TX_FAR _DayCareWhichMonText
+ db "@"
+
+DayCareWillLookAfterMonText:
+ TX_FAR _DayCareWillLookAfterMonText
+ db "@"
+
+DayCareComeSeeMeInAWhileText:
+ TX_FAR _DayCareComeSeeMeInAWhileText
+ db "@"
+
+DayCareMonHasGrownText:
+ TX_FAR _DayCareMonHasGrownText
+ db "@"
+
+DayCareOweMoneyText:
+ TX_FAR _DayCareOweMoneyText
+ db "@"
+
+DayCareGotMonBackText:
+ TX_FAR _DayCareGotMonBackText
+ db "@"
+
+DayCareMonNeedsMoreTimeText:
+ TX_FAR _DayCareMonNeedsMoreTimeText
+ db "@"
+
+DayCareAllRightThenText:
+ TX_FAR _DayCareAllRightThenText
+DayCareComeAgainText:
+ TX_FAR _DayCareComeAgainText
+ db "@"
+
+DayCareNoRoomForMonText:
+ TX_FAR _DayCareNoRoomForMonText
+ db "@"
+
+DayCareOnlyHaveOneMonText:
+ TX_FAR _DayCareOnlyHaveOneMonText
+ db "@"
+
+DayCareCantAcceptMonWithHMText:
+ TX_FAR _DayCareCantAcceptMonWithHMText
+ db "@"
+
+DayCareHeresYourMonText:
+ TX_FAR _DayCareHeresYourMonText
+ db "@"
+
+DayCareNotEnoughMoneyText:
+ TX_FAR _DayCareNotEnoughMoneyText
+ db "@"
diff --git a/scripts/DiglettsCave.asm b/scripts/DiglettsCave.asm
new file mode 100755
index 00000000..1d7b23f9
--- /dev/null
+++ b/scripts/DiglettsCave.asm
@@ -0,0 +1,5 @@
+DiglettsCave_Script:
+ jp EnableAutoTextBoxDrawing
+
+DiglettsCave_TextPointers:
+ db "@"
diff --git a/scripts/DiglettsCaveRoute11.asm b/scripts/DiglettsCaveRoute11.asm
new file mode 100755
index 00000000..54c3112e
--- /dev/null
+++ b/scripts/DiglettsCaveRoute11.asm
@@ -0,0 +1,12 @@
+DiglettsCaveRoute11_Script:
+ call EnableAutoTextBoxDrawing
+ ld a, ROUTE_11
+ ld [wLastMap], a
+ ret
+
+DiglettsCaveRoute11_TextPointers:
+ dw DiglettsCaveEntranceRoute11Text1
+
+DiglettsCaveEntranceRoute11Text1:
+ TX_FAR _DiglettsCaveEntRoute11Text1
+ db "@"
diff --git a/scripts/DiglettsCaveRoute2.asm b/scripts/DiglettsCaveRoute2.asm
new file mode 100755
index 00000000..5fe7777c
--- /dev/null
+++ b/scripts/DiglettsCaveRoute2.asm
@@ -0,0 +1,11 @@
+DiglettsCaveRoute2_Script:
+ ld a, ROUTE_2
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+DiglettsCaveRoute2_TextPointers:
+ dw DiglettsCaveRoute2Text1
+
+DiglettsCaveRoute2Text1:
+ TX_FAR _DiglettsCaveRoute2Text1
+ db "@"
diff --git a/scripts/FightingDojo.asm b/scripts/FightingDojo.asm
new file mode 100755
index 00000000..fc691dba
--- /dev/null
+++ b/scripts/FightingDojo.asm
@@ -0,0 +1,323 @@
+FightingDojo_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, FightingDojoTrainerHeader0
+ ld de, FightingDojo_ScriptPointers
+ ld a, [wFightingDojoCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wFightingDojoCurScript], a
+ ret
+
+FightingDojoScript_5cd70:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wFightingDojoCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+FightingDojo_ScriptPointers:
+ dw FightingDojoScript1
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw FightingDojoScript3
+
+FightingDojoScript1:
+ CheckEvent EVENT_DEFEATED_FIGHTING_DOJO
+ ret nz
+ call CheckFightingMapTrainers
+ ld a, [wTrainerHeaderFlagBit]
+ and a
+ ret nz
+ CheckEvent EVENT_BEAT_KARATE_MASTER
+ ret nz
+ xor a
+ ld [hJoyHeld], a
+ ld [wcf0d], a
+ ld a, [wYCoord]
+ cp $3
+ ret nz
+ ld a, [wXCoord]
+ cp $4
+ ret nz
+ ld a, $1
+ ld [wcf0d], a
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ret
+
+FightingDojoScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, FightingDojoScript_5cd70
+ ld a, [wcf0d]
+ and a
+ jr z, .asm_5cde4
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+
+.asm_5cde4
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEventRange EVENT_BEAT_KARATE_MASTER, EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+ ld [wFightingDojoCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+FightingDojo_TextPointers:
+ dw FightingDojoText1
+ dw FightingDojoText2
+ dw FightingDojoText3
+ dw FightingDojoText4
+ dw FightingDojoText5
+ dw FightingDojoText6
+ dw FightingDojoText7
+ dw FightingDojoText8
+
+FightingDojoTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
+ dw FightingDojoBattleText1 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText1 ; TextAfterBattle
+ dw FightingDojoEndBattleText1 ; TextEndBattle
+ dw FightingDojoEndBattleText1 ; TextEndBattle
+
+FightingDojoTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
+ dw FightingDojoBattleText2 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText2 ; TextAfterBattle
+ dw FightingDojoEndBattleText2 ; TextEndBattle
+ dw FightingDojoEndBattleText2 ; TextEndBattle
+
+FightingDojoTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
+ dw FightingDojoBattleText3 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText3 ; TextAfterBattle
+ dw FightingDojoEndBattleText3 ; TextEndBattle
+ dw FightingDojoEndBattleText3 ; TextEndBattle
+
+FightingDojoTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
+ dw FightingDojoBattleText4 ; TextBeforeBattle
+ dw FightingDojoAfterBattleText4 ; TextAfterBattle
+ dw FightingDojoEndBattleText4 ; TextEndBattle
+ dw FightingDojoEndBattleText4 ; TextEndBattle
+
+ db $ff
+
+FightingDojoText1:
+ TX_ASM
+ CheckEvent EVENT_DEFEATED_FIGHTING_DOJO
+ jp nz, .continue1
+ CheckEventReuseA EVENT_BEAT_KARATE_MASTER
+ jp nz, .continue2
+ ld hl, FightingDojoText_5ce8e
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, FightingDojoText_5ce93
+ ld de, FightingDojoText_5ce93
+ call SaveEndBattleTextPointers
+ ld a, [hSpriteIndexOrTextID]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ ld [wFightingDojoCurScript], a
+ ld [wCurMapScript], a
+ jr .asm_9dba4
+.continue1
+ ld hl, FightingDojoText_5ce9d
+ call PrintText
+ jr .asm_9dba4
+.continue2
+ ld hl, FightingDojoText8
+ call PrintText
+.asm_9dba4
+ jp TextScriptEnd
+
+FightingDojoText_5ce8e:
+ TX_FAR _FightingDojoText_5ce8e
+ db "@"
+
+FightingDojoText_5ce93:
+ TX_FAR _FightingDojoText_5ce93
+ db "@"
+
+FightingDojoText8:
+ TX_FAR _FightingDojoText_5ce98
+ db "@"
+
+FightingDojoText_5ce9d:
+ TX_FAR _FightingDojoText_5ce9d
+ db "@"
+
+FightingDojoText2:
+ TX_ASM
+ ld hl, FightingDojoTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText1:
+ TX_FAR _FightingDojoBattleText1
+ db "@"
+
+FightingDojoEndBattleText1:
+ TX_FAR _FightingDojoEndBattleText1
+ db "@"
+
+FightingDojoAfterBattleText1:
+ TX_FAR _FightingDojoAfterBattleText1
+ db "@"
+
+FightingDojoText3:
+ TX_ASM
+ ld hl, FightingDojoTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText2:
+ TX_FAR _FightingDojoBattleText2
+ db "@"
+
+FightingDojoEndBattleText2:
+ TX_FAR _FightingDojoEndBattleText2
+ db "@"
+
+FightingDojoAfterBattleText2:
+ TX_FAR _FightingDojoAfterBattleText2
+ db "@"
+
+FightingDojoText4:
+ TX_ASM
+ ld hl, FightingDojoTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText3:
+ TX_FAR _FightingDojoBattleText3
+ db "@"
+
+FightingDojoEndBattleText3:
+ TX_FAR _FightingDojoEndBattleText3
+ db "@"
+
+FightingDojoAfterBattleText3:
+ TX_FAR _FightingDojoAfterBattleText3
+ db "@"
+
+FightingDojoText5:
+ TX_ASM
+ ld hl, FightingDojoTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FightingDojoBattleText4:
+ TX_FAR _FightingDojoBattleText4
+ db "@"
+
+FightingDojoEndBattleText4:
+ TX_FAR _FightingDojoEndBattleText4
+ db "@"
+
+FightingDojoAfterBattleText4:
+ TX_FAR _FightingDojoAfterBattleText4
+ db "@"
+
+FightingDojoText6:
+; Hitmonlee Poké Ball
+ TX_ASM
+ CheckEitherEventSet EVENT_GOT_HITMONLEE, EVENT_GOT_HITMONCHAN
+ jr z, .GetMon
+ ld hl, OtherHitmonText
+ call PrintText
+ jr .done
+.GetMon
+ ld a, HITMONLEE
+ call DisplayPokedex
+ ld hl, WantHitmonleeText
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .done
+ ld a, [wcf91]
+ ld b, a
+ ld c, 30
+ call GivePokemon
+ jr nc, .done
+
+ ; once Poké Ball is taken, hide sprite
+ ld a, HS_FIGHTING_DOJO_GIFT_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ SetEvents EVENT_GOT_HITMONLEE, EVENT_DEFEATED_FIGHTING_DOJO
+.done
+ jp TextScriptEnd
+
+WantHitmonleeText:
+ TX_FAR _WantHitmonleeText
+ db "@"
+
+FightingDojoText7:
+; Hitmonchan Poké Ball
+ TX_ASM
+ CheckEitherEventSet EVENT_GOT_HITMONLEE, EVENT_GOT_HITMONCHAN
+ jr z, .GetMon
+ ld hl, OtherHitmonText
+ call PrintText
+ jr .done
+.GetMon
+ ld a, HITMONCHAN
+ call DisplayPokedex
+ ld hl, WantHitmonchanText
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .done
+ ld a, [wcf91]
+ ld b, a
+ ld c, 30
+ call GivePokemon
+ jr nc, .done
+ SetEvents EVENT_GOT_HITMONCHAN, EVENT_DEFEATED_FIGHTING_DOJO
+
+ ; once Poké Ball is taken, hide sprite
+ ld a, HS_FIGHTING_DOJO_GIFT_2
+ ld [wMissableObjectIndex], a
+ predef HideObject
+.done
+ jp TextScriptEnd
+
+WantHitmonchanText:
+ TX_FAR _WantHitmonchanText
+ db "@"
+
+OtherHitmonText:
+ TX_FAR _OtherHitmonText
+ db "@"
diff --git a/scripts/FuchsiaBillsGrandpasHouse.asm b/scripts/FuchsiaBillsGrandpasHouse.asm
new file mode 100755
index 00000000..ca5f2c16
--- /dev/null
+++ b/scripts/FuchsiaBillsGrandpasHouse.asm
@@ -0,0 +1,20 @@
+FuchsiaBillsGrandpasHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+FuchsiaBillsGrandpasHouse_TextPointers:
+ dw FuchsiaHouse1Text1
+ dw FuchsiaHouse1Text2
+ dw FuchsiaHouse1Text3
+
+FuchsiaHouse1Text1:
+ TX_FAR _FuchsiaHouse1Text1
+ db "@"
+
+FuchsiaHouse1Text2:
+ TX_FAR _FuchsiaHouse1Text2
+ db "@"
+
+FuchsiaHouse1Text3:
+ TX_FAR _FuchsiaHouse1Text3
+ db "@"
diff --git a/scripts/FuchsiaCity.asm b/scripts/FuchsiaCity.asm
new file mode 100755
index 00000000..d3f0ce32
--- /dev/null
+++ b/scripts/FuchsiaCity.asm
@@ -0,0 +1,169 @@
+FuchsiaCity_Script:
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaCity_TextPointers:
+ dw FuchsiaCityText1
+ dw FuchsiaCityText2
+ dw FuchsiaCityText3
+ dw FuchsiaCityText4
+ dw FuchsiaCityText5
+ dw FuchsiaCityText6
+ dw FuchsiaCityText7
+ dw FuchsiaCityText8
+ dw FuchsiaCityText9
+ dw FuchsiaCityText10
+ dw FuchsiaCityText11
+ dw FuchsiaCityText12
+ dw FuchsiaCityText13
+ dw MartSignText
+ dw PokeCenterSignText
+ dw FuchsiaCityText16
+ dw FuchsiaCityText17
+ dw FuchsiaCityText18
+ dw FuchsiaCityText19
+ dw FuchsiaCityText20
+ dw FuchsiaCityText21
+ dw FuchsiaCityText22
+ dw FuchsiaCityText23
+ dw FuchsiaCityText24
+
+FuchsiaCityText1:
+ TX_FAR _FuchsiaCityText1
+ db "@"
+
+FuchsiaCityText2:
+ TX_FAR _FuchsiaCityText2
+ db "@"
+
+FuchsiaCityText3:
+ TX_FAR _FuchsiaCityText3
+ db "@"
+
+FuchsiaCityText4:
+ TX_FAR _FuchsiaCityText4
+ db "@"
+
+FuchsiaCityText5:
+FuchsiaCityText6:
+FuchsiaCityText7:
+FuchsiaCityText8:
+FuchsiaCityText9:
+FuchsiaCityText10:
+ TX_FAR _FuchsiaCityText5
+ db "@"
+
+FuchsiaCityText12:
+FuchsiaCityText11:
+ TX_FAR _FuchsiaCityText11
+ db "@"
+
+FuchsiaCityText13:
+ TX_FAR _FuchsiaCityText13
+ db "@"
+
+FuchsiaCityText16:
+ TX_FAR _FuchsiaCityText16
+ db "@"
+
+FuchsiaCityText17:
+ TX_FAR _FuchsiaCityText17
+ db "@"
+
+FuchsiaCityText18:
+ TX_FAR _FuchsiaCityText18
+ db "@"
+
+FuchsiaCityText19:
+ TX_ASM
+ ld hl, FuchsiaCityChanseyText
+ call PrintText
+ ld a, CHANSEY
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityChanseyText:
+ TX_FAR _FuchsiaCityChanseyText
+ db "@"
+
+FuchsiaCityText20:
+ TX_ASM
+ ld hl, FuchsiaCityVoltorbText
+ call PrintText
+ ld a, VOLTORB
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityVoltorbText:
+ TX_FAR _FuchsiaCityVoltorbText
+ db "@"
+
+FuchsiaCityText21:
+ TX_ASM
+ ld hl, FuchsiaCityKangaskhanText
+ call PrintText
+ ld a, KANGASKHAN
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityKangaskhanText:
+ TX_FAR _FuchsiaCityKangaskhanText
+ db "@"
+
+FuchsiaCityText22:
+ TX_ASM
+ ld hl, FuchsiaCitySlowpokeText
+ call PrintText
+ ld a, SLOWPOKE
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCitySlowpokeText:
+ TX_FAR _FuchsiaCitySlowpokeText
+ db "@"
+
+FuchsiaCityText23:
+ TX_ASM
+ ld hl, FuchsiaCityLaprasText
+ call PrintText
+ ld a, LAPRAS
+ call DisplayPokedex
+ jp TextScriptEnd
+
+FuchsiaCityLaprasText:
+ TX_FAR _FuchsiaCityLaprasText
+ db "@"
+
+FuchsiaCityText24:
+ TX_ASM
+ CheckEvent EVENT_GOT_DOME_FOSSIL
+ jr nz, .asm_3b4e8
+ CheckEventReuseA EVENT_GOT_HELIX_FOSSIL
+ jr nz, .asm_667d5
+ ld hl, FuchsiaCityText_19b2a
+ call PrintText
+ jr .asm_4343f
+.asm_3b4e8
+ ld hl, FuchsiaCityOmanyteText
+ call PrintText
+ ld a, OMANYTE
+ jr .asm_81556
+.asm_667d5
+ ld hl, FuchsiaCityKabutoText
+ call PrintText
+ ld a, KABUTO
+.asm_81556
+ call DisplayPokedex
+.asm_4343f
+ jp TextScriptEnd
+
+FuchsiaCityOmanyteText:
+ TX_FAR _FuchsiaCityOmanyteText
+ db "@"
+
+FuchsiaCityKabutoText:
+ TX_FAR _FuchsiaCityKabutoText
+ db "@"
+
+FuchsiaCityText_19b2a:
+ TX_FAR _FuchsiaCityText_19b2a
+ db "@"
diff --git a/scripts/FuchsiaGoodRodHouse.asm b/scripts/FuchsiaGoodRodHouse.asm
new file mode 100755
index 00000000..93a20e80
--- /dev/null
+++ b/scripts/FuchsiaGoodRodHouse.asm
@@ -0,0 +1,75 @@
+FuchsiaGoodRodHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaGoodRodHouse_TextPointers:
+ dw FuchsiaHouse3Text1
+
+FuchsiaHouse3Text1:
+ TX_ASM
+ ld a, [wd728]
+ bit 4, a
+ jr nz, .after
+
+ ld hl, FuchsiaHouse3Text_561bd
+ call PrintText
+
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .refused
+
+ lb bc, GOOD_ROD, 1
+ call GiveItem
+ jr nc, .full
+
+ ld hl, wd728
+ set 4, [hl]
+
+ ld hl, FuchsiaHouse3Text_561c2
+ jr .talk
+
+.full
+ ld hl, FuchsiaHouse3Text_5621c
+ jr .talk
+
+.refused
+ ld hl, FuchsiaHouse3Text_56212
+ jr .talk
+
+.after
+ ld hl, FuchsiaHouse3Text_56217
+
+.talk
+ call PrintText
+ jp TextScriptEnd
+
+FuchsiaHouse3Text_561bd:
+ TX_FAR _FuchsiaHouse3Text_561bd
+ db "@"
+
+FuchsiaHouse3Text_561c2:
+ TX_FAR _FuchsiaHouse3Text_561c2
+ TX_SFX_ITEM_1
+ db "@"
+
+UnusedText_561c8:
+ para "つり こそ"
+ line "おとこの ロマン だ!"
+
+ para "へぼいつりざおは"
+ line "コイキングしか つれ なんだが"
+ line "この いいつりざおなら"
+ line "もっと いいもんが つれるんじゃ!"
+ done
+
+FuchsiaHouse3Text_56212:
+ TX_FAR _FuchsiaHouse3Text_56212
+ db "@"
+
+FuchsiaHouse3Text_56217:
+ TX_FAR _FuchsiaHouse3Text_56217
+ db "@"
+
+FuchsiaHouse3Text_5621c:
+ TX_FAR _FuchsiaHouse3Text_5621c
+ db "@"
diff --git a/scripts/FuchsiaGym.asm b/scripts/FuchsiaGym.asm
new file mode 100755
index 00000000..15f016af
--- /dev/null
+++ b/scripts/FuchsiaGym.asm
@@ -0,0 +1,329 @@
+FuchsiaGym_Script:
+ call FuchsiaGymScript_75453
+ call EnableAutoTextBoxDrawing
+ ld hl, FuchsiaGymTrainerHeader0
+ ld de, FuchsiaGym_ScriptPointers
+ ld a, [wFuchsiaGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wFuchsiaGymCurScript], a
+ ret
+
+FuchsiaGymScript_75453:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ld hl, Gym5CityName
+ ld de, Gym5LeaderName
+ call LoadGymLeaderAndCityName
+ ret
+
+Gym5CityName:
+ db "FUCHSIA CITY@"
+Gym5LeaderName:
+ db "KOGA@"
+
+FuchsiaGymScript_75477:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wFuchsiaGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+FuchsiaGym_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw FuchsiaGymScript3
+
+FuchsiaGymScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, FuchsiaGymScript_75477
+ ld a, $f0
+ ld [wJoyIgnore], a
+FuchsiaGymScript3_75497:
+ ld a, $9
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_KOGA
+ lb bc, TM_06, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM06
+ jr .gymVictory
+.BagFull
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 4, [hl]
+ ld hl, wBeatGymFlags
+ set 4, [hl]
+
+ ; deactivate gym trainers
+ SetEventRange EVENT_BEAT_FUCHSIA_GYM_TRAINER_0, EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
+
+ jp FuchsiaGymScript_75477
+
+FuchsiaGym_TextPointers:
+ dw FuchsiaGymText1
+ dw FuchsiaGymText2
+ dw FuchsiaGymText3
+ dw FuchsiaGymText4
+ dw FuchsiaGymText5
+ dw FuchsiaGymText6
+ dw FuchsiaGymText7
+ dw FuchsiaGymText8
+ dw FuchsiaGymText9
+ dw FuchsiaGymText10
+ dw FuchsiaGymText11
+
+FuchsiaGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_0
+ dw FuchsiaGymBattleText1 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText1 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText1 ; TextEndBattle
+ dw FuchsiaGymEndBattleText1 ; TextEndBattle
+
+FuchsiaGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_1
+ dw FuchsiaGymBattleText2 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText2 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText2 ; TextEndBattle
+ dw FuchsiaGymEndBattleText2 ; TextEndBattle
+
+FuchsiaGymTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_2
+ dw FuchsiaGymBattleText3 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText3 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText3 ; TextEndBattle
+ dw FuchsiaGymEndBattleText3 ; TextEndBattle
+
+FuchsiaGymTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_3
+ dw FuchsiaGymBattleText4 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText4 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText4 ; TextEndBattle
+ dw FuchsiaGymEndBattleText4 ; TextEndBattle
+
+FuchsiaGymTrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_4
+ dw FuchsiaGymBattleText5 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText5 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText5 ; TextEndBattle
+ dw FuchsiaGymEndBattleText5 ; TextEndBattle
+
+FuchsiaGymTrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
+ dw FuchsiaGymBattleText6 ; TextBeforeBattle
+ dw FuchsiaGymAfterBattleText6 ; TextAfterBattle
+ dw FuchsiaGymEndBattleText6 ; TextEndBattle
+ dw FuchsiaGymEndBattleText6 ; TextEndBattle
+
+ db $ff
+
+FuchsiaGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_KOGA
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM06
+ jr nz, .afterVictory
+ call z, FuchsiaGymScript3_75497
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.afterVictory
+ ld hl, KogaExplainToxicText
+ call PrintText
+ jr .done
+.beginBattle
+ ld hl, KogaBeforeBattleText
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, KogaAfterBattleText
+ ld de, KogaAfterBattleText
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $5
+ ld [wGymLeaderNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3
+ ld [wFuchsiaGymCurScript], a
+.done
+ jp TextScriptEnd
+
+KogaBeforeBattleText:
+ TX_FAR _KogaBeforeBattleText
+ db "@"
+
+KogaAfterBattleText:
+ TX_FAR _KogaAfterBattleText
+ db "@"
+
+KogaExplainToxicText:
+ TX_FAR _KogaExplainToxicText
+ db "@"
+
+FuchsiaGymText9:
+ TX_FAR _FuchsiaGymText9
+ db "@"
+
+FuchsiaGymText10:
+ TX_FAR _ReceivedTM06Text
+ TX_SFX_KEY_ITEM
+
+TM06ExplanationText:
+ TX_FAR _TM06ExplanationText
+ db "@"
+
+FuchsiaGymText11:
+ TX_FAR _TM06NoRoomText
+ db "@"
+
+FuchsiaGymText2:
+ TX_ASM
+ ld hl, FuchsiaGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText1:
+ TX_FAR _FuchsiaGymBattleText1
+ db "@"
+
+FuchsiaGymEndBattleText1:
+ TX_FAR _FuchsiaGymEndBattleText1
+ db "@"
+
+FuchsiaGymAfterBattleText1:
+ TX_FAR _FuchsiaGymAfterBattleText1
+ db "@"
+
+FuchsiaGymText3:
+ TX_ASM
+ ld hl, FuchsiaGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText2:
+ TX_FAR _FuchsiaGymBattleText2
+ db "@"
+
+FuchsiaGymEndBattleText2:
+ TX_FAR _FuchsiaGymEndBattleText2
+ db "@"
+
+FuchsiaGymAfterBattleText2:
+ TX_FAR _FuchsiaGymAfterBattleText2
+ db "@"
+
+FuchsiaGymText4:
+ TX_ASM
+ ld hl, FuchsiaGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText3:
+ TX_FAR _FuchsiaGymBattleText3
+ db "@"
+
+FuchsiaGymEndBattleText3:
+ TX_FAR _FuchsiaGymEndBattleText3
+ db "@"
+
+FuchsiaGymAfterBattleText3:
+ TX_FAR _FuchsiaGymAfterBattleText3
+ db "@"
+
+FuchsiaGymText5:
+ TX_ASM
+ ld hl, FuchsiaGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText4:
+ TX_FAR _FuchsiaGymBattleText4
+ db "@"
+
+FuchsiaGymEndBattleText4:
+ TX_FAR _FuchsiaGymEndBattleText4
+ db "@"
+
+FuchsiaGymAfterBattleText4:
+ TX_FAR _FuchsiaGymAfterBattleText4
+ db "@"
+
+FuchsiaGymText6:
+ TX_ASM
+ ld hl, FuchsiaGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText5:
+ TX_FAR _FuchsiaGymBattleText5
+ db "@"
+
+FuchsiaGymEndBattleText5:
+ TX_FAR _FuchsiaGymEndBattleText5
+ db "@"
+
+FuchsiaGymAfterBattleText5:
+ TX_FAR _FuchsiaGymAfterBattleText5
+ db "@"
+
+FuchsiaGymText7:
+ TX_ASM
+ ld hl, FuchsiaGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+FuchsiaGymBattleText6:
+ TX_FAR _FuchsiaGymBattleText6
+ db "@"
+
+FuchsiaGymEndBattleText6:
+ TX_FAR _FuchsiaGymEndBattleText6
+ db "@"
+
+FuchsiaGymAfterBattleText6:
+ TX_FAR _FuchsiaGymAfterBattleText6
+ db "@"
+
+FuchsiaGymText8:
+ TX_ASM
+ CheckEvent EVENT_BEAT_KOGA
+ ld hl, FuchsiaGymText_75653
+ jr nz, .asm_50671
+ ld hl, FuchsiaGymText_7564e
+.asm_50671
+ call PrintText
+ jp TextScriptEnd
+
+FuchsiaGymText_7564e:
+ TX_FAR _FuchsiaGymText_7564e
+ db "@"
+
+FuchsiaGymText_75653:
+ TX_FAR _FuchsiaGymText_75653
+ db "@"
diff --git a/scripts/FuchsiaMart.asm b/scripts/FuchsiaMart.asm
new file mode 100755
index 00000000..50786127
--- /dev/null
+++ b/scripts/FuchsiaMart.asm
@@ -0,0 +1,16 @@
+FuchsiaMart_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+FuchsiaMart_TextPointers:
+ dw FuchsiaCashierText
+ dw FuchsiaMartText2
+ dw FuchsiaMartText3
+
+FuchsiaMartText2:
+ TX_FAR _FuchsiaMartText2
+ db "@"
+
+FuchsiaMartText3:
+ TX_FAR _FuchsiaMartText3
+ db "@"
diff --git a/scripts/FuchsiaMeetingRoom.asm b/scripts/FuchsiaMeetingRoom.asm
new file mode 100755
index 00000000..95ac12fa
--- /dev/null
+++ b/scripts/FuchsiaMeetingRoom.asm
@@ -0,0 +1,20 @@
+FuchsiaMeetingRoom_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+FuchsiaMeetingRoom_TextPointers:
+ dw FuchsiaMeetingRoomText1
+ dw FuchsiaMeetingRoomText2
+ dw FuchsiaMeetingRoomText3
+
+FuchsiaMeetingRoomText1:
+ TX_FAR _FuchsiaMeetingRoomText1
+ db "@"
+
+FuchsiaMeetingRoomText2:
+ TX_FAR _FuchsiaMeetingRoomText2
+ db "@"
+
+FuchsiaMeetingRoomText3:
+ TX_FAR _FuchsiaMeetingRoomText3
+ db "@"
diff --git a/scripts/FuchsiaPokecenter.asm b/scripts/FuchsiaPokecenter.asm
new file mode 100755
index 00000000..40aa3d45
--- /dev/null
+++ b/scripts/FuchsiaPokecenter.asm
@@ -0,0 +1,29 @@
+FuchsiaPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+FuchsiaPokecenter_TextPointers:
+ dw FuchsiaHealNurseText
+ dw FuchsiaPokecenterText2
+ dw FuchsiaPokecenterText3
+ dw FuchsiaTradeNurseText
+ dw FuchsiaPokecenterText5
+
+FuchsiaHealNurseText:
+ TX_POKECENTER_NURSE
+
+FuchsiaPokecenterText2:
+ TX_FAR _FuchsiaPokecenterText1
+ db "@"
+
+FuchsiaPokecenterText3:
+ TX_FAR _FuchsiaPokecenterText3
+ db "@"
+
+FuchsiaTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+FuchsiaPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/GameCorner.asm b/scripts/GameCorner.asm
new file mode 100755
index 00000000..e2b7690c
--- /dev/null
+++ b/scripts/GameCorner.asm
@@ -0,0 +1,529 @@
+GameCorner_Script:
+ call CeladonGameCornerScript_48bcf
+ call CeladonGameCornerScript_48bec
+ call EnableAutoTextBoxDrawing
+ ld hl, GameCorner_ScriptPointers
+ ld a, [wGameCornerCurScript]
+ jp CallFunctionInTable
+
+CeladonGameCornerScript_48bcf:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ call Random
+ ld a, [hRandomAdd]
+ cp $7
+ jr nc, .asm_48be2
+ ld a, $8
+.asm_48be2
+ srl a
+ srl a
+ srl a
+ ld [wLuckySlotHiddenObjectIndex], a
+ ret
+
+CeladonGameCornerScript_48bec:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_FOUND_ROCKET_HIDEOUT
+ ret nz
+ ld a, $2a
+ ld [wNewTileBlockID], a
+ lb bc, 2, 8
+ predef_jump ReplaceTileBlock
+
+CeladonGameCornerScript_48c07:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wGameCornerCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+GameCorner_ScriptPointers:
+ dw CeladonGameCornerScript0
+ dw CeladonGameCornerScript1
+ dw CeladonGameCornerScript2
+
+CeladonGameCornerScript0:
+ ret
+
+CeladonGameCornerScript1:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, CeladonGameCornerScript_48c07
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $b
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_48c5a
+ ld a, [wYCoord]
+ cp $6
+ jr nz, .asm_48c43
+ ld de, MovementData_48c63
+ jr .asm_48c4d
+.asm_48c43
+ ld a, [wXCoord]
+ cp $8
+ jr nz, .pikachu
+ ld de, MovementData_48c63
+ jr .asm_48c4d
+.pikachu
+ callab Func_f1f23
+ ld de, MovementData_48c5a
+.asm_48c4d
+ ld a, $b
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $2
+ ld [wGameCornerCurScript], a
+ ret
+
+MovementData_48c5a:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
+
+MovementData_48c63:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
+
+CeladonGameCornerScript2:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, HS_GAME_CORNER_ROCKET
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ set 6, [hl]
+ ld a, $0
+ ld [wGameCornerCurScript], a
+ ret
+
+GameCorner_TextPointers:
+ dw CeladonGameCornerText1
+ dw CeladonGameCornerText2
+ dw CeladonGameCornerText3
+ dw CeladonGameCornerText4
+ dw CeladonGameCornerText5
+ dw CeladonGameCornerText6
+ dw CeladonGameCornerText7
+ dw CeladonGameCornerText8
+ dw CeladonGameCornerText9
+ dw CeladonGameCornerText10
+ dw CeladonGameCornerText11
+ dw CeladonGameCornerText12
+ dw CeladonGameCornerText13
+
+CeladonGameCornerText1:
+ TX_FAR _CeladonGameCornerText1
+ db "@"
+
+CeladonGameCornerText2:
+ TX_ASM
+ call CeladonGameCornerScript_48f1e
+ ld hl, CeladonGameCornerText_48d22
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_48d0f
+ ld b, COIN_CASE
+ call IsItemInBag
+ jr z, .asm_48d19
+ call Has9990Coins
+ jr nc, .asm_48d14
+ xor a
+ ld [hMoney], a
+ ld [hMoney + 2], a
+ ld a, $10
+ ld [hMoney + 1], a
+ call HasEnoughMoney
+ jr nc, .asm_48cdb
+ ld hl, CeladonGameCornerText_48d31
+ jr .asm_48d1c
+.asm_48cdb
+ xor a
+ ld [hMoney], a
+ ld [hMoney + 2], a
+ ld a, $10
+ ld [hMoney + 1], a
+ ld hl, hMoney + 2
+ ld de, wPlayerMoney + 2
+ ld c, $3
+ predef SubBCDPredef
+ xor a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
+ ld a, $50
+ ld [hCoins + 1], a
+ ld de, wPlayerCoins + 1
+ ld hl, hCoins + 1
+ ld c, $2
+ predef AddBCDPredef
+ call CeladonGameCornerScript_48f1e
+ ld hl, CeladonGameCornerText_48d27
+ jr .asm_48d1c
+.asm_48d0f
+ ld hl, CeladonGameCornerText_48d2c
+ jr .asm_48d1c
+.asm_48d14
+ ld hl, CeladonGameCornerText_48d36
+ jr .asm_48d1c
+.asm_48d19
+ ld hl, CeladonGameCornerText_48d3b
+.asm_48d1c
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48d22:
+ TX_FAR _CeladonGameCornerText_48d22
+ db "@"
+
+CeladonGameCornerText_48d27:
+ TX_FAR _CeladonGameCornerText_48d27
+ db "@"
+
+CeladonGameCornerText_48d2c:
+ TX_FAR _CeladonGameCornerText_48d2c
+ db "@"
+
+CeladonGameCornerText_48d31:
+ TX_FAR _CeladonGameCornerText_48d31
+ db "@"
+
+CeladonGameCornerText_48d36:
+ TX_FAR _CeladonGameCornerText_48d36
+ db "@"
+
+CeladonGameCornerText_48d3b:
+ TX_FAR _CeladonGameCornerText_48d3b
+ db "@"
+
+CeladonGameCornerText3:
+ TX_FAR _CeladonGameCornerText3
+ db "@"
+
+CeladonGameCornerText4:
+ TX_FAR _CeladonGameCornerText4
+ db "@"
+
+CeladonGameCornerText5:
+ TX_ASM
+ CheckEvent EVENT_GOT_10_COINS
+ jr nz, .asm_48d89
+ ld hl, CeladonGameCornerText_48d9c
+ call PrintText
+ ld b, COIN_CASE
+ call IsItemInBag
+ jr z, .asm_48d93
+ call Has9990Coins
+ jr nc, .asm_48d8e
+ xor a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
+ ld a, $10
+ ld [hCoins + 1], a
+ ld de, wPlayerCoins + 1
+ ld hl, hCoins + 1
+ ld c, $2
+ predef AddBCDPredef
+ SetEvent EVENT_GOT_10_COINS
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, Received10CoinsText
+ jr .asm_48d96
+.asm_48d89
+ ld hl, CeladonGameCornerText_48dac
+ jr .asm_48d96
+.asm_48d8e
+ ld hl, CeladonGameCornerText_48da7
+ jr .asm_48d96
+.asm_48d93
+ ld hl, CeladonGameCornerText_48f19
+.asm_48d96
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48d9c:
+ TX_FAR _CeladonGameCornerText_48d9c
+ db "@"
+
+Received10CoinsText:
+ TX_FAR _Received10CoinsText
+ TX_SFX_ITEM_1
+ db "@"
+
+CeladonGameCornerText_48da7:
+ TX_FAR _CeladonGameCornerText_48da7
+ db "@"
+
+CeladonGameCornerText_48dac:
+ TX_FAR _CeladonGameCornerText_48dac
+ db "@"
+
+CeladonGameCornerText6:
+ TX_FAR _CeladonGameCornerText6
+ db "@"
+
+CeladonGameCornerText7:
+ TX_ASM
+ CheckEvent EVENT_BEAT_ERIKA
+ ld hl, CeladonGameCornerText_48dca
+ jr z, .asm_48dc4
+ ld hl, CeladonGameCornerText_48dcf
+.asm_48dc4
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48dca:
+ TX_FAR _CeladonGameCornerText_48dca
+ db "@"
+
+CeladonGameCornerText_48dcf:
+ TX_FAR _CeladonGameCornerText_48dcf
+ db "@"
+
+CeladonGameCornerText8:
+ TX_FAR _CeladonGameCornerText8
+ db "@"
+
+CeladonGameCornerText9:
+ TX_ASM
+ CheckEvent EVENT_GOT_20_COINS_2
+ jr nz, .asm_48e13
+ ld hl, CeladonGameCornerText_48e26
+ call PrintText
+ ld b, COIN_CASE
+ call IsItemInBag
+ jr z, .asm_48e1d
+ call Has9990Coins
+ jr nc, .asm_48e18
+ xor a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
+ ld a, $20
+ ld [hCoins + 1], a
+ ld de, wPlayerCoins + 1
+ ld hl, hCoins + 1
+ ld c, $2
+ predef AddBCDPredef
+ SetEvent EVENT_GOT_20_COINS_2
+ ld hl, Received20CoinsText
+ jr .asm_48e20
+.asm_48e13
+ ld hl, CeladonGameCornerText_48e36
+ jr .asm_48e20
+.asm_48e18
+ ld hl, CeladonGameCornerText_48e31
+ jr .asm_48e20
+.asm_48e1d
+ ld hl, CeladonGameCornerText_48f19
+.asm_48e20
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48e26:
+ TX_FAR _CeladonGameCornerText_48e26
+ db "@"
+
+Received20CoinsText:
+ TX_FAR _Received20CoinsText
+ TX_SFX_ITEM_1
+ db "@"
+
+CeladonGameCornerText_48e31:
+ TX_FAR _CeladonGameCornerText_48e31
+ db "@"
+
+CeladonGameCornerText_48e36:
+ TX_FAR _CeladonGameCornerText_48e36
+ db "@"
+
+CeladonGameCornerText10:
+ TX_ASM
+ CheckEvent EVENT_GOT_20_COINS
+ jr nz, .asm_48e75
+ ld hl, CeladonGameCornerText_48e88
+ call PrintText
+ ld b, COIN_CASE
+ call IsItemInBag
+ jr z, .asm_48e7f
+ call Has9990Coins
+ jr z, .asm_48e7a
+ xor a
+ ld [hUnusedCoinsByte], a
+ ld [hCoins], a
+ ld a, $20
+ ld [hCoins + 1], a
+ ld de, wPlayerCoins + 1
+ ld hl, hCoins + 1
+ ld c, $2
+ predef AddBCDPredef
+ SetEvent EVENT_GOT_20_COINS
+ ld hl, CeladonGameCornerText_48e8d
+ jr .asm_48e82
+.asm_48e75
+ ld hl, CeladonGameCornerText_48e98
+ jr .asm_48e82
+.asm_48e7a
+ ld hl, CeladonGameCornerText_48e93
+ jr .asm_48e82
+.asm_48e7f
+ ld hl, CeladonGameCornerText_48f19
+.asm_48e82
+ call PrintText
+ jp TextScriptEnd
+
+CeladonGameCornerText_48e88:
+ TX_FAR _CeladonGameCornerText_48e88
+ db "@"
+
+CeladonGameCornerText_48e8d:
+ TX_FAR _CeladonGameCornerText_48e8d
+ TX_SFX_ITEM_1
+ db "@"
+
+CeladonGameCornerText_48e93:
+ TX_FAR _CeladonGameCornerText_48e93
+ db "@"
+
+CeladonGameCornerText_48e98:
+ TX_FAR _CeladonGameCornerText_48e98
+ db "@"
+
+CeladonGameCornerText11:
+ TX_ASM
+ ld hl, CeladonGameCornerText_48ece
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, CeladonGameCornerText_48ed3
+ ld de, CeladonGameCornerText_48ed3
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ld [hJoyHeld], a
+ ld [hJoyPressed], a
+ ld [hJoyReleased], a
+ ld a, $1
+ ld [wGameCornerCurScript], a
+ jp TextScriptEnd
+
+CeladonGameCornerText_48ece:
+ TX_FAR _CeladonGameCornerText_48ece
+ db "@"
+
+CeladonGameCornerText_48ed3:
+ TX_FAR _CeladonGameCornerText_48ed3
+ db "@"
+
+CeladonGameCornerText13:
+ TX_FAR _CeladonGameCornerText_48ed8
+ db "@"
+
+CeladonGameCornerText12:
+ TX_ASM
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, CeladonGameCornerText_48f09
+ call PrintText
+ call WaitForSoundToFinish
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ call WaitForSoundToFinish
+ SetEvent EVENT_FOUND_ROCKET_HIDEOUT
+ ld a, $43
+ ld [wNewTileBlockID], a
+ lb bc, 2, 8
+ predef ReplaceTileBlock
+ jp TextScriptEnd
+
+CeladonGameCornerText_48f09:
+ TX_FAR _CeladonGameCornerText_48f09
+ TX_ASM
+ ld a, SFX_SWITCH
+ call PlaySound
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+CeladonGameCornerText_48f19:
+ TX_FAR _CeladonGameCornerText_48f19
+ db "@"
+
+CeladonGameCornerScript_48f1e:
+ ld hl, wd730
+ set 6, [hl]
+ coord hl, 11, 0
+ lb bc, 5, 7
+ call TextBoxBorder
+ call UpdateSprites
+ coord hl, 12, 1
+ lb bc, 4, 7
+ call ClearScreenArea
+ coord hl, 12, 2
+ ld de, GameCornerMoneyText
+ call PlaceString
+ coord hl, 12, 3
+ ld de, GameCornerBlankText1
+ call PlaceString
+ coord hl, 12, 3
+ ld de, wPlayerMoney
+ ld c, 3 | MONEY_SIGN | LEADING_ZEROES
+ call PrintBCDNumber
+ coord hl, 12, 4
+ ld de, GameCornerCoinText
+ call PlaceString
+ coord hl, 12, 5
+ ld de, GameCornerBlankText2
+ call PlaceString
+ coord hl, 15, 5
+ ld de, wPlayerCoins
+ ld c, $82
+ call PrintBCDNumber
+ ld hl, wd730
+ res 6, [hl]
+ ret
+
+GameCornerMoneyText:
+ db "MONEY@"
+
+GameCornerCoinText:
+ db "COIN@"
+
+GameCornerBlankText1:
+ db " @"
+
+GameCornerBlankText2:
+ db " @"
+
+Has9990Coins:
+ ld a, $99
+ ld [hCoins], a
+ ld a, $90
+ ld [hCoins + 1], a
+ jp HasEnoughCoins
diff --git a/scripts/celadongamecorner2.asm b/scripts/GameCorner2.asm
index f8d25905..f8d25905 100755
--- a/scripts/celadongamecorner2.asm
+++ b/scripts/GameCorner2.asm
diff --git a/scripts/GameCornerPrizeRoom.asm b/scripts/GameCornerPrizeRoom.asm
new file mode 100755
index 00000000..e6cf6f0d
--- /dev/null
+++ b/scripts/GameCornerPrizeRoom.asm
@@ -0,0 +1,20 @@
+GameCornerPrizeRoom_Script:
+ jp EnableAutoTextBoxDrawing
+
+GameCornerPrizeRoom_TextPointers:
+ dw CeladonPrizeRoomText1
+ dw CeladonPrizeRoomText2
+ dw CeladonPrizeRoomText3
+ dw CeladonPrizeRoomText3
+ dw CeladonPrizeRoomText3
+
+CeladonPrizeRoomText1:
+ TX_FAR _CeladonPrizeRoomText1
+ db "@"
+
+CeladonPrizeRoomText2:
+ TX_FAR _CeladonPrizeRoomText2
+ db "@"
+
+CeladonPrizeRoomText3:
+ TX_PRIZE_VENDOR
diff --git a/scripts/HallOfFame.asm b/scripts/HallOfFame.asm
new file mode 100755
index 00000000..af424089
--- /dev/null
+++ b/scripts/HallOfFame.asm
@@ -0,0 +1,109 @@
+HallOfFame_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, HallOfFame_ScriptPointers
+ ld a, [wHallOfFameCurScript]
+ jp CallFunctionInTable
+
+HallofFameRoomScript_5a4aa:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wHallOfFameCurScript], a
+ ret
+
+HallOfFame_ScriptPointers:
+ dw HallofFameRoomScript0
+ dw HallofFameRoomScript1
+ dw HallofFameRoomScript2
+ dw HallofFameRoomScript3
+
+HallofFameRoomScript3:
+ ret
+
+HallofFameRoomScript2:
+ call Delay3
+ ld a, [wLetterPrintingDelayFlags]
+ push af
+ xor a
+ ld [wJoyIgnore], a
+ predef HallOfFamePC
+ pop af
+ ld [wLetterPrintingDelayFlags], a
+ ld hl, wFlags_D733
+ res 1, [hl]
+ inc hl
+ set 0, [hl]
+ xor a
+ ld hl, wLoreleisRoomCurScript
+ ld [hli], a ; wLoreleisRoomCurScript
+ ld [hli], a ; wBrunosRoomCurScript
+ ld [hl], a ; wAgathasRoomCurScript
+ ld [wLancesRoomCurScript], a
+ ld [wHallOfFameCurScript], a
+ ; Elite 4 events
+ ResetEventRange ELITE4_EVENTS_START, ELITE4_CHAMPION_EVENTS_END, 1
+ xor a
+ ld [wHallOfFameCurScript], a
+ ld a, PALLET_TOWN
+ ld [wLastBlackoutMap], a
+ callba SaveSAVtoSRAM
+ ld b, 5
+.delayLoop
+ ld c, 600 / 5
+ call DelayFrames
+ dec b
+ jr nz, .delayLoop
+ call WaitForTextScrollButtonPress
+ jp Init
+
+HallofFameRoomScript0:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, RLEMovement5a528
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wHallOfFameCurScript], a
+ ret
+
+RLEMovement5a528:
+ db D_UP,$5
+ db $ff
+
+HallofFameRoomScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ inc a ; PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, HS_CERULEAN_CAVE_GUY
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, $2
+ ld [wHallOfFameCurScript], a
+ ret
+
+HallOfFame_TextPointers:
+ dw HallofFameRoomText1
+
+HallofFameRoomText1:
+ TX_FAR _HallofFameRoomText1
+ db "@"
diff --git a/scripts/IndigoPlateau.asm b/scripts/IndigoPlateau.asm
new file mode 100755
index 00000000..86f38b2a
--- /dev/null
+++ b/scripts/IndigoPlateau.asm
@@ -0,0 +1,4 @@
+IndigoPlateau_Script:
+ ret
+
+IndigoPlateau_TextPointers:
diff --git a/scripts/IndigoPlateauLobby.asm b/scripts/IndigoPlateauLobby.asm
new file mode 100755
index 00000000..d618d155
--- /dev/null
+++ b/scripts/IndigoPlateauLobby.asm
@@ -0,0 +1,42 @@
+IndigoPlateauLobby_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ call EnableAutoTextBoxDrawing
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ResetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
+ ld hl, wBeatLorelei
+ bit 1, [hl]
+ res 1, [hl]
+ ret z
+ ; Elite 4 events
+ ResetEventRange ELITE4_EVENTS_START, EVENT_LANCES_ROOM_LOCK_DOOR
+ ret
+
+IndigoPlateauLobby_TextPointers:
+ dw IndigoHealNurseText
+ dw IndigoPlateauLobbyText2
+ dw IndigoPlateauLobbyText3
+ dw IndigoCashierText
+ dw IndigoTradeNurseText
+ dw IndigoPlateauLobbyText6
+
+IndigoHealNurseText:
+ TX_POKECENTER_NURSE
+
+IndigoPlateauLobbyText2:
+ TX_FAR _IndigoPlateauLobbyText2
+ db "@"
+
+IndigoPlateauLobbyText3:
+ TX_FAR _IndigoPlateauLobbyText3
+ db "@"
+
+IndigoTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+IndigoPlateauLobbyText6:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/LancesRoom.asm b/scripts/LancesRoom.asm
new file mode 100755
index 00000000..aec555a3
--- /dev/null
+++ b/scripts/LancesRoom.asm
@@ -0,0 +1,161 @@
+LancesRoom_Script:
+ call LanceShowOrHideEntranceBlocks
+ call EnableAutoTextBoxDrawing
+ ld hl, LanceTrainerHeader0
+ ld de, LancesRoom_ScriptPointers
+ ld a, [wLancesRoomCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wLancesRoomCurScript], a
+ ret
+
+LanceShowOrHideEntranceBlocks:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_LANCES_ROOM_LOCK_DOOR
+ jr nz, .closeEntrance
+ ; open entrance
+ ld a, $31
+ ld b, $32
+ jp .LanceSetEntranceBlocks
+
+.closeEntrance
+ ld a, $72
+ ld b, $73
+.LanceSetEntranceBlocks
+; Replaces the tile blocks so the player can't leave.
+ push bc
+ ld [wNewTileBlockID], a
+ lb bc, 6, 2
+ call .LanceSetEntranceBlock
+ pop bc
+ ld a, b
+ ld [wNewTileBlockID], a
+ lb bc, 6, 3
+.LanceSetEntranceBlock
+ predef_jump ReplaceTileBlock
+
+ResetLanceScript:
+ xor a
+ ld [wLancesRoomCurScript], a
+ ret
+
+LancesRoom_ScriptPointers:
+ dw LanceScript0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw LanceScript2
+ dw LanceScript3
+ dw LanceScript4
+
+LanceScript4:
+ ret
+
+LanceScript0:
+ CheckEvent EVENT_BEAT_LANCE
+ ret nz
+ ld hl, LanceTriggerMovementCoords
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyHeld], a
+ ld a, [wCoordIndex]
+ cp $3 ; Is player standing next to Lance's sprite?
+ jr nc, .notStandingNextToLance
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+.notStandingNextToLance
+ cp $5 ; Is player standing on the entrance staircase?
+ jr z, WalkToLance
+ CheckAndSetEvent EVENT_LANCES_ROOM_LOCK_DOOR
+ ret nz
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ jp LanceShowOrHideEntranceBlocks
+
+LanceTriggerMovementCoords:
+ db $01,$05
+ db $02,$06
+ db $0B,$05
+ db $0B,$06
+ db $10,$18
+ db $FF
+
+LanceScript2:
+ call EndTrainerBattle
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, ResetLanceScript
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+WalkToLance:
+; Moves the player down the hallway to Lance's room.
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, WalkToLance_RLEList
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wLancesRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+WalkToLance_RLEList:
+ db D_UP, $0D
+ db D_LEFT, $0C
+ db D_DOWN, $07
+ db D_LEFT, $06
+ db $FF
+
+LanceScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wLancesRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+LancesRoom_TextPointers:
+ dw LanceText1
+
+LanceTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_LANCES_ROOM_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_LANCES_ROOM_TRAINER_0
+ dw LanceBeforeBattleText ; TextBeforeBattle
+ dw LanceAfterBattleText ; TextAfterBattle
+ dw LanceEndBattleText ; TextEndBattle
+ dw LanceEndBattleText ; TextEndBattle
+
+ db $ff
+
+LanceText1:
+ TX_ASM
+ ld hl, LanceTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+LanceBeforeBattleText:
+ TX_FAR _LanceBeforeBattleText
+ db "@"
+
+LanceEndBattleText:
+ TX_FAR _LanceEndBattleText
+ db "@"
+
+LanceAfterBattleText:
+ TX_FAR _LanceAfterBattleText
+ TX_ASM
+ SetEvent EVENT_BEAT_LANCE
+ jp TextScriptEnd
diff --git a/scripts/LavenderCuboneHouse.asm b/scripts/LavenderCuboneHouse.asm
new file mode 100755
index 00000000..ff5aa732
--- /dev/null
+++ b/scripts/LavenderCuboneHouse.asm
@@ -0,0 +1,35 @@
+LavenderCuboneHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+LavenderCuboneHouse_TextPointers:
+ dw LavenderHouse2Text1
+ dw LavenderHouse2Text2
+
+LavenderHouse2Text1:
+ TX_FAR _LavenderHouse2Text1
+ TX_ASM
+ ld a, CUBONE
+ call PlayCry
+ jp TextScriptEnd
+
+LavenderHouse2Text2:
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_65711
+ ld hl, LavenderHouse2Text_1d9dc
+ call PrintText
+ jr .asm_64be1
+.asm_65711
+ ld hl, LavenderHouse2Text_1d9e1
+ call PrintText
+.asm_64be1
+ jp TextScriptEnd
+
+LavenderHouse2Text_1d9dc:
+ TX_FAR _LavenderHouse2Text_1d9dc
+ db "@"
+
+LavenderHouse2Text_1d9e1:
+ TX_FAR _LavenderHouse2Text_1d9e1
+ db "@"
diff --git a/scripts/LavenderMart.asm b/scripts/LavenderMart.asm
new file mode 100755
index 00000000..47330e5d
--- /dev/null
+++ b/scripts/LavenderMart.asm
@@ -0,0 +1,32 @@
+LavenderMart_Script:
+ jp EnableAutoTextBoxDrawing
+
+LavenderMart_TextPointers:
+ dw LavenderCashierText
+ dw LavenderMartText2
+ dw LavenderMartText3
+
+LavenderMartText2:
+ TX_FAR _LavenderMartText2
+ db "@"
+
+LavenderMartText3:
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .Nugget
+ ld hl, .ReviveText
+ call PrintText
+ jr .done
+.Nugget
+ ld hl, .NuggetText
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.ReviveText
+ TX_FAR _LavenderMartReviveText
+ db "@"
+
+.NuggetText
+ TX_FAR _LavenderMartNuggetText
+ db "@"
diff --git a/scripts/LavenderPokecenter.asm b/scripts/LavenderPokecenter.asm
new file mode 100755
index 00000000..21270313
--- /dev/null
+++ b/scripts/LavenderPokecenter.asm
@@ -0,0 +1,29 @@
+LavenderPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+LavenderPokecenter_TextPointers:
+ dw LavenderHealNurseText
+ dw LavenderPokecenterText2
+ dw LavenderPokecenterText3
+ dw LavenderTradeNurseText
+ dw LavenderPokecenterText5
+
+LavenderTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+LavenderHealNurseText:
+ TX_POKECENTER_NURSE
+
+LavenderPokecenterText2:
+ TX_FAR _LavenderPokecenterText2
+ db "@"
+
+LavenderPokecenterText3:
+ TX_FAR _LavenderPokecenterText3
+ db "@"
+
+LavenderPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/LavenderTown.asm b/scripts/LavenderTown.asm
new file mode 100755
index 00000000..c23996e9
--- /dev/null
+++ b/scripts/LavenderTown.asm
@@ -0,0 +1,63 @@
+LavenderTown_Script:
+ jp EnableAutoTextBoxDrawing
+
+LavenderTown_TextPointers:
+ dw LavenderTownText1
+ dw LavenderTownText2
+ dw LavenderTownText3
+ dw LavenderTownText4
+ dw LavenderTownText5
+ dw MartSignText
+ dw PokeCenterSignText
+ dw LavenderTownText8
+ dw LavenderTownText9
+
+LavenderTownText1:
+ TX_ASM
+ ld hl, LavenderTownText_4413c
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ ld hl, LavenderTownText_44146
+ jr nz, .asm_40831
+ ld hl, LavenderTownText_44141
+.asm_40831
+ call PrintText
+ jp TextScriptEnd
+
+LavenderTownText_4413c:
+ TX_FAR _LavenderTownText_4413c
+ db "@"
+
+LavenderTownText_44141:
+ TX_FAR _LavenderTownText_44141
+ db "@"
+
+LavenderTownText_44146:
+ TX_FAR _LavenderTownText_44146
+ db "@"
+
+LavenderTownText2:
+ TX_FAR _LavenderTownText2
+ db "@"
+
+LavenderTownText3:
+ TX_FAR _LavenderTownText3
+ db "@"
+
+LavenderTownText4:
+ TX_FAR _LavenderTownText4
+ db "@"
+
+LavenderTownText5:
+ TX_FAR _LavenderTownText5
+ db "@"
+
+LavenderTownText8:
+ TX_FAR _LavenderTownText8
+ db "@"
+
+LavenderTownText9:
+ TX_FAR _LavenderTownText9
+ db "@"
diff --git a/scripts/LoreleisRoom.asm b/scripts/LoreleisRoom.asm
new file mode 100755
index 00000000..81142377
--- /dev/null
+++ b/scripts/LoreleisRoom.asm
@@ -0,0 +1,153 @@
+LoreleisRoom_Script:
+ call LoreleiShowOrHideExitBlock
+ call EnableAutoTextBoxDrawing
+ ld hl, LoreleiTrainerHeader0
+ ld de, LoreleisRoom_ScriptPointers
+ ld a, [wLoreleisRoomCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wLoreleisRoomCurScript], a
+ ret
+
+LoreleiShowOrHideExitBlock:
+; Blocks or clears the exit to the next room.
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, wBeatLorelei
+ set 1, [hl]
+ CheckEvent EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
+ jr z, .blockExitToNextRoom
+ ld a, $5
+ jr .setExitBlock
+.blockExitToNextRoom
+ ld a, $24
+.setExitBlock
+ ld [wNewTileBlockID], a
+ lb bc, 0, 2
+ predef_jump ReplaceTileBlock
+
+ResetLoreleiScript:
+ xor a
+ ld [wLoreleisRoomCurScript], a
+ ret
+
+LoreleisRoom_ScriptPointers:
+ dw LoreleiScript0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw LoreleiScript2
+ dw LoreleiScript3
+ dw LoreleiScript4
+
+LoreleiScript4:
+ ret
+
+LoreleiScriptWalkIntoRoom:
+; Walk six steps upward.
+ ld hl, wSimulatedJoypadStatesEnd
+ ld a, D_UP
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $6
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wLoreleisRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+LoreleiScript0:
+ ld hl, LoreleiEntranceCoords
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyPressed], a
+ ld [hJoyHeld], a
+ ld [wSimulatedJoypadStatesEnd], a
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, [wCoordIndex]
+ cp $3 ; Is player standing one tile above the exit?
+ jr c, .stopPlayerFromLeaving
+ CheckAndSetEvent EVENT_AUTOWALKED_INTO_LORELEIS_ROOM
+ jr z, LoreleiScriptWalkIntoRoom
+.stopPlayerFromLeaving
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID ; "Don't run away!"
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wLoreleisRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+LoreleiEntranceCoords:
+ db $0A,$04
+ db $0A,$05
+ db $0B,$04
+ db $0B,$05
+ db $FF
+
+LoreleiScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wLoreleisRoomCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+LoreleiScript2:
+ call EndTrainerBattle
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, ResetLoreleiScript
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+LoreleisRoom_TextPointers:
+ dw LoreleiText1
+ dw LoreleiDontRunAwayText
+
+LoreleiTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
+ dw LoreleiBeforeBattleText ; TextBeforeBattle
+ dw LoreleiAfterBattleText ; TextAfterBattle
+ dw LoreleiEndBattleText ; TextEndBattle
+ dw LoreleiEndBattleText ; TextEndBattle
+
+ db $ff
+
+LoreleiText1:
+ TX_ASM
+ ld hl, LoreleiTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+LoreleiBeforeBattleText:
+ TX_FAR _LoreleiBeforeBattleText
+ db "@"
+
+LoreleiEndBattleText:
+ TX_FAR _LoreleiEndBattleText
+ db "@"
+
+LoreleiAfterBattleText:
+ TX_FAR _LoreleiAfterBattleText
+ db "@"
+
+LoreleiDontRunAwayText:
+ TX_FAR _LoreleiDontRunAwayText
+ db "@"
diff --git a/scripts/MrFujisHouse.asm b/scripts/MrFujisHouse.asm
new file mode 100755
index 00000000..98190cd8
--- /dev/null
+++ b/scripts/MrFujisHouse.asm
@@ -0,0 +1,112 @@
+MrFujisHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+MrFujisHouse_TextPointers:
+ dw LavenderHouse1Text1
+ dw LavenderHouse1Text2
+ dw LavenderHouse1Text3
+ dw LavenderHouse1Text4
+ dw LavenderHouse1Text5
+ dw LavenderHouse1Text6
+
+LavenderHouse1Text1:
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_72e5d
+ ld hl, LavenderHouse1Text_1d8d1
+ call PrintText
+ jr .asm_6957f
+.asm_72e5d
+ ld hl, LavenderHouse1Text_1d8d6
+ call PrintText
+.asm_6957f
+ jp TextScriptEnd
+
+LavenderHouse1Text_1d8d1:
+ TX_FAR _LavenderHouse1Text_1d8d1
+ db "@"
+
+LavenderHouse1Text_1d8d6:
+ TX_FAR _LavenderHouse1Text_1d8d6
+ db "@"
+
+LavenderHouse1Text2:
+ TX_ASM
+ CheckEvent EVENT_RESCUED_MR_FUJI
+ jr nz, .asm_06470
+ ld hl, LavenderHouse1Text_1d8f4
+ call PrintText
+ jr .asm_3d208
+.asm_06470
+ ld hl, LavenderHouse1Text_1d8f9
+ call PrintText
+.asm_3d208
+ jp TextScriptEnd
+
+LavenderHouse1Text_1d8f4:
+ TX_FAR _LavenderHouse1Text_1d8f4
+ db "@"
+
+LavenderHouse1Text_1d8f9:
+ TX_FAR _LavenderHouse1Text_1d8f9
+ db "@"
+
+LavenderHouse1Text3:
+ TX_FAR _LavenderHouse1Text3
+ TX_ASM
+ ld a, PSYDUCK
+ call PlayCry
+ jp TextScriptEnd
+
+LavenderHouse1Text4:
+ TX_FAR _LavenderHouse1Text4
+ TX_ASM
+ ld a, NIDORINO
+ call PlayCry
+ jp TextScriptEnd
+
+LavenderHouse1Text5:
+ TX_ASM
+ CheckEvent EVENT_GOT_POKE_FLUTE
+ jr nz, .asm_15ac2
+ ld hl, LavenderHouse1Text_1d94c
+ call PrintText
+ lb bc, POKE_FLUTE, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedFluteText
+ call PrintText
+ SetEvent EVENT_GOT_POKE_FLUTE
+ jr .asm_da749
+.BagFull
+ ld hl, FluteNoRoomText
+ call PrintText
+ jr .asm_da749
+.asm_15ac2
+ ld hl, MrFujiAfterFluteText
+ call PrintText
+.asm_da749
+ jp TextScriptEnd
+
+LavenderHouse1Text_1d94c:
+ TX_FAR _LavenderHouse1Text_1d94c
+ db "@"
+
+ReceivedFluteText:
+ TX_FAR _ReceivedFluteText
+ TX_SFX_KEY_ITEM
+ TX_FAR _FluteExplanationText
+ db "@"
+
+FluteNoRoomText:
+ TX_FAR _FluteNoRoomText
+ db "@"
+
+MrFujiAfterFluteText:
+ TX_FAR _MrFujiAfterFluteText
+ db "@"
+
+LavenderHouse1Text6:
+ TX_FAR _LavenderHouse1Text6
+ db "@"
diff --git a/scripts/MrPsychicsHouse.asm b/scripts/MrPsychicsHouse.asm
new file mode 100755
index 00000000..7d4f54c0
--- /dev/null
+++ b/scripts/MrPsychicsHouse.asm
@@ -0,0 +1,45 @@
+MrPsychicsHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+MrPsychicsHouse_TextPointers:
+ dw SaffronHouse2Text1
+
+SaffronHouse2Text1:
+ TX_ASM
+ CheckEvent EVENT_GOT_TM29
+ jr nz, .asm_9e72b
+ ld hl, TM29PreReceiveText
+ call PrintText
+ lb bc, TM_29, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM29Text
+ call PrintText
+ SetEvent EVENT_GOT_TM29
+ jr .asm_fe4e1
+.BagFull
+ ld hl, TM29NoRoomText
+ call PrintText
+ jr .asm_fe4e1
+.asm_9e72b
+ ld hl, TM29ExplanationText
+ call PrintText
+.asm_fe4e1
+ jp TextScriptEnd
+
+TM29PreReceiveText:
+ TX_FAR _TM29PreReceiveText
+ db "@"
+
+ReceivedTM29Text:
+ TX_FAR _ReceivedTM29Text
+ TX_SFX_ITEM_1
+ db "@"
+
+TM29ExplanationText:
+ TX_FAR _TM29ExplanationText
+ db "@"
+
+TM29NoRoomText:
+ TX_FAR _TM29NoRoomText
+ db "@"
diff --git a/scripts/MtMoon1F.asm b/scripts/MtMoon1F.asm
new file mode 100755
index 00000000..cb120420
--- /dev/null
+++ b/scripts/MtMoon1F.asm
@@ -0,0 +1,219 @@
+MtMoon1F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, MtMoon1TrainerHeader0
+ ld de, MtMoon1F_ScriptPointers
+ ld a, [wMtMoon1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wMtMoon1FCurScript], a
+ ret
+
+MtMoon1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+MtMoon1F_TextPointers:
+ dw MtMoon1Text1
+ dw MtMoon1Text2
+ dw MtMoon1Text3
+ dw MtMoon1Text4
+ dw MtMoon1Text5
+ dw MtMoon1Text6
+ dw MtMoon1Text7
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw MtMoon1Text14
+
+MtMoon1TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_0
+ dw MtMoon1BattleText2 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText2 ; TextAfterBattle
+ dw MtMoon1EndBattleText2 ; TextEndBattle
+ dw MtMoon1EndBattleText2 ; TextEndBattle
+
+MtMoon1TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_1
+ dw MtMoon1BattleText3 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText3 ; TextAfterBattle
+ dw MtMoon1EndBattleText3 ; TextEndBattle
+ dw MtMoon1EndBattleText3 ; TextEndBattle
+
+MtMoon1TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_2
+ dw MtMoon1BattleText4 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText4 ; TextAfterBattle
+ dw MtMoon1EndBattleText4 ; TextEndBattle
+ dw MtMoon1EndBattleText4 ; TextEndBattle
+
+MtMoon1TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_3
+ dw MtMoon1BattleText5 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText5 ; TextAfterBattle
+ dw MtMoon1EndBattleText5 ; TextEndBattle
+ dw MtMoon1EndBattleText5 ; TextEndBattle
+
+MtMoon1TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_4
+ dw MtMoon1BattleText6 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText6 ; TextAfterBattle
+ dw MtMoon1EndBattleText6 ; TextEndBattle
+ dw MtMoon1EndBattleText6 ; TextEndBattle
+
+MtMoon1TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_5
+ dw MtMoon1BattleText7 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText7 ; TextAfterBattle
+ dw MtMoon1EndBattleText7 ; TextEndBattle
+ dw MtMoon1EndBattleText7 ; TextEndBattle
+
+MtMoon1TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_6
+ dw MtMoon1BattleText8 ; TextBeforeBattle
+ dw MtMoon1AfterBattleText8 ; TextAfterBattle
+ dw MtMoon1EndBattleText8 ; TextEndBattle
+ dw MtMoon1EndBattleText8 ; TextEndBattle
+
+ db $ff
+
+MtMoon1Text1:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader0
+ jr MtMoon1TalkToTrainer
+
+MtMoon1Text2:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader1
+ jr MtMoon1TalkToTrainer
+
+MtMoon1Text3:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader2
+ jr MtMoon1TalkToTrainer
+
+MtMoon1Text4:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader3
+ jr MtMoon1TalkToTrainer
+
+MtMoon1Text5:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader4
+ jr MtMoon1TalkToTrainer
+
+MtMoon1Text6:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader5
+ jr MtMoon1TalkToTrainer
+
+MtMoon1Text7:
+ TX_ASM
+ ld hl, MtMoon1TrainerHeader6
+MtMoon1TalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon1BattleText2:
+ TX_FAR _MtMoon1BattleText2
+ db "@"
+
+MtMoon1EndBattleText2:
+ TX_FAR _MtMoon1EndBattleText2
+ db "@"
+
+MtMoon1AfterBattleText2:
+ TX_FAR _MtMoon1AfterBattleText2
+ db "@"
+
+MtMoon1BattleText3:
+ TX_FAR _MtMoon1BattleText3
+ db "@"
+
+MtMoon1EndBattleText3:
+ TX_FAR _MtMoon1EndBattleText3
+ db "@"
+
+MtMoon1AfterBattleText3:
+ TX_FAR _MtMoon1AfterBattleText3
+ db "@"
+
+MtMoon1BattleText4:
+ TX_FAR _MtMoon1BattleText4
+ db "@"
+
+MtMoon1EndBattleText4:
+ TX_FAR _MtMoon1EndBattleText4
+ db "@"
+
+MtMoon1AfterBattleText4:
+ TX_FAR _MtMoon1AfterBattleText4
+ db "@"
+
+MtMoon1BattleText5:
+ TX_FAR _MtMoon1BattleText5
+ db "@"
+
+MtMoon1EndBattleText5:
+ TX_FAR _MtMoon1EndBattleText5
+ db "@"
+
+MtMoon1AfterBattleText5:
+ TX_FAR _MtMoon1AfterBattleText5
+ db "@"
+
+MtMoon1BattleText6:
+ TX_FAR _MtMoon1BattleText6
+ db "@"
+
+MtMoon1EndBattleText6:
+ TX_FAR _MtMoon1EndBattleText6
+ db "@"
+
+MtMoon1AfterBattleText6:
+ TX_FAR _MtMoon1AfterBattleText6
+ db "@"
+
+MtMoon1BattleText7:
+ TX_FAR _MtMoon1BattleText7
+ db "@"
+
+MtMoon1EndBattleText7:
+ TX_FAR _MtMoon1EndBattleText7
+ db "@"
+
+MtMoon1AfterBattleText7:
+ TX_FAR _MtMoon1AfterBattleText7
+ db "@"
+
+MtMoon1BattleText8:
+ TX_FAR _MtMoon1BattleText8
+ db "@"
+
+MtMoon1EndBattleText8:
+ TX_FAR _MtMoon1EndBattleText8
+ db "@"
+
+MtMoon1AfterBattleText8:
+ TX_FAR _MtMoon1AfterBattleText8
+ db "@"
+
+MtMoon1Text14:
+ TX_FAR _MtMoon1Text14
+ db "@"
diff --git a/scripts/MtMoonB1F.asm b/scripts/MtMoonB1F.asm
new file mode 100755
index 00000000..779812c3
--- /dev/null
+++ b/scripts/MtMoonB1F.asm
@@ -0,0 +1,10 @@
+MtMoonB1F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+MtMoonB1F_TextPointers:
+ dw MtMoonText1
+
+MtMoonText1:
+ TX_FAR _MtMoonText1
+ db "@"
diff --git a/scripts/MtMoonB2F.asm b/scripts/MtMoonB2F.asm
new file mode 100755
index 00000000..cf4583d3
--- /dev/null
+++ b/scripts/MtMoonB2F.asm
@@ -0,0 +1,673 @@
+MtMoonB2F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, MtMoon3TrainerHeader0
+ ld de, MtMoonB2F_ScriptPointers
+ ld a, [wMtMoonB2FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wMtMoonB2FCurScript], a
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
+ ret z
+ ld hl, CoordsData_49d37
+ call ArePlayerCoordsInArray
+ jr nc, .asm_49d31
+ ld hl, wd72e
+ set 4, [hl]
+ ret
+.asm_49d31
+ ld hl, wd72e
+ res 4, [hl]
+ ret
+
+CoordsData_49d37:
+ db $05,$0B
+ db $05,$0C
+ db $05,$0D
+ db $05,$0E
+ db $06,$0B
+ db $06,$0C
+ db $06,$0D
+ db $06,$0E
+ db $07,$0B
+ db $07,$0C
+ db $07,$0D
+ db $07,$0E
+ db $08,$0B
+ db $08,$0C
+ db $08,$0D
+ db $08,$0E
+ db $FF
+
+MtMoon3Script_49cd7:
+ CheckAndResetEvent EVENT_57E
+ call nz, MtMoon3Script_49cec
+ xor a
+ ld [wJoyIgnore], a
+MtMoon3Script_49ce5:
+ ld [wMtMoonB2FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+MtMoon3Script_49cec:
+ ld a, HS_MT_MOON_B2F_JESSIE
+ call MtMoon3Script_49f93
+ ld a, HS_MT_MOON_B2F_JAMES
+ call MtMoon3Script_49f93
+ ret
+
+MtMoonB2F_ScriptPointers:
+ dw MtMoon3Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw MtMoon3Script3
+ dw MtMoon3Script4
+ dw MtMoon3Script5
+ dw MtMoon3Script6
+ dw MtMoon3Script7
+ dw MtMoon3Script8
+ dw MtMoon3Script9
+ dw MtMoon3Script10
+ dw MtMoon3Script11
+ dw MtMoon3Script12
+ dw MtMoon3Script13
+ dw MtMoon3Script14
+ dw MtMoon3Script15
+
+MtMoon3Script0:
+ CheckEitherEventSet EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
+ call z, MtMoon3Script_49d28
+ CheckEvent EVENT_BEAT_MT_MOON_3_TRAINER_0
+ call z, MtMoon3Script_49e15
+ ret
+
+MtMoon3Script_49d28:
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
+ jp nz, .asm_49d4b
+ ld a, [wYCoord]
+ cp $8
+ jp nz, .asm_49d4b
+ ld a, [wXCoord]
+ cp $d
+ jp nz, .asm_49d4b
+ xor a
+ ld [hJoyHeld], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ret
+
+.asm_49d4b
+ CheckEitherEventSet EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
+ jp z, CheckFightingMapTrainers
+ ret
+
+MtMoon3Script3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, MtMoon3Script_49cd7
+ call UpdateSprites
+ call Delay3
+ SetEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script4:
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld hl, CoordsData_49dc7
+ call ArePlayerCoordsInArray
+ jr c, .asm_49da8
+ ld hl, CoordsData_49dc0
+ call ArePlayerCoordsInArray
+ jr c, .asm_49db0
+ ld hl, CoordsData_49dd5
+ call ArePlayerCoordsInArray
+ jr c, .asm_49d9b
+ ld hl, CoordsData_49dce
+ call ArePlayerCoordsInArray
+ jr c, .asm_49da3
+ jp CheckFightingMapTrainers
+
+.asm_49d9b
+ ld b, SPRITE_FACING_LEFT
+ ld hl, PikachuMovementData_49dd8
+ call MtMoon3Script_4a325
+.asm_49da3
+ ld de, MovementData_49ddd
+ jr .asm_49db3
+
+.asm_49da8
+ ld b, SPRITE_FACING_RIGHT
+ ld hl, PikachuMovementData_49dca
+ call MtMoon3Script_4a325
+.asm_49db0
+ ld de, MovementData_49ddc
+.asm_49db3
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $5
+ call MtMoon3Script_49ce5
+ ret
+
+CoordsData_49dc0:
+ db $07,$0C
+ db $06,$0B
+ db $05,$0C
+ db $FF
+
+CoordsData_49dc7:
+ db $07,$0C
+ db $FF
+
+PikachuMovementData_49dca:
+ db $00
+ db $35
+ db $33
+ db $3f
+
+CoordsData_49dce:
+ db $07,$0D
+ db $06,$0E
+ db $05,$0E
+ db $FF
+
+CoordsData_49dd5:
+ db $07,$0D
+ db $FF
+
+PikachuMovementData_49dd8:
+ db $00
+ db $35
+ db $34
+ db $3f
+
+MovementData_49ddc:
+ db NPC_MOVEMENT_RIGHT
+MovementData_49ddd:
+ db NPC_MOVEMENT_UP
+ db $FF
+
+MtMoon3Script5:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ CheckEvent EVENT_GOT_HELIX_FOSSIL
+ jr z, .asm_49e1d
+ ld a, HS_MT_MOON_B2F_FOSSIL_1
+ jr .asm_49e1f
+.asm_49e1d
+ ld a, HS_MT_MOON_B2F_FOSSIL_2
+.asm_49e1f
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script_49e15:
+ ld a, [wXCoord]
+ cp $3
+ ret nz
+ ld a, [wYCoord]
+ cp $5
+ ret nz
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ xor a
+ ld [hJoyHeld], a
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, HS_MT_MOON_B2F_JESSIE
+ call MtMoon3Script_49f84
+ ld a, HS_MT_MOON_B2F_JAMES
+ call MtMoon3Script_49f84
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $c
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $6
+ call MtMoon3Script_49ce5
+ ret
+
+MovementData_f9e65:
+ db $06
+MovementData_f9e66:
+ db $06
+ db $06
+ db $06
+ db $06
+ db $06
+ db $FF
+
+MtMoon3Script6:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld de, MovementData_f9e65
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $7
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script7:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+MtMoon3Script8:
+ ld a, $2
+ ld [wSpriteStateData1 + 2 * $10 + 1], a
+ ld a, SPRITE_FACING_DOWN
+ ld [wSpriteStateData1 + 2 * $10 + 9], a
+MtMoon3Script9:
+ ld a, $6
+ ld [H_SPRITEINDEX], a
+ ld de, MovementData_f9e66
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $a
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script10:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+MtMoon3Script11:
+ ld a, $2
+ ld [wSpriteStateData1 + 6 * $10 + 1], a
+ ld a, SPRITE_FACING_LEFT
+ ld [wSpriteStateData1 + 6 * $10 + 9], a
+ call Delay3
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+MtMoon3Script12:
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, MtMoon3JessieJamesEndBattleText
+ ld de, MtMoon3JessieJamesEndBattleText
+ call SaveEndBattleTextPointers
+ ld a, OPP_ROCKET
+ ld [wCurOpponent], a
+ ld a, $2a
+ ld [wTrainerNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ SetEvent EVENT_57E
+ ld a, $d
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script13:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, MtMoon3Script_49cd7
+ ld a, $2
+ ld [wSpriteStateData1 + 2 * $10 + 1], a
+ ld [wSpriteStateData1 + 6 * $10 + 1], a
+ xor a
+ ld [wSpriteStateData1 + 2 * $10 + 9], a
+ ld [wSpriteStateData1 + 6 * $10 + 9], a
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $e
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $e
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script14:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ call GBFadeOutToBlack
+ ld a, HS_MT_MOON_B2F_JESSIE
+ call MtMoon3Script_49f93
+ ld a, HS_MT_MOON_B2F_JAMES
+ call MtMoon3Script_49f93
+ call UpdateSprites
+ call Delay3
+ call GBFadeInFromBlack
+ ld a, $f
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script15:
+ call PlayDefaultMusic
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_MT_MOON_3_TRAINER_0
+ ResetEventReuseHL EVENT_57E
+ ld a, $0
+ call MtMoon3Script_49ce5
+ ret
+
+MtMoon3Script_49f84:
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ call UpdateSprites
+ call Delay3
+ ret
+
+MtMoon3Script_49f93:
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ret
+
+MtMoonB2F_TextPointers:
+ dw MtMoon3Text1
+ dw MtMoon3Text2
+ dw MtMoon3Text3
+ dw MtMoon3Text4
+ dw MtMoon3Text5
+ dw MtMoon3Text6
+ dw MtMoon3Text7
+ dw MtMoon3Text8
+ dw PickUpItemText
+ dw PickUpItemText
+ dw MtMoon3Text11
+ dw MtMoon3Text12
+ dw MtMoon3Text13
+ dw MtMoon3Text14
+
+MtMoon3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_1
+ db ($4 << 4)
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_1
+ dw MtMoon3BattleText3
+ dw MtMoon3AfterBattleText3
+ dw MtMoon3EndBattleText3
+ dw MtMoon3EndBattleText3
+
+MtMoon3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_2
+ db ($4 << 4)
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_2
+ dw MtMoon3BattleText4
+ dw MtMoon3AfterBattleText4
+ dw MtMoon3EndBattleText4
+ dw MtMoon3EndBattleText4
+
+MtMoon3TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_3
+ db ($4 << 4)
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_3
+ dw MtMoon3BattleText5
+ dw MtMoon3AfterBattleText5
+ dw MtMoon3EndBattleText5
+ dw MtMoon3EndBattleText5
+
+ db $FF
+
+MtMoon3Text2:
+MtMoon3Text6:
+ db "@"
+
+MtMoon3Text12:
+ TX_FAR _MtMoonJessieJamesText1
+ TX_ASM
+ ld c, 10
+ call DelayFrames
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ ld a, $0
+ ld [wEmotionBubbleSpriteIndex], a
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld c, 20
+ call DelayFrames
+ jp TextScriptEnd
+
+MtMoon3Text13:
+ TX_FAR _MtMoonJessieJamesText2
+ db "@"
+
+MtMoon3JessieJamesEndBattleText:
+ TX_FAR _MtMoonJessieJamesText3
+ db "@"
+
+MtMoon3Text14:
+ TX_FAR _MtMoonJessieJamesText4
+ TX_ASM
+ ld c, 64
+ call DelayFrames
+ jp TextScriptEnd
+
+MtMoon3Text1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
+ jr z, .asm_4a02f
+ ; CheckEitherEventSetReuseA EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
+ and (1 << (EVENT_GOT_DOME_FOSSIL % 8)) | (1 << (EVENT_GOT_HELIX_FOSSIL % 8))
+ jr nz, .asm_4a057
+ ld hl, MtMoon3Text_4a116
+ call PrintText
+ jr .asm_4a05d
+
+.asm_4a02f
+ ld hl, MtMoon3Text_4a10c
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, MtMoon3SuperNerdEndBattleText
+ ld de, MtMoon3SuperNerdEndBattleText
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ call MtMoon3Script_49ce5
+ jr .asm_4a05d
+
+.asm_4a057
+ ld hl, MtMoon3Text_4a11b
+ call PrintText
+.asm_4a05d
+ jp TextScriptEnd
+
+MtMoon3Text3:
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader0
+ jr MtMoon3TalkToTrainer
+
+MtMoon3Text4:
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader1
+ jr MtMoon3TalkToTrainer
+
+
+MtMoon3Text5:
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader2
+MtMoon3TalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MtMoon3Text7:
+ TX_ASM
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, MtMoon3Text_4a0ae
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_4a0ab
+ lb bc, DOME_FOSSIL, 1
+ call GiveItem
+ jp nc, MtMoon3Script_4a0fd
+ call MtMoon3Script_4a0f0
+ ld a, HS_MT_MOON_B2F_FOSSIL_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ SetEvent EVENT_GOT_DOME_FOSSIL
+ ld a, $4
+ call MtMoon3Script_49ce5
+.asm_4a0ab
+ jp TextScriptEnd
+
+MtMoon3Text_4a0ae:
+ TX_FAR _MtMoon3Text_49f24
+ db "@"
+
+MtMoon3Text8:
+ TX_ASM
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, MtMoon3Text_4a0eb
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_4a0e8
+ lb bc, HELIX_FOSSIL, 1
+ call GiveItem
+ jp nc, MtMoon3Script_4a0fd
+ call MtMoon3Script_4a0f0
+ ld a, HS_MT_MOON_B2F_FOSSIL_2
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ SetEvent EVENT_GOT_HELIX_FOSSIL
+ ld a, $4
+ call MtMoon3Script_49ce5
+.asm_4a0e8
+ jp TextScriptEnd
+
+MtMoon3Text_4a0eb:
+ TX_FAR _MtMoon3Text_49f64
+ db "@"
+
+MtMoon3Script_4a0f0:
+ ld hl, MtMoon3Text_4a0f6
+ jp PrintText
+
+MtMoon3Text_4a0f6:
+ TX_FAR _MtMoon3Text_49f6f
+ TX_SFX_KEY_ITEM
+ TX_WAIT
+ db "@"
+
+MtMoon3Script_4a0fd:
+ ld hl, MtMoon3Text_4a106
+ call PrintText
+ jp TextScriptEnd
+
+MtMoon3Text_4a106:
+ TX_FAR _MtMoon3Text_49f7f
+ TX_WAIT
+ db "@"
+
+MtMoon3Text_4a10c:
+ TX_FAR _MtMoon3Text_49f85
+ db "@"
+
+MtMoon3SuperNerdEndBattleText:
+ TX_FAR _MtMoon3Text_49f8a
+ db "@"
+
+MtMoon3Text_4a116:
+ TX_FAR _MtMoon3Text_49f8f
+ db "@"
+
+MtMoon3Text_4a11b:
+ TX_FAR _MtMoon3Text_49f94
+ db "@"
+
+MtMoon3Text11:
+ TX_FAR _MtMoon3Text_49f99
+ TX_SFX_KEY_ITEM
+ db "@"
+
+MtMoon3BattleText3:
+ TX_FAR _MtMoon3BattleText3
+ db "@"
+
+MtMoon3EndBattleText3:
+ TX_FAR _MtMoon3EndBattleText3
+ db "@"
+
+MtMoon3AfterBattleText3:
+ TX_FAR _MtMoon3AfterBattleText3
+ db "@"
+
+MtMoon3BattleText4:
+ TX_FAR _MtMoon3BattleText4
+ db "@"
+
+MtMoon3EndBattleText4:
+ TX_FAR _MtMoon3EndBattleText4
+ db "@"
+
+MtMoon3AfterBattleText4:
+ TX_FAR _MtMoon3AfterBattleText4
+ db "@"
+
+MtMoon3BattleText5:
+ TX_FAR _MtMoon3BattleText5
+ db "@"
+
+MtMoon3EndBattleText5:
+ TX_FAR _MtMoon3EndBattleText5
+ db "@"
+
+MtMoon3AfterBattleText5:
+ TX_FAR _MtMoon3AfterBattleText5
+ db "@"
+
diff --git a/scripts/mtmoon3_2.asm b/scripts/MtMoonB2F_2.asm
index c6ec92b4..c6ec92b4 100755
--- a/scripts/mtmoon3_2.asm
+++ b/scripts/MtMoonB2F_2.asm
diff --git a/scripts/MtMoonPokecenter.asm b/scripts/MtMoonPokecenter.asm
new file mode 100755
index 00000000..77386109
--- /dev/null
+++ b/scripts/MtMoonPokecenter.asm
@@ -0,0 +1,40 @@
+MtMoonPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+MtMoonPokecenter_TextPointers:
+ dw MtMoonHealNurseText
+ dw MtMoonPokecenterText2
+ dw MtMoonPokecenterText3
+ dw MagikarpSalesmanText
+ dw MtMoonPokecenterText5
+ dw MtMoonTradeNurseText
+ dw MtMoonPokecenterText7
+
+MtMoonHealNurseText:
+ TX_POKECENTER_NURSE
+
+MtMoonPokecenterText2:
+ TX_FAR _MtMoonPokecenterText1
+ db "@"
+
+MtMoonPokecenterText3:
+ TX_FAR _MtMoonPokecenterText3
+ db "@"
+
+MagikarpSalesmanText:
+ TX_ASM
+ callab MagikarpSalesman
+ jp TextScriptEnd
+
+MtMoonPokecenterText5:
+ TX_FAR _MtMoonPokecenterText5
+ db "@"
+
+MtMoonTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+MtMoonPokecenterText7:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/mtmoonpokecenter2.asm b/scripts/MtMoonPokecenter2.asm
index 6097342b..6097342b 100755
--- a/scripts/mtmoonpokecenter2.asm
+++ b/scripts/MtMoonPokecenter2.asm
diff --git a/scripts/Museum1F.asm b/scripts/Museum1F.asm
new file mode 100755
index 00000000..fdae9293
--- /dev/null
+++ b/scripts/Museum1F.asm
@@ -0,0 +1,65 @@
+Museum1F_Script:
+ ld a, $1
+ ld [wAutoTextBoxDrawingControl], a
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, Museum1F_ScriptPointers
+ ld a, [wMuseum1FCurScript]
+ call CallFunctionInTable
+ ret
+
+Museum1F_ScriptPointers:
+ dw Museum1FScript0
+ dw Museum1FScript1
+
+Museum1FScript0:
+ ld a, [wYCoord]
+ cp $4
+ ret nz
+ ld a, [wXCoord]
+ cp $9
+ jr z, .asm_5c120
+ ld a, [wXCoord]
+ cp $a
+ ret nz
+.asm_5c120
+ xor a
+ ld [hJoyHeld], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+Museum1FScript1:
+ ret
+
+Museum1F_TextPointers:
+ dw Museum1FText1
+ dw Museum1FText2
+ dw Museum1FText3
+ dw Museum1FText4
+ dw Museum1FText5
+
+Museum1FText1:
+ TX_ASM
+ callba Func_f1c1b
+ jp TextScriptEnd
+
+Museum1FText2:
+ TX_ASM
+ callba Func_f1d2a
+ jp TextScriptEnd
+
+Museum1FText3:
+ TX_ASM
+ callba Func_f1d36
+ jp TextScriptEnd
+
+Museum1FText4:
+ TX_ASM
+ callba Func_f1d80
+ jp TextScriptEnd
+
+Museum1FText5:
+ TX_ASM
+ callba Func_f1d8c
+ jp TextScriptEnd
diff --git a/scripts/Museum1F2.asm b/scripts/Museum1F2.asm
new file mode 100755
index 00000000..9b3df420
--- /dev/null
+++ b/scripts/Museum1F2.asm
@@ -0,0 +1,211 @@
+Func_f1c1b:
+ ld a, [wYCoord]
+ cp $4
+ jr nz, .asm_f1c2c
+ ld a, [wXCoord]
+ cp $d
+ jp z, .asm_f1cde
+ jr .asm_f1c48
+
+.asm_f1c2c
+ cp $3
+ jr nz, .asm_f1c38
+ ld a, [wXCoord]
+ cp a, $c
+ jp z, .asm_f1cde
+.asm_f1c38
+ CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
+ jr nz, .asm_f1c4f
+ ld hl, Museum1FText_f1d20
+ call PrintText
+ jp .asm_f1cfc
+
+.asm_f1c48
+ CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
+ jr z, .asm_f1c58
+.asm_f1c4f
+ ld hl, Museum1FText_f1d25
+ call PrintText
+ jp .asm_f1cfc
+
+.asm_f1c58
+ ld a, $13
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ xor a
+ ld [hJoyHeld], a
+ ld hl, Museum1FText_f1d02
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_f1cbf
+ xor a
+ ld [hMoney], a
+ ld [hMoney + 1], a
+ ld a, $50
+ ld [hMoney + 2], a
+ call HasEnoughMoney
+ jr nc, .asm_f1c89
+ ld hl, Museum1FText_f1d0c
+ call PrintText
+ jp .asm_f1cbf
+
+.asm_f1c89
+ ld hl, Museum1FText_f1d07
+ call PrintText
+ SetEvent EVENT_BOUGHT_MUSEUM_TICKET
+ xor a
+ ld [wPriceTemp], a
+ ld [wPriceTemp + 1], a
+ ld a, $50
+ ld [wPriceTemp + 2], a
+ ld hl, wPriceTemp + 2
+ ld de, wPlayerMoney + 2
+ ld c, 3
+ predef SubBCDPredef
+ ld a, $13
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ ld a, SFX_PURCHASE
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ jr .asm_f1cd7
+
+.asm_f1cbf
+ ld hl, Museum1FText_f1cfd
+ call PrintText
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ call UpdateSprites
+ jr .asm_f1cfc
+
+.asm_f1cd7
+ ld a, $1
+ ld [wMuseum1FCurScript], a
+ jr .asm_f1cfc
+
+.asm_f1cde
+ ld hl, Museum1FText_f1d11
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ cp 0
+ jr nz, .asm_f1cf6
+ ld hl, Museum1FText_f1d16
+ call PrintText
+ jr .asm_f1cfc
+
+.asm_f1cf6
+ ld hl, Museum1FText_f1d1b
+ call PrintText
+.asm_f1cfc
+ ret
+
+Museum1FText_f1cfd:
+ TX_FAR _Museum1FText_5c21a
+ db "@"
+
+Museum1FText_f1d02:
+ TX_FAR _Museum1FText_5c21f
+ db "@"
+
+Museum1FText_f1d07:
+ TX_FAR _Museum1FText_5c224
+ db "@"
+
+Museum1FText_f1d0c:
+ TX_FAR _Museum1FText_5c229
+ db "@"
+
+Museum1FText_f1d11:
+ TX_FAR _Museum1FText_5c22e
+ db "@"
+
+Museum1FText_f1d16:
+ TX_FAR _Museum1FText_5c233
+ db "@"
+
+Museum1FText_f1d1b:
+ TX_FAR _Museum1FText_5c238
+ db "@"
+
+Museum1FText_f1d20:
+ TX_FAR _Museum1FText_5c23d
+ db "@"
+
+Museum1FText_f1d25:
+ TX_FAR _Museum1FText_5c242
+ db "@"
+
+Func_f1d2a:
+ ld hl, Museum1FText_f1d31
+ call PrintText
+ ret
+
+Museum1FText_f1d31:
+ TX_FAR _Museum1FText_5c251
+ db "@"
+
+Func_f1d36:
+ CheckEvent EVENT_GOT_OLD_AMBER
+ jr nz, .asm_f1d64
+ ld hl, Museum1FText_f1d6b
+ call PrintText
+ lb bc, OLD_AMBER, 1
+ call GiveItem
+ jr nc, .asm_f1d5f
+ SetEvent EVENT_GOT_OLD_AMBER
+ ld a, HS_OLD_AMBER
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld hl, Museum1FText_f1d70
+ jr .asm_f1d67
+
+.asm_f1d5f
+ ld hl, Museum1FText_f1d7b
+ jr .asm_f1d67
+
+.asm_f1d64
+ ld hl, Museum1FText_f1d76
+.asm_f1d67
+ call PrintText
+ ret
+
+Museum1FText_f1d6b:
+ TX_FAR _Museum1FText_5c28e
+ db "@"
+
+Museum1FText_f1d70:
+ TX_FAR _ReceivedOldAmberText
+ TX_SFX_ITEM_1
+ db "@"
+
+Museum1FText_f1d76:
+ TX_FAR _Museum1FText_5c299
+ db "@"
+
+Museum1FText_f1d7b:
+ TX_FAR _Museum1FText_5c29e
+ db "@"
+
+Func_f1d80:
+ ld hl, Museum1FText_f1d87
+ call PrintText
+ ret
+
+Museum1FText_f1d87:
+ TX_FAR _Museum1FText_5c2ad
+ db "@"
+
+Func_f1d8c:
+ ld hl, Museum1FText_f1d93
+ call PrintText
+ ret
+
+Museum1FText_f1d93:
+ TX_FAR _Museum1FText_5c2bc
+ db "@"
diff --git a/scripts/Museum2F.asm b/scripts/Museum2F.asm
new file mode 100755
index 00000000..e97b8ded
--- /dev/null
+++ b/scripts/Museum2F.asm
@@ -0,0 +1,71 @@
+Museum2F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+Museum2F_TextPointers:
+ dw Museum2FText1
+ dw Museum2FText2
+ dw Museum2FText3
+ dw Museum2FText4
+ dw Museum2FText5
+ dw Museum2FText6
+ dw Museum2FText7
+
+Museum2FText1:
+ TX_FAR _Museum2FText1
+ db "@"
+
+Museum2FText2:
+ TX_FAR _Museum2FText2
+ db "@"
+
+Museum2FText3:
+ TX_FAR _Museum2FText3
+ db "@"
+
+Museum2FText4:
+ TX_FAR _Museum2FText4
+ db "@"
+
+Museum2FText5:
+ TX_ASM
+ ld a, [wd472]
+ bit 7, a
+ jr nz, .asm_5c1f6
+ ld hl, Museum2FText_5c20e
+ call PrintText
+ jr .asm_5c20b
+
+.asm_5c1f6
+ ld a, [wPikachuHappiness]
+ cp 101
+ jr c, .asm_5c205
+ ld hl, Museum2FText_5c218
+ call PrintText
+ jr .asm_5c20b
+
+.asm_5c205
+ ld hl, Museum2FText_5c213
+ call PrintText
+.asm_5c20b
+ jp TextScriptEnd
+
+Museum2FText_5c20e:
+ TX_FAR _Museum2FText5
+ db "@"
+
+Museum2FText_5c213:
+ TX_FAR _Museum2FPikachuText1
+ db "@"
+
+Museum2FText_5c218:
+ TX_FAR _Museum2FPikachuText2
+ db "@"
+
+Museum2FText6:
+ TX_FAR _Museum2FText6
+ db "@"
+
+Museum2FText7:
+ TX_FAR _Museum2FText7
+ db "@"
diff --git a/scripts/NameRatersHouse.asm b/scripts/NameRatersHouse.asm
new file mode 100755
index 00000000..323cb360
--- /dev/null
+++ b/scripts/NameRatersHouse.asm
@@ -0,0 +1,107 @@
+NameRatersHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+NameRaterScript_1da15:
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ ret
+
+NameRaterScript_1da20:
+ ld hl, wPartyMonOT
+ ld bc, NAME_LENGTH
+ ld a, [wWhichPokemon]
+ call AddNTimes
+ ld de, wPlayerName
+ ld c, NAME_LENGTH
+ call .asm_1da47
+ jr c, .asm_1da52
+ ld hl, wPartyMon1OTID
+ ld bc, wPartyMon2 - wPartyMon1
+ ld a, [wWhichPokemon]
+ call AddNTimes
+ ld de, wPlayerID
+ ld c, $2
+.asm_1da47
+ ld a, [de]
+ cp [hl]
+ jr nz, .asm_1da52
+ inc hl
+ inc de
+ dec c
+ jr nz, .asm_1da47
+ and a
+ ret
+.asm_1da52
+ scf
+ ret
+
+NameRatersHouse_TextPointers:
+ dw NameRaterText1
+
+NameRaterText1:
+ TX_ASM
+ call SaveScreenTilesToBuffer2
+ ld hl, NameRaterText_1dab3
+ call NameRaterScript_1da15
+ jr nz, .asm_1daae
+ ld hl, NameRaterText_1dab8
+ call PrintText
+ xor a
+ ld [wPartyMenuTypeOrMessageID], a
+ ld [wUpdateSpritesEnabled], a
+ ld [wMenuItemToSwap], a
+ call DisplayPartyMenu
+ push af
+ call GBPalWhiteOutWithDelay3
+ call RestoreScreenTilesAndReloadTilePatterns
+ call LoadGBPal
+ pop af
+ jr c, .asm_1daae
+ call GetPartyMonName2
+ call NameRaterScript_1da20
+ ld hl, NameRaterText_1dad1
+ jr c, .asm_1daa8
+ ld hl, NameRaterText_1dabd
+ call NameRaterScript_1da15
+ jr nz, .asm_1daae
+ ld hl, NameRaterText_1dac2
+ call PrintText
+ callba DisplayNameRaterScreen
+ jr c, .asm_1daae
+ ld hl, NameRaterText_1dac7
+.asm_1daa8
+ call PrintText
+ jp TextScriptEnd
+.asm_1daae
+ ld hl, NameRaterText_1dacc
+ jr .asm_1daa8
+
+NameRaterText_1dab3:
+ TX_FAR _NameRaterText_1dab3
+ db "@"
+
+NameRaterText_1dab8:
+ TX_FAR _NameRaterText_1dab8
+ db "@"
+
+NameRaterText_1dabd:
+ TX_FAR _NameRaterText_1dabd
+ db "@"
+
+NameRaterText_1dac2:
+ TX_FAR _NameRaterText_1dac2
+ db "@"
+
+NameRaterText_1dac7:
+ TX_FAR _NameRaterText_1dac7
+ db "@"
+
+NameRaterText_1dacc:
+ TX_FAR _NameRaterText_1dacc
+ db "@"
+
+NameRaterText_1dad1:
+ TX_FAR _NameRaterText_1dad1
+ db "@"
diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm
new file mode 100755
index 00000000..04f31d2a
--- /dev/null
+++ b/scripts/OaksLab.asm
@@ -0,0 +1,1156 @@
+OaksLab_Script:
+ CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
+ call nz, OaksLabScript_1d076
+ ld a, $1
+ ld [wAutoTextBoxDrawingControl], a
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, OaksLab_ScriptPointers
+ ld a, [wOaksLabCurScript]
+ call CallFunctionInTable
+ ret
+
+OaksLab_ScriptPointers:
+ dw OaksLabScript0
+ dw OaksLabScript1
+ dw OaksLabScript2
+ dw OaksLabScript3
+ dw OaksLabScript4
+ dw OaksLabScript5
+ dw OaksLabScript6
+ dw OaksLabScript7
+ dw OaksLabScript8
+ dw OaksLabScript9
+ dw OaksLabScript10
+ dw OaksLabScript11
+ dw OaksLabScript12
+ dw OaksLabScript13
+ dw OaksLabScript14
+ dw OaksLabScript15
+ dw OaksLabScript16
+ dw OaksLabScript17
+ dw OaksLabScript18
+ dw OaksLabScript19
+ dw OaksLabScript20
+ dw OaksLabScript21
+ dw OaksLabScript22
+
+OaksLabScript0:
+ CheckEvent EVENT_OAK_APPEARED_IN_PALLET
+ ret z
+ ld a, [wNPCMovementScriptFunctionNum]
+ and a
+ ret nz
+ ld a, HS_OAKS_LAB_OAK_2
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld hl, wd72e
+ res 4, [hl]
+
+ ld a, $1
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript1:
+ ld a, $6
+ ld [H_SPRITEINDEX], a
+ ld de, OakEntryMovement
+ call MoveSprite
+
+ ld a, $2
+ ld [wOaksLabCurScript], a
+ ret
+
+OakEntryMovement:
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
+
+OaksLabScript2:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_OAKS_LAB_OAK_2
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_OAKS_LAB_OAK_1
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+
+ ld a, $3
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript3:
+ call Delay3
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, PlayerEntryMovementRLE
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ xor a
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $3
+ ld [H_SPRITEINDEX], a
+ xor a
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+
+ ld a, $4
+ ld [wOaksLabCurScript], a
+ ret
+
+PlayerEntryMovementRLE:
+ db D_UP,$8
+ db $ff
+
+OaksLabScript4:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ SetEvent EVENT_FOLLOWED_OAK_INTO_LAB
+ SetEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld hl, wFlags_D733
+ res 1, [hl]
+ call PlayDefaultMusic
+
+ ld a, $5
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript5:
+ SetEvent EVENT_OAK_ASKED_TO_CHOOSE_MON
+ ld a, $fc
+ ld [wJoyIgnore], a
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld a, $e
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ ld a, SPRITE_FACING_UP
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ ld a, $f
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld a, $10
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+
+ ld a, $6
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript6:
+ ld a, [wYCoord]
+ cp $6
+ ret nz
+ ld a, $3
+ ld [H_SPRITEINDEX], a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ xor a
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ call UpdateSprites
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+
+ ld a, $7
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript7:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+
+ ld a, $6
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript8:
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ ld de, .SonyPushesPlayerAwayFromEeveeBall
+ call MoveSprite
+ ld a, $9
+ ld [wOaksLabCurScript], a
+ ret
+
+.SonyPushesPlayerAwayFromEeveeBall
+ db $00
+ db $07
+ db $07
+ db $07
+ db $FF
+
+OaksLabScript9:
+ ld a, [wd730]
+ bit 0, a
+ jr nz, .asm_1c564
+ ld a, HS_STARTER_BALL_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, 1
+ ld [wRivalStarter], a
+ ld a, EEVEE
+ ld [wd11e], a
+ call GetMonName
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, $11
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+
+ ld a, $a
+ ld [wOaksLabCurScript], a
+ ret
+
+.asm_1c564
+ ld a, [wYCoord]
+ cp $4
+ ret nz
+ ld a, [wNPCNumScriptedSteps]
+ cp 1
+ ret nz
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, $2
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_RIGHT
+ ld [wSimulatedJoypadStatesEnd], a
+ ld [wSimulatedJoypadStatesEnd + 1], a
+ call StartSimulatingJoypadStates
+ ret
+
+OaksLabScript10:
+ ld a, [wYCoord]
+ cp $4
+ jr z, .asm_1c599
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_LEFT
+ ld [wSimulatedJoypadStatesEnd], a
+ jr .asm_1c5a6
+
+.asm_1c599
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, OaksLabRLE_PlayerWalksToOak
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+.asm_1c5a6
+ call StartSimulatingJoypadStates
+ ld a, $b
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabRLE_PlayerWalksToOak:
+ db D_UP, 2
+ db D_LEFT, 3
+ db D_DOWN, 1
+ db D_LEFT, 1
+ db $FF
+
+OaksLabScript11:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld a, $12
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+
+ ld a, $c
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript12:
+ ld a, [wYCoord]
+ cp $6
+ ret nz
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ xor a
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $1
+ ld [hNPCPlayerRelativePosPerspective], a
+ ld a, $1
+ swap a
+ ld [hNPCPlayerYDistance], a
+ predef CalcPositionOfPlayerRelativeToNPC
+ ld a, [hNPCPlayerYDistance]
+ dec a
+ ld [hNPCPlayerYDistance], a
+ predef FindPathToPlayer
+ ld de, wNPCMovementDirections2
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $d
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript13:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $1
+ ld [wSpriteIndex], a
+ call GetSpritePosition1
+ ld a, OPP_SONY1
+ ld [wCurOpponent], a
+ ld a, $1
+ ld [wTrainerNo], a
+ ld hl, OaksLabRivalDefeatedText
+ ld de, OaksLabRivalBeatYouText
+ call SaveEndBattleTextPointers
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ xor a
+ ld [wJoyIgnore], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ ld a, $e
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript14:
+ ld a, $ff
+ ld [wJoyIgnore], a
+
+ ; If you beat your rival here, his Eevee will evolve into
+ ; Jolteon if you beat him on Route 22, or Flareon if you
+ ; skip or lose that battle.
+ ; Otherwise, it will evolve into Vaporeon.
+ ld a, [wBattleResult]
+ and a
+ ld b, $3
+ jr nz, .asm_1c660
+ ld b, $2
+.asm_1c660
+ ld a, b
+ ld [wRivalStarter], a
+
+ ld a, $ff ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ call UpdateSprites
+ ld a, $1
+ ld [wSpriteIndex], a
+ call SetSpritePosition1
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ xor a
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ predef HealParty
+ SetEvent EVENT_BATTLED_RIVAL_IN_OAKS_LAB
+ ld a, $f
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript15:
+ ld c, 20
+ call DelayFrames
+ ld a, $c
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ callba Music_RivalAlternateStart
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ ld de, .OaksLabMovement_RivalWalksOut1
+ call MoveSprite
+ ld a, [wXCoord]
+ cp $4
+ jr nz, .asm_1c6bb
+ ld a, NPC_MOVEMENT_RIGHT
+ jr .asm_1c6bd
+
+.asm_1c6bb
+ ld a, NPC_MOVEMENT_LEFT
+.asm_1c6bd
+ ld [wNPCMovementDirections], a
+ ld a, $10
+ ld [wOaksLabCurScript], a
+ ret
+
+.OaksLabMovement_RivalWalksOut1
+ db $e0
+ db $00
+ db $04
+ db $04
+ db $04
+ db $04
+ db $04
+ db $ff
+
+OaksLabScript16:
+ ld a, [wd730]
+ bit 0, a
+ jr nz, .checkRivalPosition
+ ld a, $ff ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, HS_OAKS_LAB_RIVAL
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call PlayDefaultMusic
+ ld a, $11
+ ld [wOaksLabCurScript], a
+ ret
+; make the player keep facing the rival as he walks away
+.checkRivalPosition
+ ld a, [wNPCNumScriptedSteps]
+ cp $5
+ jr nz, .turnPlayerDown
+ ld a, [wXCoord]
+ cp $4
+ jr nz, .turnPlayerLeft
+ ld a, SPRITE_FACING_RIGHT
+ jr .done
+.turnPlayerLeft
+ ld a, SPRITE_FACING_LEFT
+ jr .done
+.turnPlayerDown
+ cp $4
+ ret nz
+ xor a
+.done
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ret
+
+OaksLabScript17:
+; Pikachu comes out
+ ld a, SPRITE_FACING_UP
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, $2
+ ld [wPikachuSpawnState], a
+ callba SchedulePikachuSpawnForAfterText
+ call EnablePikachuOverworldSpriteDrawing
+ ld a, $1a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $12
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript18:
+ ld a, $1b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $16
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript19:
+ xor a
+ ld [hJoyHeld], a
+ call EnableAutoTextBoxDrawing
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld a, $13
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ callab Func_f1be0
+ call OaksLabScript_1c8b9
+ ld a, HS_OAKS_LAB_RIVAL
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, [wNPCMovementDirections2Index]
+ ld [wSavedNPCMovementDirections2Index], a
+ ld b, 0
+ ld c, a
+ ld hl, wNPCMovementDirections2
+ ld a, NPC_MOVEMENT_UP
+ call FillMemory
+ ld [hl], $ff
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ ld de, wNPCMovementDirections2
+ call MoveSprite
+ ld a, $14
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript_1c78e:
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ xor a
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ret
+
+OaksLabScript20:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ call EnableAutoTextBoxDrawing
+ call PlayDefaultMusic
+ ld a, $ff ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ call OaksLabScript_1c78e
+ ld a, $14
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call DelayFrame
+ call OaksLabScript_1c78e
+ ld a, $15
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call DelayFrame
+ call OaksLabScript_1c78e
+ ld a, $16
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call DelayFrame
+ ld a, $17
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld a, HS_POKEDEX_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_POKEDEX_2
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call OaksLabScript_1c78e
+ ld a, $18
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ call Delay3
+ ld a, $19
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_POKEDEX
+ ld a, $1
+ ld [wViridianCityCurScript], a
+ SetEvent EVENT_OAK_GOT_PARCEL
+ ld a, HS_LYING_OLD_MAN
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_OLD_MAN
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, [wSavedNPCMovementDirections2Index]
+ ld b, 0
+ ld c, a
+ ld hl, wNPCMovementDirections2
+ xor a
+ call FillMemory
+ ld [hl], $ff
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ ld de, wNPCMovementDirections2
+ call MoveSprite
+ ld a, $15
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript21:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ call PlayDefaultMusic
+ ld a, HS_OAKS_LAB_RIVAL
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ SetEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
+ ResetEventReuseHL EVENT_2ND_ROUTE22_RIVAL_BATTLE
+ SetEventReuseHL EVENT_ROUTE22_RIVAL_WANTS_BATTLE
+ ld a, HS_ROUTE_22_RIVAL_1
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $16
+ ld [wOaksLabCurScript], a
+ ret
+
+OaksLabScript22:
+ ret
+
+OaksLabScript_RemoveParcel:
+ ld hl, wBagItems
+ ld bc, 0
+.loop
+ ld a, [hli]
+ cp $ff
+ ret z
+ cp OAKS_PARCEL
+ jr z, .foundParcel
+ inc hl
+ inc c
+ jr .loop
+
+.foundParcel
+ ld hl, wNumBagItems
+ ld a, c
+ ld [wWhichPokemon], a
+ ld a, 1
+ ld [wItemQuantity], a
+ call RemoveItemFromInventory
+ ret
+
+OaksLabScript_1c8b9:
+ ld a, $7c
+ ld [$ffeb], a
+ ld a, $8
+ ld [$ffee], a
+ ld a, [wYCoord]
+ cp 3
+ jr nz, .asm_1c8d3
+ ld a, $4
+ ld [wNPCMovementDirections2Index], a
+ ld a, $30
+ ld b, $b
+ jr .asm_1c8f6
+
+.asm_1c8d3
+ cp $1
+ jr nz, .asm_1c8e2
+ ld a, $2
+ ld [wNPCMovementDirections2Index], a
+ ld a, $30
+ ld b, $9
+ jr .asm_1c8f6
+
+.asm_1c8e2
+ ld a, $3
+ ld [wNPCMovementDirections2Index], a
+ ld b, $a
+ ld a, [wXCoord]
+ cp $4
+ jr nz, .asm_1c8f4
+ ld a, $40
+ jr .asm_1c8f6
+
+.asm_1c8f4
+ ld a, $20
+.asm_1c8f6
+ ld [$ffec], a
+ ld a, b
+ ld [$ffed], a
+ ld a, $1
+ ld [wSpriteIndex], a
+ call SetSpritePosition1
+ ret
+
+OaksLabScript_1d076:
+ ld hl, OaksLab_TextPointers2
+ ld a, l
+ ld [wMapTextPtr], a
+ ld a, h
+ ld [wMapTextPtr + 1], a
+ ret
+
+OaksLab_TextPointers:
+ dw OaksLabText1
+ dw OaksLabText2
+ dw OaksLabText3
+ dw OaksLabText4
+ dw OaksLabText5
+ dw OaksLabText6
+ dw OaksLabText7
+ dw OaksLabText8
+ dw OaksLabText9
+ dw OaksLabText10
+ dw OaksLabText11
+ dw OaksLabText12
+ dw OaksLabText13
+ dw OaksLabText14
+ dw OaksLabText15
+ dw OaksLabText16
+ dw OaksLabText17
+ dw OaksLabText18
+ dw OaksLabText19
+ dw OaksLabText20
+ dw OaksLabText21
+ dw OaksLabText22
+ dw OaksLabText23
+ dw OaksLabText24
+ dw OaksLabText25
+ dw OaksLabText26
+ dw OaksLabText27
+
+OaksLab_TextPointers2:
+ dw OaksLabText1
+ dw OaksLabText2
+ dw OaksLabText3
+ dw OaksLabText4
+ dw OaksLabText5
+ dw OaksLabText6
+ dw OaksLabText7
+ dw OaksLabText8
+ dw OaksLabText9
+
+OaksLabText1:
+ TX_ASM
+ CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
+ jr nz, .beforeChooseMon
+ ld hl, OaksLabGaryText1
+ call PrintText
+ jr .done
+.beforeChooseMon
+ CheckEventReuseA EVENT_GOT_STARTER
+ jr nz, .afterChooseMon
+ ld hl, OaksLabText40
+ call PrintText
+ jr .done
+.afterChooseMon
+ ld hl, OaksLabText41
+ call PrintText
+.done
+ jp TextScriptEnd
+
+OaksLabGaryText1:
+ TX_FAR _OaksLabGaryText1
+ db "@"
+
+OaksLabText40:
+ TX_FAR _OaksLabText40
+ db "@"
+
+OaksLabText41:
+ TX_FAR _OaksLabText41
+ db "@"
+
+OaksLabText2:
+ TX_ASM
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ CheckEvent EVENT_OAK_ASKED_TO_CHOOSE_MON
+ jr nz, OaksLabScript_1c9ac
+ ld a, $0
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, OaksLabText39
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText39:
+ TX_FAR _OaksLabText39
+ db "@"
+
+OaksLabScript_1c9ac:
+ ld a, $1
+ ld [wEmotionBubbleSpriteIndex], a
+ xor a ; EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld a, $8
+ ld [wOaksLabCurScript], a
+ jp TextScriptEnd
+
+OaksLabText3:
+ TX_ASM
+ CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
+ jr nz, .asm_1c9d9
+ ld hl, wPokedexOwned
+ ld b, wPokedexOwnedEnd - wPokedexOwned
+ call CountSetBits
+ ld a, [wNumSetBits]
+ cp 2
+ jr c, .asm_1c9ec
+.asm_1c9d9
+ ld hl, OaksLabText_1ca9f
+ call PrintText
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ predef DisplayDexRating
+ jp .asm_1ca6f
+
+.asm_1c9ec
+ ld b, POKE_BALL
+ call IsItemInBag
+ jr nz, .asm_1ca69
+ ld hl, wPokedexOwned
+ ld b, wPokedexOwnedEnd - wPokedexOwned
+ call CountSetBits
+ ld a, [wNumSetBits]
+ cp 2
+ jr nc, .asm_1ca69
+ CheckEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
+ jr nz, .asm_1ca52
+ CheckEvent EVENT_GOT_POKEDEX
+ jr nz, .asm_1ca4a
+ CheckEventReuseA EVENT_BATTLED_RIVAL_IN_OAKS_LAB
+ jr nz, .asm_1ca2b
+ ld a, [wd72e]
+ bit 3, a
+ jr nz, .asm_1ca23
+ ld hl, OaksLabText_1ca72
+ call PrintText
+ jr .asm_1ca6f
+
+.asm_1ca23
+ ld hl, OaksLabText_1ca77
+ call PrintText
+ jr .asm_1ca6f
+
+.asm_1ca2b
+ ld b, OAKS_PARCEL
+ call IsItemInBag
+ jr nz, .asm_1ca3a
+ ld hl, OaksLabText_1ca7c
+ call PrintText
+ jr .asm_1ca6f
+
+.asm_1ca3a
+ ld hl, OaksLabDeliverParcelText
+ call PrintText
+ call OaksLabScript_RemoveParcel
+ ld a, $13
+ ld [wOaksLabCurScript], a
+ jr .asm_1ca6f
+
+.asm_1ca4a
+ ld hl, OaksLabAroundWorldText
+ call PrintText
+ jr .asm_1ca6f
+
+.asm_1ca52
+ CheckAndSetEvent EVENT_GOT_POKEBALLS_FROM_OAK
+ jr nz, .asm_1ca69
+ lb bc, POKE_BALL, 5
+ call GiveItem
+ ld hl, OaksLabGivePokeballsText
+ call PrintText
+ jr .asm_1ca6f
+
+.asm_1ca69
+ ld hl, OaksLabPleaseVisitText
+ call PrintText
+.asm_1ca6f
+ jp TextScriptEnd
+
+OaksLabText_1ca72:
+ TX_FAR _OaksLabPikachuText
+ db "@"
+
+OaksLabText_1ca77:
+ TX_FAR _OaksLabText_1d2f5
+ db "@"
+
+OaksLabText_1ca7c:
+ TX_FAR _OaksLabText_1d2fa
+ db "@"
+
+OaksLabDeliverParcelText:
+ TX_FAR _OaksLabDeliverParcelText1
+ TX_SFX_KEY_ITEM
+ TX_FAR _OaksLabDeliverParcelText2
+ db "@"
+
+OaksLabAroundWorldText:
+ TX_FAR _OaksLabAroundWorldText
+ db "@"
+
+OaksLabGivePokeballsText:
+ TX_FAR _OaksLabGivePokeballsText1
+ TX_SFX_KEY_ITEM
+ TX_FAR _OaksLabGivePokeballsText2
+ db "@"
+
+OaksLabPleaseVisitText:
+ TX_FAR _OaksLabPleaseVisitText
+ db "@"
+
+OaksLabText_1ca9f:
+ TX_FAR _OaksLabText_1d31d
+ db "@"
+
+OaksLabText4:
+OaksLabText5:
+ TX_ASM
+ ld hl, OaksLabText_1caae
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText_1caae:
+ TX_FAR _OaksLabText_1d32c
+ db "@"
+
+OaksLabText6:
+ TX_FAR _OaksLabText8
+ db "@"
+
+OaksLabText7:
+ TX_ASM
+ ld hl, OaksLabText_1cac2
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText_1cac2:
+ TX_FAR _OaksLabText_1d340
+ db "@"
+
+OaksLabText13:
+ TX_ASM
+ ld hl, OaksLabRivalWaitingText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalWaitingText:
+ TX_FAR _OaksLabRivalWaitingText
+ db "@"
+
+OaksLabText14:
+ TX_ASM
+ ld hl, OaksLabChooseMonText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabChooseMonText:
+ TX_FAR _OaksLabChooseMonText
+ db "@"
+
+OaksLabText15:
+ TX_ASM
+ ld hl, OaksLabRivalInterjectionText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalInterjectionText:
+ TX_FAR _OaksLabRivalInterjectionText
+ db "@"
+
+OaksLabText16:
+ TX_ASM
+ ld hl, OaksLabBePatientText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabBePatientText:
+ TX_FAR _OaksLabBePatientText
+ db "@"
+
+OaksLabText17:
+ TX_ASM
+ ld hl, OaksLabRivalTakesText1
+ call PrintText
+ ld hl, OaksLabRivalTakesText2
+ call PrintText
+ ld hl, OaksLabRivalTakesText3
+ call PrintText
+ ld hl, OaksLabRivalTakesText4
+ call PrintText
+ ld hl, OaksLabRivalTakesText5
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalTakesText1:
+ TX_FAR _OaksLabRivalTakesText1
+ db "@"
+
+OaksLabRivalTakesText2:
+ TX_FAR _OaksLabRivalTakesText2
+ TX_SFX_KEY_ITEM
+ db "@"
+
+OaksLabRivalTakesText3:
+ TX_FAR _OaksLabRivalTakesText3
+ db "@"
+
+OaksLabRivalTakesText4:
+ TX_FAR _OaksLabRivalTakesText4
+ db "@"
+
+OaksLabRivalTakesText5:
+ TX_FAR _OaksLabRivalTakesText5
+ db "@"
+
+OaksLabText18:
+ TX_ASM
+ ld a, PIKACHU
+ ld [wPlayerStarter], a
+ ld [wd11e], a
+ call GetMonName
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, OaksLabOakGivesText
+ call PrintText
+ ld hl, OaksLabRecievedText
+ call PrintText
+ xor a
+ ld [wMonDataLocation], a
+ ld a, 5
+ ld [wCurEnemyLVL], a
+ ld a, PIKACHU
+ ld [wd11e], a
+ ld [wcf91], a
+ call AddPartyMon
+ ld a, 163
+ ld [wPartyMon1CatchRate], a
+ call DisablePikachuOverworldSpriteDrawing
+ SetEvent EVENT_GOT_STARTER
+ ld hl, wd72e
+ set 3, [hl]
+ jp TextScriptEnd
+
+OaksLabOakGivesText:
+ TX_FAR _OaksLabOakGivesText
+ db "@"
+
+OaksLabRecievedText:
+ TX_FAR _OaksLabReceivedText
+ TX_SFX_KEY_ITEM
+ db "@"
+
+OaksLabText10:
+ TX_ASM
+ ld hl, OaksLabLeavingText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabLeavingText:
+ TX_FAR _OaksLabLeavingText
+ db "@"
+
+OaksLabText11:
+ TX_ASM
+ ld hl, OaksLabRivalChallengeText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalChallengeText:
+ TX_FAR _OaksLabRivalChallengeText
+ db "@"
+
+OaksLabRivalDefeatedText:
+ TX_FAR _OaksLabText_1d3be
+ db "@"
+
+OaksLabRivalBeatYouText:
+ TX_FAR _OaksLabText_1d3c3
+ db "@"
+
+OaksLabText12:
+ TX_ASM
+ ld hl, OaksLabRivalToughenUpText
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabRivalToughenUpText:
+ TX_FAR _OaksLabRivalToughenUpText
+ db "@"
+
+OaksLabText26:
+ TX_ASM
+ ldpikacry e, PikachuCry2
+ callab PlayPikachuSoundClip
+ ld hl, OaksLabPikachuDislikesPokeballsText1
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabPikachuDislikesPokeballsText1:
+ TX_FAR _OaksLabPikachuDislikesPokeballsText1
+ db "@"
+
+OaksLabText27:
+ TX_ASM
+ ld hl, OaksLabPikachuDislikesPokeballsText2
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabPikachuDislikesPokeballsText2:
+ TX_FAR _OaksLabPikachuDislikesPokeballsText2
+ db "@"
+
+OaksLabText19:
+ TX_FAR _OaksLabText21
+ db "@"
+
+OaksLabText20:
+ TX_FAR _OaksLabText22
+ db "@"
+
+OaksLabText21:
+ TX_FAR _OaksLabText23
+ db "@"
+
+OaksLabText22:
+ TX_FAR _OaksLabText24
+ db "@"
+
+OaksLabText23:
+ TX_FAR _OaksLabText25
+ TX_SFX_KEY_ITEM
+ db "@"
+
+OaksLabText24:
+ TX_FAR _OaksLabText26
+ db "@"
+
+OaksLabText25:
+ TX_FAR _OaksLabText27
+ db "@"
+
+OaksLabText8:
+OaksLabText9:
+ TX_ASM
+ ld hl, OaksLabText_1c31d
+ call PrintText
+ jp TextScriptEnd
+
+OaksLabText_1c31d:
+ TX_FAR _OaksLabText_1d405
+ db "@"
diff --git a/scripts/oakslab2.asm b/scripts/OaksLab2.asm
index 5e4e98a4..5e4e98a4 100755
--- a/scripts/oakslab2.asm
+++ b/scripts/OaksLab2.asm
diff --git a/scripts/PalletTown.asm b/scripts/PalletTown.asm
new file mode 100755
index 00000000..fbdee4bc
--- /dev/null
+++ b/scripts/PalletTown.asm
@@ -0,0 +1,302 @@
+PalletTown_Script:
+ CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
+ jr z, .next
+ SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
+.next
+ call EnableAutoTextBoxDrawing
+ ld hl, PalletTown_ScriptPointers
+ ld a, [wPalletTownCurScript]
+ jp CallFunctionInTable
+
+PalletTown_ScriptPointers:
+ dw PalletTownScript0
+ dw PalletTownScript1
+ dw PalletTownScript2
+ dw PalletTownScript3
+ dw PalletTownScript4
+ dw PalletTownScript5
+ dw PalletTownScript6
+ dw PalletTownScript7
+ dw PalletTownScript8
+ dw PalletTownScript9
+
+PalletTownScript0:
+ CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB
+ ret nz
+ ld a, [wYCoord]
+ cp 0 ; is player at north exit?
+ ret nz
+ ResetEvent EVENT_PLAYER_AT_RIGHT_EXIT_TO_PALLET_TOWN
+ ld a, [wXCoord]
+ cp 10
+ jr z, .asm_18e40
+ SetEventReuseHL EVENT_PLAYER_AT_RIGHT_EXIT_TO_PALLET_TOWN
+.asm_18e40
+ xor a
+ ld [hJoyHeld], a
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ call StopAllMusic
+ ld a, BANK(Music_MeetProfOak)
+ ld c, a
+ ld a, MUSIC_MEET_PROF_OAK
+ call PlayMusic
+ SetEvent EVENT_OAK_APPEARED_IN_PALLET
+
+ ; trigger the next script
+ ld a, 1
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript1:
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ xor a
+ ld [wcf0d], a
+ ld a, 1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $FF
+ ld [wJoyIgnore], a
+ ld hl, wSpriteStateData2 + 1 * $10 + 4
+ ld a, $8
+ ld [hli], a
+ ld a, $e
+ ld [hl], a
+ ld a, HS_PALLET_TOWN_OAK
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+
+ ; trigger the next script
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ ld a, SPRITE_FACING_UP
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ ld a, 2
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript2:
+ call Delay3
+ ld a, 0
+ ld [wYCoord], a
+ ld a, 1
+ ld [hNPCPlayerRelativePosPerspective], a
+ ld a, 1
+ swap a
+ ld [hNPCSpriteOffset], a
+ predef CalcPositionOfPlayerRelativeToNPC
+ ld hl, hNPCPlayerYDistance
+ dec [hl]
+ predef FindPathToPlayer ; load Oak’s movement into wNPCMovementDirections2
+ ld de, wNPCMovementDirections2
+ ld a, 1 ; oak
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+
+ ; trigger the next script
+ ld a, 3
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript3:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, 1
+ ld [wcf0d], a
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ ld a, SPRITE_FACING_UP
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ ld a, 1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ; oak faces the horizontally adjacent patch of grass to face pikachu
+ ld a, $FF
+ ld [wJoyIgnore], a
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ CheckEvent EVENT_PLAYER_AT_RIGHT_EXIT_TO_PALLET_TOWN
+ ld a, SPRITE_FACING_RIGHT
+ jr z, .asm_18f01
+ ld a, SPRITE_FACING_LEFT
+.asm_18f01
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+
+ ; trigger the next script
+ ld a, 4
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript4:
+ ; start the pikachu battle
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ xor a
+ ld [wListScrollOffset], a
+ ld a, BATTLE_TYPE_PIKACHU
+ ld [wBattleType], a
+ ld a, PIKACHU
+ ld [wCurOpponent], a
+ ld a, 5
+ ld [wCurEnemyLVL], a
+
+ ; trigger the next script
+ ld a, 5
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript5:
+ ld a, $2
+ ld [wcf0d], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ ld a, SPRITE_FACING_UP
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoyIgnore], a
+
+ ; trigger the next script
+ ld a, 6
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript6:
+ xor a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, $1
+ ld [wSpriteIndex], a
+ xor a
+ ld [wNPCMovementScriptFunctionNum], a
+ ld a, $1
+ ld [wNPCMovementScriptPointerTableNum], a
+ ld a, [H_LOADEDROMBANK]
+ ld [wNPCMovementScriptBank], a
+
+ ; trigger the next script
+ ld a, 7
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript7:
+ ld a, [wNPCMovementScriptPointerTableNum]
+ and a
+ ret nz
+
+ ; trigger the next script
+ ld a, 8
+ ld [wPalletTownCurScript], a
+ ret
+
+PalletTownScript8:
+ CheckEvent EVENT_DAISY_WALKING
+ jr nz, .asm_18f9e
+ and $3 ; (EVENT_GOT_TOWN_MAP | EVENT_ENTERED_BLUES_HOUSE)
+ cp $3
+ jr nz, .asm_18f9e
+ SetEvent EVENT_DAISY_WALKING
+ ld a, HS_DAISY_SITTING
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_DAISY_WALKING
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+
+.asm_18f9e
+ CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
+ ret z
+ SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
+PalletTownScript9:
+ ret
+
+PalletTown_TextPointers:
+ dw PalletTownText1
+ dw PalletTownText2
+ dw PalletTownText3
+ dw PalletTownText4
+ dw PalletTownText5
+ dw PalletTownText6
+ dw PalletTownText7
+ dw PalletTownText8
+
+PalletTownText1:
+ TX_ASM
+ ld a, [wcf0d]
+ and a
+ jr nz, .next
+ ld a, 1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, OakAppearsText
+ jr .done
+.next
+ dec a
+ jr nz, .asm_18fd3
+ ld hl, OakWalksUpText
+ jr .done
+
+.asm_18fd3
+ ld hl, PalletTownText_19002
+.done
+ call PrintText
+ jp TextScriptEnd
+
+OakAppearsText:
+ TX_FAR _OakAppearsText
+ TX_ASM
+ ld c, 10
+ call DelayFrames
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, 0
+ ld [wEmotionBubbleSpriteIndex], a ; player's sprite
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ jp TextScriptEnd
+
+OakWalksUpText:
+ TX_FAR _OakWalksUpText
+ db "@"
+
+PalletTownText_19002:
+ TX_FAR _OakWhewText
+ db "@"
+
+PalletTownText8: ; girl
+ TX_FAR _OakGrassText
+ db "@"
+
+PalletTownText2: ; fat man
+ TX_FAR _PalletTownText2
+ db "@"
+
+PalletTownText3: ; sign by lab
+ TX_FAR _PalletTownText3
+ db "@"
+
+PalletTownText4: ; sign by fence
+ TX_FAR _PalletTownText4
+ db "@"
+
+PalletTownText5: ; sign by Red’s house
+ TX_FAR _PalletTownText5
+ db "@"
+
+PalletTownText6: ; sign by Blue’s house
+ TX_FAR _PalletTownText6
+ db "@"
+
+PalletTownText7:
+ TX_FAR _PalletTownText7
+ db "@"
diff --git a/scripts/PewterCity.asm b/scripts/PewterCity.asm
new file mode 100755
index 00000000..63d0fe71
--- /dev/null
+++ b/scripts/PewterCity.asm
@@ -0,0 +1,322 @@
+PewterCity_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, wd492
+ res 7, [hl]
+ ld hl, PewterCity_ScriptPointers
+ ld a, [wPewterCityCurScript]
+ call CallFunctionInTable
+ ret
+
+PewterCity_ScriptPointers:
+ dw PewterCityScript0
+ dw PewterCityScript1
+ dw PewterCityScript2
+ dw PewterCityScript3
+ dw PewterCityScript4
+ dw PewterCityScript5
+ dw PewterCityScript6
+
+PewterCityScript0:
+ xor a
+ ld [wMuseum1FCurScript], a
+ ResetEvent EVENT_BOUGHT_MUSEUM_TICKET
+ call PewterCityScript_1925e
+ ret
+
+PewterCityScript_1925e:
+ CheckEvent EVENT_BEAT_BROCK
+ ret nz
+ ld hl, CoordsData_19277
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $fc
+ ld [wJoyIgnore], a
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+CoordsData_19277:
+ db $11,$23
+ db $11,$24
+ db $12,$25
+ db $13,$25
+ db $ff
+
+PewterCityScript1:
+ ld a, [wNPCMovementScriptPointerTableNum]
+ and a
+ ret nz
+ ld a, $3
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteImageIndex], a
+ call SpriteFunc_34a1
+ call PlayDefaultMusic
+ ld hl, wFlags_0xcd60
+ set 4, [hl]
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $3c
+ ld [$ffeb], a
+ ld a, $30
+ ld [$ffec], a
+ ld a, $c
+ ld [$ffed], a
+ ld a, $11
+ ld [$ffee], a
+ ld a, $3
+ ld [wSpriteIndex], a
+ call SetSpritePosition1
+ ld a, $3
+ ld [H_SPRITEINDEX], a
+ ld de, MovementData_PewterMuseumGuyExit
+ call MoveSprite
+ ld a, $2
+ ld [wPewterCityCurScript], a
+ ret
+
+MovementData_PewterMuseumGuyExit:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+PewterCityScript2:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_MUSEUM_GUY
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, $3
+ ld [wPewterCityCurScript], a
+ ret
+
+PewterCityScript3:
+ ld a, $3
+ ld [wSpriteIndex], a
+ call SetSpritePosition2
+ ld a, HS_MUSEUM_GUY
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wPewterCityCurScript], a
+ ret
+
+PewterCityScript4:
+ ld a, [wNPCMovementScriptPointerTableNum]
+ and a
+ ret nz
+ ld a, $5
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_LEFT
+ ld [hSpriteFacingDirection], a
+ call SpriteFunc_34a1
+ call PlayDefaultMusic
+ ld hl, wFlags_0xcd60
+ set 4, [hl]
+ ld a, $e
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $3c
+ ld [$ffeb], a
+ ld a, $40
+ ld [$ffec], a
+ ld a, $16
+ ld [$ffed], a
+ ld a, $10
+ ld [$ffee], a
+ ld a, $5
+ ld [wSpriteIndex], a
+ call SetSpritePosition1
+ ld a, $5
+ ld [H_SPRITEINDEX], a
+ ld de, MovementData_PewterGymGuyExit
+ call MoveSprite
+ ld a, $5
+ ld [wPewterCityCurScript], a
+ ret
+
+MovementData_PewterGymGuyExit:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
+
+PewterCityScript5:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_GYM_GUY
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, $6
+ ld [wPewterCityCurScript], a
+ ret
+
+PewterCityScript6:
+ ld a, $5
+ ld [wSpriteIndex], a
+ call SetSpritePosition2
+ ld a, HS_GYM_GUY
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wPewterCityCurScript], a
+ ret
+
+PewterCity_TextPointers:
+ dw PewterCityText1
+ dw PewterCityText2
+ dw PewterCityText3
+ dw PewterCityText4
+ dw PewterCityText5
+ dw PewterCityText6
+ dw PewterCityText7
+ dw MartSignText
+ dw PokeCenterSignText
+ dw PewterCityText10
+ dw PewterCityText11
+ dw PewterCityText12
+ dw PewterCityText13
+ dw PewterCityText14
+
+PewterCityText1:
+ TX_FAR _PewterCityText1
+ db "@"
+
+PewterCityText2:
+ TX_FAR _PewterCityText2
+ db "@"
+
+PewterCityText3:
+ TX_ASM
+ ld hl, PewterCityText_193f1
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .playerDidNotGoIntoMuseum
+ ld hl, PewterCityText_193f6
+ call PrintText
+ jr .done
+.playerDidNotGoIntoMuseum
+ ld hl, PewterCityText_193fb
+ call PrintText
+ xor a
+ ld [hJoyPressed], a
+ ld [hJoyHeld], a
+ ld [wNPCMovementScriptFunctionNum], a
+ ld a, $2
+ ld [wNPCMovementScriptPointerTableNum], a
+ ld a, [H_LOADEDROMBANK]
+ ld [wNPCMovementScriptBank], a
+ ld a, $3
+ ld [wSpriteIndex], a
+ call GetSpritePosition2
+ ld a, $1
+ ld [wPewterCityCurScript], a
+.done
+ jp TextScriptEnd
+
+PewterCityText_193f1:
+ TX_FAR _PewterCityText_193f1
+ db "@"
+
+PewterCityText_193f6:
+ TX_FAR _PewterCityText_193f6
+ db "@"
+
+PewterCityText_193fb:
+ TX_FAR _PewterCityText_193fb
+ db "@"
+
+PewterCityText13:
+ TX_FAR _PewterCityText13
+ db "@"
+
+PewterCityText4:
+ TX_ASM
+ ld hl, PewterCityText_19427
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ cp $0
+ jr nz, .playerDoesNotKnow
+ ld hl, PewterCityText_1942c
+ call PrintText
+ jr .done
+.playerDoesNotKnow
+ ld hl, PewterCityText_19431
+ call PrintText
+.done
+ jp TextScriptEnd
+
+PewterCityText_19427:
+ TX_FAR _PewterCityText_19427
+ db "@"
+
+PewterCityText_1942c:
+ TX_FAR _PewterCityText_1942c
+ db "@"
+
+PewterCityText_19431:
+ TX_FAR _PewterCityText_19431
+ db "@"
+
+PewterCityText5:
+ TX_ASM
+ ld hl, PewterCityText_1945d
+ call PrintText
+ xor a
+ ld [hJoyHeld], a
+ ld [wNPCMovementScriptFunctionNum], a
+ ld a, $3
+ ld [wNPCMovementScriptPointerTableNum], a
+ ld a, [H_LOADEDROMBANK]
+ ld [wNPCMovementScriptBank], a
+ ld a, $5
+ ld [wSpriteIndex], a
+ call GetSpritePosition2
+ ld a, $4
+ ld [wPewterCityCurScript], a
+ jp TextScriptEnd
+
+PewterCityText_1945d:
+ TX_FAR _PewterCityText_1945d
+ db "@"
+
+PewterCityText14:
+ TX_FAR _PewterCityText14
+ db "@"
+
+PewterCityText6:
+ TX_FAR _PewterCityText6
+ db "@"
+
+PewterCityText7:
+ TX_FAR _PewterCityText7
+ db "@"
+
+PewterCityText10:
+ TX_FAR _PewterCityText10
+ db "@"
+
+PewterCityText11:
+ TX_FAR _PewterCityText11
+ db "@"
+
+PewterCityText12:
+ TX_FAR _PewterCityText12
+ db "@"
diff --git a/scripts/PewterGym.asm b/scripts/PewterGym.asm
new file mode 100755
index 00000000..4ddec77e
--- /dev/null
+++ b/scripts/PewterGym.asm
@@ -0,0 +1,241 @@
+PewterGym_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, PewterGymScript_5c3a4
+ call EnableAutoTextBoxDrawing
+ ld hl, PewterGymTrainerHeader0
+ ld de, PewterGym_ScriptPointers
+ ld a, [wPewterGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPewterGymCurScript], a
+ ret
+
+PewterGymScript_5c3a4:
+ ld hl, Gym1CityName
+ ld de, Gym1LeaderName
+ call LoadGymLeaderAndCityName
+ ret
+
+Gym1CityName:
+ db "PEWTER CITY@"
+
+Gym1LeaderName:
+ db "BROCK@"
+
+PewterGymScript_5c3bf:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wPewterGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+PewterGym_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw PewterGymScript3
+
+PewterGymScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, PewterGymScript_5c3bf
+ ld a, $f0
+ ld [wJoyIgnore], a
+PewterGymScript_5c3df:
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_BROCK
+ lb bc, TM_34, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM34
+ jr .gymVictory
+.BagFull
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 0, [hl]
+ ld hl, wBeatGymFlags
+ set 0, [hl]
+
+ ld a, HS_GYM_GUY
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_ROUTE_22_RIVAL_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+
+ ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
+
+ ; deactivate gym trainers
+ SetEvent EVENT_BEAT_PEWTER_GYM_TRAINER_0
+
+ jp PewterGymScript_5c3bf
+
+PewterGym_TextPointers:
+ dw PewterGymText1
+ dw PewterGymText2
+ dw PewterGymText3
+ dw PewterGymText4
+ dw PewterGymText5
+ dw PewterGymText6
+
+PewterGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_PEWTER_GYM_TRAINER_0
+ db ($5 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_PEWTER_GYM_TRAINER_0
+ dw PewterGymBattleText1 ; TextBeforeBattle
+ dw PewterGymAfterBattleText1 ; TextAfterBattle
+ dw PewterGymEndBattleText1 ; TextEndBattle
+ dw PewterGymEndBattleText1 ; TextEndBattle
+
+ db $ff
+
+PewterGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_BROCK
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM34
+ jr nz, .gymVictory
+ call z, PewterGymScript_5c3df
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.gymVictory
+ ld hl, PewterGymText_5c4a3
+ call PrintText
+ jr .done
+.beginBattle
+ ld hl, PewterGymText_5c49e
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, PewterGymText_5c4bc
+ ld de, PewterGymText_5c4bc
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $1
+ ld [wGymLeaderNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3
+ ld [wPewterGymCurScript], a
+ ld [wCurMapScript], a
+.done
+ jp TextScriptEnd
+
+PewterGymText_5c49e:
+ TX_FAR _PewterGymText_5c49e
+ db "@"
+
+PewterGymText_5c4a3:
+ TX_FAR _PewterGymText_5c4a3
+ db "@"
+
+PewterGymText4:
+ TX_FAR _TM34PreReceiveText
+ db "@"
+
+PewterGymText5:
+ TX_FAR _ReceivedTM34Text
+ TX_SFX_ITEM_1
+ TX_FAR _TM34ExplanationText
+ db "@"
+
+PewterGymText6:
+ TX_FAR _TM34NoRoomText
+ db "@"
+
+PewterGymText_5c4bc:
+ TX_FAR _PewterGymText_5c4bc
+ TX_SFX_ITEM_1
+ TX_FAR _PewterGymText_5c4c1
+ db "@"
+
+PewterGymText2:
+ TX_ASM
+ ld hl, PewterGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PewterGymBattleText1:
+ TX_FAR _PewterGymBattleText1
+ db "@"
+
+PewterGymEndBattleText1:
+ TX_FAR _PewterGymEndBattleText1
+ db "@"
+
+PewterGymAfterBattleText1:
+ TX_FAR _PewterGymAfterBattleText1
+ db "@"
+
+PewterGymText3:
+ TX_ASM
+ ld a, [wBeatGymFlags]
+ bit 0, a
+ jr nz, .asm_5c50c
+ ld hl, PewterGymText_5c515
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_5c4fe
+ ld a, [wd472]
+ bit 7, a
+ jp nz, .asm_5c3fa
+ ld hl, PewterGymText_5c51a
+ call PrintText
+ jr .asm_5c504
+.asm_5c4fe
+ ld hl, PewterGymText_5c524
+ call PrintText
+.asm_5c504
+ ld hl, PewterGymText_5c51f
+ call PrintText
+ jr .asm_5c512
+.asm_5c50c
+ ld hl, PewterGymText_5c529
+ call PrintText
+.asm_5c512
+ jp TextScriptEnd
+
+.asm_5c3fa
+ ld hl, PewterGymText_5c41c
+ call PrintText
+ jp TextScriptEnd
+
+PewterGymText_5c515:
+ TX_FAR _PewterGymText_5c515
+ db "@"
+
+PewterGymText_5c51a:
+ TX_FAR _PewterGymText_5c51a
+ db "@"
+
+PewterGymText_5c51f:
+ TX_FAR _PewterGymText_5c51f
+ db "@"
+
+PewterGymText_5c524:
+ TX_FAR _PewterGymText_5c524
+ db "@"
+
+PewterGymText_5c529:
+ TX_FAR _PewterGymText_5c529
+ db "@"
+
+PewterGymText_5c41c:
+ TX_FAR _PewterGymGuyText
+ db "@"
+
diff --git a/scripts/PewterMart.asm b/scripts/PewterMart.asm
new file mode 100755
index 00000000..5b3e7617
--- /dev/null
+++ b/scripts/PewterMart.asm
@@ -0,0 +1,30 @@
+PewterMart_Script:
+ call EnableAutoTextBoxDrawing
+ ld a, $1
+ ld [wAutoTextBoxDrawingControl], a
+ ret
+
+PewterMart_TextPointers:
+ dw PewterCashierText
+ dw PewterMartText2
+ dw PewterMartText3
+
+PewterMartText2:
+ TX_ASM
+ ld hl, .Text
+ call PrintText
+ jp TextScriptEnd
+
+.Text
+ TX_FAR _PewterMartText2
+ db "@"
+
+PewterMartText3:
+ TX_ASM
+ ld hl, .Text
+ call PrintText
+ jp TextScriptEnd
+
+.Text
+ TX_FAR _PewterMartText3
+ db "@"
diff --git a/scripts/PewterNidoranHouse.asm b/scripts/PewterNidoranHouse.asm
new file mode 100755
index 00000000..2f3f4145
--- /dev/null
+++ b/scripts/PewterNidoranHouse.asm
@@ -0,0 +1,24 @@
+PewterNidoranHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+PewterNidoranHouse_TextPointers:
+ dw PewterHouse1Text1
+ dw PewterHouse1Text2
+ dw PewterHouse1Text3
+
+PewterHouse1Text1:
+ TX_FAR _PewterHouse1Text1
+ TX_ASM
+ ld a, NIDORAN_M
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+PewterHouse1Text2:
+ TX_FAR _PewterHouse1Text2
+ db "@"
+
+PewterHouse1Text3:
+ TX_FAR _PewterHouse1Text3
+ db "@"
diff --git a/scripts/PewterPokecenter.asm b/scripts/PewterPokecenter.asm
new file mode 100755
index 00000000..add001bc
--- /dev/null
+++ b/scripts/PewterPokecenter.asm
@@ -0,0 +1,39 @@
+PewterPokecenter_Script:
+ ld hl, wd492
+ set 7, [hl]
+ call Serial_TryEstablishingExternallyClockedConnection
+ call EnableAutoTextBoxDrawing
+ ret
+
+PewterPokecenter_TextPointers:
+ dw PewterHealNurseText
+ dw PewterPokecenterText2
+ dw PewterJigglypuffText
+ dw PewterTradeNurseText
+ dw PewterPokecenterText5
+ dw PewterPokecenterText6
+
+PewterHealNurseText:
+ TX_POKECENTER_NURSE
+
+PewterPokecenterText2:
+ TX_FAR _PewterPokecenterText2
+ db "@"
+
+PewterJigglypuffText:
+ TX_ASM
+ callba PewterJigglypuff
+ jp TextScriptEnd
+
+PewterTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+PewterPokecenterText5:
+ TX_ASM
+ callba Func_f1d98
+ jp TextScriptEnd
+
+PewterPokecenterText6:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/PewterPokecenter2.asm b/scripts/PewterPokecenter2.asm
new file mode 100755
index 00000000..3d4de3f7
--- /dev/null
+++ b/scripts/PewterPokecenter2.asm
@@ -0,0 +1,78 @@
+Func_f1d98:
+ ld hl, PewterPokecenterText_f1d9f
+ call PrintText
+ ret
+
+PewterPokecenterText_f1d9f:
+ TX_FAR _PewterPokecenterText3
+ db "@"
+
+PewterJigglypuff:
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, .Text
+ call PrintText
+ call StopAllMusic
+ ld c, 32
+ call DelayFrames
+ ld hl, JigglypuffFacingDirections
+ ld de, wJigglypuffFacingDirections
+ ld bc, JigglypuffFacingDirectionsEnd - JigglypuffFacingDirections
+ call CopyData
+
+ ld a, [wSprite03StateData1ImageIndex]
+ ld hl, wJigglypuffFacingDirections
+.findMatchingFacingDirectionLoop
+ cp [hl]
+ inc hl
+ jr nz, .findMatchingFacingDirectionLoop
+ dec hl
+ push hl
+ ld c, BANK(Music_JigglypuffSong)
+ ld a, MUSIC_JIGGLYPUFF_SONG
+ call PlayMusic
+ pop hl
+.loop
+ ld a, [hl]
+ ld [wSprite03StateData1ImageIndex], a
+
+; rotate the array
+ push hl
+ ld hl, wJigglypuffFacingDirections
+ ld de, wJigglypuffFacingDirections - 1
+ ld bc, JigglypuffFacingDirectionsEnd - JigglypuffFacingDirections
+ call CopyData
+ ld a, [wJigglypuffFacingDirections - 1]
+ ld [wJigglypuffFacingDirections + 3], a
+ pop hl
+
+ ld c, 24
+ call DelayFrames
+
+ ld a, [wChannelSoundIDs]
+ ld b, a
+ ld a, [wChannelSoundIDs + Ch2]
+ or b
+ jr nz, .loop
+
+ ld c, 48
+ call DelayFrames
+ call PlayDefaultMusic
+ ld a, [wd472]
+ bit 7, a
+ ret z
+ callab CheckPikachuFaintedOrStatused
+ ret c
+ call DisablePikachuFollowingPlayer
+ ret
+
+.Text
+ TX_FAR _PewterJigglypuffText
+ db "@"
+
+JigglypuffFacingDirections:
+ db $40 | SPRITE_FACING_DOWN
+ db $40 | SPRITE_FACING_LEFT
+ db $40 | SPRITE_FACING_UP
+ db $40 | SPRITE_FACING_RIGHT
+JigglypuffFacingDirectionsEnd:
diff --git a/scripts/PewterSpeechHouse.asm b/scripts/PewterSpeechHouse.asm
new file mode 100755
index 00000000..943e1759
--- /dev/null
+++ b/scripts/PewterSpeechHouse.asm
@@ -0,0 +1,14 @@
+PewterSpeechHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+PewterSpeechHouse_TextPointers:
+ dw PewterHouse2Text1
+ dw PewterHouse2Text2
+
+PewterHouse2Text1:
+ TX_FAR _PewterHouse2Text1
+ db "@"
+
+PewterHouse2Text2:
+ TX_FAR _PewterHouse2Text2
+ db "@"
diff --git a/scripts/PokemonFanClub.asm b/scripts/PokemonFanClub.asm
new file mode 100755
index 00000000..3434f871
--- /dev/null
+++ b/scripts/PokemonFanClub.asm
@@ -0,0 +1,307 @@
+PokemonFanClub_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonFanClub_ScriptPointers
+ ld a, [wFanClubCurScript]
+ call CallFunctionInTable
+ ret
+
+PokemonFanClub_ScriptPointers:
+ dw FanClubScript1
+ dw FanClubScript2
+
+FanClubScript1:
+ ld hl, wd492
+ bit 7, [hl]
+ call z, FanClubScript_59a44
+ ld hl, wd492
+ set 7, [hl]
+ ret
+
+FanClubScript2:
+ ld hl, wd492
+ bit 7, [hl]
+ call z, FanClubScript_59a39
+ ld hl, wd492
+ set 7, [hl]
+ ret
+
+FanClubScript_59a39:
+ call Random
+ ld a, [hRandomAdd]
+ cp 25
+ call c, FanClubScript_59a44
+ ret
+
+FanClubScript_59a44:
+ ld a, [wd472]
+ bit 7, a
+ ret z
+ callab CheckPikachuFaintedOrStatused
+ ret c
+ ld a, $1
+ ld [wFanClubCurScript], a
+ xor a
+ ld [wPlayerMovingDirection], a
+ call UpdateSprites
+ call UpdateSprites
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ ld a, $f ; Pikachu
+ ld [wEmotionBubbleSpriteIndex], a
+ predef EmotionBubble
+ ld hl, PikachuMovementScript_59a8c
+ call ApplyPikachuMovementData
+ ld a, $2
+ ld [wSpriteStateData1 + 3 * $10 + 1], a ; Seel
+ xor a ; SPRITE_FACING_DOWN
+ ld [wSpriteStateData1 + 3 * $10 + 9], a
+ callab InitializePikachuTextID
+ call DisablePikachuFollowingPlayer
+ ret
+
+PikachuMovementScript_59a8c:
+ db $00
+ db $26
+ db $20
+ db $20
+ db $20
+ db $1e
+ db $3f
+
+PokemonFanClub_TextPointers:
+ dw FanClubText1
+ dw FanClubText2
+ dw FanClubText3
+ dw FanClubText4
+ dw FanClubText5
+ dw FanClubText6
+
+FanClubText1:
+; clefairy fan
+ TX_ASM
+ CheckEventHL EVENT_152
+ jr z, .asm_59aaf
+ ld hl, .yellowtext
+ call PrintText
+ jr .done
+
+.asm_59aaf
+ CheckEventReuseHL EVENT_PIKACHU_FAN_BOAST
+ jr nz, .mineisbetter
+ SetEventReuseHL EVENT_SEEL_FAN_BOAST
+ ld hl, .normaltext
+ call PrintText
+ jr .done
+
+.mineisbetter
+ ResetEventReuseHL EVENT_PIKACHU_FAN_BOAST
+ ld hl, .bettertext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.normaltext
+ TX_FAR PikachuFanText
+ db "@"
+
+.bettertext
+ TX_FAR PikachuFanBetterText
+ db "@"
+
+.yellowtext
+ TX_FAR PikachuFanPrintText
+ db "@"
+
+FanClubText2:
+; seel fan
+ TX_ASM
+ CheckEventHL EVENT_152
+ jr z, .asm_59ae7
+ ld hl, .yellowtext
+ call PrintText
+ jr .done
+.asm_59ae7
+ CheckEventReuseHL EVENT_SEEL_FAN_BOAST
+ jr nz, .mineisbetter
+ SetEventReuseHL EVENT_PIKACHU_FAN_BOAST
+ ld hl, .normaltext
+ call PrintText
+ jr .done
+.mineisbetter
+ ResetEventReuseHL EVENT_SEEL_FAN_BOAST
+ ld hl, .bettertext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.normaltext
+ TX_FAR SeelFanText
+ db "@"
+
+.bettertext
+ TX_FAR SeelFanBetterText
+ db "@"
+
+.yellowtext
+ TX_FAR SeelFanPrintText
+ db "@"
+
+FanClubText3:
+; pikachu
+ TX_ASM
+ ld hl, .text
+ call PrintText
+ ld a, CLEFAIRY
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+.text
+ TX_FAR FanClubPikachuText
+ db "@"
+
+FanClubText4:
+; seel
+ TX_ASM
+ ld hl, .text
+ call PrintText
+ ld a, SEEL
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+.text
+ TX_FAR FanClubSeelText
+ db "@"
+
+FanClubText5:
+; chair
+ TX_ASM
+ CheckEventHL EVENT_152
+ jr z, .check_bike_voucher
+ ld hl, Text_59c1f
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr z, .select_mon_to_print
+ ld hl, Text_59c24
+ jr .gbpals_print_text
+
+.check_bike_voucher
+ CheckEvent EVENT_GOT_BIKE_VOUCHER
+ jr nz, .got_bike_voucher_already
+ ld hl, Text_59bfc
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .declined_story
+ ld hl, Text_59c01
+ call PrintText
+ lb bc, BIKE_VOUCHER, 1
+ call GiveItem
+ jr nc, .no_room_for_voucher
+ ld hl, Text_59c06
+ call PrintText
+ SetEvent EVENT_GOT_BIKE_VOUCHER
+ jp TextScriptEnd
+
+.no_room_for_voucher
+ ld hl, Text_59c1a
+ jr .gbpals_print_text
+
+.declined_story
+ ld hl, Text_59c10
+ jr .gbpals_print_text
+
+.got_bike_voucher_already
+ ld hl, Text_59c15
+.gbpals_print_text
+ push hl
+ call LoadGBPal
+ pop hl
+ call PrintText
+ jp TextScriptEnd
+
+.select_mon_to_print
+ call GBPalWhiteOutWithDelay3
+ call LoadCurrentMapView
+ call SaveScreenTilesToBuffer2
+ ld a, $ff
+ ld [wUpdateSpritesEnabled], a
+ ld a, $00
+ ld [wTempTilesetNumTiles], a
+ call DisplayPartyMenu
+ jp nc, .print
+ call GBPalWhiteOutWithDelay3
+ call RestoreScreenTilesAndReloadTilePatterns
+ ld hl, Text_59c24
+ jr .gbpals_print_text
+
+.print
+ xor a
+ ld [wUpdateSpritesEnabled], a
+ ld hl, wd730
+ set 6, [hl]
+ callab PrintFanClubPortrait
+ ld hl, wd730
+ res 6, [hl]
+ call GBPalWhiteOutWithDelay3
+ call ReloadTilesetTilePatterns
+ call RestoreScreenTilesAndReloadTilePatterns
+ call LoadScreenTilesFromBuffer2
+ call Delay3
+ call GBPalNormal
+ ld hl, Text_59c2e
+ ld a, [hOaksAideResult]
+ and a
+ jr nz, .gbpals_print_text
+ ld hl, Text_59c29
+ jr .gbpals_print_text
+
+Text_59bfc:
+ TX_FAR FanClubMeetChairText
+ db "@"
+
+Text_59c01:
+ TX_FAR FanClubChairStoryText
+ db "@"
+
+Text_59c06:
+ TX_FAR ReceivedBikeVoucherText
+ TX_SFX_KEY_ITEM
+ TX_FAR ExplainBikeVoucherText
+ db "@"
+
+Text_59c10:
+ TX_FAR FanClubNoStoryText
+ db "@"
+
+Text_59c15:
+ TX_FAR FanClubChairFinalText
+ db "@"
+
+Text_59c1a:
+ TX_FAR FanClubBagFullText
+ db "@"
+
+Text_59c1f:
+ TX_FAR FanClubChairPrintText1
+ db "@"
+
+Text_59c24:
+ TX_FAR FanClubChairPrintText2
+ db "@"
+
+Text_59c29:
+ TX_FAR FanClubChairPrintText3
+ db "@"
+
+Text_59c2e:
+ TX_FAR FanClubChairPrintText4
+ db "@"
+
+FanClubText6:
+ TX_FAR _FanClubText6
+ db "@"
diff --git a/scripts/PokemonMansion1F.asm b/scripts/PokemonMansion1F.asm
new file mode 100755
index 00000000..639a4acf
--- /dev/null
+++ b/scripts/PokemonMansion1F.asm
@@ -0,0 +1,134 @@
+PokemonMansion1F_Script:
+ call Mansion1Subscript1
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion1TrainerHeader0
+ ld de, PokemonMansion1F_ScriptPointers
+ ld a, [wPokemonMansion1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonMansion1FCurScript], a
+ ret
+
+Mansion1Subscript1:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_MANSION_SWITCH_ON
+ jr nz, .asm_442ec
+ lb bc, 6, 12
+ call Mansion1Script_4430b
+ lb bc, 3, 8
+ call Mansion1Script_44304
+ lb bc, 8, 10
+ call Mansion1Script_44304
+ lb bc, 13, 13
+ jp Mansion1Script_44304
+.asm_442ec
+ lb bc, 6, 12
+ call Mansion1Script_44304
+ lb bc, 3, 8
+ call Mansion1Script_4430b
+ lb bc, 8, 10
+ call Mansion1Script_4430b
+ lb bc, 13, 13
+ jp Mansion1Script_4430b
+
+Mansion1Script_44304:
+ ld a, $2d
+ ld [wNewTileBlockID], a
+ jr Mansion1ReplaceBlock
+
+Mansion1Script_4430b:
+ ld a, $e
+ ld [wNewTileBlockID], a
+Mansion1ReplaceBlock:
+ predef ReplaceTileBlock
+ ret
+
+Mansion1Script_Switches:
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ ret nz
+ xor a
+ ld [hJoyHeld], a
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+PokemonMansion1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PokemonMansion1F_TextPointers:
+ dw Mansion1Text1
+ dw PickUpItemText
+ dw PickUpItemText
+ dw Mansion1Text4
+
+Mansion1TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MANSION_1_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MANSION_1_TRAINER_0
+ dw Mansion1BattleText2 ; TextBeforeBattle
+ dw Mansion1AfterBattleText2 ; TextAfterBattle
+ dw Mansion1EndBattleText2 ; TextEndBattle
+ dw Mansion1EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+Mansion1Text1:
+ TX_ASM
+ ld hl, Mansion1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion1BattleText2:
+ TX_FAR _Mansion1BattleText2
+ db "@"
+
+Mansion1EndBattleText2:
+ TX_FAR _Mansion1EndBattleText2
+ db "@"
+
+Mansion1AfterBattleText2:
+ TX_FAR _Mansion1AfterBattleText2
+ db "@"
+
+Mansion1Text4:
+ TX_ASM
+ ld hl, MansionSwitchText
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_4438c
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ ld hl, MansionSwitchPressedText
+ call PrintText
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ CheckAndSetEvent EVENT_MANSION_SWITCH_ON
+ jr z, .asm_44392
+ ResetEventReuseHL EVENT_MANSION_SWITCH_ON
+ jr .asm_44392
+.asm_4438c
+ ld hl, MansionSwitchNotPressedText
+ call PrintText
+.asm_44392
+ jp TextScriptEnd
+
+MansionSwitchText:
+ TX_FAR _MansionSwitchText
+ db "@"
+
+MansionSwitchPressedText:
+ TX_FAR _MansionSwitchPressedText
+ db "@"
+
+MansionSwitchNotPressedText:
+ TX_FAR _MansionSwitchNotPressedText
+ db "@"
diff --git a/scripts/PokemonMansion2F.asm b/scripts/PokemonMansion2F.asm
new file mode 100755
index 00000000..8d05cdc9
--- /dev/null
+++ b/scripts/PokemonMansion2F.asm
@@ -0,0 +1,140 @@
+PokemonMansion2F_Script:
+ call Mansion2Script_51fee
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion2TrainerHeader0
+ ld de, PokemonMansion2F_ScriptPointers
+ ld a, [wPokemonMansion2FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonMansion2FCurScript], a
+ ret
+
+Mansion2Script_51fee:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_MANSION_SWITCH_ON
+ jr nz, .asm_52016
+ ld a, $e
+ lb bc, 2, 4
+ call Mansion2Script_5202f
+ ld a, $54
+ lb bc, 4, 9
+ call Mansion2Script_5202f
+ ld a, $5f
+ lb bc, 11, 3
+ call Mansion2Script_5202f
+ ret
+.asm_52016
+ ld a, $5f
+ lb bc, 2, 4
+ call Mansion2Script_5202f
+ ld a, $e
+ lb bc, 4, 9
+ call Mansion2Script_5202f
+ ld a, $e
+ lb bc, 11, 3
+ call Mansion2Script_5202f
+ ret
+
+Mansion2Script_5202f:
+ ld [wNewTileBlockID], a
+ predef_jump ReplaceTileBlock
+
+Mansion2Script_Switches:
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ ret nz
+ xor a
+ ld [hJoyHeld], a
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+PokemonMansion2F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PokemonMansion2F_TextPointers:
+ dw Mansion2Text1
+ dw PickUpItemText
+ dw Mansion2Text3
+ dw Mansion2Text4
+ dw Mansion2Text5
+
+Mansion2TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MANSION_2_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MANSION_2_TRAINER_0
+ dw Mansion2BattleText1 ; TextBeforeBattle
+ dw Mansion2AfterBattleText1 ; TextAfterBattle
+ dw Mansion2EndBattleText1 ; TextEndBattle
+ dw Mansion2EndBattleText1 ; TextEndBattle
+
+ db $ff
+
+Mansion2Text1:
+ TX_ASM
+ ld hl, Mansion2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion2BattleText1:
+ TX_FAR _Mansion2BattleText1
+ db "@"
+
+Mansion2EndBattleText1:
+ TX_FAR _Mansion2EndBattleText1
+ db "@"
+
+Mansion2AfterBattleText1:
+ TX_FAR _Mansion2AfterBattleText1
+ db "@"
+
+Mansion2Text3:
+ TX_FAR _Mansion2Text3
+ db "@"
+
+Mansion2Text4:
+ TX_FAR _Mansion2Text4
+ db "@"
+
+Mansion3Text6:
+Mansion2Text5:
+ TX_ASM
+ ld hl, Mansion2Text_520c2
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_520b9
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ ld hl, Mansion2Text_520c7
+ call PrintText
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ CheckAndSetEvent EVENT_MANSION_SWITCH_ON
+ jr z, .asm_520bf
+ ResetEventReuseHL EVENT_MANSION_SWITCH_ON
+ jr .asm_520bf
+.asm_520b9
+ ld hl, Mansion2Text_520cc
+ call PrintText
+.asm_520bf
+ jp TextScriptEnd
+
+Mansion2Text_520c2:
+ TX_FAR _Mansion2Text_520c2
+ db "@"
+
+Mansion2Text_520c7:
+ TX_FAR _Mansion2Text_520c7
+ db "@"
+
+Mansion2Text_520cc:
+ TX_FAR _Mansion2Text_520cc
+ db "@"
diff --git a/scripts/PokemonMansion3F.asm b/scripts/PokemonMansion3F.asm
new file mode 100755
index 00000000..e19fec72
--- /dev/null
+++ b/scripts/PokemonMansion3F.asm
@@ -0,0 +1,151 @@
+PokemonMansion3F_Script:
+ call Mansion3Script_52204
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion3TrainerHeader0
+ ld de, PokemonMansion3F_ScriptPointers
+ ld a, [wPokemonMansion3FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonMansion3FCurScript], a
+ ret
+
+Mansion3Script_52204:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_MANSION_SWITCH_ON
+ jr nz, .asm_52224
+ ld a, $e
+ lb bc, 2, 7
+ call Mansion2Script_5202f
+ ld a, $5f
+ lb bc, 5, 7
+ call Mansion2Script_5202f
+ ret
+.asm_52224
+ ld a, $5f
+ lb bc, 2, 7
+ call Mansion2Script_5202f
+ ld a, $e
+ lb bc, 5, 7
+ call Mansion2Script_5202f
+ ret
+
+PokemonMansion3F_ScriptPointers:
+ dw Mansion3Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Mansion3Script0:
+ ld hl, CoordsData_52254
+ call Mansion3Script_5225b
+ ld a, [wWhichDungeonWarp]
+ and a
+ jp z, CheckFightingMapTrainers
+ cp $3
+ ld a, POKEMON_MANSION_1F
+ jr nz, .asm_52250
+ ld a, POKEMON_MANSION_2F
+.asm_52250
+ ld [wDungeonWarpDestinationMap], a
+ ret
+
+CoordsData_52254:
+ db $0E,$10
+ db $0E,$11
+ db $0E,$13
+ db $FF
+
+Mansion3Script_5225b:
+ xor a
+ ld [wWhichDungeonWarp], a
+ ld a, [wd72d]
+ bit 4, a
+ ret nz
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [wCoordIndex]
+ ld [wWhichDungeonWarp], a
+ ld hl, wd72d
+ set 4, [hl]
+ ld hl, wd732
+ set 4, [hl]
+ ret
+
+Mansion3Script_Switches:
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ ret nz
+ xor a
+ ld [hJoyHeld], a
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+PokemonMansion3F_TextPointers:
+ dw Mansion3Text1
+ dw Mansion3Text2
+ dw PickUpItemText
+ dw PickUpItemText
+ dw Mansion3Text5
+ dw Mansion3Text6
+
+Mansion3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_0
+ dw Mansion3BattleText1 ; TextBeforeBattle
+ dw Mansion3AfterBattleText1 ; TextAfterBattle
+ dw Mansion3EndBattleText1 ; TextEndBattle
+ dw Mansion3EndBattleText1 ; TextEndBattle
+
+Mansion3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_1
+ dw Mansion3BattleText2 ; TextBeforeBattle
+ dw Mansion3AfterBattleText2 ; TextAfterBattle
+ dw Mansion3EndBattleText2 ; TextEndBattle
+ dw Mansion3EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+Mansion3Text1:
+ TX_ASM
+ ld hl, Mansion3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion3Text2:
+ TX_ASM
+ ld hl, Mansion3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion3BattleText1:
+ TX_FAR _Mansion3BattleText1
+ db "@"
+
+Mansion3EndBattleText1:
+ TX_FAR _Mansion3EndBattleText1
+ db "@"
+
+Mansion3AfterBattleText1:
+ TX_FAR _Mansion3AfterBattleText1
+ db "@"
+
+Mansion3BattleText2:
+ TX_FAR _Mansion3BattleText2
+ db "@"
+
+Mansion3EndBattleText2:
+ TX_FAR _Mansion3EndBattleText2
+ db "@"
+
+Mansion3AfterBattleText2:
+ TX_FAR _Mansion3AfterBattleText2
+ db "@"
+
+Mansion3Text5:
+ TX_FAR _Mansion3Text5
+ db "@"
diff --git a/scripts/PokemonMansionB1F.asm b/scripts/PokemonMansionB1F.asm
new file mode 100755
index 00000000..0a668c09
--- /dev/null
+++ b/scripts/PokemonMansionB1F.asm
@@ -0,0 +1,130 @@
+PokemonMansionB1F_Script:
+ call Mansion4Script_523cf
+ call EnableAutoTextBoxDrawing
+ ld hl, Mansion4TrainerHeader0
+ ld de, PokemonMansionB1F_ScriptPointers
+ ld a, [wPokemonMansionB1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonMansionB1FCurScript], a
+ ret
+
+Mansion4Script_523cf:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_MANSION_SWITCH_ON
+ jr nz, .asm_523ff
+ ld a, $e
+ ld bc, $80d
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $b06
+ call Mansion2Script_5202f
+ ld a, $5f
+ ld bc, $304
+ call Mansion2Script_5202f
+ ld a, $54
+ ld bc, $808
+ call Mansion2Script_5202f
+ ret
+.asm_523ff
+ ld a, $2d
+ ld bc, $80d
+ call Mansion2Script_5202f
+ ld a, $5f
+ ld bc, $b06
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $304
+ call Mansion2Script_5202f
+ ld a, $e
+ ld bc, $808
+ call Mansion2Script_5202f
+ ret
+
+Mansion4Script_Switches:
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ ret nz
+ xor a
+ ld [hJoyHeld], a
+ ld a, $9
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+PokemonMansionB1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PokemonMansionB1F_TextPointers:
+ dw Mansion4Text1
+ dw Mansion4Text2
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw Mansion4Text7
+ dw PickUpItemText
+ dw Mansion3Text6
+
+Mansion4TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_0
+ dw Mansion4BattleText1 ; TextBeforeBattle
+ dw Mansion4AfterBattleText1 ; TextAfterBattle
+ dw Mansion4EndBattleText1 ; TextEndBattle
+ dw Mansion4EndBattleText1 ; TextEndBattle
+
+Mansion4TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_1
+ dw Mansion4BattleText2 ; TextBeforeBattle
+ dw Mansion4AfterBattleText2 ; TextAfterBattle
+ dw Mansion4EndBattleText2 ; TextEndBattle
+ dw Mansion4EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+Mansion4Text1:
+ TX_ASM
+ ld hl, Mansion4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion4Text2:
+ TX_ASM
+ ld hl, Mansion4TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Mansion4BattleText1:
+ TX_FAR _Mansion4BattleText1
+ db "@"
+
+Mansion4EndBattleText1:
+ TX_FAR _Mansion4EndBattleText1
+ db "@"
+
+Mansion4AfterBattleText1:
+ TX_FAR _Mansion4AfterBattleText1
+ db "@"
+
+Mansion4BattleText2:
+ TX_FAR _Mansion4BattleText2
+ db "@"
+
+Mansion4EndBattleText2:
+ TX_FAR _Mansion4EndBattleText2
+ db "@"
+
+Mansion4AfterBattleText2:
+ TX_FAR _Mansion4AfterBattleText2
+ db "@"
+
+Mansion4Text7:
+ TX_FAR _Mansion4Text7
+ db "@"
diff --git a/scripts/PokemonTower1F.asm b/scripts/PokemonTower1F.asm
new file mode 100755
index 00000000..b383c647
--- /dev/null
+++ b/scripts/PokemonTower1F.asm
@@ -0,0 +1,30 @@
+PokemonTower1F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+PokemonTower1F_TextPointers:
+ dw PokemonTower1Text1
+ dw PokemonTower1Text2
+ dw PokemonTower1Text3
+ dw PokemonTower1Text4
+ dw PokemonTower1Text5
+
+PokemonTower1Text1:
+ TX_FAR _PokemonTower1Text1
+ db "@"
+
+PokemonTower1Text2:
+ TX_FAR _PokemonTower1Text2
+ db "@"
+
+PokemonTower1Text3:
+ TX_FAR _PokemonTower1Text3
+ db "@"
+
+PokemonTower1Text4:
+ TX_FAR _PokemonTower1Text4
+ db "@"
+
+PokemonTower1Text5:
+ TX_FAR _PokemonTower1Text5
+ db "@"
diff --git a/scripts/PokemonTower2F.asm b/scripts/PokemonTower2F.asm
new file mode 100755
index 00000000..54f49cae
--- /dev/null
+++ b/scripts/PokemonTower2F.asm
@@ -0,0 +1,172 @@
+PokemonTower2F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower2F_ScriptPointers
+ ld a, [wPokemonTower2FCurScript]
+ jp CallFunctionInTable
+
+PokemonTower2Script_604fe:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wPokemonTower2FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+PokemonTower2F_ScriptPointers:
+ dw PokemonTower2Script0
+ dw PokemonTower2Script1
+ dw PokemonTower2Script2
+
+PokemonTower2Script0:
+ CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
+ ret nz
+ ld hl, CoordsData_6055e
+ call ArePlayerCoordsInArray
+ ret nc
+ call StopAllMusic
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ResetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
+ ld a, [wCoordIndex]
+ cp $1
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+ jr nz, .asm_60544
+; the rival is on the left side and the player is on the right side
+ SetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
+ ld a, PLAYER_DIR_LEFT
+ ld b, SPRITE_FACING_RIGHT
+.asm_60544
+ ld [wPlayerMovingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ ld a, b
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [hJoyHeld], a
+ ld [hJoyPressed], a
+ ret
+
+CoordsData_6055e:
+ db $05,$0F
+ db $06,$0E
+ db $0F ; isn't this supposed to end in $ff?
+
+PokemonTower2Script1:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, PokemonTower2Script_604fe
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld de, MovementData_605b2
+ CheckEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
+ jr nz, .asm_60589
+ callab Func_f1e22
+ ld de, MovementData_605a9
+.asm_60589
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld a, $2
+ ld [wPokemonTower2FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+MovementData_605a9:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
+
+MovementData_605b2:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+PokemonTower2Script2:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_POKEMON_TOWER_2F_RIVAL
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ xor a
+ ld [wJoyIgnore], a
+ call PlayDefaultMusic
+ ld a, $0
+ ld [wPokemonTower2FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+PokemonTower2F_TextPointers:
+ dw PokemonTower2Text1
+ dw PokemonTower2Text2
+
+PokemonTower2Text1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
+ jr z, .asm_16f24
+ ld hl, PokemonTower2Text_6063c
+ call PrintText
+ jr .asm_41852
+.asm_16f24
+ ld hl, PokemonTower2Text_6062d
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, PokemonTower2Text_60632
+ ld de, PokemonTower2Text_60637
+ call SaveEndBattleTextPointers
+ ld a, OPP_SONY2
+ ld [wCurOpponent], a
+ ld a, [wRivalStarter]
+ add $1
+ ld [wTrainerNo], a
+
+ ld a, $1
+ ld [wPokemonTower2FCurScript], a
+ ld [wCurMapScript], a
+.asm_41852
+ jp TextScriptEnd
+
+PokemonTower2Text_6062d:
+ TX_FAR _PokemonTower2Text_6062d
+ db "@"
+
+PokemonTower2Text_60632:
+ TX_FAR _PokemonTower2Text_60632
+ db "@"
+
+PokemonTower2Text_60637:
+ TX_FAR _PokemonTower2Text_60637
+ db "@"
+
+PokemonTower2Text_6063c:
+ TX_FAR _PokemonTower2Text_6063c
+ db "@"
+
+PokemonTower2Text2:
+ TX_FAR _PokemonTower2Text2
+ db "@"
diff --git a/scripts/pokemontower2_2.asm b/scripts/PokemonTower2F_2.asm
index 42659da3..42659da3 100755
--- a/scripts/pokemontower2_2.asm
+++ b/scripts/PokemonTower2F_2.asm
diff --git a/scripts/PokemonTower3F.asm b/scripts/PokemonTower3F.asm
new file mode 100755
index 00000000..7d8f63e9
--- /dev/null
+++ b/scripts/PokemonTower3F.asm
@@ -0,0 +1,101 @@
+PokemonTower3F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower3TrainerHeader0
+ ld de, PokemonTower3F_ScriptPointers
+ ld a, [wPokemonTower3FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonTower3FCurScript], a
+ ret
+
+PokemonTower3F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PokemonTower3F_TextPointers:
+ dw PokemonTower3Text1
+ dw PokemonTower3Text2
+ dw PokemonTower3Text3
+ dw PickUpItemText
+
+PokemonTower3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_0
+ dw PokemonTower3BattleText1 ; TextBeforeBattle
+ dw PokemonTower3AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower3EndBattleText1 ; TextEndBattle
+ dw PokemonTower3EndBattleText1 ; TextEndBattle
+
+PokemonTower3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_1
+ dw PokemonTower3BattleText2 ; TextBeforeBattle
+ dw PokemonTower3AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower3EndBattleText2 ; TextEndBattle
+ dw PokemonTower3EndBattleText2 ; TextEndBattle
+
+PokemonTower3TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_2
+ dw PokemonTower3BattleText3 ; TextBeforeBattle
+ dw PokemonTower3AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower3EndBattleText3 ; TextEndBattle
+ dw PokemonTower3EndBattleText3 ; TextEndBattle
+ db $ff
+
+PokemonTower3Text1:
+ TX_ASM
+ ld hl, PokemonTower3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower3Text2:
+ TX_ASM
+ ld hl, PokemonTower3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower3Text3:
+ TX_ASM
+ ld hl, PokemonTower3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower3BattleText1:
+ TX_FAR _PokemonTower3BattleText1
+ db "@"
+
+PokemonTower3EndBattleText1:
+ TX_FAR _PokemonTower3EndBattleText1
+ db "@"
+
+PokemonTower3AfterBattleText1:
+ TX_FAR _PokemonTower3AfterBattleText1
+ db "@"
+
+PokemonTower3BattleText2:
+ TX_FAR _PokemonTower3BattleText2
+ db "@"
+
+PokemonTower3EndBattleText2:
+ TX_FAR _PokemonTower3EndBattleText2
+ db "@"
+
+PokemonTower3AfterBattleText2:
+ TX_FAR _PokemonTower3AfterBattleText2
+ db "@"
+
+PokemonTower3BattleText3:
+ TX_FAR _PokemonTower3BattleText3
+ db "@"
+
+PokemonTower3EndBattleText3:
+ TX_FAR _PokemonTower3EndBattleText3
+ db "@"
+
+PokemonTower3AfterBattleText3:
+ TX_FAR _PokemonTower3AfterBattleText3
+ db "@"
diff --git a/scripts/PokemonTower4F.asm b/scripts/PokemonTower4F.asm
new file mode 100755
index 00000000..b8e0d772
--- /dev/null
+++ b/scripts/PokemonTower4F.asm
@@ -0,0 +1,104 @@
+PokemonTower4F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower4TrainerHeader0
+ ld de, PokemonTower4F_ScriptPointers
+ ld a, [wPokemonTower4FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonTower4FCurScript], a
+ ret
+
+PokemonTower4F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PokemonTower4F_TextPointers:
+ dw PokemonTower4Text1
+ dw PokemonTower4Text2
+ dw PokemonTower4Text3
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+PokemonTower4TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_0
+ dw PokemonTower4BattleText1 ; TextBeforeBattle
+ dw PokemonTower4AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower4EndBattleText1 ; TextEndBattle
+ dw PokemonTower4EndBattleText1 ; TextEndBattle
+
+PokemonTower4TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_1
+ dw PokemonTower4BattleText2 ; TextBeforeBattle
+ dw PokemonTower4AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower4EndBattleText2 ; TextEndBattle
+ dw PokemonTower4EndBattleText2 ; TextEndBattle
+
+PokemonTower4TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_2
+ dw PokemonTower4BattleText3 ; TextBeforeBattle
+ dw PokemonTower4AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower4EndBattleText3 ; TextEndBattle
+ dw PokemonTower4EndBattleText3 ; TextEndBattle
+
+ db $ff
+
+PokemonTower4Text1:
+ TX_ASM
+ ld hl, PokemonTower4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower4Text2:
+ TX_ASM
+ ld hl, PokemonTower4TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower4Text3:
+ TX_ASM
+ ld hl, PokemonTower4TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower4BattleText1:
+ TX_FAR _PokemonTower4BattleText1
+ db "@"
+
+PokemonTower4EndBattleText1:
+ TX_FAR _PokemonTower4EndBattleText1
+ db "@"
+
+PokemonTower4AfterBattleText1:
+ TX_FAR _PokemonTower4AfterBattleText1
+ db "@"
+
+PokemonTower4BattleText2:
+ TX_FAR _PokemonTower4BattleText2
+ db "@"
+
+PokemonTower4EndBattleText2:
+ TX_FAR _PokemonTower4EndBattleText2
+ db "@"
+
+PokemonTower4AfterBattleText2:
+ TX_FAR _PokemonTower4AfterBattleText2
+ db "@"
+
+PokemonTower4BattleText3:
+ TX_FAR _PokemonTower4BattleText3
+ db "@"
+
+PokemonTower4EndBattleText3:
+ TX_FAR _PokemonTower4EndBattleText3
+ db "@"
+
+PokemonTower4AfterBattleText3:
+ TX_FAR _PokemonTower4AfterBattleText3
+ db "@"
diff --git a/scripts/PokemonTower5F.asm b/scripts/PokemonTower5F.asm
new file mode 100755
index 00000000..299261e9
--- /dev/null
+++ b/scripts/PokemonTower5F.asm
@@ -0,0 +1,176 @@
+PokemonTower5F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower5TrainerHeader0
+ ld de, PokemonTower5F_ScriptPointers
+ ld a, [wPokemonTower5FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonTower5FCurScript], a
+ ret
+
+PokemonTower5F_ScriptPointers:
+ dw PokemonTower5Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PokemonTower5Script0:
+ ld hl, CoordsData_60992
+ call ArePlayerCoordsInArray
+ jr c, .asm_60960
+ ld hl, wd72e
+ res 4, [hl]
+ ResetEvent EVENT_IN_PURIFIED_ZONE
+ jp CheckFightingMapTrainers
+.asm_60960
+ CheckAndSetEvent EVENT_IN_PURIFIED_ZONE
+ ret nz
+ xor a
+ ld [hJoyHeld], a
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld hl, wd72e
+ set 4, [hl]
+ predef HealParty
+ call GBFadeOutToWhite
+ call Delay3
+ call Delay3
+ call GBFadeInFromWhite
+ ld a, $7
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+ ret
+
+CoordsData_60992:
+ db $08,$0A
+ db $08,$0B
+ db $09,$0A
+ db $09,$0B
+ db $FF
+
+PokemonTower5F_TextPointers:
+ dw PokemonTower5Text1
+ dw PokemonTower5Text2
+ dw PokemonTower5Text3
+ dw PokemonTower5Text4
+ dw PokemonTower5Text5
+ dw PickUpItemText
+ dw PokemonTower5Text7
+
+PokemonTower5TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_0
+ dw PokemonTower5BattleText1 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower5EndBattleText1 ; TextEndBattle
+ dw PokemonTower5EndBattleText1 ; TextEndBattle
+
+PokemonTower5TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_1
+ dw PokemonTower5BattleText2 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower5EndBattleText2 ; TextEndBattle
+ dw PokemonTower5EndBattleText2 ; TextEndBattle
+
+PokemonTower5TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_2
+ dw PokemonTower5BattleText3 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower5EndBattleText3 ; TextEndBattle
+ dw PokemonTower5EndBattleText3 ; TextEndBattle
+
+PokemonTower5TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_3
+ dw PokemonTower5BattleText4 ; TextBeforeBattle
+ dw PokemonTower5AfterBattleText4 ; TextAfterBattle
+ dw PokemonTower5EndBattleText4 ; TextEndBattle
+ dw PokemonTower5EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+PokemonTower5Text1:
+ TX_FAR _PokemonTower5Text1
+ db "@"
+
+PokemonTower5Text2:
+ TX_ASM
+ ld hl, PokemonTower5TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText1:
+ TX_FAR _PokemonTower5BattleText1
+ db "@"
+
+PokemonTower5EndBattleText1:
+ TX_FAR _PokemonTower5EndBattleText1
+ db "@"
+
+PokemonTower5AfterBattleText1:
+ TX_FAR _PokemonTower5AfterBattleText1
+ db "@"
+
+PokemonTower5Text3:
+ TX_ASM
+ ld hl, PokemonTower5TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText2:
+ TX_FAR _PokemonTower5BattleText2
+ db "@"
+
+PokemonTower5EndBattleText2:
+ TX_FAR _PokemonTower5EndBattleText2
+ db "@"
+
+PokemonTower5AfterBattleText2:
+ TX_FAR _PokemonTower5AfterBattleText2
+ db "@"
+
+PokemonTower5Text4:
+ TX_ASM
+ ld hl, PokemonTower5TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText3:
+ TX_FAR _PokemonTower5BattleText3
+ db "@"
+
+PokemonTower5EndBattleText3:
+ TX_FAR _PokemonTower5EndBattleText3
+ db "@"
+
+PokemonTower5AfterBattleText3:
+ TX_FAR _PokemonTower5AfterBattleText3
+ db "@"
+
+PokemonTower5Text5:
+ TX_ASM
+ ld hl, PokemonTower5TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower5BattleText4:
+ TX_FAR _PokemonTower5BattleText4
+ db "@"
+
+PokemonTower5EndBattleText4:
+ TX_FAR _PokemonTower5EndBattleText4
+ db "@"
+
+PokemonTower5AfterBattleText4:
+ TX_FAR _PokemonTower5AfterBattleText4
+ db "@"
+
+PokemonTower5Text7:
+ TX_FAR _PokemonTower5Text7
+ db "@"
diff --git a/scripts/PokemonTower6F.asm b/scripts/PokemonTower6F.asm
new file mode 100755
index 00000000..14c07c48
--- /dev/null
+++ b/scripts/PokemonTower6F.asm
@@ -0,0 +1,212 @@
+PokemonTower6F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower6TrainerHeader0
+ ld de, PokemonTower6F_ScriptPointers
+ ld a, [wPokemonTower6FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPokemonTower6FCurScript], a
+ ret
+
+PokemonTower6Script_60b02:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wPokemonTower6FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+PokemonTower6F_ScriptPointers:
+ dw PokemonTower6Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw PokemonTower6Script3
+ dw PokemonTower6Script4
+
+PokemonTower6Script0:
+ CheckEvent EVENT_BEAT_GHOST_MAROWAK
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_60b45
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyHeld], a
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, MAROWAK
+ ld [wCurOpponent], a
+ ld a, 30
+ ld [wCurEnemyLVL], a
+ ld a, $4
+ ld [wPokemonTower6FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+CoordsData_60b45:
+ db $10,$0A,$FF
+
+PokemonTower6Script4:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, PokemonTower6Script_60b02
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd72d]
+ bit 6, a
+ ret nz
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, [wBattleResult]
+ and a
+ jr nz, .asm_60b82
+ SetEvent EVENT_BEAT_GHOST_MAROWAK
+ ld a, $7
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wPokemonTower6FCurScript], a
+ ld [wCurMapScript], a
+ ret
+.asm_60b82
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, $10
+ ld [wSimulatedJoypadStatesEnd], a
+ xor a
+ ld [wSpriteStateData2 + $06], a
+ ld [wOverrideSimulatedJoypadStatesMask], a
+ ld hl, wd730
+ set 7, [hl]
+ ld a, $3
+ ld [wPokemonTower6FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+PokemonTower6Script3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wPokemonTower6FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+PokemonTower6F_TextPointers:
+ dw PokemonTower6Text1
+ dw PokemonTower6Text2
+ dw PokemonTower6Text3
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PokemonTower6Text6
+ dw PokemonTower6Text7
+
+PokemonTower6TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_0
+ dw PokemonTower6BattleText1 ; TextBeforeBattle
+ dw PokemonTower6AfterBattleText1 ; TextAfterBattle
+ dw PokemonTower6EndBattleText1 ; TextEndBattle
+ dw PokemonTower6EndBattleText1 ; TextEndBattle
+
+PokemonTower6TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_1
+ dw PokemonTower6BattleText2 ; TextBeforeBattle
+ dw PokemonTower6AfterBattleText2 ; TextAfterBattle
+ dw PokemonTower6EndBattleText2 ; TextEndBattle
+ dw PokemonTower6EndBattleText2 ; TextEndBattle
+
+PokemonTower6TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_2
+ dw PokemonTower6BattleText3 ; TextBeforeBattle
+ dw PokemonTower6AfterBattleText3 ; TextAfterBattle
+ dw PokemonTower6EndBattleText3 ; TextEndBattle
+ dw PokemonTower6EndBattleText3 ; TextEndBattle
+
+ db $ff
+
+PokemonTower6Text1:
+ TX_ASM
+ ld hl, PokemonTower6TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower6Text2:
+ TX_ASM
+ ld hl, PokemonTower6TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower6Text3:
+ TX_ASM
+ ld hl, PokemonTower6TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower6Text7:
+ TX_ASM
+ ld hl, PokemonTower2Text_60c1f
+ call PrintText
+ ld a, MAROWAK
+ call PlayCry
+ call WaitForSoundToFinish
+ ld c, 30
+ call DelayFrames
+ ld hl, PokemonTower2Text_60c24
+ call PrintText
+ jp TextScriptEnd
+
+PokemonTower2Text_60c1f:
+ TX_FAR _PokemonTower2Text_60c1f
+ db "@"
+
+PokemonTower2Text_60c24:
+ TX_FAR _PokemonTower2Text_60c24
+ db "@"
+
+PokemonTower6BattleText1:
+ TX_FAR _PokemonTower6BattleText1
+ db "@"
+
+PokemonTower6EndBattleText1:
+ TX_FAR _PokemonTower6EndBattleText1
+ db "@"
+
+PokemonTower6AfterBattleText1:
+ TX_FAR _PokemonTower6AfterBattleText1
+ db "@"
+
+PokemonTower6BattleText2:
+ TX_FAR _PokemonTower6BattleText2
+ db "@"
+
+PokemonTower6EndBattleText2:
+ TX_FAR _PokemonTower6EndBattleText2
+ db "@"
+
+PokemonTower6AfterBattleText2:
+ TX_FAR _PokemonTower6AfterBattleText2
+ db "@"
+
+PokemonTower6BattleText3:
+ TX_FAR _PokemonTower6BattleText3
+ db "@"
+
+PokemonTower6EndBattleText3:
+ TX_FAR _PokemonTower6EndBattleText3
+ db "@"
+
+PokemonTower6AfterBattleText3:
+ TX_FAR _PokemonTower6AfterBattleText3
+ db "@"
+
+PokemonTower6Text6:
+ TX_FAR _PokemonTower6Text6
+ db "@"
diff --git a/scripts/PokemonTower7F.asm b/scripts/PokemonTower7F.asm
new file mode 100755
index 00000000..e34edf66
--- /dev/null
+++ b/scripts/PokemonTower7F.asm
@@ -0,0 +1,315 @@
+PokemonTower7F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower7F_ScriptPointers
+ ld a, [wPokemonTower7FCurScript]
+ call CallFunctionInTable
+ ret
+
+PokemonTower7Script_60d01:
+ xor a
+ ld [wJoyIgnore], a
+PokemonTower7Script_60d05:
+ ld [wPokemonTower7FCurScript], a
+ ret
+
+PokemonTower7F_ScriptPointers:
+ dw PokemonTower7Script0
+ dw PokemonTower7Script1
+ dw PokemonTower7Script2
+ dw PokemonTower7Script3
+ dw PokemonTower7Script4
+ dw PokemonTower7Script5
+ dw PokemonTower7Script6
+ dw PokemonTower7Script7
+ dw PokemonTower7Script8
+ dw PokemonTower7Script9
+ dw PokemonTower7Script10
+ dw PokemonTower7Script11
+
+PokemonTower7Script0:
+ CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_0
+ call z, PokemonTower7Script_60d2a
+ ret
+
+PokemonTower7Script_60d2a:
+ ld a, [wYCoord]
+ cp $c
+ ret nz
+ ResetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+ ld a, [wXCoord]
+ cp $a
+ jr z, .asm_60d47
+ ld a, [wXCoord] ; why?
+ cp $b
+ ret nz
+ SetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+.asm_60d47
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ xor a
+ ld [hJoyHeld], a
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, HS_POKEMON_TOWER_7F_JESSIE
+ call PokemonTower7Script_60eaf
+ ld a, HS_POKEMON_TOWER_7F_JAMES
+ call PokemonTower7Script_60eaf
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $1
+ call PokemonTower7Script_60d05
+ ret
+
+PokemonTower7MovementData_60d7a:
+ db $4
+PokemonTower7MovementData_60d7b:
+ db $4
+ db $4
+ db $4
+ db $FF
+
+PokemonTower7Script1:
+ ld de, PokemonTower7MovementData_60d7b
+ CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+ jr z, .asm_60d8c
+ ld de, PokemonTower7MovementData_60d7a
+.asm_60d8c
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $2
+ call PokemonTower7Script_60d05
+ ret
+
+PokemonTower7Script2:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+PokemonTower7Script3:
+ ld a, $0
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+ jr z, .asm_60dba
+ ld a, $c
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+.asm_60dba
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+PokemonTower7Script4:
+ ld de, PokemonTower7MovementData_60d7a
+ CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+ jr z, .asm_60dcc
+ ld de, PokemonTower7MovementData_60d7b
+.asm_60dcc
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $5
+ call PokemonTower7Script_60d05
+ ret
+PokemonTower7Script5:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+PokemonTower7Script6:
+ ld a, $2
+ ld [wSpriteStateData1 + $2 * $10 + $1], a
+ ld a, $8
+ ld [wSpriteStateData1 + $2 * $10 + $9], a
+ CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
+ jr z, .asm_60dff
+ ld a, $0
+ ld [wSpriteStateData1 + $2 * $10 + $9], a
+.asm_60dff
+ call Delay3
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+PokemonTower7Script7:
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, PokemonTower7JessieJamesEndBattleText
+ ld de, PokemonTower7JessieJamesEndBattleText
+ call SaveEndBattleTextPointers
+ ld a, OPP_ROCKET
+ ld [wCurOpponent], a
+ ld a, $2c
+ ld [wTrainerNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ ld a, $8
+ call PokemonTower7Script_60d05
+ ret
+
+PokemonTower7Script8:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, PokemonTower7Script_60d01
+ ld a, $2
+ ld [wSpriteStateData1 + 1 * $10 + 1], a
+ ld [wSpriteStateData1 + 2 * $10 + 1], a
+ xor a
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ ld [wSpriteStateData1 + 2 * $10 + 9], a
+ ld a, $FF ^ (A_BUTTON | B_BUTTON)
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $9
+ call PokemonTower7Script_60d05
+ ret
+
+PokemonTower7Script9:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ call GBFadeOutToBlack
+ ld a, HS_POKEMON_TOWER_7F_JESSIE
+ call PokemonTower7Script_60ebe
+ ld a, HS_POKEMON_TOWER_7F_JAMES
+ call PokemonTower7Script_60ebe
+ call UpdateSprites
+ call Delay3
+ call GBFadeInFromBlack
+ ld a, $a
+ call PokemonTower7Script_60d05
+ ret
+
+PokemonTower7Script10:
+ call PlayDefaultMusic
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_0
+ ld a, $0
+ call PokemonTower7Script_60d05
+ ret
+
+PokemonTower7Script_60eaf:
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ call UpdateSprites
+ call Delay3
+ ret
+
+PokemonTower7Script_60ebe
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ret
+
+PokemonTower7Script11:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, HS_POKEMON_TOWER_7F_MR_FUJI
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, SPRITE_FACING_UP
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, MR_FUJIS_HOUSE
+ ld [hWarpDestinationMap], a
+ ld a, $1
+ ld [wDestinationWarpID], a
+ ld a, LAVENDER_TOWN
+ ld [wLastMap], a
+ ld hl, wd72d
+ set 3, [hl]
+ ld a, $0
+ ld [wPokemonTower7FCurScript], a
+ ret
+
+PokemonTower7F_TextPointers:
+ dw PokemonTower7Text1
+ dw PokemonTower7Text2
+ dw PokemonTower7Text3
+ dw PokemonTower7Text4
+ dw PokemonTower7Text5
+ dw PokemonTower7Text6
+
+PokemonTower7Text1:
+PokemonTower7Text2:
+ db "@"
+
+PokemonTower7Text4:
+ TX_FAR _PokemonTowerJessieJamesText1
+ TX_ASM
+ ld c, 10
+ call DelayFrames
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ ld a, $0
+ ld [wEmotionBubbleSpriteIndex], a
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld c, 20
+ call DelayFrames
+ jp TextScriptEnd
+
+PokemonTower7Text5:
+ TX_FAR _PokemonTowerJessieJamesText2
+ db "@"
+
+PokemonTower7JessieJamesEndBattleText:
+ TX_FAR _PokemonTowerJessieJamesText3
+ db "@"
+
+PokemonTower7Text6:
+ TX_FAR _PokemonTowerJessieJamesText4
+ TX_ASM
+ ld c, 64
+ call DelayFrames
+ jp TextScriptEnd
+
+PokemonTower7Text3:
+ TX_ASM
+ ld hl, PokemonTower7Text_60f75
+ call PrintText
+ SetEvent EVENT_RESCUED_MR_FUJI
+ SetEvent EVENT_RESCUED_MR_FUJI_2
+ ld a, HS_MR_FUJIS_HOUSE_MR_FUJI
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, HS_SAFFRON_CITY_E
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_SAFFRON_CITY_F
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, $b
+ ld [wPokemonTower7FCurScript], a
+ jp TextScriptEnd
+
+PokemonTower7Text_60f75:
+ TX_FAR _TowerRescueFujiText
+ db "@"
diff --git a/scripts/PowerPlant.asm b/scripts/PowerPlant.asm
new file mode 100755
index 00000000..f720b6f8
--- /dev/null
+++ b/scripts/PowerPlant.asm
@@ -0,0 +1,175 @@
+PowerPlant_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Voltorb0TrainerHeader
+ ld de, PowerPlant_ScriptPointers
+ ld a, [wPowerPlantCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wPowerPlantCurScript], a
+ ret
+
+PowerPlant_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+PowerPlant_TextPointers:
+ dw Voltorb0Text
+ dw Voltorb1Text
+ dw Voltorb2Text
+ dw Voltorb3Text
+ dw Voltorb4Text
+ dw Voltorb5Text
+ dw Voltorb6Text
+ dw Voltorb7Text
+ dw ZapdosText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+Voltorb0TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_0
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_0
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb1TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_1
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_1
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb2TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_2
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_2
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb3TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_3
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_3
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb4TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_4
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_4
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb5TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_5
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_5
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb6TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_6
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_6
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+Voltorb7TrainerHeader:
+ dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_7, 1
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_7, 1
+ dw VoltorbBattleText ; TextBeforeBattle
+ dw VoltorbBattleText ; TextAfterBattle
+ dw VoltorbBattleText ; TextEndBattle
+ dw VoltorbBattleText ; TextEndBattle
+
+ZapdosTrainerHeader:
+ dbEventFlagBit EVENT_BEAT_ZAPDOS, 1
+ db 0 ; view range
+ dwEventFlagAddress EVENT_BEAT_ZAPDOS, 1
+ dw ZapdosBattleText ; TextBeforeBattle
+ dw ZapdosBattleText ; TextAfterBattle
+ dw ZapdosBattleText ; TextEndBattle
+ dw ZapdosBattleText ; TextEndBattle
+
+ db $ff
+
+InitVoltorbBattle:
+ call TalkToTrainer
+ ld a, [wCurMapScript]
+ ld [wPowerPlantCurScript], a
+ jp TextScriptEnd
+
+Voltorb0Text:
+ TX_ASM
+ ld hl, Voltorb0TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb1Text:
+ TX_ASM
+ ld hl, Voltorb1TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb2Text:
+ TX_ASM
+ ld hl, Voltorb2TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb3Text:
+ TX_ASM
+ ld hl, Voltorb3TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb4Text:
+ TX_ASM
+ ld hl, Voltorb4TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb5Text:
+ TX_ASM
+ ld hl, Voltorb5TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb6Text:
+ TX_ASM
+ ld hl, Voltorb6TrainerHeader
+ jr InitVoltorbBattle
+
+Voltorb7Text:
+ TX_ASM
+ ld hl, Voltorb7TrainerHeader
+ jr InitVoltorbBattle
+
+ZapdosText:
+ TX_ASM
+ ld hl, ZapdosTrainerHeader
+ jr InitVoltorbBattle
+
+VoltorbBattleText:
+ TX_FAR _VoltorbBattleText
+ db "@"
+
+ZapdosBattleText:
+ TX_FAR _ZapdosBattleText
+ TX_ASM
+ ld a, ZAPDOS
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
diff --git a/scripts/RedsHouse1F.asm b/scripts/RedsHouse1F.asm
new file mode 100755
index 00000000..e4fa2094
--- /dev/null
+++ b/scripts/RedsHouse1F.asm
@@ -0,0 +1,17 @@
+RedsHouse1F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+RedsHouse1F_TextPointers:
+ dw RedsHouse1FText1
+ dw RedsHouse1FText2
+
+RedsHouse1FText1: ; Mom
+ TX_ASM
+ callab Func_f1b73
+ jp TextScriptEnd
+
+RedsHouse1FText2: ; TV
+ TX_ASM
+ callab Func_f1bc4
+ jp TextScriptEnd
diff --git a/scripts/redshouse1f2.asm b/scripts/RedsHouse1F2.asm
index 8f44d30d..8f44d30d 100755
--- a/scripts/redshouse1f2.asm
+++ b/scripts/RedsHouse1F2.asm
diff --git a/scripts/RedsHouse2F.asm b/scripts/RedsHouse2F.asm
new file mode 100755
index 00000000..e692a0fa
--- /dev/null
+++ b/scripts/RedsHouse2F.asm
@@ -0,0 +1,23 @@
+RedsHouse2F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, RedsHouse2F_ScriptPointers
+ ld a, 0
+ call CallFunctionInTable
+ ret
+
+RedsHouse2F_ScriptPointers:
+ dw RedsHouse2FScript0
+ dw RedsHouse2FScript1
+ dw RedsHouse2FScript2
+ dw RedsHouse2FScript3
+ dw RedsHouse2FScript4
+
+RedsHouse2FScript0:
+RedsHouse2FScript1:
+RedsHouse2FScript2:
+RedsHouse2FScript3:
+RedsHouse2FScript4:
+ ret
+
+RedsHouse2F_TextPointers:
+ db "@"
diff --git a/scripts/RockTunnel1F.asm b/scripts/RockTunnel1F.asm
new file mode 100755
index 00000000..94620d96
--- /dev/null
+++ b/scripts/RockTunnel1F.asm
@@ -0,0 +1,213 @@
+RockTunnel1F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, RockTunnel1TrainerHeader0
+ ld de, RockTunnel1F_ScriptPointers
+ ld a, [wRockTunnel1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRockTunnel1FCurScript], a
+ ret
+
+RockTunnel1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+RockTunnel1F_TextPointers:
+ dw RockTunnel1Text1
+ dw RockTunnel1Text2
+ dw RockTunnel1Text3
+ dw RockTunnel1Text4
+ dw RockTunnel1Text5
+ dw RockTunnel1Text6
+ dw RockTunnel1Text7
+ dw RockTunnel1Text8
+
+RockTunnel1TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_0
+ dw RockTunnel1BattleText1 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText1 ; TextAfterBattle
+ dw RockTunnel1EndBattleText1 ; TextEndBattle
+ dw RockTunnel1EndBattleText1 ; TextEndBattle
+
+RockTunnel1TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1
+ dw RockTunnel1BattleText2 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText2 ; TextAfterBattle
+ dw RockTunnel1EndBattleText2 ; TextEndBattle
+ dw RockTunnel1EndBattleText2 ; TextEndBattle
+
+RockTunnel1TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2
+ dw RockTunnel1BattleText3 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText3 ; TextAfterBattle
+ dw RockTunnel1EndBattleText3 ; TextEndBattle
+ dw RockTunnel1EndBattleText3 ; TextEndBattle
+
+RockTunnel1TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3
+ dw RockTunnel1BattleText4 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText4 ; TextAfterBattle
+ dw RockTunnel1EndBattleText4 ; TextEndBattle
+ dw RockTunnel1EndBattleText4 ; TextEndBattle
+
+RockTunnel1TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4
+ dw RockTunnel1BattleText5 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText5 ; TextAfterBattle
+ dw RockTunnel1EndBattleText5 ; TextEndBattle
+ dw RockTunnel1EndBattleText5 ; TextEndBattle
+
+RockTunnel1TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5
+ dw RockTunnel1BattleText6 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText6 ; TextAfterBattle
+ dw RockTunnel1EndBattleText6 ; TextEndBattle
+ dw RockTunnel1EndBattleText6 ; TextEndBattle
+
+RockTunnel1TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6
+ dw RockTunnel1BattleText7 ; TextBeforeBattle
+ dw RockTunnel1AfterBattleText7 ; TextAfterBattle
+ dw RockTunnel1EndBattleText7 ; TextEndBattle
+ dw RockTunnel1EndBattleText7 ; TextEndBattle
+
+ db $ff
+
+RockTunnel1Text1:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader0
+ jr RockTunnel1TalkToTrainer
+
+RockTunnel1Text2:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader1
+ jr RockTunnel1TalkToTrainer
+
+RockTunnel1Text3:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader2
+ jr RockTunnel1TalkToTrainer
+
+RockTunnel1Text4:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader3
+ jr RockTunnel1TalkToTrainer
+
+RockTunnel1Text5:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader4
+ jr RockTunnel1TalkToTrainer
+
+RockTunnel1Text6:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader5
+ jr RockTunnel1TalkToTrainer
+
+RockTunnel1Text7:
+ TX_ASM
+ ld hl, RockTunnel1TrainerHeader6
+RockTunnel1TalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel1BattleText1:
+ TX_FAR _RockTunnel1BattleText1
+ db "@"
+
+RockTunnel1EndBattleText1:
+ TX_FAR _RockTunnel1EndBattleText1
+ db "@"
+
+RockTunnel1AfterBattleText1:
+ TX_FAR _RockTunnel1AfterBattleText1
+ db "@"
+
+RockTunnel1BattleText2:
+ TX_FAR _RockTunnel1BattleText2
+ db "@"
+
+RockTunnel1EndBattleText2:
+ TX_FAR _RockTunnel1EndBattleText2
+ db "@"
+
+RockTunnel1AfterBattleText2:
+ TX_FAR _RockTunnel1AfterBattleText2
+ db "@"
+
+RockTunnel1BattleText3:
+ TX_FAR _RockTunnel1BattleText3
+ db "@"
+
+RockTunnel1EndBattleText3:
+ TX_FAR _RockTunnel1EndBattleText3
+ db "@"
+
+RockTunnel1AfterBattleText3:
+ TX_FAR _RockTunnel1AfterBattleText3
+ db "@"
+
+RockTunnel1BattleText4:
+ TX_FAR _RockTunnel1BattleText4
+ db "@"
+
+RockTunnel1EndBattleText4:
+ TX_FAR _RockTunnel1EndBattleText4
+ db "@"
+
+RockTunnel1AfterBattleText4:
+ TX_FAR _RockTunnel1AfterBattleText4
+ db "@"
+
+RockTunnel1BattleText5:
+ TX_FAR _RockTunnel1BattleText5
+ db "@"
+
+RockTunnel1EndBattleText5:
+ TX_FAR _RockTunnel1EndBattleText5
+ db "@"
+
+RockTunnel1AfterBattleText5:
+ TX_FAR _RockTunnel1AfterBattleText5
+ db "@"
+
+RockTunnel1BattleText6:
+ TX_FAR _RockTunnel1BattleText6
+ db "@"
+
+RockTunnel1EndBattleText6:
+ TX_FAR _RockTunnel1EndBattleText6
+ db "@"
+
+RockTunnel1AfterBattleText6:
+ TX_FAR _RockTunnel1AfterBattleText6
+ db "@"
+
+RockTunnel1BattleText7:
+ TX_FAR _RockTunnel1BattleText7
+ db "@"
+
+RockTunnel1EndBattleText7:
+ TX_FAR _RockTunnel1EndBattleText7
+ db "@"
+
+RockTunnel1AfterBattleText7:
+ TX_FAR _RockTunnel1AfterBattleText7
+ db "@"
+
+RockTunnel1Text8:
+ TX_FAR _RockTunnel1Text8
+ db "@"
diff --git a/scripts/RockTunnelB1F.asm b/scripts/RockTunnelB1F.asm
new file mode 100755
index 00000000..7e6fcc8b
--- /dev/null
+++ b/scripts/RockTunnelB1F.asm
@@ -0,0 +1,241 @@
+RockTunnelB1F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, RockTunnel2TrainerHeader0
+ ld de, RockTunnelB1F_ScriptPointers
+ ld a, [wRockTunnelB1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRockTunnelB1FCurScript], a
+ ret
+
+RockTunnelB1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+RockTunnelB1F_TextPointers:
+ dw RockTunnel2Text1
+ dw RockTunnel2Text2
+ dw RockTunnel2Text3
+ dw RockTunnel2Text4
+ dw RockTunnel2Text5
+ dw RockTunnel2Text6
+ dw RockTunnel2Text7
+ dw RockTunnel2Text8
+
+RockTunnel2TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0
+ dw RockTunnel2BattleText2 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText2 ; TextAfterBattle
+ dw RockTunnel2EndBattleText2 ; TextEndBattle
+ dw RockTunnel2EndBattleText2 ; TextEndBattle
+
+RockTunnel2TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_1
+ dw RockTunnel2BattleText3 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText3 ; TextAfterBattle
+ dw RockTunnel2EndBattleText3 ; TextEndBattle
+ dw RockTunnel2EndBattleText3 ; TextEndBattle
+
+RockTunnel2TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2
+ dw RockTunnel2BattleText4 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText4 ; TextAfterBattle
+ dw RockTunnel2EndBattleText4 ; TextEndBattle
+ dw RockTunnel2EndBattleText4 ; TextEndBattle
+
+RockTunnel2TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3
+ dw RockTunnel2BattleText5 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText5 ; TextAfterBattle
+ dw RockTunnel2EndBattleText5 ; TextEndBattle
+ dw RockTunnel2EndBattleText5 ; TextEndBattle
+
+RockTunnel2TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4
+ dw RockTunnel2BattleText6 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText6 ; TextAfterBattle
+ dw RockTunnel2EndBattleText6 ; TextEndBattle
+ dw RockTunnel2EndBattleText6 ; TextEndBattle
+
+RockTunnel2TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5
+ dw RockTunnel2BattleText7 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText7 ; TextAfterBattle
+ dw RockTunnel2EndBattleText7 ; TextEndBattle
+ dw RockTunnel2EndBattleText7 ; TextEndBattle
+
+RockTunnel2TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6
+ dw RockTunnel2BattleText8 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText8 ; TextAfterBattle
+ dw RockTunnel2EndBattleText8 ; TextEndBattle
+ dw RockTunnel2EndBattleText8 ; TextEndBattle
+
+RockTunnel2TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7, 1
+ dw RockTunnel2BattleText9 ; TextBeforeBattle
+ dw RockTunnel2AfterBattleText9 ; TextAfterBattle
+ dw RockTunnel2EndBattleText9 ; TextEndBattle
+ dw RockTunnel2EndBattleText9 ; TextEndBattle
+
+ db $ff
+
+RockTunnel2Text1:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text2:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text3:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text4:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text5:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text6:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text7:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2Text8:
+ TX_ASM
+ ld hl, RockTunnel2TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RockTunnel2BattleText2:
+ TX_FAR _RockTunnel2BattleText2
+ db "@"
+
+RockTunnel2EndBattleText2:
+ TX_FAR _RockTunnel2EndBattleText2
+ db "@"
+
+RockTunnel2AfterBattleText2:
+ TX_FAR _RockTunnel2AfterBattleText2
+ db "@"
+
+RockTunnel2BattleText3:
+ TX_FAR _RockTunnel2BattleText3
+ db "@"
+
+RockTunnel2EndBattleText3:
+ TX_FAR _RockTunnel2EndBattleText3
+ db "@"
+
+RockTunnel2AfterBattleText3:
+ TX_FAR _RockTunnel2AfterBattleText3
+ db "@"
+
+RockTunnel2BattleText4:
+ TX_FAR _RockTunnel2BattleText4
+ db "@"
+
+RockTunnel2EndBattleText4:
+ TX_FAR _RockTunnel2EndBattleText4
+ db "@"
+
+RockTunnel2AfterBattleText4:
+ TX_FAR _RockTunnel2AfterBattleText4
+ db "@"
+
+RockTunnel2BattleText5:
+ TX_FAR _RockTunnel2BattleText5
+ db "@"
+
+RockTunnel2EndBattleText5:
+ TX_FAR _RockTunnel2EndBattleText5
+ db "@"
+
+RockTunnel2AfterBattleText5:
+ TX_FAR _RockTunnel2AfterBattleText5
+ db "@"
+
+RockTunnel2BattleText6:
+ TX_FAR _RockTunnel2BattleText6
+ db "@"
+
+RockTunnel2EndBattleText6:
+ TX_FAR _RockTunnel2EndBattleText6
+ db "@"
+
+RockTunnel2AfterBattleText6:
+ TX_FAR _RockTunnel2AfterBattleText6
+ db "@"
+
+RockTunnel2BattleText7:
+ TX_FAR _RockTunnel2BattleText7
+ db "@"
+
+RockTunnel2EndBattleText7:
+ TX_FAR _RockTunnel2EndBattleText7
+ db "@"
+
+RockTunnel2AfterBattleText7:
+ TX_FAR _RockTunnel2AfterBattleText7
+ db "@"
+
+RockTunnel2BattleText8:
+ TX_FAR _RockTunnel2BattleText8
+ db "@"
+
+RockTunnel2EndBattleText8:
+ TX_FAR _RockTunnel2EndBattleText8
+ db "@"
+
+RockTunnel2AfterBattleText8:
+ TX_FAR _RockTunnel2AfterBattleText8
+ db "@"
+
+RockTunnel2BattleText9:
+ TX_FAR _RockTunnel2BattleText9
+ db "@"
+
+RockTunnel2EndBattleText9:
+ TX_FAR _RockTunnel2EndBattleText9
+ db "@"
+
+RockTunnel2AfterBattleText9:
+ TX_FAR _RockTunnel2AfterBattleText9
+ db "@"
diff --git a/scripts/RockTunnelPokecenter.asm b/scripts/RockTunnelPokecenter.asm
new file mode 100755
index 00000000..2fcace67
--- /dev/null
+++ b/scripts/RockTunnelPokecenter.asm
@@ -0,0 +1,29 @@
+RockTunnelPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+RockTunnelPokecenter_TextPointers:
+ dw RockTunnelHealNurseText
+ dw RockTunnelPokecenterText2
+ dw RockTunnelPokecenterText3
+ dw RockTunnelTradeNurseText
+ dw RockTunnelPokecenterText5
+
+RockTunnelHealNurseText:
+ TX_POKECENTER_NURSE
+
+RockTunnelPokecenterText2:
+ TX_FAR _RockTunnelPokecenterText2
+ db "@"
+
+RockTunnelPokecenterText3:
+ TX_FAR _RockTunnelPokecenterText3
+ db "@"
+
+RockTunnelTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+RockTunnelPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/RocketHideoutB1F.asm b/scripts/RocketHideoutB1F.asm
new file mode 100755
index 00000000..0cbddb49
--- /dev/null
+++ b/scripts/RocketHideoutB1F.asm
@@ -0,0 +1,189 @@
+RocketHideoutB1F_Script:
+ call RocketHideout1Script_44be0
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout1TrainerHeader0
+ ld de, RocketHideoutB1F_ScriptPointers
+ ld a, [wRocketHideoutB1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRocketHideoutB1FCurScript], a
+ ret
+
+RocketHideout1Script_44be0:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEvent EVENT_677
+ jr nz, .asm_44c01
+ CheckEventReuseA EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
+ jr nz, .asm_44bf7
+ ld a, $54
+ jr .asm_44c03
+.asm_44bf7
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ CheckEventHL EVENT_677
+.asm_44c01
+ ld a, $e
+.asm_44c03
+ ld [wNewTileBlockID], a
+ lb bc, 8, 12
+ predef_jump ReplaceTileBlock
+
+RocketHideoutB1F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+RocketHideoutB1F_TextPointers:
+ dw RocketHideout1Text1
+ dw RocketHideout1Text2
+ dw RocketHideout1Text3
+ dw RocketHideout1Text4
+ dw RocketHideout1Text5
+ dw PickUpItemText
+ dw PickUpItemText
+
+RocketHideout1TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0
+ dw RocketHideout1BattleText2 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt2 ; TextAfterBattle
+ dw RocketHideout1EndBattleText2 ; TextEndBattle
+ dw RocketHideout1EndBattleText2 ; TextEndBattle
+
+RocketHideout1TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_1
+ dw RocketHideout1BattleText3 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt3 ; TextAfterBattle
+ dw RocketHideout1EndBattleText3 ; TextEndBattle
+ dw RocketHideout1EndBattleText3 ; TextEndBattle
+
+RocketHideout1TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2
+ dw RocketHideout1BattleText4 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt4 ; TextAfterBattle
+ dw RocketHideout1EndBattleText4 ; TextEndBattle
+ dw RocketHideout1EndBattleText4 ; TextEndBattle
+
+RocketHideout1TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3
+ dw RocketHideout1BattleText5 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt5 ; TextAfterBattle
+ dw RocketHideout1EndBattleText5 ; TextEndBattle
+ dw RocketHideout1EndBattleText5 ; TextEndBattle
+
+RocketHideout1TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
+ dw RocketHideout1BattleText6 ; TextBeforeBattle
+ dw RocketHideout1AfterBattleTxt6 ; TextAfterBattle
+ dw RocketHideout1EndBattleText6 ; TextEndBattle
+ dw RocketHideout1EndBattleText6 ; TextEndBattle
+
+ db $ff
+
+RocketHideout1Text1:
+ TX_ASM
+ ld hl, RocketHideout1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text2:
+ TX_ASM
+ ld hl, RocketHideout1TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text3:
+ TX_ASM
+ ld hl, RocketHideout1TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text4:
+ TX_ASM
+ ld hl, RocketHideout1TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1Text5:
+ TX_ASM
+ ld hl, RocketHideout1TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout1EndBattleText6:
+ TX_FAR _RocketHideout1EndBattleText6
+ TX_ASM
+ SetEvent EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
+ ld hl, RocketHideout1Text_44c9f
+ ret
+
+RocketHideout1Text_44c9f:
+ TX_BLINK
+ db "@"
+
+RocketHideout1BattleText2:
+ TX_FAR _RocketHideout1BattleText2
+ db "@"
+
+RocketHideout1EndBattleText2:
+ TX_FAR _RocketHideout1EndBattleText2
+ db "@"
+
+RocketHideout1AfterBattleTxt2:
+ TX_FAR _RocketHideout1AfterBattleTxt2
+ db "@"
+
+RocketHideout1BattleText3:
+ TX_FAR _RocketHideout1BattleText3
+ db "@"
+
+RocketHideout1EndBattleText3:
+ TX_FAR _RocketHideout1EndBattleText3
+ db "@"
+
+RocketHideout1AfterBattleTxt3:
+ TX_FAR _RocketHideout1AfterBattleTxt3
+ db "@"
+
+RocketHideout1BattleText4:
+ TX_FAR _RocketHideout1BattleText4
+ db "@"
+
+RocketHideout1EndBattleText4:
+ TX_FAR _RocketHideout1EndBattleText4
+ db "@"
+
+RocketHideout1AfterBattleTxt4:
+ TX_FAR _RocketHideout1AfterBattleTxt4
+ db "@"
+
+RocketHideout1BattleText5:
+ TX_FAR _RocketHideout1BattleText5
+ db "@"
+
+RocketHideout1EndBattleText5:
+ TX_FAR _RocketHideout1EndBattleText5
+ db "@"
+
+RocketHideout1AfterBattleTxt5:
+ TX_FAR _RocketHideout1AfterBattleTxt5
+ db "@"
+
+RocketHideout1BattleText6:
+ TX_FAR _RocketHideout1BattleText6
+ db "@"
+
+RocketHideout1AfterBattleTxt6:
+ TX_FAR _RocketHideout1AfterBattleTxt6
+ db "@"
diff --git a/scripts/RocketHideoutB2F.asm b/scripts/RocketHideoutB2F.asm
new file mode 100755
index 00000000..1b487df2
--- /dev/null
+++ b/scripts/RocketHideoutB2F.asm
@@ -0,0 +1,450 @@
+RocketHideoutB2F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout2TrainerHeader0
+ ld de, RocketHideoutB2F_ScriptPointers
+ ld a, [wRocketHideoutB2FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRocketHideoutB2FCurScript], a
+ ret
+
+RocketHideoutB2F_ScriptPointers:
+ dw RocketHideout2Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw RocketHideout2Script3
+
+RocketHideout2Script0:
+ ld a, [wYCoord]
+ ld b, a
+ ld a, [wXCoord]
+ ld c, a
+ ld hl, RocketHideout2ArrowTilePlayerMovement
+ call DecodeArrowMovementRLE
+ cp $ff
+ jp z, CheckFightingMapTrainers
+ ld hl, wd736
+ set 7, [hl]
+ call StartSimulatingJoypadStates
+ ld a, SFX_ARROW_TILES
+ call PlaySound
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $3
+ ld [wCurMapScript], a
+ ret
+
+;format:
+;db y,x
+;dw pointer to movement
+RocketHideout2ArrowTilePlayerMovement:
+ db $9,$4
+ dw RocketHideout2ArrowMovement1
+ db $b,$4
+ dw RocketHideout2ArrowMovement2
+ db $f,$4
+ dw RocketHideout2ArrowMovement3
+ db $10,$4
+ dw RocketHideout2ArrowMovement4
+ db $13,$4
+ dw RocketHideout2ArrowMovement1
+ db $16,$4
+ dw RocketHideout2ArrowMovement5
+ db $e,$5
+ dw RocketHideout2ArrowMovement6
+ db $16,$6
+ dw RocketHideout2ArrowMovement7
+ db $18,$6
+ dw RocketHideout2ArrowMovement8
+ db $9,$8
+ dw RocketHideout2ArrowMovement9
+ db $c,$8
+ dw RocketHideout2ArrowMovement10
+ db $f,$8
+ dw RocketHideout2ArrowMovement8
+ db $13,$8
+ dw RocketHideout2ArrowMovement9
+ db $17,$8
+ dw RocketHideout2ArrowMovement11
+ db $e,$9
+ dw RocketHideout2ArrowMovement12
+ db $16,$9
+ dw RocketHideout2ArrowMovement12
+ db $9,$a
+ dw RocketHideout2ArrowMovement13
+ db $a,$a
+ dw RocketHideout2ArrowMovement14
+ db $f,$a
+ dw RocketHideout2ArrowMovement15
+ db $11,$a
+ dw RocketHideout2ArrowMovement16
+ db $13,$a
+ dw RocketHideout2ArrowMovement17
+ db $19,$a
+ dw RocketHideout2ArrowMovement2
+ db $e,$b
+ dw RocketHideout2ArrowMovement18
+ db $10,$b
+ dw RocketHideout2ArrowMovement19
+ db $12,$b
+ dw RocketHideout2ArrowMovement12
+ db $9,$c
+ dw RocketHideout2ArrowMovement20
+ db $b,$c
+ dw RocketHideout2ArrowMovement21
+ db $d,$c
+ dw RocketHideout2ArrowMovement22
+ db $11,$c
+ dw RocketHideout2ArrowMovement23
+ db $a,$d
+ dw RocketHideout2ArrowMovement24
+ db $c,$d
+ dw RocketHideout2ArrowMovement25
+ db $10,$d
+ dw RocketHideout2ArrowMovement26
+ db $12,$d
+ dw RocketHideout2ArrowMovement27
+ db $13,$d
+ dw RocketHideout2ArrowMovement28
+ db $16,$d
+ dw RocketHideout2ArrowMovement29
+ db $17,$d
+ dw RocketHideout2ArrowMovement30
+ db $11,$e
+ dw RocketHideout2ArrowMovement31
+ db $10,$f
+ dw RocketHideout2ArrowMovement12
+ db $e,$10
+ dw RocketHideout2ArrowMovement32
+ db $10,$10
+ dw RocketHideout2ArrowMovement33
+ db $12,$10
+ dw RocketHideout2ArrowMovement34
+ db $a,$11
+ dw RocketHideout2ArrowMovement35
+ db $b,$11
+ dw RocketHideout2ArrowMovement36
+ db $FF
+
+;format: direction, count
+;each list is read starting from the $FF and working backwards
+RocketHideout2ArrowMovement1:
+ db D_LEFT,$02
+ db $FF
+
+RocketHideout2ArrowMovement2:
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout2ArrowMovement3:
+ db D_UP,$04
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout2ArrowMovement4:
+ db D_UP,$04
+ db D_RIGHT,$04
+ db D_UP,$01
+ db $FF
+
+RocketHideout2ArrowMovement5:
+ db D_LEFT,$02
+ db D_UP,$03
+ db $FF
+
+RocketHideout2ArrowMovement6:
+ db D_DOWN,$02
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout2ArrowMovement7:
+ db D_UP,$02
+ db $FF
+
+RocketHideout2ArrowMovement8:
+ db D_UP,$04
+ db $FF
+
+RocketHideout2ArrowMovement9:
+ db D_LEFT,$06
+ db $FF
+
+RocketHideout2ArrowMovement10:
+ db D_UP,$01
+ db $FF
+
+RocketHideout2ArrowMovement11:
+ db D_LEFT,$06
+ db D_UP,$04
+ db $FF
+
+RocketHideout2ArrowMovement12:
+ db D_DOWN,$02
+ db $FF
+
+RocketHideout2ArrowMovement13:
+ db D_LEFT,$08
+ db $FF
+
+RocketHideout2ArrowMovement14:
+ db D_LEFT,$08
+ db D_UP,$01
+ db $FF
+
+RocketHideout2ArrowMovement15:
+ db D_LEFT,$08
+ db D_UP,$06
+ db $FF
+
+RocketHideout2ArrowMovement16:
+ db D_UP,$02
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout2ArrowMovement17:
+ db D_UP,$02
+ db D_RIGHT,$04
+ db D_UP,$02
+ db $FF
+
+RocketHideout2ArrowMovement18:
+ db D_DOWN,$02
+ db D_RIGHT,$04
+ db D_DOWN,$02
+ db $FF
+
+RocketHideout2ArrowMovement19:
+ db D_DOWN,$02
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout2ArrowMovement20:
+ db D_LEFT,$0A
+ db $FF
+
+RocketHideout2ArrowMovement21:
+ db D_LEFT,$0A
+ db D_UP,$02
+ db $FF
+
+RocketHideout2ArrowMovement22:
+ db D_LEFT,$0A
+ db D_UP,$04
+ db $FF
+
+RocketHideout2ArrowMovement23:
+ db D_UP,$02
+ db D_RIGHT,$02
+ db $FF
+
+RocketHideout2ArrowMovement24:
+ db D_RIGHT,$01
+ db D_DOWN,$02
+ db $FF
+
+RocketHideout2ArrowMovement25:
+ db D_RIGHT,$01
+ db $FF
+
+RocketHideout2ArrowMovement26:
+ db D_DOWN,$02
+ db D_RIGHT,$02
+ db $FF
+
+RocketHideout2ArrowMovement27:
+ db D_DOWN,$02
+ db D_LEFT,$02
+ db $FF
+
+RocketHideout2ArrowMovement28:
+ db D_UP,$02
+ db D_RIGHT,$04
+ db D_UP,$02
+ db D_LEFT,$03
+ db $FF
+
+RocketHideout2ArrowMovement29:
+ db D_DOWN,$02
+ db D_LEFT,$04
+ db $FF
+
+RocketHideout2ArrowMovement30:
+ db D_LEFT,$06
+ db D_UP,$04
+ db D_LEFT,$05
+ db $FF
+
+RocketHideout2ArrowMovement31:
+ db D_UP,$02
+ db $FF
+
+RocketHideout2ArrowMovement32:
+ db D_UP,$01
+ db $FF
+
+RocketHideout2ArrowMovement33:
+ db D_UP,$03
+ db $FF
+
+RocketHideout2ArrowMovement34:
+ db D_UP,$05
+ db $FF
+
+RocketHideout2ArrowMovement35:
+ db D_RIGHT,$01
+ db D_DOWN,$02
+ db D_LEFT,$04
+ db $FF
+
+RocketHideout2ArrowMovement36:
+ db D_LEFT,$0A
+ db D_UP,$02
+ db D_LEFT,$05
+ db $FF
+
+RocketHideout2Script3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ jr nz, LoadSpinnerArrowTiles
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wd736
+ res 7, [hl]
+ ld a, $0
+ ld [wCurMapScript], a
+ ret
+
+LoadSpinnerArrowTiles:
+ ld a, [wSpriteStateData1 + 2]
+ srl a
+ srl a
+ ld hl, SpinnerPlayerFacingDirections
+ ld c, a
+ ld b, $0
+ add hl, bc
+ ld a, [hl]
+ ld [wSpriteStateData1 + 2], a
+ ld a, [wCurMapTileset]
+ cp FACILITY
+ ld hl, FacilitySpinnerArrows
+ jr z, .asm_44ff6
+ ld hl, GymSpinnerArrows
+.asm_44ff6
+ ld a, [wSimulatedJoypadStatesIndex]
+ bit 0, a
+ jr nz, .asm_45001
+ ld de, $18
+ add hl, de
+.asm_45001
+ ld a, $4
+ ld bc, $0
+.asm_45006
+ push af
+ push hl
+ push bc
+ add hl, bc
+ ld a, [hli]
+ ld e, a
+ ld a, [hli]
+ ld d, a
+ ld a, [hli]
+ ld c, a
+ ld a, [hli]
+ ld b, a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call CopyVideoData
+ pop bc
+ ld a, $6
+ add c
+ ld c, a
+ pop hl
+ pop af
+ dec a
+ jr nz, .asm_45006
+ ret
+
+spinner: MACRO
+; \1: source
+; \2: offset (BANK() chokes on literals)
+; \3: length
+; \4: dest
+ dw \1 + \2
+ db \3, BANK(\1)
+ dw \4
+ENDM
+
+FacilitySpinnerArrows:
+FACILITY_SPINNER EQU $20 * $10
+vFacilitySpinner EQU vTileset + FACILITY_SPINNER
+
+ spinner SpinnerArrowAnimTiles, $00, 1, vFacilitySpinner
+ spinner SpinnerArrowAnimTiles, $10, 1, vFacilitySpinner + $10
+ spinner SpinnerArrowAnimTiles, $20, 1, vFacilitySpinner + $100
+ spinner SpinnerArrowAnimTiles, $30, 1, vFacilitySpinner + $110
+ spinner Facility_GFX, FACILITY_SPINNER + $000, 1, vFacilitySpinner
+ spinner Facility_GFX, FACILITY_SPINNER + $010, 1, vFacilitySpinner + $10
+ spinner Facility_GFX, FACILITY_SPINNER + $100, 1, vFacilitySpinner + $100
+ spinner Facility_GFX, FACILITY_SPINNER + $110, 1, vFacilitySpinner + $110
+
+GymSpinnerArrows:
+GYM_SPINNER EQU $3c * $10
+vGymSpinner EQU vTileset + GYM_SPINNER
+
+ spinner SpinnerArrowAnimTiles, $10, 1, vGymSpinner
+ spinner SpinnerArrowAnimTiles, $30, 1, vGymSpinner + $10
+ spinner SpinnerArrowAnimTiles, $00, 1, vGymSpinner + $100
+ spinner SpinnerArrowAnimTiles, $20, 1, vGymSpinner + $110
+ spinner Gym_GFX, GYM_SPINNER + $000, 1, vGymSpinner
+ spinner Gym_GFX, GYM_SPINNER + $010, 1, vGymSpinner + $10
+ spinner Gym_GFX, GYM_SPINNER + $100, 1, vGymSpinner + $100
+ spinner Gym_GFX, GYM_SPINNER + $110, 1, vGymSpinner + $110
+
+SpinnerPlayerFacingDirections:
+; This isn't the order of the facing directions. Rather, it's a list of
+; the facing directions that come next. For example, when the player is
+; facing down (00), the next facing direction is left (08).
+ db $08 ; down -> left
+ db $0C ; up -> right
+ db $04 ; left -> up
+ db $00 ; right -> down
+
+; these tiles are the animation for the tiles that push the player in dungeons like Rocket HQ
+SpinnerArrowAnimTiles:
+ INCBIN "gfx/spinner_arrow.2bpp"
+
+RocketHideoutB2F_TextPointers:
+ dw RocketHideout2Text1
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+RocketHideout2TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0
+ dw RocketHideout2BattleText2 ; TextBeforeBattle
+ dw RocketHideout2AfterBattleTxt2 ; TextAfterBattle
+ dw RocketHideout2EndBattleText2 ; TextEndBattle
+ dw RocketHideout2EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+RocketHideout2Text1:
+ TX_ASM
+ ld hl, RocketHideout2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout2BattleText2:
+ TX_FAR _RocketHideout2BattleText2
+ db "@"
+
+RocketHideout2EndBattleText2:
+ TX_FAR _RocketHideout2EndBattleText2
+ db "@"
+
+RocketHideout2AfterBattleTxt2:
+ TX_FAR _RocketHideout2AfterBattleTxt2
+ db "@"
diff --git a/scripts/RocketHideoutB3F.asm b/scripts/RocketHideoutB3F.asm
new file mode 100755
index 00000000..4dd537b3
--- /dev/null
+++ b/scripts/RocketHideoutB3F.asm
@@ -0,0 +1,206 @@
+RocketHideoutB3F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout3TrainerHeader0
+ ld de, RocketHideoutB3F_ScriptPointers
+ ld a, [wRocketHideoutB3FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRocketHideoutB3FCurScript], a
+ ret
+
+RocketHideoutB3F_ScriptPointers:
+ dw RocketHideout3Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw RocketHideout3Script3
+
+RocketHideout3Script0:
+ ld a, [wYCoord]
+ ld b, a
+ ld a, [wXCoord]
+ ld c, a
+ ld hl, RocketHideout3ArrowTilePlayerMovement
+ call DecodeArrowMovementRLE
+ cp $ff
+ jp z, CheckFightingMapTrainers
+ ld hl, wd736
+ set 7, [hl]
+ call StartSimulatingJoypadStates
+ ld a, SFX_ARROW_TILES
+ call PlaySound
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $3
+ ld [wCurMapScript], a
+ ret
+
+;format:
+;db y,x
+;dw pointer to movement
+RocketHideout3ArrowTilePlayerMovement:
+ db $d,$a
+ dw RocketHideout3ArrowMovement6
+ db $13,$a
+ dw RocketHideout3ArrowMovement1
+ db $12,$b
+ dw RocketHideout3ArrowMovement2
+ db $b,$c
+ dw RocketHideout3ArrowMovement3
+ db $11,$c
+ dw RocketHideout3ArrowMovement4
+ db $14,$c
+ dw RocketHideout3ArrowMovement5
+ db $10,$d
+ dw RocketHideout3ArrowMovement6
+ db $b,$e
+ dw RocketHideout3ArrowMovement7
+ db $f,$e
+ dw RocketHideout3ArrowMovement6
+ db $11,$e
+ dw RocketHideout3ArrowMovement8
+ db $13,$e
+ dw RocketHideout3ArrowMovement9
+ db $10,$f
+ dw RocketHideout3ArrowMovement7
+ db $12,$f
+ dw RocketHideout3ArrowMovement10
+ db $d,$10
+ dw RocketHideout3ArrowMovement11
+ db $c,$11
+ dw RocketHideout3ArrowMovement10
+ db $10,$12
+ dw RocketHideout3ArrowMovement12
+ db $FF
+
+;format: direction, count
+;each list is read starting from the $FF and working backwards
+RocketHideout3ArrowMovement1:
+ db D_RIGHT,$04
+ db D_UP,$04
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout3ArrowMovement2:
+ db D_DOWN,$04
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout3ArrowMovement3:
+ db D_LEFT,$02
+ db $FF
+
+RocketHideout3ArrowMovement4:
+ db D_RIGHT,$04
+ db D_UP,$02
+ db D_RIGHT,$02
+ db $FF
+
+RocketHideout3ArrowMovement5:
+ db D_RIGHT,$04
+ db D_UP,$02
+ db D_RIGHT,$02
+ db D_UP,$03
+ db $FF
+
+RocketHideout3ArrowMovement6:
+ db D_RIGHT,$04
+ db $FF
+
+RocketHideout3ArrowMovement7:
+ db D_RIGHT,$02
+ db $FF
+
+RocketHideout3ArrowMovement8:
+ db D_RIGHT,$04
+ db D_UP,$02
+ db $FF
+
+RocketHideout3ArrowMovement9:
+ db D_RIGHT,$04
+ db D_UP,$04
+ db $FF
+
+RocketHideout3ArrowMovement10:
+ db D_DOWN,$04
+ db $FF
+
+RocketHideout3ArrowMovement11:
+ db D_UP,$02
+ db $FF
+
+RocketHideout3ArrowMovement12:
+ db D_UP,$01
+ db $FF
+
+RocketHideout3Script3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ jp nz, LoadSpinnerArrowTiles
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wd736
+ res 7, [hl]
+ ld a, $0
+ ld [wCurMapScript], a
+ ret
+
+RocketHideoutB3F_TextPointers:
+ dw RocketHideout3Text1
+ dw RocketHideout3Text2
+ dw PickUpItemText
+ dw PickUpItemText
+
+RocketHideout3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0
+ dw RocketHideout3BattleText2 ; TextBeforeBattle
+ dw RocketHideout3AfterBattleTxt2 ; TextAfterBattle
+ dw RocketHideout3EndBattleText2 ; TextEndBattle
+ dw RocketHideout3EndBattleText2 ; TextEndBattle
+
+RocketHideout3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_1
+ dw RocketHideout3BattleTxt ; TextBeforeBattle
+ dw RocketHideout3AfterBattleText3 ; TextAfterBattle
+ dw RocketHideout3EndBattleText3 ; TextEndBattle
+ dw RocketHideout3EndBattleText3 ; TextEndBattle
+
+ db $ff
+
+RocketHideout3Text1:
+ TX_ASM
+ ld hl, RocketHideout3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout3BattleText2:
+ TX_FAR _RocketHideout3BattleText2
+ db "@"
+
+RocketHideout3EndBattleText2:
+ TX_FAR _RocketHideout3EndBattleText2
+ db "@"
+
+RocketHideout3AfterBattleTxt2:
+ TX_FAR _RocketHideout3AfterBattleTxt2
+ db "@"
+
+RocketHideout3Text2:
+ TX_ASM
+ ld hl, RocketHideout3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout3BattleTxt:
+ TX_FAR _RocketHideout3BattleTxt
+ db "@"
+
+RocketHideout3EndBattleText3:
+ TX_FAR _RocketHideout3EndBattleText3
+ db "@"
+
+RocketHideout3AfterBattleText3:
+ TX_FAR _RocketHide3AfterBattleText3
+ db "@"
diff --git a/scripts/RocketHideoutB4F.asm b/scripts/RocketHideoutB4F.asm
new file mode 100755
index 00000000..89fd37e1
--- /dev/null
+++ b/scripts/RocketHideoutB4F.asm
@@ -0,0 +1,415 @@
+RocketHideoutB4F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, RocketHideout4TrainerHeader0
+ ld de, RocketHideoutB4F_ScriptPointers
+ ld a, [wRocketHideoutB4FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRocketHideoutB4FCurScript], a
+ ret
+
+RocketHideout4Script_45510:
+ CheckAndResetEvent EVENT_6A0
+ call nz, RocketHideout4Script_45525
+ xor a
+ ld [wJoyIgnore], a
+RocketHideout4Script_4551e:
+ ld [wRocketHideoutB4FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+RocketHideout4Script_45525:
+ ld a, HS_ROCKET_HIDEOUT_B4F_JAMES
+ call RocketHideout4Script_45756
+ ld a, HS_ROCKET_HIDEOUT_B4F_JESSIE
+ call RocketHideout4Script_45756
+ ret
+
+RocketHideoutB4F_ScriptPointers:
+ dw RocketHideout4Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw RocketHideout4Script3
+ dw RocketHideout4Script4
+ dw RocketHideout4Script5
+ dw RocketHideout4Script6
+ dw RocketHideout4Script7
+ dw RocketHideout4Script8
+ dw RocketHideout4Script9
+ dw RocketHideout4Script10
+ dw RocketHideout4Script11
+ dw RocketHideout4Script12
+ dw RocketHideout4Script13
+
+RocketHideout4Script3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, RocketHideout4Script_45510
+ ld a, $fc
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call GBFadeOutToBlack
+ ld a, HS_ROCKET_HIDEOUT_B4F_GIOVANNI
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_ROCKET_HIDEOUT_B4F_ITEM_4
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ call UpdateSprites
+ call GBFadeInFromBlack
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ ld a, $0
+ ld [wRocketHideoutB4FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+RocketHideout4Script0:
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0
+ call z, RocketHideout4Script_455a5
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
+ call z, CheckFightingMapTrainers
+ ret
+
+RocketHideout4Script_455a5:
+ ld a, [wYCoord]
+ cp $e
+ ret nz
+ ResetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1
+ ld a, [wXCoord]
+ cp $18
+ jr z, .asm_455c2
+ ld a, [wXCoord]
+ cp $19
+ ret nz
+ SetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1
+.asm_455c2
+ xor a
+ ld [hJoyHeld], a
+ ld a, $fc
+ ld [wJoyIgnore], a
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ call UpdateSprites
+ call Delay3
+ call UpdateSprites
+ call Delay3
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, HS_ROCKET_HIDEOUT_B4F_JAMES
+ call RocketHideout4Script_45747
+ ld a, HS_ROCKET_HIDEOUT_B4F_JESSIE
+ call RocketHideout4Script_45747
+ ld a, $4
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4JessieJamesMovementData_45605:
+ db $4
+RocketHideout4JessieJamesMovementData_45606:
+ db $4
+ db $4
+ db $4
+ db $ff
+
+RocketHideout4Script4:
+ ld de, RocketHideout4JessieJamesMovementData_45605
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1
+ jr z, .asm_45617
+ ld de, RocketHideout4JessieJamesMovementData_45606
+.asm_45617
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $5
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4Script5:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+RocketHideout4Script6:
+ ld a, $2
+ ld [wSpriteStateData1 + 2 * $10 + 1], a
+ ld a, SPRITE_FACING_LEFT
+ ld [wSpriteStateData1 + 2 * $10 + 9], a
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1
+ jr z, .asm_4564a
+ ld a, SPRITE_FACING_DOWN
+ ld [wSpriteStateData1 + 2 * $10 + 9], a
+.asm_4564a
+ call Delay3
+ ld a, $fc
+ ld [wJoyIgnore], a
+RocketHideout4Script7:
+ ld de, RocketHideout4JessieJamesMovementData_45606
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1
+ jr z, .asm_4565f
+ ld de, RocketHideout4JessieJamesMovementData_45605
+.asm_4565f
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $8
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4Script8:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $fc
+ ld [wJoyIgnore], a
+RocketHideout4Script9:
+ ld a, $2
+ ld [wSpriteStateData1 + 3 * $10 + 1], a
+ ld a, SPRITE_FACING_DOWN
+ ld [wSpriteStateData1 + 3 * $10 + 9], a
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1
+ jr z, .asm_45697
+ ld a, SPRITE_FACING_RIGHT
+ ld [wSpriteStateData1 + 3 * $10 + 9], a
+.asm_45697
+ call Delay3
+ ld a, $c
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+RocketHideout4Script10:
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, RocketHideout4JessieJamesEndBattleText
+ ld de, RocketHideout4JessieJamesEndBattleText
+ call SaveEndBattleTextPointers
+ ld a, OPP_ROCKET
+ ld [wCurOpponent], a
+ ld a, $2b
+ ld [wTrainerNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ SetEvent EVENT_6A0
+ ld a, $b
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4Script11:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, RocketHideout4Script_45510
+ ld a, $2
+ ld [wSpriteStateData1 + 2 * $10 + 1], a
+ ld [wSpriteStateData1 + 3 * $10 + 1], a
+ xor a
+ ld [wSpriteStateData1 + 2 * $10 + 9], a
+ ld [wSpriteStateData1 + 3 * $10 + 9], a
+ ld a, $fc
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $c
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4Script12:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ call GBFadeOutToBlack
+ ld a, HS_ROCKET_HIDEOUT_B4F_JAMES
+ call RocketHideout4Script_45756
+ ld a, HS_ROCKET_HIDEOUT_B4F_JESSIE
+ call RocketHideout4Script_45756
+ call UpdateSprites
+ call Delay3
+ call GBFadeInFromBlack
+ ld a, $d
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4Script13:
+ call PlayDefaultMusic
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0
+ ld a, $0
+ call RocketHideout4Script_4551e
+ ret
+
+RocketHideout4Script_45747:
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ call UpdateSprites
+ call Delay3
+ ret
+
+RocketHideout4Script_45756:
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ret
+
+RocketHideoutB4F_TextPointers:
+ dw RocketHideout4Text0
+ dw RocketHideout4Text1
+ dw RocketHideout4Text2
+ dw RocketHideout4Text3
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw RocketHideout4Text9
+ dw RocketHideout4Text10
+ dw RocketHideout4Text11
+ dw RocketHideout4Text12
+
+RocketHideout4TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
+ db ($1 << 4)
+ dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
+ dw RocketHideout4Trainer0BeforeText
+ dw RocketHideout4Trainer0AfterText
+ dw RocketHideout4Trainer0EndBattleText
+ dw RocketHideout4Trainer0EndBattleText
+ db $ff
+
+RocketHideout4Text1:
+RocketHideout4Text2:
+ db "@"
+
+RocketHideout4Text10:
+ TX_FAR _RocketHideoutJessieJamesText1
+ TX_ASM
+ ld c, 10
+ call DelayFrames
+ ld a, $8
+ ld [wPlayerMovingDirection], a
+ ld a, $0
+ ld [wEmotionBubbleSpriteIndex], a
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld c, 20
+ call DelayFrames
+ jp TextScriptEnd
+
+RocketHideout4Text11:
+ TX_FAR _RocketHideoutJessieJamesText2
+ db "@"
+
+RocketHideout4JessieJamesEndBattleText:
+ TX_FAR _RocketHideoutJessieJamesText3
+ db "@"
+
+RocketHideout4Text12:
+ TX_FAR _RocketHideoutJessieJamesText4
+ TX_ASM
+ ld c, 64
+ call DelayFrames
+ jp TextScriptEnd
+
+RocketHideout4Text0:
+ TX_ASM
+ CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI
+ jp nz, .asm_457fb
+ ld hl, RocketHideout4Text_45804
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, RocketHideout4Text_45809
+ ld de, RocketHideout4Text_45809
+ call SaveEndBattleTextPointers
+ ld a, [hSpriteIndexOrTextID]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3
+ ld [wRocketHideoutB4FCurScript], a
+ ld [wCurMapScript], a
+ jr .asm_45801
+
+.asm_457fb
+ ld hl, RocketHideout4Text9
+ call PrintText
+.asm_45801
+ jp TextScriptEnd
+
+RocketHideout4Text_45804:
+ TX_FAR _RocketHideout4Text_4557a
+ db "@"
+
+RocketHideout4Text_45809:
+ TX_FAR _RocketHideout4Text_4557f
+ db "@"
+
+RocketHideout4Text9:
+ TX_FAR _RocketHideout4Text_45584
+ db "@"
+
+RocketHideout4Text3:
+ TX_ASM
+ ld hl, RocketHideout4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+RocketHideout4Trainer0BeforeText:
+ TX_FAR _RocketHideout4BattleText4
+ db "@"
+
+RocketHideout4Trainer0EndBattleText:
+ TX_FAR _RocketHideout4EndBattleText4
+ TX_BLINK
+ TX_ASM
+ SetEvent EVENT_ROCKET_DROPPED_LIFT_KEY
+ ld a, HS_ROCKET_HIDEOUT_B4F_ITEM_5
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ jp TextScriptEnd
+
+RocketHideout4Trainer0AfterText:
+ TX_ASM
+ ld hl, RocketHideout4Text_45844
+ call PrintText
+ jp TextScriptEnd
+
+RocketHideout4Text_45844:
+ TX_FAR _RocketHideout4Text_455ec
+ db "@"
diff --git a/scripts/RocketHideoutElevator.asm b/scripts/RocketHideoutElevator.asm
new file mode 100755
index 00000000..9525db3a
--- /dev/null
+++ b/scripts/RocketHideoutElevator.asm
@@ -0,0 +1,85 @@
+RocketHideoutElevator_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, RocketHideoutElevatorScript_4572c
+ pop hl
+ bit 7, [hl]
+ res 7, [hl]
+ call nz, RocketHideoutElevatorScript_4575f
+ xor a
+ ld [wAutoTextBoxDrawingControl], a
+ inc a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ret
+
+RocketHideoutElevatorScript_4572c:
+ ld hl, wWarpEntries
+ ld a, [wWarpedFromWhichWarp]
+ ld b, a
+ ld a, [wWarpedFromWhichMap]
+ ld c, a
+ call RocketHideoutElevatorScript_4573a
+
+RocketHideoutElevatorScript_4573a:
+ inc hl
+ inc hl
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ret
+
+RocketHideoutElevatorScript_45741:
+ ld hl, RocketHideoutElavatorFloors
+ call LoadItemList
+ ld hl, RocketHideoutElevatorWarpMaps
+ ld de, wElevatorWarpMaps
+ ld bc, RocketHideoutElevatorWarpMapsEnd - RocketHideoutElevatorWarpMaps
+ call CopyData
+ ret
+
+RocketHideoutElavatorFloors:
+ db $03 ; num elements in list
+ db FLOOR_B1F
+ db FLOOR_B2F
+ db FLOOR_B4F
+ db $FF ; terminator
+
+RocketHideoutElevatorWarpMaps:
+; first byte is warp number
+; second byte is map number
+; These specify where the player goes after getting out of the elevator.
+ db $04, ROCKET_HIDEOUT_B1F
+ db $04, ROCKET_HIDEOUT_B2F
+ db $02, ROCKET_HIDEOUT_B4F
+RocketHideoutElevatorWarpMapsEnd:
+
+RocketHideoutElevatorScript_4575f:
+ call Delay3
+ callba ShakeElevator
+ ret
+
+RocketHideoutElevator_TextPointers:
+ dw RocketHideoutElevatorText1
+
+RocketHideoutElevatorText1:
+ TX_ASM
+ ld b, LIFT_KEY
+ call IsItemInBag
+ jr z, .asm_45782
+ call RocketHideoutElevatorScript_45741
+ ld hl, RocketHideoutElevatorWarpMaps
+ predef DisplayElevatorFloorMenu
+ jr .asm_45788
+.asm_45782
+ ld hl, RocketHideoutElevatorText_4578b
+ call PrintText
+.asm_45788
+ jp TextScriptEnd
+
+RocketHideoutElevatorText_4578b:
+ TX_FAR _RocketElevatorText_4578b
+ TX_WAIT
+ db "@"
diff --git a/scripts/Route1.asm b/scripts/Route1.asm
new file mode 100755
index 00000000..d41360b2
--- /dev/null
+++ b/scripts/Route1.asm
@@ -0,0 +1,23 @@
+Route1_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+Route1_TextPointers:
+ dw Route1Text1
+ dw Route1Text2
+ dw Route1Text3
+
+Route1Text1:
+ TX_ASM
+ callba Func_f1ad2
+ jp TextScriptEnd
+
+Route1Text2:
+ TX_ASM
+ callba Func_f1b0f
+ jp TextScriptEnd
+
+Route1Text3:
+ TX_ASM
+ callba Func_f1b1b
+ jp TextScriptEnd
diff --git a/scripts/Route10.asm b/scripts/Route10.asm
new file mode 100755
index 00000000..3fffa2c0
--- /dev/null
+++ b/scripts/Route10.asm
@@ -0,0 +1,198 @@
+Route10_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route10TrainerHeader0
+ ld de, Route10_ScriptPointers
+ ld a, [wRoute10CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute10CurScript], a
+ ret
+
+Route10_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route10_TextPointers:
+ dw Route10Text1
+ dw Route10Text2
+ dw Route10Text3
+ dw Route10Text4
+ dw Route10Text5
+ dw Route10Text6
+ dw Route10Text7
+ dw PokeCenterSignText
+ dw Route10Text9
+ dw Route10Text10
+
+Route10TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_0
+ dw Route10BattleText1 ; TextBeforeBattle
+ dw Route10AfterBattleText1 ; TextAfterBattle
+ dw Route10EndBattleText1 ; TextEndBattle
+ dw Route10EndBattleText1 ; TextEndBattle
+
+Route10TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_1
+ dw Route10BattleText2 ; TextBeforeBattle
+ dw Route10AfterBattleText2 ; TextAfterBattle
+ dw Route10EndBattleText2 ; TextEndBattle
+ dw Route10EndBattleText2 ; TextEndBattle
+
+Route10TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_2
+ dw Route10BattleText3 ; TextBeforeBattle
+ dw Route10AfterBattleText3 ; TextAfterBattle
+ dw Route10EndBattleText3 ; TextEndBattle
+ dw Route10EndBattleText3 ; TextEndBattle
+
+Route10TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_3
+ dw Route10BattleText4 ; TextBeforeBattle
+ dw Route10AfterBattleText4 ; TextAfterBattle
+ dw Route10EndBattleText4 ; TextEndBattle
+ dw Route10EndBattleText4 ; TextEndBattle
+
+Route10TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_4
+ dw Route10BattleText5 ; TextBeforeBattle
+ dw Route10AfterBattleText5 ; TextAfterBattle
+ dw Route10EndBattleText5 ; TextEndBattle
+ dw Route10EndBattleText5 ; TextEndBattle
+
+Route10TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_5
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_5
+ dw Route10BattleText6 ; TextBeforeBattle
+ dw Route10AfterBattleText6 ; TextAfterBattle
+ dw Route10EndBattleText6 ; TextEndBattle
+ dw Route10EndBattleText6 ; TextEndBattle
+
+ db $ff
+
+Route10Text1:
+ TX_ASM
+ ld hl, Route10TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText1:
+ TX_FAR _Route10BattleText1
+ db "@"
+
+Route10EndBattleText1:
+ TX_FAR _Route10EndBattleText1
+ db "@"
+
+Route10AfterBattleText1:
+ TX_FAR _Route10AfterBattleText1
+ db "@"
+
+Route10Text2:
+ TX_ASM
+ ld hl, Route10TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText2:
+ TX_FAR _Route10BattleText2
+ db "@"
+
+Route10EndBattleText2:
+ TX_FAR _Route10EndBattleText2
+ db "@"
+
+Route10AfterBattleText2:
+ TX_FAR _Route10AfterBattleText2
+ db "@"
+
+Route10Text3:
+ TX_ASM
+ ld hl, Route10TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText3:
+ TX_FAR _Route10BattleText3
+ db "@"
+
+Route10EndBattleText3:
+ TX_FAR _Route10EndBattleText3
+ db "@"
+
+Route10AfterBattleText3:
+ TX_FAR _Route10AfterBattleText3
+ db "@"
+
+Route10Text4:
+ TX_ASM
+ ld hl, Route10TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText4:
+ TX_FAR _Route10BattleText4
+ db "@"
+
+Route10EndBattleText4:
+ TX_FAR _Route10EndBattleText4
+ db "@"
+
+Route10AfterBattleText4:
+ TX_FAR _Route10AfterBattleText4
+ db "@"
+
+Route10Text5:
+ TX_ASM
+ ld hl, Route10TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText5:
+ TX_FAR _Route10BattleText5
+ db "@"
+
+Route10EndBattleText5:
+ TX_FAR _Route10EndBattleText5
+ db "@"
+
+Route10AfterBattleText5:
+ TX_FAR _Route10AfterBattleText5
+ db "@"
+
+Route10Text6:
+ TX_ASM
+ ld hl, Route10TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route10BattleText6:
+ TX_FAR _Route10BattleText6
+ db "@"
+
+Route10EndBattleText6:
+ TX_FAR _Route10EndBattleText6
+ db "@"
+
+Route10AfterBattleText6:
+ TX_FAR _Route10AfterBattleText6
+ db "@"
+
+Route10Text9:
+Route10Text7:
+ TX_FAR _Route10Text7 ; _Route10Text9
+ db "@"
+
+Route10Text10:
+ TX_FAR _Route10Text10
+ db "@"
diff --git a/scripts/Route11.asm b/scripts/Route11.asm
new file mode 100755
index 00000000..891237cc
--- /dev/null
+++ b/scripts/Route11.asm
@@ -0,0 +1,302 @@
+Route11_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route11TrainerHeader0
+ ld de, Route11_ScriptPointers
+ ld a, [wRoute11CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute11CurScript], a
+ ret
+
+Route11_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route11_TextPointers:
+ dw Route11Text1
+ dw Route11Text2
+ dw Route11Text3
+ dw Route11Text4
+ dw Route11Text5
+ dw Route11Text6
+ dw Route11Text7
+ dw Route11Text8
+ dw Route11Text9
+ dw Route11Text10
+ dw Route11Text11
+
+Route11TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_0
+ dw Route11BattleText1 ; TextBeforeBattle
+ dw Route11AfterBattleText1 ; TextAfterBattle
+ dw Route11EndBattleText1 ; TextEndBattle
+ dw Route11EndBattleText1 ; TextEndBattle
+
+Route11TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_1
+ dw Route11BattleText2 ; TextBeforeBattle
+ dw Route11AfterBattleText2 ; TextAfterBattle
+ dw Route11EndBattleText2 ; TextEndBattle
+ dw Route11EndBattleText2 ; TextEndBattle
+
+Route11TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_2
+ dw Route11BattleText3 ; TextBeforeBattle
+ dw Route11AfterBattleText3 ; TextAfterBattle
+ dw Route11EndBattleText3 ; TextEndBattle
+ dw Route11EndBattleText3 ; TextEndBattle
+
+Route11TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_3
+ dw Route11BattleText4 ; TextBeforeBattle
+ dw Route11AfterBattleText4 ; TextAfterBattle
+ dw Route11EndBattleText4 ; TextEndBattle
+ dw Route11EndBattleText4 ; TextEndBattle
+
+Route11TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_4
+ dw Route11BattleText5 ; TextBeforeBattle
+ dw Route11AfterBattleText5 ; TextAfterBattle
+ dw Route11EndBattleText5 ; TextEndBattle
+ dw Route11EndBattleText5 ; TextEndBattle
+
+Route11TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_5
+ dw Route11BattleText6 ; TextBeforeBattle
+ dw Route11AfterBattleText6 ; TextAfterBattle
+ dw Route11EndBattleText6 ; TextEndBattle
+ dw Route11EndBattleText6 ; TextEndBattle
+
+Route11TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_6
+ dw Route11BattleText7 ; TextBeforeBattle
+ dw Route11AfterBattleText7 ; TextAfterBattle
+ dw Route11EndBattleText7 ; TextEndBattle
+ dw Route11EndBattleText7 ; TextEndBattle
+
+Route11TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_7, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_7, 1
+ dw Route11BattleText8 ; TextBeforeBattle
+ dw Route11AfterBattleText8 ; TextAfterBattle
+ dw Route11EndBattleText8 ; TextEndBattle
+ dw Route11EndBattleText8 ; TextEndBattle
+
+Route11TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_8, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_8, 1
+ dw Route11BattleText9 ; TextBeforeBattle
+ dw Route11AfterBattleText9 ; TextAfterBattle
+ dw Route11EndBattleText9 ; TextEndBattle
+ dw Route11EndBattleText9 ; TextEndBattle
+
+Route11TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_9, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_9, 1
+ dw Route11BattleText10 ; TextBeforeBattle
+ dw Route11AfterBattleText10 ; TextAfterBattle
+ dw Route11EndBattleText10 ; TextEndBattle
+ dw Route11EndBattleText10 ; TextEndBattle
+
+ db $ff
+
+Route11Text1:
+ TX_ASM
+ ld hl, Route11TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText1:
+ TX_FAR _Route11BattleText1
+ db "@"
+
+Route11EndBattleText1:
+ TX_FAR _Route11EndBattleText1
+ db "@"
+
+Route11AfterBattleText1:
+ TX_FAR _Route11AfterBattleText1
+ db "@"
+
+Route11Text2:
+ TX_ASM
+ ld hl, Route11TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText2:
+ TX_FAR _Route11BattleText2
+ db "@"
+
+Route11EndBattleText2:
+ TX_FAR _Route11EndBattleText2
+ db "@"
+
+Route11AfterBattleText2:
+ TX_FAR _Route11AfterBattleText2
+ db "@"
+
+Route11Text3:
+ TX_ASM
+ ld hl, Route11TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText3:
+ TX_FAR _Route11BattleText3
+ db "@"
+
+Route11EndBattleText3:
+ TX_FAR _Route11EndBattleText3
+ db "@"
+
+Route11AfterBattleText3:
+ TX_FAR _Route11AfterBattleText3
+ db "@"
+
+Route11Text4:
+ TX_ASM
+ ld hl, Route11TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText4:
+ TX_FAR _Route11BattleText4
+ db "@"
+
+Route11EndBattleText4:
+ TX_FAR _Route11EndBattleText4
+ db "@"
+
+Route11AfterBattleText4:
+ TX_FAR _Route11AfterBattleText4
+ db "@"
+
+Route11Text5:
+ TX_ASM
+ ld hl, Route11TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText5:
+ TX_FAR _Route11BattleText5
+ db "@"
+
+Route11EndBattleText5:
+ TX_FAR _Route11EndBattleText5
+ db "@"
+
+Route11AfterBattleText5:
+ TX_FAR _Route11AfterBattleText5
+ db "@"
+
+Route11Text6:
+ TX_ASM
+ ld hl, Route11TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText6:
+ TX_FAR _Route11BattleText6
+ db "@"
+
+Route11EndBattleText6:
+ TX_FAR _Route11EndBattleText6
+ db "@"
+
+Route11AfterBattleText6:
+ TX_FAR _Route11AfterBattleText6
+ db "@"
+
+Route11Text7:
+ TX_ASM
+ ld hl, Route11TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText7:
+ TX_FAR _Route11BattleText7
+ db "@"
+
+Route11EndBattleText7:
+ TX_FAR _Route11EndBattleText7
+ db "@"
+
+Route11AfterBattleText7:
+ TX_FAR _Route11AfterBattleText7
+ db "@"
+
+Route11Text8:
+ TX_ASM
+ ld hl, Route11TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText8:
+ TX_FAR _Route11BattleText8
+ db "@"
+
+Route11EndBattleText8:
+ TX_FAR _Route11EndBattleText8
+ db "@"
+
+Route11AfterBattleText8:
+ TX_FAR _Route11AfterBattleText8
+ db "@"
+
+Route11Text9:
+ TX_ASM
+ ld hl, Route11TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText9:
+ TX_FAR _Route11BattleText9
+ db "@"
+
+Route11EndBattleText9:
+ TX_FAR _Route11EndBattleText9
+ db "@"
+
+Route11AfterBattleText9:
+ TX_FAR _Route11AfterBattleText9
+ db "@"
+
+Route11Text10:
+ TX_ASM
+ ld hl, Route11TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route11BattleText10:
+ TX_FAR _Route11BattleText10
+ db "@"
+
+Route11EndBattleText10:
+ TX_FAR _Route11EndBattleText10
+ db "@"
+
+Route11AfterBattleText10:
+ TX_FAR _Route11AfterBattleText10
+ db "@"
+
+Route11Text11:
+ TX_FAR _Route11Text11
+ db "@"
diff --git a/scripts/Route11Gate1F.asm b/scripts/Route11Gate1F.asm
new file mode 100755
index 00000000..8e5f6c03
--- /dev/null
+++ b/scripts/Route11Gate1F.asm
@@ -0,0 +1,9 @@
+Route11Gate1F_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route11Gate1F_TextPointers:
+ dw Route11GateText1
+
+Route11GateText1:
+ TX_FAR _Route11GateText1
+ db "@"
diff --git a/scripts/Route11Gate2F.asm b/scripts/Route11Gate2F.asm
new file mode 100755
index 00000000..fde7fdd6
--- /dev/null
+++ b/scripts/Route11Gate2F.asm
@@ -0,0 +1,76 @@
+Route11Gate2F_Script:
+ jp DisableAutoTextBoxDrawing
+
+Route11Gate2F_TextPointers:
+ dw Route11GateUpstairsText1
+ dw Route11GateUpstairsText2
+ dw Route11GateUpstairsText3
+ dw Route11GateUpstairsText4
+
+Route11GateUpstairsText1:
+ TX_ASM
+ ld a, $0
+ ld [wWhichTrade], a
+ predef DoInGameTradeDialogue
+Route11GateUpstairsScriptEnd:
+ jp TextScriptEnd
+
+Route11GateUpstairsText2:
+ TX_ASM
+ CheckEvent EVENT_GOT_ITEMFINDER, 1
+ jr c, .asm_4949b
+ ld a, 30 ; pokemon needed
+ ld [hOaksAideRequirement], a
+ ld a, ITEMFINDER ; oak's aide reward
+ ld [hOaksAideRewardItem], a
+ ld [wd11e], a
+ call GetItemName
+ ld h, d
+ ld l, e
+ ld de, wOaksAideRewardItemName
+ ld bc, ITEM_NAME_LENGTH
+ call CopyData
+ predef OaksAideScript
+ ld a, [hOaksAideResult]
+ dec a
+ jr nz, .asm_494a1
+ SetEvent EVENT_GOT_ITEMFINDER
+.asm_4949b
+ ld hl, Route11GateUpstairsText_494a3
+ call PrintText
+.asm_494a1
+ jr Route11GateUpstairsScriptEnd
+
+Route11GateUpstairsText_494a3:
+ TX_FAR _Route11GateUpstairsText_494a3
+ db "@"
+
+Route11GateUpstairsText3:
+ TX_ASM
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ jp nz, GateUpstairsScript_PrintIfFacingUp
+ CheckEvent EVENT_BEAT_ROUTE12_SNORLAX
+ ld hl, BinocularsSnorlaxText
+ jr z, .print
+ ld hl, BinocularsNoSnorlaxText
+.print
+ call PrintText
+ jp TextScriptEnd
+
+BinocularsSnorlaxText:
+ TX_FAR _BinocularsSnorlaxText
+ db "@"
+
+BinocularsNoSnorlaxText:
+ TX_FAR _BinocularsNoSnorlaxText
+ db "@"
+
+Route11GateUpstairsText4:
+ TX_ASM
+ ld hl, Route11GateUpstairsText_494d5
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route11GateUpstairsText_494d5:
+ TX_FAR _Route11GateUpstairsText_494d5
+ db "@"
diff --git a/scripts/Route12.asm b/scripts/Route12.asm
new file mode 100755
index 00000000..510e7727
--- /dev/null
+++ b/scripts/Route12.asm
@@ -0,0 +1,288 @@
+Route12_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route12TrainerHeader0
+ ld de, Route12_ScriptPointers
+ ld a, [wRoute12CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute12CurScript], a
+ ret
+
+Route12Script_59606:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute12CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route12_ScriptPointers:
+ dw Route12Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw Route12Script3
+
+Route12Script0:
+ CheckEventHL EVENT_BEAT_ROUTE12_SNORLAX
+ jp nz, CheckFightingMapTrainers
+ CheckEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX
+ ResetEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX
+ jp z, CheckFightingMapTrainers
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, SNORLAX
+ ld [wCurOpponent], a
+ ld a, 30
+ ld [wCurEnemyLVL], a
+ ld a, HS_ROUTE_12_SNORLAX
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, $3
+ ld [wRoute12CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route12Script3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jr z, Route12Script_59606
+ call UpdateSprites
+ ld a, [wBattleResult]
+ cp $2
+ jr z, .asm_59664
+ ld a, $e
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.asm_59664
+ SetEvent EVENT_BEAT_ROUTE12_SNORLAX
+ call Delay3
+ ld a, $0
+ ld [wRoute12CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route12_TextPointers:
+ dw Route12Text1
+ dw Route12Text2
+ dw Route12Text3
+ dw Route12Text4
+ dw Route12Text5
+ dw Route12Text6
+ dw Route12Text7
+ dw Route12Text8
+ dw PickUpItemText
+ dw PickUpItemText
+ dw Route12Text11
+ dw Route12Text12
+ dw Route12Text13
+ dw Route12Text14
+
+Route12TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_0
+ dw Route12BattleText1 ; TextBeforeBattle
+ dw Route12AfterBattleText1 ; TextAfterBattle
+ dw Route12EndBattleText1 ; TextEndBattle
+ dw Route12EndBattleText1 ; TextEndBattle
+
+Route12TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_1
+ dw Route12BattleText2 ; TextBeforeBattle
+ dw Route12AfterBattleText2 ; TextAfterBattle
+ dw Route12EndBattleText2 ; TextEndBattle
+ dw Route12EndBattleText2 ; TextEndBattle
+
+Route12TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_2
+ dw Route12BattleText3 ; TextBeforeBattle
+ dw Route12AfterBattleText3 ; TextAfterBattle
+ dw Route12EndBattleText3 ; TextEndBattle
+ dw Route12EndBattleText3 ; TextEndBattle
+
+Route12TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_3
+ dw Route12BattleText4 ; TextBeforeBattle
+ dw Route12AfterBattleText4 ; TextAfterBattle
+ dw Route12EndBattleText4 ; TextEndBattle
+ dw Route12EndBattleText4 ; TextEndBattle
+
+Route12TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_4
+ dw Route12BattleText5 ; TextBeforeBattle
+ dw Route12AfterBattleText5 ; TextAfterBattle
+ dw Route12EndBattleText5 ; TextEndBattle
+ dw Route12EndBattleText5 ; TextEndBattle
+
+Route12TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_5
+ dw Route12BattleText6 ; TextBeforeBattle
+ dw Route12AfterBattleText6 ; TextAfterBattle
+ dw Route12EndBattleText6 ; TextEndBattle
+ dw Route12EndBattleText6 ; TextEndBattle
+
+Route12TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_6, 1
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_6, 1
+ dw Route12BattleText7 ; TextBeforeBattle
+ dw Route12AfterBattleText7 ; TextAfterBattle
+ dw Route12EndBattleText7 ; TextEndBattle
+ dw Route12EndBattleText7 ; TextEndBattle
+
+ db $ff
+
+Route12Text1:
+ TX_FAR _Route12Text1
+ db "@"
+
+Route12Text13:
+ TX_FAR _Route12Text13
+ db "@"
+
+Route12Text14:
+ TX_FAR _Route12Text14
+ db "@"
+
+Route12Text2:
+ TX_ASM
+ ld hl, Route12TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText1:
+ TX_FAR _Route12BattleText1
+ db "@"
+
+Route12EndBattleText1:
+ TX_FAR _Route12EndBattleText1
+ db "@"
+
+Route12AfterBattleText1:
+ TX_FAR _Route12AfterBattleText1
+ db "@"
+
+Route12Text3:
+ TX_ASM
+ ld hl, Route12TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText2:
+ TX_FAR _Route12BattleText2
+ db "@"
+
+Route12EndBattleText2:
+ TX_FAR _Route12EndBattleText2
+ db "@"
+
+Route12AfterBattleText2:
+ TX_FAR _Route12AfterBattleText2
+ db "@"
+
+Route12Text4:
+ TX_ASM
+ ld hl, Route12TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText3:
+ TX_FAR _Route12BattleText3
+ db "@"
+
+Route12EndBattleText3:
+ TX_FAR _Route12EndBattleText3
+ db "@"
+
+Route12AfterBattleText3:
+ TX_FAR _Route12AfterBattleText3
+ db "@"
+
+Route12Text5:
+ TX_ASM
+ ld hl, Route12TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText4:
+ TX_FAR _Route12BattleText4
+ db "@"
+
+Route12EndBattleText4:
+ TX_FAR _Route12EndBattleText4
+ db "@"
+
+Route12AfterBattleText4:
+ TX_FAR _Route12AfterBattleText4
+ db "@"
+
+Route12Text6:
+ TX_ASM
+ ld hl, Route12TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText5:
+ TX_FAR _Route12BattleText5
+ db "@"
+
+Route12EndBattleText5:
+ TX_FAR _Route12EndBattleText5
+ db "@"
+
+Route12AfterBattleText5:
+ TX_FAR _Route12AfterBattleText5
+ db "@"
+
+Route12Text7:
+ TX_ASM
+ ld hl, Route12TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText6:
+ TX_FAR _Route12BattleText6
+ db "@"
+
+Route12EndBattleText6:
+ TX_FAR _Route12EndBattleText6
+ db "@"
+
+Route12AfterBattleText6:
+ TX_FAR _Route12AfterBattleText6
+ db "@"
+
+Route12Text8:
+ TX_ASM
+ ld hl, Route12TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route12BattleText7:
+ TX_FAR _Route12BattleText7
+ db "@"
+
+Route12EndBattleText7:
+ TX_FAR _Route12EndBattleText7
+ db "@"
+
+Route12AfterBattleText7:
+ TX_FAR _Route12AfterBattleText7
+ db "@"
+
+Route12Text11:
+ TX_FAR _Route12Text11
+ db "@"
+
+Route12Text12:
+ TX_FAR _Route12Text12
+ db "@"
diff --git a/scripts/Route12Gate1F.asm b/scripts/Route12Gate1F.asm
new file mode 100755
index 00000000..52d427ee
--- /dev/null
+++ b/scripts/Route12Gate1F.asm
@@ -0,0 +1,9 @@
+Route12Gate1F_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route12Gate1F_TextPointers:
+ dw Route12GateText1
+
+Route12GateText1:
+ TX_FAR _Route12GateText1
+ db "@"
diff --git a/scripts/Route12Gate2F.asm b/scripts/Route12Gate2F.asm
new file mode 100755
index 00000000..4fe120e8
--- /dev/null
+++ b/scripts/Route12Gate2F.asm
@@ -0,0 +1,78 @@
+Route12Gate2F_Script:
+ jp DisableAutoTextBoxDrawing
+
+Route12Gate2F_TextPointers:
+ dw Route12GateUpstairsText1
+ dw Route12GateUpstairsText2
+ dw Route12GateUpstairsText3
+
+Route12GateUpstairsText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_TM39, 1
+ jr c, .asm_0ad3c
+ ld hl, TM39PreReceiveText
+ call PrintText
+ lb bc, TM_39, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedTM39Text
+ call PrintText
+ SetEvent EVENT_GOT_TM39
+ jr .asm_4ba56
+.BagFull
+ ld hl, TM39NoRoomText
+ call PrintText
+ jr .asm_4ba56
+.asm_0ad3c
+ ld hl, TM39ExplanationText
+ call PrintText
+.asm_4ba56
+ jp TextScriptEnd
+
+TM39PreReceiveText:
+ TX_FAR _TM39PreReceiveText
+ db "@"
+
+ReceivedTM39Text:
+ TX_FAR _ReceivedTM39Text
+ TX_SFX_ITEM_1
+ db "@"
+
+TM39ExplanationText:
+ TX_FAR _TM39ExplanationText
+ db "@"
+
+TM39NoRoomText:
+ TX_FAR _TM39NoRoomText
+ db "@"
+
+Route12GateUpstairsText2:
+ TX_ASM
+ ld hl, Route12GateUpstairsText_495b8
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route12GateUpstairsText_495b8:
+ TX_FAR _Route12GateUpstairsText_495b8
+ db "@"
+
+Route12GateUpstairsText3:
+ TX_ASM
+ ld hl, Route12GateUpstairsText_495c4
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route12GateUpstairsText_495c4:
+ TX_FAR _Route12GateUpstairsText_495c4
+ db "@"
+
+GateUpstairsScript_PrintIfFacingUp:
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_UP
+ jr z, .up
+ ld a, $1
+ jr .done
+.up
+ call PrintText
+ xor a
+.done
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ jp TextScriptEnd
diff --git a/scripts/Route12SuperRodHouse.asm b/scripts/Route12SuperRodHouse.asm
new file mode 100755
index 00000000..de8ed8f0
--- /dev/null
+++ b/scripts/Route12SuperRodHouse.asm
@@ -0,0 +1,57 @@
+Route12SuperRodHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route12SuperRodHouse_TextPointers:
+ dw Route12HouseText1
+
+Route12HouseText1:
+ TX_ASM
+ ld a, [wd728]
+ bit 5, a
+ jr nz, .asm_b4cad
+ ld hl, Route12HouseText_564c0
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_a2d76
+ lb bc, SUPER_ROD, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, wd728
+ set 5, [hl]
+ ld hl, Route12HouseText_564c5
+ jr .asm_df984
+.BagFull
+ ld hl, Route12HouseText_564d9
+ jr .asm_df984
+.asm_a2d76
+ ld hl, Route12HouseText_564cf
+ jr .asm_df984
+.asm_b4cad
+ ld hl, Route12HouseText_564d4
+.asm_df984
+ call PrintText
+ jp TextScriptEnd
+
+Route12HouseText_564c0:
+ TX_FAR _Route12HouseText_564c0
+ db "@"
+
+Route12HouseText_564c5:
+ TX_FAR _Route12HouseText_564c5
+ TX_SFX_ITEM_1
+ TX_FAR _Route12HouseText_564ca
+ db "@"
+
+Route12HouseText_564cf:
+ TX_FAR _Route12HouseText_564cf
+ db "@"
+
+Route12HouseText_564d4:
+ TX_FAR _Route12HouseText_564d4
+ db "@"
+
+Route12HouseText_564d9:
+ TX_FAR _Route12HouseText_564d9
+ db "@"
diff --git a/scripts/Route13.asm b/scripts/Route13.asm
new file mode 100755
index 00000000..8f92147e
--- /dev/null
+++ b/scripts/Route13.asm
@@ -0,0 +1,312 @@
+Route13_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route13TrainerHeader0
+ ld de, Route13_ScriptPointers
+ ld a, [wRoute13CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute13CurScript], a
+ ret
+
+Route13_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route13_TextPointers:
+ dw Route13Text1
+ dw Route13Text2
+ dw Route13Text3
+ dw Route13Text4
+ dw Route13Text5
+ dw Route13Text6
+ dw Route13Text7
+ dw Route13Text8
+ dw Route13Text9
+ dw Route13Text10
+ dw Route13Text11
+ dw Route13Text12
+ dw Route13Text13
+
+Route13TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_0
+ dw Route13BattleText2 ; TextBeforeBattle
+ dw Route13AfterBattleText2 ; TextAfterBattle
+ dw Route13EndBattleText2 ; TextEndBattle
+ dw Route13EndBattleText2 ; TextEndBattle
+
+Route13TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_1
+ dw Route13BattleText3 ; TextBeforeBattle
+ dw Route13AfterBattleText3 ; TextAfterBattle
+ dw Route13EndBattleText3 ; TextEndBattle
+ dw Route13EndBattleText3 ; TextEndBattle
+
+Route13TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_2
+ dw Route13BattleText4 ; TextBeforeBattle
+ dw Route13AfterBattleText4 ; TextAfterBattle
+ dw Route13EndBattleText4 ; TextEndBattle
+ dw Route13EndBattleText4 ; TextEndBattle
+
+Route13TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_3
+ dw Route13BattleText5 ; TextBeforeBattle
+ dw Route13AfterBattleText5 ; TextAfterBattle
+ dw Route13EndBattleText5 ; TextEndBattle
+ dw Route13EndBattleText5 ; TextEndBattle
+
+Route13TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_4
+ dw Route13BattleText6 ; TextBeforeBattle
+ dw Route13AfterBattleText6 ; TextAfterBattle
+ dw Route13EndBattleText6 ; TextEndBattle
+ dw Route13EndBattleText6 ; TextEndBattle
+
+Route13TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_5
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_5
+ dw Route13BattleText7 ; TextBeforeBattle
+ dw Route13AfterBattleText7 ; TextAfterBattle
+ dw Route13EndBattleText7 ; TextEndBattle
+ dw Route13EndBattleText7 ; TextEndBattle
+
+Route13TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_6
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_6
+ dw Route13BattleText8 ; TextBeforeBattle
+ dw Route13AfterBattleText8 ; TextAfterBattle
+ dw Route13EndBattleText8 ; TextEndBattle
+ dw Route13EndBattleText8 ; TextEndBattle
+
+Route13TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_7, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_7, 1
+ dw Route13BattleText9 ; TextBeforeBattle
+ dw Route13AfterBattleText9 ; TextAfterBattle
+ dw Route13EndBattleText9 ; TextEndBattle
+ dw Route13EndBattleText9 ; TextEndBattle
+
+Route13TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_8, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_8, 1
+ dw Route13BattleText10 ; TextBeforeBattle
+ dw Route13AfterBattleText10 ; TextAfterBattle
+ dw Route13EndBattleText10 ; TextEndBattle
+ dw Route13EndBattleText10 ; TextEndBattle
+
+Route13TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_9, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_9, 1
+ dw Route13BattleText11 ; TextBeforeBattle
+ dw Route13AfterBattleText11 ; TextAfterBattle
+ dw Route13EndBattleText11 ; TextEndBattle
+ dw Route13EndBattleText11 ; TextEndBattle
+
+ db $ff
+
+Route13Text1:
+ TX_ASM
+ ld hl, Route13TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText2:
+ TX_FAR _Route13BattleText2
+ db "@"
+
+Route13EndBattleText2:
+ TX_FAR _Route13EndBattleText2
+ db "@"
+
+Route13AfterBattleText2:
+ TX_FAR _Route13AfterBattleText2
+ db "@"
+
+Route13Text2:
+ TX_ASM
+ ld hl, Route13TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText3:
+ TX_FAR _Route13BattleText3
+ db "@"
+
+Route13EndBattleText3:
+ TX_FAR _Route13EndBattleText3
+ db "@"
+
+Route13AfterBattleText3:
+ TX_FAR _Route13AfterBattleText3
+ db "@"
+
+Route13Text3:
+ TX_ASM
+ ld hl, Route13TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText4:
+ TX_FAR _Route13BattleText4
+ db "@"
+
+Route13EndBattleText4:
+ TX_FAR _Route13EndBattleText4
+ db "@"
+
+Route13AfterBattleText4:
+ TX_FAR _Route13AfterBattleText4
+ db "@"
+
+Route13Text4:
+ TX_ASM
+ ld hl, Route13TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText5:
+ TX_FAR _Route13BattleText5
+ db "@"
+
+Route13EndBattleText5:
+ TX_FAR _Route13EndBattleText5
+ db "@"
+
+Route13AfterBattleText5:
+ TX_FAR _Route13AfterBattleText5
+ db "@"
+
+Route13Text5:
+ TX_ASM
+ ld hl, Route13TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText6:
+ TX_FAR _Route13BattleText6
+ db "@"
+
+Route13EndBattleText6:
+ TX_FAR _Route13EndBattleText6
+ db "@"
+
+Route13AfterBattleText6:
+ TX_FAR _Route13AfterBattleText6
+ db "@"
+
+Route13Text6:
+ TX_ASM
+ ld hl, Route13TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText7:
+ TX_FAR _Route13BattleText7
+ db "@"
+
+Route13EndBattleText7:
+ TX_FAR _Route13EndBattleText7
+ db "@"
+
+Route13AfterBattleText7:
+ TX_FAR _Route13AfterBattleText7
+ db "@"
+
+Route13Text7:
+ TX_ASM
+ ld hl, Route13TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText8:
+ TX_FAR _Route13BattleText8
+ db "@"
+
+Route13EndBattleText8:
+ TX_FAR _Route13EndBattleText8
+ db "@"
+
+Route13AfterBattleText8:
+ TX_FAR _Route13AfterBattleText8
+ db "@"
+
+Route13Text8:
+ TX_ASM
+ ld hl, Route13TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText9:
+ TX_FAR _Route13BattleText9
+ db "@"
+
+Route13EndBattleText9:
+ TX_FAR _Route13EndBattleText9
+ db "@"
+
+Route13AfterBattleText9:
+ TX_FAR _Route13AfterBattleText9
+ db "@"
+
+Route13Text9:
+ TX_ASM
+ ld hl, Route13TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText10:
+ TX_FAR _Route13BattleText10
+ db "@"
+
+Route13EndBattleText10:
+ TX_FAR _Route13EndBattleText10
+ db "@"
+
+Route13AfterBattleText10:
+ TX_FAR _Route13AfterBattleText10
+ db "@"
+
+Route13Text10:
+ TX_ASM
+ ld hl, Route13TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route13BattleText11:
+ TX_FAR _Route13BattleText11
+ db "@"
+
+Route13EndBattleText11:
+ TX_FAR _Route13EndBattleText11
+ db "@"
+
+Route13AfterBattleText11:
+ TX_FAR _Route13AfterBattleText11
+ db "@"
+
+Route13Text11:
+ TX_FAR _Route13Text11
+ db "@"
+
+Route13Text12:
+ TX_FAR _Route13Text12
+ db "@"
+
+Route13Text13:
+ TX_FAR _Route13Text13
+ db "@"
diff --git a/scripts/Route14.asm b/scripts/Route14.asm
new file mode 100755
index 00000000..fdc84d74
--- /dev/null
+++ b/scripts/Route14.asm
@@ -0,0 +1,302 @@
+Route14_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route14TrainerHeader0
+ ld de, Route14_ScriptPointers
+ ld a, [wRoute14CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute14CurScript], a
+ ret
+
+Route14_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route14_TextPointers:
+ dw Route14Text1
+ dw Route14Text2
+ dw Route14Text3
+ dw Route14Text4
+ dw Route14Text5
+ dw Route14Text6
+ dw Route14Text7
+ dw Route14Text8
+ dw Route14Text9
+ dw Route14Text10
+ dw Route14Text11
+
+Route14TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_0
+ dw Route14BattleText1 ; TextBeforeBattle
+ dw Route14AfterBattleText1 ; TextAfterBattle
+ dw Route14EndBattleText1 ; TextEndBattle
+ dw Route14EndBattleText1 ; TextEndBattle
+
+Route14TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_1
+ dw Route14BattleText2 ; TextBeforeBattle
+ dw Route14AfterBattleText2 ; TextAfterBattle
+ dw Route14EndBattleText2 ; TextEndBattle
+ dw Route14EndBattleText2 ; TextEndBattle
+
+Route14TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_2
+ dw Route14BattleText3 ; TextBeforeBattle
+ dw Route14AfterBattleText3 ; TextAfterBattle
+ dw Route14EndBattleText3 ; TextEndBattle
+ dw Route14EndBattleText3 ; TextEndBattle
+
+Route14TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_3
+ dw Route14BattleText4 ; TextBeforeBattle
+ dw Route14AfterBattleText4 ; TextAfterBattle
+ dw Route14EndBattleText4 ; TextEndBattle
+ dw Route14EndBattleText4 ; TextEndBattle
+
+Route14TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_4
+ dw Route14BattleText5 ; TextBeforeBattle
+ dw Route14AfterBattleText5 ; TextAfterBattle
+ dw Route14EndBattleText5 ; TextEndBattle
+ dw Route14EndBattleText5 ; TextEndBattle
+
+Route14TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_5
+ dw Route14BattleText6 ; TextBeforeBattle
+ dw Route14AfterBattleText6 ; TextAfterBattle
+ dw Route14EndBattleText6 ; TextEndBattle
+ dw Route14EndBattleText6 ; TextEndBattle
+
+Route14TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_6
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_6
+ dw Route14BattleText7 ; TextBeforeBattle
+ dw Route14AfterBattleText7 ; TextAfterBattle
+ dw Route14EndBattleText7 ; TextEndBattle
+ dw Route14EndBattleText7 ; TextEndBattle
+
+Route14TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_7, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_7, 1
+ dw Route14BattleText8 ; TextBeforeBattle
+ dw Route14AfterBattleText8 ; TextAfterBattle
+ dw Route14EndBattleText8 ; TextEndBattle
+ dw Route14EndBattleText8 ; TextEndBattle
+
+Route14TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_8, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_8, 1
+ dw Route14BattleText9 ; TextBeforeBattle
+ dw Route14AfterBattleText9 ; TextAfterBattle
+ dw Route14EndBattleText9 ; TextEndBattle
+ dw Route14EndBattleText9 ; TextEndBattle
+
+Route14TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_9, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_9, 1
+ dw Route14BattleText10 ; TextBeforeBattle
+ dw Route14AfterBattleText10 ; TextAfterBattle
+ dw Route14EndBattleText10 ; TextEndBattle
+ dw Route14EndBattleText10 ; TextEndBattle
+
+ db $ff
+
+Route14Text1:
+ TX_ASM
+ ld hl, Route14TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText1:
+ TX_FAR _Route14BattleText1
+ db "@"
+
+Route14EndBattleText1:
+ TX_FAR _Route14EndBattleText1
+ db "@"
+
+Route14AfterBattleText1:
+ TX_FAR _Route14AfterBattleText1
+ db "@"
+
+Route14Text2:
+ TX_ASM
+ ld hl, Route14TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText2:
+ TX_FAR _Route14BattleText2
+ db "@"
+
+Route14EndBattleText2:
+ TX_FAR _Route14EndBattleText2
+ db "@"
+
+Route14AfterBattleText2:
+ TX_FAR _Route14AfterBattleText2
+ db "@"
+
+Route14Text3:
+ TX_ASM
+ ld hl, Route14TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText3:
+ TX_FAR _Route14BattleText3
+ db "@"
+
+Route14EndBattleText3:
+ TX_FAR _Route14EndBattleText3
+ db "@"
+
+Route14AfterBattleText3:
+ TX_FAR _Route14AfterBattleText3
+ db "@"
+
+Route14Text4:
+ TX_ASM
+ ld hl, Route14TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText4:
+ TX_FAR _Route14BattleText4
+ db "@"
+
+Route14EndBattleText4:
+ TX_FAR _Route14EndBattleText4
+ db "@"
+
+Route14AfterBattleText4:
+ TX_FAR _Route14AfterBattleText4
+ db "@"
+
+Route14Text5:
+ TX_ASM
+ ld hl, Route14TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText5:
+ TX_FAR _Route14BattleText5
+ db "@"
+
+Route14EndBattleText5:
+ TX_FAR _Route14EndBattleText5
+ db "@"
+
+Route14AfterBattleText5:
+ TX_FAR _Route14AfterBattleText5
+ db "@"
+
+Route14Text6:
+ TX_ASM
+ ld hl, Route14TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText6:
+ TX_FAR _Route14BattleText6
+ db "@"
+
+Route14EndBattleText6:
+ TX_FAR _Route14EndBattleText6
+ db "@"
+
+Route14AfterBattleText6:
+ TX_FAR _Route14AfterBattleText6
+ db "@"
+
+Route14Text7:
+ TX_ASM
+ ld hl, Route14TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText7:
+ TX_FAR _Route14BattleText7
+ db "@"
+
+Route14EndBattleText7:
+ TX_FAR _Route14EndBattleText7
+ db "@"
+
+Route14AfterBattleText7:
+ TX_FAR _Route14AfterBattleText7
+ db "@"
+
+Route14Text8:
+ TX_ASM
+ ld hl, Route14TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText8:
+ TX_FAR _Route14BattleText8
+ db "@"
+
+Route14EndBattleText8:
+ TX_FAR _Route14EndBattleText8
+ db "@"
+
+Route14AfterBattleText8:
+ TX_FAR _Route14AfterBattleText8
+ db "@"
+
+Route14Text9:
+ TX_ASM
+ ld hl, Route14TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText9:
+ TX_FAR _Route14BattleText9
+ db "@"
+
+Route14EndBattleText9:
+ TX_FAR _Route14EndBattleText9
+ db "@"
+
+Route14AfterBattleText9:
+ TX_FAR _Route14AfterBattleText9
+ db "@"
+
+Route14Text10:
+ TX_ASM
+ ld hl, Route14TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route14BattleText10:
+ TX_FAR _Route14BattleText10
+ db "@"
+
+Route14EndBattleText10:
+ TX_FAR _Route14EndBattleText10
+ db "@"
+
+Route14AfterBattleText10:
+ TX_FAR _Route14AfterBattleText10
+ db "@"
+
+Route14Text11:
+ TX_FAR _Route14Text11
+ db "@"
diff --git a/scripts/Route15.asm b/scripts/Route15.asm
new file mode 100755
index 00000000..d973eb9c
--- /dev/null
+++ b/scripts/Route15.asm
@@ -0,0 +1,295 @@
+Route15_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route15TrainerHeader0
+ ld de, Route15_ScriptPointers
+ ld a, [wRoute15CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute15CurScript], a
+ ret
+
+Route15_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route15_TextPointers:
+ dw Route15Text1
+ dw Route15Text2
+ dw Route15Text3
+ dw Route15Text4
+ dw Route15Text5
+ dw Route15Text6
+ dw Route15Text7
+ dw Route15Text8
+ dw Route15Text9
+ dw Route15Text10
+ dw PickUpItemText
+ dw Route15Text12
+
+Route15TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_0
+ dw Route15BattleText1 ; TextBeforeBattle
+ dw Route15AfterBattleText1 ; TextAfterBattle
+ dw Route15EndBattleText1 ; TextEndBattle
+ dw Route15EndBattleText1 ; TextEndBattle
+
+Route15TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_1
+ dw Route15BattleText2 ; TextBeforeBattle
+ dw Route15AfterBattleText2 ; TextAfterBattle
+ dw Route15EndBattleText2 ; TextEndBattle
+ dw Route15EndBattleText2 ; TextEndBattle
+
+Route15TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_2
+ dw Route15BattleText3 ; TextBeforeBattle
+ dw Route15AfterBattleText3 ; TextAfterBattle
+ dw Route15EndBattleText3 ; TextEndBattle
+ dw Route15EndBattleText3 ; TextEndBattle
+
+Route15TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_3
+ dw Route15BattleText4 ; TextBeforeBattle
+ dw Route15AfterBattleText4 ; TextAfterBattle
+ dw Route15EndBattleText4 ; TextEndBattle
+ dw Route15EndBattleText4 ; TextEndBattle
+
+Route15TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_4
+ dw Route15BattleText5 ; TextBeforeBattle
+ dw Route15AfterBattleText5 ; TextAfterBattle
+ dw Route15EndBattleText5 ; TextEndBattle
+ dw Route15EndBattleText5 ; TextEndBattle
+
+Route15TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_5
+ dw Route15BattleText6 ; TextBeforeBattle
+ dw Route15AfterBattleText6 ; TextAfterBattle
+ dw Route15EndBattleText6 ; TextEndBattle
+ dw Route15EndBattleText6 ; TextEndBattle
+
+Route15TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_6
+ dw Route15BattleText7 ; TextBeforeBattle
+ dw Route15AfterBattleText7 ; TextAfterBattle
+ dw Route15EndBattleText7 ; TextEndBattle
+ dw Route15EndBattleText7 ; TextEndBattle
+
+Route15TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_7, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_7, 1
+ dw Route15BattleText8 ; TextBeforeBattle
+ dw Route15AfterBattleText8 ; TextAfterBattle
+ dw Route15EndBattleText8 ; TextEndBattle
+ dw Route15EndBattleText8 ; TextEndBattle
+
+Route15TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_8, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_8, 1
+ dw Route15BattleText9 ; TextBeforeBattle
+ dw Route15AfterBattleText9 ; TextAfterBattle
+ dw Route15EndBattleText9 ; TextEndBattle
+ dw Route15EndBattleText9 ; TextEndBattle
+
+Route15TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_9, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_9, 1
+ dw Route15BattleText10 ; TextBeforeBattle
+ dw Route15AfterBattleText10 ; TextAfterBattle
+ dw Route15EndBattleText10 ; TextEndBattle
+ dw Route15EndBattleText10 ; TextEndBattle
+
+ db $ff
+
+Route15Text1:
+ TX_ASM
+ ld hl, Route15TrainerHeader0
+ jr Route15TalkToTrainer
+
+Route15Text2:
+ TX_ASM
+ ld hl, Route15TrainerHeader1
+ jr Route15TalkToTrainer
+
+Route15Text3:
+ TX_ASM
+ ld hl, Route15TrainerHeader2
+ jr Route15TalkToTrainer
+
+Route15Text4:
+ TX_ASM
+ ld hl, Route15TrainerHeader3
+ jr Route15TalkToTrainer
+
+Route15Text5:
+ TX_ASM
+ ld hl, Route15TrainerHeader4
+ jr Route15TalkToTrainer
+
+Route15Text6:
+ TX_ASM
+ ld hl, Route15TrainerHeader5
+ jr Route15TalkToTrainer
+
+Route15Text7:
+ TX_ASM
+ ld hl, Route15TrainerHeader6
+ jr Route15TalkToTrainer
+
+Route15Text8:
+ TX_ASM
+ ld hl, Route15TrainerHeader7
+ jr Route15TalkToTrainer
+
+Route15Text9:
+ TX_ASM
+ ld hl, Route15TrainerHeader8
+ jr Route15TalkToTrainer
+
+Route15Text10:
+ TX_ASM
+ ld hl, Route15TrainerHeader9
+Route15TalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route15BattleText1:
+ TX_FAR _Route15BattleText1
+ db "@"
+
+Route15EndBattleText1:
+ TX_FAR _Route15EndBattleText1
+ db "@"
+
+Route15AfterBattleText1:
+ TX_FAR _Route15AfterBattleText1
+ db "@"
+
+Route15BattleText2:
+ TX_FAR _Route15BattleText2
+ db "@"
+
+Route15EndBattleText2:
+ TX_FAR _Route15EndBattleText2
+ db "@"
+
+Route15AfterBattleText2:
+ TX_FAR _Route15AfterBattleText2
+ db "@"
+
+Route15BattleText3:
+ TX_FAR _Route15BattleText3
+ db "@"
+
+Route15EndBattleText3:
+ TX_FAR _Route15EndBattleText3
+ db "@"
+
+Route15AfterBattleText3:
+ TX_FAR _Route15AfterBattleText3
+ db "@"
+
+Route15BattleText4:
+ TX_FAR _Route15BattleText4
+ db "@"
+
+Route15EndBattleText4:
+ TX_FAR _Route15EndBattleText4
+ db "@"
+
+Route15AfterBattleText4:
+ TX_FAR _Route15AfterBattleText4
+ db "@"
+
+Route15BattleText5:
+ TX_FAR _Route15BattleText5
+ db "@"
+
+Route15EndBattleText5:
+ TX_FAR _Route15EndBattleText5
+ db "@"
+
+Route15AfterBattleText5:
+ TX_FAR _Route15AfterBattleText5
+ db "@"
+
+Route15BattleText6:
+ TX_FAR _Route15BattleText6
+ db "@"
+
+Route15EndBattleText6:
+ TX_FAR _Route15EndBattleText6
+ db "@"
+
+Route15AfterBattleText6:
+ TX_FAR _Route15AfterBattleText6
+ db "@"
+
+Route15BattleText7:
+ TX_FAR _Route15BattleText7
+ db "@"
+
+Route15EndBattleText7:
+ TX_FAR _Route15EndBattleText7
+ db "@"
+
+Route15AfterBattleText7:
+ TX_FAR _Route15AfterBattleText7
+ db "@"
+
+Route15BattleText8:
+ TX_FAR _Route15BattleText8
+ db "@"
+
+Route15EndBattleText8:
+ TX_FAR _Route15EndBattleText8
+ db "@"
+
+Route15AfterBattleText8:
+ TX_FAR _Route15AfterBattleText8
+ db "@"
+
+Route15BattleText9:
+ TX_FAR _Route15BattleText9
+ db "@"
+
+Route15EndBattleText9:
+ TX_FAR _Route15EndBattleText9
+ db "@"
+
+Route15AfterBattleText9:
+ TX_FAR _Route15AfterBattleText9
+ db "@"
+
+Route15BattleText10:
+ TX_FAR _Route15BattleText10
+ db "@"
+
+Route15EndBattleText10:
+ TX_FAR _Route15EndBattleText10
+ db "@"
+
+Route15AfterBattleText10:
+ TX_FAR _Route15AfterBattleText10
+ db "@"
+
+Route15Text12:
+ TX_FAR _Route15Text12
+ db "@"
diff --git a/scripts/Route15Gate1F.asm b/scripts/Route15Gate1F.asm
new file mode 100755
index 00000000..910eb2a5
--- /dev/null
+++ b/scripts/Route15Gate1F.asm
@@ -0,0 +1,9 @@
+Route15Gate1F_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route15Gate1F_TextPointers:
+ dw Route15GateText1
+
+Route15GateText1:
+ TX_FAR _Route15GateText1
+ db "@"
diff --git a/scripts/Route15Gate2F.asm b/scripts/Route15Gate2F.asm
new file mode 100755
index 00000000..83763762
--- /dev/null
+++ b/scripts/Route15Gate2F.asm
@@ -0,0 +1,44 @@
+Route15Gate2F_Script:
+ jp DisableAutoTextBoxDrawing
+
+Route15Gate2F_TextPointers:
+ dw Route15GateUpstairsText1
+ dw Route15GateUpstairsText2
+
+Route15GateUpstairsText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_EXP_ALL
+ jr nz, .asm_49683
+ ld a, 50 ; pokemon needed
+ ld [hOaksAideRequirement], a
+ ld a, EXP_ALL ; oak's aide reward
+ ld [hOaksAideRewardItem], a
+ ld [wd11e], a
+ call GetItemName
+ ld hl, wcd6d
+ ld de, wOaksAideRewardItemName
+ ld bc, ITEM_NAME_LENGTH
+ call CopyData
+ predef OaksAideScript
+ ld a, [hOaksAideResult]
+ cp $1
+ jr nz, .asm_49689
+ SetEvent EVENT_GOT_EXP_ALL
+.asm_49683
+ ld hl, Route15GateUpstairsText_4968c
+ call PrintText
+.asm_49689
+ jp TextScriptEnd
+
+Route15GateUpstairsText_4968c:
+ TX_FAR _Route15GateUpstairsText_4968c
+ db "@"
+
+Route15GateUpstairsText2:
+ TX_ASM
+ ld hl, Route15GateUpstairsText_49698
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route15GateUpstairsText_49698:
+ TX_FAR _Route15GateUpstairsText_49698
+ db "@"
diff --git a/scripts/Route16.asm b/scripts/Route16.asm
new file mode 100755
index 00000000..54f83380
--- /dev/null
+++ b/scripts/Route16.asm
@@ -0,0 +1,259 @@
+Route16_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route16TrainerHeader0
+ ld de, Route16_ScriptPointers
+ ld a, [wRoute16CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute16CurScript], a
+ ret
+
+Route16Script_59946:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute16CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route16_ScriptPointers:
+ dw Route16Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw Route16Script3
+
+Route16Script0:
+ CheckEventHL EVENT_BEAT_ROUTE16_SNORLAX
+ jp nz, CheckFightingMapTrainers
+ CheckEventReuseHL EVENT_FIGHT_ROUTE16_SNORLAX
+ ResetEventReuseHL EVENT_FIGHT_ROUTE16_SNORLAX
+ jp z, CheckFightingMapTrainers
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, SNORLAX
+ ld [wCurOpponent], a
+ ld a, 30
+ ld [wCurEnemyLVL], a
+ ld a, HS_ROUTE_16_SNORLAX
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call UpdateSprites
+ ld a, $3
+ ld [wRoute16CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route16Script3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, Route16Script_59946
+ call UpdateSprites
+ ld a, [wBattleResult]
+ cp $2
+ jr z, .asm_599a8
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.asm_599a8
+ SetEvent EVENT_BEAT_ROUTE16_SNORLAX
+ call Delay3
+ ld a, $0
+ ld [wRoute16CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route16_TextPointers:
+ dw Route16Text1
+ dw Route16Text2
+ dw Route16Text3
+ dw Route16Text4
+ dw Route16Text5
+ dw Route16Text6
+ dw Route16Text7
+ dw Route16Text8
+ dw Route16Text9
+ dw Route16Text10
+ dw Route16Text11
+
+Route16TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_0
+ dw Route16BattleText1 ; TextBeforeBattle
+ dw Route16AfterBattleText1 ; TextAfterBattle
+ dw Route16EndBattleText1 ; TextEndBattle
+ dw Route16EndBattleText1 ; TextEndBattle
+
+Route16TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_1
+ dw Route16BattleText2 ; TextBeforeBattle
+ dw Route16AfterBattleText2 ; TextAfterBattle
+ dw Route16EndBattleText2 ; TextEndBattle
+ dw Route16EndBattleText2 ; TextEndBattle
+
+Route16TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_2
+ dw Route16BattleText3 ; TextBeforeBattle
+ dw Route16AfterBattleText3 ; TextAfterBattle
+ dw Route16EndBattleText3 ; TextEndBattle
+ dw Route16EndBattleText3 ; TextEndBattle
+
+Route16TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_3
+ dw Route16BattleText4 ; TextBeforeBattle
+ dw Route16AfterBattleText4 ; TextAfterBattle
+ dw Route16EndBattleText4 ; TextEndBattle
+ dw Route16EndBattleText4 ; TextEndBattle
+
+Route16TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_4
+ dw Route16BattleText5 ; TextBeforeBattle
+ dw Route16AfterBattleText5 ; TextAfterBattle
+ dw Route16EndBattleText5 ; TextEndBattle
+ dw Route16EndBattleText5 ; TextEndBattle
+
+Route16TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_5
+ dw Route16BattleText6 ; TextBeforeBattle
+ dw Route16AfterBattleText6 ; TextAfterBattle
+ dw Route16EndBattleText6 ; TextEndBattle
+ dw Route16EndBattleText6 ; TextEndBattle
+
+ db $ff
+
+Route16Text1:
+ TX_ASM
+ ld hl, Route16TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText1:
+ TX_FAR _Route16BattleText1
+ db "@"
+
+Route16EndBattleText1:
+ TX_FAR _Route16EndBattleText1
+ db "@"
+
+Route16AfterBattleText1:
+ TX_FAR _Route16AfterBattleText1
+ db "@"
+
+Route16Text2:
+ TX_ASM
+ ld hl, Route16TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText2:
+ TX_FAR _Route16BattleText2
+ db "@"
+
+Route16EndBattleText2:
+ TX_FAR _Route16EndBattleText2
+ db "@"
+
+Route16AfterBattleText2:
+ TX_FAR _Route16AfterBattleText2
+ db "@"
+
+Route16Text3:
+ TX_ASM
+ ld hl, Route16TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText3:
+ TX_FAR _Route16BattleText3
+ db "@"
+
+Route16EndBattleText3:
+ TX_FAR _Route16EndBattleText3
+ db "@"
+
+Route16AfterBattleText3:
+ TX_FAR _Route16AfterBattleText3
+ db "@"
+
+Route16Text4:
+ TX_ASM
+ ld hl, Route16TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText4:
+ TX_FAR _Route16BattleText4
+ db "@"
+
+Route16EndBattleText4:
+ TX_FAR _Route16EndBattleText4
+ db "@"
+
+Route16AfterBattleText4:
+ TX_FAR _Route16AfterBattleText4
+ db "@"
+
+Route16Text5:
+ TX_ASM
+ ld hl, Route16TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText5:
+ TX_FAR _Route16BattleText5
+ db "@"
+
+Route16EndBattleText5:
+ TX_FAR _Route16EndBattleText5
+ db "@"
+
+Route16AfterBattleText5:
+ TX_FAR _Route16AfterBattleText5
+ db "@"
+
+Route16Text6:
+ TX_ASM
+ ld hl, Route16TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route16BattleText6:
+ TX_FAR _Route16BattleText6
+ db "@"
+
+Route16EndBattleText6:
+ TX_FAR _Route16EndBattleText6
+ db "@"
+
+Route16AfterBattleText6:
+ TX_FAR _Route16AfterBattleText6
+ db "@"
+
+Route16Text7:
+ TX_FAR _Route16Text7
+ db "@"
+
+Route16Text10:
+ TX_FAR _Route16Text10
+ db "@"
+
+Route16Text11:
+ TX_FAR _Route16Text11
+ db "@"
+
+Route16Text8:
+ TX_FAR _Route16Text8
+ db "@"
+
+Route16Text9:
+ TX_FAR _Route16Text9
+ db "@"
diff --git a/scripts/Route16FlyHouse.asm b/scripts/Route16FlyHouse.asm
new file mode 100755
index 00000000..1d74ac80
--- /dev/null
+++ b/scripts/Route16FlyHouse.asm
@@ -0,0 +1,55 @@
+Route16FlyHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route16FlyHouse_TextPointers:
+ dw Route16HouseText1
+ dw Route16HouseText2
+
+Route16HouseText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_HM02
+ ld hl, HM02ExplanationText
+ jr nz, .asm_13616
+ ld hl, Route16HouseText3
+ call PrintText
+ lb bc, HM_02, 1
+ call GiveItem
+ jr nc, .BagFull
+ SetEvent EVENT_GOT_HM02
+ ld hl, ReceivedHM02Text
+ jr .asm_13616
+.BagFull
+ ld hl, HM02NoRoomText
+.asm_13616
+ call PrintText
+ jp TextScriptEnd
+
+Route16HouseText3:
+ TX_FAR _Route16HouseText3
+ db "@"
+
+ReceivedHM02Text:
+ TX_FAR _ReceivedHM02Text
+ TX_SFX_KEY_ITEM
+ db "@"
+
+HM02ExplanationText:
+ TX_FAR _HM02ExplanationText
+ db "@"
+
+HM02NoRoomText:
+ TX_FAR _HM02NoRoomText
+ db "@"
+
+Route16HouseText2:
+ TX_ASM
+ ld hl, Route16HouseText_1e652
+ call PrintText
+ ld a, FEAROW
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+Route16HouseText_1e652:
+ TX_FAR _Route16HouseText_1e652
+ db "@"
diff --git a/scripts/Route16Gate1F.asm b/scripts/Route16Gate1F.asm
new file mode 100755
index 00000000..f814d209
--- /dev/null
+++ b/scripts/Route16Gate1F.asm
@@ -0,0 +1,121 @@
+Route16Gate1F_Script:
+ ld hl, wd732
+ res 5, [hl]
+ call EnableAutoTextBoxDrawing
+ ld a, [wRoute16Gate1FCurScript]
+ ld hl, Route16Gate1F_ScriptPointers
+ jp CallFunctionInTable
+
+Route16Gate1F_ScriptPointers:
+ dw Route16GateScript0
+ dw Route16GateScript1
+ dw Route16GateScript2
+ dw Route16GateScript3
+
+Route16GateScript0:
+ call Route16GateScript_49755
+ ret nz
+ ld hl, CoordsData_49714
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [hJoyHeld], a
+ ld a, [wCoordIndex]
+ cp $1
+ jr z, .asm_4970e
+ ld a, [wCoordIndex]
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ ld b, $0
+ ld c, a
+ ld a, D_UP
+ ld hl, wSimulatedJoypadStatesEnd
+ call FillMemory
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wRoute16Gate1FCurScript], a
+ ret
+.asm_4970e
+ ld a, $2
+ ld [wRoute16Gate1FCurScript], a
+ ret
+
+CoordsData_49714:
+ db $07,$04
+ db $08,$04
+ db $09,$04
+ db $0A,$04
+ db $FF
+
+Route16GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld a, $f0
+ ld [wJoyIgnore], a
+
+Route16GateScript2:
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_RIGHT
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wRoute16Gate1FCurScript], a
+ ret
+
+Route16GateScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wd730
+ res 7, [hl]
+ ld a, $0
+ ld [wRoute16Gate1FCurScript], a
+ ret
+
+Route16GateScript_49755:
+ ld b, BICYCLE
+ jp IsItemInBag
+
+Route16Gate1F_TextPointers:
+ dw Route16GateText1
+ dw Route16GateText2
+ dw Route16GateText3
+
+Route16GateText1:
+ TX_ASM
+ call Route16GateScript_49755
+ jr z, .asm_0bdf3
+ ld hl, Route16GateText_4977c
+ call PrintText
+ jr .asm_56c9d
+.asm_0bdf3
+ ld hl, Route16GateText_49777
+ call PrintText
+.asm_56c9d
+ jp TextScriptEnd
+
+Route16GateText_49777:
+ TX_FAR _Route16GateText_49777
+ db "@"
+
+Route16GateText_4977c:
+ TX_FAR _Route16GateText_4977c
+ db "@"
+
+Route16GateText3:
+ TX_FAR _Route16GateText_49781
+ db "@"
+
+Route16GateText2:
+ TX_FAR _Route16GateText2
+ db "@"
diff --git a/scripts/Route16Gate2F.asm b/scripts/Route16Gate2F.asm
new file mode 100755
index 00000000..643a5ec7
--- /dev/null
+++ b/scripts/Route16Gate2F.asm
@@ -0,0 +1,46 @@
+Route16Gate2F_Script:
+ jp DisableAutoTextBoxDrawing
+
+Route16Gate2F_TextPointers:
+ dw Route16GateUpstairsText1
+ dw Route16GateUpstairsText2
+ dw Route16GateUpstairsText3
+ dw Route16GateUpstairsText4
+
+Route16GateUpstairsText1:
+ TX_ASM
+ ld hl, Route16GateUpstairsText_49820
+ call PrintText
+ jp TextScriptEnd
+
+Route16GateUpstairsText_49820:
+ TX_FAR _Route16GateUpstairsText_49820
+ db "@"
+
+Route16GateUpstairsText2:
+ TX_ASM
+ ld hl, Route16GateUpstairsText_4982f
+ call PrintText
+ jp TextScriptEnd
+
+Route16GateUpstairsText_4982f:
+ TX_FAR _Route16GateUpstairsText_4982f
+ db "@"
+
+Route16GateUpstairsText3:
+ TX_ASM
+ ld hl, Route16GateUpstairsText_4983b
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route16GateUpstairsText_4983b:
+ TX_FAR _Route16GateUpstairsText_4983b
+ db "@"
+
+Route16GateUpstairsText4:
+ TX_ASM
+ ld hl, Route16GateUpstairsText_49847
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route16GateUpstairsText_49847:
+ TX_FAR _Route16GateUpstairsText_49847
+ db "@"
diff --git a/scripts/Route17.asm b/scripts/Route17.asm
new file mode 100755
index 00000000..dd92ac44
--- /dev/null
+++ b/scripts/Route17.asm
@@ -0,0 +1,327 @@
+Route17_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route17TrainerHeader0
+ ld de, Route17_ScriptPointers
+ ld a, [wRoute17CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute17CurScript], a
+ ret
+
+Route17_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route17_TextPointers:
+ dw Route17Text1
+ dw Route17Text2
+ dw Route17Text3
+ dw Route17Text4
+ dw Route17Text5
+ dw Route17Text6
+ dw Route17Text7
+ dw Route17Text8
+ dw Route17Text9
+ dw Route17Text10
+ dw Route17Text11
+ dw Route17Text12
+ dw Route17Text13
+ dw Route17Text14
+ dw Route17Text15
+ dw Route17Text16
+
+Route17TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_0
+ dw Route17BattleText1 ; TextBeforeBattle
+ dw Route17AfterBattleText1 ; TextAfterBattle
+ dw Route17EndBattleText1 ; TextEndBattle
+ dw Route17EndBattleText1 ; TextEndBattle
+
+Route17TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_1
+ dw Route17BattleText2 ; TextBeforeBattle
+ dw Route17AfterBattleText2 ; TextAfterBattle
+ dw Route17EndBattleText2 ; TextEndBattle
+ dw Route17EndBattleText2 ; TextEndBattle
+
+Route17TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_2
+ dw Route17BattleText3 ; TextBeforeBattle
+ dw Route17AfterBattleText3 ; TextAfterBattle
+ dw Route17EndBattleText3 ; TextEndBattle
+ dw Route17EndBattleText3 ; TextEndBattle
+
+Route17TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_3
+ dw Route17BattleText4 ; TextBeforeBattle
+ dw Route17AfterBattleText4 ; TextAfterBattle
+ dw Route17EndBattleText4 ; TextEndBattle
+ dw Route17EndBattleText4 ; TextEndBattle
+
+Route17TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_4
+ dw Route17BattleText5 ; TextBeforeBattle
+ dw Route17AfterBattleText5 ; TextAfterBattle
+ dw Route17EndBattleText5 ; TextEndBattle
+ dw Route17EndBattleText5 ; TextEndBattle
+
+Route17TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_5
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_5
+ dw Route17BattleText6 ; TextBeforeBattle
+ dw Route17AfterBattleText6 ; TextAfterBattle
+ dw Route17EndBattleText6 ; TextEndBattle
+ dw Route17EndBattleText6 ; TextEndBattle
+
+Route17TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_6
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_6
+ dw Route17BattleText7 ; TextBeforeBattle
+ dw Route17AfterBattleText7 ; TextAfterBattle
+ dw Route17EndBattleText7 ; TextEndBattle
+ dw Route17EndBattleText7 ; TextEndBattle
+
+Route17TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_7, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_7, 1
+ dw Route17BattleText8 ; TextBeforeBattle
+ dw Route17AfterBattleText8 ; TextAfterBattle
+ dw Route17EndBattleText8 ; TextEndBattle
+ dw Route17EndBattleText8 ; TextEndBattle
+
+Route17TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_8, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_8, 1
+ dw Route17BattleText9 ; TextBeforeBattle
+ dw Route17AfterBattleText9 ; TextAfterBattle
+ dw Route17EndBattleText9 ; TextEndBattle
+ dw Route17EndBattleText9 ; TextEndBattle
+
+Route17TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_9, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_9, 1
+ dw Route17BattleText10 ; TextBeforeBattle
+ dw Route17AfterBattleText10 ; TextAfterBattle
+ dw Route17EndBattleText10 ; TextEndBattle
+ dw Route17EndBattleText10 ; TextEndBattle
+
+ db $ff
+
+Route17Text1:
+ TX_ASM
+ ld hl, Route17TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText1:
+ TX_FAR _Route17BattleText1
+ db "@"
+
+Route17EndBattleText1:
+ TX_FAR _Route17EndBattleText1
+ db "@"
+
+Route17AfterBattleText1:
+ TX_FAR _Route17AfterBattleText1
+ db "@"
+
+Route17Text2:
+ TX_ASM
+ ld hl, Route17TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText2:
+ TX_FAR _Route17BattleText2
+ db "@"
+
+Route17EndBattleText2:
+ TX_FAR _Route17EndBattleText2
+ db "@"
+
+Route17AfterBattleText2:
+ TX_FAR _Route17AfterBattleText2
+ db "@"
+
+Route17Text3:
+ TX_ASM
+ ld hl, Route17TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText3:
+ TX_FAR _Route17BattleText3
+ db "@"
+
+Route17EndBattleText3:
+ TX_FAR _Route17EndBattleText3
+ db "@"
+
+Route17AfterBattleText3:
+ TX_FAR _Route17AfterBattleText3
+ db "@"
+
+Route17Text4:
+ TX_ASM
+ ld hl, Route17TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText4:
+ TX_FAR _Route17BattleText4
+ db "@"
+
+Route17EndBattleText4:
+ TX_FAR _Route17EndBattleText4
+ db "@"
+
+Route17AfterBattleText4:
+ TX_FAR _Route17AfterBattleText4
+ db "@"
+
+Route17Text5:
+ TX_ASM
+ ld hl, Route17TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText5:
+ TX_FAR _Route17BattleText5
+ db "@"
+
+Route17EndBattleText5:
+ TX_FAR _Route17EndBattleText5
+ db "@"
+
+Route17AfterBattleText5:
+ TX_FAR _Route17AfterBattleText5
+ db "@"
+
+Route17Text6:
+ TX_ASM
+ ld hl, Route17TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText6:
+ TX_FAR _Route17BattleText6
+ db "@"
+
+Route17EndBattleText6:
+ TX_FAR _Route17EndBattleText6
+ db "@"
+
+Route17AfterBattleText6:
+ TX_FAR _Route17AfterBattleText6
+ db "@"
+
+Route17Text7:
+ TX_ASM
+ ld hl, Route17TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText7:
+ TX_FAR _Route17BattleText7
+ db "@"
+
+Route17EndBattleText7:
+ TX_FAR _Route17EndBattleText7
+ db "@"
+
+Route17AfterBattleText7:
+ TX_FAR _Route17AfterBattleText7
+ db "@"
+
+Route17Text8:
+ TX_ASM
+ ld hl, Route17TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText8:
+ TX_FAR _Route17BattleText8
+ db "@"
+
+Route17EndBattleText8:
+ TX_FAR _Route17EndBattleText8
+ db "@"
+
+Route17AfterBattleText8:
+ TX_FAR _Route17AfterBattleText8
+ db "@"
+
+Route17Text9:
+ TX_ASM
+ ld hl, Route17TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText9:
+ TX_FAR _Route17BattleText9
+ db "@"
+
+Route17EndBattleText9:
+ TX_FAR _Route17EndBattleText9
+ db "@"
+
+Route17AfterBattleText9:
+ TX_FAR _Route17AfterBattleText9
+ db "@"
+
+Route17Text10:
+ TX_ASM
+ ld hl, Route17TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route17BattleText10:
+ TX_FAR _Route17BattleText10
+ db "@"
+
+Route17EndBattleText10:
+ TX_FAR _Route17EndBattleText10
+ db "@"
+
+Route17AfterBattleText10:
+ TX_FAR _Route17AfterBattleText10
+ db "@"
+
+Route17Text11:
+ TX_FAR _Route17Text11
+ db "@"
+
+Route17Text12:
+ TX_FAR _Route17Text12
+ db "@"
+
+Route17Text13:
+ TX_FAR _Route17Text13
+ db "@"
+
+Route17Text14:
+ TX_FAR _Route17Text14
+ db "@"
+
+Route17Text15:
+ TX_FAR _Route17Text15
+ db "@"
+
+Route17Text16:
+ TX_FAR _Route17Text16
+ db "@"
diff --git a/scripts/Route18.asm b/scripts/Route18.asm
new file mode 100755
index 00000000..022d41be
--- /dev/null
+++ b/scripts/Route18.asm
@@ -0,0 +1,111 @@
+Route18_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route18TrainerHeader0
+ ld de, Route18_ScriptPointers
+ ld a, [wRoute18CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute18CurScript], a
+ ret
+
+Route18_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route18_TextPointers:
+ dw Route18Text1
+ dw Route18Text2
+ dw Route18Text3
+ dw Route18Text4
+ dw Route18Text5
+
+Route18TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_0
+ dw Route18BattleText1 ; TextBeforeBattle
+ dw Route18AfterBattleText1 ; TextAfterBattle
+ dw Route18EndBattleText1 ; TextEndBattle
+ dw Route18EndBattleText1 ; TextEndBattle
+
+Route18TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_1
+ dw Route18BattleText2 ; TextBeforeBattle
+ dw Route18AfterBattleText2 ; TextAfterBattle
+ dw Route18EndBattleText2 ; TextEndBattle
+ dw Route18EndBattleText2 ; TextEndBattle
+
+Route18TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_2
+ dw Route18BattleText3 ; TextBeforeBattle
+ dw Route18AfterBattleText3 ; TextAfterBattle
+ dw Route18EndBattleText3 ; TextEndBattle
+ dw Route18EndBattleText3 ; TextEndBattle
+
+ db $ff
+
+Route18Text1:
+ TX_ASM
+ ld hl, Route18TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route18BattleText1:
+ TX_FAR _Route18BattleText1
+ db "@"
+
+Route18EndBattleText1:
+ TX_FAR _Route18EndBattleText1
+ db "@"
+
+Route18AfterBattleText1:
+ TX_FAR _Route18AfterBattleText1
+ db "@"
+
+Route18Text2:
+ TX_ASM
+ ld hl, Route18TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route18BattleText2:
+ TX_FAR _Route18BattleText2
+ db "@"
+
+Route18EndBattleText2:
+ TX_FAR _Route18EndBattleText2
+ db "@"
+
+Route18AfterBattleText2:
+ TX_FAR _Route18AfterBattleText2
+ db "@"
+
+Route18Text3:
+ TX_ASM
+ ld hl, Route18TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route18BattleText3:
+ TX_FAR _Route18BattleText3
+ db "@"
+
+Route18EndBattleText3:
+ TX_FAR _Route18EndBattleText3
+ db "@"
+
+Route18AfterBattleText3:
+ TX_FAR _Route18AfterBattleText3
+ db "@"
+
+Route18Text4:
+ TX_FAR _Route18Text4
+ db "@"
+
+Route18Text5:
+ TX_FAR _Route18Text5
+ db "@"
diff --git a/scripts/Route18Gate1F.asm b/scripts/Route18Gate1F.asm
new file mode 100755
index 00000000..812cb3e0
--- /dev/null
+++ b/scripts/Route18Gate1F.asm
@@ -0,0 +1,112 @@
+Route18Gate1F_Script:
+ ld hl, wd732
+ res 5, [hl]
+ call EnableAutoTextBoxDrawing
+ ld a, [wRoute18Gate1FCurScript]
+ ld hl, Route18Gate1F_ScriptPointers
+ jp CallFunctionInTable
+
+Route18Gate1F_ScriptPointers:
+ dw Route18GateScript0
+ dw Route18GateScript1
+ dw Route18GateScript2
+ dw Route18GateScript3
+
+Route18GateScript0:
+ call Route16GateScript_49755
+ ret nz
+ ld hl, CoordsData_498cc
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [hJoyHeld], a
+ ld a, [wCoordIndex]
+ cp $1
+ jr z, .asm_498c6
+ ld a, [wCoordIndex]
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ ld b, 0
+ ld c, a
+ ld a, D_UP
+ ld hl, wSimulatedJoypadStatesEnd
+ call FillMemory
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wRoute18Gate1FCurScript], a
+ ret
+.asm_498c6
+ ld a, $2
+ ld [wRoute18Gate1FCurScript], a
+ ret
+
+CoordsData_498cc:
+ db $03,$04
+ db $04,$04
+ db $05,$04
+ db $06,$04
+ db $FF
+
+Route18GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld a, $f0
+ ld [wJoyIgnore], a
+
+Route18GateScript2:
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_RIGHT
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wRoute18Gate1FCurScript], a
+ ret
+
+Route18GateScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wd730
+ res 7, [hl]
+ ld a, $0
+ ld [wRoute18Gate1FCurScript], a
+ ret
+
+Route18Gate1F_TextPointers:
+ dw Route18GateText1
+ dw Route18GateText2
+
+Route18GateText1:
+ TX_ASM
+ call Route16GateScript_49755
+ jr z, .asm_3c84d
+ ld hl, Route18GateText_4992d
+ call PrintText
+ jr .asm_a8410
+.asm_3c84d
+ ld hl, Route18GateText_49928
+ call PrintText
+.asm_a8410
+ jp TextScriptEnd
+
+Route18GateText_49928:
+ TX_FAR _Route18GateText_49928
+ db "@"
+
+Route18GateText_4992d:
+ TX_FAR _Route18GateText_4992d
+ db "@"
+
+Route18GateText2:
+ TX_FAR _Route18GateText_49932
+ db "@"
diff --git a/scripts/Route18Gate2F.asm b/scripts/Route18Gate2F.asm
new file mode 100755
index 00000000..6987a099
--- /dev/null
+++ b/scripts/Route18Gate2F.asm
@@ -0,0 +1,32 @@
+Route18Gate2F_Script:
+ jp DisableAutoTextBoxDrawing
+
+Route18Gate2F_TextPointers:
+ dw Route18GateUpstairsText1
+ dw Route18GateUpstairsText2
+ dw Route18GateUpstairsText3
+
+Route18GateUpstairsText1:
+ TX_ASM
+ ld a, $5
+ ld [wWhichTrade], a
+ predef DoInGameTradeDialogue
+ jp TextScriptEnd
+
+Route18GateUpstairsText2:
+ TX_ASM
+ ld hl, Route18GateUpstairsText_49993
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route18GateUpstairsText_49993:
+ TX_FAR _Route18GateUpstairsText_49993
+ db "@"
+
+Route18GateUpstairsText3:
+ TX_ASM
+ ld hl, Route18GateUpstairsText_4999f
+ jp GateUpstairsScript_PrintIfFacingUp
+
+Route18GateUpstairsText_4999f:
+ TX_FAR _Route18GateUpstairsText_4999f
+ db "@"
diff --git a/scripts/Route19.asm b/scripts/Route19.asm
new file mode 100755
index 00000000..febeb9a4
--- /dev/null
+++ b/scripts/Route19.asm
@@ -0,0 +1,294 @@
+Route19_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route19TrainerHeader0
+ ld de, Route19_ScriptPointers
+ ld a, [wRoute19CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute19CurScript], a
+ ret
+
+Route19_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route19_TextPointers:
+ dw Route19Text1
+ dw Route19Text2
+ dw Route19Text3
+ dw Route19Text4
+ dw Route19Text5
+ dw Route19Text6
+ dw Route19Text7
+ dw Route19Text8
+ dw Route19Text9
+ dw Route19Text10
+ dw Route19Text11
+
+Route19TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_0
+ dw Route19BattleText1 ; TextBeforeBattle
+ dw Route19AfterBattleText1 ; TextAfterBattle
+ dw Route19EndBattleText1 ; TextEndBattle
+ dw Route19EndBattleText1 ; TextEndBattle
+
+Route19TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_1
+ dw Route19BattleText2 ; TextBeforeBattle
+ dw Route19AfterBattleText2 ; TextAfterBattle
+ dw Route19EndBattleText2 ; TextEndBattle
+ dw Route19EndBattleText2 ; TextEndBattle
+
+Route19TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_2
+ dw Route19BattleText3 ; TextBeforeBattle
+ dw Route19AfterBattleText3 ; TextAfterBattle
+ dw Route19EndBattleText3 ; TextEndBattle
+ dw Route19EndBattleText3 ; TextEndBattle
+
+Route19TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_3
+ dw Route19BattleText4 ; TextBeforeBattle
+ dw Route19AfterBattleText4 ; TextAfterBattle
+ dw Route19EndBattleText4 ; TextEndBattle
+ dw Route19EndBattleText4 ; TextEndBattle
+
+Route19TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_4
+ dw Route19BattleText5 ; TextBeforeBattle
+ dw Route19AfterBattleText5 ; TextAfterBattle
+ dw Route19EndBattleText5 ; TextEndBattle
+ dw Route19EndBattleText5 ; TextEndBattle
+
+Route19TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_5
+ dw Route19BattleText6 ; TextBeforeBattle
+ dw Route19AfterBattleText6 ; TextAfterBattle
+ dw Route19EndBattleText6 ; TextEndBattle
+ dw Route19EndBattleText6 ; TextEndBattle
+
+Route19TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_6
+ dw Route19BattleText7 ; TextBeforeBattle
+ dw Route19AfterBattleText7 ; TextAfterBattle
+ dw Route19EndBattleText7 ; TextEndBattle
+ dw Route19EndBattleText7 ; TextEndBattle
+
+Route19TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_7, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_7, 1
+ dw Route19BattleText8 ; TextBeforeBattle
+ dw Route19AfterBattleText8 ; TextAfterBattle
+ dw Route19EndBattleText8 ; TextEndBattle
+ dw Route19EndBattleText8 ; TextEndBattle
+
+Route19TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_8, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_8, 1
+ dw Route19BattleText9 ; TextBeforeBattle
+ dw Route19AfterBattleText9 ; TextAfterBattle
+ dw Route19EndBattleText9 ; TextEndBattle
+ dw Route19EndBattleText9 ; TextEndBattle
+
+Route19TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_9, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_9, 1
+ dw Route19BattleText10 ; TextBeforeBattle
+ dw Route19AfterBattleText10 ; TextAfterBattle
+ dw Route19EndBattleText10 ; TextEndBattle
+ dw Route19EndBattleText10 ; TextEndBattle
+
+ db $ff
+
+Route19Text1:
+ TX_ASM
+ ld hl, Route19TrainerHeader0
+ jr Route19_TalkToTrainer
+
+Route19Text2:
+ TX_ASM
+ ld hl, Route19TrainerHeader1
+ jr Route19_TalkToTrainer
+
+Route19Text3:
+ TX_ASM
+ ld hl, Route19TrainerHeader2
+ jr Route19_TalkToTrainer
+
+Route19Text4:
+ TX_ASM
+ ld hl, Route19TrainerHeader3
+ jr Route19_TalkToTrainer
+
+Route19Text5:
+ TX_ASM
+ ld hl, Route19TrainerHeader4
+ jr Route19_TalkToTrainer
+
+Route19Text6:
+ TX_ASM
+ ld hl, Route19TrainerHeader5
+ jr Route19_TalkToTrainer
+
+Route19Text7:
+ TX_ASM
+ ld hl, Route19TrainerHeader6
+ jr Route19_TalkToTrainer
+
+Route19Text8:
+ TX_ASM
+ ld hl, Route19TrainerHeader7
+ jr Route19_TalkToTrainer
+
+Route19Text9:
+ TX_ASM
+ ld hl, Route19TrainerHeader8
+ jr Route19_TalkToTrainer
+
+Route19Text10:
+ TX_ASM
+ ld hl, Route19TrainerHeader9
+Route19_TalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route19BattleText1:
+ TX_FAR _Route19BattleText1
+ db "@"
+
+Route19EndBattleText1:
+ TX_FAR _Route19EndBattleText1
+ db "@"
+
+Route19AfterBattleText1:
+ TX_FAR _Route19AfterBattleText1
+ db "@"
+
+Route19BattleText2:
+ TX_FAR _Route19BattleText2
+ db "@"
+
+Route19EndBattleText2:
+ TX_FAR _Route19EndBattleText2
+ db "@"
+
+Route19AfterBattleText2:
+ TX_FAR _Route19AfterBattleText2
+ db "@"
+
+Route19BattleText3:
+ TX_FAR _Route19BattleText3
+ db "@"
+
+Route19EndBattleText3:
+ TX_FAR _Route19EndBattleText3
+ db "@"
+
+Route19AfterBattleText3:
+ TX_FAR _Route19AfterBattleText3
+ db "@"
+
+Route19BattleText4:
+ TX_FAR _Route19BattleText4
+ db "@"
+
+Route19EndBattleText4:
+ TX_FAR _Route19EndBattleText4
+ db "@"
+
+Route19AfterBattleText4:
+ TX_FAR _Route19AfterBattleText4
+ db "@"
+
+Route19BattleText5:
+ TX_FAR _Route19BattleText5
+ db "@"
+
+Route19EndBattleText5:
+ TX_FAR _Route19EndBattleText5
+ db "@"
+
+Route19AfterBattleText5:
+ TX_FAR _Route19AfterBattleText5
+ db "@"
+
+Route19BattleText6:
+ TX_FAR _Route19BattleText6
+ db "@"
+
+Route19EndBattleText6:
+ TX_FAR _Route19EndBattleText6
+ db "@"
+
+Route19AfterBattleText6:
+ TX_FAR _Route19AfterBattleText6
+ db "@"
+
+Route19BattleText7:
+ TX_FAR _Route19BattleText7
+ db "@"
+
+Route19EndBattleText7:
+ TX_FAR _Route19EndBattleText7
+ db "@"
+
+Route19AfterBattleText7:
+ TX_FAR _Route19AfterBattleText7
+ db "@"
+
+Route19BattleText8:
+ TX_FAR _Route19BattleText8
+ db "@"
+
+Route19EndBattleText8:
+ TX_FAR _Route19EndBattleText8
+ db "@"
+
+Route19AfterBattleText8:
+ TX_FAR _Route19AfterBattleText8
+ db "@"
+
+Route19BattleText9:
+ TX_FAR _Route19BattleText9
+ db "@"
+
+Route19EndBattleText9:
+ TX_FAR _Route19EndBattleText9
+ db "@"
+
+Route19AfterBattleText9:
+ TX_FAR _Route19AfterBattleText9
+ db "@"
+
+Route19BattleText10:
+ TX_FAR _Route19BattleText10
+ db "@"
+
+Route19EndBattleText10:
+ TX_FAR _Route19EndBattleText10
+ db "@"
+
+Route19AfterBattleText10:
+ TX_FAR _Route19AfterBattleText10
+ db "@"
+
+Route19Text11:
+ TX_FAR _Route19Text11
+ db "@"
diff --git a/scripts/Route1_2.asm b/scripts/Route1_2.asm
new file mode 100755
index 00000000..ee34ce55
--- /dev/null
+++ b/scripts/Route1_2.asm
@@ -0,0 +1,53 @@
+Func_f1ad2:
+ CheckAndSetEvent EVENT_GOT_POTION_SAMPLE
+ jr nz, .asm_1cada
+ ld hl, Route1ViridianMartSampleText
+ call PrintText
+ lb bc, POTION, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, Route1Text_f1aff
+ jr .asm_1cadd
+.BagFull
+ ld hl, Route1Text_f1b0a
+ jr .asm_1cadd
+.asm_1cada
+ ld hl, Route1Text_f1b05
+.asm_1cadd
+ call PrintText
+ ret
+
+Route1ViridianMartSampleText:
+ TX_FAR _Route1ViridianMartSampleText
+ db "@"
+
+Route1Text_f1aff:
+ TX_FAR _Route1Text_1cae8
+ TX_SFX_ITEM_1
+ db "@"
+
+Route1Text_f1b05:
+ TX_FAR _Route1Text_1caee
+ db "@"
+
+Route1Text_f1b0a:
+ TX_FAR _Route1Text_1caf3
+ db "@"
+
+Func_f1b0f:
+ ld hl, Route1Text_f1b16
+ call PrintText
+ ret
+
+Route1Text_f1b16:
+ TX_FAR _Route1Text2
+ db "@"
+
+Func_f1b1b:
+ ld hl, Route1Text_f1b22
+ call PrintText
+ ret
+
+Route1Text_f1b22:
+ TX_FAR _Route1Text3
+ db "@"
diff --git a/scripts/Route2.asm b/scripts/Route2.asm
new file mode 100755
index 00000000..f4b1c8c4
--- /dev/null
+++ b/scripts/Route2.asm
@@ -0,0 +1,16 @@
+Route2_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route2_TextPointers:
+ dw PickUpItemText
+ dw PickUpItemText
+ dw Route2Text3
+ dw Route2Text4
+
+Route2Text3:
+ TX_FAR _Route2Text3
+ db "@"
+
+Route2Text4:
+ TX_FAR _Route2Text4
+ db "@"
diff --git a/scripts/Route20.asm b/scripts/Route20.asm
new file mode 100755
index 00000000..081a723e
--- /dev/null
+++ b/scripts/Route20.asm
@@ -0,0 +1,353 @@
+Route20_Script:
+ CheckAndResetEvent EVENT_IN_SEAFOAM_ISLANDS
+ call nz, Route20Script_50cc6
+ call EnableAutoTextBoxDrawing
+ ld hl, Route20TrainerHeader0
+ ld de, Route20_ScriptPointers
+ ld a, [wRoute20CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute20CurScript], a
+ ret
+
+Route20Script_50cc6:
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
+ jr z, .asm_50cef
+ ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_1
+ call Route20Script_50d0c
+ ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_2
+ call Route20Script_50d0c
+ ld hl, .MissableObjectIDs
+.asm_50cdc
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_50cef
+ push hl
+ call Route20Script_50d14
+ pop hl
+ jr .asm_50cdc
+
+.MissableObjectIDs:
+ db HS_SEAFOAM_ISLANDS_B1F_BOULDER_1
+ db HS_SEAFOAM_ISLANDS_B1F_BOULDER_2
+ db HS_SEAFOAM_ISLANDS_B2F_BOULDER_1
+ db HS_SEAFOAM_ISLANDS_B2F_BOULDER_2
+ db HS_SEAFOAM_ISLANDS_B3F_BOULDER_3
+ db HS_SEAFOAM_ISLANDS_B3F_BOULDER_4
+ db $FF
+
+.asm_50cef
+ CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
+ ret z
+ ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_1
+ call Route20Script_50d0c
+ ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_2
+ call Route20Script_50d0c
+ ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_1
+ call Route20Script_50d14
+ ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_2
+ call Route20Script_50d14
+ ret
+
+Route20Script_50d0c:
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+
+Route20Script_50d14:
+ ld [wMissableObjectIndex], a
+ predef_jump HideObject
+
+Route20_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route20_TextPointers:
+ dw Route20Text1
+ dw Route20Text2
+ dw Route20Text3
+ dw Route20Text4
+ dw Route20Text5
+ dw Route20Text6
+ dw Route20Text7
+ dw Route20Text8
+ dw Route20Text9
+ dw Route20Text10
+ dw Route20Text11
+ dw Route20Text12
+
+Route20TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_0
+ dw Route20BattleText1 ; TextBeforeBattle
+ dw Route20AfterBattleText1 ; TextAfterBattle
+ dw Route20EndBattleText1 ; TextEndBattle
+ dw Route20EndBattleText1 ; TextEndBattle
+
+Route20TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_1
+ dw Route20BattleText2 ; TextBeforeBattle
+ dw Route20AfterBattleText2 ; TextAfterBattle
+ dw Route20EndBattleText2 ; TextEndBattle
+ dw Route20EndBattleText2 ; TextEndBattle
+
+Route20TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_2
+ dw Route20BattleText3 ; TextBeforeBattle
+ dw Route20AfterBattleText3 ; TextAfterBattle
+ dw Route20EndBattleText3 ; TextEndBattle
+ dw Route20EndBattleText3 ; TextEndBattle
+
+Route20TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_3
+ dw Route20BattleText4 ; TextBeforeBattle
+ dw Route20AfterBattleText4 ; TextAfterBattle
+ dw Route20EndBattleText4 ; TextEndBattle
+ dw Route20EndBattleText4 ; TextEndBattle
+
+Route20TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_4
+ dw Route20BattleText5 ; TextBeforeBattle
+ dw Route20AfterBattleText5 ; TextAfterBattle
+ dw Route20EndBattleText5 ; TextEndBattle
+ dw Route20EndBattleText5 ; TextEndBattle
+
+Route20TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_5
+ dw Route20BattleText6 ; TextBeforeBattle
+ dw Route20AfterBattleText6 ; TextAfterBattle
+ dw Route20EndBattleText6 ; TextEndBattle
+ dw Route20EndBattleText6 ; TextEndBattle
+
+Route20TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_6
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_6
+ dw Route20BattleText7 ; TextBeforeBattle
+ dw Route20AfterBattleText7 ; TextAfterBattle
+ dw Route20EndBattleText7 ; TextEndBattle
+ dw Route20EndBattleText7 ; TextEndBattle
+
+Route20TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_7, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_7, 1
+ dw Route20BattleText8 ; TextBeforeBattle
+ dw Route20AfterBattleText8 ; TextAfterBattle
+ dw Route20EndBattleText8 ; TextEndBattle
+ dw Route20EndBattleText8 ; TextEndBattle
+
+Route20TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_8, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_8, 1
+ dw Route20BattleText9 ; TextBeforeBattle
+ dw Route20AfterBattleText9 ; TextAfterBattle
+ dw Route20EndBattleText9 ; TextEndBattle
+ dw Route20EndBattleText9 ; TextEndBattle
+
+Route20TrainerHeader9:
+ dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_9, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_9, 1
+ dw Route20BattleText10 ; TextBeforeBattle
+ dw Route20AfterBattleText10 ; TextAfterBattle
+ dw Route20EndBattleText10 ; TextEndBattle
+ dw Route20EndBattleText10 ; TextEndBattle
+
+ db $ff
+
+Route20Text1:
+ TX_ASM
+ ld hl, Route20TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text2:
+ TX_ASM
+ ld hl, Route20TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text3:
+ TX_ASM
+ ld hl, Route20TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text4:
+ TX_ASM
+ ld hl, Route20TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text5:
+ TX_ASM
+ ld hl, Route20TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text6:
+ TX_ASM
+ ld hl, Route20TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text7:
+ TX_ASM
+ ld hl, Route20TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text8:
+ TX_ASM
+ ld hl, Route20TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text9:
+ TX_ASM
+ ld hl, Route20TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20Text10:
+ TX_ASM
+ ld hl, Route20TrainerHeader9
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route20BattleText1:
+ TX_FAR _Route20BattleText1
+ db "@"
+
+Route20EndBattleText1:
+ TX_FAR _Route20EndBattleText1
+ db "@"
+
+Route20AfterBattleText1:
+ TX_FAR _Route20AfterBattleText1
+ db "@"
+
+Route20BattleText2:
+ TX_FAR _Route20BattleText2
+ db "@"
+
+Route20EndBattleText2:
+ TX_FAR _Route20EndBattleText2
+ db "@"
+
+Route20AfterBattleText2:
+ TX_FAR _Route20AfterBattleText2
+ db "@"
+
+Route20BattleText3:
+ TX_FAR _Route20BattleText3
+ db "@"
+
+Route20EndBattleText3:
+ TX_FAR _Route20EndBattleText3
+ db "@"
+
+Route20AfterBattleText3:
+ TX_FAR _Route20AfterBattleText3
+ db "@"
+
+Route20BattleText4:
+ TX_FAR _Route20BattleText4
+ db "@"
+
+Route20EndBattleText4:
+ TX_FAR _Route20EndBattleText4
+ db "@"
+
+Route20AfterBattleText4:
+ TX_FAR _Route20AfterBattleText4
+ db "@"
+
+Route20BattleText5:
+ TX_FAR _Route20BattleText5
+ db "@"
+
+Route20EndBattleText5:
+ TX_FAR _Route20EndBattleText5
+ db "@"
+
+Route20AfterBattleText5:
+ TX_FAR _Route20AfterBattleText5
+ db "@"
+
+Route20BattleText6:
+ TX_FAR _Route20BattleText6
+ db "@"
+
+Route20EndBattleText6:
+ TX_FAR _Route20EndBattleText6
+ db "@"
+
+Route20AfterBattleText6:
+ TX_FAR _Route20AfterBattleText6
+ db "@"
+
+Route20BattleText7:
+ TX_FAR _Route20BattleText7
+ db "@"
+
+Route20EndBattleText7:
+ TX_FAR _Route20EndBattleText7
+ db "@"
+
+Route20AfterBattleText7:
+ TX_FAR _Route20AfterBattleText7
+ db "@"
+
+Route20BattleText8:
+ TX_FAR _Route20BattleText8
+ db "@"
+
+Route20EndBattleText8:
+ TX_FAR _Route20EndBattleText8
+ db "@"
+
+Route20AfterBattleText8:
+ TX_FAR _Route20AfterBattleText8
+ db "@"
+
+Route20BattleText9:
+ TX_FAR _Route20BattleText9
+ db "@"
+
+Route20EndBattleText9:
+ TX_FAR _Route20EndBattleText9
+ db "@"
+
+Route20AfterBattleText9:
+ TX_FAR _Route20AfterBattleText9
+ db "@"
+
+Route20BattleText10:
+ TX_FAR _Route20BattleText10
+ db "@"
+
+Route20EndBattleText10:
+ TX_FAR _Route20EndBattleText10
+ db "@"
+
+Route20AfterBattleText10:
+ TX_FAR _Route20AfterBattleText10
+ db "@"
+
+Route20Text12:
+Route20Text11:
+ TX_FAR _Route20Text11
+ db "@"
diff --git a/scripts/Route21.asm b/scripts/Route21.asm
new file mode 100755
index 00000000..15dacd5d
--- /dev/null
+++ b/scripts/Route21.asm
@@ -0,0 +1,269 @@
+Route21_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route21TrainerHeader0
+ ld de, Route21_ScriptPointers
+ ld a, [wRoute21CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute21CurScript], a
+ ret
+
+Route21_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route21_TextPointers:
+ dw Route21Text1
+ dw Route21Text2
+ dw Route21Text3
+ dw Route21Text4
+ dw Route21Text5
+ dw Route21Text6
+ dw Route21Text7
+ dw Route21Text8
+ dw Route21Text9
+
+Route21TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_0
+ dw Route21BattleText1 ; TextBeforeBattle
+ dw Route21AfterBattleText1 ; TextAfterBattle
+ dw Route21EndBattleText1 ; TextEndBattle
+ dw Route21EndBattleText1 ; TextEndBattle
+
+Route21TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_1
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_1
+ dw Route21BattleText2 ; TextBeforeBattle
+ dw Route21AfterBattleText2 ; TextAfterBattle
+ dw Route21EndBattleText2 ; TextEndBattle
+ dw Route21EndBattleText2 ; TextEndBattle
+
+Route21TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_2
+ dw Route21BattleText3 ; TextBeforeBattle
+ dw Route21AfterBattleText3 ; TextAfterBattle
+ dw Route21EndBattleText3 ; TextEndBattle
+ dw Route21EndBattleText3 ; TextEndBattle
+
+Route21TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_3
+ dw Route21BattleText4 ; TextBeforeBattle
+ dw Route21AfterBattleText4 ; TextAfterBattle
+ dw Route21EndBattleText4 ; TextEndBattle
+ dw Route21EndBattleText4 ; TextEndBattle
+
+Route21TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_4
+ dw Route21BattleText5 ; TextBeforeBattle
+ dw Route21AfterBattleText5 ; TextAfterBattle
+ dw Route21EndBattleText5 ; TextEndBattle
+ dw Route21EndBattleText5 ; TextEndBattle
+
+Route21TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_5
+ dw Route21BattleText6 ; TextBeforeBattle
+ dw Route21AfterBattleText6 ; TextAfterBattle
+ dw Route21EndBattleText6 ; TextEndBattle
+ dw Route21EndBattleText6 ; TextEndBattle
+
+Route21TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_6
+ dw Route21BattleText7 ; TextBeforeBattle
+ dw Route21AfterBattleText7 ; TextAfterBattle
+ dw Route21EndBattleText7 ; TextEndBattle
+ dw Route21EndBattleText7 ; TextEndBattle
+
+Route21TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_7, 1
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_7, 1
+ dw Route21BattleText8 ; TextBeforeBattle
+ dw Route21AfterBattleText8 ; TextAfterBattle
+ dw Route21EndBattleText8 ; TextEndBattle
+ dw Route21EndBattleText8 ; TextEndBattle
+
+Route21TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_8, 1
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_8, 1
+ dw Route21BattleText9 ; TextBeforeBattle
+ dw Route21AfterBattleText9 ; TextAfterBattle
+ dw Route21EndBattleText9 ; TextEndBattle
+ dw Route21EndBattleText9 ; TextEndBattle
+
+ db $ff
+
+Route21Text1:
+ TX_ASM
+ ld hl, Route21TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text2:
+ TX_ASM
+ ld hl, Route21TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text3:
+ TX_ASM
+ ld hl, Route21TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text4:
+ TX_ASM
+ ld hl, Route21TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text5:
+ TX_ASM
+ ld hl, Route21TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text6:
+ TX_ASM
+ ld hl, Route21TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text7:
+ TX_ASM
+ ld hl, Route21TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text8:
+ TX_ASM
+ ld hl, Route21TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21Text9:
+ TX_ASM
+ ld hl, Route21TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route21BattleText1:
+ TX_FAR _Route21BattleText1
+ db "@"
+
+Route21EndBattleText1:
+ TX_FAR _Route21EndBattleText1
+ db "@"
+
+Route21AfterBattleText1:
+ TX_FAR _Route21AfterBattleText1
+ db "@"
+
+Route21BattleText2:
+ TX_FAR _Route21BattleText2
+ db "@"
+
+Route21EndBattleText2:
+ TX_FAR _Route21EndBattleText2
+ db "@"
+
+Route21AfterBattleText2:
+ TX_FAR _Route21AfterBattleText2
+ db "@"
+
+Route21BattleText3:
+ TX_FAR _Route21BattleText3
+ db "@"
+
+Route21EndBattleText3:
+ TX_FAR _Route21EndBattleText3
+ db "@"
+
+Route21AfterBattleText3:
+ TX_FAR _Route21AfterBattleText3
+ db "@"
+
+Route21BattleText4:
+ TX_FAR _Route21BattleText4
+ db "@"
+
+Route21EndBattleText4:
+ TX_FAR _Route21EndBattleText4
+ db "@"
+
+Route21AfterBattleText4:
+ TX_FAR _Route21AfterBattleText4
+ db "@"
+
+Route21BattleText5:
+ TX_FAR _Route21BattleText5
+ db "@"
+
+Route21EndBattleText5:
+ TX_FAR _Route21EndBattleText5
+ db "@"
+
+Route21AfterBattleText5:
+ TX_FAR _Route21AfterBattleText5
+ db "@"
+
+Route21BattleText6:
+ TX_FAR _Route21BattleText6
+ db "@"
+
+Route21EndBattleText6:
+ TX_FAR _Route21EndBattleText6
+ db "@"
+
+Route21AfterBattleText6:
+ TX_FAR _Route21AfterBattleText6
+ db "@"
+
+Route21BattleText7:
+ TX_FAR _Route21BattleText7
+ db "@"
+
+Route21EndBattleText7:
+ TX_FAR _Route21EndBattleText7
+ db "@"
+
+Route21AfterBattleText7:
+ TX_FAR _Route21AfterBattleText7
+ db "@"
+
+Route21BattleText8:
+ TX_FAR _Route21BattleText8
+ db "@"
+
+Route21EndBattleText8:
+ TX_FAR _Route21EndBattleText8
+ db "@"
+
+Route21AfterBattleText8:
+ TX_FAR _Route21AfterBattleText8
+ db "@"
+
+Route21BattleText9:
+ TX_FAR _Route21BattleText9
+ db "@"
+
+Route21EndBattleText9:
+ TX_FAR _Route21EndBattleText9
+ db "@"
+
+Route21AfterBattleText9:
+ TX_FAR _Route21AfterBattleText9
+ db "@"
diff --git a/scripts/Route22.asm b/scripts/Route22.asm
new file mode 100755
index 00000000..ff57f902
--- /dev/null
+++ b/scripts/Route22.asm
@@ -0,0 +1,394 @@
+Route22_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route22_ScriptPointers
+ ld a, [wRoute22CurScript]
+ jp CallFunctionInTable
+
+Route22_ScriptPointers:
+ dw Route22Script0
+ dw Route22Script1
+ dw Route22Script2
+ dw Route22Script3
+ dw Route22Script4
+ dw Route22Script5
+ dw Route22Script6
+ dw Route22Script7
+
+Route22Script_50ece:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute22CurScript], a
+Route22Script7:
+ ret
+
+Route22Script_50ed6:
+ ld a, OPP_SONY1
+ ld [wCurOpponent], a
+ ld a, $2
+ ld [wTrainerNo], a
+ ret
+
+Route22Script_50ee1:
+ ld a, OPP_SONY2
+ ld [wCurOpponent], a
+ ld a, [wRivalStarter]
+ add 7
+ ld [wTrainerNo], a
+ ret
+
+Route22MoveRivalSprite:
+ ld de, Route22RivalMovementData
+ ld a, [wcf0d]
+ cp $1
+ jr z, .asm_50ef1
+ inc de
+.asm_50ef1
+ call MoveSprite
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
+ jp SetSpriteFacingDirectionAndDelay
+
+Route22RivalMovementData:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
+
+Route22Script0:
+ CheckEvent EVENT_ROUTE22_RIVAL_WANTS_BATTLE
+ ret z
+ ld hl, .Route22RivalBattleCoords
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [wCoordIndex]
+ ld [wcf0d], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ CheckEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
+ jr nz, .firstRivalBattle
+ CheckEventReuseA EVENT_2ND_ROUTE22_RIVAL_BATTLE ; is this the rival at the end of the game?
+ jp nz, Route22Script_5104e
+ ret
+
+.Route22RivalBattleCoords
+ db $04, $1D
+ db $05, $1D
+ db $FF
+
+.firstRivalBattle
+ ld a, $1
+ ld [wEmotionBubbleSpriteIndex], a
+ xor a ; EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld a, [wWalkBikeSurfState]
+ and a
+ jr z, .asm_50f4e
+ call StopAllMusic
+.asm_50f4e
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call Route22MoveRivalSprite
+ ld a, $1
+ ld [wRoute22CurScript], a
+ ret
+
+Route22Script1:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, [wcf0d]
+ cp $1
+ jr nz, .asm_50f78
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
+ jr .asm_50f7a
+.asm_50f78
+ ld a, SPRITE_FACING_RIGHT
+.asm_50f7a
+ ld [hSpriteFacingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteFacingDirectionAndDelay
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, Route22RivalDefeatedText1
+ ld de, Route22Text_511bc
+ call SaveEndBattleTextPointers
+ call Route22Script_50ed6
+ ld a, $2
+ ld [wRoute22CurScript], a
+ ret
+
+Route22RivalDefeatedText1:
+ TX_FAR _Route22RivalDefeatedText1
+ db "@"
+
+Route22Text_511bc:
+ TX_FAR _Route22Text_511bc
+ db "@"
+
+Route22Script2:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, Route22Script_50ece
+ ld a, [wRivalStarter]
+ cp 2
+ jr nz, .asm_50fc9
+ ld a, $1
+ ld [wRivalStarter], a
+.asm_50fc9
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ and a ; cp SPRITE_FACING_DOWN
+ jr nz, .notDown
+ ld a, SPRITE_FACING_UP
+ jr .done
+.notDown
+ ld a, SPRITE_FACING_RIGHT
+.done
+ ld [hSpriteFacingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld a, [wcf0d]
+ cp $1
+ jr nz, .asm_50fff
+ call Route22Script_51008
+ jr .asm_51002
+.asm_50fff
+ call Route22Script_5100d
+.asm_51002
+ ld a, $3
+ ld [wRoute22CurScript], a
+ ret
+
+Route22Script_51008:
+ ld de, Route22RivalExitMovementData1
+ jr Route22MoveRival1
+
+Route22Script_5100d:
+ ld de, Route22RivalExitMovementData2
+Route22MoveRival1:
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ jp MoveSprite
+
+Route22RivalExitMovementData1:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+Route22RivalExitMovementData2:
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+Route22Script3:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, HS_ROUTE_22_RIVAL_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call PlayDefaultMusic
+ ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
+ ld a, $0
+ ld [wRoute22CurScript], a
+ ret
+
+Route22Script_5104e:
+ ld a, $2
+ ld [wEmotionBubbleSpriteIndex], a
+ xor a ; EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld a, [wWalkBikeSurfState]
+ and a
+ jr z, .skipYVisibilityTesta
+ call StopAllMusic
+.skipYVisibilityTesta
+ call StopAllMusic
+ callba Music_RivalAlternateTempo
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call Route22MoveRivalSprite
+ ld a, $4
+ ld [wRoute22CurScript], a
+ ret
+
+Route22Script4:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld a, [wcf0d]
+ cp $1
+ jr nz, .asm_510a1
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
+ jr .asm_510a8
+.asm_510a1
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_RIGHT
+.asm_510a8
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, Route22RivalDefeatedText2
+ ld de, Route22Text_511d0
+ call SaveEndBattleTextPointers
+ call Route22Script_50ee1
+ ld a, $5
+ ld [wRoute22CurScript], a
+ ret
+
+Route22RivalDefeatedText2:
+ TX_FAR _Route22RivalDefeatedText2
+ db "@"
+
+Route22Text_511d0:
+ TX_FAR _Route22Text_511d0
+ db "@"
+
+Route22Script5:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, Route22Script_50ece
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ ld a, [wcf0d]
+ cp $1
+ jr nz, .asm_510fb
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_UP
+ jr .asm_51102
+.asm_510fb
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_RIGHT
+.asm_51102
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_ROUTE22_RIVAL_2ND_BATTLE
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call StopAllMusic
+ callba Music_RivalAlternateStartAndTempo
+ ld a, [wcf0d]
+ cp $1
+ jr nz, .asm_51134
+ call Route22Script_5113d
+ jr .asm_51137
+.asm_51134
+ call Route22Script_51142
+.asm_51137
+ ld a, $6
+ ld [wRoute22CurScript], a
+ ret
+
+Route22Script_5113d:
+ ld de, MovementData_5114c
+ jr Route22MoveRival2
+
+Route22Script_51142:
+ ld de, MovementData_5114d
+Route22MoveRival2:
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ jp MoveSprite
+
+MovementData_5114c:
+ db NPC_MOVEMENT_LEFT
+
+MovementData_5114d:
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_LEFT
+ db $FF
+
+Route22Script6:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, HS_ROUTE_22_RIVAL_2
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call PlayDefaultMusic
+ ResetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
+ ld a, $7
+ ld [wRoute22CurScript], a
+ ret
+
+Route22_TextPointers:
+ dw Route22Text1
+ dw Route22Text2
+ dw Route22FrontGateText
+
+Route22Text1:
+ TX_ASM
+ callba Func_f1b27
+ jp TextScriptEnd
+
+Route22Text2:
+ TX_ASM
+ callba Func_f1b47
+ jp TextScriptEnd
+
+Route22FrontGateText:
+ TX_ASM
+ callba Func_f1b67
+ jp TextScriptEnd
diff --git a/scripts/Route22Gate.asm b/scripts/Route22Gate.asm
new file mode 100755
index 00000000..946366b5
--- /dev/null
+++ b/scripts/Route22Gate.asm
@@ -0,0 +1,96 @@
+Route22Gate_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route22Gate_ScriptPointers
+ ld a, [wRoute22GateCurScript]
+ call CallFunctionInTable
+ ld a, [wYCoord]
+ cp $4
+ ld a, ROUTE_23
+ jr c, .asm_1e69a
+ ld a, ROUTE_22
+.asm_1e69a
+ ld [wLastMap], a
+ ret
+
+Route22Gate_ScriptPointers:
+ dw Route22GateScript0
+ dw Route22GateScript1
+ dw Route22GateScript2
+
+Route22GateScript0:
+ ld hl, Route22GateScriptCoords
+ call ArePlayerCoordsInArray
+ ret nc
+ xor a
+ ld [hJoyHeld], a
+ ld a, SPRITE_FACING_LEFT
+ ld [wSpriteStateData1 + 1 * $10 + 9], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ret
+
+Route22GateScriptCoords:
+ db 2,4
+ db 2,5
+ db $ff
+
+Route22GateScript_1e6ba:
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld [wJoyIgnore], a
+ jp StartSimulatingJoypadStates
+
+Route22GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ call Delay3
+ ld a, $0
+ ld [wRoute22GateCurScript], a
+Route22GateScript2:
+ ret
+
+Route22Gate_TextPointers:
+ dw Route22GateText1
+
+Route22GateText1:
+ TX_ASM
+ ld a, [wObtainedBadges]
+ bit 0, a ; BOULDERBADGE
+ jr nz, .asm_1e6f6
+ ld hl, Route22GateText_1e704
+ call PrintText
+ call Route22GateScript_1e6ba
+ ld a, $1
+ jr .asm_1e6fe
+.asm_1e6f6
+ ld hl, Route22GateText_1e71a
+ call PrintText
+ ld a, $2
+.asm_1e6fe
+ ld [wRoute22GateCurScript], a
+ jp TextScriptEnd
+
+Route22GateText_1e704:
+ TX_FAR _Route22GateText_1e704
+ TX_ASM
+ ld a, SFX_DENIED
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ ld hl, Route22GateText_1e715
+ ret
+
+Route22GateText_1e715:
+ TX_FAR _Route22GateText_1e715
+ db "@"
+
+Route22GateText_1e71a:
+ TX_FAR _Route22GateText_1e71a
+ TX_SFX_ITEM_1
+ db "@"
diff --git a/scripts/route22_2.asm b/scripts/Route22_2.asm
index 1cd23ed2..1cd23ed2 100755
--- a/scripts/route22_2.asm
+++ b/scripts/Route22_2.asm
diff --git a/scripts/Route23.asm b/scripts/Route23.asm
new file mode 100755
index 00000000..34d95b84
--- /dev/null
+++ b/scripts/Route23.asm
@@ -0,0 +1,236 @@
+Route23_Script:
+ call Route23Script_511e9
+ call EnableAutoTextBoxDrawing
+ ld hl, Route23_ScriptPointers
+ ld a, [wRoute23CurScript]
+ jp CallFunctionInTable
+
+Route23Script_511e9:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ ResetEvents EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
+ ResetEvents EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
+ ld a, HS_VICTORY_ROAD_3F_BOULDER
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ld a, HS_VICTORY_ROAD_2F_BOULDER
+ ld [wMissableObjectIndex], a
+ predef_jump HideObject
+
+Route23_ScriptPointers:
+ dw Route23Script0
+ dw Route23Script1
+ dw Route23Script2
+
+Route23Script0:
+ ld hl, YCoordsData_51255
+ ld a, [wYCoord]
+ ld b, a
+ ld e, $0
+ EventFlagBit c, EVENT_PASSED_EARTHBADGE_CHECK + 1, EVENT_PASSED_CASCADEBADGE_CHECK
+.asm_51224
+ ld a, [hli]
+ cp $ff
+ ret z
+ inc e
+ dec c
+ cp b
+ jr nz, .asm_51224
+ cp $23
+ jr nz, .asm_51237
+ ld a, [wXCoord]
+ cp $e
+ ret nc
+.asm_51237
+ ld a, e
+ ld [hSpriteIndexOrTextID], a
+ ld a, c
+ ld [wWhichBadge], a
+ ld b, FLAG_TEST
+ EventFlagAddress hl, EVENT_PASSED_CASCADEBADGE_CHECK
+ predef FlagActionPredef
+ ld a, c
+ and a
+ ret nz
+ call Route23Script_5125d
+ call DisplayTextID
+ xor a
+ ld [hJoyHeld], a
+ ret
+
+YCoordsData_51255:
+ db $23,$38,$55,$60,$69,$77,$88,$FF
+
+Route23Script_5125d:
+ ld hl, BadgeTextPointers
+ ld a, [wWhichBadge]
+ ld c, a
+ ld b, 0
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, wcd6d
+.copyTextLoop
+ ld a, [hli]
+ ld [de], a
+ inc de
+ cp "@"
+ jr nz, .copyTextLoop
+ ret
+
+BadgeTextPointers:
+ dw CascadeBadgeText
+ dw ThunderBadgeText
+ dw RainbowBadgeText
+ dw SoulBadgeText
+ dw MarshBadgeText
+ dw VolcanoBadgeText
+ dw EarthBadgeText
+
+EarthBadgeText:
+ db "EARTHBADGE@"
+
+VolcanoBadgeText:
+ db "VOLCANOBADGE@"
+
+MarshBadgeText:
+ db "MARSHBADGE@"
+
+SoulBadgeText:
+ db "SOULBADGE@"
+
+RainbowBadgeText:
+ db "RAINBOWBADGE@"
+
+ThunderBadgeText:
+ db "THUNDERBADGE@"
+
+CascadeBadgeText:
+ db "CASCADEBADGE@"
+
+Route23Script_512d8:
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ xor a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld [wJoyIgnore], a
+ jp StartSimulatingJoypadStates
+
+Route23Script1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+Route23Script2:
+ ld a, $0
+ ld [wRoute23CurScript], a
+ ret
+
+Route23_TextPointers:
+ dw Route23Text1
+ dw Route23Text2
+ dw Route23Text3
+ dw Route23Text4
+ dw Route23Text5
+ dw Route23Text6
+ dw Route23Text7
+ dw Route23Text8
+
+Route23Text1:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_EARTHBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text2:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_VOLCANOBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text3:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_MARSHBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text4:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_SOULBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text5:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_RAINBOWBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text6:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_THUNDERBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Text7:
+ TX_ASM
+ EventFlagBit a, EVENT_PASSED_CASCADEBADGE_CHECK
+ call Route23Script_51346
+ jp TextScriptEnd
+
+Route23Script_51346:
+ ld [wWhichBadge], a
+ call Route23Script_5125d
+ ld a, [wWhichBadge]
+ inc a
+ ld c, a
+ ld b, FLAG_TEST
+ ld hl, wObtainedBadges
+ predef FlagActionPredef
+ ld a, c
+ and a
+ jr nz, .asm_5136e
+ ld hl, VictoryRoadGuardText1
+ call PrintText
+ call Route23Script_512d8
+ ld a, $1
+ ld [wRoute23CurScript], a
+ ret
+.asm_5136e
+ ld hl, VictoryRoadGuardText2
+ call PrintText
+ ld a, [wWhichBadge]
+ ld c, a
+ ld b, FLAG_SET
+ EventFlagAddress hl, EVENT_PASSED_CASCADEBADGE_CHECK
+ predef FlagActionPredef
+ ld a, $2
+ ld [wRoute23CurScript], a
+ ret
+
+Route23Script_51388:
+ ld hl, VictoryRoadGuardText2
+ jp PrintText
+
+VictoryRoadGuardText1:
+ TX_FAR _VictoryRoadGuardText1
+ TX_ASM
+ ld a, SFX_DENIED
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+VictoryRoadGuardText2:
+ TX_FAR _VictoryRoadGuardText2
+ TX_SFX_ITEM_1
+ TX_FAR _VictoryRoadGuardText_513a3
+ db "@"
+
+Route23Text8:
+ TX_FAR _Route23Text8
+ db "@"
diff --git a/scripts/Route24.asm b/scripts/Route24.asm
new file mode 100755
index 00000000..58f71981
--- /dev/null
+++ b/scripts/Route24.asm
@@ -0,0 +1,377 @@
+Route24_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route24TrainerHeader0
+ ld de, Route24_ScriptPointers
+ ld a, [wRoute24CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute24CurScript], a
+ ret
+
+Route24Script_513c0:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute24CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route24_ScriptPointers:
+ dw Route24Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw Route24Script3
+ dw Route24Script4
+
+Route24Script0:
+ CheckEvent EVENT_GOT_NUGGET
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_5140e
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyHeld], a
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ CheckAndResetEvent EVENT_NUGGET_REWARD_AVAILABLE
+ ret z
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $4
+ ld [wRoute24CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+CoordsData_5140e:
+ db $0F,$0A,$FF
+
+Route24Script4:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $0
+ ld [wRoute24CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route24Script3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, Route24Script_513c0
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_ROUTE24_ROCKET
+ ld a, $1
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wRoute24CurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route24_TextPointers:
+ dw Route24Text1
+ dw Route24Text2
+ dw Route24Text3
+ dw Route24Text4
+ dw Route24Text5
+ dw Route24Text6
+ dw Route24Text7
+ dw PickUpItemText
+ dw Route24Text8
+
+Route24TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_0
+ dw Route24BattleText1 ; TextBeforeBattle
+ dw Route24AfterBattleText1 ; TextAfterBattle
+ dw Route24EndBattleText1 ; TextEndBattle
+ dw Route24EndBattleText1 ; TextEndBattle
+
+Route24TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_1
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_1
+ dw Route24BattleText2 ; TextBeforeBattle
+ dw Route24AfterBattleText2 ; TextAfterBattle
+ dw Route24EndBattleText2 ; TextEndBattle
+ dw Route24EndBattleText2 ; TextEndBattle
+
+Route24TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_2
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_2
+ dw Route24BattleText3 ; TextBeforeBattle
+ dw Route24AfterBattleText3 ; TextAfterBattle
+ dw Route24EndBattleText3 ; TextEndBattle
+ dw Route24EndBattleText3 ; TextEndBattle
+
+Route24TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_3
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_3
+ dw Route24BattleText4 ; TextBeforeBattle
+ dw Route24AfterBattleText4 ; TextAfterBattle
+ dw Route24EndBattleText4 ; TextEndBattle
+ dw Route24EndBattleText4 ; TextEndBattle
+
+Route24TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_4
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_4
+ dw Route24BattleText5 ; TextBeforeBattle
+ dw Route24AfterBattleText5 ; TextAfterBattle
+ dw Route24EndBattleText5 ; TextEndBattle
+ dw Route24EndBattleText5 ; TextEndBattle
+
+Route24TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_5
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_5
+ dw Route24BattleText6 ; TextBeforeBattle
+ dw Route24AfterBattleText6 ; TextAfterBattle
+ dw Route24EndBattleText6 ; TextEndBattle
+ dw Route24EndBattleText6 ; TextEndBattle
+
+ db $ff
+
+Route24Text1:
+ TX_ASM
+ ResetEvent EVENT_NUGGET_REWARD_AVAILABLE
+ CheckEvent EVENT_GOT_NUGGET
+ jr nz, .asm_514f9
+ ld hl, Route24Text_51510
+ call PrintText
+ lb bc, NUGGET, 1
+ call GiveItem
+ jr nc, .BagFull
+ SetEvent EVENT_GOT_NUGGET
+ ld hl, Route24Text_5151a
+ call PrintText
+ ld hl, Route24Text_51526
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, Route24Text_5152b
+ ld de, Route24Text_5152b
+ call SaveEndBattleTextPointers
+ ld a, [hSpriteIndexOrTextID]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3
+ ld [wRoute24CurScript], a
+ ld [wCurMapScript], a
+ jp TextScriptEnd
+.asm_514f9
+ ld hl, Route24Text_51530
+ call PrintText
+ jp TextScriptEnd
+.BagFull
+ ld hl, Route24Text_51521
+ call PrintText
+ SetEvent EVENT_NUGGET_REWARD_AVAILABLE
+ jp TextScriptEnd
+
+Route24Text_51510:
+ TX_FAR _Route24Text_51510
+ TX_SFX_ITEM_1
+ TX_FAR _Route24Text_51515
+ db "@"
+
+Route24Text_5151a:
+ TX_FAR _Route24Text_5151a
+ TX_SFX_KEY_ITEM
+ TX_BLINK
+ db "@"
+
+Route24Text_51521:
+ TX_FAR _Route24Text_51521
+ db "@"
+
+Route24Text_51526:
+ TX_FAR _Route24Text_51526
+ db "@"
+
+Route24Text_5152b:
+ TX_FAR _Route24Text_5152b
+ db "@"
+
+Route24Text_51530:
+ TX_FAR _Route24Text_51530
+ db "@"
+
+Route24Text2:
+ TX_ASM
+ ld hl, Route24TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text3:
+ TX_ASM
+ ld hl, Route24TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text4:
+ TX_ASM
+ ld hl, Route24TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text5:
+ TX_ASM
+ ld hl, Route24TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text6:
+ TX_ASM
+ ld hl, Route24TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24Text7:
+ TX_ASM
+ ld hl, Route24TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route24BattleText1:
+ TX_FAR _Route24BattleText1
+ db "@"
+
+Route24EndBattleText1:
+ TX_FAR _Route24EndBattleText1
+ db "@"
+
+Route24AfterBattleText1:
+ TX_FAR _Route24AfterBattleText1
+ db "@"
+
+Route24BattleText2:
+ TX_FAR _Route24BattleText2
+ db "@"
+
+Route24EndBattleText2:
+ TX_FAR _Route24EndBattleText2
+ db "@"
+
+Route24AfterBattleText2:
+ TX_FAR _Route24AfterBattleText2
+ db "@"
+
+Route24BattleText3:
+ TX_FAR _Route24BattleText3
+ db "@"
+
+Route24EndBattleText3:
+ TX_FAR _Route24EndBattleText3
+ db "@"
+
+Route24AfterBattleText3:
+ TX_FAR _Route24AfterBattleText3
+ db "@"
+
+Route24BattleText4:
+ TX_FAR _Route24BattleText4
+ db "@"
+
+Route24EndBattleText4:
+ TX_FAR _Route24EndBattleText4
+ db "@"
+
+Route24AfterBattleText4:
+ TX_FAR _Route24AfterBattleText4
+ db "@"
+
+Route24BattleText5:
+ TX_FAR _Route24BattleText5
+ db "@"
+
+Route24EndBattleText5:
+ TX_FAR _Route24EndBattleText5
+ db "@"
+
+Route24AfterBattleText5:
+ TX_FAR _Route24AfterBattleText5
+ db "@"
+
+Route24BattleText6:
+ TX_FAR _Route24BattleText6
+ db "@"
+
+Route24EndBattleText6:
+ TX_FAR _Route24EndBattleText6
+ db "@"
+
+Route24AfterBattleText6:
+ TX_FAR _Route24AfterBattleText6
+ db "@"
+
+Route24Text8:
+ TX_ASM
+ CheckEvent EVENT_54F
+ jr nz, .asm_515d5
+ ld hl, Route24Text_515de
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_515d0
+ ld a, CHARMANDER
+ ld [wd11e], a
+ ld [wcf91], a
+ call GetMonName
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ lb bc, CHARMANDER, 10
+ call GivePokemon
+ jp nc, TextScriptEnd
+ ld a, [wAddedToParty]
+ and a
+ call z, WaitForTextScrollButtonPress
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, Route24Text_515e3
+ call PrintText
+ SetEvent EVENT_54F
+ jp TextScriptEnd
+
+.asm_515d0
+ ld hl, Route24Text_515e9
+ jr .asm_515d8
+
+.asm_515d5
+ ld hl, Route24Text_515ee
+.asm_515d8
+ call PrintText
+ jp TextScriptEnd
+
+Route24Text_515de:
+ TX_FAR _Route24DamianText1
+ db "@"
+
+Route24Text_515e3:
+ TX_FAR _Route24DamianText2
+ db $d
+ db "@"
+
+Route24Text_515e9:
+ TX_FAR _Route24DamianText3
+ db "@"
+
+Route24Text_515ee:
+ TX_FAR _Route24DamianText4
+ db "@"
+
diff --git a/scripts/Route25.asm b/scripts/Route25.asm
new file mode 100755
index 00000000..c3c11ed5
--- /dev/null
+++ b/scripts/Route25.asm
@@ -0,0 +1,314 @@
+Route25_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route25TrainerHeader0
+ ld de, Route25_ScriptPointers
+ ld a, [wRoute25CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute25CurScript], a
+ call Route25Script_515e1
+ ret
+
+Route25Script_515e1:
+ ld hl, wd492
+ res 2, [hl]
+ res 3, [hl]
+ res 4, [hl]
+ res 7, [hl]
+ xor a
+ ld [wBillsHouseCurScript], a
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ ret z
+ CheckEventHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
+ ret nz
+ CheckEventReuseHL EVENT_MET_BILL_2
+ jr nz, .asm_51638
+ ResetEventReuseHL EVENT_BILL_SAID_USE_CELL_SEPARATOR
+ ld a, HS_BILL_POKEMON
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ jr .asm_5165c
+
+.asm_51638
+ CheckEventAfterBranchReuseHL EVENT_GOT_SS_TICKET, EVENT_MET_BILL_2
+ jr z, .asm_5165c
+ SetEventReuseHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
+ ld a, HS_NUGGET_BRIDGE_GUY
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_BILL_1
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_BILL_2
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+.asm_5165c
+ ret
+
+Route25_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route25_TextPointers:
+ dw Route25Text1
+ dw Route25Text2
+ dw Route25Text3
+ dw Route25Text4
+ dw Route25Text5
+ dw Route25Text6
+ dw Route25Text7
+ dw Route25Text8
+ dw Route25Text9
+ dw PickUpItemText
+ dw Route25Text11
+
+Route25TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_0
+ dw Route25BattleText1 ; TextBeforeBattle
+ dw Route25AfterBattleText1 ; TextAfterBattle
+ dw Route25EndBattleText1 ; TextEndBattle
+ dw Route25EndBattleText1 ; TextEndBattle
+
+Route25TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_1
+ dw Route25BattleText2 ; TextBeforeBattle
+ dw Route25AfterBattleText2 ; TextAfterBattle
+ dw Route25EndBattleText2 ; TextEndBattle
+ dw Route25EndBattleText2 ; TextEndBattle
+
+Route25TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_2
+ dw Route25BattleText3 ; TextBeforeBattle
+ dw Route25AfterBattleText3 ; TextAfterBattle
+ dw Route25EndBattleText3 ; TextEndBattle
+ dw Route25EndBattleText3 ; TextEndBattle
+
+Route25TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_3
+ dw Route25BattleText4 ; TextBeforeBattle
+ dw Route25AfterBattleText4 ; TextAfterBattle
+ dw Route25EndBattleText4 ; TextEndBattle
+ dw Route25EndBattleText4 ; TextEndBattle
+
+Route25TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_4
+ dw Route25BattleText5 ; TextBeforeBattle
+ dw Route25AfterBattleText5 ; TextAfterBattle
+ dw Route25EndBattleText5 ; TextEndBattle
+ dw Route25EndBattleText5 ; TextEndBattle
+
+Route25TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_5
+ dw Route25BattleText6 ; TextBeforeBattle
+ dw Route25AfterBattleText6 ; TextAfterBattle
+ dw Route25EndBattleText6 ; TextEndBattle
+ dw Route25EndBattleText6 ; TextEndBattle
+
+Route25TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_6
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_6
+ dw Route25BattleText7 ; TextBeforeBattle
+ dw Route25AfterBattleText7 ; TextAfterBattle
+ dw Route25EndBattleText7 ; TextEndBattle
+ dw Route25EndBattleText7 ; TextEndBattle
+
+Route25TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_7, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_7, 1
+ dw Route25BattleText8 ; TextBeforeBattle
+ dw Route25AfterBattleText8 ; TextAfterBattle
+ dw Route25EndBattleText8 ; TextEndBattle
+ dw Route25EndBattleText8 ; TextEndBattle
+
+Route25TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_8, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_8, 1
+ dw Route25BattleText9 ; TextBeforeBattle
+ dw Route25AfterBattleText9 ; TextAfterBattle
+ dw Route25EndBattleText9 ; TextEndBattle
+ dw Route25EndBattleText9 ; TextEndBattle
+
+ db $ff
+
+Route25Text1:
+ TX_ASM
+ ld hl, Route25TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text2:
+ TX_ASM
+ ld hl, Route25TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text3:
+ TX_ASM
+ ld hl, Route25TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text4:
+ TX_ASM
+ ld hl, Route25TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text5:
+ TX_ASM
+ ld hl, Route25TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text6:
+ TX_ASM
+ ld hl, Route25TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text7:
+ TX_ASM
+ ld hl, Route25TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text8:
+ TX_ASM
+ ld hl, Route25TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25Text9:
+ TX_ASM
+ ld hl, Route25TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route25BattleText1:
+ TX_FAR _Route25BattleText1
+ db "@"
+
+Route25EndBattleText1:
+ TX_FAR _Route25EndBattleText1
+ db "@"
+
+Route25AfterBattleText1:
+ TX_FAR _Route25AfterBattleText1
+ db "@"
+
+Route25BattleText2:
+ TX_FAR _Route25BattleText2
+ db "@"
+
+Route25EndBattleText2:
+ TX_FAR _Route25EndBattleText2
+ db "@"
+
+Route25AfterBattleText2:
+ TX_FAR _Route25AfterBattleText2
+ db "@"
+
+Route25BattleText3:
+ TX_FAR _Route25BattleText3
+ db "@"
+
+Route25EndBattleText3:
+ TX_FAR _Route25EndBattleText3
+ db "@"
+
+Route25AfterBattleText3:
+ TX_FAR _Route25AfterBattleText3
+ db "@"
+
+Route25BattleText4:
+ TX_FAR _Route25BattleText4
+ db "@"
+
+Route25EndBattleText4:
+ TX_FAR _Route25EndBattleText4
+ db "@"
+
+Route25AfterBattleText4:
+ TX_FAR _Route25AfterBattleText4
+ db "@"
+
+Route25BattleText5:
+ TX_FAR _Route25BattleText5
+ db "@"
+
+Route25EndBattleText5:
+ TX_FAR _Route25EndBattleText5
+ db "@"
+
+Route25AfterBattleText5:
+ TX_FAR _Route25AfterBattleText5
+ db "@"
+
+Route25BattleText6:
+ TX_FAR _Route25BattleText6
+ db "@"
+
+Route25EndBattleText6:
+ TX_FAR _Route25EndBattleText6
+ db "@"
+
+Route25AfterBattleText6:
+ TX_FAR _Route25AfterBattleText6
+ db "@"
+
+Route25BattleText7:
+ TX_FAR _Route25BattleText7
+ db "@"
+
+Route25EndBattleText7:
+ TX_FAR _Route25EndBattleText7
+ db "@"
+
+Route25AfterBattleText7:
+ TX_FAR _Route25AfterBattleText7
+ db "@"
+
+Route25BattleText8:
+ TX_FAR _Route25BattleText8
+ db "@"
+
+Route25EndBattleText8:
+ TX_FAR _Route25EndBattleText8
+ db "@"
+
+Route25AfterBattleText8:
+ TX_FAR _Route25AfterBattleText8
+ db "@"
+
+Route25BattleText9:
+ TX_FAR _Route25BattleText9
+ db "@"
+
+Route25EndBattleText9:
+ TX_FAR _Route25EndBattleText9
+ db "@"
+
+Route25AfterBattleText9:
+ TX_FAR _Route25AfterBattleText9
+ db "@"
+
+Route25Text11:
+ TX_FAR _Route25Text11
+ db "@"
diff --git a/scripts/Route2Gate.asm b/scripts/Route2Gate.asm
new file mode 100755
index 00000000..70d93814
--- /dev/null
+++ b/scripts/Route2Gate.asm
@@ -0,0 +1,39 @@
+Route2Gate_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route2Gate_TextPointers:
+ dw Route2GateText1
+ dw Route2GateText2
+
+Route2GateText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_HM05
+ jr nz, .asm_5d60d
+ ld a, 10 ; pokemon needed
+ ld [hOaksAideRequirement], a
+ ld a, HM_05 ; oak's aide reward
+ ld [hOaksAideRewardItem], a
+ ld [wd11e], a
+ call GetItemName
+ ld hl, wcd6d
+ ld de, wOaksAideRewardItemName
+ ld bc, ITEM_NAME_LENGTH
+ call CopyData
+ predef OaksAideScript
+ ld a, [hOaksAideResult]
+ cp $1
+ jr nz, .asm_5d613
+ SetEvent EVENT_GOT_HM05
+.asm_5d60d
+ ld hl, Route2GateText_5d616
+ call PrintText
+.asm_5d613
+ jp TextScriptEnd
+
+Route2GateText_5d616:
+ TX_FAR _Route2GateText_5d616
+ db "@"
+
+Route2GateText2:
+ TX_FAR _Route2GateText2
+ db "@"
diff --git a/scripts/Route2TradeHouse.asm b/scripts/Route2TradeHouse.asm
new file mode 100755
index 00000000..a89e2fe9
--- /dev/null
+++ b/scripts/Route2TradeHouse.asm
@@ -0,0 +1,17 @@
+Route2TradeHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route2TradeHouse_TextPointers:
+ dw Route2HouseText1
+ dw Route2HouseText2
+
+Route2HouseText1:
+ TX_FAR _Route2HouseText1
+ db "@"
+
+Route2HouseText2:
+ TX_ASM
+ ld a, $1
+ ld [wWhichTrade], a
+ predef DoInGameTradeDialogue
+ jp TextScriptEnd
diff --git a/scripts/Route3.asm b/scripts/Route3.asm
new file mode 100755
index 00000000..d55831bf
--- /dev/null
+++ b/scripts/Route3.asm
@@ -0,0 +1,251 @@
+Route3_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route3TrainerHeader0
+ ld de, Route3_ScriptPointers
+ ld a, [wRoute3CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute3CurScript], a
+ ret
+
+Route3_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route3_TextPointers:
+ dw Route3Text1
+ dw Route3Text2
+ dw Route3Text3
+ dw Route3Text4
+ dw Route3Text5
+ dw Route3Text6
+ dw Route3Text7
+ dw Route3Text8
+ dw Route3Text9
+ dw Route3Text10
+
+Route3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_0
+ dw Route3BattleText1 ; TextBeforeBattle
+ dw Route3AfterBattleText1 ; TextAfterBattle
+ dw Route3EndBattleText1 ; TextEndBattle
+ dw Route3EndBattleText1 ; TextEndBattle
+
+Route3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_1
+ dw Route3BattleText2 ; TextBeforeBattle
+ dw Route3AfterBattleText2 ; TextAfterBattle
+ dw Route3EndBattleText2 ; TextEndBattle
+ dw Route3EndBattleText2 ; TextEndBattle
+
+Route3TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_2
+ dw Route3BattleText3 ; TextBeforeBattle
+ dw Route3AfterBattleText3 ; TextAfterBattle
+ dw Route3EndBattleText3 ; TextEndBattle
+ dw Route3EndBattleText3 ; TextEndBattle
+
+Route3TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_3
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_3
+ dw Route3BattleText4 ; TextBeforeBattle
+ dw Route3AfterBattleText4 ; TextAfterBattle
+ dw Route3EndBattleText4 ; TextEndBattle
+ dw Route3EndBattleText4 ; TextEndBattle
+
+Route3TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_4
+ dw Route3BattleText5 ; TextBeforeBattle
+ dw Route3AfterBattleText5 ; TextAfterBattle
+ dw Route3EndBattleText5 ; TextEndBattle
+ dw Route3EndBattleText5 ; TextEndBattle
+
+Route3TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_5
+ dw Route3BattleText6 ; TextBeforeBattle
+ dw Route3AfterBattleText6 ; TextAfterBattle
+ dw Route3EndBattleText6 ; TextEndBattle
+ dw Route3EndBattleText6 ; TextEndBattle
+
+Route3TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_6, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_6, 1
+ dw Route3BattleText7 ; TextBeforeBattle
+ dw Route3AfterBattleText7 ; TextAfterBattle
+ dw Route3EndBattleText7 ; TextEndBattle
+ dw Route3EndBattleText7 ; TextEndBattle
+
+Route3TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_7, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_7, 1
+ dw Route3BattleText8 ; TextBeforeBattle
+ dw Route3AfterBattleText8 ; TextAfterBattle
+ dw Route3EndBattleText8 ; TextEndBattle
+ dw Route3EndBattleText8 ; TextEndBattle
+
+ db $ff
+
+Route3Text1:
+ TX_FAR _Route3Text1
+ db "@"
+
+Route3Text2:
+ TX_ASM
+ ld hl, Route3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText1:
+ TX_FAR _Route3BattleText1
+ db "@"
+
+Route3EndBattleText1:
+ TX_FAR _Route3EndBattleText1
+ db "@"
+
+Route3AfterBattleText1:
+ TX_FAR _Route3AfterBattleText1
+ db "@"
+
+Route3Text3:
+ TX_ASM
+ ld hl, Route3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText2:
+ TX_FAR _Route3BattleText2
+ db "@"
+
+Route3EndBattleText2:
+ TX_FAR _Route3EndBattleText2
+ db "@"
+
+Route3AfterBattleText2:
+ TX_FAR _Route3AfterBattleText2
+ db "@"
+
+Route3Text4:
+ TX_ASM
+ ld hl, Route3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText3:
+ TX_FAR _Route3BattleText3
+ db "@"
+
+Route3EndBattleText3:
+ TX_FAR _Route3EndBattleText3
+ db "@"
+
+Route3AfterBattleText3:
+ TX_FAR _Route3AfterBattleText3
+ db "@"
+
+Route3Text5:
+ TX_ASM
+ ld hl, Route3TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText4:
+ TX_FAR _Route3BattleText4
+ db "@"
+
+Route3EndBattleText4:
+ TX_FAR _Route3EndBattleText4
+ db "@"
+
+Route3AfterBattleText4:
+ TX_FAR _Route3AfterBattleText4
+ db "@"
+
+Route3Text6:
+ TX_ASM
+ ld hl, Route3TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText5:
+ TX_FAR _Route3BattleText5
+ db "@"
+
+Route3EndBattleText5:
+ TX_FAR _Route3EndBattleText5
+ db "@"
+
+Route3AfterBattleText5:
+ TX_FAR _Route3AfterBattleText5
+ db "@"
+
+Route3Text7:
+ TX_ASM
+ ld hl, Route3TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText6:
+ TX_FAR _Route3BattleText6
+ db "@"
+
+Route3EndBattleText6:
+ TX_FAR _Route3EndBattleText6
+ db "@"
+
+Route3AfterBattleText6:
+ TX_FAR _Route3AfterBattleText6
+ db "@"
+
+Route3Text8:
+ TX_ASM
+ ld hl, Route3TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText7:
+ TX_FAR _Route3BattleText7
+ db "@"
+
+Route3EndBattleText7:
+ TX_FAR _Route3EndBattleText7
+ db "@"
+
+Route3AfterBattleText7:
+ TX_FAR _Route3AfterBattleText7
+ db "@"
+
+Route3Text9:
+ TX_ASM
+ ld hl, Route3TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route3BattleText8:
+ TX_FAR _Route3BattleText8
+ db "@"
+
+Route3EndBattleText8:
+ TX_FAR _Route3EndBattleText8
+ db "@"
+
+Route3AfterBattleText8:
+ TX_FAR _Route3AfterBattleText8
+ db "@"
+
+Route3Text10:
+ TX_FAR _Route3Text10
+ db "@"
diff --git a/scripts/Route4.asm b/scripts/Route4.asm
new file mode 100755
index 00000000..9b04a47a
--- /dev/null
+++ b/scripts/Route4.asm
@@ -0,0 +1,62 @@
+Route4_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route4TrainerHeader0
+ ld de, Route4_ScriptPointers
+ ld a, [wRoute4CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute4CurScript], a
+ ret
+
+Route4_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route4_TextPointers:
+ dw Route4Text1
+ dw Route4Text2
+ dw PickUpItemText
+ dw PokeCenterSignText
+ dw Route4Text5
+ dw Route4Text6
+
+Route4TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_4_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_4_TRAINER_0
+ dw Route4BattleText1 ; TextBeforeBattle
+ dw Route4AfterBattleText1 ; TextAfterBattle
+ dw Route4EndBattleText1 ; TextEndBattle
+ dw Route4EndBattleText1 ; TextEndBattle
+
+ db $ff
+
+Route4Text1:
+ TX_FAR _Route4Text1
+ db "@"
+
+Route4Text2:
+ TX_ASM
+ ld hl, Route4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route4BattleText1:
+ TX_FAR _Route4BattleText1
+ db "@"
+
+Route4EndBattleText1:
+ TX_FAR _Route4EndBattleText1
+ db "@"
+
+Route4AfterBattleText1:
+ TX_FAR _Route4AfterBattleText1
+ db "@"
+
+Route4Text5:
+ TX_FAR _Route4Text5
+ db "@"
+
+Route4Text6:
+ TX_FAR _Route4Text6
+ db "@"
diff --git a/scripts/Route5.asm b/scripts/Route5.asm
new file mode 100755
index 00000000..1b2bd242
--- /dev/null
+++ b/scripts/Route5.asm
@@ -0,0 +1,9 @@
+Route5_Script:
+ jp EnableAutoTextBoxDrawing
+
+Route5_TextPointers:
+ dw Route5Text1
+
+Route5Text1:
+ TX_FAR _Route5Text1
+ db "@"
diff --git a/scripts/Route5Gate.asm b/scripts/Route5Gate.asm
new file mode 100755
index 00000000..bc763dfd
--- /dev/null
+++ b/scripts/Route5Gate.asm
@@ -0,0 +1,117 @@
+Route5Gate_Script:
+ call EnableAutoTextBoxDrawing
+ ld a, [wRoute5GateCurScript]
+ ld hl, Route5Gate_ScriptPointers
+ jp CallFunctionInTable
+
+Route5Gate_ScriptPointers:
+ dw Route5GateScript0
+ dw Route5GateScript1
+
+Route5GateScript_1df43:
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ jp StartSimulatingJoypadStates
+
+Route5GateScript0:
+ ld a, [wd728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1df8f
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ xor a
+ ld [hJoyHeld], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1df82
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Route5GateScript_1df43
+ ld a, $1
+ ld [wRoute5GateCurScript], a
+ ret
+.asm_1df82
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wd728
+ set 6, [hl]
+ ret
+
+CoordsData_1df8f:
+ db 3,3
+ db 3,4
+ db $ff
+
+Route5GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute5GateCurScript], a
+ ret
+
+Route5Gate_TextPointers:
+ dw Route5GateText1
+ dw Route5GateText2
+ dw Route5GateText3
+
+Route8GateText1:
+Route7GateText1:
+Route6GateText1:
+Route5GateText1:
+ TX_ASM
+ ld a, [wd728]
+ bit 6, a
+ jr nz, .asm_88856
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_768a2
+ ld hl, Route5GateText2
+ call PrintText
+ call Route5GateScript_1df43
+ ld a, $1
+ ld [wRoute5GateCurScript], a
+ jp TextScriptEnd
+.asm_768a2
+ ld hl, Route5GateText3
+ call PrintText
+ ld hl, wd728
+ set 6, [hl]
+ jp TextScriptEnd
+.asm_88856
+ ld hl, SaffronGateText_1dff6
+ call PrintText
+ jp TextScriptEnd
+
+Route8GateText2:
+Route7GateText2:
+Route6GateText2:
+Route5GateText2:
+ TX_FAR _SaffronGateText_1dfe7
+ db "@"
+
+Route8GateText3:
+Route7GateText3:
+Route6GateText3:
+Route5GateText3:
+ TX_FAR _SaffronGateText_8aaa9
+ TX_SFX_KEY_ITEM
+ TX_FAR _SaffronGateText_1dff1
+ db "@"
+
+SaffronGateText_1dff6:
+ TX_FAR _SaffronGateText_1dff6
+ db "@"
+
+
diff --git a/scripts/Route6.asm b/scripts/Route6.asm
new file mode 100755
index 00000000..6ee3f317
--- /dev/null
+++ b/scripts/Route6.asm
@@ -0,0 +1,190 @@
+Route6_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route6TrainerHeader0
+ ld de, Route6_ScriptPointers
+ ld a, [wRoute6CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute6CurScript], a
+ ret
+
+Route6_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route6_TextPointers:
+ dw Route6Text1
+ dw Route6Text2
+ dw Route6Text3
+ dw Route6Text4
+ dw Route6Text5
+ dw Route6Text6
+ dw Route6Text7
+
+Route6TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_0
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_0
+ dw Route6BattleText1 ; TextBeforeBattle
+ dw Route6AfterBattleText1 ; TextAfterBattle
+ dw Route6EndBattleText1 ; TextEndBattle
+ dw Route6EndBattleText1 ; TextEndBattle
+
+Route6TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_1
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_1
+ dw Route6BattleText2 ; TextBeforeBattle
+ dw Route6AfterBattleText2 ; TextAfterBattle
+ dw Route6EndBattleText2 ; TextEndBattle
+ dw Route6EndBattleText2 ; TextEndBattle
+
+Route6TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_2
+ dw Route6BattleText3 ; TextBeforeBattle
+ dw Route6AfterBattleText3 ; TextAfterBattle
+ dw Route6EndBattleText3 ; TextEndBattle
+ dw Route6EndBattleText3 ; TextEndBattle
+
+Route6TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_3
+ dw Route6BattleText4 ; TextBeforeBattle
+ dw Route6AfterBattleText4 ; TextAfterBattle
+ dw Route6EndBattleText4 ; TextEndBattle
+ dw Route6EndBattleText4 ; TextEndBattle
+
+Route6TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_4
+ dw Route6BattleText5 ; TextBeforeBattle
+ dw Route6AfterBattleText5 ; TextAfterBattle
+ dw Route6EndBattleText5 ; TextEndBattle
+ dw Route6EndBattleText5 ; TextEndBattle
+
+Route6TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_5
+ dw Route6BattleText6 ; TextBeforeBattle
+ dw Route6AfterBattleText6 ; TextAfterBattle
+ dw Route6EndBattleText6 ; TextEndBattle
+ dw Route6EndBattleText6 ; TextEndBattle
+
+ db $ff
+
+Route6Text1:
+ TX_ASM
+ ld hl, Route6TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText1:
+ TX_FAR _Route6BattleText1
+ db "@"
+
+Route6EndBattleText1:
+ TX_FAR _Route6EndBattleText1
+ db "@"
+
+Route6AfterBattleText1:
+ TX_FAR _Route6AfterBattleText1
+ db "@"
+
+Route6Text2:
+ TX_ASM
+ ld hl, Route6TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText2:
+ TX_FAR _Route6BattleText2
+ db "@"
+
+Route6EndBattleText2:
+ TX_FAR _Route6EndBattleText2
+ db "@"
+
+Route6AfterBattleText2:
+ TX_FAR _Route6AfterBattleText2
+ db "@"
+
+Route6Text3:
+ TX_ASM
+ ld hl, Route6TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText3:
+ TX_FAR _Route6BattleText3
+ db "@"
+
+Route6EndBattleText3:
+ TX_FAR _Route6EndBattleText3
+ db "@"
+
+Route6AfterBattleText3:
+ TX_FAR _Route6AfterBattleText3
+ db "@"
+
+Route6Text4:
+ TX_ASM
+ ld hl, Route6TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText4:
+ TX_FAR _Route6BattleText4
+ db "@"
+
+Route6EndBattleText4:
+ TX_FAR _Route6EndBattleText4
+ db "@"
+
+Route6AfterBattleText4:
+ TX_FAR _Route6AfterBattleText4
+ db "@"
+
+Route6Text5:
+ TX_ASM
+ ld hl, Route6TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText5:
+ TX_FAR _Route6BattleText5
+ db "@"
+
+Route6EndBattleText5:
+ TX_FAR _Route6EndBattleText5
+ db "@"
+
+Route6AfterBattleText5:
+ TX_FAR _Route6AfterBattleText5
+ db "@"
+
+Route6Text6:
+ TX_ASM
+ ld hl, Route6TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route6BattleText6:
+ TX_FAR _Route6BattleText6
+ db "@"
+
+Route6EndBattleText6:
+ TX_FAR _Route6EndBattleText6
+ db "@"
+
+Route6AfterBattleText6:
+ TX_FAR _Route6AfterBattleText6
+ db "@"
+
+Route6Text7:
+ TX_FAR _Route6Text7
+ db "@"
diff --git a/scripts/Route6Gate.asm b/scripts/Route6Gate.asm
new file mode 100755
index 00000000..348f61ac
--- /dev/null
+++ b/scripts/Route6Gate.asm
@@ -0,0 +1,70 @@
+Route6Gate_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route6Gate_ScriptPointers
+ ld a, [wRoute6GateCurScript]
+ call CallFunctionInTable
+ ret
+
+Route6Gate_ScriptPointers:
+ dw Route6GateScript0
+ dw Route6GateScript1
+
+Route6GateScript0:
+ ld a, [wd728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1e08c
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, PLAYER_DIR_RIGHT
+ ld [wPlayerMovingDirection], a
+ xor a
+ ld [hJoyHeld], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1e080
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Route6GateScript_1e0a1
+ ld a, $1
+ ld [wRoute6GateCurScript], a
+ ret
+.asm_1e080
+ ld hl, wd728
+ set 6, [hl]
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+CoordsData_1e08c:
+ db $02,$03
+ db $02,$04,$FF
+
+Route6GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute6GateCurScript], a
+ ret
+
+Route6GateScript_1e0a1:
+ ld hl, wd730
+ set 7, [hl]
+ ld a, $80
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ xor a
+ ld [wSpriteStateData2 + $06], a
+ ld [wOverrideSimulatedJoypadStatesMask], a
+ ret
+
+Route6Gate_TextPointers:
+ dw Route6GateText1
+ dw Route6GateText2
+ dw Route6GateText3
diff --git a/scripts/Route7.asm b/scripts/Route7.asm
new file mode 100755
index 00000000..27d07a7a
--- /dev/null
+++ b/scripts/Route7.asm
@@ -0,0 +1,10 @@
+Route7_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+Route7_TextPointers:
+ dw Route7Text1
+
+Route7Text1:
+ TX_FAR _Route7Text1
+ db "@"
diff --git a/scripts/Route7Gate.asm b/scripts/Route7Gate.asm
new file mode 100755
index 00000000..724172c5
--- /dev/null
+++ b/scripts/Route7Gate.asm
@@ -0,0 +1,73 @@
+Route7Gate_Script:
+ call EnableAutoTextBoxDrawing
+ ld a, [wRoute7GateCurScript]
+ ld hl, Route7Gate_ScriptPointers
+ call CallFunctionInTable
+ ret
+
+Route7Gate_ScriptPointers:
+ dw Route7GateScript0
+ dw Route7GateScript1
+
+Route7GateScript_1e111:
+ ld hl, wd730
+ set 7, [hl]
+ ld a, $20
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ xor a
+ ld [wSpriteStateData2 + $06], a
+ ld [wOverrideSimulatedJoypadStatesMask], a
+ ret
+
+Route7GateScript0:
+ ld a, [wd728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1e167
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ xor a
+ ld [hJoyHeld], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1e15a
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Route7GateScript_1e111
+ ld a, $1
+ ld [wRoute7GateCurScript], a
+ ret
+.asm_1e15a
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wd728
+ set 6, [hl]
+ ret
+
+CoordsData_1e167:
+ db 3,3
+ db 4,3
+ db $ff
+
+Route7GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute7GateCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+Route7Gate_TextPointers:
+ dw Route7GateText1
+ dw Route7GateText2
+ dw Route7GateText3
diff --git a/scripts/Route8.asm b/scripts/Route8.asm
new file mode 100755
index 00000000..f3388505
--- /dev/null
+++ b/scripts/Route8.asm
@@ -0,0 +1,274 @@
+Route8_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route8TrainerHeader0
+ ld de, Route8_ScriptPointers
+ ld a, [wRoute8CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute8CurScript], a
+ ret
+
+Route8_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route8_TextPointers:
+ dw Route8Text1
+ dw Route8Text2
+ dw Route8Text3
+ dw Route8Text4
+ dw Route8Text5
+ dw Route8Text6
+ dw Route8Text7
+ dw Route8Text8
+ dw Route8Text9
+ dw Route8Text10
+
+Route8TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_0
+ dw Route8BattleText1 ; TextBeforeBattle
+ dw Route8AfterBattleText1 ; TextAfterBattle
+ dw Route8EndBattleText1 ; TextEndBattle
+ dw Route8EndBattleText1 ; TextEndBattle
+
+Route8TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_1
+ dw Route8BattleText2 ; TextBeforeBattle
+ dw Route8AfterBattleText2 ; TextAfterBattle
+ dw Route8EndBattleText2 ; TextEndBattle
+ dw Route8EndBattleText2 ; TextEndBattle
+
+Route8TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_2
+ dw Route8BattleText3 ; TextBeforeBattle
+ dw Route8AfterBattleText3 ; TextAfterBattle
+ dw Route8EndBattleText3 ; TextEndBattle
+ dw Route8EndBattleText3 ; TextEndBattle
+
+Route8TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_3
+ dw Route8BattleText4 ; TextBeforeBattle
+ dw Route8AfterBattleText4 ; TextAfterBattle
+ dw Route8EndBattleText4 ; TextEndBattle
+ dw Route8EndBattleText4 ; TextEndBattle
+
+Route8TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_4
+ dw Route8BattleText5 ; TextBeforeBattle
+ dw Route8AfterBattleText5 ; TextAfterBattle
+ dw Route8EndBattleText5 ; TextEndBattle
+ dw Route8EndBattleText5 ; TextEndBattle
+
+Route8TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_5
+ dw Route8BattleText6 ; TextBeforeBattle
+ dw Route8AfterBattleText6 ; TextAfterBattle
+ dw Route8EndBattleText6 ; TextEndBattle
+ dw Route8EndBattleText6 ; TextEndBattle
+
+Route8TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_6
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_6
+ dw Route8BattleText7 ; TextBeforeBattle
+ dw Route8AfterBattleText7 ; TextAfterBattle
+ dw Route8EndBattleText7 ; TextEndBattle
+ dw Route8EndBattleText7 ; TextEndBattle
+
+Route8TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_7, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_7, 1
+ dw Route8BattleText8 ; TextBeforeBattle
+ dw Route8AfterBattleText8 ; TextAfterBattle
+ dw Route8EndBattleText8 ; TextEndBattle
+ dw Route8EndBattleText8 ; TextEndBattle
+
+Route8TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_8, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_8, 1
+ dw Route8BattleText9 ; TextBeforeBattle
+ dw Route8AfterBattleText9 ; TextAfterBattle
+ dw Route8EndBattleText9 ; TextEndBattle
+ dw Route8EndBattleText9 ; TextEndBattle
+
+ db $ff
+
+Route8Text1:
+ TX_ASM
+ ld hl, Route8TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText1:
+ TX_FAR _Route8BattleText1
+ db "@"
+
+Route8EndBattleText1:
+ TX_FAR _Route8EndBattleText1
+ db "@"
+
+Route8AfterBattleText1:
+ TX_FAR _Route8AfterBattleText1
+ db "@"
+
+Route8Text2:
+ TX_ASM
+ ld hl, Route8TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText2:
+ TX_FAR _Route8BattleText2
+ db "@"
+
+Route8EndBattleText2:
+ TX_FAR _Route8EndBattleText2
+ db "@"
+
+Route8AfterBattleText2:
+ TX_FAR _Route8AfterBattleText2
+ db "@"
+
+Route8Text3:
+ TX_ASM
+ ld hl, Route8TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText3:
+ TX_FAR _Route8BattleText3
+ db "@"
+
+Route8EndBattleText3:
+ TX_FAR _Route8EndBattleText3
+ db "@"
+
+Route8AfterBattleText3:
+ TX_FAR _Route8AfterBattleText3
+ db "@"
+
+Route8Text4:
+ TX_ASM
+ ld hl, Route8TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText4:
+ TX_FAR _Route8BattleText4
+ db "@"
+
+Route8EndBattleText4:
+ TX_FAR _Route8EndBattleText4
+ db "@"
+
+Route8AfterBattleText4:
+ TX_FAR _Route8AfterBattleText4
+ db "@"
+
+Route8Text5:
+ TX_ASM
+ ld hl, Route8TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText5:
+ TX_FAR _Route8BattleText5
+ db "@"
+
+Route8EndBattleText5:
+ TX_FAR _Route8EndBattleText5
+ db "@"
+
+Route8AfterBattleText5:
+ TX_FAR _Route8AfterBattleText5
+ db "@"
+
+Route8Text6:
+ TX_ASM
+ ld hl, Route8TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText6:
+ TX_FAR _Route8BattleText6
+ db "@"
+
+Route8EndBattleText6:
+ TX_FAR _Route8EndBattleText6
+ db "@"
+
+Route8AfterBattleText6:
+ TX_FAR _Route8AfterBattleText6
+ db "@"
+
+Route8Text7:
+ TX_ASM
+ ld hl, Route8TrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText7:
+ TX_FAR _Route8BattleText7
+ db "@"
+
+Route8EndBattleText7:
+ TX_FAR _Route8EndBattleText7
+ db "@"
+
+Route8AfterBattleText7:
+ TX_FAR _Route8AfterBattleText7
+ db "@"
+
+Route8Text8:
+ TX_ASM
+ ld hl, Route8TrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText8:
+ TX_FAR _Route8BattleText8
+ db "@"
+
+Route8EndBattleText8:
+ TX_FAR _Route8EndBattleText8
+ db "@"
+
+Route8AfterBattleText8:
+ TX_FAR _Route8AfterBattleText8
+ db "@"
+
+Route8Text9:
+ TX_ASM
+ ld hl, Route8TrainerHeader8
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route8BattleText9:
+ TX_FAR _Route8BattleText9
+ db "@"
+
+Route8EndBattleText9:
+ TX_FAR _Route8EndBattleText9
+ db "@"
+
+Route8AfterBattleText9:
+ TX_FAR _Route8AfterBattleText9
+ db "@"
+
+Route8Text10:
+ TX_FAR _Route8Text10
+ db "@"
diff --git a/scripts/Route8Gate.asm b/scripts/Route8Gate.asm
new file mode 100755
index 00000000..49f605a2
--- /dev/null
+++ b/scripts/Route8Gate.asm
@@ -0,0 +1,70 @@
+Route8Gate_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route8Gate_ScriptPointers
+ ld a, [wRoute8GateCurScript]
+ jp CallFunctionInTable
+
+Route8Gate_ScriptPointers:
+ dw Route8GateScript0
+ dw Route8GateScript1
+
+Route8GateScript_1e1d7:
+ ld hl, wd730
+ set 7, [hl]
+ ld a, $10
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ xor a
+ ld [wSpriteStateData2 + $06], a
+ ld [wOverrideSimulatedJoypadStatesMask], a
+ ret
+
+Route8GateScript0:
+ ld a, [wd728]
+ bit 6, a
+ ret nz
+ ld hl, CoordsData_1e22c
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, PLAYER_DIR_UP
+ ld [wPlayerMovingDirection], a
+ xor a
+ ld [hJoyHeld], a
+ callba RemoveGuardDrink
+ ld a, [$ffdb]
+ and a
+ jr nz, .asm_1e220
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Route8GateScript_1e1d7
+ ld a, $1
+ ld [wRoute8GateCurScript], a
+ ret
+.asm_1e220
+ ld hl, wd728
+ set 6, [hl]
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ jp DisplayTextID
+
+CoordsData_1e22c:
+ db 3,2
+ db 4,2
+ db $ff
+
+Route8GateScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld [wRoute8GateCurScript], a
+ ret
+
+Route8Gate_TextPointers:
+ dw Route8GateText1
+ dw Route8GateText2
+ dw Route8GateText3
diff --git a/scripts/Route9.asm b/scripts/Route9.asm
new file mode 100755
index 00000000..8b346ee8
--- /dev/null
+++ b/scripts/Route9.asm
@@ -0,0 +1,268 @@
+Route9_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, Route9TrainerHeader0
+ ld de, Route9_ScriptPointers
+ ld a, [wRoute9CurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wRoute9CurScript], a
+ ret
+
+Route9_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+Route9_TextPointers:
+ dw Route9Text1
+ dw Route9TextAJ
+ dw Route9Text3
+ dw Route9Text4
+ dw Route9Text5
+ dw Route9Text6
+ dw Route9Text7
+ dw Route9Text8
+ dw Route9Text9
+ dw PickUpItemText
+ dw Route9Text11
+
+Route9TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_0
+ dw Route9BattleText1 ; TextBeforeBattle
+ dw Route9AfterBattleText1 ; TextAfterBattle
+ dw Route9EndBattleText1 ; TextEndBattle
+ dw Route9EndBattleText1 ; TextEndBattle
+
+Route9TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_1
+ dw Route9BattleTextAJ ; TextBeforeBattle
+ dw Route9AfterBattleTextAJ ; TextAfterBattle
+ dw Route9EndBattleTextAJ ; TextEndBattle
+ dw Route9EndBattleTextAJ ; TextEndBattle
+
+Route9TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_2
+ dw Route9BattleText3 ; TextBeforeBattle
+ dw Route9AfterBattleText3 ; TextAfterBattle
+ dw Route9EndBattleText3 ; TextEndBattle
+ dw Route9EndBattleText3 ; TextEndBattle
+
+Route9TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_3
+ dw Route9BattleText4 ; TextBeforeBattle
+ dw Route9AfterBattleText4 ; TextAfterBattle
+ dw Route9EndBattleText4 ; TextEndBattle
+ dw Route9EndBattleText4 ; TextEndBattle
+
+Route9TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_4
+ dw Route9BattleText5 ; TextBeforeBattle
+ dw Route9AfterBattleText5 ; TextAfterBattle
+ dw Route9EndBattleText5 ; TextEndBattle
+ dw Route9EndBattleText5 ; TextEndBattle
+
+Route9TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_5
+ dw Route9BattleText6 ; TextBeforeBattle
+ dw Route9AfterBattleText6 ; TextAfterBattle
+ dw Route9EndBattleText6 ; TextEndBattle
+ dw Route9EndBattleText6 ; TextEndBattle
+
+Route9TrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_6
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_6
+ dw Route9BattleText7 ; TextBeforeBattle
+ dw Route9AfterBattleText7 ; TextAfterBattle
+ dw Route9EndBattleText7 ; TextEndBattle
+ dw Route9EndBattleText7 ; TextEndBattle
+
+Route9TrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_7, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_7, 1
+ dw Route9BattleText8 ; TextBeforeBattle
+ dw Route9AfterBattleText8 ; TextAfterBattle
+ dw Route9EndBattleText8 ; TextEndBattle
+ dw Route9EndBattleText8 ; TextEndBattle
+
+Route9TrainerHeader8:
+ dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_8, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_8, 1
+ dw Route9BattleText9 ; TextBeforeBattle
+ dw Route9AfterBattleText9 ; TextAfterBattle
+ dw Route9EndBattleText9 ; TextEndBattle
+ dw Route9EndBattleText9 ; TextEndBattle
+
+ db $ff
+
+Route9Text1:
+ TX_ASM
+ ld hl, Route9TrainerHeader0
+ jr Route9TalkToTrainer
+
+Route9TextAJ:
+ TX_ASM
+ ld hl, Route9TrainerHeader1
+ jr Route9TalkToTrainer
+
+Route9Text3:
+ TX_ASM
+ ld hl, Route9TrainerHeader2
+ jr Route9TalkToTrainer
+
+Route9Text4:
+ TX_ASM
+ ld hl, Route9TrainerHeader3
+ jr Route9TalkToTrainer
+
+Route9Text5:
+ TX_ASM
+ ld hl, Route9TrainerHeader4
+ jr Route9TalkToTrainer
+
+Route9Text6:
+ TX_ASM
+ ld hl, Route9TrainerHeader5
+ jr Route9TalkToTrainer
+
+Route9Text7:
+ TX_ASM
+ ld hl, Route9TrainerHeader6
+ jr Route9TalkToTrainer
+
+Route9Text8:
+ TX_ASM
+ ld hl, Route9TrainerHeader7
+ jr Route9TalkToTrainer
+
+Route9Text9:
+ TX_ASM
+ ld hl, Route9TrainerHeader8
+Route9TalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+Route9BattleText1:
+ TX_FAR _Route9BattleText1
+ db "@"
+
+Route9EndBattleText1:
+ TX_FAR _Route9EndBattleText1
+ db "@"
+
+Route9AfterBattleText1:
+ TX_FAR _Route9AfterBattleText1
+ db "@"
+
+Route9BattleTextAJ:
+ TX_FAR _Route9BattleTextAJ
+ db "@"
+
+Route9EndBattleTextAJ:
+ TX_FAR _Route9EndBattleTextAJ
+ db "@"
+
+Route9AfterBattleTextAJ:
+ TX_FAR _Route9AfterBattleTextAJ
+ db "@"
+
+Route9BattleText3:
+ TX_FAR _Route9BattleText3
+ db "@"
+
+Route9EndBattleText3:
+ TX_FAR _Route9EndBattleText3
+ db "@"
+
+Route9AfterBattleText3:
+ TX_FAR _Route9AfterBattleText3
+ db "@"
+
+Route9BattleText4:
+ TX_FAR _Route9BattleText4
+ db "@"
+
+Route9EndBattleText4:
+ TX_FAR _Route9EndBattleText4
+ db "@"
+
+Route9AfterBattleText4:
+ TX_FAR _Route9AfterBattleText4
+ db "@"
+
+Route9BattleText5:
+ TX_FAR _Route9BattleText5
+ db "@"
+
+Route9EndBattleText5:
+ TX_FAR _Route9EndBattleText5
+ db "@"
+
+Route9AfterBattleText5:
+ TX_FAR _Route9AfterBattleText5
+ db "@"
+
+Route9BattleText6:
+ TX_FAR _Route9BattleText6
+ db "@"
+
+Route9EndBattleText6:
+ TX_FAR _Route9EndBattleText6
+ db "@"
+
+Route9AfterBattleText6:
+ TX_FAR _Route9AfterBattleText6
+ db "@"
+
+Route9BattleText7:
+ TX_FAR _Route9BattleText7
+ db "@"
+
+Route9EndBattleText7:
+ TX_FAR _Route9EndBattleText7
+ db "@"
+
+Route9AfterBattleText7:
+ TX_FAR _Route9AfterBattleText7
+ db "@"
+
+Route9BattleText8:
+ TX_FAR _Route9BattleText8
+ db "@"
+
+Route9EndBattleText8:
+ TX_FAR _Route9EndBattleText8
+ db "@"
+
+Route9AfterBattleText8:
+ TX_FAR _Route9AfterBattleText8
+ db "@"
+
+Route9BattleText9:
+ TX_FAR _Route9BattleText9
+ db "@"
+
+Route9EndBattleText9:
+ TX_FAR _Route9EndBattleText9
+ db "@"
+
+Route9AfterBattleText9:
+ TX_FAR _Route9AfterBattleText9
+ db "@"
+
+Route9Text11:
+ TX_FAR _Route9Text11
+ db "@"
diff --git a/scripts/SSAnne1F.asm b/scripts/SSAnne1F.asm
new file mode 100755
index 00000000..5cace6ee
--- /dev/null
+++ b/scripts/SSAnne1F.asm
@@ -0,0 +1,15 @@
+SSAnne1F_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+SSAnne1F_TextPointers:
+ dw SSAnne1Text1
+ dw SSAnne1Text2
+
+SSAnne1Text1:
+ TX_FAR _SSAnne1Text1
+ db "@"
+
+SSAnne1Text2:
+ TX_FAR _SSAnne1Text2
+ db "@"
diff --git a/scripts/SSAnne1FRooms.asm b/scripts/SSAnne1FRooms.asm
new file mode 100755
index 00000000..2371f286
--- /dev/null
+++ b/scripts/SSAnne1FRooms.asm
@@ -0,0 +1,163 @@
+SSAnne1FRooms_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne8TrainerHeader0
+ ld de, SSAnne1FRooms_ScriptPointers
+ ld a, [wSSAnne1FRoomsCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSSAnne1FRoomsCurScript], a
+ ret
+
+SSAnne1FRooms_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SSAnne1FRooms_TextPointers:
+ dw SSAnne8Text1
+ dw SSAnne8Text2
+ dw SSAnne8Text3
+ dw SSAnne8Text4
+ dw SSAnne8Text5
+ dw SSAnne8Text6
+ dw SSAnne8Text7
+ dw SSAnne8Text8
+ dw SSAnne8Text9
+ dw PickUpItemText
+ dw SSAnne8Text11
+
+SSAnne8TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_0
+ dw SSAnne8BattleText1 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText1 ; TextAfterBattle
+ dw SSAnne8EndBattleText1 ; TextEndBattle
+ dw SSAnne8EndBattleText1 ; TextEndBattle
+
+SSAnne8TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_1
+ dw SSAnne8BattleText2 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText2 ; TextAfterBattle
+ dw SSAnne8EndBattleText2 ; TextEndBattle
+ dw SSAnne8EndBattleText2 ; TextEndBattle
+
+SSAnne8TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_2
+ dw SSAnne8BattleText3 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText3 ; TextAfterBattle
+ dw SSAnne8EndBattleText3 ; TextEndBattle
+ dw SSAnne8EndBattleText3 ; TextEndBattle
+
+SSAnne8TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_3
+ dw SSAnne8BattleText4 ; TextBeforeBattle
+ dw SSAnne8AfterBattleText4 ; TextAfterBattle
+ dw SSAnne8EndBattleText4 ; TextEndBattle
+ dw SSAnne8EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+SSAnne8Text1:
+ TX_ASM
+ ld hl, SSAnne8TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text2:
+ TX_ASM
+ ld hl, SSAnne8TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text3:
+ TX_ASM
+ ld hl, SSAnne8TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text4:
+ TX_ASM
+ ld hl, SSAnne8TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne8Text8:
+ TX_FAR _SSAnne8Text8
+ TX_ASM
+ ld a, WIGGLYTUFF
+ call PlayCry
+ jp TextScriptEnd
+
+SSAnne8BattleText1:
+ TX_FAR _SSAnne8BattleText1
+ db "@"
+
+SSAnne8EndBattleText1:
+ TX_FAR _SSAnne8EndBattleText1
+ db "@"
+
+SSAnne8AfterBattleText1:
+ TX_FAR _SSAnne8AfterBattleText1
+ db "@"
+
+SSAnne8BattleText2:
+ TX_FAR _SSAnne8BattleText2
+ db "@"
+
+SSAnne8EndBattleText2:
+ TX_FAR _SSAnne8EndBattleText2
+ db "@"
+
+SSAnne8AfterBattleText2:
+ TX_FAR _SSAnne8AfterBattleText2
+ db "@"
+
+SSAnne8BattleText3:
+ TX_FAR _SSAnne8BattleText3
+ db "@"
+
+SSAnne8EndBattleText3:
+ TX_FAR _SSAnne8EndBattleText3
+ db "@"
+
+SSAnne8AfterBattleText3:
+ TX_FAR _SSAnne8AfterBattleText3
+ db "@"
+
+SSAnne8BattleText4:
+ TX_FAR _SSAnne8BattleText4
+ db "@"
+
+SSAnne8EndBattleText4:
+ TX_FAR _SSAnne8EndBattleText4
+ db "@"
+
+SSAnne8AfterBattleText4:
+ TX_FAR _SSAnne8AfterBattleText4
+ db "@"
+
+SSAnne8Text5:
+ TX_FAR _SSAnne8Text5
+ db "@"
+
+SSAnne8Text6:
+ TX_FAR _SSAnne8Text6
+ db "@"
+
+SSAnne8Text7:
+ TX_FAR _SSAnne8Text7
+ db "@"
+
+SSAnne8Text9:
+ TX_FAR _SSAnne8Text9
+ db "@"
+
+SSAnne8Text11:
+ TX_FAR _SSAnne8Text11
+ db "@"
diff --git a/scripts/SSAnne2F.asm b/scripts/SSAnne2F.asm
new file mode 100755
index 00000000..77b283d2
--- /dev/null
+++ b/scripts/SSAnne2F.asm
@@ -0,0 +1,197 @@
+SSAnne2F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne2F_ScriptPointers
+ ld a, [wSSAnne2FCurScript]
+ jp CallFunctionInTable
+
+SSAnne2Script_613ab:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wSSAnne2FCurScript], a
+ ret
+
+SSAnne2F_ScriptPointers:
+ dw SSAnne2Script0
+ dw SSAnne2Script1
+ dw SSAnne2Script2
+ dw SSAnne2Script3
+ dw SSAnne2Script4
+
+SSAnne2Script4:
+ ret
+
+SSAnne2Script0:
+ ld hl, CoordsData_61411
+ call ArePlayerCoordsInArray
+ ret nc
+ call StopAllMusic
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, [wCoordIndex]
+ ld [$ffdb], a
+ ld a, HS_SS_ANNE_2F_RIVAL
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ call Delay3
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ xor a
+ ld [hJoyHeld], a
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, [$ffdb]
+ cp $2
+ jr nz, .asm_61400
+ ld de, MovementData_6140c
+ jr .asm_61403
+.asm_61400
+ ld de, MovementData_6140d
+.asm_61403
+ call MoveSprite
+ ld a, $1
+ ld [wSSAnne2FCurScript], a
+ ret
+
+MovementData_6140c:
+ db NPC_MOVEMENT_DOWN
+
+MovementData_6140d:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+CoordsData_61411:
+ db $08,$24
+ db $08,$25
+ db $FF
+
+SSAnne2Script_61416:
+ ld a, [wXCoord]
+ cp $25
+ jr nz, .asm_61426
+ ld a, PLAYER_DIR_LEFT
+ ld [wPlayerMovingDirection], a
+ ld a, SPRITE_FACING_RIGHT
+ jr .asm_61427
+.asm_61426
+ xor a ; SPRITE_FACING_DOWN
+.asm_61427
+ ld [hSpriteFacingDirection], a
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ jp SetSpriteFacingDirectionAndDelay
+
+SSAnne2Script1:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ call SSAnne2Script_61416
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $2
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld a, OPP_SONY2
+ ld [wCurOpponent], a
+ ld a, $1
+ ld [wTrainerNo], a
+ call SSAnne2Script_61416
+ ld a, $2
+ ld [wSSAnne2FCurScript], a
+ ret
+
+SSAnne2Script2:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, SSAnne2Script_613ab
+ call SSAnne2Script_61416
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld a, [wXCoord]
+ cp $25
+ jr nz, .asm_61497
+ ld de, MovementData_614b9
+ jr .asm_6149a
+.asm_61497
+ ld de, MovementData_614b7
+.asm_6149a
+ ld a, $2
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld a, $3
+ ld [wSSAnne2FCurScript], a
+ ret
+
+MovementData_614b7:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+
+MovementData_614b9:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+SSAnne2Script3:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, HS_SS_ANNE_2F_RIVAL
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call PlayDefaultMusic
+ ld a, $4
+ ld [wSSAnne2FCurScript], a
+ ret
+
+SSAnne2F_TextPointers:
+ dw SSAnne2Text1
+ dw SSAnne2Text2
+ dw SSAnne2Text3
+
+SSAnne2Text1:
+ TX_FAR _SSAnne2Text1
+ db "@"
+
+SSAnne2Text2:
+ TX_ASM
+ ld hl, SSAnneRivalBeforeBattleText
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SSAnneRivalDefeatedText
+ ld de, SSAnneRivalWonText
+ call SaveEndBattleTextPointers
+ jp TextScriptEnd
+
+SSAnneRivalBeforeBattleText:
+ TX_FAR _SSAnneRivalBeforeBattleText
+ db "@"
+
+SSAnneRivalDefeatedText:
+ TX_FAR _SSAnneRivalDefeatedText
+ db "@"
+
+SSAnneRivalWonText:
+ TX_FAR _SSAnneRivalWonText
+ db "@"
+
+SSAnne2Text3:
+ TX_FAR _SSAnneRivalCaptainText
+ db "@"
diff --git a/scripts/SSAnne2FRooms.asm b/scripts/SSAnne2FRooms.asm
new file mode 100755
index 00000000..fb57cf37
--- /dev/null
+++ b/scripts/SSAnne2FRooms.asm
@@ -0,0 +1,192 @@
+SSAnne2FRooms_Script:
+ call DisableAutoTextBoxDrawing
+ ld hl, SSAnne9TrainerHeader0
+ ld de, SSAnne2FRooms_ScriptPointers
+ ld a, [wSSAnne2FRoomsCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSSAnne2FRoomsCurScript], a
+ ret
+
+SSAnne2FRooms_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SSAnne2FRooms_TextPointers:
+ dw SSAnne9Text1
+ dw SSAnne9Text2
+ dw SSAnne9Text3
+ dw SSAnne9Text4
+ dw SSAnne9Text5
+ dw PickUpItemText
+ dw SSAnne9Text7
+ dw SSAnne9Text8
+ dw PickUpItemText
+ dw SSAnne9Text10
+ dw SSAnne9Text11
+ dw SSAnne9Text12
+ dw SSAnne9Text13
+
+SSAnne9TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_0
+ dw SSAnne9BattleText1 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText1 ; TextAfterBattle
+ dw SSAnne9EndBattleText1 ; TextEndBattle
+ dw SSAnne9EndBattleText1 ; TextEndBattle
+
+SSAnne9TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_1
+ dw SSAnne9BattleText2 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText2 ; TextAfterBattle
+ dw SSAnne9EndBattleText2 ; TextEndBattle
+ dw SSAnne9EndBattleText2 ; TextEndBattle
+
+SSAnne9TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_2
+ dw SSAnne9BattleText3 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText3 ; TextAfterBattle
+ dw SSAnne9EndBattleText3 ; TextEndBattle
+ dw SSAnne9EndBattleText3 ; TextEndBattle
+
+SSAnne9TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_3
+ dw SSAnne9BattleText4 ; TextBeforeBattle
+ dw SSAnne9AfterBattleText4 ; TextAfterBattle
+ dw SSAnne9EndBattleText4 ; TextEndBattle
+ dw SSAnne9EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+SSAnne9Text1:
+ TX_ASM
+ ld hl, SSAnne9TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text2:
+ TX_ASM
+ ld hl, SSAnne9TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text3:
+ TX_ASM
+ ld hl, SSAnne9TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text4:
+ TX_ASM
+ ld hl, SSAnne9TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne9Text5:
+ TX_ASM
+ call SaveScreenTilesToBuffer1
+ ld hl, SSAnne9Text_61bf2
+ call PrintText
+ call LoadScreenTilesFromBuffer1
+ ld a, SNORLAX
+ call DisplayPokedex
+ jp TextScriptEnd
+
+SSAnne9Text_61bf2:
+ TX_FAR _SSAnne9Text_61bf2
+ db "@"
+
+SSAnne9Text7:
+ TX_ASM
+ ld hl, SSAnne9Text_61c01
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c01:
+ TX_FAR _SSAnne9Text_61c01
+ db "@"
+
+SSAnne9Text8:
+ TX_ASM
+ ld hl, SSAnne9Text_61c10
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne9Text_61c10:
+ TX_FAR _SSAnne9Text_61c10
+ db "@"
+
+SSAnne9Text10:
+ TX_ASM
+ callba Func_f2570
+ jp TextScriptEnd
+
+SSAnne9Text11:
+ TX_ASM
+ callba Func_f257c
+ jp TextScriptEnd
+
+SSAnne9Text12:
+ TX_ASM
+ callba Func_f2588
+ jp TextScriptEnd
+
+SSAnne9Text13:
+ TX_ASM
+ callba Func_f2594
+ jp TextScriptEnd
+
+SSAnne9BattleText1:
+ TX_FAR _SSAnne9BattleText1
+ db "@"
+
+SSAnne9EndBattleText1:
+ TX_FAR _SSAnne9EndBattleText1
+ db "@"
+
+SSAnne9AfterBattleText1:
+ TX_FAR _SSAnne9AfterBattleText1
+ db "@"
+
+SSAnne9BattleText2:
+ TX_FAR _SSAnne9BattleText2
+ db "@"
+
+SSAnne9EndBattleText2:
+ TX_FAR _SSAnne9EndBattleText2
+ db "@"
+
+SSAnne9AfterBattleText2:
+ TX_FAR _SSAnne9AfterBattleText2
+ db "@"
+
+SSAnne9BattleText3:
+ TX_FAR _SSAnne9BattleText3
+ db "@"
+
+SSAnne9EndBattleText3:
+ TX_FAR _SSAnne9EndBattleText3
+ db "@"
+
+SSAnne9AfterBattleText3:
+ TX_FAR _SSAnne9AfterBattleText3
+ db "@"
+
+SSAnne9BattleText4:
+ TX_FAR _SSAnne9BattleText4
+ db "@"
+
+SSAnne9EndBattleText4:
+ TX_FAR _SSAnne9EndBattleText4
+ db "@"
+
+SSAnne9AfterBattleText4:
+ TX_FAR _SSAnne9AfterBattleText4
+ db "@"
diff --git a/scripts/ssanne9_2.asm b/scripts/SSAnne2FRooms_2.asm
index f856221c..f856221c 100755
--- a/scripts/ssanne9_2.asm
+++ b/scripts/SSAnne2FRooms_2.asm
diff --git a/scripts/SSAnne3F.asm b/scripts/SSAnne3F.asm
new file mode 100755
index 00000000..5da0e0c7
--- /dev/null
+++ b/scripts/SSAnne3F.asm
@@ -0,0 +1,9 @@
+SSAnne3F_Script:
+ jp EnableAutoTextBoxDrawing
+
+SSAnne3F_TextPointers:
+ dw SSAnne3Text1
+
+SSAnne3Text1:
+ TX_FAR _SSAnne3Text1
+ db "@"
diff --git a/scripts/SSAnneB1F.asm b/scripts/SSAnneB1F.asm
new file mode 100755
index 00000000..25df076f
--- /dev/null
+++ b/scripts/SSAnneB1F.asm
@@ -0,0 +1,5 @@
+SSAnneB1F_Script:
+ jp EnableAutoTextBoxDrawing
+
+SSAnneB1F_TextPointers:
+ db "@"
diff --git a/scripts/SSAnneB1FRooms.asm b/scripts/SSAnneB1FRooms.asm
new file mode 100755
index 00000000..3777852c
--- /dev/null
+++ b/scripts/SSAnneB1FRooms.asm
@@ -0,0 +1,201 @@
+SSAnneB1FRooms_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne10TrainerHeader0
+ ld de, SSAnneB1FRooms_ScriptPointers
+ ld a, [wSSAnneB1FRoomsCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSSAnneB1FRoomsCurScript], a
+ ret
+
+SSAnneB1FRooms_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SSAnneB1FRooms_TextPointers:
+ dw SSAnne10Text1
+ dw SSAnne10Text2
+ dw SSAnne10Text3
+ dw SSAnne10Text4
+ dw SSAnne10Text5
+ dw SSAnne10Text6
+ dw SSAnne10Text7
+ dw SSAnne10Text8
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+SSAnne10TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_0
+ dw SSAnne10BattleText1 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText1 ; TextAfterBattle
+ dw SSAnne10EndBattleText1 ; TextEndBattle
+ dw SSAnne10EndBattleText1 ; TextEndBattle
+
+SSAnne10TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_1
+ dw SSAnne10BattleText2 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText2 ; TextAfterBattle
+ dw SSAnne10EndBattleText2 ; TextEndBattle
+ dw SSAnne10EndBattleText2 ; TextEndBattle
+
+SSAnne10TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_2
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_2
+ dw SSAnne10BattleText3 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText3 ; TextAfterBattle
+ dw SSAnne10EndBattleText3 ; TextEndBattle
+ dw SSAnne10EndBattleText3 ; TextEndBattle
+
+SSAnne10TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_3
+ dw SSAnne10BattleText4 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText4 ; TextAfterBattle
+ dw SSAnne10EndBattleText4 ; TextEndBattle
+ dw SSAnne10EndBattleText4 ; TextEndBattle
+
+SSAnne10TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_4
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_4
+ dw SSAnne10BattleText5 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText5 ; TextAfterBattle
+ dw SSAnne10EndBattleText5 ; TextEndBattle
+ dw SSAnne10EndBattleText5 ; TextEndBattle
+
+SSAnne10TrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_5
+ dw SSAnne10BattleText6 ; TextBeforeBattle
+ dw SSAnne10AfterBattleText6 ; TextAfterBattle
+ dw SSAnne10EndBattleText6 ; TextEndBattle
+ dw SSAnne10EndBattleText6 ; TextEndBattle
+
+ db $ff
+
+SSAnne10Text1:
+ TX_ASM
+ ld hl, SSAnne10TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text2:
+ TX_ASM
+ ld hl, SSAnne10TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text3:
+ TX_ASM
+ ld hl, SSAnne10TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text4:
+ TX_ASM
+ ld hl, SSAnne10TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text5:
+ TX_ASM
+ ld hl, SSAnne10TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text6:
+ TX_ASM
+ ld hl, SSAnne10TrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne10Text8:
+ TX_FAR _SSAnne10Text8
+ TX_ASM
+ ld a, MACHOKE
+ call PlayCry
+ jp TextScriptEnd
+
+SSAnne10BattleText1:
+ TX_FAR _SSAnne10BattleText1
+ db "@"
+
+SSAnne10EndBattleText1:
+ TX_FAR _SSAnne10EndBattleText1
+ db "@"
+
+SSAnne10AfterBattleText1:
+ TX_FAR _SSAnne10AfterBattleText1
+ db "@"
+
+SSAnne10BattleText2:
+ TX_FAR _SSAnne10BattleText2
+ db "@"
+
+SSAnne10EndBattleText2:
+ TX_FAR _SSAnne10EndBattleText2
+ db "@"
+
+SSAnne10AfterBattleText2:
+ TX_FAR _SSAnne10AfterBattleText2
+ db "@"
+
+SSAnne10BattleText3:
+ TX_FAR _SSAnne10BattleText3
+ db "@"
+
+SSAnne10EndBattleText3:
+ TX_FAR _SSAnne10EndBattleText3
+ db "@"
+
+SSAnne10AfterBattleText3:
+ TX_FAR _SSAnne10AfterBattleText3
+ db "@"
+
+SSAnne10BattleText4:
+ TX_FAR _SSAnne10BattleText4
+ db "@"
+
+SSAnne10EndBattleText4:
+ TX_FAR _SSAnne10EndBattleText4
+ db "@"
+
+SSAnne10AfterBattleText4:
+ TX_FAR _SSAnne10AfterBattleText4
+ db "@"
+
+SSAnne10BattleText5:
+ TX_FAR _SSAnne10BattleText5
+ db "@"
+
+SSAnne10EndBattleText5:
+ TX_FAR _SSAnne10EndBattleText5
+ db "@"
+
+SSAnne10AfterBattleText5:
+ TX_FAR _SSAnne10AfterBattleText5
+ db "@"
+
+SSAnne10BattleText6:
+ TX_FAR _SSAnne10BattleText6
+ db "@"
+
+SSAnne10EndBattleText6:
+ TX_FAR _SSAnne10EndBattleText6
+ db "@"
+
+SSAnne10AfterBattleText6:
+ TX_FAR _SSAnne10AfterBattleText6
+ db "@"
+
+SSAnne10Text7:
+ TX_FAR _SSAnne10Text7
+ db "@"
diff --git a/scripts/SSAnneBow.asm b/scripts/SSAnneBow.asm
new file mode 100755
index 00000000..4569f0f8
--- /dev/null
+++ b/scripts/SSAnneBow.asm
@@ -0,0 +1,88 @@
+SSAnneBow_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, SSAnne5TrainerHeader0
+ ld de, SSAnneBow_ScriptPointers
+ ld a, [wSSAnneBowCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSSAnneBowCurScript], a
+ ret
+
+SSAnneBow_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SSAnneBow_TextPointers:
+ dw SSAnne5Text1
+ dw SSAnne5Text2
+ dw SSAnne5Text3
+ dw SSAnne5Text4
+ dw SSAnne5Text5
+
+SSAnne5TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_5_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_5_TRAINER_0
+ dw SSAnne5BattleText1 ; TextBeforeBattle
+ dw SSAnne5AfterBattleText1 ; TextAfterBattle
+ dw SSAnne5EndBattleText1 ; TextEndBattle
+ dw SSAnne5EndBattleText1 ; TextEndBattle
+
+SSAnne5TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SS_ANNE_5_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SS_ANNE_5_TRAINER_1
+ dw SSAnne5BattleText2 ; TextBeforeBattle
+ dw SSAnne5AfterBattleText2 ; TextAfterBattle
+ dw SSAnne5EndBattleText2 ; TextEndBattle
+ dw SSAnne5EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+SSAnne5Text1:
+ TX_FAR _SSAnne5Text1
+ db "@"
+
+SSAnne5Text2:
+ TX_FAR _SSAnne5Text2
+ db "@"
+
+SSAnne5Text3:
+ TX_FAR _SSAnne5Text3
+ db "@"
+
+SSAnne5Text4:
+ TX_ASM
+ ld hl, SSAnne5TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne5BattleText1:
+ TX_FAR _SSAnne5BattleText1
+ db "@"
+
+SSAnne5EndBattleText1:
+ TX_FAR _SSAnne5EndBattleText1
+ db "@"
+
+SSAnne5AfterBattleText1:
+ TX_FAR _SSAnne5AfterBattleText1
+ db "@"
+
+SSAnne5Text5:
+ TX_ASM
+ ld hl, SSAnne5TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SSAnne5BattleText2:
+ TX_FAR _SSAnne5BattleText2
+ db "@"
+
+SSAnne5EndBattleText2:
+ TX_FAR _SSAnne5EndBattleText2
+ db "@"
+
+SSAnne5AfterBattleText2:
+ TX_FAR _SSAnne5AfterBattleText2
+ db "@"
diff --git a/scripts/SSAnneCaptainsRoom.asm b/scripts/SSAnneCaptainsRoom.asm
new file mode 100755
index 00000000..94918118
--- /dev/null
+++ b/scripts/SSAnneCaptainsRoom.asm
@@ -0,0 +1,91 @@
+SSAnneCaptainsRoom_Script:
+ call SSAnne7Script_6189b
+ jp EnableAutoTextBoxDrawing
+
+SSAnne7Script_6189b:
+ CheckEvent EVENT_GOT_HM01
+ ret nz
+ ld hl, wd72d
+ set 5, [hl]
+ ret
+
+SSAnneCaptainsRoom_TextPointers:
+ dw SSAnne7Text1
+ dw SSAnne7Text2
+ dw SSAnne7Text3
+
+SSAnne7Text1:
+ TX_ASM
+ CheckEvent EVENT_GOT_HM01
+ jr nz, .asm_797c4
+ ld hl, SSAnne7RubText
+ call PrintText
+ ld hl, ReceivingHM01Text
+ call PrintText
+ lb bc, HM_01, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedHM01Text
+ call PrintText
+ SetEvent EVENT_GOT_HM01
+ ld hl, wd72d
+ res 5, [hl]
+ jr .asm_0faf5
+.BagFull
+ ld hl, HM01NoRoomText
+ call PrintText
+ jr .asm_0faf5
+.asm_797c4
+ ld hl, SSAnne7Text_61932
+ call PrintText
+.asm_0faf5
+ jp TextScriptEnd
+
+SSAnne7RubText:
+ TX_FAR _SSAnne7RubText
+ TX_ASM
+ ld a, [wAudioROMBank]
+ cp BANK(AudioEngine3)
+ ld [wAudioSavedROMBank], a
+ jr nz, .asm_61908
+ call StopAllMusic
+ ld a, BANK(Music_PkmnHealed)
+ ld [wAudioROMBank], a
+.asm_61908
+ ld a, MUSIC_PKMN_HEALED
+ ld [wNewSoundID], a
+ call PlaySound
+.asm_61910
+ ld a, [wChannelSoundIDs]
+ cp MUSIC_PKMN_HEALED
+ jr z, .asm_61910
+ call PlayDefaultMusic
+ SetEvent EVENT_RUBBED_CAPTAINS_BACK
+ ld hl, wd72d
+ res 5, [hl]
+ jp TextScriptEnd
+
+ReceivingHM01Text:
+ TX_FAR _ReceivingHM01Text
+ db "@"
+
+ReceivedHM01Text:
+ TX_FAR _ReceivedHM01Text
+ TX_SFX_KEY_ITEM
+ db "@"
+
+SSAnne7Text_61932:
+ TX_FAR _SSAnne7Text_61932
+ db "@"
+
+HM01NoRoomText:
+ TX_FAR _HM01NoRoomText
+ db "@"
+
+SSAnne7Text2:
+ TX_FAR _SSAnne7Text2
+ db "@"
+
+SSAnne7Text3:
+ TX_FAR _SSAnne7Text3
+ db "@"
diff --git a/scripts/SSAnneKitchen.asm b/scripts/SSAnneKitchen.asm
new file mode 100755
index 00000000..137706a0
--- /dev/null
+++ b/scripts/SSAnneKitchen.asm
@@ -0,0 +1,72 @@
+SSAnneKitchen_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+SSAnneKitchen_TextPointers:
+ dw SSAnne6Text1
+ dw SSAnne6Text2
+ dw SSAnne6Text3
+ dw SSAnne6Text4
+ dw SSAnne6Text5
+ dw SSAnne6Text6
+ dw SSAnne6Text7
+
+SSAnne6Text1:
+ TX_FAR _SSAnne6Text1
+ db "@"
+
+SSAnne6Text2:
+ TX_FAR _SSAnne6Text2
+ db "@"
+
+SSAnne6Text3:
+ TX_FAR _SSAnne6Text3
+ db "@"
+
+SSAnne6Text4:
+ TX_FAR _SSAnne6Text4
+ db "@"
+
+SSAnne6Text5:
+ TX_FAR _SSAnne6Text5
+ db "@"
+
+SSAnne6Text6:
+ TX_FAR _SSAnne6Text6
+ db "@"
+
+SSAnne6Text7:
+ TX_ASM
+ ld hl, SSAnne6Text_61807
+ call PrintText
+ ld a, [hRandomAdd]
+ bit 7, a
+ jr z, .asm_93eb1
+ ld hl, SSAnne6Text_6180c
+ jr .asm_63292
+.asm_93eb1
+ bit 4, a
+ jr z, .asm_7436c
+ ld hl, SSAnne6Text_61811
+ jr .asm_63292
+.asm_7436c
+ ld hl, SSAnne6Text_61816
+.asm_63292
+ call PrintText
+ jp TextScriptEnd
+
+SSAnne6Text_61807:
+ TX_FAR _SSAnne6Text_61807
+ db "@"
+
+SSAnne6Text_6180c:
+ TX_FAR _SSAnne6Text_6180c
+ db "@"
+
+SSAnne6Text_61811:
+ TX_FAR _SSAnne6Text_61811
+ db "@"
+
+SSAnne6Text_61816:
+ TX_FAR _SSAnne6Text_61816
+ db "@"
diff --git a/scripts/SafariZoneCenter.asm b/scripts/SafariZoneCenter.asm
new file mode 100755
index 00000000..0a266887
--- /dev/null
+++ b/scripts/SafariZoneCenter.asm
@@ -0,0 +1,15 @@
+SafariZoneCenter_Script:
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneCenter_TextPointers:
+ dw PickUpItemText
+ dw SafariZoneCenterText2
+ dw SafariZoneCenterText3
+
+SafariZoneCenterText2:
+ TX_FAR _SafariZoneCenterText2
+ db "@"
+
+SafariZoneCenterText3:
+ TX_FAR _SafariZoneCenterText3
+ db "@"
diff --git a/scripts/SafariZoneCenterRestHouse.asm b/scripts/SafariZoneCenterRestHouse.asm
new file mode 100755
index 00000000..a652644b
--- /dev/null
+++ b/scripts/SafariZoneCenterRestHouse.asm
@@ -0,0 +1,14 @@
+SafariZoneCenterRestHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneCenterRestHouse_TextPointers:
+ dw SafariZoneRestHouse1Text1
+ dw SafariZoneRestHouse1Text2
+
+SafariZoneRestHouse1Text1:
+ TX_FAR _SafariZoneRestHouse1Text1
+ db "@"
+
+SafariZoneRestHouse1Text2:
+ TX_FAR _SafariZoneRestHouse1Text2
+ db "@"
diff --git a/scripts/SafariZoneEast.asm b/scripts/SafariZoneEast.asm
new file mode 100755
index 00000000..7f4a5543
--- /dev/null
+++ b/scripts/SafariZoneEast.asm
@@ -0,0 +1,23 @@
+SafariZoneEast_Script:
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneEast_TextPointers:
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw SafariZoneEastText5
+ dw SafariZoneEastText6
+ dw SafariZoneEastText7
+
+SafariZoneEastText5:
+ TX_FAR _SafariZoneEastText5
+ db "@"
+
+SafariZoneEastText6:
+ TX_FAR _SafariZoneEastText6
+ db "@"
+
+SafariZoneEastText7:
+ TX_FAR _SafariZoneEastText7
+ db "@"
diff --git a/scripts/SafariZoneEastRestHouse.asm b/scripts/SafariZoneEastRestHouse.asm
new file mode 100755
index 00000000..24141459
--- /dev/null
+++ b/scripts/SafariZoneEastRestHouse.asm
@@ -0,0 +1,20 @@
+SafariZoneEastRestHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+SafariZoneEastRestHouse_TextPointers:
+ dw SafariZoneRestHouse3Text1
+ dw SafariZoneRestHouse3Text2
+ dw SafariZoneRestHouse3Text3
+
+SafariZoneRestHouse3Text1:
+ TX_FAR _SafariZoneRestHouse3Text1
+ db "@"
+
+SafariZoneRestHouse3Text2:
+ TX_FAR _SafariZoneRestHouse3Text2
+ db "@"
+
+SafariZoneRestHouse3Text3:
+ TX_FAR _SafariZoneRestHouse3Text3
+ db "@"
diff --git a/scripts/SafariZoneGate.asm b/scripts/SafariZoneGate.asm
new file mode 100755
index 00000000..217001dd
--- /dev/null
+++ b/scripts/SafariZoneGate.asm
@@ -0,0 +1,201 @@
+SafariZoneGate_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, SafariZoneGate_ScriptPointers
+ ld a, [wSafariZoneGateCurScript]
+ call CallFunctionInTable
+ ret
+
+SafariZoneGate_ScriptPointers:
+ dw .SafariZoneEntranceScript0
+ dw .SafariZoneEntranceScript1
+ dw .SafariZoneEntranceScript2
+ dw .SafariZoneEntranceScript3
+ dw .SafariZoneEntranceScript4
+ dw .SafariZoneEntranceScript5
+ dw .SafariZoneEntranceScript6
+
+.SafariZoneEntranceScript0
+ ld hl, .CoordsData_75221
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoyIgnore], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, [wCoordIndex]
+ cp $1
+ jr z, .asm_7520f
+ ld a, $2
+ ld [wSafariZoneGateCurScript], a
+ ret
+.asm_7520f
+ ld a, D_RIGHT
+ ld c, $1
+ call SafariZoneEntranceAutoWalk
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wSafariZoneGateCurScript], a
+ ret
+
+.CoordsData_75221:
+ db $02, $03
+ db $02, $04
+ db $FF
+
+.SafariZoneEntranceScript1
+ call SafariZoneEntranceScript_752b4
+ ret nz
+.SafariZoneEntranceScript2
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ call UpdateSprites
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ret
+
+.SafariZoneEntranceScript3
+ call SafariZoneEntranceScript_752b4
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $5
+ ld [wSafariZoneGateCurScript], a
+ ret
+
+.SafariZoneEntranceScript5
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ CheckAndResetEvent EVENT_SAFARI_GAME_OVER
+ jr z, .asm_7527f
+ ResetEventReuseHL EVENT_IN_SAFARI_ZONE
+ call UpdateSprites
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wNumSafariBalls], a
+ ld [wSafariSteps], a
+ ld [wSafariSteps], a ; ?????
+ ld a, D_DOWN
+ ld c, $3
+ call SafariZoneEntranceAutoWalk
+ ld a, $4
+ ld [wSafariZoneGateCurScript], a
+ jr .asm_75286
+.asm_7527f
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.asm_75286
+ ret
+
+.SafariZoneEntranceScript4
+ call SafariZoneEntranceScript_752b4
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wSafariZoneGateCurScript], a
+ ret
+
+.SafariZoneEntranceScript6
+ call SafariZoneEntranceScript_752b4
+ ret nz
+ call Delay3
+ ld a, [wcf0d]
+ ld [wSafariZoneGateCurScript], a
+ ret
+
+SafariZoneEntranceAutoWalk:
+ push af
+ ld b, 0
+ ld a, c
+ ld [wSimulatedJoypadStatesIndex], a
+ ld hl, wSimulatedJoypadStatesEnd
+ pop af
+ call FillMemory
+ jp StartSimulatingJoypadStates
+
+SafariZoneEntranceScript_752b4:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret
+
+SafariZoneGate_TextPointers:
+ dw .SafariZoneEntranceText1
+ dw .SafariZoneEntranceText2
+ dw .SafariZoneEntranceText1
+ dw .SafariZoneEntranceText4
+ dw .SafariZoneEntranceText5
+ dw .SafariZoneEntranceText6
+
+.SafariZoneEntranceText1
+ TX_FAR _SafariZoneEntranceText1
+ db "@"
+
+.SafariZoneEntranceText4
+ TX_ASM
+ callab Func_f1f77
+ jp TextScriptEnd
+
+.SafariZoneEntranceText5
+ TX_FAR SafariZoneEntranceText_9e814
+ TX_ASM
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_7539c
+ ld hl, .SafariZoneEntranceText_753bb
+ call PrintText
+ xor a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, D_DOWN
+ ld c, $3
+ call SafariZoneEntranceAutoWalk
+ ResetEvents EVENT_SAFARI_GAME_OVER, EVENT_IN_SAFARI_ZONE
+ ld a, $0
+ ld [wcf0d], a
+ jr .asm_753b3
+.asm_7539c
+ ld hl, .SafariZoneEntranceText_753c0
+ call PrintText
+ ld a, SPRITE_FACING_UP
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, D_UP
+ ld c, $1
+ call SafariZoneEntranceAutoWalk
+ ld a, $5
+ ld [wcf0d], a
+.asm_753b3
+ ld a, $6
+ ld [wSafariZoneGateCurScript], a
+ jp TextScriptEnd
+
+.SafariZoneEntranceText_753bb
+ TX_FAR _SafariZoneEntranceText_753bb
+ db "@"
+
+.SafariZoneEntranceText_753c0
+ TX_FAR _SafariZoneEntranceText_753c0
+ db "@"
+
+.SafariZoneEntranceText6
+ TX_FAR _SafariZoneEntranceText_753c5
+ db "@"
+
+.SafariZoneEntranceText2
+ TX_ASM
+ callab Func_f203e
+ jp TextScriptEnd
diff --git a/scripts/SafariZoneGate2.asm b/scripts/SafariZoneGate2.asm
new file mode 100755
index 00000000..a99bad6a
--- /dev/null
+++ b/scripts/SafariZoneGate2.asm
@@ -0,0 +1,251 @@
+Func_f1f77:
+ ld hl, .WelcomeText
+ call PrintText
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jp nz, .declined
+ ld hl, wPlayerMoney
+ ld a, [hli]
+ or [hl]
+ inc hl
+ or [hl]
+ jr nz, .has_positive_balance
+ call SafariZoneEntranceGetLowCostAdmissionText
+ jr c, .deny_entry
+ jr .poor_mans_discount
+
+.has_positive_balance
+ xor a
+ ld [hMoney], a
+ ld a, $5
+ ld [hMoney + 1], a
+ ld a, $0
+ ld [hMoney + 2], a
+ call HasEnoughMoney
+ jr nc, .has_enough_money
+ ld hl, .NotEnoughMoneyText
+ call PrintText
+ call SafariZoneEntranceCalculateLowCostAdmission
+ jr c, .deny_entry
+ jr .poor_mans_discount
+
+.has_enough_money
+ xor a
+ ld [wPriceTemp + 0], a
+ ld a, $5
+ ld [wPriceTemp + 1], a
+ ld a, $0
+ ld [wPriceTemp + 2], a
+ ld hl, wTrainerInfoTextBoxNextRowOffset
+ ld de, wPlayerMoney + 2
+ ld c, 3
+ predef SubBCDPredef
+ ld a, SFX_PURCHASE
+ call PlaySoundWaitForCurrent
+ call WaitForSoundToFinish
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ ld hl, .MakePaymentText
+ call PrintText
+ ld a, 30
+ ld hl, 502
+.poor_mans_discount
+ ld [wNumSafariBalls], a
+ ld a, h
+ ld [wSafariSteps], a
+ ld a, l
+ ld [wSafariSteps + 1], a
+ ld a, D_UP
+ ld c, 3
+ call SafariZoneEntranceStartSimulatingJoypadStates
+ SetEvent EVENT_IN_SAFARI_ZONE
+ ResetEventReuseHL EVENT_SAFARI_GAME_OVER
+ ld a, $3
+ ld [wSafariZoneGateCurScript], a
+ jr .asm_f2024
+.declined:
+ ld hl, .PleaseComeAgainText
+ call PrintText
+.deny_entry
+ ld a, D_DOWN
+ ld c, 1
+ call SafariZoneEntranceStartSimulatingJoypadStates
+ ld a, $4
+ ld [wSafariZoneGateCurScript], a
+.asm_f2024
+ ret
+
+.WelcomeText
+ TX_FAR SafariZoneEntranceText_9e6e4
+ db "@"
+
+.MakePaymentText
+ TX_FAR SafariZoneEntranceText_9e747
+ TX_SFX_ITEM_1
+ TX_FAR _SafariZoneEntranceText_75360
+ db "@"
+
+.PleaseComeAgainText
+ TX_FAR _SafariZoneEntranceText_75365
+ db "@"
+
+.NotEnoughMoneyText
+ TX_FAR _SafariZoneEntranceText_7536a
+ db "@"
+
+Func_f203e:
+ ld hl, .FirstTimeQuestionText
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ ld hl, .RegularText
+ jr nz, .Explanation
+ ld hl, .ExplanationText
+.Explanation
+ call PrintText
+ ret
+
+.FirstTimeQuestionText
+ TX_FAR _SafariZoneEntranceText_753e6
+ db "@"
+
+.ExplanationText
+ TX_FAR _SafariZoneEntranceText_753eb
+ db "@"
+
+.RegularText
+ TX_FAR _SafariZoneEntranceText_753f0
+ db "@"
+
+SafariZoneEntranceStartSimulatingJoypadStates:
+ push af
+ ld b, $0
+ ld a, c
+ ld [wSimulatedJoypadStatesIndex], a
+ ld hl, wParentMenuItem
+ pop af
+ call FillMemory
+ jp StartSimulatingJoypadStates
+
+SafariZoneEntranceCalculateLowCostAdmission:
+ ld hl, wPlayerMoney
+ ld de, hMoney
+ ld bc, $3
+ call CopyData
+ xor a
+ ld [hDivideBCDDivisor], a
+ ld [hDivideBCDDivisor + 1], a
+ ld a, 23
+ ld [hDivideBCDDivisor + 2], a
+ predef DivideBCDPredef3
+ ld a, [hDivideBCDQuotient + 2]
+ call SafariZoneEntranceConvertBCDtoNumber
+ push af
+ ld hl, wPlayerMoney
+ xor a
+ ld bc, $3
+ call FillMemory
+ ld hl, SafariZoneEntranceText_f20c4
+ call PrintText_NoCreatingTextBox
+ ld a, MONEY_BOX
+ ld [wTextBoxID], a
+ call DisplayTextBoxID
+ ld hl, SafariZoneEntranceText_f20c9
+ call PrintText
+ pop af
+ inc a
+ jr z, .max_balls
+ cp 29
+ jr c, .load_balls
+.max_balls
+ ld a, 29
+.load_balls
+ ld hl, 502
+ and a
+ ret
+
+SafariZoneEntranceText_f20c4:
+ TX_FAR _SafariZoneLowCostText1
+ db "@"
+
+SafariZoneEntranceText_f20c9:
+ TX_FAR _SafariZoneLowCostText2
+ db "@"
+
+SafariZoneEntranceGetLowCostAdmissionText:
+ ld hl, wSafariSteps
+ ld a, [hl]
+ push af
+ inc [hl]
+ ld e, a
+ ld d, $0
+ ld hl, Pointers_f2100
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call PrintText
+ pop af
+ cp $3
+ jr z, .give_one_ball
+ scf
+ ret
+
+.give_one_ball
+ ld hl, SafariZoneEntranceText_f20f6
+ call PrintText_NoCreatingTextBox
+ ld a, $1
+ ld hl, 502
+ and a
+ ret
+
+SafariZoneEntranceText_f20f6:
+ TX_FAR _SafariZoneLowCostText3
+ TX_SFX_ITEM_1
+ TX_FAR _SafariZoneLowCostText4
+ db "@"
+
+Pointers_f2100:
+ dw SafariZoneEntranceText_f210a
+ dw SafariZoneEntranceText_f210f
+ dw SafariZoneEntranceText_f2114
+ dw SafariZoneEntranceText_f2119
+ dw SafariZoneEntranceText_f2119
+
+SafariZoneEntranceText_f210a:
+ TX_FAR _SafariZoneLowCostText5
+ db "@"
+
+SafariZoneEntranceText_f210f:
+ TX_FAR _SafariZoneLowCostText6
+ db "@"
+
+SafariZoneEntranceText_f2114:
+ TX_FAR _SafariZoneLowCostText7
+ db "@"
+
+SafariZoneEntranceText_f2119:
+ TX_FAR _SafariZoneLowCostText8
+ db "@"
+
+SafariZoneEntranceConvertBCDtoNumber:
+ push hl
+ ld c, a
+ and $f
+ ld l, a
+ ld h, $0
+ ld a, c
+ and $f0
+ swap a
+ ld bc, 10
+ call AddNTimes
+ ld a, l
+ pop hl
+ ret
diff --git a/scripts/SafariZoneNorth.asm b/scripts/SafariZoneNorth.asm
new file mode 100755
index 00000000..734328b4
--- /dev/null
+++ b/scripts/SafariZoneNorth.asm
@@ -0,0 +1,31 @@
+SafariZoneNorth_Script:
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneNorth_TextPointers:
+ dw PickUpItemText
+ dw PickUpItemText
+ dw SafariZoneNorthText3
+ dw SafariZoneNorthText4
+ dw SafariZoneNorthText5
+ dw SafariZoneNorthText6
+ dw SafariZoneNorthText7
+
+SafariZoneNorthText3:
+ TX_FAR _SafariZoneNorthText3
+ db "@"
+
+SafariZoneNorthText4:
+ TX_FAR _SafariZoneNorthText4
+ db "@"
+
+SafariZoneNorthText5:
+ TX_FAR _SafariZoneNorthText5
+ db "@"
+
+SafariZoneNorthText6:
+ TX_FAR _SafariZoneNorthText6
+ db "@"
+
+SafariZoneNorthText7:
+ TX_FAR _SafariZoneNorthText7
+ db "@"
diff --git a/scripts/SafariZoneNorthRestHouse.asm b/scripts/SafariZoneNorthRestHouse.asm
new file mode 100755
index 00000000..fdc438f4
--- /dev/null
+++ b/scripts/SafariZoneNorthRestHouse.asm
@@ -0,0 +1,20 @@
+SafariZoneNorthRestHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+SafariZoneNorthRestHouse_TextPointers:
+ dw SafariZoneRestHouse4Text1
+ dw SafariZoneRestHouse4Text2
+ dw SafariZoneRestHouse4Text3
+
+SafariZoneRestHouse4Text1:
+ TX_FAR _SafariZoneRestHouse4Text1
+ db "@"
+
+SafariZoneRestHouse4Text2:
+ TX_FAR _SafariZoneRestHouse4Text2
+ db "@"
+
+SafariZoneRestHouse4Text3:
+ TX_FAR _SafariZoneRestHouse4Text3
+ db "@"
diff --git a/scripts/SafariZoneSecretHouse.asm b/scripts/SafariZoneSecretHouse.asm
new file mode 100755
index 00000000..2d9b2305
--- /dev/null
+++ b/scripts/SafariZoneSecretHouse.asm
@@ -0,0 +1,45 @@
+SafariZoneSecretHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneSecretHouse_TextPointers:
+ dw SafariZoneSecretHouseText1
+
+SafariZoneSecretHouseText1:
+ TX_ASM
+ CheckEvent EVENT_GOT_HM03
+ jr nz, .asm_20a9b
+ ld hl, SafariZoneSecretHouseText_4a350
+ call PrintText
+ lb bc, HM_03, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedHM03Text
+ call PrintText
+ SetEvent EVENT_GOT_HM03
+ jr .asm_8f1fc
+.BagFull
+ ld hl, HM03NoRoomText
+ call PrintText
+ jr .asm_8f1fc
+.asm_20a9b
+ ld hl, HM03ExplanationText
+ call PrintText
+.asm_8f1fc
+ jp TextScriptEnd
+
+SafariZoneSecretHouseText_4a350:
+ TX_FAR _SecretHouseText_4a350
+ db "@"
+
+ReceivedHM03Text:
+ TX_FAR _ReceivedHM03Text
+ TX_SFX_ITEM_1
+ db "@"
+
+HM03ExplanationText:
+ TX_FAR _HM03ExplanationText
+ db "@"
+
+HM03NoRoomText:
+ TX_FAR _HM03NoRoomText
+ db "@"
diff --git a/scripts/SafariZoneWest.asm b/scripts/SafariZoneWest.asm
new file mode 100755
index 00000000..483a92ee
--- /dev/null
+++ b/scripts/SafariZoneWest.asm
@@ -0,0 +1,28 @@
+SafariZoneWest_Script:
+ jp EnableAutoTextBoxDrawing
+
+SafariZoneWest_TextPointers:
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw SafariZoneWestText5
+ dw SafariZoneWestText6
+ dw SafariZoneWestText7
+ dw SafariZoneWestText8
+
+SafariZoneWestText5:
+ TX_FAR _SafariZoneWestText5
+ db "@"
+
+SafariZoneWestText6:
+ TX_FAR _SafariZoneWestText6
+ db "@"
+
+SafariZoneWestText7:
+ TX_FAR _SafariZoneWestText7
+ db "@"
+
+SafariZoneWestText8:
+ TX_FAR _SafariZoneWestText8
+ db "@"
diff --git a/scripts/SafariZoneWestRestHouse.asm b/scripts/SafariZoneWestRestHouse.asm
new file mode 100755
index 00000000..371bd56c
--- /dev/null
+++ b/scripts/SafariZoneWestRestHouse.asm
@@ -0,0 +1,20 @@
+SafariZoneWestRestHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+SafariZoneWestRestHouse_TextPointers:
+ dw SafariZoneRestHouse2Text1
+ dw SafariZoneRestHouse2Text2
+ dw SafariZoneRestHouse2Text3
+
+SafariZoneRestHouse2Text1:
+ TX_FAR _SafariZoneRestHouse2Text1
+ db "@"
+
+SafariZoneRestHouse2Text2:
+ TX_FAR _SafariZoneRestHouse2Text2
+ db "@"
+
+SafariZoneRestHouse2Text3:
+ TX_FAR _SafariZoneRestHouse2Text3
+ db "@"
diff --git a/scripts/SaffronCity.asm b/scripts/SaffronCity.asm
new file mode 100755
index 00000000..02e6e2bb
--- /dev/null
+++ b/scripts/SaffronCity.asm
@@ -0,0 +1,122 @@
+SaffronCity_Script:
+ jp EnableAutoTextBoxDrawing
+
+SaffronCity_TextPointers:
+ dw SaffronCityText1
+ dw SaffronCityText2
+ dw SaffronCityText3
+ dw SaffronCityText4
+ dw SaffronCityText5
+ dw SaffronCityText6
+ dw SaffronCityText7
+ dw SaffronCityText8
+ dw SaffronCityText9
+ dw SaffronCityText10
+ dw SaffronCityText11
+ dw SaffronCityText12
+ dw SaffronCityText13
+ dw SaffronCityText14
+ dw SaffronCityText15
+ dw SaffronCityText16
+ dw SaffronCityText17
+ dw SaffronCityText18
+ dw MartSignText
+ dw SaffronCityText20
+ dw SaffronCityText21
+ dw SaffronCityText22
+ dw PokeCenterSignText
+ dw SaffronCityText24
+ dw SaffronCityText25
+
+SaffronCityText1:
+ TX_FAR _SaffronCityText1
+ db "@"
+
+SaffronCityText2:
+ TX_FAR _SaffronCityText2
+ db "@"
+
+SaffronCityText3:
+ TX_FAR _SaffronCityText3
+ db "@"
+
+SaffronCityText4:
+ TX_FAR _SaffronCityText4
+ db "@"
+
+SaffronCityText5:
+ TX_FAR _SaffronCityText5
+ db "@"
+
+SaffronCityText6:
+ TX_FAR _SaffronCityText6
+ db "@"
+
+SaffronCityText7:
+ TX_FAR _SaffronCityText7
+ db "@"
+
+SaffronCityText8:
+ TX_FAR _SaffronCityText8
+ db "@"
+
+SaffronCityText9:
+ TX_FAR _SaffronCityText9
+ db "@"
+
+SaffronCityText10:
+ TX_FAR _SaffronCityText10
+ db "@"
+
+SaffronCityText11:
+ TX_FAR _SaffronCityText11
+ db "@"
+
+SaffronCityText12:
+ TX_FAR _SaffronCityText12
+ TX_CRY_PIDGEOT
+ db "@"
+
+SaffronCityText13:
+ TX_FAR _SaffronCityText13
+ db "@"
+
+SaffronCityText14:
+ TX_FAR _SaffronCityText14
+ db "@"
+
+SaffronCityText15:
+ TX_FAR _SaffronCityText15
+ db "@"
+
+SaffronCityText16:
+ TX_FAR _SaffronCityText16
+ db "@"
+
+SaffronCityText17:
+ TX_FAR _SaffronCityText17
+ db "@"
+
+SaffronCityText18:
+ TX_FAR _SaffronCityText18
+ db "@"
+
+SaffronCityText20:
+ TX_FAR _SaffronCityText20
+ db "@"
+
+SaffronCityText21:
+ TX_FAR _SaffronCityText21
+ db "@"
+
+SaffronCityText22:
+ TX_FAR _SaffronCityText22
+ db "@"
+
+SaffronCityText24:
+ TX_FAR _SaffronCityText24
+ db "@"
+
+SaffronCityText25:
+ TX_FAR _SaffronCityText25
+ db "@"
diff --git a/scripts/SaffronGym.asm b/scripts/SaffronGym.asm
new file mode 100755
index 00000000..0539d613
--- /dev/null
+++ b/scripts/SaffronGym.asm
@@ -0,0 +1,358 @@
+SaffronGym_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, .extra
+ call EnableAutoTextBoxDrawing
+ ld hl, SaffronGymTrainerHeader0
+ ld de, SaffronGym_ScriptPointers
+ ld a, [wSaffronGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSaffronGymCurScript], a
+ ret
+
+.extra
+ ld hl, Gym6CityName
+ ld de, Gym6LeaderName
+ jp LoadGymLeaderAndCityName
+
+Gym6CityName:
+ db "SAFFRON CITY@"
+
+Gym6LeaderName:
+ db "SABRINA@"
+
+SaffronGymText_5d048:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wSaffronGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+SaffronGym_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw SaffronGymScript3
+
+SaffronGymScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, SaffronGymText_5d048
+ ld a, $f0
+ ld [wJoyIgnore], a
+
+SaffronGymText_5d068:
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_SABRINA
+ lb bc, TM_46, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $b
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM46
+ jr .gymVictory
+.BagFull
+ ld a, $c
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 5, [hl]
+ ld hl, wBeatGymFlags
+ set 5, [hl]
+
+ ; deactivate gym trainers
+ SetEventRange EVENT_BEAT_SAFFRON_GYM_TRAINER_0, EVENT_BEAT_SAFFRON_GYM_TRAINER_6
+
+ jp SaffronGymText_5d048
+
+SaffronGym_TextPointers:
+ dw SaffronGymText1
+ dw SaffronGymText2
+ dw SaffronGymText3
+ dw SaffronGymText4
+ dw SaffronGymText5
+ dw SaffronGymText6
+ dw SaffronGymText7
+ dw SaffronGymText8
+ dw SaffronGymText9
+ dw SaffronGymText10
+ dw SaffronGymText11
+ dw SaffronGymText12
+
+SaffronGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_0
+ dw SaffronGymBattleText1 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText1 ; TextAfterBattle
+ dw SaffronGymEndBattleText1 ; TextEndBattle
+ dw SaffronGymEndBattleText1 ; TextEndBattle
+
+SaffronGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_1
+ dw SaffronGymBattleText2 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText2 ; TextAfterBattle
+ dw SaffronGymEndBattleText2 ; TextEndBattle
+ dw SaffronGymEndBattleText2 ; TextEndBattle
+
+SaffronGymTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_2
+ dw SaffronGymBattleText3 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText3 ; TextAfterBattle
+ dw SaffronGymEndBattleText3 ; TextEndBattle
+ dw SaffronGymEndBattleText3 ; TextEndBattle
+
+SaffronGymTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_3
+ dw SaffronGymBattleText4 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText4 ; TextAfterBattle
+ dw SaffronGymEndBattleText4 ; TextEndBattle
+ dw SaffronGymEndBattleText4 ; TextEndBattle
+
+SaffronGymTrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_4
+ dw SaffronGymBattleText5 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText5 ; TextAfterBattle
+ dw SaffronGymEndBattleText5 ; TextEndBattle
+ dw SaffronGymEndBattleText5 ; TextEndBattle
+
+SaffronGymTrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_5
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_5
+ dw SaffronGymBattleText6 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText6 ; TextAfterBattle
+ dw SaffronGymEndBattleText6 ; TextEndBattle
+ dw SaffronGymEndBattleText6 ; TextEndBattle
+
+SaffronGymTrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_6, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_6, 1
+ dw SaffronGymBattleText7 ; TextBeforeBattle
+ dw SaffronGymAfterBattleText7 ; TextAfterBattle
+ dw SaffronGymEndBattleText7 ; TextEndBattle
+ dw SaffronGymEndBattleText7 ; TextEndBattle
+
+ db $ff
+
+SaffronGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SABRINA
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM46
+ jr nz, .afterVictory
+ call z, SaffronGymText_5d068
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.afterVictory
+ ld hl, SaffronGymText_5d16e
+ call PrintText
+ jr .done
+.beginBattle
+ ld hl, SaffronGymText_5d162
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SaffronGymText_5d167
+ ld de, SaffronGymText_5d167
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $6
+ ld [wGymLeaderNo], a
+ ld a, $3
+ ld [wSaffronGymCurScript], a
+.done
+ jp TextScriptEnd
+
+SaffronGymText_5d162:
+ TX_FAR _SaffronGymText_5d162
+ db "@"
+
+SaffronGymText_5d167:
+ TX_FAR _SaffronGymText_5d167
+ TX_SFX_KEY_ITEM ; actually plays the second channel of SFX_BALL_POOF due to the wrong music bank being loaded
+ TX_BLINK
+ db "@"
+
+SaffronGymText_5d16e:
+ TX_FAR _SaffronGymText_5d16e
+ db "@"
+
+SaffronGymText10:
+ TX_FAR _SaffronGymText_5d173
+ db "@"
+
+SaffronGymText11:
+ TX_FAR ReceivedTM46Text
+ TX_SFX_ITEM_1
+ TX_FAR _TM46ExplanationText
+ db "@"
+
+SaffronGymText12:
+ TX_FAR _TM46NoRoomText
+ db "@"
+
+SaffronGymText2:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText3:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText4:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText5:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText6:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText7:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText8:
+ TX_ASM
+ ld hl, SaffronGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SaffronGymText9:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SABRINA
+ jr nz, .asm_5d1dd
+ ld hl, SaffronGymText_5d1e6
+ call PrintText
+ jr .asm_5d1e3
+.asm_5d1dd
+ ld hl, SaffronGymText_5d1eb
+ call PrintText
+.asm_5d1e3
+ jp TextScriptEnd
+
+SaffronGymText_5d1e6:
+ TX_FAR _SaffronGymText_5d1e6
+ db "@"
+
+SaffronGymText_5d1eb:
+ TX_FAR _SaffronGymText_5d1eb
+ db "@"
+
+SaffronGymBattleText1:
+ TX_FAR _SaffronGymBattleText1
+ db "@"
+
+SaffronGymEndBattleText1:
+ TX_FAR _SaffronGymEndBattleText1
+ db "@"
+
+SaffronGymAfterBattleText1:
+ TX_FAR _SaffronGymAfterBattleText1
+ db "@"
+
+SaffronGymBattleText2:
+ TX_FAR _SaffronGymBattleText2
+ db "@"
+
+SaffronGymEndBattleText2:
+ TX_FAR _SaffronGymEndBattleText2
+ db "@"
+
+SaffronGymAfterBattleText2:
+ TX_FAR _SaffronGymAfterBattleText2
+ db "@"
+
+SaffronGymBattleText3:
+ TX_FAR _SaffronGymBattleText3
+ db "@"
+
+SaffronGymEndBattleText3:
+ TX_FAR _SaffronGymEndBattleText3
+ db "@"
+
+SaffronGymAfterBattleText3:
+ TX_FAR _SaffronGymAfterBattleText3
+ db "@"
+
+SaffronGymBattleText4:
+ TX_FAR _SaffronGymBattleText4
+ db "@"
+
+SaffronGymEndBattleText4:
+ TX_FAR _SaffronGymEndBattleText4
+ db "@"
+
+SaffronGymAfterBattleText4:
+ TX_FAR _SaffronGymAfterBattleText4
+ db "@"
+
+SaffronGymBattleText5:
+ TX_FAR _SaffronGymBattleText5
+ db "@"
+
+SaffronGymEndBattleText5:
+ TX_FAR _SaffronGymEndBattleText5
+ db "@"
+
+SaffronGymAfterBattleText5:
+ TX_FAR _SaffronGymAfterBattleText5
+ db "@"
+
+SaffronGymBattleText6:
+ TX_FAR _SaffronGymBattleText6
+ db "@"
+
+SaffronGymEndBattleText6:
+ TX_FAR _SaffronGymEndBattleText6
+ db "@"
+
+SaffronGymAfterBattleText6:
+ TX_FAR _SaffronGymAfterBattleText6
+ db "@"
+
+SaffronGymBattleText7:
+ TX_FAR _SaffronGymBattleText7
+ db "@"
+
+SaffronGymEndBattleText7:
+ TX_FAR _SaffronGymEndBattleText7
+ db "@"
+
+SaffronGymAfterBattleText7:
+ TX_FAR _SaffronGymAfterBattleText7
+ db "@"
diff --git a/scripts/SaffronMart.asm b/scripts/SaffronMart.asm
new file mode 100755
index 00000000..ebb3cddf
--- /dev/null
+++ b/scripts/SaffronMart.asm
@@ -0,0 +1,15 @@
+SaffronMart_Script:
+ jp EnableAutoTextBoxDrawing
+
+SaffronMart_TextPointers:
+ dw SaffronCashierText
+ dw SaffronMartText2
+ dw SaffronMartText3
+
+SaffronMartText2:
+ TX_FAR _SaffronMartText2
+ db "@"
+
+SaffronMartText3:
+ TX_FAR _SaffronMartText3
+ db "@"
diff --git a/scripts/SaffronPidgeyHouse.asm b/scripts/SaffronPidgeyHouse.asm
new file mode 100755
index 00000000..f38fbfdb
--- /dev/null
+++ b/scripts/SaffronPidgeyHouse.asm
@@ -0,0 +1,27 @@
+SaffronPidgeyHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+SaffronPidgeyHouse_TextPointers:
+ dw SaffronHouse1Text1
+ dw SaffronHouse1Text2
+ dw SaffronHouse1Text3
+ dw SaffronHouse1Text4
+
+SaffronHouse1Text1:
+ TX_FAR _SaffronHouse1Text1
+ db "@"
+
+SaffronHouse1Text2:
+ TX_FAR _SaffronHouse1Text2
+ TX_ASM
+ ld a, PIDGEY
+ call PlayCry
+ jp TextScriptEnd
+
+SaffronHouse1Text3:
+ TX_FAR _SaffronHouse1Text3
+ db "@"
+
+SaffronHouse1Text4:
+ TX_FAR _SaffronHouse1Text4
+ db "@"
diff --git a/scripts/SaffronPokecenter.asm b/scripts/SaffronPokecenter.asm
new file mode 100755
index 00000000..435367ea
--- /dev/null
+++ b/scripts/SaffronPokecenter.asm
@@ -0,0 +1,29 @@
+SaffronPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+SaffronPokecenter_TextPointers:
+ dw SaffronHealNurseText
+ dw SaffronPokecenterText2
+ dw SaffronPokecenterText3
+ dw SaffronTradeNurseText
+ dw SaffronPokecenterText5
+
+SaffronHealNurseText:
+ TX_POKECENTER_NURSE
+
+SaffronPokecenterText2:
+ TX_FAR _SaffronPokecenterText2
+ db "@"
+
+SaffronPokecenterText3:
+ TX_FAR _SaffronPokecenterText3
+ db "@"
+
+SaffronTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+SaffronPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/SeafoamIslands1F.asm b/scripts/SeafoamIslands1F.asm
new file mode 100755
index 00000000..b024a6bd
--- /dev/null
+++ b/scripts/SeafoamIslands1F.asm
@@ -0,0 +1,47 @@
+SeafoamIslands1F_Script:
+ call EnableAutoTextBoxDrawing
+ SetEvent EVENT_IN_SEAFOAM_ISLANDS
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_4483b
+ ld hl, Seafoam1HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ EventFlagAddress hl, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_44819
+ SetEventReuseHL EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_1
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_1
+ ld [wObjectToShow], a
+ jr .asm_44825
+.asm_44819
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM1_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_1F_BOULDER_2
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_2
+ ld [wObjectToShow], a
+.asm_44825
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+.asm_4483b
+ ld a, SEAFOAM_ISLANDS_B1F
+ ld [wDungeonWarpDestinationMap], a
+ ld hl, Seafoam1HolesCoords
+ jp IsPlayerOnDungeonWarp
+
+Seafoam1HolesCoords:
+ db $06,$11
+ db $06,$18
+ db $ff
+
+SeafoamIslands1F_TextPointers:
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/SeafoamIslandsB1F.asm b/scripts/SeafoamIslandsB1F.asm
new file mode 100755
index 00000000..a4c5767b
--- /dev/null
+++ b/scripts/SeafoamIslandsB1F.asm
@@ -0,0 +1,46 @@
+SeafoamIslandsB1F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_46362
+ ld hl, Seafoam2HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ EventFlagAddress hl, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_46340
+ SetEventReuseHL EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_1
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_1
+ ld [wObjectToShow], a
+ jr .asm_4634c
+.asm_46340
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM2_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_B1F_BOULDER_2
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_2
+ ld [wObjectToShow], a
+.asm_4634c
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+.asm_46362
+ ld a, SEAFOAM_ISLANDS_B2F
+ ld [wDungeonWarpDestinationMap], a
+ ld hl, Seafoam2HolesCoords
+ jp IsPlayerOnDungeonWarp
+
+Seafoam2HolesCoords:
+ db $06,$12
+ db $06,$17
+ db $ff
+
+SeafoamIslandsB1F_TextPointers:
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/SeafoamIslandsB2F.asm b/scripts/SeafoamIslandsB2F.asm
new file mode 100755
index 00000000..eb6d2437
--- /dev/null
+++ b/scripts/SeafoamIslandsB2F.asm
@@ -0,0 +1,46 @@
+SeafoamIslandsB2F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_4649e
+ ld hl, Seafoam3HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ EventFlagAddress hl, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_4647c
+ SetEventReuseHL EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_1
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_3
+ ld [wObjectToShow], a
+ jr .asm_46488
+.asm_4647c
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_B2F_BOULDER_2
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_4
+ ld [wObjectToShow], a
+.asm_46488
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+.asm_4649e
+ ld a, SEAFOAM_ISLANDS_B3F
+ ld [wDungeonWarpDestinationMap], a
+ ld hl, Seafoam3HolesCoords
+ jp IsPlayerOnDungeonWarp
+
+Seafoam3HolesCoords:
+ db $06,$13
+ db $06,$16
+ db $ff
+
+SeafoamIslandsB2F_TextPointers:
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/SeafoamIslandsB3F.asm b/scripts/SeafoamIslandsB3F.asm
new file mode 100755
index 00000000..c8fec338
--- /dev/null
+++ b/scripts/SeafoamIslandsB3F.asm
@@ -0,0 +1,149 @@
+SeafoamIslandsB3F_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jr z, .asm_465dc
+ ld hl, Seafoam4HolesCoords
+ call CheckBoulderCoords
+ ret nc
+ EventFlagAddress hl, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_465b8
+ SetEventReuseHL EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_1
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_1
+ ld [wObjectToShow], a
+ jr .asm_465c4
+.asm_465b8
+ SetEventAfterBranchReuseHL EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
+ ld a, HS_SEAFOAM_ISLANDS_B3F_BOULDER_2
+ ld [wObjectToHide], a
+ ld a, HS_SEAFOAM_ISLANDS_B4F_BOULDER_2
+ ld [wObjectToShow], a
+.asm_465c4
+ ld a, [wObjectToHide]
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, [wObjectToShow]
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ jr .asm_465ed
+.asm_465dc
+ ld a, SEAFOAM_ISLANDS_B4F
+ ld [wDungeonWarpDestinationMap], a
+ ld hl, Seafoam4HolesCoords
+ call IsPlayerOnDungeonWarp
+ ld a, [wd732]
+ bit 4, a
+ ret nz
+.asm_465ed
+ ld hl, SeafoamIslandsB3F_ScriptPointers
+ ld a, [wSeafoamIslandsB3FCurScript]
+ jp CallFunctionInTable
+
+Seafoam4HolesCoords:
+ db $10,$03
+ db $10,$06
+ db $ff
+
+SeafoamIslandsB3F_ScriptPointers:
+ dw SeafoamIslands4Script0
+ dw SeafoamIslands4Script1
+ dw SeafoamIslands4Script2
+ dw SeafoamIslands4Script3
+
+SeafoamIslands4Script0:
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
+ ret z
+ ld a, [wYCoord]
+ cp $8
+ ret nz
+ ld a, [wXCoord]
+ cp $f
+ ret nz
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, RLEMovement46632
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld hl, wFlags_D733
+ set 2, [hl]
+ ld a, $1
+ ld [wSeafoamIslandsB3FCurScript], a
+ ret
+
+RLEMovement46632:
+ db D_DOWN,6
+ db D_RIGHT,5
+ db D_DOWN,3
+ db $ff
+
+SeafoamIslands4Script1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld a, $0
+ ld [wSeafoamIslandsB3FCurScript], a
+ ret
+
+SeafoamIslands4Script2:
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
+ ret z
+ ld a, [wXCoord]
+ cp $12
+ jr z, .asm_4665e
+ cp $13
+ ld a, $0
+ jr nz, .asm_4667b
+ ld de, RLEData_4667f
+ jr .asm_46661
+.asm_4665e
+ ld de, RLEData_46688
+.asm_46661
+ ld hl, wSimulatedJoypadStatesEnd
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ xor a
+ ld [wSpriteStateData2 + $06], a
+ ld hl, wd730
+ set 7, [hl]
+ ld hl, wFlags_D733
+ set 2, [hl]
+ ld a, $3
+.asm_4667b
+ ld [wSeafoamIslandsB3FCurScript], a
+ ret
+
+RLEData_4667f:
+ db D_DOWN,$06
+ db D_RIGHT,$02
+ db D_DOWN,$04
+ db D_LEFT,$01
+ db $FF
+
+RLEData_46688:
+ db D_DOWN,$06
+ db D_RIGHT,$02
+ db D_DOWN,$04
+ db $FF
+
+SeafoamIslands4Script3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld a, $0
+ ld [wSeafoamIslandsB3FCurScript], a
+ ret
+
+SeafoamIslandsB3F_TextPointers:
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
diff --git a/scripts/SeafoamIslandsB4F.asm b/scripts/SeafoamIslandsB4F.asm
new file mode 100755
index 00000000..1383a561
--- /dev/null
+++ b/scripts/SeafoamIslandsB4F.asm
@@ -0,0 +1,174 @@
+SeafoamIslandsB4F_Script:
+ call EnableAutoTextBoxDrawing
+ ld a, [wSeafoamIslandsB4FCurScript]
+ ld hl, SeafoamIslandsB4F_ScriptPointers
+ jp CallFunctionInTable
+
+SeafoamIslands5Script_467a5:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wSeafoamIslandsB4FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+SeafoamIslandsB4F_ScriptPointers:
+ dw SeafoamIslands5Script0
+ dw SeafoamIslands5Script1
+ dw SeafoamIslands5Script2
+ dw SeafoamIslands5Script3
+ dw SeafoamIslands5Script4
+
+SeafoamIslands5Script4:
+ ld a, [wIsInBattle]
+ cp $ff
+ jr z, SeafoamIslands5Script_467a5
+ call EndTrainerBattle
+ ld a, $0
+ ld [wSeafoamIslandsB4FCurScript], a
+ ret
+
+SeafoamIslands5Script0:
+ CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
+ ret z
+ ld hl, .Coords
+ call ArePlayerCoordsInArray
+ ret nc
+ ld a, [wCoordIndex]
+ cp $3
+ jr nc, .asm_467e6
+ ld a, NPC_MOVEMENT_UP
+ ld [wSimulatedJoypadStatesEnd + 1], a
+ ld a, 2
+ jr .asm_467e8
+.asm_467e6
+ ld a, 1
+.asm_467e8
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ call StartSimulatingJoypadStates
+ ld hl, wFlags_D733
+ res 2, [hl]
+ ld a, $1
+ ld [wSeafoamIslandsB4FCurScript], a
+ ret
+
+.Coords
+ db $11,$14
+ db $11,$15
+ db $10,$14
+ db $10,$15
+ db $FF
+
+SeafoamIslands5Script1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $0
+ ld [wSeafoamIslandsB4FCurScript], a
+ ret
+
+SeafoamIslands5Script2:
+ CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
+ ld a, $0
+ jr z, .asm_46849
+ ld hl, .Coords
+ call ArePlayerCoordsInArray
+ ld a, $0
+ jr nc, .asm_46849
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_46837
+ ld de, RLEMovementData_46859
+ jr .asm_4683a
+.asm_46837
+ ld de, RLEMovementData_46852
+.asm_4683a
+ ld hl, wSimulatedJoypadStatesEnd
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+.asm_46849
+ ld [wSeafoamIslandsB4FCurScript], a
+ ret
+
+.Coords
+ db $0E,$04
+ db $0E,$05
+ db $FF
+
+RLEMovementData_46852:
+ db D_UP,$03
+ db D_RIGHT,$02
+ db D_UP,$01
+ db $FF
+
+RLEMovementData_46859:
+ db D_UP,$03
+ db D_RIGHT,$03
+ db D_UP,$01
+ db $FF
+
+SeafoamIslands5Script3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ ld b, a
+ cp $1
+ call z, SeaFoamIslands5Script_46872
+ ld a, b
+ and a
+ ret nz
+ ld a, $0
+ ld [wSeafoamIslandsB4FCurScript], a
+ ret
+
+SeaFoamIslands5Script_46872:
+ xor a
+ ld [wWalkBikeSurfState], a
+ ld [wWalkBikeSurfStateCopy], a
+ jp ForceBikeOrSurf
+
+SeafoamIslandsB4F_TextPointers:
+ dw BoulderText
+ dw BoulderText
+ dw ArticunoText
+ dw SeafoamIslands5Text4
+ dw SeafoamIslands5Text5
+
+ArticunoTrainerHeader:
+ dbEventFlagBit EVENT_BEAT_ARTICUNO
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_ARTICUNO
+ dw ArticunoBattleText ; TextBeforeBattle
+ dw ArticunoBattleText ; TextAfterBattle
+ dw ArticunoBattleText ; TextEndBattle
+ dw ArticunoBattleText ; TextEndBattle
+
+ db $ff
+
+ArticunoText:
+ TX_ASM
+ ld hl, ArticunoTrainerHeader
+ call TalkToTrainer
+ ld a, $4
+ ld [wSeafoamIslandsB4FCurScript], a
+ jp TextScriptEnd
+
+ArticunoBattleText:
+ TX_FAR _ArticunoBattleText
+ TX_ASM
+ ld a, ARTICUNO
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+SeafoamIslands5Text4:
+ TX_FAR _SeafoamIslands5Text4
+ db "@"
+
+SeafoamIslands5Text5:
+ TX_FAR _SeafoamIslands5Text5
+ db "@"
diff --git a/scripts/SilphCo10F.asm b/scripts/SilphCo10F.asm
new file mode 100755
index 00000000..40506682
--- /dev/null
+++ b/scripts/SilphCo10F.asm
@@ -0,0 +1,122 @@
+SilphCo10F_Script:
+ call SilphCo10Script_5a14f
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo10TrainerHeader0
+ ld de, SilphCo10F_ScriptPointers
+ ld a, [wSilphCo10FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo10FCurScript], a
+ ret
+
+SilphCo10Script_5a14f:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo10GateCoords
+ call SilphCo2Script_59d43
+ call SilphCo10Text_5a176
+ CheckEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR
+ ret nz
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 4, 5
+ predef_jump ReplaceTileBlock
+
+SilphCo10GateCoords:
+ db $04,$05
+ db $FF
+
+SilphCo10Text_5a176:
+ ld a, [$ffe0]
+ and a
+ ret z
+ SetEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR
+ ret
+
+SilphCo10F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo10F_TextPointers:
+ dw SilphCo10Text1
+ dw SilphCo10Text2
+ dw SilphCo10Text3
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+SilphCo10TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_10F_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_10F_TRAINER_0
+ dw SilphCo10BattleText1 ; TextBeforeBattle
+ dw SilphCo10AfterBattleText1 ; TextAfterBattle
+ dw SilphCo10EndBattleText1 ; TextEndBattle
+ dw SilphCo10EndBattleText1 ; TextEndBattle
+
+SilphCo10TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_10F_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_10F_TRAINER_1
+ dw SilphCo10BattleText2 ; TextBeforeBattle
+ dw SilphCo10AfterBattleText2 ; TextAfterBattle
+ dw SilphCo10EndBattleText2 ; TextEndBattle
+ dw SilphCo10EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+SilphCo10Text1:
+ TX_ASM
+ ld hl, SilphCo10TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo10Text2:
+ TX_ASM
+ ld hl, SilphCo10TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo10Text3:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ ld hl, SilphCo10Text_5a1d8
+ jr nz, .asm_cf85f
+ ld hl, SilphCo10Text_5a1d3
+.asm_cf85f
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo10Text_5a1d3:
+ TX_FAR _SilphCo10Text_5a1d3
+ db "@"
+
+SilphCo10Text_5a1d8:
+ TX_FAR _SilphCo10Text_5a1d8
+ db "@"
+
+SilphCo10BattleText1:
+ TX_FAR _SilphCo10BattleText1
+ db "@"
+
+SilphCo10EndBattleText1:
+ TX_FAR _SilphCo10EndBattleText1
+ db "@"
+
+SilphCo10AfterBattleText1:
+ TX_FAR _SilphCo10AfterBattleText1
+ db "@"
+
+SilphCo10BattleText2:
+ TX_FAR _SilphCo10BattleText2
+ db "@"
+
+SilphCo10EndBattleText2:
+ TX_FAR _SilphCo10EndBattleText2
+ db "@"
+
+SilphCo10AfterBattleText2:
+ TX_FAR _SilphCo10AfterBattleText2
+ db "@"
diff --git a/scripts/SilphCo11F.asm b/scripts/SilphCo11F.asm
new file mode 100755
index 00000000..e58dbebe
--- /dev/null
+++ b/scripts/SilphCo11F.asm
@@ -0,0 +1,595 @@
+SilphCo11F_Script:
+ call SilphCo11Script_62127
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo11TrainerHeader0
+ ld de, SilphCo11F_ScriptPointers
+ ld a, [wSilphCo11FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo11FCurScript], a
+ ret
+
+SilphCo11Script_62127:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo11GateCoords
+ call SilphCo11Script_6214f
+ call SilphCo11Script_6217b
+ CheckEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR
+ ret nz
+ ld a, $20
+ ld [wNewTileBlockID], a
+ lb bc, 6, 3
+ predef ReplaceTileBlock
+ ret
+
+SilphCo11GateCoords:
+ db $06,$03
+ db $FF
+
+SilphCo11Script_6214f:
+ push hl
+ ld hl, wCardKeyDoorY
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_62143
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_6215f
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_62154
+ inc hl
+ jr .asm_62143
+.asm_62154
+ ld a, [hli]
+ cp c
+ jr nz, .asm_62143
+ ld hl, wCardKeyDoorY
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_6215f
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo11Script_6217b:
+ ld a, [$ffe0]
+ and a
+ ret z
+ SetEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR
+ ret
+
+SilphCo11Script_62185:
+ xor a
+ ld [wJoyIgnore], a
+SilphCo11Script_62189:
+ ld [wSilphCo11FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+SilphCo11F_ScriptPointers:
+ dw SilphCo11Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw SilphCo11Script3
+ dw SilphCo11Script4
+ dw SilphCo11Script5
+ dw SilphCo11Script6
+ dw SilphCo11Script7
+ dw SilphCo11Script8
+ dw SilphCo11Script9
+ dw SilphCo11Script10
+ dw SilphCo11Script11
+ dw SilphCo11Script12
+ dw SilphCo11Script13
+ dw SilphCo11Script14
+
+SilphCo11Script0:
+ CheckEvent EVENT_BEAT_SILPH_CO_11F_TRAINER_0
+ call z, SilphCo11Script_6229c
+ CheckEvent EVENT_782
+ ret nz
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ call z, SilphCo11Script_621c5
+ ret
+
+SilphCo11Script_621c5:
+ ld hl, CoordsData_62211
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ ld a, [wCoordIndex]
+ ld [wcf0d], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $3
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_62216
+ call MoveSprite
+ ld a, $4
+ call SilphCo11Script_62189
+ ret
+
+CoordsData_62211:
+ db $0D,$06
+ db $0C,$07
+ db $FF
+
+MovementData_62216:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+SilphCo11Script_621ff:
+ ld [wPlayerMovingDirection], a
+ ld a, b
+ ld [wSpriteStateData1 + 3 * $10 + 9], a
+ ld a, $2
+ ld [wSpriteStateData1 + 3 * $10 + 1], a
+ ret
+
+SilphCo11Script3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, SilphCo11Script_62185
+ ld a, [wcf0d]
+ cp $1
+ jr z, .asm_6223c
+ ld a, PLAYER_DIR_LEFT
+ ld b, SPRITE_FACING_RIGHT
+ jr .asm_62240
+.asm_6223c
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+.asm_62240
+ call SilphCo11Script_621ff
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, $7
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call GBFadeOutToBlack
+ callba Func_f25a0
+ call UpdateSprites
+ call Delay3
+ call GBFadeInFromBlack
+ SetEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ xor a
+ ld [wJoyIgnore], a
+ jp SilphCo11Script_62189
+
+SilphCo11Script4:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $3
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld a, [wcf0d]
+ cp $1
+ jr z, .asm_62284
+ ld a, PLAYER_DIR_LEFT
+ ld b, SPRITE_FACING_RIGHT
+ jr .asm_62288
+.asm_62284
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+.asm_62288
+ call SilphCo11Script_621ff
+ call Delay3
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SilphCo10Text_62528
+ ld de, SilphCo10Text_62528
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ jp SilphCo11Script_62189
+
+SilphCo11Script_6229c:
+ ld a, [wYCoord]
+ cp $3
+ ret nz
+ ld a, [wXCoord]
+ cp $4
+ ret nc
+ ResetEvents EVENT_780, EVENT_781
+ ld a, [wXCoord]
+ cp $3
+ jr z, .asm_622c3
+ SetEventReuseHL EVENT_780
+ ld a, [wXCoord]
+ cp $2
+ jr z, .asm_622c3
+ ResetEventReuseHL EVENT_780
+ SetEventReuseHL EVENT_781
+.asm_622c3
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ xor a
+ ld [hJoyHeld], a
+ ld a, $fc
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $ff
+ ld [wJoyIgnore], a
+ SetEvent EVENT_782
+ ld a, $5
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11MovementData_622f5:
+ db $5
+ db $5
+ db $5
+ db $5
+ db $5
+ db $ff
+
+SilphCo11MovementData_622fb:
+ db $5
+ db $5
+ db $5
+ db $5
+ db $ff
+
+SilphCo11MovementData_62300:
+ db $5
+ db $5
+ db $5
+ db $5
+ db $ff
+
+SilphCo11MovementData_62305:
+ db $5
+ db $5
+ db $5
+ db $5
+ db $5
+ db $ff
+
+SilphCo11MovementData_6230b:
+ db $5
+ db $5
+ db $6
+ db $5
+ db $5
+ db $ff
+
+SilphCo11MovementData_62311:
+ db $5
+ db $5
+ db $5
+ db $6
+ db $5
+ db $5
+ db $ff
+
+SilphCo11Script5:
+ ld de, SilphCo11MovementData_622f5
+ CheckEitherEventSet EVENT_780, EVENT_781
+ and a
+ jr z, .asm_6232d
+ ld de, SilphCo11MovementData_62300
+ cp $1
+ jr z, .asm_6232d
+ ld de, SilphCo11MovementData_6230b
+.asm_6232d
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $6
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11Script6:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+SilphCo11Script7:
+ ld a, $2
+ ld [wSpriteStateData1 + 4 * $10 + 1], a
+ ld hl, wSpriteStateData1 + 4 * $10 + 9
+ ld [hl], SPRITE_FACING_RIGHT
+ CheckEitherEventSet EVENT_780, EVENT_781
+ and a
+ jr z, .asm_6235e
+ ld [hl], SPRITE_FACING_UP
+.asm_6235e
+ call Delay3
+ ld a, $fc
+ ld [wJoyIgnore], a
+SilphCo11Script8:
+ ld de, SilphCo11MovementData_622fb
+ CheckEitherEventSet EVENT_780, EVENT_781
+ and a
+ jr z, .asm_6237b
+ ld de, SilphCo11MovementData_62305
+ cp $1
+ jr z, .asm_6237b
+ ld de, SilphCo11MovementData_62311
+.asm_6237b
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $9
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11Script9:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $fc
+ ld [wJoyIgnore], a
+SilphCo11Script10:
+ ld a, $2
+ ld [wSpriteStateData1 + 6 * $10 + 1], a
+ ld hl, wSpriteStateData1 + 6 * $10 + 9
+ ld [hl], SPRITE_FACING_UP
+ CheckEitherEventSet EVENT_780, EVENT_781
+ and a
+ jr z, .asm_623b1
+ ld [hl], SPRITE_FACING_LEFT
+.asm_623b1
+ call Delay3
+ ld a, $9
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+SilphCo11Script11:
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SilphCo11Text_624c2
+ ld de, SilphCo11Text_624c2
+ call SaveEndBattleTextPointers
+ ld a, OPP_ROCKET
+ ld [wCurOpponent], a
+ ld a, $2d
+ ld [wTrainerNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ ld a, $c
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11Script12:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, SilphCo11Script_62185
+ ld a, $2
+ ld [wSpriteStateData1 + 4 * $10 + 1], a
+ ld [wSpriteStateData1 + 6 * $10 + 1], a
+ xor a
+ ld [wSpriteStateData1 + 4 * $10 + 9], a
+ ld [wSpriteStateData1 + 6 * $10 + 9], a
+ ld a, $fc
+ ld [wJoyIgnore], a
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld a, $a
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ call StopAllMusic
+ ld c, BANK(Music_MeetJessieJames)
+ ld a, MUSIC_MEET_JESSIE_JAMES
+ call PlayMusic
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $d
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11Script13:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ call GBFadeOutToBlack
+ ld a, HS_SILPH_CO_11F_JAMES
+ call SilphCo11Script_6246d
+ ld a, HS_SILPH_CO_11F_JESSIE
+ call SilphCo11Script_6246d
+ call UpdateSprites
+ call Delay3
+ call GBFadeInFromBlack
+ ld a, $e
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11Script14:
+ call PlayDefaultMusic
+ xor a
+ ld [hJoyHeld], a
+ ld [wJoyIgnore], a
+ ResetEvent EVENT_782
+ SetEventReuseHL EVENT_BEAT_SILPH_CO_11F_TRAINER_0
+ ld a, $0
+ call SilphCo11Script_62189
+ ret
+
+SilphCo11Script_6245e:
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ call UpdateSprites
+ call Delay3
+ ret
+
+SilphCo11Script_6246d:
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ret
+
+SilphCo11F_TextPointers:
+ dw SilphCo11Text1
+ dw SilphCo11Text2
+ dw SilphCo11Text3
+ dw SilphCo11Text4
+ dw SilphCo11Text5
+ dw SilphCo11Text6
+ dw SilphCo11Text7
+ dw SilphCo11Text8
+ dw SilphCo11Text9
+ dw SilphCo11Text10
+
+SilphCo11TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_11F_TRAINER_1
+ db ($3 << 4)
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_11F_TRAINER_1
+ dw SilphCo11Trainer1BattleText
+ dw SilphCo11Trainer1AfterBattleText
+ dw SilphCo11Trainer1EndBattleText
+ dw SilphCo11Trainer1EndBattleText
+
+ db $ff ; no more trainers
+
+SilphCo11Text4:
+SilphCo11Text6:
+SilphCo11Text8:
+ TX_FAR _SilphCoJessieJamesText1
+ TX_ASM
+ ld c, 10
+ call DelayFrames
+ ld a, $4
+ ld [wPlayerMovingDirection], a
+ ld a, $0
+ ld [wEmotionBubbleSpriteIndex], a
+ ld a, EXCLAMATION_BUBBLE
+ ld [wWhichEmotionBubble], a
+ predef EmotionBubble
+ ld c, 20
+ call DelayFrames
+ jp TextScriptEnd
+
+SilphCo11Text9:
+ TX_FAR _SilphCoJessieJamesText2
+ db "@"
+
+SilphCo11Text_624c2:
+ TX_FAR _SilphCoJessieJamesText3
+ db "@"
+
+SilphCo11Text10:
+ TX_FAR _SilphCoJessieJamesText4
+ TX_ASM
+ ld c, 64
+ call DelayFrames
+ jp TextScriptEnd
+
+SilphCo11Text1:
+ TX_ASM
+ CheckEvent EVENT_GOT_MASTER_BALL
+ jp nz, .asm_62500
+ ld hl, SilphCo11Text_62509
+ call PrintText
+ lb bc, MASTER_BALL, 1
+ call GiveItem
+ jr nc, .asm_624f8
+ ld hl, SilphCo11Text_6250e
+ call PrintText
+ SetEvent EVENT_GOT_MASTER_BALL
+ jr .asm_62506
+.asm_624f8
+ ld hl, SilphCo11Text_62519
+ call PrintText
+ jr .asm_62506
+
+.asm_62500
+ ld hl, SilphCo11Text_62514
+ call PrintText
+.asm_62506
+ jp TextScriptEnd
+
+SilphCo11Text_62509:
+ TX_FAR _SilphCoPresidentText
+ db "@"
+
+SilphCo11Text_6250e:
+ TX_FAR _ReceivedSilphCoMasterBallText
+ TX_SFX_KEY_ITEM
+ db "@"
+
+SilphCo11Text_62514:
+ TX_FAR _SilphCo10Text_6231c
+ db "@"
+
+SilphCo11Text_62519:
+ TX_FAR _SilphCoMasterBallNoRoomText
+ db "@"
+
+SilphCo11Text2:
+ TX_FAR _SilphCo11Text2
+ db "@"
+
+SilphCo11Text3:
+ TX_FAR _SilphCo11Text3
+ db "@"
+
+SilphCo10Text_62528:
+ TX_FAR _SilphCo10Text_62330
+ db "@"
+
+SilphCo11Text7:
+ TX_FAR _SilphCo10Text_62335
+ db "@"
+
+SilphCo11Text5:
+ TX_ASM
+ ld hl, SilphCo11TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo11Trainer1BattleText:
+ TX_FAR _SilphCo11BattleText2
+ db "@"
+
+SilphCo11Trainer1EndBattleText:
+ TX_FAR _SilphCo11EndBattleText2
+ db "@"
+
+SilphCo11Trainer1AfterBattleText:
+ TX_FAR _SilphCo11AfterBattleText2
+ db "@"
diff --git a/scripts/silphco11_2.asm b/scripts/SilphCo11F_2.asm
index bf575de5..bf575de5 100755
--- a/scripts/silphco11_2.asm
+++ b/scripts/SilphCo11F_2.asm
diff --git a/scripts/SilphCo1F.asm b/scripts/SilphCo1F.asm
new file mode 100755
index 00000000..6ccaa29c
--- /dev/null
+++ b/scripts/SilphCo1F.asm
@@ -0,0 +1,16 @@
+SilphCo1F_Script:
+ call EnableAutoTextBoxDrawing
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ ret z
+ CheckAndSetEvent EVENT_SILPH_CO_RECEPTIONIST_AT_DESK
+ ret nz
+ ld a, HS_SILPH_CO_1F_RECEPTIONIST
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+
+SilphCo1F_TextPointers:
+ dw SilphCo1Text1
+
+SilphCo1Text1:
+ TX_FAR _SilphCo1Text1
+ db "@"
diff --git a/scripts/SilphCo2F.asm b/scripts/SilphCo2F.asm
new file mode 100755
index 00000000..5fd542cb
--- /dev/null
+++ b/scripts/SilphCo2F.asm
@@ -0,0 +1,245 @@
+SilphCo2F_Script:
+ call SilphCo2Script_59d07
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo2TrainerHeader0
+ ld de, SilphCo2F_ScriptPointers
+ ld a, [wSilphCo2FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo2FCurScript], a
+ ret
+
+SilphCo2Script_59d07:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo2GateCoords
+ call SilphCo2Script_59d43
+ call SilphCo2Script_59d6f
+ CheckEvent EVENT_SILPH_CO_2_UNLOCKED_DOOR1
+ jr nz, .asm_59d2e
+ push af
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 2, 2
+ predef ReplaceTileBlock
+ pop af
+.asm_59d2e
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_2_UNLOCKED_DOOR2, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
+ ret nz
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 5, 2
+ predef_jump ReplaceTileBlock
+
+SilphCo2GateCoords:
+ db $02,$02
+ db $05,$02
+ db $FF
+
+SilphCo2Script_59d43:
+ push hl
+ ld hl, wCardKeyDoorY
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_59d4f
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_59d6b
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_59d60
+ inc hl
+ jr .asm_59d4f
+.asm_59d60
+ ld a, [hli]
+ cp c
+ jr nz, .asm_59d4f
+ ld hl, wCardKeyDoorY
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_59d6b
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo2Script_59d6f:
+ EventFlagAddress hl, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .next
+ SetEventReuseHL EVENT_SILPH_CO_2_UNLOCKED_DOOR1
+ ret
+.next
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_2_UNLOCKED_DOOR2, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
+ ret
+
+SilphCo2F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo2F_TextPointers:
+ dw SilphCo2Text1
+ dw SilphCo2Text2
+ dw SilphCo2Text3
+ dw SilphCo2Text4
+ dw SilphCo2Text5
+
+SilphCo2TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_0
+ dw SilphCo2BattleText1 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText1 ; TextAfterBattle
+ dw SilphCo2EndBattleText1 ; TextEndBattle
+ dw SilphCo2EndBattleText1 ; TextEndBattle
+
+SilphCo2TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_1
+ dw SilphCo2BattleText2 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText2 ; TextAfterBattle
+ dw SilphCo2EndBattleText2 ; TextEndBattle
+ dw SilphCo2EndBattleText2 ; TextEndBattle
+
+SilphCo2TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_2
+ dw SilphCo2BattleText3 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText3 ; TextAfterBattle
+ dw SilphCo2EndBattleText3 ; TextEndBattle
+ dw SilphCo2EndBattleText3 ; TextEndBattle
+
+SilphCo2TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_3
+ dw SilphCo2BattleText4 ; TextBeforeBattle
+ dw SilphCo2AfterBattleText4 ; TextAfterBattle
+ dw SilphCo2EndBattleText4 ; TextEndBattle
+ dw SilphCo2EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+SilphCo2Text1:
+ TX_ASM
+ CheckEvent EVENT_GOT_TM36
+ jr nz, .asm_59de4
+ ld hl, SilphCo2Text_59ded
+ call PrintText
+ lb bc, TM_36, 1
+ call GiveItem
+ ld hl, TM36NoRoomText
+ jr nc, .asm_59de7
+ SetEvent EVENT_GOT_TM36
+ ld hl, ReceivedTM36Text
+ jr .asm_59de7
+.asm_59de4
+ ld hl, TM36ExplanationText
+.asm_59de7
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo2Text_59ded:
+ TX_FAR _SilphCo2Text_59ded
+ db "@"
+
+ReceivedTM36Text:
+ TX_FAR _ReceivedTM36Text
+ TX_SFX_ITEM_1
+ db "@"
+
+TM36ExplanationText:
+ TX_FAR _TM36ExplanationText
+ db "@"
+
+TM36NoRoomText:
+ TX_FAR _TM36NoRoomText
+ db "@"
+
+SilphCo2Text2:
+ TX_ASM
+ ld hl, SilphCo2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2Text3:
+ TX_ASM
+ ld hl, SilphCo2TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2Text4:
+ TX_ASM
+ ld hl, SilphCo2TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2Text5:
+ TX_ASM
+ ld hl, SilphCo2TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo2BattleText1:
+ TX_FAR _SilphCo2BattleText1
+ db "@"
+
+SilphCo2EndBattleText1:
+ TX_FAR _SilphCo2EndBattleText1
+ db "@"
+
+SilphCo2AfterBattleText1:
+ TX_FAR _SilphCo2AfterBattleText1
+ db "@"
+
+SilphCo2BattleText2:
+ TX_FAR _SilphCo2BattleText2
+ db "@"
+
+SilphCo2EndBattleText2:
+ TX_FAR _SilphCo2EndBattleText2
+ db "@"
+
+SilphCo2AfterBattleText2:
+ TX_FAR _SilphCo2AfterBattleText2
+ db "@"
+
+SilphCo2BattleText3:
+ TX_FAR _SilphCo2BattleText3
+ db "@"
+
+SilphCo2EndBattleText3:
+ TX_FAR _SilphCo2EndBattleText3
+ db "@"
+
+SilphCo2AfterBattleText3:
+ TX_FAR _SilphCo2AfterBattleText3
+ db "@"
+
+SilphCo2BattleText4:
+ TX_FAR _SilphCo2BattleText4
+ db "@"
+
+SilphCo2EndBattleText4:
+ TX_FAR _SilphCo2EndBattleText4
+ db "@"
+
+SilphCo2AfterBattleText4:
+ TX_FAR _SilphCo2AfterBattleText4
+ db "@"
diff --git a/scripts/SilphCo3F.asm b/scripts/SilphCo3F.asm
new file mode 100755
index 00000000..42b5d611
--- /dev/null
+++ b/scripts/SilphCo3F.asm
@@ -0,0 +1,136 @@
+SilphCo3F_Script:
+ call SilphCo3Script_59f71
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo3TrainerHeader0
+ ld de, SilphCo3F_ScriptPointers
+ ld a, [wSilphCo3FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo3FCurScript], a
+ ret
+
+SilphCo3Script_59f71:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo3GateCoords
+ call SilphCo2Script_59d43
+ call SilphCo3Script_59fad
+ CheckEvent EVENT_SILPH_CO_3_UNLOCKED_DOOR1
+ jr nz, .asm_59f98
+ push af
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 4, 4
+ predef ReplaceTileBlock
+ pop af
+.asm_59f98
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_3_UNLOCKED_DOOR2, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
+ ret nz
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 4, 8
+ predef_jump ReplaceTileBlock
+
+SilphCo3GateCoords:
+ db $04,$04
+ db $04,$08
+ db $FF
+
+SilphCo3Script_59fad:
+ EventFlagAddress hl, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .next
+ SetEventReuseHL EVENT_SILPH_CO_3_UNLOCKED_DOOR1
+ ret
+.next
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_3_UNLOCKED_DOOR2, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
+ ret
+
+SilphCo3F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo3F_TextPointers:
+ dw SilphCo3Text1
+ dw SilphCo3Text2
+ dw SilphCo3Text3
+ dw PickUpItemText
+
+SilphCo3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_3F_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_3F_TRAINER_0
+ dw SilphCo3BattleText1 ; TextBeforeBattle
+ dw SilphCo3AfterBattleText1 ; TextAfterBattle
+ dw SilphCo3EndBattleText1 ; TextEndBattle
+ dw SilphCo3EndBattleText1 ; TextEndBattle
+
+SilphCo3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_3F_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_3F_TRAINER_1
+ dw SilphCo3BattleText2 ; TextBeforeBattle
+ dw SilphCo3AfterBattleText2 ; TextAfterBattle
+ dw SilphCo3EndBattleText2 ; TextEndBattle
+ dw SilphCo3EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+SilphCo3Text1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ ld hl, SilphCo3Text_59ffe
+ jr nz, .asm_59fee
+ ld hl, SilphCo3Text_59ff9
+.asm_59fee
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo3Text_59ff9:
+ TX_FAR _SilphCo3Text_59ff9
+ db "@"
+
+SilphCo3Text_59ffe:
+ TX_FAR _SilphCo3Text_59ffe
+ db "@"
+
+SilphCo3Text2:
+ TX_ASM
+ ld hl, SilphCo3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo3BattleText1:
+ TX_FAR _SilphCo3BattleText1
+ db "@"
+
+SilphCo3EndBattleText1:
+ TX_FAR _SilphCo3EndBattleText1
+ db "@"
+
+SilphCo3AfterBattleText1:
+ TX_FAR _SilphCo3AfterBattleText1
+ db "@"
+
+SilphCo3Text3:
+ TX_ASM
+ ld hl, SilphCo3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo3BattleText2:
+ TX_FAR _SilphCo3BattleText2
+ db "@"
+
+SilphCo3EndBattleText2:
+ TX_FAR _SilphCo3EndBattleText2
+ db "@"
+
+SilphCo3AfterBattleText2:
+ TX_FAR _SilphCo3AfterBattleText2
+ db "@"
diff --git a/scripts/SilphCo4F.asm b/scripts/SilphCo4F.asm
new file mode 100755
index 00000000..7d5072f6
--- /dev/null
+++ b/scripts/SilphCo4F.asm
@@ -0,0 +1,199 @@
+SilphCo4F_Script:
+ call SilphCo4Script_19d21
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo4TrainerHeader0
+ ld de, SilphCo4F_ScriptPointers
+ ld a, [wSilphCo4FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo4FCurScript], a
+ ret
+
+SilphCo4Script_19d21:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo4GateCoords
+ call SilphCo4Script_19d5d
+ call SilphCo4Script_19d89
+ CheckEvent EVENT_SILPH_CO_4_UNLOCKED_DOOR1
+ jr nz, .asm_19d48
+ push af
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 6, 2
+ predef ReplaceTileBlock
+ pop af
+.asm_19d48
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_4_UNLOCKED_DOOR2, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
+ ret nz
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 4, 6
+ predef_jump ReplaceTileBlock
+
+SilphCo4GateCoords:
+ db $06,$02
+ db $04,$06
+ db $FF
+
+SilphCo4Script_19d5d:
+ push hl
+ ld hl, wCardKeyDoorY
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_19d69
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_19d85
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_19d7a
+ inc hl
+ jr .asm_19d69
+.asm_19d7a
+ ld a, [hli]
+ cp c
+ jr nz, .asm_19d69
+ ld hl, wCardKeyDoorY
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_19d85
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo4Script_19d89:
+ EventFlagAddress hl, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .next
+ SetEventReuseHL EVENT_SILPH_CO_4_UNLOCKED_DOOR1
+ ret
+.next
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_4_UNLOCKED_DOOR2, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
+ ret
+
+SilphCo4F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo4F_TextPointers:
+ dw SilphCo4Text1
+ dw SilphCo4Text2
+ dw SilphCo4Text3
+ dw SilphCo4Text4
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+
+SilphCo4TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_0
+ dw SilphCo4BattleText2 ; TextBeforeBattle
+ dw SilphCo4AfterBattleText2 ; TextAfterBattle
+ dw SilphCo4EndBattleText2 ; TextEndBattle
+ dw SilphCo4EndBattleText2 ; TextEndBattle
+
+SilphCo4TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_1
+ dw SilphCo4BattleText3 ; TextBeforeBattle
+ dw SilphCo4AfterBattleText3 ; TextAfterBattle
+ dw SilphCo4EndBattleText3 ; TextEndBattle
+ dw SilphCo4EndBattleText3 ; TextEndBattle
+
+SilphCo4TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_2
+ dw SilphCo4BattleText4 ; TextBeforeBattle
+ dw SilphCo4AfterBattleText4 ; TextAfterBattle
+ dw SilphCo4EndBattleText4 ; TextEndBattle
+ dw SilphCo4EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+SilphCo4Text1:
+ TX_ASM
+ ld hl, SilphCo4Text_19de0
+ ld de, SilphCo4Text_19de5
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo4Text_19de0:
+ TX_FAR _SilphCo4Text_19de0
+ db "@"
+
+SilphCo4Text_19de5:
+ TX_FAR _SilphCo4Text_19de5
+ db "@"
+
+SilphCo4Text2:
+ TX_ASM
+ ld hl, SilphCo4TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo4BattleText2:
+ TX_FAR _SilphCo4BattleText2
+ db "@"
+
+SilphCo4EndBattleText2:
+ TX_FAR _SilphCo4EndBattleText2
+ db "@"
+
+SilphCo4AfterBattleText2:
+ TX_FAR _SilphCo4AfterBattleText2
+ db "@"
+
+SilphCo4Text3:
+ TX_ASM
+ ld hl, SilphCo4TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo4BattleText3:
+ TX_FAR _SilphCo4BattleText3
+ db "@"
+
+SilphCo4EndBattleText3:
+ TX_FAR _SilphCo4EndBattleText3
+ db "@"
+
+SilphCo4AfterBattleText3:
+ TX_FAR _SilphCo4AfterBattleText3
+ db "@"
+
+SilphCo4Text4:
+ TX_ASM
+ ld hl, SilphCo4TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo4BattleText4:
+ TX_FAR _SilphCo4BattleText4
+ db "@"
+
+SilphCo4EndBattleText4:
+ TX_FAR _SilphCo4EndBattleText4
+ db "@"
+
+SilphCo4AfterBattleText4:
+ TX_FAR _SilphCo4AfterBattleText4
+ db "@"
diff --git a/scripts/SilphCo5F.asm b/scripts/SilphCo5F.asm
new file mode 100755
index 00000000..d9deda5b
--- /dev/null
+++ b/scripts/SilphCo5F.asm
@@ -0,0 +1,221 @@
+SilphCo5F_Script:
+ call SilphCo5Script_19f4d
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo5TrainerHeader0
+ ld de, SilphCo5F_ScriptPointers
+ ld a, [wSilphCo5FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo5FCurScript], a
+ ret
+
+SilphCo5Script_19f4d:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo5GateCoords
+ call SilphCo4Script_19d5d
+ call SilphCo5Script_19f9e
+ CheckEvent EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ jr nz, .asm_19f74
+ push af
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 2, 3
+ predef ReplaceTileBlock
+ pop af
+.asm_19f74
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ jr nz, .asm_19f87
+ push af
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 6, 3
+ predef ReplaceTileBlock
+ pop af
+.asm_19f87
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR2
+ ret nz
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 5, 7
+ predef_jump ReplaceTileBlock
+
+SilphCo5GateCoords:
+ db $02,$03
+ db $06,$03
+ db $05,$07
+ db $FF
+
+SilphCo5Script_19f9e:
+ EventFlagAddress hl, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .next1
+ SetEventReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ ret
+.next1
+ cp $2
+ jr nz, .next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ ret
+.next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
+ ret
+
+SilphCo5F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo5F_TextPointers:
+ dw SilphCo5Text1
+ dw SilphCo5Text2
+ dw SilphCo5Text3
+ dw SilphCo5Text4
+ dw SilphCo5Text5
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw SilphCo5Text9
+ dw SilphCo5Text10
+ dw SilphCo5Text11
+
+SilphCo5TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_0
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_0
+ dw SilphCo5BattleText2 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText2 ; TextAfterBattle
+ dw SilphCo5EndBattleText2 ; TextEndBattle
+ dw SilphCo5EndBattleText2 ; TextEndBattle
+
+SilphCo5TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_1
+ dw SilphCo5BattleText3 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText3 ; TextAfterBattle
+ dw SilphCo5EndBattleText3 ; TextEndBattle
+ dw SilphCo5EndBattleText3 ; TextEndBattle
+
+SilphCo5TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_2
+ dw SilphCo5BattleText4 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText4 ; TextAfterBattle
+ dw SilphCo5EndBattleText4 ; TextEndBattle
+ dw SilphCo5EndBattleText4 ; TextEndBattle
+
+SilphCo5TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_3
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_3
+ dw SilphCo5BattleText5 ; TextBeforeBattle
+ dw SilphCo5AfterBattleText5 ; TextAfterBattle
+ dw SilphCo5EndBattleText5 ; TextEndBattle
+ dw SilphCo5EndBattleText5 ; TextEndBattle
+
+ db $ff
+
+SilphCo5Text1:
+ TX_ASM
+ ld hl, SilphCo5Text_1a010
+ ld de, SilphCo5Text_1a015
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo5Text_1a010:
+ TX_FAR _SilphCo5Text_1a010
+ db "@"
+
+SilphCo5Text_1a015:
+ TX_FAR _SilphCo5Text_1a015
+ db "@"
+
+SilphCo5Text2:
+ TX_ASM
+ ld hl, SilphCo5TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText2:
+ TX_FAR _SilphCo5BattleText2
+ db "@"
+
+SilphCo5EndBattleText2:
+ TX_FAR _SilphCo5EndBattleText2
+ db "@"
+
+SilphCo5AfterBattleText2:
+ TX_FAR _SilphCo5AfterBattleText2
+ db "@"
+
+SilphCo5Text3:
+ TX_ASM
+ ld hl, SilphCo5TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText3:
+ TX_FAR _SilphCo5BattleText3
+ db "@"
+
+SilphCo5EndBattleText3:
+ TX_FAR _SilphCo5EndBattleText3
+ db "@"
+
+SilphCo5AfterBattleText3:
+ TX_FAR _SilphCo5AfterBattleText3
+ db "@"
+
+SilphCo5Text4:
+ TX_ASM
+ ld hl, SilphCo5TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText4:
+ TX_FAR _SilphCo5BattleText4
+ db "@"
+
+SilphCo5EndBattleText4:
+ TX_FAR _SilphCo5EndBattleText4
+ db "@"
+
+SilphCo5AfterBattleText4:
+ TX_FAR _SilphCo5AfterBattleText4
+ db "@"
+
+SilphCo5Text5:
+ TX_ASM
+ ld hl, SilphCo5TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo5BattleText5:
+ TX_FAR _SilphCo5BattleText5
+ db "@"
+
+SilphCo5EndBattleText5:
+ TX_FAR _SilphCo5EndBattleText5
+ db "@"
+
+SilphCo5AfterBattleText5:
+ TX_FAR _SilphCo5AfterBattleText5
+ db "@"
+
+SilphCo5Text9:
+ TX_FAR _SilphCo5Text9
+ db "@"
+
+SilphCo5Text10:
+ TX_FAR _SilphCo5Text10
+ db "@"
+
+SilphCo5Text11:
+ TX_FAR _SilphCo5Text11
+ db "@"
diff --git a/scripts/SilphCo6F.asm b/scripts/SilphCo6F.asm
new file mode 100755
index 00000000..ddbcba79
--- /dev/null
+++ b/scripts/SilphCo6F.asm
@@ -0,0 +1,220 @@
+SilphCo6F_Script:
+ call SilphCo6Script_1a1bf
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo6TrainerHeader0
+ ld de, SilphCo6F_ScriptPointers
+ ld a, [wSilphCo6FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo6FCurScript], a
+ ret
+
+SilphCo6Script_1a1bf:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo6GateCoords
+ call SilphCo4Script_19d5d
+ call SilphCo6Script_1a1e6
+ CheckEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR
+ ret nz
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 6, 2
+ predef_jump ReplaceTileBlock
+
+SilphCo6GateCoords:
+ db $06,$02
+ db $FF
+
+SilphCo6Script_1a1e6:
+ ld a, [$ffe0]
+ and a
+ ret z
+ SetEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR
+ ret
+
+SilphCo6F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo6F_TextPointers:
+ dw SilphCo6Text1
+ dw SilphCo6Text2
+ dw SilphCo6Text3
+ dw SilphCo6Text4
+ dw SilphCo6Text5
+ dw SilphCo6Text6
+ dw SilphCo6Text7
+ dw SilphCo6Text8
+ dw PickUpItemText
+ dw PickUpItemText
+
+SilphCo6TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_0
+ dw SilphCo6BattleText2 ; TextBeforeBattle
+ dw SilphCo6AfterBattleText2 ; TextAfterBattle
+ dw SilphCo6EndBattleText2 ; TextEndBattle
+ dw SilphCo6EndBattleText2 ; TextEndBattle
+
+SilphCo6TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_1
+ dw SilphCo6BattleText3 ; TextBeforeBattle
+ dw SilphCo6AfterBattleText3 ; TextAfterBattle
+ dw SilphCo6EndBattleText3 ; TextEndBattle
+ dw SilphCo6EndBattleText3 ; TextEndBattle
+
+SilphCo6TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_2, 1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_2, 1
+ dw SilphCo6BattleText4 ; TextBeforeBattle
+ dw SilphCo6AfterBattleText4 ; TextAfterBattle
+ dw SilphCo6EndBattleText4 ; TextEndBattle
+ dw SilphCo6EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+SilphCo6Script_1a22f:
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .asm_1a238
+ jr .asm_1a23a
+.asm_1a238
+ ld h, d
+ ld l, e
+.asm_1a23a
+ jp PrintText
+
+SilphCo6Text1:
+ TX_ASM
+ ld hl, SilphCo6Text_1a24a
+ ld de, SilphCo6Text_1a24f
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a24a:
+ TX_FAR _SilphCo6Text_1a24a
+ db "@"
+
+SilphCo6Text_1a24f:
+ TX_FAR _SilphCo6Text_1a24f
+ db "@"
+
+SilphCo6Text2:
+ TX_ASM
+ ld hl, SilphCo6Text_1a261
+ ld de, SilphCo6Text_1a266
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a261:
+ TX_FAR _SilphCo6Text_1a261
+ db "@"
+
+SilphCo6Text_1a266:
+ TX_FAR _SilphCo6Text_1a266
+ db "@"
+
+SilphCo6Text3:
+ TX_ASM
+ ld hl, SilphCo6Text_1a278
+ ld de, SilphCo6Text_1a27d
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a278:
+ TX_FAR _SilphCo6Text_1a278
+ db "@"
+
+SilphCo6Text_1a27d:
+ TX_FAR _SilphCo6Text_1a27d
+ db "@"
+
+SilphCo6Text4:
+ TX_ASM
+ ld hl, SilphCo6Text_1a28f
+ ld de, SilphCo6Text_1a294
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a28f:
+ TX_FAR _SilphCo6Text_1a28f
+ db "@"
+
+SilphCo6Text_1a294:
+ TX_FAR _SilphCo6Text_1a294
+ db "@"
+
+SilphCo6Text5:
+ TX_ASM
+ ld hl, SilphCo6Text_1a2a6
+ ld de, SilphCo6Text_1a2ab
+ call SilphCo6Script_1a22f
+ jp TextScriptEnd
+
+SilphCo6Text_1a2a6:
+ TX_FAR _SilphCo6Text_1a2a6
+ db "@"
+
+SilphCo6Text_1a2ab:
+ TX_FAR _SilphCo6Text_1a2ab
+ db "@"
+
+SilphCo6Text6:
+ TX_ASM
+ ld hl, SilphCo6TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo6BattleText2:
+ TX_FAR _SilphCo6BattleText2
+ db "@"
+
+SilphCo6EndBattleText2:
+ TX_FAR _SilphCo6EndBattleText2
+ db "@"
+
+SilphCo6AfterBattleText2:
+ TX_FAR _SilphCo6AfterBattleText2
+ db "@"
+
+SilphCo6Text7:
+ TX_ASM
+ ld hl, SilphCo6TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo6BattleText3:
+ TX_FAR _SilphCo6BattleText3
+ db "@"
+
+SilphCo6EndBattleText3:
+ TX_FAR _SilphCo6EndBattleText3
+ db "@"
+
+SilphCo6AfterBattleText3:
+ TX_FAR _SilphCo6AfterBattleText3
+ db "@"
+
+SilphCo6Text8:
+ TX_ASM
+ ld hl, SilphCo6TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo6BattleText4:
+ TX_FAR _SilphCo6BattleText4
+ db "@"
+
+SilphCo6EndBattleText4:
+ TX_FAR _SilphCo6EndBattleText4
+ db "@"
+
+SilphCo6AfterBattleText4:
+ TX_FAR _SilphCo6AfterBattleText4
+ db "@"
diff --git a/scripts/SilphCo7F.asm b/scripts/SilphCo7F.asm
new file mode 100755
index 00000000..a8dc032d
--- /dev/null
+++ b/scripts/SilphCo7F.asm
@@ -0,0 +1,513 @@
+SilphCo7F_Script:
+ call SilphCo7Script_51b77
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo7TrainerHeader0
+ ld de, SilphCo7F_ScriptPointers
+ ld a, [wSilphCo7FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo7FCurScript], a
+ ret
+
+SilphCo7Script_51b77:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo7GateCoords
+ call SilphCo7Text_51bc8
+ call SilphCo7Text_51bf4
+ CheckEvent EVENT_SILPH_CO_7_UNLOCKED_DOOR1
+ jr nz, .asm_51b9e
+ push af
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 3, 5
+ predef ReplaceTileBlock
+ pop af
+.asm_51b9e
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_7_UNLOCKED_DOOR2, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
+ jr nz, .asm_51bb1
+ push af
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 2, 10
+ predef ReplaceTileBlock
+ pop af
+.asm_51bb1
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_7_UNLOCKED_DOOR3, EVENT_SILPH_CO_7_UNLOCKED_DOOR2
+ ret nz
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 6, 10
+ predef_jump ReplaceTileBlock
+
+SilphCo7GateCoords:
+ db $03,$05
+ db $02,$0A
+ db $06,$0A
+ db $FF
+
+SilphCo7Text_51bc8:
+ push hl
+ ld hl, wCardKeyDoorY
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_51bd4
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_51bf0
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_51be5
+ inc hl
+ jr .asm_51bd4
+.asm_51be5
+ ld a, [hli]
+ cp c
+ jr nz, .asm_51bd4
+ ld hl, wCardKeyDoorY
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_51bf0
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo7Text_51bf4:
+ EventFlagAddress hl, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .next1
+ SetEventReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR1
+ ret
+.next1
+ cp $2
+ jr nz, .next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR2, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
+ ret
+.next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR3, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
+ ret
+
+SilphCo7Text_51c0c:
+ xor a
+ ld [wJoyIgnore], a
+
+SilphCo7Text_51c10:
+ ld [wSilphCo7FCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+SilphCo7F_ScriptPointers:
+ dw SilphCo7Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw SilphCo7Script3
+ dw SilphCo7Script4
+ dw SilphCo7Script5
+
+SilphCo7Script0:
+ CheckEvent EVENT_BEAT_SILPH_CO_RIVAL
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_51c78
+ call ArePlayerCoordsInArray
+ jp nc, CheckFightingMapTrainers
+ xor a
+ ld [hJoyHeld], a
+ ld a, $f0
+ ld [wJoyIgnore], a
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ call StopAllMusic
+ ld c, BANK(Music_MeetRival)
+ ld a, MUSIC_MEET_RIVAL
+ call PlayMusic
+ ld a, $9
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, $9
+ ld [H_SPRITEINDEX], a
+ call SetSpriteMovementBytesToFF
+ ld de, MovementData_51c7d
+ ld a, [wCoordIndex]
+ ld [wcf0d], a
+ cp $1
+ jr z, .asm_51c6c
+ inc de
+.asm_51c6c
+ ld a, $9
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $3
+ jp SilphCo7Text_51c10
+
+CoordsData_51c78:
+ db $02,$03
+ db $03,$03
+ db $FF
+
+MovementData_51c7d:
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db $FF
+
+SilphCo7Script3:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call Delay3
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, SilphCo7Text14
+ ld de, SilphCo7Text_51ecd
+ call SaveEndBattleTextPointers
+ ld a, OPP_SONY2
+ ld [wCurOpponent], a
+ ld a, [wRivalStarter]
+ add 4
+ ld [wTrainerNo], a
+ ld a, $4
+ call SilphCo7Text_51c10
+ ret
+
+SilphCo7Script4:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, SilphCo7Text_51c0c
+ ld a, $f0
+ ld [wJoyIgnore], a
+ SetEvent EVENT_BEAT_SILPH_CO_RIVAL
+ ld a, PLAYER_DIR_DOWN
+ ld [wPlayerMovingDirection], a
+ ld a, $9
+ ld [H_SPRITEINDEX], a
+ ld a, SPRITE_FACING_UP
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $f
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call StopAllMusic
+ callba Music_RivalAlternateStart
+ ld de, MovementData_51d1d
+ ld a, [wcf0d]
+ cp $1
+ jr nz, .asm_51d0e
+ ld de, MovementData_51d1a
+.asm_51d0e
+ ld a, $9
+ ld [H_SPRITEINDEX], a
+ call MoveSprite
+ ld a, $5
+ jp SilphCo7Text_51c10
+
+MovementData_51d1a:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db $FF
+
+MovementData_51d1d:
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_UP
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+SilphCo7Script5:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, HS_SILPH_CO_7F_RIVAL
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call PlayDefaultMusic
+ xor a
+ ld [wJoyIgnore], a
+ jp SilphCo7Text_51c10
+
+SilphCo7F_TextPointers:
+ dw SilphCo7Text1
+ dw SilphCo7Text2
+ dw SilphCo7Text3
+ dw SilphCo7Text4
+ dw SilphCo7Text5
+ dw SilphCo7Text6
+ dw SilphCo7Text7
+ dw SilphCo7Text8
+ dw SilphCo7Text9
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw SilphCo7Text13
+ dw SilphCo7Text14
+ dw SilphCo7Text15
+
+SilphCo7TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_0
+ dw SilphCo7BattleText1 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText1 ; TextAfterBattle
+ dw SilphCo7EndBattleText1 ; TextEndBattle
+ dw SilphCo7EndBattleText1 ; TextEndBattle
+
+SilphCo7TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_1
+ dw SilphCo7BattleText2 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText2 ; TextAfterBattle
+ dw SilphCo7EndBattleText2 ; TextEndBattle
+ dw SilphCo7EndBattleText2 ; TextEndBattle
+
+SilphCo7TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_2
+ dw SilphCo7BattleText3 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText3 ; TextAfterBattle
+ dw SilphCo7EndBattleText3 ; TextEndBattle
+ dw SilphCo7EndBattleText3 ; TextEndBattle
+
+SilphCo7TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_3, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_3, 1
+ dw SilphCo7BattleText4 ; TextBeforeBattle
+ dw SilphCo7AfterBattleText4 ; TextAfterBattle
+ dw SilphCo7EndBattleText4 ; TextEndBattle
+ dw SilphCo7EndBattleText4 ; TextEndBattle
+
+ db $ff
+
+SilphCo7Text1:
+; lapras guy
+ TX_ASM
+ ld a, [wd72e]
+ bit 0, a ; got lapras?
+ jr z, .givelapras
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .savedsilph
+ ld hl, .LaprasGuyText
+ call PrintText
+ jr .done
+.givelapras
+ ld hl, .MeetLaprasGuyText
+ call PrintText
+ lb bc, LAPRAS, 15
+ call GivePokemon
+ jr nc, .done
+ ld a, [wSimulatedJoypadStatesEnd]
+ and a
+ call z, WaitForTextScrollButtonPress
+ call EnableAutoTextBoxDrawing
+ ld hl, .HeresYourLaprasText
+ call PrintText
+ ld hl, wd72e
+ set 0, [hl]
+ jr .done
+.savedsilph
+ ld hl, .LaprasGuySavedText
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.MeetLaprasGuyText
+ TX_FAR _MeetLaprasGuyText
+ db "@"
+
+.HeresYourLaprasText
+ TX_FAR _HeresYourLaprasText
+ db "@"
+
+.LaprasGuyText
+ TX_FAR _LaprasGuyText
+ db "@"
+
+.LaprasGuySavedText
+ TX_FAR _LaprasGuySavedText
+ db "@"
+
+SilphCo7Text2:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .savedsilph
+ ld hl, .rockettext
+ call PrintText
+ jr .done
+.savedsilph
+ ld hl, .savedtext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.rockettext
+ TX_FAR _SilphCo7Text_51e00
+ db "@"
+
+.savedtext
+ TX_FAR _CanceledMasterBallText
+ db "@"
+
+SilphCo7Text3:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .savedsilph
+ ld hl, .rockettext
+ call PrintText
+ jr .done
+.savedsilph
+ ld hl, .savedtext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.rockettext
+ TX_FAR _SilphCo7Text_51e23
+ db "@"
+
+.savedtext
+ TX_FAR _SilphCo7Text_51e28
+ db "@"
+
+SilphCo7Text4:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .savedsilph
+ ld hl, .rockettext
+ call PrintText
+ jr .done
+.savedsilph
+ ld hl, .savedtext
+ call PrintText
+.done
+ jp TextScriptEnd
+
+.rockettext
+ TX_FAR _SilphCo7Text_51e46
+ db "@"
+
+.savedtext
+ TX_FAR _SilphCo7Text_51e4b
+ db "@"
+
+SilphCo7Text5:
+ TX_ASM
+ ld hl, SilphCo7TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText1:
+ TX_FAR _SilphCo7BattleText1
+ db "@"
+
+SilphCo7EndBattleText1:
+ TX_FAR _SilphCo7EndBattleText1
+ db "@"
+
+SilphCo7AfterBattleText1:
+ TX_FAR _SilphCo7AfterBattleText1
+ db "@"
+
+SilphCo7Text6:
+ TX_ASM
+ ld hl, SilphCo7TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText2:
+ TX_FAR _SilphCo7BattleText2
+ db "@"
+
+SilphCo7EndBattleText2:
+ TX_FAR _SilphCo7EndBattleText2
+ db "@"
+
+SilphCo7AfterBattleText2:
+ TX_FAR _SilphCo7AfterBattleText2
+ db "@"
+
+SilphCo7Text7:
+ TX_ASM
+ ld hl, SilphCo7TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText3:
+ TX_FAR _SilphCo7BattleText3
+ db "@"
+
+SilphCo7EndBattleText3:
+ TX_FAR _SilphCo7EndBattleText3
+ db "@"
+
+SilphCo7AfterBattleText3:
+ TX_FAR _SilphCo7AfterBattleText3
+ db "@"
+
+SilphCo7Text8:
+ TX_ASM
+ ld hl, SilphCo7TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo7BattleText4:
+ TX_FAR _SilphCo7BattleText4
+ db "@"
+
+SilphCo7EndBattleText4:
+ TX_FAR _SilphCo7EndBattleText4
+ db "@"
+
+SilphCo7AfterBattleText4:
+ TX_FAR _SilphCo7AfterBattleText4
+ db "@"
+
+SilphCo7Text9:
+ TX_ASM
+ ld hl, SilphCo7Text_51ebe
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo7Text_51ebe:
+ TX_FAR _SilphCo7Text_51ebe
+ db "@"
+
+SilphCo7Text13:
+ TX_FAR _SilphCo7Text_51ec3
+ db "@"
+
+SilphCo7Text14:
+ TX_FAR _SilphCo7Text_51ec8
+ db "@"
+
+SilphCo7Text_51ecd:
+ TX_FAR _SilphCo7Text_51ecd
+ db "@"
+
+SilphCo7Text15:
+ TX_FAR _SilphCo7Text_51ed2
+ db "@"
diff --git a/scripts/SilphCo8F.asm b/scripts/SilphCo8F.asm
new file mode 100755
index 00000000..ce6579f7
--- /dev/null
+++ b/scripts/SilphCo8F.asm
@@ -0,0 +1,183 @@
+SilphCo8F_Script:
+ call SilphCo8Script_5651a
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo8TrainerHeader0
+ ld de, SilphCo8F_ScriptPointers
+ ld a, [wSilphCo8FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo8FCurScript], a
+ ret
+
+SilphCo8Script_5651a:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo8GateCoords
+ call SilphCo8Script_56541
+ call SilphCo8Script_5656d
+ CheckEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR
+ ret nz
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 4, 3
+ predef_jump ReplaceTileBlock
+
+SilphCo8GateCoords:
+ db $04,$03
+ db $FF
+
+SilphCo8Script_56541:
+ push hl
+ ld hl, wCardKeyDoorY
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_5654d
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_56569
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_5655e
+ inc hl
+ jr .asm_5654d
+.asm_5655e
+ ld a, [hli]
+ cp c
+ jr nz, .asm_5654d
+ ld hl, wCardKeyDoorY
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_56569
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo8Script_5656d:
+ ld a, [$ffe0]
+ and a
+ ret z
+ SetEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR
+ ret
+
+SilphCo8F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo8F_TextPointers:
+ dw SilphCo8Text1
+ dw SilphCo8Text2
+ dw SilphCo8Text3
+ dw SilphCo8Text4
+
+SilphCo8TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_0
+ dw SilphCo8BattleText1 ; TextBeforeBattle
+ dw SilphCo8AfterBattleText1 ; TextAfterBattle
+ dw SilphCo8EndBattleText1 ; TextEndBattle
+ dw SilphCo8EndBattleText1 ; TextEndBattle
+
+SilphCo8TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_1
+ dw SilphCo8BattleText2 ; TextBeforeBattle
+ dw SilphCo8AfterBattleText2 ; TextAfterBattle
+ dw SilphCo8EndBattleText2 ; TextEndBattle
+ dw SilphCo8EndBattleText2 ; TextEndBattle
+
+SilphCo8TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_2
+ dw SilphCo8BattleText3 ; TextBeforeBattle
+ dw SilphCo8AfterBattleText3 ; TextAfterBattle
+ dw SilphCo8EndBattleText3 ; TextEndBattle
+ dw SilphCo8EndBattleText3 ; TextEndBattle
+
+ db $ff
+
+SilphCo8Text1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ ld hl, SilphCo8Text_565c3
+ jr nz, .asm_565b8
+ ld hl, SilphCo8Text_565be
+.asm_565b8
+ call PrintText
+ jp TextScriptEnd
+
+SilphCo8Text_565be:
+ TX_FAR _SilphCo8Text_565be
+ db "@"
+
+SilphCo8Text_565c3:
+ TX_FAR _SilphCo8Text_565c3
+ db "@"
+
+SilphCo8Text2:
+ TX_ASM
+ ld hl, SilphCo8TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo8Text3:
+ TX_ASM
+ ld hl, SilphCo8TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo8Text4:
+ TX_ASM
+ ld hl, SilphCo8TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo8BattleText1:
+ TX_FAR _SilphCo8BattleText1
+ db "@"
+
+SilphCo8EndBattleText1:
+ TX_FAR _SilphCo8EndBattleText1
+ db "@"
+
+SilphCo8AfterBattleText1:
+ TX_FAR _SilphCo8AfterBattleText1
+ db "@"
+
+SilphCo8BattleText2:
+ TX_FAR _SilphCo8BattleText2
+ db "@"
+
+SilphCo8EndBattleText2:
+ TX_FAR _SilphCo8EndBattleText2
+ db "@"
+
+SilphCo8AfterBattleText2:
+ TX_FAR _SilphCo8AfterBattleText2
+ db "@"
+
+SilphCo8BattleText3:
+ TX_FAR _SilphCo8BattleText3
+ db "@"
+
+SilphCo8EndBattleText3:
+ TX_FAR _SilphCo8EndBattleText3
+ db "@"
+
+SilphCo8AfterBattleText3:
+ TX_FAR _SilphCo8AfterBattleText3
+ db "@"
diff --git a/scripts/SilphCo9F.asm b/scripts/SilphCo9F.asm
new file mode 100755
index 00000000..66291e98
--- /dev/null
+++ b/scripts/SilphCo9F.asm
@@ -0,0 +1,244 @@
+SilphCo9F_Script:
+ call SilphCo9Script_5d7d1
+ call EnableAutoTextBoxDrawing
+ ld hl, SilphCo9TrainerHeader0
+ ld de, SilphCo9F_ScriptPointers
+ ld a, [wSilphCo9FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wSilphCo9FCurScript], a
+ ret
+
+SilphCo9Script_5d7d1:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ ld hl, SilphCo9GateCoords
+ call SilphCo9Script_5d837
+ call SilphCo9Script_5d863
+ CheckEvent EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ jr nz, .asm_5d7f8
+ push af
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 4, 1
+ predef ReplaceTileBlock
+ pop af
+.asm_5d7f8
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR2, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ jr nz, .asm_5d80b
+ push af
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 2, 9
+ predef ReplaceTileBlock
+ pop af
+.asm_5d80b
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR3, EVENT_SILPH_CO_9_UNLOCKED_DOOR2
+ jr nz, .asm_5d81e
+ push af
+ ld a, $54
+ ld [wNewTileBlockID], a
+ lb bc, 5, 9
+ predef ReplaceTileBlock
+ pop af
+.asm_5d81e
+ CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR4, EVENT_SILPH_CO_9_UNLOCKED_DOOR3
+ ret nz
+ ld a, $5f
+ ld [wNewTileBlockID], a
+ lb bc, 6, 5
+ predef_jump ReplaceTileBlock
+
+SilphCo9GateCoords:
+ db $04,$01
+ db $02,$09
+ db $05,$09
+ db $06,$05
+ db $FF
+
+SilphCo9Script_5d837:
+ push hl
+ ld hl, wCardKeyDoorY
+ ld a, [hli]
+ ld b, a
+ ld a, [hl]
+ ld c, a
+ xor a
+ ld [$ffe0], a
+ pop hl
+.asm_5d843
+ ld a, [hli]
+ cp $ff
+ jr z, .asm_5d85f
+ push hl
+ ld hl, $ffe0
+ inc [hl]
+ pop hl
+ cp b
+ jr z, .asm_5d854
+ inc hl
+ jr .asm_5d843
+.asm_5d854
+ ld a, [hli]
+ cp c
+ jr nz, .asm_5d843
+ ld hl, wCardKeyDoorY
+ xor a
+ ld [hli], a
+ ld [hl], a
+ ret
+.asm_5d85f
+ xor a
+ ld [$ffe0], a
+ ret
+
+SilphCo9Script_5d863:
+ EventFlagAddress hl, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ ld a, [$ffe0]
+ and a
+ ret z
+ cp $1
+ jr nz, .next1
+ SetEventReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ ret
+.next1
+ cp $2
+ jr nz, .next2
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR2, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ ret
+.next2
+ cp $3
+ jr nz, .next3
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR3, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ ret
+.next3
+ cp $4
+ ret nz
+ SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR4, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
+ ret
+
+SilphCo9F_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+SilphCo9F_TextPointers:
+ dw SilphCo9Text1
+ dw SilphCo9Text2
+ dw SilphCo9Text3
+ dw SilphCo9Text4
+
+SilphCo9TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_0
+ dw SilphCo9BattleText1 ; TextBeforeBattle
+ dw SilphCo9AfterBattleText1 ; TextAfterBattle
+ dw SilphCo9EndBattleText1 ; TextEndBattle
+ dw SilphCo9EndBattleText1 ; TextEndBattle
+
+SilphCo9TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_1
+ dw SilphCo9BattleText2 ; TextBeforeBattle
+ dw SilphCo9AfterBattleText2 ; TextAfterBattle
+ dw SilphCo9EndBattleText2 ; TextEndBattle
+ dw SilphCo9EndBattleText2 ; TextEndBattle
+
+SilphCo9TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_2
+ dw SilphCo9BattleText3 ; TextBeforeBattle
+ dw SilphCo9AfterBattleText3 ; TextAfterBattle
+ dw SilphCo9EndBattleText3 ; TextEndBattle
+ dw SilphCo9EndBattleText3 ; TextEndBattle
+
+ db $ff
+
+SilphCo9Text1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
+ jr nz, .asm_5d8dc
+ ld hl, SilphCo9Text_5d8e5
+ call PrintText
+ predef HealParty
+ call GBFadeOutToWhite
+ call Delay3
+ call GBFadeInFromWhite
+ ld hl, SilphCo9Text_5d8ea
+ call PrintText
+ jr .asm_5d8e2
+.asm_5d8dc
+ ld hl, SilphCo9Text_5d8ef
+ call PrintText
+.asm_5d8e2
+ jp TextScriptEnd
+
+SilphCo9Text_5d8e5:
+ TX_FAR _SilphCo9Text_5d8e5
+ db "@"
+
+SilphCo9Text_5d8ea:
+ TX_FAR _SilphCo9Text_5d8ea
+ db "@"
+
+SilphCo9Text_5d8ef:
+ TX_FAR _SilphCo9Text_5d8ef
+ db "@"
+
+SilphCo9Text2:
+ TX_ASM
+ ld hl, SilphCo9TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo9Text3:
+ TX_ASM
+ ld hl, SilphCo9TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo9Text4:
+ TX_ASM
+ ld hl, SilphCo9TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+SilphCo9BattleText1:
+ TX_FAR _SilphCo9BattleText1
+ db "@"
+
+SilphCo9EndBattleText1:
+ TX_FAR _SilphCo9EndBattleText1
+ db "@"
+
+SilphCo9AfterBattleText1:
+ TX_FAR _SilphCo9AfterBattleText1
+ db "@"
+
+SilphCo9BattleText2:
+ TX_FAR _SilphCo9BattleText2
+ db "@"
+
+SilphCo9EndBattleText2:
+ TX_FAR _SilphCo9EndBattleText2
+ db "@"
+
+SilphCo9AfterBattleText2:
+ TX_FAR _SilphCo9AfterBattleText2
+ db "@"
+
+SilphCo9BattleText3:
+ TX_FAR _SilphCo9BattleText3
+ db "@"
+
+SilphCo9EndBattleText3:
+ TX_FAR _SilphCo9EndBattleText3
+ db "@"
+
+SilphCo9AfterBattleText3:
+ TX_FAR _SilphCo9AfterBattleText3
+ db "@"
diff --git a/scripts/SilphCoElevator.asm b/scripts/SilphCoElevator.asm
new file mode 100755
index 00000000..49de6b27
--- /dev/null
+++ b/scripts/SilphCoElevator.asm
@@ -0,0 +1,88 @@
+SilphCoElevator_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, SilphCoElevatorScript_457dc
+ pop hl
+ bit 7, [hl]
+ res 7, [hl]
+ call nz, SilphCoElevatorScript_45827
+ xor a
+ ld [wAutoTextBoxDrawingControl], a
+ inc a
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ret
+
+SilphCoElevatorScript_457dc:
+ ld hl, wWarpEntries
+ ld a, [wWarpedFromWhichWarp]
+ ld b, a
+ ld a, [wWarpedFromWhichMap]
+ ld c, a
+ call SilphCoElevatorScript_457ea
+
+SilphCoElevatorScript_457ea:
+ inc hl
+ inc hl
+ ld a, b
+ ld [hli], a
+ ld a, c
+ ld [hli], a
+ ret
+
+SilphCoElevatorScript_457f1:
+ ld hl, SilphCoElevatorFloors
+ call LoadItemList
+ ld hl, SilphCoElevatorWarpMaps
+ ld de, wElevatorWarpMaps
+ ld bc, SilphCoElevatorWarpMapsEnd - SilphCoElevatorWarpMaps
+ call CopyData
+ ret
+
+SilphCoElevatorFloors:
+ db $0B ; num elements in list
+ db FLOOR_1F
+ db FLOOR_2F
+ db FLOOR_3F
+ db FLOOR_4F
+ db FLOOR_5F
+ db FLOOR_6F
+ db FLOOR_7F
+ db FLOOR_8F
+ db FLOOR_9F
+ db FLOOR_10F
+ db FLOOR_11F
+ db $FF ; terminator
+
+SilphCoElevatorWarpMaps:
+; first byte is warp number
+; second byte is map number
+; These specify where the player goes after getting out of the elevator.
+ db $03, SILPH_CO_1F
+ db $02, SILPH_CO_2F
+ db $02, SILPH_CO_3F
+ db $02, SILPH_CO_4F
+ db $02, SILPH_CO_5F
+ db $02, SILPH_CO_6F
+ db $02, SILPH_CO_7F
+ db $02, SILPH_CO_8F
+ db $02, SILPH_CO_9F
+ db $02, SILPH_CO_10F
+ db $01, SILPH_CO_11F
+SilphCoElevatorWarpMapsEnd:
+
+SilphCoElevatorScript_45827:
+ call Delay3
+ callba ShakeElevator
+ ret
+
+SilphCoElevator_TextPointers:
+ dw SilphCoElevatorText1
+
+SilphCoElevatorText1:
+ TX_ASM
+ call SilphCoElevatorScript_457f1
+ ld hl, SilphCoElevatorWarpMaps
+ predef DisplayElevatorFloorMenu
+ jp TextScriptEnd
diff --git a/scripts/TradeCenter.asm b/scripts/TradeCenter.asm
new file mode 100644
index 00000000..ddb3061e
--- /dev/null
+++ b/scripts/TradeCenter.asm
@@ -0,0 +1,38 @@
+TradeCenter_Script:
+ call EnableAutoTextBoxDrawing
+ ld a, [hSerialConnectionStatus]
+ cp USING_INTERNAL_CLOCK
+ ld a, SPRITE_FACING_LEFT
+ jr z, .next
+ ld a, SPRITE_FACING_RIGHT
+.next
+ ld [hSpriteFacingDirection], a
+ ld a, $1
+ ld [H_SPRITEINDEX], a
+ call SetSpriteFacingDirection
+ ld hl, wd72d
+ bit 0, [hl]
+ set 0, [hl]
+ ret nz
+ ld hl, wSpriteStateData2 + $14
+ ld a, $8
+ ld [hli], a
+ ld a, $a
+ ld [hl], a
+ ld a, SPRITE_FACING_LEFT
+ ld [wSpriteStateData1 + $19], a
+ ld a, [hSerialConnectionStatus]
+ cp USING_INTERNAL_CLOCK
+ ret z
+ ld a, $7
+ ld [wSpriteStateData2 + $15], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [wSpriteStateData1 + $19], a
+ ret
+
+TradeCenter_TextPointers:
+ dw TradeCenterText1
+
+TradeCenterText1:
+ TX_FAR _TradeCenterText1
+ db "@"
diff --git a/scripts/UndergroundPathNorthSouth.asm b/scripts/UndergroundPathNorthSouth.asm
new file mode 100755
index 00000000..52b3d8bf
--- /dev/null
+++ b/scripts/UndergroundPathNorthSouth.asm
@@ -0,0 +1,5 @@
+UndergroundPathNorthSouth_Script:
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathNorthSouth_TextPointers:
+ db "@"
diff --git a/scripts/UndergroundPathRoute5.asm b/scripts/UndergroundPathRoute5.asm
new file mode 100755
index 00000000..23d72569
--- /dev/null
+++ b/scripts/UndergroundPathRoute5.asm
@@ -0,0 +1,18 @@
+UndergroundPathRoute5_Script:
+ ld a, ROUTE_5
+ ld [wLastMap], a
+ ret
+
+UndergroundPathEntranceRoute5_5d6af:
+ db "@"
+
+UndergroundPathRoute5_TextPointers:
+ dw UndergroundPathEntranceRoute5Text1
+
+UndergroundPathEntranceRoute5Text1:
+ TX_ASM
+ ld a, $9
+ ld [wWhichTrade], a
+ predef DoInGameTradeDialogue
+ ld hl, UndergroundPathEntranceRoute5_5d6af
+ ret
diff --git a/scripts/UndergroundPathRoute6.asm b/scripts/UndergroundPathRoute6.asm
new file mode 100755
index 00000000..0a690518
--- /dev/null
+++ b/scripts/UndergroundPathRoute6.asm
@@ -0,0 +1,11 @@
+UndergroundPathRoute6_Script:
+ ld a, ROUTE_6
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathRoute6_TextPointers:
+ dw UndergroundPathEntranceRoute6Text1
+
+UndergroundPathEntranceRoute6Text1:
+ TX_FAR _UndergrdTunnelEntRoute6Text1
+ db "@"
diff --git a/scripts/UndergroundPathRoute7.asm b/scripts/UndergroundPathRoute7.asm
new file mode 100755
index 00000000..3a1f14c7
--- /dev/null
+++ b/scripts/UndergroundPathRoute7.asm
@@ -0,0 +1,11 @@
+UndergroundPathRoute7_Script:
+ ld a, ROUTE_7
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathRoute7_TextPointers:
+ dw UndergroundPathEntranceRoute7Text1
+
+UndergroundPathEntranceRoute7Text1:
+ TX_FAR _UndergroundPathEntRoute7Text1
+ db "@"
diff --git a/scripts/UndergroundPathRoute7Copy.asm b/scripts/UndergroundPathRoute7Copy.asm
new file mode 100755
index 00000000..8a494caf
--- /dev/null
+++ b/scripts/UndergroundPathRoute7Copy.asm
@@ -0,0 +1,24 @@
+UndergroundPathRoute7Copy_Script:
+ ld a, ROUTE_7
+ ld [wLastMap], a
+ ret
+
+UndergroundPathRoute7Copy_TextPointers:
+ dw UGPathRoute7EntranceUnusedText_5d773
+ dw UGPathRoute7EntranceUnusedText_5d77d
+
+UGPathRoute7EntranceUnusedText_5d773:
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d773
+ db "@"
+
+UGPathRoute7EntranceUnusedText_5d778:
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d778
+ db "@"
+
+UGPathRoute7EntranceUnusedText_5d77d:
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d77d
+ db "@"
+
+UGPathRoute7EntranceUnusedText_5d782:
+ TX_FAR _UGPathRoute7EntranceUnusedText_5d782
+ db "@"
diff --git a/scripts/UndergroundPathRoute8.asm b/scripts/UndergroundPathRoute8.asm
new file mode 100755
index 00000000..ab0a9977
--- /dev/null
+++ b/scripts/UndergroundPathRoute8.asm
@@ -0,0 +1,11 @@
+UndergroundPathRoute8_Script:
+ ld a, ROUTE_8
+ ld [wLastMap], a
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathRoute8_TextPointers:
+ dw UndergroundPathEntranceRoute8Text1
+
+UndergroundPathEntranceRoute8Text1:
+ TX_FAR _UndergroundPathEntRoute8Text1
+ db "@"
diff --git a/scripts/UndergroundPathWestEast.asm b/scripts/UndergroundPathWestEast.asm
new file mode 100755
index 00000000..cb1a7bd8
--- /dev/null
+++ b/scripts/UndergroundPathWestEast.asm
@@ -0,0 +1,5 @@
+UndergroundPathWestEast_Script:
+ jp EnableAutoTextBoxDrawing
+
+UndergroundPathWestEast_TextPointers:
+ db "@"
diff --git a/scripts/VermilionCity.asm b/scripts/VermilionCity.asm
new file mode 100755
index 00000000..a9336970
--- /dev/null
+++ b/scripts/VermilionCity.asm
@@ -0,0 +1,286 @@
+VermilionCity_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, wd492
+ res 7, [hl]
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ push hl
+ call nz, .initCityScript
+ pop hl
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, .setFirstLockTrashCanIndex
+ ld hl, VermilionCity_ScriptPointers
+ ld a, [wVermilionCityCurScript]
+ call CallFunctionInTable
+ call .vermilionCityScript_19869
+ ret
+
+.vermilionCityScript_19869
+ CheckEventHL EVENT_152
+ ret nz
+ CheckEventReuseHL EVENT_GOT_BIKE_VOUCHER
+ ret z
+ SetEventReuseHL EVENT_152
+ ret
+
+.setFirstLockTrashCanIndex
+ call Random
+ ld a, [hRandomAdd]
+ ld b, a
+ ld a, [hRandomSub]
+ adc b
+ and $e
+ ld [wFirstLockTrashCanIndex], a
+ ret
+
+.initCityScript
+ CheckEventHL EVENT_SS_ANNE_LEFT
+ ret z
+ CheckEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
+ SetEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
+ ret nz
+ ld a, $2
+ ld [wVermilionCityCurScript], a
+ ret
+
+VermilionCity_ScriptPointers:
+ dw VermilionCityScript0
+ dw VermilionCityScript1
+ dw VermilionCityScript2
+ dw VermilionCityScript3
+ dw VermilionCityScript4
+
+VermilionCityScript0:
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ and a ; cp SPRITE_FACING_DOWN
+ jr nz, .return
+ ld hl, SSAnneTicketCheckCoords
+ call ArePlayerCoordsInArray
+ jr nc, .return
+ xor a
+ ld [hJoyHeld], a
+ ld [wcf0d], a
+ ld a, $3
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ CheckEvent EVENT_SS_ANNE_LEFT
+ jr nz, .shipHasDeparted
+ ld b, S_S_TICKET
+ predef GetQuantityOfItemInBag
+ ld a, b
+ and a
+ ret nz
+.shipHasDeparted
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wVermilionCityCurScript], a
+ ret
+
+.return
+ ret
+
+SSAnneTicketCheckCoords:
+ db $1e,$12 ; y, x
+ db $ff
+
+VermilionCityScript4:
+ ld hl, SSAnneTicketCheckCoords
+ call ArePlayerCoordsInArray
+ ret c
+ ld a, $0
+ ld [wVermilionCityCurScript], a
+ ret
+
+VermilionCityScript2:
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, D_UP
+ ld [wSimulatedJoypadStatesEnd], a
+ ld [wSimulatedJoypadStatesEnd + 1], a
+ ld a, 2
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $3
+ ld [wVermilionCityCurScript], a
+ ret
+
+VermilionCityScript3:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ xor a
+ ld [wJoyIgnore], a
+ ld [hJoyHeld], a
+ ld a, $0
+ ld [wVermilionCityCurScript], a
+ ret
+
+VermilionCityScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld c, 10
+ call DelayFrames
+ ld a, $0
+ ld [wVermilionCityCurScript], a
+ ret
+
+VermilionCity_TextPointers:
+ dw VermilionCityText1
+ dw VermilionCityText2
+ dw VermilionCityText3
+ dw VermilionCityText4
+ dw VermilionCityText5
+ dw VermilionCityText6
+ dw VermilionCityText7
+ dw VermilionCityText8
+ dw VermilionCityText9
+ dw MartSignText
+ dw PokeCenterSignText
+ dw VermilionCityText12
+ dw VermilionCityText13
+ dw VermilionCityText14
+
+VermilionCityText1:
+ TX_FAR _VermilionCityText1
+ db "@"
+
+VermilionCityText2:
+ TX_ASM
+ CheckEvent EVENT_SS_ANNE_LEFT
+ jr nz, .shipHasDeparted
+ ld hl, VermilionCityTextDidYouSee
+ call PrintText
+ jr .end
+.shipHasDeparted
+ ld hl, VermilionCityTextSSAnneDeparted
+ call PrintText
+.end
+ jp TextScriptEnd
+
+VermilionCityTextDidYouSee:
+ TX_FAR _VermilionCityTextDidYouSee
+ db "@"
+
+VermilionCityTextSSAnneDeparted:
+ TX_FAR _VermilionCityTextSSAnneDeparted
+ db "@"
+
+VermilionCityText3:
+ TX_ASM
+ CheckEvent EVENT_SS_ANNE_LEFT
+ jr nz, .shipHasDeparted
+ ld a, [wSpritePlayerStateData1FacingDirection]
+ cp SPRITE_FACING_RIGHT
+ jr z, .greetPlayer
+ ld hl, .inFrontOfOrBehindGuardCoords
+ call ArePlayerCoordsInArray
+ jr nc, .greetPlayerAndCheckTicket
+.greetPlayer
+ ld hl, SSAnneWelcomeText4
+ call PrintText
+ jr .end
+.greetPlayerAndCheckTicket
+ ld hl, SSAnneWelcomeText9
+ call PrintText
+ ld b, S_S_TICKET
+ predef GetQuantityOfItemInBag
+ ld a, b
+ and a
+ jr nz, .playerHasTicket
+ ld hl, SSAnneNoTicketText
+ call PrintText
+ jr .end
+.playerHasTicket
+ ld hl, SSAnneFlashedTicketText
+ call PrintText
+ ld a, $4
+ ld [wVermilionCityCurScript], a
+ jr .end
+.shipHasDeparted
+ ld hl, SSAnneNotHereText
+ call PrintText
+.end
+ jp TextScriptEnd
+
+.inFrontOfOrBehindGuardCoords
+ db $1d,$13 ; y, x of tile in front of guard
+ db $1f,$13 ; y, x of tile behind guard
+ db $ff
+
+SSAnneWelcomeText4:
+ TX_FAR _SSAnneWelcomeText4
+ db "@"
+
+SSAnneWelcomeText9:
+ TX_FAR _SSAnneWelcomeText9
+ db "@"
+
+SSAnneFlashedTicketText:
+ TX_FAR _SSAnneFlashedTicketText
+ db "@"
+
+SSAnneNoTicketText:
+ TX_FAR _SSAnneNoTicketText
+ db "@"
+
+SSAnneNotHereText:
+ TX_FAR _SSAnneNotHereText
+ db "@"
+
+VermilionCityText4:
+ TX_FAR _VermilionCityText4
+ db "@"
+
+VermilionCityText5:
+ TX_FAR _VermilionCityText5
+ TX_ASM
+ ld a, MACHOP
+ call PlayCry
+ call WaitForSoundToFinish
+ ld hl, VermilionCityText15
+ ret
+
+VermilionCityText15:
+ TX_FAR _VermilionCityText15
+ db "@"
+
+VermilionCityText6:
+ TX_FAR _VermilionCityText6
+ db "@"
+
+VermilionCityText8:
+ TX_ASM
+ callba Func_f1a8a
+ jp TextScriptEnd
+
+VermilionCityText9:
+ TX_ASM
+ callba Func_f1a96
+ jp TextScriptEnd
+
+VermilionCityText12:
+ TX_ASM
+ callba Func_f1aa2
+ jp TextScriptEnd
+
+VermilionCityText13:
+ TX_ASM
+ callba Func_f1aae
+ jp TextScriptEnd
+
+VermilionCityText14:
+ TX_ASM
+ callba Func_f1aba
+ jp TextScriptEnd
+
+VermilionCityText7:
+ TX_ASM
+ callba Func_f1a0f
+ jp TextScriptEnd
diff --git a/scripts/vermilioncity2.asm b/scripts/VermilionCity2.asm
index eb7ea37a..eb7ea37a 100755
--- a/scripts/vermilioncity2.asm
+++ b/scripts/VermilionCity2.asm
diff --git a/scripts/VermilionDock.asm b/scripts/VermilionDock.asm
new file mode 100755
index 00000000..f5807dd4
--- /dev/null
+++ b/scripts/VermilionDock.asm
@@ -0,0 +1,215 @@
+VermilionDock_Script:
+ call EnableAutoTextBoxDrawing
+ CheckEventHL EVENT_STARTED_WALKING_OUT_OF_DOCK
+ jr nz, .asm_1db8d
+ CheckEventReuseHL EVENT_GOT_HM01
+ ret z
+ ld a, [wDestinationWarpID]
+ cp $1
+ ret nz
+ CheckEventReuseHL EVENT_SS_ANNE_LEFT
+ jp z, VermilionDock_1db9b
+ SetEventReuseHL EVENT_STARTED_WALKING_OUT_OF_DOCK
+ call Delay3
+ ld hl, wd730
+ set 7, [hl]
+ ld hl, wSimulatedJoypadStatesEnd
+ ld a, D_UP
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+ ld a, $3
+ ld [wSimulatedJoypadStatesIndex], a
+ xor a
+ ld [wSpriteStateData2 + $06], a
+ ld [wOverrideSimulatedJoypadStatesMask], a
+ dec a
+ ld [wJoyIgnore], a
+ ret
+.asm_1db8d
+ CheckEventAfterBranchReuseHL EVENT_WALKED_OUT_OF_DOCK, EVENT_STARTED_WALKING_OUT_OF_DOCK
+ ret nz
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ ld [wJoyIgnore], a
+ SetEventReuseHL EVENT_WALKED_OUT_OF_DOCK
+ ret
+
+VermilionDock_1db9b:
+ SetEventForceReuseHL EVENT_SS_ANNE_LEFT
+ ld a, $ff
+ ld [wJoyIgnore], a
+ call StopAllMusic
+ ld c, BANK(Music_Surfing)
+ ld a, MUSIC_SURFING
+ call PlayMusic
+ callba LoadSmokeTileFourTimes
+ xor a
+ ld [wSpriteStateData1 + 2], a
+ ld c, 120
+ call DelayFrames
+ ld b, $9c
+ call CopyScreenTileBufferToVRAM
+ coord hl, 0, 10
+ ld bc, SCREEN_WIDTH * 6
+ ld a, $14 ; water tile
+ call FillMemory
+ ld a, 1
+ ld [H_AUTOBGTRANSFERENABLED], a
+ call Delay3
+ xor a
+ ld [H_AUTOBGTRANSFERENABLED], a
+ ld [wSSAnneSmokeDriftAmount], a
+ ld [rOBP1], a
+ call UpdateGBCPal_OBP1
+ ld a, 88
+ ld [wSSAnneSmokeX], a
+ ld hl, wMapViewVRAMPointer
+ ld c, [hl]
+ inc hl
+ ld b, [hl]
+ push bc
+ push hl
+ ld a, SFX_SS_ANNE_HORN
+ call PlaySoundWaitForCurrent
+ ld a, $ff
+ ld [wUpdateSpritesEnabled], a
+ ld d, $0
+ ld e, $8
+.asm_1dbfa
+ ld hl, $0002
+ add hl, bc
+ ld a, l
+ ld [wMapViewVRAMPointer], a
+ ld a, h
+ ld [wMapViewVRAMPointer + 1], a
+ push hl
+ push de
+ call ScheduleEastColumnRedraw
+ call VermilionDock_EmitSmokePuff
+ pop de
+ ld b, $10
+.asm_1dc11
+ call VermilionDock_AnimSmokePuffDriftRight
+ ld c, $8
+.asm_1dc16
+ call VermilionDock_1dc7c
+ dec c
+ jr nz, .asm_1dc16
+ inc d
+ dec b
+ jr nz, .asm_1dc11
+ pop bc
+ dec e
+ jr nz, .asm_1dbfa
+ xor a
+ ld [rWY], a
+ ld [hWY], a
+ call VermilionDock_EraseSSAnne
+ ld a, $90
+ ld [hWY], a
+ ld a, $1
+ ld [wUpdateSpritesEnabled], a
+ pop hl
+ pop bc
+ ld [hl], b
+ dec hl
+ ld [hl], c
+ call LoadPlayerSpriteGraphics
+ ld hl, wNumberOfWarps
+ dec [hl]
+ ret
+
+VermilionDock_AnimSmokePuffDriftRight:
+ push bc
+ push de
+ ld hl, wOAMBuffer + 4 * $4 + 1 ; x coord
+ ld a, [wSSAnneSmokeDriftAmount]
+ swap a
+ ld c, a
+ ld de, 4
+.loop
+ inc [hl]
+ inc [hl]
+ add hl, de
+ dec c
+ jr nz, .loop
+ pop de
+ pop bc
+ ret
+
+VermilionDock_EmitSmokePuff:
+; new smoke puff above the S.S. Anne's front smokestack
+ ld a, [wSSAnneSmokeX]
+ sub 16
+ ld [wSSAnneSmokeX], a
+ ld c, a
+ ld b, 100 ; Y
+ ld a, [wSSAnneSmokeDriftAmount]
+ inc a
+ ld [wSSAnneSmokeDriftAmount], a
+ ld a, $1
+ ld de, VermilionDockOAMBlock
+ call WriteOAMBlock
+ ret
+
+VermilionDockOAMBlock:
+ db $fc, $10
+ db $fd, $10
+ db $fe, $10
+ db $ff, $10
+
+VermilionDock_1dc7c:
+ ld h, d
+ ld l, $50
+ call .asm_1dc86
+ ld h, $0
+ ld l, $80
+.asm_1dc86
+ ld a, [rLY]
+ cp l
+ jr nz, .asm_1dc86
+ ld a, h
+ ld [rSCX], a
+.asm_1dc8e
+ ld a, [rLY]
+ cp h
+ jr z, .asm_1dc8e
+ ret
+
+VermilionDock_EraseSSAnne:
+; Fill the area the S.S. Anne occupies in BG map 0 with water tiles.
+ ld hl, wVermilionDockTileMapBuffer
+ ld bc, (5 * BG_MAP_WIDTH) + SCREEN_WIDTH
+ ld a, $14 ; water tile
+ call FillMemory
+ ld hl, vBGMap0 + 10 * BG_MAP_WIDTH
+ ld de, wVermilionDockTileMapBuffer
+ ld bc, (6 * BG_MAP_WIDTH) / 16
+ call CopyVideoData
+
+; Replace the blocks of the lower half of the ship with water blocks. This
+; leaves the upper half alone, but that doesn't matter because replacing any of
+; the blocks is unnecessary because the blocks the ship occupies are south of
+; the player and won't be redrawn when the player automatically walks north and
+; exits the map. This code could be removed without affecting anything.
+ overworldMapCoord hl, 5, 2, VERMILION_DOCK_WIDTH
+ ld a, $d ; water block
+ ld [hli], a
+ ld [hli], a
+ ld [hli], a
+ ld [hl], a
+
+ ld a, SFX_SS_ANNE_HORN
+ call PlaySound
+ ld c, 120
+ call DelayFrames
+ ret
+
+VermilionDock_TextPointers:
+ dw VermilionDockText1
+
+VermilionDockText1:
+ TX_FAR _VermilionDockText1
+ db "@"
diff --git a/scripts/VermilionGym.asm b/scripts/VermilionGym.asm
new file mode 100755
index 00000000..0af37945
--- /dev/null
+++ b/scripts/VermilionGym.asm
@@ -0,0 +1,267 @@
+VermilionGym_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ push hl
+ call nz, VermilionGymLoadName
+ pop hl
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, VermilionGymSetDoorTile
+ call EnableAutoTextBoxDrawing
+ ld hl, VermilionGymTrainerHeader0
+ ld de, VermilionGym_ScriptPointers
+ ld a, [wVermilionGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wVermilionGymCurScript], a
+ ret
+
+VermilionGymLoadName:
+ ld hl, Gym3CityName
+ ld de, Gym3LeaderName
+ jp LoadGymLeaderAndCityName
+
+Gym3CityName:
+ db "VERMILION CITY@"
+
+Gym3LeaderName:
+ db "LT.SURGE@"
+
+VermilionGymSetDoorTile:
+ CheckEvent EVENT_2ND_LOCK_OPENED
+ jr nz, .doorsOpen
+ ld a, $24 ; double door tile ID
+ jr .replaceTile
+.doorsOpen
+ ld a, SFX_GO_INSIDE
+ call PlaySound
+ ld a, $5 ; clear floor tile ID
+.replaceTile
+ ld [wNewTileBlockID], a
+ lb bc, 2, 2
+ predef_jump ReplaceTileBlock
+
+VermilionGymResetScripts:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wVermilionGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+VermilionGym_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw VermilionGymLTSurgePostBattle
+
+VermilionGymLTSurgePostBattle:
+ ld a, [wIsInBattle]
+ cp $ff ; did we lose?
+ jp z, VermilionGymResetScripts
+ ld a, D_RIGHT | D_LEFT | D_UP | D_DOWN
+ ld [wJoyIgnore], a
+
+VermilionGymReceiveTM24:
+ ld a, $6
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_LT_SURGE
+ lb bc, TM_24, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $7
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM24
+ jr .gymVictory
+.BagFull
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 2, [hl]
+ ld hl, wBeatGymFlags
+ set 2, [hl]
+
+ ; deactivate gym trainers
+ SetEventRange EVENT_BEAT_VERMILION_GYM_TRAINER_0, EVENT_BEAT_VERMILION_GYM_TRAINER_2
+
+ jp VermilionGymResetScripts
+
+VermilionGym_TextPointers:
+ dw LTSurgeText
+ dw VermilionGymTrainerText1
+ dw VermilionGymTrainerText2
+ dw VermilionGymTrainerText3
+ dw VermilionGymFanText
+ dw LTSurgeThunderbadgeInfoText
+ dw ReceivedTM24Text
+ dw TM24NoRoomText
+
+VermilionGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_0
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_0
+ dw VermilionGymBattleText1 ; TextBeforeBattle
+ dw VermilionGymAfterBattleText1 ; TextAfterBattle
+ dw VermilionGymEndBattleText1 ; TextEndBattle
+ dw VermilionGymEndBattleText1 ; TextEndBattle
+
+VermilionGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_1
+ dw VermilionGymBattleText2 ; TextBeforeBattle
+ dw VermilionGymAfterBattleText2 ; TextAfterBattle
+ dw VermilionGymEndBattleText2 ; TextEndBattle
+ dw VermilionGymEndBattleText2 ; TextEndBattle
+
+VermilionGymTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_2
+ dw VermilionGymBattleText3 ; TextBeforeBattle
+ dw VermilionGymAfterBattleText3 ; TextAfterBattle
+ dw VermilionGymEndBattleText3 ; TextEndBattle
+ dw VermilionGymEndBattleText3 ; TextEndBattle
+
+ db $ff
+
+LTSurgeText:
+ TX_ASM
+ CheckEvent EVENT_BEAT_LT_SURGE
+ jr z, .beforeBeat
+ CheckEventReuseA EVENT_GOT_TM24
+ jr nz, .afterBeat
+ call z, VermilionGymReceiveTM24
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.afterBeat
+ ld hl, LTSurgePostBattleAdviceText
+ call PrintText
+ jr .done
+.beforeBeat
+ ld hl, LTSurgePreBattleText
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, ReceivedThunderbadgeText
+ ld de, ReceivedThunderbadgeText
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $3
+ ld [wGymLeaderNo], a
+ xor a
+ ld [hJoyHeld], a
+ ld a, $3 ; set script index to LT Surge post-battle script
+ ld [wVermilionGymCurScript], a
+ ld [wCurMapScript], a
+.done
+ jp TextScriptEnd
+
+LTSurgePreBattleText:
+ TX_FAR _LTSurgePreBattleText
+ db "@"
+
+LTSurgePostBattleAdviceText:
+ TX_FAR _LTSurgePostBattleAdviceText
+ db "@"
+
+LTSurgeThunderbadgeInfoText:
+ TX_FAR _LTSurgeThunderbadgeInfoText
+ db "@"
+
+ReceivedTM24Text:
+ TX_FAR _ReceivedTM24Text
+ TX_SFX_KEY_ITEM
+ TX_FAR _TM24ExplanationText
+ db "@"
+
+TM24NoRoomText:
+ TX_FAR _TM24NoRoomText
+ db "@"
+
+ReceivedThunderbadgeText:
+ TX_FAR _ReceivedThunderbadgeText
+ db "@"
+
+VermilionGymTrainerText1:
+ TX_ASM
+ ld hl, VermilionGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VermilionGymBattleText1:
+ TX_FAR _VermilionGymBattleText1
+ db "@"
+
+VermilionGymEndBattleText1:
+ TX_FAR _VermilionGymEndBattleText1
+ db "@"
+
+VermilionGymAfterBattleText1:
+ TX_FAR _VermilionGymAfterBattleText1
+ db "@"
+
+VermilionGymTrainerText2:
+ TX_ASM
+ ld hl, VermilionGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VermilionGymBattleText2:
+ TX_FAR _VermilionGymBattleText2
+ db "@"
+
+VermilionGymEndBattleText2:
+ TX_FAR _VermilionGymEndBattleText2
+ db "@"
+
+VermilionGymAfterBattleText2:
+ TX_FAR _VermilionGymAfterBattleText2
+ db "@"
+
+VermilionGymTrainerText3:
+ TX_ASM
+ ld hl, VermilionGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VermilionGymBattleText3:
+ TX_FAR _VermilionGymBattleText3
+ db "@"
+
+VermilionGymEndBattleText3:
+ TX_FAR _VermilionGymEndBattleText3
+ db "@"
+
+VermilionGymAfterBattleText3:
+ TX_FAR _VermilionGymAfterBattleText3
+ db "@"
+
+VermilionGymFanText:
+ TX_ASM
+ ld a, [wBeatGymFlags]
+ bit 2, a
+ jr nz, .afterBeat
+ ld hl, VermilionGymFanPreBattleText
+ call PrintText
+ jr .done
+.afterBeat
+ ld hl, VermilionGymFanPostBattleText
+ call PrintText
+.done
+ jp TextScriptEnd
+
+VermilionGymFanPreBattleText:
+ TX_FAR _VermilionGymFanPreBattleText
+ db "@"
+
+VermilionGymFanPostBattleText:
+ TX_FAR _VermilionGymFanPostBattleText
+ db "@"
diff --git a/scripts/VermilionMart.asm b/scripts/VermilionMart.asm
new file mode 100755
index 00000000..00ba0c26
--- /dev/null
+++ b/scripts/VermilionMart.asm
@@ -0,0 +1,15 @@
+VermilionMart_Script:
+ jp EnableAutoTextBoxDrawing
+
+VermilionMart_TextPointers:
+ dw VermilionCashierText
+ dw VermilionMartText2
+ dw VermilionMartText3
+
+VermilionMartText2:
+ TX_FAR _VermilionMartText2
+ db "@"
+
+VermilionMartText3:
+ TX_FAR _VermilionMartText3
+ db "@"
diff --git a/scripts/VermilionOldRodHouse.asm b/scripts/VermilionOldRodHouse.asm
new file mode 100755
index 00000000..772158ff
--- /dev/null
+++ b/scripts/VermilionOldRodHouse.asm
@@ -0,0 +1,57 @@
+VermilionOldRodHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+VermilionOldRodHouse_TextPointers:
+ dw VermilionHouse2Text1
+
+VermilionHouse2Text1:
+ TX_ASM
+ ld a, [wd728]
+ bit 3, a
+ jr nz, .asm_03ef5
+ ld hl, VermilionHouse2Text_560b1
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .asm_eb1b7
+ lb bc, OLD_ROD, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, wd728
+ set 3, [hl]
+ ld hl, VermilionHouse2Text_560b6
+ jr .asm_5dd95
+.BagFull
+ ld hl, VermilionHouse2Text_560ca
+ jr .asm_5dd95
+.asm_eb1b7
+ ld hl, VermilionHouse2Text_560c0
+ jr .asm_5dd95
+.asm_03ef5
+ ld hl, VermilionHouse2Text_560c5
+.asm_5dd95
+ call PrintText
+ jp TextScriptEnd
+
+VermilionHouse2Text_560b1:
+ TX_FAR _VermilionHouse2Text_560b1
+ db "@"
+
+VermilionHouse2Text_560b6:
+ TX_FAR _VermilionHouse2Text_560b6
+ TX_SFX_ITEM_1
+ TX_FAR _VermilionHouse2Text_560bb
+ db "@"
+
+VermilionHouse2Text_560c0:
+ TX_FAR _VermilionHouse2Text_560c0
+ db "@"
+
+VermilionHouse2Text_560c5:
+ TX_FAR _VermilionHouse2Text_560c5
+ db "@"
+
+VermilionHouse2Text_560ca:
+ TX_FAR _VermilionHouse2Text_560ca
+ db "@"
diff --git a/scripts/VermilionPidgeyHouse.asm b/scripts/VermilionPidgeyHouse.asm
new file mode 100755
index 00000000..5004d367
--- /dev/null
+++ b/scripts/VermilionPidgeyHouse.asm
@@ -0,0 +1,24 @@
+VermilionPidgeyHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+VermilionPidgeyHouse_TextPointers:
+ dw VermilionHouse1Text1
+ dw VermilionHouse1Text2
+ dw VermilionHouse1Text3
+
+VermilionHouse1Text1:
+ TX_FAR _VermilionHouse1Text1
+ db "@"
+
+VermilionHouse1Text2:
+ TX_FAR _VermilionHouse1Text2
+ TX_ASM
+ ld a, PIDGEY
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+VermilionHouse1Text3:
+ TX_FAR _VermilionHouse1Text3
+ db "@"
diff --git a/scripts/VermilionPokecenter.asm b/scripts/VermilionPokecenter.asm
new file mode 100755
index 00000000..e470b028
--- /dev/null
+++ b/scripts/VermilionPokecenter.asm
@@ -0,0 +1,29 @@
+VermilionPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+VermilionPokecenter_TextPointers:
+ dw VermilionHealNurseText
+ dw VermilionPokecenterText2
+ dw VermilionPokecenterText3
+ dw VermilionTradeNurseText
+ dw VermilionPokecenterText5
+
+VermilionHealNurseText:
+ TX_POKECENTER_NURSE
+
+VermilionPokecenterText2:
+ TX_FAR _VermilionPokecenterText2
+ db "@"
+
+VermilionPokecenterText3:
+ TX_FAR _VermilionPokecenterText3
+ db "@"
+
+VermilionTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+VermilionPokecenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/VermilionTradeHouse.asm b/scripts/VermilionTradeHouse.asm
new file mode 100755
index 00000000..7f720364
--- /dev/null
+++ b/scripts/VermilionTradeHouse.asm
@@ -0,0 +1,9 @@
+VermilionTradeHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+VermilionTradeHouse_TextPointers:
+ dw VermilionHouse3Text1
+
+VermilionHouse3Text1:
+ TX_FAR TeachingHMsText
+ db "@"
diff --git a/scripts/VictoryRoad1F.asm b/scripts/VictoryRoad1F.asm
new file mode 100755
index 00000000..07f203b1
--- /dev/null
+++ b/scripts/VictoryRoad1F.asm
@@ -0,0 +1,106 @@
+VictoryRoad1F_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, .next
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad1TrainerHeader0
+ ld de, VictoryRoad1F_ScriptPointers
+ ld a, [wVictoryRoad1FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wVictoryRoad1FCurScript], a
+ ret
+.next
+ CheckEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
+ ret z
+ ld a, $1d
+ ld [wNewTileBlockID], a
+ lb bc, 6, 4
+ predef_jump ReplaceTileBlock
+
+VictoryRoad1F_ScriptPointers:
+ dw VictoryRoad1Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+VictoryRoad1Script0:
+ CheckEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
+ jp nz, CheckFightingMapTrainers
+ ld hl, CoordsData_5da5c
+ call CheckBoulderCoords
+ jp nc, CheckFightingMapTrainers
+ ld a, [H_SPRITEINDEX]
+ cp $f
+ jp z, CheckFightingMapTrainers
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ SetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
+ ret
+
+CoordsData_5da5c:
+ db $0D,$11,$FF
+
+VictoryRoad1F_TextPointers:
+ dw VictoryRoad1Text1
+ dw VictoryRoad1Text2
+ dw PickUpItemText
+ dw PickUpItemText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad1TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0
+ dw VictoryRoad1BattleText1 ; TextBeforeBattle
+ dw VictoryRoad1AfterBattleText1 ; TextAfterBattle
+ dw VictoryRoad1EndBattleText1 ; TextEndBattle
+ dw VictoryRoad1EndBattleText1 ; TextEndBattle
+
+VictoryRoad1TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1
+ dw VictoryRoad1BattleText2 ; TextBeforeBattle
+ dw VictoryRoad1AfterBattleText2 ; TextAfterBattle
+ dw VictoryRoad1EndBattleText2 ; TextEndBattle
+ dw VictoryRoad1EndBattleText2 ; TextEndBattle
+
+ db $ff
+
+VictoryRoad1Text1:
+ TX_ASM
+ ld hl, VictoryRoad1TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad1Text2:
+ TX_ASM
+ ld hl, VictoryRoad1TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad1BattleText1:
+ TX_FAR _VictoryRoad1BattleText1
+ db "@"
+
+VictoryRoad1EndBattleText1:
+ TX_FAR _VictoryRoad1EndBattleText1
+ db "@"
+
+VictoryRoad1AfterBattleText1:
+ TX_FAR _VictoryRoad1AfterBattleText1
+ db "@"
+
+VictoryRoad1BattleText2:
+ TX_FAR _VictoryRoad1BattleText2
+ db "@"
+
+VictoryRoad1EndBattleText2:
+ TX_FAR _VictoryRoad1EndBattleText2
+ db "@"
+
+VictoryRoad1AfterBattleText2:
+ TX_FAR _VictoryRoad1AfterBattleText2
+ db "@"
diff --git a/scripts/VictoryRoad2F.asm b/scripts/VictoryRoad2F.asm
new file mode 100755
index 00000000..a09e6f04
--- /dev/null
+++ b/scripts/VictoryRoad2F.asm
@@ -0,0 +1,245 @@
+VictoryRoad2F_Script:
+ ld hl, wCurrentMapScriptFlags
+ bit 6, [hl]
+ res 6, [hl]
+ call nz, VictoryRoad2Script_517c4
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ call nz, VictoryRoad2Script_517c9
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad2TrainerHeader0
+ ld de, VictoryRoad2F_ScriptPointers
+ ld a, [wVictoryRoad2FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wVictoryRoad2FCurScript], a
+ ret
+
+VictoryRoad2Script_517c4:
+ ResetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
+VictoryRoad2Script_517c9:
+ CheckEvent EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ jr z, .asm_517da
+ push af
+ ld a, $15
+ lb bc, 4, 3
+ call VictoryRoad2Script_517e2
+ pop af
+.asm_517da
+ bit 7, a
+ ret z
+ ld a, $1d
+ lb bc, 7, 11
+VictoryRoad2Script_517e2:
+ ld [wNewTileBlockID], a
+ predef ReplaceTileBlock
+ ret
+
+VictoryRoad2F_ScriptPointers:
+ dw VictoryRoad2Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+VictoryRoad2Script0:
+ ld hl, CoordsData_51816
+ call CheckBoulderCoords
+ jp nc, CheckFightingMapTrainers
+ ld a, [hSpriteIndexOrTextID]
+ cp $f
+ jp z, CheckFightingMapTrainers
+ EventFlagAddress hl, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ ld a, [wCoordIndex]
+ cp $2
+ jr z, .asm_5180b
+ CheckEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ SetEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ ret nz
+ jr .asm_51810
+.asm_5180b
+ CheckEventAfterBranchReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
+ SetEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
+ ret nz
+.asm_51810
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ ret
+
+CoordsData_51816:
+ db $10,$01
+ db $10,$09
+ db $FF
+
+VictoryRoad2F_TextPointers:
+ dw VictoryRoad2Text1
+ dw VictoryRoad2Text2
+ dw VictoryRoad2Text3
+ dw VictoryRoad2Text4
+ dw VictoryRoad2Text5
+ dw MoltresText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad2TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0
+ dw VictoryRoad2BattleText1 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText1 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText1 ; TextEndBattle
+ dw VictoryRoad2EndBattleText1 ; TextEndBattle
+
+VictoryRoad2TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_1
+ dw VictoryRoad2BattleText2 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText2 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText2 ; TextEndBattle
+ dw VictoryRoad2EndBattleText2 ; TextEndBattle
+
+VictoryRoad2TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2
+ dw VictoryRoad2BattleText3 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText3 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText3 ; TextEndBattle
+ dw VictoryRoad2EndBattleText3 ; TextEndBattle
+
+VictoryRoad2TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3
+ dw VictoryRoad2BattleText4 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText4 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText4 ; TextEndBattle
+ dw VictoryRoad2EndBattleText4 ; TextEndBattle
+
+VictoryRoad2TrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4
+ dw VictoryRoad2BattleText5 ; TextBeforeBattle
+ dw VictoryRoad2AfterBattleText5 ; TextAfterBattle
+ dw VictoryRoad2EndBattleText5 ; TextEndBattle
+ dw VictoryRoad2EndBattleText5 ; TextEndBattle
+
+MoltresTrainerHeader:
+ dbEventFlagBit EVENT_BEAT_MOLTRES
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_MOLTRES
+ dw MoltresBattleText ; TextBeforeBattle
+ dw MoltresBattleText ; TextAfterBattle
+ dw MoltresBattleText ; TextEndBattle
+ dw MoltresBattleText ; TextEndBattle
+
+ db $ff
+
+VictoryRoad2Text1:
+ TX_ASM
+ ld hl, VictoryRoad2TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text2:
+ TX_ASM
+ ld hl, VictoryRoad2TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text3:
+ TX_ASM
+ ld hl, VictoryRoad2TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text4:
+ TX_ASM
+ ld hl, VictoryRoad2TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad2Text5:
+ TX_ASM
+ ld hl, VictoryRoad2TrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MoltresText:
+ TX_ASM
+ ld hl, MoltresTrainerHeader
+ call TalkToTrainer
+ jp TextScriptEnd
+
+MoltresBattleText:
+ TX_FAR _MoltresBattleText
+ TX_ASM
+ ld a, MOLTRES
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+VictoryRoad2BattleText1:
+ TX_FAR _VictoryRoad2BattleText1
+ db "@"
+
+VictoryRoad2EndBattleText1:
+ TX_FAR _VictoryRoad2EndBattleText1
+ db "@"
+
+VictoryRoad2AfterBattleText1:
+ TX_FAR _VictoryRoad2AfterBattleText1
+ db "@"
+
+VictoryRoad2BattleText2:
+ TX_FAR _VictoryRoad2BattleText2
+ db "@"
+
+VictoryRoad2EndBattleText2:
+ TX_FAR _VictoryRoad2EndBattleText2
+ db "@"
+
+VictoryRoad2AfterBattleText2:
+ TX_FAR _VictoryRoad2AfterBattleText2
+ db "@"
+
+VictoryRoad2BattleText3:
+ TX_FAR _VictoryRoad2BattleText3
+ db "@"
+
+VictoryRoad2EndBattleText3:
+ TX_FAR _VictoryRoad2EndBattleText3
+ db "@"
+
+VictoryRoad2AfterBattleText3:
+ TX_FAR _VictoryRoad2AfterBattleText3
+ db "@"
+
+VictoryRoad2BattleText4:
+ TX_FAR _VictoryRoad2BattleText4
+ db "@"
+
+VictoryRoad2EndBattleText4:
+ TX_FAR _VictoryRoad2EndBattleText4
+ db "@"
+
+VictoryRoad2AfterBattleText4:
+ TX_FAR _VictoryRoad2AfterBattleText4
+ db "@"
+
+VictoryRoad2BattleText5:
+ TX_FAR _VictoryRoad2BattleText5
+ db "@"
+
+VictoryRoad2EndBattleText5:
+ TX_FAR _VictoryRoad2EndBattleText5
+ db "@"
+
+VictoryRoad2AfterBattleText5:
+ TX_FAR _VictoryRoad2AfterBattleText5
+ db "@"
diff --git a/scripts/VictoryRoad3F.asm b/scripts/VictoryRoad3F.asm
new file mode 100755
index 00000000..dc7a2aac
--- /dev/null
+++ b/scripts/VictoryRoad3F.asm
@@ -0,0 +1,200 @@
+VictoryRoad3F_Script:
+ call VictoryRoad3Script_44996
+ call EnableAutoTextBoxDrawing
+ ld hl, VictoryRoad3TrainerHeader0
+ ld de, VictoryRoad3F_ScriptPointers
+ ld a, [wVictoryRoad3FCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wVictoryRoad3FCurScript], a
+ ret
+
+VictoryRoad3Script_44996:
+ ld hl, wCurrentMapScriptFlags
+ bit 5, [hl]
+ res 5, [hl]
+ ret z
+ CheckEventHL EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1
+ ret z
+ ld a, $1d
+ ld [wNewTileBlockID], a
+ lb bc, 5, 3
+ predef_jump ReplaceTileBlock
+
+VictoryRoad3F_ScriptPointers:
+ dw VictoryRoad3Script0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+VictoryRoad3Script0:
+ ld hl, wFlags_0xcd60
+ bit 7, [hl]
+ res 7, [hl]
+ jp z, .asm_449fe
+ ld hl, .coordsData_449f9
+ call CheckBoulderCoords
+ jp nc, .asm_449fe
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_449dc
+ ld a, [hSpriteIndexOrTextID]
+ cp $f ; Pikachu
+ jp z, .asm_449fe
+ ld hl, wCurrentMapScriptFlags
+ set 5, [hl]
+ SetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1
+ ret
+.asm_449dc
+ CheckAndSetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
+ jr nz, .asm_449fe
+ ld a, HS_VICTORY_ROAD_3F_BOULDER
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_VICTORY_ROAD_2F_BOULDER
+ ld [wMissableObjectIndex], a
+ predef_jump ShowObject
+
+.coordsData_449f9:
+ db $05,$03
+ db $0F,$17
+ db $FF
+
+.asm_449fe
+ ld a, VICTORY_ROAD_2F
+ ld [wDungeonWarpDestinationMap], a
+ ld hl, .coordsData_449f9
+ call IsPlayerOnDungeonWarp
+ ld a, [wCoordIndex]
+ cp $1
+ jr nz, .asm_44a1b
+ ld hl, wd72d
+ res 4, [hl]
+ ld hl, wd732
+ res 4, [hl]
+ ret
+.asm_44a1b
+ ld a, [wd72d]
+ bit 4, a
+ jp z, CheckFightingMapTrainers
+ ret
+
+VictoryRoad3F_TextPointers:
+ dw VictoryRoad3Text1
+ dw VictoryRoad3Text2
+ dw VictoryRoad3Text3
+ dw VictoryRoad3Text4
+ dw PickUpItemText
+ dw PickUpItemText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+ dw BoulderText
+
+VictoryRoad3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0
+ dw VictoryRoad3BattleText2 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText2 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText2 ; TextEndBattle
+ dw VictoryRoad3EndBattleText2 ; TextEndBattle
+
+VictoryRoad3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_1
+ dw VictoryRoad3BattleText3 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText3 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText3 ; TextEndBattle
+ dw VictoryRoad3EndBattleText3 ; TextEndBattle
+
+VictoryRoad3TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2
+ dw VictoryRoad3BattleText4 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText4 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText4 ; TextEndBattle
+ dw VictoryRoad3EndBattleText4 ; TextEndBattle
+
+VictoryRoad3TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3
+ dw VictoryRoad3BattleText5 ; TextBeforeBattle
+ dw VictoryRoad3AfterBattleText5 ; TextAfterBattle
+ dw VictoryRoad3EndBattleText5 ; TextEndBattle
+ dw VictoryRoad3EndBattleText5 ; TextEndBattle
+
+ db $ff
+
+VictoryRoad3Text1:
+ TX_ASM
+ ld hl, VictoryRoad3TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text2:
+ TX_ASM
+ ld hl, VictoryRoad3TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text3:
+ TX_ASM
+ ld hl, VictoryRoad3TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3Text4:
+ TX_ASM
+ ld hl, VictoryRoad3TrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+VictoryRoad3BattleText2:
+ TX_FAR _VictoryRoad3BattleText2
+ db "@"
+
+VictoryRoad3EndBattleText2:
+ TX_FAR _VictoryRoad3EndBattleText2
+ db "@"
+
+VictoryRoad3AfterBattleText2:
+ TX_FAR _VictoryRoad3AfterBattleText2
+ db "@"
+
+VictoryRoad3BattleText3:
+ TX_FAR _VictoryRoad3BattleText3
+ db "@"
+
+VictoryRoad3EndBattleText3:
+ TX_FAR _VictoryRoad3EndBattleText3
+ db "@"
+
+VictoryRoad3AfterBattleText3:
+ TX_FAR _VictoryRoad3AfterBattleText3
+ db "@"
+
+VictoryRoad3BattleText4:
+ TX_FAR _VictoryRoad3BattleText4
+ db "@"
+
+VictoryRoad3EndBattleText4:
+ TX_FAR _VictoryRoad3EndBattleText4
+ db "@"
+
+VictoryRoad3AfterBattleText4:
+ TX_FAR _VictoryRoad3AfterBattleText4
+ db "@"
+
+VictoryRoad3BattleText5:
+ TX_FAR _VictoryRoad3BattleText5
+ db "@"
+
+VictoryRoad3EndBattleText5:
+ TX_FAR _VictoryRoad3EndBattleText5
+ db "@"
+
+VictoryRoad3AfterBattleText5:
+ TX_FAR _VictoryRoad3AfterBattleText5
+ db "@"
diff --git a/scripts/ViridianCity.asm b/scripts/ViridianCity.asm
new file mode 100755
index 00000000..6dc68d4f
--- /dev/null
+++ b/scripts/ViridianCity.asm
@@ -0,0 +1,363 @@
+ViridianCity_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianCity_ScriptPointers
+ ld a, [wViridianCityCurScript]
+ call CallFunctionInTable
+ ret
+
+ViridianCity_ScriptPointers:
+ dw ViridianCityScript0
+ dw ViridianCityScript1
+ dw ViridianCityScript2
+ dw ViridianCityScript3
+ dw ViridianCityScript4
+ dw ViridianCityScript5
+ dw ViridianCityScript6
+ dw ViridianCityScript7
+ dw ViridianCityScript8
+ dw ViridianCityScript9
+ dw ViridianCityScript10
+
+ViridianCityScript0:
+ call ViridianCityScript_1905b
+ call ViridianCityScript_190ab
+ ret
+
+ViridianCityScript1:
+ call ViridianCityScript_19162
+ViridianCityScript2:
+ call ViridianCityScript_1905b
+ ret
+
+ViridianCityScript_1905b:
+ CheckEvent EVENT_VIRIDIAN_GYM_OPEN
+ ret nz
+ ld a, [wObtainedBadges]
+ cp %01111111
+ jr nz, .gymClosed
+ SetEvent EVENT_VIRIDIAN_GYM_OPEN
+ ret
+.gymClosed
+ ld a, [wYCoord]
+ cp 8
+ ret nz
+ ld a, [wXCoord]
+ cp 32
+ ret nz
+ ld a, $f
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ xor a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld [wJoyIgnore], a
+ ld [hJoyHeld], a
+ ld a, $6
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript6:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $2
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript_190ab:
+ ld a, [wYCoord]
+ cp 9
+ ret nz
+ ld a, [wXCoord]
+ cp 19
+ ret nz
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [hJoyHeld], a
+ call ViridianCityScript_1914d
+ ld a, $5
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript3:
+ call ViridianCityScript_190ef
+ call ViridianCityScript_190db
+ ResetEvent EVENT_02F
+ ld a, $4
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript_190db:
+ xor a
+ ld [wListScrollOffset], a
+ ld a, BATTLE_TYPE_OLD_MAN
+ ld [wBattleType], a
+ ld a, 5
+ ld [wCurEnemyLVL], a
+ ld a, RATTATA
+ ld [wCurOpponent], a
+ ret
+
+ViridianCityScript_190ef:
+ ld a, [wSpriteStateData1 + 3 * $10 + 4]
+ ld [$ffeb], a
+ ld a, [wSpriteStateData1 + 3 * $10 + 6]
+ ld [$ffec], a
+ ld a, [wSpriteStateData2 + 3 * $10 + 4]
+ ld [$ffed], a
+ ld a, [wSpriteStateData2 + 3 * $10 + 5]
+ ld [$ffee], a
+ ret
+
+ViridianCityScript4:
+ call ViridianCityScript_1912a
+ call UpdateSprites
+ call Delay3
+ SetEvent EVENT_02E
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $10
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wBattleType], a
+ ld [wJoyIgnore], a
+ ld a, $2
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript_1912a:
+ ld a, [$ffeb]
+ ld [wSpriteStateData1 + 3 * $10 + 4], a
+ ld a, [$ffec]
+ ld [wSpriteStateData1 + 3 * $10 + 6], a
+ ld a, [$ffed]
+ ld [wSpriteStateData2 + 3 * $10 + 4], a
+ ld a, [$ffee]
+ ld [wSpriteStateData2 + 3 * $10 + 5], a
+ ret
+
+ViridianCityScript5:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $0
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript_1914d:
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ xor a
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld [wJoyIgnore], a
+ ret
+
+ViridianCityScript_19162:
+ CheckEvent EVENT_02D
+ ret nz
+ ld a, [wYCoord]
+ cp 9
+ ret nz
+ ld a, [wXCoord]
+ cp 19
+ ret nz
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ ld a, SPRITE_FACING_RIGHT
+ ld [hSpriteFacingDirection], a
+ call SetSpriteFacingDirectionAndDelay
+ ld a, $8
+ ld [wSpritePlayerStateData1FacingDirection], a
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld a, D_UP | D_DOWN | D_LEFT | D_RIGHT | START | SELECT
+ ld [wJoyIgnore], a
+ ret
+
+ViridianCityScript7:
+ call ViridianCityScript_190ef
+ call ViridianCityScript_190db
+ SetEvent EVENT_02F
+ ld a, D_UP | D_DOWN | D_LEFT | D_RIGHT | START | SELECT
+ ld [wJoyIgnore], a
+ ld a, $8
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript8:
+ call ViridianCityScript_1912a
+ call UpdateSprites
+ call Delay3
+ SetEvent EVENT_02D
+ ld a, D_UP | D_DOWN | D_LEFT | D_RIGHT | START | SELECT
+ ld [wJoyIgnore], a
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ xor a
+ ld [wBattleType], a
+ dec a
+ ld [wJoyIgnore], a
+ ld a, $9
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityScript9:
+ ld de, ViridianCityOldManMovementData2
+ ld a, [wXCoord]
+ cp 19
+ jr z, .asm_191e4
+ callab Func_f1a01
+ ld de, ViridianCityOldManMovementData1
+.asm_191e4
+ ld a, $8
+ ld [hSpriteIndexOrTextID], a
+ call MoveSprite
+ ld a, $a
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityOldManMovementData1:
+ db NPC_MOVEMENT_RIGHT
+ViridianCityOldManMovementData2:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $ff
+
+ViridianCityScript10:
+ ld a, [wd730]
+ bit 0, a
+ ret nz
+ ld a, $3
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ xor a
+ ld [wJoyIgnore], a
+ ld a, $2
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCity_TextPointers:
+ dw ViridianCityText_0
+ dw ViridianCityText_1
+ dw ViridianCityText_2
+ dw ViridianCityText_3
+ dw ViridianCityText_4
+ dw ViridianCityText_5
+ dw ViridianCityText_6
+ dw ViridianCityText_7
+ dw ViridianCityText_8
+ dw ViridianCityText_9
+ dw ViridianCityText_10
+ dw MartSignText
+ dw PokeCenterSignText
+ dw ViridianCityText_11
+ dw ViridianCityText_12
+ dw ViridianCityText_13
+
+ViridianCityText_0:
+ TX_ASM
+ callba Func_f18bb
+ jp TextScriptEnd
+
+ViridianCityText_1:
+ TX_ASM
+ callba Func_f18c7
+ jp TextScriptEnd
+
+ViridianCityText_2:
+ TX_ASM
+ callba Func_f18e9
+ jp TextScriptEnd
+
+ViridianCityText_3:
+ TX_ASM
+ callba Func_f1911
+ jp TextScriptEnd
+
+ViridianCityText_4:
+ TX_ASM
+ callba Func_f192c
+ jp TextScriptEnd
+
+ViridianCityText_5:
+ TX_ASM
+ callba Func_f194a
+ jp TextScriptEnd
+
+ViridianCityText_6:
+ TX_ASM
+ callba Func_f198e
+ jp TextScriptEnd
+
+ViridianCityText_13:
+ TX_FAR _ViridianCityText_19219
+ db "@"
+
+ViridianCityText_7:
+ TX_ASM
+ CheckEvent EVENT_02D
+ jr nz, .asm_192a6
+ ld hl, ViridianCityText_192af
+ call PrintText
+ ld c, 2
+ call DelayFrames
+ ld a, $7
+ ld [wViridianCityCurScript], a
+ jr .asm_192ac
+
+.asm_192a6
+ ld hl, ViridianCityText_192b4
+ call PrintText
+.asm_192ac
+ jp TextScriptEnd
+
+ViridianCityText_192af:
+ TX_FAR _ViridianCityText_1920a
+ db "@"
+
+ViridianCityText_192b4:
+ TX_FAR _OldManTextAfterBattle
+ db "@"
+
+ViridianCityText_8:
+ TX_ASM
+ callba Func_f19c5
+ jp TextScriptEnd
+
+ViridianCityText_9:
+ TX_ASM
+ callba Func_f19d1
+ jp TextScriptEnd
+
+ViridianCityText_10:
+ TX_ASM
+ callba Func_f19dd
+ jp TextScriptEnd
+
+ViridianCityText_11:
+ TX_ASM
+ callba Func_f19e9
+ jp TextScriptEnd
+
+ViridianCityText_12:
+ TX_ASM
+ callba Func_f19f5
+ jp TextScriptEnd
diff --git a/scripts/ViridianCity2.asm b/scripts/ViridianCity2.asm
new file mode 100755
index 00000000..ffaeb4e2
--- /dev/null
+++ b/scripts/ViridianCity2.asm
@@ -0,0 +1,215 @@
+Func_f18bb:
+ ld hl, ViridianCityText_f18c2
+ call PrintText
+ ret
+
+ViridianCityText_f18c2:
+ TX_FAR _ViridianCityText1
+ db "@"
+
+Func_f18c7:
+ ld hl, ViridianCityText_f18e4
+ ld a, [wObtainedBadges]
+ cp %01111111
+ jr z, .printAndDone
+ CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ jr nz, .printAndDone
+ ld hl, ViridianCityText_f18df
+.printAndDone
+ call PrintText
+ ret
+
+ViridianCityText_f18df:
+ TX_FAR _ViridianCityText_19122
+ db "@"
+
+ViridianCityText_f18e4:
+ TX_FAR _ViridianCityText_19127
+ db "@"
+
+Func_f18e9:
+ ld hl, ViridianCityText_f1902
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ ld hl, ViridianCityText_f1907
+ jr nz, .no
+ ld hl, ViridianCityText_f190c
+.no
+ call PrintText
+ ret
+
+ViridianCityText_f1902:
+ TX_FAR _ViridianCityText_1914d
+ db "@"
+
+ViridianCityText_f1907:
+ TX_FAR _ViridianCityText_19152
+ db "@"
+
+ViridianCityText_f190c:
+ TX_FAR _ViridianCityText_19157
+ db "@"
+
+Func_f1911:
+ ld hl, ViridianCityText_f1927
+ CheckEvent EVENT_GOT_POKEDEX
+ jr nz, .gotPokedex
+ ld hl, ViridianCityText_f1922
+.gotPokedex
+ call PrintText
+ ret
+
+ViridianCityText_f1922:
+ TX_FAR _ViridianCityText_19175
+ db "@"
+
+ViridianCityText_f1927:
+ TX_FAR _ViridianCityText_1917a
+ db "@"
+
+Func_f192c:
+ ld hl, ViridianCityText_f1945
+ call PrintText
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wSimulatedJoypadStatesIndex], a
+ ld a, D_DOWN
+ ld [wSimulatedJoypadStatesEnd], a
+ ld a, $5
+ ld [wViridianCityCurScript], a
+ ret
+
+ViridianCityText_f1945:
+ TX_FAR _ViridianCityText_19191
+ db "@"
+
+Func_f194a:
+ CheckEvent EVENT_GOT_TM42
+ jr nz, .gotTm42
+ ld hl, ViridianCityText_f1979
+ call PrintText
+ lb bc, TM_42, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ViridianCityText_f197e
+ call PrintText
+ SetEvent EVENT_GOT_TM42
+ ret
+.BagFull
+ ld hl, ViridianCityText_f1989
+ call PrintText
+ ret
+.gotTm42
+ ld hl, ViridianCityText_f1984
+ call PrintText
+ ret
+
+ViridianCityText_f1979:
+ TX_FAR _ViridianCityText_191ca
+ db "@"
+
+ViridianCityText_f197e:
+ TX_FAR _ReceivedTM42Text
+ TX_SFX_ITEM_2
+ db "@"
+
+ViridianCityText_f1984:
+ TX_FAR _TM42Explanation
+ db "@"
+
+ViridianCityText_f1989:
+ TX_FAR _TM42NoRoomText
+ db "@"
+
+Func_f198e:
+ ld hl, ViridianCityText_f19b6
+ call PrintText
+ ld c, 2
+ call DelayFrames
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ jr nz, .hurry
+ ld hl, ViridianCityText_f19bb
+ call PrintText
+ ld a, $3
+ ld [wViridianCityCurScript], a
+ jr .done
+.hurry
+ ld hl, ViridianCityText_f19c0
+ call PrintText
+.done
+ ret
+
+ViridianCityText_f19b6:
+ TX_FAR _OldManAgainText1
+ db "@"
+
+ViridianCityText_f19bb:
+ TX_FAR _OldManAgainText2
+ db "@"
+
+ViridianCityText_f19c0:
+ TX_FAR _OldManAgainText3
+ db "@"
+
+Func_f19c5:
+ ld hl, ViridianCityText_f19cc
+ call PrintText
+ ret
+
+ViridianCityText_f19cc:
+ TX_FAR _ViridianCityText8
+ db "@"
+
+Func_f19d1:
+ ld hl, ViridianCityText_f19d8
+ call PrintText
+ ret
+
+ViridianCityText_f19d8:
+ TX_FAR _ViridianCityText9
+ db "@"
+
+Func_f19dd:
+ ld hl, ViridianCityText_f19e4
+ call PrintText
+ ret
+
+ViridianCityText_f19e4:
+ TX_FAR _ViridianCityText10
+ db "@"
+
+Func_f19e9:
+ ld hl, ViridianCityText_f19f0
+ call PrintText
+ ret
+
+ViridianCityText_f19f0:
+ TX_FAR _ViridianCityText13
+ db "@"
+
+Func_f19f5:
+ ld hl, ViridianCityText_f19fc
+ call PrintText
+ ret
+
+ViridianCityText_f19fc:
+ TX_FAR _ViridianCityText14
+ db "@"
+
+
+Func_f1a01:
+ ld hl, Data_f1a0a
+ ld b, SPRITE_FACING_RIGHT
+ call TryApplyPikachuMovementData
+ ret
+
+Data_f1a0a:
+ db $00
+ db $1d
+ db $1f
+ db $38
+ db $3f
diff --git a/scripts/ViridianForest.asm b/scripts/ViridianForest.asm
new file mode 100755
index 00000000..fb9a71e3
--- /dev/null
+++ b/scripts/ViridianForest.asm
@@ -0,0 +1,206 @@
+ViridianForest_Script:
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianForestTrainerHeader0
+ ld de, ViridianForest_ScriptPointers
+ ld a, [wViridianForestCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wViridianForestCurScript], a
+ ret
+
+ViridianForest_ScriptPointers:
+ dw CheckFightingMapTrainers
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+
+ViridianForest_TextPointers:
+ dw ViridianForestText1
+ dw ViridianForestText2
+ dw ViridianForestText3
+ dw ViridianForestText4
+ dw ViridianForestText5
+ dw ViridianForestText6
+ dw PickUpItemText
+ dw PickUpItemText
+ dw PickUpItemText
+ dw ViridianForestText10
+ dw ViridianForestText11
+ dw ViridianForestText12
+ dw ViridianForestText13
+ dw ViridianForestText14
+ dw ViridianForestText15
+ dw ViridianForestText16
+
+ViridianForestTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0
+ dw ViridianForestBattleText1 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText1 ; TextAfterBattle
+ dw ViridianForestEndBattleText1 ; TextEndBattle
+ dw ViridianForestEndBattleText1 ; TextEndBattle
+
+ViridianForestTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1
+ dw ViridianForestBattleText2 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText2 ; TextAfterBattle
+ dw ViridianForestEndBattleText2 ; TextEndBattle
+ dw ViridianForestEndBattleText2 ; TextEndBattle
+
+ViridianForestTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2
+ db ($1 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2
+ dw ViridianForestBattleText3 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText3 ; TextAfterBattle
+ dw ViridianForestEndBattleText3 ; TextEndBattle
+ dw ViridianForestEndBattleText3 ; TextEndBattle
+
+ViridianForestTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_3
+ db ($0 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_3
+ dw ViridianForestBattleText4 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText4 ; TextAfterBattle
+ dw ViridianForestEndBattleText4 ; TextEndBattle
+ dw ViridianForestEndBattleText4 ; TextEndBattle
+
+ViridianForestTrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_4
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_4
+ dw ViridianForestBattleText5 ; TextBeforeBattle
+ dw ViridianForestAfterBattleText5 ; TextAfterBattle
+ dw ViridianForestEndBattleText5 ; TextEndBattle
+ dw ViridianForestEndBattleText5 ; TextEndBattle
+
+ db $ff
+
+ViridianForestText1:
+ TX_FAR _ViridianForestText1
+ db "@"
+
+ViridianForestText2:
+ TX_ASM
+ ld hl, ViridianForestTrainerHeader0
+ jr ViridianForestTalkToTrainer
+
+ViridianForestText3:
+ TX_ASM
+ ld hl, ViridianForestTrainerHeader1
+ jr ViridianForestTalkToTrainer
+
+ViridianForestText4:
+ TX_ASM
+ ld hl, ViridianForestTrainerHeader2
+ jr ViridianForestTalkToTrainer
+
+ViridianForestText5:
+ TX_ASM
+ ld hl, ViridianForestTrainerHeader3
+ jr ViridianForestTalkToTrainer
+
+ViridianForestText6:
+ TX_ASM
+ ld hl, ViridianForestTrainerHeader4
+ViridianForestTalkToTrainer:
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianForestBattleText1:
+ TX_FAR _ViridianForestBattleText1
+ db "@"
+
+ViridianForestEndBattleText1:
+ TX_FAR _ViridianForestEndBattleText1
+ db "@"
+
+ViridianForestAfterBattleText1:
+ TX_FAR _ViridianFrstAfterBattleText1
+ db "@"
+
+ViridianForestBattleText2:
+ TX_FAR _ViridianForestBattleText2
+ db "@"
+
+ViridianForestEndBattleText2:
+ TX_FAR _ViridianForestEndBattleText2
+ db "@"
+
+ViridianForestAfterBattleText2:
+ TX_FAR _ViridianFrstAfterBattleText2
+ db "@"
+
+ViridianForestBattleText3:
+ TX_FAR _ViridianForestBattleText3
+ db "@"
+
+ViridianForestEndBattleText3:
+ TX_FAR _ViridianForestEndBattleText3
+ db "@"
+
+ViridianForestAfterBattleText3:
+ TX_FAR _ViridianFrstAfterBattleText3
+ db "@"
+
+ViridianForestBattleText4:
+ TX_FAR _ViridianForestBattleTextPikaGirl
+ db "@"
+
+ViridianForestEndBattleText4:
+ TX_FAR _ViridianForestEndBattleTextPikaGirl
+ db "@"
+
+ViridianForestAfterBattleText4:
+ TX_FAR _ViridianForestAfterBattleTextPikaGirl
+ db "@"
+
+ViridianForestBattleText5:
+ TX_FAR _ViridianForestBattleTextSamurai
+ db "@"
+
+ViridianForestEndBattleText5:
+ TX_FAR _ViridianForestEndBattleTextSamurai
+ db "@"
+
+ViridianForestAfterBattleText5:
+ TX_FAR _ViridianForestAfterBattleTextSamurai
+ db "@"
+
+ViridianForestText10:
+ TX_FAR _ViridianForestText8
+ db "@"
+
+ViridianForestText11:
+ TX_ASM
+ ld hl, Func_f2528
+ jp ViridianForestScript_6120d
+
+ViridianForestText12:
+ TX_ASM
+ ld hl, Func_f2534
+ jp ViridianForestScript_6120d
+
+ViridianForestText13:
+ TX_ASM
+ ld hl, Func_f2540
+ jp ViridianForestScript_6120d
+
+ViridianForestText14:
+ TX_ASM
+ ld hl, Func_f254c
+ jp ViridianForestScript_6120d
+
+ViridianForestText15:
+ TX_ASM
+ ld hl, Func_f2558
+ jp ViridianForestScript_6120d
+
+ViridianForestText16:
+ TX_ASM
+ ld hl, Func_f2528
+ViridianForestScript_6120d
+ ld b, BANK(Func_f2528)
+ call Bankswitch
+ jp TextScriptEnd
diff --git a/scripts/viridianforest2.asm b/scripts/ViridianForest2.asm
index 489db39c..489db39c 100755
--- a/scripts/viridianforest2.asm
+++ b/scripts/ViridianForest2.asm
diff --git a/scripts/ViridianForestNorthGate.asm b/scripts/ViridianForestNorthGate.asm
new file mode 100755
index 00000000..e421bf5b
--- /dev/null
+++ b/scripts/ViridianForestNorthGate.asm
@@ -0,0 +1,14 @@
+ViridianForestNorthGate_Script:
+ jp EnableAutoTextBoxDrawing
+
+ViridianForestNorthGate_TextPointers:
+ dw ViridianForestExitText1
+ dw ViridianForestExitText2
+
+ViridianForestExitText1:
+ TX_FAR _ViridianForestExitText1
+ db "@"
+
+ViridianForestExitText2:
+ TX_FAR _ViridianForestExitText2
+ db "@"
diff --git a/scripts/ViridianForestSouthGate.asm b/scripts/ViridianForestSouthGate.asm
new file mode 100755
index 00000000..6eaaaace
--- /dev/null
+++ b/scripts/ViridianForestSouthGate.asm
@@ -0,0 +1,15 @@
+ViridianForestSouthGate_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+ViridianForestSouthGate_TextPointers:
+ dw ViridianForestEntranceText1
+ dw ViridianForestEntranceText2
+
+ViridianForestEntranceText1:
+ TX_FAR _ViridianForestEntranceText1
+ db "@"
+
+ViridianForestEntranceText2:
+ TX_FAR _ViridianForestEntranceText2
+ db "@"
diff --git a/scripts/ViridianGym.asm b/scripts/ViridianGym.asm
new file mode 100755
index 00000000..b0f94b9d
--- /dev/null
+++ b/scripts/ViridianGym.asm
@@ -0,0 +1,496 @@
+ViridianGym_Script:
+ ld hl, Gym8CityName
+ ld de, Gym8LeaderName
+ call LoadGymLeaderAndCityName
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianGymTrainerHeader0
+ ld de, ViridianGym_ScriptPointers
+ ld a, [wViridianGymCurScript]
+ call ExecuteCurMapScriptInTable
+ ld [wViridianGymCurScript], a
+ ret
+
+Gym8CityName:
+ db "VIRIDIAN CITY@"
+Gym8LeaderName:
+ db "GIOVANNI@"
+
+ViridianGymScript_748d6:
+ xor a
+ ld [wJoyIgnore], a
+ ld [wViridianGymCurScript], a
+ ld [wCurMapScript], a
+ ret
+
+ViridianGym_ScriptPointers:
+ dw ViridianGymScript0
+ dw DisplayEnemyTrainerTextAndStartBattle
+ dw EndTrainerBattle
+ dw ViridianGymScript3
+ dw ViridianGymScript4
+
+ViridianGymScript0:
+ ld a, [wYCoord]
+ ld b, a
+ ld a, [wXCoord]
+ ld c, a
+ ld hl, ViridianGymArrowTilePlayerMovement
+ call DecodeArrowMovementRLE
+ cp $ff
+ jp z, CheckFightingMapTrainers
+ call StartSimulatingJoypadStates
+ ld hl, wd736
+ set 7, [hl]
+ ld a, SFX_ARROW_TILES
+ call PlaySound
+ ld a, $ff
+ ld [wJoyIgnore], a
+ ld a, $4
+ ld [wCurMapScript], a
+ ret
+
+;format:
+;db y,x
+;dw pointer to movement
+ViridianGymArrowTilePlayerMovement:
+ db $b,$13
+ dw ViridianGymArrowMovement1
+ db $1,$13
+ dw ViridianGymArrowMovement2
+ db $2,$12
+ dw ViridianGymArrowMovement3
+ db $2,$b
+ dw ViridianGymArrowMovement4
+ db $a,$10
+ dw ViridianGymArrowMovement5
+ db $6,$4
+ dw ViridianGymArrowMovement6
+ db $d,$5
+ dw ViridianGymArrowMovement7
+ db $e,$4
+ dw ViridianGymArrowMovement8
+ db $f,$0
+ dw ViridianGymArrowMovement9
+ db $f,$1
+ dw ViridianGymArrowMovement10
+ db $10,$d
+ dw ViridianGymArrowMovement11
+ db $11,$d
+ dw ViridianGymArrowMovement12
+ db $FF
+
+;format: direction, count
+ViridianGymArrowMovement1:
+ db D_UP,$09,$FF
+
+ViridianGymArrowMovement2:
+ db D_LEFT,$08,$FF
+
+ViridianGymArrowMovement3:
+ db D_DOWN,$09,$FF
+
+ViridianGymArrowMovement4:
+ db D_RIGHT,$06,$FF
+
+ViridianGymArrowMovement5:
+ db D_DOWN,$02,$FF
+
+ViridianGymArrowMovement6:
+ db D_DOWN,$07,$FF
+
+ViridianGymArrowMovement7:
+ db D_RIGHT,$08,$FF
+
+ViridianGymArrowMovement8:
+ db D_RIGHT,$09,$FF
+
+ViridianGymArrowMovement9:
+ db D_UP,$08,$FF
+
+ViridianGymArrowMovement10:
+ db D_UP,$06,$FF
+
+ViridianGymArrowMovement11:
+ db D_LEFT,$06,$FF
+
+ViridianGymArrowMovement12:
+ db D_LEFT,$0C,$FF
+
+ViridianGymScript4:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ jr nz, .asm_74980
+ xor a
+ ld [wJoyIgnore], a
+ ld hl, wd736
+ res 7, [hl]
+ ld a, $0
+ ld [wCurMapScript], a
+ ret
+.asm_74980
+ jpba LoadSpinnerArrowTiles
+
+ViridianGymScript3:
+ ld a, [wIsInBattle]
+ cp $ff
+ jp z, ViridianGymScript_748d6
+ ld a, $f0
+ ld [wJoyIgnore], a
+ViridianGymScript3_74995:
+ ld a, $c
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ lb bc, TM_27, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld a, $d
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ SetEvent EVENT_GOT_TM27
+ jr .gymVictory
+.BagFull
+ ld a, $e
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+.gymVictory
+ ld hl, wObtainedBadges
+ set 7, [hl]
+ ld hl, wBeatGymFlags
+ set 7, [hl]
+
+ ; deactivate gym trainers
+ SetEventRange EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0, EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7
+
+ ld a, HS_ROUTE_22_RIVAL_2
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ SetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
+ jp ViridianGymScript_748d6
+
+ViridianGym_TextPointers:
+ dw ViridianGymText1
+ dw ViridianGymText2
+ dw ViridianGymText3
+ dw ViridianGymText4
+ dw ViridianGymText5
+ dw ViridianGymText6
+ dw ViridianGymText7
+ dw ViridianGymText8
+ dw ViridianGymText9
+ dw ViridianGymText10
+ dw PickUpItemText
+ dw ViridianGymText12
+ dw ViridianGymText13
+ dw ViridianGymText14
+
+ViridianGymTrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0
+ dw ViridianGymBattleText1 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText1 ; TextAfterBattle
+ dw ViridianGymEndBattleText1 ; TextEndBattle
+ dw ViridianGymEndBattleText1 ; TextEndBattle
+
+ViridianGymTrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1
+ dw ViridianGymBattleText2 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText2 ; TextAfterBattle
+ dw ViridianGymEndBattleText2 ; TextEndBattle
+ dw ViridianGymEndBattleText2 ; TextEndBattle
+
+ViridianGymTrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2
+ dw ViridianGymBattleText3 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText3 ; TextAfterBattle
+ dw ViridianGymEndBattleText3 ; TextEndBattle
+ dw ViridianGymEndBattleText3 ; TextEndBattle
+
+ViridianGymTrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3
+ db ($2 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3
+ dw ViridianGymBattleText4 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText4 ; TextAfterBattle
+ dw ViridianGymEndBattleText4 ; TextEndBattle
+ dw ViridianGymEndBattleText4 ; TextEndBattle
+
+ViridianGymTrainerHeader4:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4
+ dw ViridianGymBattleText5 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText5 ; TextAfterBattle
+ dw ViridianGymEndBattleText5 ; TextEndBattle
+ dw ViridianGymEndBattleText5 ; TextEndBattle
+
+ViridianGymTrainerHeader5:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5
+ dw ViridianGymBattleText6 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText6 ; TextAfterBattle
+ dw ViridianGymEndBattleText6 ; TextEndBattle
+ dw ViridianGymEndBattleText6 ; TextEndBattle
+
+ViridianGymTrainerHeader6:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1
+ db ($3 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1
+ dw ViridianGymBattleText7 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText7 ; TextAfterBattle
+ dw ViridianGymEndBattleText7 ; TextEndBattle
+ dw ViridianGymEndBattleText7 ; TextEndBattle
+
+ViridianGymTrainerHeader7:
+ dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1
+ db ($4 << 4) ; trainer's view range
+ dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1
+ dw ViridianGymBattleText8 ; TextBeforeBattle
+ dw ViridianGymAfterBattleText8 ; TextAfterBattle
+ dw ViridianGymEndBattleText8 ; TextEndBattle
+ dw ViridianGymEndBattleText8 ; TextEndBattle
+
+ db $ff
+
+ViridianGymText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ jr z, .beginBattle
+ CheckEventReuseA EVENT_GOT_TM27
+ jr nz, .afterVictory
+ call z, ViridianGymScript3_74995
+ call DisableWaitingAfterTextDisplay
+ jr .done
+.afterVictory
+ ld a, $1
+ ld [wDoNotWaitForButtonPressAfterDisplayingText], a
+ ld hl, ViridianGymText_74ad9
+ call PrintText
+ call GBFadeOutToBlack
+ ld a, HS_VIRIDIAN_GYM_GIOVANNI
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ call UpdateSprites
+ call Delay3
+ call GBFadeInFromBlack
+ jr .done
+.beginBattle
+ ld hl, ViridianGymText_74ace
+ call PrintText
+ ld hl, wd72d
+ set 6, [hl]
+ set 7, [hl]
+ ld hl, ViridianGymText_74ad3
+ ld de, ViridianGymText_74ad3
+ call SaveEndBattleTextPointers
+ ld a, [H_SPRITEINDEX]
+ ld [wSpriteIndex], a
+ call EngageMapTrainer
+ call InitBattleEnemyParameters
+ ld a, $8
+ ld [wGymLeaderNo], a
+ ld a, $3
+ ld [wViridianGymCurScript], a
+.done
+ jp TextScriptEnd
+
+ViridianGymText_74ace:
+ TX_FAR _ViridianGymText_74ace
+ db "@"
+
+ViridianGymText_74ad3:
+ TX_FAR _ViridianGymText_74ad3
+ TX_SFX_LEVEL_UP ; probably supposed to play SFX_GET_ITEM_1 but the wrong music bank is loaded
+ db "@"
+
+ViridianGymText_74ad9:
+ TX_FAR _ViridianGymText_74ad9
+ TX_WAIT
+ db "@"
+
+ViridianGymText12:
+ TX_FAR _ViridianGymText12
+ db "@"
+
+ViridianGymText13:
+ TX_FAR _ReceivedTM27Text
+ TX_SFX_ITEM_1
+
+TM27ExplanationText:
+ TX_FAR _TM27ExplanationText
+ db "@"
+
+ViridianGymText14:
+ TX_FAR _TM27NoRoomText
+ db "@"
+
+ViridianGymText2:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText1:
+ TX_FAR _ViridianGymBattleText1
+ db "@"
+
+ViridianGymEndBattleText1:
+ TX_FAR _ViridianGymEndBattleText1
+ db "@"
+
+ViridianGymAfterBattleText1:
+ TX_FAR _ViridianGymAfterBattleText1
+ db "@"
+
+ViridianGymText3:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText2:
+ TX_FAR _ViridianGymBattleText2
+ db "@"
+
+ViridianGymEndBattleText2:
+ TX_FAR _ViridianGymEndBattleText2
+ db "@"
+
+ViridianGymAfterBattleText2:
+ TX_FAR _ViridianGymAfterBattleText2
+ db "@"
+
+ViridianGymText4:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText3:
+ TX_FAR _ViridianGymBattleText3
+ db "@"
+
+ViridianGymEndBattleText3:
+ TX_FAR _ViridianGymEndBattleText3
+ db "@"
+
+ViridianGymAfterBattleText3:
+ TX_FAR _ViridianGymAfterBattleText3
+ db "@"
+
+ViridianGymText5:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader3
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText4:
+ TX_FAR _ViridianGymBattleText4
+ db "@"
+
+ViridianGymEndBattleText4:
+ TX_FAR _ViridianGymEndBattleText4
+ db "@"
+
+ViridianGymAfterBattleText4:
+ TX_FAR _ViridianGymAfterBattleText4
+ db "@"
+
+ViridianGymText6:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader4
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText5:
+ TX_FAR _ViridianGymBattleText5
+ db "@"
+
+ViridianGymEndBattleText5:
+ TX_FAR _ViridianGymEndBattleText5
+ db "@"
+
+ViridianGymAfterBattleText5:
+ TX_FAR _ViridianGymAfterBattleText5
+ db "@"
+
+ViridianGymText7:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader5
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText6:
+ TX_FAR _ViridianGymBattleText6
+ db "@"
+
+ViridianGymEndBattleText6:
+ TX_FAR _ViridianGymEndBattleText6
+ db "@"
+
+ViridianGymAfterBattleText6:
+ TX_FAR _ViridianGymAfterBattleText6
+ db "@"
+
+ViridianGymText8:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader6
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText7:
+ TX_FAR _ViridianGymBattleText7
+ db "@"
+
+ViridianGymEndBattleText7:
+ TX_FAR _ViridianGymEndBattleText7
+ db "@"
+
+ViridianGymAfterBattleText7:
+ TX_FAR _ViridianGymAfterBattleText7
+ db "@"
+
+ViridianGymText9:
+ TX_ASM
+ ld hl, ViridianGymTrainerHeader7
+ call TalkToTrainer
+ jp TextScriptEnd
+
+ViridianGymBattleText8:
+ TX_FAR _ViridianGymBattleText8
+ db "@"
+
+ViridianGymEndBattleText8:
+ TX_FAR _ViridianGymEndBattleText8
+ db "@"
+
+ViridianGymAfterBattleText8:
+ TX_FAR _ViridianGymAfterBattleText8
+ db "@"
+
+ViridianGymText10:
+ TX_ASM
+ CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
+ jr nz, .asm_1abd1
+ ld hl, ViridianGymText_74bd4
+ call PrintText
+ jr .asm_6064d
+.asm_1abd1
+ ld hl, ViridianGymText_74bd9
+ call PrintText
+.asm_6064d
+ jp TextScriptEnd
+
+ViridianGymText_74bd4:
+ TX_FAR _ViridianGymText_74bd4
+ db "@"
+
+ViridianGymText_74bd9:
+ TX_FAR _ViridianGymText_74bd9
+ db "@"
diff --git a/scripts/ViridianMart.asm b/scripts/ViridianMart.asm
new file mode 100755
index 00000000..d1145778
--- /dev/null
+++ b/scripts/ViridianMart.asm
@@ -0,0 +1,106 @@
+ViridianMart_Script:
+ call ViridianMartScript_1d47d
+ call EnableAutoTextBoxDrawing
+ ld hl, ViridianMart_ScriptPointers
+ ld a, [wViridianMartCurScript]
+ call CallFunctionInTable
+ ret
+
+ViridianMartScript_1d47d:
+ CheckEvent EVENT_OAK_GOT_PARCEL
+ jr nz, .asm_1d489
+ ld hl, ViridianMart_TextPointers
+ jr .asm_1d48c
+.asm_1d489
+ ld hl, ViridianMart_TextPointers2
+.asm_1d48c
+ ld a, l
+ ld [wMapTextPtr], a
+ ld a, h
+ ld [wMapTextPtr+1], a
+ ret
+
+ViridianMart_ScriptPointers:
+ dw ViridianMartScript0
+ dw ViridianMartScript1
+ dw ViridianMartScript2
+
+ViridianMartScript0:
+ call UpdateSprites
+ ld a, $4
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ ld hl, wSimulatedJoypadStatesEnd
+ ld de, RLEMovement1d4bb
+ call DecodeRLEList
+ dec a
+ ld [wSimulatedJoypadStatesIndex], a
+ call StartSimulatingJoypadStates
+ ld a, $1
+ ld [wViridianMartCurScript], a
+ ret
+
+RLEMovement1d4bb:
+ db D_LEFT, $01
+ db D_UP, $02
+ db $ff
+
+ViridianMartScript1:
+ ld a, [wSimulatedJoypadStatesIndex]
+ and a
+ ret nz
+ call Delay3
+ ld a, $5
+ ld [hSpriteIndexOrTextID], a
+ call DisplayTextID
+ lb bc, OAKS_PARCEL, 1
+ call GiveItem
+ SetEvent EVENT_GOT_OAKS_PARCEL
+ ld a, $2
+ ld [wViridianMartCurScript], a
+ ret
+
+ViridianMartScript2:
+ CheckEventHL EVENT_02D
+ ret z
+ CheckAndSetEventReuseHL EVENT_02C
+ ret nz
+ ld a, HS_OLD_MAN
+ ld [wMissableObjectIndex], a
+ predef HideObject
+ ld a, HS_OLD_MAN_1
+ ld [wMissableObjectIndex], a
+ predef ShowObject
+ ret
+
+ViridianMart_TextPointers:
+ dw ViridianMartText1
+ dw ViridianMartText2
+ dw ViridianMartText3
+ dw ViridianMartText4
+ dw ViridianMartText5
+ViridianMart_TextPointers2:
+ dw ViridianCashierText
+ dw ViridianMartText2
+ dw ViridianMartText3
+
+ViridianMartText1:
+ TX_FAR _ViridianMartText1
+ db "@"
+
+ViridianMartText4:
+ TX_FAR _ViridianMartText4
+ db "@"
+
+ViridianMartText5:
+ TX_FAR ViridianMartParcelQuestText
+ TX_SFX_KEY_ITEM
+ db "@"
+
+ViridianMartText2:
+ TX_FAR _ViridianMartText2
+ db "@"
+
+ViridianMartText3:
+ TX_FAR _ViridianMartText3
+ db "@"
diff --git a/scripts/ViridianNicknameHouse.asm b/scripts/ViridianNicknameHouse.asm
new file mode 100755
index 00000000..000fe82b
--- /dev/null
+++ b/scripts/ViridianNicknameHouse.asm
@@ -0,0 +1,33 @@
+ViridianNicknameHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+ViridianNicknameHouse_TextPointers:
+ dw ViridianHouseText1
+ dw ViridianHouseText2
+ dw ViridianHouseText3
+ dw ViridianHouseText4
+
+ViridianHouseText1:
+ TX_FAR _ViridianHouseText1
+ db "@"
+
+ViridianHouseText2:
+ TX_FAR _ViridianHouseText2
+ db "@"
+
+ViridianHouseText3:
+ TX_ASM
+ ld hl, ViridianHouseText_1d5b1
+ call PrintText
+ ld a, SPEAROW
+ call PlayCry
+ call WaitForSoundToFinish
+ jp TextScriptEnd
+
+ViridianHouseText_1d5b1:
+ TX_FAR _ViridianHouseText_1d5b1
+ db "@"
+
+ViridianHouseText4:
+ TX_FAR _ViridianHouseText4
+ db "@"
diff --git a/scripts/ViridianPokecenter.asm b/scripts/ViridianPokecenter.asm
new file mode 100755
index 00000000..5f324bf7
--- /dev/null
+++ b/scripts/ViridianPokecenter.asm
@@ -0,0 +1,29 @@
+ViridianPokecenter_Script:
+ call Serial_TryEstablishingExternallyClockedConnection
+ jp EnableAutoTextBoxDrawing
+
+ViridianPokecenter_TextPointers:
+ dw ViridianHealNurseText
+ dw ViridianPokeCenterText2
+ dw ViridianPokeCenterText3
+ dw ViridianTradeNurseText
+ dw ViridianPokeCenterText5
+
+ViridianHealNurseText:
+ TX_POKECENTER_NURSE
+
+ViridianPokeCenterText2:
+ TX_FAR _ViridianPokeCenterText2
+ db "@"
+
+ViridianPokeCenterText3:
+ TX_FAR _ViridianPokeCenterText3
+ db "@"
+
+ViridianTradeNurseText:
+ TX_CABLE_CLUB_RECEPTIONIST
+
+ViridianPokeCenterText5:
+ TX_ASM
+ callab PokecenterChanseyText
+ jp TextScriptEnd
diff --git a/scripts/ViridianSchoolHouse.asm b/scripts/ViridianSchoolHouse.asm
new file mode 100755
index 00000000..ccfda145
--- /dev/null
+++ b/scripts/ViridianSchoolHouse.asm
@@ -0,0 +1,22 @@
+ViridianSchoolHouse_Script:
+ call EnableAutoTextBoxDrawing
+ ret
+
+ViridianSchoolHouse_TextPointers:
+ dw SchoolText1
+ dw SchoolText2
+ dw SchoolText3
+
+SchoolText1:
+ TX_FAR _SchoolText1
+ db "@"
+
+SchoolText2:
+ TX_ASM
+ callba Func_f1c0f
+ jp TextScriptEnd
+
+SchoolText3:
+ TX_ASM
+ callba Func_f1c03
+ jp TextScriptEnd
diff --git a/scripts/school2.asm b/scripts/ViridianSchoolHouse2.asm
index 677a43ec..677a43ec 100755
--- a/scripts/school2.asm
+++ b/scripts/ViridianSchoolHouse2.asm
diff --git a/scripts/WardensHouse.asm b/scripts/WardensHouse.asm
new file mode 100755
index 00000000..69e199c9
--- /dev/null
+++ b/scripts/WardensHouse.asm
@@ -0,0 +1,113 @@
+WardensHouse_Script:
+ jp EnableAutoTextBoxDrawing
+
+WardensHouse_TextPointers:
+ dw FuchsiaHouse2Text1
+ dw PickUpItemText
+ dw BoulderText
+ dw FuchsiaHouse2Text4
+ dw FuchsiaHouse2Text5
+
+FuchsiaHouse2Text1:
+ TX_ASM
+ CheckEvent EVENT_GOT_HM04
+ jr nz, .subtract
+ ld b, GOLD_TEETH
+ call IsItemInBag
+ jr nz, .asm_3f30f
+ CheckEvent EVENT_GAVE_GOLD_TEETH
+ jr nz, .asm_60cba
+ ld hl, WardenGibberishText1
+ call PrintText
+ call YesNoChoice
+ ld a, [wCurrentMenuItem]
+ and a
+ ld hl, WardenGibberishText3
+ jr nz, .asm_61238
+ ld hl, WardenGibberishText2
+.asm_61238
+ call PrintText
+ jr .asm_52039
+.asm_3f30f
+ ld hl, WardenTeethText1
+ call PrintText
+ ld a, GOLD_TEETH
+ ld [$ffdb], a
+ callba RemoveItemByID
+ SetEvent EVENT_GAVE_GOLD_TEETH
+.asm_60cba
+ ld hl, WardenThankYouText
+ call PrintText
+ lb bc, HM_04, 1
+ call GiveItem
+ jr nc, .BagFull
+ ld hl, ReceivedHM04Text
+ call PrintText
+ SetEvent EVENT_GOT_HM04
+ jr .asm_52039
+.subtract
+ ld hl, HM04ExplanationText
+ call PrintText
+ jr .asm_52039
+.BagFull
+ ld hl, HM04NoRoomText
+ call PrintText
+.asm_52039
+ jp TextScriptEnd
+
+WardenGibberishText1:
+ TX_FAR _WardenGibberishText1
+ db "@"
+
+WardenGibberishText2:
+ TX_FAR _WardenGibberishText2
+ db "@"
+
+WardenGibberishText3:
+ TX_FAR _WardenGibberishText3
+ db "@"
+
+WardenTeethText1:
+ TX_FAR _WardenTeethText1
+ TX_SFX_ITEM_1
+
+WardenTeethText2:
+ TX_FAR _WardenTeethText2
+ db "@"
+
+WardenThankYouText:
+ TX_FAR _WardenThankYouText
+ db "@"
+
+ReceivedHM04Text:
+ TX_FAR _ReceivedHM04Text
+ TX_SFX_ITEM_1
+ db "@"
+
+HM04ExplanationText:
+ TX_FAR _HM04ExplanationText
+ db "@"
+
+HM04NoRoomText:
+ TX_FAR _HM04NoRoomText
+ db "@"
+
+FuchsiaHouse2Text5:
+FuchsiaHouse2Text4:
+ TX_ASM
+ ld a, [H_SPRITEINDEX]
+ cp $4
+ ld hl, FuchsiaHouse2Text_7517b
+ jr nz, .asm_4c9a2
+ ld hl, FuchsiaHouse2Text_75176
+.asm_4c9a2
+ call PrintText
+ jp TextScriptEnd
+
+FuchsiaHouse2Text_75176:
+ TX_FAR _FuchsiaHouse2Text_75176
+ db "@"
+
+FuchsiaHouse2Text_7517b:
+ TX_FAR _FuchsiaHouse2Text_7517b
+ db "@"
diff --git a/scripts/agatha.asm b/scripts/agatha.asm
deleted file mode 100755
index 6f611071..00000000
--- a/scripts/agatha.asm
+++ /dev/null
@@ -1,156 +0,0 @@
-AgathaScript:
- call AgathaShowOrHideExitBlock
- call EnableAutoTextBoxDrawing
- ld hl, AgathaTrainerHeaders
- ld de, AgathaScriptPointers
- ld a, [wAgathaCurScript]
- call ExecuteCurMapScriptInTable
- ld [wAgathaCurScript], a
- ret
-
-AgathaShowOrHideExitBlock:
-; Blocks or clears the exit to the next room.
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
- jr z, .blockExitToNextRoom
- ld a, $e
- jp .setExitBlock
-.blockExitToNextRoom
- ld a, $3b
-
-.setExitBlock
- ld [wNewTileBlockID], a
- lb bc, 0, 2
- predef_jump ReplaceTileBlock
-
-ResetAgathaScript:
- xor a
- ld [wAgathaCurScript], a
- ret
-
-AgathaScriptPointers:
- dw AgathaScript0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw AgathaScript2
- dw AgathaScript3
- dw AgathaScript4
-
-AgathaScript4:
- ret
-
-AgathaScriptWalkIntoRoom:
-; Walk six steps upward.
- ld hl, wSimulatedJoypadStatesEnd
- ld a, D_UP
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $6
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wAgathaCurScript], a
- ld [wCurMapScript], a
- ret
-
-AgathaScript0:
- ld hl, AgathaEntranceCoords
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyPressed], a
- ld [hJoyHeld], a
- ld [wSimulatedJoypadStatesEnd], a
- ld [wSimulatedJoypadStatesIndex], a
- ld a, [wCoordIndex]
- cp $3 ; Is player standing one tile above the exit?
- jr c, .stopPlayerFromLeaving
- CheckAndSetEvent EVENT_AUTOWALKED_INTO_AGATHAS_ROOM
- jr z, AgathaScriptWalkIntoRoom
-.stopPlayerFromLeaving
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID ; "Don't run away!"
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wAgathaCurScript], a
- ld [wCurMapScript], a
- ret
-
-AgathaEntranceCoords:
- db $0A,$04
- db $0A,$05
- db $0B,$04
- db $0B,$05
- db $FF
-
-AgathaScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wAgathaCurScript], a
- ld [wCurMapScript], a
- ret
-
-AgathaScript2:
- call EndTrainerBattle
- ld a, [wIsInBattle]
- cp $ff
- jp z, ResetAgathaScript
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $1
- ld [wGaryCurScript], a
- ret
-
-AgathaTextPointers:
- dw AgathaText1
- dw AgathaDontRunAwayText
-
-AgathaTrainerHeaders:
-AgathaTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_AGATHAS_ROOM_TRAINER_0
- dw AgathaBeforeBattleText ; TextBeforeBattle
- dw AgathaAfterBattleText ; TextAfterBattle
- dw AgathaEndBattleText ; TextEndBattle
- dw AgathaEndBattleText ; TextEndBattle
-
- db $ff
-
-AgathaText1:
- TX_ASM
- ld hl, AgathaTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-AgathaBeforeBattleText:
- TX_FAR _AgathaBeforeBattleText
- db "@"
-
-AgathaEndBattleText:
- TX_FAR _AgathaEndBattleText
- db "@"
-
-AgathaAfterBattleText:
- TX_FAR _AgathaAfterBattleText
- db "@"
-
-AgathaDontRunAwayText:
- TX_FAR _AgathaDontRunAwayText
- db "@"
diff --git a/scripts/beach_house.asm b/scripts/beach_house.asm
deleted file mode 100644
index 38f6fc7f..00000000
--- a/scripts/beach_house.asm
+++ /dev/null
@@ -1,191 +0,0 @@
-BeachHouseScript:
- call EnableAutoTextBoxDrawing
- ret
-
-BeachHouseTextPointers:
- dw SurfinDudeText
- dw BeachHousePikachuText
- dw BeachHouseSign1Text
- dw BeachHouseSign2Text
- dw BeachHouseSign3Text
- dw BeachHouseSign4Text
-
-SurfinDudeText:
- TX_ASM
- ld a, [wd472]
- bit 6, a
- jr nz, .next
- ld hl, .SurfinDudeText4
- call PrintText
- jr .done
-.next
- ld hl, wd492
- bit 0, [hl]
- set 0, [hl]
- jr nz, .next2
- ld hl, .SurfinDudeText1
- jr .next3
-.next2
- ld hl, .SurfinDudeText3
-.next3
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_f226b
- ld a, 1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- callba SurfingPikachuMinigame
- ld hl, wd492
- set 1, [hl]
- jr .done
-.asm_f226b
- ld hl, .SurfinDudeText2
- call PrintText
-.done
- jp TextScriptEnd
-
-.SurfinDudeText1
- TX_FAR _SurfinDudeText1
- db "@"
-.SurfinDudeText2
- TX_FAR _SurfinDudeText2
- db "@"
-.SurfinDudeText3
- TX_FAR _SurfinDudeText3
- db "@"
-.SurfinDudeText4
- TX_FAR _SurfinDudeText4
- db "@"
-
-BeachHousePikachuText:
- TX_ASM
- ld hl, .BeachHousePikachuText
- call PrintText
- ld a, PIKACHU
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-.BeachHousePikachuText
- TX_FAR _BeachHousePikachuText
- db "@"
-
-BeachHouseSign1Text:
- TX_ASM
- ld hl, .BeachHouseSign1Text2
- ld a, [wd472]
- bit 6, a
- jr z, .next
- ld hl, .BeachHouseSign1Text1
-.next
- call PrintText
- jp TextScriptEnd
-
-.BeachHouseSign1Text1
- TX_FAR _BeachHouseSign1Text1
- db "@"
-.BeachHouseSign1Text2
- TX_FAR _BeachHouseSign1Text2
- db "@"
-
-BeachHouseSign2Text:
- TX_ASM
- ld hl, .BeachHouseSign2Text2
- ld a, [wd472]
- bit 6, a
- jr z, .next
- ld hl, .BeachHouseSign2Text1
-.next
- call PrintText
- jp TextScriptEnd
-
-.BeachHouseSign2Text1
- TX_FAR _BeachHouseSign2Text1
- db "@"
-.BeachHouseSign2Text2
- TX_FAR _BeachHouseSign2Text2
- db "@"
-
-BeachHouseSign3Text:
- TX_ASM
- ld hl, .BeachHouseSign3Text2
- ld a, [wd472]
- bit 6, a
- jr z, .next
- ld hl, .BeachHouseSign3Text1
-.next
- call PrintText
- jp TextScriptEnd
-
-.BeachHouseSign3Text1
- TX_FAR _BeachHouseSign3Text1
- db "@"
-.BeachHouseSign3Text2
- TX_FAR _BeachHouseSign3Text2
- db "@"
-
-BeachHouseSign4Text:
- TX_ASM
- ld a, 1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, [wd472]
- bit 6, a
- jr z, .asm_f2369
-
- ld hl, wd492
- bit 1, [hl]
- jr z, .next2
- ld a, 0
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
-.next2
- ld hl, .BeachHousePrinterText2
- call PrintText
- ld a, [wd492]
- bit 1, a
- jr z, .asm_f236f
-
- ld a, 1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, .BeachHousePrinterText3
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jp z, Func_f23d0
- call SaveScreenTilesToBuffer2
- ld hl, wd730
- set 6, [hl]
- xor a
- ld [wUpdateSpritesEnabled], a
- callab Printer_PrepareSurfingMinigameHighScoreTileMap
- call WaitForTextScrollButtonPress
- ld hl, wd730
- res 6, [hl]
- call GBPalWhiteOutWithDelay3
- call ReloadTilesetTilePatterns
- call RestoreScreenTilesAndReloadTilePatterns
- call LoadScreenTilesFromBuffer2
- call Delay3
- call GBPalNormal
- ld a, 1
- ld [wUpdateSpritesEnabled], a
- jr .asm_f236f
-.asm_f2369
- ld hl, .BeachHousePrinterText1
- call PrintText
-.asm_f236f
- jp TextScriptEnd
-
-.BeachHousePrinterText1
- TX_FAR _BeachHousePrinterText1
- db $d, "@"
-.BeachHousePrinterText2
- TX_FAR _BeachHousePrinterText2
- db $d, "@"
-.BeachHousePrinterText3
- TX_FAR _BeachHousePrinterText3
- db "@"
-.BeachHousePrinterText4
- TX_FAR _BeachHousePrinterText4
- db "@"
diff --git a/scripts/beach_house2.asm b/scripts/beach_house2.asm
deleted file mode 100755
index 03e77ecb..00000000
--- a/scripts/beach_house2.asm
+++ /dev/null
@@ -1,33 +0,0 @@
-Func_f23d0:
- call SaveScreenTilesToBuffer2
- xor a
- ld [wUpdateSpritesEnabled], a
- ld hl, wd730
- set 6, [hl]
- callab PrintSurfingMinigameHighScore
- ld hl, wd730
- res 6, [hl]
- call GBPalWhiteOutWithDelay3
- call ReloadTilesetTilePatterns
- call RestoreScreenTilesAndReloadTilePatterns
- call LoadScreenTilesFromBuffer2
- call Delay3
- call GBPalNormal
- ld hl, Text_f2412
- ld a, [hOaksAideResult]
- and a
- jr nz, .asm_f2406
- ld hl, Text_f240c
-.asm_f2406
- call PrintText
- jp TextScriptEnd
-
-Text_f240c:
- TX_FAR _BeachHousePrinterText5
- TX_WAIT_BUTTON
- db "@"
-
-Text_f2412:
- TX_FAR _BeachHousePrinterText6
- TX_WAIT_BUTTON
- db "@"
diff --git a/scripts/bikeshop.asm b/scripts/bikeshop.asm
deleted file mode 100755
index 5ebd1fb6..00000000
--- a/scripts/bikeshop.asm
+++ /dev/null
@@ -1,151 +0,0 @@
-BikeShopScript:
- call EnableAutoTextBoxDrawing
- ret
-
-BikeShopTextPointers:
- dw BikeShopText1
- dw BikeShopText2
- dw BikeShopText3
-
-BikeShopText1:
- TX_ASM
- CheckEvent EVENT_GOT_BICYCLE
- jr z, .asm_260d4
- ld hl, BikeShopText_1d82f
- call PrintText
- jp .Done
-
-.asm_260d4
- ld b, BIKE_VOUCHER
- call IsItemInBag
- jr z, .asm_41190
- ld hl, BikeShopText_1d81f
- call PrintText
- lb bc, BICYCLE, 1
- call GiveItem
- jr nc, .BagFull
- ld a, BIKE_VOUCHER
- ld [$ffdb], a
- callba RemoveItemByID
- SetEvent EVENT_GOT_BICYCLE
- ld hl, BikeShopText_1d824
- call PrintText
- jr .Done
-
-.BagFull
- ld hl, BikeShopText_1d834
- call PrintText
- jr .Done
-
-.asm_41190
- ld hl, BikeShopText_1d810
- call PrintText
- xor a
- ld [wCurrentMenuItem], a
- ld [wLastMenuItem], a
- ld a, A_BUTTON | B_BUTTON
- ld [wMenuWatchedKeys], a
- ld a, $1
- ld [wMaxMenuItem], a
- ld a, $2
- ld [wTopMenuItemY], a
- ld a, $1
- ld [wTopMenuItemX], a
- ld hl, wd730
- set 6, [hl]
- coord hl, 0, 0
- lb bc, 4, 15
- call TextBoxBorder
- call UpdateSprites
- coord hl, 2, 2
- ld de, BikeShopMenuText
- call PlaceString
- coord hl, 8, 3
- ld de, BikeShopMenuPrice
- call PlaceString
- ld hl, BikeShopText_1d815
- call PrintText
- ; This fixes the bike shop instatext glitch
- ld hl, wd730
- res 6, [hl]
- call HandleMenuInput
- bit BIT_B_BUTTON, a
- jr nz, .cancel
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .cancel
- ld hl, BikeShopCantAffordText
- call PrintText
-.cancel
- ld hl, BikeShopComeAgainText
- call PrintText
-.Done
- jp TextScriptEnd
-
-BikeShopMenuText:
- db "BICYCLE"
- next "CANCEL@"
-
-BikeShopMenuPrice:
- db "¥1000000@"
-
-BikeShopText_1d810:
- TX_FAR _BikeShopText_1d810
- db "@"
-
-BikeShopText_1d815:
- TX_FAR _BikeShopText_1d815
- db "@"
-
-BikeShopCantAffordText:
- TX_FAR _BikeShopCantAffordText
- db "@"
-
-BikeShopText_1d81f:
- TX_FAR _BikeShopText_1d81f
- db "@"
-
-BikeShopText_1d824:
- TX_FAR _BikeShopText_1d824
- TX_SFX_KEY_ITEM
- db "@"
-
-BikeShopComeAgainText:
- TX_FAR _BikeShopComeAgainText
- db "@"
-
-BikeShopText_1d82f:
- TX_FAR _BikeShopText_1d82f
- db "@"
-
-BikeShopText_1d834:
- TX_FAR _BikeShopText_1d834
- db "@"
-
-BikeShopText2:
- TX_ASM
- ld hl, BikeShopText_1d843
- call PrintText
- jp TextScriptEnd
-
-BikeShopText_1d843:
- TX_FAR _BikeShopText_1d843
- db "@"
-
-BikeShopText3:
- TX_ASM
- CheckEvent EVENT_GOT_BICYCLE
- ld hl, BikeShopText_1d861
- jr nz, .asm_34d2d
- ld hl, BikeShopText_1d85c
-.asm_34d2d
- call PrintText
- jp TextScriptEnd
-
-BikeShopText_1d85c:
- TX_FAR _BikeShopText_1d85c
- db "@"
-
-BikeShopText_1d861:
- TX_FAR _BikeShopText_1d861
- db "@"
diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm
deleted file mode 100755
index 3e13ba51..00000000
--- a/scripts/billshouse.asm
+++ /dev/null
@@ -1,279 +0,0 @@
-BillsHouseScript:
- call BillsHouseScript_1e09e
- call EnableAutoTextBoxDrawing
- ld a, [wBillsHouseCurScript]
- ld hl, BillsHouseScriptPointers
- call JumpTable
- ret
-
-BillsHouseScriptPointers:
- dw BillsHouseScript0
- dw BillsHouseScript1
- dw BillsHouseScript2
- dw BillsHouseScript3
- dw BillsHouseScript4
- dw BillsHouseScript5
- dw BillsHouseScript6
- dw BillsHouseScript7
- dw BillsHouseScript8
- dw BillsHouseScript9
-
-BillsHouseScript_1e09e:
- ld hl, wd492
- bit 7, [hl]
- set 7, [hl]
- ret nz
- CheckEventHL EVENT_MET_BILL_2
- jr z, .asm_1e0af
- jr .asm_1e0b3
-
-.asm_1e0af
- ld a, $0
- jr .asm_1e0b5
-
-.asm_1e0b3
- ld a, $9
-.asm_1e0b5
- ld [wBillsHouseCurScript], a
- ret
-
-BillsHouseScript0:
- ld a, [wd472]
- bit 7, a
- jr z, .asm_1e0d2
- callab CheckPikachuFaintedOrStatused
- jr c, .asm_1e0d2
- callab Func_f24d5
-.asm_1e0d2
- xor a
- ld [wJoyIgnore], a
- ld a, $1
- ld [wBillsHouseCurScript], a
- ret
-
-BillsHouseScript1:
- ret
-
-BillsHouseScript2:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wSpritePlayerStateData1FacingDirection]
- and a ; cp SPRITE_FACING_DOWN
- ld de, MovementData_1e79c
- jr nz, .notDown
- call CheckPikachuFollowingPlayer
- jr nz, .asm_1e0f8
- callab Func_f250b
-.asm_1e0f8
- ld de, MovementData_1e7a0
-.notDown
- ld a, $1
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $3
- ld [wBillsHouseCurScript], a
- ret
-
-MovementData_1e79c:
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db $FF
-
-; make Bill walk around the player
-MovementData_1e7a0:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_LEFT
- db NPC_MOVEMENT_UP
- db $FF
-
-BillsHouseScript3:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_BILL_POKEMON
- ld [wMissableObjectIndex], a
- predef HideObject
- call CheckPikachuFollowingPlayer
- jr z, .asm_1e13e
- ld hl, PikachuMovementData_1e14d
- ld a, [wSpritePlayerStateData1FacingDirection]
- and a ; cp SPRITE_FACING_DOWN
- jr nz, .asm_1e133
- ld hl, PikachuMovementData_1e152
-.asm_1e133
- call ApplyPikachuMovementData
- callab InitializePikachuTextID
-.asm_1e13e
- xor a
- ld [wJoyIgnore], a
- SetEvent EVENT_BILL_SAID_USE_CELL_SEPARATOR
- ld a, $4
- ld [wBillsHouseCurScript], a
- ret
-
-PikachuMovementData_1e14d:
- db $00
- db $1e
- db $1e
- db $1e
- db $3f
-
-PikachuMovementData_1e152:
- db $00
- db $1e
- db $1f
- db $1e
- db $1e
- db $20
- db $36
- db $3f
-
-BillsHouseScript4:
- CheckEvent EVENT_USED_CELL_SEPARATOR_ON_BILL
- ret z
- ld a, $fc
- ld [wJoyIgnore], a
- ld a, $5
- ld [wBillsHouseCurScript], a
- ret
-
-BillsHouseScript5:
- ld a, $2
- ld [wSpriteIndex], a
- ld a, $c
- ld [$ffeb], a
- ld a, $40
- ld [$ffec], a
- ld a, $6
- ld [$ffed], a
- ld a, $5
- ld [$ffee], a
- call SetSpritePosition1
- ld a, HS_BILL_1
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld c, 8
- call DelayFrames
- ld hl, wd472
- bit 7, [hl]
- jr z, .asm_1e1c6
- call CheckPikachuFollowingPlayer
- jr z, .asm_1e1c6
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_DOWN
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld hl, PikachuMovementData_1e1a9
- call ApplyPikachuMovementData
- ld a, $f
- ld [wEmotionBubbleSpriteIndex], a
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- callab InitializePikachuTextID
-.asm_1e1c6
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld de, MovementData_1e807
- call MoveSprite
- ld a, $6
- ld [wBillsHouseCurScript], a
- ret
-
-MovementData_1e807:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db $FF
-
-PikachuMovementData_1e1a9:
- db $00
- db $37
- db $3f
-
-BillsHouseScript6:
- ld a, [wd730]
- bit 0, a
- ret nz
- SetEvent EVENT_MET_BILL_2 ; this event seems redundant
- SetEvent EVENT_MET_BILL
- ld a, $7
- ld [wBillsHouseCurScript], a
- ret
-
-BillsHouseScript7:
- xor a
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_UP
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld de, RLE_1e219
- ld hl, wSimulatedJoypadStatesEnd
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $8
- ld [wBillsHouseCurScript], a
- ret
-
-RLE_1e219:
- db D_RIGHT,$3
- db $FF
-
-BillsHouseScript8:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_UP
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_DOWN
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- xor a
- ld [wJoyIgnore], a
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $9
- ld [wBillsHouseCurScript], a
- ret
-
-BillsHouseScript9:
- ret
-
-BillsHouseTextPointers:
- dw BillsHouseText1
- dw BillsHouseText2
- dw BillsHouseText3
- dw BillsHouseText4
-
-BillsHouseText4:
- TX_FAR _BillsHouseDontLeaveText
- db "@"
-
-BillsHouseText1:
- TX_ASM
- callba Func_f2418
- jp TextScriptEnd
-
-BillsHouseText2:
- TX_ASM
- callba Func_f244a
- jp TextScriptEnd
-
-BillsHouseText3:
- TX_ASM
- callba Func_f24a2
- jp TextScriptEnd
diff --git a/scripts/billshouse2.asm b/scripts/billshouse2.asm
deleted file mode 100755
index 9d3b4364..00000000
--- a/scripts/billshouse2.asm
+++ /dev/null
@@ -1,158 +0,0 @@
-Func_f2418:
- ld hl, BillsHouseText_f243b
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_f2433
-.asm_f2427
- ld hl, BillsHouseText_f2440
- call PrintText
- ld a, $2
- ld [wBillsHouseCurScript], a
- ret
-
-.asm_f2433
- ld hl, BillsHouseText_f2445
- call PrintText
- jr .asm_f2427
-
-BillsHouseText_f243b:
- TX_FAR _BillsHouseText_1e865
- db "@"
-
-BillsHouseText_f2440:
- TX_FAR _BillsHouseText_1e86a
- db "@"
-
-BillsHouseText_f2445:
- TX_FAR _BillsHouseText_1e86f
- db "@"
-
-Func_f244a:
- CheckEvent EVENT_GOT_SS_TICKET
- jr nz, .asm_f247e
- ld hl, BillsHouseText_f248c
- call PrintText
- lb bc, S_S_TICKET, 1
- call GiveItem
- jr nc, .asm_f2485
- ld hl, BillsHouseText_f2491
- call PrintText
- SetEvent EVENT_GOT_SS_TICKET
- ld a, HS_CERULEAN_GUARD_1
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, HS_CERULEAN_GUARD_2
- ld [wMissableObjectIndex], a
- predef HideObject
-.asm_f247e
- ld hl, BillsHouseText_f249d
- call PrintText
- ret
-
-.asm_f2485
- ld hl, BillsHouseText_f2498
- call PrintText
- ret
-
-BillsHouseText_f248c:
- TX_FAR _BillThankYouText
- db "@"
-
-BillsHouseText_f2491:
- TX_FAR _SSTicketReceivedText
- TX_SFX_KEY_ITEM
- TX_BUTTON_SOUND
- db "@"
-
-BillsHouseText_f2498:
- TX_FAR _SSTicketNoRoomText
- db "@"
-
-BillsHouseText_f249d:
- TX_FAR _BillsHouseText_1e8cb
- db "@"
-
-Func_f24a2:
- ld hl, BillsHouseText_f24a9
- call PrintText
- ret
-
-BillsHouseText_f24a9:
- TX_FAR _BillsHouseText_1e8da
- db "@"
-
-Func_f24ae:
- ld a, [wCurMap]
- cp BILLS_HOUSE
- jr nz, .asm_f24d2
- call CheckPikachuFollowingPlayer
- jr z, .asm_f24d2
- ld a, [wBillsHouseCurScript]
- cp $5
- ld e, $1b
- ret z
- cp $0
- ld e, $17
- ret z
- CheckEventHL EVENT_MET_BILL_2
- ld e, $20
- ret z
- ld e, $1f
- ret
-
-.asm_f24d2
- ld e, $ff
- ret
-
-Func_f24d5:
- ld a, $ff
- ld [wJoyIgnore], a
- xor a
- ld [wPlayerMovingDirection], a
- call UpdateSprites
- call UpdateSprites
- ld hl, Data_f2505
- call ApplyPikachuMovementData
- ld a, $f ; pikachu
- ld [wEmotionBubbleSpriteIndex], a
- ld a, QUESTION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- call DisablePikachuFollowingPlayer
- callab InitializePikachuTextID
- ret
-
-Data_f2505:
- db $00
- db $20
- db $20
- db $20
- db $1e
- db $3f
-
-Func_f250b:
- ld hl, Data_f251c
- ld b, SPRITE_FACING_UP
- call TryApplyPikachuMovementData
- ld hl, Data_f2521
- ld b, SPRITE_FACING_RIGHT
- call TryApplyPikachuMovementData
- ret
-
-Data_f251c:
- db $00
- db $1f
- db $1d
- db $38
- db $3f
-
-Data_f2521:
- db $00
- db $1e
- db $1f
- db $1f
- db $1d
- db $38
- db $3f
diff --git a/scripts/blueshouse.asm b/scripts/blueshouse.asm
deleted file mode 100755
index b727bbd1..00000000
--- a/scripts/blueshouse.asm
+++ /dev/null
@@ -1,85 +0,0 @@
-BluesHouseScript:
- call EnableAutoTextBoxDrawing
- ld hl, BluesHouseScriptPointers
- xor a
- call JumpTable
- ret
-
-BluesHouseScriptPointers:
- dw BluesHouseScript0
- dw BluesHouseScript1
-
-BluesHouseScript0:
- SetEvent EVENT_ENTERED_BLUES_HOUSE
-
- ; trigger the next script
- ld a, 1
- ld [wBluesHouseCurScript], a
-BluesHouseScript1:
- ret
-
-BluesHouseTextPointers:
- dw BluesHouseText1
- dw BluesHouseText2
- dw BluesHouseText3
-
-BluesHouseText1:
- TX_ASM
- CheckEvent EVENT_GOT_TOWN_MAP
- jr nz, .GotMap
- CheckEvent EVENT_GOT_POKEDEX
- jr nz, .GiveMap
- ld hl, DaisyInitialText
- call PrintText
- jr .done
-.GiveMap
- ld hl, DaisyOfferMapText
- call PrintText
- lb bc, TOWN_MAP, 1
- call GiveItem
- jr nc, .BagFull
- ld a, HS_TOWN_MAP
- ld [wMissableObjectIndex], a
- predef HideObject ; hide table map object
- ld hl, GotMapText
- call PrintText
- SetEvent EVENT_GOT_TOWN_MAP
- jr .done
-.GotMap
- ld hl, DaisyUseMapText
- call PrintText
- jr .done
-.BagFull
- ld hl, DaisyBagFullText
- call PrintText
-.done
- jp TextScriptEnd
-
-DaisyInitialText:
- TX_FAR _DaisyInitialText
- db "@"
-
-DaisyOfferMapText:
- TX_FAR _DaisyOfferMapText
- db "@"
-
-GotMapText:
- TX_FAR _GotMapText
- TX_SFX_KEY_ITEM
- db "@"
-
-DaisyBagFullText:
- TX_FAR _DaisyBagFullText
- db "@"
-
-DaisyUseMapText:
- TX_FAR _DaisyUseMapText
- db "@"
-
-BluesHouseText2: ; Daisy, walking around
- TX_FAR _BluesHouseText2
- db "@"
-
-BluesHouseText3: ; map on table
- TX_FAR _BluesHouseText3
- db "@"
diff --git a/scripts/bruno.asm b/scripts/bruno.asm
deleted file mode 100755
index a10a1e49..00000000
--- a/scripts/bruno.asm
+++ /dev/null
@@ -1,153 +0,0 @@
-BrunoScript:
- call BrunoShowOrHideExitBlock
- call EnableAutoTextBoxDrawing
- ld hl, BrunoTrainerHeaders
- ld de, BrunoScriptPointers
- ld a, [wBrunoCurScript]
- call ExecuteCurMapScriptInTable
- ld [wBrunoCurScript], a
- ret
-
-BrunoShowOrHideExitBlock:
-; Blocks or clears the exit to the next room.
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
- jr z, .blockExitToNextRoom
- ld a, $5
- jp .setExitBlock
-.blockExitToNextRoom
- ld a, $24
-
-.setExitBlock
- ld [wNewTileBlockID], a
- lb bc, 0, 2
- predef_jump ReplaceTileBlock
-
-ResetBrunoScript:
- xor a
- ld [wBrunoCurScript], a
- ret
-
-BrunoScriptPointers:
- dw BrunoScript0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw BrunoScript2
- dw BrunoScript3
- dw BrunoScript4
-
-BrunoScript4:
- ret
-
-BrunoScriptWalkIntoRoom:
-; Walk six steps upward.
- ld hl, wSimulatedJoypadStatesEnd
- ld a, D_UP
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $6
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wBrunoCurScript], a
- ld [wCurMapScript], a
- ret
-
-BrunoScript0:
- ld hl, BrunoEntranceCoords
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyPressed], a
- ld [hJoyHeld], a
- ld [wSimulatedJoypadStatesEnd], a
- ld [wSimulatedJoypadStatesIndex], a
- ld a, [wCoordIndex]
- cp $3 ; Is player standing one tile above the exit?
- jr c, .stopPlayerFromLeaving
- CheckAndSetEvent EVENT_AUTOWALKED_INTO_BRUNOS_ROOM
- jr z, BrunoScriptWalkIntoRoom
-.stopPlayerFromLeaving
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID ; "Don't run away!"
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wBrunoCurScript], a
- ld [wCurMapScript], a
- ret
-
-BrunoEntranceCoords:
- db $0A,$04
- db $0A,$05
- db $0B,$04
- db $0B,$05
- db $FF
-
-BrunoScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wBrunoCurScript], a
- ld [wCurMapScript], a
- ret
-
-BrunoScript2:
- call EndTrainerBattle
- ld a, [wIsInBattle]
- cp $ff
- jp z, ResetBrunoScript
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-BrunoTextPointers:
- dw BrunoText1
- dw BrunoDontRunAwayText
-
-BrunoTrainerHeaders:
-BrunoTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_BRUNOS_ROOM_TRAINER_0
- dw BrunoBeforeBattleText ; TextBeforeBattle
- dw BrunoAfterBattleText ; TextAfterBattle
- dw BrunoEndBattleText ; TextEndBattle
- dw BrunoEndBattleText ; TextEndBattle
-
- db $ff
-
-BrunoText1:
- TX_ASM
- ld hl, BrunoTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-BrunoBeforeBattleText:
- TX_FAR _BrunoBeforeBattleText
- db "@"
-
-BrunoEndBattleText:
- TX_FAR _BrunoEndBattleText
- db "@"
-
-BrunoAfterBattleText:
- TX_FAR _BrunoAfterBattleText
- db "@"
-
-BrunoDontRunAwayText:
- TX_FAR _BrunoDontRunAwayText
- db "@"
diff --git a/scripts/celadoncity.asm b/scripts/celadoncity.asm
deleted file mode 100755
index 04fa0a28..00000000
--- a/scripts/celadoncity.asm
+++ /dev/null
@@ -1,141 +0,0 @@
-CeladonCityScript:
- call EnableAutoTextBoxDrawing
- ld hl, CeladonCityScriptPointers
- ld a, [wCeladonCityCurScript]
- call JumpTable
- ret
-
-CeladonCityScriptPointers:
- dw CeladonCityScript1
-
-CeladonCityScript1:
- ResetEvents EVENT_1B8, EVENT_1BF
- ResetEvent EVENT_67F
- ret
-
-CeladonCityTextPointers:
- dw CeladonCityText1
- dw CeladonCityText2
- dw CeladonCityText3
- dw CeladonCityText4
- dw CeladonCityText5
- dw CeladonCityText6
- dw CeladonCityText7
- dw CeladonCityText8
- dw CeladonCityText9
- dw CeladonCityText10
- dw CeladonCityText11
- dw PokeCenterSignText
- dw CeladonCityText13
- dw CeladonCityText14
- dw CeladonCityText15
- dw CeladonCityText16
- dw CeladonCityText17
- dw CeladonCityText18
-
-CeladonCityText1:
- TX_FAR _CeladonCityText1
- db "@"
-
-CeladonCityText2:
- TX_FAR _CeladonCityText2
- db "@"
-
-CeladonCityText3:
- TX_FAR _CeladonCityText3
- db "@"
-
-CeladonCityText4:
- TX_FAR _CeladonCityText4
- db "@"
-
-CeladonCityText5:
- TX_ASM
- CheckEvent EVENT_GOT_TM41
- jr nz, .asm_7053f
- ld hl, TM41PreText
- call PrintText
- lb bc, TM_41, 1
- call GiveItem
- jr c, .Success
- ld hl, TM41NoRoomText
- call PrintText
- jr .Done
-.Success
- ld hl, ReceivedTM41Text
- call PrintText
- SetEvent EVENT_GOT_TM41
- jr .Done
-.asm_7053f
- ld hl, TM41ExplanationText
- call PrintText
-.Done
- jp TextScriptEnd
-
-TM41PreText:
- TX_FAR _TM41PreText
- db "@"
-
-ReceivedTM41Text:
- TX_FAR _ReceivedTM41Text
- db $0B, "@"
-
-TM41ExplanationText:
- TX_FAR _TM41ExplanationText
- db "@"
-
-TM41NoRoomText:
- TX_FAR _TM41NoRoomText
- db "@"
-
-CeladonCityText6:
- TX_FAR _CeladonCityText6
- db "@"
-
-CeladonCityText7:
- TX_FAR _CeladonCityText7
- TX_ASM
- ld a, POLIWRATH
- call PlayCry
- jp TextScriptEnd
-
-CeladonCityText8:
- TX_FAR _CeladonCityText8
- db "@"
-
-CeladonCityText9:
- TX_FAR _CeladonCityText9
- db "@"
-
-CeladonCityText10:
- TX_ASM
- callba Func_f1ac6
- jp TextScriptEnd
-
-CeladonCityText11:
- TX_FAR _CeladonCityText11
- db "@"
-
-CeladonCityText13:
- TX_FAR _CeladonCityText13
- db "@"
-
-CeladonCityText14:
- TX_FAR _CeladonCityText14
- db "@"
-
-CeladonCityText15:
- TX_FAR _CeladonCityText15
- db "@"
-
-CeladonCityText16:
- TX_FAR _CeladonCityText16
- db "@"
-
-CeladonCityText17:
- TX_FAR _CeladonCityText17
- db "@"
-
-CeladonCityText18:
- TX_FAR _CeladonCityText18
- db "@"
diff --git a/scripts/celadondiner.asm b/scripts/celadondiner.asm
deleted file mode 100755
index 6ecada9e..00000000
--- a/scripts/celadondiner.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-CeladonDinerScript:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonDinerTextPointers:
- dw CeladonDinerText1
- dw CeladonDinerText2
- dw CeladonDinerText3
- dw CeladonDinerText4
- dw CeladonDinerText5
-
-CeladonDinerText1:
- TX_FAR _CeladonDinerText1
- db "@"
-
-CeladonDinerText2:
- TX_FAR _CeladonDinerText2
- db "@"
-
-CeladonDinerText3:
- TX_FAR _CeladonDinerText3
- db "@"
-
-CeladonDinerText4:
- TX_FAR _CeladonDinerText4
- db "@"
-
-CeladonDinerText5:
- TX_ASM
- callab Func_f1f31
- jp TextScriptEnd
diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm
deleted file mode 100755
index 43aae927..00000000
--- a/scripts/celadongamecorner.asm
+++ /dev/null
@@ -1,527 +0,0 @@
-CeladonGameCornerScript:
- call CeladonGameCornerScript_48bcf
- call CeladonGameCornerScript_48bec
- call EnableAutoTextBoxDrawing
- ld hl, CeladonGameCornerScriptPointers
- ld a, [wCeladonGameCornerCurScript]
- jp JumpTable
-
-CeladonGameCornerScript_48bcf:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- ret z
- call Random
- ld a, [hRandomAdd]
- cp $7
- jr nc, .asm_48be2
- ld a, $8
-.asm_48be2
- srl a
- srl a
- srl a
- ld [wLuckySlotHiddenObjectIndex], a
- ret
-
-CeladonGameCornerScript_48bec:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_FOUND_ROCKET_HIDEOUT
- ret nz
- ld a, $2a
- ld [wNewTileBlockID], a
- lb bc, 2, 8
- predef_jump ReplaceTileBlock
-
-CeladonGameCornerScript_48c07:
- xor a
- ld [wJoyIgnore], a
- ld [wCeladonGameCornerCurScript], a
- ld [wCurMapScript], a
- ret
-
-CeladonGameCornerScriptPointers:
- dw CeladonGameCornerScript0
- dw CeladonGameCornerScript1
- dw CeladonGameCornerScript2
-
-CeladonGameCornerScript0:
- ret
-
-CeladonGameCornerScript1:
- ld a, [wIsInBattle]
- cp $ff
- jp z, CeladonGameCornerScript_48c07
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $b
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld de, MovementData_48c5a
- ld a, [wYCoord]
- cp $6
- jr nz, .asm_48c43
- ld de, MovementData_48c63
- jr .asm_48c4d
-.asm_48c43
- ld a, [wXCoord]
- cp $8
- jr nz, .pikachu
- ld de, MovementData_48c63
- jr .asm_48c4d
-.pikachu
- callab Func_f1f23
- ld de, MovementData_48c5a
-.asm_48c4d
- ld a, $b
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $2
- ld [wCeladonGameCornerCurScript], a
- ret
-
-MovementData_48c5a:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db $FF
-
-MovementData_48c63:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db $FF
-
-CeladonGameCornerScript2:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, HS_GAME_CORNER_ROCKET
- ld [wMissableObjectIndex], a
- predef HideObject
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- set 6, [hl]
- ld a, $0
- ld [wCeladonGameCornerCurScript], a
- ret
-
-CeladonGameCornerTextPointers:
- dw CeladonGameCornerText1
- dw CeladonGameCornerText2
- dw CeladonGameCornerText3
- dw CeladonGameCornerText4
- dw CeladonGameCornerText5
- dw CeladonGameCornerText6
- dw CeladonGameCornerText7
- dw CeladonGameCornerText8
- dw CeladonGameCornerText9
- dw CeladonGameCornerText10
- dw CeladonGameCornerText11
- dw CeladonGameCornerText12
- dw CeladonGameCornerText13
-
-CeladonGameCornerText1:
- TX_FAR _CeladonGameCornerText1
- db "@"
-
-CeladonGameCornerText2:
- TX_ASM
- call CeladonGameCornerScript_48f1e
- ld hl, CeladonGameCornerText_48d22
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_48d0f
- ld b, COIN_CASE
- call IsItemInBag
- jr z, .asm_48d19
- call Has9990Coins
- jr nc, .asm_48d14
- xor a
- ld [hMoney], a
- ld [hMoney + 2], a
- ld a, $10
- ld [hMoney + 1], a
- call HasEnoughMoney
- jr nc, .asm_48cdb
- ld hl, CeladonGameCornerText_48d31
- jr .asm_48d1c
-.asm_48cdb
- xor a
- ld [hMoney], a
- ld [hMoney + 2], a
- ld a, $10
- ld [hMoney + 1], a
- ld hl, hMoney + 2
- ld de, wPlayerMoney + 2
- ld c, $3
- predef SubBCDPredef
- xor a
- ld [hUnusedCoinsByte], a
- ld [hCoins], a
- ld a, $50
- ld [hCoins + 1], a
- ld de, wPlayerCoins + 1
- ld hl, hCoins + 1
- ld c, $2
- predef AddBCDPredef
- call CeladonGameCornerScript_48f1e
- ld hl, CeladonGameCornerText_48d27
- jr .asm_48d1c
-.asm_48d0f
- ld hl, CeladonGameCornerText_48d2c
- jr .asm_48d1c
-.asm_48d14
- ld hl, CeladonGameCornerText_48d36
- jr .asm_48d1c
-.asm_48d19
- ld hl, CeladonGameCornerText_48d3b
-.asm_48d1c
- call PrintText
- jp TextScriptEnd
-
-CeladonGameCornerText_48d22:
- TX_FAR _CeladonGameCornerText_48d22
- db "@"
-
-CeladonGameCornerText_48d27:
- TX_FAR _CeladonGameCornerText_48d27
- db "@"
-
-CeladonGameCornerText_48d2c:
- TX_FAR _CeladonGameCornerText_48d2c
- db "@"
-
-CeladonGameCornerText_48d31:
- TX_FAR _CeladonGameCornerText_48d31
- db "@"
-
-CeladonGameCornerText_48d36:
- TX_FAR _CeladonGameCornerText_48d36
- db "@"
-
-CeladonGameCornerText_48d3b:
- TX_FAR _CeladonGameCornerText_48d3b
- db "@"
-
-CeladonGameCornerText3:
- TX_FAR _CeladonGameCornerText3
- db "@"
-
-CeladonGameCornerText4:
- TX_FAR _CeladonGameCornerText4
- db "@"
-
-CeladonGameCornerText5:
- TX_ASM
- CheckEvent EVENT_GOT_10_COINS
- jr nz, .asm_48d89
- ld hl, CeladonGameCornerText_48d9c
- call PrintText
- ld b, COIN_CASE
- call IsItemInBag
- jr z, .asm_48d93
- call Has9990Coins
- jr nc, .asm_48d8e
- xor a
- ld [hUnusedCoinsByte], a
- ld [hCoins], a
- ld a, $10
- ld [hCoins + 1], a
- ld de, wPlayerCoins + 1
- ld hl, hCoins + 1
- ld c, $2
- predef AddBCDPredef
- SetEvent EVENT_GOT_10_COINS
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, Received10CoinsText
- jr .asm_48d96
-.asm_48d89
- ld hl, CeladonGameCornerText_48dac
- jr .asm_48d96
-.asm_48d8e
- ld hl, CeladonGameCornerText_48da7
- jr .asm_48d96
-.asm_48d93
- ld hl, CeladonGameCornerText_48f19
-.asm_48d96
- call PrintText
- jp TextScriptEnd
-
-CeladonGameCornerText_48d9c:
- TX_FAR _CeladonGameCornerText_48d9c
- db "@"
-
-Received10CoinsText:
- TX_FAR _Received10CoinsText
- TX_SFX_ITEM
- db "@"
-
-CeladonGameCornerText_48da7:
- TX_FAR _CeladonGameCornerText_48da7
- db "@"
-
-CeladonGameCornerText_48dac:
- TX_FAR _CeladonGameCornerText_48dac
- db "@"
-
-CeladonGameCornerText6:
- TX_FAR _CeladonGameCornerText6
- db "@"
-
-CeladonGameCornerText7:
- TX_ASM
- CheckEvent EVENT_BEAT_ERIKA
- ld hl, CeladonGameCornerText_48dca
- jr z, .asm_48dc4
- ld hl, CeladonGameCornerText_48dcf
-.asm_48dc4
- call PrintText
- jp TextScriptEnd
-
-CeladonGameCornerText_48dca:
- TX_FAR _CeladonGameCornerText_48dca
- db "@"
-
-CeladonGameCornerText_48dcf:
- TX_FAR _CeladonGameCornerText_48dcf
- db "@"
-
-CeladonGameCornerText8:
- TX_FAR _CeladonGameCornerText8
- db "@"
-
-CeladonGameCornerText9:
- TX_ASM
- CheckEvent EVENT_GOT_20_COINS_2
- jr nz, .asm_48e13
- ld hl, CeladonGameCornerText_48e26
- call PrintText
- ld b, COIN_CASE
- call IsItemInBag
- jr z, .asm_48e1d
- call Has9990Coins
- jr nc, .asm_48e18
- xor a
- ld [hUnusedCoinsByte], a
- ld [hCoins], a
- ld a, $20
- ld [hCoins + 1], a
- ld de, wPlayerCoins + 1
- ld hl, hCoins + 1
- ld c, $2
- predef AddBCDPredef
- SetEvent EVENT_GOT_20_COINS_2
- ld hl, Received20CoinsText
- jr .asm_48e20
-.asm_48e13
- ld hl, CeladonGameCornerText_48e36
- jr .asm_48e20
-.asm_48e18
- ld hl, CeladonGameCornerText_48e31
- jr .asm_48e20
-.asm_48e1d
- ld hl, CeladonGameCornerText_48f19
-.asm_48e20
- call PrintText
- jp TextScriptEnd
-
-CeladonGameCornerText_48e26:
- TX_FAR _CeladonGameCornerText_48e26
- db "@"
-
-Received20CoinsText:
- TX_FAR _Received20CoinsText
- db $0B, "@"
-
-CeladonGameCornerText_48e31:
- TX_FAR _CeladonGameCornerText_48e31
- db "@"
-
-CeladonGameCornerText_48e36:
- TX_FAR _CeladonGameCornerText_48e36
- db "@"
-
-CeladonGameCornerText10:
- TX_ASM
- CheckEvent EVENT_GOT_20_COINS
- jr nz, .asm_48e75
- ld hl, CeladonGameCornerText_48e88
- call PrintText
- ld b, COIN_CASE
- call IsItemInBag
- jr z, .asm_48e7f
- call Has9990Coins
- jr z, .asm_48e7a
- xor a
- ld [hUnusedCoinsByte], a
- ld [hCoins], a
- ld a, $20
- ld [hCoins + 1], a
- ld de, wPlayerCoins + 1
- ld hl, hCoins + 1
- ld c, $2
- predef AddBCDPredef
- SetEvent EVENT_GOT_20_COINS
- ld hl, CeladonGameCornerText_48e8d
- jr .asm_48e82
-.asm_48e75
- ld hl, CeladonGameCornerText_48e98
- jr .asm_48e82
-.asm_48e7a
- ld hl, CeladonGameCornerText_48e93
- jr .asm_48e82
-.asm_48e7f
- ld hl, CeladonGameCornerText_48f19
-.asm_48e82
- call PrintText
- jp TextScriptEnd
-
-CeladonGameCornerText_48e88:
- TX_FAR _CeladonGameCornerText_48e88
- db "@"
-
-CeladonGameCornerText_48e8d:
- TX_FAR _CeladonGameCornerText_48e8d
- db $0B, "@"
-
-CeladonGameCornerText_48e93:
- TX_FAR _CeladonGameCornerText_48e93
- db "@"
-
-CeladonGameCornerText_48e98:
- TX_FAR _CeladonGameCornerText_48e98
- db "@"
-
-CeladonGameCornerText11:
- TX_ASM
- ld hl, CeladonGameCornerText_48ece
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, CeladonGameCornerText_48ed3
- ld de, CeladonGameCornerText_48ed3
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ld [hJoyHeld], a
- ld [hJoyPressed], a
- ld [hJoyReleased], a
- ld a, $1
- ld [wCeladonGameCornerCurScript], a
- jp TextScriptEnd
-
-CeladonGameCornerText_48ece:
- TX_FAR _CeladonGameCornerText_48ece
- db "@"
-
-CeladonGameCornerText_48ed3:
- TX_FAR _CeladonGameCornerText_48ed3
- db "@"
-
-CeladonGameCornerText13:
- TX_FAR _CeladonGameCornerText_48ed8
- db "@"
-
-CeladonGameCornerText12:
- TX_ASM
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, CeladonGameCornerText_48f09
- call PrintText
- call WaitForSoundToFinish
- ld a, SFX_GO_INSIDE
- call PlaySound
- call WaitForSoundToFinish
- SetEvent EVENT_FOUND_ROCKET_HIDEOUT
- ld a, $43
- ld [wNewTileBlockID], a
- lb bc, 2, 8
- predef ReplaceTileBlock
- jp TextScriptEnd
-
-CeladonGameCornerText_48f09:
- TX_FAR _CeladonGameCornerText_48f09
- TX_ASM
- ld a, SFX_SWITCH
- call PlaySound
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-CeladonGameCornerText_48f19:
- TX_FAR _CeladonGameCornerText_48f19
- db "@"
-
-CeladonGameCornerScript_48f1e:
- ld hl, wd730
- set 6, [hl]
- coord hl, 11, 0
- lb bc, 5, 7
- call TextBoxBorder
- call UpdateSprites
- coord hl, 12, 1
- lb bc, 4, 7
- call ClearScreenArea
- coord hl, 12, 2
- ld de, GameCornerMoneyText
- call PlaceString
- coord hl, 12, 3
- ld de, GameCornerBlankText1
- call PlaceString
- coord hl, 12, 3
- ld de, wPlayerMoney
- ld c, 3 | MONEY_SIGN | LEADING_ZEROES
- call PrintBCDNumber
- coord hl, 12, 4
- ld de, GameCornerCoinText
- call PlaceString
- coord hl, 12, 5
- ld de, GameCornerBlankText2
- call PlaceString
- coord hl, 15, 5
- ld de, wPlayerCoins
- ld c, $82
- call PrintBCDNumber
- ld hl, wd730
- res 6, [hl]
- ret
-
-GameCornerMoneyText:
- db "MONEY@"
-
-GameCornerCoinText:
- db "COIN@"
-
-GameCornerBlankText1:
- db " @"
-
-GameCornerBlankText2:
- db " @"
-
-Has9990Coins:
- ld a, $99
- ld [hCoins], a
- ld a, $90
- ld [hCoins + 1], a
- jp HasEnoughCoins
diff --git a/scripts/celadongym.asm b/scripts/celadongym.asm
deleted file mode 100755
index 762806f2..00000000
--- a/scripts/celadongym.asm
+++ /dev/null
@@ -1,336 +0,0 @@
-CeladonGymScript:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- call nz, CeladonGymScript_48927
- call EnableAutoTextBoxDrawing
- ld hl, CeladonGymTrainerHeaders
- ld de, CeladonGymScriptPointers
- ld a, [wCeladonGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wCeladonGymCurScript], a
- ret
-
-CeladonGymScript_48927:
- ld hl, Gym4CityName
- ld de, Gym4LeaderName
- jp LoadGymLeaderAndCityName
-
-Gym4CityName:
- db "CELADON CITY@"
-
-Gym4LeaderName:
- db "ERIKA@"
-
-CeladonGymText_48943:
- xor a
- ld [wJoyIgnore], a
- ld [wCeladonGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-CeladonGymScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw CeladonGymScript3
-
-CeladonGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, CeladonGymText_48943
- ld a, $f0
- ld [wJoyIgnore], a
-
-CeladonGymText_48963:
- ld a, $9
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_ERIKA
- lb bc, TM_21, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM21
- jr .gymVictory
-.BagFull
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 3, [hl]
- ld hl, wBeatGymFlags
- set 3, [hl]
-
- ; deactivate gym trainers
- SetEventRange EVENT_BEAT_CELADON_GYM_TRAINER_0, EVENT_BEAT_CELADON_GYM_TRAINER_7
-
- jp CeladonGymText_48943
-
-CeladonGymTextPointers:
- dw CeladonGymText1
- dw CeladonGymText2
- dw CeladonGymText3
- dw CeladonGymText4
- dw CeladonGymText5
- dw CeladonGymText6
- dw CeladonGymText7
- dw CeladonGymText8
- dw CeladonGymText9
- dw TM21Text
- dw TM21NoRoomText
-
-CeladonGymTrainerHeaders:
-CeladonGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_0
- dw CeladonGymBattleText2 ; TextBeforeBattle
- dw CeladonGymAfterBattleText2 ; TextAfterBattle
- dw CeladonGymEndBattleText2 ; TextEndBattle
- dw CeladonGymEndBattleText2 ; TextEndBattle
-
-CeladonGymTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_2
- dw CeladonGymBattleText3 ; TextBeforeBattle
- dw CeladonGymAfterBattleText3 ; TextAfterBattle
- dw CeladonGymEndBattleText3 ; TextEndBattle
- dw CeladonGymEndBattleText3 ; TextEndBattle
-
-CeladonGymTrainerHeader3:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_3
- dw CeladonGymBattleText4 ; TextBeforeBattle
- dw CeladonGymAfterBattleText4 ; TextAfterBattle
- dw CeladonGymEndBattleText4 ; TextEndBattle
- dw CeladonGymEndBattleText4 ; TextEndBattle
-
-CeladonGymTrainerHeader4:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_4
- dw CeladonGymBattleText5 ; TextBeforeBattle
- dw CeladonGymAfterBattleText5 ; TextAfterBattle
- dw CeladonGymEndBattleText5 ; TextEndBattle
- dw CeladonGymEndBattleText5 ; TextEndBattle
-
-CeladonGymTrainerHeader5:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_5
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_5
- dw CeladonGymBattleText6 ; TextBeforeBattle
- dw CeladonGymAfterBattleText6 ; TextAfterBattle
- dw CeladonGymEndBattleText6 ; TextEndBattle
- dw CeladonGymEndBattleText6 ; TextEndBattle
-
-CeladonGymTrainerHeader6:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_6
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_6
- dw CeladonGymBattleText7 ; TextBeforeBattle
- dw CeladonGymAfterBattleText7 ; TextAfterBattle
- dw CeladonGymEndBattleText7 ; TextEndBattle
- dw CeladonGymEndBattleText7 ; TextEndBattle
-
-CeladonGymTrainerHeader7:
- dbEventFlagBit EVENT_BEAT_CELADON_GYM_TRAINER_7, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CELADON_GYM_TRAINER_7, 1
- dw CeladonGymBattleText8 ; TextBeforeBattle
- dw CeladonGymAfterBattleText8 ; TextAfterBattle
- dw CeladonGymEndBattleText8 ; TextEndBattle
- dw CeladonGymEndBattleText8 ; TextEndBattle
-
- db $ff
-
-CeladonGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_ERIKA
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM21
- jr nz, .afterVictory
- call z, CeladonGymText_48963
- call DisableWaitingAfterTextDisplay
- jr .done
-.afterVictory
- ld hl, CeladonGymText_48a68
- call PrintText
- jr .done
-.beginBattle
- ld hl, CeladonGymText_48a5e
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, CeladonGymText_48a63
- ld de, CeladonGymText_48a63
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $4
- ld [wGymLeaderNo], a
- ld a, $3
- ld [wCeladonGymCurScript], a
- ld [wCurMapScript], a
-.done
- jp TextScriptEnd
-
-CeladonGymText_48a5e:
- TX_FAR _CeladonGymText_48a5e
- db "@"
-
-CeladonGymText_48a63:
- TX_FAR _CeladonGymText_48a63
- db "@"
-
-CeladonGymText_48a68:
- TX_FAR _CeladonGymText_48a68
- db "@"
-
-CeladonGymText9:
- TX_FAR _CeladonGymText9
- db "@"
-
-TM21Text:
- TX_FAR _ReceivedTM21Text
- db $0B
- TX_FAR _TM21ExplanationText
- db "@"
-
-TM21NoRoomText:
- TX_FAR _TM21NoRoomText
- db "@"
-
-CeladonGymText2:
- TX_ASM
- ld hl, CeladonGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText2:
- TX_FAR _CeladonGymBattleText2
- db "@"
-
-CeladonGymEndBattleText2:
- TX_FAR _CeladonGymEndBattleText2
- db "@"
-
-CeladonGymAfterBattleText2:
- TX_FAR _CeladonGymAfterBattleText2
- db "@"
-
-CeladonGymText3:
- TX_ASM
- ld hl, CeladonGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText3:
- TX_FAR _CeladonGymBattleText3
- db "@"
-
-CeladonGymEndBattleText3:
- TX_FAR _CeladonGymEndBattleText3
- db "@"
-
-CeladonGymAfterBattleText3:
- TX_FAR _CeladonGymAfterBattleText3
- db "@"
-
-CeladonGymText4:
- TX_ASM
- ld hl, CeladonGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText4:
- TX_FAR _CeladonGymBattleText4
- db "@"
-
-CeladonGymEndBattleText4:
- TX_FAR _CeladonGymEndBattleText4
- db "@"
-
-CeladonGymAfterBattleText4:
- TX_FAR _CeladonGymAfterBattleText4
- db "@"
-
-CeladonGymText5:
- TX_ASM
- ld hl, CeladonGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText5:
- TX_FAR _CeladonGymBattleText5
- db "@"
-
-CeladonGymEndBattleText5:
- TX_FAR _CeladonGymEndBattleText5
- db "@"
-
-CeladonGymAfterBattleText5:
- TX_FAR _CeladonGymAfterBattleText5
- db "@"
-
-CeladonGymText6:
- TX_ASM
- ld hl, CeladonGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText6:
- TX_FAR _CeladonGymBattleText6
- db "@"
-
-CeladonGymEndBattleText6:
- TX_FAR _CeladonGymEndBattleText6
- db "@"
-
-CeladonGymAfterBattleText6:
- TX_FAR _CeladonGymAfterBattleText6
- db "@"
-
-CeladonGymText7:
- TX_ASM
- ld hl, CeladonGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText7:
- TX_FAR _CeladonGymBattleText7
- db "@"
-
-CeladonGymEndBattleText7:
- TX_FAR _CeladonGymEndBattleText7
- db "@"
-
-CeladonGymAfterBattleText7:
- TX_FAR _CeladonGymAfterBattleText7
- db "@"
-
-CeladonGymText8:
- TX_ASM
- ld hl, CeladonGymTrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-CeladonGymBattleText8:
- TX_FAR _CeladonGymBattleText8
- db "@"
-
-CeladonGymEndBattleText8:
- TX_FAR _CeladonGymEndBattleText8
- db "@"
-
-CeladonGymAfterBattleText8:
- TX_FAR _CeladonGymAfterBattleText8
- db "@"
diff --git a/scripts/celadonhotel.asm b/scripts/celadonhotel.asm
deleted file mode 100755
index 23b9eb55..00000000
--- a/scripts/celadonhotel.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-CeladonHotelScript:
- jp EnableAutoTextBoxDrawing
-
-CeladonHotelTextPointers:
- dw CeladonHotelText1
- dw CeladonHotelText2
- dw CeladonHotelText3
-
-CeladonHotelText1:
- TX_FAR _CeladonHotelText1
- db "@"
-
-CeladonHotelText2:
- TX_FAR _CeladonHotelText2
- db "@"
-
-CeladonHotelText3:
- TX_FAR _CeladonHotelText3
- db "@"
diff --git a/scripts/celadonhouse.asm b/scripts/celadonhouse.asm
deleted file mode 100755
index 7f2778d1..00000000
--- a/scripts/celadonhouse.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-CeladonHouseScript:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonHouseTextPointers:
- dw CeladonHouseText1
- dw CeladonHouseText2
- dw CeladonHouseText3
-
-CeladonHouseText1:
- TX_FAR _CeladonHouseText1
- db "@"
-
-CeladonHouseText2:
- TX_FAR _CeladonHouseText2
- db "@"
-
-CeladonHouseText3:
- TX_FAR _CeladonHouseText3
- db "@"
diff --git a/scripts/celadonmansion1.asm b/scripts/celadonmansion1.asm
deleted file mode 100755
index 59d9d1d8..00000000
--- a/scripts/celadonmansion1.asm
+++ /dev/null
@@ -1,48 +0,0 @@
-CeladonMansion1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMansion1TextPointers:
- dw CeladonMansion1Text1
- dw CeladonMansion1Text2
- dw CeladonMansion1Text3
- dw CeladonMansion1Text4
- dw CeladonMansion1Text5
-
-CeladonMansion1Text1:
- TX_FAR _CeladonMansion1Text1
- TX_ASM
- ld a, MEOWTH
- call PlayCry
- jp TextScriptEnd
-
-CeladonMansion1Text2:
- TX_ASM
- callba Func_f1e70
- ld a, [wPikachuHappiness]
- cp 251
- jr c, .asm_485d9
- ld c, 50
- call DelayFrames
- ldpikacry e, PikachuCry23
- callab PlayPikachuSoundClip
-.asm_485d9
- jp TextScriptEnd
-
-CeladonMansion1Text3:
- TX_FAR _CeladonMansion1Text3
- TX_ASM
- ld a, CLEFAIRY
- call PlayCry
- jp TextScriptEnd
-
-CeladonMansion1Text4:
- TX_FAR _CeladonMansion1Text4
- TX_ASM
- ld a, NIDORAN_F
- call PlayCry
- jp TextScriptEnd
-
-CeladonMansion1Text5:
- TX_FAR _CeladonMansion1Text5
- db "@"
diff --git a/scripts/celadonmansion1_2.asm b/scripts/celadonmansion1_2.asm
deleted file mode 100755
index 0e1c2389..00000000
--- a/scripts/celadonmansion1_2.asm
+++ /dev/null
@@ -1,78 +0,0 @@
-Func_f1e70:
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, CeladonMansion1Text_f1e96
- call PrintText
- callab IsStarterPikachuInOurParty
- ret nc
- ld hl, CeladonMansionText_f1e9c
- call PrintText
- ld a, $0
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- call Func_f1ea2
- call PrintText
- ret
-
-CeladonMansion1Text_f1e96:
- TX_FAR _CeladonMansion1Text2
- TX_WAIT_BUTTON
- db "@"
-
-CeladonMansionText_f1e9c:
- TX_FAR _CeladonMansion1Text6
- TX_BUTTON_SOUND
- db "@"
-
-Func_f1ea2:
- ld hl, PikachuHappinessThresholds_f1eb9
-.asm_f1ea5
- ld a, [hli]
- inc hl
- and a
- jr z, .asm_f1eb5
- ld b, a
- ld a, [wPikachuHappiness]
- cp b
- jr c, .asm_f1eb5
- inc hl
- inc hl
- jr .asm_f1ea5
-
-.asm_f1eb5
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ret
-
-PikachuHappinessThresholds_f1eb9
- dw 51, CeladonMansion1Text_f1ed5
- dw 101, CeladonMansion1Text_f1eda
- dw 131, CeladonMansion1Text_f1edf
- dw 161, CeladonMansion1Text_f1ee4
- dw 201, CeladonMansion1Text_f1ee9
- dw 255, CeladonMansion1Text_f1eee
- dbbw 0, $ff, CeladonMansion1Text_f1eee
-
-CeladonMansion1Text_f1ed5:
- TX_FAR _CeladonMansion1Text7
- db "@"
-
-CeladonMansion1Text_f1eda:
- TX_FAR _CeladonMansion1Text8
- db "@"
-
-CeladonMansion1Text_f1edf:
- TX_FAR _CeladonMansion1Text9
- db "@"
-
-CeladonMansion1Text_f1ee4:
- TX_FAR _CeladonMansion1Text10
- db "@"
-
-CeladonMansion1Text_f1ee9:
- TX_FAR _CeladonMansion1Text11
- db "@"
-
-CeladonMansion1Text_f1eee:
- TX_FAR _CeladonMansion1Text12
- db "@"
diff --git a/scripts/celadonmansion2.asm b/scripts/celadonmansion2.asm
deleted file mode 100755
index 520615d4..00000000
--- a/scripts/celadonmansion2.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-CeladonMansion2Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMansion2TextPointers:
- dw CeladonMansion2Text1
-
-CeladonMansion2Text1:
- TX_FAR _CeladonMansion2Text1
- db "@"
diff --git a/scripts/celadonmansion3.asm b/scripts/celadonmansion3.asm
deleted file mode 100755
index 6693f6a6..00000000
--- a/scripts/celadonmansion3.asm
+++ /dev/null
@@ -1,176 +0,0 @@
-CeladonMansion3Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMansion3_PokedexCount:
- ld hl, wPokedexOwned
- ld b, wPokedexOwnedEnd - wPokedexOwned
- call CountSetBits
- ld a, [wNumSetBits]
- ret
-
-CeladonMansion3TextPointers:
- dw ProgrammerText
- dw GraphicArtistText
- dw WriterText
- dw DirectorText
- dw GameFreakPCText1
- dw GameFreakPCText2
- dw GameFreakPCText3
- dw GameFreakSignText
-
-ProgrammerText:
- TX_ASM
- call CeladonMansion3_PokedexCount
- cp 150
- ld hl, CeladonMansion3Text_486f5
- jr nc, .print
- ld hl, CeladonMansion3Text_486f0
-.print
- call PrintText
- jp TextScriptEnd
-
-CeladonMansion3Text_486f0:
- TX_FAR _ProgrammerText
- db "@"
-
-CeladonMansion3Text_486f5:
- TX_FAR _ProgrammerText2
- db "@"
-
-GraphicArtistText:
- TX_ASM
- call CeladonMansion3_PokedexCount
- cp 150
- jr nc, .completed
- ld hl, CeladonMansion3Text_48757
- jr .print
-
-.completed
- ld hl, CeladonMansion3Text_4875c
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .declined_print
- call SaveScreenTilesToBuffer2
- xor a
- ld [wUpdateSpritesEnabled], a
- ld hl, wd730
- set 6, [hl]
- callab PrintDiploma
- ld hl, wd730
- res 6, [hl]
- call GBPalWhiteOutWithDelay3
- call ReloadTilesetTilePatterns
- call RestoreScreenTilesAndReloadTilePatterns
- call LoadScreenTilesFromBuffer2
- call Delay3
- call GBPalNormal
- ld hl, CeladonMansion3Text_4876b
- ld a, [$ffdb]
- and a
- jr nz, .print
- ld hl, CeladonMansion3Text_48766
- jr .print
-
-.declined_print
- ld hl, CeladonMansion3Text_48761
-.print
- call PrintText
- jp TextScriptEnd
-
-CeladonMansion3Text_48757:
- TX_FAR _GraphicArtistText
- db "@"
-
-CeladonMansion3Text_4875c:
- TX_FAR _GraphicArtistText2
- db "@"
-
-CeladonMansion3Text_48761:
- TX_FAR _GraphicArtistText3
- db "@"
-
-CeladonMansion3Text_48766:
- TX_FAR _GraphicArtistText4
- db "@"
-
-CeladonMansion3Text_4876b:
- TX_FAR _GraphicArtistText5
- db "@"
-
-WriterText:
- TX_ASM
- call CeladonMansion3_PokedexCount
- cp 150
- ld hl, CeladonMansion3Text_48789
- jr nc, .print
- ld hl, CeladonMansion3Text_48784
-.print
- call PrintText
- jp TextScriptEnd
-
-CeladonMansion3Text_48784:
- TX_FAR _WriterText
- db "@"
-
-CeladonMansion3Text_48789:
- TX_FAR _WriterText2
- db "@"
-
-DirectorText:
- TX_ASM
- call CeladonMansion3_PokedexCount
- ; check pokédex
- cp 150
- jr nc, .CompletedDex
- ld hl, .GameDesigner
- jr .done
-.CompletedDex
- ld hl, .CompletedDexText
- call PrintText
- call Delay3
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, .UnlockedDiplomaPrinting
-.done
- call PrintText
- jp TextScriptEnd
-
-.GameDesigner
- TX_FAR _GameDesignerText
- db "@"
-
-.CompletedDexText
- TX_FAR _CompletedDexText
- TX_BUTTON_SOUND
- TX_ASM
- callab DisplayDiploma
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- jp TextScriptEnd
-
-.UnlockedDiplomaPrinting
- TX_FAR _CompletedDexText2
- db "@"
-
-GameFreakPCText1:
- TX_ASM
- callba Func_f1ef3
- jp TextScriptEnd
-
-GameFreakPCText2:
- TX_ASM
- callba Func_f1eff
- jp TextScriptEnd
-
-GameFreakPCText3:
- TX_ASM
- callba Func_f1f0b
- jp TextScriptEnd
-
-GameFreakSignText:
- TX_ASM
- callba Func_f1f17
- jp TextScriptEnd
diff --git a/scripts/celadonmansion4.asm b/scripts/celadonmansion4.asm
deleted file mode 100755
index 483aa4fd..00000000
--- a/scripts/celadonmansion4.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-CeladonMansion4Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMansion4TextPointers:
- dw CeladonMansion4Text1
-
-CeladonMansion4Text1:
- TX_FAR _CeladonMansion4Text1
- db "@"
diff --git a/scripts/celadonmansion5.asm b/scripts/celadonmansion5.asm
deleted file mode 100755
index c2da8c6d..00000000
--- a/scripts/celadonmansion5.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-CeladonMansion5Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMansion5TextPointers:
- dw CeladonMansion5Text1
- dw CeladonMansion5Text2
-
-CeladonMansion5Text1:
- TX_FAR _CeladonMansion5Text1
- db "@"
-
-CeladonMansion5Text2:
- TX_ASM
- lb bc, EEVEE, 25
- call GivePokemon
- jr nc, .asm_24365
- ld a, HS_CELADON_MANSION_5_GIFT
- ld [wMissableObjectIndex], a
- predef HideObject
-.asm_24365
- jp TextScriptEnd
diff --git a/scripts/celadonmart1.asm b/scripts/celadonmart1.asm
deleted file mode 100755
index 64c4a087..00000000
--- a/scripts/celadonmart1.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-CeladonMart1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMart1TextPointers:
- dw CeladonMart1Text1
- dw CeladonMart1Text2
- dw CeladonMart1Text3
-
-CeladonMart1Text1:
- TX_FAR _CeladonMart1Text1
- db "@"
-
-CeladonMart1Text2:
- TX_FAR _CeladonMart1Text2
- db "@"
-
-CeladonMart1Text3:
- TX_FAR _CeladonMart1Text3
- db "@"
diff --git a/scripts/celadonmart2.asm b/scripts/celadonmart2.asm
deleted file mode 100755
index c438d6e1..00000000
--- a/scripts/celadonmart2.asm
+++ /dev/null
@@ -1,21 +0,0 @@
-CeladonMart2Script:
- jp EnableAutoTextBoxDrawing
-
-CeladonMart2TextPointers:
- dw CeladonMart2Clerk1Text
- dw CeladonMart2Clerk2Text
- dw CeladonMart2Text3
- dw CeladonMart2Text4
- dw CeladonMart2Text5
-
-CeladonMart2Text3:
- TX_FAR _CeladonMart2Text3
- db "@"
-
-CeladonMart2Text4:
- TX_FAR _CeladonMart2Text4
- db "@"
-
-CeladonMart2Text5:
- TX_FAR _CeladonMart2Text5
- db "@"
diff --git a/scripts/celadonmart3.asm b/scripts/celadonmart3.asm
deleted file mode 100755
index 25bf4e80..00000000
--- a/scripts/celadonmart3.asm
+++ /dev/null
@@ -1,75 +0,0 @@
-CeladonMart3Script:
- jp EnableAutoTextBoxDrawing
-
-CeladonMart3TextPointers:
- dw CeladonMart3Text1
- dw CeladonMart3Text2
- dw CeladonMart3Text3
- dw CeladonMart3Text4
- dw CeladonMart3Text5
- dw CeladonMart3Text6
- dw CeladonMart3Text7
- dw CeladonMart3Text8
- dw CeladonMart3Text9
- dw CeladonMart3Text10
- dw CeladonMart3Text11
- dw CeladonMart3Text12
- dw CeladonMart3Text13
- dw CeladonMart3Text14
- dw CeladonMart3Text15
- dw CeladonMart3Text16
- dw CeladonMart3Text17
-
-CeladonMart3Text1:
- TX_ASM
- callab Func_f1e30
- jp TextScriptEnd
-
-CeladonMart3Text2:
- TX_FAR _CeladonMart3Text2
- db "@"
-
-CeladonMart3Text3:
- TX_FAR _CeladonMart3Text3
- db "@"
-
-CeladonMart3Text4:
- TX_FAR _CeladonMart3Text4
- db "@"
-
-CeladonMart3Text5:
- TX_FAR _CeladonMart3Text5
- db "@"
-
-CeladonMart3Text12
-CeladonMart3Text10:
-CeladonMart3Text8:
-CeladonMart3Text6:
- TX_FAR _CeladonMart3Text6
- db "@"
-
-CeladonMart3Text7:
- TX_FAR _CeladonMart3Text7
- db "@"
-
-CeladonMart3Text9:
- TX_FAR _CeladonMart3Text9
- db "@"
-
-CeladonMart3Text11:
- TX_FAR _CeladonMart3Text11
- db "@"
-
-CeladonMart3Text13:
- TX_FAR _CeladonMart3Text13
- db "@"
-
-CeladonMart3Text14:
- TX_FAR _CeladonMart3Text14
- db "@"
-
-CeladonMart3Text17:
-CeladonMart3Text16:
-CeladonMart3Text15:
- TX_FAR _CeladonMart3Text15
- db "@"
diff --git a/scripts/celadonmart3_2.asm b/scripts/celadonmart3_2.asm
deleted file mode 100755
index 1c9f0db1..00000000
--- a/scripts/celadonmart3_2.asm
+++ /dev/null
@@ -1,38 +0,0 @@
-Func_f1e30
- CheckEvent EVENT_GOT_TM18
- jr nz, .asm_f1e54
- ld hl, CeladonMart3Text_f1e5b
- call PrintText
- lb bc, TM_18, 1
- call GiveItem
- jr nc, .asm_f1e4f
- SetEvent EVENT_GOT_TM18
- ld hl, CeladonMart3Text_f1e60
- jr .asm_f1e57
-
-.asm_f1e4f
- ld hl, CeladonMart3Text_f1e6b
- jr .asm_f1e57
-
-.asm_f1e54
- ld hl, CeladonMart3Text_f1e66
-.asm_f1e57
- call PrintText
- ret
-
-CeladonMart3Text_f1e5b:
- TX_FAR _TM18PreReceiveText
- db "@"
-
-CeladonMart3Text_f1e60:
- TX_FAR _ReceivedTM18Text
- TX_SFX_ITEM
- db "@"
-
-CeladonMart3Text_f1e66:
- TX_FAR _TM18ExplanationText
- db "@"
-
-CeladonMart3Text_f1e6b:
- TX_FAR _TM18NoRoomText
- db "@"
diff --git a/scripts/celadonmart4.asm b/scripts/celadonmart4.asm
deleted file mode 100755
index 18049dc0..00000000
--- a/scripts/celadonmart4.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-CeladonMart4Script:
- jp EnableAutoTextBoxDrawing
-
-CeladonMart4TextPointers:
- dw CeladonMart4ClerkText
- dw CeladonMart4Text2
- dw CeladonMart4Text3
- dw CeladonMart4Text4
-
-CeladonMart4Text2:
- TX_FAR _CeladonMart4Text2
- db "@"
-
-CeladonMart4Text3:
- TX_FAR _CeladonMart4Text3
- db "@"
-
-CeladonMart4Text4:
- TX_FAR _CeladonMart4Text4
- db "@"
diff --git a/scripts/celadonmart5.asm b/scripts/celadonmart5.asm
deleted file mode 100755
index f65b42bc..00000000
--- a/scripts/celadonmart5.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-CeladonMart5Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMart5TextPointers:
- dw CeladonMart5Text1
- dw CeladonMart5Text2
- dw CeladonMart5Clerk1Text
- dw CeladonMart5Clerk2Text
- dw CeladonMart5Text5
-
-CeladonMart5Text1:
- TX_FAR _CeladonMart5Text1
- db "@"
-
-CeladonMart5Text2:
- TX_FAR _CeladonMart5Text2
- db "@"
-
-CeladonMart5Text5:
- TX_FAR _CeladonMart5Text5
- db "@"
diff --git a/scripts/celadonmartelevator.asm b/scripts/celadonmartelevator.asm
deleted file mode 100755
index 60e5210c..00000000
--- a/scripts/celadonmartelevator.asm
+++ /dev/null
@@ -1,73 +0,0 @@
-CeladonMartElevatorScript:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, CeladonMartElevatorScript_4861c
- pop hl
- bit 7, [hl]
- res 7, [hl]
- call nz, CeladonMartElevatorScript_48654
- xor a
- ld [wAutoTextBoxDrawingControl], a
- inc a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ret
-
-CeladonMartElevatorScript_4861c:
- ld hl, wWarpEntries
- ld a, [wWarpedFromWhichWarp]
- ld b, a
- ld a, [wWarpedFromWhichMap]
- ld c, a
- call CeladonMartElevatorScript_4862a
-
-CeladonMartElevatorScript_4862a:
- inc hl
- inc hl
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ret
-
-CeladonMartElevatorScript_48631:
- ld hl, CeladonMartElevatorFloors
- call LoadItemList
- ld hl, CeladonMartElevatorWarpMaps
- ld de, wElevatorWarpMaps
- ld bc, CeladonMartElevatorWarpMapsEnd - CeladonMartElevatorWarpMaps
- jp CopyData
-
-CeladonMartElevatorFloors:
- db 5 ; number of elements in list
- db FLOOR_1F
- db FLOOR_2F
- db FLOOR_3F
- db FLOOR_4F
- db FLOOR_5F
- db $FF
-
-CeladonMartElevatorWarpMaps:
-; first byte is warp number
-; second byte is map number
-; These specify where the player goes after getting out of the elevator.
- db $05, CELADON_MART_1
- db $02, CELADON_MART_2
- db $02, CELADON_MART_3
- db $02, CELADON_MART_4
- db $02, CELADON_MART_5
-CeladonMartElevatorWarpMapsEnd:
-
-CeladonMartElevatorScript_48654:
- jpba ShakeElevator
-
-CeladonMartElevatorTextPointers:
- dw CeladonMartElevatorText1
-
-CeladonMartElevatorText1:
- TX_ASM
- call CeladonMartElevatorScript_48631
- ld hl, CeladonMartElevatorWarpMaps
- predef DisplayElevatorFloorMenu
- jp TextScriptEnd
diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm
deleted file mode 100755
index 22a83780..00000000
--- a/scripts/celadonmartroof.asm
+++ /dev/null
@@ -1,259 +0,0 @@
-CeladonMartRoofScript:
- call EnableAutoTextBoxDrawing
- ret
-
-CeladonMartRoofScript_GetDrinksInBag:
-; construct a list of all drinks in the player's bag
- xor a
- ld [wFilteredBagItemsCount], a
- ld de, wFilteredBagItems
- ld hl, CeladonMartRoofDrinkList
-.loop
- ld a, [hli]
- and a
- jr z, .done
- push hl
- push de
- ld [wd11e], a
- ld b, a
- predef GetQuantityOfItemInBag
- pop de
- pop hl
- ld a, b
- and a
- jr z, .loop ; if the item isn't in the bag
- ld a, [wd11e]
- ld [de], a
- inc de
- push hl
- ld hl, wFilteredBagItemsCount
- inc [hl]
- pop hl
- jr .loop
-.done
- ld a, $ff
- ld [de], a
- ret
-
-CeladonMartRoofDrinkList:
- db FRESH_WATER
- db SODA_POP
- db LEMONADE
- db $00
-
-CeladonMartRoofScript_GiveDrinkToGirl:
- ld hl, wd730
- set 6, [hl]
- ld hl, CeladonMartRoofText_484ee
- call PrintText
- xor a
- ld [wCurrentMenuItem], a
- ld a, A_BUTTON | B_BUTTON
- ld [wMenuWatchedKeys], a
- ld a, [wFilteredBagItemsCount]
- dec a
- ld [wMaxMenuItem], a
- ld a, 2
- ld [wTopMenuItemY], a
- ld a, 1
- ld [wTopMenuItemX], a
- ld a, [wFilteredBagItemsCount]
- dec a
- ld bc, 2
- ld hl, 3
- call AddNTimes
- dec l
- ld b, l
- ld c, 12
- coord hl, 0, 0
- call TextBoxBorder
- call UpdateSprites
- call CeladonMartRoofScript_PrintDrinksInBag
- ld hl, wd730
- res 6, [hl]
- call HandleMenuInput
- bit BIT_B_BUTTON, a ; pressed b
- ret nz
- ld hl, wFilteredBagItems
- ld a, [wCurrentMenuItem]
- ld d, 0
- ld e, a
- add hl, de
- ld a, [hl]
- ld [hItemToRemoveID], a
- cp FRESH_WATER
- jr z, .gaveFreshWater
- cp SODA_POP
- jr z, .gaveSodaPop
-; gave Lemonade
- CheckEvent EVENT_GOT_TM49
- jr nz, .alreadyGaveDrink
- ld hl, CeladonMartRoofText_48515
- call PrintText
- call RemoveItemByIDBank12
- lb bc, TM_49, 1
- call GiveItem
- jr nc, .bagFull
- ld hl, ReceivedTM49Text
- call PrintText
- SetEvent EVENT_GOT_TM49
- ret
-.gaveSodaPop
- CheckEvent EVENT_GOT_TM48
- jr nz, .alreadyGaveDrink
- ld hl, CeladonMartRoofText_48504
- call PrintText
- call RemoveItemByIDBank12
- lb bc, TM_48, 1
- call GiveItem
- jr nc, .bagFull
- ld hl, CeladonMartRoofText_4850a
- call PrintText
- SetEvent EVENT_GOT_TM48
- ret
-.gaveFreshWater
- CheckEvent EVENT_GOT_TM13
- jr nz, .alreadyGaveDrink
- ld hl, CeladonMartRoofText_484f3
- call PrintText
- call RemoveItemByIDBank12
- lb bc, TM_13, 1
- call GiveItem
- jr nc, .bagFull
- ld hl, CeladonMartRoofText_484f9
- call PrintText
- SetEvent EVENT_GOT_TM13
- ret
-.bagFull
- ld hl, CeladonMartRoofText_48526
- call PrintText
- ret
-.alreadyGaveDrink
- ld hl, CeladonMartRoofText_4852c
- call PrintText
- ret
-
-RemoveItemByIDBank12:
- callba RemoveItemByID
- ret
-
-CeladonMartRoofText_484ee:
- TX_FAR _CeladonMartRoofText_484ee
- db "@"
-
-CeladonMartRoofText_484f3:
- TX_FAR _CeladonMartRoofText_484f3
- db $0d
- db "@"
-
-CeladonMartRoofText_484f9:
- TX_FAR _CeladonMartRoofText_484f9
- db $0b
- TX_FAR _CeladonMartRoofText_484fe
- db $0d
- db "@"
-
-CeladonMartRoofText_48504:
- TX_FAR _CeladonMartRoofText_48504
- db $0d
- db "@"
-
-CeladonMartRoofText_4850a:
- TX_FAR _CeladonMartRoofText_4850a
- db $0b
- TX_FAR _CeladonMartRoofText_4850f
- db $0d
- db "@"
-
-CeladonMartRoofText_48515:
- TX_FAR _CeladonMartRoofText_48515
- db $0d
- db "@"
-
-ReceivedTM49Text:
- TX_FAR _ReceivedTM49Text
- db $0b
- TX_FAR _CeladonMartRoofText_48520
- db $0d
- db "@"
-
-CeladonMartRoofText_48526:
- TX_FAR _CeladonMartRoofText_48526
- db $0d
- db "@"
-
-CeladonMartRoofText_4852c:
- TX_FAR _CeladonMartRoofText_4852c
- db $0d
- db "@"
-
-CeladonMartRoofScript_PrintDrinksInBag:
- ld hl, wFilteredBagItems
- xor a
- ld [hItemCounter], a
-.loop
- ld a, [hli]
- cp $ff
- ret z
- push hl
- ld [wd11e], a
- call GetItemName
- coord hl, 2, 2
- ld a, [hItemCounter]
- ld bc, SCREEN_WIDTH * 2
- call AddNTimes
- ld de, wcd6d
- call PlaceString
- ld hl, hItemCounter
- inc [hl]
- pop hl
- jr .loop
-
-CeladonMartRoofTextPointers:
- dw CeladonMartRoofText1
- dw CeladonMartRoofText2
- dw CeladonMartRoofText5
- dw CeladonMartRoofText5
- dw CeladonMartRoofText5
- dw CeladonMartRoofText6
-
-CeladonMartRoofText1:
- TX_FAR _CeladonMartRoofText1
- db "@"
-
-CeladonMartRoofText2:
- TX_ASM
- call CeladonMartRoofScript_GetDrinksInBag
- ld a, [wFilteredBagItemsCount]
- and a
- jr z, .noDrinksInBag
- ld a, 1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, CeladonMartRoofText4
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .done
- call CeladonMartRoofScript_GiveDrinkToGirl
- jr .done
-.noDrinksInBag
- ld hl, CeladonMartRoofText3
- call PrintText
-.done
- jp TextScriptEnd
-
-CeladonMartRoofText3:
- TX_FAR _CeladonMartRoofText_48598
- db "@"
-
-CeladonMartRoofText4:
- TX_FAR _CeladonMartRoofText4
- db "@"
-
-CeladonMartRoofText5:
- TX_VENDING_MACHINE
-
-CeladonMartRoofText6:
- TX_FAR _CeladonMartRoofText6
- db "@"
diff --git a/scripts/celadonpokecenter.asm b/scripts/celadonpokecenter.asm
deleted file mode 100755
index acbae2ec..00000000
--- a/scripts/celadonpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-CeladonPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-CeladonPokecenterTextPointers:
- dw CeladonHealNurseText
- dw CeladonPokecenterText2
- dw CeladonPokecenterText3
- dw CeladonTradeNurseText
- dw CeladonPokecenterText5
-
-CeladonTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-CeladonHealNurseText:
- TX_POKECENTER_NURSE
-
-CeladonPokecenterText2:
- TX_FAR _CeladonPokecenterText2
- db "@"
-
-CeladonPokecenterText3:
- TX_FAR _CeladonPokecenterText3
- db "@"
-
-CeladonPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/celadonprizeroom.asm b/scripts/celadonprizeroom.asm
deleted file mode 100755
index a07ce162..00000000
--- a/scripts/celadonprizeroom.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-CeladonPrizeRoomScript:
- jp EnableAutoTextBoxDrawing
-
-CeladonPrizeRoomTextPointers:
- dw CeladonPrizeRoomText1
- dw CeladonPrizeRoomText2
- dw CeladonPrizeRoomText3
- dw CeladonPrizeRoomText3
- dw CeladonPrizeRoomText3
-
-CeladonPrizeRoomText1:
- TX_FAR _CeladonPrizeRoomText1
- db "@"
-
-CeladonPrizeRoomText2:
- TX_FAR _CeladonPrizeRoomText2
- db "@"
-
-CeladonPrizeRoomText3:
- TX_PRIZE_VENDOR
diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm
deleted file mode 100755
index 4243d35c..00000000
--- a/scripts/ceruleancity.asm
+++ /dev/null
@@ -1,433 +0,0 @@
-CeruleanCityScript:
- call EnableAutoTextBoxDrawing
- ld hl, CeruleanCityScriptPointers
- ld a, [wCeruleanCityCurScript]
- jp JumpTable
-
-CeruleanCityScript_1948c:
- xor a
- ld [wJoyIgnore], a
- ld [wCeruleanCityCurScript], a
- ld a, HS_CERULEAN_RIVAL
- ld [wMissableObjectIndex], a
- predef_jump HideObject
-
-CeruleanCityScriptPointers:
- dw CeruleanCityScript0
- dw CeruleanCityScript1
- dw CeruleanCityScript2
- dw CeruleanCityScript3
- dw CeruleanCityScript4
-
-CeruleanCityScript4:
- ld a, [wIsInBattle]
- cp $ff
- jp z, CeruleanCityScript_1948c
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
- ld [wCeruleanCityCurScript], a
- ret
-
-CeruleanCityScript0:
- CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
- jr nz, .asm_194f7
- ld hl, CeruleanCityCoords1
- call ArePlayerCoordsInArray
- jr nc, .asm_194f7
- ld a, [wCoordIndex]
- cp $1
- ld a, PLAYER_DIR_UP
- ld b, SPRITE_FACING_DOWN
- jr nz, .asm_194e6
- ld a, PLAYER_DIR_DOWN
- ld b, SPRITE_FACING_UP
-.asm_194e6
- ld [wPlayerMovingDirection], a
- ld a, b
- ld [wSpriteStateData1 + 2 * $10 + $9], a
- call Delay3
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-.asm_194f7
- CheckEvent EVENT_BEAT_CERULEAN_RIVAL
- ret nz
- ld hl, CeruleanCityCoords2
- call ArePlayerCoordsInArray
- ret nc
- ld a, [wWalkBikeSurfState]
- and a
- jr z, .asm_19512
- call StopAllMusic
-.asm_19512
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- xor a
- ld [hJoyHeld], a
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, [wXCoord]
- cp $14
- jr z, .asm_19535
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, $5
- ld [H_SPRITEDATAOFFSET], a
- call GetPointerWithinSpriteStateData2
- ld [hl], $19
-.asm_19535
- ld a, HS_CERULEAN_RIVAL
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld de, CeruleanCityMovement1
- ld a, $1
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $1
- ld [wCeruleanCityCurScript], a
- ret
-
-CeruleanCityCoords1:
- db $07,$1e
- db $09,$1e
- db $ff
-
-CeruleanCityCoords2:
- db $06,$14
- db $06,$15
- db $ff
-
-CeruleanCityMovement1:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-CeruleanCityScript_1955d:
- ld a,1
- ld [H_SPRITEINDEX],a
- xor a ; SPRITE_FACING_DOWN
- ld [hSpriteFacingDirection],a
- jp SetSpriteFacingDirectionAndDelay ; face object
-
-CeruleanCityScript1:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, CeruleanCityText_1966d
- ld de, CeruleanCityText_19672
- call SaveEndBattleTextPointers
- ld a, OPP_SONY1
- ld [wCurOpponent], a
- ld a, 3
- ld [wTrainerNo], a
- xor a
- ld [hJoyHeld], a
- call CeruleanCityScript_1955d
- ld a, $2
- ld [wCeruleanCityCurScript], a
- ret
-
-CeruleanCityScript2:
- ld a, [wIsInBattle]
- cp $ff
- jp z, CeruleanCityScript_1948c
- call CeruleanCityScript_1955d
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_CERULEAN_RIVAL
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld a, [wXCoord]
- cp $14
- jr nz, .asm_195f0
- ld de, CeruleanCityMovement4
- jr .asm_195f3
-.asm_195f0
- ld de, CeruleanCityMovement3
-.asm_195f3
- ld a, $1
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $3
- ld [wCeruleanCityCurScript], a
- ret
-
-CeruleanCityMovement3:
- db NPC_MOVEMENT_LEFT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-CeruleanCityMovement4:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-CeruleanCityScript3:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_CERULEAN_RIVAL
- ld [wMissableObjectIndex], a
- predef HideObject
- xor a
- ld [wJoyIgnore], a
- call PlayDefaultMusic
- ld a, $0
- ld [wCeruleanCityCurScript], a
- ret
-
-CeruleanCityTextPointers:
- dw CeruleanCityText1
- dw CeruleanCityText2
- dw CeruleanCityText3
- dw CeruleanCityText4
- dw CeruleanCityText5
- dw CeruleanCityText6
- dw CeruleanCityText7
- dw CeruleanCityText8
- dw CeruleanCityText9
- dw CeruleanCityText10
- dw CeruleanCityText11
- dw CeruleanCityText12
- dw CeruleanCityText13
- dw MartSignText
- dw PokeCenterSignText
- dw CeruleanCityText16
- dw CeruleanCityText17
-
-CeruleanCityText1:
- TX_ASM
- CheckEvent EVENT_BEAT_CERULEAN_RIVAL
- ; do pre-battle text
- jr z, .PreBattleText
- ; or talk about bill
- ld hl, CeruleanCityText_19677
- call PrintText
- jr .end
-.PreBattleText
- ld hl, CeruleanCityText_19668
- call PrintText
-.end
- jp TextScriptEnd
-
-CeruleanCityText_19668:
- TX_FAR _CeruleanCityText_19668
- db "@"
-
-CeruleanCityText_1966d:
- TX_FAR _CeruleanCityText_1966d
- db "@"
-
-CeruleanCityText_19672:
- TX_FAR _CeruleanCityText_19672
- db "@"
-
-CeruleanCityText_19677:
- TX_FAR _CeruleanCityText_19677
- db "@"
-
-CeruleanCityText2:
- TX_ASM
- CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
- jr nz, .asm_4ca20
- ld hl, CeruleanCityText_196d9
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, CeruleanCityText_196ee
- ld de, CeruleanCityText_196ee
- call SaveEndBattleTextPointers
- ld a, [hSpriteIndexOrTextID]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $4
- ld [wCeruleanCityCurScript], a
- jp TextScriptEnd
-.asm_4ca20
- ld hl, CeruleanCityText_196f3
- call PrintText
- lb bc, TM_28, 1
- call GiveItem
- jr c, .Success
- ld hl, TM28NoRoomText
- call PrintText
- jr .Done
-.Success
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, ReceivedTM28Text
- call PrintText
- callba CeruleanHideRocket
-.Done
- jp TextScriptEnd
-
-CeruleanCityText_196d9:
- TX_FAR _CeruleanCityText_196d9
- db "@"
-
-ReceivedTM28Text:
- TX_FAR _ReceivedTM28Text
- db $0B
- TX_FAR _ReceivedTM28Text2
- db $0D, "@"
-
-TM28NoRoomText:
- TX_FAR _TM28NoRoomText
- db "@"
-
-CeruleanCityText_196ee:
- TX_FAR _CeruleanCityText_196ee
- db "@"
-
-CeruleanCityText_196f3:
- TX_FAR _CeruleanCityText_196f3
- db "@"
-
-CeruleanCityText3:
- TX_FAR _CeruleanCityText3
- db "@"
-
-CeruleanCityText4:
- TX_FAR _CeruleanCityText4
- db "@"
-
-CeruleanCityText5:
- TX_FAR _CeruleanCityText5
- db "@"
-
-CeruleanCityText11:
-CeruleanCityText6:
- TX_FAR _CeruleanCityText6
- db "@"
-
-CeruleanCityText7:
- TX_ASM
- ld a, [hRandomAdd]
- cp $b4
- jr c, .asm_e9fc9
- ld hl, CeruleanCityText_19730
- call PrintText
- jr .asm_d486e
-.asm_e9fc9
- cp $64
- jr c, .asm_df99b
- ld hl, CeruleanCityText_19735
- call PrintText
- jr .asm_d486e
-.asm_df99b
- ld hl, CeruleanCityText_1973a
- call PrintText
-.asm_d486e
- jp TextScriptEnd
-
-CeruleanCityText_19730:
- TX_FAR _CeruleanCityText_19730
- db "@"
-
-CeruleanCityText_19735:
- TX_FAR _CeruleanCityText_19735
- db "@"
-
-CeruleanCityText_1973a:
- TX_FAR _CeruleanCityText_1973a
- db "@"
-
-CeruleanCityText8:
- TX_ASM
- ld a, [hRandomAdd]
- cp $b4
- jr c, .asm_e28da
- ld hl, CeruleanCityText_1976f
- call PrintText
- jr .asm_f2f38
-.asm_e28da
- cp $78
- jr c, .asm_15d08
- ld hl, CeruleanCityText_19774
- call PrintText
- jr .asm_f2f38
-.asm_15d08
- cp $3c
- jr c, .asm_d7fea
- ld hl, CeruleanCityText_19779
- call PrintText
- jr .asm_f2f38
-.asm_d7fea
- ld hl, CeruleanCityText_1977e
- call PrintText
-.asm_f2f38
- jp TextScriptEnd
-
-CeruleanCityText_1976f:
- TX_FAR _CeruleanCityText_1976f
- db "@"
-
-CeruleanCityText_19774:
- TX_FAR _CeruleanCityText_19774
- db "@"
-
-CeruleanCityText_19779:
- TX_FAR _CeruleanCityText_19779
- db "@"
-
-CeruleanCityText_1977e:
- TX_FAR _CeruleanCityText_1977e
- db "@"
-
-CeruleanCityText9:
- TX_FAR _CeruleanCityText9
- db "@"
-
-CeruleanCityText10:
- TX_FAR _CeruleanCityText10
- db "@"
-
-CeruleanCityText12:
- TX_FAR _CeruleanCityText12
- db "@"
-
-CeruleanCityText13:
- TX_FAR _CeruleanCityText13
- db "@"
-
-CeruleanCityText16:
- TX_FAR _CeruleanCityText16
- db "@"
-
-CeruleanCityText17:
- TX_FAR _CeruleanCityText17
- db "@"
diff --git a/scripts/ceruleangym.asm b/scripts/ceruleangym.asm
deleted file mode 100755
index 78ed1fed..00000000
--- a/scripts/ceruleangym.asm
+++ /dev/null
@@ -1,219 +0,0 @@
-CeruleanGymScript:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- call nz, CeruleanGymScript_5c6d0
- call EnableAutoTextBoxDrawing
- ld hl, CeruleanGymTrainerHeaders
- ld de, CeruleanGymScriptPointers
- ld a, [wCeruleanGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wCeruleanGymCurScript], a
- ret
-
-CeruleanGymScript_5c6d0:
- ld hl, Gym2CityName
- ld de, Gym2LeaderName
- jp LoadGymLeaderAndCityName
-
-Gym2CityName:
- db "CERULEAN CITY@"
-
-Gym2LeaderName:
- db "MISTY@"
-
-CeruleanGymScript_5c6ed:
- xor a
- ld [wJoyIgnore], a
- ld [wCeruleanGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-CeruleanGymScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw CeruleanGymScript3
-
-CeruleanGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, CeruleanGymScript_5c6ed
- ld a, $f0
- ld [wJoyIgnore], a
-
-CeruleanGymScript_5c70d:
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_MISTY
- lb bc, TM_11, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM11
- jr .gymVictory
-
-.BagFull
- ld a, $7
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 1, [hl]
- ld hl, wBeatGymFlags
- set 1, [hl]
-
- ; deactivate gym trainers
- SetEvents EVENT_BEAT_CERULEAN_GYM_TRAINER_0, EVENT_BEAT_CERULEAN_GYM_TRAINER_1
-
- jp CeruleanGymScript_5c6ed
-
-CeruleanGymTextPointers:
- dw CeruleanGymText1
- dw CeruleanGymText2
- dw CeruleanGymText3
- dw CeruleanGymText4
- dw CeruleanGymText5
- dw CeruleanGymText6
- dw CeruleanGymText7
-
-CeruleanGymTrainerHeaders:
-CeruleanGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_CERULEAN_GYM_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CERULEAN_GYM_TRAINER_0
- dw CeruleanGymBattleText1 ; TextBeforeBattle
- dw CeruleanGymAfterBattleText1 ; TextAfterBattle
- dw CeruleanGymEndBattleText1 ; TextEndBattle
- dw CeruleanGymEndBattleText1 ; TextEndBattle
-
-CeruleanGymTrainerHeader1:
- dbEventFlagBit EVENT_BEAT_CERULEAN_GYM_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_CERULEAN_GYM_TRAINER_1
- dw CeruleanGymBattleText2 ; TextBeforeBattle
- dw CeruleanGymAfterBattleText2 ; TextAfterBattle
- dw CeruleanGymEndBattleText2 ; TextEndBattle
- dw CeruleanGymEndBattleText2 ; TextEndBattle
-
- db $ff
-
-CeruleanGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_MISTY
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM11
- jr nz, .afterVictory
- call z, CeruleanGymScript_5c70d
- call DisableWaitingAfterTextDisplay
- jr .done
-.afterVictory
- ld hl, CeruleanGymText_5c7c3
- call PrintText
- jr .done
-.beginBattle
- ld hl, CeruleanGymText_5c7be
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, CeruleanGymText_5c7d8
- ld de, CeruleanGymText_5c7d8
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $2
- ld [wGymLeaderNo], a
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wCeruleanGymCurScript], a
-.done
- jp TextScriptEnd
-
-CeruleanGymText_5c7be:
- TX_FAR _CeruleanGymText_5c7be
- db "@"
-
-CeruleanGymText_5c7c3:
- TX_FAR _CeruleanGymText_5c7c3
- db "@"
-
-CeruleanGymText5:
- TX_FAR _CeruleanGymText_5c7c8
- db "@"
-
-CeruleanGymText6:
-ReceivedTM11Text:
- TX_FAR _ReceivedTM11Text
- db $0B, "@"
-
-CeruleanGymText7:
- TX_FAR _CeruleanGymText_5c7d3
- db "@"
-
-CeruleanGymText_5c7d8:
- TX_FAR _CeruleanGymText_5c7d8
- db "@"
-
-CeruleanGymText2:
- TX_ASM
- ld hl, CeruleanGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-CeruleanGymBattleText1:
- TX_FAR _CeruleanGymBattleText1
- db "@"
-
-CeruleanGymEndBattleText1:
- TX_FAR _CeruleanGymEndBattleText1
- db "@"
-
-CeruleanGymAfterBattleText1:
- TX_FAR _CeruleanGymAfterBattleText1
- db "@"
-
-CeruleanGymText3:
- TX_ASM
- ld hl, CeruleanGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-CeruleanGymBattleText2:
- TX_FAR _CeruleanGymBattleText2
- db "@"
-
-CeruleanGymEndBattleText2:
- TX_FAR _CeruleanGymEndBattleText2
- db "@"
-
-CeruleanGymAfterBattleText2:
- TX_FAR _CeruleanGymAfterBattleText2
- db "@"
-
-CeruleanGymText4:
- TX_ASM
- CheckEvent EVENT_BEAT_MISTY
- jr nz, .asm_5c821
- ld hl, CeruleanGymText_5c82a
- call PrintText
- jr .asm_5c827
-.asm_5c821
- ld hl, CeruleanGymText_5c82f
- call PrintText
-.asm_5c827
- jp TextScriptEnd
-
-CeruleanGymText_5c82a:
- TX_FAR _CeruleanGymText_5c82a
- db "@"
-
-CeruleanGymText_5c82f:
- TX_FAR _CeruleanGymText_5c82f
- db "@"
diff --git a/scripts/ceruleanhouse1.asm b/scripts/ceruleanhouse1.asm
deleted file mode 100755
index ba75c240..00000000
--- a/scripts/ceruleanhouse1.asm
+++ /dev/null
@@ -1,106 +0,0 @@
-CeruleanHouse1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-CeruleanHouse1TextPointers:
- dw CeruleanHouse1Text1
- dw CeruleanHouse1Text2
- dw CeruleanHouse1Text3
- dw CeruleanHouse1Text4
-
-CeruleanHouse1Text1:
- TX_ASM
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- CheckEvent EVENT_GOT_BULBASAUR_IN_CERULEAN
- jr nz, .asm_1cfbf
- ld hl, CeruleanHouse1Text_1cfc8
- call PrintText
- ld a, [wPikachuHappiness]
- cp 147
- jr c, .asm_1cfb3
- ld hl, CeruleanHouse1Text_1cfce
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_1cfb6
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, BULBASAUR
- ld [wd11e], a
- ld [wcf91], a
- call GetMonName
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- lb bc, BULBASAUR, 10
- call GivePokemon
- jr nc, .asm_1cfb3
- ld a, [wAddedToParty]
- and a
- call z, WaitForTextScrollButtonPress
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, CeruleanHouse1Text_1cfd3
- call PrintText
- ld a, HS_CERULEAN_BULBASAUR
- ld [wMissableObjectIndex], a
- predef HideObject
- SetEvent EVENT_GOT_BULBASAUR_IN_CERULEAN
-.asm_1cfb3
- jp TextScriptEnd
-
-.asm_1cfb6
- ld hl, CeruleanHouse1Text_1cfdf
- call PrintText
- jp TextScriptEnd
-
-.asm_1cfbf
- ld hl, CeruleanHouse1Text_1cfd9
- call PrintText
- jp TextScriptEnd
-
-CeruleanHouse1Text_1cfc8:
- TX_FAR MelanieText1
- TX_WAIT_BUTTON
- db "@"
-
-CeruleanHouse1Text_1cfce:
- TX_FAR MelanieText2
- db "@"
-
-CeruleanHouse1Text_1cfd3:
- TX_FAR MelanieText3
- TX_WAIT_BUTTON
- db "@"
-
-CeruleanHouse1Text_1cfd9:
- TX_FAR MelanieText4
- TX_WAIT_BUTTON
- db "@"
-
-CeruleanHouse1Text_1cfdf:
- TX_FAR MelanieText5
- TX_WAIT_BUTTON
- db "@"
-
-CeruleanHouse1Text2:
- TX_FAR MelanieBulbasaurText
- TX_ASM
- ld a, BULBASAUR
- call PlayCry
- jp TextScriptEnd
-
-CeruleanHouse1Text3:
- TX_FAR MelanieOddishText
- TX_ASM
- ld a, ODDISH
- call PlayCry
- jp TextScriptEnd
-
-CeruleanHouse1Text4:
- TX_FAR MelanieSandshrewText
- TX_ASM
- ld a, SANDSHREW
- call PlayCry
- jp TextScriptEnd
diff --git a/scripts/ceruleanhouse2.asm b/scripts/ceruleanhouse2.asm
deleted file mode 100755
index e83c2194..00000000
--- a/scripts/ceruleanhouse2.asm
+++ /dev/null
@@ -1,109 +0,0 @@
-CeruleanHouse2Script:
- ld a, $1
- ld [wAutoTextBoxDrawingControl], a
- dec a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ret
-
-CeruleanHouse2TextPointers:
- dw CeruleanHouse2Text1
-
-CeruleanHouse2Text1:
- TX_ASM
- ld hl, CeruleanHouse2Text_74e77
- call PrintText
- xor a
- ld [wCurrentMenuItem], a
- ld [wListScrollOffset], a
-.asm_74e23
- ld hl, CeruleanHouse2Text_74e7c
- call PrintText
- ld hl, BadgeItemList
- call LoadItemList
- ld hl, wItemList
- ld a, l
- ld [wListPointer], a
- ld a, h
- ld [wListPointer + 1], a
- xor a
- ld [wPrintItemPrices], a
- ld [wMenuItemToSwap], a
- ld a, SPECIALLISTMENU
- ld [wListMenuID], a
- call DisplayListMenuID
- jr c, .asm_74e60
- ld hl, TextPointers_74e86
- ld a, [wcf91]
- sub $15
- add a
- ld d, $0
- ld e, a
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call PrintText
- jr .asm_74e23
-.asm_74e60
- xor a
- ld [wListScrollOffset], a
- ld hl, CeruleanHouse2Text_74e81
- call PrintText
- jp TextScriptEnd
-
-BadgeItemList:
- db $8,BOULDERBADGE,CASCADEBADGE,THUNDERBADGE,RAINBOWBADGE,SOULBADGE,MARSHBADGE,VOLCANOBADGE,EARTHBADGE,$FF
-
-CeruleanHouse2Text_74e77:
- TX_FAR _CeruleanHouse2Text_74e77
- db "@"
-
-CeruleanHouse2Text_74e7c:
- TX_FAR _CeruleanHouse2Text_74e7c
- db "@"
-
-CeruleanHouse2Text_74e81:
- TX_FAR _CeruleanHouse2Text_74e81
- db "@"
-
-TextPointers_74e86:
- dw CeruleanHouse2Text_74e96
- dw CeruleanHouse2Text_74e9b
- dw CeruleanHouse2Text_74ea0
- dw CeruleanHouse2Text_74ea5
- dw CeruleanHouse2Text_74eaa
- dw CeruleanHouse2Text_74eaf
- dw CeruleanHouse2Text_74eb4
- dw CeruleanHouse2Text_74eb9
-
-CeruleanHouse2Text_74e96:
- TX_FAR _CeruleanHouse2Text_74e96
- db "@"
-
-CeruleanHouse2Text_74e9b:
- TX_FAR _CeruleanHouse2Text_74e9b
- db "@"
-
-CeruleanHouse2Text_74ea0:
- TX_FAR _CeruleanHouse2Text_74ea0
- db "@"
-
-CeruleanHouse2Text_74ea5:
- TX_FAR _CeruleanHouse2Text_74ea5
- db "@"
-
-CeruleanHouse2Text_74eaa:
- TX_FAR _CeruleanHouse2Text_74eaa
- db "@"
-
-CeruleanHouse2Text_74eaf:
- TX_FAR _CeruleanHouse2Text_74eaf
- db "@"
-
-CeruleanHouse2Text_74eb4:
- TX_FAR _CeruleanHouse2Text_74eb4
- db "@"
-
-CeruleanHouse2Text_74eb9:
- TX_FAR _CeruleanHouse2Text_74eb9
- db "@"
diff --git a/scripts/ceruleanhousetrashed.asm b/scripts/ceruleanhousetrashed.asm
deleted file mode 100755
index da848b7c..00000000
--- a/scripts/ceruleanhousetrashed.asm
+++ /dev/null
@@ -1,39 +0,0 @@
-CeruleanHouseTrashedScript:
- call EnableAutoTextBoxDrawing
- ret
-
-CeruleanHouseTrashedTextPointers:
- dw CeruleanHouseTrashedText1
- dw CeruleanHouseTrashedText2
- dw CeruleanHouseTrashedText3
-
-CeruleanHouseTrashedText1:
- TX_ASM
- ld b, $e4
- predef GetQuantityOfItemInBag
- and b
- jr z, .asm_f8734
- ld hl, CeruleanHouseTrashedText_1d6b0
- call PrintText
- jr .asm_8dfe9
-.asm_f8734
- ld hl, CeruleanHouseTrashedText_1d6ab
- call PrintText
-.asm_8dfe9
- jp TextScriptEnd
-
-CeruleanHouseTrashedText_1d6ab:
- TX_FAR _CeruleanTrashedText_1d6ab
- db "@"
-
-CeruleanHouseTrashedText_1d6b0:
- TX_FAR _CeruleanTrashedText_1d6b0
- db "@"
-
-CeruleanHouseTrashedText2:
- TX_FAR _CeruleanHouseTrashedText2
- db "@"
-
-CeruleanHouseTrashedText3:
- TX_FAR _CeruleanHouseTrashedText3
- db "@"
diff --git a/scripts/ceruleanmart.asm b/scripts/ceruleanmart.asm
deleted file mode 100755
index 76d83f90..00000000
--- a/scripts/ceruleanmart.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-CeruleanMartScript:
- jp EnableAutoTextBoxDrawing
-
-CeruleanMartTextPointers:
- dw CeruleanCashierText
- dw CeruleanMartText2
- dw CeruleanMartText3
-
-CeruleanMartText2:
- TX_FAR _CeruleanMartText2
- db "@"
-
-CeruleanMartText3:
- TX_FAR _CeruleanMartText3
- db "@"
diff --git a/scripts/ceruleanpokecenter.asm b/scripts/ceruleanpokecenter.asm
deleted file mode 100755
index 876d2bbd..00000000
--- a/scripts/ceruleanpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-CeruleanPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-CeruleanPokecenterTextPointers:
- dw CeruleanHealNurseText
- dw CeruleanPokecenterText2
- dw CeruleanPokecenterText3
- dw CeruleanTradeNurseText
- dw CeruleanPokecenterText5
-
-CeruleanTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-CeruleanHealNurseText:
- TX_POKECENTER_NURSE
-
-CeruleanPokecenterText2:
- TX_FAR _CeruleanPokecenterText2
- db "@"
-
-CeruleanPokecenterText3:
- TX_FAR _CeruleanPokecenterText3
- db "@"
-
-CeruleanPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm
deleted file mode 100755
index e2de3f6d..00000000
--- a/scripts/cinnabargym.asm
+++ /dev/null
@@ -1,566 +0,0 @@
-CinnabarGymScript:
- call CinnabarGymScript_75759
- call EnableAutoTextBoxDrawing
- ld hl, CinnabarGymScriptPointers
- ld a, [wCinnabarGymCurScript]
- jp JumpTable
-
-CinnabarGymScript_75759:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- push hl
- call nz, CinnabarGymScript_75772
- pop hl
- bit 5, [hl]
- res 5, [hl]
- call nz, UpdateCinnabarGymGateTileBlocks
- ResetEvent EVENT_2A7
- ret
-CinnabarGymScript_75772:
- ld hl, Gym7CityName
- ld de, Gym7LeaderName
- jp LoadGymLeaderAndCityName
-
-Gym7CityName:
- db "CINNABAR ISLAND@"
-Gym7LeaderName:
- db "BLAINE@"
-
-CinnabarGymScript_75792:
- xor a
- ld [wJoyIgnore], a
- ld [wCinnabarGymCurScript], a
- ld [wCurMapScript], a
- ld [wOpponentAfterWrongAnswer], a
- ret
-
-CinnabarGymScript_74f48:
- ld a, [hSpriteIndexOrTextID]
- ld [wTrainerHeaderFlagBit], a
- ret
-
-CinnabarGymFlagAction:
- predef_jump FlagActionPredef
-
-CinnabarGymScriptPointers:
- dw CinnabarGymScript0
- dw CinnabarGymScript1
- dw CinnabarGymScript2
- dw CinnabarGymScript3
-
-CinnabarGymScript0:
- ld a, [wOpponentAfterWrongAnswer]
- and a
- ret z
- ld [H_SPRITEINDEX], a
- cp $4
- jr nz, .asm_757c3
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- ld hl, PikachuMovementData_74f97
- ld b, SPRITE_FACING_DOWN
- call CinnabarGymScript_74fa3
- ld de, MovementData_757d7
- jr .asm_757cb
-.asm_757c3
- ld a, PLAYER_DIR_RIGHT
- ld [wPlayerMovingDirection], a
- ld hl, PikachuMovementData_74f9e
- ld b, SPRITE_FACING_RIGHT
- call CinnabarGymScript_74fa3
- ld de, MovementData_757da
-.asm_757cb
- call MoveSprite
- ld a, $1
- ld [wCinnabarGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-MovementData_757d7:
- db NPC_MOVEMENT_LEFT
- db NPC_MOVEMENT_UP
- db $FF
-
-PikachuMovementData_74f97:
- db $00
- db $20
- db $1e
- db $35
- db $3f
-
-MovementData_757da:
- db NPC_MOVEMENT_LEFT
- db $FF
-
-PikachuMovementData_74f9e:
- db $00
- db $1d
- db $1f
- db $38
- db $3f
-
-CinnabarGymScript_74fa3:
- ld a, [wd472]
- bit 7, a
- ret z
- push hl
- push bc
- callab GetPikachuFacingDirectionAndReturnToE
- pop bc
- pop hl
- ld a, b
- cp e
- ret nz
- call ApplyPikachuMovementData
- ret
-
-CinnabarGymScript1:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, [wOpponentAfterWrongAnswer]
- ld [wTrainerHeaderFlagBit], a
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-CinnabarGymScript2:
- call CinnabarGymScript_753e9
- ld a, [wIsInBattle]
- cp $ff
- jp z, CinnabarGymScript_75792
- ld a, [wTrainerHeaderFlagBit]
- sub 2
- ld c, a
- ld b, FLAG_TEST
- EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED
- call CinnabarGymFlagAction
- ld a, c
- and a
- jr nz, .asm_7500d
- ld a, [wTrainerHeaderFlagBit]
- cp 2
- jr z, .asm_7500d
- ld c, 30
- call DelayFrames
- call CinnabarGymScript_75023
- call CinnabarGymScript_75041
- call WaitForSoundToFinish
- ld a, SFX_GO_INSIDE
- call PlaySound
- call WaitForSoundToFinish
- jr .asm_75013
-.asm_7500d
- call CinnabarGymScript_75023
- call CinnabarGymScript_75041
-.asm_75013
- xor a
- ld [wJoyIgnore], a
- ld [wOpponentAfterWrongAnswer], a
- ld a, $0
- ld [wCinnabarGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-CinnabarGymScript_75023:
- ld a, [wTrainerHeaderFlagBit]
- ld [$ffdb], a
- ld c, a
- ld b, FLAG_SET
- EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0
- call CinnabarGymFlagAction
- ret
-
-CinnabarGymScript_75032:
- ld a, [wTrainerHeaderFlagBit]
- ld [$ffdb], a
- ld c, a
- ld b, FLAG_TEST
- EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0
- call CinnabarGymFlagAction
- ret
-
-CinnabarGymScript_75041:
- ld a, [wTrainerHeaderFlagBit]
- sub 2
- ld c, a
- ld b, FLAG_SET
- EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED
- call CinnabarGymFlagAction
- call UpdateCinnabarGymGateTileBlocks
- ret
-
-CinnabarGymScript3:
- call CinnabarGymScript_753e9
- ld a, [wIsInBattle]
- cp $ff
- jp z, CinnabarGymScript_75792
- ld a, $f0
- ld [wJoyIgnore], a
-CinnabarGymScript3_75857:
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_BLAINE
- lb bc, TM_38, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM38
- jr .gymVictory
-.BagFull
- ld a, $c
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 6, [hl]
- ld hl, wBeatGymFlags
- set 6, [hl]
-
- ; deactivate gym trainers
- SetEventRange EVENT_BEAT_CINNABAR_GYM_TRAINER_0, EVENT_BEAT_CINNABAR_GYM_TRAINER_6
-
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
-
- jp CinnabarGymScript_75792
-
-CinnabarGymTextPointers:
- dw CinnabarGymText1
- dw CinnabarGymText2
- dw CinnabarGymText3
- dw CinnabarGymText4
- dw CinnabarGymText5
- dw CinnabarGymText6
- dw CinnabarGymText7
- dw CinnabarGymText8
- dw CinnabarGymText9
- dw BlaineBadgeText
- dw ReceivedTM38Text
- dw TM38NoRoomText
-
-CinnabarGymScript_750c3:
- ld a, [hSpriteIndexOrTextID]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld a, [wSpriteIndex]
- cp $1
- jr z, .asm_758d4
- ld a, $2
- jr .asm_758d6
-.asm_758d4
- ld a, $3
-.asm_758d6
- ld [wCinnabarGymCurScript], a
- ld [wCurMapScript], a
- jp TextScriptEnd
-
-CinnabarGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_BLAINE
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM38
- jr nz, .afterVictory
- call z, CinnabarGymScript3_75857
- call DisableWaitingAfterTextDisplay
- jp TextScriptEnd
-.afterVictory
- ld hl, BlaineFireBlastText
- call PrintText
- jp TextScriptEnd
-.beginBattle
- ld hl, BlaineBattleText
- call PrintText
- ld hl, BlaineEndBattleText
- ld de, BlaineEndBattleText
- call SaveEndBattleTextPointers
- ld a, $7
- ld [wGymLeaderNo], a
- jp CinnabarGymScript_750c3
-
-BlaineBattleText:
- TX_FAR _BlaineBattleText
- db "@"
-
-BlaineEndBattleText:
- TX_FAR _BlaineEndBattleText
- db $11
- db $d
- db "@"
-
-BlaineFireBlastText:
- TX_FAR _BlaineFireBlastText
- db "@"
-
-BlaineBadgeText:
- TX_FAR _BlaineBadgeText
- db "@"
-
-ReceivedTM38Text:
- TX_FAR _ReceivedTM38Text
- db $0B
- TX_FAR _TM38ExplanationText
- db "@"
-
-TM38NoRoomText:
- TX_FAR _TM38NoRoomText
- db "@"
-
-CinnabarGymText2:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_0
- jr nz, .asm_46bb4
- ld hl, CinnabarGymText_7595f
- call PrintText
- ld hl, CinnabarGymText_75964
- ld de, CinnabarGymText_75964
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-.asm_46bb4
- ld hl, CinnabarGymText_75969
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_7595f:
- TX_FAR _CinnabarGymText_7595f
- db "@"
-
-CinnabarGymText_75964:
- TX_FAR _CinnabarGymText_75964
- db "@"
-
-CinnabarGymText_75969:
- TX_FAR _CinnabarGymText_75969
- db "@"
-
-CinnabarGymText3:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_1
- jr nz, .asm_751a8
- call CinnabarGymScript_753f3
- jr nz, .asm_75196
- CheckEvent EVENT_CINNABAR_GYM_GATE1_UNLOCKED
- jr nz, .asm_75196
- ld e, $00
- jp CinnabarGymScript_753de
-
-.asm_75196
- ld hl, CinnabarGymText_75994
- call PrintText
- ld hl, CinnabarGymText_75999
- ld de, CinnabarGymText_75999
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-
-.asm_751a8
- ld hl, CinnabarGymText_7599e
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_75994:
- TX_FAR _CinnabarGymText_75994
- db "@"
-
-CinnabarGymText_75999:
- TX_FAR _CinnabarGymText_75999
- db "@"
-
-CinnabarGymText_7599e:
- TX_FAR _CinnabarGymText_7599e
- db "@"
-
-CinnabarGymText4:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_2
- jr nz, .asm_751ee
- call CinnabarGymScript_753f3
- jr nz, .asm_751dc
- CheckEvent EVENT_CINNABAR_GYM_GATE2_UNLOCKED
- jr nz, .asm_751dc
- ld e, $1
- jp CinnabarGymScript_753de
-
-.asm_751dc
- ld hl, CinnabarGymText_759c9
- call PrintText
- ld hl, CinnabarGymText_759ce
- ld de, CinnabarGymText_759ce
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-.asm_751ee
- ld hl, CinnabarGymText_759d3
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_759c9:
- TX_FAR _CinnabarGymText_759c9
- db "@"
-
-CinnabarGymText_759ce:
- TX_FAR _CinnabarGymText_759ce
- db "@"
-
-CinnabarGymText_759d3:
- TX_FAR _CinnabarGymText_759d3
- db "@"
-
-CinnabarGymText5:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_3
- jr nz, .asm_75234
- call CinnabarGymScript_753f3
- jr nz, .asm_75222
- CheckEvent EVENT_CINNABAR_GYM_GATE3_UNLOCKED
- jr nz, .asm_75222
- ld e, $2
- jp CinnabarGymScript_753de
-
-.asm_75222
- ld hl, CinnabarGymText_759fe
- call PrintText
- ld hl, CinnabarGymText_75a03
- ld de, CinnabarGymText_75a03
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-.asm_75234
- ld hl, CinnabarGymText_75a08
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_759fe:
- TX_FAR _CinnabarGymText_759fe
- db "@"
-
-CinnabarGymText_75a03:
- TX_FAR _CinnabarGymText_75a03
- db "@"
-
-CinnabarGymText_75a08:
- TX_FAR _CinnabarGymText_75a08
- db "@"
-
-CinnabarGymText6:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_4
- jr nz, .asm_776b4
- call CinnabarGymScript_753f3
- jr nz, .asm_75222
- CheckEvent EVENT_CINNABAR_GYM_GATE4_UNLOCKED
- jr nz, .asm_75222
- ld e, $3
- jp CinnabarGymScript_753de
-
-.asm_75222
- ld hl, CinnabarGymText_75a33
- call PrintText
- ld hl, CinnabarGymText_75a38
- ld de, CinnabarGymText_75a38
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-.asm_776b4
- ld hl, CinnabarGymText_75a3d
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_75a33:
- TX_FAR _CinnabarGymText_75a33
- db "@"
-
-CinnabarGymText_75a38:
- TX_FAR _CinnabarGymText_75a38
- db "@"
-
-CinnabarGymText_75a3d:
- TX_FAR _CinnabarGymText_75a3d
- db "@"
-
-CinnabarGymText7:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_5
- jr nz, .asm_2f755
- call CinnabarGymScript_753f3
- jr nz, .asm_75222
- CheckEvent EVENT_CINNABAR_GYM_GATE5_UNLOCKED
- jr nz, .asm_75222
- ld e, $4
- jp CinnabarGymScript_753de
-
-.asm_75222
- ld hl, CinnabarGymText_75a68
- call PrintText
- ld hl, CinnabarGymText_75a6d
- ld de, CinnabarGymText_75a6d
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-.asm_2f755
- ld hl, CinnabarGymText_75a72
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_75a68:
- TX_FAR _CinnabarGymText_75a68
- db "@"
-
-CinnabarGymText_75a6d:
- TX_FAR _CinnabarGymText_75a6d
- db "@"
-
-CinnabarGymText_75a72:
- TX_FAR _CinnabarGymText_75a72
- db "@"
-
-CinnabarGymText8:
- TX_ASM
- call CinnabarGymScript_74f48
- CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_6
- jr nz, .asm_d87be
- call CinnabarGymScript_753f3
- jr nz, .asm_75222
- CheckEvent EVENT_CINNABAR_GYM_GATE6_UNLOCKED
- jr nz, .asm_75222
- ld e, $5
- jp CinnabarGymScript_753de
-
-.asm_75222
- ld hl, CinnabarGymText_75a9d
- call PrintText
- ld hl, CinnabarGymText_75aa2
- ld de, CinnabarGymText_75aa2
- call SaveEndBattleTextPointers
- jp CinnabarGymScript_750c3
-.asm_d87be
- ld hl, CinnabarGymText_75aa7
- call PrintText
- jp TextScriptEnd
-
-CinnabarGymText_75a9d:
- TX_FAR _CinnabarGymText_75a9d
- db "@"
-
-CinnabarGymText_75aa2:
- TX_FAR _CinnabarGymText_75aa2
- db "@"
-
-CinnabarGymText_75aa7:
- TX_FAR _CinnabarGymText_75aa7
- db "@"
-
-CinnabarGymText9:
- TX_ASM
- callab Func_f2133
- jp TextScriptEnd
diff --git a/scripts/cinnabarisland.asm b/scripts/cinnabarisland.asm
deleted file mode 100755
index c608f53d..00000000
--- a/scripts/cinnabarisland.asm
+++ /dev/null
@@ -1,85 +0,0 @@
-CinnabarIslandScript:
- call EnableAutoTextBoxDrawing
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- ResetEvent EVENT_MANSION_SWITCH_ON
- ResetEvent EVENT_LAB_STILL_REVIVING_FOSSIL
- ld hl, CinnabarIslandScriptPointers
- ld a, [wCinnabarIslandCurScript]
- jp JumpTable
-
-CinnabarIslandScriptPointers:
- dw CinnabarIslandScript0
- dw CinnabarIslandScript1
-
-CinnabarIslandScript0:
- ld b, SECRET_KEY
- call IsItemInBag
- ret nz
- ld a, [wYCoord]
- cp $4
- ret nz
- ld a, [wXCoord]
- cp $12
- ret nz
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [hJoyHeld], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- xor a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld [wJoyIgnore], a
- ld a, $1
- ld [wCinnabarIslandCurScript], a
- ret
-
-CinnabarIslandScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- ld a, $0
- ld [wCinnabarIslandCurScript], a
- ret
-
-CinnabarIslandTextPointers:
- dw CinnabarIslandText1
- dw CinnabarIslandText2
- dw CinnabarIslandText3
- dw MartSignText
- dw PokeCenterSignText
- dw CinnabarIslandText6
- dw CinnabarIslandText7
- dw CinnabarIslandText8
-
-CinnabarIslandText8:
- TX_FAR _CinnabarIslandText8
- db "@"
-
-CinnabarIslandText1:
- TX_FAR _CinnabarIslandText1
- db "@"
-
-CinnabarIslandText2:
- TX_FAR _CinnabarIslandText2
- db "@"
-
-CinnabarIslandText3:
- TX_FAR _CinnabarIslandText3
- db "@"
-
-CinnabarIslandText6:
- TX_FAR _CinnabarIslandText6
- db "@"
-
-CinnabarIslandText7:
- TX_FAR _CinnabarIslandText7
- db "@"
diff --git a/scripts/cinnabarmart.asm b/scripts/cinnabarmart.asm
deleted file mode 100755
index 55b82cf0..00000000
--- a/scripts/cinnabarmart.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-CinnabarMartScript:
- jp EnableAutoTextBoxDrawing
-
-CinnabarMartTextPointers:
- dw CinnabarCashierText
- dw CinnabarMartText2
- dw CinnabarMartText3
-
-CinnabarMartText2:
- TX_FAR _CinnabarMartText2
- db "@"
-
-CinnabarMartText3:
- TX_FAR _CinnabarMartText3
- db "@"
diff --git a/scripts/cinnabarpokecenter.asm b/scripts/cinnabarpokecenter.asm
deleted file mode 100755
index a43e5385..00000000
--- a/scripts/cinnabarpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-CinnabarPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-CinnabarPokecenterTextPointers:
- dw CinnabarHealNurseText
- dw CinnabarPokecenterText2
- dw CinnabarPokecenterText3
- dw CinnabarTradeNurseText
- dw CinnabarPokecenterText5
-
-CinnabarHealNurseText:
- TX_POKECENTER_NURSE
-
-CinnabarPokecenterText2:
- TX_FAR _CinnabarPokecenterText2
- db "@"
-
-CinnabarPokecenterText3:
- TX_FAR _CinnabarPokecenterText3
- db "@"
-
-CinnabarTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-CinnabarPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/colosseum.asm b/scripts/colosseum.asm
deleted file mode 100644
index bdfa3c44..00000000
--- a/scripts/colosseum.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-ColosseumScript:
- jp TradeCenterScript
-
-ColosseumTextPointers:
- dw ColosseumText1
-
-ColosseumText1:
- TX_FAR _ColosseumText1
- db "@"
diff --git a/scripts/copycatshouse1f.asm b/scripts/copycatshouse1f.asm
deleted file mode 100755
index 25cd0fc2..00000000
--- a/scripts/copycatshouse1f.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-CopycatsHouse1FScript:
- jp EnableAutoTextBoxDrawing
-
-CopycatsHouse1FTextPointers:
- dw CopycatsHouse1FText1
- dw CopycatsHouse1FText2
- dw CopycatsHouse1FText3
-
-CopycatsHouse1FText1:
- TX_FAR _CopycatsHouse1FText1
- db "@"
-
-CopycatsHouse1FText2:
- TX_FAR _CopycatsHouse1FText2
- db "@"
-
-CopycatsHouse1FText3:
- TX_FAR _CopycatsHouse1FText3
- TX_ASM
- ld a, CHANSEY
- call PlayCry
- jp TextScriptEnd
diff --git a/scripts/copycatshouse2f.asm b/scripts/copycatshouse2f.asm
deleted file mode 100755
index ee8f2cc7..00000000
--- a/scripts/copycatshouse2f.asm
+++ /dev/null
@@ -1,100 +0,0 @@
-CopycatsHouse2FScript:
- jp EnableAutoTextBoxDrawing
-
-CopycatsHouse2FTextPointers:
- dw CopycatsHouse2FText1
- dw CopycatsHouse2FText2
- dw CopycatsHouse2FText3
- dw CopycatsHouse2FText4
- dw CopycatsHouse2FText5
- dw CopycatsHouse2FText6
- dw CopycatsHouse2FText7
-
-CopycatsHouse2FText1:
- TX_ASM
- CheckEvent EVENT_GOT_TM31
- jr nz, .asm_7ccf3
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, CopycatsHouse2FText_5ccd4
- call PrintText
- ld b, POKE_DOLL
- call IsItemInBag
- jr z, .asm_62ecd
- ld hl, TM31PreReceiveText
- call PrintText
- lb bc, TM_31, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM31Text
- call PrintText
- ld a, POKE_DOLL
- ld [$ffdb], a
- callba RemoveItemByID
- SetEvent EVENT_GOT_TM31
- jr .asm_62ecd
-.BagFull
- ld hl, TM31NoRoomText
- call PrintText
- jr .asm_62ecd
-.asm_7ccf3
- ld hl, TM31ExplanationText2
- call PrintText
-.asm_62ecd
- jp TextScriptEnd
-
-CopycatsHouse2FText_5ccd4:
- TX_FAR _CopycatsHouse2FText_5ccd4
- db "@"
-
-TM31PreReceiveText:
- TX_FAR _TM31PreReceiveText
- db "@"
-
-ReceivedTM31Text:
- TX_FAR _ReceivedTM31Text
- db $0B
-TM31ExplanationText1:
- TX_FAR _TM31ExplanationText1
- db $d, "@"
-
-TM31ExplanationText2:
- TX_FAR _TM31ExplanationText2
- db "@"
-
-TM31NoRoomText:
- TX_FAR _TM31NoRoomText
- db $d, "@"
-
-CopycatsHouse2FText2:
- TX_FAR _CopycatsHouse2FText2
- db "@"
-
-CopycatsHouse2FText5:
-CopycatsHouse2FText4:
-CopycatsHouse2FText3:
- TX_FAR _CopycatsHouse2FText3
- db "@"
-
-CopycatsHouse2FText6:
- TX_FAR _CopycatsHouse2FText6
- db "@"
-
-CopycatsHouse2FText7:
- TX_ASM
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- ld hl, CopycatsHouse2FText_5cd1c
- jr nz, .notUp
- ld hl, CopycatsHouse2FText_5cd17
-.notUp
- call PrintText
- jp TextScriptEnd
-
-CopycatsHouse2FText_5cd17:
- TX_FAR _CopycatsHouse2FText_5cd17
- db "@"
-
-CopycatsHouse2FText_5cd1c:
- TX_FAR _CopycatsHouse2FText_5cd1c
- db "@"
diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm
deleted file mode 100755
index 187f8579..00000000
--- a/scripts/daycarem.asm
+++ /dev/null
@@ -1,298 +0,0 @@
-DayCareMScript:
- jp EnableAutoTextBoxDrawing
-
-DayCareMTextPointers:
- dw DayCareMText1
-
-DayCareMText1:
- TX_ASM
- call SaveScreenTilesToBuffer2
- ld a, [wDayCareInUse]
- and a
- jp nz, .daycareInUse
- ld hl, DayCareIntroText
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- ld hl, DayCareComeAgainText
- jp nz, .done
- ld a, [wPartyCount]
- dec a
- ld hl, DayCareOnlyHaveOneMonText
- jp z, .done
- ld hl, DayCareWhichMonText
- call PrintText
- xor a
- ld [wUpdateSpritesEnabled], a
- ld [wPartyMenuTypeOrMessageID], a
- ld [wMenuItemToSwap], a
- call DisplayPartyMenu
- push af
- call GBPalWhiteOutWithDelay3
- call RestoreScreenTilesAndReloadTilePatterns
- call LoadGBPal
- pop af
- ld hl, DayCareAllRightThenText
- jp c, .done
- callab KnowsHMMove
- ld hl, DayCareCantAcceptMonWithHMText
- jp c, .done
- xor a
- ld [wPartyAndBillsPCSavedMenuItem], a
- ld a, [wWhichPokemon]
- ld hl, wPartyMonNicks
- call GetPartyMonName
- ld hl, DayCareWillLookAfterMonText
- call PrintText
- ld a, 1
- ld [wDayCareInUse], a
- ld a, PARTY_TO_DAYCARE
- ld [wMoveMonType], a
- call MoveMon
- callab IsThisPartymonStarterPikachu
- push af
- xor a
- ld [wRemoveMonFromBox], a
- call RemovePokemon
- pop af
- jr c, .depositedPikachuIntoDayCare
- ld a, [wcf91]
- call PlayCry
- jr .asm_562e3
-
-.depositedPikachuIntoDayCare
- ldpikacry e, PikachuCry28
- callab PlayPikachuSoundClip
-.asm_562e3
- ld hl, DayCareComeSeeMeInAWhileText
- jp .done
-
-.daycareInUse
- xor a
- ld hl, wDayCareMonName
- call GetPartyMonName
- ld a, DAYCARE_DATA
- ld [wMonDataLocation], a
- call LoadMonData
- callab CalcLevelFromExperience
- ld a, d
- cp MAX_LEVEL
- jr c, .skipCalcExp
-
- ld d, MAX_LEVEL
- callab CalcExperience
- ld hl, wDayCareMonExp
- ld a, [hExperience]
- ld [hli], a
- ld a, [hExperience + 1]
- ld [hli], a
- ld a, [hExperience + 2]
- ld [hl], a
- ld d, MAX_LEVEL
-
-.skipCalcExp
- xor a
- ld [wDayCareNumLevelsGrown], a
- ld hl, wDayCareMonBoxLevel
- ld a, [hl]
- ld [wDayCareStartLevel], a
- cp d
- ld [hl], d
- ld hl, DayCareMonNeedsMoreTimeText
- jr z, .next
- ld a, [wDayCareStartLevel]
- ld b, a
- ld a, d
- sub b
- ld [wDayCareNumLevelsGrown], a
- ld hl, DayCareMonHasGrownText
-
-.next
- call PrintText
- ld a, [wPartyCount]
- cp PARTY_LENGTH
- ld hl, DayCareNoRoomForMonText
- jp z, .leaveMonInDayCare
- ld de, wDayCareTotalCost
- xor a
- ld [de], a
- inc de
- ld [de], a
- ld hl, wDayCarePerLevelCost
- ld a, $1
- ld [hli], a
- ld [hl], $0
- ld a, [wDayCareNumLevelsGrown]
- inc a
- ld b, a
- ld c, 2
-.calcPriceLoop
- push hl
- push de
- push bc
- predef AddBCDPredef
- pop bc
- pop de
- pop hl
- dec b
- jr nz, .calcPriceLoop
- ld hl, DayCareOweMoneyText
- call PrintText
- ld a, MONEY_BOX
- ld [wTextBoxID], a
- call DisplayTextBoxID
- call YesNoChoice
- ld hl, DayCareAllRightThenText
- ld a, [wCurrentMenuItem]
- and a
- jp nz, .leaveMonInDayCare
- ld hl, wDayCareTotalCost
- ld [hMoney], a
- ld a, [hli]
- ld [hMoney + 1], a
- ld a, [hl]
- ld [hMoney + 2], a
- call HasEnoughMoney
- jr nc, .enoughMoney
- ld hl, DayCareNotEnoughMoneyText
- jp .leaveMonInDayCare
-
-.enoughMoney
- xor a
- ld [wDayCareInUse], a
- ld hl, wDayCareNumLevelsGrown
- ld [hli], a
- inc hl
- ld de, wPlayerMoney + 2
- ld c, $3
- predef SubBCDPredef
- ld a, SFX_PURCHASE
- call PlaySoundWaitForCurrent
- ld a, MONEY_BOX
- ld [wTextBoxID], a
- call DisplayTextBoxID
- ld hl, DayCareHeresYourMonText
- call PrintText
- ld a, DAYCARE_TO_PARTY
- ld [wMoveMonType], a
- call MoveMon
- ld a, [wDayCareMonSpecies]
- ld [wcf91], a
- ld a, [wPartyCount]
- dec a
- push af
- ld bc, wPartyMon2 - wPartyMon1
- push bc
- ld hl, wPartyMon1Moves
- call AddNTimes
- ld d, h
- ld e, l
- ld a, 1
- ld [wLearningMovesFromDayCare], a
- predef WriteMonMoves
- pop bc
- pop af
-
-; set mon's HP to max
- ld hl, wPartyMon1HP
- call AddNTimes
- ld d, h
- ld e, l
- ld bc, wPartyMon1MaxHP - wPartyMon1HP
- add hl, bc
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [hl]
- ld [de], a
-
- ld a, [wPartyCount]
- dec a
- ld [wWhichPokemon], a
- callab IsThisPartymonStarterPikachu
- jr c, .withdrewPikachuFromDayCare
- ld a, [wcf91]
- call PlayCry
- jr .asm_56430
-
-.withdrewPikachuFromDayCare
- ld a, $6
- ld [wPikachuSpawnState], a
-
- ; GameFreak... TriHard
- ld hl, SchedulePikachuSpawnForAfterText
- ld b, BANK(SchedulePikachuSpawnForAfterText)
- ld hl, Bankswitch
-
- ldpikacry e, PikachuCry35
- callab PlayPikachuSoundClip
-.asm_56430
- ld hl, DayCareGotMonBackText
- jr .done
-
-.leaveMonInDayCare
- ld a, [wDayCareStartLevel]
- ld [wDayCareMonBoxLevel], a
-
-.done
- call PrintText
- jp TextScriptEnd
-
-DayCareIntroText:
- TX_FAR _DayCareIntroText
- db "@"
-
-DayCareWhichMonText:
- TX_FAR _DayCareWhichMonText
- db "@"
-
-DayCareWillLookAfterMonText:
- TX_FAR _DayCareWillLookAfterMonText
- db "@"
-
-DayCareComeSeeMeInAWhileText:
- TX_FAR _DayCareComeSeeMeInAWhileText
- db "@"
-
-DayCareMonHasGrownText:
- TX_FAR _DayCareMonHasGrownText
- db "@"
-
-DayCareOweMoneyText:
- TX_FAR _DayCareOweMoneyText
- db "@"
-
-DayCareGotMonBackText:
- TX_FAR _DayCareGotMonBackText
- db "@"
-
-DayCareMonNeedsMoreTimeText:
- TX_FAR _DayCareMonNeedsMoreTimeText
- db "@"
-
-DayCareAllRightThenText:
- TX_FAR _DayCareAllRightThenText
-DayCareComeAgainText:
- TX_FAR _DayCareComeAgainText
- db "@"
-
-DayCareNoRoomForMonText:
- TX_FAR _DayCareNoRoomForMonText
- db "@"
-
-DayCareOnlyHaveOneMonText:
- TX_FAR _DayCareOnlyHaveOneMonText
- db "@"
-
-DayCareCantAcceptMonWithHMText:
- TX_FAR _DayCareCantAcceptMonWithHMText
- db "@"
-
-DayCareHeresYourMonText:
- TX_FAR _DayCareHeresYourMonText
- db "@"
-
-DayCareNotEnoughMoneyText:
- TX_FAR _DayCareNotEnoughMoneyText
- db "@"
diff --git a/scripts/diglettscave.asm b/scripts/diglettscave.asm
deleted file mode 100755
index 593b12a6..00000000
--- a/scripts/diglettscave.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-DiglettsCaveScript:
- jp EnableAutoTextBoxDrawing
-
-DiglettsCaveTextPointers:
- db "@"
diff --git a/scripts/diglettscaveroute11.asm b/scripts/diglettscaveroute11.asm
deleted file mode 100755
index d97a8446..00000000
--- a/scripts/diglettscaveroute11.asm
+++ /dev/null
@@ -1,12 +0,0 @@
-DiglettsCaveEntranceRoute11Script:
- call EnableAutoTextBoxDrawing
- ld a, ROUTE_11
- ld [wLastMap], a
- ret
-
-DiglettsCaveEntranceRoute11TextPointers:
- dw DiglettsCaveEntranceRoute11Text1
-
-DiglettsCaveEntranceRoute11Text1:
- TX_FAR _DiglettsCaveEntRoute11Text1
- db "@"
diff --git a/scripts/diglettscaveroute2.asm b/scripts/diglettscaveroute2.asm
deleted file mode 100755
index 9f061daa..00000000
--- a/scripts/diglettscaveroute2.asm
+++ /dev/null
@@ -1,11 +0,0 @@
-DiglettsCaveRoute2Script:
- ld a, ROUTE_2
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-DiglettsCaveRoute2TextPointers:
- dw DiglettsCaveRoute2Text1
-
-DiglettsCaveRoute2Text1:
- TX_FAR _DiglettsCaveRoute2Text1
- db "@"
diff --git a/scripts/fanclub.asm b/scripts/fanclub.asm
deleted file mode 100755
index 7bb1bc86..00000000
--- a/scripts/fanclub.asm
+++ /dev/null
@@ -1,307 +0,0 @@
-FanClubScript:
- call EnableAutoTextBoxDrawing
- ld hl, FanClubScriptPointers
- ld a, [wFanClubCurScript]
- call JumpTable
- ret
-
-FanClubScriptPointers:
- dw FanClubScript1
- dw FanClubScript2
-
-FanClubScript1:
- ld hl, wd492
- bit 7, [hl]
- call z, FanClubScript_59a44
- ld hl, wd492
- set 7, [hl]
- ret
-
-FanClubScript2:
- ld hl, wd492
- bit 7, [hl]
- call z, FanClubScript_59a39
- ld hl, wd492
- set 7, [hl]
- ret
-
-FanClubScript_59a39:
- call Random
- ld a, [hRandomAdd]
- cp 25
- call c, FanClubScript_59a44
- ret
-
-FanClubScript_59a44:
- ld a, [wd472]
- bit 7, a
- ret z
- callab CheckPikachuFaintedOrStatused
- ret c
- ld a, $1
- ld [wFanClubCurScript], a
- xor a
- ld [wPlayerMovingDirection], a
- call UpdateSprites
- call UpdateSprites
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- ld a, $f ; Pikachu
- ld [wEmotionBubbleSpriteIndex], a
- predef EmotionBubble
- ld hl, PikachuMovementScript_59a8c
- call ApplyPikachuMovementData
- ld a, $2
- ld [wSpriteStateData1 + 3 * $10 + 1], a ; Seel
- xor a ; SPRITE_FACING_DOWN
- ld [wSpriteStateData1 + 3 * $10 + 9], a
- callab InitializePikachuTextID
- call DisablePikachuFollowingPlayer
- ret
-
-PikachuMovementScript_59a8c:
- db $00
- db $26
- db $20
- db $20
- db $20
- db $1e
- db $3f
-
-FanClubTextPointers:
- dw FanClubText1
- dw FanClubText2
- dw FanClubText3
- dw FanClubText4
- dw FanClubText5
- dw FanClubText6
-
-FanClubText1:
-; clefairy fan
- TX_ASM
- CheckEventHL EVENT_152
- jr z, .asm_59aaf
- ld hl, .yellowtext
- call PrintText
- jr .done
-
-.asm_59aaf
- CheckEventReuseHL EVENT_PIKACHU_FAN_BOAST
- jr nz, .mineisbetter
- SetEventReuseHL EVENT_SEEL_FAN_BOAST
- ld hl, .normaltext
- call PrintText
- jr .done
-
-.mineisbetter
- ResetEventReuseHL EVENT_PIKACHU_FAN_BOAST
- ld hl, .bettertext
- call PrintText
-.done
- jp TextScriptEnd
-
-.normaltext
- TX_FAR PikachuFanText
- db "@"
-
-.bettertext
- TX_FAR PikachuFanBetterText
- db "@"
-
-.yellowtext
- TX_FAR PikachuFanPrintText
- db "@"
-
-FanClubText2:
-; seel fan
- TX_ASM
- CheckEventHL EVENT_152
- jr z, .asm_59ae7
- ld hl, .yellowtext
- call PrintText
- jr .done
-.asm_59ae7
- CheckEventReuseHL EVENT_SEEL_FAN_BOAST
- jr nz, .mineisbetter
- SetEventReuseHL EVENT_PIKACHU_FAN_BOAST
- ld hl, .normaltext
- call PrintText
- jr .done
-.mineisbetter
- ResetEventReuseHL EVENT_SEEL_FAN_BOAST
- ld hl, .bettertext
- call PrintText
-.done
- jp TextScriptEnd
-
-.normaltext
- TX_FAR SeelFanText
- db "@"
-
-.bettertext
- TX_FAR SeelFanBetterText
- db "@"
-
-.yellowtext
- TX_FAR SeelFanPrintText
- db "@"
-
-FanClubText3:
-; pikachu
- TX_ASM
- ld hl, .text
- call PrintText
- ld a, CLEFAIRY
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-.text
- TX_FAR FanClubPikachuText
- db "@"
-
-FanClubText4:
-; seel
- TX_ASM
- ld hl, .text
- call PrintText
- ld a, SEEL
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-.text
- TX_FAR FanClubSeelText
- db "@"
-
-FanClubText5:
-; chair
- TX_ASM
- CheckEventHL EVENT_152
- jr z, .check_bike_voucher
- ld hl, Text_59c1f
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr z, .select_mon_to_print
- ld hl, Text_59c24
- jr .gbpals_print_text
-
-.check_bike_voucher
- CheckEvent EVENT_GOT_BIKE_VOUCHER
- jr nz, .got_bike_voucher_already
- ld hl, Text_59bfc
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .declined_story
- ld hl, Text_59c01
- call PrintText
- lb bc, BIKE_VOUCHER, 1
- call GiveItem
- jr nc, .no_room_for_voucher
- ld hl, Text_59c06
- call PrintText
- SetEvent EVENT_GOT_BIKE_VOUCHER
- jp TextScriptEnd
-
-.no_room_for_voucher
- ld hl, Text_59c1a
- jr .gbpals_print_text
-
-.declined_story
- ld hl, Text_59c10
- jr .gbpals_print_text
-
-.got_bike_voucher_already
- ld hl, Text_59c15
-.gbpals_print_text
- push hl
- call LoadGBPal
- pop hl
- call PrintText
- jp TextScriptEnd
-
-.select_mon_to_print
- call GBPalWhiteOutWithDelay3
- call LoadCurrentMapView
- call SaveScreenTilesToBuffer2
- ld a, $ff
- ld [wUpdateSpritesEnabled], a
- ld a, $00
- ld [wTempTilesetNumTiles], a
- call DisplayPartyMenu
- jp nc, .print
- call GBPalWhiteOutWithDelay3
- call RestoreScreenTilesAndReloadTilePatterns
- ld hl, Text_59c24
- jr .gbpals_print_text
-
-.print
- xor a
- ld [wUpdateSpritesEnabled], a
- ld hl, wd730
- set 6, [hl]
- callab PrintFanClubPortrait
- ld hl, wd730
- res 6, [hl]
- call GBPalWhiteOutWithDelay3
- call ReloadTilesetTilePatterns
- call RestoreScreenTilesAndReloadTilePatterns
- call LoadScreenTilesFromBuffer2
- call Delay3
- call GBPalNormal
- ld hl, Text_59c2e
- ld a, [hOaksAideResult]
- and a
- jr nz, .gbpals_print_text
- ld hl, Text_59c29
- jr .gbpals_print_text
-
-Text_59bfc:
- TX_FAR FanClubMeetChairText
- db "@"
-
-Text_59c01:
- TX_FAR FanClubChairStoryText
- db "@"
-
-Text_59c06:
- TX_FAR ReceivedBikeVoucherText
- TX_SFX_KEY_ITEM
- TX_FAR ExplainBikeVoucherText
- db "@"
-
-Text_59c10:
- TX_FAR FanClubNoStoryText
- db "@"
-
-Text_59c15:
- TX_FAR FanClubChairFinalText
- db "@"
-
-Text_59c1a:
- TX_FAR FanClubBagFullText
- db "@"
-
-Text_59c1f:
- TX_FAR FanClubChairPrintText1
- db "@"
-
-Text_59c24:
- TX_FAR FanClubChairPrintText2
- db "@"
-
-Text_59c29:
- TX_FAR FanClubChairPrintText3
- db "@"
-
-Text_59c2e:
- TX_FAR FanClubChairPrintText4
- db "@"
-
-FanClubText6:
- TX_FAR _FanClubText6
- db "@"
diff --git a/scripts/fightingdojo.asm b/scripts/fightingdojo.asm
deleted file mode 100755
index 9d28046f..00000000
--- a/scripts/fightingdojo.asm
+++ /dev/null
@@ -1,324 +0,0 @@
-FightingDojoScript:
- call EnableAutoTextBoxDrawing
- ld hl, FightingDojoTrainerHeaders
- ld de, FightingDojoScriptPointers
- ld a, [wFightingDojoCurScript]
- call ExecuteCurMapScriptInTable
- ld [wFightingDojoCurScript], a
- ret
-
-FightingDojoScript_5cd70:
- xor a
- ld [wJoyIgnore], a
- ld [wFightingDojoCurScript], a
- ld [wCurMapScript], a
- ret
-
-FightingDojoScriptPointers:
- dw FightingDojoScript1
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw FightingDojoScript3
-
-FightingDojoScript1:
- CheckEvent EVENT_DEFEATED_FIGHTING_DOJO
- ret nz
- call CheckFightingMapTrainers
- ld a, [wTrainerHeaderFlagBit]
- and a
- ret nz
- CheckEvent EVENT_BEAT_KARATE_MASTER
- ret nz
- xor a
- ld [hJoyHeld], a
- ld [wcf0d], a
- ld a, [wYCoord]
- cp $3
- ret nz
- ld a, [wXCoord]
- cp $4
- ret nz
- ld a, $1
- ld [wcf0d], a
- ld a, PLAYER_DIR_RIGHT
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_LEFT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ret
-
-FightingDojoScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, FightingDojoScript_5cd70
- ld a, [wcf0d]
- and a
- jr z, .asm_5cde4
- ld a, PLAYER_DIR_RIGHT
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_LEFT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
-
-.asm_5cde4
- ld a, $f0
- ld [wJoyIgnore], a
- SetEventRange EVENT_BEAT_KARATE_MASTER, EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
- ld [wFightingDojoCurScript], a
- ld [wCurMapScript], a
- ret
-
-FightingDojoTextPointers:
- dw FightingDojoText1
- dw FightingDojoText2
- dw FightingDojoText3
- dw FightingDojoText4
- dw FightingDojoText5
- dw FightingDojoText6
- dw FightingDojoText7
- dw FightingDojoText8
-
-FightingDojoTrainerHeaders:
-FightingDojoTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_0
- dw FightingDojoBattleText1 ; TextBeforeBattle
- dw FightingDojoAfterBattleText1 ; TextAfterBattle
- dw FightingDojoEndBattleText1 ; TextEndBattle
- dw FightingDojoEndBattleText1 ; TextEndBattle
-
-FightingDojoTrainerHeader1:
- dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_1
- dw FightingDojoBattleText2 ; TextBeforeBattle
- dw FightingDojoAfterBattleText2 ; TextAfterBattle
- dw FightingDojoEndBattleText2 ; TextEndBattle
- dw FightingDojoEndBattleText2 ; TextEndBattle
-
-FightingDojoTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_2
- dw FightingDojoBattleText3 ; TextBeforeBattle
- dw FightingDojoAfterBattleText3 ; TextAfterBattle
- dw FightingDojoEndBattleText3 ; TextEndBattle
- dw FightingDojoEndBattleText3 ; TextEndBattle
-
-FightingDojoTrainerHeader3:
- dbEventFlagBit EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FIGHTING_DOJO_TRAINER_3
- dw FightingDojoBattleText4 ; TextBeforeBattle
- dw FightingDojoAfterBattleText4 ; TextAfterBattle
- dw FightingDojoEndBattleText4 ; TextEndBattle
- dw FightingDojoEndBattleText4 ; TextEndBattle
-
- db $ff
-
-FightingDojoText1:
- TX_ASM
- CheckEvent EVENT_DEFEATED_FIGHTING_DOJO
- jp nz, .continue1
- CheckEventReuseA EVENT_BEAT_KARATE_MASTER
- jp nz, .continue2
- ld hl, FightingDojoText_5ce8e
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, FightingDojoText_5ce93
- ld de, FightingDojoText_5ce93
- call SaveEndBattleTextPointers
- ld a, [hSpriteIndexOrTextID]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- ld [wFightingDojoCurScript], a
- ld [wCurMapScript], a
- jr .asm_9dba4
-.continue1
- ld hl, FightingDojoText_5ce9d
- call PrintText
- jr .asm_9dba4
-.continue2
- ld hl, FightingDojoText8
- call PrintText
-.asm_9dba4
- jp TextScriptEnd
-
-FightingDojoText_5ce8e:
- TX_FAR _FightingDojoText_5ce8e
- db "@"
-
-FightingDojoText_5ce93:
- TX_FAR _FightingDojoText_5ce93
- db "@"
-
-FightingDojoText8:
- TX_FAR _FightingDojoText_5ce98
- db "@"
-
-FightingDojoText_5ce9d:
- TX_FAR _FightingDojoText_5ce9d
- db "@"
-
-FightingDojoText2:
- TX_ASM
- ld hl, FightingDojoTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText1:
- TX_FAR _FightingDojoBattleText1
- db "@"
-
-FightingDojoEndBattleText1:
- TX_FAR _FightingDojoEndBattleText1
- db "@"
-
-FightingDojoAfterBattleText1:
- TX_FAR _FightingDojoAfterBattleText1
- db "@"
-
-FightingDojoText3:
- TX_ASM
- ld hl, FightingDojoTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText2:
- TX_FAR _FightingDojoBattleText2
- db "@"
-
-FightingDojoEndBattleText2:
- TX_FAR _FightingDojoEndBattleText2
- db "@"
-
-FightingDojoAfterBattleText2:
- TX_FAR _FightingDojoAfterBattleText2
- db "@"
-
-FightingDojoText4:
- TX_ASM
- ld hl, FightingDojoTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText3:
- TX_FAR _FightingDojoBattleText3
- db "@"
-
-FightingDojoEndBattleText3:
- TX_FAR _FightingDojoEndBattleText3
- db "@"
-
-FightingDojoAfterBattleText3:
- TX_FAR _FightingDojoAfterBattleText3
- db "@"
-
-FightingDojoText5:
- TX_ASM
- ld hl, FightingDojoTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-FightingDojoBattleText4:
- TX_FAR _FightingDojoBattleText4
- db "@"
-
-FightingDojoEndBattleText4:
- TX_FAR _FightingDojoEndBattleText4
- db "@"
-
-FightingDojoAfterBattleText4:
- TX_FAR _FightingDojoAfterBattleText4
- db "@"
-
-FightingDojoText6:
-; Hitmonlee Poké Ball
- TX_ASM
- CheckEitherEventSet EVENT_GOT_HITMONLEE, EVENT_GOT_HITMONCHAN
- jr z, .GetMon
- ld hl, OtherHitmonText
- call PrintText
- jr .done
-.GetMon
- ld a, HITMONLEE
- call DisplayPokedex
- ld hl, WantHitmonleeText
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .done
- ld a, [wcf91]
- ld b, a
- ld c, 30
- call GivePokemon
- jr nc, .done
-
- ; once Poké Ball is taken, hide sprite
- ld a, HS_FIGHTING_DOJO_GIFT_1
- ld [wMissableObjectIndex], a
- predef HideObject
- SetEvents EVENT_GOT_HITMONLEE, EVENT_DEFEATED_FIGHTING_DOJO
-.done
- jp TextScriptEnd
-
-WantHitmonleeText:
- TX_FAR _WantHitmonleeText
- db "@"
-
-FightingDojoText7:
-; Hitmonchan Poké Ball
- TX_ASM
- CheckEitherEventSet EVENT_GOT_HITMONLEE, EVENT_GOT_HITMONCHAN
- jr z, .GetMon
- ld hl, OtherHitmonText
- call PrintText
- jr .done
-.GetMon
- ld a, HITMONCHAN
- call DisplayPokedex
- ld hl, WantHitmonchanText
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .done
- ld a, [wcf91]
- ld b, a
- ld c,30
- call GivePokemon
- jr nc, .done
- SetEvents EVENT_GOT_HITMONCHAN, EVENT_DEFEATED_FIGHTING_DOJO
-
- ; once Poké Ball is taken, hide sprite
- ld a, HS_FIGHTING_DOJO_GIFT_2
- ld [wMissableObjectIndex], a
- predef HideObject
-.done
- jp TextScriptEnd
-
-WantHitmonchanText:
- TX_FAR _WantHitmonchanText
- db "@"
-
-OtherHitmonText:
- TX_FAR _OtherHitmonText
- db "@"
diff --git a/scripts/fuchsiacity.asm b/scripts/fuchsiacity.asm
deleted file mode 100755
index 74d7ee30..00000000
--- a/scripts/fuchsiacity.asm
+++ /dev/null
@@ -1,169 +0,0 @@
-FuchsiaCityScript:
- jp EnableAutoTextBoxDrawing
-
-FuchsiaCityTextPointers:
- dw FuchsiaCityText1
- dw FuchsiaCityText2
- dw FuchsiaCityText3
- dw FuchsiaCityText4
- dw FuchsiaCityText5
- dw FuchsiaCityText6
- dw FuchsiaCityText7
- dw FuchsiaCityText8
- dw FuchsiaCityText9
- dw FuchsiaCityText10
- dw FuchsiaCityText11
- dw FuchsiaCityText12
- dw FuchsiaCityText13
- dw MartSignText
- dw PokeCenterSignText
- dw FuchsiaCityText16
- dw FuchsiaCityText17
- dw FuchsiaCityText18
- dw FuchsiaCityText19
- dw FuchsiaCityText20
- dw FuchsiaCityText21
- dw FuchsiaCityText22
- dw FuchsiaCityText23
- dw FuchsiaCityText24
-
-FuchsiaCityText1:
- TX_FAR _FuchsiaCityText1
- db "@"
-
-FuchsiaCityText2:
- TX_FAR _FuchsiaCityText2
- db "@"
-
-FuchsiaCityText3:
- TX_FAR _FuchsiaCityText3
- db "@"
-
-FuchsiaCityText4:
- TX_FAR _FuchsiaCityText4
- db "@"
-
-FuchsiaCityText5:
-FuchsiaCityText6:
-FuchsiaCityText7:
-FuchsiaCityText8:
-FuchsiaCityText9:
-FuchsiaCityText10:
- TX_FAR _FuchsiaCityText5
- db "@"
-
-FuchsiaCityText12:
-FuchsiaCityText11:
- TX_FAR _FuchsiaCityText11
- db "@"
-
-FuchsiaCityText13:
- TX_FAR _FuchsiaCityText13
- db "@"
-
-FuchsiaCityText16:
- TX_FAR _FuchsiaCityText16
- db "@"
-
-FuchsiaCityText17:
- TX_FAR _FuchsiaCityText17
- db "@"
-
-FuchsiaCityText18:
- TX_FAR _FuchsiaCityText18
- db "@"
-
-FuchsiaCityText19:
- TX_ASM
- ld hl, FuchsiaCityChanseyText
- call PrintText
- ld a, CHANSEY
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityChanseyText:
- TX_FAR _FuchsiaCityChanseyText
- db "@"
-
-FuchsiaCityText20:
- TX_ASM
- ld hl, FuchsiaCityVoltorbText
- call PrintText
- ld a, VOLTORB
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityVoltorbText:
- TX_FAR _FuchsiaCityVoltorbText
- db "@"
-
-FuchsiaCityText21:
- TX_ASM
- ld hl, FuchsiaCityKangaskhanText
- call PrintText
- ld a, KANGASKHAN
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityKangaskhanText:
- TX_FAR _FuchsiaCityKangaskhanText
- db "@"
-
-FuchsiaCityText22:
- TX_ASM
- ld hl, FuchsiaCitySlowpokeText
- call PrintText
- ld a, SLOWPOKE
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCitySlowpokeText:
- TX_FAR _FuchsiaCitySlowpokeText
- db "@"
-
-FuchsiaCityText23:
- TX_ASM
- ld hl, FuchsiaCityLaprasText
- call PrintText
- ld a, LAPRAS
- call DisplayPokedex
- jp TextScriptEnd
-
-FuchsiaCityLaprasText:
- TX_FAR _FuchsiaCityLaprasText
- db "@"
-
-FuchsiaCityText24:
- TX_ASM
- CheckEvent EVENT_GOT_DOME_FOSSIL
- jr nz, .asm_3b4e8
- CheckEventReuseA EVENT_GOT_HELIX_FOSSIL
- jr nz, .asm_667d5
- ld hl, FuchsiaCityText_19b2a
- call PrintText
- jr .asm_4343f
-.asm_3b4e8
- ld hl, FuchsiaCityOmanyteText
- call PrintText
- ld a, OMANYTE
- jr .asm_81556
-.asm_667d5
- ld hl, FuchsiaCityKabutoText
- call PrintText
- ld a, KABUTO
-.asm_81556
- call DisplayPokedex
-.asm_4343f
- jp TextScriptEnd
-
-FuchsiaCityOmanyteText:
- TX_FAR _FuchsiaCityOmanyteText
- db "@"
-
-FuchsiaCityKabutoText:
- TX_FAR _FuchsiaCityKabutoText
- db "@"
-
-FuchsiaCityText_19b2a:
- TX_FAR _FuchsiaCityText_19b2a
- db "@"
diff --git a/scripts/fuchsiagym.asm b/scripts/fuchsiagym.asm
deleted file mode 100755
index 364fca37..00000000
--- a/scripts/fuchsiagym.asm
+++ /dev/null
@@ -1,330 +0,0 @@
-FuchsiaGymScript:
- call FuchsiaGymScript_75453
- call EnableAutoTextBoxDrawing
- ld hl, FuchsiaGymTrainerHeaders
- ld de, FuchsiaGymScriptPointers
- ld a, [wFuchsiaGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wFuchsiaGymCurScript], a
- ret
-
-FuchsiaGymScript_75453:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- ret z
- ld hl, Gym5CityName
- ld de, Gym5LeaderName
- call LoadGymLeaderAndCityName
- ret
-
-Gym5CityName:
- db "FUCHSIA CITY@"
-Gym5LeaderName:
- db "KOGA@"
-
-FuchsiaGymScript_75477:
- xor a
- ld [wJoyIgnore], a
- ld [wFuchsiaGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-FuchsiaGymScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw FuchsiaGymScript3
-
-FuchsiaGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, FuchsiaGymScript_75477
- ld a, $f0
- ld [wJoyIgnore], a
-FuchsiaGymScript3_75497:
- ld a, $9
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_KOGA
- lb bc, TM_06, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM06
- jr .gymVictory
-.BagFull
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 4, [hl]
- ld hl, wBeatGymFlags
- set 4, [hl]
-
- ; deactivate gym trainers
- SetEventRange EVENT_BEAT_FUCHSIA_GYM_TRAINER_0, EVENT_BEAT_FUCHSIA_GYM_TRAINER_6
-
- jp FuchsiaGymScript_75477
-
-FuchsiaGymTextPointers:
- dw FuchsiaGymText1
- dw FuchsiaGymText2
- dw FuchsiaGymText3
- dw FuchsiaGymText4
- dw FuchsiaGymText5
- dw FuchsiaGymText6
- dw FuchsiaGymText7
- dw FuchsiaGymText8
- dw FuchsiaGymText9
- dw FuchsiaGymText10
- dw FuchsiaGymText11
-
-FuchsiaGymTrainerHeaders:
-FuchsiaGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_0
- dw FuchsiaGymBattleText1 ; TextBeforeBattle
- dw FuchsiaGymAfterBattleText1 ; TextAfterBattle
- dw FuchsiaGymEndBattleText1 ; TextEndBattle
- dw FuchsiaGymEndBattleText1 ; TextEndBattle
-
-FuchsiaGymTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_2
- dw FuchsiaGymBattleText2 ; TextBeforeBattle
- dw FuchsiaGymAfterBattleText2 ; TextAfterBattle
- dw FuchsiaGymEndBattleText2 ; TextEndBattle
- dw FuchsiaGymEndBattleText2 ; TextEndBattle
-
-FuchsiaGymTrainerHeader3:
- dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_3
- dw FuchsiaGymBattleText3 ; TextBeforeBattle
- dw FuchsiaGymAfterBattleText3 ; TextAfterBattle
- dw FuchsiaGymEndBattleText3 ; TextEndBattle
- dw FuchsiaGymEndBattleText3 ; TextEndBattle
-
-FuchsiaGymTrainerHeader4:
- dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_4
- dw FuchsiaGymBattleText4 ; TextBeforeBattle
- dw FuchsiaGymAfterBattleText4 ; TextAfterBattle
- dw FuchsiaGymEndBattleText4 ; TextEndBattle
- dw FuchsiaGymEndBattleText4 ; TextEndBattle
-
-FuchsiaGymTrainerHeader5:
- dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_5
- dw FuchsiaGymBattleText5 ; TextBeforeBattle
- dw FuchsiaGymAfterBattleText5 ; TextAfterBattle
- dw FuchsiaGymEndBattleText5 ; TextEndBattle
- dw FuchsiaGymEndBattleText5 ; TextEndBattle
-
-FuchsiaGymTrainerHeader6:
- dbEventFlagBit EVENT_BEAT_FUCHSIA_GYM_TRAINER_6
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_FUCHSIA_GYM_TRAINER_6
- dw FuchsiaGymBattleText6 ; TextBeforeBattle
- dw FuchsiaGymAfterBattleText6 ; TextAfterBattle
- dw FuchsiaGymEndBattleText6 ; TextEndBattle
- dw FuchsiaGymEndBattleText6 ; TextEndBattle
-
- db $ff
-
-FuchsiaGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_KOGA
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM06
- jr nz, .afterVictory
- call z, FuchsiaGymScript3_75497
- call DisableWaitingAfterTextDisplay
- jr .done
-.afterVictory
- ld hl, KogaExplainToxicText
- call PrintText
- jr .done
-.beginBattle
- ld hl, KogaBeforeBattleText
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, KogaAfterBattleText
- ld de, KogaAfterBattleText
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $5
- ld [wGymLeaderNo], a
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wFuchsiaGymCurScript], a
-.done
- jp TextScriptEnd
-
-KogaBeforeBattleText:
- TX_FAR _KogaBeforeBattleText
- db "@"
-
-KogaAfterBattleText:
- TX_FAR _KogaAfterBattleText
- db "@"
-
-KogaExplainToxicText:
- TX_FAR _KogaExplainToxicText
- db "@"
-
-FuchsiaGymText9:
- TX_FAR _FuchsiaGymText9
- db "@"
-
-FuchsiaGymText10:
- TX_FAR _ReceivedTM06Text
- db $11
-
-TM06ExplanationText:
- TX_FAR _TM06ExplanationText
- db "@"
-
-FuchsiaGymText11:
- TX_FAR _TM06NoRoomText
- db "@"
-
-FuchsiaGymText2:
- TX_ASM
- ld hl, FuchsiaGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText1:
- TX_FAR _FuchsiaGymBattleText1
- db "@"
-
-FuchsiaGymEndBattleText1:
- TX_FAR _FuchsiaGymEndBattleText1
- db "@"
-
-FuchsiaGymAfterBattleText1:
- TX_FAR _FuchsiaGymAfterBattleText1
- db "@"
-
-FuchsiaGymText3:
- TX_ASM
- ld hl, FuchsiaGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText2:
- TX_FAR _FuchsiaGymBattleText2
- db "@"
-
-FuchsiaGymEndBattleText2:
- TX_FAR _FuchsiaGymEndBattleText2
- db "@"
-
-FuchsiaGymAfterBattleText2:
- TX_FAR _FuchsiaGymAfterBattleText2
- db "@"
-
-FuchsiaGymText4:
- TX_ASM
- ld hl, FuchsiaGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText3:
- TX_FAR _FuchsiaGymBattleText3
- db "@"
-
-FuchsiaGymEndBattleText3:
- TX_FAR _FuchsiaGymEndBattleText3
- db "@"
-
-FuchsiaGymAfterBattleText3:
- TX_FAR _FuchsiaGymAfterBattleText3
- db "@"
-
-FuchsiaGymText5:
- TX_ASM
- ld hl, FuchsiaGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText4:
- TX_FAR _FuchsiaGymBattleText4
- db "@"
-
-FuchsiaGymEndBattleText4:
- TX_FAR _FuchsiaGymEndBattleText4
- db "@"
-
-FuchsiaGymAfterBattleText4:
- TX_FAR _FuchsiaGymAfterBattleText4
- db "@"
-
-FuchsiaGymText6:
- TX_ASM
- ld hl, FuchsiaGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText5:
- TX_FAR _FuchsiaGymBattleText5
- db "@"
-
-FuchsiaGymEndBattleText5:
- TX_FAR _FuchsiaGymEndBattleText5
- db "@"
-
-FuchsiaGymAfterBattleText5:
- TX_FAR _FuchsiaGymAfterBattleText5
- db "@"
-
-FuchsiaGymText7:
- TX_ASM
- ld hl, FuchsiaGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-FuchsiaGymBattleText6:
- TX_FAR _FuchsiaGymBattleText6
- db "@"
-
-FuchsiaGymEndBattleText6:
- TX_FAR _FuchsiaGymEndBattleText6
- db "@"
-
-FuchsiaGymAfterBattleText6:
- TX_FAR _FuchsiaGymAfterBattleText6
- db "@"
-
-FuchsiaGymText8:
- TX_ASM
- CheckEvent EVENT_BEAT_KOGA
- ld hl, FuchsiaGymText_75653
- jr nz, .asm_50671
- ld hl, FuchsiaGymText_7564e
-.asm_50671
- call PrintText
- jp TextScriptEnd
-
-FuchsiaGymText_7564e:
- TX_FAR _FuchsiaGymText_7564e
- db "@"
-
-FuchsiaGymText_75653:
- TX_FAR _FuchsiaGymText_75653
- db "@"
diff --git a/scripts/fuchsiahouse1.asm b/scripts/fuchsiahouse1.asm
deleted file mode 100755
index 95e59503..00000000
--- a/scripts/fuchsiahouse1.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-FuchsiaHouse1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-FuchsiaHouse1TextPointers:
- dw FuchsiaHouse1Text1
- dw FuchsiaHouse1Text2
- dw FuchsiaHouse1Text3
-
-FuchsiaHouse1Text1:
- TX_FAR _FuchsiaHouse1Text1
- db "@"
-
-FuchsiaHouse1Text2:
- TX_FAR _FuchsiaHouse1Text2
- db "@"
-
-FuchsiaHouse1Text3:
- TX_FAR _FuchsiaHouse1Text3
- db "@"
diff --git a/scripts/fuchsiahouse2.asm b/scripts/fuchsiahouse2.asm
deleted file mode 100755
index 7e90aa84..00000000
--- a/scripts/fuchsiahouse2.asm
+++ /dev/null
@@ -1,112 +0,0 @@
-FuchsiaHouse2Script:
- jp EnableAutoTextBoxDrawing
-
-FuchsiaHouse2TextPointers:
- dw FuchsiaHouse2Text1
- dw PickUpItemText
- dw BoulderText
- dw FuchsiaHouse2Text4
- dw FuchsiaHouse2Text5
-
-FuchsiaHouse2Text1:
- TX_ASM
- CheckEvent EVENT_GOT_HM04
- jr nz, .subtract
- ld b,GOLD_TEETH
- call IsItemInBag
- jr nz, .asm_3f30f
- CheckEvent EVENT_GAVE_GOLD_TEETH
- jr nz, .asm_60cba
- ld hl, WardenGibberishText1
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- ld hl, WardenGibberishText3
- jr nz, .asm_61238
- ld hl, WardenGibberishText2
-.asm_61238
- call PrintText
- jr .asm_52039
-.asm_3f30f
- ld hl, WardenTeethText1
- call PrintText
- ld a, GOLD_TEETH
- ld [$ffdb], a
- callba RemoveItemByID
- SetEvent EVENT_GAVE_GOLD_TEETH
-.asm_60cba
- ld hl, WardenThankYouText
- call PrintText
- lb bc, HM_04, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedHM04Text
- call PrintText
- SetEvent EVENT_GOT_HM04
- jr .asm_52039
-.subtract
- ld hl, HM04ExplanationText
- call PrintText
- jr .asm_52039
-.BagFull
- ld hl, HM04NoRoomText
- call PrintText
-.asm_52039
- jp TextScriptEnd
-
-WardenGibberishText1:
- TX_FAR _WardenGibberishText1
- db "@"
-
-WardenGibberishText2:
- TX_FAR _WardenGibberishText2
- db "@"
-
-WardenGibberishText3:
- TX_FAR _WardenGibberishText3
- db "@"
-
-WardenTeethText1:
- TX_FAR _WardenTeethText1
- db $0b
-
-WardenTeethText2:
- TX_FAR _WardenTeethText2
- db "@"
-
-WardenThankYouText:
- TX_FAR _WardenThankYouText
- db "@"
-
-ReceivedHM04Text:
- TX_FAR _ReceivedHM04Text
- db $0B, "@"
-
-HM04ExplanationText:
- TX_FAR _HM04ExplanationText
- db "@"
-
-HM04NoRoomText:
- TX_FAR _HM04NoRoomText
- db "@"
-
-FuchsiaHouse2Text5:
-FuchsiaHouse2Text4:
- TX_ASM
- ld a, [H_SPRITEINDEX]
- cp $4
- ld hl, FuchsiaHouse2Text_7517b
- jr nz, .asm_4c9a2
- ld hl, FuchsiaHouse2Text_75176
-.asm_4c9a2
- call PrintText
- jp TextScriptEnd
-
-FuchsiaHouse2Text_75176:
- TX_FAR _FuchsiaHouse2Text_75176
- db "@"
-
-FuchsiaHouse2Text_7517b:
- TX_FAR _FuchsiaHouse2Text_7517b
- db "@"
diff --git a/scripts/fuchsiahouse3.asm b/scripts/fuchsiahouse3.asm
deleted file mode 100755
index fe1da024..00000000
--- a/scripts/fuchsiahouse3.asm
+++ /dev/null
@@ -1,75 +0,0 @@
-FuchsiaHouse3Script:
- jp EnableAutoTextBoxDrawing
-
-FuchsiaHouse3TextPointers:
- dw FuchsiaHouse3Text1
-
-FuchsiaHouse3Text1:
- TX_ASM
- ld a, [wd728]
- bit 4, a
- jr nz, .after
-
- ld hl, FuchsiaHouse3Text_561bd
- call PrintText
-
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .refused
-
- lb bc, GOOD_ROD, 1
- call GiveItem
- jr nc, .full
-
- ld hl, wd728
- set 4, [hl]
-
- ld hl, FuchsiaHouse3Text_561c2
- jr .talk
-
-.full
- ld hl, FuchsiaHouse3Text_5621c
- jr .talk
-
-.refused
- ld hl, FuchsiaHouse3Text_56212
- jr .talk
-
-.after
- ld hl, FuchsiaHouse3Text_56217
-
-.talk
- call PrintText
- jp TextScriptEnd
-
-FuchsiaHouse3Text_561bd:
- TX_FAR _FuchsiaHouse3Text_561bd
- db "@"
-
-FuchsiaHouse3Text_561c2:
- TX_FAR _FuchsiaHouse3Text_561c2
- db $0B
- db "@"
-
-UnusedText_561c8:
- para "つり こそ"
- line "おとこの ロマン だ!"
-
- para "へぼいつりざおは"
- line "コイキングしか つれ なんだが"
- line "この いいつりざおなら"
- line "もっと いいもんが つれるんじゃ!"
- done
-
-FuchsiaHouse3Text_56212:
- TX_FAR _FuchsiaHouse3Text_56212
- db "@"
-
-FuchsiaHouse3Text_56217:
- TX_FAR _FuchsiaHouse3Text_56217
- db "@"
-
-FuchsiaHouse3Text_5621c:
- TX_FAR _FuchsiaHouse3Text_5621c
- db "@"
diff --git a/scripts/fuchsiamart.asm b/scripts/fuchsiamart.asm
deleted file mode 100755
index 32dbe773..00000000
--- a/scripts/fuchsiamart.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-FuchsiaMartScript:
- call EnableAutoTextBoxDrawing
- ret
-
-FuchsiaMartTextPointers:
- dw FuchsiaCashierText
- dw FuchsiaMartText2
- dw FuchsiaMartText3
-
-FuchsiaMartText2:
- TX_FAR _FuchsiaMartText2
- db "@"
-
-FuchsiaMartText3:
- TX_FAR _FuchsiaMartText3
- db "@"
diff --git a/scripts/fuchsiameetingroom.asm b/scripts/fuchsiameetingroom.asm
deleted file mode 100755
index 7995a49b..00000000
--- a/scripts/fuchsiameetingroom.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-FuchsiaMeetingRoomScript:
- call EnableAutoTextBoxDrawing
- ret
-
-FuchsiaMeetingRoomTextPointers:
- dw FuchsiaMeetingRoomText1
- dw FuchsiaMeetingRoomText2
- dw FuchsiaMeetingRoomText3
-
-FuchsiaMeetingRoomText1:
- TX_FAR _FuchsiaMeetingRoomText1
- db "@"
-
-FuchsiaMeetingRoomText2:
- TX_FAR _FuchsiaMeetingRoomText2
- db "@"
-
-FuchsiaMeetingRoomText3:
- TX_FAR _FuchsiaMeetingRoomText3
- db "@"
diff --git a/scripts/fuchsiapokecenter.asm b/scripts/fuchsiapokecenter.asm
deleted file mode 100755
index 50f5ba76..00000000
--- a/scripts/fuchsiapokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-FuchsiaPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-FuchsiaPokecenterTextPointers:
- dw FuchsiaHealNurseText
- dw FuchsiaPokecenterText2
- dw FuchsiaPokecenterText3
- dw FuchsiaTradeNurseText
- dw FuchsiaPokecenterText5
-
-FuchsiaHealNurseText:
- TX_POKECENTER_NURSE
-
-FuchsiaPokecenterText2:
- TX_FAR _FuchsiaPokecenterText1
- db "@"
-
-FuchsiaPokecenterText3:
- TX_FAR _FuchsiaPokecenterText3
- db "@"
-
-FuchsiaTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-FuchsiaPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/gary.asm b/scripts/gary.asm
deleted file mode 100755
index ef1a7328..00000000
--- a/scripts/gary.asm
+++ /dev/null
@@ -1,288 +0,0 @@
-GaryScript:
- call EnableAutoTextBoxDrawing
- ld hl, GaryScriptPointers
- ld a, [wGaryCurScript]
- call JumpTable
- ret
-
-ResetGaryScript:
- xor a
- ld [wJoyIgnore], a
- ld [wGaryCurScript], a
- ret
-
-GaryScriptPointers:
- dw GaryScript0
- dw GaryScript1
- dw GaryScript2
- dw GaryScript3
- dw GaryScript4
- dw GaryScript5
- dw GaryScript6
- dw GaryScript7
- dw GaryScript8
- dw GaryScript9
- dw GaryScript10
-
-GaryScript0:
- ret
-
-GaryScript1:
- ld a, $ff
- ld [wJoyIgnore], a
- ld hl, wSimulatedJoypadStatesEnd
- ld de, GaryEntrance_RLEMovement
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $2
- ld [wGaryCurScript], a
- ret
-
-GaryEntrance_RLEMovement:
- db D_UP, 1
- db D_RIGHT, 1
- db D_UP, 3
- db $ff
-
-GaryScript2:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld hl, wOptions
- res 7, [hl] ; Turn on battle animations to make the battle feel more epic.
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, GaryDefeatedText
- ld de, GaryVictoryText
- call SaveEndBattleTextPointers
- ld a, OPP_SONY3
- ld [wCurOpponent], a
-
- ; select which team to use during the encounter
- ld a, [wRivalStarter]
- add $0 ; Wow GameFreak
- ld [wTrainerNo], a
-
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wGaryCurScript], a
- ret
-
-GaryScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, ResetGaryScript
- call UpdateSprites
- SetEvent EVENT_BEAT_CHAMPION_RIVAL
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call GaryScript_760c8
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld a, $4
- ld [wGaryCurScript], a
- ret
-
-GaryScript4:
- callba Music_Cities1AlternateTempo
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call GaryScript_760c8
- ld a, $2
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld de, OakEntranceAfterVictoryMovement
- ld a, $2
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, HS_CHAMPIONS_ROOM_OAK
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, $5
- ld [wGaryCurScript], a
- ret
-
-OakEntranceAfterVictoryMovement:
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db $FF
-
-GaryScript5:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_LEFT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $2
- ld [H_SPRITEINDEX], a
- xor a ; SPRITE_FACING_DOWN
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call GaryScript_760c8
- ld a, $6
- ld [wGaryCurScript], a
- ret
-
-GaryScript6:
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_RIGHT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- call GaryScript_760c8
- ld a, $7
- ld [wGaryCurScript], a
- ret
-
-GaryScript7:
- ld a, $2
- ld [H_SPRITEINDEX], a
- xor a ; SPRITE_FACING_DOWN
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call GaryScript_760c8
- ld de, OakExitGaryRoomMovement
- ld a, $2
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $8
- ld [wGaryCurScript], a
- ret
-
-OakExitGaryRoomMovement:
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db $FF
-
-GaryScript8:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_CHAMPIONS_ROOM_OAK
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, $9
- ld [wGaryCurScript], a
- ret
-
-GaryScript9:
- ld a, $ff
- ld [wJoyIgnore], a
- ld hl, wSimulatedJoypadStatesEnd
- ld de, WalkToHallOfFame_RLEMovment
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $a
- ld [wGaryCurScript], a
- ret
-
-WalkToHallOfFame_RLEMovment:
- db D_UP, 4
- db D_LEFT, 1
- db $ff
-
-GaryScript10:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wGaryCurScript], a
- ret
-
-GaryScript_760c8:
- ld a, $f0
- ld [wJoyIgnore], a
- call DisplayTextID
- ld a, $ff
- ld [wJoyIgnore], a
- ret
-
-GaryTextPointers:
- dw GaryText1
- dw GaryText2
- dw GaryText3
- dw GaryText4
- dw GaryText5
-
-GaryText1:
- TX_ASM
- CheckEvent EVENT_BEAT_CHAMPION_RIVAL
- ld hl, GaryChampionIntroText
- jr z, .printText
- ld hl, GaryText_76103
-.printText
- call PrintText
- jp TextScriptEnd
-
-GaryChampionIntroText:
- TX_FAR _GaryChampionIntroText
- db "@"
-
-GaryDefeatedText:
- TX_FAR _GaryDefeatedText
- db "@"
-
-GaryVictoryText:
- TX_FAR _GaryVictoryText
- db "@"
-
-GaryText_76103:
- TX_FAR _GaryText_76103
- db "@"
-
-GaryText2:
- TX_FAR _GaryText2
- db "@"
-
-GaryText3:
- TX_ASM
- ld a, [wPlayerStarter]
- ld [wd11e], a
- call GetMonName
- ld hl, GaryText_76120
- call PrintText
- jp TextScriptEnd
-
-GaryText_76120:
- TX_FAR _GaryText_76120
- db "@"
-
-GaryText4:
- TX_FAR _GaryText_76125
- db "@"
-
-GaryText5:
- TX_FAR _GaryText_7612a
- db "@"
diff --git a/scripts/halloffameroom.asm b/scripts/halloffameroom.asm
deleted file mode 100755
index 1bba347b..00000000
--- a/scripts/halloffameroom.asm
+++ /dev/null
@@ -1,109 +0,0 @@
-HallofFameRoomScript:
- call EnableAutoTextBoxDrawing
- ld hl, HallofFameRoomScriptPointers
- ld a, [wHallOfFameRoomCurScript]
- jp JumpTable
-
-HallofFameRoomScript_5a4aa:
- xor a
- ld [wJoyIgnore], a
- ld [wHallOfFameRoomCurScript], a
- ret
-
-HallofFameRoomScriptPointers:
- dw HallofFameRoomScript0
- dw HallofFameRoomScript1
- dw HallofFameRoomScript2
- dw HallofFameRoomScript3
-
-HallofFameRoomScript3:
- ret
-
-HallofFameRoomScript2:
- call Delay3
- ld a, [wLetterPrintingDelayFlags]
- push af
- xor a
- ld [wJoyIgnore], a
- predef HallOfFamePC
- pop af
- ld [wLetterPrintingDelayFlags], a
- ld hl, wFlags_D733
- res 1, [hl]
- inc hl
- set 0, [hl]
- xor a
- ld hl, wLoreleiCurScript
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld [wLanceCurScript], a
- ld [wHallOfFameRoomCurScript], a
- ; Elite 4 events
- ResetEventRange ELITE4_EVENTS_START, ELITE4_CHAMPION_EVENTS_END, 1
- xor a
- ld [wHallOfFameRoomCurScript], a
- ld a, PALLET_TOWN
- ld [wLastBlackoutMap], a
- callba SaveSAVtoSRAM
- ld b, 5
-.delayLoop
- ld c, 600 / 5
- call DelayFrames
- dec b
- jr nz, .delayLoop
- call WaitForTextScrollButtonPress
- jp Init
-
-HallofFameRoomScript0:
- ld a, $ff
- ld [wJoyIgnore], a
- ld hl, wSimulatedJoypadStatesEnd
- ld de, RLEMovement5a528
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wHallOfFameRoomCurScript], a
- ret
-
-RLEMovement5a528:
- db D_UP,$5
- db $ff
-
-HallofFameRoomScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld a, PLAYER_DIR_RIGHT
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld a, SPRITE_FACING_LEFT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- call Delay3
- xor a
- ld [wJoyIgnore], a
- inc a ; PLAYER_DIR_RIGHT
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, HS_UNKNOWN_DUNGEON_GUY
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, $2
- ld [wHallOfFameRoomCurScript], a
- ret
-
-HallofFameRoomTextPointers:
- dw HallofFameRoomText1
-
-HallofFameRoomText1:
- TX_FAR _HallofFameRoomText1
- db "@"
diff --git a/scripts/indigoplateau.asm b/scripts/indigoplateau.asm
deleted file mode 100755
index 6a6fdb6c..00000000
--- a/scripts/indigoplateau.asm
+++ /dev/null
@@ -1,4 +0,0 @@
-IndigoPlateauScript:
- ret
-
-IndigoPlateauTextPointers:
diff --git a/scripts/indigoplateaulobby.asm b/scripts/indigoplateaulobby.asm
deleted file mode 100755
index 36ed7fd5..00000000
--- a/scripts/indigoplateaulobby.asm
+++ /dev/null
@@ -1,42 +0,0 @@
-IndigoPlateauLobbyScript:
- call Serial_TryEstablishingExternallyClockedConnection
- call EnableAutoTextBoxDrawing
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- ret z
- ResetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
- ld hl, wBeatLorelei
- bit 1, [hl]
- res 1, [hl]
- ret z
- ; Elite 4 events
- ResetEventRange ELITE4_EVENTS_START, EVENT_LANCES_ROOM_LOCK_DOOR
- ret
-
-IndigoPlateauLobbyTextPointers:
- dw IndigoHealNurseText
- dw IndigoPlateauLobbyText2
- dw IndigoPlateauLobbyText3
- dw IndigoCashierText
- dw IndigoTradeNurseText
- dw IndigoPlateauLobbyText6
-
-IndigoHealNurseText:
- TX_POKECENTER_NURSE
-
-IndigoPlateauLobbyText2:
- TX_FAR _IndigoPlateauLobbyText2
- db "@"
-
-IndigoPlateauLobbyText3:
- TX_FAR _IndigoPlateauLobbyText3
- db "@"
-
-IndigoTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-IndigoPlateauLobbyText6:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/lab1.asm b/scripts/lab1.asm
deleted file mode 100755
index 5b08f4f2..00000000
--- a/scripts/lab1.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-Lab1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-Lab1TextPointers:
- dw Lab1Text1
- dw Lab1Text2
- dw Lab1Text3
- dw Lab1Text4
- dw Lab1Text5
-
-Lab1Text1:
- TX_FAR _Lab1Text1
- db "@"
-
-Lab1Text2:
- TX_FAR _Lab1Text2
- db "@"
-
-Lab1Text3:
- TX_FAR _Lab1Text3
- db "@"
-
-Lab1Text4:
- TX_FAR _Lab1Text4
- db "@"
-
-Lab1Text5:
- TX_FAR _Lab1Text5
- db "@"
diff --git a/scripts/lab2.asm b/scripts/lab2.asm
deleted file mode 100755
index ed9ef1b4..00000000
--- a/scripts/lab2.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-Lab2Script:
- jp EnableAutoTextBoxDrawing
-
-Lab2TextPointers:
- dw Lab2Text1
- dw Lab2Text2
- dw Lab2Text3
-
-Lab2Text1:
- TX_FAR _Lab2Text1
- db "@"
-
-Lab2Text2:
- TX_ASM
- ld a, $7
- ld [wWhichTrade], a
- jr Lab2DoTrade
-
-Lab2Text3:
- TX_ASM
- ld a, $8
- ld [wWhichTrade], a
-Lab2DoTrade:
- predef DoInGameTradeDialogue
- jp TextScriptEnd
diff --git a/scripts/lab3.asm b/scripts/lab3.asm
deleted file mode 100755
index dbd0913d..00000000
--- a/scripts/lab3.asm
+++ /dev/null
@@ -1,61 +0,0 @@
-Lab3Script:
- jp EnableAutoTextBoxDrawing
-
-Lab3TextPointers:
- dw Lab3Text1
- dw Lab3Text2
- dw Lab3Text3
- dw Lab3Text4
- dw Lab3Text5
-
-Lab3Text1:
- TX_ASM
- CheckEvent EVENT_GOT_TM35
- jr nz, .asm_e551a
- ld hl, TM35PreReceiveText
- call PrintText
- lb bc, TM_35, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM35Text
- call PrintText
- SetEvent EVENT_GOT_TM35
- jr .asm_eb896
-.BagFull
- ld hl, TM35NoRoomText
- call PrintText
- jr .asm_eb896
-.asm_e551a
- ld hl, TM35ExplanationText
- call PrintText
-.asm_eb896
- jp TextScriptEnd
-
-TM35PreReceiveText:
- TX_FAR _TM35PreReceiveText
- db "@"
-
-ReceivedTM35Text:
- TX_FAR _ReceivedTM35Text
- db $0B, "@"
-
-TM35ExplanationText:
- TX_FAR _TM35ExplanationText
- db "@"
-
-TM35NoRoomText:
- TX_FAR _TM35NoRoomText
- db "@"
-
-Lab3Text2:
- TX_FAR _Lab3Text2
- db "@"
-
-Lab3Text4:
-Lab3Text3:
- TX_FAR _Lab3Text3
- db "@"
-
-Lab3Text5:
- TX_FAR _Lab3Text5
- db "@"
diff --git a/scripts/lab4.asm b/scripts/lab4.asm
deleted file mode 100755
index 7d0db339..00000000
--- a/scripts/lab4.asm
+++ /dev/null
@@ -1,109 +0,0 @@
-Lab4Script:
- jp EnableAutoTextBoxDrawing
-
-Lab4TextPointers:
- dw Lab4Text1
- dw Lab4Text2
-
-Lab4Script_GetFossilsInBag:
-; construct a list of all fossils in the player's bag
- xor a
- ld [wFilteredBagItemsCount], a
- ld de, wFilteredBagItems
- ld hl, FossilsList
-.loop
- ld a, [hli]
- and a
- jr z, .done
- push hl
- push de
- ld [wd11e], a
- ld b, a
- predef GetQuantityOfItemInBag
- pop de
- pop hl
- ld a, b
- and a
- jr z, .loop
-
- ; A fossil's in the bag
- ld a, [wd11e]
- ld [de], a
- inc de
- push hl
- ld hl, wFilteredBagItemsCount
- inc [hl]
- pop hl
- jr .loop
-.done
- ld a, $ff
- ld [de], a
- ret
-
-FossilsList:
- db DOME_FOSSIL
- db HELIX_FOSSIL
- db OLD_AMBER
- db $00
-
-Lab4Text1:
- TX_ASM
- CheckEvent EVENT_GAVE_FOSSIL_TO_LAB
- jr nz, .asm_75d96
- ld hl, Lab4Text_75dc6
- call PrintText
- call Lab4Script_GetFossilsInBag
- ld a, [wFilteredBagItemsCount]
- and a
- jr z, .asm_75d8d
- callba GiveFossilToCinnabarLab
- jr .asm_75d93
-.asm_75d8d
- ld hl, Lab4Text_75dcb
- call PrintText
-.asm_75d93
- jp TextScriptEnd
-.asm_75d96
- CheckEventAfterBranchReuseA EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_GAVE_FOSSIL_TO_LAB
- jr z, .asm_75da2
- ld hl, Lab4Text_75dd0
- call PrintText
- jr .asm_75d93
-.asm_75da2
- call LoadFossilItemAndMonNameBank1D
- ld hl, Lab4Text_75dd5
- call PrintText
- SetEvent EVENT_LAB_HANDING_OVER_FOSSIL_MON
- ld a, [wFossilMon]
- ld b, a
- ld c, 30
- call GivePokemon
- jr nc, .asm_75d93
- ResetEvents EVENT_GAVE_FOSSIL_TO_LAB, EVENT_LAB_STILL_REVIVING_FOSSIL, EVENT_LAB_HANDING_OVER_FOSSIL_MON
- jr .asm_75d93
-
-Lab4Text_75dc6:
- TX_FAR _Lab4Text_75dc6
- db "@"
-
-Lab4Text_75dcb:
- TX_FAR _Lab4Text_75dcb
- db "@"
-
-Lab4Text_75dd0:
- TX_FAR _Lab4Text_75dd0
- db "@"
-
-Lab4Text_75dd5:
- TX_FAR _Lab4Text_75dd5
- db "@"
-
-Lab4Text2:
- TX_ASM
- ld a, $3
- ld [wWhichTrade], a
- predef DoInGameTradeDialogue
- jp TextScriptEnd
-
-LoadFossilItemAndMonNameBank1D:
- jpba LoadFossilItemAndMonName
diff --git a/scripts/lance.asm b/scripts/lance.asm
deleted file mode 100755
index 7d67f6cd..00000000
--- a/scripts/lance.asm
+++ /dev/null
@@ -1,162 +0,0 @@
-LanceScript:
- call LanceShowOrHideEntranceBlocks
- call EnableAutoTextBoxDrawing
- ld hl, LanceTrainerHeaders
- ld de, LanceScriptPointers
- ld a, [wLanceCurScript]
- call ExecuteCurMapScriptInTable
- ld [wLanceCurScript], a
- ret
-
-LanceShowOrHideEntranceBlocks:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_LANCES_ROOM_LOCK_DOOR
- jr nz, .closeEntrance
- ; open entrance
- ld a, $31
- ld b, $32
- jp .LanceSetEntranceBlocks
-
-.closeEntrance
- ld a, $72
- ld b, $73
-.LanceSetEntranceBlocks
-; Replaces the tile blocks so the player can't leave.
- push bc
- ld [wNewTileBlockID], a
- lb bc, 6, 2
- call .LanceSetEntranceBlock
- pop bc
- ld a, b
- ld [wNewTileBlockID], a
- lb bc, 6, 3
-.LanceSetEntranceBlock
- predef_jump ReplaceTileBlock
-
-ResetLanceScript:
- xor a
- ld [wLanceCurScript], a
- ret
-
-LanceScriptPointers:
- dw LanceScript0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw LanceScript2
- dw LanceScript3
- dw LanceScript4
-
-LanceScript4:
- ret
-
-LanceScript0:
- CheckEvent EVENT_BEAT_LANCE
- ret nz
- ld hl, LanceTriggerMovementCoords
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyHeld], a
- ld a, [wCoordIndex]
- cp $3 ; Is player standing next to Lance's sprite?
- jr nc, .notStandingNextToLance
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-.notStandingNextToLance
- cp $5 ; Is player standing on the entrance staircase?
- jr z, WalkToLance
- CheckAndSetEvent EVENT_LANCES_ROOM_LOCK_DOOR
- ret nz
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- ld a, SFX_GO_INSIDE
- call PlaySound
- jp LanceShowOrHideEntranceBlocks
-
-LanceTriggerMovementCoords:
- db $01,$05
- db $02,$06
- db $0B,$05
- db $0B,$06
- db $10,$18
- db $FF
-
-LanceScript2:
- call EndTrainerBattle
- ld a, [wIsInBattle]
- cp $ff
- jp z, ResetLanceScript
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-WalkToLance:
-; Moves the player down the hallway to Lance's room.
- ld a, $ff
- ld [wJoyIgnore], a
- ld hl, wSimulatedJoypadStatesEnd
- ld de, WalkToLance_RLEList
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wLanceCurScript], a
- ld [wCurMapScript], a
- ret
-
-WalkToLance_RLEList:
- db D_UP, $0D
- db D_LEFT, $0C
- db D_DOWN, $07
- db D_LEFT, $06
- db $FF
-
-LanceScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wLanceCurScript], a
- ld [wCurMapScript], a
- ret
-
-LanceTextPointers:
- dw LanceText1
-
-LanceTrainerHeaders:
-LanceTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_LANCES_ROOM_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_LANCES_ROOM_TRAINER_0
- dw LanceBeforeBattleText ; TextBeforeBattle
- dw LanceAfterBattleText ; TextAfterBattle
- dw LanceEndBattleText ; TextEndBattle
- dw LanceEndBattleText ; TextEndBattle
-
- db $ff
-
-LanceText1:
- TX_ASM
- ld hl, LanceTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-LanceBeforeBattleText:
- TX_FAR _LanceBeforeBattleText
- db "@"
-
-LanceEndBattleText:
- TX_FAR _LanceEndBattleText
- db "@"
-
-LanceAfterBattleText:
- TX_FAR _LanceAfterBattleText
- TX_ASM
- SetEvent EVENT_BEAT_LANCE
- jp TextScriptEnd
diff --git a/scripts/lavenderhouse1.asm b/scripts/lavenderhouse1.asm
deleted file mode 100755
index 65637018..00000000
--- a/scripts/lavenderhouse1.asm
+++ /dev/null
@@ -1,112 +0,0 @@
-LavenderHouse1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-LavenderHouse1TextPointers:
- dw LavenderHouse1Text1
- dw LavenderHouse1Text2
- dw LavenderHouse1Text3
- dw LavenderHouse1Text4
- dw LavenderHouse1Text5
- dw LavenderHouse1Text6
-
-LavenderHouse1Text1:
- TX_ASM
- CheckEvent EVENT_RESCUED_MR_FUJI
- jr nz, .asm_72e5d
- ld hl, LavenderHouse1Text_1d8d1
- call PrintText
- jr .asm_6957f
-.asm_72e5d
- ld hl, LavenderHouse1Text_1d8d6
- call PrintText
-.asm_6957f
- jp TextScriptEnd
-
-LavenderHouse1Text_1d8d1:
- TX_FAR _LavenderHouse1Text_1d8d1
- db "@"
-
-LavenderHouse1Text_1d8d6:
- TX_FAR _LavenderHouse1Text_1d8d6
- db "@"
-
-LavenderHouse1Text2:
- TX_ASM
- CheckEvent EVENT_RESCUED_MR_FUJI
- jr nz, .asm_06470
- ld hl, LavenderHouse1Text_1d8f4
- call PrintText
- jr .asm_3d208
-.asm_06470
- ld hl, LavenderHouse1Text_1d8f9
- call PrintText
-.asm_3d208
- jp TextScriptEnd
-
-LavenderHouse1Text_1d8f4:
- TX_FAR _LavenderHouse1Text_1d8f4
- db "@"
-
-LavenderHouse1Text_1d8f9:
- TX_FAR _LavenderHouse1Text_1d8f9
- db "@"
-
-LavenderHouse1Text3:
- TX_FAR _LavenderHouse1Text3
- TX_ASM
- ld a, PSYDUCK
- call PlayCry
- jp TextScriptEnd
-
-LavenderHouse1Text4:
- TX_FAR _LavenderHouse1Text4
- TX_ASM
- ld a, NIDORINO
- call PlayCry
- jp TextScriptEnd
-
-LavenderHouse1Text5:
- TX_ASM
- CheckEvent EVENT_GOT_POKE_FLUTE
- jr nz, .asm_15ac2
- ld hl, LavenderHouse1Text_1d94c
- call PrintText
- lb bc, POKE_FLUTE, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedFluteText
- call PrintText
- SetEvent EVENT_GOT_POKE_FLUTE
- jr .asm_da749
-.BagFull
- ld hl, FluteNoRoomText
- call PrintText
- jr .asm_da749
-.asm_15ac2
- ld hl, MrFujiAfterFluteText
- call PrintText
-.asm_da749
- jp TextScriptEnd
-
-LavenderHouse1Text_1d94c:
- TX_FAR _LavenderHouse1Text_1d94c
- db "@"
-
-ReceivedFluteText:
- TX_FAR _ReceivedFluteText
- db $11
- TX_FAR _FluteExplanationText
- db "@"
-
-FluteNoRoomText:
- TX_FAR _FluteNoRoomText
- db "@"
-
-MrFujiAfterFluteText:
- TX_FAR _MrFujiAfterFluteText
- db "@"
-
-LavenderHouse1Text6:
- TX_FAR _LavenderHouse1Text6
- db "@"
diff --git a/scripts/lavenderhouse2.asm b/scripts/lavenderhouse2.asm
deleted file mode 100755
index b531c047..00000000
--- a/scripts/lavenderhouse2.asm
+++ /dev/null
@@ -1,35 +0,0 @@
-LavenderHouse2Script:
- call EnableAutoTextBoxDrawing
- ret
-
-LavenderHouse2TextPointers:
- dw LavenderHouse2Text1
- dw LavenderHouse2Text2
-
-LavenderHouse2Text1:
- TX_FAR _LavenderHouse2Text1
- TX_ASM
- ld a, CUBONE
- call PlayCry
- jp TextScriptEnd
-
-LavenderHouse2Text2:
- TX_ASM
- CheckEvent EVENT_RESCUED_MR_FUJI
- jr nz, .asm_65711
- ld hl, LavenderHouse2Text_1d9dc
- call PrintText
- jr .asm_64be1
-.asm_65711
- ld hl, LavenderHouse2Text_1d9e1
- call PrintText
-.asm_64be1
- jp TextScriptEnd
-
-LavenderHouse2Text_1d9dc:
- TX_FAR _LavenderHouse2Text_1d9dc
- db "@"
-
-LavenderHouse2Text_1d9e1:
- TX_FAR _LavenderHouse2Text_1d9e1
- db "@"
diff --git a/scripts/lavendermart.asm b/scripts/lavendermart.asm
deleted file mode 100755
index 51b64992..00000000
--- a/scripts/lavendermart.asm
+++ /dev/null
@@ -1,32 +0,0 @@
-LavenderMartScript:
- jp EnableAutoTextBoxDrawing
-
-LavenderMartTextPointers:
- dw LavenderCashierText
- dw LavenderMartText2
- dw LavenderMartText3
-
-LavenderMartText2:
- TX_FAR _LavenderMartText2
- db "@"
-
-LavenderMartText3:
- TX_ASM
- CheckEvent EVENT_RESCUED_MR_FUJI
- jr nz, .Nugget
- ld hl, .ReviveText
- call PrintText
- jr .done
-.Nugget
- ld hl, .NuggetText
- call PrintText
-.done
- jp TextScriptEnd
-
-.ReviveText
- TX_FAR _LavenderMartReviveText
- db "@"
-
-.NuggetText
- TX_FAR _LavenderMartNuggetText
- db "@"
diff --git a/scripts/lavenderpokecenter.asm b/scripts/lavenderpokecenter.asm
deleted file mode 100755
index 67960c1b..00000000
--- a/scripts/lavenderpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-LavenderPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-LavenderPokecenterTextPointers:
- dw LavenderHealNurseText
- dw LavenderPokecenterText2
- dw LavenderPokecenterText3
- dw LavenderTradeNurseText
- dw LavenderPokecenterText5
-
-LavenderTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-LavenderHealNurseText:
- TX_POKECENTER_NURSE
-
-LavenderPokecenterText2:
- TX_FAR _LavenderPokecenterText2
- db "@"
-
-LavenderPokecenterText3:
- TX_FAR _LavenderPokecenterText3
- db "@"
-
-LavenderPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/lavendertown.asm b/scripts/lavendertown.asm
deleted file mode 100755
index daf490b1..00000000
--- a/scripts/lavendertown.asm
+++ /dev/null
@@ -1,63 +0,0 @@
-LavenderTownScript:
- jp EnableAutoTextBoxDrawing
-
-LavenderTownTextPointers:
- dw LavenderTownText1
- dw LavenderTownText2
- dw LavenderTownText3
- dw LavenderTownText4
- dw LavenderTownText5
- dw MartSignText
- dw PokeCenterSignText
- dw LavenderTownText8
- dw LavenderTownText9
-
-LavenderTownText1:
- TX_ASM
- ld hl, LavenderTownText_4413c
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- ld hl, LavenderTownText_44146
- jr nz, .asm_40831
- ld hl, LavenderTownText_44141
-.asm_40831
- call PrintText
- jp TextScriptEnd
-
-LavenderTownText_4413c:
- TX_FAR _LavenderTownText_4413c
- db "@"
-
-LavenderTownText_44141:
- TX_FAR _LavenderTownText_44141
- db "@"
-
-LavenderTownText_44146:
- TX_FAR _LavenderTownText_44146
- db "@"
-
-LavenderTownText2:
- TX_FAR _LavenderTownText2
- db "@"
-
-LavenderTownText3:
- TX_FAR _LavenderTownText3
- db "@"
-
-LavenderTownText4:
- TX_FAR _LavenderTownText4
- db "@"
-
-LavenderTownText5:
- TX_FAR _LavenderTownText5
- db "@"
-
-LavenderTownText8:
- TX_FAR _LavenderTownText8
- db "@"
-
-LavenderTownText9:
- TX_FAR _LavenderTownText9
- db "@"
diff --git a/scripts/lorelei.asm b/scripts/lorelei.asm
deleted file mode 100755
index 60be524d..00000000
--- a/scripts/lorelei.asm
+++ /dev/null
@@ -1,154 +0,0 @@
-LoreleiScript:
- call LoreleiShowOrHideExitBlock
- call EnableAutoTextBoxDrawing
- ld hl, LoreleiTrainerHeaders
- ld de, LoreleiScriptPointers
- ld a, [wLoreleiCurScript]
- call ExecuteCurMapScriptInTable
- ld [wLoreleiCurScript], a
- ret
-
-LoreleiShowOrHideExitBlock:
-; Blocks or clears the exit to the next room.
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, wBeatLorelei
- set 1, [hl]
- CheckEvent EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
- jr z, .blockExitToNextRoom
- ld a, $5
- jr .setExitBlock
-.blockExitToNextRoom
- ld a, $24
-.setExitBlock
- ld [wNewTileBlockID], a
- lb bc, 0, 2
- predef_jump ReplaceTileBlock
-
-ResetLoreleiScript:
- xor a
- ld [wLoreleiCurScript], a
- ret
-
-LoreleiScriptPointers:
- dw LoreleiScript0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw LoreleiScript2
- dw LoreleiScript3
- dw LoreleiScript4
-
-LoreleiScript4:
- ret
-
-LoreleiScriptWalkIntoRoom:
-; Walk six steps upward.
- ld hl, wSimulatedJoypadStatesEnd
- ld a, D_UP
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $6
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wLoreleiCurScript], a
- ld [wCurMapScript], a
- ret
-
-LoreleiScript0:
- ld hl, LoreleiEntranceCoords
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyPressed], a
- ld [hJoyHeld], a
- ld [wSimulatedJoypadStatesEnd], a
- ld [wSimulatedJoypadStatesIndex], a
- ld a, [wCoordIndex]
- cp $3 ; Is player standing one tile above the exit?
- jr c, .stopPlayerFromLeaving
- CheckAndSetEvent EVENT_AUTOWALKED_INTO_LORELEIS_ROOM
- jr z, LoreleiScriptWalkIntoRoom
-.stopPlayerFromLeaving
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID ; "Don't run away!"
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wLoreleiCurScript], a
- ld [wCurMapScript], a
- ret
-
-LoreleiEntranceCoords:
- db $0A,$04
- db $0A,$05
- db $0B,$04
- db $0B,$05
- db $FF
-
-LoreleiScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wLoreleiCurScript], a
- ld [wCurMapScript], a
- ret
-
-LoreleiScript2:
- call EndTrainerBattle
- ld a, [wIsInBattle]
- cp $ff
- jp z, ResetLoreleiScript
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-LoreleiTextPointers:
- dw LoreleiText1
- dw LoreleiDontRunAwayText
-
-LoreleiTrainerHeaders:
-LoreleiTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_LORELEIS_ROOM_TRAINER_0
- dw LoreleiBeforeBattleText ; TextBeforeBattle
- dw LoreleiAfterBattleText ; TextAfterBattle
- dw LoreleiEndBattleText ; TextEndBattle
- dw LoreleiEndBattleText ; TextEndBattle
-
- db $ff
-
-LoreleiText1:
- TX_ASM
- ld hl, LoreleiTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-LoreleiBeforeBattleText:
- TX_FAR _LoreleiBeforeBattleText
- db "@"
-
-LoreleiEndBattleText:
- TX_FAR _LoreleiEndBattleText
- db "@"
-
-LoreleiAfterBattleText:
- TX_FAR _LoreleiAfterBattleText
- db "@"
-
-LoreleiDontRunAwayText:
- TX_FAR _LoreleiDontRunAwayText
- db "@"
diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm
deleted file mode 100755
index d659d993..00000000
--- a/scripts/mansion1.asm
+++ /dev/null
@@ -1,135 +0,0 @@
-Mansion1Script:
- call Mansion1Subscript1
- call EnableAutoTextBoxDrawing
- ld hl, Mansion1TrainerHeaders
- ld de, Mansion1ScriptPointers
- ld a, [wMansion1CurScript]
- call ExecuteCurMapScriptInTable
- ld [wMansion1CurScript], a
- ret
-
-Mansion1Subscript1:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_MANSION_SWITCH_ON
- jr nz, .asm_442ec
- lb bc, 6, 12
- call Mansion1Script_4430b
- lb bc, 3, 8
- call Mansion1Script_44304
- lb bc, 8, 10
- call Mansion1Script_44304
- lb bc, 13, 13
- jp Mansion1Script_44304
-.asm_442ec
- lb bc, 6, 12
- call Mansion1Script_44304
- lb bc, 3, 8
- call Mansion1Script_4430b
- lb bc, 8, 10
- call Mansion1Script_4430b
- lb bc, 13, 13
- jp Mansion1Script_4430b
-
-Mansion1Script_44304:
- ld a, $2d
- ld [wNewTileBlockID], a
- jr Mansion1ReplaceBlock
-
-Mansion1Script_4430b:
- ld a, $e
- ld [wNewTileBlockID], a
-Mansion1ReplaceBlock:
- predef ReplaceTileBlock
- ret
-
-Mansion1Script_Switches:
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- ret nz
- xor a
- ld [hJoyHeld], a
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-Mansion1ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Mansion1TextPointers:
- dw Mansion1Text1
- dw PickUpItemText
- dw PickUpItemText
- dw Mansion1Text4
-
-Mansion1TrainerHeaders:
-Mansion1TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_MANSION_1_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MANSION_1_TRAINER_0
- dw Mansion1BattleText2 ; TextBeforeBattle
- dw Mansion1AfterBattleText2 ; TextAfterBattle
- dw Mansion1EndBattleText2 ; TextEndBattle
- dw Mansion1EndBattleText2 ; TextEndBattle
-
- db $ff
-
-Mansion1Text1:
- TX_ASM
- ld hl, Mansion1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion1BattleText2:
- TX_FAR _Mansion1BattleText2
- db "@"
-
-Mansion1EndBattleText2:
- TX_FAR _Mansion1EndBattleText2
- db "@"
-
-Mansion1AfterBattleText2:
- TX_FAR _Mansion1AfterBattleText2
- db "@"
-
-Mansion1Text4:
- TX_ASM
- ld hl, MansionSwitchText
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_4438c
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- ld hl, MansionSwitchPressedText
- call PrintText
- ld a, SFX_GO_INSIDE
- call PlaySound
- CheckAndSetEvent EVENT_MANSION_SWITCH_ON
- jr z, .asm_44392
- ResetEventReuseHL EVENT_MANSION_SWITCH_ON
- jr .asm_44392
-.asm_4438c
- ld hl, MansionSwitchNotPressedText
- call PrintText
-.asm_44392
- jp TextScriptEnd
-
-MansionSwitchText:
- TX_FAR _MansionSwitchText
- db "@"
-
-MansionSwitchPressedText:
- TX_FAR _MansionSwitchPressedText
- db "@"
-
-MansionSwitchNotPressedText:
- TX_FAR _MansionSwitchNotPressedText
- db "@"
diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm
deleted file mode 100755
index 7edfd097..00000000
--- a/scripts/mansion2.asm
+++ /dev/null
@@ -1,141 +0,0 @@
-Mansion2Script:
- call Mansion2Script_51fee
- call EnableAutoTextBoxDrawing
- ld hl, Mansion2TrainerHeaders
- ld de, Mansion2ScriptPointers
- ld a, [wMansion2CurScript]
- call ExecuteCurMapScriptInTable
- ld [wMansion2CurScript], a
- ret
-
-Mansion2Script_51fee:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_MANSION_SWITCH_ON
- jr nz, .asm_52016
- ld a, $e
- lb bc, 2, 4
- call Mansion2Script_5202f
- ld a, $54
- lb bc, 4, 9
- call Mansion2Script_5202f
- ld a, $5f
- lb bc, 11, 3
- call Mansion2Script_5202f
- ret
-.asm_52016
- ld a, $5f
- lb bc, 2, 4
- call Mansion2Script_5202f
- ld a, $e
- lb bc, 4, 9
- call Mansion2Script_5202f
- ld a, $e
- lb bc, 11, 3
- call Mansion2Script_5202f
- ret
-
-Mansion2Script_5202f:
- ld [wNewTileBlockID], a
- predef_jump ReplaceTileBlock
-
-Mansion2Script_Switches:
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- ret nz
- xor a
- ld [hJoyHeld], a
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-Mansion2ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Mansion2TextPointers:
- dw Mansion2Text1
- dw PickUpItemText
- dw Mansion2Text3
- dw Mansion2Text4
- dw Mansion2Text5
-
-Mansion2TrainerHeaders:
-Mansion2TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_MANSION_2_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MANSION_2_TRAINER_0
- dw Mansion2BattleText1 ; TextBeforeBattle
- dw Mansion2AfterBattleText1 ; TextAfterBattle
- dw Mansion2EndBattleText1 ; TextEndBattle
- dw Mansion2EndBattleText1 ; TextEndBattle
-
- db $ff
-
-Mansion2Text1:
- TX_ASM
- ld hl, Mansion2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion2BattleText1:
- TX_FAR _Mansion2BattleText1
- db "@"
-
-Mansion2EndBattleText1:
- TX_FAR _Mansion2EndBattleText1
- db "@"
-
-Mansion2AfterBattleText1:
- TX_FAR _Mansion2AfterBattleText1
- db "@"
-
-Mansion2Text3:
- TX_FAR _Mansion2Text3
- db "@"
-
-Mansion2Text4:
- TX_FAR _Mansion2Text4
- db "@"
-
-Mansion3Text6:
-Mansion2Text5:
- TX_ASM
- ld hl, Mansion2Text_520c2
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_520b9
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- ld hl, Mansion2Text_520c7
- call PrintText
- ld a, SFX_GO_INSIDE
- call PlaySound
- CheckAndSetEvent EVENT_MANSION_SWITCH_ON
- jr z, .asm_520bf
- ResetEventReuseHL EVENT_MANSION_SWITCH_ON
- jr .asm_520bf
-.asm_520b9
- ld hl, Mansion2Text_520cc
- call PrintText
-.asm_520bf
- jp TextScriptEnd
-
-Mansion2Text_520c2:
- TX_FAR _Mansion2Text_520c2
- db "@"
-
-Mansion2Text_520c7:
- TX_FAR _Mansion2Text_520c7
- db "@"
-
-Mansion2Text_520cc:
- TX_FAR _Mansion2Text_520cc
- db "@"
diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm
deleted file mode 100755
index 990ad434..00000000
--- a/scripts/mansion3.asm
+++ /dev/null
@@ -1,152 +0,0 @@
-Mansion3Script:
- call Mansion3Script_52204
- call EnableAutoTextBoxDrawing
- ld hl, Mansion3TrainerHeader0
- ld de, Mansion3ScriptPointers
- ld a, [wMansion3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wMansion3CurScript], a
- ret
-
-Mansion3Script_52204:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_MANSION_SWITCH_ON
- jr nz, .asm_52224
- ld a, $e
- ld bc, $207
- call Mansion2Script_5202f
- ld a, $5f
- ld bc, $507
- call Mansion2Script_5202f
- ret
-.asm_52224
- ld a, $5f
- ld bc, $207
- call Mansion2Script_5202f
- ld a, $e
- ld bc, $507
- call Mansion2Script_5202f
- ret
-
-Mansion3ScriptPointers:
- dw Mansion3Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Mansion3Script0:
- ld hl, CoordsData_52254
- call Mansion3Script_5225b
- ld a, [wWhichDungeonWarp]
- and a
- jp z, CheckFightingMapTrainers
- cp $3
- ld a, $a5
- jr nz, .asm_52250
- ld a, $d6
-.asm_52250
- ld [wDungeonWarpDestinationMap], a
- ret
-
-CoordsData_52254:
- db $0E,$10
- db $0E,$11
- db $0E,$13
- db $FF
-
-Mansion3Script_5225b:
- xor a
- ld [wWhichDungeonWarp], a
- ld a, [wd72d]
- bit 4, a
- ret nz
- call ArePlayerCoordsInArray
- ret nc
- ld a, [wCoordIndex]
- ld [wWhichDungeonWarp], a
- ld hl, wd72d
- set 4, [hl]
- ld hl, wd732
- set 4, [hl]
- ret
-
-Mansion3Script_Switches:
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- ret nz
- xor a
- ld [hJoyHeld], a
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-Mansion3TextPointers:
- dw Mansion3Text1
- dw Mansion3Text2
- dw PickUpItemText
- dw PickUpItemText
- dw Mansion3Text5
- dw Mansion3Text6
-
-Mansion3TrainerHeaders:
-Mansion3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_0
- dw Mansion3BattleText1 ; TextBeforeBattle
- dw Mansion3AfterBattleText1 ; TextAfterBattle
- dw Mansion3EndBattleText1 ; TextEndBattle
- dw Mansion3EndBattleText1 ; TextEndBattle
-
-Mansion3TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_2
- dw Mansion3BattleText2 ; TextBeforeBattle
- dw Mansion3AfterBattleText2 ; TextAfterBattle
- dw Mansion3EndBattleText2 ; TextEndBattle
- dw Mansion3EndBattleText2 ; TextEndBattle
-
- db $ff
-
-Mansion3Text1:
- TX_ASM
- ld hl, Mansion3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion3Text2:
- TX_ASM
- ld hl, Mansion3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion3BattleText1:
- TX_FAR _Mansion3BattleText1
- db "@"
-
-Mansion3EndBattleText1:
- TX_FAR _Mansion3EndBattleText1
- db "@"
-
-Mansion3AfterBattleText1:
- TX_FAR _Mansion3AfterBattleText1
- db "@"
-
-Mansion3BattleText2:
- TX_FAR _Mansion3BattleText2
- db "@"
-
-Mansion3EndBattleText2:
- TX_FAR _Mansion3EndBattleText2
- db "@"
-
-Mansion3AfterBattleText2:
- TX_FAR _Mansion3AfterBattleText2
- db "@"
-
-Mansion3Text5:
- TX_FAR _Mansion3Text5
- db "@"
diff --git a/scripts/mansion4.asm b/scripts/mansion4.asm
deleted file mode 100755
index 57687fec..00000000
--- a/scripts/mansion4.asm
+++ /dev/null
@@ -1,131 +0,0 @@
-Mansion4Script:
- call Mansion4Script_523cf
- call EnableAutoTextBoxDrawing
- ld hl, Mansion4TrainerHeader0
- ld de, Mansion4ScriptPointers
- ld a, [wMansion4CurScript]
- call ExecuteCurMapScriptInTable
- ld [wMansion4CurScript], a
- ret
-
-Mansion4Script_523cf:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_MANSION_SWITCH_ON
- jr nz, .asm_523ff
- ld a, $e
- ld bc, $80d
- call Mansion2Script_5202f
- ld a, $e
- ld bc, $b06
- call Mansion2Script_5202f
- ld a, $5f
- ld bc, $304
- call Mansion2Script_5202f
- ld a, $54
- ld bc, $808
- call Mansion2Script_5202f
- ret
-.asm_523ff
- ld a, $2d
- ld bc, $80d
- call Mansion2Script_5202f
- ld a, $5f
- ld bc, $b06
- call Mansion2Script_5202f
- ld a, $e
- ld bc, $304
- call Mansion2Script_5202f
- ld a, $e
- ld bc, $808
- call Mansion2Script_5202f
- ret
-
-Mansion4Script_Switches:
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- ret nz
- xor a
- ld [hJoyHeld], a
- ld a, $9
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-Mansion4ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Mansion4TextPointers:
- dw Mansion4Text1
- dw Mansion4Text2
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw Mansion4Text7
- dw PickUpItemText
- dw Mansion3Text6
-
-Mansion4TrainerHeaders:
-Mansion4TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_0
- dw Mansion4BattleText1 ; TextBeforeBattle
- dw Mansion4AfterBattleText1 ; TextAfterBattle
- dw Mansion4EndBattleText1 ; TextEndBattle
- dw Mansion4EndBattleText1 ; TextEndBattle
-
-Mansion4TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_2
- dw Mansion4BattleText2 ; TextBeforeBattle
- dw Mansion4AfterBattleText2 ; TextAfterBattle
- dw Mansion4EndBattleText2 ; TextEndBattle
- dw Mansion4EndBattleText2 ; TextEndBattle
-
- db $ff
-
-Mansion4Text1:
- TX_ASM
- ld hl, Mansion4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion4Text2:
- TX_ASM
- ld hl, Mansion4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Mansion4BattleText1:
- TX_FAR _Mansion4BattleText1
- db "@"
-
-Mansion4EndBattleText1:
- TX_FAR _Mansion4EndBattleText1
- db "@"
-
-Mansion4AfterBattleText1:
- TX_FAR _Mansion4AfterBattleText1
- db "@"
-
-Mansion4BattleText2:
- TX_FAR _Mansion4BattleText2
- db "@"
-
-Mansion4EndBattleText2:
- TX_FAR _Mansion4EndBattleText2
- db "@"
-
-Mansion4AfterBattleText2:
- TX_FAR _Mansion4AfterBattleText2
- db "@"
-
-Mansion4Text7:
- TX_FAR _Mansion4Text7
- db "@"
diff --git a/scripts/mtmoon1.asm b/scripts/mtmoon1.asm
deleted file mode 100755
index 604e490a..00000000
--- a/scripts/mtmoon1.asm
+++ /dev/null
@@ -1,220 +0,0 @@
-MtMoon1Script:
- call EnableAutoTextBoxDrawing
- ld hl, MtMoon1TrainerHeader0
- ld de, MtMoon1ScriptPointers
- ld a, [wMtMoon1CurScript]
- call ExecuteCurMapScriptInTable
- ld [wMtMoon1CurScript], a
- ret
-
-MtMoon1ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-MtMoon1TextPointers:
- dw MtMoon1Text1
- dw MtMoon1Text2
- dw MtMoon1Text3
- dw MtMoon1Text4
- dw MtMoon1Text5
- dw MtMoon1Text6
- dw MtMoon1Text7
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw MtMoon1Text14
-
-MtMoon1TrainerHeaders:
-MtMoon1TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_0
- dw MtMoon1BattleText2 ; TextBeforeBattle
- dw MtMoon1AfterBattleText2 ; TextAfterBattle
- dw MtMoon1EndBattleText2 ; TextEndBattle
- dw MtMoon1EndBattleText2 ; TextEndBattle
-
-MtMoon1TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_2
- dw MtMoon1BattleText3 ; TextBeforeBattle
- dw MtMoon1AfterBattleText3 ; TextAfterBattle
- dw MtMoon1EndBattleText3 ; TextEndBattle
- dw MtMoon1EndBattleText3 ; TextEndBattle
-
-MtMoon1TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_3
- dw MtMoon1BattleText4 ; TextBeforeBattle
- dw MtMoon1AfterBattleText4 ; TextAfterBattle
- dw MtMoon1EndBattleText4 ; TextEndBattle
- dw MtMoon1EndBattleText4 ; TextEndBattle
-
-MtMoon1TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_4
- dw MtMoon1BattleText5 ; TextBeforeBattle
- dw MtMoon1AfterBattleText5 ; TextAfterBattle
- dw MtMoon1EndBattleText5 ; TextEndBattle
- dw MtMoon1EndBattleText5 ; TextEndBattle
-
-MtMoon1TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_5
- dw MtMoon1BattleText6 ; TextBeforeBattle
- dw MtMoon1AfterBattleText6 ; TextAfterBattle
- dw MtMoon1EndBattleText6 ; TextEndBattle
- dw MtMoon1EndBattleText6 ; TextEndBattle
-
-MtMoon1TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_6
- dw MtMoon1BattleText7 ; TextBeforeBattle
- dw MtMoon1AfterBattleText7 ; TextAfterBattle
- dw MtMoon1EndBattleText7 ; TextEndBattle
- dw MtMoon1EndBattleText7 ; TextEndBattle
-
-MtMoon1TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_MT_MOON_1_TRAINER_7
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MT_MOON_1_TRAINER_7
- dw MtMoon1BattleText8 ; TextBeforeBattle
- dw MtMoon1AfterBattleText8 ; TextAfterBattle
- dw MtMoon1EndBattleText8 ; TextEndBattle
- dw MtMoon1EndBattleText8 ; TextEndBattle
-
- db $ff
-
-MtMoon1Text1:
- TX_ASM
- ld hl, MtMoon1TrainerHeader0
- jr MtMoon1TalkToTrainer
-
-MtMoon1Text2:
- TX_ASM
- ld hl, MtMoon1TrainerHeader2
- jr MtMoon1TalkToTrainer
-
-MtMoon1Text3:
- TX_ASM
- ld hl, MtMoon1TrainerHeader3
- jr MtMoon1TalkToTrainer
-
-MtMoon1Text4:
- TX_ASM
- ld hl, MtMoon1TrainerHeader4
- jr MtMoon1TalkToTrainer
-
-MtMoon1Text5:
- TX_ASM
- ld hl, MtMoon1TrainerHeader5
- jr MtMoon1TalkToTrainer
-
-MtMoon1Text6:
- TX_ASM
- ld hl, MtMoon1TrainerHeader6
- jr MtMoon1TalkToTrainer
-
-MtMoon1Text7:
- TX_ASM
- ld hl, MtMoon1TrainerHeader7
-MtMoon1TalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon1BattleText2:
- TX_FAR _MtMoon1BattleText2
- db "@"
-
-MtMoon1EndBattleText2:
- TX_FAR _MtMoon1EndBattleText2
- db "@"
-
-MtMoon1AfterBattleText2:
- TX_FAR _MtMoon1AfterBattleText2
- db "@"
-
-MtMoon1BattleText3:
- TX_FAR _MtMoon1BattleText3
- db "@"
-
-MtMoon1EndBattleText3:
- TX_FAR _MtMoon1EndBattleText3
- db "@"
-
-MtMoon1AfterBattleText3:
- TX_FAR _MtMoon1AfterBattleText3
- db "@"
-
-MtMoon1BattleText4:
- TX_FAR _MtMoon1BattleText4
- db "@"
-
-MtMoon1EndBattleText4:
- TX_FAR _MtMoon1EndBattleText4
- db "@"
-
-MtMoon1AfterBattleText4:
- TX_FAR _MtMoon1AfterBattleText4
- db "@"
-
-MtMoon1BattleText5:
- TX_FAR _MtMoon1BattleText5
- db "@"
-
-MtMoon1EndBattleText5:
- TX_FAR _MtMoon1EndBattleText5
- db "@"
-
-MtMoon1AfterBattleText5:
- TX_FAR _MtMoon1AfterBattleText5
- db "@"
-
-MtMoon1BattleText6:
- TX_FAR _MtMoon1BattleText6
- db "@"
-
-MtMoon1EndBattleText6:
- TX_FAR _MtMoon1EndBattleText6
- db "@"
-
-MtMoon1AfterBattleText6:
- TX_FAR _MtMoon1AfterBattleText6
- db "@"
-
-MtMoon1BattleText7:
- TX_FAR _MtMoon1BattleText7
- db "@"
-
-MtMoon1EndBattleText7:
- TX_FAR _MtMoon1EndBattleText7
- db "@"
-
-MtMoon1AfterBattleText7:
- TX_FAR _MtMoon1AfterBattleText7
- db "@"
-
-MtMoon1BattleText8:
- TX_FAR _MtMoon1BattleText8
- db "@"
-
-MtMoon1EndBattleText8:
- TX_FAR _MtMoon1EndBattleText8
- db "@"
-
-MtMoon1AfterBattleText8:
- TX_FAR _MtMoon1AfterBattleText8
- db "@"
-
-MtMoon1Text14:
- TX_FAR _MtMoon1Text14
- db "@"
diff --git a/scripts/mtmoon2.asm b/scripts/mtmoon2.asm
deleted file mode 100755
index 6d1e5339..00000000
--- a/scripts/mtmoon2.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-MtMoon2Script:
- call EnableAutoTextBoxDrawing
- ret
-
-MtMoon2TextPointers:
- dw MtMoonText1
-
-MtMoonText1:
- TX_FAR _MtMoonText1
- db "@"
diff --git a/scripts/mtmoon3.asm b/scripts/mtmoon3.asm
deleted file mode 100755
index aaa29825..00000000
--- a/scripts/mtmoon3.asm
+++ /dev/null
@@ -1,674 +0,0 @@
-MtMoon3Script:
- call EnableAutoTextBoxDrawing
- ld hl, MtMoon3TrainerHeaders
- ld de, MtMoon3ScriptPointers
- ld a, [wMtMoon3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wMtMoon3CurScript], a
- CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
- ret z
- ld hl, CoordsData_49d37
- call ArePlayerCoordsInArray
- jr nc, .asm_49d31
- ld hl, wd72e
- set 4, [hl]
- ret
-.asm_49d31
- ld hl, wd72e
- res 4, [hl]
- ret
-
-CoordsData_49d37:
- db $05,$0B
- db $05,$0C
- db $05,$0D
- db $05,$0E
- db $06,$0B
- db $06,$0C
- db $06,$0D
- db $06,$0E
- db $07,$0B
- db $07,$0C
- db $07,$0D
- db $07,$0E
- db $08,$0B
- db $08,$0C
- db $08,$0D
- db $08,$0E
- db $FF
-
-MtMoon3Script_49cd7:
- CheckAndResetEvent EVENT_57E
- call nz, MtMoon3Script_49cec
- xor a
- ld [wJoyIgnore], a
-MtMoon3Script_49ce5:
- ld [wMtMoon3CurScript], a
- ld [wCurMapScript], a
- ret
-
-MtMoon3Script_49cec:
- ld a, HS_MT_MOON_JESSIE
- call MtMoon3Script_49f93
- ld a, HS_MT_MOON_JAMES
- call MtMoon3Script_49f93
- ret
-
-MtMoon3ScriptPointers:
- dw MtMoon3Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw MtMoon3Script3
- dw MtMoon3Script4
- dw MtMoon3Script5
- dw MtMoon3Script6
- dw MtMoon3Script7
- dw MtMoon3Script8
- dw MtMoon3Script9
- dw MtMoon3Script10
- dw MtMoon3Script11
- dw MtMoon3Script12
- dw MtMoon3Script13
- dw MtMoon3Script14
- dw MtMoon3Script15
-
-MtMoon3Script0:
- CheckEitherEventSet EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
- call z, MtMoon3Script_49d28
- CheckEvent EVENT_BEAT_MT_MOON_3_TRAINER_0
- call z, MtMoon3Script_49e15
- ret
-
-MtMoon3Script_49d28:
- CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
- jp nz, .asm_49d4b
- ld a, [wYCoord]
- cp $8
- jp nz, .asm_49d4b
- ld a, [wXCoord]
- cp $d
- jp nz, .asm_49d4b
- xor a
- ld [hJoyHeld], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ret
-
-.asm_49d4b
- CheckEitherEventSet EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
- jp z, CheckFightingMapTrainers
- ret
-
-MtMoon3Script3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, MtMoon3Script_49cd7
- call UpdateSprites
- call Delay3
- SetEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script4:
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld hl, CoordsData_49dc7
- call ArePlayerCoordsInArray
- jr c, .asm_49da8
- ld hl, CoordsData_49dc0
- call ArePlayerCoordsInArray
- jr c, .asm_49db0
- ld hl, CoordsData_49dd5
- call ArePlayerCoordsInArray
- jr c, .asm_49d9b
- ld hl, CoordsData_49dce
- call ArePlayerCoordsInArray
- jr c, .asm_49da3
- jp CheckFightingMapTrainers
-
-.asm_49d9b
- ld b, SPRITE_FACING_LEFT
- ld hl, PikachuMovementData_49dd8
- call MtMoon3Script_4a325
-.asm_49da3
- ld de, MovementData_49ddd
- jr .asm_49db3
-
-.asm_49da8
- ld b, SPRITE_FACING_RIGHT
- ld hl, PikachuMovementData_49dca
- call MtMoon3Script_4a325
-.asm_49db0
- ld de, MovementData_49ddc
-.asm_49db3
- ld a, $1
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $5
- call MtMoon3Script_49ce5
- ret
-
-CoordsData_49dc0:
- db $07,$0C
- db $06,$0B
- db $05,$0C
- db $FF
-
-CoordsData_49dc7:
- db $07,$0C
- db $FF
-
-PikachuMovementData_49dca:
- db $00
- db $35
- db $33
- db $3f
-
-CoordsData_49dce:
- db $07,$0D
- db $06,$0E
- db $05,$0E
- db $FF
-
-CoordsData_49dd5:
- db $07,$0D
- db $FF
-
-PikachuMovementData_49dd8:
- db $00
- db $35
- db $34
- db $3f
-
-MovementData_49ddc:
- db NPC_MOVEMENT_RIGHT
-MovementData_49ddd:
- db NPC_MOVEMENT_UP
- db $FF
-
-MtMoon3Script5:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- CheckEvent EVENT_GOT_HELIX_FOSSIL
- jr z, .asm_49e1d
- ld a, HS_MT_MOON_3_FOSSIL_1
- jr .asm_49e1f
-.asm_49e1d
- ld a, HS_MT_MOON_3_FOSSIL_2
-.asm_49e1f
- ld [wMissableObjectIndex], a
- predef HideObject
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script_49e15:
- ld a, [wXCoord]
- cp $3
- ret nz
- ld a, [wYCoord]
- cp $5
- ret nz
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- xor a
- ld [hJoyHeld], a
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, HS_MT_MOON_JESSIE
- call MtMoon3Script_49f84
- ld a, HS_MT_MOON_JAMES
- call MtMoon3Script_49f84
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $c
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $6
- call MtMoon3Script_49ce5
- ret
-
-MovementData_f9e65:
- db $06
-MovementData_f9e66:
- db $06
- db $06
- db $06
- db $06
- db $06
- db $FF
-
-MtMoon3Script6:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld de, MovementData_f9e65
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $7
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script7:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
-MtMoon3Script8:
- ld a, $2
- ld [wSpriteStateData1 + 2 * $10 + 1], a
- ld a, SPRITE_FACING_DOWN
- ld [wSpriteStateData1 + 2 * $10 + 9], a
-MtMoon3Script9:
- ld a, $6
- ld [H_SPRITEINDEX], a
- ld de, MovementData_f9e66
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $a
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script10:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
-MtMoon3Script11:
- ld a, $2
- ld [wSpriteStateData1 + 6 * $10 + 1], a
- ld a, SPRITE_FACING_LEFT
- ld [wSpriteStateData1 + 6 * $10 + 9], a
- call Delay3
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-MtMoon3Script12:
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, MtMoon3JessieJamesEndBattleText
- ld de, MtMoon3JessieJamesEndBattleText
- call SaveEndBattleTextPointers
- ld a, OPP_ROCKET
- ld [wCurOpponent], a
- ld a, $2a
- ld [wTrainerNo], a
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- SetEvent EVENT_57E
- ld a, $d
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script13:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wIsInBattle]
- cp $ff
- jp z, MtMoon3Script_49cd7
- ld a, $2
- ld [wSpriteStateData1 + 2 * $10 + 1], a
- ld [wSpriteStateData1 + 6 * $10 + 1], a
- xor a
- ld [wSpriteStateData1 + 2 * $10 + 9], a
- ld [wSpriteStateData1 + 6 * $10 + 9], a
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $e
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $e
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script14:
- ld a, $ff
- ld [wJoyIgnore], a
- call GBFadeOutToBlack
- ld a, HS_MT_MOON_JESSIE
- call MtMoon3Script_49f93
- ld a, HS_MT_MOON_JAMES
- call MtMoon3Script_49f93
- call UpdateSprites
- call Delay3
- call GBFadeInFromBlack
- ld a, $f
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script15:
- call PlayDefaultMusic
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_MT_MOON_3_TRAINER_0
- ResetEventReuseHL EVENT_57E
- ld a, $0
- call MtMoon3Script_49ce5
- ret
-
-MtMoon3Script_49f84:
- ld [wMissableObjectIndex], a
- predef ShowObject
- call UpdateSprites
- call Delay3
- ret
-
-MtMoon3Script_49f93:
- ld [wMissableObjectIndex], a
- predef HideObject
- ret
-
-MtMoon3TextPointers:
- dw MtMoon3Text1
- dw MtMoon3Text2
- dw MtMoon3Text3
- dw MtMoon3Text4
- dw MtMoon3Text5
- dw MtMoon3Text6
- dw MtMoon3Text7
- dw MtMoon3Text8
- dw PickUpItemText
- dw PickUpItemText
- dw MtMoon3Text11
- dw MtMoon3Text12
- dw MtMoon3Text13
- dw MtMoon3Text14
-
-MtMoon3TrainerHeaders:
-MtMoon3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_2
- db ($4 << 4)
- dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_2
- dw MtMoon3BattleText3
- dw MtMoon3AfterBattleText3
- dw MtMoon3EndBattleText3
- dw MtMoon3EndBattleText3
-
-MtMoon3TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_3
- db ($4 << 4)
- dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_3
- dw MtMoon3BattleText4
- dw MtMoon3AfterBattleText4
- dw MtMoon3EndBattleText4
- dw MtMoon3EndBattleText4
-
-MtMoon3TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_4
- db ($4 << 4)
- dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_4
- dw MtMoon3BattleText5
- dw MtMoon3AfterBattleText5
- dw MtMoon3EndBattleText5
- dw MtMoon3EndBattleText5
-
- db $FF
-
-MtMoon3Text2:
-MtMoon3Text6:
- db "@"
-
-MtMoon3Text12:
- TX_FAR _MtMoonJessieJamesText1
- TX_ASM
- ld c, 10
- call DelayFrames
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- ld a, $0
- ld [wEmotionBubbleSpriteIndex], a
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld c, 20
- call DelayFrames
- jp TextScriptEnd
-
-MtMoon3Text13:
- TX_FAR _MtMoonJessieJamesText2
- db "@"
-
-MtMoon3JessieJamesEndBattleText:
- TX_FAR _MtMoonJessieJamesText3
- db "@"
-
-MtMoon3Text14:
- TX_FAR _MtMoonJessieJamesText4
- TX_ASM
- ld c, 64
- call DelayFrames
- jp TextScriptEnd
-
-MtMoon3Text1:
- TX_ASM
- CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
- jr z, .asm_4a02f
- ; CheckEitherEventSetReuseA EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
- and (1 << (EVENT_GOT_DOME_FOSSIL % 8)) | (1 << (EVENT_GOT_HELIX_FOSSIL % 8))
- jr nz, .asm_4a057
- ld hl, MtMoon3Text_4a116
- call PrintText
- jr .asm_4a05d
-
-.asm_4a02f
- ld hl, MtMoon3Text_4a10c
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, MtMoon3SuperNerdEndBattleText
- ld de, MtMoon3SuperNerdEndBattleText
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- call MtMoon3Script_49ce5
- jr .asm_4a05d
-
-.asm_4a057
- ld hl, MtMoon3Text_4a11b
- call PrintText
-.asm_4a05d
- jp TextScriptEnd
-
-MtMoon3Text3:
- TX_ASM
- ld hl, MtMoon3TrainerHeader0
- jr MtMoon3TalkToTrainer
-
-MtMoon3Text4:
- TX_ASM
- ld hl, MtMoon3TrainerHeader1
- jr MtMoon3TalkToTrainer
-
-
-MtMoon3Text5:
- TX_ASM
- ld hl, MtMoon3TrainerHeader2
-MtMoon3TalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-MtMoon3Text7:
- TX_ASM
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, MtMoon3Text_4a0ae
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_4a0ab
- lb bc, DOME_FOSSIL, 1
- call GiveItem
- jp nc, MtMoon3Script_4a0fd
- call MtMoon3Script_4a0f0
- ld a, HS_MT_MOON_3_FOSSIL_1
- ld [wMissableObjectIndex], a
- predef HideObject
- SetEvent EVENT_GOT_DOME_FOSSIL
- ld a, $4
- call MtMoon3Script_49ce5
-.asm_4a0ab
- jp TextScriptEnd
-
-MtMoon3Text_4a0ae:
- TX_FAR _MtMoon3Text_49f24
- db "@"
-
-MtMoon3Text8:
- TX_ASM
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, MtMoon3Text_4a0eb
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_4a0e8
- lb bc, HELIX_FOSSIL, 1
- call GiveItem
- jp nc, MtMoon3Script_4a0fd
- call MtMoon3Script_4a0f0
- ld a, HS_MT_MOON_3_FOSSIL_2
- ld [wMissableObjectIndex], a
- predef HideObject
- SetEvent EVENT_GOT_HELIX_FOSSIL
- ld a, $4
- call MtMoon3Script_49ce5
-.asm_4a0e8
- jp TextScriptEnd
-
-MtMoon3Text_4a0eb:
- TX_FAR _MtMoon3Text_49f64
- db "@"
-
-MtMoon3Script_4a0f0:
- ld hl, MtMoon3Text_4a0f6
- jp PrintText
-
-MtMoon3Text_4a0f6:
- TX_FAR _MtMoon3Text_49f6f
- TX_SFX_KEY_ITEM
- TX_WAIT_BUTTON
- db "@"
-
-MtMoon3Script_4a0fd:
- ld hl, MtMoon3Text_4a106
- call PrintText
- jp TextScriptEnd
-
-MtMoon3Text_4a106:
- TX_FAR _MtMoon3Text_49f7f
- TX_WAIT_BUTTON
- db "@"
-
-MtMoon3Text_4a10c:
- TX_FAR _MtMoon3Text_49f85
- db "@"
-
-MtMoon3SuperNerdEndBattleText:
- TX_FAR _MtMoon3Text_49f8a
- db "@"
-
-MtMoon3Text_4a116:
- TX_FAR _MtMoon3Text_49f8f
- db "@"
-
-MtMoon3Text_4a11b:
- TX_FAR _MtMoon3Text_49f94
- db "@"
-
-MtMoon3Text11:
- TX_FAR _MtMoon3Text_49f99
- TX_SFX_KEY_ITEM
- db "@"
-
-MtMoon3BattleText3:
- TX_FAR _MtMoon3BattleText3
- db "@"
-
-MtMoon3EndBattleText3:
- TX_FAR _MtMoon3EndBattleText3
- db "@"
-
-MtMoon3AfterBattleText3:
- TX_FAR _MtMoon3AfterBattleText3
- db "@"
-
-MtMoon3BattleText4:
- TX_FAR _MtMoon3BattleText4
- db "@"
-
-MtMoon3EndBattleText4:
- TX_FAR _MtMoon3EndBattleText4
- db "@"
-
-MtMoon3AfterBattleText4:
- TX_FAR _MtMoon3AfterBattleText4
- db "@"
-
-MtMoon3BattleText5:
- TX_FAR _MtMoon3BattleText5
- db "@"
-
-MtMoon3EndBattleText5:
- TX_FAR _MtMoon3EndBattleText5
- db "@"
-
-MtMoon3AfterBattleText5:
- TX_FAR _MtMoon3AfterBattleText5
- db "@"
-
diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm
deleted file mode 100755
index 76cc472a..00000000
--- a/scripts/mtmoonpokecenter.asm
+++ /dev/null
@@ -1,40 +0,0 @@
-MtMoonPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-MtMoonPokecenterTextPointers:
- dw MtMoonHealNurseText
- dw MtMoonPokecenterText2
- dw MtMoonPokecenterText3
- dw MagikarpSalesmanText
- dw MtMoonPokecenterText5
- dw MtMoonTradeNurseText
- dw MtMoonPokecenterText7
-
-MtMoonHealNurseText:
- TX_POKECENTER_NURSE
-
-MtMoonPokecenterText2:
- TX_FAR _MtMoonPokecenterText1
- db "@"
-
-MtMoonPokecenterText3:
- TX_FAR _MtMoonPokecenterText3
- db "@"
-
-MagikarpSalesmanText:
- TX_ASM
- callab MagikarpSalesman
- jp TextScriptEnd
-
-MtMoonPokecenterText5:
- TX_FAR _MtMoonPokecenterText5
- db "@"
-
-MtMoonTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-MtMoonPokecenterText7:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm
deleted file mode 100755
index 30e6f594..00000000
--- a/scripts/museum1f.asm
+++ /dev/null
@@ -1,65 +0,0 @@
-Museum1FScript:
- ld a, $1
- ld [wAutoTextBoxDrawingControl], a
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, Museum1FScriptPointers
- ld a, [wMuseum1FCurScript]
- call JumpTable
- ret
-
-Museum1FScriptPointers:
- dw Museum1FScript0
- dw Museum1FScript1
-
-Museum1FScript0:
- ld a, [wYCoord]
- cp $4
- ret nz
- ld a, [wXCoord]
- cp $9
- jr z, .asm_5c120
- ld a, [wXCoord]
- cp $a
- ret nz
-.asm_5c120
- xor a
- ld [hJoyHeld], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-Museum1FScript1:
- ret
-
-Museum1FTextPointers:
- dw Museum1FText1
- dw Museum1FText2
- dw Museum1FText3
- dw Museum1FText4
- dw Museum1FText5
-
-Museum1FText1:
- TX_ASM
- callba Func_f1c1b
- jp TextScriptEnd
-
-Museum1FText2:
- TX_ASM
- callba Func_f1d2a
- jp TextScriptEnd
-
-Museum1FText3:
- TX_ASM
- callba Func_f1d36
- jp TextScriptEnd
-
-Museum1FText4:
- TX_ASM
- callba Func_f1d80
- jp TextScriptEnd
-
-Museum1FText5:
- TX_ASM
- callba Func_f1d8c
- jp TextScriptEnd
diff --git a/scripts/museum1f2.asm b/scripts/museum1f2.asm
deleted file mode 100755
index 7e8878a2..00000000
--- a/scripts/museum1f2.asm
+++ /dev/null
@@ -1,211 +0,0 @@
-Func_f1c1b:
- ld a, [wYCoord]
- cp $4
- jr nz, .asm_f1c2c
- ld a, [wXCoord]
- cp $d
- jp z, .asm_f1cde
- jr .asm_f1c48
-
-.asm_f1c2c
- cp $3
- jr nz, .asm_f1c38
- ld a, [wXCoord]
- cp a, $c
- jp z, .asm_f1cde
-.asm_f1c38
- CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
- jr nz, .asm_f1c4f
- ld hl, Museum1FText_f1d20
- call PrintText
- jp .asm_f1cfc
-
-.asm_f1c48
- CheckEvent EVENT_BOUGHT_MUSEUM_TICKET
- jr z, .asm_f1c58
-.asm_f1c4f
- ld hl, Museum1FText_f1d25
- call PrintText
- jp .asm_f1cfc
-
-.asm_f1c58
- ld a, $13
- ld [wTextBoxID], a
- call DisplayTextBoxID
- xor a
- ld [hJoyHeld], a
- ld hl, Museum1FText_f1d02
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_f1cbf
- xor a
- ld [hMoney], a
- ld [hMoney + 1], a
- ld a, $50
- ld [hMoney + 2], a
- call HasEnoughMoney
- jr nc, .asm_f1c89
- ld hl, Museum1FText_f1d0c
- call PrintText
- jp .asm_f1cbf
-
-.asm_f1c89
- ld hl, Museum1FText_f1d07
- call PrintText
- SetEvent EVENT_BOUGHT_MUSEUM_TICKET
- xor a
- ld [wPriceTemp], a
- ld [wPriceTemp + 1], a
- ld a, $50
- ld [wPriceTemp + 2], a
- ld hl, wPriceTemp + 2
- ld de, wPlayerMoney + 2
- ld c, 3
- predef SubBCDPredef
- ld a, $13
- ld [wTextBoxID], a
- call DisplayTextBoxID
- ld a, SFX_PURCHASE
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- jr .asm_f1cd7
-
-.asm_f1cbf
- ld hl, Museum1FText_f1cfd
- call PrintText
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- call UpdateSprites
- jr .asm_f1cfc
-
-.asm_f1cd7
- ld a, $1
- ld [wMuseum1FCurScript], a
- jr .asm_f1cfc
-
-.asm_f1cde
- ld hl, Museum1FText_f1d11
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- cp 0
- jr nz, .asm_f1cf6
- ld hl, Museum1FText_f1d16
- call PrintText
- jr .asm_f1cfc
-
-.asm_f1cf6
- ld hl, Museum1FText_f1d1b
- call PrintText
-.asm_f1cfc
- ret
-
-Museum1FText_f1cfd:
- TX_FAR _Museum1FText_5c21a
- db "@"
-
-Museum1FText_f1d02:
- TX_FAR _Museum1FText_5c21f
- db "@"
-
-Museum1FText_f1d07:
- TX_FAR _Museum1FText_5c224
- db "@"
-
-Museum1FText_f1d0c:
- TX_FAR _Museum1FText_5c229
- db "@"
-
-Museum1FText_f1d11:
- TX_FAR _Museum1FText_5c22e
- db "@"
-
-Museum1FText_f1d16:
- TX_FAR _Museum1FText_5c233
- db "@"
-
-Museum1FText_f1d1b:
- TX_FAR _Museum1FText_5c238
- db "@"
-
-Museum1FText_f1d20:
- TX_FAR _Museum1FText_5c23d
- db "@"
-
-Museum1FText_f1d25:
- TX_FAR _Museum1FText_5c242
- db "@"
-
-Func_f1d2a:
- ld hl, Museum1FText_f1d31
- call PrintText
- ret
-
-Museum1FText_f1d31:
- TX_FAR _Museum1FText_5c251
- db "@"
-
-Func_f1d36:
- CheckEvent EVENT_GOT_OLD_AMBER
- jr nz, .asm_f1d64
- ld hl, Museum1FText_f1d6b
- call PrintText
- lb bc, OLD_AMBER, 1
- call GiveItem
- jr nc, .asm_f1d5f
- SetEvent EVENT_GOT_OLD_AMBER
- ld a, HS_OLD_AMBER
- ld [wMissableObjectIndex], a
- predef HideObject
- ld hl, Museum1FText_f1d70
- jr .asm_f1d67
-
-.asm_f1d5f
- ld hl, Museum1FText_f1d7b
- jr .asm_f1d67
-
-.asm_f1d64
- ld hl, Museum1FText_f1d76
-.asm_f1d67
- call PrintText
- ret
-
-Museum1FText_f1d6b:
- TX_FAR _Museum1FText_5c28e
- db "@"
-
-Museum1FText_f1d70:
- TX_FAR _ReceivedOldAmberText
- TX_SFX_ITEM
- db "@"
-
-Museum1FText_f1d76:
- TX_FAR _Museum1FText_5c299
- db "@"
-
-Museum1FText_f1d7b:
- TX_FAR _Museum1FText_5c29e
- db "@"
-
-Func_f1d80:
- ld hl, Museum1FText_f1d87
- call PrintText
- ret
-
-Museum1FText_f1d87:
- TX_FAR _Museum1FText_5c2ad
- db "@"
-
-Func_f1d8c:
- ld hl, Museum1FText_f1d93
- call PrintText
- ret
-
-Museum1FText_f1d93:
- TX_FAR _Museum1FText_5c2bc
- db "@"
diff --git a/scripts/museum2f.asm b/scripts/museum2f.asm
deleted file mode 100755
index 93a8396e..00000000
--- a/scripts/museum2f.asm
+++ /dev/null
@@ -1,71 +0,0 @@
-Museum2FScript:
- call EnableAutoTextBoxDrawing
- ret
-
-Museum2FTextPointers:
- dw Museum2FText1
- dw Museum2FText2
- dw Museum2FText3
- dw Museum2FText4
- dw Museum2FText5
- dw Museum2FText6
- dw Museum2FText7
-
-Museum2FText1:
- TX_FAR _Museum2FText1
- db "@"
-
-Museum2FText2:
- TX_FAR _Museum2FText2
- db "@"
-
-Museum2FText3:
- TX_FAR _Museum2FText3
- db "@"
-
-Museum2FText4:
- TX_FAR _Museum2FText4
- db "@"
-
-Museum2FText5:
- TX_ASM
- ld a, [wd472]
- bit 7, a
- jr nz, .asm_5c1f6
- ld hl, Museum2FText_5c20e
- call PrintText
- jr .asm_5c20b
-
-.asm_5c1f6
- ld a, [wPikachuHappiness]
- cp 101
- jr c, .asm_5c205
- ld hl, Museum2FText_5c218
- call PrintText
- jr .asm_5c20b
-
-.asm_5c205
- ld hl, Museum2FText_5c213
- call PrintText
-.asm_5c20b
- jp TextScriptEnd
-
-Museum2FText_5c20e:
- TX_FAR _Museum2FText5
- db "@"
-
-Museum2FText_5c213:
- TX_FAR _Museum2FPikachuText1
- db "@"
-
-Museum2FText_5c218:
- TX_FAR _Museum2FPikachuText2
- db "@"
-
-Museum2FText6:
- TX_FAR _Museum2FText6
- db "@"
-
-Museum2FText7:
- TX_FAR _Museum2FText7
- db "@"
diff --git a/scripts/namerater.asm b/scripts/namerater.asm
deleted file mode 100755
index 160948ac..00000000
--- a/scripts/namerater.asm
+++ /dev/null
@@ -1,107 +0,0 @@
-NameRaterScript:
- jp EnableAutoTextBoxDrawing
-
-NameRaterScript_1da15:
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- ret
-
-NameRaterScript_1da20:
- ld hl, wPartyMonOT
- ld bc, NAME_LENGTH
- ld a, [wWhichPokemon]
- call AddNTimes
- ld de, wPlayerName
- ld c, NAME_LENGTH
- call .asm_1da47
- jr c, .asm_1da52
- ld hl, wPartyMon1OTID
- ld bc, wPartyMon2 - wPartyMon1
- ld a, [wWhichPokemon]
- call AddNTimes
- ld de, wPlayerID
- ld c, $2
-.asm_1da47
- ld a, [de]
- cp [hl]
- jr nz, .asm_1da52
- inc hl
- inc de
- dec c
- jr nz, .asm_1da47
- and a
- ret
-.asm_1da52
- scf
- ret
-
-NameRaterTextPointers:
- dw NameRaterText1
-
-NameRaterText1:
- TX_ASM
- call SaveScreenTilesToBuffer2
- ld hl, NameRaterText_1dab3
- call NameRaterScript_1da15
- jr nz, .asm_1daae
- ld hl, NameRaterText_1dab8
- call PrintText
- xor a
- ld [wPartyMenuTypeOrMessageID], a
- ld [wUpdateSpritesEnabled], a
- ld [wMenuItemToSwap], a
- call DisplayPartyMenu
- push af
- call GBPalWhiteOutWithDelay3
- call RestoreScreenTilesAndReloadTilePatterns
- call LoadGBPal
- pop af
- jr c, .asm_1daae
- call GetPartyMonName2
- call NameRaterScript_1da20
- ld hl, NameRaterText_1dad1
- jr c, .asm_1daa8
- ld hl, NameRaterText_1dabd
- call NameRaterScript_1da15
- jr nz, .asm_1daae
- ld hl, NameRaterText_1dac2
- call PrintText
- callba DisplayNameRaterScreen
- jr c, .asm_1daae
- ld hl, NameRaterText_1dac7
-.asm_1daa8
- call PrintText
- jp TextScriptEnd
-.asm_1daae
- ld hl, NameRaterText_1dacc
- jr .asm_1daa8
-
-NameRaterText_1dab3:
- TX_FAR _NameRaterText_1dab3
- db "@"
-
-NameRaterText_1dab8:
- TX_FAR _NameRaterText_1dab8
- db "@"
-
-NameRaterText_1dabd:
- TX_FAR _NameRaterText_1dabd
- db "@"
-
-NameRaterText_1dac2:
- TX_FAR _NameRaterText_1dac2
- db "@"
-
-NameRaterText_1dac7:
- TX_FAR _NameRaterText_1dac7
- db "@"
-
-NameRaterText_1dacc:
- TX_FAR _NameRaterText_1dacc
- db "@"
-
-NameRaterText_1dad1:
- TX_FAR _NameRaterText_1dad1
- db "@"
diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm
deleted file mode 100755
index ad9572e7..00000000
--- a/scripts/oakslab.asm
+++ /dev/null
@@ -1,1160 +0,0 @@
-OaksLabScript:
- CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
- call nz, OaksLabScript_1d076
- ld a, $1
- ld [wAutoTextBoxDrawingControl], a
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, OaksLabScriptPointers
- ld a, [wOaksLabCurScript]
- call JumpTable
- ret
-
-OaksLabScriptPointers:
- dw OaksLabScript0
- dw OaksLabScript1
- dw OaksLabScript2
- dw OaksLabScript3
- dw OaksLabScript4
- dw OaksLabScript5
- dw OaksLabScript6
- dw OaksLabScript7
- dw OaksLabScript8
- dw OaksLabScript9
- dw OaksLabScript10
- dw OaksLabScript11
- dw OaksLabScript12
- dw OaksLabScript13
- dw OaksLabScript14
- dw OaksLabScript15
- dw OaksLabScript16
- dw OaksLabScript17
- dw OaksLabScript18
- dw OaksLabScript19
- dw OaksLabScript20
- dw OaksLabScript21
- dw OaksLabScript22
-
-OaksLabScript0:
- CheckEvent EVENT_OAK_APPEARED_IN_PALLET
- ret z
- ld a, [wNPCMovementScriptFunctionNum]
- and a
- ret nz
- ld a, HS_OAKS_LAB_OAK_2
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld hl, wd72e
- res 4, [hl]
-
- ld a, $1
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript1:
- ld a, $6
- ld [H_SPRITEINDEX], a
- ld de, OakEntryMovement
- call MoveSprite
-
- ld a, $2
- ld [wOaksLabCurScript], a
- ret
-
-OakEntryMovement:
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db $FF
-
-OaksLabScript2:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_OAKS_LAB_OAK_2
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_OAKS_LAB_OAK_1
- ld [wMissableObjectIndex], a
- predef ShowObject
-
- ld a, $3
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript3:
- call Delay3
- ld hl, wSimulatedJoypadStatesEnd
- ld de, PlayerEntryMovementRLE
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $1
- ld [H_SPRITEINDEX], a
- xor a
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $3
- ld [H_SPRITEINDEX], a
- xor a
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
-
- ld a, $4
- ld [wOaksLabCurScript], a
- ret
-
-PlayerEntryMovementRLE:
- db D_UP,$8
- db $ff
-
-OaksLabScript4:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- SetEvent EVENT_FOLLOWED_OAK_INTO_LAB
- SetEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_UP
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld hl, wFlags_D733
- res 1, [hl]
- call PlayDefaultMusic
-
- ld a, $5
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript5:
- SetEvent EVENT_OAK_ASKED_TO_CHOOSE_MON
- ld a, $fc
- ld [wJoyIgnore], a
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld a, $e
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- ld a, SPRITE_FACING_UP
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- ld a, $f
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld a, $10
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
-
- ld a, $6
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript6:
- ld a, [wYCoord]
- cp $6
- ret nz
- ld a, $3
- ld [H_SPRITEINDEX], a
- xor a ; SPRITE_FACING_DOWN
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $1
- ld [H_SPRITEINDEX], a
- xor a
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- call UpdateSprites
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
-
- ld a, $7
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript7:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
-
- ld a, $6
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript8:
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- ld de, .SonyPushesPlayerAwayFromEeveeBall
- call MoveSprite
- ld a, $9
- ld [wOaksLabCurScript], a
- ret
-
-.SonyPushesPlayerAwayFromEeveeBall
- db $00
- db $07
- db $07
- db $07
- db $FF
-
-OaksLabScript9:
- ld a, [wd730]
- bit 0, a
- jr nz, .asm_1c564
- ld a, HS_STARTER_BALL_1
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_UP
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, 1
- ld [wRivalStarter], a
- ld a, EEVEE
- ld [wd11e], a
- call GetMonName
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, $11
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-
- ld a, $a
- ld [wOaksLabCurScript], a
- ret
-
-.asm_1c564
- ld a, [wYCoord]
- cp $4
- ret nz
- ld a, [wNPCNumScriptedSteps]
- cp 1
- ret nz
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- ld a, $2
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_RIGHT
- ld [wSimulatedJoypadStatesEnd], a
- ld [wSimulatedJoypadStatesEnd + 1], a
- call StartSimulatingJoypadStates
- ret
-
-OaksLabScript10:
- ld a, [wYCoord]
- cp $4
- jr z, .asm_1c599
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_LEFT
- ld [wSimulatedJoypadStatesEnd], a
- jr .asm_1c5a6
-
-.asm_1c599
- ld hl, wSimulatedJoypadStatesEnd
- ld de, OaksLabRLE_PlayerWalksToOak
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
-.asm_1c5a6
- call StartSimulatingJoypadStates
- ld a, $b
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabRLE_PlayerWalksToOak:
- db D_UP, 2
- db D_LEFT, 3
- db D_DOWN, 1
- db D_LEFT, 1
- db $FF
-
-OaksLabScript11:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld a, $12
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
-
- ld a, $c
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript12:
- ld a, [wYCoord]
- cp $6
- ret nz
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- xor a
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $1
- ld [hNPCPlayerRelativePosPerspective], a
- ld a, $1
- swap a
- ld [hNPCPlayerYDistance], a
- predef CalcPositionOfPlayerRelativeToNPC
- ld a, [hNPCPlayerYDistance]
- dec a
- ld [hNPCPlayerYDistance], a
- predef FindPathToPlayer
- ld de, wNPCMovementDirections2
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $d
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript13:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $1
- ld [wSpriteIndex], a
- call GetSpritePosition1
- ld a, OPP_SONY1
- ld [wCurOpponent], a
- ld a, $1
- ld [wTrainerNo], a
- ld hl, OaksLabRivalDefeatedText
- ld de, OaksLabRivalBeatYouText
- call SaveEndBattleTextPointers
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- xor a
- ld [wJoyIgnore], a
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- ld a, $e
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript14:
- ld a, $ff
- ld [wJoyIgnore], a
-
- ; If you beat your rival here, his Eevee will evolve into
- ; Jolteon if you beat him on Route 22, or Flareon if you
- ; skip or lose that battle.
- ; Otherwise, it will evolve into Vaporeon.
- ld a, [wBattleResult]
- and a
- ld b, $3
- jr nz, .asm_1c660
- ld b, $2
-.asm_1c660
- ld a, b
- ld [wRivalStarter], a
-
- ld a, $ff ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- call UpdateSprites
- ld a, $1
- ld [wSpriteIndex], a
- call SetSpritePosition1
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- xor a
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- predef HealParty
- SetEvent EVENT_BATTLED_RIVAL_IN_OAKS_LAB
- ld a, $f
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript15:
- ld c, 20
- call DelayFrames
- ld a, $c
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- callba Music_RivalAlternateStart
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- ld de, .OaksLabMovement_RivalWalksOut1
- call MoveSprite
- ld a, [wXCoord]
- cp $4
- jr nz, .asm_1c6bb
- ld a, NPC_MOVEMENT_RIGHT
- jr .asm_1c6bd
-
-.asm_1c6bb
- ld a, NPC_MOVEMENT_LEFT
-.asm_1c6bd
- ld [wNPCMovementDirections], a
- ld a, $10
- ld [wOaksLabCurScript], a
- ret
-
-.OaksLabMovement_RivalWalksOut1
- db $e0
- db $00
- db $04
- db $04
- db $04
- db $04
- db $04
- db $ff
-
-OaksLabScript16:
- ld a, [wd730]
- bit 0, a
- jr nz, .checkRivalPosition
- ld a, $ff ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, HS_OAKS_LAB_RIVAL
- ld [wMissableObjectIndex], a
- predef HideObject
- call PlayDefaultMusic
- ld a, $11
- ld [wOaksLabCurScript], a
- ret
-
-.checkRivalPosition
- ld a, [wNPCNumScriptedSteps]
- cp 5
- jr nz, .turnPlayerDown
- ld a, [wXCoord]
- cp 4
- jr nz, .turnPlayerLeft
- ld a, SPRITE_FACING_RIGHT
- jr .done
-
-.turnPlayerLeft
- ld a, SPRITE_FACING_LEFT
- jr .done
-
-.turnPlayerDown
- cp 4
- ret nz
- xor a
-.done
- ld [wSpritePlayerStateData1FacingDirection], a
- ret
-
-OaksLabScript17:
-; Pikachu comes out
- ld a, SPRITE_FACING_UP
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, $2
- ld [wPikachuSpawnState], a
- callba SchedulePikachuSpawnForAfterText
- call EnablePikachuOverworldSpriteDrawing
- ld a, $1a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $12
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript18:
- ld a, $1b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
- ld a, $16
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript19:
- xor a
- ld [hJoyHeld], a
- call EnableAutoTextBoxDrawing
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld a, $13
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- callab Func_f1be0
- call OaksLabScript_1c8b9
- ld a, HS_OAKS_LAB_RIVAL
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, [wNPCMovementDirections2Index]
- ld [wSavedNPCMovementDirections2Index], a
- ld b, 0
- ld c, a
- ld hl, wNPCMovementDirections2
- ld a, NPC_MOVEMENT_UP
- call FillMemory
- ld [hl], $ff
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- ld de, wNPCMovementDirections2
- call MoveSprite
- ld a, $14
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript_1c78e:
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- ld a, SPRITE_FACING_UP
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- xor a
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ret
-
-OaksLabScript20:
- ld a, [wd730]
- bit 0, a
- ret nz
- call EnableAutoTextBoxDrawing
- call PlayDefaultMusic
- ld a, $ff ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- call OaksLabScript_1c78e
- ld a, $14
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call DelayFrame
- call OaksLabScript_1c78e
- ld a, $15
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call DelayFrame
- call OaksLabScript_1c78e
- ld a, $16
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call DelayFrame
- ld a, $17
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld a, HS_POKEDEX_1
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_POKEDEX_2
- ld [wMissableObjectIndex], a
- predef HideObject
- call OaksLabScript_1c78e
- ld a, $18
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- ld a, SPRITE_FACING_RIGHT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- call Delay3
- ld a, $19
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_POKEDEX
- ld a, $1
- ld [wViridianCityCurScript], a
- SetEvent EVENT_OAK_GOT_PARCEL
- ld a, HS_LYING_OLD_MAN
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_OLD_MAN
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, [wSavedNPCMovementDirections2Index]
- ld b, 0
- ld c, a
- ld hl, wNPCMovementDirections2
- xor a
- call FillMemory
- ld [hl], $ff
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- ld de, wNPCMovementDirections2
- call MoveSprite
- ld a, $15
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript21:
- ld a, [wd730]
- bit 0, a
- ret nz
- call PlayDefaultMusic
- ld a, HS_OAKS_LAB_RIVAL
- ld [wMissableObjectIndex], a
- predef HideObject
- SetEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
- ResetEventReuseHL EVENT_2ND_ROUTE22_RIVAL_BATTLE
- SetEventReuseHL EVENT_ROUTE22_RIVAL_WANTS_BATTLE
- ld a, HS_ROUTE_22_RIVAL_1
- ld [wMissableObjectIndex], a
- predef ShowObject
- xor a
- ld [wJoyIgnore], a
- ld a, $16
- ld [wOaksLabCurScript], a
- ret
-
-OaksLabScript22:
- ret
-
-OaksLabScript_RemoveParcel:
- ld hl, wBagItems
- ld bc, 0
-.loop
- ld a, [hli]
- cp $ff
- ret z
- cp OAKS_PARCEL
- jr z, .foundParcel
- inc hl
- inc c
- jr .loop
-
-.foundParcel
- ld hl, wNumBagItems
- ld a, c
- ld [wWhichPokemon], a
- ld a, 1
- ld [wItemQuantity], a
- call RemoveItemFromInventory
- ret
-
-OaksLabScript_1c8b9:
- ld a, $7c
- ld [$ffeb], a
- ld a, $8
- ld [$ffee], a
- ld a, [wYCoord]
- cp 3
- jr nz, .asm_1c8d3
- ld a, $4
- ld [wNPCMovementDirections2Index], a
- ld a, $30
- ld b, $b
- jr .asm_1c8f6
-
-.asm_1c8d3
- cp $1
- jr nz, .asm_1c8e2
- ld a, $2
- ld [wNPCMovementDirections2Index], a
- ld a, $30
- ld b, $9
- jr .asm_1c8f6
-
-.asm_1c8e2
- ld a, $3
- ld [wNPCMovementDirections2Index], a
- ld b, $a
- ld a, [wXCoord]
- cp $4
- jr nz, .asm_1c8f4
- ld a, $40
- jr .asm_1c8f6
-
-.asm_1c8f4
- ld a, $20
-.asm_1c8f6
- ld [$ffec], a
- ld a, b
- ld [$ffed], a
- ld a, $1
- ld [wSpriteIndex], a
- call SetSpritePosition1
- ret
-
-OaksLabScript_1d076:
- ld hl, OaksLabTextPointers2
- ld a, l
- ld [wMapTextPtr], a
- ld a, h
- ld [wMapTextPtr + 1], a
- ret
-
-OaksLabTextPointers:
- dw OaksLabText1
- dw OaksLabText2
- dw OaksLabText3
- dw OaksLabText4
- dw OaksLabText5
- dw OaksLabText6
- dw OaksLabText7
- dw OaksLabText8
- dw OaksLabText9
- dw OaksLabText10
- dw OaksLabText11
- dw OaksLabText12
- dw OaksLabText13
- dw OaksLabText14
- dw OaksLabText15
- dw OaksLabText16
- dw OaksLabText17
- dw OaksLabText18
- dw OaksLabText19
- dw OaksLabText20
- dw OaksLabText21
- dw OaksLabText22
- dw OaksLabText23
- dw OaksLabText24
- dw OaksLabText25
- dw OaksLabText26
- dw OaksLabText27
-
-OaksLabTextPointers2:
- dw OaksLabText1
- dw OaksLabText2
- dw OaksLabText3
- dw OaksLabText4
- dw OaksLabText5
- dw OaksLabText6
- dw OaksLabText7
- dw OaksLabText8
- dw OaksLabText9
-
-OaksLabText1:
- TX_ASM
- CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
- jr nz, .beforeChooseMon
- ld hl, OaksLabGaryText1
- call PrintText
- jr .asm_1c97a
-
-.beforeChooseMon
- CheckEventReuseA EVENT_GOT_STARTER
- jr nz, .afterChooseMon
- ld hl, OaksLabText40
- call PrintText
- jr .asm_1c97a
-
-.afterChooseMon
- ld hl, OaksLabText41
- call PrintText
-.asm_1c97a
- jp TextScriptEnd
-
-OaksLabGaryText1:
- TX_FAR _OaksLabGaryText1
- db "@"
-
-OaksLabText40:
- TX_FAR _OaksLabText40
- db "@"
-
-OaksLabText41:
- TX_FAR _OaksLabText41
- db "@"
-
-OaksLabText2:
- TX_ASM
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- CheckEvent EVENT_OAK_ASKED_TO_CHOOSE_MON
- jr nz, OaksLabScript_1c9ac
- ld a, $0
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, OaksLabText39
- call PrintText
- jp TextScriptEnd
-
-OaksLabText39:
- TX_FAR _OaksLabText39
- db "@"
-
-OaksLabScript_1c9ac:
- ld a, $1
- ld [wEmotionBubbleSpriteIndex], a
- xor a ; EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld a, $8
- ld [wOaksLabCurScript], a
- jp TextScriptEnd
-
-OaksLabText3:
- TX_ASM
- CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
- jr nz, .asm_1c9d9
- ld hl, wPokedexOwned
- ld b, wPokedexOwnedEnd - wPokedexOwned
- call CountSetBits
- ld a, [wNumSetBits]
- cp 2
- jr c, .asm_1c9ec
-.asm_1c9d9
- ld hl, OaksLabText_1ca9f
- call PrintText
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- predef DisplayDexRating
- jp .asm_1ca6f
-
-.asm_1c9ec
- ld b, POKE_BALL
- call IsItemInBag
- jr nz, .asm_1ca69
- ld hl, wPokedexOwned
- ld b, wPokedexOwnedEnd - wPokedexOwned
- call CountSetBits
- ld a, [wNumSetBits]
- cp 2
- jr nc, .asm_1ca69
- CheckEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
- jr nz, .asm_1ca52
- CheckEvent EVENT_GOT_POKEDEX
- jr nz, .asm_1ca4a
- CheckEventReuseA EVENT_BATTLED_RIVAL_IN_OAKS_LAB
- jr nz, .asm_1ca2b
- ld a, [wd72e]
- bit 3, a
- jr nz, .asm_1ca23
- ld hl, OaksLabText_1ca72
- call PrintText
- jr .asm_1ca6f
-
-.asm_1ca23
- ld hl, OaksLabText_1ca77
- call PrintText
- jr .asm_1ca6f
-
-.asm_1ca2b
- ld b, OAKS_PARCEL
- call IsItemInBag
- jr nz, .asm_1ca3a
- ld hl, OaksLabText_1ca7c
- call PrintText
- jr .asm_1ca6f
-
-.asm_1ca3a
- ld hl, OaksLabDeliverParcelText
- call PrintText
- call OaksLabScript_RemoveParcel
- ld a, $13
- ld [wOaksLabCurScript], a
- jr .asm_1ca6f
-
-.asm_1ca4a
- ld hl, OaksLabAroundWorldText
- call PrintText
- jr .asm_1ca6f
-
-.asm_1ca52
- CheckAndSetEvent EVENT_GOT_POKEBALLS_FROM_OAK
- jr nz, .asm_1ca69
- lb bc, POKE_BALL, 5
- call GiveItem
- ld hl, OaksLabGivePokeballsText
- call PrintText
- jr .asm_1ca6f
-
-.asm_1ca69
- ld hl, OaksLabPleaseVisitText
- call PrintText
-.asm_1ca6f
- jp TextScriptEnd
-
-OaksLabText_1ca72:
- TX_FAR _OaksLabPikachuText
- db "@"
-
-OaksLabText_1ca77:
- TX_FAR _OaksLabText_1d2f5
- db "@"
-
-OaksLabText_1ca7c:
- TX_FAR _OaksLabText_1d2fa
- db "@"
-
-OaksLabDeliverParcelText:
- TX_FAR _OaksLabDeliverParcelText1
- TX_SFX_KEY_ITEM
- TX_FAR _OaksLabDeliverParcelText2
- db "@"
-
-OaksLabAroundWorldText:
- TX_FAR _OaksLabAroundWorldText
- db "@"
-
-OaksLabGivePokeballsText:
- TX_FAR _OaksLabGivePokeballsText1
- TX_SFX_KEY_ITEM
- TX_FAR _OaksLabGivePokeballsText2
- db "@"
-
-OaksLabPleaseVisitText:
- TX_FAR _OaksLabPleaseVisitText
- db "@"
-
-OaksLabText_1ca9f:
- TX_FAR _OaksLabText_1d31d
- db "@"
-
-OaksLabText4:
-OaksLabText5:
- TX_ASM
- ld hl, OaksLabText_1caae
- call PrintText
- jp TextScriptEnd
-
-OaksLabText_1caae:
- TX_FAR _OaksLabText_1d32c
- db "@"
-
-OaksLabText6:
- TX_FAR _OaksLabText8
- db "@"
-
-OaksLabText7:
- TX_ASM
- ld hl, OaksLabText_1cac2
- call PrintText
- jp TextScriptEnd
-
-OaksLabText_1cac2:
- TX_FAR _OaksLabText_1d340
- db "@"
-
-OaksLabText13:
- TX_ASM
- ld hl, OaksLabRivalWaitingText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalWaitingText:
- TX_FAR _OaksLabRivalWaitingText
- db "@"
-
-OaksLabText14:
- TX_ASM
- ld hl, OaksLabChooseMonText
- call PrintText
- jp TextScriptEnd
-
-OaksLabChooseMonText:
- TX_FAR _OaksLabChooseMonText
- db "@"
-
-OaksLabText15:
- TX_ASM
- ld hl, OaksLabRivalInterjectionText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalInterjectionText:
- TX_FAR _OaksLabRivalInterjectionText
- db "@"
-
-OaksLabText16:
- TX_ASM
- ld hl, OaksLabBePatientText
- call PrintText
- jp TextScriptEnd
-
-OaksLabBePatientText:
- TX_FAR _OaksLabBePatientText
- db "@"
-
-OaksLabText17:
- TX_ASM
- ld hl, OaksLabRivalTakesText1
- call PrintText
- ld hl, OaksLabRivalTakesText2
- call PrintText
- ld hl, OaksLabRivalTakesText3
- call PrintText
- ld hl, OaksLabRivalTakesText4
- call PrintText
- ld hl, OaksLabRivalTakesText5
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalTakesText1:
- TX_FAR _OaksLabRivalTakesText1
- db "@"
-
-OaksLabRivalTakesText2:
- TX_FAR _OaksLabRivalTakesText2
- TX_SFX_KEY_ITEM
- db "@"
-
-OaksLabRivalTakesText3:
- TX_FAR _OaksLabRivalTakesText3
- db "@"
-
-OaksLabRivalTakesText4:
- TX_FAR _OaksLabRivalTakesText4
- db "@"
-
-OaksLabRivalTakesText5:
- TX_FAR _OaksLabRivalTakesText5
- db "@"
-
-OaksLabText18:
- TX_ASM
- ld a, PIKACHU
- ld [wPlayerStarter], a
- ld [wd11e], a
- call GetMonName
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, OaksLabOakGivesText
- call PrintText
- ld hl, OaksLabRecievedText
- call PrintText
- xor a
- ld [wMonDataLocation], a
- ld a, 5
- ld [wCurEnemyLVL], a
- ld a, PIKACHU
- ld [wd11e], a
- ld [wcf91], a
- call AddPartyMon
- ld a, 163
- ld [wPartyMon1CatchRate], a
- call DisablePikachuOverworldSpriteDrawing
- SetEvent EVENT_GOT_STARTER
- ld hl, wd72e
- set 3, [hl]
- jp TextScriptEnd
-
-OaksLabOakGivesText:
- TX_FAR _OaksLabOakGivesText
- db "@"
-
-OaksLabRecievedText:
- TX_FAR _OaksLabReceivedText
- TX_SFX_KEY_ITEM
- db "@"
-
-OaksLabText10:
- TX_ASM
- ld hl, OaksLabLeavingText
- call PrintText
- jp TextScriptEnd
-
-OaksLabLeavingText:
- TX_FAR _OaksLabLeavingText
- db "@"
-
-OaksLabText11:
- TX_ASM
- ld hl, OaksLabRivalChallengeText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalChallengeText:
- TX_FAR _OaksLabRivalChallengeText
- db "@"
-
-OaksLabRivalDefeatedText:
- TX_FAR _OaksLabText_1d3be
- db "@"
-
-OaksLabRivalBeatYouText:
- TX_FAR _OaksLabText_1d3c3
- db "@"
-
-OaksLabText12:
- TX_ASM
- ld hl, OaksLabRivalToughenUpText
- call PrintText
- jp TextScriptEnd
-
-OaksLabRivalToughenUpText:
- TX_FAR _OaksLabRivalToughenUpText
- db "@"
-
-OaksLabText26:
- TX_ASM
- ldpikacry e, PikachuCry2
- callab PlayPikachuSoundClip
- ld hl, OaksLabPikachuDislikesPokeballsText1
- call PrintText
- jp TextScriptEnd
-
-OaksLabPikachuDislikesPokeballsText1:
- TX_FAR _OaksLabPikachuDislikesPokeballsText1
- db "@"
-
-OaksLabText27:
- TX_ASM
- ld hl, OaksLabPikachuDislikesPokeballsText2
- call PrintText
- jp TextScriptEnd
-
-OaksLabPikachuDislikesPokeballsText2:
- TX_FAR _OaksLabPikachuDislikesPokeballsText2
- db "@"
-
-OaksLabText19:
- TX_FAR _OaksLabText21
- db "@"
-
-OaksLabText20:
- TX_FAR _OaksLabText22
- db "@"
-
-OaksLabText21:
- TX_FAR _OaksLabText23
- db "@"
-
-OaksLabText22:
- TX_FAR _OaksLabText24
- db "@"
-
-OaksLabText23:
- TX_FAR _OaksLabText25
- TX_SFX_KEY_ITEM
- db "@"
-
-OaksLabText24:
- TX_FAR _OaksLabText26
- db "@"
-
-OaksLabText25:
- TX_FAR _OaksLabText27
- db "@"
-
-OaksLabText8:
-OaksLabText9:
- TX_ASM
- ld hl, OaksLabText_1c31d
- call PrintText
- jp TextScriptEnd
-
-OaksLabText_1c31d:
- TX_FAR _OaksLabText_1d405
- db "@"
diff --git a/scripts/pallettown.asm b/scripts/pallettown.asm
deleted file mode 100755
index e98464ce..00000000
--- a/scripts/pallettown.asm
+++ /dev/null
@@ -1,302 +0,0 @@
-PalletTownScript:
- CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
- jr z, .next
- SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
-.next
- call EnableAutoTextBoxDrawing
- ld hl, PalletTownScriptPointers
- ld a, [wPalletTownCurScript]
- jp JumpTable
-
-PalletTownScriptPointers:
- dw PalletTownScript0
- dw PalletTownScript1
- dw PalletTownScript2
- dw PalletTownScript3
- dw PalletTownScript4
- dw PalletTownScript5
- dw PalletTownScript6
- dw PalletTownScript7
- dw PalletTownScript8
- dw PalletTownScript9
-
-PalletTownScript0:
- CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB
- ret nz
- ld a, [wYCoord]
- cp 0 ; is player at north exit?
- ret nz
- ResetEvent EVENT_PLAYER_AT_RIGHT_EXIT_TO_PALLET_TOWN
- ld a, [wXCoord]
- cp 10
- jr z, .asm_18e40
- SetEventReuseHL EVENT_PLAYER_AT_RIGHT_EXIT_TO_PALLET_TOWN
-.asm_18e40
- xor a
- ld [hJoyHeld], a
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- call StopAllMusic
- ld a, BANK(Music_MeetProfOak)
- ld c, a
- ld a, MUSIC_MEET_PROF_OAK
- call PlayMusic
- SetEvent EVENT_OAK_APPEARED_IN_PALLET
-
- ; trigger the next script
- ld a, 1
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript1:
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- xor a
- ld [wcf0d], a
- ld a, 1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $FF
- ld [wJoyIgnore], a
- ld hl, wSpriteStateData2 + 1 * $10 + 4
- ld a, $8
- ld [hli], a
- ld a, $e
- ld [hl], a
- ld a, HS_PALLET_TOWN_OAK
- ld [wMissableObjectIndex], a
- predef ShowObject
-
- ; trigger the next script
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- ld a, SPRITE_FACING_UP
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- ld a, 2
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript2:
- call Delay3
- ld a, 0
- ld [wYCoord], a
- ld a, 1
- ld [hNPCPlayerRelativePosPerspective], a
- ld a, 1
- swap a
- ld [hNPCSpriteOffset], a
- predef CalcPositionOfPlayerRelativeToNPC
- ld hl, hNPCPlayerYDistance
- dec [hl]
- predef FindPathToPlayer ; load Oak’s movement into wNPCMovementDirections2
- ld de, wNPCMovementDirections2
- ld a, 1 ; oak
- ld [H_SPRITEINDEX], a
- call MoveSprite
-
- ; trigger the next script
- ld a, 3
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript3:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, 1
- ld [wcf0d], a
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- ld a, SPRITE_FACING_UP
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- ld a, 1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ; oak faces the horizontally adjacent patch of grass to face pikachu
- ld a, $FF
- ld [wJoyIgnore], a
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- CheckEvent EVENT_PLAYER_AT_RIGHT_EXIT_TO_PALLET_TOWN
- ld a, SPRITE_FACING_RIGHT
- jr z, .asm_18f01
- ld a, SPRITE_FACING_LEFT
-.asm_18f01
- ld [wSpriteStateData1 + 1 * $10 + 9], a
-
- ; trigger the next script
- ld a, 4
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript4:
- ; start the pikachu battle
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- xor a
- ld [wListScrollOffset], a
- ld a, BATTLE_TYPE_PIKACHU
- ld [wBattleType], a
- ld a, PIKACHU
- ld [wCurOpponent], a
- ld a, 5
- ld [wCurEnemyLVL], a
-
- ; trigger the next script
- ld a, 5
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript5:
- ld a, $2
- ld [wcf0d], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- ld a, SPRITE_FACING_UP
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $ff
- ld [wJoyIgnore], a
-
- ; trigger the next script
- ld a, 6
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript6:
- xor a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, $1
- ld [wSpriteIndex], a
- xor a
- ld [wNPCMovementScriptFunctionNum], a
- ld a, $1
- ld [wNPCMovementScriptPointerTableNum], a
- ld a, [H_LOADEDROMBANK]
- ld [wNPCMovementScriptBank], a
-
- ; trigger the next script
- ld a, 7
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript7:
- ld a, [wNPCMovementScriptPointerTableNum]
- and a
- ret nz
-
- ; trigger the next script
- ld a, 8
- ld [wPalletTownCurScript], a
- ret
-
-PalletTownScript8:
- CheckEvent EVENT_DAISY_WALKING
- jr nz, .asm_18f9e
- and $3 ; (EVENT_GOT_TOWN_MAP | EVENT_ENTERED_BLUES_HOUSE)
- cp $3
- jr nz, .asm_18f9e
- SetEvent EVENT_DAISY_WALKING
- ld a, HS_DAISY_SITTING
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_DAISY_WALKING
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-
-.asm_18f9e
- CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
- ret z
- SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
-PalletTownScript9:
- ret
-
-PalletTownTextPointers:
- dw PalletTownText1
- dw PalletTownText2
- dw PalletTownText3
- dw PalletTownText4
- dw PalletTownText5
- dw PalletTownText6
- dw PalletTownText7
- dw PalletTownText8
-
-PalletTownText1:
- TX_ASM
- ld a, [wcf0d]
- and a
- jr nz, .next
- ld a, 1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, OakAppearsText
- jr .done
-.next
- dec a
- jr nz, .asm_18fd3
- ld hl, OakWalksUpText
- jr .done
-
-.asm_18fd3
- ld hl, PalletTownText_19002
-.done
- call PrintText
- jp TextScriptEnd
-
-OakAppearsText:
- TX_FAR _OakAppearsText
- TX_ASM
- ld c, 10
- call DelayFrames
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- ld a, 0
- ld [wEmotionBubbleSpriteIndex], a ; player's sprite
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- jp TextScriptEnd
-
-OakWalksUpText:
- TX_FAR _OakWalksUpText
- db "@"
-
-PalletTownText_19002:
- TX_FAR _OakWhewText
- db "@"
-
-PalletTownText8: ; girl
- TX_FAR _OakGrassText
- db "@"
-
-PalletTownText2: ; fat man
- TX_FAR _PalletTownText2
- db "@"
-
-PalletTownText3: ; sign by lab
- TX_FAR _PalletTownText3
- db "@"
-
-PalletTownText4: ; sign by fence
- TX_FAR _PalletTownText4
- db "@"
-
-PalletTownText5: ; sign by Red’s house
- TX_FAR _PalletTownText5
- db "@"
-
-PalletTownText6: ; sign by Blue’s house
- TX_FAR _PalletTownText6
- db "@"
-
-PalletTownText7:
- TX_FAR _PalletTownText7
- db "@"
diff --git a/scripts/pewtercity.asm b/scripts/pewtercity.asm
deleted file mode 100755
index 0456bb86..00000000
--- a/scripts/pewtercity.asm
+++ /dev/null
@@ -1,324 +0,0 @@
-PewterCityScript:
- call EnableAutoTextBoxDrawing
- ld hl, wd492
- res 7, [hl]
- ld hl, PewterCityScriptPointers
- ld a, [wPewterCityCurScript]
- call JumpTable
- ret
-
-PewterCityScriptPointers:
- dw PewterCityScript0
- dw PewterCityScript1
- dw PewterCityScript2
- dw PewterCityScript3
- dw PewterCityScript4
- dw PewterCityScript5
- dw PewterCityScript6
-
-PewterCityScript0:
- xor a
- ld [wMuseum1FCurScript], a
- ResetEvent EVENT_BOUGHT_MUSEUM_TICKET
- call PewterCityScript_1925e
- ret
-
-PewterCityScript_1925e:
- CheckEvent EVENT_BEAT_BROCK
- ret nz
- ld hl, CoordsData_19277
- call ArePlayerCoordsInArray
- ret nc
- ld a, $fc
- ld [wJoyIgnore], a
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-CoordsData_19277:
- db $11,$23
- db $11,$24
- db $12,$25
- db $13,$25
- db $ff
-
-PewterCityScript1:
- ld a, [wNPCMovementScriptPointerTableNum]
- and a
- ret nz
- ld a, $3
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_UP
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, SPRITE_FACING_UP
- ld [hSpriteImageIndex], a
- call SpriteFunc_34a1
- call PlayDefaultMusic
- ld hl, wFlags_0xcd60
- set 4, [hl]
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $3c
- ld [$ffeb], a
- ld a, $30
- ld [$ffec], a
- ld a, $c
- ld [$ffed], a
- ld a, $11
- ld [$ffee], a
- ld a, $3
- ld [wSpriteIndex], a
- call SetSpritePosition1
- ld a, $3
- ld [H_SPRITEINDEX], a
- ld de, MovementData_PewterMuseumGuyExit
- call MoveSprite
- ld a, $2
- ld [wPewterCityCurScript], a
- ret
-
-MovementData_PewterMuseumGuyExit:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-PewterCityScript2:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_MUSEUM_GUY
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, $3
- ld [wPewterCityCurScript], a
- ret
-
-PewterCityScript3:
- ld a, $3
- ld [wSpriteIndex], a
- call SetSpritePosition2
- ld a, HS_MUSEUM_GUY
- ld [wMissableObjectIndex], a
- predef ShowObject
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wPewterCityCurScript], a
- ret
-
-PewterCityScript4:
- ld a, [wNPCMovementScriptPointerTableNum]
- and a
- ret nz
- ld a, $5
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_LEFT
- ld [hSpriteFacingDirection], a
- call SpriteFunc_34a1
- call PlayDefaultMusic
- ld hl, wFlags_0xcd60
- set 4, [hl]
- ld a, $e
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $3c
- ld [$ffeb], a
- ld a, $40
- ld [$ffec], a
- ld a, $16
- ld [$ffed], a
- ld a, $10
- ld [$ffee], a
- ld a, $5
- ld [wSpriteIndex], a
- call SetSpritePosition1
- ld a, $5
- ld [H_SPRITEINDEX], a
- ld de, MovementData_PewterGymGuyExit
- call MoveSprite
- ld a, $5
- ld [wPewterCityCurScript], a
- ret
-
-MovementData_PewterGymGuyExit:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db $FF
-
-PewterCityScript5:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_GYM_GUY
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, $6
- ld [wPewterCityCurScript], a
- ret
-
-PewterCityScript6:
- ld a, $5
- ld [wSpriteIndex], a
- call SetSpritePosition2
- ld a, HS_GYM_GUY
- ld [wMissableObjectIndex], a
- predef ShowObject
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wPewterCityCurScript], a
- ret
-
-PewterCityTextPointers:
- dw PewterCityText1
- dw PewterCityText2
- dw PewterCityText3
- dw PewterCityText4
- dw PewterCityText5
- dw PewterCityText6
- dw PewterCityText7
- dw MartSignText
- dw PokeCenterSignText
- dw PewterCityText10
- dw PewterCityText11
- dw PewterCityText12
- dw PewterCityText13
- dw PewterCityText14
-
-PewterCityText1:
- TX_FAR _PewterCityText1
- db "@"
-
-PewterCityText2:
- TX_FAR _PewterCityText2
- db "@"
-
-PewterCityText3:
- TX_ASM
- ld hl, PewterCityText_193f1
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .playerDidNotGoIntoMuseum
- ld hl, PewterCityText_193f6
- call PrintText
- jr .done
-.playerDidNotGoIntoMuseum
- ld hl, PewterCityText_193fb
- call PrintText
- xor a
- ld [hJoyPressed], a
- ld [hJoyHeld], a
- ld [wNPCMovementScriptFunctionNum], a
- ld a, $2
- ld [wNPCMovementScriptPointerTableNum], a
- ld a, [H_LOADEDROMBANK]
- ld [wNPCMovementScriptBank], a
- ld a, $3
- ld [wSpriteIndex], a
- call GetSpritePosition2
- ld a, $1
- ld [wPewterCityCurScript], a
-.done
- jp TextScriptEnd
-
-PewterCityText_193f1:
- TX_FAR _PewterCityText_193f1
- db "@"
-
-PewterCityText_193f6:
- TX_FAR _PewterCityText_193f6
- db "@"
-
-PewterCityText_193fb:
- TX_FAR _PewterCityText_193fb
- db "@"
-
-PewterCityText13:
- TX_FAR _PewterCityText13
- db "@"
-
-PewterCityText4:
- TX_ASM
- ld hl, PewterCityText_19427
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- cp $0
- jr nz, .playerDoesNotKnow
- ld hl, PewterCityText_1942c
- call PrintText
- jr .done
-.playerDoesNotKnow
- ld hl, PewterCityText_19431
- call PrintText
-.done
- jp TextScriptEnd
-
-PewterCityText_19427:
- TX_FAR _PewterCityText_19427
- db "@"
-
-PewterCityText_1942c:
- TX_FAR _PewterCityText_1942c
- db "@"
-
-PewterCityText_19431:
- TX_FAR _PewterCityText_19431
- db "@"
-
-PewterCityText5:
- TX_ASM
- ld hl, PewterCityText_1945d
- call PrintText
- xor a
- ld [hJoyHeld], a
- ld [wNPCMovementScriptFunctionNum], a
- ld a, $3
- ld [wNPCMovementScriptPointerTableNum], a
- ld a, [H_LOADEDROMBANK]
- ld [wNPCMovementScriptBank], a
- ld a, $5
- ld [wSpriteIndex], a
- call GetSpritePosition2
- ld a, $4
- ld [wPewterCityCurScript], a
- jp TextScriptEnd
-
-PewterCityText_1945d:
- TX_FAR _PewterCityText_1945d
- db "@"
-
-PewterCityText14:
-
-PewterCityText_19462:
- TX_FAR _PewterCityText_19462
- db "@"
-
-PewterCityText6:
- TX_FAR _PewterCityText6
- db "@"
-
-PewterCityText7:
- TX_FAR _PewterCityText7
- db "@"
-
-PewterCityText10:
- TX_FAR _PewterCityText10
- db "@"
-
-PewterCityText11:
- TX_FAR _PewterCityText11
- db "@"
-
-PewterCityText12:
- TX_FAR _PewterCityText12
- db "@"
diff --git a/scripts/pewtergym.asm b/scripts/pewtergym.asm
deleted file mode 100755
index f9fc4ed2..00000000
--- a/scripts/pewtergym.asm
+++ /dev/null
@@ -1,243 +0,0 @@
-PewterGymScript:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- call nz, PewterGymScript_5c3a4
- call EnableAutoTextBoxDrawing
- ld hl, PewterGymTrainerHeaders
- ld de, PewterGymScriptPointers
- ld a, [wPewterGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wPewterGymCurScript], a
- ret
-
-PewterGymScript_5c3a4:
- ld hl, Gym1CityName
- ld de, Gym1LeaderName
- call LoadGymLeaderAndCityName
- ret
-
-Gym1CityName:
- db "PEWTER CITY@"
-
-Gym1LeaderName:
- db "BROCK@"
-
-PewterGymScript_5c3bf:
- xor a
- ld [wJoyIgnore], a
- ld [wPewterGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-PewterGymScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw PewterGymScript3
-
-PewterGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, PewterGymScript_5c3bf
- ld a, $f0
- ld [wJoyIgnore], a
-PewterGymScript_5c3df:
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_BROCK
- lb bc, TM_34, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM34
- jr .gymVictory
-
-.BagFull
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 0, [hl]
- ld hl, wBeatGymFlags
- set 0, [hl]
-
- ld a, HS_GYM_GUY
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_ROUTE_22_RIVAL_1
- ld [wMissableObjectIndex], a
- predef HideObject
-
- ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
-
- ; deactivate gym trainers
- SetEvent EVENT_BEAT_PEWTER_GYM_TRAINER_0
-
- jp PewterGymScript_5c3bf
-
-PewterGymTextPointers:
- dw PewterGymText1
- dw PewterGymText2
- dw PewterGymText3
- dw PewterGymText4
- dw PewterGymText5
- dw PewterGymText6
-
-PewterGymTrainerHeaders:
-PewterGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_PEWTER_GYM_TRAINER_0
- db ($5 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_PEWTER_GYM_TRAINER_0
- dw PewterGymBattleText1 ; TextBeforeBattle
- dw PewterGymAfterBattleText1 ; TextAfterBattle
- dw PewterGymEndBattleText1 ; TextEndBattle
- dw PewterGymEndBattleText1 ; TextEndBattle
-
- db $ff
-
-PewterGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_BROCK
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM34
- jr nz, .afterVictory
- call z, PewterGymScript_5c3df
- call DisableWaitingAfterTextDisplay
- jr .done
-.afterVictory
- ld hl, PewterGymText_5c4a3
- call PrintText
- jr .done
-.beginBattle
- ld hl, PewterGymText_5c49e
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, PewterGymText_5c4bc
- ld de, PewterGymText_5c4bc
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $1
- ld [wGymLeaderNo], a
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wPewterGymCurScript], a
- ld [wCurMapScript], a
-.done
- jp TextScriptEnd
-
-PewterGymText_5c49e:
- TX_FAR _PewterGymText_5c49e
- db "@"
-
-PewterGymText_5c4a3:
- TX_FAR _PewterGymText_5c4a3
- db "@"
-
-PewterGymText4:
- TX_FAR _TM34PreReceiveText
- db "@"
-
-PewterGymText5:
- TX_FAR _ReceivedTM34Text
- TX_SFX_ITEM
- TX_FAR _TM34ExplanationText
- db "@"
-
-PewterGymText6:
- TX_FAR _TM34NoRoomText
- db "@"
-
-PewterGymText_5c4bc:
- TX_FAR _PewterGymText_5c4bc
- TX_SFX_ITEM
- TX_FAR _PewterGymText_5c4c1
- db "@"
-
-PewterGymText2:
- TX_ASM
- ld hl, PewterGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PewterGymBattleText1:
- TX_FAR _PewterGymBattleText1
- db "@"
-
-PewterGymEndBattleText1:
- TX_FAR _PewterGymEndBattleText1
- db "@"
-
-PewterGymAfterBattleText1:
- TX_FAR _PewterGymAfterBattleText1
- db "@"
-
-PewterGymText3:
- TX_ASM
- ld a, [wBeatGymFlags]
- bit 0, a
- jr nz, .asm_5c50c
- ld hl, PewterGymText_5c515
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_5c4fe
- ld a, [wd472]
- bit 7, a
- jp nz, .asm_5c3fa
- ld hl, PewterGymText_5c51a
- call PrintText
- jr .asm_5c504
-.asm_5c4fe
- ld hl, PewterGymText_5c524
- call PrintText
-.asm_5c504
- ld hl, PewterGymText_5c51f
- call PrintText
- jr .asm_5c512
-.asm_5c50c
- ld hl, PewterGymText_5c529
- call PrintText
-.asm_5c512
- jp TextScriptEnd
-
-.asm_5c3fa
- ld hl, PewterGymText_5c41c
- call PrintText
- jp TextScriptEnd
-
-PewterGymText_5c515:
- TX_FAR _PewterGymText_5c515
- db "@"
-
-PewterGymText_5c51a:
- TX_FAR _PewterGymText_5c51a
- db "@"
-
-PewterGymText_5c51f:
- TX_FAR _PewterGymText_5c51f
- db "@"
-
-PewterGymText_5c524:
- TX_FAR _PewterGymText_5c524
- db "@"
-
-PewterGymText_5c529:
- TX_FAR _PewterGymText_5c529
- db "@"
-
-PewterGymText_5c41c:
- TX_FAR _PewterGymGuyText
- db "@"
-
diff --git a/scripts/pewterhouse1.asm b/scripts/pewterhouse1.asm
deleted file mode 100755
index ba0f631f..00000000
--- a/scripts/pewterhouse1.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-PewterHouse1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-PewterHouse1TextPointers:
- dw PewterHouse1Text1
- dw PewterHouse1Text2
- dw PewterHouse1Text3
-
-PewterHouse1Text1:
- TX_FAR _PewterHouse1Text1
- TX_ASM
- ld a, NIDORAN_M
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-PewterHouse1Text2:
- TX_FAR _PewterHouse1Text2
- db "@"
-
-PewterHouse1Text3:
- TX_FAR _PewterHouse1Text3
- db "@"
diff --git a/scripts/pewterhouse2.asm b/scripts/pewterhouse2.asm
deleted file mode 100755
index e3bbe01e..00000000
--- a/scripts/pewterhouse2.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-PewterHouse2Script:
- jp EnableAutoTextBoxDrawing
-
-PewterHouse2TextPointers:
- dw PewterHouse2Text1
- dw PewterHouse2Text2
-
-PewterHouse2Text1:
- TX_FAR _PewterHouse2Text1
- db "@"
-
-PewterHouse2Text2:
- TX_FAR _PewterHouse2Text2
- db "@"
diff --git a/scripts/pewtermart.asm b/scripts/pewtermart.asm
deleted file mode 100755
index 64915563..00000000
--- a/scripts/pewtermart.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-PewterMartScript:
- call EnableAutoTextBoxDrawing
- ld a, $1
- ld [wAutoTextBoxDrawingControl], a
- ret
-
-PewterMartTextPointers:
- dw PewterCashierText
- dw PewterMartText2
- dw PewterMartText3
-
-PewterMartText2:
- TX_ASM
- ld hl, .Text
- call PrintText
- jp TextScriptEnd
-
-.Text
- TX_FAR _PewterMartText2
- db "@"
-
-PewterMartText3:
- TX_ASM
- ld hl, .Text
- call PrintText
- jp TextScriptEnd
-
-.Text
- TX_FAR _PewterMartText3
- db "@"
diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm
deleted file mode 100755
index 78bfc9fa..00000000
--- a/scripts/pewterpokecenter.asm
+++ /dev/null
@@ -1,39 +0,0 @@
-PewterPokecenterScript:
- ld hl, wd492
- set 7, [hl]
- call Serial_TryEstablishingExternallyClockedConnection
- call EnableAutoTextBoxDrawing
- ret
-
-PewterPokecenterTextPointers:
- dw PewterHealNurseText
- dw PewterPokecenterText2
- dw PewterJigglypuffText
- dw PewterTradeNurseText
- dw PewterPokecenterText5
- dw PewterPokecenterText6
-
-PewterHealNurseText:
- TX_POKECENTER_NURSE
-
-PewterPokecenterText2:
- TX_FAR _PewterPokecenterText2
- db "@"
-
-PewterJigglypuffText:
- TX_ASM
- callba PewterJigglypuff
- jp TextScriptEnd
-
-PewterTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-PewterPokecenterText5:
- TX_ASM
- callba Func_f1d98
- jp TextScriptEnd
-
-PewterPokecenterText6:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/pewterpokecenter2.asm b/scripts/pewterpokecenter2.asm
deleted file mode 100755
index 9f035fa9..00000000
--- a/scripts/pewterpokecenter2.asm
+++ /dev/null
@@ -1,72 +0,0 @@
-Func_f1d98:
- ld hl, PewterPokecenterText_f1d9f
- call PrintText
- ret
-
-PewterPokecenterText_f1d9f:
- TX_FAR _PewterPokecenterText3
- db "@"
-
-PewterJigglypuff:
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, .Text
- call PrintText
- call StopAllMusic
- ld c, 32
- call DelayFrames
- ld hl, JigglypuffSpinData
- ld de, wJigglypuffFacingDirections
- ld bc, JigglypuffSpinDataEnd - JigglypuffSpinData
- call CopyData
- ld a, [wSpriteStateData1 + 3 * $10 + 2]
- ld hl, wJigglypuffFacingDirections
-.asm_f1dc9
- cp [hl]
- inc hl
- jr nz, .asm_f1dc9
- dec hl
- push hl
- ld c, BANK(Music_JigglypuffSong)
- ld a, MUSIC_JIGGLYPUFF_SONG
- call PlayMusic
- pop hl
-.asm_f1dd7
- ld a, [hl]
- ld [wSpriteStateData1 + 3 * $10 + 2], a
- push hl
- ld hl, wJigglypuffFacingDirections
- ld de, wJigglypuffFacingDirections2
- ld bc, JigglypuffSpinDataEnd - JigglypuffSpinData
- call CopyData
- ld a, [wJigglypuffFacingDirections2]
- ld [wcd42], a
- pop hl
- ld c, 24
- call DelayFrames
- ld a, [wChannelSoundIDs]
- ld b, a
- ld a, [wChannelSoundIDs + 1]
- or b
- jr nz, .asm_f1dd7
- ld c, 48
- call DelayFrames
- call PlayDefaultMusic
- ld a, [wd472]
- bit 7, a
- ret z
- callab CheckPikachuFaintedOrStatused
- ret c
- call DisablePikachuFollowingPlayer
- ret
-
-.Text
- TX_FAR _PewterJigglypuffText
- db "@"
-
-JigglypuffSpinData:
- db $40 | SPRITE_FACING_DOWN
- db $40 | SPRITE_FACING_LEFT
- db $40 | SPRITE_FACING_UP
- db $40 | SPRITE_FACING_RIGHT
-JigglypuffSpinDataEnd:
diff --git a/scripts/pokemontower1.asm b/scripts/pokemontower1.asm
deleted file mode 100755
index 1209b875..00000000
--- a/scripts/pokemontower1.asm
+++ /dev/null
@@ -1,30 +0,0 @@
-PokemonTower1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-PokemonTower1TextPointers:
- dw PokemonTower1Text1
- dw PokemonTower1Text2
- dw PokemonTower1Text3
- dw PokemonTower1Text4
- dw PokemonTower1Text5
-
-PokemonTower1Text1:
- TX_FAR _PokemonTower1Text1
- db "@"
-
-PokemonTower1Text2:
- TX_FAR _PokemonTower1Text2
- db "@"
-
-PokemonTower1Text3:
- TX_FAR _PokemonTower1Text3
- db "@"
-
-PokemonTower1Text4:
- TX_FAR _PokemonTower1Text4
- db "@"
-
-PokemonTower1Text5:
- TX_FAR _PokemonTower1Text5
- db "@"
diff --git a/scripts/pokemontower2.asm b/scripts/pokemontower2.asm
deleted file mode 100755
index 0a0aa3d5..00000000
--- a/scripts/pokemontower2.asm
+++ /dev/null
@@ -1,172 +0,0 @@
-PokemonTower2Script:
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower2ScriptPointers
- ld a, [wPokemonTower2CurScript]
- jp JumpTable
-
-PokemonTower2Script_604fe:
- xor a
- ld [wJoyIgnore], a
- ld [wPokemonTower2CurScript], a
- ld [wCurMapScript], a
- ret
-
-PokemonTower2ScriptPointers:
- dw PokemonTower2Script0
- dw PokemonTower2Script1
- dw PokemonTower2Script2
-
-PokemonTower2Script0:
- CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
- ret nz
- ld hl, CoordsData_6055e
- call ArePlayerCoordsInArray
- ret nc
- call StopAllMusic
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ResetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
- ld a, [wCoordIndex]
- cp $1
- ld a, PLAYER_DIR_UP
- ld b, SPRITE_FACING_DOWN
- jr nz, .asm_60544
-; the rival is on the left side and the player is on the right side
- SetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
- ld a, PLAYER_DIR_LEFT
- ld b, SPRITE_FACING_RIGHT
-.asm_60544
- ld [wPlayerMovingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- ld a, b
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [hJoyHeld], a
- ld [hJoyPressed], a
- ret
-
-CoordsData_6055e:
- db $05,$0F
- db $06,$0E
- db $0F ; isn't this supposed to end in $ff?
-
-PokemonTower2Script1:
- ld a, [wIsInBattle]
- cp $ff
- jp z, PokemonTower2Script_604fe
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld de, MovementData_605b2
- CheckEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
- jr nz, .asm_60589
- callab Func_f1e22
- ld de, MovementData_605a9
-.asm_60589
- ld a, $1
- ld [H_SPRITEINDEX], a
- call MoveSprite
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld a, $2
- ld [wPokemonTower2CurScript], a
- ld [wCurMapScript], a
- ret
-
-MovementData_605a9:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db $FF
-
-MovementData_605b2:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-PokemonTower2Script2:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_POKEMONTOWER_2_RIVAL
- ld [wMissableObjectIndex], a
- predef HideObject
- xor a
- ld [wJoyIgnore], a
- call PlayDefaultMusic
- ld a, $0
- ld [wPokemonTower2CurScript], a
- ld [wCurMapScript], a
- ret
-
-PokemonTower2TextPointers:
- dw PokemonTower2Text1
- dw PokemonTower2Text2
-
-PokemonTower2Text1:
- TX_ASM
- CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
- jr z, .asm_16f24
- ld hl, PokemonTower2Text_6063c
- call PrintText
- jr .asm_41852
-.asm_16f24
- ld hl, PokemonTower2Text_6062d
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, PokemonTower2Text_60632
- ld de, PokemonTower2Text_60637
- call SaveEndBattleTextPointers
- ld a, OPP_SONY2
- ld [wCurOpponent], a
- ld a, [wRivalStarter]
- add $1
- ld [wTrainerNo], a
-
- ld a, $1
- ld [wPokemonTower2CurScript], a
- ld [wCurMapScript], a
-.asm_41852
- jp TextScriptEnd
-
-PokemonTower2Text_6062d:
- TX_FAR _PokemonTower2Text_6062d
- db "@"
-
-PokemonTower2Text_60632:
- TX_FAR _PokemonTower2Text_60632
- db "@"
-
-PokemonTower2Text_60637:
- TX_FAR _PokemonTower2Text_60637
- db "@"
-
-PokemonTower2Text_6063c:
- TX_FAR _PokemonTower2Text_6063c
- db "@"
-
-PokemonTower2Text2:
- TX_FAR _PokemonTower2Text2
- db "@"
diff --git a/scripts/pokemontower3.asm b/scripts/pokemontower3.asm
deleted file mode 100755
index 8be15c9e..00000000
--- a/scripts/pokemontower3.asm
+++ /dev/null
@@ -1,102 +0,0 @@
-PokemonTower3Script:
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower3TrainerHeaders
- ld de, PokemonTower3ScriptPointers
- ld a, [wPokemonTower3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wPokemonTower3CurScript], a
- ret
-
-PokemonTower3ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-PokemonTower3TextPointers:
- dw PokemonTower3Text1
- dw PokemonTower3Text2
- dw PokemonTower3Text3
- dw PickUpItemText
-
-PokemonTower3TrainerHeaders:
-PokemonTower3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_0
- dw PokemonTower3BattleText1 ; TextBeforeBattle
- dw PokemonTower3AfterBattleText1 ; TextAfterBattle
- dw PokemonTower3EndBattleText1 ; TextEndBattle
- dw PokemonTower3EndBattleText1 ; TextEndBattle
-
-PokemonTower3TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_1
- dw PokemonTower3BattleText2 ; TextBeforeBattle
- dw PokemonTower3AfterBattleText2 ; TextAfterBattle
- dw PokemonTower3EndBattleText2 ; TextEndBattle
- dw PokemonTower3EndBattleText2 ; TextEndBattle
-
-PokemonTower3TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_3_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_3_TRAINER_2
- dw PokemonTower3BattleText3 ; TextBeforeBattle
- dw PokemonTower3AfterBattleText3 ; TextAfterBattle
- dw PokemonTower3EndBattleText3 ; TextEndBattle
- dw PokemonTower3EndBattleText3 ; TextEndBattle
- db $ff
-
-PokemonTower3Text1:
- TX_ASM
- ld hl, PokemonTower3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower3Text2:
- TX_ASM
- ld hl, PokemonTower3TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower3Text3:
- TX_ASM
- ld hl, PokemonTower3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower3BattleText1:
- TX_FAR _PokemonTower3BattleText1
- db "@"
-
-PokemonTower3EndBattleText1:
- TX_FAR _PokemonTower3EndBattleText1
- db "@"
-
-PokemonTower3AfterBattleText1:
- TX_FAR _PokemonTower3AfterBattleText1
- db "@"
-
-PokemonTower3BattleText2:
- TX_FAR _PokemonTower3BattleText2
- db "@"
-
-PokemonTower3EndBattleText2:
- TX_FAR _PokemonTower3EndBattleText2
- db "@"
-
-PokemonTower3AfterBattleText2:
- TX_FAR _PokemonTower3AfterBattleText2
- db "@"
-
-PokemonTower3BattleText3:
- TX_FAR _PokemonTower3BattleText3
- db "@"
-
-PokemonTower3EndBattleText3:
- TX_FAR _PokemonTower3EndBattleText3
- db "@"
-
-PokemonTower3AfterBattleText3:
- TX_FAR _PokemonTower3AfterBattleText3
- db "@"
diff --git a/scripts/pokemontower4.asm b/scripts/pokemontower4.asm
deleted file mode 100755
index fe7a4e08..00000000
--- a/scripts/pokemontower4.asm
+++ /dev/null
@@ -1,105 +0,0 @@
-PokemonTower4Script:
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower4TrainerHeaders
- ld de, PokemonTower4ScriptPointers
- ld a, [wPokemonTower4CurScript]
- call ExecuteCurMapScriptInTable
- ld [wPokemonTower4CurScript], a
- ret
-
-PokemonTower4ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-PokemonTower4TextPointers:
- dw PokemonTower4Text1
- dw PokemonTower4Text2
- dw PokemonTower4Text3
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-PokemonTower4TrainerHeaders:
-PokemonTower4TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_0
- dw PokemonTower4BattleText1 ; TextBeforeBattle
- dw PokemonTower4AfterBattleText1 ; TextAfterBattle
- dw PokemonTower4EndBattleText1 ; TextEndBattle
- dw PokemonTower4EndBattleText1 ; TextEndBattle
-
-PokemonTower4TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_1
- dw PokemonTower4BattleText2 ; TextBeforeBattle
- dw PokemonTower4AfterBattleText2 ; TextAfterBattle
- dw PokemonTower4EndBattleText2 ; TextEndBattle
- dw PokemonTower4EndBattleText2 ; TextEndBattle
-
-PokemonTower4TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_4_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_4_TRAINER_2
- dw PokemonTower4BattleText3 ; TextBeforeBattle
- dw PokemonTower4AfterBattleText3 ; TextAfterBattle
- dw PokemonTower4EndBattleText3 ; TextEndBattle
- dw PokemonTower4EndBattleText3 ; TextEndBattle
-
- db $ff
-
-PokemonTower4Text1:
- TX_ASM
- ld hl, PokemonTower4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower4Text2:
- TX_ASM
- ld hl, PokemonTower4TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower4Text3:
- TX_ASM
- ld hl, PokemonTower4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower4BattleText1:
- TX_FAR _PokemonTower4BattleText1
- db "@"
-
-PokemonTower4EndBattleText1:
- TX_FAR _PokemonTower4EndBattleText1
- db "@"
-
-PokemonTower4AfterBattleText1:
- TX_FAR _PokemonTower4AfterBattleText1
- db "@"
-
-PokemonTower4BattleText2:
- TX_FAR _PokemonTower4BattleText2
- db "@"
-
-PokemonTower4EndBattleText2:
- TX_FAR _PokemonTower4EndBattleText2
- db "@"
-
-PokemonTower4AfterBattleText2:
- TX_FAR _PokemonTower4AfterBattleText2
- db "@"
-
-PokemonTower4BattleText3:
- TX_FAR _PokemonTower4BattleText3
- db "@"
-
-PokemonTower4EndBattleText3:
- TX_FAR _PokemonTower4EndBattleText3
- db "@"
-
-PokemonTower4AfterBattleText3:
- TX_FAR _PokemonTower4AfterBattleText3
- db "@"
diff --git a/scripts/pokemontower5.asm b/scripts/pokemontower5.asm
deleted file mode 100755
index 82b912b5..00000000
--- a/scripts/pokemontower5.asm
+++ /dev/null
@@ -1,177 +0,0 @@
-PokemonTower5Script:
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower5TrainerHeaders
- ld de, PokemonTower5ScriptPointers
- ld a, [wPokemonTower5CurScript]
- call ExecuteCurMapScriptInTable
- ld [wPokemonTower5CurScript], a
- ret
-
-PokemonTower5ScriptPointers:
- dw PokemonTower5Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-PokemonTower5Script0:
- ld hl, CoordsData_60992
- call ArePlayerCoordsInArray
- jr c, .asm_60960
- ld hl, wd72e
- res 4, [hl]
- ResetEvent EVENT_IN_PURIFIED_ZONE
- jp CheckFightingMapTrainers
-.asm_60960
- CheckAndSetEvent EVENT_IN_PURIFIED_ZONE
- ret nz
- xor a
- ld [hJoyHeld], a
- ld a, $f0
- ld [wJoyIgnore], a
- ld hl, wd72e
- set 4, [hl]
- predef HealParty
- call GBFadeOutToWhite
- call Delay3
- call Delay3
- call GBFadeInFromWhite
- ld a, $7
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
- ret
-
-CoordsData_60992:
- db $08,$0A
- db $08,$0B
- db $09,$0A
- db $09,$0B
- db $FF
-
-PokemonTower5TextPointers:
- dw PokemonTower5Text1
- dw PokemonTower5Text2
- dw PokemonTower5Text3
- dw PokemonTower5Text4
- dw PokemonTower5Text5
- dw PickUpItemText
- dw PokemonTower5Text7
-
-PokemonTower5TrainerHeaders:
-PokemonTower5TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_0
- dw PokemonTower5BattleText1 ; TextBeforeBattle
- dw PokemonTower5AfterBattleText1 ; TextAfterBattle
- dw PokemonTower5EndBattleText1 ; TextEndBattle
- dw PokemonTower5EndBattleText1 ; TextEndBattle
-
-PokemonTower5TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_1
- dw PokemonTower5BattleText2 ; TextBeforeBattle
- dw PokemonTower5AfterBattleText2 ; TextAfterBattle
- dw PokemonTower5EndBattleText2 ; TextEndBattle
- dw PokemonTower5EndBattleText2 ; TextEndBattle
-
-PokemonTower5TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_2
- dw PokemonTower5BattleText3 ; TextBeforeBattle
- dw PokemonTower5AfterBattleText3 ; TextAfterBattle
- dw PokemonTower5EndBattleText3 ; TextEndBattle
- dw PokemonTower5EndBattleText3 ; TextEndBattle
-
-PokemonTower5TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_5_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_5_TRAINER_3
- dw PokemonTower5BattleText4 ; TextBeforeBattle
- dw PokemonTower5AfterBattleText4 ; TextAfterBattle
- dw PokemonTower5EndBattleText4 ; TextEndBattle
- dw PokemonTower5EndBattleText4 ; TextEndBattle
-
- db $ff
-
-PokemonTower5Text1:
- TX_FAR _PokemonTower5Text1
- db "@"
-
-PokemonTower5Text2:
- TX_ASM
- ld hl, PokemonTower5TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText1:
- TX_FAR _PokemonTower5BattleText1
- db "@"
-
-PokemonTower5EndBattleText1:
- TX_FAR _PokemonTower5EndBattleText1
- db "@"
-
-PokemonTower5AfterBattleText1:
- TX_FAR _PokemonTower5AfterBattleText1
- db "@"
-
-PokemonTower5Text3:
- TX_ASM
- ld hl, PokemonTower5TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText2:
- TX_FAR _PokemonTower5BattleText2
- db "@"
-
-PokemonTower5EndBattleText2:
- TX_FAR _PokemonTower5EndBattleText2
- db "@"
-
-PokemonTower5AfterBattleText2:
- TX_FAR _PokemonTower5AfterBattleText2
- db "@"
-
-PokemonTower5Text4:
- TX_ASM
- ld hl, PokemonTower5TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText3:
- TX_FAR _PokemonTower5BattleText3
- db "@"
-
-PokemonTower5EndBattleText3:
- TX_FAR _PokemonTower5EndBattleText3
- db "@"
-
-PokemonTower5AfterBattleText3:
- TX_FAR _PokemonTower5AfterBattleText3
- db "@"
-
-PokemonTower5Text5:
- TX_ASM
- ld hl, PokemonTower5TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower5BattleText4:
- TX_FAR _PokemonTower5BattleText4
- db "@"
-
-PokemonTower5EndBattleText4:
- TX_FAR _PokemonTower5EndBattleText4
- db "@"
-
-PokemonTower5AfterBattleText4:
- TX_FAR _PokemonTower5AfterBattleText4
- db "@"
-
-PokemonTower5Text7:
- TX_FAR _PokemonTower5Text7
- db "@"
diff --git a/scripts/pokemontower6.asm b/scripts/pokemontower6.asm
deleted file mode 100755
index 82c39a41..00000000
--- a/scripts/pokemontower6.asm
+++ /dev/null
@@ -1,213 +0,0 @@
-PokemonTower6Script:
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower6TrainerHeaders
- ld de, PokemonTower6ScriptPointers
- ld a, [wPokemonTower6CurScript]
- call ExecuteCurMapScriptInTable
- ld [wPokemonTower6CurScript], a
- ret
-
-PokemonTower6Script_60b02:
- xor a
- ld [wJoyIgnore], a
- ld [wPokemonTower6CurScript], a
- ld [wCurMapScript], a
- ret
-
-PokemonTower6ScriptPointers:
- dw PokemonTower6Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw PokemonTower6Script3
- dw PokemonTower6Script4
-
-PokemonTower6Script0:
- CheckEvent EVENT_BEAT_GHOST_MAROWAK
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_60b45
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyHeld], a
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, MAROWAK
- ld [wCurOpponent], a
- ld a, 30
- ld [wCurEnemyLVL], a
- ld a, $4
- ld [wPokemonTower6CurScript], a
- ld [wCurMapScript], a
- ret
-
-CoordsData_60b45:
- db $10,$0A,$FF
-
-PokemonTower6Script4:
- ld a, [wIsInBattle]
- cp $ff
- jp z, PokemonTower6Script_60b02
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd72d]
- bit 6, a
- ret nz
- call UpdateSprites
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, [wBattleResult]
- and a
- jr nz, .asm_60b82
- SetEvent EVENT_BEAT_GHOST_MAROWAK
- ld a, $7
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wPokemonTower6CurScript], a
- ld [wCurMapScript], a
- ret
-.asm_60b82
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, $10
- ld [wSimulatedJoypadStatesEnd], a
- xor a
- ld [wSpriteStateData2 + $06], a
- ld [wOverrideSimulatedJoypadStatesMask], a
- ld hl, wd730
- set 7, [hl]
- ld a, $3
- ld [wPokemonTower6CurScript], a
- ld [wCurMapScript], a
- ret
-
-PokemonTower6Script3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wPokemonTower6CurScript], a
- ld [wCurMapScript], a
- ret
-
-PokemonTower6TextPointers:
- dw PokemonTower6Text1
- dw PokemonTower6Text2
- dw PokemonTower6Text3
- dw PickUpItemText
- dw PickUpItemText
- dw PokemonTower6Text6
- dw PokemonTower6Text7
-
-PokemonTower6TrainerHeaders:
-PokemonTower6TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_0
- dw PokemonTower6BattleText1 ; TextBeforeBattle
- dw PokemonTower6AfterBattleText1 ; TextAfterBattle
- dw PokemonTower6EndBattleText1 ; TextEndBattle
- dw PokemonTower6EndBattleText1 ; TextEndBattle
-
-PokemonTower6TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_1
- dw PokemonTower6BattleText2 ; TextBeforeBattle
- dw PokemonTower6AfterBattleText2 ; TextAfterBattle
- dw PokemonTower6EndBattleText2 ; TextEndBattle
- dw PokemonTower6EndBattleText2 ; TextEndBattle
-
-PokemonTower6TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_POKEMONTOWER_6_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_6_TRAINER_2
- dw PokemonTower6BattleText3 ; TextBeforeBattle
- dw PokemonTower6AfterBattleText3 ; TextAfterBattle
- dw PokemonTower6EndBattleText3 ; TextEndBattle
- dw PokemonTower6EndBattleText3 ; TextEndBattle
-
- db $ff
-
-PokemonTower6Text1:
- TX_ASM
- ld hl, PokemonTower6TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower6Text2:
- TX_ASM
- ld hl, PokemonTower6TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower6Text3:
- TX_ASM
- ld hl, PokemonTower6TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-PokemonTower6Text7:
- TX_ASM
- ld hl, PokemonTower2Text_60c1f
- call PrintText
- ld a, MAROWAK
- call PlayCry
- call WaitForSoundToFinish
- ld c, 30
- call DelayFrames
- ld hl, PokemonTower2Text_60c24
- call PrintText
- jp TextScriptEnd
-
-PokemonTower2Text_60c1f:
- TX_FAR _PokemonTower2Text_60c1f
- db "@"
-
-PokemonTower2Text_60c24:
- TX_FAR _PokemonTower2Text_60c24
- db "@"
-
-PokemonTower6BattleText1:
- TX_FAR _PokemonTower6BattleText1
- db "@"
-
-PokemonTower6EndBattleText1:
- TX_FAR _PokemonTower6EndBattleText1
- db "@"
-
-PokemonTower6AfterBattleText1:
- TX_FAR _PokemonTower6AfterBattleText1
- db "@"
-
-PokemonTower6BattleText2:
- TX_FAR _PokemonTower6BattleText2
- db "@"
-
-PokemonTower6EndBattleText2:
- TX_FAR _PokemonTower6EndBattleText2
- db "@"
-
-PokemonTower6AfterBattleText2:
- TX_FAR _PokemonTower6AfterBattleText2
- db "@"
-
-PokemonTower6BattleText3:
- TX_FAR _PokemonTower6BattleText3
- db "@"
-
-PokemonTower6EndBattleText3:
- TX_FAR _PokemonTower6EndBattleText3
- db "@"
-
-PokemonTower6AfterBattleText3:
- TX_FAR _PokemonTower6AfterBattleText3
- db "@"
-
-PokemonTower6Text6:
- TX_FAR _PokemonTower6Text6
- db "@"
diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm
deleted file mode 100755
index abfb1468..00000000
--- a/scripts/pokemontower7.asm
+++ /dev/null
@@ -1,315 +0,0 @@
-PokemonTower7Script:
- call EnableAutoTextBoxDrawing
- ld hl, PokemonTower7ScriptPointers
- ld a, [wPokemonTower7CurScript]
- call JumpTable
- ret
-
-PokemonTower7Script_60d01:
- xor a
- ld [wJoyIgnore], a
-PokemonTower7Script_60d05:
- ld [wPokemonTower7CurScript], a
- ret
-
-PokemonTower7ScriptPointers:
- dw PokemonTower7Script0
- dw PokemonTower7Script1
- dw PokemonTower7Script2
- dw PokemonTower7Script3
- dw PokemonTower7Script4
- dw PokemonTower7Script5
- dw PokemonTower7Script6
- dw PokemonTower7Script7
- dw PokemonTower7Script8
- dw PokemonTower7Script9
- dw PokemonTower7Script10
- dw PokemonTower7Script11
-
-PokemonTower7Script0:
- CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_0
- call z, PokemonTower7Script_60d2a
- ret
-
-PokemonTower7Script_60d2a:
- ld a, [wYCoord]
- cp $c
- ret nz
- ResetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
- ld a, [wXCoord]
- cp $a
- jr z, .asm_60d47
- ld a, [wXCoord] ; why?
- cp $b
- ret nz
- SetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
-.asm_60d47
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- xor a
- ld [hJoyHeld], a
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, HS_POKEMONTOWER_7_JESSIE
- call PokemonTower7Script_60eaf
- ld a, HS_POKEMONTOWER_7_JAMES
- call PokemonTower7Script_60eaf
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $1
- call PokemonTower7Script_60d05
- ret
-
-PokemonTower7MovementData_60d7a:
- db $4
-PokemonTower7MovementData_60d7b:
- db $4
- db $4
- db $4
- db $FF
-
-PokemonTower7Script1:
- ld de, PokemonTower7MovementData_60d7b
- CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
- jr z, .asm_60d8c
- ld de, PokemonTower7MovementData_60d7a
-.asm_60d8c
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $2
- call PokemonTower7Script_60d05
- ret
-
-PokemonTower7Script2:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
-PokemonTower7Script3:
- ld a, $0
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
- jr z, .asm_60dba
- ld a, $c
- ld [wSpriteStateData1 + 1 * $10 + 9], a
-.asm_60dba
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
-PokemonTower7Script4:
- ld de, PokemonTower7MovementData_60d7a
- CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
- jr z, .asm_60dcc
- ld de, PokemonTower7MovementData_60d7b
-.asm_60dcc
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $5
- call PokemonTower7Script_60d05
- ret
-PokemonTower7Script5:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
-PokemonTower7Script6:
- ld a, $2
- ld [wSpriteStateData1 + $2 * $10 + $1], a
- ld a, $8
- ld [wSpriteStateData1 + $2 * $10 + $9], a
- CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1
- jr z, .asm_60dff
- ld a, $0
- ld [wSpriteStateData1 + $2 * $10 + $9], a
-.asm_60dff
- call Delay3
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-PokemonTower7Script7:
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, PokemonTower7JessieJamesEndBattleText
- ld de, PokemonTower7JessieJamesEndBattleText
- call SaveEndBattleTextPointers
- ld a, OPP_ROCKET
- ld [wCurOpponent], a
- ld a, $2c
- ld [wTrainerNo], a
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- ld a, $8
- call PokemonTower7Script_60d05
- ret
-
-PokemonTower7Script8:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wIsInBattle]
- cp $ff
- jp z, PokemonTower7Script_60d01
- ld a, $2
- ld [wSpriteStateData1 + 1 * $10 + 1], a
- ld [wSpriteStateData1 + 2 * $10 + 1], a
- xor a
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- ld [wSpriteStateData1 + 2 * $10 + 9], a
- ld a, $FF ^ (A_BUTTON | B_BUTTON)
- ld [wJoyIgnore], a
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $9
- call PokemonTower7Script_60d05
- ret
-
-PokemonTower7Script9:
- ld a, $ff
- ld [wJoyIgnore], a
- call GBFadeOutToBlack
- ld a, HS_POKEMONTOWER_7_JESSIE
- call PokemonTower7Script_60ebe
- ld a, HS_POKEMONTOWER_7_JAMES
- call PokemonTower7Script_60ebe
- call UpdateSprites
- call Delay3
- call GBFadeInFromBlack
- ld a, $a
- call PokemonTower7Script_60d05
- ret
-
-PokemonTower7Script10:
- call PlayDefaultMusic
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_0
- ld a, $0
- call PokemonTower7Script_60d05
- ret
-
-PokemonTower7Script_60eaf:
- ld [wMissableObjectIndex], a
- predef ShowObject
- call UpdateSprites
- call Delay3
- ret
-
-PokemonTower7Script_60ebe
- ld [wMissableObjectIndex], a
- predef HideObject
- ret
-
-PokemonTower7Script11:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, HS_POKEMONTOWER_7_MR_FUJI
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, SPRITE_FACING_UP
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, LAVENDER_HOUSE_1
- ld [hWarpDestinationMap], a
- ld a, $1
- ld [wDestinationWarpID], a
- ld a, LAVENDER_TOWN
- ld [wLastMap], a
- ld hl, wd72d
- set 3, [hl]
- ld a, $0
- ld [wPokemonTower7CurScript], a
- ret
-
-PokemonTower7TextPointers:
- dw PokemonTower7Text1
- dw PokemonTower7Text2
- dw PokemonTower7Text3
- dw PokemonTower7Text4
- dw PokemonTower7Text5
- dw PokemonTower7Text6
-
-PokemonTower7Text1:
-PokemonTower7Text2:
- db "@"
-
-PokemonTower7Text4:
- TX_FAR _PokemonTowerJessieJamesText1
- TX_ASM
- ld c, 10
- call DelayFrames
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- ld a, $0
- ld [wEmotionBubbleSpriteIndex], a
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld c, 20
- call DelayFrames
- jp TextScriptEnd
-
-PokemonTower7Text5:
- TX_FAR _PokemonTowerJessieJamesText2
- db "@"
-
-PokemonTower7JessieJamesEndBattleText:
- TX_FAR _PokemonTowerJessieJamesText3
- db "@"
-
-PokemonTower7Text6:
- TX_FAR _PokemonTowerJessieJamesText4
- TX_ASM
- ld c, 64
- call DelayFrames
- jp TextScriptEnd
-
-PokemonTower7Text3:
- TX_ASM
- ld hl, PokemonTower7Text_60f75
- call PrintText
- SetEvent EVENT_RESCUED_MR_FUJI
- SetEvent EVENT_RESCUED_MR_FUJI_2
- ld a, HS_LAVENDER_HOUSE_1_MR_FUJI
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, HS_SAFFRON_CITY_E
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_SAFFRON_CITY_F
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, $b
- ld [wPokemonTower7CurScript], a
- jp TextScriptEnd
-
-PokemonTower7Text_60f75:
- TX_FAR _TowerRescueFujiText
- db "@"
diff --git a/scripts/powerplant.asm b/scripts/powerplant.asm
deleted file mode 100755
index c7a5625f..00000000
--- a/scripts/powerplant.asm
+++ /dev/null
@@ -1,176 +0,0 @@
-PowerPlantScript:
- call EnableAutoTextBoxDrawing
- ld hl, PowerPlantTrainerHeaders
- ld de, .ScriptPointers
- ld a, [wPowerPlantCurScript]
- call ExecuteCurMapScriptInTable
- ld [wPowerPlantCurScript], a
- ret
-
-.ScriptPointers
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-PowerPlantTextPointers:
- dw Voltorb0Text
- dw Voltorb1Text
- dw Voltorb2Text
- dw Voltorb3Text
- dw Voltorb4Text
- dw Voltorb5Text
- dw Voltorb6Text
- dw Voltorb7Text
- dw ZapdosText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-PowerPlantTrainerHeaders:
-Voltorb0TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_0
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_0
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb1TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_1
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_1
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb2TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_2
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_2
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb3TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_3
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_3
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb4TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_4
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_4
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb5TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_5
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_5
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb6TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_6
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_6
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-Voltorb7TrainerHeader:
- dbEventFlagBit EVENT_BEAT_POWER_PLANT_VOLTORB_7, 1
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_POWER_PLANT_VOLTORB_7, 1
- dw VoltorbBattleText ; TextBeforeBattle
- dw VoltorbBattleText ; TextAfterBattle
- dw VoltorbBattleText ; TextEndBattle
- dw VoltorbBattleText ; TextEndBattle
-
-ZapdosTrainerHeader:
- dbEventFlagBit EVENT_BEAT_ZAPDOS, 1
- db 0 ; view range
- dwEventFlagAddress EVENT_BEAT_ZAPDOS, 1
- dw ZapdosBattleText ; TextBeforeBattle
- dw ZapdosBattleText ; TextAfterBattle
- dw ZapdosBattleText ; TextEndBattle
- dw ZapdosBattleText ; TextEndBattle
-
- db $ff
-
-InitVoltorbBattle:
- call TalkToTrainer
- ld a, [wCurMapScript]
- ld [wPowerPlantCurScript], a
- jp TextScriptEnd
-
-Voltorb0Text:
- TX_ASM
- ld hl, Voltorb0TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb1Text:
- TX_ASM
- ld hl, Voltorb1TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb2Text:
- TX_ASM
- ld hl, Voltorb2TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb3Text:
- TX_ASM
- ld hl, Voltorb3TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb4Text:
- TX_ASM
- ld hl, Voltorb4TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb5Text:
- TX_ASM
- ld hl, Voltorb5TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb6Text:
- TX_ASM
- ld hl, Voltorb6TrainerHeader
- jr InitVoltorbBattle
-
-Voltorb7Text:
- TX_ASM
- ld hl, Voltorb7TrainerHeader
- jr InitVoltorbBattle
-
-ZapdosText:
- TX_ASM
- ld hl, ZapdosTrainerHeader
- jr InitVoltorbBattle
-
-VoltorbBattleText:
- TX_FAR _VoltorbBattleText
- db "@"
-
-ZapdosBattleText:
- TX_FAR _ZapdosBattleText
- TX_ASM
- ld a, ZAPDOS
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
diff --git a/scripts/redshouse1f.asm b/scripts/redshouse1f.asm
deleted file mode 100755
index c302462d..00000000
--- a/scripts/redshouse1f.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-RedsHouse1FScript:
- call EnableAutoTextBoxDrawing
- ret
-
-RedsHouse1FTextPointers:
- dw RedsHouse1FText1
- dw RedsHouse1FText2
-
-RedsHouse1FText1: ; Mom
- TX_ASM
- callab Func_f1b73
- jp TextScriptEnd
-
-RedsHouse1FText2: ; TV
- TX_ASM
- callab Func_f1bc4
- jp TextScriptEnd
diff --git a/scripts/redshouse2f.asm b/scripts/redshouse2f.asm
deleted file mode 100755
index 0945e901..00000000
--- a/scripts/redshouse2f.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-RedsHouse2FScript:
- call EnableAutoTextBoxDrawing
- ld hl, RedsHouse2FScriptPointers
- ld a, 0
- call JumpTable
- ret
-
-RedsHouse2FScriptPointers:
- dw RedsHouse2FScript0
- dw RedsHouse2FScript1
- dw RedsHouse2FScript2
- dw RedsHouse2FScript3
- dw RedsHouse2FScript4
-
-RedsHouse2FScript0:
-RedsHouse2FScript1:
-RedsHouse2FScript2:
-RedsHouse2FScript3:
-RedsHouse2FScript4:
- ret
-
-RedsHouse2FTextPointers:
- db "@"
diff --git a/scripts/rockethideout1.asm b/scripts/rockethideout1.asm
deleted file mode 100755
index 35c9026a..00000000
--- a/scripts/rockethideout1.asm
+++ /dev/null
@@ -1,189 +0,0 @@
-RocketHideout1Script:
- call RocketHideout1Script_44be0
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout1TrainerHeaders
- ld de, RocketHideout1ScriptPointers
- ld a, [wRocketHideout1CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRocketHideout1CurScript], a
- ret
-
-RocketHideout1Script_44be0:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEvent EVENT_677
- jr nz, .asm_44c01
- CheckEventReuseA EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
- jr nz, .asm_44bf7
- ld a, $54
- jr .asm_44c03
-.asm_44bf7
- ld a, SFX_GO_INSIDE
- call PlaySound
- CheckEventHL EVENT_677
-.asm_44c01
- ld a, $e
-.asm_44c03
- ld [wNewTileBlockID], a
- lb bc, 8, 12
- predef_jump ReplaceTileBlock
-
-RocketHideout1ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-RocketHideout1TextPointers:
- dw RocketHideout1Text1
- dw RocketHideout1Text2
- dw RocketHideout1Text3
- dw RocketHideout1Text4
- dw RocketHideout1Text5
- dw PickUpItemText
- dw PickUpItemText
-
-RocketHideout1TrainerHeaders:
-RocketHideout1TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0
- dw RocketHideout1BattleText2 ; TextBeforeBattle
- dw RocketHideout1AfterBattleTxt2 ; TextAfterBattle
- dw RocketHideout1EndBattleText2 ; TextEndBattle
- dw RocketHideout1EndBattleText2 ; TextEndBattle
-
-RocketHideout1TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2
- dw RocketHideout1BattleText3 ; TextBeforeBattle
- dw RocketHideout1AfterBattleTxt3 ; TextAfterBattle
- dw RocketHideout1EndBattleText3 ; TextEndBattle
- dw RocketHideout1EndBattleText3 ; TextEndBattle
-
-RocketHideout1TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3
- dw RocketHideout1BattleText4 ; TextBeforeBattle
- dw RocketHideout1AfterBattleTxt4 ; TextAfterBattle
- dw RocketHideout1EndBattleText4 ; TextEndBattle
- dw RocketHideout1EndBattleText4 ; TextEndBattle
-
-RocketHideout1TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
- dw RocketHideout1BattleText5 ; TextBeforeBattle
- dw RocketHideout1AfterBattleTxt5 ; TextAfterBattle
- dw RocketHideout1EndBattleText5 ; TextEndBattle
- dw RocketHideout1EndBattleText5 ; TextEndBattle
-
-RocketHideout1TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
- dw RocketHideout1BattleText6 ; TextBeforeBattle
- dw RocketHideout1AfterBattleTxt6 ; TextAfterBattle
- dw RocketHideout1EndBattleText6 ; TextEndBattle
- dw RocketHideout1EndBattleText6 ; TextEndBattle
-
- db $ff
-
-RocketHideout1Text1:
- TX_ASM
- ld hl, RocketHideout1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text2:
- TX_ASM
- ld hl, RocketHideout1TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text3:
- TX_ASM
- ld hl, RocketHideout1TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text4:
- TX_ASM
- ld hl, RocketHideout1TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1Text5:
- TX_ASM
- ld hl, RocketHideout1TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout1EndBattleText6:
- TX_FAR _RocketHideout1EndBattleText6
- TX_ASM
- SetEvent EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_5
- ld hl, RocketHideout1Text_44c9f
- ret
-
-RocketHideout1Text_44c9f:
- db $6, "@"
-
-RocketHideout1BattleText2:
- TX_FAR _RocketHideout1BattleText2
- db "@"
-
-RocketHideout1EndBattleText2:
- TX_FAR _RocketHideout1EndBattleText2
- db "@"
-
-RocketHideout1AfterBattleTxt2:
- TX_FAR _RocketHideout1AfterBattleTxt2
- db "@"
-
-RocketHideout1BattleText3:
- TX_FAR _RocketHideout1BattleText3
- db "@"
-
-RocketHideout1EndBattleText3:
- TX_FAR _RocketHideout1EndBattleText3
- db "@"
-
-RocketHideout1AfterBattleTxt3:
- TX_FAR _RocketHideout1AfterBattleTxt3
- db "@"
-
-RocketHideout1BattleText4:
- TX_FAR _RocketHideout1BattleText4
- db "@"
-
-RocketHideout1EndBattleText4:
- TX_FAR _RocketHideout1EndBattleText4
- db "@"
-
-RocketHideout1AfterBattleTxt4:
- TX_FAR _RocketHideout1AfterBattleTxt4
- db "@"
-
-RocketHideout1BattleText5:
- TX_FAR _RocketHideout1BattleText5
- db "@"
-
-RocketHideout1EndBattleText5:
- TX_FAR _RocketHideout1EndBattleText5
- db "@"
-
-RocketHideout1AfterBattleTxt5:
- TX_FAR _RocketHideout1AfterBattleTxt5
- db "@"
-
-RocketHideout1BattleText6:
- TX_FAR _RocketHideout1BattleText6
- db "@"
-
-RocketHideout1AfterBattleTxt6:
- TX_FAR _RocketHideout1AfterBattleTxt6
- db "@"
diff --git a/scripts/rockethideout2.asm b/scripts/rockethideout2.asm
deleted file mode 100755
index b29e5396..00000000
--- a/scripts/rockethideout2.asm
+++ /dev/null
@@ -1,451 +0,0 @@
-RocketHideout2Script:
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout2TrainerHeaders
- ld de, RocketHideout2ScriptPointers
- ld a, [wRocketHideout2CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRocketHideout2CurScript], a
- ret
-
-RocketHideout2ScriptPointers:
- dw RocketHideout2Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw RocketHideout2Script3
-
-RocketHideout2Script0:
- ld a, [wYCoord]
- ld b, a
- ld a, [wXCoord]
- ld c, a
- ld hl, RocketHideout2ArrowTilePlayerMovement
- call DecodeArrowMovementRLE
- cp $ff
- jp z, CheckFightingMapTrainers
- ld hl, wd736
- set 7, [hl]
- call StartSimulatingJoypadStates
- ld a, SFX_ARROW_TILES
- call PlaySound
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $3
- ld [wCurMapScript], a
- ret
-
-;format:
-;db y,x
-;dw pointer to movement
-RocketHideout2ArrowTilePlayerMovement:
- db $9,$4
- dw RocketHideout2ArrowMovement1
- db $b,$4
- dw RocketHideout2ArrowMovement2
- db $f,$4
- dw RocketHideout2ArrowMovement3
- db $10,$4
- dw RocketHideout2ArrowMovement4
- db $13,$4
- dw RocketHideout2ArrowMovement1
- db $16,$4
- dw RocketHideout2ArrowMovement5
- db $e,$5
- dw RocketHideout2ArrowMovement6
- db $16,$6
- dw RocketHideout2ArrowMovement7
- db $18,$6
- dw RocketHideout2ArrowMovement8
- db $9,$8
- dw RocketHideout2ArrowMovement9
- db $c,$8
- dw RocketHideout2ArrowMovement10
- db $f,$8
- dw RocketHideout2ArrowMovement8
- db $13,$8
- dw RocketHideout2ArrowMovement9
- db $17,$8
- dw RocketHideout2ArrowMovement11
- db $e,$9
- dw RocketHideout2ArrowMovement12
- db $16,$9
- dw RocketHideout2ArrowMovement12
- db $9,$a
- dw RocketHideout2ArrowMovement13
- db $a,$a
- dw RocketHideout2ArrowMovement14
- db $f,$a
- dw RocketHideout2ArrowMovement15
- db $11,$a
- dw RocketHideout2ArrowMovement16
- db $13,$a
- dw RocketHideout2ArrowMovement17
- db $19,$a
- dw RocketHideout2ArrowMovement2
- db $e,$b
- dw RocketHideout2ArrowMovement18
- db $10,$b
- dw RocketHideout2ArrowMovement19
- db $12,$b
- dw RocketHideout2ArrowMovement12
- db $9,$c
- dw RocketHideout2ArrowMovement20
- db $b,$c
- dw RocketHideout2ArrowMovement21
- db $d,$c
- dw RocketHideout2ArrowMovement22
- db $11,$c
- dw RocketHideout2ArrowMovement23
- db $a,$d
- dw RocketHideout2ArrowMovement24
- db $c,$d
- dw RocketHideout2ArrowMovement25
- db $10,$d
- dw RocketHideout2ArrowMovement26
- db $12,$d
- dw RocketHideout2ArrowMovement27
- db $13,$d
- dw RocketHideout2ArrowMovement28
- db $16,$d
- dw RocketHideout2ArrowMovement29
- db $17,$d
- dw RocketHideout2ArrowMovement30
- db $11,$e
- dw RocketHideout2ArrowMovement31
- db $10,$f
- dw RocketHideout2ArrowMovement12
- db $e,$10
- dw RocketHideout2ArrowMovement32
- db $10,$10
- dw RocketHideout2ArrowMovement33
- db $12,$10
- dw RocketHideout2ArrowMovement34
- db $a,$11
- dw RocketHideout2ArrowMovement35
- db $b,$11
- dw RocketHideout2ArrowMovement36
- db $FF
-
-;format: direction, count
-;each list is read starting from the $FF and working backwards
-RocketHideout2ArrowMovement1:
- db D_LEFT,$02
- db $FF
-
-RocketHideout2ArrowMovement2:
- db D_RIGHT,$04
- db $FF
-
-RocketHideout2ArrowMovement3:
- db D_UP,$04
- db D_RIGHT,$04
- db $FF
-
-RocketHideout2ArrowMovement4:
- db D_UP,$04
- db D_RIGHT,$04
- db D_UP,$01
- db $FF
-
-RocketHideout2ArrowMovement5:
- db D_LEFT,$02
- db D_UP,$03
- db $FF
-
-RocketHideout2ArrowMovement6:
- db D_DOWN,$02
- db D_RIGHT,$04
- db $FF
-
-RocketHideout2ArrowMovement7:
- db D_UP,$02
- db $FF
-
-RocketHideout2ArrowMovement8:
- db D_UP,$04
- db $FF
-
-RocketHideout2ArrowMovement9:
- db D_LEFT,$06
- db $FF
-
-RocketHideout2ArrowMovement10:
- db D_UP,$01
- db $FF
-
-RocketHideout2ArrowMovement11:
- db D_LEFT,$06
- db D_UP,$04
- db $FF
-
-RocketHideout2ArrowMovement12:
- db D_DOWN,$02
- db $FF
-
-RocketHideout2ArrowMovement13:
- db D_LEFT,$08
- db $FF
-
-RocketHideout2ArrowMovement14:
- db D_LEFT,$08
- db D_UP,$01
- db $FF
-
-RocketHideout2ArrowMovement15:
- db D_LEFT,$08
- db D_UP,$06
- db $FF
-
-RocketHideout2ArrowMovement16:
- db D_UP,$02
- db D_RIGHT,$04
- db $FF
-
-RocketHideout2ArrowMovement17:
- db D_UP,$02
- db D_RIGHT,$04
- db D_UP,$02
- db $FF
-
-RocketHideout2ArrowMovement18:
- db D_DOWN,$02
- db D_RIGHT,$04
- db D_DOWN,$02
- db $FF
-
-RocketHideout2ArrowMovement19:
- db D_DOWN,$02
- db D_RIGHT,$04
- db $FF
-
-RocketHideout2ArrowMovement20:
- db D_LEFT,$0A
- db $FF
-
-RocketHideout2ArrowMovement21:
- db D_LEFT,$0A
- db D_UP,$02
- db $FF
-
-RocketHideout2ArrowMovement22:
- db D_LEFT,$0A
- db D_UP,$04
- db $FF
-
-RocketHideout2ArrowMovement23:
- db D_UP,$02
- db D_RIGHT,$02
- db $FF
-
-RocketHideout2ArrowMovement24:
- db D_RIGHT,$01
- db D_DOWN,$02
- db $FF
-
-RocketHideout2ArrowMovement25:
- db D_RIGHT,$01
- db $FF
-
-RocketHideout2ArrowMovement26:
- db D_DOWN,$02
- db D_RIGHT,$02
- db $FF
-
-RocketHideout2ArrowMovement27:
- db D_DOWN,$02
- db D_LEFT,$02
- db $FF
-
-RocketHideout2ArrowMovement28:
- db D_UP,$02
- db D_RIGHT,$04
- db D_UP,$02
- db D_LEFT,$03
- db $FF
-
-RocketHideout2ArrowMovement29:
- db D_DOWN,$02
- db D_LEFT,$04
- db $FF
-
-RocketHideout2ArrowMovement30:
- db D_LEFT,$06
- db D_UP,$04
- db D_LEFT,$05
- db $FF
-
-RocketHideout2ArrowMovement31:
- db D_UP,$02
- db $FF
-
-RocketHideout2ArrowMovement32:
- db D_UP,$01
- db $FF
-
-RocketHideout2ArrowMovement33:
- db D_UP,$03
- db $FF
-
-RocketHideout2ArrowMovement34:
- db D_UP,$05
- db $FF
-
-RocketHideout2ArrowMovement35:
- db D_RIGHT,$01
- db D_DOWN,$02
- db D_LEFT,$04
- db $FF
-
-RocketHideout2ArrowMovement36:
- db D_LEFT,$0A
- db D_UP,$02
- db D_LEFT,$05
- db $FF
-
-RocketHideout2Script3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- jr nz, LoadSpinnerArrowTiles
- xor a
- ld [wJoyIgnore], a
- ld hl, wd736
- res 7, [hl]
- ld a, $0
- ld [wCurMapScript], a
- ret
-
-LoadSpinnerArrowTiles:
- ld a, [wSpriteStateData1 + 2]
- srl a
- srl a
- ld hl, SpinnerPlayerFacingDirections
- ld c, a
- ld b, $0
- add hl, bc
- ld a, [hl]
- ld [wSpriteStateData1 + 2], a
- ld a, [wCurMapTileset]
- cp FACILITY
- ld hl, FacilitySpinnerArrows
- jr z, .asm_44ff6
- ld hl, GymSpinnerArrows
-.asm_44ff6
- ld a, [wSimulatedJoypadStatesIndex]
- bit 0, a
- jr nz, .asm_45001
- ld de, $18
- add hl, de
-.asm_45001
- ld a, $4
- ld bc, $0
-.asm_45006
- push af
- push hl
- push bc
- add hl, bc
- ld a, [hli]
- ld e, a
- ld a, [hli]
- ld d, a
- ld a, [hli]
- ld c, a
- ld a, [hli]
- ld b, a
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call CopyVideoData
- pop bc
- ld a, $6
- add c
- ld c, a
- pop hl
- pop af
- dec a
- jr nz, .asm_45006
- ret
-
-spinner: MACRO
-; \1: source
-; \2: offset (BANK() chokes on literals)
-; \3: length
-; \4: dest
- dw \1 + \2
- db \3, BANK(\1)
- dw \4
-ENDM
-
-FacilitySpinnerArrows:
-FACILITY_SPINNER EQU $20 * $10
-vFacilitySpinner EQU vTileset + FACILITY_SPINNER
-
- spinner SpinnerArrowAnimTiles, $00, 1, vFacilitySpinner
- spinner SpinnerArrowAnimTiles, $10, 1, vFacilitySpinner + $10
- spinner SpinnerArrowAnimTiles, $20, 1, vFacilitySpinner + $100
- spinner SpinnerArrowAnimTiles, $30, 1, vFacilitySpinner + $110
- spinner Facility_GFX, FACILITY_SPINNER + $000, 1, vFacilitySpinner
- spinner Facility_GFX, FACILITY_SPINNER + $010, 1, vFacilitySpinner + $10
- spinner Facility_GFX, FACILITY_SPINNER + $100, 1, vFacilitySpinner + $100
- spinner Facility_GFX, FACILITY_SPINNER + $110, 1, vFacilitySpinner + $110
-
-GymSpinnerArrows:
-GYM_SPINNER EQU $3c * $10
-vGymSpinner EQU vTileset + GYM_SPINNER
-
- spinner SpinnerArrowAnimTiles, $10, 1, vGymSpinner
- spinner SpinnerArrowAnimTiles, $30, 1, vGymSpinner + $10
- spinner SpinnerArrowAnimTiles, $00, 1, vGymSpinner + $100
- spinner SpinnerArrowAnimTiles, $20, 1, vGymSpinner + $110
- spinner Gym_GFX, GYM_SPINNER + $000, 1, vGymSpinner
- spinner Gym_GFX, GYM_SPINNER + $010, 1, vGymSpinner + $10
- spinner Gym_GFX, GYM_SPINNER + $100, 1, vGymSpinner + $100
- spinner Gym_GFX, GYM_SPINNER + $110, 1, vGymSpinner + $110
-
-SpinnerPlayerFacingDirections:
-; This isn't the order of the facing directions. Rather, it's a list of
-; the facing directions that come next. For example, when the player is
-; facing down (00), the next facing direction is left (08).
- db $08 ; down -> left
- db $0C ; up -> right
- db $04 ; left -> up
- db $00 ; right -> down
-
-; these tiles are the animation for the tiles that push the player in dungeons like Rocket HQ
-SpinnerArrowAnimTiles:
- INCBIN "gfx/spinner_arrow.2bpp"
-
-RocketHideout2TextPointers:
- dw RocketHideout2Text1
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-RocketHideout2TrainerHeaders:
-RocketHideout2TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_2_TRAINER_0
- dw RocketHideout2BattleText2 ; TextBeforeBattle
- dw RocketHideout2AfterBattleTxt2 ; TextAfterBattle
- dw RocketHideout2EndBattleText2 ; TextEndBattle
- dw RocketHideout2EndBattleText2 ; TextEndBattle
-
- db $ff
-
-RocketHideout2Text1:
- TX_ASM
- ld hl, RocketHideout2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout2BattleText2:
- TX_FAR _RocketHideout2BattleText2
- db "@"
-
-RocketHideout2EndBattleText2:
- TX_FAR _RocketHideout2EndBattleText2
- db "@"
-
-RocketHideout2AfterBattleTxt2:
- TX_FAR _RocketHideout2AfterBattleTxt2
- db "@"
diff --git a/scripts/rockethideout3.asm b/scripts/rockethideout3.asm
deleted file mode 100755
index ac08e868..00000000
--- a/scripts/rockethideout3.asm
+++ /dev/null
@@ -1,207 +0,0 @@
-RocketHideout3Script:
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout3TrainerHeaders
- ld de, RocketHideout3ScriptPointers
- ld a, [wRocketHideout3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRocketHideout3CurScript], a
- ret
-
-RocketHideout3ScriptPointers:
- dw RocketHideout3Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw RocketHideout3Script3
-
-RocketHideout3Script0:
- ld a, [wYCoord]
- ld b, a
- ld a, [wXCoord]
- ld c, a
- ld hl, RocketHideout3ArrowTilePlayerMovement
- call DecodeArrowMovementRLE
- cp $ff
- jp z, CheckFightingMapTrainers
- ld hl, wd736
- set 7, [hl]
- call StartSimulatingJoypadStates
- ld a, SFX_ARROW_TILES
- call PlaySound
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $3
- ld [wCurMapScript], a
- ret
-
-;format:
-;db y,x
-;dw pointer to movement
-RocketHideout3ArrowTilePlayerMovement:
- db $d,$a
- dw RocketHideout3ArrowMovement6
- db $13,$a
- dw RocketHideout3ArrowMovement1
- db $12,$b
- dw RocketHideout3ArrowMovement2
- db $b,$c
- dw RocketHideout3ArrowMovement3
- db $11,$c
- dw RocketHideout3ArrowMovement4
- db $14,$c
- dw RocketHideout3ArrowMovement5
- db $10,$d
- dw RocketHideout3ArrowMovement6
- db $b,$e
- dw RocketHideout3ArrowMovement7
- db $f,$e
- dw RocketHideout3ArrowMovement6
- db $11,$e
- dw RocketHideout3ArrowMovement8
- db $13,$e
- dw RocketHideout3ArrowMovement9
- db $10,$f
- dw RocketHideout3ArrowMovement7
- db $12,$f
- dw RocketHideout3ArrowMovement10
- db $d,$10
- dw RocketHideout3ArrowMovement11
- db $c,$11
- dw RocketHideout3ArrowMovement10
- db $10,$12
- dw RocketHideout3ArrowMovement12
- db $FF
-
-;format: direction, count
-;each list is read starting from the $FF and working backwards
-RocketHideout3ArrowMovement1:
- db D_RIGHT,$04
- db D_UP,$04
- db D_RIGHT,$04
- db $FF
-
-RocketHideout3ArrowMovement2:
- db D_DOWN,$04
- db D_RIGHT,$04
- db $FF
-
-RocketHideout3ArrowMovement3:
- db D_LEFT,$02
- db $FF
-
-RocketHideout3ArrowMovement4:
- db D_RIGHT,$04
- db D_UP,$02
- db D_RIGHT,$02
- db $FF
-
-RocketHideout3ArrowMovement5:
- db D_RIGHT,$04
- db D_UP,$02
- db D_RIGHT,$02
- db D_UP,$03
- db $FF
-
-RocketHideout3ArrowMovement6:
- db D_RIGHT,$04
- db $FF
-
-RocketHideout3ArrowMovement7:
- db D_RIGHT,$02
- db $FF
-
-RocketHideout3ArrowMovement8:
- db D_RIGHT,$04
- db D_UP,$02
- db $FF
-
-RocketHideout3ArrowMovement9:
- db D_RIGHT,$04
- db D_UP,$04
- db $FF
-
-RocketHideout3ArrowMovement10:
- db D_DOWN,$04
- db $FF
-
-RocketHideout3ArrowMovement11:
- db D_UP,$02
- db $FF
-
-RocketHideout3ArrowMovement12:
- db D_UP,$01
- db $FF
-
-RocketHideout3Script3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- jp nz, LoadSpinnerArrowTiles
- xor a
- ld [wJoyIgnore], a
- ld hl, wd736
- res 7, [hl]
- ld a, $0
- ld [wCurMapScript], a
- ret
-
-RocketHideout3TextPointers:
- dw RocketHideout3Text1
- dw RocketHideout3Text2
- dw PickUpItemText
- dw PickUpItemText
-
-RocketHideout3TrainerHeaders:
-RocketHideout3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0
- dw RocketHideout3BattleText2 ; TextBeforeBattle
- dw RocketHideout3AfterBattleTxt2 ; TextAfterBattle
- dw RocketHideout3EndBattleText2 ; TextEndBattle
- dw RocketHideout3EndBattleText2 ; TextEndBattle
-
-RocketHideout3TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_2
- dw RocketHideout3BattleTxt ; TextBeforeBattle
- dw RocketHideout3AfterBattleText3 ; TextAfterBattle
- dw RocketHideout3EndBattleText3 ; TextEndBattle
- dw RocketHideout3EndBattleText3 ; TextEndBattle
-
- db $ff
-
-RocketHideout3Text1:
- TX_ASM
- ld hl, RocketHideout3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout3BattleText2:
- TX_FAR _RocketHideout3BattleText2
- db "@"
-
-RocketHideout3EndBattleText2:
- TX_FAR _RocketHideout3EndBattleText2
- db "@"
-
-RocketHideout3AfterBattleTxt2:
- TX_FAR _RocketHideout3AfterBattleTxt2
- db "@"
-
-RocketHideout3Text2:
- TX_ASM
- ld hl, RocketHideout3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout3BattleTxt:
- TX_FAR _RocketHideout3BattleTxt
- db "@"
-
-RocketHideout3EndBattleText3:
- TX_FAR _RocketHideout3EndBattleText3
- db "@"
-
-RocketHideout3AfterBattleText3:
- TX_FAR _RocketHide3AfterBattleText3
- db "@"
diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm
deleted file mode 100755
index 1781b12e..00000000
--- a/scripts/rockethideout4.asm
+++ /dev/null
@@ -1,416 +0,0 @@
-RocketHideout4Script:
- call EnableAutoTextBoxDrawing
- ld hl, RocketHideout4TrainerHeader0
- ld de, RocketHideout4ScriptPointers
- ld a, [wRocketHideout4CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRocketHideout4CurScript], a
- ret
-
-RocketHideout4Script_45510:
- CheckAndResetEvent EVENT_6A0
- call nz, RocketHideout4Script_45525
- xor a
- ld [wJoyIgnore], a
-RocketHideout4Script_4551e:
- ld [wRocketHideout4CurScript], a
- ld [wCurMapScript], a
- ret
-
-RocketHideout4Script_45525:
- ld a, HS_ROCKET_HIDEOUT_4_JAMES
- call RocketHideout4Script_45756
- ld a, HS_ROCKET_HIDEOUT_4_JESSIE
- call RocketHideout4Script_45756
- ret
-
-RocketHideout4ScriptPointers:
- dw RocketHideout4Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw RocketHideout4Script3
- dw RocketHideout4Script4
- dw RocketHideout4Script5
- dw RocketHideout4Script6
- dw RocketHideout4Script7
- dw RocketHideout4Script8
- dw RocketHideout4Script9
- dw RocketHideout4Script10
- dw RocketHideout4Script11
- dw RocketHideout4Script12
- dw RocketHideout4Script13
-
-RocketHideout4Script3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, RocketHideout4Script_45510
- ld a, $fc
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call GBFadeOutToBlack
- ld a, HS_ROCKET_HIDEOUT_4_GIOVANNI
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_ROCKET_HIDEOUT_4_ITEM_4
- ld [wMissableObjectIndex], a
- predef ShowObject
- call UpdateSprites
- call GBFadeInFromBlack
- xor a
- ld [wJoyIgnore], a
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- ld a, $0
- ld [wRocketHideout4CurScript], a
- ld [wCurMapScript], a
- ret
-
-RocketHideout4Script0:
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0
- call z, RocketHideout4Script_455a5
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3
- call z, CheckFightingMapTrainers
- ret
-
-RocketHideout4Script_455a5:
- ld a, [wYCoord]
- cp $e
- ret nz
- ResetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
- ld a, [wXCoord]
- cp $18
- jr z, .asm_455c2
- ld a, [wXCoord]
- cp $19
- ret nz
- SetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
-.asm_455c2
- xor a
- ld [hJoyHeld], a
- ld a, $fc
- ld [wJoyIgnore], a
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- call UpdateSprites
- call Delay3
- call UpdateSprites
- call Delay3
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, HS_ROCKET_HIDEOUT_4_JAMES
- call RocketHideout4Script_45747
- ld a, HS_ROCKET_HIDEOUT_4_JESSIE
- call RocketHideout4Script_45747
- ld a, $4
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4JessieJamesMovementData_45605:
- db $4
-RocketHideout4JessieJamesMovementData_45606:
- db $4
- db $4
- db $4
- db $ff
-
-RocketHideout4Script4:
- ld de, RocketHideout4JessieJamesMovementData_45605
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
- jr z, .asm_45617
- ld de, RocketHideout4JessieJamesMovementData_45606
-.asm_45617
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $5
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4Script5:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
-RocketHideout4Script6:
- ld a, $2
- ld [wSpriteStateData1 + 2 * $10 + 1], a
- ld a, SPRITE_FACING_LEFT
- ld [wSpriteStateData1 + 2 * $10 + 9], a
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
- jr z, .asm_4564a
- ld a, SPRITE_FACING_DOWN
- ld [wSpriteStateData1 + 2 * $10 + 9], a
-.asm_4564a
- call Delay3
- ld a, $fc
- ld [wJoyIgnore], a
-RocketHideout4Script7:
- ld de, RocketHideout4JessieJamesMovementData_45606
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
- jr z, .asm_4565f
- ld de, RocketHideout4JessieJamesMovementData_45605
-.asm_4565f
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $8
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4Script8:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $fc
- ld [wJoyIgnore], a
-RocketHideout4Script9:
- ld a, $2
- ld [wSpriteStateData1 + 3 * $10 + 1], a
- ld a, SPRITE_FACING_DOWN
- ld [wSpriteStateData1 + 3 * $10 + 9], a
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2
- jr z, .asm_45697
- ld a, SPRITE_FACING_RIGHT
- ld [wSpriteStateData1 + 3 * $10 + 9], a
-.asm_45697
- call Delay3
- ld a, $c
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-RocketHideout4Script10:
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, RocketHideout4JessieJamesEndBattleText
- ld de, RocketHideout4JessieJamesEndBattleText
- call SaveEndBattleTextPointers
- ld a, OPP_ROCKET
- ld [wCurOpponent], a
- ld a, $2b
- ld [wTrainerNo], a
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- SetEvent EVENT_6A0
- ld a, $b
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4Script11:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wIsInBattle]
- cp $ff
- jp z, RocketHideout4Script_45510
- ld a, $2
- ld [wSpriteStateData1 + 2 * $10 + 1], a
- ld [wSpriteStateData1 + 3 * $10 + 1], a
- xor a
- ld [wSpriteStateData1 + 2 * $10 + 9], a
- ld [wSpriteStateData1 + 3 * $10 + 9], a
- ld a, $fc
- ld [wJoyIgnore], a
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $c
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4Script12:
- ld a, $ff
- ld [wJoyIgnore], a
- call GBFadeOutToBlack
- ld a, HS_ROCKET_HIDEOUT_4_JAMES
- call RocketHideout4Script_45756
- ld a, HS_ROCKET_HIDEOUT_4_JESSIE
- call RocketHideout4Script_45756
- call UpdateSprites
- call Delay3
- call GBFadeInFromBlack
- ld a, $d
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4Script13:
- call PlayDefaultMusic
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0
- ld a, $0
- call RocketHideout4Script_4551e
- ret
-
-RocketHideout4Script_45747:
- ld [wMissableObjectIndex], a
- predef ShowObject
- call UpdateSprites
- call Delay3
- ret
-
-RocketHideout4Script_45756:
- ld [wMissableObjectIndex], a
- predef HideObject
- ret
-
-RocketHideout4TextPointers:
- dw RocketHideout4Text0
- dw RocketHideout4Text1
- dw RocketHideout4Text2
- dw RocketHideout4Text3
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw RocketHideout4Text9
- dw RocketHideout4Text10
- dw RocketHideout4Text11
- dw RocketHideout4Text12
-
-RocketHideout4TrainerHeaders:
-RocketHideout4TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3
- db ($1 << 4)
- dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3
- dw RocketHideout4Trainer0BeforeText
- dw RocketHideout4Trainer0AfterText
- dw RocketHideout4Trainer0EndBattleText
- dw RocketHideout4Trainer0EndBattleText
- db $ff
-
-RocketHideout4Text1:
-RocketHideout4Text2:
- db "@"
-
-RocketHideout4Text10:
- TX_FAR _RocketHideoutJessieJamesText1
- TX_ASM
- ld c, 10
- call DelayFrames
- ld a, $8
- ld [wPlayerMovingDirection], a
- ld a, $0
- ld [wEmotionBubbleSpriteIndex], a
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld c, 20
- call DelayFrames
- jp TextScriptEnd
-
-RocketHideout4Text11:
- TX_FAR _RocketHideoutJessieJamesText2
- db "@"
-
-RocketHideout4JessieJamesEndBattleText:
- TX_FAR _RocketHideoutJessieJamesText3
- db "@"
-
-RocketHideout4Text12:
- TX_FAR _RocketHideoutJessieJamesText4
- TX_ASM
- ld c, 64
- call DelayFrames
- jp TextScriptEnd
-
-RocketHideout4Text0:
- TX_ASM
- CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI
- jp nz, .asm_457fb
- ld hl, RocketHideout4Text_45804
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, RocketHideout4Text_45809
- ld de, RocketHideout4Text_45809
- call SaveEndBattleTextPointers
- ld a, [hSpriteIndexOrTextID]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wRocketHideout4CurScript], a
- ld [wCurMapScript], a
- jr .asm_45801
-
-.asm_457fb
- ld hl, RocketHideout4Text9
- call PrintText
-.asm_45801
- jp TextScriptEnd
-
-RocketHideout4Text_45804:
- TX_FAR _RocketHideout4Text_4557a
- db "@"
-
-RocketHideout4Text_45809:
- TX_FAR _RocketHideout4Text_4557f
- db "@"
-
-RocketHideout4Text9:
- TX_FAR _RocketHideout4Text_45584
- db "@"
-
-RocketHideout4Text3:
- TX_ASM
- ld hl, RocketHideout4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RocketHideout4Trainer0BeforeText:
- TX_FAR _RocketHideout4BattleText4
- db "@"
-
-RocketHideout4Trainer0EndBattleText:
- TX_FAR _RocketHideout4EndBattleText4
- TX_BUTTON_SOUND
- TX_ASM
- SetEvent EVENT_ROCKET_DROPPED_LIFT_KEY
- ld a, HS_ROCKET_HIDEOUT_4_ITEM_5
- ld [wMissableObjectIndex], a
- predef ShowObject
- jp TextScriptEnd
-
-RocketHideout4Trainer0AfterText:
- TX_ASM
- ld hl, RocketHideout4Text_45844
- call PrintText
- jp TextScriptEnd
-
-RocketHideout4Text_45844:
- TX_FAR _RocketHideout4Text_455ec
- db "@"
diff --git a/scripts/rockethideoutelevator.asm b/scripts/rockethideoutelevator.asm
deleted file mode 100755
index 526ac3cc..00000000
--- a/scripts/rockethideoutelevator.asm
+++ /dev/null
@@ -1,84 +0,0 @@
-RocketHideoutElevatorScript:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, RocketHideoutElevatorScript_4572c
- pop hl
- bit 7, [hl]
- res 7, [hl]
- call nz, RocketHideoutElevatorScript_4575f
- xor a
- ld [wAutoTextBoxDrawingControl], a
- inc a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ret
-
-RocketHideoutElevatorScript_4572c:
- ld hl, wWarpEntries
- ld a, [wWarpedFromWhichWarp]
- ld b, a
- ld a, [wWarpedFromWhichMap]
- ld c, a
- call RocketHideoutElevatorScript_4573a
-
-RocketHideoutElevatorScript_4573a:
- inc hl
- inc hl
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ret
-
-RocketHideoutElevatorScript_45741:
- ld hl, RocketHideoutElavatorFloors
- call LoadItemList
- ld hl, RocketHideoutElevatorWarpMaps
- ld de, wElevatorWarpMaps
- ld bc, RocketHideoutElevatorWarpMapsEnd - RocketHideoutElevatorWarpMaps
- call CopyData
- ret
-
-RocketHideoutElavatorFloors:
- db $03 ; num elements in list
- db FLOOR_B1F
- db FLOOR_B2F
- db FLOOR_B4F
- db $FF ; terminator
-
-RocketHideoutElevatorWarpMaps:
-; first byte is warp number
-; second byte is map number
-; These specify where the player goes after getting out of the elevator.
- db $04, ROCKET_HIDEOUT_1
- db $04, ROCKET_HIDEOUT_2
- db $02, ROCKET_HIDEOUT_4
-RocketHideoutElevatorWarpMapsEnd:
-
-RocketHideoutElevatorScript_4575f:
- call Delay3
- callba ShakeElevator
- ret
-
-RocketHideoutElevatorTextPointers:
- dw RocketHideoutElevatorText1
-
-RocketHideoutElevatorText1:
- TX_ASM
- ld b, LIFT_KEY
- call IsItemInBag
- jr z, .asm_45782
- call RocketHideoutElevatorScript_45741
- ld hl, RocketHideoutElevatorWarpMaps
- predef DisplayElevatorFloorMenu
- jr .asm_45788
-.asm_45782
- ld hl, RocketHideoutElevatorText_4578b
- call PrintText
-.asm_45788
- jp TextScriptEnd
-
-RocketHideoutElevatorText_4578b:
- TX_FAR _RocketElevatorText_4578b
- db $d, "@"
diff --git a/scripts/rocktunnel1.asm b/scripts/rocktunnel1.asm
deleted file mode 100755
index 2819c350..00000000
--- a/scripts/rocktunnel1.asm
+++ /dev/null
@@ -1,214 +0,0 @@
-RockTunnel1Script:
- call EnableAutoTextBoxDrawing
- ld hl, RockTunnel1TrainerHeaders
- ld de, RockTunnel1ScriptPointers
- ld a, [wRockTunnel1CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRockTunnel1CurScript], a
- ret
-
-RockTunnel1ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-RockTunnel1TextPointers:
- dw RockTunnel1Text1
- dw RockTunnel1Text2
- dw RockTunnel1Text3
- dw RockTunnel1Text4
- dw RockTunnel1Text5
- dw RockTunnel1Text6
- dw RockTunnel1Text7
- dw RockTunnel1Text8
-
-RockTunnel1TrainerHeaders:
-RockTunnel1TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_1
- dw RockTunnel1BattleText1 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText1 ; TextAfterBattle
- dw RockTunnel1EndBattleText1 ; TextEndBattle
- dw RockTunnel1EndBattleText1 ; TextEndBattle
-
-RockTunnel1TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_2
- dw RockTunnel1BattleText2 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText2 ; TextAfterBattle
- dw RockTunnel1EndBattleText2 ; TextEndBattle
- dw RockTunnel1EndBattleText2 ; TextEndBattle
-
-RockTunnel1TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_3
- dw RockTunnel1BattleText3 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText3 ; TextAfterBattle
- dw RockTunnel1EndBattleText3 ; TextEndBattle
- dw RockTunnel1EndBattleText3 ; TextEndBattle
-
-RockTunnel1TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_4
- dw RockTunnel1BattleText4 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText4 ; TextAfterBattle
- dw RockTunnel1EndBattleText4 ; TextEndBattle
- dw RockTunnel1EndBattleText4 ; TextEndBattle
-
-RockTunnel1TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_5
- dw RockTunnel1BattleText5 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText5 ; TextAfterBattle
- dw RockTunnel1EndBattleText5 ; TextEndBattle
- dw RockTunnel1EndBattleText5 ; TextEndBattle
-
-RockTunnel1TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_6
- dw RockTunnel1BattleText6 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText6 ; TextAfterBattle
- dw RockTunnel1EndBattleText6 ; TextEndBattle
- dw RockTunnel1EndBattleText6 ; TextEndBattle
-
-RockTunnel1TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_7
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_1_TRAINER_7
- dw RockTunnel1BattleText7 ; TextBeforeBattle
- dw RockTunnel1AfterBattleText7 ; TextAfterBattle
- dw RockTunnel1EndBattleText7 ; TextEndBattle
- dw RockTunnel1EndBattleText7 ; TextEndBattle
-
- db $ff
-
-RockTunnel1Text1:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader1
- jr RockTunnel1TalkToTrainer
-
-RockTunnel1Text2:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader2
- jr RockTunnel1TalkToTrainer
-
-RockTunnel1Text3:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader3
- jr RockTunnel1TalkToTrainer
-
-RockTunnel1Text4:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader4
- jr RockTunnel1TalkToTrainer
-
-RockTunnel1Text5:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader5
- jr RockTunnel1TalkToTrainer
-
-RockTunnel1Text6:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader6
- jr RockTunnel1TalkToTrainer
-
-RockTunnel1Text7:
- TX_ASM
- ld hl, RockTunnel1TrainerHeader7
-RockTunnel1TalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel1BattleText1:
- TX_FAR _RockTunnel1BattleText1
- db "@"
-
-RockTunnel1EndBattleText1:
- TX_FAR _RockTunnel1EndBattleText1
- db "@"
-
-RockTunnel1AfterBattleText1:
- TX_FAR _RockTunnel1AfterBattleText1
- db "@"
-
-RockTunnel1BattleText2:
- TX_FAR _RockTunnel1BattleText2
- db "@"
-
-RockTunnel1EndBattleText2:
- TX_FAR _RockTunnel1EndBattleText2
- db "@"
-
-RockTunnel1AfterBattleText2:
- TX_FAR _RockTunnel1AfterBattleText2
- db "@"
-
-RockTunnel1BattleText3:
- TX_FAR _RockTunnel1BattleText3
- db "@"
-
-RockTunnel1EndBattleText3:
- TX_FAR _RockTunnel1EndBattleText3
- db "@"
-
-RockTunnel1AfterBattleText3:
- TX_FAR _RockTunnel1AfterBattleText3
- db "@"
-
-RockTunnel1BattleText4:
- TX_FAR _RockTunnel1BattleText4
- db "@"
-
-RockTunnel1EndBattleText4:
- TX_FAR _RockTunnel1EndBattleText4
- db "@"
-
-RockTunnel1AfterBattleText4:
- TX_FAR _RockTunnel1AfterBattleText4
- db "@"
-
-RockTunnel1BattleText5:
- TX_FAR _RockTunnel1BattleText5
- db "@"
-
-RockTunnel1EndBattleText5:
- TX_FAR _RockTunnel1EndBattleText5
- db "@"
-
-RockTunnel1AfterBattleText5:
- TX_FAR _RockTunnel1AfterBattleText5
- db "@"
-
-RockTunnel1BattleText6:
- TX_FAR _RockTunnel1BattleText6
- db "@"
-
-RockTunnel1EndBattleText6:
- TX_FAR _RockTunnel1EndBattleText6
- db "@"
-
-RockTunnel1AfterBattleText6:
- TX_FAR _RockTunnel1AfterBattleText6
- db "@"
-
-RockTunnel1BattleText7:
- TX_FAR _RockTunnel1BattleText7
- db "@"
-
-RockTunnel1EndBattleText7:
- TX_FAR _RockTunnel1EndBattleText7
- db "@"
-
-RockTunnel1AfterBattleText7:
- TX_FAR _RockTunnel1AfterBattleText7
- db "@"
-
-RockTunnel1Text8:
- TX_FAR _RockTunnel1Text8
- db "@"
diff --git a/scripts/rocktunnel2.asm b/scripts/rocktunnel2.asm
deleted file mode 100755
index 7ac3f426..00000000
--- a/scripts/rocktunnel2.asm
+++ /dev/null
@@ -1,242 +0,0 @@
-RockTunnel2Script:
- call EnableAutoTextBoxDrawing
- ld hl, RockTunnel2TrainerHeaders
- ld de, RockTunnel2ScriptPointers
- ld a, [wRockTunnel2CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRockTunnel2CurScript], a
- ret
-
-RockTunnel2ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-RockTunnel2TextPointers:
- dw RockTunnel2Text1
- dw RockTunnel2Text2
- dw RockTunnel2Text3
- dw RockTunnel2Text4
- dw RockTunnel2Text5
- dw RockTunnel2Text6
- dw RockTunnel2Text7
- dw RockTunnel2Text8
-
-RockTunnel2TrainerHeaders:
-RockTunnel2TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_0
- dw RockTunnel2BattleText2 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText2 ; TextAfterBattle
- dw RockTunnel2EndBattleText2 ; TextEndBattle
- dw RockTunnel2EndBattleText2 ; TextEndBattle
-
-RockTunnel2TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_2
- dw RockTunnel2BattleText3 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText3 ; TextAfterBattle
- dw RockTunnel2EndBattleText3 ; TextEndBattle
- dw RockTunnel2EndBattleText3 ; TextEndBattle
-
-RockTunnel2TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_3
- dw RockTunnel2BattleText4 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText4 ; TextAfterBattle
- dw RockTunnel2EndBattleText4 ; TextEndBattle
- dw RockTunnel2EndBattleText4 ; TextEndBattle
-
-RockTunnel2TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_4
- dw RockTunnel2BattleText5 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText5 ; TextAfterBattle
- dw RockTunnel2EndBattleText5 ; TextEndBattle
- dw RockTunnel2EndBattleText5 ; TextEndBattle
-
-RockTunnel2TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_5
- dw RockTunnel2BattleText6 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText6 ; TextAfterBattle
- dw RockTunnel2EndBattleText6 ; TextEndBattle
- dw RockTunnel2EndBattleText6 ; TextEndBattle
-
-RockTunnel2TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_6
- dw RockTunnel2BattleText7 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText7 ; TextAfterBattle
- dw RockTunnel2EndBattleText7 ; TextEndBattle
- dw RockTunnel2EndBattleText7 ; TextEndBattle
-
-RockTunnel2TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_7
- dw RockTunnel2BattleText8 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText8 ; TextAfterBattle
- dw RockTunnel2EndBattleText8 ; TextEndBattle
- dw RockTunnel2EndBattleText8 ; TextEndBattle
-
-RockTunnel2TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_8, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROCK_TUNNEL_2_TRAINER_8, 1
- dw RockTunnel2BattleText9 ; TextBeforeBattle
- dw RockTunnel2AfterBattleText9 ; TextAfterBattle
- dw RockTunnel2EndBattleText9 ; TextEndBattle
- dw RockTunnel2EndBattleText9 ; TextEndBattle
-
- db $ff
-
-RockTunnel2Text1:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text2:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text3:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text4:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text5:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text6:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text7:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2Text8:
- TX_ASM
- ld hl, RockTunnel2TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-RockTunnel2BattleText2:
- TX_FAR _RockTunnel2BattleText2
- db "@"
-
-RockTunnel2EndBattleText2:
- TX_FAR _RockTunnel2EndBattleText2
- db "@"
-
-RockTunnel2AfterBattleText2:
- TX_FAR _RockTunnel2AfterBattleText2
- db "@"
-
-RockTunnel2BattleText3:
- TX_FAR _RockTunnel2BattleText3
- db "@"
-
-RockTunnel2EndBattleText3:
- TX_FAR _RockTunnel2EndBattleText3
- db "@"
-
-RockTunnel2AfterBattleText3:
- TX_FAR _RockTunnel2AfterBattleText3
- db "@"
-
-RockTunnel2BattleText4:
- TX_FAR _RockTunnel2BattleText4
- db "@"
-
-RockTunnel2EndBattleText4:
- TX_FAR _RockTunnel2EndBattleText4
- db "@"
-
-RockTunnel2AfterBattleText4:
- TX_FAR _RockTunnel2AfterBattleText4
- db "@"
-
-RockTunnel2BattleText5:
- TX_FAR _RockTunnel2BattleText5
- db "@"
-
-RockTunnel2EndBattleText5:
- TX_FAR _RockTunnel2EndBattleText5
- db "@"
-
-RockTunnel2AfterBattleText5:
- TX_FAR _RockTunnel2AfterBattleText5
- db "@"
-
-RockTunnel2BattleText6:
- TX_FAR _RockTunnel2BattleText6
- db "@"
-
-RockTunnel2EndBattleText6:
- TX_FAR _RockTunnel2EndBattleText6
- db "@"
-
-RockTunnel2AfterBattleText6:
- TX_FAR _RockTunnel2AfterBattleText6
- db "@"
-
-RockTunnel2BattleText7:
- TX_FAR _RockTunnel2BattleText7
- db "@"
-
-RockTunnel2EndBattleText7:
- TX_FAR _RockTunnel2EndBattleText7
- db "@"
-
-RockTunnel2AfterBattleText7:
- TX_FAR _RockTunnel2AfterBattleText7
- db "@"
-
-RockTunnel2BattleText8:
- TX_FAR _RockTunnel2BattleText8
- db "@"
-
-RockTunnel2EndBattleText8:
- TX_FAR _RockTunnel2EndBattleText8
- db "@"
-
-RockTunnel2AfterBattleText8:
- TX_FAR _RockTunnel2AfterBattleText8
- db "@"
-
-RockTunnel2BattleText9:
- TX_FAR _RockTunnel2BattleText9
- db "@"
-
-RockTunnel2EndBattleText9:
- TX_FAR _RockTunnel2EndBattleText9
- db "@"
-
-RockTunnel2AfterBattleText9:
- TX_FAR _RockTunnel2AfterBattleText9
- db "@"
diff --git a/scripts/rocktunnelpokecenter.asm b/scripts/rocktunnelpokecenter.asm
deleted file mode 100755
index 68c5f31a..00000000
--- a/scripts/rocktunnelpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-RockTunnelPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-RockTunnelPokecenterTextPointers:
- dw RockTunnelHealNurseText
- dw RockTunnelPokecenterText2
- dw RockTunnelPokecenterText3
- dw RockTunnelTradeNurseText
- dw RockTunnelPokecenterText5
-
-RockTunnelHealNurseText:
- TX_POKECENTER_NURSE
-
-RockTunnelPokecenterText2:
- TX_FAR _RockTunnelPokecenterText2
- db "@"
-
-RockTunnelPokecenterText3:
- TX_FAR _RockTunnelPokecenterText3
- db "@"
-
-RockTunnelTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-RockTunnelPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/route1.asm b/scripts/route1.asm
deleted file mode 100755
index 4d046124..00000000
--- a/scripts/route1.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-Route1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-Route1TextPointers:
- dw Route1Text1
- dw Route1Text2
- dw Route1Text3
-
-Route1Text1:
- TX_ASM
- callba Func_f1ad2
- jp TextScriptEnd
-
-Route1Text2:
- TX_ASM
- callba Func_f1b0f
- jp TextScriptEnd
-
-Route1Text3:
- TX_ASM
- callba Func_f1b1b
- jp TextScriptEnd
diff --git a/scripts/route10.asm b/scripts/route10.asm
deleted file mode 100755
index ca0ab190..00000000
--- a/scripts/route10.asm
+++ /dev/null
@@ -1,199 +0,0 @@
-Route10Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route10TrainerHeaders
- ld de, Route10ScriptPointers
- ld a, [wRoute10CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute10CurScript], a
- ret
-
-Route10ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route10TextPointers:
- dw Route10Text1
- dw Route10Text2
- dw Route10Text3
- dw Route10Text4
- dw Route10Text5
- dw Route10Text6
- dw Route10Text7
- dw PokeCenterSignText
- dw Route10Text9
- dw Route10Text10
-
-Route10TrainerHeaders:
-Route10TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_0
- dw Route10BattleText1 ; TextBeforeBattle
- dw Route10AfterBattleText1 ; TextAfterBattle
- dw Route10EndBattleText1 ; TextEndBattle
- dw Route10EndBattleText1 ; TextEndBattle
-
-Route10TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_1
- dw Route10BattleText2 ; TextBeforeBattle
- dw Route10AfterBattleText2 ; TextAfterBattle
- dw Route10EndBattleText2 ; TextEndBattle
- dw Route10EndBattleText2 ; TextEndBattle
-
-Route10TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_2
- dw Route10BattleText3 ; TextBeforeBattle
- dw Route10AfterBattleText3 ; TextAfterBattle
- dw Route10EndBattleText3 ; TextEndBattle
- dw Route10EndBattleText3 ; TextEndBattle
-
-Route10TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_3
- dw Route10BattleText4 ; TextBeforeBattle
- dw Route10AfterBattleText4 ; TextAfterBattle
- dw Route10EndBattleText4 ; TextEndBattle
- dw Route10EndBattleText4 ; TextEndBattle
-
-Route10TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_4
- dw Route10BattleText5 ; TextBeforeBattle
- dw Route10AfterBattleText5 ; TextAfterBattle
- dw Route10EndBattleText5 ; TextEndBattle
- dw Route10EndBattleText5 ; TextEndBattle
-
-Route10TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_10_TRAINER_5
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_10_TRAINER_5
- dw Route10BattleText6 ; TextBeforeBattle
- dw Route10AfterBattleText6 ; TextAfterBattle
- dw Route10EndBattleText6 ; TextEndBattle
- dw Route10EndBattleText6 ; TextEndBattle
-
- db $ff
-
-Route10Text1:
- TX_ASM
- ld hl, Route10TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText1:
- TX_FAR _Route10BattleText1
- db "@"
-
-Route10EndBattleText1:
- TX_FAR _Route10EndBattleText1
- db "@"
-
-Route10AfterBattleText1:
- TX_FAR _Route10AfterBattleText1
- db "@"
-
-Route10Text2:
- TX_ASM
- ld hl, Route10TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText2:
- TX_FAR _Route10BattleText2
- db "@"
-
-Route10EndBattleText2:
- TX_FAR _Route10EndBattleText2
- db "@"
-
-Route10AfterBattleText2:
- TX_FAR _Route10AfterBattleText2
- db "@"
-
-Route10Text3:
- TX_ASM
- ld hl, Route10TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText3:
- TX_FAR _Route10BattleText3
- db "@"
-
-Route10EndBattleText3:
- TX_FAR _Route10EndBattleText3
- db "@"
-
-Route10AfterBattleText3:
- TX_FAR _Route10AfterBattleText3
- db "@"
-
-Route10Text4:
- TX_ASM
- ld hl, Route10TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText4:
- TX_FAR _Route10BattleText4
- db "@"
-
-Route10EndBattleText4:
- TX_FAR _Route10EndBattleText4
- db "@"
-
-Route10AfterBattleText4:
- TX_FAR _Route10AfterBattleText4
- db "@"
-
-Route10Text5:
- TX_ASM
- ld hl, Route10TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText5:
- TX_FAR _Route10BattleText5
- db "@"
-
-Route10EndBattleText5:
- TX_FAR _Route10EndBattleText5
- db "@"
-
-Route10AfterBattleText5:
- TX_FAR _Route10AfterBattleText5
- db "@"
-
-Route10Text6:
- TX_ASM
- ld hl, Route10TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route10BattleText6:
- TX_FAR _Route10BattleText6
- db "@"
-
-Route10EndBattleText6:
- TX_FAR _Route10EndBattleText6
- db "@"
-
-Route10AfterBattleText6:
- TX_FAR _Route10AfterBattleText6
- db "@"
-
-Route10Text9:
-Route10Text7:
- TX_FAR _Route10Text7 ; _Route10Text9
- db "@"
-
-Route10Text10:
- TX_FAR _Route10Text10
- db "@"
diff --git a/scripts/route11.asm b/scripts/route11.asm
deleted file mode 100755
index ab3509c5..00000000
--- a/scripts/route11.asm
+++ /dev/null
@@ -1,303 +0,0 @@
-Route11Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route11TrainerHeaders
- ld de, Route11ScriptPointers
- ld a, [wRoute11CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute11CurScript], a
- ret
-
-Route11ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route11TextPointers:
- dw Route11Text1
- dw Route11Text2
- dw Route11Text3
- dw Route11Text4
- dw Route11Text5
- dw Route11Text6
- dw Route11Text7
- dw Route11Text8
- dw Route11Text9
- dw Route11Text10
- dw Route11Text11
-
-Route11TrainerHeaders:
-Route11TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_0
- dw Route11BattleText1 ; TextBeforeBattle
- dw Route11AfterBattleText1 ; TextAfterBattle
- dw Route11EndBattleText1 ; TextEndBattle
- dw Route11EndBattleText1 ; TextEndBattle
-
-Route11TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_1
- dw Route11BattleText2 ; TextBeforeBattle
- dw Route11AfterBattleText2 ; TextAfterBattle
- dw Route11EndBattleText2 ; TextEndBattle
- dw Route11EndBattleText2 ; TextEndBattle
-
-Route11TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_2
- dw Route11BattleText3 ; TextBeforeBattle
- dw Route11AfterBattleText3 ; TextAfterBattle
- dw Route11EndBattleText3 ; TextEndBattle
- dw Route11EndBattleText3 ; TextEndBattle
-
-Route11TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_3
- dw Route11BattleText4 ; TextBeforeBattle
- dw Route11AfterBattleText4 ; TextAfterBattle
- dw Route11EndBattleText4 ; TextEndBattle
- dw Route11EndBattleText4 ; TextEndBattle
-
-Route11TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_4
- dw Route11BattleText5 ; TextBeforeBattle
- dw Route11AfterBattleText5 ; TextAfterBattle
- dw Route11EndBattleText5 ; TextEndBattle
- dw Route11EndBattleText5 ; TextEndBattle
-
-Route11TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_5
- dw Route11BattleText6 ; TextBeforeBattle
- dw Route11AfterBattleText6 ; TextAfterBattle
- dw Route11EndBattleText6 ; TextEndBattle
- dw Route11EndBattleText6 ; TextEndBattle
-
-Route11TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_6
- dw Route11BattleText7 ; TextBeforeBattle
- dw Route11AfterBattleText7 ; TextAfterBattle
- dw Route11EndBattleText7 ; TextEndBattle
- dw Route11EndBattleText7 ; TextEndBattle
-
-Route11TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_7, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_7, 1
- dw Route11BattleText8 ; TextBeforeBattle
- dw Route11AfterBattleText8 ; TextAfterBattle
- dw Route11EndBattleText8 ; TextEndBattle
- dw Route11EndBattleText8 ; TextEndBattle
-
-Route11TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_8, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_8, 1
- dw Route11BattleText9 ; TextBeforeBattle
- dw Route11AfterBattleText9 ; TextAfterBattle
- dw Route11EndBattleText9 ; TextEndBattle
- dw Route11EndBattleText9 ; TextEndBattle
-
-Route11TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_11_TRAINER_9, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_11_TRAINER_9, 1
- dw Route11BattleText10 ; TextBeforeBattle
- dw Route11AfterBattleText10 ; TextAfterBattle
- dw Route11EndBattleText10 ; TextEndBattle
- dw Route11EndBattleText10 ; TextEndBattle
-
- db $ff
-
-Route11Text1:
- TX_ASM
- ld hl, Route11TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText1:
- TX_FAR _Route11BattleText1
- db "@"
-
-Route11EndBattleText1:
- TX_FAR _Route11EndBattleText1
- db "@"
-
-Route11AfterBattleText1:
- TX_FAR _Route11AfterBattleText1
- db "@"
-
-Route11Text2:
- TX_ASM
- ld hl, Route11TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText2:
- TX_FAR _Route11BattleText2
- db "@"
-
-Route11EndBattleText2:
- TX_FAR _Route11EndBattleText2
- db "@"
-
-Route11AfterBattleText2:
- TX_FAR _Route11AfterBattleText2
- db "@"
-
-Route11Text3:
- TX_ASM
- ld hl, Route11TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText3:
- TX_FAR _Route11BattleText3
- db "@"
-
-Route11EndBattleText3:
- TX_FAR _Route11EndBattleText3
- db "@"
-
-Route11AfterBattleText3:
- TX_FAR _Route11AfterBattleText3
- db "@"
-
-Route11Text4:
- TX_ASM
- ld hl, Route11TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText4:
- TX_FAR _Route11BattleText4
- db "@"
-
-Route11EndBattleText4:
- TX_FAR _Route11EndBattleText4
- db "@"
-
-Route11AfterBattleText4:
- TX_FAR _Route11AfterBattleText4
- db "@"
-
-Route11Text5:
- TX_ASM
- ld hl, Route11TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText5:
- TX_FAR _Route11BattleText5
- db "@"
-
-Route11EndBattleText5:
- TX_FAR _Route11EndBattleText5
- db "@"
-
-Route11AfterBattleText5:
- TX_FAR _Route11AfterBattleText5
- db "@"
-
-Route11Text6:
- TX_ASM
- ld hl, Route11TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText6:
- TX_FAR _Route11BattleText6
- db "@"
-
-Route11EndBattleText6:
- TX_FAR _Route11EndBattleText6
- db "@"
-
-Route11AfterBattleText6:
- TX_FAR _Route11AfterBattleText6
- db "@"
-
-Route11Text7:
- TX_ASM
- ld hl, Route11TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText7:
- TX_FAR _Route11BattleText7
- db "@"
-
-Route11EndBattleText7:
- TX_FAR _Route11EndBattleText7
- db "@"
-
-Route11AfterBattleText7:
- TX_FAR _Route11AfterBattleText7
- db "@"
-
-Route11Text8:
- TX_ASM
- ld hl, Route11TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText8:
- TX_FAR _Route11BattleText8
- db "@"
-
-Route11EndBattleText8:
- TX_FAR _Route11EndBattleText8
- db "@"
-
-Route11AfterBattleText8:
- TX_FAR _Route11AfterBattleText8
- db "@"
-
-Route11Text9:
- TX_ASM
- ld hl, Route11TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText9:
- TX_FAR _Route11BattleText9
- db "@"
-
-Route11EndBattleText9:
- TX_FAR _Route11EndBattleText9
- db "@"
-
-Route11AfterBattleText9:
- TX_FAR _Route11AfterBattleText9
- db "@"
-
-Route11Text10:
- TX_ASM
- ld hl, Route11TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route11BattleText10:
- TX_FAR _Route11BattleText10
- db "@"
-
-Route11EndBattleText10:
- TX_FAR _Route11EndBattleText10
- db "@"
-
-Route11AfterBattleText10:
- TX_FAR _Route11AfterBattleText10
- db "@"
-
-Route11Text11:
- TX_FAR _Route11Text11
- db "@"
diff --git a/scripts/route11gate.asm b/scripts/route11gate.asm
deleted file mode 100755
index 9ecfe0ca..00000000
--- a/scripts/route11gate.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-Route11GateScript:
- jp EnableAutoTextBoxDrawing
-
-Route11GateTextPointers:
- dw Route11GateText1
-
-Route11GateText1:
- TX_FAR _Route11GateText1
- db "@"
diff --git a/scripts/route11gateupstairs.asm b/scripts/route11gateupstairs.asm
deleted file mode 100755
index 6188e122..00000000
--- a/scripts/route11gateupstairs.asm
+++ /dev/null
@@ -1,76 +0,0 @@
-Route11GateUpstairsScript:
- jp DisableAutoTextBoxDrawing
-
-Route11GateUpstairsTextPointers:
- dw Route11GateUpstairsText1
- dw Route11GateUpstairsText2
- dw Route11GateUpstairsText3
- dw Route11GateUpstairsText4
-
-Route11GateUpstairsText1:
- TX_ASM
- ld a, $0
- ld [wWhichTrade], a
- predef DoInGameTradeDialogue
-Route11GateUpstairsScriptEnd:
- jp TextScriptEnd
-
-Route11GateUpstairsText2:
- TX_ASM
- CheckEvent EVENT_GOT_ITEMFINDER, 1
- jr c, .asm_4949b
- ld a, 30 ; pokemon needed
- ld [hOaksAideRequirement], a
- ld a, ITEMFINDER ; oak's aide reward
- ld [hOaksAideRewardItem], a
- ld [wd11e], a
- call GetItemName
- ld h, d
- ld l, e
- ld de, wOaksAideRewardItemName
- ld bc, ITEM_NAME_LENGTH
- call CopyData
- predef OaksAideScript
- ld a, [hOaksAideResult]
- dec a
- jr nz, .asm_494a1
- SetEvent EVENT_GOT_ITEMFINDER
-.asm_4949b
- ld hl, Route11GateUpstairsText_494a3
- call PrintText
-.asm_494a1
- jr Route11GateUpstairsScriptEnd
-
-Route11GateUpstairsText_494a3:
- TX_FAR _Route11GateUpstairsText_494a3
- db "@"
-
-Route11GateUpstairsText3:
- TX_ASM
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- jp nz, GateUpstairsScript_PrintIfFacingUp
- CheckEvent EVENT_BEAT_ROUTE12_SNORLAX
- ld hl, BinocularsSnorlaxText
- jr z, .print
- ld hl, BinocularsNoSnorlaxText
-.print
- call PrintText
- jp TextScriptEnd
-
-BinocularsSnorlaxText:
- TX_FAR _BinocularsSnorlaxText
- db "@"
-
-BinocularsNoSnorlaxText:
- TX_FAR _BinocularsNoSnorlaxText
- db "@"
-
-Route11GateUpstairsText4:
- TX_ASM
- ld hl, Route11GateUpstairsText_494d5
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route11GateUpstairsText_494d5:
- TX_FAR _Route11GateUpstairsText_494d5
- db "@"
diff --git a/scripts/route12.asm b/scripts/route12.asm
deleted file mode 100755
index e61f41c0..00000000
--- a/scripts/route12.asm
+++ /dev/null
@@ -1,289 +0,0 @@
-Route12Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route12TrainerHeaders
- ld de, Route12ScriptPointers
- ld a, [wRoute12CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute12CurScript], a
- ret
-
-Route12Script_59606:
- xor a
- ld [wJoyIgnore], a
- ld [wRoute12CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route12ScriptPointers:
- dw Route12Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw Route12Script3
-
-Route12Script0:
- CheckEventHL EVENT_BEAT_ROUTE12_SNORLAX
- jp nz, CheckFightingMapTrainers
- CheckEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX
- ResetEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX
- jp z, CheckFightingMapTrainers
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, SNORLAX
- ld [wCurOpponent], a
- ld a, 30
- ld [wCurEnemyLVL], a
- ld a, HS_ROUTE_12_SNORLAX
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, $3
- ld [wRoute12CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route12Script3:
- ld a, [wIsInBattle]
- cp $ff
- jr z, Route12Script_59606
- call UpdateSprites
- ld a, [wBattleResult]
- cp $2
- jr z, .asm_59664
- ld a, $e
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.asm_59664
- SetEvent EVENT_BEAT_ROUTE12_SNORLAX
- call Delay3
- ld a, $0
- ld [wRoute12CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route12TextPointers:
- dw Route12Text1
- dw Route12Text2
- dw Route12Text3
- dw Route12Text4
- dw Route12Text5
- dw Route12Text6
- dw Route12Text7
- dw Route12Text8
- dw PickUpItemText
- dw PickUpItemText
- dw Route12Text11
- dw Route12Text12
- dw Route12Text13
- dw Route12Text14
-
-Route12TrainerHeaders:
-Route12TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_0
- dw Route12BattleText1 ; TextBeforeBattle
- dw Route12AfterBattleText1 ; TextAfterBattle
- dw Route12EndBattleText1 ; TextEndBattle
- dw Route12EndBattleText1 ; TextEndBattle
-
-Route12TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_1
- dw Route12BattleText2 ; TextBeforeBattle
- dw Route12AfterBattleText2 ; TextAfterBattle
- dw Route12EndBattleText2 ; TextEndBattle
- dw Route12EndBattleText2 ; TextEndBattle
-
-Route12TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_2
- dw Route12BattleText3 ; TextBeforeBattle
- dw Route12AfterBattleText3 ; TextAfterBattle
- dw Route12EndBattleText3 ; TextEndBattle
- dw Route12EndBattleText3 ; TextEndBattle
-
-Route12TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_3
- dw Route12BattleText4 ; TextBeforeBattle
- dw Route12AfterBattleText4 ; TextAfterBattle
- dw Route12EndBattleText4 ; TextEndBattle
- dw Route12EndBattleText4 ; TextEndBattle
-
-Route12TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_4
- dw Route12BattleText5 ; TextBeforeBattle
- dw Route12AfterBattleText5 ; TextAfterBattle
- dw Route12EndBattleText5 ; TextEndBattle
- dw Route12EndBattleText5 ; TextEndBattle
-
-Route12TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_5
- dw Route12BattleText6 ; TextBeforeBattle
- dw Route12AfterBattleText6 ; TextAfterBattle
- dw Route12EndBattleText6 ; TextEndBattle
- dw Route12EndBattleText6 ; TextEndBattle
-
-Route12TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_6, 1
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_6, 1
- dw Route12BattleText7 ; TextBeforeBattle
- dw Route12AfterBattleText7 ; TextAfterBattle
- dw Route12EndBattleText7 ; TextEndBattle
- dw Route12EndBattleText7 ; TextEndBattle
-
- db $ff
-
-Route12Text1:
- TX_FAR _Route12Text1
- db "@"
-
-Route12Text13:
- TX_FAR _Route12Text13
- db "@"
-
-Route12Text14:
- TX_FAR _Route12Text14
- db "@"
-
-Route12Text2:
- TX_ASM
- ld hl, Route12TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText1:
- TX_FAR _Route12BattleText1
- db "@"
-
-Route12EndBattleText1:
- TX_FAR _Route12EndBattleText1
- db "@"
-
-Route12AfterBattleText1:
- TX_FAR _Route12AfterBattleText1
- db "@"
-
-Route12Text3:
- TX_ASM
- ld hl, Route12TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText2:
- TX_FAR _Route12BattleText2
- db "@"
-
-Route12EndBattleText2:
- TX_FAR _Route12EndBattleText2
- db "@"
-
-Route12AfterBattleText2:
- TX_FAR _Route12AfterBattleText2
- db "@"
-
-Route12Text4:
- TX_ASM
- ld hl, Route12TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText3:
- TX_FAR _Route12BattleText3
- db "@"
-
-Route12EndBattleText3:
- TX_FAR _Route12EndBattleText3
- db "@"
-
-Route12AfterBattleText3:
- TX_FAR _Route12AfterBattleText3
- db "@"
-
-Route12Text5:
- TX_ASM
- ld hl, Route12TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText4:
- TX_FAR _Route12BattleText4
- db "@"
-
-Route12EndBattleText4:
- TX_FAR _Route12EndBattleText4
- db "@"
-
-Route12AfterBattleText4:
- TX_FAR _Route12AfterBattleText4
- db "@"
-
-Route12Text6:
- TX_ASM
- ld hl, Route12TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText5:
- TX_FAR _Route12BattleText5
- db "@"
-
-Route12EndBattleText5:
- TX_FAR _Route12EndBattleText5
- db "@"
-
-Route12AfterBattleText5:
- TX_FAR _Route12AfterBattleText5
- db "@"
-
-Route12Text7:
- TX_ASM
- ld hl, Route12TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText6:
- TX_FAR _Route12BattleText6
- db "@"
-
-Route12EndBattleText6:
- TX_FAR _Route12EndBattleText6
- db "@"
-
-Route12AfterBattleText6:
- TX_FAR _Route12AfterBattleText6
- db "@"
-
-Route12Text8:
- TX_ASM
- ld hl, Route12TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route12BattleText7:
- TX_FAR _Route12BattleText7
- db "@"
-
-Route12EndBattleText7:
- TX_FAR _Route12EndBattleText7
- db "@"
-
-Route12AfterBattleText7:
- TX_FAR _Route12AfterBattleText7
- db "@"
-
-Route12Text11:
- TX_FAR _Route12Text11
- db "@"
-
-Route12Text12:
- TX_FAR _Route12Text12
- db "@"
diff --git a/scripts/route12gate.asm b/scripts/route12gate.asm
deleted file mode 100755
index 8474100d..00000000
--- a/scripts/route12gate.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-Route12GateScript:
- jp EnableAutoTextBoxDrawing
-
-Route12GateTextPointers:
- dw Route12GateText1
-
-Route12GateText1:
- TX_FAR _Route12GateText1
- db "@"
diff --git a/scripts/route12gateupstairs.asm b/scripts/route12gateupstairs.asm
deleted file mode 100755
index b80ca186..00000000
--- a/scripts/route12gateupstairs.asm
+++ /dev/null
@@ -1,77 +0,0 @@
-Route12GateUpstairsScript:
- jp DisableAutoTextBoxDrawing
-
-Route12GateUpstairsTextPointers:
- dw Route12GateUpstairsText1
- dw Route12GateUpstairsText2
- dw Route12GateUpstairsText3
-
-Route12GateUpstairsText1:
- TX_ASM
- CheckEvent EVENT_GOT_TM39, 1
- jr c, .asm_0ad3c
- ld hl, TM39PreReceiveText
- call PrintText
- lb bc, TM_39, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM39Text
- call PrintText
- SetEvent EVENT_GOT_TM39
- jr .asm_4ba56
-.BagFull
- ld hl, TM39NoRoomText
- call PrintText
- jr .asm_4ba56
-.asm_0ad3c
- ld hl, TM39ExplanationText
- call PrintText
-.asm_4ba56
- jp TextScriptEnd
-
-TM39PreReceiveText:
- TX_FAR _TM39PreReceiveText
- db "@"
-
-ReceivedTM39Text:
- TX_FAR _ReceivedTM39Text
- db $0B, "@"
-
-TM39ExplanationText:
- TX_FAR _TM39ExplanationText
- db "@"
-
-TM39NoRoomText:
- TX_FAR _TM39NoRoomText
- db "@"
-
-Route12GateUpstairsText2:
- TX_ASM
- ld hl, Route12GateUpstairsText_495b8
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route12GateUpstairsText_495b8:
- TX_FAR _Route12GateUpstairsText_495b8
- db "@"
-
-Route12GateUpstairsText3:
- TX_ASM
- ld hl, Route12GateUpstairsText_495c4
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route12GateUpstairsText_495c4:
- TX_FAR _Route12GateUpstairsText_495c4
- db "@"
-
-GateUpstairsScript_PrintIfFacingUp:
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_UP
- jr z, .up
- ld a, $1
- jr .done
-.up
- call PrintText
- xor a
-.done
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- jp TextScriptEnd
diff --git a/scripts/route12house.asm b/scripts/route12house.asm
deleted file mode 100755
index 7ee86731..00000000
--- a/scripts/route12house.asm
+++ /dev/null
@@ -1,57 +0,0 @@
-Route12HouseScript:
- jp EnableAutoTextBoxDrawing
-
-Route12HouseTextPointers:
- dw Route12HouseText1
-
-Route12HouseText1:
- TX_ASM
- ld a, [wd728]
- bit 5, a
- jr nz, .asm_b4cad
- ld hl, Route12HouseText_564c0
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_a2d76
- lb bc, SUPER_ROD, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, wd728
- set 5, [hl]
- ld hl, Route12HouseText_564c5
- jr .asm_df984
-.BagFull
- ld hl, Route12HouseText_564d9
- jr .asm_df984
-.asm_a2d76
- ld hl, Route12HouseText_564cf
- jr .asm_df984
-.asm_b4cad
- ld hl, Route12HouseText_564d4
-.asm_df984
- call PrintText
- jp TextScriptEnd
-
-Route12HouseText_564c0:
- TX_FAR _Route12HouseText_564c0
- db "@"
-
-Route12HouseText_564c5:
- TX_FAR _Route12HouseText_564c5
- db $0B
- TX_FAR _Route12HouseText_564ca
- db "@"
-
-Route12HouseText_564cf:
- TX_FAR _Route12HouseText_564cf
- db "@"
-
-Route12HouseText_564d4:
- TX_FAR _Route12HouseText_564d4
- db "@"
-
-Route12HouseText_564d9:
- TX_FAR _Route12HouseText_564d9
- db "@"
diff --git a/scripts/route13.asm b/scripts/route13.asm
deleted file mode 100755
index 61f43ee9..00000000
--- a/scripts/route13.asm
+++ /dev/null
@@ -1,313 +0,0 @@
-Route13Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route13TrainerHeaders
- ld de, Route13ScriptPointers
- ld a, [wRoute13CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute13CurScript], a
- ret
-
-Route13ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route13TextPointers:
- dw Route13Text1
- dw Route13Text2
- dw Route13Text3
- dw Route13Text4
- dw Route13Text5
- dw Route13Text6
- dw Route13Text7
- dw Route13Text8
- dw Route13Text9
- dw Route13Text10
- dw Route13Text11
- dw Route13Text12
- dw Route13Text13
-
-Route13TrainerHeaders:
-Route13TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_0
- dw Route13BattleText2 ; TextBeforeBattle
- dw Route13AfterBattleText2 ; TextAfterBattle
- dw Route13EndBattleText2 ; TextEndBattle
- dw Route13EndBattleText2 ; TextEndBattle
-
-Route13TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_2
- dw Route13BattleText3 ; TextBeforeBattle
- dw Route13AfterBattleText3 ; TextAfterBattle
- dw Route13EndBattleText3 ; TextEndBattle
- dw Route13EndBattleText3 ; TextEndBattle
-
-Route13TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_3
- dw Route13BattleText4 ; TextBeforeBattle
- dw Route13AfterBattleText4 ; TextAfterBattle
- dw Route13EndBattleText4 ; TextEndBattle
- dw Route13EndBattleText4 ; TextEndBattle
-
-Route13TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_4
- dw Route13BattleText5 ; TextBeforeBattle
- dw Route13AfterBattleText5 ; TextAfterBattle
- dw Route13EndBattleText5 ; TextEndBattle
- dw Route13EndBattleText5 ; TextEndBattle
-
-Route13TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_5
- dw Route13BattleText6 ; TextBeforeBattle
- dw Route13AfterBattleText6 ; TextAfterBattle
- dw Route13EndBattleText6 ; TextEndBattle
- dw Route13EndBattleText6 ; TextEndBattle
-
-Route13TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_6
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_6
- dw Route13BattleText7 ; TextBeforeBattle
- dw Route13AfterBattleText7 ; TextAfterBattle
- dw Route13EndBattleText7 ; TextEndBattle
- dw Route13EndBattleText7 ; TextEndBattle
-
-Route13TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_7
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_7
- dw Route13BattleText8 ; TextBeforeBattle
- dw Route13AfterBattleText8 ; TextAfterBattle
- dw Route13EndBattleText8 ; TextEndBattle
- dw Route13EndBattleText8 ; TextEndBattle
-
-Route13TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_8, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_8, 1
- dw Route13BattleText9 ; TextBeforeBattle
- dw Route13AfterBattleText9 ; TextAfterBattle
- dw Route13EndBattleText9 ; TextEndBattle
- dw Route13EndBattleText9 ; TextEndBattle
-
-Route13TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_9, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_9, 1
- dw Route13BattleText10 ; TextBeforeBattle
- dw Route13AfterBattleText10 ; TextAfterBattle
- dw Route13EndBattleText10 ; TextEndBattle
- dw Route13EndBattleText10 ; TextEndBattle
-
-Route13TrainerHeader10:
- dbEventFlagBit EVENT_BEAT_ROUTE_13_TRAINER_10, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_13_TRAINER_10, 1
- dw Route13BattleText11 ; TextBeforeBattle
- dw Route13AfterBattleText11 ; TextAfterBattle
- dw Route13EndBattleText11 ; TextEndBattle
- dw Route13EndBattleText11 ; TextEndBattle
-
- db $ff
-
-Route13Text1:
- TX_ASM
- ld hl, Route13TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText2:
- TX_FAR _Route13BattleText2
- db "@"
-
-Route13EndBattleText2:
- TX_FAR _Route13EndBattleText2
- db "@"
-
-Route13AfterBattleText2:
- TX_FAR _Route13AfterBattleText2
- db "@"
-
-Route13Text2:
- TX_ASM
- ld hl, Route13TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText3:
- TX_FAR _Route13BattleText3
- db "@"
-
-Route13EndBattleText3:
- TX_FAR _Route13EndBattleText3
- db "@"
-
-Route13AfterBattleText3:
- TX_FAR _Route13AfterBattleText3
- db "@"
-
-Route13Text3:
- TX_ASM
- ld hl, Route13TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText4:
- TX_FAR _Route13BattleText4
- db "@"
-
-Route13EndBattleText4:
- TX_FAR _Route13EndBattleText4
- db "@"
-
-Route13AfterBattleText4:
- TX_FAR _Route13AfterBattleText4
- db "@"
-
-Route13Text4:
- TX_ASM
- ld hl, Route13TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText5:
- TX_FAR _Route13BattleText5
- db "@"
-
-Route13EndBattleText5:
- TX_FAR _Route13EndBattleText5
- db "@"
-
-Route13AfterBattleText5:
- TX_FAR _Route13AfterBattleText5
- db "@"
-
-Route13Text5:
- TX_ASM
- ld hl, Route13TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText6:
- TX_FAR _Route13BattleText6
- db "@"
-
-Route13EndBattleText6:
- TX_FAR _Route13EndBattleText6
- db "@"
-
-Route13AfterBattleText6:
- TX_FAR _Route13AfterBattleText6
- db "@"
-
-Route13Text6:
- TX_ASM
- ld hl, Route13TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText7:
- TX_FAR _Route13BattleText7
- db "@"
-
-Route13EndBattleText7:
- TX_FAR _Route13EndBattleText7
- db "@"
-
-Route13AfterBattleText7:
- TX_FAR _Route13AfterBattleText7
- db "@"
-
-Route13Text7:
- TX_ASM
- ld hl, Route13TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText8:
- TX_FAR _Route13BattleText8
- db "@"
-
-Route13EndBattleText8:
- TX_FAR _Route13EndBattleText8
- db "@"
-
-Route13AfterBattleText8:
- TX_FAR _Route13AfterBattleText8
- db "@"
-
-Route13Text8:
- TX_ASM
- ld hl, Route13TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText9:
- TX_FAR _Route13BattleText9
- db "@"
-
-Route13EndBattleText9:
- TX_FAR _Route13EndBattleText9
- db "@"
-
-Route13AfterBattleText9:
- TX_FAR _Route13AfterBattleText9
- db "@"
-
-Route13Text9:
- TX_ASM
- ld hl, Route13TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText10:
- TX_FAR _Route13BattleText10
- db "@"
-
-Route13EndBattleText10:
- TX_FAR _Route13EndBattleText10
- db "@"
-
-Route13AfterBattleText10:
- TX_FAR _Route13AfterBattleText10
- db "@"
-
-Route13Text10:
- TX_ASM
- ld hl, Route13TrainerHeader10
- call TalkToTrainer
- jp TextScriptEnd
-
-Route13BattleText11:
- TX_FAR _Route13BattleText11
- db "@"
-
-Route13EndBattleText11:
- TX_FAR _Route13EndBattleText11
- db "@"
-
-Route13AfterBattleText11:
- TX_FAR _Route13AfterBattleText11
- db "@"
-
-Route13Text11:
- TX_FAR _Route13Text11
- db "@"
-
-Route13Text12:
- TX_FAR _Route13Text12
- db "@"
-
-Route13Text13:
- TX_FAR _Route13Text13
- db "@"
diff --git a/scripts/route14.asm b/scripts/route14.asm
deleted file mode 100755
index 70f747c5..00000000
--- a/scripts/route14.asm
+++ /dev/null
@@ -1,303 +0,0 @@
-Route14Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route14TrainerHeaders
- ld de, Route14ScriptPointers
- ld a, [wRoute14CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute14CurScript], a
- ret
-
-Route14ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route14TextPointers:
- dw Route14Text1
- dw Route14Text2
- dw Route14Text3
- dw Route14Text4
- dw Route14Text5
- dw Route14Text6
- dw Route14Text7
- dw Route14Text8
- dw Route14Text9
- dw Route14Text10
- dw Route14Text11
-
-Route14TrainerHeaders:
-Route14TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_0
- dw Route14BattleText1 ; TextBeforeBattle
- dw Route14AfterBattleText1 ; TextAfterBattle
- dw Route14EndBattleText1 ; TextEndBattle
- dw Route14EndBattleText1 ; TextEndBattle
-
-Route14TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_1
- dw Route14BattleText2 ; TextBeforeBattle
- dw Route14AfterBattleText2 ; TextAfterBattle
- dw Route14EndBattleText2 ; TextEndBattle
- dw Route14EndBattleText2 ; TextEndBattle
-
-Route14TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_2
- dw Route14BattleText3 ; TextBeforeBattle
- dw Route14AfterBattleText3 ; TextAfterBattle
- dw Route14EndBattleText3 ; TextEndBattle
- dw Route14EndBattleText3 ; TextEndBattle
-
-Route14TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_3
- dw Route14BattleText4 ; TextBeforeBattle
- dw Route14AfterBattleText4 ; TextAfterBattle
- dw Route14EndBattleText4 ; TextEndBattle
- dw Route14EndBattleText4 ; TextEndBattle
-
-Route14TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_4
- dw Route14BattleText5 ; TextBeforeBattle
- dw Route14AfterBattleText5 ; TextAfterBattle
- dw Route14EndBattleText5 ; TextEndBattle
- dw Route14EndBattleText5 ; TextEndBattle
-
-Route14TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_5
- dw Route14BattleText6 ; TextBeforeBattle
- dw Route14AfterBattleText6 ; TextAfterBattle
- dw Route14EndBattleText6 ; TextEndBattle
- dw Route14EndBattleText6 ; TextEndBattle
-
-Route14TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_6
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_6
- dw Route14BattleText7 ; TextBeforeBattle
- dw Route14AfterBattleText7 ; TextAfterBattle
- dw Route14EndBattleText7 ; TextEndBattle
- dw Route14EndBattleText7 ; TextEndBattle
-
-Route14TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_7, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_7, 1
- dw Route14BattleText8 ; TextBeforeBattle
- dw Route14AfterBattleText8 ; TextAfterBattle
- dw Route14EndBattleText8 ; TextEndBattle
- dw Route14EndBattleText8 ; TextEndBattle
-
-Route14TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_8, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_8, 1
- dw Route14BattleText9 ; TextBeforeBattle
- dw Route14AfterBattleText9 ; TextAfterBattle
- dw Route14EndBattleText9 ; TextEndBattle
- dw Route14EndBattleText9 ; TextEndBattle
-
-Route14TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_14_TRAINER_9, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_14_TRAINER_9, 1
- dw Route14BattleText10 ; TextBeforeBattle
- dw Route14AfterBattleText10 ; TextAfterBattle
- dw Route14EndBattleText10 ; TextEndBattle
- dw Route14EndBattleText10 ; TextEndBattle
-
- db $ff
-
-Route14Text1:
- TX_ASM
- ld hl, Route14TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText1:
- TX_FAR _Route14BattleText1
- db "@"
-
-Route14EndBattleText1:
- TX_FAR _Route14EndBattleText1
- db "@"
-
-Route14AfterBattleText1:
- TX_FAR _Route14AfterBattleText1
- db "@"
-
-Route14Text2:
- TX_ASM
- ld hl, Route14TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText2:
- TX_FAR _Route14BattleText2
- db "@"
-
-Route14EndBattleText2:
- TX_FAR _Route14EndBattleText2
- db "@"
-
-Route14AfterBattleText2:
- TX_FAR _Route14AfterBattleText2
- db "@"
-
-Route14Text3:
- TX_ASM
- ld hl, Route14TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText3:
- TX_FAR _Route14BattleText3
- db "@"
-
-Route14EndBattleText3:
- TX_FAR _Route14EndBattleText3
- db "@"
-
-Route14AfterBattleText3:
- TX_FAR _Route14AfterBattleText3
- db "@"
-
-Route14Text4:
- TX_ASM
- ld hl, Route14TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText4:
- TX_FAR _Route14BattleText4
- db "@"
-
-Route14EndBattleText4:
- TX_FAR _Route14EndBattleText4
- db "@"
-
-Route14AfterBattleText4:
- TX_FAR _Route14AfterBattleText4
- db "@"
-
-Route14Text5:
- TX_ASM
- ld hl, Route14TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText5:
- TX_FAR _Route14BattleText5
- db "@"
-
-Route14EndBattleText5:
- TX_FAR _Route14EndBattleText5
- db "@"
-
-Route14AfterBattleText5:
- TX_FAR _Route14AfterBattleText5
- db "@"
-
-Route14Text6:
- TX_ASM
- ld hl, Route14TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText6:
- TX_FAR _Route14BattleText6
- db "@"
-
-Route14EndBattleText6:
- TX_FAR _Route14EndBattleText6
- db "@"
-
-Route14AfterBattleText6:
- TX_FAR _Route14AfterBattleText6
- db "@"
-
-Route14Text7:
- TX_ASM
- ld hl, Route14TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText7:
- TX_FAR _Route14BattleText7
- db "@"
-
-Route14EndBattleText7:
- TX_FAR _Route14EndBattleText7
- db "@"
-
-Route14AfterBattleText7:
- TX_FAR _Route14AfterBattleText7
- db "@"
-
-Route14Text8:
- TX_ASM
- ld hl, Route14TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText8:
- TX_FAR _Route14BattleText8
- db "@"
-
-Route14EndBattleText8:
- TX_FAR _Route14EndBattleText8
- db "@"
-
-Route14AfterBattleText8:
- TX_FAR _Route14AfterBattleText8
- db "@"
-
-Route14Text9:
- TX_ASM
- ld hl, Route14TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText9:
- TX_FAR _Route14BattleText9
- db "@"
-
-Route14EndBattleText9:
- TX_FAR _Route14EndBattleText9
- db "@"
-
-Route14AfterBattleText9:
- TX_FAR _Route14AfterBattleText9
- db "@"
-
-Route14Text10:
- TX_ASM
- ld hl, Route14TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route14BattleText10:
- TX_FAR _Route14BattleText10
- db "@"
-
-Route14EndBattleText10:
- TX_FAR _Route14EndBattleText10
- db "@"
-
-Route14AfterBattleText10:
- TX_FAR _Route14AfterBattleText10
- db "@"
-
-Route14Text11:
- TX_FAR _Route14Text11
- db "@"
diff --git a/scripts/route15.asm b/scripts/route15.asm
deleted file mode 100755
index e3329ab4..00000000
--- a/scripts/route15.asm
+++ /dev/null
@@ -1,296 +0,0 @@
-Route15Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route15TrainerHeaders
- ld de, Route15ScriptPointers
- ld a, [wRoute15CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute15CurScript], a
- ret
-
-Route15ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route15TextPointers:
- dw Route15Text1
- dw Route15Text2
- dw Route15Text3
- dw Route15Text4
- dw Route15Text5
- dw Route15Text6
- dw Route15Text7
- dw Route15Text8
- dw Route15Text9
- dw Route15Text10
- dw PickUpItemText
- dw Route15Text12
-
-Route15TrainerHeaders:
-Route15TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_0
- dw Route15BattleText1 ; TextBeforeBattle
- dw Route15AfterBattleText1 ; TextAfterBattle
- dw Route15EndBattleText1 ; TextEndBattle
- dw Route15EndBattleText1 ; TextEndBattle
-
-Route15TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_1
- dw Route15BattleText2 ; TextBeforeBattle
- dw Route15AfterBattleText2 ; TextAfterBattle
- dw Route15EndBattleText2 ; TextEndBattle
- dw Route15EndBattleText2 ; TextEndBattle
-
-Route15TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_2
- dw Route15BattleText3 ; TextBeforeBattle
- dw Route15AfterBattleText3 ; TextAfterBattle
- dw Route15EndBattleText3 ; TextEndBattle
- dw Route15EndBattleText3 ; TextEndBattle
-
-Route15TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_3
- dw Route15BattleText4 ; TextBeforeBattle
- dw Route15AfterBattleText4 ; TextAfterBattle
- dw Route15EndBattleText4 ; TextEndBattle
- dw Route15EndBattleText4 ; TextEndBattle
-
-Route15TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_4
- dw Route15BattleText5 ; TextBeforeBattle
- dw Route15AfterBattleText5 ; TextAfterBattle
- dw Route15EndBattleText5 ; TextEndBattle
- dw Route15EndBattleText5 ; TextEndBattle
-
-Route15TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_5
- dw Route15BattleText6 ; TextBeforeBattle
- dw Route15AfterBattleText6 ; TextAfterBattle
- dw Route15EndBattleText6 ; TextEndBattle
- dw Route15EndBattleText6 ; TextEndBattle
-
-Route15TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_6
- dw Route15BattleText7 ; TextBeforeBattle
- dw Route15AfterBattleText7 ; TextAfterBattle
- dw Route15EndBattleText7 ; TextEndBattle
- dw Route15EndBattleText7 ; TextEndBattle
-
-Route15TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_7, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_7, 1
- dw Route15BattleText8 ; TextBeforeBattle
- dw Route15AfterBattleText8 ; TextAfterBattle
- dw Route15EndBattleText8 ; TextEndBattle
- dw Route15EndBattleText8 ; TextEndBattle
-
-Route15TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_8, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_8, 1
- dw Route15BattleText9 ; TextBeforeBattle
- dw Route15AfterBattleText9 ; TextAfterBattle
- dw Route15EndBattleText9 ; TextEndBattle
- dw Route15EndBattleText9 ; TextEndBattle
-
-Route15TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_15_TRAINER_9, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_15_TRAINER_9, 1
- dw Route15BattleText10 ; TextBeforeBattle
- dw Route15AfterBattleText10 ; TextAfterBattle
- dw Route15EndBattleText10 ; TextEndBattle
- dw Route15EndBattleText10 ; TextEndBattle
-
- db $ff
-
-Route15Text1:
- TX_ASM
- ld hl, Route15TrainerHeader0
- jr Route15TalkToTrainer
-
-Route15Text2:
- TX_ASM
- ld hl, Route15TrainerHeader1
- jr Route15TalkToTrainer
-
-Route15Text3:
- TX_ASM
- ld hl, Route15TrainerHeader2
- jr Route15TalkToTrainer
-
-Route15Text4:
- TX_ASM
- ld hl, Route15TrainerHeader3
- jr Route15TalkToTrainer
-
-Route15Text5:
- TX_ASM
- ld hl, Route15TrainerHeader4
- jr Route15TalkToTrainer
-
-Route15Text6:
- TX_ASM
- ld hl, Route15TrainerHeader5
- jr Route15TalkToTrainer
-
-Route15Text7:
- TX_ASM
- ld hl, Route15TrainerHeader6
- jr Route15TalkToTrainer
-
-Route15Text8:
- TX_ASM
- ld hl, Route15TrainerHeader7
- jr Route15TalkToTrainer
-
-Route15Text9:
- TX_ASM
- ld hl, Route15TrainerHeader8
- jr Route15TalkToTrainer
-
-Route15Text10:
- TX_ASM
- ld hl, Route15TrainerHeader9
-Route15TalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-Route15BattleText1:
- TX_FAR _Route15BattleText1
- db "@"
-
-Route15EndBattleText1:
- TX_FAR _Route15EndBattleText1
- db "@"
-
-Route15AfterBattleText1:
- TX_FAR _Route15AfterBattleText1
- db "@"
-
-Route15BattleText2:
- TX_FAR _Route15BattleText2
- db "@"
-
-Route15EndBattleText2:
- TX_FAR _Route15EndBattleText2
- db "@"
-
-Route15AfterBattleText2:
- TX_FAR _Route15AfterBattleText2
- db "@"
-
-Route15BattleText3:
- TX_FAR _Route15BattleText3
- db "@"
-
-Route15EndBattleText3:
- TX_FAR _Route15EndBattleText3
- db "@"
-
-Route15AfterBattleText3:
- TX_FAR _Route15AfterBattleText3
- db "@"
-
-Route15BattleText4:
- TX_FAR _Route15BattleText4
- db "@"
-
-Route15EndBattleText4:
- TX_FAR _Route15EndBattleText4
- db "@"
-
-Route15AfterBattleText4:
- TX_FAR _Route15AfterBattleText4
- db "@"
-
-Route15BattleText5:
- TX_FAR _Route15BattleText5
- db "@"
-
-Route15EndBattleText5:
- TX_FAR _Route15EndBattleText5
- db "@"
-
-Route15AfterBattleText5:
- TX_FAR _Route15AfterBattleText5
- db "@"
-
-Route15BattleText6:
- TX_FAR _Route15BattleText6
- db "@"
-
-Route15EndBattleText6:
- TX_FAR _Route15EndBattleText6
- db "@"
-
-Route15AfterBattleText6:
- TX_FAR _Route15AfterBattleText6
- db "@"
-
-Route15BattleText7:
- TX_FAR _Route15BattleText7
- db "@"
-
-Route15EndBattleText7:
- TX_FAR _Route15EndBattleText7
- db "@"
-
-Route15AfterBattleText7:
- TX_FAR _Route15AfterBattleText7
- db "@"
-
-Route15BattleText8:
- TX_FAR _Route15BattleText8
- db "@"
-
-Route15EndBattleText8:
- TX_FAR _Route15EndBattleText8
- db "@"
-
-Route15AfterBattleText8:
- TX_FAR _Route15AfterBattleText8
- db "@"
-
-Route15BattleText9:
- TX_FAR _Route15BattleText9
- db "@"
-
-Route15EndBattleText9:
- TX_FAR _Route15EndBattleText9
- db "@"
-
-Route15AfterBattleText9:
- TX_FAR _Route15AfterBattleText9
- db "@"
-
-Route15BattleText10:
- TX_FAR _Route15BattleText10
- db "@"
-
-Route15EndBattleText10:
- TX_FAR _Route15EndBattleText10
- db "@"
-
-Route15AfterBattleText10:
- TX_FAR _Route15AfterBattleText10
- db "@"
-
-Route15Text12:
- TX_FAR _Route15Text12
- db "@"
diff --git a/scripts/route15gate.asm b/scripts/route15gate.asm
deleted file mode 100755
index 40db02dd..00000000
--- a/scripts/route15gate.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-Route15GateScript:
- jp EnableAutoTextBoxDrawing
-
-Route15GateTextPointers:
- dw Route15GateText1
-
-Route15GateText1:
- TX_FAR _Route15GateText1
- db "@"
diff --git a/scripts/route15gateupstairs.asm b/scripts/route15gateupstairs.asm
deleted file mode 100755
index c7f6a2ad..00000000
--- a/scripts/route15gateupstairs.asm
+++ /dev/null
@@ -1,44 +0,0 @@
-Route15GateUpstairsScript:
- jp DisableAutoTextBoxDrawing
-
-Route15GateUpstairsTextPointers:
- dw Route15GateUpstairsText1
- dw Route15GateUpstairsText2
-
-Route15GateUpstairsText1:
- TX_ASM
- CheckEvent EVENT_GOT_EXP_ALL
- jr nz, .asm_49683
- ld a, 50 ; pokemon needed
- ld [hOaksAideRequirement], a
- ld a, EXP_ALL ; oak's aide reward
- ld [hOaksAideRewardItem], a
- ld [wd11e], a
- call GetItemName
- ld hl, wcd6d
- ld de, wOaksAideRewardItemName
- ld bc, ITEM_NAME_LENGTH
- call CopyData
- predef OaksAideScript
- ld a, [hOaksAideResult]
- cp $1
- jr nz, .asm_49689
- SetEvent EVENT_GOT_EXP_ALL
-.asm_49683
- ld hl, Route15GateUpstairsText_4968c
- call PrintText
-.asm_49689
- jp TextScriptEnd
-
-Route15GateUpstairsText_4968c:
- TX_FAR _Route15GateUpstairsText_4968c
- db "@"
-
-Route15GateUpstairsText2:
- TX_ASM
- ld hl, Route15GateUpstairsText_49698
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route15GateUpstairsText_49698:
- TX_FAR _Route15GateUpstairsText_49698
- db "@"
diff --git a/scripts/route16.asm b/scripts/route16.asm
deleted file mode 100755
index fe38fac4..00000000
--- a/scripts/route16.asm
+++ /dev/null
@@ -1,260 +0,0 @@
-Route16Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route16TrainerHeaders
- ld de, Route16ScriptPointers
- ld a, [wRoute16CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute16CurScript], a
- ret
-
-Route16Script_59946:
- xor a
- ld [wJoyIgnore], a
- ld [wRoute16CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route16ScriptPointers:
- dw Route16Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw Route16Script3
-
-Route16Script0:
- CheckEventHL EVENT_BEAT_ROUTE16_SNORLAX
- jp nz, CheckFightingMapTrainers
- CheckEventReuseHL EVENT_FIGHT_ROUTE16_SNORLAX
- ResetEventReuseHL EVENT_FIGHT_ROUTE16_SNORLAX
- jp z, CheckFightingMapTrainers
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, SNORLAX
- ld [wCurOpponent], a
- ld a, 30
- ld [wCurEnemyLVL], a
- ld a, HS_ROUTE_16_SNORLAX
- ld [wMissableObjectIndex], a
- predef HideObject
- call UpdateSprites
- ld a, $3
- ld [wRoute16CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route16Script3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, Route16Script_59946
- call UpdateSprites
- ld a, [wBattleResult]
- cp $2
- jr z, .asm_599a8
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.asm_599a8
- SetEvent EVENT_BEAT_ROUTE16_SNORLAX
- call Delay3
- ld a, $0
- ld [wRoute16CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route16TextPointers:
- dw Route16Text1
- dw Route16Text2
- dw Route16Text3
- dw Route16Text4
- dw Route16Text5
- dw Route16Text6
- dw Route16Text7
- dw Route16Text8
- dw Route16Text9
- dw Route16Text10
- dw Route16Text11
-
-Route16TrainerHeaders:
-Route16TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_0
- dw Route16BattleText1 ; TextBeforeBattle
- dw Route16AfterBattleText1 ; TextAfterBattle
- dw Route16EndBattleText1 ; TextEndBattle
- dw Route16EndBattleText1 ; TextEndBattle
-
-Route16TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_1
- dw Route16BattleText2 ; TextBeforeBattle
- dw Route16AfterBattleText2 ; TextAfterBattle
- dw Route16EndBattleText2 ; TextEndBattle
- dw Route16EndBattleText2 ; TextEndBattle
-
-Route16TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_2
- dw Route16BattleText3 ; TextBeforeBattle
- dw Route16AfterBattleText3 ; TextAfterBattle
- dw Route16EndBattleText3 ; TextEndBattle
- dw Route16EndBattleText3 ; TextEndBattle
-
-Route16TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_3
- dw Route16BattleText4 ; TextBeforeBattle
- dw Route16AfterBattleText4 ; TextAfterBattle
- dw Route16EndBattleText4 ; TextEndBattle
- dw Route16EndBattleText4 ; TextEndBattle
-
-Route16TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_4
- dw Route16BattleText5 ; TextBeforeBattle
- dw Route16AfterBattleText5 ; TextAfterBattle
- dw Route16EndBattleText5 ; TextEndBattle
- dw Route16EndBattleText5 ; TextEndBattle
-
-Route16TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_16_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_16_TRAINER_5
- dw Route16BattleText6 ; TextBeforeBattle
- dw Route16AfterBattleText6 ; TextAfterBattle
- dw Route16EndBattleText6 ; TextEndBattle
- dw Route16EndBattleText6 ; TextEndBattle
-
- db $ff
-
-Route16Text1:
- TX_ASM
- ld hl, Route16TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText1:
- TX_FAR _Route16BattleText1
- db "@"
-
-Route16EndBattleText1:
- TX_FAR _Route16EndBattleText1
- db "@"
-
-Route16AfterBattleText1:
- TX_FAR _Route16AfterBattleText1
- db "@"
-
-Route16Text2:
- TX_ASM
- ld hl, Route16TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText2:
- TX_FAR _Route16BattleText2
- db "@"
-
-Route16EndBattleText2:
- TX_FAR _Route16EndBattleText2
- db "@"
-
-Route16AfterBattleText2:
- TX_FAR _Route16AfterBattleText2
- db "@"
-
-Route16Text3:
- TX_ASM
- ld hl, Route16TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText3:
- TX_FAR _Route16BattleText3
- db "@"
-
-Route16EndBattleText3:
- TX_FAR _Route16EndBattleText3
- db "@"
-
-Route16AfterBattleText3:
- TX_FAR _Route16AfterBattleText3
- db "@"
-
-Route16Text4:
- TX_ASM
- ld hl, Route16TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText4:
- TX_FAR _Route16BattleText4
- db "@"
-
-Route16EndBattleText4:
- TX_FAR _Route16EndBattleText4
- db "@"
-
-Route16AfterBattleText4:
- TX_FAR _Route16AfterBattleText4
- db "@"
-
-Route16Text5:
- TX_ASM
- ld hl, Route16TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText5:
- TX_FAR _Route16BattleText5
- db "@"
-
-Route16EndBattleText5:
- TX_FAR _Route16EndBattleText5
- db "@"
-
-Route16AfterBattleText5:
- TX_FAR _Route16AfterBattleText5
- db "@"
-
-Route16Text6:
- TX_ASM
- ld hl, Route16TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route16BattleText6:
- TX_FAR _Route16BattleText6
- db "@"
-
-Route16EndBattleText6:
- TX_FAR _Route16EndBattleText6
- db "@"
-
-Route16AfterBattleText6:
- TX_FAR _Route16AfterBattleText6
- db "@"
-
-Route16Text7:
- TX_FAR _Route16Text7
- db "@"
-
-Route16Text10:
- TX_FAR _Route16Text10
- db "@"
-
-Route16Text11:
- TX_FAR _Route16Text11
- db "@"
-
-Route16Text8:
- TX_FAR _Route16Text8
- db "@"
-
-Route16Text9:
- TX_FAR _Route16Text9
- db "@"
diff --git a/scripts/route16gate.asm b/scripts/route16gate.asm
deleted file mode 100755
index df478b1f..00000000
--- a/scripts/route16gate.asm
+++ /dev/null
@@ -1,121 +0,0 @@
-Route16GateScript:
- ld hl, wd732
- res 5, [hl]
- call EnableAutoTextBoxDrawing
- ld a, [wRoute16GateCurScript]
- ld hl, Route16GateScriptPointers
- jp JumpTable
-
-Route16GateScriptPointers:
- dw Route16GateScript0
- dw Route16GateScript1
- dw Route16GateScript2
- dw Route16GateScript3
-
-Route16GateScript0:
- call Route16GateScript_49755
- ret nz
- ld hl, CoordsData_49714
- call ArePlayerCoordsInArray
- ret nc
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [hJoyHeld], a
- ld a, [wCoordIndex]
- cp $1
- jr z, .asm_4970e
- ld a, [wCoordIndex]
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- ld b, $0
- ld c, a
- ld a, D_UP
- ld hl, wSimulatedJoypadStatesEnd
- call FillMemory
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wRoute16GateCurScript], a
- ret
-.asm_4970e
- ld a, $2
- ld [wRoute16GateCurScript], a
- ret
-
-CoordsData_49714:
- db $07,$04
- db $08,$04
- db $09,$04
- db $0A,$04
- db $FF
-
-Route16GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld a, $f0
- ld [wJoyIgnore], a
-
-Route16GateScript2:
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_RIGHT
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wRoute16GateCurScript], a
- ret
-
-Route16GateScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld hl, wd730
- res 7, [hl]
- ld a, $0
- ld [wRoute16GateCurScript], a
- ret
-
-Route16GateScript_49755:
- ld b, BICYCLE
- jp IsItemInBag
-
-Route16GateTextPointers:
- dw Route16GateText1
- dw Route16GateText2
- dw Route16GateText3
-
-Route16GateText1:
- TX_ASM
- call Route16GateScript_49755
- jr z, .asm_0bdf3
- ld hl, Route16GateText_4977c
- call PrintText
- jr .asm_56c9d
-.asm_0bdf3
- ld hl, Route16GateText_49777
- call PrintText
-.asm_56c9d
- jp TextScriptEnd
-
-Route16GateText_49777:
- TX_FAR _Route16GateText_49777
- db "@"
-
-Route16GateText_4977c:
- TX_FAR _Route16GateText_4977c
- db "@"
-
-Route16GateText3:
- TX_FAR _Route16GateText_49781
- db "@"
-
-Route16GateText2:
- TX_FAR _Route16GateText2
- db "@"
diff --git a/scripts/route16gateupstairs.asm b/scripts/route16gateupstairs.asm
deleted file mode 100755
index 664976a2..00000000
--- a/scripts/route16gateupstairs.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-Route16GateUpstairsScript:
- jp DisableAutoTextBoxDrawing
-
-Route16GateUpstairsTextPointers:
- dw Route16GateUpstairsText1
- dw Route16GateUpstairsText2
- dw Route16GateUpstairsText3
- dw Route16GateUpstairsText4
-
-Route16GateUpstairsText1:
- TX_ASM
- ld hl, Route16GateUpstairsText_49820
- call PrintText
- jp TextScriptEnd
-
-Route16GateUpstairsText_49820:
- TX_FAR _Route16GateUpstairsText_49820
- db "@"
-
-Route16GateUpstairsText2:
- TX_ASM
- ld hl, Route16GateUpstairsText_4982f
- call PrintText
- jp TextScriptEnd
-
-Route16GateUpstairsText_4982f:
- TX_FAR _Route16GateUpstairsText_4982f
- db "@"
-
-Route16GateUpstairsText3:
- TX_ASM
- ld hl, Route16GateUpstairsText_4983b
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route16GateUpstairsText_4983b:
- TX_FAR _Route16GateUpstairsText_4983b
- db "@"
-
-Route16GateUpstairsText4:
- TX_ASM
- ld hl, Route16GateUpstairsText_49847
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route16GateUpstairsText_49847:
- TX_FAR _Route16GateUpstairsText_49847
- db "@"
diff --git a/scripts/route16house.asm b/scripts/route16house.asm
deleted file mode 100755
index d8c9d5ed..00000000
--- a/scripts/route16house.asm
+++ /dev/null
@@ -1,54 +0,0 @@
-Route16HouseScript:
- jp EnableAutoTextBoxDrawing
-
-Route16HouseTextPointers:
- dw Route16HouseText1
- dw Route16HouseText2
-
-Route16HouseText1:
- TX_ASM
- CheckEvent EVENT_GOT_HM02
- ld hl, HM02ExplanationText
- jr nz, .asm_13616
- ld hl, Route16HouseText3
- call PrintText
- lb bc, HM_02, 1
- call GiveItem
- jr nc, .BagFull
- SetEvent EVENT_GOT_HM02
- ld hl, ReceivedHM02Text
- jr .asm_13616
-.BagFull
- ld hl, HM02NoRoomText
-.asm_13616
- call PrintText
- jp TextScriptEnd
-
-Route16HouseText3:
- TX_FAR _Route16HouseText3
- db "@"
-
-ReceivedHM02Text:
- TX_FAR _ReceivedHM02Text
- db $11, "@"
-
-HM02ExplanationText:
- TX_FAR _HM02ExplanationText
- db "@"
-
-HM02NoRoomText:
- TX_FAR _HM02NoRoomText
- db "@"
-
-Route16HouseText2:
- TX_ASM
- ld hl, Route16HouseText_1e652
- call PrintText
- ld a, FEAROW
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-Route16HouseText_1e652:
- TX_FAR _Route16HouseText_1e652
- db "@"
diff --git a/scripts/route17.asm b/scripts/route17.asm
deleted file mode 100755
index ddf92c2d..00000000
--- a/scripts/route17.asm
+++ /dev/null
@@ -1,328 +0,0 @@
-Route17Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route17TrainerHeaders
- ld de, Route17ScriptPointers
- ld a, [wRoute17CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute17CurScript], a
- ret
-
-Route17ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route17TextPointers:
- dw Route17Text1
- dw Route17Text2
- dw Route17Text3
- dw Route17Text4
- dw Route17Text5
- dw Route17Text6
- dw Route17Text7
- dw Route17Text8
- dw Route17Text9
- dw Route17Text10
- dw Route17Text11
- dw Route17Text12
- dw Route17Text13
- dw Route17Text14
- dw Route17Text15
- dw Route17Text16
-
-Route17TrainerHeaders:
-Route17TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_0
- dw Route17BattleText1 ; TextBeforeBattle
- dw Route17AfterBattleText1 ; TextAfterBattle
- dw Route17EndBattleText1 ; TextEndBattle
- dw Route17EndBattleText1 ; TextEndBattle
-
-Route17TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_1
- dw Route17BattleText2 ; TextBeforeBattle
- dw Route17AfterBattleText2 ; TextAfterBattle
- dw Route17EndBattleText2 ; TextEndBattle
- dw Route17EndBattleText2 ; TextEndBattle
-
-Route17TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_2
- dw Route17BattleText3 ; TextBeforeBattle
- dw Route17AfterBattleText3 ; TextAfterBattle
- dw Route17EndBattleText3 ; TextEndBattle
- dw Route17EndBattleText3 ; TextEndBattle
-
-Route17TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_3
- dw Route17BattleText4 ; TextBeforeBattle
- dw Route17AfterBattleText4 ; TextAfterBattle
- dw Route17EndBattleText4 ; TextEndBattle
- dw Route17EndBattleText4 ; TextEndBattle
-
-Route17TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_4
- dw Route17BattleText5 ; TextBeforeBattle
- dw Route17AfterBattleText5 ; TextAfterBattle
- dw Route17EndBattleText5 ; TextEndBattle
- dw Route17EndBattleText5 ; TextEndBattle
-
-Route17TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_5
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_5
- dw Route17BattleText6 ; TextBeforeBattle
- dw Route17AfterBattleText6 ; TextAfterBattle
- dw Route17EndBattleText6 ; TextEndBattle
- dw Route17EndBattleText6 ; TextEndBattle
-
-Route17TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_6
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_6
- dw Route17BattleText7 ; TextBeforeBattle
- dw Route17AfterBattleText7 ; TextAfterBattle
- dw Route17EndBattleText7 ; TextEndBattle
- dw Route17EndBattleText7 ; TextEndBattle
-
-Route17TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_7, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_7, 1
- dw Route17BattleText8 ; TextBeforeBattle
- dw Route17AfterBattleText8 ; TextAfterBattle
- dw Route17EndBattleText8 ; TextEndBattle
- dw Route17EndBattleText8 ; TextEndBattle
-
-Route17TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_8, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_8, 1
- dw Route17BattleText9 ; TextBeforeBattle
- dw Route17AfterBattleText9 ; TextAfterBattle
- dw Route17EndBattleText9 ; TextEndBattle
- dw Route17EndBattleText9 ; TextEndBattle
-
-Route17TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_17_TRAINER_9, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_17_TRAINER_9, 1
- dw Route17BattleText10 ; TextBeforeBattle
- dw Route17AfterBattleText10 ; TextAfterBattle
- dw Route17EndBattleText10 ; TextEndBattle
- dw Route17EndBattleText10 ; TextEndBattle
-
- db $ff
-
-Route17Text1:
- TX_ASM
- ld hl, Route17TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText1:
- TX_FAR _Route17BattleText1
- db "@"
-
-Route17EndBattleText1:
- TX_FAR _Route17EndBattleText1
- db "@"
-
-Route17AfterBattleText1:
- TX_FAR _Route17AfterBattleText1
- db "@"
-
-Route17Text2:
- TX_ASM
- ld hl, Route17TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText2:
- TX_FAR _Route17BattleText2
- db "@"
-
-Route17EndBattleText2:
- TX_FAR _Route17EndBattleText2
- db "@"
-
-Route17AfterBattleText2:
- TX_FAR _Route17AfterBattleText2
- db "@"
-
-Route17Text3:
- TX_ASM
- ld hl, Route17TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText3:
- TX_FAR _Route17BattleText3
- db "@"
-
-Route17EndBattleText3:
- TX_FAR _Route17EndBattleText3
- db "@"
-
-Route17AfterBattleText3:
- TX_FAR _Route17AfterBattleText3
- db "@"
-
-Route17Text4:
- TX_ASM
- ld hl, Route17TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText4:
- TX_FAR _Route17BattleText4
- db "@"
-
-Route17EndBattleText4:
- TX_FAR _Route17EndBattleText4
- db "@"
-
-Route17AfterBattleText4:
- TX_FAR _Route17AfterBattleText4
- db "@"
-
-Route17Text5:
- TX_ASM
- ld hl, Route17TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText5:
- TX_FAR _Route17BattleText5
- db "@"
-
-Route17EndBattleText5:
- TX_FAR _Route17EndBattleText5
- db "@"
-
-Route17AfterBattleText5:
- TX_FAR _Route17AfterBattleText5
- db "@"
-
-Route17Text6:
- TX_ASM
- ld hl, Route17TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText6:
- TX_FAR _Route17BattleText6
- db "@"
-
-Route17EndBattleText6:
- TX_FAR _Route17EndBattleText6
- db "@"
-
-Route17AfterBattleText6:
- TX_FAR _Route17AfterBattleText6
- db "@"
-
-Route17Text7:
- TX_ASM
- ld hl, Route17TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText7:
- TX_FAR _Route17BattleText7
- db "@"
-
-Route17EndBattleText7:
- TX_FAR _Route17EndBattleText7
- db "@"
-
-Route17AfterBattleText7:
- TX_FAR _Route17AfterBattleText7
- db "@"
-
-Route17Text8:
- TX_ASM
- ld hl, Route17TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText8:
- TX_FAR _Route17BattleText8
- db "@"
-
-Route17EndBattleText8:
- TX_FAR _Route17EndBattleText8
- db "@"
-
-Route17AfterBattleText8:
- TX_FAR _Route17AfterBattleText8
- db "@"
-
-Route17Text9:
- TX_ASM
- ld hl, Route17TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText9:
- TX_FAR _Route17BattleText9
- db "@"
-
-Route17EndBattleText9:
- TX_FAR _Route17EndBattleText9
- db "@"
-
-Route17AfterBattleText9:
- TX_FAR _Route17AfterBattleText9
- db "@"
-
-Route17Text10:
- TX_ASM
- ld hl, Route17TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route17BattleText10:
- TX_FAR _Route17BattleText10
- db "@"
-
-Route17EndBattleText10:
- TX_FAR _Route17EndBattleText10
- db "@"
-
-Route17AfterBattleText10:
- TX_FAR _Route17AfterBattleText10
- db "@"
-
-Route17Text11:
- TX_FAR _Route17Text11
- db "@"
-
-Route17Text12:
- TX_FAR _Route17Text12
- db "@"
-
-Route17Text13:
- TX_FAR _Route17Text13
- db "@"
-
-Route17Text14:
- TX_FAR _Route17Text14
- db "@"
-
-Route17Text15:
- TX_FAR _Route17Text15
- db "@"
-
-Route17Text16:
- TX_FAR _Route17Text16
- db "@"
diff --git a/scripts/route18.asm b/scripts/route18.asm
deleted file mode 100755
index b89e2613..00000000
--- a/scripts/route18.asm
+++ /dev/null
@@ -1,112 +0,0 @@
-Route18Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route18TrainerHeaders
- ld de, Route18ScriptPointers
- ld a, [wRoute18CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute18CurScript], a
- ret
-
-Route18ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route18TextPointers:
- dw Route18Text1
- dw Route18Text2
- dw Route18Text3
- dw Route18Text4
- dw Route18Text5
-
-Route18TrainerHeaders:
-Route18TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_0
- dw Route18BattleText1 ; TextBeforeBattle
- dw Route18AfterBattleText1 ; TextAfterBattle
- dw Route18EndBattleText1 ; TextEndBattle
- dw Route18EndBattleText1 ; TextEndBattle
-
-Route18TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_1
- dw Route18BattleText2 ; TextBeforeBattle
- dw Route18AfterBattleText2 ; TextAfterBattle
- dw Route18EndBattleText2 ; TextEndBattle
- dw Route18EndBattleText2 ; TextEndBattle
-
-Route18TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_18_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_18_TRAINER_2
- dw Route18BattleText3 ; TextBeforeBattle
- dw Route18AfterBattleText3 ; TextAfterBattle
- dw Route18EndBattleText3 ; TextEndBattle
- dw Route18EndBattleText3 ; TextEndBattle
-
- db $ff
-
-Route18Text1:
- TX_ASM
- ld hl, Route18TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route18BattleText1:
- TX_FAR _Route18BattleText1
- db "@"
-
-Route18EndBattleText1:
- TX_FAR _Route18EndBattleText1
- db "@"
-
-Route18AfterBattleText1:
- TX_FAR _Route18AfterBattleText1
- db "@"
-
-Route18Text2:
- TX_ASM
- ld hl, Route18TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route18BattleText2:
- TX_FAR _Route18BattleText2
- db "@"
-
-Route18EndBattleText2:
- TX_FAR _Route18EndBattleText2
- db "@"
-
-Route18AfterBattleText2:
- TX_FAR _Route18AfterBattleText2
- db "@"
-
-Route18Text3:
- TX_ASM
- ld hl, Route18TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route18BattleText3:
- TX_FAR _Route18BattleText3
- db "@"
-
-Route18EndBattleText3:
- TX_FAR _Route18EndBattleText3
- db "@"
-
-Route18AfterBattleText3:
- TX_FAR _Route18AfterBattleText3
- db "@"
-
-Route18Text4:
- TX_FAR _Route18Text4
- db "@"
-
-Route18Text5:
- TX_FAR _Route18Text5
- db "@"
diff --git a/scripts/route18gate.asm b/scripts/route18gate.asm
deleted file mode 100755
index 186ea61b..00000000
--- a/scripts/route18gate.asm
+++ /dev/null
@@ -1,112 +0,0 @@
-Route18GateScript:
- ld hl, wd732
- res 5, [hl]
- call EnableAutoTextBoxDrawing
- ld a, [wRoute18GateCurScript]
- ld hl, Route18GateScriptPointers
- jp JumpTable
-
-Route18GateScriptPointers:
- dw Route18GateScript0
- dw Route18GateScript1
- dw Route18GateScript2
- dw Route18GateScript3
-
-Route18GateScript0:
- call Route16GateScript_49755
- ret nz
- ld hl, CoordsData_498cc
- call ArePlayerCoordsInArray
- ret nc
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [hJoyHeld], a
- ld a, [wCoordIndex]
- cp $1
- jr z, .asm_498c6
- ld a, [wCoordIndex]
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- ld b, 0
- ld c, a
- ld a, D_UP
- ld hl, wSimulatedJoypadStatesEnd
- call FillMemory
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wRoute18GateCurScript], a
- ret
-.asm_498c6
- ld a, $2
- ld [wRoute18GateCurScript], a
- ret
-
-CoordsData_498cc:
- db $03,$04
- db $04,$04
- db $05,$04
- db $06,$04
- db $FF
-
-Route18GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld a, $f0
- ld [wJoyIgnore], a
-
-Route18GateScript2:
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_RIGHT
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wRoute18GateCurScript], a
- ret
-
-Route18GateScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld hl, wd730
- res 7, [hl]
- ld a, $0
- ld [wRoute18GateCurScript], a
- ret
-
-Route18GateTextPointers:
- dw Route18GateText1
- dw Route18GateText2
-
-Route18GateText1:
- TX_ASM
- call Route16GateScript_49755
- jr z, .asm_3c84d
- ld hl, Route18GateText_4992d
- call PrintText
- jr .asm_a8410
-.asm_3c84d
- ld hl, Route18GateText_49928
- call PrintText
-.asm_a8410
- jp TextScriptEnd
-
-Route18GateText_49928:
- TX_FAR _Route18GateText_49928
- db "@"
-
-Route18GateText_4992d:
- TX_FAR _Route18GateText_4992d
- db "@"
-
-Route18GateText2:
- TX_FAR _Route18GateText_49932
- db "@"
diff --git a/scripts/route18gateupstairs.asm b/scripts/route18gateupstairs.asm
deleted file mode 100755
index 3d623142..00000000
--- a/scripts/route18gateupstairs.asm
+++ /dev/null
@@ -1,32 +0,0 @@
-Route18GateUpstairsScript:
- jp DisableAutoTextBoxDrawing
-
-Route18GateUpstairsTextPointers:
- dw Route18GateUpstairsText1
- dw Route18GateUpstairsText2
- dw Route18GateUpstairsText3
-
-Route18GateUpstairsText1:
- TX_ASM
- ld a, $5
- ld [wWhichTrade], a
- predef DoInGameTradeDialogue
- jp TextScriptEnd
-
-Route18GateUpstairsText2:
- TX_ASM
- ld hl, Route18GateUpstairsText_49993
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route18GateUpstairsText_49993:
- TX_FAR _Route18GateUpstairsText_49993
- db "@"
-
-Route18GateUpstairsText3:
- TX_ASM
- ld hl, Route18GateUpstairsText_4999f
- jp GateUpstairsScript_PrintIfFacingUp
-
-Route18GateUpstairsText_4999f:
- TX_FAR _Route18GateUpstairsText_4999f
- db "@"
diff --git a/scripts/route19.asm b/scripts/route19.asm
deleted file mode 100755
index 162c4548..00000000
--- a/scripts/route19.asm
+++ /dev/null
@@ -1,295 +0,0 @@
-Route19Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route19TrainerHeaders
- ld de, Route19ScriptPointers
- ld a, [wRoute19CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute19CurScript], a
- ret
-
-Route19ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route19TextPointers:
- dw Route19Text1
- dw Route19Text2
- dw Route19Text3
- dw Route19Text4
- dw Route19Text5
- dw Route19Text6
- dw Route19Text7
- dw Route19Text8
- dw Route19Text9
- dw Route19Text10
- dw Route19Text11
-
-Route19TrainerHeaders:
-Route19TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_0
- dw Route19BattleText1 ; TextBeforeBattle
- dw Route19AfterBattleText1 ; TextAfterBattle
- dw Route19EndBattleText1 ; TextEndBattle
- dw Route19EndBattleText1 ; TextEndBattle
-
-Route19TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_1
- dw Route19BattleText2 ; TextBeforeBattle
- dw Route19AfterBattleText2 ; TextAfterBattle
- dw Route19EndBattleText2 ; TextEndBattle
- dw Route19EndBattleText2 ; TextEndBattle
-
-Route19TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_2
- dw Route19BattleText3 ; TextBeforeBattle
- dw Route19AfterBattleText3 ; TextAfterBattle
- dw Route19EndBattleText3 ; TextEndBattle
- dw Route19EndBattleText3 ; TextEndBattle
-
-Route19TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_3
- dw Route19BattleText4 ; TextBeforeBattle
- dw Route19AfterBattleText4 ; TextAfterBattle
- dw Route19EndBattleText4 ; TextEndBattle
- dw Route19EndBattleText4 ; TextEndBattle
-
-Route19TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_4
- dw Route19BattleText5 ; TextBeforeBattle
- dw Route19AfterBattleText5 ; TextAfterBattle
- dw Route19EndBattleText5 ; TextEndBattle
- dw Route19EndBattleText5 ; TextEndBattle
-
-Route19TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_5
- dw Route19BattleText6 ; TextBeforeBattle
- dw Route19AfterBattleText6 ; TextAfterBattle
- dw Route19EndBattleText6 ; TextEndBattle
- dw Route19EndBattleText6 ; TextEndBattle
-
-Route19TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_6
- dw Route19BattleText7 ; TextBeforeBattle
- dw Route19AfterBattleText7 ; TextAfterBattle
- dw Route19EndBattleText7 ; TextEndBattle
- dw Route19EndBattleText7 ; TextEndBattle
-
-Route19TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_7, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_7, 1
- dw Route19BattleText8 ; TextBeforeBattle
- dw Route19AfterBattleText8 ; TextAfterBattle
- dw Route19EndBattleText8 ; TextEndBattle
- dw Route19EndBattleText8 ; TextEndBattle
-
-Route19TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_8, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_8, 1
- dw Route19BattleText9 ; TextBeforeBattle
- dw Route19AfterBattleText9 ; TextAfterBattle
- dw Route19EndBattleText9 ; TextEndBattle
- dw Route19EndBattleText9 ; TextEndBattle
-
-Route19TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_19_TRAINER_9, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_19_TRAINER_9, 1
- dw Route19BattleText10 ; TextBeforeBattle
- dw Route19AfterBattleText10 ; TextAfterBattle
- dw Route19EndBattleText10 ; TextEndBattle
- dw Route19EndBattleText10 ; TextEndBattle
-
- db $ff
-
-Route19Text1:
- TX_ASM
- ld hl, Route19TrainerHeader0
- jr Route19_TalkToTrainer
-
-Route19Text2:
- TX_ASM
- ld hl, Route19TrainerHeader1
- jr Route19_TalkToTrainer
-
-Route19Text3:
- TX_ASM
- ld hl, Route19TrainerHeader2
- jr Route19_TalkToTrainer
-
-Route19Text4:
- TX_ASM
- ld hl, Route19TrainerHeader3
- jr Route19_TalkToTrainer
-
-Route19Text5:
- TX_ASM
- ld hl, Route19TrainerHeader4
- jr Route19_TalkToTrainer
-
-Route19Text6:
- TX_ASM
- ld hl, Route19TrainerHeader5
- jr Route19_TalkToTrainer
-
-Route19Text7:
- TX_ASM
- ld hl, Route19TrainerHeader6
- jr Route19_TalkToTrainer
-
-Route19Text8:
- TX_ASM
- ld hl, Route19TrainerHeader7
- jr Route19_TalkToTrainer
-
-Route19Text9:
- TX_ASM
- ld hl, Route19TrainerHeader8
- jr Route19_TalkToTrainer
-
-Route19Text10:
- TX_ASM
- ld hl, Route19TrainerHeader9
-Route19_TalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-Route19BattleText1:
- TX_FAR _Route19BattleText1
- db "@"
-
-Route19EndBattleText1:
- TX_FAR _Route19EndBattleText1
- db "@"
-
-Route19AfterBattleText1:
- TX_FAR _Route19AfterBattleText1
- db "@"
-
-Route19BattleText2:
- TX_FAR _Route19BattleText2
- db "@"
-
-Route19EndBattleText2:
- TX_FAR _Route19EndBattleText2
- db "@"
-
-Route19AfterBattleText2:
- TX_FAR _Route19AfterBattleText2
- db "@"
-
-Route19BattleText3:
- TX_FAR _Route19BattleText3
- db "@"
-
-Route19EndBattleText3:
- TX_FAR _Route19EndBattleText3
- db "@"
-
-Route19AfterBattleText3:
- TX_FAR _Route19AfterBattleText3
- db "@"
-
-Route19BattleText4:
- TX_FAR _Route19BattleText4
- db "@"
-
-Route19EndBattleText4:
- TX_FAR _Route19EndBattleText4
- db "@"
-
-Route19AfterBattleText4:
- TX_FAR _Route19AfterBattleText4
- db "@"
-
-Route19BattleText5:
- TX_FAR _Route19BattleText5
- db "@"
-
-Route19EndBattleText5:
- TX_FAR _Route19EndBattleText5
- db "@"
-
-Route19AfterBattleText5:
- TX_FAR _Route19AfterBattleText5
- db "@"
-
-Route19BattleText6:
- TX_FAR _Route19BattleText6
- db "@"
-
-Route19EndBattleText6:
- TX_FAR _Route19EndBattleText6
- db "@"
-
-Route19AfterBattleText6:
- TX_FAR _Route19AfterBattleText6
- db "@"
-
-Route19BattleText7:
- TX_FAR _Route19BattleText7
- db "@"
-
-Route19EndBattleText7:
- TX_FAR _Route19EndBattleText7
- db "@"
-
-Route19AfterBattleText7:
- TX_FAR _Route19AfterBattleText7
- db "@"
-
-Route19BattleText8:
- TX_FAR _Route19BattleText8
- db "@"
-
-Route19EndBattleText8:
- TX_FAR _Route19EndBattleText8
- db "@"
-
-Route19AfterBattleText8:
- TX_FAR _Route19AfterBattleText8
- db "@"
-
-Route19BattleText9:
- TX_FAR _Route19BattleText9
- db "@"
-
-Route19EndBattleText9:
- TX_FAR _Route19EndBattleText9
- db "@"
-
-Route19AfterBattleText9:
- TX_FAR _Route19AfterBattleText9
- db "@"
-
-Route19BattleText10:
- TX_FAR _Route19BattleText10
- db "@"
-
-Route19EndBattleText10:
- TX_FAR _Route19EndBattleText10
- db "@"
-
-Route19AfterBattleText10:
- TX_FAR _Route19AfterBattleText10
- db "@"
-
-Route19Text11:
- TX_FAR _Route19Text11
- db "@"
diff --git a/scripts/route1_2.asm b/scripts/route1_2.asm
deleted file mode 100755
index 6e9b472e..00000000
--- a/scripts/route1_2.asm
+++ /dev/null
@@ -1,53 +0,0 @@
-Func_f1ad2:
- CheckAndSetEvent EVENT_GOT_POTION_SAMPLE
- jr nz, .asm_1cada
- ld hl, Route1ViridianMartSampleText
- call PrintText
- lb bc, POTION, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, Route1Text_f1aff
- jr .asm_1cadd
-.BagFull
- ld hl, Route1Text_f1b0a
- jr .asm_1cadd
-.asm_1cada
- ld hl, Route1Text_f1b05
-.asm_1cadd
- call PrintText
- ret
-
-Route1ViridianMartSampleText:
- TX_FAR _Route1ViridianMartSampleText
- db "@"
-
-Route1Text_f1aff:
- TX_FAR _Route1Text_1cae8
- TX_SFX_ITEM
- db "@"
-
-Route1Text_f1b05:
- TX_FAR _Route1Text_1caee
- db "@"
-
-Route1Text_f1b0a:
- TX_FAR _Route1Text_1caf3
- db "@"
-
-Func_f1b0f:
- ld hl, Route1Text_f1b16
- call PrintText
- ret
-
-Route1Text_f1b16:
- TX_FAR _Route1Text2
- db "@"
-
-Func_f1b1b:
- ld hl, Route1Text_f1b22
- call PrintText
- ret
-
-Route1Text_f1b22:
- TX_FAR _Route1Text3
- db "@"
diff --git a/scripts/route2.asm b/scripts/route2.asm
deleted file mode 100755
index 810792ef..00000000
--- a/scripts/route2.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-Route2Script:
- jp EnableAutoTextBoxDrawing
-
-Route2TextPointers:
- dw PickUpItemText
- dw PickUpItemText
- dw Route2Text3
- dw Route2Text4
-
-Route2Text3:
- TX_FAR _Route2Text3
- db "@"
-
-Route2Text4:
- TX_FAR _Route2Text4
- db "@"
diff --git a/scripts/route20.asm b/scripts/route20.asm
deleted file mode 100755
index 012c9c53..00000000
--- a/scripts/route20.asm
+++ /dev/null
@@ -1,354 +0,0 @@
-Route20Script:
- CheckAndResetEvent EVENT_IN_SEAFOAM_ISLANDS
- call nz, Route20Script_50cc6
- call EnableAutoTextBoxDrawing
- ld hl, Route20TrainerHeader0
- ld de, Route20ScriptPointers
- ld a, [wRoute20CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute20CurScript], a
- ret
-
-Route20Script_50cc6:
- CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
- jr z, .asm_50cef
- ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_1
- call Route20Script_50d0c
- ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_2
- call Route20Script_50d0c
- ld hl, .MissableObjectIDs
-.asm_50cdc
- ld a, [hli]
- cp $ff
- jr z, .asm_50cef
- push hl
- call Route20Script_50d14
- pop hl
- jr .asm_50cdc
-
-.MissableObjectIDs:
- db HS_SEAFOAM_ISLANDS_2_BOULDER_1
- db HS_SEAFOAM_ISLANDS_2_BOULDER_2
- db HS_SEAFOAM_ISLANDS_3_BOULDER_1
- db HS_SEAFOAM_ISLANDS_3_BOULDER_2
- db HS_SEAFOAM_ISLANDS_4_BOULDER_3
- db HS_SEAFOAM_ISLANDS_4_BOULDER_4
- db $FF
-
-.asm_50cef
- CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
- ret z
- ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_1
- call Route20Script_50d0c
- ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_2
- call Route20Script_50d0c
- ld a, HS_SEAFOAM_ISLANDS_5_BOULDER_1
- call Route20Script_50d14
- ld a, HS_SEAFOAM_ISLANDS_5_BOULDER_2
- call Route20Script_50d14
- ret
-
-Route20Script_50d0c:
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-
-Route20Script_50d14:
- ld [wMissableObjectIndex], a
- predef_jump HideObject
-
-Route20ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route20TextPointers:
- dw Route20Text1
- dw Route20Text2
- dw Route20Text3
- dw Route20Text4
- dw Route20Text5
- dw Route20Text6
- dw Route20Text7
- dw Route20Text8
- dw Route20Text9
- dw Route20Text10
- dw Route20Text11
- dw Route20Text12
-
-Route20TrainerHeaders:
-Route20TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_0
- dw Route20BattleText1 ; TextBeforeBattle
- dw Route20AfterBattleText1 ; TextAfterBattle
- dw Route20EndBattleText1 ; TextEndBattle
- dw Route20EndBattleText1 ; TextEndBattle
-
-Route20TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_2
- dw Route20BattleText2 ; TextBeforeBattle
- dw Route20AfterBattleText2 ; TextAfterBattle
- dw Route20EndBattleText2 ; TextEndBattle
- dw Route20EndBattleText2 ; TextEndBattle
-
-Route20TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_3
- dw Route20BattleText3 ; TextBeforeBattle
- dw Route20AfterBattleText3 ; TextAfterBattle
- dw Route20EndBattleText3 ; TextEndBattle
- dw Route20EndBattleText3 ; TextEndBattle
-
-Route20TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_4
- dw Route20BattleText4 ; TextBeforeBattle
- dw Route20AfterBattleText4 ; TextAfterBattle
- dw Route20EndBattleText4 ; TextEndBattle
- dw Route20EndBattleText4 ; TextEndBattle
-
-Route20TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_5
- dw Route20BattleText5 ; TextBeforeBattle
- dw Route20AfterBattleText5 ; TextAfterBattle
- dw Route20EndBattleText5 ; TextEndBattle
- dw Route20EndBattleText5 ; TextEndBattle
-
-Route20TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_6
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_6
- dw Route20BattleText6 ; TextBeforeBattle
- dw Route20AfterBattleText6 ; TextAfterBattle
- dw Route20EndBattleText6 ; TextEndBattle
- dw Route20EndBattleText6 ; TextEndBattle
-
-Route20TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_7
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_7
- dw Route20BattleText7 ; TextBeforeBattle
- dw Route20AfterBattleText7 ; TextAfterBattle
- dw Route20EndBattleText7 ; TextEndBattle
- dw Route20EndBattleText7 ; TextEndBattle
-
-Route20TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_8, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_8, 1
- dw Route20BattleText8 ; TextBeforeBattle
- dw Route20AfterBattleText8 ; TextAfterBattle
- dw Route20EndBattleText8 ; TextEndBattle
- dw Route20EndBattleText8 ; TextEndBattle
-
-Route20TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_9, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_9, 1
- dw Route20BattleText9 ; TextBeforeBattle
- dw Route20AfterBattleText9 ; TextAfterBattle
- dw Route20EndBattleText9 ; TextEndBattle
- dw Route20EndBattleText9 ; TextEndBattle
-
-Route20TrainerHeader10:
- dbEventFlagBit EVENT_BEAT_ROUTE_20_TRAINER_10, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_20_TRAINER_10, 1
- dw Route20BattleText10 ; TextBeforeBattle
- dw Route20AfterBattleText10 ; TextAfterBattle
- dw Route20EndBattleText10 ; TextEndBattle
- dw Route20EndBattleText10 ; TextEndBattle
-
- db $ff
-
-Route20Text1:
- TX_ASM
- ld hl, Route20TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text2:
- TX_ASM
- ld hl, Route20TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text3:
- TX_ASM
- ld hl, Route20TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text4:
- TX_ASM
- ld hl, Route20TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text5:
- TX_ASM
- ld hl, Route20TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text6:
- TX_ASM
- ld hl, Route20TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text7:
- TX_ASM
- ld hl, Route20TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text8:
- TX_ASM
- ld hl, Route20TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text9:
- TX_ASM
- ld hl, Route20TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20Text10:
- TX_ASM
- ld hl, Route20TrainerHeader10
- call TalkToTrainer
- jp TextScriptEnd
-
-Route20BattleText1:
- TX_FAR _Route20BattleText1
- db "@"
-
-Route20EndBattleText1:
- TX_FAR _Route20EndBattleText1
- db "@"
-
-Route20AfterBattleText1:
- TX_FAR _Route20AfterBattleText1
- db "@"
-
-Route20BattleText2:
- TX_FAR _Route20BattleText2
- db "@"
-
-Route20EndBattleText2:
- TX_FAR _Route20EndBattleText2
- db "@"
-
-Route20AfterBattleText2:
- TX_FAR _Route20AfterBattleText2
- db "@"
-
-Route20BattleText3:
- TX_FAR _Route20BattleText3
- db "@"
-
-Route20EndBattleText3:
- TX_FAR _Route20EndBattleText3
- db "@"
-
-Route20AfterBattleText3:
- TX_FAR _Route20AfterBattleText3
- db "@"
-
-Route20BattleText4:
- TX_FAR _Route20BattleText4
- db "@"
-
-Route20EndBattleText4:
- TX_FAR _Route20EndBattleText4
- db "@"
-
-Route20AfterBattleText4:
- TX_FAR _Route20AfterBattleText4
- db "@"
-
-Route20BattleText5:
- TX_FAR _Route20BattleText5
- db "@"
-
-Route20EndBattleText5:
- TX_FAR _Route20EndBattleText5
- db "@"
-
-Route20AfterBattleText5:
- TX_FAR _Route20AfterBattleText5
- db "@"
-
-Route20BattleText6:
- TX_FAR _Route20BattleText6
- db "@"
-
-Route20EndBattleText6:
- TX_FAR _Route20EndBattleText6
- db "@"
-
-Route20AfterBattleText6:
- TX_FAR _Route20AfterBattleText6
- db "@"
-
-Route20BattleText7:
- TX_FAR _Route20BattleText7
- db "@"
-
-Route20EndBattleText7:
- TX_FAR _Route20EndBattleText7
- db "@"
-
-Route20AfterBattleText7:
- TX_FAR _Route20AfterBattleText7
- db "@"
-
-Route20BattleText8:
- TX_FAR _Route20BattleText8
- db "@"
-
-Route20EndBattleText8:
- TX_FAR _Route20EndBattleText8
- db "@"
-
-Route20AfterBattleText8:
- TX_FAR _Route20AfterBattleText8
- db "@"
-
-Route20BattleText9:
- TX_FAR _Route20BattleText9
- db "@"
-
-Route20EndBattleText9:
- TX_FAR _Route20EndBattleText9
- db "@"
-
-Route20AfterBattleText9:
- TX_FAR _Route20AfterBattleText9
- db "@"
-
-Route20BattleText10:
- TX_FAR _Route20BattleText10
- db "@"
-
-Route20EndBattleText10:
- TX_FAR _Route20EndBattleText10
- db "@"
-
-Route20AfterBattleText10:
- TX_FAR _Route20AfterBattleText10
- db "@"
-
-Route20Text12:
-Route20Text11:
- TX_FAR _Route20Text11
- db "@"
diff --git a/scripts/route21.asm b/scripts/route21.asm
deleted file mode 100755
index 89874e58..00000000
--- a/scripts/route21.asm
+++ /dev/null
@@ -1,270 +0,0 @@
-Route21Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route21TrainerHeaders
- ld de, Route21ScriptPointers
- ld a, [wRoute21CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute21CurScript], a
- ret
-
-Route21ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route21TextPointers:
- dw Route21Text1
- dw Route21Text2
- dw Route21Text3
- dw Route21Text4
- dw Route21Text5
- dw Route21Text6
- dw Route21Text7
- dw Route21Text8
- dw Route21Text9
-
-Route21TrainerHeaders:
-Route21TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_0
- dw Route21BattleText1 ; TextBeforeBattle
- dw Route21AfterBattleText1 ; TextAfterBattle
- dw Route21EndBattleText1 ; TextEndBattle
- dw Route21EndBattleText1 ; TextEndBattle
-
-Route21TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_1
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_1
- dw Route21BattleText2 ; TextBeforeBattle
- dw Route21AfterBattleText2 ; TextAfterBattle
- dw Route21EndBattleText2 ; TextEndBattle
- dw Route21EndBattleText2 ; TextEndBattle
-
-Route21TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_2
- dw Route21BattleText3 ; TextBeforeBattle
- dw Route21AfterBattleText3 ; TextAfterBattle
- dw Route21EndBattleText3 ; TextEndBattle
- dw Route21EndBattleText3 ; TextEndBattle
-
-Route21TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_3
- dw Route21BattleText4 ; TextBeforeBattle
- dw Route21AfterBattleText4 ; TextAfterBattle
- dw Route21EndBattleText4 ; TextEndBattle
- dw Route21EndBattleText4 ; TextEndBattle
-
-Route21TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_4
- dw Route21BattleText5 ; TextBeforeBattle
- dw Route21AfterBattleText5 ; TextAfterBattle
- dw Route21EndBattleText5 ; TextEndBattle
- dw Route21EndBattleText5 ; TextEndBattle
-
-Route21TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_5
- dw Route21BattleText6 ; TextBeforeBattle
- dw Route21AfterBattleText6 ; TextAfterBattle
- dw Route21EndBattleText6 ; TextEndBattle
- dw Route21EndBattleText6 ; TextEndBattle
-
-Route21TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_6
- dw Route21BattleText7 ; TextBeforeBattle
- dw Route21AfterBattleText7 ; TextAfterBattle
- dw Route21EndBattleText7 ; TextEndBattle
- dw Route21EndBattleText7 ; TextEndBattle
-
-Route21TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_7, 1
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_7, 1
- dw Route21BattleText8 ; TextBeforeBattle
- dw Route21AfterBattleText8 ; TextAfterBattle
- dw Route21EndBattleText8 ; TextEndBattle
- dw Route21EndBattleText8 ; TextEndBattle
-
-Route21TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_21_TRAINER_8, 1
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_21_TRAINER_8, 1
- dw Route21BattleText9 ; TextBeforeBattle
- dw Route21AfterBattleText9 ; TextAfterBattle
- dw Route21EndBattleText9 ; TextEndBattle
- dw Route21EndBattleText9 ; TextEndBattle
-
- db $ff
-
-Route21Text1:
- TX_ASM
- ld hl, Route21TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text2:
- TX_ASM
- ld hl, Route21TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text3:
- TX_ASM
- ld hl, Route21TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text4:
- TX_ASM
- ld hl, Route21TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text5:
- TX_ASM
- ld hl, Route21TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text6:
- TX_ASM
- ld hl, Route21TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text7:
- TX_ASM
- ld hl, Route21TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text8:
- TX_ASM
- ld hl, Route21TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21Text9:
- TX_ASM
- ld hl, Route21TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route21BattleText1:
- TX_FAR _Route21BattleText1
- db "@"
-
-Route21EndBattleText1:
- TX_FAR _Route21EndBattleText1
- db "@"
-
-Route21AfterBattleText1:
- TX_FAR _Route21AfterBattleText1
- db "@"
-
-Route21BattleText2:
- TX_FAR _Route21BattleText2
- db "@"
-
-Route21EndBattleText2:
- TX_FAR _Route21EndBattleText2
- db "@"
-
-Route21AfterBattleText2:
- TX_FAR _Route21AfterBattleText2
- db "@"
-
-Route21BattleText3:
- TX_FAR _Route21BattleText3
- db "@"
-
-Route21EndBattleText3:
- TX_FAR _Route21EndBattleText3
- db "@"
-
-Route21AfterBattleText3:
- TX_FAR _Route21AfterBattleText3
- db "@"
-
-Route21BattleText4:
- TX_FAR _Route21BattleText4
- db "@"
-
-Route21EndBattleText4:
- TX_FAR _Route21EndBattleText4
- db "@"
-
-Route21AfterBattleText4:
- TX_FAR _Route21AfterBattleText4
- db "@"
-
-Route21BattleText5:
- TX_FAR _Route21BattleText5
- db "@"
-
-Route21EndBattleText5:
- TX_FAR _Route21EndBattleText5
- db "@"
-
-Route21AfterBattleText5:
- TX_FAR _Route21AfterBattleText5
- db "@"
-
-Route21BattleText6:
- TX_FAR _Route21BattleText6
- db "@"
-
-Route21EndBattleText6:
- TX_FAR _Route21EndBattleText6
- db "@"
-
-Route21AfterBattleText6:
- TX_FAR _Route21AfterBattleText6
- db "@"
-
-Route21BattleText7:
- TX_FAR _Route21BattleText7
- db "@"
-
-Route21EndBattleText7:
- TX_FAR _Route21EndBattleText7
- db "@"
-
-Route21AfterBattleText7:
- TX_FAR _Route21AfterBattleText7
- db "@"
-
-Route21BattleText8:
- TX_FAR _Route21BattleText8
- db "@"
-
-Route21EndBattleText8:
- TX_FAR _Route21EndBattleText8
- db "@"
-
-Route21AfterBattleText8:
- TX_FAR _Route21AfterBattleText8
- db "@"
-
-Route21BattleText9:
- TX_FAR _Route21BattleText9
- db "@"
-
-Route21EndBattleText9:
- TX_FAR _Route21EndBattleText9
- db "@"
-
-Route21AfterBattleText9:
- TX_FAR _Route21AfterBattleText9
- db "@"
diff --git a/scripts/route22.asm b/scripts/route22.asm
deleted file mode 100755
index 41f77680..00000000
--- a/scripts/route22.asm
+++ /dev/null
@@ -1,394 +0,0 @@
-Route22Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route22ScriptPointers
- ld a, [wRoute22CurScript]
- jp JumpTable
-
-Route22ScriptPointers:
- dw Route22Script0
- dw Route22Script1
- dw Route22Script2
- dw Route22Script3
- dw Route22Script4
- dw Route22Script5
- dw Route22Script6
- dw Route22Script7
-
-Route22Script_50ece:
- xor a
- ld [wJoyIgnore], a
- ld [wRoute22CurScript], a
-Route22Script7:
- ret
-
-Route22Script_50ed6:
- ld a, OPP_SONY1
- ld [wCurOpponent], a
- ld a, $2
- ld [wTrainerNo], a
- ret
-
-Route22Script_50ee1:
- ld a, OPP_SONY2
- ld [wCurOpponent], a
- ld a, [wRivalStarter]
- add 7
- ld [wTrainerNo], a
- ret
-
-Route22MoveRivalSprite:
- ld de, Route22RivalMovementData
- ld a, [wcf0d]
- cp $1
- jr z, .asm_50ef1
- inc de
-.asm_50ef1
- call MoveSprite
- ld a, SPRITE_FACING_RIGHT
- ld [hSpriteFacingDirection], a
- jp SetSpriteFacingDirectionAndDelay
-
-Route22RivalMovementData:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db $FF
-
-Route22Script0:
- CheckEvent EVENT_ROUTE22_RIVAL_WANTS_BATTLE
- ret z
- ld hl, .Route22RivalBattleCoords
- call ArePlayerCoordsInArray
- ret nc
- ld a, [wCoordIndex]
- ld [wcf0d], a
- xor a
- ld [hJoyHeld], a
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- CheckEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
- jr nz, .firstRivalBattle
- CheckEventReuseA EVENT_2ND_ROUTE22_RIVAL_BATTLE ; is this the rival at the end of the game?
- jp nz, Route22Script_5104e
- ret
-
-.Route22RivalBattleCoords
- db $04, $1D
- db $05, $1D
- db $FF
-
-.firstRivalBattle
- ld a, $1
- ld [wEmotionBubbleSpriteIndex], a
- xor a ; EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld a, [wWalkBikeSurfState]
- and a
- jr z, .asm_50f4e
- call StopAllMusic
-.asm_50f4e
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, $1
- ld [H_SPRITEINDEX], a
- call Route22MoveRivalSprite
- ld a, $1
- ld [wRoute22CurScript], a
- ret
-
-Route22Script1:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, [wcf0d]
- cp $1
- jr nz, .asm_50f78
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_UP
- jr .asm_50f7a
-.asm_50f78
- ld a, SPRITE_FACING_RIGHT
-.asm_50f7a
- ld [hSpriteFacingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteFacingDirectionAndDelay
- xor a
- ld [wJoyIgnore], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, Route22RivalDefeatedText1
- ld de, Route22Text_511bc
- call SaveEndBattleTextPointers
- call Route22Script_50ed6
- ld a, $2
- ld [wRoute22CurScript], a
- ret
-
-Route22RivalDefeatedText1:
- TX_FAR _Route22RivalDefeatedText1
- db "@"
-
-Route22Text_511bc:
- TX_FAR _Route22Text_511bc
- db "@"
-
-Route22Script2:
- ld a, [wIsInBattle]
- cp $ff
- jp z, Route22Script_50ece
- ld a, [wRivalStarter]
- cp 2
- jr nz, .asm_50fc9
- ld a, $1
- ld [wRivalStarter], a
-.asm_50fc9
- ld a, [wSpritePlayerStateData1FacingDirection]
- and a ; cp SPRITE_FACING_DOWN
- jr nz, .notDown
- ld a, SPRITE_FACING_UP
- jr .done
-.notDown
- ld a, SPRITE_FACING_RIGHT
-.done
- ld [hSpriteFacingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld a, [wcf0d]
- cp $1
- jr nz, .asm_50fff
- call Route22Script_51008
- jr .asm_51002
-.asm_50fff
- call Route22Script_5100d
-.asm_51002
- ld a, $3
- ld [wRoute22CurScript], a
- ret
-
-Route22Script_51008:
- ld de, Route22RivalExitMovementData1
- jr Route22MoveRival1
-
-Route22Script_5100d:
- ld de, Route22RivalExitMovementData2
-Route22MoveRival1:
- ld a, $1
- ld [H_SPRITEINDEX], a
- jp MoveSprite
-
-Route22RivalExitMovementData1:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-Route22RivalExitMovementData2:
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-Route22Script3:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, HS_ROUTE_22_RIVAL_1
- ld [wMissableObjectIndex], a
- predef HideObject
- call PlayDefaultMusic
- ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
- ld a, $0
- ld [wRoute22CurScript], a
- ret
-
-Route22Script_5104e:
- ld a, $2
- ld [wEmotionBubbleSpriteIndex], a
- xor a ; EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld a, [wWalkBikeSurfState]
- and a
- jr z, .skipYVisibilityTesta
- call StopAllMusic
-.skipYVisibilityTesta
- call StopAllMusic
- callba Music_RivalAlternateTempo
- ld a, $2
- ld [H_SPRITEINDEX], a
- call Route22MoveRivalSprite
- ld a, $4
- ld [wRoute22CurScript], a
- ret
-
-Route22Script4:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld a, [wcf0d]
- cp $1
- jr nz, .asm_510a1
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_UP
- jr .asm_510a8
-.asm_510a1
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_RIGHT
-.asm_510a8
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- xor a
- ld [wJoyIgnore], a
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, Route22RivalDefeatedText2
- ld de, Route22Text_511d0
- call SaveEndBattleTextPointers
- call Route22Script_50ee1
- ld a, $5
- ld [wRoute22CurScript], a
- ret
-
-Route22RivalDefeatedText2:
- TX_FAR _Route22RivalDefeatedText2
- db "@"
-
-Route22Text_511d0:
- TX_FAR _Route22Text_511d0
- db "@"
-
-Route22Script5:
- ld a, [wIsInBattle]
- cp $ff
- jp z, Route22Script_50ece
- ld a, $2
- ld [H_SPRITEINDEX], a
- ld a, [wcf0d]
- cp $1
- jr nz, .asm_510fb
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_UP
- jr .asm_51102
-.asm_510fb
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_RIGHT
-.asm_51102
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_ROUTE22_RIVAL_2ND_BATTLE
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call StopAllMusic
- callba Music_RivalAlternateStartAndTempo
- ld a, [wcf0d]
- cp $1
- jr nz, .asm_51134
- call Route22Script_5113d
- jr .asm_51137
-.asm_51134
- call Route22Script_51142
-.asm_51137
- ld a, $6
- ld [wRoute22CurScript], a
- ret
-
-Route22Script_5113d:
- ld de, MovementData_5114c
- jr Route22MoveRival2
-
-Route22Script_51142:
- ld de, MovementData_5114d
-Route22MoveRival2:
- ld a, $2
- ld [H_SPRITEINDEX], a
- jp MoveSprite
-
-MovementData_5114c:
- db NPC_MOVEMENT_LEFT
-
-MovementData_5114d:
- db NPC_MOVEMENT_LEFT
- db NPC_MOVEMENT_LEFT
- db NPC_MOVEMENT_LEFT
- db $FF
-
-Route22Script6:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, HS_ROUTE_22_RIVAL_2
- ld [wMissableObjectIndex], a
- predef HideObject
- call PlayDefaultMusic
- ResetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
- ld a, $7
- ld [wRoute22CurScript], a
- ret
-
-Route22TextPointers:
- dw Route22Text1
- dw Route22Text2
- dw Route22FrontGateText
-
-Route22Text1:
- TX_ASM
- callba Func_f1b27
- jp TextScriptEnd
-
-Route22Text2:
- TX_ASM
- callba Func_f1b47
- jp TextScriptEnd
-
-Route22FrontGateText:
- TX_ASM
- callba Func_f1b67
- jp TextScriptEnd
diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm
deleted file mode 100755
index 2b622a43..00000000
--- a/scripts/route22gate.asm
+++ /dev/null
@@ -1,96 +0,0 @@
-Route22GateScript:
- call EnableAutoTextBoxDrawing
- ld hl, Route22GateScriptPointers
- ld a, [wRoute22GateCurScript]
- call JumpTable
- ld a, [wYCoord]
- cp $4
- ld a, ROUTE_23
- jr c, .asm_1e69a
- ld a, ROUTE_22
-.asm_1e69a
- ld [wLastMap], a
- ret
-
-Route22GateScriptPointers:
- dw Route22GateScript0
- dw Route22GateScript1
- dw Route22GateScript2
-
-Route22GateScript0:
- ld hl, Route22GateScriptCoords
- call ArePlayerCoordsInArray
- ret nc
- xor a
- ld [hJoyHeld], a
- ld a, SPRITE_FACING_LEFT
- ld [wSpriteStateData1 + 1 * $10 + 9], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ret
-
-Route22GateScriptCoords:
- db 2,4
- db 2,5
- db $ff
-
-Route22GateScript_1e6ba:
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld [wJoyIgnore], a
- jp StartSimulatingJoypadStates
-
-Route22GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wJoyIgnore], a
- call Delay3
- ld a, $0
- ld [wRoute22GateCurScript], a
-Route22GateScript2:
- ret
-
-Route22GateTextPointers:
- dw Route22GateText1
-
-Route22GateText1:
- TX_ASM
- ld a, [wObtainedBadges]
- bit 0, a ; BOULDERBADGE
- jr nz, .asm_1e6f6
- ld hl, Route22GateText_1e704
- call PrintText
- call Route22GateScript_1e6ba
- ld a, $1
- jr .asm_1e6fe
-.asm_1e6f6
- ld hl, Route22GateText_1e71a
- call PrintText
- ld a, $2
-.asm_1e6fe
- ld [wRoute22GateCurScript], a
- jp TextScriptEnd
-
-Route22GateText_1e704:
- TX_FAR _Route22GateText_1e704
- TX_ASM
- ld a, SFX_DENIED
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- ld hl, Route22GateText_1e715
- ret
-
-Route22GateText_1e715:
- TX_FAR _Route22GateText_1e715
- db "@"
-
-Route22GateText_1e71a:
- TX_FAR _Route22GateText_1e71a
- TX_SFX_ITEM
- db "@"
diff --git a/scripts/route23.asm b/scripts/route23.asm
deleted file mode 100755
index c2863f89..00000000
--- a/scripts/route23.asm
+++ /dev/null
@@ -1,236 +0,0 @@
-Route23Script:
- call Route23Script_511e9
- call EnableAutoTextBoxDrawing
- ld hl, Route23ScriptPointers
- ld a, [wRoute23CurScript]
- jp JumpTable
-
-Route23Script_511e9:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- ret z
- ResetEvents EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
- ResetEvents EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1, EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
- ld a, HS_VICTORY_ROAD_3_BOULDER
- ld [wMissableObjectIndex], a
- predef ShowObject
- ld a, HS_VICTORY_ROAD_2_BOULDER
- ld [wMissableObjectIndex], a
- predef_jump HideObject
-
-Route23ScriptPointers:
- dw Route23Script0
- dw Route23Script1
- dw Route23Script2
-
-Route23Script0:
- ld hl, YCoordsData_51255
- ld a, [wYCoord]
- ld b, a
- ld e, $0
- EventFlagBit c, EVENT_PASSED_EARTHBADGE_CHECK + 1, EVENT_PASSED_CASCADEBADGE_CHECK
-.asm_51224
- ld a, [hli]
- cp $ff
- ret z
- inc e
- dec c
- cp b
- jr nz, .asm_51224
- cp $23
- jr nz, .asm_51237
- ld a, [wXCoord]
- cp $e
- ret nc
-.asm_51237
- ld a, e
- ld [hSpriteIndexOrTextID], a
- ld a, c
- ld [wWhichBadge], a
- ld b, FLAG_TEST
- EventFlagAddress hl, EVENT_PASSED_CASCADEBADGE_CHECK
- predef FlagActionPredef
- ld a, c
- and a
- ret nz
- call Route23Script_5125d
- call DisplayTextID
- xor a
- ld [hJoyHeld], a
- ret
-
-YCoordsData_51255:
- db $23,$38,$55,$60,$69,$77,$88,$FF
-
-Route23Script_5125d:
- ld hl, BadgeTextPointers
- ld a, [wWhichBadge]
- ld c, a
- ld b, 0
- add hl, bc
- add hl, bc
- ld a, [hli]
- ld h, [hl]
- ld l, a
- ld de, wcd6d
-.copyTextLoop
- ld a, [hli]
- ld [de], a
- inc de
- cp "@"
- jr nz, .copyTextLoop
- ret
-
-BadgeTextPointers:
- dw CascadeBadgeText
- dw ThunderBadgeText
- dw RainbowBadgeText
- dw SoulBadgeText
- dw MarshBadgeText
- dw VolcanoBadgeText
- dw EarthBadgeText
-
-EarthBadgeText:
- db "EARTHBADGE@"
-
-VolcanoBadgeText:
- db "VOLCANOBADGE@"
-
-MarshBadgeText:
- db "MARSHBADGE@"
-
-SoulBadgeText:
- db "SOULBADGE@"
-
-RainbowBadgeText:
- db "RAINBOWBADGE@"
-
-ThunderBadgeText:
- db "THUNDERBADGE@"
-
-CascadeBadgeText:
- db "CASCADEBADGE@"
-
-Route23Script_512d8:
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- xor a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld [wJoyIgnore], a
- jp StartSimulatingJoypadStates
-
-Route23Script1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
-Route23Script2:
- ld a, $0
- ld [wRoute23CurScript], a
- ret
-
-Route23TextPointers:
- dw Route23Text1
- dw Route23Text2
- dw Route23Text3
- dw Route23Text4
- dw Route23Text5
- dw Route23Text6
- dw Route23Text7
- dw Route23Text8
-
-Route23Text1:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_EARTHBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Text2:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_VOLCANOBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Text3:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_MARSHBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Text4:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_SOULBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Text5:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_RAINBOWBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Text6:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_THUNDERBADGE_CHECK, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Text7:
- TX_ASM
- EventFlagBit a, EVENT_PASSED_CASCADEBADGE_CHECK
- call Route23Script_51346
- jp TextScriptEnd
-
-Route23Script_51346:
- ld [wWhichBadge], a
- call Route23Script_5125d
- ld a, [wWhichBadge]
- inc a
- ld c, a
- ld b, FLAG_TEST
- ld hl, wObtainedBadges
- predef FlagActionPredef
- ld a, c
- and a
- jr nz, .asm_5136e
- ld hl, VictoryRoadGuardText1
- call PrintText
- call Route23Script_512d8
- ld a, $1
- ld [wRoute23CurScript], a
- ret
-.asm_5136e
- ld hl, VictoryRoadGuardText2
- call PrintText
- ld a, [wWhichBadge]
- ld c, a
- ld b, FLAG_SET
- EventFlagAddress hl, EVENT_PASSED_CASCADEBADGE_CHECK
- predef FlagActionPredef
- ld a, $2
- ld [wRoute23CurScript], a
- ret
-
-Route23Script_51388:
- ld hl, VictoryRoadGuardText2
- jp PrintText
-
-VictoryRoadGuardText1:
- TX_FAR _VictoryRoadGuardText1
- TX_ASM
- ld a, SFX_DENIED
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-VictoryRoadGuardText2:
- TX_FAR _VictoryRoadGuardText2
- db $b
- TX_FAR _VictoryRoadGuardText_513a3
- db "@"
-
-Route23Text8:
- TX_FAR _Route23Text8
- db "@"
diff --git a/scripts/route24.asm b/scripts/route24.asm
deleted file mode 100755
index d2872ccc..00000000
--- a/scripts/route24.asm
+++ /dev/null
@@ -1,378 +0,0 @@
-Route24Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route24TrainerHeaders
- ld de, Route24ScriptPointers
- ld a, [wRoute24CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute24CurScript], a
- ret
-
-Route24Script_513c0:
- xor a
- ld [wJoyIgnore], a
- ld [wRoute24CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route24ScriptPointers:
- dw Route24Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw Route24Script3
- dw Route24Script4
-
-Route24Script0:
- CheckEvent EVENT_GOT_NUGGET
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_5140e
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyHeld], a
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- CheckAndResetEvent EVENT_NUGGET_REWARD_AVAILABLE
- ret z
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $4
- ld [wRoute24CurScript], a
- ld [wCurMapScript], a
- ret
-
-CoordsData_5140e:
- db $0F,$0A,$FF
-
-Route24Script4:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- ld a, $0
- ld [wRoute24CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route24Script3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, Route24Script_513c0
- call UpdateSprites
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_ROUTE24_ROCKET
- ld a, $1
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wRoute24CurScript], a
- ld [wCurMapScript], a
- ret
-
-Route24TextPointers:
- dw Route24Text1
- dw Route24Text2
- dw Route24Text3
- dw Route24Text4
- dw Route24Text5
- dw Route24Text6
- dw Route24Text7
- dw PickUpItemText
- dw Route24Text8
-
-Route24TrainerHeaders:
-Route24TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_0
- dw Route24BattleText1 ; TextBeforeBattle
- dw Route24AfterBattleText1 ; TextAfterBattle
- dw Route24EndBattleText1 ; TextEndBattle
- dw Route24EndBattleText1 ; TextEndBattle
-
-Route24TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_2
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_2
- dw Route24BattleText2 ; TextBeforeBattle
- dw Route24AfterBattleText2 ; TextAfterBattle
- dw Route24EndBattleText2 ; TextEndBattle
- dw Route24EndBattleText2 ; TextEndBattle
-
-Route24TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_3
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_3
- dw Route24BattleText3 ; TextBeforeBattle
- dw Route24AfterBattleText3 ; TextAfterBattle
- dw Route24EndBattleText3 ; TextEndBattle
- dw Route24EndBattleText3 ; TextEndBattle
-
-Route24TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_4
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_4
- dw Route24BattleText4 ; TextBeforeBattle
- dw Route24AfterBattleText4 ; TextAfterBattle
- dw Route24EndBattleText4 ; TextEndBattle
- dw Route24EndBattleText4 ; TextEndBattle
-
-Route24TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_5
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_5
- dw Route24BattleText5 ; TextBeforeBattle
- dw Route24AfterBattleText5 ; TextAfterBattle
- dw Route24EndBattleText5 ; TextEndBattle
- dw Route24EndBattleText5 ; TextEndBattle
-
-Route24TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_24_TRAINER_6
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_24_TRAINER_6
- dw Route24BattleText6 ; TextBeforeBattle
- dw Route24AfterBattleText6 ; TextAfterBattle
- dw Route24EndBattleText6 ; TextEndBattle
- dw Route24EndBattleText6 ; TextEndBattle
-
- db $ff
-
-Route24Text1:
- TX_ASM
- ResetEvent EVENT_NUGGET_REWARD_AVAILABLE
- CheckEvent EVENT_GOT_NUGGET
- jr nz, .asm_514f9
- ld hl, Route24Text_51510
- call PrintText
- lb bc, NUGGET, 1
- call GiveItem
- jr nc, .BagFull
- SetEvent EVENT_GOT_NUGGET
- ld hl, Route24Text_5151a
- call PrintText
- ld hl, Route24Text_51526
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, Route24Text_5152b
- ld de, Route24Text_5152b
- call SaveEndBattleTextPointers
- ld a, [hSpriteIndexOrTextID]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wRoute24CurScript], a
- ld [wCurMapScript], a
- jp TextScriptEnd
-.asm_514f9
- ld hl, Route24Text_51530
- call PrintText
- jp TextScriptEnd
-.BagFull
- ld hl, Route24Text_51521
- call PrintText
- SetEvent EVENT_NUGGET_REWARD_AVAILABLE
- jp TextScriptEnd
-
-Route24Text_51510:
- TX_FAR _Route24Text_51510
- db $0B
- TX_FAR _Route24Text_51515
- db "@"
-
-Route24Text_5151a:
- TX_FAR _Route24Text_5151a
- TX_SFX_KEY_ITEM
- TX_BUTTON_SOUND
- db "@"
-
-Route24Text_51521:
- TX_FAR _Route24Text_51521
- db "@"
-
-Route24Text_51526:
- TX_FAR _Route24Text_51526
- db "@"
-
-Route24Text_5152b:
- TX_FAR _Route24Text_5152b
- db "@"
-
-Route24Text_51530:
- TX_FAR _Route24Text_51530
- db "@"
-
-Route24Text2:
- TX_ASM
- ld hl, Route24TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text3:
- TX_ASM
- ld hl, Route24TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text4:
- TX_ASM
- ld hl, Route24TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text5:
- TX_ASM
- ld hl, Route24TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text6:
- TX_ASM
- ld hl, Route24TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24Text7:
- TX_ASM
- ld hl, Route24TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route24BattleText1:
- TX_FAR _Route24BattleText1
- db "@"
-
-Route24EndBattleText1:
- TX_FAR _Route24EndBattleText1
- db "@"
-
-Route24AfterBattleText1:
- TX_FAR _Route24AfterBattleText1
- db "@"
-
-Route24BattleText2:
- TX_FAR _Route24BattleText2
- db "@"
-
-Route24EndBattleText2:
- TX_FAR _Route24EndBattleText2
- db "@"
-
-Route24AfterBattleText2:
- TX_FAR _Route24AfterBattleText2
- db "@"
-
-Route24BattleText3:
- TX_FAR _Route24BattleText3
- db "@"
-
-Route24EndBattleText3:
- TX_FAR _Route24EndBattleText3
- db "@"
-
-Route24AfterBattleText3:
- TX_FAR _Route24AfterBattleText3
- db "@"
-
-Route24BattleText4:
- TX_FAR _Route24BattleText4
- db "@"
-
-Route24EndBattleText4:
- TX_FAR _Route24EndBattleText4
- db "@"
-
-Route24AfterBattleText4:
- TX_FAR _Route24AfterBattleText4
- db "@"
-
-Route24BattleText5:
- TX_FAR _Route24BattleText5
- db "@"
-
-Route24EndBattleText5:
- TX_FAR _Route24EndBattleText5
- db "@"
-
-Route24AfterBattleText5:
- TX_FAR _Route24AfterBattleText5
- db "@"
-
-Route24BattleText6:
- TX_FAR _Route24BattleText6
- db "@"
-
-Route24EndBattleText6:
- TX_FAR _Route24EndBattleText6
- db "@"
-
-Route24AfterBattleText6:
- TX_FAR _Route24AfterBattleText6
- db "@"
-
-Route24Text8:
- TX_ASM
- CheckEvent EVENT_54F
- jr nz, .asm_515d5
- ld hl, Route24Text_515de
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_515d0
- ld a, CHARMANDER
- ld [wd11e], a
- ld [wcf91], a
- call GetMonName
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- lb bc, CHARMANDER, 10
- call GivePokemon
- jp nc, TextScriptEnd
- ld a, [wAddedToParty]
- and a
- call z, WaitForTextScrollButtonPress
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, Route24Text_515e3
- call PrintText
- SetEvent EVENT_54F
- jp TextScriptEnd
-
-.asm_515d0
- ld hl, Route24Text_515e9
- jr .asm_515d8
-
-.asm_515d5
- ld hl, Route24Text_515ee
-.asm_515d8
- call PrintText
- jp TextScriptEnd
-
-Route24Text_515de:
- TX_FAR _Route24DamianText1
- db "@"
-
-Route24Text_515e3:
- TX_FAR _Route24DamianText2
- db $d
- db "@"
-
-Route24Text_515e9:
- TX_FAR _Route24DamianText3
- db "@"
-
-Route24Text_515ee:
- TX_FAR _Route24DamianText4
- db "@"
-
diff --git a/scripts/route25.asm b/scripts/route25.asm
deleted file mode 100755
index cc2e1d9d..00000000
--- a/scripts/route25.asm
+++ /dev/null
@@ -1,315 +0,0 @@
-Route25Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route25TrainerHeaders
- ld de, Route25ScriptPointers
- ld a, [wRoute25CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute25CurScript], a
- call Route25Script_515e1
- ret
-
-Route25Script_515e1:
- ld hl, wd492
- res 2, [hl]
- res 3, [hl]
- res 4, [hl]
- res 7, [hl]
- xor a
- ld [wBillsHouseCurScript], a
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- ret z
- CheckEventHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
- ret nz
- CheckEventReuseHL EVENT_MET_BILL_2
- jr nz, .asm_51638
- ResetEventReuseHL EVENT_BILL_SAID_USE_CELL_SEPARATOR
- ld a, HS_BILL_POKEMON
- ld [wMissableObjectIndex], a
- predef ShowObject
- jr .asm_5165c
-
-.asm_51638
- CheckEventAfterBranchReuseHL EVENT_GOT_SS_TICKET, EVENT_MET_BILL_2
- jr z, .asm_5165c
- SetEventReuseHL EVENT_LEFT_BILLS_HOUSE_AFTER_HELPING
- ld a, HS_NUGGET_BRIDGE_GUY
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_BILL_1
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_BILL_2
- ld [wMissableObjectIndex], a
- predef ShowObject
-.asm_5165c
- ret
-
-Route25ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route25TextPointers:
- dw Route25Text1
- dw Route25Text2
- dw Route25Text3
- dw Route25Text4
- dw Route25Text5
- dw Route25Text6
- dw Route25Text7
- dw Route25Text8
- dw Route25Text9
- dw PickUpItemText
- dw Route25Text11
-
-Route25TrainerHeaders:
-Route25TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_0
- dw Route25BattleText1 ; TextBeforeBattle
- dw Route25AfterBattleText1 ; TextAfterBattle
- dw Route25EndBattleText1 ; TextEndBattle
- dw Route25EndBattleText1 ; TextEndBattle
-
-Route25TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_2
- dw Route25BattleText2 ; TextBeforeBattle
- dw Route25AfterBattleText2 ; TextAfterBattle
- dw Route25EndBattleText2 ; TextEndBattle
- dw Route25EndBattleText2 ; TextEndBattle
-
-Route25TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_3
- dw Route25BattleText3 ; TextBeforeBattle
- dw Route25AfterBattleText3 ; TextAfterBattle
- dw Route25EndBattleText3 ; TextEndBattle
- dw Route25EndBattleText3 ; TextEndBattle
-
-Route25TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_4
- dw Route25BattleText4 ; TextBeforeBattle
- dw Route25AfterBattleText4 ; TextAfterBattle
- dw Route25EndBattleText4 ; TextEndBattle
- dw Route25EndBattleText4 ; TextEndBattle
-
-Route25TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_5
- dw Route25BattleText5 ; TextBeforeBattle
- dw Route25AfterBattleText5 ; TextAfterBattle
- dw Route25EndBattleText5 ; TextEndBattle
- dw Route25EndBattleText5 ; TextEndBattle
-
-Route25TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_6
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_6
- dw Route25BattleText6 ; TextBeforeBattle
- dw Route25AfterBattleText6 ; TextAfterBattle
- dw Route25EndBattleText6 ; TextEndBattle
- dw Route25EndBattleText6 ; TextEndBattle
-
-Route25TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_7
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_7
- dw Route25BattleText7 ; TextBeforeBattle
- dw Route25AfterBattleText7 ; TextAfterBattle
- dw Route25EndBattleText7 ; TextEndBattle
- dw Route25EndBattleText7 ; TextEndBattle
-
-Route25TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_8, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_8, 1
- dw Route25BattleText8 ; TextBeforeBattle
- dw Route25AfterBattleText8 ; TextAfterBattle
- dw Route25EndBattleText8 ; TextEndBattle
- dw Route25EndBattleText8 ; TextEndBattle
-
-Route25TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_25_TRAINER_9, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_25_TRAINER_9, 1
- dw Route25BattleText9 ; TextBeforeBattle
- dw Route25AfterBattleText9 ; TextAfterBattle
- dw Route25EndBattleText9 ; TextEndBattle
- dw Route25EndBattleText9 ; TextEndBattle
-
- db $ff
-
-Route25Text1:
- TX_ASM
- ld hl, Route25TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text2:
- TX_ASM
- ld hl, Route25TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text3:
- TX_ASM
- ld hl, Route25TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text4:
- TX_ASM
- ld hl, Route25TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text5:
- TX_ASM
- ld hl, Route25TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text6:
- TX_ASM
- ld hl, Route25TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text7:
- TX_ASM
- ld hl, Route25TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text8:
- TX_ASM
- ld hl, Route25TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25Text9:
- TX_ASM
- ld hl, Route25TrainerHeader9
- call TalkToTrainer
- jp TextScriptEnd
-
-Route25BattleText1:
- TX_FAR _Route25BattleText1
- db "@"
-
-Route25EndBattleText1:
- TX_FAR _Route25EndBattleText1
- db "@"
-
-Route25AfterBattleText1:
- TX_FAR _Route25AfterBattleText1
- db "@"
-
-Route25BattleText2:
- TX_FAR _Route25BattleText2
- db "@"
-
-Route25EndBattleText2:
- TX_FAR _Route25EndBattleText2
- db "@"
-
-Route25AfterBattleText2:
- TX_FAR _Route25AfterBattleText2
- db "@"
-
-Route25BattleText3:
- TX_FAR _Route25BattleText3
- db "@"
-
-Route25EndBattleText3:
- TX_FAR _Route25EndBattleText3
- db "@"
-
-Route25AfterBattleText3:
- TX_FAR _Route25AfterBattleText3
- db "@"
-
-Route25BattleText4:
- TX_FAR _Route25BattleText4
- db "@"
-
-Route25EndBattleText4:
- TX_FAR _Route25EndBattleText4
- db "@"
-
-Route25AfterBattleText4:
- TX_FAR _Route25AfterBattleText4
- db "@"
-
-Route25BattleText5:
- TX_FAR _Route25BattleText5
- db "@"
-
-Route25EndBattleText5:
- TX_FAR _Route25EndBattleText5
- db "@"
-
-Route25AfterBattleText5:
- TX_FAR _Route25AfterBattleText5
- db "@"
-
-Route25BattleText6:
- TX_FAR _Route25BattleText6
- db "@"
-
-Route25EndBattleText6:
- TX_FAR _Route25EndBattleText6
- db "@"
-
-Route25AfterBattleText6:
- TX_FAR _Route25AfterBattleText6
- db "@"
-
-Route25BattleText7:
- TX_FAR _Route25BattleText7
- db "@"
-
-Route25EndBattleText7:
- TX_FAR _Route25EndBattleText7
- db "@"
-
-Route25AfterBattleText7:
- TX_FAR _Route25AfterBattleText7
- db "@"
-
-Route25BattleText8:
- TX_FAR _Route25BattleText8
- db "@"
-
-Route25EndBattleText8:
- TX_FAR _Route25EndBattleText8
- db "@"
-
-Route25AfterBattleText8:
- TX_FAR _Route25AfterBattleText8
- db "@"
-
-Route25BattleText9:
- TX_FAR _Route25BattleText9
- db "@"
-
-Route25EndBattleText9:
- TX_FAR _Route25EndBattleText9
- db "@"
-
-Route25AfterBattleText9:
- TX_FAR _Route25AfterBattleText9
- db "@"
-
-Route25Text11:
- TX_FAR _Route25Text11
- db "@"
diff --git a/scripts/route2gate.asm b/scripts/route2gate.asm
deleted file mode 100755
index 34f1aa35..00000000
--- a/scripts/route2gate.asm
+++ /dev/null
@@ -1,39 +0,0 @@
-Route2GateScript:
- jp EnableAutoTextBoxDrawing
-
-Route2GateTextPointers:
- dw Route2GateText1
- dw Route2GateText2
-
-Route2GateText1:
- TX_ASM
- CheckEvent EVENT_GOT_HM05
- jr nz, .asm_5d60d
- ld a, 10 ; pokemon needed
- ld [hOaksAideRequirement], a
- ld a, HM_05 ; oak's aide reward
- ld [hOaksAideRewardItem], a
- ld [wd11e], a
- call GetItemName
- ld hl, wcd6d
- ld de, wOaksAideRewardItemName
- ld bc, ITEM_NAME_LENGTH
- call CopyData
- predef OaksAideScript
- ld a, [hOaksAideResult]
- cp $1
- jr nz, .asm_5d613
- SetEvent EVENT_GOT_HM05
-.asm_5d60d
- ld hl, Route2GateText_5d616
- call PrintText
-.asm_5d613
- jp TextScriptEnd
-
-Route2GateText_5d616:
- TX_FAR _Route2GateText_5d616
- db "@"
-
-Route2GateText2:
- TX_FAR _Route2GateText2
- db "@"
diff --git a/scripts/route2house.asm b/scripts/route2house.asm
deleted file mode 100755
index 95055aec..00000000
--- a/scripts/route2house.asm
+++ /dev/null
@@ -1,17 +0,0 @@
-Route2HouseScript:
- jp EnableAutoTextBoxDrawing
-
-Route2HouseTextPointers:
- dw Route2HouseText1
- dw Route2HouseText2
-
-Route2HouseText1:
- TX_FAR _Route2HouseText1
- db "@"
-
-Route2HouseText2:
- TX_ASM
- ld a, $1
- ld [wWhichTrade], a
- predef DoInGameTradeDialogue
- jp TextScriptEnd
diff --git a/scripts/route3.asm b/scripts/route3.asm
deleted file mode 100755
index b2c5de3e..00000000
--- a/scripts/route3.asm
+++ /dev/null
@@ -1,252 +0,0 @@
-Route3Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route3TrainerHeader0
- ld de, Route3ScriptPointers
- ld a, [wRoute3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute3CurScript], a
- ret
-
-Route3ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route3TextPointers:
- dw Route3Text1
- dw Route3Text2
- dw Route3Text3
- dw Route3Text4
- dw Route3Text5
- dw Route3Text6
- dw Route3Text7
- dw Route3Text8
- dw Route3Text9
- dw Route3Text10
-
-Route3TrainerHeaders:
-Route3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_0
- dw Route3BattleText1 ; TextBeforeBattle
- dw Route3AfterBattleText1 ; TextAfterBattle
- dw Route3EndBattleText1 ; TextEndBattle
- dw Route3EndBattleText1 ; TextEndBattle
-
-Route3TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_2
- dw Route3BattleText2 ; TextBeforeBattle
- dw Route3AfterBattleText2 ; TextAfterBattle
- dw Route3EndBattleText2 ; TextEndBattle
- dw Route3EndBattleText2 ; TextEndBattle
-
-Route3TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_3
- dw Route3BattleText3 ; TextBeforeBattle
- dw Route3AfterBattleText3 ; TextAfterBattle
- dw Route3EndBattleText3 ; TextEndBattle
- dw Route3EndBattleText3 ; TextEndBattle
-
-Route3TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_4
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_4
- dw Route3BattleText4 ; TextBeforeBattle
- dw Route3AfterBattleText4 ; TextAfterBattle
- dw Route3EndBattleText4 ; TextEndBattle
- dw Route3EndBattleText4 ; TextEndBattle
-
-Route3TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_5
- dw Route3BattleText5 ; TextBeforeBattle
- dw Route3AfterBattleText5 ; TextAfterBattle
- dw Route3EndBattleText5 ; TextEndBattle
- dw Route3EndBattleText5 ; TextEndBattle
-
-Route3TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_6
- dw Route3BattleText6 ; TextBeforeBattle
- dw Route3AfterBattleText6 ; TextAfterBattle
- dw Route3EndBattleText6 ; TextEndBattle
- dw Route3EndBattleText6 ; TextEndBattle
-
-Route3TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_7, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_7, 1
- dw Route3BattleText7 ; TextBeforeBattle
- dw Route3AfterBattleText7 ; TextAfterBattle
- dw Route3EndBattleText7 ; TextEndBattle
- dw Route3EndBattleText7 ; TextEndBattle
-
-Route3TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_3_TRAINER_8, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_3_TRAINER_8, 1
- dw Route3BattleText8 ; TextBeforeBattle
- dw Route3AfterBattleText8 ; TextAfterBattle
- dw Route3EndBattleText8 ; TextEndBattle
- dw Route3EndBattleText8 ; TextEndBattle
-
- db $ff
-
-Route3Text1:
- TX_FAR _Route3Text1
- db "@"
-
-Route3Text2:
- TX_ASM
- ld hl, Route3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText1:
- TX_FAR _Route3BattleText1
- db "@"
-
-Route3EndBattleText1:
- TX_FAR _Route3EndBattleText1
- db "@"
-
-Route3AfterBattleText1:
- TX_FAR _Route3AfterBattleText1
- db "@"
-
-Route3Text3:
- TX_ASM
- ld hl, Route3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText2:
- TX_FAR _Route3BattleText2
- db "@"
-
-Route3EndBattleText2:
- TX_FAR _Route3EndBattleText2
- db "@"
-
-Route3AfterBattleText2:
- TX_FAR _Route3AfterBattleText2
- db "@"
-
-Route3Text4:
- TX_ASM
- ld hl, Route3TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText3:
- TX_FAR _Route3BattleText3
- db "@"
-
-Route3EndBattleText3:
- TX_FAR _Route3EndBattleText3
- db "@"
-
-Route3AfterBattleText3:
- TX_FAR _Route3AfterBattleText3
- db "@"
-
-Route3Text5:
- TX_ASM
- ld hl, Route3TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText4:
- TX_FAR _Route3BattleText4
- db "@"
-
-Route3EndBattleText4:
- TX_FAR _Route3EndBattleText4
- db "@"
-
-Route3AfterBattleText4:
- TX_FAR _Route3AfterBattleText4
- db "@"
-
-Route3Text6:
- TX_ASM
- ld hl, Route3TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText5:
- TX_FAR _Route3BattleText5
- db "@"
-
-Route3EndBattleText5:
- TX_FAR _Route3EndBattleText5
- db "@"
-
-Route3AfterBattleText5:
- TX_FAR _Route3AfterBattleText5
- db "@"
-
-Route3Text7:
- TX_ASM
- ld hl, Route3TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText6:
- TX_FAR _Route3BattleText6
- db "@"
-
-Route3EndBattleText6:
- TX_FAR _Route3EndBattleText6
- db "@"
-
-Route3AfterBattleText6:
- TX_FAR _Route3AfterBattleText6
- db "@"
-
-Route3Text8:
- TX_ASM
- ld hl, Route3TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText7:
- TX_FAR _Route3BattleText7
- db "@"
-
-Route3EndBattleText7:
- TX_FAR _Route3EndBattleText7
- db "@"
-
-Route3AfterBattleText7:
- TX_FAR _Route3AfterBattleText7
- db "@"
-
-Route3Text9:
- TX_ASM
- ld hl, Route3TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route3BattleText8:
- TX_FAR _Route3BattleText8
- db "@"
-
-Route3EndBattleText8:
- TX_FAR _Route3EndBattleText8
- db "@"
-
-Route3AfterBattleText8:
- TX_FAR _Route3AfterBattleText8
- db "@"
-
-Route3Text10:
- TX_FAR _Route3Text10
- db "@"
diff --git a/scripts/route4.asm b/scripts/route4.asm
deleted file mode 100755
index 559f2006..00000000
--- a/scripts/route4.asm
+++ /dev/null
@@ -1,63 +0,0 @@
-Route4Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route4TrainerHeaders
- ld de, Route4ScriptPointers
- ld a, [wRoute4CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute4CurScript], a
- ret
-
-Route4ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route4TextPointers:
- dw Route4Text1
- dw Route4Text2
- dw PickUpItemText
- dw PokeCenterSignText
- dw Route4Text5
- dw Route4Text6
-
-Route4TrainerHeaders:
-Route4TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_4_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_4_TRAINER_0
- dw Route4BattleText1 ; TextBeforeBattle
- dw Route4AfterBattleText1 ; TextAfterBattle
- dw Route4EndBattleText1 ; TextEndBattle
- dw Route4EndBattleText1 ; TextEndBattle
-
- db $ff
-
-Route4Text1:
- TX_FAR _Route4Text1
- db "@"
-
-Route4Text2:
- TX_ASM
- ld hl, Route4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route4BattleText1:
- TX_FAR _Route4BattleText1
- db "@"
-
-Route4EndBattleText1:
- TX_FAR _Route4EndBattleText1
- db "@"
-
-Route4AfterBattleText1:
- TX_FAR _Route4AfterBattleText1
- db "@"
-
-Route4Text5:
- TX_FAR _Route4Text5
- db "@"
-
-Route4Text6:
- TX_FAR _Route4Text6
- db "@"
diff --git a/scripts/route5.asm b/scripts/route5.asm
deleted file mode 100755
index 113212a4..00000000
--- a/scripts/route5.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-Route5Script:
- jp EnableAutoTextBoxDrawing
-
-Route5TextPointers:
- dw Route5Text1
-
-Route5Text1:
- TX_FAR _Route5Text1
- db "@"
diff --git a/scripts/route5gate.asm b/scripts/route5gate.asm
deleted file mode 100755
index b3ad0aa3..00000000
--- a/scripts/route5gate.asm
+++ /dev/null
@@ -1,117 +0,0 @@
-Route5GateScript:
- call EnableAutoTextBoxDrawing
- ld a, [wRoute5GateCurScript]
- ld hl, Route5GateScriptPointers
- jp JumpTable
-
-Route5GateScriptPointers:
- dw Route5GateScript0
- dw Route5GateScript1
-
-Route5GateScript_1df43:
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- jp StartSimulatingJoypadStates
-
-Route5GateScript0:
- ld a, [wd728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1df8f
- call ArePlayerCoordsInArray
- ret nc
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- xor a
- ld [hJoyHeld], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1df82
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Route5GateScript_1df43
- ld a, $1
- ld [wRoute5GateCurScript], a
- ret
-.asm_1df82
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wd728
- set 6, [hl]
- ret
-
-CoordsData_1df8f:
- db 3,3
- db 3,4
- db $ff
-
-Route5GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wRoute5GateCurScript], a
- ret
-
-Route5GateTextPointers:
- dw Route5GateText1
- dw Route5GateText2
- dw Route5GateText3
-
-Route8GateText1:
-Route7GateText1:
-Route6GateText1:
-Route5GateText1:
- TX_ASM
- ld a, [wd728]
- bit 6, a
- jr nz, .asm_88856
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_768a2
- ld hl, Route5GateText2
- call PrintText
- call Route5GateScript_1df43
- ld a, $1
- ld [wRoute5GateCurScript], a
- jp TextScriptEnd
-.asm_768a2
- ld hl, Route5GateText3
- call PrintText
- ld hl, wd728
- set 6, [hl]
- jp TextScriptEnd
-.asm_88856
- ld hl, SaffronGateText_1dff6
- call PrintText
- jp TextScriptEnd
-
-Route8GateText2:
-Route7GateText2:
-Route6GateText2:
-Route5GateText2:
- TX_FAR _SaffronGateText_1dfe7
- db "@"
-
-Route8GateText3:
-Route7GateText3:
-Route6GateText3:
-Route5GateText3:
- TX_FAR _SaffronGateText_8aaa9
- db $11
- TX_FAR _SaffronGateText_1dff1
- db "@"
-
-SaffronGateText_1dff6:
- TX_FAR _SaffronGateText_1dff6
- db "@"
-
-
diff --git a/scripts/route6.asm b/scripts/route6.asm
deleted file mode 100755
index 7f3a5dda..00000000
--- a/scripts/route6.asm
+++ /dev/null
@@ -1,191 +0,0 @@
-Route6Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route6TrainerHeaders
- ld de, Route6ScriptPointers
- ld a, [wRoute6CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute6CurScript], a
- ret
-
-Route6ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route6TextPointers:
- dw Route6Text1
- dw Route6Text2
- dw Route6Text3
- dw Route6Text4
- dw Route6Text5
- dw Route6Text6
- dw Route6Text7
-
-Route6TrainerHeaders:
-Route6TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_0
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_0
- dw Route6BattleText1 ; TextBeforeBattle
- dw Route6AfterBattleText1 ; TextAfterBattle
- dw Route6EndBattleText1 ; TextEndBattle
- dw Route6EndBattleText1 ; TextEndBattle
-
-Route6TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_1
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_1
- dw Route6BattleText2 ; TextBeforeBattle
- dw Route6AfterBattleText2 ; TextAfterBattle
- dw Route6EndBattleText2 ; TextEndBattle
- dw Route6EndBattleText2 ; TextEndBattle
-
-Route6TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_2
- dw Route6BattleText3 ; TextBeforeBattle
- dw Route6AfterBattleText3 ; TextAfterBattle
- dw Route6EndBattleText3 ; TextEndBattle
- dw Route6EndBattleText3 ; TextEndBattle
-
-Route6TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_3
- dw Route6BattleText4 ; TextBeforeBattle
- dw Route6AfterBattleText4 ; TextAfterBattle
- dw Route6EndBattleText4 ; TextEndBattle
- dw Route6EndBattleText4 ; TextEndBattle
-
-Route6TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_4
- dw Route6BattleText5 ; TextBeforeBattle
- dw Route6AfterBattleText5 ; TextAfterBattle
- dw Route6EndBattleText5 ; TextEndBattle
- dw Route6EndBattleText5 ; TextEndBattle
-
-Route6TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_6_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_6_TRAINER_5
- dw Route6BattleText6 ; TextBeforeBattle
- dw Route6AfterBattleText6 ; TextAfterBattle
- dw Route6EndBattleText6 ; TextEndBattle
- dw Route6EndBattleText6 ; TextEndBattle
-
- db $ff
-
-Route6Text1:
- TX_ASM
- ld hl, Route6TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText1:
- TX_FAR _Route6BattleText1
- db "@"
-
-Route6EndBattleText1:
- TX_FAR _Route6EndBattleText1
- db "@"
-
-Route6AfterBattleText1:
- TX_FAR _Route6AfterBattleText1
- db "@"
-
-Route6Text2:
- TX_ASM
- ld hl, Route6TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText2:
- TX_FAR _Route6BattleText2
- db "@"
-
-Route6EndBattleText2:
- TX_FAR _Route6EndBattleText2
- db "@"
-
-Route6AfterBattleText2:
- TX_FAR _Route6AfterBattleText2
- db "@"
-
-Route6Text3:
- TX_ASM
- ld hl, Route6TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText3:
- TX_FAR _Route6BattleText3
- db "@"
-
-Route6EndBattleText3:
- TX_FAR _Route6EndBattleText3
- db "@"
-
-Route6AfterBattleText3:
- TX_FAR _Route6AfterBattleText3
- db "@"
-
-Route6Text4:
- TX_ASM
- ld hl, Route6TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText4:
- TX_FAR _Route6BattleText4
- db "@"
-
-Route6EndBattleText4:
- TX_FAR _Route6EndBattleText4
- db "@"
-
-Route6AfterBattleText4:
- TX_FAR _Route6AfterBattleText4
- db "@"
-
-Route6Text5:
- TX_ASM
- ld hl, Route6TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText5:
- TX_FAR _Route6BattleText5
- db "@"
-
-Route6EndBattleText5:
- TX_FAR _Route6EndBattleText5
- db "@"
-
-Route6AfterBattleText5:
- TX_FAR _Route6AfterBattleText5
- db "@"
-
-Route6Text6:
- TX_ASM
- ld hl, Route6TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route6BattleText6:
- TX_FAR _Route6BattleText6
- db "@"
-
-Route6EndBattleText6:
- TX_FAR _Route6EndBattleText6
- db "@"
-
-Route6AfterBattleText6:
- TX_FAR _Route6AfterBattleText6
- db "@"
-
-Route6Text7:
- TX_FAR _Route6Text7
- db "@"
diff --git a/scripts/route6gate.asm b/scripts/route6gate.asm
deleted file mode 100755
index 001a295c..00000000
--- a/scripts/route6gate.asm
+++ /dev/null
@@ -1,70 +0,0 @@
-Route6GateScript:
- call EnableAutoTextBoxDrawing
- ld hl, Route6GateScriptPointers
- ld a, [wRoute6GateCurScript]
- call JumpTable
- ret
-
-Route6GateScriptPointers:
- dw Route6GateScript0
- dw Route6GateScript1
-
-Route6GateScript0:
- ld a, [wd728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1e08c
- call ArePlayerCoordsInArray
- ret nc
- ld a, PLAYER_DIR_RIGHT
- ld [wPlayerMovingDirection], a
- xor a
- ld [hJoyHeld], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1e080
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Route6GateScript_1e0a1
- ld a, $1
- ld [wRoute6GateCurScript], a
- ret
-.asm_1e080
- ld hl, wd728
- set 6, [hl]
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-CoordsData_1e08c:
- db $02,$03
- db $02,$04,$FF
-
-Route6GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wRoute6GateCurScript], a
- ret
-
-Route6GateScript_1e0a1:
- ld hl, wd730
- set 7, [hl]
- ld a, $80
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- xor a
- ld [wSpriteStateData2 + $06], a
- ld [wOverrideSimulatedJoypadStatesMask], a
- ret
-
-Route6GateTextPointers:
- dw Route6GateText1
- dw Route6GateText2
- dw Route6GateText3
diff --git a/scripts/route7.asm b/scripts/route7.asm
deleted file mode 100755
index af353821..00000000
--- a/scripts/route7.asm
+++ /dev/null
@@ -1,10 +0,0 @@
-Route7Script:
- call EnableAutoTextBoxDrawing
- ret
-
-Route7TextPointers:
- dw Route7Text1
-
-Route7Text1:
- TX_FAR _Route7Text1
- db "@"
diff --git a/scripts/route7gate.asm b/scripts/route7gate.asm
deleted file mode 100755
index 6e62c73c..00000000
--- a/scripts/route7gate.asm
+++ /dev/null
@@ -1,73 +0,0 @@
-Route7GateScript:
- call EnableAutoTextBoxDrawing
- ld a, [wRoute7GateCurScript]
- ld hl, Route7GateScriptPointers
- call JumpTable
- ret
-
-Route7GateScriptPointers:
- dw Route7GateScript0
- dw Route7GateScript1
-
-Route7GateScript_1e111:
- ld hl, wd730
- set 7, [hl]
- ld a, $20
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- xor a
- ld [wSpriteStateData2 + $06], a
- ld [wOverrideSimulatedJoypadStatesMask], a
- ret
-
-Route7GateScript0:
- ld a, [wd728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1e167
- call ArePlayerCoordsInArray
- ret nc
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- xor a
- ld [hJoyHeld], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1e15a
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Route7GateScript_1e111
- ld a, $1
- ld [wRoute7GateCurScript], a
- ret
-.asm_1e15a
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wd728
- set 6, [hl]
- ret
-
-CoordsData_1e167:
- db 3,3
- db 4,3
- db $ff
-
-Route7GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wRoute7GateCurScript], a
- ld [wCurMapScript], a
- ret
-
-Route7GateTextPointers:
- dw Route7GateText1
- dw Route7GateText2
- dw Route7GateText3
diff --git a/scripts/route8.asm b/scripts/route8.asm
deleted file mode 100755
index 34e6aba4..00000000
--- a/scripts/route8.asm
+++ /dev/null
@@ -1,275 +0,0 @@
-Route8Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route8TrainerHeaders
- ld de, Route8ScriptPointers
- ld a, [wRoute8CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute8CurScript], a
- ret
-
-Route8ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route8TextPointers:
- dw Route8Text1
- dw Route8Text2
- dw Route8Text3
- dw Route8Text4
- dw Route8Text5
- dw Route8Text6
- dw Route8Text7
- dw Route8Text8
- dw Route8Text9
- dw Route8Text10
-
-Route8TrainerHeaders:
-Route8TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_0
- dw Route8BattleText1 ; TextBeforeBattle
- dw Route8AfterBattleText1 ; TextAfterBattle
- dw Route8EndBattleText1 ; TextEndBattle
- dw Route8EndBattleText1 ; TextEndBattle
-
-Route8TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_1
- dw Route8BattleText2 ; TextBeforeBattle
- dw Route8AfterBattleText2 ; TextAfterBattle
- dw Route8EndBattleText2 ; TextEndBattle
- dw Route8EndBattleText2 ; TextEndBattle
-
-Route8TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_2
- dw Route8BattleText3 ; TextBeforeBattle
- dw Route8AfterBattleText3 ; TextAfterBattle
- dw Route8EndBattleText3 ; TextEndBattle
- dw Route8EndBattleText3 ; TextEndBattle
-
-Route8TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_3
- dw Route8BattleText4 ; TextBeforeBattle
- dw Route8AfterBattleText4 ; TextAfterBattle
- dw Route8EndBattleText4 ; TextEndBattle
- dw Route8EndBattleText4 ; TextEndBattle
-
-Route8TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_4
- dw Route8BattleText5 ; TextBeforeBattle
- dw Route8AfterBattleText5 ; TextAfterBattle
- dw Route8EndBattleText5 ; TextEndBattle
- dw Route8EndBattleText5 ; TextEndBattle
-
-Route8TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_5
- dw Route8BattleText6 ; TextBeforeBattle
- dw Route8AfterBattleText6 ; TextAfterBattle
- dw Route8EndBattleText6 ; TextEndBattle
- dw Route8EndBattleText6 ; TextEndBattle
-
-Route8TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_6
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_6
- dw Route8BattleText7 ; TextBeforeBattle
- dw Route8AfterBattleText7 ; TextAfterBattle
- dw Route8EndBattleText7 ; TextEndBattle
- dw Route8EndBattleText7 ; TextEndBattle
-
-Route8TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_7, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_7, 1
- dw Route8BattleText8 ; TextBeforeBattle
- dw Route8AfterBattleText8 ; TextAfterBattle
- dw Route8EndBattleText8 ; TextEndBattle
- dw Route8EndBattleText8 ; TextEndBattle
-
-Route8TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_8_TRAINER_8, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_8_TRAINER_8, 1
- dw Route8BattleText9 ; TextBeforeBattle
- dw Route8AfterBattleText9 ; TextAfterBattle
- dw Route8EndBattleText9 ; TextEndBattle
- dw Route8EndBattleText9 ; TextEndBattle
-
- db $ff
-
-Route8Text1:
- TX_ASM
- ld hl, Route8TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText1:
- TX_FAR _Route8BattleText1
- db "@"
-
-Route8EndBattleText1:
- TX_FAR _Route8EndBattleText1
- db "@"
-
-Route8AfterBattleText1:
- TX_FAR _Route8AfterBattleText1
- db "@"
-
-Route8Text2:
- TX_ASM
- ld hl, Route8TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText2:
- TX_FAR _Route8BattleText2
- db "@"
-
-Route8EndBattleText2:
- TX_FAR _Route8EndBattleText2
- db "@"
-
-Route8AfterBattleText2:
- TX_FAR _Route8AfterBattleText2
- db "@"
-
-Route8Text3:
- TX_ASM
- ld hl, Route8TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText3:
- TX_FAR _Route8BattleText3
- db "@"
-
-Route8EndBattleText3:
- TX_FAR _Route8EndBattleText3
- db "@"
-
-Route8AfterBattleText3:
- TX_FAR _Route8AfterBattleText3
- db "@"
-
-Route8Text4:
- TX_ASM
- ld hl, Route8TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText4:
- TX_FAR _Route8BattleText4
- db "@"
-
-Route8EndBattleText4:
- TX_FAR _Route8EndBattleText4
- db "@"
-
-Route8AfterBattleText4:
- TX_FAR _Route8AfterBattleText4
- db "@"
-
-Route8Text5:
- TX_ASM
- ld hl, Route8TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText5:
- TX_FAR _Route8BattleText5
- db "@"
-
-Route8EndBattleText5:
- TX_FAR _Route8EndBattleText5
- db "@"
-
-Route8AfterBattleText5:
- TX_FAR _Route8AfterBattleText5
- db "@"
-
-Route8Text6:
- TX_ASM
- ld hl, Route8TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText6:
- TX_FAR _Route8BattleText6
- db "@"
-
-Route8EndBattleText6:
- TX_FAR _Route8EndBattleText6
- db "@"
-
-Route8AfterBattleText6:
- TX_FAR _Route8AfterBattleText6
- db "@"
-
-Route8Text7:
- TX_ASM
- ld hl, Route8TrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText7:
- TX_FAR _Route8BattleText7
- db "@"
-
-Route8EndBattleText7:
- TX_FAR _Route8EndBattleText7
- db "@"
-
-Route8AfterBattleText7:
- TX_FAR _Route8AfterBattleText7
- db "@"
-
-Route8Text8:
- TX_ASM
- ld hl, Route8TrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText8:
- TX_FAR _Route8BattleText8
- db "@"
-
-Route8EndBattleText8:
- TX_FAR _Route8EndBattleText8
- db "@"
-
-Route8AfterBattleText8:
- TX_FAR _Route8AfterBattleText8
- db "@"
-
-Route8Text9:
- TX_ASM
- ld hl, Route8TrainerHeader8
- call TalkToTrainer
- jp TextScriptEnd
-
-Route8BattleText9:
- TX_FAR _Route8BattleText9
- db "@"
-
-Route8EndBattleText9:
- TX_FAR _Route8EndBattleText9
- db "@"
-
-Route8AfterBattleText9:
- TX_FAR _Route8AfterBattleText9
- db "@"
-
-Route8Text10:
- TX_FAR _Route8Text10
- db "@"
diff --git a/scripts/route8gate.asm b/scripts/route8gate.asm
deleted file mode 100755
index b86458d8..00000000
--- a/scripts/route8gate.asm
+++ /dev/null
@@ -1,70 +0,0 @@
-Route8GateScript:
- call EnableAutoTextBoxDrawing
- ld hl, Route8GateScriptPointers
- ld a, [wRoute8GateCurScript]
- jp JumpTable
-
-Route8GateScriptPointers:
- dw Route8GateScript0
- dw Route8GateScript1
-
-Route8GateScript_1e1d7:
- ld hl, wd730
- set 7, [hl]
- ld a, $10
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- xor a
- ld [wSpriteStateData2 + $06], a
- ld [wOverrideSimulatedJoypadStatesMask], a
- ret
-
-Route8GateScript0:
- ld a, [wd728]
- bit 6, a
- ret nz
- ld hl, CoordsData_1e22c
- call ArePlayerCoordsInArray
- ret nc
- ld a, PLAYER_DIR_UP
- ld [wPlayerMovingDirection], a
- xor a
- ld [hJoyHeld], a
- callba RemoveGuardDrink
- ld a, [$ffdb]
- and a
- jr nz, .asm_1e220
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Route8GateScript_1e1d7
- ld a, $1
- ld [wRoute8GateCurScript], a
- ret
-.asm_1e220
- ld hl, wd728
- set 6, [hl]
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- jp DisplayTextID
-
-CoordsData_1e22c:
- db 3,2
- db 4,2
- db $ff
-
-Route8GateScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld [wRoute8GateCurScript], a
- ret
-
-Route8GateTextPointers:
- dw Route8GateText1
- dw Route8GateText2
- dw Route8GateText3
diff --git a/scripts/route9.asm b/scripts/route9.asm
deleted file mode 100755
index f08e9790..00000000
--- a/scripts/route9.asm
+++ /dev/null
@@ -1,269 +0,0 @@
-Route9Script:
- call EnableAutoTextBoxDrawing
- ld hl, Route9TrainerHeaders
- ld de, Route9ScriptPointers
- ld a, [wRoute9CurScript]
- call ExecuteCurMapScriptInTable
- ld [wRoute9CurScript], a
- ret
-
-Route9ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-Route9TextPointers:
- dw Route9Text1
- dw Route9TextAJ
- dw Route9Text3
- dw Route9Text4
- dw Route9Text5
- dw Route9Text6
- dw Route9Text7
- dw Route9Text8
- dw Route9Text9
- dw PickUpItemText
- dw Route9Text11
-
-Route9TrainerHeaders:
-Route9TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_0
- dw Route9BattleText1 ; TextBeforeBattle
- dw Route9AfterBattleText1 ; TextAfterBattle
- dw Route9EndBattleText1 ; TextEndBattle
- dw Route9EndBattleText1 ; TextEndBattle
-
-Route9TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_2
- dw Route9BattleTextAJ ; TextBeforeBattle
- dw Route9AfterBattleTextAJ ; TextAfterBattle
- dw Route9EndBattleTextAJ ; TextEndBattle
- dw Route9EndBattleTextAJ ; TextEndBattle
-
-Route9TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_3
- dw Route9BattleText3 ; TextBeforeBattle
- dw Route9AfterBattleText3 ; TextAfterBattle
- dw Route9EndBattleText3 ; TextEndBattle
- dw Route9EndBattleText3 ; TextEndBattle
-
-Route9TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_4
- dw Route9BattleText4 ; TextBeforeBattle
- dw Route9AfterBattleText4 ; TextAfterBattle
- dw Route9EndBattleText4 ; TextEndBattle
- dw Route9EndBattleText4 ; TextEndBattle
-
-Route9TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_5
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_5
- dw Route9BattleText5 ; TextBeforeBattle
- dw Route9AfterBattleText5 ; TextAfterBattle
- dw Route9EndBattleText5 ; TextEndBattle
- dw Route9EndBattleText5 ; TextEndBattle
-
-Route9TrainerHeader6:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_6
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_6
- dw Route9BattleText6 ; TextBeforeBattle
- dw Route9AfterBattleText6 ; TextAfterBattle
- dw Route9EndBattleText6 ; TextEndBattle
- dw Route9EndBattleText6 ; TextEndBattle
-
-Route9TrainerHeader7:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_7
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_7
- dw Route9BattleText7 ; TextBeforeBattle
- dw Route9AfterBattleText7 ; TextAfterBattle
- dw Route9EndBattleText7 ; TextEndBattle
- dw Route9EndBattleText7 ; TextEndBattle
-
-Route9TrainerHeader8:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_8, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_8, 1
- dw Route9BattleText8 ; TextBeforeBattle
- dw Route9AfterBattleText8 ; TextAfterBattle
- dw Route9EndBattleText8 ; TextEndBattle
- dw Route9EndBattleText8 ; TextEndBattle
-
-Route9TrainerHeader9:
- dbEventFlagBit EVENT_BEAT_ROUTE_9_TRAINER_9, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ROUTE_9_TRAINER_9, 1
- dw Route9BattleText9 ; TextBeforeBattle
- dw Route9AfterBattleText9 ; TextAfterBattle
- dw Route9EndBattleText9 ; TextEndBattle
- dw Route9EndBattleText9 ; TextEndBattle
-
- db $ff
-
-Route9Text1:
- TX_ASM
- ld hl, Route9TrainerHeader0
- jr Route9TalkToTrainer
-
-Route9TextAJ:
- TX_ASM
- ld hl, Route9TrainerHeader2
- jr Route9TalkToTrainer
-
-Route9Text3:
- TX_ASM
- ld hl, Route9TrainerHeader3
- jr Route9TalkToTrainer
-
-Route9Text4:
- TX_ASM
- ld hl, Route9TrainerHeader4
- jr Route9TalkToTrainer
-
-Route9Text5:
- TX_ASM
- ld hl, Route9TrainerHeader5
- jr Route9TalkToTrainer
-
-Route9Text6:
- TX_ASM
- ld hl, Route9TrainerHeader6
- jr Route9TalkToTrainer
-
-Route9Text7:
- TX_ASM
- ld hl, Route9TrainerHeader7
- jr Route9TalkToTrainer
-
-Route9Text8:
- TX_ASM
- ld hl, Route9TrainerHeader8
- jr Route9TalkToTrainer
-
-Route9Text9:
- TX_ASM
- ld hl, Route9TrainerHeader9
-Route9TalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-Route9BattleText1:
- TX_FAR _Route9BattleText1
- db "@"
-
-Route9EndBattleText1:
- TX_FAR _Route9EndBattleText1
- db "@"
-
-Route9AfterBattleText1:
- TX_FAR _Route9AfterBattleText1
- db "@"
-
-Route9BattleTextAJ:
- TX_FAR _Route9BattleTextAJ
- db "@"
-
-Route9EndBattleTextAJ:
- TX_FAR _Route9EndBattleTextAJ
- db "@"
-
-Route9AfterBattleTextAJ:
- TX_FAR _Route9AfterBattleTextAJ
- db "@"
-
-Route9BattleText3:
- TX_FAR _Route9BattleText3
- db "@"
-
-Route9EndBattleText3:
- TX_FAR _Route9EndBattleText3
- db "@"
-
-Route9AfterBattleText3:
- TX_FAR _Route9AfterBattleText3
- db "@"
-
-Route9BattleText4:
- TX_FAR _Route9BattleText4
- db "@"
-
-Route9EndBattleText4:
- TX_FAR _Route9EndBattleText4
- db "@"
-
-Route9AfterBattleText4:
- TX_FAR _Route9AfterBattleText4
- db "@"
-
-Route9BattleText5:
- TX_FAR _Route9BattleText5
- db "@"
-
-Route9EndBattleText5:
- TX_FAR _Route9EndBattleText5
- db "@"
-
-Route9AfterBattleText5:
- TX_FAR _Route9AfterBattleText5
- db "@"
-
-Route9BattleText6:
- TX_FAR _Route9BattleText6
- db "@"
-
-Route9EndBattleText6:
- TX_FAR _Route9EndBattleText6
- db "@"
-
-Route9AfterBattleText6:
- TX_FAR _Route9AfterBattleText6
- db "@"
-
-Route9BattleText7:
- TX_FAR _Route9BattleText7
- db "@"
-
-Route9EndBattleText7:
- TX_FAR _Route9EndBattleText7
- db "@"
-
-Route9AfterBattleText7:
- TX_FAR _Route9AfterBattleText7
- db "@"
-
-Route9BattleText8:
- TX_FAR _Route9BattleText8
- db "@"
-
-Route9EndBattleText8:
- TX_FAR _Route9EndBattleText8
- db "@"
-
-Route9AfterBattleText8:
- TX_FAR _Route9AfterBattleText8
- db "@"
-
-Route9BattleText9:
- TX_FAR _Route9BattleText9
- db "@"
-
-Route9EndBattleText9:
- TX_FAR _Route9EndBattleText9
- db "@"
-
-Route9AfterBattleText9:
- TX_FAR _Route9AfterBattleText9
- db "@"
-
-Route9Text11:
- TX_FAR _Route9Text11
- db "@"
diff --git a/scripts/safarizonecenter.asm b/scripts/safarizonecenter.asm
deleted file mode 100755
index d796c403..00000000
--- a/scripts/safarizonecenter.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SafariZoneCenterScript:
- jp EnableAutoTextBoxDrawing
-
-SafariZoneCenterTextPointers:
- dw PickUpItemText
- dw SafariZoneCenterText2
- dw SafariZoneCenterText3
-
-SafariZoneCenterText2:
- TX_FAR _SafariZoneCenterText2
- db "@"
-
-SafariZoneCenterText3:
- TX_FAR _SafariZoneCenterText3
- db "@"
diff --git a/scripts/safarizoneeast.asm b/scripts/safarizoneeast.asm
deleted file mode 100755
index 25d0ee30..00000000
--- a/scripts/safarizoneeast.asm
+++ /dev/null
@@ -1,23 +0,0 @@
-SafariZoneEastScript:
- jp EnableAutoTextBoxDrawing
-
-SafariZoneEastTextPointers:
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw SafariZoneEastText5
- dw SafariZoneEastText6
- dw SafariZoneEastText7
-
-SafariZoneEastText5:
- TX_FAR _SafariZoneEastText5
- db "@"
-
-SafariZoneEastText6:
- TX_FAR _SafariZoneEastText6
- db "@"
-
-SafariZoneEastText7:
- TX_FAR _SafariZoneEastText7
- db "@"
diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm
deleted file mode 100755
index 063a6d0b..00000000
--- a/scripts/safarizoneentrance.asm
+++ /dev/null
@@ -1,201 +0,0 @@
-SafariZoneEntranceScript:
- call EnableAutoTextBoxDrawing
- ld hl, SafariZoneEntranceScriptPointers
- ld a, [wSafariZoneEntranceCurScript]
- call JumpTable
- ret
-
-SafariZoneEntranceScriptPointers:
- dw .SafariZoneEntranceScript0
- dw .SafariZoneEntranceScript1
- dw .SafariZoneEntranceScript2
- dw .SafariZoneEntranceScript3
- dw .SafariZoneEntranceScript4
- dw .SafariZoneEntranceScript5
- dw .SafariZoneEntranceScript6
-
-.SafariZoneEntranceScript0
- ld hl, .CoordsData_75221
- call ArePlayerCoordsInArray
- ret nc
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $ff
- ld [wJoyIgnore], a
- xor a
- ld [hJoyHeld], a
- ld a, SPRITE_FACING_RIGHT
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, [wCoordIndex]
- cp $1
- jr z, .asm_7520f
- ld a, $2
- ld [wSafariZoneEntranceCurScript], a
- ret
-.asm_7520f
- ld a, D_RIGHT
- ld c, $1
- call SafariZoneEntranceAutoWalk
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $1
- ld [wSafariZoneEntranceCurScript], a
- ret
-
-.CoordsData_75221:
- db $02, $03
- db $02, $04
- db $FF
-
-.SafariZoneEntranceScript1
- call SafariZoneEntranceScript_752b4
- ret nz
-.SafariZoneEntranceScript2
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- call UpdateSprites
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $ff
- ld [wJoyIgnore], a
- ret
-
-.SafariZoneEntranceScript3
- call SafariZoneEntranceScript_752b4
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, $5
- ld [wSafariZoneEntranceCurScript], a
- ret
-
-.SafariZoneEntranceScript5
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- CheckAndResetEvent EVENT_SAFARI_GAME_OVER
- jr z, .asm_7527f
- ResetEventReuseHL EVENT_IN_SAFARI_ZONE
- call UpdateSprites
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wNumSafariBalls], a
- ld [wSafariSteps], a
- ld [wSafariSteps], a ; ?????
- ld a, D_DOWN
- ld c, $3
- call SafariZoneEntranceAutoWalk
- ld a, $4
- ld [wSafariZoneEntranceCurScript], a
- jr .asm_75286
-.asm_7527f
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.asm_75286
- ret
-
-.SafariZoneEntranceScript4
- call SafariZoneEntranceScript_752b4
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wSafariZoneEntranceCurScript], a
- ret
-
-.SafariZoneEntranceScript6
- call SafariZoneEntranceScript_752b4
- ret nz
- call Delay3
- ld a, [wcf0d]
- ld [wSafariZoneEntranceCurScript], a
- ret
-
-SafariZoneEntranceAutoWalk:
- push af
- ld b, 0
- ld a, c
- ld [wSimulatedJoypadStatesIndex], a
- ld hl, wSimulatedJoypadStatesEnd
- pop af
- call FillMemory
- jp StartSimulatingJoypadStates
-
-SafariZoneEntranceScript_752b4:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret
-
-SafariZoneEntranceTextPointers:
- dw .SafariZoneEntranceText1
- dw .SafariZoneEntranceText2
- dw .SafariZoneEntranceText1
- dw .SafariZoneEntranceText4
- dw .SafariZoneEntranceText5
- dw .SafariZoneEntranceText6
-
-.SafariZoneEntranceText1
- TX_FAR _SafariZoneEntranceText1
- db "@"
-
-.SafariZoneEntranceText4
- TX_ASM
- callab Func_f1f77
- jp TextScriptEnd
-
-.SafariZoneEntranceText5
- TX_FAR SafariZoneEntranceText_9e814
- TX_ASM
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_7539c
- ld hl, .SafariZoneEntranceText_753bb
- call PrintText
- xor a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, D_DOWN
- ld c, $3
- call SafariZoneEntranceAutoWalk
- ResetEvents EVENT_SAFARI_GAME_OVER, EVENT_IN_SAFARI_ZONE
- ld a, $0
- ld [wcf0d], a
- jr .asm_753b3
-.asm_7539c
- ld hl, .SafariZoneEntranceText_753c0
- call PrintText
- ld a, SPRITE_FACING_UP
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, D_UP
- ld c, $1
- call SafariZoneEntranceAutoWalk
- ld a, $5
- ld [wcf0d], a
-.asm_753b3
- ld a, $6
- ld [wSafariZoneEntranceCurScript], a
- jp TextScriptEnd
-
-.SafariZoneEntranceText_753bb
- TX_FAR _SafariZoneEntranceText_753bb
- db "@"
-
-.SafariZoneEntranceText_753c0
- TX_FAR _SafariZoneEntranceText_753c0
- db "@"
-
-.SafariZoneEntranceText6
- TX_FAR _SafariZoneEntranceText_753c5
- db "@"
-
-.SafariZoneEntranceText2
- TX_ASM
- callab Func_f203e
- jp TextScriptEnd
diff --git a/scripts/safarizoneentrance2.asm b/scripts/safarizoneentrance2.asm
deleted file mode 100755
index 4a6c23e6..00000000
--- a/scripts/safarizoneentrance2.asm
+++ /dev/null
@@ -1,251 +0,0 @@
-Func_f1f77:
- ld hl, .WelcomeText
- call PrintText
- ld a, MONEY_BOX
- ld [wTextBoxID], a
- call DisplayTextBoxID
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jp nz, .declined
- ld hl, wPlayerMoney
- ld a, [hli]
- or [hl]
- inc hl
- or [hl]
- jr nz, .has_positive_balance
- call SafariZoneEntranceGetLowCostAdmissionText
- jr c, .deny_entry
- jr .poor_mans_discount
-
-.has_positive_balance
- xor a
- ld [hMoney], a
- ld a, $5
- ld [hMoney + 1], a
- ld a, $0
- ld [hMoney + 2], a
- call HasEnoughMoney
- jr nc, .has_enough_money
- ld hl, .NotEnoughMoneyText
- call PrintText
- call SafariZoneEntranceCalculateLowCostAdmission
- jr c, .deny_entry
- jr .poor_mans_discount
-
-.has_enough_money
- xor a
- ld [wPriceTemp + 0], a
- ld a, $5
- ld [wPriceTemp + 1], a
- ld a, $0
- ld [wPriceTemp + 2], a
- ld hl, wTrainerInfoTextBoxNextRowOffset
- ld de, wPlayerMoney + 2
- ld c, 3
- predef SubBCDPredef
- ld a, SFX_PURCHASE
- call PlaySoundWaitForCurrent
- call WaitForSoundToFinish
- ld a, MONEY_BOX
- ld [wTextBoxID], a
- call DisplayTextBoxID
- ld hl, .MakePaymentText
- call PrintText
- ld a, 30
- ld hl, 502
-.poor_mans_discount
- ld [wNumSafariBalls], a
- ld a, h
- ld [wSafariSteps], a
- ld a, l
- ld [wSafariSteps + 1], a
- ld a, D_UP
- ld c, 3
- call SafariZoneEntranceStartSimulatingJoypadStates
- SetEvent EVENT_IN_SAFARI_ZONE
- ResetEventReuseHL EVENT_SAFARI_GAME_OVER
- ld a, $3
- ld [wSafariZoneEntranceCurScript], a
- jr .asm_f2024
-.declined:
- ld hl, .PleaseComeAgainText
- call PrintText
-.deny_entry
- ld a, D_DOWN
- ld c, 1
- call SafariZoneEntranceStartSimulatingJoypadStates
- ld a, $4
- ld [wSafariZoneEntranceCurScript], a
-.asm_f2024
- ret
-
-.WelcomeText
- TX_FAR SafariZoneEntranceText_9e6e4
- db "@"
-
-.MakePaymentText
- TX_FAR SafariZoneEntranceText_9e747
- TX_SFX_ITEM
- TX_FAR _SafariZoneEntranceText_75360
- db "@"
-
-.PleaseComeAgainText
- TX_FAR _SafariZoneEntranceText_75365
- db "@"
-
-.NotEnoughMoneyText
- TX_FAR _SafariZoneEntranceText_7536a
- db "@"
-
-Func_f203e:
- ld hl, .FirstTimeQuestionText
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- ld hl, .RegularText
- jr nz, .Explanation
- ld hl, .ExplanationText
-.Explanation
- call PrintText
- ret
-
-.FirstTimeQuestionText
- TX_FAR _SafariZoneEntranceText_753e6
- db "@"
-
-.ExplanationText
- TX_FAR _SafariZoneEntranceText_753eb
- db "@"
-
-.RegularText
- TX_FAR _SafariZoneEntranceText_753f0
- db "@"
-
-SafariZoneEntranceStartSimulatingJoypadStates:
- push af
- ld b, $0
- ld a, c
- ld [wSimulatedJoypadStatesIndex], a
- ld hl, wParentMenuItem
- pop af
- call FillMemory
- jp StartSimulatingJoypadStates
-
-SafariZoneEntranceCalculateLowCostAdmission:
- ld hl, wPlayerMoney
- ld de, hMoney
- ld bc, $3
- call CopyData
- xor a
- ld [hDivideBCDDivisor], a
- ld [hDivideBCDDivisor + 1], a
- ld a, 23
- ld [hDivideBCDDivisor + 2], a
- predef DivideBCDPredef3
- ld a, [hDivideBCDQuotient + 2]
- call SafariZoneEntranceConvertBCDtoNumber
- push af
- ld hl, wPlayerMoney
- xor a
- ld bc, $3
- call FillMemory
- ld hl, SafariZoneEntranceText_f20c4
- call PrintText_NoCreatingTextBox
- ld a, MONEY_BOX
- ld [wTextBoxID], a
- call DisplayTextBoxID
- ld hl, SafariZoneEntranceText_f20c9
- call PrintText
- pop af
- inc a
- jr z, .max_balls
- cp 29
- jr c, .load_balls
-.max_balls
- ld a, 29
-.load_balls
- ld hl, 502
- and a
- ret
-
-SafariZoneEntranceText_f20c4:
- TX_FAR _SafariZoneLowCostText1
- db "@"
-
-SafariZoneEntranceText_f20c9:
- TX_FAR _SafariZoneLowCostText2
- db "@"
-
-SafariZoneEntranceGetLowCostAdmissionText:
- ld hl, wSafariSteps
- ld a, [hl]
- push af
- inc [hl]
- ld e, a
- ld d, $0
- ld hl, Pointers_f2100
- add hl, de
- add hl, de
- ld a, [hli]
- ld h, [hl]
- ld l, a
- call PrintText
- pop af
- cp $3
- jr z, .give_one_ball
- scf
- ret
-
-.give_one_ball
- ld hl, SafariZoneEntranceText_f20f6
- call PrintText_NoCreatingTextBox
- ld a, $1
- ld hl, 502
- and a
- ret
-
-SafariZoneEntranceText_f20f6:
- TX_FAR _SafariZoneLowCostText3
- TX_SFX_ITEM
- TX_FAR _SafariZoneLowCostText4
- db "@"
-
-Pointers_f2100:
- dw SafariZoneEntranceText_f210a
- dw SafariZoneEntranceText_f210f
- dw SafariZoneEntranceText_f2114
- dw SafariZoneEntranceText_f2119
- dw SafariZoneEntranceText_f2119
-
-SafariZoneEntranceText_f210a:
- TX_FAR _SafariZoneLowCostText5
- db "@"
-
-SafariZoneEntranceText_f210f:
- TX_FAR _SafariZoneLowCostText6
- db "@"
-
-SafariZoneEntranceText_f2114:
- TX_FAR _SafariZoneLowCostText7
- db "@"
-
-SafariZoneEntranceText_f2119:
- TX_FAR _SafariZoneLowCostText8
- db "@"
-
-SafariZoneEntranceConvertBCDtoNumber:
- push hl
- ld c, a
- and $f
- ld l, a
- ld h, $0
- ld a, c
- and $f0
- swap a
- ld bc, 10
- call AddNTimes
- ld a, l
- pop hl
- ret
diff --git a/scripts/safarizonenorth.asm b/scripts/safarizonenorth.asm
deleted file mode 100755
index b870c99e..00000000
--- a/scripts/safarizonenorth.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-SafariZoneNorthScript:
- jp EnableAutoTextBoxDrawing
-
-SafariZoneNorthTextPointers:
- dw PickUpItemText
- dw PickUpItemText
- dw SafariZoneNorthText3
- dw SafariZoneNorthText4
- dw SafariZoneNorthText5
- dw SafariZoneNorthText6
- dw SafariZoneNorthText7
-
-SafariZoneNorthText3:
- TX_FAR _SafariZoneNorthText3
- db "@"
-
-SafariZoneNorthText4:
- TX_FAR _SafariZoneNorthText4
- db "@"
-
-SafariZoneNorthText5:
- TX_FAR _SafariZoneNorthText5
- db "@"
-
-SafariZoneNorthText6:
- TX_FAR _SafariZoneNorthText6
- db "@"
-
-SafariZoneNorthText7:
- TX_FAR _SafariZoneNorthText7
- db "@"
diff --git a/scripts/safarizoneresthouse1.asm b/scripts/safarizoneresthouse1.asm
deleted file mode 100755
index 1d43890d..00000000
--- a/scripts/safarizoneresthouse1.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-SafariZoneRestHouse1Script:
- jp EnableAutoTextBoxDrawing
-
-SafariZoneRestHouse1TextPointers:
- dw SafariZoneRestHouse1Text1
- dw SafariZoneRestHouse1Text2
-
-SafariZoneRestHouse1Text1:
- TX_FAR _SafariZoneRestHouse1Text1
- db "@"
-
-SafariZoneRestHouse1Text2:
- TX_FAR _SafariZoneRestHouse1Text2
- db "@"
diff --git a/scripts/safarizoneresthouse2.asm b/scripts/safarizoneresthouse2.asm
deleted file mode 100755
index 4cd512f2..00000000
--- a/scripts/safarizoneresthouse2.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-SafariZoneRestHouse2Script:
- call EnableAutoTextBoxDrawing
- ret
-
-SafariZoneRestHouse2TextPointers:
- dw SafariZoneRestHouse2Text1
- dw SafariZoneRestHouse2Text2
- dw SafariZoneRestHouse2Text3
-
-SafariZoneRestHouse2Text1:
- TX_FAR _SafariZoneRestHouse2Text1
- db "@"
-
-SafariZoneRestHouse2Text2:
- TX_FAR _SafariZoneRestHouse2Text2
- db "@"
-
-SafariZoneRestHouse2Text3:
- TX_FAR _SafariZoneRestHouse2Text3
- db "@"
diff --git a/scripts/safarizoneresthouse3.asm b/scripts/safarizoneresthouse3.asm
deleted file mode 100755
index 18c4770f..00000000
--- a/scripts/safarizoneresthouse3.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-SafariZoneRestHouse3Script:
- call EnableAutoTextBoxDrawing
- ret
-
-SafariZoneRestHouse3TextPointers:
- dw SafariZoneRestHouse3Text1
- dw SafariZoneRestHouse3Text2
- dw SafariZoneRestHouse3Text3
-
-SafariZoneRestHouse3Text1:
- TX_FAR _SafariZoneRestHouse3Text1
- db "@"
-
-SafariZoneRestHouse3Text2:
- TX_FAR _SafariZoneRestHouse3Text2
- db "@"
-
-SafariZoneRestHouse3Text3:
- TX_FAR _SafariZoneRestHouse3Text3
- db "@"
diff --git a/scripts/safarizoneresthouse4.asm b/scripts/safarizoneresthouse4.asm
deleted file mode 100755
index 3ff3fa48..00000000
--- a/scripts/safarizoneresthouse4.asm
+++ /dev/null
@@ -1,20 +0,0 @@
-SafariZoneRestHouse4Script:
- call EnableAutoTextBoxDrawing
- ret
-
-SafariZoneRestHouse4TextPointers:
- dw SafariZoneRestHouse4Text1
- dw SafariZoneRestHouse4Text2
- dw SafariZoneRestHouse4Text3
-
-SafariZoneRestHouse4Text1:
- TX_FAR _SafariZoneRestHouse4Text1
- db "@"
-
-SafariZoneRestHouse4Text2:
- TX_FAR _SafariZoneRestHouse4Text2
- db "@"
-
-SafariZoneRestHouse4Text3:
- TX_FAR _SafariZoneRestHouse4Text3
- db "@"
diff --git a/scripts/safarizonesecrethouse.asm b/scripts/safarizonesecrethouse.asm
deleted file mode 100755
index 37013b3b..00000000
--- a/scripts/safarizonesecrethouse.asm
+++ /dev/null
@@ -1,44 +0,0 @@
-SafariZoneSecretHouseScript:
- jp EnableAutoTextBoxDrawing
-
-SafariZoneSecretHouseTextPointers:
- dw SafariZoneSecretHouseText1
-
-SafariZoneSecretHouseText1:
- TX_ASM
- CheckEvent EVENT_GOT_HM03
- jr nz, .asm_20a9b
- ld hl, SafariZoneSecretHouseText_4a350
- call PrintText
- lb bc, HM_03, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedHM03Text
- call PrintText
- SetEvent EVENT_GOT_HM03
- jr .asm_8f1fc
-.BagFull
- ld hl, HM03NoRoomText
- call PrintText
- jr .asm_8f1fc
-.asm_20a9b
- ld hl, HM03ExplanationText
- call PrintText
-.asm_8f1fc
- jp TextScriptEnd
-
-SafariZoneSecretHouseText_4a350:
- TX_FAR _SecretHouseText_4a350
- db "@"
-
-ReceivedHM03Text:
- TX_FAR _ReceivedHM03Text
- db $0B, "@"
-
-HM03ExplanationText:
- TX_FAR _HM03ExplanationText
- db "@"
-
-HM03NoRoomText:
- TX_FAR _HM03NoRoomText
- db "@"
diff --git a/scripts/safarizonewest.asm b/scripts/safarizonewest.asm
deleted file mode 100755
index 81190c4c..00000000
--- a/scripts/safarizonewest.asm
+++ /dev/null
@@ -1,28 +0,0 @@
-SafariZoneWestScript:
- jp EnableAutoTextBoxDrawing
-
-SafariZoneWestTextPointers:
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw SafariZoneWestText5
- dw SafariZoneWestText6
- dw SafariZoneWestText7
- dw SafariZoneWestText8
-
-SafariZoneWestText5:
- TX_FAR _SafariZoneWestText5
- db "@"
-
-SafariZoneWestText6:
- TX_FAR _SafariZoneWestText6
- db "@"
-
-SafariZoneWestText7:
- TX_FAR _SafariZoneWestText7
- db "@"
-
-SafariZoneWestText8:
- TX_FAR _SafariZoneWestText8
- db "@"
diff --git a/scripts/saffroncity.asm b/scripts/saffroncity.asm
deleted file mode 100755
index 4653f150..00000000
--- a/scripts/saffroncity.asm
+++ /dev/null
@@ -1,121 +0,0 @@
-SaffronCityScript:
- jp EnableAutoTextBoxDrawing
-
-SaffronCityTextPointers:
- dw SaffronCityText1
- dw SaffronCityText2
- dw SaffronCityText3
- dw SaffronCityText4
- dw SaffronCityText5
- dw SaffronCityText6
- dw SaffronCityText7
- dw SaffronCityText8
- dw SaffronCityText9
- dw SaffronCityText10
- dw SaffronCityText11
- dw SaffronCityText12
- dw SaffronCityText13
- dw SaffronCityText14
- dw SaffronCityText15
- dw SaffronCityText16
- dw SaffronCityText17
- dw SaffronCityText18
- dw MartSignText
- dw SaffronCityText20
- dw SaffronCityText21
- dw SaffronCityText22
- dw PokeCenterSignText
- dw SaffronCityText24
- dw SaffronCityText25
-
-SaffronCityText1:
- TX_FAR _SaffronCityText1
- db "@"
-
-SaffronCityText2:
- TX_FAR _SaffronCityText2
- db "@"
-
-SaffronCityText3:
- TX_FAR _SaffronCityText3
- db "@"
-
-SaffronCityText4:
- TX_FAR _SaffronCityText4
- db "@"
-
-SaffronCityText5:
- TX_FAR _SaffronCityText5
- db "@"
-
-SaffronCityText6:
- TX_FAR _SaffronCityText6
- db "@"
-
-SaffronCityText7:
- TX_FAR _SaffronCityText7
- db "@"
-
-SaffronCityText8:
- TX_FAR _SaffronCityText8
- db "@"
-
-SaffronCityText9:
- TX_FAR _SaffronCityText9
- db "@"
-
-SaffronCityText10:
- TX_FAR _SaffronCityText10
- db "@"
-
-SaffronCityText11:
- TX_FAR _SaffronCityText11
- db "@"
-
-SaffronCityText12:
- TX_FAR _SaffronCityText12
- db $15, "@" ; play PIDGEOT cry from TextCommandSounds
-
-SaffronCityText13:
- TX_FAR _SaffronCityText13
- db "@"
-
-SaffronCityText14:
- TX_FAR _SaffronCityText14
- db "@"
-
-SaffronCityText15:
- TX_FAR _SaffronCityText15
- db "@"
-
-SaffronCityText16:
- TX_FAR _SaffronCityText16
- db "@"
-
-SaffronCityText17:
- TX_FAR _SaffronCityText17
- db "@"
-
-SaffronCityText18:
- TX_FAR _SaffronCityText18
- db "@"
-
-SaffronCityText20:
- TX_FAR _SaffronCityText20
- db "@"
-
-SaffronCityText21:
- TX_FAR _SaffronCityText21
- db "@"
-
-SaffronCityText22:
- TX_FAR _SaffronCityText22
- db "@"
-
-SaffronCityText24:
- TX_FAR _SaffronCityText24
- db "@"
-
-SaffronCityText25:
- TX_FAR _SaffronCityText25
- db "@"
diff --git a/scripts/saffrongym.asm b/scripts/saffrongym.asm
deleted file mode 100755
index f82b5ccd..00000000
--- a/scripts/saffrongym.asm
+++ /dev/null
@@ -1,359 +0,0 @@
-SaffronGymScript:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- call nz, .extra
- call EnableAutoTextBoxDrawing
- ld hl, SaffronGymTrainerHeader0
- ld de, SaffronGymScriptPointers
- ld a, [wSaffronGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wSaffronGymCurScript], a
- ret
-
-.extra
- ld hl, Gym6CityName
- ld de, Gym6LeaderName
- jp LoadGymLeaderAndCityName
-
-Gym6CityName:
- db "SAFFRON CITY@"
-
-Gym6LeaderName:
- db "SABRINA@"
-
-SaffronGymText_5d048:
- xor a
- ld [wJoyIgnore], a
- ld [wSaffronGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-SaffronGymScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw SaffronGymScript3
-
-SaffronGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, SaffronGymText_5d048
- ld a, $f0
- ld [wJoyIgnore], a
-
-SaffronGymText_5d068:
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_SABRINA
- lb bc, TM_46, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $b
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM46
- jr .gymVictory
-.BagFull
- ld a, $c
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 5, [hl]
- ld hl, wBeatGymFlags
- set 5, [hl]
-
- ; deactivate gym trainers
- SetEventRange EVENT_BEAT_SAFFRON_GYM_TRAINER_0, EVENT_BEAT_SAFFRON_GYM_TRAINER_6
-
- jp SaffronGymText_5d048
-
-SaffronGymTextPointers:
- dw SaffronGymText1
- dw SaffronGymText2
- dw SaffronGymText3
- dw SaffronGymText4
- dw SaffronGymText5
- dw SaffronGymText6
- dw SaffronGymText7
- dw SaffronGymText8
- dw SaffronGymText9
- dw SaffronGymText10
- dw SaffronGymText11
- dw SaffronGymText12
-
-SaffronGymTrainerHeaders:
-SaffronGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_0
- dw SaffronGymBattleText1 ; TextBeforeBattle
- dw SaffronGymAfterBattleText1 ; TextAfterBattle
- dw SaffronGymEndBattleText1 ; TextEndBattle
- dw SaffronGymEndBattleText1 ; TextEndBattle
-
-SaffronGymTrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_1
- dw SaffronGymBattleText2 ; TextBeforeBattle
- dw SaffronGymAfterBattleText2 ; TextAfterBattle
- dw SaffronGymEndBattleText2 ; TextEndBattle
- dw SaffronGymEndBattleText2 ; TextEndBattle
-
-SaffronGymTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_2
- dw SaffronGymBattleText3 ; TextBeforeBattle
- dw SaffronGymAfterBattleText3 ; TextAfterBattle
- dw SaffronGymEndBattleText3 ; TextEndBattle
- dw SaffronGymEndBattleText3 ; TextEndBattle
-
-SaffronGymTrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_3
- dw SaffronGymBattleText4 ; TextBeforeBattle
- dw SaffronGymAfterBattleText4 ; TextAfterBattle
- dw SaffronGymEndBattleText4 ; TextEndBattle
- dw SaffronGymEndBattleText4 ; TextEndBattle
-
-SaffronGymTrainerHeader4:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_4
- dw SaffronGymBattleText5 ; TextBeforeBattle
- dw SaffronGymAfterBattleText5 ; TextAfterBattle
- dw SaffronGymEndBattleText5 ; TextEndBattle
- dw SaffronGymEndBattleText5 ; TextEndBattle
-
-SaffronGymTrainerHeader5:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_5
- dw SaffronGymBattleText6 ; TextBeforeBattle
- dw SaffronGymAfterBattleText6 ; TextAfterBattle
- dw SaffronGymEndBattleText6 ; TextEndBattle
- dw SaffronGymEndBattleText6 ; TextEndBattle
-
-SaffronGymTrainerHeader6:
- dbEventFlagBit EVENT_BEAT_SAFFRON_GYM_TRAINER_6, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SAFFRON_GYM_TRAINER_6, 1
- dw SaffronGymBattleText7 ; TextBeforeBattle
- dw SaffronGymAfterBattleText7 ; TextAfterBattle
- dw SaffronGymEndBattleText7 ; TextEndBattle
- dw SaffronGymEndBattleText7 ; TextEndBattle
-
- db $ff
-
-SaffronGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_SABRINA
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM46
- jr nz, .afterVictory
- call z, SaffronGymText_5d068
- call DisableWaitingAfterTextDisplay
- jr .done
-.afterVictory
- ld hl, SaffronGymText_5d16e
- call PrintText
- jr .done
-.beginBattle
- ld hl, SaffronGymText_5d162
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SaffronGymText_5d167
- ld de, SaffronGymText_5d167
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $6
- ld [wGymLeaderNo], a
- ld a, $3
- ld [wSaffronGymCurScript], a
-.done
- jp TextScriptEnd
-
-SaffronGymText_5d162:
- TX_FAR _SaffronGymText_5d162
- db "@"
-
-SaffronGymText_5d167:
- TX_FAR _SaffronGymText_5d167
- db $11 ; play same sound as red giving oak parcel
- db $6 ; wait for keypress
- db "@"
-
-SaffronGymText_5d16e:
- TX_FAR _SaffronGymText_5d16e
- db "@"
-
-SaffronGymText10:
- TX_FAR _SaffronGymText_5d173
- db "@"
-
-SaffronGymText11:
- TX_FAR ReceivedTM46Text
- db $b
- TX_FAR _TM46ExplanationText
- db "@"
-
-SaffronGymText12:
- TX_FAR _TM46NoRoomText
- db "@"
-
-SaffronGymText2:
- TX_ASM
- ld hl, SaffronGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText3:
- TX_ASM
- ld hl, SaffronGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText4:
- TX_ASM
- ld hl, SaffronGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText5:
- TX_ASM
- ld hl, SaffronGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText6:
- TX_ASM
- ld hl, SaffronGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText7:
- TX_ASM
- ld hl, SaffronGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText8:
- TX_ASM
- ld hl, SaffronGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-SaffronGymText9:
- TX_ASM
- CheckEvent EVENT_BEAT_SABRINA
- jr nz, .asm_5d1dd
- ld hl, SaffronGymText_5d1e6
- call PrintText
- jr .asm_5d1e3
-.asm_5d1dd
- ld hl, SaffronGymText_5d1eb
- call PrintText
-.asm_5d1e3
- jp TextScriptEnd
-
-SaffronGymText_5d1e6:
- TX_FAR _SaffronGymText_5d1e6
- db "@"
-
-SaffronGymText_5d1eb:
- TX_FAR _SaffronGymText_5d1eb
- db "@"
-
-SaffronGymBattleText1:
- TX_FAR _SaffronGymBattleText1
- db "@"
-
-SaffronGymEndBattleText1:
- TX_FAR _SaffronGymEndBattleText1
- db "@"
-
-SaffronGymAfterBattleText1:
- TX_FAR _SaffronGymAfterBattleText1
- db "@"
-
-SaffronGymBattleText2:
- TX_FAR _SaffronGymBattleText2
- db "@"
-
-SaffronGymEndBattleText2:
- TX_FAR _SaffronGymEndBattleText2
- db "@"
-
-SaffronGymAfterBattleText2:
- TX_FAR _SaffronGymAfterBattleText2
- db "@"
-
-SaffronGymBattleText3:
- TX_FAR _SaffronGymBattleText3
- db "@"
-
-SaffronGymEndBattleText3:
- TX_FAR _SaffronGymEndBattleText3
- db "@"
-
-SaffronGymAfterBattleText3:
- TX_FAR _SaffronGymAfterBattleText3
- db "@"
-
-SaffronGymBattleText4:
- TX_FAR _SaffronGymBattleText4
- db "@"
-
-SaffronGymEndBattleText4:
- TX_FAR _SaffronGymEndBattleText4
- db "@"
-
-SaffronGymAfterBattleText4:
- TX_FAR _SaffronGymAfterBattleText4
- db "@"
-
-SaffronGymBattleText5:
- TX_FAR _SaffronGymBattleText5
- db "@"
-
-SaffronGymEndBattleText5:
- TX_FAR _SaffronGymEndBattleText5
- db "@"
-
-SaffronGymAfterBattleText5:
- TX_FAR _SaffronGymAfterBattleText5
- db "@"
-
-SaffronGymBattleText6:
- TX_FAR _SaffronGymBattleText6
- db "@"
-
-SaffronGymEndBattleText6:
- TX_FAR _SaffronGymEndBattleText6
- db "@"
-
-SaffronGymAfterBattleText6:
- TX_FAR _SaffronGymAfterBattleText6
- db "@"
-
-SaffronGymBattleText7:
- TX_FAR _SaffronGymBattleText7
- db "@"
-
-SaffronGymEndBattleText7:
- TX_FAR _SaffronGymEndBattleText7
- db "@"
-
-SaffronGymAfterBattleText7:
- TX_FAR _SaffronGymAfterBattleText7
- db "@"
diff --git a/scripts/saffronhouse1.asm b/scripts/saffronhouse1.asm
deleted file mode 100755
index 5f417978..00000000
--- a/scripts/saffronhouse1.asm
+++ /dev/null
@@ -1,27 +0,0 @@
-SaffronHouse1Script:
- jp EnableAutoTextBoxDrawing
-
-SaffronHouse1TextPointers:
- dw SaffronHouse1Text1
- dw SaffronHouse1Text2
- dw SaffronHouse1Text3
- dw SaffronHouse1Text4
-
-SaffronHouse1Text1:
- TX_FAR _SaffronHouse1Text1
- db "@"
-
-SaffronHouse1Text2:
- TX_FAR _SaffronHouse1Text2
- TX_ASM
- ld a, PIDGEY
- call PlayCry
- jp TextScriptEnd
-
-SaffronHouse1Text3:
- TX_FAR _SaffronHouse1Text3
- db "@"
-
-SaffronHouse1Text4:
- TX_FAR _SaffronHouse1Text4
- db "@"
diff --git a/scripts/saffronhouse2.asm b/scripts/saffronhouse2.asm
deleted file mode 100755
index b4f6e31c..00000000
--- a/scripts/saffronhouse2.asm
+++ /dev/null
@@ -1,44 +0,0 @@
-SaffronHouse2Script:
- jp EnableAutoTextBoxDrawing
-
-SaffronHouse2TextPointers:
- dw SaffronHouse2Text1
-
-SaffronHouse2Text1:
- TX_ASM
- CheckEvent EVENT_GOT_TM29
- jr nz, .asm_9e72b
- ld hl, TM29PreReceiveText
- call PrintText
- lb bc, TM_29, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedTM29Text
- call PrintText
- SetEvent EVENT_GOT_TM29
- jr .asm_fe4e1
-.BagFull
- ld hl, TM29NoRoomText
- call PrintText
- jr .asm_fe4e1
-.asm_9e72b
- ld hl, TM29ExplanationText
- call PrintText
-.asm_fe4e1
- jp TextScriptEnd
-
-TM29PreReceiveText:
- TX_FAR _TM29PreReceiveText
- db "@"
-
-ReceivedTM29Text:
- TX_FAR _ReceivedTM29Text
- db $0B, "@"
-
-TM29ExplanationText:
- TX_FAR _TM29ExplanationText
- db "@"
-
-TM29NoRoomText:
- TX_FAR _TM29NoRoomText
- db "@"
diff --git a/scripts/saffronmart.asm b/scripts/saffronmart.asm
deleted file mode 100755
index 8b140610..00000000
--- a/scripts/saffronmart.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SaffronMartScript:
- jp EnableAutoTextBoxDrawing
-
-SaffronMartTextPointers:
- dw SaffronCashierText
- dw SaffronMartText2
- dw SaffronMartText3
-
-SaffronMartText2:
- TX_FAR _SaffronMartText2
- db "@"
-
-SaffronMartText3:
- TX_FAR _SaffronMartText3
- db "@"
diff --git a/scripts/saffronpokecenter.asm b/scripts/saffronpokecenter.asm
deleted file mode 100755
index 46667927..00000000
--- a/scripts/saffronpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-SaffronPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-SaffronPokecenterTextPointers:
- dw SaffronHealNurseText
- dw SaffronPokecenterText2
- dw SaffronPokecenterText3
- dw SaffronTradeNurseText
- dw SaffronPokecenterText5
-
-SaffronHealNurseText:
- TX_POKECENTER_NURSE
-
-SaffronPokecenterText2:
- TX_FAR _SaffronPokecenterText2
- db "@"
-
-SaffronPokecenterText3:
- TX_FAR _SaffronPokecenterText3
- db "@"
-
-SaffronTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-SaffronPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/school.asm b/scripts/school.asm
deleted file mode 100755
index a64189e3..00000000
--- a/scripts/school.asm
+++ /dev/null
@@ -1,22 +0,0 @@
-SchoolScript:
- call EnableAutoTextBoxDrawing
- ret
-
-SchoolTextPointers:
- dw SchoolText1
- dw SchoolText2
- dw SchoolText3
-
-SchoolText1:
- TX_FAR _SchoolText1
- db "@"
-
-SchoolText2:
- TX_ASM
- callba Func_f1c0f
- jp TextScriptEnd
-
-SchoolText3:
- TX_ASM
- callba Func_f1c03
- jp TextScriptEnd
diff --git a/scripts/seafoamislands1.asm b/scripts/seafoamislands1.asm
deleted file mode 100755
index 52561fa7..00000000
--- a/scripts/seafoamislands1.asm
+++ /dev/null
@@ -1,47 +0,0 @@
-SeafoamIslands1Script:
- call EnableAutoTextBoxDrawing
- SetEvent EVENT_IN_SEAFOAM_ISLANDS
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_4483b
- ld hl, Seafoam1HolesCoords
- call CheckBoulderCoords
- ret nc
- EventFlagAddress hl, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_44819
- SetEventReuseHL EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_1
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_1
- ld [wObjectToShow], a
- jr .asm_44825
-.asm_44819
- SetEventAfterBranchReuseHL EVENT_SEAFOAM1_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM1_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_1_BOULDER_2
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_2
- ld [wObjectToShow], a
-.asm_44825
- ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-.asm_4483b
- ld a, $9f
- ld [wDungeonWarpDestinationMap], a
- ld hl, Seafoam1HolesCoords
- jp IsPlayerOnDungeonWarp
-
-Seafoam1HolesCoords:
- db $06,$11
- db $06,$18
- db $ff
-
-SeafoamIslands1TextPointers:
- dw BoulderText
- dw BoulderText
diff --git a/scripts/seafoamislands2.asm b/scripts/seafoamislands2.asm
deleted file mode 100755
index 50024bad..00000000
--- a/scripts/seafoamislands2.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-SeafoamIslands2Script:
- call EnableAutoTextBoxDrawing
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_46362
- ld hl, Seafoam2HolesCoords
- call CheckBoulderCoords
- ret nc
- EventFlagAddress hl, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_46340
- SetEventReuseHL EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_1
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_1
- ld [wObjectToShow], a
- jr .asm_4634c
-.asm_46340
- SetEventAfterBranchReuseHL EVENT_SEAFOAM2_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM2_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_2_BOULDER_2
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_2
- ld [wObjectToShow], a
-.asm_4634c
- ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-.asm_46362
- ld a, $a0
- ld [wDungeonWarpDestinationMap], a
- ld hl, Seafoam2HolesCoords
- jp IsPlayerOnDungeonWarp
-
-Seafoam2HolesCoords:
- db $06,$12
- db $06,$17
- db $ff
-
-SeafoamIslands2TextPointers:
- dw BoulderText
- dw BoulderText
diff --git a/scripts/seafoamislands3.asm b/scripts/seafoamislands3.asm
deleted file mode 100755
index 4a7848a4..00000000
--- a/scripts/seafoamislands3.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-SeafoamIslands3Script:
- call EnableAutoTextBoxDrawing
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_4649e
- ld hl, Seafoam3HolesCoords
- call CheckBoulderCoords
- ret nc
- EventFlagAddress hl, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_4647c
- SetEventReuseHL EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_1
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_3
- ld [wObjectToShow], a
- jr .asm_46488
-.asm_4647c
- SetEventAfterBranchReuseHL EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_3_BOULDER_2
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_4
- ld [wObjectToShow], a
-.asm_46488
- ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-.asm_4649e
- ld a, $a1
- ld [wDungeonWarpDestinationMap], a
- ld hl, Seafoam3HolesCoords
- jp IsPlayerOnDungeonWarp
-
-Seafoam3HolesCoords:
- db $06,$13
- db $06,$16
- db $ff
-
-SeafoamIslands3TextPointers:
- dw BoulderText
- dw BoulderText
diff --git a/scripts/seafoamislands4.asm b/scripts/seafoamislands4.asm
deleted file mode 100755
index a1e4b1d8..00000000
--- a/scripts/seafoamislands4.asm
+++ /dev/null
@@ -1,149 +0,0 @@
-SeafoamIslands4Script:
- call EnableAutoTextBoxDrawing
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jr z, .asm_465dc
- ld hl, Seafoam4HolesCoords
- call CheckBoulderCoords
- ret nc
- EventFlagAddress hl, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_465b8
- SetEventReuseHL EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_1
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_5_BOULDER_1
- ld [wObjectToShow], a
- jr .asm_465c4
-.asm_465b8
- SetEventAfterBranchReuseHL EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE
- ld a, HS_SEAFOAM_ISLANDS_4_BOULDER_2
- ld [wObjectToHide], a
- ld a, HS_SEAFOAM_ISLANDS_5_BOULDER_2
- ld [wObjectToShow], a
-.asm_465c4
- ld a, [wObjectToHide]
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, [wObjectToShow]
- ld [wMissableObjectIndex], a
- predef ShowObject
- jr .asm_465ed
-.asm_465dc
- ld a, $a2
- ld [wDungeonWarpDestinationMap], a
- ld hl, Seafoam4HolesCoords
- call IsPlayerOnDungeonWarp
- ld a, [wd732]
- bit 4, a
- ret nz
-.asm_465ed
- ld hl, SeafoamIslands4ScriptPointers
- ld a, [wSeafoamIslands4CurScript]
- jp JumpTable
-
-Seafoam4HolesCoords:
- db $10,$03
- db $10,$06
- db $ff
-
-SeafoamIslands4ScriptPointers:
- dw SeafoamIslands4Script0
- dw SeafoamIslands4Script1
- dw SeafoamIslands4Script2
- dw SeafoamIslands4Script3
-
-SeafoamIslands4Script0:
- CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
- ret z
- ld a, [wYCoord]
- cp $8
- ret nz
- ld a, [wXCoord]
- cp $f
- ret nz
- ld hl, wSimulatedJoypadStatesEnd
- ld de, RLEMovement46632
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld hl, wFlags_D733
- set 2, [hl]
- ld a, $1
- ld [wSeafoamIslands4CurScript], a
- ret
-
-RLEMovement46632:
- db D_DOWN,6
- db D_RIGHT,5
- db D_DOWN,3
- db $ff
-
-SeafoamIslands4Script1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld a, $0
- ld [wSeafoamIslands4CurScript], a
- ret
-
-SeafoamIslands4Script2:
- CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
- ret z
- ld a, [wXCoord]
- cp $12
- jr z, .asm_4665e
- cp $13
- ld a, $0
- jr nz, .asm_4667b
- ld de, RLEData_4667f
- jr .asm_46661
-.asm_4665e
- ld de, RLEData_46688
-.asm_46661
- ld hl, wSimulatedJoypadStatesEnd
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- xor a
- ld [wSpriteStateData2 + $06], a
- ld hl, wd730
- set 7, [hl]
- ld hl, wFlags_D733
- set 2, [hl]
- ld a, $3
-.asm_4667b
- ld [wSeafoamIslands4CurScript], a
- ret
-
-RLEData_4667f:
- db D_DOWN,$06
- db D_RIGHT,$02
- db D_DOWN,$04
- db D_LEFT,$01
- db $FF
-
-RLEData_46688:
- db D_DOWN,$06
- db D_RIGHT,$02
- db D_DOWN,$04
- db $FF
-
-SeafoamIslands4Script3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld a, $0
- ld [wSeafoamIslands4CurScript], a
- ret
-
-SeafoamIslands4TextPointers:
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
diff --git a/scripts/seafoamislands5.asm b/scripts/seafoamislands5.asm
deleted file mode 100755
index 478946fa..00000000
--- a/scripts/seafoamislands5.asm
+++ /dev/null
@@ -1,174 +0,0 @@
-SeafoamIslands5Script:
- call EnableAutoTextBoxDrawing
- ld a, [wSeafoamIslands5CurScript]
- ld hl, SeafoamIslands5ScriptPointers
- jp JumpTable
-
-SeafoamIslands5Script_467a5:
- xor a
- ld [wJoyIgnore], a
- ld [wSeafoamIslands5CurScript], a
- ld [wCurMapScript], a
- ret
-
-SeafoamIslands5ScriptPointers:
- dw SeafoamIslands5Script0
- dw SeafoamIslands5Script1
- dw SeafoamIslands5Script2
- dw SeafoamIslands5Script3
- dw SeafoamIslands5Script4
-
-SeafoamIslands5Script4:
- ld a, [wIsInBattle]
- cp $ff
- jr z, SeafoamIslands5Script_467a5
- call EndTrainerBattle
- ld a, $0
- ld [wSeafoamIslands5CurScript], a
- ret
-
-SeafoamIslands5Script0:
- CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
- ret z
- ld hl, .Coords
- call ArePlayerCoordsInArray
- ret nc
- ld a, [wCoordIndex]
- cp $3
- jr nc, .asm_467e6
- ld a, NPC_MOVEMENT_UP
- ld [wSimulatedJoypadStatesEnd + 1], a
- ld a, 2
- jr .asm_467e8
-.asm_467e6
- ld a, 1
-.asm_467e8
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- call StartSimulatingJoypadStates
- ld hl, wFlags_D733
- res 2, [hl]
- ld a, $1
- ld [wSeafoamIslands5CurScript], a
- ret
-
-.Coords
- db $11,$14
- db $11,$15
- db $10,$14
- db $10,$15
- db $FF
-
-SeafoamIslands5Script1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, $0
- ld [wSeafoamIslands5CurScript], a
- ret
-
-SeafoamIslands5Script2:
- CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
- ld a, $0
- jr z, .asm_46849
- ld hl, .Coords
- call ArePlayerCoordsInArray
- ld a, $0
- jr nc, .asm_46849
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_46837
- ld de, RLEMovementData_46859
- jr .asm_4683a
-.asm_46837
- ld de, RLEMovementData_46852
-.asm_4683a
- ld hl, wSimulatedJoypadStatesEnd
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
-.asm_46849
- ld [wSeafoamIslands5CurScript], a
- ret
-
-.Coords
- db $0E,$04
- db $0E,$05
- db $FF
-
-RLEMovementData_46852:
- db D_UP,$03
- db D_RIGHT,$02
- db D_UP,$01
- db $FF
-
-RLEMovementData_46859:
- db D_UP,$03
- db D_RIGHT,$03
- db D_UP,$01
- db $FF
-
-SeafoamIslands5Script3:
- ld a, [wSimulatedJoypadStatesIndex]
- ld b, a
- cp $1
- call z, SeaFoamIslands5Script_46872
- ld a, b
- and a
- ret nz
- ld a, $0
- ld [wSeafoamIslands5CurScript], a
- ret
-
-SeaFoamIslands5Script_46872:
- xor a
- ld [wWalkBikeSurfState], a
- ld [wWalkBikeSurfStateCopy], a
- jp ForceBikeOrSurf
-
-SeafoamIslands5TextPointers:
- dw BoulderText
- dw BoulderText
- dw ArticunoText
- dw SeafoamIslands5Text4
- dw SeafoamIslands5Text5
-
-ArticunoTrainerHeader:
- dbEventFlagBit EVENT_BEAT_ARTICUNO
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_ARTICUNO
- dw ArticunoBattleText ; TextBeforeBattle
- dw ArticunoBattleText ; TextAfterBattle
- dw ArticunoBattleText ; TextEndBattle
- dw ArticunoBattleText ; TextEndBattle
-
- db $ff
-
-ArticunoText:
- TX_ASM
- ld hl, ArticunoTrainerHeader
- call TalkToTrainer
- ld a, $4
- ld [wSeafoamIslands5CurScript], a
- jp TextScriptEnd
-
-ArticunoBattleText:
- TX_FAR _ArticunoBattleText
- TX_ASM
- ld a, ARTICUNO
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-SeafoamIslands5Text4:
- TX_FAR _SeafoamIslands5Text4
- db "@"
-
-SeafoamIslands5Text5:
- TX_FAR _SeafoamIslands5Text5
- db "@"
diff --git a/scripts/silphco1.asm b/scripts/silphco1.asm
deleted file mode 100755
index c0cb169b..00000000
--- a/scripts/silphco1.asm
+++ /dev/null
@@ -1,16 +0,0 @@
-SilphCo1Script:
- call EnableAutoTextBoxDrawing
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- ret z
- CheckAndSetEvent EVENT_SILPH_CO_RECEPTIONIST_AT_DESK
- ret nz
- ld a, HS_SILPH_CO_1F_RECEPTIONIST
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-
-SilphCo1TextPointers:
- dw SilphCo1Text1
-
-SilphCo1Text1:
- TX_FAR _SilphCo1Text1
- db "@"
diff --git a/scripts/silphco10.asm b/scripts/silphco10.asm
deleted file mode 100755
index 6b35a05a..00000000
--- a/scripts/silphco10.asm
+++ /dev/null
@@ -1,123 +0,0 @@
-SilphCo10Script:
- call SilphCo10Script_5a14f
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo10TrainerHeaders
- ld de, SilphCo10ScriptPointers
- ld a, [wSilphCo10CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo10CurScript], a
- ret
-
-SilphCo10Script_5a14f:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo10GateCoords
- call SilphCo2Script_59d43
- call SilphCo10Text_5a176
- CheckEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR
- ret nz
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 4, 5
- predef_jump ReplaceTileBlock
-
-SilphCo10GateCoords:
- db $04,$05
- db $FF
-
-SilphCo10Text_5a176:
- ld a, [$ffe0]
- and a
- ret z
- SetEvent EVENT_SILPH_CO_10_UNLOCKED_DOOR
- ret
-
-SilphCo10ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo10TextPointers:
- dw SilphCo10Text1
- dw SilphCo10Text2
- dw SilphCo10Text3
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-SilphCo10TrainerHeaders:
-SilphCo10TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_10F_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_10F_TRAINER_0
- dw SilphCo10BattleText1 ; TextBeforeBattle
- dw SilphCo10AfterBattleText1 ; TextAfterBattle
- dw SilphCo10EndBattleText1 ; TextEndBattle
- dw SilphCo10EndBattleText1 ; TextEndBattle
-
-SilphCo10TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_10F_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_10F_TRAINER_1
- dw SilphCo10BattleText2 ; TextBeforeBattle
- dw SilphCo10AfterBattleText2 ; TextAfterBattle
- dw SilphCo10EndBattleText2 ; TextEndBattle
- dw SilphCo10EndBattleText2 ; TextEndBattle
-
- db $ff
-
-SilphCo10Text1:
- TX_ASM
- ld hl, SilphCo10TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo10Text2:
- TX_ASM
- ld hl, SilphCo10TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo10Text3:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- ld hl, SilphCo10Text_5a1d8
- jr nz, .asm_cf85f
- ld hl, SilphCo10Text_5a1d3
-.asm_cf85f
- call PrintText
- jp TextScriptEnd
-
-SilphCo10Text_5a1d3:
- TX_FAR _SilphCo10Text_5a1d3
- db "@"
-
-SilphCo10Text_5a1d8:
- TX_FAR _SilphCo10Text_5a1d8
- db "@"
-
-SilphCo10BattleText1:
- TX_FAR _SilphCo10BattleText1
- db "@"
-
-SilphCo10EndBattleText1:
- TX_FAR _SilphCo10EndBattleText1
- db "@"
-
-SilphCo10AfterBattleText1:
- TX_FAR _SilphCo10AfterBattleText1
- db "@"
-
-SilphCo10BattleText2:
- TX_FAR _SilphCo10BattleText2
- db "@"
-
-SilphCo10EndBattleText2:
- TX_FAR _SilphCo10EndBattleText2
- db "@"
-
-SilphCo10AfterBattleText2:
- TX_FAR _SilphCo10AfterBattleText2
- db "@"
diff --git a/scripts/silphco11.asm b/scripts/silphco11.asm
deleted file mode 100755
index cb922453..00000000
--- a/scripts/silphco11.asm
+++ /dev/null
@@ -1,596 +0,0 @@
-SilphCo11Script:
- call SilphCo11Script_62127
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo11TrainerHeaders
- ld de, SilphCo11ScriptPointers
- ld a, [wSilphCo11CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo11CurScript], a
- ret
-
-SilphCo11Script_62127:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo11GateCoords
- call SilphCo11Script_6214f
- call SilphCo11Script_6217b
- CheckEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR
- ret nz
- ld a, $20
- ld [wNewTileBlockID], a
- lb bc, 6, 3
- predef ReplaceTileBlock
- ret
-
-SilphCo11GateCoords:
- db $06,$03
- db $FF
-
-SilphCo11Script_6214f:
- push hl
- ld hl, wCardKeyDoorY
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_62143
- ld a, [hli]
- cp $ff
- jr z, .asm_6215f
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_62154
- inc hl
- jr .asm_62143
-.asm_62154
- ld a, [hli]
- cp c
- jr nz, .asm_62143
- ld hl, wCardKeyDoorY
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_6215f
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo11Script_6217b:
- ld a, [$ffe0]
- and a
- ret z
- SetEvent EVENT_SILPH_CO_11_UNLOCKED_DOOR
- ret
-
-SilphCo11Script_62185:
- xor a
- ld [wJoyIgnore], a
-SilphCo11Script_62189:
- ld [wSilphCo11CurScript], a
- ld [wCurMapScript], a
- ret
-
-SilphCo11ScriptPointers:
- dw SilphCo11Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw SilphCo11Script3
- dw SilphCo11Script4
- dw SilphCo11Script5
- dw SilphCo11Script6
- dw SilphCo11Script7
- dw SilphCo11Script8
- dw SilphCo11Script9
- dw SilphCo11Script10
- dw SilphCo11Script11
- dw SilphCo11Script12
- dw SilphCo11Script13
- dw SilphCo11Script14
-
-SilphCo11Script0:
- CheckEvent EVENT_BEAT_SILPH_CO_11F_TRAINER_0
- call z, SilphCo11Script_6229c
- CheckEvent EVENT_782
- ret nz
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- call z, SilphCo11Script_621c5
- ret
-
-SilphCo11Script_621c5:
- ld hl, CoordsData_62211
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- ld a, [wCoordIndex]
- ld [wcf0d], a
- xor a
- ld [hJoyHeld], a
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $3
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld de, MovementData_62216
- call MoveSprite
- ld a, $4
- call SilphCo11Script_62189
- ret
-
-CoordsData_62211:
- db $0D,$06
- db $0C,$07
- db $FF
-
-MovementData_62216:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-SilphCo11Script_621ff:
- ld [wPlayerMovingDirection], a
- ld a, b
- ld [wSpriteStateData1 + 3 * $10 + 9], a
- ld a, $2
- ld [wSpriteStateData1 + 3 * $10 + 1], a
- ret
-
-SilphCo11Script3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, SilphCo11Script_62185
- ld a, [wcf0d]
- cp $1
- jr z, .asm_6223c
- ld a, PLAYER_DIR_LEFT
- ld b, SPRITE_FACING_RIGHT
- jr .asm_62240
-.asm_6223c
- ld a, PLAYER_DIR_UP
- ld b, SPRITE_FACING_DOWN
-.asm_62240
- call SilphCo11Script_621ff
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $7
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call GBFadeOutToBlack
- callba Func_f25a0
- call UpdateSprites
- call Delay3
- call GBFadeInFromBlack
- SetEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- xor a
- ld [wJoyIgnore], a
- jp SilphCo11Script_62189
-
-SilphCo11Script4:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $3
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld a, [wcf0d]
- cp $1
- jr z, .asm_62284
- ld a, PLAYER_DIR_LEFT
- ld b, SPRITE_FACING_RIGHT
- jr .asm_62288
-.asm_62284
- ld a, PLAYER_DIR_UP
- ld b, SPRITE_FACING_DOWN
-.asm_62288
- call SilphCo11Script_621ff
- call Delay3
- xor a
- ld [wJoyIgnore], a
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SilphCo10Text_62528
- ld de, SilphCo10Text_62528
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- jp SilphCo11Script_62189
-
-SilphCo11Script_6229c:
- ld a, [wYCoord]
- cp $3
- ret nz
- ld a, [wXCoord]
- cp $4
- ret nc
- ResetEvents EVENT_780, EVENT_781
- ld a, [wXCoord]
- cp $3
- jr z, .asm_622c3
- SetEventReuseHL EVENT_780
- ld a, [wXCoord]
- cp $2
- jr z, .asm_622c3
- ResetEventReuseHL EVENT_780
- SetEventReuseHL EVENT_781
-.asm_622c3
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- xor a
- ld [hJoyHeld], a
- ld a, $fc
- ld [wJoyIgnore], a
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $ff
- ld [wJoyIgnore], a
- SetEvent EVENT_782
- ld a, $5
- call SilphCo11Script_62189
- ret
-
-SilphCo11MovementData_622f5:
- db $5
- db $5
- db $5
- db $5
- db $5
- db $ff
-
-SilphCo11MovementData_622fb:
- db $5
- db $5
- db $5
- db $5
- db $ff
-
-SilphCo11MovementData_62300:
- db $5
- db $5
- db $5
- db $5
- db $ff
-
-SilphCo11MovementData_62305:
- db $5
- db $5
- db $5
- db $5
- db $5
- db $ff
-
-SilphCo11MovementData_6230b:
- db $5
- db $5
- db $6
- db $5
- db $5
- db $ff
-
-SilphCo11MovementData_62311:
- db $5
- db $5
- db $5
- db $6
- db $5
- db $5
- db $ff
-
-SilphCo11Script5:
- ld de, SilphCo11MovementData_622f5
- CheckEitherEventSet EVENT_780, EVENT_781
- and a
- jr z, .asm_6232d
- ld de, SilphCo11MovementData_62300
- cp $1
- jr z, .asm_6232d
- ld de, SilphCo11MovementData_6230b
-.asm_6232d
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $6
- call SilphCo11Script_62189
- ret
-
-SilphCo11Script6:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
-SilphCo11Script7:
- ld a, $2
- ld [wSpriteStateData1 + 4 * $10 + 1], a
- ld hl, wSpriteStateData1 + 4 * $10 + 9
- ld [hl], SPRITE_FACING_RIGHT
- CheckEitherEventSet EVENT_780, EVENT_781
- and a
- jr z, .asm_6235e
- ld [hl], SPRITE_FACING_UP
-.asm_6235e
- call Delay3
- ld a, $fc
- ld [wJoyIgnore], a
-SilphCo11Script8:
- ld de, SilphCo11MovementData_622fb
- CheckEitherEventSet EVENT_780, EVENT_781
- and a
- jr z, .asm_6237b
- ld de, SilphCo11MovementData_62305
- cp $1
- jr z, .asm_6237b
- ld de, SilphCo11MovementData_62311
-.asm_6237b
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $9
- call SilphCo11Script_62189
- ret
-
-SilphCo11Script9:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $fc
- ld [wJoyIgnore], a
-SilphCo11Script10:
- ld a, $2
- ld [wSpriteStateData1 + 6 * $10 + 1], a
- ld hl, wSpriteStateData1 + 6 * $10 + 9
- ld [hl], SPRITE_FACING_UP
- CheckEitherEventSet EVENT_780, EVENT_781
- and a
- jr z, .asm_623b1
- ld [hl], SPRITE_FACING_LEFT
-.asm_623b1
- call Delay3
- ld a, $9
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-SilphCo11Script11:
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SilphCo11Text_624c2
- ld de, SilphCo11Text_624c2
- call SaveEndBattleTextPointers
- ld a, OPP_ROCKET
- ld [wCurOpponent], a
- ld a, $2d
- ld [wTrainerNo], a
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- ld a, $c
- call SilphCo11Script_62189
- ret
-
-SilphCo11Script12:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, [wIsInBattle]
- cp $ff
- jp z, SilphCo11Script_62185
- ld a, $2
- ld [wSpriteStateData1 + 4 * $10 + 1], a
- ld [wSpriteStateData1 + 6 * $10 + 1], a
- xor a
- ld [wSpriteStateData1 + 4 * $10 + 9], a
- ld [wSpriteStateData1 + 6 * $10 + 9], a
- ld a, $fc
- ld [wJoyIgnore], a
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld a, $a
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- call StopAllMusic
- ld c, BANK(Music_MeetJessieJames)
- ld a, MUSIC_MEET_JESSIE_JAMES
- call PlayMusic
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $d
- call SilphCo11Script_62189
- ret
-
-SilphCo11Script13:
- ld a, $ff
- ld [wJoyIgnore], a
- call GBFadeOutToBlack
- ld a, HS_SILPH_CO_11F_JAMES
- call SilphCo11Script_6246d
- ld a, HS_SILPH_CO_11F_JESSIE
- call SilphCo11Script_6246d
- call UpdateSprites
- call Delay3
- call GBFadeInFromBlack
- ld a, $e
- call SilphCo11Script_62189
- ret
-
-SilphCo11Script14:
- call PlayDefaultMusic
- xor a
- ld [hJoyHeld], a
- ld [wJoyIgnore], a
- ResetEvent EVENT_782
- SetEventReuseHL EVENT_BEAT_SILPH_CO_11F_TRAINER_0
- ld a, $0
- call SilphCo11Script_62189
- ret
-
-SilphCo11Script_6245e:
- ld [wMissableObjectIndex], a
- predef ShowObject
- call UpdateSprites
- call Delay3
- ret
-
-SilphCo11Script_6246d:
- ld [wMissableObjectIndex], a
- predef HideObject
- ret
-
-SilphCo11TextPointers:
- dw SilphCo11Text1
- dw SilphCo11Text2
- dw SilphCo11Text3
- dw SilphCo11Text4
- dw SilphCo11Text5
- dw SilphCo11Text6
- dw SilphCo11Text7
- dw SilphCo11Text8
- dw SilphCo11Text9
- dw SilphCo11Text10
-
-SilphCo11TrainerHeaders:
-SilphCo11TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_11F_TRAINER_1
- db ($3 << 4)
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_11F_TRAINER_1
- dw SilphCo11Trainer1BattleText
- dw SilphCo11Trainer1AfterBattleText
- dw SilphCo11Trainer1EndBattleText
- dw SilphCo11Trainer1EndBattleText
-
- db $ff ; no more trainers
-
-SilphCo11Text4:
-SilphCo11Text6:
-SilphCo11Text8:
- TX_FAR _SilphCoJessieJamesText1
- TX_ASM
- ld c, 10
- call DelayFrames
- ld a, $4
- ld [wPlayerMovingDirection], a
- ld a, $0
- ld [wEmotionBubbleSpriteIndex], a
- ld a, EXCLAMATION_BUBBLE
- ld [wWhichEmotionBubble], a
- predef EmotionBubble
- ld c, 20
- call DelayFrames
- jp TextScriptEnd
-
-SilphCo11Text9:
- TX_FAR _SilphCoJessieJamesText2
- db "@"
-
-SilphCo11Text_624c2:
- TX_FAR _SilphCoJessieJamesText3
- db "@"
-
-SilphCo11Text10:
- TX_FAR _SilphCoJessieJamesText4
- TX_ASM
- ld c, 64
- call DelayFrames
- jp TextScriptEnd
-
-SilphCo11Text1:
- TX_ASM
- CheckEvent EVENT_GOT_MASTER_BALL
- jp nz, .asm_62500
- ld hl, SilphCo11Text_62509
- call PrintText
- lb bc, MASTER_BALL, 1
- call GiveItem
- jr nc, .asm_624f8
- ld hl, SilphCo11Text_6250e
- call PrintText
- SetEvent EVENT_GOT_MASTER_BALL
- jr .asm_62506
-.asm_624f8
- ld hl, SilphCo11Text_62519
- call PrintText
- jr .asm_62506
-
-.asm_62500
- ld hl, SilphCo11Text_62514
- call PrintText
-.asm_62506
- jp TextScriptEnd
-
-SilphCo11Text_62509:
- TX_FAR _SilphCoPresidentText
- db "@"
-
-SilphCo11Text_6250e:
- TX_FAR _ReceivedSilphCoMasterBallText
- TX_SFX_KEY_ITEM
- db "@"
-
-SilphCo11Text_62514:
- TX_FAR _SilphCo10Text_6231c
- db "@"
-
-SilphCo11Text_62519:
- TX_FAR _SilphCoMasterBallNoRoomText
- db "@"
-
-SilphCo11Text2:
- TX_FAR _SilphCo11Text2
- db "@"
-
-SilphCo11Text3:
- TX_FAR _SilphCo11Text3
- db "@"
-
-SilphCo10Text_62528:
- TX_FAR _SilphCo10Text_62330
- db "@"
-
-SilphCo11Text7:
- TX_FAR _SilphCo10Text_62335
- db "@"
-
-SilphCo11Text5:
- TX_ASM
- ld hl, SilphCo11TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo11Trainer1BattleText:
- TX_FAR _SilphCo11BattleText2
- db "@"
-
-SilphCo11Trainer1EndBattleText:
- TX_FAR _SilphCo11EndBattleText2
- db "@"
-
-SilphCo11Trainer1AfterBattleText:
- TX_FAR _SilphCo11AfterBattleText2
- db "@"
diff --git a/scripts/silphco2.asm b/scripts/silphco2.asm
deleted file mode 100755
index 3a5d3650..00000000
--- a/scripts/silphco2.asm
+++ /dev/null
@@ -1,245 +0,0 @@
-SilphCo2Script:
- call SilphCo2Script_59d07
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo2TrainerHeaders
- ld de, SilphCo2ScriptPointers
- ld a, [wSilphCo2CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo2CurScript], a
- ret
-
-SilphCo2Script_59d07:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo2GateCoords
- call SilphCo2Script_59d43
- call SilphCo2Script_59d6f
- CheckEvent EVENT_SILPH_CO_2_UNLOCKED_DOOR1
- jr nz, .asm_59d2e
- push af
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 2, 2
- predef ReplaceTileBlock
- pop af
-.asm_59d2e
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_2_UNLOCKED_DOOR2, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
- ret nz
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 5, 2
- predef_jump ReplaceTileBlock
-
-SilphCo2GateCoords:
- db $02,$02
- db $05,$02
- db $FF
-
-SilphCo2Script_59d43:
- push hl
- ld hl, wCardKeyDoorY
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_59d4f
- ld a, [hli]
- cp $ff
- jr z, .asm_59d6b
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_59d60
- inc hl
- jr .asm_59d4f
-.asm_59d60
- ld a, [hli]
- cp c
- jr nz, .asm_59d4f
- ld hl, wCardKeyDoorY
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_59d6b
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo2Script_59d6f:
- EventFlagAddress hl, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .next
- SetEventReuseHL EVENT_SILPH_CO_2_UNLOCKED_DOOR1
- ret
-.next
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_2_UNLOCKED_DOOR2, EVENT_SILPH_CO_2_UNLOCKED_DOOR1
- ret
-
-SilphCo2ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo2TextPointers:
- dw SilphCo2Text1
- dw SilphCo2Text2
- dw SilphCo2Text3
- dw SilphCo2Text4
- dw SilphCo2Text5
-
-SilphCo2TrainerHeaders:
-SilphCo2TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_0
- dw SilphCo2BattleText1 ; TextBeforeBattle
- dw SilphCo2AfterBattleText1 ; TextAfterBattle
- dw SilphCo2EndBattleText1 ; TextEndBattle
- dw SilphCo2EndBattleText1 ; TextEndBattle
-
-SilphCo2TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_1
- dw SilphCo2BattleText2 ; TextBeforeBattle
- dw SilphCo2AfterBattleText2 ; TextAfterBattle
- dw SilphCo2EndBattleText2 ; TextEndBattle
- dw SilphCo2EndBattleText2 ; TextEndBattle
-
-SilphCo2TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_2
- dw SilphCo2BattleText3 ; TextBeforeBattle
- dw SilphCo2AfterBattleText3 ; TextAfterBattle
- dw SilphCo2EndBattleText3 ; TextEndBattle
- dw SilphCo2EndBattleText3 ; TextEndBattle
-
-SilphCo2TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_2F_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_2F_TRAINER_3
- dw SilphCo2BattleText4 ; TextBeforeBattle
- dw SilphCo2AfterBattleText4 ; TextAfterBattle
- dw SilphCo2EndBattleText4 ; TextEndBattle
- dw SilphCo2EndBattleText4 ; TextEndBattle
-
- db $ff
-
-SilphCo2Text1:
- TX_ASM
- CheckEvent EVENT_GOT_TM36
- jr nz, .asm_59de4
- ld hl, SilphCo2Text_59ded
- call PrintText
- lb bc, TM_36, 1
- call GiveItem
- ld hl, TM36NoRoomText
- jr nc, .asm_59de7
- SetEvent EVENT_GOT_TM36
- ld hl, ReceivedTM36Text
- jr .asm_59de7
-.asm_59de4
- ld hl, TM36ExplanationText
-.asm_59de7
- call PrintText
- jp TextScriptEnd
-
-SilphCo2Text_59ded:
- TX_FAR _SilphCo2Text_59ded
- db "@"
-
-ReceivedTM36Text:
- TX_FAR _ReceivedTM36Text
- db $0B, "@"
-
-TM36ExplanationText:
- TX_FAR _TM36ExplanationText
- db "@"
-
-TM36NoRoomText:
- TX_FAR _TM36NoRoomText
- db "@"
-
-SilphCo2Text2:
- TX_ASM
- ld hl, SilphCo2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2Text3:
- TX_ASM
- ld hl, SilphCo2TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2Text4:
- TX_ASM
- ld hl, SilphCo2TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2Text5:
- TX_ASM
- ld hl, SilphCo2TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo2BattleText1:
- TX_FAR _SilphCo2BattleText1
- db "@"
-
-SilphCo2EndBattleText1:
- TX_FAR _SilphCo2EndBattleText1
- db "@"
-
-SilphCo2AfterBattleText1:
- TX_FAR _SilphCo2AfterBattleText1
- db "@"
-
-SilphCo2BattleText2:
- TX_FAR _SilphCo2BattleText2
- db "@"
-
-SilphCo2EndBattleText2:
- TX_FAR _SilphCo2EndBattleText2
- db "@"
-
-SilphCo2AfterBattleText2:
- TX_FAR _SilphCo2AfterBattleText2
- db "@"
-
-SilphCo2BattleText3:
- TX_FAR _SilphCo2BattleText3
- db "@"
-
-SilphCo2EndBattleText3:
- TX_FAR _SilphCo2EndBattleText3
- db "@"
-
-SilphCo2AfterBattleText3:
- TX_FAR _SilphCo2AfterBattleText3
- db "@"
-
-SilphCo2BattleText4:
- TX_FAR _SilphCo2BattleText4
- db "@"
-
-SilphCo2EndBattleText4:
- TX_FAR _SilphCo2EndBattleText4
- db "@"
-
-SilphCo2AfterBattleText4:
- TX_FAR _SilphCo2AfterBattleText4
- db "@"
diff --git a/scripts/silphco3.asm b/scripts/silphco3.asm
deleted file mode 100755
index b8dfb7fb..00000000
--- a/scripts/silphco3.asm
+++ /dev/null
@@ -1,137 +0,0 @@
-SilphCo3Script:
- call SilphCo3Script_59f71
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo3TrainerHeaders
- ld de, SilphCo3ScriptPointers
- ld a, [wSilphCo3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo3CurScript], a
- ret
-
-SilphCo3Script_59f71:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo3GateCoords
- call SilphCo2Script_59d43
- call SilphCo3Script_59fad
- CheckEvent EVENT_SILPH_CO_3_UNLOCKED_DOOR1
- jr nz, .asm_59f98
- push af
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 4, 4
- predef ReplaceTileBlock
- pop af
-.asm_59f98
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_3_UNLOCKED_DOOR2, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
- ret nz
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 4, 8
- predef_jump ReplaceTileBlock
-
-SilphCo3GateCoords:
- db $04,$04
- db $04,$08
- db $FF
-
-SilphCo3Script_59fad:
- EventFlagAddress hl, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .next
- SetEventReuseHL EVENT_SILPH_CO_3_UNLOCKED_DOOR1
- ret
-.next
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_3_UNLOCKED_DOOR2, EVENT_SILPH_CO_3_UNLOCKED_DOOR1
- ret
-
-SilphCo3ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo3TextPointers:
- dw SilphCo3Text1
- dw SilphCo3Text2
- dw SilphCo3Text3
- dw PickUpItemText
-
-SilphCo3TrainerHeaders:
-SilphCo3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_3F_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_3F_TRAINER_0
- dw SilphCo3BattleText1 ; TextBeforeBattle
- dw SilphCo3AfterBattleText1 ; TextAfterBattle
- dw SilphCo3EndBattleText1 ; TextEndBattle
- dw SilphCo3EndBattleText1 ; TextEndBattle
-
-SilphCo3TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_3F_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_3F_TRAINER_1
- dw SilphCo3BattleText2 ; TextBeforeBattle
- dw SilphCo3AfterBattleText2 ; TextAfterBattle
- dw SilphCo3EndBattleText2 ; TextEndBattle
- dw SilphCo3EndBattleText2 ; TextEndBattle
-
- db $ff
-
-SilphCo3Text1:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- ld hl, SilphCo3Text_59ffe
- jr nz, .asm_59fee
- ld hl, SilphCo3Text_59ff9
-.asm_59fee
- call PrintText
- jp TextScriptEnd
-
-SilphCo3Text_59ff9:
- TX_FAR _SilphCo3Text_59ff9
- db "@"
-
-SilphCo3Text_59ffe:
- TX_FAR _SilphCo3Text_59ffe
- db "@"
-
-SilphCo3Text2:
- TX_ASM
- ld hl, SilphCo3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo3BattleText1:
- TX_FAR _SilphCo3BattleText1
- db "@"
-
-SilphCo3EndBattleText1:
- TX_FAR _SilphCo3EndBattleText1
- db "@"
-
-SilphCo3AfterBattleText1:
- TX_FAR _SilphCo3AfterBattleText1
- db "@"
-
-SilphCo3Text3:
- TX_ASM
- ld hl, SilphCo3TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo3BattleText2:
- TX_FAR _SilphCo3BattleText2
- db "@"
-
-SilphCo3EndBattleText2:
- TX_FAR _SilphCo3EndBattleText2
- db "@"
-
-SilphCo3AfterBattleText2:
- TX_FAR _SilphCo3AfterBattleText2
- db "@"
diff --git a/scripts/silphco4.asm b/scripts/silphco4.asm
deleted file mode 100755
index a0682c8d..00000000
--- a/scripts/silphco4.asm
+++ /dev/null
@@ -1,200 +0,0 @@
-SilphCo4Script:
- call SilphCo4Script_19d21
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo4TrainerHeaders
- ld de, SilphCo4ScriptPointers
- ld a, [wSilphCo4CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo4CurScript], a
- ret
-
-SilphCo4Script_19d21:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo4GateCoords
- call SilphCo4Script_19d5d
- call SilphCo4Script_19d89
- CheckEvent EVENT_SILPH_CO_4_UNLOCKED_DOOR1
- jr nz, .asm_19d48
- push af
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 6, 2
- predef ReplaceTileBlock
- pop af
-.asm_19d48
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_4_UNLOCKED_DOOR2, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
- ret nz
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 4, 6
- predef_jump ReplaceTileBlock
-
-SilphCo4GateCoords:
- db $06,$02
- db $04,$06
- db $FF
-
-SilphCo4Script_19d5d:
- push hl
- ld hl, wCardKeyDoorY
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_19d69
- ld a, [hli]
- cp $ff
- jr z, .asm_19d85
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_19d7a
- inc hl
- jr .asm_19d69
-.asm_19d7a
- ld a, [hli]
- cp c
- jr nz, .asm_19d69
- ld hl, wCardKeyDoorY
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_19d85
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo4Script_19d89:
- EventFlagAddress hl, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .next
- SetEventReuseHL EVENT_SILPH_CO_4_UNLOCKED_DOOR1
- ret
-.next
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_4_UNLOCKED_DOOR2, EVENT_SILPH_CO_4_UNLOCKED_DOOR1
- ret
-
-SilphCo4ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo4TextPointers:
- dw SilphCo4Text1
- dw SilphCo4Text2
- dw SilphCo4Text3
- dw SilphCo4Text4
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-SilphCo4TrainerHeaders:
-SilphCo4TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_0
- dw SilphCo4BattleText2 ; TextBeforeBattle
- dw SilphCo4AfterBattleText2 ; TextAfterBattle
- dw SilphCo4EndBattleText2 ; TextEndBattle
- dw SilphCo4EndBattleText2 ; TextEndBattle
-
-SilphCo4TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_2
- dw SilphCo4BattleText3 ; TextBeforeBattle
- dw SilphCo4AfterBattleText3 ; TextAfterBattle
- dw SilphCo4EndBattleText3 ; TextEndBattle
- dw SilphCo4EndBattleText3 ; TextEndBattle
-
-SilphCo4TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_4F_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_4F_TRAINER_3
- dw SilphCo4BattleText4 ; TextBeforeBattle
- dw SilphCo4AfterBattleText4 ; TextAfterBattle
- dw SilphCo4EndBattleText4 ; TextEndBattle
- dw SilphCo4EndBattleText4 ; TextEndBattle
-
- db $ff
-
-SilphCo4Text1:
- TX_ASM
- ld hl, SilphCo4Text_19de0
- ld de, SilphCo4Text_19de5
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo4Text_19de0:
- TX_FAR _SilphCo4Text_19de0
- db "@"
-
-SilphCo4Text_19de5:
- TX_FAR _SilphCo4Text_19de5
- db "@"
-
-SilphCo4Text2:
- TX_ASM
- ld hl, SilphCo4TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo4BattleText2:
- TX_FAR _SilphCo4BattleText2
- db "@"
-
-SilphCo4EndBattleText2:
- TX_FAR _SilphCo4EndBattleText2
- db "@"
-
-SilphCo4AfterBattleText2:
- TX_FAR _SilphCo4AfterBattleText2
- db "@"
-
-SilphCo4Text3:
- TX_ASM
- ld hl, SilphCo4TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo4BattleText3:
- TX_FAR _SilphCo4BattleText3
- db "@"
-
-SilphCo4EndBattleText3:
- TX_FAR _SilphCo4EndBattleText3
- db "@"
-
-SilphCo4AfterBattleText3:
- TX_FAR _SilphCo4AfterBattleText3
- db "@"
-
-SilphCo4Text4:
- TX_ASM
- ld hl, SilphCo4TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo4BattleText4:
- TX_FAR _SilphCo4BattleText4
- db "@"
-
-SilphCo4EndBattleText4:
- TX_FAR _SilphCo4EndBattleText4
- db "@"
-
-SilphCo4AfterBattleText4:
- TX_FAR _SilphCo4AfterBattleText4
- db "@"
diff --git a/scripts/silphco5.asm b/scripts/silphco5.asm
deleted file mode 100755
index 42577498..00000000
--- a/scripts/silphco5.asm
+++ /dev/null
@@ -1,222 +0,0 @@
-SilphCo5Script:
- call SilphCo5Script_19f4d
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo5TrainerHeaders
- ld de, SilphCo5ScriptPointers
- ld a, [wSilphCo5CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo5CurScript], a
- ret
-
-SilphCo5Script_19f4d:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo5GateCoords
- call SilphCo4Script_19d5d
- call SilphCo5Script_19f9e
- CheckEvent EVENT_SILPH_CO_5_UNLOCKED_DOOR1
- jr nz, .asm_19f74
- push af
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 2, 3
- predef ReplaceTileBlock
- pop af
-.asm_19f74
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
- jr nz, .asm_19f87
- push af
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 6, 3
- predef ReplaceTileBlock
- pop af
-.asm_19f87
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR2
- ret nz
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 5, 7
- predef_jump ReplaceTileBlock
-
-SilphCo5GateCoords:
- db $02,$03
- db $06,$03
- db $05,$07
- db $FF
-
-SilphCo5Script_19f9e:
- EventFlagAddress hl, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .next1
- SetEventReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR1
- ret
-.next1
- cp $2
- jr nz, .next2
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR2, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
- ret
-.next2
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_5_UNLOCKED_DOOR3, EVENT_SILPH_CO_5_UNLOCKED_DOOR1
- ret
-
-SilphCo5ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo5TextPointers:
- dw SilphCo5Text1
- dw SilphCo5Text2
- dw SilphCo5Text3
- dw SilphCo5Text4
- dw SilphCo5Text5
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw SilphCo5Text9
- dw SilphCo5Text10
- dw SilphCo5Text11
-
-SilphCo5TrainerHeaders:
-Silphco5TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_0
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_0
- dw SilphCo5BattleText2 ; TextBeforeBattle
- dw SilphCo5AfterBattleText2 ; TextAfterBattle
- dw SilphCo5EndBattleText2 ; TextEndBattle
- dw SilphCo5EndBattleText2 ; TextEndBattle
-
-Silphco5TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_2
- dw SilphCo5BattleText3 ; TextBeforeBattle
- dw SilphCo5AfterBattleText3 ; TextAfterBattle
- dw SilphCo5EndBattleText3 ; TextEndBattle
- dw SilphCo5EndBattleText3 ; TextEndBattle
-
-Silphco5TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_3
- dw SilphCo5BattleText4 ; TextBeforeBattle
- dw SilphCo5AfterBattleText4 ; TextAfterBattle
- dw SilphCo5EndBattleText4 ; TextEndBattle
- dw SilphCo5EndBattleText4 ; TextEndBattle
-
-Silphco5TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_5F_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_5F_TRAINER_4
- dw SilphCo5BattleText5 ; TextBeforeBattle
- dw SilphCo5AfterBattleText5 ; TextAfterBattle
- dw SilphCo5EndBattleText5 ; TextEndBattle
- dw SilphCo5EndBattleText5 ; TextEndBattle
-
- db $ff
-
-SilphCo5Text1:
- TX_ASM
- ld hl, SilphCo5Text_1a010
- ld de, SilphCo5Text_1a015
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo5Text_1a010:
- TX_FAR _SilphCo5Text_1a010
- db "@"
-
-SilphCo5Text_1a015:
- TX_FAR _SilphCo5Text_1a015
- db "@"
-
-SilphCo5Text2:
- TX_ASM
- ld hl, Silphco5TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText2:
- TX_FAR _SilphCo5BattleText2
- db "@"
-
-SilphCo5EndBattleText2:
- TX_FAR _SilphCo5EndBattleText2
- db "@"
-
-SilphCo5AfterBattleText2:
- TX_FAR _SilphCo5AfterBattleText2
- db "@"
-
-SilphCo5Text3:
- TX_ASM
- ld hl, Silphco5TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText3:
- TX_FAR _SilphCo5BattleText3
- db "@"
-
-SilphCo5EndBattleText3:
- TX_FAR _SilphCo5EndBattleText3
- db "@"
-
-SilphCo5AfterBattleText3:
- TX_FAR _SilphCo5AfterBattleText3
- db "@"
-
-SilphCo5Text4:
- TX_ASM
- ld hl, Silphco5TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText4:
- TX_FAR _SilphCo5BattleText4
- db "@"
-
-SilphCo5EndBattleText4:
- TX_FAR _SilphCo5EndBattleText4
- db "@"
-
-SilphCo5AfterBattleText4:
- TX_FAR _SilphCo5AfterBattleText4
- db "@"
-
-SilphCo5Text5:
- TX_ASM
- ld hl, Silphco5TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo5BattleText5:
- TX_FAR _SilphCo5BattleText5
- db "@"
-
-SilphCo5EndBattleText5:
- TX_FAR _SilphCo5EndBattleText5
- db "@"
-
-SilphCo5AfterBattleText5:
- TX_FAR _SilphCo5AfterBattleText5
- db "@"
-
-SilphCo5Text9:
- TX_FAR _SilphCo5Text9
- db "@"
-
-SilphCo5Text10:
- TX_FAR _SilphCo5Text10
- db "@"
-
-SilphCo5Text11:
- TX_FAR _SilphCo5Text11
- db "@"
diff --git a/scripts/silphco6.asm b/scripts/silphco6.asm
deleted file mode 100755
index c40c7d70..00000000
--- a/scripts/silphco6.asm
+++ /dev/null
@@ -1,221 +0,0 @@
-SilphCo6Script:
- call SilphCo6Script_1a1bf
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo6TrainerHeaders
- ld de, SilphCo6ScriptPointers
- ld a, [wSilphCo6CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo6CurScript], a
- ret
-
-SilphCo6Script_1a1bf:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo6GateCoords
- call SilphCo4Script_19d5d
- call SilphCo6Script_1a1e6
- CheckEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR
- ret nz
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 6, 2
- predef_jump ReplaceTileBlock
-
-SilphCo6GateCoords:
- db $06,$02
- db $FF
-
-SilphCo6Script_1a1e6:
- ld a, [$ffe0]
- and a
- ret z
- SetEvent EVENT_SILPH_CO_6_UNLOCKED_DOOR
- ret
-
-SilphCo6ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo6TextPointers:
- dw SilphCo6Text1
- dw SilphCo6Text2
- dw SilphCo6Text3
- dw SilphCo6Text4
- dw SilphCo6Text5
- dw SilphCo6Text6
- dw SilphCo6Text7
- dw SilphCo6Text8
- dw PickUpItemText
- dw PickUpItemText
-
-SilphCo6TrainerHeaders:
-SilphCo6TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_0
- dw SilphCo6BattleText2 ; TextBeforeBattle
- dw SilphCo6AfterBattleText2 ; TextAfterBattle
- dw SilphCo6EndBattleText2 ; TextEndBattle
- dw SilphCo6EndBattleText2 ; TextEndBattle
-
-SilphCo6TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_2
- dw SilphCo6BattleText3 ; TextBeforeBattle
- dw SilphCo6AfterBattleText3 ; TextAfterBattle
- dw SilphCo6EndBattleText3 ; TextEndBattle
- dw SilphCo6EndBattleText3 ; TextEndBattle
-
-SilphCo6TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_6F_TRAINER_3, 1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_6F_TRAINER_3, 1
- dw SilphCo6BattleText4 ; TextBeforeBattle
- dw SilphCo6AfterBattleText4 ; TextAfterBattle
- dw SilphCo6EndBattleText4 ; TextEndBattle
- dw SilphCo6EndBattleText4 ; TextEndBattle
-
- db $ff
-
-SilphCo6Script_1a22f:
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- jr nz, .asm_1a238
- jr .asm_1a23a
-.asm_1a238
- ld h, d
- ld l, e
-.asm_1a23a
- jp PrintText
-
-SilphCo6Text1:
- TX_ASM
- ld hl, SilphCo6Text_1a24a
- ld de, SilphCo6Text_1a24f
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo6Text_1a24a:
- TX_FAR _SilphCo6Text_1a24a
- db "@"
-
-SilphCo6Text_1a24f:
- TX_FAR _SilphCo6Text_1a24f
- db "@"
-
-SilphCo6Text2:
- TX_ASM
- ld hl, SilphCo6Text_1a261
- ld de, SilphCo6Text_1a266
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo6Text_1a261:
- TX_FAR _SilphCo6Text_1a261
- db "@"
-
-SilphCo6Text_1a266:
- TX_FAR _SilphCo6Text_1a266
- db "@"
-
-SilphCo6Text3:
- TX_ASM
- ld hl, SilphCo6Text_1a278
- ld de, SilphCo6Text_1a27d
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo6Text_1a278:
- TX_FAR _SilphCo6Text_1a278
- db "@"
-
-SilphCo6Text_1a27d:
- TX_FAR _SilphCo6Text_1a27d
- db "@"
-
-SilphCo6Text4:
- TX_ASM
- ld hl, SilphCo6Text_1a28f
- ld de, SilphCo6Text_1a294
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo6Text_1a28f:
- TX_FAR _SilphCo6Text_1a28f
- db "@"
-
-SilphCo6Text_1a294:
- TX_FAR _SilphCo6Text_1a294
- db "@"
-
-SilphCo6Text5:
- TX_ASM
- ld hl, SilphCo6Text_1a2a6
- ld de, SilphCo6Text_1a2ab
- call SilphCo6Script_1a22f
- jp TextScriptEnd
-
-SilphCo6Text_1a2a6:
- TX_FAR _SilphCo6Text_1a2a6
- db "@"
-
-SilphCo6Text_1a2ab:
- TX_FAR _SilphCo6Text_1a2ab
- db "@"
-
-SilphCo6Text6:
- TX_ASM
- ld hl, SilphCo6TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo6BattleText2:
- TX_FAR _SilphCo6BattleText2
- db "@"
-
-SilphCo6EndBattleText2:
- TX_FAR _SilphCo6EndBattleText2
- db "@"
-
-SilphCo6AfterBattleText2:
- TX_FAR _SilphCo6AfterBattleText2
- db "@"
-
-SilphCo6Text7:
- TX_ASM
- ld hl, SilphCo6TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo6BattleText3:
- TX_FAR _SilphCo6BattleText3
- db "@"
-
-SilphCo6EndBattleText3:
- TX_FAR _SilphCo6EndBattleText3
- db "@"
-
-SilphCo6AfterBattleText3:
- TX_FAR _SilphCo6AfterBattleText3
- db "@"
-
-SilphCo6Text8:
- TX_ASM
- ld hl, SilphCo6TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo6BattleText4:
- TX_FAR _SilphCo6BattleText4
- db "@"
-
-SilphCo6EndBattleText4:
- TX_FAR _SilphCo6EndBattleText4
- db "@"
-
-SilphCo6AfterBattleText4:
- TX_FAR _SilphCo6AfterBattleText4
- db "@"
diff --git a/scripts/silphco7.asm b/scripts/silphco7.asm
deleted file mode 100755
index 2e93d92a..00000000
--- a/scripts/silphco7.asm
+++ /dev/null
@@ -1,514 +0,0 @@
-SilphCo7Script:
- call SilphCo7Script_51b77
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo7TrainerHeaders
- ld de, SilphCo7ScriptPointers
- ld a, [wSilphCo7CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo7CurScript], a
- ret
-
-SilphCo7Script_51b77:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo7GateCoords
- call SilphCo7Text_51bc8
- call SilphCo7Text_51bf4
- CheckEvent EVENT_SILPH_CO_7_UNLOCKED_DOOR1
- jr nz, .asm_51b9e
- push af
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 3, 5
- predef ReplaceTileBlock
- pop af
-.asm_51b9e
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_7_UNLOCKED_DOOR2, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
- jr nz, .asm_51bb1
- push af
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 2, 10
- predef ReplaceTileBlock
- pop af
-.asm_51bb1
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_7_UNLOCKED_DOOR3, EVENT_SILPH_CO_7_UNLOCKED_DOOR2
- ret nz
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 6, 10
- predef_jump ReplaceTileBlock
-
-SilphCo7GateCoords:
- db $03,$05
- db $02,$0A
- db $06,$0A
- db $FF
-
-SilphCo7Text_51bc8:
- push hl
- ld hl, wCardKeyDoorY
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_51bd4
- ld a, [hli]
- cp $ff
- jr z, .asm_51bf0
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_51be5
- inc hl
- jr .asm_51bd4
-.asm_51be5
- ld a, [hli]
- cp c
- jr nz, .asm_51bd4
- ld hl, wCardKeyDoorY
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_51bf0
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo7Text_51bf4:
- EventFlagAddress hl, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .next1
- SetEventReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR1
- ret
-.next1
- cp $2
- jr nz, .next2
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR2, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
- ret
-.next2
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_7_UNLOCKED_DOOR3, EVENT_SILPH_CO_7_UNLOCKED_DOOR1
- ret
-
-SilphCo7Text_51c0c:
- xor a
- ld [wJoyIgnore], a
-
-SilphCo7Text_51c10:
- ld [wSilphCo7CurScript], a
- ld [wCurMapScript], a
- ret
-
-SilphCo7ScriptPointers:
- dw SilphCo7Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw SilphCo7Script3
- dw SilphCo7Script4
- dw SilphCo7Script5
-
-SilphCo7Script0:
- CheckEvent EVENT_BEAT_SILPH_CO_RIVAL
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_51c78
- call ArePlayerCoordsInArray
- jp nc, CheckFightingMapTrainers
- xor a
- ld [hJoyHeld], a
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- call StopAllMusic
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, $9
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $9
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld de, MovementData_51c7d
- ld a, [wCoordIndex]
- ld [wcf0d], a
- cp $1
- jr z, .asm_51c6c
- inc de
-.asm_51c6c
- ld a, $9
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $3
- jp SilphCo7Text_51c10
-
-CoordsData_51c78:
- db $02,$03
- db $03,$03
- db $FF
-
-MovementData_51c7d:
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db $FF
-
-SilphCo7Script3:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SilphCo7Text14
- ld de, SilphCo7Text_51ecd
- call SaveEndBattleTextPointers
- ld a, OPP_SONY2
- ld [wCurOpponent], a
- ld a, [wRivalStarter]
- add 4
- ld [wTrainerNo], a
- ld a, $4
- call SilphCo7Text_51c10
- ret
-
-SilphCo7Script4:
- ld a, [wIsInBattle]
- cp $ff
- jp z, SilphCo7Text_51c0c
- ld a, $f0
- ld [wJoyIgnore], a
- SetEvent EVENT_BEAT_SILPH_CO_RIVAL
- ld a, PLAYER_DIR_DOWN
- ld [wPlayerMovingDirection], a
- ld a, $9
- ld [H_SPRITEINDEX], a
- ld a, SPRITE_FACING_UP
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $f
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld de, MovementData_51d1d
- ld a, [wcf0d]
- cp $1
- jr nz, .asm_51d0e
- ld de, MovementData_51d1a
-.asm_51d0e
- ld a, $9
- ld [H_SPRITEINDEX], a
- call MoveSprite
- ld a, $5
- jp SilphCo7Text_51c10
-
-MovementData_51d1a:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db $FF
-
-MovementData_51d1d:
- db NPC_MOVEMENT_LEFT
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_UP
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
- db $FF
-
-SilphCo7Script5:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, HS_SILPH_CO_7F_RIVAL
- ld [wMissableObjectIndex], a
- predef HideObject
- call PlayDefaultMusic
- xor a
- ld [wJoyIgnore], a
- jp SilphCo7Text_51c10
-
-SilphCo7TextPointers:
- dw SilphCo7Text1
- dw SilphCo7Text2
- dw SilphCo7Text3
- dw SilphCo7Text4
- dw SilphCo7Text5
- dw SilphCo7Text6
- dw SilphCo7Text7
- dw SilphCo7Text8
- dw SilphCo7Text9
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw SilphCo7Text13
- dw SilphCo7Text14
- dw SilphCo7Text15
-
-SilphCo7TrainerHeaders:
-SilphCo7TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_0
- dw SilphCo7BattleText1 ; TextBeforeBattle
- dw SilphCo7AfterBattleText1 ; TextAfterBattle
- dw SilphCo7EndBattleText1 ; TextEndBattle
- dw SilphCo7EndBattleText1 ; TextEndBattle
-
-SilphCo7TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_2
- dw SilphCo7BattleText2 ; TextBeforeBattle
- dw SilphCo7AfterBattleText2 ; TextAfterBattle
- dw SilphCo7EndBattleText2 ; TextEndBattle
- dw SilphCo7EndBattleText2 ; TextEndBattle
-
-SilphCo7TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_3
- dw SilphCo7BattleText3 ; TextBeforeBattle
- dw SilphCo7AfterBattleText3 ; TextAfterBattle
- dw SilphCo7EndBattleText3 ; TextEndBattle
- dw SilphCo7EndBattleText3 ; TextEndBattle
-
-SilphCo7TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_7F_TRAINER_4, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_7F_TRAINER_4, 1
- dw SilphCo7BattleText4 ; TextBeforeBattle
- dw SilphCo7AfterBattleText4 ; TextAfterBattle
- dw SilphCo7EndBattleText4 ; TextEndBattle
- dw SilphCo7EndBattleText4 ; TextEndBattle
-
- db $ff
-
-SilphCo7Text1:
-; lapras guy
- TX_ASM
- ld a, [wd72e]
- bit 0, a ; got lapras?
- jr z, .givelapras
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- jr nz, .savedsilph
- ld hl, .LaprasGuyText
- call PrintText
- jr .done
-.givelapras
- ld hl, .MeetLaprasGuyText
- call PrintText
- lb bc, LAPRAS, 15
- call GivePokemon
- jr nc, .done
- ld a, [wSimulatedJoypadStatesEnd]
- and a
- call z, WaitForTextScrollButtonPress
- call EnableAutoTextBoxDrawing
- ld hl, .HeresYourLaprasText
- call PrintText
- ld hl, wd72e
- set 0, [hl]
- jr .done
-.savedsilph
- ld hl, .LaprasGuySavedText
- call PrintText
-.done
- jp TextScriptEnd
-
-.MeetLaprasGuyText
- TX_FAR _MeetLaprasGuyText
- db "@"
-
-.HeresYourLaprasText
- TX_FAR _HeresYourLaprasText
- db "@"
-
-.LaprasGuyText
- TX_FAR _LaprasGuyText
- db "@"
-
-.LaprasGuySavedText
- TX_FAR _LaprasGuySavedText
- db "@"
-
-SilphCo7Text2:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- jr nz, .savedsilph
- ld hl, .rockettext
- call PrintText
- jr .done
-.savedsilph
- ld hl, .savedtext
- call PrintText
-.done
- jp TextScriptEnd
-
-.rockettext
- TX_FAR _SilphCo7Text_51e00
- db "@"
-
-.savedtext
- TX_FAR _CanceledMasterBallText
- db "@"
-
-SilphCo7Text3:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- jr nz, .savedsilph
- ld hl, .rockettext
- call PrintText
- jr .done
-.savedsilph
- ld hl, .savedtext
- call PrintText
-.done
- jp TextScriptEnd
-
-.rockettext
- TX_FAR _SilphCo7Text_51e23
- db "@"
-
-.savedtext
- TX_FAR _SilphCo7Text_51e28
- db "@"
-
-SilphCo7Text4:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- jr nz, .savedsilph
- ld hl, .rockettext
- call PrintText
- jr .done
-.savedsilph
- ld hl, .savedtext
- call PrintText
-.done
- jp TextScriptEnd
-
-.rockettext
- TX_FAR _SilphCo7Text_51e46
- db "@"
-
-.savedtext
- TX_FAR _SilphCo7Text_51e4b
- db "@"
-
-SilphCo7Text5:
- TX_ASM
- ld hl, SilphCo7TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText1:
- TX_FAR _SilphCo7BattleText1
- db "@"
-
-SilphCo7EndBattleText1:
- TX_FAR _SilphCo7EndBattleText1
- db "@"
-
-SilphCo7AfterBattleText1:
- TX_FAR _SilphCo7AfterBattleText1
- db "@"
-
-SilphCo7Text6:
- TX_ASM
- ld hl, SilphCo7TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText2:
- TX_FAR _SilphCo7BattleText2
- db "@"
-
-SilphCo7EndBattleText2:
- TX_FAR _SilphCo7EndBattleText2
- db "@"
-
-SilphCo7AfterBattleText2:
- TX_FAR _SilphCo7AfterBattleText2
- db "@"
-
-SilphCo7Text7:
- TX_ASM
- ld hl, SilphCo7TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText3:
- TX_FAR _SilphCo7BattleText3
- db "@"
-
-SilphCo7EndBattleText3:
- TX_FAR _SilphCo7EndBattleText3
- db "@"
-
-SilphCo7AfterBattleText3:
- TX_FAR _SilphCo7AfterBattleText3
- db "@"
-
-SilphCo7Text8:
- TX_ASM
- ld hl, SilphCo7TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo7BattleText4:
- TX_FAR _SilphCo7BattleText4
- db "@"
-
-SilphCo7EndBattleText4:
- TX_FAR _SilphCo7EndBattleText4
- db "@"
-
-SilphCo7AfterBattleText4:
- TX_FAR _SilphCo7AfterBattleText4
- db "@"
-
-SilphCo7Text9:
- TX_ASM
- ld hl, SilphCo7Text_51ebe
- call PrintText
- jp TextScriptEnd
-
-SilphCo7Text_51ebe:
- TX_FAR _SilphCo7Text_51ebe
- db "@"
-
-SilphCo7Text13:
- TX_FAR _SilphCo7Text_51ec3
- db "@"
-
-SilphCo7Text14:
- TX_FAR _SilphCo7Text_51ec8
- db "@"
-
-SilphCo7Text_51ecd:
- TX_FAR _SilphCo7Text_51ecd
- db "@"
-
-SilphCo7Text15:
- TX_FAR _SilphCo7Text_51ed2
- db "@"
diff --git a/scripts/silphco8.asm b/scripts/silphco8.asm
deleted file mode 100755
index 399f7bd5..00000000
--- a/scripts/silphco8.asm
+++ /dev/null
@@ -1,184 +0,0 @@
-SilphCo8Script:
- call SilphCo8Script_5651a
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo8TrainerHeader0
- ld de, SilphCo8ScriptPointers
- ld a, [wSilphCo8CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo8CurScript], a
- ret
-
-SilphCo8Script_5651a:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo8GateCoords
- call SilphCo8Script_56541
- call SilphCo8Script_5656d
- CheckEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR
- ret nz
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 4, 3
- predef_jump ReplaceTileBlock
-
-SilphCo8GateCoords:
- db $04,$03
- db $FF
-
-SilphCo8Script_56541:
- push hl
- ld hl, wCardKeyDoorY
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_5654d
- ld a, [hli]
- cp $ff
- jr z, .asm_56569
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_5655e
- inc hl
- jr .asm_5654d
-.asm_5655e
- ld a, [hli]
- cp c
- jr nz, .asm_5654d
- ld hl, wCardKeyDoorY
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_56569
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo8Script_5656d:
- ld a, [$ffe0]
- and a
- ret z
- SetEvent EVENT_SILPH_CO_8_UNLOCKED_DOOR
- ret
-
-SilphCo8ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo8TextPointers:
- dw SilphCo8Text1
- dw SilphCo8Text2
- dw SilphCo8Text3
- dw SilphCo8Text4
-
-SilphCo8TrainerHeaders:
-SilphCo8TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_0
- dw SilphCo8BattleText1 ; TextBeforeBattle
- dw SilphCo8AfterBattleText1 ; TextAfterBattle
- dw SilphCo8EndBattleText1 ; TextEndBattle
- dw SilphCo8EndBattleText1 ; TextEndBattle
-
-SilphCo8TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_1
- dw SilphCo8BattleText2 ; TextBeforeBattle
- dw SilphCo8AfterBattleText2 ; TextAfterBattle
- dw SilphCo8EndBattleText2 ; TextEndBattle
- dw SilphCo8EndBattleText2 ; TextEndBattle
-
-SilphCo8TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_8F_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_8F_TRAINER_2
- dw SilphCo8BattleText3 ; TextBeforeBattle
- dw SilphCo8AfterBattleText3 ; TextAfterBattle
- dw SilphCo8EndBattleText3 ; TextEndBattle
- dw SilphCo8EndBattleText3 ; TextEndBattle
-
- db $ff
-
-SilphCo8Text1:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- ld hl, SilphCo8Text_565c3
- jr nz, .asm_565b8
- ld hl, SilphCo8Text_565be
-.asm_565b8
- call PrintText
- jp TextScriptEnd
-
-SilphCo8Text_565be:
- TX_FAR _SilphCo8Text_565be
- db "@"
-
-SilphCo8Text_565c3:
- TX_FAR _SilphCo8Text_565c3
- db "@"
-
-SilphCo8Text2:
- TX_ASM
- ld hl, SilphCo8TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo8Text3:
- TX_ASM
- ld hl, SilphCo8TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo8Text4:
- TX_ASM
- ld hl, SilphCo8TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo8BattleText1:
- TX_FAR _SilphCo8BattleText1
- db "@"
-
-SilphCo8EndBattleText1:
- TX_FAR _SilphCo8EndBattleText1
- db "@"
-
-SilphCo8AfterBattleText1:
- TX_FAR _SilphCo8AfterBattleText1
- db "@"
-
-SilphCo8BattleText2:
- TX_FAR _SilphCo8BattleText2
- db "@"
-
-SilphCo8EndBattleText2:
- TX_FAR _SilphCo8EndBattleText2
- db "@"
-
-SilphCo8AfterBattleText2:
- TX_FAR _SilphCo8AfterBattleText2
- db "@"
-
-SilphCo8BattleText3:
- TX_FAR _SilphCo8BattleText3
- db "@"
-
-SilphCo8EndBattleText3:
- TX_FAR _SilphCo8EndBattleText3
- db "@"
-
-SilphCo8AfterBattleText3:
- TX_FAR _SilphCo8AfterBattleText3
- db "@"
diff --git a/scripts/silphco9.asm b/scripts/silphco9.asm
deleted file mode 100755
index 6757eb49..00000000
--- a/scripts/silphco9.asm
+++ /dev/null
@@ -1,245 +0,0 @@
-SilphCo9Script:
- call SilphCo9Script_5d7d1
- call EnableAutoTextBoxDrawing
- ld hl, SilphCo9TrainerHeaders
- ld de, SilphCo9ScriptPointers
- ld a, [wSilphCo9CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSilphCo9CurScript], a
- ret
-
-SilphCo9Script_5d7d1:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- ld hl, SilphCo9GateCoords
- call SilphCo9Script_5d837
- call SilphCo9Script_5d863
- CheckEvent EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- jr nz, .asm_5d7f8
- push af
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 4, 1
- predef ReplaceTileBlock
- pop af
-.asm_5d7f8
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR2, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- jr nz, .asm_5d80b
- push af
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 2, 9
- predef ReplaceTileBlock
- pop af
-.asm_5d80b
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR3, EVENT_SILPH_CO_9_UNLOCKED_DOOR2
- jr nz, .asm_5d81e
- push af
- ld a, $54
- ld [wNewTileBlockID], a
- lb bc, 5, 9
- predef ReplaceTileBlock
- pop af
-.asm_5d81e
- CheckEventAfterBranchReuseA EVENT_SILPH_CO_9_UNLOCKED_DOOR4, EVENT_SILPH_CO_9_UNLOCKED_DOOR3
- ret nz
- ld a, $5f
- ld [wNewTileBlockID], a
- lb bc, 6, 5
- predef_jump ReplaceTileBlock
-
-SilphCo9GateCoords:
- db $04,$01
- db $02,$09
- db $05,$09
- db $06,$05
- db $FF
-
-SilphCo9Script_5d837:
- push hl
- ld hl, wCardKeyDoorY
- ld a, [hli]
- ld b, a
- ld a, [hl]
- ld c, a
- xor a
- ld [$ffe0], a
- pop hl
-.asm_5d843
- ld a, [hli]
- cp $ff
- jr z, .asm_5d85f
- push hl
- ld hl, $ffe0
- inc [hl]
- pop hl
- cp b
- jr z, .asm_5d854
- inc hl
- jr .asm_5d843
-.asm_5d854
- ld a, [hli]
- cp c
- jr nz, .asm_5d843
- ld hl, wCardKeyDoorY
- xor a
- ld [hli], a
- ld [hl], a
- ret
-.asm_5d85f
- xor a
- ld [$ffe0], a
- ret
-
-SilphCo9Script_5d863:
- EventFlagAddress hl, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- ld a, [$ffe0]
- and a
- ret z
- cp $1
- jr nz, .next1
- SetEventReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- ret
-.next1
- cp $2
- jr nz, .next2
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR2, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- ret
-.next2
- cp $3
- jr nz, .next3
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR3, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- ret
-.next3
- cp $4
- ret nz
- SetEventAfterBranchReuseHL EVENT_SILPH_CO_9_UNLOCKED_DOOR4, EVENT_SILPH_CO_9_UNLOCKED_DOOR1
- ret
-
-SilphCo9ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SilphCo9TextPointers:
- dw SilphCo9Text1
- dw SilphCo9Text2
- dw SilphCo9Text3
- dw SilphCo9Text4
-
-SilphCo9TrainerHeaders:
-SilphCo9TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_0
- dw SilphCo9BattleText1 ; TextBeforeBattle
- dw SilphCo9AfterBattleText1 ; TextAfterBattle
- dw SilphCo9EndBattleText1 ; TextEndBattle
- dw SilphCo9EndBattleText1 ; TextEndBattle
-
-SilphCo9TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_1
- dw SilphCo9BattleText2 ; TextBeforeBattle
- dw SilphCo9AfterBattleText2 ; TextAfterBattle
- dw SilphCo9EndBattleText2 ; TextEndBattle
- dw SilphCo9EndBattleText2 ; TextEndBattle
-
-SilphCo9TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SILPH_CO_9F_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SILPH_CO_9F_TRAINER_2
- dw SilphCo9BattleText3 ; TextBeforeBattle
- dw SilphCo9AfterBattleText3 ; TextAfterBattle
- dw SilphCo9EndBattleText3 ; TextEndBattle
- dw SilphCo9EndBattleText3 ; TextEndBattle
-
- db $ff
-
-SilphCo9Text1:
- TX_ASM
- CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
- jr nz, .asm_5d8dc
- ld hl, SilphCo9Text_5d8e5
- call PrintText
- predef HealParty
- call GBFadeOutToWhite
- call Delay3
- call GBFadeInFromWhite
- ld hl, SilphCo9Text_5d8ea
- call PrintText
- jr .asm_5d8e2
-.asm_5d8dc
- ld hl, SilphCo9Text_5d8ef
- call PrintText
-.asm_5d8e2
- jp TextScriptEnd
-
-SilphCo9Text_5d8e5:
- TX_FAR _SilphCo9Text_5d8e5
- db "@"
-
-SilphCo9Text_5d8ea:
- TX_FAR _SilphCo9Text_5d8ea
- db "@"
-
-SilphCo9Text_5d8ef:
- TX_FAR _SilphCo9Text_5d8ef
- db "@"
-
-SilphCo9Text2:
- TX_ASM
- ld hl, SilphCo9TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo9Text3:
- TX_ASM
- ld hl, SilphCo9TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo9Text4:
- TX_ASM
- ld hl, SilphCo9TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SilphCo9BattleText1:
- TX_FAR _SilphCo9BattleText1
- db "@"
-
-SilphCo9EndBattleText1:
- TX_FAR _SilphCo9EndBattleText1
- db "@"
-
-SilphCo9AfterBattleText1:
- TX_FAR _SilphCo9AfterBattleText1
- db "@"
-
-SilphCo9BattleText2:
- TX_FAR _SilphCo9BattleText2
- db "@"
-
-SilphCo9EndBattleText2:
- TX_FAR _SilphCo9EndBattleText2
- db "@"
-
-SilphCo9AfterBattleText2:
- TX_FAR _SilphCo9AfterBattleText2
- db "@"
-
-SilphCo9BattleText3:
- TX_FAR _SilphCo9BattleText3
- db "@"
-
-SilphCo9EndBattleText3:
- TX_FAR _SilphCo9EndBattleText3
- db "@"
-
-SilphCo9AfterBattleText3:
- TX_FAR _SilphCo9AfterBattleText3
- db "@"
diff --git a/scripts/silphcoelevator.asm b/scripts/silphcoelevator.asm
deleted file mode 100755
index df4d08c7..00000000
--- a/scripts/silphcoelevator.asm
+++ /dev/null
@@ -1,88 +0,0 @@
-SilphCoElevatorScript:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, SilphCoElevatorScript_457dc
- pop hl
- bit 7, [hl]
- res 7, [hl]
- call nz, SilphCoElevatorScript_45827
- xor a
- ld [wAutoTextBoxDrawingControl], a
- inc a
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ret
-
-SilphCoElevatorScript_457dc:
- ld hl, wWarpEntries
- ld a, [wWarpedFromWhichWarp]
- ld b, a
- ld a, [wWarpedFromWhichMap]
- ld c, a
- call SilphCoElevatorScript_457ea
-
-SilphCoElevatorScript_457ea:
- inc hl
- inc hl
- ld a, b
- ld [hli], a
- ld a, c
- ld [hli], a
- ret
-
-SilphCoElevatorScript_457f1:
- ld hl, SilphCoElavatorFloors
- call LoadItemList
- ld hl, SilphCoElevatorWarpMaps
- ld de, wElevatorWarpMaps
- ld bc, SilphCoElevatorWarpMapsEnd - SilphCoElevatorWarpMaps
- call CopyData
- ret
-
-SilphCoElavatorFloors:
- db $0B ; num elements in list
- db FLOOR_1F
- db FLOOR_2F
- db FLOOR_3F
- db FLOOR_4F
- db FLOOR_5F
- db FLOOR_6F
- db FLOOR_7F
- db FLOOR_8F
- db FLOOR_9F
- db FLOOR_10F
- db FLOOR_11F
- db $FF ; terminator
-
-SilphCoElevatorWarpMaps:
-; first byte is warp number
-; second byte is map number
-; These specify where the player goes after getting out of the elevator.
- db $03, SILPH_CO_1F
- db $02, SILPH_CO_2F
- db $02, SILPH_CO_3F
- db $02, SILPH_CO_4F
- db $02, SILPH_CO_5F
- db $02, SILPH_CO_6F
- db $02, SILPH_CO_7F
- db $02, SILPH_CO_8F
- db $02, SILPH_CO_9F
- db $02, SILPH_CO_10F
- db $01, SILPH_CO_11F
-SilphCoElevatorWarpMapsEnd:
-
-SilphCoElevatorScript_45827:
- call Delay3
- callba ShakeElevator
- ret
-
-SilphCoElevatorTextPointers:
- dw SilphCoElevatorText1
-
-SilphCoElevatorText1:
- TX_ASM
- call SilphCoElevatorScript_457f1
- ld hl, SilphCoElevatorWarpMaps
- predef DisplayElevatorFloorMenu
- jp TextScriptEnd
diff --git a/scripts/ssanne1.asm b/scripts/ssanne1.asm
deleted file mode 100755
index 3f8861d5..00000000
--- a/scripts/ssanne1.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-SSAnne1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-SSAnne1TextPointers:
- dw SSAnne1Text1
- dw SSAnne1Text2
-
-SSAnne1Text1:
- TX_FAR _SSAnne1Text1
- db "@"
-
-SSAnne1Text2:
- TX_FAR _SSAnne1Text2
- db "@"
diff --git a/scripts/ssanne10.asm b/scripts/ssanne10.asm
deleted file mode 100755
index 45c8dba5..00000000
--- a/scripts/ssanne10.asm
+++ /dev/null
@@ -1,202 +0,0 @@
-SSAnne10Script:
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne10TrainerHeaders
- ld de, SSAnne10ScriptPointers
- ld a, [wSSAnne10CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSSAnne10CurScript], a
- ret
-
-SSAnne10ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SSAnne10TextPointers:
- dw SSAnne10Text1
- dw SSAnne10Text2
- dw SSAnne10Text3
- dw SSAnne10Text4
- dw SSAnne10Text5
- dw SSAnne10Text6
- dw SSAnne10Text7
- dw SSAnne10Text8
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-SSAnne10TrainerHeaders:
-SSAnne10TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_0
- dw SSAnne10BattleText1 ; TextBeforeBattle
- dw SSAnne10AfterBattleText1 ; TextAfterBattle
- dw SSAnne10EndBattleText1 ; TextEndBattle
- dw SSAnne10EndBattleText1 ; TextEndBattle
-
-SSAnne10TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_1
- dw SSAnne10BattleText2 ; TextBeforeBattle
- dw SSAnne10AfterBattleText2 ; TextAfterBattle
- dw SSAnne10EndBattleText2 ; TextEndBattle
- dw SSAnne10EndBattleText2 ; TextEndBattle
-
-SSAnne10TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_2
- dw SSAnne10BattleText3 ; TextBeforeBattle
- dw SSAnne10AfterBattleText3 ; TextAfterBattle
- dw SSAnne10EndBattleText3 ; TextEndBattle
- dw SSAnne10EndBattleText3 ; TextEndBattle
-
-SSAnne10TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_3
- dw SSAnne10BattleText4 ; TextBeforeBattle
- dw SSAnne10AfterBattleText4 ; TextAfterBattle
- dw SSAnne10EndBattleText4 ; TextEndBattle
- dw SSAnne10EndBattleText4 ; TextEndBattle
-
-SSAnne10TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_4
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_4
- dw SSAnne10BattleText5 ; TextBeforeBattle
- dw SSAnne10AfterBattleText5 ; TextAfterBattle
- dw SSAnne10EndBattleText5 ; TextEndBattle
- dw SSAnne10EndBattleText5 ; TextEndBattle
-
-SSAnne10TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_10_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_10_TRAINER_5
- dw SSAnne10BattleText6 ; TextBeforeBattle
- dw SSAnne10AfterBattleText6 ; TextAfterBattle
- dw SSAnne10EndBattleText6 ; TextEndBattle
- dw SSAnne10EndBattleText6 ; TextEndBattle
-
- db $ff
-
-SSAnne10Text1:
- TX_ASM
- ld hl, SSAnne10TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text2:
- TX_ASM
- ld hl, SSAnne10TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text3:
- TX_ASM
- ld hl, SSAnne10TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text4:
- TX_ASM
- ld hl, SSAnne10TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text5:
- TX_ASM
- ld hl, SSAnne10TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text6:
- TX_ASM
- ld hl, SSAnne10TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne10Text8:
- TX_FAR _SSAnne10Text8
- TX_ASM
- ld a, MACHOKE
- call PlayCry
- jp TextScriptEnd
-
-SSAnne10BattleText1:
- TX_FAR _SSAnne10BattleText1
- db "@"
-
-SSAnne10EndBattleText1:
- TX_FAR _SSAnne10EndBattleText1
- db "@"
-
-SSAnne10AfterBattleText1:
- TX_FAR _SSAnne10AfterBattleText1
- db "@"
-
-SSAnne10BattleText2:
- TX_FAR _SSAnne10BattleText2
- db "@"
-
-SSAnne10EndBattleText2:
- TX_FAR _SSAnne10EndBattleText2
- db "@"
-
-SSAnne10AfterBattleText2:
- TX_FAR _SSAnne10AfterBattleText2
- db "@"
-
-SSAnne10BattleText3:
- TX_FAR _SSAnne10BattleText3
- db "@"
-
-SSAnne10EndBattleText3:
- TX_FAR _SSAnne10EndBattleText3
- db "@"
-
-SSAnne10AfterBattleText3:
- TX_FAR _SSAnne10AfterBattleText3
- db "@"
-
-SSAnne10BattleText4:
- TX_FAR _SSAnne10BattleText4
- db "@"
-
-SSAnne10EndBattleText4:
- TX_FAR _SSAnne10EndBattleText4
- db "@"
-
-SSAnne10AfterBattleText4:
- TX_FAR _SSAnne10AfterBattleText4
- db "@"
-
-SSAnne10BattleText5:
- TX_FAR _SSAnne10BattleText5
- db "@"
-
-SSAnne10EndBattleText5:
- TX_FAR _SSAnne10EndBattleText5
- db "@"
-
-SSAnne10AfterBattleText5:
- TX_FAR _SSAnne10AfterBattleText5
- db "@"
-
-SSAnne10BattleText6:
- TX_FAR _SSAnne10BattleText6
- db "@"
-
-SSAnne10EndBattleText6:
- TX_FAR _SSAnne10EndBattleText6
- db "@"
-
-SSAnne10AfterBattleText6:
- TX_FAR _SSAnne10AfterBattleText6
- db "@"
-
-SSAnne10Text7:
- TX_FAR _SSAnne10Text7
- db "@"
diff --git a/scripts/ssanne2.asm b/scripts/ssanne2.asm
deleted file mode 100755
index 4f0ffa2f..00000000
--- a/scripts/ssanne2.asm
+++ /dev/null
@@ -1,197 +0,0 @@
-SSAnne2Script:
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne2ScriptPointers
- ld a, [wSSAnne2CurScript]
- jp JumpTable
-
-SSAnne2Script_613ab:
- xor a
- ld [wJoyIgnore], a
- ld [wSSAnne2CurScript], a
- ret
-
-SSAnne2ScriptPointers:
- dw SSAnne2Script0
- dw SSAnne2Script1
- dw SSAnne2Script2
- dw SSAnne2Script3
- dw SSAnne2Script4
-
-SSAnne2Script4:
- ret
-
-SSAnne2Script0:
- ld hl, CoordsData_61411
- call ArePlayerCoordsInArray
- ret nc
- call StopAllMusic
- ld c, BANK(Music_MeetRival)
- ld a, MUSIC_MEET_RIVAL
- call PlayMusic
- ld a, [wCoordIndex]
- ld [$ffdb], a
- ld a, HS_SS_ANNE_2_RIVAL
- ld [wMissableObjectIndex], a
- predef ShowObject
- call Delay3
- ld a, $2
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- xor a
- ld [hJoyHeld], a
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, [$ffdb]
- cp $2
- jr nz, .asm_61400
- ld de, MovementData_6140c
- jr .asm_61403
-.asm_61400
- ld de, MovementData_6140d
-.asm_61403
- call MoveSprite
- ld a, $1
- ld [wSSAnne2CurScript], a
- ret
-
-MovementData_6140c:
- db NPC_MOVEMENT_DOWN
-
-MovementData_6140d:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-CoordsData_61411:
- db $08,$24
- db $08,$25
- db $FF
-
-SSAnne2Script_61416:
- ld a, [wXCoord]
- cp $25
- jr nz, .asm_61426
- ld a, PLAYER_DIR_LEFT
- ld [wPlayerMovingDirection], a
- ld a, SPRITE_FACING_RIGHT
- jr .asm_61427
-.asm_61426
- xor a ; SPRITE_FACING_DOWN
-.asm_61427
- ld [hSpriteFacingDirection], a
- ld a, $2
- ld [H_SPRITEINDEX], a
- jp SetSpriteFacingDirectionAndDelay
-
-SSAnne2Script1:
- ld a, [wd730]
- bit 0, a
- ret nz
- call SSAnne2Script_61416
- xor a
- ld [wJoyIgnore], a
- ld a, $2
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call Delay3
- ld a, OPP_SONY2
- ld [wCurOpponent], a
- ld a, $1
- ld [wTrainerNo], a
- call SSAnne2Script_61416
- ld a, $2
- ld [wSSAnne2CurScript], a
- ret
-
-SSAnne2Script2:
- ld a, [wIsInBattle]
- cp $ff
- jp z, SSAnne2Script_613ab
- call SSAnne2Script_61416
- ld a, $f0
- ld [wJoyIgnore], a
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, $2
- ld [H_SPRITEINDEX], a
- call SetSpriteMovementBytesToFF
- ld a, [wXCoord]
- cp $25
- jr nz, .asm_61497
- ld de, MovementData_614b9
- jr .asm_6149a
-.asm_61497
- ld de, MovementData_614b7
-.asm_6149a
- ld a, $2
- ld [H_SPRITEINDEX], a
- call MoveSprite
- call StopAllMusic
- callba Music_RivalAlternateStart
- ld a, $3
- ld [wSSAnne2CurScript], a
- ret
-
-MovementData_614b7:
- db NPC_MOVEMENT_RIGHT
- db NPC_MOVEMENT_DOWN
-
-MovementData_614b9:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $FF
-
-SSAnne2Script3:
- ld a, [wd730]
- bit 0, a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld a, HS_SS_ANNE_2_RIVAL
- ld [wMissableObjectIndex], a
- predef HideObject
- call PlayDefaultMusic
- ld a, $4
- ld [wSSAnne2CurScript], a
- ret
-
-SSAnne2TextPointers:
- dw SSAnne2Text1
- dw SSAnne2Text2
- dw SSAnne2Text3
-
-SSAnne2Text1:
- TX_FAR _SSAnne2Text1
- db "@"
-
-SSAnne2Text2:
- TX_ASM
- ld hl, SSAnneRivalBeforeBattleText
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, SSAnneRivalDefeatedText
- ld de, SSAnneRivalWonText
- call SaveEndBattleTextPointers
- jp TextScriptEnd
-
-SSAnneRivalBeforeBattleText:
- TX_FAR _SSAnneRivalBeforeBattleText
- db "@"
-
-SSAnneRivalDefeatedText:
- TX_FAR _SSAnneRivalDefeatedText
- db "@"
-
-SSAnneRivalWonText:
- TX_FAR _SSAnneRivalWonText
- db "@"
-
-SSAnne2Text3:
- TX_FAR _SSAnneRivalCaptainText
- db "@"
diff --git a/scripts/ssanne3.asm b/scripts/ssanne3.asm
deleted file mode 100755
index e681591a..00000000
--- a/scripts/ssanne3.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-SSAnne3Script:
- jp EnableAutoTextBoxDrawing
-
-SSAnne3TextPointers:
- dw SSAnne3Text1
-
-SSAnne3Text1:
- TX_FAR _SSAnne3Text1
- db "@"
diff --git a/scripts/ssanne4.asm b/scripts/ssanne4.asm
deleted file mode 100755
index c9411717..00000000
--- a/scripts/ssanne4.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-SSAnne4Script:
- jp EnableAutoTextBoxDrawing
-
-SSAnne4TextPointers:
- db "@"
diff --git a/scripts/ssanne5.asm b/scripts/ssanne5.asm
deleted file mode 100755
index a398a381..00000000
--- a/scripts/ssanne5.asm
+++ /dev/null
@@ -1,89 +0,0 @@
-SSAnne5Script:
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne5TrainerHeader0
- ld de, SSAnne5ScriptPointers
- ld a, [wSSAnne5CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSSAnne5CurScript], a
- ret
-
-SSAnne5ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SSAnne5TextPointers:
- dw SSAnne5Text1
- dw SSAnne5Text2
- dw SSAnne5Text3
- dw SSAnne5Text4
- dw SSAnne5Text5
-
-SSAnne5TrainerHeaders:
-SSAnne5TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_5_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_5_TRAINER_0
- dw SSAnne5BattleText1 ; TextBeforeBattle
- dw SSAnne5AfterBattleText1 ; TextAfterBattle
- dw SSAnne5EndBattleText1 ; TextEndBattle
- dw SSAnne5EndBattleText1 ; TextEndBattle
-
-SSAnne5TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_5_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_5_TRAINER_1
- dw SSAnne5BattleText2 ; TextBeforeBattle
- dw SSAnne5AfterBattleText2 ; TextAfterBattle
- dw SSAnne5EndBattleText2 ; TextEndBattle
- dw SSAnne5EndBattleText2 ; TextEndBattle
-
- db $ff
-
-SSAnne5Text1:
- TX_FAR _SSAnne5Text1
- db "@"
-
-SSAnne5Text2:
- TX_FAR _SSAnne5Text2
- db "@"
-
-SSAnne5Text3:
- TX_FAR _SSAnne5Text3
- db "@"
-
-SSAnne5Text4:
- TX_ASM
- ld hl, SSAnne5TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne5BattleText1:
- TX_FAR _SSAnne5BattleText1
- db "@"
-
-SSAnne5EndBattleText1:
- TX_FAR _SSAnne5EndBattleText1
- db "@"
-
-SSAnne5AfterBattleText1:
- TX_FAR _SSAnne5AfterBattleText1
- db "@"
-
-SSAnne5Text5:
- TX_ASM
- ld hl, SSAnne5TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne5BattleText2:
- TX_FAR _SSAnne5BattleText2
- db "@"
-
-SSAnne5EndBattleText2:
- TX_FAR _SSAnne5EndBattleText2
- db "@"
-
-SSAnne5AfterBattleText2:
- TX_FAR _SSAnne5AfterBattleText2
- db "@"
diff --git a/scripts/ssanne6.asm b/scripts/ssanne6.asm
deleted file mode 100755
index e1998858..00000000
--- a/scripts/ssanne6.asm
+++ /dev/null
@@ -1,72 +0,0 @@
-SSAnne6Script:
- call EnableAutoTextBoxDrawing
- ret
-
-SSAnne6TextPointers:
- dw SSAnne6Text1
- dw SSAnne6Text2
- dw SSAnne6Text3
- dw SSAnne6Text4
- dw SSAnne6Text5
- dw SSAnne6Text6
- dw SSAnne6Text7
-
-SSAnne6Text1:
- TX_FAR _SSAnne6Text1
- db "@"
-
-SSAnne6Text2:
- TX_FAR _SSAnne6Text2
- db "@"
-
-SSAnne6Text3:
- TX_FAR _SSAnne6Text3
- db "@"
-
-SSAnne6Text4:
- TX_FAR _SSAnne6Text4
- db "@"
-
-SSAnne6Text5:
- TX_FAR _SSAnne6Text5
- db "@"
-
-SSAnne6Text6:
- TX_FAR _SSAnne6Text6
- db "@"
-
-SSAnne6Text7:
- TX_ASM
- ld hl, SSAnne6Text_61807
- call PrintText
- ld a, [hRandomAdd]
- bit 7, a
- jr z, .asm_93eb1
- ld hl, SSAnne6Text_6180c
- jr .asm_63292
-.asm_93eb1
- bit 4, a
- jr z, .asm_7436c
- ld hl, SSAnne6Text_61811
- jr .asm_63292
-.asm_7436c
- ld hl, SSAnne6Text_61816
-.asm_63292
- call PrintText
- jp TextScriptEnd
-
-SSAnne6Text_61807:
- TX_FAR _SSAnne6Text_61807
- db "@"
-
-SSAnne6Text_6180c:
- TX_FAR _SSAnne6Text_6180c
- db "@"
-
-SSAnne6Text_61811:
- TX_FAR _SSAnne6Text_61811
- db "@"
-
-SSAnne6Text_61816:
- TX_FAR _SSAnne6Text_61816
- db "@"
diff --git a/scripts/ssanne7.asm b/scripts/ssanne7.asm
deleted file mode 100755
index 1f53d1be..00000000
--- a/scripts/ssanne7.asm
+++ /dev/null
@@ -1,90 +0,0 @@
-SSAnne7Script:
- call SSAnne7Script_6189b
- jp EnableAutoTextBoxDrawing
-
-SSAnne7Script_6189b:
- CheckEvent EVENT_GOT_HM01
- ret nz
- ld hl, wd72d
- set 5, [hl]
- ret
-
-SSAnne7TextPointers:
- dw SSAnne7Text1
- dw SSAnne7Text2
- dw SSAnne7Text3
-
-SSAnne7Text1:
- TX_ASM
- CheckEvent EVENT_GOT_HM01
- jr nz, .asm_797c4
- ld hl, SSAnne7RubText
- call PrintText
- ld hl, ReceivingHM01Text
- call PrintText
- lb bc, HM_01, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, ReceivedHM01Text
- call PrintText
- SetEvent EVENT_GOT_HM01
- ld hl, wd72d
- res 5, [hl]
- jr .asm_0faf5
-.BagFull
- ld hl, HM01NoRoomText
- call PrintText
- jr .asm_0faf5
-.asm_797c4
- ld hl, SSAnne7Text_61932
- call PrintText
-.asm_0faf5
- jp TextScriptEnd
-
-SSAnne7RubText:
- TX_FAR _SSAnne7RubText
- TX_ASM
- ld a, [wAudioROMBank]
- cp BANK(AudioEngine3)
- ld [wAudioSavedROMBank], a
- jr nz, .asm_61908
- call StopAllMusic
- ld a, BANK(Music_PkmnHealed)
- ld [wAudioROMBank], a
-.asm_61908
- ld a, MUSIC_PKMN_HEALED
- ld [wNewSoundID], a
- call PlaySound
-.asm_61910
- ld a, [wChannelSoundIDs]
- cp MUSIC_PKMN_HEALED
- jr z, .asm_61910
- call PlayDefaultMusic
- SetEvent EVENT_RUBBED_CAPTAINS_BACK
- ld hl, wd72d
- res 5, [hl]
- jp TextScriptEnd
-
-ReceivingHM01Text:
- TX_FAR _ReceivingHM01Text
- db "@"
-
-ReceivedHM01Text:
- TX_FAR _ReceivedHM01Text
- db $11, "@"
-
-SSAnne7Text_61932:
- TX_FAR _SSAnne7Text_61932
- db "@"
-
-HM01NoRoomText:
- TX_FAR _HM01NoRoomText
- db "@"
-
-SSAnne7Text2:
- TX_FAR _SSAnne7Text2
- db "@"
-
-SSAnne7Text3:
- TX_FAR _SSAnne7Text3
- db "@"
diff --git a/scripts/ssanne8.asm b/scripts/ssanne8.asm
deleted file mode 100755
index e7cbef3e..00000000
--- a/scripts/ssanne8.asm
+++ /dev/null
@@ -1,164 +0,0 @@
-SSAnne8Script:
- call EnableAutoTextBoxDrawing
- ld hl, SSAnne8TrainerHeaders
- ld de, SSAnne8ScriptPointers
- ld a, [wSSAnne8CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSSAnne8CurScript], a
- ret
-
-SSAnne8ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SSAnne8TextPointers:
- dw SSAnne8Text1
- dw SSAnne8Text2
- dw SSAnne8Text3
- dw SSAnne8Text4
- dw SSAnne8Text5
- dw SSAnne8Text6
- dw SSAnne8Text7
- dw SSAnne8Text8
- dw SSAnne8Text9
- dw PickUpItemText
- dw SSAnne8Text11
-
-SSAnne8TrainerHeaders:
-SSAnne8TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_0
- dw SSAnne8BattleText1 ; TextBeforeBattle
- dw SSAnne8AfterBattleText1 ; TextAfterBattle
- dw SSAnne8EndBattleText1 ; TextEndBattle
- dw SSAnne8EndBattleText1 ; TextEndBattle
-
-SSAnne8TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_1
- dw SSAnne8BattleText2 ; TextBeforeBattle
- dw SSAnne8AfterBattleText2 ; TextAfterBattle
- dw SSAnne8EndBattleText2 ; TextEndBattle
- dw SSAnne8EndBattleText2 ; TextEndBattle
-
-SSAnne8TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_2
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_2
- dw SSAnne8BattleText3 ; TextBeforeBattle
- dw SSAnne8AfterBattleText3 ; TextAfterBattle
- dw SSAnne8EndBattleText3 ; TextEndBattle
- dw SSAnne8EndBattleText3 ; TextEndBattle
-
-SSAnne8TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_8_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_8_TRAINER_3
- dw SSAnne8BattleText4 ; TextBeforeBattle
- dw SSAnne8AfterBattleText4 ; TextAfterBattle
- dw SSAnne8EndBattleText4 ; TextEndBattle
- dw SSAnne8EndBattleText4 ; TextEndBattle
-
- db $ff
-
-SSAnne8Text1:
- TX_ASM
- ld hl, SSAnne8TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text2:
- TX_ASM
- ld hl, SSAnne8TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text3:
- TX_ASM
- ld hl, SSAnne8TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text4:
- TX_ASM
- ld hl, SSAnne8TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne8Text8:
- TX_FAR _SSAnne8Text8
- TX_ASM
- ld a, WIGGLYTUFF
- call PlayCry
- jp TextScriptEnd
-
-SSAnne8BattleText1:
- TX_FAR _SSAnne8BattleText1
- db "@"
-
-SSAnne8EndBattleText1:
- TX_FAR _SSAnne8EndBattleText1
- db "@"
-
-SSAnne8AfterBattleText1:
- TX_FAR _SSAnne8AfterBattleText1
- db "@"
-
-SSAnne8BattleText2:
- TX_FAR _SSAnne8BattleText2
- db "@"
-
-SSAnne8EndBattleText2:
- TX_FAR _SSAnne8EndBattleText2
- db "@"
-
-SSAnne8AfterBattleText2:
- TX_FAR _SSAnne8AfterBattleText2
- db "@"
-
-SSAnne8BattleText3:
- TX_FAR _SSAnne8BattleText3
- db "@"
-
-SSAnne8EndBattleText3:
- TX_FAR _SSAnne8EndBattleText3
- db "@"
-
-SSAnne8AfterBattleText3:
- TX_FAR _SSAnne8AfterBattleText3
- db "@"
-
-SSAnne8BattleText4:
- TX_FAR _SSAnne8BattleText4
- db "@"
-
-SSAnne8EndBattleText4:
- TX_FAR _SSAnne8EndBattleText4
- db "@"
-
-SSAnne8AfterBattleText4:
- TX_FAR _SSAnne8AfterBattleText4
- db "@"
-
-SSAnne8Text5:
- TX_FAR _SSAnne8Text5
- db "@"
-
-SSAnne8Text6:
- TX_FAR _SSAnne8Text6
- db "@"
-
-SSAnne8Text7:
- TX_FAR _SSAnne8Text7
- db "@"
-
-SSAnne8Text9:
- TX_FAR _SSAnne8Text9
- db "@"
-
-SSAnne8Text11:
- TX_FAR _SSAnne8Text11
- db "@"
diff --git a/scripts/ssanne9.asm b/scripts/ssanne9.asm
deleted file mode 100755
index 6e658e5f..00000000
--- a/scripts/ssanne9.asm
+++ /dev/null
@@ -1,193 +0,0 @@
-SSAnne9Script:
- call DisableAutoTextBoxDrawing
- ld hl, SSAnne9TrainerHeaders
- ld de, SSAnne9ScriptPointers
- ld a, [wSSAnne9CurScript]
- call ExecuteCurMapScriptInTable
- ld [wSSAnne9CurScript], a
- ret
-
-SSAnne9ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-SSAnne9TextPointers:
- dw SSAnne9Text1
- dw SSAnne9Text2
- dw SSAnne9Text3
- dw SSAnne9Text4
- dw SSAnne9Text5
- dw PickUpItemText
- dw SSAnne9Text7
- dw SSAnne9Text8
- dw PickUpItemText
- dw SSAnne9Text10
- dw SSAnne9Text11
- dw SSAnne9Text12
- dw SSAnne9Text13
-
-SSAnne9TrainerHeaders:
-SSAnne9TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_0
- dw SSAnne9BattleText1 ; TextBeforeBattle
- dw SSAnne9AfterBattleText1 ; TextAfterBattle
- dw SSAnne9EndBattleText1 ; TextEndBattle
- dw SSAnne9EndBattleText1 ; TextEndBattle
-
-SSAnne9TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_1
- dw SSAnne9BattleText2 ; TextBeforeBattle
- dw SSAnne9AfterBattleText2 ; TextAfterBattle
- dw SSAnne9EndBattleText2 ; TextEndBattle
- dw SSAnne9EndBattleText2 ; TextEndBattle
-
-SSAnne9TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_2
- dw SSAnne9BattleText3 ; TextBeforeBattle
- dw SSAnne9AfterBattleText3 ; TextAfterBattle
- dw SSAnne9EndBattleText3 ; TextEndBattle
- dw SSAnne9EndBattleText3 ; TextEndBattle
-
-SSAnne9TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_SS_ANNE_9_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_SS_ANNE_9_TRAINER_3
- dw SSAnne9BattleText4 ; TextBeforeBattle
- dw SSAnne9AfterBattleText4 ; TextAfterBattle
- dw SSAnne9EndBattleText4 ; TextEndBattle
- dw SSAnne9EndBattleText4 ; TextEndBattle
-
- db $ff
-
-SSAnne9Text1:
- TX_ASM
- ld hl, SSAnne9TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text2:
- TX_ASM
- ld hl, SSAnne9TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text3:
- TX_ASM
- ld hl, SSAnne9TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text4:
- TX_ASM
- ld hl, SSAnne9TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-SSAnne9Text5:
- TX_ASM
- call SaveScreenTilesToBuffer1
- ld hl, SSAnne9Text_61bf2
- call PrintText
- call LoadScreenTilesFromBuffer1
- ld a, SNORLAX
- call DisplayPokedex
- jp TextScriptEnd
-
-SSAnne9Text_61bf2:
- TX_FAR _SSAnne9Text_61bf2
- db "@"
-
-SSAnne9Text7:
- TX_ASM
- ld hl, SSAnne9Text_61c01
- call PrintText
- jp TextScriptEnd
-
-SSAnne9Text_61c01:
- TX_FAR _SSAnne9Text_61c01
- db "@"
-
-SSAnne9Text8:
- TX_ASM
- ld hl, SSAnne9Text_61c10
- call PrintText
- jp TextScriptEnd
-
-SSAnne9Text_61c10:
- TX_FAR _SSAnne9Text_61c10
- db "@"
-
-SSAnne9Text10:
- TX_ASM
- callba Func_f2570
- jp TextScriptEnd
-
-SSAnne9Text11:
- TX_ASM
- callba Func_f257c
- jp TextScriptEnd
-
-SSAnne9Text12:
- TX_ASM
- callba Func_f2588
- jp TextScriptEnd
-
-SSAnne9Text13:
- TX_ASM
- callba Func_f2594
- jp TextScriptEnd
-
-SSAnne9BattleText1:
- TX_FAR _SSAnne9BattleText1
- db "@"
-
-SSAnne9EndBattleText1:
- TX_FAR _SSAnne9EndBattleText1
- db "@"
-
-SSAnne9AfterBattleText1:
- TX_FAR _SSAnne9AfterBattleText1
- db "@"
-
-SSAnne9BattleText2:
- TX_FAR _SSAnne9BattleText2
- db "@"
-
-SSAnne9EndBattleText2:
- TX_FAR _SSAnne9EndBattleText2
- db "@"
-
-SSAnne9AfterBattleText2:
- TX_FAR _SSAnne9AfterBattleText2
- db "@"
-
-SSAnne9BattleText3:
- TX_FAR _SSAnne9BattleText3
- db "@"
-
-SSAnne9EndBattleText3:
- TX_FAR _SSAnne9EndBattleText3
- db "@"
-
-SSAnne9AfterBattleText3:
- TX_FAR _SSAnne9AfterBattleText3
- db "@"
-
-SSAnne9BattleText4:
- TX_FAR _SSAnne9BattleText4
- db "@"
-
-SSAnne9EndBattleText4:
- TX_FAR _SSAnne9EndBattleText4
- db "@"
-
-SSAnne9AfterBattleText4:
- TX_FAR _SSAnne9AfterBattleText4
- db "@"
diff --git a/scripts/tradecenter.asm b/scripts/tradecenter.asm
deleted file mode 100644
index a200e719..00000000
--- a/scripts/tradecenter.asm
+++ /dev/null
@@ -1,38 +0,0 @@
-TradeCenterScript:
- call EnableAutoTextBoxDrawing
- ld a, [$ffaa]
- cp $2
- ld a, SPRITE_FACING_LEFT
- jr z, .next
- ld a, SPRITE_FACING_RIGHT
-.next
- ld [hSpriteFacingDirection], a
- ld a, $1
- ld [H_SPRITEINDEX], a
- call SetSpriteFacingDirection
- ld hl, wd72d
- bit 0, [hl]
- set 0, [hl]
- ret nz
- ld hl, wSpriteStateData2 + $14
- ld a, $8
- ld [hli], a
- ld a, $a
- ld [hl], a
- ld a, SPRITE_FACING_LEFT
- ld [wSpriteStateData1 + $19], a
- ld a, [$ffaa]
- cp $2
- ret z
- ld a, $7
- ld [wSpriteStateData2 + $15], a
- ld a, SPRITE_FACING_RIGHT
- ld [wSpriteStateData1 + $19], a
- ret
-
-TradeCenterTextPointers:
- dw TradeCenterText1
-
-TradeCenterText1:
- TX_FAR _TradeCenterText1
- db "@"
diff --git a/scripts/undergroundpathentranceroute5.asm b/scripts/undergroundpathentranceroute5.asm
deleted file mode 100755
index 18707c4a..00000000
--- a/scripts/undergroundpathentranceroute5.asm
+++ /dev/null
@@ -1,18 +0,0 @@
-UndergroundPathEntranceRoute5Script:
- ld a, ROUTE_5
- ld [wLastMap], a
- ret
-
-UndergroundPathEntranceRoute5_5d6af:
- db "@"
-
-UndergroundPathEntranceRoute5TextPointers:
- dw UndergroundPathEntranceRoute5Text1
-
-UndergroundPathEntranceRoute5Text1:
- TX_ASM
- ld a, $9
- ld [wWhichTrade], a
- predef DoInGameTradeDialogue
- ld hl, UndergroundPathEntranceRoute5_5d6af
- ret
diff --git a/scripts/undergroundpathentranceroute6.asm b/scripts/undergroundpathentranceroute6.asm
deleted file mode 100755
index c6dfdcc9..00000000
--- a/scripts/undergroundpathentranceroute6.asm
+++ /dev/null
@@ -1,11 +0,0 @@
-UndergroundPathEntranceRoute6Script:
- ld a, ROUTE_6
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathEntranceRoute6TextPointers:
- dw UndergroundPathEntranceRoute6Text1
-
-UndergroundPathEntranceRoute6Text1:
- TX_FAR _UndergrdTunnelEntRoute6Text1
- db "@"
diff --git a/scripts/undergroundpathentranceroute7.asm b/scripts/undergroundpathentranceroute7.asm
deleted file mode 100755
index 84c8e4d5..00000000
--- a/scripts/undergroundpathentranceroute7.asm
+++ /dev/null
@@ -1,11 +0,0 @@
-UndergroundPathEntranceRoute7Script:
- ld a, ROUTE_7
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathEntranceRoute7TextPointers:
- dw UndergroundPathEntranceRoute7Text1
-
-UndergroundPathEntranceRoute7Text1:
- TX_FAR _UndergroundPathEntRoute7Text1
- db "@"
diff --git a/scripts/undergroundpathentranceroute7copy.asm b/scripts/undergroundpathentranceroute7copy.asm
deleted file mode 100755
index c623eeec..00000000
--- a/scripts/undergroundpathentranceroute7copy.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-UndergroundPathEntranceRoute7CopyScript:
- ld a, ROUTE_7
- ld [wLastMap], a
- ret
-
-UndergroundPathEntranceRoute7CopyTextPointers:
- dw UGPathRoute7EntranceUnusedText_5d773
- dw UGPathRoute7EntranceUnusedText_5d77d
-
-UGPathRoute7EntranceUnusedText_5d773:
- TX_FAR _UGPathRoute7EntranceUnusedText_5d773
- db "@"
-
-UGPathRoute7EntranceUnusedText_5d778:
- TX_FAR _UGPathRoute7EntranceUnusedText_5d778
- db "@"
-
-UGPathRoute7EntranceUnusedText_5d77d:
- TX_FAR _UGPathRoute7EntranceUnusedText_5d77d
- db "@"
-
-UGPathRoute7EntranceUnusedText_5d782:
- TX_FAR _UGPathRoute7EntranceUnusedText_5d782
- db "@"
diff --git a/scripts/undergroundpathentranceroute8.asm b/scripts/undergroundpathentranceroute8.asm
deleted file mode 100755
index ad0b60ab..00000000
--- a/scripts/undergroundpathentranceroute8.asm
+++ /dev/null
@@ -1,11 +0,0 @@
-UndergroundPathEntranceRoute8Script:
- ld a, ROUTE_8
- ld [wLastMap], a
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathEntranceRoute8TextPointers:
- dw UndergroundPathEntranceRoute8Text1
-
-UndergroundPathEntranceRoute8Text1:
- TX_FAR _UndergroundPathEntRoute8Text1
- db "@"
diff --git a/scripts/undergroundpathns.asm b/scripts/undergroundpathns.asm
deleted file mode 100755
index 8c744740..00000000
--- a/scripts/undergroundpathns.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-UndergroundPathNSScript:
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathNSTextPointers:
- db "@"
diff --git a/scripts/undergroundpathwe.asm b/scripts/undergroundpathwe.asm
deleted file mode 100755
index 921d3dab..00000000
--- a/scripts/undergroundpathwe.asm
+++ /dev/null
@@ -1,5 +0,0 @@
-UndergroundPathWEScript:
- jp EnableAutoTextBoxDrawing
-
-UndergroundPathWETextPointers:
- db "@"
diff --git a/scripts/unknowndungeon1.asm b/scripts/unknowndungeon1.asm
deleted file mode 100755
index 3b5fae5d..00000000
--- a/scripts/unknowndungeon1.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-UnknownDungeon1Script:
- jp EnableAutoTextBoxDrawing
-
-UnknownDungeon1TextPointers:
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
diff --git a/scripts/unknowndungeon2.asm b/scripts/unknowndungeon2.asm
deleted file mode 100755
index 55ebb752..00000000
--- a/scripts/unknowndungeon2.asm
+++ /dev/null
@@ -1,8 +0,0 @@
-UnknownDungeon2Script:
- jp EnableAutoTextBoxDrawing
-
-UnknownDungeon2TextPointers:
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
diff --git a/scripts/unknowndungeon3.asm b/scripts/unknowndungeon3.asm
deleted file mode 100755
index 46a1cafd..00000000
--- a/scripts/unknowndungeon3.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-UnknownDungeon3Script:
- call EnableAutoTextBoxDrawing
- ld hl, UnknownDungeon3TrainerHeaders
- ld de, .ScriptPointers
- ld a, [wUnknownDungeon3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wUnknownDungeon3CurScript], a
- ret
-
-.ScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-UnknownDungeon3TextPointers:
- dw MewtwoText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
-
-UnknownDungeon3TrainerHeaders:
-MewtwoTrainerHeader:
- dbEventFlagBit EVENT_BEAT_MEWTWO
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MEWTWO
- dw MewtwoBattleText ; TextBeforeBattle
- dw MewtwoBattleText ; TextAfterBattle
- dw MewtwoBattleText ; TextEndBattle
- dw MewtwoBattleText ; TextEndBattle
-
- db $ff
-
-MewtwoText:
- TX_ASM
- ld hl, MewtwoTrainerHeader
- call TalkToTrainer
- jp TextScriptEnd
-
-MewtwoBattleText:
- TX_FAR _MewtwoBattleText
- TX_ASM
- ld a, MEWTWO
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
diff --git a/scripts/vermilioncity.asm b/scripts/vermilioncity.asm
deleted file mode 100755
index 7127f814..00000000
--- a/scripts/vermilioncity.asm
+++ /dev/null
@@ -1,286 +0,0 @@
-VermilionCityScript:
- call EnableAutoTextBoxDrawing
- ld hl, wd492
- res 7, [hl]
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- push hl
- call nz, InitCityScript
- pop hl
- bit 5, [hl]
- res 5, [hl]
- call nz, SetFirstLockTrashCanIndex
- ld hl, VermilionCityScriptPointers
- ld a, [wVermilionCityCurScript]
- call JumpTable
- call VermilionCityScript_19869
- ret
-
-VermilionCityScript_19869:
- CheckEventHL EVENT_152
- ret nz
- CheckEventReuseHL EVENT_GOT_BIKE_VOUCHER
- ret z
- SetEventReuseHL EVENT_152
- ret
-
-SetFirstLockTrashCanIndex:
- call Random
- ld a, [hRandomAdd]
- ld b, a
- ld a, [hRandomSub]
- adc b
- and $e
- ld [wFirstLockTrashCanIndex], a
- ret
-
-InitCityScript:
- CheckEventHL EVENT_SS_ANNE_LEFT
- ret z
- CheckEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
- SetEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
- ret nz
- ld a, $2
- ld [wVermilionCityCurScript], a
- ret
-
-VermilionCityScriptPointers:
- dw VermilionCityScript0
- dw VermilionCityScript1
- dw VermilionCityScript2
- dw VermilionCityScript3
- dw VermilionCityScript4
-
-VermilionCityScript0:
- ld a, [wSpritePlayerStateData1FacingDirection]
- and a ; cp SPRITE_FACING_DOWN
- jr nz, .return
- ld hl, SSAnneTicketCheckCoords
- call ArePlayerCoordsInArray
- jr nc, .return
- xor a
- ld [hJoyHeld], a
- ld [wcf0d], a
- ld a, $3
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- CheckEvent EVENT_SS_ANNE_LEFT
- jr nz, .shipHasDeparted
- ld b, S_S_TICKET
- predef GetQuantityOfItemInBag
- ld a, b
- and a
- ret nz
-.shipHasDeparted
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wVermilionCityCurScript], a
- ret
-
-.return
- ret
-
-SSAnneTicketCheckCoords:
- db $1e,$12 ; y, x
- db $ff
-
-VermilionCityScript4:
- ld hl, SSAnneTicketCheckCoords
- call ArePlayerCoordsInArray
- ret c
- ld a, $0
- ld [wVermilionCityCurScript], a
- ret
-
-VermilionCityScript2:
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, D_UP
- ld [wSimulatedJoypadStatesEnd], a
- ld [wSimulatedJoypadStatesEnd + 1], a
- ld a, 2
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $3
- ld [wVermilionCityCurScript], a
- ret
-
-VermilionCityScript3:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- xor a
- ld [wJoyIgnore], a
- ld [hJoyHeld], a
- ld a, $0
- ld [wVermilionCityCurScript], a
- ret
-
-VermilionCityScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld c, 10
- call DelayFrames
- ld a, $0
- ld [wVermilionCityCurScript], a
- ret
-
-VermilionCityTextPointers:
- dw VermilionCityText1
- dw VermilionCityText2
- dw VermilionCityText3
- dw VermilionCityText4
- dw VermilionCityText5
- dw VermilionCityText6
- dw VermilionCityText7
- dw VermilionCityText8
- dw VermilionCityText9
- dw MartSignText
- dw PokeCenterSignText
- dw VermilionCityText12
- dw VermilionCityText13
- dw VermilionCityText14
-
-VermilionCityText1:
- TX_FAR _VermilionCityText1
- db "@"
-
-VermilionCityText2:
- TX_ASM
- CheckEvent EVENT_SS_ANNE_LEFT
- jr nz, .shipHasDeparted
- ld hl, VermilionCityTextDidYouSee
- call PrintText
- jr .end
-.shipHasDeparted
- ld hl, VermilionCityTextSSAnneDeparted
- call PrintText
-.end
- jp TextScriptEnd
-
-VermilionCityTextDidYouSee:
- TX_FAR _VermilionCityTextDidYouSee
- db "@"
-
-VermilionCityTextSSAnneDeparted:
- TX_FAR _VermilionCityTextSSAnneDeparted
- db "@"
-
-VermilionCityText3:
- TX_ASM
- CheckEvent EVENT_SS_ANNE_LEFT
- jr nz, .shipHasDeparted
- ld a, [wSpritePlayerStateData1FacingDirection]
- cp SPRITE_FACING_RIGHT
- jr z, .greetPlayer
- ld hl, .inFrontOfOrBehindGuardCoords
- call ArePlayerCoordsInArray
- jr nc, .greetPlayerAndCheckTicket
-.greetPlayer
- ld hl, SSAnneWelcomeText4
- call PrintText
- jr .end
-.greetPlayerAndCheckTicket
- ld hl, SSAnneWelcomeText9
- call PrintText
- ld b, S_S_TICKET
- predef GetQuantityOfItemInBag
- ld a, b
- and a
- jr nz, .playerHasTicket
- ld hl, SSAnneNoTicketText
- call PrintText
- jr .end
-.playerHasTicket
- ld hl, SSAnneFlashedTicketText
- call PrintText
- ld a, $4
- ld [wVermilionCityCurScript], a
- jr .end
-.shipHasDeparted
- ld hl, SSAnneNotHereText
- call PrintText
-.end
- jp TextScriptEnd
-
-.inFrontOfOrBehindGuardCoords:
- db $1d,$13 ; y, x of tile in front of guard
- db $1f,$13 ; y, x of tile behind guard
- db $ff
-
-SSAnneWelcomeText4:
- TX_FAR _SSAnneWelcomeText4
- db "@"
-
-SSAnneWelcomeText9:
- TX_FAR _SSAnneWelcomeText9
- db "@"
-
-SSAnneFlashedTicketText:
- TX_FAR _SSAnneFlashedTicketText
- db "@"
-
-SSAnneNoTicketText:
- TX_FAR _SSAnneNoTicketText
- db "@"
-
-SSAnneNotHereText:
- TX_FAR _SSAnneNotHereText
- db "@"
-
-VermilionCityText4:
- TX_FAR _VermilionCityText4
- db "@"
-
-VermilionCityText5:
- TX_FAR _VermilionCityText5
- TX_ASM
- ld a, MACHOP
- call PlayCry
- call WaitForSoundToFinish
- ld hl, VermilionCityText15
- ret
-
-VermilionCityText15:
- TX_FAR _VermilionCityText15
- db "@"
-
-VermilionCityText6:
- TX_FAR _VermilionCityText6
- db "@"
-
-VermilionCityText8:
- TX_ASM
- callba Func_f1a8a
- jp TextScriptEnd
-
-VermilionCityText9:
- TX_ASM
- callba Func_f1a96
- jp TextScriptEnd
-
-VermilionCityText12:
- TX_ASM
- callba Func_f1aa2
- jp TextScriptEnd
-
-VermilionCityText13:
- TX_ASM
- callba Func_f1aae
- jp TextScriptEnd
-
-VermilionCityText14:
- TX_ASM
- callba Func_f1aba
- jp TextScriptEnd
-
-VermilionCityText7:
- TX_ASM
- callba Func_f1a0f
- jp TextScriptEnd
diff --git a/scripts/vermiliondock.asm b/scripts/vermiliondock.asm
deleted file mode 100755
index e1378db3..00000000
--- a/scripts/vermiliondock.asm
+++ /dev/null
@@ -1,215 +0,0 @@
-VermilionDockScript:
- call EnableAutoTextBoxDrawing
- CheckEventHL EVENT_STARTED_WALKING_OUT_OF_DOCK
- jr nz, .asm_1db8d
- CheckEventReuseHL EVENT_GOT_HM01
- ret z
- ld a, [wDestinationWarpID]
- cp $1
- ret nz
- CheckEventReuseHL EVENT_SS_ANNE_LEFT
- jp z, VermilionDock_1db9b
- SetEventReuseHL EVENT_STARTED_WALKING_OUT_OF_DOCK
- call Delay3
- ld hl, wd730
- set 7, [hl]
- ld hl, wSimulatedJoypadStatesEnd
- ld a, D_UP
- ld [hli], a
- ld [hli], a
- ld [hl], a
- ld a, $3
- ld [wSimulatedJoypadStatesIndex], a
- xor a
- ld [wSpriteStateData2 + $06], a
- ld [wOverrideSimulatedJoypadStatesMask], a
- dec a
- ld [wJoyIgnore], a
- ret
-.asm_1db8d
- CheckEventAfterBranchReuseHL EVENT_WALKED_OUT_OF_DOCK, EVENT_STARTED_WALKING_OUT_OF_DOCK
- ret nz
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- ld [wJoyIgnore], a
- SetEventReuseHL EVENT_WALKED_OUT_OF_DOCK
- ret
-
-VermilionDock_1db9b:
- SetEventForceReuseHL EVENT_SS_ANNE_LEFT
- ld a, $ff
- ld [wJoyIgnore], a
- call StopAllMusic
- ld c, BANK(Music_Surfing)
- ld a, MUSIC_SURFING
- call PlayMusic
- callba LoadSmokeTileFourTimes
- xor a
- ld [wSpriteStateData1 + 2], a
- ld c, 120
- call DelayFrames
- ld b, $9c
- call CopyScreenTileBufferToVRAM
- coord hl, 0, 10
- ld bc, SCREEN_WIDTH * 6
- ld a, $14 ; water tile
- call FillMemory
- ld a, 1
- ld [H_AUTOBGTRANSFERENABLED], a
- call Delay3
- xor a
- ld [H_AUTOBGTRANSFERENABLED], a
- ld [wSSAnneSmokeDriftAmount], a
- ld [rOBP1], a
- call UpdateGBCPal_OBP1
- ld a, 88
- ld [wSSAnneSmokeX], a
- ld hl, wMapViewVRAMPointer
- ld c, [hl]
- inc hl
- ld b, [hl]
- push bc
- push hl
- ld a, SFX_SS_ANNE_HORN
- call PlaySoundWaitForCurrent
- ld a, $ff
- ld [wUpdateSpritesEnabled], a
- ld d, $0
- ld e, $8
-.asm_1dbfa
- ld hl, $0002
- add hl, bc
- ld a, l
- ld [wMapViewVRAMPointer], a
- ld a, h
- ld [wMapViewVRAMPointer + 1], a
- push hl
- push de
- call ScheduleEastColumnRedraw
- call VermilionDock_EmitSmokePuff
- pop de
- ld b, $10
-.asm_1dc11
- call VermilionDock_AnimSmokePuffDriftRight
- ld c, $8
-.asm_1dc16
- call VermilionDock_1dc7c
- dec c
- jr nz, .asm_1dc16
- inc d
- dec b
- jr nz, .asm_1dc11
- pop bc
- dec e
- jr nz, .asm_1dbfa
- xor a
- ld [rWY], a
- ld [hWY], a
- call VermilionDock_EraseSSAnne
- ld a, $90
- ld [hWY], a
- ld a, $1
- ld [wUpdateSpritesEnabled], a
- pop hl
- pop bc
- ld [hl], b
- dec hl
- ld [hl], c
- call LoadPlayerSpriteGraphics
- ld hl, wNumberOfWarps
- dec [hl]
- ret
-
-VermilionDock_AnimSmokePuffDriftRight:
- push bc
- push de
- ld hl, wOAMBuffer + 4 * $4 + 1 ; x coord
- ld a, [wSSAnneSmokeDriftAmount]
- swap a
- ld c, a
- ld de, 4
-.loop
- inc [hl]
- inc [hl]
- add hl, de
- dec c
- jr nz, .loop
- pop de
- pop bc
- ret
-
-VermilionDock_EmitSmokePuff:
-; new smoke puff above the S.S. Anne's front smokestack
- ld a, [wSSAnneSmokeX]
- sub 16
- ld [wSSAnneSmokeX], a
- ld c, a
- ld b, 100 ; Y
- ld a, [wSSAnneSmokeDriftAmount]
- inc a
- ld [wSSAnneSmokeDriftAmount], a
- ld a, $1
- ld de, VermilionDockOAMBlock
- call WriteOAMBlock
- ret
-
-VermilionDockOAMBlock:
- db $fc, $10
- db $fd, $10
- db $fe, $10
- db $ff, $10
-
-VermilionDock_1dc7c:
- ld h, d
- ld l, $50
- call .asm_1dc86
- ld h, $0
- ld l, $80
-.asm_1dc86
- ld a, [rLY]
- cp l
- jr nz, .asm_1dc86
- ld a, h
- ld [rSCX], a
-.asm_1dc8e
- ld a, [rLY]
- cp h
- jr z, .asm_1dc8e
- ret
-
-VermilionDock_EraseSSAnne:
-; Fill the area the S.S. Anne occupies in BG map 0 with water tiles.
- ld hl, wVermilionDockTileMapBuffer
- ld bc, (5 * BG_MAP_WIDTH) + SCREEN_WIDTH
- ld a, $14 ; water tile
- call FillMemory
- ld hl, vBGMap0 + 10 * BG_MAP_WIDTH
- ld de, wVermilionDockTileMapBuffer
- ld bc, (6 * BG_MAP_WIDTH) / 16
- call CopyVideoData
-
-; Replace the blocks of the lower half of the ship with water blocks. This
-; leaves the upper half alone, but that doesn't matter because replacing any of
-; the blocks is unnecessary because the blocks the ship occupies are south of
-; the player and won't be redrawn when the player automatically walks north and
-; exits the map. This code could be removed without affecting anything.
- overworldMapCoord hl, 5, 2, VERMILION_DOCK_WIDTH
- ld a, $d ; water block
- ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hl], a
-
- ld a, SFX_SS_ANNE_HORN
- call PlaySound
- ld c, 120
- call DelayFrames
- ret
-
-VermilionDockTextPointers:
- dw VermilionDockText1
-
-VermilionDockText1:
- TX_FAR _VermilionDockText1
- db "@"
diff --git a/scripts/vermiliongym.asm b/scripts/vermiliongym.asm
deleted file mode 100755
index 90ffc34c..00000000
--- a/scripts/vermiliongym.asm
+++ /dev/null
@@ -1,273 +0,0 @@
-VermilionGymScript:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- push hl
- call nz, VermilionGymScript_5ca4c
- pop hl
- bit 6, [hl]
- res 6, [hl]
- call nz, VermilionGymScript_5ca6d
- call EnableAutoTextBoxDrawing
- ld hl, VermilionGymTrainerHeader0
- ld de, VermilionGymScriptPointers
- ld a, [wVermilionGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wVermilionGymCurScript], a
- ret
-
-VermilionGymScript_5ca4c:
- ld hl, Gym3CityName
- ld de, Gym3LeaderName
- jp LoadGymLeaderAndCityName
-
-Gym3CityName:
- db "VERMILION CITY@"
-
-Gym3LeaderName:
- db "LT.SURGE@"
-
-VermilionGymScript_5ca6d:
- CheckEvent EVENT_2ND_LOCK_OPENED
- jr nz, .opened_second_lock
- ld a, $24
- jr .load_door_tile
-
-.opened_second_lock
- ld a, SFX_GO_INSIDE
- call PlaySound
- ld a, $5
-.load_door_tile
- ld [wNewTileBlockID], a
- lb bc, 2, 2
- predef_jump ReplaceTileBlock
-
-VermilionGymScript_5ca8a:
- xor a
- ld [wJoyIgnore], a
- ld [wVermilionGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-VermilionGymScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw VermilionGymScript3
-
-VermilionGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, VermilionGymScript_5ca8a
- ld a, $f0
- ld [wJoyIgnore], a
-
-VermilionGymScript_5caaa:
- ld a, $6
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_LT_SURGE
- lb bc, TM_24, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $7
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM24
- jr .set_gym_flags
-
-.BagFull
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.set_gym_flags
- ld hl, wObtainedBadges
- set 2, [hl]
- ld hl, wBeatGymFlags
- set 2, [hl]
-
- ; deactivate gym trainers
- SetEventRange EVENT_BEAT_VERMILION_GYM_TRAINER_0, EVENT_BEAT_VERMILION_GYM_TRAINER_2
-
- jp VermilionGymScript_5ca8a
-
-VermilionGymTextPointers:
- dw VermilionGymText1
- dw VermilionGymText2
- dw VermilionGymText3
- dw VermilionGymText4
- dw VermilionGymText5
- dw VermilionGymText6
- dw VermilionGymText7
- dw VermilionGymText8
-
-VermilionGymTrainerHeaders:
-VermilionGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_0
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_0
- dw VermilionGymBattleText1 ; TextBeforeBattle
- dw VermilionGymAfterBattleText1 ; TextAfterBattle
- dw VermilionGymEndBattleText1 ; TextEndBattle
- dw VermilionGymEndBattleText1 ; TextEndBattle
-
-VermilionGymTrainerHeader1:
- dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_1
- dw VermilionGymBattleText2 ; TextBeforeBattle
- dw VermilionGymAfterBattleText2 ; TextAfterBattle
- dw VermilionGymEndBattleText2 ; TextEndBattle
- dw VermilionGymEndBattleText2 ; TextEndBattle
-
-VermilionGymTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_VERMILION_GYM_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VERMILION_GYM_TRAINER_2
- dw VermilionGymBattleText3 ; TextBeforeBattle
- dw VermilionGymAfterBattleText3 ; TextAfterBattle
- dw VermilionGymEndBattleText3 ; TextEndBattle
- dw VermilionGymEndBattleText3 ; TextEndBattle
-
- db $ff
-
-VermilionGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_LT_SURGE
- jr z, .engage_surge
- CheckEventReuseA EVENT_GOT_TM24
- jr nz, .after_win_text
- call z, VermilionGymScript_5caaa
- call DisableWaitingAfterTextDisplay
- jr .text_script_end
-
-.after_win_text
- ld hl, VermilionGymText_5cb72
- call PrintText
- jr .text_script_end
-
-.engage_surge
- ld hl, VermilionGymText_5cb6d
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, ReceivedThunderbadgeText
- ld de, ReceivedThunderbadgeText
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $3
- ld [wGymLeaderNo], a
- xor a
- ld [hJoyHeld], a
- ld a, $3
- ld [wVermilionGymCurScript], a
- ld [wCurMapScript], a
-.text_script_end
- jp TextScriptEnd
-
-VermilionGymText_5cb6d:
- TX_FAR _VermilionGymText_5cb6d
- db "@"
-
-VermilionGymText_5cb72:
- TX_FAR _VermilionGymText_5cb72
- db "@"
-
-VermilionGymText6:
- TX_FAR _VermilionGymText_5cb77
- db "@"
-
-VermilionGymText7:
- TX_FAR _ReceivedTM24Text
- TX_SFX_KEY_ITEM
- TX_FAR _TM24ExplanationText
- db "@"
-
-VermilionGymText8:
- TX_FAR _TM24NoRoomText
- db "@"
-
-ReceivedThunderbadgeText:
- TX_FAR _ReceivedThunderbadgeText
- db "@"
-
-VermilionGymText2:
- TX_ASM
- ld hl, VermilionGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VermilionGymBattleText1:
- TX_FAR _VermilionGymBattleText1
- db "@"
-
-VermilionGymEndBattleText1:
- TX_FAR _VermilionGymEndBattleText1
- db "@"
-
-VermilionGymAfterBattleText1:
- TX_FAR _VermilionGymAfterBattleText1
- db "@"
-
-VermilionGymText3:
- TX_ASM
- ld hl, VermilionGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-VermilionGymBattleText2:
- TX_FAR _VermilionGymBattleText2
- db "@"
-
-VermilionGymEndBattleText2:
- TX_FAR _VermilionGymEndBattleText2
- db "@"
-
-VermilionGymAfterBattleText2:
- TX_FAR _VermilionGymAfterBattleText2
- db "@"
-
-VermilionGymText4:
- TX_ASM
- ld hl, VermilionGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-VermilionGymBattleText3:
- TX_FAR _VermilionGymBattleText3
- db "@"
-
-VermilionGymEndBattleText3:
- TX_FAR _VermilionGymEndBattleText3
- db "@"
-
-VermilionGymAfterBattleText3:
- TX_FAR _VermilionGymAfterBattleText3
- db "@"
-
-VermilionGymText5:
- TX_ASM
- ld a, [wBeatGymFlags]
- bit 2, a
- jr nz, .beat_surge
- ld hl, VermilionGymText_5cbf4
- call PrintText
- jr .text_script_end
-
-.beat_surge
- ld hl, VermilionGymText_5cbf9
- call PrintText
-.text_script_end
- jp TextScriptEnd
-
-VermilionGymText_5cbf4:
- TX_FAR _VermilionGymText_5cbf4
- db "@"
-
-VermilionGymText_5cbf9:
- TX_FAR _VermilionGymText_5cbf9
- db "@"
diff --git a/scripts/vermilionhouse1.asm b/scripts/vermilionhouse1.asm
deleted file mode 100755
index d2dac4ca..00000000
--- a/scripts/vermilionhouse1.asm
+++ /dev/null
@@ -1,24 +0,0 @@
-VermilionHouse1Script:
- call EnableAutoTextBoxDrawing
- ret
-
-VermilionHouse1TextPointers:
- dw VermilionHouse1Text1
- dw VermilionHouse1Text2
- dw VermilionHouse1Text3
-
-VermilionHouse1Text1:
- TX_FAR _VermilionHouse1Text1
- db "@"
-
-VermilionHouse1Text2:
- TX_FAR _VermilionHouse1Text2
- TX_ASM
- ld a, PIDGEY
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-VermilionHouse1Text3:
- TX_FAR _VermilionHouse1Text3
- db "@"
diff --git a/scripts/vermilionhouse2.asm b/scripts/vermilionhouse2.asm
deleted file mode 100755
index 007df5ec..00000000
--- a/scripts/vermilionhouse2.asm
+++ /dev/null
@@ -1,57 +0,0 @@
-VermilionHouse2Script:
- jp EnableAutoTextBoxDrawing
-
-VermilionHouse2TextPointers:
- dw VermilionHouse2Text1
-
-VermilionHouse2Text1:
- TX_ASM
- ld a, [wd728]
- bit 3, a
- jr nz, .asm_03ef5
- ld hl, VermilionHouse2Text_560b1
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_eb1b7
- lb bc, OLD_ROD, 1
- call GiveItem
- jr nc, .BagFull
- ld hl, wd728
- set 3, [hl]
- ld hl, VermilionHouse2Text_560b6
- jr .asm_5dd95
-.BagFull
- ld hl, VermilionHouse2Text_560ca
- jr .asm_5dd95
-.asm_eb1b7
- ld hl, VermilionHouse2Text_560c0
- jr .asm_5dd95
-.asm_03ef5
- ld hl, VermilionHouse2Text_560c5
-.asm_5dd95
- call PrintText
- jp TextScriptEnd
-
-VermilionHouse2Text_560b1:
- TX_FAR _VermilionHouse2Text_560b1
- db "@"
-
-VermilionHouse2Text_560b6:
- TX_FAR _VermilionHouse2Text_560b6
- db $0B
- TX_FAR _VermilionHouse2Text_560bb
- db "@"
-
-VermilionHouse2Text_560c0:
- TX_FAR _VermilionHouse2Text_560c0
- db "@"
-
-VermilionHouse2Text_560c5:
- TX_FAR _VermilionHouse2Text_560c5
- db "@"
-
-VermilionHouse2Text_560ca:
- TX_FAR _VermilionHouse2Text_560ca
- db "@"
diff --git a/scripts/vermilionhouse3.asm b/scripts/vermilionhouse3.asm
deleted file mode 100755
index aeada0d0..00000000
--- a/scripts/vermilionhouse3.asm
+++ /dev/null
@@ -1,9 +0,0 @@
-VermilionHouse3Script:
- jp EnableAutoTextBoxDrawing
-
-VermilionHouse3TextPointers:
- dw VermilionHouse3Text1
-
-VermilionHouse3Text1:
- TX_FAR TeachingHMsText
- db "@"
diff --git a/scripts/vermilionmart.asm b/scripts/vermilionmart.asm
deleted file mode 100755
index 2d4df78d..00000000
--- a/scripts/vermilionmart.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-VermilionMartScript:
- jp EnableAutoTextBoxDrawing
-
-VermilionMartTextPointers:
- dw VermilionCashierText
- dw VermilionMartText2
- dw VermilionMartText3
-
-VermilionMartText2:
- TX_FAR _VermilionMartText2
- db "@"
-
-VermilionMartText3:
- TX_FAR _VermilionMartText3
- db "@"
diff --git a/scripts/vermilionpokecenter.asm b/scripts/vermilionpokecenter.asm
deleted file mode 100755
index af481a16..00000000
--- a/scripts/vermilionpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-VermilionPokecenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-VermilionPokecenterTextPointers:
- dw VermilionHealNurseText
- dw VermilionPokecenterText2
- dw VermilionPokecenterText3
- dw VermilionTradeNurseText
- dw VermilionPokecenterText5
-
-VermilionHealNurseText:
- TX_POKECENTER_NURSE
-
-VermilionPokecenterText2:
- TX_FAR _VermilionPokecenterText2
- db "@"
-
-VermilionPokecenterText3:
- TX_FAR _VermilionPokecenterText3
- db "@"
-
-VermilionTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-VermilionPokecenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/scripts/victoryroad1.asm b/scripts/victoryroad1.asm
deleted file mode 100755
index 0f4de43e..00000000
--- a/scripts/victoryroad1.asm
+++ /dev/null
@@ -1,107 +0,0 @@
-VictoryRoad1Script:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- call nz, .next
- call EnableAutoTextBoxDrawing
- ld hl, VictoryRoad1TrainerHeaders
- ld de, VictoryRoad1ScriptPointers
- ld a, [wVictoryRoad1CurScript]
- call ExecuteCurMapScriptInTable
- ld [wVictoryRoad1CurScript], a
- ret
-.next
- CheckEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
- ret z
- ld a, $1d
- ld [wNewTileBlockID], a
- lb bc, 6, 4
- predef_jump ReplaceTileBlock
-
-VictoryRoad1ScriptPointers:
- dw VictoryRoad1Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-VictoryRoad1Script0:
- CheckEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
- jp nz, CheckFightingMapTrainers
- ld hl, CoordsData_5da5c
- call CheckBoulderCoords
- jp nc, CheckFightingMapTrainers
- ld a, [H_SPRITEINDEX]
- cp $f
- jp z, CheckFightingMapTrainers
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- SetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
- ret
-
-CoordsData_5da5c:
- db $0D,$11,$FF
-
-VictoryRoad1TextPointers:
- dw VictoryRoad1Text1
- dw VictoryRoad1Text2
- dw PickUpItemText
- dw PickUpItemText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-VictoryRoad1TrainerHeaders:
-VictoryRoad1TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_1_TRAINER_0
- dw VictoryRoad1BattleText1 ; TextBeforeBattle
- dw VictoryRoad1AfterBattleText1 ; TextAfterBattle
- dw VictoryRoad1EndBattleText1 ; TextEndBattle
- dw VictoryRoad1EndBattleText1 ; TextEndBattle
-
-VictoryRoad1TrainerHeader1:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_1_TRAINER_1
- dw VictoryRoad1BattleText2 ; TextBeforeBattle
- dw VictoryRoad1AfterBattleText2 ; TextAfterBattle
- dw VictoryRoad1EndBattleText2 ; TextEndBattle
- dw VictoryRoad1EndBattleText2 ; TextEndBattle
-
- db $ff
-
-VictoryRoad1Text1:
- TX_ASM
- ld hl, VictoryRoad1TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad1Text2:
- TX_ASM
- ld hl, VictoryRoad1TrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad1BattleText1:
- TX_FAR _VictoryRoad1BattleText1
- db "@"
-
-VictoryRoad1EndBattleText1:
- TX_FAR _VictoryRoad1EndBattleText1
- db "@"
-
-VictoryRoad1AfterBattleText1:
- TX_FAR _VictoryRoad1AfterBattleText1
- db "@"
-
-VictoryRoad1BattleText2:
- TX_FAR _VictoryRoad1BattleText2
- db "@"
-
-VictoryRoad1EndBattleText2:
- TX_FAR _VictoryRoad1EndBattleText2
- db "@"
-
-VictoryRoad1AfterBattleText2:
- TX_FAR _VictoryRoad1AfterBattleText2
- db "@"
diff --git a/scripts/victoryroad2.asm b/scripts/victoryroad2.asm
deleted file mode 100755
index 20a80461..00000000
--- a/scripts/victoryroad2.asm
+++ /dev/null
@@ -1,246 +0,0 @@
-VictoryRoad2Script:
- ld hl, wCurrentMapScriptFlags
- bit 6, [hl]
- res 6, [hl]
- call nz, VictoryRoad2Script_517c4
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- call nz, VictoryRoad2Script_517c9
- call EnableAutoTextBoxDrawing
- ld hl, VictoryRoad2TrainerHeaders
- ld de, VictoryRoad2ScriptPointers
- ld a, [wVictoryRoad2CurScript]
- call ExecuteCurMapScriptInTable
- ld [wVictoryRoad2CurScript], a
- ret
-
-VictoryRoad2Script_517c4:
- ResetEvent EVENT_VICTORY_ROAD_1_BOULDER_ON_SWITCH
-VictoryRoad2Script_517c9:
- CheckEvent EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
- jr z, .asm_517da
- push af
- ld a, $15
- lb bc, 4, 3
- call VictoryRoad2Script_517e2
- pop af
-.asm_517da
- bit 7, a
- ret z
- ld a, $1d
- lb bc, 7, 11
-VictoryRoad2Script_517e2:
- ld [wNewTileBlockID], a
- predef ReplaceTileBlock
- ret
-
-VictoryRoad2ScriptPointers:
- dw VictoryRoad2Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-VictoryRoad2Script0:
- ld hl, CoordsData_51816
- call CheckBoulderCoords
- jp nc, CheckFightingMapTrainers
- ld a, [hSpriteIndexOrTextID]
- cp $f
- jp z, CheckFightingMapTrainers
- EventFlagAddress hl, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
- ld a, [wCoordIndex]
- cp $2
- jr z, .asm_5180b
- CheckEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
- SetEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
- ret nz
- jr .asm_51810
-.asm_5180b
- CheckEventAfterBranchReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2, EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH1
- SetEventReuseHL EVENT_VICTORY_ROAD_2_BOULDER_ON_SWITCH2
- ret nz
-.asm_51810
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- ret
-
-CoordsData_51816:
- db $10,$01
- db $10,$09
- db $FF
-
-VictoryRoad2TextPointers:
- dw VictoryRoad2Text1
- dw VictoryRoad2Text2
- dw VictoryRoad2Text3
- dw VictoryRoad2Text4
- dw VictoryRoad2Text5
- dw MoltresText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-VictoryRoad2TrainerHeaders:
-VictoryRoad2TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_0
- dw VictoryRoad2BattleText1 ; TextBeforeBattle
- dw VictoryRoad2AfterBattleText1 ; TextAfterBattle
- dw VictoryRoad2EndBattleText1 ; TextEndBattle
- dw VictoryRoad2EndBattleText1 ; TextEndBattle
-
-VictoryRoad2TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_2
- dw VictoryRoad2BattleText2 ; TextBeforeBattle
- dw VictoryRoad2AfterBattleText2 ; TextAfterBattle
- dw VictoryRoad2EndBattleText2 ; TextEndBattle
- dw VictoryRoad2EndBattleText2 ; TextEndBattle
-
-VictoryRoad2TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_3
- dw VictoryRoad2BattleText3 ; TextBeforeBattle
- dw VictoryRoad2AfterBattleText3 ; TextAfterBattle
- dw VictoryRoad2EndBattleText3 ; TextEndBattle
- dw VictoryRoad2EndBattleText3 ; TextEndBattle
-
-VictoryRoad2TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_4
- dw VictoryRoad2BattleText4 ; TextBeforeBattle
- dw VictoryRoad2AfterBattleText4 ; TextAfterBattle
- dw VictoryRoad2EndBattleText4 ; TextEndBattle
- dw VictoryRoad2EndBattleText4 ; TextEndBattle
-
-VictoryRoad2TrainerHeader5:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_2_TRAINER_5
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_2_TRAINER_5
- dw VictoryRoad2BattleText5 ; TextBeforeBattle
- dw VictoryRoad2AfterBattleText5 ; TextAfterBattle
- dw VictoryRoad2EndBattleText5 ; TextEndBattle
- dw VictoryRoad2EndBattleText5 ; TextEndBattle
-
-MoltresTrainerHeader:
- dbEventFlagBit EVENT_BEAT_MOLTRES
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_MOLTRES
- dw MoltresBattleText ; TextBeforeBattle
- dw MoltresBattleText ; TextAfterBattle
- dw MoltresBattleText ; TextEndBattle
- dw MoltresBattleText ; TextEndBattle
-
- db $ff
-
-VictoryRoad2Text1:
- TX_ASM
- ld hl, VictoryRoad2TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text2:
- TX_ASM
- ld hl, VictoryRoad2TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text3:
- TX_ASM
- ld hl, VictoryRoad2TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text4:
- TX_ASM
- ld hl, VictoryRoad2TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad2Text5:
- TX_ASM
- ld hl, VictoryRoad2TrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-MoltresText:
- TX_ASM
- ld hl, MoltresTrainerHeader
- call TalkToTrainer
- jp TextScriptEnd
-
-MoltresBattleText:
- TX_FAR _MoltresBattleText
- TX_ASM
- ld a, MOLTRES
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-VictoryRoad2BattleText1:
- TX_FAR _VictoryRoad2BattleText1
- db "@"
-
-VictoryRoad2EndBattleText1:
- TX_FAR _VictoryRoad2EndBattleText1
- db "@"
-
-VictoryRoad2AfterBattleText1:
- TX_FAR _VictoryRoad2AfterBattleText1
- db "@"
-
-VictoryRoad2BattleText2:
- TX_FAR _VictoryRoad2BattleText2
- db "@"
-
-VictoryRoad2EndBattleText2:
- TX_FAR _VictoryRoad2EndBattleText2
- db "@"
-
-VictoryRoad2AfterBattleText2:
- TX_FAR _VictoryRoad2AfterBattleText2
- db "@"
-
-VictoryRoad2BattleText3:
- TX_FAR _VictoryRoad2BattleText3
- db "@"
-
-VictoryRoad2EndBattleText3:
- TX_FAR _VictoryRoad2EndBattleText3
- db "@"
-
-VictoryRoad2AfterBattleText3:
- TX_FAR _VictoryRoad2AfterBattleText3
- db "@"
-
-VictoryRoad2BattleText4:
- TX_FAR _VictoryRoad2BattleText4
- db "@"
-
-VictoryRoad2EndBattleText4:
- TX_FAR _VictoryRoad2EndBattleText4
- db "@"
-
-VictoryRoad2AfterBattleText4:
- TX_FAR _VictoryRoad2AfterBattleText4
- db "@"
-
-VictoryRoad2BattleText5:
- TX_FAR _VictoryRoad2BattleText5
- db "@"
-
-VictoryRoad2EndBattleText5:
- TX_FAR _VictoryRoad2EndBattleText5
- db "@"
-
-VictoryRoad2AfterBattleText5:
- TX_FAR _VictoryRoad2AfterBattleText5
- db "@"
diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm
deleted file mode 100755
index 31e06053..00000000
--- a/scripts/victoryroad3.asm
+++ /dev/null
@@ -1,201 +0,0 @@
-VictoryRoad3Script:
- call VictoryRoad3Script_44996
- call EnableAutoTextBoxDrawing
- ld hl, VictoryRoad3TrainerHeaders
- ld de, VictoryRoad3ScriptPointers
- ld a, [wVictoryRoad3CurScript]
- call ExecuteCurMapScriptInTable
- ld [wVictoryRoad3CurScript], a
- ret
-
-VictoryRoad3Script_44996:
- ld hl, wCurrentMapScriptFlags
- bit 5, [hl]
- res 5, [hl]
- ret z
- CheckEventHL EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1
- ret z
- ld a, $1d
- ld [wNewTileBlockID], a
- lb bc, 5, 3
- predef_jump ReplaceTileBlock
-
-VictoryRoad3ScriptPointers:
- dw VictoryRoad3Script0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-VictoryRoad3Script0:
- ld hl, wFlags_0xcd60
- bit 7, [hl]
- res 7, [hl]
- jp z, .asm_449fe
- ld hl, .coordsData_449f9
- call CheckBoulderCoords
- jp nc, .asm_449fe
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_449dc
- ld a, [hSpriteIndexOrTextID]
- cp $f ; Pikachu
- jp z, .asm_449fe
- ld hl, wCurrentMapScriptFlags
- set 5, [hl]
- SetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH1
- ret
-.asm_449dc
- CheckAndSetEvent EVENT_VICTORY_ROAD_3_BOULDER_ON_SWITCH2
- jr nz, .asm_449fe
- ld a, HS_VICTORY_ROAD_3_BOULDER
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_VICTORY_ROAD_2_BOULDER
- ld [wMissableObjectIndex], a
- predef_jump ShowObject
-
-.coordsData_449f9:
- db $05,$03
- db $0F,$17
- db $FF
-
-.asm_449fe
- ld a, VICTORY_ROAD_2
- ld [wDungeonWarpDestinationMap], a
- ld hl, .coordsData_449f9
- call IsPlayerOnDungeonWarp
- ld a, [wCoordIndex]
- cp $1
- jr nz, .asm_44a1b
- ld hl, wd72d
- res 4, [hl]
- ld hl, wd732
- res 4, [hl]
- ret
-.asm_44a1b
- ld a, [wd72d]
- bit 4, a
- jp z, CheckFightingMapTrainers
- ret
-
-VictoryRoad3TextPointers:
- dw VictoryRoad3Text1
- dw VictoryRoad3Text2
- dw VictoryRoad3Text3
- dw VictoryRoad3Text4
- dw PickUpItemText
- dw PickUpItemText
- dw BoulderText
- dw BoulderText
- dw BoulderText
- dw BoulderText
-
-VictoryRoad3TrainerHeaders:
-VictoryRoad3TrainerHeader0:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_0
- dw VictoryRoad3BattleText2 ; TextBeforeBattle
- dw VictoryRoad3AfterBattleText2 ; TextAfterBattle
- dw VictoryRoad3EndBattleText2 ; TextEndBattle
- dw VictoryRoad3EndBattleText2 ; TextEndBattle
-
-VictoryRoad3TrainerHeader2:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_2
- dw VictoryRoad3BattleText3 ; TextBeforeBattle
- dw VictoryRoad3AfterBattleText3 ; TextAfterBattle
- dw VictoryRoad3EndBattleText3 ; TextEndBattle
- dw VictoryRoad3EndBattleText3 ; TextEndBattle
-
-VictoryRoad3TrainerHeader3:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_3
- dw VictoryRoad3BattleText4 ; TextBeforeBattle
- dw VictoryRoad3AfterBattleText4 ; TextAfterBattle
- dw VictoryRoad3EndBattleText4 ; TextEndBattle
- dw VictoryRoad3EndBattleText4 ; TextEndBattle
-
-VictoryRoad3TrainerHeader4:
- dbEventFlagBit EVENT_BEAT_VICTORY_ROAD_3_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VICTORY_ROAD_3_TRAINER_4
- dw VictoryRoad3BattleText5 ; TextBeforeBattle
- dw VictoryRoad3AfterBattleText5 ; TextAfterBattle
- dw VictoryRoad3EndBattleText5 ; TextEndBattle
- dw VictoryRoad3EndBattleText5 ; TextEndBattle
-
- db $ff
-
-VictoryRoad3Text1:
- TX_ASM
- ld hl, VictoryRoad3TrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3Text2:
- TX_ASM
- ld hl, VictoryRoad3TrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3Text3:
- TX_ASM
- ld hl, VictoryRoad3TrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3Text4:
- TX_ASM
- ld hl, VictoryRoad3TrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-VictoryRoad3BattleText2:
- TX_FAR _VictoryRoad3BattleText2
- db "@"
-
-VictoryRoad3EndBattleText2:
- TX_FAR _VictoryRoad3EndBattleText2
- db "@"
-
-VictoryRoad3AfterBattleText2:
- TX_FAR _VictoryRoad3AfterBattleText2
- db "@"
-
-VictoryRoad3BattleText3:
- TX_FAR _VictoryRoad3BattleText3
- db "@"
-
-VictoryRoad3EndBattleText3:
- TX_FAR _VictoryRoad3EndBattleText3
- db "@"
-
-VictoryRoad3AfterBattleText3:
- TX_FAR _VictoryRoad3AfterBattleText3
- db "@"
-
-VictoryRoad3BattleText4:
- TX_FAR _VictoryRoad3BattleText4
- db "@"
-
-VictoryRoad3EndBattleText4:
- TX_FAR _VictoryRoad3EndBattleText4
- db "@"
-
-VictoryRoad3AfterBattleText4:
- TX_FAR _VictoryRoad3AfterBattleText4
- db "@"
-
-VictoryRoad3BattleText5:
- TX_FAR _VictoryRoad3BattleText5
- db "@"
-
-VictoryRoad3EndBattleText5:
- TX_FAR _VictoryRoad3EndBattleText5
- db "@"
-
-VictoryRoad3AfterBattleText5:
- TX_FAR _VictoryRoad3AfterBattleText5
- db "@"
diff --git a/scripts/viridiancity.asm b/scripts/viridiancity.asm
deleted file mode 100755
index f7b7b97f..00000000
--- a/scripts/viridiancity.asm
+++ /dev/null
@@ -1,364 +0,0 @@
-ViridianCityScript:
- call EnableAutoTextBoxDrawing
- ld hl, ViridianCityScriptPointers
- ld a, [wViridianCityCurScript]
- call JumpTable
- ret
-
-ViridianCityScriptPointers:
- dw ViridianCityScript0
- dw ViridianCityScript1
- dw ViridianCityScript2
- dw ViridianCityScript3
- dw ViridianCityScript4
- dw ViridianCityScript5
- dw ViridianCityScript6
- dw ViridianCityScript7
- dw ViridianCityScript8
- dw ViridianCityScript9
- dw ViridianCityScript10
-
-ViridianCityScript0:
- call ViridianCityScript_1905b
- call ViridianCityScript_190ab
- ret
-
-ViridianCityScript1:
- call ViridianCityScript_19162
-ViridianCityScript2:
- call ViridianCityScript_1905b
- ret
-
-ViridianCityScript_1905b:
- CheckEvent EVENT_VIRIDIAN_GYM_OPEN
- ret nz
- ld a, [wObtainedBadges]
- cp $7f ; all but Earthbadge
- jr nz, .asm_1906e
- SetEvent EVENT_VIRIDIAN_GYM_OPEN
- ret
-
-.asm_1906e
- ld a, [wYCoord]
- cp 8
- ret nz
- ld a, [wXCoord]
- cp 32
- ret nz
- ld a, $f
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- xor a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld [wJoyIgnore], a
- ld [hJoyHeld], a
- ld a, $6
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript6:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- ld a, $2
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript_190ab:
- ld a, [wYCoord]
- cp 9
- ret nz
- ld a, [wXCoord]
- cp 19
- ret nz
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [hJoyHeld], a
- call ViridianCityScript_1914d
- ld a, $5
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript3:
- call ViridianCityScript_190ef
- call ViridianCityScript_190db
- ResetEvent EVENT_02F
- ld a, $4
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript_190db:
- xor a
- ld [wListScrollOffset], a
- ld a, BATTLE_TYPE_OLD_MAN
- ld [wBattleType], a
- ld a, 5
- ld [wCurEnemyLVL], a
- ld a, RATTATA
- ld [wCurOpponent], a
- ret
-
-ViridianCityScript_190ef:
- ld a, [wSpriteStateData1 + 3 * $10 + 4]
- ld [$ffeb], a
- ld a, [wSpriteStateData1 + 3 * $10 + 6]
- ld [$ffec], a
- ld a, [wSpriteStateData2 + 3 * $10 + 4]
- ld [$ffed], a
- ld a, [wSpriteStateData2 + 3 * $10 + 5]
- ld [$ffee], a
- ret
-
-ViridianCityScript4:
- call ViridianCityScript_1912a
- call UpdateSprites
- call Delay3
- SetEvent EVENT_02E
- xor a
- ld [wJoyIgnore], a
- ld a, $10
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wBattleType], a
- ld [wJoyIgnore], a
- ld a, $2
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript_1912a:
- ld a, [$ffeb]
- ld [wSpriteStateData1 + 3 * $10 + 4], a
- ld a, [$ffec]
- ld [wSpriteStateData1 + 3 * $10 + 6], a
- ld a, [$ffed]
- ld [wSpriteStateData2 + 3 * $10 + 4], a
- ld a, [$ffee]
- ld [wSpriteStateData2 + 3 * $10 + 5], a
- ret
-
-ViridianCityScript5:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- ld a, $0
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript_1914d:
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- xor a
- ld [wSpritePlayerStateData1FacingDirection], a
- ld [wJoyIgnore], a
- ret
-
-ViridianCityScript_19162:
- CheckEvent EVENT_02D
- ret nz
- ld a, [wYCoord]
- cp 9
- ret nz
- ld a, [wXCoord]
- cp 19
- ret nz
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- ld a, SPRITE_FACING_RIGHT
- ld [hSpriteFacingDirection], a
- call SetSpriteFacingDirectionAndDelay
- ld a, $8
- ld [wSpritePlayerStateData1FacingDirection], a
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld a, D_UP | D_DOWN | D_LEFT | D_RIGHT | START | SELECT
- ld [wJoyIgnore], a
- ret
-
-ViridianCityScript7:
- call ViridianCityScript_190ef
- call ViridianCityScript_190db
- SetEvent EVENT_02F
- ld a, D_UP | D_DOWN | D_LEFT | D_RIGHT | START | SELECT
- ld [wJoyIgnore], a
- ld a, $8
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript8:
- call ViridianCityScript_1912a
- call UpdateSprites
- call Delay3
- SetEvent EVENT_02D
- ld a, D_UP | D_DOWN | D_LEFT | D_RIGHT | START | SELECT
- ld [wJoyIgnore], a
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- xor a
- ld [wBattleType], a
- dec a
- ld [wJoyIgnore], a
- ld a, $9
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityScript9:
- ld de, ViridianCityOldManMovementData2
- ld a, [wXCoord]
- cp 19
- jr z, .asm_191e4
- callab Func_f1a01
- ld de, ViridianCityOldManMovementData1
-.asm_191e4
- ld a, $8
- ld [hSpriteIndexOrTextID], a
- call MoveSprite
- ld a, $a
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityOldManMovementData1:
- db NPC_MOVEMENT_RIGHT
-ViridianCityOldManMovementData2:
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db NPC_MOVEMENT_DOWN
- db $ff
-
-ViridianCityScript10:
- ld a, [wd730]
- bit 0, a
- ret nz
- ld a, $3
- ld [wMissableObjectIndex], a
- predef HideObject
- xor a
- ld [wJoyIgnore], a
- ld a, $2
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityTextPointers:
- dw ViridianCityText_0
- dw ViridianCityText_1
- dw ViridianCityText_2
- dw ViridianCityText_3
- dw ViridianCityText_4
- dw ViridianCityText_5
- dw ViridianCityText_6
- dw ViridianCityText_7
- dw ViridianCityText_8
- dw ViridianCityText_9
- dw ViridianCityText_10
- dw MartSignText
- dw PokeCenterSignText
- dw ViridianCityText_11
- dw ViridianCityText_12
- dw ViridianCityText_13
-
-ViridianCityText_0:
- TX_ASM
- callba Func_f18bb
- jp TextScriptEnd
-
-ViridianCityText_1:
- TX_ASM
- callba Func_f18c7
- jp TextScriptEnd
-
-ViridianCityText_2:
- TX_ASM
- callba Func_f18e9
- jp TextScriptEnd
-
-ViridianCityText_3:
- TX_ASM
- callba Func_f1911
- jp TextScriptEnd
-
-ViridianCityText_4:
- TX_ASM
- callba Func_f192c
- jp TextScriptEnd
-
-ViridianCityText_5:
- TX_ASM
- callba Func_f194a
- jp TextScriptEnd
-
-ViridianCityText_6:
- TX_ASM
- callba Func_f198e
- jp TextScriptEnd
-
-ViridianCityText_13:
- TX_FAR _ViridianCityText_19219
- db "@"
-
-ViridianCityText_7:
- TX_ASM
- CheckEvent EVENT_02D
- jr nz, .asm_192a6
- ld hl, ViridianCityText_192af
- call PrintText
- ld c, 2
- call DelayFrames
- ld a, $7
- ld [wViridianCityCurScript], a
- jr .asm_192ac
-
-.asm_192a6
- ld hl, ViridianCityText_192b4
- call PrintText
-.asm_192ac
- jp TextScriptEnd
-
-ViridianCityText_192af:
- TX_FAR _ViridianCityText_1920a
- db "@"
-
-ViridianCityText_192b4:
- TX_FAR _OldManTextAfterBattle
- db "@"
-
-ViridianCityText_8:
- TX_ASM
- callba Func_f19c5
- jp TextScriptEnd
-
-ViridianCityText_9:
- TX_ASM
- callba Func_f19d1
- jp TextScriptEnd
-
-ViridianCityText_10:
- TX_ASM
- callba Func_f19dd
- jp TextScriptEnd
-
-ViridianCityText_11:
- TX_ASM
- callba Func_f19e9
- jp TextScriptEnd
-
-ViridianCityText_12:
- TX_ASM
- callba Func_f19f5
- jp TextScriptEnd
diff --git a/scripts/viridiancity2.asm b/scripts/viridiancity2.asm
deleted file mode 100755
index 532d57d7..00000000
--- a/scripts/viridiancity2.asm
+++ /dev/null
@@ -1,218 +0,0 @@
-Func_f18bb:
- ld hl, ViridianCityText_f18c2
- call PrintText
- ret
-
-ViridianCityText_f18c2:
- TX_FAR _ViridianCityText1
- db "@"
-
-Func_f18c7:
- ld hl, ViridianCityText_f18e4
- ld a, [wObtainedBadges]
- cp $7f ; all but EARTHBADGE
- jr z, .asm_f18db
- CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
- jr nz, .asm_f18db
- ld hl, ViridianCityText_f18df
-.asm_f18db
- call PrintText
- ret
-
-ViridianCityText_f18df:
- TX_FAR _ViridianCityText_19122
- db "@"
-
-ViridianCityText_f18e4:
- TX_FAR _ViridianCityText_19127
- db "@"
-
-Func_f18e9:
- ld hl, ViridianCityText_f1902
- call PrintText
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- ld hl, ViridianCityText_f1907
- jr nz, .asm_f18fe
- ld hl, ViridianCityText_f190c
-.asm_f18fe
- call PrintText
- ret
-
-ViridianCityText_f1902:
- TX_FAR _ViridianCityText_1914d
- db "@"
-
-ViridianCityText_f1907:
- TX_FAR _ViridianCityText_19152
- db "@"
-
-ViridianCityText_f190c:
- TX_FAR _ViridianCityText_19157
- db "@"
-
-Func_f1911:
- ld hl, ViridianCityText_f1927
- CheckEvent EVENT_GOT_POKEDEX
- jr nz, .asm_f191e
- ld hl, ViridianCityText_f1922
-.asm_f191e
- call PrintText
- ret
-
-ViridianCityText_f1922:
- TX_FAR _ViridianCityText_19175
- db "@"
-
-ViridianCityText_f1927:
- TX_FAR _ViridianCityText_1917a
- db "@"
-
-Func_f192c:
- ld hl, ViridianCityText_f1945
- call PrintText
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wSimulatedJoypadStatesIndex], a
- ld a, D_DOWN
- ld [wSimulatedJoypadStatesEnd], a
- ld a, $5
- ld [wViridianCityCurScript], a
- ret
-
-ViridianCityText_f1945:
- TX_FAR _ViridianCityText_19191
- db "@"
-
-Func_f194a:
- CheckEvent EVENT_GOT_TM42
- jr nz, .asm_f1972
- ld hl, ViridianCityText_f1979
- call PrintText
- lb bc, TM_42, 1
- call GiveItem
- jr nc, .asm_f196b
- ld hl, ViridianCityText_f197e
- call PrintText
- SetEvent EVENT_GOT_TM42
- ret
-
-.asm_f196b
- ld hl, ViridianCityText_f1989
- call PrintText
- ret
-
-.asm_f1972
- ld hl, ViridianCityText_f1984
- call PrintText
- ret
-
-ViridianCityText_f1979:
- TX_FAR _ViridianCityText_191ca
- db "@"
-
-ViridianCityText_f197e:
- TX_FAR _ReceivedTM42Text
- TX_SFX_CONGRATS
- db "@"
-
-ViridianCityText_f1984:
- TX_FAR _TM42Explanation
- db "@"
-
-ViridianCityText_f1989:
- TX_FAR _TM42NoRoomText
- db "@"
-
-Func_f198e:
- ld hl, ViridianCityText_f19b6
- call PrintText
- ld c, 2
- call DelayFrames
- call YesNoChoice
- ld a, [wCurrentMenuItem]
- and a
- jr nz, .asm_f19af
- ld hl, ViridianCityText_f19bb
- call PrintText
- ld a, $3
- ld [wViridianCityCurScript], a
- jr .asm_f19b5
-
-.asm_f19af
- ld hl, ViridianCityText_f19c0
- call PrintText
-.asm_f19b5
- ret
-
-ViridianCityText_f19b6:
- TX_FAR _OldManAgainText1
- db "@"
-
-ViridianCityText_f19bb:
- TX_FAR _OldManAgainText2
- db "@"
-
-ViridianCityText_f19c0:
- TX_FAR _OldManAgainText3
- db "@"
-
-Func_f19c5:
- ld hl, ViridianCityText_f19cc
- call PrintText
- ret
-
-ViridianCityText_f19cc:
- TX_FAR _ViridianCityText8
- db "@"
-
-Func_f19d1:
- ld hl, ViridianCityText_f19d8
- call PrintText
- ret
-
-ViridianCityText_f19d8:
- TX_FAR _ViridianCityText9
- db "@"
-
-Func_f19dd:
- ld hl, ViridianCityText_f19e4
- call PrintText
- ret
-
-ViridianCityText_f19e4:
- TX_FAR _ViridianCityText10
- db "@"
-
-Func_f19e9:
- ld hl, ViridianCityText_f19f0
- call PrintText
- ret
-
-ViridianCityText_f19f0:
- TX_FAR _ViridianCityText13
- db "@"
-
-Func_f19f5:
- ld hl, ViridianCityText_f19fc
- call PrintText
- ret
-
-ViridianCityText_f19fc:
- TX_FAR _ViridianCityText14
- db "@"
-
-
-Func_f1a01:
- ld hl, Data_f1a0a
- ld b, SPRITE_FACING_RIGHT
- call TryApplyPikachuMovementData
- ret
-
-Data_f1a0a:
- db $00
- db $1d
- db $1f
- db $38
- db $3f
diff --git a/scripts/viridianforest.asm b/scripts/viridianforest.asm
deleted file mode 100755
index b1b2f951..00000000
--- a/scripts/viridianforest.asm
+++ /dev/null
@@ -1,207 +0,0 @@
-ViridianForestScript:
- call EnableAutoTextBoxDrawing
- ld hl, ViridianForestTrainerHeaders
- ld de, ViridianForestScriptPointers
- ld a, [wViridianForestCurScript]
- call ExecuteCurMapScriptInTable
- ld [wViridianForestCurScript], a
- ret
-
-ViridianForestScriptPointers:
- dw CheckFightingMapTrainers
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
-
-ViridianForestTextPointers:
- dw ViridianForestText1
- dw ViridianForestText2
- dw ViridianForestText3
- dw ViridianForestText4
- dw ViridianForestText5
- dw ViridianForestText6
- dw PickUpItemText
- dw PickUpItemText
- dw PickUpItemText
- dw ViridianForestText10
- dw ViridianForestText11
- dw ViridianForestText12
- dw ViridianForestText13
- dw ViridianForestText14
- dw ViridianForestText15
- dw ViridianForestText16
-
-ViridianForestTrainerHeaders:
-ViridianForestTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_0
- dw ViridianForestBattleText1 ; TextBeforeBattle
- dw ViridianForestAfterBattleText1 ; TextAfterBattle
- dw ViridianForestEndBattleText1 ; TextEndBattle
- dw ViridianForestEndBattleText1 ; TextEndBattle
-
-ViridianForestTrainerHeader1:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_1
- dw ViridianForestBattleText2 ; TextBeforeBattle
- dw ViridianForestAfterBattleText2 ; TextAfterBattle
- dw ViridianForestEndBattleText2 ; TextEndBattle
- dw ViridianForestEndBattleText2 ; TextEndBattle
-
-ViridianForestTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2
- db ($1 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_2
- dw ViridianForestBattleText3 ; TextBeforeBattle
- dw ViridianForestAfterBattleText3 ; TextAfterBattle
- dw ViridianForestEndBattleText3 ; TextEndBattle
- dw ViridianForestEndBattleText3 ; TextEndBattle
-
-ViridianForestTrainerHeader3:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_3
- db ($0 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_3
- dw ViridianForestBattleText4 ; TextBeforeBattle
- dw ViridianForestAfterBattleText4 ; TextAfterBattle
- dw ViridianForestEndBattleText4 ; TextEndBattle
- dw ViridianForestEndBattleText4 ; TextEndBattle
-
-ViridianForestTrainerHeader4:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_4
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_FOREST_TRAINER_4
- dw ViridianForestBattleText5 ; TextBeforeBattle
- dw ViridianForestAfterBattleText5 ; TextAfterBattle
- dw ViridianForestEndBattleText5 ; TextEndBattle
- dw ViridianForestEndBattleText5 ; TextEndBattle
-
- db $ff
-
-ViridianForestText1:
- TX_FAR _ViridianForestText1
- db "@"
-
-ViridianForestText2:
- TX_ASM
- ld hl, ViridianForestTrainerHeader0
- jr ViridianForestTalkToTrainer
-
-ViridianForestText3:
- TX_ASM
- ld hl, ViridianForestTrainerHeader1
- jr ViridianForestTalkToTrainer
-
-ViridianForestText4:
- TX_ASM
- ld hl, ViridianForestTrainerHeader2
- jr ViridianForestTalkToTrainer
-
-ViridianForestText5:
- TX_ASM
- ld hl, ViridianForestTrainerHeader3
- jr ViridianForestTalkToTrainer
-
-ViridianForestText6:
- TX_ASM
- ld hl, ViridianForestTrainerHeader4
-ViridianForestTalkToTrainer:
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianForestBattleText1:
- TX_FAR _ViridianForestBattleText1
- db "@"
-
-ViridianForestEndBattleText1:
- TX_FAR _ViridianForestEndBattleText1
- db "@"
-
-ViridianForestAfterBattleText1:
- TX_FAR _ViridianFrstAfterBattleText1
- db "@"
-
-ViridianForestBattleText2:
- TX_FAR _ViridianForestBattleText2
- db "@"
-
-ViridianForestEndBattleText2:
- TX_FAR _ViridianForestEndBattleText2
- db "@"
-
-ViridianForestAfterBattleText2:
- TX_FAR _ViridianFrstAfterBattleText2
- db "@"
-
-ViridianForestBattleText3:
- TX_FAR _ViridianForestBattleText3
- db "@"
-
-ViridianForestEndBattleText3:
- TX_FAR _ViridianForestEndBattleText3
- db "@"
-
-ViridianForestAfterBattleText3:
- TX_FAR _ViridianFrstAfterBattleText3
- db "@"
-
-ViridianForestBattleText4:
- TX_FAR _ViridianForestBattleTextPikaGirl
- db "@"
-
-ViridianForestEndBattleText4:
- TX_FAR _ViridianForestEndBattleTextPikaGirl
- db "@"
-
-ViridianForestAfterBattleText4:
- TX_FAR _ViridianForestAfterBattleTextPikaGirl
- db "@"
-
-ViridianForestBattleText5:
- TX_FAR _ViridianForestBattleTextSamurai
- db "@"
-
-ViridianForestEndBattleText5:
- TX_FAR _ViridianForestEndBattleTextSamurai
- db "@"
-
-ViridianForestAfterBattleText5:
- TX_FAR _ViridianForestAfterBattleTextSamurai
- db "@"
-
-ViridianForestText10:
- TX_FAR _ViridianForestText8
- db "@"
-
-ViridianForestText11:
- TX_ASM
- ld hl, Func_f2528
- jp ViridianForestScript_6120d
-
-ViridianForestText12:
- TX_ASM
- ld hl, Func_f2534
- jp ViridianForestScript_6120d
-
-ViridianForestText13:
- TX_ASM
- ld hl, Func_f2540
- jp ViridianForestScript_6120d
-
-ViridianForestText14:
- TX_ASM
- ld hl, Func_f254c
- jp ViridianForestScript_6120d
-
-ViridianForestText15:
- TX_ASM
- ld hl, Func_f2558
- jp ViridianForestScript_6120d
-
-ViridianForestText16:
- TX_ASM
- ld hl, Func_f2528
-ViridianForestScript_6120d
- ld b, BANK(Func_f2528)
- call Bankswitch
- jp TextScriptEnd
diff --git a/scripts/viridianforestentrance.asm b/scripts/viridianforestentrance.asm
deleted file mode 100755
index 95db8bbc..00000000
--- a/scripts/viridianforestentrance.asm
+++ /dev/null
@@ -1,15 +0,0 @@
-ViridianForestEntranceScript:
- call EnableAutoTextBoxDrawing
- ret
-
-ViridianForestEntranceTextPointers:
- dw ViridianForestEntranceText1
- dw ViridianForestEntranceText2
-
-ViridianForestEntranceText1:
- TX_FAR _ViridianForestEntranceText1
- db "@"
-
-ViridianForestEntranceText2:
- TX_FAR _ViridianForestEntranceText2
- db "@"
diff --git a/scripts/viridianforestexit.asm b/scripts/viridianforestexit.asm
deleted file mode 100755
index af7a8523..00000000
--- a/scripts/viridianforestexit.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-ViridianForestExitScript:
- jp EnableAutoTextBoxDrawing
-
-ViridianForestExitTextPointers:
- dw ViridianForestExitText1
- dw ViridianForestExitText2
-
-ViridianForestExitText1:
- TX_FAR _ViridianForestExitText1
- db "@"
-
-ViridianForestExitText2:
- TX_FAR _ViridianForestExitText2
- db "@"
diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm
deleted file mode 100755
index 75814e49..00000000
--- a/scripts/viridiangym.asm
+++ /dev/null
@@ -1,495 +0,0 @@
-ViridianGymScript:
- ld hl, Gym8CityName
- ld de, Gym8LeaderName
- call LoadGymLeaderAndCityName
- call EnableAutoTextBoxDrawing
- ld hl, ViridianGymTrainerHeaders
- ld de, ViridianGymScriptPointers
- ld a, [wViridianGymCurScript]
- call ExecuteCurMapScriptInTable
- ld [wViridianGymCurScript], a
- ret
-
-Gym8CityName:
- db "VIRIDIAN CITY@"
-Gym8LeaderName:
- db "GIOVANNI@"
-
-ViridianGymScript_748d6:
- xor a
- ld [wJoyIgnore], a
- ld [wViridianGymCurScript], a
- ld [wCurMapScript], a
- ret
-
-ViridianGymScriptPointers:
- dw ViridianGymScript0
- dw DisplayEnemyTrainerTextAndStartBattle
- dw EndTrainerBattle
- dw ViridianGymScript3
- dw ViridianGymScript4
-
-ViridianGymScript0:
- ld a, [wYCoord]
- ld b, a
- ld a, [wXCoord]
- ld c, a
- ld hl, ViridianGymArrowTilePlayerMovement
- call DecodeArrowMovementRLE
- cp $ff
- jp z, CheckFightingMapTrainers
- call StartSimulatingJoypadStates
- ld hl, wd736
- set 7, [hl]
- ld a, SFX_ARROW_TILES
- call PlaySound
- ld a, $ff
- ld [wJoyIgnore], a
- ld a, $4
- ld [wCurMapScript], a
- ret
-
-;format:
-;db y,x
-;dw pointer to movement
-ViridianGymArrowTilePlayerMovement:
- db $b,$13
- dw ViridianGymArrowMovement1
- db $1,$13
- dw ViridianGymArrowMovement2
- db $2,$12
- dw ViridianGymArrowMovement3
- db $2,$b
- dw ViridianGymArrowMovement4
- db $a,$10
- dw ViridianGymArrowMovement5
- db $6,$4
- dw ViridianGymArrowMovement6
- db $d,$5
- dw ViridianGymArrowMovement7
- db $e,$4
- dw ViridianGymArrowMovement8
- db $f,$0
- dw ViridianGymArrowMovement9
- db $f,$1
- dw ViridianGymArrowMovement10
- db $10,$d
- dw ViridianGymArrowMovement11
- db $11,$d
- dw ViridianGymArrowMovement12
- db $FF
-
-;format: direction, count
-ViridianGymArrowMovement1:
- db D_UP,$09,$FF
-
-ViridianGymArrowMovement2:
- db D_LEFT,$08,$FF
-
-ViridianGymArrowMovement3:
- db D_DOWN,$09,$FF
-
-ViridianGymArrowMovement4:
- db D_RIGHT,$06,$FF
-
-ViridianGymArrowMovement5:
- db D_DOWN,$02,$FF
-
-ViridianGymArrowMovement6:
- db D_DOWN,$07,$FF
-
-ViridianGymArrowMovement7:
- db D_RIGHT,$08,$FF
-
-ViridianGymArrowMovement8:
- db D_RIGHT,$09,$FF
-
-ViridianGymArrowMovement9:
- db D_UP,$08,$FF
-
-ViridianGymArrowMovement10:
- db D_UP,$06,$FF
-
-ViridianGymArrowMovement11:
- db D_LEFT,$06,$FF
-
-ViridianGymArrowMovement12:
- db D_LEFT,$0C,$FF
-
-ViridianGymScript4:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- jr nz, .asm_74980
- xor a
- ld [wJoyIgnore], a
- ld hl, wd736
- res 7, [hl]
- ld a, $0
- ld [wCurMapScript], a
- ret
-.asm_74980
- jpba LoadSpinnerArrowTiles
-
-ViridianGymScript3:
- ld a, [wIsInBattle]
- cp $ff
- jp z, ViridianGymScript_748d6
- ld a, $f0
- ld [wJoyIgnore], a
-ViridianGymScript3_74995:
- ld a, $c
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
- lb bc, TM_27, 1
- call GiveItem
- jr nc, .BagFull
- ld a, $d
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- SetEvent EVENT_GOT_TM27
- jr .gymVictory
-.BagFull
- ld a, $e
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
-.gymVictory
- ld hl, wObtainedBadges
- set 7, [hl]
- ld hl, wBeatGymFlags
- set 7, [hl]
-
- ; deactivate gym trainers
- SetEventRange EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0, EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7
-
- ld a, HS_ROUTE_22_RIVAL_2
- ld [wMissableObjectIndex], a
- predef ShowObject
- SetEvents EVENT_2ND_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
- jp ViridianGymScript_748d6
-
-ViridianGymTextPointers:
- dw ViridianGymText1
- dw ViridianGymText2
- dw ViridianGymText3
- dw ViridianGymText4
- dw ViridianGymText5
- dw ViridianGymText6
- dw ViridianGymText7
- dw ViridianGymText8
- dw ViridianGymText9
- dw ViridianGymText10
- dw PickUpItemText
- dw ViridianGymText12
- dw ViridianGymText13
- dw ViridianGymText14
-
-ViridianGymTrainerHeaders:
-ViridianGymTrainerHeader0:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_0
- dw ViridianGymBattleText1 ; TextBeforeBattle
- dw ViridianGymAfterBattleText1 ; TextAfterBattle
- dw ViridianGymEndBattleText1 ; TextEndBattle
- dw ViridianGymEndBattleText1 ; TextEndBattle
-
-ViridianGymTrainerHeader1:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_1
- dw ViridianGymBattleText2 ; TextBeforeBattle
- dw ViridianGymAfterBattleText2 ; TextAfterBattle
- dw ViridianGymEndBattleText2 ; TextEndBattle
- dw ViridianGymEndBattleText2 ; TextEndBattle
-
-ViridianGymTrainerHeader2:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_2
- dw ViridianGymBattleText3 ; TextBeforeBattle
- dw ViridianGymAfterBattleText3 ; TextAfterBattle
- dw ViridianGymEndBattleText3 ; TextEndBattle
- dw ViridianGymEndBattleText3 ; TextEndBattle
-
-ViridianGymTrainerHeader3:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3
- db ($2 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_3
- dw ViridianGymBattleText4 ; TextBeforeBattle
- dw ViridianGymAfterBattleText4 ; TextAfterBattle
- dw ViridianGymEndBattleText4 ; TextEndBattle
- dw ViridianGymEndBattleText4 ; TextEndBattle
-
-ViridianGymTrainerHeader4:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_4
- dw ViridianGymBattleText5 ; TextBeforeBattle
- dw ViridianGymAfterBattleText5 ; TextAfterBattle
- dw ViridianGymEndBattleText5 ; TextEndBattle
- dw ViridianGymEndBattleText5 ; TextEndBattle
-
-ViridianGymTrainerHeader5:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_5
- dw ViridianGymBattleText6 ; TextBeforeBattle
- dw ViridianGymAfterBattleText6 ; TextAfterBattle
- dw ViridianGymEndBattleText6 ; TextEndBattle
- dw ViridianGymEndBattleText6 ; TextEndBattle
-
-ViridianGymTrainerHeader6:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1
- db ($3 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_6, 1
- dw ViridianGymBattleText7 ; TextBeforeBattle
- dw ViridianGymAfterBattleText7 ; TextAfterBattle
- dw ViridianGymEndBattleText7 ; TextEndBattle
- dw ViridianGymEndBattleText7 ; TextEndBattle
-
-ViridianGymTrainerHeader7:
- dbEventFlagBit EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1
- db ($4 << 4) ; trainer's view range
- dwEventFlagAddress EVENT_BEAT_VIRIDIAN_GYM_TRAINER_7, 1
- dw ViridianGymBattleText8 ; TextBeforeBattle
- dw ViridianGymAfterBattleText8 ; TextAfterBattle
- dw ViridianGymEndBattleText8 ; TextEndBattle
- dw ViridianGymEndBattleText8 ; TextEndBattle
-
- db $ff
-
-ViridianGymText1:
- TX_ASM
- CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
- jr z, .beginBattle
- CheckEventReuseA EVENT_GOT_TM27
- jr nz, .afterVictory
- call z, ViridianGymScript3_74995
- call DisableWaitingAfterTextDisplay
- jr .done
-.afterVictory
- ld a, $1
- ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, ViridianGymText_74ad9
- call PrintText
- call GBFadeOutToBlack
- ld a, HS_VIRIDIAN_GYM_GIOVANNI
- ld [wMissableObjectIndex], a
- predef HideObject
- call UpdateSprites
- call Delay3
- call GBFadeInFromBlack
- jr .done
-.beginBattle
- ld hl, ViridianGymText_74ace
- call PrintText
- ld hl, wd72d
- set 6, [hl]
- set 7, [hl]
- ld hl, ViridianGymText_74ad3
- ld de, ViridianGymText_74ad3
- call SaveEndBattleTextPointers
- ld a, [H_SPRITEINDEX]
- ld [wSpriteIndex], a
- call EngageMapTrainer
- call InitBattleEnemyParameters
- ld a, $8
- ld [wGymLeaderNo], a
- ld a, $3
- ld [wViridianGymCurScript], a
-.done
- jp TextScriptEnd
-
-ViridianGymText_74ace:
- TX_FAR _ViridianGymText_74ace
- db "@"
-
-ViridianGymText_74ad3:
- TX_FAR _ViridianGymText_74ad3
- db $0b, "@"
-
-ViridianGymText_74ad9:
- TX_FAR _ViridianGymText_74ad9
- db $0d, "@"
-
-ViridianGymText12:
- TX_FAR _ViridianGymText12
- db "@"
-
-ViridianGymText13:
- TX_FAR _ReceivedTM27Text
- db $0b
-
-TM27ExplanationText:
- TX_FAR _TM27ExplanationText
- db "@"
-
-ViridianGymText14:
- TX_FAR _TM27NoRoomText
- db "@"
-
-ViridianGymText2:
- TX_ASM
- ld hl, ViridianGymTrainerHeader0
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText1:
- TX_FAR _ViridianGymBattleText1
- db "@"
-
-ViridianGymEndBattleText1:
- TX_FAR _ViridianGymEndBattleText1
- db "@"
-
-ViridianGymAfterBattleText1:
- TX_FAR _ViridianGymAfterBattleText1
- db "@"
-
-ViridianGymText3:
- TX_ASM
- ld hl, ViridianGymTrainerHeader1
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText2:
- TX_FAR _ViridianGymBattleText2
- db "@"
-
-ViridianGymEndBattleText2:
- TX_FAR _ViridianGymEndBattleText2
- db "@"
-
-ViridianGymAfterBattleText2:
- TX_FAR _ViridianGymAfterBattleText2
- db "@"
-
-ViridianGymText4:
- TX_ASM
- ld hl, ViridianGymTrainerHeader2
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText3:
- TX_FAR _ViridianGymBattleText3
- db "@"
-
-ViridianGymEndBattleText3:
- TX_FAR _ViridianGymEndBattleText3
- db "@"
-
-ViridianGymAfterBattleText3:
- TX_FAR _ViridianGymAfterBattleText3
- db "@"
-
-ViridianGymText5:
- TX_ASM
- ld hl, ViridianGymTrainerHeader3
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText4:
- TX_FAR _ViridianGymBattleText4
- db "@"
-
-ViridianGymEndBattleText4:
- TX_FAR _ViridianGymEndBattleText4
- db "@"
-
-ViridianGymAfterBattleText4:
- TX_FAR _ViridianGymAfterBattleText4
- db "@"
-
-ViridianGymText6:
- TX_ASM
- ld hl, ViridianGymTrainerHeader4
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText5:
- TX_FAR _ViridianGymBattleText5
- db "@"
-
-ViridianGymEndBattleText5:
- TX_FAR _ViridianGymEndBattleText5
- db "@"
-
-ViridianGymAfterBattleText5:
- TX_FAR _ViridianGymAfterBattleText5
- db "@"
-
-ViridianGymText7:
- TX_ASM
- ld hl, ViridianGymTrainerHeader5
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText6:
- TX_FAR _ViridianGymBattleText6
- db "@"
-
-ViridianGymEndBattleText6:
- TX_FAR _ViridianGymEndBattleText6
- db "@"
-
-ViridianGymAfterBattleText6:
- TX_FAR _ViridianGymAfterBattleText6
- db "@"
-
-ViridianGymText8:
- TX_ASM
- ld hl, ViridianGymTrainerHeader6
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText7:
- TX_FAR _ViridianGymBattleText7
- db "@"
-
-ViridianGymEndBattleText7:
- TX_FAR _ViridianGymEndBattleText7
- db "@"
-
-ViridianGymAfterBattleText7:
- TX_FAR _ViridianGymAfterBattleText7
- db "@"
-
-ViridianGymText9:
- TX_ASM
- ld hl, ViridianGymTrainerHeader7
- call TalkToTrainer
- jp TextScriptEnd
-
-ViridianGymBattleText8:
- TX_FAR _ViridianGymBattleText8
- db "@"
-
-ViridianGymEndBattleText8:
- TX_FAR _ViridianGymEndBattleText8
- db "@"
-
-ViridianGymAfterBattleText8:
- TX_FAR _ViridianGymAfterBattleText8
- db "@"
-
-ViridianGymText10:
- TX_ASM
- CheckEvent EVENT_BEAT_VIRIDIAN_GYM_GIOVANNI
- jr nz, .asm_1abd1
- ld hl, ViridianGymText_74bd4
- call PrintText
- jr .asm_6064d
-.asm_1abd1
- ld hl, ViridianGymText_74bd9
- call PrintText
-.asm_6064d
- jp TextScriptEnd
-
-ViridianGymText_74bd4:
- TX_FAR _ViridianGymText_74bd4
- db "@"
-
-ViridianGymText_74bd9:
- TX_FAR _ViridianGymText_74bd9
- db "@"
diff --git a/scripts/viridianhouse.asm b/scripts/viridianhouse.asm
deleted file mode 100755
index 105c8fb6..00000000
--- a/scripts/viridianhouse.asm
+++ /dev/null
@@ -1,33 +0,0 @@
-ViridianHouseScript:
- jp EnableAutoTextBoxDrawing
-
-ViridianHouseTextPointers:
- dw ViridianHouseText1
- dw ViridianHouseText2
- dw ViridianHouseText3
- dw ViridianHouseText4
-
-ViridianHouseText1:
- TX_FAR _ViridianHouseText1
- db "@"
-
-ViridianHouseText2:
- TX_FAR _ViridianHouseText2
- db "@"
-
-ViridianHouseText3:
- TX_ASM
- ld hl, ViridianHouseText_1d5b1
- call PrintText
- ld a, SPEAROW
- call PlayCry
- call WaitForSoundToFinish
- jp TextScriptEnd
-
-ViridianHouseText_1d5b1:
- TX_FAR _ViridianHouseText_1d5b1
- db "@"
-
-ViridianHouseText4:
- TX_FAR _ViridianHouseText4
- db "@"
diff --git a/scripts/viridianmart.asm b/scripts/viridianmart.asm
deleted file mode 100755
index e20ed48e..00000000
--- a/scripts/viridianmart.asm
+++ /dev/null
@@ -1,105 +0,0 @@
-ViridianMartScript:
- call ViridianMartScript_1d47d
- call EnableAutoTextBoxDrawing
- ld hl, ViridianMartScriptPointers
- ld a, [wViridianMarketCurScript]
- call JumpTable
- ret
-
-ViridianMartScript_1d47d:
- CheckEvent EVENT_OAK_GOT_PARCEL
- jr nz, .asm_1d489
- ld hl, ViridianMartTextPointers
- jr .asm_1d48c
-.asm_1d489
- ld hl, ViridianMartTextPointers + $a ; starts at ViridianCashierText
-.asm_1d48c
- ld a, l
- ld [wMapTextPtr], a
- ld a, h
- ld [wMapTextPtr+1], a
- ret
-
-ViridianMartScriptPointers:
- dw ViridianMartScript0
- dw ViridianMartScript1
- dw ViridianMartScript2
-
-ViridianMartScript0:
- call UpdateSprites
- ld a, $4
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- ld hl, wSimulatedJoypadStatesEnd
- ld de, RLEMovement1d4bb
- call DecodeRLEList
- dec a
- ld [wSimulatedJoypadStatesIndex], a
- call StartSimulatingJoypadStates
- ld a, $1
- ld [wViridianMarketCurScript], a
- ret
-
-RLEMovement1d4bb:
- db D_LEFT, $01
- db D_UP, $02
- db $ff
-
-ViridianMartScript1:
- ld a, [wSimulatedJoypadStatesIndex]
- and a
- ret nz
- call Delay3
- ld a, $5
- ld [hSpriteIndexOrTextID], a
- call DisplayTextID
- lb bc, OAKS_PARCEL, 1
- call GiveItem
- SetEvent EVENT_GOT_OAKS_PARCEL
- ld a, $2
- ld [wViridianMarketCurScript], a
- ret
-
-ViridianMartScript2:
- CheckEventHL EVENT_02D
- ret z
- CheckAndSetEventReuseHL EVENT_02C
- ret nz
- ld a, HS_OLD_MAN
- ld [wMissableObjectIndex], a
- predef HideObject
- ld a, HS_OLD_MAN_1
- ld [wMissableObjectIndex], a
- predef ShowObject
- ret
-
-ViridianMartTextPointers:
- dw ViridianMartText1
- dw ViridianMartText2
- dw ViridianMartText3
- dw ViridianMartText4
- dw ViridianMartText5
- dw ViridianCashierText
- dw ViridianMartText2
- dw ViridianMartText3
-
-ViridianMartText1:
- TX_FAR _ViridianMartText1
- db "@"
-
-ViridianMartText4:
- TX_FAR _ViridianMartText4
- db "@"
-
-ViridianMartText5:
- TX_FAR ViridianMartParcelQuestText
- TX_SFX_KEY_ITEM
- db "@"
-
-ViridianMartText2:
- TX_FAR _ViridianMartText2
- db "@"
-
-ViridianMartText3:
- TX_FAR _ViridianMartText3
- db "@"
diff --git a/scripts/viridianpokecenter.asm b/scripts/viridianpokecenter.asm
deleted file mode 100755
index 75e6ea6f..00000000
--- a/scripts/viridianpokecenter.asm
+++ /dev/null
@@ -1,29 +0,0 @@
-ViridianPokeCenterScript:
- call Serial_TryEstablishingExternallyClockedConnection
- jp EnableAutoTextBoxDrawing
-
-ViridianPokecenterTextPointers:
- dw ViridianHealNurseText
- dw ViridianPokeCenterText2
- dw ViridianPokeCenterText3
- dw ViridianTradeNurseText
- dw ViridianPokeCenterText5
-
-ViridianHealNurseText:
- TX_POKECENTER_NURSE
-
-ViridianPokeCenterText2:
- TX_FAR _ViridianPokeCenterText2
- db "@"
-
-ViridianPokeCenterText3:
- TX_FAR _ViridianPokeCenterText3
- db "@"
-
-ViridianTradeNurseText:
- TX_CABLE_CLUB_RECEPTIONIST
-
-ViridianPokeCenterText5:
- TX_ASM
- callab PokecenterChanseyText
- jp TextScriptEnd
diff --git a/sram.asm b/sram.asm
index 3e7b3e16..966ccba3 100644
--- a/sram.asm
+++ b/sram.asm
@@ -1,4 +1,4 @@
-SECTION "Sprite Buffers", SRAM, BANK[0]
+SECTION "Sprite Buffers", SRAM ; BANK 0
sSpriteBuffer0:: ds SPRITEBUFFERSIZE ; a000
sSpriteBuffer1:: ds SPRITEBUFFERSIZE ; a188
@@ -9,7 +9,7 @@ sSpriteBuffer2:: ds SPRITEBUFFERSIZE ; a310
sHallOfFame:: ds HOF_TEAM * HOF_TEAM_CAPACITY ; a598
-SECTION "Save Data", SRAM, BANK[1]
+SECTION "Save Data", SRAM ; BANK 1
ds $598
sPlayerName:: ds NAME_LENGTH ; a598
@@ -21,7 +21,7 @@ sTilesetType:: ds 1 ; b522
sMainDataCheckSum:: ds 1 ; b523
-SECTION "Saved Boxes 1", SRAM, BANK[2]
+SECTION "Saved Boxes 1", SRAM ; BANK 2
sBox1:: ds wBoxDataEnd - wBoxDataStart ; a000
sBox2:: ds wBoxDataEnd - wBoxDataStart ; a462
@@ -33,7 +33,7 @@ sBank2AllBoxesChecksum:: ds 1 ; ba4c
sBank2IndividualBoxChecksums:: ds 6 ; ba4d
-SECTION "Saved Boxes 2", SRAM, BANK[3]
+SECTION "Saved Boxes 2", SRAM ; BANK 3
sBox7:: ds wBoxDataEnd - wBoxDataStart ; a000
sBox8:: ds wBoxDataEnd - wBoxDataStart ; a462
diff --git a/text.asm b/text.asm
index 277dbab8..8a67c231 100644
--- a/text.asm
+++ b/text.asm
@@ -1,7 +1,24 @@
INCLUDE "charmap.asm"
+
INCLUDE "constants/text_constants.asm"
+TEXT_1 EQU $20
+TEXT_2 EQU TEXT_1 + 1
+TEXT_3 EQU TEXT_2 + 1
+TEXT_4 EQU TEXT_3 + 1
+TEXT_5 EQU TEXT_4 + 1
+TEXT_6 EQU TEXT_5 + 1
+TEXT_7 EQU TEXT_6 + 1
+TEXT_8 EQU TEXT_7 + 1
+TEXT_9 EQU TEXT_8 + 1
+TEXT_10 EQU TEXT_9 + 1
+TEXT_11 EQU TEXT_10 + 1
+
+POKEDEX_TEXT EQU TEXT_11 + 1
+MOVE_NAMES EQU POKEDEX_TEXT + 1
+
INCLUDE "macros.asm"
+
INCLUDE "hram.asm"
@@ -158,61 +175,61 @@ _NurseChanseyText::
line "sey!"
done
-INCLUDE "text/maps/viridian_forest.asm"
-INCLUDE "text/maps/mt_moon_1f.asm"
-INCLUDE "text/maps/mt_moon_b1f.asm"
-INCLUDE "text/maps/mt_moon_b2f.asm"
-INCLUDE "text/maps/ss_anne_1.asm"
-INCLUDE "text/maps/ss_anne_2.asm"
-INCLUDE "text/maps/ss_anne_3.asm"
-INCLUDE "text/maps/ss_anne_5.asm"
-INCLUDE "text/maps/ss_anne_6.asm"
-INCLUDE "text/maps/ss_anne_7.asm"
-INCLUDE "text/maps/ss_anne_8.asm"
-INCLUDE "text/maps/ss_anne_9.asm"
-INCLUDE "text/maps/ss_anne_10.asm"
-INCLUDE "text/maps/victory_road_3f.asm"
-INCLUDE "text/maps/rocket_hideout_b1f.asm"
-INCLUDE "text/maps/rocket_hideout_b2f.asm"
-INCLUDE "text/maps/rocket_hideout_b3f.asm"
-INCLUDE "text/maps/rocket_hideout_b4f.asm"
-INCLUDE "text/maps/rocket_hideout_elevator.asm"
-INCLUDE "text/maps/silph_co_2f.asm"
-INCLUDE "text/maps/silph_co_3f.asm"
-INCLUDE "text/maps/silph_co_4f.asm"
-INCLUDE "text/maps/silph_co_5f.asm"
-INCLUDE "text/maps/silph_co_6f.asm"
-INCLUDE "text/maps/silph_co_7f.asm"
-INCLUDE "text/maps/silph_co_8f.asm"
-INCLUDE "text/maps/silph_co_9f.asm"
-INCLUDE "text/maps/silph_co_10f.asm"
+INCLUDE "text/maps/ViridianForest.asm"
+INCLUDE "text/maps/MtMoon1F.asm"
+INCLUDE "text/maps/MtMoonB1F.asm"
+INCLUDE "text/maps/MtMoonB2F.asm"
+INCLUDE "text/maps/SSAnne1F.asm"
+INCLUDE "text/maps/SSAnne2F.asm"
+INCLUDE "text/maps/SSAnne3F.asm"
+INCLUDE "text/maps/SSAnneBow.asm"
+INCLUDE "text/maps/SSAnneKitchen.asm"
+INCLUDE "text/maps/SSAnneCaptainsRoom.asm"
+INCLUDE "text/maps/SSAnne1FRooms.asm"
+INCLUDE "text/maps/SSAnne2FRooms.asm"
+INCLUDE "text/maps/SSAnneB1FRooms.asm"
+INCLUDE "text/maps/VictoryRoad3F.asm"
+INCLUDE "text/maps/RocketHideoutB1F.asm"
+INCLUDE "text/maps/RocketHideoutB2F.asm"
+INCLUDE "text/maps/RocketHideoutB3F.asm"
+INCLUDE "text/maps/RocketHideoutB4F.asm"
+INCLUDE "text/maps/RocketHideoutElevator.asm"
+INCLUDE "text/maps/SilphCo2F.asm"
+INCLUDE "text/maps/SilphCo3F.asm"
+INCLUDE "text/maps/SilphCo4F.asm"
+INCLUDE "text/maps/SilphCo5F.asm"
+INCLUDE "text/maps/SilphCo6F.asm"
+INCLUDE "text/maps/SilphCo7F.asm"
+INCLUDE "text/maps/SilphCo8F.asm"
+INCLUDE "text/maps/SilphCo9F.asm"
+INCLUDE "text/maps/SilphCo10F.asm"
SECTION "Text 2", ROMX ; BANK $27
-INCLUDE "text/maps/silph_co_11f.asm"
-INCLUDE "text/maps/mansion_2f.asm"
-INCLUDE "text/maps/mansion_3f.asm"
-INCLUDE "text/maps/mansion_b1f.asm"
-INCLUDE "text/maps/safari_zone_east.asm"
-INCLUDE "text/maps/safari_zone_north.asm"
-INCLUDE "text/maps/safari_zone_west.asm"
-INCLUDE "text/maps/safari_zone_center.asm"
-INCLUDE "text/maps/safari_zone_rest_house_1.asm"
-INCLUDE "text/maps/safari_zone_secret_house.asm"
-INCLUDE "text/maps/safari_zone_rest_house_2.asm"
-INCLUDE "text/maps/safari_zone_rest_house_3.asm"
-INCLUDE "text/maps/safari_zone_rest_house_4.asm"
-INCLUDE "text/maps/unknown_dungeon_b1f.asm"
-INCLUDE "text/maps/victory_road_1f.asm"
-INCLUDE "text/maps/lance.asm"
-INCLUDE "text/maps/hall_of_fame.asm"
-INCLUDE "text/maps/champion.asm"
-INCLUDE "text/maps/lorelei.asm"
-INCLUDE "text/maps/bruno.asm"
-INCLUDE "text/maps/agatha.asm"
-INCLUDE "text/maps/rock_tunnel_b2f.asm"
-INCLUDE "text/maps/seafoam_islands_b4f.asm"
+INCLUDE "text/maps/SilphCo11F.asm"
+INCLUDE "text/maps/PokemonMansion2F.asm"
+INCLUDE "text/maps/PokemonMansion3F.asm"
+INCLUDE "text/maps/PokemonMansionB1F.asm"
+INCLUDE "text/maps/SafariZoneEast.asm"
+INCLUDE "text/maps/SafariZoneNorth.asm"
+INCLUDE "text/maps/SafariZoneWest.asm"
+INCLUDE "text/maps/SafariZoneCenter.asm"
+INCLUDE "text/maps/SafariZoneCenterRestHouse.asm"
+INCLUDE "text/maps/SafariZoneSecretHouse.asm"
+INCLUDE "text/maps/SafariZoneWestRestHouse.asm"
+INCLUDE "text/maps/SafariZoneEastRestHouse.asm"
+INCLUDE "text/maps/SafariZoneNorthRestHouse.asm"
+INCLUDE "text/maps/CeruleanCaveB1F.asm"
+INCLUDE "text/maps/VictoryRoad1F.asm"
+INCLUDE "text/maps/LancesRoom.asm"
+INCLUDE "text/maps/HallOfFame.asm"
+INCLUDE "text/maps/ChampionsRoom.asm"
+INCLUDE "text/maps/LoreleisRoom.asm"
+INCLUDE "text/maps/BrunosRoom.asm"
+INCLUDE "text/maps/AgathasRoom.asm"
+INCLUDE "text/maps/RockTunnelB1F.asm"
+INCLUDE "text/maps/SeafoamIslandsB4F.asm"
_AIBattleWithdrawText::
TX_RAM wTrainerName
@@ -2087,68 +2104,68 @@ _NoPokemonText::
line "#MON here!"
prompt
-INCLUDE "text/maps/digletts_cave_route_2_entrance.asm"
-INCLUDE "text/maps/viridian_forest_exit.asm"
-INCLUDE "text/maps/route_2_house.asm"
-INCLUDE "text/maps/route_2_gate.asm"
-INCLUDE "text/maps/viridian_forest_entrance.asm"
-INCLUDE "text/maps/mt_moon_pokecenter.asm"
-INCLUDE "text/maps/saffron_gates.asm"
-INCLUDE "text/maps/daycare.asm"
-INCLUDE "text/maps/underground_path_route_6_entrance.asm"
-INCLUDE "text/maps/underground_path_route_7_entrance.asm"
-INCLUDE "text/maps/underground_path_route_7_entrance_unused.asm"
-INCLUDE "text/maps/underground_path_route_8_entrance.asm"
-INCLUDE "text/maps/rock_tunnel_pokecenter.asm"
-INCLUDE "text/maps/rock_tunnel_b1f.asm"
-INCLUDE "text/maps/power_plant.asm"
-INCLUDE "text/maps/route_11_gate.asm"
-INCLUDE "text/maps/route_11_gate_upstairs.asm"
-INCLUDE "text/maps/digletts_cave_route_11_entrance.asm"
-INCLUDE "text/maps/route_12_gate.asm"
-INCLUDE "text/maps/route_12_gate_upstairs.asm"
-INCLUDE "text/maps/route_12_house.asm"
-INCLUDE "text/maps/route_15_gate.asm"
-INCLUDE "text/maps/route_15_gate_upstairs.asm"
-INCLUDE "text/maps/route_16_gate.asm"
-INCLUDE "text/maps/route_16_gate_upstairs.asm"
-INCLUDE "text/maps/route_16_house.asm"
-INCLUDE "text/maps/route_18_gate.asm"
-INCLUDE "text/maps/route_18_gate_upstairs.asm"
-INCLUDE "text/maps/beach_house.asm"
-INCLUDE "text/maps/pokemon_league_gate.asm"
-INCLUDE "text/maps/victory_road_2f.asm"
-INCLUDE "text/maps/bills_house.asm"
-INCLUDE "text/maps/route_1.asm"
-INCLUDE "text/maps/route_2.asm"
-INCLUDE "text/maps/route_3.asm"
-INCLUDE "text/maps/route_4.asm"
-INCLUDE "text/maps/route_5.asm"
-INCLUDE "text/maps/route_6.asm"
-INCLUDE "text/maps/route_7.asm"
-INCLUDE "text/maps/route_8.asm"
-INCLUDE "text/maps/route_9_1.asm"
+INCLUDE "text/maps/DiglettsCaveRoute2.asm"
+INCLUDE "text/maps/ViridianForestNorthGate.asm"
+INCLUDE "text/maps/Route2TradeHouse.asm"
+INCLUDE "text/maps/Route2Gate.asm"
+INCLUDE "text/maps/ViridianForestSouthGate.asm"
+INCLUDE "text/maps/MtMoonPokecenter.asm"
+INCLUDE "text/maps/SaffronGates.asm"
+INCLUDE "text/maps/Daycare.asm"
+INCLUDE "text/maps/UndergroundPathRoute6.asm"
+INCLUDE "text/maps/UndergroundPathRoute7.asm"
+INCLUDE "text/maps/UndergroundPathRoute7Copy.asm"
+INCLUDE "text/maps/UndergroundPathRoute8.asm"
+INCLUDE "text/maps/RockTunnelPokecenter.asm"
+INCLUDE "text/maps/RockTunnel1F.asm"
+INCLUDE "text/maps/PowerPlant.asm"
+INCLUDE "text/maps/Route11Gate1F.asm"
+INCLUDE "text/maps/Route11Gate2F.asm"
+INCLUDE "text/maps/DiglettsCaveRoute11.asm"
+INCLUDE "text/maps/Route12Gate1F.asm"
+INCLUDE "text/maps/Route12Gate2F.asm"
+INCLUDE "text/maps/Route12SuperRodHouse.asm"
+INCLUDE "text/maps/Route15Gate1F.asm"
+INCLUDE "text/maps/Route15Gate2F.asm"
+INCLUDE "text/maps/Route16Gate1F.asm"
+INCLUDE "text/maps/Route16Gate2F.asm"
+INCLUDE "text/maps/Route16FlyHouse.asm"
+INCLUDE "text/maps/Route18Gate1F.asm"
+INCLUDE "text/maps/Route18Gate2F.asm"
+INCLUDE "text/maps/BeachHouse.asm"
+INCLUDE "text/maps/Route22Gate.asm"
+INCLUDE "text/maps/VictoryRoad2F.asm"
+INCLUDE "text/maps/BillsHouse.asm"
+INCLUDE "text/maps/Route1.asm"
+INCLUDE "text/maps/Route2.asm"
+INCLUDE "text/maps/Route3.asm"
+INCLUDE "text/maps/Route4.asm"
+INCLUDE "text/maps/Route5.asm"
+INCLUDE "text/maps/Route6.asm"
+INCLUDE "text/maps/Route7.asm"
+INCLUDE "text/maps/Route8.asm"
+INCLUDE "text/maps/Route9.asm"
SECTION "Text 4", ROMX ; BANK $29
-INCLUDE "text/maps/route_9_2.asm"
-INCLUDE "text/maps/route_10.asm"
-INCLUDE "text/maps/route_11.asm"
-INCLUDE "text/maps/route_12.asm"
-INCLUDE "text/maps/route_13.asm"
-INCLUDE "text/maps/route_14.asm"
-INCLUDE "text/maps/route_15.asm"
-INCLUDE "text/maps/route_16.asm"
-INCLUDE "text/maps/route_17.asm"
-INCLUDE "text/maps/route_18.asm"
-INCLUDE "text/maps/route_19.asm"
-INCLUDE "text/maps/route_20.asm"
-INCLUDE "text/maps/route_21.asm"
-INCLUDE "text/maps/route_22.asm"
-INCLUDE "text/maps/route_23.asm"
-INCLUDE "text/maps/route_24.asm"
-INCLUDE "text/maps/route_25.asm"
+INCLUDE "text/maps/Route9_2.asm"
+INCLUDE "text/maps/Route10.asm"
+INCLUDE "text/maps/Route11.asm"
+INCLUDE "text/maps/Route12.asm"
+INCLUDE "text/maps/Route13.asm"
+INCLUDE "text/maps/Route14.asm"
+INCLUDE "text/maps/Route15.asm"
+INCLUDE "text/maps/Route16.asm"
+INCLUDE "text/maps/Route17.asm"
+INCLUDE "text/maps/Route18.asm"
+INCLUDE "text/maps/Route19.asm"
+INCLUDE "text/maps/Route20.asm"
+INCLUDE "text/maps/Route21.asm"
+INCLUDE "text/maps/Route22.asm"
+INCLUDE "text/maps/Route23.asm"
+INCLUDE "text/maps/Route24.asm"
+INCLUDE "text/maps/Route25.asm"
_FileDataDestroyedText::
text "The file data is"
@@ -2482,52 +2499,52 @@ _ColosseumText1::
text "!"
done
-INCLUDE "text/maps/reds_house_1f.asm"
-INCLUDE "text/maps/blues_house.asm"
-INCLUDE "text/maps/oaks_lab.asm"
+INCLUDE "text/maps/RedsHouse1F.asm"
+INCLUDE "text/maps/BluesHouse.asm"
+INCLUDE "text/maps/OaksLab.asm"
INCLUDE "text/pokedex_ratings.asm"
-INCLUDE "text/maps/viridian_pokecenter.asm"
-INCLUDE "text/maps/viridian_mart.asm"
-INCLUDE "text/maps/school.asm"
-INCLUDE "text/maps/viridian_house.asm"
-INCLUDE "text/maps/viridian_gym.asm"
-INCLUDE "text/maps/museum_1f.asm"
-INCLUDE "text/maps/museum_2f.asm"
-INCLUDE "text/maps/pewter_gym.asm"
-INCLUDE "text/maps/pewter_house_1.asm"
-INCLUDE "text/maps/pewter_mart.asm"
-INCLUDE "text/maps/pewter_house_2.asm"
-INCLUDE "text/maps/pewter_pokecenter.asm"
-INCLUDE "text/maps/cerulean_trashed_house.asm"
-INCLUDE "text/maps/cerulean_trade_house.asm"
-INCLUDE "text/maps/cerulean_pokecenter.asm"
-INCLUDE "text/maps/cerulean_gym.asm"
-INCLUDE "text/maps/bike_shop.asm"
-INCLUDE "text/maps/cerulean_mart.asm"
-INCLUDE "text/maps/cerulean_badge_house_1.asm"
+INCLUDE "text/maps/ViridianPokecenter.asm"
+INCLUDE "text/maps/ViridianMart.asm"
+INCLUDE "text/maps/ViridianSchoolHouse.asm"
+INCLUDE "text/maps/ViridianNicknameHouse.asm"
+INCLUDE "text/maps/ViridianGym.asm"
+INCLUDE "text/maps/Museum1F.asm"
+INCLUDE "text/maps/Museum2F.asm"
+INCLUDE "text/maps/PewterGym.asm"
+INCLUDE "text/maps/PewterNidoranHouse.asm"
+INCLUDE "text/maps/PewterMart.asm"
+INCLUDE "text/maps/PewterSpeechHouse.asm"
+INCLUDE "text/maps/PewterPokecenter.asm"
+INCLUDE "text/maps/CeruleanTrashedHouse.asm"
+INCLUDE "text/maps/CeruleanTradeHouse.asm"
+INCLUDE "text/maps/CeruleanPokecenter.asm"
+INCLUDE "text/maps/CeruleanGym.asm"
+INCLUDE "text/maps/BikeShop.asm"
+INCLUDE "text/maps/CeruleanMart.asm"
+INCLUDE "text/maps/CeruleanBadgeHouse.asm"
SECTION "Text 6", ROMX ; BANK $2b
-INCLUDE "text/maps/cerulean_badge_house_2.asm"
-INCLUDE "text/maps/lavender_pokecenter.asm"
-INCLUDE "text/maps/pokemon_tower_1f.asm"
-INCLUDE "text/maps/pokemon_tower_2f.asm"
-INCLUDE "text/maps/pokemon_tower_3f.asm"
-INCLUDE "text/maps/pokemon_tower_4f.asm"
-INCLUDE "text/maps/pokemon_tower_5f.asm"
-INCLUDE "text/maps/pokemon_tower_6f.asm"
-INCLUDE "text/maps/pokemon_tower_7f.asm"
-INCLUDE "text/maps/fujis_house.asm"
-INCLUDE "text/maps/lavender_mart.asm"
-INCLUDE "text/maps/lavender_house.asm"
-INCLUDE "text/maps/name_rater.asm"
-INCLUDE "text/maps/vermilion_pokecenter.asm"
-INCLUDE "text/maps/fan_club.asm"
-INCLUDE "text/maps/vermilion_mart.asm"
-INCLUDE "text/maps/vermilion_gym.asm"
-INCLUDE "text/maps/vermilion_house.asm"
-INCLUDE "text/maps/vermilion_dock.asm"
+INCLUDE "text/maps/CeruleanBadgeHouse_2.asm"
+INCLUDE "text/maps/LavenderPokecenter.asm"
+INCLUDE "text/maps/PokemonTower1F.asm"
+INCLUDE "text/maps/PokemonTower2F.asm"
+INCLUDE "text/maps/PokemonTower3F.asm"
+INCLUDE "text/maps/PokemonTower4F.asm"
+INCLUDE "text/maps/PokemonTower5F.asm"
+INCLUDE "text/maps/PokemonTower6F.asm"
+INCLUDE "text/maps/PokemonTower7F.asm"
+INCLUDE "text/maps/MrFujisHouse.asm"
+INCLUDE "text/maps/LavenderMart.asm"
+INCLUDE "text/maps/LavenderCuboneHouse.asm"
+INCLUDE "text/maps/NameRatersHouse.asm"
+INCLUDE "text/maps/VermilionPokecenter.asm"
+INCLUDE "text/maps/PokemonFanClub.asm"
+INCLUDE "text/maps/VermilionMart.asm"
+INCLUDE "text/maps/VermilionGym.asm"
+INCLUDE "text/maps/VermilionPidgeyHouse.asm"
+INCLUDE "text/maps/VermilionDock.asm"
TeachingHMsText::
text "Once a #MON"
@@ -2540,56 +2557,56 @@ TeachingHMsText::
cont "teach HM moves."
done
-INCLUDE "text/maps/vermilion_fishing_house.asm"
-INCLUDE "text/maps/celadon_dept_store_1f.asm"
-INCLUDE "text/maps/celadon_dept_store_2f.asm"
-INCLUDE "text/maps/celadon_dept_store_3f.asm"
-INCLUDE "text/maps/celadon_dept_store_4f.asm"
-INCLUDE "text/maps/celadon_dept_store_roof.asm"
-INCLUDE "text/maps/celadon_mansion_1f.asm"
-INCLUDE "text/maps/celadon_mansion_2f.asm"
-INCLUDE "text/maps/celadon_mansion_3f.asm"
-INCLUDE "text/maps/celadon_mansion_4f_outside.asm"
-INCLUDE "text/maps/celadon_mansion_4f_inside.asm"
-INCLUDE "text/maps/celadon_pokecenter.asm"
-INCLUDE "text/maps/celadon_gym.asm"
-INCLUDE "text/maps/celadon_game_corner_1.asm"
+INCLUDE "text/maps/VermilionOldRodHouse.asm"
+INCLUDE "text/maps/CeladonMart1F.asm"
+INCLUDE "text/maps/CeladonMart2F.asm"
+INCLUDE "text/maps/CeladonMart3F.asm"
+INCLUDE "text/maps/CeladonMart4F.asm"
+INCLUDE "text/maps/CeladonMartRoof.asm"
+INCLUDE "text/maps/CeladonMansion1F.asm"
+INCLUDE "text/maps/CeladonMansion2F.asm"
+INCLUDE "text/maps/CeladonMansion3F.asm"
+INCLUDE "text/maps/CeladonMansionRoof.asm"
+INCLUDE "text/maps/CeladonMansionRoofHouse.asm"
+INCLUDE "text/maps/CeladonPokecenter.asm"
+INCLUDE "text/maps/CeladonGym.asm"
+INCLUDE "text/maps/GameCorner.asm"
SECTION "Text 7", ROMX ; BANK $2c
-INCLUDE "text/maps/celadon_game_corner_2.asm"
-INCLUDE "text/maps/celadon_dept_store_5f.asm"
-INCLUDE "text/maps/celadon_prize_room.asm"
-INCLUDE "text/maps/celadon_diner.asm"
-INCLUDE "text/maps/celadon_house.asm"
-INCLUDE "text/maps/celadon_hotel.asm"
-INCLUDE "text/maps/fuchsia_mart.asm"
-INCLUDE "text/maps/fuchsia_house.asm"
-INCLUDE "text/maps/fuchsia_pokecenter.asm"
-INCLUDE "text/maps/wardens_house.asm"
-INCLUDE "text/maps/safari_zone_entrance.asm"
-INCLUDE "text/maps/fuchsia_gym.asm"
-INCLUDE "text/maps/fuchsia_meeting_room.asm"
-INCLUDE "text/maps/fuchsia_fishing_house.asm"
-INCLUDE "text/maps/mansion_1f.asm"
-INCLUDE "text/maps/cinnabar_gym.asm"
-INCLUDE "text/maps/cinnabar_lab.asm"
-INCLUDE "text/maps/cinnabar_lab_trade_room.asm"
-INCLUDE "text/maps/cinnabar_lab_metronome_room.asm"
-INCLUDE "text/maps/cinnabar_lab_fossil_room.asm"
-INCLUDE "text/maps/cinnabar_pokecenter.asm"
-INCLUDE "text/maps/cinnabar_mart.asm"
-INCLUDE "text/maps/indigo_plateau_lobby.asm"
-INCLUDE "text/maps/copycats_house_1f.asm"
-INCLUDE "text/maps/copycats_house_2f.asm"
-INCLUDE "text/maps/fighting_dojo.asm"
-INCLUDE "text/maps/saffron_gym.asm"
-INCLUDE "text/maps/saffron_house.asm"
-INCLUDE "text/maps/saffron_mart.asm"
-INCLUDE "text/maps/silph_co_1f.asm"
-INCLUDE "text/maps/saffron_pokecenter.asm"
-INCLUDE "text/maps/mr_psychics_house.asm"
+INCLUDE "text/maps/GameCorner_2.asm"
+INCLUDE "text/maps/CeladonMart5F.asm"
+INCLUDE "text/maps/GameCornerPrizeRoom.asm"
+INCLUDE "text/maps/CeladonDiner.asm"
+INCLUDE "text/maps/CeladonChiefHouse.asm"
+INCLUDE "text/maps/CeladonHotel.asm"
+INCLUDE "text/maps/FuchsiaMart.asm"
+INCLUDE "text/maps/FuchsiaBillsGrandpasHouse.asm"
+INCLUDE "text/maps/FuchsiaPokecenter.asm"
+INCLUDE "text/maps/WardensHouse.asm"
+INCLUDE "text/maps/SafariZoneGate.asm"
+INCLUDE "text/maps/FuchsiaGym.asm"
+INCLUDE "text/maps/FuchsiaMeetingRoom.asm"
+INCLUDE "text/maps/FuchsiaGoodRodHouse.asm"
+INCLUDE "text/maps/PokemonMansion1F.asm"
+INCLUDE "text/maps/CinnabarGym.asm"
+INCLUDE "text/maps/CinnabarLab.asm"
+INCLUDE "text/maps/CinnabarLabTradeRoom.asm"
+INCLUDE "text/maps/CinnabarLabMetronomeRoom.asm"
+INCLUDE "text/maps/CinnabarLabFossilRoom.asm"
+INCLUDE "text/maps/CinnabarPokecenter.asm"
+INCLUDE "text/maps/CinnabarMart.asm"
+INCLUDE "text/maps/IndigoPlateauLobby.asm"
+INCLUDE "text/maps/CopycatsHouse1F.asm"
+INCLUDE "text/maps/CopycatsHouse2F.asm"
+INCLUDE "text/maps/FightingDojo.asm"
+INCLUDE "text/maps/SaffronGym.asm"
+INCLUDE "text/maps/SaffronPidgeyHouse.asm"
+INCLUDE "text/maps/SaffronMart.asm"
+INCLUDE "text/maps/SilphCo1F.asm"
+INCLUDE "text/maps/SaffronPokecenter.asm"
+INCLUDE "text/maps/MrPsychicsHouse.asm"
_PokemonText::
text "#MON!"
@@ -2924,16 +2941,16 @@ _BoxIsFullText::
line "a #MON CENTER!"
done
-INCLUDE "text/maps/pallet_town.asm"
-INCLUDE "text/maps/viridian_city.asm"
-INCLUDE "text/maps/pewter_city.asm"
-INCLUDE "text/maps/cerulean_city.asm"
-INCLUDE "text/maps/lavender_town.asm"
-INCLUDE "text/maps/vermilion_city.asm"
-INCLUDE "text/maps/celadon_city.asm"
-INCLUDE "text/maps/fuchsia_city.asm"
-INCLUDE "text/maps/cinnabar_island.asm"
-INCLUDE "text/maps/saffron_city.asm"
+INCLUDE "text/maps/PalletTown.asm"
+INCLUDE "text/maps/ViridianCity.asm"
+INCLUDE "text/maps/PewterCity.asm"
+INCLUDE "text/maps/CeruleanCity.asm"
+INCLUDE "text/maps/LavenderTown.asm"
+INCLUDE "text/maps/VermilionCity.asm"
+INCLUDE "text/maps/CeladonCity.asm"
+INCLUDE "text/maps/FuchsiaCity.asm"
+INCLUDE "text/maps/CinnabarIsland.asm"
+INCLUDE "text/maps/SaffronCity.asm"
_ItemUseBallText00::
text "It dodged the"
diff --git a/text/maps/AgathasRoom.asm b/text/maps/AgathasRoom.asm
new file mode 100644
index 00000000..82cbcd81
--- /dev/null
+++ b/text/maps/AgathasRoom.asm
@@ -0,0 +1,44 @@
+_AgathaBeforeBattleText::
+ text "I am AGATHA of"
+ line "the ELITE FOUR!"
+
+ para "OAK's taken a lot"
+ line "of interest in"
+ cont "you, child!"
+
+ para "That old duff was"
+ line "once tough and"
+ cont "handsome! That"
+ cont "was decades ago!"
+
+ para "Now he just wants"
+ line "to fiddle with"
+ cont "his #DEX! He's"
+ cont "wrong! #MON"
+ cont "are for fighting!"
+
+ para "<PLAYER>! I'll show"
+ line "you how a real"
+ cont "trainer fights!"
+ done
+
+_AgathaEndBattleText::
+ text "Woo-hoo!"
+ line "You're something"
+ cont "special, child!"
+ prompt
+
+_AgathaAfterBattleText::
+ text "You win! I see"
+ line "what the old duff"
+ cont "sees in you now!"
+
+ para "I have nothing"
+ line "else to say! Run"
+ cont "along now, child!"
+ done
+
+_AgathaDontRunAwayText::
+ text "Someone's voice:"
+ line "Don't run away!"
+ done
diff --git a/text/maps/beach_house.asm b/text/maps/BeachHouse.asm
index bc50b837..bc50b837 100644
--- a/text/maps/beach_house.asm
+++ b/text/maps/BeachHouse.asm
diff --git a/text/maps/bike_shop.asm b/text/maps/BikeShop.asm
index 1717c552..1717c552 100644
--- a/text/maps/bike_shop.asm
+++ b/text/maps/BikeShop.asm
diff --git a/text/maps/BillsHouse.asm b/text/maps/BillsHouse.asm
new file mode 100644
index 00000000..858dfe80
--- /dev/null
+++ b/text/maps/BillsHouse.asm
@@ -0,0 +1,92 @@
+_BillsHouseDontLeaveText::
+ text "Whoa, don't go"
+ line "anywhere, wait!"
+ done
+
+_BillsHouseText_1e865::
+ text "Hiya! I'm a"
+ line "#MON..."
+ cont "...No I'm not!"
+
+ para "Call me BILL!"
+ line "I'm a true blue"
+ cont "#MANIAC! Hey!"
+ cont "What's with that"
+ cont "skeptical look?"
+
+ para "I'm not joshing"
+ line "you, I screwed up"
+ cont "an experiment and"
+ cont "got combined with"
+ cont "a #MON!"
+
+ para "So, how about it?"
+ line "Help me out here!"
+ done
+
+_BillsHouseText_1e86a::
+ text "When I'm in the"
+ line "TELEPORTER, go to"
+ cont "my PC and run the"
+ cont "Cell Separation"
+ cont "System!"
+ done
+
+_BillsHouseText_1e86f::
+ text "No!? Come on, you"
+ line "gotta help a guy"
+ cont "in deep trouble!"
+
+ para "What do you say,"
+ line "chief? Please?"
+ cont "OK? All right!"
+ prompt
+
+_BillThankYouText::
+ text "BILL: Yeehah!"
+ line "Thanks, bud! I"
+ cont "owe you one!"
+
+ para "So, did you come"
+ line "to see my #MON"
+ cont "collection?"
+ cont "You didn't?"
+ cont "That's a bummer."
+
+ para "I've got to thank"
+ line "you... Oh here,"
+ cont "maybe this'll do."
+ prompt
+
+_SSTicketReceivedText::
+ text "<PLAYER> received"
+ line "an @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_SSTicketNoRoomText::
+ text "You've got too"
+ line "much stuff, bud!"
+ done
+
+_BillsHouseText_1e8cb::
+ text "That cruise ship,"
+ line "S.S.ANNE, is in"
+ cont "VERMILION CITY."
+ cont "Its passengers"
+ cont "are all trainers!"
+
+ para "They invited me"
+ line "to their party,"
+ cont "but I can't stand"
+ cont "fancy do's. Why"
+ cont "don't you go"
+ cont "instead of me?"
+ done
+
+_BillsHouseText_1e8da::
+ text "BILL: Look, bud,"
+ line "just check out"
+ cont "some of my rare"
+ cont "#MON on my PC!"
+ done
diff --git a/text/maps/BluesHouse.asm b/text/maps/BluesHouse.asm
new file mode 100644
index 00000000..8f1d8ecf
--- /dev/null
+++ b/text/maps/BluesHouse.asm
@@ -0,0 +1,41 @@
+_DaisyInitialText::
+ text "Hi <PLAYER>!"
+ line "<RIVAL> is out at"
+ cont "Grandpa's lab."
+ done
+
+_DaisyOfferMapText::
+ text "Grandpa asked you"
+ line "to run an errand?"
+ cont "Here, this will"
+ cont "help you!"
+ prompt
+
+_GotMapText::
+ text "<PLAYER> got a"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_DaisyBagFullText::
+ text "You have too much"
+ line "stuff with you."
+ done
+
+_DaisyUseMapText::
+ text "Use the TOWN MAP"
+ line "to find out where"
+ cont "you are."
+ done
+
+_BluesHouseText2::
+ text "Spending time"
+ line "with your #MON"
+ cont "makes them more"
+ cont "friendly to you."
+ done
+
+_BluesHouseText3::
+ text "It's a big map!"
+ line "This is useful!"
+ done
diff --git a/text/maps/BrunosRoom.asm b/text/maps/BrunosRoom.asm
new file mode 100644
index 00000000..9c493c4a
--- /dev/null
+++ b/text/maps/BrunosRoom.asm
@@ -0,0 +1,37 @@
+_BrunoBeforeBattleText::
+ text "I am BRUNO of"
+ line "the ELITE FOUR!"
+
+ para "Through rigorous"
+ line "training, people"
+ cont "and #MON can"
+ cont "become stronger!"
+
+ para "I've weight"
+ line "trained with"
+ cont "my #MON!"
+
+ para "<PLAYER>!"
+
+ para "We will grind you"
+ line "down with our"
+ cont "superior power!"
+
+ para "Hoo hah!"
+ done
+
+_BrunoEndBattleText::
+ text "Why?"
+ line "How could I lose?"
+ prompt
+
+_BrunoAfterBattleText::
+ text "My job is done!"
+ line "Go face your next"
+ cont "challenge!"
+ done
+
+_BrunoDontRunAwayText::
+ text "Someone's voice:"
+ line "Don't run away!"
+ done
diff --git a/text/maps/celadon_house.asm b/text/maps/CeladonChiefHouse.asm
index 19e59bd6..19e59bd6 100644
--- a/text/maps/celadon_house.asm
+++ b/text/maps/CeladonChiefHouse.asm
diff --git a/text/maps/CeladonCity.asm b/text/maps/CeladonCity.asm
new file mode 100644
index 00000000..1bf76470
--- /dev/null
+++ b/text/maps/CeladonCity.asm
@@ -0,0 +1,152 @@
+_CeladonCityText1::
+ text "I got my KOFFING"
+ line "from my friend!"
+
+ para "We get along now,"
+ line "because I was"
+ cont "very nice to it!"
+ done
+
+_CeladonCityText2::
+ text "Heheh! This GYM"
+ line "is great! It's"
+ cont "full of women!"
+ done
+
+_CeladonCityText3::
+ text "The GAME CORNER"
+ line "is bad for our"
+ cont "city's image!"
+ done
+
+_CeladonCityText4::
+ text "Moan! I blew it"
+ line "all at the slots!"
+
+ para "I knew I should"
+ line "have cashed in my"
+ cont "coins for prizes!"
+ done
+
+_TM41PreText::
+ text "Hello, there!"
+
+ para "I've seen you,"
+ line "but I never had a"
+ cont "chance to talk!"
+
+ para "Here's a gift for"
+ line "dropping by!"
+ prompt
+
+_ReceivedTM41Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM41ExplanationText::
+ text "TM41 teaches"
+ line "SOFTBOILED!"
+
+ para "Only one #MON"
+ line "can use it!"
+
+ para "That #MON is"
+ line "CHANSEY!"
+ done
+
+_TM41NoRoomText::
+ text "Oh, your pack is"
+ line "full of items!"
+ done
+
+_CeladonCityText6::
+ text "This is my trusted"
+ line "pal, POLIWRATH!"
+
+ para "It evolved from"
+ line "POLIWHIRL when I"
+ cont "used WATER STONE!"
+ done
+
+_CeladonCityText7::
+ text "POLIWRATH: Ribi"
+ line "ribit!@@"
+
+_CeladonCityText8::
+ text "What are you"
+ line "staring at?"
+ done
+
+_CeladonCityText9::
+ text "Keep out of TEAM"
+ line "ROCKET's way!"
+ done
+
+_CeladonCityText11::
+ text "CELADON CITY"
+ line "The City of"
+ cont "Rainbow Dreams"
+ done
+
+_CeladonCityText13::
+ text "CELADON CITY"
+ line "#MON GYM"
+ cont "LEADER: ERIKA"
+
+ para "The Nature-Loving"
+ line "Princess!"
+ done
+
+_CeladonCityText14::
+ text "CELADON MANSION"
+ done
+
+_CeladonCityText15::
+ text "Find what you"
+ line "need at CELADON"
+ cont "DEPT. STORE!"
+ done
+
+_CeladonCityText16::
+ text "TRAINER TIPS"
+
+ para "GUARD SPEC."
+ line "protects #MON"
+ cont "against SPECIAL"
+ cont "attacks such as"
+ cont "fire and water!"
+
+ para "Get your items at"
+ line "CELADON DEPT."
+ cont "STORE!"
+ done
+
+_CeladonCityText17::
+ text "Coins exchanged"
+ line "for prizes!"
+ cont "PRIZE EXCHANGE"
+ done
+
+_CeladonCityText18::
+ text "ROCKET GAME CORNER"
+ line "The playground"
+ cont "for grownups!"
+ done
+
+_CeladonCityText10::
+ text "TRAINER TIPS"
+
+ para "X ACCURACY boosts"
+ line "the accuracy of"
+ cont "techniques!"
+
+ para "DIRE HIT jacks up"
+ line "the likelihood of"
+ cont "critical hits!"
+
+ para "Get your items at"
+ line "CELADON DEPT."
+ cont "STORE!"
+ done
diff --git a/text/maps/CeladonDiner.asm b/text/maps/CeladonDiner.asm
new file mode 100644
index 00000000..dc5e9350
--- /dev/null
+++ b/text/maps/CeladonDiner.asm
@@ -0,0 +1,59 @@
+_CeladonDinerText1::
+ text "Hi!"
+
+ para "We're taking a"
+ line "break now."
+ done
+
+_CeladonDinerText2::
+ text "My #MON are"
+ line "weak, so I often"
+ cont "have to go to the"
+ cont "DRUG STORE."
+ done
+
+_CeladonDinerText3::
+ text "Psst! There's a"
+ line "basement under"
+ cont "the GAME CORNER."
+ done
+
+_CeladonDinerText4::
+ text "Munch..."
+
+ para "The man at that"
+ line "table lost it all"
+ cont "at the slots."
+ done
+
+_CeladonDinerText_491a7::
+ text "Go ahead! Laugh!"
+
+ para "I'm flat out"
+ line "busted!"
+
+ para "No more slots for"
+ line "me! I'm going"
+ cont "straight!"
+
+ para "Here! I won't be"
+ line "needing this any-"
+ cont "more!"
+ prompt
+
+_ReceivedCoinCaseText::
+ text "<PLAYER> received"
+ line "a @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_CoinCaseNoRoomText::
+ text "Make room for"
+ line "this!"
+ done
+
+_CeladonDinerText_491b7::
+ text "I always thought"
+ line "I was going to"
+ cont "win it back..."
+ done
diff --git a/text/maps/CeladonGym.asm b/text/maps/CeladonGym.asm
new file mode 100644
index 00000000..d6586035
--- /dev/null
+++ b/text/maps/CeladonGym.asm
@@ -0,0 +1,219 @@
+_CeladonGymText_48a5e::
+ text "Hello. Lovely"
+ line "weather isn't it?"
+ cont "It's so pleasant."
+
+ para "...Oh dear..."
+ line "I must have dozed"
+ cont "off. Welcome."
+
+ para "My name is ERIKA."
+ line "I am the LEADER"
+ cont "of CELADON GYM."
+
+ para "I teach the art of"
+ line "flower arranging."
+ cont "My #MON are of"
+ cont "the grass-type."
+
+ para "Oh, I'm sorry, I"
+ line "had no idea that"
+ cont "you wished to"
+ cont "challenge me."
+
+ para "Very well, but I"
+ line "shall not lose."
+ done
+
+_CeladonGymText_48a63::
+ text "Oh!"
+ line "I concede defeat."
+
+ para "You are remarkably"
+ line "strong."
+
+ para "I must confer you"
+ line "the RAINBOWBADGE."
+ prompt
+
+_CeladonGymText_48a68::
+ text "You are cataloging"
+ line "#MON? I must"
+ cont "say I'm impressed."
+
+ para "I would never"
+ line "collect #MON"
+ cont "if they were"
+ cont "unattractive."
+ done
+
+_CeladonGymText9::
+ text "The RAINBOWBADGE"
+ line "will make #MON"
+ cont "up to L50 obey."
+
+ para "It also allows"
+ line "#MON to use"
+ cont "STRENGTH in and"
+ cont "out of battle."
+
+ para "Please also take"
+ line "this with you."
+ done
+
+_ReceivedTM21Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM21ExplanationText::
+ text ""
+
+ para "TM21 contains"
+ line "MEGA DRAIN."
+
+ para "Half the damage"
+ line "it inflicts is"
+ cont "drained to heal"
+ cont "your #MON!"
+ done
+
+_TM21NoRoomText::
+ text "You should make"
+ line "room for this."
+ done
+
+_CeladonGymBattleText2::
+ text "Hey!"
+
+ para "You are not"
+ line "allowed in here!"
+ done
+
+_CeladonGymEndBattleText2::
+ text "You're"
+ line "too rough!"
+ prompt
+
+_CeladonGymAfterBattleText2::
+ text "Bleaah!"
+ line "I hope ERIKA"
+ cont "wipes you out!"
+ done
+
+_CeladonGymBattleText3::
+ text "I was getting"
+ line "bored."
+ done
+
+_CeladonGymEndBattleText3::
+ text "My"
+ line "makeup!"
+ prompt
+
+_CeladonGymAfterBattleText3::
+ text "Grass-type #MON"
+ line "are tough against"
+ cont "the water-type!"
+
+ para "They also have an"
+ line "edge on rock and"
+ cont "ground #MON!"
+ done
+
+_CeladonGymBattleText4::
+ text "Aren't you the"
+ line "peeping Tom?"
+ done
+
+_CeladonGymEndBattleText4::
+ text "I'm"
+ line "in shock!"
+ prompt
+
+_CeladonGymAfterBattleText4::
+ text "Oh, you weren't"
+ line "peeping? We get a"
+ cont "lot of gawkers!"
+ done
+
+_CeladonGymBattleText5::
+ text "Look at my grass"
+ line "#MON!"
+
+ para "They're so easy"
+ line "to raise!"
+ done
+
+_CeladonGymEndBattleText5::
+ text "No!"
+ prompt
+
+_CeladonGymAfterBattleText5::
+ text "We only use grass-"
+ line "type #MON at"
+ cont "our GYM!"
+
+ para "We also use them"
+ line "for making flower"
+ cont "arrangements!"
+ done
+
+_CeladonGymBattleText6::
+ text "Don't bring any"
+ line "bugs or fire"
+ cont "#MON in here!"
+ done
+
+_CeladonGymEndBattleText6::
+ text "Oh!"
+ line "You!"
+ prompt
+
+_CeladonGymAfterBattleText6::
+ text "Our LEADER, ERIKA,"
+ line "might be quiet,"
+ cont "but she's also"
+ cont "very skilled!"
+ done
+
+_CeladonGymBattleText7::
+ text "Pleased to meet"
+ line "you. My hobby is"
+ cont "#MON training."
+ done
+
+_CeladonGymEndBattleText7::
+ text "Oh!"
+ line "Splendid!"
+ prompt
+
+_CeladonGymAfterBattleText7::
+ text "I have a blind"
+ line "date coming up."
+ cont "I have to learn"
+ cont "to be polite."
+ done
+
+_CeladonGymBattleText8::
+ text "Welcome to"
+ line "CELADON GYM!"
+
+ para "You better not"
+ line "underestimate"
+ cont "girl power!"
+ done
+
+_CeladonGymEndBattleText8::
+ text "Oh!"
+ line "Beaten!"
+ prompt
+
+_CeladonGymAfterBattleText8::
+ text "I didn't bring my"
+ line "best #MON!"
+
+ para "Wait 'til next"
+ line "time!"
+ done
diff --git a/text/maps/celadon_hotel.asm b/text/maps/CeladonHotel.asm
index f2eb059e..f2eb059e 100644
--- a/text/maps/celadon_hotel.asm
+++ b/text/maps/CeladonHotel.asm
diff --git a/text/maps/celadon_mansion_1f.asm b/text/maps/CeladonMansion1F.asm
index 23123892..23123892 100644
--- a/text/maps/celadon_mansion_1f.asm
+++ b/text/maps/CeladonMansion1F.asm
diff --git a/text/maps/celadon_mansion_2f.asm b/text/maps/CeladonMansion2F.asm
index b2ecb4fa..b2ecb4fa 100644
--- a/text/maps/celadon_mansion_2f.asm
+++ b/text/maps/CeladonMansion2F.asm
diff --git a/text/maps/celadon_mansion_3f.asm b/text/maps/CeladonMansion3F.asm
index baf86186..baf86186 100644
--- a/text/maps/celadon_mansion_3f.asm
+++ b/text/maps/CeladonMansion3F.asm
diff --git a/text/maps/celadon_mansion_4f_outside.asm b/text/maps/CeladonMansionRoof.asm
index c8fd7ec8..c8fd7ec8 100644
--- a/text/maps/celadon_mansion_4f_outside.asm
+++ b/text/maps/CeladonMansionRoof.asm
diff --git a/text/maps/celadon_mansion_4f_inside.asm b/text/maps/CeladonMansionRoofHouse.asm
index dab81a8d..dab81a8d 100644
--- a/text/maps/celadon_mansion_4f_inside.asm
+++ b/text/maps/CeladonMansionRoofHouse.asm
diff --git a/text/maps/celadon_dept_store_1f.asm b/text/maps/CeladonMart1F.asm
index 8d805edc..8d805edc 100644
--- a/text/maps/celadon_dept_store_1f.asm
+++ b/text/maps/CeladonMart1F.asm
diff --git a/text/maps/celadon_dept_store_2f.asm b/text/maps/CeladonMart2F.asm
index 74869902..74869902 100644
--- a/text/maps/celadon_dept_store_2f.asm
+++ b/text/maps/CeladonMart2F.asm
diff --git a/text/maps/celadon_dept_store_3f.asm b/text/maps/CeladonMart3F.asm
index 7de4a826..7de4a826 100644
--- a/text/maps/celadon_dept_store_3f.asm
+++ b/text/maps/CeladonMart3F.asm
diff --git a/text/maps/celadon_dept_store_4f.asm b/text/maps/CeladonMart4F.asm
index c17483c1..c17483c1 100644
--- a/text/maps/celadon_dept_store_4f.asm
+++ b/text/maps/CeladonMart4F.asm
diff --git a/text/maps/celadon_dept_store_5f.asm b/text/maps/CeladonMart5F.asm
index 1871194b..1871194b 100644
--- a/text/maps/celadon_dept_store_5f.asm
+++ b/text/maps/CeladonMart5F.asm
diff --git a/text/maps/CeladonMartRoof.asm b/text/maps/CeladonMartRoof.asm
new file mode 100644
index 00000000..cfeddaf6
--- /dev/null
+++ b/text/maps/CeladonMartRoof.asm
@@ -0,0 +1,138 @@
+_CeladonMartRoofText_484ee::
+ text "Give her which"
+ line "drink?"
+ done
+
+_CeladonMartRoofText_484f3::
+ text "Yay!"
+
+ para "FRESH WATER!"
+
+ para "Thank you!"
+
+ para "You can have this"
+ line "from me!@@"
+
+_CeladonMartRoofText_484f9::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_CeladonMartRoofText_484fe::
+ text ""
+
+ para "@"
+ TX_RAM wcf4b
+ text " contains"
+ line "ICE BEAM!"
+
+ para "It can freeze the"
+ line "target sometimes!@@"
+
+_CeladonMartRoofText_48504::
+ text "Yay!"
+
+ para "SODA POP!"
+
+ para "Thank you!"
+
+ para "You can have this"
+ line "from me!@@"
+
+_CeladonMartRoofText_4850a::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_CeladonMartRoofText_4850f::
+ text ""
+
+ para "@"
+ TX_RAM wcf4b
+ text " contains"
+ line "ROCK SLIDE!@@"
+
+_CeladonMartRoofText_48515::
+ text "Yay!"
+
+ para "LEMONADE!"
+
+ para "Thank you!"
+
+ para "You can have this"
+ line "from me!@@"
+
+_ReceivedTM49Text::
+ text "<PLAYER> received"
+ line "TM49!@@"
+
+_CeladonMartRoofText_48520::
+ text ""
+
+ para "TM49 contains"
+ line "TRI ATTACK!@@"
+
+_CeladonMartRoofText_48526::
+ text "You don't have"
+ line "space for this!@@"
+
+_CeladonMartRoofText_4852c::
+ text "No thank you!"
+ line "I'm not thirsty"
+ cont "after all!@@"
+
+_CeladonMartRoofText1::
+ text "My sister is a"
+ line "trainer, believe"
+ cont "it or not."
+
+ para "But, she's so"
+ line "immature, she"
+ cont "drives me nuts!"
+ done
+
+_CeladonMartRoofText_48598::
+ text "I'm thirsty!"
+ line "I want something"
+ cont "to drink!"
+ done
+
+_CeladonMartRoofText4::
+ text "I'm thirsty!"
+ line "I want something"
+ cont "to drink!"
+
+ para "Give her a drink?"
+ done
+
+_CeladonMartRoofText6::
+ text "ROOFTOP SQUARE:"
+ line "VENDING MACHINES"
+ done
+
+_VendingMachineText1::
+ text "A vending machine!"
+ line "Here's the menu!"
+ prompt
+
+_VendingMachineText4::
+ text "Oops, not enough"
+ line "money!"
+ done
+
+_VendingMachineText5::
+ TX_RAM wcf4b
+ text ""
+ line "popped out!"
+ done
+
+_VendingMachineText6::
+ text "There's no more"
+ line "room for stuff!"
+ done
+
+_VendingMachineText7::
+ text "Not thirsty!"
+ done
diff --git a/text/maps/celadon_pokecenter.asm b/text/maps/CeladonPokecenter.asm
index a04f51c9..a04f51c9 100644
--- a/text/maps/celadon_pokecenter.asm
+++ b/text/maps/CeladonPokecenter.asm
diff --git a/text/maps/cerulean_badge_house_1.asm b/text/maps/CeruleanBadgeHouse.asm
index 4bba10cd..4bba10cd 100644
--- a/text/maps/cerulean_badge_house_1.asm
+++ b/text/maps/CeruleanBadgeHouse.asm
diff --git a/text/maps/cerulean_badge_house_2.asm b/text/maps/CeruleanBadgeHouse_2.asm
index e5da0622..e5da0622 100755
--- a/text/maps/cerulean_badge_house_2.asm
+++ b/text/maps/CeruleanBadgeHouse_2.asm
diff --git a/text/maps/unknown_dungeon_b1f.asm b/text/maps/CeruleanCaveB1F.asm
index 0918a3ce..0918a3ce 100644
--- a/text/maps/unknown_dungeon_b1f.asm
+++ b/text/maps/CeruleanCaveB1F.asm
diff --git a/text/maps/CeruleanCity.asm b/text/maps/CeruleanCity.asm
new file mode 100644
index 00000000..4bc16e7d
--- /dev/null
+++ b/text/maps/CeruleanCity.asm
@@ -0,0 +1,233 @@
+_CeruleanCityText_19668::
+ text "<RIVAL>: Yo!"
+ line "<PLAYER>!"
+
+ para "You're still"
+ line "struggling along"
+ cont "back here?"
+
+ para "I'm doing great!"
+ line "I caught a bunch"
+ cont "of strong and"
+ cont "smart #MON!"
+
+ para "Here, let me see"
+ line "what you caught,"
+ cont "<PLAYER>!"
+ done
+
+_CeruleanCityText_1966d::
+ text "Hey!"
+ line "Take it easy!"
+ cont "You won already!"
+ prompt
+
+_CeruleanCityText_19672::
+ text "Heh!"
+ line "You're no match"
+ cont "for my genius!"
+ prompt
+
+_CeruleanCityText_19677::
+ text "<RIVAL>: Hey,"
+ line "guess what?"
+
+ para "I went to BILL's"
+ line "and got him to"
+ cont "show me his rare"
+ cont "#MON!"
+
+ para "That added a lot"
+ line "of pages to my"
+ cont "#DEX!"
+
+ para "After all, BILL's"
+ line "world famous as a"
+ cont "#MANIAC!"
+
+ para "He invented the"
+ line "#MON Storage"
+ cont "System on PC!"
+
+ para "Since you're using"
+ line "his system, go"
+ cont "thank him!"
+
+ para "Well, I better"
+ line "get rolling!"
+ cont "Smell ya later!"
+ done
+
+_CeruleanCityText_196d9::
+ text "Hey! Stay out!"
+ line "It's not your"
+ cont "yard! Huh? Me?"
+
+ para "I'm an innocent"
+ line "bystander! Don't"
+ cont "you believe me?"
+ done
+
+_ReceivedTM28Text::
+ text "<PLAYER> recovered"
+ line "TM28!@@"
+
+_ReceivedTM28Text2::
+ text ""
+
+ para "I better get"
+ line "moving! Bye!@@"
+
+_TM28NoRoomText::
+ text "Make room for"
+ line "this!"
+
+ para "I can't run until"
+ line "I give it to you!"
+ done
+
+_CeruleanCityText_196ee::
+ text "Stop!"
+ line "I give up! I'll"
+ cont "leave quietly!"
+ prompt
+
+_CeruleanCityText_196f3::
+ text "OK! I'll return"
+ line "the TM I stole!"
+ prompt
+
+_CeruleanCityText3::
+ text "You're a trainer"
+ line "too? Collecting,"
+ cont "fighting, it's a"
+ cont "tough life."
+ done
+
+_CeruleanCityText4::
+ text "That bush in"
+ line "front of the shop"
+ cont "is in the way."
+
+ para "There might be a"
+ line "way around."
+ done
+
+_CeruleanCityText5::
+ text "You're making an"
+ line "encyclopedia on"
+ cont "#MON? That"
+ cont "sounds amusing."
+ done
+
+_CeruleanCityText6::
+ text "These poor people"
+ line "here were robbed."
+
+ para "We're positive"
+ line "that TEAM ROCKET"
+ cont "is behind this"
+ cont "terrible deed."
+
+ para "Even our POLICE"
+ line "FORCE has trouble"
+ cont "with the ROCKETs!"
+ done
+
+_CeruleanCityText_19730::
+ text "OK! ELECTRODE!"
+ line "Use SONICBOOM!"
+ cont "Please ELECTRODE,"
+ cont "pay attention!"
+ done
+
+_CeruleanCityText_19735::
+ text "ELECTRODE, TACKLE!"
+ line "No! You blew it"
+ cont "again!"
+ done
+
+_CeruleanCityText_1973a::
+ text "ELECTRODE, SWIFT!"
+ line "No! That's wrong!"
+
+ para "Training #MON"
+ line "is difficult!"
+
+ para "Your #MON's"
+ line "obedience depends"
+ cont "on your abilities"
+ cont "as a trainer!"
+ done
+
+_CeruleanCityText_1976f::
+ text "ELECTRODE took a"
+ line "snooze..."
+ done
+
+_CeruleanCityText_19774::
+ text "ELECTRODE is"
+ line "loafing around..."
+ done
+
+_CeruleanCityText_19779::
+ text "ELECTRODE turned"
+ line "away..."
+ done
+
+_CeruleanCityText_1977e::
+ text "ELECTRODE"
+ line "ignored orders..."
+ done
+
+_CeruleanCityText9::
+ text "I want a bright"
+ line "red BICYCLE!"
+
+ para "I'll keep it at"
+ line "home, so it won't"
+ cont "get dirty!"
+ done
+
+_CeruleanCityText10::
+ text "This is CERULEAN"
+ line "CAVE! Horribly"
+ cont "strong #MON"
+ cont "live in there!"
+
+ para "The #MON LEAGUE"
+ line "champion is the"
+ cont "only person who"
+ cont "is allowed in!"
+ done
+
+_CeruleanCityText12::
+ text "CERULEAN CITY"
+ line "A Mysterious,"
+ cont "Blue Aura"
+ cont "Surrounds It"
+ done
+
+_CeruleanCityText13::
+ text "TRAINER TIPS"
+
+ para "Pressing B Button"
+ line "during evolution"
+ cont "cancels the whole"
+ cont "process."
+ done
+
+_CeruleanCityText16::
+ text "Grass and caves"
+ line "handled easily!"
+ cont "BIKE SHOP"
+ done
+
+_CeruleanCityText17::
+ text "CERULEAN CITY"
+ line "#MON GYM"
+ cont "LEADER: MISTY"
+
+ para "The Tomboyish"
+ line "Mermaid!"
+ done
diff --git a/text/maps/CeruleanGym.asm b/text/maps/CeruleanGym.asm
new file mode 100644
index 00000000..9f2c4694
--- /dev/null
+++ b/text/maps/CeruleanGym.asm
@@ -0,0 +1,134 @@
+_CeruleanGymText_5c7be::
+ text "Hi, you're a new"
+ line "face!"
+
+ para "What's your policy"
+ line "on #MON? What"
+ cont "is your approach?"
+
+ para "My policy is an"
+ line "all-out offensive"
+ cont "with water-type"
+ cont "#MON!"
+
+ para "MISTY, the world-"
+ line "famous beauty, is"
+ cont "your host!"
+
+ para "Are you ready,"
+ line "sweetie?"
+ done
+
+_CeruleanGymText_5c7c3::
+ text "TM11 teaches"
+ line "BUBBLEBEAM!"
+
+ para "Use it on an"
+ line "aquatic #MON!"
+ done
+
+_CeruleanGymText_5c7c8::
+ text "The CASCADEBADGE"
+ line "makes all #MON"
+ cont "up to L30 obey!"
+
+ para "That includes"
+ line "even outsiders!"
+
+ para "There's more, you"
+ line "can now use CUT"
+ cont "anytime!"
+
+ para "You can CUT down"
+ line "small bushes to"
+ cont "open new paths!"
+
+ para "You can also have"
+ line "my favorite TM!"
+ done
+
+_ReceivedTM11Text::
+ text "<PLAYER> received"
+ line "TM11!@@"
+
+_CeruleanGymText_5c7d3::
+ text "You better make"
+ line "room for this!"
+ done
+
+_CeruleanGymText_5c7d8::
+ text "I can't"
+ line "believe I lost!"
+
+ para "All right!"
+
+ para "You can have the"
+ line "CASCADEBADGE to"
+ cont "show you beat me!"
+ prompt
+
+_CeruleanGymBattleText1::
+ text "I'm more than good"
+ line "enough for you!"
+
+ para "MISTY can wait!"
+ done
+
+_CeruleanGymEndBattleText1::
+ text "You"
+ line "overwhelmed me!"
+ prompt
+
+_CeruleanGymAfterBattleText1::
+ text "You have to face"
+ line "other trainers to"
+ cont "find out how good"
+ cont "you really are."
+ done
+
+_CeruleanGymBattleText2::
+ text "Splash!"
+
+ para "I'm first up!"
+ line "Let's do it!"
+ done
+
+_CeruleanGymEndBattleText2::
+ text "That"
+ line "can't be!"
+ prompt
+
+_CeruleanGymAfterBattleText2::
+ text "MISTY is going to"
+ line "keep improving!"
+
+ para "She won't lose to"
+ line "someone like you!"
+ done
+
+_CeruleanGymText_5c82a::
+ text "Yo! Champ in"
+ line "making!"
+
+ para "Here's my advice!"
+
+ para "The LEADER, MISTY,"
+ line "is a pro who uses"
+ cont "water #MON!"
+
+ para "You can drain all"
+ line "their water with"
+ cont "plant #MON!"
+
+ para "Or, zap them with"
+ line "electricity!"
+ done
+
+_CeruleanGymText_5c82f::
+ text "You beat MISTY!"
+ line "What'd I tell ya?"
+
+ para "You and me, kid,"
+ line "we make a pretty"
+ cont "darn good team!"
+ done
diff --git a/text/maps/cerulean_mart.asm b/text/maps/CeruleanMart.asm
index 86a74588..86a74588 100644
--- a/text/maps/cerulean_mart.asm
+++ b/text/maps/CeruleanMart.asm
diff --git a/text/maps/cerulean_pokecenter.asm b/text/maps/CeruleanPokecenter.asm
index 497fbce3..497fbce3 100644
--- a/text/maps/cerulean_pokecenter.asm
+++ b/text/maps/CeruleanPokecenter.asm
diff --git a/text/maps/cerulean_trade_house.asm b/text/maps/CeruleanTradeHouse.asm
index 791c11d5..791c11d5 100644
--- a/text/maps/cerulean_trade_house.asm
+++ b/text/maps/CeruleanTradeHouse.asm
diff --git a/text/maps/cerulean_trashed_house.asm b/text/maps/CeruleanTrashedHouse.asm
index f79540ae..f79540ae 100644
--- a/text/maps/cerulean_trashed_house.asm
+++ b/text/maps/CeruleanTrashedHouse.asm
diff --git a/text/maps/ChampionsRoom.asm b/text/maps/ChampionsRoom.asm
new file mode 100644
index 00000000..61050565
--- /dev/null
+++ b/text/maps/ChampionsRoom.asm
@@ -0,0 +1,146 @@
+_GaryChampionIntroText::
+ text "<RIVAL>: Hey!"
+
+ para "I was looking"
+ line "forward to seeing"
+ cont "you, <PLAYER>!"
+
+ para "My rival should"
+ line "be strong to keep"
+ cont "me sharp!"
+
+ para "While working on"
+ line "#DEX, I looked"
+ cont "all over for"
+ cont "powerful #MON!"
+
+ para "Not only that, I"
+ line "assembled teams"
+ cont "that would beat"
+ cont "any #MON type!"
+
+ para "And now!"
+
+ para "I'm the #MON"
+ line "LEAGUE champion!"
+
+ para "<PLAYER>! Do you"
+ line "know what that"
+ cont "means?"
+
+ para "I'll tell you!"
+
+ para "I am the most"
+ line "powerful trainer"
+ cont "in the world!"
+ done
+
+_GaryDefeatedText::
+ text "NO!"
+ line "That can't be!"
+ cont "You beat my best!"
+
+ para "After all that"
+ line "work to become"
+ cont "LEAGUE champ?"
+
+ para "My reign is over"
+ line "already?"
+ cont "It's not fair!"
+ prompt
+
+_GaryVictoryText::
+ text "Hahaha!"
+ line "I won, I won!"
+
+ para "I'm too good for"
+ line "you, <PLAYER>!"
+
+ para "You did well to"
+ line "even reach me,"
+ cont "<RIVAL>, the"
+ cont "#MON genius!"
+
+ para "Nice try, loser!"
+ line "Hahaha!"
+ prompt
+
+_GaryText_76103::
+ text "Why?"
+ line "Why did I lose?"
+
+ para "I never made any"
+ line "mistakes raising"
+ cont "my #MON..."
+
+ para "Darn it! You're"
+ line "the new #MON"
+ cont "LEAGUE champion!"
+
+ para "Although I don't"
+ line "like to admit it."
+ done
+
+_GaryText2::
+ text "OAK: <PLAYER>!"
+ done
+
+_GaryText_76120::
+ text "OAK: So, you won!"
+ line "Congratulations!"
+ cont "You're the new"
+ cont "#MON LEAGUE"
+ cont "champion!"
+
+ para "You've grown up so"
+ line "much since you"
+ cont "first left with"
+ cont "@"
+ TX_RAM wcd6d
+ text "!"
+
+ para "<PLAYER>, you have"
+ line "come of age!"
+ done
+
+_GaryText_76125::
+ text "OAK: <RIVAL>! I'm"
+ line "disappointed!"
+
+ para "I came when I"
+ line "heard you beat"
+ cont "the ELITE FOUR!"
+
+ para "But, when I got"
+ line "here, you had"
+ cont "already lost!"
+
+ para "<RIVAL>! Do you"
+ line "understand why"
+ cont "you lost?"
+
+ para "You have forgotten"
+ line "to treat your"
+ cont "#MON with"
+ cont "trust and love!"
+
+ para "Without them, you"
+ line "will never become"
+ cont "a champ again!"
+ done
+
+_GaryText_7612a::
+ text "OAK: <PLAYER>!"
+
+ para "You understand"
+ line "that your victory"
+ cont "was not just your"
+ cont "own doing!"
+
+ para "The bond you share"
+ line "with your #MON"
+ cont "is marvelous!"
+
+ para "<PLAYER>!"
+ line "Come with me!"
+ done
diff --git a/text/maps/CinnabarGym.asm b/text/maps/CinnabarGym.asm
new file mode 100644
index 00000000..ee1fc31a
--- /dev/null
+++ b/text/maps/CinnabarGym.asm
@@ -0,0 +1,253 @@
+_BlaineBattleText::
+ text "Hah!"
+
+ para "I am BLAINE! I"
+ line "am the LEADER of"
+ cont "CINNABAR GYM!"
+
+ para "My fiery #MON"
+ line "will incinerate"
+ cont "all challengers!"
+
+ para "Hah! You better"
+ line "have BURN HEAL!"
+ done
+
+_BlaineEndBattleText::
+ text "I have"
+ line "burnt out!"
+
+ para "You have earned"
+ line "the VOLCANOBADGE!@@"
+
+_BlaineFireBlastText::
+ text "FIRE BLAST is the"
+ line "ultimate fire"
+ cont "technique!"
+
+ para "Don't waste it on"
+ line "water #MON!"
+ done
+
+_BlaineBadgeText::
+ text "Hah!"
+
+ para "The VOLCANOBADGE"
+ line "heightens the"
+ cont "SPECIAL abilities"
+ cont "of your #MON!"
+
+ para "Here, you can"
+ line "have this too!"
+ done
+
+_ReceivedTM38Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM38ExplanationText::
+ text ""
+
+ para "TM38 contains"
+ line "FIRE BLAST!"
+
+ para "Teach it to fire-"
+ line "type #MON!"
+
+ para "CHARMELEON or"
+ line "PONYTA would be"
+ cont "good bets!"
+ done
+
+_TM38NoRoomText::
+ text "Make room for my"
+ line "gift!"
+ done
+
+_CinnabarGymText_7595f::
+ text "Do you know how"
+ line "hot #MON fire"
+ cont "breath can get?"
+ done
+
+_CinnabarGymText_75964::
+ text "Yow!"
+ line "Hot, hot, hot!"
+ prompt
+
+_CinnabarGymText_75969::
+ text "Fire, or to be"
+ line "more precise,"
+ cont "combustion..."
+
+ para "Blah, blah, blah,"
+ line "blah..."
+ done
+
+_CinnabarGymText_75994::
+ text "I was a thief, but"
+ line "I became straight"
+ cont "as a trainer!"
+ done
+
+_CinnabarGymText_75999::
+ text "I"
+ line "surrender!"
+ prompt
+
+_CinnabarGymText_7599e::
+ text "I can't help"
+ line "stealing other"
+ cont "people's #MON!"
+ done
+
+_CinnabarGymText_759c9::
+ text "You can't win!"
+ line "I have studied"
+ cont "#MON totally!"
+ done
+
+_CinnabarGymText_759ce::
+ text "Waah!"
+ line "My studies!"
+ prompt
+
+_CinnabarGymText_759d3::
+ text "My theories are"
+ line "too complicated"
+ cont "for you!"
+ done
+
+_CinnabarGymText_759fe::
+ text "I just like using"
+ line "fire #MON!"
+ done
+
+_CinnabarGymText_75a03::
+ text "Too hot"
+ line "to handle!"
+ prompt
+
+_CinnabarGymText_75a08::
+ text "I wish there was"
+ line "a thief #MON!"
+ cont "I'd use that!"
+ done
+
+_CinnabarGymText_75a33::
+ text "I know why BLAINE"
+ line "became a trainer!"
+ done
+
+_CinnabarGymText_75a38::
+ text "Ow!"
+ prompt
+
+_CinnabarGymText_75a3d::
+ text "BLAINE was lost"
+ line "in the mountains"
+ cont "when a fiery bird"
+ cont "#MON appeared."
+
+ para "Its light enabled"
+ line "BLAINE to find"
+ cont "his way down!"
+ done
+
+_CinnabarGymText_75a68::
+ text "I've been to many"
+ line "GYMs, but this is"
+ cont "my favorite!"
+ done
+
+_CinnabarGymText_75a6d::
+ text "Yowza!"
+ line "Too hot!"
+ prompt
+
+_CinnabarGymText_75a72::
+ text "Us fire #MON"
+ line "fans like PONYTA"
+ cont "and NINETALES!"
+ done
+
+_CinnabarGymText_75a9d::
+ text "Fire is weak"
+ line "against H2O!"
+ done
+
+_CinnabarGymText_75aa2::
+ text "Oh!"
+ line "Snuffed out!"
+ prompt
+
+_CinnabarGymText_75aa7::
+ text "Water beats fire!"
+ line "But, fire melts"
+ cont "ice #MON!"
+ done
+
+_CinnabarGymText_75ac2::
+ text "Yo! Champ in"
+ line "making!"
+
+ para "The hot-headed"
+ line "BLAINE is a fire"
+ cont "#MON pro!"
+
+ para "Douse his spirits"
+ line "with water!"
+
+ para "You better take"
+ line "some BURN HEALs!"
+ done
+
+_CinnabarGymText_75ac7::
+ text "<PLAYER>! You beat"
+ line "that fire brand!"
+ done
+
+_CinnabarGymText_1::
+ text "This GYM is also"
+ line "known as the QUIZ"
+ cont "GYM."
+
+ para "You have to take a"
+ line "quiz if you want"
+ cont "to see BLAINE."
+
+ para "You don't have to"
+ line "fight us if you"
+ cont "get it right."
+ done
+
+_CinnabarGymText_2::
+ text "Think you can do"
+ line "it?"
+ done
+
+_CinnabarGymText_3::
+ text "This one's tricky!"
+ done
+
+_CinnabarGymText_4::
+ text "#MON enjoy"
+ line "quizzes too!"
+ done
+
+_CinnabarGymText_5::
+ text "I like it here at"
+ line "QUIZ GYM."
+ done
+
+_CinnabarGymText_6::
+ text "This is the last"
+ line "question."
+ done
+
+_CinnabarGymText_7::
+ text "Come on, answer"
+ line "the question!"
+ done
diff --git a/text/maps/cinnabar_island.asm b/text/maps/CinnabarIsland.asm
index 54552a46..54552a46 100644
--- a/text/maps/cinnabar_island.asm
+++ b/text/maps/CinnabarIsland.asm
diff --git a/text/maps/cinnabar_lab.asm b/text/maps/CinnabarLab.asm
index a93a484d..a93a484d 100644
--- a/text/maps/cinnabar_lab.asm
+++ b/text/maps/CinnabarLab.asm
diff --git a/text/maps/CinnabarLabFossilRoom.asm b/text/maps/CinnabarLabFossilRoom.asm
new file mode 100644
index 00000000..95bde685
--- /dev/null
+++ b/text/maps/CinnabarLabFossilRoom.asm
@@ -0,0 +1,78 @@
+_Lab4Text_75dc6::
+ text "Hiya!"
+
+ para "I am important"
+ line "doctor!"
+
+ para "I study here rare"
+ line "#MON fossils!"
+
+ para "You! Have you a"
+ line "fossil for me?"
+ prompt
+
+_Lab4Text_75dcb::
+ text "No! Is too bad!"
+ done
+
+_Lab4Text_75dd0::
+ text "I take a little"
+ line "time!"
+
+ para "You go for walk a"
+ line "little while!"
+ done
+
+_Lab4Text_75dd5::
+ text "Where were you?"
+
+ para "Your fossil is"
+ line "back to life!"
+
+ para "It was @"
+ TX_RAM wcf4b
+ text ""
+ line "like I think!"
+ prompt
+
+_Lab4Text_610ae::
+ text "Oh! That is"
+ line "@"
+ TX_RAM wcd6d
+ text "!"
+
+ para "It is fossil of"
+ line "@"
+ TX_RAM wcf4b
+ text ", a"
+ cont "#MON that is"
+ cont "already extinct!"
+
+ para "My Resurrection"
+ line "Machine will make"
+ cont "that #MON live"
+ cont "again!"
+ done
+
+_Lab4Text_610b3::
+ text "So! You hurry and"
+ line "give me that!"
+
+ para "<PLAYER> handed"
+ line "over @"
+ TX_RAM wcd6d
+ text "!"
+ prompt
+
+_Lab4Text_610b8::
+ text "I take a little"
+ line "time!"
+
+ para "You go for walk a"
+ line "little while!"
+ done
+
+_Lab4Text_610bd::
+ text "Aiyah! You come"
+ line "again!"
+ done
diff --git a/text/maps/CinnabarLabMetronomeRoom.asm b/text/maps/CinnabarLabMetronomeRoom.asm
new file mode 100644
index 00000000..fa04677f
--- /dev/null
+++ b/text/maps/CinnabarLabMetronomeRoom.asm
@@ -0,0 +1,63 @@
+_TM35PreReceiveText::
+ text "Tch-tch-tch!"
+ line "I made a cool TM!"
+
+ para "It can cause all"
+ line "kinds of fun!"
+ prompt
+
+_ReceivedTM35Text::
+ text "<PLAYER> received "
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM35ExplanationText::
+ text "Tch-tch-tch!"
+ line "That's the sound"
+ cont "of a METRONOME!"
+
+ para "It tweaks your"
+ line "#MON's brain"
+ cont "into using moves"
+ cont "it doesn't know!"
+ done
+
+_TM35NoRoomText::
+ text "Your pack is"
+ line "crammed full!"
+ done
+
+_Lab3Text2::
+ text "EEVEE can evolve"
+ line "into 1 of 3 kinds"
+ cont "of #MON."
+ done
+
+_Lab3Text3::
+ text "There's an e-mail"
+ line "message!"
+
+ para "..."
+
+ para "The 3 legendary"
+ line "bird #MON are"
+ cont "ARTICUNO, ZAPDOS"
+ cont "and MOLTRES."
+
+ para "Their whereabouts"
+ line "are unknown."
+
+ para "We plan to explore"
+ line "the cavern close"
+ cont "to CERULEAN."
+
+ para "From: #MON"
+ line "RESEARCH TEAM"
+
+ para "..."
+ done
+
+_Lab3Text5::
+ text "An amber pipe!"
+ done
diff --git a/text/maps/cinnabar_lab_trade_room.asm b/text/maps/CinnabarLabTradeRoom.asm
index 196124e7..196124e7 100644
--- a/text/maps/cinnabar_lab_trade_room.asm
+++ b/text/maps/CinnabarLabTradeRoom.asm
diff --git a/text/maps/cinnabar_mart.asm b/text/maps/CinnabarMart.asm
index 42a41d06..42a41d06 100644
--- a/text/maps/cinnabar_mart.asm
+++ b/text/maps/CinnabarMart.asm
diff --git a/text/maps/cinnabar_pokecenter.asm b/text/maps/CinnabarPokecenter.asm
index cf481764..cf481764 100644
--- a/text/maps/cinnabar_pokecenter.asm
+++ b/text/maps/CinnabarPokecenter.asm
diff --git a/text/maps/copycats_house_1f.asm b/text/maps/CopycatsHouse1F.asm
index bd3029fd..bd3029fd 100644
--- a/text/maps/copycats_house_1f.asm
+++ b/text/maps/CopycatsHouse1F.asm
diff --git a/text/maps/CopycatsHouse2F.asm b/text/maps/CopycatsHouse2F.asm
new file mode 100644
index 00000000..561b2ac5
--- /dev/null
+++ b/text/maps/CopycatsHouse2F.asm
@@ -0,0 +1,97 @@
+_CopycatsHouse2FText_5ccd4::
+ text "<PLAYER>: Hi! Do"
+ line "you like #MON?"
+
+ para "<PLAYER>: Uh no, I"
+ line "just asked you."
+
+ para "<PLAYER>: Huh?"
+ line "You're strange!"
+
+ para "COPYCAT: Hmm?"
+ line "Quit mimicking?"
+
+ para "But, that's my"
+ line "favorite hobby!"
+ prompt
+
+_TM31PreReceiveText::
+ text "Oh wow!"
+ line "A # DOLL!"
+
+ para "For me?"
+ line "Thank you!"
+
+ para "You can have"
+ line "this, then!"
+ prompt
+
+_ReceivedTM31Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM31ExplanationText1::
+ text ""
+
+ para "TM31 contains my"
+ line "favorite, MIMIC!"
+
+ para "Use it on a good"
+ line "#MON!@@"
+
+_TM31ExplanationText2::
+ text "<PLAYER>: Hi!"
+ line "Thanks for TM31!"
+
+ para "<PLAYER>: Pardon?"
+
+ para "<PLAYER>: Is it"
+ line "that fun to mimic"
+ cont "my every move?"
+
+ para "COPYCAT: You bet!"
+ line "It's a scream!"
+ done
+
+_TM31NoRoomText::
+ text "Don't you want"
+ line "this?@@"
+
+_CopycatsHouse2FText2::
+ text "DODUO: Giiih!"
+
+ para "MIRROR MIRROR ON"
+ line "THE WALL, WHO IS"
+ cont "THE FAIREST ONE"
+ cont "OF ALL?"
+ done
+
+_CopycatsHouse2FText3::
+ text "This is a rare"
+ line "#MON! Huh?"
+ cont "It's only a doll!"
+ done
+
+_CopycatsHouse2FText6::
+ text "A game with MARIO"
+ line "wearing a bucket"
+ cont "on his head!"
+ done
+
+_CopycatsHouse2FText_5cd17::
+ text "..."
+
+ para "My Secrets!"
+
+ para "Skill: Mimicry!"
+ line "Hobby: Collecting"
+ cont "dolls!"
+ cont "Favorite #MON:"
+ cont "CLEFAIRY!"
+ done
+
+_CopycatsHouse2FText_5cd1c::
+ text "Huh? Can't see!"
+ done
diff --git a/text/maps/Daycare.asm b/text/maps/Daycare.asm
new file mode 100644
index 00000000..479898c8
--- /dev/null
+++ b/text/maps/Daycare.asm
@@ -0,0 +1,96 @@
+_DayCareIntroText::
+ text "I run a DAYCARE."
+ line "Would you like me"
+ cont "to raise one of"
+ cont "your #MON?"
+ done
+
+_DayCareWhichMonText::
+ text "Which #MON"
+ line "should I raise?"
+ prompt
+
+_DayCareWillLookAfterMonText::
+ text "Fine, I'll look"
+ line "after @"
+ TX_RAM wcd6d
+ text ""
+ cont "for a while."
+ prompt
+
+_DayCareComeSeeMeInAWhileText::
+ text "Come see me in"
+ line "a while."
+ done
+
+_DayCareMonHasGrownText::
+ text "Your @"
+ TX_RAM wcd6d
+ text ""
+ line "has grown a lot!"
+
+ para "By level, it's"
+ line "grown by @"
+ TX_NUM wDayCareNumLevelsGrown,$1,$3
+ text "!"
+
+ para "Aren't I great?"
+ prompt
+
+_DayCareOweMoneyText::
+ text "You owe me ¥@"
+ TX_BCD wDayCareTotalCost, $c2
+ text ""
+ line "for the return"
+ cont "of this #MON."
+ done
+
+_DayCareGotMonBackText::
+ text "<PLAYER> got"
+ line "@"
+ TX_RAM wDayCareMonName
+ text " back!"
+ done
+
+_DayCareMonNeedsMoreTimeText::
+ text "Back already?"
+ line "Your @"
+ TX_RAM wcd6d
+ text ""
+ cont "needs some more"
+ cont "time with me."
+ prompt
+
+_DayCareAllRightThenText::
+ text "All right then,"
+ line "@@"
+
+_DayCareComeAgainText::
+ text "Come again."
+ done
+
+_DayCareNoRoomForMonText::
+ text "You have no room"
+ line "for this #MON!"
+ done
+
+_DayCareOnlyHaveOneMonText::
+ text "You only have one"
+ line "#MON with you."
+ done
+
+_DayCareCantAcceptMonWithHMText::
+ text "I can't accept a"
+ line "#MON that"
+ cont "knows an HM move."
+ done
+
+_DayCareHeresYourMonText::
+ text "Thank you! Here's"
+ line "your #MON!"
+ prompt
+
+_DayCareNotEnoughMoneyText::
+ text "Hey, you don't"
+ line "have enough ¥!"
+ done
diff --git a/text/maps/digletts_cave_route_11_entrance.asm b/text/maps/DiglettsCaveRoute11.asm
index ecd3225e..ecd3225e 100644
--- a/text/maps/digletts_cave_route_11_entrance.asm
+++ b/text/maps/DiglettsCaveRoute11.asm
diff --git a/text/maps/digletts_cave_route_2_entrance.asm b/text/maps/DiglettsCaveRoute2.asm
index a04bbef7..a04bbef7 100644
--- a/text/maps/digletts_cave_route_2_entrance.asm
+++ b/text/maps/DiglettsCaveRoute2.asm
diff --git a/text/maps/fighting_dojo.asm b/text/maps/FightingDojo.asm
index a6ccc8c3..a6ccc8c3 100644
--- a/text/maps/fighting_dojo.asm
+++ b/text/maps/FightingDojo.asm
diff --git a/text/maps/fuchsia_house.asm b/text/maps/FuchsiaBillsGrandpasHouse.asm
index 7b6556b1..7b6556b1 100644
--- a/text/maps/fuchsia_house.asm
+++ b/text/maps/FuchsiaBillsGrandpasHouse.asm
diff --git a/text/maps/fuchsia_city.asm b/text/maps/FuchsiaCity.asm
index 0392a1ed..0392a1ed 100644
--- a/text/maps/fuchsia_city.asm
+++ b/text/maps/FuchsiaCity.asm
diff --git a/text/maps/FuchsiaGoodRodHouse.asm b/text/maps/FuchsiaGoodRodHouse.asm
new file mode 100644
index 00000000..b1b8b2f2
--- /dev/null
+++ b/text/maps/FuchsiaGoodRodHouse.asm
@@ -0,0 +1,43 @@
+_FuchsiaHouse3Text_561bd::
+ text "I'm the FISHING"
+ line "GURU's older"
+ cont "brother!"
+
+ para "I simply Looove"
+ line "fishing!"
+
+ para "Do you like to"
+ line "fish?"
+ done
+
+_FuchsiaHouse3Text_561c2::
+ text "Grand! I like"
+ line "your style!"
+
+ para "Take this and"
+ line "fish, young one!"
+
+ para "<PLAYER> received"
+ line "a @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_FuchsiaHouse3Text_56212::
+ text "Oh... That's so"
+ line "disappointing..."
+ done
+
+_FuchsiaHouse3Text_56217::
+ text "Hello there,"
+ line "<PLAYER>!"
+
+ para "How are the fish"
+ line "biting?"
+ done
+
+_FuchsiaHouse3Text_5621c::
+ text "Oh no!"
+
+ para "You have no room"
+ line "for my gift!"
+ done
diff --git a/text/maps/FuchsiaGym.asm b/text/maps/FuchsiaGym.asm
new file mode 100644
index 00000000..fc4e8f59
--- /dev/null
+++ b/text/maps/FuchsiaGym.asm
@@ -0,0 +1,220 @@
+_KogaBeforeBattleText::
+ text "KOGA: Fwahahaha!"
+
+ para "A mere child like"
+ line "you dares to"
+ cont "challenge me?"
+
+ para "Very well, I"
+ line "shall show you"
+ cont "true terror as a"
+ cont "ninja master!"
+
+ para "You shall feel"
+ line "the despair of"
+ cont "poison and sleep"
+ cont "techniques!"
+ done
+
+_KogaAfterBattleText::
+ text "Humph!"
+ line "You have proven"
+ cont "your worth!"
+
+ para "Here! Take the"
+ line "SOULBADGE!"
+ prompt
+
+_KogaExplainToxicText::
+ text "When afflicted by"
+ line "TOXIC, #MON"
+ cont "suffer more and"
+ cont "more as battle"
+ cont "progresses!"
+
+ para "It will surely"
+ line "terrorize foes!"
+ done
+
+_FuchsiaGymText9::
+ text "Now that you have"
+ line "the SOULBADGE,"
+ cont "the DEFENSE of"
+ cont "your #MON"
+ cont "increases!"
+
+ para "It also lets you"
+ line "SURF outside of"
+ cont "battle!"
+
+ para "Ah! Take this"
+ line "too!"
+ done
+
+_ReceivedTM06Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM06ExplanationText::
+ text ""
+ para "TM06 contains"
+ line "TOXIC!"
+
+ para "It is a secret"
+ line "technique over"
+ cont "400 years old!"
+ done
+
+_TM06NoRoomText::
+ text "Make space for"
+ line "this, child!"
+ done
+
+_FuchsiaGymBattleText1::
+ text "Strength isn't"
+ line "the key for"
+ cont "#MON!"
+
+ para "It's strategy!"
+
+ para "I'll show you how"
+ line "strategy can beat"
+ cont "brute strength!"
+ done
+
+_FuchsiaGymEndBattleText1::
+ text "What?"
+ line "Extraordinary!"
+ prompt
+
+_FuchsiaGymAfterBattleText1::
+ text "So, you mix brawn"
+ line "with brains?"
+ cont "Good strategy!"
+ done
+
+_FuchsiaGymBattleText2::
+ text "I wanted to become"
+ line "a ninja, so I"
+ cont "joined this GYM!"
+ done
+
+_FuchsiaGymEndBattleText2::
+ text "I'm done"
+ line "for!"
+ prompt
+
+_FuchsiaGymAfterBattleText2::
+ text "I will keep on"
+ line "training under"
+ cont "KOGA, my ninja"
+ cont "master!"
+ done
+
+_FuchsiaGymBattleText3::
+ text "Let's see you"
+ line "beat my special"
+ cont "techniques!"
+ done
+
+_FuchsiaGymEndBattleText3::
+ text "You"
+ line "had me fooled!"
+ prompt
+
+_FuchsiaGymAfterBattleText3::
+ text "I like poison and"
+ line "sleep techniques,"
+ cont "as they linger"
+ cont "after battle!"
+ done
+
+_FuchsiaGymBattleText4::
+ text "Stop right there!"
+
+ para "Our invisible"
+ line "walls have you"
+ cont "frustrated?"
+ done
+
+_FuchsiaGymEndBattleText4::
+ text "Whoa!"
+ line "He's got it!"
+ prompt
+
+_FuchsiaGymAfterBattleText4::
+ text "You impressed me!"
+ line "Here's a hint!"
+
+ para "Look very closely"
+ line "for gaps in the"
+ cont "invisible walls!"
+ done
+
+_FuchsiaGymBattleText5::
+ text "I also study the"
+ line "way of the ninja"
+ cont "with master KOGA!"
+
+ para "Ninja have a long"
+ line "history of using"
+ cont "animals!"
+ done
+
+_FuchsiaGymEndBattleText5::
+ text "Awoo!"
+ prompt
+
+_FuchsiaGymAfterBattleText5::
+ text "I still have much"
+ line "to learn!"
+ done
+
+_FuchsiaGymBattleText6::
+ text "Master KOGA comes"
+ line "from a long line"
+ cont "of ninjas!"
+
+ para "What did you"
+ line "descend from?"
+ done
+
+_FuchsiaGymEndBattleText6::
+ text "Dropped"
+ line "my balls!"
+ prompt
+
+_FuchsiaGymAfterBattleText6::
+ text "Where there is"
+ line "light, there is"
+ cont "shadow!"
+
+ para "Light and shadow!"
+ line "Which do you"
+ cont "choose?"
+ done
+
+_FuchsiaGymText_7564e::
+ text "Yo! Champ in"
+ line "making!"
+
+ para "FUCHSIA GYM is"
+ line "riddled with"
+ cont "invisible walls!"
+
+ para "KOGA might appear"
+ line "close, but he's"
+ cont "blocked off!"
+
+ para "You have to find"
+ line "gaps in the walls"
+ cont "to reach him!"
+ done
+
+_FuchsiaGymText_75653::
+ text "It's amazing how"
+ line "ninja can terrify"
+ cont "even now!"
+ done
diff --git a/text/maps/fuchsia_mart.asm b/text/maps/FuchsiaMart.asm
index 574898ce..574898ce 100644
--- a/text/maps/fuchsia_mart.asm
+++ b/text/maps/FuchsiaMart.asm
diff --git a/text/maps/fuchsia_meeting_room.asm b/text/maps/FuchsiaMeetingRoom.asm
index 10675ead..10675ead 100644
--- a/text/maps/fuchsia_meeting_room.asm
+++ b/text/maps/FuchsiaMeetingRoom.asm
diff --git a/text/maps/fuchsia_pokecenter.asm b/text/maps/FuchsiaPokecenter.asm
index a0def7eb..a0def7eb 100644
--- a/text/maps/fuchsia_pokecenter.asm
+++ b/text/maps/FuchsiaPokecenter.asm
diff --git a/text/maps/GameCorner.asm b/text/maps/GameCorner.asm
new file mode 100644
index 00000000..c3e4f88e
--- /dev/null
+++ b/text/maps/GameCorner.asm
@@ -0,0 +1,181 @@
+_CeladonGameCornerText1::
+ text "Welcome!"
+
+ para "You can exchange"
+ line "your coins for"
+ cont "fabulous prizes"
+ cont "next door."
+ done
+
+_CeladonGameCornerText_48d22::
+ text "Welcome to ROCKET"
+ line "GAME CORNER!"
+
+ para "Do you need some"
+ line "game coins?"
+
+ para "It's ¥1000 for 50"
+ line "coins. Would you"
+ cont "like some?"
+ done
+
+_CeladonGameCornerText_48d27::
+ text "Thanks! Here are"
+ line "your 50 coins!"
+ done
+
+_CeladonGameCornerText_48d2c::
+ text "No? Please come"
+ line "play sometime!"
+ done
+
+_CeladonGameCornerText_48d31::
+ text "You can't afford"
+ line "the coins!"
+ done
+
+_CeladonGameCornerText_48d36::
+ text "Oops! Your COIN"
+ line "CASE is full."
+ done
+
+_CeladonGameCornerText_48d3b::
+ text "You don't have a"
+ line "COIN CASE!"
+ done
+
+_CeladonGameCornerText3::
+ text "Keep this quiet."
+
+ para "It's rumored that"
+ line "this place is run"
+ cont "by TEAM ROCKET."
+ done
+
+_CeladonGameCornerText4::
+ text "I think these"
+ line "machines have"
+ cont "different odds."
+ done
+
+_CeladonGameCornerText_48d9c::
+ text "Kid, do you want"
+ line "to play?"
+ prompt
+
+_Received10CoinsText::
+ text "<PLAYER> received"
+ line "10 coins!@@"
+
+_CeladonGameCornerText_48da7::
+ text "You don't need my"
+ line "coins!"
+ done
+
+_CeladonGameCornerText_48dac::
+ text "Wins seem to come"
+ line "and go."
+ done
+
+_CeladonGameCornerText6::
+ text "I'm having a"
+ line "wonderful time!"
+ done
+
+_CeladonGameCornerText_48dca::
+ text "Hey!"
+
+ para "You have better"
+ line "things to do,"
+ cont "champ in making!"
+
+ para "CELADON GYM's"
+ line "LEADER is ERIKA!"
+ cont "She uses grass-"
+ cont "type #MON!"
+
+ para "She might appear"
+ line "docile, but don't"
+ cont "be fooled!"
+ done
+
+_CeladonGameCornerText_48dcf::
+ text "They offer rare"
+ line "#MON that can"
+ cont "be exchanged for"
+ cont "your coins."
+
+ para "But, I just can't"
+ line "seem to win!"
+ done
+
+_CeladonGameCornerText8::
+ text "Games are scary!"
+ line "It's so easy to"
+ cont "get hooked!"
+ done
+
+_CeladonGameCornerText_48e26::
+ text "What's up? Want"
+ line "some coins?"
+ prompt
+
+_Received20CoinsText::
+ text "<PLAYER> received"
+ line "20 coins!@@"
+
+_CeladonGameCornerText_48e31::
+ text "You have lots of"
+ line "coins!"
+ done
+
+_CeladonGameCornerText_48e36::
+ text "Darn! I need more"
+ line "coins for the"
+ cont "#MON I want!"
+ done
+
+_CeladonGameCornerText_48e88::
+ text "Hey, what? You're"
+ line "throwing me off!"
+ cont "Here are some"
+ cont "coins, shoo!"
+ prompt
+
+_CeladonGameCornerText_48e8d::
+ text "<PLAYER> received"
+ line "20 coins!@@"
+
+_CeladonGameCornerText_48e93::
+ text "You've got your"
+ line "own coins!"
+ done
+
+_CeladonGameCornerText_48e98::
+ text "The trick is to"
+ line "watch the reels"
+ cont "closely!"
+ done
+
+_CeladonGameCornerText_48ece::
+ text "I'm guarding this"
+ line "poster!"
+ cont "Go away, or else!"
+ done
+
+_CeladonGameCornerText_48ed3::
+ text "Dang!"
+ prompt
+
+_CeladonGameCornerText_48ed8::
+ text "Our hideout might"
+ line "be discovered! I"
+ cont "better tell BOSS!"
+ done
+
+_CeladonGameCornerText_48f09::
+ text "Hey!"
+
+ para "A switch behind"
+ line "the poster!?"
+ cont "Let's push it!@@"
diff --git a/text/maps/celadon_prize_room.asm b/text/maps/GameCornerPrizeRoom.asm
index 6b2bb537..6b2bb537 100644
--- a/text/maps/celadon_prize_room.asm
+++ b/text/maps/GameCornerPrizeRoom.asm
diff --git a/text/maps/celadon_game_corner_2.asm b/text/maps/GameCorner_2.asm
index c288464d..c288464d 100755
--- a/text/maps/celadon_game_corner_2.asm
+++ b/text/maps/GameCorner_2.asm
diff --git a/text/maps/hall_of_fame.asm b/text/maps/HallOfFame.asm
index 8faefd3f..8faefd3f 100644
--- a/text/maps/hall_of_fame.asm
+++ b/text/maps/HallOfFame.asm
diff --git a/text/maps/indigo_plateau_lobby.asm b/text/maps/IndigoPlateauLobby.asm
index 8487e29a..8487e29a 100644
--- a/text/maps/indigo_plateau_lobby.asm
+++ b/text/maps/IndigoPlateauLobby.asm
diff --git a/text/maps/LancesRoom.asm b/text/maps/LancesRoom.asm
new file mode 100644
index 00000000..e47b006e
--- /dev/null
+++ b/text/maps/LancesRoom.asm
@@ -0,0 +1,63 @@
+_LanceBeforeBattleText::
+ text "Ah! I heard about"
+ line "you, <PLAYER>!"
+
+ para "I lead the ELITE"
+ line "FOUR! You can"
+ cont "call me LANCE the"
+ cont "dragon trainer!"
+
+ para "You know that"
+ line "dragons are"
+ cont "mythical #MON!"
+
+ para "They're hard to"
+ line "catch and raise,"
+ cont "but their powers"
+ cont "are superior!"
+
+ para "They're virtually"
+ line "indestructible!"
+
+ para "Well, are you"
+ line "ready to lose?"
+
+ para "Your LEAGUE"
+ line "challenge ends"
+ cont "with me, <PLAYER>!"
+ done
+
+_LanceEndBattleText::
+ text "That's it!"
+
+ para "I hate to admit"
+ line "it, but you are a"
+ cont "#MON master!"
+ prompt
+
+_LanceAfterBattleText::
+ text "I still can't"
+ line "believe my"
+ cont "dragons lost to"
+ cont "you, <PLAYER>!"
+
+ para "You are now the"
+ line "#MON LEAGUE"
+ cont "champion!"
+
+ para "...Or, you would"
+ line "have been, but"
+ cont "you have one more"
+ cont "challenge ahead."
+
+ para "You have to face"
+ line "another trainer!"
+ cont "His name is..."
+
+ para "<RIVAL>!"
+ line "He beat the ELITE"
+ cont "FOUR before you!"
+
+ para "He is the real"
+ line "#MON LEAGUE"
+ cont "champion!@@"
diff --git a/text/maps/lavender_house.asm b/text/maps/LavenderCuboneHouse.asm
index 66cc85a5..66cc85a5 100644
--- a/text/maps/lavender_house.asm
+++ b/text/maps/LavenderCuboneHouse.asm
diff --git a/text/maps/lavender_mart.asm b/text/maps/LavenderMart.asm
index 222712c6..222712c6 100644
--- a/text/maps/lavender_mart.asm
+++ b/text/maps/LavenderMart.asm
diff --git a/text/maps/lavender_pokecenter.asm b/text/maps/LavenderPokecenter.asm
index 3aa7b67d..3aa7b67d 100644
--- a/text/maps/lavender_pokecenter.asm
+++ b/text/maps/LavenderPokecenter.asm
diff --git a/text/maps/lavender_town.asm b/text/maps/LavenderTown.asm
index 19b6c8c8..19b6c8c8 100644
--- a/text/maps/lavender_town.asm
+++ b/text/maps/LavenderTown.asm
diff --git a/text/maps/lorelei.asm b/text/maps/LoreleisRoom.asm
index fdbb55b4..fdbb55b4 100644
--- a/text/maps/lorelei.asm
+++ b/text/maps/LoreleisRoom.asm
diff --git a/text/maps/MrFujisHouse.asm b/text/maps/MrFujisHouse.asm
new file mode 100644
index 00000000..f903eb6a
--- /dev/null
+++ b/text/maps/MrFujisHouse.asm
@@ -0,0 +1,86 @@
+_LavenderHouse1Text_1d8d1::
+ text "That's odd, MR.FUJI"
+ line "isn't here."
+ cont "Where'd he go?"
+ done
+
+_LavenderHouse1Text_1d8d6::
+ text "MR.FUJI had been"
+ line "praying alone for"
+ cont "CUBONE's mother."
+ done
+
+_LavenderHouse1Text_1d8f4::
+ text "This is really"
+ line "MR.FUJI's house."
+
+ para "He's really kind!"
+
+ para "He looks after"
+ line "abandoned and"
+ cont "orphaned #MON!"
+ done
+
+_LavenderHouse1Text_1d8f9::
+ text "It's so warm!"
+ line "#MON are so"
+ cont "nice to hug!"
+ done
+
+_LavenderHouse1Text3::
+ text "PSYDUCK: Gwappa!@@"
+
+_LavenderHouse1Text4::
+ text "NIDORINO: Gaoo!@@"
+
+_LavenderHouse1Text_1d94c::
+ text "MR.FUJI: <PLAYER>."
+
+ para "Your #DEX quest"
+ line "may fail without"
+ cont "love for your"
+ cont "#MON."
+
+ para "I think this may"
+ line "help your quest."
+ prompt
+
+_ReceivedFluteText::
+ text "<PLAYER> received"
+ line "a @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_FluteExplanationText::
+ text ""
+
+ para "Upon hearing #"
+ line "FLUTE, sleeping"
+ cont "#MON will"
+ cont "spring awake."
+
+ para "It works on all"
+ line "sleeping #MON."
+ done
+
+_FluteNoRoomText::
+ text "You must make"
+ line "room for this!"
+ done
+
+_MrFujiAfterFluteText::
+ text "MR.FUJI: Has my"
+ line "FLUTE helped you?"
+ done
+
+_LavenderHouse1Text6::
+ text "#MON Monthly"
+ line "Grand Prize"
+ cont "Drawing!"
+
+ para "The application"
+ line "form is..."
+
+ para "Gone! It's been"
+ line "clipped out!"
+ done
diff --git a/text/maps/MrPsychicsHouse.asm b/text/maps/MrPsychicsHouse.asm
new file mode 100644
index 00000000..7be2e11e
--- /dev/null
+++ b/text/maps/MrPsychicsHouse.asm
@@ -0,0 +1,25 @@
+_TM29PreReceiveText::
+ text "...Wait! Don't"
+ line "say a word!"
+
+ para "You wanted this!"
+ prompt
+
+_ReceivedTM29Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM29ExplanationText::
+ text "TM29 is PSYCHIC!"
+
+ para "It can lower the"
+ line "target's SPECIAL"
+ cont "abilities."
+ done
+
+_TM29NoRoomText::
+ text "Where do you plan"
+ line "to put this?"
+ done
diff --git a/text/maps/mt_moon_1f.asm b/text/maps/MtMoon1F.asm
index 2e8c960e..2e8c960e 100644
--- a/text/maps/mt_moon_1f.asm
+++ b/text/maps/MtMoon1F.asm
diff --git a/text/maps/MtMoonB1F.asm b/text/maps/MtMoonB1F.asm
new file mode 100644
index 00000000..755fa583
--- /dev/null
+++ b/text/maps/MtMoonB1F.asm
@@ -0,0 +1,3 @@
+_MtMoonText1::
+ text ""
+ done
diff --git a/text/maps/MtMoonB2F.asm b/text/maps/MtMoonB2F.asm
new file mode 100644
index 00000000..ab5da5a6
--- /dev/null
+++ b/text/maps/MtMoonB2F.asm
@@ -0,0 +1,125 @@
+_MtMoonJessieJamesText1::
+ text "Stop right there!@@"
+
+_MtMoonJessieJamesText2::
+ text "That fossil is"
+ line "TEAM ROCKET's!"
+
+ para "Surrender now, or "
+ line "prepare to fight!"
+ done
+
+_MtMoonJessieJamesText3::
+ text "A"
+ line "brat beat us?"
+ prompt
+
+_MtMoonJessieJamesText4::
+ text "TEAM ROCKET, blast"
+ line "off at the speed"
+ cont "of light!@@"
+
+_MtMoon3Text_49f24::
+ text "You want the"
+ line "DOME FOSSIL?"
+ done
+
+_MtMoon3Text_49f64::
+ text "You want the"
+ line "HELIX FOSSIL?"
+ done
+
+_MtMoon3Text_49f6f::
+ text "<PLAYER> got the"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_MtMoon3Text_49f7f::
+ text "Look, you've got"
+ line "no room for this.@@"
+
+_MtMoon3Text_49f85::
+ text "Hey, stop!"
+
+ para "I found these"
+ line "fossils! They're"
+ cont "both mine!"
+ done
+
+_MtMoon3Text_49f8a::
+ text "OK!"
+ line "I'll share!"
+ prompt
+
+_MtMoon3Text_49f8f::
+ text "We'll each take"
+ line "one!"
+ cont "No being greedy!"
+ done
+
+_MtMoon3Text_49f94::
+ text "Far away, on"
+ line "CINNABAR ISLAND,"
+ cont "there's a #MON"
+ cont "LAB."
+
+ para "They do research"
+ line "on regenerating"
+ cont "fossils."
+ done
+
+_MtMoon3Text_49f99::
+ text "All right. Then"
+ line "this is mine!@@"
+
+_MtMoon3BattleText3::
+ text "We, TEAM ROCKET,"
+ line "are #MON"
+ cont "gangsters!"
+ done
+
+_MtMoon3EndBattleText3::
+ text "I blew"
+ line "it!"
+ prompt
+
+_MtMoon3AfterBattleText3::
+ text "Darn it all! My"
+ line "associates won't"
+ cont "stand for this!"
+ done
+
+_MtMoon3BattleText4::
+ text "We're pulling a"
+ line "big job here!"
+ cont "Get lost, kid!"
+ done
+
+_MtMoon3EndBattleText4::
+ text "So, you"
+ line "are good."
+ prompt
+
+_MtMoon3AfterBattleText4::
+ text "If you find a"
+ line "fossil, give it"
+ cont "to me and scram!"
+ done
+
+_MtMoon3BattleText5::
+ text "Little kids"
+ line "should leave"
+ cont "grown-ups alone!"
+ done
+
+_MtMoon3EndBattleText5::
+ text "I'm"
+ line "steamed!"
+ prompt
+
+_MtMoon3AfterBattleText5::
+ text "#MON lived"
+ line "here long before"
+ cont "people came."
+ done
diff --git a/text/maps/MtMoonPokecenter.asm b/text/maps/MtMoonPokecenter.asm
new file mode 100644
index 00000000..ab3cf6ed
--- /dev/null
+++ b/text/maps/MtMoonPokecenter.asm
@@ -0,0 +1,48 @@
+_MtMoonPokecenterText1::
+ text "I've 6 # BALLs"
+ line "set in my belt."
+
+ para "At most, you can"
+ line "carry 6 #MON."
+ done
+
+_MtMoonPokecenterText3::
+ text "TEAM ROCKET"
+ line "attacks CERULEAN"
+ cont "citizens..."
+
+ para "TEAM ROCKET is"
+ line "always in the"
+ cont "news!"
+ done
+
+_MtMoonPokecenterText5::
+ text ""
+ done
+
+_MagikarpSalesmanText1::
+ text "MAN: Hello, there!"
+ line "Have I got a deal"
+ cont "just for you!"
+
+ para "I'll let you have"
+ line "a swell MAGIKARP"
+ cont "for just ¥500!"
+ cont "What do you say?"
+ done
+
+_MagikarpSalesmanNoText::
+ text "No? I'm only"
+ line "doing this as a"
+ cont "favor to you!"
+ done
+
+_MagikarpSalesmanNoMoneyText::
+ text "You'll need more"
+ line "money than that!"
+ done
+
+_MagikarpSalesmanText2::
+ text "MAN: Well, I don't"
+ line "give refunds!"
+ done
diff --git a/text/maps/museum_1f.asm b/text/maps/Museum1F.asm
index ecb511aa..ecb511aa 100644
--- a/text/maps/museum_1f.asm
+++ b/text/maps/Museum1F.asm
diff --git a/text/maps/museum_2f.asm b/text/maps/Museum2F.asm
index 12cfe8b2..12cfe8b2 100644
--- a/text/maps/museum_2f.asm
+++ b/text/maps/Museum2F.asm
diff --git a/text/maps/name_rater.asm b/text/maps/NameRatersHouse.asm
index 7194a927..7194a927 100644
--- a/text/maps/name_rater.asm
+++ b/text/maps/NameRatersHouse.asm
diff --git a/text/maps/oaks_lab.asm b/text/maps/OaksLab.asm
index 097fa931..097fa931 100644
--- a/text/maps/oaks_lab.asm
+++ b/text/maps/OaksLab.asm
diff --git a/text/maps/PalletTown.asm b/text/maps/PalletTown.asm
new file mode 100644
index 00000000..9ca8dc93
--- /dev/null
+++ b/text/maps/PalletTown.asm
@@ -0,0 +1,67 @@
+_OakAppearsText::
+ text "OAK: Hey! Wait!"
+ line "Don't go out!@@"
+
+_OakWalksUpText::
+ text "OAK: That was"
+ line "close!"
+
+ para "Wild #MON live"
+ line "in tall grass!"
+ done
+
+_OakWhewText::
+ text "OAK: Whew..."
+ done
+
+_OakGrassText::
+ text "OAK: A #MON can"
+ line "appear anytime in"
+ cont "tall grass."
+
+ para "You need your own"
+ line "#MON for your"
+ cont "protection."
+ cont "I know!"
+
+ para "Here, come with"
+ line "me!"
+ done
+
+_PalletTownText2::
+ text "I'm raising"
+ line "#MON too!"
+
+ para "When they get"
+ line "strong, they can"
+ cont "protect me!"
+ done
+
+_PalletTownText3::
+ text "Technology is"
+ line "incredible!"
+
+ para "You can now store"
+ line "and recall items"
+ cont "and #MON as"
+ cont "data via PC!"
+ done
+
+_PalletTownText4::
+ text "OAK #MON"
+ line "RESEARCH LAB"
+ done
+
+_PalletTownText5::
+ text "PALLET TOWN"
+ line "Shades of your"
+ cont "journey await!"
+ done
+
+_PalletTownText6::
+ text "<PLAYER>'s house "
+ done
+
+_PalletTownText7::
+ text "<RIVAL>'s house "
+ done
diff --git a/text/maps/PewterCity.asm b/text/maps/PewterCity.asm
new file mode 100644
index 00000000..14240c9e
--- /dev/null
+++ b/text/maps/PewterCity.asm
@@ -0,0 +1,117 @@
+_PewterCityText1::
+ text "It's rumored that"
+ line "CLEFAIRYs came"
+ cont "from the moon!"
+
+ para "They appeared "
+ line "after MOON STONE"
+ cont "fell on MT.MOON."
+ done
+
+_PewterCityText2::
+ text "There aren't many"
+ line "serious #MON"
+ cont "trainers here!"
+
+ para "They're all like"
+ line "BUG CATCHERs,"
+ cont "but PEWTER GYM's"
+ cont "BROCK is totally"
+ cont "into it!"
+ done
+
+_PewterCityText_193f1::
+ text "Did you check out"
+ line "the MUSEUM?"
+ done
+
+_PewterCityText_193f6::
+ text "Weren't those"
+ line "fossils from MT."
+ cont "MOON amazing?"
+ done
+
+_PewterCityText_193fb::
+ text "Really?"
+ line "You absolutely"
+ cont "have to go!"
+ done
+
+_PewterCityText13::
+ text "It's right here!"
+ line "You have to pay"
+ cont "to get in, but"
+ cont "it's worth it!"
+ cont "See you around!"
+ done
+
+_PewterCityText_19427::
+ text "Psssst!"
+ line "Do you know what"
+ cont "I'm doing?"
+ done
+
+_PewterCityText_1942c::
+ text "That's right!"
+ line "It's hard work!"
+ done
+
+_PewterCityText_19431::
+ text "I'm spraying REPEL"
+ line "to keep #MON"
+ cont "out of my garden!"
+ done
+
+_PewterCityText_1945d::
+ text "You're a trainer"
+ line "right? BROCK's"
+ cont "looking for new"
+ cont "challengers!"
+ cont "Follow me!"
+ done
+
+_PewterCityText14::
+ text "If you have the"
+ line "right stuff, go"
+ cont "take on BROCK!"
+ done
+
+_PewterCityText6::
+ text "TRAINER TIPS"
+
+ para "Any #MON that"
+ line "takes part in"
+ cont "battle, however"
+ cont "short, earns EXP!"
+ done
+
+_PewterCityText7::
+ text "NOTICE!"
+
+ para "Thieves have been"
+ line "stealing #MON"
+ cont "fossils at MT."
+ cont "MOON! Please call"
+ cont "PEWTER POLICE"
+ cont "with any info!"
+ done
+
+_PewterCityText10::
+ text "PEWTER MUSEUM"
+ line "OF SCIENCE"
+ done
+
+_PewterCityText11::
+ text "PEWTER CITY"
+ line "#MON GYM"
+ cont "LEADER: BROCK"
+
+ para "The Rock Solid"
+ line "#MON Trainer!"
+ done
+
+_PewterCityText12::
+ text "PEWTER CITY"
+ line "A Stone Gray"
+ cont "City"
+ done
diff --git a/text/maps/PewterGym.asm b/text/maps/PewterGym.asm
new file mode 100644
index 00000000..0e156577
--- /dev/null
+++ b/text/maps/PewterGym.asm
@@ -0,0 +1,184 @@
+_PewterGymText_5c49e::
+ text "I'm BROCK!"
+ line "I'm PEWTER's GYM"
+ cont "LEADER!"
+
+ para "I believe in rock"
+ line "hard defense and"
+ cont "determination!"
+
+ para "That's why my"
+ line "#MON are all"
+ cont "the rock-type!"
+
+ para "Do you still want"
+ line "to challenge me?"
+ cont "Fine then! Show"
+ cont "me your best!"
+ done
+
+_PewterGymText_5c4a3::
+ text "There are all"
+ line "kinds of trainers"
+ cont "in the world!"
+
+ para "Some raise #MON"
+ line "for fights. Some"
+ cont "see them as pets."
+
+ para "I'm in training to"
+ line "become a #MON"
+ cont "breeder."
+
+ para "If you take your"
+ line "#MON training"
+ cont "seriously, go"
+ cont "visit the GYM in"
+ cont "CERULEAN and test"
+ cont "your abilities!"
+ done
+
+_TM34PreReceiveText::
+ text "Wait! Take this"
+ line "with you!"
+ done
+
+_ReceivedTM34Text::
+ text "<PLAYER> received"
+ line "TM34!@@"
+
+_TM34ExplanationText::
+ text ""
+
+ para "A TM contains a"
+ line "technique that"
+ cont "can be taught to"
+ cont "#MON!"
+
+ para "A TM is good only"
+ line "once! So when you"
+ cont "use one to teach"
+ cont "a new technique,"
+ cont "pick the #MON"
+ cont "carefully!"
+
+ para "TM34 contains"
+ line "BIDE!"
+
+ para "Your #MON will"
+ line "absorb damage in"
+ cont "battle then pay"
+ cont "it back double!"
+ done
+
+_TM34NoRoomText::
+ text "You don't have"
+ line "room for this!"
+ done
+
+_PewterGymText_5c4bc::
+ text "I took"
+ line "you for granted."
+
+ para "As proof of your"
+ line "victory, here's"
+ cont "the BOULDERBADGE!"
+
+ para "<PLAYER> received"
+ line "the BOULDERBADGE!@@"
+
+_PewterGymText_5c4c1::
+ text ""
+
+ para "That's an official"
+ line "#MON LEAGUE"
+ cont "BADGE!"
+
+ para "Its bearer's"
+ line "#MON become"
+ cont "more powerful!"
+
+ para "The technique"
+ line "FLASH can now be"
+ cont "used anytime!"
+ prompt
+
+_PewterGymBattleText1::
+ text "Stop right there,"
+ line "kid!"
+
+ para "You're still light"
+ line "years from facing"
+ cont "BROCK!"
+ done
+
+_PewterGymEndBattleText1::
+ text "Darn!"
+
+ para "Light years isn't"
+ line "time! It measures"
+ cont "distance!"
+ prompt
+
+_PewterGymAfterBattleText1::
+ text "You're pretty hot,"
+ line "but not as hot"
+ cont "as BROCK!"
+ done
+
+_PewterGymText_5c515::
+ text "Hiya! I can tell"
+ line "you have what it"
+ cont "takes to become a"
+ cont "#MON champ!"
+
+ para "I'm no trainer,"
+ line "but I can tell"
+ cont "you how to win!"
+
+ para "Let me take you"
+ line "to the top!"
+ done
+
+_PewterGymText_5c51a::
+ text "All right! Let's"
+ line "get happening!"
+ prompt
+
+_PewterGymText_5c51f::
+ text "The 1st #MON"
+ line "out in a match is"
+ cont "at the top of the"
+ cont "#MON LIST!"
+
+ para "By changing the"
+ line "order of #MON,"
+ cont "matches could be"
+ cont "made easier!"
+ done
+
+_PewterGymText_5c524::
+ text "It's a free"
+ line "service! Let's"
+ cont "get happening!"
+ prompt
+
+_PewterGymText_5c529::
+ text "Just as I thought!"
+ line "You're #MON"
+ cont "champ material!"
+ done
+
+_PewterGymGuyText::
+ text "All right! Let's"
+ line "get happening!"
+
+ para "It will be tough"
+ line "for your PIKACHU"
+ cont "at this GYM!"
+
+ para "Electric attacks"
+ line "are harmless to"
+ cont "BROCK's ground-"
+ cont "type #MON."
+ done
diff --git a/text/maps/pewter_mart.asm b/text/maps/PewterMart.asm
index 4dbc3c02..4dbc3c02 100644
--- a/text/maps/pewter_mart.asm
+++ b/text/maps/PewterMart.asm
diff --git a/text/maps/pewter_house_1.asm b/text/maps/PewterNidoranHouse.asm
index 450e8372..450e8372 100644
--- a/text/maps/pewter_house_1.asm
+++ b/text/maps/PewterNidoranHouse.asm
diff --git a/text/maps/pewter_pokecenter.asm b/text/maps/PewterPokecenter.asm
index 968f6af0..968f6af0 100644
--- a/text/maps/pewter_pokecenter.asm
+++ b/text/maps/PewterPokecenter.asm
diff --git a/text/maps/pewter_house_2.asm b/text/maps/PewterSpeechHouse.asm
index 615536f7..615536f7 100644
--- a/text/maps/pewter_house_2.asm
+++ b/text/maps/PewterSpeechHouse.asm
diff --git a/text/maps/fan_club.asm b/text/maps/PokemonFanClub.asm
index 5fcd469d..5fcd469d 100644
--- a/text/maps/fan_club.asm
+++ b/text/maps/PokemonFanClub.asm
diff --git a/text/maps/mansion_1f.asm b/text/maps/PokemonMansion1F.asm
index a3c517fb..a3c517fb 100644
--- a/text/maps/mansion_1f.asm
+++ b/text/maps/PokemonMansion1F.asm
diff --git a/text/maps/mansion_2f.asm b/text/maps/PokemonMansion2F.asm
index 378efb30..378efb30 100644
--- a/text/maps/mansion_2f.asm
+++ b/text/maps/PokemonMansion2F.asm
diff --git a/text/maps/mansion_3f.asm b/text/maps/PokemonMansion3F.asm
index 70331fdf..70331fdf 100644
--- a/text/maps/mansion_3f.asm
+++ b/text/maps/PokemonMansion3F.asm
diff --git a/text/maps/mansion_b1f.asm b/text/maps/PokemonMansionB1F.asm
index 1bc1ef89..1bc1ef89 100644
--- a/text/maps/mansion_b1f.asm
+++ b/text/maps/PokemonMansionB1F.asm
diff --git a/text/maps/pokemon_tower_1f.asm b/text/maps/PokemonTower1F.asm
index 50a2cd29..50a2cd29 100644
--- a/text/maps/pokemon_tower_1f.asm
+++ b/text/maps/PokemonTower1F.asm
diff --git a/text/maps/PokemonTower2F.asm b/text/maps/PokemonTower2F.asm
new file mode 100644
index 00000000..79323001
--- /dev/null
+++ b/text/maps/PokemonTower2F.asm
@@ -0,0 +1,57 @@
+_PokemonTower2Text_6062d::
+ text "<RIVAL>: Hey,"
+ line "<PLAYER>! What"
+ cont "brings you here?"
+ cont "Your #MON"
+ cont "don't look dead!"
+
+ para "I can at least"
+ line "make them faint!"
+ cont "Let's go, pal!"
+ done
+
+_PokemonTower2Text_60632::
+ text "What?"
+ line "You stinker!"
+
+ para "I took it easy on"
+ line "you too!"
+ prompt
+
+_PokemonTower2Text_60637::
+ text "<RIVAL>: Well,"
+ line "look at all your"
+ cont "wimpy #MON!"
+
+ para "Toughen them up a"
+ line "bit more!"
+ prompt
+
+_PokemonTower2Text_6063c::
+ text "How's your #DEX"
+ line "coming, pal?"
+ cont "I just caught a"
+ cont "CUBONE!"
+
+ para "I can't find the"
+ line "grown-up MAROWAK"
+ cont "yet!"
+
+ para "I doubt there are"
+ line "any left! Well, I"
+ cont "better get going!"
+ cont "I've got a lot to"
+ cont "accomplish, pal!"
+
+ para "Smell ya later!"
+ done
+
+_PokemonTower2Text2::
+ text "Even we could not"
+ line "identify the"
+ cont "wayward GHOSTs!"
+
+ para "A SILPH SCOPE"
+ line "might be able to"
+ cont "unmask them."
+ done
diff --git a/text/maps/pokemon_tower_3f.asm b/text/maps/PokemonTower3F.asm
index 67098e6b..67098e6b 100644
--- a/text/maps/pokemon_tower_3f.asm
+++ b/text/maps/PokemonTower3F.asm
diff --git a/text/maps/pokemon_tower_4f.asm b/text/maps/PokemonTower4F.asm
index 771325a0..771325a0 100644
--- a/text/maps/pokemon_tower_4f.asm
+++ b/text/maps/PokemonTower4F.asm
diff --git a/text/maps/PokemonTower5F.asm b/text/maps/PokemonTower5F.asm
new file mode 100644
index 00000000..b329118d
--- /dev/null
+++ b/text/maps/PokemonTower5F.asm
@@ -0,0 +1,71 @@
+_PokemonTower5Text1::
+ text "Come, child! I"
+ line "sealed this space"
+ cont "with white magic!"
+
+ para "You can rest here!"
+ done
+
+_PokemonTower5BattleText1::
+ text "Give...me..."
+ line "your...soul..."
+ done
+
+_PokemonTower5EndBattleText1::
+ text "Gasp!"
+ prompt
+
+_PokemonTower5AfterBattleText1::
+ text "I was under"
+ line "possession!"
+ done
+
+_PokemonTower5BattleText2::
+ text "You...shall..."
+ line "join...us..."
+ done
+
+_PokemonTower5EndBattleText2::
+ text "What"
+ line "a nightmare!"
+ prompt
+
+_PokemonTower5AfterBattleText2::
+ text "I was possessed!"
+ done
+
+_PokemonTower5BattleText3::
+ text "Zombies!"
+ done
+
+_PokemonTower5EndBattleText3::
+ text "Ha?"
+ prompt
+
+_PokemonTower5AfterBattleText3::
+ text "I regained my"
+ line "senses!"
+ done
+
+_PokemonTower5BattleText4::
+ text "Urgah..."
+ line "Urff...."
+ done
+
+_PokemonTower5EndBattleText4::
+ text "Whoo!"
+ prompt
+
+_PokemonTower5AfterBattleText4::
+ text "I fell to evil"
+ line "spirits despite"
+ cont "my training!"
+ done
+
+_PokemonTower5Text7::
+ text "Entered purified,"
+ line "protected zone!"
+
+ para "<PLAYER>'s #MON"
+ line "are fully healed!"
+ done
diff --git a/text/maps/pokemon_tower_6f.asm b/text/maps/PokemonTower6F.asm
index 7532d56d..7532d56d 100644
--- a/text/maps/pokemon_tower_6f.asm
+++ b/text/maps/PokemonTower6F.asm
diff --git a/text/maps/pokemon_tower_7f.asm b/text/maps/PokemonTower7F.asm
index 652cf37a..652cf37a 100644
--- a/text/maps/pokemon_tower_7f.asm
+++ b/text/maps/PokemonTower7F.asm
diff --git a/text/maps/power_plant.asm b/text/maps/PowerPlant.asm
index e5df6674..e5df6674 100644
--- a/text/maps/power_plant.asm
+++ b/text/maps/PowerPlant.asm
diff --git a/text/maps/reds_house_1f.asm b/text/maps/RedsHouse1F.asm
index 633075bb..633075bb 100644
--- a/text/maps/reds_house_1f.asm
+++ b/text/maps/RedsHouse1F.asm
diff --git a/text/maps/rock_tunnel_b1f.asm b/text/maps/RockTunnel1F.asm
index 472c52f8..472c52f8 100644
--- a/text/maps/rock_tunnel_b1f.asm
+++ b/text/maps/RockTunnel1F.asm
diff --git a/text/maps/rock_tunnel_b2f.asm b/text/maps/RockTunnelB1F.asm
index d0437de7..d0437de7 100644
--- a/text/maps/rock_tunnel_b2f.asm
+++ b/text/maps/RockTunnelB1F.asm
diff --git a/text/maps/rock_tunnel_pokecenter.asm b/text/maps/RockTunnelPokecenter.asm
index 0fc249ff..0fc249ff 100644
--- a/text/maps/rock_tunnel_pokecenter.asm
+++ b/text/maps/RockTunnelPokecenter.asm
diff --git a/text/maps/rocket_hideout_b1f.asm b/text/maps/RocketHideoutB1F.asm
index 36117804..36117804 100644
--- a/text/maps/rocket_hideout_b1f.asm
+++ b/text/maps/RocketHideoutB1F.asm
diff --git a/text/maps/rocket_hideout_b2f.asm b/text/maps/RocketHideoutB2F.asm
index c13c3593..c13c3593 100644
--- a/text/maps/rocket_hideout_b2f.asm
+++ b/text/maps/RocketHideoutB2F.asm
diff --git a/text/maps/rocket_hideout_b3f.asm b/text/maps/RocketHideoutB3F.asm
index a146a383..a146a383 100644
--- a/text/maps/rocket_hideout_b3f.asm
+++ b/text/maps/RocketHideoutB3F.asm
diff --git a/text/maps/rocket_hideout_b4f.asm b/text/maps/RocketHideoutB4F.asm
index d9e13457..d9e13457 100644
--- a/text/maps/rocket_hideout_b4f.asm
+++ b/text/maps/RocketHideoutB4F.asm
diff --git a/text/maps/rocket_hideout_elevator.asm b/text/maps/RocketHideoutElevator.asm
index 6f2aa638..6f2aa638 100644
--- a/text/maps/rocket_hideout_elevator.asm
+++ b/text/maps/RocketHideoutElevator.asm
diff --git a/text/maps/Route1.asm b/text/maps/Route1.asm
new file mode 100644
index 00000000..73188f09
--- /dev/null
+++ b/text/maps/Route1.asm
@@ -0,0 +1,49 @@
+_Route1ViridianMartSampleText::
+ text "Hi! I work at a"
+ line "#MON MART."
+
+ para "It's a convenient"
+ line "shop, so please"
+ cont "visit us in"
+ cont "VIRIDIAN CITY."
+
+ para "I know, I'll give"
+ line "you a sample!"
+ cont "Here you go!"
+ prompt
+
+_Route1Text_1cae8::
+ text "<PLAYER> got"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_Route1Text_1caee::
+ text "We also carry"
+ line "# BALLs for"
+ cont "catching #MON!"
+ done
+
+_Route1Text_1caf3::
+ text "You have too much"
+ line "stuff with you!"
+ done
+
+_Route1Text2::
+ text "See those ledges"
+ line "along the road?"
+
+ para "It's a bit scary,"
+ line "but you can jump"
+ cont "from them."
+
+ para "You can get back"
+ line "to PALLET TOWN"
+ cont "quicker that way."
+ done
+
+_Route1Text3::
+ text "ROUTE 1"
+ line "PALLET TOWN -"
+ cont "VIRIDIAN CITY"
+ done
diff --git a/text/maps/route_10.asm b/text/maps/Route10.asm
index a56018f0..a56018f0 100644
--- a/text/maps/route_10.asm
+++ b/text/maps/Route10.asm
diff --git a/text/maps/route_11.asm b/text/maps/Route11.asm
index 451d2bec..451d2bec 100644
--- a/text/maps/route_11.asm
+++ b/text/maps/Route11.asm
diff --git a/text/maps/route_11_gate.asm b/text/maps/Route11Gate1F.asm
index ef371d06..ef371d06 100644
--- a/text/maps/route_11_gate.asm
+++ b/text/maps/Route11Gate1F.asm
diff --git a/text/maps/route_11_gate_upstairs.asm b/text/maps/Route11Gate2F.asm
index 10236081..10236081 100644
--- a/text/maps/route_11_gate_upstairs.asm
+++ b/text/maps/Route11Gate2F.asm
diff --git a/text/maps/route_12.asm b/text/maps/Route12.asm
index 27befda5..27befda5 100644
--- a/text/maps/route_12.asm
+++ b/text/maps/Route12.asm
diff --git a/text/maps/route_12_gate.asm b/text/maps/Route12Gate1F.asm
index 51d75539..51d75539 100644
--- a/text/maps/route_12_gate.asm
+++ b/text/maps/Route12Gate1F.asm
diff --git a/text/maps/Route12Gate2F.asm b/text/maps/Route12Gate2F.asm
new file mode 100644
index 00000000..5994b5ff
--- /dev/null
+++ b/text/maps/Route12Gate2F.asm
@@ -0,0 +1,42 @@
+_TM39PreReceiveText::
+ text "My #MON's"
+ line "ashes are stored"
+ cont "in #MON TOWER."
+
+ para "You can have this"
+ line "TM. I don't need"
+ cont "it anymore..."
+ prompt
+
+_ReceivedTM39Text::
+ text "<PLAYER> received"
+ line "TM39!@@"
+
+_TM39ExplanationText::
+ text "TM39 is a move"
+ line "called SWIFT."
+
+ para "It's very accurate,"
+ line "so use it during"
+ cont "battles you can't"
+ cont "afford to lose."
+ done
+
+_TM39NoRoomText::
+ text "You don't have"
+ line "room for this."
+ done
+
+_Route12GateUpstairsText_495b8::
+ text "Looked into the"
+ line "binoculars."
+
+ para "A man fishing!"
+ done
+
+_Route12GateUpstairsText_495c4::
+ text "Looked into the"
+ line "binoculars."
+
+ para "It's #MON TOWER!"
+ done
diff --git a/text/maps/Route12SuperRodHouse.asm b/text/maps/Route12SuperRodHouse.asm
new file mode 100644
index 00000000..7dfaa74f
--- /dev/null
+++ b/text/maps/Route12SuperRodHouse.asm
@@ -0,0 +1,61 @@
+_Route12HouseText_564c0::
+ text "I'm the FISHING"
+ line "GURU's brother!"
+
+ para "I simply Looove"
+ line "fishing!"
+
+ para "Do you like to"
+ line "fish?"
+ done
+
+_Route12HouseText_564c5::
+ text "Grand! I like"
+ line "your style!"
+
+ para "Take this and"
+ line "fish, young one!"
+
+ para "<PLAYER> received"
+ line "a @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_Route12HouseText_564ca::
+ text ""
+
+ para "Fishing is a way"
+ line "of life!"
+
+ para "From the seas to"
+ line "rivers, go out"
+ cont "and land the big"
+ cont "one!"
+ done
+
+_Route12HouseText_564cf::
+ text "Oh... That's so"
+ line "disappointing..."
+ done
+
+_Route12HouseText_564d4::
+ text "Hello there,"
+ line "<PLAYER>!"
+
+ para "Use the SUPER ROD"
+ line "in any water!"
+ cont "You can catch"
+ cont "different kinds"
+ cont "of #MON."
+
+ para "Try fishing"
+ line "wherever you can!"
+ done
+
+_Route12HouseText_564d9::
+ text "Oh no!"
+
+ para "I had a gift for"
+ line "you, but you have"
+ cont "no room for it!"
+ done
diff --git a/text/maps/route_13.asm b/text/maps/Route13.asm
index e2718919..e2718919 100644
--- a/text/maps/route_13.asm
+++ b/text/maps/Route13.asm
diff --git a/text/maps/route_14.asm b/text/maps/Route14.asm
index 9a9de78c..9a9de78c 100644
--- a/text/maps/route_14.asm
+++ b/text/maps/Route14.asm
diff --git a/text/maps/route_15.asm b/text/maps/Route15.asm
index a23b8500..a23b8500 100644
--- a/text/maps/route_15.asm
+++ b/text/maps/Route15.asm
diff --git a/text/maps/route_15_gate.asm b/text/maps/Route15Gate1F.asm
index 0a526142..0a526142 100644
--- a/text/maps/route_15_gate.asm
+++ b/text/maps/Route15Gate1F.asm
diff --git a/text/maps/route_15_gate_upstairs.asm b/text/maps/Route15Gate2F.asm
index ade4a358..ade4a358 100644
--- a/text/maps/route_15_gate_upstairs.asm
+++ b/text/maps/Route15Gate2F.asm
diff --git a/text/maps/route_16.asm b/text/maps/Route16.asm
index 2ef6b02a..2ef6b02a 100644
--- a/text/maps/route_16.asm
+++ b/text/maps/Route16.asm
diff --git a/text/maps/Route16FlyHouse.asm b/text/maps/Route16FlyHouse.asm
new file mode 100644
index 00000000..77efde87
--- /dev/null
+++ b/text/maps/Route16FlyHouse.asm
@@ -0,0 +1,31 @@
+_Route16HouseText3::
+ text "Oh, you found my"
+ line "secret retreat!"
+
+ para "Please don't tell"
+ line "anyone I'm here."
+ cont "I'll make it up"
+ cont "to you with this!"
+ prompt
+
+_ReceivedHM02Text::
+ text "<PLAYER> received"
+ line "HM02!@@"
+
+_HM02ExplanationText::
+ text "HM02 is FLY."
+ line "It will take you"
+ cont "back to any town."
+
+ para "Put it to good"
+ line "use!"
+ done
+
+_HM02NoRoomText::
+ text "You don't have any"
+ line "room for this."
+ done
+
+_Route16HouseText_1e652::
+ text "FEAROW: Kyueen!"
+ done
diff --git a/text/maps/route_16_gate.asm b/text/maps/Route16Gate1F.asm
index f548977f..f548977f 100644
--- a/text/maps/route_16_gate.asm
+++ b/text/maps/Route16Gate1F.asm
diff --git a/text/maps/route_16_gate_upstairs.asm b/text/maps/Route16Gate2F.asm
index d76b70ca..d76b70ca 100644
--- a/text/maps/route_16_gate_upstairs.asm
+++ b/text/maps/Route16Gate2F.asm
diff --git a/text/maps/route_17.asm b/text/maps/Route17.asm
index f7f59683..f7f59683 100644
--- a/text/maps/route_17.asm
+++ b/text/maps/Route17.asm
diff --git a/text/maps/route_18.asm b/text/maps/Route18.asm
index d09caf82..d09caf82 100644
--- a/text/maps/route_18.asm
+++ b/text/maps/Route18.asm
diff --git a/text/maps/route_18_gate.asm b/text/maps/Route18Gate1F.asm
index f2f51039..f2f51039 100644
--- a/text/maps/route_18_gate.asm
+++ b/text/maps/Route18Gate1F.asm
diff --git a/text/maps/route_18_gate_upstairs.asm b/text/maps/Route18Gate2F.asm
index 0fd2de09..0fd2de09 100644
--- a/text/maps/route_18_gate_upstairs.asm
+++ b/text/maps/Route18Gate2F.asm
diff --git a/text/maps/route_19.asm b/text/maps/Route19.asm
index 244e31d0..244e31d0 100644
--- a/text/maps/route_19.asm
+++ b/text/maps/Route19.asm
diff --git a/text/maps/route_2.asm b/text/maps/Route2.asm
index dd7becc0..dd7becc0 100644
--- a/text/maps/route_2.asm
+++ b/text/maps/Route2.asm
diff --git a/text/maps/route_20.asm b/text/maps/Route20.asm
index 1ccf0b6c..1ccf0b6c 100644
--- a/text/maps/route_20.asm
+++ b/text/maps/Route20.asm
diff --git a/text/maps/route_21.asm b/text/maps/Route21.asm
index 3451953f..3451953f 100644
--- a/text/maps/route_21.asm
+++ b/text/maps/Route21.asm
diff --git a/text/maps/Route22.asm b/text/maps/Route22.asm
new file mode 100644
index 00000000..1754627f
--- /dev/null
+++ b/text/maps/Route22.asm
@@ -0,0 +1,104 @@
+_Route22RivalDefeatedText1::
+ text "Awww!"
+ line "You just lucked"
+ cont "out!"
+ prompt
+
+_Route22Text_511bc::
+ text "<RIVAL>: What?"
+ line "Why do I have 2"
+ cont "#MON?"
+
+ para "You should catch"
+ cont "some more too!"
+ prompt
+
+_Route22RivalDefeatedText2::
+ text "What!?"
+
+ para "I was just"
+ line "careless!"
+ prompt
+
+_Route22Text_511d0::
+ text "<RIVAL>: Hahaha!"
+ line "<PLAYER>! That's"
+ cont "your best? You're"
+ cont "nowhere near as"
+ cont "good as me, pal!"
+
+ para "Go train some"
+ line "more! You loser!"
+ prompt
+
+_Route22RivalBeforeBattleText1::
+ text "<RIVAL>: Hey!"
+ line "<PLAYER>!"
+
+ para "You're going to"
+ line "#MON LEAGUE?"
+
+ para "Forget it! You"
+ line "probably don't"
+ cont "have any BADGEs!"
+
+ para "The guard won't"
+ line "let you through!"
+
+ para "By the way, did"
+ line "your #MON"
+ cont "get any stronger?"
+ done
+
+_Route22RivalAfterBattleText1::
+ text "I heard #MON"
+ line "LEAGUE has many"
+ cont "tough trainers!"
+
+ para "I have to figure"
+ line "out how to get"
+ cont "past them!"
+
+ para "You should quit"
+ line "dawdling and get"
+ cont "a move on!"
+ done
+
+_Route22RivalBeforeBattleText2::
+ text "<RIVAL>: What?"
+ line "<PLAYER>! What a"
+ cont "surprise to see"
+ cont "you here!"
+
+ para "So you're going to"
+ line "#MON LEAGUE?"
+
+ para "You collected all"
+ line "the BADGEs too?"
+ cont "That's cool!"
+
+ para "Then I'll whip"
+ line "you, <PLAYER>, as"
+ cont "a warmup for"
+ cont "#MON LEAGUE!"
+
+ para "Come on!"
+ done
+
+_Route22RivalAfterBattleText2::
+ text "That loosened me"
+ line "up! I'm ready for"
+ cont "#MON LEAGUE!"
+
+ para "<PLAYER>, you need"
+ line "more practice!"
+
+ para "But hey, you know"
+ line "that! I'm out of"
+ cont "here. Smell ya!"
+ done
+
+_Route22FrontGateText::
+ text "#MON LEAGUE"
+ line "Front Gate"
+ done
diff --git a/text/maps/Route22Gate.asm b/text/maps/Route22Gate.asm
new file mode 100644
index 00000000..ce3f6824
--- /dev/null
+++ b/text/maps/Route22Gate.asm
@@ -0,0 +1,20 @@
+_Route22GateText_1e704::
+ text "Only truly skilled"
+ line "trainers are"
+ cont "allowed through."
+
+ para "You don't have the"
+ line "BOULDERBADGE yet!@@"
+
+_Route22GateText_1e715::
+ text ""
+
+ para "The rules are"
+ line "rules. I can't"
+ cont "let you pass."
+ done
+
+_Route22GateText_1e71a::
+ text "Oh! That is the"
+ line "BOULDERBADGE!"
+ cont "Go right ahead!@@"
diff --git a/text/maps/Route23.asm b/text/maps/Route23.asm
new file mode 100644
index 00000000..a7e534de
--- /dev/null
+++ b/text/maps/Route23.asm
@@ -0,0 +1,39 @@
+_VictoryRoadGuardText1::
+ text "You can pass here"
+ line "only if you have"
+ cont "the @"
+ TX_RAM wcd6d
+ text "!"
+
+ para "You don't have the"
+ line "@"
+ TX_RAM wcd6d
+ text " yet!"
+
+ para "You have to have"
+ line "it to get to"
+ cont "#MON LEAGUE!@@"
+
+_VictoryRoadGuardText2::
+ text "You can pass here"
+ line "only if you have"
+ cont "the @"
+ TX_RAM wcd6d
+ text "!"
+
+ para "Oh! That is the"
+ line "@"
+ TX_RAM wcd6d
+ text "!@@"
+
+_VictoryRoadGuardText_513a3::
+ text ""
+
+ para "OK then! Please,"
+ line "go right ahead!"
+ done
+
+_Route23Text8::
+ text "VICTORY ROAD GATE"
+ line "- #MON LEAGUE"
+ done
diff --git a/text/maps/Route24.asm b/text/maps/Route24.asm
new file mode 100644
index 00000000..0771aea3
--- /dev/null
+++ b/text/maps/Route24.asm
@@ -0,0 +1,184 @@
+_Route24Text_51510::
+ text "Congratulations!"
+ line "You beat our 5"
+ cont "contest trainers!@@"
+
+_Route24Text_51515::
+ text ""
+
+ para "You just earned a"
+ line "fabulous prize!"
+ prompt
+
+_Route24Text_5151a::
+ text "<PLAYER> received"
+ line "a @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_Route24Text_51521::
+ text "You don't have"
+ line "any room!"
+ done
+
+_Route24Text_51526::
+ text "By the way, would"
+ line "you like to join"
+ cont "TEAM ROCKET?"
+
+ para "We're a group"
+ line "dedicated to evil"
+ cont "using #MON!"
+
+ para "Want to join?"
+
+ para "Are you sure?"
+
+ para "Come on, join us!"
+
+ para "I'm telling you"
+ line "to join!"
+
+ para "OK, you need"
+ line "convincing!"
+
+ para "I'll make you an"
+ line "offer you can't"
+ cont "refuse!"
+ done
+
+_Route24Text_5152b::
+ text "Arrgh!"
+ line "You are good!"
+ prompt
+
+_Route24Text_51530::
+ text "With your ability,"
+ line "you could become"
+ cont "a top leader in"
+ cont "TEAM ROCKET!"
+ done
+
+_Route24BattleText1::
+ text "I saw your feat"
+ line "from the grass!"
+ done
+
+_Route24EndBattleText1::
+ text "I"
+ line "thought not!"
+ prompt
+
+_Route24AfterBattleText1::
+ text "I hid because the"
+ line "people on the"
+ cont "bridge scared me!"
+ done
+
+_Route24BattleText2::
+ text "OK! I'm No. 5!"
+ line "I'll stomp you!"
+ done
+
+_Route24EndBattleText2::
+ text "Whoa!"
+ line "Too much!"
+ prompt
+
+_Route24AfterBattleText2::
+ text "I did my best, I"
+ line "have no regrets!"
+ done
+
+_Route24BattleText3::
+ text "I'm No. 4!"
+ line "Getting tired?"
+ done
+
+_Route24EndBattleText3::
+ text "I lost"
+ line "too!"
+ prompt
+
+_Route24AfterBattleText3::
+ text "I did my best, so"
+ line "I've no regrets!"
+ done
+
+_Route24BattleText4::
+ text "Here's No. 3!"
+ line "I won't be easy!"
+ done
+
+_Route24EndBattleText4::
+ text "Ow!"
+ line "Stomped flat!"
+ prompt
+
+_Route24AfterBattleText4::
+ text "I did my best, I"
+ line "have no regrets!"
+ done
+
+_Route24BattleText5::
+ text "I'm second!"
+ line "Now it's serious!"
+ done
+
+_Route24EndBattleText5::
+ text "How could I"
+ line "lose?"
+ prompt
+
+_Route24AfterBattleText5::
+ text "I did my best, I"
+ line "have no regrets!"
+ done
+
+_Route24BattleText6::
+ text "This is NUGGET"
+ line "BRIDGE! Beat us 5"
+ cont "trainers and win"
+ cont "a fabulous prize!"
+
+ para "Think you got"
+ line "what it takes?"
+ done
+
+_Route24EndBattleText6::
+ text "Whoo!"
+ line "Good stuff!"
+ prompt
+
+_Route24AfterBattleText6::
+ text "I did my best, I"
+ line "have no regrets!"
+ done
+
+_Route24DamianText1::
+ text "I'm not good at"
+ line "raising #MON."
+
+ para "I should release"
+ line "my CHARMANDER"
+ cont "because I haven't"
+ cont "raised it well..."
+
+ para "If you promise me"
+ line "you'll care for"
+ cont "it, it's yours."
+ done
+
+_Route24DamianText2::
+ text "Take good care of"
+ line "my CHARMANDER!@@"
+
+_Route24DamianText3::
+ text "Oh... I'd better"
+ line "release it then."
+ done
+
+_Route24DamianText4::
+ text "How's CHARMANDER"
+ line "doing?"
+ done
diff --git a/text/maps/route_25.asm b/text/maps/Route25.asm
index 4786d830..4786d830 100644
--- a/text/maps/route_25.asm
+++ b/text/maps/Route25.asm
diff --git a/text/maps/route_2_gate.asm b/text/maps/Route2Gate.asm
index 566830f8..566830f8 100644
--- a/text/maps/route_2_gate.asm
+++ b/text/maps/Route2Gate.asm
diff --git a/text/maps/route_2_house.asm b/text/maps/Route2TradeHouse.asm
index 46fc1062..46fc1062 100644
--- a/text/maps/route_2_house.asm
+++ b/text/maps/Route2TradeHouse.asm
diff --git a/text/maps/route_3.asm b/text/maps/Route3.asm
index 14d44e64..14d44e64 100644
--- a/text/maps/route_3.asm
+++ b/text/maps/Route3.asm
diff --git a/text/maps/route_4.asm b/text/maps/Route4.asm
index 0a36f4cd..0a36f4cd 100644
--- a/text/maps/route_4.asm
+++ b/text/maps/Route4.asm
diff --git a/text/maps/route_5.asm b/text/maps/Route5.asm
index 54ff0f84..54ff0f84 100644
--- a/text/maps/route_5.asm
+++ b/text/maps/Route5.asm
diff --git a/text/maps/route_6.asm b/text/maps/Route6.asm
index 71760449..71760449 100644
--- a/text/maps/route_6.asm
+++ b/text/maps/Route6.asm
diff --git a/text/maps/route_7.asm b/text/maps/Route7.asm
index 6500be96..6500be96 100644
--- a/text/maps/route_7.asm
+++ b/text/maps/Route7.asm
diff --git a/text/maps/route_8.asm b/text/maps/Route8.asm
index c0988d70..c0988d70 100644
--- a/text/maps/route_8.asm
+++ b/text/maps/Route8.asm
diff --git a/text/maps/route_9_1.asm b/text/maps/Route9.asm
index 741c990c..741c990c 100644
--- a/text/maps/route_9_1.asm
+++ b/text/maps/Route9.asm
diff --git a/text/maps/route_9_2.asm b/text/maps/Route9_2.asm
index f3803618..f3803618 100755
--- a/text/maps/route_9_2.asm
+++ b/text/maps/Route9_2.asm
diff --git a/text/maps/ss_anne_1.asm b/text/maps/SSAnne1F.asm
index 2bbdcbac..2bbdcbac 100644
--- a/text/maps/ss_anne_1.asm
+++ b/text/maps/SSAnne1F.asm
diff --git a/text/maps/ss_anne_8.asm b/text/maps/SSAnne1FRooms.asm
index 7a09303e..7a09303e 100644
--- a/text/maps/ss_anne_8.asm
+++ b/text/maps/SSAnne1FRooms.asm
diff --git a/text/maps/SSAnne2F.asm b/text/maps/SSAnne2F.asm
new file mode 100644
index 00000000..58d804ba
--- /dev/null
+++ b/text/maps/SSAnne2F.asm
@@ -0,0 +1,63 @@
+_SSAnne2Text1::
+ text "This ship, she is"
+ line "a luxury liner"
+ cont "for trainers!"
+
+ para "At every port, we"
+ line "hold parties with"
+ cont "invited trainers!"
+ done
+
+_SSAnneRivalBeforeBattleText::
+ text "<RIVAL>: Bonjour!"
+ line "<PLAYER>!"
+
+ para "Imagine seeing"
+ line "you here!"
+
+ para "<PLAYER>, were you"
+ line "really invited?"
+
+ para "So how's your"
+ line "#DEX coming?"
+
+ para "I already caught"
+ line "40 kinds, pal!"
+
+ para "Different kinds"
+ line "are everywhere!"
+
+ para "Crawl around in"
+ line "grassy areas!"
+ done
+
+_SSAnneRivalDefeatedText::
+ text "Humph!"
+
+ para "At least you're"
+ line "raising your"
+ cont "#MON!"
+ prompt
+
+_SSAnneRivalWonText::
+ text "<PLAYER>! What are"
+ line "you, seasick?"
+
+ para "You should shape"
+ line "up, pal!"
+ prompt
+
+_SSAnneRivalCaptainText::
+ text "<RIVAL>: I heard"
+ line "there was a CUT"
+ cont "master on board."
+
+ para "But, he was just a"
+ line "seasick, old man!"
+
+ para "But, CUT itself is"
+ line "really useful!"
+
+ para "You should go see"
+ line "him! Smell ya!"
+ done
diff --git a/text/maps/ss_anne_9.asm b/text/maps/SSAnne2FRooms.asm
index c9b29119..c9b29119 100644
--- a/text/maps/ss_anne_9.asm
+++ b/text/maps/SSAnne2FRooms.asm
diff --git a/text/maps/ss_anne_3.asm b/text/maps/SSAnne3F.asm
index 76490594..76490594 100644
--- a/text/maps/ss_anne_3.asm
+++ b/text/maps/SSAnne3F.asm
diff --git a/text/maps/ss_anne_10.asm b/text/maps/SSAnneB1FRooms.asm
index 7df629b5..7df629b5 100644
--- a/text/maps/ss_anne_10.asm
+++ b/text/maps/SSAnneB1FRooms.asm
diff --git a/text/maps/ss_anne_5.asm b/text/maps/SSAnneBow.asm
index 76cd5631..76cd5631 100644
--- a/text/maps/ss_anne_5.asm
+++ b/text/maps/SSAnneBow.asm
diff --git a/text/maps/SSAnneCaptainsRoom.asm b/text/maps/SSAnneCaptainsRoom.asm
new file mode 100644
index 00000000..bbc52bd7
--- /dev/null
+++ b/text/maps/SSAnneCaptainsRoom.asm
@@ -0,0 +1,62 @@
+_SSAnne7RubText::
+ text "CAPTAIN: Ooargh..."
+ line "I feel hideous..."
+ cont "Urrp! Seasick..."
+
+ para "<PLAYER> rubbed"
+ line "the CAPTAIN's"
+ cont "back!"
+
+ para "Rub-rub..."
+ line "Rub-rub...@@"
+
+_ReceivingHM01Text::
+ text "CAPTAIN: Whew!"
+ line "Thank you! I"
+ cont "feel much better!"
+
+ para "You want to see"
+ line "my CUT technique?"
+
+ para "I could show you"
+ line "if I wasn't ill..."
+
+ para "I know! You can"
+ line "have this!"
+
+ para "Teach it to your"
+ line "#MON and you"
+ cont "can see it CUT"
+ cont "anytime!"
+ prompt
+
+_ReceivedHM01Text::
+ text "<PLAYER> got"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_SSAnne7Text_61932::
+ text "CAPTAIN: Whew!"
+
+ para "Now that I'm not"
+ line "sick anymore, I"
+ cont "guess it's time."
+ done
+
+_HM01NoRoomText::
+ text "Oh no! You have"
+ line "no room for this!"
+ done
+
+_SSAnne7Text2::
+ text "Yuck! Shouldn't"
+ line "have looked!"
+ done
+
+_SSAnne7Text3::
+ text "How to Conquer"
+ line "Seasickness..."
+ cont "The CAPTAIN's"
+ cont "reading this!"
+ done
diff --git a/text/maps/ss_anne_6.asm b/text/maps/SSAnneKitchen.asm
index b7784019..b7784019 100644
--- a/text/maps/ss_anne_6.asm
+++ b/text/maps/SSAnneKitchen.asm
diff --git a/text/maps/safari_zone_center.asm b/text/maps/SafariZoneCenter.asm
index 09918f93..09918f93 100644
--- a/text/maps/safari_zone_center.asm
+++ b/text/maps/SafariZoneCenter.asm
diff --git a/text/maps/safari_zone_rest_house_1.asm b/text/maps/SafariZoneCenterRestHouse.asm
index b6c87818..b6c87818 100644
--- a/text/maps/safari_zone_rest_house_1.asm
+++ b/text/maps/SafariZoneCenterRestHouse.asm
diff --git a/text/maps/safari_zone_east.asm b/text/maps/SafariZoneEast.asm
index eebe5de7..eebe5de7 100644
--- a/text/maps/safari_zone_east.asm
+++ b/text/maps/SafariZoneEast.asm
diff --git a/text/maps/safari_zone_rest_house_3.asm b/text/maps/SafariZoneEastRestHouse.asm
index d5f7abc8..d5f7abc8 100644
--- a/text/maps/safari_zone_rest_house_3.asm
+++ b/text/maps/SafariZoneEastRestHouse.asm
diff --git a/text/maps/SafariZoneGate.asm b/text/maps/SafariZoneGate.asm
new file mode 100644
index 00000000..a426d132
--- /dev/null
+++ b/text/maps/SafariZoneGate.asm
@@ -0,0 +1,143 @@
+_SafariZoneEntranceText1::
+ text "Welcome to the"
+ line "SAFARI ZONE!"
+ done
+
+SafariZoneEntranceText_9e814::
+ text "Leaving early?@@"
+
+_SafariZoneEntranceText_753bb::
+ text "Please return any"
+ line "SAFARI BALLs you"
+ cont "have left."
+ done
+
+_SafariZoneEntranceText_753c0::
+ text "Good Luck!"
+ done
+
+_SafariZoneEntranceText_753c5::
+ text "Did you get a"
+ line "good haul?"
+ cont "Come again!"
+ done
+
+SafariZoneEntranceText_9e6e4::
+ text "For just ¥500,"
+ line "you can catch all"
+ cont "the #MON you"
+ cont "want in the park!"
+
+ para "Would you like to"
+ line "join the hunt?@@"
+
+SafariZoneEntranceText_9e747::
+ text "That'll be ¥@"
+ TX_BCD wPriceTemp, $c3
+ text ","
+ line "please!"
+
+ para "We only use a"
+ line "special # BALL"
+ cont "here."
+
+ para "<PLAYER> received"
+ line "30 SAFARI BALLs!@@"
+
+_SafariZoneEntranceText_75360::
+ text ""
+
+ para "We'll call you on"
+ line "the PA when you"
+ cont "run out of time"
+ cont "or SAFARI BALLs!"
+ done
+
+_SafariZoneEntranceText_75365::
+ text "OK! Please come"
+ line "again!"
+ done
+
+_SafariZoneEntranceText_7536a::
+ text "Oops! Not enough"
+ line "money!"
+ done
+
+_SafariZoneEntranceText_753e6::
+ text "Hi! Is it your"
+ line "first time here?"
+ done
+
+_SafariZoneEntranceText_753eb::
+ text "SAFARI ZONE has 4"
+ line "zones in it."
+
+ para "Each zone has"
+ line "different kinds"
+ cont "of #MON. Use"
+ cont "SAFARI BALLs to"
+ cont "catch them!"
+
+ para "When you run out"
+ line "of time or SAFARI"
+ cont "BALLs, it's game"
+ cont "over for you!"
+
+ para "Before you go,"
+ line "open an unused"
+ cont "#MON BOX so"
+ cont "there's room for"
+ cont "new #MON!"
+ done
+
+_SafariZoneEntranceText_753f0::
+ text "Sorry, you're a"
+ line "regular here!"
+ done
+
+_SafariZoneLowCostText1::
+ text ""
+
+ para "Oh, all right, pay"
+ line "me what you have."
+ prompt
+
+_SafariZoneLowCostText2::
+ text "But, I can't give"
+ line "you all 30 BALLs."
+ done
+
+_SafariZoneLowCostText3::
+ text ""
+
+ para "You're persistent,"
+ line "aren't you?"
+
+ para "OK, you can go in"
+ line "for free, but"
+ cont "just this once!@@"
+
+_SafariZoneLowCostText4::
+ text ""
+ done
+
+_SafariZoneLowCostText5::
+ text "I'm sorry, but you"
+ line "have to pay to"
+ cont "enter."
+ done
+
+_SafariZoneLowCostText6::
+ text "You can't enter"
+ line "without paying!"
+ done
+
+_SafariZoneLowCostText7::
+ text "I said, no money,"
+ line "no entry!"
+ done
+
+_SafariZoneLowCostText8::
+ text "Read my lips, NO!"
+ line "Get it?"
+ done
diff --git a/text/maps/safari_zone_north.asm b/text/maps/SafariZoneNorth.asm
index 1e148f0b..1e148f0b 100644
--- a/text/maps/safari_zone_north.asm
+++ b/text/maps/SafariZoneNorth.asm
diff --git a/text/maps/safari_zone_rest_house_4.asm b/text/maps/SafariZoneNorthRestHouse.asm
index 93f02c8f..93f02c8f 100644
--- a/text/maps/safari_zone_rest_house_4.asm
+++ b/text/maps/SafariZoneNorthRestHouse.asm
diff --git a/text/maps/SafariZoneSecretHouse.asm b/text/maps/SafariZoneSecretHouse.asm
new file mode 100644
index 00000000..3df79d90
--- /dev/null
+++ b/text/maps/SafariZoneSecretHouse.asm
@@ -0,0 +1,44 @@
+_SecretHouseText_4a350::
+ text "Ah! Finally!"
+
+ para "You're the first"
+ line "person to reach"
+ cont "the SECRET HOUSE!"
+
+ para "I was getting"
+ line "worried that no"
+ cont "one would win our"
+ cont "campaign prize."
+
+ para "Congratulations!"
+ line "You have won!"
+ prompt
+
+_ReceivedHM03Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_HM03ExplanationText::
+ text "HM03 is SURF!"
+
+ para "#MON will be"
+ line "able to ferry you"
+ cont "across water!"
+
+ para "And, this HM isn't"
+ line "disposable! You"
+ cont "can use it over"
+ cont "and over!"
+
+ para "You're super lucky"
+ line "for winning this"
+ cont "fabulous prize!"
+ done
+
+_HM03NoRoomText::
+ text "You don't have"
+ line "room for this"
+ cont "fabulous prize!"
+ done
diff --git a/text/maps/safari_zone_west.asm b/text/maps/SafariZoneWest.asm
index dcb2fe6c..dcb2fe6c 100644
--- a/text/maps/safari_zone_west.asm
+++ b/text/maps/SafariZoneWest.asm
diff --git a/text/maps/safari_zone_rest_house_2.asm b/text/maps/SafariZoneWestRestHouse.asm
index 94802b13..94802b13 100644
--- a/text/maps/safari_zone_rest_house_2.asm
+++ b/text/maps/SafariZoneWestRestHouse.asm
diff --git a/text/maps/saffron_city.asm b/text/maps/SaffronCity.asm
index a0422c8c..a0422c8c 100644
--- a/text/maps/saffron_city.asm
+++ b/text/maps/SaffronCity.asm
diff --git a/text/maps/SaffronGates.asm b/text/maps/SaffronGates.asm
new file mode 100644
index 00000000..35bcadbb
--- /dev/null
+++ b/text/maps/SaffronGates.asm
@@ -0,0 +1,37 @@
+_SaffronGateText_1dfe7::
+ text "I'm on guard duty."
+ line "Gee, I'm thirsty,"
+ cont "though!"
+
+ para "Oh, wait there,"
+ line "the road's closed."
+ done
+
+_SaffronGateText_8aaa9::
+ text "Whoa, boy!"
+ line "I'm parched!"
+ cont "..."
+ cont "Huh? I can have"
+ cont "this drink?"
+ cont "Gee, thanks!@@"
+
+_SaffronGateText_1dff1::
+ text ""
+
+ para "..."
+ line "Glug, glug..."
+ cont "..."
+ cont "Gulp..."
+ cont "If you want to go"
+ cont "to SAFFRON CITY..."
+ cont "..."
+ cont "You can go on"
+ cont "through. I'll"
+ cont "share this with"
+ cont "the other guards!"
+ done
+
+_SaffronGateText_1dff6::
+ text "Hi, thanks for"
+ line "the cool drinks!"
+ done
diff --git a/text/maps/SaffronGym.asm b/text/maps/SaffronGym.asm
new file mode 100644
index 00000000..52ea321b
--- /dev/null
+++ b/text/maps/SaffronGym.asm
@@ -0,0 +1,236 @@
+_SaffronGymText_5d162::
+ text "I had a vision of"
+ line "your arrival!"
+
+ para "I have had psychic"
+ line "powers since I"
+ cont "was a child."
+
+ para "I first learned"
+ line "to bend spoons"
+ cont "with my mind."
+
+ para "I dislike fight-"
+ line "ing, but if you"
+ cont "wish, I will show"
+ cont "you my powers!"
+ done
+
+_SaffronGymText_5d167::
+ text "I'm"
+ line "shocked!"
+ cont "But, a loss is a"
+ cont "loss."
+
+ para "I admit I didn't"
+ line "work hard enough"
+ cont "to win!"
+
+ para "You earned the"
+ line "MARSHBADGE!@@"
+
+_SaffronGymText_5d16e::
+ text "Everyone has"
+ line "psychic power!"
+ cont "People just don't"
+ cont "realize it!"
+ done
+
+_SaffronGymText_5d173::
+ text "The MARSHBADGE"
+ line "makes #MON up"
+ cont "to L70 obey you!"
+
+ para "Stronger #MON"
+ line "will become wild,"
+ cont "ignoring your"
+ cont "orders in battle!"
+
+ para "Just don't raise"
+ line "your #MON too"
+ cont "much!"
+
+ para "Wait, please take"
+ line "this TM with you!"
+ done
+
+ReceivedTM46Text::
+ text "<PLAYER> received"
+ line "TM46!@@"
+
+_TM46ExplanationText::
+ text ""
+
+ para "TM46 is PSYWAVE!"
+ line "It uses powerful"
+ cont "psychic waves to"
+ cont "inflict damage!"
+ done
+
+_TM46NoRoomText::
+ text "Your pack is full"
+ line "of other items!"
+ done
+
+_SaffronGymText_5d1e6::
+ text "Yo! Champ in"
+ line "making!"
+
+ para "SABRINA's #MON"
+ line "use psychic power"
+ cont "instead of force!"
+
+ para "Fighting #MON"
+ line "are weak against"
+ cont "psychic #MON!"
+
+ para "They get creamed"
+ line "before they can"
+ cont "even aim a punch!"
+ done
+
+_SaffronGymText_5d1eb::
+ text "Psychic power,"
+ line "huh?"
+
+ para "If I had that,"
+ line "I'd make a bundle"
+ cont "at the slots!"
+ done
+
+_SaffronGymBattleText1::
+ text "SABRINA is younger"
+ line "than I, but I"
+ cont "respect her!"
+ done
+
+_SaffronGymEndBattleText1::
+ text "Not"
+ line "good enough!"
+ prompt
+
+_SaffronGymAfterBattleText1::
+ text "In a battle of"
+ line "equals, the one"
+ cont "with the stronger"
+ cont "will wins!"
+
+ para "If you wish"
+ line "to beat SABRINA,"
+ cont "focus on winning!"
+ done
+
+_SaffronGymBattleText2::
+ text "Does our unseen"
+ line "power scare you?"
+ done
+
+_SaffronGymEndBattleText2::
+ text "I never"
+ line "foresaw this!"
+ prompt
+
+_SaffronGymAfterBattleText2::
+ text "Psychic #MON"
+ line "fear only bugs!"
+ done
+
+_SaffronGymBattleText3::
+ text "#MON take on"
+ line "the appearance of"
+ cont "their trainers."
+
+ para "Your #MON must"
+ line "be tough, then!"
+ done
+
+_SaffronGymEndBattleText3::
+ text "I knew"
+ line "it!"
+ prompt
+
+_SaffronGymAfterBattleText3::
+ text "I must teach"
+ line "better techniques"
+ cont "to my #MON!"
+ done
+
+_SaffronGymBattleText4::
+ text "You know that"
+ line "power alone isn't"
+ cont "enough!"
+ done
+
+_SaffronGymEndBattleText4::
+ text "I don't"
+ line "believe this!"
+ prompt
+
+_SaffronGymAfterBattleText4::
+ text "SABRINA just wiped"
+ line "out the KARATE"
+ cont "MASTER next door!"
+ done
+
+_SaffronGymBattleText5::
+ text "You and I, our"
+ line "#MON shall"
+ cont "fight!"
+ done
+
+_SaffronGymEndBattleText5::
+ text "I lost"
+ line "after all!"
+ prompt
+
+_SaffronGymAfterBattleText5::
+ text "I knew that this"
+ line "was going to take"
+ cont "place."
+ done
+
+_SaffronGymBattleText6::
+ text "SABRINA is young,"
+ line "but she's also"
+ cont "our LEADER!"
+
+ para "You won't reach"
+ line "her easily!"
+ done
+
+_SaffronGymEndBattleText6::
+ text "I lost"
+ line "my concentration!"
+ prompt
+
+_SaffronGymAfterBattleText6::
+ text "There used to be"
+ line "2 #MON GYMs in"
+ cont "SAFFRON."
+
+ para "The FIGHTING DOJO"
+ line "next door lost"
+ cont "its GYM status"
+ cont "when we went and"
+ cont "creamed them!"
+ done
+
+_SaffronGymBattleText7::
+ text "SAFFRON #MON"
+ line "GYM is famous for"
+ cont "its psychics!"
+
+ para "You want to see"
+ line "SABRINA!"
+ cont "I can tell!"
+ done
+
+_SaffronGymEndBattleText7::
+ text "Arrrgh!"
+ prompt
+
+_SaffronGymAfterBattleText7::
+ text "That's right! I"
+ line "used telepathy to"
+ cont "read your mind!"
+ done
diff --git a/text/maps/saffron_mart.asm b/text/maps/SaffronMart.asm
index a43b0d94..a43b0d94 100644
--- a/text/maps/saffron_mart.asm
+++ b/text/maps/SaffronMart.asm
diff --git a/text/maps/saffron_house.asm b/text/maps/SaffronPidgeyHouse.asm
index 214bf089..214bf089 100644
--- a/text/maps/saffron_house.asm
+++ b/text/maps/SaffronPidgeyHouse.asm
diff --git a/text/maps/saffron_pokecenter.asm b/text/maps/SaffronPokecenter.asm
index 6548aff8..6548aff8 100644
--- a/text/maps/saffron_pokecenter.asm
+++ b/text/maps/SaffronPokecenter.asm
diff --git a/text/maps/seafoam_islands_b4f.asm b/text/maps/SeafoamIslandsB4F.asm
index 608d165f..608d165f 100644
--- a/text/maps/seafoam_islands_b4f.asm
+++ b/text/maps/SeafoamIslandsB4F.asm
diff --git a/text/maps/silph_co_10f.asm b/text/maps/SilphCo10F.asm
index 09894764..09894764 100644
--- a/text/maps/silph_co_10f.asm
+++ b/text/maps/SilphCo10F.asm
diff --git a/text/maps/SilphCo11F.asm b/text/maps/SilphCo11F.asm
new file mode 100644
index 00000000..d2bbde7d
--- /dev/null
+++ b/text/maps/SilphCo11F.asm
@@ -0,0 +1,114 @@
+_SilphCoPresidentText::
+ text "PRESIDENT: Thank"
+ line "you for saving"
+ cont "SILPH!"
+
+ para "I will never"
+ line "forget you saved"
+ cont "us in our moment"
+ cont "of peril!"
+
+ para "I have to thank"
+ line "you in some way!"
+
+ para "Because I am rich,"
+ line "I can give you"
+ cont "anything!"
+
+ para "Here, maybe this"
+ line "will do!"
+ prompt
+
+_ReceivedSilphCoMasterBallText::
+ text "<PLAYER> got a"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_SilphCo10Text_6231c::
+ text "PRESIDENT: You"
+ line "can't buy that"
+ cont "anywhere!"
+
+ para "It's our secret"
+ line "prototype MASTER"
+ cont "BALL!"
+
+ para "It will catch any"
+ line "#MON without"
+ cont "fail!"
+
+ para "You should be"
+ line "quiet about using"
+ cont "it, though."
+ done
+
+_SilphCoMasterBallNoRoomText::
+ text "You have no"
+ line "room for this."
+ done
+
+_SilphCo11Text2::
+ text "SECRETARY: Thank"
+ line "you for rescuing"
+ cont "all of us!"
+
+ para "We admire your"
+ line "courage."
+ done
+
+_SilphCo11Text3::
+ text "Ah, <PLAYER>!"
+ line "So we meet again!"
+
+ para "The PRESIDENT and"
+ line "I are discussing"
+ cont "a vital business"
+ cont "proposition."
+
+ para "Keep your nose"
+ line "out of grown-up"
+ cont "matters..."
+
+ para "or, experience a"
+ line "world of pain!"
+ done
+
+_SilphCo10Text_62330::
+ text "Arrgh!!"
+ line "I lost again!?"
+ prompt
+
+_SilphCo10Text_62335::
+ text "Blast it all!"
+ line "You ruined our"
+ cont "plans for SILPH!"
+
+ para "But, TEAM ROCKET"
+ line "will never fall!"
+
+ para "<PLAYER>! Never"
+ line "forget that all"
+ cont "#MON exist"
+ cont "for TEAM ROCKET!"
+
+ para "I must go, but I"
+ line "shall return!"
+ done
+
+_SilphCo11BattleText2::
+ text "Halt! Do you have"
+ line "an appointment"
+ cont "with my BOSS?"
+ done
+
+_SilphCo11EndBattleText2::
+ text "Gaah!"
+ line "Demolished!"
+ prompt
+
+_SilphCo11AfterBattleText2::
+ text "Watch your step,"
+ line "my BOSS likes his"
+ cont "#MON tough!"
+ done
diff --git a/text/maps/silph_co_1f.asm b/text/maps/SilphCo1F.asm
index 1ef80189..1ef80189 100644
--- a/text/maps/silph_co_1f.asm
+++ b/text/maps/SilphCo1F.asm
diff --git a/text/maps/SilphCo2F.asm b/text/maps/SilphCo2F.asm
new file mode 100644
index 00000000..912bdef9
--- /dev/null
+++ b/text/maps/SilphCo2F.asm
@@ -0,0 +1,96 @@
+_SilphCo2Text_59ded::
+ text "Eeek!"
+ line "No! Stop! Help!"
+
+ para "Oh, you're not"
+ line "with TEAM ROCKET."
+ cont "I thought..."
+ cont "I'm sorry. Here,"
+ cont "please take this!"
+ prompt
+
+_ReceivedTM36Text::
+ text "<PLAYER> got"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM36ExplanationText::
+ text "TM36 is"
+ line "SELFDESTRUCT!"
+
+ para "It's powerful, but"
+ line "the #MON that"
+ cont "uses it faints!"
+ cont "Be careful."
+ done
+
+_TM36NoRoomText::
+ text "You don't have any"
+ line "room for this."
+ done
+
+_SilphCo2BattleText1::
+ text "Help! I'm a SILPH"
+ line "employee."
+ done
+
+_SilphCo2EndBattleText1::
+ text "How"
+ line "did you know I"
+ cont "was a ROCKET?"
+ prompt
+
+_SilphCo2AfterBattleText1::
+ text "I work for both"
+ line "SILPH and TEAM"
+ cont "ROCKET!"
+ done
+
+_SilphCo2BattleText2::
+ text "It's off limits"
+ line "here! Go home!"
+ done
+
+_SilphCo2EndBattleText2::
+ text "You're"
+ line "good."
+ prompt
+
+_SilphCo2AfterBattleText2::
+ text "Can you solve the"
+ line "maze in here?"
+ done
+
+_SilphCo2BattleText3::
+ text "No kids are"
+ line "allowed in here!"
+ done
+
+_SilphCo2EndBattleText3::
+ text "Tough!"
+ prompt
+
+_SilphCo2AfterBattleText3::
+ text "Diamond-shaped"
+ line "tiles are"
+ cont "teleport blocks!"
+
+ para "They're hi-tech"
+ line "transporters!"
+ done
+
+_SilphCo2BattleText4::
+ text "Hey kid! What are"
+ line "you doing here?"
+ done
+
+_SilphCo2EndBattleText4::
+ text "I goofed!"
+ prompt
+
+_SilphCo2AfterBattleText4::
+ text "SILPH CO. will"
+ line "be merged with"
+ cont "TEAM ROCKET!"
+ done
diff --git a/text/maps/SilphCo3F.asm b/text/maps/SilphCo3F.asm
new file mode 100644
index 00000000..b6a023f9
--- /dev/null
+++ b/text/maps/SilphCo3F.asm
@@ -0,0 +1,46 @@
+_SilphCo3Text_59ff9::
+ text "I work for SILPH."
+ line "What should I do?"
+ done
+
+_SilphCo3Text_59ffe::
+ text "<PLAYER>! You and"
+ line "your #MON"
+ cont "saved us!"
+ done
+
+_SilphCo3BattleText1::
+ text "Quit messing with"
+ line "us, kid!"
+ done
+
+_SilphCo3EndBattleText1::
+ text "I give"
+ line "up!"
+ prompt
+
+_SilphCo3AfterBattleText1::
+ text "A hint? You can"
+ line "open doors with a"
+ cont "CARD KEY!"
+ done
+
+_SilphCo3BattleText2::
+ text "I support TEAM"
+ line "ROCKET more than"
+ cont "I support SILPH!"
+ done
+
+_SilphCo3EndBattleText2::
+ text "You"
+ line "really got me!"
+ prompt
+
+_SilphCo3AfterBattleText2::
+ text "Humph..."
+
+ para "TEAM ROCKET said"
+ line "that if I helped"
+ cont "them, they'd let"
+ cont "me study #MON!"
+ done
diff --git a/text/maps/silph_co_4f.asm b/text/maps/SilphCo4F.asm
index 5b484ec7..5b484ec7 100644
--- a/text/maps/silph_co_4f.asm
+++ b/text/maps/SilphCo4F.asm
diff --git a/text/maps/silph_co_5f.asm b/text/maps/SilphCo5F.asm
index 9c8bfd41..9c8bfd41 100644
--- a/text/maps/silph_co_5f.asm
+++ b/text/maps/SilphCo5F.asm
diff --git a/text/maps/silph_co_6f.asm b/text/maps/SilphCo6F.asm
index 90456b5c..90456b5c 100644
--- a/text/maps/silph_co_6f.asm
+++ b/text/maps/SilphCo6F.asm
diff --git a/text/maps/SilphCo7F.asm b/text/maps/SilphCo7F.asm
new file mode 100644
index 00000000..8f7b6ca2
--- /dev/null
+++ b/text/maps/SilphCo7F.asm
@@ -0,0 +1,209 @@
+_MeetLaprasGuyText::
+ text "Oh! Hi! You're"
+ line "not a ROCKET! You"
+ cont "came to save us?"
+ cont "Why, thank you!"
+
+ para "I want you to"
+ line "have this #MON"
+ cont "for saving us."
+ prompt
+
+_HeresYourLaprasText::
+ text "It's LAPRAS. It's"
+ line "very intelligent."
+
+ para "We kept it in our"
+ line "lab, but it will"
+ cont "be much better"
+ cont "off with you!"
+
+ para "I think you will"
+ line "be a good trainer"
+ cont "for LAPRAS!"
+
+ para "It's a good"
+ line "swimmer. It'll"
+ cont "give you a lift!"
+ done
+
+_LaprasGuyText::
+ text "TEAM ROCKET's"
+ line "BOSS went to the"
+ cont "boardroom! Is our"
+ cont "PRESIDENT OK?"
+ done
+
+_LaprasGuySavedText::
+ text "Saved at last!"
+ line "Thank you!"
+ done
+
+_SilphCo7Text_51e00::
+ text "TEAM ROCKET was"
+ line "after the MASTER"
+ cont "BALL which will"
+ cont "catch any #MON!"
+ done
+
+_CanceledMasterBallText::
+ text "We canceled the"
+ line "MASTER BALL"
+ cont "project because"
+ cont "of TEAM ROCKET."
+ done
+
+_SilphCo7Text_51e23::
+ text "It would be bad"
+ line "if TEAM ROCKET"
+ cont "took over SILPH"
+ cont "or our #MON!"
+ done
+
+_SilphCo7Text_51e28::
+ text "Wow! You chased"
+ line "off TEAM ROCKET"
+ cont "all by yourself?"
+ done
+
+_SilphCo7Text_51e46::
+ text "You! It's really"
+ line "dangerous here!"
+ cont "You came to save"
+ cont "me? You can't!"
+ done
+
+_SilphCo7Text_51e4b::
+ text "Safe at last!"
+ line "Oh thank you!"
+ done
+
+_SilphCo7BattleText1::
+ text "Aha! I smell a"
+ line "little rat!"
+ done
+
+_SilphCo7EndBattleText1::
+ text "Lights"
+ line "out!"
+ prompt
+
+_SilphCo7AfterBattleText1::
+ text "You won't find my"
+ line "BOSS by just"
+ cont "scurrying around!"
+ done
+
+_SilphCo7BattleText2::
+ text "Heheh!"
+
+ para "You mistook me for"
+ line "a SILPH worker?"
+ done
+
+_SilphCo7EndBattleText2::
+ text "I'm"
+ line "done!"
+ prompt
+
+_SilphCo7AfterBattleText2::
+ text "Despite your age,"
+ line "you are a skilled"
+ cont "trainer!"
+ done
+
+_SilphCo7BattleText3::
+ text "I am one of the 4"
+ line "ROCKET BROTHERS!"
+ done
+
+_SilphCo7EndBattleText3::
+ text "Aack!"
+ line "Brothers, I lost!"
+ prompt
+
+_SilphCo7AfterBattleText3::
+ text "Doesn't matter."
+ line "My brothers will"
+ cont "repay the favor!"
+ done
+
+_SilphCo7BattleText4::
+ text "A child intruder?"
+ line "That must be you!"
+ done
+
+_SilphCo7EndBattleText4::
+ text "Fine!"
+ line "I lost!"
+ prompt
+
+_SilphCo7AfterBattleText4::
+ text "Go on home"
+ line "before my BOSS"
+ cont "gets ticked off!"
+ done
+
+_SilphCo7Text_51ebe::
+ text "<RIVAL>: What"
+ line "kept you <PLAYER>?"
+ done
+
+_SilphCo7Text_51ec3::
+ text "<RIVAL>: Hahaha!"
+ line "I thought you'd"
+ cont "turn up if I"
+ cont "waited here!"
+
+ para "I guess TEAM"
+ line "ROCKET slowed you"
+ cont "down! Not that I"
+ cont "care!"
+
+ para "I saw you in"
+ line "SAFFRON, so I"
+ cont "decided to see if"
+ cont "you got better!"
+ done
+
+_SilphCo7Text_51ec8::
+ text "Oh-oh!"
+ line "So, you are ready"
+ cont "for BOSS ROCKET!"
+ prompt
+
+_SilphCo7Text_51ecd::
+ text "<RIVAL>: How can"
+ line "I put this?"
+
+ para "You're not good"
+ line "enough to play"
+ cont "with us big boys!"
+ prompt
+
+_SilphCo7Text_51ed2::
+ text "Well, <PLAYER>!"
+
+ para "I'm moving on up"
+ line "and ahead!"
+
+ para "By checking my"
+ line "#DEX, I'm"
+ cont "starting to see"
+ cont "what's strong and"
+ cont "how they evolve!"
+
+ para "I'm going to the"
+ line "#MON LEAGUE"
+ cont "to boot out the"
+ cont "ELITE FOUR!"
+
+ para "I'll become the"
+ line "world's most"
+ cont "powerful trainer!"
+
+ para "<PLAYER>, well"
+ line "good luck to you!"
+ cont "Don't sweat it!"
+ cont "Smell ya!"
+ done
diff --git a/text/maps/silph_co_8f.asm b/text/maps/SilphCo8F.asm
index fabae5e6..fabae5e6 100644
--- a/text/maps/silph_co_8f.asm
+++ b/text/maps/SilphCo8F.asm
diff --git a/text/maps/silph_co_9f.asm b/text/maps/SilphCo9F.asm
index fd1aa91c..fd1aa91c 100644
--- a/text/maps/silph_co_9f.asm
+++ b/text/maps/SilphCo9F.asm
diff --git a/text/maps/underground_path_route_6_entrance.asm b/text/maps/UndergroundPathRoute6.asm
index dacc44f7..dacc44f7 100644
--- a/text/maps/underground_path_route_6_entrance.asm
+++ b/text/maps/UndergroundPathRoute6.asm
diff --git a/text/maps/underground_path_route_7_entrance.asm b/text/maps/UndergroundPathRoute7.asm
index 5cde3614..5cde3614 100644
--- a/text/maps/underground_path_route_7_entrance.asm
+++ b/text/maps/UndergroundPathRoute7.asm
diff --git a/text/maps/underground_path_route_7_entrance_unused.asm b/text/maps/UndergroundPathRoute7Copy.asm
index 4e0dc3ca..4e0dc3ca 100644
--- a/text/maps/underground_path_route_7_entrance_unused.asm
+++ b/text/maps/UndergroundPathRoute7Copy.asm
diff --git a/text/maps/underground_path_route_8_entrance.asm b/text/maps/UndergroundPathRoute8.asm
index da785c8e..da785c8e 100644
--- a/text/maps/underground_path_route_8_entrance.asm
+++ b/text/maps/UndergroundPathRoute8.asm
diff --git a/text/maps/vermilion_city.asm b/text/maps/VermilionCity.asm
index 742d0c5d..742d0c5d 100644
--- a/text/maps/vermilion_city.asm
+++ b/text/maps/VermilionCity.asm
diff --git a/text/maps/vermilion_dock.asm b/text/maps/VermilionDock.asm
index 5d998e82..5d998e82 100644
--- a/text/maps/vermilion_dock.asm
+++ b/text/maps/VermilionDock.asm
diff --git a/text/maps/VermilionGym.asm b/text/maps/VermilionGym.asm
new file mode 100644
index 00000000..2d9654c8
--- /dev/null
+++ b/text/maps/VermilionGym.asm
@@ -0,0 +1,166 @@
+_LTSurgePreBattleText::
+ text "Ten-hut! Welcome"
+ line "to VERMILION GYM!"
+
+ para "Will you look at"
+ line "that, a pint-size"
+ cont "challenger!"
+
+ para "Hahaha! You've got"
+ line "big and brassy"
+ cont "nerves to take me"
+ cont "on with your puny"
+ cont "power!"
+
+ para "A #MON battle"
+ line "is war! I'll show"
+ cont "you, civilian!"
+
+ para "I'll shock you"
+ line "into surrender!"
+ done
+
+_LTSurgePostBattleAdviceText::
+ text "A little word of"
+ line "advice, kid!"
+
+ para "Electricity is"
+ line "sure powerful!"
+
+ para "But, it's useless"
+ line "against ground-"
+ cont "type #MON!"
+ done
+
+_LTSurgeThunderbadgeInfoText::
+ text "The THUNDERBADGE"
+ line "cranks up your"
+ cont "#MON's SPEED!"
+
+ para "It also lets your"
+ line "#MON FLY any-"
+ cont "time, kid!"
+
+ para "You're special,"
+ line "kid! Take this!"
+ done
+
+_ReceivedTM24Text::
+ text "<PLAYER> received "
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_TM24ExplanationText::
+ text ""
+
+ para "TM24 contains"
+ line "THUNDERBOLT!"
+
+ para "Teach it to an"
+ line "electric #MON!"
+ done
+
+_TM24NoRoomText::
+ text "Yo kid, make room"
+ line "in your pack!"
+ done
+
+_ReceivedThunderbadgeText::
+ text "Whoa!"
+
+ para "You're the real"
+ line "deal, kid!"
+
+ para "Fine then, take"
+ line "the THUNDERBADGE!"
+ prompt
+
+_VermilionGymBattleText1::
+ text "When I was in the"
+ line "Army, LT.SURGE"
+ cont "was my strict CO!"
+ done
+
+_VermilionGymEndBattleText1::
+ text "Stop!"
+ line "You're very good!"
+ prompt
+
+_VermilionGymAfterBattleText1::
+ text "The door won't"
+ line "open?"
+
+ para "LT.SURGE always"
+ line "was cautious!"
+ done
+
+_VermilionGymBattleText2::
+ text "I'm a lightweight,"
+ line "but I'm good with"
+ cont "electricity!"
+ done
+
+_VermilionGymEndBattleText2::
+ text "Fried!"
+ prompt
+
+_VermilionGymAfterBattleText2::
+ text "OK, I'll talk!"
+
+ para "LT.SURGE said he"
+ line "hid door switches"
+ cont "inside something!"
+ done
+
+_VermilionGymBattleText3::
+ text "This is no place"
+ line "for kids!"
+ done
+
+_VermilionGymEndBattleText3::
+ text "Wow!"
+ line "Surprised me!"
+ prompt
+
+_VermilionGymAfterBattleText3::
+ text "LT.SURGE set up"
+ line "double locks!"
+ cont "Here's a hint!"
+
+ para "When you open the"
+ line "1st lock, the 2nd"
+ cont "lock is right"
+ cont "next to it!"
+ done
+
+_VermilionGymFanPreBattleText::
+ text "Yo! Champ in"
+ line "making!"
+
+ para "LT.SURGE has a"
+ line "nickname. People"
+ cont "refer to him as"
+ cont "the Lightning"
+ cont "American!"
+
+ para "He's an expert on"
+ line "electric #MON!"
+
+ para "Birds and water"
+ line "#MON are at"
+ cont "risk! Beware of"
+ cont "paralysis too!"
+
+ para "LT.SURGE is very"
+ line "cautious!"
+
+ para "You'll have to"
+ line "break a code to"
+ cont "get to him!"
+ done
+
+_VermilionGymFanPostBattleText::
+ text "Whew! That match"
+ line "was electric!"
+ done
diff --git a/text/maps/vermilion_mart.asm b/text/maps/VermilionMart.asm
index 10743989..10743989 100644
--- a/text/maps/vermilion_mart.asm
+++ b/text/maps/VermilionMart.asm
diff --git a/text/maps/VermilionOldRodHouse.asm b/text/maps/VermilionOldRodHouse.asm
new file mode 100644
index 00000000..32526e36
--- /dev/null
+++ b/text/maps/VermilionOldRodHouse.asm
@@ -0,0 +1,54 @@
+_VermilionHouse2Text_560b1::
+ text "I'm the FISHING"
+ line "GURU!"
+
+ para "I simply Looove"
+ line "fishing!"
+
+ para "Do you like to"
+ line "fish?"
+ done
+
+_VermilionHouse2Text_560b6::
+ text "Grand! I like"
+ line "your style!"
+
+ para "Take this and"
+ line "fish, young one!"
+
+ para "<PLAYER> received"
+ line "an @"
+ TX_RAM wcf4b
+ text "!@@"
+
+_VermilionHouse2Text_560bb::
+ text ""
+
+ para "Fishing is a way"
+ line "of life!"
+
+ para "From the seas to"
+ line "rivers, go out"
+ cont "and land the big"
+ cont "one, young one!"
+ done
+
+_VermilionHouse2Text_560c0::
+ text "Oh... That's so"
+ line "disappointing..."
+ done
+
+_VermilionHouse2Text_560c5::
+ text "Hello there,"
+ line "<PLAYER>!"
+
+ para "How are the fish"
+ line "biting?"
+ done
+
+_VermilionHouse2Text_560ca::
+ text "Oh no!"
+
+ para "You have no room"
+ line "for my gift!"
+ done
diff --git a/text/maps/vermilion_house.asm b/text/maps/VermilionPidgeyHouse.asm
index 91c18708..91c18708 100644
--- a/text/maps/vermilion_house.asm
+++ b/text/maps/VermilionPidgeyHouse.asm
diff --git a/text/maps/vermilion_pokecenter.asm b/text/maps/VermilionPokecenter.asm
index c9e9a581..c9e9a581 100644
--- a/text/maps/vermilion_pokecenter.asm
+++ b/text/maps/VermilionPokecenter.asm
diff --git a/text/maps/victory_road_1f.asm b/text/maps/VictoryRoad1F.asm
index 1523db88..1523db88 100644
--- a/text/maps/victory_road_1f.asm
+++ b/text/maps/VictoryRoad1F.asm
diff --git a/text/maps/VictoryRoad2F.asm b/text/maps/VictoryRoad2F.asm
new file mode 100644
index 00000000..ec9dcf4f
--- /dev/null
+++ b/text/maps/VictoryRoad2F.asm
@@ -0,0 +1,85 @@
+_MoltresBattleText::
+ text "Gyaoo!@@"
+
+_VictoryRoad2BattleText1::
+ text "VICTORY ROAD is"
+ line "the final test"
+ cont "for trainers!"
+ done
+
+_VictoryRoad2EndBattleText1::
+ text "Aiyah!"
+ prompt
+
+_VictoryRoad2AfterBattleText1::
+ text "If you get stuck,"
+ line "try moving some"
+ cont "boulders around!"
+ done
+
+_VictoryRoad2BattleText2::
+ text "Ah, so you wish"
+ line "to challenge the"
+ cont "ELITE FOUR?"
+ done
+
+_VictoryRoad2EndBattleText2::
+ text "You"
+ line "got me!"
+ prompt
+
+_VictoryRoad2AfterBattleText2::
+ text "<RIVAL> also came"
+ line "through here!"
+ done
+
+_VictoryRoad2BattleText3::
+ text "Come on!"
+ line "I'll whip you!"
+ done
+
+_VictoryRoad2EndBattleText3::
+ text "I got"
+ line "whipped!"
+ prompt
+
+_VictoryRoad2AfterBattleText3::
+ text "You earned the"
+ line "right to be on"
+ cont "VICTORY ROAD!"
+ done
+
+_VictoryRoad2BattleText4::
+ text "If you can get"
+ line "through here, you"
+ cont "can go meet the"
+ cont "ELITE FOUR!"
+ done
+
+_VictoryRoad2EndBattleText4::
+ text "No!"
+ line "Unbelievable!"
+ prompt
+
+_VictoryRoad2AfterBattleText4::
+ text "I can beat you"
+ line "when it comes to"
+ cont "knowledge about"
+ cont "#MON!"
+ done
+
+_VictoryRoad2BattleText5::
+ text "Is VICTORY ROAD"
+ line "too tough?"
+ done
+
+_VictoryRoad2EndBattleText5::
+ text "Well"
+ line "done!"
+ prompt
+
+_VictoryRoad2AfterBattleText5::
+ text "Many trainers give"
+ line "up the challenge"
+ cont "here."
+ done
diff --git a/text/maps/victory_road_3f.asm b/text/maps/VictoryRoad3F.asm
index 07e0be70..07e0be70 100644
--- a/text/maps/victory_road_3f.asm
+++ b/text/maps/VictoryRoad3F.asm
diff --git a/text/maps/ViridianCity.asm b/text/maps/ViridianCity.asm
new file mode 100644
index 00000000..22d5d7ba
--- /dev/null
+++ b/text/maps/ViridianCity.asm
@@ -0,0 +1,194 @@
+_ViridianCityText_19219::
+ text "First, you need"
+ line "to weaken the"
+ cont "target #MON."
+ done
+
+_ViridianCityText_1920a::
+ text "Ahh, I've had my"
+ line "coffee now and I"
+ cont "feel great!"
+
+ para "Sure, you can go"
+ line "through!"
+
+ para "I'm sorry I was"
+ line "so rude to you!"
+
+ para "I see you're using"
+ line "a #DEX."
+
+ para "I'll show you how"
+ line "to catch #MON"
+ cont "as my apology."
+ done
+
+_OldManTextAfterBattle::
+ text "That didn't work!"
+ line "I must be losing"
+ cont "my touch."
+
+ para "I've run out of"
+ line "# BALLs too."
+
+ para "I have to get some"
+ line "at #MON MART."
+ done
+
+_ViridianCityText1::
+ text "Those # BALLs"
+ line "at your waist!"
+ cont "You have #MON!"
+
+ para "It's great that"
+ line "you can carry and"
+ cont "use #MON any-"
+ cont "time, anywhere!"
+ done
+
+_ViridianCityText_19122::
+ text "This #MON GYM"
+ line "is always closed."
+
+ para "I wonder who the"
+ line "LEADER is?"
+ done
+
+_ViridianCityText_19127::
+ text "VIRIDIAN GYM's"
+ line "LEADER returned!"
+ done
+
+_ViridianCityText_1914d::
+ text "You want to know"
+ line "about the 2 kinds"
+ cont "of caterpillar"
+ cont "#MON?"
+ done
+
+_ViridianCityText_19152::
+ text "Oh, OK then!"
+ done
+
+_ViridianCityText_19157::
+ text "CATERPIE has no"
+ line "poison, but"
+ cont "WEEDLE does."
+
+ para "Watch out for its"
+ line "POISON STING!"
+ done
+
+_ViridianCityText_19175::
+ text "Oh Grandpa! Don't"
+ line "be so mean!"
+ cont "He hasn't had his"
+ cont "coffee yet."
+ done
+
+_ViridianCityText_1917a::
+ text "When I go shop in"
+ line "PEWTER CITY, I"
+ cont "have to take the"
+ cont "winding trail in"
+ cont "VIRIDIAN FOREST."
+ done
+
+_ViridianCityText_19191::
+ text "You can't go"
+ line "through here!"
+
+ para "This is private"
+ line "property!"
+ done
+
+_ViridianCityText_191ca::
+ text "Yawn!"
+ line "I must have dozed"
+ cont "off in the sun."
+
+ para "I had this dream"
+ line "about a DROWZEE"
+ cont "eating my dream."
+ cont "What's this?"
+ cont "Where did this TM"
+ cont "come from?"
+
+ para "This is spooky!"
+ line "Here, you can"
+ cont "have this TM."
+ prompt
+
+_ReceivedTM42Text::
+ text "<PLAYER> received"
+ line "TM42!@@"
+
+_TM42Explanation::
+ text "TM42 contains"
+ line "DREAM EATER..."
+ cont "...Snore..."
+ done
+
+_TM42NoRoomText::
+ text "You have too much"
+ line "stuff already."
+ done
+
+_OldManAgainText1::
+ text "Hmm? You want me"
+ line "to show you how"
+ cont "to catch #MON"
+ cont "again?"
+ done
+
+_OldManAgainText2::
+ text "Dandy! Watch what"
+ line "I do closely now!"
+ done
+
+_OldManAgainText3::
+ text "Oh... I'm not good"
+ line "enough for you."
+ done
+
+_ViridianCityText8::
+ text "VIRIDIAN CITY "
+ line "The Eternally"
+ cont "Green Paradise"
+ done
+
+_ViridianCityText9::
+ text "TRAINER TIPS"
+
+ para "Catch #MON"
+ line "and expand your"
+ cont "collection!"
+
+ para "The more you have,"
+ line "the easier it is"
+ cont "to fight!"
+ done
+
+_ViridianCityText10::
+ text "TRAINER TIPS"
+
+ para "The battle moves"
+ line "of #MON are"
+ cont "limited by their"
+ cont "POWER POINTs, PP."
+
+ para "To replenish PP,"
+ line "rest your tired"
+ cont "#MON at a"
+ cont "#MON CENTER!"
+ done
+
+_ViridianCityText13::
+ text "VIRIDIAN CITY"
+ line "#MON GYM"
+ done
+
+_ViridianCityText14::
+ text "The GYM's doors"
+ line "are locked..."
+ done
diff --git a/text/maps/viridian_forest.asm b/text/maps/ViridianForest.asm
index f88a484c..f88a484c 100644
--- a/text/maps/viridian_forest.asm
+++ b/text/maps/ViridianForest.asm
diff --git a/text/maps/viridian_forest_exit.asm b/text/maps/ViridianForestNorthGate.asm
index ab6a5a1d..ab6a5a1d 100644
--- a/text/maps/viridian_forest_exit.asm
+++ b/text/maps/ViridianForestNorthGate.asm
diff --git a/text/maps/viridian_forest_entrance.asm b/text/maps/ViridianForestSouthGate.asm
index a5278742..a5278742 100644
--- a/text/maps/viridian_forest_entrance.asm
+++ b/text/maps/ViridianForestSouthGate.asm
diff --git a/text/maps/ViridianGym.asm b/text/maps/ViridianGym.asm
new file mode 100644
index 00000000..53b78a0f
--- /dev/null
+++ b/text/maps/ViridianGym.asm
@@ -0,0 +1,237 @@
+_ViridianGymText_74ace::
+ text "Fwahahaha! This is"
+ line "my hideout!"
+
+ para "I planned to"
+ line "resurrect TEAM"
+ cont "ROCKET here!"
+
+ para "But, you have"
+ line "caught me again!"
+ cont "So be it! This"
+ cont "time, I'm not"
+ cont "holding back!"
+
+ para "Once more, you"
+ line "shall face"
+ cont "GIOVANNI, the"
+ cont "greatest trainer!"
+ done
+
+_ViridianGymText_74ad3::
+ text "Ha!"
+ line "That was a truly"
+ cont "intense fight!"
+ cont "You have won!"
+ cont "As proof, here is"
+ cont "the EARTHBADGE!@@"
+
+_ViridianGymText_74ad9::
+ text "Having lost, I"
+ line "cannot face my"
+ cont "underlings!"
+ cont "TEAM ROCKET is"
+ cont "finished forever!"
+
+ para "I will dedicate my"
+ line "life to the study"
+ cont "of #MON!"
+
+ para "Let us meet again"
+ line "someday!"
+ cont "Farewell!@@"
+
+_ViridianGymText12::
+ text "The EARTHBADGE"
+ line "makes #MON of"
+ cont "any level obey!"
+
+ para "It is evidence of"
+ line "your mastery as a"
+ cont "#MON trainer!"
+
+ para "With it, you can"
+ line "enter the #MON"
+ cont "LEAGUE!"
+
+ para "It is my gift for"
+ line "your #MON"
+ cont "LEAGUE challenge!"
+ done
+
+_ReceivedTM27Text::
+ text "<PLAYER> received"
+ line "TM27!@@"
+
+_TM27ExplanationText::
+ text ""
+
+ para "TM27 is FISSURE!"
+ line "It will take out"
+ cont "#MON with just"
+ cont "one hit!"
+
+ para "I made it when I"
+ line "ran the GYM here,"
+ cont "too long ago..."
+ done
+
+_TM27NoRoomText::
+ text "You do not have"
+ line "space for this!"
+ done
+
+_ViridianGymBattleText1::
+ text "Heh! You must be"
+ line "running out of"
+ cont "steam by now!"
+ done
+
+_ViridianGymEndBattleText1::
+ text "I"
+ line "ran out of gas!"
+ prompt
+
+_ViridianGymAfterBattleText1::
+ text "You need power to"
+ line "keep up with our"
+ cont "GYM LEADER!"
+ done
+
+_ViridianGymBattleText2::
+ text "Rrrroar! I'm"
+ line "working myself"
+ cont "into a rage!"
+ done
+
+_ViridianGymEndBattleText2::
+ text "Wargh!"
+ prompt
+
+_ViridianGymAfterBattleText2::
+ text "I'm still not"
+ line "worthy!"
+ done
+
+_ViridianGymBattleText3::
+ text "#MON and I, we"
+ line "make wonderful"
+ cont "music together!"
+ done
+
+_ViridianGymEndBattleText3::
+ text "You are in"
+ line "perfect harmony!"
+ prompt
+
+_ViridianGymAfterBattleText3::
+ text "Do you know the"
+ line "identity of our"
+ cont "GYM LEADER?"
+ done
+
+_ViridianGymBattleText4::
+ text "Karate is the"
+ line "ultimate form of"
+ cont "martial arts!"
+ done
+
+_ViridianGymEndBattleText4::
+ text "Atcho!"
+ prompt
+
+_ViridianGymAfterBattleText4::
+ text "If my #MON"
+ line "were as good at"
+ cont "Karate as I..."
+ done
+
+_ViridianGymBattleText5::
+ text "The truly talented"
+ line "win with style!"
+ done
+
+_ViridianGymEndBattleText5::
+ text "I"
+ line "lost my grip!"
+ prompt
+
+_ViridianGymAfterBattleText5::
+ text "The LEADER will"
+ line "scold me!"
+ done
+
+_ViridianGymBattleText6::
+ text "I'm the KARATE"
+ line "KING! Your fate"
+ cont "rests with me!"
+ done
+
+_ViridianGymEndBattleText6::
+ text "Ayah!"
+ prompt
+
+_ViridianGymAfterBattleText6::
+ text "#MON LEAGUE?"
+ line "You? Don't get"
+ cont "cocky!"
+ done
+
+_ViridianGymBattleText7::
+ text "Your #MON will"
+ line "cower at the"
+ cont "crack of my whip!"
+ done
+
+_ViridianGymEndBattleText7::
+ text "Yowch!"
+ line "Whiplash!"
+ prompt
+
+_ViridianGymAfterBattleText7::
+ text "Wait! I was just"
+ line "careless!"
+ done
+
+_ViridianGymBattleText8::
+ text "VIRIDIAN GYM was"
+ line "closed for a long"
+ cont "time, but now our"
+ cont "LEADER is back!"
+ done
+
+_ViridianGymEndBattleText8::
+ text "I"
+ line "was beaten?"
+ prompt
+
+_ViridianGymAfterBattleText8::
+ text "You can go on to"
+ line "#MON LEAGUE"
+ cont "only by defeating"
+ cont "our GYM LEADER!"
+ done
+
+_ViridianGymText_74bd4::
+ text "Yo! Champ in"
+ line "making!"
+
+ para "Even I don't know"
+ line "VIRIDIAN LEADER's"
+ cont "identity!"
+
+ para "This will be the"
+ line "toughest of all"
+ cont "the GYM LEADERs!"
+
+ para "I heard that the"
+ line "trainers here"
+ cont "like ground-type"
+ cont "#MON!"
+ done
+
+_ViridianGymText_74bd9::
+ text "Blow me away!"
+ line "GIOVANNI was the"
+ cont "GYM LEADER here?"
+ done
diff --git a/text/maps/ViridianMart.asm b/text/maps/ViridianMart.asm
new file mode 100644
index 00000000..31a843ae
--- /dev/null
+++ b/text/maps/ViridianMart.asm
@@ -0,0 +1,32 @@
+_ViridianMartText1::
+ text "Okay! Say hi to"
+ line "PROF.OAK for me!"
+ done
+
+_ViridianMartText4::
+ text "Hey! You came from"
+ line "PALLET TOWN?"
+ done
+
+ViridianMartParcelQuestText::
+ text "You know PROF."
+ line "OAK, right?"
+
+ para "His order came in."
+ line "Will you take it"
+ cont "to him?"
+
+ para "<PLAYER> got"
+ line "OAK's PARCEL!@@"
+
+_ViridianMartText2::
+ text "This shop sells a"
+ line "lot of PARLYZ"
+ cont "HEALs."
+ done
+
+_ViridianMartText3::
+ text "The shop finally"
+ line "has some POTIONs"
+ cont "in stock."
+ done
diff --git a/text/maps/viridian_house.asm b/text/maps/ViridianNicknameHouse.asm
index 757f597a..757f597a 100644
--- a/text/maps/viridian_house.asm
+++ b/text/maps/ViridianNicknameHouse.asm
diff --git a/text/maps/viridian_pokecenter.asm b/text/maps/ViridianPokecenter.asm
index 4ac18bf6..4ac18bf6 100755
--- a/text/maps/viridian_pokecenter.asm
+++ b/text/maps/ViridianPokecenter.asm
diff --git a/text/maps/school.asm b/text/maps/ViridianSchoolHouse.asm
index 3c5f6379..3c5f6379 100644
--- a/text/maps/school.asm
+++ b/text/maps/ViridianSchoolHouse.asm
diff --git a/text/maps/WardensHouse.asm b/text/maps/WardensHouse.asm
new file mode 100644
index 00000000..7efddb90
--- /dev/null
+++ b/text/maps/WardensHouse.asm
@@ -0,0 +1,84 @@
+_WardenGibberishText1::
+ text "WARDEN: Hif fuff"
+ line "hefifoo!"
+
+ para "Ha lof ha feef ee"
+ line "hafahi ho. Heff"
+ cont "hee fwee!"
+ done
+
+_WardenGibberishText2::
+ text "Ah howhee ho hoo!"
+ line "Eef ee hafahi ho!"
+ done
+
+_WardenGibberishText3::
+ text "Ha? He ohay heh"
+ line "ha hoo ee haheh!"
+ done
+
+_WardenTeethText1::
+ text "<PLAYER> gave the"
+ line "GOLD TEETH to the"
+ cont "WARDEN!@@"
+
+_WardenTeethText2::
+ text ""
+
+ para "The WARDEN popped"
+ line "in his teeth!"
+ prompt
+
+_WardenThankYouText::
+ text "WARDEN: Thanks,"
+ line "kid! No one could"
+ cont "understand a word"
+ cont "that I said."
+
+ para "I couldn't work"
+ line "that way."
+ cont "Let me give you"
+ cont "something for"
+ cont "your trouble."
+ prompt
+
+_ReceivedHM04Text::
+ text "<PLAYER> received"
+ line "@"
+ TX_RAM wcf4b
+ text "!@@"
+
+_HM04ExplanationText::
+ text "WARDEN: HM04"
+ line "teaches STRENGTH!"
+
+ para "It lets #MON"
+ line "move boulders"
+ cont "when you're out-"
+ cont "side of battle."
+
+ para "Oh yes, did you"
+ line "find SECRET HOUSE"
+ cont "in SAFARI ZONE?"
+
+ para "If you do, you"
+ line "win an HM!"
+
+ para "I hear it's the"
+ line "rare SURF HM."
+ done
+
+_HM04NoRoomText::
+ text "Your pack is"
+ line "stuffed full!"
+ done
+
+_FuchsiaHouse2Text_75176::
+ text "#MON photos"
+ line "and fossils."
+ done
+
+_FuchsiaHouse2Text_7517b::
+ text "Old #MON"
+ line "merchandise."
+ done
diff --git a/text/maps/agatha.asm b/text/maps/agatha.asm
deleted file mode 100644
index 45a4692d..00000000
--- a/text/maps/agatha.asm
+++ /dev/null
@@ -1,44 +0,0 @@
-_AgathaBeforeBattleText::
- text "I am AGATHA of"
- line "the ELITE FOUR!"
-
- para "OAK's taken a lot"
- line "of interest in"
- cont "you, child!"
-
- para "That old duff was"
- line "once tough and"
- cont "handsome! That"
- cont "was decades ago!"
-
- para "Now he just wants"
- line "to fiddle with"
- cont "his #DEX! He's"
- cont "wrong! #MON"
- cont "are for fighting!"
-
- para $52, "! I'll show"
- line "you how a real"
- cont "trainer fights!"
- done
-
-_AgathaEndBattleText::
- text "Woo-hoo!"
- line "You're something"
- cont "special, child!"
- prompt
-
-_AgathaAfterBattleText::
- text "You win! I see"
- line "what the old duff"
- cont "sees in you now!"
-
- para "I have nothing"
- line "else to say! Run"
- cont "along now, child!"
- done
-
-_AgathaDontRunAwayText::
- text "Someone's voice:"
- line "Don't run away!"
- done
diff --git a/text/maps/bills_house.asm b/text/maps/bills_house.asm
deleted file mode 100644
index dd556a7b..00000000
--- a/text/maps/bills_house.asm
+++ /dev/null
@@ -1,92 +0,0 @@
-_BillsHouseDontLeaveText::
- text "Whoa, don't go"
- line "anywhere, wait!"
- done
-
-_BillsHouseText_1e865::
- text "Hiya! I'm a"
- line "#MON..."
- cont "...No I'm not!"
-
- para "Call me BILL!"
- line "I'm a true blue"
- cont "#MANIAC! Hey!"
- cont "What's with that"
- cont "skeptical look?"
-
- para "I'm not joshing"
- line "you, I screwed up"
- cont "an experiment and"
- cont "got combined with"
- cont "a #MON!"
-
- para "So, how about it?"
- line "Help me out here!"
- done
-
-_BillsHouseText_1e86a::
- text "When I'm in the"
- line "TELEPORTER, go to"
- cont "my PC and run the"
- cont "Cell Separation"
- cont "System!"
- done
-
-_BillsHouseText_1e86f::
- text "No!? Come on, you"
- line "gotta help a guy"
- cont "in deep trouble!"
-
- para "What do you say,"
- line "chief? Please?"
- cont "OK? All right!"
- prompt
-
-_BillThankYouText::
- text "BILL: Yeehah!"
- line "Thanks, bud! I"
- cont "owe you one!"
-
- para "So, did you come"
- line "to see my #MON"
- cont "collection?"
- cont "You didn't?"
- cont "That's a bummer."
-
- para "I've got to thank"
- line "you... Oh here,"
- cont "maybe this'll do."
- prompt
-
-_SSTicketReceivedText::
- text $52, " received"
- line "an @"
- TX_RAM wcf4b
- text "!@@"
-
-_SSTicketNoRoomText::
- text "You've got too"
- line "much stuff, bud!"
- done
-
-_BillsHouseText_1e8cb::
- text "That cruise ship,"
- line "S.S.ANNE, is in"
- cont "VERMILION CITY."
- cont "Its passengers"
- cont "are all trainers!"
-
- para "They invited me"
- line "to their party,"
- cont "but I can't stand"
- cont "fancy do's. Why"
- cont "don't you go"
- cont "instead of me?"
- done
-
-_BillsHouseText_1e8da::
- text "BILL: Look, bud,"
- line "just check out"
- cont "some of my rare"
- cont "#MON on my PC!"
- done
diff --git a/text/maps/blues_house.asm b/text/maps/blues_house.asm
deleted file mode 100644
index c7db0b2c..00000000
--- a/text/maps/blues_house.asm
+++ /dev/null
@@ -1,41 +0,0 @@
-_DaisyInitialText::
- text "Hi ",$52,"!"
- line $53," is out at"
- cont "Grandpa's lab."
- done
-
-_DaisyOfferMapText::
- text "Grandpa asked you"
- line "to run an errand?"
- cont "Here, this will"
- cont "help you!"
- prompt
-
-_GotMapText::
- text $52," got a"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_DaisyBagFullText::
- text "You have too much"
- line "stuff with you."
- done
-
-_DaisyUseMapText::
- text "Use the TOWN MAP"
- line "to find out where"
- cont "you are."
- done
-
-_BluesHouseText2::
- text "Spending time"
- line "with your #MON"
- cont "makes them more"
- cont "friendly to you."
- done
-
-_BluesHouseText3::
- text "It's a big map!"
- line "This is useful!"
- done
diff --git a/text/maps/bruno.asm b/text/maps/bruno.asm
deleted file mode 100644
index 39898eb5..00000000
--- a/text/maps/bruno.asm
+++ /dev/null
@@ -1,37 +0,0 @@
-_BrunoBeforeBattleText::
- text "I am BRUNO of"
- line "the ELITE FOUR!"
-
- para "Through rigorous"
- line "training, people"
- cont "and #MON can"
- cont "become stronger!"
-
- para "I've weight"
- line "trained with"
- cont "my #MON!"
-
- para $52, "!"
-
- para "We will grind you"
- line "down with our"
- cont "superior power!"
-
- para "Hoo hah!"
- done
-
-_BrunoEndBattleText::
- text "Why?"
- line "How could I lose?"
- prompt
-
-_BrunoAfterBattleText::
- text "My job is done!"
- line "Go face your next"
- cont "challenge!"
- done
-
-_BrunoDontRunAwayText::
- text "Someone's voice:"
- line "Don't run away!"
- done
diff --git a/text/maps/celadon_city.asm b/text/maps/celadon_city.asm
deleted file mode 100644
index 908fcbb4..00000000
--- a/text/maps/celadon_city.asm
+++ /dev/null
@@ -1,152 +0,0 @@
-_CeladonCityText1::
- text "I got my KOFFING"
- line "from my friend!"
-
- para "We get along now,"
- line "because I was"
- cont "very nice to it!"
- done
-
-_CeladonCityText2::
- text "Heheh! This GYM"
- line "is great! It's"
- cont "full of women!"
- done
-
-_CeladonCityText3::
- text "The GAME CORNER"
- line "is bad for our"
- cont "city's image!"
- done
-
-_CeladonCityText4::
- text "Moan! I blew it"
- line "all at the slots!"
-
- para "I knew I should"
- line "have cashed in my"
- cont "coins for prizes!"
- done
-
-_TM41PreText::
- text "Hello, there!"
-
- para "I've seen you,"
- line "but I never had a"
- cont "chance to talk!"
-
- para "Here's a gift for"
- line "dropping by!"
- prompt
-
-_ReceivedTM41Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM41ExplanationText::
- text "TM41 teaches"
- line "SOFTBOILED!"
-
- para "Only one #MON"
- line "can use it!"
-
- para "That #MON is"
- line "CHANSEY!"
- done
-
-_TM41NoRoomText::
- text "Oh, your pack is"
- line "full of items!"
- done
-
-_CeladonCityText6::
- text "This is my trusted"
- line "pal, POLIWRATH!"
-
- para "It evolved from"
- line "POLIWHIRL when I"
- cont "used WATER STONE!"
- done
-
-_CeladonCityText7::
- text "POLIWRATH: Ribi"
- line "ribit!@@"
-
-_CeladonCityText8::
- text "What are you"
- line "staring at?"
- done
-
-_CeladonCityText9::
- text "Keep out of TEAM"
- line "ROCKET's way!"
- done
-
-_CeladonCityText11::
- text "CELADON CITY"
- line "The City of"
- cont "Rainbow Dreams"
- done
-
-_CeladonCityText13::
- text "CELADON CITY"
- line "#MON GYM"
- cont "LEADER: ERIKA"
-
- para "The Nature-Loving"
- line "Princess!"
- done
-
-_CeladonCityText14::
- text "CELADON MANSION"
- done
-
-_CeladonCityText15::
- text "Find what you"
- line "need at CELADON"
- cont "DEPT. STORE!"
- done
-
-_CeladonCityText16::
- text "TRAINER TIPS"
-
- para "GUARD SPEC."
- line "protects #MON"
- cont "against SPECIAL"
- cont "attacks such as"
- cont "fire and water!"
-
- para "Get your items at"
- line "CELADON DEPT."
- cont "STORE!"
- done
-
-_CeladonCityText17::
- text "Coins exchanged"
- line "for prizes!"
- cont "PRIZE EXCHANGE"
- done
-
-_CeladonCityText18::
- text "ROCKET GAME CORNER"
- line "The playground"
- cont "for grownups!"
- done
-
-_CeladonCityText10::
- text "TRAINER TIPS"
-
- para "X ACCURACY boosts"
- line "the accuracy of"
- cont "techniques!"
-
- para "DIRE HIT jacks up"
- line "the likelihood of"
- cont "critical hits!"
-
- para "Get your items at"
- line "CELADON DEPT."
- cont "STORE!"
- done
diff --git a/text/maps/celadon_dept_store_roof.asm b/text/maps/celadon_dept_store_roof.asm
deleted file mode 100644
index 319ca3f0..00000000
--- a/text/maps/celadon_dept_store_roof.asm
+++ /dev/null
@@ -1,135 +0,0 @@
-_CeladonMartRoofText_484ee::
- text "Give her which"
- line "drink?"
- done
-
-_CeladonMartRoofText_484f3::
- text "Yay!"
-
- para "FRESH WATER!"
-
- para "Thank you!"
-
- para "You can have this"
- line "from me!@@"
-
-_CeladonMartRoofText_484f9::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_CeladonMartRoofText_484fe::
- db $0
- para "@"
- TX_RAM wcf4b
- text " contains"
- line "ICE BEAM!"
-
- para "It can freeze the"
- line "target sometimes!@@"
-
-_CeladonMartRoofText_48504::
- text "Yay!"
-
- para "SODA POP!"
-
- para "Thank you!"
-
- para "You can have this"
- line "from me!@@"
-
-_CeladonMartRoofText_4850a::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_CeladonMartRoofText_4850f::
- db $0
- para "@"
- TX_RAM wcf4b
- text " contains"
- line "ROCK SLIDE!@@"
-
-_CeladonMartRoofText_48515::
- text "Yay!"
-
- para "LEMONADE!"
-
- para "Thank you!"
-
- para "You can have this"
- line "from me!@@"
-
-_ReceivedTM49Text::
- text $52, " received"
- line "TM49!@@"
-
-_CeladonMartRoofText_48520::
- db $0
- para "TM49 contains"
- line "TRI ATTACK!@@"
-
-_CeladonMartRoofText_48526::
- text "You don't have"
- line "space for this!@@"
-
-_CeladonMartRoofText_4852c::
- text "No thank you!"
- line "I'm not thirsty"
- cont "after all!@@"
-
-_CeladonMartRoofText1::
- text "My sister is a"
- line "trainer, believe"
- cont "it or not."
-
- para "But, she's so"
- line "immature, she"
- cont "drives me nuts!"
- done
-
-_CeladonMartRoofText_48598::
- text "I'm thirsty!"
- line "I want something"
- cont "to drink!"
- done
-
-_CeladonMartRoofText4::
- text "I'm thirsty!"
- line "I want something"
- cont "to drink!"
-
- para "Give her a drink?"
- done
-
-_CeladonMartRoofText6::
- text "ROOFTOP SQUARE:"
- line "VENDING MACHINES"
- done
-
-_VendingMachineText1::
- text "A vending machine!"
- line "Here's the menu!"
- prompt
-
-_VendingMachineText4::
- text "Oops, not enough"
- line "money!"
- done
-
-_VendingMachineText5::
- TX_RAM wcf4b
- db $0
- line "popped out!"
- done
-
-_VendingMachineText6::
- text "There's no more"
- line "room for stuff!"
- done
-
-_VendingMachineText7::
- text "Not thirsty!"
- done
diff --git a/text/maps/celadon_diner.asm b/text/maps/celadon_diner.asm
deleted file mode 100644
index fd31eb20..00000000
--- a/text/maps/celadon_diner.asm
+++ /dev/null
@@ -1,59 +0,0 @@
-_CeladonDinerText1::
- text "Hi!"
-
- para "We're taking a"
- line "break now."
- done
-
-_CeladonDinerText2::
- text "My #MON are"
- line "weak, so I often"
- cont "have to go to the"
- cont "DRUG STORE."
- done
-
-_CeladonDinerText3::
- text "Psst! There's a"
- line "basement under"
- cont "the GAME CORNER."
- done
-
-_CeladonDinerText4::
- text "Munch..."
-
- para "The man at that"
- line "table lost it all"
- cont "at the slots."
- done
-
-_CeladonDinerText_491a7::
- text "Go ahead! Laugh!"
-
- para "I'm flat out"
- line "busted!"
-
- para "No more slots for"
- line "me! I'm going"
- cont "straight!"
-
- para "Here! I won't be"
- line "needing this any-"
- cont "more!"
- prompt
-
-_ReceivedCoinCaseText::
- text $52, " received"
- line "a @"
- TX_RAM wcf4b
- text "!@@"
-
-_CoinCaseNoRoomText::
- text "Make room for"
- line "this!"
- done
-
-_CeladonDinerText_491b7::
- text "I always thought"
- line "I was going to"
- cont "win it back..."
- done
diff --git a/text/maps/celadon_game_corner_1.asm b/text/maps/celadon_game_corner_1.asm
deleted file mode 100644
index ad8a82b2..00000000
--- a/text/maps/celadon_game_corner_1.asm
+++ /dev/null
@@ -1,181 +0,0 @@
-_CeladonGameCornerText1::
- text "Welcome!"
-
- para "You can exchange"
- line "your coins for"
- cont "fabulous prizes"
- cont "next door."
- done
-
-_CeladonGameCornerText_48d22::
- text "Welcome to ROCKET"
- line "GAME CORNER!"
-
- para "Do you need some"
- line "game coins?"
-
- para "It's ¥1000 for 50"
- line "coins. Would you"
- cont "like some?"
- done
-
-_CeladonGameCornerText_48d27::
- text "Thanks! Here are"
- line "your 50 coins!"
- done
-
-_CeladonGameCornerText_48d2c::
- text "No? Please come"
- line "play sometime!"
- done
-
-_CeladonGameCornerText_48d31::
- text "You can't afford"
- line "the coins!"
- done
-
-_CeladonGameCornerText_48d36::
- text "Oops! Your COIN"
- line "CASE is full."
- done
-
-_CeladonGameCornerText_48d3b::
- text "You don't have a"
- line "COIN CASE!"
- done
-
-_CeladonGameCornerText3::
- text "Keep this quiet."
-
- para "It's rumored that"
- line "this place is run"
- cont "by TEAM ROCKET."
- done
-
-_CeladonGameCornerText4::
- text "I think these"
- line "machines have"
- cont "different odds."
- done
-
-_CeladonGameCornerText_48d9c::
- text "Kid, do you want"
- line "to play?"
- prompt
-
-_Received10CoinsText::
- text $52, " received"
- line "10 coins!@@"
-
-_CeladonGameCornerText_48da7::
- text "You don't need my"
- line "coins!"
- done
-
-_CeladonGameCornerText_48dac::
- text "Wins seem to come"
- line "and go."
- done
-
-_CeladonGameCornerText6::
- text "I'm having a"
- line "wonderful time!"
- done
-
-_CeladonGameCornerText_48dca::
- text "Hey!"
-
- para "You have better"
- line "things to do,"
- cont "champ in making!"
-
- para "CELADON GYM's"
- line "LEADER is ERIKA!"
- cont "She uses grass-"
- cont "type #MON!"
-
- para "She might appear"
- line "docile, but don't"
- cont "be fooled!"
- done
-
-_CeladonGameCornerText_48dcf::
- text "They offer rare"
- line "#MON that can"
- cont "be exchanged for"
- cont "your coins."
-
- para "But, I just can't"
- line "seem to win!"
- done
-
-_CeladonGameCornerText8::
- text "Games are scary!"
- line "It's so easy to"
- cont "get hooked!"
- done
-
-_CeladonGameCornerText_48e26::
- text "What's up? Want"
- line "some coins?"
- prompt
-
-_Received20CoinsText::
- text $52, " received"
- line "20 coins!@@"
-
-_CeladonGameCornerText_48e31::
- text "You have lots of"
- line "coins!"
- done
-
-_CeladonGameCornerText_48e36::
- text "Darn! I need more"
- line "coins for the"
- cont "#MON I want!"
- done
-
-_CeladonGameCornerText_48e88::
- text "Hey, what? You're"
- line "throwing me off!"
- cont "Here are some"
- cont "coins, shoo!"
- prompt
-
-_CeladonGameCornerText_48e8d::
- text $52, " received"
- line "20 coins!@@"
-
-_CeladonGameCornerText_48e93::
- text "You've got your"
- line "own coins!"
- done
-
-_CeladonGameCornerText_48e98::
- text "The trick is to"
- line "watch the reels"
- cont "closely!"
- done
-
-_CeladonGameCornerText_48ece::
- text "I'm guarding this"
- line "poster!"
- cont "Go away, or else!"
- done
-
-_CeladonGameCornerText_48ed3::
- text "Dang!"
- prompt
-
-_CeladonGameCornerText_48ed8::
- text "Our hideout might"
- line "be discovered! I"
- cont "better tell BOSS!"
- done
-
-_CeladonGameCornerText_48f09::
- text "Hey!"
-
- para "A switch behind"
- line "the poster!?"
- cont "Let's push it!@@"
diff --git a/text/maps/celadon_gym.asm b/text/maps/celadon_gym.asm
deleted file mode 100644
index 99833ee1..00000000
--- a/text/maps/celadon_gym.asm
+++ /dev/null
@@ -1,218 +0,0 @@
-_CeladonGymText_48a5e::
- text "Hello. Lovely"
- line "weather isn't it?"
- cont "It's so pleasant."
-
- para "...Oh dear..."
- line "I must have dozed"
- cont "off. Welcome."
-
- para "My name is ERIKA."
- line "I am the LEADER"
- cont "of CELADON GYM."
-
- para "I teach the art of"
- line "flower arranging."
- cont "My #MON are of"
- cont "the grass-type."
-
- para "Oh, I'm sorry, I"
- line "had no idea that"
- cont "you wished to"
- cont "challenge me."
-
- para "Very well, but I"
- line "shall not lose."
- done
-
-_CeladonGymText_48a63::
- text "Oh!"
- line "I concede defeat."
-
- para "You are remarkably"
- line "strong."
-
- para "I must confer you"
- line "the RAINBOWBADGE."
- prompt
-
-_CeladonGymText_48a68::
- text "You are cataloging"
- line "#MON? I must"
- cont "say I'm impressed."
-
- para "I would never"
- line "collect #MON"
- cont "if they were"
- cont "unattractive."
- done
-
-_CeladonGymText9::
- text "The RAINBOWBADGE"
- line "will make #MON"
- cont "up to L50 obey."
-
- para "It also allows"
- line "#MON to use"
- cont "STRENGTH in and"
- cont "out of battle."
-
- para "Please also take"
- line "this with you."
- done
-
-_ReceivedTM21Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM21ExplanationText::
- db $0
- para "TM21 contains"
- line "MEGA DRAIN."
-
- para "Half the damage"
- line "it inflicts is"
- cont "drained to heal"
- cont "your #MON!"
- done
-
-_TM21NoRoomText::
- text "You should make"
- line "room for this."
- done
-
-_CeladonGymBattleText2::
- text "Hey!"
-
- para "You are not"
- line "allowed in here!"
- done
-
-_CeladonGymEndBattleText2::
- text "You're"
- line "too rough!"
- prompt
-
-_CeladonGymAfterBattleText2::
- text "Bleaah!"
- line "I hope ERIKA"
- cont "wipes you out!"
- done
-
-_CeladonGymBattleText3::
- text "I was getting"
- line "bored."
- done
-
-_CeladonGymEndBattleText3::
- text "My"
- line "makeup!"
- prompt
-
-_CeladonGymAfterBattleText3::
- text "Grass-type #MON"
- line "are tough against"
- cont "the water-type!"
-
- para "They also have an"
- line "edge on rock and"
- cont "ground #MON!"
- done
-
-_CeladonGymBattleText4::
- text "Aren't you the"
- line "peeping Tom?"
- done
-
-_CeladonGymEndBattleText4::
- text "I'm"
- line "in shock!"
- prompt
-
-_CeladonGymAfterBattleText4::
- text "Oh, you weren't"
- line "peeping? We get a"
- cont "lot of gawkers!"
- done
-
-_CeladonGymBattleText5::
- text "Look at my grass"
- line "#MON!"
-
- para "They're so easy"
- line "to raise!"
- done
-
-_CeladonGymEndBattleText5::
- text "No!"
- prompt
-
-_CeladonGymAfterBattleText5::
- text "We only use grass-"
- line "type #MON at"
- cont "our GYM!"
-
- para "We also use them"
- line "for making flower"
- cont "arrangements!"
- done
-
-_CeladonGymBattleText6::
- text "Don't bring any"
- line "bugs or fire"
- cont "#MON in here!"
- done
-
-_CeladonGymEndBattleText6::
- text "Oh!"
- line "You!"
- prompt
-
-_CeladonGymAfterBattleText6::
- text "Our LEADER, ERIKA,"
- line "might be quiet,"
- cont "but she's also"
- cont "very skilled!"
- done
-
-_CeladonGymBattleText7::
- text "Pleased to meet"
- line "you. My hobby is"
- cont "#MON training."
- done
-
-_CeladonGymEndBattleText7::
- text "Oh!"
- line "Splendid!"
- prompt
-
-_CeladonGymAfterBattleText7::
- text "I have a blind"
- line "date coming up."
- cont "I have to learn"
- cont "to be polite."
- done
-
-_CeladonGymBattleText8::
- text "Welcome to"
- line "CELADON GYM!"
-
- para "You better not"
- line "underestimate"
- cont "girl power!"
- done
-
-_CeladonGymEndBattleText8::
- text "Oh!"
- line "Beaten!"
- prompt
-
-_CeladonGymAfterBattleText8::
- text "I didn't bring my"
- line "best #MON!"
-
- para "Wait 'til next"
- line "time!"
- done
diff --git a/text/maps/cerulean_city.asm b/text/maps/cerulean_city.asm
deleted file mode 100644
index 4c51c5e0..00000000
--- a/text/maps/cerulean_city.asm
+++ /dev/null
@@ -1,232 +0,0 @@
-_CeruleanCityText_19668::
- text $53, ": Yo!"
- line $52, "!"
-
- para "You're still"
- line "struggling along"
- cont "back here?"
-
- para "I'm doing great!"
- line "I caught a bunch"
- cont "of strong and"
- cont "smart #MON!"
-
- para "Here, let me see"
- line "what you caught,"
- cont $52, "!"
- done
-
-_CeruleanCityText_1966d::
- text "Hey!"
- line "Take it easy!"
- cont "You won already!"
- prompt
-
-_CeruleanCityText_19672::
- text "Heh!"
- line "You're no match"
- cont "for my genius!"
- prompt
-
-_CeruleanCityText_19677::
- text $53, ": Hey,"
- line "guess what?"
-
- para "I went to BILL's"
- line "and got him to"
- cont "show me his rare"
- cont "#MON!"
-
- para "That added a lot"
- line "of pages to my"
- cont "#DEX!"
-
- para "After all, BILL's"
- line "world famous as a"
- cont "#MANIAC!"
-
- para "He invented the"
- line "#MON Storage"
- cont "System on PC!"
-
- para "Since you're using"
- line "his system, go"
- cont "thank him!"
-
- para "Well, I better"
- line "get rolling!"
- cont "Smell ya later!"
- done
-
-_CeruleanCityText_196d9::
- text "Hey! Stay out!"
- line "It's not your"
- cont "yard! Huh? Me?"
-
- para "I'm an innocent"
- line "bystander! Don't"
- cont "you believe me?"
- done
-
-_ReceivedTM28Text::
- text $52, " recovered"
- line "TM28!@@"
-
-_ReceivedTM28Text2::
- db $0
- para "I better get"
- line "moving! Bye!@@"
-
-_TM28NoRoomText::
- text "Make room for"
- line "this!"
-
- para "I can't run until"
- line "I give it to you!"
- done
-
-_CeruleanCityText_196ee::
- text "Stop!"
- line "I give up! I'll"
- cont "leave quietly!"
- prompt
-
-_CeruleanCityText_196f3::
- text "OK! I'll return"
- line "the TM I stole!"
- prompt
-
-_CeruleanCityText3::
- text "You're a trainer"
- line "too? Collecting,"
- cont "fighting, it's a"
- cont "tough life."
- done
-
-_CeruleanCityText4::
- text "That bush in"
- line "front of the shop"
- cont "is in the way."
-
- para "There might be a"
- line "way around."
- done
-
-_CeruleanCityText5::
- text "You're making an"
- line "encyclopedia on"
- cont "#MON? That"
- cont "sounds amusing."
- done
-
-_CeruleanCityText6::
- text "These poor people"
- line "here were robbed."
-
- para "We're positive"
- line "that TEAM ROCKET"
- cont "is behind this"
- cont "terrible deed."
-
- para "Even our POLICE"
- line "FORCE has trouble"
- cont "with the ROCKETs!"
- done
-
-_CeruleanCityText_19730::
- text "OK! ELECTRODE!"
- line "Use SONICBOOM!"
- cont "Please ELECTRODE,"
- cont "pay attention!"
- done
-
-_CeruleanCityText_19735::
- text "ELECTRODE, TACKLE!"
- line "No! You blew it"
- cont "again!"
- done
-
-_CeruleanCityText_1973a::
- text "ELECTRODE, SWIFT!"
- line "No! That's wrong!"
-
- para "Training #MON"
- line "is difficult!"
-
- para "Your #MON's"
- line "obedience depends"
- cont "on your abilities"
- cont "as a trainer!"
- done
-
-_CeruleanCityText_1976f::
- text "ELECTRODE took a"
- line "snooze..."
- done
-
-_CeruleanCityText_19774::
- text "ELECTRODE is"
- line "loafing around..."
- done
-
-_CeruleanCityText_19779::
- text "ELECTRODE turned"
- line "away..."
- done
-
-_CeruleanCityText_1977e::
- text "ELECTRODE"
- line "ignored orders..."
- done
-
-_CeruleanCityText9::
- text "I want a bright"
- line "red BICYCLE!"
-
- para "I'll keep it at"
- line "home, so it won't"
- cont "get dirty!"
- done
-
-_CeruleanCityText10::
- text "This is CERULEAN"
- line "CAVE! Horribly"
- cont "strong #MON"
- cont "live in there!"
-
- para "The #MON LEAGUE"
- line "champion is the"
- cont "only person who"
- cont "is allowed in!"
- done
-
-_CeruleanCityText12::
- text "CERULEAN CITY"
- line "A Mysterious,"
- cont "Blue Aura"
- cont "Surrounds It"
- done
-
-_CeruleanCityText13::
- text "TRAINER TIPS"
-
- para "Pressing B Button"
- line "during evolution"
- cont "cancels the whole"
- cont "process."
- done
-
-_CeruleanCityText16::
- text "Grass and caves"
- line "handled easily!"
- cont "BIKE SHOP"
- done
-
-_CeruleanCityText17::
- text "CERULEAN CITY"
- line "#MON GYM"
- cont "LEADER: MISTY"
-
- para "The Tomboyish"
- line "Mermaid!"
- done
diff --git a/text/maps/cerulean_gym.asm b/text/maps/cerulean_gym.asm
deleted file mode 100644
index 70cbdf0d..00000000
--- a/text/maps/cerulean_gym.asm
+++ /dev/null
@@ -1,134 +0,0 @@
-_CeruleanGymText_5c7be::
- text "Hi, you're a new"
- line "face!"
-
- para "What's your policy"
- line "on #MON? What"
- cont "is your approach?"
-
- para "My policy is an"
- line "all-out offensive"
- cont "with water-type"
- cont "#MON!"
-
- para "MISTY, the world-"
- line "famous beauty, is"
- cont "your host!"
-
- para "Are you ready,"
- line "sweetie?"
- done
-
-_CeruleanGymText_5c7c3::
- text "TM11 teaches"
- line "BUBBLEBEAM!"
-
- para "Use it on an"
- line "aquatic #MON!"
- done
-
-_CeruleanGymText_5c7c8::
- text "The CASCADEBADGE"
- line "makes all #MON"
- cont "up to L30 obey!"
-
- para "That includes"
- line "even outsiders!"
-
- para "There's more, you"
- line "can now use CUT"
- cont "anytime!"
-
- para "You can CUT down"
- line "small bushes to"
- cont "open new paths!"
-
- para "You can also have"
- line "my favorite TM!"
- done
-
-_ReceivedTM11Text::
- text $52, " received"
- line "TM11!@@"
-
-_CeruleanGymText_5c7d3::
- text "You better make"
- line "room for this!"
- done
-
-_CeruleanGymText_5c7d8::
- text "I can't"
- line "believe I lost!"
-
- para "All right!"
-
- para "You can have the"
- line "CASCADEBADGE to"
- cont "show you beat me!"
- prompt
-
-_CeruleanGymBattleText1::
- text "I'm more than good"
- line "enough for you!"
-
- para "MISTY can wait!"
- done
-
-_CeruleanGymEndBattleText1::
- text "You"
- line "overwhelmed me!"
- prompt
-
-_CeruleanGymAfterBattleText1::
- text "You have to face"
- line "other trainers to"
- cont "find out how good"
- cont "you really are."
- done
-
-_CeruleanGymBattleText2::
- text "Splash!"
-
- para "I'm first up!"
- line "Let's do it!"
- done
-
-_CeruleanGymEndBattleText2::
- text "That"
- line "can't be!"
- prompt
-
-_CeruleanGymAfterBattleText2::
- text "MISTY is going to"
- line "keep improving!"
-
- para "She won't lose to"
- line "someone like you!"
- done
-
-_CeruleanGymText_5c82a::
- text "Yo! Champ in"
- line "making!"
-
- para "Here's my advice!"
-
- para "The LEADER, MISTY,"
- line "is a pro who uses"
- cont "water #MON!"
-
- para "You can drain all"
- line "their water with"
- cont "plant #MON!"
-
- para "Or, zap them with"
- line "electricity!"
- done
-
-_CeruleanGymText_5c82f::
- text "You beat MISTY!"
- line "What'd I tell ya?"
-
- para "You and me, kid,"
- line "we make a pretty"
- cont "darn good team!"
- done
diff --git a/text/maps/champion.asm b/text/maps/champion.asm
deleted file mode 100644
index 3ca7aadf..00000000
--- a/text/maps/champion.asm
+++ /dev/null
@@ -1,146 +0,0 @@
-_GaryChampionIntroText::
- text $53, ": Hey!"
-
- para "I was looking"
- line "forward to seeing"
- cont "you, ", $52, "!"
-
- para "My rival should"
- line "be strong to keep"
- cont "me sharp!"
-
- para "While working on"
- line "#DEX, I looked"
- cont "all over for"
- cont "powerful #MON!"
-
- para "Not only that, I"
- line "assembled teams"
- cont "that would beat"
- cont "any #MON type!"
-
- para "And now!"
-
- para "I'm the #MON"
- line "LEAGUE champion!"
-
- para $52, "! Do you"
- line "know what that"
- cont "means?"
-
- para "I'll tell you!"
-
- para "I am the most"
- line "powerful trainer"
- cont "in the world!"
- done
-
-_GaryDefeatedText::
- text "NO!"
- line "That can't be!"
- cont "You beat my best!"
-
- para "After all that"
- line "work to become"
- cont "LEAGUE champ?"
-
- para "My reign is over"
- line "already?"
- cont "It's not fair!"
- prompt
-
-_GaryVictoryText::
- text "Hahaha!"
- line "I won, I won!"
-
- para "I'm too good for"
- line "you, ", $52, "!"
-
- para "You did well to"
- line "even reach me,"
- cont $53, ", the"
- cont "#MON genius!"
-
- para "Nice try, loser!"
- line "Hahaha!"
- prompt
-
-_GaryText_76103::
- text "Why?"
- line "Why did I lose?"
-
- para "I never made any"
- line "mistakes raising"
- cont "my #MON..."
-
- para "Darn it! You're"
- line "the new #MON"
- cont "LEAGUE champion!"
-
- para "Although I don't"
- line "like to admit it."
- done
-
-_GaryText2::
- text "OAK: ", $52, "!"
- done
-
-_GaryText_76120::
- text "OAK: So, you won!"
- line "Congratulations!"
- cont "You're the new"
- cont "#MON LEAGUE"
- cont "champion!"
-
- para "You've grown up so"
- line "much since you"
- cont "first left with"
- cont "@"
- TX_RAM wcd6d
- text "!"
-
- para $52, ", you have"
- line "come of age!"
- done
-
-_GaryText_76125::
- text "OAK: ", $53, "! I'm"
- line "disappointed!"
-
- para "I came when I"
- line "heard you beat"
- cont "the ELITE FOUR!"
-
- para "But, when I got"
- line "here, you had"
- cont "already lost!"
-
- para $53, "! Do you"
- line "understand why"
- cont "you lost?"
-
- para "You have forgotten"
- line "to treat your"
- cont "#MON with"
- cont "trust and love!"
-
- para "Without them, you"
- line "will never become"
- cont "a champ again!"
- done
-
-_GaryText_7612a::
- text "OAK: ", $52, "!"
-
- para "You understand"
- line "that your victory"
- cont "was not just your"
- cont "own doing!"
-
- para "The bond you share"
- line "with your #MON"
- cont "is marvelous!"
-
- para $52, "!"
- line "Come with me!"
- done
diff --git a/text/maps/cinnabar_gym.asm b/text/maps/cinnabar_gym.asm
deleted file mode 100644
index 58873c2a..00000000
--- a/text/maps/cinnabar_gym.asm
+++ /dev/null
@@ -1,252 +0,0 @@
-_BlaineBattleText::
- text "Hah!"
-
- para "I am BLAINE! I"
- line "am the LEADER of"
- cont "CINNABAR GYM!"
-
- para "My fiery #MON"
- line "will incinerate"
- cont "all challengers!"
-
- para "Hah! You better"
- line "have BURN HEAL!"
- done
-
-_BlaineEndBattleText::
- text "I have"
- line "burnt out!"
-
- para "You have earned"
- line "the VOLCANOBADGE!@@"
-
-_BlaineFireBlastText::
- text "FIRE BLAST is the"
- line "ultimate fire"
- cont "technique!"
-
- para "Don't waste it on"
- line "water #MON!"
- done
-
-_BlaineBadgeText::
- text "Hah!"
-
- para "The VOLCANOBADGE"
- line "heightens the"
- cont "SPECIAL abilities"
- cont "of your #MON!"
-
- para "Here, you can"
- line "have this too!"
- done
-
-_ReceivedTM38Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM38ExplanationText::
- db $0
- para "TM38 contains"
- line "FIRE BLAST!"
-
- para "Teach it to fire-"
- line "type #MON!"
-
- para "CHARMELEON or"
- line "PONYTA would be"
- cont "good bets!"
- done
-
-_TM38NoRoomText::
- text "Make room for my"
- line "gift!"
- done
-
-_CinnabarGymText_7595f::
- text "Do you know how"
- line "hot #MON fire"
- cont "breath can get?"
- done
-
-_CinnabarGymText_75964::
- text "Yow!"
- line "Hot, hot, hot!"
- prompt
-
-_CinnabarGymText_75969::
- text "Fire, or to be"
- line "more precise,"
- cont "combustion..."
-
- para "Blah, blah, blah,"
- line "blah..."
- done
-
-_CinnabarGymText_75994::
- text "I was a thief, but"
- line "I became straight"
- cont "as a trainer!"
- done
-
-_CinnabarGymText_75999::
- text "I"
- line "surrender!"
- prompt
-
-_CinnabarGymText_7599e::
- text "I can't help"
- line "stealing other"
- cont "people's #MON!"
- done
-
-_CinnabarGymText_759c9::
- text "You can't win!"
- line "I have studied"
- cont "#MON totally!"
- done
-
-_CinnabarGymText_759ce::
- text "Waah!"
- line "My studies!"
- prompt
-
-_CinnabarGymText_759d3::
- text "My theories are"
- line "too complicated"
- cont "for you!"
- done
-
-_CinnabarGymText_759fe::
- text "I just like using"
- line "fire #MON!"
- done
-
-_CinnabarGymText_75a03::
- text "Too hot"
- line "to handle!"
- prompt
-
-_CinnabarGymText_75a08::
- text "I wish there was"
- line "a thief #MON!"
- cont "I'd use that!"
- done
-
-_CinnabarGymText_75a33::
- text "I know why BLAINE"
- line "became a trainer!"
- done
-
-_CinnabarGymText_75a38::
- text "Ow!"
- prompt
-
-_CinnabarGymText_75a3d::
- text "BLAINE was lost"
- line "in the mountains"
- cont "when a fiery bird"
- cont "#MON appeared."
-
- para "Its light enabled"
- line "BLAINE to find"
- cont "his way down!"
- done
-
-_CinnabarGymText_75a68::
- text "I've been to many"
- line "GYMs, but this is"
- cont "my favorite!"
- done
-
-_CinnabarGymText_75a6d::
- text "Yowza!"
- line "Too hot!"
- prompt
-
-_CinnabarGymText_75a72::
- text "Us fire #MON"
- line "fans like PONYTA"
- cont "and NINETALES!"
- done
-
-_CinnabarGymText_75a9d::
- text "Fire is weak"
- line "against H2O!"
- done
-
-_CinnabarGymText_75aa2::
- text "Oh!"
- line "Snuffed out!"
- prompt
-
-_CinnabarGymText_75aa7::
- text "Water beats fire!"
- line "But, fire melts"
- cont "ice #MON!"
- done
-
-_CinnabarGymText_75ac2::
- text "Yo! Champ in"
- line "making!"
-
- para "The hot-headed"
- line "BLAINE is a fire"
- cont "#MON pro!"
-
- para "Douse his spirits"
- line "with water!"
-
- para "You better take"
- line "some BURN HEALs!"
- done
-
-_CinnabarGymText_75ac7::
- text $52, "! You beat"
- line "that fire brand!"
- done
-
-_CinnabarGymText_1::
- text "This GYM is also"
- line "known as the QUIZ"
- cont "GYM."
-
- para "You have to take a"
- line "quiz if you want"
- cont "to see BLAINE."
-
- para "You don't have to"
- line "fight us if you"
- cont "get it right."
- done
-
-_CinnabarGymText_2::
- text "Think you can do"
- line "it?"
- done
-
-_CinnabarGymText_3::
- text "This one's tricky!"
- done
-
-_CinnabarGymText_4::
- text "#MON enjoy"
- line "quizzes too!"
- done
-
-_CinnabarGymText_5::
- text "I like it here at"
- line "QUIZ GYM."
- done
-
-_CinnabarGymText_6::
- text "This is the last"
- line "question."
- done
-
-_CinnabarGymText_7::
- text "Come on, answer"
- line "the question!"
- done
diff --git a/text/maps/cinnabar_lab_fossil_room.asm b/text/maps/cinnabar_lab_fossil_room.asm
deleted file mode 100644
index 565104b3..00000000
--- a/text/maps/cinnabar_lab_fossil_room.asm
+++ /dev/null
@@ -1,78 +0,0 @@
-_Lab4Text_75dc6::
- text "Hiya!"
-
- para "I am important"
- line "doctor!"
-
- para "I study here rare"
- line "#MON fossils!"
-
- para "You! Have you a"
- line "fossil for me?"
- prompt
-
-_Lab4Text_75dcb::
- text "No! Is too bad!"
- done
-
-_Lab4Text_75dd0::
- text "I take a little"
- line "time!"
-
- para "You go for walk a"
- line "little while!"
- done
-
-_Lab4Text_75dd5::
- text "Where were you?"
-
- para "Your fossil is"
- line "back to life!"
-
- para "It was @"
- TX_RAM wcf4b
- db $0
- line "like I think!"
- prompt
-
-_Lab4Text_610ae::
- text "Oh! That is"
- line "@"
- TX_RAM wcd6d
- text "!"
-
- para "It is fossil of"
- line "@"
- TX_RAM wcf4b
- text ", a"
- cont "#MON that is"
- cont "already extinct!"
-
- para "My Resurrection"
- line "Machine will make"
- cont "that #MON live"
- cont "again!"
- done
-
-_Lab4Text_610b3::
- text "So! You hurry and"
- line "give me that!"
-
- para $52, " handed"
- line "over @"
- TX_RAM wcd6d
- text "!"
- prompt
-
-_Lab4Text_610b8::
- text "I take a little"
- line "time!"
-
- para "You go for walk a"
- line "little while!"
- done
-
-_Lab4Text_610bd::
- text "Aiyah! You come"
- line "again!"
- done
diff --git a/text/maps/cinnabar_lab_metronome_room.asm b/text/maps/cinnabar_lab_metronome_room.asm
deleted file mode 100644
index e2fbb558..00000000
--- a/text/maps/cinnabar_lab_metronome_room.asm
+++ /dev/null
@@ -1,63 +0,0 @@
-_TM35PreReceiveText::
- text "Tch-tch-tch!"
- line "I made a cool TM!"
-
- para "It can cause all"
- line "kinds of fun!"
- prompt
-
-_ReceivedTM35Text::
- text $52, " received "
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM35ExplanationText::
- text "Tch-tch-tch!"
- line "That's the sound"
- cont "of a METRONOME!"
-
- para "It tweaks your"
- line "#MON's brain"
- cont "into using moves"
- cont "it doesn't know!"
- done
-
-_TM35NoRoomText::
- text "Your pack is"
- line "crammed full!"
- done
-
-_Lab3Text2::
- text "EEVEE can evolve"
- line "into 1 of 3 kinds"
- cont "of #MON."
- done
-
-_Lab3Text3::
- text "There's an e-mail"
- line "message!"
-
- para "..."
-
- para "The 3 legendary"
- line "bird #MON are"
- cont "ARTICUNO, ZAPDOS"
- cont "and MOLTRES."
-
- para "Their whereabouts"
- line "are unknown."
-
- para "We plan to explore"
- line "the cavern close"
- cont "to CERULEAN."
-
- para "From: #MON"
- line "RESEARCH TEAM"
-
- para "..."
- done
-
-_Lab3Text5::
- text "An amber pipe!"
- done
diff --git a/text/maps/copycats_house_2f.asm b/text/maps/copycats_house_2f.asm
deleted file mode 100644
index 90833127..00000000
--- a/text/maps/copycats_house_2f.asm
+++ /dev/null
@@ -1,96 +0,0 @@
-_CopycatsHouse2FText_5ccd4::
- text $52, ": Hi! Do"
- line "you like #MON?"
-
- para $52, ": Uh no, I"
- line "just asked you."
-
- para $52, ": Huh?"
- line "You're strange!"
-
- para "COPYCAT: Hmm?"
- line "Quit mimicking?"
-
- para "But, that's my"
- line "favorite hobby!"
- prompt
-
-_TM31PreReceiveText::
- text "Oh wow!"
- line "A # DOLL!"
-
- para "For me?"
- line "Thank you!"
-
- para "You can have"
- line "this, then!"
- prompt
-
-_ReceivedTM31Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM31ExplanationText1::
- db $0
- para "TM31 contains my"
- line "favorite, MIMIC!"
-
- para "Use it on a good"
- line "#MON!@@"
-
-_TM31ExplanationText2::
- text $52, ": Hi!"
- line "Thanks for TM31!"
-
- para $52, ": Pardon?"
-
- para $52, ": Is it"
- line "that fun to mimic"
- cont "my every move?"
-
- para "COPYCAT: You bet!"
- line "It's a scream!"
- done
-
-_TM31NoRoomText::
- text "Don't you want"
- line "this?@@"
-
-_CopycatsHouse2FText2::
- text "DODUO: Giiih!"
-
- para "MIRROR MIRROR ON"
- line "THE WALL, WHO IS"
- cont "THE FAIREST ONE"
- cont "OF ALL?"
- done
-
-_CopycatsHouse2FText3::
- text "This is a rare"
- line "#MON! Huh?"
- cont "It's only a doll!"
- done
-
-_CopycatsHouse2FText6::
- text "A game with MARIO"
- line "wearing a bucket"
- cont "on his head!"
- done
-
-_CopycatsHouse2FText_5cd17::
- text "..."
-
- para "My Secrets!"
-
- para "Skill: Mimicry!"
- line "Hobby: Collecting"
- cont "dolls!"
- cont "Favorite #MON:"
- cont "CLEFAIRY!"
- done
-
-_CopycatsHouse2FText_5cd1c::
- text "Huh? Can't see!"
- done
diff --git a/text/maps/daycare.asm b/text/maps/daycare.asm
deleted file mode 100644
index 8375ead0..00000000
--- a/text/maps/daycare.asm
+++ /dev/null
@@ -1,92 +0,0 @@
-_DayCareIntroText::
- text "I run a DAYCARE."
- line "Would you like me"
- cont "to raise one of"
- cont "your #MON?"
- done
-
-_DayCareWhichMonText::
- text "Which #MON"
- line "should I raise?"
- prompt
-
-_DayCareWillLookAfterMonText::
- text "Fine, I'll look"
- line "after @"
- TX_RAM wcd6d
- db $0
- cont "for a while."
- prompt
-_DayCareComeSeeMeInAWhileText::
- text "Come see me in"
- line "a while."
- done
-_DayCareMonHasGrownText::
- text "Your @"
- TX_RAM wcd6d
- db $0
- line "has grown a lot!"
- para "By level, it's"
- line "grown by @"
- TX_NUM wDayCareNumLevelsGrown,$1,$3
- text "!"
-
- para "Aren't I great?"
- prompt
-_DayCareOweMoneyText::
- text "You owe me ¥@"
- TX_BCD wDayCareTotalCost, $c2
- db $0
- line "for the return"
- cont "of this #MON."
- done
-
-_DayCareGotMonBackText::
- text $52, " got"
- line "@"
- TX_RAM wDayCareMonName
- text " back!"
- done
-
-_DayCareMonNeedsMoreTimeText::
- text "Back already?"
- line "Your @"
- TX_RAM wcd6d
- db $0
- cont "needs some more"
- cont "time with me."
- prompt
-
-_DayCareAllRightThenText::
- text "All right then,"
- line "@@"
-
-_DayCareComeAgainText::
- text "Come again."
- done
-
-_DayCareNoRoomForMonText::
- text "You have no room"
- line "for this #MON!"
- done
-
-_DayCareOnlyHaveOneMonText::
- text "You only have one"
- line "#MON with you."
- done
-
-_DayCareCantAcceptMonWithHMText::
- text "I can't accept a"
- line "#MON that"
- cont "knows an HM move."
- done
-
-_DayCareHeresYourMonText::
- text "Thank you! Here's"
- line "your #MON!"
- prompt
-
-_DayCareNotEnoughMoneyText::
- text "Hey, you don't"
- line "have enough ¥!"
- done
diff --git a/text/maps/fuchsia_fishing_house.asm b/text/maps/fuchsia_fishing_house.asm
deleted file mode 100644
index 195dc8ef..00000000
--- a/text/maps/fuchsia_fishing_house.asm
+++ /dev/null
@@ -1,43 +0,0 @@
-_FuchsiaHouse3Text_561bd::
- text "I'm the FISHING"
- line "GURU's older"
- cont "brother!"
-
- para "I simply Looove"
- line "fishing!"
-
- para "Do you like to"
- line "fish?"
- done
-
-_FuchsiaHouse3Text_561c2::
- text "Grand! I like"
- line "your style!"
-
- para "Take this and"
- line "fish, young one!"
-
- para $52, " received"
- line "a @"
- TX_RAM wcf4b
- text "!@@"
-
-_FuchsiaHouse3Text_56212::
- text "Oh... That's so"
- line "disappointing..."
- done
-
-_FuchsiaHouse3Text_56217::
- text "Hello there,"
- line $52, "!"
-
- para "How are the fish"
- line "biting?"
- done
-
-_FuchsiaHouse3Text_5621c::
- text "Oh no!"
-
- para "You have no room"
- line "for my gift!"
- done
diff --git a/text/maps/fuchsia_gym.asm b/text/maps/fuchsia_gym.asm
deleted file mode 100644
index 6beebc69..00000000
--- a/text/maps/fuchsia_gym.asm
+++ /dev/null
@@ -1,214 +0,0 @@
-_KogaBeforeBattleText::
- text "KOGA: Fwahahaha!"
-
- para "A mere child like"
- line "you dares to"
- cont "challenge me?"
-
- para "Very well, I"
- line "shall show you"
- cont "true terror as a"
- cont "ninja master!"
-
- para "You shall feel"
- line "the despair of"
- cont "poison and sleep"
- cont "techniques!"
- done
-
-_KogaAfterBattleText::
- text "Humph!"
- line "You have proven"
- cont "your worth!"
-
- para "Here! Take the"
- line "SOULBADGE!"
- prompt
-
-_KogaExplainToxicText::
- text "When afflicted by"
- line "TOXIC, #MON"
- cont "suffer more and"
- cont "more as battle"
- cont "progresses!"
-
- para "It will surely"
- line "terrorize foes!"
- done
-
-_FuchsiaGymText9::
- text "Now that you have"
- line "the SOULBADGE,"
- cont "the DEFENSE of"
- cont "your #MON"
- cont "increases!"
-
- para "It also lets you"
- line "SURF outside of"
- cont "battle!"
-
- para "Ah! Take this"
- line "too!"
- done
-
-_ReceivedTM06Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM06ExplanationText::
- db $0
- para "TM06 contains"
- line "TOXIC!"
-
- para "It is a secret"
- line "technique over"
- cont "400 years old!"
- done
-
-_TM06NoRoomText::
- text "Make space for"
- line "this, child!"
- done
-
-_FuchsiaGymBattleText1::
- text "Strength isn't"
- line "the key for"
- cont "#MON!"
-
- para "It's strategy!"
- para "I'll show you how"
- line "strategy can beat"
- cont "brute strength!"
- done
-
-_FuchsiaGymEndBattleText1::
- text "What?"
- line "Extraordinary!"
- prompt
-
-_FuchsiaGymAfterBattleText1::
- text "So, you mix brawn"
- line "with brains?"
- cont "Good strategy!"
- done
-
-_FuchsiaGymBattleText2::
- text "I wanted to become"
- line "a ninja, so I"
- cont "joined this GYM!"
- done
-
-_FuchsiaGymEndBattleText2::
- text "I'm done"
- line "for!"
- prompt
-_FuchsiaGymAfterBattleText2::
- text "I will keep on"
- line "training under"
- cont "KOGA, my ninja"
- cont "master!"
- done
-_FuchsiaGymBattleText3::
- text "Let's see you"
- line "beat my special"
- cont "techniques!"
- done
-
-_FuchsiaGymEndBattleText3::
- text "You"
- line "had me fooled!"
- prompt
-
-_FuchsiaGymAfterBattleText3::
- text "I like poison and"
- line "sleep techniques,"
- cont "as they linger"
- cont "after battle!"
- done
-
-_FuchsiaGymBattleText4::
- text "Stop right there!"
-
- para "Our invisible"
- line "walls have you"
- cont "frustrated?"
- done
-
-_FuchsiaGymEndBattleText4::
- text "Whoa!"
- line "He's got it!"
- prompt
-_FuchsiaGymAfterBattleText4::
- text "You impressed me!"
- line "Here's a hint!"
-
- para "Look very closely"
- line "for gaps in the"
- cont "invisible walls!"
- done
-
-_FuchsiaGymBattleText5::
- text "I also study the"
- line "way of the ninja"
- cont "with master KOGA!"
-
- para "Ninja have a long"
- line "history of using"
- cont "animals!"
- done
-
-_FuchsiaGymEndBattleText5::
- text "Awoo!"
- prompt
-
-_FuchsiaGymAfterBattleText5::
- text "I still have much"
- line "to learn!"
- done
-
-_FuchsiaGymBattleText6::
- text "Master KOGA comes"
- line "from a long line"
- cont "of ninjas!"
-
- para "What did you"
- line "descend from?"
- done
-
-_FuchsiaGymEndBattleText6::
- text "Dropped"
- line "my balls!"
- prompt
-
-_FuchsiaGymAfterBattleText6::
- text "Where there is"
- line "light, there is"
- cont "shadow!"
-
- para "Light and shadow!"
- line "Which do you"
- cont "choose?"
- done
-
-_FuchsiaGymText_7564e::
- text "Yo! Champ in"
- line "making!"
-
- para "FUCHSIA GYM is"
- line "riddled with"
- cont "invisible walls!"
-
- para "KOGA might appear"
- line "close, but he's"
- cont "blocked off!"
- para "You have to find"
- line "gaps in the walls"
- cont "to reach him!"
- done
-_FuchsiaGymText_75653::
- text "It's amazing how"
- line "ninja can terrify"
- cont "even now!"
- done
diff --git a/text/maps/fujis_house.asm b/text/maps/fujis_house.asm
deleted file mode 100644
index 7c61d1ed..00000000
--- a/text/maps/fujis_house.asm
+++ /dev/null
@@ -1,85 +0,0 @@
-_LavenderHouse1Text_1d8d1::
- text "That's odd, MR.FUJI"
- line "isn't here."
- cont "Where'd he go?"
- done
-
-_LavenderHouse1Text_1d8d6::
- text "MR.FUJI had been"
- line "praying alone for"
- cont "CUBONE's mother."
- done
-
-_LavenderHouse1Text_1d8f4::
- text "This is really"
- line "MR.FUJI's house."
-
- para "He's really kind!"
-
- para "He looks after"
- line "abandoned and"
- cont "orphaned #MON!"
- done
-
-_LavenderHouse1Text_1d8f9::
- text "It's so warm!"
- line "#MON are so"
- cont "nice to hug!"
- done
-
-_LavenderHouse1Text3::
- text "PSYDUCK: Gwappa!@@"
-
-_LavenderHouse1Text4::
- text "NIDORINO: Gaoo!@@"
-
-_LavenderHouse1Text_1d94c::
- text "MR.FUJI: ", $52, "."
-
- para "Your #DEX quest"
- line "may fail without"
- cont "love for your"
- cont "#MON."
-
- para "I think this may"
- line "help your quest."
- prompt
-
-_ReceivedFluteText::
- text $52, " received"
- line "a @"
- TX_RAM wcf4b
- text "!@@"
-
-_FluteExplanationText::
- db $0
- para "Upon hearing #"
- line "FLUTE, sleeping"
- cont "#MON will"
- cont "spring awake."
-
- para "It works on all"
- line "sleeping #MON."
- done
-
-_FluteNoRoomText::
- text "You must make"
- line "room for this!"
- done
-
-_MrFujiAfterFluteText::
- text "MR.FUJI: Has my"
- line "FLUTE helped you?"
- done
-
-_LavenderHouse1Text6::
- text "#MON Monthly"
- line "Grand Prize"
- cont "Drawing!"
-
- para "The application"
- line "form is..."
-
- para "Gone! It's been"
- line "clipped out!"
- done
diff --git a/text/maps/lance.asm b/text/maps/lance.asm
deleted file mode 100644
index 22cc0dcd..00000000
--- a/text/maps/lance.asm
+++ /dev/null
@@ -1,63 +0,0 @@
-_LanceBeforeBattleText::
- text "Ah! I heard about"
- line "you, <PLAYER>!"
-
- para "I lead the ELITE"
- line "FOUR! You can"
- cont "call me LANCE the"
- cont "dragon trainer!"
-
- para "You know that"
- line "dragons are"
- cont "mythical #MON!"
-
- para "They're hard to"
- line "catch and raise,"
- cont "but their powers"
- cont "are superior!"
-
- para "They're virtually"
- line "indestructible!"
-
- para "Well, are you"
- line "ready to lose?"
-
- para "Your LEAGUE"
- line "challenge ends"
- cont "with me, ", $52, "!"
- done
-
-_LanceEndBattleText::
- text "That's it!"
-
- para "I hate to admit"
- line "it, but you are a"
- cont "#MON master!"
- prompt
-
-_LanceAfterBattleText::
- text "I still can't"
- line "believe my"
- cont "dragons lost to"
- cont "you, ", $52, "!"
-
- para "You are now the"
- line "#MON LEAGUE"
- cont "champion!"
-
- para "...Or, you would"
- line "have been, but"
- cont "you have one more"
- cont "challenge ahead."
-
- para "You have to face"
- line "another trainer!"
- cont "His name is..."
-
- para $53, "!"
- line "He beat the ELITE"
- cont "FOUR before you!"
-
- para "He is the real"
- line "#MON LEAGUE"
- cont "champion!@@"
diff --git a/text/maps/mr_psychics_house.asm b/text/maps/mr_psychics_house.asm
deleted file mode 100644
index 8c37383d..00000000
--- a/text/maps/mr_psychics_house.asm
+++ /dev/null
@@ -1,25 +0,0 @@
-_TM29PreReceiveText::
- text "...Wait! Don't"
- line "say a word!"
-
- para "You wanted this!"
- prompt
-
-_ReceivedTM29Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM29ExplanationText::
- text "TM29 is PSYCHIC!"
-
- para "It can lower the"
- line "target's SPECIAL"
- cont "abilities."
- done
-
-_TM29NoRoomText::
- text "Where do you plan"
- line "to put this?"
- done
diff --git a/text/maps/mt_moon_b1f.asm b/text/maps/mt_moon_b1f.asm
deleted file mode 100644
index cd995ed5..00000000
--- a/text/maps/mt_moon_b1f.asm
+++ /dev/null
@@ -1,3 +0,0 @@
-_MtMoonText1::
- db $0
- done
diff --git a/text/maps/mt_moon_b2f.asm b/text/maps/mt_moon_b2f.asm
deleted file mode 100644
index 9ad1d706..00000000
--- a/text/maps/mt_moon_b2f.asm
+++ /dev/null
@@ -1,125 +0,0 @@
-_MtMoonJessieJamesText1::
- text "Stop right there!@@"
-
-_MtMoonJessieJamesText2::
- text "That fossil is"
- line "TEAM ROCKET's!"
-
- para "Surrender now, or "
- line "prepare to fight!"
- done
-
-_MtMoonJessieJamesText3::
- text "A"
- line "brat beat us?"
- prompt
-
-_MtMoonJessieJamesText4::
- text "TEAM ROCKET, blast"
- line "off at the speed"
- cont "of light!@@"
-
-_MtMoon3Text_49f24::
- text "You want the"
- line "DOME FOSSIL?"
- done
-
-_MtMoon3Text_49f64::
- text "You want the"
- line "HELIX FOSSIL?"
- done
-
-_MtMoon3Text_49f6f::
- text $52, " got the"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_MtMoon3Text_49f7f::
- text "Look, you've got"
- line "no room for this.@@"
-
-_MtMoon3Text_49f85::
- text "Hey, stop!"
-
- para "I found these"
- line "fossils! They're"
- cont "both mine!"
- done
-
-_MtMoon3Text_49f8a::
- text "OK!"
- line "I'll share!"
- prompt
-
-_MtMoon3Text_49f8f::
- text "We'll each take"
- line "one!"
- cont "No being greedy!"
- done
-
-_MtMoon3Text_49f94::
- text "Far away, on"
- line "CINNABAR ISLAND,"
- cont "there's a #MON"
- cont "LAB."
-
- para "They do research"
- line "on regenerating"
- cont "fossils."
- done
-
-_MtMoon3Text_49f99::
- text "All right. Then"
- line "this is mine!@@"
-
-_MtMoon3BattleText3::
- text "We, TEAM ROCKET,"
- line "are #MON"
- cont "gangsters!"
- done
-
-_MtMoon3EndBattleText3::
- text "I blew"
- line "it!"
- prompt
-
-_MtMoon3AfterBattleText3::
- text "Darn it all! My"
- line "associates won't"
- cont "stand for this!"
- done
-
-_MtMoon3BattleText4::
- text "We're pulling a"
- line "big job here!"
- cont "Get lost, kid!"
- done
-
-_MtMoon3EndBattleText4::
- text "So, you"
- line "are good."
- prompt
-
-_MtMoon3AfterBattleText4::
- text "If you find a"
- line "fossil, give it"
- cont "to me and scram!"
- done
-
-_MtMoon3BattleText5::
- text "Little kids"
- line "should leave"
- cont "grown-ups alone!"
- done
-
-_MtMoon3EndBattleText5::
- text "I'm"
- line "steamed!"
- prompt
-
-_MtMoon3AfterBattleText5::
- text "#MON lived"
- line "here long before"
- cont "people came."
- done
diff --git a/text/maps/mt_moon_pokecenter.asm b/text/maps/mt_moon_pokecenter.asm
deleted file mode 100644
index ebcada87..00000000
--- a/text/maps/mt_moon_pokecenter.asm
+++ /dev/null
@@ -1,48 +0,0 @@
-_MtMoonPokecenterText1::
- text "I've 6 # BALLs"
- line "set in my belt."
-
- para "At most, you can"
- line "carry 6 #MON."
- done
-
-_MtMoonPokecenterText3::
- text "TEAM ROCKET"
- line "attacks CERULEAN"
- cont "citizens..."
-
- para "TEAM ROCKET is"
- line "always in the"
- cont "news!"
- done
-
-_MtMoonPokecenterText5::
- db $0
- done
-
-_MagikarpSalesmanText1::
- text "MAN: Hello, there!"
- line "Have I got a deal"
- cont "just for you!"
-
- para "I'll let you have"
- line "a swell MAGIKARP"
- cont "for just ¥500!"
- cont "What do you say?"
- done
-
-_MagikarpSalesmanNoText::
- text "No? I'm only"
- line "doing this as a"
- cont "favor to you!"
- done
-
-_MagikarpSalesmanNoMoneyText::
- text "You'll need more"
- line "money than that!"
- done
-
-_MagikarpSalesmanText2::
- text "MAN: Well, I don't"
- line "give refunds!"
- done
diff --git a/text/maps/pallet_town.asm b/text/maps/pallet_town.asm
deleted file mode 100644
index 741ad529..00000000
--- a/text/maps/pallet_town.asm
+++ /dev/null
@@ -1,67 +0,0 @@
-_OakAppearsText::
- text "OAK: Hey! Wait!"
- line "Don't go out!@@"
-
-_OakWalksUpText::
- text "OAK: That was"
- line "close!"
-
- para "Wild #MON live"
- line "in tall grass!"
- done
-
-_OakWhewText::
- text "OAK: Whew..."
- done
-
-_OakGrassText::
- text "OAK: A #MON can"
- line "appear anytime in"
- cont "tall grass."
-
- para "You need your own"
- line "#MON for your"
- cont "protection."
- cont "I know!"
-
- para "Here, come with"
- line "me!"
- done
-
-_PalletTownText2::
- text "I'm raising"
- line "#MON too!"
-
- para "When they get"
- line "strong, they can"
- cont "protect me!"
- done
-
-_PalletTownText3::
- text "Technology is"
- line "incredible!"
-
- para "You can now store"
- line "and recall items"
- cont "and #MON as"
- cont "data via PC!"
- done
-
-_PalletTownText4::
- text "OAK #MON"
- line "RESEARCH LAB"
- done
-
-_PalletTownText5::
- text "PALLET TOWN"
- line "Shades of your"
- cont "journey await!"
- done
-
-_PalletTownText6::
- text $52,"'s house "
- done
-
-_PalletTownText7::
- text $53,"'s house "
- done
diff --git a/text/maps/pewter_city.asm b/text/maps/pewter_city.asm
deleted file mode 100644
index 03dfcc91..00000000
--- a/text/maps/pewter_city.asm
+++ /dev/null
@@ -1,117 +0,0 @@
-_PewterCityText1::
- text "It's rumored that"
- line "CLEFAIRYs came"
- cont "from the moon!"
-
- para "They appeared "
- line "after MOON STONE"
- cont "fell on MT.MOON."
- done
-
-_PewterCityText2::
- text "There aren't many"
- line "serious #MON"
- cont "trainers here!"
-
- para "They're all like"
- line "BUG CATCHERs,"
- cont "but PEWTER GYM's"
- cont "BROCK is totally"
- cont "into it!"
- done
-
-_PewterCityText_193f1::
- text "Did you check out"
- line "the MUSEUM?"
- done
-
-_PewterCityText_193f6::
- text "Weren't those"
- line "fossils from MT."
- cont "MOON amazing?"
- done
-
-_PewterCityText_193fb::
- text "Really?"
- line "You absolutely"
- cont "have to go!"
- done
-
-_PewterCityText13::
- text "It's right here!"
- line "You have to pay"
- cont "to get in, but"
- cont "it's worth it!"
- cont "See you around!"
- done
-
-_PewterCityText_19427::
- text "Psssst!"
- line "Do you know what"
- cont "I'm doing?"
- done
-
-_PewterCityText_1942c::
- text "That's right!"
- line "It's hard work!"
- done
-
-_PewterCityText_19431::
- text "I'm spraying REPEL"
- line "to keep #MON"
- cont "out of my garden!"
- done
-
-_PewterCityText_1945d::
- text "You're a trainer"
- line "right? BROCK's"
- cont "looking for new"
- cont "challengers!"
- cont "Follow me!"
- done
-
-_PewterCityText_19462::
- text "If you have the"
- line "right stuff, go"
- cont "take on BROCK!"
- done
-
-_PewterCityText6::
- text "TRAINER TIPS"
-
- para "Any #MON that"
- line "takes part in"
- cont "battle, however"
- cont "short, earns EXP!"
- done
-
-_PewterCityText7::
- text "NOTICE!"
-
- para "Thieves have been"
- line "stealing #MON"
- cont "fossils at MT."
- cont "MOON! Please call"
- cont "PEWTER POLICE"
- cont "with any info!"
- done
-
-_PewterCityText10::
- text "PEWTER MUSEUM"
- line "OF SCIENCE"
- done
-
-_PewterCityText11::
- text "PEWTER CITY"
- line "#MON GYM"
- cont "LEADER: BROCK"
-
- para "The Rock Solid"
- line "#MON Trainer!"
- done
-
-_PewterCityText12::
- text "PEWTER CITY"
- line "A Stone Gray"
- cont "City"
- done
diff --git a/text/maps/pewter_gym.asm b/text/maps/pewter_gym.asm
deleted file mode 100644
index a8781b4d..00000000
--- a/text/maps/pewter_gym.asm
+++ /dev/null
@@ -1,182 +0,0 @@
-_PewterGymText_5c49e::
- text "I'm BROCK!"
- line "I'm PEWTER's GYM"
- cont "LEADER!"
-
- para "I believe in rock"
- line "hard defense and"
- cont "determination!"
-
- para "That's why my"
- line "#MON are all"
- cont "the rock-type!"
-
- para "Do you still want"
- line "to challenge me?"
- cont "Fine then! Show"
- cont "me your best!"
- done
-
-_PewterGymText_5c4a3::
- text "There are all"
- line "kinds of trainers"
- cont "in the world!"
-
- para "Some raise #MON"
- line "for fights. Some"
- cont "see them as pets."
-
- para "I'm in training to"
- line "become a #MON"
- cont "breeder."
-
- para "If you take your"
- line "#MON training"
- cont "seriously, go"
- cont "visit the GYM in"
- cont "CERULEAN and test"
- cont "your abilities!"
- done
-
-_TM34PreReceiveText::
- text "Wait! Take this"
- line "with you!"
- done
-
-_ReceivedTM34Text::
- text $52, " received"
- line "TM34!@@"
-
-_TM34ExplanationText::
- db $0
- para "A TM contains a"
- line "technique that"
- cont "can be taught to"
- cont "#MON!"
-
- para "A TM is good only"
- line "once! So when you"
- cont "use one to teach"
- cont "a new technique,"
- cont "pick the #MON"
- cont "carefully!"
-
- para "TM34 contains"
- line "BIDE!"
-
- para "Your #MON will"
- line "absorb damage in"
- cont "battle then pay"
- cont "it back double!"
- done
-
-_TM34NoRoomText::
- text "You don't have"
- line "room for this!"
- done
-
-_PewterGymText_5c4bc::
- text "I took"
- line "you for granted."
-
- para "As proof of your"
- line "victory, here's"
- cont "the BOULDERBADGE!"
-
- para $52, " received"
- line "the BOULDERBADGE!@@"
-
-_PewterGymText_5c4c1::
- db $0
- para "That's an official"
- line "#MON LEAGUE"
- cont "BADGE!"
-
- para "Its bearer's"
- line "#MON become"
- cont "more powerful!"
-
- para "The technique"
- line "FLASH can now be"
- cont "used anytime!"
- prompt
-
-_PewterGymBattleText1::
- text "Stop right there,"
- line "kid!"
-
- para "You're still light"
- line "years from facing"
- cont "BROCK!"
- done
-
-_PewterGymEndBattleText1::
- text "Darn!"
-
- para "Light years isn't"
- line "time! It measures"
- cont "distance!"
- prompt
-
-_PewterGymAfterBattleText1::
- text "You're pretty hot,"
- line "but not as hot"
- cont "as BROCK!"
- done
-
-_PewterGymText_5c515::
- text "Hiya! I can tell"
- line "you have what it"
- cont "takes to become a"
- cont "#MON champ!"
-
- para "I'm no trainer,"
- line "but I can tell"
- cont "you how to win!"
-
- para "Let me take you"
- line "to the top!"
- done
-
-_PewterGymText_5c51a::
- text "All right! Let's"
- line "get happening!"
- prompt
-
-_PewterGymText_5c51f::
- text "The 1st #MON"
- line "out in a match is"
- cont "at the top of the"
- cont "#MON LIST!"
-
- para "By changing the"
- line "order of #MON,"
- cont "matches could be"
- cont "made easier!"
- done
-
-_PewterGymText_5c524::
- text "It's a free"
- line "service! Let's"
- cont "get happening!"
- prompt
-
-_PewterGymText_5c529::
- text "Just as I thought!"
- line "You're #MON"
- cont "champ material!"
- done
-
-_PewterGymGuyText::
- text "All right! Let's"
- line "get happening!"
-
- para "It will be tough"
- line "for your PIKACHU"
- cont "at this GYM!"
-
- para "Electric attacks"
- line "are harmless to"
- cont "BROCK's ground-"
- cont "type #MON."
- done
diff --git a/text/maps/pokemon_league_gate.asm b/text/maps/pokemon_league_gate.asm
deleted file mode 100644
index ac92f4b0..00000000
--- a/text/maps/pokemon_league_gate.asm
+++ /dev/null
@@ -1,19 +0,0 @@
-_Route22GateText_1e704::
- text "Only truly skilled"
- line "trainers are"
- cont "allowed through."
-
- para "You don't have the"
- line "BOULDERBADGE yet!@@"
-
-_Route22GateText_1e715::
- db $0
- para "The rules are"
- line "rules. I can't"
- cont "let you pass."
- done
-
-_Route22GateText_1e71a::
- text "Oh! That is the"
- line "BOULDERBADGE!"
- cont "Go right ahead!@@"
diff --git a/text/maps/pokemon_tower_2f.asm b/text/maps/pokemon_tower_2f.asm
deleted file mode 100644
index ec2281fd..00000000
--- a/text/maps/pokemon_tower_2f.asm
+++ /dev/null
@@ -1,57 +0,0 @@
-_PokemonTower2Text_6062d::
- text $53, ": Hey,"
- line $52, "! What"
- cont "brings you here?"
- cont "Your #MON"
- cont "don't look dead!"
-
- para "I can at least"
- line "make them faint!"
- cont "Let's go, pal!"
- done
-
-_PokemonTower2Text_60632::
- text "What?"
- line "You stinker!"
-
- para "I took it easy on"
- line "you too!"
- prompt
-
-_PokemonTower2Text_60637::
- text $53, ": Well,"
- line "look at all your"
- cont "wimpy #MON!"
-
- para "Toughen them up a"
- line "bit more!"
- prompt
-
-_PokemonTower2Text_6063c::
- text "How's your #DEX"
- line "coming, pal?"
- cont "I just caught a"
- cont "CUBONE!"
-
- para "I can't find the"
- line "grown-up MAROWAK"
- cont "yet!"
-
- para "I doubt there are"
- line "any left! Well, I"
- cont "better get going!"
- cont "I've got a lot to"
- cont "accomplish, pal!"
-
- para "Smell ya later!"
- done
-
-_PokemonTower2Text2::
- text "Even we could not"
- line "identify the"
- cont "wayward GHOSTs!"
-
- para "A SILPH SCOPE"
- line "might be able to"
- cont "unmask them."
- done
diff --git a/text/maps/pokemon_tower_5f.asm b/text/maps/pokemon_tower_5f.asm
deleted file mode 100644
index f2cadfcb..00000000
--- a/text/maps/pokemon_tower_5f.asm
+++ /dev/null
@@ -1,71 +0,0 @@
-_PokemonTower5Text1::
- text "Come, child! I"
- line "sealed this space"
- cont "with white magic!"
-
- para "You can rest here!"
- done
-
-_PokemonTower5BattleText1::
- text "Give...me..."
- line "your...soul..."
- done
-
-_PokemonTower5EndBattleText1::
- text "Gasp!"
- prompt
-
-_PokemonTower5AfterBattleText1::
- text "I was under"
- line "possession!"
- done
-
-_PokemonTower5BattleText2::
- text "You...shall..."
- line "join...us..."
- done
-
-_PokemonTower5EndBattleText2::
- text "What"
- line "a nightmare!"
- prompt
-
-_PokemonTower5AfterBattleText2::
- text "I was possessed!"
- done
-
-_PokemonTower5BattleText3::
- text "Zombies!"
- done
-
-_PokemonTower5EndBattleText3::
- text "Ha?"
- prompt
-
-_PokemonTower5AfterBattleText3::
- text "I regained my"
- line "senses!"
- done
-
-_PokemonTower5BattleText4::
- text "Urgah..."
- line "Urff...."
- done
-
-_PokemonTower5EndBattleText4::
- text "Whoo!"
- prompt
-
-_PokemonTower5AfterBattleText4::
- text "I fell to evil"
- line "spirits despite"
- cont "my training!"
- done
-
-_PokemonTower5Text7::
- text "Entered purified,"
- line "protected zone!"
-
- para $52, "'s #MON"
- line "are fully healed!"
- done
diff --git a/text/maps/route_1.asm b/text/maps/route_1.asm
deleted file mode 100644
index adffd705..00000000
--- a/text/maps/route_1.asm
+++ /dev/null
@@ -1,49 +0,0 @@
-_Route1ViridianMartSampleText::
- text "Hi! I work at a"
- line "#MON MART."
-
- para "It's a convenient"
- line "shop, so please"
- cont "visit us in"
- cont "VIRIDIAN CITY."
-
- para "I know, I'll give"
- line "you a sample!"
- cont "Here you go!"
- prompt
-
-_Route1Text_1cae8::
- text $52, " got"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_Route1Text_1caee::
- text "We also carry"
- line "# BALLs for"
- cont "catching #MON!"
- done
-
-_Route1Text_1caf3::
- text "You have too much"
- line "stuff with you!"
- done
-
-_Route1Text2::
- text "See those ledges"
- line "along the road?"
-
- para "It's a bit scary,"
- line "but you can jump"
- cont "from them."
-
- para "You can get back"
- line "to PALLET TOWN"
- cont "quicker that way."
- done
-
-_Route1Text3::
- text "ROUTE 1"
- line "PALLET TOWN -"
- cont "VIRIDIAN CITY"
- done
diff --git a/text/maps/route_12_gate_upstairs.asm b/text/maps/route_12_gate_upstairs.asm
deleted file mode 100644
index a18e3d57..00000000
--- a/text/maps/route_12_gate_upstairs.asm
+++ /dev/null
@@ -1,42 +0,0 @@
-_TM39PreReceiveText::
- text "My #MON's"
- line "ashes are stored"
- cont "in #MON TOWER."
-
- para "You can have this"
- line "TM. I don't need"
- cont "it anymore..."
- prompt
-
-_ReceivedTM39Text::
- text $52, " received"
- line "TM39!@@"
-
-_TM39ExplanationText::
- text "TM39 is a move"
- line "called SWIFT."
-
- para "It's very accurate,"
- line "so use it during"
- cont "battles you can't"
- cont "afford to lose."
- done
-
-_TM39NoRoomText::
- text "You don't have"
- line "room for this."
- done
-
-_Route12GateUpstairsText_495b8::
- text "Looked into the"
- line "binoculars."
-
- para "A man fishing!"
- done
-
-_Route12GateUpstairsText_495c4::
- text "Looked into the"
- line "binoculars."
-
- para "It's #MON TOWER!"
- done
diff --git a/text/maps/route_12_house.asm b/text/maps/route_12_house.asm
deleted file mode 100644
index 4cb4beee..00000000
--- a/text/maps/route_12_house.asm
+++ /dev/null
@@ -1,60 +0,0 @@
-_Route12HouseText_564c0::
- text "I'm the FISHING"
- line "GURU's brother!"
-
- para "I simply Looove"
- line "fishing!"
-
- para "Do you like to"
- line "fish?"
- done
-
-_Route12HouseText_564c5::
- text "Grand! I like"
- line "your style!"
-
- para "Take this and"
- line "fish, young one!"
-
- para $52, " received"
- line "a @"
- TX_RAM wcf4b
- text "!@@"
-
-_Route12HouseText_564ca::
- db $0
- para "Fishing is a way"
- line "of life!"
-
- para "From the seas to"
- line "rivers, go out"
- cont "and land the big"
- cont "one!"
- done
-
-_Route12HouseText_564cf::
- text "Oh... That's so"
- line "disappointing..."
- done
-
-_Route12HouseText_564d4::
- text "Hello there,"
- line $52, "!"
-
- para "Use the SUPER ROD"
- line "in any water!"
- cont "You can catch"
- cont "different kinds"
- cont "of #MON."
-
- para "Try fishing"
- line "wherever you can!"
- done
-
-_Route12HouseText_564d9::
- text "Oh no!"
-
- para "I had a gift for"
- line "you, but you have"
- cont "no room for it!"
- done
diff --git a/text/maps/route_16_house.asm b/text/maps/route_16_house.asm
deleted file mode 100644
index 534cee08..00000000
--- a/text/maps/route_16_house.asm
+++ /dev/null
@@ -1,31 +0,0 @@
-_Route16HouseText3::
- text "Oh, you found my"
- line "secret retreat!"
-
- para "Please don't tell"
- line "anyone I'm here."
- cont "I'll make it up"
- cont "to you with this!"
- prompt
-
-_ReceivedHM02Text::
- text $52, " received"
- line "HM02!@@"
-
-_HM02ExplanationText::
- text "HM02 is FLY."
- line "It will take you"
- cont "back to any town."
-
- para "Put it to good"
- line "use!"
- done
-
-_HM02NoRoomText::
- text "You don't have any"
- line "room for this."
- done
-
-_Route16HouseText_1e652::
- text "FEAROW: Kyueen!"
- done
diff --git a/text/maps/route_22.asm b/text/maps/route_22.asm
deleted file mode 100644
index 342d5015..00000000
--- a/text/maps/route_22.asm
+++ /dev/null
@@ -1,104 +0,0 @@
-_Route22RivalDefeatedText1::
- text "Awww!"
- line "You just lucked"
- cont "out!"
- prompt
-
-_Route22Text_511bc::
- text $53, ": What?"
- line "Why do I have 2"
- cont "#MON?"
-
- para "You should catch"
- cont "some more too!"
- prompt
-
-_Route22RivalDefeatedText2::
- text "What!?"
-
- para "I was just"
- line "careless!"
- prompt
-
-_Route22Text_511d0::
- text $53, ": Hahaha!"
- line $52, "! That's"
- cont "your best? You're"
- cont "nowhere near as"
- cont "good as me, pal!"
-
- para "Go train some"
- line "more! You loser!"
- prompt
-
-_Route22RivalBeforeBattleText1::
- text $53, ": Hey!"
- line $52, "!"
-
- para "You're going to"
- line "#MON LEAGUE?"
-
- para "Forget it! You"
- line "probably don't"
- cont "have any BADGEs!"
-
- para "The guard won't"
- line "let you through!"
-
- para "By the way, did"
- line "your #MON"
- cont "get any stronger?"
- done
-
-_Route22RivalAfterBattleText1::
- text "I heard #MON"
- line "LEAGUE has many"
- cont "tough trainers!"
-
- para "I have to figure"
- line "out how to get"
- cont "past them!"
-
- para "You should quit"
- line "dawdling and get"
- cont "a move on!"
- done
-
-_Route22RivalBeforeBattleText2::
- text $53, ": What?"
- line $52, "! What a"
- cont "surprise to see"
- cont "you here!"
-
- para "So you're going to"
- line "#MON LEAGUE?"
-
- para "You collected all"
- line "the BADGEs too?"
- cont "That's cool!"
-
- para "Then I'll whip"
- line "you, <PLAYER>, as"
- cont "a warmup for"
- cont "#MON LEAGUE!"
-
- para "Come on!"
- done
-
-_Route22RivalAfterBattleText2::
- text "That loosened me"
- line "up! I'm ready for"
- cont "#MON LEAGUE!"
-
- para $52, ", you need"
- line "more practice!"
-
- para "But hey, you know"
- line "that! I'm out of"
- cont "here. Smell ya!"
- done
-
-_Route22FrontGateText::
- text "#MON LEAGUE"
- line "Front Gate"
- done
diff --git a/text/maps/route_23.asm b/text/maps/route_23.asm
deleted file mode 100644
index 2ecb020e..00000000
--- a/text/maps/route_23.asm
+++ /dev/null
@@ -1,38 +0,0 @@
-_VictoryRoadGuardText1::
- text "You can pass here"
- line "only if you have"
- cont "the @"
- TX_RAM wcd6d
- text "!"
-
- para "You don't have the"
- line "@"
- TX_RAM wcd6d
- text " yet!"
-
- para "You have to have"
- line "it to get to"
- cont "#MON LEAGUE!@@"
-
-_VictoryRoadGuardText2::
- text "You can pass here"
- line "only if you have"
- cont "the @"
- TX_RAM wcd6d
- text "!"
-
- para "Oh! That is the"
- line "@"
- TX_RAM wcd6d
- text "!@@"
-
-_VictoryRoadGuardText_513a3::
- db $0
- para "OK then! Please,"
- line "go right ahead!"
- done
-
-_Route23Text8::
- text "VICTORY ROAD GATE"
- line "- #MON LEAGUE"
- done
diff --git a/text/maps/route_24.asm b/text/maps/route_24.asm
deleted file mode 100644
index 475a2602..00000000
--- a/text/maps/route_24.asm
+++ /dev/null
@@ -1,183 +0,0 @@
-_Route24Text_51510::
- text "Congratulations!"
- line "You beat our 5"
- cont "contest trainers!@@"
-
-_Route24Text_51515::
- text ""
- para "You just earned a"
- line "fabulous prize!"
- prompt
-
-_Route24Text_5151a::
- text "<PLAYER> received"
- line "a @"
- TX_RAM wcf4b
- text "!@@"
-
-_Route24Text_51521::
- text "You don't have"
- line "any room!"
- done
-
-_Route24Text_51526::
- text "By the way, would"
- line "you like to join"
- cont "TEAM ROCKET?"
-
- para "We're a group"
- line "dedicated to evil"
- cont "using #MON!"
-
- para "Want to join?"
-
- para "Are you sure?"
-
- para "Come on, join us!"
-
- para "I'm telling you"
- line "to join!"
-
- para "OK, you need"
- line "convincing!"
-
- para "I'll make you an"
- line "offer you can't"
- cont "refuse!"
- done
-
-_Route24Text_5152b::
- text "Arrgh!"
- line "You are good!"
- prompt
-
-_Route24Text_51530::
- text "With your ability,"
- line "you could become"
- cont "a top leader in"
- cont "TEAM ROCKET!"
- done
-
-_Route24BattleText1::
- text "I saw your feat"
- line "from the grass!"
- done
-
-_Route24EndBattleText1::
- text "I"
- line "thought not!"
- prompt
-
-_Route24AfterBattleText1::
- text "I hid because the"
- line "people on the"
- cont "bridge scared me!"
- done
-
-_Route24BattleText2::
- text "OK! I'm No. 5!"
- line "I'll stomp you!"
- done
-
-_Route24EndBattleText2::
- text "Whoa!"
- line "Too much!"
- prompt
-
-_Route24AfterBattleText2::
- text "I did my best, I"
- line "have no regrets!"
- done
-
-_Route24BattleText3::
- text "I'm No. 4!"
- line "Getting tired?"
- done
-
-_Route24EndBattleText3::
- text "I lost"
- line "too!"
- prompt
-
-_Route24AfterBattleText3::
- text "I did my best, so"
- line "I've no regrets!"
- done
-
-_Route24BattleText4::
- text "Here's No. 3!"
- line "I won't be easy!"
- done
-
-_Route24EndBattleText4::
- text "Ow!"
- line "Stomped flat!"
- prompt
-
-_Route24AfterBattleText4::
- text "I did my best, I"
- line "have no regrets!"
- done
-
-_Route24BattleText5::
- text "I'm second!"
- line "Now it's serious!"
- done
-
-_Route24EndBattleText5::
- text "How could I"
- line "lose?"
- prompt
-
-_Route24AfterBattleText5::
- text "I did my best, I"
- line "have no regrets!"
- done
-
-_Route24BattleText6::
- text "This is NUGGET"
- line "BRIDGE! Beat us 5"
- cont "trainers and win"
- cont "a fabulous prize!"
-
- para "Think you got"
- line "what it takes?"
- done
-
-_Route24EndBattleText6::
- text "Whoo!"
- line "Good stuff!"
- prompt
-
-_Route24AfterBattleText6::
- text "I did my best, I"
- line "have no regrets!"
- done
-
-_Route24DamianText1::
- text "I'm not good at"
- line "raising #MON."
-
- para "I should release"
- line "my CHARMANDER"
- cont "because I haven't"
- cont "raised it well..."
-
- para "If you promise me"
- line "you'll care for"
- cont "it, it's yours."
- done
-
-_Route24DamianText2::
- text "Take good care of"
- line "my CHARMANDER!@@"
-
-_Route24DamianText3::
- text "Oh... I'd better"
- line "release it then."
- done
-
-_Route24DamianText4::
- text "How's CHARMANDER"
- line "doing?"
- done
diff --git a/text/maps/safari_zone_entrance.asm b/text/maps/safari_zone_entrance.asm
deleted file mode 100644
index 065de6a9..00000000
--- a/text/maps/safari_zone_entrance.asm
+++ /dev/null
@@ -1,140 +0,0 @@
-_SafariZoneEntranceText1::
- text "Welcome to the"
- line "SAFARI ZONE!"
- done
-
-SafariZoneEntranceText_9e814::
- text "Leaving early?@@"
-
-_SafariZoneEntranceText_753bb::
- text "Please return any"
- line "SAFARI BALLs you"
- cont "have left."
- done
-
-_SafariZoneEntranceText_753c0::
- text "Good Luck!"
- done
-
-_SafariZoneEntranceText_753c5::
- text "Did you get a"
- line "good haul?"
- cont "Come again!"
- done
-
-SafariZoneEntranceText_9e6e4::
- text "For just ¥500,"
- line "you can catch all"
- cont "the #MON you"
- cont "want in the park!"
-
- para "Would you like to"
- line "join the hunt?@@"
-
-SafariZoneEntranceText_9e747::
- text "That'll be ¥@"
- TX_BCD wPriceTemp, $c3
- text ","
- line "please!"
-
- para "We only use a"
- line "special # BALL"
- cont "here."
-
- para $52, " received"
- line "30 SAFARI BALLs!@@"
-
-_SafariZoneEntranceText_75360::
- db $0
- para "We'll call you on"
- line "the PA when you"
- cont "run out of time"
- cont "or SAFARI BALLs!"
- done
-
-_SafariZoneEntranceText_75365::
- text "OK! Please come"
- line "again!"
- done
-
-_SafariZoneEntranceText_7536a::
- text "Oops! Not enough"
- line "money!"
- done
-
-_SafariZoneEntranceText_753e6::
- text "Hi! Is it your"
- line "first time here?"
- done
-
-_SafariZoneEntranceText_753eb::
- text "SAFARI ZONE has 4"
- line "zones in it."
-
- para "Each zone has"
- line "different kinds"
- cont "of #MON. Use"
- cont "SAFARI BALLs to"
- cont "catch them!"
-
- para "When you run out"
- line "of time or SAFARI"
- cont "BALLs, it's game"
- cont "over for you!"
-
- para "Before you go,"
- line "open an unused"
- cont "#MON BOX so"
- cont "there's room for"
- cont "new #MON!"
- done
-
-_SafariZoneEntranceText_753f0::
- text "Sorry, you're a"
- line "regular here!"
- done
-
-_SafariZoneLowCostText1::
- db 0
- para "Oh, all right, pay"
- line "me what you have."
- prompt
-
-_SafariZoneLowCostText2::
- text "But, I can't give"
- line "you all 30 BALLs."
- done
-
-_SafariZoneLowCostText3::
- db 0
- para "You're persistent,"
- line "aren't you?"
-
- para "OK, you can go in"
- line "for free, but"
- cont "just this once!@@"
-
-_SafariZoneLowCostText4::
- db 0
- done
-
-_SafariZoneLowCostText5::
- text "I'm sorry, but you"
- line "have to pay to"
- cont "enter."
- done
-
-_SafariZoneLowCostText6::
- text "You can't enter"
- line "without paying!"
- done
-
-_SafariZoneLowCostText7::
- text "I said, no money,"
- line "no entry!"
- done
-
-_SafariZoneLowCostText8::
- text "Read my lips, NO!"
- line "Get it?"
- done
diff --git a/text/maps/safari_zone_secret_house.asm b/text/maps/safari_zone_secret_house.asm
deleted file mode 100644
index 1bbe89fd..00000000
--- a/text/maps/safari_zone_secret_house.asm
+++ /dev/null
@@ -1,44 +0,0 @@
-_SecretHouseText_4a350::
- text "Ah! Finally!"
-
- para "You're the first"
- line "person to reach"
- cont "the SECRET HOUSE!"
-
- para "I was getting"
- line "worried that no"
- cont "one would win our"
- cont "campaign prize."
-
- para "Congratulations!"
- line "You have won!"
- prompt
-
-_ReceivedHM03Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_HM03ExplanationText::
- text "HM03 is SURF!"
-
- para "#MON will be"
- line "able to ferry you"
- cont "across water!"
-
- para "And, this HM isn't"
- line "disposable! You"
- cont "can use it over"
- cont "and over!"
-
- para "You're super lucky"
- line "for winning this"
- cont "fabulous prize!"
- done
-
-_HM03NoRoomText::
- text "You don't have"
- line "room for this"
- cont "fabulous prize!"
- done
diff --git a/text/maps/saffron_gates.asm b/text/maps/saffron_gates.asm
deleted file mode 100644
index 0fd11d88..00000000
--- a/text/maps/saffron_gates.asm
+++ /dev/null
@@ -1,36 +0,0 @@
-_SaffronGateText_1dfe7::
- text "I'm on guard duty."
- line "Gee, I'm thirsty,"
- cont "though!"
-
- para "Oh, wait there,"
- line "the road's closed."
- done
-
-_SaffronGateText_8aaa9::
- text "Whoa, boy!"
- line "I'm parched!"
- cont "..."
- cont "Huh? I can have"
- cont "this drink?"
- cont "Gee, thanks!@@"
-
-_SaffronGateText_1dff1::
- db $0
- para "..."
- line "Glug, glug..."
- cont "..."
- cont "Gulp..."
- cont "If you want to go"
- cont "to SAFFRON CITY..."
- cont "..."
- cont "You can go on"
- cont "through. I'll"
- cont "share this with"
- cont "the other guards!"
- done
-
-_SaffronGateText_1dff6::
- text "Hi, thanks for"
- line "the cool drinks!"
- done
diff --git a/text/maps/saffron_gym.asm b/text/maps/saffron_gym.asm
deleted file mode 100644
index 23cc211b..00000000
--- a/text/maps/saffron_gym.asm
+++ /dev/null
@@ -1,235 +0,0 @@
-_SaffronGymText_5d162::
- text "I had a vision of"
- line "your arrival!"
-
- para "I have had psychic"
- line "powers since I"
- cont "was a child."
-
- para "I first learned"
- line "to bend spoons"
- cont "with my mind."
-
- para "I dislike fight-"
- line "ing, but if you"
- cont "wish, I will show"
- cont "you my powers!"
- done
-
-_SaffronGymText_5d167::
- text "I'm"
- line "shocked!"
- cont "But, a loss is a"
- cont "loss."
-
- para "I admit I didn't"
- line "work hard enough"
- cont "to win!"
-
- para "You earned the"
- line "MARSHBADGE!@@"
-
-_SaffronGymText_5d16e::
- text "Everyone has"
- line "psychic power!"
- cont "People just don't"
- cont "realize it!"
- done
-
-_SaffronGymText_5d173::
- text "The MARSHBADGE"
- line "makes #MON up"
- cont "to L70 obey you!"
-
- para "Stronger #MON"
- line "will become wild,"
- cont "ignoring your"
- cont "orders in battle!"
-
- para "Just don't raise"
- line "your #MON too"
- cont "much!"
-
- para "Wait, please take"
- line "this TM with you!"
- done
-
-ReceivedTM46Text::
- text $52, " received"
- line "TM46!@@"
-
-_TM46ExplanationText::
- db $0
- para "TM46 is PSYWAVE!"
- line "It uses powerful"
- cont "psychic waves to"
- cont "inflict damage!"
- done
-
-_TM46NoRoomText::
- text "Your pack is full"
- line "of other items!"
- done
-
-_SaffronGymText_5d1e6::
- text "Yo! Champ in"
- line "making!"
-
- para "SABRINA's #MON"
- line "use psychic power"
- cont "instead of force!"
-
- para "Fighting #MON"
- line "are weak against"
- cont "psychic #MON!"
-
- para "They get creamed"
- line "before they can"
- cont "even aim a punch!"
- done
-
-_SaffronGymText_5d1eb::
- text "Psychic power,"
- line "huh?"
-
- para "If I had that,"
- line "I'd make a bundle"
- cont "at the slots!"
- done
-
-_SaffronGymBattleText1::
- text "SABRINA is younger"
- line "than I, but I"
- cont "respect her!"
- done
-
-_SaffronGymEndBattleText1::
- text "Not"
- line "good enough!"
- prompt
-
-_SaffronGymAfterBattleText1::
- text "In a battle of"
- line "equals, the one"
- cont "with the stronger"
- cont "will wins!"
-
- para "If you wish"
- line "to beat SABRINA,"
- cont "focus on winning!"
- done
-
-_SaffronGymBattleText2::
- text "Does our unseen"
- line "power scare you?"
- done
-
-_SaffronGymEndBattleText2::
- text "I never"
- line "foresaw this!"
- prompt
-
-_SaffronGymAfterBattleText2::
- text "Psychic #MON"
- line "fear only bugs!"
- done
-
-_SaffronGymBattleText3::
- text "#MON take on"
- line "the appearance of"
- cont "their trainers."
-
- para "Your #MON must"
- line "be tough, then!"
- done
-
-_SaffronGymEndBattleText3::
- text "I knew"
- line "it!"
- prompt
-
-_SaffronGymAfterBattleText3::
- text "I must teach"
- line "better techniques"
- cont "to my #MON!"
- done
-
-_SaffronGymBattleText4::
- text "You know that"
- line "power alone isn't"
- cont "enough!"
- done
-
-_SaffronGymEndBattleText4::
- text "I don't"
- line "believe this!"
- prompt
-
-_SaffronGymAfterBattleText4::
- text "SABRINA just wiped"
- line "out the KARATE"
- cont "MASTER next door!"
- done
-
-_SaffronGymBattleText5::
- text "You and I, our"
- line "#MON shall"
- cont "fight!"
- done
-
-_SaffronGymEndBattleText5::
- text "I lost"
- line "after all!"
- prompt
-
-_SaffronGymAfterBattleText5::
- text "I knew that this"
- line "was going to take"
- cont "place."
- done
-
-_SaffronGymBattleText6::
- text "SABRINA is young,"
- line "but she's also"
- cont "our LEADER!"
-
- para "You won't reach"
- line "her easily!"
- done
-
-_SaffronGymEndBattleText6::
- text "I lost"
- line "my concentration!"
- prompt
-
-_SaffronGymAfterBattleText6::
- text "There used to be"
- line "2 #MON GYMs in"
- cont "SAFFRON."
-
- para "The FIGHTING DOJO"
- line "next door lost"
- cont "its GYM status"
- cont "when we went and"
- cont "creamed them!"
- done
-
-_SaffronGymBattleText7::
- text "SAFFRON #MON"
- line "GYM is famous for"
- cont "its psychics!"
-
- para "You want to see"
- line "SABRINA!"
- cont "I can tell!"
- done
-
-_SaffronGymEndBattleText7::
- text "Arrrgh!"
- prompt
-
-_SaffronGymAfterBattleText7::
- text "That's right! I"
- line "used telepathy to"
- cont "read your mind!"
- done
diff --git a/text/maps/silph_co_11f.asm b/text/maps/silph_co_11f.asm
deleted file mode 100644
index 2fb84f17..00000000
--- a/text/maps/silph_co_11f.asm
+++ /dev/null
@@ -1,114 +0,0 @@
-_SilphCoPresidentText::
- text "PRESIDENT: Thank"
- line "you for saving"
- cont "SILPH!"
-
- para "I will never"
- line "forget you saved"
- cont "us in our moment"
- cont "of peril!"
-
- para "I have to thank"
- line "you in some way!"
-
- para "Because I am rich,"
- line "I can give you"
- cont "anything!"
-
- para "Here, maybe this"
- line "will do!"
- prompt
-
-_ReceivedSilphCoMasterBallText::
- text $52, " got a"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_SilphCo10Text_6231c::
- text "PRESIDENT: You"
- line "can't buy that"
- cont "anywhere!"
-
- para "It's our secret"
- line "prototype MASTER"
- cont "BALL!"
-
- para "It will catch any"
- line "#MON without"
- cont "fail!"
-
- para "You should be"
- line "quiet about using"
- cont "it, though."
- done
-
-_SilphCoMasterBallNoRoomText::
- text "You have no"
- line "room for this."
- done
-
-_SilphCo11Text2::
- text "SECRETARY: Thank"
- line "you for rescuing"
- cont "all of us!"
-
- para "We admire your"
- line "courage."
- done
-
-_SilphCo11Text3::
- text "Ah, <PLAYER>!"
- line "So we meet again!"
-
- para "The PRESIDENT and"
- line "I are discussing"
- cont "a vital business"
- cont "proposition."
-
- para "Keep your nose"
- line "out of grown-up"
- cont "matters..."
-
- para "or, experience a"
- line "world of pain!"
- done
-
-_SilphCo10Text_62330::
- text "Arrgh!!"
- line "I lost again!?"
- prompt
-
-_SilphCo10Text_62335::
- text "Blast it all!"
- line "You ruined our"
- cont "plans for SILPH!"
-
- para "But, TEAM ROCKET"
- line "will never fall!"
-
- para $52, "! Never"
- line "forget that all"
- cont "#MON exist"
- cont "for TEAM ROCKET!"
-
- para "I must go, but I"
- line "shall return!"
- done
-
-_SilphCo11BattleText2::
- text "Halt! Do you have"
- line "an appointment"
- cont "with my BOSS?"
- done
-
-_SilphCo11EndBattleText2::
- text "Gaah!"
- line "Demolished!"
- prompt
-
-_SilphCo11AfterBattleText2::
- text "Watch your step,"
- line "my BOSS likes his"
- cont "#MON tough!"
- done
diff --git a/text/maps/silph_co_2f.asm b/text/maps/silph_co_2f.asm
deleted file mode 100644
index 5ef349d5..00000000
--- a/text/maps/silph_co_2f.asm
+++ /dev/null
@@ -1,96 +0,0 @@
-_SilphCo2Text_59ded::
- text "Eeek!"
- line "No! Stop! Help!"
-
- para "Oh, you're not"
- line "with TEAM ROCKET."
- cont "I thought..."
- cont "I'm sorry. Here,"
- cont "please take this!"
- prompt
-
-_ReceivedTM36Text::
- text $52, " got"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM36ExplanationText::
- text "TM36 is"
- line "SELFDESTRUCT!"
-
- para "It's powerful, but"
- line "the #MON that"
- cont "uses it faints!"
- cont "Be careful."
- done
-
-_TM36NoRoomText::
- text "You don't have any"
- line "room for this."
- done
-
-_SilphCo2BattleText1::
- text "Help! I'm a SILPH"
- line "employee."
- done
-
-_SilphCo2EndBattleText1::
- text "How"
- line "did you know I"
- cont "was a ROCKET?"
- prompt
-
-_SilphCo2AfterBattleText1::
- text "I work for both"
- line "SILPH and TEAM"
- cont "ROCKET!"
- done
-
-_SilphCo2BattleText2::
- text "It's off limits"
- line "here! Go home!"
- done
-
-_SilphCo2EndBattleText2::
- text "You're"
- line "good."
- prompt
-
-_SilphCo2AfterBattleText2::
- text "Can you solve the"
- line "maze in here?"
- done
-
-_SilphCo2BattleText3::
- text "No kids are"
- line "allowed in here!"
- done
-
-_SilphCo2EndBattleText3::
- text "Tough!"
- prompt
-
-_SilphCo2AfterBattleText3::
- text "Diamond-shaped"
- line "tiles are"
- cont "teleport blocks!"
-
- para "They're hi-tech"
- line "transporters!"
- done
-
-_SilphCo2BattleText4::
- text "Hey kid! What are"
- line "you doing here?"
- done
-
-_SilphCo2EndBattleText4::
- text "I goofed!"
- prompt
-
-_SilphCo2AfterBattleText4::
- text "SILPH CO. will"
- line "be merged with"
- cont "TEAM ROCKET!"
- done
diff --git a/text/maps/silph_co_3f.asm b/text/maps/silph_co_3f.asm
deleted file mode 100644
index a514d3ef..00000000
--- a/text/maps/silph_co_3f.asm
+++ /dev/null
@@ -1,46 +0,0 @@
-_SilphCo3Text_59ff9::
- text "I work for SILPH."
- line "What should I do?"
- done
-
-_SilphCo3Text_59ffe::
- text $52, "! You and"
- line "your #MON"
- cont "saved us!"
- done
-
-_SilphCo3BattleText1::
- text "Quit messing with"
- line "us, kid!"
- done
-
-_SilphCo3EndBattleText1::
- text "I give"
- line "up!"
- prompt
-
-_SilphCo3AfterBattleText1::
- text "A hint? You can"
- line "open doors with a"
- cont "CARD KEY!"
- done
-
-_SilphCo3BattleText2::
- text "I support TEAM"
- line "ROCKET more than"
- cont "I support SILPH!"
- done
-
-_SilphCo3EndBattleText2::
- text "You"
- line "really got me!"
- prompt
-
-_SilphCo3AfterBattleText2::
- text "Humph..."
-
- para "TEAM ROCKET said"
- line "that if I helped"
- cont "them, they'd let"
- cont "me study #MON!"
- done
diff --git a/text/maps/silph_co_7f.asm b/text/maps/silph_co_7f.asm
deleted file mode 100644
index 0373355a..00000000
--- a/text/maps/silph_co_7f.asm
+++ /dev/null
@@ -1,209 +0,0 @@
-_MeetLaprasGuyText::
- text "Oh! Hi! You're"
- line "not a ROCKET! You"
- cont "came to save us?"
- cont "Why, thank you!"
-
- para "I want you to"
- line "have this #MON"
- cont "for saving us."
- prompt
-
-_HeresYourLaprasText::
- text "It's LAPRAS. It's"
- line "very intelligent."
-
- para "We kept it in our"
- line "lab, but it will"
- cont "be much better"
- cont "off with you!"
-
- para "I think you will"
- line "be a good trainer"
- cont "for LAPRAS!"
-
- para "It's a good"
- line "swimmer. It'll"
- cont "give you a lift!"
- done
-
-_LaprasGuyText::
- text "TEAM ROCKET's"
- line "BOSS went to the"
- cont "boardroom! Is our"
- cont "PRESIDENT OK?"
- done
-
-_LaprasGuySavedText::
- text "Saved at last!"
- line "Thank you!"
- done
-
-_SilphCo7Text_51e00::
- text "TEAM ROCKET was"
- line "after the MASTER"
- cont "BALL which will"
- cont "catch any #MON!"
- done
-
-_CanceledMasterBallText::
- text "We canceled the"
- line "MASTER BALL"
- cont "project because"
- cont "of TEAM ROCKET."
- done
-
-_SilphCo7Text_51e23::
- text "It would be bad"
- line "if TEAM ROCKET"
- cont "took over SILPH"
- cont "or our #MON!"
- done
-
-_SilphCo7Text_51e28::
- text "Wow! You chased"
- line "off TEAM ROCKET"
- cont "all by yourself?"
- done
-
-_SilphCo7Text_51e46::
- text "You! It's really"
- line "dangerous here!"
- cont "You came to save"
- cont "me? You can't!"
- done
-
-_SilphCo7Text_51e4b::
- text "Safe at last!"
- line "Oh thank you!"
- done
-
-_SilphCo7BattleText1::
- text "Aha! I smell a"
- line "little rat!"
- done
-
-_SilphCo7EndBattleText1::
- text "Lights"
- line "out!"
- prompt
-
-_SilphCo7AfterBattleText1::
- text "You won't find my"
- line "BOSS by just"
- cont "scurrying around!"
- done
-
-_SilphCo7BattleText2::
- text "Heheh!"
-
- para "You mistook me for"
- line "a SILPH worker?"
- done
-
-_SilphCo7EndBattleText2::
- text "I'm"
- line "done!"
- prompt
-
-_SilphCo7AfterBattleText2::
- text "Despite your age,"
- line "you are a skilled"
- cont "trainer!"
- done
-
-_SilphCo7BattleText3::
- text "I am one of the 4"
- line "ROCKET BROTHERS!"
- done
-
-_SilphCo7EndBattleText3::
- text "Aack!"
- line "Brothers, I lost!"
- prompt
-
-_SilphCo7AfterBattleText3::
- text "Doesn't matter."
- line "My brothers will"
- cont "repay the favor!"
- done
-
-_SilphCo7BattleText4::
- text "A child intruder?"
- line "That must be you!"
- done
-
-_SilphCo7EndBattleText4::
- text "Fine!"
- line "I lost!"
- prompt
-
-_SilphCo7AfterBattleText4::
- text "Go on home"
- line "before my BOSS"
- cont "gets ticked off!"
- done
-
-_SilphCo7Text_51ebe::
- text $53, ": What"
- line "kept you ", $52, "?"
- done
-
-_SilphCo7Text_51ec3::
- text $53, ": Hahaha!"
- line "I thought you'd"
- cont "turn up if I"
- cont "waited here!"
-
- para "I guess TEAM"
- line "ROCKET slowed you"
- cont "down! Not that I"
- cont "care!"
-
- para "I saw you in"
- line "SAFFRON, so I"
- cont "decided to see if"
- cont "you got better!"
- done
-
-_SilphCo7Text_51ec8::
- text "Oh-oh!"
- line "So, you are ready"
- cont "for BOSS ROCKET!"
- prompt
-
-_SilphCo7Text_51ecd::
- text $53, ": How can"
- line "I put this?"
-
- para "You're not good"
- line "enough to play"
- cont "with us big boys!"
- prompt
-
-_SilphCo7Text_51ed2::
- text "Well, ", $52, "!"
-
- para "I'm moving on up"
- line "and ahead!"
-
- para "By checking my"
- line "#DEX, I'm"
- cont "starting to see"
- cont "what's strong and"
- cont "how they evolve!"
-
- para "I'm going to the"
- line "#MON LEAGUE"
- cont "to boot out the"
- cont "ELITE FOUR!"
-
- para "I'll become the"
- line "world's most"
- cont "powerful trainer!"
-
- para $52, ", well"
- line "good luck to you!"
- cont "Don't sweat it!"
- cont "Smell ya!"
- done
diff --git a/text/maps/ss_anne_2.asm b/text/maps/ss_anne_2.asm
deleted file mode 100644
index ba231ac5..00000000
--- a/text/maps/ss_anne_2.asm
+++ /dev/null
@@ -1,63 +0,0 @@
-_SSAnne2Text1::
- text "This ship, she is"
- line "a luxury liner"
- cont "for trainers!"
-
- para "At every port, we"
- line "hold parties with"
- cont "invited trainers!"
- done
-
-_SSAnneRivalBeforeBattleText::
- text $53, ": Bonjour!"
- line $52, "!"
-
- para "Imagine seeing"
- line "you here!"
-
- para $52, ", were you"
- line "really invited?"
-
- para "So how's your"
- line "#DEX coming?"
-
- para "I already caught"
- line "40 kinds, pal!"
-
- para "Different kinds"
- line "are everywhere!"
-
- para "Crawl around in"
- line "grassy areas!"
- done
-
-_SSAnneRivalDefeatedText::
- text "Humph!"
-
- para "At least you're"
- line "raising your"
- cont "#MON!"
- prompt
-
-_SSAnneRivalWonText::
- text $52, "! What are"
- line "you, seasick?"
-
- para "You should shape"
- line "up, pal!"
- prompt
-
-_SSAnneRivalCaptainText::
- text $53, ": I heard"
- line "there was a CUT"
- cont "master on board."
-
- para "But, he was just a"
- line "seasick, old man!"
-
- para "But, CUT itself is"
- line "really useful!"
-
- para "You should go see"
- line "him! Smell ya!"
- done
diff --git a/text/maps/ss_anne_7.asm b/text/maps/ss_anne_7.asm
deleted file mode 100644
index a046e600..00000000
--- a/text/maps/ss_anne_7.asm
+++ /dev/null
@@ -1,62 +0,0 @@
-_SSAnne7RubText::
- text "CAPTAIN: Ooargh..."
- line "I feel hideous..."
- cont "Urrp! Seasick..."
-
- para $52, " rubbed"
- line "the CAPTAIN's"
- cont "back!"
-
- para "Rub-rub..."
- line "Rub-rub...@@"
-
-_ReceivingHM01Text::
- text "CAPTAIN: Whew!"
- line "Thank you! I"
- cont "feel much better!"
-
- para "You want to see"
- line "my CUT technique?"
-
- para "I could show you"
- line "if I wasn't ill..."
-
- para "I know! You can"
- line "have this!"
-
- para "Teach it to your"
- line "#MON and you"
- cont "can see it CUT"
- cont "anytime!"
- prompt
-
-_ReceivedHM01Text::
- text $52, " got"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_SSAnne7Text_61932::
- text "CAPTAIN: Whew!"
-
- para "Now that I'm not"
- line "sick anymore, I"
- cont "guess it's time."
- done
-
-_HM01NoRoomText::
- text "Oh no! You have"
- line "no room for this!"
- done
-
-_SSAnne7Text2::
- text "Yuck! Shouldn't"
- line "have looked!"
- done
-
-_SSAnne7Text3::
- text "How to Conquer"
- line "Seasickness..."
- cont "The CAPTAIN's"
- cont "reading this!"
- done
diff --git a/text/maps/vermilion_fishing_house.asm b/text/maps/vermilion_fishing_house.asm
deleted file mode 100644
index 0fa28cae..00000000
--- a/text/maps/vermilion_fishing_house.asm
+++ /dev/null
@@ -1,53 +0,0 @@
-_VermilionHouse2Text_560b1::
- text "I'm the FISHING"
- line "GURU!"
-
- para "I simply Looove"
- line "fishing!"
-
- para "Do you like to"
- line "fish?"
- done
-
-_VermilionHouse2Text_560b6::
- text "Grand! I like"
- line "your style!"
-
- para "Take this and"
- line "fish, young one!"
-
- para $52, " received"
- line "an @"
- TX_RAM wcf4b
- text "!@@"
-
-_VermilionHouse2Text_560bb::
- db $0
- para "Fishing is a way"
- line "of life!"
-
- para "From the seas to"
- line "rivers, go out"
- cont "and land the big"
- cont "one, young one!"
- done
-
-_VermilionHouse2Text_560c0::
- text "Oh... That's so"
- line "disappointing..."
- done
-
-_VermilionHouse2Text_560c5::
- text "Hello there,"
- line $52, "!"
-
- para "How are the fish"
- line "biting?"
- done
-
-_VermilionHouse2Text_560ca::
- text "Oh no!"
-
- para "You have no room"
- line "for my gift!"
- done
diff --git a/text/maps/vermilion_gym.asm b/text/maps/vermilion_gym.asm
deleted file mode 100644
index a7cce733..00000000
--- a/text/maps/vermilion_gym.asm
+++ /dev/null
@@ -1,165 +0,0 @@
-_VermilionGymText_5cb6d::
- text "Ten-hut! Welcome"
- line "to VERMILION GYM!"
-
- para "Will you look at"
- line "that, a pint-size"
- cont "challenger!"
-
- para "Hahaha! You've got"
- line "big and brassy"
- cont "nerves to take me"
- cont "on with your puny"
- cont "power!"
-
- para "A #MON battle"
- line "is war! I'll show"
- cont "you, civilian!"
-
- para "I'll shock you"
- line "into surrender!"
- done
-
-_VermilionGymText_5cb72::
- text "A little word of"
- line "advice, kid!"
-
- para "Electricity is"
- line "sure powerful!"
-
- para "But, it's useless"
- line "against ground-"
- cont "type #MON!"
- done
-
-_VermilionGymText_5cb77::
- text "The THUNDERBADGE"
- line "cranks up your"
- cont "#MON's SPEED!"
-
- para "It also lets your"
- line "#MON FLY any-"
- cont "time, kid!"
-
- para "You're special,"
- line "kid! Take this!"
- done
-
-_ReceivedTM24Text::
- text $52, " received "
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_TM24ExplanationText::
- db $0
- para "TM24 contains"
- line "THUNDERBOLT!"
-
- para "Teach it to an"
- line "electric #MON!"
- done
-
-_TM24NoRoomText::
- text "Yo kid, make room"
- line "in your pack!"
- done
-
-_ReceivedThunderbadgeText::
- text "Whoa!"
-
- para "You're the real"
- line "deal, kid!"
-
- para "Fine then, take"
- line "the THUNDERBADGE!"
- prompt
-
-_VermilionGymBattleText1::
- text "When I was in the"
- line "Army, LT.SURGE"
- cont "was my strict CO!"
- done
-
-_VermilionGymEndBattleText1::
- text "Stop!"
- line "You're very good!"
- prompt
-
-_VermilionGymAfterBattleText1::
- text "The door won't"
- line "open?"
-
- para "LT.SURGE always"
- line "was cautious!"
- done
-
-_VermilionGymBattleText2::
- text "I'm a lightweight,"
- line "but I'm good with"
- cont "electricity!"
- done
-
-_VermilionGymEndBattleText2::
- text "Fried!"
- prompt
-
-_VermilionGymAfterBattleText2::
- text "OK, I'll talk!"
-
- para "LT.SURGE said he"
- line "hid door switches"
- cont "inside something!"
- done
-
-_VermilionGymBattleText3::
- text "This is no place"
- line "for kids!"
- done
-
-_VermilionGymEndBattleText3::
- text "Wow!"
- line "Surprised me!"
- prompt
-
-_VermilionGymAfterBattleText3::
- text "LT.SURGE set up"
- line "double locks!"
- cont "Here's a hint!"
-
- para "When you open the"
- line "1st lock, the 2nd"
- cont "lock is right"
- cont "next to it!"
- done
-
-_VermilionGymText_5cbf4::
- text "Yo! Champ in"
- line "making!"
-
- para "LT.SURGE has a"
- line "nickname. People"
- cont "refer to him as"
- cont "the Lightning"
- cont "American!"
-
- para "He's an expert on"
- line "electric #MON!"
-
- para "Birds and water"
- line "#MON are at"
- cont "risk! Beware of"
- cont "paralysis too!"
-
- para "LT.SURGE is very"
- line "cautious!"
-
- para "You'll have to"
- line "break a code to"
- cont "get to him!"
- done
-
-_VermilionGymText_5cbf9::
- text "Whew! That match"
- line "was electric!"
- done
diff --git a/text/maps/victory_road_2f.asm b/text/maps/victory_road_2f.asm
deleted file mode 100644
index cdcf6e36..00000000
--- a/text/maps/victory_road_2f.asm
+++ /dev/null
@@ -1,85 +0,0 @@
-_MoltresBattleText::
- text "Gyaoo!@@"
-
-_VictoryRoad2BattleText1::
- text "VICTORY ROAD is"
- line "the final test"
- cont "for trainers!"
- done
-
-_VictoryRoad2EndBattleText1::
- text "Aiyah!"
- prompt
-
-_VictoryRoad2AfterBattleText1::
- text "If you get stuck,"
- line "try moving some"
- cont "boulders around!"
- done
-
-_VictoryRoad2BattleText2::
- text "Ah, so you wish"
- line "to challenge the"
- cont "ELITE FOUR?"
- done
-
-_VictoryRoad2EndBattleText2::
- text "You"
- line "got me!"
- prompt
-
-_VictoryRoad2AfterBattleText2::
- text $53, " also came"
- line "through here!"
- done
-
-_VictoryRoad2BattleText3::
- text "Come on!"
- line "I'll whip you!"
- done
-
-_VictoryRoad2EndBattleText3::
- text "I got"
- line "whipped!"
- prompt
-
-_VictoryRoad2AfterBattleText3::
- text "You earned the"
- line "right to be on"
- cont "VICTORY ROAD!"
- done
-
-_VictoryRoad2BattleText4::
- text "If you can get"
- line "through here, you"
- cont "can go meet the"
- cont "ELITE FOUR!"
- done
-
-_VictoryRoad2EndBattleText4::
- text "No!"
- line "Unbelievable!"
- prompt
-
-_VictoryRoad2AfterBattleText4::
- text "I can beat you"
- line "when it comes to"
- cont "knowledge about"
- cont "#MON!"
- done
-
-_VictoryRoad2BattleText5::
- text "Is VICTORY ROAD"
- line "too tough?"
- done
-
-_VictoryRoad2EndBattleText5::
- text "Well"
- line "done!"
- prompt
-
-_VictoryRoad2AfterBattleText5::
- text "Many trainers give"
- line "up the challenge"
- cont "here."
- done
diff --git a/text/maps/viridian_city.asm b/text/maps/viridian_city.asm
deleted file mode 100644
index 46c01fc8..00000000
--- a/text/maps/viridian_city.asm
+++ /dev/null
@@ -1,194 +0,0 @@
-_ViridianCityText_19219::
- text "First, you need"
- line "to weaken the"
- cont "target #MON."
- done
-
-_ViridianCityText_1920a::
- text "Ahh, I've had my"
- line "coffee now and I"
- cont "feel great!"
-
- para "Sure, you can go"
- line "through!"
-
- para "I'm sorry I was"
- line "so rude to you!"
-
- para "I see you're using"
- line "a #DEX."
-
- para "I'll show you how"
- line "to catch #MON"
- cont "as my apology."
- done
-
-_OldManTextAfterBattle::
- text "That didn't work!"
- line "I must be losing"
- cont "my touch."
-
- para "I've run out of"
- line "# BALLs too."
-
- para "I have to get some"
- line "at #MON MART."
- done
-
-_ViridianCityText1::
- text "Those # BALLs"
- line "at your waist!"
- cont "You have #MON!"
-
- para "It's great that"
- line "you can carry and"
- cont "use #MON any-"
- cont "time, anywhere!"
- done
-
-_ViridianCityText_19122::
- text "This #MON GYM"
- line "is always closed."
-
- para "I wonder who the"
- line "LEADER is?"
- done
-
-_ViridianCityText_19127::
- text "VIRIDIAN GYM's"
- line "LEADER returned!"
- done
-
-_ViridianCityText_1914d::
- text "You want to know"
- line "about the 2 kinds"
- cont "of caterpillar"
- cont "#MON?"
- done
-
-_ViridianCityText_19152::
- text "Oh, OK then!"
- done
-
-_ViridianCityText_19157::
- text "CATERPIE has no"
- line "poison, but"
- cont "WEEDLE does."
-
- para "Watch out for its"
- line "POISON STING!"
- done
-
-_ViridianCityText_19175::
- text "Oh Grandpa! Don't"
- line "be so mean!"
- cont "He hasn't had his"
- cont "coffee yet."
- done
-
-_ViridianCityText_1917a::
- text "When I go shop in"
- line "PEWTER CITY, I"
- cont "have to take the"
- cont "winding trail in"
- cont "VIRIDIAN FOREST."
- done
-
-_ViridianCityText_19191::
- text "You can't go"
- line "through here!"
-
- para "This is private"
- line "property!"
- done
-
-_ViridianCityText_191ca::
- text "Yawn!"
- line "I must have dozed"
- cont "off in the sun."
-
- para "I had this dream"
- line "about a DROWZEE"
- cont "eating my dream."
- cont "What's this?"
- cont "Where did this TM"
- cont "come from?"
-
- para "This is spooky!"
- line "Here, you can"
- cont "have this TM."
- prompt
-
-_ReceivedTM42Text::
- text $52, " received"
- line "TM42!@@"
-
-_TM42Explanation::
- text "TM42 contains"
- line "DREAM EATER..."
- cont "...Snore..."
- done
-
-_TM42NoRoomText::
- text "You have too much"
- line "stuff already."
- done
-
-_OldManAgainText1::
- text "Hmm? You want me"
- line "to show you how"
- cont "to catch #MON"
- cont "again?"
- done
-
-_OldManAgainText2::
- text "Dandy! Watch what"
- line "I do closely now!"
- done
-
-_OldManAgainText3::
- text "Oh... I'm not good"
- line "enough for you."
- done
-
-_ViridianCityText8::
- text "VIRIDIAN CITY "
- line "The Eternally"
- cont "Green Paradise"
- done
-
-_ViridianCityText9::
- text "TRAINER TIPS"
-
- para "Catch #MON"
- line "and expand your"
- cont "collection!"
-
- para "The more you have,"
- line "the easier it is"
- cont "to fight!"
- done
-
-_ViridianCityText10::
- text "TRAINER TIPS"
-
- para "The battle moves"
- line "of #MON are"
- cont "limited by their"
- cont "POWER POINTs, PP."
-
- para "To replenish PP,"
- line "rest your tired"
- cont "#MON at a"
- cont "#MON CENTER!"
- done
-
-_ViridianCityText13::
- text "VIRIDIAN CITY"
- line "#MON GYM"
- done
-
-_ViridianCityText14::
- text "The GYM's doors"
- line "are locked..."
- done
diff --git a/text/maps/viridian_gym.asm b/text/maps/viridian_gym.asm
deleted file mode 100644
index 795447a5..00000000
--- a/text/maps/viridian_gym.asm
+++ /dev/null
@@ -1,236 +0,0 @@
-_ViridianGymText_74ace::
- text "Fwahahaha! This is"
- line "my hideout!"
-
- para "I planned to"
- line "resurrect TEAM"
- cont "ROCKET here!"
-
- para "But, you have"
- line "caught me again!"
- cont "So be it! This"
- cont "time, I'm not"
- cont "holding back!"
-
- para "Once more, you"
- line "shall face"
- cont "GIOVANNI, the"
- cont "greatest trainer!"
- done
-
-_ViridianGymText_74ad3::
- text "Ha!"
- line "That was a truly"
- cont "intense fight!"
- cont "You have won!"
- cont "As proof, here is"
- cont "the EARTHBADGE!@@"
-
-_ViridianGymText_74ad9::
- text "Having lost, I"
- line "cannot face my"
- cont "underlings!"
- cont "TEAM ROCKET is"
- cont "finished forever!"
-
- para "I will dedicate my"
- line "life to the study"
- cont "of #MON!"
-
- para "Let us meet again"
- line "someday!"
- cont "Farewell!@@"
-
-_ViridianGymText12::
- text "The EARTHBADGE"
- line "makes #MON of"
- cont "any level obey!"
-
- para "It is evidence of"
- line "your mastery as a"
- cont "#MON trainer!"
-
- para "With it, you can"
- line "enter the #MON"
- cont "LEAGUE!"
-
- para "It is my gift for"
- line "your #MON"
- cont "LEAGUE challenge!"
- done
-
-_ReceivedTM27Text::
- text $52, " received"
- line "TM27!@@"
-
-_TM27ExplanationText::
- db $0
- para "TM27 is FISSURE!"
- line "It will take out"
- cont "#MON with just"
- cont "one hit!"
-
- para "I made it when I"
- line "ran the GYM here,"
- cont "too long ago..."
- done
-
-_TM27NoRoomText::
- text "You do not have"
- line "space for this!"
- done
-
-_ViridianGymBattleText1::
- text "Heh! You must be"
- line "running out of"
- cont "steam by now!"
- done
-
-_ViridianGymEndBattleText1::
- text "I"
- line "ran out of gas!"
- prompt
-
-_ViridianGymAfterBattleText1::
- text "You need power to"
- line "keep up with our"
- cont "GYM LEADER!"
- done
-
-_ViridianGymBattleText2::
- text "Rrrroar! I'm"
- line "working myself"
- cont "into a rage!"
- done
-
-_ViridianGymEndBattleText2::
- text "Wargh!"
- prompt
-
-_ViridianGymAfterBattleText2::
- text "I'm still not"
- line "worthy!"
- done
-
-_ViridianGymBattleText3::
- text "#MON and I, we"
- line "make wonderful"
- cont "music together!"
- done
-
-_ViridianGymEndBattleText3::
- text "You are in"
- line "perfect harmony!"
- prompt
-
-_ViridianGymAfterBattleText3::
- text "Do you know the"
- line "identity of our"
- cont "GYM LEADER?"
- done
-
-_ViridianGymBattleText4::
- text "Karate is the"
- line "ultimate form of"
- cont "martial arts!"
- done
-
-_ViridianGymEndBattleText4::
- text "Atcho!"
- prompt
-
-_ViridianGymAfterBattleText4::
- text "If my #MON"
- line "were as good at"
- cont "Karate as I..."
- done
-
-_ViridianGymBattleText5::
- text "The truly talented"
- line "win with style!"
- done
-
-_ViridianGymEndBattleText5::
- text "I"
- line "lost my grip!"
- prompt
-
-_ViridianGymAfterBattleText5::
- text "The LEADER will"
- line "scold me!"
- done
-
-_ViridianGymBattleText6::
- text "I'm the KARATE"
- line "KING! Your fate"
- cont "rests with me!"
- done
-
-_ViridianGymEndBattleText6::
- text "Ayah!"
- prompt
-
-_ViridianGymAfterBattleText6::
- text "#MON LEAGUE?"
- line "You? Don't get"
- cont "cocky!"
- done
-
-_ViridianGymBattleText7::
- text "Your #MON will"
- line "cower at the"
- cont "crack of my whip!"
- done
-
-_ViridianGymEndBattleText7::
- text "Yowch!"
- line "Whiplash!"
- prompt
-
-_ViridianGymAfterBattleText7::
- text "Wait! I was just"
- line "careless!"
- done
-
-_ViridianGymBattleText8::
- text "VIRIDIAN GYM was"
- line "closed for a long"
- cont "time, but now our"
- cont "LEADER is back!"
- done
-
-_ViridianGymEndBattleText8::
- text "I"
- line "was beaten?"
- prompt
-
-_ViridianGymAfterBattleText8::
- text "You can go on to"
- line "#MON LEAGUE"
- cont "only by defeating"
- cont "our GYM LEADER!"
- done
-
-_ViridianGymText_74bd4::
- text "Yo! Champ in"
- line "making!"
-
- para "Even I don't know"
- line "VIRIDIAN LEADER's"
- cont "identity!"
-
- para "This will be the"
- line "toughest of all"
- cont "the GYM LEADERs!"
-
- para "I heard that the"
- line "trainers here"
- cont "like ground-type"
- cont "#MON!"
- done
-
-_ViridianGymText_74bd9::
- text "Blow me away!"
- line "GIOVANNI was the"
- cont "GYM LEADER here?"
- done
diff --git a/text/maps/viridian_mart.asm b/text/maps/viridian_mart.asm
deleted file mode 100644
index 5f4e147c..00000000
--- a/text/maps/viridian_mart.asm
+++ /dev/null
@@ -1,32 +0,0 @@
-_ViridianMartText1::
- text "Okay! Say hi to"
- line "PROF.OAK for me!"
- done
-
-_ViridianMartText4::
- text "Hey! You came from"
- line "PALLET TOWN?"
- done
-
-ViridianMartParcelQuestText::
- text "You know PROF."
- line "OAK, right?"
-
- para "His order came in."
- line "Will you take it"
- cont "to him?"
-
- para $52, " got"
- line "OAK's PARCEL!@@"
-
-_ViridianMartText2::
- text "This shop sells a"
- line "lot of PARLYZ"
- cont "HEALs."
- done
-
-_ViridianMartText3::
- text "The shop finally"
- line "has some POTIONs"
- cont "in stock."
- done
diff --git a/text/maps/wardens_house.asm b/text/maps/wardens_house.asm
deleted file mode 100644
index d4da3781..00000000
--- a/text/maps/wardens_house.asm
+++ /dev/null
@@ -1,83 +0,0 @@
-_WardenGibberishText1::
- text "WARDEN: Hif fuff"
- line "hefifoo!"
-
- para "Ha lof ha feef ee"
- line "hafahi ho. Heff"
- cont "hee fwee!"
- done
-
-_WardenGibberishText2::
- text "Ah howhee ho hoo!"
- line "Eef ee hafahi ho!"
- done
-
-_WardenGibberishText3::
- text "Ha? He ohay heh"
- line "ha hoo ee haheh!"
- done
-
-_WardenTeethText1::
- text $52, " gave the"
- line "GOLD TEETH to the"
- cont "WARDEN!@@"
-
-_WardenTeethText2::
- db $0
- para "The WARDEN popped"
- line "in his teeth!"
- prompt
-
-_WardenThankYouText::
- text "WARDEN: Thanks,"
- line "kid! No one could"
- cont "understand a word"
- cont "that I said."
-
- para "I couldn't work"
- line "that way."
- cont "Let me give you"
- cont "something for"
- cont "your trouble."
- prompt
-
-_ReceivedHM04Text::
- text $52, " received"
- line "@"
- TX_RAM wcf4b
- text "!@@"
-
-_HM04ExplanationText::
- text "WARDEN: HM04"
- line "teaches STRENGTH!"
-
- para "It lets #MON"
- line "move boulders"
- cont "when you're out-"
- cont "side of battle."
-
- para "Oh yes, did you"
- line "find SECRET HOUSE"
- cont "in SAFARI ZONE?"
-
- para "If you do, you"
- line "win an HM!"
-
- para "I hear it's the"
- line "rare SURF HM."
- done
-
-_HM04NoRoomText::
- text "Your pack is"
- line "stuffed full!"
- done
-
-_FuchsiaHouse2Text_75176::
- text "#MON photos"
- line "and fossils."
- done
-
-_FuchsiaHouse2Text_7517b::
- text "Old #MON"
- line "merchandise."
- done
diff --git a/text/oakspeech.asm b/text/oakspeech.asm
index 5911092c..e006d16f 100644
--- a/text/oakspeech.asm
+++ b/text/oakspeech.asm
@@ -42,7 +42,7 @@ _IntroduceRivalText::
prompt
_OakSpeechText3::
- text $52,"!"
+ text "<PLAYER>!"
para "Your very own"
line "#MON legend is"
diff --git a/wram.asm b/wram.asm
index 543072ab..265936f0 100755
--- a/wram.asm
+++ b/wram.asm
@@ -1,4 +1,3 @@
-
INCLUDE "constants.asm"
flag_array: MACRO
@@ -41,6 +40,7 @@ ENDM
battle_struct: MACRO
\1Species:: db
\1HP:: dw
+\1PartyPos::
\1BoxLevel:: db
\1Status:: db
\1Type::
@@ -101,10 +101,10 @@ wChannelFlags1:: ; c02e
wChannelFlags2:: ; c036
ds 8
-wChannelDuties:: ; c03e
+wChannelDutyCycles:: ; c03e
ds 8
-wChannelDutyCycles:: ; c046
+wChannelDutyCyclePatterns:: ; c046
ds 8
wChannelVibratoDelayCounters:: ; c04e
@@ -126,28 +126,28 @@ wChannelVibratoDelayCounterReloadValues:: ; c06e
; delay of the beginning of the vibrato from the start of the note
ds 8
-wChannelPitchBendLengthModifiers:: ; c076
+wChannelPitchSlideLengthModifiers:: ; c076
ds 8
-wChannelPitchBendFrequencySteps:: ; c07e
+wChannelPitchSlideFrequencySteps:: ; c07e
ds 8
-wChannelPitchBendFrequencyStepsFractionalPart:: ; c086
+wChannelPitchSlideFrequencyStepsFractionalPart:: ; c086
ds 8
-wChannelPitchBendCurrentFrequencyFractionalPart:: ; c08e
+wChannelPitchSlideCurrentFrequencyFractionalPart:: ; c08e
ds 8
-wChannelPitchBendCurrentFrequencyHighBytes:: ; c096
+wChannelPitchSlideCurrentFrequencyHighBytes:: ; c096
ds 8
-wChannelPitchBendCurrentFrequencyLowBytes:: ; c09e
+wChannelPitchSlideCurrentFrequencyLowBytes:: ; c09e
ds 8
-wChannelPitchBendTargetFrequencyHighBytes:: ; c0a6
+wChannelPitchSlideTargetFrequencyHighBytes:: ; c0a6
ds 8
-wChannelPitchBendTargetFrequencyLowBytes:: ; c0ae
+wChannelPitchSlideTargetFrequencyLowBytes:: ; c0ae
ds 8
wChannelNoteDelayCounters:: ; c0b6
@@ -578,6 +578,8 @@ wcbea:: ; cbea
wcbec:: ; cbec
ds 16
+wOverworldMapEnd::
+
wRedrawRowOrColumnSrcTiles:: ; cbfc
; the tiles of the row or column to be redrawn by RedrawRowOrColumn
ds SCREEN_WIDTH * 2
@@ -670,7 +672,10 @@ wTradeCenterPointerTableIndex:: ; cc38
ds 1
-wTextDestinationTileAddrBuffer:: dw ; cc3a
+wTextDest:: ; cc3a
+; destination pointer for text output
+; this variable is written to, but is never read from
+ ds 2
wDoNotWaitForButtonPressAfterDisplayingText:: ; cc3c
; if non-zero, skip waiting for a button press after displaying text in DisplayTextID
@@ -1490,6 +1495,8 @@ wNumMovesMinusOne:: ; cd6c
; FormatMovesString stores the number of moves minus one here
ds 1
+UNION
+
wcd6d:: ds 4 ; buffer for various data
wStatusScreenCurrentPP:: ; cd71
@@ -1502,6 +1509,13 @@ wNormalMaxPPList:: ; cd78
; list of normal max PP (without PP up) values
ds 9
+NEXTU
+
+wEvosMoves:: ds MAX_EVOLUTIONS * EVOLUTION_SIZE + 1
+.end::
+
+ENDU
+
wSerialOtherGameboyRandomNumberListBlock:: ; cd81
; buffer for transferring the random number list generated by the other gameboy
@@ -1664,7 +1678,7 @@ wStatusScreenHPBarColor:: ; cf25
ds 7
-wCopyingSGBTileData:: ; c2fd
+wCopyingSGBTileData:: ; cf2d
wWhichPartyMenuHPBar:: ; cf2d
@@ -1866,7 +1880,7 @@ SECTION "WRAM Bank 1", WRAMX
ds 1 ; NUM_MOVES - 3
wEnemyMonBaseStats:: ds 5
-wEnemyMonCatchRate:: ds 1
+wEnemyMonActualCatchRate:: ds 1
wEnemyMonBaseExp:: ds 1
wBattleMonNick:: ds NAME_LENGTH ; d008
@@ -1917,7 +1931,7 @@ wPartyGainExpFlags:: ; d057
wCurOpponent:: ; d058
; in a wild battle, this is the species of pokemon
-; in a trainer battle, this is the trainer class + 200
+; in a trainer battle, this is the trainer class + OPP_ID_OFFSET
ds 1
wBattleType:: ; d059
@@ -1987,7 +2001,7 @@ wPlayerBattleStatus3:: ; d063
; bit 0 - toxic
; bit 1 - light screen
; bit 2 - reflect
-; bit 3 - tranformed
+; bit 3 - transformed
ds 1
wEnemyStatsToDouble:: ; d064
@@ -2296,7 +2310,7 @@ wPredefBank:: ; d0b6
wMonHeader:: ; d0b7
wMonHIndex:: ; d0b7
-; In the ROM base stats data stucture, this is the dex number, but it is
+; In the ROM base stats data structure, this is the dex number, but it is
; overwritten with the internal index number after the header is copied to WRAM.
ds 1
@@ -3040,7 +3054,6 @@ wMissableObjectList:: ; d5cd
wGameProgressFlags:: ; d5e9
; $c8 bytes
-
wOaksLabCurScript:: ; d5e9
ds 1
wPalletTownCurScript:: ; d5f0
@@ -3081,27 +3094,27 @@ wRoute9CurScript:: ; d603
ds 1
wRoute10CurScript:: ; d604
ds 1
-wMtMoon1CurScript:: ; d605
+wMtMoon1FCurScript:: ; d605
ds 1
-wMtMoon3CurScript:: ; d606
+wMtMoonB2FCurScript:: ; d606
ds 1
-wSSAnne8CurScript:: ; d607
+wSSAnne1FRoomsCurScript:: ; d607
ds 1
-wSSAnne9CurScript:: ; d608
+wSSAnne2FRoomsCurScript:: ; d608
ds 1
wRoute22CurScript:: ; d609
ds 1
ds 1
-wRedsHouse2CurScript:: ; d60b
+wRedsHouse2FCurScript:: ; d60b
ds 1
-wViridianMarketCurScript:: ; d60c
+wViridianMartCurScript:: ; d60c
ds 1
wRoute22GateCurScript:: ; d60d
ds 1
wCeruleanCityCurScript:: ; d60e
ds 1
ds 7
-wSSAnne5CurScript:: ; d616
+wSSAnneBowCurScript:: ; d616
ds 1
wViridianForestCurScript:: ; d617
ds 1
@@ -3117,11 +3130,11 @@ wRoute19CurScript:: ; d61c
ds 1
wRoute21CurScript:: ; d61d
ds 1
-wSafariZoneEntranceCurScript:: ; d61e
+wSafariZoneGateCurScript:: ; d61e
ds 1
-wRockTunnel2CurScript:: ; d61f
+wRockTunnelB1FCurScript:: ; d61f
ds 1
-wRockTunnel1CurScript:: ; d620
+wRockTunnel1FCurScript:: ; d620
ds 1
ds 1
wRoute11CurScript:: ; d622
@@ -3136,29 +3149,29 @@ wRoute18CurScript:: ; d626
ds 1
wRoute20CurScript:: ; d627
ds 1
-wSSAnne10CurScript:: ; d628
+wSSAnneB1FRoomsCurScript:: ; d628
ds 1
wVermilionCityCurScript:: ; d629
ds 1
-wPokemonTower2CurScript:: ; d62a
+wPokemonTower2FCurScript:: ; d62a
ds 1
-wPokemonTower3CurScript:: ; d62b
+wPokemonTower3FCurScript:: ; d62b
ds 1
-wPokemonTower4CurScript:: ; d62c
+wPokemonTower4FCurScript:: ; d62c
ds 1
-wPokemonTower5CurScript:: ; d62d
+wPokemonTower5FCurScript:: ; d62d
ds 1
-wPokemonTower6CurScript:: ; d62e
+wPokemonTower6FCurScript:: ; d62e
ds 1
-wPokemonTower7CurScript:: ; d62f
+wPokemonTower7FCurScript:: ; d62f
ds 1
-wRocketHideout1CurScript:: ; d630
+wRocketHideoutB1FCurScript:: ; d630
ds 1
-wRocketHideout2CurScript:: ; d631
+wRocketHideoutB2FCurScript:: ; d631
ds 1
-wRocketHideout3CurScript:: ; d632
+wRocketHideoutB3FCurScript:: ; d632
ds 1
-wRocketHideout4CurScript:: ; d633
+wRocketHideoutB4FCurScript:: ; d633
ds 2
wRoute6GateCurScript:: ; d635
ds 1
@@ -3166,59 +3179,59 @@ wRoute8GateCurScript:: ; d636
ds 2
wCinnabarIslandCurScript:: ; d638
ds 1
-wMansion1CurScript:: ; d639
+wPokemonMansion1FCurScript:: ; d639
ds 2
-wMansion2CurScript:: ; d63b
+wPokemonMansion2FCurScript:: ; d63b
ds 1
-wMansion3CurScript:: ; d63c
+wPokemonMansion3FCurScript:: ; d63c
ds 1
-wMansion4CurScript:: ; d63d
+wPokemonMansionB1FCurScript:: ; d63d
ds 1
-wVictoryRoad2CurScript:: ; d63e
+wVictoryRoad2FCurScript:: ; d63e
ds 1
-wVictoryRoad3CurScript:: ; d63f
+wVictoryRoad3FCurScript:: ; d63f
ds 1
wCeladonCityCurScript:: ; d640
ds 1
wFightingDojoCurScript:: ; d641
ds 1
-wSilphCo2CurScript:: ; d642
+wSilphCo2FCurScript:: ; d642
ds 1
-wSilphCo3CurScript:: ; d643
+wSilphCo3FCurScript:: ; d643
ds 1
-wSilphCo4CurScript:: ; d644
+wSilphCo4FCurScript:: ; d644
ds 1
-wSilphCo5CurScript:: ; d645
+wSilphCo5FCurScript:: ; d645
ds 1
-wSilphCo6CurScript:: ; d646
+wSilphCo6FCurScript:: ; d646
ds 1
-wSilphCo7CurScript:: ; d647
+wSilphCo7FCurScript:: ; d647
ds 1
-wSilphCo8CurScript:: ; d648
+wSilphCo8FCurScript:: ; d648
ds 1
-wSilphCo9CurScript:: ; d649
+wSilphCo9FCurScript:: ; d649
ds 1
-wHallOfFameRoomCurScript:: ; d64a
+wHallOfFameCurScript:: ; d64a
ds 1
-wGaryCurScript:: ; d64b
+wChampionsRoomCurScript:: ; d64b
ds 1
-wLoreleiCurScript:: ; d64c
+wLoreleisRoomCurScript:: ; d64c
ds 1
-wBrunoCurScript:: ; d64d
+wBrunosRoomCurScript:: ; d64d
ds 1
-wAgathaCurScript:: ; d64e
+wAgathasRoomCurScript:: ; d64e
ds 1
-wUnknownDungeon3CurScript:: ; d64f
+wCeruleanCaveB1FCurScript:: ; d64f
ds 1
-wVictoryRoad1CurScript:: ; d650
+wVictoryRoad1FCurScript:: ; d650
ds 1
ds 1
-wLanceCurScript:: ; d652
+wLancesRoomCurScript:: ; d652
ds 1
ds 4
-wSilphCo10CurScript:: ; d657
+wSilphCo10FCurScript:: ; d657
ds 1
-wSilphCo11CurScript:: ; d658
+wSilphCo11FCurScript:: ; d658
ds 1
ds 1
wFuchsiaGymCurScript:: ; d65a
@@ -3228,30 +3241,28 @@ wSaffronGymCurScript:: ; d65b
ds 1
wCinnabarGymCurScript:: ; d65d
ds 1
-wCeladonGameCornerCurScript:: ; d65e
+wGameCornerCurScript:: ; d65e
ds 1
-wRoute16GateCurScript:: ; d65f
+wRoute16Gate1FCurScript:: ; d65f
ds 1
wBillsHouseCurScript:: ; d660
ds 1
wRoute5GateCurScript:: ; d661
ds 1
wPowerPlantCurScript:: ; d662
-; overload
- ds 0
wRoute7GateCurScript:: ; d662
; overload
ds 1
ds 1
-wSSAnne2CurScript:: ; d664
+wSSAnne2FCurScript:: ; d664
ds 1
-wSeafoamIslands4CurScript:: ; d665
+wSeafoamIslandsB3FCurScript:: ; d665
ds 1
wRoute23CurScript:: ; d666
ds 1
-wSeafoamIslands5CurScript:: ; d667
+wSeafoamIslandsB4FCurScript:: ; d667
ds 1
-wRoute18GateCurScript:: ; d668
+wRoute18Gate1FCurScript:: ; d668
ds 1
ds 78
@@ -3291,7 +3302,7 @@ wFossilMon:: ; d70f
ds 2
wEnemyMonOrTrainerClass:: ; d712
-; trainer classes start at 200
+; trainer classes start at OPP_ID_OFFSET
ds 1
wPlayerJumpingYScreenCoordsIndex:: ; d713
@@ -3401,7 +3412,7 @@ wd732:: ; d731
; bit 1: remnant of debug mode? not set by the game code.
; if it is set
; 1. skips most of Prof. Oak's speech, and uses NINTEN as the player's name and SONY as the rival's name
-; 2. does not have the player start in floor two of the playyer's house (instead sending them to [wLastMap])
+; 2. does not have the player start in floor two of the player's house (instead sending them to [wLastMap])
; 3. allows wild battles to be avoided by holding down B
; bit 2: the target warp is a fly warp (bit 3 set or blacked out) or a dungeon warp (bit 4 set)
; bit 3: used warp pad, escape rope, dig, teleport, or fly, so the target warp is a "fly warp"
@@ -3432,7 +3443,7 @@ wd736:: ; d735
; bit 1: the player is currently stepping down from a door
; bit 2: standing on a warp
; bit 6: jumping down a ledge / fishing animation
-; bit 7: player sprite spinning due to spin tiles (Rocket hidehout / Viridian Gym)
+; bit 7: player sprite spinning due to spin tiles (Rocket hideout / Viridian Gym)
ds 1
wCompletedInGameTradeFlags:: ; d736
@@ -3459,7 +3470,7 @@ wCardKeyDoorX:: ; d73f
wFirstLockTrashCanIndex:: ; d742
ds 1
-wSecondLockTrashCanIndex:: ; d743
+wSecondLockTrashCanIndex:: ; d744
ds 1
ds 2
@@ -3493,6 +3504,7 @@ wSerialEnemyDataBlock:: ; d892
wEnemyPartyCount:: ds 1 ; d89b
wEnemyPartyMons:: ds PARTY_LENGTH + 1 ; d89c
+; Overload enemy party data
UNION
wWaterRate:: db ; d8a3
@@ -3513,6 +3525,7 @@ wEnemyMonNicks:: ds NAME_LENGTH * PARTY_LENGTH ; d9ed
ENDU
+
wTrainerHeaderPtr:: ; da2f
ds 2
@@ -3527,7 +3540,7 @@ wUnusedDA38:: ; da37
wCurMapScript:: ; da38
; index of current map script, mostly used as index for function pointer array
-; mostly copied from map-specific map script pointer and wirtten back later
+; mostly copied from map-specific map script pointer and written back later
ds 1
ds 7