summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Huderle <huderlem@gmail.com>2015-03-14 10:31:18 -0700
committerMarcus Huderle <huderlem@gmail.com>2015-03-14 10:31:18 -0700
commitbc491702b9aaa5b42db349c944248186d841ebe1 (patch)
treedebb09dc98596aa544f50f469cb1f841ae63c5cf
parent69b4511b7319541649258c6db393b1978209b610 (diff)
Pokemon names table. Dump routine that loads message after you catch a pokemon.
-rwxr-xr-xcharmap.asm36
-rwxr-xr-xdata/mon_names.asm154
-rwxr-xr-xmain.asm82
-rwxr-xr-xwram.asm2
4 files changed, 271 insertions, 3 deletions
diff --git a/charmap.asm b/charmap.asm
new file mode 100755
index 0000000..8b030d6
--- /dev/null
+++ b/charmap.asm
@@ -0,0 +1,36 @@
+charmap "@", $00
+
+charmap "♂", $24
+
+charmap ".", $2E
+
+charmap "A", $41
+charmap "B", $42
+charmap "C", $43
+charmap "D", $44
+charmap "E", $45
+charmap "F", $46
+charmap "G", $47
+charmap "H", $48
+charmap "I", $49
+charmap "J", $4A
+charmap "K", $4B
+charmap "L", $4C
+charmap "M", $4D
+charmap "N", $4E
+charmap "O", $4F
+charmap "P", $50
+charmap "Q", $51
+charmap "R", $52
+charmap "S", $53
+charmap "T", $54
+charmap "U", $55
+charmap "V", $56
+charmap "W", $57
+charmap "X", $58
+charmap "Y", $59
+charmap "Z", $5A
+
+charmap "♀", $5C
+
+charmap "'", $60
diff --git a/data/mon_names.asm b/data/mon_names.asm
new file mode 100755
index 0000000..a63ea52
--- /dev/null
+++ b/data/mon_names.asm
@@ -0,0 +1,154 @@
+PokemonNames: ; 0x11a4e
+; The first byte of each entry is the symbol displayed to the left of the mon's
+; name in the evolution menu. Fully-evolved pokemon have an asterisk next to their names.
+ db $20, "BULBASAUR@", $20, $20, $20, $20, $20
+ db $20, "IVYSAUR@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "VENUSAUR@", $20, $20, $20, $20, $20, $20
+ db $20, "CHARMANDER@", $20, $20, $20, $20
+ db $20, "CHARMELEON@", $20, $20, $20, $20
+ db $2a, "CHARIZARD@", $20, $20, $20, $20, $20
+ db $20, "SQUIRTLE@", $20, $20, $20, $20, $20, $20
+ db $20, "WARTORTLE@", $20, $20, $20, $20, $20
+ db $2a, "BLASTOISE@", $20, $20, $20, $20, $20
+ db $20, "CATERPIE@", $20, $20, $20, $20, $20, $20
+ db $20, "METAPOD@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "BUTTERFREE@", $20, $20, $20, $20
+ db $20, "WEEDLE@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "KAKUNA@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "BEEDRILL@", $20, $20, $20, $20, $20, $20
+ db $20, "PIDGEY@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "PIDGEOTTO@", $20, $20, $20, $20, $20
+ db $2a, "PIDGEOT@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "RATTATA@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "RATICATE@", $20, $20, $20, $20, $20, $20
+ db $20, "SPEAROW@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "FEAROW@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "EKANS@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "ARBOK@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "PIKACHU@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "RAICHU@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "SANDSHREW@", $20, $20, $20, $20, $20
+ db $2a, "SANDSLASH@", $20, $20, $20, $20, $20
+ db $20, "NIDORAN♂@", $20, $20, $20, $20, $20, $20
+ db $20, "NIDORINA@", $20, $20, $20, $20, $20, $20
+ db $2a, "NIDOQUEEN@", $20, $20, $20, $20, $20
+ db $20, "NIDORAN♀@", $20, $20, $20, $20, $20, $20
+ db $20, "NIDORINO@", $20, $20, $20, $20, $20, $20
+ db $2a, "NIDOKING@", $20, $20, $20, $20, $20, $20
+ db $20, "CLEFAIRY@", $20, $20, $20, $20, $20, $20
+ db $2a, "CLEFABLE@", $20, $20, $20, $20, $20, $20
+ db $20, "VULPIX@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "NINETALES@", $20, $20, $20, $20, $20
+ db $20, "JIGGLYPUFF@", $20, $20, $20, $20
+ db $2a, "WIGGLYTUFF@", $20, $20, $20, $20
+ db $20, "ZUBAT@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "GOLBAT@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "ODDISH@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "GLOOM@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "VILEPLUME@", $20, $20, $20, $20, $20
+ db $20, "PARAS@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "PARASECT@", $20, $20, $20, $20, $20, $20
+ db $20, "VENONAT@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "VENOMOTH@", $20, $20, $20, $20, $20, $20
+ db $20, "DIGLETT@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "DUGTRIO@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "MEOWTH@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "PERSIAN@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "PSYDUCK@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "GOLDUCK@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "MANKEY@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "PRIMEAPE@", $20, $20, $20, $20, $20, $20
+ db $20, "GROWLITHE@", $20, $20, $20, $20, $20
+ db $2a, "ARCANINE@", $20, $20, $20, $20, $20, $20
+ db $20, "POLIWAG@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "POLIWHIRL@", $20, $20, $20, $20, $20
+ db $2a, "POLIWRATH@", $20, $20, $20, $20, $20
+ db $20, "ABRA@", $20, $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "KADABRA@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "ALAKAZAM@", $20, $20, $20, $20, $20, $20
+ db $20, "MACHOP@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "MACHOKE@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "MACHAMP@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "BELLSPROUT@", $20, $20, $20, $20
+ db $20, "WEEPINBELL@", $20, $20, $20, $20
+ db $2a, "VICTREEBEL@", $20, $20, $20, $20
+ db $20, "TENTACOOL@", $20, $20, $20, $20, $20
+ db $2a, "TENTACRUEL@", $20, $20, $20, $20
+ db $20, "GEODUDE@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "GRAVELER@", $20, $20, $20, $20, $20, $20
+ db $2a, "GOLEM@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "PONYTA@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "RAPIDASH@", $20, $20, $20, $20, $20, $20
+ db $20, "SLOWPOKE@", $20, $20, $20, $20, $20, $20
+ db $2a, "SLOWBRO@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "MAGNEMITE@", $20, $20, $20, $20, $20
+ db $2a, "MAGNETON@", $20, $20, $20, $20, $20, $20
+ db $2a, "FARFETCH'D@", $20, $20, $20, $20
+ db $20, "DODUO@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "DODRIO@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "SEEL@", $20, $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "DEWGONG@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "GRIMER@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "MUK@", $20, $20, $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "SHELLDER@", $20, $20, $20, $20, $20, $20
+ db $2a, "CLOYSTER@", $20, $20, $20, $20, $20, $20
+ db $20, "GASTLY@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "HAUNTER@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "GENGAR@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "ONIX@", $20, $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "DROWZEE@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "HYPNO@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "KRABBY@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "KINGLER@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "VOLTORB@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "ELECTRODE@", $20, $20, $20, $20, $20
+ db $20, "EXEGGCUTE@", $20, $20, $20, $20, $20
+ db $2a, "EXEGGUTOR@", $20, $20, $20, $20, $20
+ db $20, "CUBONE@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "MAROWAK@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "HITMONLEE@", $20, $20, $20, $20, $20
+ db $2a, "HITMONCHAN@", $20, $20, $20, $20
+ db $2a, "LICKITUNG@", $20, $20, $20, $20, $20
+ db $20, "KOFFING@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "WEEZING@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "RHYHORN@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "RHYDON@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "CHANSEY@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "TANGELA@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "KANGASKHAN@", $20, $20, $20, $20
+ db $20, "HORSEA@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "SEADRA@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "GOLDEEN@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "SEAKING@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "STARYU@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "STARMIE@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "MR.MIME@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "SCYTHER@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "JYNX@", $20, $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "ELECTABUZZ@", $20, $20, $20, $20
+ db $2a, "MAGMAR@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "PINSIR@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "TAUROS@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "MAGIKARP@", $20, $20, $20, $20, $20, $20
+ db $2a, "GYARADOS@", $20, $20, $20, $20, $20, $20
+ db $2a, "LAPRAS@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "DITTO@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $20, "EEVEE@", $20, $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "VAPOREON@", $20, $20, $20, $20, $20, $20
+ db $2a, "JOLTEON@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "FLAREON@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "PORYGON@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "OMANYTE@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "OMASTAR@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "KABUTO@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "KABUTOPS@", $20, $20, $20, $20, $20, $20
+ db $2a, "AERODACTYL@", $20, $20, $20, $20
+ db $2a, "SNORLAX@", $20, $20, $20, $20, $20, $20, $20
+ db $2a, "ARTICUNO@", $20, $20, $20, $20, $20, $20
+ db $2a, "ZAPDOS@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "MOLTRES@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "DRATINI@", $20, $20, $20, $20, $20, $20, $20
+ db $20, "DRAGONAIR@", $20, $20, $20, $20, $20
+ db $2a, "DRAGONITE@", $20, $20, $20, $20, $20
+ db $2a, "MEWTWO@", $20, $20, $20, $20, $20, $20, $20, $20
+ db $2a, "MEW@", $20, $20, $20, $20, $20, $20, $20, $20, $20, $20, $20
diff --git a/main.asm b/main.asm
index 311af20..a67768b 100755
--- a/main.asm
+++ b/main.asm
@@ -1,3 +1,4 @@
+INCLUDE "charmap.asm"
INCLUDE "macros.asm"
INCLUDE "constants.asm"
@@ -6706,7 +6707,80 @@ Func_10696: ; 0x10696
call Func_32aa
ret
-INCBIN "baserom.gbc",$106a6,$10753 - $106a6
+INCBIN "baserom.gbc",$106a6,$106b6 - $106a6
+
+Func_106b6: ; 0x106b6
+ ld a, [wCurrentMon]
+ ld c, a
+ ld b, $0
+ sla c
+ rl b
+ sla c
+ rl b
+ sla c
+ rl b
+ sla c
+ rl b ; bc was just multiplied by 16
+ ld hl, PokemonNames + 1
+ add hl, bc
+ ld de, $2a67 ; todo "You got an"
+ ld bc, $2a91 ; todo
+ ld a, [hl]
+ ; check if mon's name starts with a vowel, so it can print "an", instead of "a"
+ cp $41
+ jr z, .asm_106f1
+ cp $49
+ jr z, .asm_106f1
+ cp $55
+ jr z, .asm_106f1
+ cp $45
+ jr z, .asm_106f1
+ cp $4f
+ jr z, .asm_106f1
+ ld de, $2a56 ; todo "You got a"
+ ld bc, $2a79
+.asm_106f1
+ push hl
+ push bc
+ push de
+ call Func_30e8
+ call Func_30db
+ ld hl, $d5cc
+ pop de
+ call Func_32aa
+ ld hl, $d5d4
+ pop de
+ call Func_32aa
+ pop hl
+ ld de, $c520
+ ld b, $0 ; count the number of letters in mon's name in register b
+.readLetter
+ ld a, [hli]
+ and a
+ jr z, .endOfName
+ ld [de], a
+ inc de
+ inc b
+ jr .readLetter
+.endOfName
+ ld a, $20
+ ld [de], a
+ inc de
+ xor a
+ ld [de], a
+ ld a, [$d5db]
+ add b
+ ld [$d5db], a
+ ld a, $14
+ sub b
+ srl a
+ ld b, a
+ ld a, [$d5d8]
+ add b
+ ld [$d5d8], a
+ ret
+
+INCBIN "baserom.gbc",$10732,$10753 - $10732
SetPokemonSeenFlag: ; 0x10753
ld a, [$d550]
@@ -6794,7 +6868,11 @@ INCBIN "baserom.gbc",$115ce,$1161d - $115ce
INCLUDE "data/evolution_lines.asm"
-INCBIN "baserom.gbc",$116b4,$12a22 - $116b4
+INCBIN "baserom.gbc",$116b4,$11a3e - $116b4
+
+INCLUDE "data/mon_names.asm"
+
+INCBIN "baserom.gbc",$123ae,$12a22 - $123ae
INCLUDE "data/catchem_timer_values.asm"
diff --git a/wram.asm b/wram.asm
index 95b3626..2adfe52 100755
--- a/wram.asm
+++ b/wram.asm
@@ -4,7 +4,7 @@ SECTION "WRAM Bank 0", WRAM0
wc000::
ds $500
-wcBottomMessageText::
+wcBottomMessageText:: ; 0xc500
ds $b00
SECTION "WRAM Bank 1", WRAMX, BANK[1]