diff options
-rw-r--r-- | INSTALL.md | 4 | ||||
-rw-r--r-- | constants.asm | 64 | ||||
-rw-r--r-- | extras/gbz80disasm.py | 25 | ||||
-rw-r--r-- | extras/romstr.py | 10 | ||||
-rw-r--r-- | gfx/icon/bat.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/bigmon.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/bird.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/blob.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/bug.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/bulbasaur.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/caterpillar.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/charmander.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/clefairy.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/diglett.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/egg.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/equine.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/fighter.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/fish.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/fox.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/geodude.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/ghost.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/gyarados.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/ho_oh.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/humanshape.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/jellyfish.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/jigglypuff.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/lapras.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/lugia.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/monster.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/moth.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/oddish.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/pikachu.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/poliwag.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/serpent.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/shell.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/slowpoke.2bpp | 2 | ||||
-rw-r--r-- | gfx/icon/snorlax.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/squirtle.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/staryu.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/sudowoodo.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/unown.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | gfx/icon/voltorb.2bpp | bin | 0 -> 128 bytes | |||
-rw-r--r-- | main.asm | 800 | ||||
-rw-r--r-- | wram.asm | 9 |
44 files changed, 859 insertions, 55 deletions
diff --git a/INSTALL.md b/INSTALL.md index 9f45ce52a..979e69c06 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -18,7 +18,7 @@ sudo make install which rgbasm # download pokecrystal -git clone https://github.com/kanzure/pokecrystal.git +git clone git://github.com/kanzure/pokecrystal.git cd pokecrystal make clean && make @@ -128,7 +128,7 @@ Now you should be able to build `pokecrystal` for the first time: ```bash cd ~ -git clone https://github.com/kanzure/pokecrystal.git +git clone git://github.com/kanzure/pokecrystal.git cd pokecrystal ``` diff --git a/constants.asm b/constants.asm index ce9e5ffe2..92514ace6 100644 --- a/constants.asm +++ b/constants.asm @@ -8,6 +8,11 @@ dwb: MACRO db \2 ENDM +dbw: MACRO + db \1 + dw \2 + ENDM + dn: MACRO db \1 << 4 + \2 ENDM @@ -48,6 +53,25 @@ note: MACRO db \1 ENDM +; It's better to use *coord than FuncCoord. +FuncCoord: MACRO +Coord = $c4a0 + 20 * \2 + \1 + ENDM + +bccoord: MACRO + FuncCoord \1, \2 + ld bc, Coord + ENDM + +decoord: MACRO + FuncCoord \1, \2 + ld de, Coord + ENDM + +hlcoord: MACRO + FuncCoord \1, \2 + ld hl, Coord + ENDM BULBASAUR EQU 1 IVYSAUR EQU 2 @@ -593,6 +617,46 @@ LADIES_MAN EQU $0D REPTILE EQU $0E NO_EGGS EQU $0F +; menu sprites +ICON_POLIWAG EQU $01 +ICON_JIGGLYPUFF EQU $02 +ICON_DIGLETT EQU $03 +ICON_PIKACHU EQU $04 +ICON_STARYU EQU $05 +ICON_FISH EQU $06 +ICON_BIRD EQU $07 +ICON_MONSTER EQU $08 +ICON_CLEFAIRY EQU $09 +ICON_ODDISH EQU $0a +ICON_BUG EQU $0b +ICON_GHOST EQU $0c +ICON_LAPRAS EQU $0d +ICON_HUMANSHAPE EQU $0e +ICON_FOX EQU $0f +ICON_EQUINE EQU $10 +ICON_SHELL EQU $11 +ICON_BLOB EQU $12 +ICON_SERPENT EQU $13 +ICON_VOLTORB EQU $14 +ICON_SQUIRTLE EQU $15 +ICON_BULBASAUR EQU $16 +ICON_CHARMANDER EQU $17 +ICON_CATERPILLAR EQU $18 +ICON_UNOWN EQU $19 +ICON_GEODUDE EQU $1a +ICON_FIGHTER EQU $1b +ICON_EGG EQU $1c +ICON_JELLYFISH EQU $1d +ICON_MOTH EQU $1e +ICON_BAT EQU $1f +ICON_SNORLAX EQU $20 +ICON_HO_OH EQU $21 +ICON_LUGIA EQU $22 +ICON_GYARADOS EQU $23 +ICON_SLOWPOKE EQU $24 +ICON_SUDOWOODO EQU $25 +ICON_BIGMON EQU $26 + ; map group ids GROUP_OLIVINE_POKECENTER_1F EQU $01 GROUP_OLIVINE_GYM EQU $01 diff --git a/extras/gbz80disasm.py b/extras/gbz80disasm.py index f2ba4839f..d22f152f1 100644 --- a/extras/gbz80disasm.py +++ b/extras/gbz80disasm.py @@ -14,11 +14,8 @@ if not hasattr(json, "read"): from romstr import RomStr def load_rom(filename="../baserom.gbc"): - """loads bytes into memory""" global rom - file_handler = open(filename, "rb") - rom = RomStr(file_handler.read()) - file_handler.close() + rom = RomStr.load(filename=filename) return rom spacing = "\t" @@ -568,8 +565,6 @@ def load_labels(filename="labels.json"): crystal.scan_for_predefined_labels() def find_label(local_address, bank_id=0): - return None - global all_labels # keep an integer @@ -577,17 +572,19 @@ def find_label(local_address, bank_id=0): local_address1 = int(local_address.replace("$", "0x"), 16) else: local_address1 = local_address - # turn local_address into a string + # turn local_address into an integer + if type(local_address) == str: + if "0x" in local_address: + local_address = local_address.replace("0x", "$") + elif "$" in local_address: + local_address = local_address.replace("$", "") + if type(local_address) == str: - if "0x" in local_address: local_address = local_address.replace("0x", "$") - elif not "$" in local_address: local_address = "$" + local_address - if type(local_address) == int: - local_address = "$%.x" % (local_address) - local_address = local_address.upper() + local_address = int(local_address, 16) for label_entry in all_labels: - if label_entry["local_pointer"].upper() == local_address: - if label_entry["bank_id"] == bank_id or (local_address1 < 0x8000 and (label_entry["bank_id"] == 0 or label_entry["bank_id"] == 1)): + if label_entry["address"] == local_address: + if label_entry["bank"] == bank_id or (local_address1 < 0x8000 and (label_entry["bank"] == 0 or label_entry["bank"] == 1)): return label_entry["label"] return None diff --git a/extras/romstr.py b/extras/romstr.py index d2eea44ae..5701f19ae 100644 --- a/extras/romstr.py +++ b/extras/romstr.py @@ -46,15 +46,17 @@ class RomStr(str): return "RomStr(too long)" @classmethod - def load(cls, crystal=True, red=False): + def load(cls, filename=None, crystal=True, red=False): """ Loads a ROM into a RomStr. """ - if crystal and not red: + if crystal and not red and not filename: file_handler = open("../baserom.gbc", "r") - elif red and not crystal: + elif red and not crystal and not filename: file_handler = open("../pokered-baserom.gbc", "r") + elif filename not in ["", None]: + file_handler = open(filename, "rb") else: - raise Exception, "not sure which rom to load?" + raise Exception("not sure which rom to load?") bytes = file_handler.read() file_handler.close() return RomStr(bytes) diff --git a/gfx/icon/bat.2bpp b/gfx/icon/bat.2bpp Binary files differnew file mode 100644 index 000000000..0e5cd7d43 --- /dev/null +++ b/gfx/icon/bat.2bpp diff --git a/gfx/icon/bigmon.2bpp b/gfx/icon/bigmon.2bpp Binary files differnew file mode 100644 index 000000000..6883bd80f --- /dev/null +++ b/gfx/icon/bigmon.2bpp diff --git a/gfx/icon/bird.2bpp b/gfx/icon/bird.2bpp Binary files differnew file mode 100644 index 000000000..fb1793da5 --- /dev/null +++ b/gfx/icon/bird.2bpp diff --git a/gfx/icon/blob.2bpp b/gfx/icon/blob.2bpp Binary files differnew file mode 100644 index 000000000..a855f008e --- /dev/null +++ b/gfx/icon/blob.2bpp diff --git a/gfx/icon/bug.2bpp b/gfx/icon/bug.2bpp Binary files differnew file mode 100644 index 000000000..e57e4c80c --- /dev/null +++ b/gfx/icon/bug.2bpp diff --git a/gfx/icon/bulbasaur.2bpp b/gfx/icon/bulbasaur.2bpp Binary files differnew file mode 100644 index 000000000..56dd284c1 --- /dev/null +++ b/gfx/icon/bulbasaur.2bpp diff --git a/gfx/icon/caterpillar.2bpp b/gfx/icon/caterpillar.2bpp Binary files differnew file mode 100644 index 000000000..964b6a6ad --- /dev/null +++ b/gfx/icon/caterpillar.2bpp diff --git a/gfx/icon/charmander.2bpp b/gfx/icon/charmander.2bpp Binary files differnew file mode 100644 index 000000000..4e2182636 --- /dev/null +++ b/gfx/icon/charmander.2bpp diff --git a/gfx/icon/clefairy.2bpp b/gfx/icon/clefairy.2bpp Binary files differnew file mode 100644 index 000000000..6a5aed325 --- /dev/null +++ b/gfx/icon/clefairy.2bpp diff --git a/gfx/icon/diglett.2bpp b/gfx/icon/diglett.2bpp Binary files differnew file mode 100644 index 000000000..6a997c1cb --- /dev/null +++ b/gfx/icon/diglett.2bpp diff --git a/gfx/icon/egg.2bpp b/gfx/icon/egg.2bpp Binary files differnew file mode 100644 index 000000000..03a623777 --- /dev/null +++ b/gfx/icon/egg.2bpp diff --git a/gfx/icon/equine.2bpp b/gfx/icon/equine.2bpp Binary files differnew file mode 100644 index 000000000..8853b5bdd --- /dev/null +++ b/gfx/icon/equine.2bpp diff --git a/gfx/icon/fighter.2bpp b/gfx/icon/fighter.2bpp Binary files differnew file mode 100644 index 000000000..671b7e8af --- /dev/null +++ b/gfx/icon/fighter.2bpp diff --git a/gfx/icon/fish.2bpp b/gfx/icon/fish.2bpp Binary files differnew file mode 100644 index 000000000..e99315b52 --- /dev/null +++ b/gfx/icon/fish.2bpp diff --git a/gfx/icon/fox.2bpp b/gfx/icon/fox.2bpp Binary files differnew file mode 100644 index 000000000..bbe04c03d --- /dev/null +++ b/gfx/icon/fox.2bpp diff --git a/gfx/icon/geodude.2bpp b/gfx/icon/geodude.2bpp Binary files differnew file mode 100644 index 000000000..ff8bdfdeb --- /dev/null +++ b/gfx/icon/geodude.2bpp diff --git a/gfx/icon/ghost.2bpp b/gfx/icon/ghost.2bpp Binary files differnew file mode 100644 index 000000000..d47e8b62c --- /dev/null +++ b/gfx/icon/ghost.2bpp diff --git a/gfx/icon/gyarados.2bpp b/gfx/icon/gyarados.2bpp Binary files differnew file mode 100644 index 000000000..ffe536ad0 --- /dev/null +++ b/gfx/icon/gyarados.2bpp diff --git a/gfx/icon/ho_oh.2bpp b/gfx/icon/ho_oh.2bpp Binary files differnew file mode 100644 index 000000000..db4277a31 --- /dev/null +++ b/gfx/icon/ho_oh.2bpp diff --git a/gfx/icon/humanshape.2bpp b/gfx/icon/humanshape.2bpp Binary files differnew file mode 100644 index 000000000..4dbbac0c8 --- /dev/null +++ b/gfx/icon/humanshape.2bpp diff --git a/gfx/icon/jellyfish.2bpp b/gfx/icon/jellyfish.2bpp Binary files differnew file mode 100644 index 000000000..cfda6ecca --- /dev/null +++ b/gfx/icon/jellyfish.2bpp diff --git a/gfx/icon/jigglypuff.2bpp b/gfx/icon/jigglypuff.2bpp Binary files differnew file mode 100644 index 000000000..bc00c535d --- /dev/null +++ b/gfx/icon/jigglypuff.2bpp diff --git a/gfx/icon/lapras.2bpp b/gfx/icon/lapras.2bpp Binary files differnew file mode 100644 index 000000000..47684bae3 --- /dev/null +++ b/gfx/icon/lapras.2bpp diff --git a/gfx/icon/lugia.2bpp b/gfx/icon/lugia.2bpp Binary files differnew file mode 100644 index 000000000..fc1467546 --- /dev/null +++ b/gfx/icon/lugia.2bpp diff --git a/gfx/icon/monster.2bpp b/gfx/icon/monster.2bpp Binary files differnew file mode 100644 index 000000000..ce8863cd4 --- /dev/null +++ b/gfx/icon/monster.2bpp diff --git a/gfx/icon/moth.2bpp b/gfx/icon/moth.2bpp Binary files differnew file mode 100644 index 000000000..96d5d42f1 --- /dev/null +++ b/gfx/icon/moth.2bpp diff --git a/gfx/icon/oddish.2bpp b/gfx/icon/oddish.2bpp Binary files differnew file mode 100644 index 000000000..c9c7665ed --- /dev/null +++ b/gfx/icon/oddish.2bpp diff --git a/gfx/icon/pikachu.2bpp b/gfx/icon/pikachu.2bpp Binary files differnew file mode 100644 index 000000000..ec73af114 --- /dev/null +++ b/gfx/icon/pikachu.2bpp diff --git a/gfx/icon/poliwag.2bpp b/gfx/icon/poliwag.2bpp Binary files differnew file mode 100644 index 000000000..3d3da6748 --- /dev/null +++ b/gfx/icon/poliwag.2bpp diff --git a/gfx/icon/serpent.2bpp b/gfx/icon/serpent.2bpp Binary files differnew file mode 100644 index 000000000..4be1a62aa --- /dev/null +++ b/gfx/icon/serpent.2bpp diff --git a/gfx/icon/shell.2bpp b/gfx/icon/shell.2bpp Binary files differnew file mode 100644 index 000000000..9e9dd787c --- /dev/null +++ b/gfx/icon/shell.2bpp diff --git a/gfx/icon/slowpoke.2bpp b/gfx/icon/slowpoke.2bpp new file mode 100644 index 000000000..045980e57 --- /dev/null +++ b/gfx/icon/slowpoke.2bpp @@ -0,0 +1,2 @@ +88GP|c<+<#@O88Äüü|Œx¨xˆüüä? ? ?øððøøüüˆøpp#?(?>1? ?'âþ +þ>Æ<Ô<Äþþò ? ?üøøøøüüˆøpp
\ No newline at end of file diff --git a/gfx/icon/snorlax.2bpp b/gfx/icon/snorlax.2bpp Binary files differnew file mode 100644 index 000000000..1adb5c848 --- /dev/null +++ b/gfx/icon/snorlax.2bpp diff --git a/gfx/icon/squirtle.2bpp b/gfx/icon/squirtle.2bpp Binary files differnew file mode 100644 index 000000000..b6558faa5 --- /dev/null +++ b/gfx/icon/squirtle.2bpp diff --git a/gfx/icon/staryu.2bpp b/gfx/icon/staryu.2bpp Binary files differnew file mode 100644 index 000000000..890cfe20b --- /dev/null +++ b/gfx/icon/staryu.2bpp diff --git a/gfx/icon/sudowoodo.2bpp b/gfx/icon/sudowoodo.2bpp Binary files differnew file mode 100644 index 000000000..1c9390935 --- /dev/null +++ b/gfx/icon/sudowoodo.2bpp diff --git a/gfx/icon/unown.2bpp b/gfx/icon/unown.2bpp Binary files differnew file mode 100644 index 000000000..b1cddd8be --- /dev/null +++ b/gfx/icon/unown.2bpp diff --git a/gfx/icon/voltorb.2bpp b/gfx/icon/voltorb.2bpp Binary files differnew file mode 100644 index 000000000..b75cafe3d --- /dev/null +++ b/gfx/icon/voltorb.2bpp @@ -1969,7 +1969,7 @@ NPlaceChar: ; 0x101e INCBIN "baserom.gbc",$1024,$1078 - $1024 -PlaceString: +PlaceString: ; $1078 push hl PlaceNextChar: ld a, [de] @@ -4499,7 +4499,7 @@ PredefPointers: ; 856b dwb $4cdb, $14 dwb $4c50, $14 dwb $4bdd, $14 - dwb $5c8a, $13 + dwb StatsScreenInit, BANK(StatsScreenInit) ; stats screen dwb $4b0a, $14 dwb $4b0e, $14 dwb $4b7b, $14 @@ -5280,8 +5280,129 @@ BoxNameInputUpper: db "- ? ! ♂ ♀ / . , &" db "lower DEL END " +INCBIN "baserom.gbc",$11e5d,$12976 - $11e5d + +OpenPartyMenu: ; $12976 + ld a, [PartyCount] + and a + jr z, .return ; no pokémon in party + call $2b29 ; fade in? +.choosemenu ; 1297f + xor a + ld [PartyMenuActionText], a ; Choose a POKéMON. + call $31f3 ; this is also a predef/special, something with delayframe +.menu ; 12986 + ld a, $14 + ld hl, $404f + rst $8 ; load gfx + ld a, $14 + ld hl, $4405 + rst $8 ; setup menu? + ld a, $14 + ld hl, $43e0 + rst $8 ; load menu pokémon sprites +.menunoreload ; 12998 + ld a, BANK(WritePartyMenuTilemap) + ld hl, WritePartyMenuTilemap + rst $8 + ld a, BANK(PrintPartyMenuText) + ld hl, PrintPartyMenuText + rst $8 + call $31f6 + call $32f9 ; load regular palettes? + call DelayFrame + ld a, BANK(PartyMenuSelect) + ld hl, PartyMenuSelect + rst $8 + jr c, .return ; if cancelled or pressed B + call PokemonActionSubmenu + cp $3 + jr z, .menu + cp $0 + jr z, .choosemenu + cp $1 + jr z, .menunoreload + cp $2 + jr z, .quit +.return ; 129c8 + call $2b3c + ld a, $0 + ret +.quit ; 129ce + ld a, b + push af + call $2b4d + pop af + ret +; 0x129d5 + +INCBIN "baserom.gbc",$129d5,$12a88 - $129d5 + +PokemonActionSubmenu ; 0x12a88 + ld hl, $c5cd ; coord + ld bc, $0212 ; box size + call $0fb6 ; draw box + ld a, $9 + ld hl, $4d19 + rst $8 + call $389c + ld a, [$cf74] ; menu selection? + ld hl, PokemonSubmenuActionPointerTable + ld de, $0003 ; skip 3 bytes each time + call IsInArray + jr nc, .nothing + inc hl + ld a, [hli] + ld h, [hl] + ld l, a + jp [hl] +.nothing + ld a, $0 + ret +; 0x12ab0 + +PokemonSubmenuActionPointerTable: ; 0x12ab0 + dbw $01, $6e1b + dbw $02, $6e30 + dbw $03, $6ebd + dbw $04, $6e6a + dbw $06, $6e55 + dbw $07, $6e7f + dbw $08, $6ed1 + dbw $09, $6ea9 + dbw $0a, $6ee6 + dbw $0d, $6ee6 + dbw $0b, $6f26 + dbw $05, $6e94 + dbw $0c, $6f3b + dbw $0e, $6f50 + dbw $0f, OpenPartyStats ; stats + dbw $10, $6aec ; switch + dbw $11, $6b60 ; item + dbw $12, $6a79 + dbw $13, $6fba ; move + dbw $14, $6d45 ; mail +; no terminator? +; 0x12aec + +INCBIN "baserom.gbc",$12aec,$12e00 - $12aec + +OpenPartyStats: ; 12e00 + call $1d6e + call $300b + xor a + ld [MonType], a ; partymon + call LowVolume + ld a, $25 + call Predef + call MaxVolume + call $1d7d + ld a, $0 + ret +; 0x12e1b + +INCBIN "baserom.gbc",$12e1b,$14000 - $12e1b -INCBIN "baserom.gbc",$11e5d,$14000 - $11e5d SECTION "bank5",DATA,BANK[$5] @@ -20673,11 +20794,316 @@ CheckPokerus: ; 4d860 ret ; 4d87a -INCBIN "baserom.gbc",$4d87a,$50000 - $4d87a +INCBIN "baserom.gbc",$4d87a,$4dc8a - $4d87a + +StatsScreenInit: ; 4dc8a + ld hl, StatsScreenMain + jr .gotaddress + ld hl, $5cf7 + jr .gotaddress +.gotaddress + ld a, [$ffde] + push af + xor a + ld [$ffde], a ; disable overworld tile animations + ld a, [$c2c6] ; whether sprite is to be mirrorred + push af + ld a, [$cf63] + ld b, a + ld a, [$cf64] + ld c, a + push bc + push hl + call $31f3 + call $0fc8 + call $1ad2 + ld a, $3e + ld hl, $753e + rst $8 ; this loads graphics + pop hl + call JpHl + call $31f3 + call $0fc8 + pop bc + ; restore old values + ld a, b + ld [$cf63], a + ld a, c + ld [$cf64], a + pop af + ld [$c2c6], a + pop af + ld [$ffde], a + ret +; 0x4dcd2 + +StatsScreenMain: ; 0x4dcd2 + xor a + ld [$cf63], a + ld [$cf64], a + ld a, [$cf64] + and $fc + or $1 + ld [$cf64], a +.loop ; 4dce3 + ld a, [$cf63] + and $7f + ld hl, StatsScreenPointerTable + rst $28 + call $5d3a ; check for keys? + ld a, [$cf63] + bit 7, a + jr z, .loop + ret +; 0x4dcf7 + +INCBIN "baserom.gbc",$4dcf7,$4dd2a - $4dcf7 + +StatsScreenPointerTable: ; 4dd2a + dw $5d72 ; regular pokémon + dw EggStatsInit ; egg + dw $5de6 + dw $5dac + dw $5dc6 + dw $5de6 + dw $5dd6 + dw $5d6c + +; 4dd3a + +INCBIN "baserom.gbc",$4dd3a,$4dda1 - $4dd3a + +EggStatsInit: ; 4dda1 + call EggStatsScreen + ld a, [$cf63] + inc a + ld [$cf63], a + ret +; 0x4ddac + +INCBIN "baserom.gbc",$4ddac,$4e21e - $4ddac + +IDNoString: ; 4e21e + db $73, "№.@" + +OTString: ; 4e222 + db "OT/@" +; 4e226 + +INCBIN "baserom.gbc",$4e226,$4e33a - $4e226 + +EggStatsScreen: ; 4e33a + xor a + ld [$ffd4], a + ld hl, $cda1 + call $334e ; SetHPPal + ld b, $3 + call GetSGBLayout + call $5f8f + ld de, EggString + hlcoord 8, 1 ; $c4bc + call PlaceString + ld de, IDNoString + hlcoord 8, 3 ; $c4e4 + call PlaceString + ld de, OTString + hlcoord 8, 5 ; $c50c + call PlaceString + ld de, FiveQMarkString + hlcoord 11, 3 ; $c4e7 + call PlaceString + ld de, FiveQMarkString + hlcoord 11, 5 ; $c50f + call PlaceString + ld a, [$d129] ; egg status + ld de, EggSoonString + cp $6 + jr c, .picked + ld de, EggCloseString + cp $b + jr c, .picked + ld de, EggMoreTimeString + cp $29 + jr c, .picked + ld de, EggALotMoreTimeString +.picked + hlcoord 1, 9 ; $c555 + call PlaceString + ld hl, $cf64 + set 5, [hl] + call $32f9 ; pals + call $045a + ld hl, TileMap + call $3786 + ld a, $41 + ld hl, $402d + rst $8 + call $6497 + ld a, [$d129] + cp $6 + ret nc + ld de, $00bb + call StartSFX + ret +; 0x4e3c0 + +EggString: ; 4e3c0 + db "EGG@" + +FiveQMarkString: ; 4e3c4 + db "?????@" + +EggSoonString: ; 0x4e3ca + db "It's making sounds", $4e, "inside. It's going", $4e, "to hatch soon!@" + +EggCloseString: ; 0x4e3fd + db "It moves around", $4e, "inside sometimes.", $4e, "It must be close", $4e, "to hatching.@" + +EggMoreTimeString: ; 0x4e43d + db "Wonder what's", $4e, "inside? It needs", $4e, "more time, though.@" + +EggALotMoreTimeString: ; 0x4e46e + db "This EGG needs a", $4e, "lot more time to", $4e, "hatch.@" + +; 0x4e497 + +INCBIN "baserom.gbc",$4e497,$50000 - $4e497 SECTION "bank14",DATA,BANK[$14] -INCBIN "baserom.gbc",$50000,$5097B-$50000 +INCBIN "baserom.gbc",$50000,$5005f-$50000 + +WritePartyMenuTilemap: ; 0x5005f + ld hl, Options + ld a, [hl] + push af + set 4, [hl] ; Disable text delay + xor a + ld [$ffd4], a + ld hl, TileMap + ld bc, $0168 + ld a, " " + call $3041 ; blank the tilemap + call $4396 ; This reads from a pointer table??? +.asm_50077 + ld a, [hli] + cp $ff + jr z, .asm_50084 ; 0x5007a $8 + push hl + ld hl, $4089 + rst $28 + pop hl + jr .asm_50077 ; 0x50082 $f3 +.asm_50084 + pop af + ld [Options], a + ret +; 0x50089 + +INCBIN "baserom.gbc",$50089,$50457-$50089 + +PartyMenuSelect: ; 0x50457 +; sets carry if exitted menu. + call $1bc9 + call $1bee + ld a, [PartyCount] + inc a + ld b, a + ld a, [$cfa9] ; menu selection? + cp b + jr z, .exitmenu ; CANCEL + ld [$d0d8], a + ld a, [$ffa9] + ld b, a + bit 1, b + jr nz, .exitmenu ; B button? + ld a, [$cfa9] + dec a + ld [CurPartyMon], a + ld c, a + ld b, $0 + ld hl, PartySpecies + add hl, bc + ld a, [hl] + ld [CurPartySpecies], a + ld de, $0008 + call StartSFX + call WaitSFX + and a + ret +.exitmenu + ld de, $0008 + call StartSFX + call WaitSFX + scf + ret +; 0x5049a + + +PrintPartyMenuText: ; 5049a + ld hl, $c5b8 + ld bc, $0212 + call $0fe8 ; related to TextBoxBorder + ld a, [PartyCount] + and a + jr nz, .haspokemon + ld de, YouHaveNoPKMNString + jr .gotstring +.haspokemon ; 504ae + ld a, [PartyMenuActionText] + and $f ; drop high nibble + ld hl, PartyMenuStrings + ld e, a + ld d, $0 + add hl, de + add hl, de + ld a, [hli] + ld d, [hl] + ld e, a +.gotstring ; 504be + ld a, [Options] + push af + set 4, a ; disable text delay + ld [Options], a + ld hl, $c5e1 ; Coord + call PlaceString + pop af + ld [Options], a + ret +; 0x504d2 + +PartyMenuStrings: ; 0x504d2 + dw ChooseAMonString + dw UseOnWhichPKMNString + dw WhichPKMNString + dw TeachWhichPKMNString + dw MoveToWhereString + dw UseOnWhichPKMNString + dw ChooseAMonString ; Probably used to be ChooseAFemalePKMNString + dw ChooseAMonString ; Probably used to be ChooseAMalePKMNString + dw ToWhichPKMNString + +ChooseAMonString: ; 0x504e4 + db "Choose a #MON.@" +UseOnWhichPKMNString: ; 0x504f3 + db "Use on which ", $e1, $e2, "?@" +WhichPKMNString: ; 0x50504 + db "Which ", $e1, $e2, "?@" +TeachWhichPKMNString: ; 0x5050e + db "Teach which ", $e1, $e2, "?@" +MoveToWhereString: ; 0x5051e + db "Move to where?@" +ChooseAFemalePKMNString: ; 0x5052d ; UNUSED + db "Choose a ♀", $e1, $e2, ".@" +ChooseAMalePKMNString: ; 0x5053b ; UNUSED + db "Choose a ♂", $e1, $e2, ".@" +ToWhichPKMNString: ; 0x50549 + db "To which ", $e1, $e2, "?@" + +YouHaveNoPKMNString: ; 0x50556 + db "You have no ", $e1, $e2, "!@" + +INCBIN "baserom.gbc",$50566,$5097B-$50566 dw Normal, Fighting, Flying, Poison, Ground, Rock, Bird, Bug, Ghost, Steel dw Normal, Normal, Normal, Normal, Normal, Normal, Normal, Normal, Normal @@ -42213,7 +42639,7 @@ UnknownScript_0x694d7: ; 0x694d7 checkcode $1 if_equal $6, UnknownScript_0x6952b giveegg TOGEPI, 5 - stringtotext $5523, $1 + stringtotext .eggname, $1 2call UnknownScript_0x69527 setbit1 $002d clearbit1 $0701 @@ -42223,16 +42649,15 @@ UnknownScript_0x694d7: ; 0x694d7 closetext loadmovesprites checkcode $9 - if_equal $1, UnknownScript_0x69511 + if_equal $1, .UnknownScript_0x69511 spriteface $0, $0 applymovement $6, MovementData_0x69549 playsound $0023 disappear $6 waitbutton end -; 0x69511 -UnknownScript_0x69511: ; 0x69511 +.UnknownScript_0x69511 ; 0x69511 applymovement $6, MovementData_0x6954e spriteface $0, $0 applymovement $6, MovementData_0x69551 @@ -42242,7 +42667,7 @@ UnknownScript_0x69511: ; 0x69511 end ; 0x69523 -UnknownRawText_0x69523: ; 0x69523 +.eggname ; 0x69523 db "EGG@" ; 0x69527 @@ -50457,18 +50882,18 @@ UnknownScript_0x72144: ; 0x72144 faceplayer loadfont checkbit1 $00ce - iftrue UnknownScript_0x72169 + iftrue .UnknownScript_0x72169 2writetext UnknownText_0x722dc keeptextopen checkitem COIN_CASE iffalse UnknownScript_0x7217b checkcoins 9998 if_equal $0, UnknownScript_0x72184 - stringtotext $6176, $1 - 2call UnknownScript_0x72172 + stringtotext .coinname, $1 + 2call .UnknownScript_0x72172 givecoins 18 setbit1 $00ce -UnknownScript_0x72169: ; 0x72169 +.UnknownScript_0x72169 ; 0x72169 2writetext UnknownText_0x72345 closetext loadmovesprites @@ -50476,12 +50901,12 @@ UnknownScript_0x72169: ; 0x72169 end ; 0x72172 -UnknownScript_0x72172: ; 0x72172 +.UnknownScript_0x72172 ; 0x72172 jumpstd $002f end ; 0x72176 -UnknownRawText_0x72176: ; 0x72176 +.coinname ; 0x72176 db "COIN@" ; 0x7217b @@ -58480,7 +58905,7 @@ UnknownScript_0x7a4f6: ; 0x7a4f6 loadfont 2writetext UnknownText_0x7a604 keeptextopen - stringtotext $6578, $1 + stringtotext GearName, $1 2call UnknownScript_0x7a57e setbit2 $0004 setbit2 $0002 @@ -58556,7 +58981,7 @@ UnknownScript_0x7a572: ; 0x7a572 2jump UnknownScript_0x7a4f6 ; 0x7a578 -UnknownRawText_0x7a578: ; 0x7a578 +GearName: ; 0x7a578 db $54, "GEAR@" ; 0x7a57e @@ -63060,34 +63485,34 @@ UnknownScript_0x7ee6c: ; 0x7ee6c faceplayer loadfont checkbit2 $0003 - iftrue UnknownScript_0x7ee8e + iftrue .UnknownScript_0x7ee8e checkbit1 $00c9 - iftrue UnknownScript_0x7ee80 + iftrue .UnknownScript_0x7ee80 2writetext UnknownText_0x7effb closetext loadmovesprites end ; 0x7ee80 -UnknownScript_0x7ee80: ; 0x7ee80 +.UnknownScript_0x7ee80: ; 0x7ee80 2writetext UnknownText_0x7f0a1 keeptextopen - stringtotext $6e98, $1 - 2call UnknownScript_0x7ee94 + stringtotext .expncardname, $1 + 2call .UnknownScript_0x7ee94 setbit2 $0003 -UnknownScript_0x7ee8e: ; 0x7ee8e +.UnknownScript_0x7ee8e ; 0x7ee8e 2writetext UnknownText_0x7f141 closetext loadmovesprites end ; 0x7ee94 -UnknownScript_0x7ee94: ; 0x7ee94 +.UnknownScript_0x7ee94 ; 0x7ee94 jumpstd $002f end ; 0x7ee98 -UnknownRawText_0x7ee98: ; 0x7ee98 +.expncardname ; 0x7ee98 db "EXPN CARD@" ; 0x7eea2 @@ -65576,8 +66001,319 @@ GetTimePalFade: ; 8c17c db %00000000 ; 8c20f -INCBIN "baserom.gbc",$8c20f,$8ff0d - $8c20f +INCBIN "baserom.gbc",$8c20f,$8eab3 - $8c20f +ReadMonMenuIcon: ; 8eab3 + cp EGG + jr z, .egg + dec a + ld hl, MonMenuIcons + ld e, a + ld d, $0 + add hl, de + ld a, [hl] + ret +.egg + ld a, ICON_EGG + ret +; 0x8eac4 + +MonMenuIcons: ; 8eac4 + db ICON_BULBASAUR ; BULBASAUR + db ICON_BULBASAUR ; IVYSAUR + db ICON_BULBASAUR ; VENUSAUR + db ICON_CHARMANDER ; CHARMANDER + db ICON_CHARMANDER ; CHARMELEON + db ICON_BIGMON ; CHARIZARD + db ICON_SQUIRTLE ; SQUIRTLE + db ICON_SQUIRTLE ; WARTORTLE + db ICON_SQUIRTLE ; BLASTOISE + db ICON_CATERPILLAR ; CATERPIE + db ICON_CATERPILLAR ; METAPOD + db ICON_MOTH ; BUTTERFREE + db ICON_CATERPILLAR ; WEEDLE + db ICON_CATERPILLAR ; KAKUNA + db ICON_BUG ; BEEDRILL + db ICON_BIRD ; PIDGEY + db ICON_BIRD ; PIDGEOTTO + db ICON_BIRD ; PIDGEOT + db ICON_FOX ; RATTATA + db ICON_FOX ; RATICATE + db ICON_BIRD ; SPEAROW + db ICON_BIRD ; FEAROW + db ICON_SERPENT ; EKANS + db ICON_SERPENT ; ARBOK + db ICON_PIKACHU ; PIKACHU + db ICON_PIKACHU ; RAICHU + db ICON_MONSTER ; SANDSHREW + db ICON_MONSTER ; SANDSLASH + db ICON_FOX ; NIDORAN_F + db ICON_FOX ; NIDORINA + db ICON_MONSTER ; NIDOQUEEN + db ICON_FOX ; NIDORAN_M + db ICON_FOX ; NIDORINO + db ICON_MONSTER ; NIDOKING + db ICON_CLEFAIRY ; CLEFAIRY + db ICON_CLEFAIRY ; CLEFABLE + db ICON_FOX ; VULPIX + db ICON_FOX ; NINETALES + db ICON_JIGGLYPUFF ; JIGGLYPUFF + db ICON_JIGGLYPUFF ; WIGGLYTUFF + db ICON_BAT ; ZUBAT + db ICON_BAT ; GOLBAT + db ICON_ODDISH ; ODDISH + db ICON_ODDISH ; GLOOM + db ICON_ODDISH ; VILEPLUME + db ICON_BUG ; PARAS + db ICON_BUG ; PARASECT + db ICON_CATERPILLAR ; VENONAT + db ICON_MOTH ; VENOMOTH + db ICON_DIGLETT ; DIGLETT + db ICON_DIGLETT ; DUGTRIO + db ICON_FOX ; MEOWTH + db ICON_FOX ; PERSIAN + db ICON_MONSTER ; PSYDUCK + db ICON_MONSTER ; GOLDUCK + db ICON_FIGHTER ; MANKEY + db ICON_FIGHTER ; PRIMEAPE + db ICON_FOX ; GROWLITHE + db ICON_FOX ; ARCANINE + db ICON_POLIWAG ; POLIWAG + db ICON_POLIWAG ; POLIWHIRL + db ICON_POLIWAG ; POLIWRATH + db ICON_HUMANSHAPE ; ABRA + db ICON_HUMANSHAPE ; KADABRA + db ICON_HUMANSHAPE ; ALAKAZAM + db ICON_FIGHTER ; MACHOP + db ICON_FIGHTER ; MACHOKE + db ICON_FIGHTER ; MACHAMP + db ICON_ODDISH ; BELLSPROUT + db ICON_ODDISH ; WEEPINBELL + db ICON_ODDISH ; VICTREEBEL + db ICON_JELLYFISH ; TENTACOOL + db ICON_JELLYFISH ; TENTACRUEL + db ICON_GEODUDE ; GEODUDE + db ICON_GEODUDE ; GRAVELER + db ICON_GEODUDE ; GOLEM + db ICON_EQUINE ; PONYTA + db ICON_EQUINE ; RAPIDASH + db ICON_SLOWPOKE ; SLOWPOKE + db ICON_SLOWPOKE ; SLOWBRO + db ICON_VOLTORB ; MAGNEMITE + db ICON_VOLTORB ; MAGNETON + db ICON_BIRD ; FARFETCH_D + db ICON_BIRD ; DODUO + db ICON_BIRD ; DODRIO + db ICON_LAPRAS ; SEEL + db ICON_LAPRAS ; DEWGONG + db ICON_BLOB ; GRIMER + db ICON_BLOB ; MUK + db ICON_SHELL ; SHELLDER + db ICON_SHELL ; CLOYSTER + db ICON_GHOST ; GASTLY + db ICON_GHOST ; HAUNTER + db ICON_GHOST ; GENGAR + db ICON_SERPENT ; ONIX + db ICON_HUMANSHAPE ; DROWZEE + db ICON_HUMANSHAPE ; HYPNO + db ICON_SHELL ; KRABBY + db ICON_SHELL ; KINGLER + db ICON_VOLTORB ; VOLTORB + db ICON_VOLTORB ; ELECTRODE + db ICON_ODDISH ; EXEGGCUTE + db ICON_ODDISH ; EXEGGUTOR + db ICON_MONSTER ; CUBONE + db ICON_MONSTER ; MAROWAK + db ICON_FIGHTER ; HITMONLEE + db ICON_FIGHTER ; HITMONCHAN + db ICON_MONSTER ; LICKITUNG + db ICON_BLOB ; KOFFING + db ICON_BLOB ; WEEZING + db ICON_EQUINE ; RHYHORN + db ICON_MONSTER ; RHYDON + db ICON_CLEFAIRY ; CHANSEY + db ICON_ODDISH ; TANGELA + db ICON_MONSTER ; KANGASKHAN + db ICON_FISH ; HORSEA + db ICON_FISH ; SEADRA + db ICON_FISH ; GOLDEEN + db ICON_FISH ; SEAKING + db ICON_STARYU ; STARYU + db ICON_STARYU ; STARMIE + db ICON_HUMANSHAPE ; MR__MIME + db ICON_BUG ; SCYTHER + db ICON_HUMANSHAPE ; JYNX + db ICON_HUMANSHAPE ; ELECTABUZZ + db ICON_HUMANSHAPE ; MAGMAR + db ICON_BUG ; PINSIR + db ICON_EQUINE ; TAUROS + db ICON_FISH ; MAGIKARP + db ICON_GYARADOS ; GYARADOS + db ICON_LAPRAS ; LAPRAS + db ICON_BLOB ; DITTO + db ICON_FOX ; EEVEE + db ICON_FOX ; VAPOREON + db ICON_FOX ; JOLTEON + db ICON_FOX ; FLAREON + db ICON_VOLTORB ; PORYGON + db ICON_SHELL ; OMANYTE + db ICON_SHELL ; OMASTAR + db ICON_SHELL ; KABUTO + db ICON_SHELL ; KABUTOPS + db ICON_BIRD ; AERODACTYL + db ICON_SNORLAX ; SNORLAX + db ICON_BIRD ; ARTICUNO + db ICON_BIRD ; ZAPDOS + db ICON_BIRD ; MOLTRES + db ICON_SERPENT ; DRATINI + db ICON_SERPENT ; DRAGONAIR + db ICON_BIGMON ; DRAGONITE + db ICON_HUMANSHAPE ; MEWTWO + db ICON_HUMANSHAPE ; MEW + db ICON_ODDISH ; CHIKORITA + db ICON_ODDISH ; BAYLEEF + db ICON_ODDISH ; MEGANIUM + db ICON_FOX ; CYNDAQUIL + db ICON_FOX ; QUILAVA + db ICON_FOX ; TYPHLOSION + db ICON_MONSTER ; TOTODILE + db ICON_MONSTER ; CROCONAW + db ICON_MONSTER ; FERALIGATR + db ICON_FOX ; SENTRET + db ICON_FOX ; FURRET + db ICON_BIRD ; HOOTHOOT + db ICON_BIRD ; NOCTOWL + db ICON_BUG ; LEDYBA + db ICON_BUG ; LEDIAN + db ICON_BUG ; SPINARAK + db ICON_BUG ; ARIADOS + db ICON_BAT ; CROBAT + db ICON_FISH ; CHINCHOU + db ICON_FISH ; LANTURN + db ICON_PIKACHU ; PICHU + db ICON_CLEFAIRY ; CLEFFA + db ICON_JIGGLYPUFF ; IGGLYBUFF + db ICON_CLEFAIRY ; TOGEPI + db ICON_BIRD ; TOGETIC + db ICON_BIRD ; NATU + db ICON_BIRD ; XATU + db ICON_FOX ; MAREEP + db ICON_MONSTER ; FLAAFFY + db ICON_MONSTER ; AMPHAROS + db ICON_ODDISH ; BELLOSSOM + db ICON_JIGGLYPUFF ; MARILL + db ICON_JIGGLYPUFF ; AZUMARILL + db ICON_SUDOWOODO ; SUDOWOODO + db ICON_POLIWAG ; POLITOED + db ICON_ODDISH ; HOPPIP + db ICON_ODDISH ; SKIPLOOM + db ICON_ODDISH ; JUMPLUFF + db ICON_MONSTER ; AIPOM + db ICON_ODDISH ; SUNKERN + db ICON_ODDISH ; SUNFLORA + db ICON_BUG ; YANMA + db ICON_MONSTER ; WOOPER + db ICON_MONSTER ; QUAGSIRE + db ICON_FOX ; ESPEON + db ICON_FOX ; UMBREON + db ICON_BIRD ; MURKROW + db ICON_SLOWPOKE ; SLOWKING + db ICON_GHOST ; MISDREAVUS + db ICON_UNOWN ; UNOWN + db ICON_GHOST ; WOBBUFFET + db ICON_EQUINE ; GIRAFARIG + db ICON_BUG ; PINECO + db ICON_BUG ; FORRETRESS + db ICON_SERPENT ; DUNSPARCE + db ICON_BUG ; GLIGAR + db ICON_SERPENT ; STEELIX + db ICON_MONSTER ; SNUBBULL + db ICON_MONSTER ; GRANBULL + db ICON_FISH ; QWILFISH + db ICON_BUG ; SCIZOR + db ICON_BUG ; SHUCKLE + db ICON_BUG ; HERACROSS + db ICON_FOX ; SNEASEL + db ICON_MONSTER ; TEDDIURSA + db ICON_MONSTER ; URSARING + db ICON_BLOB ; SLUGMA + db ICON_BLOB ; MAGCARGO + db ICON_EQUINE ; SWINUB + db ICON_EQUINE ; PILOSWINE + db ICON_SHELL ; CORSOLA + db ICON_FISH ; REMORAID + db ICON_FISH ; OCTILLERY + db ICON_MONSTER ; DELIBIRD + db ICON_FISH ; MANTINE + db ICON_BIRD ; SKARMORY + db ICON_FOX ; HOUNDOUR + db ICON_FOX ; HOUNDOOM + db ICON_BIGMON ; KINGDRA + db ICON_EQUINE ; PHANPY + db ICON_EQUINE ; DONPHAN + db ICON_VOLTORB ; PORYGON2 + db ICON_EQUINE ; STANTLER + db ICON_MONSTER ; SMEARGLE + db ICON_FIGHTER ; TYROGUE + db ICON_FIGHTER ; HITMONTOP + db ICON_HUMANSHAPE ; SMOOCHUM + db ICON_HUMANSHAPE ; ELEKID + db ICON_HUMANSHAPE ; MAGBY + db ICON_EQUINE ; MILTANK + db ICON_CLEFAIRY ; BLISSEY + db ICON_FOX ; RAIKOU + db ICON_FOX ; ENTEI + db ICON_FOX ; SUICUNE + db ICON_MONSTER ; LARVITAR + db ICON_MONSTER ; PUPITAR + db ICON_MONSTER ; TYRANITAR + db ICON_LUGIA ; LUGIA + db ICON_HO_OH ; HO_OH + db ICON_HUMANSHAPE ; CELEBI +; 8ebbf + +INCBIN "baserom.gbc",$8ebbf,$8ec0d - $8ebbf + +PoliwagIcon: INCBIN "gfx/icon/poliwag.2bpp" ; 0x8ec0d +JigglypuffIcon: INCBIN "gfx/icon/jigglypuff.2bpp" ; 0x8ec8d +DiglettIcon: INCBIN "gfx/icon/diglett.2bpp" ; 0x8ed0d +PikachuIcon: INCBIN "gfx/icon/pikachu.2bpp" ; 0x8ed8d +StaryuIcon: INCBIN "gfx/icon/staryu.2bpp" ; 0x8ee0d +FishIcon: INCBIN "gfx/icon/fish.2bpp" ; 0x8ee8d +BirdIcon: INCBIN "gfx/icon/bird.2bpp" ; 0x8ef0d +MonsterIcon: INCBIN "gfx/icon/monster.2bpp" ; 0x8ef8d +ClefairyIcon: INCBIN "gfx/icon/clefairy.2bpp" ; 0x8f00d +OddishIcon: INCBIN "gfx/icon/oddish.2bpp" ; 0x8f08d +BugIcon: INCBIN "gfx/icon/bug.2bpp" ; 0x8f10d +GhostIcon: INCBIN "gfx/icon/ghost.2bpp" ; 0x8f18d +LaprasIcon: INCBIN "gfx/icon/lapras.2bpp" ; 0x8f20d +HumanshapeIcon: INCBIN "gfx/icon/humanshape.2bpp" ; 0x8f28d +FoxIcon: INCBIN "gfx/icon/fox.2bpp" ; 0x8f30d +EquineIcon: INCBIN "gfx/icon/equine.2bpp" ; 0x8f38d +ShellIcon: INCBIN "gfx/icon/shell.2bpp" ; 0x8f40d +BlobIcon: INCBIN "gfx/icon/blob.2bpp" ; 0x8f48d +SerpentIcon: INCBIN "gfx/icon/serpent.2bpp" ; 0x8f50d +VoltorbIcon: INCBIN "gfx/icon/voltorb.2bpp" ; 0x8f58d +SquirtleIcon: INCBIN "gfx/icon/squirtle.2bpp" ; 0x8f60d +BulbasaurIcon: INCBIN "gfx/icon/bulbasaur.2bpp" ; 0x8f68d +CharmanderIcon: INCBIN "gfx/icon/charmander.2bpp" ; 0x8f70d +CaterpillarIcon: INCBIN "gfx/icon/caterpillar.2bpp" ; 0x8f78d +UnownIcon: INCBIN "gfx/icon/unown.2bpp" ; 0x8f80d +GeodudeIcon: INCBIN "gfx/icon/geodude.2bpp" ; 0x8f88d +FighterIcon: INCBIN "gfx/icon/fighter.2bpp" ; 0x8f90d +EggIcon: INCBIN "gfx/icon/egg.2bpp" ; 0x8f98d +JellyfishIcon: INCBIN "gfx/icon/jellyfish.2bpp" ; 0x8fa0d +MothIcon: INCBIN "gfx/icon/moth.2bpp" ; 0x8fa8d +BatIcon: INCBIN "gfx/icon/bat.2bpp" ; 0x8fb0d +SnorlaxIcon: INCBIN "gfx/icon/snorlax.2bpp" ; 0x8fb8d +Ho_ohIcon: INCBIN "gfx/icon/ho_oh.2bpp" ; 0x8fc0d +LugiaIcon: INCBIN "gfx/icon/lugia.2bpp" ; 0x8fc8d +GyaradosIcon: INCBIN "gfx/icon/gyarados.2bpp" ; 0x8fd0d +SlowpokeIcon: INCBIN "gfx/icon/slowpoke.2bpp" ; 0x8fd8d +SudowoodoIcon: INCBIN "gfx/icon/sudowoodo.2bpp" ; 0x8fe0d +BigmonIcon: INCBIN "gfx/icon/bigmon.2bpp" ; 0x8fe8d + +; 8ff0d end of bank SECTION "bank24",DATA,BANK[$24] @@ -116865,8 +117601,8 @@ UnknownScript_0x19c01f: ; 0x19c01f loadfont 2writetext UnknownText_0x19c3ec keeptextopen - stringtotext $409b, $1 - 2call UnknownScript_0x19c097 + stringtotext .mapcardname, $1 + 2call .UnknownScript_0x19c097 setbit2 $0001 2writetext UnknownText_0x19c438 keeptextopen @@ -116882,14 +117618,12 @@ UnknownScript_0x19c01f: ; 0x19c01f clearbit1 $06ff waitbutton end -; 0x19c097 -UnknownScript_0x19c097: ; 0x19c097 +.UnknownScript_0x19c097 ; 0x19c097 jumpstd $002f end -; 0x19c09b -UnknownRawText_0x19c09b: ; 0x19c09b +.mapcardname ; 0x19c09b db "MAP CARD@" ; 0x19c0a4 @@ -780,7 +780,12 @@ CurPartyMon: ; d109 ; 0-5 ds 1 - ds 57 + ds 55 + +PartyMenuActionText ; d141 + ds 1 + + ds 1 CurPartyLevel: ; d143 ds 1 @@ -1487,4 +1492,4 @@ RoamMon3MapNumber: ; dfe0 RoamMon3CurHP: ; dfe1 ds 1 RoamMon3DVs: ; dfe2 - ds 2
\ No newline at end of file + ds 2 |