shithub: pokecrystal

Download patch

ref: 4c239a6f65bb995be8f400c05f0c9cb38beae326
parent: 53e1c480922fb3e6aaf1790a2c6ba10fcada9bb6
author: vulcandth <vulcandth@gmail.com>
date: Sat Sep 10 20:05:07 EDT 2022

Rename `macros/wram.asm` to `macros/ram.asm` (#1003)


--- a/constants/audio_constants.asm
+++ b/constants/audio_constants.asm
@@ -30,7 +30,7 @@
 DEF NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS
 DEF NUM_CHANNELS EQU const_value
 
-; channel_struct members (see macros/wram.asm)
+; channel_struct members (see macros/ram.asm)
 rsreset
 DEF CHANNEL_MUSIC_ID                    rw
 DEF CHANNEL_MUSIC_BANK                  rb
--- a/constants/battle_anim_constants.asm
+++ b/constants/battle_anim_constants.asm
@@ -1,4 +1,4 @@
-; battle_anim_struct members (see macros/wram.asm)
+; battle_anim_struct members (see macros/ram.asm)
 rsreset
 DEF BATTLEANIMSTRUCT_INDEX           rb
 DEF BATTLEANIMSTRUCT_OAMFLAGS        rb
@@ -816,7 +816,7 @@
 	const ANIM_GFX_ENEMYFEET
 DEF NUM_ANIM_GFX EQU const_value - 1
 
-; battle_bg_effect struct members (see macros/wram.asm)
+; battle_bg_effect struct members (see macros/ram.asm)
 rsreset
 DEF BG_EFFECT_STRUCT_FUNCTION    rb
 DEF BG_EFFECT_STRUCT_JT_INDEX    rb
--- a/constants/battle_constants.asm
+++ b/constants/battle_constants.asm
@@ -54,7 +54,7 @@
 ; stat constants
 ; indexes for:
 ; - wPlayerStats and wEnemyStats (see wram.asm)
-; - party_struct and battle_struct members (see macros/wram.asm)
+; - party_struct and battle_struct members (see macros/ram.asm)
 	const_def 1
 	const STAT_HP
 	const STAT_ATK
--- a/constants/gfx_constants.asm
+++ b/constants/gfx_constants.asm
@@ -33,7 +33,7 @@
 DEF HP_YELLOW EQU 1
 DEF HP_RED    EQU 2
 
-; sprite_oam_struct members (see macros/wram.asm)
+; sprite_oam_struct members (see macros/ram.asm)
 rsreset
 DEF SPRITEOAMSTRUCT_YCOORD     rb ; 0
 DEF SPRITEOAMSTRUCT_XCOORD     rb ; 1
--- a/constants/map_object_constants.asm
+++ b/constants/map_object_constants.asm
@@ -1,4 +1,4 @@
-; object_struct members (see macros/wram.asm)
+; object_struct members (see macros/ram.asm)
 rsreset
 DEF OBJECT_SPRITE              rb ; 00
 DEF OBJECT_MAP_OBJECT_INDEX    rb ; 01
@@ -96,7 +96,7 @@
 DEF RELATIVE_ATTRIBUTES EQU 1 << RELATIVE_ATTRIBUTES_F
 DEF ABSOLUTE_TILE_ID    EQU 1 << ABSOLUTE_TILE_ID_F
 
-; map_object struct members (see macros/wram.asm)
+; map_object struct members (see macros/ram.asm)
 rsreset
 DEF MAPOBJECT_OBJECT_STRUCT_ID rb ; 0
 DEF MAPOBJECT_SPRITE           rb ; 1
--- a/constants/pokemon_data_constants.asm
+++ b/constants/pokemon_data_constants.asm
@@ -72,7 +72,7 @@
 ; pokedex entries (see data/pokemon/dex_entries.asm)
 DEF NUM_DEX_ENTRY_BANKS EQU 4
 
-; party_struct members (see macros/wram.asm)
+; party_struct members (see macros/ram.asm)
 rsreset
 DEF MON_SPECIES            rb
 DEF MON_ITEM               rb
--- a/constants/sprite_anim_constants.asm
+++ b/constants/sprite_anim_constants.asm
@@ -1,4 +1,4 @@
-; sprite_anim_struct members (see macros/wram.asm)
+; sprite_anim_struct members (see macros/ram.asm)
 rsreset
 DEF SPRITEANIMSTRUCT_INDEX           rb ; 0
 DEF SPRITEANIMSTRUCT_FRAMESET_ID     rb ; 1
--- a/docs/design_flaws.md
+++ b/docs/design_flaws.md
@@ -621,7 +621,7 @@
 
 ## The 6-bit caught level can only record up to level 63
 
-Crystal added the Poké Seer, who tells you your Pokémon's caught data: where it was caught, what time, and at what level. The status screen also displays the gender of its Original Trainer, since Crystal added player genders. This data is packed into two previously-unused bytes in the `box_struct`; from [macros/wram.asm](https://github.com/pret/pokecrystal/blob/master/macros/wram.asm):
+Crystal added the Poké Seer, who tells you your Pokémon's caught data: where it was caught, what time, and at what level. The status screen also displays the gender of its Original Trainer, since Crystal added player genders. This data is packed into two previously-unused bytes in the `box_struct`; from [macros/ram.asm](https://github.com/pret/pokecrystal/blob/master/macros/ram.asm):
 
 ```asm
 MACRO box_struct
--- a/engine/games/slot_machine.asm
+++ b/engine/games/slot_machine.asm
@@ -14,7 +14,7 @@
 
 DEF REEL_SIZE EQU 15
 
-; Constants for slot_reel offsets (see macros/wram.asm)
+; Constants for slot_reel offsets (see macros/ram.asm)
 rsreset
 DEF REEL_ACTION        rb ; 0
 DEF REEL_TILEMAP_ADDR  rw ; 1
--- /dev/null
+++ b/macros/ram.asm
@@ -1,0 +1,396 @@
+; Used in wram.asm
+
+MACRO flag_array
+	ds ((\1) + 7) / 8
+ENDM
+
+MACRO box_struct
+\1Species::        db
+\1Item::           db
+\1Moves::          ds NUM_MOVES
+\1ID::             dw
+\1Exp::            ds 3
+\1StatExp::
+\1HPExp::          dw
+\1AtkExp::         dw
+\1DefExp::         dw
+\1SpdExp::         dw
+\1SpcExp::         dw
+\1DVs::            dw
+\1PP::             ds NUM_MOVES
+\1Happiness::      db
+\1PokerusStatus::  db
+\1CaughtData::
+\1CaughtTime::
+\1CaughtLevel::    db
+\1CaughtGender::
+\1CaughtLocation:: db
+\1Level::          db
+\1BoxEnd::
+ENDM
+
+MACRO party_struct
+	box_struct \1
+\1Status::         db
+\1Unused::         db
+\1HP::             dw
+\1MaxHP::          dw
+\1Stats:: ; big endian
+\1Attack::         dw
+\1Defense::        dw
+\1Speed::          dw
+\1SpclAtk::        dw
+\1SpclDef::        dw
+\1StructEnd::
+ENDM
+
+MACRO red_box_struct
+\1Species::    db
+\1HP::         dw
+\1BoxLevel::   db
+\1Status::     db
+\1Type::
+\1Type1::      db
+\1Type2::      db
+\1CatchRate::  db
+\1Moves::      ds NUM_MOVES
+\1ID::         dw
+\1Exp::        ds 3
+\1HPExp::      dw
+\1AttackExp::  dw
+\1DefenseExp:: dw
+\1SpeedExp::   dw
+\1SpecialExp:: dw
+\1DVs::        dw
+\1PP::         ds NUM_MOVES
+ENDM
+
+MACRO red_party_struct
+	red_box_struct \1
+\1Level::      db
+\1Stats::
+\1MaxHP::      dw
+\1Attack::     dw
+\1Defense::    dw
+\1Speed::      dw
+\1Special::    dw
+ENDM
+
+MACRO battle_struct
+\1Species::   db
+\1Item::      db
+\1Moves::     ds NUM_MOVES
+\1DVs::       dw
+\1PP::        ds NUM_MOVES
+\1Happiness:: db
+\1Level::     db
+\1Status::    ds 2
+\1HP::        dw
+\1MaxHP::     dw
+\1Stats:: ; big endian
+\1Attack::    dw
+\1Defense::   dw
+\1Speed::     dw
+\1SpclAtk::   dw
+\1SpclDef::   dw
+\1Type::
+\1Type1::     db
+\1Type2::     db
+\1StructEnd::
+ENDM
+
+MACRO box
+\1Count::   db
+\1Species:: ds MONS_PER_BOX + 1
+\1Mons::
+	; \1Mon1 - \1Mon20
+	for n, 1, MONS_PER_BOX + 1
+	\1Mon{d:n}:: box_struct \1Mon{d:n}
+	endr
+\1MonOTs::
+	; \1Mon1OT - \1Mon20OT
+	for n, 1, MONS_PER_BOX + 1
+	\1Mon{d:n}OT:: ds NAME_LENGTH
+	endr
+\1MonNicknames::
+	; \1Mon1Nickname - \1Mon20Nickname
+	for n, 1, MONS_PER_BOX + 1
+	\1Mon{d:n}Nickname:: ds MON_NAME_LENGTH
+	endr
+\1MonNicknamesEnd::
+\1End::
+	ds 2 ; padding
+ENDM
+
+MACRO map_connection_struct
+\1ConnectedMapGroup::       db
+\1ConnectedMapNumber::      db
+\1ConnectionStripPointer::  dw
+\1ConnectionStripLocation:: dw
+\1ConnectionStripLength::   db
+\1ConnectedMapWidth::       db
+\1ConnectionStripYOffset::  db
+\1ConnectionStripXOffset::  db
+\1ConnectionWindow::        dw
+ENDM
+
+MACRO channel_struct
+\1MusicID::           dw
+\1MusicBank::         db
+\1Flags1::            db ; 0:on/off 1:subroutine 2:looping 3:sfx 4:noise 5:rest
+\1Flags2::            db ; 0:vibrato on/off 1:pitch slide 2:duty cycle pattern 4:pitch offset
+\1Flags3::            db ; 0:vibrato up/down 1:pitch slide direction
+\1MusicAddress::      dw
+\1LastMusicAddress::  dw
+                      dw
+\1NoteFlags::         db ; 5:rest
+\1Condition::         db ; conditional jumps
+\1DutyCycle::         db ; bits 6-7 (0:12.5% 1:25% 2:50% 3:75%)
+\1VolumeEnvelope::    db ; hi:volume lo:fade
+\1Frequency::         dw ; 11 bits
+\1Pitch::             db ; 0:rest 1-c:note
+\1Octave::            db ; 7-0 (0 is highest)
+\1Transposition::     db ; raises existing octaves (to repeat phrases)
+\1NoteDuration::      db ; frames remaining for the current note
+\1Field16::           ds 1
+                      ds 1
+\1LoopCount::         db
+\1Tempo::             dw
+\1Tracks::            db ; hi:left lo:right
+\1DutyCyclePattern::  db
+\1VibratoDelayCount:: db ; initialized by \1VibratoDelay
+\1VibratoDelay::      db ; number of frames a note plays until vibrato starts
+\1VibratoExtent::     db
+\1VibratoRate::       db ; hi:frames for each alt lo:frames to the next alt
+\1PitchSlideTarget::  dw ; frequency endpoint for pitch slide
+\1PitchSlideAmount::  db
+\1PitchSlideAmountFraction:: db
+\1Field25::           db
+                      ds 1
+\1PitchOffset::       dw
+\1Field29::           ds 1
+\1Field2a::           ds 2
+\1Field2c::           ds 1
+\1NoteLength::        db ; frames per 16th note
+\1Field2e::           ds 1
+\1Field2f::           ds 1
+\1Field30::           ds 1
+                      ds 1
+ENDM
+
+MACRO battle_tower_struct
+\1Name::         ds NAME_LENGTH - 1
+\1TrainerClass:: db
+	; \1Mon1 - \1Mon3 and \1Mon1Name - \1Mon3Name
+	for n, 1, BATTLETOWER_PARTY_LENGTH + 1
+	\1Mon{d:n}::     party_struct \1Mon{d:n}
+	\1Mon{d:n}Name:: ds MON_NAME_LENGTH
+	endr
+\1TrainerData::  ds BATTLETOWER_TRAINERDATALENGTH
+\1TrainerEnd::
+ENDM
+
+MACRO mailmsg
+\1Message::     ds MAIL_MSG_LENGTH
+\1MessageEnd::  db
+\1Author::      ds PLAYER_NAME_LENGTH
+\1Nationality:: dw
+\1AuthorID::    dw
+\1Species::     db
+\1Type::        db
+\1End::
+ENDM
+
+MACRO roam_struct
+\1Species::   db
+\1Level::     db
+\1MapGroup::  db
+\1MapNumber:: db
+\1HP::        db
+\1DVs::       dw
+ENDM
+
+MACRO bugcontestwinner
+\1WinnerID:: db
+\1Mon::      db
+\1Score::    dw
+ENDM
+
+MACRO hof_mon
+\1Species::  db
+\1ID::       dw
+\1DVs::      dw
+\1Level::    db
+\1Nickname:: ds MON_NAME_LENGTH - 1
+\1End::
+ENDM
+
+MACRO hall_of_fame
+\1WinCount:: db
+	; \1Mon1 - \1Mon6
+	for n, 1, PARTY_LENGTH + 1
+	\1Mon{d:n}:: hof_mon \1Mon{d:n}
+	endr
+\1End:: db
+ENDM
+
+MACRO link_battle_record
+\1ID::     dw
+\1Name::   ds NAME_LENGTH - 1
+\1Wins::   dw
+\1Losses:: dw
+\1Draws::  dw
+\1End::
+ENDM
+
+MACRO trademon
+\1Species::     db
+\1SpeciesName:: ds MON_NAME_LENGTH
+\1Nickname::    ds MON_NAME_LENGTH
+\1SenderName::  ds NAME_LENGTH
+\1OTName::      ds NAME_LENGTH
+\1DVs::         dw
+\1ID::          dw
+\1CaughtData::  db
+\1End::
+ENDM
+
+MACRO move_struct
+\1Animation::    db
+\1Effect::       db
+\1Power::        db
+\1Type::         db
+\1Accuracy::     db
+\1PP::           db
+\1EffectChance:: db
+ENDM
+
+MACRO slot_reel
+\1ReelAction::   db
+\1TilemapAddr::  dw
+\1Position::     db
+\1SpinDistance:: db
+\1SpinRate::     db
+\1OAMAddr::      dw
+\1XCoord::       db
+\1ManipCounter:: db
+\1ManipDelay::   db
+\1Field0b::      ds 1
+\1Field0c::      ds 1
+\1Field0d::      ds 1
+\1Field0e::      ds 1
+\1StopDelay::    db
+ENDM
+
+MACRO object_struct
+\1Sprite::            db
+\1MapObjectIndex::    db
+\1SpriteTile::        db
+\1MovementType::      db
+\1Flags::             dw
+\1Palette::           db
+\1Walking::           db
+\1Direction::         db
+\1StepType::          db
+\1StepDuration::      db
+\1Action::            db
+\1ObjectStepFrame::   db
+\1Facing::            db
+\1StandingTile::      db ; collision
+\1LastTile::          db ; collision
+\1StandingMapX::      db
+\1StandingMapY::      db
+\1LastMapX::          db
+\1LastMapY::          db
+\1ObjectInitX::       db
+\1ObjectInitY::       db
+\1Radius::            db
+\1SpriteX::           db
+\1SpriteY::           db
+\1SpriteXOffset::     db
+\1SpriteYOffset::     db
+\1MovementByteIndex:: db
+\1Field1c::           ds 1
+\1Field1d::           ds 1
+\1Field1e::           ds 1
+\1Field1f::           ds 1
+\1Range::             db
+	ds 7
+\1StructEnd::
+ENDM
+
+MACRO map_object
+\1ObjectStructID::  db
+\1ObjectSprite::    db
+\1ObjectYCoord::    db
+\1ObjectXCoord::    db
+\1ObjectMovement::  db
+\1ObjectRadius::    db
+\1ObjectHour::      db
+\1ObjectTimeOfDay:: db
+\1ObjectColor::     db
+\1ObjectRange::     db
+\1ObjectScript::    dw
+\1ObjectEventFlag:: dw
+	ds 2
+ENDM
+
+MACRO sprite_oam_struct
+\1YCoord::     db
+\1XCoord::     db
+\1TileID::     db
+\1Attributes:: db
+; bit 7: priority
+; bit 6: y flip
+; bit 5: x flip
+; bit 4: pal # (non-cgb)
+; bit 3: vram bank (cgb only)
+; bit 2-0: pal # (cgb only)
+ENDM
+
+MACRO sprite_anim_struct
+\1Index::          db
+\1FramesetID::     db
+\1AnimSeqID::      db
+\1TileID::         db
+\1XCoord::         db
+\1YCoord::         db
+\1XOffset::        db
+\1YOffset::        db
+\1Duration::       db
+\1DurationOffset:: db
+\1FrameIndex::     db
+\1JumptableIndex:: db
+\1Var1::           ds 1
+\1Var2::           ds 1
+\1Var3::           ds 1
+\1Var4::           ds 1
+ENDM
+
+MACRO battle_anim_struct
+\1Index::          db
+\1OAMFlags::       db
+\1FixY::           db
+\1FramesetID::     db
+\1Function::       db
+\1Palette::        db
+\1TileID::         db
+\1XCoord::         db
+\1YCoord::         db
+\1XOffset::        db
+\1YOffset::        db
+\1Param::          db
+\1Duration::       db
+\1Frame::          db
+\1JumptableIndex:: db
+\1Var1::           db
+\1Var2::           db
+	ds 7
+ENDM
+
+MACRO battle_bg_effect
+\1Function::       db
+\1JumptableIndex:: db
+\1BattleTurn::     db
+\1Param::          db
+ENDM
--- a/macros/wram.asm
+++ /dev/null
@@ -1,396 +1,0 @@
-; Used in wram.asm
-
-MACRO flag_array
-	ds ((\1) + 7) / 8
-ENDM
-
-MACRO box_struct
-\1Species::        db
-\1Item::           db
-\1Moves::          ds NUM_MOVES
-\1ID::             dw
-\1Exp::            ds 3
-\1StatExp::
-\1HPExp::          dw
-\1AtkExp::         dw
-\1DefExp::         dw
-\1SpdExp::         dw
-\1SpcExp::         dw
-\1DVs::            dw
-\1PP::             ds NUM_MOVES
-\1Happiness::      db
-\1PokerusStatus::  db
-\1CaughtData::
-\1CaughtTime::
-\1CaughtLevel::    db
-\1CaughtGender::
-\1CaughtLocation:: db
-\1Level::          db
-\1BoxEnd::
-ENDM
-
-MACRO party_struct
-	box_struct \1
-\1Status::         db
-\1Unused::         db
-\1HP::             dw
-\1MaxHP::          dw
-\1Stats:: ; big endian
-\1Attack::         dw
-\1Defense::        dw
-\1Speed::          dw
-\1SpclAtk::        dw
-\1SpclDef::        dw
-\1StructEnd::
-ENDM
-
-MACRO red_box_struct
-\1Species::    db
-\1HP::         dw
-\1BoxLevel::   db
-\1Status::     db
-\1Type::
-\1Type1::      db
-\1Type2::      db
-\1CatchRate::  db
-\1Moves::      ds NUM_MOVES
-\1ID::         dw
-\1Exp::        ds 3
-\1HPExp::      dw
-\1AttackExp::  dw
-\1DefenseExp:: dw
-\1SpeedExp::   dw
-\1SpecialExp:: dw
-\1DVs::        dw
-\1PP::         ds NUM_MOVES
-ENDM
-
-MACRO red_party_struct
-	red_box_struct \1
-\1Level::      db
-\1Stats::
-\1MaxHP::      dw
-\1Attack::     dw
-\1Defense::    dw
-\1Speed::      dw
-\1Special::    dw
-ENDM
-
-MACRO battle_struct
-\1Species::   db
-\1Item::      db
-\1Moves::     ds NUM_MOVES
-\1DVs::       dw
-\1PP::        ds NUM_MOVES
-\1Happiness:: db
-\1Level::     db
-\1Status::    ds 2
-\1HP::        dw
-\1MaxHP::     dw
-\1Stats:: ; big endian
-\1Attack::    dw
-\1Defense::   dw
-\1Speed::     dw
-\1SpclAtk::   dw
-\1SpclDef::   dw
-\1Type::
-\1Type1::     db
-\1Type2::     db
-\1StructEnd::
-ENDM
-
-MACRO box
-\1Count::   db
-\1Species:: ds MONS_PER_BOX + 1
-\1Mons::
-	; \1Mon1 - \1Mon20
-	for n, 1, MONS_PER_BOX + 1
-	\1Mon{d:n}:: box_struct \1Mon{d:n}
-	endr
-\1MonOTs::
-	; \1Mon1OT - \1Mon20OT
-	for n, 1, MONS_PER_BOX + 1
-	\1Mon{d:n}OT:: ds NAME_LENGTH
-	endr
-\1MonNicknames::
-	; \1Mon1Nickname - \1Mon20Nickname
-	for n, 1, MONS_PER_BOX + 1
-	\1Mon{d:n}Nickname:: ds MON_NAME_LENGTH
-	endr
-\1MonNicknamesEnd::
-\1End::
-	ds 2 ; padding
-ENDM
-
-MACRO map_connection_struct
-\1ConnectedMapGroup::       db
-\1ConnectedMapNumber::      db
-\1ConnectionStripPointer::  dw
-\1ConnectionStripLocation:: dw
-\1ConnectionStripLength::   db
-\1ConnectedMapWidth::       db
-\1ConnectionStripYOffset::  db
-\1ConnectionStripXOffset::  db
-\1ConnectionWindow::        dw
-ENDM
-
-MACRO channel_struct
-\1MusicID::           dw
-\1MusicBank::         db
-\1Flags1::            db ; 0:on/off 1:subroutine 2:looping 3:sfx 4:noise 5:rest
-\1Flags2::            db ; 0:vibrato on/off 1:pitch slide 2:duty cycle pattern 4:pitch offset
-\1Flags3::            db ; 0:vibrato up/down 1:pitch slide direction
-\1MusicAddress::      dw
-\1LastMusicAddress::  dw
-                      dw
-\1NoteFlags::         db ; 5:rest
-\1Condition::         db ; conditional jumps
-\1DutyCycle::         db ; bits 6-7 (0:12.5% 1:25% 2:50% 3:75%)
-\1VolumeEnvelope::    db ; hi:volume lo:fade
-\1Frequency::         dw ; 11 bits
-\1Pitch::             db ; 0:rest 1-c:note
-\1Octave::            db ; 7-0 (0 is highest)
-\1Transposition::     db ; raises existing octaves (to repeat phrases)
-\1NoteDuration::      db ; frames remaining for the current note
-\1Field16::           ds 1
-                      ds 1
-\1LoopCount::         db
-\1Tempo::             dw
-\1Tracks::            db ; hi:left lo:right
-\1DutyCyclePattern::  db
-\1VibratoDelayCount:: db ; initialized by \1VibratoDelay
-\1VibratoDelay::      db ; number of frames a note plays until vibrato starts
-\1VibratoExtent::     db
-\1VibratoRate::       db ; hi:frames for each alt lo:frames to the next alt
-\1PitchSlideTarget::  dw ; frequency endpoint for pitch slide
-\1PitchSlideAmount::  db
-\1PitchSlideAmountFraction:: db
-\1Field25::           db
-                      ds 1
-\1PitchOffset::       dw
-\1Field29::           ds 1
-\1Field2a::           ds 2
-\1Field2c::           ds 1
-\1NoteLength::        db ; frames per 16th note
-\1Field2e::           ds 1
-\1Field2f::           ds 1
-\1Field30::           ds 1
-                      ds 1
-ENDM
-
-MACRO battle_tower_struct
-\1Name::         ds NAME_LENGTH - 1
-\1TrainerClass:: db
-	; \1Mon1 - \1Mon3 and \1Mon1Name - \1Mon3Name
-	for n, 1, BATTLETOWER_PARTY_LENGTH + 1
-	\1Mon{d:n}::     party_struct \1Mon{d:n}
-	\1Mon{d:n}Name:: ds MON_NAME_LENGTH
-	endr
-\1TrainerData::  ds BATTLETOWER_TRAINERDATALENGTH
-\1TrainerEnd::
-ENDM
-
-MACRO mailmsg
-\1Message::     ds MAIL_MSG_LENGTH
-\1MessageEnd::  db
-\1Author::      ds PLAYER_NAME_LENGTH
-\1Nationality:: dw
-\1AuthorID::    dw
-\1Species::     db
-\1Type::        db
-\1End::
-ENDM
-
-MACRO roam_struct
-\1Species::   db
-\1Level::     db
-\1MapGroup::  db
-\1MapNumber:: db
-\1HP::        db
-\1DVs::       dw
-ENDM
-
-MACRO bugcontestwinner
-\1WinnerID:: db
-\1Mon::      db
-\1Score::    dw
-ENDM
-
-MACRO hof_mon
-\1Species::  db
-\1ID::       dw
-\1DVs::      dw
-\1Level::    db
-\1Nickname:: ds MON_NAME_LENGTH - 1
-\1End::
-ENDM
-
-MACRO hall_of_fame
-\1WinCount:: db
-	; \1Mon1 - \1Mon6
-	for n, 1, PARTY_LENGTH + 1
-	\1Mon{d:n}:: hof_mon \1Mon{d:n}
-	endr
-\1End:: db
-ENDM
-
-MACRO link_battle_record
-\1ID::     dw
-\1Name::   ds NAME_LENGTH - 1
-\1Wins::   dw
-\1Losses:: dw
-\1Draws::  dw
-\1End::
-ENDM
-
-MACRO trademon
-\1Species::     db
-\1SpeciesName:: ds MON_NAME_LENGTH
-\1Nickname::    ds MON_NAME_LENGTH
-\1SenderName::  ds NAME_LENGTH
-\1OTName::      ds NAME_LENGTH
-\1DVs::         dw
-\1ID::          dw
-\1CaughtData::  db
-\1End::
-ENDM
-
-MACRO move_struct
-\1Animation::    db
-\1Effect::       db
-\1Power::        db
-\1Type::         db
-\1Accuracy::     db
-\1PP::           db
-\1EffectChance:: db
-ENDM
-
-MACRO slot_reel
-\1ReelAction::   db
-\1TilemapAddr::  dw
-\1Position::     db
-\1SpinDistance:: db
-\1SpinRate::     db
-\1OAMAddr::      dw
-\1XCoord::       db
-\1ManipCounter:: db
-\1ManipDelay::   db
-\1Field0b::      ds 1
-\1Field0c::      ds 1
-\1Field0d::      ds 1
-\1Field0e::      ds 1
-\1StopDelay::    db
-ENDM
-
-MACRO object_struct
-\1Sprite::            db
-\1MapObjectIndex::    db
-\1SpriteTile::        db
-\1MovementType::      db
-\1Flags::             dw
-\1Palette::           db
-\1Walking::           db
-\1Direction::         db
-\1StepType::          db
-\1StepDuration::      db
-\1Action::            db
-\1ObjectStepFrame::   db
-\1Facing::            db
-\1StandingTile::      db ; collision
-\1LastTile::          db ; collision
-\1StandingMapX::      db
-\1StandingMapY::      db
-\1LastMapX::          db
-\1LastMapY::          db
-\1ObjectInitX::       db
-\1ObjectInitY::       db
-\1Radius::            db
-\1SpriteX::           db
-\1SpriteY::           db
-\1SpriteXOffset::     db
-\1SpriteYOffset::     db
-\1MovementByteIndex:: db
-\1Field1c::           ds 1
-\1Field1d::           ds 1
-\1Field1e::           ds 1
-\1Field1f::           ds 1
-\1Range::             db
-	ds 7
-\1StructEnd::
-ENDM
-
-MACRO map_object
-\1ObjectStructID::  db
-\1ObjectSprite::    db
-\1ObjectYCoord::    db
-\1ObjectXCoord::    db
-\1ObjectMovement::  db
-\1ObjectRadius::    db
-\1ObjectHour::      db
-\1ObjectTimeOfDay:: db
-\1ObjectColor::     db
-\1ObjectRange::     db
-\1ObjectScript::    dw
-\1ObjectEventFlag:: dw
-	ds 2
-ENDM
-
-MACRO sprite_oam_struct
-\1YCoord::     db
-\1XCoord::     db
-\1TileID::     db
-\1Attributes:: db
-; bit 7: priority
-; bit 6: y flip
-; bit 5: x flip
-; bit 4: pal # (non-cgb)
-; bit 3: vram bank (cgb only)
-; bit 2-0: pal # (cgb only)
-ENDM
-
-MACRO sprite_anim_struct
-\1Index::          db
-\1FramesetID::     db
-\1AnimSeqID::      db
-\1TileID::         db
-\1XCoord::         db
-\1YCoord::         db
-\1XOffset::        db
-\1YOffset::        db
-\1Duration::       db
-\1DurationOffset:: db
-\1FrameIndex::     db
-\1JumptableIndex:: db
-\1Var1::           ds 1
-\1Var2::           ds 1
-\1Var3::           ds 1
-\1Var4::           ds 1
-ENDM
-
-MACRO battle_anim_struct
-\1Index::          db
-\1OAMFlags::       db
-\1FixY::           db
-\1FramesetID::     db
-\1Function::       db
-\1Palette::        db
-\1TileID::         db
-\1XCoord::         db
-\1YCoord::         db
-\1XOffset::        db
-\1YOffset::        db
-\1Param::          db
-\1Duration::       db
-\1Frame::          db
-\1JumptableIndex:: db
-\1Var1::           db
-\1Var2::           db
-	ds 7
-ENDM
-
-MACRO battle_bg_effect
-\1Function::       db
-\1JumptableIndex:: db
-\1BattleTurn::     db
-\1Param::          db
-ENDM
--- a/ram.asm
+++ b/ram.asm
@@ -1,6 +1,6 @@
 INCLUDE "constants.asm"
 
-INCLUDE "macros/wram.asm"
+INCLUDE "macros/ram.asm"
 
 
 INCLUDE "ram/vram.asm"