summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/events/unused_pokemonpc_menudata.asm30
-rw-r--r--engine/events/pokemon_pc.asm2
-rw-r--r--engine/menus/naming_screen.asm2
-rw-r--r--engine/overworld/load_map_part.asm119
-rwxr-xr-xengine/overworld/player_object.asm2
-rw-r--r--engine/tilesets/map_palettes.asm2
-rw-r--r--gfx/emotes/bolt.pngbin0 -> 126 bytes
-rw-r--r--gfx/emotes/fish.pngbin0 -> 123 bytes
-rw-r--r--gfx/emotes/happy.pngbin0 -> 125 bytes
-rw-r--r--gfx/emotes/heart.pngbin0 -> 133 bytes
-rw-r--r--gfx/emotes/question.pngbin0 -> 126 bytes
-rw-r--r--gfx/emotes/sad.pngbin0 -> 127 bytes
-rw-r--r--gfx/emotes/shock.pngbin0 -> 110 bytes
-rw-r--r--gfx/emotes/sleep.pngbin0 -> 123 bytes
-rw-r--r--gfx/evo/egg_hatch.pngbin0 -> 107 bytes
-rw-r--r--gfx/overworld/boulder_dust.pngbin0 -> 106 bytes
-rw-r--r--gfx/overworld/chris_fish.pngbin0 -> 195 bytes
-rw-r--r--gfx/overworld/cut_grass.pngbin0 -> 134 bytes
-rw-r--r--gfx/overworld/cut_tree.pngbin0 -> 140 bytes
-rw-r--r--gfx/overworld/fishing_rod.pngbin0 -> 103 bytes
-rw-r--r--gfx/overworld/grass_rustle.pngbin0 -> 88 bytes
-rw-r--r--gfx/overworld/headbutt_tree.pngbin0 -> 197 bytes
-rw-r--r--gfx/overworld/shadow.pngbin0 -> 84 bytes
-rw-r--r--gfx/printer/bold_a.pngbin0 -> 85 bytes
-rw-r--r--gfx/printer/bold_b.pngbin0 -> 77 bytes
-rw-r--r--gfx/sprites/big_lapras.pngbin0 -> 193 bytes
-rw-r--r--gfx/sprites/big_onix.pngbin0 -> 300 bytes
-rw-r--r--gfx/sprites/big_snorlax.pngbin0 -> 183 bytes
-rw-r--r--gfx/sprites/biker.pngbin0 -> 346 bytes
-rw-r--r--gfx/sprites/bill.pngbin0 -> 307 bytes
-rw-r--r--gfx/sprites/bird.pngbin0 -> 354 bytes
-rw-r--r--gfx/sprites/black_belt.pngbin0 -> 279 bytes
-rw-r--r--gfx/sprites/blaine.pngbin0 -> 304 bytes
-rw-r--r--gfx/sprites/blue.pngbin0 -> 321 bytes
-rw-r--r--gfx/sprites/boulder.pngbin0 -> 143 bytes
-rw-r--r--gfx/sprites/brock.pngbin0 -> 276 bytes
-rw-r--r--gfx/sprites/bruno.pngbin0 -> 286 bytes
-rw-r--r--gfx/sprites/buena.pngbin0 -> 263 bytes
-rw-r--r--gfx/sprites/bug_catcher.pngbin0 -> 237 bytes
-rw-r--r--gfx/sprites/bugsy.pngbin0 -> 277 bytes
-rw-r--r--gfx/sprites/cal.pngbin0 -> 305 bytes
-rw-r--r--gfx/sprites/captain.pngbin0 -> 227 bytes
-rw-r--r--gfx/sprites/chris.pngbin0 -> 300 bytes
-rw-r--r--gfx/sprites/chris_bike.pngbin0 -> 373 bytes
-rw-r--r--gfx/sprites/chuck.pngbin0 -> 276 bytes
-rw-r--r--gfx/sprites/clair.pngbin0 -> 350 bytes
-rw-r--r--gfx/sprites/clerk.pngbin0 -> 292 bytes
-rw-r--r--gfx/sprites/cooltrainer_f.pngbin0 -> 349 bytes
-rw-r--r--gfx/sprites/cooltrainer_m.pngbin0 -> 286 bytes
-rw-r--r--gfx/sprites/daisy.pngbin0 -> 277 bytes
-rw-r--r--gfx/sprites/dragon.pngbin0 -> 327 bytes
-rw-r--r--gfx/sprites/elder.pngbin0 -> 319 bytes
-rw-r--r--gfx/sprites/elm.pngbin0 -> 314 bytes
-rw-r--r--gfx/sprites/erika.pngbin0 -> 233 bytes
-rw-r--r--gfx/sprites/fairy.pngbin0 -> 317 bytes
-rw-r--r--gfx/sprites/falkner.pngbin0 -> 303 bytes
-rw-r--r--gfx/sprites/famicom.pngbin0 -> 110 bytes
-rw-r--r--gfx/sprites/fisher.pngbin0 -> 308 bytes
-rw-r--r--gfx/sprites/fishing_guru.pngbin0 -> 269 bytes
-rw-r--r--gfx/sprites/fruit_tree.pngbin0 -> 148 bytes
-rw-r--r--gfx/sprites/gameboy_kid.pngbin0 -> 209 bytes
-rw-r--r--gfx/sprites/gentleman.pngbin0 -> 264 bytes
-rw-r--r--gfx/sprites/gold_trophy.pngbin0 -> 121 bytes
-rw-r--r--gfx/sprites/gramps.pngbin0 -> 338 bytes
-rw-r--r--gfx/sprites/granny.pngbin0 -> 360 bytes
-rw-r--r--gfx/sprites/gym_guy.pngbin0 -> 295 bytes
-rw-r--r--gfx/sprites/janine.pngbin0 -> 259 bytes
-rw-r--r--gfx/sprites/jasmine.pngbin0 -> 293 bytes
-rw-r--r--gfx/sprites/karen.pngbin0 -> 207 bytes
-rw-r--r--gfx/sprites/kimono_girl.pngbin0 -> 305 bytes
-rw-r--r--gfx/sprites/koga.pngbin0 -> 253 bytes
-rw-r--r--gfx/sprites/kurt.pngbin0 -> 309 bytes
-rw-r--r--gfx/sprites/lance.pngbin0 -> 287 bytes
-rw-r--r--gfx/sprites/lass.pngbin0 -> 305 bytes
-rw-r--r--gfx/sprites/link_receptionist.pngbin0 -> 266 bytes
-rw-r--r--gfx/sprites/misty.pngbin0 -> 274 bytes
-rw-r--r--gfx/sprites/mom.pngbin0 -> 253 bytes
-rw-r--r--gfx/sprites/monster.pngbin0 -> 350 bytes
-rw-r--r--gfx/sprites/morty.pngbin0 -> 282 bytes
-rw-r--r--gfx/sprites/n64.pngbin0 -> 142 bytes
-rw-r--r--gfx/sprites/nurse.pngbin0 -> 210 bytes
-rw-r--r--gfx/sprites/oak.pngbin0 -> 305 bytes
-rw-r--r--gfx/sprites/officer.pngbin0 -> 285 bytes
-rw-r--r--gfx/sprites/old_link_receptionist.pngbin0 -> 141 bytes
-rw-r--r--gfx/sprites/paper.pngbin0 -> 111 bytes
-rw-r--r--gfx/sprites/pharmacist.pngbin0 -> 292 bytes
-rw-r--r--gfx/sprites/poke_ball.pngbin0 -> 119 bytes
-rw-r--r--gfx/sprites/pokedex.pngbin0 -> 121 bytes
-rw-r--r--gfx/sprites/pokefan_f.pngbin0 -> 264 bytes
-rw-r--r--gfx/sprites/pokefan_m.pngbin0 -> 289 bytes
-rw-r--r--gfx/sprites/pryce.pngbin0 -> 298 bytes
-rw-r--r--gfx/sprites/receptionist.pngbin0 -> 237 bytes
-rw-r--r--gfx/sprites/red.pngbin0 -> 294 bytes
-rw-r--r--gfx/sprites/reds_mom.pngbin0 -> 281 bytes
-rw-r--r--gfx/sprites/rock.pngbin0 -> 146 bytes
-rw-r--r--gfx/sprites/rocker.pngbin0 -> 296 bytes
-rw-r--r--gfx/sprites/rocket.pngbin0 -> 247 bytes
-rw-r--r--gfx/sprites/rocket_girl.pngbin0 -> 253 bytes
-rw-r--r--gfx/sprites/sabrina.pngbin0 -> 260 bytes
-rw-r--r--gfx/sprites/sage.pngbin0 -> 305 bytes
-rw-r--r--gfx/sprites/sailor.pngbin0 -> 307 bytes
-rw-r--r--gfx/sprites/scientist.pngbin0 -> 283 bytes
-rw-r--r--gfx/sprites/silver.pngbin0 -> 300 bytes
-rw-r--r--gfx/sprites/silver_trophy.pngbin0 -> 120 bytes
-rw-r--r--gfx/sprites/slowpoke.pngbin0 -> 139 bytes
-rw-r--r--gfx/sprites/snes.pngbin0 -> 109 bytes
-rw-r--r--gfx/sprites/sudowoodo.pngbin0 -> 180 bytes
-rw-r--r--gfx/sprites/super_nerd.pngbin0 -> 293 bytes
-rw-r--r--gfx/sprites/surf.pngbin0 -> 355 bytes
-rw-r--r--gfx/sprites/surfing_pikachu.pngbin0 -> 443 bytes
-rw-r--r--gfx/sprites/surge.pngbin0 -> 277 bytes
-rw-r--r--gfx/sprites/swimmer_girl.pngbin0 -> 328 bytes
-rw-r--r--gfx/sprites/swimmer_guy.pngbin0 -> 303 bytes
-rw-r--r--gfx/sprites/teacher.pngbin0 -> 283 bytes
-rw-r--r--gfx/sprites/twin.pngbin0 -> 254 bytes
-rw-r--r--gfx/sprites/unused_guy.pngbin0 -> 250 bytes
-rw-r--r--gfx/sprites/virtual_boy.pngbin0 -> 127 bytes
-rw-r--r--gfx/sprites/whitney.pngbin0 -> 298 bytes
-rw-r--r--gfx/sprites/will.pngbin0 -> 216 bytes
-rw-r--r--gfx/sprites/youngster.pngbin0 -> 281 bytes
-rw-r--r--gfx/unknown/gfx_17079.2bppbin0 -> 120 bytes
-rw-r--r--gfx/unknown/gfx_17079.pngbin0 -> 173 bytes
-rw-r--r--gfx/unknown/gfx_170f1.2bppbin0 -> 224 bytes
-rw-r--r--gfx/unknown/gfx_170f1.pngbin0 -> 201 bytes
-rw-r--r--home/gfx.asm2
-rw-r--r--home/map.asm4
-rw-r--r--home/palettes.asm2
-rw-r--r--main.asm4
-rw-r--r--tools/gfx.py25
-rw-r--r--unknown/bank05_704d.asm30
130 files changed, 214 insertions, 10 deletions
diff --git a/data/events/unused_pokemonpc_menudata.asm b/data/events/unused_pokemonpc_menudata.asm
new file mode 100644
index 00000000..24c23c24
--- /dev/null
+++ b/data/events/unused_pokemonpc_menudata.asm
@@ -0,0 +1,30 @@
+UnusedMenuData156be:
+ db $06, $00, $4a, $06, $06, $50, $06, $06, $58, $1e, $40, $00, $00, $c7, $40
+ db $06, $00, $4a, $06, $06, $50, $06, $06, $58, $4a, $40, $00, $00, $c7, $40
+ db $06, $06, $5a, $06, $0c, $60, $06, $0c, $68, $1e, $40, $00, $00, $f7, $40
+ db $70, $07, $44, $06, $00, $40, $06, $00, $48, $1e, $40, $00, $00, $97, $40
+ db $37, $33, $61, $37, $d3, $65, $37, $d3, $69, $8e, $42, $00, $00, $27, $41
+ db $07, $4c, $5e, $07, $2c, $62, $07, $2c, $66, $8e, $42, $00, $00, $57, $41
+ db $07, $0c, $4c, $07, $3c, $50, $07, $3c, $54, $8e, $42, $00, $00, $87, $41
+ db $07, $0c, $43, $07, $0c, $47, $07, $0c, $4b, $8e, $42, $00, $00, $b7, $41
+ db $07, $3c, $55, $07, $4c, $59, $07, $4c, $5d, $d6, $40, $00, $00, $e7, $41
+ db $08, $b1, $4a, $08, $81, $4e, $08, $81, $52, $8e, $42, $00, $00, $17, $42
+ db $08, $81, $53, $08, $a1, $57, $08, $a1, $5b, $8e, $42, $00, $00, $47, $42
+ db $08, $a1, $5c, $08, $51, $60, $08, $51, $64, $8e, $42, $00, $00, $77, $42
+ db $07, $2c, $67, $07, $bc, $6a, $07, $bc, $6e, $8e, $42, $00, $00, $a7, $42
+ db $08, $51, $65, $08, $51, $69, $08, $51, $6d, $8e, $42, $00, $00, $d7, $42
+ db $0c, $00, $40, $0c, $e0, $44, $0c, $e0, $48, $06, $41, $00, $00, $07, $43
+ db $06, $0c, $74, $06, $bc, $78, $06, $bc, $7c, $8e, $42, $00, $00, $37, $43
+ db $08, $51, $6e, $08, $f1, $71, $08, $f1, $75, $8e, $42, $00, $00, $57, $44
+ db $37, $73, $57, $37, $33, $5c, $37, $33, $60, $8e, $42, $00, $00, $b7, $44
+ db $37, $d3, $6a, $37, $d3, $6e, $37, $d3, $72, $8e, $42, $00, $00, $e7, $44
+ db $37, $d3, $73, $37, $93, $78, $37, $93, $7c, $8e, $42, $00, $00, $17, $45
+ db $08, $81, $41, $08, $b1, $45, $08, $b1, $49, $26, $42, $00, $00, $67, $43
+ db $07, $bc, $6f, $07, $4c, $73, $07, $4c, $77, $8e, $41, $00, $00, $97, $43
+ db $0c, $e0, $49, $0c, $40, $4e, $0c, $40, $52, $1e, $40, $00, $00, $c7, $43
+ db $0c, $40, $53, $0c, $70, $56, $0c, $70, $5a, $8e, $42, $00, $00, $f7, $43
+ db $0c, $70, $5b, $0c, $c0, $5f, $0c, $c0, $63, $8e, $42, $00, $00, $27, $44
+ db $0c, $c0, $64, $0c, $90, $68, $0c, $90, $6c, $8e, $42, $00, $00, $87, $44
+ db $0c, $90, $6d, $0c, $d0, $71, $0c, $d0, $75, $da, $41, $00, $00, $77, $45
+ db $0c, $d0, $76, $07, $4c, $73, $07, $4c, $77, $8e, $41, $00, $00, $97, $43
+ db $0c, $10, $7a, $08, $f1, $76, $37, $93, $7d, $1e, $40, $00, $00, $a7, $45
diff --git a/engine/events/pokemon_pc.asm b/engine/events/pokemon_pc.asm
index e22a2ffc..7d3cc42e 100644
--- a/engine/events/pokemon_pc.asm
+++ b/engine/events/pokemon_pc.asm
@@ -1,3 +1,5 @@
+INCLUDE "data/events/unused_pokemonpc_menudata.asm"
+
PokemonCenterPC:
call PC_CheckPartyForPokemon
ret c
diff --git a/engine/menus/naming_screen.asm b/engine/menus/naming_screen.asm
index 937f4267..4a86b58d 100644
--- a/engine/menus/naming_screen.asm
+++ b/engine/menus/naming_screen.asm
@@ -926,7 +926,7 @@ Function12267: ; 12267 (4:6267)
ld a, BANK(MailIcon)
call FarCopyBytes
xor a
- ld hl, wTilemapEnd
+ ld hl, wSpriteAnimDict
ld [hli], a
ld [hl], a
lb de, $18, $10
diff --git a/engine/overworld/load_map_part.asm b/engine/overworld/load_map_part.asm
index da143640..23758f28 100644
--- a/engine/overworld/load_map_part.asm
+++ b/engine/overworld/load_map_part.asm
@@ -34,3 +34,122 @@ _LoadMapPart::
dec b
jr nz, .loop
ret
+
+UnusedFunction153ba:
+ decoord 2, 2
+ ld bc, (SURROUNDING_WIDTH + 1) * 2
+ add hl, bc
+ ld c, SCREEN_HEIGHT - 4 * 1
+.loop:
+ ld b, SCREEN_WIDTH - SCREEN_META_WIDTH
+.loop2:
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec b
+ jr nz, .loop2
+ ld a, l
+ add SCREEN_META_WIDTH + METATILE_WIDTH
+ ld l, a
+ jr nc, .carry1
+ inc h
+
+.carry1:
+ ld a, e
+ add SCREEN_META_WIDTH
+ ld e, a
+ jr nc, .carry2
+ inc d
+
+.carry2:
+ dec c
+ jr nz, .loop
+ ret
+
+UnusedFunction153dd:
+ decoord 4, 4
+ ld bc, (SURROUNDING_WIDTH + 1) * 4
+ add hl, bc
+ ld c, SCREEN_HEIGHT - 4 * 2
+.loop:
+ ld b, SCREEN_WIDTH - SCREEN_META_WIDTH - METATILE_WIDTH
+.loop2:
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec b
+ jr nz, .loop2
+ ld a, l
+ add SCREEN_META_WIDTH + METATILE_WIDTH * 2
+ ld l, a
+ jr nc, .carry1
+ inc h
+
+.carry1:
+ ld a, e
+ add SCREEN_META_WIDTH + METATILE_WIDTH
+ ld e, a
+ jr nc, .carry2
+ inc d
+
+.carry2:
+ dec c
+ jr nz, .loop
+ ret
+
+UnusedFunction15400:
+ decoord 6, 6
+ ld bc, (SURROUNDING_WIDTH + 1) * 6
+ add hl, bc
+ ld c, SCREEN_HEIGHT - 4 * 3
+.loop:
+ ld b, SCREEN_WIDTH - SCREEN_META_WIDTH - METATILE_WIDTH * 2
+.loop2:
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec b
+ jr nz, .loop2
+ ld a, l
+ add SCREEN_META_WIDTH + METATILE_WIDTH * 3
+ ld l, a
+ jr nc, .carry1
+ inc h
+
+.carry1:
+ ld a, e
+ add SCREEN_META_WIDTH + METATILE_WIDTH * 2
+ ld e, a
+ jr nc, .carry2
+ inc d
+
+.carry2:
+ dec c
+ jr nz, .loop
+ ret
+
+UnusedFunction15423:
+ decoord 8, 8
+ ld bc, (SURROUNDING_WIDTH + 1) * 8
+ add hl, bc
+.loop
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ ld bc, SCREEN_WIDTH + 2
+ add hl, bc
+ ld a, e
+ add SCREEN_META_WIDTH + METATILE_WIDTH * 3 + 1
+ ld e, a
+ jr nc, .carry
+ inc d
+
+.carry:
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hli]
+ ld [de], a
+ ret
diff --git a/engine/overworld/player_object.asm b/engine/overworld/player_object.asm
index e5a0c374..1ea552b5 100755
--- a/engine/overworld/player_object.asm
+++ b/engine/overworld/player_object.asm
@@ -4,7 +4,7 @@ BlankScreen:
ldh [hBGMapMode], a
call ClearBGPalettes
call ClearSprites
- ld hl, wTilemap
+ hlcoord 0, 0
ld bc, SCREEN_HEIGHT * SCREEN_WIDTH
ld a, " "
call ByteFill
diff --git a/engine/tilesets/map_palettes.asm b/engine/tilesets/map_palettes.asm
index 3d7a5b1b..c8a4a57d 100644
--- a/engine/tilesets/map_palettes.asm
+++ b/engine/tilesets/map_palettes.asm
@@ -1,5 +1,5 @@
_SwapTextboxPalettes::
- ld hl, wTilemap
+ hlcoord 0, 0
ld de, wAttrmap
ld b, SCREEN_HEIGHT
.loop
diff --git a/gfx/emotes/bolt.png b/gfx/emotes/bolt.png
new file mode 100644
index 00000000..0eef6ad3
--- /dev/null
+++ b/gfx/emotes/bolt.png
Binary files differ
diff --git a/gfx/emotes/fish.png b/gfx/emotes/fish.png
new file mode 100644
index 00000000..216c9c43
--- /dev/null
+++ b/gfx/emotes/fish.png
Binary files differ
diff --git a/gfx/emotes/happy.png b/gfx/emotes/happy.png
new file mode 100644
index 00000000..dd65f4d1
--- /dev/null
+++ b/gfx/emotes/happy.png
Binary files differ
diff --git a/gfx/emotes/heart.png b/gfx/emotes/heart.png
new file mode 100644
index 00000000..166fff51
--- /dev/null
+++ b/gfx/emotes/heart.png
Binary files differ
diff --git a/gfx/emotes/question.png b/gfx/emotes/question.png
new file mode 100644
index 00000000..091ddbba
--- /dev/null
+++ b/gfx/emotes/question.png
Binary files differ
diff --git a/gfx/emotes/sad.png b/gfx/emotes/sad.png
new file mode 100644
index 00000000..e241a5b1
--- /dev/null
+++ b/gfx/emotes/sad.png
Binary files differ
diff --git a/gfx/emotes/shock.png b/gfx/emotes/shock.png
new file mode 100644
index 00000000..f15cf50f
--- /dev/null
+++ b/gfx/emotes/shock.png
Binary files differ
diff --git a/gfx/emotes/sleep.png b/gfx/emotes/sleep.png
new file mode 100644
index 00000000..41c958f7
--- /dev/null
+++ b/gfx/emotes/sleep.png
Binary files differ
diff --git a/gfx/evo/egg_hatch.png b/gfx/evo/egg_hatch.png
new file mode 100644
index 00000000..e45921e1
--- /dev/null
+++ b/gfx/evo/egg_hatch.png
Binary files differ
diff --git a/gfx/overworld/boulder_dust.png b/gfx/overworld/boulder_dust.png
new file mode 100644
index 00000000..9acb11c1
--- /dev/null
+++ b/gfx/overworld/boulder_dust.png
Binary files differ
diff --git a/gfx/overworld/chris_fish.png b/gfx/overworld/chris_fish.png
new file mode 100644
index 00000000..91778385
--- /dev/null
+++ b/gfx/overworld/chris_fish.png
Binary files differ
diff --git a/gfx/overworld/cut_grass.png b/gfx/overworld/cut_grass.png
new file mode 100644
index 00000000..b10e0cf8
--- /dev/null
+++ b/gfx/overworld/cut_grass.png
Binary files differ
diff --git a/gfx/overworld/cut_tree.png b/gfx/overworld/cut_tree.png
new file mode 100644
index 00000000..c1f1bc97
--- /dev/null
+++ b/gfx/overworld/cut_tree.png
Binary files differ
diff --git a/gfx/overworld/fishing_rod.png b/gfx/overworld/fishing_rod.png
new file mode 100644
index 00000000..32d27726
--- /dev/null
+++ b/gfx/overworld/fishing_rod.png
Binary files differ
diff --git a/gfx/overworld/grass_rustle.png b/gfx/overworld/grass_rustle.png
new file mode 100644
index 00000000..0b2d73e2
--- /dev/null
+++ b/gfx/overworld/grass_rustle.png
Binary files differ
diff --git a/gfx/overworld/headbutt_tree.png b/gfx/overworld/headbutt_tree.png
new file mode 100644
index 00000000..4cbb595f
--- /dev/null
+++ b/gfx/overworld/headbutt_tree.png
Binary files differ
diff --git a/gfx/overworld/shadow.png b/gfx/overworld/shadow.png
new file mode 100644
index 00000000..ba3dab5b
--- /dev/null
+++ b/gfx/overworld/shadow.png
Binary files differ
diff --git a/gfx/printer/bold_a.png b/gfx/printer/bold_a.png
new file mode 100644
index 00000000..56252c42
--- /dev/null
+++ b/gfx/printer/bold_a.png
Binary files differ
diff --git a/gfx/printer/bold_b.png b/gfx/printer/bold_b.png
new file mode 100644
index 00000000..8ce07a03
--- /dev/null
+++ b/gfx/printer/bold_b.png
Binary files differ
diff --git a/gfx/sprites/big_lapras.png b/gfx/sprites/big_lapras.png
new file mode 100644
index 00000000..45f27649
--- /dev/null
+++ b/gfx/sprites/big_lapras.png
Binary files differ
diff --git a/gfx/sprites/big_onix.png b/gfx/sprites/big_onix.png
new file mode 100644
index 00000000..6002767c
--- /dev/null
+++ b/gfx/sprites/big_onix.png
Binary files differ
diff --git a/gfx/sprites/big_snorlax.png b/gfx/sprites/big_snorlax.png
new file mode 100644
index 00000000..f53f7110
--- /dev/null
+++ b/gfx/sprites/big_snorlax.png
Binary files differ
diff --git a/gfx/sprites/biker.png b/gfx/sprites/biker.png
new file mode 100644
index 00000000..5d056cf4
--- /dev/null
+++ b/gfx/sprites/biker.png
Binary files differ
diff --git a/gfx/sprites/bill.png b/gfx/sprites/bill.png
new file mode 100644
index 00000000..d72bb7ba
--- /dev/null
+++ b/gfx/sprites/bill.png
Binary files differ
diff --git a/gfx/sprites/bird.png b/gfx/sprites/bird.png
new file mode 100644
index 00000000..9e200994
--- /dev/null
+++ b/gfx/sprites/bird.png
Binary files differ
diff --git a/gfx/sprites/black_belt.png b/gfx/sprites/black_belt.png
new file mode 100644
index 00000000..9aec228c
--- /dev/null
+++ b/gfx/sprites/black_belt.png
Binary files differ
diff --git a/gfx/sprites/blaine.png b/gfx/sprites/blaine.png
new file mode 100644
index 00000000..6ce1f309
--- /dev/null
+++ b/gfx/sprites/blaine.png
Binary files differ
diff --git a/gfx/sprites/blue.png b/gfx/sprites/blue.png
new file mode 100644
index 00000000..17fc2fdc
--- /dev/null
+++ b/gfx/sprites/blue.png
Binary files differ
diff --git a/gfx/sprites/boulder.png b/gfx/sprites/boulder.png
new file mode 100644
index 00000000..9b408e02
--- /dev/null
+++ b/gfx/sprites/boulder.png
Binary files differ
diff --git a/gfx/sprites/brock.png b/gfx/sprites/brock.png
new file mode 100644
index 00000000..f9f8ec43
--- /dev/null
+++ b/gfx/sprites/brock.png
Binary files differ
diff --git a/gfx/sprites/bruno.png b/gfx/sprites/bruno.png
new file mode 100644
index 00000000..5f77217e
--- /dev/null
+++ b/gfx/sprites/bruno.png
Binary files differ
diff --git a/gfx/sprites/buena.png b/gfx/sprites/buena.png
new file mode 100644
index 00000000..af5a7e7e
--- /dev/null
+++ b/gfx/sprites/buena.png
Binary files differ
diff --git a/gfx/sprites/bug_catcher.png b/gfx/sprites/bug_catcher.png
new file mode 100644
index 00000000..e1306b6a
--- /dev/null
+++ b/gfx/sprites/bug_catcher.png
Binary files differ
diff --git a/gfx/sprites/bugsy.png b/gfx/sprites/bugsy.png
new file mode 100644
index 00000000..b528045b
--- /dev/null
+++ b/gfx/sprites/bugsy.png
Binary files differ
diff --git a/gfx/sprites/cal.png b/gfx/sprites/cal.png
new file mode 100644
index 00000000..9dfe77ff
--- /dev/null
+++ b/gfx/sprites/cal.png
Binary files differ
diff --git a/gfx/sprites/captain.png b/gfx/sprites/captain.png
new file mode 100644
index 00000000..7408cbbb
--- /dev/null
+++ b/gfx/sprites/captain.png
Binary files differ
diff --git a/gfx/sprites/chris.png b/gfx/sprites/chris.png
new file mode 100644
index 00000000..1050bb02
--- /dev/null
+++ b/gfx/sprites/chris.png
Binary files differ
diff --git a/gfx/sprites/chris_bike.png b/gfx/sprites/chris_bike.png
new file mode 100644
index 00000000..0d18d11a
--- /dev/null
+++ b/gfx/sprites/chris_bike.png
Binary files differ
diff --git a/gfx/sprites/chuck.png b/gfx/sprites/chuck.png
new file mode 100644
index 00000000..54300be2
--- /dev/null
+++ b/gfx/sprites/chuck.png
Binary files differ
diff --git a/gfx/sprites/clair.png b/gfx/sprites/clair.png
new file mode 100644
index 00000000..c4e721b7
--- /dev/null
+++ b/gfx/sprites/clair.png
Binary files differ
diff --git a/gfx/sprites/clerk.png b/gfx/sprites/clerk.png
new file mode 100644
index 00000000..77a5fb91
--- /dev/null
+++ b/gfx/sprites/clerk.png
Binary files differ
diff --git a/gfx/sprites/cooltrainer_f.png b/gfx/sprites/cooltrainer_f.png
new file mode 100644
index 00000000..53bf81b1
--- /dev/null
+++ b/gfx/sprites/cooltrainer_f.png
Binary files differ
diff --git a/gfx/sprites/cooltrainer_m.png b/gfx/sprites/cooltrainer_m.png
new file mode 100644
index 00000000..ffd94f41
--- /dev/null
+++ b/gfx/sprites/cooltrainer_m.png
Binary files differ
diff --git a/gfx/sprites/daisy.png b/gfx/sprites/daisy.png
new file mode 100644
index 00000000..84f330f1
--- /dev/null
+++ b/gfx/sprites/daisy.png
Binary files differ
diff --git a/gfx/sprites/dragon.png b/gfx/sprites/dragon.png
new file mode 100644
index 00000000..3b6c621b
--- /dev/null
+++ b/gfx/sprites/dragon.png
Binary files differ
diff --git a/gfx/sprites/elder.png b/gfx/sprites/elder.png
new file mode 100644
index 00000000..90b499f1
--- /dev/null
+++ b/gfx/sprites/elder.png
Binary files differ
diff --git a/gfx/sprites/elm.png b/gfx/sprites/elm.png
new file mode 100644
index 00000000..ed1439b6
--- /dev/null
+++ b/gfx/sprites/elm.png
Binary files differ
diff --git a/gfx/sprites/erika.png b/gfx/sprites/erika.png
new file mode 100644
index 00000000..22c157d8
--- /dev/null
+++ b/gfx/sprites/erika.png
Binary files differ
diff --git a/gfx/sprites/fairy.png b/gfx/sprites/fairy.png
new file mode 100644
index 00000000..06fe0076
--- /dev/null
+++ b/gfx/sprites/fairy.png
Binary files differ
diff --git a/gfx/sprites/falkner.png b/gfx/sprites/falkner.png
new file mode 100644
index 00000000..a9bc75db
--- /dev/null
+++ b/gfx/sprites/falkner.png
Binary files differ
diff --git a/gfx/sprites/famicom.png b/gfx/sprites/famicom.png
new file mode 100644
index 00000000..15ff22d0
--- /dev/null
+++ b/gfx/sprites/famicom.png
Binary files differ
diff --git a/gfx/sprites/fisher.png b/gfx/sprites/fisher.png
new file mode 100644
index 00000000..a84a2e37
--- /dev/null
+++ b/gfx/sprites/fisher.png
Binary files differ
diff --git a/gfx/sprites/fishing_guru.png b/gfx/sprites/fishing_guru.png
new file mode 100644
index 00000000..748444f8
--- /dev/null
+++ b/gfx/sprites/fishing_guru.png
Binary files differ
diff --git a/gfx/sprites/fruit_tree.png b/gfx/sprites/fruit_tree.png
new file mode 100644
index 00000000..b2763390
--- /dev/null
+++ b/gfx/sprites/fruit_tree.png
Binary files differ
diff --git a/gfx/sprites/gameboy_kid.png b/gfx/sprites/gameboy_kid.png
new file mode 100644
index 00000000..0ca4acef
--- /dev/null
+++ b/gfx/sprites/gameboy_kid.png
Binary files differ
diff --git a/gfx/sprites/gentleman.png b/gfx/sprites/gentleman.png
new file mode 100644
index 00000000..38a6125d
--- /dev/null
+++ b/gfx/sprites/gentleman.png
Binary files differ
diff --git a/gfx/sprites/gold_trophy.png b/gfx/sprites/gold_trophy.png
new file mode 100644
index 00000000..cc12f9f3
--- /dev/null
+++ b/gfx/sprites/gold_trophy.png
Binary files differ
diff --git a/gfx/sprites/gramps.png b/gfx/sprites/gramps.png
new file mode 100644
index 00000000..abe61a31
--- /dev/null
+++ b/gfx/sprites/gramps.png
Binary files differ
diff --git a/gfx/sprites/granny.png b/gfx/sprites/granny.png
new file mode 100644
index 00000000..763b2a2b
--- /dev/null
+++ b/gfx/sprites/granny.png
Binary files differ
diff --git a/gfx/sprites/gym_guy.png b/gfx/sprites/gym_guy.png
new file mode 100644
index 00000000..a1f74da0
--- /dev/null
+++ b/gfx/sprites/gym_guy.png
Binary files differ
diff --git a/gfx/sprites/janine.png b/gfx/sprites/janine.png
new file mode 100644
index 00000000..b49f8e57
--- /dev/null
+++ b/gfx/sprites/janine.png
Binary files differ
diff --git a/gfx/sprites/jasmine.png b/gfx/sprites/jasmine.png
new file mode 100644
index 00000000..0d8be19e
--- /dev/null
+++ b/gfx/sprites/jasmine.png
Binary files differ
diff --git a/gfx/sprites/karen.png b/gfx/sprites/karen.png
new file mode 100644
index 00000000..8b95fb3f
--- /dev/null
+++ b/gfx/sprites/karen.png
Binary files differ
diff --git a/gfx/sprites/kimono_girl.png b/gfx/sprites/kimono_girl.png
new file mode 100644
index 00000000..0ea041f5
--- /dev/null
+++ b/gfx/sprites/kimono_girl.png
Binary files differ
diff --git a/gfx/sprites/koga.png b/gfx/sprites/koga.png
new file mode 100644
index 00000000..8afd066b
--- /dev/null
+++ b/gfx/sprites/koga.png
Binary files differ
diff --git a/gfx/sprites/kurt.png b/gfx/sprites/kurt.png
new file mode 100644
index 00000000..bd7fc20e
--- /dev/null
+++ b/gfx/sprites/kurt.png
Binary files differ
diff --git a/gfx/sprites/lance.png b/gfx/sprites/lance.png
new file mode 100644
index 00000000..5a2372df
--- /dev/null
+++ b/gfx/sprites/lance.png
Binary files differ
diff --git a/gfx/sprites/lass.png b/gfx/sprites/lass.png
new file mode 100644
index 00000000..762108ad
--- /dev/null
+++ b/gfx/sprites/lass.png
Binary files differ
diff --git a/gfx/sprites/link_receptionist.png b/gfx/sprites/link_receptionist.png
new file mode 100644
index 00000000..b6c98bbe
--- /dev/null
+++ b/gfx/sprites/link_receptionist.png
Binary files differ
diff --git a/gfx/sprites/misty.png b/gfx/sprites/misty.png
new file mode 100644
index 00000000..8b9857a8
--- /dev/null
+++ b/gfx/sprites/misty.png
Binary files differ
diff --git a/gfx/sprites/mom.png b/gfx/sprites/mom.png
new file mode 100644
index 00000000..36010c92
--- /dev/null
+++ b/gfx/sprites/mom.png
Binary files differ
diff --git a/gfx/sprites/monster.png b/gfx/sprites/monster.png
new file mode 100644
index 00000000..80d615b2
--- /dev/null
+++ b/gfx/sprites/monster.png
Binary files differ
diff --git a/gfx/sprites/morty.png b/gfx/sprites/morty.png
new file mode 100644
index 00000000..dcee550e
--- /dev/null
+++ b/gfx/sprites/morty.png
Binary files differ
diff --git a/gfx/sprites/n64.png b/gfx/sprites/n64.png
new file mode 100644
index 00000000..6d2bdc8d
--- /dev/null
+++ b/gfx/sprites/n64.png
Binary files differ
diff --git a/gfx/sprites/nurse.png b/gfx/sprites/nurse.png
new file mode 100644
index 00000000..4cd71fcf
--- /dev/null
+++ b/gfx/sprites/nurse.png
Binary files differ
diff --git a/gfx/sprites/oak.png b/gfx/sprites/oak.png
new file mode 100644
index 00000000..7a76574d
--- /dev/null
+++ b/gfx/sprites/oak.png
Binary files differ
diff --git a/gfx/sprites/officer.png b/gfx/sprites/officer.png
new file mode 100644
index 00000000..f6225203
--- /dev/null
+++ b/gfx/sprites/officer.png
Binary files differ
diff --git a/gfx/sprites/old_link_receptionist.png b/gfx/sprites/old_link_receptionist.png
new file mode 100644
index 00000000..fad0eedd
--- /dev/null
+++ b/gfx/sprites/old_link_receptionist.png
Binary files differ
diff --git a/gfx/sprites/paper.png b/gfx/sprites/paper.png
new file mode 100644
index 00000000..da171b3b
--- /dev/null
+++ b/gfx/sprites/paper.png
Binary files differ
diff --git a/gfx/sprites/pharmacist.png b/gfx/sprites/pharmacist.png
new file mode 100644
index 00000000..ed0fa1d2
--- /dev/null
+++ b/gfx/sprites/pharmacist.png
Binary files differ
diff --git a/gfx/sprites/poke_ball.png b/gfx/sprites/poke_ball.png
new file mode 100644
index 00000000..b12bf897
--- /dev/null
+++ b/gfx/sprites/poke_ball.png
Binary files differ
diff --git a/gfx/sprites/pokedex.png b/gfx/sprites/pokedex.png
new file mode 100644
index 00000000..63846bfa
--- /dev/null
+++ b/gfx/sprites/pokedex.png
Binary files differ
diff --git a/gfx/sprites/pokefan_f.png b/gfx/sprites/pokefan_f.png
new file mode 100644
index 00000000..aa1fbc06
--- /dev/null
+++ b/gfx/sprites/pokefan_f.png
Binary files differ
diff --git a/gfx/sprites/pokefan_m.png b/gfx/sprites/pokefan_m.png
new file mode 100644
index 00000000..fea7979d
--- /dev/null
+++ b/gfx/sprites/pokefan_m.png
Binary files differ
diff --git a/gfx/sprites/pryce.png b/gfx/sprites/pryce.png
new file mode 100644
index 00000000..69f152a3
--- /dev/null
+++ b/gfx/sprites/pryce.png
Binary files differ
diff --git a/gfx/sprites/receptionist.png b/gfx/sprites/receptionist.png
new file mode 100644
index 00000000..0d102b04
--- /dev/null
+++ b/gfx/sprites/receptionist.png
Binary files differ
diff --git a/gfx/sprites/red.png b/gfx/sprites/red.png
new file mode 100644
index 00000000..018b676f
--- /dev/null
+++ b/gfx/sprites/red.png
Binary files differ
diff --git a/gfx/sprites/reds_mom.png b/gfx/sprites/reds_mom.png
new file mode 100644
index 00000000..5644764c
--- /dev/null
+++ b/gfx/sprites/reds_mom.png
Binary files differ
diff --git a/gfx/sprites/rock.png b/gfx/sprites/rock.png
new file mode 100644
index 00000000..5a614d7b
--- /dev/null
+++ b/gfx/sprites/rock.png
Binary files differ
diff --git a/gfx/sprites/rocker.png b/gfx/sprites/rocker.png
new file mode 100644
index 00000000..50ac2089
--- /dev/null
+++ b/gfx/sprites/rocker.png
Binary files differ
diff --git a/gfx/sprites/rocket.png b/gfx/sprites/rocket.png
new file mode 100644
index 00000000..43a71bd6
--- /dev/null
+++ b/gfx/sprites/rocket.png
Binary files differ
diff --git a/gfx/sprites/rocket_girl.png b/gfx/sprites/rocket_girl.png
new file mode 100644
index 00000000..b8714ba6
--- /dev/null
+++ b/gfx/sprites/rocket_girl.png
Binary files differ
diff --git a/gfx/sprites/sabrina.png b/gfx/sprites/sabrina.png
new file mode 100644
index 00000000..ef29e27d
--- /dev/null
+++ b/gfx/sprites/sabrina.png
Binary files differ
diff --git a/gfx/sprites/sage.png b/gfx/sprites/sage.png
new file mode 100644
index 00000000..80223046
--- /dev/null
+++ b/gfx/sprites/sage.png
Binary files differ
diff --git a/gfx/sprites/sailor.png b/gfx/sprites/sailor.png
new file mode 100644
index 00000000..b4d3b5f2
--- /dev/null
+++ b/gfx/sprites/sailor.png
Binary files differ
diff --git a/gfx/sprites/scientist.png b/gfx/sprites/scientist.png
new file mode 100644
index 00000000..39c44291
--- /dev/null
+++ b/gfx/sprites/scientist.png
Binary files differ
diff --git a/gfx/sprites/silver.png b/gfx/sprites/silver.png
new file mode 100644
index 00000000..7d82d400
--- /dev/null
+++ b/gfx/sprites/silver.png
Binary files differ
diff --git a/gfx/sprites/silver_trophy.png b/gfx/sprites/silver_trophy.png
new file mode 100644
index 00000000..458cda43
--- /dev/null
+++ b/gfx/sprites/silver_trophy.png
Binary files differ
diff --git a/gfx/sprites/slowpoke.png b/gfx/sprites/slowpoke.png
new file mode 100644
index 00000000..d651ad3e
--- /dev/null
+++ b/gfx/sprites/slowpoke.png
Binary files differ
diff --git a/gfx/sprites/snes.png b/gfx/sprites/snes.png
new file mode 100644
index 00000000..4eaae459
--- /dev/null
+++ b/gfx/sprites/snes.png
Binary files differ
diff --git a/gfx/sprites/sudowoodo.png b/gfx/sprites/sudowoodo.png
new file mode 100644
index 00000000..9354f928
--- /dev/null
+++ b/gfx/sprites/sudowoodo.png
Binary files differ
diff --git a/gfx/sprites/super_nerd.png b/gfx/sprites/super_nerd.png
new file mode 100644
index 00000000..6866c7b3
--- /dev/null
+++ b/gfx/sprites/super_nerd.png
Binary files differ
diff --git a/gfx/sprites/surf.png b/gfx/sprites/surf.png
new file mode 100644
index 00000000..d124616b
--- /dev/null
+++ b/gfx/sprites/surf.png
Binary files differ
diff --git a/gfx/sprites/surfing_pikachu.png b/gfx/sprites/surfing_pikachu.png
new file mode 100644
index 00000000..e6a3d7d0
--- /dev/null
+++ b/gfx/sprites/surfing_pikachu.png
Binary files differ
diff --git a/gfx/sprites/surge.png b/gfx/sprites/surge.png
new file mode 100644
index 00000000..ae165c7a
--- /dev/null
+++ b/gfx/sprites/surge.png
Binary files differ
diff --git a/gfx/sprites/swimmer_girl.png b/gfx/sprites/swimmer_girl.png
new file mode 100644
index 00000000..eed753ab
--- /dev/null
+++ b/gfx/sprites/swimmer_girl.png
Binary files differ
diff --git a/gfx/sprites/swimmer_guy.png b/gfx/sprites/swimmer_guy.png
new file mode 100644
index 00000000..4c1818b2
--- /dev/null
+++ b/gfx/sprites/swimmer_guy.png
Binary files differ
diff --git a/gfx/sprites/teacher.png b/gfx/sprites/teacher.png
new file mode 100644
index 00000000..2107159e
--- /dev/null
+++ b/gfx/sprites/teacher.png
Binary files differ
diff --git a/gfx/sprites/twin.png b/gfx/sprites/twin.png
new file mode 100644
index 00000000..caa9f43a
--- /dev/null
+++ b/gfx/sprites/twin.png
Binary files differ
diff --git a/gfx/sprites/unused_guy.png b/gfx/sprites/unused_guy.png
new file mode 100644
index 00000000..d979b9a6
--- /dev/null
+++ b/gfx/sprites/unused_guy.png
Binary files differ
diff --git a/gfx/sprites/virtual_boy.png b/gfx/sprites/virtual_boy.png
new file mode 100644
index 00000000..dba7dc13
--- /dev/null
+++ b/gfx/sprites/virtual_boy.png
Binary files differ
diff --git a/gfx/sprites/whitney.png b/gfx/sprites/whitney.png
new file mode 100644
index 00000000..ff8b28b9
--- /dev/null
+++ b/gfx/sprites/whitney.png
Binary files differ
diff --git a/gfx/sprites/will.png b/gfx/sprites/will.png
new file mode 100644
index 00000000..5229bb40
--- /dev/null
+++ b/gfx/sprites/will.png
Binary files differ
diff --git a/gfx/sprites/youngster.png b/gfx/sprites/youngster.png
new file mode 100644
index 00000000..5c0d3393
--- /dev/null
+++ b/gfx/sprites/youngster.png
Binary files differ
diff --git a/gfx/unknown/gfx_17079.2bpp b/gfx/unknown/gfx_17079.2bpp
new file mode 100644
index 00000000..f4a50690
--- /dev/null
+++ b/gfx/unknown/gfx_17079.2bpp
Binary files differ
diff --git a/gfx/unknown/gfx_17079.png b/gfx/unknown/gfx_17079.png
new file mode 100644
index 00000000..1c3a43f3
--- /dev/null
+++ b/gfx/unknown/gfx_17079.png
Binary files differ
diff --git a/gfx/unknown/gfx_170f1.2bpp b/gfx/unknown/gfx_170f1.2bpp
new file mode 100644
index 00000000..af5dda20
--- /dev/null
+++ b/gfx/unknown/gfx_170f1.2bpp
Binary files differ
diff --git a/gfx/unknown/gfx_170f1.png b/gfx/unknown/gfx_170f1.png
new file mode 100644
index 00000000..a887fcf2
--- /dev/null
+++ b/gfx/unknown/gfx_170f1.png
Binary files differ
diff --git a/home/gfx.asm b/home/gfx.asm
index 7a22086d..82e6656e 100644
--- a/home/gfx.asm
+++ b/home/gfx.asm
@@ -74,7 +74,7 @@ FarCopyBytes::
ret
-FarCopyBytesDouble:
+FarCopyBytesDouble::
; Copy bc bytes from a:hl to bc*2 bytes at de,
; doubling each byte in the process.
diff --git a/home/map.asm b/home/map.asm
index 2106dc5c..a5d84a5c 100644
--- a/home/map.asm
+++ b/home/map.asm
@@ -89,7 +89,7 @@ LoadMapPart:: ; 1fc8 (0:1fc8)
rst Bankswitch
call LoadMetatiles
ld a, $60
- ld hl, wTilemap
+ hlcoord 0, 0
ld bc, $168
call ByteFill
ld a, $5
@@ -1475,7 +1475,7 @@ ScrollMapUp::
ret
ScrollMapRight::
- ld hl, wTilemap
+ hlcoord 0, 0
ld de, wBGMapBuffer
call BackupBGMapColumn
ld c, $24
diff --git a/home/palettes.asm b/home/palettes.asm
index 131a7128..1e462a67 100644
--- a/home/palettes.asm
+++ b/home/palettes.asm
@@ -258,7 +258,7 @@ ClearVBank1::
ret
Functiond2a::
- ld hl, wTilemap
+ hlcoord 0, 0
ld de, wAttrmap
ld bc, SCREEN_WIDTH * SCREEN_HEIGHT
.asm_d33
diff --git a/main.asm b/main.asm
index adaf104a..b58c5d65 100644
--- a/main.asm
+++ b/main.asm
@@ -79,10 +79,8 @@ INCLUDE "engine/menus/empty_sram.asm"
INCLUDE "engine/menus/save.asm"
INCLUDE "data/maps/spawn_points.asm"
INCLUDE "engine/overworld/load_map_part.asm"
- dr $153ba, $15440 ; random slots stuff?
INCLUDE "engine/overworld/spawn_points.asm"
INCLUDE "engine/overworld/map_setup.asm"
- dr $156be, $15871 ; ?
INCLUDE "engine/events/pokemon_pc.asm"
INCLUDE "engine/items/mart.asm"
INCLUDE "engine/events/money.asm"
@@ -91,7 +89,7 @@ INCLUDE "engine/events/mom.asm"
INCLUDE "engine/events/daycare.asm"
INCLUDE "engine/events/print_unown.asm"
INCLUDE "engine/events/print_photo.asm"
- dr $1704d, $171d1 ; ?
+INCLUDE "unknown/bank05_704d.asm"
INCLUDE "engine/pokemon/breeding.asm"
SECTION "bank6", ROMX
diff --git a/tools/gfx.py b/tools/gfx.py
index 73f3dcb6..e1f5b147 100644
--- a/tools/gfx.py
+++ b/tools/gfx.py
@@ -61,6 +61,10 @@ mail_px16 = ['eon_mail_border_1', 'flower_1', 'flower_2', 'large_circle', 'large
mail_px24 = ['cloud', 'ditto', 'dratini', 'eevee', 'lapras', 'mew', 'natu', 'poliwag']
mail_border_stretch = ['surf_mail_border', 'flower_mail_border', 'litebluemail_border']
+overworld_px8 = ['boulder_dust', 'fishing_rod', 'grass_rustle', 'heal_machine', 'shadow',
+ 'trainer_battle_pokeball_tiles']
+overworld_px16 = ['chris_fish', 'cut_grass', 'cut_tree', 'headbutt_tree']
+
def filepath_rules(filepath):
"""Infer attributes of certain graphics by their location in the filesystem."""
args = {}
@@ -141,11 +145,29 @@ def filepath_rules(filepath):
if name == 'heal_machine':
args['width'] = 8
args['pal_file'] = os.path.join(filedir, name + '.pal')
+ elif name in overworld_px8:
+ args['width'] = 8
+ elif name in overworld_px16:
+ args['width'] = 16
elif 'gfx/sgb_border' in filedir:
args['width'] = 128
args['pal_file'] = os.path.join(filedir, name + '.pal')
+ elif 'gfx/sprites' in filedir:
+ # TODO: this is incomplete
+ if name == 'big_onix':
+ args['width'] = 32
+ args['rows'] = [(0, 4), (0, 4), (1, 2), (1, 2)]
+ else:
+ args['width'] = 16
+
+ elif 'gfx/unknown' in filedir:
+ if name == 'gfx_170f1':
+ args['width'] = 128
+ elif name == 'gfx_17079':
+ args['width'] = 16
+
elif os.path.join(filedir, name) in pics:
args['pic'] = True
@@ -203,6 +225,9 @@ def to_png(filename, **kwargs):
elif ext == '.2bpp':
basedir, basename = os.path.split(filename)
name, ext = os.path.splitext(basename)
+ # TODO: how to actually make big_onix.png (reusing one from pokecrystal for now)
+ if name == 'big_onix':
+ return
if name in ['back_gold', 'back_silver']:
kwargs['fileout'] = os.path.join(basedir, 'back.png')
gfx.export_2bpp_to_png(filename, **kwargs)
diff --git a/unknown/bank05_704d.asm b/unknown/bank05_704d.asm
new file mode 100644
index 00000000..22f8519a
--- /dev/null
+++ b/unknown/bank05_704d.asm
@@ -0,0 +1,30 @@
+Function1704d:
+ ld hl, UnknownGFX17079
+ ld de, vTiles2 tile $20
+ ld a, BANK(UnknownGFX17079)
+ ld bc, $78
+ call FarCopyBytesDouble
+ ld hl, vTiles2 tile $20
+ ld bc, $78
+.loop:
+ ld [hl], $ff
+ inc hl
+ inc hl
+ dec bc
+ ld a, b
+ or c
+ jr nz, .loop
+ ret
+
+Function1706b:
+ ld hl, UnknownGFX170f1
+ ld de, vTiles2 tile $2f
+ ld a, BANK(UnknownGFX170f1)
+ ld bc, $e0
+ jp FarCopyBytes
+
+UnknownGFX17079:
+INCBIN "gfx/unknown/gfx_17079.2bpp"
+
+UnknownGFX170f1:
+INCBIN "gfx/unknown/gfx_170f1.2bpp"