summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRemy Oukaour <remy.oukaour@gmail.com>2017-12-11 22:59:30 -0500
committerRemy Oukaour <remy.oukaour@gmail.com>2017-12-11 22:59:30 -0500
commit213dcc70d77ade7cf587d57016cc5bb405494fe8 (patch)
treee2a91b6700c87dbad04dcf918054c4ae26871776
parentf1f84743f7759a0f808f935add82439ba6637d2b (diff)
More consistent data tables
-rw-r--r--audio/engine.asm6
-rw-r--r--data/audio/notes.asm2
-rw-r--r--data/audio/wave_samples.asm2
-rw-r--r--data/mystery_gift/decos.asm3
-rw-r--r--data/mystery_gift/items.asm3
-rw-r--r--data/pokedex/entries.asm255
-rw-r--r--data/pokedex/entries_1.asm64
-rw-r--r--data/pokedex/entries_2.asm64
-rw-r--r--data/pokedex/entries_3.asm64
-rw-r--r--data/pokedex/entries_4.asm59
-rw-r--r--data/pokedex/entry_pointers.asm75
-rw-r--r--data/pokedex/order_alpha.asm4
-rw-r--r--data/pokedex/order_new.asm4
-rw-r--r--data/time_capsule/catch_rate_items.asm2
-rw-r--r--data/time_capsule/mon_order.asm2
-rw-r--r--data/time_capsule/special_stats.asm3
-rw-r--r--data/wild/bug_contest_mons.asm2
-rw-r--r--data/wild/johto_grass.asm2
-rw-r--r--data/wild/johto_water.asm2
-rw-r--r--data/wild/kanto_grass.asm2
-rw-r--r--data/wild/kanto_water.asm2
-rw-r--r--data/wild/roammon_maps.asm2
-rw-r--r--data/wild/swarm_grass.asm4
-rw-r--r--data/wild/swarm_water.asm4
-rw-r--r--engine/events_2.asm4
-rwxr-xr-xengine/link.asm6
-rwxr-xr-xengine/mysterygift2.asm7
-rw-r--r--engine/pokedex.asm4
-rw-r--r--engine/pokedex_2.asm286
-rwxr-xr-xengine/time_capsule/conversion.asm6
-rwxr-xr-xengine/wildmons.asm15
-rw-r--r--main.asm272
32 files changed, 651 insertions, 581 deletions
diff --git a/audio/engine.asm b/audio/engine.asm
index 7a4854b39..768cbe98d 100644
--- a/audio/engine.asm
+++ b/audio/engine.asm
@@ -2882,16 +2882,14 @@ LoadMusicByte:: ; e8d76
; e8d80
-FrequencyTable: ; e8d80
+
INCLUDE "data/audio/notes.asm"
-; e8db2
-WaveSamples: ; e8db2
INCLUDE "data/audio/wave_samples.asm"
-; e8e52
INCLUDE "audio/drumkits.asm"
+
GetLRTracks: ; e8fc2
; gets the default sound l/r channels
; stores mono/stereo table in hl
diff --git a/data/audio/notes.asm b/data/audio/notes.asm
index bc5e682c9..543672a4a 100644
--- a/data/audio/notes.asm
+++ b/data/audio/notes.asm
@@ -1,3 +1,4 @@
+FrequencyTable: ; e8d80
dw 0 ; __
dw $f82c ; C_
dw $f89d ; C#
@@ -23,3 +24,4 @@
dw $fdac ; A_
dw $fdcd ; A#
dw $fded ; B_
+; e8db2
diff --git a/data/audio/wave_samples.asm b/data/audio/wave_samples.asm
index abf0925ce..8c5bafa75 100644
--- a/data/audio/wave_samples.asm
+++ b/data/audio/wave_samples.asm
@@ -1,3 +1,4 @@
+WaveSamples: ; e8db2
; these are streams of 32 4-bit values used as wavepatterns
; nothing interesting here!
dn 0, 2, 4, 6, 8, 10, 12, 14, 15, 15, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5, 4, 4, 3, 3, 2, 2, 1, 1
@@ -10,3 +11,4 @@
dn 12, 0, 10, 9, 8, 7, 15, 5, 15, 15, 15, 14, 14, 13, 13, 12, 4, 4, 3, 3, 2, 2, 15, 1, 0, 2, 4, 6, 8, 10, 12, 14
dn 4, 4, 3, 3, 2, 2, 1, 15, 0, 0, 4, 6, 8, 10, 12, 14, 15, 8, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5
dn 1, 1, 0, 0, 0, 0, 0, 8, 0, 0, 1, 3, 5, 7, 9, 10, 11, 4, 11, 10, 10, 9, 9, 8, 8, 7, 6, 5, 4, 3, 2, 1
+; e8e52
diff --git a/data/mystery_gift/decos.asm b/data/mystery_gift/decos.asm
index 18cc0ac30..bdd4694c6 100644
--- a/data/mystery_gift/decos.asm
+++ b/data/mystery_gift/decos.asm
@@ -1,3 +1,4 @@
+MysteryGiftDecos: ; 2c74a
db DECOFLAG_PIKACHU_DOLL
db DECOFLAG_BULBASAUR_DOLL
db DECOFLAG_CHARMANDER_DOLL
@@ -35,3 +36,5 @@
db DECOFLAG_PIKACHU_BED
db DECOFLAG_GRIMER_DOLL
db DECOFLAG_UNOWN_DOLL
+MysteryGiftDecosEnd
+; 2c76f
diff --git a/data/mystery_gift/items.asm b/data/mystery_gift/items.asm
index 1970d6826..b2379071e 100644
--- a/data/mystery_gift/items.asm
+++ b/data/mystery_gift/items.asm
@@ -1,3 +1,4 @@
+MysteryGiftItems: ; 2c725
db BERRY
db PRZCUREBERRY
db MINT_BERRY
@@ -35,3 +36,5 @@
db RARE_CANDY
db BLUESKY_MAIL
db MIRAGE_MAIL
+MysteryGiftItemsEnd:
+; 2c74a
diff --git a/data/pokedex/entries.asm b/data/pokedex/entries.asm
index c54f5e245..a12cdd3f4 100644
--- a/data/pokedex/entries.asm
+++ b/data/pokedex/entries.asm
@@ -4,22 +4,269 @@ INCLUDE "includes.asm"
SECTION "Pokedex Entries 001-064", ROMX
PokedexEntries1::
-INCLUDE "data/pokedex/entries_1.asm"
+BulbasaurPokedexEntry:: INCLUDE "data/pokedex/entries/bulbasaur.asm"
+IvysaurPokedexEntry:: INCLUDE "data/pokedex/entries/ivysaur.asm"
+VenusaurPokedexEntry:: INCLUDE "data/pokedex/entries/venusaur.asm"
+CharmanderPokedexEntry:: INCLUDE "data/pokedex/entries/charmander.asm"
+CharmeleonPokedexEntry:: INCLUDE "data/pokedex/entries/charmeleon.asm"
+CharizardPokedexEntry:: INCLUDE "data/pokedex/entries/charizard.asm"
+SquirtlePokedexEntry:: INCLUDE "data/pokedex/entries/squirtle.asm"
+WartortlePokedexEntry:: INCLUDE "data/pokedex/entries/wartortle.asm"
+BlastoisePokedexEntry:: INCLUDE "data/pokedex/entries/blastoise.asm"
+CaterpiePokedexEntry:: INCLUDE "data/pokedex/entries/caterpie.asm"
+MetapodPokedexEntry:: INCLUDE "data/pokedex/entries/metapod.asm"
+ButterfreePokedexEntry:: INCLUDE "data/pokedex/entries/butterfree.asm"
+WeedlePokedexEntry:: INCLUDE "data/pokedex/entries/weedle.asm"
+KakunaPokedexEntry:: INCLUDE "data/pokedex/entries/kakuna.asm"
+BeedrillPokedexEntry:: INCLUDE "data/pokedex/entries/beedrill.asm"
+PidgeyPokedexEntry:: INCLUDE "data/pokedex/entries/pidgey.asm"
+PidgeottoPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeotto.asm"
+PidgeotPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeot.asm"
+RattataPokedexEntry:: INCLUDE "data/pokedex/entries/rattata.asm"
+RaticatePokedexEntry:: INCLUDE "data/pokedex/entries/raticate.asm"
+SpearowPokedexEntry:: INCLUDE "data/pokedex/entries/spearow.asm"
+FearowPokedexEntry:: INCLUDE "data/pokedex/entries/fearow.asm"
+EkansPokedexEntry:: INCLUDE "data/pokedex/entries/ekans.asm"
+ArbokPokedexEntry:: INCLUDE "data/pokedex/entries/arbok.asm"
+PikachuPokedexEntry:: INCLUDE "data/pokedex/entries/pikachu.asm"
+RaichuPokedexEntry:: INCLUDE "data/pokedex/entries/raichu.asm"
+SandshrewPokedexEntry:: INCLUDE "data/pokedex/entries/sandshrew.asm"
+SandslashPokedexEntry:: INCLUDE "data/pokedex/entries/sandslash.asm"
+NidoranFPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_f.asm"
+NidorinaPokedexEntry:: INCLUDE "data/pokedex/entries/nidorina.asm"
+NidoqueenPokedexEntry:: INCLUDE "data/pokedex/entries/nidoqueen.asm"
+NidoranMPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_m.asm"
+NidorinoPokedexEntry:: INCLUDE "data/pokedex/entries/nidorino.asm"
+NidokingPokedexEntry:: INCLUDE "data/pokedex/entries/nidoking.asm"
+ClefairyPokedexEntry:: INCLUDE "data/pokedex/entries/clefairy.asm"
+ClefablePokedexEntry:: INCLUDE "data/pokedex/entries/clefable.asm"
+VulpixPokedexEntry:: INCLUDE "data/pokedex/entries/vulpix.asm"
+NinetalesPokedexEntry:: INCLUDE "data/pokedex/entries/ninetales.asm"
+JigglypuffPokedexEntry:: INCLUDE "data/pokedex/entries/jigglypuff.asm"
+WigglytuffPokedexEntry:: INCLUDE "data/pokedex/entries/wigglytuff.asm"
+ZubatPokedexEntry:: INCLUDE "data/pokedex/entries/zubat.asm"
+GolbatPokedexEntry:: INCLUDE "data/pokedex/entries/golbat.asm"
+OddishPokedexEntry:: INCLUDE "data/pokedex/entries/oddish.asm"
+GloomPokedexEntry:: INCLUDE "data/pokedex/entries/gloom.asm"
+VileplumePokedexEntry:: INCLUDE "data/pokedex/entries/vileplume.asm"
+ParasPokedexEntry:: INCLUDE "data/pokedex/entries/paras.asm"
+ParasectPokedexEntry:: INCLUDE "data/pokedex/entries/parasect.asm"
+VenonatPokedexEntry:: INCLUDE "data/pokedex/entries/venonat.asm"
+VenomothPokedexEntry:: INCLUDE "data/pokedex/entries/venomoth.asm"
+DiglettPokedexEntry:: INCLUDE "data/pokedex/entries/diglett.asm"
+DugtrioPokedexEntry:: INCLUDE "data/pokedex/entries/dugtrio.asm"
+MeowthPokedexEntry:: INCLUDE "data/pokedex/entries/meowth.asm"
+PersianPokedexEntry:: INCLUDE "data/pokedex/entries/persian.asm"
+PsyduckPokedexEntry:: INCLUDE "data/pokedex/entries/psyduck.asm"
+GolduckPokedexEntry:: INCLUDE "data/pokedex/entries/golduck.asm"
+MankeyPokedexEntry:: INCLUDE "data/pokedex/entries/mankey.asm"
+PrimeapePokedexEntry:: INCLUDE "data/pokedex/entries/primeape.asm"
+GrowlithePokedexEntry:: INCLUDE "data/pokedex/entries/growlithe.asm"
+ArcaninePokedexEntry:: INCLUDE "data/pokedex/entries/arcanine.asm"
+PoliwagPokedexEntry:: INCLUDE "data/pokedex/entries/poliwag.asm"
+PoliwhirlPokedexEntry:: INCLUDE "data/pokedex/entries/poliwhirl.asm"
+PoliwrathPokedexEntry:: INCLUDE "data/pokedex/entries/poliwrath.asm"
+AbraPokedexEntry:: INCLUDE "data/pokedex/entries/abra.asm"
+KadabraPokedexEntry:: INCLUDE "data/pokedex/entries/kadabra.asm"
SECTION "Pokedex Entries 065-128", ROMX
PokedexEntries2::
-INCLUDE "data/pokedex/entries_2.asm"
+AlakazamPokedexEntry:: INCLUDE "data/pokedex/entries/alakazam.asm"
+MachopPokedexEntry:: INCLUDE "data/pokedex/entries/machop.asm"
+MachokePokedexEntry:: INCLUDE "data/pokedex/entries/machoke.asm"
+MachampPokedexEntry:: INCLUDE "data/pokedex/entries/machamp.asm"
+BellsproutPokedexEntry:: INCLUDE "data/pokedex/entries/bellsprout.asm"
+WeepinbellPokedexEntry:: INCLUDE "data/pokedex/entries/weepinbell.asm"
+VictreebelPokedexEntry:: INCLUDE "data/pokedex/entries/victreebel.asm"
+TentacoolPokedexEntry:: INCLUDE "data/pokedex/entries/tentacool.asm"
+TentacruelPokedexEntry:: INCLUDE "data/pokedex/entries/tentacruel.asm"
+GeodudePokedexEntry:: INCLUDE "data/pokedex/entries/geodude.asm"
+GravelerPokedexEntry:: INCLUDE "data/pokedex/entries/graveler.asm"
+GolemPokedexEntry:: INCLUDE "data/pokedex/entries/golem.asm"
+PonytaPokedexEntry:: INCLUDE "data/pokedex/entries/ponyta.asm"
+RapidashPokedexEntry:: INCLUDE "data/pokedex/entries/rapidash.asm"
+SlowpokePokedexEntry:: INCLUDE "data/pokedex/entries/slowpoke.asm"
+SlowbroPokedexEntry:: INCLUDE "data/pokedex/entries/slowbro.asm"
+MagnemitePokedexEntry:: INCLUDE "data/pokedex/entries/magnemite.asm"
+MagnetonPokedexEntry:: INCLUDE "data/pokedex/entries/magneton.asm"
+FarfetchDPokedexEntry:: INCLUDE "data/pokedex/entries/farfetch_d.asm"
+DoduoPokedexEntry:: INCLUDE "data/pokedex/entries/doduo.asm"
+DodrioPokedexEntry:: INCLUDE "data/pokedex/entries/dodrio.asm"
+SeelPokedexEntry:: INCLUDE "data/pokedex/entries/seel.asm"
+DewgongPokedexEntry:: INCLUDE "data/pokedex/entries/dewgong.asm"
+GrimerPokedexEntry:: INCLUDE "data/pokedex/entries/grimer.asm"
+MukPokedexEntry:: INCLUDE "data/pokedex/entries/muk.asm"
+ShellderPokedexEntry:: INCLUDE "data/pokedex/entries/shellder.asm"
+CloysterPokedexEntry:: INCLUDE "data/pokedex/entries/cloyster.asm"
+GastlyPokedexEntry:: INCLUDE "data/pokedex/entries/gastly.asm"
+HaunterPokedexEntry:: INCLUDE "data/pokedex/entries/haunter.asm"
+GengarPokedexEntry:: INCLUDE "data/pokedex/entries/gengar.asm"
+OnixPokedexEntry:: INCLUDE "data/pokedex/entries/onix.asm"
+DrowzeePokedexEntry:: INCLUDE "data/pokedex/entries/drowzee.asm"
+HypnoPokedexEntry:: INCLUDE "data/pokedex/entries/hypno.asm"
+KrabbyPokedexEntry:: INCLUDE "data/pokedex/entries/krabby.asm"
+KinglerPokedexEntry:: INCLUDE "data/pokedex/entries/kingler.asm"
+VoltorbPokedexEntry:: INCLUDE "data/pokedex/entries/voltorb.asm"
+ElectrodePokedexEntry:: INCLUDE "data/pokedex/entries/electrode.asm"
+ExeggcutePokedexEntry:: INCLUDE "data/pokedex/entries/exeggcute.asm"
+ExeggutorPokedexEntry:: INCLUDE "data/pokedex/entries/exeggutor.asm"
+CubonePokedexEntry:: INCLUDE "data/pokedex/entries/cubone.asm"
+MarowakPokedexEntry:: INCLUDE "data/pokedex/entries/marowak.asm"
+HitmonleePokedexEntry:: INCLUDE "data/pokedex/entries/hitmonlee.asm"
+HitmonchanPokedexEntry:: INCLUDE "data/pokedex/entries/hitmonchan.asm"
+LickitungPokedexEntry:: INCLUDE "data/pokedex/entries/lickitung.asm"
+KoffingPokedexEntry:: INCLUDE "data/pokedex/entries/koffing.asm"
+WeezingPokedexEntry:: INCLUDE "data/pokedex/entries/weezing.asm"
+RhyhornPokedexEntry:: INCLUDE "data/pokedex/entries/rhyhorn.asm"
+RhydonPokedexEntry:: INCLUDE "data/pokedex/entries/rhydon.asm"
+ChanseyPokedexEntry:: INCLUDE "data/pokedex/entries/chansey.asm"
+TangelaPokedexEntry:: INCLUDE "data/pokedex/entries/tangela.asm"
+KangaskhanPokedexEntry:: INCLUDE "data/pokedex/entries/kangaskhan.asm"
+HorseaPokedexEntry:: INCLUDE "data/pokedex/entries/horsea.asm"
+SeadraPokedexEntry:: INCLUDE "data/pokedex/entries/seadra.asm"
+GoldeenPokedexEntry:: INCLUDE "data/pokedex/entries/goldeen.asm"
+SeakingPokedexEntry:: INCLUDE "data/pokedex/entries/seaking.asm"
+StaryuPokedexEntry:: INCLUDE "data/pokedex/entries/staryu.asm"
+StarmiePokedexEntry:: INCLUDE "data/pokedex/entries/starmie.asm"
+MrMimePokedexEntry:: INCLUDE "data/pokedex/entries/mr__mime.asm"
+ScytherPokedexEntry:: INCLUDE "data/pokedex/entries/scyther.asm"
+JynxPokedexEntry:: INCLUDE "data/pokedex/entries/jynx.asm"
+ElectabuzzPokedexEntry:: INCLUDE "data/pokedex/entries/electabuzz.asm"
+MagmarPokedexEntry:: INCLUDE "data/pokedex/entries/magmar.asm"
+PinsirPokedexEntry:: INCLUDE "data/pokedex/entries/pinsir.asm"
+TaurosPokedexEntry:: INCLUDE "data/pokedex/entries/tauros.asm"
SECTION "Pokedex Entries 129-192", ROMX
PokedexEntries3::
-INCLUDE "data/pokedex/entries_3.asm"
+MagikarpPokedexEntry:: INCLUDE "data/pokedex/entries/magikarp.asm"
+GyaradosPokedexEntry:: INCLUDE "data/pokedex/entries/gyarados.asm"
+LaprasPokedexEntry:: INCLUDE "data/pokedex/entries/lapras.asm"
+DittoPokedexEntry:: INCLUDE "data/pokedex/entries/ditto.asm"
+EeveePokedexEntry:: INCLUDE "data/pokedex/entries/eevee.asm"
+VaporeonPokedexEntry:: INCLUDE "data/pokedex/entries/vaporeon.asm"
+JolteonPokedexEntry:: INCLUDE "data/pokedex/entries/jolteon.asm"
+FlareonPokedexEntry:: INCLUDE "data/pokedex/entries/flareon.asm"
+PorygonPokedexEntry:: INCLUDE "data/pokedex/entries/porygon.asm"
+OmanytePokedexEntry:: INCLUDE "data/pokedex/entries/omanyte.asm"
+OmastarPokedexEntry:: INCLUDE "data/pokedex/entries/omastar.asm"
+KabutoPokedexEntry:: INCLUDE "data/pokedex/entries/kabuto.asm"
+KabutopsPokedexEntry:: INCLUDE "data/pokedex/entries/kabutops.asm"
+AerodactylPokedexEntry:: INCLUDE "data/pokedex/entries/aerodactyl.asm"
+SnorlaxPokedexEntry:: INCLUDE "data/pokedex/entries/snorlax.asm"
+ArticunoPokedexEntry:: INCLUDE "data/pokedex/entries/articuno.asm"
+ZapdosPokedexEntry:: INCLUDE "data/pokedex/entries/zapdos.asm"
+MoltresPokedexEntry:: INCLUDE "data/pokedex/entries/moltres.asm"
+DratiniPokedexEntry:: INCLUDE "data/pokedex/entries/dratini.asm"
+DragonairPokedexEntry:: INCLUDE "data/pokedex/entries/dragonair.asm"
+DragonitePokedexEntry:: INCLUDE "data/pokedex/entries/dragonite.asm"
+MewtwoPokedexEntry:: INCLUDE "data/pokedex/entries/mewtwo.asm"
+MewPokedexEntry:: INCLUDE "data/pokedex/entries/mew.asm"
+ChikoritaPokedexEntry:: INCLUDE "data/pokedex/entries/chikorita.asm"
+BayleefPokedexEntry:: INCLUDE "data/pokedex/entries/bayleef.asm"
+MeganiumPokedexEntry:: INCLUDE "data/pokedex/entries/meganium.asm"
+CyndaquilPokedexEntry:: INCLUDE "data/pokedex/entries/cyndaquil.asm"
+QuilavaPokedexEntry:: INCLUDE "data/pokedex/entries/quilava.asm"
+TyphlosionPokedexEntry:: INCLUDE "data/pokedex/entries/typhlosion.asm"
+TotodilePokedexEntry:: INCLUDE "data/pokedex/entries/totodile.asm"
+CroconawPokedexEntry:: INCLUDE "data/pokedex/entries/croconaw.asm"
+FeraligatrPokedexEntry:: INCLUDE "data/pokedex/entries/feraligatr.asm"
+SentretPokedexEntry:: INCLUDE "data/pokedex/entries/sentret.asm"
+FurretPokedexEntry:: INCLUDE "data/pokedex/entries/furret.asm"
+HoothootPokedexEntry:: INCLUDE "data/pokedex/entries/hoothoot.asm"
+NoctowlPokedexEntry:: INCLUDE "data/pokedex/entries/noctowl.asm"
+LedybaPokedexEntry:: INCLUDE "data/pokedex/entries/ledyba.asm"
+LedianPokedexEntry:: INCLUDE "data/pokedex/entries/ledian.asm"
+SpinarakPokedexEntry:: INCLUDE "data/pokedex/entries/spinarak.asm"
+AriadosPokedexEntry:: INCLUDE "data/pokedex/entries/ariados.asm"
+CrobatPokedexEntry:: INCLUDE "data/pokedex/entries/crobat.asm"
+ChinchouPokedexEntry:: INCLUDE "data/pokedex/entries/chinchou.asm"
+LanturnPokedexEntry:: INCLUDE "data/pokedex/entries/lanturn.asm"
+PichuPokedexEntry:: INCLUDE "data/pokedex/entries/pichu.asm"
+CleffaPokedexEntry:: INCLUDE "data/pokedex/entries/cleffa.asm"
+IgglybuffPokedexEntry:: INCLUDE "data/pokedex/entries/igglybuff.asm"
+TogepiPokedexEntry:: INCLUDE "data/pokedex/entries/togepi.asm"
+TogeticPokedexEntry:: INCLUDE "data/pokedex/entries/togetic.asm"
+NatuPokedexEntry:: INCLUDE "data/pokedex/entries/natu.asm"
+XatuPokedexEntry:: INCLUDE "data/pokedex/entries/xatu.asm"
+MareepPokedexEntry:: INCLUDE "data/pokedex/entries/mareep.asm"
+FlaaffyPokedexEntry:: INCLUDE "data/pokedex/entries/flaaffy.asm"
+AmpharosPokedexEntry:: INCLUDE "data/pokedex/entries/ampharos.asm"
+BellossomPokedexEntry:: INCLUDE "data/pokedex/entries/bellossom.asm"
+MarillPokedexEntry:: INCLUDE "data/pokedex/entries/marill.asm"
+AzumarillPokedexEntry:: INCLUDE "data/pokedex/entries/azumarill.asm"
+SudowoodoPokedexEntry:: INCLUDE "data/pokedex/entries/sudowoodo.asm"
+PolitoedPokedexEntry:: INCLUDE "data/pokedex/entries/politoed.asm"
+HoppipPokedexEntry:: INCLUDE "data/pokedex/entries/hoppip.asm"
+SkiploomPokedexEntry:: INCLUDE "data/pokedex/entries/skiploom.asm"
+JumpluffPokedexEntry:: INCLUDE "data/pokedex/entries/jumpluff.asm"
+AipomPokedexEntry:: INCLUDE "data/pokedex/entries/aipom.asm"
+SunkernPokedexEntry:: INCLUDE "data/pokedex/entries/sunkern.asm"
+SunfloraPokedexEntry:: INCLUDE "data/pokedex/entries/sunflora.asm"
SECTION "Pokedex Entries 193-251", ROMX
PokedexEntries4::
-INCLUDE "data/pokedex/entries_4.asm"
+YanmaPokedexEntry:: INCLUDE "data/pokedex/entries/yanma.asm"
+WooperPokedexEntry:: INCLUDE "data/pokedex/entries/wooper.asm"
+QuagsirePokedexEntry:: INCLUDE "data/pokedex/entries/quagsire.asm"
+EspeonPokedexEntry:: INCLUDE "data/pokedex/entries/espeon.asm"
+UmbreonPokedexEntry:: INCLUDE "data/pokedex/entries/umbreon.asm"
+MurkrowPokedexEntry:: INCLUDE "data/pokedex/entries/murkrow.asm"
+SlowkingPokedexEntry:: INCLUDE "data/pokedex/entries/slowking.asm"
+MisdreavusPokedexEntry:: INCLUDE "data/pokedex/entries/misdreavus.asm"
+UnownPokedexEntry:: INCLUDE "data/pokedex/entries/unown.asm"
+WobbuffetPokedexEntry:: INCLUDE "data/pokedex/entries/wobbuffet.asm"
+GirafarigPokedexEntry:: INCLUDE "data/pokedex/entries/girafarig.asm"
+PinecoPokedexEntry:: INCLUDE "data/pokedex/entries/pineco.asm"
+ForretressPokedexEntry:: INCLUDE "data/pokedex/entries/forretress.asm"
+DunsparcePokedexEntry:: INCLUDE "data/pokedex/entries/dunsparce.asm"
+GligarPokedexEntry:: INCLUDE "data/pokedex/entries/gligar.asm"
+SteelixPokedexEntry:: INCLUDE "data/pokedex/entries/steelix.asm"
+SnubbullPokedexEntry:: INCLUDE "data/pokedex/entries/snubbull.asm"
+GranbullPokedexEntry:: INCLUDE "data/pokedex/entries/granbull.asm"
+QwilfishPokedexEntry:: INCLUDE "data/pokedex/entries/qwilfish.asm"
+ScizorPokedexEntry:: INCLUDE "data/pokedex/entries/scizor.asm"
+ShucklePokedexEntry:: INCLUDE "data/pokedex/entries/shuckle.asm"
+HeracrossPokedexEntry:: INCLUDE "data/pokedex/entries/heracross.asm"
+SneaselPokedexEntry:: INCLUDE "data/pokedex/entries/sneasel.asm"
+TeddiursaPokedexEntry:: INCLUDE "data/pokedex/entries/teddiursa.asm"
+UrsaringPokedexEntry:: INCLUDE "data/pokedex/entries/ursaring.asm"
+SlugmaPokedexEntry:: INCLUDE "data/pokedex/entries/slugma.asm"
+MagcargoPokedexEntry:: INCLUDE "data/pokedex/entries/magcargo.asm"
+SwinubPokedexEntry:: INCLUDE "data/pokedex/entries/swinub.asm"
+PiloswinePokedexEntry:: INCLUDE "data/pokedex/entries/piloswine.asm"
+CorsolaPokedexEntry:: INCLUDE "data/pokedex/entries/corsola.asm"
+RemoraidPokedexEntry:: INCLUDE "data/pokedex/entries/remoraid.asm"
+OctilleryPokedexEntry:: INCLUDE "data/pokedex/entries/octillery.asm"
+DelibirdPokedexEntry:: INCLUDE "data/pokedex/entries/delibird.asm"
+MantinePokedexEntry:: INCLUDE "data/pokedex/entries/mantine.asm"
+SkarmoryPokedexEntry:: INCLUDE "data/pokedex/entries/skarmory.asm"
+HoundourPokedexEntry:: INCLUDE "data/pokedex/entries/houndour.asm"
+HoundoomPokedexEntry:: INCLUDE "data/pokedex/entries/houndoom.asm"
+KingdraPokedexEntry:: INCLUDE "data/pokedex/entries/kingdra.asm"
+PhanpyPokedexEntry:: INCLUDE "data/pokedex/entries/phanpy.asm"
+DonphanPokedexEntry:: INCLUDE "data/pokedex/entries/donphan.asm"
+Porygon2PokedexEntry:: INCLUDE "data/pokedex/entries/porygon2.asm"
+StantlerPokedexEntry:: INCLUDE "data/pokedex/entries/stantler.asm"
+SmearglePokedexEntry:: INCLUDE "data/pokedex/entries/smeargle.asm"
+TyroguePokedexEntry:: INCLUDE "data/pokedex/entries/tyrogue.asm"
+HitmontopPokedexEntry:: INCLUDE "data/pokedex/entries/hitmontop.asm"
+SmoochumPokedexEntry:: INCLUDE "data/pokedex/entries/smoochum.asm"
+ElekidPokedexEntry:: INCLUDE "data/pokedex/entries/elekid.asm"
+MagbyPokedexEntry:: INCLUDE "data/pokedex/entries/magby.asm"
+MiltankPokedexEntry:: INCLUDE "data/pokedex/entries/miltank.asm"
+BlisseyPokedexEntry:: INCLUDE "data/pokedex/entries/blissey.asm"
+RaikouPokedexEntry:: INCLUDE "data/pokedex/entries/raikou.asm"
+EnteiPokedexEntry:: INCLUDE "data/pokedex/entries/entei.asm"
+SuicunePokedexEntry:: INCLUDE "data/pokedex/entries/suicune.asm"
+LarvitarPokedexEntry:: INCLUDE "data/pokedex/entries/larvitar.asm"
+PupitarPokedexEntry:: INCLUDE "data/pokedex/entries/pupitar.asm"
+TyranitarPokedexEntry:: INCLUDE "data/pokedex/entries/tyranitar.asm"
+LugiaPokedexEntry:: INCLUDE "data/pokedex/entries/lugia.asm"
+HoOhPokedexEntry:: INCLUDE "data/pokedex/entries/ho_oh.asm"
+CelebiPokedexEntry:: INCLUDE "data/pokedex/entries/celebi.asm"
diff --git a/data/pokedex/entries_1.asm b/data/pokedex/entries_1.asm
deleted file mode 100644
index 7f3c04cd6..000000000
--- a/data/pokedex/entries_1.asm
+++ /dev/null
@@ -1,64 +0,0 @@
-BulbasaurPokedexEntry:: INCLUDE "data/pokedex/entries/bulbasaur.asm"
-IvysaurPokedexEntry:: INCLUDE "data/pokedex/entries/ivysaur.asm"
-VenusaurPokedexEntry:: INCLUDE "data/pokedex/entries/venusaur.asm"
-CharmanderPokedexEntry:: INCLUDE "data/pokedex/entries/charmander.asm"
-CharmeleonPokedexEntry:: INCLUDE "data/pokedex/entries/charmeleon.asm"
-CharizardPokedexEntry:: INCLUDE "data/pokedex/entries/charizard.asm"
-SquirtlePokedexEntry:: INCLUDE "data/pokedex/entries/squirtle.asm"
-WartortlePokedexEntry:: INCLUDE "data/pokedex/entries/wartortle.asm"
-BlastoisePokedexEntry:: INCLUDE "data/pokedex/entries/blastoise.asm"
-CaterpiePokedexEntry:: INCLUDE "data/pokedex/entries/caterpie.asm"
-MetapodPokedexEntry:: INCLUDE "data/pokedex/entries/metapod.asm"
-ButterfreePokedexEntry:: INCLUDE "data/pokedex/entries/butterfree.asm"
-WeedlePokedexEntry:: INCLUDE "data/pokedex/entries/weedle.asm"
-KakunaPokedexEntry:: INCLUDE "data/pokedex/entries/kakuna.asm"
-BeedrillPokedexEntry:: INCLUDE "data/pokedex/entries/beedrill.asm"
-PidgeyPokedexEntry:: INCLUDE "data/pokedex/entries/pidgey.asm"
-PidgeottoPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeotto.asm"
-PidgeotPokedexEntry:: INCLUDE "data/pokedex/entries/pidgeot.asm"
-RattataPokedexEntry:: INCLUDE "data/pokedex/entries/rattata.asm"
-RaticatePokedexEntry:: INCLUDE "data/pokedex/entries/raticate.asm"
-SpearowPokedexEntry:: INCLUDE "data/pokedex/entries/spearow.asm"
-FearowPokedexEntry:: INCLUDE "data/pokedex/entries/fearow.asm"
-EkansPokedexEntry:: INCLUDE "data/pokedex/entries/ekans.asm"
-ArbokPokedexEntry:: INCLUDE "data/pokedex/entries/arbok.asm"
-PikachuPokedexEntry:: INCLUDE "data/pokedex/entries/pikachu.asm"
-RaichuPokedexEntry:: INCLUDE "data/pokedex/entries/raichu.asm"
-SandshrewPokedexEntry:: INCLUDE "data/pokedex/entries/sandshrew.asm"
-SandslashPokedexEntry:: INCLUDE "data/pokedex/entries/sandslash.asm"
-NidoranFPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_f.asm"
-NidorinaPokedexEntry:: INCLUDE "data/pokedex/entries/nidorina.asm"
-NidoqueenPokedexEntry:: INCLUDE "data/pokedex/entries/nidoqueen.asm"
-NidoranMPokedexEntry:: INCLUDE "data/pokedex/entries/nidoran_m.asm"
-NidorinoPokedexEntry:: INCLUDE "data/pokedex/entries/nidorino.asm"
-NidokingPokedexEntry:: INCLUDE "data/pokedex/entries/nidoking.asm"
-ClefairyPokedexEntry:: INCLUDE "data/pokedex/entries/clefairy.asm"
-ClefablePokedexEntry:: INCLUDE "data/pokedex/entries/clefable.asm"
-VulpixPokedexEntry:: INCLUDE "data/pokedex/entries/vulpix.asm"
-NinetalesPokedexEntry:: INCLUDE "data/pokedex/entries/ninetales.asm"
-JigglypuffPokedexEntry:: INCLUDE "data/pokedex/entries/jigglypuff.asm"
-WigglytuffPokedexEntry:: INCLUDE "data/pokedex/entries/wigglytuff.asm"
-ZubatPokedexEntry:: INCLUDE "data/pokedex/entries/zubat.asm"
-GolbatPokedexEntry:: INCLUDE "data/pokedex/entries/golbat.asm"
-OddishPokedexEntry:: INCLUDE "data/pokedex/entries/oddish.asm"
-GloomPokedexEntry:: INCLUDE "data/pokedex/entries/gloom.asm"
-VileplumePokedexEntry:: INCLUDE "data/pokedex/entries/vileplume.asm"
-ParasPokedexEntry:: INCLUDE "data/pokedex/entries/paras.asm"
-ParasectPokedexEntry:: INCLUDE "data/pokedex/entries/parasect.asm"
-VenonatPokedexEntry:: INCLUDE "data/pokedex/entries/venonat.asm"
-VenomothPokedexEntry:: INCLUDE "data/pokedex/entries/venomoth.asm"
-DiglettPokedexEntry:: INCLUDE "data/pokedex/entries/diglett.asm"
-DugtrioPokedexEntry:: INCLUDE "data/pokedex/entries/dugtrio.asm"
-MeowthPokedexEntry:: INCLUDE "data/pokedex/entries/meowth.asm"
-PersianPokedexEntry:: INCLUDE "data/pokedex/entries/persian.asm"
-PsyduckPokedexEntry:: INCLUDE "data/pokedex/entries/psyduck.asm"
-GolduckPokedexEntry:: INCLUDE "data/pokedex/entries/golduck.asm"
-MankeyPokedexEntry:: INCLUDE "data/pokedex/entries/mankey.asm"
-PrimeapePokedexEntry:: INCLUDE "data/pokedex/entries/primeape.asm"
-GrowlithePokedexEntry:: INCLUDE "data/pokedex/entries/growlithe.asm"
-ArcaninePokedexEntry:: INCLUDE "data/pokedex/entries/arcanine.asm"
-PoliwagPokedexEntry:: INCLUDE "data/pokedex/entries/poliwag.asm"
-PoliwhirlPokedexEntry:: INCLUDE "data/pokedex/entries/poliwhirl.asm"
-PoliwrathPokedexEntry:: INCLUDE "data/pokedex/entries/poliwrath.asm"
-AbraPokedexEntry:: INCLUDE "data/pokedex/entries/abra.asm"
-KadabraPokedexEntry:: INCLUDE "data/pokedex/entries/kadabra.asm"
diff --git a/data/pokedex/entries_2.asm b/data/pokedex/entries_2.asm
deleted file mode 100644
index 881986d92..000000000
--- a/data/pokedex/entries_2.asm
+++ /dev/null
@@ -1,64 +0,0 @@
-AlakazamPokedexEntry:: INCLUDE "data/pokedex/entries/alakazam.asm"
-MachopPokedexEntry:: INCLUDE "data/pokedex/entries/machop.asm"
-MachokePokedexEntry:: INCLUDE "data/pokedex/entries/machoke.asm"
-MachampPokedexEntry:: INCLUDE "data/pokedex/entries/machamp.asm"
-BellsproutPokedexEntry:: INCLUDE "data/pokedex/entries/bellsprout.asm"
-WeepinbellPokedexEntry:: INCLUDE "data/pokedex/entries/weepinbell.asm"
-VictreebelPokedexEntry:: INCLUDE "data/pokedex/entries/victreebel.asm"
-TentacoolPokedexEntry:: INCLUDE "data/pokedex/entries/tentacool.asm"
-TentacruelPokedexEntry:: INCLUDE "data/pokedex/entries/tentacruel.asm"
-GeodudePokedexEntry:: INCLUDE "data/pokedex/entries/geodude.asm"
-GravelerPokedexEntry:: INCLUDE "data/pokedex/entries/graveler.asm"
-GolemPokedexEntry:: INCLUDE "data/pokedex/entries/golem.asm"
-PonytaPokedexEntry:: INCLUDE "data/pokedex/entries/ponyta.asm"
-RapidashPokedexEntry:: INCLUDE "data/pokedex/entries/rapidash.asm"
-SlowpokePokedexEntry:: INCLUDE "data/pokedex/entries/slowpoke.asm"
-SlowbroPokedexEntry:: INCLUDE "data/pokedex/entries/slowbro.asm"
-MagnemitePokedexEntry:: INCLUDE "data/pokedex/entries/magnemite.asm"
-MagnetonPokedexEntry:: INCLUDE "data/pokedex/entries/magneton.asm"
-FarfetchDPokedexEntry:: INCLUDE "data/pokedex/entries/farfetch_d.asm"
-DoduoPokedexEntry:: INCLUDE "data/pokedex/entries/doduo.asm"
-DodrioPokedexEntry:: INCLUDE "data/pokedex/entries/dodrio.asm"
-SeelPokedexEntry:: INCLUDE "data/pokedex/entries/seel.asm"
-DewgongPokedexEntry:: INCLUDE "data/pokedex/entries/dewgong.asm"
-GrimerPokedexEntry:: INCLUDE "data/pokedex/entries/grimer.asm"
-MukPokedexEntry:: INCLUDE "data/pokedex/entries/muk.asm"
-ShellderPokedexEntry:: INCLUDE "data/pokedex/entries/shellder.asm"
-CloysterPokedexEntry:: INCLUDE "data/pokedex/entries/cloyster.asm"
-GastlyPokedexEntry:: INCLUDE "data/pokedex/entries/gastly.asm"
-HaunterPokedexEntry:: INCLUDE "data/pokedex/entries/haunter.asm"
-GengarPokedexEntry:: INCLUDE "data/pokedex/entries/gengar.asm"
-OnixPokedexEntry:: INCLUDE "data/pokedex/entries/onix.asm"
-DrowzeePokedexEntry:: INCLUDE "data/pokedex/entries/drowzee.asm"
-HypnoPokedexEntry:: INCLUDE "data/pokedex/entries/hypno.asm"
-KrabbyPokedexEntry:: INCLUDE "data/pokedex/entries/krabby.asm"
-KinglerPokedexEntry:: INCLUDE "data/pokedex/entries/kingler.asm"
-VoltorbPokedexEntry:: INCLUDE "data/pokedex/entries/voltorb.asm"
-ElectrodePokedexEntry:: INCLUDE "data/pokedex/entries/electrode.asm"
-ExeggcutePokedexEntry:: INCLUDE "data/pokedex/entries/exeggcute.asm"
-ExeggutorPokedexEntry:: INCLUDE "data/pokedex/entries/exeggutor.asm"
-CubonePokedexEntry:: INCLUDE "data/pokedex/entries/cubone.asm"
-MarowakPokedexEntry:: INCLUDE "data/pokedex/entries/marowak.asm"
-HitmonleePokedexEntry:: INCLUDE "data/pokedex/entries/hitmonlee.asm"
-HitmonchanPokedexEntry:: INCLUDE "data/pokedex/entries/hitmonchan.asm"
-LickitungPokedexEntry:: INCLUDE "data/pokedex/entries/lickitung.asm"
-KoffingPokedexEntry:: INCLUDE "data/pokedex/entries/koffing.asm"
-WeezingPokedexEntry:: INCLUDE "data/pokedex/entries/weezing.asm"
-RhyhornPokedexEntry:: INCLUDE "data/pokedex/entries/rhyhorn.asm"
-RhydonPokedexEntry:: INCLUDE "data/pokedex/entries/rhydon.asm"
-ChanseyPokedexEntry:: INCLUDE "data/pokedex/entries/chansey.asm"
-TangelaPokedexEntry:: INCLUDE "data/pokedex/entries/tangela.asm"
-KangaskhanPokedexEntry:: INCLUDE "data/pokedex/entries/kangaskhan.asm"
-HorseaPokedexEntry:: INCLUDE "data/pokedex/entries/horsea.asm"
-SeadraPokedexEntry:: INCLUDE "data/pokedex/entries/seadra.asm"
-GoldeenPokedexEntry:: INCLUDE "data/pokedex/entries/goldeen.asm"
-SeakingPokedexEntry:: INCLUDE "data/pokedex/entries/seaking.asm"
-StaryuPokedexEntry:: INCLUDE "data/pokedex/entries/staryu.asm"
-StarmiePokedexEntry:: INCLUDE "data/pokedex/entries/starmie.asm"
-MrMimePokedexEntry:: INCLUDE "data/pokedex/entries/mr__mime.asm"
-ScytherPokedexEntry:: INCLUDE "data/pokedex/entries/scyther.asm"
-JynxPokedexEntry:: INCLUDE "data/pokedex/entries/jynx.asm"
-ElectabuzzPokedexEntry:: INCLUDE "data/pokedex/entries/electabuzz.asm"
-MagmarPokedexEntry:: INCLUDE "data/pokedex/entries/magmar.asm"
-PinsirPokedexEntry:: INCLUDE "data/pokedex/entries/pinsir.asm"
-TaurosPokedexEntry:: INCLUDE "data/pokedex/entries/tauros.asm"
diff --git a/data/pokedex/entries_3.asm b/data/pokedex/entries_3.asm
deleted file mode 100644
index 869252baa..000000000
--- a/data/pokedex/entries_3.asm
+++ /dev/null
@@ -1,64 +0,0 @@
-MagikarpPokedexEntry:: INCLUDE "data/pokedex/entries/magikarp.asm"
-GyaradosPokedexEntry:: INCLUDE "data/pokedex/entries/gyarados.asm"
-LaprasPokedexEntry:: INCLUDE "data/pokedex/entries/lapras.asm"
-DittoPokedexEntry:: INCLUDE "data/pokedex/entries/ditto.asm"
-EeveePokedexEntry:: INCLUDE "data/pokedex/entries/eevee.asm"
-VaporeonPokedexEntry:: INCLUDE "data/pokedex/entries/vaporeon.asm"
-JolteonPokedexEntry:: INCLUDE "data/pokedex/entries/jolteon.asm"
-FlareonPokedexEntry:: INCLUDE "data/pokedex/entries/flareon.asm"
-PorygonPokedexEntry:: INCLUDE "data/pokedex/entries/porygon.asm"
-OmanytePokedexEntry:: INCLUDE "data/pokedex/entries/omanyte.asm"
-OmastarPokedexEntry:: INCLUDE "data/pokedex/entries/omastar.asm"
-KabutoPokedexEntry:: INCLUDE "data/pokedex/entries/kabuto.asm"
-KabutopsPokedexEntry:: INCLUDE "data/pokedex/entries/kabutops.asm"
-AerodactylPokedexEntry:: INCLUDE "data/pokedex/entries/aerodactyl.asm"
-SnorlaxPokedexEntry:: INCLUDE "data/pokedex/entries/snorlax.asm"
-ArticunoPokedexEntry:: INCLUDE "data/pokedex/entries/articuno.asm"
-ZapdosPokedexEntry:: INCLUDE "data/pokedex/entries/zapdos.asm"
-MoltresPokedexEntry:: INCLUDE "data/pokedex/entries/moltres.asm"
-DratiniPokedexEntry:: INCLUDE "data/pokedex/entries/dratini.asm"
-DragonairPokedexEntry:: INCLUDE "data/pokedex/entries/dragonair.asm"
-DragonitePokedexEntry:: INCLUDE "data/pokedex/entries/dragonite.asm"
-MewtwoPokedexEntry:: INCLUDE "data/pokedex/entries/mewtwo.asm"
-MewPokedexEntry:: INCLUDE "data/pokedex/entries/mew.asm"
-ChikoritaPokedexEntry:: INCLUDE "data/pokedex/entries/chikorita.asm"
-BayleefPokedexEntry:: INCLUDE "data/pokedex/entries/bayleef.asm"
-MeganiumPokedexEntry:: INCLUDE "data/pokedex/entries/meganium.asm"
-CyndaquilPokedexEntry:: INCLUDE "data/pokedex/entries/cyndaquil.asm"
-QuilavaPokedexEntry:: INCLUDE "data/pokedex/entries/quilava.asm"
-TyphlosionPokedexEntry:: INCLUDE "data/pokedex/entries/typhlosion.asm"
-TotodilePokedexEntry:: INCLUDE "data/pokedex/entries/totodile.asm"
-CroconawPokedexEntry:: INCLUDE "data/pokedex/entries/croconaw.asm"
-FeraligatrPokedexEntry:: INCLUDE "data/pokedex/entries/feraligatr.asm"
-SentretPokedexEntry:: INCLUDE "data/pokedex/entries/sentret.asm"
-FurretPokedexEntry:: INCLUDE "data/pokedex/entries/furret.asm"
-HoothootPokedexEntry:: INCLUDE "data/pokedex/entries/hoothoot.asm"
-NoctowlPokedexEntry:: INCLUDE "data/pokedex/entries/noctowl.asm"
-LedybaPokedexEntry:: INCLUDE "data/pokedex/entries/ledyba.asm"
-LedianPokedexEntry:: INCLUDE "data/pokedex/entries/ledian.asm"
-SpinarakPokedexEntry:: INCLUDE "data/pokedex/entries/spinarak.asm"
-AriadosPokedexEntry:: INCLUDE "data/pokedex/entries/ariados.asm"
-CrobatPokedexEntry:: INCLUDE "data/pokedex/entries/crobat.asm"
-ChinchouPokedexEntry:: INCLUDE "data/pokedex/entries/chinchou.asm"
-LanturnPokedexEntry:: INCLUDE "data/pokedex/entries/lanturn.asm"
-PichuPokedexEntry:: INCLUDE "data/pokedex/entries/pichu.asm"
-CleffaPokedexEntry:: INCLUDE "data/pokedex/entries/cleffa.asm"
-IgglybuffPokedexEntry:: INCLUDE "data/pokedex/entries/igglybuff.asm"
-TogepiPokedexEntry:: INCLUDE "data/pokedex/entries/togepi.asm"
-TogeticPokedexEntry:: INCLUDE "data/pokedex/entries/togetic.asm"
-NatuPokedexEntry:: INCLUDE "data/pokedex/entries/natu.asm"
-XatuPokedexEntry:: INCLUDE "data/pokedex/entries/xatu.asm"
-MareepPokedexEntry:: INCLUDE "data/pokedex/entries/mareep.asm"
-FlaaffyPokedexEntry:: INCLUDE "data/pokedex/entries/flaaffy.asm"
-AmpharosPokedexEntry:: INCLUDE "data/pokedex/entries/ampharos.asm"
-BellossomPokedexEntry:: INCLUDE "data/pokedex/entries/bellossom.asm"
-MarillPokedexEntry:: INCLUDE "data/pokedex/entries/marill.asm"
-AzumarillPokedexEntry:: INCLUDE "data/pokedex/entries/azumarill.asm"
-SudowoodoPokedexEntry:: INCLUDE "data/pokedex/entries/sudowoodo.asm"
-PolitoedPokedexEntry:: INCLUDE "data/pokedex/entries/politoed.asm"
-HoppipPokedexEntry:: INCLUDE "data/pokedex/entries/hoppip.asm"
-SkiploomPokedexEntry:: INCLUDE "data/pokedex/entries/skiploom.asm"
-JumpluffPokedexEntry:: INCLUDE "data/pokedex/entries/jumpluff.asm"
-AipomPokedexEntry:: INCLUDE "data/pokedex/entries/aipom.asm"
-SunkernPokedexEntry:: INCLUDE "data/pokedex/entries/sunkern.asm"
-SunfloraPokedexEntry:: INCLUDE "data/pokedex/entries/sunflora.asm"
diff --git a/data/pokedex/entries_4.asm b/data/pokedex/entries_4.asm
deleted file mode 100644
index 240f87e3e..000000000
--- a/data/pokedex/entries_4.asm
+++ /dev/null
@@ -1,59 +0,0 @@
-YanmaPokedexEntry:: INCLUDE "data/pokedex/entries/yanma.asm"
-WooperPokedexEntry:: INCLUDE "data/pokedex/entries/wooper.asm"
-QuagsirePokedexEntry:: INCLUDE "data/pokedex/entries/quagsire.asm"
-EspeonPokedexEntry:: INCLUDE "data/pokedex/entries/espeon.asm"
-UmbreonPokedexEntry:: INCLUDE "data/pokedex/entries/umbreon.asm"
-MurkrowPokedexEntry:: INCLUDE "data/pokedex/entries/murkrow.asm"
-SlowkingPokedexEntry:: INCLUDE "data/pokedex/entries/slowking.asm"
-MisdreavusPokedexEntry:: INCLUDE "data/pokedex/entries/misdreavus.asm"
-UnownPokedexEntry:: INCLUDE "data/pokedex/entries/unown.asm"
-WobbuffetPokedexEntry:: INCLUDE "data/pokedex/entries/wobbuffet.asm"
-GirafarigPokedexEntry:: INCLUDE "data/pokedex/entries/girafarig.asm"
-PinecoPokedexEntry:: INCLUDE "data/pokedex/entries/pineco.asm"
-ForretressPokedexEntry:: INCLUDE "data/pokedex/entries/forretress.asm"
-DunsparcePokedexEntry:: INCLUDE "data/pokedex/entries/dunsparce.asm"
-GligarPokedexEntry:: INCLUDE "data/pokedex/entries/gligar.asm"
-SteelixPokedexEntry:: INCLUDE "data/pokedex/entries/steelix.asm"
-SnubbullPokedexEntry:: INCLUDE "data/pokedex/entries/snubbull.asm"
-GranbullPokedexEntry:: INCLUDE "data/pokedex/entries/granbull.asm"
-QwilfishPokedexEntry:: INCLUDE "data/pokedex/entries/qwilfish.asm"
-ScizorPokedexEntry:: INCLUDE "data/pokedex/entries/scizor.asm"
-ShucklePokedexEntry:: INCLUDE "data/pokedex/entries/shuckle.asm"
-HeracrossPokedexEntry:: INCLUDE "data/pokedex/entries/heracross.asm"
-SneaselPokedexEntry:: INCLUDE "data/pokedex/entries/sneasel.asm"
-TeddiursaPokedexEntry:: INCLUDE "data/pokedex/entries/teddiursa.asm"
-UrsaringPokedexEntry:: INCLUDE "data/pokedex/entries/ursaring.asm"
-SlugmaPokedexEntry:: INCLUDE "data/pokedex/entries/slugma.asm"
-MagcargoPokedexEntry:: INCLUDE "data/pokedex/entries/magcargo.asm"
-SwinubPokedexEntry:: INCLUDE "data/pokedex/entries/swinub.asm"
-PiloswinePokedexEntry:: INCLUDE "data/pokedex/entries/piloswine.asm"
-CorsolaPokedexEntry:: INCLUDE "data/pokedex/entries/corsola.asm"
-RemoraidPokedexEntry:: INCLUDE "data/pokedex/entries/remoraid.asm"
-OctilleryPokedexEntry:: INCLUDE "data/pokedex/entries/octillery.asm"
-DelibirdPokedexEntry:: INCLUDE "data/pokedex/entries/delibird.asm"
-MantinePokedexEntry:: INCLUDE "data/pokedex/entries/mantine.asm"
-SkarmoryPokedexEntry:: INCLUDE "data/pokedex/entries/skarmory.asm"
-HoundourPokedexEntry:: INCLUDE "data/pokedex/entries/houndour.asm"
-HoundoomPokedexEntry:: INCLUDE "data/pokedex/entries/houndoom.asm"
-KingdraPokedexEntry:: INCLUDE "data/pokedex/entries/kingdra.asm"
-PhanpyPokedexEntry:: INCLUDE "data/pokedex/entries/phanpy.asm"
-DonphanPokedexEntry:: INCLUDE "data/pokedex/entries/donphan.asm"
-Porygon2PokedexEntry:: INCLUDE "data/pokedex/entries/porygon2.asm"
-StantlerPokedexEntry:: INCLUDE "data/pokedex/entries/stantler.asm"
-SmearglePokedexEntry:: INCLUDE "data/pokedex/entries/smeargle.asm"
-TyroguePokedexEntry:: INCLUDE "data/pokedex/entries/tyrogue.asm"
-HitmontopPokedexEntry:: INCLUDE "data/pokedex/entries/hitmontop.asm"
-SmoochumPokedexEntry:: INCLUDE "data/pokedex/entries/smoochum.asm"
-ElekidPokedexEntry:: INCLUDE "data/pokedex/entries/elekid.asm"
-MagbyPokedexEntry:: INCLUDE "data/pokedex/entries/magby.asm"
-MiltankPokedexEntry:: INCLUDE "data/pokedex/entries/miltank.asm"
-BlisseyPokedexEntry:: INCLUDE "data/pokedex/entries/blissey.asm"
-RaikouPokedexEntry:: INCLUDE "data/pokedex/entries/raikou.asm"
-EnteiPokedexEntry:: INCLUDE "data/pokedex/entries/entei.asm"
-SuicunePokedexEntry:: INCLUDE "data/pokedex/entries/suicune.asm"
-LarvitarPokedexEntry:: INCLUDE "data/pokedex/entries/larvitar.asm"
-PupitarPokedexEntry:: INCLUDE "data/pokedex/entries/pupitar.asm"
-TyranitarPokedexEntry:: INCLUDE "data/pokedex/entries/tyranitar.asm"
-LugiaPokedexEntry:: INCLUDE "data/pokedex/entries/lugia.asm"
-HoOhPokedexEntry:: INCLUDE "data/pokedex/entries/ho_oh.asm"
-CelebiPokedexEntry:: INCLUDE "data/pokedex/entries/celebi.asm"
diff --git a/data/pokedex/entry_pointers.asm b/data/pokedex/entry_pointers.asm
index 5a432e661..c4ddc7280 100644
--- a/data/pokedex/entry_pointers.asm
+++ b/data/pokedex/entry_pointers.asm
@@ -1,77 +1,5 @@
-GetDexEntryPointer: ; 44333
-; return dex entry pointer b:de
- push hl
- ld hl, PokedexDataPointerTable
- ld a, b
- dec a
- ld d, 0
- ld e, a
- add hl, de
- add hl, de
- ld e, [hl]
- inc hl
- ld d, [hl]
- push de
- rlca
- rlca
- and $3
- ld hl, .PokedexEntryBanks
- ld d, 0
- ld e, a
- add hl, de
- ld b, [hl]
- pop de
- pop hl
- ret
-
-.PokedexEntryBanks: ; 44351
-
-GLOBAL PokedexEntries1
-GLOBAL PokedexEntries2
-GLOBAL PokedexEntries3
-GLOBAL PokedexEntries4
-
- db BANK(PokedexEntries1)
- db BANK(PokedexEntries2)
- db BANK(PokedexEntries3)
- db BANK(PokedexEntries4)
-
-GetDexEntryPagePointer: ; 44355
- call GetDexEntryPointer ; b:de
- push hl
- ld h, d
- ld l, e
-; skip species name
-.loop1
- ld a, b
- call GetFarByte
- inc hl
- cp "@"
- jr nz, .loop1
-; skip height and weight
-rept 4
- inc hl
-endr
-; if c != 1: skip entry
- dec c
- jr z, .done
-; skip entry
-.loop2
- ld a, b
- call GetFarByte
- inc hl
- cp "@"
- jr nz, .loop2
-
-.done
- ld d, h
- ld e, l
- pop hl
- ret
-
PokedexDataPointerTable: ; 0x44378
-; Pointers to all the Pokedex entries.
-
+; entries correspond to constants/pokemon_constants.asm
dw BulbasaurPokedexEntry
dw IvysaurPokedexEntry
dw VenusaurPokedexEntry
@@ -323,3 +251,4 @@ PokedexDataPointerTable: ; 0x44378
dw LugiaPokedexEntry
dw HoOhPokedexEntry
dw CelebiPokedexEntry
+; 0x4456e
diff --git a/data/pokedex/order_alpha.asm b/data/pokedex/order_alpha.asm
index bab0a981d..8fcb0acd1 100644
--- a/data/pokedex/order_alpha.asm
+++ b/data/pokedex/order_alpha.asm
@@ -1,5 +1,6 @@
-; Every Pokemon sorted alphabetically by name.
+; Every Pokémon sorted alphabetically by name.
+AlphabeticalPokedexOrder: ; 0x40c65
db ABRA
db AERODACTYL
db AIPOM
@@ -251,3 +252,4 @@
db YANMA
db ZAPDOS
db ZUBAT
+; 0x40d60
diff --git a/data/pokedex/order_new.asm b/data/pokedex/order_new.asm
index a98a658cd..bf7e3d298 100644
--- a/data/pokedex/order_new.asm
+++ b/data/pokedex/order_new.asm
@@ -1,5 +1,6 @@
-; Every Pokemon sorted in New Pokedex Order.
+; Every Pokémon sorted in New Pokédex Order.
+NewPokedexOrder: ; 0x40d60
db CHIKORITA
db BAYLEEF
db MEGANIUM
@@ -251,3 +252,4 @@
db MEWTWO
db MEW
db CELEBI
+; 0x40e5b
diff --git a/data/time_capsule/catch_rate_items.asm b/data/time_capsule/catch_rate_items.asm
index 1db3818f8..fbab7d434 100644
--- a/data/time_capsule/catch_rate_items.asm
+++ b/data/time_capsule/catch_rate_items.asm
@@ -2,6 +2,7 @@
; catch rate as an item. However, if the catch rate appears in this table, the
; item associated with the table entry is used instead.
+TimeCapsule_CatchRateItems: ; 28785
db ITEM_19, LEFTOVERS
db ITEM_2D, BITTER_BERRY
db ITEM_32, GOLD_BERRY
@@ -15,3 +16,4 @@
db ITEM_FA, BERRY
db -1, BERRY
db 0 ; end
+; 2879e
diff --git a/data/time_capsule/mon_order.asm b/data/time_capsule/mon_order.asm
index 2769794e6..e40ba0273 100644
--- a/data/time_capsule/mon_order.asm
+++ b/data/time_capsule/mon_order.asm
@@ -1,3 +1,4 @@
+Pokered_MonIndices: ; fb91c
db RHYDON
db KANGASKHAN
db NIDORAN_M
@@ -251,3 +252,4 @@
db QWILFISH
db WOBBUFFET
db WOBBUFFET
+; fba18
diff --git a/data/time_capsule/special_stats.asm b/data/time_capsule/special_stats.asm
index 7da90e1c9..9998692ab 100644
--- a/data/time_capsule/special_stats.asm
+++ b/data/time_capsule/special_stats.asm
@@ -1,4 +1,6 @@
; The original base Special stat for each Pokémon from Red/Blue
+
+KantoMonSpecials: ; fb656
db 65 ; BULBASAUR
db 80 ; IVYSAUR
db 100 ; VENUSAUR
@@ -150,3 +152,4 @@
db 100 ; DRAGONITE
db 154 ; MEWTWO
db 100 ; MEW
+; fb6ed
diff --git a/data/wild/bug_contest_mons.asm b/data/wild/bug_contest_mons.asm
index 1b74fb3ee..c3cdeaa8a 100644
--- a/data/wild/bug_contest_mons.asm
+++ b/data/wild/bug_contest_mons.asm
@@ -1,3 +1,4 @@
+ContestMons: ; 97d87
; %, species, min, max
db 20, CATERPIE, 7, 18
db 20, WEEDLE, 7, 18
@@ -10,3 +11,4 @@
db 5, SCYTHER, 13, 14
db 5, PINSIR, 13, 14
db -1, VENOMOTH, 30, 40
+; 97db3
diff --git a/data/wild/johto_grass.asm b/data/wild/johto_grass.asm
index f241dd5d8..be435b048 100644
--- a/data/wild/johto_grass.asm
+++ b/data/wild/johto_grass.asm
@@ -1,5 +1,7 @@
; Johto Pokémon in grass
+JohtoGrassWildMons: ; 0x2a5e9
+
map SPROUT_TOWER_2F
db 2 percent, 2 percent, 2 percent ; encounter rates: morn/day/nite
; morn
diff --git a/data/wild/johto_water.asm b/data/wild/johto_water.asm
index a4d957ef0..d6e11c3a0 100644
--- a/data/wild/johto_water.asm
+++ b/data/wild/johto_water.asm
@@ -1,5 +1,7 @@
; Johto Pokémon in water
+JohtoWaterWildMons: ; 0x2b11d
+
map RUINS_OF_ALPH_OUTSIDE
db 2 percent ; encounter rate
db 15, WOOPER
diff --git a/data/wild/kanto_grass.asm b/data/wild/kanto_grass.asm
index e06627d19..415514748 100644
--- a/data/wild/kanto_grass.asm
+++ b/data/wild/kanto_grass.asm
@@ -1,5 +1,7 @@
; Kanto Pokémon in grass
+KantoGrassWildMons: ; 0x2b274
+
map DIGLETTS_CAVE
db 4 percent, 2 percent, 8 percent ; encounter rates: morn/day/nite
; morn
diff --git a/data/wild/kanto_water.asm b/data/wild/kanto_water.asm
index 558d56a26..71fab48fb 100644
--- a/data/wild/kanto_water.asm
+++ b/data/wild/kanto_water.asm
@@ -1,5 +1,7 @@
; Kanto Pokémon in water
+KantoWaterWildMons: ; 0x2b7f7
+
map TOHJO_FALLS
db 4 percent ; encounter rate
db 20, GOLDEEN
diff --git a/data/wild/roammon_maps.asm b/data/wild/roammon_maps.asm
index 403ebef25..ee213bff5 100644
--- a/data/wild/roammon_maps.asm
+++ b/data/wild/roammon_maps.asm
@@ -12,6 +12,7 @@ endr
db 0
endm
+RoamMaps: ; 2a40f
roam_map ROUTE_29, 2, ROUTE_30, ROUTE_46
roam_map ROUTE_30, 2, ROUTE_29, ROUTE_31
roam_map ROUTE_31, 3, ROUTE_30, ROUTE_32, ROUTE_36
@@ -29,3 +30,4 @@ endm
roam_map ROUTE_45, 2, ROUTE_44, ROUTE_46
roam_map ROUTE_46, 2, ROUTE_45, ROUTE_29
db -1 ; end
+; 2a4a0
diff --git a/data/wild/swarm_grass.asm b/data/wild/swarm_grass.asm
index 61d0d8532..a26417f64 100644
--- a/data/wild/swarm_grass.asm
+++ b/data/wild/swarm_grass.asm
@@ -1,4 +1,6 @@
-; swarms in grass
+; Pokémon swarms in grass
+
+SwarmGrassWildMons: ; 0x2b8d0
; Dunsparce swarm
map DARK_CAVE_VIOLET_ENTRANCE
diff --git a/data/wild/swarm_water.asm b/data/wild/swarm_water.asm
index 67751b2bd..3f69af512 100644
--- a/data/wild/swarm_water.asm
+++ b/data/wild/swarm_water.asm
@@ -1,4 +1,6 @@
-; swarms in water
+; Pokémon swarms in water
+
+SwarmWaterWildMons: ; 0x2b92f
; No swarms encountered while surfing in Crystal
diff --git a/engine/events_2.asm b/engine/events_2.asm
index 5a89f5e68..e141b6638 100644
--- a/engine/events_2.asm
+++ b/engine/events_2.asm
@@ -253,9 +253,9 @@ TryWildEncounter_BugContest: ; 97d64
ret
; 97d87
-ContestMons: ; 97d87
+
INCLUDE "data/wild/bug_contest_mons.asm"
-; 97db3
+
DoBikeStep:: ; 97db3
nop
diff --git a/engine/link.asm b/engine/link.asm
index b57e49e1e..7bca8b891 100755
--- a/engine/link.asm
+++ b/engine/link.asm
@@ -1112,7 +1112,7 @@ TimeCapsule_ReplaceTeruSama: ; 28771
and a
ret z
push hl
- ld hl, .TimeCapsuleAlt
+ ld hl, TimeCapsule_CatchRateItems
.loop
ld a, [hli]
and a
@@ -1129,9 +1129,9 @@ TimeCapsule_ReplaceTeruSama: ; 28771
pop hl
ret
-.TimeCapsuleAlt: ; 28785
+
INCLUDE "data/time_capsule/catch_rate_items.asm"
-; 2879e
+
Link_CopyOTData: ; 2879e
.loop
diff --git a/engine/mysterygift2.asm b/engine/mysterygift2.asm
index e2ed30f3d..dc0baf39c 100755
--- a/engine/mysterygift2.asm
+++ b/engine/mysterygift2.asm
@@ -146,12 +146,7 @@ MysteryGiftFallbackItem: ; 2c722 (b:4722)
ret
; 2c725 (b:4725)
-MysteryGiftItems: ; 2c725
+
INCLUDE "data/mystery_gift/items.asm"
-MysteryGiftItemsEnd
-; 2c74a
-MysteryGiftDecos: ; 2c74a
INCLUDE "data/mystery_gift/decos.asm"
-MysteryGiftDecosEnd
-; 2c76f
diff --git a/engine/pokedex.asm b/engine/pokedex.asm
index 282b9ca91..c60396a40 100644
--- a/engine/pokedex.asm
+++ b/engine/pokedex.asm
@@ -1708,12 +1708,12 @@ Pokedex_ABCMode: ; 40c30
.doneabc
ret
-AlphabeticalPokedexOrder: ; 0x40c65
+
INCLUDE "data/pokedex/order_alpha.asm"
-NewPokedexOrder: ; 0x40d60
INCLUDE "data/pokedex/order_new.asm"
+
Pokedex_DisplayModeDescription: ; 40e5b
xor a
ld [hBGMapMode], a
diff --git a/engine/pokedex_2.asm b/engine/pokedex_2.asm
new file mode 100644
index 000000000..83b366017
--- /dev/null
+++ b/engine/pokedex_2.asm
@@ -0,0 +1,286 @@
+AnimateDexSearchSlowpoke: ; 441cf
+ ld hl, .FrameIDs
+ ld b, 25
+.loop
+ ld a, [hli]
+
+ ; Wrap around
+ cp $fe
+ jr nz, .ok
+ ld hl, .FrameIDs
+ ld a, [hli]
+.ok
+
+ ld [wDexSearchSlowpokeFrame], a
+ ld a, [hli]
+ ld c, a
+ push bc
+ push hl
+ call DoDexSearchSlowpokeFrame
+ pop hl
+ pop bc
+ call DelayFrames
+ dec b
+ jr nz, .loop
+ xor a
+ ld [wDexSearchSlowpokeFrame], a
+ call DoDexSearchSlowpokeFrame
+ ld c, 32
+ call DelayFrames
+ ret
+
+.FrameIDs: ; 441fc
+ ; frame ID, duration
+ db 0, 7
+ db 1, 7
+ db 2, 7
+ db 3, 7
+ db 4, 7
+ db -2
+
+DoDexSearchSlowpokeFrame: ; 44207
+ ld a, [wDexSearchSlowpokeFrame]
+ ld hl, .SpriteData
+ ld de, Sprites
+.loop
+ ld a, [hli]
+ cp -1
+ ret z
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [wDexSearchSlowpokeFrame]
+ ld b, a
+ add a
+ add b
+ add [hl]
+ inc hl
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ inc de
+ jr .loop
+
+.SpriteData: ; 44228
+ dsprite 11, 0, 9, 0, $00, $00
+ dsprite 11, 0, 10, 0, $01, $00
+ dsprite 11, 0, 11, 0, $02, $00
+ dsprite 12, 0, 9, 0, $10, $00
+ dsprite 12, 0, 10, 0, $11, $00
+ dsprite 12, 0, 11, 0, $12, $00
+ dsprite 13, 0, 9, 0, $20, $00
+ dsprite 13, 0, 10, 0, $21, $00
+ dsprite 13, 0, 11, 0, $22, $00
+ db -1
+
+DisplayDexEntry: ; 4424d
+ call GetPokemonName
+ hlcoord 9, 3
+ call PlaceString ; mon species
+ ld a, [wd265]
+ ld b, a
+ call GetDexEntryPointer
+ ld a, b
+ push af
+ hlcoord 9, 5
+ call FarString ; dex species
+ ld h, b
+ ld l, c
+ push de
+; Print dex number
+ hlcoord 2, 8
+ ld a, $5c ; No
+ ld [hli], a
+ ld a, $5d ; .
+ ld [hli], a
+ ld de, wd265
+ lb bc, PRINTNUM_LEADINGZEROS | 1, 3
+ call PrintNum
+; Check to see if we caught it. Get out of here if we haven't.
+ ld a, [wd265]
+ dec a
+ call CheckCaughtMon
+ pop hl
+ pop bc
+ ret z
+; Get the height of the Pokemon.
+ ld a, [CurPartySpecies]
+ ld [CurSpecies], a
+ inc hl
+ ld a, b
+ push af
+ push hl
+ call GetFarHalfword
+ ld d, l
+ ld e, h
+ pop hl
+ inc hl
+ inc hl
+ ld a, d
+ or e
+ jr z, .skip_height
+ push hl
+ push de
+ ld hl, sp+$0
+ ld d, h
+ ld e, l
+ hlcoord 12, 7
+ lb bc, 2, PRINTNUM_MONEY | 4
+ call PrintNum
+ hlcoord 14, 7
+ ld [hl], $5e ; ft symbol
+ pop af
+ pop hl
+
+.skip_height
+ pop af
+ push af
+ inc hl
+ push hl
+ dec hl
+ call GetFarHalfword
+ ld d, l
+ ld e, h
+ ld a, e
+ or d
+ jr z, .skip_weight
+ push de
+ ld hl, sp+$0
+ ld d, h
+ ld e, l
+ hlcoord 11, 9
+ lb bc, 2, PRINTNUM_RIGHTALIGN | 5
+ call PrintNum
+ pop de
+
+.skip_weight
+; Page 1
+ lb bc, 5, SCREEN_WIDTH - 2
+ hlcoord 2, 11
+ call ClearBox
+ hlcoord 1, 10
+ ld bc, SCREEN_WIDTH - 1
+ ld a, $61 ; horizontal divider
+ call ByteFill
+ ; page number
+ hlcoord 1, 9
+ ld [hl], $55
+ inc hl
+ ld [hl], $55
+ hlcoord 1, 10
+ ld [hl], $56 ; P.
+ inc hl
+ ld [hl], $57 ; 1
+ pop de
+ inc de
+ pop af
+ hlcoord 2, 11
+ push af
+ call FarString
+ pop bc
+ ld a, [wPokedexStatus]
+ or a
+ ret z
+
+; Page 2
+ push bc
+ push de
+ lb bc, 5, SCREEN_WIDTH - 2
+ hlcoord 2, 11
+ call ClearBox
+ hlcoord 1, 10
+ ld bc, SCREEN_WIDTH - 1
+ ld a, $61
+ call ByteFill
+ ; page number
+ hlcoord 1, 9
+ ld [hl], $55
+ inc hl
+ ld [hl], $55
+ hlcoord 1, 10
+ ld [hl], $56 ; P.
+ inc hl
+ ld [hl], $58 ; 2
+ pop de
+ inc de
+ pop af
+ hlcoord 2, 11
+ call FarString
+ ret
+
+String_44331: ; 44331
+ db "#@"
+
+GetDexEntryPointer: ; 44333
+; return dex entry pointer b:de
+ push hl
+ ld hl, PokedexDataPointerTable
+ ld a, b
+ dec a
+ ld d, 0
+ ld e, a
+ add hl, de
+ add hl, de
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ push de
+ rlca
+ rlca
+ and $3
+ ld hl, .PokedexEntryBanks
+ ld d, 0
+ ld e, a
+ add hl, de
+ ld b, [hl]
+ pop de
+ pop hl
+ ret
+
+.PokedexEntryBanks: ; 44351
+
+GLOBAL PokedexEntries1
+GLOBAL PokedexEntries2
+GLOBAL PokedexEntries3
+GLOBAL PokedexEntries4
+
+ db BANK(PokedexEntries1)
+ db BANK(PokedexEntries2)
+ db BANK(PokedexEntries3)
+ db BANK(PokedexEntries4)
+
+GetDexEntryPagePointer: ; 44355
+ call GetDexEntryPointer ; b:de
+ push hl
+ ld h, d
+ ld l, e
+; skip species name
+.loop1
+ ld a, b
+ call GetFarByte
+ inc hl
+ cp "@"
+ jr nz, .loop1
+; skip height and weight
+rept 4
+ inc hl
+endr
+; if c != 1: skip entry
+ dec c
+ jr z, .done
+; skip entry
+.loop2
+ ld a, b
+ call GetFarByte
+ inc hl
+ cp "@"
+ jr nz, .loop2
+
+.done
+ ld d, h
+ ld e, l
+ pop hl
+ ret
diff --git a/engine/time_capsule/conversion.asm b/engine/time_capsule/conversion.asm
index 6f17398fd..eb8896355 100755
--- a/engine/time_capsule/conversion.asm
+++ b/engine/time_capsule/conversion.asm
@@ -144,9 +144,8 @@ PlaceTradePartnerNamesAndParty: ; fb60d
jr .loop
; fb656
-KantoMonSpecials: ; fb656
+
INCLUDE "data/time_capsule/special_stats.asm"
-; fb6ed
INCLUDE "event/name_rater.asm"
@@ -274,6 +273,5 @@ ConvertMon_1to2: ; fb908
ret
; fb91c
-Pokered_MonIndices: ; fb91c
+
INCLUDE "data/time_capsule/mon_order.asm"
-; fba18
diff --git a/engine/wildmons.asm b/engine/wildmons.asm
index 8fab382b7..1f6bb4065 100755
--- a/engine/wildmons.asm
+++ b/engine/wildmons.asm
@@ -784,9 +784,9 @@ _BackUpMapIndices: ; 2a3f6
ret
; 2a40f
-RoamMaps: ; 2a40f
+
INCLUDE "data/wild/roammon_maps.asm"
-; 2a4a0
+
ValidateTempWildMonSpecies: ; 2a4a0
; Due to a development oversight, this function is called with the wild Pokemon's level, not its species, in a.
@@ -1000,20 +1000,9 @@ RandomPhoneMon: ; 2a567
; 2a5e9
-JohtoGrassWildMons: ; 0x2a5e9
INCLUDE "data/wild/johto_grass.asm"
-
-JohtoWaterWildMons: ; 0x2b11d
INCLUDE "data/wild/johto_water.asm"
-
-KantoGrassWildMons: ; 0x2b274
INCLUDE "data/wild/kanto_grass.asm"
-
-KantoWaterWildMons: ; 0x2b7f7
INCLUDE "data/wild/kanto_water.asm"
-
-SwarmGrassWildMons: ; 0x2b8d0
INCLUDE "data/wild/swarm_grass.asm"
-
-SwarmWaterWildMons: ; 0x2b92f
INCLUDE "data/wild/swarm_water.asm"
diff --git a/main.asm b/main.asm
index a8566f7e0..eab1ee3ca 100644
--- a/main.asm
+++ b/main.asm
@@ -1,5 +1,6 @@
INCLUDE "includes.asm"
+
SECTION "bank1", ROMX
PlaceWaitingText:: ; 4000
@@ -246,6 +247,7 @@ Predef1: ; 747a
; not used
ret
+
SECTION "bank2", ROMX
INCLUDE "engine/player_object.asm"
@@ -253,6 +255,7 @@ INCLUDE "engine/sine.asm"
INCLUDE "engine/predef.asm"
INCLUDE "engine/color.asm"
+
SECTION "bank3", ROMX
CheckTime:: ; c000
@@ -380,6 +383,7 @@ KnowsMove: ; f9ea
text_jump UnknownText_0x1c5ea8
db "@"
+
SECTION "bank4", ROMX
INCLUDE "engine/pack.asm"
@@ -603,6 +607,7 @@ root set 1
root set root+1
endr
+
SECTION "bank5", ROMX
INCLUDE "engine/rtc.asm"
@@ -628,6 +633,7 @@ SECTION "bank8", ROMX
INCLUDE "engine/clock_reset.asm"
+
SECTION "bank9", ROMX
StringBufferPointers:: ; 24000
@@ -1147,6 +1153,7 @@ Kurt_SelectQuantity_InterpretJoypad: ; 27a28
ld b, a
ret
+
SECTION "bankA", ROMX
INCLUDE "engine/link.asm"
@@ -1171,6 +1178,7 @@ INCBIN "gfx/player/chris_back.2bpp.lz"
DudeBackpic: ; 2bbaa
INCBIN "gfx/battle/dude.2bpp.lz"
+
SECTION "bankB", ROMX
INCLUDE "battle/trainer_huds.asm"
@@ -1606,10 +1614,12 @@ PlaceGraphic: ; 2ef6e
jr nz, .x2
ret
+
SECTION "Effect Commands", ROMX
INCLUDE "battle/effect_commands.asm"
+
SECTION "Enemy Trainers", ROMX
INCLUDE "battle/ai/items.asm"
@@ -1690,12 +1700,14 @@ INCLUDE "trainers/trainer_pointers.asm"
INCLUDE "trainers/trainers.asm"
+
SECTION "Battle Core", ROMX
INCLUDE "battle/core.asm"
INCLUDE "battle/effect_command_pointers.asm"
+
SECTION "bank10", ROMX
INCLUDE "engine/pokedex.asm"
@@ -1704,232 +1716,20 @@ INCLUDE "battle/moves/moves.asm"
INCLUDE "engine/evolve.asm"
+
SECTION "bank11", ROMX
INCLUDE "engine/fruit_trees.asm"
INCLUDE "battle/ai/move.asm"
-AnimateDexSearchSlowpoke: ; 441cf
- ld hl, .FrameIDs
- ld b, 25
-.loop
- ld a, [hli]
-
- ; Wrap around
- cp $fe
- jr nz, .ok
- ld hl, .FrameIDs
- ld a, [hli]
-.ok
-
- ld [wDexSearchSlowpokeFrame], a
- ld a, [hli]
- ld c, a
- push bc
- push hl
- call DoDexSearchSlowpokeFrame
- pop hl
- pop bc
- call DelayFrames
- dec b
- jr nz, .loop
- xor a
- ld [wDexSearchSlowpokeFrame], a
- call DoDexSearchSlowpokeFrame
- ld c, 32
- call DelayFrames
- ret
-
-.FrameIDs: ; 441fc
- ; frame ID, duration
- db 0, 7
- db 1, 7
- db 2, 7
- db 3, 7
- db 4, 7
- db -2
-
-DoDexSearchSlowpokeFrame: ; 44207
- ld a, [wDexSearchSlowpokeFrame]
- ld hl, .SpriteData
- ld de, Sprites
-.loop
- ld a, [hli]
- cp -1
- ret z
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- ld a, [wDexSearchSlowpokeFrame]
- ld b, a
- add a
- add b
- add [hl]
- inc hl
- ld [de], a
- inc de
- ld a, [hli]
- ld [de], a
- inc de
- jr .loop
-
-.SpriteData: ; 44228
- dsprite 11, 0, 9, 0, $00, $00
- dsprite 11, 0, 10, 0, $01, $00
- dsprite 11, 0, 11, 0, $02, $00
- dsprite 12, 0, 9, 0, $10, $00
- dsprite 12, 0, 10, 0, $11, $00
- dsprite 12, 0, 11, 0, $12, $00
- dsprite 13, 0, 9, 0, $20, $00
- dsprite 13, 0, 10, 0, $21, $00
- dsprite 13, 0, 11, 0, $22, $00
- db -1
-
-DisplayDexEntry: ; 4424d
- call GetPokemonName
- hlcoord 9, 3
- call PlaceString ; mon species
- ld a, [wd265]
- ld b, a
- call GetDexEntryPointer
- ld a, b
- push af
- hlcoord 9, 5
- call FarString ; dex species
- ld h, b
- ld l, c
- push de
-; Print dex number
- hlcoord 2, 8
- ld a, $5c ; No
- ld [hli], a
- ld a, $5d ; .
- ld [hli], a
- ld de, wd265
- lb bc, PRINTNUM_LEADINGZEROS | 1, 3
- call PrintNum
-; Check to see if we caught it. Get out of here if we haven't.
- ld a, [wd265]
- dec a
- call CheckCaughtMon
- pop hl
- pop bc
- ret z
-; Get the height of the Pokemon.
- ld a, [CurPartySpecies]
- ld [CurSpecies], a
- inc hl
- ld a, b
- push af
- push hl
- call GetFarHalfword
- ld d, l
- ld e, h
- pop hl
- inc hl
- inc hl
- ld a, d
- or e
- jr z, .skip_height
- push hl
- push de
- ld hl, sp+$0
- ld d, h
- ld e, l
- hlcoord 12, 7
- lb bc, 2, PRINTNUM_MONEY | 4
- call PrintNum
- hlcoord 14, 7
- ld [hl], $5e ; ft symbol
- pop af
- pop hl
-
-.skip_height
- pop af
- push af
- inc hl
- push hl
- dec hl
- call GetFarHalfword
- ld d, l
- ld e, h
- ld a, e
- or d
- jr z, .skip_weight
- push de
- ld hl, sp+$0
- ld d, h
- ld e, l
- hlcoord 11, 9
- lb bc, 2, PRINTNUM_RIGHTALIGN | 5
- call PrintNum
- pop de
-
-.skip_weight
-; Page 1
- lb bc, 5, SCREEN_WIDTH - 2
- hlcoord 2, 11
- call ClearBox
- hlcoord 1, 10
- ld bc, SCREEN_WIDTH - 1
- ld a, $61 ; horizontal divider
- call ByteFill
- ; page number
- hlcoord 1, 9
- ld [hl], $55
- inc hl
- ld [hl], $55
- hlcoord 1, 10
- ld [hl], $56 ; P.
- inc hl
- ld [hl], $57 ; 1
- pop de
- inc de
- pop af
- hlcoord 2, 11
- push af
- call FarString
- pop bc
- ld a, [wPokedexStatus]
- or a
- ret z
-
-; Page 2
- push bc
- push de
- lb bc, 5, SCREEN_WIDTH - 2
- hlcoord 2, 11
- call ClearBox
- hlcoord 1, 10
- ld bc, SCREEN_WIDTH - 1
- ld a, $61
- call ByteFill
- ; page number
- hlcoord 1, 9
- ld [hl], $55
- inc hl
- ld [hl], $55
- hlcoord 1, 10
- ld [hl], $56 ; P.
- inc hl
- ld [hl], $58 ; 2
- pop de
- inc de
- pop af
- hlcoord 2, 11
- call FarString
- ret
-
-String_44331: ; 44331
- db "#@"
+INCLUDE "engine/pokedex_2.asm"
INCLUDE "data/pokedex/entry_pointers.asm"
INCLUDE "engine/mail.asm"
+
SECTION "Crystal Unique", ROMX
INCLUDE "engine/init_gender.asm"
@@ -2137,6 +1937,7 @@ Buena_ExitMenu: ; 4ae5e
ld [hOAMUpdate], a
ret
+
SECTION "bank13", ROMX
SwapTextboxPalettes:: ; 4c000
@@ -3486,6 +3287,7 @@ INCLUDE "misc/gbc_only.asm"
INCLUDE "event/poke_seer.asm"
+
SECTION "bank14", ROMX
INCLUDE "engine/party_menu.asm"
@@ -4613,10 +4415,12 @@ UnknownEggPic:: ; 53d9c
; Another egg pic. This is shifted up a few pixels.
INCBIN "gfx/unknown/unknown_egg.2bpp.lz"
+
SECTION "bank19", ROMX
INCLUDE "text/phone/extra.asm"
+
SECTION "bank20", ROMX
INCLUDE "engine/player_movement.asm"
@@ -4629,6 +4433,7 @@ INCLUDE "text/battle.asm"
INCLUDE "engine/debug.asm"
+
SECTION "bank21", ROMX
INCLUDE "engine/printer.asm"
@@ -4637,6 +4442,7 @@ INCLUDE "battle/anim_gfx.asm"
INCLUDE "event/halloffame.asm"
+
SECTION "bank22", ROMX
INCLUDE "event/kurt.asm"
@@ -4915,6 +4721,7 @@ INCLUDE "event/dratini.asm"
INCLUDE "event/battle_tower.asm"
INCLUDE "misc/mobile_22_2.asm"
+
SECTION "bank23", ROMX
Predef35: ; 8c000
@@ -4944,6 +4751,7 @@ INCLUDE "engine/sprites.asm"
INCLUDE "engine/mon_icons.asm"
+
SECTION "bank24", ROMX
INCLUDE "engine/phone.asm"
@@ -4953,11 +4761,13 @@ INCLUDE "engine/pokegear.asm"
INCLUDE "engine/fish.asm"
INCLUDE "engine/slot_machine.asm"
+
SECTION "Phone Engine", ROMX
INCLUDE "engine/more_phone_scripts.asm"
INCLUDE "engine/buena_phone_scripts.asm"
+
SECTION "Phone Text", ROMX
INCLUDE "text/phone/anthony_overworld.asm"
@@ -4978,6 +4788,7 @@ INCLUDE "text/phone/kenji_overworld.asm"
INCLUDE "text/phone/parry_overworld.asm"
INCLUDE "text/phone/erin_overworld.asm"
+
SECTION "bank2E", ROMX
INCLUDE "engine/events_3.asm"
@@ -4986,6 +4797,7 @@ INCLUDE "engine/radio.asm"
INCLUDE "gfx/mail.asm"
+
SECTION "bank2F", ROMX
INCLUDE "engine/std_scripts.asm"
@@ -5086,6 +4898,7 @@ LoadPoisonBGPals: ; cbcdd
TheEndGFX:: ; cbd2e
INCBIN "gfx/credits/theend.2bpp"
+
SECTION "bank33", ROMX
DisplayCaughtContestMonStats: ; cc000
@@ -5201,6 +5014,7 @@ INCLUDE "battle/anim_commands.asm"
INCLUDE "battle/anim_objects.asm"
+
SECTION "Pic Animations 1", ROMX
INCLUDE "gfx/pics/animation.asm"
@@ -5241,21 +5055,25 @@ INCLUDE "gfx/pics/bitmasks.asm"
INCLUDE "gfx/pics/unown_bitmask_pointers.asm"
INCLUDE "gfx/pics/unown_bitmasks.asm"
+
SECTION "Pic Animations 2", ROMX
INCLUDE "gfx/pics/frame_pointers.asm"
INCLUDE "gfx/pics/kanto_frames.asm"
+
SECTION "bank36", ROMX
FontInversed: INCBIN "gfx/font/font_inversed.1bpp"
+
SECTION "Pic Animations 3", ROMX
INCLUDE "gfx/pics/johto_frames.asm"
INCLUDE "gfx/pics/unown_frame_pointers.asm"
INCLUDE "gfx/pics/unown_frames.asm"
+
SECTION "bank38", ROMX
RotateUnownFrontpic: ; e0000
@@ -5383,6 +5201,7 @@ INCLUDE "engine/unown_puzzle.asm"
INCLUDE "engine/dummy_game.asm"
INCLUDE "engine/billspc.asm"
+
SECTION "bank39", ROMX
CopyrightGFX:: ; e4000
@@ -5391,6 +5210,7 @@ INCBIN "gfx/splash/copyright.2bpp"
INCLUDE "engine/options_menu.asm"
INCLUDE "engine/crystal_intro.asm"
+
SECTION "bank3E", ROMX
INCLUDE "gfx/font.asm"
@@ -5402,6 +5222,7 @@ INCLUDE "battle/hidden_power.asm"
INCLUDE "battle/misc.asm"
+
SECTION "bank3F", ROMX
INCLUDE "tilesets/animations.asm"
@@ -5410,10 +5231,12 @@ INCLUDE "engine/npctrade.asm"
INCLUDE "event/mom_phone.asm"
+
SECTION "bank40", ROMX
INCLUDE "misc/mobile_40.asm"
+
SECTION "bank41", ROMX
INCLUDE "misc/gfx_41.asm"
@@ -5443,15 +5266,18 @@ INCBIN "gfx/font/overworld.2bpp"
.space
INCBIN "gfx/font/space.2bpp"
+
SECTION "bank42", ROMX
INCLUDE "misc/mobile_42.asm"
+
SECTION "Intro Logo", ROMX
IntroLogoGFX: ; 109407
INCBIN "gfx/intro/logo.2bpp.lz"
+
SECTION "bank43", ROMX
INCLUDE "misc/unused_title.asm"
@@ -5461,23 +5287,28 @@ INCLUDE "engine/title.asm"
INCLUDE "misc/mobile_45.asm"
INCLUDE "misc/mobile_46.asm"
+
SECTION "bank47", ROMX
INCLUDE "misc/battle_tower_47.asm"
+
SECTION "bank5B", ROMX
INCLUDE "misc/mobile_5b.asm"
INCLUDE "engine/link_trade.asm"
+
SECTION "bank5C", ROMX
INCLUDE "misc/mobile_5c.asm"
+
SECTION "bank5D", ROMX
INCLUDE "text/phone/extra3.asm"
+
SECTION "bank5E", ROMX
_UpdateBattleHUDs:
@@ -5492,6 +5323,7 @@ _UpdateBattleHUDs:
INCLUDE "misc/mobile_5f.asm"
+
SECTION "Common Text 1", ROMX
INCLUDE "text/stdtext.asm"
@@ -5507,6 +5339,7 @@ INCLUDE "text/phone/wade_overworld.asm"
INCLUDE "text/phone/ralph_overworld.asm"
INCLUDE "text/phone/liz_overworld.asm"
+
SECTION "bank6D", ROMX
INCLUDE "text/phone/mom.asm"
@@ -5514,6 +5347,7 @@ INCLUDE "text/phone/bill.asm"
INCLUDE "text/phone/elm.asm"
INCLUDE "text/phone/trainers1.asm"
+
SECTION "bank72", ROMX
INCLUDE "items/item_names.asm"
@@ -5524,6 +5358,7 @@ INCLUDE "battle/move_names.asm"
INCLUDE "engine/landmarks.asm"
+
SECTION "bank77", ROMX
UnownFont: ; 1dc000
@@ -5537,6 +5372,7 @@ INCBIN "gfx/mobile/hp.1bpp"
MobileLvIcon: ; 1dc599
INCBIN "gfx/mobile/lv.1bpp"
+
SECTION "bank77_2", ROMX
Function1dd6a9: ; 1dd6a9
@@ -5968,14 +5804,17 @@ LeggiPostaInglese:
jr nz, .loop
ret
+
SECTION "bank7B", ROMX
INCLUDE "text/battle_tower.asm"
+
SECTION "bank7C", ROMX
INCLUDE "data/battle_tower_2.asm"
+
SECTION "bank7D", ROMX
db $cc, $6b, $1e ; XXX
@@ -6021,13 +5860,16 @@ Function1f5d9f: ; 1f5d9f
.unknown_data
INCBIN "unknown/1f5db4.bin"
+
SECTION "bank7E", ROMX
INCLUDE "engine/battle_tower.asm"
INCLUDE "engine/odd_eggs.asm"
+
SECTION "bank7F", ROMX
+
SECTION "stadium2", ROMX
IF DEF(CRYSTAL11)