summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore21
-rw-r--r--Makefile9
-rw-r--r--constants.asm33
-rw-r--r--extras/README.md5
-rw-r--r--extras/comparator.py40
-rw-r--r--extras/crystal.py1410
-rwxr-xr-xextras/dump_sections14
-rwxr-xr-xextras/dump_sections.py130
-rw-r--r--extras/gbz80disasm.py28
-rw-r--r--extras/gfx.py58
-rw-r--r--extras/graph.py13
-rw-r--r--extras/interval_map.py104
-rw-r--r--extras/item_constants.py23
-rw-r--r--extras/labels.py9
-rw-r--r--extras/move_constants.py2
-rw-r--r--extras/pksv.py16
-rw-r--r--extras/pointers.py8
-rw-r--r--extras/pokemon_constants.py2
-rw-r--r--extras/romstr.py354
-rw-r--r--extras/test_dump_sections.py74
-rw-r--r--extras/tests.py1015
-rw-r--r--extras/type_constants.py21
-rw-r--r--gfx/misc/mobile_adapter.2bppbin0 -> 3232 bytes
-rw-r--r--gfx/misc/mystery_gift.2bppbin0 -> 1072 bytes
-rw-r--r--gfx/misc/mystery_gift_jp.2bppbin0 -> 1152 bytes
-rw-r--r--gfx/misc/pack.2bppbin0 -> 2240 bytes
-rw-r--r--gfx/misc/sgb_border.2bpp (renamed from gfx/misc/division.2bpp)bin928 -> 928 bytes
-rw-r--r--gfx/pics/001/anim0.asm10
-rw-r--r--gfx/pics/001/anim1.asm5
-rw-r--r--gfx/pics/001/back.2bpp (renamed from gfx/backpics/001.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/001/back.lz (renamed from gfx/backpics/lz/001.lz)bin290 -> 290 bytes
-rw-r--r--gfx/pics/001/bitmask.asm26
-rw-r--r--gfx/pics/001/frames.asm21
-rw-r--r--gfx/pics/001/front.2bpp (renamed from gfx/frontpics/001.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/001/front.lz (renamed from gfx/frontpics/lz/001.lz)bin392 -> 392 bytes
-rw-r--r--gfx/pics/001/tiles.2bpp (renamed from gfx/anim/001.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/002/anim0.asm6
-rw-r--r--gfx/pics/002/anim1.asm8
-rw-r--r--gfx/pics/002/back.2bpp (renamed from gfx/backpics/002.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/002/back.lz (renamed from gfx/backpics/lz/002.lz)bin343 -> 343 bytes
-rw-r--r--gfx/pics/002/bitmask.asm19
-rw-r--r--gfx/pics/002/frames.asm13
-rw-r--r--gfx/pics/002/front.2bpp (renamed from gfx/frontpics/002.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/002/front.lz (renamed from gfx/frontpics/lz/002.lz)bin586 -> 586 bytes
-rw-r--r--gfx/pics/002/tiles.2bpp (renamed from gfx/anim/002.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/003/anim0.asm10
-rw-r--r--gfx/pics/003/anim1.asm6
-rw-r--r--gfx/pics/003/back.2bpp (renamed from gfx/backpics/003.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/003/back.lz (renamed from gfx/backpics/lz/003.lz)bin418 -> 418 bytes
-rw-r--r--gfx/pics/003/bitmask.asm49
-rw-r--r--gfx/pics/003/frames.asm32
-rw-r--r--gfx/pics/003/front.2bpp (renamed from gfx/frontpics/003.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/003/front.lz (renamed from gfx/frontpics/lz/003.lz)bin1098 -> 1098 bytes
-rw-r--r--gfx/pics/003/tiles.2bpp (renamed from gfx/anim/003.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/004/anim0.asm9
-rw-r--r--gfx/pics/004/anim1.asm6
-rw-r--r--gfx/pics/004/back.2bpp (renamed from gfx/backpics/004.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/004/back.lz (renamed from gfx/backpics/lz/004.lz)bin301 -> 301 bytes
-rw-r--r--gfx/pics/004/bitmask.asm21
-rw-r--r--gfx/pics/004/frames.asm17
-rw-r--r--gfx/pics/004/front.2bpp (renamed from gfx/frontpics/004.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/004/front.lz (renamed from gfx/frontpics/lz/004.lz)bin528 -> 528 bytes
-rw-r--r--gfx/pics/004/tiles.2bpp (renamed from gfx/anim/004.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/005/anim0.asm9
-rw-r--r--gfx/pics/005/anim1.asm8
-rw-r--r--gfx/pics/005/back.2bpp (renamed from gfx/backpics/005.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/005/back.lz (renamed from gfx/backpics/lz/005.lz)bin388 -> 388 bytes
-rw-r--r--gfx/pics/005/bitmask.asm19
-rw-r--r--gfx/pics/005/frames.asm20
-rw-r--r--gfx/pics/005/front.2bpp (renamed from gfx/frontpics/005.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/005/front.lz (renamed from gfx/frontpics/lz/005.lz)bin778 -> 778 bytes
-rw-r--r--gfx/pics/005/tiles.2bpp (renamed from gfx/anim/005.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/006/anim0.asm8
-rw-r--r--gfx/pics/006/anim1.asm6
-rw-r--r--gfx/pics/006/back.2bpp (renamed from gfx/backpics/006.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/006/back.lz (renamed from gfx/backpics/lz/006.lz)bin360 -> 360 bytes
-rw-r--r--gfx/pics/006/bitmask.asm25
-rw-r--r--gfx/pics/006/frames.asm16
-rw-r--r--gfx/pics/006/front.2bpp (renamed from gfx/frontpics/006.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/006/front.lz (renamed from gfx/frontpics/lz/006.lz)bin997 -> 997 bytes
-rw-r--r--gfx/pics/006/tiles.2bpp (renamed from gfx/anim/006.2bpp)bin560 -> 560 bytes
-rw-r--r--gfx/pics/007/anim0.asm10
-rw-r--r--gfx/pics/007/anim1.asm6
-rw-r--r--gfx/pics/007/back.2bpp (renamed from gfx/backpics/007.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/007/back.lz (renamed from gfx/backpics/lz/007.lz)bin239 -> 239 bytes
-rw-r--r--gfx/pics/007/bitmask.asm26
-rw-r--r--gfx/pics/007/frames.asm22
-rw-r--r--gfx/pics/007/front.2bpp (renamed from gfx/frontpics/007.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/007/front.lz (renamed from gfx/frontpics/lz/007.lz)bin483 -> 483 bytes
-rw-r--r--gfx/pics/007/tiles.2bpp (renamed from gfx/anim/007.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/008/anim0.asm8
-rw-r--r--gfx/pics/008/anim1.asm6
-rw-r--r--gfx/pics/008/back.2bpp (renamed from gfx/backpics/008.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/008/back.lz (renamed from gfx/backpics/lz/008.lz)bin358 -> 358 bytes
-rw-r--r--gfx/pics/008/bitmask.asm19
-rw-r--r--gfx/pics/008/frames.asm14
-rw-r--r--gfx/pics/008/front.2bpp (renamed from gfx/frontpics/008.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/008/front.lz (renamed from gfx/frontpics/lz/008.lz)bin741 -> 741 bytes
-rw-r--r--gfx/pics/008/tiles.2bpp (renamed from gfx/anim/008.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/009/anim0.asm6
-rw-r--r--gfx/pics/009/anim1.asm6
-rw-r--r--gfx/pics/009/back.2bpp (renamed from gfx/backpics/009.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/009/back.lz (renamed from gfx/backpics/lz/009.lz)bin363 -> 363 bytes
-rw-r--r--gfx/pics/009/bitmask.asm33
-rw-r--r--gfx/pics/009/frames.asm22
-rw-r--r--gfx/pics/009/front.2bpp (renamed from gfx/frontpics/009.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/009/front.lz (renamed from gfx/frontpics/lz/009.lz)bin1084 -> 1084 bytes
-rw-r--r--gfx/pics/009/tiles.2bpp (renamed from gfx/anim/009.2bpp)bin736 -> 736 bytes
-rw-r--r--gfx/pics/010/anim0.asm8
-rw-r--r--gfx/pics/010/anim1.asm6
-rw-r--r--gfx/pics/010/back.2bpp (renamed from gfx/backpics/010.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/010/back.lz (renamed from gfx/backpics/lz/010.lz)bin284 -> 284 bytes
-rw-r--r--gfx/pics/010/bitmask.asm11
-rw-r--r--gfx/pics/010/frames.asm13
-rw-r--r--gfx/pics/010/front.2bpp (renamed from gfx/frontpics/010.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/010/front.lz (renamed from gfx/frontpics/lz/010.lz)bin313 -> 313 bytes
-rw-r--r--gfx/pics/010/tiles.2bpp (renamed from gfx/anim/010.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/011/anim0.asm5
-rw-r--r--gfx/pics/011/anim1.asm7
-rw-r--r--gfx/pics/011/back.2bpp (renamed from gfx/backpics/011.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/011/back.lz (renamed from gfx/backpics/lz/011.lz)bin245 -> 245 bytes
-rw-r--r--gfx/pics/011/bitmask.asm16
-rw-r--r--gfx/pics/011/frames.asm17
-rw-r--r--gfx/pics/011/front.2bpp (renamed from gfx/frontpics/011.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/011/front.lz (renamed from gfx/frontpics/lz/011.lz)bin317 -> 317 bytes
-rw-r--r--gfx/pics/011/tiles.2bpp (renamed from gfx/anim/011.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/012/anim0.asm8
-rw-r--r--gfx/pics/012/anim1.asm6
-rw-r--r--gfx/pics/012/back.2bpp (renamed from gfx/backpics/012.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/012/back.lz (renamed from gfx/backpics/lz/012.lz)bin463 -> 463 bytes
-rw-r--r--gfx/pics/012/bitmask.asm17
-rw-r--r--gfx/pics/012/frames.asm11
-rw-r--r--gfx/pics/012/front.2bpp (renamed from gfx/frontpics/012.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/012/front.lz (renamed from gfx/frontpics/lz/012.lz)bin909 -> 909 bytes
-rw-r--r--gfx/pics/012/tiles.2bpp (renamed from gfx/anim/012.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/013/anim0.asm10
-rw-r--r--gfx/pics/013/anim1.asm12
-rw-r--r--gfx/pics/013/back.2bpp (renamed from gfx/backpics/013.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/013/back.lz (renamed from gfx/backpics/lz/013.lz)bin256 -> 256 bytes
-rw-r--r--gfx/pics/013/bitmask.asm16
-rw-r--r--gfx/pics/013/frames.asm17
-rw-r--r--gfx/pics/013/front.2bpp (renamed from gfx/frontpics/013.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/013/front.lz (renamed from gfx/frontpics/lz/013.lz)bin333 -> 333 bytes
-rw-r--r--gfx/pics/013/tiles.2bpp (renamed from gfx/anim/013.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/014/anim0.asm4
-rw-r--r--gfx/pics/014/anim1.asm6
-rw-r--r--gfx/pics/014/back.2bpp (renamed from gfx/backpics/014.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/014/back.lz (renamed from gfx/backpics/lz/014.lz)bin275 -> 275 bytes
-rw-r--r--gfx/pics/014/bitmask.asm6
-rw-r--r--gfx/pics/014/frames.asm5
-rw-r--r--gfx/pics/014/front.2bpp (renamed from gfx/frontpics/014.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/014/front.lz (renamed from gfx/frontpics/lz/014.lz)bin334 -> 334 bytes
-rw-r--r--gfx/pics/014/tiles.2bpp (renamed from gfx/anim/014.2bpp)bin144 -> 144 bytes
-rw-r--r--gfx/pics/015/anim0.asm12
-rw-r--r--gfx/pics/015/anim1.asm10
-rw-r--r--gfx/pics/015/back.2bpp (renamed from gfx/backpics/015.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/015/back.lz (renamed from gfx/backpics/lz/015.lz)bin394 -> 394 bytes
-rw-r--r--gfx/pics/015/bitmask.asm17
-rw-r--r--gfx/pics/015/frames.asm15
-rw-r--r--gfx/pics/015/front.2bpp (renamed from gfx/frontpics/015.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/015/front.lz (renamed from gfx/frontpics/lz/015.lz)bin1038 -> 1038 bytes
-rw-r--r--gfx/pics/015/tiles.2bpp (renamed from gfx/anim/015.2bpp)bin592 -> 592 bytes
-rw-r--r--gfx/pics/016/anim0.asm11
-rw-r--r--gfx/pics/016/anim1.asm8
-rw-r--r--gfx/pics/016/back.2bpp (renamed from gfx/backpics/016.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/016/back.lz (renamed from gfx/backpics/lz/016.lz)bin391 -> 391 bytes
-rw-r--r--gfx/pics/016/bitmask.asm16
-rw-r--r--gfx/pics/016/frames.asm14
-rw-r--r--gfx/pics/016/front.2bpp (renamed from gfx/frontpics/016.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/016/front.lz (renamed from gfx/frontpics/lz/016.lz)bin506 -> 506 bytes
-rw-r--r--gfx/pics/016/tiles.2bpp (renamed from gfx/anim/016.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/017/anim0.asm11
-rw-r--r--gfx/pics/017/anim1.asm6
-rw-r--r--gfx/pics/017/back.2bpp (renamed from gfx/backpics/017.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/017/back.lz (renamed from gfx/backpics/lz/017.lz)bin285 -> 285 bytes
-rw-r--r--gfx/pics/017/bitmask.asm19
-rw-r--r--gfx/pics/017/frames.asm20
-rw-r--r--gfx/pics/017/front.2bpp (renamed from gfx/frontpics/017.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/017/front.lz (renamed from gfx/frontpics/lz/017.lz)bin659 -> 659 bytes
-rw-r--r--gfx/pics/017/tiles.2bpp (renamed from gfx/anim/017.2bpp)bin368 -> 368 bytes
-rw-r--r--gfx/pics/018/anim0.asm8
-rw-r--r--gfx/pics/018/anim1.asm9
-rw-r--r--gfx/pics/018/back.2bpp (renamed from gfx/backpics/018.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/018/back.lz (renamed from gfx/backpics/lz/018.lz)bin339 -> 339 bytes
-rw-r--r--gfx/pics/018/bitmask.asm25
-rw-r--r--gfx/pics/018/frames.asm15
-rw-r--r--gfx/pics/018/front.2bpp (renamed from gfx/frontpics/018.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/018/front.lz (renamed from gfx/frontpics/lz/018.lz)bin920 -> 920 bytes
-rw-r--r--gfx/pics/018/tiles.2bpp (renamed from gfx/anim/018.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/019/anim0.asm10
-rw-r--r--gfx/pics/019/anim1.asm6
-rw-r--r--gfx/pics/019/back.2bpp (renamed from gfx/backpics/019.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/019/back.lz (renamed from gfx/backpics/lz/019.lz)bin329 -> 329 bytes
-rw-r--r--gfx/pics/019/bitmask.asm11
-rw-r--r--gfx/pics/019/frames.asm20
-rw-r--r--gfx/pics/019/front.2bpp (renamed from gfx/frontpics/019.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/019/front.lz (renamed from gfx/frontpics/lz/019.lz)bin534 -> 534 bytes
-rw-r--r--gfx/pics/019/tiles.2bpp (renamed from gfx/anim/019.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/020/anim0.asm7
-rw-r--r--gfx/pics/020/anim1.asm10
-rw-r--r--gfx/pics/020/back.2bpp (renamed from gfx/backpics/020.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/020/back.lz (renamed from gfx/backpics/lz/020.lz)bin357 -> 357 bytes
-rw-r--r--gfx/pics/020/bitmask.asm19
-rw-r--r--gfx/pics/020/frames.asm14
-rw-r--r--gfx/pics/020/front.2bpp (renamed from gfx/frontpics/020.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/020/front.lz (renamed from gfx/frontpics/lz/020.lz)bin797 -> 797 bytes
-rw-r--r--gfx/pics/020/tiles.2bpp (renamed from gfx/anim/020.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/021/anim0.asm11
-rw-r--r--gfx/pics/021/anim1.asm7
-rw-r--r--gfx/pics/021/back.2bpp (renamed from gfx/backpics/021.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/021/back.lz (renamed from gfx/backpics/lz/021.lz)bin310 -> 310 bytes
-rw-r--r--gfx/pics/021/bitmask.asm31
-rw-r--r--gfx/pics/021/frames.asm25
-rw-r--r--gfx/pics/021/front.2bpp (renamed from gfx/frontpics/021.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/021/front.lz (renamed from gfx/frontpics/lz/021.lz)bin529 -> 529 bytes
-rw-r--r--gfx/pics/021/tiles.2bpp (renamed from gfx/anim/021.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/022/anim0.asm8
-rw-r--r--gfx/pics/022/anim1.asm6
-rw-r--r--gfx/pics/022/back.2bpp (renamed from gfx/backpics/022.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/022/back.lz (renamed from gfx/backpics/lz/022.lz)bin249 -> 249 bytes
-rw-r--r--gfx/pics/022/bitmask.asm33
-rw-r--r--gfx/pics/022/frames.asm21
-rw-r--r--gfx/pics/022/front.2bpp (renamed from gfx/frontpics/022.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/022/front.lz (renamed from gfx/frontpics/lz/022.lz)bin998 -> 998 bytes
-rw-r--r--gfx/pics/022/tiles.2bpp (renamed from gfx/anim/022.2bpp)bin672 -> 672 bytes
-rw-r--r--gfx/pics/023/anim0.asm9
-rw-r--r--gfx/pics/023/anim1.asm8
-rw-r--r--gfx/pics/023/back.2bpp (renamed from gfx/backpics/023.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/023/back.lz (renamed from gfx/backpics/lz/023.lz)bin356 -> 356 bytes
-rw-r--r--gfx/pics/023/bitmask.asm16
-rw-r--r--gfx/pics/023/frames.asm23
-rw-r--r--gfx/pics/023/front.2bpp (renamed from gfx/frontpics/023.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/023/front.lz (renamed from gfx/frontpics/lz/023.lz)bin575 -> 575 bytes
-rw-r--r--gfx/pics/023/tiles.2bpp (renamed from gfx/anim/023.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/024/anim0.asm15
-rw-r--r--gfx/pics/024/anim1.asm8
-rw-r--r--gfx/pics/024/back.2bpp (renamed from gfx/backpics/024.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/024/back.lz (renamed from gfx/backpics/lz/024.lz)bin279 -> 279 bytes
-rw-r--r--gfx/pics/024/bitmask.asm41
-rw-r--r--gfx/pics/024/frames.asm25
-rw-r--r--gfx/pics/024/front.2bpp (renamed from gfx/frontpics/024.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/024/front.lz (renamed from gfx/frontpics/lz/024.lz)bin1009 -> 1009 bytes
-rw-r--r--gfx/pics/024/tiles.2bpp (renamed from gfx/anim/024.2bpp)bin560 -> 560 bytes
-rw-r--r--gfx/pics/025/anim0.asm12
-rw-r--r--gfx/pics/025/anim1.asm10
-rw-r--r--gfx/pics/025/back.2bpp (renamed from gfx/backpics/025.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/025/back.lz (renamed from gfx/backpics/lz/025.lz)bin354 -> 354 bytes
-rw-r--r--gfx/pics/025/bitmask.asm26
-rw-r--r--gfx/pics/025/frames.asm24
-rw-r--r--gfx/pics/025/front.2bpp (renamed from gfx/frontpics/025.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/025/front.lz (renamed from gfx/frontpics/lz/025.lz)bin570 -> 570 bytes
-rw-r--r--gfx/pics/025/tiles.2bpp (renamed from gfx/anim/025.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/026/anim0.asm8
-rw-r--r--gfx/pics/026/anim1.asm6
-rw-r--r--gfx/pics/026/back.2bpp (renamed from gfx/backpics/026.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/026/back.lz (renamed from gfx/backpics/lz/026.lz)bin375 -> 375 bytes
-rw-r--r--gfx/pics/026/bitmask.asm25
-rw-r--r--gfx/pics/026/frames.asm20
-rw-r--r--gfx/pics/026/front.2bpp (renamed from gfx/frontpics/026.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/026/front.lz (renamed from gfx/frontpics/lz/026.lz)bin891 -> 891 bytes
-rw-r--r--gfx/pics/026/tiles.2bpp (renamed from gfx/anim/026.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/027/anim0.asm13
-rw-r--r--gfx/pics/027/anim1.asm7
-rw-r--r--gfx/pics/027/back.2bpp (renamed from gfx/backpics/027.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/027/back.lz (renamed from gfx/backpics/lz/027.lz)bin397 -> 397 bytes
-rw-r--r--gfx/pics/027/bitmask.asm21
-rw-r--r--gfx/pics/027/frames.asm21
-rw-r--r--gfx/pics/027/front.2bpp (renamed from gfx/frontpics/027.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/027/front.lz (renamed from gfx/frontpics/lz/027.lz)bin512 -> 512 bytes
-rw-r--r--gfx/pics/027/tiles.2bpp (renamed from gfx/anim/027.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/028/anim0.asm10
-rw-r--r--gfx/pics/028/anim1.asm6
-rw-r--r--gfx/pics/028/back.2bpp (renamed from gfx/backpics/028.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/028/back.lz (renamed from gfx/backpics/lz/028.lz)bin412 -> 412 bytes
-rw-r--r--gfx/pics/028/bitmask.asm19
-rw-r--r--gfx/pics/028/frames.asm19
-rw-r--r--gfx/pics/028/front.2bpp (renamed from gfx/frontpics/028.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/028/front.lz (renamed from gfx/frontpics/lz/028.lz)bin825 -> 825 bytes
-rw-r--r--gfx/pics/028/tiles.2bpp (renamed from gfx/anim/028.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/029/anim0.asm8
-rw-r--r--gfx/pics/029/anim1.asm6
-rw-r--r--gfx/pics/029/back.2bpp (renamed from gfx/backpics/029.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/029/back.lz (renamed from gfx/backpics/lz/029.lz)bin334 -> 334 bytes
-rw-r--r--gfx/pics/029/bitmask.asm16
-rw-r--r--gfx/pics/029/frames.asm19
-rw-r--r--gfx/pics/029/front.2bpp (renamed from gfx/frontpics/029.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/029/front.lz (renamed from gfx/frontpics/lz/029.lz)bin506 -> 506 bytes
-rw-r--r--gfx/pics/029/tiles.2bpp (renamed from gfx/anim/029.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/030/anim0.asm9
-rw-r--r--gfx/pics/030/anim1.asm6
-rw-r--r--gfx/pics/030/back.2bpp (renamed from gfx/backpics/030.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/030/back.lz (renamed from gfx/backpics/lz/030.lz)bin375 -> 375 bytes
-rw-r--r--gfx/pics/030/bitmask.asm25
-rw-r--r--gfx/pics/030/frames.asm17
-rw-r--r--gfx/pics/030/front.2bpp (renamed from gfx/frontpics/030.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/030/front.lz (renamed from gfx/frontpics/lz/030.lz)bin715 -> 715 bytes
-rw-r--r--gfx/pics/030/tiles.2bpp (renamed from gfx/anim/030.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/031/anim0.asm10
-rw-r--r--gfx/pics/031/anim1.asm7
-rw-r--r--gfx/pics/031/back.2bpp (renamed from gfx/backpics/031.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/031/back.lz (renamed from gfx/backpics/lz/031.lz)bin387 -> 387 bytes
-rw-r--r--gfx/pics/031/bitmask.asm49
-rw-r--r--gfx/pics/031/frames.asm31
-rw-r--r--gfx/pics/031/front.2bpp (renamed from gfx/frontpics/031.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/031/front.lz (renamed from gfx/frontpics/lz/031.lz)bin1054 -> 1054 bytes
-rw-r--r--gfx/pics/031/tiles.2bpp (renamed from gfx/anim/031.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/032/anim0.asm8
-rw-r--r--gfx/pics/032/anim1.asm6
-rw-r--r--gfx/pics/032/back.2bpp (renamed from gfx/backpics/032.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/032/back.lz (renamed from gfx/backpics/lz/032.lz)bin411 -> 411 bytes
-rw-r--r--gfx/pics/032/bitmask.asm16
-rw-r--r--gfx/pics/032/frames.asm13
-rw-r--r--gfx/pics/032/front.2bpp (renamed from gfx/frontpics/032.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/032/front.lz (renamed from gfx/frontpics/lz/032.lz)bin524 -> 524 bytes
-rw-r--r--gfx/pics/032/tiles.2bpp (renamed from gfx/anim/032.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/033/anim0.asm12
-rw-r--r--gfx/pics/033/anim1.asm8
-rw-r--r--gfx/pics/033/back.2bpp (renamed from gfx/backpics/033.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/033/back.lz (renamed from gfx/backpics/lz/033.lz)bin371 -> 371 bytes
-rw-r--r--gfx/pics/033/bitmask.asm25
-rw-r--r--gfx/pics/033/frames.asm27
-rw-r--r--gfx/pics/033/front.2bpp (renamed from gfx/frontpics/033.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/033/front.lz (renamed from gfx/frontpics/lz/033.lz)bin833 -> 833 bytes
-rw-r--r--gfx/pics/033/tiles.2bpp (renamed from gfx/anim/033.2bpp)bin544 -> 544 bytes
-rw-r--r--gfx/pics/034/anim0.asm6
-rw-r--r--gfx/pics/034/anim1.asm6
-rw-r--r--gfx/pics/034/back.2bpp (renamed from gfx/backpics/034.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/034/back.lz (renamed from gfx/backpics/lz/034.lz)bin485 -> 485 bytes
-rw-r--r--gfx/pics/034/bitmask.asm17
-rw-r--r--gfx/pics/034/frames.asm17
-rw-r--r--gfx/pics/034/front.2bpp (renamed from gfx/frontpics/034.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/034/front.lz (renamed from gfx/frontpics/lz/034.lz)bin1162 -> 1162 bytes
-rw-r--r--gfx/pics/034/tiles.2bpp (renamed from gfx/anim/034.2bpp)bin560 -> 560 bytes
-rw-r--r--gfx/pics/035/anim0.asm9
-rw-r--r--gfx/pics/035/anim1.asm8
-rw-r--r--gfx/pics/035/back.2bpp (renamed from gfx/backpics/035.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/035/back.lz (renamed from gfx/backpics/lz/035.lz)bin351 -> 351 bytes
-rw-r--r--gfx/pics/035/bitmask.asm26
-rw-r--r--gfx/pics/035/frames.asm22
-rw-r--r--gfx/pics/035/front.2bpp (renamed from gfx/frontpics/035.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/035/front.lz (renamed from gfx/frontpics/lz/035.lz)bin454 -> 454 bytes
-rw-r--r--gfx/pics/035/tiles.2bpp (renamed from gfx/anim/035.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/036/anim0.asm6
-rw-r--r--gfx/pics/036/anim1.asm6
-rw-r--r--gfx/pics/036/back.2bpp (renamed from gfx/backpics/036.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/036/back.lz (renamed from gfx/backpics/lz/036.lz)bin428 -> 428 bytes
-rw-r--r--gfx/pics/036/bitmask.asm19
-rw-r--r--gfx/pics/036/frames.asm14
-rw-r--r--gfx/pics/036/front.2bpp (renamed from gfx/frontpics/036.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/036/front.lz (renamed from gfx/frontpics/lz/036.lz)bin666 -> 666 bytes
-rw-r--r--gfx/pics/036/tiles.2bpp (renamed from gfx/anim/036.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/037/anim0.asm11
-rw-r--r--gfx/pics/037/anim1.asm7
-rw-r--r--gfx/pics/037/back.2bpp (renamed from gfx/backpics/037.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/037/back.lz (renamed from gfx/backpics/lz/037.lz)bin357 -> 357 bytes
-rw-r--r--gfx/pics/037/bitmask.asm19
-rw-r--r--gfx/pics/037/frames.asm19
-rw-r--r--gfx/pics/037/front.2bpp (renamed from gfx/frontpics/037.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/037/front.lz (renamed from gfx/frontpics/lz/037.lz)bin695 -> 695 bytes
-rw-r--r--gfx/pics/037/tiles.2bpp (renamed from gfx/anim/037.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/038/anim0.asm10
-rw-r--r--gfx/pics/038/anim1.asm6
-rw-r--r--gfx/pics/038/back.2bpp (renamed from gfx/backpics/038.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/038/back.lz (renamed from gfx/backpics/lz/038.lz)bin433 -> 433 bytes
-rw-r--r--gfx/pics/038/bitmask.asm41
-rw-r--r--gfx/pics/038/frames.asm27
-rw-r--r--gfx/pics/038/front.2bpp (renamed from gfx/frontpics/038.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/038/front.lz (renamed from gfx/frontpics/lz/038.lz)bin1227 -> 1227 bytes
-rw-r--r--gfx/pics/038/tiles.2bpp (renamed from gfx/anim/038.2bpp)bin768 -> 768 bytes
-rw-r--r--gfx/pics/039/anim0.asm11
-rw-r--r--gfx/pics/039/anim1.asm6
-rw-r--r--gfx/pics/039/back.2bpp (renamed from gfx/backpics/039.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/039/back.lz (renamed from gfx/backpics/lz/039.lz)bin245 -> 245 bytes
-rw-r--r--gfx/pics/039/bitmask.asm16
-rw-r--r--gfx/pics/039/frames.asm17
-rw-r--r--gfx/pics/039/front.2bpp (renamed from gfx/frontpics/039.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/039/front.lz (renamed from gfx/frontpics/lz/039.lz)bin487 -> 487 bytes
-rw-r--r--gfx/pics/039/tiles.2bpp (renamed from gfx/anim/039.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/040/anim0.asm9
-rw-r--r--gfx/pics/040/anim1.asm6
-rw-r--r--gfx/pics/040/back.2bpp (renamed from gfx/backpics/040.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/040/back.lz (renamed from gfx/backpics/lz/040.lz)bin258 -> 258 bytes
-rw-r--r--gfx/pics/040/bitmask.asm19
-rw-r--r--gfx/pics/040/frames.asm13
-rw-r--r--gfx/pics/040/front.2bpp (renamed from gfx/frontpics/040.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/040/front.lz (renamed from gfx/frontpics/lz/040.lz)bin670 -> 670 bytes
-rw-r--r--gfx/pics/040/tiles.2bpp (renamed from gfx/anim/040.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/041/anim0.asm8
-rw-r--r--gfx/pics/041/anim1.asm7
-rw-r--r--gfx/pics/041/back.2bpp (renamed from gfx/backpics/041.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/041/back.lz (renamed from gfx/backpics/lz/041.lz)bin395 -> 395 bytes
-rw-r--r--gfx/pics/041/bitmask.asm16
-rw-r--r--gfx/pics/041/frames.asm15
-rw-r--r--gfx/pics/041/front.2bpp (renamed from gfx/frontpics/041.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/041/front.lz (renamed from gfx/frontpics/lz/041.lz)bin463 -> 463 bytes
-rw-r--r--gfx/pics/041/tiles.2bpp (renamed from gfx/anim/041.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/042/anim0.asm11
-rw-r--r--gfx/pics/042/anim1.asm6
-rw-r--r--gfx/pics/042/back.2bpp (renamed from gfx/backpics/042.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/042/back.lz (renamed from gfx/backpics/lz/042.lz)bin176 -> 176 bytes
-rw-r--r--gfx/pics/042/bitmask.asm25
-rw-r--r--gfx/pics/042/frames.asm19
-rw-r--r--gfx/pics/042/front.2bpp (renamed from gfx/frontpics/042.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/042/front.lz (renamed from gfx/frontpics/lz/042.lz)bin814 -> 814 bytes
-rw-r--r--gfx/pics/042/tiles.2bpp (renamed from gfx/anim/042.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/043/anim0.asm11
-rw-r--r--gfx/pics/043/anim1.asm6
-rw-r--r--gfx/pics/043/back.2bpp (renamed from gfx/backpics/043.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/043/back.lz (renamed from gfx/backpics/lz/043.lz)bin244 -> 244 bytes
-rw-r--r--gfx/pics/043/bitmask.asm16
-rw-r--r--gfx/pics/043/frames.asm19
-rw-r--r--gfx/pics/043/front.2bpp (renamed from gfx/frontpics/043.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/043/front.lz (renamed from gfx/frontpics/lz/043.lz)bin404 -> 404 bytes
-rw-r--r--gfx/pics/043/tiles.2bpp (renamed from gfx/anim/043.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/044/anim0.asm12
-rw-r--r--gfx/pics/044/anim1.asm6
-rw-r--r--gfx/pics/044/back.2bpp (renamed from gfx/backpics/044.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/044/back.lz (renamed from gfx/backpics/lz/044.lz)bin394 -> 394 bytes
-rw-r--r--gfx/pics/044/bitmask.asm19
-rw-r--r--gfx/pics/044/frames.asm21
-rw-r--r--gfx/pics/044/front.2bpp (renamed from gfx/frontpics/044.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/044/front.lz (renamed from gfx/frontpics/lz/044.lz)bin588 -> 588 bytes
-rw-r--r--gfx/pics/044/tiles.2bpp (renamed from gfx/anim/044.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/045/anim0.asm10
-rw-r--r--gfx/pics/045/anim1.asm8
-rw-r--r--gfx/pics/045/back.2bpp (renamed from gfx/backpics/045.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/045/back.lz (renamed from gfx/backpics/lz/045.lz)bin366 -> 366 bytes
-rw-r--r--gfx/pics/045/bitmask.asm25
-rw-r--r--gfx/pics/045/frames.asm15
-rw-r--r--gfx/pics/045/front.2bpp (renamed from gfx/frontpics/045.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/045/front.lz (renamed from gfx/frontpics/lz/045.lz)bin708 -> 708 bytes
-rw-r--r--gfx/pics/045/tiles.2bpp (renamed from gfx/anim/045.2bpp)bin624 -> 624 bytes
-rw-r--r--gfx/pics/046/anim0.asm6
-rw-r--r--gfx/pics/046/anim1.asm6
-rw-r--r--gfx/pics/046/back.2bpp (renamed from gfx/backpics/046.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/046/back.lz (renamed from gfx/backpics/lz/046.lz)bin296 -> 296 bytes
-rw-r--r--gfx/pics/046/bitmask.asm16
-rw-r--r--gfx/pics/046/frames.asm14
-rw-r--r--gfx/pics/046/front.2bpp (renamed from gfx/frontpics/046.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/046/front.lz (renamed from gfx/frontpics/lz/046.lz)bin486 -> 486 bytes
-rw-r--r--gfx/pics/046/tiles.2bpp (renamed from gfx/anim/046.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/047/anim0.asm13
-rw-r--r--gfx/pics/047/anim1.asm5
-rw-r--r--gfx/pics/047/back.2bpp (renamed from gfx/backpics/047.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/047/back.lz (renamed from gfx/backpics/lz/047.lz)bin314 -> 314 bytes
-rw-r--r--gfx/pics/047/bitmask.asm41
-rw-r--r--gfx/pics/047/frames.asm23
-rw-r--r--gfx/pics/047/front.2bpp (renamed from gfx/frontpics/047.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/047/front.lz (renamed from gfx/frontpics/lz/047.lz)bin763 -> 763 bytes
-rw-r--r--gfx/pics/047/tiles.2bpp (renamed from gfx/anim/047.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/048/anim0.asm16
-rw-r--r--gfx/pics/048/anim1.asm6
-rw-r--r--gfx/pics/048/back.2bpp (renamed from gfx/backpics/048.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/048/back.lz (renamed from gfx/backpics/lz/048.lz)bin351 -> 351 bytes
-rw-r--r--gfx/pics/048/bitmask.asm11
-rw-r--r--gfx/pics/048/frames.asm9
-rw-r--r--gfx/pics/048/front.2bpp (renamed from gfx/frontpics/048.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/048/front.lz (renamed from gfx/frontpics/lz/048.lz)bin481 -> 481 bytes
-rw-r--r--gfx/pics/048/tiles.2bpp (renamed from gfx/anim/048.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/049/anim0.asm6
-rw-r--r--gfx/pics/049/anim1.asm6
-rw-r--r--gfx/pics/049/back.2bpp (renamed from gfx/backpics/049.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/049/back.lz (renamed from gfx/backpics/lz/049.lz)bin450 -> 450 bytes
-rw-r--r--gfx/pics/049/bitmask.asm17
-rw-r--r--gfx/pics/049/frames.asm11
-rw-r--r--gfx/pics/049/front.2bpp (renamed from gfx/frontpics/049.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/049/front.lz (renamed from gfx/frontpics/lz/049.lz)bin796 -> 796 bytes
-rw-r--r--gfx/pics/049/tiles.2bpp (renamed from gfx/anim/049.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/050/anim0.asm7
-rw-r--r--gfx/pics/050/anim1.asm6
-rw-r--r--gfx/pics/050/back.2bpp (renamed from gfx/backpics/050.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/050/back.lz (renamed from gfx/backpics/lz/050.lz)bin191 -> 191 bytes
-rw-r--r--gfx/pics/050/bitmask.asm16
-rw-r--r--gfx/pics/050/frames.asm17
-rw-r--r--gfx/pics/050/front.2bpp (renamed from gfx/frontpics/050.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/050/front.lz (renamed from gfx/frontpics/lz/050.lz)bin349 -> 349 bytes
-rw-r--r--gfx/pics/050/tiles.2bpp (renamed from gfx/anim/050.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/051/anim0.asm16
-rw-r--r--gfx/pics/051/anim1.asm10
-rw-r--r--gfx/pics/051/back.2bpp (renamed from gfx/backpics/051.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/051/back.lz (renamed from gfx/backpics/lz/051.lz)bin334 -> 334 bytes
-rw-r--r--gfx/pics/051/bitmask.asm25
-rw-r--r--gfx/pics/051/frames.asm35
-rw-r--r--gfx/pics/051/front.2bpp (renamed from gfx/frontpics/051.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/051/front.lz (renamed from gfx/frontpics/lz/051.lz)bin651 -> 651 bytes
-rw-r--r--gfx/pics/051/tiles.2bpp (renamed from gfx/anim/051.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/052/anim0.asm7
-rw-r--r--gfx/pics/052/anim1.asm6
-rw-r--r--gfx/pics/052/back.2bpp (renamed from gfx/backpics/052.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/052/back.lz (renamed from gfx/backpics/lz/052.lz)bin322 -> 322 bytes
-rw-r--r--gfx/pics/052/bitmask.asm16
-rw-r--r--gfx/pics/052/frames.asm17
-rw-r--r--gfx/pics/052/front.2bpp (renamed from gfx/frontpics/052.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/052/front.lz (renamed from gfx/frontpics/lz/052.lz)bin516 -> 516 bytes
-rw-r--r--gfx/pics/052/tiles.2bpp (renamed from gfx/anim/052.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/053/anim0.asm10
-rw-r--r--gfx/pics/053/anim1.asm6
-rw-r--r--gfx/pics/053/back.2bpp (renamed from gfx/backpics/053.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/053/back.lz (renamed from gfx/backpics/lz/053.lz)bin383 -> 383 bytes
-rw-r--r--gfx/pics/053/bitmask.asm25
-rw-r--r--gfx/pics/053/frames.asm18
-rw-r--r--gfx/pics/053/front.2bpp (renamed from gfx/frontpics/053.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/053/front.lz (renamed from gfx/frontpics/lz/053.lz)bin798 -> 798 bytes
-rw-r--r--gfx/pics/053/tiles.2bpp (renamed from gfx/anim/053.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/054/anim0.asm8
-rw-r--r--gfx/pics/054/anim1.asm6
-rw-r--r--gfx/pics/054/back.2bpp (renamed from gfx/backpics/054.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/054/back.lz (renamed from gfx/backpics/lz/054.lz)bin356 -> 356 bytes
-rw-r--r--gfx/pics/054/bitmask.asm11
-rw-r--r--gfx/pics/054/frames.asm9
-rw-r--r--gfx/pics/054/front.2bpp (renamed from gfx/frontpics/054.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/054/front.lz (renamed from gfx/frontpics/lz/054.lz)bin484 -> 484 bytes
-rw-r--r--gfx/pics/054/tiles.2bpp (renamed from gfx/anim/054.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/055/anim0.asm13
-rw-r--r--gfx/pics/055/anim1.asm6
-rw-r--r--gfx/pics/055/back.2bpp (renamed from gfx/backpics/055.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/055/back.lz (renamed from gfx/backpics/lz/055.lz)bin341 -> 341 bytes
-rw-r--r--gfx/pics/055/bitmask.asm57
-rw-r--r--gfx/pics/055/frames.asm34
-rw-r--r--gfx/pics/055/front.2bpp (renamed from gfx/frontpics/055.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/055/front.lz (renamed from gfx/frontpics/lz/055.lz)bin936 -> 936 bytes
-rw-r--r--gfx/pics/055/tiles.2bpp (renamed from gfx/anim/055.2bpp)bin496 -> 496 bytes
-rw-r--r--gfx/pics/056/anim0.asm7
-rw-r--r--gfx/pics/056/anim1.asm6
-rw-r--r--gfx/pics/056/back.2bpp (renamed from gfx/backpics/056.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/056/back.lz (renamed from gfx/backpics/lz/056.lz)bin403 -> 403 bytes
-rw-r--r--gfx/pics/056/bitmask.asm16
-rw-r--r--gfx/pics/056/frames.asm13
-rw-r--r--gfx/pics/056/front.2bpp (renamed from gfx/frontpics/056.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/056/front.lz (renamed from gfx/frontpics/lz/056.lz)bin499 -> 499 bytes
-rw-r--r--gfx/pics/056/tiles.2bpp (renamed from gfx/anim/056.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/057/anim0.asm8
-rw-r--r--gfx/pics/057/anim1.asm8
-rw-r--r--gfx/pics/057/back.2bpp (renamed from gfx/backpics/057.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/057/back.lz (renamed from gfx/backpics/lz/057.lz)bin359 -> 359 bytes
-rw-r--r--gfx/pics/057/bitmask.asm33
-rw-r--r--gfx/pics/057/frames.asm19
-rw-r--r--gfx/pics/057/front.2bpp (renamed from gfx/frontpics/057.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/057/front.lz (renamed from gfx/frontpics/lz/057.lz)bin881 -> 881 bytes
-rw-r--r--gfx/pics/057/tiles.2bpp (renamed from gfx/anim/057.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/058/anim0.asm9
-rw-r--r--gfx/pics/058/anim1.asm7
-rw-r--r--gfx/pics/058/back.2bpp (renamed from gfx/backpics/058.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/058/back.lz (renamed from gfx/backpics/lz/058.lz)bin375 -> 375 bytes
-rw-r--r--gfx/pics/058/bitmask.asm16
-rw-r--r--gfx/pics/058/frames.asm13
-rw-r--r--gfx/pics/058/front.2bpp (renamed from gfx/frontpics/058.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/058/front.lz (renamed from gfx/frontpics/lz/058.lz)bin453 -> 453 bytes
-rw-r--r--gfx/pics/058/tiles.2bpp (renamed from gfx/anim/058.2bpp)bin160 -> 160 bytes
-rw-r--r--gfx/pics/059/anim0.asm7
-rw-r--r--gfx/pics/059/anim1.asm6
-rw-r--r--gfx/pics/059/back.2bpp (renamed from gfx/backpics/059.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/059/back.lz (renamed from gfx/backpics/lz/059.lz)bin393 -> 393 bytes
-rw-r--r--gfx/pics/059/bitmask.asm49
-rw-r--r--gfx/pics/059/frames.asm31
-rw-r--r--gfx/pics/059/front.2bpp (renamed from gfx/frontpics/059.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/059/front.lz (renamed from gfx/frontpics/lz/059.lz)bin1023 -> 1023 bytes
-rw-r--r--gfx/pics/059/tiles.2bpp (renamed from gfx/anim/059.2bpp)bin528 -> 528 bytes
-rw-r--r--gfx/pics/060/anim0.asm8
-rw-r--r--gfx/pics/060/anim1.asm10
-rw-r--r--gfx/pics/060/back.2bpp (renamed from gfx/backpics/060.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/060/back.lz (renamed from gfx/backpics/lz/060.lz)bin240 -> 240 bytes
-rw-r--r--gfx/pics/060/bitmask.asm21
-rw-r--r--gfx/pics/060/frames.asm17
-rw-r--r--gfx/pics/060/front.2bpp (renamed from gfx/frontpics/060.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/060/front.lz (renamed from gfx/frontpics/lz/060.lz)bin379 -> 379 bytes
-rw-r--r--gfx/pics/060/tiles.2bpp (renamed from gfx/anim/060.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/061/anim0.asm9
-rw-r--r--gfx/pics/061/anim1.asm6
-rw-r--r--gfx/pics/061/back.2bpp (renamed from gfx/backpics/061.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/061/back.lz (renamed from gfx/backpics/lz/061.lz)bin336 -> 336 bytes
-rw-r--r--gfx/pics/061/bitmask.asm31
-rw-r--r--gfx/pics/061/frames.asm24
-rw-r--r--gfx/pics/061/front.2bpp (renamed from gfx/frontpics/061.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/061/front.lz (renamed from gfx/frontpics/lz/061.lz)bin728 -> 728 bytes
-rw-r--r--gfx/pics/061/tiles.2bpp (renamed from gfx/anim/061.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/062/anim0.asm8
-rw-r--r--gfx/pics/062/anim1.asm6
-rw-r--r--gfx/pics/062/back.2bpp (renamed from gfx/backpics/062.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/062/back.lz (renamed from gfx/backpics/lz/062.lz)bin374 -> 374 bytes
-rw-r--r--gfx/pics/062/bitmask.asm25
-rw-r--r--gfx/pics/062/frames.asm13
-rw-r--r--gfx/pics/062/front.2bpp (renamed from gfx/frontpics/062.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/062/front.lz (renamed from gfx/frontpics/lz/062.lz)bin859 -> 859 bytes
-rw-r--r--gfx/pics/062/tiles.2bpp (renamed from gfx/anim/062.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/063/anim0.asm7
-rw-r--r--gfx/pics/063/anim1.asm6
-rw-r--r--gfx/pics/063/back.2bpp (renamed from gfx/backpics/063.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/063/back.lz (renamed from gfx/backpics/lz/063.lz)bin335 -> 335 bytes
-rw-r--r--gfx/pics/063/bitmask.asm16
-rw-r--r--gfx/pics/063/frames.asm13
-rw-r--r--gfx/pics/063/front.2bpp (renamed from gfx/frontpics/063.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/063/front.lz (renamed from gfx/frontpics/lz/063.lz)bin459 -> 459 bytes
-rw-r--r--gfx/pics/063/tiles.2bpp (renamed from gfx/anim/063.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/064/anim0.asm8
-rw-r--r--gfx/pics/064/anim1.asm6
-rw-r--r--gfx/pics/064/back.2bpp (renamed from gfx/backpics/064.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/064/back.lz (renamed from gfx/backpics/lz/064.lz)bin359 -> 359 bytes
-rw-r--r--gfx/pics/064/bitmask.asm19
-rw-r--r--gfx/pics/064/frames.asm19
-rw-r--r--gfx/pics/064/front.2bpp (renamed from gfx/frontpics/064.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/064/front.lz (renamed from gfx/frontpics/lz/064.lz)bin773 -> 773 bytes
-rw-r--r--gfx/pics/064/tiles.2bpp (renamed from gfx/anim/064.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/065/anim0.asm9
-rw-r--r--gfx/pics/065/anim1.asm5
-rw-r--r--gfx/pics/065/back.2bpp (renamed from gfx/backpics/065.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/065/back.lz (renamed from gfx/backpics/lz/065.lz)bin461 -> 461 bytes
-rw-r--r--gfx/pics/065/bitmask.asm33
-rw-r--r--gfx/pics/065/frames.asm25
-rw-r--r--gfx/pics/065/front.2bpp (renamed from gfx/frontpics/065.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/065/front.lz (renamed from gfx/frontpics/lz/065.lz)bin985 -> 985 bytes
-rw-r--r--gfx/pics/065/tiles.2bpp (renamed from gfx/anim/065.2bpp)bin544 -> 544 bytes
-rw-r--r--gfx/pics/066/anim0.asm8
-rw-r--r--gfx/pics/066/anim1.asm6
-rw-r--r--gfx/pics/066/back.2bpp (renamed from gfx/backpics/066.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/066/back.lz (renamed from gfx/backpics/lz/066.lz)bin335 -> 335 bytes
-rw-r--r--gfx/pics/066/bitmask.asm16
-rw-r--r--gfx/pics/066/frames.asm14
-rw-r--r--gfx/pics/066/front.2bpp (renamed from gfx/frontpics/066.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/066/front.lz (renamed from gfx/frontpics/lz/066.lz)bin537 -> 537 bytes
-rw-r--r--gfx/pics/066/tiles.2bpp (renamed from gfx/anim/066.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/067/anim0.asm5
-rw-r--r--gfx/pics/067/anim1.asm10
-rw-r--r--gfx/pics/067/back.2bpp (renamed from gfx/backpics/067.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/067/back.lz (renamed from gfx/backpics/lz/067.lz)bin375 -> 375 bytes
-rw-r--r--gfx/pics/067/bitmask.asm33
-rw-r--r--gfx/pics/067/frames.asm27
-rw-r--r--gfx/pics/067/front.2bpp (renamed from gfx/frontpics/067.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/067/front.lz (renamed from gfx/frontpics/lz/067.lz)bin863 -> 863 bytes
-rw-r--r--gfx/pics/067/tiles.2bpp (renamed from gfx/anim/067.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/068/anim0.asm11
-rw-r--r--gfx/pics/068/anim1.asm6
-rw-r--r--gfx/pics/068/back.2bpp (renamed from gfx/backpics/068.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/068/back.lz (renamed from gfx/backpics/lz/068.lz)bin482 -> 482 bytes
-rw-r--r--gfx/pics/068/bitmask.asm57
-rw-r--r--gfx/pics/068/frames.asm35
-rw-r--r--gfx/pics/068/front.2bpp (renamed from gfx/frontpics/068.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/068/front.lz (renamed from gfx/frontpics/lz/068.lz)bin1293 -> 1293 bytes
-rw-r--r--gfx/pics/068/tiles.2bpp (renamed from gfx/anim/068.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/069/anim0.asm12
-rw-r--r--gfx/pics/069/anim1.asm8
-rw-r--r--gfx/pics/069/back.2bpp (renamed from gfx/backpics/069.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/069/back.lz (renamed from gfx/backpics/lz/069.lz)bin287 -> 287 bytes
-rw-r--r--gfx/pics/069/bitmask.asm26
-rw-r--r--gfx/pics/069/frames.asm25
-rw-r--r--gfx/pics/069/front.2bpp (renamed from gfx/frontpics/069.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/069/front.lz (renamed from gfx/frontpics/lz/069.lz)bin443 -> 443 bytes
-rw-r--r--gfx/pics/069/tiles.2bpp (renamed from gfx/anim/069.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/070/anim0.asm8
-rw-r--r--gfx/pics/070/anim1.asm6
-rw-r--r--gfx/pics/070/back.2bpp (renamed from gfx/backpics/070.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/070/back.lz (renamed from gfx/backpics/lz/070.lz)bin334 -> 334 bytes
-rw-r--r--gfx/pics/070/bitmask.asm19
-rw-r--r--gfx/pics/070/frames.asm13
-rw-r--r--gfx/pics/070/front.2bpp (renamed from gfx/frontpics/070.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/070/front.lz (renamed from gfx/frontpics/lz/070.lz)bin567 -> 567 bytes
-rw-r--r--gfx/pics/070/tiles.2bpp (renamed from gfx/anim/070.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/071/anim0.asm7
-rw-r--r--gfx/pics/071/anim1.asm7
-rw-r--r--gfx/pics/071/back.2bpp (renamed from gfx/backpics/071.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/071/back.lz (renamed from gfx/backpics/lz/071.lz)bin322 -> 322 bytes
-rw-r--r--gfx/pics/071/bitmask.asm41
-rw-r--r--gfx/pics/071/frames.asm23
-rw-r--r--gfx/pics/071/front.2bpp (renamed from gfx/frontpics/071.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/071/front.lz (renamed from gfx/frontpics/lz/071.lz)bin892 -> 892 bytes
-rw-r--r--gfx/pics/071/tiles.2bpp (renamed from gfx/anim/071.2bpp)bin512 -> 512 bytes
-rw-r--r--gfx/pics/072/anim0.asm6
-rw-r--r--gfx/pics/072/anim1.asm6
-rw-r--r--gfx/pics/072/back.2bpp (renamed from gfx/backpics/072.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/072/back.lz (renamed from gfx/backpics/lz/072.lz)bin295 -> 295 bytes
-rw-r--r--gfx/pics/072/bitmask.asm26
-rw-r--r--gfx/pics/072/frames.asm21
-rw-r--r--gfx/pics/072/front.2bpp (renamed from gfx/frontpics/072.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/072/front.lz (renamed from gfx/frontpics/lz/072.lz)bin441 -> 441 bytes
-rw-r--r--gfx/pics/072/tiles.2bpp (renamed from gfx/anim/072.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/073/anim0.asm7
-rw-r--r--gfx/pics/073/anim1.asm7
-rw-r--r--gfx/pics/073/back.2bpp (renamed from gfx/backpics/073.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/073/back.lz (renamed from gfx/backpics/lz/073.lz)bin375 -> 375 bytes
-rw-r--r--gfx/pics/073/bitmask.asm19
-rw-r--r--gfx/pics/073/frames.asm14
-rw-r--r--gfx/pics/073/front.2bpp (renamed from gfx/frontpics/073.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/073/front.lz (renamed from gfx/frontpics/lz/073.lz)bin702 -> 702 bytes
-rw-r--r--gfx/pics/073/tiles.2bpp (renamed from gfx/anim/073.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/074/anim0.asm8
-rw-r--r--gfx/pics/074/anim1.asm6
-rw-r--r--gfx/pics/074/back.2bpp (renamed from gfx/backpics/074.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/074/back.lz (renamed from gfx/backpics/lz/074.lz)bin367 -> 367 bytes
-rw-r--r--gfx/pics/074/bitmask.asm16
-rw-r--r--gfx/pics/074/frames.asm13
-rw-r--r--gfx/pics/074/front.2bpp (renamed from gfx/frontpics/074.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/074/front.lz (renamed from gfx/frontpics/lz/074.lz)bin361 -> 361 bytes
-rw-r--r--gfx/pics/074/tiles.2bpp (renamed from gfx/anim/074.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/075/anim0.asm10
-rw-r--r--gfx/pics/075/anim1.asm7
-rw-r--r--gfx/pics/075/back.2bpp (renamed from gfx/backpics/075.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/075/back.lz (renamed from gfx/backpics/lz/075.lz)bin333 -> 333 bytes
-rw-r--r--gfx/pics/075/bitmask.asm31
-rw-r--r--gfx/pics/075/frames.asm22
-rw-r--r--gfx/pics/075/front.2bpp (renamed from gfx/frontpics/075.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/075/front.lz (renamed from gfx/frontpics/lz/075.lz)bin664 -> 664 bytes
-rw-r--r--gfx/pics/075/tiles.2bpp (renamed from gfx/anim/075.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/076/anim0.asm7
-rw-r--r--gfx/pics/076/anim1.asm6
-rw-r--r--gfx/pics/076/back.2bpp (renamed from gfx/backpics/076.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/076/back.lz (renamed from gfx/backpics/lz/076.lz)bin198 -> 198 bytes
-rw-r--r--gfx/pics/076/bitmask.asm25
-rw-r--r--gfx/pics/076/frames.asm20
-rw-r--r--gfx/pics/076/front.2bpp (renamed from gfx/frontpics/076.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/076/front.lz (renamed from gfx/frontpics/lz/076.lz)bin735 -> 735 bytes
-rw-r--r--gfx/pics/076/tiles.2bpp (renamed from gfx/anim/076.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/077/anim0.asm10
-rw-r--r--gfx/pics/077/anim1.asm5
-rw-r--r--gfx/pics/077/back.2bpp (renamed from gfx/backpics/077.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/077/back.lz (renamed from gfx/backpics/lz/077.lz)bin379 -> 379 bytes
-rw-r--r--gfx/pics/077/bitmask.asm31
-rw-r--r--gfx/pics/077/frames.asm21
-rw-r--r--gfx/pics/077/front.2bpp (renamed from gfx/frontpics/077.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/077/front.lz (renamed from gfx/frontpics/lz/077.lz)bin665 -> 665 bytes
-rw-r--r--gfx/pics/077/tiles.2bpp (renamed from gfx/anim/077.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/078/anim0.asm14
-rw-r--r--gfx/pics/078/anim1.asm6
-rw-r--r--gfx/pics/078/back.2bpp (renamed from gfx/backpics/078.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/078/back.lz (renamed from gfx/backpics/lz/078.lz)bin404 -> 404 bytes
-rw-r--r--gfx/pics/078/bitmask.asm33
-rw-r--r--gfx/pics/078/frames.asm19
-rw-r--r--gfx/pics/078/front.2bpp (renamed from gfx/frontpics/078.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/078/front.lz (renamed from gfx/frontpics/lz/078.lz)bin1068 -> 1068 bytes
-rw-r--r--gfx/pics/078/tiles.2bpp (renamed from gfx/anim/078.2bpp)bin544 -> 544 bytes
-rw-r--r--gfx/pics/079/anim0.asm5
-rw-r--r--gfx/pics/079/anim1.asm3
-rw-r--r--gfx/pics/079/back.2bpp (renamed from gfx/backpics/079.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/079/back.lz (renamed from gfx/backpics/lz/079.lz)bin235 -> 235 bytes
-rw-r--r--gfx/pics/079/bitmask.asm16
-rw-r--r--gfx/pics/079/frames.asm14
-rw-r--r--gfx/pics/079/front.2bpp (renamed from gfx/frontpics/079.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/079/front.lz (renamed from gfx/frontpics/lz/079.lz)bin453 -> 453 bytes
-rw-r--r--gfx/pics/079/tiles.2bpp (renamed from gfx/anim/079.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/080/anim0.asm13
-rw-r--r--gfx/pics/080/anim1.asm6
-rw-r--r--gfx/pics/080/back.2bpp (renamed from gfx/backpics/080.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/080/back.lz (renamed from gfx/backpics/lz/080.lz)bin342 -> 342 bytes
-rw-r--r--gfx/pics/080/bitmask.asm25
-rw-r--r--gfx/pics/080/frames.asm19
-rw-r--r--gfx/pics/080/front.2bpp (renamed from gfx/frontpics/080.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/080/front.lz (renamed from gfx/frontpics/lz/080.lz)bin917 -> 917 bytes
-rw-r--r--gfx/pics/080/tiles.2bpp (renamed from gfx/anim/080.2bpp)bin528 -> 528 bytes
-rw-r--r--gfx/pics/081/anim0.asm8
-rw-r--r--gfx/pics/081/anim1.asm7
-rw-r--r--gfx/pics/081/back.2bpp (renamed from gfx/backpics/081.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/081/back.lz (renamed from gfx/backpics/lz/081.lz)bin166 -> 166 bytes
-rw-r--r--gfx/pics/081/bitmask.asm16
-rw-r--r--gfx/pics/081/frames.asm26
-rw-r--r--gfx/pics/081/front.2bpp (renamed from gfx/frontpics/081.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/081/front.lz (renamed from gfx/frontpics/lz/081.lz)bin327 -> 327 bytes
-rw-r--r--gfx/pics/081/tiles.2bpp (renamed from gfx/anim/081.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/082/anim0.asm12
-rw-r--r--gfx/pics/082/anim1.asm9
-rw-r--r--gfx/pics/082/back.2bpp (renamed from gfx/backpics/082.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/082/back.lz (renamed from gfx/backpics/lz/082.lz)bin425 -> 425 bytes
-rw-r--r--gfx/pics/082/bitmask.asm49
-rw-r--r--gfx/pics/082/frames.asm33
-rw-r--r--gfx/pics/082/front.2bpp (renamed from gfx/frontpics/082.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/082/front.lz (renamed from gfx/frontpics/lz/082.lz)bin648 -> 648 bytes
-rw-r--r--gfx/pics/082/tiles.2bpp (renamed from gfx/anim/082.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/083/anim0.asm6
-rw-r--r--gfx/pics/083/anim1.asm5
-rw-r--r--gfx/pics/083/back.2bpp (renamed from gfx/backpics/083.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/083/back.lz (renamed from gfx/backpics/lz/083.lz)bin411 -> 411 bytes
-rw-r--r--gfx/pics/083/bitmask.asm25
-rw-r--r--gfx/pics/083/frames.asm23
-rw-r--r--gfx/pics/083/front.2bpp (renamed from gfx/frontpics/083.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/083/front.lz (renamed from gfx/frontpics/lz/083.lz)bin712 -> 712 bytes
-rw-r--r--gfx/pics/083/tiles.2bpp (renamed from gfx/anim/083.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/084/anim0.asm9
-rw-r--r--gfx/pics/084/anim1.asm8
-rw-r--r--gfx/pics/084/back.2bpp (renamed from gfx/backpics/084.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/084/back.lz (renamed from gfx/backpics/lz/084.lz)bin404 -> 404 bytes
-rw-r--r--gfx/pics/084/bitmask.asm16
-rw-r--r--gfx/pics/084/frames.asm13
-rw-r--r--gfx/pics/084/front.2bpp (renamed from gfx/frontpics/084.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/084/front.lz (renamed from gfx/frontpics/lz/084.lz)bin428 -> 428 bytes
-rw-r--r--gfx/pics/084/tiles.2bpp (renamed from gfx/anim/084.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/085/anim0.asm6
-rw-r--r--gfx/pics/085/anim1.asm6
-rw-r--r--gfx/pics/085/back.2bpp (renamed from gfx/backpics/085.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/085/back.lz (renamed from gfx/backpics/lz/085.lz)bin455 -> 455 bytes
-rw-r--r--gfx/pics/085/bitmask.asm33
-rw-r--r--gfx/pics/085/frames.asm21
-rw-r--r--gfx/pics/085/front.2bpp (renamed from gfx/frontpics/085.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/085/front.lz (renamed from gfx/frontpics/lz/085.lz)bin881 -> 881 bytes
-rw-r--r--gfx/pics/085/tiles.2bpp (renamed from gfx/anim/085.2bpp)bin496 -> 496 bytes
-rw-r--r--gfx/pics/086/anim0.asm8
-rw-r--r--gfx/pics/086/anim1.asm7
-rw-r--r--gfx/pics/086/back.2bpp (renamed from gfx/backpics/086.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/086/back.lz (renamed from gfx/backpics/lz/086.lz)bin317 -> 317 bytes
-rw-r--r--gfx/pics/086/bitmask.asm19
-rw-r--r--gfx/pics/086/frames.asm14
-rw-r--r--gfx/pics/086/front.2bpp (renamed from gfx/frontpics/086.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/086/front.lz (renamed from gfx/frontpics/lz/086.lz)bin644 -> 644 bytes
-rw-r--r--gfx/pics/086/tiles.2bpp (renamed from gfx/anim/086.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/087/anim0.asm7
-rw-r--r--gfx/pics/087/anim1.asm9
-rw-r--r--gfx/pics/087/back.2bpp (renamed from gfx/backpics/087.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/087/back.lz (renamed from gfx/backpics/lz/087.lz)bin236 -> 236 bytes
-rw-r--r--gfx/pics/087/bitmask.asm73
-rw-r--r--gfx/pics/087/frames.asm40
-rw-r--r--gfx/pics/087/front.2bpp (renamed from gfx/frontpics/087.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/087/front.lz (renamed from gfx/frontpics/lz/087.lz)bin892 -> 892 bytes
-rw-r--r--gfx/pics/087/tiles.2bpp (renamed from gfx/anim/087.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/088/anim0.asm6
-rw-r--r--gfx/pics/088/anim1.asm8
-rw-r--r--gfx/pics/088/back.2bpp (renamed from gfx/backpics/088.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/088/back.lz (renamed from gfx/backpics/lz/088.lz)bin286 -> 286 bytes
-rw-r--r--gfx/pics/088/bitmask.asm21
-rw-r--r--gfx/pics/088/frames.asm17
-rw-r--r--gfx/pics/088/front.2bpp (renamed from gfx/frontpics/088.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/088/front.lz (renamed from gfx/frontpics/lz/088.lz)bin518 -> 518 bytes
-rw-r--r--gfx/pics/088/tiles.2bpp (renamed from gfx/anim/088.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/089/anim0.asm6
-rw-r--r--gfx/pics/089/anim1.asm6
-rw-r--r--gfx/pics/089/back.2bpp (renamed from gfx/backpics/089.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/089/back.lz (renamed from gfx/backpics/lz/089.lz)bin347 -> 347 bytes
-rw-r--r--gfx/pics/089/bitmask.asm25
-rw-r--r--gfx/pics/089/frames.asm20
-rw-r--r--gfx/pics/089/front.2bpp (renamed from gfx/frontpics/089.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/089/front.lz (renamed from gfx/frontpics/lz/089.lz)bin846 -> 846 bytes
-rw-r--r--gfx/pics/089/tiles.2bpp (renamed from gfx/anim/089.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/090/anim0.asm6
-rw-r--r--gfx/pics/090/anim1.asm6
-rw-r--r--gfx/pics/090/back.2bpp (renamed from gfx/backpics/090.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/090/back.lz (renamed from gfx/backpics/lz/090.lz)bin395 -> 395 bytes
-rw-r--r--gfx/pics/090/bitmask.asm11
-rw-r--r--gfx/pics/090/frames.asm13
-rw-r--r--gfx/pics/090/front.2bpp (renamed from gfx/frontpics/090.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/090/front.lz (renamed from gfx/frontpics/lz/090.lz)bin442 -> 442 bytes
-rw-r--r--gfx/pics/090/tiles.2bpp (renamed from gfx/anim/090.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/091/anim0.asm7
-rw-r--r--gfx/pics/091/anim1.asm4
-rw-r--r--gfx/pics/091/back.2bpp (renamed from gfx/backpics/091.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/091/back.lz (renamed from gfx/backpics/lz/091.lz)bin458 -> 458 bytes
-rw-r--r--gfx/pics/091/bitmask.asm25
-rw-r--r--gfx/pics/091/frames.asm21
-rw-r--r--gfx/pics/091/front.2bpp (renamed from gfx/frontpics/091.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/091/front.lz (renamed from gfx/frontpics/lz/091.lz)bin908 -> 908 bytes
-rw-r--r--gfx/pics/091/tiles.2bpp (renamed from gfx/anim/091.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/092/anim0.asm8
-rw-r--r--gfx/pics/092/anim1.asm6
-rw-r--r--gfx/pics/092/back.2bpp (renamed from gfx/backpics/092.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/092/back.lz (renamed from gfx/backpics/lz/092.lz)bin250 -> 250 bytes
-rw-r--r--gfx/pics/092/bitmask.asm17
-rw-r--r--gfx/pics/092/frames.asm13
-rw-r--r--gfx/pics/092/front.2bpp (renamed from gfx/frontpics/092.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/092/front.lz (renamed from gfx/frontpics/lz/092.lz)bin766 -> 766 bytes
-rw-r--r--gfx/pics/092/tiles.2bpp (renamed from gfx/anim/092.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/093/anim0.asm7
-rw-r--r--gfx/pics/093/anim1.asm3
-rw-r--r--gfx/pics/093/back.2bpp (renamed from gfx/backpics/093.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/093/back.lz (renamed from gfx/backpics/lz/093.lz)bin320 -> 320 bytes
-rw-r--r--gfx/pics/093/bitmask.asm19
-rw-r--r--gfx/pics/093/frames.asm17
-rw-r--r--gfx/pics/093/front.2bpp (renamed from gfx/frontpics/093.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/093/front.lz (renamed from gfx/frontpics/lz/093.lz)bin624 -> 624 bytes
-rw-r--r--gfx/pics/093/tiles.2bpp (renamed from gfx/anim/093.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/094/anim0.asm9
-rw-r--r--gfx/pics/094/anim1.asm9
-rw-r--r--gfx/pics/094/back.2bpp (renamed from gfx/backpics/094.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/094/back.lz (renamed from gfx/backpics/lz/094.lz)bin330 -> 330 bytes
-rw-r--r--gfx/pics/094/bitmask.asm37
-rw-r--r--gfx/pics/094/frames.asm27
-rw-r--r--gfx/pics/094/front.2bpp (renamed from gfx/frontpics/094.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/094/front.lz (renamed from gfx/frontpics/lz/094.lz)bin657 -> 657 bytes
-rw-r--r--gfx/pics/094/tiles.2bpp (renamed from gfx/anim/094.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/095/anim0.asm10
-rw-r--r--gfx/pics/095/anim1.asm7
-rw-r--r--gfx/pics/095/back.2bpp (renamed from gfx/backpics/095.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/095/back.lz (renamed from gfx/backpics/lz/095.lz)bin378 -> 378 bytes
-rw-r--r--gfx/pics/095/bitmask.asm65
-rw-r--r--gfx/pics/095/frames.asm35
-rw-r--r--gfx/pics/095/front.2bpp (renamed from gfx/frontpics/095.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/095/front.lz (renamed from gfx/frontpics/lz/095.lz)bin869 -> 869 bytes
-rw-r--r--gfx/pics/095/tiles.2bpp (renamed from gfx/anim/095.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/096/anim0.asm11
-rw-r--r--gfx/pics/096/anim1.asm8
-rw-r--r--gfx/pics/096/back.2bpp (renamed from gfx/backpics/096.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/096/back.lz (renamed from gfx/backpics/lz/096.lz)bin251 -> 251 bytes
-rw-r--r--gfx/pics/096/bitmask.asm31
-rw-r--r--gfx/pics/096/frames.asm21
-rw-r--r--gfx/pics/096/front.2bpp (renamed from gfx/frontpics/096.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/096/front.lz (renamed from gfx/frontpics/lz/096.lz)bin684 -> 684 bytes
-rw-r--r--gfx/pics/096/tiles.2bpp (renamed from gfx/anim/096.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/097/anim0.asm7
-rw-r--r--gfx/pics/097/anim1.asm6
-rw-r--r--gfx/pics/097/back.2bpp (renamed from gfx/backpics/097.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/097/back.lz (renamed from gfx/backpics/lz/097.lz)bin401 -> 401 bytes
-rw-r--r--gfx/pics/097/bitmask.asm33
-rw-r--r--gfx/pics/097/frames.asm20
-rw-r--r--gfx/pics/097/front.2bpp (renamed from gfx/frontpics/097.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/097/front.lz (renamed from gfx/frontpics/lz/097.lz)bin837 -> 837 bytes
-rw-r--r--gfx/pics/097/tiles.2bpp (renamed from gfx/anim/097.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/098/anim0.asm11
-rw-r--r--gfx/pics/098/anim1.asm5
-rw-r--r--gfx/pics/098/back.2bpp (renamed from gfx/backpics/098.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/098/back.lz (renamed from gfx/backpics/lz/098.lz)bin419 -> 419 bytes
-rw-r--r--gfx/pics/098/bitmask.asm31
-rw-r--r--gfx/pics/098/frames.asm29
-rw-r--r--gfx/pics/098/front.2bpp (renamed from gfx/frontpics/098.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/098/front.lz (renamed from gfx/frontpics/lz/098.lz)bin492 -> 492 bytes
-rw-r--r--gfx/pics/098/tiles.2bpp (renamed from gfx/anim/098.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/099/anim0.asm10
-rw-r--r--gfx/pics/099/anim1.asm6
-rw-r--r--gfx/pics/099/back.2bpp (renamed from gfx/backpics/099.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/099/back.lz (renamed from gfx/backpics/lz/099.lz)bin331 -> 331 bytes
-rw-r--r--gfx/pics/099/bitmask.asm25
-rw-r--r--gfx/pics/099/frames.asm15
-rw-r--r--gfx/pics/099/front.2bpp (renamed from gfx/frontpics/099.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/099/front.lz (renamed from gfx/frontpics/lz/099.lz)bin812 -> 812 bytes
-rw-r--r--gfx/pics/099/tiles.2bpp (renamed from gfx/anim/099.2bpp)bin512 -> 512 bytes
-rw-r--r--gfx/pics/100/anim0.asm8
-rw-r--r--gfx/pics/100/anim1.asm7
-rw-r--r--gfx/pics/100/back.2bpp (renamed from gfx/backpics/100.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/100/back.lz (renamed from gfx/backpics/lz/100.lz)bin229 -> 229 bytes
-rw-r--r--gfx/pics/100/bitmask.asm11
-rw-r--r--gfx/pics/100/frames.asm9
-rw-r--r--gfx/pics/100/front.2bpp (renamed from gfx/frontpics/100.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/100/front.lz (renamed from gfx/frontpics/lz/100.lz)bin282 -> 282 bytes
-rw-r--r--gfx/pics/100/tiles.2bpp (renamed from gfx/anim/100.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/101/anim0.asm4
-rw-r--r--gfx/pics/101/anim1.asm3
-rw-r--r--gfx/pics/101/back.2bpp (renamed from gfx/backpics/101.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/101/back.lz (renamed from gfx/backpics/lz/101.lz)bin246 -> 246 bytes
-rw-r--r--gfx/pics/101/bitmask.asm16
-rw-r--r--gfx/pics/101/frames.asm13
-rw-r--r--gfx/pics/101/front.2bpp (renamed from gfx/frontpics/101.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/101/front.lz (renamed from gfx/frontpics/lz/101.lz)bin369 -> 369 bytes
-rw-r--r--gfx/pics/101/tiles.2bpp (renamed from gfx/anim/101.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/102/anim0.asm17
-rw-r--r--gfx/pics/102/anim1.asm6
-rw-r--r--gfx/pics/102/back.2bpp (renamed from gfx/backpics/102.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/102/back.lz (renamed from gfx/backpics/lz/102.lz)bin358 -> 358 bytes
-rw-r--r--gfx/pics/102/bitmask.asm25
-rw-r--r--gfx/pics/102/frames.asm18
-rw-r--r--gfx/pics/102/front.2bpp (renamed from gfx/frontpics/102.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/102/front.lz (renamed from gfx/frontpics/lz/102.lz)bin808 -> 808 bytes
-rw-r--r--gfx/pics/102/tiles.2bpp (renamed from gfx/anim/102.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/103/anim0.asm9
-rw-r--r--gfx/pics/103/anim1.asm6
-rw-r--r--gfx/pics/103/back.2bpp (renamed from gfx/backpics/103.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/103/back.lz (renamed from gfx/backpics/lz/103.lz)bin472 -> 472 bytes
-rw-r--r--gfx/pics/103/bitmask.asm17
-rw-r--r--gfx/pics/103/frames.asm10
-rw-r--r--gfx/pics/103/front.2bpp (renamed from gfx/frontpics/103.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/103/front.lz (renamed from gfx/frontpics/lz/103.lz)bin772 -> 772 bytes
-rw-r--r--gfx/pics/103/tiles.2bpp (renamed from gfx/anim/103.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/104/anim0.asm12
-rw-r--r--gfx/pics/104/anim1.asm6
-rw-r--r--gfx/pics/104/back.2bpp (renamed from gfx/backpics/104.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/104/back.lz (renamed from gfx/backpics/lz/104.lz)bin394 -> 394 bytes
-rw-r--r--gfx/pics/104/bitmask.asm31
-rw-r--r--gfx/pics/104/frames.asm25
-rw-r--r--gfx/pics/104/front.2bpp (renamed from gfx/frontpics/104.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/104/front.lz (renamed from gfx/frontpics/lz/104.lz)bin527 -> 527 bytes
-rw-r--r--gfx/pics/104/tiles.2bpp (renamed from gfx/anim/104.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/105/anim0.asm10
-rw-r--r--gfx/pics/105/anim1.asm6
-rw-r--r--gfx/pics/105/back.2bpp (renamed from gfx/backpics/105.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/105/back.lz (renamed from gfx/backpics/lz/105.lz)bin368 -> 368 bytes
-rw-r--r--gfx/pics/105/bitmask.asm31
-rw-r--r--gfx/pics/105/frames.asm23
-rw-r--r--gfx/pics/105/front.2bpp (renamed from gfx/frontpics/105.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/105/front.lz (renamed from gfx/frontpics/lz/105.lz)bin700 -> 700 bytes
-rw-r--r--gfx/pics/105/tiles.2bpp (renamed from gfx/anim/105.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/106/anim0.asm13
-rw-r--r--gfx/pics/106/anim1.asm6
-rw-r--r--gfx/pics/106/back.2bpp (renamed from gfx/backpics/106.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/106/back.lz (renamed from gfx/backpics/lz/106.lz)bin278 -> 278 bytes
-rw-r--r--gfx/pics/106/bitmask.asm33
-rw-r--r--gfx/pics/106/frames.asm25
-rw-r--r--gfx/pics/106/front.2bpp (renamed from gfx/frontpics/106.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/106/front.lz (renamed from gfx/frontpics/lz/106.lz)bin1050 -> 1050 bytes
-rw-r--r--gfx/pics/106/tiles.2bpp (renamed from gfx/anim/106.2bpp)bin672 -> 672 bytes
-rw-r--r--gfx/pics/107/anim0.asm11
-rw-r--r--gfx/pics/107/anim1.asm8
-rw-r--r--gfx/pics/107/back.2bpp (renamed from gfx/backpics/107.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/107/back.lz (renamed from gfx/backpics/lz/107.lz)bin365 -> 365 bytes
-rw-r--r--gfx/pics/107/bitmask.asm31
-rw-r--r--gfx/pics/107/frames.asm23
-rw-r--r--gfx/pics/107/front.2bpp (renamed from gfx/frontpics/107.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/107/front.lz (renamed from gfx/frontpics/lz/107.lz)bin579 -> 579 bytes
-rw-r--r--gfx/pics/107/tiles.2bpp (renamed from gfx/anim/107.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/108/anim0.asm7
-rw-r--r--gfx/pics/108/anim1.asm6
-rw-r--r--gfx/pics/108/back.2bpp (renamed from gfx/backpics/108.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/108/back.lz (renamed from gfx/backpics/lz/108.lz)bin321 -> 321 bytes
-rw-r--r--gfx/pics/108/bitmask.asm33
-rw-r--r--gfx/pics/108/frames.asm17
-rw-r--r--gfx/pics/108/front.2bpp (renamed from gfx/frontpics/108.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/108/front.lz (renamed from gfx/frontpics/lz/108.lz)bin787 -> 787 bytes
-rw-r--r--gfx/pics/108/tiles.2bpp (renamed from gfx/anim/108.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/109/anim0.asm7
-rw-r--r--gfx/pics/109/anim1.asm3
-rw-r--r--gfx/pics/109/back.2bpp (renamed from gfx/backpics/109.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/109/back.lz (renamed from gfx/backpics/lz/109.lz)bin378 -> 378 bytes
-rw-r--r--gfx/pics/109/bitmask.asm25
-rw-r--r--gfx/pics/109/frames.asm22
-rw-r--r--gfx/pics/109/front.2bpp (renamed from gfx/frontpics/109.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/109/front.lz (renamed from gfx/frontpics/lz/109.lz)bin482 -> 482 bytes
-rw-r--r--gfx/pics/109/tiles.2bpp (renamed from gfx/anim/109.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/110/anim0.asm8
-rw-r--r--gfx/pics/110/anim1.asm8
-rw-r--r--gfx/pics/110/back.2bpp (renamed from gfx/backpics/110.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/110/back.lz (renamed from gfx/backpics/lz/110.lz)bin340 -> 340 bytes
-rw-r--r--gfx/pics/110/bitmask.asm41
-rw-r--r--gfx/pics/110/frames.asm24
-rw-r--r--gfx/pics/110/front.2bpp (renamed from gfx/frontpics/110.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/110/front.lz (renamed from gfx/frontpics/lz/110.lz)bin909 -> 909 bytes
-rw-r--r--gfx/pics/110/tiles.2bpp (renamed from gfx/anim/110.2bpp)bin592 -> 592 bytes
-rw-r--r--gfx/pics/111/anim0.asm5
-rw-r--r--gfx/pics/111/anim1.asm6
-rw-r--r--gfx/pics/111/back.2bpp (renamed from gfx/backpics/111.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/111/back.lz (renamed from gfx/backpics/lz/111.lz)bin300 -> 300 bytes
-rw-r--r--gfx/pics/111/bitmask.asm17
-rw-r--r--gfx/pics/111/frames.asm17
-rw-r--r--gfx/pics/111/front.2bpp (renamed from gfx/frontpics/111.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/111/front.lz (renamed from gfx/frontpics/lz/111.lz)bin926 -> 926 bytes
-rw-r--r--gfx/pics/111/tiles.2bpp (renamed from gfx/anim/111.2bpp)bin528 -> 528 bytes
-rw-r--r--gfx/pics/112/anim0.asm10
-rw-r--r--gfx/pics/112/anim1.asm6
-rw-r--r--gfx/pics/112/back.2bpp (renamed from gfx/backpics/112.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/112/back.lz (renamed from gfx/backpics/lz/112.lz)bin413 -> 413 bytes
-rw-r--r--gfx/pics/112/bitmask.asm25
-rw-r--r--gfx/pics/112/frames.asm19
-rw-r--r--gfx/pics/112/front.2bpp (renamed from gfx/frontpics/112.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/112/front.lz (renamed from gfx/frontpics/lz/112.lz)bin953 -> 953 bytes
-rw-r--r--gfx/pics/112/tiles.2bpp (renamed from gfx/anim/112.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/113/anim0.asm10
-rw-r--r--gfx/pics/113/anim1.asm6
-rw-r--r--gfx/pics/113/back.2bpp (renamed from gfx/backpics/113.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/113/back.lz (renamed from gfx/backpics/lz/113.lz)bin304 -> 304 bytes
-rw-r--r--gfx/pics/113/bitmask.asm25
-rw-r--r--gfx/pics/113/frames.asm19
-rw-r--r--gfx/pics/113/front.2bpp (renamed from gfx/frontpics/113.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/113/front.lz (renamed from gfx/frontpics/lz/113.lz)bin634 -> 634 bytes
-rw-r--r--gfx/pics/113/tiles.2bpp (renamed from gfx/anim/113.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/114/anim0.asm5
-rw-r--r--gfx/pics/114/anim1.asm6
-rw-r--r--gfx/pics/114/back.2bpp (renamed from gfx/backpics/114.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/114/back.lz (renamed from gfx/backpics/lz/114.lz)bin229 -> 229 bytes
-rw-r--r--gfx/pics/114/bitmask.asm13
-rw-r--r--gfx/pics/114/frames.asm10
-rw-r--r--gfx/pics/114/front.2bpp (renamed from gfx/frontpics/114.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/114/front.lz (renamed from gfx/frontpics/lz/114.lz)bin633 -> 633 bytes
-rw-r--r--gfx/pics/114/tiles.2bpp (renamed from gfx/anim/114.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/115/anim0.asm9
-rw-r--r--gfx/pics/115/anim1.asm8
-rw-r--r--gfx/pics/115/back.2bpp (renamed from gfx/backpics/115.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/115/back.lz (renamed from gfx/backpics/lz/115.lz)bin443 -> 443 bytes
-rw-r--r--gfx/pics/115/bitmask.asm41
-rw-r--r--gfx/pics/115/frames.asm26
-rw-r--r--gfx/pics/115/front.2bpp (renamed from gfx/frontpics/115.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/115/front.lz (renamed from gfx/frontpics/lz/115.lz)bin970 -> 970 bytes
-rw-r--r--gfx/pics/115/tiles.2bpp (renamed from gfx/anim/115.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/116/anim0.asm8
-rw-r--r--gfx/pics/116/anim1.asm6
-rw-r--r--gfx/pics/116/back.2bpp (renamed from gfx/backpics/116.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/116/back.lz (renamed from gfx/backpics/lz/116.lz)bin261 -> 261 bytes
-rw-r--r--gfx/pics/116/bitmask.asm21
-rw-r--r--gfx/pics/116/frames.asm17
-rw-r--r--gfx/pics/116/front.2bpp (renamed from gfx/frontpics/116.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/116/front.lz (renamed from gfx/frontpics/lz/116.lz)bin339 -> 339 bytes
-rw-r--r--gfx/pics/116/tiles.2bpp (renamed from gfx/anim/116.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/117/anim0.asm7
-rw-r--r--gfx/pics/117/anim1.asm7
-rw-r--r--gfx/pics/117/back.2bpp (renamed from gfx/backpics/117.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/117/back.lz (renamed from gfx/backpics/lz/117.lz)bin412 -> 412 bytes
-rw-r--r--gfx/pics/117/bitmask.asm19
-rw-r--r--gfx/pics/117/frames.asm14
-rw-r--r--gfx/pics/117/front.2bpp (renamed from gfx/frontpics/117.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/117/front.lz (renamed from gfx/frontpics/lz/117.lz)bin570 -> 570 bytes
-rw-r--r--gfx/pics/117/tiles.2bpp (renamed from gfx/anim/117.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/118/anim0.asm8
-rw-r--r--gfx/pics/118/anim1.asm6
-rw-r--r--gfx/pics/118/back.2bpp (renamed from gfx/backpics/118.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/118/back.lz (renamed from gfx/backpics/lz/118.lz)bin393 -> 393 bytes
-rw-r--r--gfx/pics/118/bitmask.asm19
-rw-r--r--gfx/pics/118/frames.asm14
-rw-r--r--gfx/pics/118/front.2bpp (renamed from gfx/frontpics/118.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/118/front.lz (renamed from gfx/frontpics/lz/118.lz)bin610 -> 610 bytes
-rw-r--r--gfx/pics/118/tiles.2bpp (renamed from gfx/anim/118.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/119/anim0.asm7
-rw-r--r--gfx/pics/119/anim1.asm7
-rw-r--r--gfx/pics/119/back.2bpp (renamed from gfx/backpics/119.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/119/back.lz (renamed from gfx/backpics/lz/119.lz)bin356 -> 356 bytes
-rw-r--r--gfx/pics/119/bitmask.asm33
-rw-r--r--gfx/pics/119/frames.asm19
-rw-r--r--gfx/pics/119/front.2bpp (renamed from gfx/frontpics/119.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/119/front.lz (renamed from gfx/frontpics/lz/119.lz)bin848 -> 848 bytes
-rw-r--r--gfx/pics/119/tiles.2bpp (renamed from gfx/anim/119.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/120/anim0.asm8
-rw-r--r--gfx/pics/120/anim1.asm7
-rw-r--r--gfx/pics/120/back.2bpp (renamed from gfx/backpics/120.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/120/back.lz (renamed from gfx/backpics/lz/120.lz)bin285 -> 285 bytes
-rw-r--r--gfx/pics/120/bitmask.asm13
-rw-r--r--gfx/pics/120/frames.asm14
-rw-r--r--gfx/pics/120/front.2bpp (renamed from gfx/frontpics/120.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/120/front.lz (renamed from gfx/frontpics/lz/120.lz)bin517 -> 517 bytes
-rw-r--r--gfx/pics/120/tiles.2bpp (renamed from gfx/anim/120.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/121/anim0.asm8
-rw-r--r--gfx/pics/121/anim1.asm5
-rw-r--r--gfx/pics/121/back.2bpp (renamed from gfx/backpics/121.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/121/back.lz (renamed from gfx/backpics/lz/121.lz)bin267 -> 267 bytes
-rw-r--r--gfx/pics/121/bitmask.asm25
-rw-r--r--gfx/pics/121/frames.asm17
-rw-r--r--gfx/pics/121/front.2bpp (renamed from gfx/frontpics/121.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/121/front.lz (renamed from gfx/frontpics/lz/121.lz)bin663 -> 663 bytes
-rw-r--r--gfx/pics/121/tiles.2bpp (renamed from gfx/anim/121.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/122/anim0.asm11
-rw-r--r--gfx/pics/122/anim1.asm6
-rw-r--r--gfx/pics/122/back.2bpp (renamed from gfx/backpics/122.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/122/back.lz (renamed from gfx/backpics/lz/122.lz)bin285 -> 285 bytes
-rw-r--r--gfx/pics/122/bitmask.asm49
-rw-r--r--gfx/pics/122/frames.asm36
-rw-r--r--gfx/pics/122/front.2bpp (renamed from gfx/frontpics/122.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/122/front.lz (renamed from gfx/frontpics/lz/122.lz)bin753 -> 753 bytes
-rw-r--r--gfx/pics/122/tiles.2bpp (renamed from gfx/anim/122.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/123/anim0.asm9
-rw-r--r--gfx/pics/123/anim1.asm6
-rw-r--r--gfx/pics/123/back.2bpp (renamed from gfx/backpics/123.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/123/back.lz (renamed from gfx/backpics/lz/123.lz)bin366 -> 366 bytes
-rw-r--r--gfx/pics/123/bitmask.asm33
-rw-r--r--gfx/pics/123/frames.asm31
-rw-r--r--gfx/pics/123/front.2bpp (renamed from gfx/frontpics/123.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/123/front.lz (renamed from gfx/frontpics/lz/123.lz)bin854 -> 854 bytes
-rw-r--r--gfx/pics/123/tiles.2bpp (renamed from gfx/anim/123.2bpp)bin528 -> 528 bytes
-rw-r--r--gfx/pics/124/anim0.asm8
-rw-r--r--gfx/pics/124/anim1.asm6
-rw-r--r--gfx/pics/124/back.2bpp (renamed from gfx/backpics/124.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/124/back.lz (renamed from gfx/backpics/lz/124.lz)bin179 -> 179 bytes
-rw-r--r--gfx/pics/124/bitmask.asm19
-rw-r--r--gfx/pics/124/frames.asm13
-rw-r--r--gfx/pics/124/front.2bpp (renamed from gfx/frontpics/124.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/124/front.lz (renamed from gfx/frontpics/lz/124.lz)bin597 -> 597 bytes
-rw-r--r--gfx/pics/124/tiles.2bpp (renamed from gfx/anim/124.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/125/anim0.asm13
-rw-r--r--gfx/pics/125/anim1.asm6
-rw-r--r--gfx/pics/125/back.2bpp (renamed from gfx/backpics/125.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/125/back.lz (renamed from gfx/backpics/lz/125.lz)bin386 -> 386 bytes
-rw-r--r--gfx/pics/125/bitmask.asm25
-rw-r--r--gfx/pics/125/frames.asm23
-rw-r--r--gfx/pics/125/front.2bpp (renamed from gfx/frontpics/125.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/125/front.lz (renamed from gfx/frontpics/lz/125.lz)bin793 -> 793 bytes
-rw-r--r--gfx/pics/125/tiles.2bpp (renamed from gfx/anim/125.2bpp)bin368 -> 368 bytes
-rw-r--r--gfx/pics/126/anim0.asm7
-rw-r--r--gfx/pics/126/anim1.asm6
-rw-r--r--gfx/pics/126/back.2bpp (renamed from gfx/backpics/126.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/126/back.lz (renamed from gfx/backpics/lz/126.lz)bin402 -> 402 bytes
-rw-r--r--gfx/pics/126/bitmask.asm25
-rw-r--r--gfx/pics/126/frames.asm17
-rw-r--r--gfx/pics/126/front.2bpp (renamed from gfx/frontpics/126.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/126/front.lz (renamed from gfx/frontpics/lz/126.lz)bin703 -> 703 bytes
-rw-r--r--gfx/pics/126/tiles.2bpp (renamed from gfx/anim/126.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/127/anim0.asm8
-rw-r--r--gfx/pics/127/anim1.asm6
-rw-r--r--gfx/pics/127/back.2bpp (renamed from gfx/backpics/127.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/127/back.lz (renamed from gfx/backpics/lz/127.lz)bin429 -> 429 bytes
-rw-r--r--gfx/pics/127/bitmask.asm33
-rw-r--r--gfx/pics/127/frames.asm24
-rw-r--r--gfx/pics/127/front.2bpp (renamed from gfx/frontpics/127.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/127/front.lz (renamed from gfx/frontpics/lz/127.lz)bin815 -> 815 bytes
-rw-r--r--gfx/pics/127/tiles.2bpp (renamed from gfx/anim/127.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/128/anim0.asm11
-rw-r--r--gfx/pics/128/anim1.asm6
-rw-r--r--gfx/pics/128/back.2bpp (renamed from gfx/backpics/128.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/128/back.lz (renamed from gfx/backpics/lz/128.lz)bin231 -> 231 bytes
-rw-r--r--gfx/pics/128/bitmask.asm33
-rw-r--r--gfx/pics/128/frames.asm19
-rw-r--r--gfx/pics/128/front.2bpp (renamed from gfx/frontpics/128.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/128/front.lz (renamed from gfx/frontpics/lz/128.lz)bin1108 -> 1108 bytes
-rw-r--r--gfx/pics/128/tiles.2bpp (renamed from gfx/anim/128.2bpp)bin560 -> 560 bytes
-rw-r--r--gfx/pics/129/anim0.asm7
-rw-r--r--gfx/pics/129/anim1.asm6
-rw-r--r--gfx/pics/129/back.2bpp (renamed from gfx/backpics/129.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/129/back.lz (renamed from gfx/backpics/lz/129.lz)bin345 -> 345 bytes
-rw-r--r--gfx/pics/129/bitmask.asm19
-rw-r--r--gfx/pics/129/frames.asm13
-rw-r--r--gfx/pics/129/front.2bpp (renamed from gfx/frontpics/129.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/129/front.lz (renamed from gfx/frontpics/lz/129.lz)bin529 -> 529 bytes
-rw-r--r--gfx/pics/129/tiles.2bpp (renamed from gfx/anim/129.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/130/anim0.asm6
-rw-r--r--gfx/pics/130/anim1.asm6
-rw-r--r--gfx/pics/130/back.2bpp (renamed from gfx/backpics/130.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/130/back.lz (renamed from gfx/backpics/lz/130.lz)bin435 -> 435 bytes
-rw-r--r--gfx/pics/130/bitmask.asm17
-rw-r--r--gfx/pics/130/frames.asm15
-rw-r--r--gfx/pics/130/front.2bpp (renamed from gfx/frontpics/130.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/130/front.lz (renamed from gfx/frontpics/lz/130.lz)bin974 -> 974 bytes
-rw-r--r--gfx/pics/130/tiles.2bpp (renamed from gfx/anim/130.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/131/anim0.asm7
-rw-r--r--gfx/pics/131/anim1.asm6
-rw-r--r--gfx/pics/131/back.2bpp (renamed from gfx/backpics/131.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/131/back.lz (renamed from gfx/backpics/lz/131.lz)bin308 -> 308 bytes
-rw-r--r--gfx/pics/131/bitmask.asm17
-rw-r--r--gfx/pics/131/frames.asm24
-rw-r--r--gfx/pics/131/front.2bpp (renamed from gfx/frontpics/131.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/131/front.lz (renamed from gfx/frontpics/lz/131.lz)bin736 -> 736 bytes
-rw-r--r--gfx/pics/131/tiles.2bpp (renamed from gfx/anim/131.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/132/anim0.asm11
-rw-r--r--gfx/pics/132/anim1.asm6
-rw-r--r--gfx/pics/132/back.2bpp (renamed from gfx/backpics/132.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/132/back.lz (renamed from gfx/backpics/lz/132.lz)bin256 -> 256 bytes
-rw-r--r--gfx/pics/132/bitmask.asm41
-rw-r--r--gfx/pics/132/frames.asm35
-rw-r--r--gfx/pics/132/front.2bpp (renamed from gfx/frontpics/132.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/132/front.lz (renamed from gfx/frontpics/lz/132.lz)bin352 -> 352 bytes
-rw-r--r--gfx/pics/132/tiles.2bpp (renamed from gfx/anim/132.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/133/anim0.asm9
-rw-r--r--gfx/pics/133/anim1.asm8
-rw-r--r--gfx/pics/133/back.2bpp (renamed from gfx/backpics/133.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/133/back.lz (renamed from gfx/backpics/lz/133.lz)bin380 -> 380 bytes
-rw-r--r--gfx/pics/133/bitmask.asm21
-rw-r--r--gfx/pics/133/frames.asm21
-rw-r--r--gfx/pics/133/front.2bpp (renamed from gfx/frontpics/133.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/133/front.lz (renamed from gfx/frontpics/lz/133.lz)bin465 -> 465 bytes
-rw-r--r--gfx/pics/133/tiles.2bpp (renamed from gfx/anim/133.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/134/anim0.asm7
-rw-r--r--gfx/pics/134/anim1.asm6
-rw-r--r--gfx/pics/134/back.2bpp (renamed from gfx/backpics/134.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/134/back.lz (renamed from gfx/backpics/lz/134.lz)bin296 -> 296 bytes
-rw-r--r--gfx/pics/134/bitmask.asm13
-rw-r--r--gfx/pics/134/frames.asm13
-rw-r--r--gfx/pics/134/front.2bpp (renamed from gfx/frontpics/134.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/134/front.lz (renamed from gfx/frontpics/lz/134.lz)bin691 -> 691 bytes
-rw-r--r--gfx/pics/134/tiles.2bpp (renamed from gfx/anim/134.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/135/anim0.asm10
-rw-r--r--gfx/pics/135/anim1.asm6
-rw-r--r--gfx/pics/135/back.2bpp (renamed from gfx/backpics/135.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/135/back.lz (renamed from gfx/backpics/lz/135.lz)bin315 -> 315 bytes
-rw-r--r--gfx/pics/135/bitmask.asm25
-rw-r--r--gfx/pics/135/frames.asm20
-rw-r--r--gfx/pics/135/front.2bpp (renamed from gfx/frontpics/135.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/135/front.lz (renamed from gfx/frontpics/lz/135.lz)bin823 -> 823 bytes
-rw-r--r--gfx/pics/135/tiles.2bpp (renamed from gfx/anim/135.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/136/anim0.asm7
-rw-r--r--gfx/pics/136/anim1.asm6
-rw-r--r--gfx/pics/136/back.2bpp (renamed from gfx/backpics/136.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/136/back.lz (renamed from gfx/backpics/lz/136.lz)bin393 -> 393 bytes
-rw-r--r--gfx/pics/136/bitmask.asm25
-rw-r--r--gfx/pics/136/frames.asm18
-rw-r--r--gfx/pics/136/front.2bpp (renamed from gfx/frontpics/136.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/136/front.lz (renamed from gfx/frontpics/lz/136.lz)bin714 -> 714 bytes
-rw-r--r--gfx/pics/136/tiles.2bpp (renamed from gfx/anim/136.2bpp)bin368 -> 368 bytes
-rw-r--r--gfx/pics/137/anim0.asm9
-rw-r--r--gfx/pics/137/anim1.asm6
-rw-r--r--gfx/pics/137/back.2bpp (renamed from gfx/backpics/137.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/137/back.lz (renamed from gfx/backpics/lz/137.lz)bin297 -> 297 bytes
-rw-r--r--gfx/pics/137/bitmask.asm19
-rw-r--r--gfx/pics/137/frames.asm15
-rw-r--r--gfx/pics/137/front.2bpp (renamed from gfx/frontpics/137.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/137/front.lz (renamed from gfx/frontpics/lz/137.lz)bin522 -> 522 bytes
-rw-r--r--gfx/pics/137/tiles.2bpp (renamed from gfx/anim/137.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/138/anim0.asm5
-rw-r--r--gfx/pics/138/anim1.asm6
-rw-r--r--gfx/pics/138/back.2bpp (renamed from gfx/backpics/138.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/138/back.lz (renamed from gfx/backpics/lz/138.lz)bin392 -> 392 bytes
-rw-r--r--gfx/pics/138/bitmask.asm16
-rw-r--r--gfx/pics/138/frames.asm13
-rw-r--r--gfx/pics/138/front.2bpp (renamed from gfx/frontpics/138.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/138/front.lz (renamed from gfx/frontpics/lz/138.lz)bin446 -> 446 bytes
-rw-r--r--gfx/pics/138/tiles.2bpp (renamed from gfx/anim/138.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/139/anim0.asm5
-rw-r--r--gfx/pics/139/anim1.asm6
-rw-r--r--gfx/pics/139/back.2bpp (renamed from gfx/backpics/139.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/139/back.lz (renamed from gfx/backpics/lz/139.lz)bin429 -> 429 bytes
-rw-r--r--gfx/pics/139/bitmask.asm19
-rw-r--r--gfx/pics/139/frames.asm14
-rw-r--r--gfx/pics/139/front.2bpp (renamed from gfx/frontpics/139.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/139/front.lz (renamed from gfx/frontpics/lz/139.lz)bin656 -> 656 bytes
-rw-r--r--gfx/pics/139/tiles.2bpp (renamed from gfx/anim/139.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/140/anim0.asm6
-rw-r--r--gfx/pics/140/anim1.asm8
-rw-r--r--gfx/pics/140/back.2bpp (renamed from gfx/backpics/140.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/140/back.lz (renamed from gfx/backpics/lz/140.lz)bin323 -> 323 bytes
-rw-r--r--gfx/pics/140/bitmask.asm16
-rw-r--r--gfx/pics/140/frames.asm13
-rw-r--r--gfx/pics/140/front.2bpp (renamed from gfx/frontpics/140.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/140/front.lz (renamed from gfx/frontpics/lz/140.lz)bin353 -> 353 bytes
-rw-r--r--gfx/pics/140/tiles.2bpp (renamed from gfx/anim/140.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/141/anim0.asm8
-rw-r--r--gfx/pics/141/anim1.asm6
-rw-r--r--gfx/pics/141/back.2bpp (renamed from gfx/backpics/141.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/141/back.lz (renamed from gfx/backpics/lz/141.lz)bin394 -> 394 bytes
-rw-r--r--gfx/pics/141/bitmask.asm13
-rw-r--r--gfx/pics/141/frames.asm17
-rw-r--r--gfx/pics/141/front.2bpp (renamed from gfx/frontpics/141.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/141/front.lz (renamed from gfx/frontpics/lz/141.lz)bin725 -> 725 bytes
-rw-r--r--gfx/pics/141/tiles.2bpp (renamed from gfx/anim/141.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/142/anim0.asm9
-rw-r--r--gfx/pics/142/anim1.asm6
-rw-r--r--gfx/pics/142/back.2bpp (renamed from gfx/backpics/142.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/142/back.lz (renamed from gfx/backpics/lz/142.lz)bin334 -> 334 bytes
-rw-r--r--gfx/pics/142/bitmask.asm25
-rw-r--r--gfx/pics/142/frames.asm15
-rw-r--r--gfx/pics/142/front.2bpp (renamed from gfx/frontpics/142.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/142/front.lz (renamed from gfx/frontpics/lz/142.lz)bin849 -> 849 bytes
-rw-r--r--gfx/pics/142/tiles.2bpp (renamed from gfx/anim/142.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/143/anim0.asm10
-rw-r--r--gfx/pics/143/anim1.asm6
-rw-r--r--gfx/pics/143/back.2bpp (renamed from gfx/backpics/143.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/143/back.lz (renamed from gfx/backpics/lz/143.lz)bin166 -> 166 bytes
-rw-r--r--gfx/pics/143/bitmask.asm25
-rw-r--r--gfx/pics/143/frames.asm16
-rw-r--r--gfx/pics/143/front.2bpp (renamed from gfx/frontpics/143.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/143/front.lz (renamed from gfx/frontpics/lz/143.lz)bin677 -> 677 bytes
-rw-r--r--gfx/pics/143/tiles.2bpp (renamed from gfx/anim/143.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/144/anim0.asm9
-rw-r--r--gfx/pics/144/anim1.asm8
-rw-r--r--gfx/pics/144/back.2bpp (renamed from gfx/backpics/144.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/144/back.lz (renamed from gfx/backpics/lz/144.lz)bin256 -> 256 bytes
-rw-r--r--gfx/pics/144/bitmask.asm41
-rw-r--r--gfx/pics/144/frames.asm27
-rw-r--r--gfx/pics/144/front.2bpp (renamed from gfx/frontpics/144.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/144/front.lz (renamed from gfx/frontpics/lz/144.lz)bin1111 -> 1111 bytes
-rw-r--r--gfx/pics/144/tiles.2bpp (renamed from gfx/anim/144.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/145/anim0.asm7
-rw-r--r--gfx/pics/145/anim1.asm5
-rw-r--r--gfx/pics/145/back.2bpp (renamed from gfx/backpics/145.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/145/back.lz (renamed from gfx/backpics/lz/145.lz)bin307 -> 307 bytes
-rw-r--r--gfx/pics/145/bitmask.asm17
-rw-r--r--gfx/pics/145/frames.asm17
-rw-r--r--gfx/pics/145/front.2bpp (renamed from gfx/frontpics/145.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/145/front.lz (renamed from gfx/frontpics/lz/145.lz)bin1012 -> 1012 bytes
-rw-r--r--gfx/pics/145/tiles.2bpp (renamed from gfx/anim/145.2bpp)bin656 -> 656 bytes
-rw-r--r--gfx/pics/146/anim0.asm13
-rw-r--r--gfx/pics/146/anim1.asm9
-rw-r--r--gfx/pics/146/back.2bpp (renamed from gfx/backpics/146.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/146/back.lz (renamed from gfx/backpics/lz/146.lz)bin416 -> 416 bytes
-rw-r--r--gfx/pics/146/bitmask.asm57
-rw-r--r--gfx/pics/146/frames.asm33
-rw-r--r--gfx/pics/146/front.2bpp (renamed from gfx/frontpics/146.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/146/front.lz (renamed from gfx/frontpics/lz/146.lz)bin1020 -> 1020 bytes
-rw-r--r--gfx/pics/146/tiles.2bpp (renamed from gfx/anim/146.2bpp)bin528 -> 528 bytes
-rw-r--r--gfx/pics/147/anim0.asm8
-rw-r--r--gfx/pics/147/anim1.asm6
-rw-r--r--gfx/pics/147/back.2bpp (renamed from gfx/backpics/147.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/147/back.lz (renamed from gfx/backpics/lz/147.lz)bin249 -> 249 bytes
-rw-r--r--gfx/pics/147/bitmask.asm21
-rw-r--r--gfx/pics/147/frames.asm17
-rw-r--r--gfx/pics/147/front.2bpp (renamed from gfx/frontpics/147.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/147/front.lz (renamed from gfx/frontpics/lz/147.lz)bin427 -> 427 bytes
-rw-r--r--gfx/pics/147/tiles.2bpp (renamed from gfx/anim/147.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/148/anim0.asm8
-rw-r--r--gfx/pics/148/anim1.asm10
-rw-r--r--gfx/pics/148/back.2bpp (renamed from gfx/backpics/148.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/148/back.lz (renamed from gfx/backpics/lz/148.lz)bin307 -> 307 bytes
-rw-r--r--gfx/pics/148/bitmask.asm37
-rw-r--r--gfx/pics/148/frames.asm25
-rw-r--r--gfx/pics/148/front.2bpp (renamed from gfx/frontpics/148.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/148/front.lz (renamed from gfx/frontpics/lz/148.lz)bin646 -> 646 bytes
-rw-r--r--gfx/pics/148/tiles.2bpp (renamed from gfx/anim/148.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/149/anim0.asm13
-rw-r--r--gfx/pics/149/anim1.asm8
-rw-r--r--gfx/pics/149/back.2bpp (renamed from gfx/backpics/149.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/149/back.lz (renamed from gfx/backpics/lz/149.lz)bin279 -> 279 bytes
-rw-r--r--gfx/pics/149/bitmask.asm41
-rw-r--r--gfx/pics/149/frames.asm23
-rw-r--r--gfx/pics/149/front.2bpp (renamed from gfx/frontpics/149.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/149/front.lz (renamed from gfx/frontpics/lz/149.lz)bin860 -> 860 bytes
-rw-r--r--gfx/pics/149/tiles.2bpp (renamed from gfx/anim/149.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/150/anim0.asm17
-rw-r--r--gfx/pics/150/anim1.asm6
-rw-r--r--gfx/pics/150/back.2bpp (renamed from gfx/backpics/150.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/150/back.lz (renamed from gfx/backpics/lz/150.lz)bin350 -> 350 bytes
-rw-r--r--gfx/pics/150/bitmask.asm41
-rw-r--r--gfx/pics/150/frames.asm26
-rw-r--r--gfx/pics/150/front.2bpp (renamed from gfx/frontpics/150.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/150/front.lz (renamed from gfx/frontpics/lz/150.lz)bin1008 -> 1008 bytes
-rw-r--r--gfx/pics/150/tiles.2bpp (renamed from gfx/anim/150.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/151/anim0.asm18
-rw-r--r--gfx/pics/151/anim1.asm9
-rw-r--r--gfx/pics/151/back.2bpp (renamed from gfx/backpics/151.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/151/back.lz (renamed from gfx/backpics/lz/151.lz)bin335 -> 335 bytes
-rw-r--r--gfx/pics/151/bitmask.asm26
-rw-r--r--gfx/pics/151/frames.asm21
-rw-r--r--gfx/pics/151/front.2bpp (renamed from gfx/frontpics/151.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/151/front.lz (renamed from gfx/frontpics/lz/151.lz)bin599 -> 599 bytes
-rw-r--r--gfx/pics/151/tiles.2bpp (renamed from gfx/anim/151.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/152/anim0.asm10
-rw-r--r--gfx/pics/152/anim1.asm6
-rw-r--r--gfx/pics/152/back.2bpp (renamed from gfx/backpics/152.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/152/back.lz (renamed from gfx/backpics/lz/152.lz)bin307 -> 307 bytes
-rw-r--r--gfx/pics/152/bitmask.asm26
-rw-r--r--gfx/pics/152/frames.asm23
-rw-r--r--gfx/pics/152/front.2bpp (renamed from gfx/frontpics/152.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/152/front.lz (renamed from gfx/frontpics/lz/152.lz)bin612 -> 612 bytes
-rw-r--r--gfx/pics/152/tiles.2bpp (renamed from gfx/anim/152.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/153/anim0.asm5
-rw-r--r--gfx/pics/153/anim1.asm6
-rw-r--r--gfx/pics/153/back.2bpp (renamed from gfx/backpics/153.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/153/back.lz (renamed from gfx/backpics/lz/153.lz)bin407 -> 407 bytes
-rw-r--r--gfx/pics/153/bitmask.asm25
-rw-r--r--gfx/pics/153/frames.asm18
-rw-r--r--gfx/pics/153/front.2bpp (renamed from gfx/frontpics/153.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/153/front.lz (renamed from gfx/frontpics/lz/153.lz)bin703 -> 703 bytes
-rw-r--r--gfx/pics/153/tiles.2bpp (renamed from gfx/anim/153.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/154/anim0.asm11
-rw-r--r--gfx/pics/154/anim1.asm6
-rw-r--r--gfx/pics/154/back.2bpp (renamed from gfx/backpics/154.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/154/back.lz (renamed from gfx/backpics/lz/154.lz)bin322 -> 322 bytes
-rw-r--r--gfx/pics/154/bitmask.asm33
-rw-r--r--gfx/pics/154/frames.asm20
-rw-r--r--gfx/pics/154/front.2bpp (renamed from gfx/frontpics/154.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/154/front.lz (renamed from gfx/frontpics/lz/154.lz)bin1056 -> 1056 bytes
-rw-r--r--gfx/pics/154/tiles.2bpp (renamed from gfx/anim/154.2bpp)bin544 -> 544 bytes
-rw-r--r--gfx/pics/155/anim0.asm12
-rw-r--r--gfx/pics/155/anim1.asm6
-rw-r--r--gfx/pics/155/back.2bpp (renamed from gfx/backpics/155.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/155/back.lz (renamed from gfx/backpics/lz/155.lz)bin410 -> 410 bytes
-rw-r--r--gfx/pics/155/bitmask.asm11
-rw-r--r--gfx/pics/155/frames.asm20
-rw-r--r--gfx/pics/155/front.2bpp (renamed from gfx/frontpics/155.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/155/front.lz (renamed from gfx/frontpics/lz/155.lz)bin579 -> 579 bytes
-rw-r--r--gfx/pics/155/tiles.2bpp (renamed from gfx/anim/155.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/156/anim0.asm9
-rw-r--r--gfx/pics/156/anim1.asm6
-rw-r--r--gfx/pics/156/back.2bpp (renamed from gfx/backpics/156.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/156/back.lz (renamed from gfx/backpics/lz/156.lz)bin400 -> 400 bytes
-rw-r--r--gfx/pics/156/bitmask.asm19
-rw-r--r--gfx/pics/156/frames.asm19
-rw-r--r--gfx/pics/156/front.2bpp (renamed from gfx/frontpics/156.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/156/front.lz (renamed from gfx/frontpics/lz/156.lz)bin738 -> 738 bytes
-rw-r--r--gfx/pics/156/tiles.2bpp (renamed from gfx/anim/156.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/157/anim0.asm11
-rw-r--r--gfx/pics/157/anim1.asm6
-rw-r--r--gfx/pics/157/back.2bpp (renamed from gfx/backpics/157.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/157/back.lz (renamed from gfx/backpics/lz/157.lz)bin388 -> 388 bytes
-rw-r--r--gfx/pics/157/bitmask.asm25
-rw-r--r--gfx/pics/157/frames.asm27
-rw-r--r--gfx/pics/157/front.2bpp (renamed from gfx/frontpics/157.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/157/front.lz (renamed from gfx/frontpics/lz/157.lz)bin941 -> 941 bytes
-rw-r--r--gfx/pics/157/tiles.2bpp (renamed from gfx/anim/157.2bpp)bin560 -> 560 bytes
-rw-r--r--gfx/pics/158/anim0.asm10
-rw-r--r--gfx/pics/158/anim1.asm7
-rw-r--r--gfx/pics/158/back.2bpp (renamed from gfx/backpics/158.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/158/back.lz (renamed from gfx/backpics/lz/158.lz)bin332 -> 332 bytes
-rw-r--r--gfx/pics/158/bitmask.asm16
-rw-r--r--gfx/pics/158/frames.asm13
-rw-r--r--gfx/pics/158/front.2bpp (renamed from gfx/frontpics/158.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/158/front.lz (renamed from gfx/frontpics/lz/158.lz)bin561 -> 561 bytes
-rw-r--r--gfx/pics/158/tiles.2bpp (renamed from gfx/anim/158.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/159/anim0.asm7
-rw-r--r--gfx/pics/159/anim1.asm6
-rw-r--r--gfx/pics/159/back.2bpp (renamed from gfx/backpics/159.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/159/back.lz (renamed from gfx/backpics/lz/159.lz)bin399 -> 399 bytes
-rw-r--r--gfx/pics/159/bitmask.asm25
-rw-r--r--gfx/pics/159/frames.asm21
-rw-r--r--gfx/pics/159/front.2bpp (renamed from gfx/frontpics/159.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/159/front.lz (renamed from gfx/frontpics/lz/159.lz)bin844 -> 844 bytes
-rw-r--r--gfx/pics/159/tiles.2bpp (renamed from gfx/anim/159.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/160/anim0.asm7
-rw-r--r--gfx/pics/160/anim1.asm6
-rw-r--r--gfx/pics/160/back.2bpp (renamed from gfx/backpics/160.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/160/back.lz (renamed from gfx/backpics/lz/160.lz)bin427 -> 427 bytes
-rw-r--r--gfx/pics/160/bitmask.asm33
-rw-r--r--gfx/pics/160/frames.asm20
-rw-r--r--gfx/pics/160/front.2bpp (renamed from gfx/frontpics/160.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/160/front.lz (renamed from gfx/frontpics/lz/160.lz)bin1177 -> 1177 bytes
-rw-r--r--gfx/pics/160/tiles.2bpp (renamed from gfx/anim/160.2bpp)bin640 -> 640 bytes
-rw-r--r--gfx/pics/161/anim0.asm6
-rw-r--r--gfx/pics/161/anim1.asm6
-rw-r--r--gfx/pics/161/back.2bpp (renamed from gfx/backpics/161.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/161/back.lz (renamed from gfx/backpics/lz/161.lz)bin261 -> 261 bytes
-rw-r--r--gfx/pics/161/bitmask.asm13
-rw-r--r--gfx/pics/161/frames.asm10
-rw-r--r--gfx/pics/161/front.2bpp (renamed from gfx/frontpics/161.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/161/front.lz (renamed from gfx/frontpics/lz/161.lz)bin369 -> 369 bytes
-rw-r--r--gfx/pics/161/tiles.2bpp (renamed from gfx/anim/161.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/162/anim0.asm8
-rw-r--r--gfx/pics/162/anim1.asm6
-rw-r--r--gfx/pics/162/back.2bpp (renamed from gfx/backpics/162.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/162/back.lz (renamed from gfx/backpics/lz/162.lz)bin358 -> 358 bytes
-rw-r--r--gfx/pics/162/bitmask.asm25
-rw-r--r--gfx/pics/162/frames.asm17
-rw-r--r--gfx/pics/162/front.2bpp (renamed from gfx/frontpics/162.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/162/front.lz (renamed from gfx/frontpics/lz/162.lz)bin581 -> 581 bytes
-rw-r--r--gfx/pics/162/tiles.2bpp (renamed from gfx/anim/162.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/163/anim0.asm12
-rw-r--r--gfx/pics/163/anim1.asm8
-rw-r--r--gfx/pics/163/back.2bpp (renamed from gfx/backpics/163.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/163/back.lz (renamed from gfx/backpics/lz/163.lz)bin324 -> 324 bytes
-rw-r--r--gfx/pics/163/bitmask.asm26
-rw-r--r--gfx/pics/163/frames.asm21
-rw-r--r--gfx/pics/163/front.2bpp (renamed from gfx/frontpics/163.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/163/front.lz (renamed from gfx/frontpics/lz/163.lz)bin457 -> 457 bytes
-rw-r--r--gfx/pics/163/tiles.2bpp (renamed from gfx/anim/163.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/164/anim0.asm10
-rw-r--r--gfx/pics/164/anim1.asm6
-rw-r--r--gfx/pics/164/back.2bpp (renamed from gfx/backpics/164.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/164/back.lz (renamed from gfx/backpics/lz/164.lz)bin323 -> 323 bytes
-rw-r--r--gfx/pics/164/bitmask.asm25
-rw-r--r--gfx/pics/164/frames.asm24
-rw-r--r--gfx/pics/164/front.2bpp (renamed from gfx/frontpics/164.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/164/front.lz (renamed from gfx/frontpics/lz/164.lz)bin743 -> 743 bytes
-rw-r--r--gfx/pics/164/tiles.2bpp (renamed from gfx/anim/164.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/165/anim0.asm7
-rw-r--r--gfx/pics/165/anim1.asm7
-rw-r--r--gfx/pics/165/back.2bpp (renamed from gfx/backpics/165.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/165/back.lz (renamed from gfx/backpics/lz/165.lz)bin411 -> 411 bytes
-rw-r--r--gfx/pics/165/bitmask.asm25
-rw-r--r--gfx/pics/165/frames.asm18
-rw-r--r--gfx/pics/165/front.2bpp (renamed from gfx/frontpics/165.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/165/front.lz (renamed from gfx/frontpics/lz/165.lz)bin658 -> 658 bytes
-rw-r--r--gfx/pics/165/tiles.2bpp (renamed from gfx/anim/165.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/166/anim0.asm9
-rw-r--r--gfx/pics/166/anim1.asm6
-rw-r--r--gfx/pics/166/back.2bpp (renamed from gfx/backpics/166.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/166/back.lz (renamed from gfx/backpics/lz/166.lz)bin385 -> 385 bytes
-rw-r--r--gfx/pics/166/bitmask.asm19
-rw-r--r--gfx/pics/166/frames.asm18
-rw-r--r--gfx/pics/166/front.2bpp (renamed from gfx/frontpics/166.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/166/front.lz (renamed from gfx/frontpics/lz/166.lz)bin593 -> 593 bytes
-rw-r--r--gfx/pics/166/tiles.2bpp (renamed from gfx/anim/166.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/167/anim0.asm8
-rw-r--r--gfx/pics/167/anim1.asm6
-rw-r--r--gfx/pics/167/back.2bpp (renamed from gfx/backpics/167.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/167/back.lz (renamed from gfx/backpics/lz/167.lz)bin243 -> 243 bytes
-rw-r--r--gfx/pics/167/bitmask.asm21
-rw-r--r--gfx/pics/167/frames.asm17
-rw-r--r--gfx/pics/167/front.2bpp (renamed from gfx/frontpics/167.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/167/front.lz (renamed from gfx/frontpics/lz/167.lz)bin302 -> 302 bytes
-rw-r--r--gfx/pics/167/tiles.2bpp (renamed from gfx/anim/167.2bpp)bin160 -> 160 bytes
-rw-r--r--gfx/pics/168/anim0.asm8
-rw-r--r--gfx/pics/168/anim1.asm8
-rw-r--r--gfx/pics/168/back.2bpp (renamed from gfx/backpics/168.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/168/back.lz (renamed from gfx/backpics/lz/168.lz)bin345 -> 345 bytes
-rw-r--r--gfx/pics/168/bitmask.asm9
-rw-r--r--gfx/pics/168/frames.asm21
-rw-r--r--gfx/pics/168/front.2bpp (renamed from gfx/frontpics/168.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/168/front.lz (renamed from gfx/frontpics/lz/168.lz)bin747 -> 747 bytes
-rw-r--r--gfx/pics/168/tiles.2bpp (renamed from gfx/anim/168.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/169/anim0.asm10
-rw-r--r--gfx/pics/169/anim1.asm6
-rw-r--r--gfx/pics/169/back.2bpp (renamed from gfx/backpics/169.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/169/back.lz (renamed from gfx/backpics/lz/169.lz)bin269 -> 269 bytes
-rw-r--r--gfx/pics/169/bitmask.asm41
-rw-r--r--gfx/pics/169/frames.asm26
-rw-r--r--gfx/pics/169/front.2bpp (renamed from gfx/frontpics/169.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/169/front.lz (renamed from gfx/frontpics/lz/169.lz)bin638 -> 638 bytes
-rw-r--r--gfx/pics/169/tiles.2bpp (renamed from gfx/anim/169.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/170/anim0.asm11
-rw-r--r--gfx/pics/170/anim1.asm6
-rw-r--r--gfx/pics/170/back.2bpp (renamed from gfx/backpics/170.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/170/back.lz (renamed from gfx/backpics/lz/170.lz)bin306 -> 306 bytes
-rw-r--r--gfx/pics/170/bitmask.asm25
-rw-r--r--gfx/pics/170/frames.asm17
-rw-r--r--gfx/pics/170/front.2bpp (renamed from gfx/frontpics/170.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/170/front.lz (renamed from gfx/frontpics/lz/170.lz)bin535 -> 535 bytes
-rw-r--r--gfx/pics/170/tiles.2bpp (renamed from gfx/anim/170.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/171/anim0.asm9
-rw-r--r--gfx/pics/171/anim1.asm6
-rw-r--r--gfx/pics/171/back.2bpp (renamed from gfx/backpics/171.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/171/back.lz (renamed from gfx/backpics/lz/171.lz)bin286 -> 286 bytes
-rw-r--r--gfx/pics/171/bitmask.asm25
-rw-r--r--gfx/pics/171/frames.asm17
-rw-r--r--gfx/pics/171/front.2bpp (renamed from gfx/frontpics/171.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/171/front.lz (renamed from gfx/frontpics/lz/171.lz)bin472 -> 472 bytes
-rw-r--r--gfx/pics/171/tiles.2bpp (renamed from gfx/anim/171.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/172/anim0.asm6
-rw-r--r--gfx/pics/172/anim1.asm6
-rw-r--r--gfx/pics/172/back.2bpp (renamed from gfx/backpics/172.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/172/back.lz (renamed from gfx/backpics/lz/172.lz)bin289 -> 289 bytes
-rw-r--r--gfx/pics/172/bitmask.asm16
-rw-r--r--gfx/pics/172/frames.asm19
-rw-r--r--gfx/pics/172/front.2bpp (renamed from gfx/frontpics/172.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/172/front.lz (renamed from gfx/frontpics/lz/172.lz)bin386 -> 386 bytes
-rw-r--r--gfx/pics/172/tiles.2bpp (renamed from gfx/anim/172.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/173/anim0.asm5
-rw-r--r--gfx/pics/173/anim1.asm6
-rw-r--r--gfx/pics/173/back.2bpp (renamed from gfx/backpics/173.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/173/back.lz (renamed from gfx/backpics/lz/173.lz)bin252 -> 252 bytes
-rw-r--r--gfx/pics/173/bitmask.asm16
-rw-r--r--gfx/pics/173/frames.asm13
-rw-r--r--gfx/pics/173/front.2bpp (renamed from gfx/frontpics/173.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/173/front.lz (renamed from gfx/frontpics/lz/173.lz)bin435 -> 435 bytes
-rw-r--r--gfx/pics/173/tiles.2bpp (renamed from gfx/anim/173.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/174/anim0.asm6
-rw-r--r--gfx/pics/174/anim1.asm6
-rw-r--r--gfx/pics/174/back.2bpp (renamed from gfx/backpics/174.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/174/back.lz (renamed from gfx/backpics/lz/174.lz)bin265 -> 265 bytes
-rw-r--r--gfx/pics/174/bitmask.asm16
-rw-r--r--gfx/pics/174/frames.asm13
-rw-r--r--gfx/pics/174/front.2bpp (renamed from gfx/frontpics/174.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/174/front.lz (renamed from gfx/frontpics/lz/174.lz)bin357 -> 357 bytes
-rw-r--r--gfx/pics/174/tiles.2bpp (renamed from gfx/anim/174.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/175/anim0.asm8
-rw-r--r--gfx/pics/175/anim1.asm6
-rw-r--r--gfx/pics/175/back.2bpp (renamed from gfx/backpics/175.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/175/back.lz (renamed from gfx/backpics/lz/175.lz)bin270 -> 270 bytes
-rw-r--r--gfx/pics/175/bitmask.asm11
-rw-r--r--gfx/pics/175/frames.asm10
-rw-r--r--gfx/pics/175/front.2bpp (renamed from gfx/frontpics/175.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/175/front.lz (renamed from gfx/frontpics/lz/175.lz)bin321 -> 321 bytes
-rw-r--r--gfx/pics/175/tiles.2bpp (renamed from gfx/anim/175.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/176/anim0.asm8
-rw-r--r--gfx/pics/176/anim1.asm6
-rw-r--r--gfx/pics/176/back.2bpp (renamed from gfx/backpics/176.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/176/back.lz (renamed from gfx/backpics/lz/176.lz)bin368 -> 368 bytes
-rw-r--r--gfx/pics/176/bitmask.asm33
-rw-r--r--gfx/pics/176/frames.asm25
-rw-r--r--gfx/pics/176/front.2bpp (renamed from gfx/frontpics/176.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/176/front.lz (renamed from gfx/frontpics/lz/176.lz)bin644 -> 644 bytes
-rw-r--r--gfx/pics/176/tiles.2bpp (renamed from gfx/anim/176.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/177/anim0.asm6
-rw-r--r--gfx/pics/177/anim1.asm3
-rw-r--r--gfx/pics/177/back.2bpp (renamed from gfx/backpics/177.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/177/back.lz (renamed from gfx/backpics/lz/177.lz)bin203 -> 203 bytes
-rw-r--r--gfx/pics/177/bitmask.asm11
-rw-r--r--gfx/pics/177/frames.asm17
-rw-r--r--gfx/pics/177/front.2bpp (renamed from gfx/frontpics/177.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/177/front.lz (renamed from gfx/frontpics/lz/177.lz)bin277 -> 277 bytes
-rw-r--r--gfx/pics/177/tiles.2bpp (renamed from gfx/anim/177.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/178/anim0.asm10
-rw-r--r--gfx/pics/178/anim1.asm11
-rw-r--r--gfx/pics/178/back.2bpp (renamed from gfx/backpics/178.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/178/back.lz (renamed from gfx/backpics/lz/178.lz)bin320 -> 320 bytes
-rw-r--r--gfx/pics/178/bitmask.asm19
-rw-r--r--gfx/pics/178/frames.asm17
-rw-r--r--gfx/pics/178/front.2bpp (renamed from gfx/frontpics/178.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/178/front.lz (renamed from gfx/frontpics/lz/178.lz)bin599 -> 599 bytes
-rw-r--r--gfx/pics/178/tiles.2bpp (renamed from gfx/anim/178.2bpp)bin368 -> 368 bytes
-rw-r--r--gfx/pics/179/anim0.asm9
-rw-r--r--gfx/pics/179/anim1.asm6
-rw-r--r--gfx/pics/179/back.2bpp (renamed from gfx/backpics/179.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/179/back.lz (renamed from gfx/backpics/lz/179.lz)bin353 -> 353 bytes
-rw-r--r--gfx/pics/179/bitmask.asm11
-rw-r--r--gfx/pics/179/frames.asm9
-rw-r--r--gfx/pics/179/front.2bpp (renamed from gfx/frontpics/179.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/179/front.lz (renamed from gfx/frontpics/lz/179.lz)bin467 -> 467 bytes
-rw-r--r--gfx/pics/179/tiles.2bpp (renamed from gfx/anim/179.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/180/anim0.asm8
-rw-r--r--gfx/pics/180/anim1.asm6
-rw-r--r--gfx/pics/180/back.2bpp (renamed from gfx/backpics/180.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/180/back.lz (renamed from gfx/backpics/lz/180.lz)bin369 -> 369 bytes
-rw-r--r--gfx/pics/180/bitmask.asm19
-rw-r--r--gfx/pics/180/frames.asm19
-rw-r--r--gfx/pics/180/front.2bpp (renamed from gfx/frontpics/180.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/180/front.lz (renamed from gfx/frontpics/lz/180.lz)bin587 -> 587 bytes
-rw-r--r--gfx/pics/180/tiles.2bpp (renamed from gfx/anim/180.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/181/anim0.asm10
-rw-r--r--gfx/pics/181/anim1.asm7
-rw-r--r--gfx/pics/181/back.2bpp (renamed from gfx/backpics/181.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/181/back.lz (renamed from gfx/backpics/lz/181.lz)bin266 -> 266 bytes
-rw-r--r--gfx/pics/181/bitmask.asm49
-rw-r--r--gfx/pics/181/frames.asm30
-rw-r--r--gfx/pics/181/front.2bpp (renamed from gfx/frontpics/181.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/181/front.lz (renamed from gfx/frontpics/lz/181.lz)bin721 -> 721 bytes
-rw-r--r--gfx/pics/181/tiles.2bpp (renamed from gfx/anim/181.2bpp)bin592 -> 592 bytes
-rw-r--r--gfx/pics/182/anim0.asm10
-rw-r--r--gfx/pics/182/anim1.asm6
-rw-r--r--gfx/pics/182/back.2bpp (renamed from gfx/backpics/182.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/182/back.lz (renamed from gfx/backpics/lz/182.lz)bin350 -> 350 bytes
-rw-r--r--gfx/pics/182/bitmask.asm49
-rw-r--r--gfx/pics/182/frames.asm25
-rw-r--r--gfx/pics/182/front.2bpp (renamed from gfx/frontpics/182.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/182/front.lz (renamed from gfx/frontpics/lz/182.lz)bin678 -> 678 bytes
-rw-r--r--gfx/pics/182/tiles.2bpp (renamed from gfx/anim/182.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/183/anim0.asm9
-rw-r--r--gfx/pics/183/anim1.asm7
-rw-r--r--gfx/pics/183/back.2bpp (renamed from gfx/backpics/183.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/183/back.lz (renamed from gfx/backpics/lz/183.lz)bin249 -> 249 bytes
-rw-r--r--gfx/pics/183/bitmask.asm21
-rw-r--r--gfx/pics/183/frames.asm21
-rw-r--r--gfx/pics/183/front.2bpp (renamed from gfx/frontpics/183.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/183/front.lz (renamed from gfx/frontpics/lz/183.lz)bin451 -> 451 bytes
-rw-r--r--gfx/pics/183/tiles.2bpp (renamed from gfx/anim/183.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/184/anim0.asm9
-rw-r--r--gfx/pics/184/anim1.asm6
-rw-r--r--gfx/pics/184/back.2bpp (renamed from gfx/backpics/184.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/184/back.lz (renamed from gfx/backpics/lz/184.lz)bin264 -> 264 bytes
-rw-r--r--gfx/pics/184/bitmask.asm33
-rw-r--r--gfx/pics/184/frames.asm20
-rw-r--r--gfx/pics/184/front.2bpp (renamed from gfx/frontpics/184.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/184/front.lz (renamed from gfx/frontpics/lz/184.lz)bin765 -> 765 bytes
-rw-r--r--gfx/pics/184/tiles.2bpp (renamed from gfx/anim/184.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/185/anim0.asm8
-rw-r--r--gfx/pics/185/anim1.asm6
-rw-r--r--gfx/pics/185/back.2bpp (renamed from gfx/backpics/185.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/185/back.lz (renamed from gfx/backpics/lz/185.lz)bin369 -> 369 bytes
-rw-r--r--gfx/pics/185/bitmask.asm19
-rw-r--r--gfx/pics/185/frames.asm14
-rw-r--r--gfx/pics/185/front.2bpp (renamed from gfx/frontpics/185.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/185/front.lz (renamed from gfx/frontpics/lz/185.lz)bin574 -> 574 bytes
-rw-r--r--gfx/pics/185/tiles.2bpp (renamed from gfx/anim/185.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/186/anim0.asm9
-rw-r--r--gfx/pics/186/anim1.asm6
-rw-r--r--gfx/pics/186/back.2bpp (renamed from gfx/backpics/186.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/186/back.lz (renamed from gfx/backpics/lz/186.lz)bin279 -> 279 bytes
-rw-r--r--gfx/pics/186/bitmask.asm25
-rw-r--r--gfx/pics/186/frames.asm20
-rw-r--r--gfx/pics/186/front.2bpp (renamed from gfx/frontpics/186.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/186/front.lz (renamed from gfx/frontpics/lz/186.lz)bin796 -> 796 bytes
-rw-r--r--gfx/pics/186/tiles.2bpp (renamed from gfx/anim/186.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/187/anim0.asm6
-rw-r--r--gfx/pics/187/anim1.asm7
-rw-r--r--gfx/pics/187/back.2bpp (renamed from gfx/backpics/187.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/187/back.lz (renamed from gfx/backpics/lz/187.lz)bin312 -> 312 bytes
-rw-r--r--gfx/pics/187/bitmask.asm11
-rw-r--r--gfx/pics/187/frames.asm9
-rw-r--r--gfx/pics/187/front.2bpp (renamed from gfx/frontpics/187.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/187/front.lz (renamed from gfx/frontpics/lz/187.lz)bin403 -> 403 bytes
-rw-r--r--gfx/pics/187/tiles.2bpp (renamed from gfx/anim/187.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/188/anim0.asm6
-rw-r--r--gfx/pics/188/anim1.asm6
-rw-r--r--gfx/pics/188/back.2bpp (renamed from gfx/backpics/188.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/188/back.lz (renamed from gfx/backpics/lz/188.lz)bin302 -> 302 bytes
-rw-r--r--gfx/pics/188/bitmask.asm19
-rw-r--r--gfx/pics/188/frames.asm17
-rw-r--r--gfx/pics/188/front.2bpp (renamed from gfx/frontpics/188.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/188/front.lz (renamed from gfx/frontpics/lz/188.lz)bin468 -> 468 bytes
-rw-r--r--gfx/pics/188/tiles.2bpp (renamed from gfx/anim/188.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/189/anim0.asm5
-rw-r--r--gfx/pics/189/anim1.asm6
-rw-r--r--gfx/pics/189/back.2bpp (renamed from gfx/backpics/189.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/189/back.lz (renamed from gfx/backpics/lz/189.lz)bin364 -> 364 bytes
-rw-r--r--gfx/pics/189/bitmask.asm33
-rw-r--r--gfx/pics/189/frames.asm19
-rw-r--r--gfx/pics/189/front.2bpp (renamed from gfx/frontpics/189.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/189/front.lz (renamed from gfx/frontpics/lz/189.lz)bin701 -> 701 bytes
-rw-r--r--gfx/pics/189/tiles.2bpp (renamed from gfx/anim/189.2bpp)bin544 -> 544 bytes
-rw-r--r--gfx/pics/190/anim0.asm7
-rw-r--r--gfx/pics/190/anim1.asm6
-rw-r--r--gfx/pics/190/back.2bpp (renamed from gfx/backpics/190.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/190/back.lz (renamed from gfx/backpics/lz/190.lz)bin333 -> 333 bytes
-rw-r--r--gfx/pics/190/bitmask.asm16
-rw-r--r--gfx/pics/190/frames.asm13
-rw-r--r--gfx/pics/190/front.2bpp (renamed from gfx/frontpics/190.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/190/front.lz (renamed from gfx/frontpics/lz/190.lz)bin461 -> 461 bytes
-rw-r--r--gfx/pics/190/tiles.2bpp (renamed from gfx/anim/190.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/191/anim0.asm7
-rw-r--r--gfx/pics/191/anim1.asm6
-rw-r--r--gfx/pics/191/back.2bpp (renamed from gfx/backpics/191.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/191/back.lz (renamed from gfx/backpics/lz/191.lz)bin309 -> 309 bytes
-rw-r--r--gfx/pics/191/bitmask.asm16
-rw-r--r--gfx/pics/191/frames.asm13
-rw-r--r--gfx/pics/191/front.2bpp (renamed from gfx/frontpics/191.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/191/front.lz (renamed from gfx/frontpics/lz/191.lz)bin371 -> 371 bytes
-rw-r--r--gfx/pics/191/tiles.2bpp (renamed from gfx/anim/191.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/192/anim0.asm5
-rw-r--r--gfx/pics/192/anim1.asm6
-rw-r--r--gfx/pics/192/back.2bpp (renamed from gfx/backpics/192.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/192/back.lz (renamed from gfx/backpics/lz/192.lz)bin415 -> 415 bytes
-rw-r--r--gfx/pics/192/bitmask.asm25
-rw-r--r--gfx/pics/192/frames.asm19
-rw-r--r--gfx/pics/192/front.2bpp (renamed from gfx/frontpics/192.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/192/front.lz (renamed from gfx/frontpics/lz/192.lz)bin619 -> 619 bytes
-rw-r--r--gfx/pics/192/tiles.2bpp (renamed from gfx/anim/192.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/193/anim0.asm9
-rw-r--r--gfx/pics/193/anim1.asm6
-rw-r--r--gfx/pics/193/back.2bpp (renamed from gfx/backpics/193.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/193/back.lz (renamed from gfx/backpics/lz/193.lz)bin433 -> 433 bytes
-rw-r--r--gfx/pics/193/bitmask.asm19
-rw-r--r--gfx/pics/193/frames.asm13
-rw-r--r--gfx/pics/193/front.2bpp (renamed from gfx/frontpics/193.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/193/front.lz (renamed from gfx/frontpics/lz/193.lz)bin668 -> 668 bytes
-rw-r--r--gfx/pics/193/tiles.2bpp (renamed from gfx/anim/193.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/194/anim0.asm8
-rw-r--r--gfx/pics/194/anim1.asm6
-rw-r--r--gfx/pics/194/back.2bpp (renamed from gfx/backpics/194.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/194/back.lz (renamed from gfx/backpics/lz/194.lz)bin233 -> 233 bytes
-rw-r--r--gfx/pics/194/bitmask.asm21
-rw-r--r--gfx/pics/194/frames.asm17
-rw-r--r--gfx/pics/194/front.2bpp (renamed from gfx/frontpics/194.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/194/front.lz (renamed from gfx/frontpics/lz/194.lz)bin352 -> 352 bytes
-rw-r--r--gfx/pics/194/tiles.2bpp (renamed from gfx/anim/194.2bpp)bin144 -> 144 bytes
-rw-r--r--gfx/pics/195/anim0.asm6
-rw-r--r--gfx/pics/195/anim1.asm4
-rw-r--r--gfx/pics/195/back.2bpp (renamed from gfx/backpics/195.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/195/back.lz (renamed from gfx/backpics/lz/195.lz)bin316 -> 316 bytes
-rw-r--r--gfx/pics/195/bitmask.asm25
-rw-r--r--gfx/pics/195/frames.asm17
-rw-r--r--gfx/pics/195/front.2bpp (renamed from gfx/frontpics/195.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/195/front.lz (renamed from gfx/frontpics/lz/195.lz)bin576 -> 576 bytes
-rw-r--r--gfx/pics/195/tiles.2bpp (renamed from gfx/anim/195.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/196/anim0.asm9
-rw-r--r--gfx/pics/196/anim1.asm6
-rw-r--r--gfx/pics/196/back.2bpp (renamed from gfx/backpics/196.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/196/back.lz (renamed from gfx/backpics/lz/196.lz)bin333 -> 333 bytes
-rw-r--r--gfx/pics/196/bitmask.asm25
-rw-r--r--gfx/pics/196/frames.asm17
-rw-r--r--gfx/pics/196/front.2bpp (renamed from gfx/frontpics/196.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/196/front.lz (renamed from gfx/frontpics/lz/196.lz)bin606 -> 606 bytes
-rw-r--r--gfx/pics/196/tiles.2bpp (renamed from gfx/anim/196.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/197/anim0.asm9
-rw-r--r--gfx/pics/197/anim1.asm6
-rw-r--r--gfx/pics/197/back.2bpp (renamed from gfx/backpics/197.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/197/back.lz (renamed from gfx/backpics/lz/197.lz)bin343 -> 343 bytes
-rw-r--r--gfx/pics/197/bitmask.asm25
-rw-r--r--gfx/pics/197/frames.asm20
-rw-r--r--gfx/pics/197/front.2bpp (renamed from gfx/frontpics/197.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/197/front.lz (renamed from gfx/frontpics/lz/197.lz)bin618 -> 618 bytes
-rw-r--r--gfx/pics/197/tiles.2bpp (renamed from gfx/anim/197.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/198/anim0.asm10
-rw-r--r--gfx/pics/198/anim1.asm6
-rw-r--r--gfx/pics/198/back.2bpp (renamed from gfx/backpics/198.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/198/back.lz (renamed from gfx/backpics/lz/198.lz)bin343 -> 343 bytes
-rw-r--r--gfx/pics/198/bitmask.asm19
-rw-r--r--gfx/pics/198/frames.asm14
-rw-r--r--gfx/pics/198/front.2bpp (renamed from gfx/frontpics/198.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/198/front.lz (renamed from gfx/frontpics/lz/198.lz)bin665 -> 665 bytes
-rw-r--r--gfx/pics/198/tiles.2bpp (renamed from gfx/anim/198.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/199/anim0.asm11
-rw-r--r--gfx/pics/199/anim1.asm4
-rw-r--r--gfx/pics/199/back.2bpp (renamed from gfx/backpics/199.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/199/back.lz (renamed from gfx/backpics/lz/199.lz)bin422 -> 422 bytes
-rw-r--r--gfx/pics/199/bitmask.asm25
-rw-r--r--gfx/pics/199/frames.asm15
-rw-r--r--gfx/pics/199/front.2bpp (renamed from gfx/frontpics/199.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/199/front.lz (renamed from gfx/frontpics/lz/199.lz)bin878 -> 878 bytes
-rw-r--r--gfx/pics/199/tiles.2bpp (renamed from gfx/anim/199.2bpp)bin464 -> 464 bytes
-rw-r--r--gfx/pics/200/anim0.asm5
-rw-r--r--gfx/pics/200/anim1.asm6
-rw-r--r--gfx/pics/200/back.2bpp (renamed from gfx/backpics/200.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/200/back.lz (renamed from gfx/backpics/lz/200.lz)bin362 -> 362 bytes
-rw-r--r--gfx/pics/200/bitmask.asm13
-rw-r--r--gfx/pics/200/frames.asm17
-rw-r--r--gfx/pics/200/front.2bpp (renamed from gfx/frontpics/200.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/200/front.lz (renamed from gfx/frontpics/lz/200.lz)bin503 -> 503 bytes
-rw-r--r--gfx/pics/200/tiles.2bpp (renamed from gfx/anim/200.2bpp)bin288 -> 288 bytes
-rw-r--r--gfx/pics/201/anim0.asm12
-rw-r--r--gfx/pics/201/anim1.asm6
-rw-r--r--gfx/pics/201/bitmask.asm31
-rw-r--r--gfx/pics/201/frames.asm45
-rw-r--r--gfx/pics/201a/anim0.asm13
-rw-r--r--gfx/pics/201a/anim1.asm6
-rw-r--r--gfx/pics/201a/back.2bpp (renamed from gfx/backpics/201a.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201a/back.lz (renamed from gfx/backpics/lz/201a.lz)bin123 -> 123 bytes
-rw-r--r--gfx/pics/201a/bitmask.asm16
-rw-r--r--gfx/pics/201a/frames.asm21
-rw-r--r--gfx/pics/201a/front.2bpp (renamed from gfx/frontpics/201a.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201a/front.lz (renamed from gfx/frontpics/lz/201a.lz)bin203 -> 203 bytes
-rw-r--r--gfx/pics/201a/tiles.2bpp (renamed from gfx/anim/201a.2bpp)bin160 -> 160 bytes
-rw-r--r--gfx/pics/201b/anim0.asm9
-rw-r--r--gfx/pics/201b/anim1.asm6
-rw-r--r--gfx/pics/201b/back.2bpp (renamed from gfx/backpics/201b.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201b/back.lz (renamed from gfx/backpics/lz/201b.lz)bin131 -> 131 bytes
-rw-r--r--gfx/pics/201b/bitmask.asm16
-rw-r--r--gfx/pics/201b/frames.asm25
-rw-r--r--gfx/pics/201b/front.2bpp (renamed from gfx/frontpics/201b.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201b/front.lz (renamed from gfx/frontpics/lz/201b.lz)bin235 -> 235 bytes
-rw-r--r--gfx/pics/201b/tiles.2bpp (renamed from gfx/anim/201b.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/201c/anim0.asm9
-rw-r--r--gfx/pics/201c/anim1.asm6
-rw-r--r--gfx/pics/201c/back.2bpp (renamed from gfx/backpics/201c.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201c/back.lz (renamed from gfx/backpics/lz/201c.lz)bin180 -> 180 bytes
-rw-r--r--gfx/pics/201c/bitmask.asm21
-rw-r--r--gfx/pics/201c/frames.asm17
-rw-r--r--gfx/pics/201c/front.2bpp (renamed from gfx/frontpics/201c.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201c/front.lz (renamed from gfx/frontpics/lz/201c.lz)bin300 -> 300 bytes
-rw-r--r--gfx/pics/201c/tiles.2bpp (renamed from gfx/anim/201c.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/201d/anim0.asm8
-rw-r--r--gfx/pics/201d/anim1.asm6
-rw-r--r--gfx/pics/201d/back.2bpp (renamed from gfx/backpics/201d.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201d/back.lz (renamed from gfx/backpics/lz/201d.lz)bin150 -> 150 bytes
-rw-r--r--gfx/pics/201d/bitmask.asm16
-rw-r--r--gfx/pics/201d/frames.asm13
-rw-r--r--gfx/pics/201d/front.2bpp (renamed from gfx/frontpics/201d.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201d/front.lz (renamed from gfx/frontpics/lz/201d.lz)bin385 -> 385 bytes
-rw-r--r--gfx/pics/201d/tiles.2bpp (renamed from gfx/anim/201d.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/201e/anim0.asm9
-rw-r--r--gfx/pics/201e/anim1.asm6
-rw-r--r--gfx/pics/201e/back.2bpp (renamed from gfx/backpics/201e.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201e/back.lz (renamed from gfx/backpics/lz/201e.lz)bin140 -> 140 bytes
-rw-r--r--gfx/pics/201e/bitmask.asm16
-rw-r--r--gfx/pics/201e/frames.asm13
-rw-r--r--gfx/pics/201e/front.2bpp (renamed from gfx/frontpics/201e.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201e/front.lz (renamed from gfx/frontpics/lz/201e.lz)bin242 -> 242 bytes
-rw-r--r--gfx/pics/201e/tiles.2bpp (renamed from gfx/anim/201e.2bpp)bin160 -> 160 bytes
-rw-r--r--gfx/pics/201f/anim0.asm10
-rw-r--r--gfx/pics/201f/anim1.asm6
-rw-r--r--gfx/pics/201f/back.2bpp (renamed from gfx/backpics/201f.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201f/back.lz (renamed from gfx/backpics/lz/201f.lz)bin153 -> 153 bytes
-rw-r--r--gfx/pics/201f/bitmask.asm21
-rw-r--r--gfx/pics/201f/frames.asm17
-rw-r--r--gfx/pics/201f/front.2bpp (renamed from gfx/frontpics/201f.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201f/front.lz (renamed from gfx/frontpics/lz/201f.lz)bin207 -> 207 bytes
-rw-r--r--gfx/pics/201f/tiles.2bpp (renamed from gfx/anim/201f.2bpp)bin112 -> 112 bytes
-rw-r--r--gfx/pics/201g/anim0.asm7
-rw-r--r--gfx/pics/201g/anim1.asm6
-rw-r--r--gfx/pics/201g/back.2bpp (renamed from gfx/backpics/201g.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201g/back.lz (renamed from gfx/backpics/lz/201g.lz)bin164 -> 164 bytes
-rw-r--r--gfx/pics/201g/bitmask.asm16
-rw-r--r--gfx/pics/201g/frames.asm13
-rw-r--r--gfx/pics/201g/front.2bpp (renamed from gfx/frontpics/201g.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201g/front.lz (renamed from gfx/frontpics/lz/201g.lz)bin281 -> 281 bytes
-rw-r--r--gfx/pics/201g/tiles.2bpp (renamed from gfx/anim/201g.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/201h/anim0.asm11
-rw-r--r--gfx/pics/201h/anim1.asm6
-rw-r--r--gfx/pics/201h/back.2bpp (renamed from gfx/backpics/201h.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201h/back.lz (renamed from gfx/backpics/lz/201h.lz)bin176 -> 176 bytes
-rw-r--r--gfx/pics/201h/bitmask.asm11
-rw-r--r--gfx/pics/201h/frames.asm21
-rw-r--r--gfx/pics/201h/front.2bpp (renamed from gfx/frontpics/201h.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201h/front.lz (renamed from gfx/frontpics/lz/201h.lz)bin253 -> 253 bytes
-rw-r--r--gfx/pics/201h/tiles.2bpp (renamed from gfx/anim/201h.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/201i/anim0.asm8
-rw-r--r--gfx/pics/201i/anim1.asm6
-rw-r--r--gfx/pics/201i/back.2bpp (renamed from gfx/backpics/201i.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201i/back.lz (renamed from gfx/backpics/lz/201i.lz)bin94 -> 94 bytes
-rw-r--r--gfx/pics/201i/bitmask.asm16
-rw-r--r--gfx/pics/201i/frames.asm13
-rw-r--r--gfx/pics/201i/front.2bpp (renamed from gfx/frontpics/201i.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201i/front.lz (renamed from gfx/frontpics/lz/201i.lz)bin163 -> 163 bytes
-rw-r--r--gfx/pics/201i/tiles.2bpp (renamed from gfx/anim/201i.2bpp)bin160 -> 160 bytes
-rw-r--r--gfx/pics/201j/anim0.asm8
-rw-r--r--gfx/pics/201j/anim1.asm6
-rw-r--r--gfx/pics/201j/back.2bpp (renamed from gfx/backpics/201j.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201j/back.lz (renamed from gfx/backpics/lz/201j.lz)bin131 -> 131 bytes
-rw-r--r--gfx/pics/201j/bitmask.asm16
-rw-r--r--gfx/pics/201j/frames.asm13
-rw-r--r--gfx/pics/201j/front.2bpp (renamed from gfx/frontpics/201j.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201j/front.lz (renamed from gfx/frontpics/lz/201j.lz)bin229 -> 229 bytes
-rw-r--r--gfx/pics/201j/tiles.2bpp (renamed from gfx/anim/201j.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/201k/anim0.asm8
-rw-r--r--gfx/pics/201k/anim1.asm6
-rw-r--r--gfx/pics/201k/back.2bpp (renamed from gfx/backpics/201k.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201k/back.lz (renamed from gfx/backpics/lz/201k.lz)bin117 -> 117 bytes
-rw-r--r--gfx/pics/201k/bitmask.asm11
-rw-r--r--gfx/pics/201k/frames.asm13
-rw-r--r--gfx/pics/201k/front.2bpp (renamed from gfx/frontpics/201k.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201k/front.lz (renamed from gfx/frontpics/lz/201k.lz)bin241 -> 241 bytes
-rw-r--r--gfx/pics/201k/tiles.2bpp (renamed from gfx/anim/201k.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/201l/anim0.asm12
-rw-r--r--gfx/pics/201l/anim1.asm6
-rw-r--r--gfx/pics/201l/back.2bpp (renamed from gfx/backpics/201l.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201l/back.lz (renamed from gfx/backpics/lz/201l.lz)bin108 -> 108 bytes
-rw-r--r--gfx/pics/201l/bitmask.asm16
-rw-r--r--gfx/pics/201l/frames.asm21
-rw-r--r--gfx/pics/201l/front.2bpp (renamed from gfx/frontpics/201l.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201l/front.lz (renamed from gfx/frontpics/lz/201l.lz)bin211 -> 211 bytes
-rw-r--r--gfx/pics/201l/tiles.2bpp (renamed from gfx/anim/201l.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/201m/anim0.asm12
-rw-r--r--gfx/pics/201m/anim1.asm6
-rw-r--r--gfx/pics/201m/back.2bpp (renamed from gfx/backpics/201m.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201m/back.lz (renamed from gfx/backpics/lz/201m.lz)bin121 -> 121 bytes
-rw-r--r--gfx/pics/201m/bitmask.asm11
-rw-r--r--gfx/pics/201m/frames.asm13
-rw-r--r--gfx/pics/201m/front.2bpp (renamed from gfx/frontpics/201m.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201m/front.lz (renamed from gfx/frontpics/lz/201m.lz)bin208 -> 208 bytes
-rw-r--r--gfx/pics/201m/tiles.2bpp (renamed from gfx/anim/201m.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/201n/anim0.asm10
-rw-r--r--gfx/pics/201n/anim1.asm6
-rw-r--r--gfx/pics/201n/back.2bpp (renamed from gfx/backpics/201n.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201n/back.lz (renamed from gfx/backpics/lz/201n.lz)bin123 -> 123 bytes
-rw-r--r--gfx/pics/201n/bitmask.asm16
-rw-r--r--gfx/pics/201n/frames.asm13
-rw-r--r--gfx/pics/201n/front.2bpp (renamed from gfx/frontpics/201n.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201n/front.lz (renamed from gfx/frontpics/lz/201n.lz)bin230 -> 230 bytes
-rw-r--r--gfx/pics/201n/tiles.2bpp (renamed from gfx/anim/201n.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/201o/anim0.asm8
-rw-r--r--gfx/pics/201o/anim1.asm6
-rw-r--r--gfx/pics/201o/back.2bpp (renamed from gfx/backpics/201o.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201o/back.lz (renamed from gfx/backpics/lz/201o.lz)bin130 -> 130 bytes
-rw-r--r--gfx/pics/201o/bitmask.asm11
-rw-r--r--gfx/pics/201o/frames.asm13
-rw-r--r--gfx/pics/201o/front.2bpp (renamed from gfx/frontpics/201o.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201o/front.lz (renamed from gfx/frontpics/lz/201o.lz)bin260 -> 260 bytes
-rw-r--r--gfx/pics/201o/tiles.2bpp (renamed from gfx/anim/201o.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/201p/anim0.asm5
-rw-r--r--gfx/pics/201p/anim1.asm6
-rw-r--r--gfx/pics/201p/back.2bpp (renamed from gfx/backpics/201p.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201p/back.lz (renamed from gfx/backpics/lz/201p.lz)bin94 -> 94 bytes
-rw-r--r--gfx/pics/201p/bitmask.asm16
-rw-r--r--gfx/pics/201p/frames.asm13
-rw-r--r--gfx/pics/201p/front.2bpp (renamed from gfx/frontpics/201p.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201p/front.lz (renamed from gfx/frontpics/lz/201p.lz)bin185 -> 185 bytes
-rw-r--r--gfx/pics/201p/tiles.2bpp (renamed from gfx/anim/201p.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/201q/anim0.asm8
-rw-r--r--gfx/pics/201q/anim1.asm6
-rw-r--r--gfx/pics/201q/back.2bpp (renamed from gfx/backpics/201q.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201q/back.lz (renamed from gfx/backpics/lz/201q.lz)bin105 -> 105 bytes
-rw-r--r--gfx/pics/201q/bitmask.asm11
-rw-r--r--gfx/pics/201q/frames.asm13
-rw-r--r--gfx/pics/201q/front.2bpp (renamed from gfx/frontpics/201q.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201q/front.lz (renamed from gfx/frontpics/lz/201q.lz)bin189 -> 189 bytes
-rw-r--r--gfx/pics/201q/tiles.2bpp (renamed from gfx/anim/201q.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/201r/anim0.asm8
-rw-r--r--gfx/pics/201r/anim1.asm6
-rw-r--r--gfx/pics/201r/back.2bpp (renamed from gfx/backpics/201r.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201r/back.lz (renamed from gfx/backpics/lz/201r.lz)bin90 -> 90 bytes
-rw-r--r--gfx/pics/201r/bitmask.asm11
-rw-r--r--gfx/pics/201r/frames.asm13
-rw-r--r--gfx/pics/201r/front.2bpp (renamed from gfx/frontpics/201r.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201r/front.lz (renamed from gfx/frontpics/lz/201r.lz)bin146 -> 146 bytes
-rw-r--r--gfx/pics/201r/tiles.2bpp (renamed from gfx/anim/201r.2bpp)bin144 -> 144 bytes
-rw-r--r--gfx/pics/201s/anim0.asm10
-rw-r--r--gfx/pics/201s/anim1.asm6
-rw-r--r--gfx/pics/201s/back.2bpp (renamed from gfx/backpics/201s.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201s/back.lz (renamed from gfx/backpics/lz/201s.lz)bin146 -> 146 bytes
-rw-r--r--gfx/pics/201s/bitmask.asm16
-rw-r--r--gfx/pics/201s/frames.asm13
-rw-r--r--gfx/pics/201s/front.2bpp (renamed from gfx/frontpics/201s.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201s/front.lz (renamed from gfx/frontpics/lz/201s.lz)bin261 -> 261 bytes
-rw-r--r--gfx/pics/201s/tiles.2bpp (renamed from gfx/anim/201s.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/201t/anim0.asm8
-rw-r--r--gfx/pics/201t/anim1.asm6
-rw-r--r--gfx/pics/201t/back.2bpp (renamed from gfx/backpics/201t.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201t/back.lz (renamed from gfx/backpics/lz/201t.lz)bin116 -> 116 bytes
-rw-r--r--gfx/pics/201t/bitmask.asm16
-rw-r--r--gfx/pics/201t/frames.asm13
-rw-r--r--gfx/pics/201t/front.2bpp (renamed from gfx/frontpics/201t.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201t/front.lz (renamed from gfx/frontpics/lz/201t.lz)bin259 -> 259 bytes
-rw-r--r--gfx/pics/201t/tiles.2bpp (renamed from gfx/anim/201t.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/201u/anim0.asm6
-rw-r--r--gfx/pics/201u/anim1.asm6
-rw-r--r--gfx/pics/201u/back.2bpp (renamed from gfx/backpics/201u.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201u/back.lz (renamed from gfx/backpics/lz/201u.lz)bin107 -> 107 bytes
-rw-r--r--gfx/pics/201u/bitmask.asm11
-rw-r--r--gfx/pics/201u/frames.asm13
-rw-r--r--gfx/pics/201u/front.2bpp (renamed from gfx/frontpics/201u.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201u/front.lz (renamed from gfx/frontpics/lz/201u.lz)bin192 -> 192 bytes
-rw-r--r--gfx/pics/201u/tiles.2bpp (renamed from gfx/anim/201u.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/201v/anim0.asm6
-rw-r--r--gfx/pics/201v/anim1.asm6
-rw-r--r--gfx/pics/201v/back.2bpp (renamed from gfx/backpics/201v.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201v/back.lz (renamed from gfx/backpics/lz/201v.lz)bin156 -> 156 bytes
-rw-r--r--gfx/pics/201v/bitmask.asm16
-rw-r--r--gfx/pics/201v/frames.asm13
-rw-r--r--gfx/pics/201v/front.2bpp (renamed from gfx/frontpics/201v.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201v/front.lz (renamed from gfx/frontpics/lz/201v.lz)bin275 -> 275 bytes
-rw-r--r--gfx/pics/201v/tiles.2bpp (renamed from gfx/anim/201v.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/201w/anim0.asm6
-rw-r--r--gfx/pics/201w/anim1.asm6
-rw-r--r--gfx/pics/201w/back.2bpp (renamed from gfx/backpics/201w.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201w/back.lz (renamed from gfx/backpics/lz/201w.lz)bin126 -> 126 bytes
-rw-r--r--gfx/pics/201w/bitmask.asm16
-rw-r--r--gfx/pics/201w/frames.asm13
-rw-r--r--gfx/pics/201w/front.2bpp (renamed from gfx/frontpics/201w.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201w/front.lz (renamed from gfx/frontpics/lz/201w.lz)bin301 -> 301 bytes
-rw-r--r--gfx/pics/201w/tiles.2bpp (renamed from gfx/anim/201w.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/201x/anim0.asm8
-rw-r--r--gfx/pics/201x/anim1.asm6
-rw-r--r--gfx/pics/201x/back.2bpp (renamed from gfx/backpics/201x.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201x/back.lz (renamed from gfx/backpics/lz/201x.lz)bin113 -> 113 bytes
-rw-r--r--gfx/pics/201x/bitmask.asm16
-rw-r--r--gfx/pics/201x/frames.asm14
-rw-r--r--gfx/pics/201x/front.2bpp (renamed from gfx/frontpics/201x.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201x/front.lz (renamed from gfx/frontpics/lz/201x.lz)bin230 -> 230 bytes
-rw-r--r--gfx/pics/201x/tiles.2bpp (renamed from gfx/anim/201x.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/201y/anim0.asm9
-rw-r--r--gfx/pics/201y/anim1.asm6
-rw-r--r--gfx/pics/201y/back.2bpp (renamed from gfx/backpics/201y.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201y/back.lz (renamed from gfx/backpics/lz/201y.lz)bin102 -> 102 bytes
-rw-r--r--gfx/pics/201y/bitmask.asm21
-rw-r--r--gfx/pics/201y/frames.asm17
-rw-r--r--gfx/pics/201y/front.2bpp (renamed from gfx/frontpics/201y.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201y/front.lz (renamed from gfx/frontpics/lz/201y.lz)bin173 -> 173 bytes
-rw-r--r--gfx/pics/201y/tiles.2bpp (renamed from gfx/anim/201y.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/201z/anim0.asm9
-rw-r--r--gfx/pics/201z/anim1.asm6
-rw-r--r--gfx/pics/201z/back.2bpp (renamed from gfx/backpics/201z.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/201z/back.lz (renamed from gfx/backpics/lz/201z.lz)bin127 -> 127 bytes
-rw-r--r--gfx/pics/201z/bitmask.asm21
-rw-r--r--gfx/pics/201z/frames.asm17
-rw-r--r--gfx/pics/201z/front.2bpp (renamed from gfx/frontpics/201z.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/201z/front.lz (renamed from gfx/frontpics/lz/201z.lz)bin299 -> 299 bytes
-rw-r--r--gfx/pics/201z/tiles.2bpp (renamed from gfx/anim/201z.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/202/anim0.asm4
-rw-r--r--gfx/pics/202/anim1.asm3
-rw-r--r--gfx/pics/202/back.2bpp (renamed from gfx/backpics/202.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/202/back.lz (renamed from gfx/backpics/lz/202.lz)bin270 -> 270 bytes
-rw-r--r--gfx/pics/202/bitmask.asm7
-rw-r--r--gfx/pics/202/frames.asm11
-rw-r--r--gfx/pics/202/front.2bpp (renamed from gfx/frontpics/202.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/202/front.lz (renamed from gfx/frontpics/lz/202.lz)bin595 -> 595 bytes
-rw-r--r--gfx/pics/202/tiles.2bpp (renamed from gfx/anim/202.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/203/anim0.asm14
-rw-r--r--gfx/pics/203/anim1.asm4
-rw-r--r--gfx/pics/203/back.2bpp (renamed from gfx/backpics/203.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/203/back.lz (renamed from gfx/backpics/lz/203.lz)bin360 -> 360 bytes
-rw-r--r--gfx/pics/203/bitmask.asm33
-rw-r--r--gfx/pics/203/frames.asm24
-rw-r--r--gfx/pics/203/front.2bpp (renamed from gfx/frontpics/203.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/203/front.lz (renamed from gfx/frontpics/lz/203.lz)bin687 -> 687 bytes
-rw-r--r--gfx/pics/203/tiles.2bpp (renamed from gfx/anim/203.2bpp)bin384 -> 384 bytes
-rw-r--r--gfx/pics/204/anim0.asm4
-rw-r--r--gfx/pics/204/anim1.asm6
-rw-r--r--gfx/pics/204/back.2bpp (renamed from gfx/backpics/204.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/204/back.lz (renamed from gfx/backpics/lz/204.lz)bin319 -> 319 bytes
-rw-r--r--gfx/pics/204/bitmask.asm16
-rw-r--r--gfx/pics/204/frames.asm14
-rw-r--r--gfx/pics/204/front.2bpp (renamed from gfx/frontpics/204.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/204/front.lz (renamed from gfx/frontpics/lz/204.lz)bin494 -> 494 bytes
-rw-r--r--gfx/pics/204/tiles.2bpp (renamed from gfx/anim/204.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/205/anim0.asm11
-rw-r--r--gfx/pics/205/anim1.asm6
-rw-r--r--gfx/pics/205/back.2bpp (renamed from gfx/backpics/205.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/205/back.lz (renamed from gfx/backpics/lz/205.lz)bin147 -> 147 bytes
-rw-r--r--gfx/pics/205/bitmask.asm25
-rw-r--r--gfx/pics/205/frames.asm21
-rw-r--r--gfx/pics/205/front.2bpp (renamed from gfx/frontpics/205.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/205/front.lz (renamed from gfx/frontpics/lz/205.lz)bin646 -> 646 bytes
-rw-r--r--gfx/pics/205/tiles.2bpp (renamed from gfx/anim/205.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/206/anim0.asm8
-rw-r--r--gfx/pics/206/anim1.asm6
-rw-r--r--gfx/pics/206/back.2bpp (renamed from gfx/backpics/206.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/206/back.lz (renamed from gfx/backpics/lz/206.lz)bin234 -> 234 bytes
-rw-r--r--gfx/pics/206/bitmask.asm25
-rw-r--r--gfx/pics/206/frames.asm23
-rw-r--r--gfx/pics/206/front.2bpp (renamed from gfx/frontpics/206.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/206/front.lz (renamed from gfx/frontpics/lz/206.lz)bin606 -> 606 bytes
-rw-r--r--gfx/pics/206/tiles.2bpp (renamed from gfx/anim/206.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/207/anim0.asm3
-rw-r--r--gfx/pics/207/anim1.asm3
-rw-r--r--gfx/pics/207/back.2bpp (renamed from gfx/backpics/207.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/207/back.lz (renamed from gfx/backpics/lz/207.lz)bin389 -> 389 bytes
-rw-r--r--gfx/pics/207/bitmask.asm7
-rw-r--r--gfx/pics/207/frames.asm6
-rw-r--r--gfx/pics/207/front.2bpp (renamed from gfx/frontpics/207.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/207/front.lz (renamed from gfx/frontpics/lz/207.lz)bin692 -> 692 bytes
-rw-r--r--gfx/pics/207/tiles.2bpp (renamed from gfx/anim/207.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/208/anim0.asm7
-rw-r--r--gfx/pics/208/anim1.asm6
-rw-r--r--gfx/pics/208/back.2bpp (renamed from gfx/backpics/208.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/208/back.lz (renamed from gfx/backpics/lz/208.lz)bin384 -> 384 bytes
-rw-r--r--gfx/pics/208/bitmask.asm25
-rw-r--r--gfx/pics/208/frames.asm20
-rw-r--r--gfx/pics/208/front.2bpp (renamed from gfx/frontpics/208.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/208/front.lz (renamed from gfx/frontpics/lz/208.lz)bin996 -> 996 bytes
-rw-r--r--gfx/pics/208/tiles.2bpp (renamed from gfx/anim/208.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/209/anim0.asm11
-rw-r--r--gfx/pics/209/anim1.asm6
-rw-r--r--gfx/pics/209/back.2bpp (renamed from gfx/backpics/209.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/209/back.lz (renamed from gfx/backpics/lz/209.lz)bin331 -> 331 bytes
-rw-r--r--gfx/pics/209/bitmask.asm31
-rw-r--r--gfx/pics/209/frames.asm22
-rw-r--r--gfx/pics/209/front.2bpp (renamed from gfx/frontpics/209.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/209/front.lz (renamed from gfx/frontpics/lz/209.lz)bin633 -> 633 bytes
-rw-r--r--gfx/pics/209/tiles.2bpp (renamed from gfx/anim/209.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/210/anim0.asm8
-rw-r--r--gfx/pics/210/anim1.asm6
-rw-r--r--gfx/pics/210/back.2bpp (renamed from gfx/backpics/210.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/210/back.lz (renamed from gfx/backpics/lz/210.lz)bin312 -> 312 bytes
-rw-r--r--gfx/pics/210/bitmask.asm13
-rw-r--r--gfx/pics/210/frames.asm10
-rw-r--r--gfx/pics/210/front.2bpp (renamed from gfx/frontpics/210.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/210/front.lz (renamed from gfx/frontpics/lz/210.lz)bin628 -> 628 bytes
-rw-r--r--gfx/pics/210/tiles.2bpp (renamed from gfx/anim/210.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/211/anim0.asm8
-rw-r--r--gfx/pics/211/anim1.asm6
-rw-r--r--gfx/pics/211/back.2bpp (renamed from gfx/backpics/211.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/211/back.lz (renamed from gfx/backpics/lz/211.lz)bin390 -> 390 bytes
-rw-r--r--gfx/pics/211/bitmask.asm16
-rw-r--r--gfx/pics/211/frames.asm15
-rw-r--r--gfx/pics/211/front.2bpp (renamed from gfx/frontpics/211.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/211/front.lz (renamed from gfx/frontpics/lz/211.lz)bin424 -> 424 bytes
-rw-r--r--gfx/pics/211/tiles.2bpp (renamed from gfx/anim/211.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/212/anim0.asm10
-rw-r--r--gfx/pics/212/anim1.asm6
-rw-r--r--gfx/pics/212/back.2bpp (renamed from gfx/backpics/212.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/212/back.lz (renamed from gfx/backpics/lz/212.lz)bin361 -> 361 bytes
-rw-r--r--gfx/pics/212/bitmask.asm49
-rw-r--r--gfx/pics/212/frames.asm27
-rw-r--r--gfx/pics/212/front.2bpp (renamed from gfx/frontpics/212.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/212/front.lz (renamed from gfx/frontpics/lz/212.lz)bin1050 -> 1050 bytes
-rw-r--r--gfx/pics/212/tiles.2bpp (renamed from gfx/anim/212.2bpp)bin592 -> 592 bytes
-rw-r--r--gfx/pics/213/anim0.asm10
-rw-r--r--gfx/pics/213/anim1.asm6
-rw-r--r--gfx/pics/213/back.2bpp (renamed from gfx/backpics/213.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/213/back.lz (renamed from gfx/backpics/lz/213.lz)bin236 -> 236 bytes
-rw-r--r--gfx/pics/213/bitmask.asm21
-rw-r--r--gfx/pics/213/frames.asm18
-rw-r--r--gfx/pics/213/front.2bpp (renamed from gfx/frontpics/213.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/213/front.lz (renamed from gfx/frontpics/lz/213.lz)bin379 -> 379 bytes
-rw-r--r--gfx/pics/213/tiles.2bpp (renamed from gfx/anim/213.2bpp)bin176 -> 176 bytes
-rw-r--r--gfx/pics/214/anim0.asm5
-rw-r--r--gfx/pics/214/anim1.asm6
-rw-r--r--gfx/pics/214/back.2bpp (renamed from gfx/backpics/214.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/214/back.lz (renamed from gfx/backpics/lz/214.lz)bin385 -> 385 bytes
-rw-r--r--gfx/pics/214/bitmask.asm19
-rw-r--r--gfx/pics/214/frames.asm14
-rw-r--r--gfx/pics/214/front.2bpp (renamed from gfx/frontpics/214.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/214/front.lz (renamed from gfx/frontpics/lz/214.lz)bin644 -> 644 bytes
-rw-r--r--gfx/pics/214/tiles.2bpp (renamed from gfx/anim/214.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/215/anim0.asm4
-rw-r--r--gfx/pics/215/anim1.asm5
-rw-r--r--gfx/pics/215/back.2bpp (renamed from gfx/backpics/215.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/215/back.lz (renamed from gfx/backpics/lz/215.lz)bin344 -> 344 bytes
-rw-r--r--gfx/pics/215/bitmask.asm25
-rw-r--r--gfx/pics/215/frames.asm19
-rw-r--r--gfx/pics/215/front.2bpp (renamed from gfx/frontpics/215.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/215/front.lz (renamed from gfx/frontpics/lz/215.lz)bin678 -> 678 bytes
-rw-r--r--gfx/pics/215/tiles.2bpp (renamed from gfx/anim/215.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/216/anim0.asm9
-rw-r--r--gfx/pics/216/anim1.asm6
-rw-r--r--gfx/pics/216/back.2bpp (renamed from gfx/backpics/216.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/216/back.lz (renamed from gfx/backpics/lz/216.lz)bin276 -> 276 bytes
-rw-r--r--gfx/pics/216/bitmask.asm16
-rw-r--r--gfx/pics/216/frames.asm17
-rw-r--r--gfx/pics/216/front.2bpp (renamed from gfx/frontpics/216.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/216/front.lz (renamed from gfx/frontpics/lz/216.lz)bin395 -> 395 bytes
-rw-r--r--gfx/pics/216/tiles.2bpp (renamed from gfx/anim/216.2bpp)bin192 -> 192 bytes
-rw-r--r--gfx/pics/217/anim0.asm9
-rw-r--r--gfx/pics/217/anim1.asm6
-rw-r--r--gfx/pics/217/back.2bpp (renamed from gfx/backpics/217.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/217/back.lz (renamed from gfx/backpics/lz/217.lz)bin277 -> 277 bytes
-rw-r--r--gfx/pics/217/bitmask.asm33
-rw-r--r--gfx/pics/217/frames.asm23
-rw-r--r--gfx/pics/217/front.2bpp (renamed from gfx/frontpics/217.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/217/front.lz (renamed from gfx/frontpics/lz/217.lz)bin727 -> 727 bytes
-rw-r--r--gfx/pics/217/tiles.2bpp (renamed from gfx/anim/217.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/218/anim0.asm10
-rw-r--r--gfx/pics/218/anim1.asm6
-rw-r--r--gfx/pics/218/back.2bpp (renamed from gfx/backpics/218.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/218/back.lz (renamed from gfx/backpics/lz/218.lz)bin323 -> 323 bytes
-rw-r--r--gfx/pics/218/bitmask.asm31
-rw-r--r--gfx/pics/218/frames.asm33
-rw-r--r--gfx/pics/218/front.2bpp (renamed from gfx/frontpics/218.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/218/front.lz (renamed from gfx/frontpics/lz/218.lz)bin454 -> 454 bytes
-rw-r--r--gfx/pics/218/tiles.2bpp (renamed from gfx/anim/218.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/219/anim0.asm7
-rw-r--r--gfx/pics/219/anim1.asm3
-rw-r--r--gfx/pics/219/back.2bpp (renamed from gfx/backpics/219.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/219/back.lz (renamed from gfx/backpics/lz/219.lz)bin394 -> 394 bytes
-rw-r--r--gfx/pics/219/bitmask.asm13
-rw-r--r--gfx/pics/219/frames.asm20
-rw-r--r--gfx/pics/219/front.2bpp (renamed from gfx/frontpics/219.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/219/front.lz (renamed from gfx/frontpics/lz/219.lz)bin799 -> 799 bytes
-rw-r--r--gfx/pics/219/tiles.2bpp (renamed from gfx/anim/219.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/220/anim0.asm7
-rw-r--r--gfx/pics/220/anim1.asm6
-rw-r--r--gfx/pics/220/back.2bpp (renamed from gfx/backpics/220.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/220/back.lz (renamed from gfx/backpics/lz/220.lz)bin224 -> 224 bytes
-rw-r--r--gfx/pics/220/bitmask.asm11
-rw-r--r--gfx/pics/220/frames.asm13
-rw-r--r--gfx/pics/220/front.2bpp (renamed from gfx/frontpics/220.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/220/front.lz (renamed from gfx/frontpics/lz/220.lz)bin298 -> 298 bytes
-rw-r--r--gfx/pics/220/tiles.2bpp (renamed from gfx/anim/220.2bpp)bin160 -> 160 bytes
-rw-r--r--gfx/pics/221/anim0.asm5
-rw-r--r--gfx/pics/221/anim1.asm6
-rw-r--r--gfx/pics/221/back.2bpp (renamed from gfx/backpics/221.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/221/back.lz (renamed from gfx/backpics/lz/221.lz)bin210 -> 210 bytes
-rw-r--r--gfx/pics/221/bitmask.asm19
-rw-r--r--gfx/pics/221/frames.asm13
-rw-r--r--gfx/pics/221/front.2bpp (renamed from gfx/frontpics/221.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/221/front.lz (renamed from gfx/frontpics/lz/221.lz)bin653 -> 653 bytes
-rw-r--r--gfx/pics/221/tiles.2bpp (renamed from gfx/anim/221.2bpp)bin368 -> 368 bytes
-rw-r--r--gfx/pics/222/anim0.asm7
-rw-r--r--gfx/pics/222/anim1.asm6
-rw-r--r--gfx/pics/222/back.2bpp (renamed from gfx/backpics/222.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/222/back.lz (renamed from gfx/backpics/lz/222.lz)bin307 -> 307 bytes
-rw-r--r--gfx/pics/222/bitmask.asm19
-rw-r--r--gfx/pics/222/frames.asm17
-rw-r--r--gfx/pics/222/front.2bpp (renamed from gfx/frontpics/222.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/222/front.lz (renamed from gfx/frontpics/lz/222.lz)bin559 -> 559 bytes
-rw-r--r--gfx/pics/222/tiles.2bpp (renamed from gfx/anim/222.2bpp)bin272 -> 272 bytes
-rw-r--r--gfx/pics/223/anim0.asm5
-rw-r--r--gfx/pics/223/anim1.asm6
-rw-r--r--gfx/pics/223/back.2bpp (renamed from gfx/backpics/223.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/223/back.lz (renamed from gfx/backpics/lz/223.lz)bin353 -> 353 bytes
-rw-r--r--gfx/pics/223/bitmask.asm16
-rw-r--r--gfx/pics/223/frames.asm17
-rw-r--r--gfx/pics/223/front.2bpp (renamed from gfx/frontpics/223.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/223/front.lz (renamed from gfx/frontpics/lz/223.lz)bin379 -> 379 bytes
-rw-r--r--gfx/pics/223/tiles.2bpp (renamed from gfx/anim/223.2bpp)bin144 -> 144 bytes
-rw-r--r--gfx/pics/224/anim0.asm8
-rw-r--r--gfx/pics/224/anim1.asm6
-rw-r--r--gfx/pics/224/back.2bpp (renamed from gfx/backpics/224.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/224/back.lz (renamed from gfx/backpics/lz/224.lz)bin263 -> 263 bytes
-rw-r--r--gfx/pics/224/bitmask.asm19
-rw-r--r--gfx/pics/224/frames.asm14
-rw-r--r--gfx/pics/224/front.2bpp (renamed from gfx/frontpics/224.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/224/front.lz (renamed from gfx/frontpics/lz/224.lz)bin598 -> 598 bytes
-rw-r--r--gfx/pics/224/tiles.2bpp (renamed from gfx/anim/224.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/225/anim0.asm12
-rw-r--r--gfx/pics/225/anim1.asm6
-rw-r--r--gfx/pics/225/back.2bpp (renamed from gfx/backpics/225.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/225/back.lz (renamed from gfx/backpics/lz/225.lz)bin347 -> 347 bytes
-rw-r--r--gfx/pics/225/bitmask.asm37
-rw-r--r--gfx/pics/225/frames.asm27
-rw-r--r--gfx/pics/225/front.2bpp (renamed from gfx/frontpics/225.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/225/front.lz (renamed from gfx/frontpics/lz/225.lz)bin594 -> 594 bytes
-rw-r--r--gfx/pics/225/tiles.2bpp (renamed from gfx/anim/225.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/226/anim0.asm9
-rw-r--r--gfx/pics/226/anim1.asm6
-rw-r--r--gfx/pics/226/back.2bpp (renamed from gfx/backpics/226.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/226/back.lz (renamed from gfx/backpics/lz/226.lz)bin216 -> 216 bytes
-rw-r--r--gfx/pics/226/bitmask.asm49
-rw-r--r--gfx/pics/226/frames.asm27
-rw-r--r--gfx/pics/226/front.2bpp (renamed from gfx/frontpics/226.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/226/front.lz (renamed from gfx/frontpics/lz/226.lz)bin789 -> 789 bytes
-rw-r--r--gfx/pics/226/tiles.2bpp (renamed from gfx/anim/226.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/227/anim0.asm7
-rw-r--r--gfx/pics/227/anim1.asm6
-rw-r--r--gfx/pics/227/back.2bpp (renamed from gfx/backpics/227.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/227/back.lz (renamed from gfx/backpics/lz/227.lz)bin246 -> 246 bytes
-rw-r--r--gfx/pics/227/bitmask.asm17
-rw-r--r--gfx/pics/227/frames.asm11
-rw-r--r--gfx/pics/227/front.2bpp (renamed from gfx/frontpics/227.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/227/front.lz (renamed from gfx/frontpics/lz/227.lz)bin893 -> 893 bytes
-rw-r--r--gfx/pics/227/tiles.2bpp (renamed from gfx/anim/227.2bpp)bin432 -> 432 bytes
-rw-r--r--gfx/pics/228/anim0.asm7
-rw-r--r--gfx/pics/228/anim1.asm8
-rw-r--r--gfx/pics/228/back.2bpp (renamed from gfx/backpics/228.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/228/back.lz (renamed from gfx/backpics/lz/228.lz)bin240 -> 240 bytes
-rw-r--r--gfx/pics/228/bitmask.asm25
-rw-r--r--gfx/pics/228/frames.asm18
-rw-r--r--gfx/pics/228/front.2bpp (renamed from gfx/frontpics/228.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/228/front.lz (renamed from gfx/frontpics/lz/228.lz)bin503 -> 503 bytes
-rw-r--r--gfx/pics/228/tiles.2bpp (renamed from gfx/anim/228.2bpp)bin256 -> 256 bytes
-rw-r--r--gfx/pics/229/anim0.asm10
-rw-r--r--gfx/pics/229/anim1.asm6
-rw-r--r--gfx/pics/229/back.2bpp (renamed from gfx/backpics/229.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/229/back.lz (renamed from gfx/backpics/lz/229.lz)bin289 -> 289 bytes
-rw-r--r--gfx/pics/229/bitmask.asm33
-rw-r--r--gfx/pics/229/frames.asm24
-rw-r--r--gfx/pics/229/front.2bpp (renamed from gfx/frontpics/229.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/229/front.lz (renamed from gfx/frontpics/lz/229.lz)bin727 -> 727 bytes
-rw-r--r--gfx/pics/229/tiles.2bpp (renamed from gfx/anim/229.2bpp)bin480 -> 480 bytes
-rw-r--r--gfx/pics/230/anim0.asm10
-rw-r--r--gfx/pics/230/anim1.asm6
-rw-r--r--gfx/pics/230/back.2bpp (renamed from gfx/backpics/230.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/230/back.lz (renamed from gfx/backpics/lz/230.lz)bin352 -> 352 bytes
-rw-r--r--gfx/pics/230/bitmask.asm49
-rw-r--r--gfx/pics/230/frames.asm26
-rw-r--r--gfx/pics/230/front.2bpp (renamed from gfx/frontpics/230.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/230/front.lz (renamed from gfx/frontpics/lz/230.lz)bin782 -> 782 bytes
-rw-r--r--gfx/pics/230/tiles.2bpp (renamed from gfx/anim/230.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/231/anim0.asm8
-rw-r--r--gfx/pics/231/anim1.asm6
-rw-r--r--gfx/pics/231/back.2bpp (renamed from gfx/backpics/231.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/231/back.lz (renamed from gfx/backpics/lz/231.lz)bin275 -> 275 bytes
-rw-r--r--gfx/pics/231/bitmask.asm16
-rw-r--r--gfx/pics/231/frames.asm13
-rw-r--r--gfx/pics/231/front.2bpp (renamed from gfx/frontpics/231.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/231/front.lz (renamed from gfx/frontpics/lz/231.lz)bin414 -> 414 bytes
-rw-r--r--gfx/pics/231/tiles.2bpp (renamed from gfx/anim/231.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/232/anim0.asm6
-rw-r--r--gfx/pics/232/anim1.asm6
-rw-r--r--gfx/pics/232/back.2bpp (renamed from gfx/backpics/232.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/232/back.lz (renamed from gfx/backpics/lz/232.lz)bin233 -> 233 bytes
-rw-r--r--gfx/pics/232/bitmask.asm33
-rw-r--r--gfx/pics/232/frames.asm24
-rw-r--r--gfx/pics/232/front.2bpp (renamed from gfx/frontpics/232.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/232/front.lz (renamed from gfx/frontpics/lz/232.lz)bin819 -> 819 bytes
-rw-r--r--gfx/pics/232/tiles.2bpp (renamed from gfx/anim/232.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/233/anim0.asm7
-rw-r--r--gfx/pics/233/anim1.asm3
-rw-r--r--gfx/pics/233/back.2bpp (renamed from gfx/backpics/233.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/233/back.lz (renamed from gfx/backpics/lz/233.lz)bin320 -> 320 bytes
-rw-r--r--gfx/pics/233/bitmask.asm19
-rw-r--r--gfx/pics/233/frames.asm14
-rw-r--r--gfx/pics/233/front.2bpp (renamed from gfx/frontpics/233.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/233/front.lz (renamed from gfx/frontpics/lz/233.lz)bin513 -> 513 bytes
-rw-r--r--gfx/pics/233/tiles.2bpp (renamed from gfx/anim/233.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/234/anim0.asm9
-rw-r--r--gfx/pics/234/anim1.asm6
-rw-r--r--gfx/pics/234/back.2bpp (renamed from gfx/backpics/234.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/234/back.lz (renamed from gfx/backpics/lz/234.lz)bin360 -> 360 bytes
-rw-r--r--gfx/pics/234/bitmask.asm25
-rw-r--r--gfx/pics/234/frames.asm15
-rw-r--r--gfx/pics/234/front.2bpp (renamed from gfx/frontpics/234.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/234/front.lz (renamed from gfx/frontpics/lz/234.lz)bin798 -> 798 bytes
-rw-r--r--gfx/pics/234/tiles.2bpp (renamed from gfx/anim/234.2bpp)bin416 -> 416 bytes
-rw-r--r--gfx/pics/235/anim0.asm7
-rw-r--r--gfx/pics/235/anim1.asm6
-rw-r--r--gfx/pics/235/back.2bpp (renamed from gfx/backpics/235.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/235/back.lz (renamed from gfx/backpics/lz/235.lz)bin360 -> 360 bytes
-rw-r--r--gfx/pics/235/bitmask.asm25
-rw-r--r--gfx/pics/235/frames.asm14
-rw-r--r--gfx/pics/235/front.2bpp (renamed from gfx/frontpics/235.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/235/front.lz (renamed from gfx/frontpics/lz/235.lz)bin667 -> 667 bytes
-rw-r--r--gfx/pics/235/tiles.2bpp (renamed from gfx/anim/235.2bpp)bin320 -> 320 bytes
-rw-r--r--gfx/pics/236/anim0.asm7
-rw-r--r--gfx/pics/236/anim1.asm6
-rw-r--r--gfx/pics/236/back.2bpp (renamed from gfx/backpics/236.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/236/back.lz (renamed from gfx/backpics/lz/236.lz)bin361 -> 361 bytes
-rw-r--r--gfx/pics/236/bitmask.asm16
-rw-r--r--gfx/pics/236/frames.asm17
-rw-r--r--gfx/pics/236/front.2bpp (renamed from gfx/frontpics/236.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/236/front.lz (renamed from gfx/frontpics/lz/236.lz)bin470 -> 470 bytes
-rw-r--r--gfx/pics/236/tiles.2bpp (renamed from gfx/anim/236.2bpp)bin240 -> 240 bytes
-rw-r--r--gfx/pics/237/anim0.asm9
-rw-r--r--gfx/pics/237/anim1.asm7
-rw-r--r--gfx/pics/237/back.2bpp (renamed from gfx/backpics/237.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/237/back.lz (renamed from gfx/backpics/lz/237.lz)bin458 -> 458 bytes
-rw-r--r--gfx/pics/237/bitmask.asm33
-rw-r--r--gfx/pics/237/frames.asm19
-rw-r--r--gfx/pics/237/front.2bpp (renamed from gfx/frontpics/237.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/237/front.lz (renamed from gfx/frontpics/lz/237.lz)bin872 -> 872 bytes
-rw-r--r--gfx/pics/237/tiles.2bpp (renamed from gfx/anim/237.2bpp)bin496 -> 496 bytes
-rw-r--r--gfx/pics/238/anim0.asm5
-rw-r--r--gfx/pics/238/anim1.asm6
-rw-r--r--gfx/pics/238/back.2bpp (renamed from gfx/backpics/238.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/238/back.lz (renamed from gfx/backpics/lz/238.lz)bin289 -> 289 bytes
-rw-r--r--gfx/pics/238/bitmask.asm11
-rw-r--r--gfx/pics/238/frames.asm13
-rw-r--r--gfx/pics/238/front.2bpp (renamed from gfx/frontpics/238.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/238/front.lz (renamed from gfx/frontpics/lz/238.lz)bin453 -> 453 bytes
-rw-r--r--gfx/pics/238/tiles.2bpp (renamed from gfx/anim/238.2bpp)bin208 -> 208 bytes
-rw-r--r--gfx/pics/239/anim0.asm11
-rw-r--r--gfx/pics/239/anim1.asm7
-rw-r--r--gfx/pics/239/back.2bpp (renamed from gfx/backpics/239.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/239/back.lz (renamed from gfx/backpics/lz/239.lz)bin421 -> 421 bytes
-rw-r--r--gfx/pics/239/bitmask.asm31
-rw-r--r--gfx/pics/239/frames.asm22
-rw-r--r--gfx/pics/239/front.2bpp (renamed from gfx/frontpics/239.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/239/front.lz (renamed from gfx/frontpics/lz/239.lz)bin702 -> 702 bytes
-rw-r--r--gfx/pics/239/tiles.2bpp (renamed from gfx/anim/239.2bpp)bin336 -> 336 bytes
-rw-r--r--gfx/pics/240/anim0.asm8
-rw-r--r--gfx/pics/240/anim1.asm6
-rw-r--r--gfx/pics/240/back.2bpp (renamed from gfx/backpics/240.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/240/back.lz (renamed from gfx/backpics/lz/240.lz)bin308 -> 308 bytes
-rw-r--r--gfx/pics/240/bitmask.asm25
-rw-r--r--gfx/pics/240/frames.asm26
-rw-r--r--gfx/pics/240/front.2bpp (renamed from gfx/frontpics/240.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/240/front.lz (renamed from gfx/frontpics/lz/240.lz)bin569 -> 569 bytes
-rw-r--r--gfx/pics/240/tiles.2bpp (renamed from gfx/anim/240.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/241/anim0.asm8
-rw-r--r--gfx/pics/241/anim1.asm6
-rw-r--r--gfx/pics/241/back.2bpp (renamed from gfx/backpics/241.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/241/back.lz (renamed from gfx/backpics/lz/241.lz)bin384 -> 384 bytes
-rw-r--r--gfx/pics/241/bitmask.asm19
-rw-r--r--gfx/pics/241/frames.asm15
-rw-r--r--gfx/pics/241/front.2bpp (renamed from gfx/frontpics/241.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/241/front.lz (renamed from gfx/frontpics/lz/241.lz)bin625 -> 625 bytes
-rw-r--r--gfx/pics/241/tiles.2bpp (renamed from gfx/anim/241.2bpp)bin304 -> 304 bytes
-rw-r--r--gfx/pics/242/anim0.asm8
-rw-r--r--gfx/pics/242/anim1.asm6
-rw-r--r--gfx/pics/242/back.2bpp (renamed from gfx/backpics/242.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/242/back.lz (renamed from gfx/backpics/lz/242.lz)bin268 -> 268 bytes
-rw-r--r--gfx/pics/242/bitmask.asm33
-rw-r--r--gfx/pics/242/frames.asm18
-rw-r--r--gfx/pics/242/front.2bpp (renamed from gfx/frontpics/242.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/242/front.lz (renamed from gfx/frontpics/lz/242.lz)bin867 -> 867 bytes
-rw-r--r--gfx/pics/242/tiles.2bpp (renamed from gfx/anim/242.2bpp)bin448 -> 448 bytes
-rw-r--r--gfx/pics/243/anim0.asm8
-rw-r--r--gfx/pics/243/anim1.asm8
-rw-r--r--gfx/pics/243/back.2bpp (renamed from gfx/backpics/243.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/243/back.lz (renamed from gfx/backpics/lz/243.lz)bin243 -> 243 bytes
-rw-r--r--gfx/pics/243/bitmask.asm17
-rw-r--r--gfx/pics/243/frames.asm33
-rw-r--r--gfx/pics/243/front.2bpp (renamed from gfx/frontpics/243.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/243/front.lz (renamed from gfx/frontpics/lz/243.lz)bin1134 -> 1134 bytes
-rw-r--r--gfx/pics/243/tiles.2bpp (renamed from gfx/anim/243.2bpp)bin704 -> 704 bytes
-rw-r--r--gfx/pics/244/anim0.asm6
-rw-r--r--gfx/pics/244/anim1.asm6
-rw-r--r--gfx/pics/244/back.2bpp (renamed from gfx/backpics/244.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/244/back.lz (renamed from gfx/backpics/lz/244.lz)bin340 -> 340 bytes
-rw-r--r--gfx/pics/244/bitmask.asm33
-rw-r--r--gfx/pics/244/frames.asm19
-rw-r--r--gfx/pics/244/front.2bpp (renamed from gfx/frontpics/244.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/244/front.lz (renamed from gfx/frontpics/lz/244.lz)bin1093 -> 1093 bytes
-rw-r--r--gfx/pics/244/tiles.2bpp (renamed from gfx/anim/244.2bpp)bin560 -> 560 bytes
-rw-r--r--gfx/pics/245/anim0.asm13
-rw-r--r--gfx/pics/245/anim1.asm7
-rw-r--r--gfx/pics/245/back.2bpp (renamed from gfx/backpics/245.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/245/back.lz (renamed from gfx/backpics/lz/245.lz)bin423 -> 423 bytes
-rw-r--r--gfx/pics/245/bitmask.asm57
-rw-r--r--gfx/pics/245/frames.asm46
-rw-r--r--gfx/pics/245/front.2bpp (renamed from gfx/frontpics/245.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/245/front.lz (renamed from gfx/frontpics/lz/245.lz)bin1085 -> 1085 bytes
-rw-r--r--gfx/pics/245/tiles.2bpp (renamed from gfx/anim/245.2bpp)bin736 -> 736 bytes
-rw-r--r--gfx/pics/246/anim0.asm6
-rw-r--r--gfx/pics/246/anim1.asm6
-rw-r--r--gfx/pics/246/back.2bpp (renamed from gfx/backpics/246.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/246/back.lz (renamed from gfx/backpics/lz/246.lz)bin298 -> 298 bytes
-rw-r--r--gfx/pics/246/bitmask.asm16
-rw-r--r--gfx/pics/246/frames.asm13
-rw-r--r--gfx/pics/246/front.2bpp (renamed from gfx/frontpics/246.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/246/front.lz (renamed from gfx/frontpics/lz/246.lz)bin413 -> 413 bytes
-rw-r--r--gfx/pics/246/tiles.2bpp (renamed from gfx/anim/246.2bpp)bin224 -> 224 bytes
-rw-r--r--gfx/pics/247/anim0.asm8
-rw-r--r--gfx/pics/247/anim1.asm7
-rw-r--r--gfx/pics/247/back.2bpp (renamed from gfx/backpics/247.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/247/back.lz (renamed from gfx/backpics/lz/247.lz)bin385 -> 385 bytes
-rw-r--r--gfx/pics/247/bitmask.asm13
-rw-r--r--gfx/pics/247/frames.asm9
-rw-r--r--gfx/pics/247/front.2bpp (renamed from gfx/frontpics/247.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/247/front.lz (renamed from gfx/frontpics/lz/247.lz)bin446 -> 446 bytes
-rw-r--r--gfx/pics/247/tiles.2bpp (renamed from gfx/anim/247.2bpp)bin144 -> 144 bytes
-rw-r--r--gfx/pics/248/anim0.asm9
-rw-r--r--gfx/pics/248/anim1.asm6
-rw-r--r--gfx/pics/248/back.2bpp (renamed from gfx/backpics/248.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/248/back.lz (renamed from gfx/backpics/lz/248.lz)bin413 -> 413 bytes
-rw-r--r--gfx/pics/248/bitmask.asm33
-rw-r--r--gfx/pics/248/frames.asm25
-rw-r--r--gfx/pics/248/front.2bpp (renamed from gfx/frontpics/248.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/248/front.lz (renamed from gfx/frontpics/lz/248.lz)bin1021 -> 1021 bytes
-rw-r--r--gfx/pics/248/tiles.2bpp (renamed from gfx/anim/248.2bpp)bin544 -> 544 bytes
-rw-r--r--gfx/pics/249/anim0.asm8
-rw-r--r--gfx/pics/249/anim1.asm8
-rw-r--r--gfx/pics/249/back.2bpp (renamed from gfx/backpics/249.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/249/back.lz (renamed from gfx/backpics/lz/249.lz)bin282 -> 282 bytes
-rw-r--r--gfx/pics/249/bitmask.asm73
-rw-r--r--gfx/pics/249/frames.asm44
-rw-r--r--gfx/pics/249/front.2bpp (renamed from gfx/frontpics/249.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/249/front.lz (renamed from gfx/frontpics/lz/249.lz)bin1128 -> 1128 bytes
-rw-r--r--gfx/pics/249/tiles.2bpp (renamed from gfx/anim/249.2bpp)bin752 -> 752 bytes
-rw-r--r--gfx/pics/250/anim0.asm11
-rw-r--r--gfx/pics/250/anim1.asm6
-rw-r--r--gfx/pics/250/back.2bpp (renamed from gfx/backpics/250.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/250/back.lz (renamed from gfx/backpics/lz/250.lz)bin337 -> 337 bytes
-rw-r--r--gfx/pics/250/bitmask.asm33
-rw-r--r--gfx/pics/250/frames.asm20
-rw-r--r--gfx/pics/250/front.2bpp (renamed from gfx/frontpics/250.2bpp)bin784 -> 784 bytes
-rw-r--r--gfx/pics/250/front.lz (renamed from gfx/frontpics/lz/250.lz)bin1303 -> 1303 bytes
-rw-r--r--gfx/pics/250/tiles.2bpp (renamed from gfx/anim/250.2bpp)bin768 -> 768 bytes
-rw-r--r--gfx/pics/251/anim0.asm16
-rw-r--r--gfx/pics/251/anim1.asm8
-rw-r--r--gfx/pics/251/back.2bpp (renamed from gfx/backpics/251.2bpp)bin576 -> 576 bytes
-rw-r--r--gfx/pics/251/back.lz (renamed from gfx/backpics/lz/251.lz)bin420 -> 420 bytes
-rw-r--r--gfx/pics/251/bitmask.asm36
-rw-r--r--gfx/pics/251/frames.asm53
-rw-r--r--gfx/pics/251/front.2bpp (renamed from gfx/frontpics/251.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/251/front.lz (renamed from gfx/frontpics/lz/251.lz)bin496 -> 496 bytes
-rw-r--r--gfx/pics/251/tiles.2bpp (renamed from gfx/anim/251.2bpp)bin368 -> 368 bytes
-rw-r--r--gfx/pics/anim_pointers.asm251
-rw-r--r--gfx/pics/anims.asm252
-rw-r--r--gfx/pics/bitmask_pointers.asm251
-rw-r--r--gfx/pics/bitmasks.asm252
-rw-r--r--gfx/pics/egg/anim0.asm8
-rw-r--r--gfx/pics/egg/anim1.asm5
-rw-r--r--gfx/pics/egg/bitmask.asm6
-rw-r--r--gfx/pics/egg/frames.asm9
-rw-r--r--gfx/pics/egg/front.2bpp (renamed from gfx/frontpics/egg.2bpp)bin400 -> 400 bytes
-rw-r--r--gfx/pics/egg/front.lz (renamed from gfx/frontpics/lz/egg.lz)bin382 -> 382 bytes
-rw-r--r--gfx/pics/egg/tiles.2bpp (renamed from gfx/anim/egg.2bpp)bin352 -> 352 bytes
-rw-r--r--gfx/pics/extra_pointers.asm251
-rw-r--r--gfx/pics/extras.asm252
-rw-r--r--gfx/pics/frame_pointers.asm251
-rw-r--r--gfx/pics/johto_frames.asm101
-rw-r--r--gfx/pics/kanto_frames.asm151
-rw-r--r--gfx/pics/unown_anim_pointers.asm26
-rw-r--r--gfx/pics/unown_anims.asm26
-rw-r--r--gfx/pics/unown_bitmask_pointers.asm26
-rw-r--r--gfx/pics/unown_bitmasks.asm26
-rw-r--r--gfx/pics/unown_extra_pointers.asm26
-rw-r--r--gfx/pics/unown_extras.asm26
-rw-r--r--gfx/pics/unown_frame_pointers.asm26
-rw-r--r--gfx/pics/unown_frames.asm26
-rw-r--r--main.asm5418
-rw-r--r--preprocessor.py26
-rw-r--r--text/phone/bill.asm73
-rw-r--r--text/phone/elm.asm149
-rw-r--r--text/phone/mom.asm127
-rw-r--r--text/phone/trainers1.asm1560
-rw-r--r--wram.asm11
2546 files changed, 26760 insertions, 2345 deletions
diff --git a/.gitignore b/.gitignore
index 2049e5750..3288dbc14 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,30 +1,31 @@
-#precompiled python
+# precompiled python
*.pyc
-#compiled object file
+# compiled object file
*.o
-#no binaries
+# no binaries
*.exe
-#roms
+# roms
*.gbc
+*.gb
-#generated
+# generated
*.tx
-#swap files for vim
+# swap files for vim
.*.swp
-#no data from extras/
+# no data from extras/
extras/*.json
-#for any of the poor souls with save game files in their working directory
+# for any of the poor souls with save game files in their working directory
baserom.sgm
baserom.sav
pokered.sgm
pokered.sav
-#for vim configuration
-#url: http://www.vim.org/scripts/script.php?script_id=441
+# for vim configuration
+# url: http://www.vim.org/scripts/script.php?script_id=441
.lvimrc
diff --git a/Makefile b/Makefile
index 441675cdd..44d24932f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,10 +1,15 @@
.SUFFIXES: .asm .tx .o .gbc
-TEXTFILES = text/sweethoney.tx
+TEXTFILES = text/sweethoney.tx \
+ text/phone/bill.tx \
+ text/phone/elm.tx \
+ text/phone/mom.tx \
+ text/phone/trainers1.tx \
+ main.tx
all: pokecrystal.gbc
-pokecrystal.o: pokecrystal.asm main.tx constants.asm wram.asm ${TEXTFILES}
+pokecrystal.o: pokecrystal.asm constants.asm wram.asm ${TEXTFILES}
rgbasm -o pokecrystal.o pokecrystal.asm
.asm.tx:
diff --git a/constants.asm b/constants.asm
index c3b05f321..3694ee5a1 100644
--- a/constants.asm
+++ b/constants.asm
@@ -1,5 +1,8 @@
_CRYSTAL EQU 1
+FarCall EQU $08
+Bankswitch EQU $10
+
dwb: MACRO
dw \1
db \2
@@ -21,13 +24,18 @@ bigdw: MACRO
callab: MACRO
ld hl, \1
ld a, BANK(\1)
- rst $08
+ rst FarCall
ENDM
callba: MACRO
ld a, BANK(\1)
ld hl, \1
- rst $08
+ rst FarCall
+ ENDM
+
+TX_RAM: MACRO
+ db 1
+ dw \1
ENDM
TX_FAR: MACRO
@@ -36,6 +44,10 @@ TX_FAR: MACRO
db BANK(\1)
ENDM
+RGB: MACRO
+ dw ((\3 << 10) | (\2 << 5) | (\1))
+ ENDM
+
; eventually replace with python macro
note: MACRO
db \1
@@ -3360,3 +3372,20 @@ Unkn1Pals EQU $d000 ; 8 4-color palettes little endian)
Unkn2Pals EQU $d040 ; 8 4-color palettes little endian)
BGPals EQU $d080 ; 8 4-color palettes little endian)
OBPals EQU $d0c0 ; 8 4-color palettes little endian)
+
+; oh my god this is hacky stop being so hacky
+frame: MACRO
+ db \1
+ db \2
+ ENDM
+setrepeat: MACRO
+ db $fe
+ db \1
+ ENDM
+dorepeat: MACRO
+ db $fd
+ db \1
+ ENDM
+endanim: MACRO
+ db $ff
+ ENDM
diff --git a/extras/README.md b/extras/README.md
index d0a211999..0131fc076 100644
--- a/extras/README.md
+++ b/extras/README.md
@@ -30,9 +30,8 @@ After running those lines, `cp extras/output.txt main.asm` and run `git diff mai
Unit tests cover most of the classes.
-```python
-import crystal
-crystal.run_tests()
+```bash
+python tests.py
```
#### Parsing a script at a known address
diff --git a/extras/comparator.py b/extras/comparator.py
index 690fa5236..6d981e493 100644
--- a/extras/comparator.py
+++ b/extras/comparator.py
@@ -1,34 +1,30 @@
-#!/usr/bin/python
# -*- coding: utf-8 -*-
-# author: Bryan Bishop <kanzure@gmail.com>
-# date: 2012-05-29
-# purpose: find shared functions between red/crystal
-
-from crystal import get_label_from_line, \
- get_address_from_line_comment, \
- AsmSection
-
-from romstr import RomStr, AsmList
+"""
+Finds shared functions between red/crystal.
+"""
+
+from crystal import (
+ get_label_from_line,
+ get_address_from_line_comment,
+ AsmSection,
+ direct_load_rom,
+ direct_load_asm,
+)
+
+from romstr import (
+ RomStr,
+ AsmList,
+)
def load_rom(path):
""" Loads a ROM file into an abbreviated RomStr object.
"""
-
- fh = open(path, "r")
- x = RomStr(fh.read())
- fh.close()
-
- return x
+ return direct_load_rom(filename=path)
def load_asm(path):
""" Loads source ASM into an abbreviated AsmList object.
"""
-
- fh = open(path, "r")
- x = AsmList(fh.read().split("\n"))
- fh.close()
-
- return x
+ return direct_load_asm(filename=path)
def findall_iter(sub, string):
# url: http://stackoverflow.com/a/3874760/687783
diff --git a/extras/crystal.py b/extras/crystal.py
index 3f30ed085..06d54ae22 100644
--- a/extras/crystal.py
+++ b/extras/crystal.py
@@ -1,29 +1,19 @@
# -*- coding: utf-8 -*-
# utilities to help disassemble pokémon crystal
-import sys, os, inspect, hashlib, json
+import os
+import sys
+import inspect
+import hashlib
+import json
from copy import copy, deepcopy
import subprocess
from new import classobj
import random
-# for IntervalMap
-from bisect import bisect_left, bisect_right
-from itertools import izip
-
-# for testing all this crap
-try:
- import unittest2 as unittest
-except ImportError:
- import unittest
-
# for capwords
import string
-# Check for things we need in unittest.
-if not hasattr(unittest.TestCase, 'setUpClass'):
- sys.stderr.write("The unittest2 module or Python 2.7 is required to run this script.")
- sys.exit(1)
-
+# for python2.6
if not hasattr(json, "dumps"):
json.dumps = json.write
@@ -31,6 +21,14 @@ if not hasattr(json, "dumps"):
if not hasattr(json, "read"):
json.read = json.loads
+from labels import (
+ remove_quoted_text,
+ line_has_comment_address,
+ line_has_label,
+ get_label_from_line,
+ get_address_from_line_comment
+)
+
spacing = "\t"
lousy_dragon_shrine_hack = [0x18d079, 0x18d0a9, 0x18d061, 0x18d091]
@@ -63,132 +61,25 @@ constant_abbreviation_bytes = {}
# Import the characters from its module.
from chars import chars, jap_chars
-from trainers import *
+from trainers import (
+ trainer_group_pointer_table_address, # 0x39999
+ trainer_group_pointer_table_address_gs, # 0x3993E
+ trainer_group_names,
+)
from move_constants import moves
# for fixing trainer_group_names
import re
-trainer_group_pointer_table_address = 0x39999
-trainer_group_pointer_table_address_gs = 0x3993E
-
-class Size():
- """a simple way to track whether or not a size
- includes the first value or not, like for
- whether or not the size of a command in a script
- also includes the command byte or not"""
-
- def __init__(self, size, inclusive=False):
- self.inclusive = inclusive
- if inclusive: size = size-1
- self.size = size
-
- def inclusive(self):
- return self.size + 1
-
- def exclusive(self):
- return self.size
-
-class IntervalMap(object):
- """
- This class maps a set of intervals to a set of values.
-
- >>> i = IntervalMap()
- >>> i[0:5] = "hello world"
- >>> i[6:10] = "hello cruel world"
- >>> print i[4]
- "hello world"
- """
-
- def __init__(self):
- """initializes an empty IntervalMap"""
- self._bounds = []
- self._items = []
- self._upperitem = None
-
- def __setitem__(self, _slice, _value):
- """sets an interval mapping"""
- assert isinstance(_slice, slice), 'The key must be a slice object'
-
- if _slice.start is None:
- start_point = -1
- else:
- start_point = bisect_left(self._bounds, _slice.start)
-
- if _slice.stop is None:
- end_point = -1
- else:
- end_point = bisect_left(self._bounds, _slice.stop)
-
- if start_point>=0:
- if start_point < len(self._bounds) and self._bounds[start_point]<_slice.start:
- start_point += 1
-
- if end_point>=0:
- self._bounds[start_point:end_point] = [_slice.start, _slice.stop]
- if start_point < len(self._items):
- self._items[start_point:end_point] = [self._items[start_point], _value]
- else:
- self._items[start_point:end_point] = [self._upperitem, _value]
- else:
- self._bounds[start_point:] = [_slice.start]
- if start_point < len(self._items):
- self._items[start_point:] = [self._items[start_point], _value]
- else:
- self._items[start_point:] = [self._upperitem]
- self._upperitem = _value
- else:
- if end_point>=0:
- self._bounds[:end_point] = [_slice.stop]
- self._items[:end_point] = [_value]
- else:
- self._bounds[:] = []
- self._items[:] = []
- self._upperitem = _value
-
- def __getitem__(self,_point):
- """gets a value from the mapping"""
- assert not isinstance(_point, slice), 'The key cannot be a slice object'
-
- index = bisect_right(self._bounds, _point)
- if index < len(self._bounds):
- return self._items[index]
- else:
- return self._upperitem
-
- def items(self):
- """returns an iterator with each item being
- ((low_bound, high_bound), value)
- these items are returned in order"""
- previous_bound = None
- for (b, v) in izip(self._bounds, self._items):
- if v is not None:
- yield (previous_bound, b), v
- previous_bound = b
- if self._upperitem is not None:
- yield (previous_bound, None), self._upperitem
-
- def values(self):
- """returns an iterator with each item being a stored value
- the items are returned in order"""
- for v in self._items:
- if v is not None:
- yield v
- if self._upperitem is not None:
- yield self._upperitem
-
- def __repr__(self):
- s = []
- for b,v in self.items():
- if v is not None:
- s.append('[%r, %r] => %r'%(
- b[0],
- b[1],
- v
- ))
- return '{'+', '.join(s)+'}'
+from interval_map import IntervalMap
+from pksv import (
+ pksv_gs,
+ pksv_crystal,
+ pksv_crystal_unknowns,
+ pksv_crystal_more_enders
+)
# ---- script_parse_table explanation ----
# This is an IntervalMap that keeps track of previously parsed scripts, texts
@@ -206,7 +97,8 @@ script_parse_table = IntervalMap()
def is_script_already_parsed_at(address):
"""looks up whether or not a script is parsed at a certain address"""
- if script_parse_table[address] == None: return False
+ if script_parse_table[address] == None:
+ return False
return True
def script_parse_table_pretty_printer():
@@ -230,7 +122,10 @@ def map_name_cleaner(input):
replace("hooh", "HoOh").\
replace(" ", "")
-from romstr import RomStr, AsmList
+from romstr import (
+ RomStr,
+ AsmList,
+)
rom = RomStr(None)
@@ -253,12 +148,16 @@ def load_rom(filename="../baserom.gbc"):
elif os.lstat(filename).st_size != len(rom):
return direct_load_rom(filename)
+def direct_load_asm(filename="../main.asm"):
+ """returns asm source code (AsmList) from a file"""
+ asm = open(filename, "r").read().split("\n")
+ asm = AsmList(asm)
+ return asm
def load_asm(filename="../main.asm"):
- """loads the asm source code into memory"""
+ """returns asm source code (AsmList) from a file (uses a global)"""
global asm
- asm = open(filename, "r").read().split("\n")
- asm = AsmList(asm)
+ asm = direct_load_asm(filename=filename)
return asm
def grouper(some_list, count=2):
@@ -269,11 +168,14 @@ def grouper(some_list, count=2):
def is_valid_address(address):
"""is_valid_rom_address"""
- if address == None: return False
+ if address == None:
+ return False
if type(address) == str:
address = int(address, 16)
- if 0 <= address <= 2097152: return True
- else: return False
+ if 0 <= address <= 2097152:
+ return True
+ else:
+ return False
def rom_interval(offset, length, strings=True, debug=True):
"""returns hex values for the rom starting at offset until offset+length"""
@@ -302,7 +204,10 @@ def load_map_group_offsets():
map_group_offsets.append(offset)
return map_group_offsets
-from pointers import calculate_bank, calculate_pointer
+from pointers import (
+ calculate_bank,
+ calculate_pointer,
+)
def calculate_pointer_from_bytes_at(address, bank=False):
"""calculates a pointer from 2 bytes at a location
@@ -317,7 +222,7 @@ def calculate_pointer_from_bytes_at(address, bank=False):
elif type(bank) == int:
pass
else:
- raise Exception, "bad bank given to calculate_pointer_from_bytes_at"
+ raise Exception("bad bank given to calculate_pointer_from_bytes_at")
byte1 = ord(rom[address])
byte2 = ord(rom[address+1])
temp = byte1 + (byte2 << 8)
@@ -345,6 +250,20 @@ def clean_up_long_info(long_info):
long_info = "\n".join(new_lines)
return long_info
+from pokemon_constants import pokemon_constants
+
+def get_pokemon_constant_by_id(id):
+ if id == 0:
+ return None
+ else:
+ return pokemon_constants[id]
+
+from item_constants import (
+ item_constants,
+ find_item_label_by_id,
+ generate_item_constants,
+)
+
def command_debug_information(command_byte=None, map_group=None, map_id=None, address=0, info=None, long_info=None, pksv_name=None):
"used to help debug in parse_script_engine_script_at"
info1 = "parsing command byte " + hex(command_byte) + " for map " + \
@@ -376,7 +295,7 @@ class TextScript:
self.force = force
if is_script_already_parsed_at(address) and not force:
- raise Exception, "TextScript already parsed at "+hex(address)
+ raise Exception("TextScript already parsed at "+hex(address))
if not label:
label = self.base_label + hex(address)
@@ -449,11 +368,11 @@ class TextScript:
print "self.commands is: " + str(commands)
print "command 0 address is: " + hex(commands[0].address) + " last_address="+hex(commands[0].last_address)
print "command 1 address is: " + hex(commands[1].address) + " last_address="+hex(commands[1].last_address)
- raise Exception, "going beyond the bounds for this text script"
+ raise Exception("going beyond the bounds for this text script")
# no matching command found
if scripting_command_class == None:
- raise Exception, "unable to parse text command $%.2x in the text script at %s at %s" % (cur_byte, hex(start_address), hex(current_address))
+ raise Exception("unable to parse text command $%.2x in the text script at %s at %s" % (cur_byte, hex(start_address), hex(current_address)))
# create an instance of the command class and let it parse its parameter bytes
cls = scripting_command_class(address=current_address, map_group=self.map_group, map_id=self.map_id, debug=self.debug, force=self.force)
@@ -631,7 +550,7 @@ class OldTextScript:
if is_script_already_parsed_at(address) and not force:
print "text is already parsed at this location: " + hex(address)
- raise Exception, "text is already parsed, what's going on ?"
+ raise Exception("text is already parsed, what's going on ?")
return script_parse_table[address]
total_text_commands = 0
@@ -845,7 +764,7 @@ class OldTextScript:
def get_dependencies(self, recompute=False, global_dependencies=set()):
#if recompute:
- # raise NotImplementedError, bryan_message
+ # raise NotImplementedError(bryan_message)
global_dependencies.update(self.dependencies)
return self.dependencies
@@ -1157,7 +1076,8 @@ def parse_text_at3(address, map_group=None, map_id=None, debug=False):
text = TextScript(address, map_group=map_group, map_id=map_id, debug=debug)
if text.is_valid():
return text
- else: return None
+ else:
+ return None
def rom_text_at(address, count=10):
"""prints out raw text from the ROM
@@ -1166,8 +1086,10 @@ def rom_text_at(address, count=10):
def get_map_constant_label(map_group=None, map_id=None):
"""returns PALLET_TOWN for some map group/id pair"""
- if map_group == None: raise Exception, "need map_group"
- if map_id == None: raise Exception, "need map_id"
+ if map_group == None:
+ raise Exception("need map_group")
+ if map_id == None:
+ raise Exception("need map_id")
global map_internal_ids
for (id, each) in map_internal_ids.items():
@@ -1185,7 +1107,8 @@ def get_id_for_map_constant_label(label):
PALLET_TOWN = 1, for instance."""
global map_internal_ids
for (id, each) in map_internal_ids.items():
- if each["label"] == label: return id
+ if each["label"] == label:
+ return id
return None
def generate_map_constant_labels():
@@ -1264,37 +1187,16 @@ def transform_wildmons(asm):
returnlines.append(line)
return "\n".join(returnlines)
-from pokemon_constants import pokemon_constants
-
-def get_pokemon_constant_by_id(id):
- if id == 0: return None
- return pokemon_constants[id]
-
def parse_script_asm_at(*args, **kwargs):
# XXX TODO
return None
-from item_constants import item_constants
-
-def find_item_label_by_id(id):
- if id in item_constants.keys():
- return item_constants[id]
- else: return None
-
-def generate_item_constants():
- """make a list of items to put in constants.asm"""
- output = ""
- for (id, item) in item_constants.items():
- val = ("$%.2x"%id).upper()
- while len(item)<13: item+= " "
- output += item + " EQU " + val + "\n"
- return output
-
def find_all_text_pointers_in_script_engine_script(script, bank=None, debug=False):
"""returns a list of text pointers
based on each script-engine script command"""
# TODO: recursively follow any jumps in the script
- if script == None: return []
+ if script == None:
+ return []
addresses = set()
for (k, command) in enumerate(script.commands):
if debug:
@@ -1329,16 +1231,16 @@ def translate_command_byte(crystal=None, gold=None):
if 0x53 <= crystal <= 0x9E: return crystal-1
if crystal == 0x9F: return None
if 0xA0 <= crystal <= 0xA5: return crystal-2
- if crystal > 0xA5: raise Exception, "dunno yet if crystal has new insertions after crystal:0xA5 (gold:0xA3)"
+ if crystal > 0xA5:
+ raise Exception("dunno yet if crystal has new insertions after crystal:0xA5 (gold:0xA3)")
elif gold != None: # convert to crystal
if gold <= 0x51: return gold
if 0x52 <= gold <= 0x9D: return gold+1
if 0x9E <= gold <= 0xA3: return gold+2
- if gold > 0xA3: raise Exception, "dunno yet if crystal has new insertions after gold:0xA3 (crystal:0xA5)"
- else: raise Exception, "translate_command_byte needs either a crystal or gold command"
-
-from pksv import pksv_gs, pksv_crystal, pksv_crystal_unknowns,\
- pksv_crystal_more_enders
+ if gold > 0xA3:
+ raise Exception("dunno yet if crystal has new insertions after gold:0xA3 (crystal:0xA5)")
+ else:
+ raise Exception("translate_command_byte needs either a crystal or gold command")
class SingleByteParam():
"""or SingleByte(CommandParam)"""
@@ -1351,14 +1253,14 @@ class SingleByteParam():
setattr(self, key, value)
# check address
if not hasattr(self, "address"):
- raise Exception, "an address is a requirement"
+ raise Exception("an address is a requirement")
elif self.address == None:
- raise Exception, "address must not be None"
+ raise Exception("address must not be None")
elif not is_valid_address(self.address):
- raise Exception, "address must be valid"
+ raise Exception("address must be valid")
# check size
if not hasattr(self, "size") or self.size == None:
- raise Exception, "size is probably 1?"
+ raise Exception("size is probably 1?")
# parse bytes from ROM
self.parse()
@@ -1368,18 +1270,23 @@ class SingleByteParam():
return []
def to_asm(self):
- if not self.should_be_decimal: return hex(self.byte).replace("0x", "$")
- else: return str(self.byte)
+ if not self.should_be_decimal:
+ return hex(self.byte).replace("0x", "$")
+ else:
+ return str(self.byte)
class DollarSignByte(SingleByteParam):
- def to_asm(self): return hex(self.byte).replace("0x", "$")
+ def to_asm(self):
+ return hex(self.byte).replace("0x", "$")
HexByte=DollarSignByte
class ItemLabelByte(DollarSignByte):
def to_asm(self):
label = find_item_label_by_id(self.byte)
- if label: return label
- elif not label: return DollarSignByte.to_asm(self)
+ if label:
+ return label
+ elif not label:
+ return DollarSignByte.to_asm(self)
class DecimalParam(SingleByteParam):
@@ -1398,12 +1305,12 @@ class MultiByteParam():
setattr(self, key, value)
# check address
if not hasattr(self, "address") or self.address == None:
- raise Exception, "an address is a requirement"
+ raise Exception("an address is a requirement")
elif not is_valid_address(self.address):
- raise Exception, "address must be valid"
+ raise Exception("address must be valid")
# check size
if not hasattr(self, "size") or self.size == None:
- raise Exception, "don't know how many bytes to read (size)"
+ raise Exception("don't know how many bytes to read (size)")
self.parse()
def parse(self):
@@ -1445,9 +1352,9 @@ class PointerLabelParam(MultiByteParam):
self.size = self.default_size + 1
self.given_bank = kwargs["bank"]
#if kwargs["bank"] not in [None, False, True, "reverse"]:
- # raise Exception, "bank cannot be: " + str(kwargs["bank"])
+ # raise Exception("bank cannot be: " + str(kwargs["bank"]))
if self.size > 3:
- raise Exception, "param size is too large"
+ raise Exception("param size is too large")
# continue instantiation.. self.bank will be set down the road
MultiByteParam.__init__(self, *args, **kwargs)
@@ -1520,15 +1427,16 @@ class PointerLabelParam(MultiByteParam):
return pointer_part+", "+bank_part
elif bank == True: # bank, pointer
return bank_part+", "+pointer_part
- else: raise Exception, "this should never happen"
- raise Exception, "this should never happen"
+ else:
+ raise Exception("this should never happen")
+ raise Exception("this should never happen")
# this next one will either return the label or the raw bytes
elif bank == False or bank == None: # pointer
return pointer_part # this could be the same as label
else:
- #raise Exception, "this should never happen"
+ #raise Exception("this should never happen")
return pointer_part # probably in the same bank ?
- raise Exception, "this should never happen"
+ raise Exception("this should never happen")
class PointerLabelBeforeBank(PointerLabelParam):
bank = True # bank appears first, see calculate_pointer_from_bytes_at
@@ -1549,12 +1457,12 @@ class ScriptPointerLabelBeforeBank(PointerLabelBeforeBank): pass
class ScriptPointerLabelAfterBank(PointerLabelAfterBank): pass
-def _parse_script_pointer_bytes(self):
+def _parse_script_pointer_bytes(self, debug = False):
PointerLabelParam.parse(self)
- print "_parse_script_pointer_bytes - calculating the pointer located at " + hex(self.address)
+ if debug: print "_parse_script_pointer_bytes - calculating the pointer located at " + hex(self.address)
address = calculate_pointer_from_bytes_at(self.address, bank=self.bank)
if address != None and address > 0x4000:
- print "_parse_script_pointer_bytes - the pointer is: " + hex(address)
+ if debug: print "_parse_script_pointer_bytes - the pointer is: " + hex(address)
self.script = parse_script_engine_script_at(address, debug=self.debug, force=self.force, map_group=self.map_group, map_id=self.map_id)
ScriptPointerLabelParam.parse = _parse_script_pointer_bytes
ScriptPointerLabelBeforeBank.parse = _parse_script_pointer_bytes
@@ -1587,8 +1495,10 @@ class RAMAddressParam(MultiByteParam):
def to_asm(self):
address = calculate_pointer_from_bytes_at(self.address, bank=False)
label = get_ram_label(address)
- if label: return label
- else: return "$"+"".join(["%.2x"%x for x in reversed(self.bytes)])+""
+ if label:
+ return label
+ else:
+ return "$"+"".join(["%.2x"%x for x in reversed(self.bytes)])+""
class MoneyByteParam(MultiByteParam):
@@ -1646,9 +1556,11 @@ class MapGroupParam(SingleByteParam):
def to_asm(self):
map_id = ord(rom[self.address+1])
map_constant_label = get_map_constant_label(map_id=map_id, map_group=self.byte) # like PALLET_TOWN
- if map_constant_label == None: return str(self.byte)
+ if map_constant_label == None:
+ return str(self.byte)
#else: return "GROUP("+map_constant_label+")"
- else: return "GROUP_"+map_constant_label
+ else:
+ return "GROUP_"+map_constant_label
class MapIdParam(SingleByteParam):
@@ -1659,9 +1571,11 @@ class MapIdParam(SingleByteParam):
def to_asm(self):
map_group = ord(rom[self.address-1])
map_constant_label = get_map_constant_label(map_id=self.byte, map_group=map_group)
- if map_constant_label == None: return str(self.byte)
+ if map_constant_label == None:
+ return str(self.byte)
#else: return "MAP("+map_constant_label+")"
- else: return "MAP_"+map_constant_label
+ else:
+ return "MAP_"+map_constant_label
class MapGroupIdParam(MultiByteParam):
@@ -1680,13 +1594,15 @@ class MapGroupIdParam(MultiByteParam):
class PokemonParam(SingleByteParam):
def to_asm(self):
pokemon_constant = get_pokemon_constant_by_id(self.byte)
- if pokemon_constant: return pokemon_constant
- else: return str(self.byte)
+ if pokemon_constant:
+ return pokemon_constant
+ else:
+ return str(self.byte)
class PointerParamToItemAndLetter(MultiByteParam):
# [2F][2byte pointer to item no + 0x20 bytes letter text]
- #raise NotImplementedError, bryan_message
+ #raise NotImplementedError(bryan_message)
pass
@@ -1702,7 +1618,7 @@ class TrainerIdParam(SingleByteParam):
i += 1
if foundit == None:
- raise Exception, "didn't find a TrainerGroupParam in this command??"
+ raise Exception("didn't find a TrainerGroupParam in this command??")
# now get the trainer group id
trainer_group_id = self.parent.params[foundit].byte
@@ -1729,7 +1645,7 @@ class MoveParam(SingleByteParam):
class MenuDataPointerParam(PointerLabelParam):
# read menu data at the target site
- #raise NotImplementedError, bryan_message
+ #raise NotImplementedError(bryan_message)
pass
@@ -1813,7 +1729,7 @@ class MovementPointerLabelParam(PointerLabelParam):
global_dependencies.add(self.movement)
return [self.movement] + self.movement.get_dependencies(recompute=recompute, global_dependencies=global_dependencies)
else:
- raise Exception, "MovementPointerLabelParam hasn't been parsed yet"
+ raise Exception("MovementPointerLabelParam hasn't been parsed yet")
class MapDataPointerParam(PointerLabelParam):
pass
@@ -1838,7 +1754,7 @@ class Command:
"""
defaults = {"force": False, "debug": False, "map_group": None, "map_id": None}
if not is_valid_address(address):
- raise Exception, "address is invalid"
+ raise Exception("address is invalid")
# set up some variables
self.address = address
self.last_address = None
@@ -1878,7 +1794,8 @@ class Command:
# output += "_"
output += self.macro_name
# return if there are no params
- if len(self.param_types.keys()) == 0: return output
+ if len(self.param_types.keys()) == 0:
+ return output
# first one will have no prefixing comma
first = True
# start reading the bytes after the command byte
@@ -1923,7 +1840,7 @@ class Command:
current_address = self.address
byte = ord(rom[self.address])
if not self.override_byte_check and (not byte == self.id):
- raise Exception, "byte ("+hex(byte)+") != self.id ("+hex(self.id)+")"
+ raise Exception("byte ("+hex(byte)+") != self.id ("+hex(self.id)+")")
i = 0
for (key, param_type) in self.param_types.items():
name = param_type["name"]
@@ -1959,7 +1876,7 @@ class GivePoke(Command):
self.params = {}
byte = ord(rom[self.address])
if not byte == self.id:
- raise Exception, "this should never happen"
+ raise Exception("this should never happen")
current_address = self.address+1
i = 0
self.size = 1
@@ -2120,7 +2037,8 @@ def create_movement_commands(debug=False):
direction = "left"
elif x == 3:
direction = "right"
- else: raise Exception, "this should never happen"
+ else:
+ raise Exception("this should never happen")
cmd_name = cmd[0].replace(" ", "_") + "_" + direction
klass_name = cmd_name+"Command"
@@ -2355,11 +2273,11 @@ class MainText(TextCommand):
print "bytes are: " + str(self.bytes)
print "self.size is: " + str(self.size)
print "self.last_address is: " + hex(self.last_address)
- raise Exception, "last_address is wrong for 0x9c00e"
+ raise Exception("last_address is wrong for 0x9c00e")
def to_asm(self):
if self.size < 2 or len(self.bytes) < 1:
- raise Exception, "$0 text command can't end itself with no follow-on bytes"
+ raise Exception("$0 text command can't end itself with no follow-on bytes")
if self.use_zero:
output = "db $0"
@@ -2390,13 +2308,13 @@ class MainText(TextCommand):
for byte in self.bytes:
if end:
- raise Exception, "the text ended due to a $50 or $57 but there are more bytes?"
+ raise Exception("the text ended due to a $50 or $57 but there are more bytes?")
if new_line:
if in_quotes:
- raise Exception, "can't be in_quotes on a newline"
+ raise Exception("can't be in_quotes on a newline")
elif was_comma:
- raise Exception, "last line's last character can't be a comma"
+ raise Exception("last line's last character can't be a comma")
output += "db "
@@ -2490,7 +2408,7 @@ class MainText(TextCommand):
was_comma = False
end = False
else:
- # raise Exception, "unknown byte in text script ($%.2x)" % (byte)
+ # raise Exception("unknown byte in text script ($%.2x)" % (byte))
# just add an unknown byte directly to the text.. what's the worse that can happen?
if in_quotes:
@@ -2511,7 +2429,7 @@ class MainText(TextCommand):
# this shouldn't happen because of the rom_until calls in the parse method
if not end:
- raise Exception, "ran out of bytes without the script ending? starts at "+hex(self.address)
+ raise Exception("ran out of bytes without the script ending? starts at "+hex(self.address))
# last character may or may not be allowed to be a newline?
# Script.to_asm() has command.to_asm()+"\n"
@@ -2817,6 +2735,7 @@ pksv_crystal_more = {
0x4F: ["loadmenudata", ["data", MenuDataPointerParam]],
0x50: ["writebackup"],
0x51: ["jumptextfaceplayer", ["text_pointer", RawTextPointerLabelParam]],
+ 0x52: ["3jumptext", ["text_pointer", PointerLabelBeforeBank]],
0x53: ["jumptext", ["text_pointer", RawTextPointerLabelParam]],
0x54: ["closetext"],
0x55: ["keeptextopen"],
@@ -3088,17 +3007,17 @@ class Script:
self.address = None
self.commands = None
if len(kwargs) == 0 and len(args) == 0:
- raise Exception, "Script.__init__ must be given some arguments"
+ raise Exception("Script.__init__ must be given some arguments")
# first positional argument is address
if len(args) == 1:
address = args[0]
if type(address) == str:
address = int(address, 16)
elif type(address) != int:
- raise Exception, "address must be an integer or string"
+ raise Exception("address must be an integer or string")
self.address = address
elif len(args) > 1:
- raise Exception, "don't know what to do with second (or later) positional arguments"
+ raise Exception("don't know what to do with second (or later) positional arguments")
self.dependencies = None
if "label" in kwargs.keys():
label = kwargs["label"]
@@ -3160,15 +3079,15 @@ class Script:
"""
global command_classes, rom, script_parse_table
current_address = start_address
- print "Script.parse address="+hex(self.address) +" map_group="+str(map_group)+" map_id="+str(map_id)
+ if debug: print "Script.parse address="+hex(self.address) +" map_group="+str(map_group)+" map_id="+str(map_id)
if start_address in stop_points and force == False:
- print "script parsing is stopping at stop_point=" + hex(start_address) + " at map_group="+str(map_group)+" map_id="+str(map_id)
+ if debug: print "script parsing is stopping at stop_point=" + hex(start_address) + " at map_group="+str(map_group)+" map_id="+str(map_id)
return None
if start_address < 0x4000 and start_address not in [0x26ef, 0x114, 0x1108]:
- print "address is less than 0x4000.. address is: " + hex(start_address)
+ if debug: print "address is less than 0x4000.. address is: " + hex(start_address)
sys.exit(1)
if is_script_already_parsed_at(start_address) and not force and not force_top:
- raise Exception, "this script has already been parsed before, please use that instance ("+hex(start_address)+")"
+ raise Exception("this script has already been parsed before, please use that instance ("+hex(start_address)+")")
# load up the rom if it hasn't been loaded already
load_rom()
@@ -3198,13 +3117,13 @@ class Script:
# no matching command found (not implemented yet)- just end this script
# NOTE: might be better to raise an exception and end the program?
if scripting_command_class == None:
- print "parsing script; current_address is: " + hex(current_address)
+ if debug: print "parsing script; current_address is: " + hex(current_address)
current_address += 1
asm_output = "\n".join([command.to_asm() for command in commands])
end = True
continue
# maybe the program should exit with failure instead?
- #raise Exception, "no command found? id: " + hex(cur_byte) + " at " + hex(current_address) + " asm is:\n" + asm_output
+ #raise Exception("no command found? id: " + hex(cur_byte) + " at " + hex(current_address) + " asm is:\n" + asm_output)
# create an instance of the command class and let it parse its parameter bytes
#print "about to parse command(script@"+hex(start_address)+"): " + str(scripting_command_class.macro_name)
@@ -3231,7 +3150,7 @@ class Script:
script_parse_table[start_address:current_address] = self
asm_output = "\n".join([command.to_asm() for command in commands])
- print "--------------\n"+asm_output
+ if debug: print "--------------\n"+asm_output
# store the script
self.commands = commands
@@ -3529,7 +3448,8 @@ class TrainerFragment(Command):
def get_dependencies(self, recompute=False, global_dependencies=set()):
deps = []
- if not is_valid_address(self.address): return deps
+ if not is_valid_address(self.address):
+ return deps
if self.dependencies != None and not recompute:
global_dependencies.update(self.dependencies)
return self.dependencies
@@ -3867,7 +3787,7 @@ class TrainerHeader:
break
if party_mon_parser == None:
- raise Exception, "no trainer party mon parser found to parse data type " + hex(self.data_type)
+ raise Exception("no trainer party mon parser found to parse data type " + hex(self.data_type))
self.party_mons = party_mon_parser(address=current_address, group_id=self.trainer_group_id, trainer_id=self.trainer_id, parent=self)
@@ -4422,7 +4342,8 @@ class SignpostRemoteBase:
def to_asm(self):
"""very similar to Command.to_asm"""
- if len(self.params) == 0: return ""
+ if len(self.params) == 0:
+ return ""
#output = ", ".join([p.to_asm() for p in self.params])
output = ""
for param in self.params:
@@ -4670,7 +4591,7 @@ class Signpost(Command):
mb = PointerLabelParam(address=self.address+3, map_group=self.map_group, map_id=self.map_id, debug=self.debug)
self.params.append(mb)
else:
- raise Exception, "unknown signpost type byte="+hex(func) + " signpost@"+hex(self.address)
+ raise Exception("unknown signpost type byte="+hex(func) + " signpost@"+hex(self.address))
def get_dependencies(self, recompute=False, global_dependencies=set()):
dependencies = []
@@ -4684,13 +4605,15 @@ class Signpost(Command):
def to_asm(self):
output = self.macro_name + " "
- if self.params == []: raise Exception, "signpost has no params?"
+ if self.params == []:
+ raise Exception("signpost has no params?")
output += ", ".join([p.to_asm() for p in self.params])
return output
all_signposts = []
def parse_signposts(address, signpost_count, bank=None, map_group=None, map_id=None, debug=True):
- if bank == None: raise Exception, "signposts need to know their bank"
+ if bank == None:
+ raise Exception("signposts need to know their bank")
signposts = []
current_address = address
id = 0
@@ -5273,7 +5196,7 @@ class Connection:
wrong_norths.append(data)
# this will only happen if there's a bad formula
- raise Exception, "tauwasser strip_pointer calculation was wrong? strip_pointer="+hex(strip_pointer) + " p="+hex(p)
+ raise Exception("tauwasser strip_pointer calculation was wrong? strip_pointer="+hex(strip_pointer) + " p="+hex(p))
calculated_destination = None
method = "strip_destination_default"
@@ -5295,7 +5218,7 @@ class Connection:
x_movement_of_the_connection_strip_in_blocks = strip_destination - 0xC703
print "(north) x_movement_of_the_connection_strip_in_blocks is: " + str(x_movement_of_the_connection_strip_in_blocks)
if x_movement_of_the_connection_strip_in_blocks < 0:
- raise Exception, "x_movement_of_the_connection_strip_in_blocks is wrong? " + str(x_movement_of_the_connection_strip_in_blocks)
+ raise Exception("x_movement_of_the_connection_strip_in_blocks is wrong? " + str(x_movement_of_the_connection_strip_in_blocks))
elif ldirection == "south":
# strip_destination =
# 0xc703 + (current_map_height + 3) * (current_map_width + 6) + x_movement_of_the_connection_strip_in_blocks
@@ -5570,11 +5493,11 @@ class Connection:
yoffset = self.yoffset # y_position_after_map_change
if ldirection == "south" and yoffset != 0:
- raise Exception, "tauwasser was wrong about yoffset=0 for south? it's: " + str(yoffset)
+ raise Exception("tauwasser was wrong about yoffset=0 for south? it's: " + str(yoffset))
elif ldirection == "north" and yoffset != ((connected_map_height * 2) - 1):
- raise Exception, "tauwasser was wrong about yoffset for north? it's: " + str(yoffset)
+ raise Exception("tauwasser was wrong about yoffset for north? it's: " + str(yoffset))
#elif not ((yoffset % -2) == 0):
- # raise Exception, "tauwasser was wrong about yoffset for west/east? it's not divisible by -2: " + str(yoffset)
+ # raise Exception("tauwasser was wrong about yoffset for west/east? it's not divisible by -2: " + str(yoffset))
# Left: (Width_of_connected_map * 2) - 1
# Right: 0
@@ -5582,11 +5505,11 @@ class Connection:
xoffset = self.xoffset # x_position_after_map_change
if ldirection == "east" and xoffset != 0:
- raise Exception, "tauwasser was wrong about xoffset=0 for east? it's: " + str(xoffset)
+ raise Exception("tauwasser was wrong about xoffset=0 for east? it's: " + str(xoffset))
elif ldirection == "west" and xoffset != ((connected_map_width * 2) - 1):
- raise Exception, "tauwasser was wrong about xoffset for west? it's: " + str(xoffset)
+ raise Exception("tauwasser was wrong about xoffset for west? it's: " + str(xoffset))
#elif not ((xoffset % -2) == 0):
- # raise Exception, "tauwasser was wrong about xoffset for north/south? it's not divisible by -2: " + str(xoffset)
+ # raise Exception("tauwasser was wrong about xoffset for north/south? it's not divisible by -2: " + str(xoffset))
output += "db "
@@ -5703,7 +5626,7 @@ class MapBlockData:
self.width = width
self.height = height
else:
- raise Exception, "MapBlockData needs to know the width/height of its map"
+ raise Exception("MapBlockData needs to know the width/height of its map")
label = self.make_label()
self.label = Label(name=label, address=address, object=self)
self.last_address = self.address + (self.width.byte * self.height.byte)
@@ -6270,14 +6193,14 @@ def parse_map_header_by_id(*args, **kwargs):
map_id = kwargs["map_id"]
if (map_group == None and map_id != None) or \
(map_group != None and map_id == None):
- raise Exception, "map_group and map_id must both be provided"
+ raise Exception("map_group and map_id must both be provided")
elif map_group == None and map_id == None and len(args) == 0:
- raise Exception, "must be given an argument"
+ raise Exception("must be given an argument")
elif len(args) == 1 and type(args[0]) == str:
map_group = int(args[0].split(".")[0])
map_id = int(args[0].split(".")[1])
else:
- raise Exception, "dunno what to do with input"
+ raise Exception("dunno what to do with input")
offset = map_names[map_group]["offset"]
map_header_offset = offset + ((map_id - 1) * map_header_byte_size)
return parse_map_header_at(map_header_offset, map_group=map_group, map_id=map_id)
@@ -6286,7 +6209,7 @@ def parse_all_map_headers(debug=True):
"""calls parse_map_header_at for each map in each map group"""
global map_names
if not map_names[1].has_key("offset"):
- raise Exception, "dunno what to do - map_names should have groups with pre-calculated offsets by now"
+ raise Exception("dunno what to do - map_names should have groups with pre-calculated offsets by now")
for group_id, group_data in map_names.items():
offset = group_data["offset"]
# we only care about the maps
@@ -7045,7 +6968,7 @@ def find_incbin_to_replace_for(address, debug=False, rom_file="../baserom.gbc"):
if you were to insert bytes into main.asm"""
if type(address) == str: address = int(address, 16)
if not (0 <= address <= os.lstat(rom_file).st_size):
- raise IndexError, "address is out of bounds"
+ raise IndexError("address is out of bounds")
for incbin_key in processed_incbins.keys():
incbin = processed_incbins[incbin_key]
start = incbin["start"]
@@ -7069,9 +6992,9 @@ def split_incbin_line_into_three(line, start_address, byte_count, rom_file="../b
"""
if type(start_address) == str: start_address = int(start_address, 16)
if not (0 <= start_address <= os.lstat(rom_file).st_size):
- raise IndexError, "start_address is out of bounds"
+ raise IndexError("start_address is out of bounds")
if len(processed_incbins) == 0:
- raise Exception, "processed_incbins must be populated"
+ raise Exception("processed_incbins must be populated")
original_incbin = processed_incbins[line]
start = original_incbin["start"]
@@ -7191,7 +7114,7 @@ class Incbin:
start = eval(start)
except Exception, e:
print "start is: " + str(start)
- raise Exception, "problem with evaluating interval range: " + str(e)
+ raise Exception("problem with evaluating interval range: " + str(e))
start_hex = hex(start).replace("0x", "$")
@@ -7212,11 +7135,12 @@ class Incbin:
def to_asm(self):
if self.interval > 0:
return self.line
- else: return ""
+ else:
+ return ""
def split(self, start_address, byte_count):
"""splits this incbin into three separate incbins"""
if start_address < self.start_address or start_address > self.end_address:
- raise Exception, "this incbin doesn't handle this address"
+ raise Exception("this incbin doesn't handle this address")
incbins = []
if self.debug:
@@ -7358,7 +7282,7 @@ class Asm:
if not hasattr(new_object, "last_address"):
print debugmsg
- raise Exception, "object needs to have a last_address property"
+ raise Exception("object needs to have a last_address property")
end_address = new_object.last_address
debugmsg += " last_address="+hex(end_address)
@@ -7384,7 +7308,7 @@ class Asm:
print "start_address="+hex(start_address)+" end_address="+hex(end_address)
if hasattr(new_object, "to_asm"):
print to_asm(new_object)
- raise Exception, "Asm.insert was given an object with a bad address range"
+ raise Exception("Asm.insert was given an object with a bad address range")
# 1) find which object needs to be replaced
# or
@@ -7426,7 +7350,7 @@ class Asm:
found = True
break
if not found:
- raise Exception, "unable to insert object into Asm"
+ raise Exception("unable to insert object into Asm")
self.labels.append(new_object.label)
return True
def insert_with_dependencies(self, input):
@@ -7458,9 +7382,9 @@ class Asm:
# just some old debugging
#if object.label.name == "UnknownText_0x60128":
- # raise Exception, "debugging..."
+ # raise Exception("debugging...")
#elif object.label.name == "UnknownScript_0x60011":
- # raise Exception, "debugging.. dependencies are: " + str(object.dependencies) + " versus: " + str(object.get_dependencies())
+ # raise Exception("debugging.. dependencies are: " + str(object.dependencies) + " versus: " + str(object.get_dependencies()))
def insert_single_with_dependencies(self, object):
self.insert_with_dependencies(object)
def insert_multiple_with_dependencies(self, objects):
@@ -7516,7 +7440,7 @@ class Asm:
current_requested_newlines_before = 2
current_requested_newlines_after = 2
else:
- raise Exception, "dunno what to do with("+str(each)+") in Asm.parts"
+ raise Exception("dunno what to do with("+str(each)+") in Asm.parts")
if write_something:
if not first:
@@ -7546,7 +7470,7 @@ def list_texts_in_bank(bank):
that you will be inserting into Asm.
"""
if len(all_texts) == 0:
- raise Exception, "all_texts is blank.. run_main() will populate it"
+ raise Exception("all_texts is blank.. run_main() will populate it")
assert bank != None, "list_texts_in_banks must be given a particular bank"
@@ -7564,7 +7488,7 @@ def list_movements_in_bank(bank):
to speed up Asm insertion.
"""
if len(all_movements) == 0:
- raise Exception, "all_movements is blank.. run_main() will populate it"
+ raise Exception("all_movements is blank.. run_main() will populate it")
assert bank != None, "list_movements_in_bank must be given a particular bank"
assert 0 <= bank < 0x80, "bank doesn't exist in the ROM (out of bounds)"
@@ -7673,7 +7597,7 @@ def get_label_for(address):
if address == None:
return None
if type(address) != int:
- raise Exception, "get_label_for requires an integer address, got: " + str(type(address))
+ raise Exception("get_label_for requires an integer address, got: " + str(type(address)))
# lousy hack to get around recursive scripts in dragon shrine
if address in lousy_dragon_shrine_hack:
@@ -7787,10 +7711,6 @@ class Label:
name = object.make_label()
return name
-from labels import remove_quoted_text, line_has_comment_address, \
- line_has_label, get_label_from_line, \
- get_address_from_line_comment
-
def find_labels_without_addresses():
"""scans the asm source and finds labels that are unmarked"""
without_addresses = []
@@ -7872,14 +7792,9 @@ def scan_for_predefined_labels(debug=False):
abbreviation_next = "1"
# calculate the start/stop line numbers for this bank
- for a in (abbreviation, abbreviation.lower()):
- start_line_id = index(asm, lambda line: "\"bank" + a + "\"" in line)
- if start_line_id != None: break
-
+ start_line_id = index(asm, lambda line: "\"bank" + abbreviation.lower() + "\"" in line.lower())
if bank_id != 0x7F:
- for a in (abbreviation_next, abbreviation_next.lower()):
- end_line_id = index(asm, lambda line: "\"bank" + a + "\"" in line)
- if end_line_id != None: break
+ end_line_id = index(asm, lambda line: "\"bank" + abbreviation_next.lower() + "\"" in line.lower())
end_line_id += 1
else:
end_line_id = len(asm) - 1
@@ -7907,924 +7822,6 @@ def scan_for_predefined_labels(debug=False):
write_all_labels(all_labels)
return all_labels
-#### generic testing ####
-
-class TestCram(unittest.TestCase):
- "this is where i cram all of my unit tests together"
-
- @classmethod
- def setUpClass(cls):
- global rom
- cls.rom = direct_load_rom()
- rom = cls.rom
-
- @classmethod
- def tearDownClass(cls):
- del cls.rom
-
- def test_generic_useless(self):
- "do i know how to write a test?"
- self.assertEqual(1, 1)
-
- def test_map_name_cleaner(self):
- name = "hello world"
- cleaned_name = map_name_cleaner(name)
- self.assertNotEqual(name, cleaned_name)
- self.failUnless(" " not in cleaned_name)
- name = "Some Random Pokémon Center"
- cleaned_name = map_name_cleaner(name)
- self.assertNotEqual(name, cleaned_name)
- self.failIf(" " in cleaned_name)
- self.failIf("é" in cleaned_name)
-
- def test_grouper(self):
- data = range(0, 10)
- groups = grouper(data, count=2)
- self.assertEquals(len(groups), 5)
- data = range(0, 20)
- groups = grouper(data, count=2)
- self.assertEquals(len(groups), 10)
- self.assertNotEqual(data, groups)
- self.assertNotEqual(len(data), len(groups))
-
- def test_direct_load_rom(self):
- rom = self.rom
- self.assertEqual(len(rom), 2097152)
- self.failUnless(isinstance(rom, RomStr))
-
- def test_load_rom(self):
- global rom
- rom = None
- load_rom()
- self.failIf(rom == None)
- rom = RomStr(None)
- load_rom()
- self.failIf(rom == RomStr(None))
-
- def test_load_asm(self):
- asm = load_asm()
- joined_lines = "\n".join(asm)
- self.failUnless("SECTION" in joined_lines)
- self.failUnless("bank" in joined_lines)
- self.failUnless(isinstance(asm, AsmList))
-
- def test_rom_file_existence(self):
- "ROM file must exist"
- self.failUnless("baserom.gbc" in os.listdir("../"))
-
- def test_rom_md5(self):
- "ROM file must have the correct md5 sum"
- rom = self.rom
- correct = "9f2922b235a5eeb78d65594e82ef5dde"
- md5 = hashlib.md5()
- md5.update(rom)
- md5sum = md5.hexdigest()
- self.assertEqual(md5sum, correct)
-
- def test_bizarre_http_presence(self):
- rom_segment = self.rom[0x112116:0x112116+8]
- self.assertEqual(rom_segment, "HTTP/1.0")
-
- def test_rom_interval(self):
- address = 0x100
- interval = 10
- correct_strings = ['0x0', '0xc3', '0x6e', '0x1', '0xce',
- '0xed', '0x66', '0x66', '0xcc', '0xd']
- byte_strings = rom_interval(address, interval, strings=True)
- self.assertEqual(byte_strings, correct_strings)
- correct_ints = [0, 195, 110, 1, 206, 237, 102, 102, 204, 13]
- ints = rom_interval(address, interval, strings=False)
- self.assertEqual(ints, correct_ints)
-
- def test_rom_until(self):
- address = 0x1337
- byte = 0x13
- bytes = rom_until(address, byte, strings=True)
- self.failUnless(len(bytes) == 3)
- self.failUnless(bytes[0] == '0xd5')
- bytes = rom_until(address, byte, strings=False)
- self.failUnless(len(bytes) == 3)
- self.failUnless(bytes[0] == 0xd5)
-
- def test_how_many_until(self):
- how_many = how_many_until(chr(0x13), 0x1337)
- self.assertEqual(how_many, 3)
-
- def test_calculate_bank(self):
- self.failUnless(calculate_bank(0x8000) == 2)
- self.failUnless(calculate_bank("0x9000") == 2)
- self.failUnless(calculate_bank(0) == 0)
- for address in [0x4000, 0x5000, 0x6000, 0x7000]:
- self.assertRaises(Exception, calculate_bank, address)
-
- def test_calculate_pointer(self):
- # for offset <= 0x4000
- self.assertEqual(calculate_pointer(0x0000), 0x0000)
- self.assertEqual(calculate_pointer(0x3FFF), 0x3FFF)
- # for 0x4000 <= offset <= 0x7FFFF
- self.assertEqual(calculate_pointer(0x430F, bank=5), 0x1430F)
- # for offset >= 0x7FFF
- self.assertEqual(calculate_pointer(0x8FFF, bank=6), calculate_pointer(0x8FFF, bank=7))
-
- def test_calculate_pointer_from_bytes_at(self):
- addr1 = calculate_pointer_from_bytes_at(0x100, bank=False)
- self.assertEqual(addr1, 0xc300)
- addr2 = calculate_pointer_from_bytes_at(0x100, bank=True)
- self.assertEqual(addr2, 0x2ec3)
-
- def test_rom_text_at(self):
- self.assertEquals(rom_text_at(0x112116, 8), "HTTP/1.0")
-
- def test_translate_command_byte(self):
- self.failUnless(translate_command_byte(crystal=0x0) == 0x0)
- self.failUnless(translate_command_byte(crystal=0x10) == 0x10)
- self.failUnless(translate_command_byte(crystal=0x40) == 0x40)
- self.failUnless(translate_command_byte(gold=0x0) == 0x0)
- self.failUnless(translate_command_byte(gold=0x10) == 0x10)
- self.failUnless(translate_command_byte(gold=0x40) == 0x40)
- self.assertEqual(translate_command_byte(gold=0x0), translate_command_byte(crystal=0x0))
- self.failUnless(translate_command_byte(gold=0x52) == 0x53)
- self.failUnless(translate_command_byte(gold=0x53) == 0x54)
- self.failUnless(translate_command_byte(crystal=0x53) == 0x52)
- self.failUnless(translate_command_byte(crystal=0x52) == None)
- self.assertRaises(Exception, translate_command_byte, None, gold=0xA4)
-
- def test_pksv_integrity(self):
- "does pksv_gs look okay?"
- self.assertEqual(pksv_gs[0x00], "2call")
- self.assertEqual(pksv_gs[0x2D], "givepoke")
- self.assertEqual(pksv_gs[0x85], "waitbutton")
- self.assertEqual(pksv_crystal[0x00], "2call")
- self.assertEqual(pksv_crystal[0x86], "waitbutton")
- self.assertEqual(pksv_crystal[0xA2], "credits")
-
- def test_chars_integrity(self):
- self.assertEqual(chars[0x80], "A")
- self.assertEqual(chars[0xA0], "a")
- self.assertEqual(chars[0xF0], "¥")
- self.assertEqual(jap_chars[0x44], "ぱ")
-
- def test_map_names_integrity(self):
- def map_name(map_group, map_id): return map_names[map_group][map_id]["name"]
- self.assertEqual(map_name(2, 7), "Mahogany Town")
- self.assertEqual(map_name(3, 0x34), "Ilex Forest")
- self.assertEqual(map_name(7, 0x11), "Cerulean City")
-
- def test_load_map_group_offsets(self):
- addresses = load_map_group_offsets()
- self.assertEqual(len(addresses), 26, msg="there should be 26 map groups")
- addresses = load_map_group_offsets()
- self.assertEqual(len(addresses), 26, msg="there should still be 26 map groups")
- self.assertIn(0x94034, addresses)
- for address in addresses:
- self.assertGreaterEqual(address, 0x4000)
- self.failIf(0x4000 <= address <= 0x7FFF)
- self.failIf(address <= 0x4000)
-
- def test_index(self):
- self.assertTrue(index([1,2,3,4], lambda f: True) == 0)
- self.assertTrue(index([1,2,3,4], lambda f: f==3) == 2)
-
- def test_get_pokemon_constant_by_id(self):
- x = get_pokemon_constant_by_id
- self.assertEqual(x(1), "BULBASAUR")
- self.assertEqual(x(151), "MEW")
- self.assertEqual(x(250), "HO_OH")
-
- def test_find_item_label_by_id(self):
- x = find_item_label_by_id
- self.assertEqual(x(249), "HM_07")
- self.assertEqual(x(173), "BERRY")
- self.assertEqual(x(45), None)
-
- def test_generate_item_constants(self):
- x = generate_item_constants
- r = x()
- self.failUnless("HM_07" in r)
- self.failUnless("EQU" in r)
-
- def test_get_label_for(self):
- global all_labels
- temp = copy(all_labels)
- # this is basd on the format defined in get_labels_between
- all_labels = [{"label": "poop", "address": 0x5,
- "offset": 0x5, "bank": 0,
- "line_number": 2
- }]
- self.assertEqual(get_label_for(5), "poop")
- all_labels = temp
-
- def test_generate_map_constant_labels(self):
- ids = generate_map_constant_labels()
- self.assertEqual(ids[0]["label"], "OLIVINE_POKECENTER_1F")
- self.assertEqual(ids[1]["label"], "OLIVINE_GYM")
-
- def test_get_id_for_map_constant_label(self):
- global map_internal_ids
- map_internal_ids = generate_map_constant_labels()
- self.assertEqual(get_id_for_map_constant_label("OLIVINE_GYM"), 1)
- self.assertEqual(get_id_for_map_constant_label("OLIVINE_POKECENTER_1F"), 0)
-
- def test_get_map_constant_label_by_id(self):
- global map_internal_ids
- map_internal_ids = generate_map_constant_labels()
- self.assertEqual(get_map_constant_label_by_id(0), "OLIVINE_POKECENTER_1F")
- self.assertEqual(get_map_constant_label_by_id(1), "OLIVINE_GYM")
-
- def test_is_valid_address(self):
- self.assertTrue(is_valid_address(0))
- self.assertTrue(is_valid_address(1))
- self.assertTrue(is_valid_address(10))
- self.assertTrue(is_valid_address(100))
- self.assertTrue(is_valid_address(1000))
- self.assertTrue(is_valid_address(10000))
- self.assertFalse(is_valid_address(2097153))
- self.assertFalse(is_valid_address(2098000))
- addresses = [random.randrange(0,2097153) for i in range(0, 9+1)]
- for address in addresses:
- self.assertTrue(is_valid_address(address))
-
-
-class TestIntervalMap(unittest.TestCase):
- def test_intervals(self):
- i = IntervalMap()
- first = "hello world"
- second = "testing 123"
- i[0:5] = first
- i[5:10] = second
- self.assertEqual(i[0], first)
- self.assertEqual(i[1], first)
- self.assertNotEqual(i[5], first)
- self.assertEqual(i[6], second)
- i[3:10] = second
- self.assertEqual(i[3], second)
- self.assertNotEqual(i[4], first)
-
- def test_items(self):
- i = IntervalMap()
- first = "hello world"
- second = "testing 123"
- i[0:5] = first
- i[5:10] = second
- results = list(i.items())
- self.failUnless(len(results) == 2)
- self.assertEqual(results[0], ((0, 5), "hello world"))
- self.assertEqual(results[1], ((5, 10), "testing 123"))
-
-
-class TestRomStr(unittest.TestCase):
- """RomStr is a class that should act exactly like str()
- except that it never shows the contents of it string
- unless explicitly forced"""
- sample_text = "hello world!"
- sample = None
-
- def setUp(self):
- if self.sample == None:
- self.__class__.sample = RomStr(self.sample_text)
-
- def test_equals(self):
- "check if RomStr() == str()"
- self.assertEquals(self.sample_text, self.sample)
-
- def test_not_equal(self):
- "check if RomStr('a') != RomStr('b')"
- self.assertNotEqual(RomStr('a'), RomStr('b'))
-
- def test_appending(self):
- "check if RomStr()+'a'==str()+'a'"
- self.assertEquals(self.sample_text+'a', self.sample+'a')
-
- def test_conversion(self):
- "check if RomStr() -> str() works"
- self.assertEquals(str(self.sample), self.sample_text)
-
- def test_inheritance(self):
- self.failUnless(issubclass(RomStr, str))
-
- def test_length(self):
- self.assertEquals(len(self.sample_text), len(self.sample))
- self.assertEquals(len(self.sample_text), self.sample.length())
- self.assertEquals(len(self.sample), self.sample.length())
-
- def test_rom_interval(self):
- global rom
- load_rom()
- address = 0x100
- interval = 10
- correct_strings = ['0x0', '0xc3', '0x6e', '0x1', '0xce',
- '0xed', '0x66', '0x66', '0xcc', '0xd']
- byte_strings = rom.interval(address, interval, strings=True)
- self.assertEqual(byte_strings, correct_strings)
- correct_ints = [0, 195, 110, 1, 206, 237, 102, 102, 204, 13]
- ints = rom.interval(address, interval, strings=False)
- self.assertEqual(ints, correct_ints)
-
- def test_rom_until(self):
- global rom
- load_rom()
- address = 0x1337
- byte = 0x13
- bytes = rom.until(address, byte, strings=True)
- self.failUnless(len(bytes) == 3)
- self.failUnless(bytes[0] == '0xd5')
- bytes = rom.until(address, byte, strings=False)
- self.failUnless(len(bytes) == 3)
- self.failUnless(bytes[0] == 0xd5)
-
-
-class TestAsmList(unittest.TestCase):
- """AsmList is a class that should act exactly like list()
- except that it never shows the contents of its list
- unless explicitly forced"""
-
- def test_equals(self):
- base = [1,2,3]
- asm = AsmList(base)
- self.assertEquals(base, asm)
- self.assertEquals(asm, base)
- self.assertEquals(base, list(asm))
-
- def test_inheritance(self):
- self.failUnless(issubclass(AsmList, list))
-
- def test_length(self):
- base = range(0, 10)
- asm = AsmList(base)
- self.assertEquals(len(base), len(asm))
- self.assertEquals(len(base), asm.length())
- self.assertEquals(len(base), len(list(asm)))
- self.assertEquals(len(asm), asm.length())
-
- def test_remove_quoted_text(self):
- x = remove_quoted_text
- self.assertEqual(x("hello world"), "hello world")
- self.assertEqual(x("hello \"world\""), "hello ")
- input = 'hello world "testing 123"'
- self.assertNotEqual(x(input), input)
- input = "hello world 'testing 123'"
- self.assertNotEqual(x(input), input)
- self.failIf("testing" in x(input))
-
- def test_line_has_comment_address(self):
- x = line_has_comment_address
- self.assertFalse(x(""))
- self.assertFalse(x(";"))
- self.assertFalse(x(";;;"))
- self.assertFalse(x(":;"))
- self.assertFalse(x(":;:"))
- self.assertFalse(x(";:"))
- self.assertFalse(x(" "))
- self.assertFalse(x("".join(" " * 5)))
- self.assertFalse(x("".join(" " * 10)))
- self.assertFalse(x("hello world"))
- self.assertFalse(x("hello_world"))
- self.assertFalse(x("hello_world:"))
- self.assertFalse(x("hello_world:;"))
- self.assertFalse(x("hello_world: ;"))
- self.assertFalse(x("hello_world: ; "))
- self.assertFalse(x("hello_world: ;" + "".join(" " * 5)))
- self.assertFalse(x("hello_world: ;" + "".join(" " * 10)))
- self.assertTrue(x(";1"))
- self.assertTrue(x(";F"))
- self.assertTrue(x(";$00FF"))
- self.assertTrue(x(";0x00FF"))
- self.assertTrue(x("; 0x00FF"))
- self.assertTrue(x(";$3:$300"))
- self.assertTrue(x(";0x3:$300"))
- self.assertTrue(x(";$3:0x300"))
- self.assertTrue(x(";3:300"))
- self.assertTrue(x(";3:FFAA"))
- self.assertFalse(x('hello world "how are you today;0x1"'))
- self.assertTrue(x('hello world "how are you today:0x1";1'))
- returnable = {}
- self.assertTrue(x("hello_world: ; 0x4050", returnable=returnable, bank=5))
- self.assertTrue(returnable["address"] == 0x14050)
-
- def test_line_has_label(self):
- x = line_has_label
- self.assertTrue(x("hi:"))
- self.assertTrue(x("Hello: "))
- self.assertTrue(x("MyLabel: ; test xyz"))
- self.assertFalse(x(":"))
- self.assertFalse(x(";HelloWorld:"))
- self.assertFalse(x("::::"))
- self.assertFalse(x(":;:;:;:::"))
-
- def test_get_label_from_line(self):
- x = get_label_from_line
- self.assertEqual(x("HelloWorld: "), "HelloWorld")
- self.assertEqual(x("HiWorld:"), "HiWorld")
- self.assertEqual(x("HiWorld"), None)
-
- def test_find_labels_without_addresses(self):
- global asm
- asm = ["hello_world: ; 0x1", "hello_world2: ;"]
- labels = find_labels_without_addresses()
- self.failUnless(labels[0]["label"] == "hello_world2")
- asm = ["hello world: ;1", "hello_world: ;2"]
- labels = find_labels_without_addresses()
- self.failUnless(len(labels) == 0)
- asm = None
-
- def test_get_labels_between(self):
- global asm
- x = get_labels_between#(start_line_id, end_line_id, bank)
- asm = ["HelloWorld: ;1",
- "hi:",
- "no label on this line",
- ]
- labels = x(0, 2, 0x12)
- self.assertEqual(len(labels), 1)
- self.assertEqual(labels[0]["label"], "HelloWorld")
- del asm
-
- def test_scan_for_predefined_labels(self):
- # label keys: line_number, bank, label, offset, address
- load_asm()
- all_labels = scan_for_predefined_labels()
- label_names = [x["label"] for x in all_labels]
- self.assertIn("GetFarByte", label_names)
- self.assertIn("AddNTimes", label_names)
- self.assertIn("CheckShininess", label_names)
-
- def test_write_all_labels(self):
- """dumping json into a file"""
- filename = "test_labels.json"
- # remove the current file
- if os.path.exists(filename):
- os.system("rm " + filename)
- # make up some labels
- labels = []
- # fake label 1
- label = {"line_number": 5, "bank": 0, "label": "SomeLabel", "address": 0x10}
- labels.append(label)
- # fake label 2
- label = {"line_number": 15, "bank": 2, "label": "SomeOtherLabel", "address": 0x9F0A}
- labels.append(label)
- # dump to file
- write_all_labels(labels, filename=filename)
- # open the file and read the contents
- file_handler = open(filename, "r")
- contents = file_handler.read()
- file_handler.close()
- # parse into json
- obj = json.read(contents)
- # begin testing
- self.assertEqual(len(obj), len(labels))
- self.assertEqual(len(obj), 2)
- self.assertEqual(obj, labels)
-
- def test_isolate_incbins(self):
- global asm
- asm = ["123", "456", "789", "abc", "def", "ghi",
- 'INCBIN "baserom.gbc",$12DA,$12F8 - $12DA',
- "jkl",
- 'INCBIN "baserom.gbc",$137A,$13D0 - $137A']
- lines = isolate_incbins()
- self.assertIn(asm[6], lines)
- self.assertIn(asm[8], lines)
- for line in lines:
- self.assertIn("baserom", line)
-
- def test_process_incbins(self):
- global incbin_lines, processed_incbins, asm
- incbin_lines = ['INCBIN "baserom.gbc",$12DA,$12F8 - $12DA',
- 'INCBIN "baserom.gbc",$137A,$13D0 - $137A']
- asm = copy(incbin_lines)
- asm.insert(1, "some other random line")
- processed_incbins = process_incbins()
- self.assertEqual(len(processed_incbins), len(incbin_lines))
- self.assertEqual(processed_incbins[0]["line"], incbin_lines[0])
- self.assertEqual(processed_incbins[2]["line"], incbin_lines[1])
-
- def test_reset_incbins(self):
- global asm, incbin_lines, processed_incbins
- # temporarily override the functions
- global load_asm, isolate_incbins, process_incbins
- temp1, temp2, temp3 = load_asm, isolate_incbins, process_incbins
- def load_asm(): pass
- def isolate_incbins(): pass
- def process_incbins(): pass
- # call reset
- reset_incbins()
- # check the results
- self.assertTrue(asm == [] or asm == None)
- self.assertTrue(incbin_lines == [])
- self.assertTrue(processed_incbins == {})
- # reset the original functions
- load_asm, isolate_incbins, process_incbins = temp1, temp2, temp3
-
- def test_find_incbin_to_replace_for(self):
- global asm, incbin_lines, processed_incbins
- asm = ['first line', 'second line', 'third line',
- 'INCBIN "baserom.gbc",$90,$200 - $90',
- 'fifth line', 'last line']
- isolate_incbins()
- process_incbins()
- line_num = find_incbin_to_replace_for(0x100)
- # must be the 4th line (the INBIN line)
- self.assertEqual(line_num, 3)
-
- def test_split_incbin_line_into_three(self):
- global asm, incbin_lines, processed_incbins
- asm = ['first line', 'second line', 'third line',
- 'INCBIN "baserom.gbc",$90,$200 - $90',
- 'fifth line', 'last line']
- isolate_incbins()
- process_incbins()
- content = split_incbin_line_into_three(3, 0x100, 10)
- # must end up with three INCBINs in output
- self.failUnless(content.count("INCBIN") == 3)
-
- def test_analyze_intervals(self):
- global asm, incbin_lines, processed_incbins
- asm, incbin_lines, processed_incbins = None, [], {}
- asm = ['first line', 'second line', 'third line',
- 'INCBIN "baserom.gbc",$90,$200 - $90',
- 'fifth line', 'last line',
- 'INCBIN "baserom.gbc",$33F,$4000 - $33F']
- isolate_incbins()
- process_incbins()
- largest = analyze_intervals()
- self.assertEqual(largest[0]["line_number"], 6)
- self.assertEqual(largest[0]["line"], asm[6])
- self.assertEqual(largest[1]["line_number"], 3)
- self.assertEqual(largest[1]["line"], asm[3])
-
- def test_generate_diff_insert(self):
- global asm
- asm = ['first line', 'second line', 'third line',
- 'INCBIN "baserom.gbc",$90,$200 - $90',
- 'fifth line', 'last line',
- 'INCBIN "baserom.gbc",$33F,$4000 - $33F']
- diff = generate_diff_insert(0, "the real first line", debug=False)
- self.assertIn("the real first line", diff)
- self.assertIn("INCBIN", diff)
- self.assertNotIn("No newline at end of file", diff)
- self.assertIn("+"+asm[1], diff)
-
-
-class TestMapParsing(unittest.TestCase):
- def test_parse_all_map_headers(self):
- global parse_map_header_at, old_parse_map_header_at, counter
- counter = 0
- for k in map_names.keys():
- if "offset" not in map_names[k].keys():
- map_names[k]["offset"] = 0
- temp = parse_map_header_at
- temp2 = old_parse_map_header_at
- def parse_map_header_at(address, map_group=None, map_id=None, debug=False):
- global counter
- counter += 1
- return {}
- old_parse_map_header_at = parse_map_header_at
- parse_all_map_headers(debug=False)
- # parse_all_map_headers is currently doing it 2x
- # because of the new/old map header parsing routines
- self.assertEqual(counter, 388 * 2)
- parse_map_header_at = temp
- old_parse_map_header_at = temp2
-
-class TestTextScript(unittest.TestCase):
- """for testing 'in-script' commands, etc."""
- #def test_to_asm(self):
- # pass # or raise NotImplementedError, bryan_message
- #def test_find_addresses(self):
- # pass # or raise NotImplementedError, bryan_message
- #def test_parse_text_at(self):
- # pass # or raise NotImplementedError, bryan_message
-
-
-class TestEncodedText(unittest.TestCase):
- """for testing chars-table encoded text chunks"""
-
- def test_process_00_subcommands(self):
- g = process_00_subcommands(0x197186, 0x197186+601, debug=False)
- self.assertEqual(len(g), 42)
- self.assertEqual(len(g[0]), 13)
- self.assertEqual(g[1], [184, 174, 180, 211, 164, 127, 20, 231, 81])
-
- def test_parse_text_at2(self):
- oakspeech = parse_text_at2(0x197186, 601, debug=False)
- self.assertIn("encyclopedia", oakspeech)
- self.assertIn("researcher", oakspeech)
- self.assertIn("dependable", oakspeech)
-
- def test_parse_text_engine_script_at(self):
- p = parse_text_engine_script_at(0x197185, debug=False)
- self.assertEqual(len(p.commands), 2)
- self.assertEqual(len(p.commands[0]["lines"]), 41)
-
- # don't really care about these other two
- def test_parse_text_from_bytes(self): pass
- def test_parse_text_at(self): pass
-
-
-class TestScript(unittest.TestCase):
- """for testing parse_script_engine_script_at and script parsing in
- general. Script should be a class."""
- #def test_parse_script_engine_script_at(self):
- # pass # or raise NotImplementedError, bryan_message
-
- def test_find_all_text_pointers_in_script_engine_script(self):
- address = 0x197637 # 0x197634
- script = parse_script_engine_script_at(address, debug=False)
- bank = calculate_bank(address)
- r = find_all_text_pointers_in_script_engine_script(script, bank=bank, debug=False)
- results = list(r)
- self.assertIn(0x197661, results)
-
-
-class TestLabel(unittest.TestCase):
- def test_label_making(self):
- line_number = 2
- address = 0xf0c0
- label_name = "poop"
- l = Label(name=label_name, address=address, line_number=line_number)
- self.failUnless(hasattr(l, "name"))
- self.failUnless(hasattr(l, "address"))
- self.failUnless(hasattr(l, "line_number"))
- self.failIf(isinstance(l.address, str))
- self.failIf(isinstance(l.line_number, str))
- self.failUnless(isinstance(l.name, str))
- self.assertEqual(l.line_number, line_number)
- self.assertEqual(l.name, label_name)
- self.assertEqual(l.address, address)
-
-
-class TestByteParams(unittest.TestCase):
- @classmethod
- def setUpClass(cls):
- load_rom()
- cls.address = 10
- cls.sbp = SingleByteParam(address=cls.address)
-
- @classmethod
- def tearDownClass(cls):
- del cls.sbp
-
- def test__init__(self):
- self.assertEqual(self.sbp.size, 1)
- self.assertEqual(self.sbp.address, self.address)
-
- def test_parse(self):
- self.sbp.parse()
- self.assertEqual(str(self.sbp.byte), str(45))
-
- def test_to_asm(self):
- self.assertEqual(self.sbp.to_asm(), "$2d")
- self.sbp.should_be_decimal = True
- self.assertEqual(self.sbp.to_asm(), str(45))
-
- # HexByte and DollarSignByte are the same now
- def test_HexByte_to_asm(self):
- h = HexByte(address=10)
- a = h.to_asm()
- self.assertEqual(a, "$2d")
-
- def test_DollarSignByte_to_asm(self):
- d = DollarSignByte(address=10)
- a = d.to_asm()
- self.assertEqual(a, "$2d")
-
- def test_ItemLabelByte_to_asm(self):
- i = ItemLabelByte(address=433)
- self.assertEqual(i.byte, 54)
- self.assertEqual(i.to_asm(), "COIN_CASE")
- self.assertEqual(ItemLabelByte(address=10).to_asm(), "$2d")
-
- def test_DecimalParam_to_asm(self):
- d = DecimalParam(address=10)
- x = d.to_asm()
- self.assertEqual(x, str(0x2d))
-
-
-class TestMultiByteParam(unittest.TestCase):
- def setup_for(self, somecls, byte_size=2, address=443, **kwargs):
- self.cls = somecls(address=address, size=byte_size, **kwargs)
- self.assertEqual(self.cls.address, address)
- self.assertEqual(self.cls.bytes, rom_interval(address, byte_size, strings=False))
- self.assertEqual(self.cls.size, byte_size)
-
- def test_two_byte_param(self):
- self.setup_for(MultiByteParam, byte_size=2)
- self.assertEqual(self.cls.to_asm(), "$f0c0")
-
- def test_three_byte_param(self):
- self.setup_for(MultiByteParam, byte_size=3)
-
- def test_PointerLabelParam_no_bank(self):
- self.setup_for(PointerLabelParam, bank=None)
- # assuming no label at this location..
- self.assertEqual(self.cls.to_asm(), "$f0c0")
- global all_labels
- # hm.. maybe all_labels should be using a class?
- all_labels = [{"label": "poop", "address": 0xf0c0,
- "offset": 0xf0c0, "bank": 0,
- "line_number": 2
- }]
- self.assertEqual(self.cls.to_asm(), "poop")
-
-
-class TestPostParsing: #(unittest.TestCase):
- """tests that must be run after parsing all maps"""
- @classmethod
- def setUpClass(cls):
- run_main()
-
- def test_signpost_counts(self):
- self.assertEqual(len(map_names[1][1]["signposts"]), 0)
- self.assertEqual(len(map_names[1][2]["signposts"]), 2)
- self.assertEqual(len(map_names[10][5]["signposts"]), 7)
-
- def test_warp_counts(self):
- self.assertEqual(map_names[10][5]["warp_count"], 9)
- self.assertEqual(map_names[18][5]["warp_count"], 3)
- self.assertEqual(map_names[15][1]["warp_count"], 2)
-
- def test_map_sizes(self):
- self.assertEqual(map_names[15][1]["height"], 18)
- self.assertEqual(map_names[15][1]["width"], 10)
- self.assertEqual(map_names[7][1]["height"], 4)
- self.assertEqual(map_names[7][1]["width"], 4)
-
- def test_map_connection_counts(self):
- self.assertEqual(map_names[7][1]["connections"], 0)
- self.assertEqual(map_names[10][1]["connections"], 12)
- self.assertEqual(map_names[10][2]["connections"], 12)
- self.assertEqual(map_names[11][1]["connections"], 9) # or 13?
-
- def test_second_map_header_address(self):
- self.assertEqual(map_names[11][1]["second_map_header_address"], 0x9509c)
- self.assertEqual(map_names[1][5]["second_map_header_address"], 0x95bd0)
-
- def test_event_address(self):
- self.assertEqual(map_names[17][5]["event_address"], 0x194d67)
- self.assertEqual(map_names[23][3]["event_address"], 0x1a9ec9)
-
- def test_people_event_counts(self):
- self.assertEqual(len(map_names[23][3]["people_events"]), 4)
- self.assertEqual(len(map_names[10][3]["people_events"]), 9)
-
-
-class TestMetaTesting(unittest.TestCase):
- """test whether or not i am finding at least
- some of the tests in this file"""
- tests = None
-
- def setUp(self):
- if self.tests == None:
- self.__class__.tests = assemble_test_cases()
-
- def test_assemble_test_cases_count(self):
- "does assemble_test_cases find some tests?"
- self.failUnless(len(self.tests) > 0)
-
- def test_assemble_test_cases_inclusion(self):
- "is this class found by assemble_test_cases?"
- # i guess it would have to be for this to be running?
- self.failUnless(self.__class__ in self.tests)
-
- def test_assemble_test_cases_others(self):
- "test other inclusions for assemble_test_cases"
- self.failUnless(TestRomStr in self.tests)
- self.failUnless(TestCram in self.tests)
-
- def test_check_has_test(self):
- self.failUnless(check_has_test("beaver", ["test_beaver"]))
- self.failUnless(check_has_test("beaver", ["test_beaver_2"]))
- self.failIf(check_has_test("beaver_1", ["test_beaver"]))
-
- def test_find_untested_methods(self):
- untested = find_untested_methods()
- # the return type must be an iterable
- self.failUnless(hasattr(untested, "__iter__"))
- #.. basically, a list
- self.failUnless(isinstance(untested, list))
-
- def test_find_untested_methods_method(self):
- """create a function and see if it is found"""
- # setup a function in the global namespace
- global some_random_test_method
- # define the method
- def some_random_test_method(): pass
- # first make sure it is in the global scope
- members = inspect.getmembers(sys.modules[__name__], inspect.isfunction)
- func_names = [functuple[0] for functuple in members]
- self.assertIn("some_random_test_method", func_names)
- # test whether or not it is found by find_untested_methods
- untested = find_untested_methods()
- self.assertIn("some_random_test_method", untested)
- # remove the test method from the global namespace
- del some_random_test_method
-
- def test_load_tests(self):
- loader = unittest.TestLoader()
- suite = load_tests(loader, None, None)
- suite._tests[0]._testMethodName
- membership_test = lambda member: \
- inspect.isclass(member) and issubclass(member, unittest.TestCase)
- tests = inspect.getmembers(sys.modules[__name__], membership_test)
- classes = [x[1] for x in tests]
- for test in suite._tests:
- self.assertIn(test.__class__, classes)
-
- def test_report_untested(self):
- untested = find_untested_methods()
- output = report_untested()
- if len(untested) > 0:
- self.assertIn("NOT TESTED", output)
- for name in untested:
- self.assertIn(name, output)
- elif len(untested) == 0:
- self.assertNotIn("NOT TESTED", output)
-
-
-def assemble_test_cases():
- """finds classes that inherit from unittest.TestCase
- because i am too lazy to remember to add them to a
- global list of tests for the suite runner"""
- classes = []
- clsmembers = inspect.getmembers(sys.modules[__name__], inspect.isclass)
- for (name, some_class) in clsmembers:
- if issubclass(some_class, unittest.TestCase):
- classes.append(some_class)
- return classes
-
-def load_tests(loader, tests, pattern):
- suite = unittest.TestSuite()
- for test_class in assemble_test_cases():
- tests = loader.loadTestsFromTestCase(test_class)
- suite.addTests(tests)
- return suite
-
-def check_has_test(func_name, tested_names):
- """checks if there is a test dedicated to this function"""
- if "test_"+func_name in tested_names:
- return True
- for name in tested_names:
- if "test_"+func_name in name:
- return True
- return False
-
-def find_untested_methods():
- """finds all untested functions in this module
- by searching for method names in test case
- method names."""
- untested = []
- avoid_funcs = ["main", "run_tests", "run_main", "copy", "deepcopy"]
- test_funcs = []
- # get a list of all classes in this module
- classes = inspect.getmembers(sys.modules[__name__], inspect.isclass)
- # for each class..
- for (name, klass) in classes:
- # only look at those that have tests
- if issubclass(klass, unittest.TestCase):
- # look at this class' methods
- funcs = inspect.getmembers(klass, inspect.ismethod)
- # for each method..
- for (name2, func) in funcs:
- # store the ones that begin with test_
- if "test_" in name2 and name2[0:5] == "test_":
- test_funcs.append([name2, func])
- # assemble a list of all test method names (test_x, test_y, ..)
- tested_names = [funcz[0] for funcz in test_funcs]
- # now get a list of all functions in this module
- funcs = inspect.getmembers(sys.modules[__name__], inspect.isfunction)
- # for each function..
- for (name, func) in funcs:
- # we don't care about some of these
- if name in avoid_funcs: continue
- # skip functions beginning with _
- if name[0] == "_": continue
- # check if this function has a test named after it
- has_test = check_has_test(name, tested_names)
- if not has_test:
- untested.append(name)
- return untested
-
-def report_untested():
- untested = find_untested_methods()
- output = "NOT TESTED: ["
- first = True
- for name in untested:
- if first:
- output += name
- first = False
- else: output += ", "+name
- output += "]\n"
- output += "total untested: " + str(len(untested))
- return output
-
-#### ways to run this file ####
-
-def run_tests(): # rather than unittest.main()
- loader = unittest.TestLoader()
- suite = load_tests(loader, None, None)
- unittest.TextTestRunner(verbosity=2).run(suite)
- print report_untested()
-
def run_main():
# read the rom and figure out the offsets for maps
direct_load_rom()
@@ -8848,10 +7845,9 @@ def run_main():
make_trainer_group_name_trainer_ids(trainer_group_table)
# just a helpful alias
-main=run_main
-# when you run the file.. do unit tests
-if __name__ == "__main__":
- run_tests()
+main = run_main
+
# when you load the module.. parse everything
-elif __name__ == "crystal": pass
- #run_main()
+if __name__ == "crystal":
+ pass
+
diff --git a/extras/dump_sections b/extras/dump_sections
new file mode 100755
index 000000000..362318f30
--- /dev/null
+++ b/extras/dump_sections
@@ -0,0 +1,14 @@
+#!/bin/bash
+# This wraps dump_sections.py so that other python scripts can import the
+# functions. If dump_sections.py was instead called dump_sections, then other
+# python source code would be unable to use the functions via import
+# statements.
+
+# figure out the path to this script
+cwd="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# construct the path to dump_sections.py
+secpath=$cwd/dump_sections.py
+
+# run dump_sections.py
+$secpath $1
diff --git a/extras/dump_sections.py b/extras/dump_sections.py
new file mode 100755
index 000000000..91306e40f
--- /dev/null
+++ b/extras/dump_sections.py
@@ -0,0 +1,130 @@
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+"""
+Use this tool to dump an asm file for a new source code or disassembly project.
+
+usage:
+
+ from dump_sections import dump_sections
+
+ output = dump_sections("../../butt.gbc")
+
+ file_handler = open("main.asm", "w")
+ file_handler.write(output)
+ file_handler.close()
+
+You can also use this script from the shell, where it will look for
+"baserom.gbc" in the current working path or whatever file path you pass in the
+first positional argument.
+"""
+
+import os
+import sys
+import argparse
+
+def upper_hex(input):
+ """
+ Converts the input to an uppercase hex string.
+ """
+ if input in [0, "0"]:
+ return "0"
+ elif input <= 0xF:
+ return ("%.x" % (input)).upper()
+ else:
+ return ("%.2x" % (input)).upper()
+
+def format_bank_number(address, bank_size=0x4000):
+ """
+ Returns a str of the hex number of the bank based on the address.
+ """
+ return upper_hex(address / bank_size)
+
+def calculate_bank_quantity(path, bank_size=0x4000):
+ """
+ Returns the number of 0x4000 banks in the file at path.
+ """
+ return float(os.lstat(path).st_size) / bank_size
+
+def dump_section(bank_number, separator="\n\n"):
+ """
+ Returns a str of a section header for the asm file.
+ """
+ output = "SECTION \""
+ if bank_number in [0, "0"]:
+ output += "bank0\",HOME"
+ else:
+ output += "bank"
+ output += bank_number
+ output += "\",DATA,BANK[$"
+ output += bank_number
+ output += "]"
+ output += separator
+ return output
+
+def dump_incbin_for_section(address, bank_size=0x4000, baserom="baserom.gbc", separator="\n\n"):
+ """
+ Returns a str for an INCBIN line for an entire section.
+ """
+ output = "INCBIN \""
+ output += baserom
+ output += "\",$"
+ output += upper_hex(address)
+ output += ",$"
+ output += upper_hex(bank_size)
+ output += separator
+ return output
+
+def dump_sections(path, bank_size=0x4000, initial_bank=0, last_bank=None, separator="\n\n"):
+ """
+ Returns a str of assembly source code. The source code delineates each
+ SECTION and includes bytes from the file specified by baserom.
+ """
+ if not last_bank:
+ last_bank = calculate_bank_quantity(path, bank_size=bank_size)
+
+ if last_bank < initial_bank:
+ raise Exception("last_bank must be greater than or equal to initial_bank")
+
+ baserom_name = os.path.basename(path)
+
+ output = ""
+
+ banks = range(initial_bank, last_bank)
+
+ for bank_number in banks:
+ address = bank_number * bank_size
+
+ # get a formatted hex number of the bank based on the address
+ formatted_bank_number = format_bank_number(address, bank_size=bank_size)
+
+ # SECTION
+ output += dump_section(formatted_bank_number, separator=separator)
+
+ # INCBIN a range of bytes from the ROM
+ output += dump_incbin_for_section(address, bank_size=bank_size, baserom=baserom_name, separator=separator)
+
+ # clean up newlines at the end of the output
+ if output[-2:] == "\n\n":
+ output = output[:-2]
+ output += "\n"
+
+ return output
+
+if __name__ == "__main__":
+ parser = argparse.ArgumentParser()
+ parser.add_argument("rompath", nargs="?", metavar="rompath", type=str)
+ args = parser.parse_args()
+
+ # default to "baserom.gbc" in the current working directory
+ baserom = "baserom.gbc"
+
+ # but let the user override the default
+ if args.rompath:
+ baserom = args.rompath
+
+ # generate some asm
+ output = dump_sections(baserom)
+
+ # dump everything to stdout
+ sys.stdout.write(output)
+
diff --git a/extras/gbz80disasm.py b/extras/gbz80disasm.py
index 48739e03f..f2ba4839f 100644
--- a/extras/gbz80disasm.py
+++ b/extras/gbz80disasm.py
@@ -1,26 +1,28 @@
-#author: Bryan Bishop <kanzure@gmail.com>
-#date: 2012-01-09
+# -*- coding: utf-8 -*-
+
import os
import sys
from copy import copy, deepcopy
from ctypes import c_int8
-import json
import random
+import json
-spacing = "\t"
+# New versions of json don't have read anymore.
+if not hasattr(json, "read"):
+ json.read = json.loads
-class XRomStr(str):
- def __repr__(self):
- return "RomStr(too long)"
+from romstr import RomStr
def load_rom(filename="../baserom.gbc"):
"""loads bytes into memory"""
global rom
- file_handler = open(filename, "rb")
- rom = XRomStr(file_handler.read())
+ file_handler = open(filename, "rb")
+ rom = RomStr(file_handler.read())
file_handler.close()
return rom
+spacing = "\t"
+
temp_opt_table = [
[ "ADC A", 0x8f, 0 ],
[ "ADC B", 0x88, 0 ],
@@ -550,7 +552,7 @@ end_08_scripts_with = [
0xc9, #ret
###0xda, 0xe9, 0xd2, 0xc2, 0xca, 0xc3, 0x38, 0x30, 0x20, 0x28, 0x18, 0xd8, 0xd0, 0xc0, 0xc8, 0xc9
]
-relative_jumps = [0x38, 0x30, 0x20, 0x28, 0x18, 0xc3, 0xda, 0xc2]
+relative_jumps = [0x38, 0x30, 0x20, 0x28, 0x18, 0xc3, 0xda, 0xc2]
relative_unconditional_jumps = [0xc3, 0x18]
call_commands = [0xdc, 0xd4, 0xc4, 0xcc, 0xcd]
@@ -559,7 +561,7 @@ all_labels = {}
def load_labels(filename="labels.json"):
global all_labels
if os.path.exists(filename):
- all_labels = json.loads(open(filename, "r").read())
+ all_labels = json.read(open(filename, "r").read())
else:
print "You must run crystal.scan_for_predefined_labels() to create \"labels.json\". Trying..."
import crystal
@@ -601,10 +603,10 @@ def output_bank_opcodes(original_offset, max_byte_count=0x4000, debug = False):
#i = offset
#ad = end_address
#a, oa = current_byte_number
-
+
load_labels()
load_rom()
-
+
bank_id = 0
if original_offset > 0x8000:
bank_id = original_offset / 0x4000
diff --git a/extras/gfx.py b/extras/gfx.py
index f36b944d7..67bb66404 100644
--- a/extras/gfx.py
+++ b/extras/gfx.py
@@ -1043,14 +1043,16 @@ def decompress_monsters(type = front):
# decompress
monster = decompress_monster_by_id(id, type)
if monster != None: # no unowns here
- filename = str(id+1).zfill(3) + '.2bpp' # 001.2bpp
if not type: # front
- folder = '../gfx/frontpics/'
+ filename = 'front.2bpp'
+ folder = '../gfx/pics/' + str(id+1).zfill(3) + '/'
to_file(folder+filename, monster.pic)
- folder = '../gfx/anim/'
+ filename = 'tiles.2bpp'
+ folder = '../gfx/pics/' + str(id+1).zfill(3) + '/'
to_file(folder+filename, monster.animtiles)
else: # back
- folder = '../gfx/backpics/'
+ filename = 'back.2bpp'
+ folder = '../gfx/pics/' + str(id+1).zfill(3) + '/'
to_file(folder+filename, monster.pic)
@@ -1073,14 +1075,16 @@ def decompress_unowns(type = front):
# decompress
unown = decompress_unown_by_id(letter, type)
- filename = str(unown_dex).zfill(3) + chr(ord('a') + letter) + '.2bpp' # 201a.2bpp
if not type: # front
- folder = '../gfx/frontpics/'
+ filename = 'front.2bpp'
+ folder = '../gfx/pics/' + str(unown_dex).zfill(3) + chr(ord('a') + letter) + '/'
to_file(folder+filename, unown.pic)
+ filename = 'tiles.2bpp'
folder = '../gfx/anim/'
to_file(folder+filename, unown.animtiles)
else: # back
- folder = '../gfx/backpics/'
+ filename = 'back.2bpp'
+ folder = '../gfx/pics/' + str(unown_dex).zfill(3) + chr(ord('a') + letter) + '/'
to_file(folder+filename, unown.pic)
@@ -1255,8 +1259,8 @@ def compress_file(filein, fileout, mode = 'horiz'):
def compress_monster_frontpic(id, fileout):
mode = 'vert'
- fpic = '../gfx/frontpics/' + str(id).zfill(3) + '.2bpp'
- fanim = '../gfx/anim/' + str(id).zfill(3) + '.2bpp'
+ fpic = '../gfx/pics/' + str(id).zfill(3) + '/front.2bpp'
+ fanim = '../gfx/pics/' + str(id).zfill(3) + '/tiles.2bpp'
pic = open(fpic, 'rb').read()
anim = open(fanim, 'rb').read()
@@ -1264,7 +1268,7 @@ def compress_monster_frontpic(id, fileout):
lz = Compressed(image, mode, 5)
- out = '../gfx/frontpics/lz/' + str(id).zfill(3) + '.lz'
+ out = '../gfx/pics/' + str(id).zfill(3) + '/front.lz'
to_file(out, lz.output)
@@ -1283,6 +1287,28 @@ def get_uncompressed_gfx(start, num_tiles, filename):
+def hex_to_rgb(word):
+ red = word & 0b11111
+ word >>= 5
+ green = word & 0b11111
+ word >>= 5
+ blue = word & 0b11111
+ return (red, green, blue)
+
+def grab_palettes(address, length = 0x80):
+ output = ''
+ for word in range(length/2):
+ color = ord(rom[address+1])*0x100 + ord(rom[address])
+ address += 2
+ color = hex_to_rgb(color)
+ red = str(color[0]).zfill(2)
+ green = str(color[1]).zfill(2)
+ blue = str(color[2]).zfill(2)
+ output += '\tRGB '+red+', '+green+', '+blue
+ output += '\n'
+ return output
+
+
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('cmd', nargs='?', metavar='cmd', type=str)
@@ -1317,7 +1343,11 @@ if __name__ == "__main__":
# python gfx.py un [address] [num_tiles] [filename]
get_uncompressed_gfx(int(args.arg1,16), int(args.arg2), args.arg3)
- else:
- # python gfx.py
- decompress_all()
- if debug: print 'decompressed known gfx to ../gfx/!'
+ elif args.cmd == 'pal':
+ # python gfx.py pal [address] [length]
+ print grab_palettes(int(args.arg1,16), int(args.arg2))
+
+ #else:
+ ## python gfx.py
+ #decompress_all()
+ #if debug: print 'decompressed known gfx to ../gfx/!'
diff --git a/extras/graph.py b/extras/graph.py
index 98f871ae2..b5450835f 100644
--- a/extras/graph.py
+++ b/extras/graph.py
@@ -1,12 +1,13 @@
-#!/usr/bin/python
-# author: Bryan Bishop <kanzure@gmail.com>
-# date: 2012-06-20
+# -*- coding: utf-8 -*-
import networkx as nx
-from romstr import RomStr, DisAsm, \
- relative_jumps, call_commands, \
- relative_unconditional_jumps
+from romstr import (
+ RomStr,
+ relative_jumps,
+ call_commands,
+ relative_unconditional_jumps,
+)
class RomGraph(nx.DiGraph):
""" Graphs various functions pointing to each other.
diff --git a/extras/interval_map.py b/extras/interval_map.py
new file mode 100644
index 000000000..7e6c5cdb5
--- /dev/null
+++ b/extras/interval_map.py
@@ -0,0 +1,104 @@
+# -*- coding: utf-8 -*-
+
+from bisect import bisect_left, bisect_right
+from itertools import izip
+
+class IntervalMap(object):
+ """
+ This class maps a set of intervals to a set of values.
+
+ >>> i = IntervalMap()
+ >>> i[0:5] = "hello world"
+ >>> i[6:10] = "hello cruel world"
+ >>> print i[4]
+ "hello world"
+ """
+
+ def __init__(self):
+ """initializes an empty IntervalMap"""
+ self._bounds = []
+ self._items = []
+ self._upperitem = None
+
+ def __setitem__(self, _slice, _value):
+ """sets an interval mapping"""
+ assert isinstance(_slice, slice), 'The key must be a slice object'
+
+ if _slice.start is None:
+ start_point = -1
+ else:
+ start_point = bisect_left(self._bounds, _slice.start)
+
+ if _slice.stop is None:
+ end_point = -1
+ else:
+ end_point = bisect_left(self._bounds, _slice.stop)
+
+ if start_point>=0:
+ if start_point < len(self._bounds) and self._bounds[start_point]<_slice.start:
+ start_point += 1
+
+ if end_point>=0:
+ self._bounds[start_point:end_point] = [_slice.start, _slice.stop]
+ if start_point < len(self._items):
+ self._items[start_point:end_point] = [self._items[start_point], _value]
+ else:
+ self._items[start_point:end_point] = [self._upperitem, _value]
+ else:
+ self._bounds[start_point:] = [_slice.start]
+ if start_point < len(self._items):
+ self._items[start_point:] = [self._items[start_point], _value]
+ else:
+ self._items[start_point:] = [self._upperitem]
+ self._upperitem = _value
+ else:
+ if end_point>=0:
+ self._bounds[:end_point] = [_slice.stop]
+ self._items[:end_point] = [_value]
+ else:
+ self._bounds[:] = []
+ self._items[:] = []
+ self._upperitem = _value
+
+ def __getitem__(self,_point):
+ """gets a value from the mapping"""
+ assert not isinstance(_point, slice), 'The key cannot be a slice object'
+
+ index = bisect_right(self._bounds, _point)
+ if index < len(self._bounds):
+ return self._items[index]
+ else:
+ return self._upperitem
+
+ def items(self):
+ """returns an iterator with each item being
+ ((low_bound, high_bound), value)
+ these items are returned in order"""
+ previous_bound = None
+ for (b, v) in izip(self._bounds, self._items):
+ if v is not None:
+ yield (previous_bound, b), v
+ previous_bound = b
+ if self._upperitem is not None:
+ yield (previous_bound, None), self._upperitem
+
+ def values(self):
+ """returns an iterator with each item being a stored value
+ the items are returned in order"""
+ for v in self._items:
+ if v is not None:
+ yield v
+ if self._upperitem is not None:
+ yield self._upperitem
+
+ def __repr__(self):
+ s = []
+ for b,v in self.items():
+ if v is not None:
+ s.append('[%r, %r] => %r'%(
+ b[0],
+ b[1],
+ v
+ ))
+ return '{'+', '.join(s)+'}'
+
diff --git a/extras/item_constants.py b/extras/item_constants.py
index d60dfb1f3..a0506375d 100644
--- a/extras/item_constants.py
+++ b/extras/item_constants.py
@@ -1,4 +1,7 @@
-item_constants = {1: 'MASTER_BALL',
+# -*- coding: utf-8 -*-
+
+item_constants = {
+1: 'MASTER_BALL',
2: 'ULTRA_BALL',
3: 'BRIGHTPOWDER',
4: 'GREAT_BALL',
@@ -219,4 +222,20 @@ item_constants = {1: 'MASTER_BALL',
246: 'HM_04',
247: 'HM_05',
248: 'HM_06',
-249: 'HM_07'}
+249: 'HM_07',
+}
+
+def find_item_label_by_id(id):
+ if id in item_constants.keys():
+ return item_constants[id]
+ else: return None
+
+def generate_item_constants():
+ """make a list of items to put in constants.asm"""
+ output = ""
+ for (id, item) in item_constants.items():
+ val = ("$%.2x"%id).upper()
+ while len(item)<13: item+= " "
+ output += item + " EQU " + val + "\n"
+ return output
+
diff --git a/extras/labels.py b/extras/labels.py
index a25fa3fd8..e57c6e2f3 100644
--- a/extras/labels.py
+++ b/extras/labels.py
@@ -1,7 +1,12 @@
-""" Various label/line-related functions.
+# -*- coding: utf-8 -*-
+"""
+Various label/line-related functions.
"""
-from pointers import calculate_pointer, calculate_bank
+from pointers import (
+ calculate_pointer,
+ calculate_bank,
+)
def remove_quoted_text(line):
"""get rid of content inside quotes
diff --git a/extras/move_constants.py b/extras/move_constants.py
index 929f1fad3..a20af8536 100644
--- a/extras/move_constants.py
+++ b/extras/move_constants.py
@@ -1,3 +1,5 @@
+# -*- coding: utf-8 -*-
+
moves = {
0x01: "POUND",
0x02: "KARATE_CHOP",
diff --git a/extras/pksv.py b/extras/pksv.py
index 8f4bafeeb..03ad2d077 100644
--- a/extras/pksv.py
+++ b/extras/pksv.py
@@ -1,3 +1,4 @@
+# -*- coding: utf-8 -*-
pksv_gs = {
0x00: "2call",
@@ -34,7 +35,7 @@ pksv_gs = {
0x21: "checkitem",
0x22: "givemoney",
0x23: "takemoney",
- 0x24: "checkmonkey",
+ 0x24: "checkmoney",
0x25: "givecoins",
0x26: "takecoins",
0x27: "checkcoins",
@@ -141,8 +142,8 @@ pksv_gs = {
0xA3: "displaylocation",
}
-#see http://www.pokecommunity.com/showpost.php?p=4347261
-#NOTE: this has some updates that need to be back-ported to gold
+# see http://www.pokecommunity.com/showpost.php?p=4347261
+# NOTE: this has some updates that need to be back-ported to gold
pksv_crystal = {
0x00: "2call",
0x01: "3call",
@@ -179,7 +180,7 @@ pksv_crystal = {
0x21: "checkitem",
0x22: "givemoney",
0x23: "takemoney",
- 0x24: "checkmonkey",
+ 0x24: "checkmoney",
0x25: "givecoins",
0x26: "takecoins",
0x27: "checkcoins",
@@ -292,13 +293,14 @@ pksv_crystal = {
}
#these cause the script to end; used in create_command_classes
-pksv_crystal_more_enders = [0x03, 0x04, 0x05, 0x0C, 0x51, 0x53,
- 0x8D, 0x8F, 0x90, 0x91, 0x92, 0x9B,
+pksv_crystal_more_enders = [0x03, 0x04, 0x05, 0x0C, 0x51, 0x52,
+ 0x53, 0x8D, 0x8F, 0x90, 0x91, 0x92,
+ 0x9B,
0xB2, #maybe?
0xCC, #maybe?
]
-#these have no pksv names as of pksv 2.1.1
+# these have no pksv names as of pksv 2.1.1
pksv_crystal_unknowns = [
0x9F,
0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF,
diff --git a/extras/pointers.py b/extras/pointers.py
index f3922417b..8fe3df31b 100644
--- a/extras/pointers.py
+++ b/extras/pointers.py
@@ -1,10 +1,12 @@
-""" Various functions related to pointer and address math. Mostly to avoid
- depedency loops.
+# -*- coding: utf-8 -*-
+"""
+Various functions related to pointer and address math. Mostly to avoid
+depedency loops.
"""
def calculate_bank(address):
"""you are too lazy to divide on your own?"""
- if type(address) == str:
+ if type(address) == str:
address = int(address, 16)
#if 0x4000 <= address <= 0x7FFF:
# raise Exception, "bank 1 does not exist"
diff --git a/extras/pokemon_constants.py b/extras/pokemon_constants.py
index 33b6a0ed7..221a31cd0 100644
--- a/extras/pokemon_constants.py
+++ b/extras/pokemon_constants.py
@@ -1,3 +1,5 @@
+# -*- coding: utf-8 -*-
+
pokemon_constants = {
1: "BULBASAUR",
2: "IVYSAUR",
diff --git a/extras/romstr.py b/extras/romstr.py
index 66ac50767..d2eea44ae 100644
--- a/extras/romstr.py
+++ b/extras/romstr.py
@@ -1,8 +1,21 @@
-import sys, os, time, datetime, json
-from gbz80disasm import opt_table
+# -*- coding: utf-8 -*-
+
+import sys
+import os
+import time
+import datetime
from ctypes import c_int8
-from copy import copy, deepcopy
-from labels import get_label_from_line, get_address_from_line_comment
+from copy import copy
+import json
+
+# New versions of json don't have read anymore.
+if not hasattr(json, "read"):
+ json.read = json.loads
+
+from labels import (
+ get_label_from_line,
+ get_address_from_line_comment,
+)
relative_jumps = [0x38, 0x30, 0x20, 0x28, 0x18, 0xc3, 0xda, 0xc2, 0x32]
relative_unconditional_jumps = [0xc3, 0x18]
@@ -91,7 +104,7 @@ class RomStr(str):
file_handler.close()
# load the labels from the file
- self.labels = json.loads(open(filename, "r").read())
+ self.labels = json.read(open(filename, "r").read())
def get_address_for(self, label):
""" Returns the address of a label. This is slow and could be improved
@@ -137,7 +150,7 @@ class RomStr(str):
that will be parsed, so that large patches of data aren't parsed as
code.
"""
- if type(address) == str and "0x" in address:
+ if type(address) in [str, unicode] and "0x" in address:
address = int(address, 16)
start_address = address
@@ -166,333 +179,8 @@ class RomStr(str):
elif end_address != None and size == None:
size = end_address - start_address
- return DisAsm(start_address=start_address, end_address=end_address, size=size, max_size=max_size, debug=debug, rom=self)
-
-class DisAsm:
- """ z80 disassembler
- """
-
- def __init__(self, start_address=None, end_address=None, size=None, max_size=0x4000, debug=True, rom=None):
- assert start_address != None, "start_address must be given"
-
- if rom == None:
- file_handler = open("../baserom.gbc", "r")
- bytes = file_handler.read()
- file_handler.close()
- rom = RomStr(bytes)
-
- if debug not in [None, True, False]:
- raise Exception, "debug param is invalid"
- if debug == None:
- debug = False
-
- # get end_address and size in sync with each other
- if end_address == None and size != None:
- end_address = start_address + size
- elif end_address != None and size == None:
- size = end_address - start_address
- elif end_address != None and size != None:
- size = max(end_address - start_address, size)
- end_address = start_address + size
-
- # check that the bounds make sense
- if end_address != None:
- if end_address <= start_address:
- raise Exception, "end_address is out of bounds"
- elif (end_address - start_address) > max_size:
- raise Exception, "end_address goes beyond max_size"
-
- # check more edge cases
- if not start_address >= 0:
- raise Exception, "start_address must be at least 0"
- elif end_address != None and not end_address >= 0:
- raise Exception, "end_address must be at least 0"
-
- self.rom = rom
- self.start_address = start_address
- self.end_address = end_address
- self.size = size
- self.max_size = max_size
- self.debug = debug
-
- self.parse()
-
- def parse(self):
- """ Disassembles stuff and things.
- """
-
- rom = self.rom
- start_address = self.start_address
- end_address = self.end_address
- max_size = self.max_size
- debug = self.debug
-
- bank_id = start_address / 0x4000
-
- # [{"command": 0x20, "bytes": [0x20, 0x40, 0x50],
- # "asm": "jp $5040", "label": "Unknown5040"}]
- asm_commands = {}
-
- offset = start_address
-
- last_hl_address = None
- last_a_address = None
- used_3d97 = False
-
- keep_reading = True
-
- while (end_address != 0 and offset <= end_address) or keep_reading:
- # read the current opcode byte
- current_byte = ord(rom[offset])
- current_byte_number = len(asm_commands.keys())
-
- # setup this next/upcoming command
- if offset in asm_commands.keys():
- asm_command = asm_commands[offset]
- else:
- asm_command = {}
-
- asm_command["address"] = offset
-
- if not "references" in asm_command.keys():
- # This counts how many times relative jumps reference this
- # byte. This is used to determine whether or not to print out a
- # label later.
- asm_command["references"] = 0
-
- # some commands have two opcodes
- next_byte = ord(rom[offset+1])
-
- if self.debug:
- print "offset: \t\t" + hex(offset)
- print "current_byte: \t\t" + hex(current_byte)
- print "next_byte: \t\t" + hex(next_byte)
-
- # all two-byte opcodes also have their first byte in there somewhere
- if (current_byte in opt_table.keys()) or ((current_byte + (next_byte << 8)) in opt_table.keys()):
- # this might be a two-byte opcode
- possible_opcode = current_byte + (next_byte << 8)
-
- # check if this is a two-byte opcode
- if possible_opcode in opt_table.keys():
- op_code = possible_opcode
- else:
- op_code = current_byte
-
- op = opt_table[op_code]
-
- opstr = op[0].lower()
- optype = op[1]
-
- if self.debug:
- print "opstr: " + opstr
-
- asm_command["type"] = "op"
- asm_command["id"] = op_code
- asm_command["format"] = opstr
- asm_command["opnumberthing"] = optype
-
- opstr2 = None
- base_opstr = copy(opstr)
-
- if "x" in opstr:
- for x in range(0, opstr.count("x")):
- insertion = ord(rom[offset + 1])
-
- # Certain opcodes will have a local relative jump label
- # here instead of a raw hex value, but this is
- # controlled through asm output.
- insertion = "$" + hex(insertion)[2:]
-
- opstr = opstr[:opstr.find("x")].lower() + insertion + opstr[opstr.find("x")+1:].lower()
-
- if op_code in relative_jumps:
- target_address = offset + 2 + c_int8(ord(rom[offset + 1])).value
- insertion = "asm_" + hex(target_address)
-
- if str(target_address) in self.rom.labels.keys():
- insertion = self.rom.labels[str(target_address)]
-
- opstr2 = base_opstr[:base_opstr.find("x")].lower() + insertion + base_opstr[base_opstr.find("x")+1:].lower()
- asm_command["formatted_with_labels"] = opstr2
- asm_command["target_address"] = target_address
-
- current_byte_number += 1
- offset += 1
-
- if "?" in opstr:
- for y in range(0, opstr.count("?")):
- byte1 = ord(rom[offset + 1])
- byte2 = ord(rom[offset + 2])
-
- number = byte1
- number += byte2 << 8;
-
- # In most cases, you can use a label here. Labels will
- # be shown during asm output.
- insertion = "$%.4x" % (number)
-
- opstr = opstr[:opstr.find("?")].lower() + insertion + opstr[opstr.find("?")+1:].lower()
-
- # This version of the formatted string has labels. In
- # the future, the actual labels should be parsed
- # straight out of the "main.asm" file.
- target_address = number % 0x4000
- insertion = "asm_" + hex(target_address)
-
- if str(target_address) in self.rom.labels.keys():
- insertion = self.rom.labels[str(target_address)]
-
- opstr2 = base_opstr[:base_opstr.find("?")].lower() + insertion + base_opstr[base_opstr.find("?")+1:].lower()
- asm_command["formatted_with_labels"] = opstr2
- asm_command["target_address"] = target_address
-
- current_byte_number += 2
- offset += 2
-
- # Check for relative jumps, construct the formatted asm line.
- # Also set the usage of labels.
- if current_byte in [0x18, 0x20] + relative_jumps: # jr or jr nz
- # generate a label for the byte we're jumping to
- target_address = offset + 1 + c_int8(ord(rom[offset])).value
-
- if target_address in asm_commands.keys():
- asm_commands[target_address]["references"] += 1
- remote_label = "asm_" + hex(target_address)
- asm_commands[target_address]["current_label"] = remote_label
- asm_command["remote_label"] = remote_label
-
- # Not sure how to set this, can't be True because an
- # address referenced multiple times will use a label
- # despite the label not necessarily being used in the
- # output. The "use_remote_label" values should be
- # calculated when rendering the asm output, based on
- # which addresses and which op codes will be displayed
- # (within the range).
- asm_command["use_remote_label"] = "unknown"
- else:
- remote_label = "asm_" + hex(target_address)
-
- # This remote address might not be part of this
- # function.
- asm_commands[target_address] = {
- "references": 1,
- "current_label": remote_label,
- "address": target_address,
- }
- # Also, target_address can be negative (before the
- # start_address that the user originally requested),
- # and it shouldn't be shown on asm output because the
- # intermediate bytes (between a negative target_address
- # and start_address) won't be disassembled.
-
- # Don't know yet if this remote address is part of this
- # function or not. When the remote address is not part
- # of this function, the label name should not be used,
- # because that label will not be disassembled in the
- # output, until the user asks it to.
- asm_command["use_remote_label"] = "unknown"
- asm_command["remote_label"] = remote_label
- elif current_byte == 0x3e:
- last_a_address = ord(rom[offset + 1])
-
- # store the formatted string for the output later
- asm_command["formatted"] = opstr
-
- if current_byte == 0x21:
- last_hl_address = byte1 + (byte2 << 8)
-
- # this is leftover from pokered, might be meaningless
- if current_byte == 0xcd:
- if number == 0x3d97:
- used_3d97 = True
-
- if current_byte == 0xc3 or current_byte in relative_unconditional_jumps:
- if current_byte == 0xc3:
- if number == 0x3d97:
- used_3d97 = True
-
- # stop reading at a jump, relative jump or return
- if current_byte in end_08_scripts_with:
- is_data = False
-
- if not self.has_outstanding_labels(asm_commands, offset):
- keep_reading = False
- break
- else:
- keep_reading = True
- else:
- keep_reading = True
-
- else:
- # This shouldn't really happen, and means that this area of the
- # ROM probably doesn't represent instructions.
- asm_command["type"] = "data" # db
- asm_command["value"] = current_byte
- keep_reading = False
-
- # save this new command in the list
- asm_commands[asm_command["address"]] = asm_command
-
- # jump forward by a byte
- offset += 1
-
- # also save the last command if necessary
- if len(asm_commands.keys()) > 0 and asm_commands[asm_commands.keys()[-1]] is not asm_command:
- asm_commands[asm_command["address"]] = asm_command
-
- # store the set of commands on this object
- self.asm_commands = asm_commands
-
- self.end_address = offset + 1
- self.last_address = self.end_address
-
- def has_outstanding_labels(self, asm_commands, offset):
- """ Checks if there are any labels that haven't yet been created.
- """ # is this really necessary??
- return False
-
- def used_addresses(self):
- """ Returns a list of unique addresses that this function will probably
- call.
- """
- addresses = set()
-
- for (id, command) in self.asm_commands.items():
- if command.has_key("target_address") and command["id"] in call_commands:
- addresses.add(command["target_address"])
-
- return addresses
-
- def __str__(self):
- """ ASM pretty printer.
- """
- output = ""
-
- for (key, line) in self.asm_commands.items():
- # skip anything from before the beginning
- if key < self.start_address:
- continue
-
- # show a label
- if line["references"] > 0 and "current_label" in line.keys():
- if line["address"] == self.start_address:
- output += "thing: ; " + hex(line["address"]) + "\n"
- else:
- output += "." + line["current_label"] + "\@ ; " + hex(line["address"]) + "\n"
-
- # show the actual line
- if line.has_key("formatted_with_labels"):
- output += spacing + line["formatted_with_labels"]
- elif line.has_key("formatted"):
- output += spacing + line["formatted"]
- #output += " ; to " +
- output += "\n"
-
- # show the next address after this chunk
- output += "; " + hex(self.end_address)
-
- return output
+ raise NotImplementedError("DisAsm was removed and never worked; hook up another disassembler please.")
+ #return DisAsm(start_address=start_address, end_address=end_address, size=size, max_size=max_size, debug=debug, rom=self)
class AsmList(list):
""" Simple wrapper to prevent all asm lines from being shown on screen.
diff --git a/extras/test_dump_sections.py b/extras/test_dump_sections.py
new file mode 100644
index 000000000..b73b86f6a
--- /dev/null
+++ b/extras/test_dump_sections.py
@@ -0,0 +1,74 @@
+# -*- coding: utf-8 -*-
+
+try:
+ import unittest2 as unittest
+except ImportError:
+ import unittest
+
+# check for things we need in unittest
+if not hasattr(unittest.TestCase, 'setUpClass'):
+ sys.stderr.write("The unittest2 module or Python 2.7 is required to run this script.")
+ sys.exit(1)
+
+from dump_sections import (
+ upper_hex,
+ format_bank_number,
+ calculate_bank_quantity,
+ dump_section,
+ dump_incbin_for_section,
+)
+
+class TestDumpSections(unittest.TestCase):
+ def test_upper_hex(self):
+ number = 0x52
+ self.assertEquals(number, int("0x" + upper_hex(number), 16))
+
+ number = 0x1
+ self.assertEquals(number, int("0x" + upper_hex(number), 16))
+
+ number = 0x0
+ self.assertEquals(number, int("0x" + upper_hex(number), 16))
+
+ number = 0xAA
+ self.assertEquals(number, int("0x" + upper_hex(number), 16))
+
+ number = 0xFFFFAAA0000
+ self.assertEquals(number, int("0x" + upper_hex(number), 16))
+
+ def test_format_bank_number(self):
+ address = 0x0
+ self.assertEquals("0", format_bank_number(address))
+
+ address = 0x4000
+ self.assertEquals("1", format_bank_number(address))
+
+ address = 0x1FC000
+ self.assertEquals("7F", format_bank_number(address))
+
+ def test_dump_section(self):
+ self.assertIn("SECTION", dump_section(str(0)))
+ self.assertIn("HOME", dump_section(str(0)))
+ self.assertNotIn("HOME", dump_section(str(1)))
+ self.assertIn("DATA", dump_section(str(2)))
+ self.assertIn("BANK", dump_section(str(40)))
+ self.assertNotIn("BANK", dump_section(str(0)))
+
+ def test_dump_incbin_for_section(self):
+ self.assertIn("INCBIN", dump_incbin_for_section(0))
+
+ def test_dump_incbin_for_section_separator(self):
+ separator = "\n\n"
+ self.assertIn(separator, dump_incbin_for_section(0, separator=separator))
+
+ separator = "\t\t" # dumb
+ self.assertIn(separator, dump_incbin_for_section(0, separator=separator))
+
+ def test_dump_incbin_for_section_default(self):
+ rom = "baserom.gbc"
+ self.assertIn(rom, dump_incbin_for_section(0))
+
+ rom = "baserom"
+ self.assertIn(rom, dump_incbin_for_section(0x4000))
+
+if __name__ == "__main__":
+ unittest.main()
diff --git a/extras/tests.py b/extras/tests.py
new file mode 100644
index 000000000..61f46d6cb
--- /dev/null
+++ b/extras/tests.py
@@ -0,0 +1,1015 @@
+# -*- coding: utf-8 -*-
+
+import os
+import sys
+import inspect
+from copy import copy
+import hashlib
+import random
+import json
+
+from interval_map import IntervalMap
+from chars import chars, jap_chars
+
+from romstr import (
+ RomStr,
+ AsmList,
+)
+
+from item_constants import (
+ item_constants,
+ find_item_label_by_id,
+ generate_item_constants,
+)
+
+from pointers import (
+ calculate_bank,
+ calculate_pointer,
+)
+
+from pksv import (
+ pksv_gs,
+ pksv_crystal,
+)
+
+from labels import (
+ remove_quoted_text,
+ line_has_comment_address,
+ line_has_label,
+ get_label_from_line,
+)
+
+from crystal import (
+ rom,
+ load_rom,
+ rom_until,
+ direct_load_rom,
+ parse_script_engine_script_at,
+ parse_text_engine_script_at,
+ parse_text_at2,
+ find_all_text_pointers_in_script_engine_script,
+ SingleByteParam,
+ HexByte,
+ MultiByteParam,
+ PointerLabelParam,
+ ItemLabelByte,
+ DollarSignByte,
+ DecimalParam,
+ rom_interval,
+ map_names,
+ Label,
+ scan_for_predefined_labels,
+ all_labels,
+ write_all_labels,
+ parse_map_header_at,
+ old_parse_map_header_at,
+ process_00_subcommands,
+ parse_all_map_headers,
+ translate_command_byte,
+ map_name_cleaner,
+ load_map_group_offsets,
+ load_asm,
+ asm,
+ is_valid_address,
+ index,
+ how_many_until,
+ grouper,
+ get_pokemon_constant_by_id,
+ generate_map_constant_labels,
+ get_map_constant_label_by_id,
+ get_id_for_map_constant_label,
+ calculate_pointer_from_bytes_at,
+ isolate_incbins,
+ process_incbins,
+ get_labels_between,
+ generate_diff_insert,
+ find_labels_without_addresses,
+ rom_text_at,
+ get_label_for,
+ split_incbin_line_into_three,
+ reset_incbins,
+)
+
+# for testing all this crap
+try:
+ import unittest2 as unittest
+except ImportError:
+ import unittest
+
+# check for things we need in unittest
+if not hasattr(unittest.TestCase, 'setUpClass'):
+ sys.stderr.write("The unittest2 module or Python 2.7 is required to run this script.")
+ sys.exit(1)
+
+class TestCram(unittest.TestCase):
+ "this is where i cram all of my unit tests together"
+
+ @classmethod
+ def setUpClass(cls):
+ global rom
+ cls.rom = direct_load_rom()
+ rom = cls.rom
+
+ @classmethod
+ def tearDownClass(cls):
+ del cls.rom
+
+ def test_generic_useless(self):
+ "do i know how to write a test?"
+ self.assertEqual(1, 1)
+
+ def test_map_name_cleaner(self):
+ name = "hello world"
+ cleaned_name = map_name_cleaner(name)
+ self.assertNotEqual(name, cleaned_name)
+ self.failUnless(" " not in cleaned_name)
+ name = "Some Random Pokémon Center"
+ cleaned_name = map_name_cleaner(name)
+ self.assertNotEqual(name, cleaned_name)
+ self.failIf(" " in cleaned_name)
+ self.failIf("é" in cleaned_name)
+
+ def test_grouper(self):
+ data = range(0, 10)
+ groups = grouper(data, count=2)
+ self.assertEquals(len(groups), 5)
+ data = range(0, 20)
+ groups = grouper(data, count=2)
+ self.assertEquals(len(groups), 10)
+ self.assertNotEqual(data, groups)
+ self.assertNotEqual(len(data), len(groups))
+
+ def test_direct_load_rom(self):
+ rom = self.rom
+ self.assertEqual(len(rom), 2097152)
+ self.failUnless(isinstance(rom, RomStr))
+
+ def test_load_rom(self):
+ global rom
+ rom = None
+ load_rom()
+ self.failIf(rom == None)
+ rom = RomStr(None)
+ load_rom()
+ self.failIf(rom == RomStr(None))
+
+ def test_load_asm(self):
+ asm = load_asm()
+ joined_lines = "\n".join(asm)
+ self.failUnless("SECTION" in joined_lines)
+ self.failUnless("bank" in joined_lines)
+ self.failUnless(isinstance(asm, AsmList))
+
+ def test_rom_file_existence(self):
+ "ROM file must exist"
+ self.failUnless("baserom.gbc" in os.listdir("../"))
+
+ def test_rom_md5(self):
+ "ROM file must have the correct md5 sum"
+ rom = self.rom
+ correct = "9f2922b235a5eeb78d65594e82ef5dde"
+ md5 = hashlib.md5()
+ md5.update(rom)
+ md5sum = md5.hexdigest()
+ self.assertEqual(md5sum, correct)
+
+ def test_bizarre_http_presence(self):
+ rom_segment = self.rom[0x112116:0x112116+8]
+ self.assertEqual(rom_segment, "HTTP/1.0")
+
+ def test_rom_interval(self):
+ address = 0x100
+ interval = 10
+ correct_strings = ['0x0', '0xc3', '0x6e', '0x1', '0xce',
+ '0xed', '0x66', '0x66', '0xcc', '0xd']
+ byte_strings = rom_interval(address, interval, strings=True)
+ self.assertEqual(byte_strings, correct_strings)
+ correct_ints = [0, 195, 110, 1, 206, 237, 102, 102, 204, 13]
+ ints = rom_interval(address, interval, strings=False)
+ self.assertEqual(ints, correct_ints)
+
+ def test_rom_until(self):
+ address = 0x1337
+ byte = 0x13
+ bytes = rom_until(address, byte, strings=True)
+ self.failUnless(len(bytes) == 3)
+ self.failUnless(bytes[0] == '0xd5')
+ bytes = rom_until(address, byte, strings=False)
+ self.failUnless(len(bytes) == 3)
+ self.failUnless(bytes[0] == 0xd5)
+
+ def test_how_many_until(self):
+ how_many = how_many_until(chr(0x13), 0x1337)
+ self.assertEqual(how_many, 3)
+
+ def test_calculate_bank(self):
+ self.failUnless(calculate_bank(0x8000) == 2)
+ self.failUnless(calculate_bank("0x9000") == 2)
+ self.failUnless(calculate_bank(0) == 0)
+ for address in [0x4000, 0x5000, 0x6000, 0x7000]:
+ self.assertRaises(Exception, calculate_bank, address)
+
+ def test_calculate_pointer(self):
+ # for offset <= 0x4000
+ self.assertEqual(calculate_pointer(0x0000), 0x0000)
+ self.assertEqual(calculate_pointer(0x3FFF), 0x3FFF)
+ # for 0x4000 <= offset <= 0x7FFFF
+ self.assertEqual(calculate_pointer(0x430F, bank=5), 0x1430F)
+ # for offset >= 0x7FFF
+ self.assertEqual(calculate_pointer(0x8FFF, bank=6), calculate_pointer(0x8FFF, bank=7))
+
+ def test_calculate_pointer_from_bytes_at(self):
+ addr1 = calculate_pointer_from_bytes_at(0x100, bank=False)
+ self.assertEqual(addr1, 0xc300)
+ addr2 = calculate_pointer_from_bytes_at(0x100, bank=True)
+ self.assertEqual(addr2, 0x2ec3)
+
+ def test_rom_text_at(self):
+ self.assertEquals(rom_text_at(0x112116, 8), "HTTP/1.0")
+
+ def test_translate_command_byte(self):
+ self.failUnless(translate_command_byte(crystal=0x0) == 0x0)
+ self.failUnless(translate_command_byte(crystal=0x10) == 0x10)
+ self.failUnless(translate_command_byte(crystal=0x40) == 0x40)
+ self.failUnless(translate_command_byte(gold=0x0) == 0x0)
+ self.failUnless(translate_command_byte(gold=0x10) == 0x10)
+ self.failUnless(translate_command_byte(gold=0x40) == 0x40)
+ self.assertEqual(translate_command_byte(gold=0x0), translate_command_byte(crystal=0x0))
+ self.failUnless(translate_command_byte(gold=0x52) == 0x53)
+ self.failUnless(translate_command_byte(gold=0x53) == 0x54)
+ self.failUnless(translate_command_byte(crystal=0x53) == 0x52)
+ self.failUnless(translate_command_byte(crystal=0x52) == None)
+ self.assertRaises(Exception, translate_command_byte, None, gold=0xA4)
+
+ def test_pksv_integrity(self):
+ "does pksv_gs look okay?"
+ self.assertEqual(pksv_gs[0x00], "2call")
+ self.assertEqual(pksv_gs[0x2D], "givepoke")
+ self.assertEqual(pksv_gs[0x85], "waitbutton")
+ self.assertEqual(pksv_crystal[0x00], "2call")
+ self.assertEqual(pksv_crystal[0x86], "waitbutton")
+ self.assertEqual(pksv_crystal[0xA2], "credits")
+
+ def test_chars_integrity(self):
+ self.assertEqual(chars[0x80], "A")
+ self.assertEqual(chars[0xA0], "a")
+ self.assertEqual(chars[0xF0], "¥")
+ self.assertEqual(jap_chars[0x44], "ぱ")
+
+ def test_map_names_integrity(self):
+ def map_name(map_group, map_id): return map_names[map_group][map_id]["name"]
+ self.assertEqual(map_name(2, 7), "Mahogany Town")
+ self.assertEqual(map_name(3, 0x34), "Ilex Forest")
+ self.assertEqual(map_name(7, 0x11), "Cerulean City")
+
+ def test_load_map_group_offsets(self):
+ addresses = load_map_group_offsets()
+ self.assertEqual(len(addresses), 26, msg="there should be 26 map groups")
+ addresses = load_map_group_offsets()
+ self.assertEqual(len(addresses), 26, msg="there should still be 26 map groups")
+ self.assertIn(0x94034, addresses)
+ for address in addresses:
+ self.assertGreaterEqual(address, 0x4000)
+ self.failIf(0x4000 <= address <= 0x7FFF)
+ self.failIf(address <= 0x4000)
+
+ def test_index(self):
+ self.assertTrue(index([1,2,3,4], lambda f: True) == 0)
+ self.assertTrue(index([1,2,3,4], lambda f: f==3) == 2)
+
+ def test_get_pokemon_constant_by_id(self):
+ x = get_pokemon_constant_by_id
+ self.assertEqual(x(1), "BULBASAUR")
+ self.assertEqual(x(151), "MEW")
+ self.assertEqual(x(250), "HO_OH")
+
+ def test_find_item_label_by_id(self):
+ x = find_item_label_by_id
+ self.assertEqual(x(249), "HM_07")
+ self.assertEqual(x(173), "BERRY")
+ self.assertEqual(x(45), None)
+
+ def test_generate_item_constants(self):
+ x = generate_item_constants
+ r = x()
+ self.failUnless("HM_07" in r)
+ self.failUnless("EQU" in r)
+
+ def test_get_label_for(self):
+ global all_labels
+ temp = copy(all_labels)
+ # this is basd on the format defined in get_labels_between
+ all_labels = [{"label": "poop", "address": 0x5,
+ "offset": 0x5, "bank": 0,
+ "line_number": 2
+ }]
+ self.assertEqual(get_label_for(5), "poop")
+ all_labels = temp
+
+ def test_generate_map_constant_labels(self):
+ ids = generate_map_constant_labels()
+ self.assertEqual(ids[0]["label"], "OLIVINE_POKECENTER_1F")
+ self.assertEqual(ids[1]["label"], "OLIVINE_GYM")
+
+ def test_get_id_for_map_constant_label(self):
+ global map_internal_ids
+ map_internal_ids = generate_map_constant_labels()
+ self.assertEqual(get_id_for_map_constant_label("OLIVINE_GYM"), 1)
+ self.assertEqual(get_id_for_map_constant_label("OLIVINE_POKECENTER_1F"), 0)
+
+ def test_get_map_constant_label_by_id(self):
+ global map_internal_ids
+ map_internal_ids = generate_map_constant_labels()
+ self.assertEqual(get_map_constant_label_by_id(0), "OLIVINE_POKECENTER_1F")
+ self.assertEqual(get_map_constant_label_by_id(1), "OLIVINE_GYM")
+
+ def test_is_valid_address(self):
+ self.assertTrue(is_valid_address(0))
+ self.assertTrue(is_valid_address(1))
+ self.assertTrue(is_valid_address(10))
+ self.assertTrue(is_valid_address(100))
+ self.assertTrue(is_valid_address(1000))
+ self.assertTrue(is_valid_address(10000))
+ self.assertFalse(is_valid_address(2097153))
+ self.assertFalse(is_valid_address(2098000))
+ addresses = [random.randrange(0,2097153) for i in range(0, 9+1)]
+ for address in addresses:
+ self.assertTrue(is_valid_address(address))
+
+class TestIntervalMap(unittest.TestCase):
+ def test_intervals(self):
+ i = IntervalMap()
+ first = "hello world"
+ second = "testing 123"
+ i[0:5] = first
+ i[5:10] = second
+ self.assertEqual(i[0], first)
+ self.assertEqual(i[1], first)
+ self.assertNotEqual(i[5], first)
+ self.assertEqual(i[6], second)
+ i[3:10] = second
+ self.assertEqual(i[3], second)
+ self.assertNotEqual(i[4], first)
+
+ def test_items(self):
+ i = IntervalMap()
+ first = "hello world"
+ second = "testing 123"
+ i[0:5] = first
+ i[5:10] = second
+ results = list(i.items())
+ self.failUnless(len(results) == 2)
+ self.assertEqual(results[0], ((0, 5), "hello world"))
+ self.assertEqual(results[1], ((5, 10), "testing 123"))
+
+class TestRomStr(unittest.TestCase):
+ """RomStr is a class that should act exactly like str()
+ except that it never shows the contents of it string
+ unless explicitly forced"""
+ sample_text = "hello world!"
+ sample = None
+
+ def setUp(self):
+ if self.sample == None:
+ self.__class__.sample = RomStr(self.sample_text)
+
+ def test_equals(self):
+ "check if RomStr() == str()"
+ self.assertEquals(self.sample_text, self.sample)
+
+ def test_not_equal(self):
+ "check if RomStr('a') != RomStr('b')"
+ self.assertNotEqual(RomStr('a'), RomStr('b'))
+
+ def test_appending(self):
+ "check if RomStr()+'a'==str()+'a'"
+ self.assertEquals(self.sample_text+'a', self.sample+'a')
+
+ def test_conversion(self):
+ "check if RomStr() -> str() works"
+ self.assertEquals(str(self.sample), self.sample_text)
+
+ def test_inheritance(self):
+ self.failUnless(issubclass(RomStr, str))
+
+ def test_length(self):
+ self.assertEquals(len(self.sample_text), len(self.sample))
+ self.assertEquals(len(self.sample_text), self.sample.length())
+ self.assertEquals(len(self.sample), self.sample.length())
+
+ def test_rom_interval(self):
+ global rom
+ load_rom()
+ address = 0x100
+ interval = 10
+ correct_strings = ['0x0', '0xc3', '0x6e', '0x1', '0xce',
+ '0xed', '0x66', '0x66', '0xcc', '0xd']
+ byte_strings = rom.interval(address, interval, strings=True)
+ self.assertEqual(byte_strings, correct_strings)
+ correct_ints = [0, 195, 110, 1, 206, 237, 102, 102, 204, 13]
+ ints = rom.interval(address, interval, strings=False)
+ self.assertEqual(ints, correct_ints)
+
+ def test_rom_until(self):
+ global rom
+ load_rom()
+ address = 0x1337
+ byte = 0x13
+ bytes = rom.until(address, byte, strings=True)
+ self.failUnless(len(bytes) == 3)
+ self.failUnless(bytes[0] == '0xd5')
+ bytes = rom.until(address, byte, strings=False)
+ self.failUnless(len(bytes) == 3)
+ self.failUnless(bytes[0] == 0xd5)
+
+class TestAsmList(unittest.TestCase):
+ """AsmList is a class that should act exactly like list()
+ except that it never shows the contents of its list
+ unless explicitly forced"""
+
+ def test_equals(self):
+ base = [1,2,3]
+ asm = AsmList(base)
+ self.assertEquals(base, asm)
+ self.assertEquals(asm, base)
+ self.assertEquals(base, list(asm))
+
+ def test_inheritance(self):
+ self.failUnless(issubclass(AsmList, list))
+
+ def test_length(self):
+ base = range(0, 10)
+ asm = AsmList(base)
+ self.assertEquals(len(base), len(asm))
+ self.assertEquals(len(base), asm.length())
+ self.assertEquals(len(base), len(list(asm)))
+ self.assertEquals(len(asm), asm.length())
+
+ def test_remove_quoted_text(self):
+ x = remove_quoted_text
+ self.assertEqual(x("hello world"), "hello world")
+ self.assertEqual(x("hello \"world\""), "hello ")
+ input = 'hello world "testing 123"'
+ self.assertNotEqual(x(input), input)
+ input = "hello world 'testing 123'"
+ self.assertNotEqual(x(input), input)
+ self.failIf("testing" in x(input))
+
+ def test_line_has_comment_address(self):
+ x = line_has_comment_address
+ self.assertFalse(x(""))
+ self.assertFalse(x(";"))
+ self.assertFalse(x(";;;"))
+ self.assertFalse(x(":;"))
+ self.assertFalse(x(":;:"))
+ self.assertFalse(x(";:"))
+ self.assertFalse(x(" "))
+ self.assertFalse(x("".join(" " * 5)))
+ self.assertFalse(x("".join(" " * 10)))
+ self.assertFalse(x("hello world"))
+ self.assertFalse(x("hello_world"))
+ self.assertFalse(x("hello_world:"))
+ self.assertFalse(x("hello_world:;"))
+ self.assertFalse(x("hello_world: ;"))
+ self.assertFalse(x("hello_world: ; "))
+ self.assertFalse(x("hello_world: ;" + "".join(" " * 5)))
+ self.assertFalse(x("hello_world: ;" + "".join(" " * 10)))
+ self.assertTrue(x(";1"))
+ self.assertTrue(x(";F"))
+ self.assertTrue(x(";$00FF"))
+ self.assertTrue(x(";0x00FF"))
+ self.assertTrue(x("; 0x00FF"))
+ self.assertTrue(x(";$3:$300"))
+ self.assertTrue(x(";0x3:$300"))
+ self.assertTrue(x(";$3:0x300"))
+ self.assertTrue(x(";3:300"))
+ self.assertTrue(x(";3:FFAA"))
+ self.assertFalse(x('hello world "how are you today;0x1"'))
+ self.assertTrue(x('hello world "how are you today:0x1";1'))
+ returnable = {}
+ self.assertTrue(x("hello_world: ; 0x4050", returnable=returnable, bank=5))
+ self.assertTrue(returnable["address"] == 0x14050)
+
+ def test_line_has_label(self):
+ x = line_has_label
+ self.assertTrue(x("hi:"))
+ self.assertTrue(x("Hello: "))
+ self.assertTrue(x("MyLabel: ; test xyz"))
+ self.assertFalse(x(":"))
+ self.assertFalse(x(";HelloWorld:"))
+ self.assertFalse(x("::::"))
+ self.assertFalse(x(":;:;:;:::"))
+
+ def test_get_label_from_line(self):
+ x = get_label_from_line
+ self.assertEqual(x("HelloWorld: "), "HelloWorld")
+ self.assertEqual(x("HiWorld:"), "HiWorld")
+ self.assertEqual(x("HiWorld"), None)
+
+ def test_find_labels_without_addresses(self):
+ global asm
+ asm = ["hello_world: ; 0x1", "hello_world2: ;"]
+ labels = find_labels_without_addresses()
+ self.failUnless(labels[0]["label"] == "hello_world2")
+ asm = ["hello world: ;1", "hello_world: ;2"]
+ labels = find_labels_without_addresses()
+ self.failUnless(len(labels) == 0)
+ asm = None
+
+ def test_get_labels_between(self):
+ global asm
+ x = get_labels_between#(start_line_id, end_line_id, bank)
+ asm = ["HelloWorld: ;1",
+ "hi:",
+ "no label on this line",
+ ]
+ labels = x(0, 2, 0x12)
+ self.assertEqual(len(labels), 1)
+ self.assertEqual(labels[0]["label"], "HelloWorld")
+ del asm
+
+ # this test takes a lot of time :(
+ def xtest_scan_for_predefined_labels(self):
+ # label keys: line_number, bank, label, offset, address
+ load_asm()
+ all_labels = scan_for_predefined_labels()
+ label_names = [x["label"] for x in all_labels]
+ self.assertIn("GetFarByte", label_names)
+ self.assertIn("AddNTimes", label_names)
+ self.assertIn("CheckShininess", label_names)
+
+ def test_write_all_labels(self):
+ """dumping json into a file"""
+ filename = "test_labels.json"
+ # remove the current file
+ if os.path.exists(filename):
+ os.system("rm " + filename)
+ # make up some labels
+ labels = []
+ # fake label 1
+ label = {"line_number": 5, "bank": 0, "label": "SomeLabel", "address": 0x10}
+ labels.append(label)
+ # fake label 2
+ label = {"line_number": 15, "bank": 2, "label": "SomeOtherLabel", "address": 0x9F0A}
+ labels.append(label)
+ # dump to file
+ write_all_labels(labels, filename=filename)
+ # open the file and read the contents
+ file_handler = open(filename, "r")
+ contents = file_handler.read()
+ file_handler.close()
+ # parse into json
+ obj = json.read(contents)
+ # begin testing
+ self.assertEqual(len(obj), len(labels))
+ self.assertEqual(len(obj), 2)
+ self.assertEqual(obj, labels)
+
+ def test_isolate_incbins(self):
+ global asm
+ asm = ["123", "456", "789", "abc", "def", "ghi",
+ 'INCBIN "baserom.gbc",$12DA,$12F8 - $12DA',
+ "jkl",
+ 'INCBIN "baserom.gbc",$137A,$13D0 - $137A']
+ lines = isolate_incbins()
+ self.assertIn(asm[6], lines)
+ self.assertIn(asm[8], lines)
+ for line in lines:
+ self.assertIn("baserom", line)
+
+ def test_process_incbins(self):
+ global incbin_lines, processed_incbins, asm
+ incbin_lines = ['INCBIN "baserom.gbc",$12DA,$12F8 - $12DA',
+ 'INCBIN "baserom.gbc",$137A,$13D0 - $137A']
+ asm = copy(incbin_lines)
+ asm.insert(1, "some other random line")
+ processed_incbins = process_incbins()
+ self.assertEqual(len(processed_incbins), len(incbin_lines))
+ self.assertEqual(processed_incbins[0]["line"], incbin_lines[0])
+ self.assertEqual(processed_incbins[2]["line"], incbin_lines[1])
+
+ def test_reset_incbins(self):
+ global asm, incbin_lines, processed_incbins
+ # temporarily override the functions
+ global load_asm, isolate_incbins, process_incbins
+ temp1, temp2, temp3 = load_asm, isolate_incbins, process_incbins
+ def load_asm(): pass
+ def isolate_incbins(): pass
+ def process_incbins(): pass
+ # call reset
+ reset_incbins()
+ # check the results
+ self.assertTrue(asm == [] or asm == None)
+ self.assertTrue(incbin_lines == [])
+ self.assertTrue(processed_incbins == {})
+ # reset the original functions
+ load_asm, isolate_incbins, process_incbins = temp1, temp2, temp3
+
+ def test_find_incbin_to_replace_for(self):
+ global asm, incbin_lines, processed_incbins
+ asm = ['first line', 'second line', 'third line',
+ 'INCBIN "baserom.gbc",$90,$200 - $90',
+ 'fifth line', 'last line']
+ isolate_incbins()
+ process_incbins()
+ line_num = find_incbin_to_replace_for(0x100)
+ # must be the 4th line (the INBIN line)
+ self.assertEqual(line_num, 3)
+
+ def test_split_incbin_line_into_three(self):
+ global asm, incbin_lines, processed_incbins
+ asm = ['first line', 'second line', 'third line',
+ 'INCBIN "baserom.gbc",$90,$200 - $90',
+ 'fifth line', 'last line']
+ isolate_incbins()
+ process_incbins()
+ content = split_incbin_line_into_three(3, 0x100, 10)
+ # must end up with three INCBINs in output
+ self.failUnless(content.count("INCBIN") == 3)
+
+ def test_analyze_intervals(self):
+ global asm, incbin_lines, processed_incbins
+ asm, incbin_lines, processed_incbins = None, [], {}
+ asm = ['first line', 'second line', 'third line',
+ 'INCBIN "baserom.gbc",$90,$200 - $90',
+ 'fifth line', 'last line',
+ 'INCBIN "baserom.gbc",$33F,$4000 - $33F']
+ isolate_incbins()
+ process_incbins()
+ largest = analyze_intervals()
+ self.assertEqual(largest[0]["line_number"], 6)
+ self.assertEqual(largest[0]["line"], asm[6])
+ self.assertEqual(largest[1]["line_number"], 3)
+ self.assertEqual(largest[1]["line"], asm[3])
+
+ def test_generate_diff_insert(self):
+ global asm
+ asm = ['first line', 'second line', 'third line',
+ 'INCBIN "baserom.gbc",$90,$200 - $90',
+ 'fifth line', 'last line',
+ 'INCBIN "baserom.gbc",$33F,$4000 - $33F']
+ diff = generate_diff_insert(0, "the real first line", debug=False)
+ self.assertIn("the real first line", diff)
+ self.assertIn("INCBIN", diff)
+ self.assertNotIn("No newline at end of file", diff)
+ self.assertIn("+"+asm[1], diff)
+
+class TestMapParsing(unittest.TestCase):
+ def test_parse_all_map_headers(self):
+ global parse_map_header_at, old_parse_map_header_at, counter
+ counter = 0
+ for k in map_names.keys():
+ if "offset" not in map_names[k].keys():
+ map_names[k]["offset"] = 0
+ temp = parse_map_header_at
+ temp2 = old_parse_map_header_at
+ def parse_map_header_at(address, map_group=None, map_id=None, debug=False):
+ global counter
+ counter += 1
+ return {}
+ old_parse_map_header_at = parse_map_header_at
+ parse_all_map_headers(debug=False)
+ # parse_all_map_headers is currently doing it 2x
+ # because of the new/old map header parsing routines
+ self.assertEqual(counter, 388 * 2)
+ parse_map_header_at = temp
+ old_parse_map_header_at = temp2
+
+class TestTextScript(unittest.TestCase):
+ """for testing 'in-script' commands, etc."""
+ #def test_to_asm(self):
+ # pass # or raise NotImplementedError, bryan_message
+ #def test_find_addresses(self):
+ # pass # or raise NotImplementedError, bryan_message
+ #def test_parse_text_at(self):
+ # pass # or raise NotImplementedError, bryan_message
+
+class TestEncodedText(unittest.TestCase):
+ """for testing chars-table encoded text chunks"""
+
+ def test_process_00_subcommands(self):
+ g = process_00_subcommands(0x197186, 0x197186+601, debug=False)
+ self.assertEqual(len(g), 42)
+ self.assertEqual(len(g[0]), 13)
+ self.assertEqual(g[1], [184, 174, 180, 211, 164, 127, 20, 231, 81])
+
+ def test_parse_text_at2(self):
+ oakspeech = parse_text_at2(0x197186, 601, debug=False)
+ self.assertIn("encyclopedia", oakspeech)
+ self.assertIn("researcher", oakspeech)
+ self.assertIn("dependable", oakspeech)
+
+ def test_parse_text_engine_script_at(self):
+ p = parse_text_engine_script_at(0x197185, debug=False)
+ self.assertEqual(len(p.commands), 2)
+ self.assertEqual(len(p.commands[0]["lines"]), 41)
+
+ # don't really care about these other two
+ def test_parse_text_from_bytes(self): pass
+ def test_parse_text_at(self): pass
+
+class TestScript(unittest.TestCase):
+ """for testing parse_script_engine_script_at and script parsing in
+ general. Script should be a class."""
+ #def test_parse_script_engine_script_at(self):
+ # pass # or raise NotImplementedError, bryan_message
+
+ def test_find_all_text_pointers_in_script_engine_script(self):
+ address = 0x197637 # 0x197634
+ script = parse_script_engine_script_at(address, debug=False)
+ bank = calculate_bank(address)
+ r = find_all_text_pointers_in_script_engine_script(script, bank=bank, debug=False)
+ results = list(r)
+ self.assertIn(0x197661, results)
+
+class TestLabel(unittest.TestCase):
+ def test_label_making(self):
+ line_number = 2
+ address = 0xf0c0
+ label_name = "poop"
+ l = Label(name=label_name, address=address, line_number=line_number)
+ self.failUnless(hasattr(l, "name"))
+ self.failUnless(hasattr(l, "address"))
+ self.failUnless(hasattr(l, "line_number"))
+ self.failIf(isinstance(l.address, str))
+ self.failIf(isinstance(l.line_number, str))
+ self.failUnless(isinstance(l.name, str))
+ self.assertEqual(l.line_number, line_number)
+ self.assertEqual(l.name, label_name)
+ self.assertEqual(l.address, address)
+
+class TestByteParams(unittest.TestCase):
+ @classmethod
+ def setUpClass(cls):
+ load_rom()
+ cls.address = 10
+ cls.sbp = SingleByteParam(address=cls.address)
+
+ @classmethod
+ def tearDownClass(cls):
+ del cls.sbp
+
+ def test__init__(self):
+ self.assertEqual(self.sbp.size, 1)
+ self.assertEqual(self.sbp.address, self.address)
+
+ def test_parse(self):
+ self.sbp.parse()
+ self.assertEqual(str(self.sbp.byte), str(45))
+
+ def test_to_asm(self):
+ self.assertEqual(self.sbp.to_asm(), "$2d")
+ self.sbp.should_be_decimal = True
+ self.assertEqual(self.sbp.to_asm(), str(45))
+
+ # HexByte and DollarSignByte are the same now
+ def test_HexByte_to_asm(self):
+ h = HexByte(address=10)
+ a = h.to_asm()
+ self.assertEqual(a, "$2d")
+
+ def test_DollarSignByte_to_asm(self):
+ d = DollarSignByte(address=10)
+ a = d.to_asm()
+ self.assertEqual(a, "$2d")
+
+ def test_ItemLabelByte_to_asm(self):
+ i = ItemLabelByte(address=433)
+ self.assertEqual(i.byte, 54)
+ self.assertEqual(i.to_asm(), "COIN_CASE")
+ self.assertEqual(ItemLabelByte(address=10).to_asm(), "$2d")
+
+ def test_DecimalParam_to_asm(self):
+ d = DecimalParam(address=10)
+ x = d.to_asm()
+ self.assertEqual(x, str(0x2d))
+
+class TestMultiByteParam(unittest.TestCase):
+ def setup_for(self, somecls, byte_size=2, address=443, **kwargs):
+ self.cls = somecls(address=address, size=byte_size, **kwargs)
+ self.assertEqual(self.cls.address, address)
+ self.assertEqual(self.cls.bytes, rom_interval(address, byte_size, strings=False))
+ self.assertEqual(self.cls.size, byte_size)
+
+ def test_two_byte_param(self):
+ self.setup_for(MultiByteParam, byte_size=2)
+ self.assertEqual(self.cls.to_asm(), "$f0c0")
+
+ def test_three_byte_param(self):
+ self.setup_for(MultiByteParam, byte_size=3)
+
+ def test_PointerLabelParam_no_bank(self):
+ self.setup_for(PointerLabelParam, bank=None)
+ # assuming no label at this location..
+ self.assertEqual(self.cls.to_asm(), "$f0c0")
+ global all_labels
+ # hm.. maybe all_labels should be using a class?
+ all_labels = [{"label": "poop", "address": 0xf0c0,
+ "offset": 0xf0c0, "bank": 0,
+ "line_number": 2
+ }]
+ self.assertEqual(self.cls.to_asm(), "poop")
+
+class TestPostParsing: #(unittest.TestCase):
+ """tests that must be run after parsing all maps"""
+ @classmethod
+ def setUpClass(cls):
+ run_main()
+
+ def test_signpost_counts(self):
+ self.assertEqual(len(map_names[1][1]["signposts"]), 0)
+ self.assertEqual(len(map_names[1][2]["signposts"]), 2)
+ self.assertEqual(len(map_names[10][5]["signposts"]), 7)
+
+ def test_warp_counts(self):
+ self.assertEqual(map_names[10][5]["warp_count"], 9)
+ self.assertEqual(map_names[18][5]["warp_count"], 3)
+ self.assertEqual(map_names[15][1]["warp_count"], 2)
+
+ def test_map_sizes(self):
+ self.assertEqual(map_names[15][1]["height"], 18)
+ self.assertEqual(map_names[15][1]["width"], 10)
+ self.assertEqual(map_names[7][1]["height"], 4)
+ self.assertEqual(map_names[7][1]["width"], 4)
+
+ def test_map_connection_counts(self):
+ self.assertEqual(map_names[7][1]["connections"], 0)
+ self.assertEqual(map_names[10][1]["connections"], 12)
+ self.assertEqual(map_names[10][2]["connections"], 12)
+ self.assertEqual(map_names[11][1]["connections"], 9) # or 13?
+
+ def test_second_map_header_address(self):
+ self.assertEqual(map_names[11][1]["second_map_header_address"], 0x9509c)
+ self.assertEqual(map_names[1][5]["second_map_header_address"], 0x95bd0)
+
+ def test_event_address(self):
+ self.assertEqual(map_names[17][5]["event_address"], 0x194d67)
+ self.assertEqual(map_names[23][3]["event_address"], 0x1a9ec9)
+
+ def test_people_event_counts(self):
+ self.assertEqual(len(map_names[23][3]["people_events"]), 4)
+ self.assertEqual(len(map_names[10][3]["people_events"]), 9)
+
+class TestMetaTesting(unittest.TestCase):
+ """test whether or not i am finding at least
+ some of the tests in this file"""
+ tests = None
+
+ def setUp(self):
+ if self.tests == None:
+ self.__class__.tests = assemble_test_cases()
+
+ def test_assemble_test_cases_count(self):
+ "does assemble_test_cases find some tests?"
+ self.failUnless(len(self.tests) > 0)
+
+ def test_assemble_test_cases_inclusion(self):
+ "is this class found by assemble_test_cases?"
+ # i guess it would have to be for this to be running?
+ self.failUnless(self.__class__ in self.tests)
+
+ def test_assemble_test_cases_others(self):
+ "test other inclusions for assemble_test_cases"
+ self.failUnless(TestRomStr in self.tests)
+ self.failUnless(TestCram in self.tests)
+
+ def test_check_has_test(self):
+ self.failUnless(check_has_test("beaver", ["test_beaver"]))
+ self.failUnless(check_has_test("beaver", ["test_beaver_2"]))
+ self.failIf(check_has_test("beaver_1", ["test_beaver"]))
+
+ def test_find_untested_methods(self):
+ untested = find_untested_methods()
+ # the return type must be an iterable
+ self.failUnless(hasattr(untested, "__iter__"))
+ #.. basically, a list
+ self.failUnless(isinstance(untested, list))
+
+ def test_find_untested_methods_method(self):
+ """create a function and see if it is found"""
+ # setup a function in the global namespace
+ global some_random_test_method
+ # define the method
+ def some_random_test_method(): pass
+ # first make sure it is in the global scope
+ members = inspect.getmembers(sys.modules[__name__], inspect.isfunction)
+ func_names = [functuple[0] for functuple in members]
+ self.assertIn("some_random_test_method", func_names)
+ # test whether or not it is found by find_untested_methods
+ untested = find_untested_methods()
+ self.assertIn("some_random_test_method", untested)
+ # remove the test method from the global namespace
+ del some_random_test_method
+
+ def test_load_tests(self):
+ loader = unittest.TestLoader()
+ suite = load_tests(loader, None, None)
+ suite._tests[0]._testMethodName
+ membership_test = lambda member: \
+ inspect.isclass(member) and issubclass(member, unittest.TestCase)
+ tests = inspect.getmembers(sys.modules[__name__], membership_test)
+ classes = [x[1] for x in tests]
+ for test in suite._tests:
+ self.assertIn(test.__class__, classes)
+
+ def test_report_untested(self):
+ untested = find_untested_methods()
+ output = report_untested()
+ if len(untested) > 0:
+ self.assertIn("NOT TESTED", output)
+ for name in untested:
+ self.assertIn(name, output)
+ elif len(untested) == 0:
+ self.assertNotIn("NOT TESTED", output)
+
+def assemble_test_cases():
+ """finds classes that inherit from unittest.TestCase
+ because i am too lazy to remember to add them to a
+ global list of tests for the suite runner"""
+ classes = []
+ clsmembers = inspect.getmembers(sys.modules[__name__], inspect.isclass)
+ for (name, some_class) in clsmembers:
+ if issubclass(some_class, unittest.TestCase):
+ classes.append(some_class)
+ return classes
+
+def load_tests(loader, tests, pattern):
+ suite = unittest.TestSuite()
+ for test_class in assemble_test_cases():
+ tests = loader.loadTestsFromTestCase(test_class)
+ suite.addTests(tests)
+ return suite
+
+def check_has_test(func_name, tested_names):
+ """checks if there is a test dedicated to this function"""
+ if "test_"+func_name in tested_names:
+ return True
+ for name in tested_names:
+ if "test_"+func_name in name:
+ return True
+ return False
+
+def find_untested_methods():
+ """finds all untested functions in this module
+ by searching for method names in test case
+ method names."""
+ untested = []
+ avoid_funcs = ["main", "run_tests", "run_main", "copy", "deepcopy"]
+ test_funcs = []
+ # get a list of all classes in this module
+ classes = inspect.getmembers(sys.modules[__name__], inspect.isclass)
+ # for each class..
+ for (name, klass) in classes:
+ # only look at those that have tests
+ if issubclass(klass, unittest.TestCase):
+ # look at this class' methods
+ funcs = inspect.getmembers(klass, inspect.ismethod)
+ # for each method..
+ for (name2, func) in funcs:
+ # store the ones that begin with test_
+ if "test_" in name2 and name2[0:5] == "test_":
+ test_funcs.append([name2, func])
+ # assemble a list of all test method names (test_x, test_y, ..)
+ tested_names = [funcz[0] for funcz in test_funcs]
+ # now get a list of all functions in this module
+ funcs = inspect.getmembers(sys.modules[__name__], inspect.isfunction)
+ # for each function..
+ for (name, func) in funcs:
+ # we don't care about some of these
+ if name in avoid_funcs: continue
+ # skip functions beginning with _
+ if name[0] == "_": continue
+ # check if this function has a test named after it
+ has_test = check_has_test(name, tested_names)
+ if not has_test:
+ untested.append(name)
+ return untested
+
+def report_untested():
+ """
+ This reports about untested functions in the global namespace. This was
+ originally in the crystal module, where it would list out the majority of
+ the functions. Maybe it should be moved back.
+ """
+ untested = find_untested_methods()
+ output = "NOT TESTED: ["
+ first = True
+ for name in untested:
+ if first:
+ output += name
+ first = False
+ else: output += ", "+name
+ output += "]\n"
+ output += "total untested: " + str(len(untested))
+ return output
+
+def run_tests(): # rather than unittest.main()
+ loader = unittest.TestLoader()
+ suite = load_tests(loader, None, None)
+ unittest.TextTestRunner(verbosity=2).run(suite)
+ print report_untested()
+
+# run the unit tests when this file is executed directly
+if __name__ == "__main__":
+ run_tests()
+
diff --git a/extras/type_constants.py b/extras/type_constants.py
new file mode 100644
index 000000000..da89b0bc3
--- /dev/null
+++ b/extras/type_constants.py
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+type_constants = {
+ "NORMAL": 0x00,
+ "FIGHTING": 0x01,
+ "FLYING": 0x02,
+ "POISON": 0x03,
+ "GROUND": 0x04,
+ "ROCK": 0x05,
+ "BUG": 0x07,
+ "GHOST": 0x08,
+ "STEEL": 0x09,
+ "CURSE_T": 0x13,
+ "FIRE": 0x14,
+ "WATER": 0x15,
+ "GRASS": 0x16,
+ "ELECTRIC": 0x17,
+ "PSYCHIC": 0x18,
+ "ICE": 0x19,
+ "DRAGON": 0x1A,
+ "DARK": 0x1B,
+}
diff --git a/gfx/misc/mobile_adapter.2bpp b/gfx/misc/mobile_adapter.2bpp
new file mode 100644
index 000000000..7c496ac42
--- /dev/null
+++ b/gfx/misc/mobile_adapter.2bpp
Binary files differ
diff --git a/gfx/misc/mystery_gift.2bpp b/gfx/misc/mystery_gift.2bpp
new file mode 100644
index 000000000..04aff2048
--- /dev/null
+++ b/gfx/misc/mystery_gift.2bpp
Binary files differ
diff --git a/gfx/misc/mystery_gift_jp.2bpp b/gfx/misc/mystery_gift_jp.2bpp
new file mode 100644
index 000000000..2439f25e1
--- /dev/null
+++ b/gfx/misc/mystery_gift_jp.2bpp
Binary files differ
diff --git a/gfx/misc/pack.2bpp b/gfx/misc/pack.2bpp
new file mode 100644
index 000000000..283d04fce
--- /dev/null
+++ b/gfx/misc/pack.2bpp
Binary files differ
diff --git a/gfx/misc/division.2bpp b/gfx/misc/sgb_border.2bpp
index 7f5f7f6fa..7f5f7f6fa 100644
--- a/gfx/misc/division.2bpp
+++ b/gfx/misc/sgb_border.2bpp
Binary files differ
diff --git a/gfx/pics/001/anim0.asm b/gfx/pics/001/anim0.asm
new file mode 100644
index 000000000..e5c1cbe1e
--- /dev/null
+++ b/gfx/pics/001/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 10
+ frame 2, 10
+ frame 1, 08
+ frame 2, 06
+ frame 4, 20
+ frame 3, 06
+ frame 0, 05
+ frame 5, 05
+ endanim
+; 0xd089c
diff --git a/gfx/pics/001/anim1.asm b/gfx/pics/001/anim1.asm
new file mode 100644
index 000000000..cfc0f54e9
--- /dev/null
+++ b/gfx/pics/001/anim1.asm
@@ -0,0 +1,5 @@
+ frame 5, 05
+ frame 0, 05
+ frame 5, 05
+ endanim
+; 0xd18a0
diff --git a/gfx/backpics/001.2bpp b/gfx/pics/001/back.2bpp
index 0bf1a4a8d..0bf1a4a8d 100644
--- a/gfx/backpics/001.2bpp
+++ b/gfx/pics/001/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/001.lz b/gfx/pics/001/back.lz
index 44f8fa450..44f8fa450 100644
--- a/gfx/backpics/lz/001.lz
+++ b/gfx/pics/001/back.lz
Binary files differ
diff --git a/gfx/pics/001/bitmask.asm b/gfx/pics/001/bitmask.asm
new file mode 100644
index 000000000..c811235df
--- /dev/null
+++ b/gfx/pics/001/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %01100000
+ db %10101101
+ db %00000001
+ db %00000000
+; 1
+ db %00100000
+ db %10101101
+ db %00000001
+ db %00000000
+; 2
+ db %01000010
+ db %00101001
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00100001
+ db %00000000
+ db %00000000
+; 4
+ db %10000100
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd26f9
diff --git a/gfx/pics/001/frames.asm b/gfx/pics/001/frames.asm
new file mode 100644
index 000000000..99729f703
--- /dev/null
+++ b/gfx/pics/001/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20
+.frame2
+ db $01 ; bitmask
+ db $21, $1b, $22, $1d, $1e, $23, $24
+.frame3
+ db $02 ; bitmask
+ db $25, $26, $1b, $27, $1e
+.frame4
+ db $03 ; bitmask
+ db $1b, $1e
+.frame5
+ db $04 ; bitmask
+ db $28, $29, $2a
+; 0xd421e
diff --git a/gfx/frontpics/001.2bpp b/gfx/pics/001/front.2bpp
index e3f041d6a..e3f041d6a 100644
--- a/gfx/frontpics/001.2bpp
+++ b/gfx/pics/001/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/001.lz b/gfx/pics/001/front.lz
index fc4550001..fc4550001 100644
--- a/gfx/frontpics/lz/001.lz
+++ b/gfx/pics/001/front.lz
Binary files differ
diff --git a/gfx/anim/001.2bpp b/gfx/pics/001/tiles.2bpp
index 3ff342f4a..3ff342f4a 100644
--- a/gfx/anim/001.2bpp
+++ b/gfx/pics/001/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/002/anim0.asm b/gfx/pics/002/anim0.asm
new file mode 100644
index 000000000..65e89f5ab
--- /dev/null
+++ b/gfx/pics/002/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 1, 08
+ frame 2, 20
+ frame 1, 06
+ endanim
+; 0xd08a5
diff --git a/gfx/pics/002/anim1.asm b/gfx/pics/002/anim1.asm
new file mode 100644
index 000000000..3df18b2cd
--- /dev/null
+++ b/gfx/pics/002/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ frame 0, 08
+ frame 1, 06
+ endanim
+; 0xd18ad
diff --git a/gfx/backpics/002.2bpp b/gfx/pics/002/back.2bpp
index 760fb17b6..760fb17b6 100644
--- a/gfx/backpics/002.2bpp
+++ b/gfx/pics/002/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/002.lz b/gfx/pics/002/back.lz
index 34557d9dd..34557d9dd 100644
--- a/gfx/backpics/lz/002.lz
+++ b/gfx/pics/002/back.lz
Binary files differ
diff --git a/gfx/pics/002/bitmask.asm b/gfx/pics/002/bitmask.asm
new file mode 100644
index 000000000..fa0421574
--- /dev/null
+++ b/gfx/pics/002/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %00000000
+ db %11000010
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %11000111
+ db %01110001
+ db %00011100
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %01100001
+ db %00011000
+ db %00000000
+; 0xd2708
diff --git a/gfx/pics/002/frames.asm b/gfx/pics/002/frames.asm
new file mode 100644
index 000000000..074875072
--- /dev/null
+++ b/gfx/pics/002/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26
+.frame2
+ db $01 ; bitmask
+ db $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f, $30, $31, $32
+.frame3
+ db $02 ; bitmask
+ db $33, $34, $35, $36, $37, $38
+; 0xd423c
diff --git a/gfx/frontpics/002.2bpp b/gfx/pics/002/front.2bpp
index ac4ccaa8a..ac4ccaa8a 100644
--- a/gfx/frontpics/002.2bpp
+++ b/gfx/pics/002/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/002.lz b/gfx/pics/002/front.lz
index 7b9c8f9d9..7b9c8f9d9 100644
--- a/gfx/frontpics/lz/002.lz
+++ b/gfx/pics/002/front.lz
Binary files differ
diff --git a/gfx/anim/002.2bpp b/gfx/pics/002/tiles.2bpp
index 05b7ecd8d..05b7ecd8d 100644
--- a/gfx/anim/002.2bpp
+++ b/gfx/pics/002/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/003/anim0.asm b/gfx/pics/003/anim0.asm
new file mode 100644
index 000000000..9ee74b6c0
--- /dev/null
+++ b/gfx/pics/003/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 10
+ frame 2, 35
+ frame 3, 08
+ frame 4, 08
+ setrepeat 2
+ frame 0, 10
+ frame 5, 10
+ dorepeat 5
+ endanim
+; 0xd08b6
diff --git a/gfx/pics/003/anim1.asm b/gfx/pics/003/anim1.asm
new file mode 100644
index 000000000..6eebd7cd3
--- /dev/null
+++ b/gfx/pics/003/anim1.asm
@@ -0,0 +1,6 @@
+ frame 1, 35
+ frame 0, 13
+ frame 6, 13
+ frame 7, 13
+ endanim
+; 0xd18b6
diff --git a/gfx/backpics/003.2bpp b/gfx/pics/003/back.2bpp
index d61859283..d61859283 100644
--- a/gfx/backpics/003.2bpp
+++ b/gfx/pics/003/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/003.lz b/gfx/pics/003/back.lz
index 27ca82e8a..27ca82e8a 100644
--- a/gfx/backpics/lz/003.lz
+++ b/gfx/pics/003/back.lz
Binary files differ
diff --git a/gfx/pics/003/bitmask.asm b/gfx/pics/003/bitmask.asm
new file mode 100644
index 000000000..bfdf4f1b5
--- /dev/null
+++ b/gfx/pics/003/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00000000
+ db %00100000
+ db %00010000
+ db %00001000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %01110000
+ db %00111000
+ db %00011100
+ db %00001110
+ db %10000111
+ db %00000011
+ db %00000000
+; 2
+ db %10001000
+ db %00001011
+ db %00100101
+ db %01000000
+ db %00111000
+ db %01111000
+ db %00000000
+; 3
+ db %00001000
+ db %00001011
+ db %00000101
+ db %01000000
+ db %00110000
+ db %01111000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11000000
+ db %00000000
+; 5
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2732
diff --git a/gfx/pics/003/frames.asm b/gfx/pics/003/frames.asm
new file mode 100644
index 000000000..504f80202
--- /dev/null
+++ b/gfx/pics/003/frames.asm
@@ -0,0 +1,32 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33
+.frame2
+ db $01 ; bitmask
+ db $34, $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e, $3f
+ db $40, $41, $42, $43, $44, $45
+.frame3
+ db $02 ; bitmask
+ db $46, $47, $48, $49, $4a, $4b, $4c, $4d, $4e, $4f, $50, $51
+ db $52, $53, $54, $55
+.frame4
+ db $03 ; bitmask
+ db $46, $56, $57, $58, $4b, $4c, $4e, $59, $51, $5a, $5b, $54
+ db $55
+.frame5
+ db $04 ; bitmask
+ db $5c, $5d
+.frame6
+ db $05 ; bitmask
+ db $5e, $5f
+.frame7
+ db $05 ; bitmask
+ db $60, $61
+; 0xd4289
diff --git a/gfx/frontpics/003.2bpp b/gfx/pics/003/front.2bpp
index 1e9b87406..1e9b87406 100644
--- a/gfx/frontpics/003.2bpp
+++ b/gfx/pics/003/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/003.lz b/gfx/pics/003/front.lz
index d436da0bd..d436da0bd 100644
--- a/gfx/frontpics/lz/003.lz
+++ b/gfx/pics/003/front.lz
Binary files differ
diff --git a/gfx/anim/003.2bpp b/gfx/pics/003/tiles.2bpp
index 91d3eb5dc..91d3eb5dc 100644
--- a/gfx/anim/003.2bpp
+++ b/gfx/pics/003/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/004/anim0.asm b/gfx/pics/004/anim0.asm
new file mode 100644
index 000000000..72a0fe83d
--- /dev/null
+++ b/gfx/pics/004/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 04
+ frame 1, 08
+ frame 2, 24
+ frame 1, 08
+ frame 4, 10
+ frame 0, 10
+ frame 4, 10
+ endanim
+; 0xd08c5
diff --git a/gfx/pics/004/anim1.asm b/gfx/pics/004/anim1.asm
new file mode 100644
index 000000000..219b5407f
--- /dev/null
+++ b/gfx/pics/004/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd18bf
diff --git a/gfx/backpics/004.2bpp b/gfx/pics/004/back.2bpp
index e81903408..e81903408 100644
--- a/gfx/backpics/004.2bpp
+++ b/gfx/pics/004/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/004.lz b/gfx/pics/004/back.lz
index e8eb5eb4e..e8eb5eb4e 100644
--- a/gfx/backpics/lz/004.lz
+++ b/gfx/pics/004/back.lz
Binary files differ
diff --git a/gfx/pics/004/bitmask.asm b/gfx/pics/004/bitmask.asm
new file mode 100644
index 000000000..fc93cb7e3
--- /dev/null
+++ b/gfx/pics/004/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %00001100
+ db %00110001
+ db %00000000
+ db %00000000
+; 1
+ db %11101111
+ db %00111101
+ db %00000000
+ db %00000000
+; 2
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %10000000
+ db %01100011
+ db %00000000
+; 0xd2742
diff --git a/gfx/pics/004/frames.asm b/gfx/pics/004/frames.asm
new file mode 100644
index 000000000..30e1c3fb1
--- /dev/null
+++ b/gfx/pics/004/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d
+.frame2
+ db $01 ; bitmask
+ db $14, $1e, $1f, $1a, $20, $21, $22, $1b, $23, $24, $1c, $1d
+.frame3
+ db $02 ; bitmask
+ db $25
+.frame4
+ db $03 ; bitmask
+ db $14, $26, $27, $28, $29
+; 0xd42ac
diff --git a/gfx/frontpics/004.2bpp b/gfx/pics/004/front.2bpp
index e49b93a5b..e49b93a5b 100644
--- a/gfx/frontpics/004.2bpp
+++ b/gfx/pics/004/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/004.lz b/gfx/pics/004/front.lz
index 7cc31694b..7cc31694b 100644
--- a/gfx/frontpics/lz/004.lz
+++ b/gfx/pics/004/front.lz
Binary files differ
diff --git a/gfx/anim/004.2bpp b/gfx/pics/004/tiles.2bpp
index da329dff7..da329dff7 100644
--- a/gfx/anim/004.2bpp
+++ b/gfx/pics/004/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/005/anim0.asm b/gfx/pics/005/anim0.asm
new file mode 100644
index 000000000..30eeae979
--- /dev/null
+++ b/gfx/pics/005/anim0.asm
@@ -0,0 +1,9 @@
+ frame 3, 08
+ frame 2, 08
+ frame 3, 08
+ frame 2, 08
+ frame 1, 15
+ frame 3, 08
+ frame 4, 30
+ endanim
+; 0xd08d4
diff --git a/gfx/pics/005/anim1.asm b/gfx/pics/005/anim1.asm
new file mode 100644
index 000000000..d3320e33c
--- /dev/null
+++ b/gfx/pics/005/anim1.asm
@@ -0,0 +1,8 @@
+ frame 3, 08
+ frame 4, 15
+ setrepeat 2
+ frame 0, 08
+ frame 1, 10
+ dorepeat 3
+ endanim
+; 0xd18cc
diff --git a/gfx/backpics/005.2bpp b/gfx/pics/005/back.2bpp
index 3d3e1ef94..3d3e1ef94 100644
--- a/gfx/backpics/005.2bpp
+++ b/gfx/pics/005/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/005.lz b/gfx/pics/005/back.lz
index aec0cd7b2..aec0cd7b2 100644
--- a/gfx/backpics/lz/005.lz
+++ b/gfx/pics/005/back.lz
Binary files differ
diff --git a/gfx/pics/005/bitmask.asm b/gfx/pics/005/bitmask.asm
new file mode 100644
index 000000000..e9a1b8e47
--- /dev/null
+++ b/gfx/pics/005/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %00001100
+ db %00000010
+ db %00000000
+ db %00000000
+; 1
+ db %11011110
+ db %11110111
+ db %01011001
+ db %00000000
+ db %00000000
+; 2
+ db %11011110
+ db %11110111
+ db %00111001
+ db %00001100
+ db %00000000
+; 0xd2751
diff --git a/gfx/pics/005/frames.asm b/gfx/pics/005/frames.asm
new file mode 100644
index 000000000..0b8add687
--- /dev/null
+++ b/gfx/pics/005/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26
+.frame2
+ db $01 ; bitmask
+ db $00, $27, $28, $00, $00, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $00, $32, $33
+.frame3
+ db $02 ; bitmask
+ db $00, $27, $34, $35, $00, $29, $2a, $36, $37, $2d, $2e, $2f
+ db $38, $39, $00, $3a, $3b, $3c, $3d
+.frame4
+ db $02 ; bitmask
+ db $00, $27, $34, $35, $00, $29, $2a, $36, $37, $2d, $2e, $2f
+ db $3e, $39, $00, $3f, $40, $3c, $3d
+; 0xd42f2
diff --git a/gfx/frontpics/005.2bpp b/gfx/pics/005/front.2bpp
index 7ad34dac4..7ad34dac4 100644
--- a/gfx/frontpics/005.2bpp
+++ b/gfx/pics/005/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/005.lz b/gfx/pics/005/front.lz
index efe789dad..efe789dad 100644
--- a/gfx/frontpics/lz/005.lz
+++ b/gfx/pics/005/front.lz
Binary files differ
diff --git a/gfx/anim/005.2bpp b/gfx/pics/005/tiles.2bpp
index 186526751..186526751 100644
--- a/gfx/anim/005.2bpp
+++ b/gfx/pics/005/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/006/anim0.asm b/gfx/pics/006/anim0.asm
new file mode 100644
index 000000000..b258e35c7
--- /dev/null
+++ b/gfx/pics/006/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 1, 16
+ setrepeat 2
+ frame 2, 09
+ frame 1, 09
+ dorepeat 3
+ endanim
+; 0xd08e1
diff --git a/gfx/pics/006/anim1.asm b/gfx/pics/006/anim1.asm
new file mode 100644
index 000000000..daffccb9d
--- /dev/null
+++ b/gfx/pics/006/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd18d5
diff --git a/gfx/backpics/006.2bpp b/gfx/pics/006/back.2bpp
index c1566a62f..c1566a62f 100644
--- a/gfx/backpics/006.2bpp
+++ b/gfx/pics/006/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/006.lz b/gfx/pics/006/back.lz
index db1d9c9ea..db1d9c9ea 100644
--- a/gfx/backpics/lz/006.lz
+++ b/gfx/pics/006/back.lz
Binary files differ
diff --git a/gfx/pics/006/bitmask.asm b/gfx/pics/006/bitmask.asm
new file mode 100644
index 000000000..21a615a42
--- /dev/null
+++ b/gfx/pics/006/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10011011
+ db %11000111
+ db %00100101
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011111
+ db %11000111
+ db %11100101
+ db %11110011
+ db %00111000
+ db %00111100
+ db %00000000
+; 2
+ db %10000000
+ db %11000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2766
diff --git a/gfx/pics/006/frames.asm b/gfx/pics/006/frames.asm
new file mode 100644
index 000000000..8502da5af
--- /dev/null
+++ b/gfx/pics/006/frames.asm
@@ -0,0 +1,16 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f
+.frame2
+ db $01 ; bitmask
+ db $31, $40, $41, $42, $34, $43, $36, $37, $44, $45, $3a, $3b
+ db $3c, $46, $05, $47, $3e, $3f, $48, $49, $4a, $4b, $05, $4c
+ db $4d, $05, $2a, $4e, $4f
+.frame3
+ db $02 ; bitmask
+ db $50, $51, $52, $53
+; 0xd432b
diff --git a/gfx/frontpics/006.2bpp b/gfx/pics/006/front.2bpp
index ce2164b38..ce2164b38 100644
--- a/gfx/frontpics/006.2bpp
+++ b/gfx/pics/006/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/006.lz b/gfx/pics/006/front.lz
index aab0fda99..aab0fda99 100644
--- a/gfx/frontpics/lz/006.lz
+++ b/gfx/pics/006/front.lz
Binary files differ
diff --git a/gfx/anim/006.2bpp b/gfx/pics/006/tiles.2bpp
index e968a5d23..e968a5d23 100644
--- a/gfx/anim/006.2bpp
+++ b/gfx/pics/006/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/007/anim0.asm b/gfx/pics/007/anim0.asm
new file mode 100644
index 000000000..9969d4263
--- /dev/null
+++ b/gfx/pics/007/anim0.asm
@@ -0,0 +1,10 @@
+ frame 3, 10
+ setrepeat 2
+ frame 1, 09
+ frame 2, 05
+ dorepeat 2
+ frame 1, 10
+ frame 3, 15
+ frame 4, 05
+ endanim
+; 0xd08f2
diff --git a/gfx/pics/007/anim1.asm b/gfx/pics/007/anim1.asm
new file mode 100644
index 000000000..de24c37a6
--- /dev/null
+++ b/gfx/pics/007/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ endanim
+; 0xd18de
diff --git a/gfx/backpics/007.2bpp b/gfx/pics/007/back.2bpp
index 8a76364e4..8a76364e4 100644
--- a/gfx/backpics/007.2bpp
+++ b/gfx/pics/007/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/007.lz b/gfx/pics/007/back.lz
index a8fa8d3fd..a8fa8d3fd 100644
--- a/gfx/backpics/lz/007.lz
+++ b/gfx/pics/007/back.lz
Binary files differ
diff --git a/gfx/pics/007/bitmask.asm b/gfx/pics/007/bitmask.asm
new file mode 100644
index 000000000..a33cd7afb
--- /dev/null
+++ b/gfx/pics/007/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %11100111
+ db %00011100
+ db %00000010
+ db %00000000
+; 1
+ db %11100111
+ db %00011100
+ db %10001110
+ db %00000001
+; 2
+ db %11000010
+ db %00001000
+ db %00000000
+ db %00000000
+; 3
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %01000010
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd277a
diff --git a/gfx/pics/007/frames.asm b/gfx/pics/007/frames.asm
new file mode 100644
index 000000000..e30af6db2
--- /dev/null
+++ b/gfx/pics/007/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $03, $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $03, $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+ db $24, $25
+.frame3
+ db $02 ; bitmask
+ db $26, $27, $28, $29
+.frame4
+ db $03 ; bitmask
+ db $28
+.frame5
+ db $04 ; bitmask
+ db $26, $27, $29
+; 0xd435a
diff --git a/gfx/frontpics/007.2bpp b/gfx/pics/007/front.2bpp
index 3e51473e8..3e51473e8 100644
--- a/gfx/frontpics/007.2bpp
+++ b/gfx/pics/007/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/007.lz b/gfx/pics/007/front.lz
index 175cc5e0d..175cc5e0d 100644
--- a/gfx/frontpics/lz/007.lz
+++ b/gfx/pics/007/front.lz
Binary files differ
diff --git a/gfx/anim/007.2bpp b/gfx/pics/007/tiles.2bpp
index 8c2d70e99..8c2d70e99 100644
--- a/gfx/anim/007.2bpp
+++ b/gfx/pics/007/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/008/anim0.asm b/gfx/pics/008/anim0.asm
new file mode 100644
index 000000000..832b87b88
--- /dev/null
+++ b/gfx/pics/008/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 04
+ frame 2, 34
+ setrepeat 3
+ frame 0, 09
+ frame 1, 09
+ dorepeat 3
+ endanim
+; 0xd08ff
diff --git a/gfx/pics/008/anim1.asm b/gfx/pics/008/anim1.asm
new file mode 100644
index 000000000..40c4fcd14
--- /dev/null
+++ b/gfx/pics/008/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd18e7
diff --git a/gfx/backpics/008.2bpp b/gfx/pics/008/back.2bpp
index 234b2b74b..234b2b74b 100644
--- a/gfx/backpics/008.2bpp
+++ b/gfx/pics/008/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/008.lz b/gfx/pics/008/back.lz
index 5734c20cb..5734c20cb 100644
--- a/gfx/backpics/lz/008.lz
+++ b/gfx/pics/008/back.lz
Binary files differ
diff --git a/gfx/pics/008/bitmask.asm b/gfx/pics/008/bitmask.asm
new file mode 100644
index 000000000..ed46271e8
--- /dev/null
+++ b/gfx/pics/008/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %10001110
+ db %11100011
+ db %00111100
+ db %00001111
+; 1
+ db %00000000
+ db %11000000
+ db %00110000
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %01000001
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd2789
diff --git a/gfx/pics/008/frames.asm b/gfx/pics/008/frames.asm
new file mode 100644
index 000000000..9ebf74b9b
--- /dev/null
+++ b/gfx/pics/008/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34
+.frame2
+ db $01 ; bitmask
+ db $35, $36, $37, $38
+.frame3
+ db $02 ; bitmask
+ db $39, $3a, $3b, $3c, $3d
+; 0xd437d
diff --git a/gfx/frontpics/008.2bpp b/gfx/pics/008/front.2bpp
index 9c3ea23ec..9c3ea23ec 100644
--- a/gfx/frontpics/008.2bpp
+++ b/gfx/pics/008/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/008.lz b/gfx/pics/008/front.lz
index 29642807d..29642807d 100644
--- a/gfx/frontpics/lz/008.lz
+++ b/gfx/pics/008/front.lz
Binary files differ
diff --git a/gfx/anim/008.2bpp b/gfx/pics/008/tiles.2bpp
index 3d771c0c8..3d771c0c8 100644
--- a/gfx/anim/008.2bpp
+++ b/gfx/pics/008/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/009/anim0.asm b/gfx/pics/009/anim0.asm
new file mode 100644
index 000000000..2d8b464d0
--- /dev/null
+++ b/gfx/pics/009/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 06
+ frame 2, 40
+ frame 3, 08
+ frame 1, 04
+ endanim
+; 0xd0908
diff --git a/gfx/pics/009/anim1.asm b/gfx/pics/009/anim1.asm
new file mode 100644
index 000000000..b25c75e5a
--- /dev/null
+++ b/gfx/pics/009/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 12
+ frame 4, 12
+ dorepeat 1
+ endanim
+; 0xd18f0
diff --git a/gfx/backpics/009.2bpp b/gfx/pics/009/back.2bpp
index bdc44804d..bdc44804d 100644
--- a/gfx/backpics/009.2bpp
+++ b/gfx/pics/009/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/009.lz b/gfx/pics/009/back.lz
index 5e27c9989..5e27c9989 100644
--- a/gfx/backpics/lz/009.lz
+++ b/gfx/pics/009/back.lz
Binary files differ
diff --git a/gfx/pics/009/bitmask.asm b/gfx/pics/009/bitmask.asm
new file mode 100644
index 000000000..211912d5c
--- /dev/null
+++ b/gfx/pics/009/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00001100
+ db %10001111
+ db %11000111
+ db %10100111
+ db %11000111
+ db %00000011
+ db %00000000
+; 1
+ db %10011111
+ db %11001111
+ db %11000111
+ db %10100111
+ db %11110111
+ db %00011011
+ db %00000000
+; 2
+ db %00011100
+ db %10001111
+ db %11000111
+ db %10100111
+ db %11000111
+ db %10000011
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %10000000
+ db %00000000
+; 0xd27a5
diff --git a/gfx/pics/009/frames.asm b/gfx/pics/009/frames.asm
new file mode 100644
index 000000000..cbef1366e
--- /dev/null
+++ b/gfx/pics/009/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48
+.frame2
+ db $01 ; bitmask
+ db $49, $4a, $31, $4b, $4c, $4d, $4e, $4f, $50, $51, $52, $53
+ db $54, $55, $56, $3b, $3c, $57, $58, $3f, $40, $41, $42, $43
+ db $44, $59, $5a, $45, $46, $47, $48, $5b, $5c
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $4c, $33, $4f, $50, $51, $5d, $54, $55, $56, $3b
+ db $3c, $57, $58, $3f, $40, $41, $42, $43, $44, $45, $46, $47
+ db $48, $5e
+.frame4
+ db $03 ; bitmask
+ db $5e
+; 0xd43dd
diff --git a/gfx/frontpics/009.2bpp b/gfx/pics/009/front.2bpp
index 74131548e..74131548e 100644
--- a/gfx/frontpics/009.2bpp
+++ b/gfx/pics/009/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/009.lz b/gfx/pics/009/front.lz
index 33148b076..33148b076 100644
--- a/gfx/frontpics/lz/009.lz
+++ b/gfx/pics/009/front.lz
Binary files differ
diff --git a/gfx/anim/009.2bpp b/gfx/pics/009/tiles.2bpp
index 2f70638e3..2f70638e3 100644
--- a/gfx/anim/009.2bpp
+++ b/gfx/pics/009/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/010/anim0.asm b/gfx/pics/010/anim0.asm
new file mode 100644
index 000000000..a5cf5f238
--- /dev/null
+++ b/gfx/pics/010/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 1, 08
+ frame 2, 12
+ frame 1, 12
+ frame 2, 08
+ frame 1, 08
+ endanim
+; 0xd0915
diff --git a/gfx/pics/010/anim1.asm b/gfx/pics/010/anim1.asm
new file mode 100644
index 000000000..e75b83f5c
--- /dev/null
+++ b/gfx/pics/010/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd18f9
diff --git a/gfx/backpics/010.2bpp b/gfx/pics/010/back.2bpp
index c4bb9e01d..c4bb9e01d 100644
--- a/gfx/backpics/010.2bpp
+++ b/gfx/pics/010/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/010.lz b/gfx/pics/010/back.lz
index a3788d1e4..a3788d1e4 100644
--- a/gfx/backpics/lz/010.lz
+++ b/gfx/pics/010/back.lz
Binary files differ
diff --git a/gfx/pics/010/bitmask.asm b/gfx/pics/010/bitmask.asm
new file mode 100644
index 000000000..e1674dda2
--- /dev/null
+++ b/gfx/pics/010/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %11000110
+ db %00111001
+ db %00000011
+ db %00000000
+; 1
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd27ad
diff --git a/gfx/pics/010/frames.asm b/gfx/pics/010/frames.asm
new file mode 100644
index 000000000..4bfa33c38
--- /dev/null
+++ b/gfx/pics/010/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $19, $1a, $1b, $1c, $1d, $1e, $1f, $20
+.frame2
+ db $00 ; bitmask
+ db $21, $00, $22, $1a, $1b, $23, $24, $1e, $1f, $20
+.frame3
+ db $01 ; bitmask
+ db $25
+; 0xd43fb
diff --git a/gfx/frontpics/010.2bpp b/gfx/pics/010/front.2bpp
index 719bf0ec9..719bf0ec9 100644
--- a/gfx/frontpics/010.2bpp
+++ b/gfx/pics/010/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/010.lz b/gfx/pics/010/front.lz
index d3036d9ff..d3036d9ff 100644
--- a/gfx/frontpics/lz/010.lz
+++ b/gfx/pics/010/front.lz
Binary files differ
diff --git a/gfx/anim/010.2bpp b/gfx/pics/010/tiles.2bpp
index 79f966452..79f966452 100644
--- a/gfx/anim/010.2bpp
+++ b/gfx/pics/010/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/011/anim0.asm b/gfx/pics/011/anim0.asm
new file mode 100644
index 000000000..da76c7094
--- /dev/null
+++ b/gfx/pics/011/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 12
+ frame 2, 24
+ frame 1, 12
+ endanim
+; 0xd091c
diff --git a/gfx/pics/011/anim1.asm b/gfx/pics/011/anim1.asm
new file mode 100644
index 000000000..e22d46cb7
--- /dev/null
+++ b/gfx/pics/011/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1904
diff --git a/gfx/backpics/011.2bpp b/gfx/pics/011/back.2bpp
index 35e667fab..35e667fab 100644
--- a/gfx/backpics/011.2bpp
+++ b/gfx/pics/011/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/011.lz b/gfx/pics/011/back.lz
index a2a446960..a2a446960 100644
--- a/gfx/backpics/lz/011.lz
+++ b/gfx/pics/011/back.lz
Binary files differ
diff --git a/gfx/pics/011/bitmask.asm b/gfx/pics/011/bitmask.asm
new file mode 100644
index 000000000..1041f7ee5
--- /dev/null
+++ b/gfx/pics/011/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10001000
+ db %00111001
+ db %00000111
+ db %00000000
+; 1
+ db %10011000
+ db %00111011
+ db %00000111
+ db %00000000
+; 2
+ db %00000000
+ db %00001000
+ db %00000001
+ db %00000000
+; 0xd27b9
diff --git a/gfx/pics/011/frames.asm b/gfx/pics/011/frames.asm
new file mode 100644
index 000000000..acde5cf10
--- /dev/null
+++ b/gfx/pics/011/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $00, $22, $23, $24, $25, $26, $27, $28, $29, $2a, $21
+.frame3
+ db $02 ; bitmask
+ db $1c, $1f
+.frame4
+ db $02 ; bitmask
+ db $26, $29
+; 0xd441f
diff --git a/gfx/frontpics/011.2bpp b/gfx/pics/011/front.2bpp
index 604b1a1d6..604b1a1d6 100644
--- a/gfx/frontpics/011.2bpp
+++ b/gfx/pics/011/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/011.lz b/gfx/pics/011/front.lz
index 1dcd7a501..1dcd7a501 100644
--- a/gfx/frontpics/lz/011.lz
+++ b/gfx/pics/011/front.lz
Binary files differ
diff --git a/gfx/anim/011.2bpp b/gfx/pics/011/tiles.2bpp
index 7c989efc7..7c989efc7 100644
--- a/gfx/anim/011.2bpp
+++ b/gfx/pics/011/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/012/anim0.asm b/gfx/pics/012/anim0.asm
new file mode 100644
index 000000000..d31161a28
--- /dev/null
+++ b/gfx/pics/012/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 04
+ frame 2, 24
+ setrepeat 3
+ frame 0, 06
+ frame 1, 06
+ dorepeat 3
+ endanim
+; 0xd0929
diff --git a/gfx/pics/012/anim1.asm b/gfx/pics/012/anim1.asm
new file mode 100644
index 000000000..1eb152f28
--- /dev/null
+++ b/gfx/pics/012/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 10
+ dorepeat 1
+ endanim
+; 0xd190d
diff --git a/gfx/backpics/012.2bpp b/gfx/pics/012/back.2bpp
index d1c7885b2..d1c7885b2 100644
--- a/gfx/backpics/012.2bpp
+++ b/gfx/pics/012/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/012.lz b/gfx/pics/012/back.lz
index 6d741f493..6d741f493 100644
--- a/gfx/backpics/lz/012.lz
+++ b/gfx/pics/012/back.lz
Binary files differ
diff --git a/gfx/pics/012/bitmask.asm b/gfx/pics/012/bitmask.asm
new file mode 100644
index 000000000..fdc1f37ab
--- /dev/null
+++ b/gfx/pics/012/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10000000
+ db %11110111
+ db %01011000
+ db %11111100
+ db %11111111
+ db %01111111
+ db %00000000
+; 1
+ db %00000000
+ db %00000100
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd27c7
diff --git a/gfx/pics/012/frames.asm b/gfx/pics/012/frames.asm
new file mode 100644
index 000000000..aee159cd9
--- /dev/null
+++ b/gfx/pics/012/frames.asm
@@ -0,0 +1,11 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $03, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47
+ db $48, $03, $03, $03, $49, $4a, $03, $03
+.frame2
+ db $01 ; bitmask
+ db $4b, $4c
+; 0xd4447
diff --git a/gfx/frontpics/012.2bpp b/gfx/pics/012/front.2bpp
index cfc758b7b..cfc758b7b 100644
--- a/gfx/frontpics/012.2bpp
+++ b/gfx/pics/012/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/012.lz b/gfx/pics/012/front.lz
index bf8b7a690..bf8b7a690 100644
--- a/gfx/frontpics/lz/012.lz
+++ b/gfx/pics/012/front.lz
Binary files differ
diff --git a/gfx/anim/012.2bpp b/gfx/pics/012/tiles.2bpp
index c806febab..c806febab 100644
--- a/gfx/anim/012.2bpp
+++ b/gfx/pics/012/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/013/anim0.asm b/gfx/pics/013/anim0.asm
new file mode 100644
index 000000000..5d959a772
--- /dev/null
+++ b/gfx/pics/013/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 06
+ frame 1, 18
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ frame 4, 06
+ frame 3, 06
+ dorepeat 3
+ endanim
+; 0xd093a
diff --git a/gfx/pics/013/anim1.asm b/gfx/pics/013/anim1.asm
new file mode 100644
index 000000000..30dcb9185
--- /dev/null
+++ b/gfx/pics/013/anim1.asm
@@ -0,0 +1,12 @@
+ setrepeat 2
+ frame 0, 04
+ frame 2, 04
+ dorepeat 1
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ frame 4, 05
+ frame 3, 05
+ dorepeat 5
+ endanim
+; 0xd1922
diff --git a/gfx/backpics/013.2bpp b/gfx/pics/013/back.2bpp
index 2fd33288d..2fd33288d 100644
--- a/gfx/backpics/013.2bpp
+++ b/gfx/pics/013/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/013.lz b/gfx/pics/013/back.lz
index 64decb914..64decb914 100644
--- a/gfx/backpics/lz/013.lz
+++ b/gfx/pics/013/back.lz
Binary files differ
diff --git a/gfx/pics/013/bitmask.asm b/gfx/pics/013/bitmask.asm
new file mode 100644
index 000000000..defd3d5cd
--- /dev/null
+++ b/gfx/pics/013/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00001100
+ db %00000001
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %11000110
+ db %00000000
+; 0xd27d3
diff --git a/gfx/pics/013/frames.asm b/gfx/pics/013/frames.asm
new file mode 100644
index 000000000..c7a2a34a2
--- /dev/null
+++ b/gfx/pics/013/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f
+.frame3
+ db $02 ; bitmask
+ db $20, $21, $22, $23
+.frame4
+ db $02 ; bitmask
+ db $20, $21, $00, $24
+; 0xd4462
diff --git a/gfx/frontpics/013.2bpp b/gfx/pics/013/front.2bpp
index 7bfef3690..7bfef3690 100644
--- a/gfx/frontpics/013.2bpp
+++ b/gfx/pics/013/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/013.lz b/gfx/pics/013/front.lz
index 091df588a..091df588a 100644
--- a/gfx/frontpics/lz/013.lz
+++ b/gfx/pics/013/front.lz
Binary files differ
diff --git a/gfx/anim/013.2bpp b/gfx/pics/013/tiles.2bpp
index 85290af00..85290af00 100644
--- a/gfx/anim/013.2bpp
+++ b/gfx/pics/013/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/014/anim0.asm b/gfx/pics/014/anim0.asm
new file mode 100644
index 000000000..b67e66e26
--- /dev/null
+++ b/gfx/pics/014/anim0.asm
@@ -0,0 +1,4 @@
+ frame 0, 12
+ frame 1, 24
+ endanim
+; 0xd093f
diff --git a/gfx/pics/014/anim1.asm b/gfx/pics/014/anim1.asm
new file mode 100644
index 000000000..a7ca98540
--- /dev/null
+++ b/gfx/pics/014/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd192b
diff --git a/gfx/backpics/014.2bpp b/gfx/pics/014/back.2bpp
index f9a1affbe..f9a1affbe 100644
--- a/gfx/backpics/014.2bpp
+++ b/gfx/pics/014/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/014.lz b/gfx/pics/014/back.lz
index b369857d5..b369857d5 100644
--- a/gfx/backpics/lz/014.lz
+++ b/gfx/pics/014/back.lz
Binary files differ
diff --git a/gfx/pics/014/bitmask.asm b/gfx/pics/014/bitmask.asm
new file mode 100644
index 000000000..c44358546
--- /dev/null
+++ b/gfx/pics/014/bitmask.asm
@@ -0,0 +1,6 @@
+; 0
+ db %11100000
+ db %10011100
+ db %00000011
+ db %00000000
+; 0xd27d7
diff --git a/gfx/pics/014/frames.asm b/gfx/pics/014/frames.asm
new file mode 100644
index 000000000..afe506784
--- /dev/null
+++ b/gfx/pics/014/frames.asm
@@ -0,0 +1,5 @@
+ dw .frame1
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+; 0xd446e
diff --git a/gfx/frontpics/014.2bpp b/gfx/pics/014/front.2bpp
index 1a5c931a4..1a5c931a4 100644
--- a/gfx/frontpics/014.2bpp
+++ b/gfx/pics/014/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/014.lz b/gfx/pics/014/front.lz
index 2f2431edf..2f2431edf 100644
--- a/gfx/frontpics/lz/014.lz
+++ b/gfx/pics/014/front.lz
Binary files differ
diff --git a/gfx/anim/014.2bpp b/gfx/pics/014/tiles.2bpp
index 623a84640..623a84640 100644
--- a/gfx/anim/014.2bpp
+++ b/gfx/pics/014/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/015/anim0.asm b/gfx/pics/015/anim0.asm
new file mode 100644
index 000000000..036fbb738
--- /dev/null
+++ b/gfx/pics/015/anim0.asm
@@ -0,0 +1,12 @@
+ setrepeat 8
+ frame 3, 02
+ frame 1, 01
+ frame 2, 01
+ frame 1, 02
+ dorepeat 1
+ setrepeat 2
+ frame 0, 10
+ frame 3, 10
+ dorepeat 7
+ endanim
+; 0xd0954
diff --git a/gfx/pics/015/anim1.asm b/gfx/pics/015/anim1.asm
new file mode 100644
index 000000000..8205f9a8c
--- /dev/null
+++ b/gfx/pics/015/anim1.asm
@@ -0,0 +1,10 @@
+ setrepeat 4
+ frame 3, 02
+ frame 1, 01
+ frame 2, 01
+ frame 1, 02
+ dorepeat 1
+ frame 0, 25
+ frame 3, 10
+ endanim
+; 0xd193c
diff --git a/gfx/backpics/015.2bpp b/gfx/pics/015/back.2bpp
index e90f3e1a6..e90f3e1a6 100644
--- a/gfx/backpics/015.2bpp
+++ b/gfx/pics/015/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/015.lz b/gfx/pics/015/back.lz
index 492eb64e2..492eb64e2 100644
--- a/gfx/backpics/lz/015.lz
+++ b/gfx/pics/015/back.lz
Binary files differ
diff --git a/gfx/pics/015/bitmask.asm b/gfx/pics/015/bitmask.asm
new file mode 100644
index 000000000..c5ec47a67
--- /dev/null
+++ b/gfx/pics/015/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10000000
+ db %11000111
+ db %11100011
+ db %11110001
+ db %01111000
+ db %00111000
+ db %00000000
+; 1
+ db %10000000
+ db %11000011
+ db %11100011
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd27e5
diff --git a/gfx/pics/015/frames.asm b/gfx/pics/015/frames.asm
new file mode 100644
index 000000000..5110adab0
--- /dev/null
+++ b/gfx/pics/015/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44, $04, $04, $04
+.frame2
+ db $00 ; bitmask
+ db $45, $32, $46, $34, $47, $48, $37, $38, $39, $3a, $3b, $3c
+ db $49, $4a, $4b, $4c, $4d, $4e, $4f, $44, $04, $04, $04
+.frame3
+ db $01 ; bitmask
+ db $50, $51, $52, $53, $54, $37, $38, $39, $3a, $55, $3c
+; 0xd44b0
diff --git a/gfx/frontpics/015.2bpp b/gfx/pics/015/front.2bpp
index 091316ee1..091316ee1 100644
--- a/gfx/frontpics/015.2bpp
+++ b/gfx/pics/015/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/015.lz b/gfx/pics/015/front.lz
index 55f560521..55f560521 100644
--- a/gfx/frontpics/lz/015.lz
+++ b/gfx/pics/015/front.lz
Binary files differ
diff --git a/gfx/anim/015.2bpp b/gfx/pics/015/tiles.2bpp
index 3e7c800a2..3e7c800a2 100644
--- a/gfx/anim/015.2bpp
+++ b/gfx/pics/015/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/016/anim0.asm b/gfx/pics/016/anim0.asm
new file mode 100644
index 000000000..4ca6553d2
--- /dev/null
+++ b/gfx/pics/016/anim0.asm
@@ -0,0 +1,11 @@
+ frame 0, 02
+ frame 3, 06
+ frame 0, 12
+ setrepeat 3
+ frame 0, 04
+ frame 1, 03
+ frame 2, 04
+ frame 1, 03
+ dorepeat 4
+ endanim
+; 0xd0967
diff --git a/gfx/pics/016/anim1.asm b/gfx/pics/016/anim1.asm
new file mode 100644
index 000000000..25a55fb45
--- /dev/null
+++ b/gfx/pics/016/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 08
+ frame 1, 04
+ frame 2, 06
+ frame 1, 04
+ dorepeat 1
+ endanim
+; 0xd1949
diff --git a/gfx/backpics/016.2bpp b/gfx/pics/016/back.2bpp
index aedd7533f..aedd7533f 100644
--- a/gfx/backpics/016.2bpp
+++ b/gfx/pics/016/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/016.lz b/gfx/pics/016/back.lz
index 48669456e..48669456e 100644
--- a/gfx/backpics/lz/016.lz
+++ b/gfx/pics/016/back.lz
Binary files differ
diff --git a/gfx/pics/016/bitmask.asm b/gfx/pics/016/bitmask.asm
new file mode 100644
index 000000000..c1b5e0610
--- /dev/null
+++ b/gfx/pics/016/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %01000111
+ db %10000000
+ db %00110011
+ db %00000000
+; 1
+ db %11001111
+ db %10110000
+ db %01110111
+ db %00000000
+; 2
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd27f1
diff --git a/gfx/pics/016/frames.asm b/gfx/pics/016/frames.asm
new file mode 100644
index 000000000..58fdd0d12
--- /dev/null
+++ b/gfx/pics/016/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $03, $19, $1a, $1b, $03, $1c, $1d, $1e, $1f
+.frame2
+ db $01 ; bitmask
+ db $03, $20, $21, $22, $1b, $23, $24, $25, $03, $26, $27, $28
+ db $03, $03, $29
+.frame3
+ db $02 ; bitmask
+ db $2a
+; 0xd44d2
diff --git a/gfx/frontpics/016.2bpp b/gfx/pics/016/front.2bpp
index b907a14e2..b907a14e2 100644
--- a/gfx/frontpics/016.2bpp
+++ b/gfx/pics/016/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/016.lz b/gfx/pics/016/front.lz
index 03c579dbf..03c579dbf 100644
--- a/gfx/frontpics/lz/016.lz
+++ b/gfx/pics/016/front.lz
Binary files differ
diff --git a/gfx/anim/016.2bpp b/gfx/pics/016/tiles.2bpp
index d33089bc9..d33089bc9 100644
--- a/gfx/anim/016.2bpp
+++ b/gfx/pics/016/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/017/anim0.asm b/gfx/pics/017/anim0.asm
new file mode 100644
index 000000000..53008855f
--- /dev/null
+++ b/gfx/pics/017/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 07
+ frame 2, 07
+ frame 3, 07
+ frame 2, 30
+ setrepeat 2
+ frame 3, 06
+ frame 2, 06
+ dorepeat 5
+ frame 2, 20
+ endanim
+; 0xd097a
diff --git a/gfx/pics/017/anim1.asm b/gfx/pics/017/anim1.asm
new file mode 100644
index 000000000..95a27bb15
--- /dev/null
+++ b/gfx/pics/017/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd1952
diff --git a/gfx/backpics/017.2bpp b/gfx/pics/017/back.2bpp
index 805bde072..805bde072 100644
--- a/gfx/backpics/017.2bpp
+++ b/gfx/pics/017/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/017.lz b/gfx/pics/017/back.lz
index d766747ef..d766747ef 100644
--- a/gfx/backpics/lz/017.lz
+++ b/gfx/pics/017/back.lz
Binary files differ
diff --git a/gfx/pics/017/bitmask.asm b/gfx/pics/017/bitmask.asm
new file mode 100644
index 000000000..76d3df735
--- /dev/null
+++ b/gfx/pics/017/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %11011111
+ db %11111111
+ db %00001011
+ db %00000000
+ db %00000000
+; 1
+ db %11011111
+ db %11111111
+ db %00011011
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2800
diff --git a/gfx/pics/017/frames.asm b/gfx/pics/017/frames.asm
new file mode 100644
index 000000000..83c0ef529
--- /dev/null
+++ b/gfx/pics/017/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $04, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $32, $33, $00
+.frame2
+ db $01 ; bitmask
+ db $04, $24, $25, $26, $27, $04, $34, $2a, $2b, $2c, $2d, $04
+ db $35, $36, $31, $32, $33, $00, $37
+.frame3
+ db $01 ; bitmask
+ db $04, $24, $25, $38, $27, $04, $34, $2a, $39, $2c, $2d, $04
+ db $35, $36, $31, $32, $33, $00, $37
+.frame4
+ db $02 ; bitmask
+ db $3a
+; 0xd4517
diff --git a/gfx/frontpics/017.2bpp b/gfx/pics/017/front.2bpp
index 416e06cae..416e06cae 100644
--- a/gfx/frontpics/017.2bpp
+++ b/gfx/pics/017/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/017.lz b/gfx/pics/017/front.lz
index 0fc3a94fd..0fc3a94fd 100644
--- a/gfx/frontpics/lz/017.lz
+++ b/gfx/pics/017/front.lz
Binary files differ
diff --git a/gfx/anim/017.2bpp b/gfx/pics/017/tiles.2bpp
index 9e288ae80..9e288ae80 100644
--- a/gfx/anim/017.2bpp
+++ b/gfx/pics/017/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/018/anim0.asm b/gfx/pics/018/anim0.asm
new file mode 100644
index 000000000..34d5d3a98
--- /dev/null
+++ b/gfx/pics/018/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 12
+ frame 1, 32
+ setrepeat 2
+ frame 0, 06
+ frame 2, 06
+ dorepeat 3
+ endanim
+; 0xd0987
diff --git a/gfx/pics/018/anim1.asm b/gfx/pics/018/anim1.asm
new file mode 100644
index 000000000..6ba60e83e
--- /dev/null
+++ b/gfx/pics/018/anim1.asm
@@ -0,0 +1,9 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ frame 2, 06
+ frame 0, 06
+ frame 2, 06
+ endanim
+; 0xd1961
diff --git a/gfx/backpics/018.2bpp b/gfx/pics/018/back.2bpp
index 2fb54f922..2fb54f922 100644
--- a/gfx/backpics/018.2bpp
+++ b/gfx/pics/018/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/018.lz b/gfx/pics/018/back.lz
index a464dd7d1..a464dd7d1 100644
--- a/gfx/backpics/lz/018.lz
+++ b/gfx/pics/018/back.lz
Binary files differ
diff --git a/gfx/pics/018/bitmask.asm b/gfx/pics/018/bitmask.asm
new file mode 100644
index 000000000..521f3ad93
--- /dev/null
+++ b/gfx/pics/018/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10000000
+ db %11000111
+ db %11100011
+ db %01110001
+ db %00111000
+ db %00000000
+ db %00000000
+; 1
+ db %00111000
+ db %00011100
+ db %00000000
+ db %10000010
+ db %10000011
+ db %10000011
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2815
diff --git a/gfx/pics/018/frames.asm b/gfx/pics/018/frames.asm
new file mode 100644
index 000000000..2d0ef5719
--- /dev/null
+++ b/gfx/pics/018/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $00, $31, $32, $33, $34, $35, $36, $00, $37, $38, $39, $3a
+ db $00, $3b, $3c, $00, $00, $3d
+.frame2
+ db $01 ; bitmask
+ db $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49
+ db $4a, $4b
+.frame3
+ db $02 ; bitmask
+ db $4c
+; 0xd4541
diff --git a/gfx/frontpics/018.2bpp b/gfx/pics/018/front.2bpp
index c0933230f..c0933230f 100644
--- a/gfx/frontpics/018.2bpp
+++ b/gfx/pics/018/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/018.lz b/gfx/pics/018/front.lz
index f5cbb3f56..f5cbb3f56 100644
--- a/gfx/frontpics/lz/018.lz
+++ b/gfx/pics/018/front.lz
Binary files differ
diff --git a/gfx/anim/018.2bpp b/gfx/pics/018/tiles.2bpp
index 2ea1ecd50..2ea1ecd50 100644
--- a/gfx/anim/018.2bpp
+++ b/gfx/pics/018/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/019/anim0.asm b/gfx/pics/019/anim0.asm
new file mode 100644
index 000000000..0c72f16f9
--- /dev/null
+++ b/gfx/pics/019/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 02
+ frame 2, 02
+ frame 3, 12
+ frame 0, 10
+ setrepeat 3
+ frame 0, 05
+ frame 4, 05
+ dorepeat 5
+ endanim
+; 0xd0998
diff --git a/gfx/pics/019/anim1.asm b/gfx/pics/019/anim1.asm
new file mode 100644
index 000000000..a760b136e
--- /dev/null
+++ b/gfx/pics/019/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd196a
diff --git a/gfx/backpics/019.2bpp b/gfx/pics/019/back.2bpp
index 65270fe7b..65270fe7b 100644
--- a/gfx/backpics/019.2bpp
+++ b/gfx/pics/019/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/019.lz b/gfx/pics/019/back.lz
index a06c5f1f8..a06c5f1f8 100644
--- a/gfx/backpics/lz/019.lz
+++ b/gfx/pics/019/back.lz
Binary files differ
diff --git a/gfx/pics/019/bitmask.asm b/gfx/pics/019/bitmask.asm
new file mode 100644
index 000000000..b15445e5c
--- /dev/null
+++ b/gfx/pics/019/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %11011110
+ db %01111011
+ db %00001111
+ db %00000000
+; 1
+ db %00000000
+ db %00001000
+ db %00100001
+ db %00000000
+; 0xd281d
diff --git a/gfx/pics/019/frames.asm b/gfx/pics/019/frames.asm
new file mode 100644
index 000000000..621d4fb5d
--- /dev/null
+++ b/gfx/pics/019/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $19, $1a, $1b, $00, $1c, $1d, $1e, $1f, $20, $21, $22
+ db $23, $24, $25, $26
+.frame2
+ db $00 ; bitmask
+ db $00, $19, $1a, $1b, $00, $1c, $1d, $1e, $1f, $20, $21, $22
+ db $23, $24, $25, $26
+.frame3
+ db $00 ; bitmask
+ db $00, $27, $1a, $1b, $28, $29, $1d, $1e, $1f, $2a, $21, $22
+ db $23, $2b, $25, $26
+.frame4
+ db $01 ; bitmask
+ db $2c, $2d, $00
+; 0xd4580
diff --git a/gfx/frontpics/019.2bpp b/gfx/pics/019/front.2bpp
index baeea7dcb..baeea7dcb 100644
--- a/gfx/frontpics/019.2bpp
+++ b/gfx/pics/019/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/019.lz b/gfx/pics/019/front.lz
index 7bb18d542..7bb18d542 100644
--- a/gfx/frontpics/lz/019.lz
+++ b/gfx/pics/019/front.lz
Binary files differ
diff --git a/gfx/anim/019.2bpp b/gfx/pics/019/tiles.2bpp
index ae3c8c22e..ae3c8c22e 100644
--- a/gfx/anim/019.2bpp
+++ b/gfx/pics/019/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/020/anim0.asm b/gfx/pics/020/anim0.asm
new file mode 100644
index 000000000..ad6450f27
--- /dev/null
+++ b/gfx/pics/020/anim0.asm
@@ -0,0 +1,7 @@
+ frame 2, 24
+ setrepeat 2
+ frame 0, 04
+ frame 1, 04
+ dorepeat 2
+ endanim
+; 0xd09a3
diff --git a/gfx/pics/020/anim1.asm b/gfx/pics/020/anim1.asm
new file mode 100644
index 000000000..3ff83aa1c
--- /dev/null
+++ b/gfx/pics/020/anim1.asm
@@ -0,0 +1,10 @@
+ setrepeat 2
+ frame 0, 04
+ frame 3, 04
+ dorepeat 1
+ setrepeat 2
+ frame 0, 04
+ frame 1, 04
+ dorepeat 5
+ endanim
+; 0xd197b
diff --git a/gfx/backpics/020.2bpp b/gfx/pics/020/back.2bpp
index 402c244f5..402c244f5 100644
--- a/gfx/backpics/020.2bpp
+++ b/gfx/pics/020/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/020.lz b/gfx/pics/020/back.lz
index 4e69587dd..4e69587dd 100644
--- a/gfx/backpics/lz/020.lz
+++ b/gfx/pics/020/back.lz
Binary files differ
diff --git a/gfx/pics/020/bitmask.asm b/gfx/pics/020/bitmask.asm
new file mode 100644
index 000000000..e4a839f64
--- /dev/null
+++ b/gfx/pics/020/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00001100
+ db %11100011
+ db %00011000
+ db %00000010
+ db %00000000
+; 1
+ db %11011110
+ db %11110011
+ db %00111100
+ db %00000110
+ db %00000000
+; 2
+ db %10000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd282c
diff --git a/gfx/pics/020/frames.asm b/gfx/pics/020/frames.asm
new file mode 100644
index 000000000..e2da8a1e1
--- /dev/null
+++ b/gfx/pics/020/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame2
+ db $01 ; bitmask
+ db $2e, $2f, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d, $3e, $3f
+.frame3
+ db $02 ; bitmask
+ db $40, $41
+; 0xd45a7
diff --git a/gfx/frontpics/020.2bpp b/gfx/pics/020/front.2bpp
index 138a8ab1b..138a8ab1b 100644
--- a/gfx/frontpics/020.2bpp
+++ b/gfx/pics/020/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/020.lz b/gfx/pics/020/front.lz
index 5b426cbdd..5b426cbdd 100644
--- a/gfx/frontpics/lz/020.lz
+++ b/gfx/pics/020/front.lz
Binary files differ
diff --git a/gfx/anim/020.2bpp b/gfx/pics/020/tiles.2bpp
index 905bc6454..905bc6454 100644
--- a/gfx/anim/020.2bpp
+++ b/gfx/pics/020/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/021/anim0.asm b/gfx/pics/021/anim0.asm
new file mode 100644
index 000000000..35780c784
--- /dev/null
+++ b/gfx/pics/021/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 06
+ frame 2, 09
+ frame 1, 25
+ frame 0, 25
+ frame 3, 10
+ setrepeat 4
+ frame 3, 04
+ frame 4, 04
+ dorepeat 6
+ endanim
+; 0xd09b6
diff --git a/gfx/pics/021/anim1.asm b/gfx/pics/021/anim1.asm
new file mode 100644
index 000000000..ed487ecc3
--- /dev/null
+++ b/gfx/pics/021/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 3
+ frame 1, 06
+ frame 5, 06
+ dorepeat 1
+ frame 6, 07
+ endanim
+; 0xd1986
diff --git a/gfx/backpics/021.2bpp b/gfx/pics/021/back.2bpp
index 35627ae67..35627ae67 100644
--- a/gfx/backpics/021.2bpp
+++ b/gfx/pics/021/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/021.lz b/gfx/pics/021/back.lz
index 9411f32bd..9411f32bd 100644
--- a/gfx/backpics/lz/021.lz
+++ b/gfx/pics/021/back.lz
Binary files differ
diff --git a/gfx/pics/021/bitmask.asm b/gfx/pics/021/bitmask.asm
new file mode 100644
index 000000000..108ace244
--- /dev/null
+++ b/gfx/pics/021/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %10000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11100110
+ db %00001100
+ db %00000000
+ db %00000000
+; 2
+ db %01000000
+ db %00000000
+ db %11100111
+ db %00000000
+; 3
+ db %01000000
+ db %00110000
+ db %11101111
+ db %00000000
+; 4
+ db %10000110
+ db %00000000
+ db %01100011
+ db %00000000
+; 5
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2844
diff --git a/gfx/pics/021/frames.asm b/gfx/pics/021/frames.asm
new file mode 100644
index 000000000..0aa724bc5
--- /dev/null
+++ b/gfx/pics/021/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f, $20, $21, $22
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25, $26, $27, $28, $29
+.frame4
+ db $03 ; bitmask
+ db $23, $2a, $2b, $24, $2c, $2d, $2e, $27, $28, $29
+.frame5
+ db $04 ; bitmask
+ db $19, $1a, $1b, $24, $25, $27, $28
+.frame6
+ db $05 ; bitmask
+ db $23
+; 0xd45dc
diff --git a/gfx/frontpics/021.2bpp b/gfx/pics/021/front.2bpp
index 276f28df6..276f28df6 100644
--- a/gfx/frontpics/021.2bpp
+++ b/gfx/pics/021/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/021.lz b/gfx/pics/021/front.lz
index 8def69a01..8def69a01 100644
--- a/gfx/frontpics/lz/021.lz
+++ b/gfx/pics/021/front.lz
Binary files differ
diff --git a/gfx/anim/021.2bpp b/gfx/pics/021/tiles.2bpp
index 6dc4179c3..6dc4179c3 100644
--- a/gfx/anim/021.2bpp
+++ b/gfx/pics/021/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/022/anim0.asm b/gfx/pics/022/anim0.asm
new file mode 100644
index 000000000..3a689af18
--- /dev/null
+++ b/gfx/pics/022/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 02
+ setrepeat 3
+ frame 1, 08
+ frame 3, 10
+ frame 2, 06
+ dorepeat 2
+ endanim
+; 0xd09c3
diff --git a/gfx/pics/022/anim1.asm b/gfx/pics/022/anim1.asm
new file mode 100644
index 000000000..0233782c9
--- /dev/null
+++ b/gfx/pics/022/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 4, 05
+ frame 0, 05
+ dorepeat 1
+ endanim
+; 0xd198f
diff --git a/gfx/backpics/022.2bpp b/gfx/pics/022/back.2bpp
index 774622d76..774622d76 100644
--- a/gfx/backpics/022.2bpp
+++ b/gfx/pics/022/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/022.lz b/gfx/pics/022/back.lz
index 641086eaa..641086eaa 100644
--- a/gfx/backpics/lz/022.lz
+++ b/gfx/pics/022/back.lz
Binary files differ
diff --git a/gfx/pics/022/bitmask.asm b/gfx/pics/022/bitmask.asm
new file mode 100644
index 000000000..a04c00427
--- /dev/null
+++ b/gfx/pics/022/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10001100
+ db %11011110
+ db %01000111
+ db %11110000
+ db %11111011
+ db %11111111
+ db %00000000
+; 1
+ db %00000000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00001100
+ db %10011110
+ db %10000111
+ db %11100001
+ db %11100011
+ db %11110011
+ db %00000000
+; 3
+ db %00000000
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2860
diff --git a/gfx/pics/022/frames.asm b/gfx/pics/022/frames.asm
new file mode 100644
index 000000000..5d7b5a6a6
--- /dev/null
+++ b/gfx/pics/022/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $05, $05, $36, $37, $38, $05, $39
+ db $3a, $3b, $3c, $3d, $3e, $3f, $05, $40, $41, $42, $43, $44
+ db $05, $05, $45, $46, $47, $05, $05, $05
+.frame2
+ db $01 ; bitmask
+ db $34, $48
+.frame3
+ db $02 ; bitmask
+ db $49, $4a, $4b, $4c, $05, $05, $4d, $4e, $05, $39, $4f, $50
+ db $51, $52, $53, $54, $05, $55, $56, $44, $05, $05, $57, $58
+ db $05, $05
+.frame4
+ db $03 ; bitmask
+ db $59, $5a
+; 0xd4626
diff --git a/gfx/frontpics/022.2bpp b/gfx/pics/022/front.2bpp
index 3b160cba3..3b160cba3 100644
--- a/gfx/frontpics/022.2bpp
+++ b/gfx/pics/022/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/022.lz b/gfx/pics/022/front.lz
index 4fbf2d47f..4fbf2d47f 100644
--- a/gfx/frontpics/lz/022.lz
+++ b/gfx/pics/022/front.lz
Binary files differ
diff --git a/gfx/anim/022.2bpp b/gfx/pics/022/tiles.2bpp
index 41328a364..41328a364 100644
--- a/gfx/anim/022.2bpp
+++ b/gfx/pics/022/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/023/anim0.asm b/gfx/pics/023/anim0.asm
new file mode 100644
index 000000000..9728434c0
--- /dev/null
+++ b/gfx/pics/023/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 08
+ frame 0, 05
+ setrepeat 7
+ frame 2, 03
+ frame 3, 03
+ dorepeat 3
+ frame 2, 20
+ endanim
+; 0xd09d2
diff --git a/gfx/pics/023/anim1.asm b/gfx/pics/023/anim1.asm
new file mode 100644
index 000000000..660a4f971
--- /dev/null
+++ b/gfx/pics/023/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 5
+ frame 4, 02
+ frame 5, 02
+ frame 4, 02
+ frame 0, 02
+ dorepeat 1
+ endanim
+; 0xd199c
diff --git a/gfx/backpics/023.2bpp b/gfx/pics/023/back.2bpp
index 4d34cd05d..4d34cd05d 100644
--- a/gfx/backpics/023.2bpp
+++ b/gfx/pics/023/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/023.lz b/gfx/pics/023/back.lz
index 07785737f..07785737f 100644
--- a/gfx/backpics/lz/023.lz
+++ b/gfx/pics/023/back.lz
Binary files differ
diff --git a/gfx/pics/023/bitmask.asm b/gfx/pics/023/bitmask.asm
new file mode 100644
index 000000000..a3c61a4d3
--- /dev/null
+++ b/gfx/pics/023/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11100111
+ db %00011100
+ db %00000000
+ db %00000000
+; 1
+ db %11101111
+ db %00011101
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %01100000
+ db %00000000
+; 0xd286c
diff --git a/gfx/pics/023/frames.asm b/gfx/pics/023/frames.asm
new file mode 100644
index 000000000..6bd3fc1d6
--- /dev/null
+++ b/gfx/pics/023/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $0f, $1b, $1c, $1d, $1e, $1f, $20
+.frame2
+ db $01 ; bitmask
+ db $0f, $21, $22, $23, $0f, $24, $25, $26, $0f, $27, $28, $29
+ db $2a
+.frame3
+ db $01 ; bitmask
+ db $0f, $21, $22, $23, $0f, $24, $25, $2b, $0f, $27, $28, $29
+ db $2a
+.frame4
+ db $02 ; bitmask
+ db $2c, $2d
+.frame5
+ db $02 ; bitmask
+ db $2e, $2d
+; 0xd465c
diff --git a/gfx/frontpics/023.2bpp b/gfx/pics/023/front.2bpp
index 8fa5e7760..8fa5e7760 100644
--- a/gfx/frontpics/023.2bpp
+++ b/gfx/pics/023/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/023.lz b/gfx/pics/023/front.lz
index efa075fab..efa075fab 100644
--- a/gfx/frontpics/lz/023.lz
+++ b/gfx/pics/023/front.lz
Binary files differ
diff --git a/gfx/anim/023.2bpp b/gfx/pics/023/tiles.2bpp
index 60f983635..60f983635 100644
--- a/gfx/anim/023.2bpp
+++ b/gfx/pics/023/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/024/anim0.asm b/gfx/pics/024/anim0.asm
new file mode 100644
index 000000000..0ceceacac
--- /dev/null
+++ b/gfx/pics/024/anim0.asm
@@ -0,0 +1,15 @@
+ frame 0, 04
+ frame 4, 08
+ setrepeat 2
+ frame 5, 08
+ frame 6, 08
+ dorepeat 3
+ frame 4, 08
+ setrepeat 3
+ frame 0, 07
+ frame 1, 07
+ frame 2, 05
+ frame 3, 05
+ dorepeat 8
+ endanim
+; 0xd09ed
diff --git a/gfx/pics/024/anim1.asm b/gfx/pics/024/anim1.asm
new file mode 100644
index 000000000..c9f85e238
--- /dev/null
+++ b/gfx/pics/024/anim1.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 4, 06
+ frame 5, 04
+ frame 6, 04
+ frame 5, 04
+ frame 4, 06
+ endanim
+; 0xd19a9
diff --git a/gfx/backpics/024.2bpp b/gfx/pics/024/back.2bpp
index 5dbe6ebb1..5dbe6ebb1 100644
--- a/gfx/backpics/024.2bpp
+++ b/gfx/pics/024/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/024.lz b/gfx/pics/024/back.lz
index 175abb499..175abb499 100644
--- a/gfx/backpics/lz/024.lz
+++ b/gfx/pics/024/back.lz
Binary files differ
diff --git a/gfx/pics/024/bitmask.asm b/gfx/pics/024/bitmask.asm
new file mode 100644
index 000000000..4a51646d0
--- /dev/null
+++ b/gfx/pics/024/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11010001
+ db %11111011
+ db %00000001
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11110000
+ db %11111001
+ db %00000001
+; 2
+ db %00000000
+ db %10000010
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000100
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd288f
diff --git a/gfx/pics/024/frames.asm b/gfx/pics/024/frames.asm
new file mode 100644
index 000000000..011333a05
--- /dev/null
+++ b/gfx/pics/024/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $00, $32, $33, $34, $35, $36, $37, $38, $00, $39, $3a
+.frame2
+ db $01 ; bitmask
+ db $00, $3b, $3c, $00, $3d, $00, $00, $3e, $3f, $40, $41
+.frame3
+ db $01 ; bitmask
+ db $42, $43, $44, $45, $46, $00, $47, $48, $49, $4a, $4b
+.frame4
+ db $02 ; bitmask
+ db $4c, $4d, $4e
+.frame5
+ db $03 ; bitmask
+ db $4f, $50, $51
+.frame6
+ db $04 ; bitmask
+ db $52, $53
+; 0xd4698
diff --git a/gfx/frontpics/024.2bpp b/gfx/pics/024/front.2bpp
index 78abdf84d..78abdf84d 100644
--- a/gfx/frontpics/024.2bpp
+++ b/gfx/pics/024/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/024.lz b/gfx/pics/024/front.lz
index 8b5918dbd..8b5918dbd 100644
--- a/gfx/frontpics/lz/024.lz
+++ b/gfx/pics/024/front.lz
Binary files differ
diff --git a/gfx/anim/024.2bpp b/gfx/pics/024/tiles.2bpp
index 008ccb05a..008ccb05a 100644
--- a/gfx/anim/024.2bpp
+++ b/gfx/pics/024/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/025/anim0.asm b/gfx/pics/025/anim0.asm
new file mode 100644
index 000000000..6a1ac0954
--- /dev/null
+++ b/gfx/pics/025/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 07
+ setrepeat 2
+ frame 2, 07
+ frame 3, 07
+ dorepeat 2
+ frame 2, 26
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 7
+ endanim
+; 0xd0a02
diff --git a/gfx/pics/025/anim1.asm b/gfx/pics/025/anim1.asm
new file mode 100644
index 000000000..0454a2855
--- /dev/null
+++ b/gfx/pics/025/anim1.asm
@@ -0,0 +1,10 @@
+ setrepeat 3
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 5
+ endanim
+; 0xd19ba
diff --git a/gfx/backpics/025.2bpp b/gfx/pics/025/back.2bpp
index 25a355674..25a355674 100644
--- a/gfx/backpics/025.2bpp
+++ b/gfx/pics/025/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/025.lz b/gfx/pics/025/back.lz
index 3f74382ae..3f74382ae 100644
--- a/gfx/backpics/lz/025.lz
+++ b/gfx/pics/025/back.lz
Binary files differ
diff --git a/gfx/pics/025/bitmask.asm b/gfx/pics/025/bitmask.asm
new file mode 100644
index 000000000..24ea202e9
--- /dev/null
+++ b/gfx/pics/025/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %11101011
+ db %10111100
+ db %01100011
+ db %00000000
+; 1
+ db %11101011
+ db %11111100
+ db %01101111
+ db %00000000
+; 2
+ db %11101111
+ db %11111100
+ db %01101111
+ db %00000000
+; 3
+ db %01000010
+ db %00001000
+ db %00000000
+ db %00000000
+; 4
+ db %00100011
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd28a3
diff --git a/gfx/pics/025/frames.asm b/gfx/pics/025/frames.asm
new file mode 100644
index 000000000..f46e5181c
--- /dev/null
+++ b/gfx/pics/025/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $08, $22, $23
+ db $24, $25, $26
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b, $1c, $27, $1e, $1f, $28, $21, $29, $2a, $22
+ db $23, $24, $2b, $2c, $25, $26
+.frame3
+ db $02 ; bitmask
+ db $19, $1a, $2d, $2e, $1c, $27, $1e, $1f, $28, $21, $29, $2a
+ db $22, $23, $24, $2b, $2c, $25, $26
+.frame4
+ db $03 ; bitmask
+ db $2f, $30, $31
+.frame5
+ db $04 ; bitmask
+ db $19, $1a, $1c
+; 0xd46e1
diff --git a/gfx/frontpics/025.2bpp b/gfx/pics/025/front.2bpp
index bfe999d57..bfe999d57 100644
--- a/gfx/frontpics/025.2bpp
+++ b/gfx/pics/025/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/025.lz b/gfx/pics/025/front.lz
index 1dbea0496..1dbea0496 100644
--- a/gfx/frontpics/lz/025.lz
+++ b/gfx/pics/025/front.lz
Binary files differ
diff --git a/gfx/anim/025.2bpp b/gfx/pics/025/tiles.2bpp
index d6e1b5c38..d6e1b5c38 100644
--- a/gfx/anim/025.2bpp
+++ b/gfx/pics/025/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/026/anim0.asm b/gfx/pics/026/anim0.asm
new file mode 100644
index 000000000..a7312c7ae
--- /dev/null
+++ b/gfx/pics/026/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 1, 06
+ frame 2, 06
+ frame 3, 28
+ frame 2, 10
+ frame 1, 08
+ endanim
+; 0xd0a0f
diff --git a/gfx/pics/026/anim1.asm b/gfx/pics/026/anim1.asm
new file mode 100644
index 000000000..87f07ce9c
--- /dev/null
+++ b/gfx/pics/026/anim1.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 4, 06
+ frame 0, 04
+ frame 4, 04
+ endanim
+; 0xd19c3
diff --git a/gfx/backpics/026.2bpp b/gfx/pics/026/back.2bpp
index 9793124bf..9793124bf 100644
--- a/gfx/backpics/026.2bpp
+++ b/gfx/pics/026/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/026.lz b/gfx/pics/026/back.lz
index 912c378e8..912c378e8 100644
--- a/gfx/backpics/lz/026.lz
+++ b/gfx/pics/026/back.lz
Binary files differ
diff --git a/gfx/pics/026/bitmask.asm b/gfx/pics/026/bitmask.asm
new file mode 100644
index 000000000..544cfb180
--- /dev/null
+++ b/gfx/pics/026/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10011000
+ db %11001111
+ db %11000111
+ db %11110011
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %10011000
+ db %11001111
+ db %11000111
+ db %11110111
+ db %00000001
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000010
+ db %10000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd28b8
diff --git a/gfx/pics/026/frames.asm b/gfx/pics/026/frames.asm
new file mode 100644
index 000000000..7045cf9f5
--- /dev/null
+++ b/gfx/pics/026/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $00, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $00, $33, $34, $45, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $46, $40, $41, $42, $47, $44
+.frame3
+ db $01 ; bitmask
+ db $31, $32, $00, $33, $34, $48, $36, $37, $38, $39, $49, $3b
+ db $3c, $3d, $3e, $3f, $46, $40, $41, $4a, $4b, $44
+.frame4
+ db $02 ; bitmask
+ db $4c, $4d, $4e
+; 0xd4731
diff --git a/gfx/frontpics/026.2bpp b/gfx/pics/026/front.2bpp
index 4cbf70863..4cbf70863 100644
--- a/gfx/frontpics/026.2bpp
+++ b/gfx/pics/026/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/026.lz b/gfx/pics/026/front.lz
index 84115fb00..84115fb00 100644
--- a/gfx/frontpics/lz/026.lz
+++ b/gfx/pics/026/front.lz
Binary files differ
diff --git a/gfx/anim/026.2bpp b/gfx/pics/026/tiles.2bpp
index 67ea811f3..67ea811f3 100644
--- a/gfx/anim/026.2bpp
+++ b/gfx/pics/026/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/027/anim0.asm b/gfx/pics/027/anim0.asm
new file mode 100644
index 000000000..01827dda4
--- /dev/null
+++ b/gfx/pics/027/anim0.asm
@@ -0,0 +1,13 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ frame 0, 20
+ frame 1, 08
+ frame 2, 08
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 8
+ endanim
+; 0xd0a26
diff --git a/gfx/pics/027/anim1.asm b/gfx/pics/027/anim1.asm
new file mode 100644
index 000000000..545b445bd
--- /dev/null
+++ b/gfx/pics/027/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 3
+ frame 0, 07
+ frame 5, 07
+ dorepeat 1
+ frame 4, 13
+ endanim
+; 0xd19ce
diff --git a/gfx/backpics/027.2bpp b/gfx/pics/027/back.2bpp
index 4d2dd8b80..4d2dd8b80 100644
--- a/gfx/backpics/027.2bpp
+++ b/gfx/pics/027/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/027.lz b/gfx/pics/027/back.lz
index 63ddb82a1..63ddb82a1 100644
--- a/gfx/backpics/lz/027.lz
+++ b/gfx/pics/027/back.lz
Binary files differ
diff --git a/gfx/pics/027/bitmask.asm b/gfx/pics/027/bitmask.asm
new file mode 100644
index 000000000..42e84c4ab
--- /dev/null
+++ b/gfx/pics/027/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %11100011
+ db %00111101
+ db %00000001
+ db %00000000
+; 1
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00000000
+; 0xd28c8
diff --git a/gfx/pics/027/frames.asm b/gfx/pics/027/frames.asm
new file mode 100644
index 000000000..a4d496760
--- /dev/null
+++ b/gfx/pics/027/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $0f
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $1b, $23, $24, $1e, $1f, $25, $26, $22, $0f
+.frame3
+ db $01 ; bitmask
+ db $27
+.frame4
+ db $02 ; bitmask
+ db $28
+.frame5
+ db $03 ; bitmask
+ db $29
+; 0xd4759
diff --git a/gfx/frontpics/027.2bpp b/gfx/pics/027/front.2bpp
index e5f094180..e5f094180 100644
--- a/gfx/frontpics/027.2bpp
+++ b/gfx/pics/027/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/027.lz b/gfx/pics/027/front.lz
index 3d1da3087..3d1da3087 100644
--- a/gfx/frontpics/lz/027.lz
+++ b/gfx/pics/027/front.lz
Binary files differ
diff --git a/gfx/anim/027.2bpp b/gfx/pics/027/tiles.2bpp
index 5f40002ef..5f40002ef 100644
--- a/gfx/anim/027.2bpp
+++ b/gfx/pics/027/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/028/anim0.asm b/gfx/pics/028/anim0.asm
new file mode 100644
index 000000000..040c0c429
--- /dev/null
+++ b/gfx/pics/028/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 06
+ frame 1, 14
+ frame 0, 12
+ frame 4, 07
+ frame 2, 08
+ frame 0, 12
+ frame 4, 07
+ frame 2, 08
+ endanim
+; 0xd0a37
diff --git a/gfx/pics/028/anim1.asm b/gfx/pics/028/anim1.asm
new file mode 100644
index 000000000..b3480762d
--- /dev/null
+++ b/gfx/pics/028/anim1.asm
@@ -0,0 +1,6 @@
+ frame 0, 08
+ frame 3, 06
+ frame 0, 04
+ frame 3, 04
+ endanim
+; 0xd19d7
diff --git a/gfx/backpics/028.2bpp b/gfx/pics/028/back.2bpp
index ea5d96787..ea5d96787 100644
--- a/gfx/backpics/028.2bpp
+++ b/gfx/pics/028/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/028.lz b/gfx/pics/028/back.lz
index 52bb7ce7d..52bb7ce7d 100644
--- a/gfx/backpics/lz/028.lz
+++ b/gfx/pics/028/back.lz
Binary files differ
diff --git a/gfx/pics/028/bitmask.asm b/gfx/pics/028/bitmask.asm
new file mode 100644
index 000000000..f09f721bb
--- /dev/null
+++ b/gfx/pics/028/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %11100000
+ db %00111000
+ db %00000100
+ db %00000000
+; 1
+ db %00001100
+ db %10000111
+ db %01100011
+ db %00011000
+ db %00001110
+; 2
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd28d7
diff --git a/gfx/pics/028/frames.asm b/gfx/pics/028/frames.asm
new file mode 100644
index 000000000..ba6a1d8f8
--- /dev/null
+++ b/gfx/pics/028/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $2b, $2c, $2d, $2e, $2f, $30, $31, $32, $33, $34
+ db $35, $00, $00
+.frame3
+ db $02 ; bitmask
+ db $36, $37
+.frame4
+ db $01 ; bitmask
+ db $00, $00, $2b, $38, $39, $2e, $3a, $30, $3b, $3c, $3d, $3e
+ db $35, $00, $00
+; 0xd478c
diff --git a/gfx/frontpics/028.2bpp b/gfx/pics/028/front.2bpp
index 1c642706a..1c642706a 100644
--- a/gfx/frontpics/028.2bpp
+++ b/gfx/pics/028/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/028.lz b/gfx/pics/028/front.lz
index cdffe9baf..cdffe9baf 100644
--- a/gfx/frontpics/lz/028.lz
+++ b/gfx/pics/028/front.lz
Binary files differ
diff --git a/gfx/anim/028.2bpp b/gfx/pics/028/tiles.2bpp
index 20c994310..20c994310 100644
--- a/gfx/anim/028.2bpp
+++ b/gfx/pics/028/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/029/anim0.asm b/gfx/pics/029/anim0.asm
new file mode 100644
index 000000000..623db13d1
--- /dev/null
+++ b/gfx/pics/029/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 04
+ frame 2, 19
+ setrepeat 3
+ frame 3, 05
+ frame 0, 05
+ dorepeat 3
+ endanim
+; 0xd0a44
diff --git a/gfx/pics/029/anim1.asm b/gfx/pics/029/anim1.asm
new file mode 100644
index 000000000..348179aac
--- /dev/null
+++ b/gfx/pics/029/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd19e0
diff --git a/gfx/backpics/029.2bpp b/gfx/pics/029/back.2bpp
index a22e2a054..a22e2a054 100644
--- a/gfx/backpics/029.2bpp
+++ b/gfx/pics/029/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/029.lz b/gfx/pics/029/back.lz
index df43f06a1..df43f06a1 100644
--- a/gfx/backpics/lz/029.lz
+++ b/gfx/pics/029/back.lz
Binary files differ
diff --git a/gfx/pics/029/bitmask.asm b/gfx/pics/029/bitmask.asm
new file mode 100644
index 000000000..db5ecae05
--- /dev/null
+++ b/gfx/pics/029/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11101111
+ db %10011101
+ db %00000011
+ db %00000000
+; 1
+ db %00001100
+ db %00010000
+ db %00000010
+ db %00000000
+; 2
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd28e3
diff --git a/gfx/pics/029/frames.asm b/gfx/pics/029/frames.asm
new file mode 100644
index 000000000..dd6a6ae74
--- /dev/null
+++ b/gfx/pics/029/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $04, $19, $1a, $04, $1b, $1c, $1d, $1e, $1f, $20, $21, $22
+ db $23, $24
+.frame2
+ db $00 ; bitmask
+ db $04, $19, $1a, $04, $1b, $1c, $25, $1e, $1f, $20, $21, $22
+ db $23, $24
+.frame3
+ db $01 ; bitmask
+ db $26, $04, $27, $28
+.frame4
+ db $02 ; bitmask
+ db $29
+; 0xd47b9
diff --git a/gfx/frontpics/029.2bpp b/gfx/pics/029/front.2bpp
index f826c8ed9..f826c8ed9 100644
--- a/gfx/frontpics/029.2bpp
+++ b/gfx/pics/029/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/029.lz b/gfx/pics/029/front.lz
index 477857691..477857691 100644
--- a/gfx/frontpics/lz/029.lz
+++ b/gfx/pics/029/front.lz
Binary files differ
diff --git a/gfx/anim/029.2bpp b/gfx/pics/029/tiles.2bpp
index 67188ed03..67188ed03 100644
--- a/gfx/anim/029.2bpp
+++ b/gfx/pics/029/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/030/anim0.asm b/gfx/pics/030/anim0.asm
new file mode 100644
index 000000000..6ab079db4
--- /dev/null
+++ b/gfx/pics/030/anim0.asm
@@ -0,0 +1,9 @@
+ frame 3, 20
+ setrepeat 2
+ frame 0, 06
+ frame 1, 12
+ frame 0, 03
+ frame 2, 06
+ dorepeat 2
+ endanim
+; 0xd0a53
diff --git a/gfx/pics/030/anim1.asm b/gfx/pics/030/anim1.asm
new file mode 100644
index 000000000..6afb1cbc8
--- /dev/null
+++ b/gfx/pics/030/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 04
+ frame 4, 04
+ dorepeat 1
+ endanim
+; 0xd19e9
diff --git a/gfx/backpics/030.2bpp b/gfx/pics/030/back.2bpp
index 5da41e15c..5da41e15c 100644
--- a/gfx/backpics/030.2bpp
+++ b/gfx/pics/030/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/030.lz b/gfx/pics/030/back.lz
index 141d61f81..141d61f81 100644
--- a/gfx/backpics/lz/030.lz
+++ b/gfx/pics/030/back.lz
Binary files differ
diff --git a/gfx/pics/030/bitmask.asm b/gfx/pics/030/bitmask.asm
new file mode 100644
index 000000000..e365847fa
--- /dev/null
+++ b/gfx/pics/030/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %10000100
+ db %11100011
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %11100011
+ db %00110000
+ db %00000000
+; 2
+ db %00001000
+ db %11000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %01000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd28f7
diff --git a/gfx/pics/030/frames.asm b/gfx/pics/030/frames.asm
new file mode 100644
index 000000000..26ffbea56
--- /dev/null
+++ b/gfx/pics/030/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $2b, $2c, $2d, $2e, $2f, $30, $31, $32
+.frame3
+ db $02 ; bitmask
+ db $33, $34, $35, $36, $37
+.frame4
+ db $03 ; bitmask
+ db $38, $39
+; 0xd47db
diff --git a/gfx/frontpics/030.2bpp b/gfx/pics/030/front.2bpp
index b525293f5..b525293f5 100644
--- a/gfx/frontpics/030.2bpp
+++ b/gfx/pics/030/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/030.lz b/gfx/pics/030/front.lz
index 04523a52b..04523a52b 100644
--- a/gfx/frontpics/lz/030.lz
+++ b/gfx/pics/030/front.lz
Binary files differ
diff --git a/gfx/anim/030.2bpp b/gfx/pics/030/tiles.2bpp
index 8878242f3..8878242f3 100644
--- a/gfx/anim/030.2bpp
+++ b/gfx/pics/030/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/031/anim0.asm b/gfx/pics/031/anim0.asm
new file mode 100644
index 000000000..bd9d8eee8
--- /dev/null
+++ b/gfx/pics/031/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 05
+ frame 2, 10
+ frame 3, 10
+ frame 4, 10
+ frame 3, 10
+ frame 1, 10
+ frame 0, 10
+ frame 5, 10
+ endanim
+; 0xd0a64
diff --git a/gfx/pics/031/anim1.asm b/gfx/pics/031/anim1.asm
new file mode 100644
index 000000000..1cc934c42
--- /dev/null
+++ b/gfx/pics/031/anim1.asm
@@ -0,0 +1,7 @@
+ frame 6, 50
+ setrepeat 2
+ frame 0, 07
+ frame 6, 07
+ dorepeat 2
+ endanim
+; 0xd19f4
diff --git a/gfx/backpics/031.2bpp b/gfx/pics/031/back.2bpp
index 69c6abeeb..69c6abeeb 100644
--- a/gfx/backpics/031.2bpp
+++ b/gfx/pics/031/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/031.lz b/gfx/pics/031/back.lz
index b363f089e..b363f089e 100644
--- a/gfx/backpics/lz/031.lz
+++ b/gfx/pics/031/back.lz
Binary files differ
diff --git a/gfx/pics/031/bitmask.asm b/gfx/pics/031/bitmask.asm
new file mode 100644
index 000000000..ba1c8fffb
--- /dev/null
+++ b/gfx/pics/031/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00110000
+ db %00011000
+ db %00000000
+ db %00000000
+ db %10011111
+ db %10001111
+ db %00000000
+; 1
+ db %00111000
+ db %00011100
+ db %10000111
+ db %11000011
+ db %11111111
+ db %10011111
+ db %00000000
+; 2
+ db %00111000
+ db %00011100
+ db %10000111
+ db %11000011
+ db %01111001
+ db %00011100
+ db %00000000
+; 3
+ db %00111000
+ db %00111100
+ db %10011111
+ db %11001011
+ db %01111101
+ db %00011100
+ db %00000000
+; 4
+ db %00000000
+ db %00110000
+ db %00011000
+ db %00001000
+ db %00000100
+ db %00000000
+ db %00000000
+; 5
+ db %00110000
+ db %00011000
+ db %00000000
+ db %00000000
+ db %00011000
+ db %00001100
+ db %00000000
+; 0xd2921
diff --git a/gfx/pics/031/frames.asm b/gfx/pics/031/frames.asm
new file mode 100644
index 000000000..6414018cc
--- /dev/null
+++ b/gfx/pics/031/frames.asm
@@ -0,0 +1,31 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $00, $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $00, $3f, $40, $41, $42, $43, $44, $45, $46, $47
+ db $48, $49, $4a, $36, $37, $00, $00, $4b, $4c, $3a, $3b, $3c
+ db $00, $00, $00, $3e
+.frame3
+ db $02 ; bitmask
+ db $00, $00, $00, $3f, $40, $41, $42, $43, $44, $45, $46, $47
+ db $48, $49, $4d, $00, $00, $4b, $4c, $00, $00, $00
+.frame4
+ db $03 ; bitmask
+ db $00, $00, $00, $3f, $40, $4e, $4f, $42, $43, $44, $50, $51
+ db $45, $46, $47, $52, $48, $49, $4d, $53, $00, $00, $4b, $4c
+ db $00, $00, $00
+.frame5
+ db $04 ; bitmask
+ db $54, $4f, $50, $51, $52, $53
+.frame6
+ db $05 ; bitmask
+ db $31, $32, $33, $34, $38, $39, $00, $3d
+; 0xd4857
diff --git a/gfx/frontpics/031.2bpp b/gfx/pics/031/front.2bpp
index acafd1169..acafd1169 100644
--- a/gfx/frontpics/031.2bpp
+++ b/gfx/pics/031/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/031.lz b/gfx/pics/031/front.lz
index d02a553d5..d02a553d5 100644
--- a/gfx/frontpics/lz/031.lz
+++ b/gfx/pics/031/front.lz
Binary files differ
diff --git a/gfx/anim/031.2bpp b/gfx/pics/031/tiles.2bpp
index 90b130b80..90b130b80 100644
--- a/gfx/anim/031.2bpp
+++ b/gfx/pics/031/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/032/anim0.asm b/gfx/pics/032/anim0.asm
new file mode 100644
index 000000000..9b8a38133
--- /dev/null
+++ b/gfx/pics/032/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 12
+ frame 2, 22
+ setrepeat 3
+ frame 0, 06
+ frame 1, 06
+ dorepeat 3
+ endanim
+; 0xd0a71
diff --git a/gfx/pics/032/anim1.asm b/gfx/pics/032/anim1.asm
new file mode 100644
index 000000000..20b437f6a
--- /dev/null
+++ b/gfx/pics/032/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd19fd
diff --git a/gfx/backpics/032.2bpp b/gfx/pics/032/back.2bpp
index 692937019..692937019 100644
--- a/gfx/backpics/032.2bpp
+++ b/gfx/pics/032/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/032.lz b/gfx/pics/032/back.lz
index 4b3be9a60..4b3be9a60 100644
--- a/gfx/backpics/lz/032.lz
+++ b/gfx/pics/032/back.lz
Binary files differ
diff --git a/gfx/pics/032/bitmask.asm b/gfx/pics/032/bitmask.asm
new file mode 100644
index 000000000..738e90471
--- /dev/null
+++ b/gfx/pics/032/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11101010
+ db %10001011
+ db %00000011
+ db %00000000
+; 1
+ db %10011100
+ db %00000011
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+; 0xd292d
diff --git a/gfx/pics/032/frames.asm b/gfx/pics/032/frames.asm
new file mode 100644
index 000000000..87b496efc
--- /dev/null
+++ b/gfx/pics/032/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29
+.frame3
+ db $02 ; bitmask
+ db $2a
+; 0xd4872
diff --git a/gfx/frontpics/032.2bpp b/gfx/pics/032/front.2bpp
index d06189661..d06189661 100644
--- a/gfx/frontpics/032.2bpp
+++ b/gfx/pics/032/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/032.lz b/gfx/pics/032/front.lz
index 661dadada..661dadada 100644
--- a/gfx/frontpics/lz/032.lz
+++ b/gfx/pics/032/front.lz
Binary files differ
diff --git a/gfx/anim/032.2bpp b/gfx/pics/032/tiles.2bpp
index e040f99bc..e040f99bc 100644
--- a/gfx/anim/032.2bpp
+++ b/gfx/pics/032/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/033/anim0.asm b/gfx/pics/033/anim0.asm
new file mode 100644
index 000000000..16a6cb1dc
--- /dev/null
+++ b/gfx/pics/033/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 10
+ frame 6, 30
+ frame 0, 05
+ frame 5, 07
+ frame 0, 10
+ setrepeat 2
+ frame 0, 06
+ frame 2, 06
+ frame 3, 06
+ dorepeat 6
+ endanim
+; 0xd0a86
diff --git a/gfx/pics/033/anim1.asm b/gfx/pics/033/anim1.asm
new file mode 100644
index 000000000..40e17f454
--- /dev/null
+++ b/gfx/pics/033/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 3
+ frame 4, 06
+ frame 5, 06
+ dorepeat 1
+ frame 0, 06
+ frame 4, 06
+ endanim
+; 0xd1a0a
diff --git a/gfx/backpics/033.2bpp b/gfx/pics/033/back.2bpp
index 352eb8ec3..352eb8ec3 100644
--- a/gfx/backpics/033.2bpp
+++ b/gfx/pics/033/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/033.lz b/gfx/pics/033/back.lz
index 6e6a841e9..6e6a841e9 100644
--- a/gfx/backpics/lz/033.lz
+++ b/gfx/pics/033/back.lz
Binary files differ
diff --git a/gfx/pics/033/bitmask.asm b/gfx/pics/033/bitmask.asm
new file mode 100644
index 000000000..fac9808aa
--- /dev/null
+++ b/gfx/pics/033/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10000000
+ db %11111111
+ db %01111111
+ db %11001111
+ db %00000001
+; 1
+ db %00000000
+ db %00001000
+ db %00001010
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 3
+ db %10000000
+ db %01110000
+ db %00011000
+ db %10000100
+ db %00000001
+; 0xd2941
diff --git a/gfx/pics/033/frames.asm b/gfx/pics/033/frames.asm
new file mode 100644
index 000000000..3f5dca2ae
--- /dev/null
+++ b/gfx/pics/033/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $00, $34, $35, $36, $00, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $39, $3a, $3b
+.frame3
+ db $01 ; bitmask
+ db $3c, $3d, $3b
+.frame4
+ db $02 ; bitmask
+ db $3e, $3b, $3f
+.frame5
+ db $03 ; bitmask
+ db $40, $41, $42, $3e, $3b, $3f, $43, $44, $45
+.frame6
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $3c, $29, $2a, $2b, $2c, $2d, $3d, $2f
+ db $30, $31, $32, $33, $00, $34, $35, $36, $00, $37, $38
+; 0xd48c4
diff --git a/gfx/frontpics/033.2bpp b/gfx/pics/033/front.2bpp
index 7d2359bf3..7d2359bf3 100644
--- a/gfx/frontpics/033.2bpp
+++ b/gfx/pics/033/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/033.lz b/gfx/pics/033/front.lz
index 228c93b52..228c93b52 100644
--- a/gfx/frontpics/lz/033.lz
+++ b/gfx/pics/033/front.lz
Binary files differ
diff --git a/gfx/anim/033.2bpp b/gfx/pics/033/tiles.2bpp
index c4ec23093..c4ec23093 100644
--- a/gfx/anim/033.2bpp
+++ b/gfx/pics/033/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/034/anim0.asm b/gfx/pics/034/anim0.asm
new file mode 100644
index 000000000..a32945d49
--- /dev/null
+++ b/gfx/pics/034/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 1, 12
+ frame 2, 36
+ frame 1, 12
+ endanim
+; 0xd0a8f
diff --git a/gfx/pics/034/anim1.asm b/gfx/pics/034/anim1.asm
new file mode 100644
index 000000000..4e56028e1
--- /dev/null
+++ b/gfx/pics/034/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1a13
diff --git a/gfx/backpics/034.2bpp b/gfx/pics/034/back.2bpp
index 467063803..467063803 100644
--- a/gfx/backpics/034.2bpp
+++ b/gfx/pics/034/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/034.lz b/gfx/pics/034/back.lz
index b3f35b5a1..b3f35b5a1 100644
--- a/gfx/backpics/lz/034.lz
+++ b/gfx/pics/034/back.lz
Binary files differ
diff --git a/gfx/pics/034/bitmask.asm b/gfx/pics/034/bitmask.asm
new file mode 100644
index 000000000..fbd26cedc
--- /dev/null
+++ b/gfx/pics/034/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %00011111
+ db %00011111
+ db %10000111
+ db %11100001
+ db %11110001
+ db %11111001
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %11000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd294f
diff --git a/gfx/pics/034/frames.asm b/gfx/pics/034/frames.asm
new file mode 100644
index 000000000..812c4aaee
--- /dev/null
+++ b/gfx/pics/034/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $2a, $2a, $2a, $31, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45
+ db $2a, $2a, $46, $47, $48
+.frame2
+ db $00 ; bitmask
+ db $2a, $2a, $2a, $49, $32, $33, $4a, $4b, $4c, $37, $38, $4d
+ db $3a, $3b, $4e, $3d, $3e, $4f, $50, $41, $42, $51, $44, $45
+ db $2a, $2a, $46, $47, $48
+.frame3
+ db $01 ; bitmask
+ db $52, $53
+; 0xd4909
diff --git a/gfx/frontpics/034.2bpp b/gfx/pics/034/front.2bpp
index a89d69ae5..a89d69ae5 100644
--- a/gfx/frontpics/034.2bpp
+++ b/gfx/pics/034/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/034.lz b/gfx/pics/034/front.lz
index aad75774c..aad75774c 100644
--- a/gfx/frontpics/lz/034.lz
+++ b/gfx/pics/034/front.lz
Binary files differ
diff --git a/gfx/anim/034.2bpp b/gfx/pics/034/tiles.2bpp
index 2ffb2b7e7..2ffb2b7e7 100644
--- a/gfx/anim/034.2bpp
+++ b/gfx/pics/034/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/035/anim0.asm b/gfx/pics/035/anim0.asm
new file mode 100644
index 000000000..9905c4fcc
--- /dev/null
+++ b/gfx/pics/035/anim0.asm
@@ -0,0 +1,9 @@
+ frame 2, 06
+ frame 1, 06
+ frame 2, 06
+ setrepeat 3
+ frame 0, 05
+ frame 3, 05
+ dorepeat 4
+ endanim
+; 0xd0a9e
diff --git a/gfx/pics/035/anim1.asm b/gfx/pics/035/anim1.asm
new file mode 100644
index 000000000..c93613467
--- /dev/null
+++ b/gfx/pics/035/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 4, 12
+ frame 5, 12
+ dorepeat 1
+ frame 0, 05
+ frame 3, 05
+ endanim
+; 0xd1a20
diff --git a/gfx/backpics/035.2bpp b/gfx/pics/035/back.2bpp
index 4d3a3451c..4d3a3451c 100644
--- a/gfx/backpics/035.2bpp
+++ b/gfx/pics/035/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/035.lz b/gfx/pics/035/back.lz
index a6a5ecb82..a6a5ecb82 100644
--- a/gfx/backpics/lz/035.lz
+++ b/gfx/pics/035/back.lz
Binary files differ
diff --git a/gfx/pics/035/bitmask.asm b/gfx/pics/035/bitmask.asm
new file mode 100644
index 000000000..1c599e334
--- /dev/null
+++ b/gfx/pics/035/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %10001100
+ db %00110001
+ db %00001110
+ db %00000000
+; 1
+ db %10001110
+ db %10110001
+ db %00111110
+ db %00000000
+; 2
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 3
+ db %10001100
+ db %00010001
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd2963
diff --git a/gfx/pics/035/frames.asm b/gfx/pics/035/frames.asm
new file mode 100644
index 000000000..88978f35b
--- /dev/null
+++ b/gfx/pics/035/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $22, $19, $1a, $23, $1c, $24, $1e, $25, $1f, $20, $21, $00
+ db $00
+.frame3
+ db $02 ; bitmask
+ db $26, $27
+.frame4
+ db $03 ; bitmask
+ db $19, $1a, $1b, $1c, $27
+.frame5
+ db $04 ; bitmask
+ db $27
+; 0xd4936
diff --git a/gfx/frontpics/035.2bpp b/gfx/pics/035/front.2bpp
index 50c08e3c6..50c08e3c6 100644
--- a/gfx/frontpics/035.2bpp
+++ b/gfx/pics/035/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/035.lz b/gfx/pics/035/front.lz
index d8adc2e2e..d8adc2e2e 100644
--- a/gfx/frontpics/lz/035.lz
+++ b/gfx/pics/035/front.lz
Binary files differ
diff --git a/gfx/anim/035.2bpp b/gfx/pics/035/tiles.2bpp
index 3eff0fda7..3eff0fda7 100644
--- a/gfx/anim/035.2bpp
+++ b/gfx/pics/035/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/036/anim0.asm b/gfx/pics/036/anim0.asm
new file mode 100644
index 000000000..d442807e8
--- /dev/null
+++ b/gfx/pics/036/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 04
+ frame 1, 10
+ frame 2, 10
+ frame 1, 10
+ endanim
+; 0xd0aa7
diff --git a/gfx/pics/036/anim1.asm b/gfx/pics/036/anim1.asm
new file mode 100644
index 000000000..2b024ffd8
--- /dev/null
+++ b/gfx/pics/036/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd1a29
diff --git a/gfx/backpics/036.2bpp b/gfx/pics/036/back.2bpp
index dc1790b59..dc1790b59 100644
--- a/gfx/backpics/036.2bpp
+++ b/gfx/pics/036/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/036.lz b/gfx/pics/036/back.lz
index 1bcb8cbcd..1bcb8cbcd 100644
--- a/gfx/backpics/lz/036.lz
+++ b/gfx/pics/036/back.lz
Binary files differ
diff --git a/gfx/pics/036/bitmask.asm b/gfx/pics/036/bitmask.asm
new file mode 100644
index 000000000..b1c1ae623
--- /dev/null
+++ b/gfx/pics/036/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00011100
+ db %11000000
+ db %11000011
+ db %00110000
+ db %00000000
+; 1
+ db %00110000
+ db %11001100
+ db %00100011
+ db %00011100
+ db %00000111
+; 2
+ db %00000000
+ db %01000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2972
diff --git a/gfx/pics/036/frames.asm b/gfx/pics/036/frames.asm
new file mode 100644
index 000000000..e1346985d
--- /dev/null
+++ b/gfx/pics/036/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $01 ; bitmask
+ db $2f, $30, $31, $32, $27, $28, $0f, $33, $0f, $34, $35, $36
+ db $37, $38, $39
+.frame3
+ db $02 ; bitmask
+ db $3a, $3b
+; 0xd495b
diff --git a/gfx/frontpics/036.2bpp b/gfx/pics/036/front.2bpp
index 37667db2e..37667db2e 100644
--- a/gfx/frontpics/036.2bpp
+++ b/gfx/pics/036/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/036.lz b/gfx/pics/036/front.lz
index 4fb424305..4fb424305 100644
--- a/gfx/frontpics/lz/036.lz
+++ b/gfx/pics/036/front.lz
Binary files differ
diff --git a/gfx/anim/036.2bpp b/gfx/pics/036/tiles.2bpp
index 2064cae82..2064cae82 100644
--- a/gfx/anim/036.2bpp
+++ b/gfx/pics/036/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/037/anim0.asm b/gfx/pics/037/anim0.asm
new file mode 100644
index 000000000..878054202
--- /dev/null
+++ b/gfx/pics/037/anim0.asm
@@ -0,0 +1,11 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 05
+ frame 2, 05
+ dorepeat 1
+ setrepeat 2
+ frame 0, 04
+ frame 3, 05
+ dorepeat 6
+ endanim
+; 0xd0aba
diff --git a/gfx/pics/037/anim1.asm b/gfx/pics/037/anim1.asm
new file mode 100644
index 000000000..f7c9e3671
--- /dev/null
+++ b/gfx/pics/037/anim1.asm
@@ -0,0 +1,7 @@
+ frame 4, 10
+ frame 3, 10
+ frame 4, 10
+ frame 0, 05
+ frame 3, 05
+ endanim
+; 0xd1a34
diff --git a/gfx/backpics/037.2bpp b/gfx/pics/037/back.2bpp
index 2a1747ed0..2a1747ed0 100644
--- a/gfx/backpics/037.2bpp
+++ b/gfx/pics/037/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/037.lz b/gfx/pics/037/back.lz
index ce2535141..ce2535141 100644
--- a/gfx/backpics/lz/037.lz
+++ b/gfx/pics/037/back.lz
Binary files differ
diff --git a/gfx/pics/037/bitmask.asm b/gfx/pics/037/bitmask.asm
new file mode 100644
index 000000000..170eac783
--- /dev/null
+++ b/gfx/pics/037/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %11000000
+ db %01110000
+ db %00011100
+ db %10001111
+ db %00000011
+; 1
+ db %00011000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00111000
+ db %00001100
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2981
diff --git a/gfx/pics/037/frames.asm b/gfx/pics/037/frames.asm
new file mode 100644
index 000000000..b0cf1935a
--- /dev/null
+++ b/gfx/pics/037/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31
+.frame2
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $32, $33
+ db $2f, $34, $35
+.frame3
+ db $01 ; bitmask
+ db $36, $37, $38
+.frame4
+ db $02 ; bitmask
+ db $36, $39, $3a, $3b, $3c
+; 0xd498d
diff --git a/gfx/frontpics/037.2bpp b/gfx/pics/037/front.2bpp
index 8252c4778..8252c4778 100644
--- a/gfx/frontpics/037.2bpp
+++ b/gfx/pics/037/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/037.lz b/gfx/pics/037/front.lz
index 9248ce808..9248ce808 100644
--- a/gfx/frontpics/lz/037.lz
+++ b/gfx/pics/037/front.lz
Binary files differ
diff --git a/gfx/anim/037.2bpp b/gfx/pics/037/tiles.2bpp
index 3386b378e..3386b378e 100644
--- a/gfx/anim/037.2bpp
+++ b/gfx/pics/037/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/038/anim0.asm b/gfx/pics/038/anim0.asm
new file mode 100644
index 000000000..0d691ee9d
--- /dev/null
+++ b/gfx/pics/038/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 07
+ frame 1, 08
+ frame 2, 09
+ frame 3, 09
+ frame 4, 10
+ frame 3, 12
+ frame 2, 10
+ frame 1, 08
+ endanim
+; 0xd0acb
diff --git a/gfx/pics/038/anim1.asm b/gfx/pics/038/anim1.asm
new file mode 100644
index 000000000..68d1e8051
--- /dev/null
+++ b/gfx/pics/038/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 5, 06
+ dorepeat 1
+ endanim
+; 0xd1a3d
diff --git a/gfx/backpics/038.2bpp b/gfx/pics/038/back.2bpp
index 351678a4a..351678a4a 100644
--- a/gfx/backpics/038.2bpp
+++ b/gfx/pics/038/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/038.lz b/gfx/pics/038/back.lz
index e6b264033..e6b264033 100644
--- a/gfx/backpics/lz/038.lz
+++ b/gfx/pics/038/back.lz
Binary files differ
diff --git a/gfx/pics/038/bitmask.asm b/gfx/pics/038/bitmask.asm
new file mode 100644
index 000000000..434f61e97
--- /dev/null
+++ b/gfx/pics/038/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00000100
+ db %00000000
+ db %10000000
+ db %11100001
+ db %11110000
+ db %11110010
+ db %00000001
+; 1
+ db %00000100
+ db %00000000
+ db %10000000
+ db %11101001
+ db %11110111
+ db %11110011
+ db %00000001
+; 2
+ db %00001100
+ db %00110010
+ db %10011000
+ db %11101101
+ db %11110111
+ db %11110011
+ db %00000001
+; 3
+ db %01001100
+ db %00110010
+ db %10011000
+ db %11101101
+ db %11110111
+ db %11110011
+ db %00000001
+; 4
+ db %00000000
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd29a4
diff --git a/gfx/pics/038/frames.asm b/gfx/pics/038/frames.asm
new file mode 100644
index 000000000..90c846aa2
--- /dev/null
+++ b/gfx/pics/038/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $41, $42, $43, $36, $44, $45, $46, $47, $48
+ db $49, $4a, $4b, $4c, $3c, $4d, $4e, $4f, $50
+.frame3
+ db $02 ; bitmask
+ db $51, $52, $53, $54, $55, $56, $57, $32, $33, $58, $41, $42
+ db $43, $36, $44, $45, $46, $47, $48, $49, $4a, $4b, $4c, $3c
+ db $4d, $4e, $4f, $50
+.frame4
+ db $03 ; bitmask
+ db $51, $52, $03, $53, $59, $5a, $5b, $5c, $32, $33, $5d, $5e
+ db $42, $43, $36, $44, $45, $46, $47, $48, $49, $4a, $4b, $4c
+ db $3c, $4d, $4e, $4f, $50
+.frame5
+ db $04 ; bitmask
+ db $5f, $60
+; 0xd49fc
diff --git a/gfx/frontpics/038.2bpp b/gfx/pics/038/front.2bpp
index f43497694..f43497694 100644
--- a/gfx/frontpics/038.2bpp
+++ b/gfx/pics/038/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/038.lz b/gfx/pics/038/front.lz
index 4865c6d82..4865c6d82 100644
--- a/gfx/frontpics/lz/038.lz
+++ b/gfx/pics/038/front.lz
Binary files differ
diff --git a/gfx/anim/038.2bpp b/gfx/pics/038/tiles.2bpp
index e1c510dd5..e1c510dd5 100644
--- a/gfx/anim/038.2bpp
+++ b/gfx/pics/038/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/039/anim0.asm b/gfx/pics/039/anim0.asm
new file mode 100644
index 000000000..ada7e0d99
--- /dev/null
+++ b/gfx/pics/039/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 14
+ frame 2, 09
+ frame 3, 09
+ frame 2, 06
+ frame 4, 20
+ setrepeat 2
+ frame 3, 05
+ frame 4, 05
+ dorepeat 6
+ endanim
+; 0xd0ade
diff --git a/gfx/pics/039/anim1.asm b/gfx/pics/039/anim1.asm
new file mode 100644
index 000000000..40584de87
--- /dev/null
+++ b/gfx/pics/039/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd1a46
diff --git a/gfx/backpics/039.2bpp b/gfx/pics/039/back.2bpp
index ffa43501b..ffa43501b 100644
--- a/gfx/backpics/039.2bpp
+++ b/gfx/pics/039/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/039.lz b/gfx/pics/039/back.lz
index e551afaf6..e551afaf6 100644
--- a/gfx/backpics/lz/039.lz
+++ b/gfx/pics/039/back.lz
Binary files differ
diff --git a/gfx/pics/039/bitmask.asm b/gfx/pics/039/bitmask.asm
new file mode 100644
index 000000000..ae2e23c9f
--- /dev/null
+++ b/gfx/pics/039/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00001000
+ db %00100001
+ db %11000000
+ db %00000000
+; 1
+ db %10000000
+ db %01110001
+ db %10001111
+ db %00000000
+; 2
+ db %10000000
+ db %00110001
+ db %00000011
+ db %00000000
+; 0xd29b0
diff --git a/gfx/pics/039/frames.asm b/gfx/pics/039/frames.asm
new file mode 100644
index 000000000..eb10d6d58
--- /dev/null
+++ b/gfx/pics/039/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d
+.frame2
+ db $01 ; bitmask
+ db $1e, $1f, $20, $21, $22, $23, $24, $25, $26, $27
+.frame3
+ db $02 ; bitmask
+ db $28, $29, $2a, $2b, $23, $2c
+.frame4
+ db $02 ; bitmask
+ db $1e, $2d, $20, $2b, $23, $24
+; 0xd4a23
diff --git a/gfx/frontpics/039.2bpp b/gfx/pics/039/front.2bpp
index cc92d80e5..cc92d80e5 100644
--- a/gfx/frontpics/039.2bpp
+++ b/gfx/pics/039/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/039.lz b/gfx/pics/039/front.lz
index 4367e41d8..4367e41d8 100644
--- a/gfx/frontpics/lz/039.lz
+++ b/gfx/pics/039/front.lz
Binary files differ
diff --git a/gfx/anim/039.2bpp b/gfx/pics/039/tiles.2bpp
index 5c3a66bb2..5c3a66bb2 100644
--- a/gfx/anim/039.2bpp
+++ b/gfx/pics/039/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/040/anim0.asm b/gfx/pics/040/anim0.asm
new file mode 100644
index 000000000..53b468fdd
--- /dev/null
+++ b/gfx/pics/040/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 04
+ frame 1, 20
+ frame 2, 08
+ frame 0, 08
+ frame 2, 06
+ frame 0, 06
+ frame 2, 04
+ endanim
+; 0xd0aed
diff --git a/gfx/pics/040/anim1.asm b/gfx/pics/040/anim1.asm
new file mode 100644
index 000000000..b99bf002c
--- /dev/null
+++ b/gfx/pics/040/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1a4f
diff --git a/gfx/backpics/040.2bpp b/gfx/pics/040/back.2bpp
index 31dfbee96..31dfbee96 100644
--- a/gfx/backpics/040.2bpp
+++ b/gfx/pics/040/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/040.lz b/gfx/pics/040/back.lz
index 3b3732986..3b3732986 100644
--- a/gfx/backpics/lz/040.lz
+++ b/gfx/pics/040/back.lz
Binary files differ
diff --git a/gfx/pics/040/bitmask.asm b/gfx/pics/040/bitmask.asm
new file mode 100644
index 000000000..5cde27270
--- /dev/null
+++ b/gfx/pics/040/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00011000
+ db %10000111
+ db %01100001
+ db %00011000
+ db %00000000
+; 1
+ db %00011000
+ db %00001111
+ db %00000000
+ db %00111100
+ db %00001100
+; 2
+ db %00000000
+ db %01000001
+ db %00110000
+ db %00001100
+ db %00000000
+; 0xd29bf
diff --git a/gfx/pics/040/frames.asm b/gfx/pics/040/frames.asm
new file mode 100644
index 000000000..131fc589c
--- /dev/null
+++ b/gfx/pics/040/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $01 ; bitmask
+ db $2f, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+.frame3
+ db $02 ; bitmask
+ db $3b, $3c, $3d, $3e, $3f, $40
+; 0xd4a49
diff --git a/gfx/frontpics/040.2bpp b/gfx/pics/040/front.2bpp
index acec3480c..acec3480c 100644
--- a/gfx/frontpics/040.2bpp
+++ b/gfx/pics/040/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/040.lz b/gfx/pics/040/front.lz
index c633d2a0a..c633d2a0a 100644
--- a/gfx/frontpics/lz/040.lz
+++ b/gfx/pics/040/front.lz
Binary files differ
diff --git a/gfx/anim/040.2bpp b/gfx/pics/040/tiles.2bpp
index 511c5cc60..511c5cc60 100644
--- a/gfx/anim/040.2bpp
+++ b/gfx/pics/040/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/041/anim0.asm b/gfx/pics/041/anim0.asm
new file mode 100644
index 000000000..a34a66671
--- /dev/null
+++ b/gfx/pics/041/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 4
+ frame 1, 07
+ frame 2, 07
+ dorepeat 1
+ frame 3, 07
+ frame 0, 07
+ endanim
+; 0xd0afa
diff --git a/gfx/pics/041/anim1.asm b/gfx/pics/041/anim1.asm
new file mode 100644
index 000000000..cfba587f9
--- /dev/null
+++ b/gfx/pics/041/anim1.asm
@@ -0,0 +1,7 @@
+ frame 2, 35
+ setrepeat 2
+ frame 0, 12
+ frame 3, 12
+ dorepeat 2
+ endanim
+; 0xd1a5a
diff --git a/gfx/backpics/041.2bpp b/gfx/pics/041/back.2bpp
index cd2d675d3..cd2d675d3 100644
--- a/gfx/backpics/041.2bpp
+++ b/gfx/pics/041/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/041.lz b/gfx/pics/041/back.lz
index d50e00e90..d50e00e90 100644
--- a/gfx/backpics/lz/041.lz
+++ b/gfx/pics/041/back.lz
Binary files differ
diff --git a/gfx/pics/041/bitmask.asm b/gfx/pics/041/bitmask.asm
new file mode 100644
index 000000000..bf6109784
--- /dev/null
+++ b/gfx/pics/041/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11011110
+ db %00010011
+ db %11100111
+ db %00000001
+; 1
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 2
+ db %11011110
+ db %00000011
+ db %11100111
+ db %00000001
+; 0xd29cb
diff --git a/gfx/pics/041/frames.asm b/gfx/pics/041/frames.asm
new file mode 100644
index 000000000..8fa207006
--- /dev/null
+++ b/gfx/pics/041/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $0e, $1c, $1d, $0e, $0e, $1e, $1f, $20, $21
+ db $22, $23, $0e, $0e
+.frame2
+ db $01 ; bitmask
+ db $24, $1e
+.frame3
+ db $02 ; bitmask
+ db $19, $1a, $1b, $0e, $1c, $25, $0e, $0e, $1f, $26, $21, $22
+ db $23, $0e, $0e
+; 0xd4a73
diff --git a/gfx/frontpics/041.2bpp b/gfx/pics/041/front.2bpp
index 4d2c6934b..4d2c6934b 100644
--- a/gfx/frontpics/041.2bpp
+++ b/gfx/pics/041/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/041.lz b/gfx/pics/041/front.lz
index b22e1d971..b22e1d971 100644
--- a/gfx/frontpics/lz/041.lz
+++ b/gfx/pics/041/front.lz
Binary files differ
diff --git a/gfx/anim/041.2bpp b/gfx/pics/041/tiles.2bpp
index 115cc532c..115cc532c 100644
--- a/gfx/anim/041.2bpp
+++ b/gfx/pics/041/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/042/anim0.asm b/gfx/pics/042/anim0.asm
new file mode 100644
index 000000000..cb04c1a3b
--- /dev/null
+++ b/gfx/pics/042/anim0.asm
@@ -0,0 +1,11 @@
+ frame 0, 08
+ setrepeat 2
+ frame 2, 09
+ frame 3, 09
+ dorepeat 2
+ setrepeat 3
+ frame 3, 08
+ frame 1, 08
+ dorepeat 6
+ endanim
+; 0xd0b0d
diff --git a/gfx/pics/042/anim1.asm b/gfx/pics/042/anim1.asm
new file mode 100644
index 000000000..689aed3fd
--- /dev/null
+++ b/gfx/pics/042/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1a63
diff --git a/gfx/backpics/042.2bpp b/gfx/pics/042/back.2bpp
index 4e80059c9..4e80059c9 100644
--- a/gfx/backpics/042.2bpp
+++ b/gfx/pics/042/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/042.lz b/gfx/pics/042/back.lz
index e2bd0c367..e2bd0c367 100644
--- a/gfx/backpics/lz/042.lz
+++ b/gfx/pics/042/back.lz
Binary files differ
diff --git a/gfx/pics/042/bitmask.asm b/gfx/pics/042/bitmask.asm
new file mode 100644
index 000000000..b74546ba4
--- /dev/null
+++ b/gfx/pics/042/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10111111
+ db %00111111
+ db %00001101
+ db %11001110
+ db %11111111
+ db %01111101
+ db %00000000
+; 1
+ db %00110000
+ db %00111000
+ db %00001100
+ db %00001110
+ db %00000110
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000001
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd29e0
diff --git a/gfx/pics/042/frames.asm b/gfx/pics/042/frames.asm
new file mode 100644
index 000000000..78aeab341
--- /dev/null
+++ b/gfx/pics/042/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $06, $06, $31, $32, $33, $34, $06, $06, $35, $36, $37, $38
+ db $06, $39, $3a, $3b, $3c, $3d, $06, $3e, $3f, $40, $41, $42
+ db $06, $06, $43, $44, $45, $46, $06, $06, $06, $47, $48
+.frame2
+ db $01 ; bitmask
+ db $49, $06, $37, $38, $06, $4a, $3b, $4b, $3d, $06, $41, $42
+.frame3
+ db $01 ; bitmask
+ db $49, $06, $37, $38, $06, $3a, $3b, $3c, $3d, $06, $41, $42
+.frame4
+ db $02 ; bitmask
+ db $4c, $4d, $4e
+; 0xd4abd
diff --git a/gfx/frontpics/042.2bpp b/gfx/pics/042/front.2bpp
index 7cf220bf9..7cf220bf9 100644
--- a/gfx/frontpics/042.2bpp
+++ b/gfx/pics/042/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/042.lz b/gfx/pics/042/front.lz
index 94f7d8216..94f7d8216 100644
--- a/gfx/frontpics/lz/042.lz
+++ b/gfx/pics/042/front.lz
Binary files differ
diff --git a/gfx/anim/042.2bpp b/gfx/pics/042/tiles.2bpp
index 6b2324937..6b2324937 100644
--- a/gfx/anim/042.2bpp
+++ b/gfx/pics/042/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/043/anim0.asm b/gfx/pics/043/anim0.asm
new file mode 100644
index 000000000..338771fce
--- /dev/null
+++ b/gfx/pics/043/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 10
+ frame 2, 20
+ frame 1, 07
+ frame 4, 05
+ frame 0, 15
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 6
+ endanim
+; 0xd0b20
diff --git a/gfx/pics/043/anim1.asm b/gfx/pics/043/anim1.asm
new file mode 100644
index 000000000..92d041ff5
--- /dev/null
+++ b/gfx/pics/043/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd1a6c
diff --git a/gfx/backpics/043.2bpp b/gfx/pics/043/back.2bpp
index 186377c3e..186377c3e 100644
--- a/gfx/backpics/043.2bpp
+++ b/gfx/pics/043/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/043.lz b/gfx/pics/043/back.lz
index 81ba4e5f3..81ba4e5f3 100644
--- a/gfx/backpics/lz/043.lz
+++ b/gfx/pics/043/back.lz
Binary files differ
diff --git a/gfx/pics/043/bitmask.asm b/gfx/pics/043/bitmask.asm
new file mode 100644
index 000000000..d9d298ed4
--- /dev/null
+++ b/gfx/pics/043/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11100010
+ db %10111100
+ db %01100011
+ db %00000000
+; 1
+ db %00000000
+ db %00000001
+ db %00000100
+ db %00000000
+; 2
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd29ec
diff --git a/gfx/pics/043/frames.asm b/gfx/pics/043/frames.asm
new file mode 100644
index 000000000..96561fe6d
--- /dev/null
+++ b/gfx/pics/043/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+ db $24
+.frame2
+ db $00 ; bitmask
+ db $00, $25, $26, $1b, $27, $1d, $1e, $1f, $20, $21, $28, $23
+ db $29
+.frame3
+ db $01 ; bitmask
+ db $2a, $2b
+.frame4
+ db $02 ; bitmask
+ db $2c
+; 0xd4ae6
diff --git a/gfx/frontpics/043.2bpp b/gfx/pics/043/front.2bpp
index 79c4f0075..79c4f0075 100644
--- a/gfx/frontpics/043.2bpp
+++ b/gfx/pics/043/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/043.lz b/gfx/pics/043/front.lz
index 3864c0b7a..3864c0b7a 100644
--- a/gfx/frontpics/lz/043.lz
+++ b/gfx/pics/043/front.lz
Binary files differ
diff --git a/gfx/anim/043.2bpp b/gfx/pics/043/tiles.2bpp
index 524e83e68..524e83e68 100644
--- a/gfx/anim/043.2bpp
+++ b/gfx/pics/043/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/044/anim0.asm b/gfx/pics/044/anim0.asm
new file mode 100644
index 000000000..89c6805b9
--- /dev/null
+++ b/gfx/pics/044/anim0.asm
@@ -0,0 +1,12 @@
+ frame 0, 04
+ frame 1, 10
+ frame 2, 14
+ frame 3, 20
+ frame 2, 10
+ frame 3, 08
+ frame 4, 07
+ frame 5, 07
+ frame 0, 06
+ frame 5, 06
+ endanim
+; 0xd0b35
diff --git a/gfx/pics/044/anim1.asm b/gfx/pics/044/anim1.asm
new file mode 100644
index 000000000..cdb6c5191
--- /dev/null
+++ b/gfx/pics/044/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 5, 10
+ dorepeat 1
+ endanim
+; 0xd1a75
diff --git a/gfx/backpics/044.2bpp b/gfx/pics/044/back.2bpp
index 259e1b2b0..259e1b2b0 100644
--- a/gfx/backpics/044.2bpp
+++ b/gfx/pics/044/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/044.lz b/gfx/pics/044/back.lz
index 7d35e2d82..7d35e2d82 100644
--- a/gfx/backpics/lz/044.lz
+++ b/gfx/pics/044/back.lz
Binary files differ
diff --git a/gfx/pics/044/bitmask.asm b/gfx/pics/044/bitmask.asm
new file mode 100644
index 000000000..c75940997
--- /dev/null
+++ b/gfx/pics/044/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %10000000
+ db %01100001
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000011
+ db %01000001
+ db %00001000
+ db %00000010
+; 2
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00010000
+ db %00000100
+; 0xd29fb
diff --git a/gfx/pics/044/frames.asm b/gfx/pics/044/frames.asm
new file mode 100644
index 000000000..97018ccf4
--- /dev/null
+++ b/gfx/pics/044/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27
+.frame2
+ db $00 ; bitmask
+ db $24, $28, $26, $29
+.frame3
+ db $00 ; bitmask
+ db $24, $2a, $26, $2b
+.frame4
+ db $01 ; bitmask
+ db $2c, $2d, $2e, $2f, $30, $31
+.frame5
+ db $02 ; bitmask
+ db $32, $33, $34
+; 0xd4b0a
diff --git a/gfx/frontpics/044.2bpp b/gfx/pics/044/front.2bpp
index e04b44802..e04b44802 100644
--- a/gfx/frontpics/044.2bpp
+++ b/gfx/pics/044/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/044.lz b/gfx/pics/044/front.lz
index a69e4b76c..a69e4b76c 100644
--- a/gfx/frontpics/lz/044.lz
+++ b/gfx/pics/044/front.lz
Binary files differ
diff --git a/gfx/anim/044.2bpp b/gfx/pics/044/tiles.2bpp
index d9814207f..d9814207f 100644
--- a/gfx/anim/044.2bpp
+++ b/gfx/pics/044/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/045/anim0.asm b/gfx/pics/045/anim0.asm
new file mode 100644
index 000000000..98c2a86de
--- /dev/null
+++ b/gfx/pics/045/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 07
+ frame 2, 25
+ frame 3, 05
+ frame 1, 05
+ frame 0, 05
+ frame 1, 05
+ frame 0, 07
+ frame 1, 07
+ endanim
+; 0xd0b46
diff --git a/gfx/pics/045/anim1.asm b/gfx/pics/045/anim1.asm
new file mode 100644
index 000000000..e57622363
--- /dev/null
+++ b/gfx/pics/045/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ frame 0, 12
+ frame 3, 07
+ endanim
+; 0xd1a82
diff --git a/gfx/backpics/045.2bpp b/gfx/pics/045/back.2bpp
index 179559ba0..179559ba0 100644
--- a/gfx/backpics/045.2bpp
+++ b/gfx/pics/045/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/045.lz b/gfx/pics/045/back.lz
index 823f0e112..823f0e112 100644
--- a/gfx/backpics/lz/045.lz
+++ b/gfx/pics/045/back.lz
Binary files differ
diff --git a/gfx/pics/045/bitmask.asm b/gfx/pics/045/bitmask.asm
new file mode 100644
index 000000000..71a97597a
--- /dev/null
+++ b/gfx/pics/045/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000110
+ db %00000011
+ db %00000110
+ db %10000011
+ db %11000001
+ db %01100000
+ db %00000000
+; 1
+ db %00000110
+ db %10001111
+ db %01000110
+ db %10100011
+ db %11110011
+ db %01110001
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000100
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2a10
diff --git a/gfx/pics/045/frames.asm b/gfx/pics/045/frames.asm
new file mode 100644
index 000000000..35a7708aa
--- /dev/null
+++ b/gfx/pics/045/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $31, $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49
+ db $4a, $4b, $4c, $4d, $4e, $4f, $50, $51, $52, $53, $54, $55
+.frame3
+ db $02 ; bitmask
+ db $56, $57
+; 0xd4b3b
diff --git a/gfx/frontpics/045.2bpp b/gfx/pics/045/front.2bpp
index 953b5fc97..953b5fc97 100644
--- a/gfx/frontpics/045.2bpp
+++ b/gfx/pics/045/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/045.lz b/gfx/pics/045/front.lz
index 05ca10ba5..05ca10ba5 100644
--- a/gfx/frontpics/lz/045.lz
+++ b/gfx/pics/045/front.lz
Binary files differ
diff --git a/gfx/anim/045.2bpp b/gfx/pics/045/tiles.2bpp
index 8165dd906..8165dd906 100644
--- a/gfx/anim/045.2bpp
+++ b/gfx/pics/045/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/046/anim0.asm b/gfx/pics/046/anim0.asm
new file mode 100644
index 000000000..6fcc935e9
--- /dev/null
+++ b/gfx/pics/046/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 10
+ frame 1, 14
+ frame 2, 32
+ frame 1, 08
+ endanim
+; 0xd0b4f
diff --git a/gfx/pics/046/anim1.asm b/gfx/pics/046/anim1.asm
new file mode 100644
index 000000000..3ce495f04
--- /dev/null
+++ b/gfx/pics/046/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1a8b
diff --git a/gfx/backpics/046.2bpp b/gfx/pics/046/back.2bpp
index f733270ba..f733270ba 100644
--- a/gfx/backpics/046.2bpp
+++ b/gfx/pics/046/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/046.lz b/gfx/pics/046/back.lz
index d6c3d4a62..d6c3d4a62 100644
--- a/gfx/backpics/lz/046.lz
+++ b/gfx/pics/046/back.lz
Binary files differ
diff --git a/gfx/pics/046/bitmask.asm b/gfx/pics/046/bitmask.asm
new file mode 100644
index 000000000..49d9d811e
--- /dev/null
+++ b/gfx/pics/046/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11011110
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %11011110
+ db %00100001
+ db %11001110
+ db %00000001
+; 2
+ db %10000000
+ db %00010000
+ db %00000010
+ db %00000000
+; 0xd2a1c
diff --git a/gfx/pics/046/frames.asm b/gfx/pics/046/frames.asm
new file mode 100644
index 000000000..345ef88b5
--- /dev/null
+++ b/gfx/pics/046/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $00, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b, $00, $1c, $1d, $1e, $1f, $20, $21, $00, $22
+ db $23, $24
+.frame3
+ db $02 ; bitmask
+ db $25, $26, $27
+; 0xd4b5c
diff --git a/gfx/frontpics/046.2bpp b/gfx/pics/046/front.2bpp
index 906e2c390..906e2c390 100644
--- a/gfx/frontpics/046.2bpp
+++ b/gfx/pics/046/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/046.lz b/gfx/pics/046/front.lz
index 927c831d0..927c831d0 100644
--- a/gfx/frontpics/lz/046.lz
+++ b/gfx/pics/046/front.lz
Binary files differ
diff --git a/gfx/anim/046.2bpp b/gfx/pics/046/tiles.2bpp
index 172f8ca8e..172f8ca8e 100644
--- a/gfx/anim/046.2bpp
+++ b/gfx/pics/046/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/047/anim0.asm b/gfx/pics/047/anim0.asm
new file mode 100644
index 000000000..e9e253cee
--- /dev/null
+++ b/gfx/pics/047/anim0.asm
@@ -0,0 +1,13 @@
+ setrepeat 2
+ frame 1, 08
+ frame 2, 10
+ frame 1, 08
+ frame 0, 10
+ dorepeat 1
+ frame 4, 20
+ setrepeat 3
+ frame 0, 04
+ frame 4, 04
+ dorepeat 8
+ endanim
+; 0xd0b66
diff --git a/gfx/pics/047/anim1.asm b/gfx/pics/047/anim1.asm
new file mode 100644
index 000000000..8275690a6
--- /dev/null
+++ b/gfx/pics/047/anim1.asm
@@ -0,0 +1,5 @@
+ frame 5, 30
+ frame 0, 05
+ frame 4, 20
+ endanim
+; 0xd1a92
diff --git a/gfx/backpics/047.2bpp b/gfx/pics/047/back.2bpp
index 6ed60328d..6ed60328d 100644
--- a/gfx/backpics/047.2bpp
+++ b/gfx/pics/047/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/047.lz b/gfx/pics/047/back.lz
index a63677ff7..a63677ff7 100644
--- a/gfx/backpics/lz/047.lz
+++ b/gfx/pics/047/back.lz
Binary files differ
diff --git a/gfx/pics/047/bitmask.asm b/gfx/pics/047/bitmask.asm
new file mode 100644
index 000000000..84c7ad6f4
--- /dev/null
+++ b/gfx/pics/047/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00011100
+ db %00111110
+ db %00011111
+ db %00001111
+ db %00000011
+ db %10000000
+ db %00000000
+; 1
+ db %00011100
+ db %00110110
+ db %00011111
+ db %10001111
+ db %00000011
+ db %10000011
+ db %00000000
+; 2
+ db %00000000
+ db %00110000
+ db %00011110
+ db %00001111
+ db %00000001
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000010
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00011100
+ db %00000110
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2a3f
diff --git a/gfx/pics/047/frames.asm b/gfx/pics/047/frames.asm
new file mode 100644
index 000000000..08d9da8e7
--- /dev/null
+++ b/gfx/pics/047/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $00, $38, $39, $3a, $3b
+ db $00, $3c, $3d, $3e, $00, $3f, $00, $40
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $35, $00, $00, $38, $41, $42, $43, $00
+ db $44, $45, $46, $00, $47, $48, $00, $49, $00, $40
+.frame3
+ db $02 ; bitmask
+ db $37, $00, $4a, $3a, $3b, $00, $3c, $3d, $3e, $00, $3f
+.frame4
+ db $03 ; bitmask
+ db $4b, $4c, $4d
+.frame5
+ db $04 ; bitmask
+ db $31, $32, $33, $34, $35, $38
+; 0xd4ba9
diff --git a/gfx/frontpics/047.2bpp b/gfx/pics/047/front.2bpp
index 5cbd914b2..5cbd914b2 100644
--- a/gfx/frontpics/047.2bpp
+++ b/gfx/pics/047/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/047.lz b/gfx/pics/047/front.lz
index f1743d07e..f1743d07e 100644
--- a/gfx/frontpics/lz/047.lz
+++ b/gfx/pics/047/front.lz
Binary files differ
diff --git a/gfx/anim/047.2bpp b/gfx/pics/047/tiles.2bpp
index 0afd4cc0a..0afd4cc0a 100644
--- a/gfx/anim/047.2bpp
+++ b/gfx/pics/047/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/048/anim0.asm b/gfx/pics/048/anim0.asm
new file mode 100644
index 000000000..508cbd84a
--- /dev/null
+++ b/gfx/pics/048/anim0.asm
@@ -0,0 +1,16 @@
+ frame 2, 10
+ frame 0, 10
+ frame 2, 10
+ frame 0, 06
+ frame 1, 06
+ frame 0, 06
+ setrepeat 3
+ frame 1, 04
+ frame 0, 04
+ dorepeat 7
+ setrepeat 2
+ frame 1, 02
+ frame 0, 02
+ dorepeat 11
+ endanim
+; 0xd0b83
diff --git a/gfx/pics/048/anim1.asm b/gfx/pics/048/anim1.asm
new file mode 100644
index 000000000..ecd7a45f1
--- /dev/null
+++ b/gfx/pics/048/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 12
+ frame 2, 16
+ dorepeat 1
+ endanim
+; 0xd1a9b
diff --git a/gfx/backpics/048.2bpp b/gfx/pics/048/back.2bpp
index 2e78df70b..2e78df70b 100644
--- a/gfx/backpics/048.2bpp
+++ b/gfx/pics/048/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/048.lz b/gfx/pics/048/back.lz
index b28c7523d..b28c7523d 100644
--- a/gfx/backpics/lz/048.lz
+++ b/gfx/pics/048/back.lz
Binary files differ
diff --git a/gfx/pics/048/bitmask.asm b/gfx/pics/048/bitmask.asm
new file mode 100644
index 000000000..2ee6c413a
--- /dev/null
+++ b/gfx/pics/048/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %10000000
+ db %00010001
+ db %00000110
+ db %00000000
+; 1
+ db %01100001
+ db %10101101
+ db %00000000
+ db %00000000
+; 0xd2a47
diff --git a/gfx/pics/048/frames.asm b/gfx/pics/048/frames.asm
new file mode 100644
index 000000000..46272e84f
--- /dev/null
+++ b/gfx/pics/048/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d
+.frame2
+ db $01 ; bitmask
+ db $1e, $1f, $20, $21, $22, $23, $24, $25
+; 0xd4bbc
diff --git a/gfx/frontpics/048.2bpp b/gfx/pics/048/front.2bpp
index 94b408e7a..94b408e7a 100644
--- a/gfx/frontpics/048.2bpp
+++ b/gfx/pics/048/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/048.lz b/gfx/pics/048/front.lz
index f6b057e8f..f6b057e8f 100644
--- a/gfx/frontpics/lz/048.lz
+++ b/gfx/pics/048/front.lz
Binary files differ
diff --git a/gfx/anim/048.2bpp b/gfx/pics/048/tiles.2bpp
index d4e59eea9..d4e59eea9 100644
--- a/gfx/anim/048.2bpp
+++ b/gfx/pics/048/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/049/anim0.asm b/gfx/pics/049/anim0.asm
new file mode 100644
index 000000000..ba6014d59
--- /dev/null
+++ b/gfx/pics/049/anim0.asm
@@ -0,0 +1,6 @@
+ setrepeat 6
+ frame 0, 06
+ frame 1, 06
+ dorepeat 1
+ endanim
+; 0xd0b8c
diff --git a/gfx/pics/049/anim1.asm b/gfx/pics/049/anim1.asm
new file mode 100644
index 000000000..619c19b73
--- /dev/null
+++ b/gfx/pics/049/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 04
+ frame 2, 04
+ dorepeat 1
+ endanim
+; 0xd1aa4
diff --git a/gfx/backpics/049.2bpp b/gfx/pics/049/back.2bpp
index 34a087280..34a087280 100644
--- a/gfx/backpics/049.2bpp
+++ b/gfx/pics/049/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/049.lz b/gfx/pics/049/back.lz
index 721527c2a..721527c2a 100644
--- a/gfx/backpics/lz/049.lz
+++ b/gfx/pics/049/back.lz
Binary files differ
diff --git a/gfx/pics/049/bitmask.asm b/gfx/pics/049/bitmask.asm
new file mode 100644
index 000000000..5621f6eb7
--- /dev/null
+++ b/gfx/pics/049/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10111111
+ db %11011111
+ db %11000001
+ db %11101111
+ db %11110111
+ db %00110000
+ db %00000000
+; 1
+ db %00000000
+ db %00000010
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2a55
diff --git a/gfx/pics/049/frames.asm b/gfx/pics/049/frames.asm
new file mode 100644
index 000000000..e077653ca
--- /dev/null
+++ b/gfx/pics/049/frames.asm
@@ -0,0 +1,11 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $06, $06, $06, $06, $31, $32, $33, $34, $35, $36, $37, $38
+ db $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44
+ db $45, $06, $06, $46, $47, $06, $06, $06, $06
+.frame2
+ db $01 ; bitmask
+ db $48, $49
+; 0xd4be5
diff --git a/gfx/frontpics/049.2bpp b/gfx/pics/049/front.2bpp
index 45f0e6dad..45f0e6dad 100644
--- a/gfx/frontpics/049.2bpp
+++ b/gfx/pics/049/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/049.lz b/gfx/pics/049/front.lz
index 5f32ad682..5f32ad682 100644
--- a/gfx/frontpics/lz/049.lz
+++ b/gfx/pics/049/front.lz
Binary files differ
diff --git a/gfx/anim/049.2bpp b/gfx/pics/049/tiles.2bpp
index 2c64feb0c..2c64feb0c 100644
--- a/gfx/anim/049.2bpp
+++ b/gfx/pics/049/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/050/anim0.asm b/gfx/pics/050/anim0.asm
new file mode 100644
index 000000000..a4d79bd56
--- /dev/null
+++ b/gfx/pics/050/anim0.asm
@@ -0,0 +1,7 @@
+ frame 3, 04
+ setrepeat 2
+ frame 2, 08
+ frame 1, 09
+ dorepeat 2
+ endanim
+; 0xd0b97
diff --git a/gfx/pics/050/anim1.asm b/gfx/pics/050/anim1.asm
new file mode 100644
index 000000000..bd2a27e03
--- /dev/null
+++ b/gfx/pics/050/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1aad
diff --git a/gfx/backpics/050.2bpp b/gfx/pics/050/back.2bpp
index d534a79dd..d534a79dd 100644
--- a/gfx/backpics/050.2bpp
+++ b/gfx/pics/050/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/050.lz b/gfx/pics/050/back.lz
index 05625954c..05625954c 100644
--- a/gfx/backpics/lz/050.lz
+++ b/gfx/pics/050/back.lz
Binary files differ
diff --git a/gfx/pics/050/bitmask.asm b/gfx/pics/050/bitmask.asm
new file mode 100644
index 000000000..54ca8fc52
--- /dev/null
+++ b/gfx/pics/050/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11000000
+ db %00111001
+ db %00000111
+ db %00000000
+; 1
+ db %00001000
+ db %00000000
+ db %10000000
+ db %00000000
+; 2
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd2a61
diff --git a/gfx/pics/050/frames.asm b/gfx/pics/050/frames.asm
new file mode 100644
index 000000000..ec2d64653
--- /dev/null
+++ b/gfx/pics/050/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $00 ; bitmask
+ db $19, $22, $1b, $1c, $23, $1e, $1f, $20, $21
+.frame3
+ db $01 ; bitmask
+ db $24, $25
+.frame4
+ db $02 ; bitmask
+ db $26
+; 0xd4c06
diff --git a/gfx/frontpics/050.2bpp b/gfx/pics/050/front.2bpp
index bbc88b821..bbc88b821 100644
--- a/gfx/frontpics/050.2bpp
+++ b/gfx/pics/050/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/050.lz b/gfx/pics/050/front.lz
index 5ed5e87ff..5ed5e87ff 100644
--- a/gfx/frontpics/lz/050.lz
+++ b/gfx/pics/050/front.lz
Binary files differ
diff --git a/gfx/anim/050.2bpp b/gfx/pics/050/tiles.2bpp
index 386de68d1..386de68d1 100644
--- a/gfx/anim/050.2bpp
+++ b/gfx/pics/050/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/051/anim0.asm b/gfx/pics/051/anim0.asm
new file mode 100644
index 000000000..7b5038620
--- /dev/null
+++ b/gfx/pics/051/anim0.asm
@@ -0,0 +1,16 @@
+ frame 1, 08
+ frame 2, 08
+ frame 3, 12
+ frame 4, 06
+ frame 3, 05
+ frame 5, 06
+ frame 3, 05
+ setrepeat 4
+ frame 3, 05
+ frame 6, 05
+ dorepeat 8
+ frame 6, 15
+ frame 2, 06
+ frame 1, 06
+ endanim
+; 0xd0bb4
diff --git a/gfx/pics/051/anim1.asm b/gfx/pics/051/anim1.asm
new file mode 100644
index 000000000..1b32b854c
--- /dev/null
+++ b/gfx/pics/051/anim1.asm
@@ -0,0 +1,10 @@
+ frame 0, 20
+ frame 3, 10
+ frame 7, 16
+ setrepeat 2
+ frame 6, 04
+ frame 7, 04
+ dorepeat 4
+ frame 6, 20
+ endanim
+; 0xd1abe
diff --git a/gfx/backpics/051.2bpp b/gfx/pics/051/back.2bpp
index 4443c20ae..4443c20ae 100644
--- a/gfx/backpics/051.2bpp
+++ b/gfx/pics/051/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/051.lz b/gfx/pics/051/back.lz
index 05ad7b1ad..05ad7b1ad 100644
--- a/gfx/backpics/lz/051.lz
+++ b/gfx/pics/051/back.lz
Binary files differ
diff --git a/gfx/pics/051/bitmask.asm b/gfx/pics/051/bitmask.asm
new file mode 100644
index 000000000..0a2dc6df2
--- /dev/null
+++ b/gfx/pics/051/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000000
+ db %11000000
+ db %11100001
+ db %00110000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00001110
+ db %11000111
+ db %11100011
+ db %00110000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00001110
+ db %11000111
+ db %11100011
+ db %11110011
+ db %01100000
+ db %00000000
+; 0xd2a76
diff --git a/gfx/pics/051/frames.asm b/gfx/pics/051/frames.asm
new file mode 100644
index 000000000..72cf2e6be
--- /dev/null
+++ b/gfx/pics/051/frames.asm
@@ -0,0 +1,35 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $39, $3a, $3b, $3c, $3d, $3e, $31, $32, $3f, $40, $34, $35
+ db $36, $37, $38
+.frame3
+ db $02 ; bitmask
+ db $39, $3a, $3b, $3c, $3d, $3e, $31, $32, $3f, $40, $34, $35
+ db $41, $42, $43, $37, $38, $44, $45, $46, $47
+.frame4
+ db $02 ; bitmask
+ db $39, $3a, $3b, $3c, $3d, $3e, $31, $32, $3f, $40, $34, $35
+ db $48, $42, $43, $37, $38, $49, $45, $46, $47
+.frame5
+ db $02 ; bitmask
+ db $39, $4a, $3b, $3c, $4b, $3e, $31, $32, $3f, $40, $34, $35
+ db $41, $42, $43, $37, $38, $44, $45, $46, $47
+.frame6
+ db $02 ; bitmask
+ db $39, $3a, $3b, $3c, $3d, $3e, $31, $4c, $3f, $40, $34, $4d
+ db $41, $42, $43, $37, $38, $44, $45, $46, $47
+.frame7
+ db $02 ; bitmask
+ db $39, $4a, $3b, $3c, $4b, $3e, $31, $4c, $3f, $40, $34, $4d
+ db $48, $42, $43, $37, $38, $49, $45, $46, $47
+; 0xd4c9b
diff --git a/gfx/frontpics/051.2bpp b/gfx/pics/051/front.2bpp
index 156f05f2c..156f05f2c 100644
--- a/gfx/frontpics/051.2bpp
+++ b/gfx/pics/051/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/051.lz b/gfx/pics/051/front.lz
index 7ef2606cd..7ef2606cd 100644
--- a/gfx/frontpics/lz/051.lz
+++ b/gfx/pics/051/front.lz
Binary files differ
diff --git a/gfx/anim/051.2bpp b/gfx/pics/051/tiles.2bpp
index 4fa42e420..4fa42e420 100644
--- a/gfx/anim/051.2bpp
+++ b/gfx/pics/051/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/052/anim0.asm b/gfx/pics/052/anim0.asm
new file mode 100644
index 000000000..ff95e9c6d
--- /dev/null
+++ b/gfx/pics/052/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 24
+ setrepeat 2
+ frame 2, 14
+ frame 3, 14
+ dorepeat 2
+ endanim
+; 0xd0bbf
diff --git a/gfx/pics/052/anim1.asm b/gfx/pics/052/anim1.asm
new file mode 100644
index 000000000..7f1e9eba8
--- /dev/null
+++ b/gfx/pics/052/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1ac7
diff --git a/gfx/backpics/052.2bpp b/gfx/pics/052/back.2bpp
index 319e6f576..319e6f576 100644
--- a/gfx/backpics/052.2bpp
+++ b/gfx/pics/052/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/052.lz b/gfx/pics/052/back.lz
index 205b106e9..205b106e9 100644
--- a/gfx/backpics/lz/052.lz
+++ b/gfx/pics/052/back.lz
Binary files differ
diff --git a/gfx/pics/052/bitmask.asm b/gfx/pics/052/bitmask.asm
new file mode 100644
index 000000000..cde515e01
--- /dev/null
+++ b/gfx/pics/052/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %10011000
+ db %01110111
+ db %00000000
+; 2
+ db %11000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd2a82
diff --git a/gfx/pics/052/frames.asm b/gfx/pics/052/frames.asm
new file mode 100644
index 000000000..26c2aaea9
--- /dev/null
+++ b/gfx/pics/052/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $01 ; bitmask
+ db $1b, $1c, $1d, $1e, $1f, $20, $04, $04, $21
+.frame3
+ db $01 ; bitmask
+ db $1b, $1c, $1d, $1e, $22, $23, $04, $04, $21
+.frame4
+ db $02 ; bitmask
+ db $24, $25, $1b, $1c
+; 0xd4cbf
diff --git a/gfx/frontpics/052.2bpp b/gfx/pics/052/front.2bpp
index 607be2d70..607be2d70 100644
--- a/gfx/frontpics/052.2bpp
+++ b/gfx/pics/052/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/052.lz b/gfx/pics/052/front.lz
index 87ff35366..87ff35366 100644
--- a/gfx/frontpics/lz/052.lz
+++ b/gfx/pics/052/front.lz
Binary files differ
diff --git a/gfx/anim/052.2bpp b/gfx/pics/052/tiles.2bpp
index 0606f5da3..0606f5da3 100644
--- a/gfx/anim/052.2bpp
+++ b/gfx/pics/052/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/053/anim0.asm b/gfx/pics/053/anim0.asm
new file mode 100644
index 000000000..ae771c09c
--- /dev/null
+++ b/gfx/pics/053/anim0.asm
@@ -0,0 +1,10 @@
+ frame 4, 12
+ frame 1, 32
+ frame 0, 12
+ frame 2, 10
+ frame 3, 08
+ frame 2, 10
+ frame 3, 08
+ frame 2, 06
+ endanim
+; 0xd0bd0
diff --git a/gfx/pics/053/anim1.asm b/gfx/pics/053/anim1.asm
new file mode 100644
index 000000000..ca9129bfa
--- /dev/null
+++ b/gfx/pics/053/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd1ad0
diff --git a/gfx/backpics/053.2bpp b/gfx/pics/053/back.2bpp
index 1c715ac63..1c715ac63 100644
--- a/gfx/backpics/053.2bpp
+++ b/gfx/pics/053/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/053.lz b/gfx/pics/053/back.lz
index e615d47fb..e615d47fb 100644
--- a/gfx/backpics/lz/053.lz
+++ b/gfx/pics/053/back.lz
Binary files differ
diff --git a/gfx/pics/053/bitmask.asm b/gfx/pics/053/bitmask.asm
new file mode 100644
index 000000000..94554310e
--- /dev/null
+++ b/gfx/pics/053/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %10000000
+ db %11001110
+ db %11100111
+ db %11110011
+ db %11111001
+ db %00000000
+; 1
+ db %00001110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000000
+ db %11000001
+ db %01100000
+ db %00000000
+ db %00000000
+; 0xd2a97
diff --git a/gfx/pics/053/frames.asm b/gfx/pics/053/frames.asm
new file mode 100644
index 000000000..43f353608
--- /dev/null
+++ b/gfx/pics/053/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $17, $18, $37, $38, $39, $1e
+ db $1f, $3a, $00, $3b, $25, $26, $3c, $00, $2b, $3d, $3e, $2e
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $3f, $40, $41, $42
+.frame3
+ db $01 ; bitmask
+ db $00, $00, $43, $40, $44, $45
+.frame4
+ db $02 ; bitmask
+ db $46, $47, $48, $49, $4a, $4b
+; 0xd4cf5
diff --git a/gfx/frontpics/053.2bpp b/gfx/pics/053/front.2bpp
index 253b633e4..253b633e4 100644
--- a/gfx/frontpics/053.2bpp
+++ b/gfx/pics/053/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/053.lz b/gfx/pics/053/front.lz
index 1f13a0cca..1f13a0cca 100644
--- a/gfx/frontpics/lz/053.lz
+++ b/gfx/pics/053/front.lz
Binary files differ
diff --git a/gfx/anim/053.2bpp b/gfx/pics/053/tiles.2bpp
index 67ca309a5..67ca309a5 100644
--- a/gfx/anim/053.2bpp
+++ b/gfx/pics/053/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/054/anim0.asm b/gfx/pics/054/anim0.asm
new file mode 100644
index 000000000..da6f3aec6
--- /dev/null
+++ b/gfx/pics/054/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 1, 28
+ setrepeat 2
+ frame 0, 14
+ frame 2, 14
+ dorepeat 3
+ endanim
+; 0xd0bdd
diff --git a/gfx/pics/054/anim1.asm b/gfx/pics/054/anim1.asm
new file mode 100644
index 000000000..2fabc5b19
--- /dev/null
+++ b/gfx/pics/054/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 10
+ dorepeat 1
+ endanim
+; 0xd1ad9
diff --git a/gfx/backpics/054.2bpp b/gfx/pics/054/back.2bpp
index 6c356437e..6c356437e 100644
--- a/gfx/backpics/054.2bpp
+++ b/gfx/pics/054/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/054.lz b/gfx/pics/054/back.lz
index d627a146c..d627a146c 100644
--- a/gfx/backpics/lz/054.lz
+++ b/gfx/pics/054/back.lz
Binary files differ
diff --git a/gfx/pics/054/bitmask.asm b/gfx/pics/054/bitmask.asm
new file mode 100644
index 000000000..87fe02311
--- /dev/null
+++ b/gfx/pics/054/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %01100000
+ db %00001000
+ db %00000001
+ db %00000000
+; 1
+ db %01100111
+ db %10000000
+ db %00110001
+ db %00000000
+; 0xd2a9f
diff --git a/gfx/pics/054/frames.asm b/gfx/pics/054/frames.asm
new file mode 100644
index 000000000..12409bdb8
--- /dev/null
+++ b/gfx/pics/054/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f, $20, $21, $22, $23, $24, $25
+; 0xd4d08
diff --git a/gfx/frontpics/054.2bpp b/gfx/pics/054/front.2bpp
index 4fb1a6b4b..4fb1a6b4b 100644
--- a/gfx/frontpics/054.2bpp
+++ b/gfx/pics/054/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/054.lz b/gfx/pics/054/front.lz
index 7988f1b0c..7988f1b0c 100644
--- a/gfx/frontpics/lz/054.lz
+++ b/gfx/pics/054/front.lz
Binary files differ
diff --git a/gfx/anim/054.2bpp b/gfx/pics/054/tiles.2bpp
index e03cb4bc5..e03cb4bc5 100644
--- a/gfx/anim/054.2bpp
+++ b/gfx/pics/054/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/055/anim0.asm b/gfx/pics/055/anim0.asm
new file mode 100644
index 000000000..41ce17c55
--- /dev/null
+++ b/gfx/pics/055/anim0.asm
@@ -0,0 +1,13 @@
+ frame 1, 07
+ frame 2, 15
+ setrepeat 2
+ frame 3, 08
+ frame 4, 05
+ dorepeat 3
+ frame 5, 13
+ setrepeat 3
+ frame 5, 10
+ frame 6, 10
+ dorepeat 8
+ endanim
+; 0xd0bf4
diff --git a/gfx/pics/055/anim1.asm b/gfx/pics/055/anim1.asm
new file mode 100644
index 000000000..a73476ca9
--- /dev/null
+++ b/gfx/pics/055/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 7, 15
+ dorepeat 1
+ endanim
+; 0xd1ae2
diff --git a/gfx/backpics/055.2bpp b/gfx/pics/055/back.2bpp
index 9d01675ff..9d01675ff 100644
--- a/gfx/backpics/055.2bpp
+++ b/gfx/pics/055/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/055.lz b/gfx/pics/055/back.lz
index 13807b9e9..13807b9e9 100644
--- a/gfx/backpics/lz/055.lz
+++ b/gfx/pics/055/back.lz
Binary files differ
diff --git a/gfx/pics/055/bitmask.asm b/gfx/pics/055/bitmask.asm
new file mode 100644
index 000000000..d25464658
--- /dev/null
+++ b/gfx/pics/055/bitmask.asm
@@ -0,0 +1,57 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000110
+ db %00000011
+ db %00000011
+ db %11100000
+ db %01110111
+ db %00111010
+ db %00000001
+; 2
+ db %00000110
+ db %00000011
+ db %00001111
+ db %11100110
+ db %01110111
+ db %00111010
+ db %00000001
+; 3
+ db %00000110
+ db %00000011
+ db %00000011
+ db %10000000
+ db %01000111
+ db %00100010
+ db %00000001
+; 4
+ db %00000110
+ db %00000011
+ db %00000000
+ db %11100000
+ db %01110111
+ db %00111010
+ db %00000001
+; 5
+ db %00000110
+ db %00000011
+ db %00000000
+ db %11100000
+ db %01110001
+ db %00111000
+ db %00000000
+; 6
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11100000
+ db %01110000
+ db %00111000
+ db %00000000
+; 0xd2ad0
diff --git a/gfx/pics/055/frames.asm b/gfx/pics/055/frames.asm
new file mode 100644
index 000000000..07e5c6f3c
--- /dev/null
+++ b/gfx/pics/055/frames.asm
@@ -0,0 +1,34 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $31, $32
+.frame2
+ db $01 ; bitmask
+ db $33, $34, $35, $36, $31, $32, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44
+.frame3
+ db $02 ; bitmask
+ db $33, $34, $35, $36, $31, $32, $45, $46, $47, $48, $49, $4a
+ db $4b, $4c, $3b, $3c, $00, $00, $00, $40, $00, $00, $00, $44
+.frame4
+ db $03 ; bitmask
+ db $33, $34, $35, $36, $31, $32, $4d, $3a, $3b, $3c, $4e, $40
+ db $4f, $44
+.frame5
+ db $04 ; bitmask
+ db $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e
+ db $3f, $40, $41, $42, $43, $44
+.frame6
+ db $05 ; bitmask
+ db $33, $34, $35, $36, $37, $38, $39, $3a, $3d, $3e, $3f, $41
+ db $42, $43
+.frame7
+ db $06 ; bitmask
+ db $37, $38, $39, $3d, $3e, $3f, $41, $42, $43
+; 0xd4d82
diff --git a/gfx/frontpics/055.2bpp b/gfx/pics/055/front.2bpp
index f3b0566ac..f3b0566ac 100644
--- a/gfx/frontpics/055.2bpp
+++ b/gfx/pics/055/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/055.lz b/gfx/pics/055/front.lz
index ff3fa6792..ff3fa6792 100644
--- a/gfx/frontpics/lz/055.lz
+++ b/gfx/pics/055/front.lz
Binary files differ
diff --git a/gfx/anim/055.2bpp b/gfx/pics/055/tiles.2bpp
index 1ff6e7dd4..1ff6e7dd4 100644
--- a/gfx/anim/055.2bpp
+++ b/gfx/pics/055/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/056/anim0.asm b/gfx/pics/056/anim0.asm
new file mode 100644
index 000000000..7d6ef1fa5
--- /dev/null
+++ b/gfx/pics/056/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 24
+ setrepeat 3
+ frame 0, 08
+ frame 2, 08
+ dorepeat 2
+ endanim
+; 0xd0bff
diff --git a/gfx/pics/056/anim1.asm b/gfx/pics/056/anim1.asm
new file mode 100644
index 000000000..c5874fc6d
--- /dev/null
+++ b/gfx/pics/056/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1aeb
diff --git a/gfx/backpics/056.2bpp b/gfx/pics/056/back.2bpp
index affdeffdf..affdeffdf 100644
--- a/gfx/backpics/056.2bpp
+++ b/gfx/pics/056/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/056.lz b/gfx/pics/056/back.lz
index 62989a377..62989a377 100644
--- a/gfx/backpics/lz/056.lz
+++ b/gfx/pics/056/back.lz
Binary files differ
diff --git a/gfx/pics/056/bitmask.asm b/gfx/pics/056/bitmask.asm
new file mode 100644
index 000000000..51c0e405c
--- /dev/null
+++ b/gfx/pics/056/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 1
+ db %10011100
+ db %01000011
+ db %10001100
+ db %00000001
+; 2
+ db %01000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd2adc
diff --git a/gfx/pics/056/frames.asm b/gfx/pics/056/frames.asm
new file mode 100644
index 000000000..9c18dcf86
--- /dev/null
+++ b/gfx/pics/056/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $01 ; bitmask
+ db $1b, $1c, $1d, $1e, $1f, $20, $04, $21, $22, $23, $04
+.frame3
+ db $02 ; bitmask
+ db $24, $25
+; 0xd4d9a
diff --git a/gfx/frontpics/056.2bpp b/gfx/pics/056/front.2bpp
index 378ba8e78..378ba8e78 100644
--- a/gfx/frontpics/056.2bpp
+++ b/gfx/pics/056/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/056.lz b/gfx/pics/056/front.lz
index 03d014d87..03d014d87 100644
--- a/gfx/frontpics/lz/056.lz
+++ b/gfx/pics/056/front.lz
Binary files differ
diff --git a/gfx/anim/056.2bpp b/gfx/pics/056/tiles.2bpp
index 982c6381e..982c6381e 100644
--- a/gfx/anim/056.2bpp
+++ b/gfx/pics/056/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/057/anim0.asm b/gfx/pics/057/anim0.asm
new file mode 100644
index 000000000..a2a427059
--- /dev/null
+++ b/gfx/pics/057/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 5
+ frame 1, 08
+ frame 4, 08
+ dorepeat 1
+ frame 2, 05
+ frame 3, 25
+ endanim
+; 0xd0c0c
diff --git a/gfx/pics/057/anim1.asm b/gfx/pics/057/anim1.asm
new file mode 100644
index 000000000..7d1c8a2d7
--- /dev/null
+++ b/gfx/pics/057/anim1.asm
@@ -0,0 +1,8 @@
+ frame 2, 10
+ frame 0, 25
+ setrepeat 3
+ frame 2, 06
+ frame 3, 06
+ dorepeat 3
+ endanim
+; 0xd1af8
diff --git a/gfx/backpics/057.2bpp b/gfx/pics/057/back.2bpp
index c2519fd57..c2519fd57 100644
--- a/gfx/backpics/057.2bpp
+++ b/gfx/pics/057/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/057.lz b/gfx/pics/057/back.lz
index c0937a9ae..c0937a9ae 100644
--- a/gfx/backpics/lz/057.lz
+++ b/gfx/pics/057/back.lz
Binary files differ
diff --git a/gfx/pics/057/bitmask.asm b/gfx/pics/057/bitmask.asm
new file mode 100644
index 000000000..50865ad0f
--- /dev/null
+++ b/gfx/pics/057/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10000110
+ db %11000011
+ db %11100011
+ db %10110001
+ db %11111011
+ db %01111100
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %10000001
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000011
+ db %10000001
+ db %01000001
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %10000001
+ db %00010001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2af8
diff --git a/gfx/pics/057/frames.asm b/gfx/pics/057/frames.asm
new file mode 100644
index 000000000..70fefd629
--- /dev/null
+++ b/gfx/pics/057/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+ db $3b, $3c, $3d, $3e, $3f, $40, $00, $41, $42, $43, $44, $00
+ db $00, $00, $45, $46
+.frame2
+ db $01 ; bitmask
+ db $47, $48, $49
+.frame3
+ db $02 ; bitmask
+ db $36, $37, $3a, $3b, $4a, $4b, $4c
+.frame4
+ db $03 ; bitmask
+ db $47, $48, $49, $4d
+; 0xd4dd0
diff --git a/gfx/frontpics/057.2bpp b/gfx/pics/057/front.2bpp
index 3db044d66..3db044d66 100644
--- a/gfx/frontpics/057.2bpp
+++ b/gfx/pics/057/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/057.lz b/gfx/pics/057/front.lz
index 8f513878f..8f513878f 100644
--- a/gfx/frontpics/lz/057.lz
+++ b/gfx/pics/057/front.lz
Binary files differ
diff --git a/gfx/anim/057.2bpp b/gfx/pics/057/tiles.2bpp
index 458e913e2..458e913e2 100644
--- a/gfx/anim/057.2bpp
+++ b/gfx/pics/057/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/058/anim0.asm b/gfx/pics/058/anim0.asm
new file mode 100644
index 000000000..333c08e67
--- /dev/null
+++ b/gfx/pics/058/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 08
+ frame 2, 10
+ frame 0, 18
+ setrepeat 3
+ frame 1, 08
+ frame 2, 08
+ dorepeat 4
+ endanim
+; 0xd0c1b
diff --git a/gfx/pics/058/anim1.asm b/gfx/pics/058/anim1.asm
new file mode 100644
index 000000000..bce18fa44
--- /dev/null
+++ b/gfx/pics/058/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 2, 08
+ frame 3, 08
+ dorepeat 1
+ frame 2, 16
+ endanim
+; 0xd1b03
diff --git a/gfx/backpics/058.2bpp b/gfx/pics/058/back.2bpp
index 78d5e4e1d..78d5e4e1d 100644
--- a/gfx/backpics/058.2bpp
+++ b/gfx/pics/058/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/058.lz b/gfx/pics/058/back.lz
index 222250f79..222250f79 100644
--- a/gfx/backpics/lz/058.lz
+++ b/gfx/pics/058/back.lz
Binary files differ
diff --git a/gfx/pics/058/bitmask.asm b/gfx/pics/058/bitmask.asm
new file mode 100644
index 000000000..625b790d7
--- /dev/null
+++ b/gfx/pics/058/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10000110
+ db %00011000
+ db %01100011
+ db %00000000
+; 1
+ db %10000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %11000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2b04
diff --git a/gfx/pics/058/frames.asm b/gfx/pics/058/frames.asm
new file mode 100644
index 000000000..510227bc5
--- /dev/null
+++ b/gfx/pics/058/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b
+.frame3
+ db $02 ; bitmask
+ db $19, $1a, $22, $1b
+; 0xd4de9
diff --git a/gfx/frontpics/058.2bpp b/gfx/pics/058/front.2bpp
index f10db0e9f..f10db0e9f 100644
--- a/gfx/frontpics/058.2bpp
+++ b/gfx/pics/058/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/058.lz b/gfx/pics/058/front.lz
index a01b4f1fc..a01b4f1fc 100644
--- a/gfx/frontpics/lz/058.lz
+++ b/gfx/pics/058/front.lz
Binary files differ
diff --git a/gfx/anim/058.2bpp b/gfx/pics/058/tiles.2bpp
index 475b87a04..475b87a04 100644
--- a/gfx/anim/058.2bpp
+++ b/gfx/pics/058/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/059/anim0.asm b/gfx/pics/059/anim0.asm
new file mode 100644
index 000000000..0dc0dcacc
--- /dev/null
+++ b/gfx/pics/059/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 05
+ frame 2, 25
+ frame 3, 10
+ frame 4, 10
+ frame 7, 25
+ endanim
+; 0xd0c26
diff --git a/gfx/pics/059/anim1.asm b/gfx/pics/059/anim1.asm
new file mode 100644
index 000000000..e178a2d24
--- /dev/null
+++ b/gfx/pics/059/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 4
+ frame 5, 09
+ frame 6, 09
+ dorepeat 1
+ endanim
+; 0xd1b0c
diff --git a/gfx/backpics/059.2bpp b/gfx/pics/059/back.2bpp
index 9a0a1f7d9..9a0a1f7d9 100644
--- a/gfx/backpics/059.2bpp
+++ b/gfx/pics/059/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/059.lz b/gfx/pics/059/back.lz
index a76d64986..a76d64986 100644
--- a/gfx/backpics/lz/059.lz
+++ b/gfx/pics/059/back.lz
Binary files differ
diff --git a/gfx/pics/059/bitmask.asm b/gfx/pics/059/bitmask.asm
new file mode 100644
index 000000000..6489a14e8
--- /dev/null
+++ b/gfx/pics/059/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00011100
+ db %00001110
+ db %00000011
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %10011100
+ db %11001111
+ db %00000011
+ db %00000000
+ db %00000000
+; 2
+ db %10000111
+ db %00000111
+ db %10011101
+ db %11001111
+ db %00000011
+ db %00000000
+ db %00000000
+; 3
+ db %10000111
+ db %11000011
+ db %10011100
+ db %11001111
+ db %00000011
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00110000
+ db %00000000
+ db %00000000
+ db %00000000
+; 5
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00001000
+ db %00000000
+; 0xd2b2e
diff --git a/gfx/pics/059/frames.asm b/gfx/pics/059/frames.asm
new file mode 100644
index 000000000..f802d943d
--- /dev/null
+++ b/gfx/pics/059/frames.asm
@@ -0,0 +1,31 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $39, $3a, $3b, $34, $35, $3c, $3d, $3e, $37, $38
+.frame3
+ db $02 ; bitmask
+ db $3f, $40, $14, $41, $42, $43, $44, $45, $31, $32, $39, $3a
+ db $3b, $34, $35, $3c, $3d, $3e, $37, $38
+.frame4
+ db $03 ; bitmask
+ db $46, $47, $48, $49, $4a, $4b, $4c, $4d, $31, $32, $39, $3a
+ db $3b, $34, $35, $3c, $3d, $3e, $37, $38
+.frame5
+ db $04 ; bitmask
+ db $4e, $4f, $50
+.frame6
+ db $05 ; bitmask
+ db $50, $51
+.frame7
+ db $00 ; bitmask
+ db $31, $32, $39, $34, $35, $3c, $37, $38
+; 0xd4e47
diff --git a/gfx/frontpics/059.2bpp b/gfx/pics/059/front.2bpp
index ade1c9ae4..ade1c9ae4 100644
--- a/gfx/frontpics/059.2bpp
+++ b/gfx/pics/059/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/059.lz b/gfx/pics/059/front.lz
index da1784800..da1784800 100644
--- a/gfx/frontpics/lz/059.lz
+++ b/gfx/pics/059/front.lz
Binary files differ
diff --git a/gfx/anim/059.2bpp b/gfx/pics/059/tiles.2bpp
index 415b78a69..415b78a69 100644
--- a/gfx/anim/059.2bpp
+++ b/gfx/pics/059/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/060/anim0.asm b/gfx/pics/060/anim0.asm
new file mode 100644
index 000000000..8446897c0
--- /dev/null
+++ b/gfx/pics/060/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 12
+ frame 3, 24
+ setrepeat 2
+ frame 0, 08
+ frame 1, 08
+ dorepeat 3
+ endanim
+; 0xd0c33
diff --git a/gfx/pics/060/anim1.asm b/gfx/pics/060/anim1.asm
new file mode 100644
index 000000000..839e57e87
--- /dev/null
+++ b/gfx/pics/060/anim1.asm
@@ -0,0 +1,10 @@
+ setrepeat 3
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ setrepeat 2
+ frame 0, 10
+ frame 2, 10
+ dorepeat 5
+ endanim
+; 0xd1b1d
diff --git a/gfx/backpics/060.2bpp b/gfx/pics/060/back.2bpp
index f29dfe8f3..f29dfe8f3 100644
--- a/gfx/backpics/060.2bpp
+++ b/gfx/pics/060/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/060.lz b/gfx/pics/060/back.lz
index 58d039d16..58d039d16 100644
--- a/gfx/backpics/lz/060.lz
+++ b/gfx/pics/060/back.lz
Binary files differ
diff --git a/gfx/pics/060/bitmask.asm b/gfx/pics/060/bitmask.asm
new file mode 100644
index 000000000..5f28e8a8f
--- /dev/null
+++ b/gfx/pics/060/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %00000000
+ db %10000000
+ db %01110011
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %10001100
+ db %00000001
+; 2
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %10000100
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd2b3e
diff --git a/gfx/pics/060/frames.asm b/gfx/pics/060/frames.asm
new file mode 100644
index 000000000..a45bf4b23
--- /dev/null
+++ b/gfx/pics/060/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $1f, $20, $21, $00
+.frame3
+ db $02 ; bitmask
+ db $22
+.frame4
+ db $03 ; bitmask
+ db $23, $24, $25
+; 0xd4e61
diff --git a/gfx/frontpics/060.2bpp b/gfx/pics/060/front.2bpp
index fccab7aca..fccab7aca 100644
--- a/gfx/frontpics/060.2bpp
+++ b/gfx/pics/060/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/060.lz b/gfx/pics/060/front.lz
index df9741516..df9741516 100644
--- a/gfx/frontpics/lz/060.lz
+++ b/gfx/pics/060/front.lz
Binary files differ
diff --git a/gfx/anim/060.2bpp b/gfx/pics/060/tiles.2bpp
index 51e9e2dfd..51e9e2dfd 100644
--- a/gfx/anim/060.2bpp
+++ b/gfx/pics/060/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/061/anim0.asm b/gfx/pics/061/anim0.asm
new file mode 100644
index 000000000..14cb89029
--- /dev/null
+++ b/gfx/pics/061/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 07
+ frame 2, 05
+ setrepeat 2
+ frame 3, 10
+ frame 4, 10
+ dorepeat 3
+ frame 2, 16
+ endanim
+; 0xd0c42
diff --git a/gfx/pics/061/anim1.asm b/gfx/pics/061/anim1.asm
new file mode 100644
index 000000000..72ba07245
--- /dev/null
+++ b/gfx/pics/061/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ endanim
+; 0xd1b26
diff --git a/gfx/backpics/061.2bpp b/gfx/pics/061/back.2bpp
index 097812d26..097812d26 100644
--- a/gfx/backpics/061.2bpp
+++ b/gfx/pics/061/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/061.lz b/gfx/pics/061/back.lz
index a78a2cfff..a78a2cfff 100644
--- a/gfx/backpics/lz/061.lz
+++ b/gfx/pics/061/back.lz
Binary files differ
diff --git a/gfx/pics/061/bitmask.asm b/gfx/pics/061/bitmask.asm
new file mode 100644
index 000000000..93480693c
--- /dev/null
+++ b/gfx/pics/061/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %11001111
+ db %00110011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11001111
+ db %00110011
+ db %00001000
+ db %10000010
+ db %00000000
+; 2
+ db %11001111
+ db %00110011
+ db %00001000
+ db %10000010
+ db %00000010
+; 3
+ db %11001111
+ db %11110011
+ db %01101001
+ db %10011110
+ db %00000010
+; 4
+ db %00000000
+ db %00100000
+ db %00001000
+ db %10000110
+ db %00000001
+; 0xd2b57
diff --git a/gfx/pics/061/frames.asm b/gfx/pics/061/frames.asm
new file mode 100644
index 000000000..5dbc0d7d4
--- /dev/null
+++ b/gfx/pics/061/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $03, $03, $24, $25, $03, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $03, $03, $24, $25, $03, $26, $27, $28, $29, $2a, $2b, $2c
+ db $2d
+.frame3
+ db $02 ; bitmask
+ db $03, $03, $24, $25, $03, $2e, $27, $28, $29, $2a, $2b, $2c
+ db $2d, $2f
+.frame4
+ db $03 ; bitmask
+ db $03, $03, $24, $25, $03, $2e, $27, $28, $29, $2a, $30, $31
+ db $32, $2b, $33, $34, $2c, $35, $36, $37, $2d, $2f
+.frame5
+ db $04 ; bitmask
+ db $38, $39, $3a, $3b, $3c, $3d
+; 0xd4eb1
diff --git a/gfx/frontpics/061.2bpp b/gfx/pics/061/front.2bpp
index a068bb759..a068bb759 100644
--- a/gfx/frontpics/061.2bpp
+++ b/gfx/pics/061/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/061.lz b/gfx/pics/061/front.lz
index b06f41441..b06f41441 100644
--- a/gfx/frontpics/lz/061.lz
+++ b/gfx/pics/061/front.lz
Binary files differ
diff --git a/gfx/anim/061.2bpp b/gfx/pics/061/tiles.2bpp
index a63f227c4..a63f227c4 100644
--- a/gfx/anim/061.2bpp
+++ b/gfx/pics/061/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/062/anim0.asm b/gfx/pics/062/anim0.asm
new file mode 100644
index 000000000..2b5fb0eef
--- /dev/null
+++ b/gfx/pics/062/anim0.asm
@@ -0,0 +1,8 @@
+ frame 3, 24
+ frame 0, 12
+ setrepeat 2
+ frame 1, 08
+ frame 2, 08
+ dorepeat 3
+ endanim
+; 0xd0c4f
diff --git a/gfx/pics/062/anim1.asm b/gfx/pics/062/anim1.asm
new file mode 100644
index 000000000..f709ea35c
--- /dev/null
+++ b/gfx/pics/062/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1b2f
diff --git a/gfx/backpics/062.2bpp b/gfx/pics/062/back.2bpp
index fb0fb1cd5..fb0fb1cd5 100644
--- a/gfx/backpics/062.2bpp
+++ b/gfx/pics/062/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/062.lz b/gfx/pics/062/back.lz
index eab9164aa..eab9164aa 100644
--- a/gfx/backpics/lz/062.lz
+++ b/gfx/pics/062/back.lz
Binary files differ
diff --git a/gfx/pics/062/bitmask.asm b/gfx/pics/062/bitmask.asm
new file mode 100644
index 000000000..3053f8119
--- /dev/null
+++ b/gfx/pics/062/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00011100
+ db %00011110
+ db %00001110
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %10000000
+ db %11000011
+ db %11100001
+ db %01110000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2b6c
diff --git a/gfx/pics/062/frames.asm b/gfx/pics/062/frames.asm
new file mode 100644
index 000000000..e48981a22
--- /dev/null
+++ b/gfx/pics/062/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+.frame2
+ db $01 ; bitmask
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47, $1a
+.frame3
+ db $02 ; bitmask
+ db $48, $49
+; 0xd4ed4
diff --git a/gfx/frontpics/062.2bpp b/gfx/pics/062/front.2bpp
index e0c9c79e2..e0c9c79e2 100644
--- a/gfx/frontpics/062.2bpp
+++ b/gfx/pics/062/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/062.lz b/gfx/pics/062/front.lz
index 601937221..601937221 100644
--- a/gfx/frontpics/lz/062.lz
+++ b/gfx/pics/062/front.lz
Binary files differ
diff --git a/gfx/anim/062.2bpp b/gfx/pics/062/tiles.2bpp
index fbc8b58f7..fbc8b58f7 100644
--- a/gfx/anim/062.2bpp
+++ b/gfx/pics/062/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/063/anim0.asm b/gfx/pics/063/anim0.asm
new file mode 100644
index 000000000..9d37567ac
--- /dev/null
+++ b/gfx/pics/063/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 3
+ frame 0, 09
+ frame 1, 10
+ frame 2, 09
+ dorepeat 1
+ endanim
+; 0xd0c5a
diff --git a/gfx/pics/063/anim1.asm b/gfx/pics/063/anim1.asm
new file mode 100644
index 000000000..796e57f88
--- /dev/null
+++ b/gfx/pics/063/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd1b38
diff --git a/gfx/backpics/063.2bpp b/gfx/pics/063/back.2bpp
index 082319326..082319326 100644
--- a/gfx/backpics/063.2bpp
+++ b/gfx/pics/063/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/063.lz b/gfx/pics/063/back.lz
index 2df351881..2df351881 100644
--- a/gfx/backpics/lz/063.lz
+++ b/gfx/pics/063/back.lz
Binary files differ
diff --git a/gfx/pics/063/bitmask.asm b/gfx/pics/063/bitmask.asm
new file mode 100644
index 000000000..1c164d9e1
--- /dev/null
+++ b/gfx/pics/063/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10011100
+ db %01100011
+ db %00000100
+ db %00000000
+; 1
+ db %10011100
+ db %01100011
+ db %00001100
+ db %00000001
+; 2
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000001
+; 0xd2b78
diff --git a/gfx/pics/063/frames.asm b/gfx/pics/063/frames.asm
new file mode 100644
index 000000000..894102a77
--- /dev/null
+++ b/gfx/pics/063/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+.frame3
+ db $02 ; bitmask
+ db $22, $23
+; 0xd4ef3
diff --git a/gfx/frontpics/063.2bpp b/gfx/pics/063/front.2bpp
index 7b0feb539..7b0feb539 100644
--- a/gfx/frontpics/063.2bpp
+++ b/gfx/pics/063/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/063.lz b/gfx/pics/063/front.lz
index 2b41c4263..2b41c4263 100644
--- a/gfx/frontpics/lz/063.lz
+++ b/gfx/pics/063/front.lz
Binary files differ
diff --git a/gfx/anim/063.2bpp b/gfx/pics/063/tiles.2bpp
index 9af0de1ff..9af0de1ff 100644
--- a/gfx/anim/063.2bpp
+++ b/gfx/pics/063/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/064/anim0.asm b/gfx/pics/064/anim0.asm
new file mode 100644
index 000000000..9b132e26b
--- /dev/null
+++ b/gfx/pics/064/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 08
+ setrepeat 4
+ frame 2, 06
+ frame 3, 06
+ dorepeat 2
+ frame 1, 12
+ endanim
+; 0xd0c67
diff --git a/gfx/pics/064/anim1.asm b/gfx/pics/064/anim1.asm
new file mode 100644
index 000000000..eabcdb07d
--- /dev/null
+++ b/gfx/pics/064/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd1b41
diff --git a/gfx/backpics/064.2bpp b/gfx/pics/064/back.2bpp
index 129294f1e..129294f1e 100644
--- a/gfx/backpics/064.2bpp
+++ b/gfx/pics/064/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/064.lz b/gfx/pics/064/back.lz
index 0092147d7..0092147d7 100644
--- a/gfx/backpics/lz/064.lz
+++ b/gfx/pics/064/back.lz
Binary files differ
diff --git a/gfx/pics/064/bitmask.asm b/gfx/pics/064/bitmask.asm
new file mode 100644
index 000000000..aa938440f
--- /dev/null
+++ b/gfx/pics/064/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %10011110
+ db %00001111
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011110
+ db %10001111
+ db %01000001
+ db %00011000
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000100
+ db %00000000
+; 0xd2b87
diff --git a/gfx/pics/064/frames.asm b/gfx/pics/064/frames.asm
new file mode 100644
index 000000000..9cdcc0526
--- /dev/null
+++ b/gfx/pics/064/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31
+.frame3
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $32, $33
+ db $30, $34
+.frame4
+ db $02 ; bitmask
+ db $35, $36, $37
+; 0xd4f27
diff --git a/gfx/frontpics/064.2bpp b/gfx/pics/064/front.2bpp
index 25bdb7bed..25bdb7bed 100644
--- a/gfx/frontpics/064.2bpp
+++ b/gfx/pics/064/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/064.lz b/gfx/pics/064/front.lz
index 54f47795d..54f47795d 100644
--- a/gfx/frontpics/lz/064.lz
+++ b/gfx/pics/064/front.lz
Binary files differ
diff --git a/gfx/anim/064.2bpp b/gfx/pics/064/tiles.2bpp
index 77c48c87f..77c48c87f 100644
--- a/gfx/anim/064.2bpp
+++ b/gfx/pics/064/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/065/anim0.asm b/gfx/pics/065/anim0.asm
new file mode 100644
index 000000000..fb87afbfe
--- /dev/null
+++ b/gfx/pics/065/anim0.asm
@@ -0,0 +1,9 @@
+ frame 3, 10
+ setrepeat 2
+ frame 1, 12
+ frame 2, 12
+ frame 3, 12
+ dorepeat 2
+ frame 3, 07
+ endanim
+; 0xd0c76
diff --git a/gfx/pics/065/anim1.asm b/gfx/pics/065/anim1.asm
new file mode 100644
index 000000000..52cf585fb
--- /dev/null
+++ b/gfx/pics/065/anim1.asm
@@ -0,0 +1,5 @@
+ frame 4, 15
+ frame 5, 45
+ frame 3, 10
+ endanim
+; 0xd1b48
diff --git a/gfx/backpics/065.2bpp b/gfx/pics/065/back.2bpp
index b4f3ccf4c..b4f3ccf4c 100644
--- a/gfx/backpics/065.2bpp
+++ b/gfx/pics/065/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/065.lz b/gfx/pics/065/back.lz
index 65f1a2729..65f1a2729 100644
--- a/gfx/backpics/lz/065.lz
+++ b/gfx/pics/065/back.lz
Binary files differ
diff --git a/gfx/pics/065/bitmask.asm b/gfx/pics/065/bitmask.asm
new file mode 100644
index 000000000..3e0cd2baf
--- /dev/null
+++ b/gfx/pics/065/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00111100
+ db %00011110
+ db %11100001
+ db %01110000
+ db %00111000
+ db %00011100
+ db %00000000
+; 1
+ db %00111100
+ db %00011110
+ db %11100001
+ db %00110000
+ db %00111000
+ db %00011100
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00111100
+ db %00011110
+ db %01100000
+ db %01110000
+ db %00111000
+ db %00011100
+ db %00000000
+; 0xd2ba3
diff --git a/gfx/pics/065/frames.asm b/gfx/pics/065/frames.asm
new file mode 100644
index 000000000..80f391217
--- /dev/null
+++ b/gfx/pics/065/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $00, $42, $43
+.frame2
+ db $01 ; bitmask
+ db $44, $45, $46, $00, $47, $48, $49, $37, $38, $4a, $4b, $3b
+ db $4c, $4d, $4e, $4f, $50, $00, $51, $52
+.frame3
+ db $02 ; bitmask
+ db $38, $3b
+.frame4
+ db $03 ; bitmask
+ db $44, $45, $46, $00, $47, $48, $49, $37, $39, $3a, $3c, $3d
+ db $3e, $3f, $40, $41, $00, $42, $43
+.frame5
+ db $00 ; bitmask
+ db $44, $45, $46, $00, $47, $48, $49, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $00, $42, $43
+; 0xd4f89
diff --git a/gfx/frontpics/065.2bpp b/gfx/pics/065/front.2bpp
index 0ce216c12..0ce216c12 100644
--- a/gfx/frontpics/065.2bpp
+++ b/gfx/pics/065/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/065.lz b/gfx/pics/065/front.lz
index 6272553a7..6272553a7 100644
--- a/gfx/frontpics/lz/065.lz
+++ b/gfx/pics/065/front.lz
Binary files differ
diff --git a/gfx/anim/065.2bpp b/gfx/pics/065/tiles.2bpp
index 745eb54f6..745eb54f6 100644
--- a/gfx/anim/065.2bpp
+++ b/gfx/pics/065/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/066/anim0.asm b/gfx/pics/066/anim0.asm
new file mode 100644
index 000000000..8fee766ce
--- /dev/null
+++ b/gfx/pics/066/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 12
+ frame 2, 22
+ setrepeat 2
+ frame 0, 12
+ frame 1, 12
+ dorepeat 3
+ endanim
+; 0xd0c83
diff --git a/gfx/pics/066/anim1.asm b/gfx/pics/066/anim1.asm
new file mode 100644
index 000000000..20658284d
--- /dev/null
+++ b/gfx/pics/066/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1b51
diff --git a/gfx/backpics/066.2bpp b/gfx/pics/066/back.2bpp
index f8ea2c523..f8ea2c523 100644
--- a/gfx/backpics/066.2bpp
+++ b/gfx/pics/066/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/066.lz b/gfx/pics/066/back.lz
index 96e6d00c6..96e6d00c6 100644
--- a/gfx/backpics/lz/066.lz
+++ b/gfx/pics/066/back.lz
Binary files differ
diff --git a/gfx/pics/066/bitmask.asm b/gfx/pics/066/bitmask.asm
new file mode 100644
index 000000000..f82751c8f
--- /dev/null
+++ b/gfx/pics/066/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11011110
+ db %00000001
+ db %11100111
+ db %00000000
+; 1
+ db %00000000
+ db %00010000
+ db %00000010
+ db %00000000
+; 2
+ db %01000000
+ db %00001000
+ db %00000001
+ db %00000000
+; 0xd2baf
diff --git a/gfx/pics/066/frames.asm b/gfx/pics/066/frames.asm
new file mode 100644
index 000000000..6b834110a
--- /dev/null
+++ b/gfx/pics/066/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $00, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+ db $00
+.frame2
+ db $01 ; bitmask
+ db $24, $25
+.frame3
+ db $02 ; bitmask
+ db $26, $27, $28
+; 0xd4fa4
diff --git a/gfx/frontpics/066.2bpp b/gfx/pics/066/front.2bpp
index 4e7ea5eff..4e7ea5eff 100644
--- a/gfx/frontpics/066.2bpp
+++ b/gfx/pics/066/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/066.lz b/gfx/pics/066/front.lz
index 3b5404276..3b5404276 100644
--- a/gfx/frontpics/lz/066.lz
+++ b/gfx/pics/066/front.lz
Binary files differ
diff --git a/gfx/anim/066.2bpp b/gfx/pics/066/tiles.2bpp
index ddcbafedf..ddcbafedf 100644
--- a/gfx/anim/066.2bpp
+++ b/gfx/pics/066/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/067/anim0.asm b/gfx/pics/067/anim0.asm
new file mode 100644
index 000000000..6d89ab174
--- /dev/null
+++ b/gfx/pics/067/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 12
+ frame 2, 40
+ frame 1, 10
+ endanim
+; 0xd0c8a
diff --git a/gfx/pics/067/anim1.asm b/gfx/pics/067/anim1.asm
new file mode 100644
index 000000000..c79f108d7
--- /dev/null
+++ b/gfx/pics/067/anim1.asm
@@ -0,0 +1,10 @@
+ frame 4, 06
+ frame 5, 25
+ frame 4, 05
+ frame 6, 20
+ setrepeat 2
+ frame 3, 08
+ frame 6, 08
+ dorepeat 5
+ endanim
+; 0xd1b62
diff --git a/gfx/backpics/067.2bpp b/gfx/pics/067/back.2bpp
index 2c407d2f0..2c407d2f0 100644
--- a/gfx/backpics/067.2bpp
+++ b/gfx/pics/067/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/067.lz b/gfx/pics/067/back.lz
index e6a0015ed..e6a0015ed 100644
--- a/gfx/backpics/lz/067.lz
+++ b/gfx/pics/067/back.lz
Binary files differ
diff --git a/gfx/pics/067/bitmask.asm b/gfx/pics/067/bitmask.asm
new file mode 100644
index 000000000..59bdaaea8
--- /dev/null
+++ b/gfx/pics/067/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10011111
+ db %00001111
+ db %11000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000110
+ db %11000011
+ db %10000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %11000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2bcb
diff --git a/gfx/pics/067/frames.asm b/gfx/pics/067/frames.asm
new file mode 100644
index 000000000..72af5035f
--- /dev/null
+++ b/gfx/pics/067/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $00, $34, $35, $36, $37, $38, $39, $3a
+ db $3b
+.frame2
+ db $00 ; bitmask
+ db $3c, $3d, $33, $00, $00, $3e, $3f, $36, $37, $38, $40, $3a
+ db $41
+.frame3
+ db $01 ; bitmask
+ db $42, $43, $44, $45, $3a, $46, $47, $48
+.frame4
+ db $02 ; bitmask
+ db $39, $3a, $3b
+.frame5
+ db $02 ; bitmask
+ db $40, $3a, $41
+.frame6
+ db $03 ; bitmask
+ db $3a
+; 0xd4fdf
diff --git a/gfx/frontpics/067.2bpp b/gfx/pics/067/front.2bpp
index 9f28e4faa..9f28e4faa 100644
--- a/gfx/frontpics/067.2bpp
+++ b/gfx/pics/067/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/067.lz b/gfx/pics/067/front.lz
index 984f1601f..984f1601f 100644
--- a/gfx/frontpics/lz/067.lz
+++ b/gfx/pics/067/front.lz
Binary files differ
diff --git a/gfx/anim/067.2bpp b/gfx/pics/067/tiles.2bpp
index d12ea1b4b..d12ea1b4b 100644
--- a/gfx/anim/067.2bpp
+++ b/gfx/pics/067/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/068/anim0.asm b/gfx/pics/068/anim0.asm
new file mode 100644
index 000000000..6202aefe5
--- /dev/null
+++ b/gfx/pics/068/anim0.asm
@@ -0,0 +1,11 @@
+ frame 0, 04
+ frame 1, 30
+ setrepeat 3
+ frame 2, 05
+ frame 6, 03
+ frame 3, 05
+ frame 4, 03
+ dorepeat 3
+ frame 7, 08
+ endanim
+; 0xd0c9d
diff --git a/gfx/pics/068/anim1.asm b/gfx/pics/068/anim1.asm
new file mode 100644
index 000000000..5171d3966
--- /dev/null
+++ b/gfx/pics/068/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 5, 07
+ dorepeat 1
+ endanim
+; 0xd1b6b
diff --git a/gfx/backpics/068.2bpp b/gfx/pics/068/back.2bpp
index 0bd3c391a..0bd3c391a 100644
--- a/gfx/backpics/068.2bpp
+++ b/gfx/pics/068/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/068.lz b/gfx/pics/068/back.lz
index b82d09cce..b82d09cce 100644
--- a/gfx/backpics/lz/068.lz
+++ b/gfx/pics/068/back.lz
Binary files differ
diff --git a/gfx/pics/068/bitmask.asm b/gfx/pics/068/bitmask.asm
new file mode 100644
index 000000000..a8960834d
--- /dev/null
+++ b/gfx/pics/068/bitmask.asm
@@ -0,0 +1,57 @@
+; 0
+ db %10000000
+ db %11000001
+ db %10000011
+ db %00000001
+ db %00011000
+ db %00001100
+ db %00000000
+; 1
+ db %10111000
+ db %11011111
+ db %00001100
+ db %00000000
+ db %00011000
+ db %00001100
+ db %00000000
+; 2
+ db %10000000
+ db %11000001
+ db %00011100
+ db %00001110
+ db %11111011
+ db %01101101
+ db %00000000
+; 3
+ db %10011000
+ db %11011111
+ db %00001110
+ db %10000110
+ db %11111011
+ db %01101101
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %11000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 5
+ db %10011000
+ db %11011101
+ db %00001110
+ db %10000110
+ db %11111011
+ db %01101101
+ db %00000000
+; 6
+ db %10000000
+ db %11000001
+ db %00000000
+ db %00000000
+ db %00011000
+ db %00001100
+ db %00000000
+; 0xd2bfc
diff --git a/gfx/pics/068/frames.asm b/gfx/pics/068/frames.asm
new file mode 100644
index 000000000..53963eb10
--- /dev/null
+++ b/gfx/pics/068/frames.asm
@@ -0,0 +1,35 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+.frame2
+ db $01 ; bitmask
+ db $3d, $05, $3e, $31, $32, $3f, $40, $41, $42, $33, $34, $43
+ db $44, $39, $3a, $3b, $3c
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33, $34, $45, $46, $47, $48, $49, $4a, $05, $4b
+ db $39, $3a, $4c, $4d, $4e, $4f, $3b, $3c, $50, $05
+.frame4
+ db $03 ; bitmask
+ db $3d, $05, $31, $32, $3f, $51, $52, $53, $33, $34, $54, $55
+ db $56, $57, $58, $59, $5a, $5b, $39, $3a, $4c, $4d, $4e, $4f
+ db $3b, $3c, $50, $05
+.frame5
+ db $04 ; bitmask
+ db $5c, $5d, $5e
+.frame6
+ db $05 ; bitmask
+ db $3d, $05, $31, $32, $51, $52, $53, $33, $34, $54, $5f, $56
+ db $60, $05, $59, $61, $5b, $39, $3a, $4c, $4d, $4e, $4f, $3b
+ db $3c, $50, $05
+.frame7
+ db $06 ; bitmask
+ db $31, $32, $33, $34, $39, $3a, $3b, $3c
+; 0xd5069
diff --git a/gfx/frontpics/068.2bpp b/gfx/pics/068/front.2bpp
index ba6d57b67..ba6d57b67 100644
--- a/gfx/frontpics/068.2bpp
+++ b/gfx/pics/068/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/068.lz b/gfx/pics/068/front.lz
index aa1b12edb..aa1b12edb 100644
--- a/gfx/frontpics/lz/068.lz
+++ b/gfx/pics/068/front.lz
Binary files differ
diff --git a/gfx/anim/068.2bpp b/gfx/pics/068/tiles.2bpp
index be0d5bcf8..be0d5bcf8 100644
--- a/gfx/anim/068.2bpp
+++ b/gfx/pics/068/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/069/anim0.asm b/gfx/pics/069/anim0.asm
new file mode 100644
index 000000000..9a71b29ac
--- /dev/null
+++ b/gfx/pics/069/anim0.asm
@@ -0,0 +1,12 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ setrepeat 2
+ frame 0, 08
+ frame 1, 08
+ frame 2, 12
+ frame 1, 08
+ dorepeat 5
+ endanim
+; 0xd0cb2
diff --git a/gfx/pics/069/anim1.asm b/gfx/pics/069/anim1.asm
new file mode 100644
index 000000000..31ad26997
--- /dev/null
+++ b/gfx/pics/069/anim1.asm
@@ -0,0 +1,8 @@
+ frame 4, 10
+ frame 5, 10
+ setrepeat 3
+ frame 0, 05
+ frame 6, 05
+ dorepeat 3
+ endanim
+; 0xd1b78
diff --git a/gfx/backpics/069.2bpp b/gfx/pics/069/back.2bpp
index a9f701a81..a9f701a81 100644
--- a/gfx/backpics/069.2bpp
+++ b/gfx/pics/069/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/069.lz b/gfx/pics/069/back.lz
index ab600f064..ab600f064 100644
--- a/gfx/backpics/lz/069.lz
+++ b/gfx/pics/069/back.lz
Binary files differ
diff --git a/gfx/pics/069/bitmask.asm b/gfx/pics/069/bitmask.asm
new file mode 100644
index 000000000..c5ba4c4a2
--- /dev/null
+++ b/gfx/pics/069/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %01000010
+ db %00001000
+ db %00000000
+ db %00000000
+; 1
+ db %10001110
+ db %10000001
+ db %00110001
+ db %00000000
+; 2
+ db %10001110
+ db %00000001
+ db %00000000
+ db %00000000
+; 3
+ db %10000110
+ db %10000000
+ db %00110001
+ db %00000000
+; 4
+ db %01000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2c10
diff --git a/gfx/pics/069/frames.asm b/gfx/pics/069/frames.asm
new file mode 100644
index 000000000..2bc744afa
--- /dev/null
+++ b/gfx/pics/069/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $1c
+.frame3
+ db $01 ; bitmask
+ db $1d, $1e, $0f, $1f, $20, $21, $22, $0f, $23
+.frame4
+ db $02 ; bitmask
+ db $1d, $1e, $0f, $1f, $20
+.frame5
+ db $03 ; bitmask
+ db $1d, $1e, $24, $21, $22, $0f, $23
+.frame6
+ db $04 ; bitmask
+ db $19, $1a
+; 0xd5098
diff --git a/gfx/frontpics/069.2bpp b/gfx/pics/069/front.2bpp
index 8fdd54db7..8fdd54db7 100644
--- a/gfx/frontpics/069.2bpp
+++ b/gfx/pics/069/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/069.lz b/gfx/pics/069/front.lz
index 2593fb112..2593fb112 100644
--- a/gfx/frontpics/lz/069.lz
+++ b/gfx/pics/069/front.lz
Binary files differ
diff --git a/gfx/anim/069.2bpp b/gfx/pics/069/tiles.2bpp
index 7f1924e4c..7f1924e4c 100644
--- a/gfx/anim/069.2bpp
+++ b/gfx/pics/069/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/070/anim0.asm b/gfx/pics/070/anim0.asm
new file mode 100644
index 000000000..6f710d29a
--- /dev/null
+++ b/gfx/pics/070/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 05
+ frame 1, 05
+ frame 2, 05
+ dorepeat 1
+ frame 3, 12
+ endanim
+; 0xd0cbf
diff --git a/gfx/pics/070/anim1.asm b/gfx/pics/070/anim1.asm
new file mode 100644
index 000000000..0e56c9cc1
--- /dev/null
+++ b/gfx/pics/070/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd1b81
diff --git a/gfx/backpics/070.2bpp b/gfx/pics/070/back.2bpp
index 2ac2727fa..2ac2727fa 100644
--- a/gfx/backpics/070.2bpp
+++ b/gfx/pics/070/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/070.lz b/gfx/pics/070/back.lz
index 26e44257c..26e44257c 100644
--- a/gfx/backpics/lz/070.lz
+++ b/gfx/pics/070/back.lz
Binary files differ
diff --git a/gfx/pics/070/bitmask.asm b/gfx/pics/070/bitmask.asm
new file mode 100644
index 000000000..4af94c390
--- /dev/null
+++ b/gfx/pics/070/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %10000000
+ db %11100011
+ db %00111000
+ db %00001100
+; 1
+ db %00000000
+ db %10000000
+ db %11110001
+ db %00111000
+ db %00001100
+; 2
+ db %00000000
+ db %01000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 0xd2c1f
diff --git a/gfx/pics/070/frames.asm b/gfx/pics/070/frames.asm
new file mode 100644
index 000000000..9d67bd4eb
--- /dev/null
+++ b/gfx/pics/070/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $00, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $2c, $2d, $2e, $2f, $30, $00, $31, $32, $00, $00, $00
+.frame3
+ db $02 ; bitmask
+ db $33, $34
+; 0xd50b9
diff --git a/gfx/frontpics/070.2bpp b/gfx/pics/070/front.2bpp
index 2b4c02b35..2b4c02b35 100644
--- a/gfx/frontpics/070.2bpp
+++ b/gfx/pics/070/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/070.lz b/gfx/pics/070/front.lz
index a7e7d60b5..a7e7d60b5 100644
--- a/gfx/frontpics/lz/070.lz
+++ b/gfx/pics/070/front.lz
Binary files differ
diff --git a/gfx/anim/070.2bpp b/gfx/pics/070/tiles.2bpp
index 3dfba7fc1..3dfba7fc1 100644
--- a/gfx/anim/070.2bpp
+++ b/gfx/pics/070/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/071/anim0.asm b/gfx/pics/071/anim0.asm
new file mode 100644
index 000000000..ec490f7fb
--- /dev/null
+++ b/gfx/pics/071/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 10
+ frame 2, 25
+ frame 3, 10
+ frame 4, 10
+ frame 5, 10
+ endanim
+; 0xd0cca
diff --git a/gfx/pics/071/anim1.asm b/gfx/pics/071/anim1.asm
new file mode 100644
index 000000000..121550865
--- /dev/null
+++ b/gfx/pics/071/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ frame 5, 05
+ dorepeat 1
+ endanim
+; 0xd1b8c
diff --git a/gfx/backpics/071.2bpp b/gfx/pics/071/back.2bpp
index 6a4efcaba..6a4efcaba 100644
--- a/gfx/backpics/071.2bpp
+++ b/gfx/pics/071/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/071.lz b/gfx/pics/071/back.lz
index d4b014f67..d4b014f67 100644
--- a/gfx/backpics/lz/071.lz
+++ b/gfx/pics/071/back.lz
Binary files differ
diff --git a/gfx/pics/071/bitmask.asm b/gfx/pics/071/bitmask.asm
new file mode 100644
index 000000000..418d3c056
--- /dev/null
+++ b/gfx/pics/071/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00000000
+ db %10000010
+ db %10001111
+ db %01100001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10000000
+ db %11000011
+ db %11001111
+ db %01100101
+ db %00000010
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %11000001
+ db %01011101
+ db %00101100
+ db %00000010
+ db %00000000
+ db %00000000
+; 3
+ db %00100000
+ db %00110000
+ db %00011000
+ db %00001000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00100000
+ db %00010000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2c42
diff --git a/gfx/pics/071/frames.asm b/gfx/pics/071/frames.asm
new file mode 100644
index 000000000..302053cba
--- /dev/null
+++ b/gfx/pics/071/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+.frame2
+ db $01 ; bitmask
+ db $3b, $3c, $31, $3d, $3e, $33, $34, $3f, $40, $41, $37, $38
+ db $42, $43, $3a, $44
+.frame3
+ db $02 ; bitmask
+ db $3b, $45, $3d, $46, $47, $3f, $40, $48, $41, $42, $49, $43
+ db $44
+.frame4
+ db $03 ; bitmask
+ db $00, $4a, $4b, $4c, $4d, $4e
+.frame5
+ db $04 ; bitmask
+ db $4f, $50
+; 0xd50f7
diff --git a/gfx/frontpics/071.2bpp b/gfx/pics/071/front.2bpp
index ef8959ce9..ef8959ce9 100644
--- a/gfx/frontpics/071.2bpp
+++ b/gfx/pics/071/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/071.lz b/gfx/pics/071/front.lz
index c53114990..c53114990 100644
--- a/gfx/frontpics/lz/071.lz
+++ b/gfx/pics/071/front.lz
Binary files differ
diff --git a/gfx/anim/071.2bpp b/gfx/pics/071/tiles.2bpp
index 31513f1fc..31513f1fc 100644
--- a/gfx/anim/071.2bpp
+++ b/gfx/pics/071/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/072/anim0.asm b/gfx/pics/072/anim0.asm
new file mode 100644
index 000000000..19b7d3a14
--- /dev/null
+++ b/gfx/pics/072/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 09
+ frame 2, 05
+ frame 4, 10
+ frame 5, 16
+ endanim
+; 0xd0cd3
diff --git a/gfx/pics/072/anim1.asm b/gfx/pics/072/anim1.asm
new file mode 100644
index 000000000..4e9ba0b11
--- /dev/null
+++ b/gfx/pics/072/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1b95
diff --git a/gfx/backpics/072.2bpp b/gfx/pics/072/back.2bpp
index 47fce7d05..47fce7d05 100644
--- a/gfx/backpics/072.2bpp
+++ b/gfx/pics/072/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/072.lz b/gfx/pics/072/back.lz
index c0b615905..c0b615905 100644
--- a/gfx/backpics/lz/072.lz
+++ b/gfx/pics/072/back.lz
Binary files differ
diff --git a/gfx/pics/072/bitmask.asm b/gfx/pics/072/bitmask.asm
new file mode 100644
index 000000000..36a68c87e
--- /dev/null
+++ b/gfx/pics/072/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %00011000
+ db %01000011
+ db %10001100
+ db %00000001
+; 1
+ db %00000000
+ db %00000000
+ db %10001000
+ db %00000001
+; 2
+ db %10000000
+ db %00010000
+ db %00000010
+ db %00000000
+; 3
+ db %10011000
+ db %01010011
+ db %10001110
+ db %00000001
+; 4
+ db %10000000
+ db %00010000
+ db %10001010
+ db %00000001
+; 0xd2c56
diff --git a/gfx/pics/072/frames.asm b/gfx/pics/072/frames.asm
new file mode 100644
index 000000000..bb7e38266
--- /dev/null
+++ b/gfx/pics/072/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $14, $1d, $1e, $1f, $20
+.frame2
+ db $01 ; bitmask
+ db $21, $22, $23
+.frame3
+ db $02 ; bitmask
+ db $24, $25, $26
+.frame4
+ db $03 ; bitmask
+ db $19, $1a, $24, $1b, $1c, $25, $14, $26, $1d, $1e, $1f, $20
+.frame5
+ db $04 ; bitmask
+ db $24, $25, $26, $21, $22, $23
+; 0xd5127
diff --git a/gfx/frontpics/072.2bpp b/gfx/pics/072/front.2bpp
index c0238414f..c0238414f 100644
--- a/gfx/frontpics/072.2bpp
+++ b/gfx/pics/072/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/072.lz b/gfx/pics/072/front.lz
index 57916e4e9..57916e4e9 100644
--- a/gfx/frontpics/lz/072.lz
+++ b/gfx/pics/072/front.lz
Binary files differ
diff --git a/gfx/anim/072.2bpp b/gfx/pics/072/tiles.2bpp
index ffea471b9..ffea471b9 100644
--- a/gfx/anim/072.2bpp
+++ b/gfx/pics/072/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/073/anim0.asm b/gfx/pics/073/anim0.asm
new file mode 100644
index 000000000..4fed8e9d4
--- /dev/null
+++ b/gfx/pics/073/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 2, 15
+ frame 1, 23
+ dorepeat 1
+ frame 2, 08
+ endanim
+; 0xd0cde
diff --git a/gfx/pics/073/anim1.asm b/gfx/pics/073/anim1.asm
new file mode 100644
index 000000000..fd8d510b4
--- /dev/null
+++ b/gfx/pics/073/anim1.asm
@@ -0,0 +1,7 @@
+ frame 2, 20
+ setrepeat 7
+ frame 2, 03
+ frame 3, 03
+ dorepeat 2
+ endanim
+; 0xd1ba0
diff --git a/gfx/backpics/073.2bpp b/gfx/pics/073/back.2bpp
index bbc5df8b1..bbc5df8b1 100644
--- a/gfx/backpics/073.2bpp
+++ b/gfx/pics/073/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/073.lz b/gfx/pics/073/back.lz
index 89d7a492d..89d7a492d 100644
--- a/gfx/backpics/lz/073.lz
+++ b/gfx/pics/073/back.lz
Binary files differ
diff --git a/gfx/pics/073/bitmask.asm b/gfx/pics/073/bitmask.asm
new file mode 100644
index 000000000..54d28d36d
--- /dev/null
+++ b/gfx/pics/073/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00100000
+ db %10001100
+ db %11100011
+ db %00111100
+ db %00001111
+; 1
+ db %00000000
+ db %10000000
+ db %00100000
+ db %00000100
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00110000
+ db %00000100
+ db %00000000
+; 0xd2c65
diff --git a/gfx/pics/073/frames.asm b/gfx/pics/073/frames.asm
new file mode 100644
index 000000000..124520e2f
--- /dev/null
+++ b/gfx/pics/073/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34
+.frame2
+ db $01 ; bitmask
+ db $27, $2a, $35
+.frame3
+ db $02 ; bitmask
+ db $27, $36, $2a, $35
+; 0xd5148
diff --git a/gfx/frontpics/073.2bpp b/gfx/pics/073/front.2bpp
index 86df2314f..86df2314f 100644
--- a/gfx/frontpics/073.2bpp
+++ b/gfx/pics/073/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/073.lz b/gfx/pics/073/front.lz
index ec6f4c2c8..ec6f4c2c8 100644
--- a/gfx/frontpics/lz/073.lz
+++ b/gfx/pics/073/front.lz
Binary files differ
diff --git a/gfx/anim/073.2bpp b/gfx/pics/073/tiles.2bpp
index feaddac76..feaddac76 100644
--- a/gfx/anim/073.2bpp
+++ b/gfx/pics/073/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/074/anim0.asm b/gfx/pics/074/anim0.asm
new file mode 100644
index 000000000..3c54bc94e
--- /dev/null
+++ b/gfx/pics/074/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 1, 16
+ setrepeat 3
+ frame 2, 07
+ frame 1, 07
+ dorepeat 3
+ endanim
+; 0xd0ceb
diff --git a/gfx/pics/074/anim1.asm b/gfx/pics/074/anim1.asm
new file mode 100644
index 000000000..4ec72d9b1
--- /dev/null
+++ b/gfx/pics/074/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1ba9
diff --git a/gfx/backpics/074.2bpp b/gfx/pics/074/back.2bpp
index 73d7c4bfb..73d7c4bfb 100644
--- a/gfx/backpics/074.2bpp
+++ b/gfx/pics/074/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/074.lz b/gfx/pics/074/back.lz
index 443fd327d..443fd327d 100644
--- a/gfx/backpics/lz/074.lz
+++ b/gfx/pics/074/back.lz
Binary files differ
diff --git a/gfx/pics/074/bitmask.asm b/gfx/pics/074/bitmask.asm
new file mode 100644
index 000000000..fd6285f77
--- /dev/null
+++ b/gfx/pics/074/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %01100001
+ db %00001100
+ db %00000000
+; 1
+ db %01100111
+ db %01100001
+ db %00001100
+ db %00000000
+; 2
+ db %10000000
+ db %00110001
+ db %00000000
+ db %00000000
+; 0xd2c71
diff --git a/gfx/pics/074/frames.asm b/gfx/pics/074/frames.asm
new file mode 100644
index 000000000..9ba2ed2ba
--- /dev/null
+++ b/gfx/pics/074/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d
+.frame2
+ db $01 ; bitmask
+ db $1e, $1f, $20, $21, $22, $19, $1a, $1b, $1c, $1d
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25, $26
+; 0xd5164
diff --git a/gfx/frontpics/074.2bpp b/gfx/pics/074/front.2bpp
index 733dd420b..733dd420b 100644
--- a/gfx/frontpics/074.2bpp
+++ b/gfx/pics/074/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/074.lz b/gfx/pics/074/front.lz
index 96bd9f794..96bd9f794 100644
--- a/gfx/frontpics/lz/074.lz
+++ b/gfx/pics/074/front.lz
Binary files differ
diff --git a/gfx/anim/074.2bpp b/gfx/pics/074/tiles.2bpp
index e85a36c98..e85a36c98 100644
--- a/gfx/anim/074.2bpp
+++ b/gfx/pics/074/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/075/anim0.asm b/gfx/pics/075/anim0.asm
new file mode 100644
index 000000000..8c0fba1ac
--- /dev/null
+++ b/gfx/pics/075/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 12
+ frame 2, 12
+ frame 3, 17
+ frame 0, 15
+ setrepeat 2
+ frame 0, 09
+ frame 4, 09
+ dorepeat 5
+ endanim
+; 0xd0cfc
diff --git a/gfx/pics/075/anim1.asm b/gfx/pics/075/anim1.asm
new file mode 100644
index 000000000..e4ebc15e0
--- /dev/null
+++ b/gfx/pics/075/anim1.asm
@@ -0,0 +1,7 @@
+ frame 2, 35
+ setrepeat 2
+ frame 0, 20
+ frame 5, 20
+ dorepeat 2
+ endanim
+; 0xd1bb4
diff --git a/gfx/backpics/075.2bpp b/gfx/pics/075/back.2bpp
index 224adb210..224adb210 100644
--- a/gfx/backpics/075.2bpp
+++ b/gfx/pics/075/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/075.lz b/gfx/pics/075/back.lz
index ba2fba8e6..ba2fba8e6 100644
--- a/gfx/backpics/lz/075.lz
+++ b/gfx/pics/075/back.lz
Binary files differ
diff --git a/gfx/pics/075/bitmask.asm b/gfx/pics/075/bitmask.asm
new file mode 100644
index 000000000..8f8129f11
--- /dev/null
+++ b/gfx/pics/075/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %00000000
+ db %00001100
+ db %01000011
+ db %00110000
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %01100000
+ db %00000000
+ db %00000000
+; 2
+ db %11000111
+ db %10001100
+ db %01100011
+ db %11110011
+ db %00000000
+; 3
+ db %11000111
+ db %00000000
+ db %00000000
+ db %11000011
+ db %00000000
+; 4
+ db %00000000
+ db %10000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 0xd2c8a
diff --git a/gfx/pics/075/frames.asm b/gfx/pics/075/frames.asm
new file mode 100644
index 000000000..951c9c79e
--- /dev/null
+++ b/gfx/pics/075/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $03, $25, $26, $27, $28, $29
+.frame2
+ db $01 ; bitmask
+ db $2a, $2b, $2c
+.frame3
+ db $02 ; bitmask
+ db $2d, $2e, $2f, $30, $31, $24, $03, $2a, $25, $26, $2b, $32
+ db $33, $34, $28, $29, $35, $36
+.frame4
+ db $03 ; bitmask
+ db $2d, $2e, $2f, $30, $31, $33, $34, $35, $36
+.frame5
+ db $04 ; bitmask
+ db $2a, $2b
+; 0xd519a
diff --git a/gfx/frontpics/075.2bpp b/gfx/pics/075/front.2bpp
index 91860f6ac..91860f6ac 100644
--- a/gfx/frontpics/075.2bpp
+++ b/gfx/pics/075/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/075.lz b/gfx/pics/075/front.lz
index 5dcee6436..5dcee6436 100644
--- a/gfx/frontpics/lz/075.lz
+++ b/gfx/pics/075/front.lz
Binary files differ
diff --git a/gfx/anim/075.2bpp b/gfx/pics/075/tiles.2bpp
index 51db1581b..51db1581b 100644
--- a/gfx/anim/075.2bpp
+++ b/gfx/pics/075/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/076/anim0.asm b/gfx/pics/076/anim0.asm
new file mode 100644
index 000000000..ef21ec211
--- /dev/null
+++ b/gfx/pics/076/anim0.asm
@@ -0,0 +1,7 @@
+ frame 0, 08
+ frame 1, 12
+ frame 2, 18
+ frame 1, 12
+ frame 3, 12
+ endanim
+; 0xd0d07
diff --git a/gfx/pics/076/anim1.asm b/gfx/pics/076/anim1.asm
new file mode 100644
index 000000000..9d3c23ba3
--- /dev/null
+++ b/gfx/pics/076/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1bbd
diff --git a/gfx/backpics/076.2bpp b/gfx/pics/076/back.2bpp
index 0760bdec6..0760bdec6 100644
--- a/gfx/backpics/076.2bpp
+++ b/gfx/pics/076/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/076.lz b/gfx/pics/076/back.lz
index fd1ee3dcb..fd1ee3dcb 100644
--- a/gfx/backpics/lz/076.lz
+++ b/gfx/pics/076/back.lz
Binary files differ
diff --git a/gfx/pics/076/bitmask.asm b/gfx/pics/076/bitmask.asm
new file mode 100644
index 000000000..1d3fbfa5e
--- /dev/null
+++ b/gfx/pics/076/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00011100
+ db %10000110
+ db %01110000
+ db %00011100
+ db %00000011
+; 1
+ db %00011100
+ db %10000110
+ db %01110001
+ db %00011100
+ db %00000011
+; 2
+ db %00011100
+ db %00000110
+ db %01110000
+ db %00011100
+ db %00000011
+; 3
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2c9e
diff --git a/gfx/pics/076/frames.asm b/gfx/pics/076/frames.asm
new file mode 100644
index 000000000..03f6e6a5f
--- /dev/null
+++ b/gfx/pics/076/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $32, $28, $33, $34, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31
+.frame3
+ db $02 ; bitmask
+ db $24, $25, $26, $35, $28, $2a, $2b, $2c, $2d, $2e, $2f, $30
+ db $31
+.frame4
+ db $03 ; bitmask
+ db $36
+; 0xd51d1
diff --git a/gfx/frontpics/076.2bpp b/gfx/pics/076/front.2bpp
index 204db9085..204db9085 100644
--- a/gfx/frontpics/076.2bpp
+++ b/gfx/pics/076/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/076.lz b/gfx/pics/076/front.lz
index 0a7bf3369..0a7bf3369 100644
--- a/gfx/frontpics/lz/076.lz
+++ b/gfx/pics/076/front.lz
Binary files differ
diff --git a/gfx/anim/076.2bpp b/gfx/pics/076/tiles.2bpp
index c4fc8b2f0..c4fc8b2f0 100644
--- a/gfx/anim/076.2bpp
+++ b/gfx/pics/076/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/077/anim0.asm b/gfx/pics/077/anim0.asm
new file mode 100644
index 000000000..34c3a82b6
--- /dev/null
+++ b/gfx/pics/077/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 07
+ frame 2, 07
+ frame 1, 07
+ frame 2, 07
+ frame 0, 18
+ frame 3, 06
+ frame 0, 06
+ frame 3, 06
+ endanim
+; 0xd0d18
diff --git a/gfx/pics/077/anim1.asm b/gfx/pics/077/anim1.asm
new file mode 100644
index 000000000..10c9f42dd
--- /dev/null
+++ b/gfx/pics/077/anim1.asm
@@ -0,0 +1,5 @@
+ frame 4, 06
+ frame 0, 06
+ frame 5, 06
+ endanim
+; 0xd1bc4
diff --git a/gfx/backpics/077.2bpp b/gfx/pics/077/back.2bpp
index efa487282..efa487282 100644
--- a/gfx/backpics/077.2bpp
+++ b/gfx/pics/077/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/077.lz b/gfx/pics/077/back.lz
index 5d7ecaa93..5d7ecaa93 100644
--- a/gfx/backpics/lz/077.lz
+++ b/gfx/pics/077/back.lz
Binary files differ
diff --git a/gfx/pics/077/bitmask.asm b/gfx/pics/077/bitmask.asm
new file mode 100644
index 000000000..cc2749572
--- /dev/null
+++ b/gfx/pics/077/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %11001111
+ db %01100011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10001110
+ db %01100011
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000010
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000010
+ db %00100001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2cb7
diff --git a/gfx/pics/077/frames.asm b/gfx/pics/077/frames.asm
new file mode 100644
index 000000000..d56e0dc21
--- /dev/null
+++ b/gfx/pics/077/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $04, $27, $28, $29, $2a, $2b, $2c
+.frame2
+ db $01 ; bitmask
+ db $2d, $2e, $2f, $30, $31, $32, $33, $34
+.frame3
+ db $02 ; bitmask
+ db $35
+.frame4
+ db $03 ; bitmask
+ db $36, $37
+.frame5
+ db $04 ; bitmask
+ db $36, $35, $37
+; 0xd51f8
diff --git a/gfx/frontpics/077.2bpp b/gfx/pics/077/front.2bpp
index 7f4787e75..7f4787e75 100644
--- a/gfx/frontpics/077.2bpp
+++ b/gfx/pics/077/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/077.lz b/gfx/pics/077/front.lz
index 5d3aa48db..5d3aa48db 100644
--- a/gfx/frontpics/lz/077.lz
+++ b/gfx/pics/077/front.lz
Binary files differ
diff --git a/gfx/anim/077.2bpp b/gfx/pics/077/tiles.2bpp
index 01e57a31f..01e57a31f 100644
--- a/gfx/anim/077.2bpp
+++ b/gfx/pics/077/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/078/anim0.asm b/gfx/pics/078/anim0.asm
new file mode 100644
index 000000000..6fe29db8f
--- /dev/null
+++ b/gfx/pics/078/anim0.asm
@@ -0,0 +1,14 @@
+ frame 0, 10
+ frame 2, 36
+ frame 0, 05
+ frame 1, 05
+ frame 2, 07
+ frame 0, 06
+ frame 1, 05
+ frame 0, 07
+ setrepeat 4
+ frame 2, 12
+ frame 3, 12
+ dorepeat 9
+ endanim
+; 0xd0d31
diff --git a/gfx/pics/078/anim1.asm b/gfx/pics/078/anim1.asm
new file mode 100644
index 000000000..0105673c9
--- /dev/null
+++ b/gfx/pics/078/anim1.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 4, 06
+ frame 0, 06
+ frame 4, 06
+ endanim
+; 0xd1bcd
diff --git a/gfx/backpics/078.2bpp b/gfx/pics/078/back.2bpp
index 97f8b64e0..97f8b64e0 100644
--- a/gfx/backpics/078.2bpp
+++ b/gfx/pics/078/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/078.lz b/gfx/pics/078/back.lz
index 3854c29e5..3854c29e5 100644
--- a/gfx/backpics/lz/078.lz
+++ b/gfx/pics/078/back.lz
Binary files differ
diff --git a/gfx/pics/078/bitmask.asm b/gfx/pics/078/bitmask.asm
new file mode 100644
index 000000000..7463fcdbe
--- /dev/null
+++ b/gfx/pics/078/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %00111000
+ db %00011100
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011111
+ db %10111111
+ db %01011111
+ db %00010000
+ db %00001000
+ db %00000000
+ db %00000000
+; 2
+ db %00011110
+ db %10111111
+ db %00011111
+ db %00000000
+ db %00010000
+ db %00111000
+ db %00000000
+; 3
+ db %00000000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2cd3
diff --git a/gfx/pics/078/frames.asm b/gfx/pics/078/frames.asm
new file mode 100644
index 000000000..5072bbd78
--- /dev/null
+++ b/gfx/pics/078/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $05, $05, $32, $33, $05, $34, $35
+.frame2
+ db $01 ; bitmask
+ db $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $05
+ db $41, $42, $43, $44, $45, $05, $46, $47, $48
+.frame3
+ db $02 ; bitmask
+ db $49, $38, $39, $4a, $4b, $3d, $3e, $3f, $40, $05, $4c, $42
+ db $43, $44, $45, $05, $4d, $4e, $4f, $50
+.frame4
+ db $03 ; bitmask
+ db $51, $52
+; 0xd5237
diff --git a/gfx/frontpics/078.2bpp b/gfx/pics/078/front.2bpp
index 70e0a35c6..70e0a35c6 100644
--- a/gfx/frontpics/078.2bpp
+++ b/gfx/pics/078/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/078.lz b/gfx/pics/078/front.lz
index 231e312fb..231e312fb 100644
--- a/gfx/frontpics/lz/078.lz
+++ b/gfx/pics/078/front.lz
Binary files differ
diff --git a/gfx/anim/078.2bpp b/gfx/pics/078/tiles.2bpp
index dd90d9f61..dd90d9f61 100644
--- a/gfx/anim/078.2bpp
+++ b/gfx/pics/078/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/079/anim0.asm b/gfx/pics/079/anim0.asm
new file mode 100644
index 000000000..fa391743c
--- /dev/null
+++ b/gfx/pics/079/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 05
+ frame 2, 28
+ frame 1, 10
+ endanim
+; 0xd0d38
diff --git a/gfx/pics/079/anim1.asm b/gfx/pics/079/anim1.asm
new file mode 100644
index 000000000..805a281c5
--- /dev/null
+++ b/gfx/pics/079/anim1.asm
@@ -0,0 +1,3 @@
+ frame 3, 20
+ endanim
+; 0xd1bd0
diff --git a/gfx/backpics/079.2bpp b/gfx/pics/079/back.2bpp
index 2d2dcff5e..2d2dcff5e 100644
--- a/gfx/backpics/079.2bpp
+++ b/gfx/pics/079/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/079.lz b/gfx/pics/079/back.lz
index cdaa2178d..cdaa2178d 100644
--- a/gfx/backpics/lz/079.lz
+++ b/gfx/pics/079/back.lz
Binary files differ
diff --git a/gfx/pics/079/bitmask.asm b/gfx/pics/079/bitmask.asm
new file mode 100644
index 000000000..6fab14881
--- /dev/null
+++ b/gfx/pics/079/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10011100
+ db %01110011
+ db %00001110
+ db %00000000
+; 1
+ db %11111100
+ db %01111111
+ db %00001110
+ db %00000000
+; 2
+ db %00010000
+ db %00000010
+ db %00000000
+ db %00000000
+; 0xd2cdf
diff --git a/gfx/pics/079/frames.asm b/gfx/pics/079/frames.asm
new file mode 100644
index 000000000..53a0bda39
--- /dev/null
+++ b/gfx/pics/079/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b, $00, $25, $1c, $1d, $1e, $00, $26, $1f, $20
+ db $21, $22, $23, $24
+.frame3
+ db $02 ; bitmask
+ db $1b, $27
+; 0xd525e
diff --git a/gfx/frontpics/079.2bpp b/gfx/pics/079/front.2bpp
index a34a009b3..a34a009b3 100644
--- a/gfx/frontpics/079.2bpp
+++ b/gfx/pics/079/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/079.lz b/gfx/pics/079/front.lz
index 23d8e22f2..23d8e22f2 100644
--- a/gfx/frontpics/lz/079.lz
+++ b/gfx/pics/079/front.lz
Binary files differ
diff --git a/gfx/anim/079.2bpp b/gfx/pics/079/tiles.2bpp
index d58cfa2c9..d58cfa2c9 100644
--- a/gfx/anim/079.2bpp
+++ b/gfx/pics/079/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/080/anim0.asm b/gfx/pics/080/anim0.asm
new file mode 100644
index 000000000..cc288a464
--- /dev/null
+++ b/gfx/pics/080/anim0.asm
@@ -0,0 +1,13 @@
+ frame 0, 04
+ frame 1, 08
+ frame 0, 28
+ frame 1, 12
+ setrepeat 2
+ frame 2, 10
+ frame 3, 10
+ dorepeat 5
+ frame 2, 24
+ frame 0, 10
+ frame 4, 10
+ endanim
+; 0xd0d4f
diff --git a/gfx/pics/080/anim1.asm b/gfx/pics/080/anim1.asm
new file mode 100644
index 000000000..9e793ee00
--- /dev/null
+++ b/gfx/pics/080/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1bd9
diff --git a/gfx/backpics/080.2bpp b/gfx/pics/080/back.2bpp
index c3739b6df..c3739b6df 100644
--- a/gfx/backpics/080.2bpp
+++ b/gfx/pics/080/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/080.lz b/gfx/pics/080/back.lz
index af1d60999..af1d60999 100644
--- a/gfx/backpics/lz/080.lz
+++ b/gfx/pics/080/back.lz
Binary files differ
diff --git a/gfx/pics/080/bitmask.asm b/gfx/pics/080/bitmask.asm
new file mode 100644
index 000000000..78605e6c9
--- /dev/null
+++ b/gfx/pics/080/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000100
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00111110
+ db %11000111
+ db %11000111
+ db %11100011
+ db %01000001
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000001
+ db %11000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2cf4
diff --git a/gfx/pics/080/frames.asm b/gfx/pics/080/frames.asm
new file mode 100644
index 000000000..fca2a0a8c
--- /dev/null
+++ b/gfx/pics/080/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32
+.frame2
+ db $01 ; bitmask
+ db $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e
+ db $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48
+.frame3
+ db $01 ; bitmask
+ db $33, $34, $35, $36, $37, $49, $4a, $3a, $3b, $4b, $3d, $3e
+ db $3f, $4c, $41, $42, $43, $44, $45, $46, $47, $4d
+.frame4
+ db $02 ; bitmask
+ db $4e, $4f, $50, $51
+; 0xd529c
diff --git a/gfx/frontpics/080.2bpp b/gfx/pics/080/front.2bpp
index 03100a380..03100a380 100644
--- a/gfx/frontpics/080.2bpp
+++ b/gfx/pics/080/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/080.lz b/gfx/pics/080/front.lz
index 0a6d1ac2c..0a6d1ac2c 100644
--- a/gfx/frontpics/lz/080.lz
+++ b/gfx/pics/080/front.lz
Binary files differ
diff --git a/gfx/anim/080.2bpp b/gfx/pics/080/tiles.2bpp
index a79478be2..a79478be2 100644
--- a/gfx/anim/080.2bpp
+++ b/gfx/pics/080/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/081/anim0.asm b/gfx/pics/081/anim0.asm
new file mode 100644
index 000000000..4f038b0ed
--- /dev/null
+++ b/gfx/pics/081/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 1, 08
+ frame 2, 08
+ frame 3, 08
+ frame 0, 08
+ dorepeat 1
+ endanim
+; 0xd0d5c
diff --git a/gfx/pics/081/anim1.asm b/gfx/pics/081/anim1.asm
new file mode 100644
index 000000000..a41239563
--- /dev/null
+++ b/gfx/pics/081/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 4, 08
+ frame 5, 08
+ frame 6, 08
+ dorepeat 1
+ endanim
+; 0xd1be4
diff --git a/gfx/backpics/081.2bpp b/gfx/pics/081/back.2bpp
index 304eb43a7..304eb43a7 100644
--- a/gfx/backpics/081.2bpp
+++ b/gfx/pics/081/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/081.lz b/gfx/pics/081/back.lz
index f5cb4f801..f5cb4f801 100644
--- a/gfx/backpics/lz/081.lz
+++ b/gfx/pics/081/back.lz
Binary files differ
diff --git a/gfx/pics/081/bitmask.asm b/gfx/pics/081/bitmask.asm
new file mode 100644
index 000000000..e1a59970a
--- /dev/null
+++ b/gfx/pics/081/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10001100
+ db %00010001
+ db %01100011
+ db %00000000
+; 1
+ db %11001100
+ db %00111001
+ db %01100111
+ db %00000000
+; 2
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd2d00
diff --git a/gfx/pics/081/frames.asm b/gfx/pics/081/frames.asm
new file mode 100644
index 000000000..8bad75545
--- /dev/null
+++ b/gfx/pics/081/frames.asm
@@ -0,0 +1,26 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $22, $1b, $1c, $23, $24, $25, $1e, $26, $27, $20
+ db $21
+.frame3
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $28, $1e, $1f, $20, $21
+.frame4
+ db $02 ; bitmask
+ db $1d
+.frame5
+ db $02 ; bitmask
+ db $24
+.frame6
+ db $02 ; bitmask
+ db $28
+; 0xd52d0
diff --git a/gfx/frontpics/081.2bpp b/gfx/pics/081/front.2bpp
index 4bc67f4da..4bc67f4da 100644
--- a/gfx/frontpics/081.2bpp
+++ b/gfx/pics/081/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/081.lz b/gfx/pics/081/front.lz
index fb221be89..fb221be89 100644
--- a/gfx/frontpics/lz/081.lz
+++ b/gfx/pics/081/front.lz
Binary files differ
diff --git a/gfx/anim/081.2bpp b/gfx/pics/081/tiles.2bpp
index 24dd5f4a5..24dd5f4a5 100644
--- a/gfx/anim/081.2bpp
+++ b/gfx/pics/081/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/082/anim0.asm b/gfx/pics/082/anim0.asm
new file mode 100644
index 000000000..26b34d4ec
--- /dev/null
+++ b/gfx/pics/082/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 08
+ frame 2, 08
+ frame 3, 08
+ frame 4, 08
+ frame 5, 08
+ frame 6, 08
+ frame 7, 08
+ frame 1, 04
+ frame 2, 04
+ frame 3, 04
+ endanim
+; 0xd0d71
diff --git a/gfx/pics/082/anim1.asm b/gfx/pics/082/anim1.asm
new file mode 100644
index 000000000..6045d8fae
--- /dev/null
+++ b/gfx/pics/082/anim1.asm
@@ -0,0 +1,9 @@
+ setrepeat 2
+ frame 0, 10
+ frame 8, 10
+ dorepeat 1
+ frame 1, 24
+ frame 2, 24
+ frame 3, 24
+ endanim
+; 0xd1bf3
diff --git a/gfx/backpics/082.2bpp b/gfx/pics/082/back.2bpp
index 26f51f4cb..26f51f4cb 100644
--- a/gfx/backpics/082.2bpp
+++ b/gfx/pics/082/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/082.lz b/gfx/pics/082/back.lz
index c029f8cef..c029f8cef 100644
--- a/gfx/backpics/lz/082.lz
+++ b/gfx/pics/082/back.lz
Binary files differ
diff --git a/gfx/pics/082/bitmask.asm b/gfx/pics/082/bitmask.asm
new file mode 100644
index 000000000..907401be7
--- /dev/null
+++ b/gfx/pics/082/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000100
+ db %00000001
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000010
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00010000
+ db %00000100
+ db %00000000
+; 5
+ db %00000000
+ db %10000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 6
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 7
+ db %10000000
+ db %00000001
+ db %01000001
+ db %00000110
+ db %00000000
+; 0xd2d28
diff --git a/gfx/pics/082/frames.asm b/gfx/pics/082/frames.asm
new file mode 100644
index 000000000..845c96593
--- /dev/null
+++ b/gfx/pics/082/frames.asm
@@ -0,0 +1,33 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+.frame1
+ db $00 ; bitmask
+ db $24, $25
+.frame2
+ db $01 ; bitmask
+ db $26, $27
+.frame3
+ db $02 ; bitmask
+ db $28, $29
+.frame4
+ db $03 ; bitmask
+ db $2a
+.frame5
+ db $04 ; bitmask
+ db $2b, $2c
+.frame6
+ db $05 ; bitmask
+ db $2d, $2e
+.frame7
+ db $06 ; bitmask
+ db $2f
+.frame8
+ db $07 ; bitmask
+ db $30, $31, $32, $33, $34, $35
+; 0xd52fa
diff --git a/gfx/frontpics/082.2bpp b/gfx/pics/082/front.2bpp
index c18541bc5..c18541bc5 100644
--- a/gfx/frontpics/082.2bpp
+++ b/gfx/pics/082/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/082.lz b/gfx/pics/082/front.lz
index f7b7a0be0..f7b7a0be0 100644
--- a/gfx/frontpics/lz/082.lz
+++ b/gfx/pics/082/front.lz
Binary files differ
diff --git a/gfx/anim/082.2bpp b/gfx/pics/082/tiles.2bpp
index 21b03b78c..21b03b78c 100644
--- a/gfx/anim/082.2bpp
+++ b/gfx/pics/082/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/083/anim0.asm b/gfx/pics/083/anim0.asm
new file mode 100644
index 000000000..4dac6c1a4
--- /dev/null
+++ b/gfx/pics/083/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 06
+ frame 2, 06
+ frame 3, 14
+ frame 2, 06
+ endanim
+; 0xd0d7a
diff --git a/gfx/pics/083/anim1.asm b/gfx/pics/083/anim1.asm
new file mode 100644
index 000000000..5dcfaa89d
--- /dev/null
+++ b/gfx/pics/083/anim1.asm
@@ -0,0 +1,5 @@
+ frame 4, 10
+ frame 5, 07
+ frame 4, 07
+ endanim
+; 0xd1bfa
diff --git a/gfx/backpics/083.2bpp b/gfx/pics/083/back.2bpp
index 18b16747f..18b16747f 100644
--- a/gfx/backpics/083.2bpp
+++ b/gfx/pics/083/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/083.lz b/gfx/pics/083/back.lz
index 77dd25ae9..77dd25ae9 100644
--- a/gfx/backpics/lz/083.lz
+++ b/gfx/pics/083/back.lz
Binary files differ
diff --git a/gfx/pics/083/bitmask.asm b/gfx/pics/083/bitmask.asm
new file mode 100644
index 000000000..82429610d
--- /dev/null
+++ b/gfx/pics/083/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00111000
+ db %00001110
+ db %00000010
+; 1
+ db %00000000
+ db %01000000
+ db %00111100
+ db %11011111
+ db %00000111
+; 2
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000010
+; 3
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00001000
+ db %00000010
+; 0xd2d3c
diff --git a/gfx/pics/083/frames.asm b/gfx/pics/083/frames.asm
new file mode 100644
index 000000000..698ff1f15
--- /dev/null
+++ b/gfx/pics/083/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $2b, $2c, $2d, $2e, $26, $22, $2f, $30, $29, $31, $22, $32
+ db $33, $34, $35
+.frame3
+ db $01 ; bitmask
+ db $2b, $2c, $2d, $2e, $26, $22, $36, $28, $37, $38, $22, $32
+ db $39, $3a, $3b
+.frame4
+ db $02 ; bitmask
+ db $29, $2a
+.frame5
+ db $03 ; bitmask
+ db $2b, $2e, $29, $2a
+; 0xd5334
diff --git a/gfx/frontpics/083.2bpp b/gfx/pics/083/front.2bpp
index c15312f8c..c15312f8c 100644
--- a/gfx/frontpics/083.2bpp
+++ b/gfx/pics/083/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/083.lz b/gfx/pics/083/front.lz
index d9eeb7489..d9eeb7489 100644
--- a/gfx/frontpics/lz/083.lz
+++ b/gfx/pics/083/front.lz
Binary files differ
diff --git a/gfx/anim/083.2bpp b/gfx/pics/083/tiles.2bpp
index 655f0af93..655f0af93 100644
--- a/gfx/anim/083.2bpp
+++ b/gfx/pics/083/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/084/anim0.asm b/gfx/pics/084/anim0.asm
new file mode 100644
index 000000000..cd38ca192
--- /dev/null
+++ b/gfx/pics/084/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 12
+ frame 2, 32
+ frame 1, 24
+ setrepeat 2
+ frame 3, 08
+ frame 1, 08
+ dorepeat 4
+ endanim
+; 0xd0d89
diff --git a/gfx/pics/084/anim1.asm b/gfx/pics/084/anim1.asm
new file mode 100644
index 000000000..89715cae8
--- /dev/null
+++ b/gfx/pics/084/anim1.asm
@@ -0,0 +1,8 @@
+ frame 1, 12
+ setrepeat 2
+ frame 3, 06
+ frame 1, 06
+ dorepeat 2
+ frame 1, 30
+ endanim
+; 0xd1c07
diff --git a/gfx/backpics/084.2bpp b/gfx/pics/084/back.2bpp
index 2ff7cffbe..2ff7cffbe 100644
--- a/gfx/backpics/084.2bpp
+++ b/gfx/pics/084/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/084.lz b/gfx/pics/084/back.lz
index 8f204150b..8f204150b 100644
--- a/gfx/backpics/lz/084.lz
+++ b/gfx/pics/084/back.lz
Binary files differ
diff --git a/gfx/pics/084/bitmask.asm b/gfx/pics/084/bitmask.asm
new file mode 100644
index 000000000..0e4fc7906
--- /dev/null
+++ b/gfx/pics/084/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %10001000
+ db %11110001
+ db %00000000
+; 1
+ db %01000010
+ db %10001000
+ db %11110001
+ db %00000000
+; 2
+ db %00100000
+ db %10001000
+ db %11110001
+ db %00000000
+; 0xd2d48
diff --git a/gfx/pics/084/frames.asm b/gfx/pics/084/frames.asm
new file mode 100644
index 000000000..1888d2512
--- /dev/null
+++ b/gfx/pics/084/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $02, $1e
+.frame2
+ db $01 ; bitmask
+ db $1f, $20, $21, $1a, $22, $1c, $1d, $02, $1e
+.frame3
+ db $02 ; bitmask
+ db $23, $19, $1a, $24, $25, $26, $02, $1e
+; 0xd5355
diff --git a/gfx/frontpics/084.2bpp b/gfx/pics/084/front.2bpp
index 51dca9267..51dca9267 100644
--- a/gfx/frontpics/084.2bpp
+++ b/gfx/pics/084/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/084.lz b/gfx/pics/084/front.lz
index 11d525427..11d525427 100644
--- a/gfx/frontpics/lz/084.lz
+++ b/gfx/pics/084/front.lz
Binary files differ
diff --git a/gfx/anim/084.2bpp b/gfx/pics/084/tiles.2bpp
index 7862ae781..7862ae781 100644
--- a/gfx/anim/084.2bpp
+++ b/gfx/pics/084/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/085/anim0.asm b/gfx/pics/085/anim0.asm
new file mode 100644
index 000000000..539f896d7
--- /dev/null
+++ b/gfx/pics/085/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 10
+ frame 2, 10
+ frame 4, 10
+ frame 1, 09
+ endanim
+; 0xd0d92
diff --git a/gfx/pics/085/anim1.asm b/gfx/pics/085/anim1.asm
new file mode 100644
index 000000000..a921058f3
--- /dev/null
+++ b/gfx/pics/085/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 3, 10
+ frame 0, 08
+ dorepeat 1
+ endanim
+; 0xd1c10
diff --git a/gfx/backpics/085.2bpp b/gfx/pics/085/back.2bpp
index baf249aec..baf249aec 100644
--- a/gfx/backpics/085.2bpp
+++ b/gfx/pics/085/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/085.lz b/gfx/pics/085/back.lz
index 3b1d80db5..3b1d80db5 100644
--- a/gfx/backpics/lz/085.lz
+++ b/gfx/pics/085/back.lz
Binary files differ
diff --git a/gfx/pics/085/bitmask.asm b/gfx/pics/085/bitmask.asm
new file mode 100644
index 000000000..6af2e59e8
--- /dev/null
+++ b/gfx/pics/085/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000110
+ db %10000011
+ db %11100000
+ db %11110000
+ db %00111000
+ db %00001000
+ db %00000000
+; 1
+ db %00011110
+ db %10011111
+ db %11100111
+ db %11110011
+ db %00111000
+ db %00001000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00001100
+ db %00000010
+ db %00000000
+ db %00000000
+; 3
+ db %00011000
+ db %10011110
+ db %11100111
+ db %11110011
+ db %00111000
+ db %00001000
+ db %00000000
+; 0xd2d64
diff --git a/gfx/pics/085/frames.asm b/gfx/pics/085/frames.asm
new file mode 100644
index 000000000..e51718307
--- /dev/null
+++ b/gfx/pics/085/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $41, $02, $33, $42, $43, $02, $02, $44, $45, $46
+ db $47, $36, $48, $49, $4a, $4b, $39, $3a, $3b, $3c, $3d, $3e
+ db $3f, $40
+.frame3
+ db $02 ; bitmask
+ db $4c, $4d, $4e
+.frame4
+ db $03 ; bitmask
+ db $41, $02, $4f, $43, $02, $02, $44, $45, $46, $47, $36, $48
+ db $49, $4a, $4b, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40
+; 0xd53a5
diff --git a/gfx/frontpics/085.2bpp b/gfx/pics/085/front.2bpp
index 22f632c89..22f632c89 100644
--- a/gfx/frontpics/085.2bpp
+++ b/gfx/pics/085/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/085.lz b/gfx/pics/085/front.lz
index 8de65b2de..8de65b2de 100644
--- a/gfx/frontpics/lz/085.lz
+++ b/gfx/pics/085/front.lz
Binary files differ
diff --git a/gfx/anim/085.2bpp b/gfx/pics/085/tiles.2bpp
index 809a4b3d0..809a4b3d0 100644
--- a/gfx/anim/085.2bpp
+++ b/gfx/pics/085/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/086/anim0.asm b/gfx/pics/086/anim0.asm
new file mode 100644
index 000000000..ea92a35be
--- /dev/null
+++ b/gfx/pics/086/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 06
+ frame 2, 32
+ setrepeat 2
+ frame 0, 10
+ frame 1, 10
+ dorepeat 3
+ endanim
+; 0xd0d9f
diff --git a/gfx/pics/086/anim1.asm b/gfx/pics/086/anim1.asm
new file mode 100644
index 000000000..c601e55e5
--- /dev/null
+++ b/gfx/pics/086/anim1.asm
@@ -0,0 +1,7 @@
+ frame 2, 12
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 2
+ endanim
+; 0xd1c1b
diff --git a/gfx/backpics/086.2bpp b/gfx/pics/086/back.2bpp
index 1049d9aa6..1049d9aa6 100644
--- a/gfx/backpics/086.2bpp
+++ b/gfx/pics/086/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/086.lz b/gfx/pics/086/back.lz
index 0d5b89dae..0d5b89dae 100644
--- a/gfx/backpics/lz/086.lz
+++ b/gfx/pics/086/back.lz
Binary files differ
diff --git a/gfx/pics/086/bitmask.asm b/gfx/pics/086/bitmask.asm
new file mode 100644
index 000000000..057a06a50
--- /dev/null
+++ b/gfx/pics/086/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %11001111
+ db %01110001
+ db %00001100
+ db %00000011
+ db %00000000
+; 1
+ db %00000000
+ db %11000010
+ db %01100001
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd2d73
diff --git a/gfx/pics/086/frames.asm b/gfx/pics/086/frames.asm
new file mode 100644
index 000000000..48af98244
--- /dev/null
+++ b/gfx/pics/086/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $1e, $2e
+ db $1e, $1e
+.frame2
+ db $01 ; bitmask
+ db $2f, $30, $31, $32, $33, $34
+.frame3
+ db $02 ; bitmask
+ db $35, $36
+; 0xd53c4
diff --git a/gfx/frontpics/086.2bpp b/gfx/pics/086/front.2bpp
index 3f9a370bb..3f9a370bb 100644
--- a/gfx/frontpics/086.2bpp
+++ b/gfx/pics/086/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/086.lz b/gfx/pics/086/front.lz
index c8f1343d6..c8f1343d6 100644
--- a/gfx/frontpics/lz/086.lz
+++ b/gfx/pics/086/front.lz
Binary files differ
diff --git a/gfx/anim/086.2bpp b/gfx/pics/086/tiles.2bpp
index fbdb6dd28..fbdb6dd28 100644
--- a/gfx/anim/086.2bpp
+++ b/gfx/pics/086/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/087/anim0.asm b/gfx/pics/087/anim0.asm
new file mode 100644
index 000000000..b7c3efecf
--- /dev/null
+++ b/gfx/pics/087/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 09
+ frame 2, 09
+ frame 3, 09
+ frame 4, 09
+ frame 5, 14
+ endanim
+; 0xd0daa
diff --git a/gfx/pics/087/anim1.asm b/gfx/pics/087/anim1.asm
new file mode 100644
index 000000000..0357ce660
--- /dev/null
+++ b/gfx/pics/087/anim1.asm
@@ -0,0 +1,9 @@
+ setrepeat 2
+ frame 0, 06
+ frame 6, 06
+ frame 7, 06
+ frame 8, 06
+ frame 9, 06
+ dorepeat 1
+ endanim
+; 0xd1c2a
diff --git a/gfx/backpics/087.2bpp b/gfx/pics/087/back.2bpp
index 09420dc2c..09420dc2c 100644
--- a/gfx/backpics/087.2bpp
+++ b/gfx/pics/087/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/087.lz b/gfx/pics/087/back.lz
index bc6842e86..bc6842e86 100644
--- a/gfx/backpics/lz/087.lz
+++ b/gfx/pics/087/back.lz
Binary files differ
diff --git a/gfx/pics/087/bitmask.asm b/gfx/pics/087/bitmask.asm
new file mode 100644
index 000000000..0d29808ea
--- /dev/null
+++ b/gfx/pics/087/bitmask.asm
@@ -0,0 +1,73 @@
+; 0
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000110
+ db %00000011
+ db %00000000
+ db %00000000
+; 1
+ db %00000010
+ db %00000011
+ db %11001100
+ db %01110111
+ db %01111011
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %11000000
+ db %11000001
+ db %01110001
+ db %01111000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %11100000
+ db %01110001
+ db %01111000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %11000000
+ db %01110001
+ db %01111000
+ db %00000000
+ db %00000000
+; 5
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 6
+ db %00000010
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 7
+ db %10000000
+ db %11000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 8
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2db2
diff --git a/gfx/pics/087/frames.asm b/gfx/pics/087/frames.asm
new file mode 100644
index 000000000..38ca6a78c
--- /dev/null
+++ b/gfx/pics/087/frames.asm
@@ -0,0 +1,40 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+ dw .frame9
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35
+.frame2
+ db $01 ; bitmask
+ db $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41
+ db $42, $43, $44, $45, $46, $47, $48
+.frame3
+ db $02 ; bitmask
+ db $49, $4a, $4b, $4c, $3b, $3c, $3d, $40, $41, $42, $45, $46
+ db $47, $48
+.frame4
+ db $03 ; bitmask
+ db $4d, $3b, $3c, $3d, $40, $41, $42, $45, $46, $47, $48
+.frame5
+ db $04 ; bitmask
+ db $3b, $3c, $3d, $40, $41, $42, $45, $46, $47, $48
+.frame6
+ db $05 ; bitmask
+ db $31
+.frame7
+ db $06 ; bitmask
+ db $36, $37, $38
+.frame8
+ db $07 ; bitmask
+ db $49, $4a, $4b, $4c
+.frame9
+ db $08 ; bitmask
+ db $4d ; unused
+
+; 0xd5422
diff --git a/gfx/frontpics/087.2bpp b/gfx/pics/087/front.2bpp
index 1bcacf291..1bcacf291 100644
--- a/gfx/frontpics/087.2bpp
+++ b/gfx/pics/087/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/087.lz b/gfx/pics/087/front.lz
index cbb0ace94..cbb0ace94 100644
--- a/gfx/frontpics/lz/087.lz
+++ b/gfx/pics/087/front.lz
Binary files differ
diff --git a/gfx/anim/087.2bpp b/gfx/pics/087/tiles.2bpp
index 86e9b755f..86e9b755f 100644
--- a/gfx/anim/087.2bpp
+++ b/gfx/pics/087/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/088/anim0.asm b/gfx/pics/088/anim0.asm
new file mode 100644
index 000000000..c8edda489
--- /dev/null
+++ b/gfx/pics/088/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 04
+ frame 2, 12
+ frame 1, 08
+ frame 2, 28
+ endanim
+; 0xd0db3
diff --git a/gfx/pics/088/anim1.asm b/gfx/pics/088/anim1.asm
new file mode 100644
index 000000000..50829935e
--- /dev/null
+++ b/gfx/pics/088/anim1.asm
@@ -0,0 +1,8 @@
+ frame 3, 04
+ setrepeat 2
+ frame 1, 08
+ frame 4, 08
+ dorepeat 2
+ frame 2, 16
+ endanim
+; 0xd1c37
diff --git a/gfx/backpics/088.2bpp b/gfx/pics/088/back.2bpp
index 7b3b9166a..7b3b9166a 100644
--- a/gfx/backpics/088.2bpp
+++ b/gfx/pics/088/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/088.lz b/gfx/pics/088/back.lz
index d4494a003..d4494a003 100644
--- a/gfx/backpics/lz/088.lz
+++ b/gfx/pics/088/back.lz
Binary files differ
diff --git a/gfx/pics/088/bitmask.asm b/gfx/pics/088/bitmask.asm
new file mode 100644
index 000000000..850747202
--- /dev/null
+++ b/gfx/pics/088/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %10000000
+ db %00110001
+ db %00000000
+ db %00000000
+; 1
+ db %10000000
+ db %00111001
+ db %00000000
+ db %00000000
+; 2
+ db %01100000
+ db %10001100
+ db %00000001
+ db %00000000
+; 3
+ db %11100000
+ db %10111101
+ db %00000001
+ db %00000000
+; 0xd2dc2
diff --git a/gfx/pics/088/frames.asm b/gfx/pics/088/frames.asm
new file mode 100644
index 000000000..e20152574
--- /dev/null
+++ b/gfx/pics/088/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f, $20, $1c
+.frame3
+ db $02 ; bitmask
+ db $21, $22, $23, $24, $25, $26
+.frame4
+ db $03 ; bitmask
+ db $21, $22, $19, $1a, $23, $24, $1b, $1c, $25, $26
+; 0xd5448
diff --git a/gfx/frontpics/088.2bpp b/gfx/pics/088/front.2bpp
index f898f8efe..f898f8efe 100644
--- a/gfx/frontpics/088.2bpp
+++ b/gfx/pics/088/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/088.lz b/gfx/pics/088/front.lz
index 176f2da1c..176f2da1c 100644
--- a/gfx/frontpics/lz/088.lz
+++ b/gfx/pics/088/front.lz
Binary files differ
diff --git a/gfx/anim/088.2bpp b/gfx/pics/088/tiles.2bpp
index 905b9b50a..905b9b50a 100644
--- a/gfx/anim/088.2bpp
+++ b/gfx/pics/088/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/089/anim0.asm b/gfx/pics/089/anim0.asm
new file mode 100644
index 000000000..1bacba421
--- /dev/null
+++ b/gfx/pics/089/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 12
+ frame 2, 12
+ frame 3, 12
+ frame 1, 12
+ endanim
+; 0xd0dbc
diff --git a/gfx/pics/089/anim1.asm b/gfx/pics/089/anim1.asm
new file mode 100644
index 000000000..db37bf515
--- /dev/null
+++ b/gfx/pics/089/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 12
+ frame 4, 12
+ dorepeat 1
+ endanim
+; 0xd1c40
diff --git a/gfx/backpics/089.2bpp b/gfx/pics/089/back.2bpp
index 4ce72e6f9..4ce72e6f9 100644
--- a/gfx/backpics/089.2bpp
+++ b/gfx/pics/089/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/089.lz b/gfx/pics/089/back.lz
index 63a6aa8de..63a6aa8de 100644
--- a/gfx/backpics/lz/089.lz
+++ b/gfx/pics/089/back.lz
Binary files differ
diff --git a/gfx/pics/089/bitmask.asm b/gfx/pics/089/bitmask.asm
new file mode 100644
index 000000000..7530a8adf
--- /dev/null
+++ b/gfx/pics/089/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %01100000
+ db %00111110
+ db %10011111
+ db %10000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %01100000
+ db %00111110
+ db %10011111
+ db %11000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %01100000
+ db %00110000
+ db %00011000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2dd7
diff --git a/gfx/pics/089/frames.asm b/gfx/pics/089/frames.asm
new file mode 100644
index 000000000..1cab5f1f9
--- /dev/null
+++ b/gfx/pics/089/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $35, $41, $37, $38, $42, $43, $3b, $3c
+ db $3d, $44, $45, $46, $40
+.frame3
+ db $01 ; bitmask
+ db $31, $32, $33, $47, $35, $41, $37, $38, $48, $49, $3b, $3c
+ db $3d, $4a, $4b, $46, $40
+.frame4
+ db $02 ; bitmask
+ db $31, $32, $36, $37, $3b, $3c
+; 0xd548c
diff --git a/gfx/frontpics/089.2bpp b/gfx/pics/089/front.2bpp
index d9a2b508f..d9a2b508f 100644
--- a/gfx/frontpics/089.2bpp
+++ b/gfx/pics/089/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/089.lz b/gfx/pics/089/front.lz
index 3a4280270..3a4280270 100644
--- a/gfx/frontpics/lz/089.lz
+++ b/gfx/pics/089/front.lz
Binary files differ
diff --git a/gfx/anim/089.2bpp b/gfx/pics/089/tiles.2bpp
index 2b6292a11..2b6292a11 100644
--- a/gfx/anim/089.2bpp
+++ b/gfx/pics/089/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/090/anim0.asm b/gfx/pics/090/anim0.asm
new file mode 100644
index 000000000..71aa3d358
--- /dev/null
+++ b/gfx/pics/090/anim0.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd0dc5
diff --git a/gfx/pics/090/anim1.asm b/gfx/pics/090/anim1.asm
new file mode 100644
index 000000000..c32e9d19c
--- /dev/null
+++ b/gfx/pics/090/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 2, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1c49
diff --git a/gfx/backpics/090.2bpp b/gfx/pics/090/back.2bpp
index 73b8c54ce..73b8c54ce 100644
--- a/gfx/backpics/090.2bpp
+++ b/gfx/pics/090/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/090.lz b/gfx/pics/090/back.lz
index f0d93b8a8..f0d93b8a8 100644
--- a/gfx/backpics/lz/090.lz
+++ b/gfx/pics/090/back.lz
Binary files differ
diff --git a/gfx/pics/090/bitmask.asm b/gfx/pics/090/bitmask.asm
new file mode 100644
index 000000000..a925781f8
--- /dev/null
+++ b/gfx/pics/090/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00011000
+ db %01100011
+ db %00000000
+ db %00000000
+; 1
+ db %10011000
+ db %01110011
+ db %00000110
+ db %00000000
+; 0xd2ddf
diff --git a/gfx/pics/090/frames.asm b/gfx/pics/090/frames.asm
new file mode 100644
index 000000000..7896b134e
--- /dev/null
+++ b/gfx/pics/090/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $00, $1a, $1b, $1c, $1d
+.frame2
+ db $00 ; bitmask
+ db $1e, $00, $1f, $1b, $20, $1d
+.frame3
+ db $01 ; bitmask
+ db $1e, $00, $21, $1f, $1b, $22, $23, $1d, $24, $25
+; 0xd54ab
diff --git a/gfx/frontpics/090.2bpp b/gfx/pics/090/front.2bpp
index 0867198b1..0867198b1 100644
--- a/gfx/frontpics/090.2bpp
+++ b/gfx/pics/090/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/090.lz b/gfx/pics/090/front.lz
index 5a444cfa6..5a444cfa6 100644
--- a/gfx/frontpics/lz/090.lz
+++ b/gfx/pics/090/front.lz
Binary files differ
diff --git a/gfx/anim/090.2bpp b/gfx/pics/090/tiles.2bpp
index 132cf4d59..132cf4d59 100644
--- a/gfx/anim/090.2bpp
+++ b/gfx/pics/090/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/091/anim0.asm b/gfx/pics/091/anim0.asm
new file mode 100644
index 000000000..cc338f014
--- /dev/null
+++ b/gfx/pics/091/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 1, 09
+ frame 2, 09
+ dorepeat 1
+ frame 3, 09
+ endanim
+; 0xd0dd0
diff --git a/gfx/pics/091/anim1.asm b/gfx/pics/091/anim1.asm
new file mode 100644
index 000000000..e872bbc59
--- /dev/null
+++ b/gfx/pics/091/anim1.asm
@@ -0,0 +1,4 @@
+ frame 4, 52
+ dorepeat 1
+ endanim
+; 0xd1c4e
diff --git a/gfx/backpics/091.2bpp b/gfx/pics/091/back.2bpp
index a592f0d11..a592f0d11 100644
--- a/gfx/backpics/091.2bpp
+++ b/gfx/pics/091/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/091.lz b/gfx/pics/091/back.lz
index 655890df8..655890df8 100644
--- a/gfx/backpics/lz/091.lz
+++ b/gfx/pics/091/back.lz
Binary files differ
diff --git a/gfx/pics/091/bitmask.asm b/gfx/pics/091/bitmask.asm
new file mode 100644
index 000000000..3e7e506f8
--- /dev/null
+++ b/gfx/pics/091/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00111100
+ db %11111111
+ db %11011000
+ db %11111110
+ db %00011111
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00111100
+ db %11111111
+ db %11011000
+ db %11111010
+ db %00011111
+ db %00000000
+ db %00000000
+; 0xd2df4
diff --git a/gfx/pics/091/frames.asm b/gfx/pics/091/frames.asm
new file mode 100644
index 000000000..77b278e8b
--- /dev/null
+++ b/gfx/pics/091/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $00, $32, $33, $34, $35, $36, $37, $38, $00, $39, $3a
+ db $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46
+ db $47, $48, $49, $4a
+.frame2
+ db $01 ; bitmask
+ db $3f, $40
+.frame3
+ db $02 ; bitmask
+ db $31, $00, $32, $33, $34, $35, $36, $37, $38, $00, $39, $3a
+ db $3b, $3c, $3d, $3e, $4b, $41, $42, $43, $44, $45, $46, $47
+ db $48, $49, $4a
+.frame4
+ db $01 ; bitmask
+ db $4c, $40
+; 0xd54f2
diff --git a/gfx/frontpics/091.2bpp b/gfx/pics/091/front.2bpp
index 4d5a31579..4d5a31579 100644
--- a/gfx/frontpics/091.2bpp
+++ b/gfx/pics/091/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/091.lz b/gfx/pics/091/front.lz
index 83991eed6..83991eed6 100644
--- a/gfx/frontpics/lz/091.lz
+++ b/gfx/pics/091/front.lz
Binary files differ
diff --git a/gfx/anim/091.2bpp b/gfx/pics/091/tiles.2bpp
index a7307c376..a7307c376 100644
--- a/gfx/anim/091.2bpp
+++ b/gfx/pics/091/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/092/anim0.asm b/gfx/pics/092/anim0.asm
new file mode 100644
index 000000000..d9414d188
--- /dev/null
+++ b/gfx/pics/092/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 04
+ frame 1, 18
+ frame 2, 24
+ frame 1, 18
+ frame 0, 12
+ frame 1, 12
+ endanim
+; 0xd0ddd
diff --git a/gfx/pics/092/anim1.asm b/gfx/pics/092/anim1.asm
new file mode 100644
index 000000000..65dc17abf
--- /dev/null
+++ b/gfx/pics/092/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1c57
diff --git a/gfx/backpics/092.2bpp b/gfx/pics/092/back.2bpp
index 4d3329588..4d3329588 100644
--- a/gfx/backpics/092.2bpp
+++ b/gfx/pics/092/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/092.lz b/gfx/pics/092/back.lz
index ecb4af90d..ecb4af90d 100644
--- a/gfx/backpics/lz/092.lz
+++ b/gfx/pics/092/back.lz
Binary files differ
diff --git a/gfx/pics/092/bitmask.asm b/gfx/pics/092/bitmask.asm
new file mode 100644
index 000000000..3f6be31ae
--- /dev/null
+++ b/gfx/pics/092/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %00000000
+ db %00000110
+ db %10001111
+ db %10000111
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00001100
+ db %00000110
+ db %10000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2e02
diff --git a/gfx/pics/092/frames.asm b/gfx/pics/092/frames.asm
new file mode 100644
index 000000000..52ec4e101
--- /dev/null
+++ b/gfx/pics/092/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+.frame2
+ db $00 ; bitmask
+ db $31, $3d, $3e, $34, $3f, $40, $37, $41, $42, $43, $44, $3c
+.frame3
+ db $01 ; bitmask
+ db $45, $46, $47, $48, $49, $4a, $44
+; 0xd551a
diff --git a/gfx/frontpics/092.2bpp b/gfx/pics/092/front.2bpp
index ba50abc05..ba50abc05 100644
--- a/gfx/frontpics/092.2bpp
+++ b/gfx/pics/092/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/092.lz b/gfx/pics/092/front.lz
index f3d99339b..f3d99339b 100644
--- a/gfx/frontpics/lz/092.lz
+++ b/gfx/pics/092/front.lz
Binary files differ
diff --git a/gfx/anim/092.2bpp b/gfx/pics/092/tiles.2bpp
index d36b55011..d36b55011 100644
--- a/gfx/anim/092.2bpp
+++ b/gfx/pics/092/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/093/anim0.asm b/gfx/pics/093/anim0.asm
new file mode 100644
index 000000000..a46d0f0bc
--- /dev/null
+++ b/gfx/pics/093/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 10
+ frame 2, 10
+ frame 3, 44
+ frame 2, 10
+ frame 1, 10
+ endanim
+; 0xd0de8
diff --git a/gfx/pics/093/anim1.asm b/gfx/pics/093/anim1.asm
new file mode 100644
index 000000000..bf439b1e1
--- /dev/null
+++ b/gfx/pics/093/anim1.asm
@@ -0,0 +1,3 @@
+ frame 4, 58
+ endanim
+; 0xd1c5a
diff --git a/gfx/backpics/093.2bpp b/gfx/pics/093/back.2bpp
index ab3cde07e..ab3cde07e 100644
--- a/gfx/backpics/093.2bpp
+++ b/gfx/pics/093/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/093.lz b/gfx/pics/093/back.lz
index 660c0408b..660c0408b 100644
--- a/gfx/backpics/lz/093.lz
+++ b/gfx/pics/093/back.lz
Binary files differ
diff --git a/gfx/pics/093/bitmask.asm b/gfx/pics/093/bitmask.asm
new file mode 100644
index 000000000..99e55965f
--- /dev/null
+++ b/gfx/pics/093/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00111000
+ db %00000110
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %00111000
+ db %11001110
+ db %00100001
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 0xd2e11
diff --git a/gfx/pics/093/frames.asm b/gfx/pics/093/frames.asm
new file mode 100644
index 000000000..15c6ab978
--- /dev/null
+++ b/gfx/pics/093/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29
+.frame2
+ db $01 ; bitmask
+ db $2a, $2b, $00, $2c, $2d, $00, $2e, $2f, $30, $31
+.frame3
+ db $01 ; bitmask
+ db $32, $33, $00, $34, $35, $00, $2e, $36, $37, $31
+.frame4
+ db $02 ; bitmask
+ db $2e, $31
+; 0xd5542
diff --git a/gfx/frontpics/093.2bpp b/gfx/pics/093/front.2bpp
index f48d3630e..f48d3630e 100644
--- a/gfx/frontpics/093.2bpp
+++ b/gfx/pics/093/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/093.lz b/gfx/pics/093/front.lz
index 6bb6ab582..6bb6ab582 100644
--- a/gfx/frontpics/lz/093.lz
+++ b/gfx/pics/093/front.lz
Binary files differ
diff --git a/gfx/anim/093.2bpp b/gfx/pics/093/tiles.2bpp
index 9fa466dee..9fa466dee 100644
--- a/gfx/anim/093.2bpp
+++ b/gfx/pics/093/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/094/anim0.asm b/gfx/pics/094/anim0.asm
new file mode 100644
index 000000000..842c47c76
--- /dev/null
+++ b/gfx/pics/094/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 06
+ frame 4, 07
+ frame 2, 50
+ setrepeat 3
+ frame 0, 09
+ frame 3, 09
+ dorepeat 4
+ endanim
+; 0xd0df7
diff --git a/gfx/pics/094/anim1.asm b/gfx/pics/094/anim1.asm
new file mode 100644
index 000000000..09df5dca3
--- /dev/null
+++ b/gfx/pics/094/anim1.asm
@@ -0,0 +1,9 @@
+ setrepeat 2
+ frame 5, 02
+ frame 0, 02
+ dorepeat 1
+ frame 5, 09
+ frame 6, 09
+ frame 5, 09
+ endanim
+; 0xd1c69
diff --git a/gfx/backpics/094.2bpp b/gfx/pics/094/back.2bpp
index e3bbe9343..e3bbe9343 100644
--- a/gfx/backpics/094.2bpp
+++ b/gfx/pics/094/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/094.lz b/gfx/pics/094/back.lz
index d1ecca65e..d1ecca65e 100644
--- a/gfx/backpics/lz/094.lz
+++ b/gfx/pics/094/back.lz
Binary files differ
diff --git a/gfx/pics/094/bitmask.asm b/gfx/pics/094/bitmask.asm
new file mode 100644
index 000000000..3f1e0dc3a
--- /dev/null
+++ b/gfx/pics/094/bitmask.asm
@@ -0,0 +1,37 @@
+; 0
+ db %00011000
+ db %10000000
+ db %00100000
+ db %00000100
+ db %00000111
+; 1
+ db %01111011
+ db %11001101
+ db %10100010
+ db %01010111
+ db %00001111
+; 2
+ db %00100000
+ db %00001100
+ db %10000010
+ db %00010000
+ db %00001000
+; 3
+ db %01100011
+ db %11001101
+ db %10100010
+ db %01010111
+ db %00001000
+; 4
+ db %00000000
+ db %00001000
+ db %00000000
+ db %00100000
+ db %00000000
+; 5
+ db %00000000
+ db %00001000
+ db %10000010
+ db %00100000
+ db %00000000
+; 0xd2e2f
diff --git a/gfx/pics/094/frames.asm b/gfx/pics/094/frames.asm
new file mode 100644
index 000000000..8e3d48246
--- /dev/null
+++ b/gfx/pics/094/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b
+.frame2
+ db $01 ; bitmask
+ db $2c, $2d, $24, $25, $2e, $2f, $30, $31, $32, $33, $26, $34
+ db $27, $35, $36, $37, $28, $38, $39, $29, $2a, $2b, $3a
+.frame3
+ db $02 ; bitmask
+ db $2e, $31, $32, $34, $35, $38, $3a
+.frame4
+ db $03 ; bitmask
+ db $2c, $2d, $2e, $2f, $30, $31, $32, $33, $26, $34, $27, $35
+ db $36, $37, $28, $38, $39, $3a
+.frame5
+ db $04 ; bitmask
+ db $3b, $3c
+.frame6
+ db $05 ; bitmask
+ db $3d, $3e, $3f, $40
+; 0xd5592
diff --git a/gfx/frontpics/094.2bpp b/gfx/pics/094/front.2bpp
index ff799418d..ff799418d 100644
--- a/gfx/frontpics/094.2bpp
+++ b/gfx/pics/094/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/094.lz b/gfx/pics/094/front.lz
index a11754646..a11754646 100644
--- a/gfx/frontpics/lz/094.lz
+++ b/gfx/pics/094/front.lz
Binary files differ
diff --git a/gfx/anim/094.2bpp b/gfx/pics/094/tiles.2bpp
index 9a39f1bd7..9a39f1bd7 100644
--- a/gfx/anim/094.2bpp
+++ b/gfx/pics/094/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/095/anim0.asm b/gfx/pics/095/anim0.asm
new file mode 100644
index 000000000..a5b18f5b6
--- /dev/null
+++ b/gfx/pics/095/anim0.asm
@@ -0,0 +1,10 @@
+ setrepeat 2
+ frame 1, 12
+ frame 2, 12
+ frame 3, 12
+ dorepeat 1
+ frame 4, 12
+ frame 5, 12
+ frame 6, 12
+ endanim
+; 0xd0e08
diff --git a/gfx/pics/095/anim1.asm b/gfx/pics/095/anim1.asm
new file mode 100644
index 000000000..e4ae7acac
--- /dev/null
+++ b/gfx/pics/095/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 10
+ frame 7, 10
+ frame 8, 10
+ dorepeat 1
+ endanim
+; 0xd1c74
diff --git a/gfx/backpics/095.2bpp b/gfx/pics/095/back.2bpp
index 019a48465..019a48465 100644
--- a/gfx/backpics/095.2bpp
+++ b/gfx/pics/095/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/095.lz b/gfx/pics/095/back.lz
index 05df1a96b..05df1a96b 100644
--- a/gfx/backpics/lz/095.lz
+++ b/gfx/pics/095/back.lz
Binary files differ
diff --git a/gfx/pics/095/bitmask.asm b/gfx/pics/095/bitmask.asm
new file mode 100644
index 000000000..20de1aacf
--- /dev/null
+++ b/gfx/pics/095/bitmask.asm
@@ -0,0 +1,65 @@
+; 0
+ db %00000000
+ db %00001010
+ db %11100110
+ db %01110000
+ db %11000000
+ db %01100000
+ db %00000000
+; 1
+ db %00000000
+ db %00001010
+ db %11100110
+ db %01110000
+ db %11000001
+ db %01100001
+ db %00000000
+; 2
+ db %00000000
+ db %00001010
+ db %00000110
+ db %00000000
+ db %00000100
+ db %00000010
+ db %00000001
+; 3
+ db %00000000
+ db %00000000
+ db %11100000
+ db %01110000
+ db %11000000
+ db %01100000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %11100000
+ db %01110000
+ db %11000001
+ db %01100001
+ db %00000000
+; 5
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00000000
+; 6
+ db %00000000
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 7
+ db %00000000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2e67
diff --git a/gfx/pics/095/frames.asm b/gfx/pics/095/frames.asm
new file mode 100644
index 000000000..4ed313016
--- /dev/null
+++ b/gfx/pics/095/frames.asm
@@ -0,0 +1,35 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $3f, $40, $41, $42, $43, $44, $45, $3b
+ db $3c, $46, $3d, $3e
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33, $34, $47, $48, $49
+.frame4
+ db $03 ; bitmask
+ db $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e
+.frame5
+ db $04 ; bitmask
+ db $3f, $40, $41, $42, $43, $44, $45, $3b, $3c, $46, $3d, $3e
+.frame6
+ db $05 ; bitmask
+ db $47
+.frame7
+ db $06 ; bitmask
+ db $4a
+.frame8
+ db $07 ; bitmask
+ db $4b, $4c
+; 0xd55e9
diff --git a/gfx/frontpics/095.2bpp b/gfx/pics/095/front.2bpp
index c307d3288..c307d3288 100644
--- a/gfx/frontpics/095.2bpp
+++ b/gfx/pics/095/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/095.lz b/gfx/pics/095/front.lz
index dc3bfca6e..dc3bfca6e 100644
--- a/gfx/frontpics/lz/095.lz
+++ b/gfx/pics/095/front.lz
Binary files differ
diff --git a/gfx/anim/095.2bpp b/gfx/pics/095/tiles.2bpp
index e3daeee26..e3daeee26 100644
--- a/gfx/anim/095.2bpp
+++ b/gfx/pics/095/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/096/anim0.asm b/gfx/pics/096/anim0.asm
new file mode 100644
index 000000000..badc99074
--- /dev/null
+++ b/gfx/pics/096/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 08
+ frame 2, 08
+ frame 3, 08
+ frame 4, 08
+ frame 0, 05
+ frame 1, 05
+ frame 2, 05
+ frame 3, 05
+ frame 4, 05
+ endanim
+; 0xd0e1b
diff --git a/gfx/pics/096/anim1.asm b/gfx/pics/096/anim1.asm
new file mode 100644
index 000000000..247ecb8fe
--- /dev/null
+++ b/gfx/pics/096/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 06
+ frame 5, 06
+ dorepeat 1
+ frame 0, 08
+ frame 5, 08
+ endanim
+; 0xd1c81
diff --git a/gfx/backpics/096.2bpp b/gfx/pics/096/back.2bpp
index f29dd8e47..f29dd8e47 100644
--- a/gfx/backpics/096.2bpp
+++ b/gfx/pics/096/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/096.lz b/gfx/pics/096/back.lz
index a4218ade7..a4218ade7 100644
--- a/gfx/backpics/lz/096.lz
+++ b/gfx/pics/096/back.lz
Binary files differ
diff --git a/gfx/pics/096/bitmask.asm b/gfx/pics/096/bitmask.asm
new file mode 100644
index 000000000..bd9fa59e6
--- /dev/null
+++ b/gfx/pics/096/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00010000
+ db %10000110
+ db %00000001
+; 1
+ db %00011000
+ db %10000110
+ db %00010000
+ db %10000110
+ db %00000001
+; 2
+ db %00011000
+ db %10000110
+ db %00000000
+ db %10001110
+ db %00000011
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %10001110
+ db %00000011
+; 4
+ db %10000000
+ db %00000001
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd2e80
diff --git a/gfx/pics/096/frames.asm b/gfx/pics/096/frames.asm
new file mode 100644
index 000000000..637706e1b
--- /dev/null
+++ b/gfx/pics/096/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28
+.frame2
+ db $01 ; bitmask
+ db $29, $2a, $2b, $2c, $2d, $24, $25, $26, $27, $28
+.frame3
+ db $02 ; bitmask
+ db $29, $2a, $2b, $2c, $2d, $2e, $2f, $30, $27, $31, $32
+.frame4
+ db $03 ; bitmask
+ db $2e, $2f, $30, $27, $31, $32
+.frame5
+ db $04 ; bitmask
+ db $33, $34, $35, $36
+; 0xd561c
diff --git a/gfx/frontpics/096.2bpp b/gfx/pics/096/front.2bpp
index 203f09f18..203f09f18 100644
--- a/gfx/frontpics/096.2bpp
+++ b/gfx/pics/096/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/096.lz b/gfx/pics/096/front.lz
index cf3f87571..cf3f87571 100644
--- a/gfx/frontpics/lz/096.lz
+++ b/gfx/pics/096/front.lz
Binary files differ
diff --git a/gfx/anim/096.2bpp b/gfx/pics/096/tiles.2bpp
index 76947b04c..76947b04c 100644
--- a/gfx/anim/096.2bpp
+++ b/gfx/pics/096/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/097/anim0.asm b/gfx/pics/097/anim0.asm
new file mode 100644
index 000000000..b6c3e6463
--- /dev/null
+++ b/gfx/pics/097/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 1, 15
+ frame 2, 15
+ frame 3, 15
+ dorepeat 1
+ endanim
+; 0xd0e26
diff --git a/gfx/pics/097/anim1.asm b/gfx/pics/097/anim1.asm
new file mode 100644
index 000000000..4d981c442
--- /dev/null
+++ b/gfx/pics/097/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1c8a
diff --git a/gfx/backpics/097.2bpp b/gfx/pics/097/back.2bpp
index c6efc5d2f..c6efc5d2f 100644
--- a/gfx/backpics/097.2bpp
+++ b/gfx/pics/097/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/097.lz b/gfx/pics/097/back.lz
index b69fcadf7..b69fcadf7 100644
--- a/gfx/backpics/lz/097.lz
+++ b/gfx/pics/097/back.lz
Binary files differ
diff --git a/gfx/pics/097/bitmask.asm b/gfx/pics/097/bitmask.asm
new file mode 100644
index 000000000..4b510102e
--- /dev/null
+++ b/gfx/pics/097/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00011110
+ db %00000110
+ db %10000001
+ db %01100000
+ db %01110000
+ db %00011000
+ db %00000000
+; 1
+ db %00011110
+ db %00000110
+ db %10000001
+ db %10000000
+ db %11100000
+ db %00100000
+ db %00000000
+; 2
+ db %00011110
+ db %00000110
+ db %10000001
+ db %10000000
+ db %11100001
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000010
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2e9c
diff --git a/gfx/pics/097/frames.asm b/gfx/pics/097/frames.asm
new file mode 100644
index 000000000..dd8e204ec
--- /dev/null
+++ b/gfx/pics/097/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $3f, $40, $41, $42
+ db $43
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $44, $45, $46, $47
+ db $48
+.frame4
+ db $03 ; bitmask
+ db $49, $4a
+; 0xd5653
diff --git a/gfx/frontpics/097.2bpp b/gfx/pics/097/front.2bpp
index c052c2dbc..c052c2dbc 100644
--- a/gfx/frontpics/097.2bpp
+++ b/gfx/pics/097/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/097.lz b/gfx/pics/097/front.lz
index ca6ec0608..ca6ec0608 100644
--- a/gfx/frontpics/lz/097.lz
+++ b/gfx/pics/097/front.lz
Binary files differ
diff --git a/gfx/anim/097.2bpp b/gfx/pics/097/tiles.2bpp
index 54c214092..54c214092 100644
--- a/gfx/anim/097.2bpp
+++ b/gfx/pics/097/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/098/anim0.asm b/gfx/pics/098/anim0.asm
new file mode 100644
index 000000000..22f5657e5
--- /dev/null
+++ b/gfx/pics/098/anim0.asm
@@ -0,0 +1,11 @@
+ frame 5, 18
+ frame 0, 06
+ setrepeat 2
+ frame 0, 06
+ frame 1, 04
+ frame 2, 03
+ frame 3, 04
+ frame 4, 03
+ dorepeat 3
+ endanim
+; 0xd0e39
diff --git a/gfx/pics/098/anim1.asm b/gfx/pics/098/anim1.asm
new file mode 100644
index 000000000..0b89ffc33
--- /dev/null
+++ b/gfx/pics/098/anim1.asm
@@ -0,0 +1,5 @@
+ frame 0, 06
+ frame 7, 06
+ dorepeat 3
+ endanim
+; 0xd1c91
diff --git a/gfx/backpics/098.2bpp b/gfx/pics/098/back.2bpp
index 87c42ce57..87c42ce57 100644
--- a/gfx/backpics/098.2bpp
+++ b/gfx/pics/098/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/098.lz b/gfx/pics/098/back.lz
index 5954b413d..5954b413d 100644
--- a/gfx/backpics/lz/098.lz
+++ b/gfx/pics/098/back.lz
Binary files differ
diff --git a/gfx/pics/098/bitmask.asm b/gfx/pics/098/bitmask.asm
new file mode 100644
index 000000000..377109d09
--- /dev/null
+++ b/gfx/pics/098/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00011000
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %00001000
+ db %00000011
+ db %00000000
+; 3
+ db %00000110
+ db %00011000
+ db %00000011
+ db %00000000
+; 4
+ db %00000110
+ db %00001000
+ db %00000011
+ db %00000000
+; 5
+ db %00000000
+ db %00100001
+ db %00000000
+ db %00000000
+; 0xd2eb4
diff --git a/gfx/pics/098/frames.asm b/gfx/pics/098/frames.asm
new file mode 100644
index 000000000..07bd6171a
--- /dev/null
+++ b/gfx/pics/098/frames.asm
@@ -0,0 +1,29 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $00 ; bitmask
+ db $1b, $1c
+.frame3
+ db $01 ; bitmask
+ db $1d, $1e, $1f, $20
+.frame4
+ db $02 ; bitmask
+ db $21, $22, $23
+.frame5
+ db $03 ; bitmask
+ db $19, $1a, $1d, $1e, $1f, $20
+.frame6
+ db $04 ; bitmask
+ db $1b, $1c, $21, $22, $23
+.frame7
+ db $05 ; bitmask
+ db $24, $25
+; 0xd5680
diff --git a/gfx/frontpics/098.2bpp b/gfx/pics/098/front.2bpp
index bcb043c04..bcb043c04 100644
--- a/gfx/frontpics/098.2bpp
+++ b/gfx/pics/098/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/098.lz b/gfx/pics/098/front.lz
index c0f968fa5..c0f968fa5 100644
--- a/gfx/frontpics/lz/098.lz
+++ b/gfx/pics/098/front.lz
Binary files differ
diff --git a/gfx/anim/098.2bpp b/gfx/pics/098/tiles.2bpp
index 1622a9087..1622a9087 100644
--- a/gfx/anim/098.2bpp
+++ b/gfx/pics/098/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/099/anim0.asm b/gfx/pics/099/anim0.asm
new file mode 100644
index 000000000..2be7b62be
--- /dev/null
+++ b/gfx/pics/099/anim0.asm
@@ -0,0 +1,10 @@
+ setrepeat 2
+ frame 1, 11
+ frame 2, 11
+ dorepeat 1
+ frame 0, 11
+ frame 2, 11
+ frame 0, 15
+ frame 2, 15
+ endanim
+; 0xd0e4a
diff --git a/gfx/pics/099/anim1.asm b/gfx/pics/099/anim1.asm
new file mode 100644
index 000000000..25af73bc9
--- /dev/null
+++ b/gfx/pics/099/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 4
+ frame 0, 10
+ frame 3, 10
+ dorepeat 1
+ endanim
+; 0xd1c9a
diff --git a/gfx/backpics/099.2bpp b/gfx/pics/099/back.2bpp
index c06c1055f..c06c1055f 100644
--- a/gfx/backpics/099.2bpp
+++ b/gfx/pics/099/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/099.lz b/gfx/pics/099/back.lz
index aceed0679..aceed0679 100644
--- a/gfx/backpics/lz/099.lz
+++ b/gfx/pics/099/back.lz
Binary files differ
diff --git a/gfx/pics/099/bitmask.asm b/gfx/pics/099/bitmask.asm
new file mode 100644
index 000000000..b8672c447
--- /dev/null
+++ b/gfx/pics/099/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11110000
+ db %11111101
+ db %11111011
+ db %00000001
+; 1
+ db %00000000
+ db %00011100
+ db %00011100
+ db %10001111
+ db %00000111
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00001000
+ db %00000110
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2ec9
diff --git a/gfx/pics/099/frames.asm b/gfx/pics/099/frames.asm
new file mode 100644
index 000000000..160c92a57
--- /dev/null
+++ b/gfx/pics/099/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $31, $32, $33, $34, $00, $35, $36, $37, $38, $39
+ db $3a, $00, $3b, $3c, $3d, $3e, $3f
+.frame2
+ db $01 ; bitmask
+ db $40, $41, $42, $43, $44, $45, $46, $47, $48, $00, $49, $4a
+ db $4b, $00
+.frame3
+ db $02 ; bitmask
+ db $4c, $4d, $4e, $4f, $50
+; 0xd56af
diff --git a/gfx/frontpics/099.2bpp b/gfx/pics/099/front.2bpp
index ad2db18e0..ad2db18e0 100644
--- a/gfx/frontpics/099.2bpp
+++ b/gfx/pics/099/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/099.lz b/gfx/pics/099/front.lz
index 590bd05ee..590bd05ee 100644
--- a/gfx/frontpics/lz/099.lz
+++ b/gfx/pics/099/front.lz
Binary files differ
diff --git a/gfx/anim/099.2bpp b/gfx/pics/099/tiles.2bpp
index 713a4165e..713a4165e 100644
--- a/gfx/anim/099.2bpp
+++ b/gfx/pics/099/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/100/anim0.asm b/gfx/pics/100/anim0.asm
new file mode 100644
index 000000000..fdb49b9af
--- /dev/null
+++ b/gfx/pics/100/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ frame 1, 08
+ setrepeat 2
+ frame 0, 06
+ frame 1, 04
+ dorepeat 3
+ endanim
+; 0xd0e57
diff --git a/gfx/pics/100/anim1.asm b/gfx/pics/100/anim1.asm
new file mode 100644
index 000000000..be799fe4a
--- /dev/null
+++ b/gfx/pics/100/anim1.asm
@@ -0,0 +1,7 @@
+ frame 1, 04
+ setrepeat 2
+ frame 2, 08
+ frame 0, 08
+ dorepeat 2
+ endanim
+; 0xd1ca5
diff --git a/gfx/backpics/100.2bpp b/gfx/pics/100/back.2bpp
index f8e99db69..f8e99db69 100644
--- a/gfx/backpics/100.2bpp
+++ b/gfx/pics/100/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/100.lz b/gfx/pics/100/back.lz
index fe102da9a..fe102da9a 100644
--- a/gfx/backpics/lz/100.lz
+++ b/gfx/pics/100/back.lz
Binary files differ
diff --git a/gfx/pics/100/bitmask.asm b/gfx/pics/100/bitmask.asm
new file mode 100644
index 000000000..509d7b623
--- /dev/null
+++ b/gfx/pics/100/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %11000000
+ db %01111001
+ db %01000111
+ db %00000000
+; 1
+ db %01000000
+ db %00001000
+ db %00000001
+ db %00000000
+; 0xd2ed1
diff --git a/gfx/pics/100/frames.asm b/gfx/pics/100/frames.asm
new file mode 100644
index 000000000..79cad4ecd
--- /dev/null
+++ b/gfx/pics/100/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $00, $1f, $20, $21, $00
+.frame2
+ db $01 ; bitmask
+ db $22, $23, $24
+; 0xd56c3
diff --git a/gfx/frontpics/100.2bpp b/gfx/pics/100/front.2bpp
index 30dcdfd60..30dcdfd60 100644
--- a/gfx/frontpics/100.2bpp
+++ b/gfx/pics/100/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/100.lz b/gfx/pics/100/front.lz
index 94f35f9aa..94f35f9aa 100644
--- a/gfx/frontpics/lz/100.lz
+++ b/gfx/pics/100/front.lz
Binary files differ
diff --git a/gfx/anim/100.2bpp b/gfx/pics/100/tiles.2bpp
index 662b92c8a..662b92c8a 100644
--- a/gfx/anim/100.2bpp
+++ b/gfx/pics/100/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/101/anim0.asm b/gfx/pics/101/anim0.asm
new file mode 100644
index 000000000..18b31e305
--- /dev/null
+++ b/gfx/pics/101/anim0.asm
@@ -0,0 +1,4 @@
+ frame 1, 05
+ frame 2, 40
+ endanim
+; 0xd0e5c
diff --git a/gfx/pics/101/anim1.asm b/gfx/pics/101/anim1.asm
new file mode 100644
index 000000000..30d1b1788
--- /dev/null
+++ b/gfx/pics/101/anim1.asm
@@ -0,0 +1,3 @@
+ frame 3, 45
+ endanim
+; 0xd1ca8
diff --git a/gfx/backpics/101.2bpp b/gfx/pics/101/back.2bpp
index e737b1d90..e737b1d90 100644
--- a/gfx/backpics/101.2bpp
+++ b/gfx/pics/101/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/101.lz b/gfx/pics/101/back.lz
index 9161c8884..9161c8884 100644
--- a/gfx/backpics/lz/101.lz
+++ b/gfx/pics/101/back.lz
Binary files differ
diff --git a/gfx/pics/101/bitmask.asm b/gfx/pics/101/bitmask.asm
new file mode 100644
index 000000000..00990061d
--- /dev/null
+++ b/gfx/pics/101/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %01110011
+ db %00000110
+ db %00000000
+; 1
+ db %11000000
+ db %01110011
+ db %00000110
+ db %00000000
+; 2
+ db %00000000
+ db %01100011
+ db %00000100
+ db %00000000
+; 0xd2edd
diff --git a/gfx/pics/101/frames.asm b/gfx/pics/101/frames.asm
new file mode 100644
index 000000000..cdb569481
--- /dev/null
+++ b/gfx/pics/101/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f
+.frame2
+ db $01 ; bitmask
+ db $20, $21, $19, $1a, $22, $1c, $1d, $23, $1f
+.frame3
+ db $02 ; bitmask
+ db $19, $1a, $1c, $1d, $1f
+; 0xd56e1
diff --git a/gfx/frontpics/101.2bpp b/gfx/pics/101/front.2bpp
index 155955549..155955549 100644
--- a/gfx/frontpics/101.2bpp
+++ b/gfx/pics/101/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/101.lz b/gfx/pics/101/front.lz
index 2d86aa4ac..2d86aa4ac 100644
--- a/gfx/frontpics/lz/101.lz
+++ b/gfx/pics/101/front.lz
Binary files differ
diff --git a/gfx/anim/101.2bpp b/gfx/pics/101/tiles.2bpp
index 6df57d1e5..6df57d1e5 100644
--- a/gfx/anim/101.2bpp
+++ b/gfx/pics/101/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/102/anim0.asm b/gfx/pics/102/anim0.asm
new file mode 100644
index 000000000..0f0c10729
--- /dev/null
+++ b/gfx/pics/102/anim0.asm
@@ -0,0 +1,17 @@
+ frame 0, 08
+ setrepeat 2
+ frame 1, 04
+ frame 2, 04
+ dorepeat 2
+ frame 0, 01
+ setrepeat 3
+ frame 1, 03
+ frame 2, 03
+ dorepeat 7
+ frame 0, 01
+ frame 1, 04
+ frame 2, 04
+ frame 0, 08
+ frame 3, 08
+ endanim
+; 0xd0e7b
diff --git a/gfx/pics/102/anim1.asm b/gfx/pics/102/anim1.asm
new file mode 100644
index 000000000..ef839f5d1
--- /dev/null
+++ b/gfx/pics/102/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1cb1
diff --git a/gfx/backpics/102.2bpp b/gfx/pics/102/back.2bpp
index 5437619ef..5437619ef 100644
--- a/gfx/backpics/102.2bpp
+++ b/gfx/pics/102/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/102.lz b/gfx/pics/102/back.lz
index 1877fcea1..1877fcea1 100644
--- a/gfx/backpics/lz/102.lz
+++ b/gfx/pics/102/back.lz
Binary files differ
diff --git a/gfx/pics/102/bitmask.asm b/gfx/pics/102/bitmask.asm
new file mode 100644
index 000000000..88506f525
--- /dev/null
+++ b/gfx/pics/102/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00110000
+ db %00011010
+ db %11011111
+ db %01100001
+ db %11010011
+ db %11110001
+ db %00000000
+; 1
+ db %01111000
+ db %00011011
+ db %11011111
+ db %01100001
+ db %11010011
+ db %11110001
+ db %00000000
+; 2
+ db %00010000
+ db %00011000
+ db %11001011
+ db %00100000
+ db %11000000
+ db %11010001
+ db %00000000
+; 0xd2ef2
diff --git a/gfx/pics/102/frames.asm b/gfx/pics/102/frames.asm
new file mode 100644
index 000000000..c0ef904a0
--- /dev/null
+++ b/gfx/pics/102/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $35, $35, $38, $39, $35
+ db $3a, $35, $3b, $3c, $3d, $3e, $3f, $40, $35, $41, $42, $43
+ db $44
+.frame2
+ db $01 ; bitmask
+ db $15, $31, $32, $02, $45, $33, $34, $35, $36, $37, $35, $35
+ db $38, $39, $34, $3a, $34, $3b, $3c, $32, $3e, $3f, $34, $3a
+ db $41, $42, $43, $44
+.frame3
+ db $02 ; bitmask
+ db $46, $34, $47, $36, $48, $49, $39, $35, $4a, $4b, $40, $4c
+ db $41, $4d, $4e
+; 0xd572e
diff --git a/gfx/frontpics/102.2bpp b/gfx/pics/102/front.2bpp
index c238ee277..c238ee277 100644
--- a/gfx/frontpics/102.2bpp
+++ b/gfx/pics/102/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/102.lz b/gfx/pics/102/front.lz
index 9d018e7c4..9d018e7c4 100644
--- a/gfx/frontpics/lz/102.lz
+++ b/gfx/pics/102/front.lz
Binary files differ
diff --git a/gfx/anim/102.2bpp b/gfx/pics/102/tiles.2bpp
index 6b73cf917..6b73cf917 100644
--- a/gfx/anim/102.2bpp
+++ b/gfx/pics/102/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/103/anim0.asm b/gfx/pics/103/anim0.asm
new file mode 100644
index 000000000..92f11a117
--- /dev/null
+++ b/gfx/pics/103/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 07
+ frame 0, 07
+ frame 1, 07
+ setrepeat 3
+ frame 2, 06
+ frame 0, 06
+ dorepeat 4
+ endanim
+; 0xd0e8a
diff --git a/gfx/pics/103/anim1.asm b/gfx/pics/103/anim1.asm
new file mode 100644
index 000000000..3e5542c97
--- /dev/null
+++ b/gfx/pics/103/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 4
+ frame 0, 06
+ frame 1, 06
+ dorepeat 1
+ endanim
+; 0xd1cba
diff --git a/gfx/backpics/103.2bpp b/gfx/pics/103/back.2bpp
index 1a71f91bf..1a71f91bf 100644
--- a/gfx/backpics/103.2bpp
+++ b/gfx/pics/103/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/103.lz b/gfx/pics/103/back.lz
index abf6c97dd..abf6c97dd 100644
--- a/gfx/backpics/lz/103.lz
+++ b/gfx/pics/103/back.lz
Binary files differ
diff --git a/gfx/pics/103/bitmask.asm b/gfx/pics/103/bitmask.asm
new file mode 100644
index 000000000..117b07532
--- /dev/null
+++ b/gfx/pics/103/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %00000000
+ db %00001110
+ db %10000111
+ db %11000011
+ db %11100001
+ db %00000000
+ db %00000000
+; 1
+ db %10000111
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00011000
+ db %00000000
+; 0xd2f00
diff --git a/gfx/pics/103/frames.asm b/gfx/pics/103/frames.asm
new file mode 100644
index 000000000..6b815a8aa
--- /dev/null
+++ b/gfx/pics/103/frames.asm
@@ -0,0 +1,10 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f
+.frame2
+ db $01 ; bitmask
+ db $40, $41, $42, $43, $44, $45, $46
+; 0xd574a
diff --git a/gfx/frontpics/103.2bpp b/gfx/pics/103/front.2bpp
index ad0844e74..ad0844e74 100644
--- a/gfx/frontpics/103.2bpp
+++ b/gfx/pics/103/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/103.lz b/gfx/pics/103/front.lz
index b4056b175..b4056b175 100644
--- a/gfx/frontpics/lz/103.lz
+++ b/gfx/pics/103/front.lz
Binary files differ
diff --git a/gfx/anim/103.2bpp b/gfx/pics/103/tiles.2bpp
index 81c0a7ce9..81c0a7ce9 100644
--- a/gfx/anim/103.2bpp
+++ b/gfx/pics/103/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/104/anim0.asm b/gfx/pics/104/anim0.asm
new file mode 100644
index 000000000..2af8c522c
--- /dev/null
+++ b/gfx/pics/104/anim0.asm
@@ -0,0 +1,12 @@
+ frame 0, 04
+ frame 5, 19
+ frame 1, 08
+ frame 2, 06
+ frame 6, 03
+ frame 3, 02
+ frame 4, 40
+ frame 3, 02
+ frame 6, 02
+ frame 1, 08
+ endanim
+; 0xd0e9f
diff --git a/gfx/pics/104/anim1.asm b/gfx/pics/104/anim1.asm
new file mode 100644
index 000000000..fb3b0b3ba
--- /dev/null
+++ b/gfx/pics/104/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd1cc3
diff --git a/gfx/backpics/104.2bpp b/gfx/pics/104/back.2bpp
index 16e4d70d6..16e4d70d6 100644
--- a/gfx/backpics/104.2bpp
+++ b/gfx/pics/104/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/104.lz b/gfx/pics/104/back.lz
index fc9931417..fc9931417 100644
--- a/gfx/backpics/lz/104.lz
+++ b/gfx/pics/104/back.lz
Binary files differ
diff --git a/gfx/pics/104/bitmask.asm b/gfx/pics/104/bitmask.asm
new file mode 100644
index 000000000..81549a704
--- /dev/null
+++ b/gfx/pics/104/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %10001110
+ db %00010001
+ db %00000000
+ db %00000000
+; 1
+ db %10011110
+ db %00010011
+ db %00000000
+ db %00000000
+; 2
+ db %10101111
+ db %00000001
+ db %00000000
+ db %00000000
+; 3
+ db %10001110
+ db %00000001
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+; 5
+ db %10001111
+ db %00000001
+ db %00000000
+ db %00000000
+; 0xd2f18
diff --git a/gfx/pics/104/frames.asm b/gfx/pics/104/frames.asm
new file mode 100644
index 000000000..e5ef22631
--- /dev/null
+++ b/gfx/pics/104/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $19, $04, $00, $1f, $1c, $20, $21, $1e
+.frame3
+ db $02 ; bitmask
+ db $22, $19, $23, $04, $24, $25, $26
+.frame4
+ db $03 ; bitmask
+ db $19, $23, $04, $25, $26
+.frame5
+ db $04 ; bitmask
+ db $27
+.frame6
+ db $05 ; bitmask
+ db $28, $19, $23, $04, $25, $26
+; 0xd577d
diff --git a/gfx/frontpics/104.2bpp b/gfx/pics/104/front.2bpp
index 069433f93..069433f93 100644
--- a/gfx/frontpics/104.2bpp
+++ b/gfx/pics/104/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/104.lz b/gfx/pics/104/front.lz
index 9de9f7732..9de9f7732 100644
--- a/gfx/frontpics/lz/104.lz
+++ b/gfx/pics/104/front.lz
Binary files differ
diff --git a/gfx/anim/104.2bpp b/gfx/pics/104/tiles.2bpp
index cb5f693a8..cb5f693a8 100644
--- a/gfx/anim/104.2bpp
+++ b/gfx/pics/104/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/105/anim0.asm b/gfx/pics/105/anim0.asm
new file mode 100644
index 000000000..23c9d2f92
--- /dev/null
+++ b/gfx/pics/105/anim0.asm
@@ -0,0 +1,10 @@
+ setrepeat 3
+ frame 1, 07
+ frame 2, 07
+ dorepeat 1
+ setrepeat 2
+ frame 3, 07
+ frame 4, 07
+ dorepeat 5
+ endanim
+; 0xd0eb0
diff --git a/gfx/pics/105/anim1.asm b/gfx/pics/105/anim1.asm
new file mode 100644
index 000000000..5cdcd7594
--- /dev/null
+++ b/gfx/pics/105/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 15
+ frame 5, 15
+ dorepeat 1
+ endanim
+; 0xd1ccc
diff --git a/gfx/backpics/105.2bpp b/gfx/pics/105/back.2bpp
index 29025344b..29025344b 100644
--- a/gfx/backpics/105.2bpp
+++ b/gfx/pics/105/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/105.lz b/gfx/pics/105/back.lz
index 90a297b3d..90a297b3d 100644
--- a/gfx/backpics/lz/105.lz
+++ b/gfx/pics/105/back.lz
Binary files differ
diff --git a/gfx/pics/105/bitmask.asm b/gfx/pics/105/bitmask.asm
new file mode 100644
index 000000000..2d53ac4d7
--- /dev/null
+++ b/gfx/pics/105/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %11000111
+ db %10010000
+ db %11000111
+ db %10110110
+ db %00001001
+; 1
+ db %11000111
+ db %10010000
+ db %11000011
+ db %10111110
+ db %00001111
+; 2
+ db %11000111
+ db %00010000
+ db %00000100
+ db %00000000
+ db %00000000
+; 3
+ db %11000111
+ db %00010000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %11000011
+ db %00110000
+ db %00001000
+; 0xd2f31
diff --git a/gfx/pics/105/frames.asm b/gfx/pics/105/frames.asm
new file mode 100644
index 000000000..7f0a506f1
--- /dev/null
+++ b/gfx/pics/105/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34, $35, $36
+.frame2
+ db $01 ; bitmask
+ db $37, $38, $03, $39, $3a, $3b, $2a, $2b, $2c, $2e, $2f, $30
+ db $31, $3c, $32, $33, $34, $35, $3d, $3e, $36
+.frame3
+ db $02 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2d
+.frame4
+ db $03 ; bitmask
+ db $37, $38, $03, $39, $3a, $3b
+.frame5
+ db $04 ; bitmask
+ db $2b, $2c, $2e, $2f, $32, $33, $36
+; 0xd57c8
diff --git a/gfx/frontpics/105.2bpp b/gfx/pics/105/front.2bpp
index 672f94098..672f94098 100644
--- a/gfx/frontpics/105.2bpp
+++ b/gfx/pics/105/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/105.lz b/gfx/pics/105/front.lz
index 59f984bcd..59f984bcd 100644
--- a/gfx/frontpics/lz/105.lz
+++ b/gfx/pics/105/front.lz
Binary files differ
diff --git a/gfx/anim/105.2bpp b/gfx/pics/105/tiles.2bpp
index 7a9dbc04f..7a9dbc04f 100644
--- a/gfx/anim/105.2bpp
+++ b/gfx/pics/105/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/106/anim0.asm b/gfx/pics/106/anim0.asm
new file mode 100644
index 000000000..4260d7753
--- /dev/null
+++ b/gfx/pics/106/anim0.asm
@@ -0,0 +1,13 @@
+ frame 0, 04
+ frame 5, 24
+ frame 1, 12
+ frame 2, 06
+ frame 3, 10
+ frame 4, 06
+ frame 1, 05
+ frame 2, 05
+ frame 3, 05
+ frame 4, 05
+ frame 1, 08
+ endanim
+; 0xd0ec7
diff --git a/gfx/pics/106/anim1.asm b/gfx/pics/106/anim1.asm
new file mode 100644
index 000000000..4d7d191bf
--- /dev/null
+++ b/gfx/pics/106/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd1cd5
diff --git a/gfx/backpics/106.2bpp b/gfx/pics/106/back.2bpp
index f464eb4c8..f464eb4c8 100644
--- a/gfx/backpics/106.2bpp
+++ b/gfx/pics/106/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/106.lz b/gfx/pics/106/back.lz
index 4847a1496..4847a1496 100644
--- a/gfx/backpics/lz/106.lz
+++ b/gfx/pics/106/back.lz
Binary files differ
diff --git a/gfx/pics/106/bitmask.asm b/gfx/pics/106/bitmask.asm
new file mode 100644
index 000000000..752385f96
--- /dev/null
+++ b/gfx/pics/106/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %00000000
+ db %11000011
+ db %11100001
+ db %11100001
+ db %11100000
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %11100011
+ db %11000001
+ db %11100001
+ db %11100000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %11000000
+ db %11001111
+ db %11100111
+ db %11100000
+ db %00000000
+; 3
+ db %00000000
+ db %10000000
+ db %01000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2f4d
diff --git a/gfx/pics/106/frames.asm b/gfx/pics/106/frames.asm
new file mode 100644
index 000000000..6b68838d9
--- /dev/null
+++ b/gfx/pics/106/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $00
+.frame2
+ db $00 ; bitmask
+ db $3f, $40, $41, $42, $35, $43, $44, $45, $00, $46, $00, $00
+ db $00, $00, $00
+.frame3
+ db $01 ; bitmask
+ db $47, $48, $49, $4a, $4b, $4c, $4d, $4e, $00, $00, $46, $00
+ db $00, $00, $00, $00
+.frame4
+ db $02 ; bitmask
+ db $4f, $50, $51, $52, $53, $54, $4e, $19, $55, $56, $57, $46
+ db $00, $00, $00, $00, $00
+.frame5
+ db $03 ; bitmask
+ db $58, $59, $5a
+; 0xd5819
diff --git a/gfx/frontpics/106.2bpp b/gfx/pics/106/front.2bpp
index e482786d1..e482786d1 100644
--- a/gfx/frontpics/106.2bpp
+++ b/gfx/pics/106/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/106.lz b/gfx/pics/106/front.lz
index c85ec5817..c85ec5817 100644
--- a/gfx/frontpics/lz/106.lz
+++ b/gfx/pics/106/front.lz
Binary files differ
diff --git a/gfx/anim/106.2bpp b/gfx/pics/106/tiles.2bpp
index 33d55260a..33d55260a 100644
--- a/gfx/anim/106.2bpp
+++ b/gfx/pics/106/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/107/anim0.asm b/gfx/pics/107/anim0.asm
new file mode 100644
index 000000000..b6ddd647e
--- /dev/null
+++ b/gfx/pics/107/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 20
+ setrepeat 3
+ frame 1, 06
+ frame 2, 06
+ dorepeat 2
+ frame 1, 15
+ frame 3, 06
+ frame 1, 40
+ frame 2, 10
+ endanim
+; 0xd0eda
diff --git a/gfx/pics/107/anim1.asm b/gfx/pics/107/anim1.asm
new file mode 100644
index 000000000..6f67577a0
--- /dev/null
+++ b/gfx/pics/107/anim1.asm
@@ -0,0 +1,8 @@
+ frame 1, 40
+ setrepeat 4
+ frame 5, 09
+ frame 4, 09
+ dorepeat 2
+ frame 4, 20
+ endanim
+; 0xd1ce2
diff --git a/gfx/backpics/107.2bpp b/gfx/pics/107/back.2bpp
index a4fd8dd86..a4fd8dd86 100644
--- a/gfx/backpics/107.2bpp
+++ b/gfx/pics/107/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/107.lz b/gfx/pics/107/back.lz
index f785248c1..f785248c1 100644
--- a/gfx/backpics/lz/107.lz
+++ b/gfx/pics/107/back.lz
Binary files differ
diff --git a/gfx/pics/107/bitmask.asm b/gfx/pics/107/bitmask.asm
new file mode 100644
index 000000000..522452e67
--- /dev/null
+++ b/gfx/pics/107/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %10001110
+ db %11100011
+ db %00010000
+ db %00001000
+ db %00000010
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000010
+; 2
+ db %10001110
+ db %11100011
+ db %01110000
+ db %00011100
+ db %00000011
+; 3
+ db %10001110
+ db %11100011
+ db %00011000
+ db %00000010
+ db %00000000
+; 4
+ db %10001110
+ db %11100011
+ db %11011011
+ db %00001010
+ db %00000010
+; 0xd2f66
diff --git a/gfx/pics/107/frames.asm b/gfx/pics/107/frames.asm
new file mode 100644
index 000000000..90269c7bd
--- /dev/null
+++ b/gfx/pics/107/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $00, $00, $24, $00, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $29, $2a
+.frame3
+ db $02 ; bitmask
+ db $00, $00, $00, $00, $24, $00, $25, $26, $27, $2b, $2c, $2d
+ db $2e, $2f, $30, $31, $00
+.frame4
+ db $03 ; bitmask
+ db $00, $00, $00, $00, $24, $00, $25, $26, $27, $32, $28, $33
+.frame5
+ db $04 ; bitmask
+ db $00, $00, $00, $00, $24, $00, $25, $26, $27, $34, $35, $32
+ db $28, $36, $37, $33, $29, $2a
+; 0xd5865
diff --git a/gfx/frontpics/107.2bpp b/gfx/pics/107/front.2bpp
index 296da9557..296da9557 100644
--- a/gfx/frontpics/107.2bpp
+++ b/gfx/pics/107/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/107.lz b/gfx/pics/107/front.lz
index e9a77e987..e9a77e987 100644
--- a/gfx/frontpics/lz/107.lz
+++ b/gfx/pics/107/front.lz
Binary files differ
diff --git a/gfx/anim/107.2bpp b/gfx/pics/107/tiles.2bpp
index ea3383dbc..ea3383dbc 100644
--- a/gfx/anim/107.2bpp
+++ b/gfx/pics/107/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/108/anim0.asm b/gfx/pics/108/anim0.asm
new file mode 100644
index 000000000..2fb31e50b
--- /dev/null
+++ b/gfx/pics/108/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 16
+ frame 2, 06
+ frame 3, 06
+ frame 0, 06
+ frame 3, 06
+ endanim
+; 0xd0ee5
diff --git a/gfx/pics/108/anim1.asm b/gfx/pics/108/anim1.asm
new file mode 100644
index 000000000..cf0355a03
--- /dev/null
+++ b/gfx/pics/108/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1ceb
diff --git a/gfx/backpics/108.2bpp b/gfx/pics/108/back.2bpp
index 3d6aba145..3d6aba145 100644
--- a/gfx/backpics/108.2bpp
+++ b/gfx/pics/108/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/108.lz b/gfx/pics/108/back.lz
index 85764655a..85764655a 100644
--- a/gfx/backpics/lz/108.lz
+++ b/gfx/pics/108/back.lz
Binary files differ
diff --git a/gfx/pics/108/bitmask.asm b/gfx/pics/108/bitmask.asm
new file mode 100644
index 000000000..856fb977e
--- /dev/null
+++ b/gfx/pics/108/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00011000
+ db %00001100
+ db %00000110
+ db %10000011
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %10011111
+ db %00001111
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00111000
+ db %00011100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %10000000
+ db %00000001
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2f82
diff --git a/gfx/pics/108/frames.asm b/gfx/pics/108/frames.asm
new file mode 100644
index 000000000..feb42d080
--- /dev/null
+++ b/gfx/pics/108/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $31, $04, $32, $33, $34, $35, $36, $37
+.frame2
+ db $01 ; bitmask
+ db $38, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42
+.frame3
+ db $02 ; bitmask
+ db $00, $43, $44, $45, $46, $47
+.frame4
+ db $03 ; bitmask
+ db $48, $49, $4a
+; 0xd588f
diff --git a/gfx/frontpics/108.2bpp b/gfx/pics/108/front.2bpp
index 18f224038..18f224038 100644
--- a/gfx/frontpics/108.2bpp
+++ b/gfx/pics/108/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/108.lz b/gfx/pics/108/front.lz
index f7e2f4f43..f7e2f4f43 100644
--- a/gfx/frontpics/lz/108.lz
+++ b/gfx/pics/108/front.lz
Binary files differ
diff --git a/gfx/anim/108.2bpp b/gfx/pics/108/tiles.2bpp
index 9a62f8c36..9a62f8c36 100644
--- a/gfx/anim/108.2bpp
+++ b/gfx/pics/108/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/109/anim0.asm b/gfx/pics/109/anim0.asm
new file mode 100644
index 000000000..fc574f528
--- /dev/null
+++ b/gfx/pics/109/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 20
+ frame 2, 06
+ frame 3, 05
+ frame 4, 10
+ frame 5, 15
+ endanim
+; 0xd0ef0
diff --git a/gfx/pics/109/anim1.asm b/gfx/pics/109/anim1.asm
new file mode 100644
index 000000000..e0e81b4d3
--- /dev/null
+++ b/gfx/pics/109/anim1.asm
@@ -0,0 +1,3 @@
+ frame 5, 48
+ endanim
+; 0xd1cee
diff --git a/gfx/backpics/109.2bpp b/gfx/pics/109/back.2bpp
index 858adbc65..858adbc65 100644
--- a/gfx/backpics/109.2bpp
+++ b/gfx/pics/109/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/109.lz b/gfx/pics/109/back.lz
index 2e8762565..2e8762565 100644
--- a/gfx/backpics/lz/109.lz
+++ b/gfx/pics/109/back.lz
Binary files differ
diff --git a/gfx/pics/109/bitmask.asm b/gfx/pics/109/bitmask.asm
new file mode 100644
index 000000000..d6d2f747d
--- /dev/null
+++ b/gfx/pics/109/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10000000
+ db %01100000
+ db %00011001
+ db %00001000
+ db %00000000
+; 1
+ db %11000000
+ db %01111000
+ db %00011011
+ db %00001000
+ db %00000110
+; 2
+ db %01000000
+ db %01011000
+ db %00011010
+ db %00000000
+ db %00000110
+; 3
+ db %00000000
+ db %01000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd2f96
diff --git a/gfx/pics/109/frames.asm b/gfx/pics/109/frames.asm
new file mode 100644
index 000000000..ef58ddc50
--- /dev/null
+++ b/gfx/pics/109/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $2b, $24, $2c, $2d, $25, $26, $27, $2e, $28, $29, $2a, $2f
+ db $30
+.frame3
+ db $02 ; bitmask
+ db $2b, $2c, $2d, $26, $2e, $28, $29, $2f, $30
+.frame4
+ db $02 ; bitmask
+ db $31, $32, $33, $26, $34, $28, $35, $36, $37
+.frame5
+ db $03 ; bitmask
+ db $26, $28, $35
+; 0xd58c7
diff --git a/gfx/frontpics/109.2bpp b/gfx/pics/109/front.2bpp
index 04c8a6bf8..04c8a6bf8 100644
--- a/gfx/frontpics/109.2bpp
+++ b/gfx/pics/109/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/109.lz b/gfx/pics/109/front.lz
index 78de37eeb..78de37eeb 100644
--- a/gfx/frontpics/lz/109.lz
+++ b/gfx/pics/109/front.lz
Binary files differ
diff --git a/gfx/anim/109.2bpp b/gfx/pics/109/tiles.2bpp
index 28effa918..28effa918 100644
--- a/gfx/anim/109.2bpp
+++ b/gfx/pics/109/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/110/anim0.asm b/gfx/pics/110/anim0.asm
new file mode 100644
index 000000000..e64ca5d37
--- /dev/null
+++ b/gfx/pics/110/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 15
+ setrepeat 2
+ frame 2, 10
+ frame 3, 10
+ frame 4, 10
+ dorepeat 2
+ endanim
+; 0xd0efd
diff --git a/gfx/pics/110/anim1.asm b/gfx/pics/110/anim1.asm
new file mode 100644
index 000000000..1ba31dd74
--- /dev/null
+++ b/gfx/pics/110/anim1.asm
@@ -0,0 +1,8 @@
+ frame 0, 12
+ setrepeat 3
+ frame 1, 08
+ frame 5, 08
+ dorepeat 2
+ frame 1, 12
+ endanim
+; 0xd1cfb
diff --git a/gfx/backpics/110.2bpp b/gfx/pics/110/back.2bpp
index dcaca9098..dcaca9098 100644
--- a/gfx/backpics/110.2bpp
+++ b/gfx/pics/110/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/110.lz b/gfx/pics/110/back.lz
index a85124f3a..a85124f3a 100644
--- a/gfx/backpics/lz/110.lz
+++ b/gfx/pics/110/back.lz
Binary files differ
diff --git a/gfx/pics/110/bitmask.asm b/gfx/pics/110/bitmask.asm
new file mode 100644
index 000000000..0877082a9
--- /dev/null
+++ b/gfx/pics/110/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00001100
+ db %00000110
+ db %10000011
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00011000
+ db %10100011
+ db %00000001
+ db %00010011
+ db %10010001
+ db %00000000
+; 2
+ db %00000000
+ db %00111000
+ db %10110000
+ db %11010001
+ db %00011011
+ db %10011001
+ db %00000000
+; 3
+ db %00000000
+ db %00100000
+ db %00010000
+ db %00010000
+ db %00001011
+ db %11001101
+ db %00000000
+; 4
+ db %00001100
+ db %10000111
+ db %11000011
+ db %00000001
+ db %10000000
+ db %01000000
+ db %00000000
+; 0xd2fb9
diff --git a/gfx/pics/110/frames.asm b/gfx/pics/110/frames.asm
new file mode 100644
index 000000000..1bb1b5710
--- /dev/null
+++ b/gfx/pics/110/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $00, $32, $33, $34, $35, $36, $35
+.frame2
+ db $01 ; bitmask
+ db $37, $38, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42
+ db $43
+.frame3
+ db $02 ; bitmask
+ db $37, $38, $44, $45, $3b, $46, $47, $48, $49, $4a, $3e, $3f
+ db $4b, $40, $4c, $4d, $42, $4e
+.frame4
+ db $03 ; bitmask
+ db $44, $45, $48, $3e, $3f, $4b, $4c, $4f, $4d, $50, $4e
+.frame5
+ db $04 ; bitmask
+ db $31, $00, $51, $32, $33, $52, $34, $35, $53, $36, $35, $54
+ db $55
+; 0xd5915
diff --git a/gfx/frontpics/110.2bpp b/gfx/pics/110/front.2bpp
index 4455ef3a1..4455ef3a1 100644
--- a/gfx/frontpics/110.2bpp
+++ b/gfx/pics/110/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/110.lz b/gfx/pics/110/front.lz
index 3c6f24a41..3c6f24a41 100644
--- a/gfx/frontpics/lz/110.lz
+++ b/gfx/pics/110/front.lz
Binary files differ
diff --git a/gfx/anim/110.2bpp b/gfx/pics/110/tiles.2bpp
index 421c0a693..421c0a693 100644
--- a/gfx/anim/110.2bpp
+++ b/gfx/pics/110/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/111/anim0.asm b/gfx/pics/111/anim0.asm
new file mode 100644
index 000000000..b966557c4
--- /dev/null
+++ b/gfx/pics/111/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 05
+ frame 2, 13
+ frame 1, 40
+ endanim
+; 0xd0f04
diff --git a/gfx/pics/111/anim1.asm b/gfx/pics/111/anim1.asm
new file mode 100644
index 000000000..66e53642e
--- /dev/null
+++ b/gfx/pics/111/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 13
+ frame 3, 13
+ dorepeat 1
+ endanim
+; 0xd1d04
diff --git a/gfx/backpics/111.2bpp b/gfx/pics/111/back.2bpp
index 33181ef57..33181ef57 100644
--- a/gfx/backpics/111.2bpp
+++ b/gfx/pics/111/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/111.lz b/gfx/pics/111/back.lz
index bfcafdcb4..bfcafdcb4 100644
--- a/gfx/backpics/lz/111.lz
+++ b/gfx/pics/111/back.lz
Binary files differ
diff --git a/gfx/pics/111/bitmask.asm b/gfx/pics/111/bitmask.asm
new file mode 100644
index 000000000..b5c02fc90
--- /dev/null
+++ b/gfx/pics/111/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %00111100
+ db %10011111
+ db %10001111
+ db %00000111
+ db %00000011
+ db %00000000
+ db %00000000
+; 1
+ db %00111100
+ db %10011111
+ db %11001111
+ db %00110111
+ db %00010011
+ db %00011000
+ db %00000000
+; 0xd2fc7
diff --git a/gfx/pics/111/frames.asm b/gfx/pics/111/frames.asm
new file mode 100644
index 000000000..93875b4dd
--- /dev/null
+++ b/gfx/pics/111/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $45, $46, $3c
+ db $3d, $3e, $47, $3f, $40, $41, $42, $48, $49, $43, $44, $4a
+ db $4b, $4c
+.frame3
+ db $00 ; bitmask
+ db $31, $32, $33, $4d, $35, $36, $37, $4e, $4f, $3a, $3b, $3c
+ db $50, $51, $3f, $40, $41, $42, $43, $44
+; 0xd5960
diff --git a/gfx/frontpics/111.2bpp b/gfx/pics/111/front.2bpp
index a75f18409..a75f18409 100644
--- a/gfx/frontpics/111.2bpp
+++ b/gfx/pics/111/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/111.lz b/gfx/pics/111/front.lz
index 62a2e8919..62a2e8919 100644
--- a/gfx/frontpics/lz/111.lz
+++ b/gfx/pics/111/front.lz
Binary files differ
diff --git a/gfx/anim/111.2bpp b/gfx/pics/111/tiles.2bpp
index 271be8c58..271be8c58 100644
--- a/gfx/anim/111.2bpp
+++ b/gfx/pics/111/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/112/anim0.asm b/gfx/pics/112/anim0.asm
new file mode 100644
index 000000000..77d736a55
--- /dev/null
+++ b/gfx/pics/112/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 08
+ frame 1, 34
+ frame 4, 10
+ frame 2, 10
+ setrepeat 16
+ frame 3, 02
+ frame 2, 02
+ dorepeat 5
+ endanim
+; 0xd0f15
diff --git a/gfx/pics/112/anim1.asm b/gfx/pics/112/anim1.asm
new file mode 100644
index 000000000..b572a54ed
--- /dev/null
+++ b/gfx/pics/112/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1d0d
diff --git a/gfx/backpics/112.2bpp b/gfx/pics/112/back.2bpp
index 626c7deb2..626c7deb2 100644
--- a/gfx/backpics/112.2bpp
+++ b/gfx/pics/112/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/112.lz b/gfx/pics/112/back.lz
index b626f4ce6..b626f4ce6 100644
--- a/gfx/backpics/lz/112.lz
+++ b/gfx/pics/112/back.lz
Binary files differ
diff --git a/gfx/pics/112/bitmask.asm b/gfx/pics/112/bitmask.asm
new file mode 100644
index 000000000..1a5064c1d
--- /dev/null
+++ b/gfx/pics/112/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000100
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10001111
+ db %11000111
+ db %11100011
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd2fdc
diff --git a/gfx/pics/112/frames.asm b/gfx/pics/112/frames.asm
new file mode 100644
index 000000000..a87f8370a
--- /dev/null
+++ b/gfx/pics/112/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33
+.frame2
+ db $01 ; bitmask
+ db $34, $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d, $3e, $3f
+ db $40, $41, $42, $43
+.frame3
+ db $01 ; bitmask
+ db $34, $44, $45, $37, $38, $39, $46, $3b, $3c, $3d, $3e, $3f
+ db $40, $41, $42, $43
+.frame4
+ db $02 ; bitmask
+ db $47, $48
+; 0xd5991
diff --git a/gfx/frontpics/112.2bpp b/gfx/pics/112/front.2bpp
index 87d9ddaec..87d9ddaec 100644
--- a/gfx/frontpics/112.2bpp
+++ b/gfx/pics/112/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/112.lz b/gfx/pics/112/front.lz
index 0ad1c221b..0ad1c221b 100644
--- a/gfx/frontpics/lz/112.lz
+++ b/gfx/pics/112/front.lz
Binary files differ
diff --git a/gfx/anim/112.2bpp b/gfx/pics/112/tiles.2bpp
index e3206761a..e3206761a 100644
--- a/gfx/anim/112.2bpp
+++ b/gfx/pics/112/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/113/anim0.asm b/gfx/pics/113/anim0.asm
new file mode 100644
index 000000000..75de3b32b
--- /dev/null
+++ b/gfx/pics/113/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 06
+ frame 4, 06
+ frame 1, 06
+ frame 2, 10
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 5
+ endanim
+; 0xd0f26
diff --git a/gfx/pics/113/anim1.asm b/gfx/pics/113/anim1.asm
new file mode 100644
index 000000000..a78f8cf88
--- /dev/null
+++ b/gfx/pics/113/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd1d16
diff --git a/gfx/backpics/113.2bpp b/gfx/pics/113/back.2bpp
index 232ebd882..232ebd882 100644
--- a/gfx/backpics/113.2bpp
+++ b/gfx/pics/113/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/113.lz b/gfx/pics/113/back.lz
index 239df2d63..239df2d63 100644
--- a/gfx/backpics/lz/113.lz
+++ b/gfx/pics/113/back.lz
Binary files differ
diff --git a/gfx/pics/113/bitmask.asm b/gfx/pics/113/bitmask.asm
new file mode 100644
index 000000000..28dc212ed
--- /dev/null
+++ b/gfx/pics/113/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11000111
+ db %01110001
+ db %00011100
+ db %11000111
+ db %00000111
+; 1
+ db %10000110
+ db %00000000
+ db %00000000
+ db %10000000
+ db %00000001
+; 2
+ db %00000000
+ db %00110000
+ db %00001100
+ db %00000000
+ db %00000000
+; 3
+ db %11000111
+ db %01110001
+ db %00011100
+ db %11000111
+ db %00000001
+; 0xd2ff0
diff --git a/gfx/pics/113/frames.asm b/gfx/pics/113/frames.asm
new file mode 100644
index 000000000..ad22cb7eb
--- /dev/null
+++ b/gfx/pics/113/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34, $35, $36, $37
+.frame2
+ db $01 ; bitmask
+ db $38, $39, $3a, $3b, $3c
+.frame3
+ db $02 ; bitmask
+ db $3d, $3e, $3f, $40
+.frame4
+ db $03 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34, $35
+; 0xd59cc
diff --git a/gfx/frontpics/113.2bpp b/gfx/pics/113/front.2bpp
index ea93cf598..ea93cf598 100644
--- a/gfx/frontpics/113.2bpp
+++ b/gfx/pics/113/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/113.lz b/gfx/pics/113/front.lz
index 1fc457f19..1fc457f19 100644
--- a/gfx/frontpics/lz/113.lz
+++ b/gfx/pics/113/front.lz
Binary files differ
diff --git a/gfx/anim/113.2bpp b/gfx/pics/113/tiles.2bpp
index b2a20ef54..b2a20ef54 100644
--- a/gfx/anim/113.2bpp
+++ b/gfx/pics/113/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/114/anim0.asm b/gfx/pics/114/anim0.asm
new file mode 100644
index 000000000..57a237afe
--- /dev/null
+++ b/gfx/pics/114/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 36
+ frame 0, 24
+ frame 2, 10
+ endanim
+; 0xd0f2d
diff --git a/gfx/pics/114/anim1.asm b/gfx/pics/114/anim1.asm
new file mode 100644
index 000000000..7d8b2550f
--- /dev/null
+++ b/gfx/pics/114/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 2, 06
+ dorepeat 1
+ endanim
+; 0xd1d1f
diff --git a/gfx/backpics/114.2bpp b/gfx/pics/114/back.2bpp
index 702bfab0d..702bfab0d 100644
--- a/gfx/backpics/114.2bpp
+++ b/gfx/pics/114/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/114.lz b/gfx/pics/114/back.lz
index 9ad73a0b6..9ad73a0b6 100644
--- a/gfx/backpics/lz/114.lz
+++ b/gfx/pics/114/back.lz
Binary files differ
diff --git a/gfx/pics/114/bitmask.asm b/gfx/pics/114/bitmask.asm
new file mode 100644
index 000000000..36344a16b
--- /dev/null
+++ b/gfx/pics/114/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %11011000
+ db %11000001
+ db %11111011
+ db %11010111
+ db %00000001
+; 1
+ db %00000000
+ db %01000001
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd2ffa
diff --git a/gfx/pics/114/frames.asm b/gfx/pics/114/frames.asm
new file mode 100644
index 000000000..96a52cafe
--- /dev/null
+++ b/gfx/pics/114/frames.asm
@@ -0,0 +1,10 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $24, $00, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $00, $30, $31, $32, $33, $00, $34, $35
+.frame2
+ db $01 ; bitmask
+ db $36, $37, $38
+; 0xd59ea
diff --git a/gfx/frontpics/114.2bpp b/gfx/pics/114/front.2bpp
index dfc130e80..dfc130e80 100644
--- a/gfx/frontpics/114.2bpp
+++ b/gfx/pics/114/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/114.lz b/gfx/pics/114/front.lz
index 345732b84..345732b84 100644
--- a/gfx/frontpics/lz/114.lz
+++ b/gfx/pics/114/front.lz
Binary files differ
diff --git a/gfx/anim/114.2bpp b/gfx/pics/114/tiles.2bpp
index 1f90eadec..1f90eadec 100644
--- a/gfx/anim/114.2bpp
+++ b/gfx/pics/114/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/115/anim0.asm b/gfx/pics/115/anim0.asm
new file mode 100644
index 000000000..34363f893
--- /dev/null
+++ b/gfx/pics/115/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 30
+ frame 5, 10
+ frame 2, 12
+ frame 3, 09
+ frame 4, 09
+ frame 3, 09
+ frame 4, 15
+ endanim
+; 0xd0f3c
diff --git a/gfx/pics/115/anim1.asm b/gfx/pics/115/anim1.asm
new file mode 100644
index 000000000..0da29ec4a
--- /dev/null
+++ b/gfx/pics/115/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 06
+ frame 6, 06
+ dorepeat 1
+ frame 0, 15
+ frame 4, 25
+ endanim
+; 0xd1d2c
diff --git a/gfx/backpics/115.2bpp b/gfx/pics/115/back.2bpp
index bd4412725..bd4412725 100644
--- a/gfx/backpics/115.2bpp
+++ b/gfx/pics/115/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/115.lz b/gfx/pics/115/back.lz
index c7ff00272..c7ff00272 100644
--- a/gfx/backpics/lz/115.lz
+++ b/gfx/pics/115/back.lz
Binary files differ
diff --git a/gfx/pics/115/bitmask.asm b/gfx/pics/115/bitmask.asm
new file mode 100644
index 000000000..3ab57899a
--- /dev/null
+++ b/gfx/pics/115/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00011100
+ db %00001110
+ db %11000111
+ db %11000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00011100
+ db %00001110
+ db %00001110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00001000
+ db %00001110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00011100
+ db %00001110
+ db %11000111
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd301d
diff --git a/gfx/pics/115/frames.asm b/gfx/pics/115/frames.asm
new file mode 100644
index 000000000..155ac059e
--- /dev/null
+++ b/gfx/pics/115/frames.asm
@@ -0,0 +1,26 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $35, $40, $41, $42, $43, $44, $45, $46
+.frame3
+ db $02 ; bitmask
+ db $47, $48, $49, $4a, $44, $45, $4b
+.frame4
+ db $02 ; bitmask
+ db $4c, $48, $49, $43, $4d, $45, $46
+.frame5
+ db $03 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $4e
+.frame6
+ db $04 ; bitmask
+ db $3d
+; 0xd5a32
diff --git a/gfx/frontpics/115.2bpp b/gfx/pics/115/front.2bpp
index 6ab56901f..6ab56901f 100644
--- a/gfx/frontpics/115.2bpp
+++ b/gfx/pics/115/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/115.lz b/gfx/pics/115/front.lz
index 1ec58169d..1ec58169d 100644
--- a/gfx/frontpics/lz/115.lz
+++ b/gfx/pics/115/front.lz
Binary files differ
diff --git a/gfx/anim/115.2bpp b/gfx/pics/115/tiles.2bpp
index ecdb5b7c7..ecdb5b7c7 100644
--- a/gfx/anim/115.2bpp
+++ b/gfx/pics/115/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/116/anim0.asm b/gfx/pics/116/anim0.asm
new file mode 100644
index 000000000..18d51863c
--- /dev/null
+++ b/gfx/pics/116/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 16
+ frame 2, 24
+ setrepeat 3
+ frame 0, 03
+ frame 3, 03
+ dorepeat 3
+ endanim
+; 0xd0f49
diff --git a/gfx/pics/116/anim1.asm b/gfx/pics/116/anim1.asm
new file mode 100644
index 000000000..2475abfdb
--- /dev/null
+++ b/gfx/pics/116/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1d35
diff --git a/gfx/backpics/116.2bpp b/gfx/pics/116/back.2bpp
index 112c16bf2..112c16bf2 100644
--- a/gfx/backpics/116.2bpp
+++ b/gfx/pics/116/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/116.lz b/gfx/pics/116/back.lz
index ae6a2ecab..ae6a2ecab 100644
--- a/gfx/backpics/lz/116.lz
+++ b/gfx/pics/116/back.lz
Binary files differ
diff --git a/gfx/pics/116/bitmask.asm b/gfx/pics/116/bitmask.asm
new file mode 100644
index 000000000..8c5e6f8ba
--- /dev/null
+++ b/gfx/pics/116/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %10000100
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %10001100
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %01000011
+ db %00000000
+; 3
+ db %11000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd302d
diff --git a/gfx/pics/116/frames.asm b/gfx/pics/116/frames.asm
new file mode 100644
index 000000000..3dc3d270e
--- /dev/null
+++ b/gfx/pics/116/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e
+.frame3
+ db $02 ; bitmask
+ db $1f, $20, $00
+.frame4
+ db $03 ; bitmask
+ db $21, $22, $23, $24
+; 0xd5a4b
diff --git a/gfx/frontpics/116.2bpp b/gfx/pics/116/front.2bpp
index 546926775..546926775 100644
--- a/gfx/frontpics/116.2bpp
+++ b/gfx/pics/116/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/116.lz b/gfx/pics/116/front.lz
index 7db08094b..7db08094b 100644
--- a/gfx/frontpics/lz/116.lz
+++ b/gfx/pics/116/front.lz
Binary files differ
diff --git a/gfx/anim/116.2bpp b/gfx/pics/116/tiles.2bpp
index 20042dcca..20042dcca 100644
--- a/gfx/anim/116.2bpp
+++ b/gfx/pics/116/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/117/anim0.asm b/gfx/pics/117/anim0.asm
new file mode 100644
index 000000000..d06adbdb0
--- /dev/null
+++ b/gfx/pics/117/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 10
+ frame 2, 10
+ dorepeat 1
+ endanim
+; 0xd0f54
diff --git a/gfx/pics/117/anim1.asm b/gfx/pics/117/anim1.asm
new file mode 100644
index 000000000..d4c171276
--- /dev/null
+++ b/gfx/pics/117/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 10
+ frame 3, 10
+ dorepeat 1
+ endanim
+; 0xd1d40
diff --git a/gfx/backpics/117.2bpp b/gfx/pics/117/back.2bpp
index fadfbe8d2..fadfbe8d2 100644
--- a/gfx/backpics/117.2bpp
+++ b/gfx/pics/117/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/117.lz b/gfx/pics/117/back.lz
index ba9025832..ba9025832 100644
--- a/gfx/backpics/lz/117.lz
+++ b/gfx/pics/117/back.lz
Binary files differ
diff --git a/gfx/pics/117/bitmask.asm b/gfx/pics/117/bitmask.asm
new file mode 100644
index 000000000..35c11d467
--- /dev/null
+++ b/gfx/pics/117/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00001000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011111
+ db %00000111
+ db %00100000
+ db %10001110
+ db %00000111
+; 2
+ db %00011000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd303c
diff --git a/gfx/pics/117/frames.asm b/gfx/pics/117/frames.asm
new file mode 100644
index 000000000..13b4878c4
--- /dev/null
+++ b/gfx/pics/117/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26
+.frame2
+ db $01 ; bitmask
+ db $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f, $30, $31, $32
+ db $33, $34, $35, $36, $05
+.frame3
+ db $02 ; bitmask
+ db $2a, $2b, $2e, $2f
+; 0xd5a6c
diff --git a/gfx/frontpics/117.2bpp b/gfx/pics/117/front.2bpp
index f409145c1..f409145c1 100644
--- a/gfx/frontpics/117.2bpp
+++ b/gfx/pics/117/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/117.lz b/gfx/pics/117/front.lz
index 6d63f3645..6d63f3645 100644
--- a/gfx/frontpics/lz/117.lz
+++ b/gfx/pics/117/front.lz
Binary files differ
diff --git a/gfx/anim/117.2bpp b/gfx/pics/117/tiles.2bpp
index 708ef9ad6..708ef9ad6 100644
--- a/gfx/anim/117.2bpp
+++ b/gfx/pics/117/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/118/anim0.asm b/gfx/pics/118/anim0.asm
new file mode 100644
index 000000000..c93141feb
--- /dev/null
+++ b/gfx/pics/118/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 30
+ frame 0, 16
+ setrepeat 4
+ frame 2, 12
+ frame 0, 12
+ dorepeat 3
+ endanim
+; 0xd0f61
diff --git a/gfx/pics/118/anim1.asm b/gfx/pics/118/anim1.asm
new file mode 100644
index 000000000..f31dfd1b2
--- /dev/null
+++ b/gfx/pics/118/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd1d49
diff --git a/gfx/backpics/118.2bpp b/gfx/pics/118/back.2bpp
index 672aa1809..672aa1809 100644
--- a/gfx/backpics/118.2bpp
+++ b/gfx/pics/118/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/118.lz b/gfx/pics/118/back.lz
index 5d00534ec..5d00534ec 100644
--- a/gfx/backpics/lz/118.lz
+++ b/gfx/pics/118/back.lz
Binary files differ
diff --git a/gfx/pics/118/bitmask.asm b/gfx/pics/118/bitmask.asm
new file mode 100644
index 000000000..99a84898f
--- /dev/null
+++ b/gfx/pics/118/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %10000110
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00001000
+ db %10001100
+ db %10000010
+ db %00110011
+ db %00000111
+; 2
+ db %10000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd304b
diff --git a/gfx/pics/118/frames.asm b/gfx/pics/118/frames.asm
new file mode 100644
index 000000000..e38561a7a
--- /dev/null
+++ b/gfx/pics/118/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27
+.frame2
+ db $01 ; bitmask
+ db $28, $29, $04, $2a, $2b, $2c, $2d, $2e, $2f, $30, $31, $32
+ db $33
+.frame3
+ db $02 ; bitmask
+ db $34, $35
+; 0xd5a88
diff --git a/gfx/frontpics/118.2bpp b/gfx/pics/118/front.2bpp
index c2c9fa90b..c2c9fa90b 100644
--- a/gfx/frontpics/118.2bpp
+++ b/gfx/pics/118/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/118.lz b/gfx/pics/118/front.lz
index f0090e94e..f0090e94e 100644
--- a/gfx/frontpics/lz/118.lz
+++ b/gfx/pics/118/front.lz
Binary files differ
diff --git a/gfx/anim/118.2bpp b/gfx/pics/118/tiles.2bpp
index 87986fc3f..87986fc3f 100644
--- a/gfx/anim/118.2bpp
+++ b/gfx/pics/118/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/119/anim0.asm b/gfx/pics/119/anim0.asm
new file mode 100644
index 000000000..a147346e2
--- /dev/null
+++ b/gfx/pics/119/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 3
+ frame 0, 12
+ frame 1, 12
+ frame 2, 12
+ dorepeat 1
+ endanim
+; 0xd0f6c
diff --git a/gfx/pics/119/anim1.asm b/gfx/pics/119/anim1.asm
new file mode 100644
index 000000000..3d949a4bb
--- /dev/null
+++ b/gfx/pics/119/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 15
+ frame 3, 15
+ frame 4, 15
+ dorepeat 1
+ endanim
+; 0xd1d54
diff --git a/gfx/backpics/119.2bpp b/gfx/pics/119/back.2bpp
index af64c8c7c..af64c8c7c 100644
--- a/gfx/backpics/119.2bpp
+++ b/gfx/pics/119/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/119.lz b/gfx/pics/119/back.lz
index 328a1fb55..328a1fb55 100644
--- a/gfx/backpics/lz/119.lz
+++ b/gfx/pics/119/back.lz
Binary files differ
diff --git a/gfx/pics/119/bitmask.asm b/gfx/pics/119/bitmask.asm
new file mode 100644
index 000000000..6a4a854e3
--- /dev/null
+++ b/gfx/pics/119/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %01100000
+ db %00100000
+ db %00010000
+ db %00110000
+ db %00100100
+ db %01110111
+ db %00000000
+; 1
+ db %01100000
+ db %00100000
+ db %00110000
+ db %00100000
+ db %00000100
+ db %01111110
+ db %00000000
+; 2
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00100000
+ db %00010000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3067
diff --git a/gfx/pics/119/frames.asm b/gfx/pics/119/frames.asm
new file mode 100644
index 000000000..0bef27ed1
--- /dev/null
+++ b/gfx/pics/119/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $4a
+ db $3e
+.frame3
+ db $02 ; bitmask
+ db $33
+.frame4
+ db $03 ; bitmask
+ db $41, $42
+; 0xd5ab2
diff --git a/gfx/frontpics/119.2bpp b/gfx/pics/119/front.2bpp
index 8d055c11a..8d055c11a 100644
--- a/gfx/frontpics/119.2bpp
+++ b/gfx/pics/119/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/119.lz b/gfx/pics/119/front.lz
index e204f1025..e204f1025 100644
--- a/gfx/frontpics/lz/119.lz
+++ b/gfx/pics/119/front.lz
Binary files differ
diff --git a/gfx/anim/119.2bpp b/gfx/pics/119/tiles.2bpp
index 4ed2800f7..4ed2800f7 100644
--- a/gfx/anim/119.2bpp
+++ b/gfx/pics/119/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/120/anim0.asm b/gfx/pics/120/anim0.asm
new file mode 100644
index 000000000..d257949e7
--- /dev/null
+++ b/gfx/pics/120/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 24
+ frame 0, 08
+ frame 1, 12
+ frame 2, 04
+ frame 3, 04
+ frame 2, 04
+ endanim
+; 0xd0f79
diff --git a/gfx/pics/120/anim1.asm b/gfx/pics/120/anim1.asm
new file mode 100644
index 000000000..184806574
--- /dev/null
+++ b/gfx/pics/120/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 04
+ frame 2, 04
+ frame 3, 04
+ dorepeat 1
+ endanim
+; 0xd1d5f
diff --git a/gfx/backpics/120.2bpp b/gfx/pics/120/back.2bpp
index aecc2684a..aecc2684a 100644
--- a/gfx/backpics/120.2bpp
+++ b/gfx/pics/120/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/120.lz b/gfx/pics/120/back.lz
index 65366eb7c..65366eb7c 100644
--- a/gfx/backpics/lz/120.lz
+++ b/gfx/pics/120/back.lz
Binary files differ
diff --git a/gfx/pics/120/bitmask.asm b/gfx/pics/120/bitmask.asm
new file mode 100644
index 000000000..fe0e0f218
--- /dev/null
+++ b/gfx/pics/120/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %00001100
+ db %00111001
+ db %11000000
+ db %10111110
+ db %00001001
+; 1
+ db %00000000
+ db %11000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3071
diff --git a/gfx/pics/120/frames.asm b/gfx/pics/120/frames.asm
new file mode 100644
index 000000000..d86e5eb62
--- /dev/null
+++ b/gfx/pics/120/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $00, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $00
+.frame2
+ db $01 ; bitmask
+ db $32, $33
+.frame3
+ db $01 ; bitmask
+ db $34, $35
+; 0xd5acf
diff --git a/gfx/frontpics/120.2bpp b/gfx/pics/120/front.2bpp
index e01d9ec61..e01d9ec61 100644
--- a/gfx/frontpics/120.2bpp
+++ b/gfx/pics/120/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/120.lz b/gfx/pics/120/front.lz
index 8d0bdacb9..8d0bdacb9 100644
--- a/gfx/frontpics/lz/120.lz
+++ b/gfx/pics/120/front.lz
Binary files differ
diff --git a/gfx/anim/120.2bpp b/gfx/pics/120/tiles.2bpp
index 9411fe447..9411fe447 100644
--- a/gfx/anim/120.2bpp
+++ b/gfx/pics/120/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/121/anim0.asm b/gfx/pics/121/anim0.asm
new file mode 100644
index 000000000..c81477807
--- /dev/null
+++ b/gfx/pics/121/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 5
+ frame 0, 06
+ frame 1, 06
+ dorepeat 1
+ frame 2, 07
+ frame 3, 07
+ endanim
+; 0xd0f86
diff --git a/gfx/pics/121/anim1.asm b/gfx/pics/121/anim1.asm
new file mode 100644
index 000000000..7508e6e10
--- /dev/null
+++ b/gfx/pics/121/anim1.asm
@@ -0,0 +1,5 @@
+ frame 2, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1d66
diff --git a/gfx/backpics/121.2bpp b/gfx/pics/121/back.2bpp
index dde5e623f..dde5e623f 100644
--- a/gfx/backpics/121.2bpp
+++ b/gfx/pics/121/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/121.lz b/gfx/pics/121/back.lz
index 8085f0f44..8085f0f44 100644
--- a/gfx/backpics/lz/121.lz
+++ b/gfx/pics/121/back.lz
Binary files differ
diff --git a/gfx/pics/121/bitmask.asm b/gfx/pics/121/bitmask.asm
new file mode 100644
index 000000000..24c51b53d
--- /dev/null
+++ b/gfx/pics/121/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11111010
+ db %00110100
+ db %10001110
+ db %11101011
+ db %00000111
+; 1
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3085
diff --git a/gfx/pics/121/frames.asm b/gfx/pics/121/frames.asm
new file mode 100644
index 000000000..a040d7310
--- /dev/null
+++ b/gfx/pics/121/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame4
+ db $f4, $5a, $f5, $5a
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $00, $30, $31, $32, $00, $33, $34, $35, $33
+.frame2
+ db $01 ; bitmask
+ db $36
+.frame3
+ db $02 ; bitmask
+ db $37
+ db $03, $03 ; unused
+; 0xd5af4
diff --git a/gfx/frontpics/121.2bpp b/gfx/pics/121/front.2bpp
index 5c6140317..5c6140317 100644
--- a/gfx/frontpics/121.2bpp
+++ b/gfx/pics/121/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/121.lz b/gfx/pics/121/front.lz
index b9019f6c6..b9019f6c6 100644
--- a/gfx/frontpics/lz/121.lz
+++ b/gfx/pics/121/front.lz
Binary files differ
diff --git a/gfx/anim/121.2bpp b/gfx/pics/121/tiles.2bpp
index ba051a074..ba051a074 100644
--- a/gfx/anim/121.2bpp
+++ b/gfx/pics/121/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/122/anim0.asm b/gfx/pics/122/anim0.asm
new file mode 100644
index 000000000..fcb597a5a
--- /dev/null
+++ b/gfx/pics/122/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 08
+ frame 2, 08
+ frame 8, 08
+ frame 3, 08
+ frame 4, 08
+ frame 5, 08
+ frame 7, 08
+ frame 0, 32
+ frame 6, 06
+ endanim
+; 0xd0f99
diff --git a/gfx/pics/122/anim1.asm b/gfx/pics/122/anim1.asm
new file mode 100644
index 000000000..c3747ac1e
--- /dev/null
+++ b/gfx/pics/122/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 6, 06
+ dorepeat 1
+ endanim
+; 0xd1d6f
diff --git a/gfx/backpics/122.2bpp b/gfx/pics/122/back.2bpp
index 36c3f5387..36c3f5387 100644
--- a/gfx/backpics/122.2bpp
+++ b/gfx/pics/122/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/122.lz b/gfx/pics/122/back.lz
index eb1647580..eb1647580 100644
--- a/gfx/backpics/lz/122.lz
+++ b/gfx/pics/122/back.lz
Binary files differ
diff --git a/gfx/pics/122/bitmask.asm b/gfx/pics/122/bitmask.asm
new file mode 100644
index 000000000..b401ed87b
--- /dev/null
+++ b/gfx/pics/122/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %10001110
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %10011110
+ db %01000111
+ db %01111000
+ db %00011110
+ db %00000110
+; 3
+ db %10001110
+ db %01000001
+ db %01111000
+ db %00011110
+ db %00000110
+; 4
+ db %00000000
+ db %01000000
+ db %01111000
+ db %00011110
+ db %00000110
+; 5
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 6
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00011100
+ db %00000111
+; 7
+ db %10011110
+ db %00000111
+ db %01000000
+ db %00011100
+ db %00000111
+; 0xd30ad
diff --git a/gfx/pics/122/frames.asm b/gfx/pics/122/frames.asm
new file mode 100644
index 000000000..d4bbe4b31
--- /dev/null
+++ b/gfx/pics/122/frames.asm
@@ -0,0 +1,36 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+.frame1
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $27
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $28, $29, $26, $2a, $2b, $2c
+.frame3
+ db $02 ; bitmask
+ db $00, $00, $28, $29, $26, $2a, $2b, $2c, $2d, $2e, $2f, $30
+ db $31, $32, $33, $34, $35, $36, $00
+.frame4
+ db $03 ; bitmask
+ db $00, $24, $25, $26, $27, $2d, $2e, $2f, $30, $31, $32, $33
+ db $34, $35, $36, $00
+.frame5
+ db $04 ; bitmask
+ db $2d, $2e, $2f, $30, $31, $32, $33, $34, $35, $36, $00
+.frame6
+ db $05 ; bitmask
+ db $37
+.frame7
+ db $06 ; bitmask
+ db $31, $38, $39, $35, $3a, $3b, $00
+.frame8
+ db $07 ; bitmask
+ db $00, $00, $28, $29, $26, $2a, $2b, $2c, $31, $38, $39, $35
+ db $3a, $3b, $00
+; 0xd5b60
diff --git a/gfx/frontpics/122.2bpp b/gfx/pics/122/front.2bpp
index b8342f515..b8342f515 100644
--- a/gfx/frontpics/122.2bpp
+++ b/gfx/pics/122/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/122.lz b/gfx/pics/122/front.lz
index 48555cbe0..48555cbe0 100644
--- a/gfx/frontpics/lz/122.lz
+++ b/gfx/pics/122/front.lz
Binary files differ
diff --git a/gfx/anim/122.2bpp b/gfx/pics/122/tiles.2bpp
index 585bca863..585bca863 100644
--- a/gfx/anim/122.2bpp
+++ b/gfx/pics/122/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/123/anim0.asm b/gfx/pics/123/anim0.asm
new file mode 100644
index 000000000..572161065
--- /dev/null
+++ b/gfx/pics/123/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 05
+ frame 2, 18
+ frame 3, 06
+ setrepeat 7
+ frame 4, 04
+ frame 5, 04
+ dorepeat 4
+ endanim
+; 0xd0fa8
diff --git a/gfx/pics/123/anim1.asm b/gfx/pics/123/anim1.asm
new file mode 100644
index 000000000..e251a964d
--- /dev/null
+++ b/gfx/pics/123/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 8
+ frame 0, 04
+ frame 6, 04
+ dorepeat 1
+ endanim
+; 0xd1d78
diff --git a/gfx/backpics/123.2bpp b/gfx/pics/123/back.2bpp
index 01a4c25d7..01a4c25d7 100644
--- a/gfx/backpics/123.2bpp
+++ b/gfx/pics/123/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/123.lz b/gfx/pics/123/back.lz
index 421fc4ed0..421fc4ed0 100644
--- a/gfx/backpics/lz/123.lz
+++ b/gfx/pics/123/back.lz
Binary files differ
diff --git a/gfx/pics/123/bitmask.asm b/gfx/pics/123/bitmask.asm
new file mode 100644
index 000000000..7463aafd1
--- /dev/null
+++ b/gfx/pics/123/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %01111110
+ db %10001111
+ db %11000011
+ db %11100011
+ db %11110001
+ db %11100000
+ db %00000000
+; 1
+ db %00000110
+ db %10000011
+ db %11000001
+ db %11100001
+ db %01110000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %11000000
+ db %11100001
+ db %01110000
+ db %00000000
+ db %00000000
+; 3
+ db %00000110
+ db %10000011
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd30c9
diff --git a/gfx/pics/123/frames.asm b/gfx/pics/123/frames.asm
new file mode 100644
index 000000000..4668c0ff1
--- /dev/null
+++ b/gfx/pics/123/frames.asm
@@ -0,0 +1,31 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $1c, $1c, $1c, $1c, $33, $34, $35, $36, $37, $38
+ db $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $1c, $42, $43
+ db $44, $1c, $1c, $1c
+.frame2
+ db $00 ; bitmask
+ db $45, $1c, $1c, $1c, $1c, $1c, $46, $47, $48, $36, $49, $38
+ db $4a, $3a, $3b, $4b, $3d, $3e, $3f, $40, $4c, $1c, $42, $43
+ db $44, $1c, $1c, $1c
+.frame3
+ db $01 ; bitmask
+ db $45, $1c, $46, $47, $49, $38, $3a, $3b, $4d, $3e, $3f, $4e
+ db $1c, $42, $4f
+.frame4
+ db $01 ; bitmask
+ db $45, $1c, $46, $47, $49, $38, $3a, $3b, $4d, $3e, $3f, $4e
+ db $1c, $42, $4f
+.frame5
+ db $02 ; bitmask
+ db $50, $3a, $3b, $4d, $3e, $3f, $4e, $1c, $42, $4f
+.frame6
+ db $03 ; bitmask
+ db $45, $1c, $46, $47, $51, $38
+; 0xd5bd8
diff --git a/gfx/frontpics/123.2bpp b/gfx/pics/123/front.2bpp
index 52aca2fa3..52aca2fa3 100644
--- a/gfx/frontpics/123.2bpp
+++ b/gfx/pics/123/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/123.lz b/gfx/pics/123/front.lz
index 02773fc11..02773fc11 100644
--- a/gfx/frontpics/lz/123.lz
+++ b/gfx/pics/123/front.lz
Binary files differ
diff --git a/gfx/anim/123.2bpp b/gfx/pics/123/tiles.2bpp
index c055ace8a..c055ace8a 100644
--- a/gfx/anim/123.2bpp
+++ b/gfx/pics/123/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/124/anim0.asm b/gfx/pics/124/anim0.asm
new file mode 100644
index 000000000..78f0e63ed
--- /dev/null
+++ b/gfx/pics/124/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 16
+ frame 1, 16
+ frame 2, 16
+ frame 1, 16
+ dorepeat 1
+ endanim
+; 0xd0fb5
diff --git a/gfx/pics/124/anim1.asm b/gfx/pics/124/anim1.asm
new file mode 100644
index 000000000..42f42859c
--- /dev/null
+++ b/gfx/pics/124/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1d81
diff --git a/gfx/backpics/124.2bpp b/gfx/pics/124/back.2bpp
index e4a07ca0d..e4a07ca0d 100644
--- a/gfx/backpics/124.2bpp
+++ b/gfx/pics/124/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/124.lz b/gfx/pics/124/back.lz
index 4642ecda7..4642ecda7 100644
--- a/gfx/backpics/lz/124.lz
+++ b/gfx/pics/124/back.lz
Binary files differ
diff --git a/gfx/pics/124/bitmask.asm b/gfx/pics/124/bitmask.asm
new file mode 100644
index 000000000..1843c8556
--- /dev/null
+++ b/gfx/pics/124/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %11000100
+ db %01010011
+ db %00100000
+ db %00001100
+; 1
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00010000
+ db %00001100
+; 2
+ db %00000000
+ db %01100000
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd30d8
diff --git a/gfx/pics/124/frames.asm b/gfx/pics/124/frames.asm
new file mode 100644
index 000000000..7aa0496d0
--- /dev/null
+++ b/gfx/pics/124/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame2
+ db $01 ; bitmask
+ db $2e, $2f, $30, $31, $32
+.frame3
+ db $02 ; bitmask
+ db $33, $34, $35, $36
+; 0xd5bf4
diff --git a/gfx/frontpics/124.2bpp b/gfx/pics/124/front.2bpp
index 73712b24c..73712b24c 100644
--- a/gfx/frontpics/124.2bpp
+++ b/gfx/pics/124/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/124.lz b/gfx/pics/124/front.lz
index 78a436494..78a436494 100644
--- a/gfx/frontpics/lz/124.lz
+++ b/gfx/pics/124/front.lz
Binary files differ
diff --git a/gfx/anim/124.2bpp b/gfx/pics/124/tiles.2bpp
index db0125c4a..db0125c4a 100644
--- a/gfx/anim/124.2bpp
+++ b/gfx/pics/124/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/125/anim0.asm b/gfx/pics/125/anim0.asm
new file mode 100644
index 000000000..4e2a550ed
--- /dev/null
+++ b/gfx/pics/125/anim0.asm
@@ -0,0 +1,13 @@
+ frame 1, 08
+ setrepeat 3
+ setrepeat 3
+ frame 1, 02
+ frame 2, 02
+ dorepeat 3
+ setrepeat 4
+ frame 3, 02
+ frame 4, 02
+ dorepeat 7
+ dorepeat 7
+ endanim
+; 0xd0fcc
diff --git a/gfx/pics/125/anim1.asm b/gfx/pics/125/anim1.asm
new file mode 100644
index 000000000..efff4b3db
--- /dev/null
+++ b/gfx/pics/125/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 4
+ frame 0, 04
+ frame 5, 04
+ dorepeat 1
+ endanim
+; 0xd1d8a
diff --git a/gfx/backpics/125.2bpp b/gfx/pics/125/back.2bpp
index af32ffc60..af32ffc60 100644
--- a/gfx/backpics/125.2bpp
+++ b/gfx/pics/125/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/125.lz b/gfx/pics/125/back.lz
index b64bc1ca1..b64bc1ca1 100644
--- a/gfx/backpics/lz/125.lz
+++ b/gfx/pics/125/back.lz
Binary files differ
diff --git a/gfx/pics/125/bitmask.asm b/gfx/pics/125/bitmask.asm
new file mode 100644
index 000000000..240c2dd37
--- /dev/null
+++ b/gfx/pics/125/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %01100000
+ db %00011000
+ db %00000000
+ db %00000000
+; 1
+ db %01000000
+ db %01100000
+ db %00011000
+ db %00000001
+ db %00000000
+; 2
+ db %11001111
+ db %01100011
+ db %00011000
+ db %11001111
+ db %00000011
+; 3
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+; 0xd30ec
diff --git a/gfx/pics/125/frames.asm b/gfx/pics/125/frames.asm
new file mode 100644
index 000000000..1f3e52ada
--- /dev/null
+++ b/gfx/pics/125/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27
+.frame2
+ db $01 ; bitmask
+ db $28, $24, $25, $26, $27, $29
+.frame3
+ db $02 ; bitmask
+ db $04, $2a, $2b, $2c, $2d, $2e, $2f, $30, $24, $25, $26, $27
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame4
+ db $02 ; bitmask
+ db $04, $2a, $2b, $2c, $39, $2e, $2f, $30, $24, $25, $26, $27
+ db $3a, $32, $33, $34, $35, $36, $37, $38
+.frame5
+ db $03 ; bitmask
+ db $28, $29
+; 0xd5c37
diff --git a/gfx/frontpics/125.2bpp b/gfx/pics/125/front.2bpp
index ee82f09f1..ee82f09f1 100644
--- a/gfx/frontpics/125.2bpp
+++ b/gfx/pics/125/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/125.lz b/gfx/pics/125/front.lz
index 645db8d4d..645db8d4d 100644
--- a/gfx/frontpics/lz/125.lz
+++ b/gfx/pics/125/front.lz
Binary files differ
diff --git a/gfx/anim/125.2bpp b/gfx/pics/125/tiles.2bpp
index 5e3c52c47..5e3c52c47 100644
--- a/gfx/anim/125.2bpp
+++ b/gfx/pics/125/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/126/anim0.asm b/gfx/pics/126/anim0.asm
new file mode 100644
index 000000000..8fde5d3b5
--- /dev/null
+++ b/gfx/pics/126/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 16
+ setrepeat 3
+ frame 2, 07
+ frame 3, 07
+ dorepeat 2
+ endanim
+; 0xd0fd7
diff --git a/gfx/pics/126/anim1.asm b/gfx/pics/126/anim1.asm
new file mode 100644
index 000000000..784bdcd3d
--- /dev/null
+++ b/gfx/pics/126/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd1d93
diff --git a/gfx/backpics/126.2bpp b/gfx/pics/126/back.2bpp
index 4cae7b88f..4cae7b88f 100644
--- a/gfx/backpics/126.2bpp
+++ b/gfx/pics/126/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/126.lz b/gfx/pics/126/back.lz
index 9b44bab34..9b44bab34 100644
--- a/gfx/backpics/lz/126.lz
+++ b/gfx/pics/126/back.lz
Binary files differ
diff --git a/gfx/pics/126/bitmask.asm b/gfx/pics/126/bitmask.asm
new file mode 100644
index 000000000..83d8877b0
--- /dev/null
+++ b/gfx/pics/126/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11001111
+ db %00110011
+ db %00001100
+ db %00000000
+ db %00000000
+; 1
+ db %00001100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00001100
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000100
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3100
diff --git a/gfx/pics/126/frames.asm b/gfx/pics/126/frames.asm
new file mode 100644
index 000000000..cfe2d76e5
--- /dev/null
+++ b/gfx/pics/126/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $04, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $01 ; bitmask
+ db $2f, $30
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33
+.frame4
+ db $03 ; bitmask
+ db $34, $35
+; 0xd5c56
diff --git a/gfx/frontpics/126.2bpp b/gfx/pics/126/front.2bpp
index af281f11e..af281f11e 100644
--- a/gfx/frontpics/126.2bpp
+++ b/gfx/pics/126/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/126.lz b/gfx/pics/126/front.lz
index 178afc45f..178afc45f 100644
--- a/gfx/frontpics/lz/126.lz
+++ b/gfx/pics/126/front.lz
Binary files differ
diff --git a/gfx/anim/126.2bpp b/gfx/pics/126/tiles.2bpp
index e578e2672..e578e2672 100644
--- a/gfx/anim/126.2bpp
+++ b/gfx/pics/126/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/127/anim0.asm b/gfx/pics/127/anim0.asm
new file mode 100644
index 000000000..f45752006
--- /dev/null
+++ b/gfx/pics/127/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 12
+ frame 2, 08
+ setrepeat 2
+ frame 3, 12
+ frame 4, 12
+ dorepeat 3
+ endanim
+; 0xd0fe4
diff --git a/gfx/pics/127/anim1.asm b/gfx/pics/127/anim1.asm
new file mode 100644
index 000000000..73895c2e0
--- /dev/null
+++ b/gfx/pics/127/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 08
+ frame 1, 08
+ dorepeat 1
+ endanim
+; 0xd1d9c
diff --git a/gfx/backpics/127.2bpp b/gfx/pics/127/back.2bpp
index de80f3f3d..de80f3f3d 100644
--- a/gfx/backpics/127.2bpp
+++ b/gfx/pics/127/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/127.lz b/gfx/pics/127/back.lz
index 8803c8a0a..8803c8a0a 100644
--- a/gfx/backpics/lz/127.lz
+++ b/gfx/pics/127/back.lz
Binary files differ
diff --git a/gfx/pics/127/bitmask.asm b/gfx/pics/127/bitmask.asm
new file mode 100644
index 000000000..4f51b7d09
--- /dev/null
+++ b/gfx/pics/127/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00001110
+ db %11000111
+ db %11100000
+ db %11110000
+ db %00110000
+ db %00000000
+ db %00000000
+; 1
+ db %01101110
+ db %11110111
+ db %11101100
+ db %11110010
+ db %00110000
+ db %10000011
+ db %00000001
+; 2
+ db %01101110
+ db %11110111
+ db %11101110
+ db %11110011
+ db %00110000
+ db %10000011
+ db %00000001
+; 3
+ db %00001110
+ db %11000111
+ db %11100110
+ db %11110011
+ db %00110000
+ db %10000011
+ db %00000001
+; 0xd311c
diff --git a/gfx/pics/127/frames.asm b/gfx/pics/127/frames.asm
new file mode 100644
index 000000000..ee3927896
--- /dev/null
+++ b/gfx/pics/127/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $00
+ db $3c, $3d, $3e, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $3f, $40, $34, $35, $36, $41, $42, $37, $38
+ db $43, $44, $39, $3a, $3b, $45, $00, $3c, $3d, $3e, $00, $00
+ db $46, $47, $48, $00
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33, $3f, $40, $34, $35, $36, $41, $42, $37, $38
+ db $49, $43, $44, $39, $3a, $3b, $4a, $45, $00, $3c, $3d, $3e
+ db $00, $00, $46, $47, $48, $00
+.frame4
+ db $03 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $49, $43, $39, $3a
+ db $3b, $4a, $45, $00, $3c, $3d, $3e, $00, $00, $46, $47, $48
+ db $00
+; 0xd5cc6
diff --git a/gfx/frontpics/127.2bpp b/gfx/pics/127/front.2bpp
index 3da0bf00c..3da0bf00c 100644
--- a/gfx/frontpics/127.2bpp
+++ b/gfx/pics/127/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/127.lz b/gfx/pics/127/front.lz
index d2ec9ecd9..d2ec9ecd9 100644
--- a/gfx/frontpics/lz/127.lz
+++ b/gfx/pics/127/front.lz
Binary files differ
diff --git a/gfx/anim/127.2bpp b/gfx/pics/127/tiles.2bpp
index 085ef6304..085ef6304 100644
--- a/gfx/anim/127.2bpp
+++ b/gfx/pics/127/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/128/anim0.asm b/gfx/pics/128/anim0.asm
new file mode 100644
index 000000000..52c9264c3
--- /dev/null
+++ b/gfx/pics/128/anim0.asm
@@ -0,0 +1,11 @@
+ frame 0, 08
+ frame 3, 10
+ frame 1, 28
+ frame 0, 12
+ setrepeat 3
+ frame 2, 11
+ frame 3, 11
+ dorepeat 5
+ frame 1, 07
+ endanim
+; 0xd0ff7
diff --git a/gfx/pics/128/anim1.asm b/gfx/pics/128/anim1.asm
new file mode 100644
index 000000000..ab6608d0d
--- /dev/null
+++ b/gfx/pics/128/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1da5
diff --git a/gfx/backpics/128.2bpp b/gfx/pics/128/back.2bpp
index c69b384a2..c69b384a2 100644
--- a/gfx/backpics/128.2bpp
+++ b/gfx/pics/128/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/128.lz b/gfx/pics/128/back.lz
index 219aee479..219aee479 100644
--- a/gfx/backpics/lz/128.lz
+++ b/gfx/pics/128/back.lz
Binary files differ
diff --git a/gfx/pics/128/bitmask.asm b/gfx/pics/128/bitmask.asm
new file mode 100644
index 000000000..2e5fc87ff
--- /dev/null
+++ b/gfx/pics/128/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %00000000
+ db %11000000
+ db %11100001
+ db %01110001
+ db %00011000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %11011100
+ db %11101111
+ db %11110011
+ db %01111001
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %11000000
+ db %11100011
+ db %11110011
+ db %01111001
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 0xd3138
diff --git a/gfx/pics/128/frames.asm b/gfx/pics/128/frames.asm
new file mode 100644
index 000000000..26f8df20a
--- /dev/null
+++ b/gfx/pics/128/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+.frame2
+ db $01 ; bitmask
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44, $05, $45, $46, $47
+ db $48, $49, $4a, $4b, $4c, $4d, $4e, $4f, $50, $51, $52
+.frame3
+ db $02 ; bitmask
+ db $40, $41, $42, $43, $45, $46, $47, $48, $49, $4a, $4b, $4c
+ db $4d, $4e, $4f, $50, $51, $52
+.frame4
+ db $03 ; bitmask
+ db $53
+; 0xd5d08
diff --git a/gfx/frontpics/128.2bpp b/gfx/pics/128/front.2bpp
index 18929a21d..18929a21d 100644
--- a/gfx/frontpics/128.2bpp
+++ b/gfx/pics/128/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/128.lz b/gfx/pics/128/front.lz
index d395b145b..d395b145b 100644
--- a/gfx/frontpics/lz/128.lz
+++ b/gfx/pics/128/front.lz
Binary files differ
diff --git a/gfx/anim/128.2bpp b/gfx/pics/128/tiles.2bpp
index 34db5de20..34db5de20 100644
--- a/gfx/anim/128.2bpp
+++ b/gfx/pics/128/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/129/anim0.asm b/gfx/pics/129/anim0.asm
new file mode 100644
index 000000000..f06f21a40
--- /dev/null
+++ b/gfx/pics/129/anim0.asm
@@ -0,0 +1,7 @@
+ frame 0, 12
+ setrepeat 3
+ frame 1, 09
+ frame 2, 07
+ dorepeat 2
+ endanim
+; 0xd1002
diff --git a/gfx/pics/129/anim1.asm b/gfx/pics/129/anim1.asm
new file mode 100644
index 000000000..7c3f5cb76
--- /dev/null
+++ b/gfx/pics/129/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 10
+ frame 3, 10
+ dorepeat 1
+ endanim
+; 0xd1dae
diff --git a/gfx/backpics/129.2bpp b/gfx/pics/129/back.2bpp
index f1ad585a4..f1ad585a4 100644
--- a/gfx/backpics/129.2bpp
+++ b/gfx/pics/129/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/129.lz b/gfx/pics/129/back.lz
index 17100a9c5..17100a9c5 100644
--- a/gfx/backpics/lz/129.lz
+++ b/gfx/pics/129/back.lz
Binary files differ
diff --git a/gfx/pics/129/bitmask.asm b/gfx/pics/129/bitmask.asm
new file mode 100644
index 000000000..9cd807e7b
--- /dev/null
+++ b/gfx/pics/129/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %00000001
+ db %01110001
+ db %00011000
+ db %00000000
+; 1
+ db %00000000
+ db %00000001
+ db %11100001
+ db %00111000
+ db %00001100
+; 2
+ db %00000000
+ db %00000000
+ db %01100001
+ db %00011000
+ db %00000000
+; 0xd3147
diff --git a/gfx/pics/129/frames.asm b/gfx/pics/129/frames.asm
new file mode 100644
index 000000000..cfc25cf10
--- /dev/null
+++ b/gfx/pics/129/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $24, $2b, $27, $2c, $2d, $2e, $2f, $00, $00, $00
+.frame3
+ db $02 ; bitmask
+ db $25, $27, $28, $29, $2a
+; 0xd5d27
diff --git a/gfx/frontpics/129.2bpp b/gfx/pics/129/front.2bpp
index 723c663ed..723c663ed 100644
--- a/gfx/frontpics/129.2bpp
+++ b/gfx/pics/129/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/129.lz b/gfx/pics/129/front.lz
index 3ec963c7f..3ec963c7f 100644
--- a/gfx/frontpics/lz/129.lz
+++ b/gfx/pics/129/front.lz
Binary files differ
diff --git a/gfx/anim/129.2bpp b/gfx/pics/129/tiles.2bpp
index b5ac03005..b5ac03005 100644
--- a/gfx/anim/129.2bpp
+++ b/gfx/pics/129/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/130/anim0.asm b/gfx/pics/130/anim0.asm
new file mode 100644
index 000000000..89195fa31
--- /dev/null
+++ b/gfx/pics/130/anim0.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 1, 11
+ frame 2, 11
+ dorepeat 1
+ endanim
+; 0xd100b
diff --git a/gfx/pics/130/anim1.asm b/gfx/pics/130/anim1.asm
new file mode 100644
index 000000000..b33c52080
--- /dev/null
+++ b/gfx/pics/130/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1db7
diff --git a/gfx/backpics/130.2bpp b/gfx/pics/130/back.2bpp
index 980aad36a..980aad36a 100644
--- a/gfx/backpics/130.2bpp
+++ b/gfx/pics/130/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/130.lz b/gfx/pics/130/back.lz
index d061ec9b2..d061ec9b2 100644
--- a/gfx/backpics/lz/130.lz
+++ b/gfx/pics/130/back.lz
Binary files differ
diff --git a/gfx/pics/130/bitmask.asm b/gfx/pics/130/bitmask.asm
new file mode 100644
index 000000000..2e55e37e0
--- /dev/null
+++ b/gfx/pics/130/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00100000
+ db %11110000
+ db %11110111
+ db %11110011
+ db %00000001
+; 1
+ db %00000000
+ db %00000100
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3155
diff --git a/gfx/pics/130/frames.asm b/gfx/pics/130/frames.asm
new file mode 100644
index 000000000..7624220e1
--- /dev/null
+++ b/gfx/pics/130/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $00, $3f, $40, $41, $42
+.frame2
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $43
+ db $44, $3e, $00, $45, $46, $47, $42
+.frame3
+ db $01 ; bitmask
+ db $48, $49
+; 0xd5d58
diff --git a/gfx/frontpics/130.2bpp b/gfx/pics/130/front.2bpp
index 380ad1765..380ad1765 100644
--- a/gfx/frontpics/130.2bpp
+++ b/gfx/pics/130/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/130.lz b/gfx/pics/130/front.lz
index 4d66d5814..4d66d5814 100644
--- a/gfx/frontpics/lz/130.lz
+++ b/gfx/pics/130/front.lz
Binary files differ
diff --git a/gfx/anim/130.2bpp b/gfx/pics/130/tiles.2bpp
index ed03372c5..ed03372c5 100644
--- a/gfx/anim/130.2bpp
+++ b/gfx/pics/130/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/131/anim0.asm b/gfx/pics/131/anim0.asm
new file mode 100644
index 000000000..9ae8f4e5c
--- /dev/null
+++ b/gfx/pics/131/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 10
+ frame 2, 07
+ frame 3, 40
+ frame 2, 09
+ frame 1, 10
+ endanim
+; 0xd1016
diff --git a/gfx/pics/131/anim1.asm b/gfx/pics/131/anim1.asm
new file mode 100644
index 000000000..790cccf05
--- /dev/null
+++ b/gfx/pics/131/anim1.asm
@@ -0,0 +1,6 @@
+ frame 4, 10
+ frame 5, 30
+ frame 0, 12
+ frame 5, 12
+ endanim
+; 0xd1dc0
diff --git a/gfx/backpics/131.2bpp b/gfx/pics/131/back.2bpp
index d766fc947..d766fc947 100644
--- a/gfx/backpics/131.2bpp
+++ b/gfx/pics/131/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/131.lz b/gfx/pics/131/back.lz
index 00f6b4329..00f6b4329 100644
--- a/gfx/backpics/lz/131.lz
+++ b/gfx/pics/131/back.lz
Binary files differ
diff --git a/gfx/pics/131/bitmask.asm b/gfx/pics/131/bitmask.asm
new file mode 100644
index 000000000..82d831e3c
--- /dev/null
+++ b/gfx/pics/131/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10000111
+ db %11000011
+ db %11100001
+ db %00010000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3163
diff --git a/gfx/pics/131/frames.asm b/gfx/pics/131/frames.asm
new file mode 100644
index 000000000..6f399dbc1
--- /dev/null
+++ b/gfx/pics/131/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $03
+.frame2
+ db $00 ; bitmask
+ db $31, $32, $3d, $34, $3e, $3f, $37, $40, $41, $3a, $3b, $3c
+ db $03
+.frame3
+ db $00 ; bitmask
+ db $31, $32, $42, $34, $43, $44, $37, $45, $46, $3a, $3b, $3c
+ db $03
+.frame4
+ db $01 ; bitmask
+ db $47
+.frame5
+ db $01 ; bitmask
+ db $48
+; 0xd5d90
diff --git a/gfx/frontpics/131.2bpp b/gfx/pics/131/front.2bpp
index 55adfb90b..55adfb90b 100644
--- a/gfx/frontpics/131.2bpp
+++ b/gfx/pics/131/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/131.lz b/gfx/pics/131/front.lz
index 0c20fc0be..0c20fc0be 100644
--- a/gfx/frontpics/lz/131.lz
+++ b/gfx/pics/131/front.lz
Binary files differ
diff --git a/gfx/anim/131.2bpp b/gfx/pics/131/tiles.2bpp
index 15d74b90f..15d74b90f 100644
--- a/gfx/anim/131.2bpp
+++ b/gfx/pics/131/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/132/anim0.asm b/gfx/pics/132/anim0.asm
new file mode 100644
index 000000000..53f3f9afa
--- /dev/null
+++ b/gfx/pics/132/anim0.asm
@@ -0,0 +1,11 @@
+ frame 5, 08
+ frame 1, 08
+ frame 2, 08
+ frame 3, 06
+ frame 2, 06
+ frame 0, 12
+ frame 6, 12
+ frame 7, 12
+ frame 8, 12
+ endanim
+; 0xd1029
diff --git a/gfx/pics/132/anim1.asm b/gfx/pics/132/anim1.asm
new file mode 100644
index 000000000..195808be1
--- /dev/null
+++ b/gfx/pics/132/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd1dc9
diff --git a/gfx/backpics/132.2bpp b/gfx/pics/132/back.2bpp
index 83b3a725c..83b3a725c 100644
--- a/gfx/backpics/132.2bpp
+++ b/gfx/pics/132/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/132.lz b/gfx/pics/132/back.lz
index ee2a621bf..ee2a621bf 100644
--- a/gfx/backpics/lz/132.lz
+++ b/gfx/pics/132/back.lz
Binary files differ
diff --git a/gfx/pics/132/bitmask.asm b/gfx/pics/132/bitmask.asm
new file mode 100644
index 000000000..94d8ee8fc
--- /dev/null
+++ b/gfx/pics/132/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %11111000
+ db %10011100
+ db %10000000
+ db %00000000
+; 1
+ db %11111000
+ db %11111110
+ db %11101000
+ db %00000001
+; 2
+ db %11100000
+ db %01111010
+ db %11001000
+ db %00000001
+; 3
+ db %10000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 4
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 5
+ db %01111000
+ db %00000000
+ db %10000000
+ db %00000000
+; 6
+ db %00011000
+ db %11101110
+ db %11101000
+ db %00000001
+; 7
+ db %01100000
+ db %01101010
+ db %11001000
+ db %00000001
+; 0xd3183
diff --git a/gfx/pics/132/frames.asm b/gfx/pics/132/frames.asm
new file mode 100644
index 000000000..eabf9f840
--- /dev/null
+++ b/gfx/pics/132/frames.asm
@@ -0,0 +1,35 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+.frame1
+ db $00 ; bitmask
+ db $19, $00, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $19, $00, $1a, $1b, $1c, $00, $1d, $1e, $1f, $08, $09, $20
+ db $0e, $22, $23, $24, $13
+.frame3
+ db $02 ; bitmask
+ db $1a, $1b, $1c, $00, $1e, $1f, $08, $09, $0e, $23, $24, $13
+.frame4
+ db $03 ; bitmask
+ db $25, $26, $27
+.frame5
+ db $04 ; bitmask
+ db $1c, $1f
+.frame6
+ db $05 ; bitmask
+ db $19, $00, $1a, $1b, $21
+.frame7
+ db $06 ; bitmask
+ db $19, $00, $00, $1d, $1e, $08, $09, $20, $0e, $22, $23, $24
+ db $13
+.frame8
+ db $07 ; bitmask
+ db $1a, $1b, $00, $1e, $08, $09, $0e, $23, $24, $13
+; 0xd5df0
diff --git a/gfx/frontpics/132.2bpp b/gfx/pics/132/front.2bpp
index bbf86351e..bbf86351e 100644
--- a/gfx/frontpics/132.2bpp
+++ b/gfx/pics/132/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/132.lz b/gfx/pics/132/front.lz
index ef64bd777..ef64bd777 100644
--- a/gfx/frontpics/lz/132.lz
+++ b/gfx/pics/132/front.lz
Binary files differ
diff --git a/gfx/anim/132.2bpp b/gfx/pics/132/tiles.2bpp
index c4f163a50..c4f163a50 100644
--- a/gfx/anim/132.2bpp
+++ b/gfx/pics/132/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/133/anim0.asm b/gfx/pics/133/anim0.asm
new file mode 100644
index 000000000..537cefb83
--- /dev/null
+++ b/gfx/pics/133/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 06
+ frame 2, 06
+ setrepeat 2
+ frame 3, 07
+ frame 4, 07
+ dorepeat 3
+ frame 2, 10
+ endanim
+; 0xd1038
diff --git a/gfx/pics/133/anim1.asm b/gfx/pics/133/anim1.asm
new file mode 100644
index 000000000..0f50b3cb8
--- /dev/null
+++ b/gfx/pics/133/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 3
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ frame 0, 09
+ frame 5, 13
+ endanim
+; 0xd1dd6
diff --git a/gfx/backpics/133.2bpp b/gfx/pics/133/back.2bpp
index ba0493408..ba0493408 100644
--- a/gfx/backpics/133.2bpp
+++ b/gfx/pics/133/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/133.lz b/gfx/pics/133/back.lz
index ddd051f3a..ddd051f3a 100644
--- a/gfx/backpics/lz/133.lz
+++ b/gfx/pics/133/back.lz
Binary files differ
diff --git a/gfx/pics/133/bitmask.asm b/gfx/pics/133/bitmask.asm
new file mode 100644
index 000000000..654492f61
--- /dev/null
+++ b/gfx/pics/133/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %00000000
+ db %01100010
+ db %00000000
+ db %00000000
+; 1
+ db %11000110
+ db %11100010
+ db %00110101
+ db %00000000
+; 2
+ db %00000000
+ db %01100010
+ db %00000100
+ db %00000000
+; 3
+ db %11000110
+ db %10000000
+ db %00110001
+ db %00000000
+; 0xd3193
diff --git a/gfx/pics/133/frames.asm b/gfx/pics/133/frames.asm
new file mode 100644
index 000000000..61da3fb18
--- /dev/null
+++ b/gfx/pics/133/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $00 ; bitmask
+ db $1c, $1a, $1d
+.frame3
+ db $01 ; bitmask
+ db $1e, $1f, $20, $21, $1c, $1a, $1d, $22, $23, $24, $25, $26
+.frame4
+ db $02 ; bitmask
+ db $1c, $1a, $1d, $24
+.frame5
+ db $03 ; bitmask
+ db $1e, $1f, $20, $21, $22, $23, $25, $26
+; 0xd5e1d
diff --git a/gfx/frontpics/133.2bpp b/gfx/pics/133/front.2bpp
index 859ca6da6..859ca6da6 100644
--- a/gfx/frontpics/133.2bpp
+++ b/gfx/pics/133/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/133.lz b/gfx/pics/133/front.lz
index aea8d545e..aea8d545e 100644
--- a/gfx/frontpics/lz/133.lz
+++ b/gfx/pics/133/front.lz
Binary files differ
diff --git a/gfx/anim/133.2bpp b/gfx/pics/133/tiles.2bpp
index 13129a596..13129a596 100644
--- a/gfx/anim/133.2bpp
+++ b/gfx/pics/133/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/134/anim0.asm b/gfx/pics/134/anim0.asm
new file mode 100644
index 000000000..d13f1dd94
--- /dev/null
+++ b/gfx/pics/134/anim0.asm
@@ -0,0 +1,7 @@
+ frame 0, 04
+ setrepeat 3
+ frame 1, 10
+ frame 2, 10
+ dorepeat 2
+ endanim
+; 0xd1043
diff --git a/gfx/pics/134/anim1.asm b/gfx/pics/134/anim1.asm
new file mode 100644
index 000000000..79c386650
--- /dev/null
+++ b/gfx/pics/134/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1ddf
diff --git a/gfx/backpics/134.2bpp b/gfx/pics/134/back.2bpp
index 27c7104ee..27c7104ee 100644
--- a/gfx/backpics/134.2bpp
+++ b/gfx/pics/134/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/134.lz b/gfx/pics/134/back.lz
index 9ea248261..9ea248261 100644
--- a/gfx/backpics/lz/134.lz
+++ b/gfx/pics/134/back.lz
Binary files differ
diff --git a/gfx/pics/134/bitmask.asm b/gfx/pics/134/bitmask.asm
new file mode 100644
index 000000000..05dbd7e0f
--- /dev/null
+++ b/gfx/pics/134/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %11000111
+ db %00110001
+ db %00001101
+ db %00000010
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %01100001
+ db %00000000
+ db %00000000
+; 0xd319d
diff --git a/gfx/pics/134/frames.asm b/gfx/pics/134/frames.asm
new file mode 100644
index 000000000..0cc0568e7
--- /dev/null
+++ b/gfx/pics/134/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $03, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $00 ; bitmask
+ db $2f, $30, $31, $1f, $32, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame3
+ db $01 ; bitmask
+ db $33, $34, $35, $36
+; 0xd5e42
diff --git a/gfx/frontpics/134.2bpp b/gfx/pics/134/front.2bpp
index de515ca32..de515ca32 100644
--- a/gfx/frontpics/134.2bpp
+++ b/gfx/pics/134/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/134.lz b/gfx/pics/134/front.lz
index 67793c7ec..67793c7ec 100644
--- a/gfx/frontpics/lz/134.lz
+++ b/gfx/pics/134/front.lz
Binary files differ
diff --git a/gfx/anim/134.2bpp b/gfx/pics/134/tiles.2bpp
index 3fcaf7b6f..3fcaf7b6f 100644
--- a/gfx/anim/134.2bpp
+++ b/gfx/pics/134/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/135/anim0.asm b/gfx/pics/135/anim0.asm
new file mode 100644
index 000000000..c4c01e60a
--- /dev/null
+++ b/gfx/pics/135/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 05
+ frame 2, 38
+ frame 1, 08
+ frame 0, 20
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 5
+ endanim
+; 0xd1054
diff --git a/gfx/pics/135/anim1.asm b/gfx/pics/135/anim1.asm
new file mode 100644
index 000000000..0b5481afd
--- /dev/null
+++ b/gfx/pics/135/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1de8
diff --git a/gfx/backpics/135.2bpp b/gfx/pics/135/back.2bpp
index a99e1bb4a..a99e1bb4a 100644
--- a/gfx/backpics/135.2bpp
+++ b/gfx/pics/135/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/135.lz b/gfx/pics/135/back.lz
index e95f893ce..e95f893ce 100644
--- a/gfx/backpics/lz/135.lz
+++ b/gfx/pics/135/back.lz
Binary files differ
diff --git a/gfx/pics/135/bitmask.asm b/gfx/pics/135/bitmask.asm
new file mode 100644
index 000000000..7d7c181cd
--- /dev/null
+++ b/gfx/pics/135/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11101010
+ db %11111011
+ db %11111111
+ db %00001011
+ db %00000000
+; 1
+ db %11101010
+ db %11111011
+ db %11111111
+ db %11001011
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd31b1
diff --git a/gfx/pics/135/frames.asm b/gfx/pics/135/frames.asm
new file mode 100644
index 000000000..95447944a
--- /dev/null
+++ b/gfx/pics/135/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $00, $31, $32, $33, $34, $35, $36, $37, $38, $39
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $3a
+ db $30, $00, $31, $32, $33, $34, $35, $36, $3b, $3c, $39, $3d
+ db $3e
+.frame3
+ db $02 ; bitmask
+ db $3f
+.frame4
+ db $03 ; bitmask
+ db $40
+; 0xd5e80
diff --git a/gfx/frontpics/135.2bpp b/gfx/pics/135/front.2bpp
index ac23107d7..ac23107d7 100644
--- a/gfx/frontpics/135.2bpp
+++ b/gfx/pics/135/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/135.lz b/gfx/pics/135/front.lz
index 32d271390..32d271390 100644
--- a/gfx/frontpics/lz/135.lz
+++ b/gfx/pics/135/front.lz
Binary files differ
diff --git a/gfx/anim/135.2bpp b/gfx/pics/135/tiles.2bpp
index f61d41938..f61d41938 100644
--- a/gfx/anim/135.2bpp
+++ b/gfx/pics/135/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/136/anim0.asm b/gfx/pics/136/anim0.asm
new file mode 100644
index 000000000..dbefae362
--- /dev/null
+++ b/gfx/pics/136/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 10
+ setrepeat 3
+ frame 2, 08
+ frame 3, 08
+ dorepeat 2
+ endanim
+; 0xd105f
diff --git a/gfx/pics/136/anim1.asm b/gfx/pics/136/anim1.asm
new file mode 100644
index 000000000..431573106
--- /dev/null
+++ b/gfx/pics/136/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1df1
diff --git a/gfx/backpics/136.2bpp b/gfx/pics/136/back.2bpp
index 69a975ff2..69a975ff2 100644
--- a/gfx/backpics/136.2bpp
+++ b/gfx/pics/136/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/136.lz b/gfx/pics/136/back.lz
index bafc64cd2..bafc64cd2 100644
--- a/gfx/backpics/lz/136.lz
+++ b/gfx/pics/136/back.lz
Binary files differ
diff --git a/gfx/pics/136/bitmask.asm b/gfx/pics/136/bitmask.asm
new file mode 100644
index 000000000..ffe910631
--- /dev/null
+++ b/gfx/pics/136/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11011110
+ db %11110111
+ db %00011001
+ db %00000110
+ db %00000000
+; 1
+ db %00000000
+ db %00000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000110
+ db %00001100
+ db %11010001
+ db %00000111
+; 3
+ db %00001000
+ db %10000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd31c5
diff --git a/gfx/pics/136/frames.asm b/gfx/pics/136/frames.asm
new file mode 100644
index 000000000..ed85e6737
--- /dev/null
+++ b/gfx/pics/136/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $00, $2c, $2d
+ db $2e, $2f, $30, $1a, $31, $00
+.frame2
+ db $01 ; bitmask
+ db $32, $33
+.frame3
+ db $02 ; bitmask
+ db $32, $33, $34, $35, $36, $37, $00, $20, $21, $1f, $00
+.frame4
+ db $03 ; bitmask
+ db $38, $39, $3a
+; 0xd5eae
diff --git a/gfx/frontpics/136.2bpp b/gfx/pics/136/front.2bpp
index 02caa921d..02caa921d 100644
--- a/gfx/frontpics/136.2bpp
+++ b/gfx/pics/136/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/136.lz b/gfx/pics/136/front.lz
index d3210b7e3..d3210b7e3 100644
--- a/gfx/frontpics/lz/136.lz
+++ b/gfx/pics/136/front.lz
Binary files differ
diff --git a/gfx/anim/136.2bpp b/gfx/pics/136/tiles.2bpp
index e275749c6..e275749c6 100644
--- a/gfx/anim/136.2bpp
+++ b/gfx/pics/136/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/137/anim0.asm b/gfx/pics/137/anim0.asm
new file mode 100644
index 000000000..0246a5621
--- /dev/null
+++ b/gfx/pics/137/anim0.asm
@@ -0,0 +1,9 @@
+ setrepeat 3
+ frame 1, 03
+ frame 0, 03
+ dorepeat 1
+ frame 1, 25
+ frame 2, 06
+ frame 1, 06
+ endanim
+; 0xd106e
diff --git a/gfx/pics/137/anim1.asm b/gfx/pics/137/anim1.asm
new file mode 100644
index 000000000..89af5d13f
--- /dev/null
+++ b/gfx/pics/137/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd1dfa
diff --git a/gfx/backpics/137.2bpp b/gfx/pics/137/back.2bpp
index fc17d5987..fc17d5987 100644
--- a/gfx/backpics/137.2bpp
+++ b/gfx/pics/137/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/137.lz b/gfx/pics/137/back.lz
index 5f0a47032..5f0a47032 100644
--- a/gfx/backpics/lz/137.lz
+++ b/gfx/pics/137/back.lz
Binary files differ
diff --git a/gfx/pics/137/bitmask.asm b/gfx/pics/137/bitmask.asm
new file mode 100644
index 000000000..3cbd5be4e
--- /dev/null
+++ b/gfx/pics/137/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00110000
+ db %11001110
+ db %11100011
+ db %00111000
+ db %00001100
+; 1
+ db %00110000
+ db %11101110
+ db %11100011
+ db %00111000
+ db %00001100
+; 2
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd31d4
diff --git a/gfx/pics/137/frames.asm b/gfx/pics/137/frames.asm
new file mode 100644
index 000000000..885a011f2
--- /dev/null
+++ b/gfx/pics/137/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $35, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $32, $33, $34
+.frame3
+ db $02 ; bitmask
+ db $35
+; 0xd5edb
diff --git a/gfx/frontpics/137.2bpp b/gfx/pics/137/front.2bpp
index d2731f790..d2731f790 100644
--- a/gfx/frontpics/137.2bpp
+++ b/gfx/pics/137/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/137.lz b/gfx/pics/137/front.lz
index 734305a14..734305a14 100644
--- a/gfx/frontpics/lz/137.lz
+++ b/gfx/pics/137/front.lz
Binary files differ
diff --git a/gfx/anim/137.2bpp b/gfx/pics/137/tiles.2bpp
index e04b2c732..e04b2c732 100644
--- a/gfx/anim/137.2bpp
+++ b/gfx/pics/137/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/138/anim0.asm b/gfx/pics/138/anim0.asm
new file mode 100644
index 000000000..5863efecc
--- /dev/null
+++ b/gfx/pics/138/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 08
+ frame 2, 22
+ frame 1, 08
+ endanim
+; 0xd1075
diff --git a/gfx/pics/138/anim1.asm b/gfx/pics/138/anim1.asm
new file mode 100644
index 000000000..ffdce5abd
--- /dev/null
+++ b/gfx/pics/138/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1e03
diff --git a/gfx/backpics/138.2bpp b/gfx/pics/138/back.2bpp
index 1d25b3190..1d25b3190 100644
--- a/gfx/backpics/138.2bpp
+++ b/gfx/pics/138/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/138.lz b/gfx/pics/138/back.lz
index 0ee462eaf..0ee462eaf 100644
--- a/gfx/backpics/lz/138.lz
+++ b/gfx/pics/138/back.lz
Binary files differ
diff --git a/gfx/pics/138/bitmask.asm b/gfx/pics/138/bitmask.asm
new file mode 100644
index 000000000..c0f074898
--- /dev/null
+++ b/gfx/pics/138/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00011100
+ db %00000010
+ db %10001100
+ db %00000000
+; 1
+ db %00011100
+ db %00000011
+ db %10001100
+ db %00000000
+; 2
+ db %00000000
+ db %00100001
+ db %00000100
+ db %00000000
+; 0xd31e0
diff --git a/gfx/pics/138/frames.asm b/gfx/pics/138/frames.asm
new file mode 100644
index 000000000..525d1d93c
--- /dev/null
+++ b/gfx/pics/138/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f
+.frame2
+ db $01 ; bitmask
+ db $20, $21, $1b, $22, $1c, $23, $1e, $1f
+.frame3
+ db $02 ; bitmask
+ db $24, $25, $26
+; 0xd5ef6
diff --git a/gfx/frontpics/138.2bpp b/gfx/pics/138/front.2bpp
index 7e3997752..7e3997752 100644
--- a/gfx/frontpics/138.2bpp
+++ b/gfx/pics/138/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/138.lz b/gfx/pics/138/front.lz
index 7673b2390..7673b2390 100644
--- a/gfx/frontpics/lz/138.lz
+++ b/gfx/pics/138/front.lz
Binary files differ
diff --git a/gfx/anim/138.2bpp b/gfx/pics/138/tiles.2bpp
index 95de6257e..95de6257e 100644
--- a/gfx/anim/138.2bpp
+++ b/gfx/pics/138/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/139/anim0.asm b/gfx/pics/139/anim0.asm
new file mode 100644
index 000000000..76d8c3aa8
--- /dev/null
+++ b/gfx/pics/139/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 10
+ frame 2, 40
+ frame 1, 06
+ endanim
+; 0xd107c
diff --git a/gfx/pics/139/anim1.asm b/gfx/pics/139/anim1.asm
new file mode 100644
index 000000000..60bcf04d2
--- /dev/null
+++ b/gfx/pics/139/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 11
+ frame 3, 11
+ dorepeat 1
+ endanim
+; 0xd1e0c
diff --git a/gfx/backpics/139.2bpp b/gfx/pics/139/back.2bpp
index d79655e38..d79655e38 100644
--- a/gfx/backpics/139.2bpp
+++ b/gfx/pics/139/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/139.lz b/gfx/pics/139/back.lz
index b41a828c5..b41a828c5 100644
--- a/gfx/backpics/lz/139.lz
+++ b/gfx/pics/139/back.lz
Binary files differ
diff --git a/gfx/pics/139/bitmask.asm b/gfx/pics/139/bitmask.asm
new file mode 100644
index 000000000..abc37f8f8
--- /dev/null
+++ b/gfx/pics/139/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00011000
+ db %10000110
+ db %00110000
+ db %00001000
+ db %00000011
+; 1
+ db %00111100
+ db %10001110
+ db %01110001
+ db %00001000
+ db %00001111
+; 2
+ db %00000000
+ db %00000000
+ db %01000001
+ db %00000000
+ db %00000000
+; 0xd31ef
diff --git a/gfx/pics/139/frames.asm b/gfx/pics/139/frames.asm
new file mode 100644
index 000000000..92ef4b589
--- /dev/null
+++ b/gfx/pics/139/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame2
+ db $01 ; bitmask
+ db $2e, $24, $2f, $30, $26, $27, $31, $32, $33, $29, $2a, $34
+ db $2b, $35, $36, $37, $38
+.frame3
+ db $02 ; bitmask
+ db $33, $34
+; 0xd5f1c
diff --git a/gfx/frontpics/139.2bpp b/gfx/pics/139/front.2bpp
index 60b43091b..60b43091b 100644
--- a/gfx/frontpics/139.2bpp
+++ b/gfx/pics/139/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/139.lz b/gfx/pics/139/front.lz
index 544e2d87b..544e2d87b 100644
--- a/gfx/frontpics/lz/139.lz
+++ b/gfx/pics/139/front.lz
Binary files differ
diff --git a/gfx/anim/139.2bpp b/gfx/pics/139/tiles.2bpp
index 445c1c37d..445c1c37d 100644
--- a/gfx/anim/139.2bpp
+++ b/gfx/pics/139/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/140/anim0.asm b/gfx/pics/140/anim0.asm
new file mode 100644
index 000000000..de308c900
--- /dev/null
+++ b/gfx/pics/140/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 2, 12
+ frame 1, 16
+ frame 2, 12
+ endanim
+; 0xd1085
diff --git a/gfx/pics/140/anim1.asm b/gfx/pics/140/anim1.asm
new file mode 100644
index 000000000..0e347c87d
--- /dev/null
+++ b/gfx/pics/140/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ frame 0, 18
+ frame 3, 04
+ endanim
+; 0xd1e19
diff --git a/gfx/backpics/140.2bpp b/gfx/pics/140/back.2bpp
index 97b4829af..97b4829af 100644
--- a/gfx/backpics/140.2bpp
+++ b/gfx/pics/140/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/140.lz b/gfx/pics/140/back.lz
index 61390a32e..61390a32e 100644
--- a/gfx/backpics/lz/140.lz
+++ b/gfx/pics/140/back.lz
Binary files differ
diff --git a/gfx/pics/140/bitmask.asm b/gfx/pics/140/bitmask.asm
new file mode 100644
index 000000000..7cdb4204f
--- /dev/null
+++ b/gfx/pics/140/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00011000
+ db %00000011
+ db %00001100
+ db %00000001
+; 1
+ db %00011000
+ db %00000011
+ db %00001000
+ db %00000001
+; 2
+ db %10000100
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd31fb
diff --git a/gfx/pics/140/frames.asm b/gfx/pics/140/frames.asm
new file mode 100644
index 000000000..482d0069c
--- /dev/null
+++ b/gfx/pics/140/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $00, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $1f, $20, $21, $1b, $22, $1e
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25
+; 0xd5f35
diff --git a/gfx/frontpics/140.2bpp b/gfx/pics/140/front.2bpp
index 3d3a23abb..3d3a23abb 100644
--- a/gfx/frontpics/140.2bpp
+++ b/gfx/pics/140/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/140.lz b/gfx/pics/140/front.lz
index 24a9376c8..24a9376c8 100644
--- a/gfx/frontpics/lz/140.lz
+++ b/gfx/pics/140/front.lz
Binary files differ
diff --git a/gfx/anim/140.2bpp b/gfx/pics/140/tiles.2bpp
index 20fc391ce..20fc391ce 100644
--- a/gfx/anim/140.2bpp
+++ b/gfx/pics/140/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/141/anim0.asm b/gfx/pics/141/anim0.asm
new file mode 100644
index 000000000..f5812126a
--- /dev/null
+++ b/gfx/pics/141/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 40
+ setrepeat 2
+ frame 1, 05
+ frame 2, 05
+ dorepeat 2
+ frame 1, 25
+ endanim
+; 0xd1092
diff --git a/gfx/pics/141/anim1.asm b/gfx/pics/141/anim1.asm
new file mode 100644
index 000000000..32a70f827
--- /dev/null
+++ b/gfx/pics/141/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd1e22
diff --git a/gfx/backpics/141.2bpp b/gfx/pics/141/back.2bpp
index 04bc8e6e5..04bc8e6e5 100644
--- a/gfx/backpics/141.2bpp
+++ b/gfx/pics/141/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/141.lz b/gfx/pics/141/back.lz
index 507c10e2f..507c10e2f 100644
--- a/gfx/backpics/lz/141.lz
+++ b/gfx/pics/141/back.lz
Binary files differ
diff --git a/gfx/pics/141/bitmask.asm b/gfx/pics/141/bitmask.asm
new file mode 100644
index 000000000..34b29ddb0
--- /dev/null
+++ b/gfx/pics/141/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %11011111
+ db %11110111
+ db %00111101
+ db %10001111
+ db %00000111
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %10001110
+ db %00000111
+; 0xd3205
diff --git a/gfx/pics/141/frames.asm b/gfx/pics/141/frames.asm
new file mode 100644
index 000000000..2881f9fe1
--- /dev/null
+++ b/gfx/pics/141/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $1e, $24, $25, $1e, $1e, $26, $27, $28, $29, $2a, $2b, $2c
+ db $2d, $2e, $2f, $30, $31, $32, $33, $34, $35, $36, $37, $1e
+ db $1e, $1e, $1e
+.frame2
+ db $00 ; bitmask
+ db $1e, $24, $25, $1e, $1e, $26, $27, $28, $29, $2a, $2b, $38
+ db $39, $2e, $2f, $30, $31, $32, $33, $34, $35, $36, $37, $1e
+ db $1e, $1e, $1e
+.frame3
+ db $01 ; bitmask
+ db $3a, $3b, $3c, $1e, $1e, $1e, $1e
+; 0xd5f7b
diff --git a/gfx/frontpics/141.2bpp b/gfx/pics/141/front.2bpp
index 356a225e3..356a225e3 100644
--- a/gfx/frontpics/141.2bpp
+++ b/gfx/pics/141/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/141.lz b/gfx/pics/141/front.lz
index 38d21fa16..38d21fa16 100644
--- a/gfx/frontpics/lz/141.lz
+++ b/gfx/pics/141/front.lz
Binary files differ
diff --git a/gfx/anim/141.2bpp b/gfx/pics/141/tiles.2bpp
index af1adb64c..af1adb64c 100644
--- a/gfx/anim/141.2bpp
+++ b/gfx/pics/141/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/142/anim0.asm b/gfx/pics/142/anim0.asm
new file mode 100644
index 000000000..515cba043
--- /dev/null
+++ b/gfx/pics/142/anim0.asm
@@ -0,0 +1,9 @@
+ frame 2, 12
+ frame 0, 12
+ frame 2, 16
+ setrepeat 3
+ frame 0, 08
+ frame 1, 08
+ dorepeat 4
+ endanim
+; 0xd10a1
diff --git a/gfx/pics/142/anim1.asm b/gfx/pics/142/anim1.asm
new file mode 100644
index 000000000..4394a8e0c
--- /dev/null
+++ b/gfx/pics/142/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1e2b
diff --git a/gfx/backpics/142.2bpp b/gfx/pics/142/back.2bpp
index 9ce97a2c7..9ce97a2c7 100644
--- a/gfx/backpics/142.2bpp
+++ b/gfx/pics/142/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/142.lz b/gfx/pics/142/back.lz
index 05536351b..05536351b 100644
--- a/gfx/backpics/lz/142.lz
+++ b/gfx/pics/142/back.lz
Binary files differ
diff --git a/gfx/pics/142/bitmask.asm b/gfx/pics/142/bitmask.asm
new file mode 100644
index 000000000..76095eb39
--- /dev/null
+++ b/gfx/pics/142/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10011111
+ db %00000111
+ db %10000000
+ db %11110111
+ db %11111001
+ db %00111100
+ db %00000000
+; 1
+ db %00001000
+ db %00001110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd321a
diff --git a/gfx/pics/142/frames.asm b/gfx/pics/142/frames.asm
new file mode 100644
index 000000000..669d78e38
--- /dev/null
+++ b/gfx/pics/142/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $30, $30, $3d, $3e, $3f, $30, $30, $20, $40, $41, $30
+ db $30, $30, $30
+.frame2
+ db $01 ; bitmask
+ db $30, $42, $43, $44, $45, $46, $47
+.frame3
+ db $02 ; bitmask
+ db $48
+; 0xd5fa7
diff --git a/gfx/frontpics/142.2bpp b/gfx/pics/142/front.2bpp
index 27be4867b..27be4867b 100644
--- a/gfx/frontpics/142.2bpp
+++ b/gfx/pics/142/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/142.lz b/gfx/pics/142/front.lz
index ae8d9f8ab..ae8d9f8ab 100644
--- a/gfx/frontpics/lz/142.lz
+++ b/gfx/pics/142/front.lz
Binary files differ
diff --git a/gfx/anim/142.2bpp b/gfx/pics/142/tiles.2bpp
index a8694c2a6..a8694c2a6 100644
--- a/gfx/anim/142.2bpp
+++ b/gfx/pics/142/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/143/anim0.asm b/gfx/pics/143/anim0.asm
new file mode 100644
index 000000000..3825f3bca
--- /dev/null
+++ b/gfx/pics/143/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 10
+ frame 2, 43
+ frame 1, 10
+ frame 0, 15
+ setrepeat 2
+ frame 0, 09
+ frame 3, 09
+ dorepeat 5
+ endanim
+; 0xd10b2
diff --git a/gfx/pics/143/anim1.asm b/gfx/pics/143/anim1.asm
new file mode 100644
index 000000000..4969f8f1f
--- /dev/null
+++ b/gfx/pics/143/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 3, 10
+ dorepeat 1
+ endanim
+; 0xd1e34
diff --git a/gfx/backpics/143.2bpp b/gfx/pics/143/back.2bpp
index b9aad8f93..b9aad8f93 100644
--- a/gfx/backpics/143.2bpp
+++ b/gfx/pics/143/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/143.lz b/gfx/pics/143/back.lz
index dfbfcbb50..dfbfcbb50 100644
--- a/gfx/backpics/lz/143.lz
+++ b/gfx/pics/143/back.lz
Binary files differ
diff --git a/gfx/pics/143/bitmask.asm b/gfx/pics/143/bitmask.asm
new file mode 100644
index 000000000..1f456ab16
--- /dev/null
+++ b/gfx/pics/143/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %10000011
+ db %01000001
+ db %11100000
+ db %01110000
+ db %00010000
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd322f
diff --git a/gfx/pics/143/frames.asm b/gfx/pics/143/frames.asm
new file mode 100644
index 000000000..004a1a4c1
--- /dev/null
+++ b/gfx/pics/143/frames.asm
@@ -0,0 +1,16 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame4
+ db $ce, $5f, $d0, $5f
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+.frame2
+ db $00 ; bitmask
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48
+.frame3
+ db $01 ; bitmask
+ db $49, $4a
+ db $02, $4b, $02, $4b ; unused
+; 0xd5fce
diff --git a/gfx/frontpics/143.2bpp b/gfx/pics/143/front.2bpp
index a7a577f88..a7a577f88 100644
--- a/gfx/frontpics/143.2bpp
+++ b/gfx/pics/143/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/143.lz b/gfx/pics/143/front.lz
index 7c610f46c..7c610f46c 100644
--- a/gfx/frontpics/lz/143.lz
+++ b/gfx/pics/143/front.lz
Binary files differ
diff --git a/gfx/anim/143.2bpp b/gfx/pics/143/tiles.2bpp
index 6665d719c..6665d719c 100644
--- a/gfx/anim/143.2bpp
+++ b/gfx/pics/143/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/144/anim0.asm b/gfx/pics/144/anim0.asm
new file mode 100644
index 000000000..ccb583766
--- /dev/null
+++ b/gfx/pics/144/anim0.asm
@@ -0,0 +1,9 @@
+ frame 5, 08
+ setrepeat 2
+ frame 1, 10
+ frame 2, 10
+ frame 3, 10
+ dorepeat 2
+ frame 5, 12
+ endanim
+; 0xd10c1
diff --git a/gfx/pics/144/anim1.asm b/gfx/pics/144/anim1.asm
new file mode 100644
index 000000000..634d8daff
--- /dev/null
+++ b/gfx/pics/144/anim1.asm
@@ -0,0 +1,8 @@
+ frame 5, 08
+ setrepeat 2
+ frame 4, 06
+ frame 1, 06
+ dorepeat 2
+ frame 5, 12
+ endanim
+; 0xd1e41
diff --git a/gfx/backpics/144.2bpp b/gfx/pics/144/back.2bpp
index 58411cbb6..58411cbb6 100644
--- a/gfx/backpics/144.2bpp
+++ b/gfx/pics/144/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/144.lz b/gfx/pics/144/back.lz
index 87b61ac9d..87b61ac9d 100644
--- a/gfx/backpics/lz/144.lz
+++ b/gfx/pics/144/back.lz
Binary files differ
diff --git a/gfx/pics/144/bitmask.asm b/gfx/pics/144/bitmask.asm
new file mode 100644
index 000000000..8f81e3092
--- /dev/null
+++ b/gfx/pics/144/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00000110
+ db %00010011
+ db %00000001
+ db %11100000
+ db %01111000
+ db %00011100
+ db %00000000
+; 1
+ db %00000110
+ db %11010011
+ db %11100001
+ db %11110000
+ db %11111000
+ db %01111100
+ db %00000000
+; 2
+ db %00000110
+ db %11010011
+ db %11100001
+ db %11110000
+ db %01111000
+ db %00111100
+ db %00000000
+; 3
+ db %00000110
+ db %00010011
+ db %00001101
+ db %11100000
+ db %01111000
+ db %00011100
+ db %00000000
+; 4
+ db %00000110
+ db %00000011
+ db %00000001
+ db %11100000
+ db %01111000
+ db %00011100
+ db %00000000
+; 0xd3252
diff --git a/gfx/pics/144/frames.asm b/gfx/pics/144/frames.asm
new file mode 100644
index 000000000..c30536bd3
--- /dev/null
+++ b/gfx/pics/144/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $35, $41, $00, $42, $43, $44, $45, $46
+ db $47, $38, $39, $48, $3b, $3c, $49, $2e, $3e, $3f, $4a, $00
+ db $00
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33, $34, $35, $00, $4b, $4c, $4d, $27, $4e, $4f
+ db $50, $38, $39, $3a, $3b, $3c, $51, $3e, $3f, $4a, $52
+.frame4
+ db $03 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $53, $54, $37, $38, $39, $3a
+ db $3b, $3c, $3d, $3e, $3f, $40
+.frame5
+ db $04 ; bitmask
+ db $31, $32, $33, $34, $36, $37, $38, $39, $3a, $3b, $3c, $3d
+ db $3e, $3f, $40
+; 0xd6042
diff --git a/gfx/frontpics/144.2bpp b/gfx/pics/144/front.2bpp
index 55d0cf1f2..55d0cf1f2 100644
--- a/gfx/frontpics/144.2bpp
+++ b/gfx/pics/144/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/144.lz b/gfx/pics/144/front.lz
index a60367098..a60367098 100644
--- a/gfx/frontpics/lz/144.lz
+++ b/gfx/pics/144/front.lz
Binary files differ
diff --git a/gfx/anim/144.2bpp b/gfx/pics/144/tiles.2bpp
index 8d71c018a..8d71c018a 100644
--- a/gfx/anim/144.2bpp
+++ b/gfx/pics/144/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/145/anim0.asm b/gfx/pics/145/anim0.asm
new file mode 100644
index 000000000..a22540c2a
--- /dev/null
+++ b/gfx/pics/145/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 10
+ setrepeat 3
+ frame 2, 10
+ frame 3, 10
+ dorepeat 2
+ endanim
+; 0xd10cc
diff --git a/gfx/pics/145/anim1.asm b/gfx/pics/145/anim1.asm
new file mode 100644
index 000000000..3d8c8fd57
--- /dev/null
+++ b/gfx/pics/145/anim1.asm
@@ -0,0 +1,5 @@
+ frame 1, 08
+ frame 2, 50
+ frame 1, 06
+ endanim
+; 0xd1e48
diff --git a/gfx/backpics/145.2bpp b/gfx/pics/145/back.2bpp
index 7794404f8..7794404f8 100644
--- a/gfx/backpics/145.2bpp
+++ b/gfx/pics/145/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/145.lz b/gfx/pics/145/back.lz
index 2f2167941..2f2167941 100644
--- a/gfx/backpics/lz/145.lz
+++ b/gfx/pics/145/back.lz
Binary files differ
diff --git a/gfx/pics/145/bitmask.asm b/gfx/pics/145/bitmask.asm
new file mode 100644
index 000000000..e1362fa79
--- /dev/null
+++ b/gfx/pics/145/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10110111
+ db %11001111
+ db %11100011
+ db %11110001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10111111
+ db %11001111
+ db %11100111
+ db %11110001
+ db %01011000
+ db %01111000
+ db %00000000
+; 0xd3260
diff --git a/gfx/pics/145/frames.asm b/gfx/pics/145/frames.asm
new file mode 100644
index 000000000..f22a9680c
--- /dev/null
+++ b/gfx/pics/145/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $47, $34, $35, $48, $49, $4a, $4b, $4c, $4d
+ db $4e, $4f, $3e, $50, $3f, $40, $41, $42, $51, $52, $45, $46
+ db $53, $54, $55, $56, $57, $58, $59
+.frame3
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $49, $4a, $39, $3a, $3b, $4e
+ db $4f, $3e, $3f, $40, $41, $42, $43, $44, $45, $46
+; 0xd6096
diff --git a/gfx/frontpics/145.2bpp b/gfx/pics/145/front.2bpp
index 68f79166c..68f79166c 100644
--- a/gfx/frontpics/145.2bpp
+++ b/gfx/pics/145/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/145.lz b/gfx/pics/145/front.lz
index 0f048171c..0f048171c 100644
--- a/gfx/frontpics/lz/145.lz
+++ b/gfx/pics/145/front.lz
Binary files differ
diff --git a/gfx/anim/145.2bpp b/gfx/pics/145/tiles.2bpp
index c858aa005..c858aa005 100644
--- a/gfx/anim/145.2bpp
+++ b/gfx/pics/145/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/146/anim0.asm b/gfx/pics/146/anim0.asm
new file mode 100644
index 000000000..220626749
--- /dev/null
+++ b/gfx/pics/146/anim0.asm
@@ -0,0 +1,13 @@
+ frame 1, 10
+ frame 5, 10
+ frame 2, 10
+ frame 3, 10
+ frame 4, 10
+ frame 0, 10
+ frame 1, 10
+ frame 5, 10
+ frame 1, 10
+ frame 0, 12
+ frame 1, 12
+ endanim
+; 0xd10e3
diff --git a/gfx/pics/146/anim1.asm b/gfx/pics/146/anim1.asm
new file mode 100644
index 000000000..258191b6e
--- /dev/null
+++ b/gfx/pics/146/anim1.asm
@@ -0,0 +1,9 @@
+ frame 6, 05
+ frame 0, 05
+ frame 7, 05
+ frame 1, 05
+ frame 0, 12
+ frame 1, 12
+ frame 5, 12
+ endanim
+; 0xd1e57
diff --git a/gfx/backpics/146.2bpp b/gfx/pics/146/back.2bpp
index 40db77fbf..40db77fbf 100644
--- a/gfx/backpics/146.2bpp
+++ b/gfx/pics/146/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/146.lz b/gfx/pics/146/back.lz
index 542a73138..542a73138 100644
--- a/gfx/backpics/lz/146.lz
+++ b/gfx/pics/146/back.lz
Binary files differ
diff --git a/gfx/pics/146/bitmask.asm b/gfx/pics/146/bitmask.asm
new file mode 100644
index 000000000..b5cf7908e
--- /dev/null
+++ b/gfx/pics/146/bitmask.asm
@@ -0,0 +1,57 @@
+; 0
+ db %10000001
+ db %01000001
+ db %00000000
+ db %00010000
+ db %11001100
+ db %11111111
+ db %00000001
+; 1
+ db %00011110
+ db %10001111
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %10011111
+ db %11001111
+ db %00000011
+ db %00010000
+ db %11001100
+ db %11111111
+ db %00000001
+; 3
+ db %10011111
+ db %11001111
+ db %00000011
+ db %00000000
+ db %10000100
+ db %11000011
+ db %00000001
+; 4
+ db %00010000
+ db %00001000
+ db %00000000
+ db %00000000
+ db %10000100
+ db %11000011
+ db %00000001
+; 5
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 6
+ db %10000001
+ db %01000101
+ db %00000000
+ db %00010000
+ db %01001000
+ db %00111100
+ db %00000000
+; 0xd3291
diff --git a/gfx/pics/146/frames.asm b/gfx/pics/146/frames.asm
new file mode 100644
index 000000000..2db9205cb
--- /dev/null
+++ b/gfx/pics/146/frames.asm
@@ -0,0 +1,33 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $05, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $05
+.frame2
+ db $01 ; bitmask
+ db $41, $42, $43, $44, $45, $46, $47, $48, $49, $4a, $4b
+.frame3
+ db $02 ; bitmask
+ db $31, $41, $42, $43, $44, $32, $45, $46, $47, $48, $05, $49
+ db $4a, $4b, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d
+ db $3e, $3f, $40, $05
+.frame4
+ db $03 ; bitmask
+ db $31, $41, $42, $43, $44, $32, $45, $46, $47, $48, $05, $49
+ db $4a, $4b, $35, $4c, $4d, $4e, $05, $3d, $4e
+.frame5
+ db $04 ; bitmask
+ db $4f, $50, $35, $4c, $4d, $4e, $05, $3d, $4e
+.frame6
+ db $05 ; bitmask
+ db $51
+.frame7
+ db $06 ; bitmask
+ db $31, $32, $33, $51, $05, $34, $36, $37, $3b, $3c, $3d, $3e
+; 0xd610f
diff --git a/gfx/frontpics/146.2bpp b/gfx/pics/146/front.2bpp
index 14e6030e2..14e6030e2 100644
--- a/gfx/frontpics/146.2bpp
+++ b/gfx/pics/146/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/146.lz b/gfx/pics/146/front.lz
index ec03e4653..ec03e4653 100644
--- a/gfx/frontpics/lz/146.lz
+++ b/gfx/pics/146/front.lz
Binary files differ
diff --git a/gfx/anim/146.2bpp b/gfx/pics/146/tiles.2bpp
index f0339c434..f0339c434 100644
--- a/gfx/anim/146.2bpp
+++ b/gfx/pics/146/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/147/anim0.asm b/gfx/pics/147/anim0.asm
new file mode 100644
index 000000000..f844a2eec
--- /dev/null
+++ b/gfx/pics/147/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 07
+ frame 1, 07
+ dorepeat 1
+ frame 2, 09
+ frame 3, 09
+ endanim
+; 0xd10f0
diff --git a/gfx/pics/147/anim1.asm b/gfx/pics/147/anim1.asm
new file mode 100644
index 000000000..441340446
--- /dev/null
+++ b/gfx/pics/147/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd1e60
diff --git a/gfx/backpics/147.2bpp b/gfx/pics/147/back.2bpp
index a65e6e395..a65e6e395 100644
--- a/gfx/backpics/147.2bpp
+++ b/gfx/pics/147/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/147.lz b/gfx/pics/147/back.lz
index b40ffcaaf..b40ffcaaf 100644
--- a/gfx/backpics/lz/147.lz
+++ b/gfx/pics/147/back.lz
Binary files differ
diff --git a/gfx/pics/147/bitmask.asm b/gfx/pics/147/bitmask.asm
new file mode 100644
index 000000000..7a73cf8c5
--- /dev/null
+++ b/gfx/pics/147/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %01000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 1
+ db %11100111
+ db %00000000
+ db %00000001
+ db %00000000
+; 2
+ db %11100111
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+; 0xd32a1
diff --git a/gfx/pics/147/frames.asm b/gfx/pics/147/frames.asm
new file mode 100644
index 000000000..fcddd94c3
--- /dev/null
+++ b/gfx/pics/147/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f, $20, $21, $22
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25, $26, $27, $28
+.frame4
+ db $03 ; bitmask
+ db $22
+; 0xd612c
diff --git a/gfx/frontpics/147.2bpp b/gfx/pics/147/front.2bpp
index f49287eea..f49287eea 100644
--- a/gfx/frontpics/147.2bpp
+++ b/gfx/pics/147/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/147.lz b/gfx/pics/147/front.lz
index b933491b7..b933491b7 100644
--- a/gfx/frontpics/lz/147.lz
+++ b/gfx/pics/147/front.lz
Binary files differ
diff --git a/gfx/anim/147.2bpp b/gfx/pics/147/tiles.2bpp
index 0c61fce4b..0c61fce4b 100644
--- a/gfx/anim/147.2bpp
+++ b/gfx/pics/147/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/148/anim0.asm b/gfx/pics/148/anim0.asm
new file mode 100644
index 000000000..b7a2be64d
--- /dev/null
+++ b/gfx/pics/148/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 1, 08
+ frame 2, 08
+ frame 3, 08
+ frame 2, 08
+ dorepeat 1
+ endanim
+; 0xd10fd
diff --git a/gfx/pics/148/anim1.asm b/gfx/pics/148/anim1.asm
new file mode 100644
index 000000000..afea7ab43
--- /dev/null
+++ b/gfx/pics/148/anim1.asm
@@ -0,0 +1,10 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ frame 0, 06
+ frame 5, 06
+ frame 6, 06
+ frame 5, 06
+ endanim
+; 0xd1e71
diff --git a/gfx/backpics/148.2bpp b/gfx/pics/148/back.2bpp
index ba83c0f1d..ba83c0f1d 100644
--- a/gfx/backpics/148.2bpp
+++ b/gfx/pics/148/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/148.lz b/gfx/pics/148/back.lz
index 52094c394..52094c394 100644
--- a/gfx/backpics/lz/148.lz
+++ b/gfx/pics/148/back.lz
Binary files differ
diff --git a/gfx/pics/148/bitmask.asm b/gfx/pics/148/bitmask.asm
new file mode 100644
index 000000000..fe0895ff1
--- /dev/null
+++ b/gfx/pics/148/bitmask.asm
@@ -0,0 +1,37 @@
+; 0
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11011111
+ db %01000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %10111111
+ db %01001111
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00100000
+ db %00001000
+ db %00000000
+ db %00000000
+; 4
+ db %11011111
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 5
+ db %10111111
+ db %00001111
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd32bf
diff --git a/gfx/pics/148/frames.asm b/gfx/pics/148/frames.asm
new file mode 100644
index 000000000..3eded4725
--- /dev/null
+++ b/gfx/pics/148/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $24
+.frame2
+ db $01 ; bitmask
+ db $05, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $24
+.frame3
+ db $02 ; bitmask
+ db $05, $2e, $2f, $30, $31, $32, $33, $2b, $05, $34, $35, $24
+.frame4
+ db $03 ; bitmask
+ db $36, $37
+.frame5
+ db $04 ; bitmask
+ db $05, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame6
+ db $05 ; bitmask
+ db $05, $2e, $2f, $30, $31, $32, $33, $2b, $05, $34, $35
+; 0xd616d
diff --git a/gfx/frontpics/148.2bpp b/gfx/pics/148/front.2bpp
index 7efa3d861..7efa3d861 100644
--- a/gfx/frontpics/148.2bpp
+++ b/gfx/pics/148/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/148.lz b/gfx/pics/148/front.lz
index aad34536f..aad34536f 100644
--- a/gfx/frontpics/lz/148.lz
+++ b/gfx/pics/148/front.lz
Binary files differ
diff --git a/gfx/anim/148.2bpp b/gfx/pics/148/tiles.2bpp
index 325acd3e3..325acd3e3 100644
--- a/gfx/anim/148.2bpp
+++ b/gfx/pics/148/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/149/anim0.asm b/gfx/pics/149/anim0.asm
new file mode 100644
index 000000000..9dd6bf84a
--- /dev/null
+++ b/gfx/pics/149/anim0.asm
@@ -0,0 +1,13 @@
+ frame 1, 12
+ frame 2, 12
+ setrepeat 2
+ frame 3, 12
+ frame 4, 12
+ dorepeat 3
+ frame 1, 12
+ setrepeat 3
+ frame 0, 12
+ frame 1, 12
+ dorepeat 8
+ endanim
+; 0xd1114
diff --git a/gfx/pics/149/anim1.asm b/gfx/pics/149/anim1.asm
new file mode 100644
index 000000000..fe0d7edbb
--- /dev/null
+++ b/gfx/pics/149/anim1.asm
@@ -0,0 +1,8 @@
+ frame 0, 20
+ frame 1, 20
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 3
+ endanim
+; 0xd1e7e
diff --git a/gfx/backpics/149.2bpp b/gfx/pics/149/back.2bpp
index 84749d043..84749d043 100644
--- a/gfx/backpics/149.2bpp
+++ b/gfx/pics/149/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/149.lz b/gfx/pics/149/back.lz
index 09a828dd0..09a828dd0 100644
--- a/gfx/backpics/lz/149.lz
+++ b/gfx/pics/149/back.lz
Binary files differ
diff --git a/gfx/pics/149/bitmask.asm b/gfx/pics/149/bitmask.asm
new file mode 100644
index 000000000..2c426bc4f
--- /dev/null
+++ b/gfx/pics/149/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00000110
+ db %10000011
+ db %00000001
+ db %00000000
+ db %00111000
+ db %00011100
+ db %00000000
+; 1
+ db %01000000
+ db %10110000
+ db %10010001
+ db %00001001
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000110
+ db %10000011
+ db %11000001
+ db %00000011
+ db %10111001
+ db %00011101
+ db %00000000
+; 3
+ db %01000000
+ db %10110000
+ db %11010001
+ db %00001011
+ db %10000001
+ db %00000001
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd32e2
diff --git a/gfx/pics/149/frames.asm b/gfx/pics/149/frames.asm
new file mode 100644
index 000000000..e07767c56
--- /dev/null
+++ b/gfx/pics/149/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $00, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+.frame2
+ db $01 ; bitmask
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44
+.frame3
+ db $02 ; bitmask
+ db $31, $00, $32, $33, $45, $40, $46, $42, $43, $47, $48, $36
+ db $37, $38, $49, $00, $39, $3a, $3b
+.frame4
+ db $03 ; bitmask
+ db $3c, $3d, $3e, $3f, $4a, $41, $46, $42, $43, $47, $44, $48
+ db $49, $00
+.frame5
+ db $04 ; bitmask
+ db $46
+; 0xd61b3
diff --git a/gfx/frontpics/149.2bpp b/gfx/pics/149/front.2bpp
index f198b7b74..f198b7b74 100644
--- a/gfx/frontpics/149.2bpp
+++ b/gfx/pics/149/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/149.lz b/gfx/pics/149/front.lz
index 730c16739..730c16739 100644
--- a/gfx/frontpics/lz/149.lz
+++ b/gfx/pics/149/front.lz
Binary files differ
diff --git a/gfx/anim/149.2bpp b/gfx/pics/149/tiles.2bpp
index 9ff358bee..9ff358bee 100644
--- a/gfx/anim/149.2bpp
+++ b/gfx/pics/149/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/150/anim0.asm b/gfx/pics/150/anim0.asm
new file mode 100644
index 000000000..78682c111
--- /dev/null
+++ b/gfx/pics/150/anim0.asm
@@ -0,0 +1,17 @@
+ frame 3, 08
+ setrepeat 2
+ frame 2, 04
+ frame 3, 02
+ dorepeat 2
+ setrepeat 3
+ frame 4, 02
+ frame 3, 02
+ dorepeat 6
+ setrepeat 5
+ frame 5, 02
+ frame 3, 01
+ dorepeat 10
+ frame 5, 14
+ frame 3, 04
+ endanim
+; 0xd1133
diff --git a/gfx/pics/150/anim1.asm b/gfx/pics/150/anim1.asm
new file mode 100644
index 000000000..a80a56899
--- /dev/null
+++ b/gfx/pics/150/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 1, 06
+ dorepeat 1
+ endanim
+; 0xd1e87
diff --git a/gfx/backpics/150.2bpp b/gfx/pics/150/back.2bpp
index 1e48beca1..1e48beca1 100644
--- a/gfx/backpics/150.2bpp
+++ b/gfx/pics/150/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/150.lz b/gfx/pics/150/back.lz
index 3be56c470..3be56c470 100644
--- a/gfx/backpics/lz/150.lz
+++ b/gfx/pics/150/back.lz
Binary files differ
diff --git a/gfx/pics/150/bitmask.asm b/gfx/pics/150/bitmask.asm
new file mode 100644
index 000000000..738bcddf3
--- /dev/null
+++ b/gfx/pics/150/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00110000
+ db %11011100
+ db %00001110
+ db %00000111
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %11000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00011100
+ db %00111110
+ db %11011110
+ db %10001111
+ db %11000111
+ db %01100011
+ db %00000000
+; 4
+ db %00011100
+ db %11111110
+ db %11111111
+ db %11111111
+ db %11100111
+ db %01100011
+ db %00000000
+; 0xd3305
diff --git a/gfx/pics/150/frames.asm b/gfx/pics/150/frames.asm
new file mode 100644
index 000000000..e948bc6ab
--- /dev/null
+++ b/gfx/pics/150/frames.asm
@@ -0,0 +1,26 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31
+.frame2
+ db $01 ; bitmask
+ db $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c, $3d
+ db $3e, $3f, $40
+.frame3
+ db $02 ; bitmask
+ db $37, $38
+.frame4
+ db $03 ; bitmask
+ db $00, $41, $00, $42, $43, $44, $32, $33, $45, $34, $35, $36
+ db $37, $38, $46, $39, $3a, $3b, $47, $3c, $3d, $3e, $48, $49
+ db $3f, $40, $4a, $4b
+.frame5
+ db $04 ; bitmask
+ db $00, $41, $00, $42, $43, $44, $32, $33, $4c, $4d, $4e, $45
+ db $34, $35, $36, $4f, $50, $51, $46, $39, $3a, $3b, $52, $53
+ db $54, $47, $3c, $3d, $3e, $00, $48, $49, $3f, $40, $4a, $4b
+; 0xd6214
diff --git a/gfx/frontpics/150.2bpp b/gfx/pics/150/front.2bpp
index bfea8d677..bfea8d677 100644
--- a/gfx/frontpics/150.2bpp
+++ b/gfx/pics/150/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/150.lz b/gfx/pics/150/front.lz
index 35cc2c378..35cc2c378 100644
--- a/gfx/frontpics/lz/150.lz
+++ b/gfx/pics/150/front.lz
Binary files differ
diff --git a/gfx/anim/150.2bpp b/gfx/pics/150/tiles.2bpp
index 9595c0f27..9595c0f27 100644
--- a/gfx/anim/150.2bpp
+++ b/gfx/pics/150/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/151/anim0.asm b/gfx/pics/151/anim0.asm
new file mode 100644
index 000000000..b01e307de
--- /dev/null
+++ b/gfx/pics/151/anim0.asm
@@ -0,0 +1,18 @@
+ frame 1, 07
+ frame 2, 07
+ frame 3, 06
+ frame 2, 06
+ frame 3, 05
+ frame 2, 05
+ setrepeat 3
+ frame 3, 03
+ frame 2, 03
+ dorepeat 7
+ setrepeat 2
+ frame 3, 25
+ frame 2, 20
+ dorepeat 11
+ frame 0, 15
+ frame 4, 15
+ endanim
+; 0xd1154
diff --git a/gfx/pics/151/anim1.asm b/gfx/pics/151/anim1.asm
new file mode 100644
index 000000000..c22e552cb
--- /dev/null
+++ b/gfx/pics/151/anim1.asm
@@ -0,0 +1,9 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ frame 0, 10
+ frame 4, 20
+ dorepeat 1
+ endanim
+; 0xd1e96
diff --git a/gfx/backpics/151.2bpp b/gfx/pics/151/back.2bpp
index df4e5390c..df4e5390c 100644
--- a/gfx/backpics/151.2bpp
+++ b/gfx/pics/151/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/151.lz b/gfx/pics/151/back.lz
index 388a8de9e..388a8de9e 100644
--- a/gfx/backpics/lz/151.lz
+++ b/gfx/pics/151/back.lz
Binary files differ
diff --git a/gfx/pics/151/bitmask.asm b/gfx/pics/151/bitmask.asm
new file mode 100644
index 000000000..2d76b105a
--- /dev/null
+++ b/gfx/pics/151/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %10000000
+ db %00010001
+ db %00000000
+ db %00000000
+; 1
+ db %10000000
+ db %00011001
+ db %00000000
+ db %00000000
+; 2
+ db %11101010
+ db %01111111
+ db %11110111
+ db %00000000
+; 3
+ db %10000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd3319
diff --git a/gfx/pics/151/frames.asm b/gfx/pics/151/frames.asm
new file mode 100644
index 000000000..712e7dd40
--- /dev/null
+++ b/gfx/pics/151/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame5
+ db $3e, $62
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1a, $1d, $1b
+.frame3
+ db $02 ; bitmask
+ db $1e, $1f, $20, $21, $22, $23, $24, $25, $26, $27, $28, $29
+ db $2a, $2b, $2c, $2d, $2e, $2f, $30
+.frame4
+ db $03 ; bitmask
+ db $31, $1d
+ db $04, $1b ; unused
+; 0xd6240
diff --git a/gfx/frontpics/151.2bpp b/gfx/pics/151/front.2bpp
index 2250f456b..2250f456b 100644
--- a/gfx/frontpics/151.2bpp
+++ b/gfx/pics/151/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/151.lz b/gfx/pics/151/front.lz
index 240965783..240965783 100644
--- a/gfx/frontpics/lz/151.lz
+++ b/gfx/pics/151/front.lz
Binary files differ
diff --git a/gfx/anim/151.2bpp b/gfx/pics/151/tiles.2bpp
index 3df120b9a..3df120b9a 100644
--- a/gfx/anim/151.2bpp
+++ b/gfx/pics/151/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/152/anim0.asm b/gfx/pics/152/anim0.asm
new file mode 100644
index 000000000..2b8fa7d35
--- /dev/null
+++ b/gfx/pics/152/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 04
+ frame 1, 24
+ frame 0, 08
+ setrepeat 2
+ frame 2, 03
+ frame 3, 04
+ frame 4, 05
+ dorepeat 4
+ endanim
+; 0xd1165
diff --git a/gfx/pics/152/anim1.asm b/gfx/pics/152/anim1.asm
new file mode 100644
index 000000000..9003c3ff2
--- /dev/null
+++ b/gfx/pics/152/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 5, 06
+ dorepeat 1
+ endanim
+; 0xd1e9f
diff --git a/gfx/backpics/152.2bpp b/gfx/pics/152/back.2bpp
index 6714ef804..6714ef804 100644
--- a/gfx/backpics/152.2bpp
+++ b/gfx/pics/152/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/152.lz b/gfx/pics/152/back.lz
index e98365a2b..e98365a2b 100644
--- a/gfx/backpics/lz/152.lz
+++ b/gfx/pics/152/back.lz
Binary files differ
diff --git a/gfx/pics/152/bitmask.asm b/gfx/pics/152/bitmask.asm
new file mode 100644
index 000000000..60922b7c0
--- /dev/null
+++ b/gfx/pics/152/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %11000100
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11100111
+ db %10001100
+ db %01110001
+ db %00000000
+; 2
+ db %11101110
+ db %10001101
+ db %01110001
+ db %00000000
+; 3
+ db %01000000
+ db %10001100
+ db %01110011
+ db %00000000
+; 4
+ db %11000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd332d
diff --git a/gfx/pics/152/frames.asm b/gfx/pics/152/frames.asm
new file mode 100644
index 000000000..64c07b539
--- /dev/null
+++ b/gfx/pics/152/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24, $00, $00, $00
+ db $00
+.frame3
+ db $02 ; bitmask
+ db $25, $26, $27, $00, $28, $29, $2a, $00, $23, $00, $00, $00
+ db $00, $00
+.frame4
+ db $03 ; bitmask
+ db $1a, $2b, $2c, $00, $2d, $2e, $00, $00, $00
+.frame5
+ db $04 ; bitmask
+ db $2f, $30
+; 0xd8438
diff --git a/gfx/frontpics/152.2bpp b/gfx/pics/152/front.2bpp
index 58393f0c7..58393f0c7 100644
--- a/gfx/frontpics/152.2bpp
+++ b/gfx/pics/152/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/152.lz b/gfx/pics/152/front.lz
index 008c4ec2d..008c4ec2d 100644
--- a/gfx/frontpics/lz/152.lz
+++ b/gfx/pics/152/front.lz
Binary files differ
diff --git a/gfx/anim/152.2bpp b/gfx/pics/152/tiles.2bpp
index fb0824fc4..fb0824fc4 100644
--- a/gfx/anim/152.2bpp
+++ b/gfx/pics/152/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/153/anim0.asm b/gfx/pics/153/anim0.asm
new file mode 100644
index 000000000..de54fe495
--- /dev/null
+++ b/gfx/pics/153/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 12
+ frame 2, 11
+ frame 3, 15
+ endanim
+; 0xd116c
diff --git a/gfx/pics/153/anim1.asm b/gfx/pics/153/anim1.asm
new file mode 100644
index 000000000..59d3f1762
--- /dev/null
+++ b/gfx/pics/153/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1ea8
diff --git a/gfx/backpics/153.2bpp b/gfx/pics/153/back.2bpp
index 5b8ba4f19..5b8ba4f19 100644
--- a/gfx/backpics/153.2bpp
+++ b/gfx/pics/153/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/153.lz b/gfx/pics/153/back.lz
index 809e5d199..809e5d199 100644
--- a/gfx/backpics/lz/153.lz
+++ b/gfx/pics/153/back.lz
Binary files differ
diff --git a/gfx/pics/153/bitmask.asm b/gfx/pics/153/bitmask.asm
new file mode 100644
index 000000000..ad73fdd6a
--- /dev/null
+++ b/gfx/pics/153/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %11001111
+ db %11000011
+ db %00100000
+ db %00000000
+; 1
+ db %00000000
+ db %11000111
+ db %01000001
+ db %10111000
+ db %00001110
+; 2
+ db %00000000
+ db %11000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000110
+; 0xd3341
diff --git a/gfx/pics/153/frames.asm b/gfx/pics/153/frames.asm
new file mode 100644
index 000000000..2331a584a
--- /dev/null
+++ b/gfx/pics/153/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $2f, $28, $29, $30, $31, $32, $33, $34, $35, $36
+ db $37, $38
+.frame3
+ db $02 ; bitmask
+ db $24, $39, $28, $3a
+.frame4
+ db $03 ; bitmask
+ db $3b, $3c
+; 0xd8463
diff --git a/gfx/frontpics/153.2bpp b/gfx/pics/153/front.2bpp
index 600bb8596..600bb8596 100644
--- a/gfx/frontpics/153.2bpp
+++ b/gfx/pics/153/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/153.lz b/gfx/pics/153/front.lz
index 3134f6e16..3134f6e16 100644
--- a/gfx/frontpics/lz/153.lz
+++ b/gfx/pics/153/front.lz
Binary files differ
diff --git a/gfx/anim/153.2bpp b/gfx/pics/153/tiles.2bpp
index 82d135a9f..82d135a9f 100644
--- a/gfx/anim/153.2bpp
+++ b/gfx/pics/153/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/154/anim0.asm b/gfx/pics/154/anim0.asm
new file mode 100644
index 000000000..adf80db8f
--- /dev/null
+++ b/gfx/pics/154/anim0.asm
@@ -0,0 +1,11 @@
+ frame 0, 06
+ frame 1, 10
+ frame 2, 26
+ frame 1, 12
+ frame 0, 08
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 6
+ endanim
+; 0xd117f
diff --git a/gfx/pics/154/anim1.asm b/gfx/pics/154/anim1.asm
new file mode 100644
index 000000000..f28c9d97a
--- /dev/null
+++ b/gfx/pics/154/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1eb1
diff --git a/gfx/backpics/154.2bpp b/gfx/pics/154/back.2bpp
index 4c3da3910..4c3da3910 100644
--- a/gfx/backpics/154.2bpp
+++ b/gfx/pics/154/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/154.lz b/gfx/pics/154/back.lz
index 718f66f87..718f66f87 100644
--- a/gfx/backpics/lz/154.lz
+++ b/gfx/pics/154/back.lz
Binary files differ
diff --git a/gfx/pics/154/bitmask.asm b/gfx/pics/154/bitmask.asm
new file mode 100644
index 000000000..166f67518
--- /dev/null
+++ b/gfx/pics/154/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10000000
+ db %11000111
+ db %11100011
+ db %11110001
+ db %01111000
+ db %00011100
+ db %00000000
+; 1
+ db %10000111
+ db %11000111
+ db %11100011
+ db %11110001
+ db %01111000
+ db %00011100
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000000
+ db %11000000
+ db %01100000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd335d
diff --git a/gfx/pics/154/frames.asm b/gfx/pics/154/frames.asm
new file mode 100644
index 000000000..f167fec7c
--- /dev/null
+++ b/gfx/pics/154/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $40, $00, $00, $00, $00, $00, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $31, $41, $42, $35, $36, $43, $34, $44, $45, $46, $47, $3d
+ db $48, $49, $4a, $00, $00, $4b, $40, $00, $00, $00, $00, $00
+ db $00, $00
+.frame3
+ db $02 ; bitmask
+ db $4c, $4d, $4e, $4f, $50
+.frame4
+ db $03 ; bitmask
+ db $51, $52
+; 0xd84a7
diff --git a/gfx/frontpics/154.2bpp b/gfx/pics/154/front.2bpp
index 4670ea519..4670ea519 100644
--- a/gfx/frontpics/154.2bpp
+++ b/gfx/pics/154/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/154.lz b/gfx/pics/154/front.lz
index 84f600d60..84f600d60 100644
--- a/gfx/frontpics/lz/154.lz
+++ b/gfx/pics/154/front.lz
Binary files differ
diff --git a/gfx/anim/154.2bpp b/gfx/pics/154/tiles.2bpp
index bc7655ddc..bc7655ddc 100644
--- a/gfx/anim/154.2bpp
+++ b/gfx/pics/154/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/155/anim0.asm b/gfx/pics/155/anim0.asm
new file mode 100644
index 000000000..b069cc300
--- /dev/null
+++ b/gfx/pics/155/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 04
+ frame 4, 04
+ frame 1, 04
+ setrepeat 4
+ frame 4, 03
+ frame 1, 03
+ dorepeat 4
+ frame 2, 03
+ frame 3, 09
+ frame 1, 03
+ endanim
+; 0xd1194
diff --git a/gfx/pics/155/anim1.asm b/gfx/pics/155/anim1.asm
new file mode 100644
index 000000000..43c4d495a
--- /dev/null
+++ b/gfx/pics/155/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 4, 10
+ dorepeat 1
+ endanim
+; 0xd1eba
diff --git a/gfx/backpics/155.2bpp b/gfx/pics/155/back.2bpp
index 9edab0eae..9edab0eae 100644
--- a/gfx/backpics/155.2bpp
+++ b/gfx/pics/155/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/155.lz b/gfx/pics/155/back.lz
index 226c41e49..226c41e49 100644
--- a/gfx/backpics/lz/155.lz
+++ b/gfx/pics/155/back.lz
Binary files differ
diff --git a/gfx/pics/155/bitmask.asm b/gfx/pics/155/bitmask.asm
new file mode 100644
index 000000000..56d89d40a
--- /dev/null
+++ b/gfx/pics/155/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %11111000
+ db %11111111
+ db %11110111
+ db %00000000
+; 1
+ db %10011000
+ db %01000011
+ db %00000000
+ db %00000000
+; 0xd3365
diff --git a/gfx/pics/155/frames.asm b/gfx/pics/155/frames.asm
new file mode 100644
index 000000000..581669813
--- /dev/null
+++ b/gfx/pics/155/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $00, $1b, $1c, $1d, $1e, $00, $1f, $20, $21, $22
+ db $00, $23, $24, $25, $00, $26, $27, $28
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $00, $00, $29, $1d, $1e, $00, $00, $2a, $21, $22
+ db $00, $00, $2b, $25, $00, $00, $00, $2c
+.frame3
+ db $00 ; bitmask
+ db $19, $1a, $00, $00, $29, $1d, $1e, $00, $00, $2d, $21, $22
+ db $00, $00, $2e, $2f, $00, $00, $00, $2c
+.frame4
+ db $01 ; bitmask
+ db $19, $1a, $30, $1d, $1e, $22
+; 0xd84f5
diff --git a/gfx/frontpics/155.2bpp b/gfx/pics/155/front.2bpp
index 560820309..560820309 100644
--- a/gfx/frontpics/155.2bpp
+++ b/gfx/pics/155/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/155.lz b/gfx/pics/155/front.lz
index 3e2886783..3e2886783 100644
--- a/gfx/frontpics/lz/155.lz
+++ b/gfx/pics/155/front.lz
Binary files differ
diff --git a/gfx/anim/155.2bpp b/gfx/pics/155/tiles.2bpp
index 076b41386..076b41386 100644
--- a/gfx/anim/155.2bpp
+++ b/gfx/pics/155/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/156/anim0.asm b/gfx/pics/156/anim0.asm
new file mode 100644
index 000000000..b5df67978
--- /dev/null
+++ b/gfx/pics/156/anim0.asm
@@ -0,0 +1,9 @@
+ frame 4, 06
+ frame 0, 04
+ frame 1, 12
+ frame 2, 22
+ frame 4, 12
+ frame 0, 10
+ frame 4, 08
+ endanim
+; 0xd11a3
diff --git a/gfx/pics/156/anim1.asm b/gfx/pics/156/anim1.asm
new file mode 100644
index 000000000..09f187796
--- /dev/null
+++ b/gfx/pics/156/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1ec3
diff --git a/gfx/backpics/156.2bpp b/gfx/pics/156/back.2bpp
index f93fd3b65..f93fd3b65 100644
--- a/gfx/backpics/156.2bpp
+++ b/gfx/pics/156/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/156.lz b/gfx/pics/156/back.lz
index 8514a77c7..8514a77c7 100644
--- a/gfx/backpics/lz/156.lz
+++ b/gfx/pics/156/back.lz
Binary files differ
diff --git a/gfx/pics/156/bitmask.asm b/gfx/pics/156/bitmask.asm
new file mode 100644
index 000000000..816878203
--- /dev/null
+++ b/gfx/pics/156/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00111100
+ db %11110011
+ db %01111100
+ db %11000111
+ db %00000011
+; 1
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000010
+ db %00000000
+; 2
+ db %00111100
+ db %10111111
+ db %00000100
+ db %00000000
+ db %00000000
+; 0xd3374
diff --git a/gfx/pics/156/frames.asm b/gfx/pics/156/frames.asm
new file mode 100644
index 000000000..624a20abc
--- /dev/null
+++ b/gfx/pics/156/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $00, $27, $28, $29, $00, $2a, $2b, $2c
+ db $2d, $2e, $2f, $30, $31, $32, $00, $33, $34, $35
+.frame2
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $00, $27, $28, $29, $00, $2a, $2b, $36
+ db $2d, $2e, $2f, $30, $31, $32, $00, $33, $34, $35
+.frame3
+ db $01 ; bitmask
+ db $37, $38
+.frame4
+ db $02 ; bitmask
+ db $00, $00, $00, $00, $00, $00, $39, $3a, $3b, $3c, $3d, $3e
+; 0xd853b
diff --git a/gfx/frontpics/156.2bpp b/gfx/pics/156/front.2bpp
index 4863cabfd..4863cabfd 100644
--- a/gfx/frontpics/156.2bpp
+++ b/gfx/pics/156/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/156.lz b/gfx/pics/156/front.lz
index 33aebb81c..33aebb81c 100644
--- a/gfx/frontpics/lz/156.lz
+++ b/gfx/pics/156/front.lz
Binary files differ
diff --git a/gfx/anim/156.2bpp b/gfx/pics/156/tiles.2bpp
index 205bfcd16..205bfcd16 100644
--- a/gfx/anim/156.2bpp
+++ b/gfx/pics/156/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/157/anim0.asm b/gfx/pics/157/anim0.asm
new file mode 100644
index 000000000..bb4b30d6c
--- /dev/null
+++ b/gfx/pics/157/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 08
+ setrepeat 6
+ frame 2, 04
+ frame 3, 04
+ dorepeat 2
+ setrepeat 2
+ frame 5, 03
+ frame 1, 03
+ dorepeat 6
+ endanim
+; 0xd11b6
diff --git a/gfx/pics/157/anim1.asm b/gfx/pics/157/anim1.asm
new file mode 100644
index 000000000..2f7ed3abc
--- /dev/null
+++ b/gfx/pics/157/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1ecc
diff --git a/gfx/backpics/157.2bpp b/gfx/pics/157/back.2bpp
index cdeee1976..cdeee1976 100644
--- a/gfx/backpics/157.2bpp
+++ b/gfx/pics/157/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/157.lz b/gfx/pics/157/back.lz
index 592306fa6..592306fa6 100644
--- a/gfx/backpics/lz/157.lz
+++ b/gfx/pics/157/back.lz
Binary files differ
diff --git a/gfx/pics/157/bitmask.asm b/gfx/pics/157/bitmask.asm
new file mode 100644
index 000000000..bcbfa43cf
--- /dev/null
+++ b/gfx/pics/157/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10000110
+ db %11000111
+ db %11100111
+ db %11110001
+ db %11111000
+ db %01111100
+ db %00000000
+; 1
+ db %00000110
+ db %11000111
+ db %11100111
+ db %11110001
+ db %11100000
+ db %01100000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3389
diff --git a/gfx/pics/157/frames.asm b/gfx/pics/157/frames.asm
new file mode 100644
index 000000000..152772e7d
--- /dev/null
+++ b/gfx/pics/157/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $00, $31, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45
+ db $00, $00, $00, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $31, $32, $46, $47, $48, $36, $49, $4a, $4b, $3a
+ db $3b, $4c, $4d, $4e, $4f, $50, $51, $52, $45, $00, $00
+.frame3
+ db $00 ; bitmask
+ db $00, $00, $00, $31, $32, $46, $34, $35, $36, $49, $4a, $39
+ db $3a, $3b, $4c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45
+ db $00, $00, $00, $00, $00
+.frame4
+ db $02 ; bitmask
+ db $53
+.frame5
+ db $01 ; bitmask
+ db $00, $00, $31, $32, $33, $47, $48, $36, $37, $38, $4b, $3a
+ db $3b, $3c, $4d, $4e, $4f, $50, $51, $52, $45, $00, $00
+; 0xd85b3
diff --git a/gfx/frontpics/157.2bpp b/gfx/pics/157/front.2bpp
index 35a9562e2..35a9562e2 100644
--- a/gfx/frontpics/157.2bpp
+++ b/gfx/pics/157/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/157.lz b/gfx/pics/157/front.lz
index 9dba415ad..9dba415ad 100644
--- a/gfx/frontpics/lz/157.lz
+++ b/gfx/pics/157/front.lz
Binary files differ
diff --git a/gfx/anim/157.2bpp b/gfx/pics/157/tiles.2bpp
index 8ed8eaa58..8ed8eaa58 100644
--- a/gfx/anim/157.2bpp
+++ b/gfx/pics/157/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/158/anim0.asm b/gfx/pics/158/anim0.asm
new file mode 100644
index 000000000..c320f4646
--- /dev/null
+++ b/gfx/pics/158/anim0.asm
@@ -0,0 +1,10 @@
+ setrepeat 3
+ frame 1, 10
+ frame 2, 10
+ dorepeat 1
+ setrepeat 3
+ frame 0, 10
+ frame 2, 10
+ dorepeat 5
+ endanim
+; 0xd11c7
diff --git a/gfx/pics/158/anim1.asm b/gfx/pics/158/anim1.asm
new file mode 100644
index 000000000..35379db93
--- /dev/null
+++ b/gfx/pics/158/anim1.asm
@@ -0,0 +1,7 @@
+ frame 1, 35
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 2
+ endanim
+; 0xd1ed7
diff --git a/gfx/backpics/158.2bpp b/gfx/pics/158/back.2bpp
index 7f1d812b6..7f1d812b6 100644
--- a/gfx/backpics/158.2bpp
+++ b/gfx/pics/158/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/158.lz b/gfx/pics/158/back.lz
index 6d73c934f..6d73c934f 100644
--- a/gfx/backpics/lz/158.lz
+++ b/gfx/pics/158/back.lz
Binary files differ
diff --git a/gfx/pics/158/bitmask.asm b/gfx/pics/158/bitmask.asm
new file mode 100644
index 000000000..1d81390e3
--- /dev/null
+++ b/gfx/pics/158/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11001110
+ db %00011001
+ db %01100011
+ db %00000000
+; 1
+ db %00000000
+ db %01100011
+ db %10001100
+ db %00000001
+; 2
+ db %00000000
+ db %00000100
+ db %10000000
+ db %00000001
+; 0xd3395
diff --git a/gfx/pics/158/frames.asm b/gfx/pics/158/frames.asm
new file mode 100644
index 000000000..fbce8e2c8
--- /dev/null
+++ b/gfx/pics/158/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $04, $23
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b
+.frame3
+ db $02 ; bitmask
+ db $2c, $2a, $2b
+; 0xd85d3
diff --git a/gfx/frontpics/158.2bpp b/gfx/pics/158/front.2bpp
index b00fce705..b00fce705 100644
--- a/gfx/frontpics/158.2bpp
+++ b/gfx/pics/158/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/158.lz b/gfx/pics/158/front.lz
index 8e1ebd2f5..8e1ebd2f5 100644
--- a/gfx/frontpics/lz/158.lz
+++ b/gfx/pics/158/front.lz
Binary files differ
diff --git a/gfx/anim/158.2bpp b/gfx/pics/158/tiles.2bpp
index 1fb8b4484..1fb8b4484 100644
--- a/gfx/anim/158.2bpp
+++ b/gfx/pics/158/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/159/anim0.asm b/gfx/pics/159/anim0.asm
new file mode 100644
index 000000000..c487abfd9
--- /dev/null
+++ b/gfx/pics/159/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 5
+ frame 3, 05
+ frame 2, 05
+ frame 1, 05
+ dorepeat 1
+ endanim
+; 0xd11d2
diff --git a/gfx/pics/159/anim1.asm b/gfx/pics/159/anim1.asm
new file mode 100644
index 000000000..78bd8518e
--- /dev/null
+++ b/gfx/pics/159/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 10
+ frame 4, 10
+ dorepeat 1
+ endanim
+; 0xd1ee0
diff --git a/gfx/backpics/159.2bpp b/gfx/pics/159/back.2bpp
index 75157f23c..75157f23c 100644
--- a/gfx/backpics/159.2bpp
+++ b/gfx/pics/159/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/159.lz b/gfx/pics/159/back.lz
index 7e573e6a0..7e573e6a0 100644
--- a/gfx/backpics/lz/159.lz
+++ b/gfx/pics/159/back.lz
Binary files differ
diff --git a/gfx/pics/159/bitmask.asm b/gfx/pics/159/bitmask.asm
new file mode 100644
index 000000000..22f1cf494
--- /dev/null
+++ b/gfx/pics/159/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11011111
+ db %11110011
+ db %00111101
+ db %10000110
+ db %00000001
+; 1
+ db %11011111
+ db %11110011
+ db %00111101
+ db %10001110
+ db %00000011
+; 2
+ db %11011111
+ db %11110011
+ db %00111101
+ db %00000010
+ db %00000000
+; 3
+ db %11011111
+ db %11111111
+ db %00111111
+ db %00000010
+ db %00000000
+; 0xd33a9
diff --git a/gfx/pics/159/frames.asm b/gfx/pics/159/frames.asm
new file mode 100644
index 000000000..cda1ed191
--- /dev/null
+++ b/gfx/pics/159/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $32, $33, $34, $39, $3a, $3b, $00, $3c, $3d
+.frame3
+ db $02 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $32, $33, $34, $3e
+.frame4
+ db $03 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $3f, $40, $2c
+ db $2d, $2e, $2f, $30, $41, $31, $32, $33, $34, $3e
+; 0xd8636
diff --git a/gfx/frontpics/159.2bpp b/gfx/pics/159/front.2bpp
index ddcdb653c..ddcdb653c 100644
--- a/gfx/frontpics/159.2bpp
+++ b/gfx/pics/159/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/159.lz b/gfx/pics/159/front.lz
index 9c7f511ba..9c7f511ba 100644
--- a/gfx/frontpics/lz/159.lz
+++ b/gfx/pics/159/front.lz
Binary files differ
diff --git a/gfx/anim/159.2bpp b/gfx/pics/159/tiles.2bpp
index 55c973184..55c973184 100644
--- a/gfx/anim/159.2bpp
+++ b/gfx/pics/159/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/160/anim0.asm b/gfx/pics/160/anim0.asm
new file mode 100644
index 000000000..1a0cebd2e
--- /dev/null
+++ b/gfx/pics/160/anim0.asm
@@ -0,0 +1,7 @@
+ frame 0, 04
+ frame 1, 10
+ frame 2, 16
+ frame 3, 36
+ frame 2, 12
+ endanim
+; 0xd11dd
diff --git a/gfx/pics/160/anim1.asm b/gfx/pics/160/anim1.asm
new file mode 100644
index 000000000..c1c39258d
--- /dev/null
+++ b/gfx/pics/160/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1ee9
diff --git a/gfx/backpics/160.2bpp b/gfx/pics/160/back.2bpp
index cc9e5e921..cc9e5e921 100644
--- a/gfx/backpics/160.2bpp
+++ b/gfx/pics/160/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/160.lz b/gfx/pics/160/back.lz
index 4e180d0f5..4e180d0f5 100644
--- a/gfx/backpics/lz/160.lz
+++ b/gfx/pics/160/back.lz
Binary files differ
diff --git a/gfx/pics/160/bitmask.asm b/gfx/pics/160/bitmask.asm
new file mode 100644
index 000000000..cf22f4db5
--- /dev/null
+++ b/gfx/pics/160/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00111000
+ db %00011100
+ db %00000110
+ db %11000011
+ db %01100001
+ db %00110000
+ db %00000000
+; 1
+ db %00111100
+ db %00011110
+ db %00000011
+ db %10000011
+ db %10000001
+ db %00000000
+ db %00000000
+; 2
+ db %00111100
+ db %00011110
+ db %00000111
+ db %10000011
+ db %10000001
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %10000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd33c5
diff --git a/gfx/pics/160/frames.asm b/gfx/pics/160/frames.asm
new file mode 100644
index 000000000..4ce24fb2c
--- /dev/null
+++ b/gfx/pics/160/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $06, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $06, $06
+.frame2
+ db $01 ; bitmask
+ db $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $4a
+ db $4b, $4c, $4d
+.frame3
+ db $02 ; bitmask
+ db $3f, $4e, $4f, $42, $50, $51, $52, $46, $53, $54, $55, $56
+ db $4a, $4b, $4c, $4d
+.frame4
+ db $03 ; bitmask
+ db $57, $58
+; 0xd8674
diff --git a/gfx/frontpics/160.2bpp b/gfx/pics/160/front.2bpp
index c223ac66f..c223ac66f 100644
--- a/gfx/frontpics/160.2bpp
+++ b/gfx/pics/160/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/160.lz b/gfx/pics/160/front.lz
index cc055e629..cc055e629 100644
--- a/gfx/frontpics/lz/160.lz
+++ b/gfx/pics/160/front.lz
Binary files differ
diff --git a/gfx/anim/160.2bpp b/gfx/pics/160/tiles.2bpp
index a8139e495..a8139e495 100644
--- a/gfx/anim/160.2bpp
+++ b/gfx/pics/160/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/161/anim0.asm b/gfx/pics/161/anim0.asm
new file mode 100644
index 000000000..8080c7303
--- /dev/null
+++ b/gfx/pics/161/anim0.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 15
+ frame 1, 15
+ dorepeat 1
+ endanim
+; 0xd11e6
diff --git a/gfx/pics/161/anim1.asm b/gfx/pics/161/anim1.asm
new file mode 100644
index 000000000..9fcaecad0
--- /dev/null
+++ b/gfx/pics/161/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 07
+ frame 2, 07
+ dorepeat 1
+ endanim
+; 0xd1ef2
diff --git a/gfx/backpics/161.2bpp b/gfx/pics/161/back.2bpp
index e2be3b374..e2be3b374 100644
--- a/gfx/backpics/161.2bpp
+++ b/gfx/pics/161/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/161.lz b/gfx/pics/161/back.lz
index 511ba5465..511ba5465 100644
--- a/gfx/backpics/lz/161.lz
+++ b/gfx/pics/161/back.lz
Binary files differ
diff --git a/gfx/pics/161/bitmask.asm b/gfx/pics/161/bitmask.asm
new file mode 100644
index 000000000..d50ae28c1
--- /dev/null
+++ b/gfx/pics/161/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %10000000
+ db %11110001
+ db %11111101
+ db %00000110
+ db %00000000
+; 1
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd33cf
diff --git a/gfx/pics/161/frames.asm b/gfx/pics/161/frames.asm
new file mode 100644
index 000000000..ef9ce4b84
--- /dev/null
+++ b/gfx/pics/161/frames.asm
@@ -0,0 +1,10 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32
+.frame2
+ db $01 ; bitmask
+ db $33
+; 0xd868a
diff --git a/gfx/frontpics/161.2bpp b/gfx/pics/161/front.2bpp
index 79afa69e8..79afa69e8 100644
--- a/gfx/frontpics/161.2bpp
+++ b/gfx/pics/161/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/161.lz b/gfx/pics/161/front.lz
index 229aa430c..229aa430c 100644
--- a/gfx/frontpics/lz/161.lz
+++ b/gfx/pics/161/front.lz
Binary files differ
diff --git a/gfx/anim/161.2bpp b/gfx/pics/161/tiles.2bpp
index c59be4ae8..c59be4ae8 100644
--- a/gfx/anim/161.2bpp
+++ b/gfx/pics/161/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/162/anim0.asm b/gfx/pics/162/anim0.asm
new file mode 100644
index 000000000..8503d74ec
--- /dev/null
+++ b/gfx/pics/162/anim0.asm
@@ -0,0 +1,8 @@
+ frame 3, 22
+ setrepeat 2
+ frame 0, 08
+ frame 1, 08
+ frame 2, 08
+ dorepeat 2
+ endanim
+; 0xd11f3
diff --git a/gfx/pics/162/anim1.asm b/gfx/pics/162/anim1.asm
new file mode 100644
index 000000000..e175bf7cc
--- /dev/null
+++ b/gfx/pics/162/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1efb
diff --git a/gfx/backpics/162.2bpp b/gfx/pics/162/back.2bpp
index 59fb25d59..59fb25d59 100644
--- a/gfx/backpics/162.2bpp
+++ b/gfx/pics/162/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/162.lz b/gfx/pics/162/back.lz
index 0cbe66f49..0cbe66f49 100644
--- a/gfx/backpics/lz/162.lz
+++ b/gfx/pics/162/back.lz
Binary files differ
diff --git a/gfx/pics/162/bitmask.asm b/gfx/pics/162/bitmask.asm
new file mode 100644
index 000000000..f50245994
--- /dev/null
+++ b/gfx/pics/162/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %10011110
+ db %10001111
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011110
+ db %00001111
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00100000
+ db %00001000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00100000
+ db %00001100
+ db %00000000
+ db %00000000
+; 0xd33e3
diff --git a/gfx/pics/162/frames.asm b/gfx/pics/162/frames.asm
new file mode 100644
index 000000000..80060afee
--- /dev/null
+++ b/gfx/pics/162/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $00, $27, $28, $29, $2a, $2b
+.frame2
+ db $01 ; bitmask
+ db $00, $2c, $2d, $2e, $00, $2f, $30, $31, $2a
+.frame3
+ db $02 ; bitmask
+ db $32, $33
+.frame4
+ db $03 ; bitmask
+ db $34, $35, $36
+; 0xd86ae
diff --git a/gfx/frontpics/162.2bpp b/gfx/pics/162/front.2bpp
index e3acb697d..e3acb697d 100644
--- a/gfx/frontpics/162.2bpp
+++ b/gfx/pics/162/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/162.lz b/gfx/pics/162/front.lz
index afba64f59..afba64f59 100644
--- a/gfx/frontpics/lz/162.lz
+++ b/gfx/pics/162/front.lz
Binary files differ
diff --git a/gfx/anim/162.2bpp b/gfx/pics/162/tiles.2bpp
index 53fc57fca..53fc57fca 100644
--- a/gfx/anim/162.2bpp
+++ b/gfx/pics/162/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/163/anim0.asm b/gfx/pics/163/anim0.asm
new file mode 100644
index 000000000..813faf909
--- /dev/null
+++ b/gfx/pics/163/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 15
+ frame 2, 04
+ frame 3, 07
+ frame 4, 07
+ frame 3, 07
+ frame 4, 07
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 7
+ endanim
+; 0xd1208
diff --git a/gfx/pics/163/anim1.asm b/gfx/pics/163/anim1.asm
new file mode 100644
index 000000000..4aaf1a124
--- /dev/null
+++ b/gfx/pics/163/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ frame 0, 13
+ frame 5, 05
+ endanim
+; 0xd1f08
diff --git a/gfx/backpics/163.2bpp b/gfx/pics/163/back.2bpp
index fdbd46122..fdbd46122 100644
--- a/gfx/backpics/163.2bpp
+++ b/gfx/pics/163/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/163.lz b/gfx/pics/163/back.lz
index e4ca2f37f..e4ca2f37f 100644
--- a/gfx/backpics/lz/163.lz
+++ b/gfx/pics/163/back.lz
Binary files differ
diff --git a/gfx/pics/163/bitmask.asm b/gfx/pics/163/bitmask.asm
new file mode 100644
index 000000000..e473e1e04
--- /dev/null
+++ b/gfx/pics/163/bitmask.asm
@@ -0,0 +1,26 @@
+; 0
+ db %11000000
+ db %00111001
+ db %00000111
+ db %00000000
+; 1
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 2
+ db %01100011
+ db %10011000
+ db %00110001
+ db %00000000
+; 3
+ db %01000000
+ db %00011000
+ db %00000001
+ db %00000000
+; 4
+ db %01000000
+ db %00001000
+ db %00000001
+ db %00000000
+; 0xd33f7
diff --git a/gfx/pics/163/frames.asm b/gfx/pics/163/frames.asm
new file mode 100644
index 000000000..028590ffc
--- /dev/null
+++ b/gfx/pics/163/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $22
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25, $19, $1c, $22, $26, $1f, $27, $28
+.frame4
+ db $03 ; bitmask
+ db $19, $1c, $22, $1f
+.frame5
+ db $04 ; bitmask
+ db $19, $1c, $1f
+; 0xd86d8
diff --git a/gfx/frontpics/163.2bpp b/gfx/pics/163/front.2bpp
index 61e8b429f..61e8b429f 100644
--- a/gfx/frontpics/163.2bpp
+++ b/gfx/pics/163/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/163.lz b/gfx/pics/163/front.lz
index 6abcd37fc..6abcd37fc 100644
--- a/gfx/frontpics/lz/163.lz
+++ b/gfx/pics/163/front.lz
Binary files differ
diff --git a/gfx/anim/163.2bpp b/gfx/pics/163/tiles.2bpp
index eb63c1a97..eb63c1a97 100644
--- a/gfx/anim/163.2bpp
+++ b/gfx/pics/163/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/164/anim0.asm b/gfx/pics/164/anim0.asm
new file mode 100644
index 000000000..ce19c30a5
--- /dev/null
+++ b/gfx/pics/164/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 04
+ frame 1, 20
+ frame 3, 24
+ frame 2, 20
+ setrepeat 3
+ frame 4, 06
+ frame 2, 06
+ dorepeat 5
+ endanim
+; 0xd1219
diff --git a/gfx/pics/164/anim1.asm b/gfx/pics/164/anim1.asm
new file mode 100644
index 000000000..4fe81f336
--- /dev/null
+++ b/gfx/pics/164/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd1f11
diff --git a/gfx/backpics/164.2bpp b/gfx/pics/164/back.2bpp
index 3140305b8..3140305b8 100644
--- a/gfx/backpics/164.2bpp
+++ b/gfx/pics/164/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/164.lz b/gfx/pics/164/back.lz
index 9ef83c86e..9ef83c86e 100644
--- a/gfx/backpics/lz/164.lz
+++ b/gfx/pics/164/back.lz
Binary files differ
diff --git a/gfx/pics/164/bitmask.asm b/gfx/pics/164/bitmask.asm
new file mode 100644
index 000000000..231f4dbd5
--- /dev/null
+++ b/gfx/pics/164/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10000000
+ db %11000011
+ db %11100011
+ db %11110001
+ db %00111000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd340c
diff --git a/gfx/pics/164/frames.asm b/gfx/pics/164/frames.asm
new file mode 100644
index 000000000..86b15a845
--- /dev/null
+++ b/gfx/pics/164/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31
+.frame2
+ db $01 ; bitmask
+ db $00, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $00, $40, $41
+.frame3
+ db $01 ; bitmask
+ db $00, $32, $33, $34, $35, $42, $43, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f, $00, $40, $41
+.frame4
+ db $01 ; bitmask
+ db $00, $32, $33, $34, $44, $45, $37, $38, $39, $46, $47, $3c
+ db $3d, $3e, $3f, $00, $40, $41
+.frame5
+ db $02 ; bitmask
+ db $48, $49
+; 0xd8720
diff --git a/gfx/frontpics/164.2bpp b/gfx/pics/164/front.2bpp
index d34b5dae8..d34b5dae8 100644
--- a/gfx/frontpics/164.2bpp
+++ b/gfx/pics/164/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/164.lz b/gfx/pics/164/front.lz
index cd0d1313b..cd0d1313b 100644
--- a/gfx/frontpics/lz/164.lz
+++ b/gfx/pics/164/front.lz
Binary files differ
diff --git a/gfx/anim/164.2bpp b/gfx/pics/164/tiles.2bpp
index dd03384df..dd03384df 100644
--- a/gfx/anim/164.2bpp
+++ b/gfx/pics/164/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/165/anim0.asm b/gfx/pics/165/anim0.asm
new file mode 100644
index 000000000..ac4c8e154
--- /dev/null
+++ b/gfx/pics/165/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 08
+ setrepeat 2
+ frame 2, 10
+ frame 3, 12
+ dorepeat 2
+ endanim
+; 0xd1224
diff --git a/gfx/pics/165/anim1.asm b/gfx/pics/165/anim1.asm
new file mode 100644
index 000000000..d493c5fbc
--- /dev/null
+++ b/gfx/pics/165/anim1.asm
@@ -0,0 +1,7 @@
+ frame 3, 07
+ setrepeat 3
+ frame 4, 05
+ frame 3, 05
+ dorepeat 2
+ endanim
+; 0xd1f1c
diff --git a/gfx/backpics/165.2bpp b/gfx/pics/165/back.2bpp
index 1807cb0ae..1807cb0ae 100644
--- a/gfx/backpics/165.2bpp
+++ b/gfx/pics/165/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/165.lz b/gfx/pics/165/back.lz
index 728f4dedb..728f4dedb 100644
--- a/gfx/backpics/lz/165.lz
+++ b/gfx/pics/165/back.lz
Binary files differ
diff --git a/gfx/pics/165/bitmask.asm b/gfx/pics/165/bitmask.asm
new file mode 100644
index 000000000..8a59736ef
--- /dev/null
+++ b/gfx/pics/165/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00001100
+ db %01000011
+ db %00110000
+ db %00001100
+ db %00000000
+; 1
+ db %10001110
+ db %10000010
+ db %00111000
+ db %10011110
+ db %00000011
+; 2
+ db %00001100
+ db %10000010
+ db %00110000
+ db %00001100
+ db %00000000
+; 3
+ db %00001100
+ db %11000011
+ db %00110000
+ db %00001100
+ db %00000000
+; 0xd3420
diff --git a/gfx/pics/165/frames.asm b/gfx/pics/165/frames.asm
new file mode 100644
index 000000000..afa489121
--- /dev/null
+++ b/gfx/pics/165/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c
+.frame2
+ db $01 ; bitmask
+ db $2d, $2e, $25, $2f, $30, $31, $32, $33, $2a, $34, $35, $36
+ db $37, $38, $39, $3a
+.frame3
+ db $02 ; bitmask
+ db $24, $25, $30, $31, $3b, $2a, $2b, $2c
+.frame4
+ db $03 ; bitmask
+ db $24, $25, $26, $30, $28, $31, $29, $2a, $2b, $2c
+; 0xd8757
diff --git a/gfx/frontpics/165.2bpp b/gfx/pics/165/front.2bpp
index 012c91b91..012c91b91 100644
--- a/gfx/frontpics/165.2bpp
+++ b/gfx/pics/165/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/165.lz b/gfx/pics/165/front.lz
index fc15ab1ba..fc15ab1ba 100644
--- a/gfx/frontpics/lz/165.lz
+++ b/gfx/pics/165/front.lz
Binary files differ
diff --git a/gfx/anim/165.2bpp b/gfx/pics/165/tiles.2bpp
index 84d394f91..84d394f91 100644
--- a/gfx/anim/165.2bpp
+++ b/gfx/pics/165/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/166/anim0.asm b/gfx/pics/166/anim0.asm
new file mode 100644
index 000000000..ece77ff44
--- /dev/null
+++ b/gfx/pics/166/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 04
+ frame 2, 24
+ setrepeat 7
+ frame 1, 02
+ frame 3, 02
+ dorepeat 3
+ frame 1, 08
+ endanim
+; 0xd1233
diff --git a/gfx/pics/166/anim1.asm b/gfx/pics/166/anim1.asm
new file mode 100644
index 000000000..cf5a0e011
--- /dev/null
+++ b/gfx/pics/166/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd1f25
diff --git a/gfx/backpics/166.2bpp b/gfx/pics/166/back.2bpp
index ebd081ec1..ebd081ec1 100644
--- a/gfx/backpics/166.2bpp
+++ b/gfx/pics/166/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/166.lz b/gfx/pics/166/back.lz
index eb996b4e3..eb996b4e3 100644
--- a/gfx/backpics/lz/166.lz
+++ b/gfx/pics/166/back.lz
Binary files differ
diff --git a/gfx/pics/166/bitmask.asm b/gfx/pics/166/bitmask.asm
new file mode 100644
index 000000000..658c703c0
--- /dev/null
+++ b/gfx/pics/166/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %11000011
+ db %01110001
+ db %00011100
+ db %00000001
+ db %00000000
+; 1
+ db %11000011
+ db %01110111
+ db %01011100
+ db %00010001
+ db %00000000
+; 2
+ db %00000000
+ db %01100001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd342f
diff --git a/gfx/pics/166/frames.asm b/gfx/pics/166/frames.asm
new file mode 100644
index 000000000..9dd6ff763
--- /dev/null
+++ b/gfx/pics/166/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $05, $05, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame2
+ db $00 ; bitmask
+ db $05, $05, $24, $25, $26, $27, $28, $2e, $2a, $2b, $2c, $2d
+.frame3
+ db $01 ; bitmask
+ db $05, $05, $24, $25, $26, $2f, $30, $27, $28, $29, $2a, $2b
+ db $2c, $31, $2d, $32
+.frame4
+ db $02 ; bitmask
+ db $33, $34, $35
+; 0xd878e
diff --git a/gfx/frontpics/166.2bpp b/gfx/pics/166/front.2bpp
index 18f76c987..18f76c987 100644
--- a/gfx/frontpics/166.2bpp
+++ b/gfx/pics/166/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/166.lz b/gfx/pics/166/front.lz
index 117d19c14..117d19c14 100644
--- a/gfx/frontpics/lz/166.lz
+++ b/gfx/pics/166/front.lz
Binary files differ
diff --git a/gfx/anim/166.2bpp b/gfx/pics/166/tiles.2bpp
index 1476d0f43..1476d0f43 100644
--- a/gfx/anim/166.2bpp
+++ b/gfx/pics/166/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/167/anim0.asm b/gfx/pics/167/anim0.asm
new file mode 100644
index 000000000..be299fc49
--- /dev/null
+++ b/gfx/pics/167/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 07
+ frame 2, 12
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 3
+ endanim
+; 0xd1240
diff --git a/gfx/pics/167/anim1.asm b/gfx/pics/167/anim1.asm
new file mode 100644
index 000000000..c605578ef
--- /dev/null
+++ b/gfx/pics/167/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd1f2e
diff --git a/gfx/backpics/167.2bpp b/gfx/pics/167/back.2bpp
index 8cef79e77..8cef79e77 100644
--- a/gfx/backpics/167.2bpp
+++ b/gfx/pics/167/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/167.lz b/gfx/pics/167/back.lz
index 3fa2e3b12..3fa2e3b12 100644
--- a/gfx/backpics/lz/167.lz
+++ b/gfx/pics/167/back.lz
Binary files differ
diff --git a/gfx/pics/167/bitmask.asm b/gfx/pics/167/bitmask.asm
new file mode 100644
index 000000000..57cae087c
--- /dev/null
+++ b/gfx/pics/167/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %11000000
+ db %00011000
+ db %00000011
+ db %00000000
+; 1
+ db %11000000
+ db %01011010
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %00100001
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %01000010
+ db %00000000
+ db %00000000
+; 0xd343f
diff --git a/gfx/pics/167/frames.asm b/gfx/pics/167/frames.asm
new file mode 100644
index 000000000..da8ad1961
--- /dev/null
+++ b/gfx/pics/167/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1f, $1b, $1c, $20, $1d, $1e
+.frame3
+ db $02 ; bitmask
+ db $21, $22
+.frame4
+ db $03 ; bitmask
+ db $1f, $20
+; 0xd87ac
diff --git a/gfx/frontpics/167.2bpp b/gfx/pics/167/front.2bpp
index effcfd362..effcfd362 100644
--- a/gfx/frontpics/167.2bpp
+++ b/gfx/pics/167/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/167.lz b/gfx/pics/167/front.lz
index edbe6e1ce..edbe6e1ce 100644
--- a/gfx/frontpics/lz/167.lz
+++ b/gfx/pics/167/front.lz
Binary files differ
diff --git a/gfx/anim/167.2bpp b/gfx/pics/167/tiles.2bpp
index 682b14054..682b14054 100644
--- a/gfx/anim/167.2bpp
+++ b/gfx/pics/167/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/168/anim0.asm b/gfx/pics/168/anim0.asm
new file mode 100644
index 000000000..9a4d30385
--- /dev/null
+++ b/gfx/pics/168/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 12
+ setrepeat 6
+ frame 2, 03
+ frame 3, 03
+ dorepeat 2
+ frame 1, 24
+ endanim
+; 0xd124d
diff --git a/gfx/pics/168/anim1.asm b/gfx/pics/168/anim1.asm
new file mode 100644
index 000000000..6b9f416be
--- /dev/null
+++ b/gfx/pics/168/anim1.asm
@@ -0,0 +1,8 @@
+ frame 1, 08
+ setrepeat 2
+ frame 4, 06
+ frame 1, 06
+ dorepeat 2
+ frame 1, 08
+ endanim
+; 0xd1f3b
diff --git a/gfx/backpics/168.2bpp b/gfx/pics/168/back.2bpp
index c3e2d308f..c3e2d308f 100644
--- a/gfx/backpics/168.2bpp
+++ b/gfx/pics/168/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/168.lz b/gfx/pics/168/back.lz
index ff3aec7fb..ff3aec7fb 100644
--- a/gfx/backpics/lz/168.lz
+++ b/gfx/pics/168/back.lz
Binary files differ
diff --git a/gfx/pics/168/bitmask.asm b/gfx/pics/168/bitmask.asm
new file mode 100644
index 000000000..7109aa0bb
--- /dev/null
+++ b/gfx/pics/168/bitmask.asm
@@ -0,0 +1,9 @@
+; 0
+ db %00000000
+ db %10111100
+ db %11011101
+ db %11101111
+ db %01100000
+ db %00011000
+ db %00000000
+; 0xd3446
diff --git a/gfx/pics/168/frames.asm b/gfx/pics/168/frames.asm
new file mode 100644
index 000000000..ec7f6f191
--- /dev/null
+++ b/gfx/pics/168/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $00, $00, $38, $39
+ db $3a, $3b, $00, $3c, $3d, $3e, $00, $3f, $00, $00
+.frame2
+ db $00 ; bitmask
+ db $31, $32, $40, $00, $34, $35, $36, $41, $00, $00, $38, $39
+ db $3a, $42, $00, $3c, $3d, $3e, $00, $3f, $00, $00
+.frame3
+ db $00 ; bitmask
+ db $31, $32, $40, $00, $43, $44, $36, $41, $00, $00, $38, $39
+ db $3a, $42, $00, $45, $46, $3e, $00, $3f, $00, $00
+.frame4
+ db $00 ; bitmask
+ db $31, $47, $33, $00, $34, $35, $48, $37, $00, $00, $38, $39
+ db $49, $3b, $00, $3c, $3d, $3e, $00, $3f, $00, $00
+; 0xd8810
diff --git a/gfx/frontpics/168.2bpp b/gfx/pics/168/front.2bpp
index 15d520165..15d520165 100644
--- a/gfx/frontpics/168.2bpp
+++ b/gfx/pics/168/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/168.lz b/gfx/pics/168/front.lz
index 51039aeb5..51039aeb5 100644
--- a/gfx/frontpics/lz/168.lz
+++ b/gfx/pics/168/front.lz
Binary files differ
diff --git a/gfx/anim/168.2bpp b/gfx/pics/168/tiles.2bpp
index c316c85d6..c316c85d6 100644
--- a/gfx/anim/168.2bpp
+++ b/gfx/pics/168/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/169/anim0.asm b/gfx/pics/169/anim0.asm
new file mode 100644
index 000000000..99888ab81
--- /dev/null
+++ b/gfx/pics/169/anim0.asm
@@ -0,0 +1,10 @@
+ setrepeat 2
+ frame 0, 05
+ frame 1, 05
+ frame 2, 05
+ frame 3, 05
+ frame 4, 05
+ frame 5, 05
+ dorepeat 1
+ endanim
+; 0xd125e
diff --git a/gfx/pics/169/anim1.asm b/gfx/pics/169/anim1.asm
new file mode 100644
index 000000000..ec1dae2ac
--- /dev/null
+++ b/gfx/pics/169/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 5
+ frame 0, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd1f44
diff --git a/gfx/backpics/169.2bpp b/gfx/pics/169/back.2bpp
index f472857a2..f472857a2 100644
--- a/gfx/backpics/169.2bpp
+++ b/gfx/pics/169/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/169.lz b/gfx/pics/169/back.lz
index a572d93c5..a572d93c5 100644
--- a/gfx/backpics/lz/169.lz
+++ b/gfx/pics/169/back.lz
Binary files differ
diff --git a/gfx/pics/169/bitmask.asm b/gfx/pics/169/bitmask.asm
new file mode 100644
index 000000000..6db5a3bcc
--- /dev/null
+++ b/gfx/pics/169/bitmask.asm
@@ -0,0 +1,41 @@
+; 0
+ db %10001111
+ db %00000111
+ db %00000000
+ db %11000000
+ db %01111000
+ db %00111100
+ db %00000000
+; 1
+ db %00110000
+ db %00011000
+ db %00000000
+ db %00000000
+ db %00000110
+ db %00000011
+ db %00000000
+; 2
+ db %10111111
+ db %00011111
+ db %00000000
+ db %11000000
+ db %01111110
+ db %00111111
+ db %00000000
+; 3
+ db %00110000
+ db %00011000
+ db %00000000
+ db %00000000
+ db %10000111
+ db %00000011
+ db %00000000
+; 4
+ db %10111111
+ db %00011111
+ db %00000000
+ db %11000000
+ db %11111111
+ db %00111111
+ db %00000000
+; 0xd3469
diff --git a/gfx/pics/169/frames.asm b/gfx/pics/169/frames.asm
new file mode 100644
index 000000000..c0c95c30e
--- /dev/null
+++ b/gfx/pics/169/frames.asm
@@ -0,0 +1,26 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $03, $03, $31, $32, $03, $03, $33, $34, $35, $36, $03, $03
+ db $37, $38, $03, $03, $03, $39
+.frame2
+ db $01 ; bitmask
+ db $3a, $3b, $3c, $3d, $3e, $3f, $40, $41
+.frame3
+ db $02 ; bitmask
+ db $03, $03, $31, $32, $3a, $3b, $03, $03, $33, $34, $3c, $3d
+ db $35, $36, $3e, $3f, $03, $03, $37, $38, $40, $41, $03, $03
+ db $03, $39
+.frame4
+ db $03 ; bitmask
+ db $42, $43, $44, $45, $46, $47, $03, $48, $49, $03
+.frame5
+ db $04 ; bitmask
+ db $03, $03, $31, $32, $42, $43, $03, $03, $33, $34, $44, $45
+ db $35, $36, $46, $47, $03, $03, $03, $37, $38, $48, $49, $03
+ db $03, $03, $03, $39
+; 0xd8879
diff --git a/gfx/frontpics/169.2bpp b/gfx/pics/169/front.2bpp
index 60ceb268b..60ceb268b 100644
--- a/gfx/frontpics/169.2bpp
+++ b/gfx/pics/169/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/169.lz b/gfx/pics/169/front.lz
index 1e12aeed2..1e12aeed2 100644
--- a/gfx/frontpics/lz/169.lz
+++ b/gfx/pics/169/front.lz
Binary files differ
diff --git a/gfx/anim/169.2bpp b/gfx/pics/169/tiles.2bpp
index b8d26fb71..b8d26fb71 100644
--- a/gfx/anim/169.2bpp
+++ b/gfx/pics/169/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/170/anim0.asm b/gfx/pics/170/anim0.asm
new file mode 100644
index 000000000..f765c151a
--- /dev/null
+++ b/gfx/pics/170/anim0.asm
@@ -0,0 +1,11 @@
+ setrepeat 2
+ frame 2, 05
+ frame 1, 05
+ dorepeat 1
+ setrepeat 7
+ frame 3, 02
+ frame 0, 01
+ dorepeat 5
+ frame 3, 10
+ endanim
+; 0xd1271
diff --git a/gfx/pics/170/anim1.asm b/gfx/pics/170/anim1.asm
new file mode 100644
index 000000000..bf38f8d87
--- /dev/null
+++ b/gfx/pics/170/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1f4d
diff --git a/gfx/backpics/170.2bpp b/gfx/pics/170/back.2bpp
index 88f418e76..88f418e76 100644
--- a/gfx/backpics/170.2bpp
+++ b/gfx/pics/170/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/170.lz b/gfx/pics/170/back.lz
index 744af1ad4..744af1ad4 100644
--- a/gfx/backpics/lz/170.lz
+++ b/gfx/pics/170/back.lz
Binary files differ
diff --git a/gfx/pics/170/bitmask.asm b/gfx/pics/170/bitmask.asm
new file mode 100644
index 000000000..b2045d8b5
--- /dev/null
+++ b/gfx/pics/170/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00110000
+ db %00001000
+ db %00000001
+ db %00110000
+ db %00001100
+; 1
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+; 2
+ db %00001100
+ db %00000001
+ db %00000000
+ db %00001100
+ db %00000111
+; 3
+ db %00000000
+ db %00000100
+ db %01000000
+ db %00000000
+ db %00000000
+; 0xd347d
diff --git a/gfx/pics/170/frames.asm b/gfx/pics/170/frames.asm
new file mode 100644
index 000000000..748a3d619
--- /dev/null
+++ b/gfx/pics/170/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b
+.frame2
+ db $01 ; bitmask
+ db $27
+.frame3
+ db $02 ; bitmask
+ db $2c, $2d, $2e, $2f, $30, $31, $32, $33
+.frame4
+ db $03 ; bitmask
+ db $34, $35
+; 0xd8898
diff --git a/gfx/frontpics/170.2bpp b/gfx/pics/170/front.2bpp
index 377438f3d..377438f3d 100644
--- a/gfx/frontpics/170.2bpp
+++ b/gfx/pics/170/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/170.lz b/gfx/pics/170/front.lz
index b5db65701..b5db65701 100644
--- a/gfx/frontpics/lz/170.lz
+++ b/gfx/pics/170/front.lz
Binary files differ
diff --git a/gfx/anim/170.2bpp b/gfx/pics/170/tiles.2bpp
index 45f885d5a..45f885d5a 100644
--- a/gfx/anim/170.2bpp
+++ b/gfx/pics/170/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/171/anim0.asm b/gfx/pics/171/anim0.asm
new file mode 100644
index 000000000..18882deb5
--- /dev/null
+++ b/gfx/pics/171/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 12
+ frame 2, 12
+ frame 3, 12
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 4
+ endanim
+; 0xd1280
diff --git a/gfx/pics/171/anim1.asm b/gfx/pics/171/anim1.asm
new file mode 100644
index 000000000..d57dd04b1
--- /dev/null
+++ b/gfx/pics/171/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1f56
diff --git a/gfx/backpics/171.2bpp b/gfx/pics/171/back.2bpp
index e80485f07..e80485f07 100644
--- a/gfx/backpics/171.2bpp
+++ b/gfx/pics/171/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/171.lz b/gfx/pics/171/back.lz
index ea916b7ea..ea916b7ea 100644
--- a/gfx/backpics/lz/171.lz
+++ b/gfx/pics/171/back.lz
Binary files differ
diff --git a/gfx/pics/171/bitmask.asm b/gfx/pics/171/bitmask.asm
new file mode 100644
index 000000000..5294c2ebc
--- /dev/null
+++ b/gfx/pics/171/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %11000110
+ db %00000000
+ db %10001110
+ db %00000111
+; 1
+ db %00000011
+ db %11000110
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000011
+ db %00000110
+ db %00000000
+ db %10001110
+ db %00000111
+; 3
+ db %00000011
+ db %11000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3491
diff --git a/gfx/pics/171/frames.asm b/gfx/pics/171/frames.asm
new file mode 100644
index 000000000..efce13663
--- /dev/null
+++ b/gfx/pics/171/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $01 ; bitmask
+ db $2f, $30, $24, $25, $26, $27
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $24, $25, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame4
+ db $03 ; bitmask
+ db $2f, $30, $26, $27
+; 0xd88c4
diff --git a/gfx/frontpics/171.2bpp b/gfx/pics/171/front.2bpp
index 8eb74fe56..8eb74fe56 100644
--- a/gfx/frontpics/171.2bpp
+++ b/gfx/pics/171/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/171.lz b/gfx/pics/171/front.lz
index ba57a1569..ba57a1569 100644
--- a/gfx/frontpics/lz/171.lz
+++ b/gfx/pics/171/front.lz
Binary files differ
diff --git a/gfx/anim/171.2bpp b/gfx/pics/171/tiles.2bpp
index ff27d25e5..ff27d25e5 100644
--- a/gfx/anim/171.2bpp
+++ b/gfx/pics/171/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/172/anim0.asm b/gfx/pics/172/anim0.asm
new file mode 100644
index 000000000..50a1ae73c
--- /dev/null
+++ b/gfx/pics/172/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 1, 22
+ frame 2, 12
+ frame 4, 08
+ endanim
+; 0xd1289
diff --git a/gfx/pics/172/anim1.asm b/gfx/pics/172/anim1.asm
new file mode 100644
index 000000000..dd39adcab
--- /dev/null
+++ b/gfx/pics/172/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 04
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1f5f
diff --git a/gfx/backpics/172.2bpp b/gfx/pics/172/back.2bpp
index 93f7ffb98..93f7ffb98 100644
--- a/gfx/backpics/172.2bpp
+++ b/gfx/pics/172/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/172.lz b/gfx/pics/172/back.lz
index 61ab083b3..61ab083b3 100644
--- a/gfx/backpics/lz/172.lz
+++ b/gfx/pics/172/back.lz
Binary files differ
diff --git a/gfx/pics/172/bitmask.asm b/gfx/pics/172/bitmask.asm
new file mode 100644
index 000000000..8396728bf
--- /dev/null
+++ b/gfx/pics/172/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11100011
+ db %00111001
+ db %10101111
+ db %00000001
+; 1
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %10001000
+ db %00000001
+; 0xd349d
diff --git a/gfx/pics/172/frames.asm b/gfx/pics/172/frames.asm
new file mode 100644
index 000000000..8d82f908c
--- /dev/null
+++ b/gfx/pics/172/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $02, $19, $02, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22
+ db $23, $24, $25, $02
+.frame2
+ db $00 ; bitmask
+ db $02, $19, $02, $1a, $1b, $1c, $1d, $1e, $26, $20, $21, $22
+ db $23, $24, $25, $02
+.frame3
+ db $01 ; bitmask
+ db $27, $28
+.frame4
+ db $02 ; bitmask
+ db $23, $25, $02
+; 0xd88f5
diff --git a/gfx/frontpics/172.2bpp b/gfx/pics/172/front.2bpp
index 86e90cbd6..86e90cbd6 100644
--- a/gfx/frontpics/172.2bpp
+++ b/gfx/pics/172/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/172.lz b/gfx/pics/172/front.lz
index 06712d244..06712d244 100644
--- a/gfx/frontpics/lz/172.lz
+++ b/gfx/pics/172/front.lz
Binary files differ
diff --git a/gfx/anim/172.2bpp b/gfx/pics/172/tiles.2bpp
index 5aae131b9..5aae131b9 100644
--- a/gfx/anim/172.2bpp
+++ b/gfx/pics/172/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/173/anim0.asm b/gfx/pics/173/anim0.asm
new file mode 100644
index 000000000..37f3da590
--- /dev/null
+++ b/gfx/pics/173/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 10
+ frame 2, 10
+ frame 3, 10
+ endanim
+; 0xd1290
diff --git a/gfx/pics/173/anim1.asm b/gfx/pics/173/anim1.asm
new file mode 100644
index 000000000..129f123c2
--- /dev/null
+++ b/gfx/pics/173/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 1, 08
+ dorepeat 1
+ endanim
+; 0xd1f68
diff --git a/gfx/backpics/173.2bpp b/gfx/pics/173/back.2bpp
index 70502b7b0..70502b7b0 100644
--- a/gfx/backpics/173.2bpp
+++ b/gfx/pics/173/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/173.lz b/gfx/pics/173/back.lz
index 35ec3369b..35ec3369b 100644
--- a/gfx/backpics/lz/173.lz
+++ b/gfx/pics/173/back.lz
Binary files differ
diff --git a/gfx/pics/173/bitmask.asm b/gfx/pics/173/bitmask.asm
new file mode 100644
index 000000000..175ab4893
--- /dev/null
+++ b/gfx/pics/173/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00001000
+ db %00000000
+ db %00000100
+ db %00000000
+; 1
+ db %11001110
+ db %00111001
+ db %01100100
+ db %00000000
+; 2
+ db %01000000
+ db %00111101
+ db %00000000
+ db %00000000
+; 0xd34a9
diff --git a/gfx/pics/173/frames.asm b/gfx/pics/173/frames.asm
new file mode 100644
index 000000000..53ad1f718
--- /dev/null
+++ b/gfx/pics/173/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $01 ; bitmask
+ db $1b, $1c, $19, $1d, $1e, $1f, $20, $21, $22, $1a, $23, $24
+.frame3
+ db $02 ; bitmask
+ db $25, $26, $27, $28, $29, $2a
+; 0xd8912
diff --git a/gfx/frontpics/173.2bpp b/gfx/pics/173/front.2bpp
index 69dba752b..69dba752b 100644
--- a/gfx/frontpics/173.2bpp
+++ b/gfx/pics/173/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/173.lz b/gfx/pics/173/front.lz
index e8c624069..e8c624069 100644
--- a/gfx/frontpics/lz/173.lz
+++ b/gfx/pics/173/front.lz
Binary files differ
diff --git a/gfx/anim/173.2bpp b/gfx/pics/173/tiles.2bpp
index 295bc8c2b..295bc8c2b 100644
--- a/gfx/anim/173.2bpp
+++ b/gfx/pics/173/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/174/anim0.asm b/gfx/pics/174/anim0.asm
new file mode 100644
index 000000000..0b2430e44
--- /dev/null
+++ b/gfx/pics/174/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 04
+ frame 1, 08
+ frame 2, 14
+ frame 1, 06
+ endanim
+; 0xd1299
diff --git a/gfx/pics/174/anim1.asm b/gfx/pics/174/anim1.asm
new file mode 100644
index 000000000..338a0ab2d
--- /dev/null
+++ b/gfx/pics/174/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1f71
diff --git a/gfx/backpics/174.2bpp b/gfx/pics/174/back.2bpp
index 4a9dab2ac..4a9dab2ac 100644
--- a/gfx/backpics/174.2bpp
+++ b/gfx/pics/174/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/174.lz b/gfx/pics/174/back.lz
index b416af3f0..b416af3f0 100644
--- a/gfx/backpics/lz/174.lz
+++ b/gfx/pics/174/back.lz
Binary files differ
diff --git a/gfx/pics/174/bitmask.asm b/gfx/pics/174/bitmask.asm
new file mode 100644
index 000000000..c5d067fc8
--- /dev/null
+++ b/gfx/pics/174/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 1
+ db %00101000
+ db %10100110
+ db %10001101
+ db %00000001
+; 2
+ db %10000000
+ db %00010000
+ db %00000010
+ db %00000000
+; 0xd34b5
diff --git a/gfx/pics/174/frames.asm b/gfx/pics/174/frames.asm
new file mode 100644
index 000000000..3e279f4e8
--- /dev/null
+++ b/gfx/pics/174/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $01 ; bitmask
+ db $1a, $1b, $1c, $1d, $19, $1e, $1f, $20, $21, $22, $00
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25
+; 0xd892a
diff --git a/gfx/frontpics/174.2bpp b/gfx/pics/174/front.2bpp
index 33ac4a33c..33ac4a33c 100644
--- a/gfx/frontpics/174.2bpp
+++ b/gfx/pics/174/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/174.lz b/gfx/pics/174/front.lz
index 1c4bbefa0..1c4bbefa0 100644
--- a/gfx/frontpics/lz/174.lz
+++ b/gfx/pics/174/front.lz
Binary files differ
diff --git a/gfx/anim/174.2bpp b/gfx/pics/174/tiles.2bpp
index dfe5c45ea..dfe5c45ea 100644
--- a/gfx/anim/174.2bpp
+++ b/gfx/pics/174/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/175/anim0.asm b/gfx/pics/175/anim0.asm
new file mode 100644
index 000000000..a09192323
--- /dev/null
+++ b/gfx/pics/175/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 12
+ dorepeat 1
+ frame 0, 06
+ frame 2, 06
+ endanim
+; 0xd12a6
diff --git a/gfx/pics/175/anim1.asm b/gfx/pics/175/anim1.asm
new file mode 100644
index 000000000..e3bd76591
--- /dev/null
+++ b/gfx/pics/175/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 2, 06
+ dorepeat 1
+ endanim
+; 0xd1f7a
diff --git a/gfx/backpics/175.2bpp b/gfx/pics/175/back.2bpp
index a6a15697a..a6a15697a 100644
--- a/gfx/backpics/175.2bpp
+++ b/gfx/pics/175/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/175.lz b/gfx/pics/175/back.lz
index ed6fab2ec..ed6fab2ec 100644
--- a/gfx/backpics/lz/175.lz
+++ b/gfx/pics/175/back.lz
Binary files differ
diff --git a/gfx/pics/175/bitmask.asm b/gfx/pics/175/bitmask.asm
new file mode 100644
index 000000000..dfe406529
--- /dev/null
+++ b/gfx/pics/175/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %11000000
+ db %01111011
+ db %11001111
+ db %00000000
+; 1
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd34bd
diff --git a/gfx/pics/175/frames.asm b/gfx/pics/175/frames.asm
new file mode 100644
index 000000000..e75a9860b
--- /dev/null
+++ b/gfx/pics/175/frames.asm
@@ -0,0 +1,10 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24
+ db $25, $26
+.frame2
+ db $01 ; bitmask
+ db $27
+; 0xd893f
diff --git a/gfx/frontpics/175.2bpp b/gfx/pics/175/front.2bpp
index 830c04a43..830c04a43 100644
--- a/gfx/frontpics/175.2bpp
+++ b/gfx/pics/175/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/175.lz b/gfx/pics/175/front.lz
index 8ceaf38bf..8ceaf38bf 100644
--- a/gfx/frontpics/lz/175.lz
+++ b/gfx/pics/175/front.lz
Binary files differ
diff --git a/gfx/anim/175.2bpp b/gfx/pics/175/tiles.2bpp
index 490202058..490202058 100644
--- a/gfx/anim/175.2bpp
+++ b/gfx/pics/175/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/176/anim0.asm b/gfx/pics/176/anim0.asm
new file mode 100644
index 000000000..cd1ac8f9b
--- /dev/null
+++ b/gfx/pics/176/anim0.asm
@@ -0,0 +1,8 @@
+ frame 2, 09
+ frame 1, 09
+ setrepeat 2
+ frame 5, 09
+ frame 4, 09
+ dorepeat 3
+ endanim
+; 0xd12b3
diff --git a/gfx/pics/176/anim1.asm b/gfx/pics/176/anim1.asm
new file mode 100644
index 000000000..543befa82
--- /dev/null
+++ b/gfx/pics/176/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd1f83
diff --git a/gfx/backpics/176.2bpp b/gfx/pics/176/back.2bpp
index 86e920d1e..86e920d1e 100644
--- a/gfx/backpics/176.2bpp
+++ b/gfx/pics/176/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/176.lz b/gfx/pics/176/back.lz
index 134d5718a..134d5718a 100644
--- a/gfx/backpics/lz/176.lz
+++ b/gfx/pics/176/back.lz
Binary files differ
diff --git a/gfx/pics/176/bitmask.asm b/gfx/pics/176/bitmask.asm
new file mode 100644
index 000000000..bf7c7ce1a
--- /dev/null
+++ b/gfx/pics/176/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %00111100
+ db %00011011
+ db %10001110
+ db %00000111
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00111100
+ db %10011011
+ db %11001111
+ db %01110111
+ db %00111000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00111100
+ db %00011010
+ db %10001110
+ db %00000111
+ db %00000000
+ db %00000000
+; 0xd34d9
diff --git a/gfx/pics/176/frames.asm b/gfx/pics/176/frames.asm
new file mode 100644
index 000000000..b5513420a
--- /dev/null
+++ b/gfx/pics/176/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $40, $41, $37, $38, $42, $43, $39, $3a
+ db $3b, $44, $3c, $3d, $3e, $3f, $00, $45, $46, $00, $47, $48
+.frame3
+ db $02 ; bitmask
+ db $49
+.frame4
+ db $03 ; bitmask
+ db $31, $32, $33, $34, $36, $37, $38, $39, $3a, $3b, $3c, $3d
+ db $3e, $3f
+.frame5
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $4a, $41, $37, $38, $42, $43, $39, $3a
+ db $3b, $44, $3c, $3d, $3e, $3f, $00, $45, $46, $00, $47, $48
+; 0xd899c
diff --git a/gfx/frontpics/176.2bpp b/gfx/pics/176/front.2bpp
index 885e5f440..885e5f440 100644
--- a/gfx/frontpics/176.2bpp
+++ b/gfx/pics/176/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/176.lz b/gfx/pics/176/front.lz
index 13e98ae1d..13e98ae1d 100644
--- a/gfx/frontpics/lz/176.lz
+++ b/gfx/pics/176/front.lz
Binary files differ
diff --git a/gfx/anim/176.2bpp b/gfx/pics/176/tiles.2bpp
index a2ef39ed8..a2ef39ed8 100644
--- a/gfx/anim/176.2bpp
+++ b/gfx/pics/176/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/177/anim0.asm b/gfx/pics/177/anim0.asm
new file mode 100644
index 000000000..22c2659db
--- /dev/null
+++ b/gfx/pics/177/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 10
+ frame 2, 10
+ frame 3, 25
+ frame 2, 10
+ endanim
+; 0xd12bc
diff --git a/gfx/pics/177/anim1.asm b/gfx/pics/177/anim1.asm
new file mode 100644
index 000000000..a4a974877
--- /dev/null
+++ b/gfx/pics/177/anim1.asm
@@ -0,0 +1,3 @@
+ frame 4, 35
+ endanim
+; 0xd1f86
diff --git a/gfx/backpics/177.2bpp b/gfx/pics/177/back.2bpp
index fa29a7ae6..fa29a7ae6 100644
--- a/gfx/backpics/177.2bpp
+++ b/gfx/pics/177/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/177.lz b/gfx/pics/177/back.lz
index b4ba45c14..b4ba45c14 100644
--- a/gfx/backpics/lz/177.lz
+++ b/gfx/pics/177/back.lz
Binary files differ
diff --git a/gfx/pics/177/bitmask.asm b/gfx/pics/177/bitmask.asm
new file mode 100644
index 000000000..258acf82b
--- /dev/null
+++ b/gfx/pics/177/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %10001100
+ db %00110001
+ db %01100011
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000010
+ db %00000000
+; 0xd34e1
diff --git a/gfx/pics/177/frames.asm b/gfx/pics/177/frames.asm
new file mode 100644
index 000000000..4cd8f77b2
--- /dev/null
+++ b/gfx/pics/177/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $00, $1f, $00, $20
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $21, $1c, $22, $1e, $00, $1f, $00, $20
+.frame3
+ db $00 ; bitmask
+ db $19, $1a, $21, $1c, $23, $1e, $00, $1f, $00, $20
+.frame4
+ db $01 ; bitmask
+ db $24
+; 0xd89c7
diff --git a/gfx/frontpics/177.2bpp b/gfx/pics/177/front.2bpp
index 7ab3f4e2c..7ab3f4e2c 100644
--- a/gfx/frontpics/177.2bpp
+++ b/gfx/pics/177/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/177.lz b/gfx/pics/177/front.lz
index adebc8879..adebc8879 100644
--- a/gfx/frontpics/lz/177.lz
+++ b/gfx/pics/177/front.lz
Binary files differ
diff --git a/gfx/anim/177.2bpp b/gfx/pics/177/tiles.2bpp
index a546a8370..a546a8370 100644
--- a/gfx/anim/177.2bpp
+++ b/gfx/pics/177/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/178/anim0.asm b/gfx/pics/178/anim0.asm
new file mode 100644
index 000000000..002f905b8
--- /dev/null
+++ b/gfx/pics/178/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 04
+ frame 3, 12
+ frame 2, 12
+ frame 1, 12
+ setrepeat 2
+ frame 0, 12
+ frame 4, 12
+ dorepeat 5
+ endanim
+; 0xd12cd
diff --git a/gfx/pics/178/anim1.asm b/gfx/pics/178/anim1.asm
new file mode 100644
index 000000000..3fa8d7875
--- /dev/null
+++ b/gfx/pics/178/anim1.asm
@@ -0,0 +1,11 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ frame 0, 18
+ setrepeat 2
+ frame 1, 08
+ frame 2, 08
+ dorepeat 6
+ endanim
+; 0xd1f99
diff --git a/gfx/backpics/178.2bpp b/gfx/pics/178/back.2bpp
index 13e973c0c..13e973c0c 100644
--- a/gfx/backpics/178.2bpp
+++ b/gfx/pics/178/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/178.lz b/gfx/pics/178/back.lz
index 8b6889ffb..8b6889ffb 100644
--- a/gfx/backpics/lz/178.lz
+++ b/gfx/pics/178/back.lz
Binary files differ
diff --git a/gfx/pics/178/bitmask.asm b/gfx/pics/178/bitmask.asm
new file mode 100644
index 000000000..3b59b58c6
--- /dev/null
+++ b/gfx/pics/178/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %11000001
+ db %00110000
+ db %00001100
+ db %10001110
+ db %00000001
+; 1
+ db %00000000
+ db %00010000
+ db %00000100
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %11000111
+ db %01110011
+ db %00001100
+ db %00000000
+; 0xd34f0
diff --git a/gfx/pics/178/frames.asm b/gfx/pics/178/frames.asm
new file mode 100644
index 000000000..fffa25793
--- /dev/null
+++ b/gfx/pics/178/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $01, $24, $01, $25, $26, $27, $28, $01, $29, $2a, $01, $01
+.frame2
+ db $00 ; bitmask
+ db $01, $24, $01, $2b, $26, $2c, $28, $01, $29, $2a, $01, $01
+.frame3
+ db $01 ; bitmask
+ db $2d, $2e
+.frame4
+ db $02 ; bitmask
+ db $2f, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+; 0xd89f9
diff --git a/gfx/frontpics/178.2bpp b/gfx/pics/178/front.2bpp
index bf0ec5376..bf0ec5376 100644
--- a/gfx/frontpics/178.2bpp
+++ b/gfx/pics/178/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/178.lz b/gfx/pics/178/front.lz
index 4b5918b3a..4b5918b3a 100644
--- a/gfx/frontpics/lz/178.lz
+++ b/gfx/pics/178/front.lz
Binary files differ
diff --git a/gfx/anim/178.2bpp b/gfx/pics/178/tiles.2bpp
index b589509c8..b589509c8 100644
--- a/gfx/anim/178.2bpp
+++ b/gfx/pics/178/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/179/anim0.asm b/gfx/pics/179/anim0.asm
new file mode 100644
index 000000000..e74a78cad
--- /dev/null
+++ b/gfx/pics/179/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 08
+ frame 0, 07
+ frame 1, 05
+ setrepeat 2
+ frame 0, 06
+ frame 2, 06
+ dorepeat 4
+ endanim
+; 0xd12dc
diff --git a/gfx/pics/179/anim1.asm b/gfx/pics/179/anim1.asm
new file mode 100644
index 000000000..21d7a79f8
--- /dev/null
+++ b/gfx/pics/179/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 2, 07
+ dorepeat 1
+ endanim
+; 0xd1fa2
diff --git a/gfx/backpics/179.2bpp b/gfx/pics/179/back.2bpp
index ad17faab8..ad17faab8 100644
--- a/gfx/backpics/179.2bpp
+++ b/gfx/pics/179/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/179.lz b/gfx/pics/179/back.lz
index e703d450f..e703d450f 100644
--- a/gfx/backpics/lz/179.lz
+++ b/gfx/pics/179/back.lz
Binary files differ
diff --git a/gfx/pics/179/bitmask.asm b/gfx/pics/179/bitmask.asm
new file mode 100644
index 000000000..7dcdb9300
--- /dev/null
+++ b/gfx/pics/179/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %01111000
+ db %01001100
+ db %11101001
+ db %00000000
+; 1
+ db %00001000
+ db %00000001
+ db %00000000
+ db %00000000
+; 0xd34f8
diff --git a/gfx/pics/179/frames.asm b/gfx/pics/179/frames.asm
new file mode 100644
index 000000000..180c3e45f
--- /dev/null
+++ b/gfx/pics/179/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24
+.frame2
+ db $01 ; bitmask
+ db $25, $26
+; 0xd8a0d
diff --git a/gfx/frontpics/179.2bpp b/gfx/pics/179/front.2bpp
index 62db8aa05..62db8aa05 100644
--- a/gfx/frontpics/179.2bpp
+++ b/gfx/pics/179/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/179.lz b/gfx/pics/179/front.lz
index 0245a96cd..0245a96cd 100644
--- a/gfx/frontpics/lz/179.lz
+++ b/gfx/pics/179/front.lz
Binary files differ
diff --git a/gfx/anim/179.2bpp b/gfx/pics/179/tiles.2bpp
index 4234346c5..4234346c5 100644
--- a/gfx/anim/179.2bpp
+++ b/gfx/pics/179/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/180/anim0.asm b/gfx/pics/180/anim0.asm
new file mode 100644
index 000000000..c9f1f4e7e
--- /dev/null
+++ b/gfx/pics/180/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 06
+ setrepeat 5
+ frame 3, 02
+ frame 2, 02
+ dorepeat 2
+ frame 3, 18
+ endanim
+; 0xd12e9
diff --git a/gfx/pics/180/anim1.asm b/gfx/pics/180/anim1.asm
new file mode 100644
index 000000000..b9ec0d483
--- /dev/null
+++ b/gfx/pics/180/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd1fab
diff --git a/gfx/backpics/180.2bpp b/gfx/pics/180/back.2bpp
index b0c57dce1..b0c57dce1 100644
--- a/gfx/backpics/180.2bpp
+++ b/gfx/pics/180/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/180.lz b/gfx/pics/180/back.lz
index 5eec3df7a..5eec3df7a 100644
--- a/gfx/backpics/lz/180.lz
+++ b/gfx/pics/180/back.lz
Binary files differ
diff --git a/gfx/pics/180/bitmask.asm b/gfx/pics/180/bitmask.asm
new file mode 100644
index 000000000..85dc68882
--- /dev/null
+++ b/gfx/pics/180/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %00000100
+ db %01000001
+ db %10011110
+ db %00000111
+; 1
+ db %00000000
+ db %01000101
+ db %01000001
+ db %10011110
+ db %00000111
+; 2
+ db %00000000
+ db %01000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3507
diff --git a/gfx/pics/180/frames.asm b/gfx/pics/180/frames.asm
new file mode 100644
index 000000000..facb6f888
--- /dev/null
+++ b/gfx/pics/180/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $00, $27, $28, $29, $00, $2a, $2b, $2c
+.frame2
+ db $01 ; bitmask
+ db $2d, $2e, $2f, $30, $26, $00, $27, $28, $29, $00, $2a, $2b
+ db $2c
+.frame3
+ db $01 ; bitmask
+ db $2d, $2e, $2f, $30, $26, $00, $31, $28, $29, $00, $32, $2b
+ db $2c
+.frame4
+ db $02 ; bitmask
+ db $2d, $2f
+; 0xd8a40
diff --git a/gfx/frontpics/180.2bpp b/gfx/pics/180/front.2bpp
index c93f05740..c93f05740 100644
--- a/gfx/frontpics/180.2bpp
+++ b/gfx/pics/180/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/180.lz b/gfx/pics/180/front.lz
index 673155a7e..673155a7e 100644
--- a/gfx/frontpics/lz/180.lz
+++ b/gfx/pics/180/front.lz
Binary files differ
diff --git a/gfx/anim/180.2bpp b/gfx/pics/180/tiles.2bpp
index 2db8439bc..2db8439bc 100644
--- a/gfx/anim/180.2bpp
+++ b/gfx/pics/180/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/181/anim0.asm b/gfx/pics/181/anim0.asm
new file mode 100644
index 000000000..5e3d6538e
--- /dev/null
+++ b/gfx/pics/181/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 10
+ frame 2, 08
+ setrepeat 7
+ frame 2, 02
+ frame 3, 02
+ dorepeat 3
+ frame 1, 06
+ frame 4, 06
+ endanim
+; 0xd12fa
diff --git a/gfx/pics/181/anim1.asm b/gfx/pics/181/anim1.asm
new file mode 100644
index 000000000..6dcb40d61
--- /dev/null
+++ b/gfx/pics/181/anim1.asm
@@ -0,0 +1,7 @@
+ frame 4, 10
+ setrepeat 2
+ frame 5, 06
+ frame 6, 06
+ dorepeat 2
+ endanim
+; 0xd1fb6
diff --git a/gfx/backpics/181.2bpp b/gfx/pics/181/back.2bpp
index 365636d84..365636d84 100644
--- a/gfx/backpics/181.2bpp
+++ b/gfx/pics/181/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/181.lz b/gfx/pics/181/back.lz
index 8d3b42d9b..8d3b42d9b 100644
--- a/gfx/backpics/lz/181.lz
+++ b/gfx/pics/181/back.lz
Binary files differ
diff --git a/gfx/pics/181/bitmask.asm b/gfx/pics/181/bitmask.asm
new file mode 100644
index 000000000..748ca9a41
--- /dev/null
+++ b/gfx/pics/181/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00111000
+ db %00111100
+ db %10011111
+ db %00001111
+ db %11000110
+ db %01100000
+ db %00000000
+; 1
+ db %00111000
+ db %00111100
+ db %11111111
+ db %01111111
+ db %11111110
+ db %01101100
+ db %00000000
+; 2
+ db %00111000
+ db %00111100
+ db %11011111
+ db %00111111
+ db %11000110
+ db %01100000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %10000011
+ db %00000001
+ db %11000000
+ db %01100000
+ db %00000000
+; 5
+ db %00000000
+ db %00000000
+ db %11000011
+ db %00100001
+ db %11000000
+ db %01100000
+ db %00000000
+; 0xd3531
diff --git a/gfx/pics/181/frames.asm b/gfx/pics/181/frames.asm
new file mode 100644
index 000000000..028ddbc8c
--- /dev/null
+++ b/gfx/pics/181/frames.asm
@@ -0,0 +1,30 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $00, $31, $00, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+ db $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $00
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $00, $00, $45, $46, $35, $36, $37, $38, $39, $3a
+ db $47, $48, $49, $3c, $3d, $3e, $3f, $4a, $4b, $4c, $40, $41
+ db $4d, $4e, $4f, $42, $43, $50, $51, $44, $00
+.frame3
+ db $02 ; bitmask
+ db $00, $00, $00, $00, $52, $46, $35, $36, $37, $38, $39, $3a
+ db $53, $3b, $3c, $3d, $3e, $3f, $54, $55, $40, $41, $42, $43
+ db $44, $00
+.frame4
+ db $03 ; bitmask
+ db $53, $55
+.frame5
+ db $04 ; bitmask
+ db $36, $37, $3b, $3c, $42, $43, $44, $00
+.frame6
+ db $05 ; bitmask
+ db $36, $37, $53, $3b, $3c, $55, $42, $43, $44, $00
+; 0xd8ab8
diff --git a/gfx/frontpics/181.2bpp b/gfx/pics/181/front.2bpp
index cd2091ff6..cd2091ff6 100644
--- a/gfx/frontpics/181.2bpp
+++ b/gfx/pics/181/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/181.lz b/gfx/pics/181/front.lz
index 84f43c105..84f43c105 100644
--- a/gfx/frontpics/lz/181.lz
+++ b/gfx/pics/181/front.lz
Binary files differ
diff --git a/gfx/anim/181.2bpp b/gfx/pics/181/tiles.2bpp
index 90a92fc78..90a92fc78 100644
--- a/gfx/anim/181.2bpp
+++ b/gfx/pics/181/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/182/anim0.asm b/gfx/pics/182/anim0.asm
new file mode 100644
index 000000000..7aa2e3568
--- /dev/null
+++ b/gfx/pics/182/anim0.asm
@@ -0,0 +1,10 @@
+ frame 3, 12
+ frame 1, 12
+ frame 2, 12
+ frame 4, 10
+ frame 0, 12
+ frame 4, 10
+ frame 5, 12
+ frame 4, 10
+ endanim
+; 0xd130b
diff --git a/gfx/pics/182/anim1.asm b/gfx/pics/182/anim1.asm
new file mode 100644
index 000000000..322fa3758
--- /dev/null
+++ b/gfx/pics/182/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 6, 06
+ dorepeat 1
+ endanim
+; 0xd1fbf
diff --git a/gfx/backpics/182.2bpp b/gfx/pics/182/back.2bpp
index fc87054af..fc87054af 100644
--- a/gfx/backpics/182.2bpp
+++ b/gfx/pics/182/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/182.lz b/gfx/pics/182/back.lz
index d1a59b617..d1a59b617 100644
--- a/gfx/backpics/lz/182.lz
+++ b/gfx/pics/182/back.lz
Binary files differ
diff --git a/gfx/pics/182/bitmask.asm b/gfx/pics/182/bitmask.asm
new file mode 100644
index 000000000..9a7c93ed3
--- /dev/null
+++ b/gfx/pics/182/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00000000
+ db %00110000
+ db %00011000
+ db %00001101
+ db %00000110
+ db %00000011
+ db %00000000
+; 1
+ db %00000000
+ db %00101000
+ db %00010100
+ db %00001011
+ db %00000101
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00110000
+ db %00011000
+ db %00001100
+ db %00000110
+ db %00000011
+ db %00000000
+; 4
+ db %00000000
+ db %00101000
+ db %00010100
+ db %00001010
+ db %00000101
+ db %00000011
+ db %00000000
+; 5
+ db %00000000
+ db %00000000
+ db %10000011
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd355b
diff --git a/gfx/pics/182/frames.asm b/gfx/pics/182/frames.asm
new file mode 100644
index 000000000..0f0379c01
--- /dev/null
+++ b/gfx/pics/182/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+.frame2
+ db $01 ; bitmask
+ db $3c, $3d, $3e, $3f, $35, $40, $41, $42, $43, $44, $45
+.frame3
+ db $02 ; bitmask
+ db $35
+.frame4
+ db $03 ; bitmask
+ db $31, $32, $33, $34, $36, $37, $38, $39, $3a, $3b
+.frame5
+ db $04 ; bitmask
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45
+.frame6
+ db $05 ; bitmask
+ db $46, $47, $48, $49
+; 0xd8af9
diff --git a/gfx/frontpics/182.2bpp b/gfx/pics/182/front.2bpp
index f8742565d..f8742565d 100644
--- a/gfx/frontpics/182.2bpp
+++ b/gfx/pics/182/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/182.lz b/gfx/pics/182/front.lz
index 9cba9a1c3..9cba9a1c3 100644
--- a/gfx/frontpics/lz/182.lz
+++ b/gfx/pics/182/front.lz
Binary files differ
diff --git a/gfx/anim/182.2bpp b/gfx/pics/182/tiles.2bpp
index a79818073..a79818073 100644
--- a/gfx/anim/182.2bpp
+++ b/gfx/pics/182/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/183/anim0.asm b/gfx/pics/183/anim0.asm
new file mode 100644
index 000000000..5b8c7fc2a
--- /dev/null
+++ b/gfx/pics/183/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 10
+ frame 2, 36
+ frame 3, 10
+ setrepeat 3
+ frame 0, 10
+ frame 3, 10
+ dorepeat 4
+ endanim
+; 0xd131a
diff --git a/gfx/pics/183/anim1.asm b/gfx/pics/183/anim1.asm
new file mode 100644
index 000000000..3be2dd1dc
--- /dev/null
+++ b/gfx/pics/183/anim1.asm
@@ -0,0 +1,7 @@
+ frame 4, 40
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 2
+ endanim
+; 0xd1fca
diff --git a/gfx/backpics/183.2bpp b/gfx/pics/183/back.2bpp
index bbbb57d15..bbbb57d15 100644
--- a/gfx/backpics/183.2bpp
+++ b/gfx/pics/183/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/183.lz b/gfx/pics/183/back.lz
index 699fdaf6c..699fdaf6c 100644
--- a/gfx/backpics/lz/183.lz
+++ b/gfx/pics/183/back.lz
Binary files differ
diff --git a/gfx/pics/183/bitmask.asm b/gfx/pics/183/bitmask.asm
new file mode 100644
index 000000000..8c8fc0802
--- /dev/null
+++ b/gfx/pics/183/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %01000000
+ db %00001000
+ db %11100110
+ db %00000001
+; 1
+ db %01000110
+ db %00001000
+ db %11100111
+ db %00000001
+; 2
+ db %00000000
+ db %00000000
+ db %11100110
+ db %00000001
+; 3
+ db %01000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd356b
diff --git a/gfx/pics/183/frames.asm b/gfx/pics/183/frames.asm
new file mode 100644
index 000000000..04ab38489
--- /dev/null
+++ b/gfx/pics/183/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20
+.frame2
+ db $01 ; bitmask
+ db $21, $22, $23, $24, $25, $26, $27, $28, $29, $2a, $2b
+.frame3
+ db $02 ; bitmask
+ db $1b, $1c, $1d, $1e, $1f, $20
+.frame4
+ db $03 ; bitmask
+ db $23, $24
+.frame5
+ db $03 ; bitmask
+ db $19, $1a
+; 0xd8b25
diff --git a/gfx/frontpics/183.2bpp b/gfx/pics/183/front.2bpp
index 1db053d56..1db053d56 100644
--- a/gfx/frontpics/183.2bpp
+++ b/gfx/pics/183/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/183.lz b/gfx/pics/183/front.lz
index abe4c982a..abe4c982a 100644
--- a/gfx/frontpics/lz/183.lz
+++ b/gfx/pics/183/front.lz
Binary files differ
diff --git a/gfx/anim/183.2bpp b/gfx/pics/183/tiles.2bpp
index 22e44da38..22e44da38 100644
--- a/gfx/anim/183.2bpp
+++ b/gfx/pics/183/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/184/anim0.asm b/gfx/pics/184/anim0.asm
new file mode 100644
index 000000000..bbe46d4b7
--- /dev/null
+++ b/gfx/pics/184/anim0.asm
@@ -0,0 +1,9 @@
+ setrepeat 2
+ frame 2, 06
+ frame 3, 06
+ dorepeat 1
+ frame 0, 08
+ frame 1, 08
+ frame 4, 08
+ endanim
+; 0xd1329
diff --git a/gfx/pics/184/anim1.asm b/gfx/pics/184/anim1.asm
new file mode 100644
index 000000000..070e6145f
--- /dev/null
+++ b/gfx/pics/184/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1fd3
diff --git a/gfx/backpics/184.2bpp b/gfx/pics/184/back.2bpp
index 7d656ad9e..7d656ad9e 100644
--- a/gfx/backpics/184.2bpp
+++ b/gfx/pics/184/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/184.lz b/gfx/pics/184/back.lz
index b66df2a71..b66df2a71 100644
--- a/gfx/backpics/lz/184.lz
+++ b/gfx/pics/184/back.lz
Binary files differ
diff --git a/gfx/pics/184/bitmask.asm b/gfx/pics/184/bitmask.asm
new file mode 100644
index 000000000..5e11e0966
--- /dev/null
+++ b/gfx/pics/184/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10000001
+ db %11000001
+ db %01100000
+ db %00110000
+ db %00011000
+ db %00000000
+ db %00000000
+; 1
+ db %00001100
+ db %00001110
+ db %00000110
+ db %11000011
+ db %11100001
+ db %00110000
+ db %00000000
+; 2
+ db %10001101
+ db %11001111
+ db %01100110
+ db %11110011
+ db %11111001
+ db %00110000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %10000001
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3587
diff --git a/gfx/pics/184/frames.asm b/gfx/pics/184/frames.asm
new file mode 100644
index 000000000..9019cecf7
--- /dev/null
+++ b/gfx/pics/184/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $01, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+.frame2
+ db $01 ; bitmask
+ db $01, $01, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44
+ db $45, $46, $47, $01, $01
+.frame3
+ db $02 ; bitmask
+ db $01, $01, $01, $31, $32, $3b, $3c, $3d, $33, $34, $3e, $3f
+ db $35, $36, $40, $41, $37, $38, $42, $43, $44, $39, $3a, $45
+ db $46, $47, $01, $01
+.frame4
+ db $03 ; bitmask
+ db $48, $49, $4a
+; 0xd8b6c
diff --git a/gfx/frontpics/184.2bpp b/gfx/pics/184/front.2bpp
index 300e3721f..300e3721f 100644
--- a/gfx/frontpics/184.2bpp
+++ b/gfx/pics/184/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/184.lz b/gfx/pics/184/front.lz
index d6f031164..d6f031164 100644
--- a/gfx/frontpics/lz/184.lz
+++ b/gfx/pics/184/front.lz
Binary files differ
diff --git a/gfx/anim/184.2bpp b/gfx/pics/184/tiles.2bpp
index 4d5ae7595..4d5ae7595 100644
--- a/gfx/anim/184.2bpp
+++ b/gfx/pics/184/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/185/anim0.asm b/gfx/pics/185/anim0.asm
new file mode 100644
index 000000000..8e974a074
--- /dev/null
+++ b/gfx/pics/185/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 10
+ frame 1, 10
+ frame 2, 10
+ frame 1, 10
+ dorepeat 1
+ endanim
+; 0xd1336
diff --git a/gfx/pics/185/anim1.asm b/gfx/pics/185/anim1.asm
new file mode 100644
index 000000000..e42e960f9
--- /dev/null
+++ b/gfx/pics/185/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 09
+ frame 3, 09
+ dorepeat 1
+ endanim
+; 0xd1fdc
diff --git a/gfx/backpics/185.2bpp b/gfx/pics/185/back.2bpp
index ad2f1d2e1..ad2f1d2e1 100644
--- a/gfx/backpics/185.2bpp
+++ b/gfx/pics/185/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/185.lz b/gfx/pics/185/back.lz
index c10731ea9..c10731ea9 100644
--- a/gfx/backpics/lz/185.lz
+++ b/gfx/pics/185/back.lz
Binary files differ
diff --git a/gfx/pics/185/bitmask.asm b/gfx/pics/185/bitmask.asm
new file mode 100644
index 000000000..9508b9cef
--- /dev/null
+++ b/gfx/pics/185/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00110000
+ db %11001110
+ db %11110011
+ db %00000000
+ db %00000000
+; 1
+ db %00110000
+ db %10001110
+ db %11100011
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd3596
diff --git a/gfx/pics/185/frames.asm b/gfx/pics/185/frames.asm
new file mode 100644
index 000000000..aeafdfd38
--- /dev/null
+++ b/gfx/pics/185/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $03, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f
+.frame2
+ db $01 ; bitmask
+ db $03, $24, $30, $31, $32, $33, $34, $35, $36, $37, $38
+.frame3
+ db $02 ; bitmask
+ db $28, $2c
+; 0xd8b8f
diff --git a/gfx/frontpics/185.2bpp b/gfx/pics/185/front.2bpp
index 4d0f66c6d..4d0f66c6d 100644
--- a/gfx/frontpics/185.2bpp
+++ b/gfx/pics/185/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/185.lz b/gfx/pics/185/front.lz
index 160f800cf..160f800cf 100644
--- a/gfx/frontpics/lz/185.lz
+++ b/gfx/pics/185/front.lz
Binary files differ
diff --git a/gfx/anim/185.2bpp b/gfx/pics/185/tiles.2bpp
index 9fc1f4e8a..9fc1f4e8a 100644
--- a/gfx/anim/185.2bpp
+++ b/gfx/pics/185/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/186/anim0.asm b/gfx/pics/186/anim0.asm
new file mode 100644
index 000000000..72347714f
--- /dev/null
+++ b/gfx/pics/186/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 04
+ frame 1, 08
+ setrepeat 3
+ frame 2, 07
+ frame 3, 07
+ dorepeat 3
+ frame 1, 08
+ endanim
+; 0xd1345
diff --git a/gfx/pics/186/anim1.asm b/gfx/pics/186/anim1.asm
new file mode 100644
index 000000000..8ec01df37
--- /dev/null
+++ b/gfx/pics/186/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd1fe5
diff --git a/gfx/backpics/186.2bpp b/gfx/pics/186/back.2bpp
index f50ea27af..f50ea27af 100644
--- a/gfx/backpics/186.2bpp
+++ b/gfx/pics/186/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/186.lz b/gfx/pics/186/back.lz
index 2c492fcaf..2c492fcaf 100644
--- a/gfx/backpics/lz/186.lz
+++ b/gfx/pics/186/back.lz
Binary files differ
diff --git a/gfx/pics/186/bitmask.asm b/gfx/pics/186/bitmask.asm
new file mode 100644
index 000000000..94e4243c1
--- /dev/null
+++ b/gfx/pics/186/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000100
+ db %00001110
+ db %10000111
+ db %10000011
+ db %11100001
+ db %00111000
+ db %00000000
+; 1
+ db %00001100
+ db %00001110
+ db %10000111
+ db %10000011
+ db %11100001
+ db %00111000
+ db %00000000
+; 2
+ db %00000000
+ db %10000000
+ db %11000000
+ db %01100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd35ab
diff --git a/gfx/pics/186/frames.asm b/gfx/pics/186/frames.asm
new file mode 100644
index 000000000..0d4b546a7
--- /dev/null
+++ b/gfx/pics/186/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $00, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $3f, $40, $31, $41, $33, $34, $42, $43, $37, $44, $45, $3a
+ db $3b, $3c, $3d, $3e, $00, $00, $00
+.frame3
+ db $01 ; bitmask
+ db $46, $47, $31, $41, $33, $34, $42, $43, $37, $44, $45, $3a
+ db $3b, $3c, $3d, $3e, $00, $00, $00
+.frame4
+ db $02 ; bitmask
+ db $48, $49, $4a, $4b, $4c
+; 0xd8bd8
diff --git a/gfx/frontpics/186.2bpp b/gfx/pics/186/front.2bpp
index b15143240..b15143240 100644
--- a/gfx/frontpics/186.2bpp
+++ b/gfx/pics/186/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/186.lz b/gfx/pics/186/front.lz
index 8890a7ed4..8890a7ed4 100644
--- a/gfx/frontpics/lz/186.lz
+++ b/gfx/pics/186/front.lz
Binary files differ
diff --git a/gfx/anim/186.2bpp b/gfx/pics/186/tiles.2bpp
index c1e9c8608..c1e9c8608 100644
--- a/gfx/anim/186.2bpp
+++ b/gfx/pics/186/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/187/anim0.asm b/gfx/pics/187/anim0.asm
new file mode 100644
index 000000000..6af60ab0b
--- /dev/null
+++ b/gfx/pics/187/anim0.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 1, 10
+ frame 2, 10
+ dorepeat 1
+ endanim
+; 0xd134e
diff --git a/gfx/pics/187/anim1.asm b/gfx/pics/187/anim1.asm
new file mode 100644
index 000000000..d0281ca1c
--- /dev/null
+++ b/gfx/pics/187/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 10
+ frame 2, 10
+ dorepeat 1
+ frame 2, 20
+ endanim
+; 0xd1ff0
diff --git a/gfx/backpics/187.2bpp b/gfx/pics/187/back.2bpp
index e72b80045..e72b80045 100644
--- a/gfx/backpics/187.2bpp
+++ b/gfx/pics/187/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/187.lz b/gfx/pics/187/back.lz
index c5439118e..c5439118e 100644
--- a/gfx/backpics/lz/187.lz
+++ b/gfx/pics/187/back.lz
Binary files differ
diff --git a/gfx/pics/187/bitmask.asm b/gfx/pics/187/bitmask.asm
new file mode 100644
index 000000000..54cedfdd8
--- /dev/null
+++ b/gfx/pics/187/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %01100011
+ db %10101001
+ db %00110011
+ db %00000000
+; 1
+ db %00000000
+ db %00100001
+ db %00000000
+ db %00000000
+; 0xd35b3
diff --git a/gfx/pics/187/frames.asm b/gfx/pics/187/frames.asm
new file mode 100644
index 000000000..6a0afff92
--- /dev/null
+++ b/gfx/pics/187/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24
+.frame2
+ db $01 ; bitmask
+ db $1d, $1f
+; 0xd8bec
diff --git a/gfx/frontpics/187.2bpp b/gfx/pics/187/front.2bpp
index 4a0a572bd..4a0a572bd 100644
--- a/gfx/frontpics/187.2bpp
+++ b/gfx/pics/187/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/187.lz b/gfx/pics/187/front.lz
index 4387e2886..4387e2886 100644
--- a/gfx/frontpics/lz/187.lz
+++ b/gfx/pics/187/front.lz
Binary files differ
diff --git a/gfx/anim/187.2bpp b/gfx/pics/187/tiles.2bpp
index 7d5426666..7d5426666 100644
--- a/gfx/anim/187.2bpp
+++ b/gfx/pics/187/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/188/anim0.asm b/gfx/pics/188/anim0.asm
new file mode 100644
index 000000000..2ab6422e5
--- /dev/null
+++ b/gfx/pics/188/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 04
+ frame 1, 10
+ frame 2, 14
+ frame 3, 14
+ endanim
+; 0xd1357
diff --git a/gfx/pics/188/anim1.asm b/gfx/pics/188/anim1.asm
new file mode 100644
index 000000000..d26d1717e
--- /dev/null
+++ b/gfx/pics/188/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd1ff9
diff --git a/gfx/backpics/188.2bpp b/gfx/pics/188/back.2bpp
index 4c108d5d1..4c108d5d1 100644
--- a/gfx/backpics/188.2bpp
+++ b/gfx/pics/188/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/188.lz b/gfx/pics/188/back.lz
index 8b197406c..8b197406c 100644
--- a/gfx/backpics/lz/188.lz
+++ b/gfx/pics/188/back.lz
Binary files differ
diff --git a/gfx/pics/188/bitmask.asm b/gfx/pics/188/bitmask.asm
new file mode 100644
index 000000000..9569dffdd
--- /dev/null
+++ b/gfx/pics/188/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %10000000
+ db %01110001
+ db %00011100
+ db %00000110
+ db %00000000
+; 1
+ db %10000000
+ db %11110001
+ db %00111100
+ db %00000110
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd35c2
diff --git a/gfx/pics/188/frames.asm b/gfx/pics/188/frames.asm
new file mode 100644
index 000000000..c552a3f81
--- /dev/null
+++ b/gfx/pics/188/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $24, $25, $26, $27, $28, $29, $2a, $00, $2b
+.frame2
+ db $01 ; bitmask
+ db $00, $24, $25, $26, $27, $2c, $28, $29, $2a, $2d, $00, $2b
+.frame3
+ db $01 ; bitmask
+ db $2e, $24, $2f, $30, $31, $2c, $32, $33, $34, $2d, $00, $2b
+.frame4
+ db $02 ; bitmask
+ db $35, $36
+; 0xd8c1c
diff --git a/gfx/frontpics/188.2bpp b/gfx/pics/188/front.2bpp
index da4edac88..da4edac88 100644
--- a/gfx/frontpics/188.2bpp
+++ b/gfx/pics/188/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/188.lz b/gfx/pics/188/front.lz
index f48561c76..f48561c76 100644
--- a/gfx/frontpics/lz/188.lz
+++ b/gfx/pics/188/front.lz
Binary files differ
diff --git a/gfx/anim/188.2bpp b/gfx/pics/188/tiles.2bpp
index ef1a1b50e..ef1a1b50e 100644
--- a/gfx/anim/188.2bpp
+++ b/gfx/pics/188/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/189/anim0.asm b/gfx/pics/189/anim0.asm
new file mode 100644
index 000000000..c4161560e
--- /dev/null
+++ b/gfx/pics/189/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 09
+ frame 2, 09
+ frame 3, 09
+ endanim
+; 0xd135e
diff --git a/gfx/pics/189/anim1.asm b/gfx/pics/189/anim1.asm
new file mode 100644
index 000000000..5013b953f
--- /dev/null
+++ b/gfx/pics/189/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd2002
diff --git a/gfx/backpics/189.2bpp b/gfx/pics/189/back.2bpp
index f3088baeb..f3088baeb 100644
--- a/gfx/backpics/189.2bpp
+++ b/gfx/pics/189/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/189.lz b/gfx/pics/189/back.lz
index 57ae8b890..57ae8b890 100644
--- a/gfx/backpics/lz/189.lz
+++ b/gfx/pics/189/back.lz
Binary files differ
diff --git a/gfx/pics/189/bitmask.asm b/gfx/pics/189/bitmask.asm
new file mode 100644
index 000000000..9d54f0fa4
--- /dev/null
+++ b/gfx/pics/189/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00011100
+ db %11011110
+ db %01101000
+ db %00011110
+ db %11011011
+ db %11100001
+ db %00000000
+; 1
+ db %00001100
+ db %00000110
+ db %00000000
+ db %00000010
+ db %01000000
+ db %01100000
+ db %00000000
+; 2
+ db %00000100
+ db %00010010
+ db %00001000
+ db %00001110
+ db %01000010
+ db %00100000
+ db %00000000
+; 3
+ db %00000000
+ db %00010000
+ db %00001000
+ db %00001100
+ db %00000010
+ db %00000000
+ db %00000000
+; 0xd35de
diff --git a/gfx/pics/189/frames.asm b/gfx/pics/189/frames.asm
new file mode 100644
index 000000000..0a46d384c
--- /dev/null
+++ b/gfx/pics/189/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $00, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $00, $46
+ db $47, $00
+.frame2
+ db $01 ; bitmask
+ db $48, $49, $4a, $4b, $3c, $4c, $4d, $4e
+.frame3
+ db $02 ; bitmask
+ db $4f, $50, $37, $39, $3c, $3d, $3e, $41, $51, $52
+.frame4
+ db $03 ; bitmask
+ db $37, $39, $3d, $3e, $41
+; 0xd8c59
diff --git a/gfx/frontpics/189.2bpp b/gfx/pics/189/front.2bpp
index 882b44e4d..882b44e4d 100644
--- a/gfx/frontpics/189.2bpp
+++ b/gfx/pics/189/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/189.lz b/gfx/pics/189/front.lz
index c3570ed09..c3570ed09 100644
--- a/gfx/frontpics/lz/189.lz
+++ b/gfx/pics/189/front.lz
Binary files differ
diff --git a/gfx/anim/189.2bpp b/gfx/pics/189/tiles.2bpp
index 912b8a77f..912b8a77f 100644
--- a/gfx/anim/189.2bpp
+++ b/gfx/pics/189/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/190/anim0.asm b/gfx/pics/190/anim0.asm
new file mode 100644
index 000000000..99556d958
--- /dev/null
+++ b/gfx/pics/190/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 24
+ setrepeat 2
+ frame 0, 12
+ frame 2, 12
+ dorepeat 2
+ endanim
+; 0xd1369
diff --git a/gfx/pics/190/anim1.asm b/gfx/pics/190/anim1.asm
new file mode 100644
index 000000000..9685b665d
--- /dev/null
+++ b/gfx/pics/190/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd200b
diff --git a/gfx/backpics/190.2bpp b/gfx/pics/190/back.2bpp
index e92fbc6bb..e92fbc6bb 100644
--- a/gfx/backpics/190.2bpp
+++ b/gfx/pics/190/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/190.lz b/gfx/pics/190/back.lz
index d6d9fdbc1..d6d9fdbc1 100644
--- a/gfx/backpics/lz/190.lz
+++ b/gfx/pics/190/back.lz
Binary files differ
diff --git a/gfx/pics/190/bitmask.asm b/gfx/pics/190/bitmask.asm
new file mode 100644
index 000000000..ca853fce0
--- /dev/null
+++ b/gfx/pics/190/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10000000
+ db %00010001
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %11001110
+ db %00000001
+; 2
+ db %10000100
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd35ea
diff --git a/gfx/pics/190/frames.asm b/gfx/pics/190/frames.asm
new file mode 100644
index 000000000..d19527468
--- /dev/null
+++ b/gfx/pics/190/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f, $20, $21
+.frame3
+ db $02 ; bitmask
+ db $22, $23, $24
+; 0xd8c6e
diff --git a/gfx/frontpics/190.2bpp b/gfx/pics/190/front.2bpp
index da1d983de..da1d983de 100644
--- a/gfx/frontpics/190.2bpp
+++ b/gfx/pics/190/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/190.lz b/gfx/pics/190/front.lz
index 58800e5e4..58800e5e4 100644
--- a/gfx/frontpics/lz/190.lz
+++ b/gfx/pics/190/front.lz
Binary files differ
diff --git a/gfx/anim/190.2bpp b/gfx/pics/190/tiles.2bpp
index c1c9f5f71..c1c9f5f71 100644
--- a/gfx/anim/190.2bpp
+++ b/gfx/pics/190/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/191/anim0.asm b/gfx/pics/191/anim0.asm
new file mode 100644
index 000000000..c282b1fb2
--- /dev/null
+++ b/gfx/pics/191/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 24
+ setrepeat 3
+ frame 0, 04
+ frame 2, 04
+ dorepeat 2
+ endanim
+; 0xd1374
diff --git a/gfx/pics/191/anim1.asm b/gfx/pics/191/anim1.asm
new file mode 100644
index 000000000..f92d267a1
--- /dev/null
+++ b/gfx/pics/191/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd2014
diff --git a/gfx/backpics/191.2bpp b/gfx/pics/191/back.2bpp
index ac07040b5..ac07040b5 100644
--- a/gfx/backpics/191.2bpp
+++ b/gfx/pics/191/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/191.lz b/gfx/pics/191/back.lz
index a9ba0f738..a9ba0f738 100644
--- a/gfx/backpics/lz/191.lz
+++ b/gfx/pics/191/back.lz
Binary files differ
diff --git a/gfx/pics/191/bitmask.asm b/gfx/pics/191/bitmask.asm
new file mode 100644
index 000000000..058b53861
--- /dev/null
+++ b/gfx/pics/191/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %01100000
+ db %10001100
+ db %01110001
+ db %00000000
+; 2
+ db %10000000
+ db %00110000
+ db %00000000
+ db %00000000
+; 0xd35f6
diff --git a/gfx/pics/191/frames.asm b/gfx/pics/191/frames.asm
new file mode 100644
index 000000000..ddbd59bf3
--- /dev/null
+++ b/gfx/pics/191/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $01 ; bitmask
+ db $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $00
+.frame3
+ db $02 ; bitmask
+ db $22, $23, $24
+; 0xd8c84
diff --git a/gfx/frontpics/191.2bpp b/gfx/pics/191/front.2bpp
index 00396d8db..00396d8db 100644
--- a/gfx/frontpics/191.2bpp
+++ b/gfx/pics/191/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/191.lz b/gfx/pics/191/front.lz
index 77a21af73..77a21af73 100644
--- a/gfx/frontpics/lz/191.lz
+++ b/gfx/pics/191/front.lz
Binary files differ
diff --git a/gfx/anim/191.2bpp b/gfx/pics/191/tiles.2bpp
index 4abf6acac..4abf6acac 100644
--- a/gfx/anim/191.2bpp
+++ b/gfx/pics/191/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/192/anim0.asm b/gfx/pics/192/anim0.asm
new file mode 100644
index 000000000..aad8ddadd
--- /dev/null
+++ b/gfx/pics/192/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 12
+ frame 2, 06
+ frame 3, 16
+ endanim
+; 0xd137b
diff --git a/gfx/pics/192/anim1.asm b/gfx/pics/192/anim1.asm
new file mode 100644
index 000000000..e78d5449e
--- /dev/null
+++ b/gfx/pics/192/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd201d
diff --git a/gfx/backpics/192.2bpp b/gfx/pics/192/back.2bpp
index 83897f9fe..83897f9fe 100644
--- a/gfx/backpics/192.2bpp
+++ b/gfx/pics/192/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/192.lz b/gfx/pics/192/back.lz
index 3fb3432ba..3fb3432ba 100644
--- a/gfx/backpics/lz/192.lz
+++ b/gfx/pics/192/back.lz
Binary files differ
diff --git a/gfx/pics/192/bitmask.asm b/gfx/pics/192/bitmask.asm
new file mode 100644
index 000000000..f0b71e34a
--- /dev/null
+++ b/gfx/pics/192/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11000110
+ db %10010011
+ db %00100100
+ db %10001111
+ db %00000001
+; 1
+ db %11000000
+ db %11010011
+ db %00110100
+ db %00001111
+ db %00000000
+; 2
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00100000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd360a
diff --git a/gfx/pics/192/frames.asm b/gfx/pics/192/frames.asm
new file mode 100644
index 000000000..3cb42d83e
--- /dev/null
+++ b/gfx/pics/192/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+ db $2e, $2f, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $24, $30, $31, $27, $28, $32, $29, $2a, $33, $2b, $2c, $34
+ db $35, $2f
+.frame3
+ db $02 ; bitmask
+ db $32, $33
+.frame4
+ db $03 ; bitmask
+ db $36, $37
+; 0xd8cb2
diff --git a/gfx/frontpics/192.2bpp b/gfx/pics/192/front.2bpp
index 67f32c179..67f32c179 100644
--- a/gfx/frontpics/192.2bpp
+++ b/gfx/pics/192/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/192.lz b/gfx/pics/192/front.lz
index 1026c3719..1026c3719 100644
--- a/gfx/frontpics/lz/192.lz
+++ b/gfx/pics/192/front.lz
Binary files differ
diff --git a/gfx/anim/192.2bpp b/gfx/pics/192/tiles.2bpp
index 3de8db8ee..3de8db8ee 100644
--- a/gfx/anim/192.2bpp
+++ b/gfx/pics/192/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/193/anim0.asm b/gfx/pics/193/anim0.asm
new file mode 100644
index 000000000..4f1aaa929
--- /dev/null
+++ b/gfx/pics/193/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 10
+ frame 0, 05
+ frame 3, 05
+ setrepeat 5
+ frame 0, 03
+ frame 2, 03
+ dorepeat 4
+ endanim
+; 0xd138a
diff --git a/gfx/pics/193/anim1.asm b/gfx/pics/193/anim1.asm
new file mode 100644
index 000000000..75464b3f1
--- /dev/null
+++ b/gfx/pics/193/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 04
+ frame 3, 04
+ dorepeat 1
+ endanim
+; 0xd2026
diff --git a/gfx/backpics/193.2bpp b/gfx/pics/193/back.2bpp
index 639c0121f..639c0121f 100644
--- a/gfx/backpics/193.2bpp
+++ b/gfx/pics/193/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/193.lz b/gfx/pics/193/back.lz
index 47105f12f..47105f12f 100644
--- a/gfx/backpics/lz/193.lz
+++ b/gfx/pics/193/back.lz
Binary files differ
diff --git a/gfx/pics/193/bitmask.asm b/gfx/pics/193/bitmask.asm
new file mode 100644
index 000000000..a2bfcf8ce
--- /dev/null
+++ b/gfx/pics/193/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %11001111
+ db %11100011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11000001
+ db %00000000
+ db %00001100
+ db %11001111
+ db %00000001
+; 2
+ db %00000100
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3619
diff --git a/gfx/pics/193/frames.asm b/gfx/pics/193/frames.asm
new file mode 100644
index 000000000..7512a5e8f
--- /dev/null
+++ b/gfx/pics/193/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+.frame2
+ db $01 ; bitmask
+ db $2f, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a
+.frame3
+ db $02 ; bitmask
+ db $3b, $3c
+; 0xd8cd4
diff --git a/gfx/frontpics/193.2bpp b/gfx/pics/193/front.2bpp
index 1c7dc44b4..1c7dc44b4 100644
--- a/gfx/frontpics/193.2bpp
+++ b/gfx/pics/193/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/193.lz b/gfx/pics/193/front.lz
index 1987afdc9..1987afdc9 100644
--- a/gfx/frontpics/lz/193.lz
+++ b/gfx/pics/193/front.lz
Binary files differ
diff --git a/gfx/anim/193.2bpp b/gfx/pics/193/tiles.2bpp
index f9773b2f1..f9773b2f1 100644
--- a/gfx/anim/193.2bpp
+++ b/gfx/pics/193/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/194/anim0.asm b/gfx/pics/194/anim0.asm
new file mode 100644
index 000000000..2c9becf9e
--- /dev/null
+++ b/gfx/pics/194/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 1, 08
+ frame 2, 08
+ dorepeat 1
+ frame 0, 08
+ frame 4, 08
+ endanim
+; 0xd1397
diff --git a/gfx/pics/194/anim1.asm b/gfx/pics/194/anim1.asm
new file mode 100644
index 000000000..3f152d035
--- /dev/null
+++ b/gfx/pics/194/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd202f
diff --git a/gfx/backpics/194.2bpp b/gfx/pics/194/back.2bpp
index 52362b9af..52362b9af 100644
--- a/gfx/backpics/194.2bpp
+++ b/gfx/pics/194/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/194.lz b/gfx/pics/194/back.lz
index 973037f02..973037f02 100644
--- a/gfx/backpics/lz/194.lz
+++ b/gfx/pics/194/back.lz
Binary files differ
diff --git a/gfx/pics/194/bitmask.asm b/gfx/pics/194/bitmask.asm
new file mode 100644
index 000000000..15731d45a
--- /dev/null
+++ b/gfx/pics/194/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %10000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 1
+ db %10000110
+ db %00010000
+ db %01110001
+ db %00000000
+; 2
+ db %01000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 3
+ db %00000110
+ db %00000000
+ db %01110001
+ db %00000000
+; 0xd3629
diff --git a/gfx/pics/194/frames.asm b/gfx/pics/194/frames.asm
new file mode 100644
index 000000000..fd7dcc8bf
--- /dev/null
+++ b/gfx/pics/194/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $01 ; bitmask
+ db $1b, $1c, $19, $1a, $1d, $1e, $1f, $00
+.frame3
+ db $02 ; bitmask
+ db $20, $21
+.frame4
+ db $03 ; bitmask
+ db $1b, $1c, $1d, $1e, $1f, $00
+; 0xd8cf2
diff --git a/gfx/frontpics/194.2bpp b/gfx/pics/194/front.2bpp
index f6b25a521..f6b25a521 100644
--- a/gfx/frontpics/194.2bpp
+++ b/gfx/pics/194/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/194.lz b/gfx/pics/194/front.lz
index 3d5d53c1b..3d5d53c1b 100644
--- a/gfx/frontpics/lz/194.lz
+++ b/gfx/pics/194/front.lz
Binary files differ
diff --git a/gfx/anim/194.2bpp b/gfx/pics/194/tiles.2bpp
index c53e7fe68..c53e7fe68 100644
--- a/gfx/anim/194.2bpp
+++ b/gfx/pics/194/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/195/anim0.asm b/gfx/pics/195/anim0.asm
new file mode 100644
index 000000000..852780069
--- /dev/null
+++ b/gfx/pics/195/anim0.asm
@@ -0,0 +1,6 @@
+ frame 1, 09
+ frame 2, 12
+ frame 3, 09
+ frame 4, 09
+ endanim
+; 0xd13a0
diff --git a/gfx/pics/195/anim1.asm b/gfx/pics/195/anim1.asm
new file mode 100644
index 000000000..f5c2ed31b
--- /dev/null
+++ b/gfx/pics/195/anim1.asm
@@ -0,0 +1,4 @@
+ frame 2, 35
+ frame 1, 08
+ endanim
+; 0xd2034
diff --git a/gfx/backpics/195.2bpp b/gfx/pics/195/back.2bpp
index 6b53330a7..6b53330a7 100644
--- a/gfx/backpics/195.2bpp
+++ b/gfx/pics/195/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/195.lz b/gfx/pics/195/back.lz
index 543ce394f..543ce394f 100644
--- a/gfx/backpics/lz/195.lz
+++ b/gfx/pics/195/back.lz
Binary files differ
diff --git a/gfx/pics/195/bitmask.asm b/gfx/pics/195/bitmask.asm
new file mode 100644
index 000000000..afd00bc28
--- /dev/null
+++ b/gfx/pics/195/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %01100001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11000011
+ db %01110001
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %11001111
+ db %11110011
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00001100
+ db %11100011
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd363d
diff --git a/gfx/pics/195/frames.asm b/gfx/pics/195/frames.asm
new file mode 100644
index 000000000..aa0fada5a
--- /dev/null
+++ b/gfx/pics/195/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26
+.frame2
+ db $01 ; bitmask
+ db $27, $28, $29, $2a, $24, $2b, $2c, $26
+.frame3
+ db $02 ; bitmask
+ db $27, $28, $2d, $2e, $29, $2a, $2f, $30, $2b, $2c, $31, $32
+.frame4
+ db $03 ; bitmask
+ db $33, $34, $35, $36, $25, $37, $38
+; 0xd8d1c
diff --git a/gfx/frontpics/195.2bpp b/gfx/pics/195/front.2bpp
index 361569789..361569789 100644
--- a/gfx/frontpics/195.2bpp
+++ b/gfx/pics/195/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/195.lz b/gfx/pics/195/front.lz
index d1f42f064..d1f42f064 100644
--- a/gfx/frontpics/lz/195.lz
+++ b/gfx/pics/195/front.lz
Binary files differ
diff --git a/gfx/anim/195.2bpp b/gfx/pics/195/tiles.2bpp
index 146c85033..146c85033 100644
--- a/gfx/anim/195.2bpp
+++ b/gfx/pics/195/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/196/anim0.asm b/gfx/pics/196/anim0.asm
new file mode 100644
index 000000000..8a54a9b97
--- /dev/null
+++ b/gfx/pics/196/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 08
+ frame 1, 26
+ setrepeat 2
+ frame 0, 07
+ frame 2, 07
+ frame 3, 07
+ dorepeat 3
+ endanim
+; 0xd13af
diff --git a/gfx/pics/196/anim1.asm b/gfx/pics/196/anim1.asm
new file mode 100644
index 000000000..33c88d1b4
--- /dev/null
+++ b/gfx/pics/196/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd203d
diff --git a/gfx/backpics/196.2bpp b/gfx/pics/196/back.2bpp
index 4428ac785..4428ac785 100644
--- a/gfx/backpics/196.2bpp
+++ b/gfx/pics/196/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/196.lz b/gfx/pics/196/back.lz
index 59a69eae1..59a69eae1 100644
--- a/gfx/backpics/lz/196.lz
+++ b/gfx/pics/196/back.lz
Binary files differ
diff --git a/gfx/pics/196/bitmask.asm b/gfx/pics/196/bitmask.asm
new file mode 100644
index 000000000..48d53b916
--- /dev/null
+++ b/gfx/pics/196/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000100
+ db %01000011
+ db %00110000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %10001110
+ db %00000011
+; 2
+ db %00000000
+ db %00000000
+ db %00000000
+ db %10001100
+ db %00000011
+; 3
+ db %00000000
+ db %01100001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3651
diff --git a/gfx/pics/196/frames.asm b/gfx/pics/196/frames.asm
new file mode 100644
index 000000000..4fdf41370
--- /dev/null
+++ b/gfx/pics/196/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29
+.frame2
+ db $01 ; bitmask
+ db $2a, $2b, $2c, $2d, $2e, $2f
+.frame3
+ db $02 ; bitmask
+ db $30, $31, $03, $32, $33
+.frame4
+ db $03 ; bitmask
+ db $34, $35, $36
+; 0xd8d3c
diff --git a/gfx/frontpics/196.2bpp b/gfx/pics/196/front.2bpp
index 28d5c409e..28d5c409e 100644
--- a/gfx/frontpics/196.2bpp
+++ b/gfx/pics/196/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/196.lz b/gfx/pics/196/front.lz
index b7d983e9f..b7d983e9f 100644
--- a/gfx/frontpics/lz/196.lz
+++ b/gfx/pics/196/front.lz
Binary files differ
diff --git a/gfx/anim/196.2bpp b/gfx/pics/196/tiles.2bpp
index f4acd1e08..f4acd1e08 100644
--- a/gfx/anim/196.2bpp
+++ b/gfx/pics/196/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/197/anim0.asm b/gfx/pics/197/anim0.asm
new file mode 100644
index 000000000..541539979
--- /dev/null
+++ b/gfx/pics/197/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 07
+ frame 2, 30
+ setrepeat 2
+ frame 2, 08
+ frame 3, 08
+ dorepeat 3
+ frame 2, 30
+ endanim
+; 0xd13be
diff --git a/gfx/pics/197/anim1.asm b/gfx/pics/197/anim1.asm
new file mode 100644
index 000000000..adb0158e2
--- /dev/null
+++ b/gfx/pics/197/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 04
+ frame 4, 04
+ dorepeat 1
+ endanim
+; 0xd2046
diff --git a/gfx/backpics/197.2bpp b/gfx/pics/197/back.2bpp
index a0be59d4e..a0be59d4e 100644
--- a/gfx/backpics/197.2bpp
+++ b/gfx/pics/197/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/197.lz b/gfx/pics/197/back.lz
index cf39af2c6..cf39af2c6 100644
--- a/gfx/backpics/lz/197.lz
+++ b/gfx/pics/197/back.lz
Binary files differ
diff --git a/gfx/pics/197/bitmask.asm b/gfx/pics/197/bitmask.asm
new file mode 100644
index 000000000..91184a50e
--- /dev/null
+++ b/gfx/pics/197/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000000
+ db %11011111
+ db %11001111
+ db %00000011
+; 1
+ db %00000000
+ db %01000000
+ db %10011110
+ db %11001111
+ db %00000011
+; 2
+ db %10000111
+ db %00000001
+ db %10011110
+ db %11001111
+ db %00000011
+; 3
+ db %10000111
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3665
diff --git a/gfx/pics/197/frames.asm b/gfx/pics/197/frames.asm
new file mode 100644
index 000000000..0696ed38a
--- /dev/null
+++ b/gfx/pics/197/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $06, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31
+.frame2
+ db $01 ; bitmask
+ db $32, $33, $25, $26, $34, $35, $2a, $2b, $36, $37, $2e, $2f
+ db $38, $39
+.frame3
+ db $02 ; bitmask
+ db $3a, $3b, $3c, $06, $3d, $33, $25, $26, $27, $35, $2a, $2b
+ db $36, $37, $2e, $2f, $38, $39
+.frame4
+ db $03 ; bitmask
+ db $3a, $3b, $3c, $06, $3d
+; 0xd8d7c
diff --git a/gfx/frontpics/197.2bpp b/gfx/pics/197/front.2bpp
index 04ccb5159..04ccb5159 100644
--- a/gfx/frontpics/197.2bpp
+++ b/gfx/pics/197/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/197.lz b/gfx/pics/197/front.lz
index 64a338138..64a338138 100644
--- a/gfx/frontpics/lz/197.lz
+++ b/gfx/pics/197/front.lz
Binary files differ
diff --git a/gfx/anim/197.2bpp b/gfx/pics/197/tiles.2bpp
index 6dfd81e1a..6dfd81e1a 100644
--- a/gfx/anim/197.2bpp
+++ b/gfx/pics/197/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/198/anim0.asm b/gfx/pics/198/anim0.asm
new file mode 100644
index 000000000..8f0ca6a72
--- /dev/null
+++ b/gfx/pics/198/anim0.asm
@@ -0,0 +1,10 @@
+ frame 2, 10
+ setrepeat 2
+ frame 1, 06
+ frame 2, 06
+ dorepeat 2
+ frame 1, 07
+ frame 0, 07
+ frame 1, 07
+ endanim
+; 0xd13cf
diff --git a/gfx/pics/198/anim1.asm b/gfx/pics/198/anim1.asm
new file mode 100644
index 000000000..85e2f9c56
--- /dev/null
+++ b/gfx/pics/198/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd204f
diff --git a/gfx/backpics/198.2bpp b/gfx/pics/198/back.2bpp
index f7245e38a..f7245e38a 100644
--- a/gfx/backpics/198.2bpp
+++ b/gfx/pics/198/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/198.lz b/gfx/pics/198/back.lz
index b99287081..b99287081 100644
--- a/gfx/backpics/lz/198.lz
+++ b/gfx/pics/198/back.lz
Binary files differ
diff --git a/gfx/pics/198/bitmask.asm b/gfx/pics/198/bitmask.asm
new file mode 100644
index 000000000..064e41955
--- /dev/null
+++ b/gfx/pics/198/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00011110
+ db %00000111
+ db %00110000
+ db %11011111
+ db %00000011
+; 1
+ db %00000000
+ db %01000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3674
diff --git a/gfx/pics/198/frames.asm b/gfx/pics/198/frames.asm
new file mode 100644
index 000000000..e7efcf1d5
--- /dev/null
+++ b/gfx/pics/198/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $04, $04, $2d
+ db $2e, $2f, $04, $04, $04, $30
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33
+.frame3
+ db $02 ; bitmask
+ db $34, $35
+; 0xd8d9c
diff --git a/gfx/frontpics/198.2bpp b/gfx/pics/198/front.2bpp
index 1fbf410b0..1fbf410b0 100644
--- a/gfx/frontpics/198.2bpp
+++ b/gfx/pics/198/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/198.lz b/gfx/pics/198/front.lz
index e7ae99387..e7ae99387 100644
--- a/gfx/frontpics/lz/198.lz
+++ b/gfx/pics/198/front.lz
Binary files differ
diff --git a/gfx/anim/198.2bpp b/gfx/pics/198/tiles.2bpp
index 2b9cee375..2b9cee375 100644
--- a/gfx/anim/198.2bpp
+++ b/gfx/pics/198/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/199/anim0.asm b/gfx/pics/199/anim0.asm
new file mode 100644
index 000000000..d7ab700bd
--- /dev/null
+++ b/gfx/pics/199/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 07
+ frame 2, 25
+ frame 3, 35
+ frame 1, 07
+ frame 2, 25
+ setrepeat 2
+ frame 0, 06
+ frame 1, 06
+ dorepeat 6
+ endanim
+; 0xd13e2
diff --git a/gfx/pics/199/anim1.asm b/gfx/pics/199/anim1.asm
new file mode 100644
index 000000000..36fd7cd7a
--- /dev/null
+++ b/gfx/pics/199/anim1.asm
@@ -0,0 +1,4 @@
+ frame 1, 07
+ frame 2, 50
+ endanim
+; 0xd2054
diff --git a/gfx/backpics/199.2bpp b/gfx/pics/199/back.2bpp
index c87cd0376..c87cd0376 100644
--- a/gfx/backpics/199.2bpp
+++ b/gfx/pics/199/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/199.lz b/gfx/pics/199/back.lz
index e6342e434..e6342e434 100644
--- a/gfx/backpics/lz/199.lz
+++ b/gfx/pics/199/back.lz
Binary files differ
diff --git a/gfx/pics/199/bitmask.asm b/gfx/pics/199/bitmask.asm
new file mode 100644
index 000000000..cdf11aeb2
--- /dev/null
+++ b/gfx/pics/199/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00000000
+ db %10000001
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %10000001
+ db %11000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %11000111
+ db %11100111
+ db %11110011
+ db %01111001
+ db %00011000
+ db %00000000
+; 0xd3689
diff --git a/gfx/pics/199/frames.asm b/gfx/pics/199/frames.asm
new file mode 100644
index 000000000..ea0548561
--- /dev/null
+++ b/gfx/pics/199/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33
+.frame2
+ db $01 ; bitmask
+ db $34, $35, $36, $37
+.frame3
+ db $02 ; bitmask
+ db $38, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43
+ db $44, $45, $46, $47, $48, $49, $4a, $00, $4b, $4c, $4d, $00
+ db $00
+; 0xd8dc5
diff --git a/gfx/frontpics/199.2bpp b/gfx/pics/199/front.2bpp
index dd4c491dc..dd4c491dc 100644
--- a/gfx/frontpics/199.2bpp
+++ b/gfx/pics/199/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/199.lz b/gfx/pics/199/front.lz
index 2f9bd1654..2f9bd1654 100644
--- a/gfx/frontpics/lz/199.lz
+++ b/gfx/pics/199/front.lz
Binary files differ
diff --git a/gfx/anim/199.2bpp b/gfx/pics/199/tiles.2bpp
index c3fcddb72..c3fcddb72 100644
--- a/gfx/anim/199.2bpp
+++ b/gfx/pics/199/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/200/anim0.asm b/gfx/pics/200/anim0.asm
new file mode 100644
index 000000000..d833c96fb
--- /dev/null
+++ b/gfx/pics/200/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 18
+ frame 2, 13
+ frame 3, 13
+ endanim
+; 0xd13e9
diff --git a/gfx/pics/200/anim1.asm b/gfx/pics/200/anim1.asm
new file mode 100644
index 000000000..3f0ee9517
--- /dev/null
+++ b/gfx/pics/200/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 4, 08
+ frame 0, 08
+ dorepeat 1
+ endanim
+; 0xd205d
diff --git a/gfx/backpics/200.2bpp b/gfx/pics/200/back.2bpp
index 6d690f3fd..6d690f3fd 100644
--- a/gfx/backpics/200.2bpp
+++ b/gfx/pics/200/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/200.lz b/gfx/pics/200/back.lz
index 5cf96e821..5cf96e821 100644
--- a/gfx/backpics/lz/200.lz
+++ b/gfx/pics/200/back.lz
Binary files differ
diff --git a/gfx/pics/200/bitmask.asm b/gfx/pics/200/bitmask.asm
new file mode 100644
index 000000000..4f05efbf4
--- /dev/null
+++ b/gfx/pics/200/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %00000000
+ db %00000000
+ db %01100000
+ db %00011000
+ db %00000110
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00010000
+ db %00000000
+; 0xd3693
diff --git a/gfx/pics/200/frames.asm b/gfx/pics/200/frames.asm
new file mode 100644
index 000000000..f5507980b
--- /dev/null
+++ b/gfx/pics/200/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29
+.frame2
+ db $00 ; bitmask
+ db $2a, $2b, $2c, $2d, $2e, $2f
+.frame3
+ db $01 ; bitmask
+ db $2d
+.frame4
+ db $00 ; bitmask
+ db $30, $31, $32, $33, $34, $35
+; 0xd8de4
diff --git a/gfx/frontpics/200.2bpp b/gfx/pics/200/front.2bpp
index 2ca65419c..2ca65419c 100644
--- a/gfx/frontpics/200.2bpp
+++ b/gfx/pics/200/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/200.lz b/gfx/pics/200/front.lz
index 76f5c6919..76f5c6919 100644
--- a/gfx/frontpics/lz/200.lz
+++ b/gfx/pics/200/front.lz
Binary files differ
diff --git a/gfx/anim/200.2bpp b/gfx/pics/200/tiles.2bpp
index 3c0fdc022..3c0fdc022 100644
--- a/gfx/anim/200.2bpp
+++ b/gfx/pics/200/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201/anim0.asm b/gfx/pics/201/anim0.asm
new file mode 100644
index 000000000..510d2751c
--- /dev/null
+++ b/gfx/pics/201/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 05
+ frame 2, 05
+ frame 3, 05
+ frame 4, 05
+ frame 5, 05
+ frame 6, 05
+ frame 7, 05
+ frame 8, 05
+ frame 9, 05
+ frame 10, 05
+ endanim
+; 0xd13fe
diff --git a/gfx/pics/201/anim1.asm b/gfx/pics/201/anim1.asm
new file mode 100644
index 000000000..3d0f65488
--- /dev/null
+++ b/gfx/pics/201/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 11, 05
+ dorepeat 1
+ endanim
+; 0xd2066
diff --git a/gfx/pics/201/bitmask.asm b/gfx/pics/201/bitmask.asm
new file mode 100644
index 000000000..f0ae4e5b2
--- /dev/null
+++ b/gfx/pics/201/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %00100000
+ db %10101100
+ db %01100111
+ db %00000000
+; 1
+ db %10100000
+ db %10111100
+ db %01100111
+ db %00000000
+; 2
+ db %10000000
+ db %00110000
+ db %00000100
+ db %00000000
+; 3
+ db %10100000
+ db %10111100
+ db %00100101
+ db %00000000
+; 4
+ db %00100000
+ db %10101100
+ db %00100101
+ db %00000000
+; 5
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd36ab
diff --git a/gfx/pics/201/frames.asm b/gfx/pics/201/frames.asm
new file mode 100644
index 000000000..ca996e90a
--- /dev/null
+++ b/gfx/pics/201/frames.asm
@@ -0,0 +1,45 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+ dw .frame9
+ dw .frame10
+ dw .frame11
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $00, $1d, $1e, $1f, $00, $20
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $1b, $21, $00, $1d, $1e, $22, $00, $20
+.frame3
+ db $01 ; bitmask
+ db $23, $24, $25, $26, $27, $1c, $00, $28, $29, $1f, $2a, $2b
+.frame4
+ db $01 ; bitmask
+ db $23, $24, $25, $26, $27, $21, $00, $28, $29, $22, $2a, $2b
+.frame5
+ db $02 ; bitmask
+ db $24, $27, $1c, $1f
+.frame6
+ db $02 ; bitmask
+ db $24, $27, $21, $22
+.frame7
+ db $03 ; bitmask
+ db $19, $24, $1a, $1b, $27, $1c, $00, $2c, $1f, $2d
+.frame8
+ db $03 ; bitmask
+ db $19, $24, $1a, $1b, $27, $21, $00, $2c, $22, $2d
+.frame9
+ db $04 ; bitmask
+ db $23, $25, $2e, $1c, $00, $2f, $1f, $2d
+.frame10
+ db $04 ; bitmask
+ db $23, $25, $2e, $21, $00, $2f, $22, $2d
+.frame11
+ db $05 ; bitmask
+ db $27
+; 0xd8e5e
diff --git a/gfx/pics/201a/anim0.asm b/gfx/pics/201a/anim0.asm
new file mode 100644
index 000000000..7243ed0fb
--- /dev/null
+++ b/gfx/pics/201a/anim0.asm
@@ -0,0 +1,13 @@
+ frame 0, 08
+ frame 1, 08
+ frame 2, 24
+ frame 1, 08
+ frame 0, 08
+ setrepeat 2
+ frame 3, 07
+ frame 0, 07
+ frame 4, 07
+ frame 0, 07
+ dorepeat 6
+ endanim
+; 0xd2274
diff --git a/gfx/pics/201a/anim1.asm b/gfx/pics/201a/anim1.asm
new file mode 100644
index 000000000..d995ba44d
--- /dev/null
+++ b/gfx/pics/201a/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 5, 06
+ dorepeat 1
+ endanim
+; 0xd240e
diff --git a/gfx/backpics/201a.2bpp b/gfx/pics/201a/back.2bpp
index 8e24fb370..8e24fb370 100644
--- a/gfx/backpics/201a.2bpp
+++ b/gfx/pics/201a/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201a.lz b/gfx/pics/201a/back.lz
index 08833e3e2..08833e3e2 100644
--- a/gfx/backpics/lz/201a.lz
+++ b/gfx/pics/201a/back.lz
Binary files differ
diff --git a/gfx/pics/201a/bitmask.asm b/gfx/pics/201a/bitmask.asm
new file mode 100644
index 000000000..892ca25d3
--- /dev/null
+++ b/gfx/pics/201a/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00001100
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %00110000
+ db %00000010
+ db %00000000
+; 0xd3b13
diff --git a/gfx/pics/201a/frames.asm b/gfx/pics/201a/frames.asm
new file mode 100644
index 000000000..a603a605b
--- /dev/null
+++ b/gfx/pics/201a/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $00 ; bitmask
+ db $1a
+.frame3
+ db $01 ; bitmask
+ db $1b, $1c
+.frame4
+ db $01 ; bitmask
+ db $1d, $1e
+.frame5
+ db $02 ; bitmask
+ db $1f, $20, $21, $22
+; 0xd99f6
diff --git a/gfx/frontpics/201a.2bpp b/gfx/pics/201a/front.2bpp
index d98e71138..d98e71138 100644
--- a/gfx/frontpics/201a.2bpp
+++ b/gfx/pics/201a/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201a.lz b/gfx/pics/201a/front.lz
index 6f0639575..6f0639575 100644
--- a/gfx/frontpics/lz/201a.lz
+++ b/gfx/pics/201a/front.lz
Binary files differ
diff --git a/gfx/anim/201a.2bpp b/gfx/pics/201a/tiles.2bpp
index 143af3a72..143af3a72 100644
--- a/gfx/anim/201a.2bpp
+++ b/gfx/pics/201a/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201b/anim0.asm b/gfx/pics/201b/anim0.asm
new file mode 100644
index 000000000..7683b9e84
--- /dev/null
+++ b/gfx/pics/201b/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 08
+ frame 2, 18
+ frame 3, 06
+ setrepeat 3
+ frame 4, 04
+ frame 5, 04
+ dorepeat 4
+ endanim
+; 0xd2283
diff --git a/gfx/pics/201b/anim1.asm b/gfx/pics/201b/anim1.asm
new file mode 100644
index 000000000..b8e03b299
--- /dev/null
+++ b/gfx/pics/201b/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 03
+ frame 6, 04
+ dorepeat 1
+ endanim
+; 0xd2417
diff --git a/gfx/backpics/201b.2bpp b/gfx/pics/201b/back.2bpp
index 966c4fb13..966c4fb13 100644
--- a/gfx/backpics/201b.2bpp
+++ b/gfx/pics/201b/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201b.lz b/gfx/pics/201b/back.lz
index 46375f630..46375f630 100644
--- a/gfx/backpics/lz/201b.lz
+++ b/gfx/pics/201b/back.lz
Binary files differ
diff --git a/gfx/pics/201b/bitmask.asm b/gfx/pics/201b/bitmask.asm
new file mode 100644
index 000000000..71d442b6a
--- /dev/null
+++ b/gfx/pics/201b/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000011
+ db %00000000
+; 2
+ db %10000000
+ db %00011000
+ db %00000010
+ db %00000000
+; 0xd3b1f
diff --git a/gfx/pics/201b/frames.asm b/gfx/pics/201b/frames.asm
new file mode 100644
index 000000000..b9235dd59
--- /dev/null
+++ b/gfx/pics/201b/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $00 ; bitmask
+ db $1b, $1c
+.frame3
+ db $00 ; bitmask
+ db $1d, $1e
+.frame4
+ db $01 ; bitmask
+ db $1f, $20
+.frame5
+ db $01 ; bitmask
+ db $21, $22
+.frame6
+ db $02 ; bitmask
+ db $23, $24, $25, $26
+; 0xd9a16
diff --git a/gfx/frontpics/201b.2bpp b/gfx/pics/201b/front.2bpp
index e19f2a92b..e19f2a92b 100644
--- a/gfx/frontpics/201b.2bpp
+++ b/gfx/pics/201b/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201b.lz b/gfx/pics/201b/front.lz
index 661c64a9e..661c64a9e 100644
--- a/gfx/frontpics/lz/201b.lz
+++ b/gfx/pics/201b/front.lz
Binary files differ
diff --git a/gfx/anim/201b.2bpp b/gfx/pics/201b/tiles.2bpp
index fe8c26a7f..fe8c26a7f 100644
--- a/gfx/anim/201b.2bpp
+++ b/gfx/pics/201b/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201c/anim0.asm b/gfx/pics/201c/anim0.asm
new file mode 100644
index 000000000..1e8b894ab
--- /dev/null
+++ b/gfx/pics/201c/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 05
+ frame 1, 05
+ frame 2, 05
+ setrepeat 2
+ frame 3, 04
+ frame 2, 04
+ dorepeat 4
+ endanim
+; 0xd2292
diff --git a/gfx/pics/201c/anim1.asm b/gfx/pics/201c/anim1.asm
new file mode 100644
index 000000000..fcf07ced3
--- /dev/null
+++ b/gfx/pics/201c/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd2420
diff --git a/gfx/backpics/201c.2bpp b/gfx/pics/201c/back.2bpp
index a00ba8aaf..a00ba8aaf 100644
--- a/gfx/backpics/201c.2bpp
+++ b/gfx/pics/201c/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201c.lz b/gfx/pics/201c/back.lz
index 796ba6d6a..796ba6d6a 100644
--- a/gfx/backpics/lz/201c.lz
+++ b/gfx/pics/201c/back.lz
Binary files differ
diff --git a/gfx/pics/201c/bitmask.asm b/gfx/pics/201c/bitmask.asm
new file mode 100644
index 000000000..864b1f9ae
--- /dev/null
+++ b/gfx/pics/201c/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %00001000
+ db %01100011
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00110000
+ db %00000000
+ db %00000000
+; 3
+ db %10000000
+ db %00110001
+ db %00000000
+ db %00000000
+; 0xd3b2f
diff --git a/gfx/pics/201c/frames.asm b/gfx/pics/201c/frames.asm
new file mode 100644
index 000000000..ea3cce54a
--- /dev/null
+++ b/gfx/pics/201c/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d
+.frame2
+ db $01 ; bitmask
+ db $1e
+.frame3
+ db $02 ; bitmask
+ db $1f, $20
+.frame4
+ db $03 ; bitmask
+ db $21, $22, $23, $24
+; 0xd9a2e
diff --git a/gfx/frontpics/201c.2bpp b/gfx/pics/201c/front.2bpp
index 463192c25..463192c25 100644
--- a/gfx/frontpics/201c.2bpp
+++ b/gfx/pics/201c/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201c.lz b/gfx/pics/201c/front.lz
index 18fb3b48b..18fb3b48b 100644
--- a/gfx/frontpics/lz/201c.lz
+++ b/gfx/pics/201c/front.lz
Binary files differ
diff --git a/gfx/anim/201c.2bpp b/gfx/pics/201c/tiles.2bpp
index 01b0e8239..01b0e8239 100644
--- a/gfx/anim/201c.2bpp
+++ b/gfx/pics/201c/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201d/anim0.asm b/gfx/pics/201d/anim0.asm
new file mode 100644
index 000000000..51c3b2de1
--- /dev/null
+++ b/gfx/pics/201d/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 2, 10
+ frame 0, 08
+ frame 1, 10
+ frame 0, 08
+ dorepeat 1
+ endanim
+; 0xd229f
diff --git a/gfx/pics/201d/anim1.asm b/gfx/pics/201d/anim1.asm
new file mode 100644
index 000000000..17604ce36
--- /dev/null
+++ b/gfx/pics/201d/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2429
diff --git a/gfx/backpics/201d.2bpp b/gfx/pics/201d/back.2bpp
index ed46aedcc..ed46aedcc 100644
--- a/gfx/backpics/201d.2bpp
+++ b/gfx/pics/201d/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201d.lz b/gfx/pics/201d/back.lz
index 8a967332f..8a967332f 100644
--- a/gfx/backpics/lz/201d.lz
+++ b/gfx/pics/201d/back.lz
Binary files differ
diff --git a/gfx/pics/201d/bitmask.asm b/gfx/pics/201d/bitmask.asm
new file mode 100644
index 000000000..7aa8f58ef
--- /dev/null
+++ b/gfx/pics/201d/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11001100
+ db %00111001
+ db %00000010
+ db %00000000
+; 1
+ db %11000000
+ db %00111001
+ db %00000110
+ db %00000000
+; 2
+ db %10000000
+ db %00110001
+ db %00000000
+ db %00000000
+; 0xd3b3b
diff --git a/gfx/pics/201d/frames.asm b/gfx/pics/201d/frames.asm
new file mode 100644
index 000000000..6c110241e
--- /dev/null
+++ b/gfx/pics/201d/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21
+.frame2
+ db $01 ; bitmask
+ db $22, $23, $24, $25, $26, $27, $28, $29
+.frame3
+ db $02 ; bitmask
+ db $2a, $2b, $2c, $2d
+; 0xd9a4c
diff --git a/gfx/frontpics/201d.2bpp b/gfx/pics/201d/front.2bpp
index 99449c727..99449c727 100644
--- a/gfx/frontpics/201d.2bpp
+++ b/gfx/pics/201d/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201d.lz b/gfx/pics/201d/front.lz
index d8004662d..d8004662d 100644
--- a/gfx/frontpics/lz/201d.lz
+++ b/gfx/pics/201d/front.lz
Binary files differ
diff --git a/gfx/anim/201d.2bpp b/gfx/pics/201d/tiles.2bpp
index bf2b1a862..bf2b1a862 100644
--- a/gfx/anim/201d.2bpp
+++ b/gfx/pics/201d/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201e/anim0.asm b/gfx/pics/201e/anim0.asm
new file mode 100644
index 000000000..0a58feb4d
--- /dev/null
+++ b/gfx/pics/201e/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 05
+ frame 1, 06
+ frame 0, 05
+ setrepeat 2
+ frame 2, 03
+ frame 0, 02
+ dorepeat 4
+ endanim
+; 0xd22ae
diff --git a/gfx/pics/201e/anim1.asm b/gfx/pics/201e/anim1.asm
new file mode 100644
index 000000000..53db93c1f
--- /dev/null
+++ b/gfx/pics/201e/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2432
diff --git a/gfx/backpics/201e.2bpp b/gfx/pics/201e/back.2bpp
index bd60b6ce3..bd60b6ce3 100644
--- a/gfx/backpics/201e.2bpp
+++ b/gfx/pics/201e/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201e.lz b/gfx/pics/201e/back.lz
index dfc768a1e..dfc768a1e 100644
--- a/gfx/backpics/lz/201e.lz
+++ b/gfx/pics/201e/back.lz
Binary files differ
diff --git a/gfx/pics/201e/bitmask.asm b/gfx/pics/201e/bitmask.asm
new file mode 100644
index 000000000..b54fa3f0c
--- /dev/null
+++ b/gfx/pics/201e/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00001101
+ db %00000000
+; 1
+ db %00000000
+ db %10000000
+ db %00001001
+ db %00000000
+; 2
+ db %10000000
+ db %00110001
+ db %00000000
+ db %00000000
+; 0xd3b47
diff --git a/gfx/pics/201e/frames.asm b/gfx/pics/201e/frames.asm
new file mode 100644
index 000000000..8374cad6e
--- /dev/null
+++ b/gfx/pics/201e/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e
+.frame3
+ db $02 ; bitmask
+ db $1f, $20, $21, $22
+; 0xd9a5f
diff --git a/gfx/frontpics/201e.2bpp b/gfx/pics/201e/front.2bpp
index ebdee409f..ebdee409f 100644
--- a/gfx/frontpics/201e.2bpp
+++ b/gfx/pics/201e/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201e.lz b/gfx/pics/201e/front.lz
index 5358f5ff9..5358f5ff9 100644
--- a/gfx/frontpics/lz/201e.lz
+++ b/gfx/pics/201e/front.lz
Binary files differ
diff --git a/gfx/anim/201e.2bpp b/gfx/pics/201e/tiles.2bpp
index 435eac9c3..435eac9c3 100644
--- a/gfx/anim/201e.2bpp
+++ b/gfx/pics/201e/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201f/anim0.asm b/gfx/pics/201f/anim0.asm
new file mode 100644
index 000000000..f81c298a6
--- /dev/null
+++ b/gfx/pics/201f/anim0.asm
@@ -0,0 +1,10 @@
+ setrepeat 2
+ frame 1, 11
+ frame 2, 11
+ dorepeat 1
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 5
+ endanim
+; 0xd22bf
diff --git a/gfx/pics/201f/anim1.asm b/gfx/pics/201f/anim1.asm
new file mode 100644
index 000000000..a75176981
--- /dev/null
+++ b/gfx/pics/201f/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd243b
diff --git a/gfx/backpics/201f.2bpp b/gfx/pics/201f/back.2bpp
index 88c08cdc1..88c08cdc1 100644
--- a/gfx/backpics/201f.2bpp
+++ b/gfx/pics/201f/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201f.lz b/gfx/pics/201f/back.lz
index 47e54ab66..47e54ab66 100644
--- a/gfx/backpics/lz/201f.lz
+++ b/gfx/pics/201f/back.lz
Binary files differ
diff --git a/gfx/pics/201f/bitmask.asm b/gfx/pics/201f/bitmask.asm
new file mode 100644
index 000000000..f8f337564
--- /dev/null
+++ b/gfx/pics/201f/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %00000000
+ db %00000010
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 3
+ db %11000000
+ db %00011000
+ db %00000000
+ db %00000000
+; 0xd3b57
diff --git a/gfx/pics/201f/frames.asm b/gfx/pics/201f/frames.asm
new file mode 100644
index 000000000..7247d1f2d
--- /dev/null
+++ b/gfx/pics/201f/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $01 ; bitmask
+ db $1a
+.frame3
+ db $02 ; bitmask
+ db $1b
+.frame4
+ db $03 ; bitmask
+ db $1c, $1d, $1e, $1f
+; 0xd9a72
diff --git a/gfx/frontpics/201f.2bpp b/gfx/pics/201f/front.2bpp
index b7b7a364f..b7b7a364f 100644
--- a/gfx/frontpics/201f.2bpp
+++ b/gfx/pics/201f/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201f.lz b/gfx/pics/201f/front.lz
index 4e0339419..4e0339419 100644
--- a/gfx/frontpics/lz/201f.lz
+++ b/gfx/pics/201f/front.lz
Binary files differ
diff --git a/gfx/anim/201f.2bpp b/gfx/pics/201f/tiles.2bpp
index 24442ee68..24442ee68 100644
--- a/gfx/anim/201f.2bpp
+++ b/gfx/pics/201f/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201g/anim0.asm b/gfx/pics/201g/anim0.asm
new file mode 100644
index 000000000..48100274f
--- /dev/null
+++ b/gfx/pics/201g/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 1, 06
+ frame 2, 06
+ frame 0, 06
+ dorepeat 1
+ endanim
+; 0xd22ca
diff --git a/gfx/pics/201g/anim1.asm b/gfx/pics/201g/anim1.asm
new file mode 100644
index 000000000..45906aed4
--- /dev/null
+++ b/gfx/pics/201g/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2444
diff --git a/gfx/backpics/201g.2bpp b/gfx/pics/201g/back.2bpp
index 7e40e2ac7..7e40e2ac7 100644
--- a/gfx/backpics/201g.2bpp
+++ b/gfx/pics/201g/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201g.lz b/gfx/pics/201g/back.lz
index 1f380f3ba..1f380f3ba 100644
--- a/gfx/backpics/lz/201g.lz
+++ b/gfx/pics/201g/back.lz
Binary files differ
diff --git a/gfx/pics/201g/bitmask.asm b/gfx/pics/201g/bitmask.asm
new file mode 100644
index 000000000..476a9c0a1
--- /dev/null
+++ b/gfx/pics/201g/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %01100000
+ db %10001100
+ db %00000001
+ db %00000000
+; 1
+ db %01100000
+ db %10011100
+ db %00000001
+ db %00000000
+; 2
+ db %00000000
+ db %00111000
+ db %00000010
+ db %00000000
+; 0xd3b63
diff --git a/gfx/pics/201g/frames.asm b/gfx/pics/201g/frames.asm
new file mode 100644
index 000000000..993e7eb5c
--- /dev/null
+++ b/gfx/pics/201g/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b, $1c, $1f, $1d, $1e
+.frame3
+ db $02 ; bitmask
+ db $20, $21, $22, $23
+; 0xd9a8c
diff --git a/gfx/frontpics/201g.2bpp b/gfx/pics/201g/front.2bpp
index 38687782f..38687782f 100644
--- a/gfx/frontpics/201g.2bpp
+++ b/gfx/pics/201g/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201g.lz b/gfx/pics/201g/front.lz
index 0e6e343f9..0e6e343f9 100644
--- a/gfx/frontpics/lz/201g.lz
+++ b/gfx/pics/201g/front.lz
Binary files differ
diff --git a/gfx/anim/201g.2bpp b/gfx/pics/201g/tiles.2bpp
index f49c0a735..f49c0a735 100644
--- a/gfx/anim/201g.2bpp
+++ b/gfx/pics/201g/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201h/anim0.asm b/gfx/pics/201h/anim0.asm
new file mode 100644
index 000000000..fdee3822b
--- /dev/null
+++ b/gfx/pics/201h/anim0.asm
@@ -0,0 +1,11 @@
+ frame 5, 12
+ frame 1, 06
+ frame 2, 04
+ frame 3, 03
+ frame 4, 02
+ frame 1, 02
+ frame 2, 02
+ frame 3, 02
+ frame 4, 02
+ endanim
+; 0xd22dd
diff --git a/gfx/pics/201h/anim1.asm b/gfx/pics/201h/anim1.asm
new file mode 100644
index 000000000..e6fb90d5e
--- /dev/null
+++ b/gfx/pics/201h/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ endanim
+; 0xd244d
diff --git a/gfx/backpics/201h.2bpp b/gfx/pics/201h/back.2bpp
index dbfc71184..dbfc71184 100644
--- a/gfx/backpics/201h.2bpp
+++ b/gfx/pics/201h/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201h.lz b/gfx/pics/201h/back.lz
index 926bf5757..926bf5757 100644
--- a/gfx/backpics/lz/201h.lz
+++ b/gfx/pics/201h/back.lz
Binary files differ
diff --git a/gfx/pics/201h/bitmask.asm b/gfx/pics/201h/bitmask.asm
new file mode 100644
index 000000000..6559dc960
--- /dev/null
+++ b/gfx/pics/201h/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %00110000
+ db %00000000
+ db %00000000
+; 1
+ db %10000000
+ db %00110001
+ db %00000110
+ db %00000000
+; 0xd3b6b
diff --git a/gfx/pics/201h/frames.asm b/gfx/pics/201h/frames.asm
new file mode 100644
index 000000000..405dd7733
--- /dev/null
+++ b/gfx/pics/201h/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $00 ; bitmask
+ db $1b, $1c
+.frame3
+ db $00 ; bitmask
+ db $1d, $1e
+.frame4
+ db $00 ; bitmask
+ db $1f, $20
+.frame5
+ db $01 ; bitmask
+ db $21, $22, $23, $24, $25, $26
+; 0xd9aa9
diff --git a/gfx/frontpics/201h.2bpp b/gfx/pics/201h/front.2bpp
index e93bf79dd..e93bf79dd 100644
--- a/gfx/frontpics/201h.2bpp
+++ b/gfx/pics/201h/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201h.lz b/gfx/pics/201h/front.lz
index be2d0293c..be2d0293c 100644
--- a/gfx/frontpics/lz/201h.lz
+++ b/gfx/pics/201h/front.lz
Binary files differ
diff --git a/gfx/anim/201h.2bpp b/gfx/pics/201h/tiles.2bpp
index ca026a795..ca026a795 100644
--- a/gfx/anim/201h.2bpp
+++ b/gfx/pics/201h/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201i/anim0.asm b/gfx/pics/201i/anim0.asm
new file mode 100644
index 000000000..38e19a0c9
--- /dev/null
+++ b/gfx/pics/201i/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 1, 06
+ frame 0, 05
+ frame 2, 06
+ frame 0, 05
+ dorepeat 1
+ endanim
+; 0xd22ea
diff --git a/gfx/pics/201i/anim1.asm b/gfx/pics/201i/anim1.asm
new file mode 100644
index 000000000..1d5ce67ad
--- /dev/null
+++ b/gfx/pics/201i/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2456
diff --git a/gfx/backpics/201i.2bpp b/gfx/pics/201i/back.2bpp
index 1ebeca277..1ebeca277 100644
--- a/gfx/backpics/201i.2bpp
+++ b/gfx/pics/201i/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201i.lz b/gfx/pics/201i/back.lz
index 7dcea181f..7dcea181f 100644
--- a/gfx/backpics/lz/201i.lz
+++ b/gfx/pics/201i/back.lz
Binary files differ
diff --git a/gfx/pics/201i/bitmask.asm b/gfx/pics/201i/bitmask.asm
new file mode 100644
index 000000000..f9537943b
--- /dev/null
+++ b/gfx/pics/201i/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00001000
+ db %00000001
+ db %00000000
+; 1
+ db %01000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 2
+ db %10000000
+ db %00110001
+ db %00000110
+ db %00000000
+; 0xd3b77
diff --git a/gfx/pics/201i/frames.asm b/gfx/pics/201i/frames.asm
new file mode 100644
index 000000000..6df0064a0
--- /dev/null
+++ b/gfx/pics/201i/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $01 ; bitmask
+ db $1b, $1c
+.frame3
+ db $02 ; bitmask
+ db $1d, $1e, $1f, $20, $21, $22
+; 0xd9abc
diff --git a/gfx/frontpics/201i.2bpp b/gfx/pics/201i/front.2bpp
index 5bd003a15..5bd003a15 100644
--- a/gfx/frontpics/201i.2bpp
+++ b/gfx/pics/201i/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201i.lz b/gfx/pics/201i/front.lz
index dfd89c266..dfd89c266 100644
--- a/gfx/frontpics/lz/201i.lz
+++ b/gfx/pics/201i/front.lz
Binary files differ
diff --git a/gfx/anim/201i.2bpp b/gfx/pics/201i/tiles.2bpp
index f1e56e554..f1e56e554 100644
--- a/gfx/anim/201i.2bpp
+++ b/gfx/pics/201i/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201j/anim0.asm b/gfx/pics/201j/anim0.asm
new file mode 100644
index 000000000..3a7467d45
--- /dev/null
+++ b/gfx/pics/201j/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 03
+ frame 1, 05
+ frame 2, 07
+ frame 1, 05
+ dorepeat 1
+ endanim
+; 0xd22f7
diff --git a/gfx/pics/201j/anim1.asm b/gfx/pics/201j/anim1.asm
new file mode 100644
index 000000000..d46b36028
--- /dev/null
+++ b/gfx/pics/201j/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd245f
diff --git a/gfx/backpics/201j.2bpp b/gfx/pics/201j/back.2bpp
index 69f756cbc..69f756cbc 100644
--- a/gfx/backpics/201j.2bpp
+++ b/gfx/pics/201j/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201j.lz b/gfx/pics/201j/back.lz
index c0eabf3ba..c0eabf3ba 100644
--- a/gfx/backpics/lz/201j.lz
+++ b/gfx/pics/201j/back.lz
Binary files differ
diff --git a/gfx/pics/201j/bitmask.asm b/gfx/pics/201j/bitmask.asm
new file mode 100644
index 000000000..bc3d59792
--- /dev/null
+++ b/gfx/pics/201j/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %01100011
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %01100010
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00110000
+ db %00000110
+ db %00000000
+; 0xd3b83
diff --git a/gfx/pics/201j/frames.asm b/gfx/pics/201j/frames.asm
new file mode 100644
index 000000000..6f196f838
--- /dev/null
+++ b/gfx/pics/201j/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f
+.frame3
+ db $02 ; bitmask
+ db $20, $21, $22, $23
+; 0xd9ad0
diff --git a/gfx/frontpics/201j.2bpp b/gfx/pics/201j/front.2bpp
index 832a20bed..832a20bed 100644
--- a/gfx/frontpics/201j.2bpp
+++ b/gfx/pics/201j/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201j.lz b/gfx/pics/201j/front.lz
index ec8e536d3..ec8e536d3 100644
--- a/gfx/frontpics/lz/201j.lz
+++ b/gfx/pics/201j/front.lz
Binary files differ
diff --git a/gfx/anim/201j.2bpp b/gfx/pics/201j/tiles.2bpp
index 170cc0f04..170cc0f04 100644
--- a/gfx/anim/201j.2bpp
+++ b/gfx/pics/201j/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201k/anim0.asm b/gfx/pics/201k/anim0.asm
new file mode 100644
index 000000000..0948f212d
--- /dev/null
+++ b/gfx/pics/201k/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 07
+ frame 1, 07
+ frame 2, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd2304
diff --git a/gfx/pics/201k/anim1.asm b/gfx/pics/201k/anim1.asm
new file mode 100644
index 000000000..8f8a4acb1
--- /dev/null
+++ b/gfx/pics/201k/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2468
diff --git a/gfx/backpics/201k.2bpp b/gfx/pics/201k/back.2bpp
index b150c171f..b150c171f 100644
--- a/gfx/backpics/201k.2bpp
+++ b/gfx/pics/201k/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201k.lz b/gfx/pics/201k/back.lz
index 0f4e8fda7..0f4e8fda7 100644
--- a/gfx/backpics/lz/201k.lz
+++ b/gfx/pics/201k/back.lz
Binary files differ
diff --git a/gfx/pics/201k/bitmask.asm b/gfx/pics/201k/bitmask.asm
new file mode 100644
index 000000000..4970cdf72
--- /dev/null
+++ b/gfx/pics/201k/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %00000000
+ db %11001110
+ db %00000000
+; 1
+ db %10000000
+ db %00110001
+ db %00000000
+ db %00000000
+; 0xd3b8b
diff --git a/gfx/pics/201k/frames.asm b/gfx/pics/201k/frames.asm
new file mode 100644
index 000000000..b322962db
--- /dev/null
+++ b/gfx/pics/201k/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d
+.frame2
+ db $00 ; bitmask
+ db $1e, $1f, $00, $20, $21
+.frame3
+ db $01 ; bitmask
+ db $22, $23, $24, $25
+; 0xd9ae7
diff --git a/gfx/frontpics/201k.2bpp b/gfx/pics/201k/front.2bpp
index 65f71e9bf..65f71e9bf 100644
--- a/gfx/frontpics/201k.2bpp
+++ b/gfx/pics/201k/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201k.lz b/gfx/pics/201k/front.lz
index b617e898c..b617e898c 100644
--- a/gfx/frontpics/lz/201k.lz
+++ b/gfx/pics/201k/front.lz
Binary files differ
diff --git a/gfx/anim/201k.2bpp b/gfx/pics/201k/tiles.2bpp
index c10fb621e..c10fb621e 100644
--- a/gfx/anim/201k.2bpp
+++ b/gfx/pics/201k/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201l/anim0.asm b/gfx/pics/201l/anim0.asm
new file mode 100644
index 000000000..7b4e5e21c
--- /dev/null
+++ b/gfx/pics/201l/anim0.asm
@@ -0,0 +1,12 @@
+ setrepeat 2
+ frame 0, 05
+ frame 1, 06
+ frame 2, 07
+ frame 1, 06
+ dorepeat 1
+ frame 0, 10
+ frame 3, 11
+ frame 4, 12
+ frame 3, 11
+ endanim
+; 0xd2319
diff --git a/gfx/pics/201l/anim1.asm b/gfx/pics/201l/anim1.asm
new file mode 100644
index 000000000..859dec2ec
--- /dev/null
+++ b/gfx/pics/201l/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 5, 05
+ dorepeat 1
+ endanim
+; 0xd2471
diff --git a/gfx/backpics/201l.2bpp b/gfx/pics/201l/back.2bpp
index bd2218e27..bd2218e27 100644
--- a/gfx/backpics/201l.2bpp
+++ b/gfx/pics/201l/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201l.lz b/gfx/pics/201l/back.lz
index 4f48955df..4f48955df 100644
--- a/gfx/backpics/lz/201l.lz
+++ b/gfx/pics/201l/back.lz
Binary files differ
diff --git a/gfx/pics/201l/bitmask.asm b/gfx/pics/201l/bitmask.asm
new file mode 100644
index 000000000..769936bb8
--- /dev/null
+++ b/gfx/pics/201l/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %01000000
+ db %00001000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000000
+; 2
+ db %10000000
+ db %00110000
+ db %00000010
+ db %00000000
+; 0xd3b97
diff --git a/gfx/pics/201l/frames.asm b/gfx/pics/201l/frames.asm
new file mode 100644
index 000000000..8f8edb031
--- /dev/null
+++ b/gfx/pics/201l/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $19, $1a
+.frame2
+ db $00 ; bitmask
+ db $1b, $1c
+.frame3
+ db $00 ; bitmask
+ db $1d, $1e
+.frame4
+ db $01 ; bitmask
+ db $1f
+.frame5
+ db $02 ; bitmask
+ db $20, $21, $22, $23
+; 0xd9b01
diff --git a/gfx/frontpics/201l.2bpp b/gfx/pics/201l/front.2bpp
index 82c250071..82c250071 100644
--- a/gfx/frontpics/201l.2bpp
+++ b/gfx/pics/201l/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201l.lz b/gfx/pics/201l/front.lz
index d0eee7516..d0eee7516 100644
--- a/gfx/frontpics/lz/201l.lz
+++ b/gfx/pics/201l/front.lz
Binary files differ
diff --git a/gfx/anim/201l.2bpp b/gfx/pics/201l/tiles.2bpp
index 749b7e64f..749b7e64f 100644
--- a/gfx/anim/201l.2bpp
+++ b/gfx/pics/201l/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201m/anim0.asm b/gfx/pics/201m/anim0.asm
new file mode 100644
index 000000000..bb5292446
--- /dev/null
+++ b/gfx/pics/201m/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 06
+ frame 2, 06
+ frame 1, 03
+ frame 0, 03
+ setrepeat 2
+ frame 0, 02
+ frame 1, 02
+ frame 2, 02
+ frame 1, 02
+ dorepeat 5
+ endanim
+; 0xd232e
diff --git a/gfx/pics/201m/anim1.asm b/gfx/pics/201m/anim1.asm
new file mode 100644
index 000000000..710300f20
--- /dev/null
+++ b/gfx/pics/201m/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd247a
diff --git a/gfx/backpics/201m.2bpp b/gfx/pics/201m/back.2bpp
index 27d5b2de7..27d5b2de7 100644
--- a/gfx/backpics/201m.2bpp
+++ b/gfx/pics/201m/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201m.lz b/gfx/pics/201m/back.lz
index 3ab40cb03..3ab40cb03 100644
--- a/gfx/backpics/lz/201m.lz
+++ b/gfx/pics/201m/back.lz
Binary files differ
diff --git a/gfx/pics/201m/bitmask.asm b/gfx/pics/201m/bitmask.asm
new file mode 100644
index 000000000..5638e6bd8
--- /dev/null
+++ b/gfx/pics/201m/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %01110000
+ db %00001110
+ db %00000000
+; 1
+ db %00000000
+ db %01100000
+ db %00001100
+ db %00000000
+; 0xd3b9f
diff --git a/gfx/pics/201m/frames.asm b/gfx/pics/201m/frames.asm
new file mode 100644
index 000000000..341e6840b
--- /dev/null
+++ b/gfx/pics/201m/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $00 ; bitmask
+ db $1f, $20, $21, $22, $23, $24
+.frame3
+ db $01 ; bitmask
+ db $25, $26, $27, $28
+; 0xd9b1a
diff --git a/gfx/frontpics/201m.2bpp b/gfx/pics/201m/front.2bpp
index 6d8a8b1a3..6d8a8b1a3 100644
--- a/gfx/frontpics/201m.2bpp
+++ b/gfx/pics/201m/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201m.lz b/gfx/pics/201m/front.lz
index 04e1592ce..04e1592ce 100644
--- a/gfx/frontpics/lz/201m.lz
+++ b/gfx/pics/201m/front.lz
Binary files differ
diff --git a/gfx/anim/201m.2bpp b/gfx/pics/201m/tiles.2bpp
index 72e47537f..72e47537f 100644
--- a/gfx/anim/201m.2bpp
+++ b/gfx/pics/201m/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201n/anim0.asm b/gfx/pics/201n/anim0.asm
new file mode 100644
index 000000000..1f6924926
--- /dev/null
+++ b/gfx/pics/201n/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 06
+ frame 1, 06
+ frame 2, 20
+ frame 1, 06
+ frame 0, 16
+ frame 1, 03
+ frame 2, 04
+ frame 1, 03
+ endanim
+; 0xd233f
diff --git a/gfx/pics/201n/anim1.asm b/gfx/pics/201n/anim1.asm
new file mode 100644
index 000000000..5275e3463
--- /dev/null
+++ b/gfx/pics/201n/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2483
diff --git a/gfx/backpics/201n.2bpp b/gfx/pics/201n/back.2bpp
index 2feb43f95..2feb43f95 100644
--- a/gfx/backpics/201n.2bpp
+++ b/gfx/pics/201n/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201n.lz b/gfx/pics/201n/back.lz
index c39417aa8..c39417aa8 100644
--- a/gfx/backpics/lz/201n.lz
+++ b/gfx/pics/201n/back.lz
Binary files differ
diff --git a/gfx/pics/201n/bitmask.asm b/gfx/pics/201n/bitmask.asm
new file mode 100644
index 000000000..f2dc23c34
--- /dev/null
+++ b/gfx/pics/201n/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00000011
+ db %11000000
+ db %00000000
+; 1
+ db %00000000
+ db %01110011
+ db %11001110
+ db %00000000
+; 2
+ db %00000000
+ db %01110000
+ db %00001110
+ db %00000000
+; 0xd3bab
diff --git a/gfx/pics/201n/frames.asm b/gfx/pics/201n/frames.asm
new file mode 100644
index 000000000..b656f81c0
--- /dev/null
+++ b/gfx/pics/201n/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f, $20, $21, $22, $23, $24, $25, $26
+.frame3
+ db $02 ; bitmask
+ db $1f, $20, $21, $22, $23, $24
+; 0xd9b37
diff --git a/gfx/frontpics/201n.2bpp b/gfx/pics/201n/front.2bpp
index d691bc972..d691bc972 100644
--- a/gfx/frontpics/201n.2bpp
+++ b/gfx/pics/201n/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201n.lz b/gfx/pics/201n/front.lz
index ec17bff9f..ec17bff9f 100644
--- a/gfx/frontpics/lz/201n.lz
+++ b/gfx/pics/201n/front.lz
Binary files differ
diff --git a/gfx/anim/201n.2bpp b/gfx/pics/201n/tiles.2bpp
index 130b063ed..130b063ed 100644
--- a/gfx/anim/201n.2bpp
+++ b/gfx/pics/201n/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201o/anim0.asm b/gfx/pics/201o/anim0.asm
new file mode 100644
index 000000000..581d47b9d
--- /dev/null
+++ b/gfx/pics/201o/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 06
+ frame 3, 06
+ frame 1, 12
+ frame 2, 32
+ frame 1, 10
+ frame 3, 04
+ endanim
+; 0xd234c
diff --git a/gfx/pics/201o/anim1.asm b/gfx/pics/201o/anim1.asm
new file mode 100644
index 000000000..fec231c84
--- /dev/null
+++ b/gfx/pics/201o/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd248c
diff --git a/gfx/backpics/201o.2bpp b/gfx/pics/201o/back.2bpp
index 2bad62791..2bad62791 100644
--- a/gfx/backpics/201o.2bpp
+++ b/gfx/pics/201o/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201o.lz b/gfx/pics/201o/back.lz
index 4d4b4fd4f..4d4b4fd4f 100644
--- a/gfx/backpics/lz/201o.lz
+++ b/gfx/pics/201o/back.lz
Binary files differ
diff --git a/gfx/pics/201o/bitmask.asm b/gfx/pics/201o/bitmask.asm
new file mode 100644
index 000000000..5a36a12a1
--- /dev/null
+++ b/gfx/pics/201o/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %00110000
+ db %00000110
+ db %00000000
+; 1
+ db %00000000
+ db %01110000
+ db %00000110
+ db %00000000
+; 0xd3bb3
diff --git a/gfx/pics/201o/frames.asm b/gfx/pics/201o/frames.asm
new file mode 100644
index 000000000..1258d1a06
--- /dev/null
+++ b/gfx/pics/201o/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f, $20, $21
+.frame3
+ db $00 ; bitmask
+ db $22, $23, $24, $25
+; 0xd9b4d
diff --git a/gfx/frontpics/201o.2bpp b/gfx/pics/201o/front.2bpp
index 86b969d2f..86b969d2f 100644
--- a/gfx/frontpics/201o.2bpp
+++ b/gfx/pics/201o/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201o.lz b/gfx/pics/201o/front.lz
index 66b6b8141..66b6b8141 100644
--- a/gfx/frontpics/lz/201o.lz
+++ b/gfx/pics/201o/front.lz
Binary files differ
diff --git a/gfx/anim/201o.2bpp b/gfx/pics/201o/tiles.2bpp
index ba3ebd7e8..ba3ebd7e8 100644
--- a/gfx/anim/201o.2bpp
+++ b/gfx/pics/201o/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201p/anim0.asm b/gfx/pics/201p/anim0.asm
new file mode 100644
index 000000000..0cbaf30ed
--- /dev/null
+++ b/gfx/pics/201p/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 10
+ frame 2, 36
+ frame 1, 06
+ endanim
+; 0xd2353
diff --git a/gfx/pics/201p/anim1.asm b/gfx/pics/201p/anim1.asm
new file mode 100644
index 000000000..51e0e0941
--- /dev/null
+++ b/gfx/pics/201p/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2495
diff --git a/gfx/backpics/201p.2bpp b/gfx/pics/201p/back.2bpp
index 1d8aea0a5..1d8aea0a5 100644
--- a/gfx/backpics/201p.2bpp
+++ b/gfx/pics/201p/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201p.lz b/gfx/pics/201p/back.lz
index 19fd45591..19fd45591 100644
--- a/gfx/backpics/lz/201p.lz
+++ b/gfx/pics/201p/back.lz
Binary files differ
diff --git a/gfx/pics/201p/bitmask.asm b/gfx/pics/201p/bitmask.asm
new file mode 100644
index 000000000..e4606936b
--- /dev/null
+++ b/gfx/pics/201p/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10000000
+ db %00010000
+ db %00000010
+ db %00000000
+; 1
+ db %11000000
+ db %00110000
+ db %00000010
+ db %00000000
+; 2
+ db %10000000
+ db %00110000
+ db %00000010
+ db %00000000
+; 0xd3bbf
diff --git a/gfx/pics/201p/frames.asm b/gfx/pics/201p/frames.asm
new file mode 100644
index 000000000..c9e27bfbd
--- /dev/null
+++ b/gfx/pics/201p/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f, $1b
+.frame3
+ db $02 ; bitmask
+ db $20, $21, $22, $23
+; 0xd9b62
diff --git a/gfx/frontpics/201p.2bpp b/gfx/pics/201p/front.2bpp
index 572354add..572354add 100644
--- a/gfx/frontpics/201p.2bpp
+++ b/gfx/pics/201p/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201p.lz b/gfx/pics/201p/front.lz
index 53d4bfbcd..53d4bfbcd 100644
--- a/gfx/frontpics/lz/201p.lz
+++ b/gfx/pics/201p/front.lz
Binary files differ
diff --git a/gfx/anim/201p.2bpp b/gfx/pics/201p/tiles.2bpp
index 4a9b189c4..4a9b189c4 100644
--- a/gfx/anim/201p.2bpp
+++ b/gfx/pics/201p/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201q/anim0.asm b/gfx/pics/201q/anim0.asm
new file mode 100644
index 000000000..555f61cf3
--- /dev/null
+++ b/gfx/pics/201q/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 05
+ frame 1, 05
+ frame 2, 05
+ frame 1, 05
+ dorepeat 1
+ endanim
+; 0xd2360
diff --git a/gfx/pics/201q/anim1.asm b/gfx/pics/201q/anim1.asm
new file mode 100644
index 000000000..a17caa474
--- /dev/null
+++ b/gfx/pics/201q/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd249e
diff --git a/gfx/backpics/201q.2bpp b/gfx/pics/201q/back.2bpp
index 3e66ea03f..3e66ea03f 100644
--- a/gfx/backpics/201q.2bpp
+++ b/gfx/pics/201q/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201q.lz b/gfx/pics/201q/back.lz
index 5199cdc6c..5199cdc6c 100644
--- a/gfx/backpics/lz/201q.lz
+++ b/gfx/pics/201q/back.lz
Binary files differ
diff --git a/gfx/pics/201q/bitmask.asm b/gfx/pics/201q/bitmask.asm
new file mode 100644
index 000000000..a8f4d5c61
--- /dev/null
+++ b/gfx/pics/201q/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %00000000
+ db %10001100
+ db %00000001
+; 1
+ db %10000000
+ db %00110001
+ db %00000110
+ db %00000000
+; 0xd3bc7
diff --git a/gfx/pics/201q/frames.asm b/gfx/pics/201q/frames.asm
new file mode 100644
index 000000000..065ef139e
--- /dev/null
+++ b/gfx/pics/201q/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $00 ; bitmask
+ db $1d, $1e, $1f, $00
+.frame3
+ db $01 ; bitmask
+ db $20, $21, $22, $23, $24, $25
+; 0xd9b79
diff --git a/gfx/frontpics/201q.2bpp b/gfx/pics/201q/front.2bpp
index f6a04d981..f6a04d981 100644
--- a/gfx/frontpics/201q.2bpp
+++ b/gfx/pics/201q/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201q.lz b/gfx/pics/201q/front.lz
index 65536e23f..65536e23f 100644
--- a/gfx/frontpics/lz/201q.lz
+++ b/gfx/pics/201q/front.lz
Binary files differ
diff --git a/gfx/anim/201q.2bpp b/gfx/pics/201q/tiles.2bpp
index 3667aa501..3667aa501 100644
--- a/gfx/anim/201q.2bpp
+++ b/gfx/pics/201q/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201r/anim0.asm b/gfx/pics/201r/anim0.asm
new file mode 100644
index 000000000..fde5a58ab
--- /dev/null
+++ b/gfx/pics/201r/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 07
+ frame 1, 07
+ frame 2, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd236d
diff --git a/gfx/pics/201r/anim1.asm b/gfx/pics/201r/anim1.asm
new file mode 100644
index 000000000..b1db8166a
--- /dev/null
+++ b/gfx/pics/201r/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24a7
diff --git a/gfx/backpics/201r.2bpp b/gfx/pics/201r/back.2bpp
index cd7fc29bd..cd7fc29bd 100644
--- a/gfx/backpics/201r.2bpp
+++ b/gfx/pics/201r/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201r.lz b/gfx/pics/201r/back.lz
index a8a243e0b..a8a243e0b 100644
--- a/gfx/backpics/lz/201r.lz
+++ b/gfx/pics/201r/back.lz
Binary files differ
diff --git a/gfx/pics/201r/bitmask.asm b/gfx/pics/201r/bitmask.asm
new file mode 100644
index 000000000..2a1130ae3
--- /dev/null
+++ b/gfx/pics/201r/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %00000010
+ db %00001100
+ db %00000000
+; 1
+ db %10000000
+ db %00110000
+ db %00000010
+ db %00000000
+; 0xd3bcf
diff --git a/gfx/pics/201r/frames.asm b/gfx/pics/201r/frames.asm
new file mode 100644
index 000000000..99113f145
--- /dev/null
+++ b/gfx/pics/201r/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $00 ; bitmask
+ db $1c, $1a, $1d
+.frame3
+ db $01 ; bitmask
+ db $1e, $1f, $20, $21
+; 0xd9b8c
diff --git a/gfx/frontpics/201r.2bpp b/gfx/pics/201r/front.2bpp
index 8255931b4..8255931b4 100644
--- a/gfx/frontpics/201r.2bpp
+++ b/gfx/pics/201r/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201r.lz b/gfx/pics/201r/front.lz
index 9e76761d1..9e76761d1 100644
--- a/gfx/frontpics/lz/201r.lz
+++ b/gfx/pics/201r/front.lz
Binary files differ
diff --git a/gfx/anim/201r.2bpp b/gfx/pics/201r/tiles.2bpp
index 417942022..417942022 100644
--- a/gfx/anim/201r.2bpp
+++ b/gfx/pics/201r/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201s/anim0.asm b/gfx/pics/201s/anim0.asm
new file mode 100644
index 000000000..9cac3910d
--- /dev/null
+++ b/gfx/pics/201s/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 12
+ frame 0, 10
+ frame 2, 12
+ frame 0, 24
+ setrepeat 2
+ frame 1, 03
+ frame 2, 03
+ dorepeat 5
+ endanim
+; 0xd237e
diff --git a/gfx/pics/201s/anim1.asm b/gfx/pics/201s/anim1.asm
new file mode 100644
index 000000000..49483f8f5
--- /dev/null
+++ b/gfx/pics/201s/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24b0
diff --git a/gfx/backpics/201s.2bpp b/gfx/pics/201s/back.2bpp
index fbfd4cd22..fbfd4cd22 100644
--- a/gfx/backpics/201s.2bpp
+++ b/gfx/pics/201s/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201s.lz b/gfx/pics/201s/back.lz
index 8441f2519..8441f2519 100644
--- a/gfx/backpics/lz/201s.lz
+++ b/gfx/pics/201s/back.lz
Binary files differ
diff --git a/gfx/pics/201s/bitmask.asm b/gfx/pics/201s/bitmask.asm
new file mode 100644
index 000000000..0d4a9a75b
--- /dev/null
+++ b/gfx/pics/201s/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %01000000
+ db %00001100
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %01100000
+ db %00001100
+ db %00000000
+; 2
+ db %00000000
+ db %00110000
+ db %00000110
+ db %00000000
+; 0xd3bdb
diff --git a/gfx/pics/201s/frames.asm b/gfx/pics/201s/frames.asm
new file mode 100644
index 000000000..0331a18ea
--- /dev/null
+++ b/gfx/pics/201s/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f
+.frame3
+ db $02 ; bitmask
+ db $20, $21, $22, $23
+; 0xd9ba0
diff --git a/gfx/frontpics/201s.2bpp b/gfx/pics/201s/front.2bpp
index 73654aa92..73654aa92 100644
--- a/gfx/frontpics/201s.2bpp
+++ b/gfx/pics/201s/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201s.lz b/gfx/pics/201s/front.lz
index d16dea5e9..d16dea5e9 100644
--- a/gfx/frontpics/lz/201s.lz
+++ b/gfx/pics/201s/front.lz
Binary files differ
diff --git a/gfx/anim/201s.2bpp b/gfx/pics/201s/tiles.2bpp
index acdcd859b..acdcd859b 100644
--- a/gfx/anim/201s.2bpp
+++ b/gfx/pics/201s/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201t/anim0.asm b/gfx/pics/201t/anim0.asm
new file mode 100644
index 000000000..feba7be07
--- /dev/null
+++ b/gfx/pics/201t/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 1, 05
+ frame 0, 05
+ frame 2, 05
+ frame 0, 05
+ dorepeat 1
+ endanim
+; 0xd238b
diff --git a/gfx/pics/201t/anim1.asm b/gfx/pics/201t/anim1.asm
new file mode 100644
index 000000000..d295d6830
--- /dev/null
+++ b/gfx/pics/201t/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24b9
diff --git a/gfx/backpics/201t.2bpp b/gfx/pics/201t/back.2bpp
index fed927472..fed927472 100644
--- a/gfx/backpics/201t.2bpp
+++ b/gfx/pics/201t/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201t.lz b/gfx/pics/201t/back.lz
index 8d415b53d..8d415b53d 100644
--- a/gfx/backpics/lz/201t.lz
+++ b/gfx/pics/201t/back.lz
Binary files differ
diff --git a/gfx/pics/201t/bitmask.asm b/gfx/pics/201t/bitmask.asm
new file mode 100644
index 000000000..d889d2035
--- /dev/null
+++ b/gfx/pics/201t/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11000000
+ db %00111000
+ db %00000101
+ db %00000000
+; 1
+ db %01000000
+ db %00101000
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %01100000
+ db %00001100
+ db %00000000
+; 0xd3be7
diff --git a/gfx/pics/201t/frames.asm b/gfx/pics/201t/frames.asm
new file mode 100644
index 000000000..a2e406f8c
--- /dev/null
+++ b/gfx/pics/201t/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f
+.frame2
+ db $01 ; bitmask
+ db $20, $21, $22, $23, $24
+.frame3
+ db $02 ; bitmask
+ db $25, $26, $27, $28
+; 0xd9bb9
diff --git a/gfx/frontpics/201t.2bpp b/gfx/pics/201t/front.2bpp
index ea920e70d..ea920e70d 100644
--- a/gfx/frontpics/201t.2bpp
+++ b/gfx/pics/201t/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201t.lz b/gfx/pics/201t/front.lz
index 83100fbdb..83100fbdb 100644
--- a/gfx/frontpics/lz/201t.lz
+++ b/gfx/pics/201t/front.lz
Binary files differ
diff --git a/gfx/anim/201t.2bpp b/gfx/pics/201t/tiles.2bpp
index 1c86d6889..1c86d6889 100644
--- a/gfx/anim/201t.2bpp
+++ b/gfx/pics/201t/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201u/anim0.asm b/gfx/pics/201u/anim0.asm
new file mode 100644
index 000000000..12c53636d
--- /dev/null
+++ b/gfx/pics/201u/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 1, 12
+ frame 2, 14
+ frame 1, 12
+ endanim
+; 0xd2394
diff --git a/gfx/pics/201u/anim1.asm b/gfx/pics/201u/anim1.asm
new file mode 100644
index 000000000..834e75999
--- /dev/null
+++ b/gfx/pics/201u/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24c2
diff --git a/gfx/backpics/201u.2bpp b/gfx/pics/201u/back.2bpp
index 21d910964..21d910964 100644
--- a/gfx/backpics/201u.2bpp
+++ b/gfx/pics/201u/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201u.lz b/gfx/pics/201u/back.lz
index ad395b7ec..ad395b7ec 100644
--- a/gfx/backpics/lz/201u.lz
+++ b/gfx/pics/201u/back.lz
Binary files differ
diff --git a/gfx/pics/201u/bitmask.asm b/gfx/pics/201u/bitmask.asm
new file mode 100644
index 000000000..82874fdca
--- /dev/null
+++ b/gfx/pics/201u/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00000000
+ db %01111000
+ db %00001111
+ db %00000000
+; 1
+ db %00000000
+ db %00110000
+ db %00000110
+ db %00000000
+; 0xd3bef
diff --git a/gfx/pics/201u/frames.asm b/gfx/pics/201u/frames.asm
new file mode 100644
index 000000000..5653b37c1
--- /dev/null
+++ b/gfx/pics/201u/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $00, $19, $1a, $1b, $00, $1c, $1d, $1e
+.frame2
+ db $00 ; bitmask
+ db $00, $1f, $20, $21, $00, $22, $23, $24
+.frame3
+ db $01 ; bitmask
+ db $25, $26, $27, $28
+; 0xd9bd6
diff --git a/gfx/frontpics/201u.2bpp b/gfx/pics/201u/front.2bpp
index efe4aa140..efe4aa140 100644
--- a/gfx/frontpics/201u.2bpp
+++ b/gfx/pics/201u/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201u.lz b/gfx/pics/201u/front.lz
index 622825cbe..622825cbe 100644
--- a/gfx/frontpics/lz/201u.lz
+++ b/gfx/pics/201u/front.lz
Binary files differ
diff --git a/gfx/anim/201u.2bpp b/gfx/pics/201u/tiles.2bpp
index 95f0d6840..95f0d6840 100644
--- a/gfx/anim/201u.2bpp
+++ b/gfx/pics/201u/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201v/anim0.asm b/gfx/pics/201v/anim0.asm
new file mode 100644
index 000000000..acc500009
--- /dev/null
+++ b/gfx/pics/201v/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 10
+ frame 1, 10
+ frame 2, 10
+ frame 1, 10
+ endanim
+; 0xd239d
diff --git a/gfx/pics/201v/anim1.asm b/gfx/pics/201v/anim1.asm
new file mode 100644
index 000000000..818f727ea
--- /dev/null
+++ b/gfx/pics/201v/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24cb
diff --git a/gfx/backpics/201v.2bpp b/gfx/pics/201v/back.2bpp
index 1517f5de4..1517f5de4 100644
--- a/gfx/backpics/201v.2bpp
+++ b/gfx/pics/201v/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201v.lz b/gfx/pics/201v/back.lz
index 21c3191f2..21c3191f2 100644
--- a/gfx/backpics/lz/201v.lz
+++ b/gfx/pics/201v/back.lz
Binary files differ
diff --git a/gfx/pics/201v/bitmask.asm b/gfx/pics/201v/bitmask.asm
new file mode 100644
index 000000000..4cae8c07c
--- /dev/null
+++ b/gfx/pics/201v/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %01000000
+ db %00001000
+ db %00100001
+ db %00000000
+; 1
+ db %01000000
+ db %00011000
+ db %00100001
+ db %00000000
+; 2
+ db %00000000
+ db %01100000
+ db %00001100
+ db %00000000
+; 0xd3bfb
diff --git a/gfx/pics/201v/frames.asm b/gfx/pics/201v/frames.asm
new file mode 100644
index 000000000..06e06247f
--- /dev/null
+++ b/gfx/pics/201v/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $1d, $1e, $1f, $20, $00
+.frame3
+ db $02 ; bitmask
+ db $21, $22, $23, $24
+; 0xd9bec
diff --git a/gfx/frontpics/201v.2bpp b/gfx/pics/201v/front.2bpp
index 32c047dee..32c047dee 100644
--- a/gfx/frontpics/201v.2bpp
+++ b/gfx/pics/201v/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201v.lz b/gfx/pics/201v/front.lz
index aee5ce362..aee5ce362 100644
--- a/gfx/frontpics/lz/201v.lz
+++ b/gfx/pics/201v/front.lz
Binary files differ
diff --git a/gfx/anim/201v.2bpp b/gfx/pics/201v/tiles.2bpp
index ec65b3aaa..ec65b3aaa 100644
--- a/gfx/anim/201v.2bpp
+++ b/gfx/pics/201v/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201w/anim0.asm b/gfx/pics/201w/anim0.asm
new file mode 100644
index 000000000..620ff03e5
--- /dev/null
+++ b/gfx/pics/201w/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 06
+ frame 1, 18
+ frame 0, 06
+ frame 2, 12
+ endanim
+; 0xd23a6
diff --git a/gfx/pics/201w/anim1.asm b/gfx/pics/201w/anim1.asm
new file mode 100644
index 000000000..b43d44bbc
--- /dev/null
+++ b/gfx/pics/201w/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24d4
diff --git a/gfx/backpics/201w.2bpp b/gfx/pics/201w/back.2bpp
index fcc3418eb..fcc3418eb 100644
--- a/gfx/backpics/201w.2bpp
+++ b/gfx/pics/201w/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201w.lz b/gfx/pics/201w/back.lz
index 882648c4d..882648c4d 100644
--- a/gfx/backpics/lz/201w.lz
+++ b/gfx/pics/201w/back.lz
Binary files differ
diff --git a/gfx/pics/201w/bitmask.asm b/gfx/pics/201w/bitmask.asm
new file mode 100644
index 000000000..fdb9854eb
--- /dev/null
+++ b/gfx/pics/201w/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10000000
+ db %00110001
+ db %11000110
+ db %00000000
+; 1
+ db %10000100
+ db %00000001
+ db %11000000
+ db %00000000
+; 2
+ db %00000000
+ db %01100000
+ db %00001100
+ db %00000000
+; 0xd3c07
diff --git a/gfx/pics/201w/frames.asm b/gfx/pics/201w/frames.asm
new file mode 100644
index 000000000..f19bd1620
--- /dev/null
+++ b/gfx/pics/201w/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20
+.frame2
+ db $01 ; bitmask
+ db $21, $22, $23, $24, $25
+.frame3
+ db $02 ; bitmask
+ db $26, $27, $28, $29
+; 0xd9c06
diff --git a/gfx/frontpics/201w.2bpp b/gfx/pics/201w/front.2bpp
index a3cc16a74..a3cc16a74 100644
--- a/gfx/frontpics/201w.2bpp
+++ b/gfx/pics/201w/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201w.lz b/gfx/pics/201w/front.lz
index 78a7fefac..78a7fefac 100644
--- a/gfx/frontpics/lz/201w.lz
+++ b/gfx/pics/201w/front.lz
Binary files differ
diff --git a/gfx/anim/201w.2bpp b/gfx/pics/201w/tiles.2bpp
index 397707357..397707357 100644
--- a/gfx/anim/201w.2bpp
+++ b/gfx/pics/201w/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201x/anim0.asm b/gfx/pics/201x/anim0.asm
new file mode 100644
index 000000000..0bb204da6
--- /dev/null
+++ b/gfx/pics/201x/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 0, 03
+ frame 1, 06
+ frame 0, 03
+ frame 2, 06
+ dorepeat 1
+ endanim
+; 0xd23b3
diff --git a/gfx/pics/201x/anim1.asm b/gfx/pics/201x/anim1.asm
new file mode 100644
index 000000000..22b15a504
--- /dev/null
+++ b/gfx/pics/201x/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd24dd
diff --git a/gfx/backpics/201x.2bpp b/gfx/pics/201x/back.2bpp
index 447e64df1..447e64df1 100644
--- a/gfx/backpics/201x.2bpp
+++ b/gfx/pics/201x/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201x.lz b/gfx/pics/201x/back.lz
index 591af9668..591af9668 100644
--- a/gfx/backpics/lz/201x.lz
+++ b/gfx/pics/201x/back.lz
Binary files differ
diff --git a/gfx/pics/201x/bitmask.asm b/gfx/pics/201x/bitmask.asm
new file mode 100644
index 000000000..501e3c22c
--- /dev/null
+++ b/gfx/pics/201x/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %01000000
+ db %00000010
+ db %00100000
+ db %00000001
+; 1
+ db %11000000
+ db %01111011
+ db %11101011
+ db %00000001
+; 2
+ db %00000000
+ db %00110000
+ db %00000110
+ db %00000000
+; 0xd3c13
diff --git a/gfx/pics/201x/frames.asm b/gfx/pics/201x/frames.asm
new file mode 100644
index 000000000..a6b94c147
--- /dev/null
+++ b/gfx/pics/201x/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $00, $1d, $1e, $00, $1f, $20, $21, $22, $23, $24, $25, $00
+ db $26, $27, $00
+.frame3
+ db $02 ; bitmask
+ db $28, $29, $2a, $2b
+; 0xd9c26
diff --git a/gfx/frontpics/201x.2bpp b/gfx/pics/201x/front.2bpp
index f0af4af0e..f0af4af0e 100644
--- a/gfx/frontpics/201x.2bpp
+++ b/gfx/pics/201x/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201x.lz b/gfx/pics/201x/front.lz
index 11adc7c6f..11adc7c6f 100644
--- a/gfx/frontpics/lz/201x.lz
+++ b/gfx/pics/201x/front.lz
Binary files differ
diff --git a/gfx/anim/201x.2bpp b/gfx/pics/201x/tiles.2bpp
index c753b1918..c753b1918 100644
--- a/gfx/anim/201x.2bpp
+++ b/gfx/pics/201x/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201y/anim0.asm b/gfx/pics/201y/anim0.asm
new file mode 100644
index 000000000..e65aa4134
--- /dev/null
+++ b/gfx/pics/201y/anim0.asm
@@ -0,0 +1,9 @@
+ frame 0, 06
+ frame 3, 24
+ frame 0, 06
+ setrepeat 3
+ frame 1, 05
+ frame 2, 05
+ dorepeat 4
+ endanim
+; 0xd23c2
diff --git a/gfx/pics/201y/anim1.asm b/gfx/pics/201y/anim1.asm
new file mode 100644
index 000000000..e1a9a2acb
--- /dev/null
+++ b/gfx/pics/201y/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd24e6
diff --git a/gfx/backpics/201y.2bpp b/gfx/pics/201y/back.2bpp
index a0ae1e216..a0ae1e216 100644
--- a/gfx/backpics/201y.2bpp
+++ b/gfx/pics/201y/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201y.lz b/gfx/pics/201y/back.lz
index ab7563e0d..ab7563e0d 100644
--- a/gfx/backpics/lz/201y.lz
+++ b/gfx/pics/201y/back.lz
Binary files differ
diff --git a/gfx/pics/201y/bitmask.asm b/gfx/pics/201y/bitmask.asm
new file mode 100644
index 000000000..01f68f558
--- /dev/null
+++ b/gfx/pics/201y/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+; 2
+ db %11000000
+ db %00111001
+ db %00000111
+ db %00000000
+; 3
+ db %10000000
+ db %00111000
+ db %00000010
+ db %00000000
+; 0xd3c23
diff --git a/gfx/pics/201y/frames.asm b/gfx/pics/201y/frames.asm
new file mode 100644
index 000000000..a6608e4fe
--- /dev/null
+++ b/gfx/pics/201y/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $01 ; bitmask
+ db $1a
+.frame3
+ db $02 ; bitmask
+ db $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+.frame4
+ db $03 ; bitmask
+ db $24, $25, $26, $27, $28
+; 0xd9c42
diff --git a/gfx/frontpics/201y.2bpp b/gfx/pics/201y/front.2bpp
index 20a965e3b..20a965e3b 100644
--- a/gfx/frontpics/201y.2bpp
+++ b/gfx/pics/201y/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201y.lz b/gfx/pics/201y/front.lz
index 1604f7e7b..1604f7e7b 100644
--- a/gfx/frontpics/lz/201y.lz
+++ b/gfx/pics/201y/front.lz
Binary files differ
diff --git a/gfx/anim/201y.2bpp b/gfx/pics/201y/tiles.2bpp
index ecbaae1e1..ecbaae1e1 100644
--- a/gfx/anim/201y.2bpp
+++ b/gfx/pics/201y/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/201z/anim0.asm b/gfx/pics/201z/anim0.asm
new file mode 100644
index 000000000..197978f9b
--- /dev/null
+++ b/gfx/pics/201z/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 06
+ frame 2, 10
+ frame 1, 03
+ frame 0, 03
+ frame 3, 03
+ frame 0, 03
+ frame 3, 03
+ endanim
+; 0xd23d1
diff --git a/gfx/pics/201z/anim1.asm b/gfx/pics/201z/anim1.asm
new file mode 100644
index 000000000..4eb7513f6
--- /dev/null
+++ b/gfx/pics/201z/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd24ef
diff --git a/gfx/backpics/201z.2bpp b/gfx/pics/201z/back.2bpp
index a97af8da1..a97af8da1 100644
--- a/gfx/backpics/201z.2bpp
+++ b/gfx/pics/201z/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/201z.lz b/gfx/pics/201z/back.lz
index 31bcb7baa..31bcb7baa 100644
--- a/gfx/backpics/lz/201z.lz
+++ b/gfx/pics/201z/back.lz
Binary files differ
diff --git a/gfx/pics/201z/bitmask.asm b/gfx/pics/201z/bitmask.asm
new file mode 100644
index 000000000..46231fc95
--- /dev/null
+++ b/gfx/pics/201z/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %01100000
+ db %01001100
+ db %00001000
+ db %00000000
+; 1
+ db %01100000
+ db %01101100
+ db %10001100
+ db %00000001
+; 2
+ db %01100000
+ db %00001000
+ db %00001000
+ db %00000000
+; 3
+ db %00000000
+ db %00110000
+ db %00000110
+ db %00000000
+; 0xd3c33
diff --git a/gfx/pics/201z/frames.asm b/gfx/pics/201z/frames.asm
new file mode 100644
index 000000000..215e4ca8b
--- /dev/null
+++ b/gfx/pics/201z/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $19, $00, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $00, $1d, $00, $1e, $1f, $20, $21, $22, $23, $24
+.frame3
+ db $02 ; bitmask
+ db $00, $25, $26, $27
+.frame4
+ db $03 ; bitmask
+ db $28, $29, $2a, $2b
+; 0xd9c66
diff --git a/gfx/frontpics/201z.2bpp b/gfx/pics/201z/front.2bpp
index 28668d4d1..28668d4d1 100644
--- a/gfx/frontpics/201z.2bpp
+++ b/gfx/pics/201z/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/201z.lz b/gfx/pics/201z/front.lz
index 0d9b8b4f8..0d9b8b4f8 100644
--- a/gfx/frontpics/lz/201z.lz
+++ b/gfx/pics/201z/front.lz
Binary files differ
diff --git a/gfx/anim/201z.2bpp b/gfx/pics/201z/tiles.2bpp
index cf71d5300..cf71d5300 100644
--- a/gfx/anim/201z.2bpp
+++ b/gfx/pics/201z/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/202/anim0.asm b/gfx/pics/202/anim0.asm
new file mode 100644
index 000000000..340f3df46
--- /dev/null
+++ b/gfx/pics/202/anim0.asm
@@ -0,0 +1,4 @@
+ frame 1, 07
+ frame 2, 30
+ endanim
+; 0xd1403
diff --git a/gfx/pics/202/anim1.asm b/gfx/pics/202/anim1.asm
new file mode 100644
index 000000000..8a3564daa
--- /dev/null
+++ b/gfx/pics/202/anim1.asm
@@ -0,0 +1,3 @@
+ frame 0, 30
+ endanim
+; 0xd2069
diff --git a/gfx/backpics/202.2bpp b/gfx/pics/202/back.2bpp
index 965e70a4a..965e70a4a 100644
--- a/gfx/backpics/202.2bpp
+++ b/gfx/pics/202/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/202.lz b/gfx/pics/202/back.lz
index 87dba2049..87dba2049 100644
--- a/gfx/backpics/lz/202.lz
+++ b/gfx/pics/202/back.lz
Binary files differ
diff --git a/gfx/pics/202/bitmask.asm b/gfx/pics/202/bitmask.asm
new file mode 100644
index 000000000..d1fa8121f
--- /dev/null
+++ b/gfx/pics/202/bitmask.asm
@@ -0,0 +1,7 @@
+; 0
+ db %11011111
+ db %11110111
+ db %00111101
+ db %00001111
+ db %00000000
+; 0xd36b0
diff --git a/gfx/pics/202/frames.asm b/gfx/pics/202/frames.asm
new file mode 100644
index 000000000..efe0d1e6d
--- /dev/null
+++ b/gfx/pics/202/frames.asm
@@ -0,0 +1,11 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $32, $33, $34, $35, $00, $36, $00, $00
+.frame2
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $00, $28, $29, $37, $2b, $2c, $2d, $2e
+ db $38, $30, $31, $32, $33, $34, $35, $00, $36, $00, $00
+; 0xd8e92
diff --git a/gfx/frontpics/202.2bpp b/gfx/pics/202/front.2bpp
index 2040029cb..2040029cb 100644
--- a/gfx/frontpics/202.2bpp
+++ b/gfx/pics/202/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/202.lz b/gfx/pics/202/front.lz
index ce7aa46c8..ce7aa46c8 100644
--- a/gfx/frontpics/lz/202.lz
+++ b/gfx/pics/202/front.lz
Binary files differ
diff --git a/gfx/anim/202.2bpp b/gfx/pics/202/tiles.2bpp
index 5e7ce1617..5e7ce1617 100644
--- a/gfx/anim/202.2bpp
+++ b/gfx/pics/202/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/203/anim0.asm b/gfx/pics/203/anim0.asm
new file mode 100644
index 000000000..3a7ebd9fe
--- /dev/null
+++ b/gfx/pics/203/anim0.asm
@@ -0,0 +1,14 @@
+ frame 1, 15
+ frame 4, 04
+ setrepeat 2
+ frame 1, 05
+ frame 2, 05
+ dorepeat 3
+ setrepeat 3
+ frame 1, 05
+ frame 4, 05
+ dorepeat 7
+ frame 5, 05
+ frame 3, 05
+ endanim
+; 0xd141c
diff --git a/gfx/pics/203/anim1.asm b/gfx/pics/203/anim1.asm
new file mode 100644
index 000000000..95b1131ca
--- /dev/null
+++ b/gfx/pics/203/anim1.asm
@@ -0,0 +1,4 @@
+ frame 5, 16
+ frame 3, 16
+ endanim
+; 0xd206e
diff --git a/gfx/backpics/203.2bpp b/gfx/pics/203/back.2bpp
index 2fb47c73c..2fb47c73c 100644
--- a/gfx/backpics/203.2bpp
+++ b/gfx/pics/203/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/203.lz b/gfx/pics/203/back.lz
index aca23f976..aca23f976 100644
--- a/gfx/backpics/lz/203.lz
+++ b/gfx/pics/203/back.lz
Binary files differ
diff --git a/gfx/pics/203/bitmask.asm b/gfx/pics/203/bitmask.asm
new file mode 100644
index 000000000..d3629e8dc
--- /dev/null
+++ b/gfx/pics/203/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10000111
+ db %11000011
+ db %11100011
+ db %01110000
+ db %00000000
+ db %00001000
+ db %00000000
+; 1
+ db %10000111
+ db %11000011
+ db %11100011
+ db %01110000
+ db %00111000
+ db %00011100
+ db %00000000
+; 2
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00111000
+ db %00011100
+ db %00000000
+; 3
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000000
+; 0xd36cc
diff --git a/gfx/pics/203/frames.asm b/gfx/pics/203/frames.asm
new file mode 100644
index 000000000..a89de6374
--- /dev/null
+++ b/gfx/pics/203/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $03, $03, $03, $31, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $03, $03, $03, $31, $32, $33, $34, $3f, $36, $37, $38, $40
+ db $3a, $3b, $41, $3d, $42, $43, $44, $45, $46, $47
+.frame3
+ db $02 ; bitmask
+ db $48, $42, $43, $44, $45, $46, $47
+.frame4
+ db $01 ; bitmask
+ db $03, $03, $03, $31, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d, $42, $43, $44, $45, $46, $47
+.frame5
+ db $03 ; bitmask
+ db $48, $3e
+; 0xd8ee7
diff --git a/gfx/frontpics/203.2bpp b/gfx/pics/203/front.2bpp
index 905de2bcf..905de2bcf 100644
--- a/gfx/frontpics/203.2bpp
+++ b/gfx/pics/203/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/203.lz b/gfx/pics/203/front.lz
index 48c9fc94a..48c9fc94a 100644
--- a/gfx/frontpics/lz/203.lz
+++ b/gfx/pics/203/front.lz
Binary files differ
diff --git a/gfx/anim/203.2bpp b/gfx/pics/203/tiles.2bpp
index b2fb43ffd..b2fb43ffd 100644
--- a/gfx/anim/203.2bpp
+++ b/gfx/pics/203/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/204/anim0.asm b/gfx/pics/204/anim0.asm
new file mode 100644
index 000000000..4579032ec
--- /dev/null
+++ b/gfx/pics/204/anim0.asm
@@ -0,0 +1,4 @@
+ frame 1, 06
+ frame 2, 18
+ endanim
+; 0xd1421
diff --git a/gfx/pics/204/anim1.asm b/gfx/pics/204/anim1.asm
new file mode 100644
index 000000000..f1b4e949e
--- /dev/null
+++ b/gfx/pics/204/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd2077
diff --git a/gfx/backpics/204.2bpp b/gfx/pics/204/back.2bpp
index 052c295c7..052c295c7 100644
--- a/gfx/backpics/204.2bpp
+++ b/gfx/pics/204/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/204.lz b/gfx/pics/204/back.lz
index f4baaadb9..f4baaadb9 100644
--- a/gfx/backpics/lz/204.lz
+++ b/gfx/pics/204/back.lz
Binary files differ
diff --git a/gfx/pics/204/bitmask.asm b/gfx/pics/204/bitmask.asm
new file mode 100644
index 000000000..30b51cece
--- /dev/null
+++ b/gfx/pics/204/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00100101
+ db %10011000
+ db %01010000
+ db %00000000
+; 1
+ db %11100111
+ db %10011000
+ db %01110011
+ db %00000000
+; 2
+ db %01000000
+ db %00001000
+ db %00000001
+ db %00000000
+; 0xd36d8
diff --git a/gfx/pics/204/frames.asm b/gfx/pics/204/frames.asm
new file mode 100644
index 000000000..97093c2c4
--- /dev/null
+++ b/gfx/pics/204/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20
+.frame2
+ db $01 ; bitmask
+ db $19, $21, $1a, $1b, $22, $23, $1c, $1d, $1e, $24, $25, $1f
+ db $26, $20
+.frame3
+ db $02 ; bitmask
+ db $27, $1c, $28
+; 0xd8f09
diff --git a/gfx/frontpics/204.2bpp b/gfx/pics/204/front.2bpp
index beda00385..beda00385 100644
--- a/gfx/frontpics/204.2bpp
+++ b/gfx/pics/204/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/204.lz b/gfx/pics/204/front.lz
index c36a27807..c36a27807 100644
--- a/gfx/frontpics/lz/204.lz
+++ b/gfx/pics/204/front.lz
Binary files differ
diff --git a/gfx/anim/204.2bpp b/gfx/pics/204/tiles.2bpp
index 84ab22b54..84ab22b54 100644
--- a/gfx/anim/204.2bpp
+++ b/gfx/pics/204/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/205/anim0.asm b/gfx/pics/205/anim0.asm
new file mode 100644
index 000000000..74c8e2e12
--- /dev/null
+++ b/gfx/pics/205/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 08
+ frame 2, 16
+ setrepeat 2
+ frame 2, 05
+ frame 3, 05
+ frame 4, 05
+ dorepeat 3
+ frame 2, 25
+ frame 1, 08
+ endanim
+; 0xd1434
diff --git a/gfx/pics/205/anim1.asm b/gfx/pics/205/anim1.asm
new file mode 100644
index 000000000..4fafa1a3e
--- /dev/null
+++ b/gfx/pics/205/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 5, 06
+ dorepeat 1
+ endanim
+; 0xd2080
diff --git a/gfx/backpics/205.2bpp b/gfx/pics/205/back.2bpp
index ecb5548db..ecb5548db 100644
--- a/gfx/backpics/205.2bpp
+++ b/gfx/pics/205/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/205.lz b/gfx/pics/205/back.lz
index 1c4b5d69a..1c4b5d69a 100644
--- a/gfx/backpics/lz/205.lz
+++ b/gfx/pics/205/back.lz
Binary files differ
diff --git a/gfx/pics/205/bitmask.asm b/gfx/pics/205/bitmask.asm
new file mode 100644
index 000000000..f02dcc3a1
--- /dev/null
+++ b/gfx/pics/205/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00011000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %01100000
+ db %00000000
+; 1
+ db %00011000
+ db %00000000
+ db %00000010
+ db %10000000
+ db %00000000
+ db %01100000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000010
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd36ed
diff --git a/gfx/pics/205/frames.asm b/gfx/pics/205/frames.asm
new file mode 100644
index 000000000..4c7364a44
--- /dev/null
+++ b/gfx/pics/205/frames.asm
@@ -0,0 +1,21 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34
+.frame2
+ db $00 ; bitmask
+ db $35, $36, $37, $38
+.frame3
+ db $01 ; bitmask
+ db $35, $36, $39, $3a, $37, $38
+.frame4
+ db $01 ; bitmask
+ db $35, $36, $3b, $3c, $37, $38
+.frame5
+ db $02 ; bitmask
+ db $39, $3a
+; 0xd8f2e
diff --git a/gfx/frontpics/205.2bpp b/gfx/pics/205/front.2bpp
index c4ab17598..c4ab17598 100644
--- a/gfx/frontpics/205.2bpp
+++ b/gfx/pics/205/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/205.lz b/gfx/pics/205/front.lz
index 239e20532..239e20532 100644
--- a/gfx/frontpics/lz/205.lz
+++ b/gfx/pics/205/front.lz
Binary files differ
diff --git a/gfx/anim/205.2bpp b/gfx/pics/205/tiles.2bpp
index 1538dc346..1538dc346 100644
--- a/gfx/anim/205.2bpp
+++ b/gfx/pics/205/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/206/anim0.asm b/gfx/pics/206/anim0.asm
new file mode 100644
index 000000000..b4217afbd
--- /dev/null
+++ b/gfx/pics/206/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 12
+ setrepeat 5
+ frame 2, 03
+ frame 3, 03
+ dorepeat 2
+ frame 4, 12
+ endanim
+; 0xd1441
diff --git a/gfx/pics/206/anim1.asm b/gfx/pics/206/anim1.asm
new file mode 100644
index 000000000..f5d6d9b05
--- /dev/null
+++ b/gfx/pics/206/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd2089
diff --git a/gfx/backpics/206.2bpp b/gfx/pics/206/back.2bpp
index c0c7de348..c0c7de348 100644
--- a/gfx/backpics/206.2bpp
+++ b/gfx/pics/206/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/206.lz b/gfx/pics/206/back.lz
index 1042b07f8..1042b07f8 100644
--- a/gfx/backpics/lz/206.lz
+++ b/gfx/pics/206/back.lz
Binary files differ
diff --git a/gfx/pics/206/bitmask.asm b/gfx/pics/206/bitmask.asm
new file mode 100644
index 000000000..e3c9c1a36
--- /dev/null
+++ b/gfx/pics/206/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00111000
+ db %10001110
+ db %11000011
+ db %00000000
+ db %00000000
+; 1
+ db %00111000
+ db %10001110
+ db %11001111
+ db %00000011
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00001100
+ db %00000011
+ db %00000000
+; 3
+ db %00010000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+; 0xd3701
diff --git a/gfx/pics/206/frames.asm b/gfx/pics/206/frames.asm
new file mode 100644
index 000000000..65dfd39cc
--- /dev/null
+++ b/gfx/pics/206/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $00
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2e, $2f, $2d
+ db $00, $30, $31
+.frame3
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $32, $33, $2d
+ db $00, $34, $35
+.frame4
+ db $02 ; bitmask
+ db $2e, $2f, $30, $31
+.frame5
+ db $03 ; bitmask
+ db $36, $37
+; 0xd8f6c
diff --git a/gfx/frontpics/206.2bpp b/gfx/pics/206/front.2bpp
index 0fb2017cc..0fb2017cc 100644
--- a/gfx/frontpics/206.2bpp
+++ b/gfx/pics/206/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/206.lz b/gfx/pics/206/front.lz
index 31e9aa319..31e9aa319 100644
--- a/gfx/frontpics/lz/206.lz
+++ b/gfx/pics/206/front.lz
Binary files differ
diff --git a/gfx/anim/206.2bpp b/gfx/pics/206/tiles.2bpp
index a9b278e59..a9b278e59 100644
--- a/gfx/anim/206.2bpp
+++ b/gfx/pics/206/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/207/anim0.asm b/gfx/pics/207/anim0.asm
new file mode 100644
index 000000000..1dabf6cbd
--- /dev/null
+++ b/gfx/pics/207/anim0.asm
@@ -0,0 +1,3 @@
+ frame 1, 35
+ endanim
+; 0xd1444
diff --git a/gfx/pics/207/anim1.asm b/gfx/pics/207/anim1.asm
new file mode 100644
index 000000000..0cc7c0916
--- /dev/null
+++ b/gfx/pics/207/anim1.asm
@@ -0,0 +1,3 @@
+ frame 1, 35
+ endanim
+; 0xd208c
diff --git a/gfx/backpics/207.2bpp b/gfx/pics/207/back.2bpp
index d33639c36..d33639c36 100644
--- a/gfx/backpics/207.2bpp
+++ b/gfx/pics/207/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/207.lz b/gfx/pics/207/back.lz
index 45b7d9b76..45b7d9b76 100644
--- a/gfx/backpics/lz/207.lz
+++ b/gfx/pics/207/back.lz
Binary files differ
diff --git a/gfx/pics/207/bitmask.asm b/gfx/pics/207/bitmask.asm
new file mode 100644
index 000000000..8a7f6aaa4
--- /dev/null
+++ b/gfx/pics/207/bitmask.asm
@@ -0,0 +1,7 @@
+; 0
+ db %11000111
+ db %11110001
+ db %00111100
+ db %11000111
+ db %00000001
+; 0xd3706
diff --git a/gfx/pics/207/frames.asm b/gfx/pics/207/frames.asm
new file mode 100644
index 000000000..4957bf8c2
--- /dev/null
+++ b/gfx/pics/207/frames.asm
@@ -0,0 +1,6 @@
+ dw .frame1
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32, $33, $34, $35, $36, $37
+; 0xd8f83
diff --git a/gfx/frontpics/207.2bpp b/gfx/pics/207/front.2bpp
index fcbfb86c2..fcbfb86c2 100644
--- a/gfx/frontpics/207.2bpp
+++ b/gfx/pics/207/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/207.lz b/gfx/pics/207/front.lz
index 4ef9e5398..4ef9e5398 100644
--- a/gfx/frontpics/lz/207.lz
+++ b/gfx/pics/207/front.lz
Binary files differ
diff --git a/gfx/anim/207.2bpp b/gfx/pics/207/tiles.2bpp
index 41b92305d..41b92305d 100644
--- a/gfx/anim/207.2bpp
+++ b/gfx/pics/207/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/208/anim0.asm b/gfx/pics/208/anim0.asm
new file mode 100644
index 000000000..9acb2af0a
--- /dev/null
+++ b/gfx/pics/208/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 14
+ frame 2, 18
+ frame 3, 28
+ frame 2, 08
+ frame 1, 06
+ endanim
+; 0xd144f
diff --git a/gfx/pics/208/anim1.asm b/gfx/pics/208/anim1.asm
new file mode 100644
index 000000000..3c1de78fb
--- /dev/null
+++ b/gfx/pics/208/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd2095
diff --git a/gfx/backpics/208.2bpp b/gfx/pics/208/back.2bpp
index e4cdacc3a..e4cdacc3a 100644
--- a/gfx/backpics/208.2bpp
+++ b/gfx/pics/208/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/208.lz b/gfx/pics/208/back.lz
index e4cb2d6dc..e4cb2d6dc 100644
--- a/gfx/backpics/lz/208.lz
+++ b/gfx/pics/208/back.lz
Binary files differ
diff --git a/gfx/pics/208/bitmask.asm b/gfx/pics/208/bitmask.asm
new file mode 100644
index 000000000..e66a1f07e
--- /dev/null
+++ b/gfx/pics/208/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00010000
+ db %00001000
+ db %01110100
+ db %10111000
+ db %01111100
+ db %00000000
+; 1
+ db %00000000
+ db %11010010
+ db %00101001
+ db %01110100
+ db %10111000
+ db %01111100
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd371b
diff --git a/gfx/pics/208/frames.asm b/gfx/pics/208/frames.asm
new file mode 100644
index 000000000..8f352b5fa
--- /dev/null
+++ b/gfx/pics/208/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f
+.frame2
+ db $00 ; bitmask
+ db $31, $32, $33, $40, $41, $42, $43, $44, $39, $3a, $45, $46
+ db $3d, $3e, $3f
+.frame3
+ db $01 ; bitmask
+ db $47, $31, $48, $49, $4a, $32, $4b, $33, $40, $41, $42, $43
+ db $44, $39, $3a, $45, $46, $3d, $3e, $3f
+.frame4
+ db $02 ; bitmask
+ db $4c
+; 0xd8fc2
diff --git a/gfx/frontpics/208.2bpp b/gfx/pics/208/front.2bpp
index d31a5d594..d31a5d594 100644
--- a/gfx/frontpics/208.2bpp
+++ b/gfx/pics/208/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/208.lz b/gfx/pics/208/front.lz
index 2da642f04..2da642f04 100644
--- a/gfx/frontpics/lz/208.lz
+++ b/gfx/pics/208/front.lz
Binary files differ
diff --git a/gfx/anim/208.2bpp b/gfx/pics/208/tiles.2bpp
index e543a04ba..e543a04ba 100644
--- a/gfx/anim/208.2bpp
+++ b/gfx/pics/208/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/209/anim0.asm b/gfx/pics/209/anim0.asm
new file mode 100644
index 000000000..d97f9b354
--- /dev/null
+++ b/gfx/pics/209/anim0.asm
@@ -0,0 +1,11 @@
+ setrepeat 2
+ frame 1, 07
+ frame 2, 09
+ frame 3, 09
+ dorepeat 1
+ setrepeat 3
+ frame 4, 08
+ frame 0, 08
+ dorepeat 6
+ endanim
+; 0xd1462
diff --git a/gfx/pics/209/anim1.asm b/gfx/pics/209/anim1.asm
new file mode 100644
index 000000000..08cae5b71
--- /dev/null
+++ b/gfx/pics/209/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 4, 12
+ frame 5, 12
+ dorepeat 1
+ endanim
+; 0xd209e
diff --git a/gfx/backpics/209.2bpp b/gfx/pics/209/back.2bpp
index 3a5ca1a78..3a5ca1a78 100644
--- a/gfx/backpics/209.2bpp
+++ b/gfx/pics/209/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/209.lz b/gfx/pics/209/back.lz
index 5b020db5e..5b020db5e 100644
--- a/gfx/backpics/lz/209.lz
+++ b/gfx/pics/209/back.lz
Binary files differ
diff --git a/gfx/pics/209/bitmask.asm b/gfx/pics/209/bitmask.asm
new file mode 100644
index 000000000..69b0ad890
--- /dev/null
+++ b/gfx/pics/209/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %00000000
+ db %11000011
+ db %01000001
+ db %00000000
+ db %00000000
+; 1
+ db %00000000
+ db %11001111
+ db %10000010
+ db %00110000
+ db %00000000
+; 2
+ db %11000110
+ db %11001111
+ db %00000000
+ db %10011100
+ db %00000011
+; 3
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %01000000
+ db %01000001
+ db %00000000
+ db %00000000
+; 0xd3734
diff --git a/gfx/pics/209/frames.asm b/gfx/pics/209/frames.asm
new file mode 100644
index 000000000..0444a0a39
--- /dev/null
+++ b/gfx/pics/209/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $2a, $2b, $26, $27, $2c, $2d, $2e, $2f
+.frame3
+ db $02 ; bitmask
+ db $30, $31, $32, $33, $24, $25, $34, $35, $26, $27, $36, $37
+ db $38, $39, $3a, $3b
+.frame4
+ db $03 ; bitmask
+ db $3c
+.frame5
+ db $04 ; bitmask
+ db $3c, $28, $29
+; 0xd8ff5
diff --git a/gfx/frontpics/209.2bpp b/gfx/pics/209/front.2bpp
index 60ceecee0..60ceecee0 100644
--- a/gfx/frontpics/209.2bpp
+++ b/gfx/pics/209/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/209.lz b/gfx/pics/209/front.lz
index 69a534e2c..69a534e2c 100644
--- a/gfx/frontpics/lz/209.lz
+++ b/gfx/pics/209/front.lz
Binary files differ
diff --git a/gfx/anim/209.2bpp b/gfx/pics/209/tiles.2bpp
index b793155d0..b793155d0 100644
--- a/gfx/anim/209.2bpp
+++ b/gfx/pics/209/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/210/anim0.asm b/gfx/pics/210/anim0.asm
new file mode 100644
index 000000000..2f412479f
--- /dev/null
+++ b/gfx/pics/210/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 32
+ frame 0, 16
+ setrepeat 2
+ frame 1, 07
+ frame 0, 07
+ dorepeat 3
+ endanim
+; 0xd146f
diff --git a/gfx/pics/210/anim1.asm b/gfx/pics/210/anim1.asm
new file mode 100644
index 000000000..22e166977
--- /dev/null
+++ b/gfx/pics/210/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 2, 06
+ dorepeat 1
+ endanim
+; 0xd20a7
diff --git a/gfx/backpics/210.2bpp b/gfx/pics/210/back.2bpp
index 5c1ee168f..5c1ee168f 100644
--- a/gfx/backpics/210.2bpp
+++ b/gfx/pics/210/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/210.lz b/gfx/pics/210/back.lz
index f09d4e7dc..f09d4e7dc 100644
--- a/gfx/backpics/lz/210.lz
+++ b/gfx/pics/210/back.lz
Binary files differ
diff --git a/gfx/pics/210/bitmask.asm b/gfx/pics/210/bitmask.asm
new file mode 100644
index 000000000..f0134ac3d
--- /dev/null
+++ b/gfx/pics/210/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %11000000
+ db %11110011
+ db %00111000
+ db %00001111
+ db %00000000
+; 1
+ db %00000000
+ db %00110000
+ db %00001100
+ db %00000000
+ db %00000000
+; 0xd373e
diff --git a/gfx/pics/210/frames.asm b/gfx/pics/210/frames.asm
new file mode 100644
index 000000000..b52d7bc47
--- /dev/null
+++ b/gfx/pics/210/frames.asm
@@ -0,0 +1,10 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31, $32
+.frame2
+ db $01 ; bitmask
+ db $33, $34, $35, $36
+; 0xd900e
diff --git a/gfx/frontpics/210.2bpp b/gfx/pics/210/front.2bpp
index ebf7c57c1..ebf7c57c1 100644
--- a/gfx/frontpics/210.2bpp
+++ b/gfx/pics/210/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/210.lz b/gfx/pics/210/front.lz
index 94062ce3f..94062ce3f 100644
--- a/gfx/frontpics/lz/210.lz
+++ b/gfx/pics/210/front.lz
Binary files differ
diff --git a/gfx/anim/210.2bpp b/gfx/pics/210/tiles.2bpp
index 80947b21f..80947b21f 100644
--- a/gfx/anim/210.2bpp
+++ b/gfx/pics/210/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/211/anim0.asm b/gfx/pics/211/anim0.asm
new file mode 100644
index 000000000..6e5d62d04
--- /dev/null
+++ b/gfx/pics/211/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 05
+ frame 2, 20
+ setrepeat 2
+ frame 0, 11
+ frame 3, 11
+ dorepeat 3
+ endanim
+; 0xd147c
diff --git a/gfx/pics/211/anim1.asm b/gfx/pics/211/anim1.asm
new file mode 100644
index 000000000..4330e80cc
--- /dev/null
+++ b/gfx/pics/211/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 13
+ frame 1, 13
+ dorepeat 1
+ endanim
+; 0xd20b0
diff --git a/gfx/backpics/211.2bpp b/gfx/pics/211/back.2bpp
index eab4ed581..eab4ed581 100644
--- a/gfx/backpics/211.2bpp
+++ b/gfx/pics/211/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/211.lz b/gfx/pics/211/back.lz
index 09f793f47..09f793f47 100644
--- a/gfx/backpics/lz/211.lz
+++ b/gfx/pics/211/back.lz
Binary files differ
diff --git a/gfx/pics/211/bitmask.asm b/gfx/pics/211/bitmask.asm
new file mode 100644
index 000000000..64d0473cf
--- /dev/null
+++ b/gfx/pics/211/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 1
+ db %10001111
+ db %00101001
+ db %11110110
+ db %00000000
+; 2
+ db %10001111
+ db %00100001
+ db %11110110
+ db %00000000
+; 0xd374a
diff --git a/gfx/pics/211/frames.asm b/gfx/pics/211/frames.asm
new file mode 100644
index 000000000..ea01f63bb
--- /dev/null
+++ b/gfx/pics/211/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $01 ; bitmask
+ db $1a, $1b, $1c, $1d, $1e, $1f, $19, $20, $21, $22, $23, $24
+ db $25, $26
+.frame3
+ db $02 ; bitmask
+ db $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24, $25
+ db $26
+; 0xd9033
diff --git a/gfx/frontpics/211.2bpp b/gfx/pics/211/front.2bpp
index 46384de83..46384de83 100644
--- a/gfx/frontpics/211.2bpp
+++ b/gfx/pics/211/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/211.lz b/gfx/pics/211/front.lz
index 02370c7ba..02370c7ba 100644
--- a/gfx/frontpics/lz/211.lz
+++ b/gfx/pics/211/front.lz
Binary files differ
diff --git a/gfx/anim/211.2bpp b/gfx/pics/211/tiles.2bpp
index 1c6ffa012..1c6ffa012 100644
--- a/gfx/anim/211.2bpp
+++ b/gfx/pics/211/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/212/anim0.asm b/gfx/pics/212/anim0.asm
new file mode 100644
index 000000000..d269c91d1
--- /dev/null
+++ b/gfx/pics/212/anim0.asm
@@ -0,0 +1,10 @@
+ frame 0, 06
+ frame 5, 22
+ setrepeat 3
+ frame 2, 06
+ frame 1, 06
+ frame 3, 06
+ dorepeat 3
+ frame 6, 18
+ endanim
+; 0xd148d
diff --git a/gfx/pics/212/anim1.asm b/gfx/pics/212/anim1.asm
new file mode 100644
index 000000000..744d6cafc
--- /dev/null
+++ b/gfx/pics/212/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd20b9
diff --git a/gfx/backpics/212.2bpp b/gfx/pics/212/back.2bpp
index 89c1b4684..89c1b4684 100644
--- a/gfx/backpics/212.2bpp
+++ b/gfx/pics/212/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/212.lz b/gfx/pics/212/back.lz
index 5a02e7000..5a02e7000 100644
--- a/gfx/backpics/lz/212.lz
+++ b/gfx/pics/212/back.lz
Binary files differ
diff --git a/gfx/pics/212/bitmask.asm b/gfx/pics/212/bitmask.asm
new file mode 100644
index 000000000..628329295
--- /dev/null
+++ b/gfx/pics/212/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00111100
+ db %00011110
+ db %10000111
+ db %11000011
+ db %11000001
+ db %11100001
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11100000
+ db %11110001
+ db %00000000
+; 2
+ db %00111100
+ db %00011110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00111100
+ db %00011110
+ db %10000111
+ db %00000000
+ db %11100000
+ db %11110001
+ db %00000000
+; 5
+ db %00111000
+ db %00011110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3774
diff --git a/gfx/pics/212/frames.asm b/gfx/pics/212/frames.asm
new file mode 100644
index 000000000..aeae2522f
--- /dev/null
+++ b/gfx/pics/212/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $00, $00, $00
+.frame2
+ db $01 ; bitmask
+ db $44, $45, $46, $43, $47, $2e, $2f, $00
+.frame3
+ db $02 ; bitmask
+ db $48, $00, $00, $00, $49, $4a, $4b, $37, $4c, $4d, $4e
+.frame4
+ db $03 ; bitmask
+ db $4f
+.frame5
+ db $04 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $38, $50, $51, $4f
+ db $44, $45, $46, $43, $47, $2e, $2f, $00
+.frame6
+ db $05 ; bitmask
+ db $52, $00, $00, $53, $54, $4b, $37, $55, $4d, $4e
+; 0xd908e
diff --git a/gfx/frontpics/212.2bpp b/gfx/pics/212/front.2bpp
index e80eed877..e80eed877 100644
--- a/gfx/frontpics/212.2bpp
+++ b/gfx/pics/212/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/212.lz b/gfx/pics/212/front.lz
index e7d506f48..e7d506f48 100644
--- a/gfx/frontpics/lz/212.lz
+++ b/gfx/pics/212/front.lz
Binary files differ
diff --git a/gfx/anim/212.2bpp b/gfx/pics/212/tiles.2bpp
index cc2058957..cc2058957 100644
--- a/gfx/anim/212.2bpp
+++ b/gfx/pics/212/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/213/anim0.asm b/gfx/pics/213/anim0.asm
new file mode 100644
index 000000000..148d2bf7d
--- /dev/null
+++ b/gfx/pics/213/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 07
+ frame 2, 07
+ frame 3, 12
+ frame 1, 07
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 5
+ endanim
+; 0xd149e
diff --git a/gfx/pics/213/anim1.asm b/gfx/pics/213/anim1.asm
new file mode 100644
index 000000000..4dd072951
--- /dev/null
+++ b/gfx/pics/213/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd20c2
diff --git a/gfx/backpics/213.2bpp b/gfx/pics/213/back.2bpp
index 6e9e1db0c..6e9e1db0c 100644
--- a/gfx/backpics/213.2bpp
+++ b/gfx/pics/213/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/213.lz b/gfx/pics/213/back.lz
index 1cc4efcea..1cc4efcea 100644
--- a/gfx/backpics/lz/213.lz
+++ b/gfx/pics/213/back.lz
Binary files differ
diff --git a/gfx/pics/213/bitmask.asm b/gfx/pics/213/bitmask.asm
new file mode 100644
index 000000000..70510aaf6
--- /dev/null
+++ b/gfx/pics/213/bitmask.asm
@@ -0,0 +1,21 @@
+; 0
+ db %01100000
+ db %10011100
+ db %00000001
+ db %00000000
+; 1
+ db %01100000
+ db %10011100
+ db %00000011
+ db %00000000
+; 2
+ db %01111000
+ db %10011110
+ db %10000011
+ db %00000001
+; 3
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00000000
+; 0xd3784
diff --git a/gfx/pics/213/frames.asm b/gfx/pics/213/frames.asm
new file mode 100644
index 000000000..803bd56a6
--- /dev/null
+++ b/gfx/pics/213/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $00, $19, $1a, $00, $1b
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $00, $00, $1c, $00, $00, $1d
+.frame3
+ db $02 ; bitmask
+ db $1e, $1f, $00, $00, $20, $00, $00, $1c, $00, $00, $1d, $21
+ db $22
+.frame4
+ db $03 ; bitmask
+ db $23
+; 0xd90b7
diff --git a/gfx/frontpics/213.2bpp b/gfx/pics/213/front.2bpp
index ceecc1ec0..ceecc1ec0 100644
--- a/gfx/frontpics/213.2bpp
+++ b/gfx/pics/213/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/213.lz b/gfx/pics/213/front.lz
index 95e78302a..95e78302a 100644
--- a/gfx/frontpics/lz/213.lz
+++ b/gfx/pics/213/front.lz
Binary files differ
diff --git a/gfx/anim/213.2bpp b/gfx/pics/213/tiles.2bpp
index 2096b76be..2096b76be 100644
--- a/gfx/anim/213.2bpp
+++ b/gfx/pics/213/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/214/anim0.asm b/gfx/pics/214/anim0.asm
new file mode 100644
index 000000000..5bba06fad
--- /dev/null
+++ b/gfx/pics/214/anim0.asm
@@ -0,0 +1,5 @@
+ frame 0, 06
+ frame 1, 20
+ frame 2, 18
+ endanim
+; 0xd14a5
diff --git a/gfx/pics/214/anim1.asm b/gfx/pics/214/anim1.asm
new file mode 100644
index 000000000..6c402379c
--- /dev/null
+++ b/gfx/pics/214/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd20cb
diff --git a/gfx/backpics/214.2bpp b/gfx/pics/214/back.2bpp
index 3d89b1354..3d89b1354 100644
--- a/gfx/backpics/214.2bpp
+++ b/gfx/pics/214/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/214.lz b/gfx/pics/214/back.lz
index da4d40981..da4d40981 100644
--- a/gfx/backpics/lz/214.lz
+++ b/gfx/pics/214/back.lz
Binary files differ
diff --git a/gfx/pics/214/bitmask.asm b/gfx/pics/214/bitmask.asm
new file mode 100644
index 000000000..024c0880b
--- /dev/null
+++ b/gfx/pics/214/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00011110
+ db %00000111
+ db %00000000
+ db %11001111
+ db %00000011
+; 1
+ db %00000100
+ db %00000001
+ db %00010000
+ db %10000110
+ db %00000000
+; 2
+ db %00000000
+ db %00000001
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd3793
diff --git a/gfx/pics/214/frames.asm b/gfx/pics/214/frames.asm
new file mode 100644
index 000000000..684c7e82e
--- /dev/null
+++ b/gfx/pics/214/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $00, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31
+.frame2
+ db $01 ; bitmask
+ db $32, $33, $34, $35, $36, $37
+.frame3
+ db $02 ; bitmask
+ db $33, $34
+; 0xd90d7
diff --git a/gfx/frontpics/214.2bpp b/gfx/pics/214/front.2bpp
index 6a66603bf..6a66603bf 100644
--- a/gfx/frontpics/214.2bpp
+++ b/gfx/pics/214/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/214.lz b/gfx/pics/214/front.lz
index ad23e01d1..ad23e01d1 100644
--- a/gfx/frontpics/lz/214.lz
+++ b/gfx/pics/214/front.lz
Binary files differ
diff --git a/gfx/anim/214.2bpp b/gfx/pics/214/tiles.2bpp
index 19e390397..19e390397 100644
--- a/gfx/anim/214.2bpp
+++ b/gfx/pics/214/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/215/anim0.asm b/gfx/pics/215/anim0.asm
new file mode 100644
index 000000000..5b7f3fb79
--- /dev/null
+++ b/gfx/pics/215/anim0.asm
@@ -0,0 +1,4 @@
+ frame 1, 04
+ frame 2, 30
+ endanim
+; 0xd14aa
diff --git a/gfx/pics/215/anim1.asm b/gfx/pics/215/anim1.asm
new file mode 100644
index 000000000..1d3e3a41d
--- /dev/null
+++ b/gfx/pics/215/anim1.asm
@@ -0,0 +1,5 @@
+ frame 3, 24
+ frame 0, 09
+ frame 4, 08
+ endanim
+; 0xd20d2
diff --git a/gfx/backpics/215.2bpp b/gfx/pics/215/back.2bpp
index 97bf834c6..97bf834c6 100644
--- a/gfx/backpics/215.2bpp
+++ b/gfx/pics/215/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/215.lz b/gfx/pics/215/back.lz
index be5ad2304..be5ad2304 100644
--- a/gfx/backpics/lz/215.lz
+++ b/gfx/pics/215/back.lz
Binary files differ
diff --git a/gfx/pics/215/bitmask.asm b/gfx/pics/215/bitmask.asm
new file mode 100644
index 000000000..49dcabe1d
--- /dev/null
+++ b/gfx/pics/215/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11000011
+ db %00111000
+ db %01100011
+ db %10001110
+ db %00000001
+; 1
+ db %11000011
+ db %11111011
+ db %00100011
+ db %10001110
+ db %00000001
+; 2
+ db %00000000
+ db %11000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd37a7
diff --git a/gfx/pics/215/frames.asm b/gfx/pics/215/frames.asm
new file mode 100644
index 000000000..88dbe408c
--- /dev/null
+++ b/gfx/pics/215/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $2f, $30, $31, $24
+.frame2
+ db $01 ; bitmask
+ db $24, $24, $25, $26, $32, $33, $34, $28, $29, $35, $36, $2a
+ db $37, $38, $2e, $24, $39, $24, $24
+.frame3
+ db $02 ; bitmask
+ db $32, $33, $35, $36
+.frame4
+ db $03 ; bitmask
+ db $35
+; 0xd910b
diff --git a/gfx/frontpics/215.2bpp b/gfx/pics/215/front.2bpp
index 2e1ed57c5..2e1ed57c5 100644
--- a/gfx/frontpics/215.2bpp
+++ b/gfx/pics/215/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/215.lz b/gfx/pics/215/front.lz
index 4add5f2e0..4add5f2e0 100644
--- a/gfx/frontpics/lz/215.lz
+++ b/gfx/pics/215/front.lz
Binary files differ
diff --git a/gfx/anim/215.2bpp b/gfx/pics/215/tiles.2bpp
index 237fd739e..237fd739e 100644
--- a/gfx/anim/215.2bpp
+++ b/gfx/pics/215/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/216/anim0.asm b/gfx/pics/216/anim0.asm
new file mode 100644
index 000000000..78bbeae60
--- /dev/null
+++ b/gfx/pics/216/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 08
+ frame 2, 28
+ frame 0, 24
+ setrepeat 3
+ frame 0, 10
+ frame 3, 10
+ dorepeat 4
+ endanim
+; 0xd14b9
diff --git a/gfx/pics/216/anim1.asm b/gfx/pics/216/anim1.asm
new file mode 100644
index 000000000..85cae5284
--- /dev/null
+++ b/gfx/pics/216/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd20db
diff --git a/gfx/backpics/216.2bpp b/gfx/pics/216/back.2bpp
index 386caee90..386caee90 100644
--- a/gfx/backpics/216.2bpp
+++ b/gfx/pics/216/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/216.lz b/gfx/pics/216/back.lz
index a6d267ef8..a6d267ef8 100644
--- a/gfx/backpics/lz/216.lz
+++ b/gfx/pics/216/back.lz
Binary files differ
diff --git a/gfx/pics/216/bitmask.asm b/gfx/pics/216/bitmask.asm
new file mode 100644
index 000000000..e5f542110
--- /dev/null
+++ b/gfx/pics/216/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10001100
+ db %00000001
+ db %00001100
+ db %00000000
+; 1
+ db %11000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 2
+ db %01000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd37b3
diff --git a/gfx/pics/216/frames.asm b/gfx/pics/216/frames.asm
new file mode 100644
index 000000000..542906c4c
--- /dev/null
+++ b/gfx/pics/216/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $1f, $1c, $1d, $1e
+.frame3
+ db $01 ; bitmask
+ db $20, $21, $22
+.frame4
+ db $02 ; bitmask
+ db $23, $24
+; 0xd9128
diff --git a/gfx/frontpics/216.2bpp b/gfx/pics/216/front.2bpp
index d05c1f8ce..d05c1f8ce 100644
--- a/gfx/frontpics/216.2bpp
+++ b/gfx/pics/216/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/216.lz b/gfx/pics/216/front.lz
index 40c22315e..40c22315e 100644
--- a/gfx/frontpics/lz/216.lz
+++ b/gfx/pics/216/front.lz
Binary files differ
diff --git a/gfx/anim/216.2bpp b/gfx/pics/216/tiles.2bpp
index fcbc494c9..fcbc494c9 100644
--- a/gfx/anim/216.2bpp
+++ b/gfx/pics/216/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/217/anim0.asm b/gfx/pics/217/anim0.asm
new file mode 100644
index 000000000..f571913ea
--- /dev/null
+++ b/gfx/pics/217/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 13
+ frame 4, 10
+ setrepeat 4
+ frame 2, 09
+ frame 3, 09
+ dorepeat 3
+ frame 1, 10
+ endanim
+; 0xd14c8
diff --git a/gfx/pics/217/anim1.asm b/gfx/pics/217/anim1.asm
new file mode 100644
index 000000000..01ebc0f1a
--- /dev/null
+++ b/gfx/pics/217/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 5
+ frame 0, 09
+ frame 5, 09
+ dorepeat 1
+ endanim
+; 0xd20e4
diff --git a/gfx/backpics/217.2bpp b/gfx/pics/217/back.2bpp
index 91d89a0c6..91d89a0c6 100644
--- a/gfx/backpics/217.2bpp
+++ b/gfx/pics/217/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/217.lz b/gfx/pics/217/back.lz
index 263eac805..263eac805 100644
--- a/gfx/backpics/lz/217.lz
+++ b/gfx/pics/217/back.lz
Binary files differ
diff --git a/gfx/pics/217/bitmask.asm b/gfx/pics/217/bitmask.asm
new file mode 100644
index 000000000..397b66f94
--- /dev/null
+++ b/gfx/pics/217/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %11000000
+ db %11100001
+ db %00110000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10000000
+ db %11000001
+ db %11100000
+ db %10110000
+ db %11100001
+ db %01110000
+ db %00000000
+; 2
+ db %00000000
+ db %11000000
+ db %11100000
+ db %00110000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %10000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd37cf
diff --git a/gfx/pics/217/frames.asm b/gfx/pics/217/frames.asm
new file mode 100644
index 000000000..537e485ed
--- /dev/null
+++ b/gfx/pics/217/frames.asm
@@ -0,0 +1,23 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44
+ db $45, $46, $47, $48, $49
+.frame3
+ db $01 ; bitmask
+ db $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $4a, $4b, $44
+ db $45, $46, $47, $48, $49
+.frame4
+ db $02 ; bitmask
+ db $3b, $3c, $3d, $3e, $3f, $40, $41
+.frame5
+ db $03 ; bitmask
+ db $39, $3a
+; 0xd916a
diff --git a/gfx/frontpics/217.2bpp b/gfx/pics/217/front.2bpp
index c80f99a71..c80f99a71 100644
--- a/gfx/frontpics/217.2bpp
+++ b/gfx/pics/217/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/217.lz b/gfx/pics/217/front.lz
index f98dd0cb0..f98dd0cb0 100644
--- a/gfx/frontpics/lz/217.lz
+++ b/gfx/pics/217/front.lz
Binary files differ
diff --git a/gfx/anim/217.2bpp b/gfx/pics/217/tiles.2bpp
index 3641c1b5a..3641c1b5a 100644
--- a/gfx/anim/217.2bpp
+++ b/gfx/pics/217/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/218/anim0.asm b/gfx/pics/218/anim0.asm
new file mode 100644
index 000000000..1c867ec37
--- /dev/null
+++ b/gfx/pics/218/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 12
+ frame 2, 10
+ frame 3, 06
+ frame 4, 14
+ frame 6, 12
+ frame 7, 10
+ frame 8, 06
+ frame 0, 14
+ endanim
+; 0xd14d9
diff --git a/gfx/pics/218/anim1.asm b/gfx/pics/218/anim1.asm
new file mode 100644
index 000000000..5bfe4e799
--- /dev/null
+++ b/gfx/pics/218/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd20ed
diff --git a/gfx/backpics/218.2bpp b/gfx/pics/218/back.2bpp
index 8d788967c..8d788967c 100644
--- a/gfx/backpics/218.2bpp
+++ b/gfx/pics/218/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/218.lz b/gfx/pics/218/back.lz
index 949fbc218..949fbc218 100644
--- a/gfx/backpics/lz/218.lz
+++ b/gfx/pics/218/back.lz
Binary files differ
diff --git a/gfx/pics/218/bitmask.asm b/gfx/pics/218/bitmask.asm
new file mode 100644
index 000000000..ef60f1d3f
--- /dev/null
+++ b/gfx/pics/218/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %00000000
+ db %00100001
+ db %10000100
+ db %00000000
+; 1
+ db %00000000
+ db %00100001
+ db %10001100
+ db %00000000
+; 2
+ db %00000000
+ db %00100001
+ db %00000000
+ db %00000000
+; 3
+ db %01000010
+ db %00011000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %10000100
+ db %00000000
+; 5
+ db %00000000
+ db %00000000
+ db %10001100
+ db %00000000
+; 0xd37e7
diff --git a/gfx/pics/218/frames.asm b/gfx/pics/218/frames.asm
new file mode 100644
index 000000000..37242d2c4
--- /dev/null
+++ b/gfx/pics/218/frames.asm
@@ -0,0 +1,33 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1d, $1e, $1f
+.frame3
+ db $01 ; bitmask
+ db $19, $1a, $20, $21, $22
+.frame4
+ db $02 ; bitmask
+ db $19, $1a
+.frame5
+ db $03 ; bitmask
+ db $23, $24, $25, $26
+.frame6
+ db $04 ; bitmask
+ db $1b, $1c
+.frame7
+ db $05 ; bitmask
+ db $1d, $1e, $1f
+.frame8
+ db $05 ; bitmask
+ db $20, $21, $22
+; 0xd919e
diff --git a/gfx/frontpics/218.2bpp b/gfx/pics/218/front.2bpp
index 7e2014af8..7e2014af8 100644
--- a/gfx/frontpics/218.2bpp
+++ b/gfx/pics/218/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/218.lz b/gfx/pics/218/front.lz
index 4c9a0078e..4c9a0078e 100644
--- a/gfx/frontpics/lz/218.lz
+++ b/gfx/pics/218/front.lz
Binary files differ
diff --git a/gfx/anim/218.2bpp b/gfx/pics/218/tiles.2bpp
index 4ce4e0d96..4ce4e0d96 100644
--- a/gfx/anim/218.2bpp
+++ b/gfx/pics/218/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/219/anim0.asm b/gfx/pics/219/anim0.asm
new file mode 100644
index 000000000..d6bf7543a
--- /dev/null
+++ b/gfx/pics/219/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 05
+ frame 2, 10
+ frame 3, 10
+ frame 4, 10
+ frame 1, 25
+ endanim
+; 0xd14e4
diff --git a/gfx/pics/219/anim1.asm b/gfx/pics/219/anim1.asm
new file mode 100644
index 000000000..3c76a44df
--- /dev/null
+++ b/gfx/pics/219/anim1.asm
@@ -0,0 +1,3 @@
+ frame 1, 60
+ endanim
+; 0xd20f0
diff --git a/gfx/backpics/219.2bpp b/gfx/pics/219/back.2bpp
index 991871339..991871339 100644
--- a/gfx/backpics/219.2bpp
+++ b/gfx/pics/219/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/219.lz b/gfx/pics/219/back.lz
index 5cafe687a..5cafe687a 100644
--- a/gfx/backpics/lz/219.lz
+++ b/gfx/pics/219/back.lz
Binary files differ
diff --git a/gfx/pics/219/bitmask.asm b/gfx/pics/219/bitmask.asm
new file mode 100644
index 000000000..3c212b320
--- /dev/null
+++ b/gfx/pics/219/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %10011110
+ db %11100111
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %10011110
+ db %11100111
+ db %00000001
+ db %11000111
+ db %00000001
+; 0xd37f1
diff --git a/gfx/pics/219/frames.asm b/gfx/pics/219/frames.asm
new file mode 100644
index 000000000..d23c44950
--- /dev/null
+++ b/gfx/pics/219/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $30, $31, $2c, $2d, $32, $33
+ db $34, $35, $36, $37, $38, $39
+.frame3
+ db $01 ; bitmask
+ db $24, $25, $3a, $3b, $28, $29, $3c, $2b, $2c, $2d, $2e, $2f
+ db $00, $3d, $36, $3e, $38, $39
+.frame4
+ db $01 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $00, $3d, $36, $00, $38, $39
+; 0xd91ec
diff --git a/gfx/frontpics/219.2bpp b/gfx/pics/219/front.2bpp
index 22f67aeb8..22f67aeb8 100644
--- a/gfx/frontpics/219.2bpp
+++ b/gfx/pics/219/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/219.lz b/gfx/pics/219/front.lz
index 8b2cda00e..8b2cda00e 100644
--- a/gfx/frontpics/lz/219.lz
+++ b/gfx/pics/219/front.lz
Binary files differ
diff --git a/gfx/anim/219.2bpp b/gfx/pics/219/tiles.2bpp
index 70c7b847c..70c7b847c 100644
--- a/gfx/anim/219.2bpp
+++ b/gfx/pics/219/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/220/anim0.asm b/gfx/pics/220/anim0.asm
new file mode 100644
index 000000000..f1d93138a
--- /dev/null
+++ b/gfx/pics/220/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 24
+ setrepeat 2
+ frame 0, 09
+ frame 2, 09
+ dorepeat 2
+ endanim
+; 0xd14ef
diff --git a/gfx/pics/220/anim1.asm b/gfx/pics/220/anim1.asm
new file mode 100644
index 000000000..5fe97a2ba
--- /dev/null
+++ b/gfx/pics/220/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 3, 07
+ dorepeat 1
+ endanim
+; 0xd20f9
diff --git a/gfx/backpics/220.2bpp b/gfx/pics/220/back.2bpp
index 8539c86e1..8539c86e1 100644
--- a/gfx/backpics/220.2bpp
+++ b/gfx/pics/220/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/220.lz b/gfx/pics/220/back.lz
index 51b90aae2..51b90aae2 100644
--- a/gfx/backpics/lz/220.lz
+++ b/gfx/pics/220/back.lz
Binary files differ
diff --git a/gfx/pics/220/bitmask.asm b/gfx/pics/220/bitmask.asm
new file mode 100644
index 000000000..e0a852068
--- /dev/null
+++ b/gfx/pics/220/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %00011000
+ db %00000011
+ db %00000000
+ db %00000000
+; 1
+ db %00001000
+ db %00000001
+ db %00000000
+ db %00000000
+; 0xd37f9
diff --git a/gfx/pics/220/frames.asm b/gfx/pics/220/frames.asm
new file mode 100644
index 000000000..9e55f046d
--- /dev/null
+++ b/gfx/pics/220/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c
+.frame2
+ db $00 ; bitmask
+ db $1d, $1e, $1f, $20
+.frame3
+ db $01 ; bitmask
+ db $21, $22
+; 0xd91ff
diff --git a/gfx/frontpics/220.2bpp b/gfx/pics/220/front.2bpp
index 31604b6a1..31604b6a1 100644
--- a/gfx/frontpics/220.2bpp
+++ b/gfx/pics/220/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/220.lz b/gfx/pics/220/front.lz
index 00171e0f3..00171e0f3 100644
--- a/gfx/frontpics/lz/220.lz
+++ b/gfx/pics/220/front.lz
Binary files differ
diff --git a/gfx/anim/220.2bpp b/gfx/pics/220/tiles.2bpp
index 703019d0d..703019d0d 100644
--- a/gfx/anim/220.2bpp
+++ b/gfx/pics/220/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/221/anim0.asm b/gfx/pics/221/anim0.asm
new file mode 100644
index 000000000..5b57b3ef9
--- /dev/null
+++ b/gfx/pics/221/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 20
+ frame 2, 10
+ frame 3, 10
+ endanim
+; 0xd14f6
diff --git a/gfx/pics/221/anim1.asm b/gfx/pics/221/anim1.asm
new file mode 100644
index 000000000..c1cba5ee2
--- /dev/null
+++ b/gfx/pics/221/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 12
+ frame 3, 12
+ dorepeat 1
+ endanim
+; 0xd2102
diff --git a/gfx/backpics/221.2bpp b/gfx/pics/221/back.2bpp
index 04b84ae62..04b84ae62 100644
--- a/gfx/backpics/221.2bpp
+++ b/gfx/pics/221/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/221.lz b/gfx/pics/221/back.lz
index 2bdbd05b7..2bdbd05b7 100644
--- a/gfx/backpics/lz/221.lz
+++ b/gfx/pics/221/back.lz
Binary files differ
diff --git a/gfx/pics/221/bitmask.asm b/gfx/pics/221/bitmask.asm
new file mode 100644
index 000000000..ffad2c6c2
--- /dev/null
+++ b/gfx/pics/221/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00111000
+ db %10001110
+ db %11100011
+ db %00000000
+ db %00000000
+; 1
+ db %00011000
+ db %10000110
+ db %01000001
+ db %00010000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00010000
+ db %00000100
+; 0xd3808
diff --git a/gfx/pics/221/frames.asm b/gfx/pics/221/frames.asm
new file mode 100644
index 000000000..4600445b9
--- /dev/null
+++ b/gfx/pics/221/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+.frame2
+ db $01 ; bitmask
+ db $30, $31, $32, $33, $34, $35, $36, $37
+.frame3
+ db $02 ; bitmask
+ db $38, $39, $3a
+; 0xd921f
diff --git a/gfx/frontpics/221.2bpp b/gfx/pics/221/front.2bpp
index 774591a2c..774591a2c 100644
--- a/gfx/frontpics/221.2bpp
+++ b/gfx/pics/221/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/221.lz b/gfx/pics/221/front.lz
index 45b87144e..45b87144e 100644
--- a/gfx/frontpics/lz/221.lz
+++ b/gfx/pics/221/front.lz
Binary files differ
diff --git a/gfx/anim/221.2bpp b/gfx/pics/221/tiles.2bpp
index 3657ae149..3657ae149 100644
--- a/gfx/anim/221.2bpp
+++ b/gfx/pics/221/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/222/anim0.asm b/gfx/pics/222/anim0.asm
new file mode 100644
index 000000000..68182e18e
--- /dev/null
+++ b/gfx/pics/222/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 10
+ frame 2, 22
+ frame 1, 10
+ frame 0, 12
+ frame 3, 18
+ endanim
+; 0xd1501
diff --git a/gfx/pics/222/anim1.asm b/gfx/pics/222/anim1.asm
new file mode 100644
index 000000000..6360176ca
--- /dev/null
+++ b/gfx/pics/222/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd210b
diff --git a/gfx/backpics/222.2bpp b/gfx/pics/222/back.2bpp
index d0fbc6659..d0fbc6659 100644
--- a/gfx/backpics/222.2bpp
+++ b/gfx/pics/222/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/222.lz b/gfx/pics/222/back.lz
index 6707a3538..6707a3538 100644
--- a/gfx/backpics/lz/222.lz
+++ b/gfx/pics/222/back.lz
Binary files differ
diff --git a/gfx/pics/222/bitmask.asm b/gfx/pics/222/bitmask.asm
new file mode 100644
index 000000000..fd9e40e5d
--- /dev/null
+++ b/gfx/pics/222/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00010000
+ db %00000100
+ db %11000001
+ db %00000000
+ db %00000000
+; 1
+ db %00001100
+ db %00000000
+ db %00000000
+ db %00011100
+ db %00000111
+; 2
+ db %00000000
+ db %10000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3817
diff --git a/gfx/pics/222/frames.asm b/gfx/pics/222/frames.asm
new file mode 100644
index 000000000..d1bf55d3d
--- /dev/null
+++ b/gfx/pics/222/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28
+.frame2
+ db $00 ; bitmask
+ db $29, $25, $2a, $2b, $28
+.frame3
+ db $01 ; bitmask
+ db $2c, $2d, $2e, $2f, $30, $31, $32, $05
+.frame4
+ db $02 ; bitmask
+ db $33, $34
+; 0xd923f
diff --git a/gfx/frontpics/222.2bpp b/gfx/pics/222/front.2bpp
index 6252cbb69..6252cbb69 100644
--- a/gfx/frontpics/222.2bpp
+++ b/gfx/pics/222/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/222.lz b/gfx/pics/222/front.lz
index afa208922..afa208922 100644
--- a/gfx/frontpics/lz/222.lz
+++ b/gfx/pics/222/front.lz
Binary files differ
diff --git a/gfx/anim/222.2bpp b/gfx/pics/222/tiles.2bpp
index ad9ab70c4..ad9ab70c4 100644
--- a/gfx/anim/222.2bpp
+++ b/gfx/pics/222/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/223/anim0.asm b/gfx/pics/223/anim0.asm
new file mode 100644
index 000000000..5fca75d12
--- /dev/null
+++ b/gfx/pics/223/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 05
+ frame 2, 10
+ frame 3, 10
+ endanim
+; 0xd1508
diff --git a/gfx/pics/223/anim1.asm b/gfx/pics/223/anim1.asm
new file mode 100644
index 000000000..cb14bb7a7
--- /dev/null
+++ b/gfx/pics/223/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 1, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd2114
diff --git a/gfx/backpics/223.2bpp b/gfx/pics/223/back.2bpp
index 0afbb143f..0afbb143f 100644
--- a/gfx/backpics/223.2bpp
+++ b/gfx/pics/223/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/223.lz b/gfx/pics/223/back.lz
index 414d65a14..414d65a14 100644
--- a/gfx/backpics/lz/223.lz
+++ b/gfx/pics/223/back.lz
Binary files differ
diff --git a/gfx/pics/223/bitmask.asm b/gfx/pics/223/bitmask.asm
new file mode 100644
index 000000000..d9beafdb2
--- /dev/null
+++ b/gfx/pics/223/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00000111
+ db %00001000
+ db %10001100
+ db %00000001
+; 2
+ db %00000111
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd3823
diff --git a/gfx/pics/223/frames.asm b/gfx/pics/223/frames.asm
new file mode 100644
index 000000000..97dc49c3b
--- /dev/null
+++ b/gfx/pics/223/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $03, $03
+.frame3
+ db $01 ; bitmask
+ db $19, $1a, $1b, $1c, $1f, $03, $20, $21
+.frame4
+ db $02 ; bitmask
+ db $19, $1a, $1b, $1c
+; 0xd9262
diff --git a/gfx/frontpics/223.2bpp b/gfx/pics/223/front.2bpp
index ed399f90a..ed399f90a 100644
--- a/gfx/frontpics/223.2bpp
+++ b/gfx/pics/223/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/223.lz b/gfx/pics/223/front.lz
index 6d702b4a1..6d702b4a1 100644
--- a/gfx/frontpics/lz/223.lz
+++ b/gfx/pics/223/front.lz
Binary files differ
diff --git a/gfx/anim/223.2bpp b/gfx/pics/223/tiles.2bpp
index d1bd965a4..d1bd965a4 100644
--- a/gfx/anim/223.2bpp
+++ b/gfx/pics/223/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/224/anim0.asm b/gfx/pics/224/anim0.asm
new file mode 100644
index 000000000..2405d46a1
--- /dev/null
+++ b/gfx/pics/224/anim0.asm
@@ -0,0 +1,8 @@
+ frame 0, 12
+ frame 1, 24
+ setrepeat 4
+ frame 2, 05
+ frame 0, 05
+ dorepeat 3
+ endanim
+; 0xd1515
diff --git a/gfx/pics/224/anim1.asm b/gfx/pics/224/anim1.asm
new file mode 100644
index 000000000..0903a867a
--- /dev/null
+++ b/gfx/pics/224/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd211d
diff --git a/gfx/backpics/224.2bpp b/gfx/pics/224/back.2bpp
index c0ac2c0cc..c0ac2c0cc 100644
--- a/gfx/backpics/224.2bpp
+++ b/gfx/pics/224/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/224.lz b/gfx/pics/224/back.lz
index 2d12597ca..2d12597ca 100644
--- a/gfx/backpics/lz/224.lz
+++ b/gfx/pics/224/back.lz
Binary files differ
diff --git a/gfx/pics/224/bitmask.asm b/gfx/pics/224/bitmask.asm
new file mode 100644
index 000000000..904bdcd1f
--- /dev/null
+++ b/gfx/pics/224/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00011000
+ db %11101111
+ db %01100011
+ db %00001000
+ db %00000000
+; 1
+ db %00000000
+ db %11000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd3832
diff --git a/gfx/pics/224/frames.asm b/gfx/pics/224/frames.asm
new file mode 100644
index 000000000..ebfdd43ae
--- /dev/null
+++ b/gfx/pics/224/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e, $2f
+ db $30, $31
+.frame2
+ db $01 ; bitmask
+ db $32, $33, $34, $35
+.frame3
+ db $02 ; bitmask
+ db $36
+; 0xd927e
diff --git a/gfx/frontpics/224.2bpp b/gfx/pics/224/front.2bpp
index 8250a2fef..8250a2fef 100644
--- a/gfx/frontpics/224.2bpp
+++ b/gfx/pics/224/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/224.lz b/gfx/pics/224/front.lz
index 9ffec9b38..9ffec9b38 100644
--- a/gfx/frontpics/lz/224.lz
+++ b/gfx/pics/224/front.lz
Binary files differ
diff --git a/gfx/anim/224.2bpp b/gfx/pics/224/tiles.2bpp
index 8cbe5a4b5..8cbe5a4b5 100644
--- a/gfx/anim/224.2bpp
+++ b/gfx/pics/224/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/225/anim0.asm b/gfx/pics/225/anim0.asm
new file mode 100644
index 000000000..3431ad1ae
--- /dev/null
+++ b/gfx/pics/225/anim0.asm
@@ -0,0 +1,12 @@
+ frame 1, 02
+ frame 2, 10
+ setrepeat 2
+ frame 3, 09
+ frame 2, 09
+ dorepeat 3
+ frame 2, 13
+ frame 1, 02
+ frame 0, 05
+ frame 6, 05
+ endanim
+; 0xd152a
diff --git a/gfx/pics/225/anim1.asm b/gfx/pics/225/anim1.asm
new file mode 100644
index 000000000..8a416cc61
--- /dev/null
+++ b/gfx/pics/225/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 4
+ frame 4, 06
+ frame 5, 06
+ dorepeat 1
+ endanim
+; 0xd2126
diff --git a/gfx/backpics/225.2bpp b/gfx/pics/225/back.2bpp
index 8cd3ef3b9..8cd3ef3b9 100644
--- a/gfx/backpics/225.2bpp
+++ b/gfx/pics/225/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/225.lz b/gfx/pics/225/back.lz
index 22f41237c..22f41237c 100644
--- a/gfx/backpics/lz/225.lz
+++ b/gfx/pics/225/back.lz
Binary files differ
diff --git a/gfx/pics/225/bitmask.asm b/gfx/pics/225/bitmask.asm
new file mode 100644
index 000000000..f682bc2fb
--- /dev/null
+++ b/gfx/pics/225/bitmask.asm
@@ -0,0 +1,37 @@
+; 0
+ db %00000000
+ db %01000011
+ db %00000000
+ db %00000000
+ db %00000010
+; 1
+ db %00111000
+ db %01100011
+ db %00000000
+ db %10001110
+ db %00000011
+; 2
+ db %00111100
+ db %01100011
+ db %00000000
+ db %10001110
+ db %00000011
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000010
+; 4
+ db %00111000
+ db %00000010
+ db %00000000
+ db %10001110
+ db %00000011
+; 5
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3850
diff --git a/gfx/pics/225/frames.asm b/gfx/pics/225/frames.asm
new file mode 100644
index 000000000..625f5ae8a
--- /dev/null
+++ b/gfx/pics/225/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27
+.frame2
+ db $01 ; bitmask
+ db $28, $29, $2a, $24, $2b, $2c, $26, $2d, $2e, $2f, $30, $31
+ db $32
+.frame3
+ db $02 ; bitmask
+ db $33, $34, $29, $2a, $35, $36, $2c, $26, $2d, $2e, $2f, $30
+ db $31, $32
+.frame4
+ db $03 ; bitmask
+ db $27
+.frame5
+ db $04 ; bitmask
+ db $28, $29, $2a, $25, $2d, $2e, $2f, $30, $31, $32
+.frame6
+ db $05 ; bitmask
+ db $2c
+; 0xd92bb
diff --git a/gfx/frontpics/225.2bpp b/gfx/pics/225/front.2bpp
index 6603cb380..6603cb380 100644
--- a/gfx/frontpics/225.2bpp
+++ b/gfx/pics/225/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/225.lz b/gfx/pics/225/front.lz
index 819e46af0..819e46af0 100644
--- a/gfx/frontpics/lz/225.lz
+++ b/gfx/pics/225/front.lz
Binary files differ
diff --git a/gfx/anim/225.2bpp b/gfx/pics/225/tiles.2bpp
index 926dee7fa..926dee7fa 100644
--- a/gfx/anim/225.2bpp
+++ b/gfx/pics/225/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/226/anim0.asm b/gfx/pics/226/anim0.asm
new file mode 100644
index 000000000..d0a51de3e
--- /dev/null
+++ b/gfx/pics/226/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 15
+ frame 2, 15
+ frame 3, 15
+ frame 0, 15
+ frame 4, 15
+ frame 0, 15
+ frame 5, 15
+ endanim
+; 0xd1539
diff --git a/gfx/pics/226/anim1.asm b/gfx/pics/226/anim1.asm
new file mode 100644
index 000000000..f552b1f09
--- /dev/null
+++ b/gfx/pics/226/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 6, 08
+ dorepeat 1
+ endanim
+; 0xd212f
diff --git a/gfx/backpics/226.2bpp b/gfx/pics/226/back.2bpp
index eb72373de..eb72373de 100644
--- a/gfx/backpics/226.2bpp
+++ b/gfx/pics/226/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/226.lz b/gfx/pics/226/back.lz
index 3378e2df5..3378e2df5 100644
--- a/gfx/backpics/lz/226.lz
+++ b/gfx/pics/226/back.lz
Binary files differ
diff --git a/gfx/pics/226/bitmask.asm b/gfx/pics/226/bitmask.asm
new file mode 100644
index 000000000..30756d325
--- /dev/null
+++ b/gfx/pics/226/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %01110000
+ db %00110000
+ db %00011010
+ db %00110000
+ db %00011000
+ db %00011100
+ db %00000000
+; 1
+ db %00000000
+ db %00000000
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %01100000
+ db %00110000
+ db %00000010
+ db %00110000
+ db %00011000
+ db %00001100
+ db %00000000
+; 3
+ db %01110000
+ db %00110000
+ db %00011000
+ db %00110000
+ db %00011000
+ db %00011100
+ db %00000000
+; 4
+ db %01100000
+ db %00110000
+ db %00000000
+ db %00110000
+ db %00011000
+ db %00001100
+ db %00000000
+; 5
+ db %00000000
+ db %00000100
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd387a
diff --git a/gfx/pics/226/frames.asm b/gfx/pics/226/frames.asm
new file mode 100644
index 000000000..37768e7e5
--- /dev/null
+++ b/gfx/pics/226/frames.asm
@@ -0,0 +1,27 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b, $3c
+ db $3d, $3e, $3f
+.frame2
+ db $01 ; bitmask
+ db $36
+.frame3
+ db $02 ; bitmask
+ db $40, $41, $42, $43, $36, $04, $44, $45, $46, $47, $48
+.frame4
+ db $03 ; bitmask
+ db $31, $32, $33, $34, $35, $37, $38, $39, $3a, $3b, $3c, $3d
+ db $3e, $3f
+.frame5
+ db $04 ; bitmask
+ db $40, $41, $42, $43, $04, $44, $45, $46, $47, $48
+.frame6
+ db $05 ; bitmask
+ db $49, $4a
+; 0xd9302
diff --git a/gfx/frontpics/226.2bpp b/gfx/pics/226/front.2bpp
index 6da57c6f4..6da57c6f4 100644
--- a/gfx/frontpics/226.2bpp
+++ b/gfx/pics/226/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/226.lz b/gfx/pics/226/front.lz
index 6ebc14050..6ebc14050 100644
--- a/gfx/frontpics/lz/226.lz
+++ b/gfx/pics/226/front.lz
Binary files differ
diff --git a/gfx/anim/226.2bpp b/gfx/pics/226/tiles.2bpp
index e50ef97af..e50ef97af 100644
--- a/gfx/anim/226.2bpp
+++ b/gfx/pics/226/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/227/anim0.asm b/gfx/pics/227/anim0.asm
new file mode 100644
index 000000000..64c2bfaf0
--- /dev/null
+++ b/gfx/pics/227/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 3
+ frame 1, 09
+ frame 2, 09
+ dorepeat 1
+ frame 1, 08
+ endanim
+; 0xd1544
diff --git a/gfx/pics/227/anim1.asm b/gfx/pics/227/anim1.asm
new file mode 100644
index 000000000..1853c881f
--- /dev/null
+++ b/gfx/pics/227/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd2138
diff --git a/gfx/backpics/227.2bpp b/gfx/pics/227/back.2bpp
index 65c892e8b..65c892e8b 100644
--- a/gfx/backpics/227.2bpp
+++ b/gfx/pics/227/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/227.lz b/gfx/pics/227/back.lz
index fca13d16a..fca13d16a 100644
--- a/gfx/backpics/lz/227.lz
+++ b/gfx/pics/227/back.lz
Binary files differ
diff --git a/gfx/pics/227/bitmask.asm b/gfx/pics/227/bitmask.asm
new file mode 100644
index 000000000..e31550d83
--- /dev/null
+++ b/gfx/pics/227/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10000110
+ db %11000011
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10001111
+ db %11000111
+ db %11000001
+ db %11110001
+ db %01111000
+ db %00111100
+ db %00000000
+; 0xd3888
diff --git a/gfx/pics/227/frames.asm b/gfx/pics/227/frames.asm
new file mode 100644
index 000000000..f0eb2f4c6
--- /dev/null
+++ b/gfx/pics/227/frames.asm
@@ -0,0 +1,11 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $39, $3a, $3b, $04, $33, $34, $3c, $3d, $36, $37, $38, $3e
+ db $3f, $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $4a
+ db $4b, $04
+; 0xd932a
diff --git a/gfx/frontpics/227.2bpp b/gfx/pics/227/front.2bpp
index d70b4fe6d..d70b4fe6d 100644
--- a/gfx/frontpics/227.2bpp
+++ b/gfx/pics/227/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/227.lz b/gfx/pics/227/front.lz
index e53f5a9ef..e53f5a9ef 100644
--- a/gfx/frontpics/lz/227.lz
+++ b/gfx/pics/227/front.lz
Binary files differ
diff --git a/gfx/anim/227.2bpp b/gfx/pics/227/tiles.2bpp
index edbf59b15..edbf59b15 100644
--- a/gfx/anim/227.2bpp
+++ b/gfx/pics/227/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/228/anim0.asm b/gfx/pics/228/anim0.asm
new file mode 100644
index 000000000..2235850c0
--- /dev/null
+++ b/gfx/pics/228/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 05
+ frame 2, 05
+ frame 1, 05
+ frame 0, 07
+ frame 3, 07
+ endanim
+; 0xd154f
diff --git a/gfx/pics/228/anim1.asm b/gfx/pics/228/anim1.asm
new file mode 100644
index 000000000..dd8318689
--- /dev/null
+++ b/gfx/pics/228/anim1.asm
@@ -0,0 +1,8 @@
+ frame 0, 08
+ setrepeat 2
+ frame 3, 07
+ frame 4, 07
+ dorepeat 2
+ frame 3, 16
+ endanim
+; 0xd2145
diff --git a/gfx/backpics/228.2bpp b/gfx/pics/228/back.2bpp
index 22c18edf4..22c18edf4 100644
--- a/gfx/backpics/228.2bpp
+++ b/gfx/pics/228/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/228.lz b/gfx/pics/228/back.lz
index fe3584bd1..fe3584bd1 100644
--- a/gfx/backpics/lz/228.lz
+++ b/gfx/pics/228/back.lz
Binary files differ
diff --git a/gfx/pics/228/bitmask.asm b/gfx/pics/228/bitmask.asm
new file mode 100644
index 000000000..1542871bd
--- /dev/null
+++ b/gfx/pics/228/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %11001110
+ db %11100011
+ db %00011000
+ db %00001100
+ db %00000011
+; 1
+ db %11001110
+ db %11100011
+ db %00001000
+ db %00000000
+ db %00000000
+; 2
+ db %00001000
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00001000
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd389c
diff --git a/gfx/pics/228/frames.asm b/gfx/pics/228/frames.asm
new file mode 100644
index 000000000..6087e14b7
--- /dev/null
+++ b/gfx/pics/228/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $24, $25, $00, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+ db $2e, $2f, $30, $00
+.frame2
+ db $01 ; bitmask
+ db $00, $24, $25, $00, $26, $27, $28, $29, $2a, $2b, $2c
+.frame3
+ db $02 ; bitmask
+ db $31, $32
+.frame4
+ db $03 ; bitmask
+ db $31, $33, $32
+; 0xd9356
diff --git a/gfx/frontpics/228.2bpp b/gfx/pics/228/front.2bpp
index 378d7447d..378d7447d 100644
--- a/gfx/frontpics/228.2bpp
+++ b/gfx/pics/228/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/228.lz b/gfx/pics/228/front.lz
index 786c0f9a4..786c0f9a4 100644
--- a/gfx/frontpics/lz/228.lz
+++ b/gfx/pics/228/front.lz
Binary files differ
diff --git a/gfx/anim/228.2bpp b/gfx/pics/228/tiles.2bpp
index 1f5701799..1f5701799 100644
--- a/gfx/anim/228.2bpp
+++ b/gfx/pics/228/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/229/anim0.asm b/gfx/pics/229/anim0.asm
new file mode 100644
index 000000000..60ad08726
--- /dev/null
+++ b/gfx/pics/229/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 11
+ setrepeat 9
+ frame 2, 02
+ frame 3, 02
+ dorepeat 2
+ frame 2, 04
+ frame 3, 04
+ frame 4, 08
+ endanim
+; 0xd1560
diff --git a/gfx/pics/229/anim1.asm b/gfx/pics/229/anim1.asm
new file mode 100644
index 000000000..78fa8610c
--- /dev/null
+++ b/gfx/pics/229/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 12
+ frame 5, 12
+ dorepeat 1
+ endanim
+; 0xd214e
diff --git a/gfx/backpics/229.2bpp b/gfx/pics/229/back.2bpp
index 8fd707725..8fd707725 100644
--- a/gfx/backpics/229.2bpp
+++ b/gfx/pics/229/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/229.lz b/gfx/pics/229/back.lz
index 5b7b72ffc..5b7b72ffc 100644
--- a/gfx/backpics/lz/229.lz
+++ b/gfx/pics/229/back.lz
Binary files differ
diff --git a/gfx/pics/229/bitmask.asm b/gfx/pics/229/bitmask.asm
new file mode 100644
index 000000000..8280ba2ce
--- /dev/null
+++ b/gfx/pics/229/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10000111
+ db %11111011
+ db %01111101
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10000111
+ db %11000011
+ db %01100001
+ db %00100000
+ db %00010000
+ db %00000000
+ db %00000000
+; 2
+ db %10000111
+ db %11000011
+ db %01100001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00010000
+ db %00000000
+ db %00000000
+; 0xd38b8
diff --git a/gfx/pics/229/frames.asm b/gfx/pics/229/frames.asm
new file mode 100644
index 000000000..0241edf36
--- /dev/null
+++ b/gfx/pics/229/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $03, $31, $32, $33, $34, $35, $36, $37, $03, $38, $39, $3a
+ db $3b, $3c, $03, $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $03, $3f, $40, $33, $41, $35, $38, $39, $3a, $3d, $3e, $42
+ db $43
+.frame3
+ db $01 ; bitmask
+ db $44, $45, $46, $47, $48, $49, $4a, $4b, $4c, $4d, $4e, $42
+ db $43
+.frame4
+ db $02 ; bitmask
+ db $03, $3f, $40, $33, $41, $35, $38, $39, $3a, $3d, $3e
+.frame5
+ db $03 ; bitmask
+ db $42, $43
+; 0xd939d
diff --git a/gfx/frontpics/229.2bpp b/gfx/pics/229/front.2bpp
index ae2beb0ec..ae2beb0ec 100644
--- a/gfx/frontpics/229.2bpp
+++ b/gfx/pics/229/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/229.lz b/gfx/pics/229/front.lz
index c2ce34ee3..c2ce34ee3 100644
--- a/gfx/frontpics/lz/229.lz
+++ b/gfx/pics/229/front.lz
Binary files differ
diff --git a/gfx/anim/229.2bpp b/gfx/pics/229/tiles.2bpp
index 89738fb53..89738fb53 100644
--- a/gfx/anim/229.2bpp
+++ b/gfx/pics/229/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/230/anim0.asm b/gfx/pics/230/anim0.asm
new file mode 100644
index 000000000..c7bc2991f
--- /dev/null
+++ b/gfx/pics/230/anim0.asm
@@ -0,0 +1,10 @@
+ frame 1, 12
+ frame 2, 12
+ frame 3, 12
+ frame 0, 12
+ setrepeat 3
+ frame 4, 06
+ frame 5, 06
+ dorepeat 5
+ endanim
+; 0xd1571
diff --git a/gfx/pics/230/anim1.asm b/gfx/pics/230/anim1.asm
new file mode 100644
index 000000000..2ec7e99ae
--- /dev/null
+++ b/gfx/pics/230/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 6, 06
+ dorepeat 1
+ endanim
+; 0xd2157
diff --git a/gfx/backpics/230.2bpp b/gfx/pics/230/back.2bpp
index b176f7dac..b176f7dac 100644
--- a/gfx/backpics/230.2bpp
+++ b/gfx/pics/230/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/230.lz b/gfx/pics/230/back.lz
index 9f2c38b6c..9f2c38b6c 100644
--- a/gfx/backpics/lz/230.lz
+++ b/gfx/pics/230/back.lz
Binary files differ
diff --git a/gfx/pics/230/bitmask.asm b/gfx/pics/230/bitmask.asm
new file mode 100644
index 000000000..0c9026f1e
--- /dev/null
+++ b/gfx/pics/230/bitmask.asm
@@ -0,0 +1,49 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00001100
+ db %10000111
+ db %00000110
+ db %00000000
+ db %00000000
+; 1
+ db %00110000
+ db %00111100
+ db %00011100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00110000
+ db %10111111
+ db %01011101
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %11000000
+ db %01100000
+ db %00000000
+; 4
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+; 5
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd38e2
diff --git a/gfx/pics/230/frames.asm b/gfx/pics/230/frames.asm
new file mode 100644
index 000000000..f4e3d8d77
--- /dev/null
+++ b/gfx/pics/230/frames.asm
@@ -0,0 +1,26 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $00, $39, $3a, $3b, $3c, $3d, $3e
+.frame3
+ db $02 ; bitmask
+ db $00, $00, $3f, $40, $00, $39, $3a, $3b, $41, $42, $3c, $3d
+ db $3e, $43
+.frame4
+ db $03 ; bitmask
+ db $44, $45, $46, $47
+.frame5
+ db $04 ; bitmask
+ db $48
+.frame6
+ db $05 ; bitmask
+ db $49, $4a
+; 0xd93d5
diff --git a/gfx/frontpics/230.2bpp b/gfx/pics/230/front.2bpp
index ea789a092..ea789a092 100644
--- a/gfx/frontpics/230.2bpp
+++ b/gfx/pics/230/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/230.lz b/gfx/pics/230/front.lz
index d28a4dc78..d28a4dc78 100644
--- a/gfx/frontpics/lz/230.lz
+++ b/gfx/pics/230/front.lz
Binary files differ
diff --git a/gfx/anim/230.2bpp b/gfx/pics/230/tiles.2bpp
index b762eb44a..b762eb44a 100644
--- a/gfx/anim/230.2bpp
+++ b/gfx/pics/230/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/231/anim0.asm b/gfx/pics/231/anim0.asm
new file mode 100644
index 000000000..7ec513762
--- /dev/null
+++ b/gfx/pics/231/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 10
+ frame 2, 10
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 3
+ endanim
+; 0xd157e
diff --git a/gfx/pics/231/anim1.asm b/gfx/pics/231/anim1.asm
new file mode 100644
index 000000000..43148da49
--- /dev/null
+++ b/gfx/pics/231/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd2160
diff --git a/gfx/backpics/231.2bpp b/gfx/pics/231/back.2bpp
index 89cf6f7cd..89cf6f7cd 100644
--- a/gfx/backpics/231.2bpp
+++ b/gfx/pics/231/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/231.lz b/gfx/pics/231/back.lz
index cef1bf442..cef1bf442 100644
--- a/gfx/backpics/lz/231.lz
+++ b/gfx/pics/231/back.lz
Binary files differ
diff --git a/gfx/pics/231/bitmask.asm b/gfx/pics/231/bitmask.asm
new file mode 100644
index 000000000..d0f5c0721
--- /dev/null
+++ b/gfx/pics/231/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %11000111
+ db %00111000
+ db %01100110
+ db %00000000
+; 1
+ db %11000111
+ db %00110000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd38ee
diff --git a/gfx/pics/231/frames.asm b/gfx/pics/231/frames.asm
new file mode 100644
index 000000000..f41904d8b
--- /dev/null
+++ b/gfx/pics/231/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23, $24
+.frame2
+ db $01 ; bitmask
+ db $19, $1a, $25, $1c, $26, $1f, $20
+.frame3
+ db $02 ; bitmask
+ db $1e
+; 0xd93f2
diff --git a/gfx/frontpics/231.2bpp b/gfx/pics/231/front.2bpp
index 23123be12..23123be12 100644
--- a/gfx/frontpics/231.2bpp
+++ b/gfx/pics/231/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/231.lz b/gfx/pics/231/front.lz
index d919487b8..d919487b8 100644
--- a/gfx/frontpics/lz/231.lz
+++ b/gfx/pics/231/front.lz
Binary files differ
diff --git a/gfx/anim/231.2bpp b/gfx/pics/231/tiles.2bpp
index 742277d77..742277d77 100644
--- a/gfx/anim/231.2bpp
+++ b/gfx/pics/231/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/232/anim0.asm b/gfx/pics/232/anim0.asm
new file mode 100644
index 000000000..fbfbd8d17
--- /dev/null
+++ b/gfx/pics/232/anim0.asm
@@ -0,0 +1,6 @@
+ frame 2, 08
+ frame 1, 24
+ frame 3, 10
+ frame 4, 06
+ endanim
+; 0xd1587
diff --git a/gfx/pics/232/anim1.asm b/gfx/pics/232/anim1.asm
new file mode 100644
index 000000000..341013ce9
--- /dev/null
+++ b/gfx/pics/232/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd2169
diff --git a/gfx/backpics/232.2bpp b/gfx/pics/232/back.2bpp
index abb01098d..abb01098d 100644
--- a/gfx/backpics/232.2bpp
+++ b/gfx/pics/232/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/232.lz b/gfx/pics/232/back.lz
index 4914f03aa..4914f03aa 100644
--- a/gfx/backpics/lz/232.lz
+++ b/gfx/pics/232/back.lz
Binary files differ
diff --git a/gfx/pics/232/bitmask.asm b/gfx/pics/232/bitmask.asm
new file mode 100644
index 000000000..6891e612a
--- /dev/null
+++ b/gfx/pics/232/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00111110
+ db %00111111
+ db %00011110
+ db %00001100
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00111110
+ db %00111111
+ db %00011110
+ db %00001000
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00110000
+ db %00011000
+ db %00001100
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000010
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd390a
diff --git a/gfx/pics/232/frames.asm b/gfx/pics/232/frames.asm
new file mode 100644
index 000000000..b78166e26
--- /dev/null
+++ b/gfx/pics/232/frames.asm
@@ -0,0 +1,24 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $00, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $00
+.frame2
+ db $00 ; bitmask
+ db $40, $41, $33, $34, $00, $42, $43, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $00
+.frame3
+ db $01 ; bitmask
+ db $40, $41, $33, $34, $00, $42, $43, $37, $38, $39, $3a, $3b
+ db $3c, $44, $3e, $00
+.frame4
+ db $02 ; bitmask
+ db $45, $46, $47, $48, $49, $00
+.frame5
+ db $03 ; bitmask
+ db $4a
+; 0xd943a
diff --git a/gfx/frontpics/232.2bpp b/gfx/pics/232/front.2bpp
index 0ef2d59aa..0ef2d59aa 100644
--- a/gfx/frontpics/232.2bpp
+++ b/gfx/pics/232/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/232.lz b/gfx/pics/232/front.lz
index b46d083fc..b46d083fc 100644
--- a/gfx/frontpics/lz/232.lz
+++ b/gfx/pics/232/front.lz
Binary files differ
diff --git a/gfx/anim/232.2bpp b/gfx/pics/232/tiles.2bpp
index 5ab683c40..5ab683c40 100644
--- a/gfx/anim/232.2bpp
+++ b/gfx/pics/232/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/233/anim0.asm b/gfx/pics/233/anim0.asm
new file mode 100644
index 000000000..b94920e29
--- /dev/null
+++ b/gfx/pics/233/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 1, 06
+ frame 2, 08
+ frame 0, 06
+ dorepeat 1
+ endanim
+; 0xd1592
diff --git a/gfx/pics/233/anim1.asm b/gfx/pics/233/anim1.asm
new file mode 100644
index 000000000..b3a029047
--- /dev/null
+++ b/gfx/pics/233/anim1.asm
@@ -0,0 +1,3 @@
+ frame 3, 30
+ endanim
+; 0xd216c
diff --git a/gfx/backpics/233.2bpp b/gfx/pics/233/back.2bpp
index 822db05ab..822db05ab 100644
--- a/gfx/backpics/233.2bpp
+++ b/gfx/pics/233/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/233.lz b/gfx/pics/233/back.lz
index 5be528963..5be528963 100644
--- a/gfx/backpics/lz/233.lz
+++ b/gfx/pics/233/back.lz
Binary files differ
diff --git a/gfx/pics/233/bitmask.asm b/gfx/pics/233/bitmask.asm
new file mode 100644
index 000000000..c20f48420
--- /dev/null
+++ b/gfx/pics/233/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %00000000
+ db %10000110
+ db %11100011
+ db %00011000
+ db %00000000
+; 1
+ db %11000011
+ db %11110111
+ db %11111111
+ db %00011010
+ db %00000000
+; 2
+ db %11000011
+ db %01110001
+ db %00011100
+ db %00000010
+ db %00000000
+; 0xd3919
diff --git a/gfx/pics/233/frames.asm b/gfx/pics/233/frames.asm
new file mode 100644
index 000000000..52d425937
--- /dev/null
+++ b/gfx/pics/233/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame2
+ db $01 ; bitmask
+ db $2e, $02, $2f, $30, $02, $24, $25, $31, $32, $33, $26, $27
+ db $28, $34, $35, $36, $29, $2a, $2b, $37, $2c, $2d
+.frame3
+ db $02 ; bitmask
+ db $2e, $02, $2f, $30, $02, $31, $32, $33, $34, $35, $36, $37
+; 0xd946f
diff --git a/gfx/frontpics/233.2bpp b/gfx/pics/233/front.2bpp
index 5e33963d0..5e33963d0 100644
--- a/gfx/frontpics/233.2bpp
+++ b/gfx/pics/233/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/233.lz b/gfx/pics/233/front.lz
index 5e66bb54d..5e66bb54d 100644
--- a/gfx/frontpics/lz/233.lz
+++ b/gfx/pics/233/front.lz
Binary files differ
diff --git a/gfx/anim/233.2bpp b/gfx/pics/233/tiles.2bpp
index 05e67a2cd..05e67a2cd 100644
--- a/gfx/anim/233.2bpp
+++ b/gfx/pics/233/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/234/anim0.asm b/gfx/pics/234/anim0.asm
new file mode 100644
index 000000000..8f4c133d8
--- /dev/null
+++ b/gfx/pics/234/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 14
+ frame 0, 12
+ frame 1, 14
+ frame 0, 22
+ frame 2, 08
+ frame 0, 08
+ frame 2, 08
+ endanim
+; 0xd15a1
diff --git a/gfx/pics/234/anim1.asm b/gfx/pics/234/anim1.asm
new file mode 100644
index 000000000..7444d761a
--- /dev/null
+++ b/gfx/pics/234/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd2175
diff --git a/gfx/backpics/234.2bpp b/gfx/pics/234/back.2bpp
index 1a9f9992f..1a9f9992f 100644
--- a/gfx/backpics/234.2bpp
+++ b/gfx/pics/234/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/234.lz b/gfx/pics/234/back.lz
index a0ab53039..a0ab53039 100644
--- a/gfx/backpics/lz/234.lz
+++ b/gfx/pics/234/back.lz
Binary files differ
diff --git a/gfx/pics/234/bitmask.asm b/gfx/pics/234/bitmask.asm
new file mode 100644
index 000000000..3387fe45d
--- /dev/null
+++ b/gfx/pics/234/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %00010000
+ db %00001000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %00011110
+ db %10011111
+ db %11001111
+ db %11100111
+ db %11100001
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %00001000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd392e
diff --git a/gfx/pics/234/frames.asm b/gfx/pics/234/frames.asm
new file mode 100644
index 000000000..4a82b45b2
--- /dev/null
+++ b/gfx/pics/234/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $31, $32
+.frame2
+ db $01 ; bitmask
+ db $00, $33, $34, $35, $00, $00, $36, $37, $00, $38, $39, $3a
+ db $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46
+ db $47, $48
+.frame3
+ db $02 ; bitmask
+ db $49, $4a
+; 0xd9496
diff --git a/gfx/frontpics/234.2bpp b/gfx/pics/234/front.2bpp
index a72fe4f59..a72fe4f59 100644
--- a/gfx/frontpics/234.2bpp
+++ b/gfx/pics/234/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/234.lz b/gfx/pics/234/front.lz
index 87a56e667..87a56e667 100644
--- a/gfx/frontpics/lz/234.lz
+++ b/gfx/pics/234/front.lz
Binary files differ
diff --git a/gfx/anim/234.2bpp b/gfx/pics/234/tiles.2bpp
index f962f1fd4..f962f1fd4 100644
--- a/gfx/anim/234.2bpp
+++ b/gfx/pics/234/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/235/anim0.asm b/gfx/pics/235/anim0.asm
new file mode 100644
index 000000000..2144197fc
--- /dev/null
+++ b/gfx/pics/235/anim0.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 07
+ frame 2, 07
+ frame 1, 07
+ dorepeat 1
+ endanim
+; 0xd15ac
diff --git a/gfx/pics/235/anim1.asm b/gfx/pics/235/anim1.asm
new file mode 100644
index 000000000..178b14959
--- /dev/null
+++ b/gfx/pics/235/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 08
+ frame 3, 08
+ dorepeat 1
+ endanim
+; 0xd217e
diff --git a/gfx/backpics/235.2bpp b/gfx/pics/235/back.2bpp
index 20537d183..20537d183 100644
--- a/gfx/backpics/235.2bpp
+++ b/gfx/pics/235/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/235.lz b/gfx/pics/235/back.lz
index eb96bfd07..eb96bfd07 100644
--- a/gfx/backpics/lz/235.lz
+++ b/gfx/pics/235/back.lz
Binary files differ
diff --git a/gfx/pics/235/bitmask.asm b/gfx/pics/235/bitmask.asm
new file mode 100644
index 000000000..3832cd2d6
--- /dev/null
+++ b/gfx/pics/235/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00001100
+ db %10001110
+ db %11010111
+ db %00001001
+ db %00000000
+ db %10000000
+ db %00000001
+; 1
+ db %00011100
+ db %00001110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %10000000
+ db %00000001
+; 2
+ db %00000000
+ db %00000000
+ db %00010000
+ db %00001000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3943
diff --git a/gfx/pics/235/frames.asm b/gfx/pics/235/frames.asm
new file mode 100644
index 000000000..902177d75
--- /dev/null
+++ b/gfx/pics/235/frames.asm
@@ -0,0 +1,14 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $00, $31, $00, $00, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d
+.frame2
+ db $01 ; bitmask
+ db $00, $3e, $3f, $00, $40, $41, $42, $43, $44, $3c, $3d
+.frame3
+ db $02 ; bitmask
+ db $37, $3b
+; 0xd94bc
diff --git a/gfx/frontpics/235.2bpp b/gfx/pics/235/front.2bpp
index 2616ae6e1..2616ae6e1 100644
--- a/gfx/frontpics/235.2bpp
+++ b/gfx/pics/235/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/235.lz b/gfx/pics/235/front.lz
index 81be921d5..81be921d5 100644
--- a/gfx/frontpics/lz/235.lz
+++ b/gfx/pics/235/front.lz
Binary files differ
diff --git a/gfx/anim/235.2bpp b/gfx/pics/235/tiles.2bpp
index baca61d6b..baca61d6b 100644
--- a/gfx/anim/235.2bpp
+++ b/gfx/pics/235/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/236/anim0.asm b/gfx/pics/236/anim0.asm
new file mode 100644
index 000000000..e1470d816
--- /dev/null
+++ b/gfx/pics/236/anim0.asm
@@ -0,0 +1,7 @@
+ frame 1, 08
+ setrepeat 4
+ frame 2, 05
+ frame 3, 06
+ dorepeat 2
+ endanim
+; 0xd15b7
diff --git a/gfx/pics/236/anim1.asm b/gfx/pics/236/anim1.asm
new file mode 100644
index 000000000..da73f62e3
--- /dev/null
+++ b/gfx/pics/236/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 05
+ dorepeat 1
+ endanim
+; 0xd2187
diff --git a/gfx/backpics/236.2bpp b/gfx/pics/236/back.2bpp
index aa2307068..aa2307068 100644
--- a/gfx/backpics/236.2bpp
+++ b/gfx/pics/236/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/236.lz b/gfx/pics/236/back.lz
index 9c9a0babc..9c9a0babc 100644
--- a/gfx/backpics/lz/236.lz
+++ b/gfx/pics/236/back.lz
Binary files differ
diff --git a/gfx/pics/236/bitmask.asm b/gfx/pics/236/bitmask.asm
new file mode 100644
index 000000000..df8e0658d
--- /dev/null
+++ b/gfx/pics/236/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %10011100
+ db %00110001
+ db %01100000
+ db %00000000
+; 1
+ db %10011100
+ db %00010001
+ db %01100000
+ db %00000000
+; 2
+ db %01000000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd394f
diff --git a/gfx/pics/236/frames.asm b/gfx/pics/236/frames.asm
new file mode 100644
index 000000000..9ed82ce41
--- /dev/null
+++ b/gfx/pics/236/frames.asm
@@ -0,0 +1,17 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $00, $00, $00, $19, $1a, $1b, $1c, $1d, $1e
+.frame2
+ db $01 ; bitmask
+ db $1f, $20, $00, $21, $22, $23, $1d, $1e
+.frame3
+ db $01 ; bitmask
+ db $24, $20, $00, $25, $22, $23, $1d, $1e
+.frame4
+ db $02 ; bitmask
+ db $26, $27
+; 0xd94e3
diff --git a/gfx/frontpics/236.2bpp b/gfx/pics/236/front.2bpp
index f19e5092a..f19e5092a 100644
--- a/gfx/frontpics/236.2bpp
+++ b/gfx/pics/236/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/236.lz b/gfx/pics/236/front.lz
index 8245825fb..8245825fb 100644
--- a/gfx/frontpics/lz/236.lz
+++ b/gfx/pics/236/front.lz
Binary files differ
diff --git a/gfx/anim/236.2bpp b/gfx/pics/236/tiles.2bpp
index 64e2d9731..64e2d9731 100644
--- a/gfx/anim/236.2bpp
+++ b/gfx/pics/236/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/237/anim0.asm b/gfx/pics/237/anim0.asm
new file mode 100644
index 000000000..195f1554b
--- /dev/null
+++ b/gfx/pics/237/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 12
+ frame 4, 05
+ setrepeat 4
+ frame 2, 08
+ frame 3, 08
+ dorepeat 3
+ frame 4, 25
+ endanim
+; 0xd15c6
diff --git a/gfx/pics/237/anim1.asm b/gfx/pics/237/anim1.asm
new file mode 100644
index 000000000..3b4f17403
--- /dev/null
+++ b/gfx/pics/237/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 4, 08
+ frame 0, 08
+ dorepeat 1
+ frame 4, 30
+ endanim
+; 0xd2192
diff --git a/gfx/backpics/237.2bpp b/gfx/pics/237/back.2bpp
index e636b64a9..e636b64a9 100644
--- a/gfx/backpics/237.2bpp
+++ b/gfx/pics/237/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/237.lz b/gfx/pics/237/back.lz
index 185f08aff..185f08aff 100644
--- a/gfx/backpics/lz/237.lz
+++ b/gfx/pics/237/back.lz
Binary files differ
diff --git a/gfx/pics/237/bitmask.asm b/gfx/pics/237/bitmask.asm
new file mode 100644
index 000000000..36c8a6a26
--- /dev/null
+++ b/gfx/pics/237/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %00000000
+ db %00001010
+ db %10000101
+ db %01000000
+ db %00000000
+ db %00000000
+; 1
+ db %00111110
+ db %10011111
+ db %11001111
+ db %11100111
+ db %11111011
+ db %11011001
+ db %00000000
+; 2
+ db %00000000
+ db %11000100
+ db %01101010
+ db %10000101
+ db %01000000
+ db %00001000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00001000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd396b
diff --git a/gfx/pics/237/frames.asm b/gfx/pics/237/frames.asm
new file mode 100644
index 000000000..74db7ebe7
--- /dev/null
+++ b/gfx/pics/237/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $00
+.frame2
+ db $01 ; bitmask
+ db $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $36, $37
+ db $38, $39, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43
+ db $44, $00, $00, $00, $45, $46, $00, $00, $00, $00, $00
+.frame3
+ db $02 ; bitmask
+ db $47, $48, $49, $4a, $32, $4b, $4c, $4d, $34, $4e, $00, $4f
+.frame4
+ db $03 ; bitmask
+ db $32, $34
+; 0xd9526
diff --git a/gfx/frontpics/237.2bpp b/gfx/pics/237/front.2bpp
index 55a401591..55a401591 100644
--- a/gfx/frontpics/237.2bpp
+++ b/gfx/pics/237/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/237.lz b/gfx/pics/237/front.lz
index d28913fcf..d28913fcf 100644
--- a/gfx/frontpics/lz/237.lz
+++ b/gfx/pics/237/front.lz
Binary files differ
diff --git a/gfx/anim/237.2bpp b/gfx/pics/237/tiles.2bpp
index ae3e47270..ae3e47270 100644
--- a/gfx/anim/237.2bpp
+++ b/gfx/pics/237/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/238/anim0.asm b/gfx/pics/238/anim0.asm
new file mode 100644
index 000000000..39f5e7ebe
--- /dev/null
+++ b/gfx/pics/238/anim0.asm
@@ -0,0 +1,5 @@
+ frame 1, 06
+ frame 2, 08
+ frame 3, 24
+ endanim
+; 0xd15cd
diff --git a/gfx/pics/238/anim1.asm b/gfx/pics/238/anim1.asm
new file mode 100644
index 000000000..5ba02f113
--- /dev/null
+++ b/gfx/pics/238/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 1, 06
+ dorepeat 1
+ endanim
+; 0xd219b
diff --git a/gfx/backpics/238.2bpp b/gfx/pics/238/back.2bpp
index 71c745eaa..71c745eaa 100644
--- a/gfx/backpics/238.2bpp
+++ b/gfx/pics/238/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/238.lz b/gfx/pics/238/back.lz
index 52c256c16..52c256c16 100644
--- a/gfx/backpics/lz/238.lz
+++ b/gfx/pics/238/back.lz
Binary files differ
diff --git a/gfx/pics/238/bitmask.asm b/gfx/pics/238/bitmask.asm
new file mode 100644
index 000000000..5d4f3f9bd
--- /dev/null
+++ b/gfx/pics/238/bitmask.asm
@@ -0,0 +1,11 @@
+; 0
+ db %10000000
+ db %00010000
+ db %00000010
+ db %00000000
+; 1
+ db %10000000
+ db %00110001
+ db %00000010
+ db %00000000
+; 0xd3973
diff --git a/gfx/pics/238/frames.asm b/gfx/pics/238/frames.asm
new file mode 100644
index 000000000..53f48d1b8
--- /dev/null
+++ b/gfx/pics/238/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b
+.frame2
+ db $01 ; bitmask
+ db $1c, $1d, $1e, $1f, $20
+.frame3
+ db $01 ; bitmask
+ db $21, $22, $23, $24, $25
+; 0xd953c
diff --git a/gfx/frontpics/238.2bpp b/gfx/pics/238/front.2bpp
index b310969e6..b310969e6 100644
--- a/gfx/frontpics/238.2bpp
+++ b/gfx/pics/238/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/238.lz b/gfx/pics/238/front.lz
index cd4b75761..cd4b75761 100644
--- a/gfx/frontpics/lz/238.lz
+++ b/gfx/pics/238/front.lz
Binary files differ
diff --git a/gfx/anim/238.2bpp b/gfx/pics/238/tiles.2bpp
index 17d82ec69..17d82ec69 100644
--- a/gfx/anim/238.2bpp
+++ b/gfx/pics/238/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/239/anim0.asm b/gfx/pics/239/anim0.asm
new file mode 100644
index 000000000..590dccf14
--- /dev/null
+++ b/gfx/pics/239/anim0.asm
@@ -0,0 +1,11 @@
+ frame 1, 07
+ setrepeat 7
+ frame 2, 03
+ frame 1, 03
+ dorepeat 2
+ setrepeat 4
+ frame 4, 03
+ frame 3, 03
+ dorepeat 6
+ endanim
+; 0xd15e0
diff --git a/gfx/pics/239/anim1.asm b/gfx/pics/239/anim1.asm
new file mode 100644
index 000000000..cd10626f6
--- /dev/null
+++ b/gfx/pics/239/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 5, 09
+ frame 3, 09
+ dorepeat 1
+ frame 3, 20
+ endanim
+; 0xd21a6
diff --git a/gfx/backpics/239.2bpp b/gfx/pics/239/back.2bpp
index eec8d614f..eec8d614f 100644
--- a/gfx/backpics/239.2bpp
+++ b/gfx/pics/239/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/239.lz b/gfx/pics/239/back.lz
index fd8dd04df..fd8dd04df 100644
--- a/gfx/backpics/lz/239.lz
+++ b/gfx/pics/239/back.lz
Binary files differ
diff --git a/gfx/pics/239/bitmask.asm b/gfx/pics/239/bitmask.asm
new file mode 100644
index 000000000..f0f1fc48a
--- /dev/null
+++ b/gfx/pics/239/bitmask.asm
@@ -0,0 +1,31 @@
+; 0
+ db %11001111
+ db %10000011
+ db %00000000
+ db %00100000
+ db %00001000
+; 1
+ db %11001111
+ db %10110011
+ db %00001100
+ db %00100111
+ db %00001000
+; 2
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00100000
+ db %00001000
+; 3
+ db %10000000
+ db %00110000
+ db %00001100
+ db %00100111
+ db %00001000
+; 4
+ db %00000000
+ db %00001100
+ db %00000000
+ db %00100000
+ db %00001000
+; 0xd398c
diff --git a/gfx/pics/239/frames.asm b/gfx/pics/239/frames.asm
new file mode 100644
index 000000000..22fe6b955
--- /dev/null
+++ b/gfx/pics/239/frames.asm
@@ -0,0 +1,22 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $04, $27, $28, $29, $2a, $2b, $2c, $2d
+.frame2
+ db $01 ; bitmask
+ db $24, $25, $26, $04, $27, $2e, $29, $2a, $2f, $30, $2b, $31
+ db $32, $33, $34, $35, $2c, $2d
+.frame3
+ db $02 ; bitmask
+ db $2c, $2d
+.frame4
+ db $03 ; bitmask
+ db $36, $2f, $30, $31, $32, $33, $34, $35, $2c, $2d
+.frame5
+ db $04 ; bitmask
+ db $37, $38, $2c, $2d
+; 0xd9578
diff --git a/gfx/frontpics/239.2bpp b/gfx/pics/239/front.2bpp
index aa77ddd6e..aa77ddd6e 100644
--- a/gfx/frontpics/239.2bpp
+++ b/gfx/pics/239/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/239.lz b/gfx/pics/239/front.lz
index dde6b0e0b..dde6b0e0b 100644
--- a/gfx/frontpics/lz/239.lz
+++ b/gfx/pics/239/front.lz
Binary files differ
diff --git a/gfx/anim/239.2bpp b/gfx/pics/239/tiles.2bpp
index 9f0a772de..9f0a772de 100644
--- a/gfx/anim/239.2bpp
+++ b/gfx/pics/239/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/240/anim0.asm b/gfx/pics/240/anim0.asm
new file mode 100644
index 000000000..b0f8c7a10
--- /dev/null
+++ b/gfx/pics/240/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 14
+ setrepeat 2
+ frame 2, 07
+ frame 3, 07
+ dorepeat 2
+ frame 4, 16
+ endanim
+; 0xd15ed
diff --git a/gfx/pics/240/anim1.asm b/gfx/pics/240/anim1.asm
new file mode 100644
index 000000000..20b2b7997
--- /dev/null
+++ b/gfx/pics/240/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 09
+ frame 5, 09
+ dorepeat 1
+ endanim
+; 0xd21af
diff --git a/gfx/backpics/240.2bpp b/gfx/pics/240/back.2bpp
index 688fc4815..688fc4815 100644
--- a/gfx/backpics/240.2bpp
+++ b/gfx/pics/240/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/240.lz b/gfx/pics/240/back.lz
index 8746c640e..8746c640e 100644
--- a/gfx/backpics/lz/240.lz
+++ b/gfx/pics/240/back.lz
Binary files differ
diff --git a/gfx/pics/240/bitmask.asm b/gfx/pics/240/bitmask.asm
new file mode 100644
index 000000000..f65cfcd03
--- /dev/null
+++ b/gfx/pics/240/bitmask.asm
@@ -0,0 +1,25 @@
+; 0
+ db %00000000
+ db %11100000
+ db %01011001
+ db %00000000
+ db %00000000
+; 1
+ db %11000100
+ db %11110111
+ db %01111101
+ db %10011111
+ db %00000111
+; 2
+ db %11000000
+ db %11110111
+ db %01111101
+ db %10011111
+ db %00000111
+; 3
+ db %00000000
+ db %00100000
+ db %00001000
+ db %00000000
+ db %00000000
+; 0xd39a0
diff --git a/gfx/pics/240/frames.asm b/gfx/pics/240/frames.asm
new file mode 100644
index 000000000..48e013637
--- /dev/null
+++ b/gfx/pics/240/frames.asm
@@ -0,0 +1,26 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a
+.frame2
+ db $01 ; bitmask
+ db $2b, $0c, $0d, $2c, $2d, $2e, $12, $13, $14, $2f, $30, $18
+ db $19, $31, $32, $33, $00, $1f, $00, $34, $35, $00, $00, $00
+ db $00
+.frame3
+ db $01 ; bitmask
+ db $36, $0c, $0d, $37, $2d, $2e, $12, $13, $14, $2f, $30, $18
+ db $19, $31, $32, $33, $00, $1f, $00, $34, $35, $00, $00, $00
+ db $00
+.frame4
+ db $02 ; bitmask
+ db $0c, $0d, $37, $2d, $2e, $12, $13, $14, $2f, $30, $18, $19
+ db $31, $32, $33, $00, $1f, $00, $34, $35, $00, $00, $00, $00
+.frame5
+ db $03 ; bitmask
+ db $38, $39
+; 0xd95da
diff --git a/gfx/frontpics/240.2bpp b/gfx/pics/240/front.2bpp
index 49267eca5..49267eca5 100644
--- a/gfx/frontpics/240.2bpp
+++ b/gfx/pics/240/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/240.lz b/gfx/pics/240/front.lz
index b4eac5040..b4eac5040 100644
--- a/gfx/frontpics/lz/240.lz
+++ b/gfx/pics/240/front.lz
Binary files differ
diff --git a/gfx/anim/240.2bpp b/gfx/pics/240/tiles.2bpp
index 3db5ea0a6..3db5ea0a6 100644
--- a/gfx/anim/240.2bpp
+++ b/gfx/pics/240/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/241/anim0.asm b/gfx/pics/241/anim0.asm
new file mode 100644
index 000000000..6d12f2d5d
--- /dev/null
+++ b/gfx/pics/241/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 10
+ setrepeat 2
+ frame 2, 09
+ frame 1, 09
+ dorepeat 2
+ frame 3, 05
+ endanim
+; 0xd15fa
diff --git a/gfx/pics/241/anim1.asm b/gfx/pics/241/anim1.asm
new file mode 100644
index 000000000..a6a76db7b
--- /dev/null
+++ b/gfx/pics/241/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 05
+ frame 3, 05
+ dorepeat 1
+ endanim
+; 0xd21b8
diff --git a/gfx/backpics/241.2bpp b/gfx/pics/241/back.2bpp
index 0c5ed4f40..0c5ed4f40 100644
--- a/gfx/backpics/241.2bpp
+++ b/gfx/pics/241/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/241.lz b/gfx/pics/241/back.lz
index 150f65c54..150f65c54 100644
--- a/gfx/backpics/lz/241.lz
+++ b/gfx/pics/241/back.lz
Binary files differ
diff --git a/gfx/pics/241/bitmask.asm b/gfx/pics/241/bitmask.asm
new file mode 100644
index 000000000..ad082638a
--- /dev/null
+++ b/gfx/pics/241/bitmask.asm
@@ -0,0 +1,19 @@
+; 0
+ db %10001100
+ db %01100011
+ db %00011000
+ db %10001110
+ db %00000001
+; 1
+ db %10111100
+ db %01101011
+ db %11011000
+ db %10111110
+ db %00000001
+; 2
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd39af
diff --git a/gfx/pics/241/frames.asm b/gfx/pics/241/frames.asm
new file mode 100644
index 000000000..04b5427d0
--- /dev/null
+++ b/gfx/pics/241/frames.asm
@@ -0,0 +1,15 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $24, $00, $25, $26, $27, $28, $29, $2a, $2b, $2c, $2d, $2e
+ db $00, $2f
+.frame2
+ db $01 ; bitmask
+ db $24, $00, $30, $31, $25, $26, $27, $32, $28, $29, $2a, $2b
+ db $33, $34, $2c, $2d, $2e, $35, $36, $00, $2f
+.frame3
+ db $02 ; bitmask
+ db $28
+; 0xd9607
diff --git a/gfx/frontpics/241.2bpp b/gfx/pics/241/front.2bpp
index 04aa39875..04aa39875 100644
--- a/gfx/frontpics/241.2bpp
+++ b/gfx/pics/241/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/241.lz b/gfx/pics/241/front.lz
index 969d04fcd..969d04fcd 100644
--- a/gfx/frontpics/lz/241.lz
+++ b/gfx/pics/241/front.lz
Binary files differ
diff --git a/gfx/anim/241.2bpp b/gfx/pics/241/tiles.2bpp
index ce4855bc1..ce4855bc1 100644
--- a/gfx/anim/241.2bpp
+++ b/gfx/pics/241/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/242/anim0.asm b/gfx/pics/242/anim0.asm
new file mode 100644
index 000000000..097ecc094
--- /dev/null
+++ b/gfx/pics/242/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 12
+ frame 2, 14
+ frame 1, 10
+ frame 3, 04
+ frame 0, 06
+ frame 3, 08
+ endanim
+; 0xd1607
diff --git a/gfx/pics/242/anim1.asm b/gfx/pics/242/anim1.asm
new file mode 100644
index 000000000..846d85003
--- /dev/null
+++ b/gfx/pics/242/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 07
+ frame 4, 07
+ dorepeat 1
+ endanim
+; 0xd21c1
diff --git a/gfx/backpics/242.2bpp b/gfx/pics/242/back.2bpp
index 637c91b93..637c91b93 100644
--- a/gfx/backpics/242.2bpp
+++ b/gfx/pics/242/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/242.lz b/gfx/pics/242/back.lz
index 00749ddee..00749ddee 100644
--- a/gfx/backpics/lz/242.lz
+++ b/gfx/pics/242/back.lz
Binary files differ
diff --git a/gfx/pics/242/bitmask.asm b/gfx/pics/242/bitmask.asm
new file mode 100644
index 000000000..2f60296f3
--- /dev/null
+++ b/gfx/pics/242/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %00000000
+ db %00000000
+ db %10000000
+ db %11000001
+ db %11100001
+ db %00000000
+ db %00000000
+; 1
+ db %00001100
+ db %00000110
+ db %10000000
+ db %11000001
+ db %11100001
+ db %00110000
+ db %00000000
+; 2
+ db %00110000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000010
+ db %11000001
+ db %00000000
+; 3
+ db %00000000
+ db %10000000
+ db %01000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd39cb
diff --git a/gfx/pics/242/frames.asm b/gfx/pics/242/frames.asm
new file mode 100644
index 000000000..d7df7070c
--- /dev/null
+++ b/gfx/pics/242/frames.asm
@@ -0,0 +1,18 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $35, $36, $37, $38
+.frame2
+ db $01 ; bitmask
+ db $39, $3a, $3b, $3c, $31, $32, $3d, $3e, $3f, $40, $41, $42
+ db $43, $44
+.frame3
+ db $02 ; bitmask
+ db $45, $46, $47, $48, $49, $4a
+.frame4
+ db $03 ; bitmask
+ db $4b, $4c
+; 0xd9631
diff --git a/gfx/frontpics/242.2bpp b/gfx/pics/242/front.2bpp
index 7ed8227e7..7ed8227e7 100644
--- a/gfx/frontpics/242.2bpp
+++ b/gfx/pics/242/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/242.lz b/gfx/pics/242/front.lz
index 76f492c43..76f492c43 100644
--- a/gfx/frontpics/lz/242.lz
+++ b/gfx/pics/242/front.lz
Binary files differ
diff --git a/gfx/anim/242.2bpp b/gfx/pics/242/tiles.2bpp
index 7132deb80..7132deb80 100644
--- a/gfx/anim/242.2bpp
+++ b/gfx/pics/242/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/243/anim0.asm b/gfx/pics/243/anim0.asm
new file mode 100644
index 000000000..91931b3ef
--- /dev/null
+++ b/gfx/pics/243/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 06
+ setrepeat 5
+ frame 2, 03
+ frame 3, 03
+ dorepeat 2
+ frame 2, 35
+ endanim
+; 0xd1614
diff --git a/gfx/pics/243/anim1.asm b/gfx/pics/243/anim1.asm
new file mode 100644
index 000000000..ec54577cd
--- /dev/null
+++ b/gfx/pics/243/anim1.asm
@@ -0,0 +1,8 @@
+ frame 4, 20
+ frame 5, 08
+ frame 6, 08
+ frame 4, 05
+ frame 6, 05
+ frame 4, 30
+ endanim
+; 0xd21ce
diff --git a/gfx/backpics/243.2bpp b/gfx/pics/243/back.2bpp
index c86247071..c86247071 100644
--- a/gfx/backpics/243.2bpp
+++ b/gfx/pics/243/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/243.lz b/gfx/pics/243/back.lz
index 23fd5c471..23fd5c471 100644
--- a/gfx/backpics/lz/243.lz
+++ b/gfx/pics/243/back.lz
Binary files differ
diff --git a/gfx/pics/243/bitmask.asm b/gfx/pics/243/bitmask.asm
new file mode 100644
index 000000000..7daef5b70
--- /dev/null
+++ b/gfx/pics/243/bitmask.asm
@@ -0,0 +1,17 @@
+; 0
+ db %10011100
+ db %11001111
+ db %10000111
+ db %01000001
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %11111100
+ db %11111111
+ db %11011111
+ db %11001111
+ db %00000111
+ db %00000000
+ db %00000000
+; 0xd39d9
diff --git a/gfx/pics/243/frames.asm b/gfx/pics/243/frames.asm
new file mode 100644
index 000000000..d23459811
--- /dev/null
+++ b/gfx/pics/243/frames.asm
@@ -0,0 +1,33 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $00, $38, $39, $3a
+ db $3b, $3c, $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $3f, $40, $41, $42, $43, $00, $44, $45, $46, $47, $48, $49
+ db $00, $4a, $4b, $4c, $4d, $4e, $00, $4f, $50, $51, $52, $53
+ db $54, $55, $56, $57, $58, $59
+.frame3
+ db $01 ; bitmask
+ db $3f, $40, $41, $42, $43, $00, $44, $45, $46, $5a, $48, $49
+ db $00, $4a, $4b, $4c, $4d, $4e, $00, $4f, $50, $51, $52, $53
+ db $54, $55, $56, $57, $58, $59
+.frame4
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $35, $36, $37, $00, $38, $39, $3a
+ db $3b, $3c, $3d, $3e
+.frame5
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $5b, $36, $37, $00, $38, $39, $3a
+ db $3b, $3c, $3d, $3e
+.frame6
+ db $00 ; bitmask
+ db $31, $32, $33, $00, $34, $5c, $36, $37, $00, $38, $39, $3a
+ db $3b, $3c, $3d, $3e
+; 0xd96bf
diff --git a/gfx/frontpics/243.2bpp b/gfx/pics/243/front.2bpp
index fcf1cb64c..fcf1cb64c 100644
--- a/gfx/frontpics/243.2bpp
+++ b/gfx/pics/243/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/243.lz b/gfx/pics/243/front.lz
index dba4517aa..dba4517aa 100644
--- a/gfx/frontpics/lz/243.lz
+++ b/gfx/pics/243/front.lz
Binary files differ
diff --git a/gfx/anim/243.2bpp b/gfx/pics/243/tiles.2bpp
index f97b56df9..f97b56df9 100644
--- a/gfx/anim/243.2bpp
+++ b/gfx/pics/243/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/244/anim0.asm b/gfx/pics/244/anim0.asm
new file mode 100644
index 000000000..66c2c128d
--- /dev/null
+++ b/gfx/pics/244/anim0.asm
@@ -0,0 +1,6 @@
+ frame 0, 04
+ frame 1, 10
+ frame 2, 12
+ frame 3, 30
+ endanim
+; 0xd161d
diff --git a/gfx/pics/244/anim1.asm b/gfx/pics/244/anim1.asm
new file mode 100644
index 000000000..f20e5d072
--- /dev/null
+++ b/gfx/pics/244/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 4, 08
+ dorepeat 1
+ endanim
+; 0xd21d7
diff --git a/gfx/backpics/244.2bpp b/gfx/pics/244/back.2bpp
index 81ca99d86..81ca99d86 100644
--- a/gfx/backpics/244.2bpp
+++ b/gfx/pics/244/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/244.lz b/gfx/pics/244/back.lz
index 7f2440f51..7f2440f51 100644
--- a/gfx/backpics/lz/244.lz
+++ b/gfx/pics/244/back.lz
Binary files differ
diff --git a/gfx/pics/244/bitmask.asm b/gfx/pics/244/bitmask.asm
new file mode 100644
index 000000000..87f417106
--- /dev/null
+++ b/gfx/pics/244/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10001111
+ db %11001111
+ db %11100111
+ db %11110011
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %10011111
+ db %11001111
+ db %11100111
+ db %11110011
+ db %00000000
+ db %00000000
+ db %00000000
+; 2
+ db %00000100
+ db %00000011
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 3
+ db %10000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd39f5
diff --git a/gfx/pics/244/frames.asm b/gfx/pics/244/frames.asm
new file mode 100644
index 000000000..3034f66a3
--- /dev/null
+++ b/gfx/pics/244/frames.asm
@@ -0,0 +1,19 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $04, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46
+.frame2
+ db $01 ; bitmask
+ db $04, $04, $05, $47, $48, $34, $49, $4a, $4b, $38, $39, $3a
+ db $4c, $4d, $4e, $3e, $3f, $40, $41, $42, $43, $44, $45, $46
+.frame3
+ db $02 ; bitmask
+ db $4f, $50, $51
+.frame4
+ db $03 ; bitmask
+ db $52, $53
+; 0xd96ff
diff --git a/gfx/frontpics/244.2bpp b/gfx/pics/244/front.2bpp
index b98db5cce..b98db5cce 100644
--- a/gfx/frontpics/244.2bpp
+++ b/gfx/pics/244/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/244.lz b/gfx/pics/244/front.lz
index bc969fe65..bc969fe65 100644
--- a/gfx/frontpics/lz/244.lz
+++ b/gfx/pics/244/front.lz
Binary files differ
diff --git a/gfx/anim/244.2bpp b/gfx/pics/244/tiles.2bpp
index 93ffaa2f5..93ffaa2f5 100644
--- a/gfx/anim/244.2bpp
+++ b/gfx/pics/244/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/245/anim0.asm b/gfx/pics/245/anim0.asm
new file mode 100644
index 000000000..0f2528116
--- /dev/null
+++ b/gfx/pics/245/anim0.asm
@@ -0,0 +1,13 @@
+ frame 1, 10
+ frame 2, 10
+ frame 3, 10
+ frame 4, 10
+ frame 5, 10
+ setrepeat 2
+ frame 6, 03
+ frame 7, 03
+ frame 8, 03
+ frame 0, 03
+ dorepeat 6
+ endanim
+; 0xd1634
diff --git a/gfx/pics/245/anim1.asm b/gfx/pics/245/anim1.asm
new file mode 100644
index 000000000..9e018683a
--- /dev/null
+++ b/gfx/pics/245/anim1.asm
@@ -0,0 +1,7 @@
+ frame 9, 35
+ setrepeat 2
+ frame 0, 06
+ frame 9, 06
+ dorepeat 2
+ endanim
+; 0xd21e2
diff --git a/gfx/backpics/245.2bpp b/gfx/pics/245/back.2bpp
index 7205347c6..7205347c6 100644
--- a/gfx/backpics/245.2bpp
+++ b/gfx/pics/245/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/245.lz b/gfx/pics/245/back.lz
index a8106fbb4..a8106fbb4 100644
--- a/gfx/backpics/lz/245.lz
+++ b/gfx/pics/245/back.lz
Binary files differ
diff --git a/gfx/pics/245/bitmask.asm b/gfx/pics/245/bitmask.asm
new file mode 100644
index 000000000..1b3c4f555
--- /dev/null
+++ b/gfx/pics/245/bitmask.asm
@@ -0,0 +1,57 @@
+; 0
+ db %11111000
+ db %11111111
+ db %11101111
+ db %01100110
+ db %00100011
+ db %00000000
+ db %00000000
+; 1
+ db %11111000
+ db %11111111
+ db %11101111
+ db %01110110
+ db %00011011
+ db %00011100
+ db %00000000
+; 2
+ db %11111000
+ db %10111111
+ db %00001111
+ db %00000110
+ db %00000011
+ db %00000000
+ db %00000000
+; 3
+ db %00000000
+ db %10000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 4
+ db %00000000
+ db %00000010
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 5
+ db %00000000
+ db %00000100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 6
+ db %00000000
+ db %00001000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3a26
diff --git a/gfx/pics/245/frames.asm b/gfx/pics/245/frames.asm
new file mode 100644
index 000000000..7532ed312
--- /dev/null
+++ b/gfx/pics/245/frames.asm
@@ -0,0 +1,46 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+ dw .frame9
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $00, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47
+ db $48, $49, $4a
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $00, $35, $36, $37, $4b, $4c, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $4d, $4e, $4f, $44, $45, $50, $51
+ db $52, $48, $49, $53, $54, $00, $55, $56
+.frame3
+ db $02 ; bitmask
+ db $31, $32, $33, $34, $00, $35, $36, $37, $4b, $4c, $3a, $57
+ db $3d, $3e, $3f, $40, $44, $45, $48, $49
+.frame4
+ db $00 ; bitmask
+ db $31, $32, $33, $34, $00, $35, $36, $37, $4b, $4c, $3a, $3b
+ db $3c, $3d, $3e, $3f, $40, $41, $42, $43, $44, $45, $46, $47
+ db $48, $49, $4a
+.frame5
+ db $01 ; bitmask
+ db $31, $32, $33, $34, $00, $35, $36, $37, $4b, $58, $3a, $3b
+ db $3c, $3d, $3e, $3f, $59, $4d, $4e, $4f, $44, $45, $50, $51
+ db $52, $48, $49, $53, $54, $00, $55, $56
+.frame6
+ db $03 ; bitmask
+ db $5a
+.frame7
+ db $04 ; bitmask
+ db $5b, $5c
+.frame8
+ db $05 ; bitmask
+ db $5d
+.frame9
+ db $06 ; bitmask
+ db $5e
+; 0xd97a9
diff --git a/gfx/frontpics/245.2bpp b/gfx/pics/245/front.2bpp
index eeb01a9d9..eeb01a9d9 100644
--- a/gfx/frontpics/245.2bpp
+++ b/gfx/pics/245/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/245.lz b/gfx/pics/245/front.lz
index cbc9dfdbf..cbc9dfdbf 100644
--- a/gfx/frontpics/lz/245.lz
+++ b/gfx/pics/245/front.lz
Binary files differ
diff --git a/gfx/anim/245.2bpp b/gfx/pics/245/tiles.2bpp
index 64bb1b3b2..64bb1b3b2 100644
--- a/gfx/anim/245.2bpp
+++ b/gfx/pics/245/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/246/anim0.asm b/gfx/pics/246/anim0.asm
new file mode 100644
index 000000000..bb861f733
--- /dev/null
+++ b/gfx/pics/246/anim0.asm
@@ -0,0 +1,6 @@
+ frame 3, 12
+ frame 1, 12
+ frame 2, 28
+ frame 3, 08
+ endanim
+; 0xd163d
diff --git a/gfx/pics/246/anim1.asm b/gfx/pics/246/anim1.asm
new file mode 100644
index 000000000..2b87de7be
--- /dev/null
+++ b/gfx/pics/246/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 06
+ frame 3, 06
+ dorepeat 1
+ endanim
+; 0xd21eb
diff --git a/gfx/backpics/246.2bpp b/gfx/pics/246/back.2bpp
index d15a10d75..d15a10d75 100644
--- a/gfx/backpics/246.2bpp
+++ b/gfx/pics/246/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/246.lz b/gfx/pics/246/back.lz
index b4122419b..b4122419b 100644
--- a/gfx/backpics/lz/246.lz
+++ b/gfx/pics/246/back.lz
Binary files differ
diff --git a/gfx/pics/246/bitmask.asm b/gfx/pics/246/bitmask.asm
new file mode 100644
index 000000000..9ff8d5535
--- /dev/null
+++ b/gfx/pics/246/bitmask.asm
@@ -0,0 +1,16 @@
+; 0
+ db %00000000
+ db %00000000
+ db %01000000
+ db %00000000
+; 1
+ db %00100000
+ db %10011100
+ db %01100011
+ db %00000000
+; 2
+ db %00000000
+ db %00011000
+ db %00000011
+ db %00000000
+; 0xd3a32
diff --git a/gfx/pics/246/frames.asm b/gfx/pics/246/frames.asm
new file mode 100644
index 000000000..17da6e97b
--- /dev/null
+++ b/gfx/pics/246/frames.asm
@@ -0,0 +1,13 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+.frame1
+ db $00 ; bitmask
+ db $19
+.frame2
+ db $01 ; bitmask
+ db $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22
+.frame3
+ db $02 ; bitmask
+ db $23, $24, $25, $26
+; 0xd97c0
diff --git a/gfx/frontpics/246.2bpp b/gfx/pics/246/front.2bpp
index 23f711a6f..23f711a6f 100644
--- a/gfx/frontpics/246.2bpp
+++ b/gfx/pics/246/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/246.lz b/gfx/pics/246/front.lz
index deba5d5a2..deba5d5a2 100644
--- a/gfx/frontpics/lz/246.lz
+++ b/gfx/pics/246/front.lz
Binary files differ
diff --git a/gfx/anim/246.2bpp b/gfx/pics/246/tiles.2bpp
index 7a0e9978a..7a0e9978a 100644
--- a/gfx/anim/246.2bpp
+++ b/gfx/pics/246/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/247/anim0.asm b/gfx/pics/247/anim0.asm
new file mode 100644
index 000000000..c3ea44bc9
--- /dev/null
+++ b/gfx/pics/247/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 25
+ setrepeat 2
+ frame 0, 04
+ frame 1, 04
+ frame 2, 04
+ dorepeat 2
+ endanim
+; 0xd164a
diff --git a/gfx/pics/247/anim1.asm b/gfx/pics/247/anim1.asm
new file mode 100644
index 000000000..efc0f3bb4
--- /dev/null
+++ b/gfx/pics/247/anim1.asm
@@ -0,0 +1,7 @@
+ setrepeat 2
+ frame 0, 04
+ frame 1, 04
+ frame 2, 04
+ dorepeat 1
+ endanim
+; 0xd21f6
diff --git a/gfx/backpics/247.2bpp b/gfx/pics/247/back.2bpp
index 67731ae14..67731ae14 100644
--- a/gfx/backpics/247.2bpp
+++ b/gfx/pics/247/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/247.lz b/gfx/pics/247/back.lz
index 46cf0e240..46cf0e240 100644
--- a/gfx/backpics/lz/247.lz
+++ b/gfx/pics/247/back.lz
Binary files differ
diff --git a/gfx/pics/247/bitmask.asm b/gfx/pics/247/bitmask.asm
new file mode 100644
index 000000000..8d0fa45ba
--- /dev/null
+++ b/gfx/pics/247/bitmask.asm
@@ -0,0 +1,13 @@
+; 0
+ db %00000100
+ db %01000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 1
+ db %00001100
+ db %11000000
+ db %00110000
+ db %00000000
+ db %00000000
+; 0xd3a3c
diff --git a/gfx/pics/247/frames.asm b/gfx/pics/247/frames.asm
new file mode 100644
index 000000000..20234c804
--- /dev/null
+++ b/gfx/pics/247/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $24, $25, $26
+.frame2
+ db $01 ; bitmask
+ db $27, $28, $29, $2a, $2b, $2c
+; 0xd97cf
diff --git a/gfx/frontpics/247.2bpp b/gfx/pics/247/front.2bpp
index 9367d2c79..9367d2c79 100644
--- a/gfx/frontpics/247.2bpp
+++ b/gfx/pics/247/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/247.lz b/gfx/pics/247/front.lz
index c39582db6..c39582db6 100644
--- a/gfx/frontpics/lz/247.lz
+++ b/gfx/pics/247/front.lz
Binary files differ
diff --git a/gfx/anim/247.2bpp b/gfx/pics/247/tiles.2bpp
index 406bde138..406bde138 100644
--- a/gfx/anim/247.2bpp
+++ b/gfx/pics/247/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/248/anim0.asm b/gfx/pics/248/anim0.asm
new file mode 100644
index 000000000..f345bdd8e
--- /dev/null
+++ b/gfx/pics/248/anim0.asm
@@ -0,0 +1,9 @@
+ frame 1, 14
+ frame 2, 16
+ frame 3, 16
+ frame 1, 14
+ frame 4, 16
+ frame 0, 16
+ frame 4, 16
+ endanim
+; 0xd1659
diff --git a/gfx/pics/248/anim1.asm b/gfx/pics/248/anim1.asm
new file mode 100644
index 000000000..29788fd1d
--- /dev/null
+++ b/gfx/pics/248/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 2
+ frame 0, 08
+ frame 5, 08
+ dorepeat 1
+ endanim
+; 0xd21ff
diff --git a/gfx/backpics/248.2bpp b/gfx/pics/248/back.2bpp
index 40a592190..40a592190 100644
--- a/gfx/backpics/248.2bpp
+++ b/gfx/pics/248/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/248.lz b/gfx/pics/248/back.lz
index 572e56d69..572e56d69 100644
--- a/gfx/backpics/lz/248.lz
+++ b/gfx/pics/248/back.lz
Binary files differ
diff --git a/gfx/pics/248/bitmask.asm b/gfx/pics/248/bitmask.asm
new file mode 100644
index 000000000..446e83c42
--- /dev/null
+++ b/gfx/pics/248/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %10011111
+ db %11001111
+ db %01101111
+ db %00110011
+ db %00000001
+ db %00000000
+ db %00000000
+; 1
+ db %10011111
+ db %11001111
+ db %01101111
+ db %00110011
+ db %01100001
+ db %00110000
+ db %00000000
+; 2
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %01100000
+ db %00110000
+ db %00000000
+; 3
+ db %00000000
+ db %00000000
+ db %00000001
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3a58
diff --git a/gfx/pics/248/frames.asm b/gfx/pics/248/frames.asm
new file mode 100644
index 000000000..b9d6d7da5
--- /dev/null
+++ b/gfx/pics/248/frames.asm
@@ -0,0 +1,25 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+.frame1
+ db $00 ; bitmask
+ db $05, $05, $05, $31, $32, $33, $34, $35, $36, $37, $38, $39
+ db $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $05, $42, $43
+.frame2
+ db $01 ; bitmask
+ db $05, $05, $44, $45, $05, $33, $34, $46, $47, $48, $38, $39
+ db $49, $4a, $4b, $3d, $3e, $3f, $4c, $4d, $05, $42, $43, $4e
+ db $4f, $50, $51
+.frame3
+ db $00 ; bitmask
+ db $05, $05, $44, $45, $05, $33, $34, $46, $47, $48, $38, $39
+ db $49, $4a, $4b, $3d, $3e, $3f, $4c, $4d, $05, $42, $43
+.frame4
+ db $02 ; bitmask
+ db $4e, $4f, $50, $51
+.frame5
+ db $03 ; bitmask
+ db $52
+; 0xd982c
diff --git a/gfx/frontpics/248.2bpp b/gfx/pics/248/front.2bpp
index 6ea3d9fae..6ea3d9fae 100644
--- a/gfx/frontpics/248.2bpp
+++ b/gfx/pics/248/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/248.lz b/gfx/pics/248/front.lz
index 07d48a5fe..07d48a5fe 100644
--- a/gfx/frontpics/lz/248.lz
+++ b/gfx/pics/248/front.lz
Binary files differ
diff --git a/gfx/anim/248.2bpp b/gfx/pics/248/tiles.2bpp
index f18fbfb30..f18fbfb30 100644
--- a/gfx/anim/248.2bpp
+++ b/gfx/pics/248/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/249/anim0.asm b/gfx/pics/249/anim0.asm
new file mode 100644
index 000000000..3c3c021a5
--- /dev/null
+++ b/gfx/pics/249/anim0.asm
@@ -0,0 +1,8 @@
+ frame 1, 11
+ frame 2, 11
+ frame 3, 14
+ frame 4, 14
+ frame 5, 14
+ frame 6, 11
+ endanim
+; 0xd1666
diff --git a/gfx/pics/249/anim1.asm b/gfx/pics/249/anim1.asm
new file mode 100644
index 000000000..31f2ea09c
--- /dev/null
+++ b/gfx/pics/249/anim1.asm
@@ -0,0 +1,8 @@
+ setrepeat 3
+ frame 9, 10
+ frame 7, 10
+ dorepeat 1
+ frame 8, 10
+ frame 3, 10
+ endanim
+; 0xd220c
diff --git a/gfx/backpics/249.2bpp b/gfx/pics/249/back.2bpp
index fd7c3b615..fd7c3b615 100644
--- a/gfx/backpics/249.2bpp
+++ b/gfx/pics/249/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/249.lz b/gfx/pics/249/back.lz
index 8f7134e13..8f7134e13 100644
--- a/gfx/backpics/lz/249.lz
+++ b/gfx/pics/249/back.lz
Binary files differ
diff --git a/gfx/pics/249/bitmask.asm b/gfx/pics/249/bitmask.asm
new file mode 100644
index 000000000..3270ceba6
--- /dev/null
+++ b/gfx/pics/249/bitmask.asm
@@ -0,0 +1,73 @@
+; 0
+ db %11110111
+ db %11111111
+ db %01011101
+ db %00000000
+ db %10000111
+ db %11000011
+ db %00000001
+; 1
+ db %01110111
+ db %00111111
+ db %00011100
+ db %00000000
+ db %10011011
+ db %11001111
+ db %00000001
+; 2
+ db %00000000
+ db %00100000
+ db %00000000
+ db %00010000
+ db %00011000
+ db %00001100
+ db %00000000
+; 3
+ db %10000111
+ db %11110011
+ db %01000001
+ db %00000000
+ db %10000111
+ db %11000011
+ db %00000001
+; 4
+ db %00000111
+ db %00110011
+ db %00000000
+ db %00000000
+ db %10011011
+ db %11001111
+ db %00000001
+; 5
+ db %00000000
+ db %00110000
+ db %00000000
+ db %00010000
+ db %00011000
+ db %00001100
+ db %00000000
+; 6
+ db %01110000
+ db %00111100
+ db %00011100
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 7
+ db %00000000
+ db %00110000
+ db %00000000
+ db %00000000
+ db %00011000
+ db %00001100
+ db %00000000
+; 8
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3a97
diff --git a/gfx/pics/249/frames.asm b/gfx/pics/249/frames.asm
new file mode 100644
index 000000000..a13767189
--- /dev/null
+++ b/gfx/pics/249/frames.asm
@@ -0,0 +1,44 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+ dw .frame9
+.frame1
+ db $00 ; bitmask
+ db $03, $31, $32, $03, $33, $34, $03, $35, $36, $03, $37, $38
+ db $39, $03, $3a, $3b, $3c, $3d, $3e, $3f, $40, $41, $42, $43
+ db $44, $45, $46, $47, $48
+.frame2
+ db $01 ; bitmask
+ db $49, $4a, $4b, $03, $33, $34, $4c, $4d, $03, $37, $38, $39
+ db $3c, $3d, $3e, $40, $4e, $4f, $50, $51, $52, $53, $54, $55
+ db $56, $57, $58
+.frame3
+ db $02 ; bitmask
+ db $59, $5a, $5b, $5c, $03, $5d
+.frame4
+ db $03 ; bitmask
+ db $03, $31, $32, $03, $35, $36, $5e, $5f, $03, $3a, $3b, $3f
+ db $40, $41, $42, $43, $44, $45, $46, $47, $48
+.frame5
+ db $04 ; bitmask
+ db $49, $4a, $4b, $4c, $4d, $5e, $5f, $40, $4e, $4f, $50, $51
+ db $52, $53, $54, $55, $56, $57, $58
+.frame6
+ db $05 ; bitmask
+ db $5e, $59, $5a, $5b, $5c, $03, $5d
+.frame7
+ db $06 ; bitmask
+ db $03, $33, $34, $03, $37, $38, $39, $3c, $3d, $3e
+.frame8
+ db $07 ; bitmask
+ db $5e, $59, $4f, $50, $54, $55
+.frame9
+ db $08 ; bitmask
+ db $5e, $59 ; unused
+
+; 0xd98c4
diff --git a/gfx/frontpics/249.2bpp b/gfx/pics/249/front.2bpp
index 45ca8db45..45ca8db45 100644
--- a/gfx/frontpics/249.2bpp
+++ b/gfx/pics/249/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/249.lz b/gfx/pics/249/front.lz
index b1b300304..b1b300304 100644
--- a/gfx/frontpics/lz/249.lz
+++ b/gfx/pics/249/front.lz
Binary files differ
diff --git a/gfx/anim/249.2bpp b/gfx/pics/249/tiles.2bpp
index a37dbbfc9..a37dbbfc9 100644
--- a/gfx/anim/249.2bpp
+++ b/gfx/pics/249/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/250/anim0.asm b/gfx/pics/250/anim0.asm
new file mode 100644
index 000000000..5ae27b487
--- /dev/null
+++ b/gfx/pics/250/anim0.asm
@@ -0,0 +1,11 @@
+ frame 0, 04
+ frame 1, 08
+ frame 2, 12
+ setrepeat 5
+ frame 0, 05
+ frame 3, 05
+ dorepeat 4
+ frame 0, 06
+ frame 4, 12
+ endanim
+; 0xd1679
diff --git a/gfx/pics/250/anim1.asm b/gfx/pics/250/anim1.asm
new file mode 100644
index 000000000..d7808f281
--- /dev/null
+++ b/gfx/pics/250/anim1.asm
@@ -0,0 +1,6 @@
+ setrepeat 3
+ frame 0, 06
+ frame 4, 06
+ dorepeat 1
+ endanim
+; 0xd2215
diff --git a/gfx/backpics/250.2bpp b/gfx/pics/250/back.2bpp
index 96a1dad0b..96a1dad0b 100644
--- a/gfx/backpics/250.2bpp
+++ b/gfx/pics/250/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/250.lz b/gfx/pics/250/back.lz
index 1d58cf8ac..1d58cf8ac 100644
--- a/gfx/backpics/lz/250.lz
+++ b/gfx/pics/250/back.lz
Binary files differ
diff --git a/gfx/pics/250/bitmask.asm b/gfx/pics/250/bitmask.asm
new file mode 100644
index 000000000..4db146ccd
--- /dev/null
+++ b/gfx/pics/250/bitmask.asm
@@ -0,0 +1,33 @@
+; 0
+ db %01111000
+ db %00111100
+ db %00011110
+ db %00000111
+ db %00000000
+ db %00000000
+ db %00000000
+; 1
+ db %01111000
+ db %00111100
+ db %00011110
+ db %10001111
+ db %10000111
+ db %00000000
+ db %00000000
+; 2
+ db %00000000
+ db %11000000
+ db %01110000
+ db %00111100
+ db %00000110
+ db %11000011
+ db %00000000
+; 3
+ db %00000000
+ db %00011000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+ db %00000000
+; 0xd3ab3
diff --git a/gfx/pics/250/frames.asm b/gfx/pics/250/frames.asm
new file mode 100644
index 000000000..7b244c4f8
--- /dev/null
+++ b/gfx/pics/250/frames.asm
@@ -0,0 +1,20 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+.frame1
+ db $00 ; bitmask
+ db $31, $32, $33, $30, $34, $35, $36, $37, $38, $39, $3a, $3b
+ db $3c, $3d, $3e
+.frame2
+ db $01 ; bitmask
+ db $31, $32, $33, $30, $3f, $40, $41, $42, $43, $44, $45, $46
+ db $47, $48, $49, $4a, $4b, $4c, $4d, $4e, $4f
+.frame3
+ db $02 ; bitmask
+ db $50, $51, $52, $53, $54, $55, $56, $57, $58, $59, $5a, $5b
+ db $5c, $5d, $5e
+.frame4
+ db $03 ; bitmask
+ db $5f, $60
+; 0xd9907
diff --git a/gfx/frontpics/250.2bpp b/gfx/pics/250/front.2bpp
index feb1fb7ba..feb1fb7ba 100644
--- a/gfx/frontpics/250.2bpp
+++ b/gfx/pics/250/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/250.lz b/gfx/pics/250/front.lz
index 40c91739e..40c91739e 100644
--- a/gfx/frontpics/lz/250.lz
+++ b/gfx/pics/250/front.lz
Binary files differ
diff --git a/gfx/anim/250.2bpp b/gfx/pics/250/tiles.2bpp
index a7dfba6b1..a7dfba6b1 100644
--- a/gfx/anim/250.2bpp
+++ b/gfx/pics/250/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/251/anim0.asm b/gfx/pics/251/anim0.asm
new file mode 100644
index 000000000..9f218a43e
--- /dev/null
+++ b/gfx/pics/251/anim0.asm
@@ -0,0 +1,16 @@
+ frame 1, 05
+ frame 2, 05
+ frame 3, 05
+ frame 4, 05
+ frame 5, 05
+ frame 6, 05
+ frame 7, 05
+ frame 8, 05
+ frame 9, 05
+ frame 10, 05
+ setrepeat 3
+ frame 12, 05
+ frame 13, 05
+ dorepeat 11
+ endanim
+; 0xd1696
diff --git a/gfx/pics/251/anim1.asm b/gfx/pics/251/anim1.asm
new file mode 100644
index 000000000..6162488db
--- /dev/null
+++ b/gfx/pics/251/anim1.asm
@@ -0,0 +1,8 @@
+ frame 0, 07
+ frame 11, 07
+ setrepeat 2
+ frame 0, 05
+ frame 11, 05
+ dorepeat 3
+ endanim
+; 0xd2222
diff --git a/gfx/backpics/251.2bpp b/gfx/pics/251/back.2bpp
index 394ef9769..394ef9769 100644
--- a/gfx/backpics/251.2bpp
+++ b/gfx/pics/251/back.2bpp
Binary files differ
diff --git a/gfx/backpics/lz/251.lz b/gfx/pics/251/back.lz
index e8153224c..e8153224c 100644
--- a/gfx/backpics/lz/251.lz
+++ b/gfx/pics/251/back.lz
Binary files differ
diff --git a/gfx/pics/251/bitmask.asm b/gfx/pics/251/bitmask.asm
new file mode 100644
index 000000000..0a57151d0
--- /dev/null
+++ b/gfx/pics/251/bitmask.asm
@@ -0,0 +1,36 @@
+; 0
+ db %00100000
+ db %10101100
+ db %01100111
+ db %00000000
+; 1
+ db %10100000
+ db %10111100
+ db %01100111
+ db %00000000
+; 2
+ db %10000000
+ db %00110000
+ db %00000100
+ db %00000000
+; 3
+ db %10100000
+ db %10111100
+ db %00100101
+ db %00000000
+; 4
+ db %00100000
+ db %10101100
+ db %00100101
+ db %00000000
+; 5
+ db %00000000
+ db %00010000
+ db %00000000
+ db %00000000
+; 6
+ db %00000000
+ db %00100000
+ db %00000100
+ db %00000000
+; 0xd3acf
diff --git a/gfx/pics/251/frames.asm b/gfx/pics/251/frames.asm
new file mode 100644
index 000000000..ef4507647
--- /dev/null
+++ b/gfx/pics/251/frames.asm
@@ -0,0 +1,53 @@
+ dw .frame1
+ dw .frame2
+ dw .frame3
+ dw .frame4
+ dw .frame5
+ dw .frame6
+ dw .frame7
+ dw .frame8
+ dw .frame9
+ dw .frame10
+ dw .frame11
+ dw .frame12
+ dw .frame13
+.frame1
+ db $00 ; bitmask
+ db $19, $1a, $1b, $1c, $00, $1d, $1e, $1f, $00, $20
+.frame2
+ db $00 ; bitmask
+ db $19, $1a, $1b, $21, $00, $1d, $1e, $22, $00, $20
+.frame3
+ db $01 ; bitmask
+ db $23, $24, $25, $26, $27, $1c, $00, $28, $29, $1f, $2a, $2b
+.frame4
+ db $01 ; bitmask
+ db $23, $24, $25, $26, $27, $21, $00, $28, $29, $22, $2a, $2b
+.frame5
+ db $02 ; bitmask
+ db $24, $27, $1c, $1f
+.frame6
+ db $02 ; bitmask
+ db $24, $27, $21, $22
+.frame7
+ db $03 ; bitmask
+ db $19, $24, $1a, $1b, $27, $1c, $00, $2c, $1f, $2d
+.frame8
+ db $03 ; bitmask
+ db $19, $24, $1a, $1b, $27, $21, $00, $2c, $22, $2d
+.frame9
+ db $04 ; bitmask
+ db $23, $25, $2e, $1c, $00, $2f, $1f, $2d
+.frame10
+ db $04 ; bitmask
+ db $23, $25, $2e, $21, $00, $2f, $22, $2d
+.frame11
+ db $05 ; bitmask
+ db $27
+.frame12
+ db $06 ; bitmask
+ db $1c, $1f
+.frame13
+ db $06 ; bitmask
+ db $21, $22
+; 0xd998b
diff --git a/gfx/frontpics/251.2bpp b/gfx/pics/251/front.2bpp
index e0229eb53..e0229eb53 100644
--- a/gfx/frontpics/251.2bpp
+++ b/gfx/pics/251/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/251.lz b/gfx/pics/251/front.lz
index afc41bee7..afc41bee7 100644
--- a/gfx/frontpics/lz/251.lz
+++ b/gfx/pics/251/front.lz
Binary files differ
diff --git a/gfx/anim/251.2bpp b/gfx/pics/251/tiles.2bpp
index 26aeda9c8..26aeda9c8 100644
--- a/gfx/anim/251.2bpp
+++ b/gfx/pics/251/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/anim_pointers.asm b/gfx/pics/anim_pointers.asm
new file mode 100644
index 000000000..b608d5d5a
--- /dev/null
+++ b/gfx/pics/anim_pointers.asm
@@ -0,0 +1,251 @@
+ dw BulbasaurAnimation
+ dw IvysaurAnimation
+ dw VenusaurAnimation
+ dw CharmanderAnimation
+ dw CharmeleonAnimation
+ dw CharizardAnimation
+ dw SquirtleAnimation
+ dw WartortleAnimation
+ dw BlastoiseAnimation
+ dw CaterpieAnimation
+ dw MetapodAnimation
+ dw ButterfreeAnimation
+ dw WeedleAnimation
+ dw KakunaAnimation
+ dw BeedrillAnimation
+ dw PidgeyAnimation
+ dw PidgeottoAnimation
+ dw PidgeotAnimation
+ dw RattataAnimation
+ dw RaticateAnimation
+ dw SpearowAnimation
+ dw FearowAnimation
+ dw EkansAnimation
+ dw ArbokAnimation
+ dw PikachuAnimation
+ dw RaichuAnimation
+ dw SandshrewAnimation
+ dw SandslashAnimation
+ dw NidoranFAnimation
+ dw NidorinaAnimation
+ dw NidoqueenAnimation
+ dw NidoranMAnimation
+ dw NidorinoAnimation
+ dw NidokingAnimation
+ dw ClefairyAnimation
+ dw ClefableAnimation
+ dw VulpixAnimation
+ dw NinetalesAnimation
+ dw JigglypuffAnimation
+ dw WigglytuffAnimation
+ dw ZubatAnimation
+ dw GolbatAnimation
+ dw OddishAnimation
+ dw GloomAnimation
+ dw VileplumeAnimation
+ dw ParasAnimation
+ dw ParasectAnimation
+ dw VenonatAnimation
+ dw VenomothAnimation
+ dw DiglettAnimation
+ dw DugtrioAnimation
+ dw MeowthAnimation
+ dw PersianAnimation
+ dw PsyduckAnimation
+ dw GolduckAnimation
+ dw MankeyAnimation
+ dw PrimeapeAnimation
+ dw GrowlitheAnimation
+ dw ArcanineAnimation
+ dw PoliwagAnimation
+ dw PoliwhirlAnimation
+ dw PoliwrathAnimation
+ dw AbraAnimation
+ dw KadabraAnimation
+ dw AlakazamAnimation
+ dw MachopAnimation
+ dw MachokeAnimation
+ dw MachampAnimation
+ dw BellsproutAnimation
+ dw WeepinbellAnimation
+ dw VictreebelAnimation
+ dw TentacoolAnimation
+ dw TentacruelAnimation
+ dw GeodudeAnimation
+ dw GravelerAnimation
+ dw GolemAnimation
+ dw PonytaAnimation
+ dw RapidashAnimation
+ dw SlowpokeAnimation
+ dw SlowbroAnimation
+ dw MagnemiteAnimation
+ dw MagnetonAnimation
+ dw FarfetchDAnimation
+ dw DoduoAnimation
+ dw DodrioAnimation
+ dw SeelAnimation
+ dw DewgongAnimation
+ dw GrimerAnimation
+ dw MukAnimation
+ dw ShellderAnimation
+ dw CloysterAnimation
+ dw GastlyAnimation
+ dw HaunterAnimation
+ dw GengarAnimation
+ dw OnixAnimation
+ dw DrowzeeAnimation
+ dw HypnoAnimation
+ dw KrabbyAnimation
+ dw KinglerAnimation
+ dw VoltorbAnimation
+ dw ElectrodeAnimation
+ dw ExeggcuteAnimation
+ dw ExeggutorAnimation
+ dw CuboneAnimation
+ dw MarowakAnimation
+ dw HitmonleeAnimation
+ dw HitmonchanAnimation
+ dw LickitungAnimation
+ dw KoffingAnimation
+ dw WeezingAnimation
+ dw RhyhornAnimation
+ dw RhydonAnimation
+ dw ChanseyAnimation
+ dw TangelaAnimation
+ dw KangaskhanAnimation
+ dw HorseaAnimation
+ dw SeadraAnimation
+ dw GoldeenAnimation
+ dw SeakingAnimation
+ dw StaryuAnimation
+ dw StarmieAnimation
+ dw MrMimeAnimation
+ dw ScytherAnimation
+ dw JynxAnimation
+ dw ElectabuzzAnimation
+ dw MagmarAnimation
+ dw PinsirAnimation
+ dw TaurosAnimation
+ dw MagikarpAnimation
+ dw GyaradosAnimation
+ dw LaprasAnimation
+ dw DittoAnimation
+ dw EeveeAnimation
+ dw VaporeonAnimation
+ dw JolteonAnimation
+ dw FlareonAnimation
+ dw PorygonAnimation
+ dw OmanyteAnimation
+ dw OmastarAnimation
+ dw KabutoAnimation
+ dw KabutopsAnimation
+ dw AerodactylAnimation
+ dw SnorlaxAnimation
+ dw ArticunoAnimation
+ dw ZapdosAnimation
+ dw MoltresAnimation
+ dw DratiniAnimation
+ dw DragonairAnimation
+ dw DragoniteAnimation
+ dw MewtwoAnimation
+ dw MewAnimation
+ dw ChikoritaAnimation
+ dw BayleefAnimation
+ dw MeganiumAnimation
+ dw CyndaquilAnimation
+ dw QuilavaAnimation
+ dw TyphlosionAnimation
+ dw TotodileAnimation
+ dw CroconawAnimation
+ dw FeraligatrAnimation
+ dw SentretAnimation
+ dw FurretAnimation
+ dw HoothootAnimation
+ dw NoctowlAnimation
+ dw LedybaAnimation
+ dw LedianAnimation
+ dw SpinarakAnimation
+ dw AriadosAnimation
+ dw CrobatAnimation
+ dw ChinchouAnimation
+ dw LanturnAnimation
+ dw PichuAnimation
+ dw CleffaAnimation
+ dw IgglybuffAnimation
+ dw TogepiAnimation
+ dw TogeticAnimation
+ dw NatuAnimation
+ dw XatuAnimation
+ dw MareepAnimation
+ dw FlaaffyAnimation
+ dw AmpharosAnimation
+ dw BellossomAnimation
+ dw MarillAnimation
+ dw AzumarillAnimation
+ dw SudowoodoAnimation
+ dw PolitoedAnimation
+ dw HoppipAnimation
+ dw SkiploomAnimation
+ dw JumpluffAnimation
+ dw AipomAnimation
+ dw SunkernAnimation
+ dw SunfloraAnimation
+ dw YanmaAnimation
+ dw WooperAnimation
+ dw QuagsireAnimation
+ dw EspeonAnimation
+ dw UmbreonAnimation
+ dw MurkrowAnimation
+ dw SlowkingAnimation
+ dw MisdreavusAnimation
+ dw UnownAnimation
+ dw WobbuffetAnimation
+ dw GirafarigAnimation
+ dw PinecoAnimation
+ dw ForretressAnimation
+ dw DunsparceAnimation
+ dw GligarAnimation
+ dw SteelixAnimation
+ dw SnubbullAnimation
+ dw GranbullAnimation
+ dw QwilfishAnimation
+ dw ScizorAnimation
+ dw ShuckleAnimation
+ dw HeracrossAnimation
+ dw SneaselAnimation
+ dw TeddiursaAnimation
+ dw UrsaringAnimation
+ dw SlugmaAnimation
+ dw MagcargoAnimation
+ dw SwinubAnimation
+ dw PiloswineAnimation
+ dw CorsolaAnimation
+ dw RemoraidAnimation
+ dw OctilleryAnimation
+ dw DelibirdAnimation
+ dw MantineAnimation
+ dw SkarmoryAnimation
+ dw HoundourAnimation
+ dw HoundoomAnimation
+ dw KingdraAnimation
+ dw PhanpyAnimation
+ dw DonphanAnimation
+ dw Porygon2Animation
+ dw StantlerAnimation
+ dw SmeargleAnimation
+ dw TyrogueAnimation
+ dw HitmontopAnimation
+ dw SmoochumAnimation
+ dw ElekidAnimation
+ dw MagbyAnimation
+ dw MiltankAnimation
+ dw BlisseyAnimation
+ dw RaikouAnimation
+ dw EnteiAnimation
+ dw SuicuneAnimation
+ dw LarvitarAnimation
+ dw PupitarAnimation
+ dw TyranitarAnimation
+ dw LugiaAnimation
+ dw HoOhAnimation
+ dw CelebiAnimation
diff --git a/gfx/pics/anims.asm b/gfx/pics/anims.asm
new file mode 100644
index 000000000..fb60649a3
--- /dev/null
+++ b/gfx/pics/anims.asm
@@ -0,0 +1,252 @@
+BulbasaurAnimation: INCLUDE "gfx/pics/001/anim0.asm"
+IvysaurAnimation: INCLUDE "gfx/pics/002/anim0.asm"
+VenusaurAnimation: INCLUDE "gfx/pics/003/anim0.asm"
+CharmanderAnimation: INCLUDE "gfx/pics/004/anim0.asm"
+CharmeleonAnimation: INCLUDE "gfx/pics/005/anim0.asm"
+CharizardAnimation: INCLUDE "gfx/pics/006/anim0.asm"
+SquirtleAnimation: INCLUDE "gfx/pics/007/anim0.asm"
+WartortleAnimation: INCLUDE "gfx/pics/008/anim0.asm"
+BlastoiseAnimation: INCLUDE "gfx/pics/009/anim0.asm"
+CaterpieAnimation: INCLUDE "gfx/pics/010/anim0.asm"
+MetapodAnimation: INCLUDE "gfx/pics/011/anim0.asm"
+ButterfreeAnimation: INCLUDE "gfx/pics/012/anim0.asm"
+WeedleAnimation: INCLUDE "gfx/pics/013/anim0.asm"
+KakunaAnimation: INCLUDE "gfx/pics/014/anim0.asm"
+BeedrillAnimation: INCLUDE "gfx/pics/015/anim0.asm"
+PidgeyAnimation: INCLUDE "gfx/pics/016/anim0.asm"
+PidgeottoAnimation: INCLUDE "gfx/pics/017/anim0.asm"
+PidgeotAnimation: INCLUDE "gfx/pics/018/anim0.asm"
+RattataAnimation: INCLUDE "gfx/pics/019/anim0.asm"
+RaticateAnimation: INCLUDE "gfx/pics/020/anim0.asm"
+SpearowAnimation: INCLUDE "gfx/pics/021/anim0.asm"
+FearowAnimation: INCLUDE "gfx/pics/022/anim0.asm"
+EkansAnimation: INCLUDE "gfx/pics/023/anim0.asm"
+ArbokAnimation: INCLUDE "gfx/pics/024/anim0.asm"
+PikachuAnimation: INCLUDE "gfx/pics/025/anim0.asm"
+RaichuAnimation: INCLUDE "gfx/pics/026/anim0.asm"
+SandshrewAnimation: INCLUDE "gfx/pics/027/anim0.asm"
+SandslashAnimation: INCLUDE "gfx/pics/028/anim0.asm"
+NidoranFAnimation: INCLUDE "gfx/pics/029/anim0.asm"
+NidorinaAnimation: INCLUDE "gfx/pics/030/anim0.asm"
+NidoqueenAnimation: INCLUDE "gfx/pics/031/anim0.asm"
+NidoranMAnimation: INCLUDE "gfx/pics/032/anim0.asm"
+NidorinoAnimation: INCLUDE "gfx/pics/033/anim0.asm"
+NidokingAnimation: INCLUDE "gfx/pics/034/anim0.asm"
+ClefairyAnimation: INCLUDE "gfx/pics/035/anim0.asm"
+ClefableAnimation: INCLUDE "gfx/pics/036/anim0.asm"
+VulpixAnimation: INCLUDE "gfx/pics/037/anim0.asm"
+NinetalesAnimation: INCLUDE "gfx/pics/038/anim0.asm"
+JigglypuffAnimation: INCLUDE "gfx/pics/039/anim0.asm"
+WigglytuffAnimation: INCLUDE "gfx/pics/040/anim0.asm"
+ZubatAnimation: INCLUDE "gfx/pics/041/anim0.asm"
+GolbatAnimation: INCLUDE "gfx/pics/042/anim0.asm"
+OddishAnimation: INCLUDE "gfx/pics/043/anim0.asm"
+GloomAnimation: INCLUDE "gfx/pics/044/anim0.asm"
+VileplumeAnimation: INCLUDE "gfx/pics/045/anim0.asm"
+ParasAnimation: INCLUDE "gfx/pics/046/anim0.asm"
+ParasectAnimation: INCLUDE "gfx/pics/047/anim0.asm"
+VenonatAnimation: INCLUDE "gfx/pics/048/anim0.asm"
+VenomothAnimation: INCLUDE "gfx/pics/049/anim0.asm"
+DiglettAnimation: INCLUDE "gfx/pics/050/anim0.asm"
+DugtrioAnimation: INCLUDE "gfx/pics/051/anim0.asm"
+MeowthAnimation: INCLUDE "gfx/pics/052/anim0.asm"
+PersianAnimation: INCLUDE "gfx/pics/053/anim0.asm"
+PsyduckAnimation: INCLUDE "gfx/pics/054/anim0.asm"
+GolduckAnimation: INCLUDE "gfx/pics/055/anim0.asm"
+MankeyAnimation: INCLUDE "gfx/pics/056/anim0.asm"
+PrimeapeAnimation: INCLUDE "gfx/pics/057/anim0.asm"
+GrowlitheAnimation: INCLUDE "gfx/pics/058/anim0.asm"
+ArcanineAnimation: INCLUDE "gfx/pics/059/anim0.asm"
+PoliwagAnimation: INCLUDE "gfx/pics/060/anim0.asm"
+PoliwhirlAnimation: INCLUDE "gfx/pics/061/anim0.asm"
+PoliwrathAnimation: INCLUDE "gfx/pics/062/anim0.asm"
+AbraAnimation: INCLUDE "gfx/pics/063/anim0.asm"
+KadabraAnimation: INCLUDE "gfx/pics/064/anim0.asm"
+AlakazamAnimation: INCLUDE "gfx/pics/065/anim0.asm"
+MachopAnimation: INCLUDE "gfx/pics/066/anim0.asm"
+MachokeAnimation: INCLUDE "gfx/pics/067/anim0.asm"
+MachampAnimation: INCLUDE "gfx/pics/068/anim0.asm"
+BellsproutAnimation: INCLUDE "gfx/pics/069/anim0.asm"
+WeepinbellAnimation: INCLUDE "gfx/pics/070/anim0.asm"
+VictreebelAnimation: INCLUDE "gfx/pics/071/anim0.asm"
+TentacoolAnimation: INCLUDE "gfx/pics/072/anim0.asm"
+TentacruelAnimation: INCLUDE "gfx/pics/073/anim0.asm"
+GeodudeAnimation: INCLUDE "gfx/pics/074/anim0.asm"
+GravelerAnimation: INCLUDE "gfx/pics/075/anim0.asm"
+GolemAnimation: INCLUDE "gfx/pics/076/anim0.asm"
+PonytaAnimation: INCLUDE "gfx/pics/077/anim0.asm"
+RapidashAnimation: INCLUDE "gfx/pics/078/anim0.asm"
+SlowpokeAnimation: INCLUDE "gfx/pics/079/anim0.asm"
+SlowbroAnimation: INCLUDE "gfx/pics/080/anim0.asm"
+MagnemiteAnimation: INCLUDE "gfx/pics/081/anim0.asm"
+MagnetonAnimation: INCLUDE "gfx/pics/082/anim0.asm"
+FarfetchDAnimation: INCLUDE "gfx/pics/083/anim0.asm"
+DoduoAnimation: INCLUDE "gfx/pics/084/anim0.asm"
+DodrioAnimation: INCLUDE "gfx/pics/085/anim0.asm"
+SeelAnimation: INCLUDE "gfx/pics/086/anim0.asm"
+DewgongAnimation: INCLUDE "gfx/pics/087/anim0.asm"
+GrimerAnimation: INCLUDE "gfx/pics/088/anim0.asm"
+MukAnimation: INCLUDE "gfx/pics/089/anim0.asm"
+ShellderAnimation: INCLUDE "gfx/pics/090/anim0.asm"
+CloysterAnimation: INCLUDE "gfx/pics/091/anim0.asm"
+GastlyAnimation: INCLUDE "gfx/pics/092/anim0.asm"
+HaunterAnimation: INCLUDE "gfx/pics/093/anim0.asm"
+GengarAnimation: INCLUDE "gfx/pics/094/anim0.asm"
+OnixAnimation: INCLUDE "gfx/pics/095/anim0.asm"
+DrowzeeAnimation: INCLUDE "gfx/pics/096/anim0.asm"
+HypnoAnimation: INCLUDE "gfx/pics/097/anim0.asm"
+KrabbyAnimation: INCLUDE "gfx/pics/098/anim0.asm"
+KinglerAnimation: INCLUDE "gfx/pics/099/anim0.asm"
+VoltorbAnimation: INCLUDE "gfx/pics/100/anim0.asm"
+ElectrodeAnimation: INCLUDE "gfx/pics/101/anim0.asm"
+ExeggcuteAnimation: INCLUDE "gfx/pics/102/anim0.asm"
+ExeggutorAnimation: INCLUDE "gfx/pics/103/anim0.asm"
+CuboneAnimation: INCLUDE "gfx/pics/104/anim0.asm"
+MarowakAnimation: INCLUDE "gfx/pics/105/anim0.asm"
+HitmonleeAnimation: INCLUDE "gfx/pics/106/anim0.asm"
+HitmonchanAnimation: INCLUDE "gfx/pics/107/anim0.asm"
+LickitungAnimation: INCLUDE "gfx/pics/108/anim0.asm"
+KoffingAnimation: INCLUDE "gfx/pics/109/anim0.asm"
+WeezingAnimation: INCLUDE "gfx/pics/110/anim0.asm"
+RhyhornAnimation: INCLUDE "gfx/pics/111/anim0.asm"
+RhydonAnimation: INCLUDE "gfx/pics/112/anim0.asm"
+ChanseyAnimation: INCLUDE "gfx/pics/113/anim0.asm"
+TangelaAnimation: INCLUDE "gfx/pics/114/anim0.asm"
+KangaskhanAnimation: INCLUDE "gfx/pics/115/anim0.asm"
+HorseaAnimation: INCLUDE "gfx/pics/116/anim0.asm"
+SeadraAnimation: INCLUDE "gfx/pics/117/anim0.asm"
+GoldeenAnimation: INCLUDE "gfx/pics/118/anim0.asm"
+SeakingAnimation: INCLUDE "gfx/pics/119/anim0.asm"
+StaryuAnimation: INCLUDE "gfx/pics/120/anim0.asm"
+StarmieAnimation: INCLUDE "gfx/pics/121/anim0.asm"
+MrMimeAnimation: INCLUDE "gfx/pics/122/anim0.asm"
+ScytherAnimation: INCLUDE "gfx/pics/123/anim0.asm"
+JynxAnimation: INCLUDE "gfx/pics/124/anim0.asm"
+ElectabuzzAnimation: INCLUDE "gfx/pics/125/anim0.asm"
+MagmarAnimation: INCLUDE "gfx/pics/126/anim0.asm"
+PinsirAnimation: INCLUDE "gfx/pics/127/anim0.asm"
+TaurosAnimation: INCLUDE "gfx/pics/128/anim0.asm"
+MagikarpAnimation: INCLUDE "gfx/pics/129/anim0.asm"
+GyaradosAnimation: INCLUDE "gfx/pics/130/anim0.asm"
+LaprasAnimation: INCLUDE "gfx/pics/131/anim0.asm"
+DittoAnimation: INCLUDE "gfx/pics/132/anim0.asm"
+EeveeAnimation: INCLUDE "gfx/pics/133/anim0.asm"
+VaporeonAnimation: INCLUDE "gfx/pics/134/anim0.asm"
+JolteonAnimation: INCLUDE "gfx/pics/135/anim0.asm"
+FlareonAnimation: INCLUDE "gfx/pics/136/anim0.asm"
+PorygonAnimation: INCLUDE "gfx/pics/137/anim0.asm"
+OmanyteAnimation: INCLUDE "gfx/pics/138/anim0.asm"
+OmastarAnimation: INCLUDE "gfx/pics/139/anim0.asm"
+KabutoAnimation: INCLUDE "gfx/pics/140/anim0.asm"
+KabutopsAnimation: INCLUDE "gfx/pics/141/anim0.asm"
+AerodactylAnimation: INCLUDE "gfx/pics/142/anim0.asm"
+SnorlaxAnimation: INCLUDE "gfx/pics/143/anim0.asm"
+ArticunoAnimation: INCLUDE "gfx/pics/144/anim0.asm"
+ZapdosAnimation: INCLUDE "gfx/pics/145/anim0.asm"
+MoltresAnimation: INCLUDE "gfx/pics/146/anim0.asm"
+DratiniAnimation: INCLUDE "gfx/pics/147/anim0.asm"
+DragonairAnimation: INCLUDE "gfx/pics/148/anim0.asm"
+DragoniteAnimation: INCLUDE "gfx/pics/149/anim0.asm"
+MewtwoAnimation: INCLUDE "gfx/pics/150/anim0.asm"
+MewAnimation: INCLUDE "gfx/pics/151/anim0.asm"
+ChikoritaAnimation: INCLUDE "gfx/pics/152/anim0.asm"
+BayleefAnimation: INCLUDE "gfx/pics/153/anim0.asm"
+MeganiumAnimation: INCLUDE "gfx/pics/154/anim0.asm"
+CyndaquilAnimation: INCLUDE "gfx/pics/155/anim0.asm"
+QuilavaAnimation: INCLUDE "gfx/pics/156/anim0.asm"
+TyphlosionAnimation: INCLUDE "gfx/pics/157/anim0.asm"
+TotodileAnimation: INCLUDE "gfx/pics/158/anim0.asm"
+CroconawAnimation: INCLUDE "gfx/pics/159/anim0.asm"
+FeraligatrAnimation: INCLUDE "gfx/pics/160/anim0.asm"
+SentretAnimation: INCLUDE "gfx/pics/161/anim0.asm"
+FurretAnimation: INCLUDE "gfx/pics/162/anim0.asm"
+HoothootAnimation: INCLUDE "gfx/pics/163/anim0.asm"
+NoctowlAnimation: INCLUDE "gfx/pics/164/anim0.asm"
+LedybaAnimation: INCLUDE "gfx/pics/165/anim0.asm"
+LedianAnimation: INCLUDE "gfx/pics/166/anim0.asm"
+SpinarakAnimation: INCLUDE "gfx/pics/167/anim0.asm"
+AriadosAnimation: INCLUDE "gfx/pics/168/anim0.asm"
+CrobatAnimation: INCLUDE "gfx/pics/169/anim0.asm"
+ChinchouAnimation: INCLUDE "gfx/pics/170/anim0.asm"
+LanturnAnimation: INCLUDE "gfx/pics/171/anim0.asm"
+PichuAnimation: INCLUDE "gfx/pics/172/anim0.asm"
+CleffaAnimation: INCLUDE "gfx/pics/173/anim0.asm"
+IgglybuffAnimation: INCLUDE "gfx/pics/174/anim0.asm"
+TogepiAnimation: INCLUDE "gfx/pics/175/anim0.asm"
+TogeticAnimation: INCLUDE "gfx/pics/176/anim0.asm"
+NatuAnimation: INCLUDE "gfx/pics/177/anim0.asm"
+XatuAnimation: INCLUDE "gfx/pics/178/anim0.asm"
+MareepAnimation: INCLUDE "gfx/pics/179/anim0.asm"
+FlaaffyAnimation: INCLUDE "gfx/pics/180/anim0.asm"
+AmpharosAnimation: INCLUDE "gfx/pics/181/anim0.asm"
+BellossomAnimation: INCLUDE "gfx/pics/182/anim0.asm"
+MarillAnimation: INCLUDE "gfx/pics/183/anim0.asm"
+AzumarillAnimation: INCLUDE "gfx/pics/184/anim0.asm"
+SudowoodoAnimation: INCLUDE "gfx/pics/185/anim0.asm"
+PolitoedAnimation: INCLUDE "gfx/pics/186/anim0.asm"
+HoppipAnimation: INCLUDE "gfx/pics/187/anim0.asm"
+SkiploomAnimation: INCLUDE "gfx/pics/188/anim0.asm"
+JumpluffAnimation: INCLUDE "gfx/pics/189/anim0.asm"
+AipomAnimation: INCLUDE "gfx/pics/190/anim0.asm"
+SunkernAnimation: INCLUDE "gfx/pics/191/anim0.asm"
+SunfloraAnimation: INCLUDE "gfx/pics/192/anim0.asm"
+YanmaAnimation: INCLUDE "gfx/pics/193/anim0.asm"
+WooperAnimation: INCLUDE "gfx/pics/194/anim0.asm"
+QuagsireAnimation: INCLUDE "gfx/pics/195/anim0.asm"
+EspeonAnimation: INCLUDE "gfx/pics/196/anim0.asm"
+UmbreonAnimation: INCLUDE "gfx/pics/197/anim0.asm"
+MurkrowAnimation: INCLUDE "gfx/pics/198/anim0.asm"
+SlowkingAnimation: INCLUDE "gfx/pics/199/anim0.asm"
+MisdreavusAnimation: INCLUDE "gfx/pics/200/anim0.asm"
+UnownAnimation: INCLUDE "gfx/pics/201/anim0.asm"
+WobbuffetAnimation: INCLUDE "gfx/pics/202/anim0.asm"
+GirafarigAnimation: INCLUDE "gfx/pics/203/anim0.asm"
+PinecoAnimation: INCLUDE "gfx/pics/204/anim0.asm"
+ForretressAnimation: INCLUDE "gfx/pics/205/anim0.asm"
+DunsparceAnimation: INCLUDE "gfx/pics/206/anim0.asm"
+GligarAnimation: INCLUDE "gfx/pics/207/anim0.asm"
+SteelixAnimation: INCLUDE "gfx/pics/208/anim0.asm"
+SnubbullAnimation: INCLUDE "gfx/pics/209/anim0.asm"
+GranbullAnimation: INCLUDE "gfx/pics/210/anim0.asm"
+QwilfishAnimation: INCLUDE "gfx/pics/211/anim0.asm"
+ScizorAnimation: INCLUDE "gfx/pics/212/anim0.asm"
+ShuckleAnimation: INCLUDE "gfx/pics/213/anim0.asm"
+HeracrossAnimation: INCLUDE "gfx/pics/214/anim0.asm"
+SneaselAnimation: INCLUDE "gfx/pics/215/anim0.asm"
+TeddiursaAnimation: INCLUDE "gfx/pics/216/anim0.asm"
+UrsaringAnimation: INCLUDE "gfx/pics/217/anim0.asm"
+SlugmaAnimation: INCLUDE "gfx/pics/218/anim0.asm"
+MagcargoAnimation: INCLUDE "gfx/pics/219/anim0.asm"
+SwinubAnimation: INCLUDE "gfx/pics/220/anim0.asm"
+PiloswineAnimation: INCLUDE "gfx/pics/221/anim0.asm"
+CorsolaAnimation: INCLUDE "gfx/pics/222/anim0.asm"
+RemoraidAnimation: INCLUDE "gfx/pics/223/anim0.asm"
+OctilleryAnimation: INCLUDE "gfx/pics/224/anim0.asm"
+DelibirdAnimation: INCLUDE "gfx/pics/225/anim0.asm"
+MantineAnimation: INCLUDE "gfx/pics/226/anim0.asm"
+SkarmoryAnimation: INCLUDE "gfx/pics/227/anim0.asm"
+HoundourAnimation: INCLUDE "gfx/pics/228/anim0.asm"
+HoundoomAnimation: INCLUDE "gfx/pics/229/anim0.asm"
+KingdraAnimation: INCLUDE "gfx/pics/230/anim0.asm"
+PhanpyAnimation: INCLUDE "gfx/pics/231/anim0.asm"
+DonphanAnimation: INCLUDE "gfx/pics/232/anim0.asm"
+Porygon2Animation: INCLUDE "gfx/pics/233/anim0.asm"
+StantlerAnimation: INCLUDE "gfx/pics/234/anim0.asm"
+SmeargleAnimation: INCLUDE "gfx/pics/235/anim0.asm"
+TyrogueAnimation: INCLUDE "gfx/pics/236/anim0.asm"
+HitmontopAnimation: INCLUDE "gfx/pics/237/anim0.asm"
+SmoochumAnimation: INCLUDE "gfx/pics/238/anim0.asm"
+ElekidAnimation: INCLUDE "gfx/pics/239/anim0.asm"
+MagbyAnimation: INCLUDE "gfx/pics/240/anim0.asm"
+MiltankAnimation: INCLUDE "gfx/pics/241/anim0.asm"
+BlisseyAnimation: INCLUDE "gfx/pics/242/anim0.asm"
+RaikouAnimation: INCLUDE "gfx/pics/243/anim0.asm"
+EnteiAnimation: INCLUDE "gfx/pics/244/anim0.asm"
+SuicuneAnimation: INCLUDE "gfx/pics/245/anim0.asm"
+LarvitarAnimation: INCLUDE "gfx/pics/246/anim0.asm"
+PupitarAnimation: INCLUDE "gfx/pics/247/anim0.asm"
+TyranitarAnimation: INCLUDE "gfx/pics/248/anim0.asm"
+LugiaAnimation: INCLUDE "gfx/pics/249/anim0.asm"
+HoOhAnimation: INCLUDE "gfx/pics/250/anim0.asm"
+CelebiAnimation: INCLUDE "gfx/pics/251/anim0.asm"
+EggAnimation: INCLUDE "gfx/pics/egg/anim0.asm"
diff --git a/gfx/pics/bitmask_pointers.asm b/gfx/pics/bitmask_pointers.asm
new file mode 100644
index 000000000..8d9b32e85
--- /dev/null
+++ b/gfx/pics/bitmask_pointers.asm
@@ -0,0 +1,251 @@
+ dw BulbasaurBitmasks
+ dw IvysaurBitmasks
+ dw VenusaurBitmasks
+ dw CharmanderBitmasks
+ dw CharmeleonBitmasks
+ dw CharizardBitmasks
+ dw SquirtleBitmasks
+ dw WartortleBitmasks
+ dw BlastoiseBitmasks
+ dw CaterpieBitmasks
+ dw MetapodBitmasks
+ dw ButterfreeBitmasks
+ dw WeedleBitmasks
+ dw KakunaBitmasks
+ dw BeedrillBitmasks
+ dw PidgeyBitmasks
+ dw PidgeottoBitmasks
+ dw PidgeotBitmasks
+ dw RattataBitmasks
+ dw RaticateBitmasks
+ dw SpearowBitmasks
+ dw FearowBitmasks
+ dw EkansBitmasks
+ dw ArbokBitmasks
+ dw PikachuBitmasks
+ dw RaichuBitmasks
+ dw SandshrewBitmasks
+ dw SandslashBitmasks
+ dw NidoranFBitmasks
+ dw NidorinaBitmasks
+ dw NidoqueenBitmasks
+ dw NidoranMBitmasks
+ dw NidorinoBitmasks
+ dw NidokingBitmasks
+ dw ClefairyBitmasks
+ dw ClefableBitmasks
+ dw VulpixBitmasks
+ dw NinetalesBitmasks
+ dw JigglypuffBitmasks
+ dw WigglytuffBitmasks
+ dw ZubatBitmasks
+ dw GolbatBitmasks
+ dw OddishBitmasks
+ dw GloomBitmasks
+ dw VileplumeBitmasks
+ dw ParasBitmasks
+ dw ParasectBitmasks
+ dw VenonatBitmasks
+ dw VenomothBitmasks
+ dw DiglettBitmasks
+ dw DugtrioBitmasks
+ dw MeowthBitmasks
+ dw PersianBitmasks
+ dw PsyduckBitmasks
+ dw GolduckBitmasks
+ dw MankeyBitmasks
+ dw PrimeapeBitmasks
+ dw GrowlitheBitmasks
+ dw ArcanineBitmasks
+ dw PoliwagBitmasks
+ dw PoliwhirlBitmasks
+ dw PoliwrathBitmasks
+ dw AbraBitmasks
+ dw KadabraBitmasks
+ dw AlakazamBitmasks
+ dw MachopBitmasks
+ dw MachokeBitmasks
+ dw MachampBitmasks
+ dw BellsproutBitmasks
+ dw WeepinbellBitmasks
+ dw VictreebelBitmasks
+ dw TentacoolBitmasks
+ dw TentacruelBitmasks
+ dw GeodudeBitmasks
+ dw GravelerBitmasks
+ dw GolemBitmasks
+ dw PonytaBitmasks
+ dw RapidashBitmasks
+ dw SlowpokeBitmasks
+ dw SlowbroBitmasks
+ dw MagnemiteBitmasks
+ dw MagnetonBitmasks
+ dw FarfetchDBitmasks
+ dw DoduoBitmasks
+ dw DodrioBitmasks
+ dw SeelBitmasks
+ dw DewgongBitmasks
+ dw GrimerBitmasks
+ dw MukBitmasks
+ dw ShellderBitmasks
+ dw CloysterBitmasks
+ dw GastlyBitmasks
+ dw HaunterBitmasks
+ dw GengarBitmasks
+ dw OnixBitmasks
+ dw DrowzeeBitmasks
+ dw HypnoBitmasks
+ dw KrabbyBitmasks
+ dw KinglerBitmasks
+ dw VoltorbBitmasks
+ dw ElectrodeBitmasks
+ dw ExeggcuteBitmasks
+ dw ExeggutorBitmasks
+ dw CuboneBitmasks
+ dw MarowakBitmasks
+ dw HitmonleeBitmasks
+ dw HitmonchanBitmasks
+ dw LickitungBitmasks
+ dw KoffingBitmasks
+ dw WeezingBitmasks
+ dw RhyhornBitmasks
+ dw RhydonBitmasks
+ dw ChanseyBitmasks
+ dw TangelaBitmasks
+ dw KangaskhanBitmasks
+ dw HorseaBitmasks
+ dw SeadraBitmasks
+ dw GoldeenBitmasks
+ dw SeakingBitmasks
+ dw StaryuBitmasks
+ dw StarmieBitmasks
+ dw MrMimeBitmasks
+ dw ScytherBitmasks
+ dw JynxBitmasks
+ dw ElectabuzzBitmasks
+ dw MagmarBitmasks
+ dw PinsirBitmasks
+ dw TaurosBitmasks
+ dw MagikarpBitmasks
+ dw GyaradosBitmasks
+ dw LaprasBitmasks
+ dw DittoBitmasks
+ dw EeveeBitmasks
+ dw VaporeonBitmasks
+ dw JolteonBitmasks
+ dw FlareonBitmasks
+ dw PorygonBitmasks
+ dw OmanyteBitmasks
+ dw OmastarBitmasks
+ dw KabutoBitmasks
+ dw KabutopsBitmasks
+ dw AerodactylBitmasks
+ dw SnorlaxBitmasks
+ dw ArticunoBitmasks
+ dw ZapdosBitmasks
+ dw MoltresBitmasks
+ dw DratiniBitmasks
+ dw DragonairBitmasks
+ dw DragoniteBitmasks
+ dw MewtwoBitmasks
+ dw MewBitmasks
+ dw ChikoritaBitmasks
+ dw BayleefBitmasks
+ dw MeganiumBitmasks
+ dw CyndaquilBitmasks
+ dw QuilavaBitmasks
+ dw TyphlosionBitmasks
+ dw TotodileBitmasks
+ dw CroconawBitmasks
+ dw FeraligatrBitmasks
+ dw SentretBitmasks
+ dw FurretBitmasks
+ dw HoothootBitmasks
+ dw NoctowlBitmasks
+ dw LedybaBitmasks
+ dw LedianBitmasks
+ dw SpinarakBitmasks
+ dw AriadosBitmasks
+ dw CrobatBitmasks
+ dw ChinchouBitmasks
+ dw LanturnBitmasks
+ dw PichuBitmasks
+ dw CleffaBitmasks
+ dw IgglybuffBitmasks
+ dw TogepiBitmasks
+ dw TogeticBitmasks
+ dw NatuBitmasks
+ dw XatuBitmasks
+ dw MareepBitmasks
+ dw FlaaffyBitmasks
+ dw AmpharosBitmasks
+ dw BellossomBitmasks
+ dw MarillBitmasks
+ dw AzumarillBitmasks
+ dw SudowoodoBitmasks
+ dw PolitoedBitmasks
+ dw HoppipBitmasks
+ dw SkiploomBitmasks
+ dw JumpluffBitmasks
+ dw AipomBitmasks
+ dw SunkernBitmasks
+ dw SunfloraBitmasks
+ dw YanmaBitmasks
+ dw WooperBitmasks
+ dw QuagsireBitmasks
+ dw EspeonBitmasks
+ dw UmbreonBitmasks
+ dw MurkrowBitmasks
+ dw SlowkingBitmasks
+ dw MisdreavusBitmasks
+ dw UnownBitmasks
+ dw WobbuffetBitmasks
+ dw GirafarigBitmasks
+ dw PinecoBitmasks
+ dw ForretressBitmasks
+ dw DunsparceBitmasks
+ dw GligarBitmasks
+ dw SteelixBitmasks
+ dw SnubbullBitmasks
+ dw GranbullBitmasks
+ dw QwilfishBitmasks
+ dw ScizorBitmasks
+ dw ShuckleBitmasks
+ dw HeracrossBitmasks
+ dw SneaselBitmasks
+ dw TeddiursaBitmasks
+ dw UrsaringBitmasks
+ dw SlugmaBitmasks
+ dw MagcargoBitmasks
+ dw SwinubBitmasks
+ dw PiloswineBitmasks
+ dw CorsolaBitmasks
+ dw RemoraidBitmasks
+ dw OctilleryBitmasks
+ dw DelibirdBitmasks
+ dw MantineBitmasks
+ dw SkarmoryBitmasks
+ dw HoundourBitmasks
+ dw HoundoomBitmasks
+ dw KingdraBitmasks
+ dw PhanpyBitmasks
+ dw DonphanBitmasks
+ dw Porygon2Bitmasks
+ dw StantlerBitmasks
+ dw SmeargleBitmasks
+ dw TyrogueBitmasks
+ dw HitmontopBitmasks
+ dw SmoochumBitmasks
+ dw ElekidBitmasks
+ dw MagbyBitmasks
+ dw MiltankBitmasks
+ dw BlisseyBitmasks
+ dw RaikouBitmasks
+ dw EnteiBitmasks
+ dw SuicuneBitmasks
+ dw LarvitarBitmasks
+ dw PupitarBitmasks
+ dw TyranitarBitmasks
+ dw LugiaBitmasks
+ dw HoOhBitmasks
+ dw CelebiBitmasks
diff --git a/gfx/pics/bitmasks.asm b/gfx/pics/bitmasks.asm
new file mode 100644
index 000000000..a6c963e7f
--- /dev/null
+++ b/gfx/pics/bitmasks.asm
@@ -0,0 +1,252 @@
+BulbasaurBitmasks: INCLUDE "gfx/pics/001/bitmask.asm"
+IvysaurBitmasks: INCLUDE "gfx/pics/002/bitmask.asm"
+VenusaurBitmasks: INCLUDE "gfx/pics/003/bitmask.asm"
+CharmanderBitmasks: INCLUDE "gfx/pics/004/bitmask.asm"
+CharmeleonBitmasks: INCLUDE "gfx/pics/005/bitmask.asm"
+CharizardBitmasks: INCLUDE "gfx/pics/006/bitmask.asm"
+SquirtleBitmasks: INCLUDE "gfx/pics/007/bitmask.asm"
+WartortleBitmasks: INCLUDE "gfx/pics/008/bitmask.asm"
+BlastoiseBitmasks: INCLUDE "gfx/pics/009/bitmask.asm"
+CaterpieBitmasks: INCLUDE "gfx/pics/010/bitmask.asm"
+MetapodBitmasks: INCLUDE "gfx/pics/011/bitmask.asm"
+ButterfreeBitmasks: INCLUDE "gfx/pics/012/bitmask.asm"
+WeedleBitmasks: INCLUDE "gfx/pics/013/bitmask.asm"
+KakunaBitmasks: INCLUDE "gfx/pics/014/bitmask.asm"
+BeedrillBitmasks: INCLUDE "gfx/pics/015/bitmask.asm"
+PidgeyBitmasks: INCLUDE "gfx/pics/016/bitmask.asm"
+PidgeottoBitmasks: INCLUDE "gfx/pics/017/bitmask.asm"
+PidgeotBitmasks: INCLUDE "gfx/pics/018/bitmask.asm"
+RattataBitmasks: INCLUDE "gfx/pics/019/bitmask.asm"
+RaticateBitmasks: INCLUDE "gfx/pics/020/bitmask.asm"
+SpearowBitmasks: INCLUDE "gfx/pics/021/bitmask.asm"
+FearowBitmasks: INCLUDE "gfx/pics/022/bitmask.asm"
+EkansBitmasks: INCLUDE "gfx/pics/023/bitmask.asm"
+ArbokBitmasks: INCLUDE "gfx/pics/024/bitmask.asm"
+PikachuBitmasks: INCLUDE "gfx/pics/025/bitmask.asm"
+RaichuBitmasks: INCLUDE "gfx/pics/026/bitmask.asm"
+SandshrewBitmasks: INCLUDE "gfx/pics/027/bitmask.asm"
+SandslashBitmasks: INCLUDE "gfx/pics/028/bitmask.asm"
+NidoranFBitmasks: INCLUDE "gfx/pics/029/bitmask.asm"
+NidorinaBitmasks: INCLUDE "gfx/pics/030/bitmask.asm"
+NidoqueenBitmasks: INCLUDE "gfx/pics/031/bitmask.asm"
+NidoranMBitmasks: INCLUDE "gfx/pics/032/bitmask.asm"
+NidorinoBitmasks: INCLUDE "gfx/pics/033/bitmask.asm"
+NidokingBitmasks: INCLUDE "gfx/pics/034/bitmask.asm"
+ClefairyBitmasks: INCLUDE "gfx/pics/035/bitmask.asm"
+ClefableBitmasks: INCLUDE "gfx/pics/036/bitmask.asm"
+VulpixBitmasks: INCLUDE "gfx/pics/037/bitmask.asm"
+NinetalesBitmasks: INCLUDE "gfx/pics/038/bitmask.asm"
+JigglypuffBitmasks: INCLUDE "gfx/pics/039/bitmask.asm"
+WigglytuffBitmasks: INCLUDE "gfx/pics/040/bitmask.asm"
+ZubatBitmasks: INCLUDE "gfx/pics/041/bitmask.asm"
+GolbatBitmasks: INCLUDE "gfx/pics/042/bitmask.asm"
+OddishBitmasks: INCLUDE "gfx/pics/043/bitmask.asm"
+GloomBitmasks: INCLUDE "gfx/pics/044/bitmask.asm"
+VileplumeBitmasks: INCLUDE "gfx/pics/045/bitmask.asm"
+ParasBitmasks: INCLUDE "gfx/pics/046/bitmask.asm"
+ParasectBitmasks: INCLUDE "gfx/pics/047/bitmask.asm"
+VenonatBitmasks: INCLUDE "gfx/pics/048/bitmask.asm"
+VenomothBitmasks: INCLUDE "gfx/pics/049/bitmask.asm"
+DiglettBitmasks: INCLUDE "gfx/pics/050/bitmask.asm"
+DugtrioBitmasks: INCLUDE "gfx/pics/051/bitmask.asm"
+MeowthBitmasks: INCLUDE "gfx/pics/052/bitmask.asm"
+PersianBitmasks: INCLUDE "gfx/pics/053/bitmask.asm"
+PsyduckBitmasks: INCLUDE "gfx/pics/054/bitmask.asm"
+GolduckBitmasks: INCLUDE "gfx/pics/055/bitmask.asm"
+MankeyBitmasks: INCLUDE "gfx/pics/056/bitmask.asm"
+PrimeapeBitmasks: INCLUDE "gfx/pics/057/bitmask.asm"
+GrowlitheBitmasks: INCLUDE "gfx/pics/058/bitmask.asm"
+ArcanineBitmasks: INCLUDE "gfx/pics/059/bitmask.asm"
+PoliwagBitmasks: INCLUDE "gfx/pics/060/bitmask.asm"
+PoliwhirlBitmasks: INCLUDE "gfx/pics/061/bitmask.asm"
+PoliwrathBitmasks: INCLUDE "gfx/pics/062/bitmask.asm"
+AbraBitmasks: INCLUDE "gfx/pics/063/bitmask.asm"
+KadabraBitmasks: INCLUDE "gfx/pics/064/bitmask.asm"
+AlakazamBitmasks: INCLUDE "gfx/pics/065/bitmask.asm"
+MachopBitmasks: INCLUDE "gfx/pics/066/bitmask.asm"
+MachokeBitmasks: INCLUDE "gfx/pics/067/bitmask.asm"
+MachampBitmasks: INCLUDE "gfx/pics/068/bitmask.asm"
+BellsproutBitmasks: INCLUDE "gfx/pics/069/bitmask.asm"
+WeepinbellBitmasks: INCLUDE "gfx/pics/070/bitmask.asm"
+VictreebelBitmasks: INCLUDE "gfx/pics/071/bitmask.asm"
+TentacoolBitmasks: INCLUDE "gfx/pics/072/bitmask.asm"
+TentacruelBitmasks: INCLUDE "gfx/pics/073/bitmask.asm"
+GeodudeBitmasks: INCLUDE "gfx/pics/074/bitmask.asm"
+GravelerBitmasks: INCLUDE "gfx/pics/075/bitmask.asm"
+GolemBitmasks: INCLUDE "gfx/pics/076/bitmask.asm"
+PonytaBitmasks: INCLUDE "gfx/pics/077/bitmask.asm"
+RapidashBitmasks: INCLUDE "gfx/pics/078/bitmask.asm"
+SlowpokeBitmasks: INCLUDE "gfx/pics/079/bitmask.asm"
+SlowbroBitmasks: INCLUDE "gfx/pics/080/bitmask.asm"
+MagnemiteBitmasks: INCLUDE "gfx/pics/081/bitmask.asm"
+MagnetonBitmasks: INCLUDE "gfx/pics/082/bitmask.asm"
+FarfetchDBitmasks: INCLUDE "gfx/pics/083/bitmask.asm"
+DoduoBitmasks: INCLUDE "gfx/pics/084/bitmask.asm"
+DodrioBitmasks: INCLUDE "gfx/pics/085/bitmask.asm"
+SeelBitmasks: INCLUDE "gfx/pics/086/bitmask.asm"
+DewgongBitmasks: INCLUDE "gfx/pics/087/bitmask.asm"
+GrimerBitmasks: INCLUDE "gfx/pics/088/bitmask.asm"
+MukBitmasks: INCLUDE "gfx/pics/089/bitmask.asm"
+ShellderBitmasks: INCLUDE "gfx/pics/090/bitmask.asm"
+CloysterBitmasks: INCLUDE "gfx/pics/091/bitmask.asm"
+GastlyBitmasks: INCLUDE "gfx/pics/092/bitmask.asm"
+HaunterBitmasks: INCLUDE "gfx/pics/093/bitmask.asm"
+GengarBitmasks: INCLUDE "gfx/pics/094/bitmask.asm"
+OnixBitmasks: INCLUDE "gfx/pics/095/bitmask.asm"
+DrowzeeBitmasks: INCLUDE "gfx/pics/096/bitmask.asm"
+HypnoBitmasks: INCLUDE "gfx/pics/097/bitmask.asm"
+KrabbyBitmasks: INCLUDE "gfx/pics/098/bitmask.asm"
+KinglerBitmasks: INCLUDE "gfx/pics/099/bitmask.asm"
+VoltorbBitmasks: INCLUDE "gfx/pics/100/bitmask.asm"
+ElectrodeBitmasks: INCLUDE "gfx/pics/101/bitmask.asm"
+ExeggcuteBitmasks: INCLUDE "gfx/pics/102/bitmask.asm"
+ExeggutorBitmasks: INCLUDE "gfx/pics/103/bitmask.asm"
+CuboneBitmasks: INCLUDE "gfx/pics/104/bitmask.asm"
+MarowakBitmasks: INCLUDE "gfx/pics/105/bitmask.asm"
+HitmonleeBitmasks: INCLUDE "gfx/pics/106/bitmask.asm"
+HitmonchanBitmasks: INCLUDE "gfx/pics/107/bitmask.asm"
+LickitungBitmasks: INCLUDE "gfx/pics/108/bitmask.asm"
+KoffingBitmasks: INCLUDE "gfx/pics/109/bitmask.asm"
+WeezingBitmasks: INCLUDE "gfx/pics/110/bitmask.asm"
+RhyhornBitmasks: INCLUDE "gfx/pics/111/bitmask.asm"
+RhydonBitmasks: INCLUDE "gfx/pics/112/bitmask.asm"
+ChanseyBitmasks: INCLUDE "gfx/pics/113/bitmask.asm"
+TangelaBitmasks: INCLUDE "gfx/pics/114/bitmask.asm"
+KangaskhanBitmasks: INCLUDE "gfx/pics/115/bitmask.asm"
+HorseaBitmasks: INCLUDE "gfx/pics/116/bitmask.asm"
+SeadraBitmasks: INCLUDE "gfx/pics/117/bitmask.asm"
+GoldeenBitmasks: INCLUDE "gfx/pics/118/bitmask.asm"
+SeakingBitmasks: INCLUDE "gfx/pics/119/bitmask.asm"
+StaryuBitmasks: INCLUDE "gfx/pics/120/bitmask.asm"
+StarmieBitmasks: INCLUDE "gfx/pics/121/bitmask.asm"
+MrMimeBitmasks: INCLUDE "gfx/pics/122/bitmask.asm"
+ScytherBitmasks: INCLUDE "gfx/pics/123/bitmask.asm"
+JynxBitmasks: INCLUDE "gfx/pics/124/bitmask.asm"
+ElectabuzzBitmasks: INCLUDE "gfx/pics/125/bitmask.asm"
+MagmarBitmasks: INCLUDE "gfx/pics/126/bitmask.asm"
+PinsirBitmasks: INCLUDE "gfx/pics/127/bitmask.asm"
+TaurosBitmasks: INCLUDE "gfx/pics/128/bitmask.asm"
+MagikarpBitmasks: INCLUDE "gfx/pics/129/bitmask.asm"
+GyaradosBitmasks: INCLUDE "gfx/pics/130/bitmask.asm"
+LaprasBitmasks: INCLUDE "gfx/pics/131/bitmask.asm"
+DittoBitmasks: INCLUDE "gfx/pics/132/bitmask.asm"
+EeveeBitmasks: INCLUDE "gfx/pics/133/bitmask.asm"
+VaporeonBitmasks: INCLUDE "gfx/pics/134/bitmask.asm"
+JolteonBitmasks: INCLUDE "gfx/pics/135/bitmask.asm"
+FlareonBitmasks: INCLUDE "gfx/pics/136/bitmask.asm"
+PorygonBitmasks: INCLUDE "gfx/pics/137/bitmask.asm"
+OmanyteBitmasks: INCLUDE "gfx/pics/138/bitmask.asm"
+OmastarBitmasks: INCLUDE "gfx/pics/139/bitmask.asm"
+KabutoBitmasks: INCLUDE "gfx/pics/140/bitmask.asm"
+KabutopsBitmasks: INCLUDE "gfx/pics/141/bitmask.asm"
+AerodactylBitmasks: INCLUDE "gfx/pics/142/bitmask.asm"
+SnorlaxBitmasks: INCLUDE "gfx/pics/143/bitmask.asm"
+ArticunoBitmasks: INCLUDE "gfx/pics/144/bitmask.asm"
+ZapdosBitmasks: INCLUDE "gfx/pics/145/bitmask.asm"
+MoltresBitmasks: INCLUDE "gfx/pics/146/bitmask.asm"
+DratiniBitmasks: INCLUDE "gfx/pics/147/bitmask.asm"
+DragonairBitmasks: INCLUDE "gfx/pics/148/bitmask.asm"
+DragoniteBitmasks: INCLUDE "gfx/pics/149/bitmask.asm"
+MewtwoBitmasks: INCLUDE "gfx/pics/150/bitmask.asm"
+MewBitmasks: INCLUDE "gfx/pics/151/bitmask.asm"
+ChikoritaBitmasks: INCLUDE "gfx/pics/152/bitmask.asm"
+BayleefBitmasks: INCLUDE "gfx/pics/153/bitmask.asm"
+MeganiumBitmasks: INCLUDE "gfx/pics/154/bitmask.asm"
+CyndaquilBitmasks: INCLUDE "gfx/pics/155/bitmask.asm"
+QuilavaBitmasks: INCLUDE "gfx/pics/156/bitmask.asm"
+TyphlosionBitmasks: INCLUDE "gfx/pics/157/bitmask.asm"
+TotodileBitmasks: INCLUDE "gfx/pics/158/bitmask.asm"
+CroconawBitmasks: INCLUDE "gfx/pics/159/bitmask.asm"
+FeraligatrBitmasks: INCLUDE "gfx/pics/160/bitmask.asm"
+SentretBitmasks: INCLUDE "gfx/pics/161/bitmask.asm"
+FurretBitmasks: INCLUDE "gfx/pics/162/bitmask.asm"
+HoothootBitmasks: INCLUDE "gfx/pics/163/bitmask.asm"
+NoctowlBitmasks: INCLUDE "gfx/pics/164/bitmask.asm"
+LedybaBitmasks: INCLUDE "gfx/pics/165/bitmask.asm"
+LedianBitmasks: INCLUDE "gfx/pics/166/bitmask.asm"
+SpinarakBitmasks: INCLUDE "gfx/pics/167/bitmask.asm"
+AriadosBitmasks: INCLUDE "gfx/pics/168/bitmask.asm"
+CrobatBitmasks: INCLUDE "gfx/pics/169/bitmask.asm"
+ChinchouBitmasks: INCLUDE "gfx/pics/170/bitmask.asm"
+LanturnBitmasks: INCLUDE "gfx/pics/171/bitmask.asm"
+PichuBitmasks: INCLUDE "gfx/pics/172/bitmask.asm"
+CleffaBitmasks: INCLUDE "gfx/pics/173/bitmask.asm"
+IgglybuffBitmasks: INCLUDE "gfx/pics/174/bitmask.asm"
+TogepiBitmasks: INCLUDE "gfx/pics/175/bitmask.asm"
+TogeticBitmasks: INCLUDE "gfx/pics/176/bitmask.asm"
+NatuBitmasks: INCLUDE "gfx/pics/177/bitmask.asm"
+XatuBitmasks: INCLUDE "gfx/pics/178/bitmask.asm"
+MareepBitmasks: INCLUDE "gfx/pics/179/bitmask.asm"
+FlaaffyBitmasks: INCLUDE "gfx/pics/180/bitmask.asm"
+AmpharosBitmasks: INCLUDE "gfx/pics/181/bitmask.asm"
+BellossomBitmasks: INCLUDE "gfx/pics/182/bitmask.asm"
+MarillBitmasks: INCLUDE "gfx/pics/183/bitmask.asm"
+AzumarillBitmasks: INCLUDE "gfx/pics/184/bitmask.asm"
+SudowoodoBitmasks: INCLUDE "gfx/pics/185/bitmask.asm"
+PolitoedBitmasks: INCLUDE "gfx/pics/186/bitmask.asm"
+HoppipBitmasks: INCLUDE "gfx/pics/187/bitmask.asm"
+SkiploomBitmasks: INCLUDE "gfx/pics/188/bitmask.asm"
+JumpluffBitmasks: INCLUDE "gfx/pics/189/bitmask.asm"
+AipomBitmasks: INCLUDE "gfx/pics/190/bitmask.asm"
+SunkernBitmasks: INCLUDE "gfx/pics/191/bitmask.asm"
+SunfloraBitmasks: INCLUDE "gfx/pics/192/bitmask.asm"
+YanmaBitmasks: INCLUDE "gfx/pics/193/bitmask.asm"
+WooperBitmasks: INCLUDE "gfx/pics/194/bitmask.asm"
+QuagsireBitmasks: INCLUDE "gfx/pics/195/bitmask.asm"
+EspeonBitmasks: INCLUDE "gfx/pics/196/bitmask.asm"
+UmbreonBitmasks: INCLUDE "gfx/pics/197/bitmask.asm"
+MurkrowBitmasks: INCLUDE "gfx/pics/198/bitmask.asm"
+SlowkingBitmasks: INCLUDE "gfx/pics/199/bitmask.asm"
+MisdreavusBitmasks: INCLUDE "gfx/pics/200/bitmask.asm"
+UnownBitmasks: INCLUDE "gfx/pics/201/bitmask.asm"
+WobbuffetBitmasks: INCLUDE "gfx/pics/202/bitmask.asm"
+GirafarigBitmasks: INCLUDE "gfx/pics/203/bitmask.asm"
+PinecoBitmasks: INCLUDE "gfx/pics/204/bitmask.asm"
+ForretressBitmasks: INCLUDE "gfx/pics/205/bitmask.asm"
+DunsparceBitmasks: INCLUDE "gfx/pics/206/bitmask.asm"
+GligarBitmasks: INCLUDE "gfx/pics/207/bitmask.asm"
+SteelixBitmasks: INCLUDE "gfx/pics/208/bitmask.asm"
+SnubbullBitmasks: INCLUDE "gfx/pics/209/bitmask.asm"
+GranbullBitmasks: INCLUDE "gfx/pics/210/bitmask.asm"
+QwilfishBitmasks: INCLUDE "gfx/pics/211/bitmask.asm"
+ScizorBitmasks: INCLUDE "gfx/pics/212/bitmask.asm"
+ShuckleBitmasks: INCLUDE "gfx/pics/213/bitmask.asm"
+HeracrossBitmasks: INCLUDE "gfx/pics/214/bitmask.asm"
+SneaselBitmasks: INCLUDE "gfx/pics/215/bitmask.asm"
+TeddiursaBitmasks: INCLUDE "gfx/pics/216/bitmask.asm"
+UrsaringBitmasks: INCLUDE "gfx/pics/217/bitmask.asm"
+SlugmaBitmasks: INCLUDE "gfx/pics/218/bitmask.asm"
+MagcargoBitmasks: INCLUDE "gfx/pics/219/bitmask.asm"
+SwinubBitmasks: INCLUDE "gfx/pics/220/bitmask.asm"
+PiloswineBitmasks: INCLUDE "gfx/pics/221/bitmask.asm"
+CorsolaBitmasks: INCLUDE "gfx/pics/222/bitmask.asm"
+RemoraidBitmasks: INCLUDE "gfx/pics/223/bitmask.asm"
+OctilleryBitmasks: INCLUDE "gfx/pics/224/bitmask.asm"
+DelibirdBitmasks: INCLUDE "gfx/pics/225/bitmask.asm"
+MantineBitmasks: INCLUDE "gfx/pics/226/bitmask.asm"
+SkarmoryBitmasks: INCLUDE "gfx/pics/227/bitmask.asm"
+HoundourBitmasks: INCLUDE "gfx/pics/228/bitmask.asm"
+HoundoomBitmasks: INCLUDE "gfx/pics/229/bitmask.asm"
+KingdraBitmasks: INCLUDE "gfx/pics/230/bitmask.asm"
+PhanpyBitmasks: INCLUDE "gfx/pics/231/bitmask.asm"
+DonphanBitmasks: INCLUDE "gfx/pics/232/bitmask.asm"
+Porygon2Bitmasks: INCLUDE "gfx/pics/233/bitmask.asm"
+StantlerBitmasks: INCLUDE "gfx/pics/234/bitmask.asm"
+SmeargleBitmasks: INCLUDE "gfx/pics/235/bitmask.asm"
+TyrogueBitmasks: INCLUDE "gfx/pics/236/bitmask.asm"
+HitmontopBitmasks: INCLUDE "gfx/pics/237/bitmask.asm"
+SmoochumBitmasks: INCLUDE "gfx/pics/238/bitmask.asm"
+ElekidBitmasks: INCLUDE "gfx/pics/239/bitmask.asm"
+MagbyBitmasks: INCLUDE "gfx/pics/240/bitmask.asm"
+MiltankBitmasks: INCLUDE "gfx/pics/241/bitmask.asm"
+BlisseyBitmasks: INCLUDE "gfx/pics/242/bitmask.asm"
+RaikouBitmasks: INCLUDE "gfx/pics/243/bitmask.asm"
+EnteiBitmasks: INCLUDE "gfx/pics/244/bitmask.asm"
+SuicuneBitmasks: INCLUDE "gfx/pics/245/bitmask.asm"
+LarvitarBitmasks: INCLUDE "gfx/pics/246/bitmask.asm"
+PupitarBitmasks: INCLUDE "gfx/pics/247/bitmask.asm"
+TyranitarBitmasks: INCLUDE "gfx/pics/248/bitmask.asm"
+LugiaBitmasks: INCLUDE "gfx/pics/249/bitmask.asm"
+HoOhBitmasks: INCLUDE "gfx/pics/250/bitmask.asm"
+CelebiBitmasks: INCLUDE "gfx/pics/251/bitmask.asm"
+EggBitmasks: INCLUDE "gfx/pics/egg/bitmask.asm"
diff --git a/gfx/pics/egg/anim0.asm b/gfx/pics/egg/anim0.asm
new file mode 100644
index 000000000..1ded66327
--- /dev/null
+++ b/gfx/pics/egg/anim0.asm
@@ -0,0 +1,8 @@
+ setrepeat 2
+ frame 1, 04
+ frame 0, 04
+ frame 2, 04
+ frame 0, 04
+ dorepeat 1
+ endanim
+; 0xd16a3
diff --git a/gfx/pics/egg/anim1.asm b/gfx/pics/egg/anim1.asm
new file mode 100644
index 000000000..634736c6b
--- /dev/null
+++ b/gfx/pics/egg/anim1.asm
@@ -0,0 +1,5 @@
+ frame 1, 03
+ frame 0, 03
+ frame 2, 03
+ endanim
+; 0xd2229
diff --git a/gfx/pics/egg/bitmask.asm b/gfx/pics/egg/bitmask.asm
new file mode 100644
index 000000000..8ff9592c4
--- /dev/null
+++ b/gfx/pics/egg/bitmask.asm
@@ -0,0 +1,6 @@
+; 0
+ db %11001110
+ db %00111001
+ db %00000111
+ db %00000000
+; 0xd3ad3
diff --git a/gfx/pics/egg/frames.asm b/gfx/pics/egg/frames.asm
new file mode 100644
index 000000000..19839df43
--- /dev/null
+++ b/gfx/pics/egg/frames.asm
@@ -0,0 +1,9 @@
+ dw .frame1
+ dw .frame2
+.frame1
+ db $00 ; bitmask
+ db $00, $19, $1a, $1b, $1c, $1d, $1e, $1f, $20, $21, $22, $23
+.frame2
+ db $00 ; bitmask
+ db $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $00, $2d, $2e
+; 0xd99a9
diff --git a/gfx/frontpics/egg.2bpp b/gfx/pics/egg/front.2bpp
index 8c68b268a..8c68b268a 100644
--- a/gfx/frontpics/egg.2bpp
+++ b/gfx/pics/egg/front.2bpp
Binary files differ
diff --git a/gfx/frontpics/lz/egg.lz b/gfx/pics/egg/front.lz
index 47d8b997e..47d8b997e 100644
--- a/gfx/frontpics/lz/egg.lz
+++ b/gfx/pics/egg/front.lz
Binary files differ
diff --git a/gfx/anim/egg.2bpp b/gfx/pics/egg/tiles.2bpp
index ce66e26c2..ce66e26c2 100644
--- a/gfx/anim/egg.2bpp
+++ b/gfx/pics/egg/tiles.2bpp
Binary files differ
diff --git a/gfx/pics/extra_pointers.asm b/gfx/pics/extra_pointers.asm
new file mode 100644
index 000000000..f1abc4f19
--- /dev/null
+++ b/gfx/pics/extra_pointers.asm
@@ -0,0 +1,251 @@
+ dw BulbasaurAnimationExtra
+ dw IvysaurAnimationExtra
+ dw VenusaurAnimationExtra
+ dw CharmanderAnimationExtra
+ dw CharmeleonAnimationExtra
+ dw CharizardAnimationExtra
+ dw SquirtleAnimationExtra
+ dw WartortleAnimationExtra
+ dw BlastoiseAnimationExtra
+ dw CaterpieAnimationExtra
+ dw MetapodAnimationExtra
+ dw ButterfreeAnimationExtra
+ dw WeedleAnimationExtra
+ dw KakunaAnimationExtra
+ dw BeedrillAnimationExtra
+ dw PidgeyAnimationExtra
+ dw PidgeottoAnimationExtra
+ dw PidgeotAnimationExtra
+ dw RattataAnimationExtra
+ dw RaticateAnimationExtra
+ dw SpearowAnimationExtra
+ dw FearowAnimationExtra
+ dw EkansAnimationExtra
+ dw ArbokAnimationExtra
+ dw PikachuAnimationExtra
+ dw RaichuAnimationExtra
+ dw SandshrewAnimationExtra
+ dw SandslashAnimationExtra
+ dw NidoranFAnimationExtra
+ dw NidorinaAnimationExtra
+ dw NidoqueenAnimationExtra
+ dw NidoranMAnimationExtra
+ dw NidorinoAnimationExtra
+ dw NidokingAnimationExtra
+ dw ClefairyAnimationExtra
+ dw ClefableAnimationExtra
+ dw VulpixAnimationExtra
+ dw NinetalesAnimationExtra
+ dw JigglypuffAnimationExtra
+ dw WigglytuffAnimationExtra
+ dw ZubatAnimationExtra
+ dw GolbatAnimationExtra
+ dw OddishAnimationExtra
+ dw GloomAnimationExtra
+ dw VileplumeAnimationExtra
+ dw ParasAnimationExtra
+ dw ParasectAnimationExtra
+ dw VenonatAnimationExtra
+ dw VenomothAnimationExtra
+ dw DiglettAnimationExtra
+ dw DugtrioAnimationExtra
+ dw MeowthAnimationExtra
+ dw PersianAnimationExtra
+ dw PsyduckAnimationExtra
+ dw GolduckAnimationExtra
+ dw MankeyAnimationExtra
+ dw PrimeapeAnimationExtra
+ dw GrowlitheAnimationExtra
+ dw ArcanineAnimationExtra
+ dw PoliwagAnimationExtra
+ dw PoliwhirlAnimationExtra
+ dw PoliwrathAnimationExtra
+ dw AbraAnimationExtra
+ dw KadabraAnimationExtra
+ dw AlakazamAnimationExtra
+ dw MachopAnimationExtra
+ dw MachokeAnimationExtra
+ dw MachampAnimationExtra
+ dw BellsproutAnimationExtra
+ dw WeepinbellAnimationExtra
+ dw VictreebelAnimationExtra
+ dw TentacoolAnimationExtra
+ dw TentacruelAnimationExtra
+ dw GeodudeAnimationExtra
+ dw GravelerAnimationExtra
+ dw GolemAnimationExtra
+ dw PonytaAnimationExtra
+ dw RapidashAnimationExtra
+ dw SlowpokeAnimationExtra
+ dw SlowbroAnimationExtra
+ dw MagnemiteAnimationExtra
+ dw MagnetonAnimationExtra
+ dw FarfetchDAnimationExtra
+ dw DoduoAnimationExtra
+ dw DodrioAnimationExtra
+ dw SeelAnimationExtra
+ dw DewgongAnimationExtra
+ dw GrimerAnimationExtra
+ dw MukAnimationExtra
+ dw ShellderAnimationExtra
+ dw CloysterAnimationExtra
+ dw GastlyAnimationExtra
+ dw HaunterAnimationExtra
+ dw GengarAnimationExtra
+ dw OnixAnimationExtra
+ dw DrowzeeAnimationExtra
+ dw HypnoAnimationExtra
+ dw KrabbyAnimationExtra
+ dw KinglerAnimationExtra
+ dw VoltorbAnimationExtra
+ dw ElectrodeAnimationExtra
+ dw ExeggcuteAnimationExtra
+ dw ExeggutorAnimationExtra
+ dw CuboneAnimationExtra
+ dw MarowakAnimationExtra
+ dw HitmonleeAnimationExtra
+ dw HitmonchanAnimationExtra
+ dw LickitungAnimationExtra
+ dw KoffingAnimationExtra
+ dw WeezingAnimationExtra
+ dw RhyhornAnimationExtra
+ dw RhydonAnimationExtra
+ dw ChanseyAnimationExtra
+ dw TangelaAnimationExtra
+ dw KangaskhanAnimationExtra
+ dw HorseaAnimationExtra
+ dw SeadraAnimationExtra
+ dw GoldeenAnimationExtra
+ dw SeakingAnimationExtra
+ dw StaryuAnimationExtra
+ dw StarmieAnimationExtra
+ dw MrMimeAnimationExtra
+ dw ScytherAnimationExtra
+ dw JynxAnimationExtra
+ dw ElectabuzzAnimationExtra
+ dw MagmarAnimationExtra
+ dw PinsirAnimationExtra
+ dw TaurosAnimationExtra
+ dw MagikarpAnimationExtra
+ dw GyaradosAnimationExtra
+ dw LaprasAnimationExtra
+ dw DittoAnimationExtra
+ dw EeveeAnimationExtra
+ dw VaporeonAnimationExtra
+ dw JolteonAnimationExtra
+ dw FlareonAnimationExtra
+ dw PorygonAnimationExtra
+ dw OmanyteAnimationExtra
+ dw OmastarAnimationExtra
+ dw KabutoAnimationExtra
+ dw KabutopsAnimationExtra
+ dw AerodactylAnimationExtra
+ dw SnorlaxAnimationExtra
+ dw ArticunoAnimationExtra
+ dw ZapdosAnimationExtra
+ dw MoltresAnimationExtra
+ dw DratiniAnimationExtra
+ dw DragonairAnimationExtra
+ dw DragoniteAnimationExtra
+ dw MewtwoAnimationExtra
+ dw MewAnimationExtra
+ dw ChikoritaAnimationExtra
+ dw BayleefAnimationExtra
+ dw MeganiumAnimationExtra
+ dw CyndaquilAnimationExtra
+ dw QuilavaAnimationExtra
+ dw TyphlosionAnimationExtra
+ dw TotodileAnimationExtra
+ dw CroconawAnimationExtra
+ dw FeraligatrAnimationExtra
+ dw SentretAnimationExtra
+ dw FurretAnimationExtra
+ dw HoothootAnimationExtra
+ dw NoctowlAnimationExtra
+ dw LedybaAnimationExtra
+ dw LedianAnimationExtra
+ dw SpinarakAnimationExtra
+ dw AriadosAnimationExtra
+ dw CrobatAnimationExtra
+ dw ChinchouAnimationExtra
+ dw LanturnAnimationExtra
+ dw PichuAnimationExtra
+ dw CleffaAnimationExtra
+ dw IgglybuffAnimationExtra
+ dw TogepiAnimationExtra
+ dw TogeticAnimationExtra
+ dw NatuAnimationExtra
+ dw XatuAnimationExtra
+ dw MareepAnimationExtra
+ dw FlaaffyAnimationExtra
+ dw AmpharosAnimationExtra
+ dw BellossomAnimationExtra
+ dw MarillAnimationExtra
+ dw AzumarillAnimationExtra
+ dw SudowoodoAnimationExtra
+ dw PolitoedAnimationExtra
+ dw HoppipAnimationExtra
+ dw SkiploomAnimationExtra
+ dw JumpluffAnimationExtra
+ dw AipomAnimationExtra
+ dw SunkernAnimationExtra
+ dw SunfloraAnimationExtra
+ dw YanmaAnimationExtra
+ dw WooperAnimationExtra
+ dw QuagsireAnimationExtra
+ dw EspeonAnimationExtra
+ dw UmbreonAnimationExtra
+ dw MurkrowAnimationExtra
+ dw SlowkingAnimationExtra
+ dw MisdreavusAnimationExtra
+ dw UnownAnimationExtra
+ dw WobbuffetAnimationExtra
+ dw GirafarigAnimationExtra
+ dw PinecoAnimationExtra
+ dw ForretressAnimationExtra
+ dw DunsparceAnimationExtra
+ dw GligarAnimationExtra
+ dw SteelixAnimationExtra
+ dw SnubbullAnimationExtra
+ dw GranbullAnimationExtra
+ dw QwilfishAnimationExtra
+ dw ScizorAnimationExtra
+ dw ShuckleAnimationExtra
+ dw HeracrossAnimationExtra
+ dw SneaselAnimationExtra
+ dw TeddiursaAnimationExtra
+ dw UrsaringAnimationExtra
+ dw SlugmaAnimationExtra
+ dw MagcargoAnimationExtra
+ dw SwinubAnimationExtra
+ dw PiloswineAnimationExtra
+ dw CorsolaAnimationExtra
+ dw RemoraidAnimationExtra
+ dw OctilleryAnimationExtra
+ dw DelibirdAnimationExtra
+ dw MantineAnimationExtra
+ dw SkarmoryAnimationExtra
+ dw HoundourAnimationExtra
+ dw HoundoomAnimationExtra
+ dw KingdraAnimationExtra
+ dw PhanpyAnimationExtra
+ dw DonphanAnimationExtra
+ dw Porygon2AnimationExtra
+ dw StantlerAnimationExtra
+ dw SmeargleAnimationExtra
+ dw TyrogueAnimationExtra
+ dw HitmontopAnimationExtra
+ dw SmoochumAnimationExtra
+ dw ElekidAnimationExtra
+ dw MagbyAnimationExtra
+ dw MiltankAnimationExtra
+ dw BlisseyAnimationExtra
+ dw RaikouAnimationExtra
+ dw EnteiAnimationExtra
+ dw SuicuneAnimationExtra
+ dw LarvitarAnimationExtra
+ dw PupitarAnimationExtra
+ dw TyranitarAnimationExtra
+ dw LugiaAnimationExtra
+ dw HoOhAnimationExtra
+ dw CelebiAnimationExtra
diff --git a/gfx/pics/extras.asm b/gfx/pics/extras.asm
new file mode 100644
index 000000000..8e33b2dfe
--- /dev/null
+++ b/gfx/pics/extras.asm
@@ -0,0 +1,252 @@
+BulbasaurAnimationExtra: INCLUDE "gfx/pics/001/anim1.asm"
+IvysaurAnimationExtra: INCLUDE "gfx/pics/002/anim1.asm"
+VenusaurAnimationExtra: INCLUDE "gfx/pics/003/anim1.asm"
+CharmanderAnimationExtra: INCLUDE "gfx/pics/004/anim1.asm"
+CharmeleonAnimationExtra: INCLUDE "gfx/pics/005/anim1.asm"
+CharizardAnimationExtra: INCLUDE "gfx/pics/006/anim1.asm"
+SquirtleAnimationExtra: INCLUDE "gfx/pics/007/anim1.asm"
+WartortleAnimationExtra: INCLUDE "gfx/pics/008/anim1.asm"
+BlastoiseAnimationExtra: INCLUDE "gfx/pics/009/anim1.asm"
+CaterpieAnimationExtra: INCLUDE "gfx/pics/010/anim1.asm"
+MetapodAnimationExtra: INCLUDE "gfx/pics/011/anim1.asm"
+ButterfreeAnimationExtra: INCLUDE "gfx/pics/012/anim1.asm"
+WeedleAnimationExtra: INCLUDE "gfx/pics/013/anim1.asm"
+KakunaAnimationExtra: INCLUDE "gfx/pics/014/anim1.asm"
+BeedrillAnimationExtra: INCLUDE "gfx/pics/015/anim1.asm"
+PidgeyAnimationExtra: INCLUDE "gfx/pics/016/anim1.asm"
+PidgeottoAnimationExtra: INCLUDE "gfx/pics/017/anim1.asm"
+PidgeotAnimationExtra: INCLUDE "gfx/pics/018/anim1.asm"
+RattataAnimationExtra: INCLUDE "gfx/pics/019/anim1.asm"
+RaticateAnimationExtra: INCLUDE "gfx/pics/020/anim1.asm"
+SpearowAnimationExtra: INCLUDE "gfx/pics/021/anim1.asm"
+FearowAnimationExtra: INCLUDE "gfx/pics/022/anim1.asm"
+EkansAnimationExtra: INCLUDE "gfx/pics/023/anim1.asm"
+ArbokAnimationExtra: INCLUDE "gfx/pics/024/anim1.asm"
+PikachuAnimationExtra: INCLUDE "gfx/pics/025/anim1.asm"
+RaichuAnimationExtra: INCLUDE "gfx/pics/026/anim1.asm"
+SandshrewAnimationExtra: INCLUDE "gfx/pics/027/anim1.asm"
+SandslashAnimationExtra: INCLUDE "gfx/pics/028/anim1.asm"
+NidoranFAnimationExtra: INCLUDE "gfx/pics/029/anim1.asm"
+NidorinaAnimationExtra: INCLUDE "gfx/pics/030/anim1.asm"
+NidoqueenAnimationExtra: INCLUDE "gfx/pics/031/anim1.asm"
+NidoranMAnimationExtra: INCLUDE "gfx/pics/032/anim1.asm"
+NidorinoAnimationExtra: INCLUDE "gfx/pics/033/anim1.asm"
+NidokingAnimationExtra: INCLUDE "gfx/pics/034/anim1.asm"
+ClefairyAnimationExtra: INCLUDE "gfx/pics/035/anim1.asm"
+ClefableAnimationExtra: INCLUDE "gfx/pics/036/anim1.asm"
+VulpixAnimationExtra: INCLUDE "gfx/pics/037/anim1.asm"
+NinetalesAnimationExtra: INCLUDE "gfx/pics/038/anim1.asm"
+JigglypuffAnimationExtra: INCLUDE "gfx/pics/039/anim1.asm"
+WigglytuffAnimationExtra: INCLUDE "gfx/pics/040/anim1.asm"
+ZubatAnimationExtra: INCLUDE "gfx/pics/041/anim1.asm"
+GolbatAnimationExtra: INCLUDE "gfx/pics/042/anim1.asm"
+OddishAnimationExtra: INCLUDE "gfx/pics/043/anim1.asm"
+GloomAnimationExtra: INCLUDE "gfx/pics/044/anim1.asm"
+VileplumeAnimationExtra: INCLUDE "gfx/pics/045/anim1.asm"
+ParasAnimationExtra: INCLUDE "gfx/pics/046/anim1.asm"
+ParasectAnimationExtra: INCLUDE "gfx/pics/047/anim1.asm"
+VenonatAnimationExtra: INCLUDE "gfx/pics/048/anim1.asm"
+VenomothAnimationExtra: INCLUDE "gfx/pics/049/anim1.asm"
+DiglettAnimationExtra: INCLUDE "gfx/pics/050/anim1.asm"
+DugtrioAnimationExtra: INCLUDE "gfx/pics/051/anim1.asm"
+MeowthAnimationExtra: INCLUDE "gfx/pics/052/anim1.asm"
+PersianAnimationExtra: INCLUDE "gfx/pics/053/anim1.asm"
+PsyduckAnimationExtra: INCLUDE "gfx/pics/054/anim1.asm"
+GolduckAnimationExtra: INCLUDE "gfx/pics/055/anim1.asm"
+MankeyAnimationExtra: INCLUDE "gfx/pics/056/anim1.asm"
+PrimeapeAnimationExtra: INCLUDE "gfx/pics/057/anim1.asm"
+GrowlitheAnimationExtra: INCLUDE "gfx/pics/058/anim1.asm"
+ArcanineAnimationExtra: INCLUDE "gfx/pics/059/anim1.asm"
+PoliwagAnimationExtra: INCLUDE "gfx/pics/060/anim1.asm"
+PoliwhirlAnimationExtra: INCLUDE "gfx/pics/061/anim1.asm"
+PoliwrathAnimationExtra: INCLUDE "gfx/pics/062/anim1.asm"
+AbraAnimationExtra: INCLUDE "gfx/pics/063/anim1.asm"
+KadabraAnimationExtra: INCLUDE "gfx/pics/064/anim1.asm"
+AlakazamAnimationExtra: INCLUDE "gfx/pics/065/anim1.asm"
+MachopAnimationExtra: INCLUDE "gfx/pics/066/anim1.asm"
+MachokeAnimationExtra: INCLUDE "gfx/pics/067/anim1.asm"
+MachampAnimationExtra: INCLUDE "gfx/pics/068/anim1.asm"
+BellsproutAnimationExtra: INCLUDE "gfx/pics/069/anim1.asm"
+WeepinbellAnimationExtra: INCLUDE "gfx/pics/070/anim1.asm"
+VictreebelAnimationExtra: INCLUDE "gfx/pics/071/anim1.asm"
+TentacoolAnimationExtra: INCLUDE "gfx/pics/072/anim1.asm"
+TentacruelAnimationExtra: INCLUDE "gfx/pics/073/anim1.asm"
+GeodudeAnimationExtra: INCLUDE "gfx/pics/074/anim1.asm"
+GravelerAnimationExtra: INCLUDE "gfx/pics/075/anim1.asm"
+GolemAnimationExtra: INCLUDE "gfx/pics/076/anim1.asm"
+PonytaAnimationExtra: INCLUDE "gfx/pics/077/anim1.asm"
+RapidashAnimationExtra: INCLUDE "gfx/pics/078/anim1.asm"
+SlowpokeAnimationExtra: INCLUDE "gfx/pics/079/anim1.asm"
+SlowbroAnimationExtra: INCLUDE "gfx/pics/080/anim1.asm"
+MagnemiteAnimationExtra: INCLUDE "gfx/pics/081/anim1.asm"
+MagnetonAnimationExtra: INCLUDE "gfx/pics/082/anim1.asm"
+FarfetchDAnimationExtra: INCLUDE "gfx/pics/083/anim1.asm"
+DoduoAnimationExtra: INCLUDE "gfx/pics/084/anim1.asm"
+DodrioAnimationExtra: INCLUDE "gfx/pics/085/anim1.asm"
+SeelAnimationExtra: INCLUDE "gfx/pics/086/anim1.asm"
+DewgongAnimationExtra: INCLUDE "gfx/pics/087/anim1.asm"
+GrimerAnimationExtra: INCLUDE "gfx/pics/088/anim1.asm"
+MukAnimationExtra: INCLUDE "gfx/pics/089/anim1.asm"
+ShellderAnimationExtra: INCLUDE "gfx/pics/090/anim1.asm"
+CloysterAnimationExtra: INCLUDE "gfx/pics/091/anim1.asm"
+GastlyAnimationExtra: INCLUDE "gfx/pics/092/anim1.asm"
+HaunterAnimationExtra: INCLUDE "gfx/pics/093/anim1.asm"
+GengarAnimationExtra: INCLUDE "gfx/pics/094/anim1.asm"
+OnixAnimationExtra: INCLUDE "gfx/pics/095/anim1.asm"
+DrowzeeAnimationExtra: INCLUDE "gfx/pics/096/anim1.asm"
+HypnoAnimationExtra: INCLUDE "gfx/pics/097/anim1.asm"
+KrabbyAnimationExtra: INCLUDE "gfx/pics/098/anim1.asm"
+KinglerAnimationExtra: INCLUDE "gfx/pics/099/anim1.asm"
+VoltorbAnimationExtra: INCLUDE "gfx/pics/100/anim1.asm"
+ElectrodeAnimationExtra: INCLUDE "gfx/pics/101/anim1.asm"
+ExeggcuteAnimationExtra: INCLUDE "gfx/pics/102/anim1.asm"
+ExeggutorAnimationExtra: INCLUDE "gfx/pics/103/anim1.asm"
+CuboneAnimationExtra: INCLUDE "gfx/pics/104/anim1.asm"
+MarowakAnimationExtra: INCLUDE "gfx/pics/105/anim1.asm"
+HitmonleeAnimationExtra: INCLUDE "gfx/pics/106/anim1.asm"
+HitmonchanAnimationExtra: INCLUDE "gfx/pics/107/anim1.asm"
+LickitungAnimationExtra: INCLUDE "gfx/pics/108/anim1.asm"
+KoffingAnimationExtra: INCLUDE "gfx/pics/109/anim1.asm"
+WeezingAnimationExtra: INCLUDE "gfx/pics/110/anim1.asm"
+RhyhornAnimationExtra: INCLUDE "gfx/pics/111/anim1.asm"
+RhydonAnimationExtra: INCLUDE "gfx/pics/112/anim1.asm"
+ChanseyAnimationExtra: INCLUDE "gfx/pics/113/anim1.asm"
+TangelaAnimationExtra: INCLUDE "gfx/pics/114/anim1.asm"
+KangaskhanAnimationExtra: INCLUDE "gfx/pics/115/anim1.asm"
+HorseaAnimationExtra: INCLUDE "gfx/pics/116/anim1.asm"
+SeadraAnimationExtra: INCLUDE "gfx/pics/117/anim1.asm"
+GoldeenAnimationExtra: INCLUDE "gfx/pics/118/anim1.asm"
+SeakingAnimationExtra: INCLUDE "gfx/pics/119/anim1.asm"
+StaryuAnimationExtra: INCLUDE "gfx/pics/120/anim1.asm"
+StarmieAnimationExtra: INCLUDE "gfx/pics/121/anim1.asm"
+MrMimeAnimationExtra: INCLUDE "gfx/pics/122/anim1.asm"
+ScytherAnimationExtra: INCLUDE "gfx/pics/123/anim1.asm"
+JynxAnimationExtra: INCLUDE "gfx/pics/124/anim1.asm"
+ElectabuzzAnimationExtra: INCLUDE "gfx/pics/125/anim1.asm"
+MagmarAnimationExtra: INCLUDE "gfx/pics/126/anim1.asm"
+PinsirAnimationExtra: INCLUDE "gfx/pics/127/anim1.asm"
+TaurosAnimationExtra: INCLUDE "gfx/pics/128/anim1.asm"
+MagikarpAnimationExtra: INCLUDE "gfx/pics/129/anim1.asm"
+GyaradosAnimationExtra: INCLUDE "gfx/pics/130/anim1.asm"
+LaprasAnimationExtra: INCLUDE "gfx/pics/131/anim1.asm"
+DittoAnimationExtra: INCLUDE "gfx/pics/132/anim1.asm"
+EeveeAnimationExtra: INCLUDE "gfx/pics/133/anim1.asm"
+VaporeonAnimationExtra: INCLUDE "gfx/pics/134/anim1.asm"
+JolteonAnimationExtra: INCLUDE "gfx/pics/135/anim1.asm"
+FlareonAnimationExtra: INCLUDE "gfx/pics/136/anim1.asm"
+PorygonAnimationExtra: INCLUDE "gfx/pics/137/anim1.asm"
+OmanyteAnimationExtra: INCLUDE "gfx/pics/138/anim1.asm"
+OmastarAnimationExtra: INCLUDE "gfx/pics/139/anim1.asm"
+KabutoAnimationExtra: INCLUDE "gfx/pics/140/anim1.asm"
+KabutopsAnimationExtra: INCLUDE "gfx/pics/141/anim1.asm"
+AerodactylAnimationExtra: INCLUDE "gfx/pics/142/anim1.asm"
+SnorlaxAnimationExtra: INCLUDE "gfx/pics/143/anim1.asm"
+ArticunoAnimationExtra: INCLUDE "gfx/pics/144/anim1.asm"
+ZapdosAnimationExtra: INCLUDE "gfx/pics/145/anim1.asm"
+MoltresAnimationExtra: INCLUDE "gfx/pics/146/anim1.asm"
+DratiniAnimationExtra: INCLUDE "gfx/pics/147/anim1.asm"
+DragonairAnimationExtra: INCLUDE "gfx/pics/148/anim1.asm"
+DragoniteAnimationExtra: INCLUDE "gfx/pics/149/anim1.asm"
+MewtwoAnimationExtra: INCLUDE "gfx/pics/150/anim1.asm"
+MewAnimationExtra: INCLUDE "gfx/pics/151/anim1.asm"
+ChikoritaAnimationExtra: INCLUDE "gfx/pics/152/anim1.asm"
+BayleefAnimationExtra: INCLUDE "gfx/pics/153/anim1.asm"
+MeganiumAnimationExtra: INCLUDE "gfx/pics/154/anim1.asm"
+CyndaquilAnimationExtra: INCLUDE "gfx/pics/155/anim1.asm"
+QuilavaAnimationExtra: INCLUDE "gfx/pics/156/anim1.asm"
+TyphlosionAnimationExtra: INCLUDE "gfx/pics/157/anim1.asm"
+TotodileAnimationExtra: INCLUDE "gfx/pics/158/anim1.asm"
+CroconawAnimationExtra: INCLUDE "gfx/pics/159/anim1.asm"
+FeraligatrAnimationExtra: INCLUDE "gfx/pics/160/anim1.asm"
+SentretAnimationExtra: INCLUDE "gfx/pics/161/anim1.asm"
+FurretAnimationExtra: INCLUDE "gfx/pics/162/anim1.asm"
+HoothootAnimationExtra: INCLUDE "gfx/pics/163/anim1.asm"
+NoctowlAnimationExtra: INCLUDE "gfx/pics/164/anim1.asm"
+LedybaAnimationExtra: INCLUDE "gfx/pics/165/anim1.asm"
+LedianAnimationExtra: INCLUDE "gfx/pics/166/anim1.asm"
+SpinarakAnimationExtra: INCLUDE "gfx/pics/167/anim1.asm"
+AriadosAnimationExtra: INCLUDE "gfx/pics/168/anim1.asm"
+CrobatAnimationExtra: INCLUDE "gfx/pics/169/anim1.asm"
+ChinchouAnimationExtra: INCLUDE "gfx/pics/170/anim1.asm"
+LanturnAnimationExtra: INCLUDE "gfx/pics/171/anim1.asm"
+PichuAnimationExtra: INCLUDE "gfx/pics/172/anim1.asm"
+CleffaAnimationExtra: INCLUDE "gfx/pics/173/anim1.asm"
+IgglybuffAnimationExtra: INCLUDE "gfx/pics/174/anim1.asm"
+TogepiAnimationExtra: INCLUDE "gfx/pics/175/anim1.asm"
+TogeticAnimationExtra: INCLUDE "gfx/pics/176/anim1.asm"
+NatuAnimationExtra: INCLUDE "gfx/pics/177/anim1.asm"
+XatuAnimationExtra: INCLUDE "gfx/pics/178/anim1.asm"
+MareepAnimationExtra: INCLUDE "gfx/pics/179/anim1.asm"
+FlaaffyAnimationExtra: INCLUDE "gfx/pics/180/anim1.asm"
+AmpharosAnimationExtra: INCLUDE "gfx/pics/181/anim1.asm"
+BellossomAnimationExtra: INCLUDE "gfx/pics/182/anim1.asm"
+MarillAnimationExtra: INCLUDE "gfx/pics/183/anim1.asm"
+AzumarillAnimationExtra: INCLUDE "gfx/pics/184/anim1.asm"
+SudowoodoAnimationExtra: INCLUDE "gfx/pics/185/anim1.asm"
+PolitoedAnimationExtra: INCLUDE "gfx/pics/186/anim1.asm"
+HoppipAnimationExtra: INCLUDE "gfx/pics/187/anim1.asm"
+SkiploomAnimationExtra: INCLUDE "gfx/pics/188/anim1.asm"
+JumpluffAnimationExtra: INCLUDE "gfx/pics/189/anim1.asm"
+AipomAnimationExtra: INCLUDE "gfx/pics/190/anim1.asm"
+SunkernAnimationExtra: INCLUDE "gfx/pics/191/anim1.asm"
+SunfloraAnimationExtra: INCLUDE "gfx/pics/192/anim1.asm"
+YanmaAnimationExtra: INCLUDE "gfx/pics/193/anim1.asm"
+WooperAnimationExtra: INCLUDE "gfx/pics/194/anim1.asm"
+QuagsireAnimationExtra: INCLUDE "gfx/pics/195/anim1.asm"
+EspeonAnimationExtra: INCLUDE "gfx/pics/196/anim1.asm"
+UmbreonAnimationExtra: INCLUDE "gfx/pics/197/anim1.asm"
+MurkrowAnimationExtra: INCLUDE "gfx/pics/198/anim1.asm"
+SlowkingAnimationExtra: INCLUDE "gfx/pics/199/anim1.asm"
+MisdreavusAnimationExtra: INCLUDE "gfx/pics/200/anim1.asm"
+UnownAnimationExtra: INCLUDE "gfx/pics/201/anim1.asm"
+WobbuffetAnimationExtra: INCLUDE "gfx/pics/202/anim1.asm"
+GirafarigAnimationExtra: INCLUDE "gfx/pics/203/anim1.asm"
+PinecoAnimationExtra: INCLUDE "gfx/pics/204/anim1.asm"
+ForretressAnimationExtra: INCLUDE "gfx/pics/205/anim1.asm"
+DunsparceAnimationExtra: INCLUDE "gfx/pics/206/anim1.asm"
+GligarAnimationExtra: INCLUDE "gfx/pics/207/anim1.asm"
+SteelixAnimationExtra: INCLUDE "gfx/pics/208/anim1.asm"
+SnubbullAnimationExtra: INCLUDE "gfx/pics/209/anim1.asm"
+GranbullAnimationExtra: INCLUDE "gfx/pics/210/anim1.asm"
+QwilfishAnimationExtra: INCLUDE "gfx/pics/211/anim1.asm"
+ScizorAnimationExtra: INCLUDE "gfx/pics/212/anim1.asm"
+ShuckleAnimationExtra: INCLUDE "gfx/pics/213/anim1.asm"
+HeracrossAnimationExtra: INCLUDE "gfx/pics/214/anim1.asm"
+SneaselAnimationExtra: INCLUDE "gfx/pics/215/anim1.asm"
+TeddiursaAnimationExtra: INCLUDE "gfx/pics/216/anim1.asm"
+UrsaringAnimationExtra: INCLUDE "gfx/pics/217/anim1.asm"
+SlugmaAnimationExtra: INCLUDE "gfx/pics/218/anim1.asm"
+MagcargoAnimationExtra: INCLUDE "gfx/pics/219/anim1.asm"
+SwinubAnimationExtra: INCLUDE "gfx/pics/220/anim1.asm"
+PiloswineAnimationExtra: INCLUDE "gfx/pics/221/anim1.asm"
+CorsolaAnimationExtra: INCLUDE "gfx/pics/222/anim1.asm"
+RemoraidAnimationExtra: INCLUDE "gfx/pics/223/anim1.asm"
+OctilleryAnimationExtra: INCLUDE "gfx/pics/224/anim1.asm"
+DelibirdAnimationExtra: INCLUDE "gfx/pics/225/anim1.asm"
+MantineAnimationExtra: INCLUDE "gfx/pics/226/anim1.asm"
+SkarmoryAnimationExtra: INCLUDE "gfx/pics/227/anim1.asm"
+HoundourAnimationExtra: INCLUDE "gfx/pics/228/anim1.asm"
+HoundoomAnimationExtra: INCLUDE "gfx/pics/229/anim1.asm"
+KingdraAnimationExtra: INCLUDE "gfx/pics/230/anim1.asm"
+PhanpyAnimationExtra: INCLUDE "gfx/pics/231/anim1.asm"
+DonphanAnimationExtra: INCLUDE "gfx/pics/232/anim1.asm"
+Porygon2AnimationExtra: INCLUDE "gfx/pics/233/anim1.asm"
+StantlerAnimationExtra: INCLUDE "gfx/pics/234/anim1.asm"
+SmeargleAnimationExtra: INCLUDE "gfx/pics/235/anim1.asm"
+TyrogueAnimationExtra: INCLUDE "gfx/pics/236/anim1.asm"
+HitmontopAnimationExtra: INCLUDE "gfx/pics/237/anim1.asm"
+SmoochumAnimationExtra: INCLUDE "gfx/pics/238/anim1.asm"
+ElekidAnimationExtra: INCLUDE "gfx/pics/239/anim1.asm"
+MagbyAnimationExtra: INCLUDE "gfx/pics/240/anim1.asm"
+MiltankAnimationExtra: INCLUDE "gfx/pics/241/anim1.asm"
+BlisseyAnimationExtra: INCLUDE "gfx/pics/242/anim1.asm"
+RaikouAnimationExtra: INCLUDE "gfx/pics/243/anim1.asm"
+EnteiAnimationExtra: INCLUDE "gfx/pics/244/anim1.asm"
+SuicuneAnimationExtra: INCLUDE "gfx/pics/245/anim1.asm"
+LarvitarAnimationExtra: INCLUDE "gfx/pics/246/anim1.asm"
+PupitarAnimationExtra: INCLUDE "gfx/pics/247/anim1.asm"
+TyranitarAnimationExtra: INCLUDE "gfx/pics/248/anim1.asm"
+LugiaAnimationExtra: INCLUDE "gfx/pics/249/anim1.asm"
+HoOhAnimationExtra: INCLUDE "gfx/pics/250/anim1.asm"
+CelebiAnimationExtra: INCLUDE "gfx/pics/251/anim1.asm"
+EggAnimationExtra: INCLUDE "gfx/pics/egg/anim1.asm"
diff --git a/gfx/pics/frame_pointers.asm b/gfx/pics/frame_pointers.asm
new file mode 100644
index 000000000..a5b595b0e
--- /dev/null
+++ b/gfx/pics/frame_pointers.asm
@@ -0,0 +1,251 @@
+ dw BulbasaurFrames
+ dw IvysaurFrames
+ dw VenusaurFrames
+ dw CharmanderFrames
+ dw CharmeleonFrames
+ dw CharizardFrames
+ dw SquirtleFrames
+ dw WartortleFrames
+ dw BlastoiseFrames
+ dw CaterpieFrames
+ dw MetapodFrames
+ dw ButterfreeFrames
+ dw WeedleFrames
+ dw KakunaFrames
+ dw BeedrillFrames
+ dw PidgeyFrames
+ dw PidgeottoFrames
+ dw PidgeotFrames
+ dw RattataFrames
+ dw RaticateFrames
+ dw SpearowFrames
+ dw FearowFrames
+ dw EkansFrames
+ dw ArbokFrames
+ dw PikachuFrames
+ dw RaichuFrames
+ dw SandshrewFrames
+ dw SandslashFrames
+ dw NidoranFFrames
+ dw NidorinaFrames
+ dw NidoqueenFrames
+ dw NidoranMFrames
+ dw NidorinoFrames
+ dw NidokingFrames
+ dw ClefairyFrames
+ dw ClefableFrames
+ dw VulpixFrames
+ dw NinetalesFrames
+ dw JigglypuffFrames
+ dw WigglytuffFrames
+ dw ZubatFrames
+ dw GolbatFrames
+ dw OddishFrames
+ dw GloomFrames
+ dw VileplumeFrames
+ dw ParasFrames
+ dw ParasectFrames
+ dw VenonatFrames
+ dw VenomothFrames
+ dw DiglettFrames
+ dw DugtrioFrames
+ dw MeowthFrames
+ dw PersianFrames
+ dw PsyduckFrames
+ dw GolduckFrames
+ dw MankeyFrames
+ dw PrimeapeFrames
+ dw GrowlitheFrames
+ dw ArcanineFrames
+ dw PoliwagFrames
+ dw PoliwhirlFrames
+ dw PoliwrathFrames
+ dw AbraFrames
+ dw KadabraFrames
+ dw AlakazamFrames
+ dw MachopFrames
+ dw MachokeFrames
+ dw MachampFrames
+ dw BellsproutFrames
+ dw WeepinbellFrames
+ dw VictreebelFrames
+ dw TentacoolFrames
+ dw TentacruelFrames
+ dw GeodudeFrames
+ dw GravelerFrames
+ dw GolemFrames
+ dw PonytaFrames
+ dw RapidashFrames
+ dw SlowpokeFrames
+ dw SlowbroFrames
+ dw MagnemiteFrames
+ dw MagnetonFrames
+ dw FarfetchDFrames
+ dw DoduoFrames
+ dw DodrioFrames
+ dw SeelFrames
+ dw DewgongFrames
+ dw GrimerFrames
+ dw MukFrames
+ dw ShellderFrames
+ dw CloysterFrames
+ dw GastlyFrames
+ dw HaunterFrames
+ dw GengarFrames
+ dw OnixFrames
+ dw DrowzeeFrames
+ dw HypnoFrames
+ dw KrabbyFrames
+ dw KinglerFrames
+ dw VoltorbFrames
+ dw ElectrodeFrames
+ dw ExeggcuteFrames
+ dw ExeggutorFrames
+ dw CuboneFrames
+ dw MarowakFrames
+ dw HitmonleeFrames
+ dw HitmonchanFrames
+ dw LickitungFrames
+ dw KoffingFrames
+ dw WeezingFrames
+ dw RhyhornFrames
+ dw RhydonFrames
+ dw ChanseyFrames
+ dw TangelaFrames
+ dw KangaskhanFrames
+ dw HorseaFrames
+ dw SeadraFrames
+ dw GoldeenFrames
+ dw SeakingFrames
+ dw StaryuFrames
+ dw StarmieFrames
+ dw MrMimeFrames
+ dw ScytherFrames
+ dw JynxFrames
+ dw ElectabuzzFrames
+ dw MagmarFrames
+ dw PinsirFrames
+ dw TaurosFrames
+ dw MagikarpFrames
+ dw GyaradosFrames
+ dw LaprasFrames
+ dw DittoFrames
+ dw EeveeFrames
+ dw VaporeonFrames
+ dw JolteonFrames
+ dw FlareonFrames
+ dw PorygonFrames
+ dw OmanyteFrames
+ dw OmastarFrames
+ dw KabutoFrames
+ dw KabutopsFrames
+ dw AerodactylFrames
+ dw SnorlaxFrames
+ dw ArticunoFrames
+ dw ZapdosFrames
+ dw MoltresFrames
+ dw DratiniFrames
+ dw DragonairFrames
+ dw DragoniteFrames
+ dw MewtwoFrames
+ dw MewFrames
+ dw ChikoritaFrames
+ dw BayleefFrames
+ dw MeganiumFrames
+ dw CyndaquilFrames
+ dw QuilavaFrames
+ dw TyphlosionFrames
+ dw TotodileFrames
+ dw CroconawFrames
+ dw FeraligatrFrames
+ dw SentretFrames
+ dw FurretFrames
+ dw HoothootFrames
+ dw NoctowlFrames
+ dw LedybaFrames
+ dw LedianFrames
+ dw SpinarakFrames
+ dw AriadosFrames
+ dw CrobatFrames
+ dw ChinchouFrames
+ dw LanturnFrames
+ dw PichuFrames
+ dw CleffaFrames
+ dw IgglybuffFrames
+ dw TogepiFrames
+ dw TogeticFrames
+ dw NatuFrames
+ dw XatuFrames
+ dw MareepFrames
+ dw FlaaffyFrames
+ dw AmpharosFrames
+ dw BellossomFrames
+ dw MarillFrames
+ dw AzumarillFrames
+ dw SudowoodoFrames
+ dw PolitoedFrames
+ dw HoppipFrames
+ dw SkiploomFrames
+ dw JumpluffFrames
+ dw AipomFrames
+ dw SunkernFrames
+ dw SunfloraFrames
+ dw YanmaFrames
+ dw WooperFrames
+ dw QuagsireFrames
+ dw EspeonFrames
+ dw UmbreonFrames
+ dw MurkrowFrames
+ dw SlowkingFrames
+ dw MisdreavusFrames
+ dw UnownFrames
+ dw WobbuffetFrames
+ dw GirafarigFrames
+ dw PinecoFrames
+ dw ForretressFrames
+ dw DunsparceFrames
+ dw GligarFrames
+ dw SteelixFrames
+ dw SnubbullFrames
+ dw GranbullFrames
+ dw QwilfishFrames
+ dw ScizorFrames
+ dw ShuckleFrames
+ dw HeracrossFrames
+ dw SneaselFrames
+ dw TeddiursaFrames
+ dw UrsaringFrames
+ dw SlugmaFrames
+ dw MagcargoFrames
+ dw SwinubFrames
+ dw PiloswineFrames
+ dw CorsolaFrames
+ dw RemoraidFrames
+ dw OctilleryFrames
+ dw DelibirdFrames
+ dw MantineFrames
+ dw SkarmoryFrames
+ dw HoundourFrames
+ dw HoundoomFrames
+ dw KingdraFrames
+ dw PhanpyFrames
+ dw DonphanFrames
+ dw Porygon2Frames
+ dw StantlerFrames
+ dw SmeargleFrames
+ dw TyrogueFrames
+ dw HitmontopFrames
+ dw SmoochumFrames
+ dw ElekidFrames
+ dw MagbyFrames
+ dw MiltankFrames
+ dw BlisseyFrames
+ dw RaikouFrames
+ dw EnteiFrames
+ dw SuicuneFrames
+ dw LarvitarFrames
+ dw PupitarFrames
+ dw TyranitarFrames
+ dw LugiaFrames
+ dw HoOhFrames
+ dw CelebiFrames
diff --git a/gfx/pics/johto_frames.asm b/gfx/pics/johto_frames.asm
new file mode 100644
index 000000000..a66e7a2c3
--- /dev/null
+++ b/gfx/pics/johto_frames.asm
@@ -0,0 +1,101 @@
+ChikoritaFrames: INCLUDE "gfx/pics/152/frames.asm"
+BayleefFrames: INCLUDE "gfx/pics/153/frames.asm"
+MeganiumFrames: INCLUDE "gfx/pics/154/frames.asm"
+CyndaquilFrames: INCLUDE "gfx/pics/155/frames.asm"
+QuilavaFrames: INCLUDE "gfx/pics/156/frames.asm"
+TyphlosionFrames: INCLUDE "gfx/pics/157/frames.asm"
+TotodileFrames: INCLUDE "gfx/pics/158/frames.asm"
+CroconawFrames: INCLUDE "gfx/pics/159/frames.asm"
+FeraligatrFrames: INCLUDE "gfx/pics/160/frames.asm"
+SentretFrames: INCLUDE "gfx/pics/161/frames.asm"
+FurretFrames: INCLUDE "gfx/pics/162/frames.asm"
+HoothootFrames: INCLUDE "gfx/pics/163/frames.asm"
+NoctowlFrames: INCLUDE "gfx/pics/164/frames.asm"
+LedybaFrames: INCLUDE "gfx/pics/165/frames.asm"
+LedianFrames: INCLUDE "gfx/pics/166/frames.asm"
+SpinarakFrames: INCLUDE "gfx/pics/167/frames.asm"
+AriadosFrames: INCLUDE "gfx/pics/168/frames.asm"
+CrobatFrames: INCLUDE "gfx/pics/169/frames.asm"
+ChinchouFrames: INCLUDE "gfx/pics/170/frames.asm"
+LanturnFrames: INCLUDE "gfx/pics/171/frames.asm"
+PichuFrames: INCLUDE "gfx/pics/172/frames.asm"
+CleffaFrames: INCLUDE "gfx/pics/173/frames.asm"
+IgglybuffFrames: INCLUDE "gfx/pics/174/frames.asm"
+TogepiFrames: INCLUDE "gfx/pics/175/frames.asm"
+TogeticFrames: INCLUDE "gfx/pics/176/frames.asm"
+NatuFrames: INCLUDE "gfx/pics/177/frames.asm"
+XatuFrames: INCLUDE "gfx/pics/178/frames.asm"
+MareepFrames: INCLUDE "gfx/pics/179/frames.asm"
+FlaaffyFrames: INCLUDE "gfx/pics/180/frames.asm"
+AmpharosFrames: INCLUDE "gfx/pics/181/frames.asm"
+BellossomFrames: INCLUDE "gfx/pics/182/frames.asm"
+MarillFrames: INCLUDE "gfx/pics/183/frames.asm"
+AzumarillFrames: INCLUDE "gfx/pics/184/frames.asm"
+SudowoodoFrames: INCLUDE "gfx/pics/185/frames.asm"
+PolitoedFrames: INCLUDE "gfx/pics/186/frames.asm"
+HoppipFrames: INCLUDE "gfx/pics/187/frames.asm"
+SkiploomFrames: INCLUDE "gfx/pics/188/frames.asm"
+JumpluffFrames: INCLUDE "gfx/pics/189/frames.asm"
+AipomFrames: INCLUDE "gfx/pics/190/frames.asm"
+SunkernFrames: INCLUDE "gfx/pics/191/frames.asm"
+SunfloraFrames: INCLUDE "gfx/pics/192/frames.asm"
+YanmaFrames: INCLUDE "gfx/pics/193/frames.asm"
+WooperFrames: INCLUDE "gfx/pics/194/frames.asm"
+QuagsireFrames: INCLUDE "gfx/pics/195/frames.asm"
+EspeonFrames: INCLUDE "gfx/pics/196/frames.asm"
+UmbreonFrames: INCLUDE "gfx/pics/197/frames.asm"
+MurkrowFrames: INCLUDE "gfx/pics/198/frames.asm"
+SlowkingFrames: INCLUDE "gfx/pics/199/frames.asm"
+MisdreavusFrames: INCLUDE "gfx/pics/200/frames.asm"
+UnownFrames: INCLUDE "gfx/pics/201/frames.asm"
+WobbuffetFrames: INCLUDE "gfx/pics/202/frames.asm"
+GirafarigFrames: INCLUDE "gfx/pics/203/frames.asm"
+PinecoFrames: INCLUDE "gfx/pics/204/frames.asm"
+ForretressFrames: INCLUDE "gfx/pics/205/frames.asm"
+DunsparceFrames: INCLUDE "gfx/pics/206/frames.asm"
+GligarFrames: INCLUDE "gfx/pics/207/frames.asm"
+SteelixFrames: INCLUDE "gfx/pics/208/frames.asm"
+SnubbullFrames: INCLUDE "gfx/pics/209/frames.asm"
+GranbullFrames: INCLUDE "gfx/pics/210/frames.asm"
+QwilfishFrames: INCLUDE "gfx/pics/211/frames.asm"
+ScizorFrames: INCLUDE "gfx/pics/212/frames.asm"
+ShuckleFrames: INCLUDE "gfx/pics/213/frames.asm"
+HeracrossFrames: INCLUDE "gfx/pics/214/frames.asm"
+SneaselFrames: INCLUDE "gfx/pics/215/frames.asm"
+TeddiursaFrames: INCLUDE "gfx/pics/216/frames.asm"
+UrsaringFrames: INCLUDE "gfx/pics/217/frames.asm"
+SlugmaFrames: INCLUDE "gfx/pics/218/frames.asm"
+MagcargoFrames: INCLUDE "gfx/pics/219/frames.asm"
+SwinubFrames: INCLUDE "gfx/pics/220/frames.asm"
+PiloswineFrames: INCLUDE "gfx/pics/221/frames.asm"
+CorsolaFrames: INCLUDE "gfx/pics/222/frames.asm"
+RemoraidFrames: INCLUDE "gfx/pics/223/frames.asm"
+OctilleryFrames: INCLUDE "gfx/pics/224/frames.asm"
+DelibirdFrames: INCLUDE "gfx/pics/225/frames.asm"
+MantineFrames: INCLUDE "gfx/pics/226/frames.asm"
+SkarmoryFrames: INCLUDE "gfx/pics/227/frames.asm"
+HoundourFrames: INCLUDE "gfx/pics/228/frames.asm"
+HoundoomFrames: INCLUDE "gfx/pics/229/frames.asm"
+KingdraFrames: INCLUDE "gfx/pics/230/frames.asm"
+PhanpyFrames: INCLUDE "gfx/pics/231/frames.asm"
+DonphanFrames: INCLUDE "gfx/pics/232/frames.asm"
+Porygon2Frames: INCLUDE "gfx/pics/233/frames.asm"
+StantlerFrames: INCLUDE "gfx/pics/234/frames.asm"
+SmeargleFrames: INCLUDE "gfx/pics/235/frames.asm"
+TyrogueFrames: INCLUDE "gfx/pics/236/frames.asm"
+HitmontopFrames: INCLUDE "gfx/pics/237/frames.asm"
+SmoochumFrames: INCLUDE "gfx/pics/238/frames.asm"
+ElekidFrames: INCLUDE "gfx/pics/239/frames.asm"
+MagbyFrames: INCLUDE "gfx/pics/240/frames.asm"
+MiltankFrames: INCLUDE "gfx/pics/241/frames.asm"
+BlisseyFrames: INCLUDE "gfx/pics/242/frames.asm"
+RaikouFrames: INCLUDE "gfx/pics/243/frames.asm"
+EnteiFrames: INCLUDE "gfx/pics/244/frames.asm"
+SuicuneFrames: INCLUDE "gfx/pics/245/frames.asm"
+LarvitarFrames: INCLUDE "gfx/pics/246/frames.asm"
+PupitarFrames: INCLUDE "gfx/pics/247/frames.asm"
+TyranitarFrames: INCLUDE "gfx/pics/248/frames.asm"
+LugiaFrames: INCLUDE "gfx/pics/249/frames.asm"
+HoOhFrames: INCLUDE "gfx/pics/250/frames.asm"
+CelebiFrames: INCLUDE "gfx/pics/251/frames.asm"
+EggFrames: INCLUDE "gfx/pics/egg/frames.asm"
diff --git a/gfx/pics/kanto_frames.asm b/gfx/pics/kanto_frames.asm
new file mode 100644
index 000000000..22b9419a0
--- /dev/null
+++ b/gfx/pics/kanto_frames.asm
@@ -0,0 +1,151 @@
+BulbasaurFrames: INCLUDE "gfx/pics/001/frames.asm"
+IvysaurFrames: INCLUDE "gfx/pics/002/frames.asm"
+VenusaurFrames: INCLUDE "gfx/pics/003/frames.asm"
+CharmanderFrames: INCLUDE "gfx/pics/004/frames.asm"
+CharmeleonFrames: INCLUDE "gfx/pics/005/frames.asm"
+CharizardFrames: INCLUDE "gfx/pics/006/frames.asm"
+SquirtleFrames: INCLUDE "gfx/pics/007/frames.asm"
+WartortleFrames: INCLUDE "gfx/pics/008/frames.asm"
+BlastoiseFrames: INCLUDE "gfx/pics/009/frames.asm"
+CaterpieFrames: INCLUDE "gfx/pics/010/frames.asm"
+MetapodFrames: INCLUDE "gfx/pics/011/frames.asm"
+ButterfreeFrames: INCLUDE "gfx/pics/012/frames.asm"
+WeedleFrames: INCLUDE "gfx/pics/013/frames.asm"
+KakunaFrames: INCLUDE "gfx/pics/014/frames.asm"
+BeedrillFrames: INCLUDE "gfx/pics/015/frames.asm"
+PidgeyFrames: INCLUDE "gfx/pics/016/frames.asm"
+PidgeottoFrames: INCLUDE "gfx/pics/017/frames.asm"
+PidgeotFrames: INCLUDE "gfx/pics/018/frames.asm"
+RattataFrames: INCLUDE "gfx/pics/019/frames.asm"
+RaticateFrames: INCLUDE "gfx/pics/020/frames.asm"
+SpearowFrames: INCLUDE "gfx/pics/021/frames.asm"
+FearowFrames: INCLUDE "gfx/pics/022/frames.asm"
+EkansFrames: INCLUDE "gfx/pics/023/frames.asm"
+ArbokFrames: INCLUDE "gfx/pics/024/frames.asm"
+PikachuFrames: INCLUDE "gfx/pics/025/frames.asm"
+RaichuFrames: INCLUDE "gfx/pics/026/frames.asm"
+SandshrewFrames: INCLUDE "gfx/pics/027/frames.asm"
+SandslashFrames: INCLUDE "gfx/pics/028/frames.asm"
+NidoranFFrames: INCLUDE "gfx/pics/029/frames.asm"
+NidorinaFrames: INCLUDE "gfx/pics/030/frames.asm"
+NidoqueenFrames: INCLUDE "gfx/pics/031/frames.asm"
+NidoranMFrames: INCLUDE "gfx/pics/032/frames.asm"
+NidorinoFrames: INCLUDE "gfx/pics/033/frames.asm"
+NidokingFrames: INCLUDE "gfx/pics/034/frames.asm"
+ClefairyFrames: INCLUDE "gfx/pics/035/frames.asm"
+ClefableFrames: INCLUDE "gfx/pics/036/frames.asm"
+VulpixFrames: INCLUDE "gfx/pics/037/frames.asm"
+NinetalesFrames: INCLUDE "gfx/pics/038/frames.asm"
+JigglypuffFrames: INCLUDE "gfx/pics/039/frames.asm"
+WigglytuffFrames: INCLUDE "gfx/pics/040/frames.asm"
+ZubatFrames: INCLUDE "gfx/pics/041/frames.asm"
+GolbatFrames: INCLUDE "gfx/pics/042/frames.asm"
+OddishFrames: INCLUDE "gfx/pics/043/frames.asm"
+GloomFrames: INCLUDE "gfx/pics/044/frames.asm"
+VileplumeFrames: INCLUDE "gfx/pics/045/frames.asm"
+ParasFrames: INCLUDE "gfx/pics/046/frames.asm"
+ParasectFrames: INCLUDE "gfx/pics/047/frames.asm"
+VenonatFrames: INCLUDE "gfx/pics/048/frames.asm"
+VenomothFrames: INCLUDE "gfx/pics/049/frames.asm"
+DiglettFrames: INCLUDE "gfx/pics/050/frames.asm"
+DugtrioFrames: INCLUDE "gfx/pics/051/frames.asm"
+MeowthFrames: INCLUDE "gfx/pics/052/frames.asm"
+PersianFrames: INCLUDE "gfx/pics/053/frames.asm"
+PsyduckFrames: INCLUDE "gfx/pics/054/frames.asm"
+GolduckFrames: INCLUDE "gfx/pics/055/frames.asm"
+MankeyFrames: INCLUDE "gfx/pics/056/frames.asm"
+PrimeapeFrames: INCLUDE "gfx/pics/057/frames.asm"
+GrowlitheFrames: INCLUDE "gfx/pics/058/frames.asm"
+ArcanineFrames: INCLUDE "gfx/pics/059/frames.asm"
+PoliwagFrames: INCLUDE "gfx/pics/060/frames.asm"
+PoliwhirlFrames: INCLUDE "gfx/pics/061/frames.asm"
+PoliwrathFrames: INCLUDE "gfx/pics/062/frames.asm"
+AbraFrames: INCLUDE "gfx/pics/063/frames.asm"
+KadabraFrames: INCLUDE "gfx/pics/064/frames.asm"
+AlakazamFrames: INCLUDE "gfx/pics/065/frames.asm"
+MachopFrames: INCLUDE "gfx/pics/066/frames.asm"
+MachokeFrames: INCLUDE "gfx/pics/067/frames.asm"
+MachampFrames: INCLUDE "gfx/pics/068/frames.asm"
+BellsproutFrames: INCLUDE "gfx/pics/069/frames.asm"
+WeepinbellFrames: INCLUDE "gfx/pics/070/frames.asm"
+VictreebelFrames: INCLUDE "gfx/pics/071/frames.asm"
+TentacoolFrames: INCLUDE "gfx/pics/072/frames.asm"
+TentacruelFrames: INCLUDE "gfx/pics/073/frames.asm"
+GeodudeFrames: INCLUDE "gfx/pics/074/frames.asm"
+GravelerFrames: INCLUDE "gfx/pics/075/frames.asm"
+GolemFrames: INCLUDE "gfx/pics/076/frames.asm"
+PonytaFrames: INCLUDE "gfx/pics/077/frames.asm"
+RapidashFrames: INCLUDE "gfx/pics/078/frames.asm"
+SlowpokeFrames: INCLUDE "gfx/pics/079/frames.asm"
+SlowbroFrames: INCLUDE "gfx/pics/080/frames.asm"
+MagnemiteFrames: INCLUDE "gfx/pics/081/frames.asm"
+MagnetonFrames: INCLUDE "gfx/pics/082/frames.asm"
+FarfetchDFrames: INCLUDE "gfx/pics/083/frames.asm"
+DoduoFrames: INCLUDE "gfx/pics/084/frames.asm"
+DodrioFrames: INCLUDE "gfx/pics/085/frames.asm"
+SeelFrames: INCLUDE "gfx/pics/086/frames.asm"
+DewgongFrames: INCLUDE "gfx/pics/087/frames.asm"
+GrimerFrames: INCLUDE "gfx/pics/088/frames.asm"
+MukFrames: INCLUDE "gfx/pics/089/frames.asm"
+ShellderFrames: INCLUDE "gfx/pics/090/frames.asm"
+CloysterFrames: INCLUDE "gfx/pics/091/frames.asm"
+GastlyFrames: INCLUDE "gfx/pics/092/frames.asm"
+HaunterFrames: INCLUDE "gfx/pics/093/frames.asm"
+GengarFrames: INCLUDE "gfx/pics/094/frames.asm"
+OnixFrames: INCLUDE "gfx/pics/095/frames.asm"
+DrowzeeFrames: INCLUDE "gfx/pics/096/frames.asm"
+HypnoFrames: INCLUDE "gfx/pics/097/frames.asm"
+KrabbyFrames: INCLUDE "gfx/pics/098/frames.asm"
+KinglerFrames: INCLUDE "gfx/pics/099/frames.asm"
+VoltorbFrames: INCLUDE "gfx/pics/100/frames.asm"
+ElectrodeFrames: INCLUDE "gfx/pics/101/frames.asm"
+ExeggcuteFrames: INCLUDE "gfx/pics/102/frames.asm"
+ExeggutorFrames: INCLUDE "gfx/pics/103/frames.asm"
+CuboneFrames: INCLUDE "gfx/pics/104/frames.asm"
+MarowakFrames: INCLUDE "gfx/pics/105/frames.asm"
+HitmonleeFrames: INCLUDE "gfx/pics/106/frames.asm"
+HitmonchanFrames: INCLUDE "gfx/pics/107/frames.asm"
+LickitungFrames: INCLUDE "gfx/pics/108/frames.asm"
+KoffingFrames: INCLUDE "gfx/pics/109/frames.asm"
+WeezingFrames: INCLUDE "gfx/pics/110/frames.asm"
+RhyhornFrames: INCLUDE "gfx/pics/111/frames.asm"
+RhydonFrames: INCLUDE "gfx/pics/112/frames.asm"
+ChanseyFrames: INCLUDE "gfx/pics/113/frames.asm"
+TangelaFrames: INCLUDE "gfx/pics/114/frames.asm"
+KangaskhanFrames: INCLUDE "gfx/pics/115/frames.asm"
+HorseaFrames: INCLUDE "gfx/pics/116/frames.asm"
+SeadraFrames: INCLUDE "gfx/pics/117/frames.asm"
+GoldeenFrames: INCLUDE "gfx/pics/118/frames.asm"
+SeakingFrames: INCLUDE "gfx/pics/119/frames.asm"
+StaryuFrames: INCLUDE "gfx/pics/120/frames.asm"
+StarmieFrames: INCLUDE "gfx/pics/121/frames.asm"
+MrMimeFrames: INCLUDE "gfx/pics/122/frames.asm"
+ScytherFrames: INCLUDE "gfx/pics/123/frames.asm"
+JynxFrames: INCLUDE "gfx/pics/124/frames.asm"
+ElectabuzzFrames: INCLUDE "gfx/pics/125/frames.asm"
+MagmarFrames: INCLUDE "gfx/pics/126/frames.asm"
+PinsirFrames: INCLUDE "gfx/pics/127/frames.asm"
+TaurosFrames: INCLUDE "gfx/pics/128/frames.asm"
+MagikarpFrames: INCLUDE "gfx/pics/129/frames.asm"
+GyaradosFrames: INCLUDE "gfx/pics/130/frames.asm"
+LaprasFrames: INCLUDE "gfx/pics/131/frames.asm"
+DittoFrames: INCLUDE "gfx/pics/132/frames.asm"
+EeveeFrames: INCLUDE "gfx/pics/133/frames.asm"
+VaporeonFrames: INCLUDE "gfx/pics/134/frames.asm"
+JolteonFrames: INCLUDE "gfx/pics/135/frames.asm"
+FlareonFrames: INCLUDE "gfx/pics/136/frames.asm"
+PorygonFrames: INCLUDE "gfx/pics/137/frames.asm"
+OmanyteFrames: INCLUDE "gfx/pics/138/frames.asm"
+OmastarFrames: INCLUDE "gfx/pics/139/frames.asm"
+KabutoFrames: INCLUDE "gfx/pics/140/frames.asm"
+KabutopsFrames: INCLUDE "gfx/pics/141/frames.asm"
+AerodactylFrames: INCLUDE "gfx/pics/142/frames.asm"
+SnorlaxFrames: INCLUDE "gfx/pics/143/frames.asm"
+ArticunoFrames: INCLUDE "gfx/pics/144/frames.asm"
+ZapdosFrames: INCLUDE "gfx/pics/145/frames.asm"
+MoltresFrames: INCLUDE "gfx/pics/146/frames.asm"
+DratiniFrames: INCLUDE "gfx/pics/147/frames.asm"
+DragonairFrames: INCLUDE "gfx/pics/148/frames.asm"
+DragoniteFrames: INCLUDE "gfx/pics/149/frames.asm"
+MewtwoFrames: INCLUDE "gfx/pics/150/frames.asm"
+MewFrames: INCLUDE "gfx/pics/151/frames.asm"
diff --git a/gfx/pics/unown_anim_pointers.asm b/gfx/pics/unown_anim_pointers.asm
new file mode 100644
index 000000000..ea8067b5e
--- /dev/null
+++ b/gfx/pics/unown_anim_pointers.asm
@@ -0,0 +1,26 @@
+ dw UnownAAnimation
+ dw UnownBAnimation
+ dw UnownCAnimation
+ dw UnownDAnimation
+ dw UnownEAnimation
+ dw UnownFAnimation
+ dw UnownGAnimation
+ dw UnownHAnimation
+ dw UnownIAnimation
+ dw UnownJAnimation
+ dw UnownKAnimation
+ dw UnownLAnimation
+ dw UnownMAnimation
+ dw UnownNAnimation
+ dw UnownOAnimation
+ dw UnownPAnimation
+ dw UnownQAnimation
+ dw UnownRAnimation
+ dw UnownSAnimation
+ dw UnownTAnimation
+ dw UnownUAnimation
+ dw UnownVAnimation
+ dw UnownWAnimation
+ dw UnownXAnimation
+ dw UnownYAnimation
+ dw UnownZAnimation
diff --git a/gfx/pics/unown_anims.asm b/gfx/pics/unown_anims.asm
new file mode 100644
index 000000000..b0cbd521d
--- /dev/null
+++ b/gfx/pics/unown_anims.asm
@@ -0,0 +1,26 @@
+UnownAAnimation: INCLUDE "gfx/pics/201a/anim0.asm"
+UnownBAnimation: INCLUDE "gfx/pics/201b/anim0.asm"
+UnownCAnimation: INCLUDE "gfx/pics/201c/anim0.asm"
+UnownDAnimation: INCLUDE "gfx/pics/201d/anim0.asm"
+UnownEAnimation: INCLUDE "gfx/pics/201e/anim0.asm"
+UnownFAnimation: INCLUDE "gfx/pics/201f/anim0.asm"
+UnownGAnimation: INCLUDE "gfx/pics/201g/anim0.asm"
+UnownHAnimation: INCLUDE "gfx/pics/201h/anim0.asm"
+UnownIAnimation: INCLUDE "gfx/pics/201i/anim0.asm"
+UnownJAnimation: INCLUDE "gfx/pics/201j/anim0.asm"
+UnownKAnimation: INCLUDE "gfx/pics/201k/anim0.asm"
+UnownLAnimation: INCLUDE "gfx/pics/201l/anim0.asm"
+UnownMAnimation: INCLUDE "gfx/pics/201m/anim0.asm"
+UnownNAnimation: INCLUDE "gfx/pics/201n/anim0.asm"
+UnownOAnimation: INCLUDE "gfx/pics/201o/anim0.asm"
+UnownPAnimation: INCLUDE "gfx/pics/201p/anim0.asm"
+UnownQAnimation: INCLUDE "gfx/pics/201q/anim0.asm"
+UnownRAnimation: INCLUDE "gfx/pics/201r/anim0.asm"
+UnownSAnimation: INCLUDE "gfx/pics/201s/anim0.asm"
+UnownTAnimation: INCLUDE "gfx/pics/201t/anim0.asm"
+UnownUAnimation: INCLUDE "gfx/pics/201u/anim0.asm"
+UnownVAnimation: INCLUDE "gfx/pics/201v/anim0.asm"
+UnownWAnimation: INCLUDE "gfx/pics/201w/anim0.asm"
+UnownXAnimation: INCLUDE "gfx/pics/201x/anim0.asm"
+UnownYAnimation: INCLUDE "gfx/pics/201y/anim0.asm"
+UnownZAnimation: INCLUDE "gfx/pics/201z/anim0.asm"
diff --git a/gfx/pics/unown_bitmask_pointers.asm b/gfx/pics/unown_bitmask_pointers.asm
new file mode 100644
index 000000000..1af0de50e
--- /dev/null
+++ b/gfx/pics/unown_bitmask_pointers.asm
@@ -0,0 +1,26 @@
+ dw UnownABitmasks
+ dw UnownBBitmasks
+ dw UnownCBitmasks
+ dw UnownDBitmasks
+ dw UnownEBitmasks
+ dw UnownFBitmasks
+ dw UnownGBitmasks
+ dw UnownHBitmasks
+ dw UnownIBitmasks
+ dw UnownJBitmasks
+ dw UnownKBitmasks
+ dw UnownLBitmasks
+ dw UnownMBitmasks
+ dw UnownNBitmasks
+ dw UnownOBitmasks
+ dw UnownPBitmasks
+ dw UnownQBitmasks
+ dw UnownRBitmasks
+ dw UnownSBitmasks
+ dw UnownTBitmasks
+ dw UnownUBitmasks
+ dw UnownVBitmasks
+ dw UnownWBitmasks
+ dw UnownXBitmasks
+ dw UnownYBitmasks
+ dw UnownZBitmasks
diff --git a/gfx/pics/unown_bitmasks.asm b/gfx/pics/unown_bitmasks.asm
new file mode 100644
index 000000000..6094939cb
--- /dev/null
+++ b/gfx/pics/unown_bitmasks.asm
@@ -0,0 +1,26 @@
+UnownABitmasks: INCLUDE "gfx/pics/201a/bitmask.asm"
+UnownBBitmasks: INCLUDE "gfx/pics/201b/bitmask.asm"
+UnownCBitmasks: INCLUDE "gfx/pics/201c/bitmask.asm"
+UnownDBitmasks: INCLUDE "gfx/pics/201d/bitmask.asm"
+UnownEBitmasks: INCLUDE "gfx/pics/201e/bitmask.asm"
+UnownFBitmasks: INCLUDE "gfx/pics/201f/bitmask.asm"
+UnownGBitmasks: INCLUDE "gfx/pics/201g/bitmask.asm"
+UnownHBitmasks: INCLUDE "gfx/pics/201h/bitmask.asm"
+UnownIBitmasks: INCLUDE "gfx/pics/201i/bitmask.asm"
+UnownJBitmasks: INCLUDE "gfx/pics/201j/bitmask.asm"
+UnownKBitmasks: INCLUDE "gfx/pics/201k/bitmask.asm"
+UnownLBitmasks: INCLUDE "gfx/pics/201l/bitmask.asm"
+UnownMBitmasks: INCLUDE "gfx/pics/201m/bitmask.asm"
+UnownNBitmasks: INCLUDE "gfx/pics/201n/bitmask.asm"
+UnownOBitmasks: INCLUDE "gfx/pics/201o/bitmask.asm"
+UnownPBitmasks: INCLUDE "gfx/pics/201p/bitmask.asm"
+UnownQBitmasks: INCLUDE "gfx/pics/201q/bitmask.asm"
+UnownRBitmasks: INCLUDE "gfx/pics/201r/bitmask.asm"
+UnownSBitmasks: INCLUDE "gfx/pics/201s/bitmask.asm"
+UnownTBitmasks: INCLUDE "gfx/pics/201t/bitmask.asm"
+UnownUBitmasks: INCLUDE "gfx/pics/201u/bitmask.asm"
+UnownVBitmasks: INCLUDE "gfx/pics/201v/bitmask.asm"
+UnownWBitmasks: INCLUDE "gfx/pics/201w/bitmask.asm"
+UnownXBitmasks: INCLUDE "gfx/pics/201x/bitmask.asm"
+UnownYBitmasks: INCLUDE "gfx/pics/201y/bitmask.asm"
+UnownZBitmasks: INCLUDE "gfx/pics/201z/bitmask.asm"
diff --git a/gfx/pics/unown_extra_pointers.asm b/gfx/pics/unown_extra_pointers.asm
new file mode 100644
index 000000000..5a16805aa
--- /dev/null
+++ b/gfx/pics/unown_extra_pointers.asm
@@ -0,0 +1,26 @@
+ dw UnownAAnimationExtra
+ dw UnownBAnimationExtra
+ dw UnownCAnimationExtra
+ dw UnownDAnimationExtra
+ dw UnownEAnimationExtra
+ dw UnownFAnimationExtra
+ dw UnownGAnimationExtra
+ dw UnownHAnimationExtra
+ dw UnownIAnimationExtra
+ dw UnownJAnimationExtra
+ dw UnownKAnimationExtra
+ dw UnownLAnimationExtra
+ dw UnownMAnimationExtra
+ dw UnownNAnimationExtra
+ dw UnownOAnimationExtra
+ dw UnownPAnimationExtra
+ dw UnownQAnimationExtra
+ dw UnownRAnimationExtra
+ dw UnownSAnimationExtra
+ dw UnownTAnimationExtra
+ dw UnownUAnimationExtra
+ dw UnownVAnimationExtra
+ dw UnownWAnimationExtra
+ dw UnownXAnimationExtra
+ dw UnownYAnimationExtra
+ dw UnownZAnimationExtra
diff --git a/gfx/pics/unown_extras.asm b/gfx/pics/unown_extras.asm
new file mode 100644
index 000000000..3574a13c7
--- /dev/null
+++ b/gfx/pics/unown_extras.asm
@@ -0,0 +1,26 @@
+UnownAAnimationExtra: INCLUDE "gfx/pics/201a/anim1.asm"
+UnownBAnimationExtra: INCLUDE "gfx/pics/201b/anim1.asm"
+UnownCAnimationExtra: INCLUDE "gfx/pics/201c/anim1.asm"
+UnownDAnimationExtra: INCLUDE "gfx/pics/201d/anim1.asm"
+UnownEAnimationExtra: INCLUDE "gfx/pics/201e/anim1.asm"
+UnownFAnimationExtra: INCLUDE "gfx/pics/201f/anim1.asm"
+UnownGAnimationExtra: INCLUDE "gfx/pics/201g/anim1.asm"
+UnownHAnimationExtra: INCLUDE "gfx/pics/201h/anim1.asm"
+UnownIAnimationExtra: INCLUDE "gfx/pics/201i/anim1.asm"
+UnownJAnimationExtra: INCLUDE "gfx/pics/201j/anim1.asm"
+UnownKAnimationExtra: INCLUDE "gfx/pics/201k/anim1.asm"
+UnownLAnimationExtra: INCLUDE "gfx/pics/201l/anim1.asm"
+UnownMAnimationExtra: INCLUDE "gfx/pics/201m/anim1.asm"
+UnownNAnimationExtra: INCLUDE "gfx/pics/201n/anim1.asm"
+UnownOAnimationExtra: INCLUDE "gfx/pics/201o/anim1.asm"
+UnownPAnimationExtra: INCLUDE "gfx/pics/201p/anim1.asm"
+UnownQAnimationExtra: INCLUDE "gfx/pics/201q/anim1.asm"
+UnownRAnimationExtra: INCLUDE "gfx/pics/201r/anim1.asm"
+UnownSAnimationExtra: INCLUDE "gfx/pics/201s/anim1.asm"
+UnownTAnimationExtra: INCLUDE "gfx/pics/201t/anim1.asm"
+UnownUAnimationExtra: INCLUDE "gfx/pics/201u/anim1.asm"
+UnownVAnimationExtra: INCLUDE "gfx/pics/201v/anim1.asm"
+UnownWAnimationExtra: INCLUDE "gfx/pics/201w/anim1.asm"
+UnownXAnimationExtra: INCLUDE "gfx/pics/201x/anim1.asm"
+UnownYAnimationExtra: INCLUDE "gfx/pics/201y/anim1.asm"
+UnownZAnimationExtra: INCLUDE "gfx/pics/201z/anim1.asm"
diff --git a/gfx/pics/unown_frame_pointers.asm b/gfx/pics/unown_frame_pointers.asm
new file mode 100644
index 000000000..156efe7c3
--- /dev/null
+++ b/gfx/pics/unown_frame_pointers.asm
@@ -0,0 +1,26 @@
+ dw UnownAFrames
+ dw UnownBFrames
+ dw UnownCFrames
+ dw UnownDFrames
+ dw UnownEFrames
+ dw UnownFFrames
+ dw UnownGFrames
+ dw UnownHFrames
+ dw UnownIFrames
+ dw UnownJFrames
+ dw UnownKFrames
+ dw UnownLFrames
+ dw UnownMFrames
+ dw UnownNFrames
+ dw UnownOFrames
+ dw UnownPFrames
+ dw UnownQFrames
+ dw UnownRFrames
+ dw UnownSFrames
+ dw UnownTFrames
+ dw UnownUFrames
+ dw UnownVFrames
+ dw UnownWFrames
+ dw UnownXFrames
+ dw UnownYFrames
+ dw UnownZFrames
diff --git a/gfx/pics/unown_frames.asm b/gfx/pics/unown_frames.asm
new file mode 100644
index 000000000..286cc6766
--- /dev/null
+++ b/gfx/pics/unown_frames.asm
@@ -0,0 +1,26 @@
+UnownAFrames: INCLUDE "gfx/pics/201a/frames.asm"
+UnownBFrames: INCLUDE "gfx/pics/201b/frames.asm"
+UnownCFrames: INCLUDE "gfx/pics/201c/frames.asm"
+UnownDFrames: INCLUDE "gfx/pics/201d/frames.asm"
+UnownEFrames: INCLUDE "gfx/pics/201e/frames.asm"
+UnownFFrames: INCLUDE "gfx/pics/201f/frames.asm"
+UnownGFrames: INCLUDE "gfx/pics/201g/frames.asm"
+UnownHFrames: INCLUDE "gfx/pics/201h/frames.asm"
+UnownIFrames: INCLUDE "gfx/pics/201i/frames.asm"
+UnownJFrames: INCLUDE "gfx/pics/201j/frames.asm"
+UnownKFrames: INCLUDE "gfx/pics/201k/frames.asm"
+UnownLFrames: INCLUDE "gfx/pics/201l/frames.asm"
+UnownMFrames: INCLUDE "gfx/pics/201m/frames.asm"
+UnownNFrames: INCLUDE "gfx/pics/201n/frames.asm"
+UnownOFrames: INCLUDE "gfx/pics/201o/frames.asm"
+UnownPFrames: INCLUDE "gfx/pics/201p/frames.asm"
+UnownQFrames: INCLUDE "gfx/pics/201q/frames.asm"
+UnownRFrames: INCLUDE "gfx/pics/201r/frames.asm"
+UnownSFrames: INCLUDE "gfx/pics/201s/frames.asm"
+UnownTFrames: INCLUDE "gfx/pics/201t/frames.asm"
+UnownUFrames: INCLUDE "gfx/pics/201u/frames.asm"
+UnownVFrames: INCLUDE "gfx/pics/201v/frames.asm"
+UnownWFrames: INCLUDE "gfx/pics/201w/frames.asm"
+UnownXFrames: INCLUDE "gfx/pics/201x/frames.asm"
+UnownYFrames: INCLUDE "gfx/pics/201y/frames.asm"
+UnownZFrames: INCLUDE "gfx/pics/201z/frames.asm"
diff --git a/main.asm b/main.asm
index 6c4d1310a..f9c25004c 100644
--- a/main.asm
+++ b/main.asm
@@ -3,7 +3,7 @@ SECTION "rst0",HOME[$0]
di
jp Start
-SECTION "rst8",HOME[$8]
+SECTION "rst8",HOME[$8] ; FarCall
jp $2d63
SECTION "rst10",HOME[$10] ; Bankswitch
@@ -17,7 +17,7 @@ SECTION "rst18",HOME[$18] ; Unused
SECTION "rst20",HOME[$20] ; Unused
rst $38
-SECTION "rst28",HOME[$28] ; Jump from pointer table
+SECTION "rst28",HOME[$28] ; JumpTable
push de
ld e, a
ld d, 00
@@ -35,7 +35,7 @@ SECTION "rst38",HOME[$38] ; Unused
rst $38
SECTION "vblank",HOME[$40] ; vblank interrupt
- jp $0283
+ jp VBlank
SECTION "lcd",HOME[$48] ; lcd interrupt
jp $0552
@@ -56,7 +56,541 @@ Start:
SECTION "start",HOME[$150]
-INCBIN "baserom.gbc",$150,$45a - $150
+INCBIN "baserom.gbc",$150,$283 - $150
+
+VBlank: ; 283
+ push af
+ push bc
+ push de
+ push hl
+
+; get vblank type
+ ld a, [$ff9e]
+ and $7
+
+; get fn pointer
+ ld e, a
+ ld d, $0
+ ld hl, .VBlanks
+ add hl, de
+ add hl, de
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+
+; down to business
+ call JpHl
+
+; since this is called once per frame
+ call GameTimer
+
+ pop hl
+ pop de
+ pop bc
+ pop af
+ reti
+; 2a1
+
+.VBlanks ; 2a1
+ dw VBlank0 ; 0
+ dw VBlank1 ; 1
+ dw VBlank2 ; 2
+ dw VBlank3 ; 3
+ dw VBlank4 ; 4
+ dw VBlank5 ; 5
+ dw VBlank6 ; 6
+ dw VBlank0 ; 7
+; 2b1
+
+
+VBlank0: ; 2b1
+; normal operation
+
+; rng
+; scx, scy, wy, wx
+; bg map buffer
+; palettes
+; dma transfer
+; bg map
+; tiles
+; oam
+; joypad
+; sound
+
+; inc frame counter
+ ld hl, $ff9b
+ inc [hl]
+
+; advance rng
+ ld a, [$ff04] ; divider
+ ld b, a
+ ld a, [$ffe1]
+ adc b
+ ld [$ffe1], a
+
+ ld a, [$ff04] ; divider
+ ld b, a
+ ld a, [$ffe2]
+ sbc b
+ ld [$ffe2], a
+
+; save bank
+ ld a, [$ff9d] ; current bank
+ ld [$ff8a], a
+
+; scroll x
+ ld a, [$ffcf]
+ ld [$ff43], a ; scx
+; scroll y
+ ld a, [$ffd0]
+ ld [$ff42], a ; scy
+; window y
+ ld a, [$ffd2]
+ ld [$ff4a], a ; wy
+; window x + 7
+ ld a, [$ffd1]
+ ld [$ff4b], a ; wx
+
+; some time management is in order
+; only have time for one of these during vblank
+
+; bg map buffer has priority
+ call UpdateBGMapBuffer
+ jr c, .doneframeaction
+
+; then pals
+ call UpdatePalsIfCGB
+ jr c, .doneframeaction
+
+; dma transfer
+ call DMATransfer
+ jr c, .doneframeaction
+
+; bg map
+ call UpdateBGMap
+
+; these have their own timing checks
+ call SafeLoadTiles
+ call SafeLoadTiles2
+ call SafeTileAnimation
+
+.doneframeaction
+; oam update off?
+ ld a, [$ffd8]
+ and a
+ jr nz, .vblankoccurred
+
+; update oam by dma transfer
+ call $ff80
+; 403f:
+; ld a, $c4
+; ld [$ff46], a ; oam dma
+; ld a, $28
+; .loop
+; dec a
+; jr nz, .loop
+; ret
+
+
+; vblank-sensitive operations are done
+
+.vblankoccurred
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+
+; dec $cfb1 until 0
+ ld a, [$cfb1]
+ and a
+ jr z, .textdelay
+ dec a
+ ld [$cfb1], a
+
+.textdelay
+; dec text delay counter until 0
+ ld a, [TextDelayFrames]
+ and a
+ jr z, .joypad
+ dec a
+ ld [TextDelayFrames], a
+
+.joypad
+ call Joypad
+
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+ ld a, [$ff8a]
+ rst Bankswitch ; restore bank
+
+;
+ ld a, [$ff98]
+ ld [$ffe3], a
+
+ ret
+; 325
+
+
+VBlank2: ; 325
+; sound only
+
+; save bank
+ ld a, [$ff9d]
+ ld [$ff8a], a
+
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+
+; restore bank
+ ld a, [$ff8a]
+ rst Bankswitch
+
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+ ret
+; 337
+
+
+VBlank1: ; 337
+; scx, scy
+; palettes
+; bg map
+; tiles
+; oam
+; sound / lcd stat
+
+; save bank
+ ld a, [$ff9d]
+ ld [$ff8a], a
+
+; scroll x
+ ld a, [$ffcf]
+ ld [$ff43], a ; scx
+
+; scroll y
+ ld a, [$ffd0]
+ ld [$ff42], a ; scy
+
+; time-sensitive fns
+ call UpdatePals
+ jr c, .vblankoccurred
+
+; these have their own timing checks
+ call UpdateBGMap
+ call LoadTiles
+; update oam by dma transfer
+ call $ff80
+; 403f:
+; ld a, $c4
+; ld [$ff46], a ; oam dma
+; ld a, $28
+; .loop
+; dec a
+; jr nz, .loop
+; ret
+
+.vblankoccurred
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+
+; get requested ints
+ ld a, [$ff0f] ; IF
+ ld b, a
+; discard requested ints
+ xor a
+ ld [$ff0f], a ; IF
+; enable lcd stat
+ ld a, %10 ; lcd stat
+ ld [$ffff], a ; IE
+; rerequest serial int if applicable (still disabled)
+; request lcd stat
+ ld a, b
+ and %1000 ; serial
+ or %10 ; lcd stat
+ ld [$ff0f], a ; IF
+
+ ei
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+; restore bank
+ ld a, [$ff8a]
+ rst Bankswitch
+ di
+
+; get requested ints
+ ld a, [$ff0f] ; IF
+ ld b, a
+; discard requested ints
+ xor a
+ ld [$ff0f], a ; IF
+; enable ints besides joypad
+ ld a, %1111 ; serial timer lcdstat vblank
+ ld [$ffff], a ; IE
+; rerequest ints
+ ld a, b
+ ld [$ff0f], a ; IF
+ ret
+; 37f
+
+
+UpdatePals: ; 37f
+; update pals for either dmg or cgb
+
+; check cgb
+ ld a, [$ffe6]
+ and a
+ jp nz, UpdateCGBPals
+
+; update gb pals
+ ld a, [$cfc7]
+ ld [$ff47], a ; BGP
+
+ ld a, [$cfc8]
+ ld [$ff48], a ; OBP0
+
+ ld a, [$cfc9]
+ ld [$ff49], a ; 0BP1
+
+ and a
+ ret
+; 396
+
+
+VBlank3: ; 396
+; scx, scy
+; palettes
+; bg map
+; tiles
+; oam
+; sound / lcd stat
+
+; save bank
+ ld a, [$ff9d]
+ ld [$ff8a], a
+
+; scroll x
+ ld a, [$ffcf]
+ ld [$ff43], a ; scx
+; scroll y
+ ld a, [$ffd0]
+ ld [$ff42], a ; scy
+
+; any pals to update?
+ ld a, [$ffe5]
+ and a
+ call nz, ForceUpdateCGBPals
+ jr c, .vblankoccurred
+; else
+ call UpdateBGMap
+ call LoadTiles
+
+; update oam by dma transfer
+ call $ff80
+; 403f:
+; ld a, $c4 ; Sprites / $100
+; ld [$ff46], a ; oam dma
+; ld a, $28
+; .loop
+; dec a
+; jr nz, .loop
+; ret
+
+.vblankoccurred
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+
+; save int flag
+ ld a, [$ff0f] ; IF
+ push af
+; reset ints
+ xor a
+ ld [$ff0f], a ; IF
+; force lcdstat int during sound update
+ ld a, %10 ; lcd stat
+ ld [$ffff], a ; IE
+ ld [$ff0f], a ; IF
+
+ ei
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+; restore bank
+ ld a, [$ff8a]
+ rst Bankswitch
+ di
+
+; request lcdstat
+ ld a, [$ff0f] ; IF
+ ld b, a
+; and any other ints
+ pop af
+ or b
+ ld b, a
+; reset ints
+ xor a
+ ld [$ff0f], a ; IF
+; enable ints besides joypad
+ ld a, %1111 ; serial timer lcdstat vblank
+ ld [$ffff], a ; IE
+; request ints
+ ld a, b
+ ld [$ff0f], a ; IF
+ ret
+; 3df
+
+
+VBlank4: ; 3df
+; bg map
+; tiles
+; oam
+; joypad
+; serial
+; sound
+
+; save bank
+ ld a, [$ff9d]
+ ld [$ff8a], a
+
+ call UpdateBGMap
+ call SafeLoadTiles
+
+; update oam by dma transfer
+ call $ff80
+; 403f:
+; ld a, $c4
+; ld [$ff46], a ; oam dma
+; ld a, $28
+; .loop
+; dec a
+; jr nz, .loop
+; ret
+
+; update joypad
+ call Joypad
+
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+
+; handshake
+ call AskSerial
+
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+; restore bank
+ ld a, [$ff8a]
+ rst Bankswitch
+ ret
+; 400
+
+
+VBlank5: ; 400
+; scx
+; palettes
+; bg map
+; tiles
+; joypad
+;
+
+; save bank
+ ld a, [$ff9d]
+ ld [$ff8a], a
+
+; scroll x
+ ld a, [$ffcf]
+ ld [$ff43], a ; scx
+
+; if we can update pals, skip this part
+ call UpdatePalsIfCGB
+ jr c, .vblankoccurred
+
+ call UpdateBGMap
+ call SafeLoadTiles
+
+.vblankoccurred
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+
+; joypad
+ call Joypad
+
+; discard requested ints
+ xor a
+ ld [$ff0f], a ; IF
+; enable lcd stat
+ ld a, %10 ; lcd stat
+ ld [$ffff], a ; IE
+; request lcd stat
+ ld [$ff0f], a ; IF
+
+ ei
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+; restore bank
+ ld a, [$ff8a]
+ rst Bankswitch
+ di
+
+; discard requested ints
+ xor a
+ ld [$ff0f], a ; IF
+; enable ints besides joypad
+ ld a, %1111 ; serial timer lcdstat vblank
+ ld [$ffff], a ; IE
+ ret
+; 436
+
+
+VBlank6: ; 436
+; palettes
+; tiles
+; dma transfer
+; sound
+
+; save bank
+ ld a, [$ff9d]
+ ld [$ff8a], a
+
+; inc frame counter
+ ld hl, $ff9b
+ inc [hl]
+
+ call UpdateCGBPals
+ jr c, .vblankoccurred
+
+ call SafeLoadTiles
+ call SafeLoadTiles2
+ call DMATransfer
+
+.vblankoccurred
+; tell other fns vblank happened
+ xor a
+ ld [VBlankOccurred], a
+
+; update sound
+ ld a, BANK(UpdateSound)
+ rst Bankswitch ; bankswitch
+ call UpdateSound
+; restore bank
+ ld a, [$ff8a]
+ rst Bankswitch
+ ret
+; 45a
+
DelayFrame: ; 0x45a
; delay for one frame
@@ -140,6 +674,9 @@ IncGradGBPalTable_01: ; 52f
INCBIN "baserom.gbc",$547,$568 - $547
DisableLCD: ; 568
+; Turn the LCD off
+; Most of this is just going through the motions
+
; don't need to do anything if lcd is already off
ld a, [$ff40] ; LCDC
bit 7, a ; lcd enable
@@ -366,10 +903,8 @@ FixTime: ; 61d
ret
; 658
-
INCBIN "baserom.gbc",$658,$691 - $658
-
SetClock: ; 691
; set clock data from hram
@@ -418,7 +953,87 @@ SetClock: ; 691
ret
; 6c4
-INCBIN "baserom.gbc",$6c4,$984 - $6c4
+INCBIN "baserom.gbc",$6c4,$935 - $6c4
+
+Joypad: ; 935
+; update joypad state
+; $ffa2: released
+; $ffa3: pressed
+; $ffa4: input
+; $ffa5: total pressed
+
+;
+ ld a, [$cfbe]
+ and $d0
+ ret nz
+
+; pause game update?
+ ld a, [$c2cd]
+ and a
+ ret nz
+
+; d-pad
+ ld a, $20
+ ld [$ff00], a
+ ld a, [$ff00]
+ ld a, [$ff00]
+; hi nybble
+ cpl
+ and $f
+ swap a
+ ld b, a
+
+; buttons
+ ld a, $10
+ ld [$ff00], a
+; wait to stabilize
+ ld a, [$ff00]
+ ld a, [$ff00]
+ ld a, [$ff00]
+ ld a, [$ff00]
+ ld a, [$ff00]
+ ld a, [$ff00]
+; lo nybble
+ cpl
+ and $f
+ or b
+ ld b, a
+
+; reset joypad
+ ld a, $30
+ ld [$ff00], a
+
+; get change in input
+ ld a, [$ffa4] ; last frame's input
+ ld e, a
+ xor b ; current frame input
+ ld d, a
+; released
+ and e
+ ld [$ffa2], a
+; pressed
+ ld a, d
+ and b
+ ld [$ffa3], a
+
+; total pressed
+ ld c, a
+ ld a, [$ffa5]
+ or c
+ ld [$ffa5], a
+
+; original input
+ ld a, b
+ ld [$ffa4], a
+
+; A+B+SELECT+START
+ and $f
+ cp $f
+ jp z, $0150 ; reset
+
+ ret
+; 984
+
GetJoypadPublic: ; 984
; update mirror joypad input from $ffa4 (real input)
@@ -485,7 +1100,7 @@ GetJoypadPublic: ; 984
push af
;
ld a, [AutoInputBank]
- rst $10
+ rst Bankswitch
;
ld hl, AutoInputAddress ; AutoInputAddress-9
ld a, [hli]
@@ -502,7 +1117,7 @@ GetJoypadPublic: ; 984
ld [AutoInputLength], a
; restore bank
pop af
- rst $10
+ rst Bankswitch
; we're done
jr .quit
@@ -542,7 +1157,7 @@ GetJoypadPublic: ; 984
.finishauto
; restore bank
pop af
- rst $10
+ rst Bankswitch
; update mirrors
ld a, b
ld [$ffa7], a ; pressed
@@ -585,7 +1200,506 @@ StopAutoInput: ; a0a
ret
; a1b
-INCBIN "baserom.gbc",$a1b,$c9f - $a1b
+INCBIN "baserom.gbc",$a1b,$b40 - $a1b
+
+FarDecompress: ; b40
+; Decompress graphics data at a:hl to de
+
+; put a away for a sec
+ ld [$c2c4], a
+; save bank
+ ld a, [$ff9d]
+ push af
+; bankswitch
+ ld a, [$c2c4]
+ rst Bankswitch
+
+; what we came here for
+ call Decompress
+
+; restore bank
+ pop af
+ rst Bankswitch
+ ret
+; b50
+
+
+Decompress: ; b50
+; Pokemon Crystal uses an lz variant for compression.
+
+; This is mainly used for graphics, but the intro's
+; tilemaps also use this compression.
+
+; This function decompresses lz-compressed data at hl to de.
+
+
+; Basic rundown:
+
+; A typical control command consists of:
+; -the command (bits 5-7)
+; -the count (bits 0-4)
+; -and any additional params
+
+; $ff is used as a terminator.
+
+
+; Commands:
+
+; 0: literal
+; literal data for some number of bytes
+; 1: iterate
+; one byte repeated for some number of bytes
+; 2: alternate
+; two bytes alternated for some number of bytes
+; 3: zero (whitespace)
+; 0x00 repeated for some number of bytes
+
+; Repeater control commands have a signed parameter used to determine the start point.
+; Wraparound is simulated:
+; Positive values are added to the start address of the decompressed data
+; and negative values are subtracted from the current position.
+
+; 4: repeat
+; repeat some number of bytes from decompressed data
+; 5: flipped
+; repeat some number of flipped bytes from decompressed data
+; ex: $ad = %10101101 -> %10110101 = $b5
+; 6: reverse
+; repeat some number of bytes in reverse from decompressed data
+
+; If the value in the count needs to be larger than 5 bits,
+; control code 7 can be used to expand the count to 10 bits.
+
+; A new control command is read in bits 2-4.
+; The new 10-bit count is split:
+; bits 0-1 contain the top 2 bits
+; another byte is added containing the latter 8
+
+; So, the structure of the control command becomes:
+; 111xxxyy yyyyyyyy
+; | | | |
+; | | our new count
+; | the control command for this count
+; 7 (this command)
+
+; For more information, refer to the code below and in extras/gfx.py .
+
+; save starting output address
+ ld a, e
+ ld [$c2c2], a
+ ld a, d
+ ld [$c2c3], a
+
+.loop
+; get next byte
+ ld a, [hl]
+; done?
+ cp $ff ; end
+ ret z
+
+; get control code
+ and %11100000
+
+; 10-bit param?
+ cp $e0 ; LZ_HI
+ jr nz, .normal
+
+
+; 10-bit param:
+
+; get next 3 bits (%00011100)
+ ld a, [hl]
+ add a
+ add a ; << 3
+ add a
+
+; this is our new control code
+ and %11100000
+ push af
+
+; get param hi
+ ld a, [hli]
+ and %00000011
+ ld b, a
+
+; get param lo
+ ld a, [hli]
+ ld c, a
+
+; read at least 1 byte
+ inc bc
+ jr .readers
+
+
+.normal
+; push control code
+ push af
+; get param
+ ld a, [hli]
+ and %00011111
+ ld c, a
+ ld b, $0
+; read at least 1 byte
+ inc c
+
+.readers
+; let's get started
+
+; inc loop counts since we bail as soon as they hit 0
+ inc b
+ inc c
+
+; get control code
+ pop af
+; command type
+ bit 7, a ; 80, a0, c0
+ jr nz, .repeatertype
+
+; literals
+ cp $20 ; LZ_ITER
+ jr z, .iter
+ cp $40 ; LZ_ALT
+ jr z, .alt
+ cp $60 ; LZ_ZERO
+ jr z, .zero
+ ; else $00
+
+; 00 ; LZ_LIT
+; literal data for bc bytes
+.loop1
+; done?
+ dec c
+ jr nz, .next1
+ dec b
+ jp z, .loop
+
+.next1
+ ld a, [hli]
+ ld [de], a
+ inc de
+ jr .loop1
+
+
+; 20 ; LZ_ITER
+; write byte for bc bytes
+.iter
+ ld a, [hli]
+
+.iterloop
+ dec c
+ jr nz, .iternext
+ dec b
+ jp z, .loop
+
+.iternext
+ ld [de], a
+ inc de
+ jr .iterloop
+
+
+; 40 ; LZ_ALT
+; alternate two bytes for bc bytes
+
+; next pair
+.alt
+; done?
+ dec c
+ jr nz, .alt0
+ dec b
+ jp z, .altclose0
+
+; alternate for bc
+.alt0
+ ld a, [hli]
+ ld [de], a
+ inc de
+ dec c
+ jr nz, .alt1
+; done?
+ dec b
+ jp z, .altclose1
+.alt1
+ ld a, [hld]
+ ld [de], a
+ inc de
+ jr .alt
+
+; skip past the bytes we were alternating
+.altclose0
+ inc hl
+.altclose1
+ inc hl
+ jr .loop
+
+
+; 60 ; LZ_ZERO
+; write 00 for bc bytes
+.zero
+ xor a
+
+.zeroloop
+ dec c
+ jr nz, .zeronext
+ dec b
+ jp z, .loop
+
+.zeronext
+ ld [de], a
+ inc de
+ jr .zeroloop
+
+
+; repeats
+; 80, a0, c0
+; repeat decompressed data from output
+.repeatertype
+ push hl
+ push af
+; get next byte
+ ld a, [hli]
+; absolute?
+ bit 7, a
+ jr z, .absolute
+
+; relative
+; a = -a
+ and %01111111 ; forget the bit we just looked at
+ cpl
+; add de (current output address)
+ add e
+ ld l, a
+ ld a, $ff ; -1
+ adc d
+ ld h, a
+ jr .repeaters
+
+.absolute
+; get next byte (lo)
+ ld l, [hl]
+; last byte (hi)
+ ld h, a
+; add starting output address
+ ld a, [$c2c2]
+ add l
+ ld l, a
+ ld a, [$c2c3]
+ adc h
+ ld h, a
+
+.repeaters
+ pop af
+ cp $80 ; LZ_REPEAT
+ jr z, .repeat
+ cp $a0 ; LZ_FLIP
+ jr z, .flip
+ cp $c0 ; LZ_REVERSE
+ jr z, .reverse
+
+; e0 -> 80
+
+; 80 ; LZ_REPEAT
+; repeat some decompressed data
+.repeat
+; done?
+ dec c
+ jr nz, .repeatnext
+ dec b
+ jr z, .cleanup
+
+.repeatnext
+ ld a, [hli]
+ ld [de], a
+ inc de
+ jr .repeat
+
+
+; a0 ; LZ_FLIP
+; repeat some decompressed data w/ flipped bit order
+.flip
+ dec c
+ jr nz, .flipnext
+ dec b
+ jp z, .cleanup
+
+.flipnext
+ ld a, [hli]
+ push bc
+ ld bc, $0008
+
+.fliploop
+ rra
+ rl b
+ dec c
+ jr nz, .fliploop
+ ld a, b
+ pop bc
+ ld [de], a
+ inc de
+ jr .flip
+
+
+; c0 ; LZ_REVERSE
+; repeat some decompressed data in reverse
+.reverse
+ dec c
+ jr nz, .reversenext
+
+ dec b
+ jp z, .cleanup
+
+.reversenext
+ ld a, [hld]
+ ld [de], a
+ inc de
+ jr .reverse
+
+
+.cleanup
+; get type of repeat we just used
+ pop hl
+; was it relative or absolute?
+ bit 7, [hl]
+ jr nz, .next
+
+; skip two bytes for absolute
+ inc hl
+; skip one byte for relative
+.next
+ inc hl
+ jp .loop
+; c2f
+
+
+
+
+UpdatePalsIfCGB: ; c2f
+; update bgp data from BGPals
+; update obp data from OBPals
+; return carry if successful
+
+; check cgb
+ ld a, [$ffe6]
+ and a
+ ret z
+
+UpdateCGBPals: ; c33
+; return carry if successful
+; any pals to update?
+ ld a, [$ffe5]
+ and a
+ ret z
+
+ForceUpdateCGBPals: ; c37
+; save wram bank
+ ld a, [$ff70] ; wram bank
+ push af
+; bankswitch
+ ld a, 5 ; BANK(BGPals)
+ ld [$ff70], a ; wram bank
+; get bg pal buffer
+ ld hl, BGPals ; 5:d080
+
+; update bg pals
+ ld a, %10000000 ; auto increment, index 0
+ ld [$ff68], a ; BGPI
+ ld c, $69 ; $ff69
+ ld b, 4 ; NUM_PALS / 2
+
+.bgp
+; copy 16 bytes (8 colors / 2 pals) to bgpd
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+; done?
+ dec b
+ jr nz, .bgp
+
+; hl is now 5:d0c0 OBPals
+
+; update obj pals
+ ld a, %10000000 ; auto increment, index 0
+ ld [$ff6a], a
+ ld c, $6b ; $ff6b - $ff00
+ ld b, 4 ; NUM_PALS / 2
+
+.obp
+; copy 16 bytes (8 colors / 2 pals) to obpd
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+ ld a, [hli]
+ ld [$ff00+c], a
+; done?
+ dec b
+ jr nz, .obp
+
+; restore wram bank
+ pop af
+ ld [$ff70], a ; wram bank
+; clear pal update queue
+ xor a
+ ld [$ffe5], a
+; successfully updated palettes
+ scf
+ ret
+; c9f
+
DmgToCgbBGPals: ; c9f
; exists to forego reinserting cgb-converted image data
@@ -743,10 +1857,10 @@ FarCopyBytes: ; e8d
ld a, [$ff9d] ; save old bank
push af
ld a, [$ff8b]
- rst $10
+ rst Bankswitch
call CopyBytes
pop af
- rst $10
+ rst Bankswitch
ret
; 0xe9b
@@ -756,7 +1870,7 @@ FarCopyBytesDouble: ; e9b
ld a, [$ff9d] ; save current bank
push af
ld a, [$ff8b]
- rst $10 ; bankswitch
+ rst Bankswitch ; bankswitch
ld a, h ; switcheroo, de <> hl
ld h, d
ld d, a
@@ -777,12 +1891,28 @@ FarCopyBytesDouble: ; e9b
dec b
jr nz, .loop
pop af
- rst $10
+ rst Bankswitch
ret
; 0xeba
-INCBIN "baserom.gbc",$eba,$ff1 - $eba
+INCBIN "baserom.gbc",$eba,$fc8 - $eba
+
+ClearTileMap: ; fc8
+; Fill the tile map with blank tiles
+ ld hl, TileMap
+ ld a, $7f ; blank tile
+ ld bc, 360 ; length of TileMap
+ call ByteFill
+
+; We aren't done if the LCD is on
+ ld a, [$ff40] ; LCDC
+ bit 7, a
+ ret z
+ jp WaitBGMap
+; fdb
+
+INCBIN "baserom.gbc",$fdb,$ff1 - $fdb
TextBoxBorder: ; ff1
; draw a text box
@@ -1003,7 +2133,7 @@ Char5D:
push bc
ld hl, $5939
ld a, $e
- rst $8
+ rst FarCall
pop hl
ld de, $d073
jr .asm_126a ; 0x1246 $22
@@ -1055,7 +2185,617 @@ Char5F: ; 0x1356
pop hl
ret
-INCBIN "baserom.gbc",$135a,$185d - $135a
+INCBIN "baserom.gbc",$135a,$15d8 - $135a
+
+DMATransfer: ; 15d8
+; DMA transfer
+; return carry if successful
+
+; anything to transfer?
+ ld a, [$ffe8]
+ and a
+ ret z
+; start transfer
+ ld [$ff55], a ; hdma5
+; indicate that transfer has occurred
+ xor a
+ ld [$ffe8], a
+; successful transfer
+ scf
+ ret
+; 15e3
+
+
+UpdateBGMapBuffer: ; 15e3
+; write [$ffdc] 16x8 tiles from BGMapBuffer to bg map addresses in BGMapBufferPtrs
+; [$ffdc] must be even since this is done in 16x16 blocks
+
+; return carry if successful
+
+; any tiles to update?
+ ld a, [$ffdb]
+ and a
+ ret z
+; save wram bank
+ ld a, [$ff4f] ; vram bank
+ push af
+; save sp
+ ld [$ffd9], sp
+
+; temp stack
+ ld hl, BGMapBufferPtrs
+ ld sp, hl
+; we can now pop the addresses of affected spots in bg map
+
+; get pal and tile buffers
+ ld hl, BGMapPalBuffer
+ ld de, BGMapBuffer
+
+.loop
+; draw one 16x16 block
+
+; top half:
+
+; get bg map address
+ pop bc
+; update palettes
+ ld a, $1
+ ld [$ff4f], a ; vram bank
+; tile 1
+ ld a, [hli]
+ ld [bc], a
+ inc c
+; tile 2
+ ld a, [hli]
+ ld [bc], a
+ dec c
+; update tiles
+ ld a, $0
+ ld [$ff4f], a ; vram bank
+; tile 1
+ ld a, [de]
+ inc de
+ ld [bc], a
+ inc c
+; tile 2
+ ld a, [de]
+ inc de
+ ld [bc], a
+
+; bottom half:
+
+; get bg map address
+ pop bc
+; update palettes
+ ld a, $1
+ ld [$ff4f], a ; vram bank
+; tile 1
+ ld a, [hli]
+ ld [bc], a
+ inc c
+; tile 2
+ ld a, [hli]
+ ld [bc], a
+ dec c
+; update tiles
+ ld a, $0
+ ld [$ff4f], a ; vram bank
+; tile 1
+ ld a, [de]
+ inc de
+ ld [bc], a
+ inc c
+; tile 2
+ ld a, [de]
+ inc de
+ ld [bc], a
+
+; we've done 2 16x8 blocks
+ ld a, [$ffdc]
+ dec a
+ dec a
+ ld [$ffdc], a
+
+; if there are more left, get the next 16x16 block
+ jr nz, .loop
+
+
+; restore sp
+ ld a, [$ffd9]
+ ld l, a
+ ld a, [$ffda]
+ ld h, a
+ ld sp, hl
+
+; restore vram bank
+ pop af
+ ld [$ff4f], a ; vram bank
+
+; we don't need to update bg map until new tiles are loaded
+ xor a
+ ld [$ffdb], a
+
+; successfully updated bg map
+ scf
+ ret
+; 163a
+
+
+WaitTop: ; 163a
+ ld a, [$ffd4]
+ and a
+ ret z
+
+; wait until top third of bg map can be updated
+ ld a, [$ffd5]
+ and a
+ jr z, .quit
+
+ call DelayFrame
+ jr WaitTop
+
+.quit
+ xor a
+ ld [$ffd4], a
+ ret
+; 164c
+
+
+UpdateBGMap: ; 164c
+; get mode
+ ld a, [$ffd4]
+ and a
+ ret z
+
+; don't save bg map address
+ dec a ; 1
+ jr z, .tiles
+ dec a ; 2
+ jr z, .attr
+ dec a ; ?
+
+; save bg map address
+ ld a, [$ffd6]
+ ld l, a
+ ld a, [$ffd7]
+ ld h, a
+ push hl
+
+; bg map 1 ($9c00)
+ xor a
+ ld [$ffd6], a
+ ld a, $9c
+ ld [$ffd7], a
+
+; get mode again
+ ld a, [$ffd4]
+ push af
+ cp 3
+ call z, .tiles
+ pop af
+ cp 4
+ call z, .attr
+
+; restore bg map address
+ pop hl
+ ld a, l
+ ld [$ffd6], a
+ ld a, h
+ ld [$ffd7], a
+ ret
+
+.attr
+; switch vram banks
+ ld a, 1
+ ld [$ff4f], a ; vram bank
+; bg map 1
+ ld hl, AttrMap
+ call .getthird
+; restore vram bank
+ ld a, 0
+ ld [$ff4f], a ; vram bank
+ ret
+
+.tiles
+; bg map 0
+ ld hl, TileMap
+
+.getthird
+; save sp
+ ld [$ffd9], sp
+
+; # tiles to move down * 6 (which third?)
+ ld a, [$ffd5]
+ and a ; 0
+ jr z, .top
+ dec a ; 1
+ jr z, .middle
+
+; .bottom ; 2
+; move 12 tiles down
+ ld de, $00f0 ; TileMap(0,12) - TileMap
+ add hl, de
+; stack now points to source
+ ld sp, hl
+; get bg map address
+ ld a, [$ffd7]
+ ld h, a
+ ld a, [$ffd6]
+ ld l, a
+; move 12 tiles down
+ ld de, $0180 ; bgm(0,12)
+ add hl, de
+; start at top next time
+ xor a
+ jr .start
+
+.middle
+; move 6 tiles down
+ ld de, $0078 ; TileMap(0,6) - TileMap
+ add hl, de
+; stack now points to source
+ ld sp, hl
+; get bg map address
+ ld a, [$ffd7]
+ ld h, a
+ ld a, [$ffd6]
+ ld l, a
+; move 6 tiles down
+ ld de, $00c0 ; bgm(0,6)
+ add hl, de
+; start at bottom next time
+ ld a, 2
+ jr .start
+
+.top
+; stack now points to source
+ ld sp, hl
+; get bg map address
+ ld a, [$ffd7]
+ ld h, a
+ ld a, [$ffd6]
+ ld l, a
+; start at middle next time
+ ld a, 1
+
+.start
+; which third to draw next update
+ ld [$ffd5], a
+; # rows per third
+ ld a, 6 ; SCREEN_HEIGHT / 3
+; # tiles from the edge of the screen to the next row
+ ld bc, $000d ; BG_WIDTH + 1 - SCREEN_WIDTH
+
+.row
+; write a row of 20 tiles
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+; next row
+ add hl, bc
+; done?
+ dec a
+ jr nz, .row
+
+; restore sp
+ ld a, [$ffd9]
+ ld l, a
+ ld a, [$ffda]
+ ld h, a
+ ld sp, hl
+ ret
+; 170a
+
+
+SafeLoadTiles2: ; 170a
+; only execute during first fifth of vblank
+; any tiles to draw?
+ ld a, [$cf6c]
+ and a
+ ret z
+; abort if too far into vblank
+ ld a, [$ff44] ; LY
+; ly = 144-145?
+ cp 144
+ ret c
+ cp 146
+ ret nc
+
+GetTiles2: ; 1717
+; load [$cf6c] tiles from [$cf6d-e] to [$cf6f-70]
+; save sp
+ ld [$ffd9], sp
+
+; sp = [$cf6d-e] tile source
+ ld hl, $cf6d
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld sp, hl
+
+; hl = [$cf6f-70] tile dest
+ ld hl, $cf6f
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+
+; # tiles to draw
+ ld a, [$cf6c]
+ ld b, a
+
+; clear tile queue
+ xor a
+ ld [$cf6c], a
+
+.loop
+; put 1 tile (16 bytes) into hl from sp
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ ld [hl], d
+; next tile
+ inc hl
+; done?
+ dec b
+ jr nz, .loop
+
+; update $cf6f-70
+ ld a, l
+ ld [$cf6f], a
+ ld a, h
+ ld [$cf70], a
+
+; update $cf6d-e
+ ld [$cf6d], sp
+
+; restore sp
+ ld a, [$ffd9]
+ ld l, a
+ ld a, [$ffda]
+ ld h, a
+ ld sp, hl
+ ret
+; 1769
+
+
+SafeLoadTiles: ; 1769
+; only execute during first fifth of vblank
+; any tiles to draw?
+ ld a, [$cf67]
+ and a
+ ret z
+; abort if too far into vblank
+ ld a, [$ff44] ; LY
+; ly = 144-145?
+ cp 144
+ ret c
+ cp 146
+ ret nc
+ jr GetTiles
+
+LoadTiles: ; 1778
+; use only if time is allotted
+; any tiles to draw?
+ ld a, [$cf67]
+ and a
+ ret z
+; get tiles
+
+GetTiles: ; 177d
+; load [$cf67] tiles from [$cf68-9] to [$cf6a-b]
+
+; save sp
+ ld [$ffd9], sp
+
+; sp = [$cf68-9] tile source
+ ld hl, $cf68
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld sp, hl
+
+; hl = [$cf6a-b] tile dest
+ ld hl, $cf6a
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+
+; # tiles to draw
+ ld a, [$cf67]
+ ld b, a
+; clear tile queue
+ xor a
+ ld [$cf67], a
+
+.loop
+; put 1 tile (16 bytes) into hl from sp
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+ inc l
+ pop de
+ ld [hl], e
+ inc l
+ ld [hl], d
+; next tile
+ inc hl
+; done?
+ dec b
+ jr nz, .loop
+
+; update $cf6a-b
+ ld a, l
+ ld [$cf6a], a
+ ld a, h
+ ld [$cf6b], a
+
+; update $cf68-9
+ ld [$cf68], sp
+
+; restore sp
+ ld a, [$ffd9]
+ ld l, a
+ ld a, [$ffda]
+ ld h, a
+ ld sp, hl
+ ret
+; 17d3
+
+
+SafeTileAnimation: ; 17d3
+; call from vblank
+
+ ld a, [$ffde]
+ and a
+ ret z
+
+; abort if too far into vblank
+ ld a, [$ff44] ; LY
+; ret unless ly = 144-150
+ cp 144
+ ret c
+ cp 151
+ ret nc
+
+; save affected banks
+; switch to new banks
+ ld a, [$ff9d]
+ push af ; save bank
+ ld a, BANK(DoTileAnimation)
+ rst Bankswitch ; bankswitch
+
+ ld a, [$ff70] ; wram bank
+ push af ; save wram bank
+ ld a, $1 ; wram bank 1
+ ld [$ff70], a ; wram bank
+
+ ld a, [$ff4f] ; vram bank
+ push af ; save vram bank
+ ld a, $0 ; vram bank 0
+ ld [$ff4f], a ; vram bank
+
+; take care of tile animation queue
+ call DoTileAnimation
+
+; restore affected banks
+ pop af
+ ld [$ff4f], a ; vram bank
+ pop af
+ ld [$ff70], a ; wram bank
+ pop af
+ rst Bankswitch ; bankswitch
+ ret
+; 17ff
+
+INCBIN "baserom.gbc",$17ff,$185d - $17ff
GetTileType: ; 185d
; checks the properties of a tile
@@ -1069,10 +2809,10 @@ GetTileType: ; 185d
ld a, [$ff9d] ; current bank
push af
ld a, BANK(TileTypeTable)
- rst $10
+ rst Bankswitch
ld e, [hl] ; get tile type
pop af
- rst $10 ; return to current bank
+ rst Bankswitch ; return to current bank
ld a, e
and a, $0f ; lo nybble only
pop hl
@@ -1080,7 +2820,177 @@ GetTileType: ; 185d
ret
; 1875
-INCBIN "baserom.gbc",$1875,$261f - $1875
+INCBIN "baserom.gbc",$1875,$2063 - $1875
+
+AskSerial: ; 2063
+; send out a handshake while serial int is off
+ ld a, [$c2d4]
+ bit 0, a
+ ret z
+
+ ld a, [$c2d5]
+ and a
+ ret nz
+
+; once every 6 frames
+ ld hl, $ca8a
+ inc [hl]
+ ld a, [hl]
+ cp 6
+ ret c
+
+ xor a
+ ld [hl], a
+
+ ld a, $c
+ ld [$c2d5], a
+
+; handshake
+ ld a, $88
+ ld [$ff01], a
+
+; switch to internal clock
+ ld a, %00000001
+ ld [$ff02], a
+
+; start transfer
+ ld a, %10000001
+ ld [$ff02], a
+
+ ret
+; 208a
+
+INCBIN "baserom.gbc",$208a,$209e - $208a
+
+GameTimer: ; 209e
+; precautionary
+ nop
+
+; save wram bank
+ ld a, [$ff70] ; wram bank
+ push af
+
+ ld a, $1
+ ld [$ff70], a ; wram bank
+
+ call UpdateGameTimer
+
+; restore wram bank
+ pop af
+ ld [$ff70], a ; wram bank
+ ret
+; 20ad
+
+
+UpdateGameTimer: ; 20ad
+; increment the game timer by one frame
+; capped at 999:59:59.00 after exactly 1000 hours
+
+; pause game update?
+ ld a, [$c2cd]
+ and a
+ ret nz
+
+; game timer paused?
+ ld hl, GameTimerPause
+ bit 0, [hl]
+ ret z
+
+; reached cap? (999:00:00.00)
+ ld hl, GameTimeCap
+ bit 0, [hl]
+ ret nz
+
+; increment frame counter
+ ld hl, GameTimeFrames ; frame counter
+ ld a, [hl]
+ inc a
+
+; reached 1 second?
+ cp 60 ; frames/second
+ jr nc, .second ; 20c5 $2
+
+; update frame counter
+ ld [hl], a
+ ret
+
+.second
+; reset frame counter
+ xor a
+ ld [hl], a
+
+; increment second counter
+ ld hl, GameTimeSeconds
+ ld a, [hl]
+ inc a
+
+; reached 1 minute?
+ cp 60 ; seconds/minute
+ jr nc, .minute
+
+; update second counter
+ ld [hl], a
+ ret
+
+.minute
+; reset second counter
+ xor a
+ ld [hl], a
+
+; increment minute counter
+ ld hl, GameTimeMinutes
+ ld a, [hl]
+ inc a
+
+; reached 1 hour?
+ cp 60 ; minutes/hour
+ jr nc, .hour
+
+; update minute counter
+ ld [hl], a
+ ret
+
+.hour
+; reset minute counter
+ xor a
+ ld [hl], a
+
+; increment hour counter
+ ld a, [GameTimeHours]
+ ld h, a
+ ld a, [GameTimeHours+1]
+ ld l, a
+ inc hl
+
+; reached 1000 hours?
+ ld a, h
+ cp $3 ; 1000 / $100
+ jr c, .updatehr
+
+ ld a, l
+ cp $e8 ; 1000 & $ff
+ jr c, .updatehr
+
+; cap at 999:59:59.00
+ ld hl, GameTimeCap
+ set 0, [hl] ; stop timer
+
+ ld a, 59
+ ld [GameTimeMinutes], a
+ ld [GameTimeSeconds], a
+
+; this will never be run again
+ ret
+
+.updatehr
+ ld a, h
+ ld [GameTimeHours], a
+ ld a, l
+ ld [GameTimeHours+1], a
+ ret
+; 210f
+
+INCBIN "baserom.gbc",$210f,$261f - $210f
PushScriptPointer: ; 261f
; used to call a script from asm
@@ -1170,7 +3080,7 @@ GetAnyMapHeaderMember: ; 0x2c0c
ld a, [$ff9d]
push af
ld a, BANK(MapHeaderPointers)
- rst $10
+ rst Bankswitch
call GetMapHeaderPointer
add hl, de
@@ -1180,7 +3090,7 @@ GetAnyMapHeaderMember: ; 0x2c0c
; bankswitch back
pop af
- rst $10
+ rst Bankswitch
ret
; 0x2c1c
@@ -1246,10 +3156,10 @@ Predef: ; 2d83
; get Predef function to call
; GetPredefFn also stores hl in $cfb5-6
ld a, BANK(GetPredefFn)
- rst $10
+ rst Bankswitch
call GetPredefFn
; switch bank to Predef function
- rst $10
+ rst Bankswitch
; clean up after Predef call
ld hl, .cleanup
@@ -1279,7 +3189,7 @@ Predef: ; 2d83
; restore bank
pop hl ; popping a pushed af. h = a (old bank)
ld a, h
- rst $10
+ rst Bankswitch
; get hl back
ld a, [$cfb5]
@@ -1407,12 +3317,12 @@ FarBattleRNG: ; 2f9f
push af
; Bankswitch
ld a, BANK(BattleRNG)
- rst $10
+ rst Bankswitch
call BattleRNG
; Restore bank
ld [$cfb6], a
pop af
- rst $10
+ rst Bankswitch
ld a, [$cfb6]
ret
; 2fb1
@@ -1475,14 +3385,38 @@ CloseSRAM: ; 2fe1
ld [$0000], a
pop af
ret
-; 2fef
+; 2fec
+
+JpHl: ; 2fec
+ jp [hl]
+; 2fed
-CallHL: ; 2fef
-; Exactly what it says on the tin.
- jp [hl]
-; 0x2fed
+INCBIN "baserom.gbc",$2fed,$300b-$2fed
-INCBIN "baserom.gbc",$2fed,$3026-$2fed
+ClearSprites: ; 300b
+ ld hl, Sprites
+ ld b, TileMap - Sprites
+ xor a
+.loop
+ ld [hli], a
+ dec b
+ jr nz, .loop
+ ret
+; 3016
+
+HideSprites: ; 3016
+; Set all OBJ y-positions to 160 to hide them offscreen
+ ld hl, Sprites
+ ld de, $0004 ; length of an OBJ struct
+ ld b, $28 ; number of OBJ structs
+ ld a, 160 ; y-position
+.loop
+ ld [hl], a
+ add hl, de
+ dec b
+ jr nz, .loop
+ ret
+; 3026
CopyBytes: ; 0x3026
; copy bc bytes from hl to de
@@ -1544,7 +3478,7 @@ GetFarByte: ; 0x304d
ld a, [$ff9d]
push af
ld a, [$ff8b]
- rst $10
+ rst Bankswitch
; get byte from new bank
ld a, [hl]
@@ -1552,7 +3486,7 @@ GetFarByte: ; 0x304d
; bankswitch to previous bank
pop af
- rst $10
+ rst Bankswitch
; return retrieved value in a
ld a, [$ff8b]
@@ -1565,7 +3499,7 @@ GetFarHalfword: ; 0x305d
ld a, [$ff9d]
push af
ld a, [$ff8b]
- rst $10
+ rst Bankswitch
; get halfword from new bank, put it in hl
ld a, [hli]
@@ -1574,7 +3508,7 @@ GetFarHalfword: ; 0x305d
; bankswitch to previous bank and return
pop af
- rst $10
+ rst Bankswitch
ret
; 0x306b
@@ -1784,10 +3718,62 @@ StringCmp: ; 31db
ret
; 0x31e4
-INCBIN "baserom.gbc",$31e4,$3340 - $31e4
+INCBIN "baserom.gbc",$31e4,$31f3 - $31e4
+
+WhiteBGMap: ; 31f3
+ call ClearPalettes
+WaitBGMap: ; 31f6
+; Tell VBlank to update BG Map
+ ld a, 1 ; BG Map 0 tiles
+ ld [$ffd4], a
+; Wait for it to do its magic
+ ld c, 4
+ call DelayFrames
+ ret
+; 3200
+
+INCBIN "baserom.gbc",$3200,$3317 - $3200
+
+ClearPalettes: ; 3317
+; Make all palettes white
+
+; For CGB we make all the palette colors white
+ ld a, [$ffe6]
+ and a
+ jr nz, .cgb
+
+; In DMG mode, we can just change palettes to 0 (white)
+ xor a
+ ld [$ff47], a ; BGP
+ ld [$ff48], a ; OBP0
+ ld [$ff49], a ; OBP1
+ ret
+
+.cgb
+; Save WRAM bank
+ ld a, [$ff70]
+ push af
+; WRAM bank 5
+ ld a, 5
+ ld [$ff70], a
+; Fill BGPals and OBPals with $ffff (white)
+ ld hl, BGPals
+ ld bc, $0080
+ ld a, $ff
+ call ByteFill
+; Restore WRAM bank
+ pop af
+ ld [$ff70], a
+; Request palette update
+ ld a, 1
+ ld [$ffe5], a
+ ret
+; 333e
+ClearSGB: ; 333e
+ ld b, $ff
GetSGBLayout: ; 3340
-; load sgb packets unless gb
+; load sgb packets unless dmg
; check cgb
ld a, [$ffe6]
@@ -1871,7 +3857,7 @@ GetName: ; 33c3
add hl, de
add hl, de
ld a, [hli]
- rst $10 ; Bankswitch
+ rst Bankswitch ; Bankswitch
ld a, [hli]
ld h, [hl]
ld l, a
@@ -1880,7 +3866,7 @@ GetName: ; 33c3
call GetNthString
ld de, $d073
ld bc, $000d
- call $3026
+ call CopyBytes
.asm_3403
ld a, e
ld [$d102], a
@@ -1890,7 +3876,7 @@ GetName: ; 33c3
pop bc
pop hl
pop af
- rst $10
+ rst Bankswitch
ret
; 0x3411
@@ -1947,7 +3933,7 @@ GetBaseStats: ; 3856
push af
; Bankswitch
ld a, BANK(BaseStats)
- rst $10
+ rst Bankswitch
; Egg doesn't have base stats
ld a, [CurSpecies]
@@ -1991,7 +3977,7 @@ GetBaseStats: ; 3856
; Restore bank
pop af
- rst $10
+ rst Bankswitch
pop hl
pop de
@@ -2284,7 +4270,31 @@ CheckSFX: ; 3dde
ret
; 3dfe
-INCBIN "baserom.gbc",$3dfe,$4000 - $3dfe
+INCBIN "baserom.gbc",$3dfe,$3e10 - $3dfe
+
+ChannelsOff: ; 3e10
+; Quickly turn off music channels
+ xor a
+ ld [$c104], a
+ ld [$c136], a
+ ld [$c168], a
+ ld [$c19a], a
+ ld [$c29c], a
+ ret
+; 3e21
+
+SFXChannelsOff: ; 3e21
+; Quickly turn off sound effect channels
+ xor a
+ ld [$c1cc], a
+ ld [$c1fe], a
+ ld [$c230], a
+ ld [$c262], a
+ ld [$c29c], a
+ ret
+; 3e32
+
+INCBIN "baserom.gbc",$3e32,$3fb5 - $3e32
SECTION "bank1",DATA,BANK[$1]
@@ -2379,7 +4389,35 @@ CheckNickErrors: ; 669f
db $ff ; end
; 66de
-INCBIN "baserom.gbc",$66de,$8000 - $66de
+INCBIN "baserom.gbc",$66de,$6eef - $66de
+
+DrawGraphic: ; 6eef
+; input:
+; hl: draw location
+; b: height
+; c: width
+; d: tile to start drawing from
+; e: number of tiles to advance for each row
+ call $7009
+ pop bc
+ pop hl
+ ret c
+ bit 5, [hl]
+ jr nz, .asm_6f05
+ push hl
+ call $70a4
+ pop hl
+ ret c
+ push hl
+ call $70ed
+ pop hl
+ ret c
+.asm_6f05
+ and a
+ ret
+; 6f07
+
+INCBIN "baserom.gbc",$6f07,$8000 - $6f07
SECTION "bank2",DATA,BANK[$2]
@@ -2543,7 +4581,44 @@ CopyData: ; 0x9a52
ret
; 0x9a5b
-INCBIN "baserom.gbc",$9a5b,$c000 - $9a5b
+ClearBytes: ; 0x9a5b
+; clear bc bytes of data starting from de
+ xor a
+ ld [de], a
+ inc de
+ dec bc
+ ld a, c
+ or b
+ jr nz, ClearBytes
+ ret
+; 0x9a64
+
+DrawDefaultTiles: ; 0x9a64
+; Draw 240 tiles (2/3 of the screen) from tiles in VRAM
+ ld hl, $9800 ; BG Map 0
+ ld de, 32 - 20
+ ld a, $80 ; starting tile
+ ld c, 12 + 1
+.line
+ ld b, 20
+.tile
+ ld [hli], a
+ inc a
+ dec b
+ jr nz, .tile
+; next line
+ add hl, de
+ dec c
+ jr nz, .line
+ ret
+; 0x9a7a
+
+INCBIN "baserom.gbc",$9a7a,$a51e - $9a7a
+
+SGBBorder:
+INCBIN "gfx/misc/sgb_border.2bpp"
+
+INCBIN "baserom.gbc",$a8be,$c000 - $a8be
SECTION "bank3",DATA,BANK[$3]
@@ -2628,7 +4703,7 @@ SpecialsPointers: ; 0xc029
dbw $01,$7305
dbw $01,$737e
dbw $01,$73f7
- dbw $03,$4419
+ dbw BANK(SpecialCheckPokerus),SpecialCheckPokerus
dbw $09,$4b25
dbw $09,$4b4e
dbw $09,$4ae8
@@ -2720,7 +4795,28 @@ SpecialsPointers: ; 0xc029
dbw $24,$4a88
dbw $03,$4224
-INCBIN "baserom.gbc",$c224,$c43d - $c224
+INCBIN "baserom.gbc",$c224,$c3e2 - $c224
+
+ScriptReturnCarry: ; c3e2
+ jr c, .carry
+ xor a
+ ld [ScriptVar], a
+ ret
+.carry
+ ld a, 1
+ ld [ScriptVar], a
+ ret
+; c3ef
+
+INCBIN "baserom.gbc",$c3ef,$c419 - $c3ef
+
+SpecialCheckPokerus: ; c419
+; Check if a monster in your party has Pokerus
+ callba CheckPokerus
+ jp ScriptReturnCarry
+; c422
+
+INCBIN "baserom.gbc",$c422,$c43d - $c422
SpecialSnorlaxAwake: ; 0xc43d
; Check if the Poké Flute channel is playing, and if the player is standing
@@ -3089,7 +5185,12 @@ INCBIN "baserom.gbc",$ca3b,$10000 - $ca3b
SECTION "bank4",DATA,BANK[$4]
-INCBIN "baserom.gbc",$10000,$1167a - $10000
+INCBIN "baserom.gbc",$10000,$10b16 - $10000
+
+PackGFX:
+INCBIN "gfx/misc/pack.2bpp"
+
+INCBIN "baserom.gbc",$113d6,$1167a - $113d6
TechnicalMachines: ; 0x1167a
db DYNAMICPUNCH
@@ -7735,7 +9836,7 @@ INCBIN "baserom.gbc",$2C41a,$2ee8f - $2C41a
jr nz, .trainermusic
ld a, BANK(RegionCheck)
ld hl, RegionCheck
- rst $8
+ rst FarCall
ld a, e
and a
jr nz, .kantowild
@@ -7766,13 +9867,13 @@ INCBIN "baserom.gbc",$2C41a,$2ee8f - $2C41a
ld de, $0006 ; kanto gym leader battle music
ld a, BANK(IsKantoGymLeader)
ld hl, IsKantoGymLeader
- rst $8
+ rst FarCall
jr c, .done
ld de, $002e ; johto gym leader battle music
ld a, BANK(IsJohtoGymLeader)
ld hl, IsJohtoGymLeader
- rst $8
+ rst FarCall
jr c, .done
ld de, $0030 ; rival battle music
@@ -7793,7 +9894,7 @@ INCBIN "baserom.gbc",$2C41a,$2ee8f - $2C41a
jr nz, .linkbattle
ld a, BANK(RegionCheck)
ld hl, RegionCheck
- rst $8
+ rst FarCall
ld a, e
and a
jr nz, .kantotrainer
@@ -13484,7 +15585,7 @@ BattleStartMessage:
call $0468
ld a, $e
ld hl, $5939
- rst $8
+ rst FarCall
ld hl, $47a9
jr .asm_3fd0e ; 0x3fca8 $64
.asm_3fcaa
@@ -13501,11 +15602,11 @@ BattleStartMessage:
.asm_3fcc2
ld a, $f
ld hl, $6b38
- rst $8
+ rst FarCall
jr c, .messageSelection ; 0x3fcc8 $21
ld a, $13
ld hl, $6a44
- rst $8
+ rst FarCall
jr c, .asm_3fce0 ; 0x3fcd0 $e
ld hl, $c4ac
ld d, $0
@@ -13524,7 +15625,7 @@ BattleStartMessage:
jr nz, .asm_3fcfd ; 0x3fcf0 $b
ld a, $41
ld hl, $6086
- rst $8
+ rst FarCall
ld hl, HookedPokemonAttackedText
jr .asm_3fd0e ; 0x3fcfb $11
.asm_3fcfd
@@ -13539,7 +15640,7 @@ BattleStartMessage:
push hl
ld a, $b
ld hl, $4000
- rst $8
+ rst FarCall
pop hl
call $3ad5
call $7830
@@ -13547,7 +15648,7 @@ BattleStartMessage:
ld c, $2
ld a, $13
ld hl, $6a0a
- rst $8
+ rst FarCall
ret
; 0x3fd26
@@ -18631,7 +20732,36 @@ TileTypeTable: ; 4ce1f
db $00, $00, $00, $00, $00, $00, $00, $0f
; 4cf1f
-INCBIN "baserom.gbc",$4cf1f,$4dc8a - $4cf1f
+INCBIN "baserom.gbc",$4cf1f,$4d860 - $4cf1f
+
+CheckPokerus: ; 4d860
+; Return carry if a monster in your party has Pokerus
+
+; Get number of monsters to iterate over
+ ld a, [PartyCount]
+ and a
+ jr z, .NoPokerus
+ ld b, a
+; Check each monster in the party for Pokerus
+ ld hl, PartyMon1PokerusStatus
+ ld de, PartyMon2 - PartyMon1
+.Check
+ ld a, [hl]
+ and $0f ; only the bottom nybble is used
+ jr nz, .HasPokerus
+; Next PartyMon
+ add hl, de
+ dec b
+ jr nz, .Check
+.NoPokerus
+ and a
+ ret
+.HasPokerus
+ scf
+ ret
+; 4d87a
+
+INCBIN "baserom.gbc",$4d87a,$4dc8a - $4d87a
StatsScreenInit: ; 4dc8a
ld hl, StatsScreenMain
@@ -18658,7 +20788,7 @@ StatsScreenInit: ; 4dc8a
ld hl, $753e
rst $8 ; this loads graphics
pop hl
- call CallHL
+ call JpHl
call $31f3
call $0fc8
pop bc
@@ -85143,7 +87273,431 @@ INCBIN "baserom.gbc",$B83E5,$bc000 - $b83e5
SECTION "bank2F",DATA,BANK[$2F]
-INCBIN "baserom.gbc",$BC000,$4000
+INCBIN "baserom.gbc",$bc000,$bc09c - $bc000
+
+PokeCenterNurseScript: ; bc09c
+; Talking to a nurse in a Pokemon Center
+
+ loadfont
+; The nurse has different text for:
+; Morn
+ checktime $1
+ iftrue .morn
+; Day
+ checktime $2
+ iftrue .day
+; Nite
+ checktime $4
+ iftrue .nite
+; If somehow it's not a time of day at all, we skip the introduction
+ 2jump .heal
+
+.morn
+; Different text if we're in the com center
+ checkbit1 $032a
+ iftrue .morn_comcenter
+; Good morning! Welcome to ...
+ 3writetext BANK(UnknownText_0x1b0000), UnknownText_0x1b0000
+ keeptextopen
+ 2jump .heal
+.morn_comcenter
+; Good morning! This is the ...
+ 3writetext BANK(UnknownText_0x1b008a), UnknownText_0x1b008a
+ keeptextopen
+ 2jump .heal
+
+.day
+; Different text if we're in the com center
+ checkbit1 $032a
+ iftrue .day_comcenter
+; Hello! Welcome to ...
+ 3writetext BANK(UnknownText_0x1b002b), UnknownText_0x1b002b
+ keeptextopen
+ 2jump .heal
+.day_comcenter
+; Hello! This is the ...
+ 3writetext BANK(UnknownText_0x1b00d6), UnknownText_0x1b00d6
+ keeptextopen
+ 2jump .heal
+
+.nite
+; Different text if we're in the com center
+ checkbit1 $032a
+ iftrue .nite_comcenter
+; Good evening! You're out late. ...
+ 3writetext BANK(UnknownText_0x1b004f), UnknownText_0x1b004f
+ keeptextopen
+ 2jump .heal
+.nite_comcenter
+; Good to see you working so late. ...
+ 3writetext BANK(UnknownText_0x1b011b), UnknownText_0x1b011b
+ keeptextopen
+ 2jump .heal
+
+.heal
+; If we come back, don't welcome us to the com center again
+ clearbit1 $032a
+; Ask if you want to heal
+ 3writetext BANK(UnknownText_0x1b017a), UnknownText_0x1b017a
+ yesorno
+ iffalse .end
+; Go ahead and heal
+ 3writetext BANK(UnknownText_0x1b01bd), UnknownText_0x1b01bd
+ pause 20
+ special $009d
+; Turn to the machine
+ spriteface $fe, $2
+ pause 10
+ special $001b
+ playmusic $0000
+ writebyte $0
+ special $003e
+ pause 30
+ special $003d
+ spriteface $fe, $0
+ pause 10
+; Has Elm already phoned you about Pokerus?
+ checkphonecall
+ iftrue .done
+; Has Pokerus already been found in the Pokecenter?
+ checkbit2 $000d
+ iftrue .done
+; Check for Pokerus
+ special $004e ; SPECIAL_CHECKPOKERUS
+ iftrue .pokerus
+.done
+; Thank you for waiting. ...
+ 3writetext BANK(UnknownText_0x1b01d7), UnknownText_0x1b01d7
+ pause 20
+.end
+; We hope to see you again.
+ 3writetext BANK(UnknownText_0x1b020b), UnknownText_0x1b020b
+; Curtsy
+ spriteface $fe, $1
+ pause 10
+ spriteface $fe, $0
+ pause 10
+; And we're out
+ closetext
+ loadmovesprites
+ end
+
+.pokerus
+; Different text for com center (excludes 'in a Pokemon Center')
+; Since flag $32a is cleared when healing,
+; this text is never actually seen
+ checkbit1 $032a
+ iftrue .pokerus_comcenter
+; Your Pokemon appear to be infected ...
+ 3writetext BANK(UnknownText_0x1b0241), UnknownText_0x1b0241
+ closetext
+ loadmovesprites
+ 2jump .endpokerus
+.pokerus_comcenter
+; Your Pokemon appear to be infected ...
+ 3writetext BANK(UnknownText_0x1b02d6), UnknownText_0x1b02d6
+ closetext
+ loadmovesprites
+.endpokerus
+; Don't tell us about Pokerus again
+ setbit2 $000d
+; Trigger Elm's Pokerus phone call
+ specialphonecall $0001
+ end
+; bc162
+
+INCBIN "baserom.gbc",$bc162,$bcea5-$bc162
+
+UnusedPhoneScript: ; 0xbcea5
+ 3writetext BANK(UnusedPhoneText), UnusedPhoneText
+ end
+
+MomPhoneScript: ; 0xbceaa
+ checkbit1 $0040
+ iftrue .bcec5
+ checkbit1 $0041 ; if dude talked to you, then you left home without talking to mom
+ iftrue MomPhoneLectureScript
+ checkbit1 $001f
+ iftrue MomPhoneNoGymQuestScript
+ checkbit1 $001a
+ iftrue MomPhoneNoPokedexScript
+ 2jump MomPhoneNoPokemonScript
+
+.bcec5 ; 0xbcec5
+ checkbit1 $0007
+ iftrue MomPhoneHangUpScript
+ 3writetext BANK(MomPhoneGreetingText), MomPhoneGreetingText
+ keeptextopen
+ mapnametotext $0
+ checkcode $f
+ if_equal $1, UnknownScript_0xbcee7
+ if_equal $2, $4f27
+ 2jump UnknownScript_0xbcf2f
+
+UnknownScript_0xbcedf: ; 0xbcedf
+ 3writetext $6d, $4021
+ keeptextopen
+ 2jump UnknownScript_0xbcf37
+
+UnknownScript_0xbcee7: ; 0xbcee7
+ checkcode $c
+ if_equal GROUP_NEW_BARK_TOWN, .newbark
+ if_equal GROUP_CHERRYGROVE_CITY, .cherrygrove
+ if_equal GROUP_VIOLET_CITY, .violet
+ if_equal GROUP_AZALEA_TOWN, .azalea
+ if_equal GROUP_GOLDENROD_CITY, .goldenrod
+ 3writetext BANK(MomPhoneGenericAreaText), MomPhoneGenericAreaText
+ keeptextopen
+ 2jump UnknownScript_0xbcf37
+
+.newbark ; 0xbcf05
+ 3writetext BANK(MomPhoneNewBarkText), MomPhoneNewBarkText
+ keeptextopen
+ 2jump UnknownScript_0xbcf37
+
+.cherrygrove ; 0xbcf0d
+ 3writetext BANK(MomPhoneCherrygroveText), MomPhoneCherrygroveText
+ keeptextopen
+ 2jump UnknownScript_0xbcf37
+
+.violet ; 0xbcf15
+ displaylocation $7 ; sprout tower
+ 3call $3,$4edf
+.azalea ; 0xbcf1b
+ displaylocation $d ; slowpoke well
+ 3call $3,$4edf
+.goldenrod ; 0xbcf21
+ displaylocation $11 ; radio tower
+ 3call $3,$4edf
+ 3writetext $6d, $411c
+ keeptextopen
+ 2jump UnknownScript_0xbcf37
+
+UnknownScript_0xbcf2f: ; 0xbcf2f
+ 3writetext $6d, $4150
+ keeptextopen
+ 2jump UnknownScript_0xbcf37
+
+UnknownScript_0xbcf37: ; 0xbcf37
+ checkbit2 $0008
+ iffalse UnknownScript_0xbcf49
+ checkmoney $1, 0
+ if_equal $0, UnknownScript_0xbcf55
+ 2jump UnknownScript_0xbcf63
+
+UnknownScript_0xbcf49: ; 0xbcf49
+ checkmoney $1, 0
+ if_equal $0, UnknownScript_0xbcf79
+ 2jump UnknownScript_0xbcf6e
+
+UnknownScript_0xbcf55: ; 0xbcf55
+ readmoney $1, $0
+ 3writetext $6d, $41a7
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ 2jump MomPhoneWontSaveMoneyScript
+
+UnknownScript_0xbcf63: ; 0xbcf63
+ 3writetext $6d, $41ea
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ 2jump MomPhoneWontSaveMoneyScript
+
+UnknownScript_0xbcf6e: ; 0xbcf6e
+ 3writetext $6d, $420d
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ 2jump MomPhoneWontSaveMoneyScript
+
+UnknownScript_0xbcf79: ; 0xbcf79
+ readmoney $1, $0
+ 3writetext $6d, $4249
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ 2jump MomPhoneWontSaveMoneyScript
+
+MomPhoneSaveMoneyScript: ; 0xbcf87
+ setbit2 $0008
+ 3writetext $6d, $4289
+ keeptextopen
+ 2jump MomPhoneHangUpScript
+
+MomPhoneWontSaveMoneyScript: ; 0xbcf92
+ clearbit2 $0008
+ 3writetext BANK(MomPhoneWontSaveMoneyText), MomPhoneWontSaveMoneyText
+ keeptextopen
+ 2jump MomPhoneHangUpScript
+
+MomPhoneHangUpScript: ; 0xbcf9d
+ 3writetext BANK(MomPhoneHangUpText), MomPhoneHangUpText
+ end
+
+MomPhoneNoPokemonScript: ; 0xbcfa2
+ 3writetext BANK(MomPhoneNoPokemonText), MomPhoneNoPokemonText
+ end
+
+MomPhoneNoPokedexScript: ; 0xbcfa7
+ 3writetext BANK(MomPhoneNoPokedexText), MomPhoneNoPokedexText
+ end
+
+MomPhoneNoGymQuestScript: ; 0xbcfac
+ 3writetext BANK(MomPhoneNoGymQuestText), MomPhoneNoGymQuestText
+ end
+
+MomPhoneLectureScript: ; 0xbcfb1
+ setbit1 $0040
+ setbit2 $0009
+ specialphonecall $0000
+ 3writetext BANK(MomPhoneLectureText), MomPhoneLectureText
+ yesorno
+ iftrue MomPhoneSaveMoneyScript
+ 2jump MomPhoneWontSaveMoneyScript
+
+BillPhoneScript1: ; 0xbcfc5
+ checktime $2
+ iftrue .daygreet
+ checktime $4
+ iftrue .nitegreet
+ 3writetext BANK(BillPhoneMornGreetingText), BillPhoneMornGreetingText
+ keeptextopen
+ 2jump .main
+
+.daygreet ; 0xbcfd7
+ 3writetext BANK(BillPhoneDayGreetingText), BillPhoneDayGreetingText
+ keeptextopen
+ 2jump .main
+
+.nitegreet ; 0xbcfdf
+ 3writetext BANK(BillPhoneNiteGreetingText), BillPhoneNiteGreetingText
+ keeptextopen
+ 2jump .main
+
+.main ; 0xbcfe7
+ 3writetext BANK(BillPhoneGeneriText), BillPhoneGeneriText
+ keeptextopen
+ checkcode $10
+ RAM2MEM $0
+ if_equal $0, .full
+ if_greater_than $6, .nearlyfull
+ 3writetext BANK(BillPhoneNotFullText), BillPhoneNotFullText
+ end
+
+.nearlyfull ; 0xbcffd
+ 3writetext BANK(BillPhoneNearlyFullText), BillPhoneNearlyFullText
+ end
+
+.full ; 0xbd002
+ 3writetext BANK(BillPhoneFullText), BillPhoneFullText
+ end
+
+BillPhoneScript2: ; 0xbd007
+ 3writetext BANK(BillPhoneNewlyFullText), BillPhoneNewlyFullText
+ closetext
+ end
+
+ElmPhoneScript1: ; 0xbd00d
+ checkcode $14
+ if_equal $1, .pokerus
+ checkbit1 $0055
+ iftrue .discovery
+ checkbit1 $002d
+ iffalse .next
+ checkbit1 $0054
+ iftrue .egghatched
+.next
+ checkbit1 $002d
+ iftrue .eggunhatched
+ checkbit1 $0701
+ iftrue .assistant
+ checkbit1 $001f
+ iftrue .checkingegg
+ checkbit1 $0043
+ iftrue .stolen
+ checkbit1 $001e
+ iftrue .sawmrpokemon
+ 3writetext BANK(ElmPhoneStartText), ElmPhoneStartText
+ end
+
+.sawmrpokemon ; 0xbd048
+ 3writetext BANK(ElmPhoneSawMrPokemonText), ElmPhoneSawMrPokemonText
+ end
+
+.stolen ; 0xbd04d
+ 3writetext BANK(ElmPhonePokemonStolenText), ElmPhonePokemonStolenText
+ end
+
+.checkingegg ; 0xbd052
+ 3writetext BANK(ElmPhoneCheckingEggText), ElmPhoneCheckingEggText
+ end
+
+.assistant ; 0xbd057
+ 3writetext BANK(ElmPhoneAssistantText), ElmPhoneAssistantText
+ end
+
+.eggunhatched ; 0xbd05c
+ 3writetext BANK(ElmPhoneEggUnhatchedText), ElmPhoneEggUnhatchedText
+ end
+
+.egghatched ; 0xbd061
+ 3writetext BANK(ElmPhoneEggHatchedText), ElmPhoneEggHatchedText
+ setbit1 $0077
+ end
+
+.discovery ; 0xbd069
+ random $2
+ if_equal $0, .nextdiscovery
+ 3writetext BANK(ElmPhoneDiscovery1Text), ElmPhoneDiscovery1Text
+ end
+
+.nextdiscovery ; 0xbd074
+ 3writetext BANK(ElmPhoneDiscovery2Text), ElmPhoneDiscovery2Text
+ end
+
+.pokerus ; 0xbd079
+ 3writetext BANK(ElmPhonePokerusText), ElmPhonePokerusText
+ specialphonecall $0000
+ end
+
+ElmPhoneScript2: ; 0xbd081
+ checkcode $14
+ if_equal $2, .disaster
+ if_equal $3, .assistant
+ if_equal $4, .rocket
+ if_equal $5, .gift
+ if_equal $8, .gift
+ 3writetext BANK(ElmPhonePokerusText), ElmPhonePokerusText
+ specialphonecall $0000
+ end
+
+.disaster ; 0xbd09f
+ 3writetext BANK(ElmPhoneDisasterText), ElmPhoneDisasterText
+ specialphonecall $0000
+ setbit1 $0043
+ end
+
+.assistant ; 0xbd0aa
+ 3writetext BANK(ElmPhoneEggAssistantText), ElmPhoneEggAssistantText
+ specialphonecall $0000
+ clearbit1 $0700
+ setbit1 $0701
+ end
+
+.rocket ; 0xbd0b8
+ 3writetext BANK(ElmPhoneRocketText), ElmPhoneRocketText
+ specialphonecall $0000
+ end
+
+.gift ; 0xbd0c0
+ 3writetext BANK(ElmPhoneGiftText), ElmPhoneGiftText
+ specialphonecall $0000
+ end
+
+.unused ; 0xbd0c8
+ 3writetext BANK(ElmPhoneUnusedText), ElmPhoneUnusedText
+ specialphonecall $0000
+ end
+
+INCBIN "baserom.gbc",$bd0d0,$be699-$bd0d0
SECTION "bank30",DATA,BANK[$30]
@@ -85167,20 +87721,74 @@ INCLUDE "music/postcredits.asm"
INCBIN "baserom.gbc",$cff04, $d0000 - $cff04
+
+; Pic animations I
+
SECTION "bank34",DATA,BANK[$34]
-INCBIN "baserom.gbc",$D0000,$4000
+; Pic animations asm
+INCBIN "baserom.gbc", $d0000, $d0695 - $d0000
+
+; Pic animations are assembled in 3 parts:
+
+; Top-level animations:
+; frame #, duration: Frame 0 is the original pic (no change)
+; setrepeat #: Sets the number of times to repeat
+; dorepeat #: Repeats from command # (starting from 0)
+; end
+
+; Bitmasks:
+; Layered over the pic to designate affected tiles
+
+; Frame definitions:
+; first byte is the bitmask used for this frame
+; following bytes are tile ids mapped to each bit in the mask
+
+; Main animations (played everywhere)
+AnimationPointers: INCLUDE "gfx/pics/anim_pointers.asm"
+INCLUDE "gfx/pics/anims.asm"
+
+; Extra animations, appended to the main animation
+; Used in the status screen (blinking, tail wags etc.)
+AnimationExtraPointers: INCLUDE "gfx/pics/extra_pointers.asm"
+INCLUDE "gfx/pics/extras.asm"
+
+; Unown has its own animation data despite having an entry in the main tables
+UnownAnimationPointers: INCLUDE "gfx/pics/unown_anim_pointers.asm"
+INCLUDE "gfx/pics/unown_anims.asm"
+UnownAnimationExtraPointers: INCLUDE "gfx/pics/unown_extra_pointers.asm"
+INCLUDE "gfx/pics/unown_extras.asm"
+
+; Bitmasks
+BitmasksPointers: INCLUDE "gfx/pics/bitmask_pointers.asm"
+INCLUDE "gfx/pics/bitmasks.asm"
+UnownBitmasksPointers: INCLUDE "gfx/pics/unown_bitmask_pointers.asm"
+INCLUDE "gfx/pics/unown_bitmasks.asm"
+
+
+; Pic animations II
SECTION "bank35",DATA,BANK[$35]
-INCBIN "baserom.gbc",$D4000,$4000
+; Frame definitions
+FramesPointers: INCLUDE "gfx/pics/frame_pointers.asm"
+; Inexplicably, Kanto frames are split off from Johto
+INCLUDE "gfx/pics/kanto_frames.asm"
+
+
+; Pic animations III
SECTION "bank36",DATA,BANK[$36]
-FontInversed:
-INCBIN "gfx/font_inversed.1bpp",$0,$400
+FontInversed: INCBIN "gfx/font_inversed.1bpp"
+
+; Johto frame definitions
+INCLUDE "gfx/pics/johto_frames.asm"
+
+; Unown frame definitions
+UnownFramesPointers: INCLUDE "gfx/pics/unown_frame_pointers.asm"
+INCLUDE "gfx/pics/unown_frames.asm"
-INCBIN "baserom.gbc",$D8400,$4000-$400
SECTION "bank37",DATA,BANK[$37]
@@ -88913,7 +91521,7 @@ SFX: ; e927c
dbw $3c, $4a22 ; tap
dbw $3c, $4a25 ; tap
dbw $3c, $4a28 ; burn ; that is not a burn
- dbw $3c, $4a2b ;
+ dbw $3c, $4a2b ; title screen sound
dbw $3c, $4a2e ; similar to $60
dbw $3c, $4a31 ; get coin from slots
dbw $3c, $4a34 ; pay day
@@ -89599,6 +92207,8 @@ INCBIN "baserom.gbc",$FBCCF,$fc000-$fbccf
SECTION "bank3F",DATA,BANK[$3F]
+DoTileAnimation:
+
INCBIN "baserom.gbc",$FC000,$fcdc2-$fc000
LoadTradesPointer: ; 0xfcdc2
@@ -89647,7 +92257,17 @@ INCBIN "baserom.gbc",$100000,$4000
SECTION "bank41",DATA,BANK[$41]
-INCBIN "baserom.gbc",$104000,$1060bb - $104000
+INCBIN "baserom.gbc",$104000,$105258 - $104000
+
+MysteryGiftGFX:
+INCBIN "gfx/misc/mystery_gift.2bpp"
+
+INCBIN "baserom.gbc",$105688,$105930 - $105688
+
+; japanese mystery gift gfx
+INCBIN "gfx/misc/mystery_gift_jp.2bpp"
+
+INCBIN "baserom.gbc",$105db0,$1060bb - $105db0
Function1060bb: ; 1060bb
; commented out
@@ -89664,12 +92284,364 @@ IntroLogoGFX: ; 109407
INCBIN "gfx/intro/lz/logo.lz"
; 10983f
-INCBIN "baserom.gbc", $10983f, $10c000 - $10983f
+INCBIN "baserom.gbc", $10983f, $10aee1 - $10983f
+
+Credits:
+ db " SATOSHI TAJIRI@" ; "たじり さとし@"
+ db " JUNICHI MASUDA@" ; "ますだ じゅんいち@"
+ db " TETSUYA WATANABE@" ; "わたなべ てつや@"
+ db " SHIGEKI MORIMOTO@" ; "もりもと しげき@"
+ db " SOUSUKE TAMADA@" ; "たまだ そうすけ@"
+ db " TAKENORI OOTA@" ; "おおた たけのり@"
+ db " KEN SUGIMORI@" ; "すぎもり けん@"
+ db " MOTOFUMI FUJIWARA@" ; "ふじわら もとふみ@"
+ db " ATSUKO NISHIDA@" ; "にしだ あつこ@"
+ db " MUNEO SAITO@" ; "さいとう むねお@"
+ db " SATOSHI OOTA@" ; "おおた さとし@"
+ db " RENA YOSHIKAWA@" ; "よしかわ れな@"
+ db " JUN OKUTANI@" ; "おくたに じゅん@"
+ db " HIRONOBU YOSHIDA@" ; "よしだ ひろのぶ@"
+ db " ASUKA IWASHITA@" ; "いわした あすか@"
+ db " GO ICHINOSE@" ; "いちのせ ごう@"
+ db " MORIKAZU AOKI@" ; "あおき もりかず@"
+ db " KOHJI NISHINO@" ; "にしの こうじ@"
+ db " KENJI MATSUSHIMA@" ; "まつしま けんじ@"
+ db "TOSHINOBU MATSUMIYA@" ; "まつみや としのぶ@"
+ db " SATORU IWATA@" ; "いわた さとる@"
+ db " NOBUHIRO SEYA@" ; "せや のぶひろ@"
+ db " KAZUHITO SEKINE@" ; "せきね かずひと@"
+ db " TETSUJI OOTA@" ; "おおた てつじ@"
+ db "NCL SUPER MARIO CLUB@" ; "スーパーマりォクラブ@"
+ db " SARUGAKUCHO@" ; "さるがくちょう@"
+ db " AKITO MORI@" ; "もり あきと@"
+ db " TAKAHIRO HARADA@" ; "はらだ たかひろ@"
+ db " TOHRU HASHIMOTO@" ; "はしもと とおる@"
+ db " NOBORU MATSUMOTO@" ; "まつもと のぼる@"
+ db " TAKEHIRO IZUSHI@" ; "いずし たけひろ@"
+ db " TAKASHI KAWAGUCHI@" ; "かわぐち たかし@"
+ db " TSUNEKAZU ISHIHARA@" ; "いしはら つねかず@"
+ db " HIROSHI YAMAUCHI@" ; "やまうち ひろし@"
+ db " KENJI SAIKI@" ; "さいき けんじ@"
+ db " ATSUSHI TADA@" ; "ただ あつし@"
+ db " NAOKO KAWAKAMI@" ; "かわかみ なおこ@"
+ db " HIROYUKI ZINNAI@" ; "じんない ひろゆき@"
+ db " KUNIMI KAWAMURA@" ; "かわむら くにみ@"
+ db " HISASHI SOGABE@" ; "そがべ ひさし@"
+ db " KEITA KAGAYA@" ; "かがや けいた@"
+ db " YOSHINORI MATSUDA@" ; "まつだ よしのり@"
+ db " HITOMI SATO@" ; "さとう ひとみ@"
+ db " TORU OSAWA@" ; "おおさわ とおる@"
+ db " TAKAO OHARA@" ; "おおはら たかお@"
+ db " YUICHIRO ITO@" ; "いとう ゆういちろう@"
+ db " TAKAO SHIMIZU@" ; "しみず たかお@"
+ db " SPECIAL PRODUCTION", $4e
+ db " PLANNING", $4e ; "きかくかいはつぶ@"
+ db " & DEVELOPMENT DEPT.@"
+ db " KEITA NAKAMURA@" ; "なかむら けいた@"
+ db " HIROTAKA UEMURA@" ; "うえむら ひろたか@"
+ db " HIROAKI TAMURA@" ; "たむら ひろあき@"
+ db " NORIAKI SAKAGUCHI@" ; "さかぐち のりあき@"
+ db " MIYUKI SATO@" ; "さとう みゆき@"
+ db " GAKUZI NOMOTO@" ; "のもと がくじ@"
+ db " AI MASHIMA@" ; "ましま あい@"
+ db " MIKIHIRO ISHIKAWA@" ; "いしかわ みきひろ@"
+ db " HIDEYUKI HASHIMOTO@" ; "はしもと ひでゆき@"
+ db " SATOSHI YAMATO@" ; "やまと さとし@"
+ db " SHIGERU MIYAMOTO@" ; "みやもと しげる@"
+ db " END@" ; "おしまい@"
+ db " ????????@" ; "????????@"
+ db " GAIL TILDEN@"
+ db " NOB OGASAWARA@"
+ db " SETH McMAHILL@"
+ db " HIROTO ALEXANDER@"
+ db " TERESA LILLYGREN@"
+ db " THOMAS HERTZOG@"
+ db " ERIK JOHNSON@"
+ db " HIRO NAKAMURA@"
+ db " TERUKI MURAKAWA@"
+ db " KAZUYOSHI OSAWA@"
+ db " KIMIKO NAKAMICHI@"
+ db " #MON", $4e ; "ポケットモンスター", $4e
+ db " CRYSTAL VERSION", $4e ; " クりスタル バージョン", $4e
+ db " STAFF@" ; " スタッフ@"
+ db " DIRECTOR@" ; "エグゼクティブ ディレクター@"
+ db " CO-DIRECTOR@" ; "ディレクター@"
+ db " PROGRAMMERS@" ; "プログラム@"
+ db " GRAPHICS DIRECTOR@" ; "グラフィック ディレクター@"
+ db " MONSTER DESIGN@" ; "# デザイン@"
+ db " GRAPHICS DESIGN@" ; "グラフィック デザイン@"
+ db " MUSIC@" ; "おんがく@"
+ db " SOUND EFFECTS@" ; "サウンド エフ→クト@"
+ db " GAME DESIGN@" ; "ゲームデザイン@"
+ db " GAME SCENARIO@" ; "シナりォ@"
+ db " TOOL PROGRAMMING@" ; "ツール プログラム@"
+ db " PARAMETRIC DESIGN@" ; "パラメーター せってい@"
+ db " SCRIPT DESIGN@" ; "スクりプト せってい@"
+ db " MAP DATA DESIGN@" ; "マップデータ せってい@"
+ db " MAP DESIGN@" ; "マップ デザイン@"
+ db " PRODUCT TESTING@" ; "デバッグプレイ@"
+ db " SPECIAL THANKS@" ; "スぺシャルサンクス@"
+ db " PRODUCERS@" ; "プロデューサー@"
+ db " EXECUTIVE PRODUCER@" ; "エグゼクティブ プロデューサー@"
+ db " #MON ANIMATION@" ; "# アニメーション@"
+ db " #DEX TEXT@" ; "ずかん テキスト@"
+ db " MOBILE PRJ. LEADER@" ; "モバイルプロジ→クト りーダー@"
+ db " MOBILE SYSTEM AD.@" ; "モバイル システムアドバイザー@"
+ db "MOBILE STADIUM DIR.@" ; "モバイルスタジアム ディレクター@"
+ db " COORDINATION@" ; "コーディネーター@"
+ db " US VERSION STAFF@"
+ db " US COORDINATION@"
+ db " TEXT TRANSLATION@"
+ db " PAAD TESTING@"
+ ; (C) 1 9 9 5 - 2 0 0 1 N i n t e n d o
+ db $60,$61,$62,$63,$64,$65,$66, $67, $68, $69, $6a, $6b, $6c, $4e
+ ; (C) 1 9 9 5 - 2 0 0 1 C r e a t u r e s i n c .
+ db $60,$61,$62,$63,$64,$65,$66, $6d, $6e, $6f, $70, $71, $72, $7a, $7b, $7c, $4e
+ ; (C) 1 9 9 5 - 2 0 0 1 G A M E F R E A K i n c .
+ db $60,$61,$62,$63,$64,$65,$66, $73, $74, $75, $76, $77, $78, $79, $7a, $7b, $7c, "@"
SECTION "bank43",DATA,BANK[$43]
-INCBIN "baserom.gbc", $10c000, $10ef46 - $10c000
+INCBIN "baserom.gbc", $10c000, $10ed67 - $10c000
+
+TitleScreen: ; 10ed67
+
+ call WhiteBGMap
+ call ClearSprites
+ call ClearTileMap
+
+; Turn BG Map update off
+ xor a
+ ld [$ffd4], a
+
+; Reset timing variables
+ ld hl, $cf63
+ ld [hli], a ; cf63 ; Scene?
+ ld [hli], a ; cf64
+ ld [hli], a ; cf65 ; Timer lo
+ ld [hl], a ; cf66 ; Timer hi
+
+; Turn LCD off
+ call DisableLCD
+
+
+; VRAM bank 1
+ ld a, 1
+ ld [$ff4f], a
+
+
+; Decompress running Suicune gfx
+ ld hl, TitleSuicuneGFX
+ ld de, $8800
+ call $0b50
+
+
+; Clear screen palettes
+ ld hl, $9800
+ ld bc, $0280
+ xor a
+ call ByteFill
+
+
+; Fill tile palettes:
+
+; BG Map 1:
+
+; line 0 (copyright)
+ ld hl, $9c00
+ ld bc, $0020 ; one row
+ ld a, 7 ; palette
+ call ByteFill
+
+
+; BG Map 0:
+
+; Apply logo gradient:
+
+; lines 3-4
+ ld hl, $9860 ; (0,3)
+ ld bc, $0040 ; 2 rows
+ ld a, 2
+ call ByteFill
+; line 5
+ ld hl, $98a0 ; (0,5)
+ ld bc, $0020 ; 1 row
+ ld a, 3
+ call ByteFill
+; line 6
+ ld hl, $98c0 ; (0,6)
+ ld bc, $0020 ; 1 row
+ ld a, 4
+ call ByteFill
+; line 7
+ ld hl, $98e0 ; (0,7)
+ ld bc, $0020 ; 1 row
+ ld a, 5
+ call ByteFill
+; lines 8-9
+ ld hl, $9900 ; (0,8)
+ ld bc, $0040 ; 2 rows
+ ld a, 6
+ call ByteFill
+
+
+; 'CRYSTAL VERSION'
+ ld hl, $9925 ; (5,9)
+ ld bc, $000b ; length of version text
+ ld a, 1
+ call ByteFill
+
+; Suicune gfx
+ ld hl, $9980 ; (0,12)
+ ld bc, $00c0 ; the rest of the screen
+ ld a, 8
+ call ByteFill
+
+
+; Back to VRAM bank 0
+ ld a, $0
+ ld [$ff4f], a
+
+
+; Decompress logo
+ ld hl, TitleLogoGFX
+ ld de, $8800
+ call $0b50
+
+; Decompress background crystal
+ ld hl, TitleCrystalGFX
+ ld de, $8000
+ call $0b50
+
+
+; Clear screen tiles
+ ld hl, $9800
+ ld bc, $0800
+ ld a, $7f
+ call ByteFill
+
+; Draw Pokemon logo
+ ld hl, $c4dc ; TileMap(0,3)
+ ld bc, $0714 ; 20x7
+ ld d, $80
+ ld e, $14
+ call DrawGraphic
+
+; Draw copyright text
+ ld hl, $9c03 ; BG Map 1 (3,0)
+ ld bc, $010d ; 13x1
+ ld d, $c
+ ld e, $10
+ call DrawGraphic
+
+; Initialize running Suicune?
+ ld d, $0
+ call $6ed2
+
+; Initialize background crystal
+ call $6f06
+
+; Save WRAM bank
+ ld a, [$ff70]
+ push af
+; WRAM bank 5
+ ld a, 5
+ ld [$ff70], a
+
+; Update palette colors
+ ld hl, TitleScreenPalettes
+ ld de, $d000
+ ld bc, $0080
+ call CopyBytes
+
+ ld hl, TitleScreenPalettes
+ ld de, $d080
+ ld bc, $0080
+ call CopyBytes
+
+; Restore WRAM bank
+ pop af
+ ld [$ff70], a
+
+
+; LY/SCX trickery starts here
+
+; Save WRAM bank
+ ld a, [$ff70]
+ push af
+; WRAM bank 5
+ ld a, 5
+ ld [$ff70], a
+
+; Make alternating lines come in from opposite sides
+
+; ( This part is actually totally pointless, you can't
+; see anything until these values are overwritten! )
+
+ ld b, 40 ; alternate for 80 lines
+ ld hl, $d100 ; LY buffer
+.loop
+; $00 is the middle position
+ ld [hl], $70 ; coming from the left
+ inc hl
+ ld [hl], $90 ; coming from the right
+ inc hl
+ dec b
+ jr nz, .loop
+
+; Make sure the rest of the buffer is empty
+ ld hl, $d150
+ xor a
+ ld bc, $0040
+ call ByteFill
+
+; Let LCD Stat know we're messing around with SCX
+ ld a, $43 ; ff43 ; SCX
+ ld [$ffc6], a
+
+; Restore WRAM bank
+ pop af
+ ld [$ff70], a
+
+
+; Reset audio
+ call ChannelsOff
+ call $058a
+
+; Set sprite size to 8x16
+ ld a, [$ff40] ; LCDC
+ set 2, a
+ ld [$ff40], a ; LCDC
+
+;
+ ld a, $70
+ ld [$ffcf], a
+ ld a, $8
+ ld [$ffd0], a
+ ld a, $7
+ ld [$ffd1], a
+ ld a, $90
+ ld [$ffd2], a
+
+ ld a, $1
+ ld [$ffe5], a
+
+; Update BG Map 0 (bank 0)
+ ld [$ffd4], a
+
+ xor a
+ ld [$d002], a
+
+; Play starting sound effect
+ call SFXChannelsOff
+ ld de, $0065
+ call StartSFX
+
+ ret
+; 10eea7
+
+INCBIN "baserom.gbc", $10eea7, $10ef46 - $10eea7
TitleSuicuneGFX: ; 10ef46
INCBIN "gfx/title/lz/suicune.lz"
@@ -89687,7 +92659,93 @@ TitleCrystalGFX: ; 10fcee
INCBIN "gfx/title/lz/crystal.lz"
; 10fed7
-INCBIN "baserom.gbc", $10fed7, $110000 - $10fed7
+INCBIN "baserom.gbc", $10fed7, $10fede - $10fed7
+
+TitleScreenPalettes:
+; BG
+ RGB 00, 00, 00
+ RGB 19, 00, 00
+ RGB 15, 08, 31
+ RGB 15, 08, 31
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 15, 16, 31
+ RGB 31, 01, 13
+
+ RGB 00, 00, 00
+ RGB 07, 07, 07
+ RGB 31, 31, 31
+ RGB 02, 03, 30
+
+ RGB 00, 00, 00
+ RGB 13, 13, 13
+ RGB 31, 31, 18
+ RGB 02, 03, 30
+
+ RGB 00, 00, 00
+ RGB 19, 19, 19
+ RGB 29, 28, 12
+ RGB 02, 03, 30
+
+ RGB 00, 00, 00
+ RGB 25, 25, 25
+ RGB 28, 25, 06
+ RGB 02, 03, 30
+
+ RGB 00, 00, 00
+ RGB 31, 31, 31
+ RGB 26, 21, 00
+ RGB 02, 03, 30
+
+ RGB 00, 00, 00
+ RGB 11, 11, 19
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+
+; OBJ
+ RGB 00, 00, 00
+ RGB 10, 00, 15
+ RGB 17, 05, 22
+ RGB 19, 09, 31
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+ RGB 31, 31, 31
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+ RGB 00, 00, 00
+
+
+INCBIN "baserom.gbc", $10ff5e, $110000 - $10ff5e
SECTION "bank44",DATA,BANK[$44]
@@ -89729,10 +92787,10 @@ Function117a94: ; 0x117a94
call $300b
ld a, $5c
ld hl, $6e78
- rst $8
+ rst FarCall
ld a, $41
ld hl, $4000
- rst $8
+ rst FarCall
ret
; 0x117ab4
@@ -89741,13 +92799,13 @@ Function117ab4: ; 0x117ab4
call $300b
ld a, $5c
ld hl, $6e78
- rst $8
+ rst FarCall
ld a, $5c
ld hl, $6eb9
- rst $8
+ rst FarCall
ld a, $41
ld hl, $4061
- rst $8
+ rst FarCall
ret
; 0x117acd
@@ -89759,7 +92817,7 @@ Function117acd: ; 0x117acd
call Function117ae9
ld a, $41
ld hl, $4000
- rst $8
+ rst FarCall
jr Function117acd
.asm_117ae2
call $31f3
@@ -89790,7 +92848,7 @@ Pointers117af8: ; 0x117af8
Function117b06:
ld a, $5c
ld hl, $6eb9
- rst $8
+ rst FarCall
ld a, $10
ld [$cf64], a
jp Function117cdd
@@ -89867,14 +92925,14 @@ Function117b4f:
call $1c07
ld a, $41
ld hl, $4061
- rst $8
+ rst FarCall
jp Function117cdd
.asm_117ba4
call $1c07
call $1c07
ld a, $41
ld hl, $4061
- rst $8
+ rst FarCall
ld a, $80
ld [$cf63], a
ret
@@ -89885,7 +92943,7 @@ Function117bb6:
ld [$ffd4], a
ld a, $46
ld hl, $4284
- rst $8
+ rst FarCall
call $300b
ld a, [$c300]
and a
@@ -89897,7 +92955,7 @@ Function117bb6:
ld [$c303], a
ld a, $5f
ld hl, $7555
- rst $8
+ rst FarCall
ld a, $80
ld [$cf63], a
ret
@@ -89942,7 +93000,7 @@ Function117bb6:
ld [$ff70], a
ld a, $5c
ld hl, $6eb9
- rst $8
+ rst FarCall
ld a, [$ff70]
push af
ld a, $3
@@ -89952,7 +93010,7 @@ Function117bb6:
ld hl, $d002
ld de, $b000
ld bc, $1000
- call $3026
+ call CopyBytes
call CloseSRAM
pop af
ld [$ff70], a
@@ -89965,7 +93023,7 @@ Function117c4a:
call $1cfd
ld a, $41
ld hl, $4061
- rst $8
+ rst FarCall
ld hl, MobileStadiumSuccessText
call $1057
ld a, [$ff70]
@@ -90565,19 +93623,19 @@ PicPointers:
dbw $ff, $ffff ; unused
-HoOhFrontpic: INCBIN "gfx/frontpics/lz/250.lz"
-MachampFrontpic: INCBIN "gfx/frontpics/lz/068.lz"
-NinetalesFrontpic: INCBIN "gfx/frontpics/lz/038.lz"
-FeraligatrFrontpic: INCBIN "gfx/frontpics/lz/160.lz"
-NidokingFrontpic: INCBIN "gfx/frontpics/lz/034.lz"
-RaikouFrontpic: INCBIN "gfx/frontpics/lz/243.lz"
-LugiaFrontpic: INCBIN "gfx/frontpics/lz/249.lz"
-ArticunoFrontpic: INCBIN "gfx/frontpics/lz/144.lz"
-TaurosFrontpic: INCBIN "gfx/frontpics/lz/128.lz"
-VenusaurFrontpic: INCBIN "gfx/frontpics/lz/003.lz"
-EnteiFrontpic: INCBIN "gfx/frontpics/lz/244.lz"
-SuicuneFrontpic: INCBIN "gfx/frontpics/lz/245.lz"
-TyphlosionFrontpic: INCBIN "gfx/frontpics/lz/157.lz"
+HoOhFrontpic: INCBIN "gfx/pics/250/front.lz"
+MachampFrontpic: INCBIN "gfx/pics/068/front.lz"
+NinetalesFrontpic: INCBIN "gfx/pics/038/front.lz"
+FeraligatrFrontpic: INCBIN "gfx/pics/160/front.lz"
+NidokingFrontpic: INCBIN "gfx/pics/034/front.lz"
+RaikouFrontpic: INCBIN "gfx/pics/243/front.lz"
+LugiaFrontpic: INCBIN "gfx/pics/249/front.lz"
+ArticunoFrontpic: INCBIN "gfx/pics/144/front.lz"
+TaurosFrontpic: INCBIN "gfx/pics/128/front.lz"
+VenusaurFrontpic: INCBIN "gfx/pics/003/front.lz"
+EnteiFrontpic: INCBIN "gfx/pics/244/front.lz"
+SuicuneFrontpic: INCBIN "gfx/pics/245/front.lz"
+TyphlosionFrontpic: INCBIN "gfx/pics/157/front.lz"
; 123ffa
@@ -90638,22 +93696,22 @@ UnownPicPointers:
dbw BANK(UnownZBackpic) - $36, UnownZBackpic
-BlastoiseFrontpic: INCBIN "gfx/frontpics/lz/009.lz"
-RapidashFrontpic: INCBIN "gfx/frontpics/lz/078.lz"
-MeganiumFrontpic: INCBIN "gfx/frontpics/lz/154.lz"
-NidoqueenFrontpic: INCBIN "gfx/frontpics/lz/031.lz"
-HitmonleeFrontpic: INCBIN "gfx/frontpics/lz/106.lz"
-ScizorFrontpic: INCBIN "gfx/frontpics/lz/212.lz"
-BeedrillFrontpic: INCBIN "gfx/frontpics/lz/015.lz"
-ArcanineFrontpic: INCBIN "gfx/frontpics/lz/059.lz"
-TyranitarFrontpic: INCBIN "gfx/frontpics/lz/248.lz"
-MoltresFrontpic: INCBIN "gfx/frontpics/lz/146.lz"
-ZapdosFrontpic: INCBIN "gfx/frontpics/lz/145.lz"
-ArbokFrontpic: INCBIN "gfx/frontpics/lz/024.lz"
-MewtwoFrontpic: INCBIN "gfx/frontpics/lz/150.lz"
-FearowFrontpic: INCBIN "gfx/frontpics/lz/022.lz"
-CharizardFrontpic: INCBIN "gfx/frontpics/lz/006.lz"
-QuilavaFrontpic: INCBIN "gfx/frontpics/lz/156.lz"
+BlastoiseFrontpic: INCBIN "gfx/pics/009/front.lz"
+RapidashFrontpic: INCBIN "gfx/pics/078/front.lz"
+MeganiumFrontpic: INCBIN "gfx/pics/154/front.lz"
+NidoqueenFrontpic: INCBIN "gfx/pics/031/front.lz"
+HitmonleeFrontpic: INCBIN "gfx/pics/106/front.lz"
+ScizorFrontpic: INCBIN "gfx/pics/212/front.lz"
+BeedrillFrontpic: INCBIN "gfx/pics/015/front.lz"
+ArcanineFrontpic: INCBIN "gfx/pics/059/front.lz"
+TyranitarFrontpic: INCBIN "gfx/pics/248/front.lz"
+MoltresFrontpic: INCBIN "gfx/pics/146/front.lz"
+ZapdosFrontpic: INCBIN "gfx/pics/145/front.lz"
+ArbokFrontpic: INCBIN "gfx/pics/024/front.lz"
+MewtwoFrontpic: INCBIN "gfx/pics/150/front.lz"
+FearowFrontpic: INCBIN "gfx/pics/022/front.lz"
+CharizardFrontpic: INCBIN "gfx/pics/006/front.lz"
+QuilavaFrontpic: INCBIN "gfx/pics/156/front.lz"
; 127ffe
@@ -90729,672 +93787,672 @@ TrainerPicPointers:
dbw BANK(MysticalmanPic) - $36, MysticalmanPic
-SteelixFrontpic: INCBIN "gfx/frontpics/lz/208.lz"
-AlakazamFrontpic: INCBIN "gfx/frontpics/lz/065.lz"
-GyaradosFrontpic: INCBIN "gfx/frontpics/lz/130.lz"
-KangaskhanFrontpic: INCBIN "gfx/frontpics/lz/115.lz"
-RhydonFrontpic: INCBIN "gfx/frontpics/lz/112.lz"
-GolduckFrontpic: INCBIN "gfx/frontpics/lz/055.lz"
-RhyhornFrontpic: INCBIN "gfx/frontpics/lz/111.lz"
-PidgeotFrontpic: INCBIN "gfx/frontpics/lz/018.lz"
-SlowbroFrontpic: INCBIN "gfx/frontpics/lz/080.lz"
-ButterfreeFrontpic: INCBIN "gfx/frontpics/lz/012.lz"
-WeezingFrontpic: INCBIN "gfx/frontpics/lz/110.lz"
-CloysterFrontpic: INCBIN "gfx/frontpics/lz/091.lz"
-SkarmoryFrontpic: INCBIN "gfx/frontpics/lz/227.lz"
-DewgongFrontpic: INCBIN "gfx/frontpics/lz/087.lz"
-VictreebelFrontpic: INCBIN "gfx/frontpics/lz/071.lz"
-RaichuFrontpic: INCBIN "gfx/frontpics/lz/026.lz"
-PrimeapeFrontpic: INCBIN "gfx/frontpics/lz/057.lz"
-OmastarBackpic: INCBIN "gfx/backpics/lz/139.lz"
+SteelixFrontpic: INCBIN "gfx/pics/208/front.lz"
+AlakazamFrontpic: INCBIN "gfx/pics/065/front.lz"
+GyaradosFrontpic: INCBIN "gfx/pics/130/front.lz"
+KangaskhanFrontpic: INCBIN "gfx/pics/115/front.lz"
+RhydonFrontpic: INCBIN "gfx/pics/112/front.lz"
+GolduckFrontpic: INCBIN "gfx/pics/055/front.lz"
+RhyhornFrontpic: INCBIN "gfx/pics/111/front.lz"
+PidgeotFrontpic: INCBIN "gfx/pics/018/front.lz"
+SlowbroFrontpic: INCBIN "gfx/pics/080/front.lz"
+ButterfreeFrontpic: INCBIN "gfx/pics/012/front.lz"
+WeezingFrontpic: INCBIN "gfx/pics/110/front.lz"
+CloysterFrontpic: INCBIN "gfx/pics/091/front.lz"
+SkarmoryFrontpic: INCBIN "gfx/pics/227/front.lz"
+DewgongFrontpic: INCBIN "gfx/pics/087/front.lz"
+VictreebelFrontpic: INCBIN "gfx/pics/071/front.lz"
+RaichuFrontpic: INCBIN "gfx/pics/026/front.lz"
+PrimeapeFrontpic: INCBIN "gfx/pics/057/front.lz"
+OmastarBackpic: INCBIN "gfx/pics/139/back.lz"
; 12bffe
SECTION "bank4b",DATA,BANK[$4b]
-DodrioFrontpic: INCBIN "gfx/frontpics/lz/085.lz"
-SlowkingFrontpic: INCBIN "gfx/frontpics/lz/199.lz"
-HitmontopFrontpic: INCBIN "gfx/frontpics/lz/237.lz"
-OnixFrontpic: INCBIN "gfx/frontpics/lz/095.lz"
-BlisseyFrontpic: INCBIN "gfx/frontpics/lz/242.lz"
-MachokeFrontpic: INCBIN "gfx/frontpics/lz/067.lz"
-DragoniteFrontpic: INCBIN "gfx/frontpics/lz/149.lz"
-PoliwrathFrontpic: INCBIN "gfx/frontpics/lz/062.lz"
-ScytherFrontpic: INCBIN "gfx/frontpics/lz/123.lz"
-AerodactylFrontpic: INCBIN "gfx/frontpics/lz/142.lz"
-SeakingFrontpic: INCBIN "gfx/frontpics/lz/119.lz"
-MukFrontpic: INCBIN "gfx/frontpics/lz/089.lz"
-CroconawFrontpic: INCBIN "gfx/frontpics/lz/159.lz"
-HypnoFrontpic: INCBIN "gfx/frontpics/lz/097.lz"
-NidorinoFrontpic: INCBIN "gfx/frontpics/lz/033.lz"
-SandslashFrontpic: INCBIN "gfx/frontpics/lz/028.lz"
-JolteonFrontpic: INCBIN "gfx/frontpics/lz/135.lz"
-DonphanFrontpic: INCBIN "gfx/frontpics/lz/232.lz"
-PinsirFrontpic: INCBIN "gfx/frontpics/lz/127.lz"
-UnownEFrontpic: INCBIN "gfx/frontpics/lz/201e.lz"
+DodrioFrontpic: INCBIN "gfx/pics/085/front.lz"
+SlowkingFrontpic: INCBIN "gfx/pics/199/front.lz"
+HitmontopFrontpic: INCBIN "gfx/pics/237/front.lz"
+OnixFrontpic: INCBIN "gfx/pics/095/front.lz"
+BlisseyFrontpic: INCBIN "gfx/pics/242/front.lz"
+MachokeFrontpic: INCBIN "gfx/pics/067/front.lz"
+DragoniteFrontpic: INCBIN "gfx/pics/149/front.lz"
+PoliwrathFrontpic: INCBIN "gfx/pics/062/front.lz"
+ScytherFrontpic: INCBIN "gfx/pics/123/front.lz"
+AerodactylFrontpic: INCBIN "gfx/pics/142/front.lz"
+SeakingFrontpic: INCBIN "gfx/pics/119/front.lz"
+MukFrontpic: INCBIN "gfx/pics/089/front.lz"
+CroconawFrontpic: INCBIN "gfx/pics/159/front.lz"
+HypnoFrontpic: INCBIN "gfx/pics/097/front.lz"
+NidorinoFrontpic: INCBIN "gfx/pics/033/front.lz"
+SandslashFrontpic: INCBIN "gfx/pics/028/front.lz"
+JolteonFrontpic: INCBIN "gfx/pics/135/front.lz"
+DonphanFrontpic: INCBIN "gfx/pics/232/front.lz"
+PinsirFrontpic: INCBIN "gfx/pics/127/front.lz"
+UnownEFrontpic: INCBIN "gfx/pics/201e/front.lz"
; 130000
SECTION "bank4C",DATA,BANK[$4C]
-GolbatFrontpic: INCBIN "gfx/frontpics/lz/042.lz"
-KinglerFrontpic: INCBIN "gfx/frontpics/lz/099.lz"
-ExeggcuteFrontpic: INCBIN "gfx/frontpics/lz/102.lz"
-MagcargoFrontpic: INCBIN "gfx/frontpics/lz/219.lz"
-PersianFrontpic: INCBIN "gfx/frontpics/lz/053.lz"
-StantlerFrontpic: INCBIN "gfx/frontpics/lz/234.lz"
-RaticateFrontpic: INCBIN "gfx/frontpics/lz/020.lz"
-VenomothFrontpic: INCBIN "gfx/frontpics/lz/049.lz"
-PolitoedFrontpic: INCBIN "gfx/frontpics/lz/186.lz"
-ElectabuzzFrontpic: INCBIN "gfx/frontpics/lz/125.lz"
-MantineFrontpic: INCBIN "gfx/frontpics/lz/226.lz"
-LickitungFrontpic: INCBIN "gfx/frontpics/lz/108.lz"
-KingdraFrontpic: INCBIN "gfx/frontpics/lz/230.lz"
-CharmeleonFrontpic: INCBIN "gfx/frontpics/lz/005.lz"
-KadabraFrontpic: INCBIN "gfx/frontpics/lz/064.lz"
-ExeggutorFrontpic: INCBIN "gfx/frontpics/lz/103.lz"
-GastlyFrontpic: INCBIN "gfx/frontpics/lz/092.lz"
-AzumarillFrontpic: INCBIN "gfx/frontpics/lz/184.lz"
-ParasectFrontpic: INCBIN "gfx/frontpics/lz/047.lz"
-MrMimeFrontpic: INCBIN "gfx/frontpics/lz/122.lz"
-HeracrossFrontpic: INCBIN "gfx/frontpics/lz/214.lz"
+GolbatFrontpic: INCBIN "gfx/pics/042/front.lz"
+KinglerFrontpic: INCBIN "gfx/pics/099/front.lz"
+ExeggcuteFrontpic: INCBIN "gfx/pics/102/front.lz"
+MagcargoFrontpic: INCBIN "gfx/pics/219/front.lz"
+PersianFrontpic: INCBIN "gfx/pics/053/front.lz"
+StantlerFrontpic: INCBIN "gfx/pics/234/front.lz"
+RaticateFrontpic: INCBIN "gfx/pics/020/front.lz"
+VenomothFrontpic: INCBIN "gfx/pics/049/front.lz"
+PolitoedFrontpic: INCBIN "gfx/pics/186/front.lz"
+ElectabuzzFrontpic: INCBIN "gfx/pics/125/front.lz"
+MantineFrontpic: INCBIN "gfx/pics/226/front.lz"
+LickitungFrontpic: INCBIN "gfx/pics/108/front.lz"
+KingdraFrontpic: INCBIN "gfx/pics/230/front.lz"
+CharmeleonFrontpic: INCBIN "gfx/pics/005/front.lz"
+KadabraFrontpic: INCBIN "gfx/pics/064/front.lz"
+ExeggutorFrontpic: INCBIN "gfx/pics/103/front.lz"
+GastlyFrontpic: INCBIN "gfx/pics/092/front.lz"
+AzumarillFrontpic: INCBIN "gfx/pics/184/front.lz"
+ParasectFrontpic: INCBIN "gfx/pics/047/front.lz"
+MrMimeFrontpic: INCBIN "gfx/pics/122/front.lz"
+HeracrossFrontpic: INCBIN "gfx/pics/214/front.lz"
; 133fff
SECTION "bank4d",DATA,BANK[$4d]
-AriadosFrontpic: INCBIN "gfx/frontpics/lz/168.lz"
-NoctowlFrontpic: INCBIN "gfx/frontpics/lz/164.lz"
-WartortleFrontpic: INCBIN "gfx/frontpics/lz/008.lz"
-LaprasFrontpic: INCBIN "gfx/frontpics/lz/131.lz"
-GolemFrontpic: INCBIN "gfx/frontpics/lz/076.lz"
-PoliwhirlFrontpic: INCBIN "gfx/frontpics/lz/061.lz"
-UrsaringFrontpic: INCBIN "gfx/frontpics/lz/217.lz"
-HoundoomFrontpic: INCBIN "gfx/frontpics/lz/229.lz"
-KabutopsFrontpic: INCBIN "gfx/frontpics/lz/141.lz"
-AmpharosFrontpic: INCBIN "gfx/frontpics/lz/181.lz"
-NidorinaFrontpic: INCBIN "gfx/frontpics/lz/030.lz"
-FlareonFrontpic: INCBIN "gfx/frontpics/lz/136.lz"
-FarfetchDFrontpic: INCBIN "gfx/frontpics/lz/083.lz"
-VileplumeFrontpic: INCBIN "gfx/frontpics/lz/045.lz"
-BayleefFrontpic: INCBIN "gfx/frontpics/lz/153.lz"
-MagmarFrontpic: INCBIN "gfx/frontpics/lz/126.lz"
-TentacruelFrontpic: INCBIN "gfx/frontpics/lz/073.lz"
-ElekidFrontpic: INCBIN "gfx/frontpics/lz/239.lz"
-JumpluffFrontpic: INCBIN "gfx/frontpics/lz/189.lz"
-MarowakFrontpic: INCBIN "gfx/frontpics/lz/105.lz"
-VulpixFrontpic: INCBIN "gfx/frontpics/lz/037.lz"
-GligarFrontpic: INCBIN "gfx/frontpics/lz/207.lz"
-DunsparceFrontpic: INCBIN "gfx/frontpics/lz/206.lz"
+AriadosFrontpic: INCBIN "gfx/pics/168/front.lz"
+NoctowlFrontpic: INCBIN "gfx/pics/164/front.lz"
+WartortleFrontpic: INCBIN "gfx/pics/008/front.lz"
+LaprasFrontpic: INCBIN "gfx/pics/131/front.lz"
+GolemFrontpic: INCBIN "gfx/pics/076/front.lz"
+PoliwhirlFrontpic: INCBIN "gfx/pics/061/front.lz"
+UrsaringFrontpic: INCBIN "gfx/pics/217/front.lz"
+HoundoomFrontpic: INCBIN "gfx/pics/229/front.lz"
+KabutopsFrontpic: INCBIN "gfx/pics/141/front.lz"
+AmpharosFrontpic: INCBIN "gfx/pics/181/front.lz"
+NidorinaFrontpic: INCBIN "gfx/pics/030/front.lz"
+FlareonFrontpic: INCBIN "gfx/pics/136/front.lz"
+FarfetchDFrontpic: INCBIN "gfx/pics/083/front.lz"
+VileplumeFrontpic: INCBIN "gfx/pics/045/front.lz"
+BayleefFrontpic: INCBIN "gfx/pics/153/front.lz"
+MagmarFrontpic: INCBIN "gfx/pics/126/front.lz"
+TentacruelFrontpic: INCBIN "gfx/pics/073/front.lz"
+ElekidFrontpic: INCBIN "gfx/pics/239/front.lz"
+JumpluffFrontpic: INCBIN "gfx/pics/189/front.lz"
+MarowakFrontpic: INCBIN "gfx/pics/105/front.lz"
+VulpixFrontpic: INCBIN "gfx/pics/037/front.lz"
+GligarFrontpic: INCBIN "gfx/pics/207/front.lz"
+DunsparceFrontpic: INCBIN "gfx/pics/206/front.lz"
; 137fff
SECTION "bank4E",DATA,BANK[$4E]
-VaporeonFrontpic: INCBIN "gfx/frontpics/lz/134.lz"
-GirafarigFrontpic: INCBIN "gfx/frontpics/lz/203.lz"
-DrowzeeFrontpic: INCBIN "gfx/frontpics/lz/096.lz"
-SneaselFrontpic: INCBIN "gfx/frontpics/lz/215.lz"
-BellossomFrontpic: INCBIN "gfx/frontpics/lz/182.lz"
-SnorlaxFrontpic: INCBIN "gfx/frontpics/lz/143.lz"
-WigglytuffFrontpic: INCBIN "gfx/frontpics/lz/040.lz"
-YanmaFrontpic: INCBIN "gfx/frontpics/lz/193.lz"
-SmeargleFrontpic: INCBIN "gfx/frontpics/lz/235.lz"
-ClefableFrontpic: INCBIN "gfx/frontpics/lz/036.lz"
-PonytaFrontpic: INCBIN "gfx/frontpics/lz/077.lz"
-MurkrowFrontpic: INCBIN "gfx/frontpics/lz/198.lz"
-GravelerFrontpic: INCBIN "gfx/frontpics/lz/075.lz"
-StarmieFrontpic: INCBIN "gfx/frontpics/lz/121.lz"
-PidgeottoFrontpic: INCBIN "gfx/frontpics/lz/017.lz"
-LedybaFrontpic: INCBIN "gfx/frontpics/lz/165.lz"
-GengarFrontpic: INCBIN "gfx/frontpics/lz/094.lz"
-OmastarFrontpic: INCBIN "gfx/frontpics/lz/139.lz"
-PiloswineFrontpic: INCBIN "gfx/frontpics/lz/221.lz"
-DugtrioFrontpic: INCBIN "gfx/frontpics/lz/051.lz"
-MagnetonFrontpic: INCBIN "gfx/frontpics/lz/082.lz"
-DragonairFrontpic: INCBIN "gfx/frontpics/lz/148.lz"
-ForretressFrontpic: INCBIN "gfx/frontpics/lz/205.lz"
-TogeticFrontpic: INCBIN "gfx/frontpics/lz/176.lz"
-KangaskhanBackpic: INCBIN "gfx/backpics/lz/115.lz"
+VaporeonFrontpic: INCBIN "gfx/pics/134/front.lz"
+GirafarigFrontpic: INCBIN "gfx/pics/203/front.lz"
+DrowzeeFrontpic: INCBIN "gfx/pics/096/front.lz"
+SneaselFrontpic: INCBIN "gfx/pics/215/front.lz"
+BellossomFrontpic: INCBIN "gfx/pics/182/front.lz"
+SnorlaxFrontpic: INCBIN "gfx/pics/143/front.lz"
+WigglytuffFrontpic: INCBIN "gfx/pics/040/front.lz"
+YanmaFrontpic: INCBIN "gfx/pics/193/front.lz"
+SmeargleFrontpic: INCBIN "gfx/pics/235/front.lz"
+ClefableFrontpic: INCBIN "gfx/pics/036/front.lz"
+PonytaFrontpic: INCBIN "gfx/pics/077/front.lz"
+MurkrowFrontpic: INCBIN "gfx/pics/198/front.lz"
+GravelerFrontpic: INCBIN "gfx/pics/075/front.lz"
+StarmieFrontpic: INCBIN "gfx/pics/121/front.lz"
+PidgeottoFrontpic: INCBIN "gfx/pics/017/front.lz"
+LedybaFrontpic: INCBIN "gfx/pics/165/front.lz"
+GengarFrontpic: INCBIN "gfx/pics/094/front.lz"
+OmastarFrontpic: INCBIN "gfx/pics/139/front.lz"
+PiloswineFrontpic: INCBIN "gfx/pics/221/front.lz"
+DugtrioFrontpic: INCBIN "gfx/pics/051/front.lz"
+MagnetonFrontpic: INCBIN "gfx/pics/082/front.lz"
+DragonairFrontpic: INCBIN "gfx/pics/148/front.lz"
+ForretressFrontpic: INCBIN "gfx/pics/205/front.lz"
+TogeticFrontpic: INCBIN "gfx/pics/176/front.lz"
+KangaskhanBackpic: INCBIN "gfx/pics/115/back.lz"
; 13c000
SECTION "bank4f",DATA,BANK[$4f]
-SeelFrontpic: INCBIN "gfx/frontpics/lz/086.lz"
-CrobatFrontpic: INCBIN "gfx/frontpics/lz/169.lz"
-ChanseyFrontpic: INCBIN "gfx/frontpics/lz/113.lz"
-TangelaFrontpic: INCBIN "gfx/frontpics/lz/114.lz"
-SnubbullFrontpic: INCBIN "gfx/frontpics/lz/209.lz"
-GranbullFrontpic: INCBIN "gfx/frontpics/lz/210.lz"
-MiltankFrontpic: INCBIN "gfx/frontpics/lz/241.lz"
-HaunterFrontpic: INCBIN "gfx/frontpics/lz/093.lz"
-SunfloraFrontpic: INCBIN "gfx/frontpics/lz/192.lz"
-UmbreonFrontpic: INCBIN "gfx/frontpics/lz/197.lz"
-ChikoritaFrontpic: INCBIN "gfx/frontpics/lz/152.lz"
-GoldeenFrontpic: INCBIN "gfx/frontpics/lz/118.lz"
-EspeonFrontpic: INCBIN "gfx/frontpics/lz/196.lz"
-XatuFrontpic: INCBIN "gfx/frontpics/lz/178.lz"
-MewFrontpic: INCBIN "gfx/frontpics/lz/151.lz"
-OctilleryFrontpic: INCBIN "gfx/frontpics/lz/224.lz"
-JynxFrontpic: INCBIN "gfx/frontpics/lz/124.lz"
-WobbuffetFrontpic: INCBIN "gfx/frontpics/lz/202.lz"
-DelibirdFrontpic: INCBIN "gfx/frontpics/lz/225.lz"
-LedianFrontpic: INCBIN "gfx/frontpics/lz/166.lz"
-GloomFrontpic: INCBIN "gfx/frontpics/lz/044.lz"
-FlaaffyFrontpic: INCBIN "gfx/frontpics/lz/180.lz"
-IvysaurFrontpic: INCBIN "gfx/frontpics/lz/002.lz"
-FurretFrontpic: INCBIN "gfx/frontpics/lz/162.lz"
-CyndaquilFrontpic: INCBIN "gfx/frontpics/lz/155.lz"
-HitmonchanFrontpic: INCBIN "gfx/frontpics/lz/107.lz"
-QuagsireFrontpic: INCBIN "gfx/frontpics/lz/195.lz"
+SeelFrontpic: INCBIN "gfx/pics/086/front.lz"
+CrobatFrontpic: INCBIN "gfx/pics/169/front.lz"
+ChanseyFrontpic: INCBIN "gfx/pics/113/front.lz"
+TangelaFrontpic: INCBIN "gfx/pics/114/front.lz"
+SnubbullFrontpic: INCBIN "gfx/pics/209/front.lz"
+GranbullFrontpic: INCBIN "gfx/pics/210/front.lz"
+MiltankFrontpic: INCBIN "gfx/pics/241/front.lz"
+HaunterFrontpic: INCBIN "gfx/pics/093/front.lz"
+SunfloraFrontpic: INCBIN "gfx/pics/192/front.lz"
+UmbreonFrontpic: INCBIN "gfx/pics/197/front.lz"
+ChikoritaFrontpic: INCBIN "gfx/pics/152/front.lz"
+GoldeenFrontpic: INCBIN "gfx/pics/118/front.lz"
+EspeonFrontpic: INCBIN "gfx/pics/196/front.lz"
+XatuFrontpic: INCBIN "gfx/pics/178/front.lz"
+MewFrontpic: INCBIN "gfx/pics/151/front.lz"
+OctilleryFrontpic: INCBIN "gfx/pics/224/front.lz"
+JynxFrontpic: INCBIN "gfx/pics/124/front.lz"
+WobbuffetFrontpic: INCBIN "gfx/pics/202/front.lz"
+DelibirdFrontpic: INCBIN "gfx/pics/225/front.lz"
+LedianFrontpic: INCBIN "gfx/pics/166/front.lz"
+GloomFrontpic: INCBIN "gfx/pics/044/front.lz"
+FlaaffyFrontpic: INCBIN "gfx/pics/180/front.lz"
+IvysaurFrontpic: INCBIN "gfx/pics/002/front.lz"
+FurretFrontpic: INCBIN "gfx/pics/162/front.lz"
+CyndaquilFrontpic: INCBIN "gfx/pics/155/front.lz"
+HitmonchanFrontpic: INCBIN "gfx/pics/107/front.lz"
+QuagsireFrontpic: INCBIN "gfx/pics/195/front.lz"
; 13fff7
SECTION "bank50",DATA,BANK[$50]
-EkansFrontpic: INCBIN "gfx/frontpics/lz/023.lz"
-SudowoodoFrontpic: INCBIN "gfx/frontpics/lz/185.lz"
-PikachuFrontpic: INCBIN "gfx/frontpics/lz/025.lz"
-SeadraFrontpic: INCBIN "gfx/frontpics/lz/117.lz"
-MagbyFrontpic: INCBIN "gfx/frontpics/lz/240.lz"
-WeepinbellFrontpic: INCBIN "gfx/frontpics/lz/070.lz"
-TotodileFrontpic: INCBIN "gfx/frontpics/lz/158.lz"
-CorsolaFrontpic: INCBIN "gfx/frontpics/lz/222.lz"
+EkansFrontpic: INCBIN "gfx/pics/023/front.lz"
+SudowoodoFrontpic: INCBIN "gfx/pics/185/front.lz"
+PikachuFrontpic: INCBIN "gfx/pics/025/front.lz"
+SeadraFrontpic: INCBIN "gfx/pics/117/front.lz"
+MagbyFrontpic: INCBIN "gfx/pics/240/front.lz"
+WeepinbellFrontpic: INCBIN "gfx/pics/070/front.lz"
+TotodileFrontpic: INCBIN "gfx/pics/158/front.lz"
+CorsolaFrontpic: INCBIN "gfx/pics/222/front.lz"
FirebreatherPic: INCBIN "gfx/trainers/lz/047.lz"
-MachopFrontpic: INCBIN "gfx/frontpics/lz/066.lz"
-ChinchouFrontpic: INCBIN "gfx/frontpics/lz/170.lz"
-RattataFrontpic: INCBIN "gfx/frontpics/lz/019.lz"
+MachopFrontpic: INCBIN "gfx/pics/066/front.lz"
+ChinchouFrontpic: INCBIN "gfx/pics/170/front.lz"
+RattataFrontpic: INCBIN "gfx/pics/019/front.lz"
ChampionPic: INCBIN "gfx/trainers/lz/015.lz"
-SpearowFrontpic: INCBIN "gfx/frontpics/lz/021.lz"
-MagikarpFrontpic: INCBIN "gfx/frontpics/lz/129.lz"
-CharmanderFrontpic: INCBIN "gfx/frontpics/lz/004.lz"
-CuboneFrontpic: INCBIN "gfx/frontpics/lz/104.lz"
+SpearowFrontpic: INCBIN "gfx/pics/021/front.lz"
+MagikarpFrontpic: INCBIN "gfx/pics/129/front.lz"
+CharmanderFrontpic: INCBIN "gfx/pics/004/front.lz"
+CuboneFrontpic: INCBIN "gfx/pics/104/front.lz"
BlackbeltTPic: INCBIN "gfx/trainers/lz/049.lz"
BikerPic: INCBIN "gfx/trainers/lz/044.lz"
-NidoranMFrontpic: INCBIN "gfx/frontpics/lz/032.lz"
-PorygonFrontpic: INCBIN "gfx/frontpics/lz/137.lz"
+NidoranMFrontpic: INCBIN "gfx/pics/032/front.lz"
+PorygonFrontpic: INCBIN "gfx/pics/137/front.lz"
BrunoPic: INCBIN "gfx/trainers/lz/012.lz"
-GrimerFrontpic: INCBIN "gfx/frontpics/lz/088.lz"
-StaryuFrontpic: INCBIN "gfx/frontpics/lz/120.lz"
+GrimerFrontpic: INCBIN "gfx/pics/088/front.lz"
+StaryuFrontpic: INCBIN "gfx/pics/120/front.lz"
HikerPic: INCBIN "gfx/trainers/lz/043.lz"
-MeowthFrontpic: INCBIN "gfx/frontpics/lz/052.lz"
-Porygon2Frontpic: INCBIN "gfx/frontpics/lz/233.lz"
-SandshrewFrontpic: INCBIN "gfx/frontpics/lz/027.lz"
-NidoranFFrontpic: INCBIN "gfx/frontpics/lz/029.lz"
-PidgeyFrontpic: INCBIN "gfx/frontpics/lz/016.lz"
-ParasectBackpic: INCBIN "gfx/backpics/lz/047.lz"
+MeowthFrontpic: INCBIN "gfx/pics/052/front.lz"
+Porygon2Frontpic: INCBIN "gfx/pics/233/front.lz"
+SandshrewFrontpic: INCBIN "gfx/pics/027/front.lz"
+NidoranFFrontpic: INCBIN "gfx/pics/029/front.lz"
+PidgeyFrontpic: INCBIN "gfx/pics/016/front.lz"
+ParasectBackpic: INCBIN "gfx/pics/047/back.lz"
; 144000
SECTION "bank51",DATA,BANK[$51]
-MisdreavusFrontpic: INCBIN "gfx/frontpics/lz/200.lz"
-HoundourFrontpic: INCBIN "gfx/frontpics/lz/228.lz"
-MankeyFrontpic: INCBIN "gfx/frontpics/lz/056.lz"
-CelebiFrontpic: INCBIN "gfx/frontpics/lz/251.lz"
+MisdreavusFrontpic: INCBIN "gfx/pics/200/front.lz"
+HoundourFrontpic: INCBIN "gfx/pics/228/front.lz"
+MankeyFrontpic: INCBIN "gfx/pics/056/front.lz"
+CelebiFrontpic: INCBIN "gfx/pics/251/front.lz"
MediumPic: INCBIN "gfx/trainers/lz/056.lz"
-PinecoFrontpic: INCBIN "gfx/frontpics/lz/204.lz"
-KrabbyFrontpic: INCBIN "gfx/frontpics/lz/098.lz"
+PinecoFrontpic: INCBIN "gfx/pics/204/front.lz"
+KrabbyFrontpic: INCBIN "gfx/pics/098/front.lz"
FisherPic: INCBIN "gfx/trainers/lz/036.lz"
-JigglypuffFrontpic: INCBIN "gfx/frontpics/lz/039.lz"
-ParasFrontpic: INCBIN "gfx/frontpics/lz/046.lz"
-NidokingBackpic: INCBIN "gfx/backpics/lz/034.lz"
+JigglypuffFrontpic: INCBIN "gfx/pics/039/front.lz"
+ParasFrontpic: INCBIN "gfx/pics/046/front.lz"
+NidokingBackpic: INCBIN "gfx/pics/034/back.lz"
PokefanmPic: INCBIN "gfx/trainers/lz/058.lz"
BoarderPic: INCBIN "gfx/trainers/lz/057.lz"
-PsyduckFrontpic: INCBIN "gfx/frontpics/lz/054.lz"
-SquirtleFrontpic: INCBIN "gfx/frontpics/lz/007.lz"
-MachampBackpic: INCBIN "gfx/backpics/lz/068.lz"
-KoffingFrontpic: INCBIN "gfx/frontpics/lz/109.lz"
-VenonatFrontpic: INCBIN "gfx/frontpics/lz/048.lz"
-ExeggutorBackpic: INCBIN "gfx/backpics/lz/103.lz"
-LanturnFrontpic: INCBIN "gfx/frontpics/lz/171.lz"
-TyrogueFrontpic: INCBIN "gfx/frontpics/lz/236.lz"
-SkiploomFrontpic: INCBIN "gfx/frontpics/lz/188.lz"
-MareepFrontpic: INCBIN "gfx/frontpics/lz/179.lz"
+PsyduckFrontpic: INCBIN "gfx/pics/054/front.lz"
+SquirtleFrontpic: INCBIN "gfx/pics/007/front.lz"
+MachampBackpic: INCBIN "gfx/pics/068/back.lz"
+KoffingFrontpic: INCBIN "gfx/pics/109/front.lz"
+VenonatFrontpic: INCBIN "gfx/pics/048/front.lz"
+ExeggutorBackpic: INCBIN "gfx/pics/103/back.lz"
+LanturnFrontpic: INCBIN "gfx/pics/171/front.lz"
+TyrogueFrontpic: INCBIN "gfx/pics/236/front.lz"
+SkiploomFrontpic: INCBIN "gfx/pics/188/front.lz"
+MareepFrontpic: INCBIN "gfx/pics/179/front.lz"
ChuckPic: INCBIN "gfx/trainers/lz/006.lz"
-EeveeFrontpic: INCBIN "gfx/frontpics/lz/133.lz"
-ButterfreeBackpic: INCBIN "gfx/backpics/lz/012.lz"
-ZubatFrontpic: INCBIN "gfx/frontpics/lz/041.lz"
+EeveeFrontpic: INCBIN "gfx/pics/133/front.lz"
+ButterfreeBackpic: INCBIN "gfx/pics/012/back.lz"
+ZubatFrontpic: INCBIN "gfx/pics/041/front.lz"
KimonoGirlPic: INCBIN "gfx/trainers/lz/059.lz"
-AlakazamBackpic: INCBIN "gfx/backpics/lz/065.lz"
-AipomFrontpic: INCBIN "gfx/frontpics/lz/190.lz"
-AbraFrontpic: INCBIN "gfx/frontpics/lz/063.lz"
-HitmontopBackpic: INCBIN "gfx/backpics/lz/237.lz"
-CloysterBackpic: INCBIN "gfx/backpics/lz/091.lz"
-HoothootFrontpic: INCBIN "gfx/frontpics/lz/163.lz"
-UnownFBackpic: INCBIN "gfx/backpics/lz/201f.lz"
+AlakazamBackpic: INCBIN "gfx/pics/065/back.lz"
+AipomFrontpic: INCBIN "gfx/pics/190/front.lz"
+AbraFrontpic: INCBIN "gfx/pics/063/front.lz"
+HitmontopBackpic: INCBIN "gfx/pics/237/back.lz"
+CloysterBackpic: INCBIN "gfx/pics/091/back.lz"
+HoothootFrontpic: INCBIN "gfx/pics/163/front.lz"
+UnownFBackpic: INCBIN "gfx/pics/201f/back.lz"
; 148000
SECTION "bank52",DATA,BANK[$52]
-DodrioBackpic: INCBIN "gfx/backpics/lz/085.lz"
-ClefairyFrontpic: INCBIN "gfx/frontpics/lz/035.lz"
-SlugmaFrontpic: INCBIN "gfx/frontpics/lz/218.lz"
-GrowlitheFrontpic: INCBIN "gfx/frontpics/lz/058.lz"
-SlowpokeFrontpic: INCBIN "gfx/frontpics/lz/079.lz"
-SmoochumFrontpic: INCBIN "gfx/frontpics/lz/238.lz"
+DodrioBackpic: INCBIN "gfx/pics/085/back.lz"
+ClefairyFrontpic: INCBIN "gfx/pics/035/front.lz"
+SlugmaFrontpic: INCBIN "gfx/pics/218/front.lz"
+GrowlitheFrontpic: INCBIN "gfx/pics/058/front.lz"
+SlowpokeFrontpic: INCBIN "gfx/pics/079/front.lz"
+SmoochumFrontpic: INCBIN "gfx/pics/238/front.lz"
JugglerPic: INCBIN "gfx/trainers/lz/048.lz"
-MarillFrontpic: INCBIN "gfx/frontpics/lz/183.lz"
+MarillFrontpic: INCBIN "gfx/pics/183/front.lz"
GuitaristPic: INCBIN "gfx/trainers/lz/042.lz"
PokefanfPic: INCBIN "gfx/trainers/lz/061.lz"
-VenomothBackpic: INCBIN "gfx/backpics/lz/049.lz"
+VenomothBackpic: INCBIN "gfx/pics/049/back.lz"
ClairPic: INCBIN "gfx/trainers/lz/007.lz"
PokemaniacPic: INCBIN "gfx/trainers/lz/029.lz"
-OmanyteFrontpic: INCBIN "gfx/frontpics/lz/138.lz"
+OmanyteFrontpic: INCBIN "gfx/pics/138/front.lz"
SkierPic: INCBIN "gfx/trainers/lz/032.lz"
-PupitarFrontpic: INCBIN "gfx/frontpics/lz/247.lz"
-BellsproutFrontpic: INCBIN "gfx/frontpics/lz/069.lz"
-ShellderFrontpic: INCBIN "gfx/frontpics/lz/090.lz"
-TentacoolFrontpic: INCBIN "gfx/frontpics/lz/072.lz"
-CleffaFrontpic: INCBIN "gfx/frontpics/lz/173.lz"
-GyaradosBackpic: INCBIN "gfx/backpics/lz/130.lz"
-NinetalesBackpic: INCBIN "gfx/backpics/lz/038.lz"
-YanmaBackpic: INCBIN "gfx/backpics/lz/193.lz"
-PinsirBackpic: INCBIN "gfx/backpics/lz/127.lz"
+PupitarFrontpic: INCBIN "gfx/pics/247/front.lz"
+BellsproutFrontpic: INCBIN "gfx/pics/069/front.lz"
+ShellderFrontpic: INCBIN "gfx/pics/090/front.lz"
+TentacoolFrontpic: INCBIN "gfx/pics/072/front.lz"
+CleffaFrontpic: INCBIN "gfx/pics/173/front.lz"
+GyaradosBackpic: INCBIN "gfx/pics/130/back.lz"
+NinetalesBackpic: INCBIN "gfx/pics/038/back.lz"
+YanmaBackpic: INCBIN "gfx/pics/193/back.lz"
+PinsirBackpic: INCBIN "gfx/pics/127/back.lz"
LassPic: INCBIN "gfx/trainers/lz/024.lz"
-ClefableBackpic: INCBIN "gfx/backpics/lz/036.lz"
-DoduoFrontpic: INCBIN "gfx/frontpics/lz/084.lz"
-FeraligatrBackpic: INCBIN "gfx/backpics/lz/160.lz"
-DratiniFrontpic: INCBIN "gfx/frontpics/lz/147.lz"
-MagnetonBackpic: INCBIN "gfx/backpics/lz/082.lz"
-QwilfishFrontpic: INCBIN "gfx/frontpics/lz/211.lz"
-SuicuneBackpic: INCBIN "gfx/backpics/lz/245.lz"
-SlowkingBackpic: INCBIN "gfx/backpics/lz/199.lz"
-ElekidBackpic: INCBIN "gfx/backpics/lz/239.lz"
-CelebiBackpic: INCBIN "gfx/backpics/lz/251.lz"
-KrabbyBackpic: INCBIN "gfx/backpics/lz/098.lz"
+ClefableBackpic: INCBIN "gfx/pics/036/back.lz"
+DoduoFrontpic: INCBIN "gfx/pics/084/front.lz"
+FeraligatrBackpic: INCBIN "gfx/pics/160/back.lz"
+DratiniFrontpic: INCBIN "gfx/pics/147/front.lz"
+MagnetonBackpic: INCBIN "gfx/pics/082/back.lz"
+QwilfishFrontpic: INCBIN "gfx/pics/211/front.lz"
+SuicuneBackpic: INCBIN "gfx/pics/245/back.lz"
+SlowkingBackpic: INCBIN "gfx/pics/199/back.lz"
+ElekidBackpic: INCBIN "gfx/pics/239/back.lz"
+CelebiBackpic: INCBIN "gfx/pics/251/back.lz"
+KrabbyBackpic: INCBIN "gfx/pics/098/back.lz"
BugCatcherPic: INCBIN "gfx/trainers/lz/035.lz"
-SnorlaxBackpic: INCBIN "gfx/backpics/lz/143.lz"
+SnorlaxBackpic: INCBIN "gfx/pics/143/back.lz"
; 14bffb
SECTION "bank53",DATA,BANK[$53]
-VenusaurBackpic: INCBIN "gfx/backpics/lz/003.lz"
-MoltresBackpic: INCBIN "gfx/backpics/lz/146.lz"
-SunfloraBackpic: INCBIN "gfx/backpics/lz/192.lz"
-PhanpyFrontpic: INCBIN "gfx/frontpics/lz/231.lz"
-RhydonBackpic: INCBIN "gfx/backpics/lz/112.lz"
-LarvitarFrontpic: INCBIN "gfx/frontpics/lz/246.lz"
-TyranitarBackpic: INCBIN "gfx/backpics/lz/248.lz"
-SandslashBackpic: INCBIN "gfx/backpics/lz/028.lz"
-SeadraBackpic: INCBIN "gfx/backpics/lz/117.lz"
+VenusaurBackpic: INCBIN "gfx/pics/003/back.lz"
+MoltresBackpic: INCBIN "gfx/pics/146/back.lz"
+SunfloraBackpic: INCBIN "gfx/pics/192/back.lz"
+PhanpyFrontpic: INCBIN "gfx/pics/231/front.lz"
+RhydonBackpic: INCBIN "gfx/pics/112/back.lz"
+LarvitarFrontpic: INCBIN "gfx/pics/246/front.lz"
+TyranitarBackpic: INCBIN "gfx/pics/248/back.lz"
+SandslashBackpic: INCBIN "gfx/pics/028/back.lz"
+SeadraBackpic: INCBIN "gfx/pics/117/back.lz"
TwinsPic: INCBIN "gfx/trainers/lz/060.lz"
-FarfetchDBackpic: INCBIN "gfx/backpics/lz/083.lz"
-NidoranMBackpic: INCBIN "gfx/backpics/lz/032.lz"
-LedybaBackpic: INCBIN "gfx/backpics/lz/165.lz"
-CyndaquilBackpic: INCBIN "gfx/backpics/lz/155.lz"
-BayleefBackpic: INCBIN "gfx/backpics/lz/153.lz"
-OddishFrontpic: INCBIN "gfx/frontpics/lz/043.lz"
-RapidashBackpic: INCBIN "gfx/backpics/lz/078.lz"
-DoduoBackpic: INCBIN "gfx/backpics/lz/084.lz"
-HoppipFrontpic: INCBIN "gfx/frontpics/lz/187.lz"
-MankeyBackpic: INCBIN "gfx/backpics/lz/056.lz"
-MagmarBackpic: INCBIN "gfx/backpics/lz/126.lz"
-HypnoBackpic: INCBIN "gfx/backpics/lz/097.lz"
-QuilavaBackpic: INCBIN "gfx/backpics/lz/156.lz"
-CroconawBackpic: INCBIN "gfx/backpics/lz/159.lz"
-SandshrewBackpic: INCBIN "gfx/backpics/lz/027.lz"
+FarfetchDBackpic: INCBIN "gfx/pics/083/back.lz"
+NidoranMBackpic: INCBIN "gfx/pics/032/back.lz"
+LedybaBackpic: INCBIN "gfx/pics/165/back.lz"
+CyndaquilBackpic: INCBIN "gfx/pics/155/back.lz"
+BayleefBackpic: INCBIN "gfx/pics/153/back.lz"
+OddishFrontpic: INCBIN "gfx/pics/043/front.lz"
+RapidashBackpic: INCBIN "gfx/pics/078/back.lz"
+DoduoBackpic: INCBIN "gfx/pics/084/back.lz"
+HoppipFrontpic: INCBIN "gfx/pics/187/front.lz"
+MankeyBackpic: INCBIN "gfx/pics/056/back.lz"
+MagmarBackpic: INCBIN "gfx/pics/126/back.lz"
+HypnoBackpic: INCBIN "gfx/pics/097/back.lz"
+QuilavaBackpic: INCBIN "gfx/pics/156/back.lz"
+CroconawBackpic: INCBIN "gfx/pics/159/back.lz"
+SandshrewBackpic: INCBIN "gfx/pics/027/back.lz"
SailorPic: INCBIN "gfx/trainers/lz/039.lz"
BeautyPic: INCBIN "gfx/trainers/lz/028.lz"
-ShellderBackpic: INCBIN "gfx/backpics/lz/090.lz"
-ZubatBackpic: INCBIN "gfx/backpics/lz/041.lz"
-TeddiursaFrontpic: INCBIN "gfx/frontpics/lz/216.lz"
-CuboneBackpic: INCBIN "gfx/backpics/lz/104.lz"
+ShellderBackpic: INCBIN "gfx/pics/090/back.lz"
+ZubatBackpic: INCBIN "gfx/pics/041/back.lz"
+TeddiursaFrontpic: INCBIN "gfx/pics/216/front.lz"
+CuboneBackpic: INCBIN "gfx/pics/104/back.lz"
GruntmPic: INCBIN "gfx/trainers/lz/030.lz"
-GloomBackpic: INCBIN "gfx/backpics/lz/044.lz"
-MagcargoBackpic: INCBIN "gfx/backpics/lz/219.lz"
-KabutopsBackpic: INCBIN "gfx/backpics/lz/141.lz"
-BeedrillBackpic: INCBIN "gfx/backpics/lz/015.lz"
-ArcanineBackpic: INCBIN "gfx/backpics/lz/059.lz"
-FlareonBackpic: INCBIN "gfx/backpics/lz/136.lz"
-GoldeenBackpic: INCBIN "gfx/backpics/lz/118.lz"
-BulbasaurFrontpic: INCBIN "gfx/frontpics/lz/001.lz"
-StarmieBackpic: INCBIN "gfx/backpics/lz/121.lz"
+GloomBackpic: INCBIN "gfx/pics/044/back.lz"
+MagcargoBackpic: INCBIN "gfx/pics/219/back.lz"
+KabutopsBackpic: INCBIN "gfx/pics/141/back.lz"
+BeedrillBackpic: INCBIN "gfx/pics/015/back.lz"
+ArcanineBackpic: INCBIN "gfx/pics/059/back.lz"
+FlareonBackpic: INCBIN "gfx/pics/136/back.lz"
+GoldeenBackpic: INCBIN "gfx/pics/118/back.lz"
+BulbasaurFrontpic: INCBIN "gfx/pics/001/front.lz"
+StarmieBackpic: INCBIN "gfx/pics/121/back.lz"
; 150000
SECTION "bank54",DATA,BANK[$54]
-OmanyteBackpic: INCBIN "gfx/backpics/lz/138.lz"
-PidgeyBackpic: INCBIN "gfx/backpics/lz/016.lz"
+OmanyteBackpic: INCBIN "gfx/pics/138/back.lz"
+PidgeyBackpic: INCBIN "gfx/pics/016/back.lz"
ScientistPic: INCBIN "gfx/trainers/lz/019.lz"
-QwilfishBackpic: INCBIN "gfx/backpics/lz/211.lz"
-GligarBackpic: INCBIN "gfx/backpics/lz/207.lz"
-TyphlosionBackpic: INCBIN "gfx/backpics/lz/157.lz"
-CharmeleonBackpic: INCBIN "gfx/backpics/lz/005.lz"
-NidoqueenBackpic: INCBIN "gfx/backpics/lz/031.lz"
-PichuFrontpic: INCBIN "gfx/frontpics/lz/172.lz"
-ElectabuzzBackpic: INCBIN "gfx/backpics/lz/125.lz"
-LedianBackpic: INCBIN "gfx/backpics/lz/166.lz"
-PupitarBackpic: INCBIN "gfx/backpics/lz/247.lz"
-HeracrossBackpic: INCBIN "gfx/backpics/lz/214.lz"
-UnownDFrontpic: INCBIN "gfx/frontpics/lz/201d.lz"
-MiltankBackpic: INCBIN "gfx/backpics/lz/241.lz"
-SteelixBackpic: INCBIN "gfx/backpics/lz/208.lz"
-PersianBackpic: INCBIN "gfx/backpics/lz/053.lz"
+QwilfishBackpic: INCBIN "gfx/pics/211/back.lz"
+GligarBackpic: INCBIN "gfx/pics/207/back.lz"
+TyphlosionBackpic: INCBIN "gfx/pics/157/back.lz"
+CharmeleonBackpic: INCBIN "gfx/pics/005/back.lz"
+NidoqueenBackpic: INCBIN "gfx/pics/031/back.lz"
+PichuFrontpic: INCBIN "gfx/pics/172/front.lz"
+ElectabuzzBackpic: INCBIN "gfx/pics/125/back.lz"
+LedianBackpic: INCBIN "gfx/pics/166/back.lz"
+PupitarBackpic: INCBIN "gfx/pics/247/back.lz"
+HeracrossBackpic: INCBIN "gfx/pics/214/back.lz"
+UnownDFrontpic: INCBIN "gfx/pics/201d/front.lz"
+MiltankBackpic: INCBIN "gfx/pics/241/back.lz"
+SteelixBackpic: INCBIN "gfx/pics/208/back.lz"
+PersianBackpic: INCBIN "gfx/pics/053/back.lz"
LtSurgePic: INCBIN "gfx/trainers/lz/018.lz"
TeacherPic: INCBIN "gfx/trainers/lz/033.lz"
-EggPic: INCBIN "gfx/frontpics/lz/egg.lz"
-EeveeBackpic: INCBIN "gfx/backpics/lz/133.lz"
-ShuckleFrontpic: INCBIN "gfx/frontpics/lz/213.lz"
-PonytaBackpic: INCBIN "gfx/backpics/lz/077.lz"
-RemoraidFrontpic: INCBIN "gfx/frontpics/lz/223.lz"
-PoliwagFrontpic: INCBIN "gfx/frontpics/lz/060.lz"
-OnixBackpic: INCBIN "gfx/backpics/lz/095.lz"
-KoffingBackpic: INCBIN "gfx/backpics/lz/109.lz"
+EggPic: INCBIN "gfx/pics/egg/front.lz"
+EeveeBackpic: INCBIN "gfx/pics/133/back.lz"
+ShuckleFrontpic: INCBIN "gfx/pics/213/front.lz"
+PonytaBackpic: INCBIN "gfx/pics/077/back.lz"
+RemoraidFrontpic: INCBIN "gfx/pics/223/front.lz"
+PoliwagFrontpic: INCBIN "gfx/pics/060/front.lz"
+OnixBackpic: INCBIN "gfx/pics/095/back.lz"
+KoffingBackpic: INCBIN "gfx/pics/109/back.lz"
BirdKeeperPic: INCBIN "gfx/trainers/lz/023.lz"
FalknerPic: INCBIN "gfx/trainers/lz/000.lz"
KarenPic: INCBIN "gfx/trainers/lz/013.lz"
-NidorinaBackpic: INCBIN "gfx/backpics/lz/030.lz"
-TentacruelBackpic: INCBIN "gfx/backpics/lz/073.lz"
-GrowlitheBackpic: INCBIN "gfx/backpics/lz/058.lz"
+NidorinaBackpic: INCBIN "gfx/pics/030/back.lz"
+TentacruelBackpic: INCBIN "gfx/pics/073/back.lz"
+GrowlitheBackpic: INCBIN "gfx/pics/058/back.lz"
KogaPic: INCBIN "gfx/trainers/lz/014.lz"
-MachokeBackpic: INCBIN "gfx/backpics/lz/067.lz"
-RaichuBackpic: INCBIN "gfx/backpics/lz/026.lz"
-PoliwrathBackpic: INCBIN "gfx/backpics/lz/062.lz"
+MachokeBackpic: INCBIN "gfx/pics/067/back.lz"
+RaichuBackpic: INCBIN "gfx/pics/026/back.lz"
+PoliwrathBackpic: INCBIN "gfx/pics/062/back.lz"
SwimmermPic: INCBIN "gfx/trainers/lz/037.lz"
-SunkernFrontpic: INCBIN "gfx/frontpics/lz/191.lz"
-NidorinoBackpic: INCBIN "gfx/backpics/lz/033.lz"
+SunkernFrontpic: INCBIN "gfx/pics/191/front.lz"
+NidorinoBackpic: INCBIN "gfx/pics/033/back.lz"
MysticalmanPic: INCBIN "gfx/trainers/lz/066.lz"
CooltrainerfPic: INCBIN "gfx/trainers/lz/027.lz"
-ElectrodeFrontpic: INCBIN "gfx/frontpics/lz/101.lz"
+ElectrodeFrontpic: INCBIN "gfx/pics/101/front.lz"
; 153fe3
SECTION "bank55",DATA,BANK[$55]
-SudowoodoBackpic: INCBIN "gfx/backpics/lz/185.lz"
-FlaaffyBackpic: INCBIN "gfx/backpics/lz/180.lz"
-SentretFrontpic: INCBIN "gfx/frontpics/lz/161.lz"
-TogeticBackpic: INCBIN "gfx/backpics/lz/176.lz"
+SudowoodoBackpic: INCBIN "gfx/pics/185/back.lz"
+FlaaffyBackpic: INCBIN "gfx/pics/180/back.lz"
+SentretFrontpic: INCBIN "gfx/pics/161/front.lz"
+TogeticBackpic: INCBIN "gfx/pics/176/back.lz"
BugsyPic: INCBIN "gfx/trainers/lz/002.lz"
-MarowakBackpic: INCBIN "gfx/backpics/lz/105.lz"
-GeodudeBackpic: INCBIN "gfx/backpics/lz/074.lz"
-ScytherBackpic: INCBIN "gfx/backpics/lz/123.lz"
-VileplumeBackpic: INCBIN "gfx/backpics/lz/045.lz"
-HitmonchanBackpic: INCBIN "gfx/backpics/lz/107.lz"
-JumpluffBackpic: INCBIN "gfx/backpics/lz/189.lz"
+MarowakBackpic: INCBIN "gfx/pics/105/back.lz"
+GeodudeBackpic: INCBIN "gfx/pics/074/back.lz"
+ScytherBackpic: INCBIN "gfx/pics/123/back.lz"
+VileplumeBackpic: INCBIN "gfx/pics/045/back.lz"
+HitmonchanBackpic: INCBIN "gfx/pics/107/back.lz"
+JumpluffBackpic: INCBIN "gfx/pics/189/back.lz"
CooltrainermPic: INCBIN "gfx/trainers/lz/026.lz"
-BlastoiseBackpic: INCBIN "gfx/backpics/lz/009.lz"
-MisdreavusBackpic: INCBIN "gfx/backpics/lz/200.lz"
-TyrogueBackpic: INCBIN "gfx/backpics/lz/236.lz"
-GeodudeFrontpic: INCBIN "gfx/frontpics/lz/074.lz"
-ScizorBackpic: INCBIN "gfx/backpics/lz/212.lz"
-GirafarigBackpic: INCBIN "gfx/backpics/lz/203.lz"
-StantlerBackpic: INCBIN "gfx/backpics/lz/234.lz"
-SmeargleBackpic: INCBIN "gfx/backpics/lz/235.lz"
-CharizardBackpic: INCBIN "gfx/backpics/lz/006.lz"
-KadabraBackpic: INCBIN "gfx/backpics/lz/064.lz"
-PrimeapeBackpic: INCBIN "gfx/backpics/lz/057.lz"
-FurretBackpic: INCBIN "gfx/backpics/lz/162.lz"
-WartortleBackpic: INCBIN "gfx/backpics/lz/008.lz"
-ExeggcuteBackpic: INCBIN "gfx/backpics/lz/102.lz"
-IgglybuffFrontpic: INCBIN "gfx/frontpics/lz/174.lz"
-RaticateBackpic: INCBIN "gfx/backpics/lz/020.lz"
-VulpixBackpic: INCBIN "gfx/backpics/lz/037.lz"
-EkansBackpic: INCBIN "gfx/backpics/lz/023.lz"
-SeakingBackpic: INCBIN "gfx/backpics/lz/119.lz"
+BlastoiseBackpic: INCBIN "gfx/pics/009/back.lz"
+MisdreavusBackpic: INCBIN "gfx/pics/200/back.lz"
+TyrogueBackpic: INCBIN "gfx/pics/236/back.lz"
+GeodudeFrontpic: INCBIN "gfx/pics/074/front.lz"
+ScizorBackpic: INCBIN "gfx/pics/212/back.lz"
+GirafarigBackpic: INCBIN "gfx/pics/203/back.lz"
+StantlerBackpic: INCBIN "gfx/pics/234/back.lz"
+SmeargleBackpic: INCBIN "gfx/pics/235/back.lz"
+CharizardBackpic: INCBIN "gfx/pics/006/back.lz"
+KadabraBackpic: INCBIN "gfx/pics/064/back.lz"
+PrimeapeBackpic: INCBIN "gfx/pics/057/back.lz"
+FurretBackpic: INCBIN "gfx/pics/162/back.lz"
+WartortleBackpic: INCBIN "gfx/pics/008/back.lz"
+ExeggcuteBackpic: INCBIN "gfx/pics/102/back.lz"
+IgglybuffFrontpic: INCBIN "gfx/pics/174/front.lz"
+RaticateBackpic: INCBIN "gfx/pics/020/back.lz"
+VulpixBackpic: INCBIN "gfx/pics/037/back.lz"
+EkansBackpic: INCBIN "gfx/pics/023/back.lz"
+SeakingBackpic: INCBIN "gfx/pics/119/back.lz"
BurglarPic: INCBIN "gfx/trainers/lz/046.lz"
-PsyduckBackpic: INCBIN "gfx/backpics/lz/054.lz"
-PikachuBackpic: INCBIN "gfx/backpics/lz/025.lz"
-KabutoFrontpic: INCBIN "gfx/frontpics/lz/140.lz"
-MareepBackpic: INCBIN "gfx/backpics/lz/179.lz"
-RemoraidBackpic: INCBIN "gfx/backpics/lz/223.lz"
-DittoFrontpic: INCBIN "gfx/frontpics/lz/132.lz"
-KingdraBackpic: INCBIN "gfx/backpics/lz/230.lz"
+PsyduckBackpic: INCBIN "gfx/pics/054/back.lz"
+PikachuBackpic: INCBIN "gfx/pics/025/back.lz"
+KabutoFrontpic: INCBIN "gfx/pics/140/front.lz"
+MareepBackpic: INCBIN "gfx/pics/179/back.lz"
+RemoraidBackpic: INCBIN "gfx/pics/223/back.lz"
+DittoFrontpic: INCBIN "gfx/pics/132/front.lz"
+KingdraBackpic: INCBIN "gfx/pics/230/back.lz"
CamperPic: INCBIN "gfx/trainers/lz/053.lz"
-WooperFrontpic: INCBIN "gfx/frontpics/lz/194.lz"
-ClefairyBackpic: INCBIN "gfx/backpics/lz/035.lz"
-VenonatBackpic: INCBIN "gfx/backpics/lz/048.lz"
-BellossomBackpic: INCBIN "gfx/backpics/lz/182.lz"
+WooperFrontpic: INCBIN "gfx/pics/194/front.lz"
+ClefairyBackpic: INCBIN "gfx/pics/035/back.lz"
+VenonatBackpic: INCBIN "gfx/pics/048/back.lz"
+BellossomBackpic: INCBIN "gfx/pics/182/back.lz"
Rival1Pic: INCBIN "gfx/trainers/lz/008.lz"
-SwinubBackpic: INCBIN "gfx/backpics/lz/220.lz"
+SwinubBackpic: INCBIN "gfx/pics/220/back.lz"
; 158000
SECTION "bank56",DATA,BANK[$56]
-MewtwoBackpic: INCBIN "gfx/backpics/lz/150.lz"
+MewtwoBackpic: INCBIN "gfx/pics/150/back.lz"
PokemonProfPic: INCBIN "gfx/trainers/lz/009.lz"
CalPic: INCBIN "gfx/trainers/lz/011.lz"
SwimmerfPic: INCBIN "gfx/trainers/lz/038.lz"
-DiglettFrontpic: INCBIN "gfx/frontpics/lz/050.lz"
+DiglettFrontpic: INCBIN "gfx/pics/050/front.lz"
OfficerPic: INCBIN "gfx/trainers/lz/064.lz"
-MukBackpic: INCBIN "gfx/backpics/lz/089.lz"
-DelibirdBackpic: INCBIN "gfx/backpics/lz/225.lz"
+MukBackpic: INCBIN "gfx/pics/089/back.lz"
+DelibirdBackpic: INCBIN "gfx/pics/225/back.lz"
SabrinaPic: INCBIN "gfx/trainers/lz/034.lz"
-MagikarpBackpic: INCBIN "gfx/backpics/lz/129.lz"
-AriadosBackpic: INCBIN "gfx/backpics/lz/168.lz"
-SneaselBackpic: INCBIN "gfx/backpics/lz/215.lz"
-UmbreonBackpic: INCBIN "gfx/backpics/lz/197.lz"
-MurkrowBackpic: INCBIN "gfx/backpics/lz/198.lz"
-IvysaurBackpic: INCBIN "gfx/backpics/lz/002.lz"
-SlowbroBackpic: INCBIN "gfx/backpics/lz/080.lz"
+MagikarpBackpic: INCBIN "gfx/pics/129/back.lz"
+AriadosBackpic: INCBIN "gfx/pics/168/back.lz"
+SneaselBackpic: INCBIN "gfx/pics/215/back.lz"
+UmbreonBackpic: INCBIN "gfx/pics/197/back.lz"
+MurkrowBackpic: INCBIN "gfx/pics/198/back.lz"
+IvysaurBackpic: INCBIN "gfx/pics/002/back.lz"
+SlowbroBackpic: INCBIN "gfx/pics/080/back.lz"
PsychicTPic: INCBIN "gfx/trainers/lz/051.lz"
-GolduckBackpic: INCBIN "gfx/backpics/lz/055.lz"
-WeezingBackpic: INCBIN "gfx/backpics/lz/110.lz"
-EnteiBackpic: INCBIN "gfx/backpics/lz/244.lz"
+GolduckBackpic: INCBIN "gfx/pics/055/back.lz"
+WeezingBackpic: INCBIN "gfx/pics/110/back.lz"
+EnteiBackpic: INCBIN "gfx/pics/244/back.lz"
GruntfPic: INCBIN "gfx/trainers/lz/065.lz"
-HorseaFrontpic: INCBIN "gfx/frontpics/lz/116.lz"
-PidgeotBackpic: INCBIN "gfx/backpics/lz/018.lz"
-HoOhBackpic: INCBIN "gfx/backpics/lz/250.lz"
-PoliwhirlBackpic: INCBIN "gfx/backpics/lz/061.lz"
-MewBackpic: INCBIN "gfx/backpics/lz/151.lz"
-MachopBackpic: INCBIN "gfx/backpics/lz/066.lz"
-AbraBackpic: INCBIN "gfx/backpics/lz/063.lz"
-AerodactylBackpic: INCBIN "gfx/backpics/lz/142.lz"
-KakunaFrontpic: INCBIN "gfx/frontpics/lz/014.lz"
-DugtrioBackpic: INCBIN "gfx/backpics/lz/051.lz"
-WeepinbellBackpic: INCBIN "gfx/backpics/lz/070.lz"
-NidoranFBackpic: INCBIN "gfx/backpics/lz/029.lz"
-GravelerBackpic: INCBIN "gfx/backpics/lz/075.lz"
-AipomBackpic: INCBIN "gfx/backpics/lz/190.lz"
-EspeonBackpic: INCBIN "gfx/backpics/lz/196.lz"
-WeedleFrontpic: INCBIN "gfx/frontpics/lz/013.lz"
-TotodileBackpic: INCBIN "gfx/backpics/lz/158.lz"
-SnubbullBackpic: INCBIN "gfx/backpics/lz/209.lz"
-KinglerBackpic: INCBIN "gfx/backpics/lz/099.lz"
-GengarBackpic: INCBIN "gfx/backpics/lz/094.lz"
-RattataBackpic: INCBIN "gfx/backpics/lz/019.lz"
+HorseaFrontpic: INCBIN "gfx/pics/116/front.lz"
+PidgeotBackpic: INCBIN "gfx/pics/018/back.lz"
+HoOhBackpic: INCBIN "gfx/pics/250/back.lz"
+PoliwhirlBackpic: INCBIN "gfx/pics/061/back.lz"
+MewBackpic: INCBIN "gfx/pics/151/back.lz"
+MachopBackpic: INCBIN "gfx/pics/066/back.lz"
+AbraBackpic: INCBIN "gfx/pics/063/back.lz"
+AerodactylBackpic: INCBIN "gfx/pics/142/back.lz"
+KakunaFrontpic: INCBIN "gfx/pics/014/front.lz"
+DugtrioBackpic: INCBIN "gfx/pics/051/back.lz"
+WeepinbellBackpic: INCBIN "gfx/pics/070/back.lz"
+NidoranFBackpic: INCBIN "gfx/pics/029/back.lz"
+GravelerBackpic: INCBIN "gfx/pics/075/back.lz"
+AipomBackpic: INCBIN "gfx/pics/190/back.lz"
+EspeonBackpic: INCBIN "gfx/pics/196/back.lz"
+WeedleFrontpic: INCBIN "gfx/pics/013/front.lz"
+TotodileBackpic: INCBIN "gfx/pics/158/back.lz"
+SnubbullBackpic: INCBIN "gfx/pics/209/back.lz"
+KinglerBackpic: INCBIN "gfx/pics/099/back.lz"
+GengarBackpic: INCBIN "gfx/pics/094/back.lz"
+RattataBackpic: INCBIN "gfx/pics/019/back.lz"
YoungsterPic: INCBIN "gfx/trainers/lz/021.lz"
WillPic: INCBIN "gfx/trainers/lz/010.lz"
SchoolboyPic: INCBIN "gfx/trainers/lz/022.lz"
-MagnemiteFrontpic: INCBIN "gfx/frontpics/lz/081.lz"
+MagnemiteFrontpic: INCBIN "gfx/pics/081/front.lz"
ErikaPic: INCBIN "gfx/trainers/lz/020.lz"
JaninePic: INCBIN "gfx/trainers/lz/025.lz"
-MagnemiteBackpic: INCBIN "gfx/backpics/lz/081.lz"
+MagnemiteBackpic: INCBIN "gfx/pics/081/back.lz"
; 15bffa
SECTION "bank57",DATA,BANK[$57]
-HoothootBackpic: INCBIN "gfx/backpics/lz/163.lz"
-NoctowlBackpic: INCBIN "gfx/backpics/lz/164.lz"
+HoothootBackpic: INCBIN "gfx/pics/163/back.lz"
+NoctowlBackpic: INCBIN "gfx/pics/164/back.lz"
MortyPic: INCBIN "gfx/trainers/lz/003.lz"
-SlugmaBackpic: INCBIN "gfx/backpics/lz/218.lz"
-KabutoBackpic: INCBIN "gfx/backpics/lz/140.lz"
-VictreebelBackpic: INCBIN "gfx/backpics/lz/071.lz"
-MeowthBackpic: INCBIN "gfx/backpics/lz/052.lz"
-MeganiumBackpic: INCBIN "gfx/backpics/lz/154.lz"
+SlugmaBackpic: INCBIN "gfx/pics/218/back.lz"
+KabutoBackpic: INCBIN "gfx/pics/140/back.lz"
+VictreebelBackpic: INCBIN "gfx/pics/071/back.lz"
+MeowthBackpic: INCBIN "gfx/pics/052/back.lz"
+MeganiumBackpic: INCBIN "gfx/pics/154/back.lz"
PicnickerPic: INCBIN "gfx/trainers/lz/052.lz"
-LickitungBackpic: INCBIN "gfx/backpics/lz/108.lz"
-TogepiFrontpic: INCBIN "gfx/frontpics/lz/175.lz"
+LickitungBackpic: INCBIN "gfx/pics/108/back.lz"
+TogepiFrontpic: INCBIN "gfx/pics/175/front.lz"
SuperNerdPic: INCBIN "gfx/trainers/lz/040.lz"
-HaunterBackpic: INCBIN "gfx/backpics/lz/093.lz"
-XatuBackpic: INCBIN "gfx/backpics/lz/178.lz"
+HaunterBackpic: INCBIN "gfx/pics/093/back.lz"
+XatuBackpic: INCBIN "gfx/pics/178/back.lz"
RedPic: INCBIN "gfx/trainers/lz/062.lz"
-Porygon2Backpic: INCBIN "gfx/backpics/lz/233.lz"
+Porygon2Backpic: INCBIN "gfx/pics/233/back.lz"
JasminePic: INCBIN "gfx/trainers/lz/005.lz"
-PinecoBackpic: INCBIN "gfx/backpics/lz/204.lz"
-MetapodFrontpic: INCBIN "gfx/frontpics/lz/011.lz"
-SeelBackpic: INCBIN "gfx/backpics/lz/086.lz"
-QuagsireBackpic: INCBIN "gfx/backpics/lz/195.lz"
+PinecoBackpic: INCBIN "gfx/pics/204/back.lz"
+MetapodFrontpic: INCBIN "gfx/pics/011/front.lz"
+SeelBackpic: INCBIN "gfx/pics/086/back.lz"
+QuagsireBackpic: INCBIN "gfx/pics/195/back.lz"
WhitneyPic: INCBIN "gfx/trainers/lz/001.lz"
-JolteonBackpic: INCBIN "gfx/backpics/lz/135.lz"
-CaterpieFrontpic: INCBIN "gfx/frontpics/lz/010.lz"
-HoppipBackpic: INCBIN "gfx/backpics/lz/187.lz"
+JolteonBackpic: INCBIN "gfx/pics/135/back.lz"
+CaterpieFrontpic: INCBIN "gfx/pics/010/front.lz"
+HoppipBackpic: INCBIN "gfx/pics/187/back.lz"
BluePic: INCBIN "gfx/trainers/lz/063.lz"
-GranbullBackpic: INCBIN "gfx/backpics/lz/210.lz"
+GranbullBackpic: INCBIN "gfx/pics/210/back.lz"
GentlemanPic: INCBIN "gfx/trainers/lz/031.lz"
ExecutivemPic: INCBIN "gfx/trainers/lz/050.lz"
-SpearowBackpic: INCBIN "gfx/backpics/lz/021.lz"
-SunkernBackpic: INCBIN "gfx/backpics/lz/191.lz"
-LaprasBackpic: INCBIN "gfx/backpics/lz/131.lz"
-MagbyBackpic: INCBIN "gfx/backpics/lz/240.lz"
-DragonairBackpic: INCBIN "gfx/backpics/lz/148.lz"
-ZapdosBackpic: INCBIN "gfx/backpics/lz/145.lz"
-ChikoritaBackpic: INCBIN "gfx/backpics/lz/152.lz"
-CorsolaBackpic: INCBIN "gfx/backpics/lz/222.lz"
-ChinchouBackpic: INCBIN "gfx/backpics/lz/170.lz"
-ChanseyBackpic: INCBIN "gfx/backpics/lz/113.lz"
-SkiploomBackpic: INCBIN "gfx/backpics/lz/188.lz"
-SpinarakFrontpic: INCBIN "gfx/frontpics/lz/167.lz"
+SpearowBackpic: INCBIN "gfx/pics/021/back.lz"
+SunkernBackpic: INCBIN "gfx/pics/191/back.lz"
+LaprasBackpic: INCBIN "gfx/pics/131/back.lz"
+MagbyBackpic: INCBIN "gfx/pics/240/back.lz"
+DragonairBackpic: INCBIN "gfx/pics/148/back.lz"
+ZapdosBackpic: INCBIN "gfx/pics/145/back.lz"
+ChikoritaBackpic: INCBIN "gfx/pics/152/back.lz"
+CorsolaBackpic: INCBIN "gfx/pics/222/back.lz"
+ChinchouBackpic: INCBIN "gfx/pics/170/back.lz"
+ChanseyBackpic: INCBIN "gfx/pics/113/back.lz"
+SkiploomBackpic: INCBIN "gfx/pics/188/back.lz"
+SpinarakFrontpic: INCBIN "gfx/pics/167/front.lz"
Rival2Pic: INCBIN "gfx/trainers/lz/041.lz"
-UnownWFrontpic: INCBIN "gfx/frontpics/lz/201w.lz"
-CharmanderBackpic: INCBIN "gfx/backpics/lz/004.lz"
-RhyhornBackpic: INCBIN "gfx/backpics/lz/111.lz"
-UnownCFrontpic: INCBIN "gfx/frontpics/lz/201c.lz"
+UnownWFrontpic: INCBIN "gfx/pics/201w/front.lz"
+CharmanderBackpic: INCBIN "gfx/pics/004/back.lz"
+RhyhornBackpic: INCBIN "gfx/pics/111/back.lz"
+UnownCFrontpic: INCBIN "gfx/pics/201c/front.lz"
MistyPic: INCBIN "gfx/trainers/lz/017.lz"
BlainePic: INCBIN "gfx/trainers/lz/045.lz"
-UnownZFrontpic: INCBIN "gfx/frontpics/lz/201z.lz"
-SwinubFrontpic: INCBIN "gfx/frontpics/lz/220.lz"
-LarvitarBackpic: INCBIN "gfx/backpics/lz/246.lz"
-PorygonBackpic: INCBIN "gfx/backpics/lz/137.lz"
-UnownHBackpic: INCBIN "gfx/backpics/lz/201h.lz"
+UnownZFrontpic: INCBIN "gfx/pics/201z/front.lz"
+SwinubFrontpic: INCBIN "gfx/pics/220/front.lz"
+LarvitarBackpic: INCBIN "gfx/pics/246/back.lz"
+PorygonBackpic: INCBIN "gfx/pics/137/back.lz"
+UnownHBackpic: INCBIN "gfx/pics/201h/back.lz"
; 15ffff
SECTION "bank58",DATA,BANK[$58]
-ParasBackpic: INCBIN "gfx/backpics/lz/046.lz"
-VaporeonBackpic: INCBIN "gfx/backpics/lz/134.lz"
-TentacoolBackpic: INCBIN "gfx/backpics/lz/072.lz"
+ParasBackpic: INCBIN "gfx/pics/046/back.lz"
+VaporeonBackpic: INCBIN "gfx/pics/134/back.lz"
+TentacoolBackpic: INCBIN "gfx/pics/072/back.lz"
ExecutivefPic: INCBIN "gfx/trainers/lz/054.lz"
-BulbasaurBackpic: INCBIN "gfx/backpics/lz/001.lz"
-SmoochumBackpic: INCBIN "gfx/backpics/lz/238.lz"
-PichuBackpic: INCBIN "gfx/backpics/lz/172.lz"
-HoundoomBackpic: INCBIN "gfx/backpics/lz/229.lz"
-BellsproutBackpic: INCBIN "gfx/backpics/lz/069.lz"
-GrimerBackpic: INCBIN "gfx/backpics/lz/088.lz"
-LanturnBackpic: INCBIN "gfx/backpics/lz/171.lz"
-PidgeottoBackpic: INCBIN "gfx/backpics/lz/017.lz"
-StaryuBackpic: INCBIN "gfx/backpics/lz/120.lz"
-MrMimeBackpic: INCBIN "gfx/backpics/lz/122.lz"
-CaterpieBackpic: INCBIN "gfx/backpics/lz/010.lz"
-VoltorbFrontpic: INCBIN "gfx/frontpics/lz/100.lz"
-LugiaBackpic: INCBIN "gfx/backpics/lz/249.lz"
+BulbasaurBackpic: INCBIN "gfx/pics/001/back.lz"
+SmoochumBackpic: INCBIN "gfx/pics/238/back.lz"
+PichuBackpic: INCBIN "gfx/pics/172/back.lz"
+HoundoomBackpic: INCBIN "gfx/pics/229/back.lz"
+BellsproutBackpic: INCBIN "gfx/pics/069/back.lz"
+GrimerBackpic: INCBIN "gfx/pics/088/back.lz"
+LanturnBackpic: INCBIN "gfx/pics/171/back.lz"
+PidgeottoBackpic: INCBIN "gfx/pics/017/back.lz"
+StaryuBackpic: INCBIN "gfx/pics/120/back.lz"
+MrMimeBackpic: INCBIN "gfx/pics/122/back.lz"
+CaterpieBackpic: INCBIN "gfx/pics/010/back.lz"
+VoltorbFrontpic: INCBIN "gfx/pics/100/front.lz"
+LugiaBackpic: INCBIN "gfx/pics/249/back.lz"
PrycePic: INCBIN "gfx/trainers/lz/004.lz"
BrockPic: INCBIN "gfx/trainers/lz/016.lz"
-UnownGFrontpic: INCBIN "gfx/frontpics/lz/201g.lz"
-ArbokBackpic: INCBIN "gfx/backpics/lz/024.lz"
-PolitoedBackpic: INCBIN "gfx/backpics/lz/186.lz"
-DragoniteBackpic: INCBIN "gfx/backpics/lz/149.lz"
-HitmonleeBackpic: INCBIN "gfx/backpics/lz/106.lz"
-NatuFrontpic: INCBIN "gfx/frontpics/lz/177.lz"
-UrsaringBackpic: INCBIN "gfx/backpics/lz/217.lz"
+UnownGFrontpic: INCBIN "gfx/pics/201g/front.lz"
+ArbokBackpic: INCBIN "gfx/pics/024/back.lz"
+PolitoedBackpic: INCBIN "gfx/pics/186/back.lz"
+DragoniteBackpic: INCBIN "gfx/pics/149/back.lz"
+HitmonleeBackpic: INCBIN "gfx/pics/106/back.lz"
+NatuFrontpic: INCBIN "gfx/pics/177/front.lz"
+UrsaringBackpic: INCBIN "gfx/pics/217/back.lz"
SagePic: INCBIN "gfx/trainers/lz/055.lz"
-TeddiursaBackpic: INCBIN "gfx/backpics/lz/216.lz"
-PhanpyBackpic: INCBIN "gfx/backpics/lz/231.lz"
-UnownVFrontpic: INCBIN "gfx/frontpics/lz/201v.lz"
-KakunaBackpic: INCBIN "gfx/backpics/lz/014.lz"
-WobbuffetBackpic: INCBIN "gfx/backpics/lz/202.lz"
-TogepiBackpic: INCBIN "gfx/backpics/lz/175.lz"
-CrobatBackpic: INCBIN "gfx/backpics/lz/169.lz"
-BlisseyBackpic: INCBIN "gfx/backpics/lz/242.lz"
-AmpharosBackpic: INCBIN "gfx/backpics/lz/181.lz"
-IgglybuffBackpic: INCBIN "gfx/backpics/lz/174.lz"
-AzumarillBackpic: INCBIN "gfx/backpics/lz/184.lz"
-OctilleryBackpic: INCBIN "gfx/backpics/lz/224.lz"
-UnownSFrontpic: INCBIN "gfx/frontpics/lz/201s.lz"
-HorseaBackpic: INCBIN "gfx/backpics/lz/116.lz"
-SentretBackpic: INCBIN "gfx/backpics/lz/161.lz"
-UnownOFrontpic: INCBIN "gfx/frontpics/lz/201o.lz"
-UnownTFrontpic: INCBIN "gfx/frontpics/lz/201t.lz"
-WigglytuffBackpic: INCBIN "gfx/backpics/lz/040.lz"
-ArticunoBackpic: INCBIN "gfx/backpics/lz/144.lz"
-DittoBackpic: INCBIN "gfx/backpics/lz/132.lz"
-WeedleBackpic: INCBIN "gfx/backpics/lz/013.lz"
-UnownHFrontpic: INCBIN "gfx/frontpics/lz/201h.lz"
-CleffaBackpic: INCBIN "gfx/backpics/lz/173.lz"
-DrowzeeBackpic: INCBIN "gfx/backpics/lz/096.lz"
-GastlyBackpic: INCBIN "gfx/backpics/lz/092.lz"
-FearowBackpic: INCBIN "gfx/backpics/lz/022.lz"
-MarillBackpic: INCBIN "gfx/backpics/lz/183.lz"
-DratiniBackpic: INCBIN "gfx/backpics/lz/147.lz"
-ElectrodeBackpic: INCBIN "gfx/backpics/lz/101.lz"
-SkarmoryBackpic: INCBIN "gfx/backpics/lz/227.lz"
-MetapodBackpic: INCBIN "gfx/backpics/lz/011.lz"
-JigglypuffBackpic: INCBIN "gfx/backpics/lz/039.lz"
-OddishBackpic: INCBIN "gfx/backpics/lz/043.lz"
-UnownDBackpic: INCBIN "gfx/backpics/lz/201d.lz"
+TeddiursaBackpic: INCBIN "gfx/pics/216/back.lz"
+PhanpyBackpic: INCBIN "gfx/pics/231/back.lz"
+UnownVFrontpic: INCBIN "gfx/pics/201v/front.lz"
+KakunaBackpic: INCBIN "gfx/pics/014/back.lz"
+WobbuffetBackpic: INCBIN "gfx/pics/202/back.lz"
+TogepiBackpic: INCBIN "gfx/pics/175/back.lz"
+CrobatBackpic: INCBIN "gfx/pics/169/back.lz"
+BlisseyBackpic: INCBIN "gfx/pics/242/back.lz"
+AmpharosBackpic: INCBIN "gfx/pics/181/back.lz"
+IgglybuffBackpic: INCBIN "gfx/pics/174/back.lz"
+AzumarillBackpic: INCBIN "gfx/pics/184/back.lz"
+OctilleryBackpic: INCBIN "gfx/pics/224/back.lz"
+UnownSFrontpic: INCBIN "gfx/pics/201s/front.lz"
+HorseaBackpic: INCBIN "gfx/pics/116/back.lz"
+SentretBackpic: INCBIN "gfx/pics/161/back.lz"
+UnownOFrontpic: INCBIN "gfx/pics/201o/front.lz"
+UnownTFrontpic: INCBIN "gfx/pics/201t/front.lz"
+WigglytuffBackpic: INCBIN "gfx/pics/040/back.lz"
+ArticunoBackpic: INCBIN "gfx/pics/144/back.lz"
+DittoBackpic: INCBIN "gfx/pics/132/back.lz"
+WeedleBackpic: INCBIN "gfx/pics/013/back.lz"
+UnownHFrontpic: INCBIN "gfx/pics/201h/front.lz"
+CleffaBackpic: INCBIN "gfx/pics/173/back.lz"
+DrowzeeBackpic: INCBIN "gfx/pics/096/back.lz"
+GastlyBackpic: INCBIN "gfx/pics/092/back.lz"
+FearowBackpic: INCBIN "gfx/pics/022/back.lz"
+MarillBackpic: INCBIN "gfx/pics/183/back.lz"
+DratiniBackpic: INCBIN "gfx/pics/147/back.lz"
+ElectrodeBackpic: INCBIN "gfx/pics/101/back.lz"
+SkarmoryBackpic: INCBIN "gfx/pics/227/back.lz"
+MetapodBackpic: INCBIN "gfx/pics/011/back.lz"
+JigglypuffBackpic: INCBIN "gfx/pics/039/back.lz"
+OddishBackpic: INCBIN "gfx/pics/043/back.lz"
+UnownDBackpic: INCBIN "gfx/pics/201d/back.lz"
; 163ffc
SECTION "bank59",DATA,BANK[$59]
-SpinarakBackpic: INCBIN "gfx/backpics/lz/167.lz"
-RaikouBackpic: INCBIN "gfx/backpics/lz/243.lz"
-UnownKFrontpic: INCBIN "gfx/frontpics/lz/201k.lz"
-HoundourBackpic: INCBIN "gfx/backpics/lz/228.lz"
-PoliwagBackpic: INCBIN "gfx/backpics/lz/060.lz"
-SquirtleBackpic: INCBIN "gfx/backpics/lz/007.lz"
-ShuckleBackpic: INCBIN "gfx/backpics/lz/213.lz"
-DewgongBackpic: INCBIN "gfx/backpics/lz/087.lz"
-UnownBFrontpic: INCBIN "gfx/frontpics/lz/201b.lz"
-SlowpokeBackpic: INCBIN "gfx/backpics/lz/079.lz"
-DunsparceBackpic: INCBIN "gfx/backpics/lz/206.lz"
-DonphanBackpic: INCBIN "gfx/backpics/lz/232.lz"
-WooperBackpic: INCBIN "gfx/backpics/lz/194.lz"
-TaurosBackpic: INCBIN "gfx/backpics/lz/128.lz"
-UnownXFrontpic: INCBIN "gfx/frontpics/lz/201x.lz"
-UnownNFrontpic: INCBIN "gfx/frontpics/lz/201n.lz"
-TangelaBackpic: INCBIN "gfx/backpics/lz/114.lz"
-VoltorbBackpic: INCBIN "gfx/backpics/lz/100.lz"
-UnownJFrontpic: INCBIN "gfx/frontpics/lz/201j.lz"
-MantineBackpic: INCBIN "gfx/backpics/lz/226.lz"
-UnownLFrontpic: INCBIN "gfx/frontpics/lz/201l.lz"
-PiloswineBackpic: INCBIN "gfx/backpics/lz/221.lz"
-UnownMFrontpic: INCBIN "gfx/frontpics/lz/201m.lz"
-UnownFFrontpic: INCBIN "gfx/frontpics/lz/201f.lz"
-NatuBackpic: INCBIN "gfx/backpics/lz/177.lz"
-UnownAFrontpic: INCBIN "gfx/frontpics/lz/201a.lz"
-GolemBackpic: INCBIN "gfx/backpics/lz/076.lz"
-UnownUFrontpic: INCBIN "gfx/frontpics/lz/201u.lz"
-DiglettBackpic: INCBIN "gfx/backpics/lz/050.lz"
-UnownQFrontpic: INCBIN "gfx/frontpics/lz/201q.lz"
-UnownPFrontpic: INCBIN "gfx/frontpics/lz/201p.lz"
-UnownCBackpic: INCBIN "gfx/backpics/lz/201c.lz"
-JynxBackpic: INCBIN "gfx/backpics/lz/124.lz"
-GolbatBackpic: INCBIN "gfx/backpics/lz/042.lz"
-UnownYFrontpic: INCBIN "gfx/frontpics/lz/201y.lz"
-UnownGBackpic: INCBIN "gfx/backpics/lz/201g.lz"
-UnownIFrontpic: INCBIN "gfx/frontpics/lz/201i.lz"
-UnownVBackpic: INCBIN "gfx/backpics/lz/201v.lz"
-ForretressBackpic: INCBIN "gfx/backpics/lz/205.lz"
-UnownSBackpic: INCBIN "gfx/backpics/lz/201s.lz"
-UnownRFrontpic: INCBIN "gfx/frontpics/lz/201r.lz"
-UnownEBackpic: INCBIN "gfx/backpics/lz/201e.lz"
-UnownJBackpic: INCBIN "gfx/backpics/lz/201j.lz"
-UnownBBackpic: INCBIN "gfx/backpics/lz/201b.lz"
-UnownOBackpic: INCBIN "gfx/backpics/lz/201o.lz"
-UnownZBackpic: INCBIN "gfx/backpics/lz/201z.lz"
-UnownWBackpic: INCBIN "gfx/backpics/lz/201w.lz"
-UnownNBackpic: INCBIN "gfx/backpics/lz/201n.lz"
-UnownABackpic: INCBIN "gfx/backpics/lz/201a.lz"
-UnownMBackpic: INCBIN "gfx/backpics/lz/201m.lz"
-UnownKBackpic: INCBIN "gfx/backpics/lz/201k.lz"
-UnownTBackpic: INCBIN "gfx/backpics/lz/201t.lz"
-UnownXBackpic: INCBIN "gfx/backpics/lz/201x.lz"
-UnownLBackpic: INCBIN "gfx/backpics/lz/201l.lz"
-UnownUBackpic: INCBIN "gfx/backpics/lz/201u.lz"
-UnownQBackpic: INCBIN "gfx/backpics/lz/201q.lz"
-UnownYBackpic: INCBIN "gfx/backpics/lz/201y.lz"
-UnownPBackpic: INCBIN "gfx/backpics/lz/201p.lz"
-UnownIBackpic: INCBIN "gfx/backpics/lz/201i.lz"
-UnownRBackpic: INCBIN "gfx/backpics/lz/201r.lz"
+SpinarakBackpic: INCBIN "gfx/pics/167/back.lz"
+RaikouBackpic: INCBIN "gfx/pics/243/back.lz"
+UnownKFrontpic: INCBIN "gfx/pics/201k/front.lz"
+HoundourBackpic: INCBIN "gfx/pics/228/back.lz"
+PoliwagBackpic: INCBIN "gfx/pics/060/back.lz"
+SquirtleBackpic: INCBIN "gfx/pics/007/back.lz"
+ShuckleBackpic: INCBIN "gfx/pics/213/back.lz"
+DewgongBackpic: INCBIN "gfx/pics/087/back.lz"
+UnownBFrontpic: INCBIN "gfx/pics/201b/front.lz"
+SlowpokeBackpic: INCBIN "gfx/pics/079/back.lz"
+DunsparceBackpic: INCBIN "gfx/pics/206/back.lz"
+DonphanBackpic: INCBIN "gfx/pics/232/back.lz"
+WooperBackpic: INCBIN "gfx/pics/194/back.lz"
+TaurosBackpic: INCBIN "gfx/pics/128/back.lz"
+UnownXFrontpic: INCBIN "gfx/pics/201x/front.lz"
+UnownNFrontpic: INCBIN "gfx/pics/201n/front.lz"
+TangelaBackpic: INCBIN "gfx/pics/114/back.lz"
+VoltorbBackpic: INCBIN "gfx/pics/100/back.lz"
+UnownJFrontpic: INCBIN "gfx/pics/201j/front.lz"
+MantineBackpic: INCBIN "gfx/pics/226/back.lz"
+UnownLFrontpic: INCBIN "gfx/pics/201l/front.lz"
+PiloswineBackpic: INCBIN "gfx/pics/221/back.lz"
+UnownMFrontpic: INCBIN "gfx/pics/201m/front.lz"
+UnownFFrontpic: INCBIN "gfx/pics/201f/front.lz"
+NatuBackpic: INCBIN "gfx/pics/177/back.lz"
+UnownAFrontpic: INCBIN "gfx/pics/201a/front.lz"
+GolemBackpic: INCBIN "gfx/pics/076/back.lz"
+UnownUFrontpic: INCBIN "gfx/pics/201u/front.lz"
+DiglettBackpic: INCBIN "gfx/pics/050/back.lz"
+UnownQFrontpic: INCBIN "gfx/pics/201q/front.lz"
+UnownPFrontpic: INCBIN "gfx/pics/201p/front.lz"
+UnownCBackpic: INCBIN "gfx/pics/201c/back.lz"
+JynxBackpic: INCBIN "gfx/pics/124/back.lz"
+GolbatBackpic: INCBIN "gfx/pics/042/back.lz"
+UnownYFrontpic: INCBIN "gfx/pics/201y/front.lz"
+UnownGBackpic: INCBIN "gfx/pics/201g/back.lz"
+UnownIFrontpic: INCBIN "gfx/pics/201i/front.lz"
+UnownVBackpic: INCBIN "gfx/pics/201v/back.lz"
+ForretressBackpic: INCBIN "gfx/pics/205/back.lz"
+UnownSBackpic: INCBIN "gfx/pics/201s/back.lz"
+UnownRFrontpic: INCBIN "gfx/pics/201r/front.lz"
+UnownEBackpic: INCBIN "gfx/pics/201e/back.lz"
+UnownJBackpic: INCBIN "gfx/pics/201j/back.lz"
+UnownBBackpic: INCBIN "gfx/pics/201b/back.lz"
+UnownOBackpic: INCBIN "gfx/pics/201o/back.lz"
+UnownZBackpic: INCBIN "gfx/pics/201z/back.lz"
+UnownWBackpic: INCBIN "gfx/pics/201w/back.lz"
+UnownNBackpic: INCBIN "gfx/pics/201n/back.lz"
+UnownABackpic: INCBIN "gfx/pics/201a/back.lz"
+UnownMBackpic: INCBIN "gfx/pics/201m/back.lz"
+UnownKBackpic: INCBIN "gfx/pics/201k/back.lz"
+UnownTBackpic: INCBIN "gfx/pics/201t/back.lz"
+UnownXBackpic: INCBIN "gfx/pics/201x/back.lz"
+UnownLBackpic: INCBIN "gfx/pics/201l/back.lz"
+UnownUBackpic: INCBIN "gfx/pics/201u/back.lz"
+UnownQBackpic: INCBIN "gfx/pics/201q/back.lz"
+UnownYBackpic: INCBIN "gfx/pics/201y/back.lz"
+UnownPBackpic: INCBIN "gfx/pics/201p/back.lz"
+UnownIBackpic: INCBIN "gfx/pics/201i/back.lz"
+UnownRBackpic: INCBIN "gfx/pics/201r/back.lz"
; 1669d3
@@ -91403,66 +94461,66 @@ SECTION "bank5A",DATA,BANK[$5A]
; This bank is completely identical to bank 59!
; It's also unreferenced, so it's a free bank
-INCBIN "gfx/backpics/lz/167.lz"
-INCBIN "gfx/backpics/lz/243.lz"
-INCBIN "gfx/frontpics/lz/201k.lz"
-INCBIN "gfx/backpics/lz/228.lz"
-INCBIN "gfx/backpics/lz/060.lz"
-INCBIN "gfx/backpics/lz/007.lz"
-INCBIN "gfx/backpics/lz/213.lz"
-INCBIN "gfx/backpics/lz/087.lz"
-INCBIN "gfx/frontpics/lz/201b.lz"
-INCBIN "gfx/backpics/lz/079.lz"
-INCBIN "gfx/backpics/lz/206.lz"
-INCBIN "gfx/backpics/lz/232.lz"
-INCBIN "gfx/backpics/lz/194.lz"
-INCBIN "gfx/backpics/lz/128.lz"
-INCBIN "gfx/frontpics/lz/201x.lz"
-INCBIN "gfx/frontpics/lz/201n.lz"
-INCBIN "gfx/backpics/lz/114.lz"
-INCBIN "gfx/backpics/lz/100.lz"
-INCBIN "gfx/frontpics/lz/201j.lz"
-INCBIN "gfx/backpics/lz/226.lz"
-INCBIN "gfx/frontpics/lz/201l.lz"
-INCBIN "gfx/backpics/lz/221.lz"
-INCBIN "gfx/frontpics/lz/201m.lz"
-INCBIN "gfx/frontpics/lz/201f.lz"
-INCBIN "gfx/backpics/lz/177.lz"
-INCBIN "gfx/frontpics/lz/201a.lz"
-INCBIN "gfx/backpics/lz/076.lz"
-INCBIN "gfx/frontpics/lz/201u.lz"
-INCBIN "gfx/backpics/lz/050.lz"
-INCBIN "gfx/frontpics/lz/201q.lz"
-INCBIN "gfx/frontpics/lz/201p.lz"
-INCBIN "gfx/backpics/lz/201c.lz"
-INCBIN "gfx/backpics/lz/124.lz"
-INCBIN "gfx/backpics/lz/042.lz"
-INCBIN "gfx/frontpics/lz/201y.lz"
-INCBIN "gfx/backpics/lz/201g.lz"
-INCBIN "gfx/frontpics/lz/201i.lz"
-INCBIN "gfx/backpics/lz/201v.lz"
-INCBIN "gfx/backpics/lz/205.lz"
-INCBIN "gfx/backpics/lz/201s.lz"
-INCBIN "gfx/frontpics/lz/201r.lz"
-INCBIN "gfx/backpics/lz/201e.lz"
-INCBIN "gfx/backpics/lz/201j.lz"
-INCBIN "gfx/backpics/lz/201b.lz"
-INCBIN "gfx/backpics/lz/201o.lz"
-INCBIN "gfx/backpics/lz/201z.lz"
-INCBIN "gfx/backpics/lz/201w.lz"
-INCBIN "gfx/backpics/lz/201n.lz"
-INCBIN "gfx/backpics/lz/201a.lz"
-INCBIN "gfx/backpics/lz/201m.lz"
-INCBIN "gfx/backpics/lz/201k.lz"
-INCBIN "gfx/backpics/lz/201t.lz"
-INCBIN "gfx/backpics/lz/201x.lz"
-INCBIN "gfx/backpics/lz/201l.lz"
-INCBIN "gfx/backpics/lz/201u.lz"
-INCBIN "gfx/backpics/lz/201q.lz"
-INCBIN "gfx/backpics/lz/201y.lz"
-INCBIN "gfx/backpics/lz/201p.lz"
-INCBIN "gfx/backpics/lz/201i.lz"
-INCBIN "gfx/backpics/lz/201r.lz"
+INCBIN "gfx/pics/167/back.lz"
+INCBIN "gfx/pics/243/back.lz"
+INCBIN "gfx/pics/201k/front.lz"
+INCBIN "gfx/pics/228/back.lz"
+INCBIN "gfx/pics/060/back.lz"
+INCBIN "gfx/pics/007/back.lz"
+INCBIN "gfx/pics/213/back.lz"
+INCBIN "gfx/pics/087/back.lz"
+INCBIN "gfx/pics/201b/front.lz"
+INCBIN "gfx/pics/079/back.lz"
+INCBIN "gfx/pics/206/back.lz"
+INCBIN "gfx/pics/232/back.lz"
+INCBIN "gfx/pics/194/back.lz"
+INCBIN "gfx/pics/128/back.lz"
+INCBIN "gfx/pics/201x/front.lz"
+INCBIN "gfx/pics/201n/front.lz"
+INCBIN "gfx/pics/114/back.lz"
+INCBIN "gfx/pics/100/back.lz"
+INCBIN "gfx/pics/201j/front.lz"
+INCBIN "gfx/pics/226/back.lz"
+INCBIN "gfx/pics/201l/front.lz"
+INCBIN "gfx/pics/221/back.lz"
+INCBIN "gfx/pics/201m/front.lz"
+INCBIN "gfx/pics/201f/front.lz"
+INCBIN "gfx/pics/177/back.lz"
+INCBIN "gfx/pics/201a/front.lz"
+INCBIN "gfx/pics/076/back.lz"
+INCBIN "gfx/pics/201u/front.lz"
+INCBIN "gfx/pics/050/back.lz"
+INCBIN "gfx/pics/201q/front.lz"
+INCBIN "gfx/pics/201p/front.lz"
+INCBIN "gfx/pics/201c/back.lz"
+INCBIN "gfx/pics/124/back.lz"
+INCBIN "gfx/pics/042/back.lz"
+INCBIN "gfx/pics/201y/front.lz"
+INCBIN "gfx/pics/201g/back.lz"
+INCBIN "gfx/pics/201i/front.lz"
+INCBIN "gfx/pics/201v/back.lz"
+INCBIN "gfx/pics/205/back.lz"
+INCBIN "gfx/pics/201s/back.lz"
+INCBIN "gfx/pics/201r/front.lz"
+INCBIN "gfx/pics/201e/back.lz"
+INCBIN "gfx/pics/201j/back.lz"
+INCBIN "gfx/pics/201b/back.lz"
+INCBIN "gfx/pics/201o/back.lz"
+INCBIN "gfx/pics/201z/back.lz"
+INCBIN "gfx/pics/201w/back.lz"
+INCBIN "gfx/pics/201n/back.lz"
+INCBIN "gfx/pics/201a/back.lz"
+INCBIN "gfx/pics/201m/back.lz"
+INCBIN "gfx/pics/201k/back.lz"
+INCBIN "gfx/pics/201t/back.lz"
+INCBIN "gfx/pics/201x/back.lz"
+INCBIN "gfx/pics/201l/back.lz"
+INCBIN "gfx/pics/201u/back.lz"
+INCBIN "gfx/pics/201q/back.lz"
+INCBIN "gfx/pics/201y/back.lz"
+INCBIN "gfx/pics/201p/back.lz"
+INCBIN "gfx/pics/201i/back.lz"
+INCBIN "gfx/pics/201r/back.lz"
SECTION "bank5B",DATA,BANK[$5B]
@@ -91513,7 +94571,12 @@ Music_MobileCenter: ; 0x17961d
INCLUDE "music/mobilecenter.asm"
; 0x17982d
-INCBIN "baserom.gbc",$17982d, $17b629 - $17982d
+INCBIN "baserom.gbc",$17982d, $1799ef - $17982d
+
+MobileAdapterGFX:
+INCBIN "gfx/misc/mobile_adapter.2bpp"
+
+INCBIN "baserom.gbc",$17a68f, $17b629 - $17a68f
SECTION "bank5F",DATA,BANK[$5F]
@@ -131508,7 +134571,949 @@ Route28FamousSpeechHouse_MapEventHeader: ; 0x1ae762
SECTION "bank6C",DATA,BANK[$6C]
-INCBIN "baserom.gbc",$1b0000,$1b2042 - $1b0000
+UnknownText_0x1b0000: ; 0x1b0000
+ db $0, "Good morning!", $4f
+ db "Welcome to our", $55
+ db "#MON CENTER.", $57
+; 0x1b002b
+
+UnknownText_0x1b002b: ; 0x1b002b
+ db $0, "Hello!", $4f
+ db "Welcome to our", $55
+ db "#MON CENTER.", $57
+; 0x1b004f
+
+UnknownText_0x1b004f: ; 0x1b004f
+ db $0, "Good evening!", $4f
+ db "You're out late.", $51
+ db "Welcome to our", $4f
+ db "#MON CENTER.", $57
+; 0x1b008a
+
+UnknownText_0x1b008a: ; 0x1b008a
+ db $0, "Good morning!", $51
+ db "This is the #-", $4f
+ db "MON COMMUNICATION", $51
+ db "CENTER--or the", $4f
+ db "#COM CENTER.", $57
+; 0x1b00d6
+
+UnknownText_0x1b00d6: ; 0x1b00d6
+ db $0, "Hello!", $51
+ db "This is the #-", $4f
+ db "MON COMMUNICATION", $51
+ db "CENTER--or the", $4f
+ db "#COM CENTER.", $57
+; 0x1b011b
+
+UnknownText_0x1b011b: ; 0x1b011b
+ db $0, "Good to see you", $4f
+ db "working so late.", $51
+ db "This is the #-", $4f
+ db "MON COMMUNICATION", $51
+ db "CENTER--or the", $4f
+ db "#COM CENTER.", $57
+; 0x1b017a
+
+UnknownText_0x1b017a: ; 0x1b017a
+ db $0, "We can heal your", $4f
+ db "#MON to perfect", $55
+ db "health.", $51
+ db "Shall we heal your", $4f
+ db "#MON?", $57
+; 0x1b01bd
+
+UnknownText_0x1b01bd: ; 0x1b01bd
+ db $0, "OK, may I see your", $4f
+ db "#MON?", $57
+; 0x1b01d7
+
+UnknownText_0x1b01d7: ; 0x1b01d7
+ db $0, "Thank you for", $4f
+ db "waiting.", $51
+ db "Your #MON are", $4f
+ db "fully healed.", $57
+; 0x1b020b
+
+UnknownText_0x1b020b: ; 0x1b020b
+ db $0, "We hope to see you", $4f
+ db "again.", $57
+; 0x1b0226
+
+UnknownText_0x1b0226: ; 0x1b0226
+ db $0, "We hope to see you", $4f
+ db "again.", $57
+; 0x1b0241
+
+UnknownText_0x1b0241: ; 0x1b0241
+ db $0, "Your #MON", $4f
+ db "appear to be", $51
+ db "infected by tiny", $4f
+ db "life forms.", $51
+ db "Your #MON are", $4f
+ db "healthy and seem", $55
+ db "to be fine.", $51
+ db "But we can't tell", $4f
+ db "you anything more", $51
+ db "at a #MON", $4f
+ db "CENTER.", $57
+; 0x1b02d6
+
+UnknownText_0x1b02d6: ; 0x1b02d6
+ db $0, "Your #MON", $4f
+ db "appear to be", $51
+ db "infected by tiny", $4f
+ db "life forms.", $51
+ db "Your #MON are", $4f
+ db "healthy and seem", $55
+ db "to be fine.", $51
+ db "But we can't tell", $4f
+ db "you anything more.", $57
+; 0x1b035a
+
+UnknownText_0x1b035a: ; 0x1b035a
+ db $0, "It's full of", $4f
+ db "difficult books.", $57
+; 0x1b0378
+
+UnknownText_0x1b0378: ; 0x1b0378
+ db $0, "A whole collection", $4f
+ db "of #MON picture", $55
+ db "books!", $57
+; 0x1b03a3
+
+UnknownText_0x1b03a3: ; 0x1b03a3
+ db $0, "#MON magazines…", $4f
+ db "#MON PAL,", $51
+ db "#MON HANDBOOK,", $4f
+ db "#MON GRAPH…", $57
+; 0x1b03d9
+
+UnknownText_0x1b03d9: ; 0x1b03d9
+ db $0, "TEAM ROCKET OATH", $51
+ db "Steal #MON for", $4f
+ db "profit!", $51
+ db "Exploit #MON", $4f
+ db "for profit!", $51
+ db "All #MON exist", $4f
+ db "for the glory of", $55
+ db "TEAM ROCKET!", $57
+; 0x1b0448
+
+UnknownText_0x1b0448: ; 0x1b0448
+ db $0, "What is this?", $51
+ db "Oh, it's an", $4f
+ db "incense burner!", $57
+; 0x1b0472
+
+UnknownText_0x1b0472: ; 0x1b0472
+ db $0, "Lots of #MON", $4f
+ db "merchandise!", $57
+; 0x1b048d
+
+UnknownText_0x1b048d: ; 0x1b048d
+ db $0, "It's the TOWN MAP.", $57
+; 0x1b04a0
+
+UnknownText_0x1b04a0: ; 0x1b04a0
+ db $0, "My reflection!", $4f
+ db "Lookin' good!", $57
+; 0x1b04be
+
+UnknownText_0x1b04be: ; 0x1b04be
+ db $0, "It's a TV.", $57
+; 0x1b04c9
+
+UnknownText_0x1b04c9: ; 0x1b04c9
+ db $0, "#MON JOURNAL", $4f
+ db "HOME PAGE…", $51
+ db "It hasn't been", $4f
+ db "updated…", $57
+; 0x1b04f9
+
+UnknownText_0x1b04f9: ; 0x1b04f9
+ db $0, "#MON RADIO!", $51
+ db "Call in with your", $4f
+ db "requests now!", $57
+; 0x1b0526
+
+UnknownText_0x1b0526: ; 0x1b0526
+ db $0, "There's nothing in", $4f
+ db "here…", $57
+; 0x1b053f
+
+UnknownText_0x1b053f: ; 0x1b053f
+ db $0, "A #MON may be", $4f
+ db "able to move this.", $57
+; 0x1b0561
+
+UnknownText_0x1b0561: ; 0x1b0561
+ db $0, "Maybe a #MON", $4f
+ db "can break this.", $57
+; 0x1b057f
+
+UnknownText_0x1b057f: ; 0x1b057f
+ db $0, "Heal Your #MON!", $4f
+ db "#MON CENTER", $57
+; 0x1b059c
+
+UnknownText_0x1b059c: ; 0x1b059c
+ db $0, "For All Your", $4f
+ db "#MON Needs", $51
+ db "#MON MART", $57
+; 0x1b05bf
+
+UnknownText_0x1b05bf: ; 0x1b05bf
+ db $0, "We will now judge", $4f
+ db "the #MON you've", $55
+ db "caught.", $51
+ db $56, $4f
+ db $56, $51
+ db "We have chosen the", $4f
+ db "winners!", $51
+ db "Are you ready for", $4f
+ db "this?", $57
+; 0x1b0621
+
+UnknownText_0x1b0621: ; 0x1b0621
+ db $0, $52, ", the No.@"
+ text_from_ram $d099
+ db $0, $4f
+ db "finisher, wins", $55
+ db "@"
+ text_from_ram $d0ac
+ db $0, "!", $57
+; 0x1b0648
+
+UnknownText_0x1b0648: ; 0x1b0648
+ db $0, $52, " received", $4f
+ db "@"
+ text_from_ram $d0ac
+ db $0, ".", $57
+; 0x1b065b
+
+UnknownText_0x1b065b: ; 0x1b065b
+ db $0, "Please join us for", $4f
+ db "the next Contest!", $57
+; 0x1b0681
+
+UnknownText_0x1b0681: ; 0x1b0681
+ db $0, "Everyone else gets", $4f
+ db "a BERRY as a con-", $55
+ db "solation prize!", $57
+; 0x1b06b7
+
+UnknownText_0x1b06b7: ; 0x1b06b7
+ db $0, "We hope you do", $4f
+ db "better next time.", $57
+; 0x1b06d9
+
+UnknownText_0x1b06d9: ; 0x1b06d9
+ db $0, "We'll return the", $4f
+ db "#MON we kept", $51
+ db "for you.", $4f
+ db "Here you go!", $57
+; 0x1b070d
+
+UnknownText_0x1b070d: ; 0x1b070d
+ db $0, "Your party's full,", $4f
+ db "so the #MON was", $51
+ db "sent to your BOX", $4f
+ db "in BILL's PC.", $57
+; 0x1b074e
+
+UnknownText_0x1b074e: ; 0x1b074e
+ text_from_ram $d099
+ db $0, $4f
+ db "#MON GYM", $57
+; 0x1b075c
+
+UnknownText_0x1b075c: ; 0x1b075c
+ db $0, "LEADER: @"
+ text_from_ram $d0ac
+ db $0, $51
+ db "WINNING TRAINERS:", $4f
+ db $52, $57
+; 0x1b077f
+
+UnknownText_0x1b077f: ; 0x1b077f
+ db $0, "Welcome to the", $4f
+ db "GAME CORNER.", $57
+; 0x1b079c
+
+UnknownText_0x1b079c: ; 0x1b079c
+ db $0, "Do you need game", $4f
+ db "coins?", $51
+ db "Oh, you don't have", $4f
+ db "a COIN CASE for", $55
+ db "your coins.", $57
+; 0x1b07e3
+
+UnknownText_0x1b07e3: ; 0x1b07e3
+ db $0, "Do you need some", $4f
+ db "game coins?", $51
+ db "It costs ¥1000 for", $4f
+ db "50 coins. Do you", $55
+ db "want some?", $57
+; 0x1b0830
+
+UnknownText_0x1b0830: ; 0x1b0830
+ db $0, "Thank you!", $4f
+ db "Here are 50 coins.", $57
+; 0x1b084f
+
+UnknownText_0x1b084f: ; 0x1b084f
+ db $0, "Thank you! Here", $4f
+ db "are 500 coins.", $57
+; 0x1b086f
+
+UnknownText_0x1b086f: ; 0x1b086f
+ db $0, "You don't have", $4f
+ db "enough money.", $57
+; 0x1b088c
+
+UnknownText_0x1b088c: ; 0x1b088c
+ db $0, "Whoops! Your COIN", $4f
+ db "CASE is full.", $57
+; 0x1b08ad
+
+UnknownText_0x1b08ad: ; 0x1b08ad
+ db $0, "No coins for you?", $4f
+ db "Come again!", $57
+; 0x1b08cc
+
+UnknownText_0x1b08cc: ; 0x1b08cc
+ db $0, "Oh? Your PACK is", $4f
+ db "full.", $51
+ db "We'll keep this", $4f
+ db "for you today, so", $51
+ db "come back when you", $4f
+ db "make room for it.", $57
+; 0x1b092a
+
+UnknownText_0x1b092a: ; 0x1b092a
+ db $0, "Wow! You and your", $4f
+ db "#MON are really", $55
+ db "close!", $57
+; 0x1b0954
+
+UnknownText_0x1b0954: ; 0x1b0954
+ db $0, "#MON get more", $4f
+ db "friendly if you", $51
+ db "spend time with", $4f
+ db "them.", $57
+; 0x1b0989
+
+UnknownText_0x1b0989: ; 0x1b0989
+ db $0, "You haven't tamed", $4f
+ db "your #MON.", $51
+ db "If you aren't", $4f
+ db "nice, it'll pout.", $57
+; 0x1b09c4
+
+UnknownText_0x1b09c4: ; 0x1b09c4
+ db $0, $52, " registered", $4f
+ db "@"
+ text_from_ram $d099
+ db $0, "'s number.", $57
+; 0x1b09e1
+
+UnknownText_0x1b09e1: ; 0x1b09e1
+ db $0, $52, " registered", $4f
+ db "@"
+ text_from_ram $d099
+ db $0, "'s number.", $57
+; 0x1b09fe
+
+UnknownText_0x1b09fe: ; 0x1b09fe
+ db $0, "Your knowledge is", $4f
+ db "impressive!", $51
+ db "I like that!", $51
+ db "Want to trade", $4f
+ db "battle tips?", $51
+ db "I'll phone if I", $4f
+ db "get good info.", $51
+ db "Would you tell me", $4f
+ db "your number?", $57
+; 0x1b0a82
+
+UnknownText_0x1b0a82: ; 0x1b0a82
+ db $0, "Want to trade", $4f
+ db "battle tips?", $51
+ db "I'll phone if I", $4f
+ db "get good info.", $51
+ db "Would you tell me", $4f
+ db "your number?", $57
+; 0x1b0adb
+
+UnknownText_0x1b0adb: ; 0x1b0adb
+ db $0, "I'll call you if I", $4f
+ db "hear anything!", $57
+; 0x1b0afd
+
+UnknownText_0x1b0afd: ; 0x1b0afd
+ db $0, "Oh, OK. Too bad…", $51
+ db "Well, if you ever", $4f
+ db "want my number,", $55
+ db "come see me, OK?", $57
+; 0x1b0b42
+
+UnknownText_0x1b0b42: ; 0x1b0b42
+ db $0, "Oh?", $4f
+ db "Your phone's full.", $51
+ db "It can't register", $4f
+ db "my number.", $57
+; 0x1b0b75
+
+UnknownText_0x1b0b75: ; 0x1b0b75
+ db $0, "Hi, I was waiting", $4f
+ db "for you to show!", $51
+ db "Let's get started", $4f
+ db "right away!", $57
+; 0x1b0bb6
+
+UnknownText_0x1b0bb6: ; 0x1b0bb6
+ db $0, "Your MARILL is so", $4f
+ db "cute and adorable!", $51
+ db "You love #MON", $4f
+ db "just like I do!", $51
+ db "Want to trade", $4f
+ db "phone numbers?", $51
+ db "Let's chat! It'll", $4f
+ db "be so much fun!", $57
+; 0x1b0c37
+
+UnknownText_0x1b0c37: ; 0x1b0c37
+ db $0, "Your MARILL is so", $4f
+ db "cute and adorable!", $51
+ db "We should chat, it", $4f
+ db "will be fun.", $51
+ db "Can I have your", $4f
+ db "phone number?", $57
+; 0x1b0c9b
+
+UnknownText_0x1b0c9b: ; 0x1b0c9b
+ db $0, "To be honest, I", $4f
+ db "want a MARILL.", $51
+ db "But I make do with", $4f
+ db "my cute SNUBBULL.", $57
+; 0x1b0ce0
+
+UnknownText_0x1b0ce0: ; 0x1b0ce0
+ db $0, "Oh… That's", $4f
+ db "disappointing…", $51
+ db "Goodbye, MARILL…", $57
+; 0x1b0d0b
+
+UnknownText_0x1b0d0b: ; 0x1b0d0b
+ db $0, "Oh? Your phone's", $4f
+ db "memory is full.", $57
+; 0x1b0d2c
+
+UnknownText_0x1b0d2c: ; 0x1b0d2c
+ db $0, "Oh? ", $52, "? ", $4f
+ db "I waited here for", $51
+ db "you. I brought you", $4f
+ db "a little gift.", $57
+; 0x1b0d69
+
+UnknownText_0x1b0d69: ; 0x1b0d69
+ db $0, "Oh?", $4f
+ db "You have no room.", $51
+ db "Please come back", $4f
+ db "for it later.", $57
+; 0x1b0d9f
+
+UnknownText_0x1b0d9f: ; 0x1b0d9f
+ db $0, "Cool! That's the", $4f
+ db "first time I've", $55
+ db "lost in a while!", $51
+ db "Hey, give me your", $4f
+ db "phone number.", $51
+ db "You'd be fun to", $4f
+ db "battle, so I'll", $51
+ db "call you when I", $4f
+ db "get stronger!", $57
+; 0x1b0e2c
+
+UnknownText_0x1b0e2c: ; 0x1b0e2c
+ db $0, "Hey, give me your", $4f
+ db "phone number.", $51
+ db "You'd be fun to", $4f
+ db "battle, so I'll", $51
+ db "call you when I", $4f
+ db "get stronger!", $57
+; 0x1b0e89
+
+UnknownText_0x1b0e89: ; 0x1b0e89
+ db $0, "Hey, let's battle", $4f
+ db "again!", $57
+; 0x1b0ea2
+
+UnknownText_0x1b0ea2: ; 0x1b0ea2
+ db $0, "Looks like you're", $4f
+ db "a wimp…", $57
+; 0x1b0ebc
+
+UnknownText_0x1b0ebc: ; 0x1b0ebc
+ db $0, "Hey! Your phone's", $4f
+ db "already full!", $57
+; 0x1b0edc
+
+UnknownText_0x1b0edc: ; 0x1b0edc
+ db $0, "Hey! I'm tired of", $4f
+ db "waiting for you!", $57
+; 0x1b0eff
+
+UnknownText_0x1b0eff: ; 0x1b0eff
+ db $0, "Oh… Your PACK's", $4f
+ db "full. I'll give it", $55
+ db "to you later.", $57
+; 0x1b0f2f
+
+UnknownText_0x1b0f2f: ; 0x1b0f2f
+ db $0, "Man! You're as", $4f
+ db "tough as ever!", $51
+ db "I've battled you", $4f
+ db "over and over, but", $51
+ db $52, ", I haven't", $4f
+ db "won once.", $51
+ db "I bought tons of", $4f
+ db "items to toughen", $51
+ db "up my #MON, but", $4f
+ db "to no avail…", $51
+ db "Items alone aren't", $4f
+ db "the answer.", $51
+ db "That must be what", $4f
+ db "it is…", $51
+ db "Here, take this,", $4f
+ db $52, ".", $51
+ db "I won't be needing", $4f
+ db "it anymore…", $57
+; 0x1b102e
+
+UnknownText_0x1b102e: ; 0x1b102e
+ db $0, "Wow, you're tough.", $4f
+ db "I haven't battled", $51
+ db "that seriously in", $4f
+ db "a long time.", $51
+ db "Could I get your", $4f
+ db "phone number?", $51
+ db "I'd like to battle", $4f
+ db "again when I heal", $51
+ db "@"
+ text_from_ram $d0ac
+ db $0, " and the", $4f
+ db "rest of my team.", $57
+; 0x1b10d3
+
+UnknownText_0x1b10d3: ; 0x1b10d3
+ db $0, "Could I get your", $4f
+ db "phone number?", $51
+ db "I'd like to battle", $4f
+ db "again when I heal", $51
+ db "@"
+ text_from_ram $d0ac
+ db $0, " and the", $4f
+ db "rest of my team.", $57
+; 0x1b1136
+
+UnknownText_0x1b1136: ; 0x1b1136
+ db $0, "How should I beat", $4f
+ db "you? I'm tormented", $51
+ db "by those thoughts", $4f
+ db "all the time…", $57
+; 0x1b117b
+
+UnknownText_0x1b117b: ; 0x1b117b
+ db $0, "OK… I understand…", $4f
+ db "But if you change", $51
+ db "your mind, give me", $4f
+ db "a shout anytime.", $57
+; 0x1b11c4
+
+UnknownText_0x1b11c4: ; 0x1b11c4
+ db $0, "Your phone's", $4f
+ db "memory is full.", $51
+ db "You can't register", $4f
+ db "my number.", $57
+; 0x1b11fe
+
+UnknownText_0x1b11fe: ; 0x1b11fe
+ db $0, "Hi! I've been", $4f
+ db "waiting for you!", $51
+ db "This time, I'm", $4f
+ db "going to win!", $57
+; 0x1b1239
+
+UnknownText_0x1b1239: ; 0x1b1239
+ db $0, "It's been a while", $4f
+ db "since I lost…", $51
+ db "You're very good", $4f
+ db "at battling.", $51
+ db "We should battle", $4f
+ db "again sometime.", $51
+ db "By challenging a", $4f
+ db "tough trainer like", $51
+ db "you, I think I can", $4f
+ db "get better too.", $51
+ db "So how about it?", $51
+ db "Would you give me", $4f
+ db "your phone number?", $57
+; 0x1b1314
+
+UnknownText_0x1b1314: ; 0x1b1314
+ db $0, "By challenging a", $4f
+ db "tough trainer like", $51
+ db "you, I think I can", $4f
+ db "get better too.", $51
+ db "So how about it?", $51
+ db "Would you give me", $4f
+ db "your phone number?", $57
+; 0x1b1392
+
+UnknownText_0x1b1392: ; 0x1b1392
+ db $0, "Let's battle again", $4f
+ db "sometime!", $57
+; 0x1b13af
+
+UnknownText_0x1b13af: ; 0x1b13af
+ db $0, "That's too bad…", $51
+ db "Let me know if you", $4f
+ db "change your mind.", $57
+; 0x1b13e4
+
+UnknownText_0x1b13e4: ; 0x1b13e4
+ db $0, "Oh no. Your phone", $4f
+ db "is out of memory.", $57
+; 0x1b1409
+
+UnknownText_0x1b1409: ; 0x1b1409
+ db $0, "You sure kept me", $4f
+ db "waiting! Let's go!", $57
+; 0x1b142d
+
+UnknownText_0x1b142d: ; 0x1b142d
+ db $0, "If my @"
+ text_from_ram $d0ac
+ db $0, $4f
+ db "sees anything", $51
+ db "pretty, it goes", $4f
+ db "and gets it.", $51
+ db "Do you like pretty", $4f
+ db "things?", $51
+ db "I could share if", $4f
+ db "it gets some more.", $51
+ db "What's your phone", $4f
+ db "number? I'll call.", $51
+ db "Don't expect a", $4f
+ db "whole lot, OK?", $57
+; 0x1b14e4
+
+UnknownText_0x1b14e4: ; 0x1b14e4
+ db $0, "Do you like pretty", $4f
+ db "things?", $51
+ db "I could share if", $4f
+ db "FARFETCH'D goes", $55
+ db "and gets more.", $51
+ db "What's your phone", $4f
+ db "number? I'll call.", $57
+; 0x1b1553
+
+UnknownText_0x1b1553: ; 0x1b1553
+ db $0, "I'll call you as", $4f
+ db "soon as I get", $55
+ db "something pretty.", $57
+; 0x1b1584
+
+UnknownText_0x1b1584: ; 0x1b1584
+ db $0, "You sure? Well,", $4f
+ db "tell me if you", $55
+ db "change your mind.", $57
+; 0x1b15b6
+
+UnknownText_0x1b15b6: ; 0x1b15b6
+ db $0, "Huh? Your phone", $4f
+ db "list is full.", $57
+; 0x1b15d5
+
+UnknownText_0x1b15d5: ; 0x1b15d5
+ db $0, "Tweet! Tweeeet!", $51
+ db "Kept me waiting!", $4f
+ db "Go, FARFETCH'D!", $57
+; 0x1b1607
+
+UnknownText_0x1b1607: ; 0x1b1607
+ db $0, "Kept me waiting!", $4f
+ db "Look, this is it!", $51
+ db "See? Isn't it some", $4f
+ db "kind of pretty?", $57
+; 0x1b164d
+
+UnknownText_0x1b164d: ; 0x1b164d
+ db $0, "Huh? You don't", $4f
+ db "have anywhere to", $51
+ db "put this. Better", $4f
+ db "come back for it.", $57
+; 0x1b1690
+
+UnknownText_0x1b1690: ; 0x1b1690
+ db $0, "Not bad…", $4f
+ db "It's something to", $51
+ db "beat me, even by", $4f
+ db "an unlikely fluke…", $51
+ db "I like you! Give", $4f
+ db "me your number!", $51
+ db "You can be my", $4f
+ db "practice partner!", $57
+; 0x1b1710
+
+UnknownText_0x1b1710: ; 0x1b1710
+ db $0, "Give me your phone", $4f
+ db "number!", $51
+ db "You are going to", $4f
+ db "be my practice", $55
+ db "partner!", $57
+; 0x1b1755
+
+UnknownText_0x1b1755: ; 0x1b1755
+ db $0, "Don't be too proud", $4f
+ db "about beating me!", $51
+ db "It was a fluke!", $57
+; 0x1b178a
+
+UnknownText_0x1b178a: ; 0x1b178a
+ db $0, "I don't believe", $4f
+ db "it! You're going", $55
+ db "to regret this!", $57
+; 0x1b17ba
+
+UnknownText_0x1b17ba: ; 0x1b17ba
+ db $0, "What? Your phone", $4f
+ db "list has no room!", $57
+; 0x1b17de
+
+UnknownText_0x1b17de: ; 0x1b17de
+ db $0, "What took you?", $4f
+ db "Start right away!", $57
+; 0x1b1800
+
+UnknownText_0x1b1800: ; 0x1b1800
+ db $0, "Listen, can I get", $4f
+ db "your phone number?", $51
+ db "I'll ring you for", $4f
+ db "some battles.", $51
+ db "I'm a rookie too, ", $4f
+ db "so I think it'd be", $55
+ db "a good motivator.", $57
+; 0x1b187b
+
+UnknownText_0x1b187b: ; 0x1b187b
+ db $0, "Can I get your", $4f
+ db "phone number?", $51
+ db "I don't want to", $4f
+ db "lose against you!", $51
+ db "We have to battle", $4f
+ db "again, OK?", $57
+; 0x1b18d7
+
+UnknownText_0x1b18d7: ; 0x1b18d7
+ db $0, "I'll ring you", $4f
+ db "whenever I get the", $55
+ db "urge to battle!", $57
+; 0x1b1908
+
+UnknownText_0x1b1908: ; 0x1b1908
+ db $0, "Oh, all right…", $51
+ db "But I won't lose", $4f
+ db "to you again!", $57
+; 0x1b1936
+
+UnknownText_0x1b1936: ; 0x1b1936
+ db $0, "Huh, what? Your", $4f
+ db "phone's full.", $57
+; 0x1b1954
+
+UnknownText_0x1b1954: ; 0x1b1954
+ db $0, "I've been waiting!", $4f
+ db "Let's battle now!", $57
+; 0x1b1978
+
+UnknownText_0x1b1978: ; 0x1b1978
+ db $0, "Hey, wait! Your", $4f
+ db "PACK is stuffed!", $51
+ db "Well, we'll leave", $4f
+ db "it till next time.", $57
+; 0x1b19be
+
+UnknownText_0x1b19be: ; 0x1b19be
+ db $0, "And yet another", $4f
+ db "loss…", $51
+ db "No doubt about", $4f
+ db "it--you're tough.", $51
+ db "Being beaten this", $4f
+ db "often actually", $55
+ db "feels good now!", $51
+ db "Here, take this. ", $4f
+ db "Use it to get even", $51
+ db "tougher. That will", $4f
+ db "toughen me up too!", $57
+; 0x1b1a71
+
+UnknownText_0x1b1a71: ; 0x1b1a71
+ db $0, "You're awesome!", $4f
+ db "I like you!", $51
+ db "I look for #MON", $4f
+ db "here every day.", $51
+ db "When I'm in the", $4f
+ db "grass, I find all", $55
+ db "kinds of BERRIES.", $51
+ db "If you'd like,", $4f
+ db "I'll share some.", $51
+ db "Could I get your", $4f
+ db "phone number?", $57
+; 0x1b1b1d
+
+UnknownText_0x1b1b1d: ; 0x1b1b1d
+ db $0, "When I'm in the", $4f
+ db "grass, I find all", $55
+ db "kinds of BERRIES.", $51
+ db "If you'd like,", $4f
+ db "I'll share some.", $51
+ db "Could I get your", $4f
+ db "phone number?", $57
+; 0x1b1b8e
+
+UnknownText_0x1b1b8e: ; 0x1b1b8e
+ db $0, "You'll hear from", $4f
+ db "me as soon as I", $51
+ db "find anything that", $4f
+ db "you might like.", $57
+; 0x1b1bd2
+
+UnknownText_0x1b1bd2: ; 0x1b1bd2
+ db $0, "Oh well. Don't be", $4f
+ db "shy if you want to", $55
+ db "get my number.", $57
+; 0x1b1c06
+
+UnknownText_0x1b1c06: ; 0x1b1c06
+ db $0, "Your phone list", $4f
+ db "has no room for my", $55
+ db "number.", $57
+; 0x1b1c32
+
+UnknownText_0x1b1c32: ; 0x1b1c32
+ db $0, "I was waiting for", $4f
+ db "you. Let's battle!", $57
+; 0x1b1c57
+
+UnknownText_0x1b1c57: ; 0x1b1c57
+ db $0, "Good to see you!", $4f
+ db "See? This is what", $51
+ db "I found.", $4f
+ db "It's for you!", $57
+; 0x1b1c91
+
+UnknownText_0x1b1c91: ; 0x1b1c91
+ db $0, "Oops, your PACK's", $4f
+ db "full. Too bad.", $51
+ db "You should come", $4f
+ db "back for it later.", $57
+; 0x1b1cd5
+
+UnknownText_0x1b1cd5: ; 0x1b1cd5
+ db $0, "Don't young people", $4f
+ db "fish anymore?", $51
+ db "I've seen rare", $4f
+ db "#MON while I've", $55
+ db "been fishing…", $51
+ db "You young people", $4f
+ db "like that, right?", $51
+ db "Want to trade", $4f
+ db "phone numbers?", $51
+ db "I'll let you know", $4f
+ db "if I see anything.", $57
+; 0x1b1d85
+
+UnknownText_0x1b1d85: ; 0x1b1d85
+ db $0, "Hm? So you do want", $4f
+ db "me to phone if I", $55
+ db "see rare #MON?", $57
+; 0x1b1db9
+
+UnknownText_0x1b1db9: ; 0x1b1db9
+ db $0, "Yep, phone if I", $4f
+ db "see rare #MON.", $51
+ db "Don't worry, I", $4f
+ db "won't forget!", $57
+; 0x1b1df4
+
+UnknownText_0x1b1df4: ; 0x1b1df4
+ db $0, "Oh…", $4f
+ db "My own kids won't", $51
+ db "even give me their", $4f
+ db "phone numbers…", $51
+ db "Is that how young", $4f
+ db "people are today?", $57
+; 0x1b1e50
+
+UnknownText_0x1b1e50: ; 0x1b1e50
+ db $0, "Your phone's", $4f
+ db "memory is full.", $51
+ db "It seems that", $4f
+ db "young people all", $55
+ db "have #GEAR.", $57
+; 0x1b1e98
+
+UnknownText_0x1b1e98: ; 0x1b1e98
+ db $0, "Hey, kid!", $51
+ db "No losing for me", $4f
+ db "this day!", $57
+; 0x1b1ebe
+
+UnknownText_0x1b1ebe: ; 0x1b1ebe
+ db $0, "Oh? You're on a", $4f
+ db "big journey to see", $55
+ db "the sights? Neat!", $51
+ db "Let's be friends!", $4f
+ db "Can I have your", $55
+ db "phone number?", $51
+ db "I want to hear", $4f
+ db "about everything", $55
+ db "you've seen!", $57
+; 0x1b1f4e
+
+UnknownText_0x1b1f4e: ; 0x1b1f4e
+ db $0, "Let's be friends!", $4f
+ db "Can I have your", $55
+ db "phone number?", $51
+ db "I want to hear", $4f
+ db "about everything", $55
+ db "you've seen!", $57
+; 0x1b1faa
+
+UnknownText_0x1b1faa: ; 0x1b1faa
+ db $0, "I'll telephone you", $4f
+ db "if I hear anything", $55
+ db "interesting.", $57
+; 0x1b1fdd
+
+UnknownText_0x1b1fdd: ; 0x1b1fdd
+ db $0, "Aww… You won't be", $4f
+ db "my friend?", $57
+; 0x1b1ffa
+
+UnknownText_0x1b1ffa: ; 0x1b1ffa
+ db $0, "Wait! Your phone", $4f
+ db "list is filled up!", $57
+; 0x1b201f
+
+UnknownText_0x1b201f: ; 0x1b201f
+ db $0, "You're late! Let's", $4f
+ db "get started now!", $57
+; 0x1b2042
+
SilverCaveOutside_MapScriptHeader: ; 0x1b2042
; trigger count
@@ -131610,7 +135615,10 @@ Route10North_MapEventHeader: ; 0x1b2099
SECTION "bank6D",DATA,BANK[$6D]
-INCBIN "baserom.gbc",$1B4000,$4000
+INCLUDE "text/phone/mom.tx"
+INCLUDE "text/phone/bill.tx"
+INCLUDE "text/phone/elm.tx"
+INCLUDE "text/phone/trainers1.tx"
SECTION "bank6E",DATA,BANK[$6E]
@@ -135414,7 +139422,7 @@ GetItemDescription: ; 0x1c8955
push de
ld a, $b ; XXX replace this with BANK(label)
ld hl, $47b6 ; XXX replace this with label
- rst $8
+ rst FarCall
pop hl
ld a, [$d265]
ld [$cf60], a
diff --git a/preprocessor.py b/preprocessor.py
index 9b748dbd6..3ef9e1e88 100644
--- a/preprocessor.py
+++ b/preprocessor.py
@@ -17,20 +17,23 @@ from extras.crystal import (
TextEndingCommand,
text_command_classes,
movement_command_classes,
- music_classes
+ music_classes,
)
-macros = command_classes + \
- [
+even_more_macros = [
Warp,
XYTrigger,
Signpost,
PeopleEvent,
DataByteWordMacro,
ItemFragment,
- ] + [x[1] for x in text_command_classes] + \
- movement_command_classes + \
- music_classes
+]
+
+macros = command_classes
+macros += even_more_macros
+macros += [each[1] for each in text_command_classes]
+macros += movement_command_classes
+macros += music_classes
# show lines before preprocessing in stdout
show_original_lines = False
@@ -569,13 +572,19 @@ def macro_translator(macro, token, line):
def include_file(asm):
"""This is more reliable than rgbasm/rgbds including files on its own."""
+ prefix = asm.split("INCLUDE \"")[0] + '\n'
filename = asm.split("\"")[1]
+ suffix = asm.split("\"")[2]
+
+ read_line(prefix)
lines = open(filename, "r").readlines()
for line in lines:
read_line(line)
+ read_line(suffix)
+
def read_line(l):
"""Preprocesses a given line of asm."""
@@ -586,9 +595,8 @@ def read_line(l):
asm = l
comment = None
- # handle INCLUDE as a special case either at the start of the line or
- # after the first character in the line (like a tab)
- if "INCLUDE \"" in [asm[0:9], asm[1:9]]:
+ # handle INCLUDE as a special case
+ if "INCLUDE \"" in l:
include_file(asm)
# convert text to bytes when a quote appears (not in a comment)
diff --git a/text/phone/bill.asm b/text/phone/bill.asm
new file mode 100644
index 000000000..8b95511dd
--- /dev/null
+++ b/text/phone/bill.asm
@@ -0,0 +1,73 @@
+BillPhoneMornGreetingText: ; 0x1b4427
+ db $0, "Good morning!", $51
+ db "This is the #-", $4f
+ db "MON STORAGE SYSTEM", $51
+ db "ADMINISTRATION", $4f
+ db "SERVICE.", $57
+
+BillPhoneDayGreetingText: ; 0x1b4470
+ db $0, "Good day!", $51
+ db "This is the #-", $4f
+ db "MON STORAGE SYSTEM", $51
+ db "ADMINISTRATION", $4f
+ db "SERVICE.", $57
+
+BillPhoneNiteGreetingText: ; 0x1b44b5
+ db $0, "Good evening!", $51
+ db "This is the #-", $4f
+ db "MON STORAGE SYSTEM", $51
+ db "ADMINISTRATION", $4f
+ db "SERVICE.", $57
+
+BillPhoneGeneriText: ; 0x1b44fe
+ db $0, "Who's calling?", $51
+ db $14, ", is it?", $4f
+ db "Hang on a sec…", $51
+ db $56, $4f
+ db $56, $57
+
+BillPhoneNotFullText: ; 0x1b452a
+ db $0, "Thanks for", $4f
+ db "waiting!", $51
+ db $14, ", your BOX", $4f
+ db "has room for @"
+ TX_RAM $d099
+ db $0, $55
+ db "more #MON.", $51
+ db "Get out there and", $4f
+ db "fill it up!", $57
+
+BillPhoneNearlyFullText: ; 0x1b4587
+ db $0, "Thanks for", $4f
+ db "waiting!", $51
+ db $14, ", your BOX", $4f
+ db "has room for only", $55
+ db "@"
+ TX_RAM $d099
+ db $0, " more #MON.", $51
+ db "Maybe you should", $4f
+ db "switch your BOX.", $57
+
+BillPhoneFullText: ; 0x1b45ed
+ db $0, "Thanks for", $4f
+ db "waiting!", $51
+ db $14, ", your BOX", $4f
+ db "is full!", $51
+ db "You'll have to", $4f
+ db "switch BOXES if", $51
+ db "you want to catch", $4f
+ db "more #MON.", $57
+
+BillPhoneNewlyFullText: ; 0x1b4652
+ db $0, "Hi, ", $14, "?", $4f
+ db "It's me, BILL!", $51
+ db "Thanks for using", $4f
+ db "my STORAGE SYSTEM.", $51
+ db "That last #MON", $4f
+ db "you sent filled", $55
+ db "your BOX up.", $51
+ db "You'll have to", $4f
+ db "switch BOXES if", $51
+ db "you want to catch", $4f
+ db "more #MON.", $51
+ db "Bye now!", $57
diff --git a/text/phone/elm.asm b/text/phone/elm.asm
new file mode 100644
index 000000000..6a8946179
--- /dev/null
+++ b/text/phone/elm.asm
@@ -0,0 +1,149 @@
+ElmPhoneStartText: ; 0x1b46fc
+ db $0, "Hello, ", $14, "?", $51
+ db "Try not to overdo", $4f
+ db "it.", $51
+ db "Be sure to heal", $4f
+ db "your #MON if", $55
+ db "they are hurt.", $57
+
+ElmPhoneSawMrPokemonText: ; 0x1b4749
+ db $0, "Hello, ", $14, "?", $51
+ db "Did you meet MR.", $4f
+ db "#MON? Great!", $55
+ db "Come back safely!", $57
+
+ElmPhonePokemonStolenText: ; 0x1b4784
+ db $0, $14, "? I'm very", $4f
+ db "upset now.", $51
+ db "We had a #MON", $4f
+ db "stolen from here.", $51
+ db "How could anyone", $4f
+ db "do that?", $57
+
+ElmPhoneCheckingEggText: ; 0x1b47d5
+ db $0, "Hello, ", $14, "?", $51
+ db "We're checking the", $4f
+ db "EGG now. It does", $51
+ db "appear to be a", $4f
+ db "#MON EGG.", $57
+
+ElmPhoneAssistantText: ; 0x1b481c
+ db $0, "Hello, ", $14, "?", $51
+ db "Did you see my", $4f
+ db "assistant? He's at", $51
+ db "the #MON CENTER", $4f
+ db "in VIOLET CITY.", $57
+
+ElmPhoneEggUnhatchedText: ; 0x1b4868
+ db $0, "Hello, ", $14, "?", $51
+ db "How's the EGG? Has", $4f
+ db "anything changed?", $51
+ db "If anything hap-", $4f
+ db "pens, please call.", $57
+
+ElmPhoneEggHatchedText: ; 0x1b48bb
+ db $0, "Hello, ", $14, "?", $4f
+ db "How is the EGG?", $51
+ db "What? It hatched?", $4f
+ db "Wow! What kind of", $55
+ db "#MON is it?", $51
+ db "Please come show", $4f
+ db "me now!", $57
+
+ElmPhoneDiscovery1Text: ; 0x1b491f
+ db $0, "Hello, ", $14, "?", $51
+ db "I just made a new", $4f
+ db "discovery.", $51
+ db "The time it takes", $4f
+ db "for an EGG to", $51
+ db "hatch depends on", $4f
+ db "the #MON.", $57
+
+ElmPhoneDiscovery2Text: ; 0x1b4982
+ db $0, "Hello, ", $14, "?", $51
+ db "It's still a", $4f
+ db "mystery what kinds", $51
+ db "of moves hatched", $4f
+ db "#MON have.", $51
+ db "We're investigat-", $4f
+ db "ing that now.", $57
+
+ElmPhonePokerusText: ; 0x1b49e7
+ db $0, "Hello, ", $14, "?", $51
+ db "I discovered an", $4f
+ db "odd thing.", $51
+ db "Apparently there's", $4f
+ db "something called", $51
+ db "#RUS that in-", $4f
+ db "fects #MON.", $51
+ db "Yes, it's like a", $4f
+ db "virus, so it's", $55
+ db "called #RUS.", $51
+ db "It multiplies fast", $4f
+ db "and infects other", $51
+ db "#MON too. But", $4f
+ db "that's all.", $51
+ db "It doesn't seem to", $4f
+ db "do anything, and", $51
+ db "it goes away over", $4f
+ db "time.", $51
+ db "I guess it's", $4f
+ db "nothing to worry", $55
+ db "about. Bye!", $57
+
+ElmPhoneDisasterText: ; 0x1b4b17
+ db $0, "H-hello? ", $14, "?", $4f
+ db "It's a disaster!", $51
+ db "Uh, um, it's just", $4f
+ db "terrible!", $51
+ db "What should I do?", $4f
+ db "It… Oh, no…", $51
+ db "Please get back", $4f
+ db "here now!", $57
+
+ElmPhoneEggAssistantText: ; 0x1b4b87
+ db $0, "Hello, ", $14, "? We", $4f
+ db "discovered some-", $51
+ db "thing about the", $4f
+ db "EGG!", $51
+ db "My assistant is at", $4f
+ db "the #MON CENTER", $51
+ db "in VIOLET CITY. ", $4f
+ db "Could you talk to", $55
+ db "him?", $57
+
+ElmPhoneRocketText: ; 0x1b4c06
+ db $0, $14, ", how are", $4f
+ db "things going?", $51
+ db "I called because", $4f
+ db "something weird is", $51
+ db "happening with the", $4f
+ db "radio broadcasts.", $51
+ db "They were talking", $4f
+ db "about TEAM ROCKET.", $51
+ db $14, ", do you", $4f
+ db "know anything", $55
+ db "about it?", $51
+ db "Maybe TEAM ROCKET", $4f
+ db "has returned. No,", $51
+ db "that just can't", $4f
+ db "be true.", $51
+ db "Sorry to bug you.", $4f
+ db "Take care!", $57
+
+ElmPhoneGiftText: ; 0x1b4d09
+ db $0, "Hello, ", $14, "?", $51
+ db "I have something", $4f
+ db "here for you.", $51
+ db "Could you swing by", $4f
+ db "my LAB?", $51
+ db "See you later!", $57
+
+ElmPhoneUnusedText: ; 0x1b4d5d
+ db $0, "Hello, ", $14, "?", $4f
+ db "How's it going?", $51
+ db "I got ahold of", $4f
+ db "something neat.", $51
+ db "Swing by my LAB", $4f
+ db "and pick it up!", $51
+ db "See you later!", $57
diff --git a/text/phone/mom.asm b/text/phone/mom.asm
new file mode 100644
index 000000000..5be9e287d
--- /dev/null
+++ b/text/phone/mom.asm
@@ -0,0 +1,127 @@
+MomPhoneGreetingText: ; 0x1b4000
+ db $0, "Hello?", $51
+ db "Oh, hi, ", $52, "!", $4f
+ db "Working hard?", $57
+
+UnknownText_0x1b4021: ; 0x1b4021
+ db $0, "Oh, so you're in", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Isn't that where", $4f
+ db "@"
+ TX_RAM $d0ac
+ db $0, $51
+ db "is? Did you go", $4f
+ db "take a look?", $57
+
+MomPhoneGenericAreaText: ; 0x1b406b
+ db $0, "Really, you're in", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "?", $51
+ db "I've never gone", $4f
+ db "there. That's kind", $55
+ db "of neat, ", $52, ".", $57
+
+MomPhoneNewBarkText: ; 0x1b40b1
+ db $0, "What? You're in", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "?", $51
+ db "Come see your MOM", $4f
+ db "sometime!", $57
+
+MomPhoneCherrygroveText: ; 0x1b40e4
+ db $0, "You're visiting", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "?", $51
+ db "How about coming", $4f
+ db "home for a bit?", $57
+
+UnknownText_0x1b411c: ; 0x1b411c
+ db $0, "Wow, you're in", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "?", $51
+ db "Good luck on your", $4f
+ db "#MON quest!", $57
+
+UnknownText_0x1b4150: ; 0x1b4150
+ db $0, "That sounds really", $4f
+ db "tough.", $51
+ db "But, ", $52, ", I", $4f
+ db "know you're really", $51
+ db "determined. You'll", $4f
+ db "be OK, right?", $57
+
+UnknownText_0x1b41a7: ; 0x1b41a7
+ db $0, "By the way, you've", $4f
+ db "saved up ¥@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Do you want to", $4f
+ db "keep on saving?", $57
+
+UnknownText_0x1b41ea: ; 0x1b41ea
+ db $0, "It's important to", $4f
+ db "save your money.", $57
+
+UnknownText_0x1b420d: ; 0x1b420d
+ db $0, "Oh, ", $52, ",", $4f
+ db "you're not saving", $51
+ db "any money. Would", $4f
+ db "you like to save?", $57
+
+UnknownText_0x1b4249: ; 0x1b4249
+ db $0, "By the way, you've", $4f
+ db "saved up ¥@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Want to start", $4f
+ db "saving again?", $57
+
+UnknownText_0x1b4289: ; 0x1b4289
+ db $0, "OK. I'll save your", $4f
+ db "money.", $57
+
+MomPhoneWontSaveMoneyText: ; 0x1b42a3
+ db $0, "OK. I won't save", $4f
+ db "your money.", $57
+
+MomPhoneHangUpText: ; 0x1b42c0
+ db $0, $52, ", keep it", $4f
+ db "up! I'm rooting", $55
+ db "for you, baby!", $57
+
+MomPhoneNoPokemonText: ; 0x1b42ea
+ db $0, "Hello?", $51
+ db "Oh, hi, ", $52, "!", $4f
+ db "Wasn't PROF.ELM", $55
+ db "waiting for you?", $57
+
+MomPhoneNoPokedexText: ; 0x1b431d
+ db $0, "Hello?", $51
+ db "Oh, hi, ", $52, "!", $4f
+ db "You're on a big", $51
+ db "mission for PROF.", $4f
+ db "ELM? Be good!", $57
+
+MomPhoneNoGymQuestText: ; 0x1b435f
+ db $0, "Hello?", $51
+ db "Hi, ", $52, "! If", $4f
+ db "you're done with", $51
+ db "your errand come", $4f
+ db "on home, dear.", $57
+
+MomPhoneLectureText: ; 0x1b43a1
+ db $0, "Hello?", $51
+ db "…… ", $52, "?", $4f
+ db "I heard from PROF.", $51
+ db "ELM that you went", $4f
+ db "on a long trip.", $51
+ db "I wish you would", $4f
+ db "have told me…", $51
+ db "What about money?", $4f
+ db "Should I save it?", $57
diff --git a/text/phone/trainers1.asm b/text/phone/trainers1.asm
new file mode 100644
index 000000000..bbcc6c078
--- /dev/null
+++ b/text/phone/trainers1.asm
@@ -0,0 +1,1560 @@
+UnknownText_0x1b4dc5: ; 0x1b4dc5
+ db $0, "Hello. This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Good morning,", $4f
+ db $14, "!", $57
+
+UnknownText_0x1b4ded: ; 0x1b4ded
+ db $0, "Hello. This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "How's it going,", $4f
+ db $14, "?", $57
+
+UnknownText_0x1b4e16: ; 0x1b4e16
+ db $0, "Hello. This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Good evening,", $4f
+ db $14, "!", $57
+
+UnknownText_0x1b4e3e: ; 0x1b4e3e
+ db $0, $14, ", good", $4f
+ db "morning!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you doing?", $57
+
+UnknownText_0x1b4e72: ; 0x1b4e72
+ db $0, $14, ", howdy!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Isn't it nice out?", $57
+
+UnknownText_0x1b4e9e: ; 0x1b4e9e
+ db $0, $14, ", good", $4f
+ db "evening!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Got a minute?", $57
+
+UnknownText_0x1b4ecd: ; 0x1b4ecd
+ db $0, "How are your", $4f
+ db "#MON doing?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " is", $4f
+ db "so curious, it's a", $51
+ db "problem. Maybe", $4f
+ db "it's like me…", $57
+
+UnknownText_0x1b4f21: ; 0x1b4f21
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh! Good morning,", $4f
+ db $52, ".", $57
+
+UnknownText_0x1b4f4d: ; 0x1b4f4d
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh! Good day,", $4f
+ db $52, ".", $57
+
+UnknownText_0x1b4f75: ; 0x1b4f75
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh! Good evening,", $4f
+ db $52, ".", $57
+
+UnknownText_0x1b4fa1: ; 0x1b4fa1
+ db $0, "Hello, ", $52, ".", $4f
+ db "Good morning.", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Were you asleep?", $57
+
+UnknownText_0x1b4fda: ; 0x1b4fda
+ db $0, "Hi, ", $52, ".", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "How are you doing?", $57
+
+UnknownText_0x1b5004: ; 0x1b5004
+ db $0, "Hi, ", $52, ".", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Were you awake?", $57
+
+UnknownText_0x1b502b: ; 0x1b502b
+ db $0, "Keeping your", $4f
+ db "#MON happy?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " is", $4f
+ db "healthy. It eats a", $55
+ db "lot every day.", $57
+
+UnknownText_0x1b5073: ; 0x1b5073
+ db $0, "Yeah, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Huh? What's up,", $4f
+ db $52, "?", $57
+
+UnknownText_0x1b509b: ; 0x1b509b
+ db $0, "Yeah, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Huh? What's up", $4f
+ db $52, "?", $57
+
+UnknownText_0x1b50c2: ; 0x1b50c2
+ db $0, "Yeah, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Huh? What's up", $4f
+ db $52, "?", $57
+
+UnknownText_0x1b50e9: ; 0x1b50e9
+ db $0, "Yo, ", $52, "!", $4f
+ db "You awake?", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "How's it going?", $57
+
+UnknownText_0x1b511a: ; 0x1b511a
+ db $0, "Yo, ", $52, "! You", $4f
+ db "free right now?", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "How's it going?", $57
+
+UnknownText_0x1b5154: ; 0x1b5154
+ db $0, "Yo, ", $52, "!", $4f
+ db "Were you asleep?", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "How's it going?", $57
+
+UnknownText_0x1b518b: ; 0x1b518b
+ db $0, "How are your", $4f
+ db "#MON doing?", $51
+ db "My #MON are a", $4f
+ db "bit too energetic.", $51
+ db "@"
+ TX_RAM $d0ac
+ db $0, ",", $4f
+ db "especially.", $51
+ db "Every time it", $4f
+ db "spots a trainer,", $55
+ db "it has to battle.", $51
+ db "It gets to be a", $4f
+ db "bit much for me!", $57
+
+UnknownText_0x1b522b: ; 0x1b522b
+ db $0, "My @"
+ TX_RAM $d0ac
+ db $0, "'s", $4f
+ db "looking tougher", $55
+ db "than ever.", $51
+ db "It looks even", $4f
+ db "tougher than me!", $57
+
+UnknownText_0x1b5270: ; 0x1b5270
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking…", $51
+ db "Hi, ", $14, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b52a5: ; 0x1b52a5
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking…", $51
+ db "Hi, ", $14, "!", $57
+
+UnknownText_0x1b52cc: ; 0x1b52cc
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking…", $51
+ db "Hi, ", $14, "!", $4f
+ db "Good evening!", $57
+
+UnknownText_0x1b5301: ; 0x1b5301
+ db $0, $14, ", good", $4f
+ db "morning!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you doing?", $57
+
+UnknownText_0x1b5335: ; 0x1b5335
+ db $0, "Hi, ", $14, "!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you doing?", $57
+
+UnknownText_0x1b535f: ; 0x1b535f
+ db $0, $14, ", good", $4f
+ db "evening!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you doing?", $57
+
+UnknownText_0x1b5393: ; 0x1b5393
+ db $0, "How are your", $4f
+ db "#MON doing?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, "'s", $4f
+ db "doing as great as", $55
+ db "ever.", $51
+ db "Let's keep at it", $4f
+ db "and become #MON", $55
+ db "CHAMPS!", $57
+
+UnknownText_0x1b53f7: ; 0x1b53f7
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh, ", $14, ".", $4f
+ db "Good morning.", $51
+ db $57
+
+UnknownText_0x1b5424: ; 0x1b5424
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh. Hi, ", $14, ".", $57
+
+UnknownText_0x1b5446: ; 0x1b5446
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh, ", $14, ".", $4f
+ db "Good evening.", $57
+
+UnknownText_0x1b5472: ; 0x1b5472
+ db $0, "Good morning,", $4f
+ db $14, "!", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Were you sleeping?", $57
+
+UnknownText_0x1b54a6: ; 0x1b54a6
+ db $0, $14, ", hi!", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Do you have some", $4f
+ db "time?", $57
+
+UnknownText_0x1b54d4: ; 0x1b54d4
+ db $0, "Hi, ", $14, ".", $4f
+ db "Good evening.", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "I hope you were", $4f
+ db "awake.", $57
+
+UnknownText_0x1b5510: ; 0x1b5510
+ db $0, "Are you the kind", $4f
+ db "of person who goes", $51
+ db "to #MON CENTERS", $4f
+ db "often?", $51
+ db "I go every day.", $4f
+ db "Watching out for", $51
+ db "the health of your", $4f
+ db "#MON is a basic", $51
+ db "part of being a", $4f
+ db "#MON trainer.", $57
+
+UnknownText_0x1b55ae: ; 0x1b55ae
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, ", $14, "?", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b55da: ; 0x1b55da
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, ", $14, "? Hi!", $57
+
+UnknownText_0x1b55fc: ; 0x1b55fc
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, ", $14, "?", $4f
+ db "Good evening!", $57
+
+UnknownText_0x1b5628: ; 0x1b5628
+ db $0, "Oh, ", $14, "?", $51
+ db "Tweet! Yeah, it's", $4f
+ db "me, @"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b564c: ; 0x1b564c
+ db $0, "Oh, ", $14, "?", $51
+ db "Tweet! Yeah, it's", $4f
+ db "me, @"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b5670: ; 0x1b5670
+ db $0, "Oh, ", $14, "?", $51
+ db "Tweet! Yeah, it's", $4f
+ db "me, @"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b5694: ; 0x1b5694
+ db $0, "Are your #MON", $4f
+ db "still cooking?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " has", $4f
+ db "too much energy.", $51
+ db "Once it takes off,", $4f
+ db "it won't come back", $55
+ db "for a while.", $57
+
+UnknownText_0x1b5702: ; 0x1b5702
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh. Hi, ", $52, ".", $4f
+ db "What's up?", $57
+
+UnknownText_0x1b572e: ; 0x1b572e
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, hi, ", $52, ",", $4f
+ db "what's up?", $57
+
+UnknownText_0x1b575a: ; 0x1b575a
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, hi, ", $52, ",", $4f
+ db "what's up?", $57
+
+UnknownText_0x1b5786: ; 0x1b5786
+ db $0, "You're slow! Hurry", $4f
+ db "up and answer!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b57b7: ; 0x1b57b7
+ db $0, "You're slow! Hurry", $4f
+ db "up and answer!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b57e8: ; 0x1b57e8
+ db $0, "You're slow! Hurry", $4f
+ db "up and answer!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b5819: ; 0x1b5819
+ db $0, "Hey, how are your", $4f
+ db "#MON doing?", $51
+ db "What? Great?", $4f
+ db "I see…", $51
+ db "What? My #MON?", $51
+ db "Of course they're", $4f
+ db "doing great! What", $51
+ db "kind of a question", $4f
+ db "is that?", $57
+
+UnknownText_0x1b589a: ; 0x1b589a
+ db $0, "Hi, @"
+ TX_RAM $d099
+ db $0, " here!", $51
+ db "Oh, ", $52, "? You", $4f
+ db "doing well?", $57
+
+UnknownText_0x1b58c2: ; 0x1b58c2
+ db $0, "Hi, @"
+ TX_RAM $d099
+ db $0, " here!", $51
+ db "Oh, ", $52, "? You", $4f
+ db "doing well?", $57
+
+UnknownText_0x1b58ea: ; 0x1b58ea
+ db $0, "Hi, @"
+ TX_RAM $d099
+ db $0, " here!", $51
+ db "Oh, ", $52, "? You", $4f
+ db "doing well?", $57
+
+UnknownText_0x1b5912: ; 0x1b5912
+ db $0, "Yo, ", $52, "!", $4f
+ db "How're you doing?", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ",", $4f
+ db "got a minute?", $57
+
+UnknownText_0x1b5948: ; 0x1b5948
+ db $0, "Yo, ", $52, "! How's", $4f
+ db "it going?", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Got a minute?", $57
+
+UnknownText_0x1b597c: ; 0x1b597c
+ db $0, "Yo, ", $52, "!", $4f
+ db "How're you doing?", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ",", $4f
+ db "got a minute?", $57
+
+UnknownText_0x1b59b2: ; 0x1b59b2
+ db $0, "How are your", $4f
+ db "#MON doing?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, "'s", $4f
+ db "raring to go, just", $55
+ db "like always.", $51
+ db "It's the only one", $4f
+ db "I have. I'm going", $51
+ db "to become a great", $4f
+ db "trainer with it!", $57
+
+UnknownText_0x1b5a3b: ; 0x1b5a3b
+ db $0, "Hello? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking.", $51
+ db "Oh. Hi, ", $14, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b5a74: ; 0x1b5a74
+ db $0, "Hello? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking.", $51
+ db "Oh, hi, ", $14, "!", $57
+
+UnknownText_0x1b5a9f: ; 0x1b5a9f
+ db $0, "Hello? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking.", $51
+ db "Oh, hi, ", $14, "!", $4f
+ db "Good evening!", $57
+
+UnknownText_0x1b5ad8: ; 0x1b5ad8
+ db $0, $14, ", good", $4f
+ db "morning!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Isn't it nice out?", $57
+
+UnknownText_0x1b5b0b: ; 0x1b5b0b
+ db $0, $14, ", howdy!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Isn't it nice out?", $57
+
+UnknownText_0x1b5b37: ; 0x1b5b37
+ db $0, "Good evening,", $4f
+ db $14, "!", $51
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Were you awake?", $57
+
+UnknownText_0x1b5b68: ; 0x1b5b68
+ db $0, "How are your", $4f
+ db "#MON doing?", $51
+ db "My #MON have", $4f
+ db "too much energy to", $51
+ db "burn. It gets to", $4f
+ db "be a problem.", $51
+ db "Of all my #MON,", $4f
+ db "@"
+ TX_RAM $d0ac
+ db $0, " is the", $55
+ db "hardest to handle.", $51
+ db "Working with it is", $4f
+ db "exhausting.", $57
+
+UnknownText_0x1b5c10: ; 0x1b5c10
+ db $0, "Yes? Ah, ", $14, ".", $51
+ db "You're courteous", $4f
+ db "enough to state", $51
+ db "your name when you", $4f
+ db "call on the phone.", $57
+
+UnknownText_0x1b5c63: ; 0x1b5c63
+ db $0, "Yes? Ah, ", $14, ".", $51
+ db "You're courteous", $4f
+ db "enough to state", $51
+ db "your name when you", $4f
+ db "call on the phone.", $57
+
+UnknownText_0x1b5cb6: ; 0x1b5cb6
+ db $0, "Yes? Ah, ", $14, ".", $51
+ db "You're courteous", $4f
+ db "enough to state", $51
+ db "your name when you", $4f
+ db "call on the phone.", $57
+
+UnknownText_0x1b5d09: ; 0x1b5d09
+ db $0, "Hiya, it's Uncle", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b5d21: ; 0x1b5d21
+ db $0, "Hiya, it's Uncle", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b5d39: ; 0x1b5d39
+ db $0, "Hiya, it's Uncle", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b5d51: ; 0x1b5d51
+ db $0, "Are you taking", $4f
+ db "good care of your", $51
+ db "#MON? You have", $4f
+ db "to be good to your", $55
+ db "partners!", $57
+
+UnknownText_0x1b5d9f: ; 0x1b5d9f
+ db $0, "Hello, @"
+ TX_RAM $d099
+ db $0, $4f
+ db "speaking.", $51
+ db "Oh, ", $14, ".", $4f
+ db "Good morning.", $57
+
+UnknownText_0x1b5dcc: ; 0x1b5dcc
+ db $0, "Hello, @"
+ TX_RAM $d099
+ db $0, $4f
+ db "speaking.", $51
+ db "Oh, ", $14, ".", $4f
+ db "How are you?", $57
+
+UnknownText_0x1b5df8: ; 0x1b5df8
+ db $0, "Hello, @"
+ TX_RAM $d099
+ db $0, $4f
+ db "speaking.", $51
+ db "Oh, ", $14, ".", $4f
+ db "Good evening.", $57
+
+UnknownText_0x1b5e25: ; 0x1b5e25
+ db $0, "Good morning,", $4f
+ db $14, ".", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Were you sleeping?", $57
+
+UnknownText_0x1b5e59: ; 0x1b5e59
+ db $0, "Hi, ", $14, ".", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "How are things", $4f
+ db "going for you?", $57
+
+UnknownText_0x1b5e8e: ; 0x1b5e8e
+ db $0, "Good evening,", $4f
+ db $14, ".", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Are you awake?", $57
+
+UnknownText_0x1b5ebe: ; 0x1b5ebe
+ db $0, "I had some time,", $4f
+ db "so I called you.", $51
+ db "So anyway, how are", $4f
+ db "your #MON?", $51
+ db "Me, I take my", $4f
+ db "@"
+ TX_RAM $d0ac
+ db $0, " to the", $51
+ db "#MON CENTER in", $4f
+ db "VIOLET every day,", $51
+ db "so it's doing just", $4f
+ db "fantastic!", $51
+ db "I'm friends with", $4f
+ db "the receptionist!", $57
+
+UnknownText_0x1b5f7a: ; 0x1b5f7a
+ db $0, "Yeah, @"
+ TX_RAM $d099
+ db $0, " the", $4f
+ db "HIKER here.", $51
+ db "Ah, ", $52, "!", $57
+
+UnknownText_0x1b5f9e: ; 0x1b5f9e
+ db $0, "Yeah, @"
+ TX_RAM $d099
+ db $0, " the", $4f
+ db "HIKER here.", $51
+ db "Ah, ", $52, ",", $4f
+ db "right?", $57
+
+UnknownText_0x1b5fc9: ; 0x1b5fc9
+ db $0, "Yeah, @"
+ TX_RAM $d099
+ db $0, " the", $4f
+ db "HIKER here.", $51
+ db "Ah, ", $52, ", isn't", $4f
+ db "it?", $57
+
+UnknownText_0x1b5ff6: ; 0x1b5ff6
+ db $0, "Yo, ", $52, "?", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, $4f
+ db "the HIKER!", $57
+
+UnknownText_0x1b6017: ; 0x1b6017
+ db $0, "Hey, is this", $4f
+ db $52, "?", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, $4f
+ db "the HIKER!", $57
+
+UnknownText_0x1b6041: ; 0x1b6041
+ db $0, $52, ", you still", $4f
+ db "awake?", $51
+ db "This is @"
+ TX_RAM $d099
+ db $0, $4f
+ db "the HIKER!", $57
+
+UnknownText_0x1b606f: ; 0x1b606f
+ db $0, "Are your #MON", $4f
+ db "as feisty as ever?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " and", $4f
+ db "me--we have energy", $51
+ db "to burn. We hike", $4f
+ db "up mountains every", $51
+ db "day to work out", $4f
+ db "all our energy.", $57
+
+UnknownText_0x1b60f5: ; 0x1b60f5
+ db $0, "Yes? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking.", $51
+ db "Hey, ", $14, "!", $57
+
+UnknownText_0x1b611b: ; 0x1b611b
+ db $0, "Yes? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking.", $51
+ db "This must be", $4f
+ db $14, ".", $57
+
+UnknownText_0x1b6149: ; 0x1b6149
+ db $0, "Yes? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " speaking.", $51
+ db "Ah, ", $14, "!", $57
+
+UnknownText_0x1b616e: ; 0x1b616e
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db $14, ", right?", $57
+
+UnknownText_0x1b618f: ; 0x1b618f
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db $14, ", what are", $4f
+ db "you doing?", $57
+
+UnknownText_0x1b61bd: ; 0x1b61bd
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db $14, ", sorry to", $4f
+ db "call you so late.", $57
+
+UnknownText_0x1b61f2: ; 0x1b61f2
+ db $0, "How do you raise", $4f
+ db "your #MON?", $51
+ db "I do all sorts", $4f
+ db "of things, like", $51
+ db "leaving them in", $4f
+ db "DAY-CARE and", $51
+ db "toughening them up", $4f
+ db "with items.", $57
+
+UnknownText_0x1b626a: ; 0x1b626a
+ db $0, "Hello? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, ", $14, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b6296: ; 0x1b6296
+ db $0, "Hello? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, ", $14, "!", $4f
+ db "Hi, how are you?", $57
+
+UnknownText_0x1b62c5: ; 0x1b62c5
+ db $0, "Hello? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, ", $14, "!", $4f
+ db "Good evening!", $57
+
+UnknownText_0x1b62f1: ; 0x1b62f1
+ db $0, $14, "?", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b630e: ; 0x1b630e
+ db $0, $14, "?", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ". Is", $4f
+ db "this a bad time?", $57
+
+UnknownText_0x1b6331: ; 0x1b6331
+ db $0, $14, "?", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "Got time to chat?", $57
+
+UnknownText_0x1b6352: ; 0x1b6352
+ db $0, "Are your #MON", $4f
+ db "still tough?", $51
+ db "I train every day", $4f
+ db "with @"
+ TX_RAM $d0ac
+ db $0, ".", $57
+
+UnknownText_0x1b638c: ; 0x1b638c
+ db $0, "Hello? @"
+ TX_RAM $d099
+ db $0, $4f
+ db "here…", $51
+ db "Hey, ", $14, "!", $57
+
+UnknownText_0x1b63a8: ; 0x1b63a8
+ db $0, "Hello? @"
+ TX_RAM $d099
+ db $0, $4f
+ db "here…", $51
+ db "Wow, ", $14, "!", $57
+
+UnknownText_0x1b63c4: ; 0x1b63c4
+ db $0, "Hello? @"
+ TX_RAM $d099
+ db $0, $4f
+ db "here…", $51
+ db "Yippee, ", $14, "!", $57
+
+UnknownText_0x1b63e3: ; 0x1b63e3
+ db $0, "Uh, hello.", $4f
+ db $14, "?", $51
+ db "It's your pal,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6407: ; 0x1b6407
+ db $0, "Uh, hello,", $4f
+ db $14, "?", $51
+ db "It's your buddy", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b642c: ; 0x1b642c
+ db $0, "Uh, hello,", $4f
+ db $14, "?", $51
+ db "It's your sidekick", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6454: ; 0x1b6454
+ db $0, "Yeah, hello.", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "…Huh, ", $14, "? Yo!", $57
+
+UnknownText_0x1b647e: ; 0x1b647e
+ db $0, "Yeah, hello, you", $4f
+ db "got @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "…Huh, ", $14, "? Yo!", $57
+
+UnknownText_0x1b64a8: ; 0x1b64a8
+ db $0, "Yeah, hello, you", $4f
+ db "got @"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "…Huh, ", $14, "? Yo!", $57
+
+UnknownText_0x1b64d2: ; 0x1b64d2
+ db $0, "Yeah, hello?", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " calling.", $51
+ db "What are you up", $4f
+ db "to, ", $14, "?", $57
+
+UnknownText_0x1b6506: ; 0x1b6506
+ db $0, "Yeah, hello?", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " calling.", $51
+ db "Where are you now,", $4f
+ db $14, "?", $57
+
+UnknownText_0x1b6539: ; 0x1b6539
+ db $0, "Yeah, hello?", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " calling.", $51
+ db "Are you awake now,", $4f
+ db $14, "?", $57
+
+UnknownText_0x1b656c: ; 0x1b656c
+ db $0, "I bet your #MON", $4f
+ db "are a lot stronger", $55
+ db "than before.", $57
+
+UnknownText_0x1b659d: ; 0x1b659d
+ db $0, "Yup, it's @"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Is this ", $14, "?", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b65c7: ; 0x1b65c7
+ db $0, "Yup, it's @"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Is that ", $14, "?", $57
+
+UnknownText_0x1b65e3: ; 0x1b65e3
+ db $0, "Yup, it's @"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Is that ", $14, "?", $4f
+ db "Good evening!", $57
+
+UnknownText_0x1b660d: ; 0x1b660d
+ db $0, "Hello! It's me,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6624: ; 0x1b6624
+ db $0, "Hello! It's me,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b663b: ; 0x1b663b
+ db $0, "Hello! It's me,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6652: ; 0x1b6652
+ db $0, $14, ", are you", $4f
+ db "raising your", $55
+ db "#MON properly?", $51
+ db "I read in a book", $4f
+ db "that you should", $51
+ db "raise any #MON", $4f
+ db "you catch with", $55
+ db "love and care.", $57
+
+UnknownText_0x1b66c8: ; 0x1b66c8
+ db $0, "Hi, @"
+ TX_RAM $d099
+ db $0, " on the", $4f
+ db "line.", $51
+ db "Hey! It's ", $14, "!", $57
+
+UnknownText_0x1b66ec: ; 0x1b66ec
+ db $0, "Hi, @"
+ TX_RAM $d099
+ db $0, " on the", $4f
+ db "line.", $51
+ db "I know!", $4f
+ db "It's ", $14, "!", $57
+
+UnknownText_0x1b6713: ; 0x1b6713
+ db $0, "Hi, @"
+ TX_RAM $d099
+ db $0, " on the", $4f
+ db "line.", $51
+ db $14, "?", $4f
+ db "What's up?", $57
+
+UnknownText_0x1b6738: ; 0x1b6738
+ db $0, "Uh, ", $14, "?", $51
+ db "It's me!", $4f
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6757: ; 0x1b6757
+ db $0, "Uh, ", $14, "?", $51
+ db "It's me!", $4f
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6776: ; 0x1b6776
+ db $0, "Uh, ", $14, "?", $51
+ db "It's me!", $4f
+ db "It's me, @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b6795: ; 0x1b6795
+ db $0, "My @"
+ TX_RAM $d0ac
+ db $0, " is", $4f
+ db "so full of energy,", $51
+ db "it's a little", $4f
+ db "scary.", $51
+ db "How are your", $4f
+ db "#MON doing?", $57
+
+UnknownText_0x1b67e2: ; 0x1b67e2
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Hi, ", $14, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b680e: ; 0x1b680e
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Hi, ", $14, ", good", $4f
+ db "day!", $57
+
+UnknownText_0x1b6836: ; 0x1b6836
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Hi, ", $14, ", good", $4f
+ db "evening!", $57
+
+UnknownText_0x1b6862: ; 0x1b6862
+ db $0, "Hi, ", $14, ", good", $4f
+ db "morning!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you?", $57
+
+UnknownText_0x1b6890: ; 0x1b6890
+ db $0, "Hi, ", $14, ", good", $4f
+ db "day!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you?", $57
+
+UnknownText_0x1b68ba: ; 0x1b68ba
+ db $0, "Hi, ", $14, ", good", $4f
+ db "evening!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ".", $4f
+ db "How are you?", $57
+
+UnknownText_0x1b68e8: ; 0x1b68e8
+ db $0, "How are your", $4f
+ db "#MON doing?", $51
+ db "You know PROF.OAK,", $4f
+ db "so of course your", $55
+ db "#MON are fine!", $51
+ db "My #MON are", $4f
+ db "doing well too.", $51
+ db "But then, I am", $4f
+ db "trying to become a", $51
+ db "#MON professor,", $4f
+ db "so that shouldn't", $55
+ db "be a big surprise.", $57
+
+UnknownText_0x1b69a8: ; 0x1b69a8
+ db $0, "Hi, ", $14, "?", $51
+ db "Good morning pika.", $4f
+ db "What's up pika?", $57
+
+UnknownText_0x1b69d2: ; 0x1b69d2
+ db $0, "Hi, ", $14, "?", $51
+ db "Good day pika,", $4f
+ db "what's up pika?", $57
+
+UnknownText_0x1b69f8: ; 0x1b69f8
+ db $0, "Hi, ", $14, "?", $51
+ db "Good evening pika,", $4f
+ db "what's up pika?", $57
+
+UnknownText_0x1b6a22: ; 0x1b6a22
+ db $0, $14, " pika, good", $4f
+ db "morning!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ", how", $4f
+ db "pika are you?", $57
+
+UnknownText_0x1b6a56: ; 0x1b6a56
+ db $0, $14, " pika, good", $4f
+ db "pika day!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ", how", $4f
+ db "pika are you?", $57
+
+UnknownText_0x1b6a8b: ; 0x1b6a8b
+ db $0, $14, " pika, good", $4f
+ db "evening!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, ". Were", $4f
+ db "you pika awake?", $57
+
+UnknownText_0x1b6ac2: ; 0x1b6ac2
+ db $0, "You have to hear", $4f
+ db "this! My lovable", $51
+ db "@"
+ TX_RAM $d0ac
+ db $0, " looked", $4f
+ db "at me and grinned!", $51
+ db "It must be because", $4f
+ db "our hearts beat", $55
+ db "together as one!", $57
+
+UnknownText_0x1b6b39: ; 0x1b6b39
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, Good morning,", $4f
+ db $14, ".", $57
+
+UnknownText_0x1b6b65: ; 0x1b6b65
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "That voice…", $4f
+ db $14, ", right?", $57
+
+UnknownText_0x1b6b92: ; 0x1b6b92
+ db $0, "Hello, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "This must be", $4f
+ db $14, "!", $57
+
+UnknownText_0x1b6bb9: ; 0x1b6bb9
+ db $0, "Hello!", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " here…", $51
+ db "Good morning! The", $4f
+ db "weather's great!", $57
+
+UnknownText_0x1b6bef: ; 0x1b6bef
+ db $0, "Hello!", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " here…", $51
+ db "What a perfect day", $4f
+ db "for fishing!", $57
+
+UnknownText_0x1b6c23: ; 0x1b6c23
+ db $0, "Hello!", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " here…", $51
+ db "It's a great night", $4f
+ db "for fishing!", $57
+
+UnknownText_0x1b6c56: ; 0x1b6c56
+ db $0, "How's your trip", $4f
+ db "coming along?", $51
+ db "I can't complain", $4f
+ db "about my fishing!", $57
+
+UnknownText_0x1b6c96: ; 0x1b6c96
+ db $0, "Yes? @"
+ TX_RAM $d099
+ db $0, " here…", $51
+ db "Ah, ", $52, ". What", $4f
+ db "can I do for you?", $57
+
+UnknownText_0x1b6cc6: ; 0x1b6cc6
+ db $0, "Yes? @"
+ TX_RAM $d099
+ db $0, " here…", $51
+ db "Ah, ", $52, ". What", $4f
+ db "can I do for you?", $57
+
+UnknownText_0x1b6cf6: ; 0x1b6cf6
+ db $0, "Yes? @"
+ TX_RAM $d099
+ db $0, " here…", $51
+ db "Ah, ", $52, ". What", $4f
+ db "can I do for you?", $57
+
+UnknownText_0x1b6d26: ; 0x1b6d26
+ db $0, "Hiya, ", $52, ". How", $4f
+ db "are you doing?", $51
+ db "Hey! It's me,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b6d57: ; 0x1b6d57
+ db $0, "Hiya, ", $52, ", how", $4f
+ db "are you doing?", $51
+ db "Hey, it's me,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b6d88: ; 0x1b6d88
+ db $0, "Hiya, ", $52, ", how", $4f
+ db "are you doing?", $51
+ db "Hey, it's me,", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b6db9: ; 0x1b6db9
+ db $0, "Oh yeah, I saw you", $4f
+ db "coming out of a", $51
+ db "#MON CENTER the", $4f
+ db "other day.", $51
+ db "You heal your", $4f
+ db "#MON regularly,", $51
+ db "don't you?", $4f
+ db "I'm impressed.", $51
+ db "Heh, my @"
+ TX_RAM $d0ac
+ db $0, $4f
+ db "is so tough, it", $51
+ db "doesn't need to go", $4f
+ db "to #MON CENTERS", $55
+ db "often. Heheh!", $57
+
+UnknownText_0x1b6e7c: ; 0x1b6e7c
+ db $0, "Yes? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh, ", $14, ".", $4f
+ db "Good morning.", $57
+
+UnknownText_0x1b6ea6: ; 0x1b6ea6
+ db $0, "Yes? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh, ", $14, ".", $4f
+ db "Hello.", $57
+
+UnknownText_0x1b6ec9: ; 0x1b6ec9
+ db $0, "Yes? This is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, ".", $51
+ db "Oh, ", $14, ", good", $4f
+ db "evening.", $57
+
+UnknownText_0x1b6ef3: ; 0x1b6ef3
+ db $0, "Is this ", $14, "?", $51
+ db "Good morning. This", $4f
+ db "is @"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b6f1c: ; 0x1b6f1c
+ db $0, "Is this ", $14, "?", $51
+ db "Hi, it's @"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b6f37: ; 0x1b6f37
+ db $0, "Is this ", $14, "?", $51
+ db "Good evening. This", $4f
+ db "is @"
+ TX_RAM $d099
+ db $0, ".", $57
+
+UnknownText_0x1b6f60: ; 0x1b6f60
+ db $0, "Are your #MON", $4f
+ db "doing well?", $51
+ db "I hope you take", $4f
+ db "them to a #MON", $55
+ db "CENTER every day.", $51
+ db "Don't push them", $4f
+ db "too hard.", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " is", $4f
+ db "cute and lively", $51
+ db "precisely because", $4f
+ db "I take it to a", $51
+ db "#MON CENTER", $4f
+ db "every day.", $57
+
+UnknownText_0x1b7019: ; 0x1b7019
+ db $0, "Yes, hello?", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " here!", $51
+ db "Morning, ", $14, "!", $51
+ db "Are you using bird", $4f
+ db "#MON?", $57
+
+UnknownText_0x1b7057: ; 0x1b7057
+ db $0, "Yes, hello?", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " here!", $51
+ db "Hi, ", $14, "!", $51
+ db "Are your bird", $4f
+ db "#MON flying?", $57
+
+UnknownText_0x1b7092: ; 0x1b7092
+ db $0, "Yes, hello?", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, " here!", $51
+ db "Evening, ", $14, "!", $4f
+ db "Are you letting", $51
+ db "your bird #MON", $4f
+ db "see some action?", $57
+
+UnknownText_0x1b70e7: ; 0x1b70e7
+ db $0, "Good morning,", $4f
+ db $14, "!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b7112: ; 0x1b7112
+ db $0, "Hi, ", $14, "!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "Remember me?", $57
+
+UnknownText_0x1b7132: ; 0x1b7132
+ db $0, "Good evening,", $4f
+ db $14, "!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "Are you free now?", $57
+
+UnknownText_0x1b7161: ; 0x1b7161
+ db $0, "Are you and your", $4f
+ db "#MON fine?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, $4f
+ db "looks like it will", $51
+ db "get tough enough", $4f
+ db "to face and beat", $51
+ db "the legendary bird", $4f
+ db "#MON!", $57
+
+UnknownText_0x1b71d5: ; 0x1b71d5
+ db $0, "Hello, you have", $4f
+ db "reached @"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Ah, ", $14, ".", $57
+
+UnknownText_0x1b71fc: ; 0x1b71fc
+ db $0, "Hello, you have", $4f
+ db "reached @"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Ah, ", $14, ", is", $4f
+ db "it?", $57
+
+UnknownText_0x1b722a: ; 0x1b722a
+ db $0, "Hello, you have", $4f
+ db "reached @"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Ah, if it isn't", $4f
+ db $14, ".", $57
+
+UnknownText_0x1b725c: ; 0x1b725c
+ db $0, "Ah, it's @"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Have you got a", $4f
+ db "moment?", $57
+
+UnknownText_0x1b7283: ; 0x1b7283
+ db $0, "Ah, it's @"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Can you talk now?", $57
+
+UnknownText_0x1b72a5: ; 0x1b72a5
+ db $0, "Ah, it's @"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Sorry for calling", $4f
+ db "so late.", $57
+
+UnknownText_0x1b72d0: ; 0x1b72d0
+ db $0, "Have your #MON", $4f
+ db "grown any?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " has", $4f
+ db "grown quite a bit.", $57
+
+UnknownText_0x1b730b: ; 0x1b730b
+ TX_RAM $d099
+ db $0, " here…", $51
+ db $52, "! Beautiful", $4f
+ db "morning, hey?", $57
+
+UnknownText_0x1b7331: ; 0x1b7331
+ TX_RAM $d099
+ db $0, " here…", $51
+ db $52, "! Beautiful", $4f
+ db "weather, hey?", $57
+
+UnknownText_0x1b7357: ; 0x1b7357
+ TX_RAM $d099
+ db $0, " here…", $51
+ db $52, "! Beautiful", $4f
+ db "moonlight, hey?", $57
+
+UnknownText_0x1b737f: ; 0x1b737f
+ db $0, "Hey, ", $52, "!", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b7397: ; 0x1b7397
+ db $0, "Hey, ", $52, "!", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b73af: ; 0x1b73af
+ db $0, "Hey, ", $52, "!", $4f
+ db "This is @"
+ TX_RAM $d099
+ db $0, "!", $57
+
+UnknownText_0x1b73c7: ; 0x1b73c7
+ db $0, "Yup, yup!", $4f
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Hah, and here's", $4f
+ db $14, "!", $57
+
+UnknownText_0x1b73ef: ; 0x1b73ef
+ db $0, "Yup, yup!", $4f
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Hah, and here's", $4f
+ db $14, "!", $57
+
+UnknownText_0x1b7417: ; 0x1b7417
+ db $0, "Yup, yup!", $4f
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Hah, and here's", $4f
+ db $14, "!", $57
+
+UnknownText_0x1b743f: ; 0x1b743f
+ db $0, $14, ", it's", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Have you had a", $4f
+ db "proper breakfast?", $57
+
+UnknownText_0x1b746f: ; 0x1b746f
+ db $0, $14, ", it's", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Have you had a", $4f
+ db "proper lunch?", $57
+
+UnknownText_0x1b749b: ; 0x1b749b
+ db $0, $14, ", it's", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "!", $51
+ db "Have you had a", $4f
+ db "proper dinner?", $57
+
+UnknownText_0x1b74c8: ; 0x1b74c8
+ db $0, "Are your #MON", $4f
+ db "looking good?", $51
+ db "My @"
+ TX_RAM $d0ac
+ db $0, " and", $4f
+ db "me--we're looking", $51
+ db "mighty dandy!", $4f
+ db "Hahahah!", $57
+
+UnknownText_0x1b751a: ; 0x1b751a
+ db $0, "Yes, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh. Hi, ", $14, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b7548: ; 0x1b7548
+ db $0, "Yes, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, hi, ", $14, "!", $4f
+ db "Yahoo!", $57
+
+UnknownText_0x1b756f: ; 0x1b756f
+ db $0, "Yes, this is", $4f
+ db "@"
+ TX_RAM $d099
+ db $0, "…", $51
+ db "Oh, hi, ", $14, "!", $57
+
+UnknownText_0x1b758f: ; 0x1b758f
+ db $0, $14, "!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "Good morning!", $57
+
+UnknownText_0x1b75ac: ; 0x1b75ac
+ db $0, $14, "!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "Working hard?", $57
+
+UnknownText_0x1b75c9: ; 0x1b75c9
+ db $0, $14, "!", $51
+ db "It's @"
+ TX_RAM $d099
+ db $0, "!", $4f
+ db "Were you up?", $57
+
+UnknownText_0x1b75e5: ; 0x1b75e5
+ db $0, "Are you raising", $4f
+ db "your #MON?", $51
+ db "Hey, @"
+ TX_RAM $d099
+ db $0, "'s", $4f
+ db "@"
+ TX_RAM $d0ac
+ db $0, " is", $55
+ db "looking good!", $57
+
+UnusedPhoneText: ; 0x1b7624
+ db $0, "Good morning.", $57
diff --git a/wram.asm b/wram.asm
index 645e81ee9..8c9e2dfdd 100644
--- a/wram.asm
+++ b/wram.asm
@@ -615,13 +615,14 @@ LastEnemyMove: ; c71c
ds 1
-SECTION "gfx2",BSS[$c800]
+SECTION "overworldmap",BSS[$c800]
OverworldMap: ; c800
- ds 1280
-
-; cd00
- ds 32
+ ds 1300
+OverworldMapEnd
+
+ ds 12
+SECTION "gfx2",BSS[$cd20]
BGMapBuffer: ; cd20
ds 40