mirror of
https://github.com/pret/pokered.git
synced 2024-10-22 22:55:31 +00:00
Merged and fixed incbin conflicts with Danny.
This commit is contained in:
commit
549fe35420
40 changed files with 14446 additions and 8362 deletions
18
.gitignore
vendored
18
.gitignore
vendored
|
@ -1,3 +1,6 @@
|
|||
# global label defs are generated
|
||||
globals.asm
|
||||
|
||||
# precompiled python
|
||||
*.pyc
|
||||
|
||||
|
@ -9,6 +12,11 @@
|
|||
|
||||
# roms
|
||||
*.gbc
|
||||
*.gb
|
||||
|
||||
# rgbds extras
|
||||
*.map
|
||||
*.sym
|
||||
|
||||
# generated
|
||||
*.tx
|
||||
|
@ -20,13 +28,9 @@
|
|||
*.json
|
||||
|
||||
# for any of the poor souls with save game files in their working directory
|
||||
baserom.sgm
|
||||
baserom.sav
|
||||
pokered.sgm
|
||||
pokered.sav
|
||||
|
||||
baserom.sys
|
||||
pokered.sys
|
||||
*.sgm
|
||||
*.sav
|
||||
*.sys
|
||||
|
||||
# for vim configuration
|
||||
# url: http://www.vim.org/scripts/script.php?script_id=441
|
||||
|
|
45
INSTALL.md
Normal file
45
INSTALL.md
Normal file
|
@ -0,0 +1,45 @@
|
|||
# Getting Started
|
||||
|
||||
A base rom of Pokémon Red is required to assemble **pokered.gbc**.
|
||||
|
||||
Pokemon Red (UE) [S][!].gb
|
||||
(MD5: 3d45c1ee9abd5738df46d2bdda8b57dc)
|
||||
|
||||
|
||||
# Linux
|
||||
|
||||
Linux dependencies. OSX users already have these after installing Xcode.
|
||||
|
||||
sudo apt-get install make gcc bison git python python-setuptools
|
||||
|
||||
|
||||
Set up the **pokered** repository:
|
||||
|
||||
git clone git://github.com/iimarckus/pokered.git
|
||||
cd pokered
|
||||
|
||||
./init.sh
|
||||
|
||||
Copy the Pokémon Red rom to this directory. Name it **baserom.gbc**.
|
||||
|
||||
Now **pokered.gbc** can be built from source.
|
||||
|
||||
make red
|
||||
|
||||
This should take about 10-15 seconds. Subsequent builds are faster.
|
||||
|
||||
|
||||
To build Pokémon Blue:
|
||||
|
||||
make blue
|
||||
|
||||
|
||||
# OSX
|
||||
|
||||
Download and install **Xcode**. Then follow the Linux instructions.
|
||||
|
||||
|
||||
# Windows
|
||||
|
||||
Not yet.
|
||||
|
69
Makefile
69
Makefile
|
@ -1,32 +1,65 @@
|
|||
PYTHON := python
|
||||
.SUFFIXES: .asm .tx .o .gbc
|
||||
.PHONY: all clean red blue
|
||||
.SECONDEXPANSION:
|
||||
|
||||
TEXTFILES := $(shell find ./ -type f -name '*.asm')
|
||||
|
||||
all: pokered.gbc
|
||||
TEXTQUEUE :=
|
||||
|
||||
pokered.o: pokered.tx main.tx constants.tx wram.tx ${TEXTFILES:.asm=.tx}
|
||||
rgbasm -o pokered.o pokered.tx
|
||||
|
||||
pokeblue.o: pokeblue.tx main.tx constants.tx wram.tx ${TEXTFILES:.asm=.tx}
|
||||
rgbasm -o pokeblue.o pokeblue.tx
|
||||
RED_OBJS := pokered.o
|
||||
BLUE_OBJS := pokeblue.o
|
||||
|
||||
OBJS := $(RED_OBJS) $(BLUE_OBJS)
|
||||
|
||||
ROMS := pokered.gbc pokeblue.gbc
|
||||
|
||||
# generate dependencies for each object
|
||||
$(shell $(foreach obj, $(OBJS), \
|
||||
$(eval $(obj:.o=)_DEPENDENCIES := $(shell $(PYTHON) extras/pokemontools/scan_includes.py $(obj:.o=.asm) | sed s/globals.asm//g)) \
|
||||
))
|
||||
$(shell $(foreach obj, $(OBJS), \
|
||||
$(eval ALL_DEPENDENCIES += $($(obj:.o=)_DEPENDENCIES)) \
|
||||
))
|
||||
|
||||
all: $(ROMS)
|
||||
red: pokered.gbc
|
||||
blue: pokeblue.gbc
|
||||
|
||||
redrle: extras/redtools/redrle.c
|
||||
${CC} -o $@ $>
|
||||
|
||||
.asm.tx:
|
||||
python textpre.py < $< > $@
|
||||
clean:
|
||||
rm -f $(ROMS)
|
||||
rm -f $(OBJS)
|
||||
rm -f globals.asm
|
||||
@echo "removing *.tx" && find . -iname '*.tx' -exec rm {} +
|
||||
rm -f redrle
|
||||
|
||||
pokered.gbc: pokered.o
|
||||
rgblink -o $@ $*.o
|
||||
|
||||
baserom.gbc: ;
|
||||
@echo "Wait! Need baserom.gbc first. Check README and INSTALL for details." && false
|
||||
|
||||
%.asm: ;
|
||||
.asm.tx:
|
||||
$(eval TEXTQUEUE := $(TEXTQUEUE) $<)
|
||||
@rm -f $@
|
||||
|
||||
globals.asm: $(ALL_DEPENDENCIES:.asm=.tx) $(OBJS:.o=.tx)
|
||||
@touch $@
|
||||
@$(PYTHON) prequeue.py $(TEXTQUEUE)
|
||||
globals.tx: globals.asm
|
||||
@cp $< $@
|
||||
|
||||
$(OBJS): $$*.tx $$(patsubst %.asm, %.tx, $$($$*_DEPENDENCIES))
|
||||
rgbasm -o $@ $*.tx
|
||||
|
||||
pokered.gbc: globals.tx $(RED_OBJS)
|
||||
rgblink -n $*.sym -m $*.map -o $@ $(RED_OBJS)
|
||||
rgbfix -jsv -k 01 -l 0x33 -m 0x13 -p 0 -r 03 -t "POKEMON RED" $@
|
||||
cmp baserom.gbc $@
|
||||
|
||||
pokeblue.gbc: pokeblue.o
|
||||
rgblink -o $@ $*.o
|
||||
|
||||
pokeblue.gbc: globals.tx $(BLUE_OBJS)
|
||||
rgblink -n $*.sym -m $*.map -o $@ $(BLUE_OBJS)
|
||||
rgbfix -jsv -k 01 -l 0x33 -m 0x13 -p 0 -r 03 -t "POKEMON BLUE" $@
|
||||
cmp blue.gbc $@
|
||||
|
||||
clean:
|
||||
rm -f pokered.o pokered.gbc pokeblue.o pokeblue.gbc redrle $(TEXTFILES:.asm=.tx)
|
||||
|
||||
more: pokered.gbc pokeblue.gbc
|
||||
|
|
19
README
19
README
|
@ -1,19 +0,0 @@
|
|||
This is a disassembly of Pokémon Red.
|
||||
|
||||
It uses the following ROM as a base:
|
||||
Pokemon Red (UE) [S][!].gb
|
||||
(MD5: 3d45c1ee9abd5738df46d2bdda8b57dc)
|
||||
|
||||
To assemble, first install RGBDS and put it in your path.
|
||||
|
||||
The version of RGBDS needed is rgbds-linux:
|
||||
https://github.com/bentley/rgbds/
|
||||
git://github.com/bentley/rgbds.git
|
||||
|
||||
Then copy the Pokémon ROM to this directory as "baserom.gbc".
|
||||
Then run "make" in your shell.
|
||||
|
||||
This will output a file named "pokered.gbc".
|
||||
|
||||
Our IRC channel is located here:
|
||||
server nucleus.kafuka.org, channel #skeetendo
|
18
README.md
Normal file
18
README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Pokémon Red
|
||||
|
||||
This is a disassembly of Pokémon Red.
|
||||
|
||||
It uses the following ROM as a base:
|
||||
|
||||
Pokemon Red (UE) [S][!].gb
|
||||
(MD5: 3d45c1ee9abd5738df46d2bdda8b57dc)
|
||||
|
||||
To set up the repository, see [**INSTALL.md**](INSTALL.md).
|
||||
|
||||
|
||||
## See also
|
||||
|
||||
* Disassembly of [**Pokémon Crystal**](https://github.com/kanzure/pokecrystal)
|
||||
|
||||
* irc: **nucleus.kafuka.org** [**#skeetendo**](https://kiwiirc.com/client/irc.nolimitzone.com/?#skeetendo)
|
||||
|
3551
constants.asm
3551
constants.asm
File diff suppressed because it is too large
Load diff
5
constants/connection_constants.asm
Executable file
5
constants/connection_constants.asm
Executable file
|
@ -0,0 +1,5 @@
|
|||
; connection directions
|
||||
EAST EQU 1
|
||||
WEST EQU 2
|
||||
SOUTH EQU 4
|
||||
NORTH EQU 8
|
4
constants/evolution_constants.asm
Executable file
4
constants/evolution_constants.asm
Executable file
|
@ -0,0 +1,4 @@
|
|||
; Evolution types
|
||||
EV_LEVEL EQU 1
|
||||
EV_ITEM EQU 2
|
||||
EV_TRADE EQU 3
|
21
constants/hardware_constants.asm
Executable file
21
constants/hardware_constants.asm
Executable file
|
@ -0,0 +1,21 @@
|
|||
; hardware registers, from the pandocs http://nocash.emubase.de/pandocs.htm
|
||||
rJOYP EQU $FF00
|
||||
rDIV EQU $FF04
|
||||
rLCDC EQU $FF40
|
||||
rSCY EQU $FF42
|
||||
rSCX EQU $FF43
|
||||
rBGP EQU $FF47
|
||||
rOBP0 EQU $FF48
|
||||
rOBP1 EQU $FF49
|
||||
rWY EQU $FF4A
|
||||
rWX EQU $FF4B
|
||||
rIE EQU $FFFF
|
||||
|
||||
BTN_A EQU %00000001
|
||||
BTN_B EQU %00000010
|
||||
BTN_SELECT EQU %00000100
|
||||
BTN_START EQU %00001000
|
||||
BTN_RIGHT EQU %00010000
|
||||
BTN_LEFT EQU %00100000
|
||||
BTN_UP EQU %01000000
|
||||
BTN_DOWN EQU %10000000
|
139
constants/item_constants.asm
Normal file
139
constants/item_constants.asm
Normal file
|
@ -0,0 +1,139 @@
|
|||
MASTER_BALL EQU $01
|
||||
ULTRA_BALL EQU $02
|
||||
GREAT_BALL EQU $03
|
||||
POKE_BALL EQU $04
|
||||
TOWN_MAP EQU $05
|
||||
BICYCLE EQU $06
|
||||
SURFBOARD EQU $07 ; buggy?
|
||||
SAFARI_BALL EQU $08
|
||||
POKEDEX EQU $09
|
||||
MOON_STONE EQU $0A
|
||||
ANTIDOTE EQU $0B
|
||||
BURN_HEAL EQU $0C
|
||||
ICE_HEAL EQU $0D
|
||||
AWAKENING EQU $0E
|
||||
PARLYZ_HEAL EQU $0F
|
||||
FULL_RESTORE EQU $10
|
||||
MAX_POTION EQU $11
|
||||
HYPER_POTION EQU $12
|
||||
SUPER_POTION EQU $13
|
||||
POTION EQU $14
|
||||
BOULDERBADGE EQU $15
|
||||
CASCADEBADGE EQU $16
|
||||
THUNDERBADGE EQU $17
|
||||
RAINBOWBADGE EQU $18
|
||||
SOULBADGE EQU $19
|
||||
MARSHBADGE EQU $1A
|
||||
VOLCANOBADGE EQU $1B
|
||||
EARTHBADGE EQU $1C
|
||||
ESCAPE_ROPE EQU $1D
|
||||
REPEL EQU $1E
|
||||
OLD_AMBER EQU $1F
|
||||
FIRE_STONE EQU $20
|
||||
THUNDER_STONE EQU $21
|
||||
WATER_STONE EQU $22
|
||||
HP_UP EQU $23
|
||||
PROTEIN EQU $24
|
||||
IRON EQU $25
|
||||
CARBOS EQU $26
|
||||
CALCIUM EQU $27
|
||||
RARE_CANDY EQU $28
|
||||
DOME_FOSSIL EQU $29
|
||||
HELIX_FOSSIL EQU $2A
|
||||
SECRET_KEY EQU $2B
|
||||
; XXX ????? EQU $2C
|
||||
BIKE_VOUCHER EQU $2D
|
||||
X_ACCURACY EQU $2E
|
||||
LEAF_STONE EQU $2F
|
||||
CARD_KEY EQU $30
|
||||
NUGGET EQU $31
|
||||
;PP_UP EQU $32
|
||||
POKE_DOLL EQU $33
|
||||
FULL_HEAL EQU $34
|
||||
REVIVE EQU $35
|
||||
MAX_REVIVE EQU $36
|
||||
GUARD_SPEC_ EQU $37
|
||||
SUPER_REPEL EQU $38
|
||||
MAX_REPEL EQU $39
|
||||
DIRE_HIT EQU $3A
|
||||
COIN EQU $3B
|
||||
FRESH_WATER EQU $3C
|
||||
SODA_POP EQU $3D
|
||||
LEMONADE EQU $3E
|
||||
S_S__TICKET EQU $3F
|
||||
GOLD_TEETH EQU $40
|
||||
X_ATTACK EQU $41
|
||||
X_DEFEND EQU $42
|
||||
X_SPEED EQU $43
|
||||
X_SPECIAL EQU $44
|
||||
COIN_CASE EQU $45
|
||||
OAKS_PARCEL EQU $46
|
||||
ITEMFINDER EQU $47
|
||||
SILPH_SCOPE EQU $48
|
||||
POKE_FLUTE EQU $49
|
||||
LIFT_KEY EQU $4A
|
||||
EXP__ALL EQU $4B
|
||||
OLD_ROD EQU $4C
|
||||
GOOD_ROD EQU $4D
|
||||
SUPER_ROD EQU $4E
|
||||
; XXX todo: compare this to $32
|
||||
PP_UP EQU $4F
|
||||
ETHER EQU $50
|
||||
MAX_ETHER EQU $51
|
||||
ELIXER EQU $52
|
||||
MAX_ELIXER EQU $53
|
||||
HM_01 EQU $C4
|
||||
HM_02 EQU $C5
|
||||
HM_03 EQU $C6
|
||||
HM_04 EQU $C7
|
||||
HM_05 EQU $C8
|
||||
TM_01 EQU $C9
|
||||
TM_02 EQU $CA
|
||||
TM_03 EQU $CB
|
||||
TM_04 EQU $CC
|
||||
TM_05 EQU $CD
|
||||
TM_06 EQU $CE
|
||||
TM_07 EQU $CF
|
||||
TM_08 EQU $D0
|
||||
TM_09 EQU $D1
|
||||
TM_10 EQU $D2
|
||||
TM_11 EQU $D3
|
||||
TM_12 EQU $D4
|
||||
TM_13 EQU $D5
|
||||
TM_14 EQU $D6
|
||||
TM_15 EQU $D7
|
||||
TM_16 EQU $D8
|
||||
TM_17 EQU $D9
|
||||
TM_18 EQU $DA
|
||||
TM_19 EQU $DB
|
||||
TM_20 EQU $DC
|
||||
TM_21 EQU $DD
|
||||
TM_22 EQU $DE
|
||||
TM_23 EQU $DF
|
||||
TM_24 EQU $E0
|
||||
TM_25 EQU $E1
|
||||
TM_26 EQU $E2
|
||||
TM_27 EQU $E3
|
||||
TM_28 EQU $E4
|
||||
TM_29 EQU $E5
|
||||
TM_30 EQU $E6
|
||||
TM_31 EQU $E7
|
||||
TM_32 EQU $E8
|
||||
TM_33 EQU $E9
|
||||
TM_34 EQU $EA
|
||||
TM_35 EQU $EB
|
||||
TM_36 EQU $EC
|
||||
TM_37 EQU $ED
|
||||
TM_38 EQU $EE
|
||||
TM_39 EQU $EF
|
||||
TM_40 EQU $F0
|
||||
TM_41 EQU $F1
|
||||
TM_42 EQU $F2
|
||||
TM_43 EQU $F3
|
||||
TM_44 EQU $F4
|
||||
TM_45 EQU $F5
|
||||
TM_46 EQU $F6
|
||||
TM_47 EQU $F7
|
||||
TM_48 EQU $F8
|
||||
TM_49 EQU $F9
|
||||
TM_50 EQU $FA
|
14
constants/list_constants.asm
Executable file
14
constants/list_constants.asm
Executable file
|
@ -0,0 +1,14 @@
|
|||
; list menu ID's
|
||||
PCPOKEMONLISTMENU EQU $00 ; PC pokemon withdraw/deposit lists
|
||||
MOVESLISTMENU EQU $01 ; XXX where is this used?
|
||||
PRICEDITEMLISTMENU EQU $02 ; Pokemart buy menu / Pokemart buy/sell choose quantity menu
|
||||
ITEMLISTMENU EQU $03 ; Start menu Item menu / Pokemart sell menu
|
||||
SPECIALLISTMENU EQU $04 ; list of special "items" e.g. floor list in elevators / list of badges
|
||||
|
||||
MONSTER_NAME EQU 1
|
||||
MOVE_NAME EQU 2
|
||||
; ???_NAME EQU 3
|
||||
ITEM_NAME EQU 4
|
||||
PLAYEROT_NAME EQU 5
|
||||
ENEMYOT_NAME EQU 6
|
||||
TRAINER_NAME EQU 7
|
249
constants/map_constants.asm
Normal file
249
constants/map_constants.asm
Normal file
|
@ -0,0 +1,249 @@
|
|||
PALLET_TOWN EQU $00
|
||||
VIRIDIAN_CITY EQU $01
|
||||
PEWTER_CITY EQU $02
|
||||
CERULEAN_CITY EQU $03
|
||||
LAVENDER_TOWN EQU $04
|
||||
VERMILION_CITY EQU $05
|
||||
CELADON_CITY EQU $06
|
||||
FUCHSIA_CITY EQU $07
|
||||
CINNABAR_ISLAND EQU $08
|
||||
INDIGO_PLATEAU EQU $09
|
||||
SAFFRON_CITY EQU $0A
|
||||
; unused EQU $0B
|
||||
ROUTE_1 EQU $0C
|
||||
ROUTE_2 EQU $0D
|
||||
ROUTE_3 EQU $0E
|
||||
ROUTE_4 EQU $0F
|
||||
ROUTE_5 EQU $10
|
||||
ROUTE_6 EQU $11
|
||||
ROUTE_7 EQU $12
|
||||
ROUTE_8 EQU $13
|
||||
ROUTE_9 EQU $14
|
||||
ROUTE_10 EQU $15
|
||||
ROUTE_11 EQU $16
|
||||
ROUTE_12 EQU $17
|
||||
ROUTE_13 EQU $18
|
||||
ROUTE_14 EQU $19
|
||||
ROUTE_15 EQU $1A
|
||||
ROUTE_16 EQU $1B
|
||||
ROUTE_17 EQU $1C
|
||||
ROUTE_18 EQU $1D
|
||||
ROUTE_19 EQU $1E
|
||||
ROUTE_20 EQU $1F
|
||||
ROUTE_21 EQU $20
|
||||
ROUTE_22 EQU $21
|
||||
ROUTE_23 EQU $22
|
||||
ROUTE_24 EQU $23
|
||||
ROUTE_25 EQU $24
|
||||
REDS_HOUSE_1F EQU $25
|
||||
REDS_HOUSE_2F EQU $26
|
||||
BLUES_HOUSE EQU $27
|
||||
OAKS_LAB EQU $28
|
||||
VIRIDIAN_POKECENTER EQU $29
|
||||
VIRIDIAN_MART EQU $2A
|
||||
VIRIDIAN_SCHOOL EQU $2B
|
||||
VIRIDIAN_HOUSE EQU $2C
|
||||
VIRIDIAN_GYM EQU $2D
|
||||
DIGLETTS_CAVE_EXIT EQU $2E
|
||||
VIRIDIAN_FOREST_EXIT EQU $2F
|
||||
ROUTE_2_HOUSE EQU $30
|
||||
ROUTE_2_GATE EQU $31
|
||||
VIRIDIAN_FOREST_ENTRANCE EQU $32
|
||||
VIRIDIAN_FOREST EQU $33
|
||||
MUSEUM_1F EQU $34
|
||||
MUSEUM_2F EQU $35
|
||||
PEWTER_GYM EQU $36
|
||||
PEWTER_HOUSE_1 EQU $37
|
||||
PEWTER_MART EQU $38
|
||||
PEWTER_HOUSE_2 EQU $39
|
||||
PEWTER_POKECENTER EQU $3A
|
||||
MT_MOON_1 EQU $3B
|
||||
MT_MOON_2 EQU $3C
|
||||
MT_MOON_3 EQU $3D
|
||||
TRASHED_HOUSE EQU $3E
|
||||
CERULEAN_HOUSE EQU $3F
|
||||
CERULEAN_POKECENTER EQU $40
|
||||
CERULEAN_GYM EQU $41
|
||||
BIKE_SHOP EQU $42
|
||||
CERULEAN_MART EQU $43
|
||||
MT_MOON_POKECENTER EQU $44
|
||||
;copy of TRASHED_HOUSE EQU $45
|
||||
ROUTE_5_GATE EQU $46
|
||||
PATH_ENTRANCE_ROUTE_5 EQU $47
|
||||
DAYCAREM EQU $48
|
||||
ROUTE_6_GATE EQU $49
|
||||
PATH_ENTRANCE_ROUTE_6 EQU $4A
|
||||
;copy of PATH_ENTRANCE_ROUTE_6 EQU $4B
|
||||
ROUTE_7_GATE EQU $4C
|
||||
PATH_ENTRANCE_ROUTE_7 EQU $4D
|
||||
;copy of PATH_ENTRANCE_ROUTE_7 EQU $4E
|
||||
ROUTE_8_GATE EQU $4F
|
||||
PATH_ENTRANCE_ROUTE_8 EQU $50
|
||||
ROCK_TUNNEL_POKECENTER EQU $51
|
||||
ROCK_TUNNEL_1 EQU $52
|
||||
POWER_PLANT EQU $53
|
||||
ROUTE_11_GATE_1F EQU $54
|
||||
DIGLETTS_CAVE_ENTRANCE EQU $55
|
||||
ROUTE_11_GATE_2F EQU $56
|
||||
ROUTE_12_GATE EQU $57
|
||||
BILLS_HOUSE EQU $58
|
||||
VERMILION_POKECENTER EQU $59
|
||||
POKEMON_FAN_CLUB EQU $5A
|
||||
VERMILION_MART EQU $5B
|
||||
VERMILION_GYM EQU $5C
|
||||
VERMILION_HOUSE_1 EQU $5D
|
||||
VERMILION_DOCK EQU $5E
|
||||
SS_ANNE_1 EQU $5F
|
||||
SS_ANNE_2 EQU $60
|
||||
SS_ANNE_3 EQU $61
|
||||
SS_ANNE_4 EQU $62
|
||||
SS_ANNE_5 EQU $63
|
||||
SS_ANNE_6 EQU $64
|
||||
SS_ANNE_7 EQU $65
|
||||
SS_ANNE_8 EQU $66
|
||||
SS_ANNE_9 EQU $67
|
||||
SS_ANNE_10 EQU $68
|
||||
;EQU $69
|
||||
;EQU $6A
|
||||
;EQU $6B
|
||||
VICTORY_ROAD_1 EQU $6C
|
||||
;EQU $6D
|
||||
;EQU $6E
|
||||
;EQU $6F
|
||||
;EQU $70
|
||||
LANCES_ROOM EQU $71
|
||||
;EQU $72
|
||||
;EQU $73
|
||||
;EQU $74
|
||||
;EQU $75
|
||||
HALL_OF_FAME EQU $76
|
||||
UNDERGROUND_PATH_NS EQU $77
|
||||
CHAMPIONS_ROOM EQU $78
|
||||
UNDERGROUND_PATH_WE EQU $79
|
||||
CELADON_MART_1 EQU $7A
|
||||
CELADON_MART_2 EQU $7B
|
||||
CELADON_MART_3 EQU $7C
|
||||
CELADON_MART_4 EQU $7D
|
||||
CELADON_MART_ROOF EQU $7E
|
||||
CELADON_MART_ELEVATOR EQU $7F
|
||||
CELADON_MANSION_1 EQU $80
|
||||
CELADON_MANSION_2 EQU $81
|
||||
CELADON_MANSION_3 EQU $82
|
||||
CELADON_MANSION_4 EQU $83
|
||||
CELADON_MANSION_5 EQU $84
|
||||
CELADON_POKECENTER EQU $85
|
||||
CELADON_GYM EQU $86
|
||||
GAME_CORNER EQU $87
|
||||
CELADON_MART_5 EQU $88
|
||||
CELADONPRIZE_ROOM EQU $89
|
||||
CELADON_DINER EQU $8A
|
||||
CELADON_HOUSE EQU $8B
|
||||
CELADON_HOTEL EQU $8C
|
||||
LAVENDER_POKECENTER EQU $8D
|
||||
POKEMONTOWER_1 EQU $8E
|
||||
POKEMONTOWER_2 EQU $8F
|
||||
POKEMONTOWER_3 EQU $90
|
||||
POKEMONTOWER_4 EQU $91
|
||||
POKEMONTOWER_5 EQU $92
|
||||
POKEMONTOWER_6 EQU $93
|
||||
POKEMONTOWER_7 EQU $94
|
||||
LAVENDER_HOUSE_1 EQU $95
|
||||
LAVENDER_MART EQU $96
|
||||
LAVENDER_HOUSE_2 EQU $97
|
||||
FUCHSIA_MART EQU $98
|
||||
FUCHSIA_HOUSE_1 EQU $99
|
||||
FUCHSIA_POKECENTER EQU $9A
|
||||
FUCHSIA_HOUSE_2 EQU $9B
|
||||
SAFARIZONEENTRANCE EQU $9C
|
||||
FUCHSIA_GYM EQU $9D
|
||||
FUCHSIAMEETINGROOM EQU $9E
|
||||
SEAFOAM_ISLANDS_2 EQU $9F
|
||||
SEAFOAM_ISLANDS_3 EQU $A0
|
||||
SEAFOAM_ISLANDS_4 EQU $A1
|
||||
SEAFOAM_ISLANDS_5 EQU $A2
|
||||
VERMILION_HOUSE_2 EQU $A3
|
||||
FUCHSIA_HOUSE_3 EQU $A4
|
||||
MANSION_1 EQU $A5
|
||||
CINNABAR_GYM EQU $A6
|
||||
CINNABAR_LAB_1 EQU $A7
|
||||
CINNABAR_LAB_2 EQU $A8
|
||||
CINNABAR_LAB_3 EQU $A9
|
||||
CINNABAR_LAB_4 EQU $AA
|
||||
CINNABAR_POKECENTER EQU $AB
|
||||
CINNABAR_MART EQU $AC
|
||||
;copy of CINNABAR_MART EQU $AD
|
||||
INDIGO_PLATEAU_LOBBY EQU $AE
|
||||
COPYCATS_HOUSE_1F EQU $AF
|
||||
COPYCATS_HOUSE_2F EQU $B0
|
||||
FIGHTINGDOJO EQU $B1
|
||||
SAFFRON_GYM EQU $B2
|
||||
SAFFRON_HOUSE_1 EQU $B3
|
||||
SAFFRON_MART EQU $B4
|
||||
SILPH_CO_1F EQU $B5
|
||||
SAFFRON_POKECENTER EQU $B6
|
||||
SAFFRON_HOUSE_2 EQU $B7
|
||||
ROUTE_15_GATE_1F EQU $B8
|
||||
ROUTE_15_GATE_2F EQU $B9
|
||||
ROUTE_16_GATE_1F EQU $BA
|
||||
ROUTE_16_GATE_2F EQU $BB
|
||||
ROUTE_16_HOUSE EQU $BC
|
||||
ROUTE_12_HOUSE EQU $BD
|
||||
ROUTE_18_GATE_1F EQU $BE
|
||||
ROUTE_18_GATE_2F EQU $BF
|
||||
SEAFOAM_ISLANDS_1 EQU $C0
|
||||
ROUTE_22_GATE EQU $C1
|
||||
VICTORY_ROAD_2 EQU $C2
|
||||
ROUTE_12_GATE_2F EQU $C3
|
||||
VERMILION_HOUSE_3 EQU $C4
|
||||
DIGLETTS_CAVE EQU $C5
|
||||
VICTORY_ROAD_3 EQU $C6
|
||||
ROCKET_HIDEOUT_1 EQU $C7
|
||||
ROCKET_HIDEOUT_2 EQU $C8
|
||||
ROCKET_HIDEOUT_3 EQU $C9
|
||||
ROCKET_HIDEOUT_4 EQU $CA
|
||||
ROCKET_HIDEOUT_ELEVATOR EQU $CB
|
||||
;EQU $CC
|
||||
;EQU $CD
|
||||
;EQU $CE
|
||||
SILPH_CO_2F EQU $CF
|
||||
SILPH_CO_3F EQU $D0
|
||||
SILPH_CO_4F EQU $D1
|
||||
SILPH_CO_5F EQU $D2
|
||||
SILPH_CO_6F EQU $D3
|
||||
SILPH_CO_7F EQU $D4
|
||||
SILPH_CO_8F EQU $D5
|
||||
MANSION_2 EQU $D6
|
||||
MANSION_3 EQU $D7
|
||||
MANSION_4 EQU $D8
|
||||
SAFARI_ZONE_EAST EQU $D9
|
||||
SAFARI_ZONE_NORTH EQU $DA
|
||||
SAFARI_ZONE_WEST EQU $DB
|
||||
SAFARI_ZONE_CENTER EQU $DC
|
||||
SAFARI_ZONE_REST_HOUSE_1 EQU $DD
|
||||
SAFARI_ZONE_SECRET_HOUSE EQU $DE
|
||||
SAFARI_ZONE_REST_HOUSE_2 EQU $DF
|
||||
SAFARI_ZONE_REST_HOUSE_3 EQU $E0
|
||||
SAFARI_ZONE_REST_HOUSE_4 EQU $E1
|
||||
UNKNOWN_DUNGEON_2 EQU $E2
|
||||
UNKNOWN_DUNGEON_3 EQU $E3
|
||||
UNKNOWN_DUNGEON_1 EQU $E4
|
||||
NAME_RATERS_HOUSE EQU $E5
|
||||
CERULEAN_HOUSE_3 EQU $E6
|
||||
;EQU $E7
|
||||
ROCK_TUNNEL_2 EQU $E8
|
||||
SILPH_CO_9F EQU $E9
|
||||
SILPH_CO_10F EQU $EA
|
||||
SILPH_CO_11F EQU $EB
|
||||
SILPH_CO_ELEVATOR EQU $EC
|
||||
;EQU $ED
|
||||
;EQU $EE
|
||||
BATTLE_CENTER EQU $EF
|
||||
TRADE_CENTER EQU $F0
|
||||
;EQU $F1
|
||||
;EQU $F2
|
||||
;EQU $F3
|
||||
;EQU $F4
|
||||
LORELEIS_ROOM EQU $F5
|
||||
BRUNOS_ROOM EQU $F6
|
||||
AGATHAS_ROOM EQU $F7
|
||||
BEACH_HOUSE EQU $F8 ; Yellow only
|
889
constants/map_dimensions.asm
Normal file
889
constants/map_dimensions.asm
Normal file
|
@ -0,0 +1,889 @@
|
|||
; Map sizes (y, x)
|
||||
|
||||
; PalletTown_h map_id=0
|
||||
PALLET_TOWN_HEIGHT EQU $09
|
||||
PALLET_TOWN_WIDTH EQU $0a
|
||||
|
||||
; ViridianCity_h map_id=1
|
||||
VIRIDIAN_CITY_HEIGHT EQU $12
|
||||
VIRIDIAN_CITY_WIDTH EQU $14
|
||||
|
||||
; PewterCity_h map_id=2
|
||||
PEWTER_CITY_HEIGHT EQU $12
|
||||
PEWTER_CITY_WIDTH EQU $14
|
||||
|
||||
; CeruleanCity_h map_id=3
|
||||
CERULEAN_CITY_HEIGHT EQU $12
|
||||
CERULEAN_CITY_WIDTH EQU $14
|
||||
|
||||
; LavenderTown_h map_id=4
|
||||
LAVENDER_TOWN_HEIGHT EQU $09
|
||||
LAVENDER_TOWN_WIDTH EQU $0a
|
||||
|
||||
; VermilionCity_h map_id=5
|
||||
VERMILION_CITY_HEIGHT EQU $12
|
||||
VERMILION_CITY_WIDTH EQU $14
|
||||
|
||||
; CeladonCity_h map_id=6
|
||||
CELADON_CITY_HEIGHT EQU $12
|
||||
CELADON_CITY_WIDTH EQU $19
|
||||
|
||||
; FuchsiaCity_h map_id=7
|
||||
FUCHSIA_CITY_HEIGHT EQU $12
|
||||
FUCHSIA_CITY_WIDTH EQU $14
|
||||
|
||||
; CinnabarIsland_h map_id=8
|
||||
CINNABAR_ISLAND_HEIGHT EQU $09
|
||||
CINNABAR_ISLAND_WIDTH EQU $0a
|
||||
|
||||
; IndigoPlateau_h map_id=9
|
||||
INDIGO_PLATEAU_HEIGHT EQU $09
|
||||
INDIGO_PLATEAU_WIDTH EQU $0a
|
||||
|
||||
; SaffronCity_h map_id=10
|
||||
SAFFRON_CITY_HEIGHT EQU $12
|
||||
SAFFRON_CITY_WIDTH EQU $14
|
||||
|
||||
; Route1_h map_id=12
|
||||
ROUTE_1_HEIGHT EQU $12
|
||||
ROUTE_1_WIDTH EQU $0a
|
||||
|
||||
; Route2_h map_id=13
|
||||
ROUTE_2_HEIGHT EQU $24
|
||||
ROUTE_2_WIDTH EQU $0a
|
||||
|
||||
; Route3_h map_id=14
|
||||
ROUTE_3_HEIGHT EQU $09
|
||||
ROUTE_3_WIDTH EQU $23
|
||||
|
||||
; Route4_h map_id=15
|
||||
ROUTE_4_HEIGHT EQU $09
|
||||
ROUTE_4_WIDTH EQU $2d
|
||||
|
||||
; Route5_h map_id=16
|
||||
ROUTE_5_HEIGHT EQU $12
|
||||
ROUTE_5_WIDTH EQU $0a
|
||||
|
||||
; Route6_h map_id=17
|
||||
ROUTE_6_HEIGHT EQU $12
|
||||
ROUTE_6_WIDTH EQU $0a
|
||||
|
||||
; Route7_h map_id=18
|
||||
ROUTE_7_HEIGHT EQU $09
|
||||
ROUTE_7_WIDTH EQU $0a
|
||||
|
||||
; Route8_h map_id=19
|
||||
ROUTE_8_HEIGHT EQU $09
|
||||
ROUTE_8_WIDTH EQU $1e
|
||||
|
||||
; Route9_h map_id=20
|
||||
ROUTE_9_HEIGHT EQU $09
|
||||
ROUTE_9_WIDTH EQU $1e
|
||||
|
||||
; Route10_h map_id=21
|
||||
ROUTE_10_HEIGHT EQU $24
|
||||
ROUTE_10_WIDTH EQU $0a
|
||||
|
||||
; Route11_h map_id=22
|
||||
ROUTE_11_HEIGHT EQU $09
|
||||
ROUTE_11_WIDTH EQU $1e
|
||||
|
||||
; Route12_h map_id=23
|
||||
ROUTE_12_HEIGHT EQU $36
|
||||
ROUTE_12_WIDTH EQU $0a
|
||||
|
||||
; Route13_h map_id=24
|
||||
ROUTE_13_HEIGHT EQU $09
|
||||
ROUTE_13_WIDTH EQU $1e
|
||||
|
||||
; Route14_h map_id=25
|
||||
ROUTE_14_HEIGHT EQU $1b
|
||||
ROUTE_14_WIDTH EQU $0a
|
||||
|
||||
; Route15_h map_id=26
|
||||
ROUTE_15_HEIGHT EQU $09
|
||||
ROUTE_15_WIDTH EQU $1e
|
||||
|
||||
; Route16_h map_id=27
|
||||
ROUTE_16_HEIGHT EQU $09
|
||||
ROUTE_16_WIDTH EQU $14
|
||||
|
||||
; Route17_h map_id=28
|
||||
ROUTE_17_HEIGHT EQU $48
|
||||
ROUTE_17_WIDTH EQU $0a
|
||||
|
||||
; Route18_h map_id=29
|
||||
ROUTE_18_HEIGHT EQU $09
|
||||
ROUTE_18_WIDTH EQU $19
|
||||
|
||||
; Route19_h map_id=30
|
||||
ROUTE_19_HEIGHT EQU $1b
|
||||
ROUTE_19_WIDTH EQU $0a
|
||||
|
||||
; Route20_h map_id=31
|
||||
ROUTE_20_HEIGHT EQU $09
|
||||
ROUTE_20_WIDTH EQU $32
|
||||
|
||||
; Route21_h map_id=32
|
||||
ROUTE_21_HEIGHT EQU $2d
|
||||
ROUTE_21_WIDTH EQU $0a
|
||||
|
||||
; Route22_h map_id=33
|
||||
ROUTE_22_HEIGHT EQU $09
|
||||
ROUTE_22_WIDTH EQU $14
|
||||
|
||||
; Route23_h map_id=34
|
||||
ROUTE_23_HEIGHT EQU $48
|
||||
ROUTE_23_WIDTH EQU $0a
|
||||
|
||||
; Route24_h map_id=35
|
||||
ROUTE_24_HEIGHT EQU $12
|
||||
ROUTE_24_WIDTH EQU $0a
|
||||
|
||||
; Route25_h map_id=36
|
||||
ROUTE_25_HEIGHT EQU $09
|
||||
ROUTE_25_WIDTH EQU $1e
|
||||
|
||||
; RedsHouse1F_h map_id=37
|
||||
REDS_HOUSE_1F_HEIGHT EQU $04
|
||||
REDS_HOUSE_1F_WIDTH EQU $04
|
||||
|
||||
; RedsHouse2F_h map_id=38
|
||||
REDS_HOUSE_2F_HEIGHT EQU $04
|
||||
REDS_HOUSE_2F_WIDTH EQU $04
|
||||
|
||||
; BluesHouse_h map_id=39
|
||||
BLUES_HOUSE_HEIGHT EQU $04
|
||||
BLUES_HOUSE_WIDTH EQU $04
|
||||
|
||||
; OaksLab_h map_id=40
|
||||
OAKS_LAB_HEIGHT EQU $06
|
||||
OAKS_LAB_WIDTH EQU $05
|
||||
|
||||
; ViridianPokeCenter_h map_id=41
|
||||
VIRIDIAN_POKECENTER_HEIGHT EQU $04
|
||||
VIRIDIAN_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; ViridianMart_h map_id=42
|
||||
VIRIDIAN_MART_HEIGHT EQU $04
|
||||
VIRIDIAN_MART_WIDTH EQU $04
|
||||
|
||||
; School_h map_id=43
|
||||
VIRIDIAN_SCHOOL_HEIGHT EQU $04
|
||||
VIRIDIAN_SCHOOL_WIDTH EQU $04
|
||||
|
||||
; ViridianHouse_h map_id=44
|
||||
VIRIDIAN_HOUSE_HEIGHT EQU $04
|
||||
VIRIDIAN_HOUSE_WIDTH EQU $04
|
||||
|
||||
; ViridianGym_h map_id=45
|
||||
VIRIDIAN_GYM_HEIGHT EQU $09
|
||||
VIRIDIAN_GYM_WIDTH EQU $0a
|
||||
|
||||
; DiglettsCaveRoute2_h map_id=46
|
||||
DIGLETTS_CAVE_EXIT_HEIGHT EQU $04
|
||||
DIGLETTS_CAVE_EXIT_WIDTH EQU $04
|
||||
|
||||
; ViridianForestexit_h map_id=47
|
||||
VIRIDIAN_FOREST_EXIT_HEIGHT EQU $04
|
||||
VIRIDIAN_FOREST_EXIT_WIDTH EQU $05
|
||||
|
||||
; Route2House_h map_id=48
|
||||
ROUTE_2_HOUSE_HEIGHT EQU $04
|
||||
ROUTE_2_HOUSE_WIDTH EQU $04
|
||||
|
||||
; Route2Gate_h map_id=49
|
||||
ROUTE_2_GATE_HEIGHT EQU $04
|
||||
ROUTE_2_GATE_WIDTH EQU $05
|
||||
|
||||
; ViridianForestEntrance_h map_id=50
|
||||
VIRIDIAN_FOREST_ENTRANCE_HEIGHT EQU $04
|
||||
VIRIDIAN_FOREST_ENTRANCE_WIDTH EQU $05
|
||||
|
||||
; ViridianForest_h map_id=51
|
||||
VIRIDIAN_FOREST_HEIGHT EQU $18
|
||||
VIRIDIAN_FOREST_WIDTH EQU $11
|
||||
|
||||
; MuseumF1_h map_id=52
|
||||
MUSEUM_1F_HEIGHT EQU $04
|
||||
MUSEUM_1F_WIDTH EQU $0a
|
||||
|
||||
; MuseumF2_h map_id=53
|
||||
MUSEUM_2F_HEIGHT EQU $04
|
||||
MUSEUM_2F_WIDTH EQU $07
|
||||
|
||||
; PewterGym_h map_id=54
|
||||
PEWTER_GYM_HEIGHT EQU $07
|
||||
PEWTER_GYM_WIDTH EQU $05
|
||||
|
||||
; PewterHouse1_h map_id=55
|
||||
PEWTER_HOUSE_1_HEIGHT EQU $04
|
||||
PEWTER_HOUSE_1_WIDTH EQU $04
|
||||
|
||||
; PewterMart_h map_id=56
|
||||
PEWTER_MART_HEIGHT EQU $04
|
||||
PEWTER_MART_WIDTH EQU $04
|
||||
|
||||
; PewterHouse2_h map_id=57
|
||||
PEWTER_HOUSE_2_HEIGHT EQU $04
|
||||
PEWTER_HOUSE_2_WIDTH EQU $04
|
||||
|
||||
; PewterPokecenter_h map_id=58
|
||||
PEWTER_POKECENTER_HEIGHT EQU $04
|
||||
PEWTER_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; MtMoon1_h map_id=59
|
||||
MT_MOON_1_HEIGHT EQU $12
|
||||
MT_MOON_1_WIDTH EQU $14
|
||||
|
||||
; MtMoon2_h map_id=60
|
||||
MT_MOON_2_HEIGHT EQU $0e
|
||||
MT_MOON_2_WIDTH EQU $0e
|
||||
|
||||
; MtMoon3_h map_id=61
|
||||
MT_MOON_3_HEIGHT EQU $12
|
||||
MT_MOON_3_WIDTH EQU $14
|
||||
|
||||
; CeruleanHouseTrashed_h map_id=62
|
||||
TRASHED_HOUSE_HEIGHT EQU $04
|
||||
TRASHED_HOUSE_WIDTH EQU $04
|
||||
|
||||
; CeruleanHouse_h map_id=63
|
||||
CERULEAN_HOUSE_HEIGHT EQU $04
|
||||
CERULEAN_HOUSE_WIDTH EQU $04
|
||||
|
||||
; CeruleanPokecenter_h map_id=64
|
||||
CERULEAN_POKECENTER_HEIGHT EQU $04
|
||||
CERULEAN_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; CeruleanGym_h map_id=65
|
||||
CERULEAN_GYM_HEIGHT EQU $07
|
||||
CERULEAN_GYM_WIDTH EQU $05
|
||||
|
||||
; BikeShop_h map_id=66
|
||||
BIKE_SHOP_HEIGHT EQU $04
|
||||
BIKE_SHOP_WIDTH EQU $04
|
||||
|
||||
; CeruleanMart_h map_id=67
|
||||
CERULEAN_MART_HEIGHT EQU $04
|
||||
CERULEAN_MART_WIDTH EQU $04
|
||||
|
||||
; MtMoonPokecenter_h map_id=68
|
||||
MT_MOON_POKECENTER_HEIGHT EQU $04
|
||||
MT_MOON_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; Route5Gate_h map_id=70
|
||||
ROUTE_5_GATE_HEIGHT EQU $03
|
||||
ROUTE_5_GATE_WIDTH EQU $04
|
||||
|
||||
; UndergroundTunnelEntranceRoute5_h map_id=71
|
||||
PATH_ENTRANCE_ROUTE_5_HEIGHT EQU $04
|
||||
PATH_ENTRANCE_ROUTE_5_WIDTH EQU $04
|
||||
|
||||
; DayCareM_h map_id=72
|
||||
DAYCAREM_HEIGHT EQU $04
|
||||
DAYCAREM_WIDTH EQU $04
|
||||
|
||||
; Route6Gate_h map_id=73
|
||||
ROUTE_6_GATE_HEIGHT EQU $03
|
||||
ROUTE_6_GATE_WIDTH EQU $04
|
||||
|
||||
; UndergroundTunnelEntranceRoute6_h map_id=74
|
||||
PATH_ENTRANCE_ROUTE_6_HEIGHT EQU $04
|
||||
PATH_ENTRANCE_ROUTE_6_WIDTH EQU $04
|
||||
|
||||
; Route7Gate_h map_id=76
|
||||
ROUTE_7_GATE_HEIGHT EQU $04
|
||||
ROUTE_7_GATE_WIDTH EQU $03
|
||||
|
||||
; UndergroundPathEntranceRoute7_h map_id=77
|
||||
PATH_ENTRANCE_ROUTE_7_HEIGHT EQU $04
|
||||
PATH_ENTRANCE_ROUTE_7_WIDTH EQU $04
|
||||
|
||||
; Route8Gate_h map_id=79
|
||||
ROUTE_8_GATE_HEIGHT EQU $04
|
||||
ROUTE_8_GATE_WIDTH EQU $03
|
||||
|
||||
; UndergroundPathEntranceRoute8_h map_id=80
|
||||
PATH_ENTRANCE_ROUTE_8_HEIGHT EQU $04
|
||||
PATH_ENTRANCE_ROUTE_8_WIDTH EQU $04
|
||||
|
||||
; RockTunnelPokecenter_h map_id=81
|
||||
ROCK_TUNNEL_POKECENTER_HEIGHT EQU $04
|
||||
ROCK_TUNNEL_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; RockTunnel1_h map_id=82
|
||||
ROCK_TUNNEL_1_HEIGHT EQU $12
|
||||
ROCK_TUNNEL_1_WIDTH EQU $14
|
||||
|
||||
; PowerPlant_h map_id=83
|
||||
POWER_PLANT_HEIGHT EQU $12
|
||||
POWER_PLANT_WIDTH EQU $14
|
||||
|
||||
; Route11Gate_h map_id=84
|
||||
ROUTE_11_GATE_1F_HEIGHT EQU $05
|
||||
ROUTE_11_GATE_1F_WIDTH EQU $04
|
||||
|
||||
; DiglettsCaveEntranceRoute11_h map_id=85
|
||||
DIGLETTS_CAVE_ENTRANCE_HEIGHT EQU $04
|
||||
DIGLETTS_CAVE_ENTRANCE_WIDTH EQU $04
|
||||
|
||||
; Route11GateUpstairs_h map_id=86
|
||||
ROUTE_11_GATE_2F_HEIGHT EQU $04
|
||||
ROUTE_11_GATE_2F_WIDTH EQU $04
|
||||
|
||||
; Route12Gate_h map_id=87
|
||||
ROUTE_12_GATE_HEIGHT EQU $04
|
||||
ROUTE_12_GATE_WIDTH EQU $05
|
||||
|
||||
; BillsHouse_h map_id=88
|
||||
BILLS_HOUSE_HEIGHT EQU $04
|
||||
BILLS_HOUSE_WIDTH EQU $04
|
||||
|
||||
; VermilionPokecenter_h map_id=89
|
||||
VERMILION_POKECENTER_HEIGHT EQU $04
|
||||
VERMILION_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; FanClub_h map_id=90
|
||||
POKEMON_FAN_CLUB_HEIGHT EQU $04
|
||||
POKEMON_FAN_CLUB_WIDTH EQU $04
|
||||
|
||||
; VermilionMart_h map_id=91
|
||||
VERMILION_MART_HEIGHT EQU $04
|
||||
VERMILION_MART_WIDTH EQU $04
|
||||
|
||||
; VermilionGym_h map_id=92
|
||||
VERMILION_GYM_HEIGHT EQU $09
|
||||
VERMILION_GYM_WIDTH EQU $05
|
||||
|
||||
; VermilionHouse1_h map_id=93
|
||||
VERMILION_HOUSE_1_HEIGHT EQU $04
|
||||
VERMILION_HOUSE_1_WIDTH EQU $04
|
||||
|
||||
; VermilionDock_h map_id=94
|
||||
VERMILION_DOCK_HEIGHT EQU $06
|
||||
VERMILION_DOCK_WIDTH EQU $0e
|
||||
|
||||
; SSAnne1_h map_id=95
|
||||
SS_ANNE_1_HEIGHT EQU $09
|
||||
SS_ANNE_1_WIDTH EQU $14
|
||||
|
||||
; SSAnne2_h map_id=96
|
||||
SS_ANNE_2_HEIGHT EQU $09
|
||||
SS_ANNE_2_WIDTH EQU $14
|
||||
|
||||
; SSAnne3_h map_id=97
|
||||
SS_ANNE_3_HEIGHT EQU $03
|
||||
SS_ANNE_3_WIDTH EQU $0a
|
||||
|
||||
; SSAnne4_h map_id=98
|
||||
SS_ANNE_4_HEIGHT EQU $04
|
||||
SS_ANNE_4_WIDTH EQU $0f
|
||||
|
||||
; SSAnne5_h map_id=99
|
||||
SS_ANNE_5_HEIGHT EQU $07
|
||||
SS_ANNE_5_WIDTH EQU $0a
|
||||
|
||||
; SSAnne6_h map_id=100
|
||||
SS_ANNE_6_HEIGHT EQU $08
|
||||
SS_ANNE_6_WIDTH EQU $07
|
||||
|
||||
; SSAnne7_h map_id=101
|
||||
SS_ANNE_7_HEIGHT EQU $04
|
||||
SS_ANNE_7_WIDTH EQU $03
|
||||
|
||||
; SSAnne8_h map_id=102
|
||||
SS_ANNE_8_HEIGHT EQU $08
|
||||
SS_ANNE_8_WIDTH EQU $0c
|
||||
|
||||
; SSAnne9_h map_id=103
|
||||
SS_ANNE_9_HEIGHT EQU $08
|
||||
SS_ANNE_9_WIDTH EQU $0c
|
||||
|
||||
; SSAnne10_h map_id=104
|
||||
SS_ANNE_10_HEIGHT EQU $08
|
||||
SS_ANNE_10_WIDTH EQU $0c
|
||||
|
||||
; VictoryRoad1_h map_id=108
|
||||
VICTORY_ROAD_1_HEIGHT EQU $09
|
||||
VICTORY_ROAD_1_WIDTH EQU $0a
|
||||
|
||||
; Lance_h map_id=113
|
||||
LANCES_ROOM_HEIGHT EQU $0d
|
||||
LANCES_ROOM_WIDTH EQU $0d
|
||||
|
||||
; HallofFameRoom_h map_id=118
|
||||
HALL_OF_FAME_HEIGHT EQU $04
|
||||
HALL_OF_FAME_WIDTH EQU $05
|
||||
|
||||
; UndergroundPathNS_h map_id=119
|
||||
UNDERGROUND_PATH_NS_HEIGHT EQU $18
|
||||
UNDERGROUND_PATH_NS_WIDTH EQU $04
|
||||
|
||||
; Gary_h map_id=120
|
||||
CHAMPIONS_ROOM_HEIGHT EQU $04
|
||||
CHAMPIONS_ROOM_WIDTH EQU $04
|
||||
|
||||
; UndergroundPathWE_h map_id=121
|
||||
UNDERGROUND_PATH_WE_HEIGHT EQU $04
|
||||
UNDERGROUND_PATH_WE_WIDTH EQU $19
|
||||
|
||||
; CeladonMart1_h map_id=122
|
||||
CELADON_MART_1_HEIGHT EQU $04
|
||||
CELADON_MART_1_WIDTH EQU $0a
|
||||
|
||||
; CeladonMart2_h map_id=123
|
||||
CELADON_MART_2_HEIGHT EQU $04
|
||||
CELADON_MART_2_WIDTH EQU $0a
|
||||
|
||||
; CeladonMart3_h map_id=124
|
||||
CELADON_MART_3_HEIGHT EQU $04
|
||||
CELADON_MART_3_WIDTH EQU $0a
|
||||
|
||||
; CeladonMart4_h map_id=125
|
||||
CELADON_MART_4_HEIGHT EQU $04
|
||||
CELADON_MART_4_WIDTH EQU $0a
|
||||
|
||||
; CeladonMartRoof_h map_id=126
|
||||
CELADON_MART_ROOF_HEIGHT EQU $04
|
||||
CELADON_MART_ROOF_WIDTH EQU $0a
|
||||
|
||||
; CeladonMartElevator_h map_id=127
|
||||
CELADON_MART_ELEVATOR_HEIGHT EQU $02
|
||||
CELADON_MART_ELEVATOR_WIDTH EQU $02
|
||||
|
||||
; CeladonMansion1_h map_id=128
|
||||
CELADON_MANSION_1_HEIGHT EQU $06
|
||||
CELADON_MANSION_1_WIDTH EQU $04
|
||||
|
||||
; CeladonMansion2_h map_id=129
|
||||
CELADON_MANSION_2_HEIGHT EQU $06
|
||||
CELADON_MANSION_2_WIDTH EQU $04
|
||||
|
||||
; CeladonMansion3_h map_id=130
|
||||
CELADON_MANSION_3_HEIGHT EQU $06
|
||||
CELADON_MANSION_3_WIDTH EQU $04
|
||||
|
||||
; CeladonMansion4_h map_id=131
|
||||
CELADON_MANSION_4_HEIGHT EQU $06
|
||||
CELADON_MANSION_4_WIDTH EQU $04
|
||||
|
||||
; CeladonMansion5_h map_id=132
|
||||
CELADON_MANSION_5_HEIGHT EQU $04
|
||||
CELADON_MANSION_5_WIDTH EQU $04
|
||||
|
||||
; CeladonPokecenter_h map_id=133
|
||||
CELADON_POKECENTER_HEIGHT EQU $04
|
||||
CELADON_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; CeladonGym_h map_id=134
|
||||
CELADON_GYM_HEIGHT EQU $09
|
||||
CELADON_GYM_WIDTH EQU $05
|
||||
|
||||
; CeladonGameCorner_h map_id=135
|
||||
GAME_CORNER_HEIGHT EQU $09
|
||||
GAME_CORNER_WIDTH EQU $0a
|
||||
|
||||
; CeladonMart5_h map_id=136
|
||||
CELADON_MART_5_HEIGHT EQU $04
|
||||
CELADON_MART_5_WIDTH EQU $0a
|
||||
|
||||
; CeladonPrizeRoom_h map_id=137
|
||||
CELADONPRIZE_ROOM_HEIGHT EQU $04
|
||||
CELADONPRIZE_ROOM_WIDTH EQU $05
|
||||
|
||||
; CeladonDiner_h map_id=138
|
||||
CELADON_DINER_HEIGHT EQU $04
|
||||
CELADON_DINER_WIDTH EQU $05
|
||||
|
||||
; CeladonHouse_h map_id=139
|
||||
CELADON_HOUSE_HEIGHT EQU $04
|
||||
CELADON_HOUSE_WIDTH EQU $04
|
||||
|
||||
; CeladonHotel_h map_id=140
|
||||
CELADONHOTEL_HEIGHT EQU $04
|
||||
CELADONHOTEL_WIDTH EQU $07
|
||||
|
||||
; LavenderPokecenter_h map_id=141
|
||||
LAVENDER_POKECENTER_HEIGHT EQU $04
|
||||
LAVENDER_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; PokemonTower1_h map_id=142
|
||||
POKEMONTOWER_1_HEIGHT EQU $09
|
||||
POKEMONTOWER_1_WIDTH EQU $0a
|
||||
|
||||
; PokemonTower2_h map_id=143
|
||||
POKEMONTOWER_2_HEIGHT EQU $09
|
||||
POKEMONTOWER_2_WIDTH EQU $0a
|
||||
|
||||
; PokemonTower3_h map_id=144
|
||||
POKEMONTOWER_3_HEIGHT EQU $09
|
||||
POKEMONTOWER_3_WIDTH EQU $0a
|
||||
|
||||
; PokemonTower4_h map_id=145
|
||||
POKEMONTOWER_4_HEIGHT EQU $09
|
||||
POKEMONTOWER_4_WIDTH EQU $0a
|
||||
|
||||
; PokemonTower5_h map_id=146
|
||||
POKEMONTOWER_5_HEIGHT EQU $09
|
||||
POKEMONTOWER_5_WIDTH EQU $0a
|
||||
|
||||
; PokemonTower6_h map_id=147
|
||||
POKEMONTOWER_6_HEIGHT EQU $09
|
||||
POKEMONTOWER_6_WIDTH EQU $0a
|
||||
|
||||
; PokemonTower7_h map_id=148
|
||||
POKEMONTOWER_7_HEIGHT EQU $09
|
||||
POKEMONTOWER_7_WIDTH EQU $0a
|
||||
|
||||
; LavenderHouse1_h map_id=149
|
||||
LAVENDER_HOUSE_1_HEIGHT EQU $04
|
||||
LAVENDER_HOUSE_1_WIDTH EQU $04
|
||||
|
||||
; LavenderMart_h map_id=150
|
||||
LAVENDER_MART_HEIGHT EQU $04
|
||||
LAVENDER_MART_WIDTH EQU $04
|
||||
|
||||
; LavenderHouse2_h map_id=151
|
||||
LAVENDER_HOUSE_2_HEIGHT EQU $04
|
||||
LAVENDER_HOUSE_2_WIDTH EQU $04
|
||||
|
||||
; FuchsiaMart_h map_id=152
|
||||
FUCHSIA_MART_HEIGHT EQU $04
|
||||
FUCHSIA_MART_WIDTH EQU $04
|
||||
|
||||
; FuchsiaHouse1_h map_id=153
|
||||
FUCHSIA_HOUSE_1_HEIGHT EQU $04
|
||||
FUCHSIA_HOUSE_1_WIDTH EQU $04
|
||||
|
||||
; FuchsiaPokecenter_h map_id=154
|
||||
FUCHSIA_POKECENTER_HEIGHT EQU $04
|
||||
FUCHSIA_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; FuchsiaHouse2_h map_id=155
|
||||
FUCHSIA_HOUSE_2_HEIGHT EQU $04
|
||||
FUCHSIA_HOUSE_2_WIDTH EQU $05
|
||||
|
||||
; SafariZoneEntrance_h map_id=156
|
||||
SAFARIZONEENTRANCE_HEIGHT EQU $03
|
||||
SAFARIZONEENTRANCE_WIDTH EQU $04
|
||||
|
||||
; FuchsiaGym_h map_id=157
|
||||
FUCHSIA_GYM_HEIGHT EQU $09
|
||||
FUCHSIA_GYM_WIDTH EQU $05
|
||||
|
||||
; FuchsiaMeetingRoom_h map_id=158
|
||||
FUCHSIAMEETINGROOM_HEIGHT EQU $04
|
||||
FUCHSIAMEETINGROOM_WIDTH EQU $07
|
||||
|
||||
; SeafoamIslands2_h map_id=159
|
||||
SEAFOAM_ISLANDS_2_HEIGHT EQU $09
|
||||
SEAFOAM_ISLANDS_2_WIDTH EQU $0f
|
||||
|
||||
; SeafoamIslands3_h map_id=160
|
||||
SEAFOAM_ISLANDS_3_HEIGHT EQU $09
|
||||
SEAFOAM_ISLANDS_3_WIDTH EQU $0f
|
||||
|
||||
; SeafoamIslands4_h map_id=161
|
||||
SEAFOAM_ISLANDS_4_HEIGHT EQU $09
|
||||
SEAFOAM_ISLANDS_4_WIDTH EQU $0f
|
||||
|
||||
; SeafoamIslands5_h map_id=162
|
||||
SEAFOAM_ISLANDS_5_HEIGHT EQU $09
|
||||
SEAFOAM_ISLANDS_5_WIDTH EQU $0f
|
||||
|
||||
; VermilionHouse2_h map_id=163
|
||||
VERMILION_HOUSE_2_HEIGHT EQU $04
|
||||
VERMILION_HOUSE_2_WIDTH EQU $04
|
||||
|
||||
; FuchsiaHouse3_h map_id=164
|
||||
FUCHSIA_HOUSE_3_HEIGHT EQU $04
|
||||
FUCHSIA_HOUSE_3_WIDTH EQU $04
|
||||
|
||||
; Mansion1_h map_id=165
|
||||
MANSION_1_HEIGHT EQU $0e
|
||||
MANSION_1_WIDTH EQU $0f
|
||||
|
||||
; CinnabarGym_h map_id=166
|
||||
CINNABAR_GYM_HEIGHT EQU $09
|
||||
CINNABAR_GYM_WIDTH EQU $0a
|
||||
|
||||
; Lab1_h map_id=167
|
||||
CINNABAR_LAB_1_HEIGHT EQU $04
|
||||
CINNABAR_LAB_1_WIDTH EQU $09
|
||||
|
||||
; Lab2_h map_id=168
|
||||
CINNABAR_LAB_2_HEIGHT EQU $04
|
||||
CINNABAR_LAB_2_WIDTH EQU $04
|
||||
|
||||
; Lab3_h map_id=169
|
||||
CINNABAR_LAB_3_HEIGHT EQU $04
|
||||
CINNABAR_LAB_3_WIDTH EQU $04
|
||||
|
||||
; Lab4_h map_id=170
|
||||
CINNABAR_LAB_4_HEIGHT EQU $04
|
||||
CINNABAR_LAB_4_WIDTH EQU $04
|
||||
|
||||
; CinnabarPokecenter_h map_id=171
|
||||
CINNABAR_POKECENTER_HEIGHT EQU $04
|
||||
CINNABAR_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; CinnabarMart_h map_id=172
|
||||
CINNABAR_MART_HEIGHT EQU $04
|
||||
CINNABAR_MART_WIDTH EQU $04
|
||||
|
||||
; IndigoPlateauLobby_h map_id=174
|
||||
INDIGO_PLATEAU_LOBBY_HEIGHT EQU $06
|
||||
INDIGO_PLATEAU_LOBBY_WIDTH EQU $08
|
||||
|
||||
; CopycatsHouseF1_h map_id=175
|
||||
COPYCATS_HOUSE_1F_HEIGHT EQU $04
|
||||
COPYCATS_HOUSE_1F_WIDTH EQU $04
|
||||
|
||||
; CopycatsHouseF2_h map_id=176
|
||||
COPYCATS_HOUSE_2F_HEIGHT EQU $04
|
||||
COPYCATS_HOUSE_2F_WIDTH EQU $04
|
||||
|
||||
; FightingDojo_h map_id=177
|
||||
FIGHTINGDOJO_HEIGHT EQU $06
|
||||
FIGHTINGDOJO_WIDTH EQU $05
|
||||
|
||||
; SaffronGym_h map_id=178
|
||||
SAFFRON_GYM_HEIGHT EQU $09
|
||||
SAFFRON_GYM_WIDTH EQU $0a
|
||||
|
||||
; SaffronHouse1_h map_id=179
|
||||
SAFFRON_HOUSE_1_HEIGHT EQU $04
|
||||
SAFFRON_HOUSE_1_WIDTH EQU $04
|
||||
|
||||
; SaffronMart_h map_id=180
|
||||
SAFFRON_MART_HEIGHT EQU $04
|
||||
SAFFRON_MART_WIDTH EQU $04
|
||||
|
||||
; SilphCo1_h map_id=181
|
||||
SILPH_CO_1F_HEIGHT EQU $09
|
||||
SILPH_CO_1F_WIDTH EQU $0f
|
||||
|
||||
; SaffronPokecenter_h map_id=182
|
||||
SAFFRON_POKECENTER_HEIGHT EQU $04
|
||||
SAFFRON_POKECENTER_WIDTH EQU $07
|
||||
|
||||
; SaffronHouse2_h map_id=183
|
||||
SAFFRON_HOUSE_2_HEIGHT EQU $04
|
||||
SAFFRON_HOUSE_2_WIDTH EQU $04
|
||||
|
||||
; Route15Gate1F_h map_id=184
|
||||
ROUTE_15_GATE_1F_HEIGHT EQU $05
|
||||
ROUTE_15_GATE_1F_WIDTH EQU $04
|
||||
|
||||
; Route15GateUpstairs_h map_id=185
|
||||
ROUTE_15_GATE_2F_HEIGHT EQU 4
|
||||
ROUTE_15_GATE_2F_WIDTH EQU 4
|
||||
|
||||
; Route16GateMap_h map_id=186
|
||||
ROUTE_16_GATE_1F_HEIGHT EQU $07
|
||||
ROUTE_16_GATE_1F_WIDTH EQU $04
|
||||
|
||||
; Route16GateUpstairs_h map_id=187
|
||||
ROUTE_16_GATE_2F_HEIGHT EQU $04
|
||||
ROUTE_16_GATE_2F_WIDTH EQU $04
|
||||
|
||||
; Route16House_h map_id=188
|
||||
ROUTE_16_HOUSE_HEIGHT EQU $04
|
||||
ROUTE_16_HOUSE_WIDTH EQU $04
|
||||
|
||||
; Route12House_h map_id=189
|
||||
ROUTE_12_HOUSE_HEIGHT EQU $04
|
||||
ROUTE_12_HOUSE_WIDTH EQU $04
|
||||
|
||||
; Route18Gate_h map_id=190
|
||||
ROUTE_18_GATE_1F_HEIGHT EQU $05
|
||||
ROUTE_18_GATE_1F_WIDTH EQU $04
|
||||
|
||||
; Route18GateHeader_h map_id=191
|
||||
ROUTE_18_GATE_2F_HEIGHT EQU $04
|
||||
ROUTE_18_GATE_2F_WIDTH EQU $04
|
||||
|
||||
; SeafoamIslands1_h map_id=192
|
||||
SEAFOAM_ISLANDS_1_HEIGHT EQU $09
|
||||
SEAFOAM_ISLANDS_1_WIDTH EQU $0f
|
||||
|
||||
; Route22Gate_h map_id=193
|
||||
ROUTE_22_GATE_HEIGHT EQU $04
|
||||
ROUTE_22_GATE_WIDTH EQU $05
|
||||
|
||||
; VictoryRoad2_h map_id=194
|
||||
VICTORY_ROAD_2_HEIGHT EQU $09
|
||||
VICTORY_ROAD_2_WIDTH EQU $0f
|
||||
|
||||
; Route12GateUpstairs_h map_id=195
|
||||
ROUTE_12_GATE_2F_HEIGHT EQU $04
|
||||
ROUTE_12_GATE_2F_WIDTH EQU $04
|
||||
|
||||
; VermilionHouse3_h map_id=196
|
||||
VERMILION_HOUSE_3_HEIGHT EQU $04
|
||||
VERMILION_HOUSE_3_WIDTH EQU $04
|
||||
|
||||
; DiglettsCave_h map_id=197
|
||||
DIGLETTS_CAVE_HEIGHT EQU $12
|
||||
DIGLETTS_CAVE_WIDTH EQU $14
|
||||
|
||||
; VictoryRoad3_h map_id=198
|
||||
VICTORY_ROAD_3_HEIGHT EQU $09
|
||||
VICTORY_ROAD_3_WIDTH EQU $0f
|
||||
|
||||
; RocketHideout1_h map_id=199
|
||||
ROCKET_HIDEOUT_1_HEIGHT EQU $0e
|
||||
ROCKET_HIDEOUT_1_WIDTH EQU $0f
|
||||
|
||||
; RocketHideout2_h map_id=200
|
||||
ROCKET_HIDEOUT_2_HEIGHT EQU $0e
|
||||
ROCKET_HIDEOUT_2_WIDTH EQU $0f
|
||||
|
||||
; RocketHideout3_h map_id=201
|
||||
ROCKET_HIDEOUT_3_HEIGHT EQU $0e
|
||||
ROCKET_HIDEOUT_3_WIDTH EQU $0f
|
||||
|
||||
; RocketHideout4_h map_id=202
|
||||
ROCKET_HIDEOUT_4_HEIGHT EQU $0c
|
||||
ROCKET_HIDEOUT_4_WIDTH EQU $0f
|
||||
|
||||
; RocketHideoutElevator_h map_id=203
|
||||
ROCKET_HIDEOUT_ELEVATOR_HEIGHT EQU $04
|
||||
ROCKET_HIDEOUT_ELEVATOR_WIDTH EQU $03
|
||||
|
||||
; SilphCo2_h map_id=207
|
||||
SILPH_CO_2F_HEIGHT EQU $09
|
||||
SILPH_CO_2F_WIDTH EQU $0f
|
||||
|
||||
; SilphCo3_h map_id=208
|
||||
SILPH_CO_3F_HEIGHT EQU $09
|
||||
SILPH_CO_3F_WIDTH EQU $0f
|
||||
|
||||
; SilphCo4_h map_id=209
|
||||
SILPH_CO_4F_HEIGHT EQU $09
|
||||
SILPH_CO_4F_WIDTH EQU $0f
|
||||
|
||||
; SilphCo5_h map_id=210
|
||||
SILPH_CO_5F_HEIGHT EQU $09
|
||||
SILPH_CO_5F_WIDTH EQU $0f
|
||||
|
||||
; SilphCo6_h map_id=211
|
||||
SILPH_CO_6F_HEIGHT EQU $09
|
||||
SILPH_CO_6F_WIDTH EQU $0d
|
||||
|
||||
; SilphCo7_h map_id=212
|
||||
SILPH_CO_7F_HEIGHT EQU $09
|
||||
SILPH_CO_7F_WIDTH EQU $0d
|
||||
|
||||
; SilphCo8_h map_id=213
|
||||
SILPH_CO_8F_HEIGHT EQU $09
|
||||
SILPH_CO_8F_WIDTH EQU $0d
|
||||
|
||||
; Mansion2_h map_id=214
|
||||
MANSION_2_HEIGHT EQU $0e
|
||||
MANSION_2_WIDTH EQU $0f
|
||||
|
||||
; Mansion3_h map_id=215
|
||||
MANSION_3_HEIGHT EQU $09
|
||||
MANSION_3_WIDTH EQU $0f
|
||||
|
||||
; Mansion4_h map_id=216
|
||||
MANSION_4_HEIGHT EQU $0e
|
||||
MANSION_4_WIDTH EQU $0f
|
||||
|
||||
; SafariZoneEast_h map_id=217
|
||||
SAFARI_ZONE_EAST_HEIGHT EQU $0d
|
||||
SAFARI_ZONE_EAST_WIDTH EQU $0f
|
||||
|
||||
; SafariZoneNorth_h map_id=218
|
||||
SAFARI_ZONE_NORTH_HEIGHT EQU $12
|
||||
SAFARI_ZONE_NORTH_WIDTH EQU $14
|
||||
|
||||
; SafariZoneWest_h map_id=219
|
||||
SAFARI_ZONE_WEST_HEIGHT EQU $0d
|
||||
SAFARI_ZONE_WEST_WIDTH EQU $0f
|
||||
|
||||
; SafariZoneCenter_h map_id=220
|
||||
SAFARI_ZONE_CENTER_HEIGHT EQU $0d
|
||||
SAFARI_ZONE_CENTER_WIDTH EQU $0f
|
||||
|
||||
; SafariZoneRestHouse1_h map_id=221
|
||||
SAFARI_ZONE_REST_HOUSE_1_HEIGHT EQU $04
|
||||
SAFARI_ZONE_REST_HOUSE_1_WIDTH EQU $04
|
||||
|
||||
; SafariZoneSecretHouse_h map_id=222
|
||||
SAFARI_ZONE_SECRET_HOUSE_HEIGHT EQU $04
|
||||
SAFARI_ZONE_SECRET_HOUSE_WIDTH EQU $04
|
||||
|
||||
; SafariZoneRestHouse2_h map_id=223
|
||||
SAFARI_ZONE_REST_HOUSE_2_HEIGHT EQU $04
|
||||
SAFARI_ZONE_REST_HOUSE_2_WIDTH EQU $04
|
||||
|
||||
; SafariZoneRestHouse3_h map_id=224
|
||||
SAFARI_ZONE_REST_HOUSE_3_HEIGHT EQU $04
|
||||
SAFARI_ZONE_REST_HOUSE_3_WIDTH EQU $04
|
||||
|
||||
; SafariZoneRestHouse4_h map_id=225
|
||||
SAFARI_ZONE_REST_HOUSE_4_HEIGHT EQU $04
|
||||
SAFARI_ZONE_REST_HOUSE_4_WIDTH EQU $04
|
||||
|
||||
; UnknownDungeon2_h map_id=226
|
||||
UNKNOWN_DUNGEON_2_HEIGHT EQU $09
|
||||
UNKNOWN_DUNGEON_2_WIDTH EQU $0f
|
||||
|
||||
; UnknownDungeon3_h map_id=227
|
||||
UNKNOWN_DUNGEON_3_HEIGHT EQU $09
|
||||
UNKNOWN_DUNGEON_3_WIDTH EQU $0f
|
||||
|
||||
; UnknownDungeon1_h map_id=228
|
||||
UNKNOWN_DUNGEON_1_HEIGHT EQU $09
|
||||
UNKNOWN_DUNGEON_1_WIDTH EQU $0f
|
||||
|
||||
; NameRater_h map_id=229
|
||||
NAME_RATERS_HOUSE_HEIGHT EQU $04
|
||||
NAME_RATERS_HOUSE_WIDTH EQU $04
|
||||
|
||||
; CeruleanHouse2_h map_id=230
|
||||
CERULEAN_HOUSE_2_HEIGHT EQU $04
|
||||
CERULEAN_HOUSE_2_WIDTH EQU $04
|
||||
|
||||
; RockTunnel2_h map_id=232
|
||||
ROCK_TUNNEL_2_HEIGHT EQU $12
|
||||
ROCK_TUNNEL_2_WIDTH EQU $14
|
||||
|
||||
; SilphCo9_h map_id=233
|
||||
SILPH_CO_9F_HEIGHT EQU $09
|
||||
SILPH_CO_9F_WIDTH EQU $0d
|
||||
|
||||
; SilphCo10_h map_id=234
|
||||
SILPH_CO_10F_HEIGHT EQU $09
|
||||
SILPH_CO_10F_WIDTH EQU $08
|
||||
|
||||
; SilphCo11_h map_id=235
|
||||
SILPH_CO_11F_HEIGHT EQU $09
|
||||
SILPH_CO_11F_WIDTH EQU $09
|
||||
|
||||
; SilphCoElevator_h map_id=236
|
||||
SILPH_CO_ELEVATOR_HEIGHT EQU $02
|
||||
SILPH_CO_ELEVATOR_WIDTH EQU $02
|
||||
|
||||
; BattleCenterM_h map_id=239
|
||||
BATTLE_CENTER_HEIGHT EQU $04
|
||||
BATTLE_CENTER_WIDTH EQU $05
|
||||
|
||||
; TradeCenterM_h map_id=240
|
||||
TRADE_CENTER_HEIGHT EQU $04
|
||||
TRADE_CENTER_WIDTH EQU $05
|
||||
|
||||
; Lorelei_h map_id=245
|
||||
LORELEIS_ROOM_HEIGHT EQU $06
|
||||
LORELEIS_ROOM_WIDTH EQU $05
|
||||
|
||||
; Bruno_h map_id=246
|
||||
BRUNOS_ROOM_HEIGHT EQU $06
|
||||
BRUNOS_ROOM_WIDTH EQU $05
|
||||
|
||||
; Agatha_h map_id=247
|
||||
AGATHAS_ROOM_HEIGHT EQU $06
|
||||
AGATHAS_ROOM_WIDTH EQU $05
|
179
constants/move_constants.asm
Normal file
179
constants/move_constants.asm
Normal file
|
@ -0,0 +1,179 @@
|
|||
POUND EQU $01
|
||||
KARATE_CHOP EQU $02
|
||||
DOUBLESLAP EQU $03
|
||||
COMET_PUNCH EQU $04
|
||||
MEGA_PUNCH EQU $05
|
||||
PAY_DAY EQU $06
|
||||
FIRE_PUNCH EQU $07
|
||||
ICE_PUNCH EQU $08
|
||||
THUNDERPUNCH EQU $09
|
||||
SCRATCH EQU $0A
|
||||
VICEGRIP EQU $0B
|
||||
GUILLOTINE EQU $0C
|
||||
RAZOR_WIND EQU $0D
|
||||
SWORDS_DANCE EQU $0E
|
||||
CUT EQU $0F
|
||||
GUST EQU $10
|
||||
WING_ATTACK EQU $11
|
||||
WHIRLWIND EQU $12
|
||||
FLY EQU $13
|
||||
BIND EQU $14
|
||||
SLAM EQU $15
|
||||
VINE_WHIP EQU $16
|
||||
STOMP EQU $17
|
||||
DOUBLE_KICK EQU $18
|
||||
MEGA_KICK EQU $19
|
||||
JUMP_KICK EQU $1A
|
||||
ROLLING_KICK EQU $1B
|
||||
SAND_ATTACK EQU $1C
|
||||
HEADBUTT EQU $1D
|
||||
HORN_ATTACK EQU $1E
|
||||
FURY_ATTACK EQU $1F
|
||||
HORN_DRILL EQU $20
|
||||
TACKLE EQU $21
|
||||
BODY_SLAM EQU $22
|
||||
WRAP EQU $23
|
||||
TAKE_DOWN EQU $24
|
||||
THRASH EQU $25
|
||||
DOUBLE_EDGE EQU $26
|
||||
TAIL_WHIP EQU $27
|
||||
POISON_STING EQU $28
|
||||
TWINEEDLE EQU $29
|
||||
PIN_MISSILE EQU $2A
|
||||
LEER EQU $2B
|
||||
BITE EQU $2C
|
||||
GROWL EQU $2D
|
||||
ROAR EQU $2E
|
||||
SING EQU $2F
|
||||
SUPERSONIC EQU $30
|
||||
SONICBOOM EQU $31
|
||||
DISABLE EQU $32
|
||||
ACID EQU $33
|
||||
EMBER EQU $34
|
||||
FLAMETHROWER EQU $35
|
||||
MIST EQU $36
|
||||
WATER_GUN EQU $37
|
||||
HYDRO_PUMP EQU $38
|
||||
SURF EQU $39
|
||||
ICE_BEAM EQU $3A
|
||||
BLIZZARD EQU $3B
|
||||
PSYBEAM EQU $3C
|
||||
BUBBLEBEAM EQU $3D
|
||||
AURORA_BEAM EQU $3E
|
||||
HYPER_BEAM EQU $3F
|
||||
PECK EQU $40
|
||||
DRILL_PECK EQU $41
|
||||
SUBMISSION EQU $42
|
||||
LOW_KICK EQU $43
|
||||
COUNTER EQU $44
|
||||
SEISMIC_TOSS EQU $45
|
||||
STRENGTH EQU $46
|
||||
ABSORB EQU $47
|
||||
MEGA_DRAIN EQU $48
|
||||
LEECH_SEED EQU $49
|
||||
GROWTH EQU $4A
|
||||
RAZOR_LEAF EQU $4B
|
||||
SOLARBEAM EQU $4C
|
||||
POISONPOWDER EQU $4D
|
||||
STUN_SPORE EQU $4E
|
||||
SLEEP_POWDER EQU $4F
|
||||
PETAL_DANCE EQU $50
|
||||
STRING_SHOT EQU $51
|
||||
DRAGON_RAGE EQU $52
|
||||
FIRE_SPIN EQU $53
|
||||
THUNDERSHOCK EQU $54
|
||||
THUNDERBOLT EQU $55
|
||||
THUNDER_WAVE EQU $56
|
||||
THUNDER EQU $57
|
||||
ROCK_THROW EQU $58
|
||||
EARTHQUAKE EQU $59
|
||||
FISSURE EQU $5A
|
||||
DIG EQU $5B
|
||||
TOXIC EQU $5C
|
||||
CONFUSION EQU $5D
|
||||
PSYCHIC_M EQU $5E
|
||||
HYPNOSIS EQU $5F
|
||||
MEDITATE EQU $60
|
||||
AGILITY EQU $61
|
||||
QUICK_ATTACK EQU $62
|
||||
RAGE EQU $63
|
||||
TELEPORT EQU $64
|
||||
NIGHT_SHADE EQU $65
|
||||
MIMIC EQU $66
|
||||
SCREECH EQU $67
|
||||
DOUBLE_TEAM EQU $68
|
||||
RECOVER EQU $69
|
||||
HARDEN EQU $6A
|
||||
MINIMIZE EQU $6B
|
||||
SMOKESCREEN EQU $6C
|
||||
CONFUSE_RAY EQU $6D
|
||||
WITHDRAW EQU $6E
|
||||
DEFENSE_CURL EQU $6F
|
||||
BARRIER EQU $70
|
||||
LIGHT_SCREEN EQU $71
|
||||
HAZE EQU $72
|
||||
REFLECT EQU $73
|
||||
FOCUS_ENERGY EQU $74
|
||||
BIDE EQU $75
|
||||
METRONOME EQU $76
|
||||
MIRROR_MOVE EQU $77
|
||||
SELFDESTRUCT EQU $78
|
||||
EGG_BOMB EQU $79
|
||||
LICK EQU $7A
|
||||
SMOG EQU $7B
|
||||
SLUDGE EQU $7C
|
||||
BONE_CLUB EQU $7D
|
||||
FIRE_BLAST EQU $7E
|
||||
WATERFALL EQU $7F
|
||||
CLAMP EQU $80
|
||||
SWIFT EQU $81
|
||||
SKULL_BASH EQU $82
|
||||
SPIKE_CANNON EQU $83
|
||||
CONSTRICT EQU $84
|
||||
AMNESIA EQU $85
|
||||
KINESIS EQU $86
|
||||
SOFTBOILED EQU $87
|
||||
HI_JUMP_KICK EQU $88
|
||||
GLARE EQU $89
|
||||
DREAM_EATER EQU $8A
|
||||
POISON_GAS EQU $8B
|
||||
BARRAGE EQU $8C
|
||||
LEECH_LIFE EQU $8D
|
||||
LOVELY_KISS EQU $8E
|
||||
SKY_ATTACK EQU $8F
|
||||
TRANSFORM EQU $90
|
||||
BUBBLE EQU $91
|
||||
DIZZY_PUNCH EQU $92
|
||||
SPORE EQU $93
|
||||
FLASH EQU $94
|
||||
PSYWAVE EQU $95
|
||||
SPLASH EQU $96
|
||||
ACID_ARMOR EQU $97
|
||||
CRABHAMMER EQU $98
|
||||
EXPLOSION EQU $99
|
||||
FURY_SWIPES EQU $9A
|
||||
BONEMERANG EQU $9B
|
||||
REST EQU $9C
|
||||
ROCK_SLIDE EQU $9D
|
||||
HYPER_FANG EQU $9E
|
||||
SHARPEN EQU $9F
|
||||
CONVERSION EQU $A0
|
||||
TRI_ATTACK EQU $A1
|
||||
SUPER_FANG EQU $A2
|
||||
SLASH EQU $A3
|
||||
SUBSTITUTE EQU $A4
|
||||
STRUGGLE EQU $A5
|
||||
; these do double duty as animation identifiers
|
||||
SHOWPIC_ANIM EQU $A6 ; redraw monster pic
|
||||
XSTATITEM_ANIM EQU $AE ; use X Attack/Defense/Speed/Special
|
||||
SLP_ANIM EQU $BD ; sleeping monster
|
||||
CONF_ANIM EQU $BF ; confused monster
|
||||
TOSS_ANIM EQU $C1 ; toss Poké Ball
|
||||
SHAKE_ANIM EQU $C2 ; shaking Poké Ball when catching monster
|
||||
POOF_ANIM EQU $C3 ; puff of smoke
|
||||
BLOCKBALL_ANIM EQU $C4 ; trainer knocks away Poké Ball
|
||||
GREATTOSS_ANIM EQU $C5 ; toss Great Ball
|
||||
ULTRATOSS_ANIM EQU $C6 ; toss Ultra Ball or Master Ball
|
||||
HIDEPIC_ANIM EQU $C8 ; monster disappears
|
||||
ROCK_ANIM EQU $C9 ; throw rock
|
||||
BAIT_ANIM EQU $CA ; throw bait
|
76
constants/move_effect_constants.asm
Normal file
76
constants/move_effect_constants.asm
Normal file
|
@ -0,0 +1,76 @@
|
|||
; tentative move effect constants
|
||||
; {stat}_(UP|DOWN)(1|2) means that the move raises the user's (or lowers the target's) corresponding stat modifier by 1 (or 2) stages
|
||||
; {status condition}_side_effect means that the move has a side chance of causing that condition
|
||||
; {status condition}_effect means that the move causes the status condition every time it hits the target
|
||||
NO_ADDITIONAL_EFFECT EQU $00
|
||||
POISON_SIDE_EFFECT1 EQU $02
|
||||
DRAIN_HP_EFFECT EQU $03
|
||||
BURN_SIDE_EFFECT1 EQU $04
|
||||
FREEZE_SIDE_EFFECT EQU $05
|
||||
PARALYZE_SIDE_EFFECT1 EQU $06
|
||||
EXPLODE_EFFECT EQU $07 ; Explosion, Self Destruct
|
||||
DREAM_EATER_EFFECT EQU $08
|
||||
MIRROR_MOVE_EFFECT EQU $09
|
||||
ATTACK_UP1_EFFECT EQU $0A
|
||||
DEFENSE_UP1_EFFECT EQU $0B
|
||||
SPECIAL_UP1_EFFECT EQU $0D
|
||||
EVASION_UP1_EFFECT EQU $0F
|
||||
PAY_DAY_EFFECT EQU $10
|
||||
SWIFT_EFFECT EQU $11
|
||||
ATTACK_DOWN1_EFFECT EQU $12
|
||||
DEFENSE_DOWN1_EFFECT EQU $13
|
||||
SPEED_DOWN1_EFFECT EQU $14
|
||||
ACCURACY_DOWN1_EFFECT EQU $16
|
||||
CONVERSION_EFFECT EQU $18
|
||||
HAZE_EFFECT EQU $19
|
||||
BIDE_EFFECT EQU $1A
|
||||
THRASH_PETAL_DANCE_EFFECT EQU $1B
|
||||
SWITCH_AND_TELEPORT_EFFECT EQU $1C
|
||||
TWO_TO_FIVE_ATTACKS_EFFECT EQU $1D
|
||||
FLINCH_SIDE_EFFECT1 EQU $1F
|
||||
SLEEP_EFFECT EQU $20
|
||||
POISON_SIDE_EFFECT2 EQU $21
|
||||
BURN_SIDE_EFFECT2 EQU $22
|
||||
PARALYZE_SIDE_EFFECT2 EQU $24
|
||||
FLINCH_SIDE_EFFECT2 EQU $25
|
||||
OHKO_EFFECT EQU $26 ; moves like Horn Drill
|
||||
CHARGE_EFFECT EQU $27 ; moves like Solar Beam
|
||||
SUPER_FANG_EFFECT EQU $28
|
||||
SPECIAL_DAMAGE_EFFECT EQU $29 ; Seismic Toss, Night Shade, Sonic Boom, Dragon Rage, Psywave
|
||||
TRAPPING_EFFECT EQU $2A ; moves like Wrap
|
||||
FLY_EFFECT EQU $2B
|
||||
ATTACK_TWICE_EFFECT EQU $2C
|
||||
JUMP_KICK_EFFECT EQU $2D ; Jump Kick and Hi Jump Kick effect
|
||||
MIST_EFFECT EQU $2E
|
||||
FOCUS_ENERGY_EFFECT EQU $2F
|
||||
RECOIL_EFFECT EQU $30 ; moves like Double Edge
|
||||
CONFUSION_EFFECT EQU $31 ; Confuse Ray, Supersonic (not the move Confusion)
|
||||
ATTACK_UP2_EFFECT EQU $32
|
||||
DEFENSE_UP2_EFFECT EQU $33
|
||||
SPEED_UP2_EFFECT EQU $34
|
||||
SPECIAL_UP2_EFFECT EQU $35
|
||||
HEAL_EFFECT EQU $38 ; Recover, Softboiled, Rest
|
||||
TRANSFORM_EFFECT EQU $39
|
||||
DEFENSE_DOWN2_EFFECT EQU $3B
|
||||
LIGHT_SCREEN_EFFECT EQU $40
|
||||
REFLECT_EFFECT EQU $41
|
||||
POISON_EFFECT EQU $42
|
||||
PARALYZE_EFFECT EQU $43
|
||||
ATTACK_DOWN_SIDE_EFFECT EQU $44
|
||||
DEFENSE_DOWN_SIDE_EFFECT EQU $45
|
||||
SPEED_DOWN_SIDE_EFFECT EQU $46
|
||||
SPECIAL_DOWN_SIDE_EFFECT EQU $47
|
||||
CONFUSION_SIDE_EFFECT EQU $4C
|
||||
TWINEEDLE_EFFECT EQU $4D
|
||||
SUBSTITUTE_EFFECT EQU $4F
|
||||
HYPER_BEAM_EFFECT EQU $50
|
||||
RAGE_EFFECT EQU $51
|
||||
MIMIC_EFFECT EQU $52
|
||||
METRONOME_EFFECT EQU $53
|
||||
LEECH_SEED_EFFECT EQU $54
|
||||
SPLASH_EFFECT EQU $55
|
||||
DISABLE_EFFECT EQU $56
|
||||
|
||||
; fixed damage constants
|
||||
SONICBOOM_DAMAGE EQU 20
|
||||
DRAGON_RAGE_DAMAGE EQU 40
|
9
constants/oam_constants.asm
Executable file
9
constants/oam_constants.asm
Executable file
|
@ -0,0 +1,9 @@
|
|||
; OAM flags used by this game
|
||||
OAMFLAG_ENDOFDATA EQU %00000001 ; pseudo OAM flag, only used by game logic
|
||||
OAMFLAG_CANBEMASKED EQU %00000010 ; pseudo OAM flag, only used by game logic
|
||||
OAMFLAG_VFLIPPED EQU %00100000 ; OAM flag flips the sprite vertically.
|
||||
; Used for making left facing sprites face right and to alternate between left and right foot animation when walking up or down
|
||||
|
||||
; OAM attribute flags
|
||||
OAM_HFLIP EQU %00100000 ; horizontal flip
|
||||
OAM_VFLIP EQU %01000000 ; vertical flip
|
38
constants/palette_constants.asm
Normal file
38
constants/palette_constants.asm
Normal file
|
@ -0,0 +1,38 @@
|
|||
; super game boy palettes
|
||||
PAL_ROUTE EQU $00
|
||||
PAL_PALLET EQU $01
|
||||
PAL_VIRIDIAN EQU $02
|
||||
PAL_PEWTER EQU $03
|
||||
PAL_CERULEAN EQU $04
|
||||
PAL_LAVENDER EQU $05
|
||||
PAL_VERMILION EQU $06
|
||||
PAL_CELADON EQU $07
|
||||
PAL_FUCHSIA EQU $08
|
||||
PAL_CINNABAR EQU $09
|
||||
PAL_INDIGO EQU $0A
|
||||
PAL_SAFFRON EQU $0B
|
||||
PAL_TOWNMAP EQU $0C
|
||||
PAL_LOGO1 EQU $0D
|
||||
; XXX
|
||||
PAL_LOGO2 EQU $0F
|
||||
PAL_MEWMON EQU $10
|
||||
PAL_BLUEMON EQU $11
|
||||
PAL_REDMON EQU $12
|
||||
PAL_CYANMON EQU $13
|
||||
PAL_PURPLEMON EQU $14
|
||||
PAL_BROWNMON EQU $15
|
||||
PAL_GREENMON EQU $16
|
||||
PAL_PINKMON EQU $17
|
||||
PAL_YELLOWMON EQU $18
|
||||
PAL_GREYMON EQU $19
|
||||
PAL_SLOTS1 EQU $1A
|
||||
PAL_SLOTS2 EQU $1B
|
||||
PAL_SLOTS3 EQU $1C
|
||||
PAL_SLOTS4 EQU $1D
|
||||
PAL_BLACK EQU $1E
|
||||
PAL_GREENBAR EQU $1F
|
||||
PAL_YELLOWBAR EQU $20
|
||||
PAL_REDBAR EQU $21
|
||||
PAL_BADGE EQU $22
|
||||
PAL_CAVE EQU $23
|
||||
; XXX
|
151
constants/pokedex_constants.asm
Normal file
151
constants/pokedex_constants.asm
Normal file
|
@ -0,0 +1,151 @@
|
|||
DEX_BULBASAUR EQU 1
|
||||
DEX_IVYSAUR EQU 2
|
||||
DEX_VENUSAUR EQU 3
|
||||
DEX_CHARMANDER EQU 4
|
||||
DEX_CHARMELEON EQU 5
|
||||
DEX_CHARIZARD EQU 6
|
||||
DEX_SQUIRTLE EQU 7
|
||||
DEX_WARTORTLE EQU 8
|
||||
DEX_BLASTOISE EQU 9
|
||||
DEX_CATERPIE EQU 10
|
||||
DEX_METAPOD EQU 11
|
||||
DEX_BUTTERFREE EQU 12
|
||||
DEX_WEEDLE EQU 13
|
||||
DEX_KAKUNA EQU 14
|
||||
DEX_BEEDRILL EQU 15
|
||||
DEX_PIDGEY EQU 16
|
||||
DEX_PIDGEOTTO EQU 17
|
||||
DEX_PIDGEOT EQU 18
|
||||
DEX_RATTATA EQU 19
|
||||
DEX_RATICATE EQU 20
|
||||
DEX_SPEAROW EQU 21
|
||||
DEX_FEAROW EQU 22
|
||||
DEX_EKANS EQU 23
|
||||
DEX_ARBOK EQU 24
|
||||
DEX_PIKACHU EQU 25
|
||||
DEX_RAICHU EQU 26
|
||||
DEX_SANDSHREW EQU 27
|
||||
DEX_SANDSLASH EQU 28
|
||||
DEX_NIDORAN_F EQU 29
|
||||
DEX_NIDORINA EQU 30
|
||||
DEX_NIDOQUEEN EQU 31
|
||||
DEX_NIDORAN_M EQU 32
|
||||
DEX_NIDORINO EQU 33
|
||||
DEX_NIDOKING EQU 34
|
||||
DEX_CLEFAIRY EQU 35
|
||||
DEX_CLEFABLE EQU 36
|
||||
DEX_VULPIX EQU 37
|
||||
DEX_NINETALES EQU 38
|
||||
DEX_JIGGLYPUFF EQU 39
|
||||
DEX_WIGGLYTUFF EQU 40
|
||||
DEX_ZUBAT EQU 41
|
||||
DEX_GOLBAT EQU 42
|
||||
DEX_ODDISH EQU 43
|
||||
DEX_GLOOM EQU 44
|
||||
DEX_VILEPLUME EQU 45
|
||||
DEX_PARAS EQU 46
|
||||
DEX_PARASECT EQU 47
|
||||
DEX_VENONAT EQU 48
|
||||
DEX_VENOMOTH EQU 49
|
||||
DEX_DIGLETT EQU 50
|
||||
DEX_DUGTRIO EQU 51
|
||||
DEX_MEOWTH EQU 52
|
||||
DEX_PERSIAN EQU 53
|
||||
DEX_PSYDUCK EQU 54
|
||||
DEX_GOLDUCK EQU 55
|
||||
DEX_MANKEY EQU 56
|
||||
DEX_PRIMEAPE EQU 57
|
||||
DEX_GROWLITHE EQU 58
|
||||
DEX_ARCANINE EQU 59
|
||||
DEX_POLIWAG EQU 60
|
||||
DEX_POLIWHIRL EQU 61
|
||||
DEX_POLIWRATH EQU 62
|
||||
DEX_ABRA EQU 63
|
||||
DEX_KADABRA EQU 64
|
||||
DEX_ALAKAZAM EQU 65
|
||||
DEX_MACHOP EQU 66
|
||||
DEX_MACHOKE EQU 67
|
||||
DEX_MACHAMP EQU 68
|
||||
DEX_BELLSPROUT EQU 69
|
||||
DEX_WEEPINBELL EQU 70
|
||||
DEX_VICTREEBEL EQU 71
|
||||
DEX_TENTACOOL EQU 72
|
||||
DEX_TENTACRUEL EQU 73
|
||||
DEX_GEODUDE EQU 74
|
||||
DEX_GRAVELER EQU 75
|
||||
DEX_GOLEM EQU 76
|
||||
DEX_PONYTA EQU 77
|
||||
DEX_RAPIDASH EQU 78
|
||||
DEX_SLOWPOKE EQU 79
|
||||
DEX_SLOWBRO EQU 80
|
||||
DEX_MAGNEMITE EQU 81
|
||||
DEX_MAGNETON EQU 82
|
||||
DEX_FARFETCH_D EQU 83
|
||||
DEX_DODUO EQU 84
|
||||
DEX_DODRIO EQU 85
|
||||
DEX_SEEL EQU 86
|
||||
DEX_DEWGONG EQU 87
|
||||
DEX_GRIMER EQU 88
|
||||
DEX_MUK EQU 89
|
||||
DEX_SHELLDER EQU 90
|
||||
DEX_CLOYSTER EQU 91
|
||||
DEX_GASTLY EQU 92
|
||||
DEX_HAUNTER EQU 93
|
||||
DEX_GENGAR EQU 94
|
||||
DEX_ONIX EQU 95
|
||||
DEX_DROWZEE EQU 96
|
||||
DEX_HYPNO EQU 97
|
||||
DEX_KRABBY EQU 98
|
||||
DEX_KINGLER EQU 99
|
||||
DEX_VOLTORB EQU 100
|
||||
DEX_ELECTRODE EQU 101
|
||||
DEX_EXEGGCUTE EQU 102
|
||||
DEX_EXEGGUTOR EQU 103
|
||||
DEX_CUBONE EQU 104
|
||||
DEX_MAROWAK EQU 105
|
||||
DEX_HITMONLEE EQU 106
|
||||
DEX_HITMONCHAN EQU 107
|
||||
DEX_LICKITUNG EQU 108
|
||||
DEX_KOFFING EQU 109
|
||||
DEX_WEEZING EQU 110
|
||||
DEX_RHYHORN EQU 111
|
||||
DEX_RHYDON EQU 112
|
||||
DEX_CHANSEY EQU 113
|
||||
DEX_TANGELA EQU 114
|
||||
DEX_KANGASKHAN EQU 115
|
||||
DEX_HORSEA EQU 116
|
||||
DEX_SEADRA EQU 117
|
||||
DEX_GOLDEEN EQU 118
|
||||
DEX_SEAKING EQU 119
|
||||
DEX_STARYU EQU 120
|
||||
DEX_STARMIE EQU 121
|
||||
DEX_MR_MIME EQU 122
|
||||
DEX_SCYTHER EQU 123
|
||||
DEX_JYNX EQU 124
|
||||
DEX_ELECTABUZZ EQU 125
|
||||
DEX_MAGMAR EQU 126
|
||||
DEX_PINSIR EQU 127
|
||||
DEX_TAUROS EQU 128
|
||||
DEX_MAGIKARP EQU 129
|
||||
DEX_GYARADOS EQU 130
|
||||
DEX_LAPRAS EQU 131
|
||||
DEX_DITTO EQU 132
|
||||
DEX_EEVEE EQU 133
|
||||
DEX_VAPOREON EQU 134
|
||||
DEX_JOLTEON EQU 135
|
||||
DEX_FLAREON EQU 136
|
||||
DEX_PORYGON EQU 137
|
||||
DEX_OMANYTE EQU 138
|
||||
DEX_OMASTAR EQU 139
|
||||
DEX_KABUTO EQU 140
|
||||
DEX_KABUTOPS EQU 141
|
||||
DEX_AERODACTYL EQU 142
|
||||
DEX_SNORLAX EQU 143
|
||||
DEX_ARTICUNO EQU 144
|
||||
DEX_ZAPDOS EQU 145
|
||||
DEX_MOLTRES EQU 146
|
||||
DEX_DRATINI EQU 147
|
||||
DEX_DRAGONAIR EQU 148
|
||||
DEX_DRAGONITE EQU 149
|
||||
DEX_MEWTWO EQU 150
|
||||
DEX_MEW EQU 151
|
154
constants/pokemon_constants.asm
Normal file
154
constants/pokemon_constants.asm
Normal file
|
@ -0,0 +1,154 @@
|
|||
RHYDON EQU $01
|
||||
KANGASKHAN EQU $02
|
||||
NIDORAN_M EQU $03
|
||||
CLEFAIRY EQU $04
|
||||
SPEAROW EQU $05
|
||||
VOLTORB EQU $06
|
||||
NIDOKING EQU $07
|
||||
SLOWBRO EQU $08
|
||||
IVYSAUR EQU $09
|
||||
EXEGGUTOR EQU $0A
|
||||
LICKITUNG EQU $0B
|
||||
EXEGGCUTE EQU $0C
|
||||
GRIMER EQU $0D
|
||||
GENGAR EQU $0E
|
||||
NIDORAN_F EQU $0F
|
||||
NIDOQUEEN EQU $10
|
||||
CUBONE EQU $11
|
||||
RHYHORN EQU $12
|
||||
LAPRAS EQU $13
|
||||
ARCANINE EQU $14
|
||||
MEW EQU $15
|
||||
GYARADOS EQU $16
|
||||
SHELLDER EQU $17
|
||||
TENTACOOL EQU $18
|
||||
GASTLY EQU $19
|
||||
SCYTHER EQU $1A
|
||||
STARYU EQU $1B
|
||||
BLASTOISE EQU $1C
|
||||
PINSIR EQU $1D
|
||||
TANGELA EQU $1E
|
||||
GROWLITHE EQU $21
|
||||
ONIX EQU $22
|
||||
FEAROW EQU $23
|
||||
PIDGEY EQU $24
|
||||
SLOWPOKE EQU $25
|
||||
KADABRA EQU $26
|
||||
GRAVELER EQU $27
|
||||
CHANSEY EQU $28
|
||||
MACHOKE EQU $29
|
||||
MR_MIME EQU $2A
|
||||
HITMONLEE EQU $2B
|
||||
HITMONCHAN EQU $2C
|
||||
ARBOK EQU $2D
|
||||
PARASECT EQU $2E
|
||||
PSYDUCK EQU $2F
|
||||
DROWZEE EQU $30
|
||||
GOLEM EQU $31
|
||||
MAGMAR EQU $33
|
||||
ELECTABUZZ EQU $35
|
||||
MAGNETON EQU $36
|
||||
KOFFING EQU $37
|
||||
MANKEY EQU $39
|
||||
SEEL EQU $3A
|
||||
DIGLETT EQU $3B
|
||||
TAUROS EQU $3C
|
||||
FARFETCH_D EQU $40
|
||||
VENONAT EQU $41
|
||||
DRAGONITE EQU $42
|
||||
DODUO EQU $46
|
||||
POLIWAG EQU $47
|
||||
JYNX EQU $48
|
||||
MOLTRES EQU $49
|
||||
ARTICUNO EQU $4A
|
||||
ZAPDOS EQU $4B
|
||||
DITTO EQU $4C
|
||||
MEOWTH EQU $4D
|
||||
KRABBY EQU $4E
|
||||
VULPIX EQU $52
|
||||
NINETALES EQU $53
|
||||
PIKACHU EQU $54
|
||||
RAICHU EQU $55
|
||||
DRATINI EQU $58
|
||||
DRAGONAIR EQU $59
|
||||
KABUTO EQU $5A
|
||||
KABUTOPS EQU $5B
|
||||
HORSEA EQU $5C
|
||||
SEADRA EQU $5D
|
||||
SANDSHREW EQU $60
|
||||
SANDSLASH EQU $61
|
||||
OMANYTE EQU $62
|
||||
OMASTAR EQU $63
|
||||
JIGGLYPUFF EQU $64
|
||||
WIGGLYTUFF EQU $65
|
||||
EEVEE EQU $66
|
||||
FLAREON EQU $67
|
||||
JOLTEON EQU $68
|
||||
VAPOREON EQU $69
|
||||
MACHOP EQU $6A
|
||||
ZUBAT EQU $6B
|
||||
EKANS EQU $6C
|
||||
PARAS EQU $6D
|
||||
POLIWHIRL EQU $6E
|
||||
POLIWRATH EQU $6F
|
||||
WEEDLE EQU $70
|
||||
KAKUNA EQU $71
|
||||
BEEDRILL EQU $72
|
||||
DODRIO EQU $74
|
||||
PRIMEAPE EQU $75
|
||||
DUGTRIO EQU $76
|
||||
VENOMOTH EQU $77
|
||||
DEWGONG EQU $78
|
||||
CATERPIE EQU $7B
|
||||
METAPOD EQU $7C
|
||||
BUTTERFREE EQU $7D
|
||||
MACHAMP EQU $7E
|
||||
GOLDUCK EQU $80
|
||||
HYPNO EQU $81
|
||||
GOLBAT EQU $82
|
||||
MEWTWO EQU $83
|
||||
SNORLAX EQU $84
|
||||
MAGIKARP EQU $85
|
||||
MUK EQU $88
|
||||
KINGLER EQU $8A
|
||||
CLOYSTER EQU $8B
|
||||
ELECTRODE EQU $8D
|
||||
CLEFABLE EQU $8E
|
||||
WEEZING EQU $8F
|
||||
PERSIAN EQU $90
|
||||
MAROWAK EQU $91
|
||||
HAUNTER EQU $93
|
||||
ABRA EQU $94
|
||||
ALAKAZAM EQU $95
|
||||
PIDGEOTTO EQU $96
|
||||
PIDGEOT EQU $97
|
||||
STARMIE EQU $98
|
||||
BULBASAUR EQU $99
|
||||
VENUSAUR EQU $9A
|
||||
TENTACRUEL EQU $9B
|
||||
GOLDEEN EQU $9D
|
||||
SEAKING EQU $9E
|
||||
PONYTA EQU $A3
|
||||
RAPIDASH EQU $A4
|
||||
RATTATA EQU $A5
|
||||
RATICATE EQU $A6
|
||||
NIDORINO EQU $A7
|
||||
NIDORINA EQU $A8
|
||||
GEODUDE EQU $A9
|
||||
PORYGON EQU $AA
|
||||
AERODACTYL EQU $AB
|
||||
MAGNEMITE EQU $AD
|
||||
CHARMANDER EQU $B0
|
||||
SQUIRTLE EQU $B1
|
||||
CHARMELEON EQU $B2
|
||||
WARTORTLE EQU $B3
|
||||
CHARIZARD EQU $B4
|
||||
FOSSIL_KABUTOPS EQU $B6
|
||||
FOSSIL_AERODACTYL EQU $B7
|
||||
MON_GHOST EQU $B8
|
||||
ODDISH EQU $B9
|
||||
GLOOM EQU $BA
|
||||
VILEPLUME EQU $BB
|
||||
BELLSPROUT EQU $BC
|
||||
WEEPINBELL EQU $BD
|
||||
VICTREEBEL EQU $BE
|
89
constants/sprite_constants.asm
Executable file
89
constants/sprite_constants.asm
Executable file
|
@ -0,0 +1,89 @@
|
|||
; pokemon's overworld sprites
|
||||
SPRITE_MON EQU $0
|
||||
SPRITE_BALL_M EQU $1
|
||||
SPRITE_HELIX EQU $2
|
||||
SPRITE_FAIRY EQU $3
|
||||
SPRITE_BIRD_M EQU $4
|
||||
SPRITE_WATER EQU $5
|
||||
SPRITE_BUG EQU $6
|
||||
SPRITE_GRASS EQU $7
|
||||
SPRITE_SNAKE EQU $8
|
||||
SPRITE_QUADRUPED EQU $9
|
||||
|
||||
; overworld sprites
|
||||
SPRITE_RED EQU $01
|
||||
SPRITE_BLUE EQU $02
|
||||
SPRITE_OAK EQU $03
|
||||
SPRITE_BUG_CATCHER EQU $04
|
||||
SPRITE_SLOWBRO EQU $05
|
||||
SPRITE_LASS EQU $06
|
||||
SPRITE_BLACK_HAIR_BOY_1 EQU $07
|
||||
SPRITE_LITTLE_GIRL EQU $08
|
||||
SPRITE_BIRD EQU $09
|
||||
SPRITE_FAT_BALD_GUY EQU $0a
|
||||
SPRITE_GAMBLER EQU $0b
|
||||
SPRITE_BLACK_HAIR_BOY_2 EQU $0c
|
||||
SPRITE_GIRL EQU $0d
|
||||
SPRITE_HIKER EQU $0e
|
||||
SPRITE_FOULARD_WOMAN EQU $0f
|
||||
SPRITE_GENTLEMAN EQU $10
|
||||
SPRITE_DAISY EQU $11
|
||||
SPRITE_BIKER EQU $12
|
||||
SPRITE_SAILOR EQU $13
|
||||
SPRITE_COOK EQU $14
|
||||
SPRITE_BIKE_SHOP_GUY EQU $15
|
||||
SPRITE_MR_FUJI EQU $16
|
||||
SPRITE_GIOVANNI EQU $17
|
||||
SPRITE_ROCKET EQU $18
|
||||
SPRITE_MEDIUM EQU $19
|
||||
SPRITE_WAITER EQU $1a
|
||||
SPRITE_ERIKA EQU $1b
|
||||
SPRITE_MOM_GEISHA EQU $1c
|
||||
SPRITE_BRUNETTE_GIRL EQU $1d
|
||||
SPRITE_LANCE EQU $1e
|
||||
SPRITE_OAK_SCIENTIST_AIDE EQU $1f
|
||||
SPRITE_OAK_AIDE EQU $20
|
||||
SPRITE_ROCKER EQU $21
|
||||
SPRITE_SWIMMER EQU $22
|
||||
SPRITE_WHITE_PLAYER EQU $23
|
||||
SPRITE_GYM_HELPER EQU $24
|
||||
SPRITE_OLD_PERSON EQU $25
|
||||
SPRITE_MART_GUY EQU $26
|
||||
SPRITE_FISHER EQU $27
|
||||
SPRITE_OLD_MEDIUM_WOMAN EQU $28
|
||||
SPRITE_NURSE EQU $29
|
||||
SPRITE_CABLE_CLUB_WOMAN EQU $2a
|
||||
SPRITE_MR_MASTERBALL EQU $2b
|
||||
SPRITE_LAPRAS_GIVER EQU $2c
|
||||
SPRITE_WARDEN EQU $2d
|
||||
SPRITE_SS_CAPTAIN EQU $2e
|
||||
SPRITE_FISHER2 EQU $2f
|
||||
SPRITE_BLACKBELT EQU $30
|
||||
SPRITE_GUARD EQU $31
|
||||
;SPRITE_COP_GUARD EQU $32
|
||||
SPRITE_MOM EQU $33
|
||||
SPRITE_BALDING_GUY EQU $34
|
||||
SPRITE_YOUNG_BOY EQU $35
|
||||
SPRITE_GAMEBOY_KID EQU $36
|
||||
SPRITE_GAMEBOY_KID_COPY EQU $37
|
||||
SPRITE_CLEFAIRY EQU $38
|
||||
SPRITE_AGATHA EQU $39
|
||||
SPRITE_BRUNO EQU $3a
|
||||
SPRITE_LORELEI EQU $3b
|
||||
SPRITE_SEEL EQU $3c
|
||||
SPRITE_BALL EQU $3d
|
||||
SPRITE_OMANYTE EQU $3e
|
||||
SPRITE_BOULDER EQU $3f
|
||||
SPRITE_PAPER_SHEET EQU $40
|
||||
SPRITE_BOOK_MAP_DEX EQU $41
|
||||
SPRITE_CLIPBOARD EQU $42
|
||||
SPRITE_SNORLAX EQU $43
|
||||
SPRITE_OLD_AMBER_COPY EQU $44
|
||||
SPRITE_OLD_AMBER EQU $45
|
||||
SPRITE_LYING_OLD_MAN_UNUSED_1 EQU $46
|
||||
SPRITE_LYING_OLD_MAN_UNUSED_2 EQU $47
|
||||
SPRITE_LYING_OLD_MAN EQU $48
|
||||
|
||||
; different kinds of people events
|
||||
ITEM EQU $80
|
||||
TRAINER EQU $40
|
6
constants/status_constants.asm
Executable file
6
constants/status_constants.asm
Executable file
|
@ -0,0 +1,6 @@
|
|||
; status ailments (masks)
|
||||
SLP EQU %00000111
|
||||
PSN EQU %00001000
|
||||
BRN EQU %00010000
|
||||
FRZ EQU %00100000
|
||||
PAR EQU %01000000
|
48
constants/trainer_constants.asm
Normal file
48
constants/trainer_constants.asm
Normal file
|
@ -0,0 +1,48 @@
|
|||
; sometimes it's necessary to add $C8 to these values
|
||||
YOUNGSTER EQU $01
|
||||
BUG_CATCHER EQU $02
|
||||
LASS EQU $03
|
||||
SAILOR EQU $04
|
||||
JR__TRAINER_M EQU $05
|
||||
JR__TRAINER_F EQU $06
|
||||
POKEMANIAC EQU $07
|
||||
SUPER_NERD EQU $08
|
||||
HIKER EQU $09
|
||||
BIKER EQU $0A
|
||||
BURGLAR EQU $0B
|
||||
ENGINEER EQU $0C
|
||||
JUGGLER_X EQU $0D
|
||||
FISHER EQU $0E
|
||||
SWIMMER EQU $0F
|
||||
CUE_BALL EQU $10
|
||||
GAMBLER EQU $11
|
||||
BEAUTY EQU $12
|
||||
PSYCHIC_TR EQU $13
|
||||
ROCKER EQU $14
|
||||
JUGGLER EQU $15
|
||||
TAMER EQU $16
|
||||
BIRD_KEEPER EQU $17
|
||||
BLACKBELT EQU $18
|
||||
SONY1 EQU $19
|
||||
PROF_OAK EQU $1A
|
||||
CHIEF EQU $1B
|
||||
SCIENTIST EQU $1C
|
||||
GIOVANNI EQU $1D
|
||||
ROCKET EQU $1E
|
||||
COOLTRAINER_M EQU $1F
|
||||
COOLTRAINER_F EQU $20
|
||||
BRUNO EQU $21
|
||||
BROCK EQU $22
|
||||
MISTY EQU $23
|
||||
LT__SURGE EQU $24
|
||||
ERIKA EQU $25
|
||||
KOGA EQU $26
|
||||
BLAINE EQU $27
|
||||
SABRINA EQU $28
|
||||
GENTLEMAN EQU $29
|
||||
SONY2 EQU $2A
|
||||
SONY3 EQU $2B
|
||||
LORELEI EQU $2C
|
||||
CHANNELER EQU $2D
|
||||
AGATHA EQU $2E
|
||||
LANCE EQU $2F
|
16
constants/type_constants.asm
Executable file
16
constants/type_constants.asm
Executable file
|
@ -0,0 +1,16 @@
|
|||
; Elemental types
|
||||
NORMAL EQU $00
|
||||
FIGHTING EQU $01
|
||||
FLYING EQU $02
|
||||
POISON EQU $03
|
||||
GROUND EQU $04
|
||||
ROCK EQU $05
|
||||
BUG EQU $07
|
||||
GHOST EQU $08
|
||||
FIRE EQU $14
|
||||
WATER EQU $15
|
||||
GRASS EQU $16
|
||||
ELECTRIC EQU $17
|
||||
PSYCHIC EQU $18
|
||||
ICE EQU $19
|
||||
DRAGON EQU $1A
|
2
extras
2
extras
|
@ -1 +1 @@
|
|||
Subproject commit c57e0f0706608a4acba89182945bec975a43acfd
|
||||
Subproject commit d8f4e687ebc49d4b135f0d8b7f10a643114a0d8a
|
BIN
gfx/ED_tile.1bpp
Executable file
BIN
gfx/ED_tile.1bpp
Executable file
Binary file not shown.
BIN
gfx/blue/slotmachine1.2bpp
Normal file → Executable file
BIN
gfx/blue/slotmachine1.2bpp
Normal file → Executable file
Binary file not shown.
Binary file not shown.
BIN
gfx/red/slotmachine1.2bpp
Normal file → Executable file
BIN
gfx/red/slotmachine1.2bpp
Normal file → Executable file
Binary file not shown.
116
hram.asm
Normal file
116
hram.asm
Normal file
|
@ -0,0 +1,116 @@
|
|||
|
||||
H_SPRITEWIDTH EQU $FF8B ; in bytes
|
||||
H_SPRITEINTERLACECOUNTER EQU $FF8B
|
||||
H_SPRITEHEIGHT EQU $FF8C ; in bytes
|
||||
H_SPRITEOFFSET EQU $FF8D
|
||||
|
||||
H_SOFTRESETCOUNTER EQU $FF8A ; initialized to 16, decremented each input iteration if the user presses the reset sequence (A+B+S+s). Soft reset when 0 is reached.
|
||||
|
||||
; counters for blinking down arrow
|
||||
H_DOWNARROWBLINKCNT1 EQU $FF8B
|
||||
H_DOWNARROWBLINKCNT2 EQU $FF8C
|
||||
|
||||
; Note: the following multiplication and division addresses are used for multiple purposes
|
||||
; and so they overlap with each other
|
||||
|
||||
H_MULTIPLICAND EQU $FF96 ; 3 bytes, big endian order
|
||||
H_MULTIPLIER EQU $FF99 ; 1 byte
|
||||
H_PRODUCT EQU $FF95 ; 4 bytes, big endian order
|
||||
|
||||
H_DIVIDEND EQU $FF95 ; 4 bytes, big endian order
|
||||
H_DIVISOR EQU $FF99 ; 1 byte
|
||||
H_QUOTIENT EQU $FF95 ; 4 bytes, big endian order
|
||||
H_REMAINDER EQU $FF99 ; 1 byte
|
||||
|
||||
; used to convert numbers to decimal
|
||||
H_PASTLEADINGZEROES EQU $FF95 ; flag to indicate that a nonzero digit has been printed
|
||||
H_NUMTOPRINT EQU $FF96 ; 3 bytes, big endian order
|
||||
H_POWEROFTEN EQU $FF99 ; 3 bytes, big endian order
|
||||
H_SAVEDNUMTOPRINT EQU $FF9C ; 3 bytes, big endian order (to back out of a subtraction)
|
||||
|
||||
H_OLDPRESSEDBUTTONS EQU $FFB1
|
||||
H_NEWLYRELEASEDBUTTONS EQU $FFB2
|
||||
H_NEWLYPRESSEDBUTTONS EQU $FFB3
|
||||
H_CURRENTPRESSEDBUTTONS EQU $FFB4
|
||||
|
||||
H_LOADEDROMBANK EQU $FFB8
|
||||
|
||||
; is automatic background transfer during V-blank enabled?
|
||||
; if nonzero, yes
|
||||
; if zero, no
|
||||
H_AUTOBGTRANSFERENABLED EQU $FFBA
|
||||
|
||||
TRANSFERTOP EQU 0
|
||||
TRANSFERMIDDLE EQU 1
|
||||
TRANSFERBOTTOM EQU 2
|
||||
|
||||
; 00 = top third of background
|
||||
; 01 = middle third of background
|
||||
; 02 = bottom third of background
|
||||
H_AUTOBGTRANSFERPORTION EQU $FFBB
|
||||
|
||||
; the destination address of the automatic background transfer
|
||||
H_AUTOBGTRANSFERDEST EQU $FFBC ; 2 bytes
|
||||
|
||||
; temporary storage for stack pointer during memory transfers that use pop
|
||||
; to increase speed
|
||||
H_SPTEMP EQU $FFBF ; 2 bytes
|
||||
|
||||
; source address for VBlankCopyBgMap function
|
||||
; the first byte doubles as the byte that enabled the transfer.
|
||||
; if it is 0, the transfer is disabled
|
||||
; if it is not 0, the transfer is enabled
|
||||
; this means that XX00 is not a valid source address
|
||||
H_VBCOPYBGSRC EQU $FFC1 ; 2 bytes
|
||||
|
||||
; destination address for VBlankCopyBgMap function
|
||||
H_VBCOPYBGDEST EQU $FFC3 ; 2 bytes
|
||||
|
||||
; number of rows for VBlankCopyBgMap to copy
|
||||
H_VBCOPYBGNUMROWS EQU $FFC5
|
||||
|
||||
; size of VBlankCopy transfer in 16-byte units
|
||||
H_VBCOPYSIZE EQU $FFC6
|
||||
|
||||
; source address for VBlankCopy function
|
||||
H_VBCOPYSRC EQU $FFC7
|
||||
|
||||
; destination address for VBlankCopy function
|
||||
H_VBCOPYDEST EQU $FFC9
|
||||
|
||||
; size of source data for VBlankCopyDouble in 8-byte units
|
||||
H_VBCOPYDOUBLESIZE EQU $FFCB
|
||||
|
||||
; source address for VBlankCopyDouble function
|
||||
H_VBCOPYDOUBLESRC EQU $FFCC
|
||||
|
||||
; destination address for VBlankCopyDouble function
|
||||
H_VBCOPYDOUBLEDEST EQU $FFCE
|
||||
|
||||
; controls whether a row or column of 2x2 tile blocks is redrawn in V-blank
|
||||
; 00 = no redraw
|
||||
; 01 = redraw column
|
||||
; 02 = redraw row
|
||||
H_SCREENEDGEREDRAW EQU $FFD0
|
||||
|
||||
REDRAWCOL EQU 1
|
||||
REDRAWROW EQU 2
|
||||
|
||||
H_SCREENEDGEREDRAWADDR EQU $FFD1
|
||||
|
||||
H_RAND1 EQU $FFD3
|
||||
H_RAND2 EQU $FFD4
|
||||
|
||||
H_FRAMECOUNTER EQU $FFD5 ; decremented every V-blank (used for delays)
|
||||
|
||||
; V-blank sets this to 0 each time it runs.
|
||||
; So, by setting it to a nonzero value and waiting for it to become 0 again,
|
||||
; you can detect that the V-blank handler has run since then.
|
||||
H_VBLANKOCCURRED EQU $FFD6
|
||||
|
||||
H_CURRENTSPRITEOFFSET EQU $FFDA ; multiple of $10
|
||||
|
||||
H_WHOSETURN EQU $FFF3 ; 0 on player’s turn, 1 on enemy’s turn
|
||||
|
||||
H_JOYPADSTATE EQU $FFF8
|
||||
|
17
init.sh
Executable file
17
init.sh
Executable file
|
@ -0,0 +1,17 @@
|
|||
#!/bin/sh
|
||||
|
||||
# install rgbds
|
||||
git clone git://github.com/bentley/rgbds.git && \
|
||||
cd rgbds && \
|
||||
make && \
|
||||
sudo mkdir -p /usr/local/man/man{1,7} && \
|
||||
sudo make install && \
|
||||
cd .. && \
|
||||
rm -rf rgbds
|
||||
|
||||
# set up the submodule (extras/)
|
||||
git submodule init && \
|
||||
git submodule update && \
|
||||
sudo easy_install pip && \
|
||||
sudo pip install -r extras/requirements.txt
|
||||
|
265
macros.asm
Normal file
265
macros.asm
Normal file
|
@ -0,0 +1,265 @@
|
|||
|
||||
;\1 = X
|
||||
;\2 = Y
|
||||
FuncCoord: MACRO
|
||||
Coord = $C3A0 + 20 * \2 + \1
|
||||
ENDM
|
||||
|
||||
;\1 = Map Width
|
||||
;\2 = Rows above (Y-blocks)
|
||||
;\3 = X movement (X-blocks)
|
||||
EVENT_DISP: MACRO
|
||||
dw ($C6EF + (\1) + ((\1) + 6) * ((\2) >> 1) + ((\3) >> 1)) ; Ev.Disp
|
||||
db \2,\3 ;Y,X
|
||||
ENDM
|
||||
|
||||
FLYWARP_DATA: MACRO
|
||||
EVENT_DISP \1,\2,\3
|
||||
db ((\2) & $01) ;sub-block Y
|
||||
db ((\3) & $01) ;sub-block X
|
||||
ENDM
|
||||
|
||||
; external map entry macro
|
||||
EMAP: MACRO ; emap x-coordinate,y-coordinate,textpointer
|
||||
; the appearance of towns and routes in the town map, indexed by map id
|
||||
; nybble: y-coordinate
|
||||
; nybble: x-coordinate
|
||||
; word : pointer to map name
|
||||
db (\1 + (\2 << 4))
|
||||
dw \3
|
||||
ENDM
|
||||
|
||||
; internal map entry macro
|
||||
IMAP: MACRO ; imap mapid_less_than,x-coordinate,y-coordinate,textpointer
|
||||
; the appearance of buildings and dungeons in the town map
|
||||
; byte : maximum map id subject to this rule
|
||||
; nybble: y-coordinate
|
||||
; nybble: x-coordinate
|
||||
; word : pointer to map name
|
||||
db \1
|
||||
db \2 + \3 << 4
|
||||
dw \4
|
||||
ENDM
|
||||
|
||||
; tilesets' headers macro
|
||||
TSETHEAD: MACRO
|
||||
db BANK(\2)
|
||||
dw \1,\2,\3
|
||||
db \4,\5,\6,\7,\8
|
||||
ENDM
|
||||
|
||||
; macro for two nibbles
|
||||
dn: MACRO
|
||||
db (\1 << 4 | \2)
|
||||
ENDM
|
||||
|
||||
; macro for putting a byte then a word
|
||||
dbw: MACRO
|
||||
db \1
|
||||
dw \2
|
||||
ENDM
|
||||
|
||||
; data format macros
|
||||
RGB: MACRO
|
||||
dw (\3 << 10 | \2 << 5 | \1)
|
||||
ENDM
|
||||
|
||||
; text macros
|
||||
TX_NUM: MACRO
|
||||
; print a big-endian decimal number.
|
||||
; \1: address to read from
|
||||
; \2: number of bytes to read
|
||||
; \3: number of digits to display
|
||||
db $09
|
||||
dw \1
|
||||
db \2 << 4 | \3
|
||||
ENDM
|
||||
|
||||
TX_FAR: MACRO
|
||||
db $17
|
||||
dw \1
|
||||
db BANK(\1)
|
||||
ENDM
|
||||
|
||||
; text engine command $1
|
||||
TX_RAM: MACRO
|
||||
; prints text to screen
|
||||
; \1: RAM address to read from
|
||||
db $1
|
||||
dw \1
|
||||
ENDM
|
||||
|
||||
; Predef macro.
|
||||
PREDEF: MACRO
|
||||
ld a, (\1 - PredefPointers) / 3
|
||||
call Predef
|
||||
ENDM
|
||||
|
||||
PREDEF_JUMP: MACRO
|
||||
ld a, (\1 - PredefPointers) / 3
|
||||
jp Predef
|
||||
ENDM
|
||||
|
||||
|
||||
|
||||
;1_channel EQU $00
|
||||
;2_channels EQU $40
|
||||
;3_channels EQU $80
|
||||
;4_channels EQU $C0
|
||||
|
||||
CH0 EQU 0
|
||||
CH1 EQU 1
|
||||
CH2 EQU 2
|
||||
CH3 EQU 3
|
||||
CH4 EQU 4
|
||||
CH5 EQU 5
|
||||
CH6 EQU 6
|
||||
CH7 EQU 7
|
||||
|
||||
;Note Pitch
|
||||
C_ EQU $0
|
||||
C# EQU $1
|
||||
D_ EQU $2
|
||||
D# EQU $3
|
||||
E_ EQU $4
|
||||
F_ EQU $5
|
||||
F# EQU $6
|
||||
G_ EQU $7
|
||||
G# EQU $8
|
||||
A_ EQU $9
|
||||
A# EQU $A
|
||||
B_ EQU $B
|
||||
|
||||
;drum instruments
|
||||
snare1 EQU $01
|
||||
snare2 EQU $02
|
||||
snare3 EQU $03
|
||||
snare4 EQU $04
|
||||
snare5 EQU $05
|
||||
triangle1 EQU $06
|
||||
triangle2 EQU $07
|
||||
snare6 EQU $08
|
||||
snare7 EQU $09
|
||||
snare8 EQU $0a
|
||||
snare9 EQU $0b
|
||||
cymbal1 EQU $0c
|
||||
cymbal2 EQU $0d
|
||||
cymbal3 EQU $0e
|
||||
mutedsnare1 EQU $0f
|
||||
triangle3 EQU $10
|
||||
mutedsnare2 EQU $11
|
||||
mutedsnare3 EQU $12
|
||||
mutedsnare4 EQU $13
|
||||
|
||||
unknownsfx0x10: MACRO
|
||||
db $10
|
||||
db \1
|
||||
ENDM
|
||||
|
||||
unknownsfx0x20: MACRO
|
||||
db $20 | \1
|
||||
db \2
|
||||
db \3
|
||||
db \4
|
||||
ENDM
|
||||
|
||||
unknownnoise0x20: MACRO
|
||||
db $20 | \1
|
||||
db \2
|
||||
db \3
|
||||
ENDM
|
||||
|
||||
;format: note pitch, length (in 16ths)
|
||||
note: MACRO
|
||||
db (\1 << 4) | (\2 - 1)
|
||||
ENDM
|
||||
|
||||
;format: dnote length (in 16ths), instrument
|
||||
dnote: MACRO
|
||||
db $B0 | (\1 - 1)
|
||||
db \2
|
||||
ENDM
|
||||
|
||||
;format: rest length (in 16ths)
|
||||
rest: MACRO
|
||||
db $C0 | (\1 - 1)
|
||||
ENDM
|
||||
|
||||
; format: notetype speed, volume, fade
|
||||
notetype: MACRO
|
||||
db $D0 | \1
|
||||
db (\2 << 4) | \3
|
||||
ENDM
|
||||
|
||||
dspeed: MACRO
|
||||
db $D0 | \1
|
||||
ENDM
|
||||
|
||||
octave: MACRO
|
||||
db $E8 - \1
|
||||
ENDM
|
||||
|
||||
togglecall: MACRO
|
||||
db $E8
|
||||
ENDM
|
||||
|
||||
;format: vibrato delay, rate, depth
|
||||
vibrato: MACRO
|
||||
db $EA
|
||||
db \1
|
||||
db (\2 << 4) | \3
|
||||
ENDM
|
||||
|
||||
pitchbend: MACRO
|
||||
db $EB
|
||||
db \1
|
||||
db \2
|
||||
ENDM
|
||||
|
||||
duty: MACRO
|
||||
db $EC
|
||||
db \1
|
||||
ENDM
|
||||
|
||||
tempo: MACRO
|
||||
db $ED
|
||||
db \1
|
||||
db \2
|
||||
ENDM
|
||||
|
||||
unknownmusic0xee: MACRO
|
||||
db $EE
|
||||
db \1
|
||||
ENDM
|
||||
|
||||
stereopanning: MACRO
|
||||
db $F0
|
||||
db \1
|
||||
ENDM
|
||||
|
||||
executemusic: MACRO
|
||||
db $F8
|
||||
ENDM
|
||||
|
||||
dutycycle: MACRO
|
||||
db $FC
|
||||
db \1
|
||||
ENDM
|
||||
|
||||
;format: callchannel address
|
||||
;callchannel: MACRO
|
||||
; db $FD
|
||||
; dw \1
|
||||
;ENDM
|
||||
|
||||
;format: loopchannel count, address
|
||||
;loopchannel: MACRO
|
||||
; db $FE
|
||||
; db \1
|
||||
; dw \2
|
||||
;ENDM
|
||||
|
||||
endchannel: MACRO
|
||||
db $FF
|
||||
ENDM
|
||||
|
BIN
maps/unusedblocks58d7d.blk
Executable file
BIN
maps/unusedblocks58d7d.blk
Executable file
Binary file not shown.
BIN
maps/unusedblocks601f8.blk
Executable file
BIN
maps/unusedblocks601f8.blk
Executable file
Binary file not shown.
BIN
maps/unusedblocks60cef.blk
Executable file
BIN
maps/unusedblocks60cef.blk
Executable file
Binary file not shown.
|
@ -1,4 +1,5 @@
|
|||
_RED EQU 0
|
||||
_BLUE EQU 1
|
||||
INCLUDE "globals.asm"
|
||||
INCLUDE "wram.asm"
|
||||
INCLUDE "main.asm"
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
_RED EQU 1
|
||||
_BLUE EQU 0
|
||||
INCLUDE "globals.asm"
|
||||
INCLUDE "wram.asm"
|
||||
INCLUDE "main.asm"
|
||||
|
|
|
@ -1,10 +1,17 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
import extras.pokemontools.preprocessor as preprocessor
|
||||
|
||||
import extras.pokemontools.configuration as configuration
|
||||
config = configuration.Config()
|
||||
|
||||
import sys
|
||||
|
||||
from extras.pokemontools.crystal import (
|
||||
callchannel,
|
||||
loopchannel,
|
||||
)
|
||||
|
||||
chars = {
|
||||
"ガ": 0x05,
|
||||
"ギ": 0x06,
|
||||
|
@ -260,14 +267,21 @@ chars = {
|
|||
"9": 0xFF,
|
||||
}
|
||||
|
||||
preprocessor.chars = chars
|
||||
def load_pokered_macros():
|
||||
macros = [callchannel, loopchannel]
|
||||
return macros
|
||||
|
||||
from extras.pokemontools.crystal import (
|
||||
callchannel,
|
||||
loopchannel,
|
||||
)
|
||||
def setup_processor():
|
||||
preprocessor.chars = chars
|
||||
macros = load_pokered_macros()
|
||||
processor = preprocessor.Preprocessor(config, macros)
|
||||
return processor
|
||||
|
||||
config = configuration.Config()
|
||||
macros = [callchannel, loopchannel]
|
||||
processor = preprocessor.Preprocessor(config, macros)
|
||||
processor.preprocess()
|
||||
def main():
|
||||
processor = setup_processor()
|
||||
output = processor.preprocess()
|
||||
processor.update_globals()
|
||||
return output
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
40
prequeue.py
Normal file
40
prequeue.py
Normal file
|
@ -0,0 +1,40 @@
|
|||
# coding: utf-8
|
||||
"""
|
||||
Starting a new python process to preprocess each source file creates too much
|
||||
overhead. Instead, a list of files to preprocess is fed into a script run from
|
||||
a single process.
|
||||
"""
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
import preprocessor
|
||||
|
||||
def preprocess_queue(filenames=sys.argv[1:]):
|
||||
|
||||
stdin = sys.stdin
|
||||
stdout = sys.stdout
|
||||
|
||||
processor = preprocessor.setup_processor()
|
||||
|
||||
for source in filenames:
|
||||
dest = os.path.splitext(source)[0] + '.tx'
|
||||
sys.stdin = open(source, 'r')
|
||||
sys.stdout = open(dest, 'w')
|
||||
processor.preprocess()
|
||||
|
||||
processor.update_globals()
|
||||
|
||||
sys.stdin = stdin
|
||||
sys.stdout = stdout
|
||||
|
||||
def main():
|
||||
filenames = list(set(sys.argv[1:]))
|
||||
if filenames:
|
||||
num_files = len(filenames)
|
||||
s = '' if num_files == 1 else 's'
|
||||
sys.stdout.write('Preprocessing {0} file{1}...\n'.format(num_files, s))
|
||||
preprocess_queue(filenames)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
Loading…
Reference in a new issue