Merge branch 'master' into refactor-preprocessor

This commit is contained in:
Bryan Bishop 2013-09-08 11:18:39 -05:00
commit 5c4dc08ee4
237 changed files with 26614 additions and 6546 deletions

View File

@ -1,3 +1,4 @@
PYTHON := python
.SUFFIXES: .asm .tx .o .gbc .png .2bpp .lz
TEXTFILES := $(shell find ./ -type f -name '*.asm' | grep -v pokecrystal.asm | grep -v constants.asm | grep -v gbhw.asm | grep -v hram.asm | grep -v constants | grep -v wram.asm)
@ -13,36 +14,36 @@ clean:
rm -f pokecrystal.o pokecrystal.gbc
@echo 'rm -f $(TEXTFILES:.asm=.tx)'
@rm -f $(TEXTFILES:.asm=.tx)
pokecrystal.o: $(TEXTFILES:.asm=.tx) wram.asm constants.asm $(shell find constants/ -type f -name '*constants.asm') hram.asm gbhw.asm $(LZ_GFX) $(TWOBPP_GFX)
python prequeue.py $(TEXTQUEUE)
pokecrystal.o: $(TEXTFILES:.asm=.tx) wram.asm constants.asm $(shell find constants/ -type f -name '*.asm') hram.asm gbhw.asm $(LZ_GFX) $(TWOBPP_GFX)
$(PYTHON) prequeue.py $(TEXTQUEUE)
rgbasm -o pokecrystal.o pokecrystal.asm
.asm.tx:
$(eval TEXTQUEUE := $(TEXTQUEUE) $<)
@rm -f $@
baserom.gbc:
python -c "import os; assert 'baserom.gbc' in os.listdir('.'), 'Wait! Need baserom.gbc first. Check README and INSTALL for details.';"
$(PYTHON) -c "import os; assert 'baserom.gbc' in os.listdir('.'), 'Wait! Need baserom.gbc first. Check README and INSTALL for details.';"
pokecrystal.gbc: pokecrystal.o
rgblink -n pokecrystal.sym -m pokecrystal.map -o $@ $<
rgbfix -Cjv -i BYTE -k 01 -l 0x33 -m 0x10 -p 0 -r 3 -t PM_CRYSTAL $@
pngs:
python extras/pokemontools/gfx.py mass-decompress
python extras/pokemontools/gfx.py dump-pngs
$(PYTHON) extras/pokemontools/gfx.py mass-decompress
$(PYTHON) extras/pokemontools/gfx.py dump-pngs
lzs: $(LZ_GFX) $(TWOBPP_GFX)
@:
gfx/pics/%/front.lz: gfx/pics/%/tiles.2bpp gfx/pics/%/front.png
python extras/pokemontools/gfx.py png-to-lz --front $^
$(PYTHON) extras/pokemontools/gfx.py png-to-lz --front $^
gfx/pics/%/tiles.2bpp: gfx/pics/%/tiles.png
python extras/pokemontools/gfx.py png-to-2bpp $<
$(PYTHON) extras/pokemontools/gfx.py png-to-2bpp $<
gfx/pics/%/back.lz: gfx/pics/%/back.png
python extras/pokemontools/gfx.py png-to-lz --vert $<
$(PYTHON) extras/pokemontools/gfx.py png-to-lz --vert $<
gfx/trainers/%.lz: gfx/trainers/%.png
python extras/pokemontools/gfx.py png-to-lz --vert $<
$(PYTHON) extras/pokemontools/gfx.py png-to-lz --vert $<
.png.lz:
python extras/pokemontools/gfx.py png-to-lz $<
$(PYTHON) extras/pokemontools/gfx.py png-to-lz $<
.png.2bpp:
python extras/pokemontools/gfx.py png-to-lz $<
$(PYTHON) extras/pokemontools/gfx.py png-to-lz $<

View File

@ -23,99 +23,7 @@ FarCall EQU $08
Bankswitch EQU $10
JumpTable EQU $28
dwb: MACRO
dw \1
db \2
ENDM
dbw: MACRO
db \1
dw \2
ENDM
dn: MACRO
db \1 << 4 + \2
ENDM
dt: MACRO ; three-byte (big-endian)
db (\1 >> 16) & $ff
db (\1 >> 8) & $ff
db \1 & $ff
ENDM
bigdw: MACRO ; big-endian word
dw ((\1)/$100) + (((\1)&$ff)*$100)
ENDM
callab: MACRO ; address, bank
ld hl, \1
ld a, BANK(\1)
rst FarCall
ENDM
callba: MACRO ; bank, address
ld a, BANK(\1)
ld hl, \1
rst FarCall
ENDM
TX_RAM: MACRO
db 1
dw \1
ENDM
TX_FAR: MACRO
db $16
dw \1
db BANK(\1)
ENDM
RGB: MACRO
dw ((\3 << 10) | (\2 << 5) | (\1))
ENDM
note: MACRO
db \1
ENDM
; It's better to use *coord than FuncCoord.
FuncCoord: MACRO
Coord = $c4a0 + 20 * \2 + \1
ENDM
bccoord: MACRO
FuncCoord \1, \2
ld bc, Coord
ENDM
decoord: MACRO
FuncCoord \1, \2
ld de, Coord
ENDM
hlcoord: MACRO
FuncCoord \1, \2
ld hl, Coord
ENDM
; pic animations
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
INCLUDE "macros.asm"
NONE EQU 0
@ -283,6 +191,9 @@ SCREEN_HEIGHT EQU 18
SCREEN_WIDTH_PX EQU 160
SCREEN_HEIGHT_PX EQU 144
BG_MAP_WIDTH EQU 32
BG_MAP_HEIGHT EQU 32
TILE_WIDTH EQU 8

View File

@ -1,6 +1,594 @@
EVENT_FOUGHT_SUDOWOODO EQU $02a
EVENT_FOUGHT_HO_OH EQU $317
EVENT_FOUGHT_LUGIA EQU $318
EVENT_FOUGHT_SUICUNE EQU $335
EVENT_FOUGHT_SNORLAX EQU $750
EVENT_GOT_TM31_MUD_SLAP EQU $008
EVENT_GOT_TM49_FURY_CUTTER EQU $009
EVENT_GOT_TM01_DYNAMICPUNCH EQU $00a
EVENT_GOT_TM45_ATTRACT EQU $00b
EVENT_GOT_TM30_SHADOW_BALL EQU $00c
EVENT_GOT_TM23_IRON_TAIL EQU $00d
EVENT_GOT_TM16_ICY_WIND EQU $00e
EVENT_GOT_TM24_DRAGONBREATH EQU $00f
EVENT_GOT_HM01_CUT EQU $010
EVENT_GOT_HM02_FLY EQU $011
EVENT_GOT_HM03_SURF EQU $012
EVENT_GOT_HM04_STRENGTH EQU $013
EVENT_GOT_HM05_FLASH EQU $014
EVENT_GOT_HM06_WHIRLPOOL EQU $015
EVENT_GOT_OLD_ROD EQU $017
EVENT_GOT_GOOD_ROD EQU $018
EVENT_GOT_SUPER_ROD EQU $019
EVENT_GOT_A_POKEMON_FROM_ELM EQU $01a
EVENT_GOT_CYNDAQUIL_FROM_ELM EQU $01b
EVENT_GOT_TOTODILE_FROM_ELM EQU $01c
EVENT_GOT_CHIKORITA_FROM_ELM EQU $01d
EVENT_GOT_MYSTERY_EGG_FROM_MR_POKEMON EQU $01e
EVENT_GAVE_MYSTERY_EGG_TO_ELM EQU $01f
EVENT_JASMINE_RETURNED_TO_GYM EQU $020
EVENT_CLEARED_RADIO_TOWER EQU $021
EVENT_CLEARED_ROCKET_HIDEOUT EQU $022
EVENT_GOT_SECRETPOTION_FROM_PHARMACY EQU $023
EVENT_GOT_SS_TICKET_FROM_ELM EQU $024
EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER EQU $025
EVENT_REFUSED_TO_HELP_LANCE_AT_LAKE_OF_RAGE EQU $026
EVENT_GOT_BERRY_FROM_ROUTE_30_HOUSE EQU $027
EVENT_MADE_WHITNEY_CRY EQU $028
EVENT_FOUGHT_SUDOWOODO EQU $02a
EVENT_CLEARED_SLOWPOKE_WELL EQU $02b
EVENT_REFUSED_TO_TAKE_EGG_FROM_ELMS_AIDE EQU $02c
EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE EQU $02d
EVENT_MADE_UNOWN_APPEAR_IN_RUINS EQU $02e
EVENT_HEALED_MOOMOO EQU $03d
EVENT_GOT_TM13_SNORE_FROM_MOOMOO_FARM EQU $03e
EVENT_TALKED_TO_FARMER_ABOUT_MOOMOO EQU $03f
EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST EQU $040
EVENT_DUDE_TALKED_TO_YOU EQU $041
EVENT_LEARNED_TO_CATCH_POKEMON EQU $042
EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON EQU $043
EVENT_GOT_SHUCKIE EQU $045
EVENT_MANIA_TOOK_SHUCKIE_OR_LET_YOU_KEEP_HIM EQU $046
EVENT_GOT_SUNNY_DAY_FROM_RADIO_TOWER EQU $047
EVENT_GOT_PINK_BOW_FROM_MARY EQU $048
EVENT_USED_BASEMENT_KEY EQU $049
EVENT_GOT_TM08_ROCK_SMASH EQU $04b
EVENT_GOT_MYSTIC_WATER_IN_CHERRYGROVE EQU $04d
EVENT_GOT_TM05_ROAR EQU $04e
EVENT_GOT_EEVEE EQU $04f
EVENT_GOT_KENYA EQU $050
EVENT_GAVE_KENYA EQU $051
EVENT_GOT_HP_UP_FROM_RANDY EQU $052
EVENT_GOT_TM50_NIGHTMARE EQU $053
EVENT_TOGEPI_HATCHED EQU $054
EVENT_SHOWED_TOGEPI_TO_ELM EQU $055
EVENT_GOT_EVERSTONE_FROM_ELM EQU $056
EVENT_GOT_QUICK_CLAW EQU $057
EVENT_GOT_TM10_HIDDEN_POWER EQU $058
EVENT_GOT_TM36_SLUDGE_BOMB EQU $059
EVENT_GOT_ITEMFINDER EQU $05a
EVENT_GOT_BICYCLE EQU $05b
EVENT_GOT_SQUIRTBOTTLE EQU $05c
EVENT_GOT_MIRACLE_SEED_IN_ROUTE_32 EQU $05d
EVENT_GOT_CHARCOAL_IN_CHARCOAL_KILN EQU $05e
EVENT_GOT_TM02_HEADBUTT EQU $05f
EVENT_DECIDED_TO_HELP_LANCE EQU $060
EVENT_GOT_TYROGUE_FROM_KIYO EQU $061
EVENT_MET_FRIEDA_OF_FRIDAY EQU $062
EVENT_GOT_POISON_BARB_FROM_FRIEDA EQU $063
EVENT_MET_TUSCANY_OF_TUESDAY EQU $064
EVENT_GOT_PINK_BOW_FROM_TUSCANY EQU $065
EVENT_MET_ARTHUR_OF_THURSDAY EQU $066
EVENT_GOT_HARD_STONE_FROM_ARTHUR EQU $067
EVENT_MET_SUNNY_OF_SUNDAY EQU $068
EVENT_GOT_MAGNET_FROM_SUNNY EQU $069
EVENT_MET_WESLEY_OF_WEDNESDAY EQU $06a
EVENT_GOT_BLACKBELT_FROM_WESLEY EQU $06b
EVENT_MET_SANTOS_OF_SATURDAY EQU $06c
EVENT_GOT_SPELL_TAG_FROM_SANTOS EQU $06d
EVENT_MET_MONICA_OF_MONDAY EQU $06e
EVENT_GOT_SHARP_BEAK_FROM_MONICA EQU $06f
EVENT_GOT_SOFT_SAND_FROM_KATE EQU $070
EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA EQU $071
EVENT_GOT_BLACKGLASSES_IN_DARK_CAVE EQU $072
EVENT_GOT_KINGS_ROCK_IN_SLOWPOKE_WELL EQU $073
EVENT_GOT_TM47_STEEL_WING EQU $074
EVENT_GOT_TM37_SANDSTORM EQU $075
EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE EQU $077
EVENT_GOT_CLEAR_BELL EQU $078
EVENT_GOT_SILVER_WING EQU $079
EVENT_GOT_TM12_SWEET_SCENT EQU $07a
EVENT_RELEASED_THE_BEASTS EQU $07b
EVENT_GOT_MASTER_BALL_FROM_ELM EQU $07c
EVENT_FOUND_REVIVE_IN_ROCKET_BASE_B1F EQU $086
EVENT_CAN_GIVE_GS_BALL_TO_KURT EQU $0be
EVENT_RETURNED_MACHINE_PART EQU $0c9
EVENT_MET_MANAGER_AT_POWER_PLANT EQU $0ca
EVENT_MET_ROCKET_GRUNT_AT_CERULEAN_GYM EQU $0cb
EVENT_MET_REDS_MOM EQU $0cc
EVENT_RESTORED_POWER_TO_KANTO EQU $0cd
EVENT_GOT_COINS_FROM_GAMBLER_AT_CELADON EQU $0ce
EVENT_MET_COPYCAT_FOUND_OUT_ABOUT_LOST_ITEM EQU $0cf
EVENT_RETURNED_LOST_ITEM_TO_COPYCAT EQU $0d0
EVENT_GOT_PASS_FROM_COPYCAT EQU $0d1
EVENT_GOT_LOST_ITEM_FROM_FAN_CLUB EQU $0d2
EVENT_LISTENED_TO_FAN_CLUB_PRESIDENT_BUT_BAG_WAS_FULL EQU $0d3
EVENT_LISTENED_TO_FAN_CLUB_PRESIDENT EQU $0d4
EVENT_TALKED_TO_SEAFOAM_GYM_GUY_ONCE EQU $0d5
EVENT_ENABLE_DIPLOMA_PRINTING EQU $0d6
EVENT_CLEARED_NUGGET_BRIDGE EQU $0d8
EVENT_TALKED_TO_WARDENS_GRANDDAUGHTER EQU $0d9
EVENT_GOT_TM03_CURSE EQU $0da
EVENT_GOT_CLEANSE_TAG EQU $0db
EVENT_GOT_TM19_GIGA_DRAIN EQU $0dc
EVENT_GOT_TM06_TOXIC EQU $0dd
EVENT_GOT_UP_GRADE EQU $0de
EVENT_GOT_TM07_ZAP_CANNON EQU $0df
EVENT_GOT_TM42_DREAM_EATER EQU $0e0
EVENT_GOT_TM29_PSYCHIC EQU $0e3
EVENT_FOUND_LEFTOVERS_IN_CELADON_CAFE EQU $0f9
EVENT_FOUND_MACHINE_PART_IN_CERULEAN_GYM EQU $0fb
EVENT_SHOWED_BEVERLY_MARILL EQU $261
EVENT_SHOWED_DEREK_PIKACHU EQU $28d
EVENT_SHOWED_TIFFANY_CLEFAIRY EQU $293
EVENT_BUENA_OFFERED_HER_PHONE_NUMBER_NO_BLUE_CARD EQU $29e
EVENT_SWITCH_1 EQU $2d3
EVENT_SWITCH_2 EQU $2d4
EVENT_SWITCH_3 EQU $2d5
EVENT_EMERGENCY_SWITCH EQU $2d6
EVENT_SWITCH_4 EQU $2d7
EVENT_SWITCH_5 EQU $2d8
EVENT_SWITCH_6 EQU $2d9
EVENT_SWITCH_7 EQU $2da
EVENT_SWITCH_8 EQU $2db
EVENT_SWITCH_9 EQU $2dc
EVENT_SWITCH_10 EQU $2dd
EVENT_SWITCH_11 EQU $2de
EVENT_SWITCH_12 EQU $2df
EVENT_SWITCH_13 EQU $2e0
EVENT_SWITCH_14 EQU $2e1
EVENT_UNCOVERED_STAIRCASE_IN_MAHOGANY_MART EQU $2e2
EVENT_TURNED_OFF_SECURITY_CAMERAS EQU $2e3
EVENT_SECURITY_CAMERA_1 EQU $2e4
EVENT_SECURITY_CAMERA_2 EQU $2e5
EVENT_SECURITY_CAMERA_3 EQU $2e6
EVENT_SECURITY_CAMERA_4 EQU $2e7
EVENT_SECURITY_CAMERA_5 EQU $2e8
EVENT_EXPLODING_TRAP_1 EQU $2e9
EVENT_EXPLODING_TRAP_2 EQU $2ea
EVENT_EXPLODING_TRAP_3 EQU $2eb
EVENT_EXPLODING_TRAP_4 EQU $2ec
EVENT_EXPLODING_TRAP_5 EQU $2ed
EVENT_EXPLODING_TRAP_6 EQU $2ee
EVENT_EXPLODING_TRAP_7 EQU $2ef
EVENT_EXPLODING_TRAP_8 EQU $2f0
EVENT_EXPLODING_TRAP_9 EQU $2f1
EVENT_EXPLODING_TRAP_10 EQU $2f2
EVENT_EXPLODING_TRAP_11 EQU $2f3
EVENT_EXPLODING_TRAP_12 EQU $2f4
EVENT_EXPLODING_TRAP_13 EQU $2f5
EVENT_EXPLODING_TRAP_14 EQU $2f6
EVENT_EXPLODING_TRAP_15 EQU $2f7
EVENT_EXPLODING_TRAP_16 EQU $2f8
EVENT_EXPLODING_TRAP_17 EQU $2f9
EVENT_EXPLODING_TRAP_18 EQU $2fa
EVENT_EXPLODING_TRAP_19 EQU $2fb
EVENT_EXPLODING_TRAP_20 EQU $2fc
EVENT_EXPLODING_TRAP_21 EQU $2fd
EVENT_EXPLODING_TRAP_22 EQU $2fe
EVENT_LEARNED_HAIL_GIOVANNI EQU $2ff
EVENT_OPENED_DOOR_TO_ROCKET_HIDEOUT_TRANSMITTER EQU $300
EVENT_WILLS_ROOM_EXIT_OPEN EQU $30a
EVENT_WILLS_ROOM_ENTRANCE_CLOSED EQU $30b
EVENT_KOGAS_ROOM_EXIT_OPEN EQU $30c
EVENT_KOGAS_ROOM_ENTRANCE_CLOSED EQU $30d
EVENT_BRUNOS_ROOM_EXIT_OPEN EQU $30e
EVENT_KARENS_ROOM_ENTRANCE_CLOSED EQU $30f
EVENT_KARENS_ROOM_EXIT_OPEN EQU $310
EVENT_LANCES_ROOM_ENTRANCE_CLOSED EQU $311
EVENT_FOUGHT_HO_OH EQU $317
EVENT_FOUGHT_LUGIA EQU $318
EVENT_BEAT_RIVAL_IN_MT_MOON EQU $319
EVENT_MET_BILLS_GRANDPA EQU $31a
EVENT_SHOWED_LICKITUNG_TO_BILLS_GRANDPA EQU $31b
EVENT_SHOWED_ODDISH_TO_BILLS_GRANDPA EQU $31c
EVENT_SHOWED_STARYU_TO_BILLS_GRANDPA EQU $31d
EVENT_SHOWED_GROWLITHE_VULPIX_TO_BILLS_GRANDPA EQU $31e
EVENT_SHOWED_PICHU_TO_BILLS_GRANDPA EQU $31f
EVENT_GOT_EVERSTONE_FROM_BILLS_GRANDPA EQU $320
EVENT_GOT_LEAF_STONE_FROM_BILLS_GRANDPA EQU $321
EVENT_GOT_WATER_STONE_FROM_BILLS_GRANDPA EQU $322
EVENT_GOT_FIRE_STONE_FROM_BILLS_GRANDPA EQU $323
EVENT_GOT_THUNDERSTONE_FROM_BILLS_GRANDPA EQU $324
EVENT_LISTENED_TO_RADIO_IN_NEIGHBORS_HOUSE EQU $325
EVENT_WALL_OPENED_IN_HO_OH_CHAMBER EQU $326
EVENT_WALL_OPENED_IN_KABUTO_CHAMBER EQU $327
EVENT_WALL_OPENED_IN_OMANYTE_CHAMBER EQU $328
EVENT_WALL_OPENED_IN_AERODACTYL_CHAMBER EQU $329
EVENT_WADE_HAS_BERRY EQU $32b
EVENT_WADE_HAS_PSNCUREBERRY EQU $32c
EVENT_WADE_HAS_PRZCUREBERRY EQU $32d
EVENT_WADE_HAS_BITTER_BERRY EQU $32e
EVENT_WILTON_HAS_ULTRA_BALL EQU $32f
EVENT_WILTON_HAS_GREAT_BALL EQU $330
EVENT_WILTON_HAS_POKE_BALL EQU $331
EVENT_KOJI_ALLOWS_YOU_PASSAGE_TO_TIN_TOWER EQU $334
EVENT_FOUGHT_SUICUNE EQU $335
EVENT_GOT_RAINBOW_WING EQU $336
EVENT_HUEY_PROTEIN EQU $337
EVENT_JOEY_HP_UP EQU $338
EVENT_VANCE_CARBOS EQU $339
EVENT_PARRY_IRON EQU $33a
EVENT_ERIN_CALCIUM EQU $33b
EVENT_BUENA_OFFERED_HER_PHONE_NUMBER EQU $33c
EVENT_MET_BUENA EQU $33d
EVENT_GOT_ODD_EGG EQU $33e
EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER EQU $340
EVENT_BEAT_SWIMMERF_ELAINE EQU $3e8
EVENT_BEAT_SWIMMERF_PAULA EQU $3e9
EVENT_BEAT_SWIMMERF_KAYLEE EQU $3ea
EVENT_BEAT_SWIMMERF_SUSIE EQU $3eb
EVENT_BEAT_SWIMMERF_DENISE EQU $3ec
EVENT_BEAT_SWIMMERF_KARA EQU $3ed
EVENT_BEAT_SWIMMERF_WENDY EQU $3ee
EVENT_BEAT_SWIMMERF_DAWN EQU $3f3
EVENT_BEAT_SWIMMERF_NICOLE EQU $3f5
EVENT_BEAT_SWIMMERF_LORI EQU $3f6
EVENT_BEAT_SWIMMERF_NIKKI EQU $3f8
EVENT_BEAT_SWIMMERF_DIANA EQU $3f9
EVENT_BEAT_SWIMMERF_BRIANA EQU $3fa
EVENT_BEAT_BIRD_KEEPER_ROD EQU $3fb
EVENT_BEAT_BIRD_KEEPER_ABE EQU $3fc
EVENT_BEAT_BIRD_KEEPER_BRYAN EQU $3fd
EVENT_BEAT_BIRD_KEEPER_THEO EQU $3fe
EVENT_BEAT_BIRD_KEEPER_TOBY EQU $3ff
EVENT_BEAT_BIRD_KEEPER_DENIS EQU $400
EVENT_BEAT_BIRD_KEEPER_VANCE_1 EQU $401
EVENT_BEAT_BIRD_KEEPER_HANK EQU $402
EVENT_BEAT_BIRD_KEEPER_ROY EQU $403
EVENT_BEAT_BIRD_KEEPER_BORIS EQU $404
EVENT_BEAT_BIRD_KEEPER_BOB EQU $405
EVENT_BEAT_BIRD_KEEPER_PETER EQU $407
EVENT_BEAT_BIRD_KEEPER_JOSE EQU $408
EVENT_BEAT_BIRD_KEEPER_PERRY EQU $409
EVENT_BEAT_BIRD_KEEPER_BRET EQU $40a
EVENT_BEAT_BOARDER_RONALD EQU $40e
EVENT_BEAT_BOARDER_BRAD EQU $40f
EVENT_BEAT_BOARDER_DOUGLAS EQU $410
EVENT_BEAT_SAGE_CHOW EQU $411
EVENT_BEAT_SAGE_NICO EQU $412
EVENT_BEAT_SAGE_JIN EQU $413
EVENT_BEAT_SAGE_TROY EQU $414
EVENT_BEAT_SAGE_JEFFREY EQU $415
EVENT_BEAT_SAGE_PING EQU $416
EVENT_BEAT_SAGE_EDMOND EQU $417
EVENT_BEAT_SAGE_NEAL EQU $418
EVENT_BEAT_SAGE_LI EQU $419
EVENT_BEAT_CAMPER_ROLAND EQU $41a
EVENT_BEAT_CAMPER_TODD_1 EQU $41b
EVENT_BEAT_CAMPER_IVAN EQU $41c
EVENT_BEAT_CAMPER_ELLIOT EQU $41d
EVENT_BEAT_CAMPER_LLOYD EQU $41f
EVENT_BEAT_CAMPER_DEAN EQU $420
EVENT_BEAT_CAMPER_SID EQU $421
EVENT_BEAT_CAMPER_TED EQU $424
EVENT_BEAT_CAMPER_JERRY EQU $42b
EVENT_BEAT_CAMPER_SPENCER EQU $42c
EVENT_BEAT_BURGLAR_DUNCAN EQU $42d
EVENT_BEAT_BURGLAR_EDDIE EQU $42e
EVENT_BEAT_BURGLAR_COREY EQU $42f
EVENT_BEAT_BIKER_DWAYNE EQU $433
EVENT_BEAT_BIKER_HARRIS EQU $434
EVENT_BEAT_BIKER_ZEKE EQU $435
EVENT_BEAT_BIKER_CHARLES EQU $436
EVENT_BEAT_BIKER_RILEY EQU $437
EVENT_BEAT_BIKER_JOEL EQU $438
EVENT_BEAT_BIKER_GLENN EQU $439
EVENT_BEAT_PSYCHIC_NATHAN EQU $43a
EVENT_BEAT_PSYCHIC_FRANKLIN EQU $43b
EVENT_BEAT_PSYCHIC_HERMAN EQU $43c
EVENT_BEAT_PSYCHIC_FIDEL EQU $43d
EVENT_BEAT_PSYCHIC_GREG EQU $43e
EVENT_BEAT_PSYCHIC_NORMAN EQU $43f
EVENT_BEAT_PSYCHIC_MARK EQU $440
EVENT_BEAT_PSYCHIC_PHIL EQU $441
EVENT_BEAT_PSYCHIC_RICHARD EQU $442
EVENT_BEAT_PSYCHIC_GILBERT EQU $443
EVENT_BEAT_PSYCHIC_JARED EQU $444
EVENT_BEAT_PSYCHIC_RODNEY EQU $445
EVENT_BEAT_FIREBREATHER_OTIS EQU $446
EVENT_BEAT_FIREBREATHER_BURT EQU $449
EVENT_BEAT_FIREBREATHER_BILL EQU $44a
EVENT_BEAT_FIREBREATHER_WALT EQU $44b
EVENT_BEAT_FIREBREATHER_RAY EQU $44c
EVENT_BEAT_FIREBREATHER_LYLE EQU $44d
EVENT_BEAT_FISHER_JUSTIN EQU $44e
EVENT_BEAT_FISHER_RALPH_1 EQU $44f
EVENT_BEAT_FISHER_ARNOLD EQU $450
EVENT_BEAT_FISHER_KYLE EQU $451
EVENT_BEAT_FISHER_HENRY EQU $452
EVENT_BEAT_FISHER_MARVIN EQU $453
EVENT_BEAT_FISHER_TULLY_1 EQU $454
EVENT_BEAT_FISHER_ANDRE EQU $455
EVENT_BEAT_FISHER_RAYMOND EQU $456
EVENT_BEAT_FISHER_WILTON_1 EQU $457
EVENT_BEAT_FISHER_EDGAR EQU $458
EVENT_BEAT_FISHER_JONAH EQU $459
EVENT_BEAT_FISHER_MARTIN EQU $45a
EVENT_BEAT_FISHER_STEPHEN EQU $45b
EVENT_BEAT_FISHER_BARNEY EQU $45c
EVENT_BEAT_FISHER_SCOTT EQU $462
EVENT_BEAT_TWINS_AMY_AND_MAY EQU $464
EVENT_BEAT_TWINS_ANN_AND_ANNE EQU $465
EVENT_BEAT_TWINS_JO_AND_ZOE EQU $468
EVENT_BEAT_TWINS_MEG_AND_PEG EQU $46a
EVENT_BEAT_SCHOOLBOY_JACK_1 EQU $46c
EVENT_BEAT_SCHOOLBOY_KIP EQU $46d
EVENT_BEAT_SCHOOLBOY_ALAN EQU $46e
EVENT_BEAT_SCHOOLBOY_JOHNNY EQU $46f
EVENT_BEAT_SCHOOLBOY_DANNY EQU $470
EVENT_BEAT_SCHOOLBOY_TOMMY EQU $471
EVENT_BEAT_SCHOOLBOY_DUDLEY EQU $472
EVENT_BEAT_SCHOOLBOY_JOE EQU $473
EVENT_BEAT_SCHOOLBOY_BILLY EQU $474
EVENT_BEAT_SCHOOLBOY_CHAD_1 EQU $475
EVENT_BEAT_SCHOOLBOY_NATE EQU $476
EVENT_BEAT_SCHOOLBOY_RICKY EQU $477
EVENT_BEAT_PICNICKER_LIZ_1 EQU $47e
EVENT_BEAT_PICNICKER_GINA_1 EQU $47f
EVENT_BEAT_PICNICKER_BROOKE EQU $480
EVENT_BEAT_PICNICKER_KIM EQU $481
EVENT_BEAT_PICNICKER_HOPE EQU $483
EVENT_BEAT_PICNICKER_SHARON EQU $484
EVENT_BEAT_PICNICKER_DEBRA EQU $485
EVENT_BEAT_PICNICKER_ERIN_1 EQU $487
EVENT_BEAT_PICNICKER_HEIDI EQU $48a
EVENT_BEAT_PICNICKER_EDNA EQU $48b
EVENT_BEAT_PICNICKER_TANYA EQU $490
EVENT_BEAT_PICNICKER_TIFFANY_3 EQU $491
EVENT_BEAT_GUITARIST_CLYDE EQU $493
EVENT_BEAT_GUITARIST_VINCENT EQU $494
EVENT_BEAT_JUGGLER_IRWIN_1 EQU $495
EVENT_BEAT_JUGGLER_FRITZ EQU $496
EVENT_BEAT_JUGGLER_HORTON EQU $497
EVENT_BEAT_GENTLEMAN_PRESTON EQU $49a
EVENT_BEAT_GENTLEMAN_EDWARD EQU $49b
EVENT_BEAT_GENTLEMAN_GREGORY EQU $49c
EVENT_BEAT_GENTLEMAN_ALFRED EQU $49e
EVENT_BEAT_SCIENTIST_ROSS EQU $49f
EVENT_BEAT_SCIENTIST_MITCH EQU $4a0
EVENT_BEAT_SCIENTIST_JED EQU $4a1
EVENT_BEAT_SCIENTIST_MARC EQU $4a2
EVENT_BEAT_SCIENTIST_RICH EQU $4a3
EVENT_BEAT_BLACKBELT_YOSHI EQU $4a5
EVENT_BEAT_BLACKBELT_LAO EQU $4a7
EVENT_BEAT_BLACKBELT_NOB EQU $4a8
EVENT_BEAT_BLACKBELT_LUNG EQU $4aa
EVENT_BEAT_BLACKBELT_KENJI_3 EQU $4ab
EVENT_BEAT_BLACKBELT_WAI EQU $4ac
EVENT_BEAT_BEAUTY_VICTORIA EQU $4ad
EVENT_BEAT_BEAUTY_SAMANTHA EQU $4ae
EVENT_BEAT_BEAUTY_CASSIE EQU $4b2
EVENT_BEAT_BEAUTY_JULIA EQU $4ba
EVENT_BEAT_BEAUTY_VALERIE EQU $4bc
EVENT_BEAT_FALKNER EQU $4bd
EVENT_BEAT_BUGSY EQU $4be
EVENT_BEAT_WHITNEY EQU $4bf
EVENT_BEAT_MORTY EQU $4c0
EVENT_BEAT_JASMINE EQU $4c1
EVENT_BEAT_CHUCK EQU $4c2
EVENT_BEAT_PRYCE EQU $4c3
EVENT_BEAT_CLAIR EQU $4c4
EVENT_BEAT_BROCK EQU $4c5
EVENT_BEAT_MISTY EQU $4c6
EVENT_BEAT_LTSURGE EQU $4c7
EVENT_BEAT_JANINE EQU $4c9
EVENT_BEAT_SABRINA EQU $4ca
EVENT_BEAT_BLUE EQU $4cc
EVENT_BEAT_POKEFANM_WILLIAM EQU $4cd
EVENT_BEAT_POKEFANM_DEREK EQU $4ce
EVENT_BEAT_POKEFANM_ROBERT EQU $4cf
EVENT_BEAT_POKEFANM_JOSHUA EQU $4d0
EVENT_BEAT_POKEFANM_CARTER EQU $4d1
EVENT_BEAT_POKEFANM_TREVOR EQU $4d2
EVENT_BEAT_POKEFANM_BRANDON EQU $4d3
EVENT_BEAT_POKEFANM_JEREMY EQU $4d4
EVENT_BEAT_POKEFANM_COLIN EQU $4d5
EVENT_BEAT_POKEFANM_ALEX EQU $4d8
EVENT_BEAT_POKEFANF_BEVERLY EQU $4d9
EVENT_BEAT_POKEFANF_RUTH EQU $4da
EVENT_BEAT_POKEFANF_GEORGIA EQU $4dd
EVENT_BEAT_KIMONO_GIRL_NAOKO EQU $4df
EVENT_BEAT_KIMONO_GIRL_SAYO EQU $4e0
EVENT_BEAT_KIMONO_GIRL_ZUKI EQU $4e1
EVENT_BEAT_KIMONO_GIRL_KUNI EQU $4e2
EVENT_BEAT_KIMONO_GIRL_MIKI EQU $4e3
EVENT_BEAT_POKEMANIAC_LARRY EQU $4e4
EVENT_BEAT_POKEMANIAC_ANDREW EQU $4e5
EVENT_BEAT_POKEMANIAC_CALVIN EQU $4e6
EVENT_BEAT_POKEMANIAC_SHANE EQU $4e7
EVENT_BEAT_POKEMANIAC_BEN EQU $4e8
EVENT_BEAT_POKEMANIAC_BRENT EQU $4e9
EVENT_BEAT_POKEMANIAC_RON EQU $4ea
EVENT_BEAT_POKEMANIAC_ETHAN EQU $4eb
EVENT_BEAT_POKEMANIAC_ISSAC EQU $4ee
EVENT_BEAT_POKEMANIAC_DONALD EQU $4ef
EVENT_BEAT_POKEMANIAC_ZACH EQU $4f0
EVENT_BEAT_ROCKET_GRUNTM_1 EQU $4f1
EVENT_BEAT_ROCKET_GRUNTM_2 EQU $4f2
EVENT_BEAT_ROCKET_GRUNTM_3 EQU $4f3
EVENT_BEAT_ROCKET_GRUNTM_4 EQU $4f4
EVENT_BEAT_ROCKET_GRUNTM_5 EQU $4f5
EVENT_BEAT_ROCKET_GRUNTM_6 EQU $4f6
EVENT_BEAT_ROCKET_GRUNTM_7 EQU $4f7
EVENT_BEAT_ROCKET_GRUNTM_8 EQU $4f8
EVENT_BEAT_ROCKET_GRUNTM_9 EQU $4f9
EVENT_BEAT_ROCKET_GRUNTM_10 EQU $4fa
EVENT_BEAT_ROCKET_GRUNTM_11 EQU $4fb
EVENT_BEAT_ROCKET_GRUNTM_12 EQU $4fd
EVENT_BEAT_ROCKET_GRUNTM_13 EQU $4fe
EVENT_BEAT_ROCKET_GRUNTM_14 EQU $4ff
EVENT_BEAT_ROCKET_GRUNTM_15 EQU $500
EVENT_BEAT_ROCKET_GRUNTM_16 EQU $501
EVENT_BEAT_ROCKET_GRUNTM_17 EQU $502
EVENT_BEAT_ROCKET_GRUNTM_18 EQU $503
EVENT_BEAT_ROCKET_GRUNTM_19 EQU $508
EVENT_BEAT_ROCKET_GRUNTM_20 EQU $509
EVENT_BEAT_ROCKET_GRUNTM_21 EQU $50c
EVENT_BEAT_ROCKET_GRUNTM_22 EQU $50d
EVENT_BEAT_ROCKET_GRUNTF_1 EQU $510
EVENT_BEAT_ROCKET_GRUNTF_2 EQU $511
EVENT_BEAT_ROCKET_GRUNTF_3 EQU $512
EVENT_BEAT_ROCKET_GRUNTF_4 EQU $513
EVENT_BEAT_ROCKET_GRUNTF_5 EQU $514
EVENT_BEAT_LASS_CARRIE EQU $515
EVENT_BEAT_LASS_BRIDGET EQU $516
EVENT_BEAT_LASS_KRISE EQU $518
EVENT_BEAT_LASS_CONNIE_1 EQU $519
EVENT_BEAT_LASS_LAURA EQU $51b
EVENT_BEAT_LASS_SHANNON EQU $51c
EVENT_BEAT_LASS_MICHELLE EQU $51d
EVENT_BEAT_LASS_DANA EQU $51e
EVENT_BEAT_LASS_ELLEN EQU $51f
EVENT_BEAT_HIKER_RUSSELL EQU $525
EVENT_BEAT_HIKER_PHILLIP EQU $526
EVENT_BEAT_HIKER_LEONARD EQU $527
EVENT_BEAT_HIKER_ANTHONY_2 EQU $528
EVENT_BEAT_HIKER_BENJAMIN EQU $529
EVENT_BEAT_HIKER_ERIK EQU $52a
EVENT_BEAT_HIKER_MICHAEL EQU $52b
EVENT_BEAT_HIKER_PARRY_3 EQU $52c
EVENT_BEAT_HIKER_TIMOTHY EQU $52d
EVENT_BEAT_HIKER_BAILEY EQU $52e
EVENT_BEAT_HIKER_TIM EQU $530
EVENT_BEAT_HIKER_NOLAND EQU $531
EVENT_BEAT_HIKER_SIDNEY EQU $532
EVENT_BEAT_HIKER_KENNY EQU $533
EVENT_BEAT_HIKER_JIM EQU $534
EVENT_BEAT_HIKER_DANIEL EQU $535
EVENT_BEAT_BUG_CATCHER_DON EQU $538
EVENT_BEAT_BUG_CATCHER_ROB EQU $539
EVENT_BEAT_BUG_CATCHER_ED EQU $53a
EVENT_BEAT_BUG_CATCHER_WADE_1 EQU $53b
EVENT_BEAT_BUG_CATCHER_BENNY EQU $53c
EVENT_BEAT_BUG_CATCHER_AL EQU $53d
EVENT_BEAT_BUG_CATCHER_JOSH EQU $53e
EVENT_BEAT_BUG_CATCHER_ARNIE_1 EQU $53f
EVENT_BEAT_BUG_CATCHER_KEN EQU $540
EVENT_BEAT_BUG_CATCHER_DOUG EQU $543
EVENT_BEAT_COOLTRAINERM_NICK EQU $548
EVENT_BEAT_COOLTRAINERM_AARON EQU $549
EVENT_BEAT_COOLTRAINERM_PAUL EQU $54a
EVENT_BEAT_COOLTRAINERM_CODY EQU $54b
EVENT_BEAT_COOLTRAINERM_MIKE EQU $54c
EVENT_BEAT_COOLTRAINERM_RYAN EQU $54f
EVENT_BEAT_COOLTRAINERM_JAKE EQU $550
EVENT_BEAT_COOLTRAINERM_GAVEN_3 EQU $551
EVENT_BEAT_COOLTRAINERM_BLAKE EQU $552
EVENT_BEAT_COOLTRAINERM_BRIAN EQU $553
EVENT_BEAT_COOLTRAINERM_SEAN EQU $557
EVENT_BEAT_COOLTRAINERM_ALLEN EQU $55a
EVENT_BEAT_COOLTRAINERF_GWEN EQU $55b
EVENT_BEAT_COOLTRAINERF_LOIS EQU $55c
EVENT_BEAT_COOLTRAINERF_FRAN EQU $55d
EVENT_BEAT_COOLTRAINERF_LOLA EQU $55e
EVENT_BEAT_COOLTRAINERF_KATE EQU $55f
EVENT_BEAT_COOLTRAINERF_IRENE EQU $560
EVENT_BEAT_COOLTRAINERF_KELLY EQU $561
EVENT_BEAT_COOLTRAINERF_JOYCE EQU $562
EVENT_BEAT_COOLTRAINERF_BETH_1 EQU $563
EVENT_BEAT_COOLTRAINERF_REENA_1 EQU $564
EVENT_BEAT_COOLTRAINERF_MEGAN EQU $565
EVENT_BEAT_COOLTRAINERF_CAROL EQU $567
EVENT_BEAT_COOLTRAINERF_QUINN EQU $568
EVENT_BEAT_COOLTRAINERF_EMMA EQU $569
EVENT_BEAT_COOLTRAINERF_CYBIL EQU $56a
EVENT_BEAT_COOLTRAINERF_JENN EQU $56b
EVENT_BEAT_ROCKET_EXECUTIVEF EQU $56f
EVENT_BEAT_ROCKET_EXECUTIVEM EQU $572
EVENT_BEAT_SAILOR_EUGENE EQU $575
EVENT_BEAT_SAILOR_HUEY_1 EQU $576
EVENT_BEAT_SAILOR_TERRELL EQU $577
EVENT_BEAT_SAILOR_KENT EQU $578
EVENT_BEAT_SAILOR_ERNEST EQU $579
EVENT_BEAT_SAILOR_JEFF EQU $57a
EVENT_BEAT_SAILOR_GARRETT EQU $57b
EVENT_BEAT_SAILOR_KENNETH EQU $57c
EVENT_BEAT_SAILOR_HARRY EQU $57e
EVENT_BEAT_SUPER_NERD_ERIC EQU $582
EVENT_BEAT_SUPER_NERD_SAM EQU $586
EVENT_BEAT_SUPER_NERD_TOM EQU $587
EVENT_BEAT_SUPER_NERD_PAT EQU $588
EVENT_BEAT_SUPER_NERD_SHAWN EQU $589
EVENT_BEAT_SUPER_NERD_TERU EQU $58a
EVENT_BEAT_MEDIUM_MARTHA EQU $58b
EVENT_BEAT_MEDIUM_GRACE EQU $58c
EVENT_BEAT_MEDIUM_REBECCA EQU $590
EVENT_BEAT_MEDIUM_DORIS EQU $591
EVENT_BEAT_SKIER_ROXANNE EQU $592
EVENT_BEAT_SKIER_CLARISSA EQU $593
EVENT_BEAT_SWIMMERM_HAROLD EQU $594
EVENT_BEAT_SWIMMERM_SIMON EQU $595
EVENT_BEAT_SWIMMERM_RANDALL EQU $596
EVENT_BEAT_SWIMMERM_CHARLIE EQU $597
EVENT_BEAT_SWIMMERM_GEORGE EQU $598
EVENT_BEAT_SWIMMERM_BERKE EQU $599
EVENT_BEAT_SWIMMERM_KIRK EQU $59a
EVENT_BEAT_SWIMMERM_MATHEW EQU $59b
EVENT_BEAT_SWIMMERM_JEROME EQU $5a1
EVENT_BEAT_SWIMMERM_TUCKER EQU $5a2
EVENT_BEAT_SWIMMERM_CAMERON EQU $5a4
EVENT_BEAT_SWIMMERM_SETH EQU $5a5
EVENT_BEAT_SWIMMERM_PARKER EQU $5a8
EVENT_BEAT_YOUNGSTER_JOEY_1 EQU $5a9
EVENT_BEAT_YOUNGSTER_MIKEY EQU $5aa
EVENT_BEAT_YOUNGSTER_ALBERT EQU $5ab
EVENT_BEAT_YOUNGSTER_GORDON EQU $5ac
EVENT_BEAT_YOUNGSTER_SAMUEL EQU $5ad
EVENT_BEAT_YOUNGSTER_IAN EQU $5ae
EVENT_BEAT_YOUNGSTER_WARREN EQU $5b1
EVENT_BEAT_YOUNGSTER_JIMMY EQU $5b2
EVENT_BEAT_YOUNGSTER_OWEN EQU $5b3
EVENT_BEAT_YOUNGSTER_JASON EQU $5b4
EVENT_BEAT_TEACHER_COLETTE EQU $5b5
EVENT_BEAT_TEACHER_HILLARY EQU $5b6
EVENT_BEAT_TEACHER_SHIRLEY EQU $5b7
EVENT_BEAT_ELITE_4_KAREN EQU $5bb
EVENT_BEAT_CHAMPION_LANCE EQU $5bc
EVENT_BEAT_COOLTRAINERM_DARIN EQU $5bd
EVENT_BEAT_COOLTRAINERF_CARA EQU $5be
EVENT_BEAT_TWINS_LEA_AND_PIA EQU $5bf
EVENT_BEAT_BUG_CATCHER_WAYNE EQU $5c0
EVENT_BEAT_BEAUTY_OLIVIA EQU $5c1
EVENT_BEAT_POKEMANIAC_MILER EQU $5c4
EVENT_BEAT_SUPER_NERD_HUGH EQU $5c5
EVENT_BEAT_SUPER_NERD_MARKUS EQU $5c6
EVENT_BEAT_POKEFANM_REX EQU $5c7
EVENT_BEAT_POKEFANM_ALLAN EQU $5c8
EVENT_BEAT_SAGE_GAKU EQU $5c9
EVENT_BEAT_SAGE_MASA EQU $5ca
EVENT_BEAT_SAGE_KOJI EQU $5cb
EVENT_GUIDE_GENT_VISIBLE_IN_CHERRYGROVE EQU $6ff
EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER EQU $700
EVENT_ELMS_AIDE_IN_LAB EQU $701
EVENT_BOULDER_IN_ICE_PATH_1 EQU $70d
EVENT_BOULDER_IN_ICE_PATH_2 EQU $70e
EVENT_BOULDER_IN_ICE_PATH_3 EQU $70f
EVENT_BOULDER_IN_ICE_PATH_4 EQU $710
EVENT_FOUGHT_SNORLAX EQU $750
EVENT_PICKED_UP_FOCUS_BAND EQU $77d
EVENT_PICKED_UP_GOLD_BERRY_FROM_HO_OH_ITEM_ROOM EQU $794
EVENT_PICKED_UP_MYSTERYBERRY_FROM_HO_OH_ITEM_ROOM EQU $795
EVENT_PICKED_UP_REVIVAL_HERB_FROM_HO_OH_ITEM_ROOM EQU $796
EVENT_PICKED_UP_CHARCOAL_FROM_HO_OH_ITEM_ROOM EQU $797
EVENT_PICKED_UP_BERRY_FROM_KABUTO_ITEM_ROOM EQU $798
EVENT_PICKED_UP_PSNCUREBERRY_FROM_KABUTO_ITEM_ROOM EQU $799
EVENT_PICKED_UP_HEAL_POWDER_FROM_KABUTO_ITEM_ROOM EQU $79a
EVENT_PICKED_UP_ENERGYPOWDER_FROM_KABUTO_ITEM_ROOM EQU $79b
EVENT_PICKED_UP_MYSTERYBERRY_FROM_OMANYTE_ITEM_ROOM EQU $79c
EVENT_PICKED_UP_MYSTIC_WATER_FROM_OMANYTE_ITEM_ROOM EQU $79d
EVENT_PICKED_UP_STARDUST_FROM_OMANYTE_ITEM_ROOM EQU $79e
EVENT_PICKED_UP_STAR_PIECE_FROM_OMANYTE_ITEM_ROOM EQU $79f
EVENT_PICKED_UP_GOLD_BERRY_FROM_AERODACTYL_ITEM_ROOM EQU $7a0
EVENT_PICKED_UP_MOON_STONE_FROM_AERODACTYL_ITEM_ROOM EQU $7a1
EVENT_PICKED_UP_HEAL_POWDER_FROM_AERODACTYL_ITEM_ROOM EQU $7a2
EVENT_PICKED_UP_ENERGY_ROOT_FROM_AERODACTYL_ITEM_ROOM EQU $7a3
EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY EQU $7ae
EVENT_SAW_SUICUNE_ON_ROUTE_42 EQU $7af
EVENT_SAW_SUICUNE_ON_ROUTE_36 EQU $7b0
EVENT_SET_WHEN_FOUGHT_HO_OH EQU $7b7

View File

@ -248,13 +248,13 @@ Request2bpp: ; eba
.asm_edc
ld a, e
ld [$cf68], a
ld [Requested2bppSource], a
ld a, d
ld [$cf69], a
ld [Requested2bppSource + 1], a
ld a, l
ld [$cf6a], a
ld [Requested2bppDest], a
ld a, h
ld [$cf6b], a
ld [Requested2bppDest + 1], a
.asm_eec
ld a, c
@ -262,10 +262,10 @@ Request2bpp: ; eba
cp [hl]
jr nc, .asm_f08
ld [$cf67], a
ld [Requested2bpp], a
.wait
call DelayFrame
ld a, [$cf67]
ld a, [Requested2bpp]
and a
jr nz, .wait
@ -281,10 +281,10 @@ Request2bpp: ; eba
.asm_f08
ld a, [$ffd3]
ld [$cf67], a
ld [Requested2bpp], a
.asm_f0d
call DelayFrame
ld a, [$cf67]
ld a, [Requested2bpp]
and a
jr nz, .asm_f0d
ld a, c
@ -322,23 +322,23 @@ Request1bpp: ; f1e
.asm_f40
ld a, e
ld [$cf6d], a
ld [Requested1bppSource], a
ld a, d
ld [$cf6e], a
ld [Requested1bppSource + 1], a
ld a, l
ld [$cf6f], a
ld [Requested1bppDest], a
ld a, h
ld [$cf70], a
ld [Requested1bppDest + 1], a
.asm_f50
ld a, c
ld hl, $ffd3
cp [hl]
jr nc, .asm_f6c
ld [$cf6c], a
ld [Requested1bpp], a
.wait
call DelayFrame
ld a, [$cf6c]
ld a, [Requested1bpp]
and a
jr nz, .wait
@ -354,10 +354,10 @@ Request1bpp: ; f1e
.asm_f6c
ld a, [$ffd3]
ld [$cf6c], a
ld [Requested1bpp], a
.asm_f71
call DelayFrame
ld a, [$cf6c]
ld a, [Requested1bpp]
and a
jr nz, .asm_f71
ld a, c

23
engine/delay.asm Normal file
View File

@ -0,0 +1,23 @@
DelayFrame: ; 45a
; Wait for one frame
ld a, 1
ld [VBlankOccurred], a
; Wait for the next VBlank, halting to conserve battery
.halt
halt ; rgbasm adds a nop after this instruction by default
ld a, [VBlankOccurred]
and a
jr nz, .halt
ret
; 468
DelayFrames: ; 468
; Wait c frames
call DelayFrame
dec c
jr nz, DelayFrames
ret
; 46f

55
engine/farcall.asm Normal file
View File

@ -0,0 +1,55 @@
FarCall_de: ; 2d54
; Call a:de.
; Preserves other registers.
ld [hBuffer], a
ld a, [hROMBank]
push af
ld a, [hBuffer]
rst Bankswitch
call .de
jr ReturnFarCall
.de
push de
ret
; 2d63
FarCall_hl: ; 2d63
; Call a:hl.
; Preserves other registers.
ld [hBuffer], a
ld a, [hROMBank]
push af
ld a, [hBuffer]
rst Bankswitch
call Function2d82
; 2d6e
ReturnFarCall: ; 2d6e
; We want to retain the contents of f.
; To do this, we can pop to bc instead of af.
ld a, b
ld [$cfb9], a
ld a, c
ld [$cfba], a
; Restore the working bank.
pop bc
ld a, b
rst Bankswitch
ld a, [$cfb9]
ld b, a
ld a, [$cfba]
ld c, a
ret
; 2d82
Function2d82: ; 2d82
jp [hl]
; 2d83

132
engine/game_time.asm Normal file
View File

@ -0,0 +1,132 @@
ResetGameTime: ; 208a
xor a
ld [GameTimeCap], a
ld [GameTimeHours], a
ld [GameTimeHours + 1], a
ld [GameTimeMinutes], a
ld [GameTimeSeconds], a
ld [GameTimeFrames], a
ret
; 209e
GameTimer: ; 209e
nop
ld a, [rSVBK]
push af
ld a, 1
ld [rSVBK], a
call UpdateGameTimer
pop af
ld [rSVBK], a
ret
; 20ad
UpdateGameTimer: ; 20ad
; Increment the game timer by one frame.
; The game timer is capped at 999:59:59.00.
; Don't update if game logic is paused.
ld a, [$c2cd]
and a
ret nz
; Is the timer paused?
ld hl, GameTimerPause
bit 0, [hl]
ret z
; Is the timer already capped?
ld hl, GameTimeCap
bit 0, [hl]
ret nz
; +1 frame
ld hl, GameTimeFrames
ld a, [hl]
inc a
cp 60 ; frames/second
jr nc, .second
ld [hl], a
ret
.second
xor a
ld [hl], a
; +1 second
ld hl, GameTimeSeconds
ld a, [hl]
inc a
cp 60 ; seconds/minute
jr nc, .minute
ld [hl], a
ret
.minute
xor a
ld [hl], a
; +1 minute
ld hl, GameTimeMinutes
ld a, [hl]
inc a
cp 60 ; minutes/hour
jr nc, .hour
ld [hl], a
ret
.hour
xor a
ld [hl], a
; +1 hour
ld a, [GameTimeHours]
ld h, a
ld a, [GameTimeHours + 1]
ld l, a
inc hl
; Cap the timer after 1000 hours.
ld a, h
cp 1000 / $100
jr c, .ok
ld a, l
cp 1000 % $100
jr c, .ok
ld hl, GameTimeCap
set 0, [hl]
ld a, 59 ; 999:59:59.00
ld [GameTimeMinutes], a
ld [GameTimeSeconds], a
ret
.ok
ld a, h
ld [GameTimeHours], a
ld a, l
ld [GameTimeHours + 1], a
ret
; 210f

683
engine/map_objects.asm Normal file
View File

@ -0,0 +1,683 @@
; Functions handling map objects.
GetSpritePalette: ; 17ff
push hl
push de
push bc
ld c, a
callba _GetSpritePalette
ld a, c
pop bc
pop de
pop hl
ret
; 180e
Function180e: ; 180e
push hl
push bc
ld hl, $d156
ld c, $1f
ld b, a
ld a, [hConnectionStripLength]
cp $0
jr z, .asm_182b
ld a, b
.asm_181d
cp [hl]
jr z, .asm_1830
inc hl
inc hl
dec c
jr nz, .asm_181d
ld a, [$d155]
scf
jr .asm_1833
.asm_182b
ld a, [$d155]
jr .asm_1833
.asm_1830
inc hl
xor a
ld a, [hl]
.asm_1833
pop bc
pop hl
ret
; 1836
Function1836: ; 1836
push de
push hl
ld b, a
ld a, [hROMBank]
push af
ld a, BANK(Function142a7)
rst Bankswitch
ld a, b
call Function142a7
ld c, a
pop de
ld a, d
rst Bankswitch
pop hl
pop de
ret
; 184a
Function184a: ; 184a
ld a, [StandingTile]
call GetTileCollision
ld b, a
ret
; 1852
Function1852: ; 1852
ld a, [StandingTile]
call GetTileCollision
sub 1
ret z
and a
ret
; 185d
GetTileCollision: ; 185d
; Get the collision type of tile a.
push de
push hl
ld hl, TileCollisionTable
ld e, a
ld d, 0
add hl, de
ld a, [hROMBank]
push af
ld a, BANK(TileCollisionTable)
rst Bankswitch
ld e, [hl]
pop af
rst Bankswitch
ld a, e
and $f ; lo nybble only
pop hl
pop de
ret
; 1875
Function1875: ; 1875
ld d, a
and $f0
cp $10
jr z, .asm_1882
cp $20
jr z, .asm_1888
scf
ret
.asm_1882
ld a, d
and 7
ret z
scf
ret
.asm_1888
ld a, d
and 7
ret z
scf
ret
; 188e
Function188e: ; 188e
cp $14
ret z
cp $1c
ret
; 1894
CheckCutTreeTile: ; 1894
cp $12
ret z
cp $1a
ret
; 189a
CheckHeadbuttTreeTile: ; 189a
cp $15
ret z
cp $1d
ret
; 18a0
CheckCounterTile: ; 18a0
cp $90
ret z
cp $98
ret
; 18a6
CheckPitTile: ; 18a6
cp $60
ret z
cp $68
ret
; 18ac
CheckIceTile: ; 18ac
cp $23
ret z
cp $2b
ret z
scf
ret
; 18b4
CheckWhirlpoolTile: ; 18b4
nop
cp $24
ret z
cp $2c
ret z
scf
ret
; 18bd
CheckWaterfallTile: ; 18bd
cp $33
ret z
cp $3b
ret
; 18c3
CheckStandingOnEntrance: ; 18c3
ld a, [StandingTile]
cp $71 ; door
ret z
cp $79
ret z
cp $7a ; stairs
ret z
cp $7b ; cave
ret
; 18d2
GetMapObject: ; 18d2
; Return the location of map object a in bc.
ld hl, MapObjects
ld bc, $10
call AddNTimes
ld b, h
ld c, l
ret
; 18de
Function18de: ; 18de
ld [hConnectionStripLength], a
call GetMapObject
ld hl, $0000
add hl, bc
ld a, [hl]
cp $ff
jr z, .asm_18f3
ld [hConnectedMapWidth], a
call Function1ae5
and a
ret
.asm_18f3
scf
ret
; 18f5
Function18f5: ; 18f5
ld hl, $0006
add hl, bc
ld a, [hl]
cp $ff
jr nz, .asm_1921
ld hl, $0007
add hl, bc
ld a, [hl]
cp $ff
jr z, .asm_191c
ld hl, .data_191e
ld a, [TimeOfDay]
add l
ld l, a
jr nc, .asm_1912
inc h
.asm_1912
ld a, [hl]
ld hl, $0007
add hl, bc
and [hl]
jr nz, .asm_191c
scf
ret
.asm_191c
and a
ret
.data_191e
db $1
db $2
db $4
.asm_1921
ld hl, $0006
add hl, bc
ld d, [hl]
ld hl, $0007
add hl, bc
ld e, [hl]
ld hl, hHours
ld a, d
cp e
jr z, .asm_1949
jr c, .asm_193f
ld a, [hl]
cp d
jr nc, .asm_1949
cp e
jr c, .asm_1949
jr z, .asm_1949
jr .asm_194b
.asm_193f
ld a, e
cp [hl]
jr c, .asm_194b
ld a, [hl]
cp d
jr nc, .asm_1949
jr .asm_194b
.asm_1949
and a
ret
.asm_194b
scf
ret
; 194d
Function194d: ; 194d
ld [hConnectionStripLength], a
call GetMapObject
call $40e7
ret
; 1956
Function1956: ; 1956
ld [hConnectionStripLength], a
call Function271e
ld a, [hConnectionStripLength]
call GetMapObject
ld a, $2
ld hl, $40e7
rst FarCall
ret
; 1967
Function1967: ; 1967
ld [hConnectionStripLength], a
call GetMapObject
ld hl, $0000
add hl, bc
ld a, [hl]
cp $ff
ret z
ld [hl], $ff
push af
call Function1985
pop af
call Function1ae5
callba Function4357
ret
; 1985
Function1985: ; 1985
ld hl, $d4cd
cp [hl]
jr z, .asm_1990
ld hl, $d4ce
cp [hl]
ret nz
.asm_1990
callba Function581f
ld a, $ff
ld [$d4cd], a
ld [$d4ce], a
ret
; 199f
Function199f: ; 199f
call Function1967
call Function2712
ret
; 19a6
Function19a6: ; 19a6
push hl
call GetMapObject
ld d, b
ld e, c
ld a, $ff
ld [de], a
inc de
pop hl
ld bc, $000f
call CopyBytes
ret
; 19b8
Function19b8: ; 19b8
call GetMapObject
ld hl, $0000
add hl, bc
ld a, [hl]
push af
ld [hl], $ff
inc hl
ld bc, $000f
xor a
call ByteFill
pop af
cp $ff
ret z
cp $d
ret nc
ld b, a
ld a, [$d4cd]
cp b
jr nz, .asm_19de
ld a, $ff
ld [$d4cd], a
.asm_19de
ld a, b
call Function1ae5
callba Function4357
ret
; 19e9
Function19e9: ; 19e9
ld [$c2e2], a
ld a, [hROMBank]
ld [$c2e3], a
ld a, l
ld [$c2e4], a
ld a, h
ld [$c2e5], a
ld a, [$c2e2]
call Function18de
ret c
ld hl, $0003
add hl, bc
ld [hl], $14
ld hl, $0009
add hl, bc
ld [hl], $0
ld hl, VramState
set 7, [hl]
and a
ret
; 1a13
Function1a13: ; 1a13
push bc
push de
ld hl, $d4d6
ld de, $0028
ld c, $d
.asm_1a1d
ld a, [hl]
and a
jr z, .asm_1a28
add hl, de
dec c
jr nz, .asm_1a1d
xor a
jr .asm_1a2c
.asm_1a28
ld a, $d
sub c
scf
.asm_1a2c
pop de
pop bc
ret
; 1a2f
Function1a2f: ; 1a2f
ld hl, $0003
add hl, bc
ld a, [hl]
cp $25
jr c, .asm_1a39
xor a
.asm_1a39
ld hl, Data4273
ld e, a
ld d, 0
add hl, de
add hl, de
add hl, de
add hl, de
add hl, de
add hl, de
ld a, [hl]
ret
; 1a47
Function1a47: ; 1a47
push bc
push de
ld e, a
ld d, 0
ld hl, Data4273 + 1
add hl, de
add hl, de
add hl, de
add hl, de
add hl, de
add hl, de
ld a, BANK(Data4273)
call GetFarByte
add a
add a
and $c
pop de
pop bc
ret
; 1a61
Function1a61: ; 1a61
ld l, a
ld a, [hROMBank]
push af
ld a, BANK(Data4273)
rst Bankswitch
ld a, l
push bc
call Function1a71
pop bc
pop af
rst Bankswitch
ret
; 1a71
Function1a71: ; 1a71
ld hl, $0003
add hl, de
ld [hl], a
push de
ld e, a
ld d, 0
ld hl, Data4273 + 1
add hl, de
add hl, de
add hl, de
add hl, de
add hl, de
add hl, de
ld b, h
ld c, l
pop de
ld a, [bc]
inc bc
rlca
rlca
and $c
ld hl, $0008
add hl, de
ld [hl], a
ld a, [bc]
inc bc
ld hl, $000b
add hl, de
ld [hl], a
ld a, [bc]
inc bc
ld hl, $0004
add hl, de
ld [hl], a
ld a, [bc]
inc bc
ld hl, $0005
add hl, de
ld [hl], a
ld a, [bc]
inc bc
ld hl, $0006
add hl, de
ld [hl], a
ret
; 1aae
Function1aae: ; 1aae
ld a, [hROMBank]
push af
ld a, [hli]
rst Bankswitch
ld a, [hli]
ld d, [hl]
ld hl, $001b
add hl, bc
add [hl]
ld e, a
ld a, d
adc $0
ld d, a
inc [hl]
ld a, [de]
ld h, a
pop af
rst Bankswitch
ld a, h
ret
; 1ac6
Function1ac6: ; 1ac6
ld hl, VramState
set 0, [hl]
ret
; 1acc
Function1acc: ; 1acc
ld hl, VramState
res 0, [hl]
ret
; 1ad2
Function1ad2: ; 1ad2
ld a, [VramState]
bit 0, a
ret z
callba Function55e0
callba Function5920
ret
; 1ae5
Function1ae5: ; 1ae5
ld bc, $0028
ld hl, $d4d6
call AddNTimes
ld b, h
ld c, l
ret
; 1af1
Function1af1: ; 1af1
ld hl, $0000
add hl, bc
ld a, [hl]
and a
ret
; 1af8
Function1af8: ; 1af8
push af
ld hl, $0008
add hl, bc
ld a, [hl]
and $f3
ld e, a
pop af
and $c
or e
ld [hl], a
ret
; 1b07
GetSpriteDirection: ; 1b07
ld hl, $0008
add hl, bc
ld a, [hl]
and $c
ret
; 1b0f

603
engine/menu.asm Normal file
View File

@ -0,0 +1,603 @@
; Functions used in displaying and handling menus.
LoadMenuDataHeader: ; 0x1d35
call Function1d3c
call Function1c00
ret
Function1d3c: ; 0x1d3c
ld de, $cf81
ld bc, $0010
call CopyBytes
ld a, [hROMBank]
ld [$cf8a], a
ret
; 0x1d4b
Function1d4b: ; 1d4b
ld [$cf88], a
ret
; 1d4f
Function1d4f: ; 1d4f
push hl
call Function1d58
pop hl
jp PrintText
; 1d57
Function1d57: ; 1d57
ret
; 1d58
Function1d58: ; 1d58
ld hl, MenuDataHeader_0x1d5f
call LoadMenuDataHeader
ret
; 1d5f
MenuDataHeader_0x1d5f: ; 1d5f
db $40 ; tile backup
db 12, 0 ; start coords
db 17, 19 ; end coords
dw VTiles0
db 0 ; default option
; 1d67
Function1d67: ; 1d67
call Function1d4f
call Function1c17
ret
; 1d6e
Function1d6e: ; 1d6e
ld hl, MenuDataHeader_0x1d75
call LoadMenuDataHeader
ret
; 1d75
MenuDataHeader_0x1d75: ; 1d75
db $40 ; tile backup
db 0, 0 ; start coords
db 17, 19 ; end coords
dw $0000
db 1 ; default option
; 1d7d
Function1d7d: ; 1d7d
call Function1c07
ret
; 1d81
Function1d81: ; 0x1d81
xor a
ld [hBGMapMode], a
call Function1cbb
call Function1ad2
call Function1c89
call Function321c
call Function1c66
ld a, [$cf91]
bit 7, a
jr z, .asm_1da7 ; 0x1d98 $d
call Function1c10
call Function1bc9
call Function1ff8
bit 1, a
jr z, .asm_1da9 ; 0x1da5 $2
.asm_1da7
scf
ret
.asm_1da9
and a
ret
; 0x1dab
Function1dab: ; 1dab
call LoadMenuDataHeader
call Function1d81
call Function1c17
ld a, [$cfa9]
ret
; 1db8
Function1db8: ; 0x1db8
push hl
push bc
push af
ld hl, $cf86
ld a, [hli]
ld h, [hl]
ld l, a
inc hl
inc hl
pop af
call GetNthString
ld d, h
ld e, l
call CopyName1
pop bc
pop hl
ret
; 0x1dcf
Function1dcf: ; 1dcf
ld bc, $0e07
Function1dd2: ; 1dd2
jr Function1dd9
Function1dd4: ; 1dd4
call LoadMenuDataHeader
jr Function1dfe
Function1dd9: ; 1dd9
push bc
ld hl, MenuDataHeader_0x1e1d
call Function1d3c
pop bc
ld a, b
cp $e
jr nz, .asm_1de9
ld a, $e
ld b, a
.asm_1de9
ld a, b
ld [$cf83], a
add $5
ld [$cf85], a
ld a, c
ld [$cf82], a
add $4
ld [$cf84], a
call Function1c00
Function1dfe: ; 1dfe
call Function1d81
push af
ld c, $f
call DelayFrames
call Function1c17
pop af
jr c, .asm_1e16
ld a, [$cfa9]
cp $2
jr z, .asm_1e16
and a
ret
.asm_1e16
ld a, $2
ld [$cfa9], a
scf
ret
; 1e1d
MenuDataHeader_0x1e1d: ; 1e1d
db $40 ; tile backup
db 5, 10 ; start coords
db 9, 15 ; end coords
dw MenuData2_0x1e25
db 1 ; default option
; 1e25
MenuData2_0x1e25: ; 1e25
db $c0 ; flags
db 2
db "YES@"
db "NO@"
; 1e2e
Function1e2e: ; 1e2e
call Function1e35
call Function1c00
ret
; 1e35
Function1e35: ; 1e35
push de
call Function1d3c
pop de
ld a, [$cf83]
ld h, a
ld a, [$cf85]
sub h
ld h, a
ld a, d
ld [$cf83], a
add h
ld [$cf85], a
ld a, [$cf82]
ld l, a
ld a, [$cf84]
sub l
ld l, a
ld a, e
ld [$cf82], a
add l
ld [$cf84], a
ret
; 1e5d
Function1e5d: ; 1e5d
call MenuFunc_1e7f
call MenuWriteText
call Function1eff
call Function1f23
call Function1bdd
call Function1ff8
ret
; 1e70
SetUpMenu: ; 1e70
call MenuFunc_1e7f ; ???
call MenuWriteText
call Function1eff ; set up selection pointer
ld hl, $cfa5
set 7, [hl]
ret
MenuFunc_1e7f: ; 0x1e7f
call Function1c66
call Function1ebd
call Function1ea6
call Function1cbb
ret
MenuWriteText: ; 0x1e8c
xor a
ld [hBGMapMode], a
call Function1ebd ; sort out the text
call Function1eda ; actually write it
call Function2e31
ld a, [hOAMUpdate]
push af
ld a, $1
ld [hOAMUpdate], a
call Function321c
pop af
ld [hOAMUpdate], a
ret
; 0x1ea6
Function1ea6: ; 1ea6
ld a, [$cf83]
ld c, a
ld a, [$cf85]
sub c
ld c, a
ld a, [$cf92]
add a
inc a
ld b, a
ld a, [$cf82]
add b
ld [$cf84], a
ret
; 1ebd
Function1ebd: ; 1ebd
ld hl, $cf93
ld a, [hli]
ld h, [hl]
ld l, a
ld a, [$cf76]
and a
jr z, .asm_1ed3
ld b, a
ld c, $ff
.asm_1ecc
ld a, [hli]
cp c
jr nz, .asm_1ecc
dec b
jr nz, .asm_1ecc
.asm_1ed3
ld d, h
ld e, l
ld a, [hl]
ld [$cf92], a
ret
; 1eda
Function1eda: ; 1eda
call Function1cfd
ld bc, $002a
add hl, bc
.asm_1ee1
inc de
ld a, [de]
cp $ff
ret z
ld [MenuSelection], a
push de
push hl
ld d, h
ld e, l
ld hl, $cf95
call Function1efb
pop hl
ld de, $0028
add hl, de
pop de
jr .asm_1ee1
; 1efb
Function1efb: ; 1efb
ld a, [hli]
ld h, [hl]
ld l, a
jp [hl]
; 1eff
Function1eff: ; 1eff
call Function1c10
ld hl, $cfa8
ld a, [$cf91]
bit 3, a
jr z, .asm_1f0e
set 3, [hl]
.asm_1f0e
ld a, [$cf91]
bit 2, a
jr z, .asm_1f19
set 5, [hl]
set 4, [hl]
.asm_1f19
ret
; 1f1a
Function1f1a: ; 1f1a
call Function1bd3
ld hl, $cfa8
and [hl]
jr Function1f2a
; 1f23
Function1f23: ; 1f23
xor a
ld [$cf73], a
call Function1bc9
; 1f2a
Function1f2a: ; 1f2a
bit 0, a
jr nz, .asm_1f52
bit 1, a
jr nz, .asm_1f6d
bit 3, a
jr nz, .asm_1f6d
bit 4, a
jr nz, .asm_1f44
bit 5, a
jr nz, .asm_1f4b
xor a
ld [$cf73], a
jr .asm_1f57
.asm_1f44
ld a, $10
ld [$cf73], a
jr .asm_1f57
.asm_1f4b
ld a, $20
ld [$cf73], a
jr .asm_1f57
.asm_1f52
ld a, $1
ld [$cf73], a
.asm_1f57
call Function1ebd
ld a, [$cfa9]
ld l, a
ld h, $0
add hl, de
ld a, [hl]
ld [MenuSelection], a
ld a, [$cfa9]
ld [$cf88], a
and a
ret
.asm_1f6d
ld a, $2
ld [$cf73], a
ld a, $ff
ld [MenuSelection], a
scf
ret
; 1f79
Function1f79: ; 1f79
push de
ld hl, $cf97
ld a, [hli]
ld h, [hl]
ld l, a
ld a, [MenuSelection]
call GetNthString
ld d, h
ld e, l
pop hl
call PlaceString
ret
; 1f8d
Function1f8d: ; 1f8d
push de
ld a, [MenuSelection]
call Function1fb1
inc hl
inc hl
ld a, [hli]
ld d, [hl]
ld e, a
pop hl
call PlaceString
ret
; 1f9e
Function1f9e: ; 1f9e
call Function1fb1
inc hl
inc hl
ld a, [hli]
ld d, [hl]
ld e, a
ret
; 1fa7
Function1fa7: ; 1fa7
ld a, [MenuSelection]
call Function1fb1
ld a, [hli]
ld h, [hl]
ld l, a
jp [hl]
; 1fb1
Function1fb1: ; 1fb1
ld e, a
ld d, $0
ld hl, $cf97
ld a, [hli]
ld h, [hl]
ld l, a
add hl, de
add hl, de
add hl, de
add hl, de
ret
; 1fbf
Function1fbf: ; 1fbf
ld hl, $cf71
call Function1ff0
ld hl, $cf81
call Function1ff0
ld hl, $cf91
call Function1ff0
ld hl, $cfa1
call Function1ff0
ld a, [rSVBK]
push af
ld a, $7
ld [rSVBK], a
xor a
ld hl, $dfff
ld [hld], a
ld [hld], a
ld a, l
ld [$cf71], a
ld a, h
ld [$cf72], a
pop af
ld [rSVBK], a
ret
; 1ff0
Function1ff0: ; 1ff0
ld bc, $0010
xor a
call ByteFill
ret
; 1ff8
Function1ff8: ; 1ff8
push af
and $3
jr z, .asm_2007
ld hl, $cf81
bit 3, [hl]
jr nz, .asm_2007
call PlayClickSFX
.asm_2007
pop af
ret
; 2009
PlayClickSFX: ; 2009
push de
ld de, SFX_READ_TEXT_2
call StartSFX
pop de
ret
; 0x2012
Function2012: ; 2012
call Function1d4f
call Functiona46
call Function1c07
ret
; 201c
Function201c: ; 201c
ld [hBuffer], a
ld a, [hROMBank]
push af
ld a, [hBuffer]
rst Bankswitch
call PlaceString
pop af
rst Bankswitch
ret
; 202a
Function202a: ; 202a
ld a, [hROMBank]
ld [$cf94], a
ld a, $9
ld hl, $400e
rst FarCall
ld a, [$cf88]
ret
; 2039
Function2039: ; 2039
ld a, [hROMBank]
ld [$cf94], a
ld a, $9
ld hl, $4022
rst FarCall
ld a, [$cf88]
ret
; 2048
Function2048: ; 2048
ld a, [hROMBank]
ld [$cf94], a
ld a, $9
ld hl, $403c
rst FarCall
ld a, [$cf88]
ret
; 2057
Function2057: ; 2057
ld a, [hROMBank]
push af
ld a, $21
rst Bankswitch
call $42db
pop af
rst Bankswitch
ret
; 2063

25
engine/rtc.asm Normal file
View File

@ -0,0 +1,25 @@
RTC: ; 46f
; update time and time-sensitive palettes
; rtc enabled?
ld a, [$c2ce]
cp 0
ret z
call UpdateTime
; obj update on?
ld a, [VramState]
bit 0, a ; obj update
ret z
TimeOfDayPals: ; 47e
callab _TimeOfDayPals
ret
; 485
UpdateTimePals: ; 485
callab _UpdateTimePals
ret
; 48c

22
engine/sine.asm Normal file
View File

@ -0,0 +1,22 @@
Cosine: ; 1b0f
; Return d * cos(a) in hl
add $10 ; 90 degrees
Sine: ; 1b11
; Return d * sin(a) in hl
; a is a signed 6-bit value.
ld e, a
ld a, [hROMBank]
push af
ld a, BANK(_Sine)
rst Bankswitch
call _Sine
pop af
rst Bankswitch
ret
; 1b1e

View File

@ -155,6 +155,7 @@ Function1052: ; 1052
PrintText: ; 1057
call Function106c
Function105a: ; 105a
push hl
hlcoord 1, 14
ld bc, 18 + 3<<8

View File

@ -119,9 +119,9 @@ VBlank0: ; 2b1
call UpdateBGMap
; these have their own timing checks
call SafeLoadTiles
call SafeLoadTiles2
call SafeTileAnimation
call Serve2bppRequest
call Serve1bppRequest
call AnimateTileset
.doneframeaction
; oam update off?
@ -131,8 +131,8 @@ VBlank0: ; 2b1
; update oam by dma transfer
call hPushOAM
; 403f:
; ld a, $c4
; @PushOAM:
; ld a, Sprites >> 8
; ld [rDMA], a
; ld a, $28
; .loop
@ -230,11 +230,11 @@ VBlank1: ; 337
; these have their own timing checks
call UpdateBGMap
call LoadTiles
call Serve2bppRequest@VBlank
; update oam by dma transfer
call hPushOAM
; 403f:
; ld a, $c4
; @PushOAM:
; ld a, Sprites >> 8
; ld [rDMA], a
; ld a, $28
; .loop
@ -338,12 +338,12 @@ VBlank3: ; 396
jr c, .vblankoccurred
; else
call UpdateBGMap
call LoadTiles
call Serve2bppRequest@VBlank
; update oam by dma transfer
call hPushOAM
; 403f:
; ld a, $c4 ; Sprites / $100
; @PushOAM:
; ld a, Sprites >> 8
; ld [rDMA], a
; ld a, $28
; .loop
@ -410,12 +410,12 @@ VBlank4: ; 3df
ld [$ff8a], a
call UpdateBGMap
call SafeLoadTiles
call Serve2bppRequest
; update oam by dma transfer
call hPushOAM
; 403f:
; ld a, $c4
; @PushOAM:
; ld a, Sprites >> 8
; ld [rDMA], a
; ld a, $28
; .loop
@ -465,7 +465,7 @@ VBlank5: ; 400
jr c, .vblankoccurred
call UpdateBGMap
call SafeLoadTiles
call Serve2bppRequest
.vblankoccurred
; tell other fns vblank happened
@ -521,8 +521,8 @@ VBlank6: ; 436
call UpdateCGBPals
jr c, .vblankoccurred
call SafeLoadTiles
call SafeLoadTiles2
call Serve2bppRequest
call Serve1bppRequest
call DMATransfer
.vblankoccurred

487
engine/video.asm Normal file
View File

@ -0,0 +1,487 @@
; Functions dealing with VRAM.
DMATransfer: ; 15d8
; Return carry if the transfer is completed.
ld a, [hDMATransfer]
and a
ret z
; Start transfer
ld [rHDMA5], a
; Execution is halted until the transfer is complete.
xor a
ld [hDMATransfer], a
scf
ret
; 15e3
UpdateBGMapBuffer: ; 15e3
; Copy [$ffdc] 16x8 tiles from BGMapBuffer
; to bg map addresses in BGMapBufferPtrs.
; [$ffdc] must be even since this is done in pairs.
; Return carry on success.
ld a, [hBGMapUpdate]
and a
ret z
ld a, [rVBK]
push af
ld [hSPBuffer], sp
ld hl, BGMapBufferPtrs
ld sp, hl
; We can now pop the addresses of affected spots on the BG Map
ld hl, BGMapPalBuffer
ld de, BGMapBuffer
.next
; Copy a pair of 16x8 blocks (one 16x16 block)
rept 2
; Get our BG Map address
pop bc
; Palettes
ld a, 1
ld [rVBK], a
ld a, [hli]
ld [bc], a
inc c
ld a, [hli]
ld [bc], a
dec c
; Tiles
ld a, 0
ld [rVBK], a
ld a, [de]
inc de
ld [bc], a
inc c
ld a, [de]
inc de
ld [bc], a
endr
; We've done 2 16x8 blocks
ld a, [$ffdc]
dec a
dec a
ld [$ffdc], a
jr nz, .next
ld a, [hSPBuffer]
ld l, a
ld a, [hSPBuffer + 1]
ld h, a
ld sp, hl
pop af
ld [rVBK], a
xor a
ld [hBGMapUpdate], a
scf
ret
; 163a
WaitTop: ; 163a
; Wait until the top third of the BG Map is being updated.
ld a, [hBGMapMode]
and a
ret z
ld a, [hBGMapThird]
and a
jr z, .done
call DelayFrame
jr WaitTop
.done
xor a
ld [hBGMapMode], a
ret
; 164c
UpdateBGMap: ; 164c
; Update the BG Map, in thirds, from TileMap and AttrMap.
ld a, [hBGMapMode]
and a
ret z
; BG Map 0
dec a ; 1
jr z, .Tiles
dec a ; 2
jr z, .Attr
; BG Map 1
dec a
ld a, [hBGMapAddress]
ld l, a
ld a, [hBGMapAddress + 1]
ld h, a
push hl
xor a
ld [hBGMapAddress], a
ld a, VBGMap1 >> 8
ld [hBGMapAddress + 1], a
ld a, [hBGMapMode]
push af
cp 3
call z, .Tiles
pop af
cp 4
call z, .Attr
pop hl
ld a, l
ld [hBGMapAddress], a
ld a, h
ld [hBGMapAddress + 1], a
ret
.Attr
ld a, 1
ld [rVBK], a
ld hl, AttrMap
call .update
ld a, 0
ld [rVBK], a
ret
.Tiles
ld hl, TileMap
.update
ld [hSPBuffer], sp
; Which third?
ld a, [hBGMapThird]
and a ; 0
jr z, .top
dec a ; 1
jr z, .middle
; 2
THIRD_HEIGHT EQU SCREEN_HEIGHT / 3
.bottom
ld de, 2 * THIRD_HEIGHT * SCREEN_WIDTH
add hl, de
ld sp, hl
ld a, [hBGMapAddress + 1]
ld h, a
ld a, [hBGMapAddress]
ld l, a
ld de, 2 * THIRD_HEIGHT * BG_MAP_WIDTH
add hl, de
; Next time: top third
xor a
jr .start
.middle
ld de, THIRD_HEIGHT * SCREEN_WIDTH
add hl, de
ld sp, hl
ld a, [hBGMapAddress + 1]
ld h, a
ld a, [hBGMapAddress]
ld l, a
ld de, THIRD_HEIGHT * BG_MAP_WIDTH
add hl, de
; Next time: bottom third
ld a, 2
jr .start
.top
ld sp, hl
ld a, [hBGMapAddress + 1]
ld h, a
ld a, [hBGMapAddress]
ld l, a
; Next time: middle third
ld a, 1
.start
; Which third to update next time
ld [hBGMapThird], a
; Rows of tiles in a third
ld a, SCREEN_HEIGHT / 3
; Discrepancy between TileMap and BGMap
ld bc, BG_MAP_WIDTH - (SCREEN_WIDTH - 1)
.row
; Copy a row of 20 tiles
rept SCREEN_WIDTH / 2 - 1
pop de
ld [hl], e
inc l
ld [hl], d
inc l
endr
pop de
ld [hl], e
inc l
ld [hl], d
add hl, bc
dec a
jr nz, .row
ld a, [hSPBuffer]
ld l, a
ld a, [hSPBuffer + 1]
ld h, a
ld sp, hl
ret
; 170a
Serve1bppRequest: ; 170a
; Only call during the first fifth of VBlank
ld a, [Requested1bpp]
and a
ret z
; Back out if we're too far into VBlank
ld a, [rLY]
cp 144
ret c
cp 146
ret nc
; Copy [Requested1bpp] 1bpp tiles from [Requested1bppSource] to [Requested1bppDest]
ld [hSPBuffer], sp
; Source
ld hl, Requested1bppSource
ld a, [hli]
ld h, [hl]
ld l, a
ld sp, hl
; Destination
ld hl, Requested1bppDest
ld a, [hli]
ld h, [hl]
ld l, a
; # tiles to copy
ld a, [Requested1bpp]
ld b, a
xor a
ld [Requested1bpp], a
.next
rept 3
pop de
ld [hl], e
inc l
ld [hl], e
inc l
ld [hl], d
inc l
ld [hl], d
inc l
endr
pop de
ld [hl], e
inc l
ld [hl], e
inc l
ld [hl], d
inc l
ld [hl], d
inc hl
dec b
jr nz, .next
ld a, l
ld [Requested1bppDest], a
ld a, h
ld [Requested1bppDest + 1], a
ld [Requested1bppSource], sp
ld a, [hSPBuffer]
ld l, a
ld a, [hSPBuffer + 1]
ld h, a
ld sp, hl
ret
; 1769
Serve2bppRequest: ; 1769
; Only call during the first fifth of VBlank
ld a, [Requested2bpp]
and a
ret z
; Back out if we're too far into VBlank
ld a, [rLY]
cp 144
ret c
cp 146
ret nc
jr _Serve2bppRequest
Serve2bppRequest@VBlank: ; 1778
ld a, [Requested2bpp]
and a
ret z
_Serve2bppRequest: ; 177d
; Copy [Requested2bpp] 2bpp tiles from [Requested2bppSource] to [Requested2bppDest]
ld [hSPBuffer], sp
; Source
ld hl, Requested2bppSource
ld a, [hli]
ld h, [hl]
ld l, a
ld sp, hl
; Destination
ld hl, Requested2bppDest
ld a, [hli]
ld h, [hl]
ld l, a
; # tiles to copy
ld a, [Requested2bpp]
ld b, a
xor a
ld [Requested2bpp], a
.next
rept 7
pop de
ld [hl], e
inc l
ld [hl], d
inc l
endr
pop de
ld [hl], e
inc l
ld [hl], d
inc hl
dec b
jr nz, .next
ld a, l
ld [Requested2bppDest], a
ld a, h
ld [Requested2bppDest + 1], a
ld [Requested2bppSource], sp
ld a, [hSPBuffer]
ld l, a
ld a, [hSPBuffer + 1]
ld h, a
ld sp, hl
ret
; 17d3
AnimateTileset: ; 17d3
; Only call during the first fifth of VBlank
ld a, [$ffde]
and a
ret z
; Back out if we're too far into VBlank
ld a, [rLY]
cp 144
ret c
cp 151
ret nc
ld a, [hROMBank]
push af
ld a, BANK(_AnimateTileset)
rst Bankswitch
ld a, [rSVBK]
push af
ld a, 1
ld [rSVBK], a
ld a, [rVBK]
push af
ld a, 0
ld [rVBK], a
call _AnimateTileset
pop af
ld [rVBK], a
pop af
ld [rSVBK], a
pop af
rst Bankswitch
ret
; 17ff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

17
interrupts.asm Normal file
View File

@ -0,0 +1,17 @@
; Game Boy hardware interrupts
SECTION "vblank",ROM0[$40]
jp VBlank
SECTION "lcd",ROM0[$48]
jp LCD
SECTION "timer",ROM0[$50]
jp Timer
SECTION "serial",ROM0[$58]
jp Serial
SECTION "joypad",ROM0[$60]
jp JoypadInt

443
items/marts.asm Normal file
View File

@ -0,0 +1,443 @@
Marts: ; 160a9
dw Mart0
dw Mart1
dw Mart2
dw Mart3
dw Mart4
dw Mart5
dw Mart6
dw Mart7
dw Mart8
dw Mart9
dw Mart10
dw Mart11
dw Mart12
dw Mart13
dw Mart14
dw Mart15
dw Mart16
dw Mart17
dw Mart18
dw Mart19
dw Mart20
dw Mart21
dw Mart22
dw Mart23
dw Mart24
dw Mart25
dw Mart26
dw Mart27
dw Mart28
dw Mart29
dw Mart30
dw Mart31
dw Mart32
dw Mart33
MartsEnd
; 160ed
Mart0: ; 160ed
db 4 ; # items
db POTION
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db $ff
; 160f3
Mart1: ; 160f3
db 5 ; # items
db POKE_BALL
db POTION
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db $ff
; 160fa
Mart2: ; 160fa
db 10 ; # items
db POKE_BALL
db POTION
db ESCAPE_ROPE
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db X_DEFEND
db X_ATTACK
db X_SPEED
db FLOWER_MAIL
db $ff
; 16106
Mart3: ; 16106
db 9 ; # items
db CHARCOAL
db POKE_BALL
db POTION
db SUPER_POTION
db ESCAPE_ROPE
db REPEL
db ANTIDOTE
db PARLYZ_HEAL
db FLOWER_MAIL
db $ff
; 16111
Mart4: ; 16111
db 5 ; # items
db POTION
db SUPER_POTION
db HYPER_POTION
db FULL_HEAL
db REVIVE
db $ff
; 16118
Mart5: ; 16118
db 7 ; # items
db POTION
db SUPER_POTION
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db BURN_HEAL
db ICE_HEAL
db $ff
; 16121
Mart6: ; 16121
db 8 ; # items
db POKE_BALL
db GREAT_BALL
db ESCAPE_ROPE
db REPEL
db REVIVE
db FULL_HEAL
db POKE_DOLL
db FLOWER_MAIL
db $ff
; 1612b
Mart7: ; 1612b
db 7 ; # items
db X_SPEED
db X_SPECIAL
db X_DEFEND
db X_ATTACK
db DIRE_HIT
db GUARD_SPEC
db X_ACCURACY
db $ff
; 16134
Mart8: ; 16134
db 5 ; # items
db PROTEIN
db IRON
db CARBOS
db CALCIUM
db HP_UP
db $ff
; 1613b
Mart9: ; 1613b
db 3 ; # items
db TM_41
db TM_48
db TM_33
db $ff
; 16140
Mart10: ; 16140
db 4 ; # items
db TM_41
db TM_48
db TM_33
db TM_02
db $ff
; 16146
Mart11: ; 16146
db 4 ; # items
db TM_41
db TM_48
db TM_33
db TM_08
db $ff
; 1614c
Mart12: ; 1614c
db 5 ; # items
db TM_41
db TM_48
db TM_33
db TM_02
db TM_08
db $ff
; 16153
Mart13: ; 16153
db 9 ; # items
db GREAT_BALL
db SUPER_POTION
db HYPER_POTION
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db ICE_HEAL
db SUPER_REPEL
db SURF_MAIL
db $ff
; 1615e
Mart14: ; 1615e
db 10 ; # items
db POKE_BALL
db GREAT_BALL
db POTION
db SUPER_POTION
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db BURN_HEAL
db ICE_HEAL
db REVIVE
db $ff
; 1616a
Mart15: ; 1616a
db 4 ; # items
db TINYMUSHROOM
db SLOWPOKETAIL
db POKE_BALL
db POTION
db $ff
; 16170
Mart16: ; 16170
db 9 ; # items
db RAGECANDYBAR
db GREAT_BALL
db SUPER_POTION
db HYPER_POTION
db ANTIDOTE
db PARLYZ_HEAL
db SUPER_REPEL
db REVIVE
db FLOWER_MAIL
db $ff
; 1617b
Mart17: ; 1617b
db 9 ; # items
db GREAT_BALL
db ULTRA_BALL
db HYPER_POTION
db MAX_POTION
db FULL_HEAL
db REVIVE
db MAX_REPEL
db X_DEFEND
db X_ATTACK
db $ff
; 16186
Mart18: ; 16186
db 9 ; # items
db ULTRA_BALL
db HYPER_POTION
db FULL_HEAL
db REVIVE
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db BURN_HEAL
db FLOWER_MAIL
db $ff
; 16191
Mart19: ; 16191
db 7 ; # items
db GREAT_BALL
db SUPER_POTION
db SUPER_REPEL
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db BURN_HEAL
db $ff
; 1619a
Mart20: ; 1619a
db 9 ; # items
db GREAT_BALL
db ULTRA_BALL
db SUPER_POTION
db SUPER_REPEL
db FULL_HEAL
db X_DEFEND
db X_ATTACK
db DIRE_HIT
db SURF_MAIL
db $ff
; 161a5
Mart21: ; 161a5
db 8 ; # items
db GREAT_BALL
db POTION
db SUPER_POTION
db MAX_REPEL
db ANTIDOTE
db PARLYZ_HEAL
db AWAKENING
db BURN_HEAL
db $ff
; 161af
Mart22: ; 161af
db 8 ; # items
db ULTRA_BALL
db SUPER_POTION
db HYPER_POTION
db REVIVE
db PARLYZ_HEAL
db AWAKENING
db BURN_HEAL
db LITEBLUEMAIL
db $ff
; 161b9
Mart23: ; 161b9
db 7 ; # items
db POTION
db SUPER_POTION
db HYPER_POTION
db MAX_POTION
db REVIVE
db SUPER_REPEL
db MAX_REPEL
db $ff
; 161c2
Mart24: ; 161c2
db 10 ; # items
db POKE_BALL
db GREAT_BALL
db ULTRA_BALL
db ESCAPE_ROPE
db FULL_HEAL
db ANTIDOTE
db BURN_HEAL
db ICE_HEAL
db AWAKENING
db PARLYZ_HEAL
db $ff
; 161ce
Mart25: ; 161ce
db 5 ; # items
db TM_10
db TM_11
db TM_17
db TM_18
db TM_37
db $ff
; 161d5
Mart26: ; 161d5
db 3 ; # items
db POKE_DOLL
db LOVELY_MAIL
db SURF_MAIL
db $ff
; 161da
Mart27: ; 161da
db 5 ; # items
db HP_UP
db PROTEIN
db IRON
db CARBOS
db CALCIUM
db $ff
; 161e1
Mart28: ; 161e1
db 7 ; # items
db X_ACCURACY
db GUARD_SPEC
db DIRE_HIT
db X_ATTACK
db X_DEFEND
db X_SPEED
db X_SPECIAL
db $ff
; 161ea
Mart29: ; 161ea
db 7 ; # items
db GREAT_BALL
db ULTRA_BALL
db SUPER_POTION
db HYPER_POTION
db FULL_HEAL
db MAX_REPEL
db FLOWER_MAIL
db $ff
; 161f3
Mart30: ; 161f3
db 8 ; # items
db GREAT_BALL
db ULTRA_BALL
db HYPER_POTION
db MAX_POTION
db FULL_HEAL
db X_ATTACK
db X_DEFEND
db FLOWER_MAIL
db $ff
; 161fd
Mart31: ; 161fd
db 6 ; # items
db POKE_DOLL
db FRESH_WATER
db SODA_POP
db LEMONADE
db REPEL
db PORTRAITMAIL
db $ff
; 16205
Mart32: ; 16205
db 7 ; # items
db ULTRA_BALL
db MAX_REPEL
db HYPER_POTION
db MAX_POTION
db FULL_RESTORE
db REVIVE
db FULL_HEAL
db $ff
; 1620e
Mart33: ; 1620e
db 4 ; # items
db ENERGYPOWDER
db ENERGY_ROOT
db HEAL_POWDER
db REVIVAL_HERB
db $ff
; 16214
DefaultMart: ; 16214
db 2 ; # items
db POKE_BALL
db POTION
db $ff
; 16218

95
macros.asm Normal file
View File

@ -0,0 +1,95 @@
; rgbds macros
dwb: MACRO
dw \1
db \2
ENDM
dbw: MACRO
db \1
dw \2
ENDM
dn: MACRO
db \1 << 4 + \2
ENDM
dt: MACRO ; three-byte (big-endian)
db (\1 >> 16) & $ff
db (\1 >> 8) & $ff
db \1 & $ff
ENDM
bigdw: MACRO ; big-endian word
dw ((\1)/$100) + (((\1)&$ff)*$100)
ENDM
callab: MACRO ; address, bank
ld hl, \1
ld a, BANK(\1)
rst FarCall
ENDM
callba: MACRO ; bank, address
ld a, BANK(\1)
ld hl, \1
rst FarCall
ENDM
TX_RAM: MACRO
db 1
dw \1
ENDM
TX_FAR: MACRO
db $16
dw \1
db BANK(\1)
ENDM
RGB: MACRO
dw ((\3 << 10) | (\2 << 5) | (\1))
ENDM
note: MACRO
db \1
ENDM
; It's better to use *coord than FuncCoord.
FuncCoord: MACRO
Coord = $c4a0 + 20 * \2 + \1
ENDM
bccoord: MACRO
FuncCoord \1, \2
ld bc, Coord
ENDM
decoord: MACRO
FuncCoord \1, \2
ld de, Coord
ENDM
hlcoord: MACRO
FuncCoord \1, \2
ld hl, Coord
ENDM
; pic animations
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

25937
main.asm

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,7 @@ AzaleaGym_MapScriptHeader: ; 0x18ec1c
BugsyScript_0x18ec1e: ; 0x18ec1e
faceplayer
loadfont
checkbit1 $04be
checkbit1 EVENT_BEAT_BUGSY
iftrue UnknownScript_0x18ec48
2writetext UnknownText_0x18ed0b
closetext
@ -18,7 +18,7 @@ BugsyScript_0x18ec1e: ; 0x18ec1e
loadtrainer BUGSY, 1
startbattle
returnafterbattle
setbit1 $04be
setbit1 EVENT_BEAT_BUGSY
loadfont
2writetext UnknownText_0x18ee14
playsound $009c
@ -27,17 +27,17 @@ BugsyScript_0x18ec1e: ; 0x18ec1e
checkcode $7
2call UnknownScript_0x18ec73
UnknownScript_0x18ec48: ; 0x18ec48
checkbit1 $0009
checkbit1 EVENT_GOT_TM49_FURY_CUTTER
iftrue UnknownScript_0x18ec6d
setbit1 $0464
setbit1 $053c
setbit1 $053d
setbit1 $053e
setbit1 EVENT_BEAT_TWINS_AMY_AND_MAY
setbit1 EVENT_BEAT_BUG_CATCHER_BENNY
setbit1 EVENT_BEAT_BUG_CATCHER_AL
setbit1 EVENT_BEAT_BUG_CATCHER_JOSH
2writetext UnknownText_0x18ee2b
keeptextopen
verbosegiveitem TM_49, 1
iffalse UnknownScript_0x18ec71
setbit1 $0009
setbit1 EVENT_GOT_TM49_FURY_CUTTER
2writetext UnknownText_0x18eefa
closetext
loadmovesprites
@ -213,7 +213,7 @@ Bug_catcherJoshScript: ; 0x18ecde
AzaleaGymGuyScript: ; 0x18ece6
faceplayer
checkbit1 $04be
checkbit1 EVENT_BEAT_BUGSY
iftrue .AzaleaGymGuyWinScript
loadfont
2writetext AzaleaGymGuyText

View File

@ -59,9 +59,9 @@ UnknownScript_0x198049: ; 0x198049
closetext
loadmovesprites
setbit1 $06bf
checkbit1 $001c
checkbit1 EVENT_GOT_TOTODILE_FROM_ELM
iftrue UnknownScript_0x198071
checkbit1 $001d
checkbit1 EVENT_GOT_CHIKORITA_FROM_ELM
iftrue UnknownScript_0x198081
winlosstext UnknownText_0x1981e6, UnknownText_0x19835b
setlasttalked $b
@ -119,7 +119,7 @@ AzaleaRocketScript_0x1980ae: ; 0x1980ae
GrampsScript_0x1980b1: ; 0x1980b1
faceplayer
loadfont
checkbit1 $002b
checkbit1 EVENT_CLEARED_SLOWPOKE_WELL
iftrue UnknownScript_0x1980bf
2writetext UnknownText_0x19841b
closetext

View File

@ -11,23 +11,23 @@ GrampsScript_0x189538: ; 0x189538
loadfont
checkbit1 $0000
iftrue UnknownScript_0x1896ba
checkbit1 $0324
checkbit1 EVENT_GOT_THUNDERSTONE_FROM_BILLS_GRANDPA
iftrue UnknownScript_0x1896c0
checkbit1 $031a
checkbit1 EVENT_MET_BILLS_GRANDPA
iftrue UnknownScript_0x189553
2writetext UnknownText_0x1896ce
keeptextopen
setbit1 $031a
setbit1 EVENT_MET_BILLS_GRANDPA
UnknownScript_0x189553: ; 0x189553
checkbit1 $031f
checkbit1 EVENT_SHOWED_PICHU_TO_BILLS_GRANDPA
iftrue UnknownScript_0x189697
checkbit1 $031e
checkbit1 EVENT_SHOWED_GROWLITHE_VULPIX_TO_BILLS_GRANDPA
iftrue UnknownScript_0x189680
checkbit1 $031d
checkbit1 EVENT_SHOWED_STARYU_TO_BILLS_GRANDPA
iftrue UnknownScript_0x189669
checkbit1 $031c
checkbit1 EVENT_SHOWED_ODDISH_TO_BILLS_GRANDPA
iftrue UnknownScript_0x189652
checkbit1 $031b
checkbit1 EVENT_SHOWED_LICKITUNG_TO_BILLS_GRANDPA
iftrue UnknownScript_0x18963b
2writetext UnknownText_0x1898c0
keeptextopen
@ -39,7 +39,7 @@ UnknownScript_0x189553: ; 0x189553
iffalse UnknownScript_0x1896aa
if_not_equal LICKITUNG, UnknownScript_0x1896c6
2call UnknownScript_0x1896b0
setbit1 $031b
setbit1 EVENT_SHOWED_LICKITUNG_TO_BILLS_GRANDPA
2jump UnknownScript_0x18963b
; 0x189592
@ -54,7 +54,7 @@ UnknownScript_0x189592: ; 0x189592
iffalse UnknownScript_0x1896aa
if_not_equal ODDISH, UnknownScript_0x1896c6
2call UnknownScript_0x1896b0
setbit1 $031c
setbit1 EVENT_SHOWED_ODDISH_TO_BILLS_GRANDPA
2jump UnknownScript_0x189652
; 0x1895b3
@ -69,7 +69,7 @@ UnknownScript_0x1895b3: ; 0x1895b3
iffalse UnknownScript_0x1896aa
if_not_equal STARYU, UnknownScript_0x1896c6
2call UnknownScript_0x1896b0
setbit1 $031d
setbit1 EVENT_SHOWED_STARYU_TO_BILLS_GRANDPA
2jump UnknownScript_0x189669
; 0x1895d4
@ -86,7 +86,7 @@ UnknownScript_0x1895d4: ; 0x1895d4
iffalse UnknownScript_0x1896aa
if_not_equal GROWLITHE, UnknownScript_0x1896c6
2call UnknownScript_0x1896b0
setbit1 $031e
setbit1 EVENT_SHOWED_GROWLITHE_VULPIX_TO_BILLS_GRANDPA
2jump UnknownScript_0x189680
; 0x1895f9
@ -101,7 +101,7 @@ UnknownScript_0x1895f9: ; 0x1895f9
iffalse UnknownScript_0x1896aa
if_not_equal VULPIX, UnknownScript_0x1896c6
2call UnknownScript_0x1896b0
setbit1 $031e
setbit1 EVENT_SHOWED_GROWLITHE_VULPIX_TO_BILLS_GRANDPA
2jump UnknownScript_0x189680
; 0x18961a
@ -116,53 +116,53 @@ UnknownScript_0x18961a: ; 0x18961a
iffalse UnknownScript_0x1896aa
if_not_equal PICHU, UnknownScript_0x1896c6
2call UnknownScript_0x1896b0
setbit1 $031f
setbit1 EVENT_SHOWED_PICHU_TO_BILLS_GRANDPA
2jump UnknownScript_0x189697
; 0x18963b
UnknownScript_0x18963b: ; 0x18963b
checkbit1 $0320
checkbit1 EVENT_GOT_EVERSTONE_FROM_BILLS_GRANDPA
iftrue UnknownScript_0x189592
2call UnknownScript_0x1896b5
verbosegiveitem EVERSTONE, 1
iffalse UnknownScript_0x1896cc
setbit1 $0320
setbit1 EVENT_GOT_EVERSTONE_FROM_BILLS_GRANDPA
setbit1 $0000
loadmovesprites
end
; 0x189652
UnknownScript_0x189652: ; 0x189652
checkbit1 $0321
checkbit1 EVENT_GOT_LEAF_STONE_FROM_BILLS_GRANDPA
iftrue UnknownScript_0x1895b3
2call UnknownScript_0x1896b5
verbosegiveitem LEAF_STONE, 1
iffalse UnknownScript_0x1896cc
setbit1 $0321
setbit1 EVENT_GOT_LEAF_STONE_FROM_BILLS_GRANDPA
setbit1 $0000
loadmovesprites
end
; 0x189669
UnknownScript_0x189669: ; 0x189669
checkbit1 $0322
checkbit1 EVENT_GOT_WATER_STONE_FROM_BILLS_GRANDPA
iftrue UnknownScript_0x1895d4
2call UnknownScript_0x1896b5
verbosegiveitem WATER_STONE, 1
iffalse UnknownScript_0x1896cc
setbit1 $0322
setbit1 EVENT_GOT_WATER_STONE_FROM_BILLS_GRANDPA
setbit1 $0000
loadmovesprites
end
; 0x189680
UnknownScript_0x189680: ; 0x189680
checkbit1 $0323
checkbit1 EVENT_GOT_FIRE_STONE_FROM_BILLS_GRANDPA
iftrue UnknownScript_0x18961a
2call UnknownScript_0x1896b5
verbosegiveitem FIRE_STONE, 1
iffalse UnknownScript_0x1896cc
setbit1 $0323
setbit1 EVENT_GOT_FIRE_STONE_FROM_BILLS_GRANDPA
setbit1 $0000
loadmovesprites
end
@ -172,7 +172,7 @@ UnknownScript_0x189697: ; 0x189697
2call UnknownScript_0x1896b5
verbosegiveitem THUNDERSTONE, 1
iffalse UnknownScript_0x1896cc
setbit1 $0324
setbit1 EVENT_GOT_THUNDERSTONE_FROM_BILLS_GRANDPA
loadmovesprites
end
; 0x1896a5

View File

@ -32,9 +32,9 @@ UnknownScript_0x1a46e5: ; 0x1a46e5
SuperNerdScript_0x1a46e8: ; 0x1a46e8
faceplayer
loadfont
checkbit1 $04c4
checkbit1 EVENT_BEAT_CLAIR
iftrue UnknownScript_0x1a4702
checkbit1 $0021
checkbit1 EVENT_CLEARED_RADIO_TOWER
iftrue UnknownScript_0x1a46fc
2writetext UnknownText_0x1a477a
closetext
@ -67,7 +67,7 @@ GrampsScript_0x1a470b: ; 0x1a470b
BlackBeltScript_0x1a470e: ; 0x1a470e
faceplayer
loadfont
checkbit1 $0021
checkbit1 EVENT_CLEARED_RADIO_TOWER
iftrue UnknownScript_0x1a471c
2writetext UnknownText_0x1a494a
closetext
@ -97,21 +97,21 @@ CooltrainerFScript_0x1a4728: ; 0x1a4728
YoungsterScript_0x1a472b: ; 0x1a472b
faceplayer
loadfont
checkbit1 $006d
checkbit1 EVENT_GOT_SPELL_TAG_FROM_SANTOS
iftrue UnknownScript_0x1a4759
checkcode $b
if_not_equal SATURDAY, UnknownScript_0x1a475f
checkbit1 $006c
checkbit1 EVENT_MET_SANTOS_OF_SATURDAY
iftrue UnknownScript_0x1a4746
2writetext UnknownText_0x1a4a27
keeptextopen
setbit1 $006c
setbit1 EVENT_MET_SANTOS_OF_SATURDAY
UnknownScript_0x1a4746: ; 0x1a4746
2writetext UnknownText_0x1a4a57
keeptextopen
verbosegiveitem SPELL_TAG, 1
iffalse UnknownScript_0x1a475d
setbit1 $006d
setbit1 EVENT_GOT_SPELL_TAG_FROM_SANTOS
2writetext UnknownText_0x1a4a6b
closetext
loadmovesprites

View File

@ -31,7 +31,7 @@ ClairScript_0x194e24: ; 0x194e24
loadfont
checkbit2 $0022
iftrue UnknownScript_0x194e69
checkbit1 $04c4
checkbit1 EVENT_BEAT_CLAIR
iftrue UnknownScript_0x194e63
2writetext UnknownText_0x194efa
closetext
@ -40,16 +40,16 @@ ClairScript_0x194e24: ; 0x194e24
loadtrainer CLAIR, 1
startbattle
returnafterbattle
setbit1 $04c4
setbit1 EVENT_BEAT_CLAIR
loadfont
2writetext UnknownText_0x19500e
closetext
loadmovesprites
setbit1 $054a
setbit1 $054b
setbit1 $054c
setbit1 $055d
setbit1 $055e
setbit1 EVENT_BEAT_COOLTRAINERM_PAUL
setbit1 EVENT_BEAT_COOLTRAINERM_CODY
setbit1 EVENT_BEAT_COOLTRAINERM_MIKE
setbit1 EVENT_BEAT_COOLTRAINERF_FRAN
setbit1 EVENT_BEAT_COOLTRAINERF_LOLA
clearbit1 $0736
setbit1 $074c
clearbit1 $074d
@ -64,7 +64,7 @@ UnknownScript_0x194e63: ; 0x194e63
; 0x194e69
UnknownScript_0x194e69: ; 0x194e69
checkbit1 $000f
checkbit1 EVENT_GOT_TM24_DRAGONBREATH
iftrue UnknownScript_0x194e94
2writetext UnknownText_0x195196
keeptextopen
@ -75,7 +75,7 @@ UnknownScript_0x194e69: ; 0x194e69
playsound $0001
waitbutton
itemnotify
setbit1 $000f
setbit1 EVENT_GOT_TM24_DRAGONBREATH
2writetext UnknownText_0x1951d1
keeptextopen
2jump UnknownScript_0x194e94
@ -185,7 +185,7 @@ CooltrainerfLolaScript: ; 0x194ece
BlackthornGymGuyScript: ; 0x194ed6
faceplayer
loadfont
checkbit1 $04c4
checkbit1 EVENT_BEAT_CLAIR
iftrue .BlackthornGymGuyWinScript
2writetext BlackthornGymGuyText
closetext

View File

@ -24,11 +24,11 @@ UnknownScript_0x180997: ; 0x180997
; 0x180998
UnknownScript_0x180998: ; 0x180998
checkbit1 $030d
checkbit1 EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
iffalse UnknownScript_0x1809a2
changeblock $4, $e, $2a
UnknownScript_0x1809a2: ; 0x1809a2
checkbit1 $030e
checkbit1 EVENT_BRUNOS_ROOM_EXIT_OPEN
iffalse UnknownScript_0x1809ac
changeblock $4, $2, $16
UnknownScript_0x1809ac: ; 0x1809ac
@ -44,7 +44,7 @@ UnknownScript_0x1809ad: ; 0x1809ad
reloadmappart
loadmovesprites
dotrigger $1
setbit1 $030d
setbit1 EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
waitbutton
end
; 0x1809c5
@ -70,7 +70,7 @@ BrunoScript_0x1809c5: ; 0x1809c5
changeblock $4, $2, $16
reloadmappart
loadmovesprites
setbit1 $030e
setbit1 EVENT_BRUNOS_ROOM_EXIT_OPEN
waitbutton
end
; 0x1809f3

View File

@ -33,7 +33,7 @@ UnknownScript_0x185bf8: ; 0x185bf8
iftrue UnknownScript_0x185c02
changeblock $a, $8, $32
UnknownScript_0x185c02: ; 0x185c02
checkbit1 $007b
checkbit1 EVENT_RELEASED_THE_BEASTS
iftrue UnknownScript_0x185c0c
changeblock $6, $e, $9
UnknownScript_0x185c0c: ; 0x185c0c
@ -66,9 +66,9 @@ UnknownScript_0x185c25: ; 0x185c25
2writetext UnknownText_0x185cd9
closetext
loadmovesprites
checkbit1 $001c
checkbit1 EVENT_GOT_TOTODILE_FROM_ELM
iftrue UnknownScript_0x185c60
checkbit1 $001d
checkbit1 EVENT_GOT_CHIKORITA_FROM_ELM
iftrue UnknownScript_0x185c70
winlosstext UnknownText_0x185d9b, UnknownText_0x185e2c
setlasttalked $4

View File

@ -23,7 +23,7 @@ UnknownScript_0x18615f: ; 0x18615f
; 0x186160
UnknownScript_0x186160: ; 0x186160
checkbit1 $007b
checkbit1 EVENT_RELEASED_THE_BEASTS
iftrue UnknownScript_0x18616a
changeblock $6, $e, $2
UnknownScript_0x18616a: ; 0x18616a
@ -80,11 +80,11 @@ UnknownScript_0x18616b: ; 0x18616b
waitbutton
special $003d
dotrigger $1
setbit1 $007b
setbit1 EVENT_RELEASED_THE_BEASTS
special $0069
domaptrigger GROUP_ECRUTEAK_GYM, MAP_ECRUTEAK_GYM, $1
domaptrigger GROUP_CIANWOOD_CITY, MAP_CIANWOOD_CITY, $1
clearbit1 $07ae
clearbit1 EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
setbit1 $07a8
clearbit1 $07a9
setbit1 $0764

View File

@ -92,7 +92,7 @@ MapCeladonCafeSignpost0Script: ; 0x730ad
; 0x730b0
MapCeladonCafeSignpost1Script: ; 0x730b0
checkbit1 $00f9
checkbit1 EVENT_FOUND_LEFTOVERS_IN_CELADON_CAFE
iftrue UnknownScript_0x730db
giveitem LEFTOVERS, $1
iffalse UnknownScript_0x730cd
@ -103,7 +103,7 @@ MapCeladonCafeSignpost1Script: ; 0x730b0
waitbutton
itemnotify
loadmovesprites
setbit1 $00f9
setbit1 EVENT_FOUND_LEFTOVERS_IN_CELADON_CAFE
end
; 0x730cd

View File

@ -47,7 +47,7 @@ FishingGuruScript_0x72139: ; 0x72139
FisherScript_0x72144: ; 0x72144
faceplayer
loadfont
checkbit1 $00ce
checkbit1 EVENT_GOT_COINS_FROM_GAMBLER_AT_CELADON
iftrue .UnknownScript_0x72169
2writetext UnknownText_0x722dc
keeptextopen
@ -58,7 +58,7 @@ FisherScript_0x72144: ; 0x72144
stringtotext .coinname, $1
2call .UnknownScript_0x72172
givecoins 18
setbit1 $00ce
setbit1 EVENT_GOT_COINS_FROM_GAMBLER_AT_CELADON
.UnknownScript_0x72169 ; 0x72169
2writetext UnknownText_0x72345
closetext

View File

@ -19,23 +19,23 @@ ErikaScript_0x72a6a: ; 0x72a6a
startbattle
returnafterbattle
setbit1 $04c8
setbit1 $051d
setbit1 $0490
setbit1 $04ba
setbit1 $0468
setbit1 EVENT_BEAT_LASS_MICHELLE
setbit1 EVENT_BEAT_PICNICKER_TANYA
setbit1 EVENT_BEAT_BEAUTY_JULIA
setbit1 EVENT_BEAT_TWINS_JO_AND_ZOE
loadfont
2writetext UnknownText_0x72c96
playsound $009c
waitbutton
setbit2 $0026
UnknownScript_0x72a9b: ; 0x72a9b
checkbit1 $00dc
checkbit1 EVENT_GOT_TM19_GIGA_DRAIN
iftrue UnknownScript_0x72aae
2writetext UnknownText_0x72cb0
keeptextopen
verbosegiveitem TM_19, 1
iffalse UnknownScript_0x72aae
setbit1 $00dc
setbit1 EVENT_GOT_TM19_GIGA_DRAIN
UnknownScript_0x72aae: ; 0x72aae
2writetext UnknownText_0x72d8f
closetext

View File

@ -28,14 +28,14 @@ UnknownScript_0x7167e: ; 0x7167e
2writetext UnknownText_0x71763
closetext
loadmovesprites
setbit1 $00d6
setbit1 EVENT_ENABLE_DIPLOMA_PRINTING
end
; 0x71696
GymGuyScript_0x71696: ; 0x71696
faceplayer
loadfont
checkbit1 $00d6
checkbit1 EVENT_ENABLE_DIPLOMA_PRINTING
iftrue UnknownScript_0x716a4
2writetext UnknownText_0x717b4
closetext

View File

@ -9,7 +9,7 @@ CeladonMansionRoofHouse_MapScriptHeader: ; 0x71afb
PharmacistScript_0x71afd: ; 0x71afd
faceplayer
loadfont
checkbit1 $00da
checkbit1 EVENT_GOT_TM03_CURSE
iftrue UnknownScript_0x71b21
2writetext UnknownText_0x71b27
keeptextopen
@ -26,7 +26,7 @@ UnknownScript_0x71b14: ; 0x71b14
keeptextopen
verbosegiveitem TM_03, 1
iffalse UnknownScript_0x71b25
setbit1 $00da
setbit1 EVENT_GOT_TM03_CURSE
UnknownScript_0x71b21: ; 0x71b21
2writetext UnknownText_0x71db3
closetext

View File

@ -18,7 +18,7 @@ UnknownScript_0x184005: ; 0x184005
CooltrainerMScript_0x184009: ; 0x184009
faceplayer
loadfont
checkbit1 $00c9
checkbit1 EVENT_RETURNED_MACHINE_PART
iftrue UnknownScript_0x184017
2writetext UnknownText_0x1840bc
closetext
@ -72,9 +72,9 @@ CooltrainerFScript_0x18402a: ; 0x18402a
FisherScript_0x18404a: ; 0x18404a
faceplayer
loadfont
checkbit1 $00c9
checkbit1 EVENT_RETURNED_MACHINE_PART
iftrue UnknownScript_0x184058
checkbit1 $00cb
checkbit1 EVENT_MET_ROCKET_GRUNT_AT_CERULEAN_GYM
iftrue UnknownScript_0x18405e
UnknownScript_0x184058: ; 0x184058
2writetext UnknownText_0x18424e

View File

@ -42,7 +42,7 @@ UnknownScript_0x1883de: ; 0x1883de
applymovement $2, MovementData_0x1884e8
playsound $0023
disappear $2
setbit1 $00cb
setbit1 EVENT_MET_ROCKET_GRUNT_AT_CERULEAN_GYM
clearbit1 $076c
clearbit1 $076e
dotrigger $0
@ -68,10 +68,10 @@ MistyScript_0x188432: ; 0x188432
loadtrainer MISTY, 1
startbattle
returnafterbattle
setbit1 $04c6
setbit1 $03f9
setbit1 $03fa
setbit1 $05a8
setbit1 EVENT_BEAT_MISTY
setbit1 EVENT_BEAT_SWIMMERF_DIANA
setbit1 EVENT_BEAT_SWIMMERF_BRIANA
setbit1 EVENT_BEAT_SWIMMERM_PARKER
loadfont
2writetext UnknownText_0x188768
playsound $009c
@ -174,7 +174,7 @@ SwimmermParkerScript: ; 0x18849a
CeruleanGymGuyScript: ; 0x1884a2
faceplayer
loadfont
checkbit1 $04c6
checkbit1 EVENT_BEAT_MISTY
iftrue .CeruleanGymGuyWinScript
2writetext CeruleanGymGuyText
closetext

View File

@ -9,9 +9,9 @@ CharcoalKiln_MapScriptHeader: ; 0x18dd18
BlackBeltScript_0x18dd1a: ; 0x18dd1a
faceplayer
loadfont
checkbit1 $0010
checkbit1 EVENT_GOT_HM01_CUT
iftrue UnknownScript_0x18dd34
checkbit1 $002b
checkbit1 EVENT_CLEARED_SLOWPOKE_WELL
iftrue UnknownScript_0x18dd2e
2writetext UnknownText_0x18dd74
closetext
@ -36,9 +36,9 @@ UnknownScript_0x18dd34: ; 0x18dd34
YoungsterScript_0x18dd3a: ; 0x18dd3a
faceplayer
loadfont
checkbit1 $005e
checkbit1 EVENT_GOT_CHARCOAL_IN_CHARCOAL_KILN
iftrue UnknownScript_0x18dd5d
checkbit1 $0010
checkbit1 EVENT_GOT_HM01_CUT
iftrue UnknownScript_0x18dd4e
2writetext UnknownText_0x18dee0
closetext
@ -51,7 +51,7 @@ UnknownScript_0x18dd4e: ; 0x18dd4e
keeptextopen
verbosegiveitem CHARCOAL, 1
iffalse UnknownScript_0x18dd61
setbit1 $005e
setbit1 EVENT_GOT_CHARCOAL_IN_CHARCOAL_KILN
loadmovesprites
end
; 0x18dd5d

View File

@ -87,7 +87,7 @@ UnknownScript_0x19c01f: ; 0x19c01f
applymovement $2, MovementData_0x19c1cb
playsound $001f
disappear $2
clearbit1 $06ff
clearbit1 EVENT_GUIDE_GENT_VISIBLE_IN_CHERRYGROVE
waitbutton
end
@ -123,9 +123,9 @@ UnknownScript_0x19c0ae: ; 0x19c0ae
2writetext UnknownText_0x19c4e2
closetext
loadmovesprites
checkbit1 $001c
checkbit1 EVENT_GOT_TOTODILE_FROM_ELM
iftrue UnknownScript_0x19c0ee
checkbit1 $001d
checkbit1 EVENT_GOT_CHIKORITA_FROM_ELM
iftrue UnknownScript_0x19c104
winlosstext UnknownText_0x19c57f, UnknownText_0x19c5e6
setlasttalked $3
@ -228,13 +228,13 @@ UnknownScript_0x19c168: ; 0x19c168
FisherScript_0x19c16e: ; 0x19c16e
faceplayer
loadfont
checkbit1 $004d
checkbit1 EVENT_GOT_MYSTIC_WATER_IN_CHERRYGROVE
iftrue UnknownScript_0x19c183
2writetext UnknownText_0x19c766
keeptextopen
verbosegiveitem MYSTIC_WATER, 1
iffalse UnknownScript_0x19c187
setbit1 $004d
setbit1 EVENT_GOT_MYSTIC_WATER_IN_CHERRYGROVE
UnknownScript_0x19c183: ; 0x19c183
2writetext UnknownText_0x19c7c1
closetext

View File

@ -8,7 +8,7 @@ CherrygroveMart_MapScriptHeader: ; 0x196808
ClerkScript_0x19680a: ; 0x19680a
loadfont
checkbit1 $001f
checkbit1 EVENT_GAVE_MYSTERY_EGG_TO_ELM
iftrue UnknownScript_0x196817
pokemart $0, $0000
loadmovesprites
@ -24,7 +24,7 @@ UnknownScript_0x196817: ; 0x196817
CooltrainerMScript_0x19681d: ; 0x19681d
faceplayer
loadfont
checkbit1 $001f
checkbit1 EVENT_GAVE_MYSTERY_EGG_TO_ELM
iftrue UnknownScript_0x19682b
2writetext UnknownText_0x196834
closetext

View File

@ -21,7 +21,7 @@ GentlemanScript_0x196973: ; 0x196973
TeacherScript_0x196976: ; 0x196976
faceplayer
loadfont
checkbit1 $001f
checkbit1 EVENT_GAVE_MYSTERY_EGG_TO_ELM
iftrue UnknownScript_0x196984
2writetext UnknownText_0x1969f1
closetext

View File

@ -45,7 +45,7 @@ UnknownScript_0x1a001e: ; 0x1a001e
disappear $d
pause 10
dotrigger $0
clearbit1 $07af
clearbit1 EVENT_SAW_SUICUNE_ON_ROUTE_42
domaptrigger GROUP_ROUTE_42, MAP_ROUTE_42, $1
checkbit1 $0333
iftrue UnknownScript_0x1a0083
@ -81,11 +81,11 @@ UnknownScript_0x1a0083: ; 0x1a0083
PokefanFScript_0x1a0084: ; 0x1a0084
faceplayer
loadfont
checkbit1 $0011
checkbit1 EVENT_GOT_HM02_FLY
iftrue UnknownScript_0x1a00ad
2writetext UnknownText_0x1a00f1
keeptextopen
checkbit1 $04c2
checkbit1 EVENT_BEAT_CHUCK
iftrue UnknownScript_0x1a009c
2writetext UnknownText_0x1a0163
closetext
@ -98,7 +98,7 @@ UnknownScript_0x1a009c: ; 0x1a009c
keeptextopen
verbosegiveitem HM_02, 1
iffalse UnknownScript_0x1a00b1
setbit1 $0011
setbit1 EVENT_GOT_HM02_FLY
2writetext UnknownText_0x1a021d
keeptextopen
UnknownScript_0x1a00ad: ; 0x1a00ad

View File

@ -9,7 +9,7 @@ CianwoodGym_MapScriptHeader: ; 0x9d60d
ChuckScript_0x9d60f: ; 0x9d60f
faceplayer
loadfont
checkbit1 $04c2
checkbit1 EVENT_BEAT_CHUCK
iftrue UnknownScript_0x9d656
2writetext UnknownText_0x9d6f9
closetext
@ -33,7 +33,7 @@ ChuckScript_0x9d60f: ; 0x9d60f
loadtrainer CHUCK, 1
startbattle
returnafterbattle
setbit1 $04c2
setbit1 EVENT_BEAT_CHUCK
loadfont
2writetext UnknownText_0x9d835
playsound $009c
@ -42,17 +42,17 @@ ChuckScript_0x9d60f: ; 0x9d60f
checkcode $7
2call UnknownScript_0x9d681
UnknownScript_0x9d656: ; 0x9d656
checkbit1 $000a
checkbit1 EVENT_GOT_TM01_DYNAMICPUNCH
iftrue UnknownScript_0x9d67b
setbit1 $04a5
setbit1 $04a7
setbit1 $04a8
setbit1 $04aa
setbit1 EVENT_BEAT_BLACKBELT_YOSHI
setbit1 EVENT_BEAT_BLACKBELT_LAO
setbit1 EVENT_BEAT_BLACKBELT_NOB
setbit1 EVENT_BEAT_BLACKBELT_LUNG
2writetext UnknownText_0x9d84d
keeptextopen
verbosegiveitem TM_01, 1
iffalse UnknownScript_0x9d67f
setbit1 $000a
setbit1 EVENT_GOT_TM01_DYNAMICPUNCH
2writetext UnknownText_0x9d8da
closetext
loadmovesprites

View File

@ -16,7 +16,7 @@ UnknownScript_0x9df9d: ; 0x9df9d
PharmacistScript_0x9df9e: ; 0x9df9e
faceplayer
loadfont
checkbit1 $0023
checkbit1 EVENT_GOT_SECRETPOTION_FROM_PHARMACY
iftrue UnknownScript_0x9dfc4
checkbit1 $0037
iffalse UnknownScript_0x9dfc4
@ -27,7 +27,7 @@ PharmacistScript_0x9df9e: ; 0x9df9e
playsound $0091
waitbutton
itemnotify
setbit1 $0023
setbit1 EVENT_GOT_SECRETPOTION_FROM_PHARMACY
2writetext UnknownText_0x9e070
closetext
loadmovesprites

View File

@ -16,7 +16,7 @@ LassScript_0x9dbd2: ; 0x9dbd2
CianwoodGymGuyScript: ; 0x9dbd5
faceplayer
checkbit1 $04c2
checkbit1 EVENT_BEAT_CHUCK
iftrue .CianwoodGymGuyWinScript
loadfont
2writetext CianwoodGymGuyText

View File

@ -13,7 +13,7 @@ PokefanMScript_0x18ad13: ; 0x18ad13
PokefanFScript_0x18ad16: ; 0x18ad16
faceplayer
loadfont
checkbit1 $00c9
checkbit1 EVENT_RETURNED_MACHINE_PART
iftrue UnknownScript_0x18ad24
2writetext UnknownText_0x18ad95
closetext

View File

@ -27,9 +27,9 @@ UnknownScript_0x18aeb0: ; 0x18aeb0
CopycatScript_0x18aeb1: ; 0x18aeb1
faceplayer
checkbit1 $00d1
checkbit1 EVENT_GOT_PASS_FROM_COPYCAT
iftrue UnknownScript_0x18af6f
checkbit1 $00d0
checkbit1 EVENT_RETURNED_LOST_ITEM_TO_COPYCAT
iftrue UnknownScript_0x18af5b
checkitem LOST_ITEM
iftrue UnknownScript_0x18af4a
@ -47,7 +47,7 @@ UnknownScript_0x18aed4: ; 0x18aed4
variablesprite $b, $60
UnknownScript_0x18aedc: ; 0x18aedc
special $005e
checkbit1 $00c9
checkbit1 EVENT_RETURNED_MACHINE_PART
iftrue UnknownScript_0x18af16
loadfont
checkbit2 $0063
@ -109,7 +109,7 @@ UnknownScript_0x18af39: ; 0x18af39
2writetext UnknownText_0x18b116
closetext
loadmovesprites
setbit1 $00cf
setbit1 EVENT_MET_COPYCAT_FOUND_OUT_ABOUT_LOST_ITEM
end
; 0x18af4a
@ -118,7 +118,7 @@ UnknownScript_0x18af4a: ; 0x18af4a
2writetext UnknownText_0x18b17f
keeptextopen
takeitem LOST_ITEM, 1
setbit1 $00d0
setbit1 EVENT_RETURNED_LOST_ITEM_TO_COPYCAT
clearbit1 $0773
2jump UnknownScript_0x18af5c
; 0x18af5b
@ -130,7 +130,7 @@ UnknownScript_0x18af5c: ; 0x18af5c
keeptextopen
verbosegiveitem PASS, 1
iffalse UnknownScript_0x18afba
setbit1 $00d1
setbit1 EVENT_GOT_PASS_FROM_COPYCAT
2writetext UnknownText_0x18b214
closetext
loadmovesprites

View File

@ -156,17 +156,17 @@ GentlemanScript_0x994c6: ; 0x994c6
loadfont
2writetext UnknownText_0x9980a
keeptextopen
checkbit1 $0012
checkbit1 EVENT_GOT_HM03_SURF
iftrue UnknownScript_0x99515
checkbit1 $04df
checkbit1 EVENT_BEAT_KIMONO_GIRL_NAOKO
iffalse UnknownScript_0x994f3
checkbit1 $04e0
checkbit1 EVENT_BEAT_KIMONO_GIRL_SAYO
iffalse UnknownScript_0x994f3
checkbit1 $04e1
checkbit1 EVENT_BEAT_KIMONO_GIRL_ZUKI
iffalse UnknownScript_0x994f3
checkbit1 $04e2
checkbit1 EVENT_BEAT_KIMONO_GIRL_KUNI
iffalse UnknownScript_0x994f3
checkbit1 $04e3
checkbit1 EVENT_BEAT_KIMONO_GIRL_MIKI
iffalse UnknownScript_0x994f3
2jump UnknownScript_0x99505
; 0x994f3
@ -191,7 +191,7 @@ UnknownScript_0x99505: ; 0x99505
2writetext UnknownText_0x9991a
keeptextopen
verbosegiveitem HM_03, 1
setbit1 $0012
setbit1 EVENT_GOT_HM03_SURF
2writetext UnknownText_0x9999b
closetext
loadmovesprites

View File

@ -9,13 +9,13 @@ DarkCaveBlackthornEntrance_MapScriptHeader: ; 0x18c71e
PharmacistScript_0x18c720: ; 0x18c720
faceplayer
loadfont
checkbit1 $0072
checkbit1 EVENT_GOT_BLACKGLASSES_IN_DARK_CAVE
iftrue UnknownScript_0x18c735
2writetext UnknownText_0x18c73f
keeptextopen
verbosegiveitem BLACKGLASSES, 1
iffalse UnknownScript_0x18c739
setbit1 $0072
setbit1 EVENT_GOT_BLACKGLASSES_IN_DARK_CAVE
UnknownScript_0x18c735: ; 0x18c735
2writetext UnknownText_0x18c80c
closetext

View File

@ -27,7 +27,7 @@ UnknownScript_0x62f88: ; 0x62f88
GrampsScript_0x62f8f: ; 0x62f8f
faceplayer
loadfont
checkbit1 $033e
checkbit1 EVENT_GOT_ODD_EGG
iftrue UnknownScript_0x62fbd
2writetext UnknownText_0x630ce
keeptextopen
@ -42,7 +42,7 @@ GrampsScript_0x62f8f: ; 0x62f8f
2writetext UnknownText_0x631c3
closetext
loadmovesprites
setbit1 $033e
setbit1 EVENT_GOT_ODD_EGG
end
; 0x62fb6

View File

@ -201,7 +201,7 @@ ElderScript_0x18d1a5: ; 0x18d1a5
iftrue UnknownScript_0x18d1ff
checkbit1 $00bd
iffalse UnknownScript_0x18d1c5
checkbit1 $0319
checkbit1 EVENT_BEAT_RIVAL_IN_MT_MOON
iftrue UnknownScript_0x18d1f3
2writetext UnknownText_0x18d724
closetext

View File

@ -23,7 +23,7 @@ UnknownScript_0x18c89e: ; 0x18c89e
; 0x18c89f
UnknownScript_0x18c89f: ; 0x18c89f
checkbit1 $0319
checkbit1 EVENT_BEAT_RIVAL_IN_MT_MOON
iftrue UnknownScript_0x18c8a8
disappear $4
return
@ -62,7 +62,7 @@ UnknownScript_0x18c8b8: ; 0x18c8b8
playsound $0001
waitbutton
itemnotify
setbit1 $000f
setbit1 EVENT_GOT_TM24_DRAGONBREATH
2writetext UnknownText_0x18ca0d
keeptextopen
2writetext UnknownText_0x18caf1

View File

@ -34,7 +34,7 @@ LassScript_0x1a4012: ; 0x1a4012
LassScript_0x1a4015: ; 0x1a4015
faceplayer
loadfont
checkbit1 $007b
checkbit1 EVENT_RELEASED_THE_BEASTS
iftrue UnknownScript_0x1a4023
2writetext UnknownText_0x1a421a
closetext
@ -52,7 +52,7 @@ UnknownScript_0x1a4023: ; 0x1a4023
FisherScript_0x1a4029: ; 0x1a4029
faceplayer
loadfont
checkbit1 $0020
checkbit1 EVENT_JASMINE_RETURNED_TO_GYM
iftrue UnknownScript_0x1a4037
2writetext UnknownText_0x1a42ac
closetext

View File

@ -22,7 +22,7 @@ UnknownScript_0x99d57: ; 0x99d57
MortyScript_0x99d58: ; 0x99d58
faceplayer
loadfont
checkbit1 $04c0
checkbit1 EVENT_BEAT_MORTY
iftrue UnknownScript_0x99d8c
2writetext UnknownText_0x99e65
closetext
@ -31,7 +31,7 @@ MortyScript_0x99d58: ; 0x99d58
loadtrainer MORTY, 1
startbattle
returnafterbattle
setbit1 $04c0
setbit1 EVENT_BEAT_MORTY
loadfont
2writetext UnknownText_0x9a043
playsound $009c
@ -43,17 +43,17 @@ MortyScript_0x99d58: ; 0x99d58
setbit1 $0766
setbit1 $0767
UnknownScript_0x99d8c: ; 0x99d8c
checkbit1 $000c
checkbit1 EVENT_GOT_TM30_SHADOW_BALL
iftrue UnknownScript_0x99db1
setbit1 $0415
setbit1 $0416
setbit1 $058b
setbit1 $058c
setbit1 EVENT_BEAT_SAGE_JEFFREY
setbit1 EVENT_BEAT_SAGE_PING
setbit1 EVENT_BEAT_MEDIUM_MARTHA
setbit1 EVENT_BEAT_MEDIUM_GRACE
2writetext UnknownText_0x9a059
keeptextopen
verbosegiveitem TM_30, 1
iffalse UnknownScript_0x99db5
setbit1 $000c
setbit1 EVENT_GOT_TM30_SHADOW_BALL
2writetext UnknownText_0x9a0ec
closetext
loadmovesprites
@ -218,7 +218,7 @@ MediumGraceScript: ; 0x99e31
EcruteakGymGuyScript: ; 0x99e39
faceplayer
loadfont
checkbit1 $04c0
checkbit1 EVENT_BEAT_MORTY
iftrue .EcruteakGymGuyWinScript
2writetext EcruteakGymGuyText
closetext

View File

@ -23,11 +23,11 @@ UnknownScript_0x9800e: ; 0x9800e
; 0x9800f
UnknownScript_0x9800f: ; 0x9800f
checkbit1 $0335
checkbit1 EVENT_FOUGHT_SUICUNE
iftrue UnknownScript_0x98033
checkbit1 $0334
checkbit1 EVENT_KOJI_ALLOWS_YOU_PASSAGE_TO_TIN_TOWER
iftrue UnknownScript_0x98033
checkbit1 $0021
checkbit1 EVENT_CLEARED_RADIO_TOWER
iftrue UnknownScript_0x98022
return
; 0x98022
@ -77,7 +77,7 @@ UnknownScript_0x98061: ; 0x98061
SageScript_0x98062: ; 0x98062
faceplayer
loadfont
checkbit1 $0021
checkbit1 EVENT_CLEARED_RADIO_TOWER
iftrue UnknownScript_0x9807c
checkbit2 $001e
iftrue UnknownScript_0x98076
@ -95,7 +95,7 @@ UnknownScript_0x98076: ; 0x98076
; 0x9807c
UnknownScript_0x9807c: ; 0x9807c
checkbit1 $0334
checkbit1 EVENT_KOJI_ALLOWS_YOU_PASSAGE_TO_TIN_TOWER
iftrue UnknownScript_0x980a4
checkbit1 $0000
iftrue UnknownScript_0x980aa
@ -135,7 +135,7 @@ UnknownScript_0x980aa: ; 0x980aa
SageScript_0x980b0: ; 0x980b0
faceplayer
loadfont
checkbit1 $0078
checkbit1 EVENT_GOT_CLEAR_BELL
iftrue UnknownScript_0x980be
2writetext UnknownText_0x9840b
closetext

View File

@ -9,7 +9,7 @@ EcruteakItemfinderHouse_MapScriptHeader: ; 0x9a5f9
CooltrainerMScript_0x9a5fb: ; 0x9a5fb
faceplayer
loadfont
checkbit1 $005a
checkbit1 EVENT_GOT_ITEMFINDER
iftrue UnknownScript_0x9a614
2writetext UnknownText_0x9a63c
yesorno
@ -17,7 +17,7 @@ CooltrainerMScript_0x9a5fb: ; 0x9a5fb
2writetext UnknownText_0x9a6b5
keeptextopen
verbosegiveitem ITEMFINDER, 1
setbit1 $005a
setbit1 EVENT_GOT_ITEMFINDER
UnknownScript_0x9a614: ; 0x9a614
2writetext UnknownText_0x9a70e
closetext

View File

@ -98,21 +98,21 @@ UnknownScript_0x78ba5: ; 0x78ba5
ProfElmScript: ; 0x78be0
faceplayer
loadfont
checkbit1 $0024
checkbit1 EVENT_GOT_SS_TICKET_FROM_ELM
iftrue UnknownScript_0x78bee
checkbit1 $0044
iftrue ElmGiveTicketScript
UnknownScript_0x78bee: ; 0x78bee
checkbit1 $007c
checkbit1 EVENT_GOT_MASTER_BALL_FROM_ELM
iftrue UnknownScript_0x78bfa
checkbit2 $0022
iftrue ElmGiveMasterBallScript
UnknownScript_0x78bfa: ; 0x78bfa
checkbit1 $0056
checkbit1 EVENT_GOT_EVERSTONE_FROM_ELM
iftrue UnknownScript_0x78e16
checkbit1 $0055
checkbit1 EVENT_SHOWED_TOGEPI_TO_ELM
iftrue UnknownScript_0x78e03
checkbit1 $0077
checkbit1 EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE
iffalse UnknownScript_0x78c35
writebyte TOGEPI
special $0043
@ -137,20 +137,20 @@ UnknownScript_0x78c22: ; 0x78c22
; 0x78c35
UnknownScript_0x78c35: ; 0x78c35
checkbit1 $002d
checkbit1 EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
iffalse UnknownScript_0x78c41
checkbit1 $0054
checkbit1 EVENT_TOGEPI_HATCHED
iftrue UnknownScript_0x78c22
UnknownScript_0x78c41: ; 0x78c41
checkbit1 $002d ; why are we checking it again?
checkbit1 EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE ; why are we checking it again?
iftrue ElmWaitingEggHatchScript
checkbit2 $001b
iftrue ElmAideHasEggScript
checkbit1 $001f
checkbit1 EVENT_GAVE_MYSTERY_EGG_TO_ELM
iftrue ElmStudyingEggScript
checkbit1 $001e
checkbit1 EVENT_GOT_MYSTERY_EGG_FROM_MR_POKEMON
iftrue ElmAfterTheftScript
checkbit1 $001a
checkbit1 EVENT_GOT_A_POKEMON_FROM_ELM
iftrue ElmDescribesMrPokemonScript
2writetext UnknownText_0x79375
closetext
@ -169,7 +169,7 @@ LabTryToLeaveScript: ; 0x78c65
; 0x78c73
CyndaquilPokeBallScript: ; 0x78c73
checkbit1 $001a
checkbit1 EVENT_GOT_A_POKEMON_FROM_ELM
iftrue LookAtElmPokeBallScript
spriteface $2, $0
refreshscreen $0
@ -182,7 +182,7 @@ CyndaquilPokeBallScript: ; 0x78c73
yesorno
iffalse DidntChooseStarterScript
disappear $4
setbit1 $001b
setbit1 EVENT_GOT_CYNDAQUIL_FROM_ELM
2writetext ChoseStarterText
keeptextopen
waitbutton
@ -200,7 +200,7 @@ CyndaquilPokeBallScript: ; 0x78c73
; 0x78cb5
TotodilePokeBallScript: ; 0x78cb5
checkbit1 $001a
checkbit1 EVENT_GOT_A_POKEMON_FROM_ELM
iftrue LookAtElmPokeBallScript
spriteface $2, $0
refreshscreen $0
@ -213,7 +213,7 @@ TotodilePokeBallScript: ; 0x78cb5
yesorno
iffalse DidntChooseStarterScript
disappear $5
setbit1 $001c
setbit1 EVENT_GOT_TOTODILE_FROM_ELM
2writetext ChoseStarterText
keeptextopen
waitbutton
@ -229,7 +229,7 @@ TotodilePokeBallScript: ; 0x78cb5
; 0x78cf1
ChikoritaPokeBallScript: ; 0x78cf1
checkbit1 $001a
checkbit1 EVENT_GOT_A_POKEMON_FROM_ELM
iftrue LookAtElmPokeBallScript
spriteface $2, $0
refreshscreen $0
@ -242,7 +242,7 @@ ChikoritaPokeBallScript: ; 0x78cf1
yesorno
iffalse DidntChooseStarterScript
disappear $6
setbit1 $001d
setbit1 EVENT_GOT_CHIKORITA_FROM_ELM
2writetext ChoseStarterText
keeptextopen
waitbutton
@ -287,7 +287,7 @@ ElmDirectionsScript: ; 0x78d33
2writetext ElmDirectionsText3
closetext
loadmovesprites
setbit1 $001a
setbit1 EVENT_GOT_A_POKEMON_FROM_ELM
setbit1 $06be
dotrigger $5
domaptrigger GROUP_NEW_BARK_TOWN, MAP_NEW_BARK_TOWN, $1
@ -311,7 +311,7 @@ LookAtElmPokeBallScript: ; 0x78d6d
MapElmsLabSignpost0Script: ; 0x78d74
loadfont
checkbit1 $001a
checkbit1 EVENT_GOT_A_POKEMON_FROM_ELM
iftrue UnknownScript_0x78d81
2writetext UnknownText_0x79690
closetext
@ -361,7 +361,7 @@ ElmAfterTheftScript: ; 0x78da2
keeptextopen
2writetext ElmAfterTheftText5
keeptextopen
setbit1 $001f
setbit1 EVENT_GAVE_MYSTERY_EGG_TO_ELM
setbit2 $0010
domaptrigger GROUP_ROUTE_29, MAP_ROUTE_29, $1
clearbit1 $0715
@ -399,7 +399,7 @@ ShowElmTogepiScript: ; 0x78dee
closetext
loadmovesprites
showemote $0, $2, 15
setbit1 $0055
setbit1 EVENT_SHOWED_TOGEPI_TO_ELM
loadfont
2writetext ShowElmTogepiText2
keeptextopen
@ -413,7 +413,7 @@ UnknownScript_0x78e03: ; 0x78e03
2writetext ElmGiveEverstoneText2
closetext
loadmovesprites
setbit1 $0056
setbit1 EVENT_GOT_EVERSTONE_FROM_ELM
end
; 0x78e16
@ -430,7 +430,7 @@ ElmGiveMasterBallScript: ; 0x78e1c
keeptextopen
verbosegiveitem MASTER_BALL, 1
iffalse .notdone
setbit1 $007c
setbit1 EVENT_GOT_MASTER_BALL_FROM_ELM
2writetext ElmGiveMasterBallText2
closetext
.notdone
@ -442,7 +442,7 @@ ElmGiveTicketScript: ; 0x78e2f
2writetext ElmGiveTicketText1
keeptextopen
verbosegiveitem S_S_TICKET, 1
setbit1 $0024
setbit1 EVENT_GOT_SS_TICKET_FROM_ELM
2writetext ElmGiveTicketText2
closetext
loadmovesprites
@ -560,11 +560,11 @@ UnknownScript_0x78ee2: ; 0x78ee2
ElmsAideScript: ; 0x78ee6
faceplayer
loadfont
checkbit1 $002d
checkbit1 EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
iftrue UnknownScript_0x78f0c
checkbit1 $001f
checkbit1 EVENT_GAVE_MYSTERY_EGG_TO_ELM
iftrue UnknownScript_0x78f06
checkbit1 $001e
checkbit1 EVENT_GOT_MYSTERY_EGG_FROM_MR_POKEMON
iftrue UnknownScript_0x78f00
2writetext UnknownText_0x79f65
closetext
@ -617,7 +617,7 @@ MapElmsLabSignpost14Script: ; 0x78f33
loadfont
checkbit2 $0043
iftrue UnknownScript_0x78f49
checkbit1 $0043
checkbit1 EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON
iftrue UnknownScript_0x78f43
2jump UnknownScript_0x78f49
; 0x78f43

View File

@ -80,7 +80,7 @@ UnknownScript_0x75f09: ; 0x75f09
GentlemanScript_0x75f1f: ; 0x75f1f
faceplayer
loadfont
checkbit1 $0071
checkbit1 EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA
iftrue UnknownScript_0x75f67
checkbit1 $0732
iftrue UnknownScript_0x75f58
@ -96,7 +96,7 @@ UnknownScript_0x75f37: ; 0x75f37
keeptextopen
verbosegiveitem METAL_COAT, 1
iffalse UnknownScript_0x75f44
setbit1 $0071
setbit1 EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA
UnknownScript_0x75f44: ; 0x75f44
loadmovesprites
waitbutton
@ -116,7 +116,7 @@ UnknownScript_0x75f58: ; 0x75f58
keeptextopen
verbosegiveitem METAL_COAT, 1
iffalse UnknownScript_0x75f65
setbit1 $0071
setbit1 EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA
UnknownScript_0x75f65: ; 0x75f65
loadmovesprites
end

View File

@ -80,7 +80,7 @@ UnknownScript_0x75f09: ; 0x75f09
GentlemanScript_0x75f1f: ; 0x75f1f
faceplayer
loadfont
checkbit1 $0071
checkbit1 EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA
iftrue UnknownScript_0x75f67
checkbit1 $0732
iftrue UnknownScript_0x75f58
@ -96,7 +96,7 @@ UnknownScript_0x75f37: ; 0x75f37
keeptextopen
verbosegiveitem METAL_COAT, 1
iffalse UnknownScript_0x75f44
setbit1 $0071
setbit1 EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA
UnknownScript_0x75f44: ; 0x75f44
loadmovesprites
waitbutton
@ -116,7 +116,7 @@ UnknownScript_0x75f58: ; 0x75f58
keeptextopen
verbosegiveitem METAL_COAT, 1
iffalse UnknownScript_0x75f65
setbit1 $0071
setbit1 EVENT_GOT_METAL_COAT_FROM_GRANDPA_ON_SS_AQUA
UnknownScript_0x75f65: ; 0x75f65
loadmovesprites
end

View File

@ -19,7 +19,7 @@ JanineScript_0x195db9: ; 0x195db9
loadtrainer JANINE, 1
startbattle
returnafterbattle
setbit1 $04c9
setbit1 EVENT_BEAT_JANINE
setbit1 $0517
setbit1 $051a
setbit1 $0482
@ -41,13 +41,13 @@ UnknownScript_0x195e00: ; 0x195e00
faceplayer
loadfont
UnknownScript_0x195e02: ; 0x195e02
checkbit1 $00dd
checkbit1 EVENT_GOT_TM06_TOXIC
iftrue UnknownScript_0x195e15
2writetext UnknownText_0x196002
keeptextopen
verbosegiveitem TM_06, 1
iffalse UnknownScript_0x195e15
setbit1 $00dd
setbit1 EVENT_GOT_TM06_TOXIC
UnknownScript_0x195e15: ; 0x195e15
2writetext UnknownText_0x196074
closetext
@ -206,7 +206,7 @@ UnknownScript_0x195efd: ; 0x195efd
FuchsiaGymGuyScript: ; 0x195f03
faceplayer
loadfont
checkbit1 $04c9
checkbit1 EVENT_BEAT_JANINE
iftrue .FuchsiaGymGuyWinScript
2writetext FuchsiaGymGuyText
closetext

View File

@ -13,7 +13,7 @@ UnknownScript_0x5474f: ; 0x5474f
ClerkScript_0x54750: ; 0x54750
faceplayer
loadfont
checkbit1 $005b
checkbit1 EVENT_GOT_BICYCLE
iftrue UnknownScript_0x54775
2writetext UnknownText_0x54787
yesorno
@ -27,7 +27,7 @@ ClerkScript_0x54750: ; 0x54750
waitbutton
itemnotify
setbit2 $0014
setbit1 $005b
setbit1 EVENT_GOT_BICYCLE
UnknownScript_0x54775: ; 0x54775
2writetext UnknownText_0x5485f
closetext

Some files were not shown because too many files have changed in this diff Show More