summaryrefslogtreecommitdiff
path: root/constants
diff options
context:
space:
mode:
Diffstat (limited to 'constants')
-rwxr-xr-xconstants/audio_constants.asm20
-rwxr-xr-xconstants/battle_tower_constants.asm6
-rwxr-xr-xconstants/cgb_constants.asm2
-rw-r--r--constants/credits_constants.asm115
-rw-r--r--constants/effect_command_constants.asm187
-rw-r--r--constants/gfx_constants.asm3
-rw-r--r--constants/hardware_constants.asm135
-rw-r--r--constants/item_constants.asm12
-rw-r--r--constants/landmark_constants.asm2
-rw-r--r--constants/map_constants.asm4
-rw-r--r--constants/map_dimension_constants.asm21
-rw-r--r--constants/misc_constants.asm11
-rw-r--r--constants/mobile_constants.asm4
-rw-r--r--constants/pokemon_constants.asm22
-rw-r--r--constants/pokemon_data_constants.asm15
-rw-r--r--constants/std_constants.asm2
-rw-r--r--constants/trainer_constants.asm20
-rw-r--r--constants/wram_constants.asm2
18 files changed, 352 insertions, 231 deletions
diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm
index dd39df20f..861c35ee0 100755
--- a/constants/audio_constants.asm
+++ b/constants/audio_constants.asm
@@ -1,5 +1,5 @@
; pitch
-; FrequencyTable indexes (see data/audio/notes.asm)
+; FrequencyTable indexes (see audio/notes.asm)
const_def
const __ ; 0
const C_ ; 1
@@ -67,4 +67,22 @@ NUM_CHANNELS EQU const_value
const NOTE_VIBRATO_OVERRIDE ; 6
; Volume:
+VOLUME_SO1_F EQU 3
+VOLUME_SO2_F EQU 7
+VOLUME_SO1_LEVEL EQU %00000111
+VOLUME_SO2_LEVEL EQU %01110000
MAX_VOLUME EQU $77
+
+; SoundInput:
+SOUND_INPUT_CH1_F EQU 0
+SOUND_INPUT_CH2_F EQU 1
+SOUND_INPUT_CH3_F EQU 2
+SOUND_INPUT_CH4_F EQU 3
+SOUND_INPUT_GLOBAL_F EQU 7
+
+; Danger:
+DANGER_PITCH_F EQU 4
+DANGER_ON_F EQU 7
+
+; MusicFade:
+MUSIC_FADE_IN_F EQU 7
diff --git a/constants/battle_tower_constants.asm b/constants/battle_tower_constants.asm
index 5ab69d752..74df3a36a 100755
--- a/constants/battle_tower_constants.asm
+++ b/constants/battle_tower_constants.asm
@@ -1,4 +1,4 @@
-; BattleTowerAction arguments (see misc/battle_tower_5c.asm)
+; BattleTowerAction arguments (see mobile/battle_tower_5c.asm)
const_def
const BATTLETOWERACTION_CHECK_EXPLANATION_READ
const BATTLETOWERACTION_SET_EXPLANATION_READ
@@ -20,8 +20,8 @@
const BATTLETOWERACTION_11 ; store 0 in 5:aa8d
const BATTLETOWERACTION_12 ; store 1 in 5:aa8d
const BATTLETOWERACTION_13 ; check 5:aa8d
- const BATTLETOWERACTION_14 ; if save file is yours: bit 0, [s1_be4f]
- const BATTLETOWERACTION_15 ; set 0, [s1_be4f]
+ const BATTLETOWERACTION_14 ; if save file is yours: bit 0, [sBattleTowerSaveFileFlags]
+ const BATTLETOWERACTION_15 ; set 0, [sBattleTowerSaveFileFlags]
const BATTLETOWERACTION_16 ; update time in SRAM bank 5
const BATTLETOWERACTION_17 ; check time in SRAM bank 5
const BATTLETOWERACTION_LEVEL_CHECK
diff --git a/constants/cgb_constants.asm b/constants/cgb_constants.asm
index c5aef7750..c419cd465 100755
--- a/constants/cgb_constants.asm
+++ b/constants/cgb_constants.asm
@@ -1,4 +1,4 @@
-; GetSGBLayout arguments (see predef/cgb.asm and predef/sgb.asm)
+; GetSGBLayout arguments (see engine/cgb_layouts.asm and engine/sgb_layouts.asm)
const_def
const SCGB_BATTLE_GRAYSCALE
const SCGB_BATTLE_COLORS
diff --git a/constants/credits_constants.asm b/constants/credits_constants.asm
new file mode 100644
index 000000000..8ee0391de
--- /dev/null
+++ b/constants/credits_constants.asm
@@ -0,0 +1,115 @@
+; CreditsStrings indexes (see data/credits_text.asm)
+ const_def
+ const SATOSHI_TAJIRI
+ const JUNICHI_MASUDA
+ const TETSUYA_WATANABE
+ const SHIGEKI_MORIMOTO
+ const SOUSUKE_TAMADA
+ const TAKENORI_OOTA
+ const KEN_SUGIMORI
+ const MOTOFUMI_FUJIWARA
+ const ATSUKO_NISHIDA
+ const MUNEO_SAITO
+ const SATOSHI_OOTA
+ const RENA_YOSHIKAWA
+ const JUN_OKUTANI
+ const HIRONOBU_YOSHIDA
+ const ASUKA_IWASHITA
+ const GO_ICHINOSE
+ const MORIKAZU_AOKI
+ const KOHJI_NISHINO
+ const KENJI_MATSUSHIMA
+ const TOSHINOBU_MATSUMIYA
+ const SATORU_IWATA
+ const NOBUHIRO_SEYA
+ const KAZUHITO_SEKINE
+ const TETSUJI_OOTA
+ const NCL_SUPER_MARIO_CLUB
+ const SARUGAKUCHO
+ const AKITO_MORI
+ const TAKAHIRO_HARADA
+ const TOHRU_HASHIMOTO
+ const NOBORU_MATSUMOTO
+ const TAKEHIRO_IZUSHI
+ const TAKASHI_KAWAGUCHI
+ const TSUNEKAZU_ISHIHARA
+ const HIROSHI_YAMAUCHI
+ const KENJI_SAIKI
+ const ATSUSHI_TADA
+ const NAOKO_KAWAKAMI
+ const HIROYUKI_ZINNAI
+ const KUNIMI_KAWAMURA
+ const HISASHI_SOGABE
+ const KEITA_KAGAYA
+ const YOSHINORI_MATSUDA
+ const HITOMI_SATO
+ const TORU_OSAWA
+ const TAKAO_OHARA
+ const YUICHIRO_ITO
+ const TAKAO_SHIMIZU
+ const PLANNING
+ const KEITA_NAKAMURA
+ const HIROTAKA_UEMURA
+ const HIROAKI_TAMURA
+ const NORIAKI_SAKAGUCHI
+ const MIYUKI_SATO
+ const GAKUZI_NOMOTO
+ const AI_MASHIMA
+ const MIKIHIRO_ISHIKAWA
+ const HIDEYUKI_HASHIMOTO
+ const SATOSHI_YAMATO
+ const SHIGERU_MIYAMOTO
+ const GAIL_TILDEN
+ const NOB_OGASAWARA
+ const SETH_MCMAHILL
+ const HIROTO_ALEXANDER
+ const TERESA_LILLYGREN
+ const THOMAS_HERTZOG
+ const ERIK_JOHNSON
+ const HIRO_NAKAMURA
+ const TERUKI_MURAKAWA
+ const KAZUYOSHI_OSAWA
+ const KIMIKO_NAKAMICHI
+ const CREDIT_END
+ const CREDIT_UNKNOWN
+ const STAFF
+ const DIRECTOR
+ const CODIRECTOR
+ const PROGRAMMERS
+ const GRAPHICS_DIRECTOR
+ const MONSTER_DESIGN
+ const GRAPHICS_DESIGN
+ const CREDIT_MUSIC
+ const CREDIT_SOUND_EFFECTS
+ const GAME_DESIGN
+ const GAME_SCENARIO
+ const TOOL_PROGRAMMING
+ const PARAMETRIC_DESIGN
+ const SCRIPT_DESIGN
+ const MAP_DATA_DESIGN
+ const MAP_DESIGN
+ const PRODUCT_TESTING
+ const SPECIAL_THANKS
+ const PRODUCERS
+ const EXECUTIVE_PRODUCER
+ const POKEMON_ANIMATION
+ const POKEDEX_TEXT
+ const MOBILE_PRJ_LEADER
+ const MOBILE_SYSTEM_AD
+ const MOBILE_STADIUM_DIR
+ const COORDINATION
+ const COPYRIGHT
+ const US_VERSION_STAFF
+ const US_COORDINATION
+ const TEXT_TRANSLATION
+ const PAAD_TESTING
+
+; CreditsScript indexes (see data/credits_script.asm)
+const_value SET -7
+ const CREDITS_THEEND
+ const CREDITS_WAIT2
+ const CREDITS_MUSIC
+ const CREDITS_CLEAR
+ const CREDITS_SCENE
+ const CREDITS_WAIT
+ const CREDITS_END
diff --git a/constants/effect_command_constants.asm b/constants/effect_command_constants.asm
deleted file mode 100644
index 0d86e66a1..000000000
--- a/constants/effect_command_constants.asm
+++ /dev/null
@@ -1,187 +0,0 @@
-; BattleCommandPointers indexes (see battle/effect_commands.asm)
-
-command: macro
- enum \1_command
-\1 equs "db \1_command"
-endm
-
- enum_start 1
- command checkturn ; 01
- command checkobedience ; 02
- command usedmovetext ; 03
- command doturn ; 04
- command critical ; 05
- command damagestats ; 06
- command stab ; 07
- command damagevariation ; 08
- command checkhit ; 09
- command lowersub ; 0a
- command hittargetnosub ; 0b
- command raisesub ; 0c
- command failuretext ; 0d
- command checkfaint ; 0e
- command criticaltext ; 0f
- command supereffectivetext ; 10
- command checkdestinybond ; 11
- command buildopponentrage ; 12
- command poisontarget ; 13
- command sleeptarget ; 14
- command draintarget ; 15
- command eatdream ; 16
- command burntarget ; 17
- command freezetarget ; 18
- command paralyzetarget ; 19
- command selfdestruct ; 1a
- command mirrormove ; 1b
- command statup ; 1c
- command statdown ; 1d
- command payday ; 1e
- command conversion ; 1f
- command resetstats ; 20
- command storeenergy ; 21
- command unleashenergy ; 22
- command forceswitch ; 23
- command endloop ; 24
- command flinchtarget ; 25
- command ohko ; 26
- command recoil ; 27
- command mist ; 28
- command focusenergy ; 29
- command confuse ; 2a
- command confusetarget ; 2b
- command heal ; 2c
- command transform ; 2d
- command screen ; 2e
- command poison ; 2f
- command paralyze ; 30
- command substitute ; 31
- command rechargenextturn ; 32
- command mimic ; 33
- command metronome ; 34
- command leechseed ; 35
- command splash ; 36
- command disable ; 37
- command cleartext ; 38
- command charge ; 39
- command checkcharge ; 3a
- command traptarget ; 3b
- command effect0x3c ; 3c
- command rampage ; 3d
- command checkrampage ; 3e
- command constantdamage ; 3f
- command counter ; 40
- command encore ; 41
- command painsplit ; 42
- command snore ; 43
- command conversion2 ; 44
- command lockon ; 45
- command sketch ; 46
- command defrostopponent ; 47
- command sleeptalk ; 48
- command destinybond ; 49
- command spite ; 4a
- command falseswipe ; 4b
- command healbell ; 4c
- command kingsrock ; 4d
- command triplekick ; 4e
- command kickcounter ; 4f
- command thief ; 50
- command arenatrap ; 51
- command nightmare ; 52
- command defrost ; 53
- command curse ; 54
- command protect ; 55
- command spikes ; 56
- command foresight ; 57
- command perishsong ; 58
- command startsandstorm ; 59
- command endure ; 5a
- command checkcurl ; 5b
- command rolloutpower ; 5c
- command effect0x5d ; 5d
- command furycutter ; 5e
- command attract ; 5f
- command happinesspower ; 60
- command present ; 61
- command damagecalc ; 62
- command frustrationpower ; 63
- command safeguard ; 64
- command checksafeguard ; 65
- command getmagnitude ; 66
- command batonpass ; 67
- command pursuit ; 68
- command clearhazards ; 69
- command healmorn ; 6a
- command healday ; 6b
- command healnite ; 6c
- command hiddenpower ; 6d
- command startrain ; 6e
- command startsun ; 6f
- command attackup ; 70
- command defenseup ; 71
- command speedup ; 72
- command specialattackup ; 73
- command specialdefenseup ; 74
- command accuracyup ; 75
- command evasionup ; 76
- command attackup2 ; 77
- command defenseup2 ; 78
- command speedup2 ; 79
- command specialattackup2 ; 7a
- command specialdefenseup2 ; 7b
- command accuracyup2 ; 7c
- command evasionup2 ; 7d
- command attackdown ; 7e
- command defensedown ; 7f
- command speeddown ; 80
- command specialattackdown ; 81
- command specialdefensedown ; 82
- command accuracydown ; 83
- command evasiondown ; 84
- command attackdown2 ; 85
- command defensedown2 ; 86
- command speeddown2 ; 87
- command specialattackdown2 ; 88
- command specialdefensedown2 ; 89
- command accuracydown2 ; 8a
- command evasiondown2 ; 8b
- command statupmessage ; 8c
- command statdownmessage ; 8d
- command statupfailtext ; 8e
- command statdownfailtext ; 8f
- command effectchance ; 90
- command statdownanim ; 91
- command statupanim ; 92
- command switchturn ; 93
- command fakeout ; 94
- command bellydrum ; 95
- command psychup ; 96
- command rage ; 97
- command doubleflyingdamage ; 98
- command doubleundergrounddamage ; 99
- command mirrorcoat ; 9a
- command checkfuturesight ; 9b
- command futuresight ; 9c
- command doubleminimizedamage ; 9d
- command skipsuncharge ; 9e
- command thunderaccuracy ; 9f
- command teleport ; a0
- command beatup ; a1
- command ragedamage ; a2
- command resettypematchup ; a3
- command allstatsup ; a4
- command effect0xa5 ; a5
- command raisesubnoanim ; a6
- command lowersubnoanim ; a7
- command effect0xa8 ; a8
- command clearmissdamage ; a9
- command movedelay ; aa
- command hittarget ; ab
- command tristatuschance ; ac
- command supereffectivelooptext ; ad
- command startloop ; ae
- command curl ; af
-
- enum_start -1, -1
- command endmove
- command endturn
diff --git a/constants/gfx_constants.asm b/constants/gfx_constants.asm
index 445f0d815..4c3b23fc9 100644
--- a/constants/gfx_constants.asm
+++ b/constants/gfx_constants.asm
@@ -19,3 +19,6 @@ HP_BAR_LENGTH EQU 6 ; tiles
HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * TILE_WIDTH ; pixels
EXP_BAR_LENGTH EQU 8 ; tiles
EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels
+
+
+PALPACKET_LENGTH EQU $10
diff --git a/constants/hardware_constants.asm b/constants/hardware_constants.asm
new file mode 100644
index 000000000..ae2e97a6b
--- /dev/null
+++ b/constants/hardware_constants.asm
@@ -0,0 +1,135 @@
+; Graciously aped from http://nocash.emubase.de/pandocs.htm .
+
+; MBC3
+MBC3SRamEnable EQU $0000
+MBC3RomBank EQU $2000
+MBC3SRamBank EQU $4000
+MBC3LatchClock EQU $6000
+MBC3RTC EQU $a000
+
+SRAM_DISABLE EQU $00
+SRAM_ENABLE EQU $0a
+
+NUM_SRAM_BANKS EQU 4
+
+RTC_S EQU $08 ; Seconds 0-59 (0-3Bh)
+RTC_M EQU $09 ; Minutes 0-59 (0-3Bh)
+RTC_H EQU $0a ; Hours 0-23 (0-17h)
+RTC_DL EQU $0b ; Lower 8 bits of Day Counter (0-FFh)
+RTC_DH EQU $0c ; Upper 1 bit of Day Counter, Carry Bit, Halt Flag
+ ; Bit 0 Most significant bit of Day Counter (Bit 8)
+ ; Bit 6 Halt (0=Active, 1=Stop Timer)
+ ; Bit 7 Day Counter Carry Bit (1=Counter Overflow)
+
+; interrupt flags
+VBLANK EQU 0
+LCD_STAT EQU 1
+TIMER EQU 2
+SERIAL EQU 3
+JOYPAD EQU 4
+
+; OAM attribute flags
+OAM_TILE_BANK EQU 3
+OAM_OBP_NUM EQU 4 ; non CGB Mode Only
+OAM_X_FLIP EQU 5
+OAM_Y_FLIP EQU 6
+OAM_PRIORITY EQU 7 ; 0: OBJ above BG, 1: OBJ behind BG (colors 1-3)
+
+PALETTE_MASK EQU %111
+VRAM_BANK_1 EQU 1 << OAM_TILE_BANK ; $08
+OBP_NUM EQU 1 << OAM_OBP_NUM ; $10
+X_FLIP EQU 1 << OAM_X_FLIP ; $20
+Y_FLIP EQU 1 << OAM_Y_FLIP ; $40
+BEHIND_BG EQU 1 << OAM_PRIORITY ; $80
+
+; Hardware registers
+rJOYP EQU $ff00 ; Joypad (R/W)
+rSB EQU $ff01 ; Serial transfer data (R/W)
+rSC EQU $ff02 ; Serial Transfer Control (R/W)
+rSC_ON EQU 7
+rSC_CGB EQU 1
+rSC_CLOCK EQU 0
+rDIV EQU $ff04 ; Divider Register (R/W)
+rTIMA EQU $ff05 ; Timer counter (R/W)
+rTMA EQU $ff06 ; Timer Modulo (R/W)
+rTAC EQU $ff07 ; Timer Control (R/W)
+rTAC_ON EQU 2
+rTAC_4096_HZ EQU 0
+rTAC_262144_HZ EQU 1
+rTAC_65536_HZ EQU 2
+rTAC_16384_HZ EQU 3
+rIF EQU $ff0f ; Interrupt Flag (R/W)
+rNR10 EQU $ff10 ; Channel 1 Sweep register (R/W)
+rNR11 EQU $ff11 ; Channel 1 Sound length/Wave pattern duty (R/W)
+rNR12 EQU $ff12 ; Channel 1 Volume Envelope (R/W)
+rNR13 EQU $ff13 ; Channel 1 Frequency lo (Write Only)
+rNR14 EQU $ff14 ; Channel 1 Frequency hi (R/W)
+rNR20 EQU $ff15 ; Channel 2 Sweep register (R/W)
+rNR21 EQU $ff16 ; Channel 2 Sound Length/Wave Pattern Duty (R/W)
+rNR22 EQU $ff17 ; Channel 2 Volume Envelope (R/W)
+rNR23 EQU $ff18 ; Channel 2 Frequency lo data (W)
+rNR24 EQU $ff19 ; Channel 2 Frequency hi data (R/W)
+rNR30 EQU $ff1a ; Channel 3 Sound on/off (R/W)
+rNR31 EQU $ff1b ; Channel 3 Sound Length
+rNR32 EQU $ff1c ; Channel 3 Select output level (R/W)
+rNR33 EQU $ff1d ; Channel 3 Frequency's lower data (W)
+rNR34 EQU $ff1e ; Channel 3 Frequency's higher data (R/W)
+rNR40 EQU $ff1f ; Channel 4 Sweep register (R/W)
+rNR41 EQU $ff20 ; Channel 4 Sound Length (R/W)
+rNR42 EQU $ff21 ; Channel 4 Volume Envelope (R/W)
+rNR43 EQU $ff22 ; Channel 4 Polynomial Counter (R/W)
+rNR44 EQU $ff23 ; Channel 4 Counter/consecutive; Inital (R/W)
+rNR50 EQU $ff24 ; Channel control / ON-OFF / Volume (R/W)
+rNR51 EQU $ff25 ; Selection of Sound output terminal (R/W)
+rNR52 EQU $ff26 ; Sound on/off
+rWave_0 EQU $ff30
+rWave_1 EQU $ff31
+rWave_2 EQU $ff32
+rWave_3 EQU $ff33
+rWave_4 EQU $ff34
+rWave_5 EQU $ff35
+rWave_6 EQU $ff36
+rWave_7 EQU $ff37
+rWave_8 EQU $ff38
+rWave_9 EQU $ff39
+rWave_a EQU $ff3a
+rWave_b EQU $ff3b
+rWave_c EQU $ff3c
+rWave_d EQU $ff3d
+rWave_e EQU $ff3e
+rWave_f EQU $ff3f
+rLCDC EQU $ff40 ; LCD Control (R/W)
+rSTAT EQU $ff41 ; LCDC Status (R/W)
+rSCY EQU $ff42 ; Scroll Y (R/W)
+rSCX EQU $ff43 ; Scroll X (R/W)
+rLY EQU $ff44 ; LCDC Y-Coordinate (R)
+rLYC EQU $ff45 ; LY Compare (R/W)
+rDMA EQU $ff46 ; DMA Transfer and Start Address (W)
+rBGP EQU $ff47 ; BG Palette Data (R/W) - Non CGB Mode Only
+rOBP0 EQU $ff48 ; Object Palette 0 Data (R/W) - Non CGB Mode Only
+rOBP1 EQU $ff49 ; Object Palette 1 Data (R/W) - Non CGB Mode Only
+rWY EQU $ff4a ; Window Y Position (R/W)
+rWX EQU $ff4b ; Window X Position minus 7 (R/W)
+rLCDMODE EQU $ff4c
+rKEY1 EQU $ff4d ; CGB Mode Only - Prepare Speed Switch
+rVBK EQU $ff4f ; CGB Mode Only - VRAM Bank
+rBLCK EQU $ff50
+rHDMA1 EQU $ff51 ; CGB Mode Only - New DMA Source, High
+rHDMA2 EQU $ff52 ; CGB Mode Only - New DMA Source, Low
+rHDMA3 EQU $ff53 ; CGB Mode Only - New DMA Destination, High
+rHDMA4 EQU $ff54 ; CGB Mode Only - New DMA Destination, Low
+rHDMA5 EQU $ff55 ; CGB Mode Only - New DMA Length/Mode/Start
+rRP EQU $ff56 ; CGB Mode Only - Infrared Communications Port
+rBGPI EQU $ff68 ; CGB Mode Only - Background Palette Index
+rBGPD EQU $ff69 ; CGB Mode Only - Background Palette Data
+rOBPI EQU $ff6a ; CGB Mode Only - Sprite Palette Index
+rOBPD EQU $ff6b ; CGB Mode Only - Sprite Palette Data
+rUNKNOWN1 EQU $ff6c ; (FEh) Bit 0 (Read/Write) - CGB Mode Only
+rSVBK EQU $ff70 ; CGB Mode Only - WRAM Bank
+rUNKNOWN2 EQU $ff72 ; (00h) - Bit 0-7 (Read/Write)
+rUNKNOWN3 EQU $ff73 ; (00h) - Bit 0-7 (Read/Write)
+rUNKNOWN4 EQU $ff74 ; (00h) - Bit 0-7 (Read/Write) - CGB Mode Only
+rUNKNOWN5 EQU $ff75 ; (8Fh) - Bit 4-6 (Read/Write)
+rUNKNOWN6 EQU $ff76 ; (00h) - Always 00h (Read Only)
+rUNKNOWN7 EQU $ff77 ; (00h) - Always 00h (Read Only)
+rIE EQU $ffff ; Interrupt Enable (R/W)
diff --git a/constants/item_constants.asm b/constants/item_constants.asm
index d9cd99a34..f03cf2735 100644
--- a/constants/item_constants.asm
+++ b/constants/item_constants.asm
@@ -1,9 +1,9 @@
; item ids
; indexes for:
-; - ItemAttributes (see items/item_attributes.asm)
-; - ItemDescriptions (see items/item_descriptions.asm)
-; - ItemEffects (see items/item_effects.asm)
-; - ItemNames (see items/item_names.asm)
+; - ItemAttributes (see data/items/item_attributes.asm)
+; - ItemDescriptions (see data/items/item_descriptions.asm)
+; - ItemEffects (see engine/item_effects.asm)
+; - ItemNames (see data/items/item_names.asm)
const_def
const NO_ITEM ; $00
const MASTER_BALL ; $01
@@ -372,7 +372,7 @@ const_value SET 70
const HELD_78
const HELD_FOCUS_BAND
-; item_attribute struct members (see items/item_attributes.asm)
+; item_attribute struct members (see data/items/item_attributes.asm)
const_def
const ITEMATTR_PRICE
const ITEMATTR_PRICE_HI
@@ -397,7 +397,7 @@ ITEMMENU_CLOSE EQU 6
const MARTTYPE_PHARMACY
const MARTTYPE_ROOFTOP
-; Marts indexes (see items/marts.asm)
+; Marts indexes (see data/items/marts.asm)
const_def
const MART_CHERRYGROVE
const MART_CHERRYGROVE_DEX
diff --git a/constants/landmark_constants.asm b/constants/landmark_constants.asm
index e53d44d04..0b29b8e03 100644
--- a/constants/landmark_constants.asm
+++ b/constants/landmark_constants.asm
@@ -1,4 +1,4 @@
-; Landmarks indexes (see data/landmarks.asm)
+; Landmarks indexes (see data/maps/landmarks.asm)
const_def
; Johto landmarks
diff --git a/constants/map_constants.asm b/constants/map_constants.asm
index be73faf9e..22b02f1c1 100644
--- a/constants/map_constants.asm
+++ b/constants/map_constants.asm
@@ -127,7 +127,7 @@ SLIDING EQU 3
EMOTE_OBJECT EQU 7
-; SpawnPoints indexes (see data/spawn_points.asm)
+; SpawnPoints indexes (see data/maps/spawn_points.asm)
const_value = -1
const SPAWN_N_A
const SPAWN_HOME
@@ -203,7 +203,7 @@ NUM_SPAWNS EQU const_value
const EMOTE_GRASS_RUSTLE ; 11
EMOTE_MEM EQU -1
-; FruitTreeItems indexes (see data/fruit_tree_items.asm)
+; FruitTreeItems indexes (see data/items/fruit_trees.asm)
const_value SET 1
const FRUITTREE_ROUTE_29 ; 01
const FRUITTREE_ROUTE_30_1 ; 02
diff --git a/constants/map_dimension_constants.asm b/constants/map_dimension_constants.asm
index d7fead006..714bbe02b 100644
--- a/constants/map_dimension_constants.asm
+++ b/constants/map_dimension_constants.asm
@@ -1,8 +1,23 @@
+newgroup: macro
+const_value = const_value + 1
+ enum_start 1
+endm
+
+mapgroup: macro
+;\1: map id
+;\2: height: in blocks
+;\3: width: in blocks
+GROUP_\1 EQU const_value
+ enum MAP_\1
+\1_HEIGHT EQU \2
+\1_WIDTH EQU \3
+endm
+
; map group ids
; `newgroup` indexes are for:
; - MapGroupPointers (see maps/map_headers.asm)
-; - OutdoorSprites (see data/outdoor_sprites.asm)
-; - MapGroupRoofs (see data/mapgroup_roofs.asm)
+; - OutdoorSprites (see data/maps/outdoor_sprites.asm)
+; - MapGroupRoofs (see data/maps/mapgroup_roofs.asm)
; `mapgroup` indexes are for the sub-tables of MapGroupPointers (see maps/map_headers.asm)
const_def
@@ -214,7 +229,7 @@
mapgroup EARLS_POKEMON_ACADEMY, 8, 4 ; 8
mapgroup VIOLET_NICKNAME_SPEECH_HOUSE, 4, 4 ; 9
mapgroup VIOLET_POKECENTER_1F, 4, 5 ; 10
- mapgroup VIOLET_ONIX_TRADE_HOUSE, 4, 4 ; 11
+ mapgroup VIOLET_KYLES_HOUSE, 4, 4 ; 11
mapgroup ROUTE_32_RUINS_OF_ALPH_GATE, 4, 5 ; 12
mapgroup ROUTE_32_POKECENTER_1F, 4, 5 ; 13
mapgroup ROUTE_35_GOLDENROD_GATE, 4, 5 ; 14
diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm
index 7510fdf50..25032cc10 100644
--- a/constants/misc_constants.asm
+++ b/constants/misc_constants.asm
@@ -27,7 +27,7 @@ ITEM_NAME_LENGTH EQU 13
TRAINER_CLASS_NAME_LENGTH EQU 13
NAME_LENGTH_JAPANESE EQU 6
-; GetName types (see home.asm)
+; GetName types (see home/names.asm)
PKMN_NAME EQU 1
MOVE_NAME EQU 2
; dummied out EQU 3
@@ -44,12 +44,13 @@ const_value set 5
const PRINTNUM_RIGHTALIGN_F ; 6
const PRINTNUM_LEADINGZEROS_F ; 7
+; PrintNum arguments (see engine/printnum.asm)
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
PRINTNUM_RIGHTALIGN EQU 1 << PRINTNUM_RIGHTALIGN_F
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
-; movement
+; DoPlayerMovement.DoStep arguments (see engine/player_movement.asm)
const_def
const STEP_SLOW ; 0
const STEP_WALK ; 1
@@ -61,10 +62,16 @@ PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
const STEP_WALK_IN_PLACE ; 7
+; hMenuReturn
HMENURETURN_SCRIPT EQU %10000000
HMENURETURN_ASM EQU %11111111
+; save file corruption check values
+SAVE_CHECK_VALUE_1 EQU 99
+SAVE_CHECK_VALUE_2 EQU 127
+
+
; time of day boundaries
MORN_HOUR EQU 4 ; 4 AM
DAY_HOUR EQU 10 ; 10 AM
diff --git a/constants/mobile_constants.asm b/constants/mobile_constants.asm
index 0ac28c94b..b5894b8e9 100644
--- a/constants/mobile_constants.asm
+++ b/constants/mobile_constants.asm
@@ -1,4 +1,4 @@
-; MobileEZChatCategoryPointers indexes (see misc/fixed_words.asm)
+; MobileEZChatCategoryPointers indexes (see mobile/fixed_words.asm)
const_def
const EZCHAT_POKEMON
const EZCHAT_TYPES
@@ -16,6 +16,6 @@
const EZCHAT_FAREWELLS
const EZCHAT_THISANDTHAT
-NUM_KANA EQU 45 ; length of SortedPokemon table (see misc/fixed_words.asm)
+NUM_KANA EQU 45 ; length of SortedPokemon table (see mobile/fixed_words.asm)
MOBILE_LOGIN_PASSWORD_LENGTH EQU 17
diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm
index 14635d729..13cb577bb 100644
--- a/constants/pokemon_constants.asm
+++ b/constants/pokemon_constants.asm
@@ -1,22 +1,22 @@
; pokemon ids
; indexes for:
-; - CryHeaders (see audio/cry_headers.asm)
-; - BaseData (see data/base_stats.asm)
-; - EggMovePointers (see data/egg_move_pointers.asm)
-; - EvosAttacksPointers (see data/evos_attacks_pointers.asm)
-; - PokemonNames (see data/pokemon_names.asm)
-; - PokedexDataPointerTable (see data/pokedex/entry_pointers.asm)
+; - CryHeaders (see data/pokemon/cry_headers.asm)
+; - BaseData (see data/pokemon/base_stats.asm)
+; - EggMovePointers (see data/pokemon/egg_move_pointers.asm)
+; - EvosAttacksPointers (see data/pokemon/evos_attacks_pointers.asm)
+; - PokemonNames (see data/pokemon/pokemon_names.asm)
+; - PokedexDataPointerTable (see data/pokemon/dex_entry_pointers.asm)
; - AnimationPointers (see gfx/pics/anim_pointers.asm)
; - BitmasksPointers (see gfx/pics/bitmask_pointers.asm)
; - AnimationExtraPointers (see gfx/pics/extra_pointers.asm)
; - FramesPointers (see gfx/pics/frame_pointers.asm)
; - PokemonPalettes (see gfx/pics/palette_pointers.asm)
; - PicPointers (see gfx/pics/pic_pointers.asm)
-; - AlphabeticalPokedexOrder (see data/pokedex/order_alpha.asm)
-; - NewPokedexOrder (see data/pokedex/order_new.asm)
-; - MonMenuIcons (see data/mon_menu_icons.asm)
-; - Pokered_MonIndices (see engine/time_capsule/conversion.asm)
-; - SortedPokemon (see misc/fixed_words.asm)
+; - AlphabeticalPokedexOrder (see data/pokemon/dex_order_alpha.asm)
+; - NewPokedexOrder (see data/pokemon/dex_order_new.asm)
+; - MonMenuIcons (see data/pokemon/menu_icons.asm)
+; - Pokered_MonIndices (see data/time_capsule/mon_order.asm)
+; - SortedPokemon (see mobile/fixed_words.asm)
const_value set 1
const BULBASAUR ; 01
const IVYSAUR ; 02
diff --git a/constants/pokemon_data_constants.asm b/constants/pokemon_data_constants.asm
index 3c6b77206..4093adfa9 100644
--- a/constants/pokemon_data_constants.asm
+++ b/constants/pokemon_data_constants.asm
@@ -1,4 +1,4 @@
-; base data struct members (see data/base_stats/*.asm)
+; base data struct members (see data/pokemon/base_stats/*.asm)
BASE_DEX_NO EQUS "(BaseDexNo - CurBaseData)"
BASE_STATS EQUS "(BaseStats - CurBaseData)"
BASE_HP EQUS "(BaseHP - CurBaseData)"
@@ -25,8 +25,17 @@ BASE_EGG_GROUPS EQUS "(BaseEggGroups - CurBaseData)"
BASE_TMHM EQUS "(BaseTMHM - CurBaseData)"
BASE_DATA_SIZE EQUS "(CurBaseDataEnd - CurBaseData)"
+; gender ratio constants
+GENDER_F0 EQU 0 percent
+GENDER_F12_5 EQU 31 ; 12.5 percent
+GENDER_F25 EQU 25 percent
+GENDER_F50 EQU 50 percent
+GENDER_F75 EQU 75 percent
+GENDER_F100 EQU 254 ; 100 percent
+GENDERLESS EQU 255
+
; BaseGrowthRate values
-; GrowthRates indexes (see main.asm)
+; GrowthRates indexes (see data/growth_rates.asm)
const_def
const MEDIUM_FAST
const SLIGHTLY_FAST
@@ -136,7 +145,7 @@ PARTY_LENGTH EQU 6
const ICON_BIGMON
-; evolution types (used in data/evos_attacks.asm)
+; evolution types (used in data/pokemon/evos_attacks.asm)
const_value SET 1
const EVOLVE_LEVEL
const EVOLVE_ITEM
diff --git a/constants/std_constants.asm b/constants/std_constants.asm
index 0667f020f..21fb6791f 100644
--- a/constants/std_constants.asm
+++ b/constants/std_constants.asm
@@ -1,5 +1,5 @@
; StdScripts indexes (see engine/std_scripts.asm)
-; also used in CheckFacingTileForStd (see main.asm)
+; also used in TileCollisionStdScripts (see data/collision_stdscripts.asm)
enum_start
enum pokecenternurse
enum difficultbookshelf
diff --git a/constants/trainer_constants.asm b/constants/trainer_constants.asm
index 49a0df454..f2fb72714 100644
--- a/constants/trainer_constants.asm
+++ b/constants/trainer_constants.asm
@@ -1,11 +1,17 @@
+trainerclass: MACRO
+ enum \1
+const_value = 1
+ENDM
+
; trainer class ids
; `trainerclass` indexes are for:
-; - TrainerClassAttributes (see trainers/attributes.asm)
-; - TrainerClassDVs (see trainers/dvs.asm)
-; - TrainerEncounterMusic (see trainers/encounter_music.asm)
-; - TrainerGroups (see trainers/trainer_pointers.asm)
-; - BTTrainerClassGenders (see misc/battle_tower_47.asm)
-; trainer constants are Trainers indexes, for the sub-tables of TrainerGroups (see trainers/trainers.asm)
+; - TrainerClassAttributes (see data/trainers/trainer_attributes.asm)
+; - TrainerClassDVs (see data/trainers/trainer_dvs.asm)
+; - TrainerClassNames (see data/trainers/trainer_class_names.asm)
+; - TrainerEncounterMusic (see data/trainers/encounter_music.asm)
+; - TrainerGroups (see data/trainers/party_pointers.asm)
+; - BTTrainerClassGenders (see data/trainers/gendered_trainers.asm)
+; trainer constants are Trainers indexes, for the sub-tables of TrainerGroups (see data/trainers/parties.asm)
enum_start
CHRIS EQU __enum__
trainerclass TRAINER_NONE ; 0
@@ -672,7 +678,7 @@ KRIS EQU __enum__
NUM_TRAINER_CLASSES EQU __enum__
-; TrainerClassAttributes fields (see trainers/attributes.asm)
+; TrainerClassAttributes fields (see data/trainers/trainer_attributes.asm)
const_def
const TRNATTR_ITEM1
const TRNATTR_ITEM2
diff --git a/constants/wram_constants.asm b/constants/wram_constants.asm
index 23692fdef..c8c49621e 100644
--- a/constants/wram_constants.asm
+++ b/constants/wram_constants.asm
@@ -107,7 +107,7 @@ REGISTERED_NUMBER EQU %00111111
; PlayerState: ; d95d
PLAYER_NORMAL EQU 0
PLAYER_BIKE EQU 1
-PLAYER_SLIP EQU 2
+PLAYER_SKATE EQU 2
PLAYER_SURF EQU 4
PLAYER_SURF_PIKA EQU 8