Skip to content

Commit

Permalink
Revise some constant definitions
Browse files Browse the repository at this point in the history
  • Loading branch information
Rangi42 committed Mar 16, 2021
1 parent 52bcd78 commit 3684296
Show file tree
Hide file tree
Showing 27 changed files with 91 additions and 80 deletions.
3 changes: 3 additions & 0 deletions audio/notes.asm
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
FrequencyTable:
table_width 2, FrequencyTable
dw 0 ; __
dw $f82c ; C_
dw $f89d ; C#
Expand All @@ -12,6 +13,7 @@ FrequencyTable:
dw $fb58 ; A_
dw $fb9b ; A#
dw $fbda ; B_
assert_table_length NUM_NOTES + 1
dw $fc16 ; C_
dw $fc4e ; C#
dw $fc83 ; D_
Expand All @@ -24,3 +26,4 @@ FrequencyTable:
dw $fdac ; A_
dw $fdcd ; A#
dw $fded ; B_
assert_table_length NUM_NOTES * 2 + 1
1 change: 1 addition & 0 deletions constants/audio_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
const A_ ; a
const A# ; b
const B_ ; c
NUM_NOTES EQU const_value - 1

; channel
; ChannelPointers indexes (see audio/engine.asm)
Expand Down
22 changes: 11 additions & 11 deletions constants/battle_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,15 @@ BASE_AI_SWITCH_SCORE EQU 10
NUM_LEVEL_STATS EQU const_value

; move struct members (see data/moves/moves.asm)
const_def
const MOVE_ANIM ; 0
const MOVE_EFFECT ; 1
const MOVE_POWER ; 2
const MOVE_TYPE ; 3
const MOVE_ACC ; 4
const MOVE_PP ; 5
const MOVE_CHANCE ; 6
MOVE_LENGTH EQU const_value
rsreset
MOVE_ANIM rb ; 0
MOVE_EFFECT rb ; 1
MOVE_POWER rb ; 2
MOVE_TYPE rb ; 3
MOVE_ACC rb ; 4
MOVE_PP rb ; 5
MOVE_CHANCE rb ; 6
MOVE_LENGTH EQU _RS

; stat constants
; indexes for:
Expand Down Expand Up @@ -97,7 +97,7 @@ SPDSPCDV_SHINY EQU $AA
const BATTLETYPE_CELEBI
const BATTLETYPE_SUICUNE

; BattleVarPairs indexes (see home/battle.asm)
; BattleVarPairs indexes (see home/battle_vars.asm)
const_def
const BATTLE_VARS_SUBSTATUS1
const BATTLE_VARS_SUBSTATUS2
Expand All @@ -122,7 +122,7 @@ SPDSPCDV_SHINY EQU $AA
const BATTLE_VARS_LAST_MOVE_OPP
NUM_BATTLE_VARS EQU const_value

; BattleVarLocations indexes (see home/battle.asm)
; BattleVarLocations indexes (see home/battle_vars.asm)
const_def
const PLAYER_SUBSTATUS_1
const ENEMY_SUBSTATUS_1
Expand Down
2 changes: 1 addition & 1 deletion constants/gfx_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ EXP_BAR_LENGTH EQU 8 ; tiles
HP_BAR_LENGTH_PX EQU HP_BAR_LENGTH * TILE_WIDTH ; pixels
EXP_BAR_LENGTH_PX EQU EXP_BAR_LENGTH * TILE_WIDTH ; pixels

; GetHPPal return values (see home.asm)
; GetHPPal return values (see home/tilemap.asm)
HP_GREEN EQU 0
HP_YELLOW EQU 1
HP_RED EQU 2
Expand Down
5 changes: 3 additions & 2 deletions constants/hardware_constants.asm
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
; Graciously aped from:
; http://nocash.emubase.de/pandocs.htm
; Graciously derived from:
; https://gbdev.io/pandocs/
; https://github.com/gbdev/hardware.inc
; http://gameboy.mongenel.com/dmg/asmmemmap.html

; memory map
Expand Down
2 changes: 1 addition & 1 deletion constants/landmark_constants.asm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
; Landmarks indexes (see data/maps/landmarks.asm)
const_def
; Johto landmarks
const LANDMARK_SPECIAL ; 00
; Johto landmarks
const LANDMARK_NEW_BARK_TOWN ; 01
const LANDMARK_ROUTE_29 ; 02
const LANDMARK_CHERRYGROVE_CITY ; 03
Expand Down
2 changes: 2 additions & 0 deletions constants/map_data_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ MAP_FISHGROUP rb ; 8
MAP_LENGTH EQU _RS

; map environments (wEnvironment)
; EnvironmentColorsPointers indexes (see data/maps/environment_colors.asm)
const_def 1
const TOWN
const ROUTE
Expand All @@ -26,6 +27,7 @@ MAP_LENGTH EQU _RS
const ENVIRONMENT_5
const GATE
const DUNGEON
NUM_ENVIRONMENTS EQU const_value - 1

; map palettes (wEnvironment)
const_def
Expand Down
1 change: 1 addition & 0 deletions constants/map_setup_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
const MAPSETUP_SUBMENU ; fa
const MAPSETUP_BADWARP ; fb
const MAPSETUP_FLY ; fc
NUM_MAPSETUP_SCRIPTS EQU const_value - $f1

; callback types
const_def 1
Expand Down
2 changes: 0 additions & 2 deletions constants/music_constants.asm
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
; song ids
; Music indexes (see audio/music_pointers.asm)
const_def

const MUSIC_NONE ; 00
const MUSIC_TITLE ; 01
const MUSIC_ROUTE_1 ; 02
Expand Down Expand Up @@ -95,7 +94,6 @@
const MUSIC_LAKE_OF_RAGE_ROCKET_RADIO ; 5a
const MUSIC_PRINTER ; 5b
const MUSIC_POST_CREDITS ; 5c

; new to Crystal
const MUSIC_CLAIR ; 5d
const MUSIC_MOBILE_ADAPTER_MENU ; 5e
Expand Down
2 changes: 1 addition & 1 deletion constants/npc_trade_constants.asm
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
; npctrade struct members (see data/events/npc_trades.asm)
; npctrade struct members (see data/events/npc_trades.asm)
rsreset
NPCTRADE_DIALOG rb
NPCTRADE_GIVEMON rb
Expand Down
26 changes: 12 additions & 14 deletions constants/phone_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -55,20 +55,18 @@ NUM_SPECIALCALLS EQU const_value - 1
SPECIALCALL_SIZE EQU 6

; phone struct members
const_def
const PHONE_CONTACT_TRAINER_CLASS
const PHONE_CONTACT_TRAINER_NUMBER
const PHONE_CONTACT_MAP_GROUP
const PHONE_CONTACT_MAP_NUMBER
const PHONE_CONTACT_SCRIPT1_TIME
const PHONE_CONTACT_SCRIPT1_BANK
const PHONE_CONTACT_SCRIPT1_ADDR
const_skip ; high PHONE_CONTACT_SCRIPT1_ADDR byte
const PHONE_CONTACT_SCRIPT2_TIME
const PHONE_CONTACT_SCRIPT2_BANK
const PHONE_CONTACT_SCRIPT2_ADDR
const_skip ; high PHONE_CONTACT_SCRIPT2_ADDR byte
PHONE_CONTACT_SIZE EQU const_value
rsreset
PHONE_CONTACT_TRAINER_CLASS rb
PHONE_CONTACT_TRAINER_NUMBER rb
PHONE_CONTACT_MAP_GROUP rb
PHONE_CONTACT_MAP_NUMBER rb
PHONE_CONTACT_SCRIPT1_TIME rb
PHONE_CONTACT_SCRIPT1_BANK rb
PHONE_CONTACT_SCRIPT1_ADDR rw
PHONE_CONTACT_SCRIPT2_TIME rb
PHONE_CONTACT_SCRIPT2_BANK rb
PHONE_CONTACT_SCRIPT2_ADDR rw
PHONE_CONTACT_SIZE EQU _RS

; maximum number of pokegear contacts
CONTACT_LIST_SIZE EQU 10
3 changes: 2 additions & 1 deletion constants/radio_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ NUM_RADIO_CHANNELS EQU const_value
const POKEDEX_SHOW_8 ; 57
NUM_RADIO_SEGMENTS EQU const_value

; PlayRadio.StationPointers indexes (see engine/pokegear/pokegear.asm)
; PlayRadioStationPointers indexes (see engine/pokegear/pokegear.asm)
const_def
const MAPRADIO_POKEMON_CHANNEL
const MAPRADIO_OAKS_POKEMON_TALK
Expand All @@ -107,6 +107,7 @@ NUM_RADIO_SEGMENTS EQU const_value
const MAPRADIO_PLACES_PEOPLE
const MAPRADIO_LETS_ALL_SING
const MAPRADIO_ROCKET
NUM_MAP_RADIO_STATIONS EQU const_value

; These tables in engine/pokegear/radio.asm are all sized to a power of 2
; so there's no need for a rejection sampling loop
Expand Down
4 changes: 3 additions & 1 deletion constants/scgb_constants.asm
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
; GetSGBLayout arguments (see engine/gfx/cgb_layouts.asm and engine/gfx/sgb_layouts.asm)
; CGBLayoutJumptable indexes (see engine/gfx/cgb_layouts.asm)
; SGBLayoutJumptable indexes (see engine/gfx/sgb_layouts.asm)
const_def
const SCGB_BATTLE_GRAYSCALE
const SCGB_BATTLE_COLORS
Expand Down Expand Up @@ -31,6 +32,7 @@
const SCGB_TRAINER_OR_MON_FRONTPIC_PALS
const SCGB_MYSTERY_GIFT
const SCGB_1E
NUM_SCGB_LAYOUTS EQU const_value

SCGB_PARTY_MENU_HP_BARS EQU $fc
SCGB_DEFAULT EQU $ff
Expand Down
2 changes: 1 addition & 1 deletion constants/script_constants.asm
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
; person constants
; object constants
PLAYER EQU 0
LAST_TALKED EQU -2

Expand Down
3 changes: 0 additions & 3 deletions constants/sfx_constants.asm
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
; SFX indexes (see audio/sfx_pointers.asm)
const_def

const SFX_DEX_FANFARE_50_79 ; 00
const SFX_ITEM ; 01
const SFX_CAUGHT_MON ; 02
Expand Down Expand Up @@ -189,7 +188,6 @@
const SFX_TRAIN_ARRIVED ; b9
const SFX_STOP_SLOT ; ba
const SFX_2_BOOPS ; bb

; new to Crystal
const SFX_GLASS_TING ; bc
const SFX_GLASS_TING_2 ; bd
Expand All @@ -210,5 +208,4 @@
const SFX_TWO_PC_BEEPS ; cc
const SFX_4_NOTE_DITTY ; cd
const SFX_TWINKLE ; ce

NUM_SFX EQU const_value
17 changes: 8 additions & 9 deletions constants/sprite_data_constants.asm
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
; overworld_sprite struct members (see data/sprites.asm)
const_def
const SPRITEDATA_ADDR ; 0
const_skip ; high SPRITEDATA_ADDR byte
const SPRITEDATA_SIZE ; 2
const SPRITEDATA_BANK ; 3
const SPRITEDATA_TYPE ; 4
const SPRITEDATA_PALETTE ; 5
NUM_SPRITEDATA_FIELDS EQU const_value
; overworld_sprite struct members (see data/sprites/sprites.asm)
rsreset
SPRITEDATA_ADDR rw ; 0
SPRITEDATA_SIZE rb ; 2
SPRITEDATA_BANK rb ; 3
SPRITEDATA_TYPE rb ; 4
SPRITEDATA_PALETTE rb ; 5
NUM_SPRITEDATA_FIELDS EQU _RS

; sprite types
const_def 1
Expand Down
21 changes: 12 additions & 9 deletions constants/text_constants.asm
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
; name lengths
NAME_LENGTH EQU 11
PLAYER_NAME_LENGTH EQU 8
BOX_NAME_LENGTH EQU 9
MON_NAME_LENGTH EQU 11
MOVE_NAME_LENGTH EQU 13
ITEM_NAME_LENGTH EQU 13
NAME_LENGTH EQU 11
PLAYER_NAME_LENGTH EQU 8
BOX_NAME_LENGTH EQU 9
MON_NAME_LENGTH EQU 11
MOVE_NAME_LENGTH EQU 13
ITEM_NAME_LENGTH EQU 13
TRAINER_CLASS_NAME_LENGTH EQU 13
NAME_LENGTH_JAPANESE EQU 6

Expand All @@ -30,16 +30,19 @@ TEXTBOX_INNERX EQU TEXTBOX_X + 1
TEXTBOX_Y EQU SCREEN_HEIGHT - TEXTBOX_HEIGHT
TEXTBOX_INNERY EQU TEXTBOX_Y + 2

; see gfx/frames/*.png
TEXTBOX_FRAME_TILES EQU 6

; PrintNum bit flags
const_def 5
const PRINTNUM_MONEY_F ; 5
const PRINTNUM_LEFTALIGN_F ; 6
const PRINTNUM_LEADINGZEROS_F ; 7

; PrintNum arguments (see engine/math/print_num.asm)
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
PRINTNUM_LEFTALIGN EQU 1 << PRINTNUM_LEFTALIGN_F
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
PRINTNUM_LEFTALIGN EQU 1 << PRINTNUM_LEFTALIGN_F
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F

; character sets (see charmap.asm)
FIRST_REGULAR_TEXT_CHAR EQU $60
Expand Down
16 changes: 7 additions & 9 deletions constants/trainer_data_constants.asm
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
; TrainerClassAttributes struct members (see data/trainers/attributes.asm)
const_def
const TRNATTR_ITEM1 ; 0
const TRNATTR_ITEM2 ; 1
const TRNATTR_BASEMONEY ; 2
const TRNATTR_AI_MOVE_WEIGHTS ; 3
const_skip ; high TRNATTR_AI_MOVE_WEIGHTS byte
const TRNATTR_AI_ITEM_SWITCH ; 5
const_skip ; high TRNATTR_AI_ITEM_SWITCH byte
NUM_TRAINER_ATTRIBUTES EQU const_value
rsreset
TRNATTR_ITEM1 rb ; 0
TRNATTR_ITEM2 rb ; 1
TRNATTR_BASEMONEY rb ; 2
TRNATTR_AI_MOVE_WEIGHTS rw ; 3
TRNATTR_AI_ITEM_SWITCH rw ; 5
NUM_TRAINER_ATTRIBUTES EQU _RS

; TRNATTR_AI_MOVE_WEIGHTS bit flags (wEnemyTrainerAIFlags)
; AIScoringPointers indexes (see engine/battle/ai/move.asm)
Expand Down
2 changes: 2 additions & 0 deletions data/maps/environment_colors.asm
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
EnvironmentColorsPointers:
; entries correspond to environment constants (see constants/map_data_constants.asm)
table_width 2, EnvironmentColorsPointers
dw .OutdoorColors ; unused
dw .OutdoorColors ; TOWN
dw .OutdoorColors ; ROUTE
Expand All @@ -8,6 +9,7 @@ EnvironmentColorsPointers:
dw .Env5Colors ; ENVIRONMENT_5
dw .IndoorColors ; GATE
dw .DungeonColors ; DUNGEON
assert_table_length NUM_ENVIRONMENTS + 1

; Valid indices: $00 - $29 (see gfx/tilesets/bg_tiles.pal)
.OutdoorColors:
Expand Down
2 changes: 2 additions & 0 deletions data/maps/setup_scripts.asm
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
MapSetupScripts:
; entries correspond to MAPSETUP_* constants (see constants/map_setup_constants.asm)
table_width 2, MapSetupScripts
dw MapSetupScript_Warp
dw MapSetupScript_Continue
dw MapSetupScript_ReloadMap
Expand All @@ -12,6 +13,7 @@ MapSetupScripts:
dw MapSetupScript_Submenu
dw MapSetupScript_BadWarp
dw MapSetupScript_Fly
assert_table_length NUM_MAPSETUP_SCRIPTS

; valid commands are listed in MapSetupCommands (see data/maps/setup_script_pointers.asm)
mapsetup: MACRO
Expand Down
6 changes: 4 additions & 2 deletions engine/gfx/cgb_layouts.asm
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ LoadSGBLayoutCGB:
ld l, a
ld h, 0
add hl, hl
ld de, .Jumptable
ld de, CGBLayoutJumptable
add hl, de
ld a, [hli]
ld h, [hl]
Expand All @@ -28,7 +28,8 @@ LoadSGBLayoutCGB:
.done:
ret

.Jumptable:
CGBLayoutJumptable:
table_width 2, CGBLayoutJumptable
dw _CGB_BattleGrayscale
dw _CGB_BattleColors
dw _CGB_PokegearPals
Expand Down Expand Up @@ -60,6 +61,7 @@ LoadSGBLayoutCGB:
dw _CGB_TrainerOrMonFrontpicPals
dw _CGB_MysteryGift
dw _CGB_Unused1E
assert_table_length NUM_SCGB_LAYOUTS

_CGB_BattleGrayscale:
ld hl, PalPacket_BattleGrayscale + 1
Expand Down
4 changes: 2 additions & 2 deletions engine/gfx/load_font.asm
Original file line number Diff line number Diff line change
Expand Up @@ -74,13 +74,13 @@ _LoadFontsBattleExtra::
LoadFrame:
ld a, [wTextboxFrame]
maskbits NUM_FRAMES
ld bc, 6 * LEN_1BPP_TILE
ld bc, TEXTBOX_FRAME_TILES * LEN_1BPP_TILE
ld hl, Frames
call AddNTimes
ld d, h
ld e, l
ld hl, vTiles2 tile "┌" ; $79
lb bc, BANK(Frames), 6 ; "┌" to "┘"
lb bc, BANK(Frames), TEXTBOX_FRAME_TILES ; "┌" to "┘"
call Get1bppViaHDMA
ld hl, vTiles2 tile " " ; $7f
ld de, TextboxSpaceGFX
Expand Down
Loading

0 comments on commit 3684296

Please sign in to comment.