ref: 23c7161bbcd0e3412fc30a59c68cf4296fdd7dca
parent: d4d4481df061dc250e2f85ea17103b873df8b49a
author: U-Fish-PC\Daniel <[email protected]>
date: Wed Dec 11 05:34:29 EST 2013
Clean up constants
--- a/constants.asm
+++ b/constants.asm
@@ -2,197 +2,25 @@
_GREEN EQU 0
_YELLOW EQU 0
-
INCLUDE "macros.asm"
INCLUDE "hram.asm"
+INCLUDE "constants/hardware_constants.asm"
+INCLUDE "constants/oam_constants.asm"
-; 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
-
-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
-
-
-; 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
-
-; OAM attribute flags
-OAM_HFLIP EQU %00100000 ; horizontal flip
-OAM_VFLIP EQU %01000000 ; vertical flip
-
-; 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
-
-
INCLUDE "constants/pokemon_constants.asm"
-INCLUDE "constants/trainer_constants.asm"
INCLUDE "constants/pokedex_constants.asm"
+INCLUDE "constants/trainer_constants.asm"
INCLUDE "constants/item_constants.asm"
-
+INCLUDE "constants/type_constants.asm"
INCLUDE "constants/move_constants.asm"
INCLUDE "constants/move_effect_constants.asm"
-
-; fixed damage constants
-SONICBOOM_DAMAGE EQU 20
-DRAGON_RAGE_DAMAGE EQU 40
-
+INCLUDE "constants/status_constants.asm"
+INCLUDE "constants/sprite_constants.asm"
INCLUDE "constants/palette_constants.asm"
+INCLUDE "constants/evolution_constants.asm"
+INCLUDE "constants/list_constants.asm"
INCLUDE "constants/map_constants.asm"
INCLUDE "constants/map_dimensions.asm"
-
-; Evolution types
-EV_LEVEL EQU 1
-EV_ITEM EQU 2
-EV_TRADE EQU 3
-
-; 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
-
-EAST EQU 1
-WEST EQU 2
-SOUTH EQU 4
-NORTH EQU 8
-
-; different kinds of people events
-ITEM EQU $80
-TRAINER EQU $40
-
-; status ailments (masks)
-SLP EQU %00000111
-PSN EQU %00001000
-BRN EQU %00010000
-FRZ EQU %00100000
-PAR EQU %01000000
-
-; 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
-
+INCLUDE "constants/connection_constants.asm"
\ No newline at end of file
--- /dev/null
+++ b/constants/connection_constants.asm
@@ -1,0 +1,5 @@
+; connection directions
+EAST EQU 1
+WEST EQU 2
+SOUTH EQU 4
+NORTH EQU 8
\ No newline at end of file
--- /dev/null
+++ b/constants/evolution_constants.asm
@@ -1,0 +1,4 @@
+; Evolution types
+EV_LEVEL EQU 1
+EV_ITEM EQU 2
+EV_TRADE EQU 3
\ No newline at end of file
--- /dev/null
+++ b/constants/hardware_constants.asm
@@ -1,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
\ No newline at end of file
--- a/constants/item_constants.asm
+++ b/constants/item_constants.asm
@@ -136,5 +136,4 @@
TM_47 EQU $F7
TM_48 EQU $F8
TM_49 EQU $F9
-TM_50 EQU $FA
-
+TM_50 EQU $FA
\ No newline at end of file
--- /dev/null
+++ b/constants/list_constants.asm
@@ -1,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
\ No newline at end of file
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -246,5 +246,4 @@
LORELEIS_ROOM EQU $F5
BRUNOS_ROOM EQU $F6
AGATHAS_ROOM EQU $F7
-BEACH_HOUSE EQU $F8 ; Yellow only
-
+BEACH_HOUSE EQU $F8 ; Yellow only
\ No newline at end of file
--- a/constants/map_dimensions.asm
+++ b/constants/map_dimensions.asm
@@ -886,5 +886,4 @@
; Agatha_h map_id=247
AGATHAS_ROOM_HEIGHT EQU $06
-AGATHAS_ROOM_WIDTH EQU $05
-
+AGATHAS_ROOM_WIDTH EQU $05
\ No newline at end of file
--- a/constants/move_constants.asm
+++ b/constants/move_constants.asm
@@ -176,5 +176,4 @@
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
-
+BAIT_ANIM EQU $CA ; throw bait
\ No newline at end of file
--- a/constants/move_effect_constants.asm
+++ b/constants/move_effect_constants.asm
@@ -71,3 +71,6 @@
SPLASH_EFFECT EQU $55
DISABLE_EFFECT EQU $56
+; fixed damage constants
+SONICBOOM_DAMAGE EQU 20
+DRAGON_RAGE_DAMAGE EQU 40
\ No newline at end of file
--- /dev/null
+++ b/constants/oam_constants.asm
@@ -1,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
\ No newline at end of file
--- a/constants/palette_constants.asm
+++ b/constants/palette_constants.asm
@@ -35,5 +35,4 @@
PAL_REDBAR EQU $21
PAL_BADGE EQU $22
PAL_CAVE EQU $23
-; XXX
-
+; XXX
\ No newline at end of file
--- a/constants/pokedex_constants.asm
+++ b/constants/pokedex_constants.asm
@@ -148,5 +148,4 @@
DEX_DRAGONAIR EQU 148
DEX_DRAGONITE EQU 149
DEX_MEWTWO EQU 150
-DEX_MEW EQU 151
-
+DEX_MEW EQU 151
\ No newline at end of file
--- a/constants/pokemon_constants.asm
+++ b/constants/pokemon_constants.asm
@@ -151,5 +151,4 @@
VILEPLUME EQU $BB
BELLSPROUT EQU $BC
WEEPINBELL EQU $BD
-VICTREEBEL EQU $BE
-
+VICTREEBEL EQU $BE
\ No newline at end of file
--- /dev/null
+++ b/constants/sprite_constants.asm
@@ -1,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
\ No newline at end of file
--- /dev/null
+++ b/constants/status_constants.asm
@@ -1,0 +1,6 @@
+; status ailments (masks)
+SLP EQU %00000111
+PSN EQU %00001000
+BRN EQU %00010000
+FRZ EQU %00100000
+PAR EQU %01000000
\ No newline at end of file
--- a/constants/trainer_constants.asm
+++ b/constants/trainer_constants.asm
@@ -45,4 +45,4 @@
LORELEI EQU $2C
CHANNELER EQU $2D
AGATHA EQU $2E
-LANCE EQU $2F
+LANCE EQU $2F
\ No newline at end of file
--- /dev/null
+++ b/constants/type_constants.asm
@@ -1,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
\ No newline at end of file