From b29e5ee203b6fa4592180ef6cca732462cca9af6 Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 11:51:00 -0400 Subject: Add subdirectories to data/ similar to pokecrystal Top level text/ is now solely for the former text/maps/ files, and other files are in their respective subdirectories in data/. --- engine/overworld/map_sprites.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'engine/overworld/map_sprites.asm') diff --git a/engine/overworld/map_sprites.asm b/engine/overworld/map_sprites.asm index 19e25435..2079bb6a 100755 --- a/engine/overworld/map_sprites.asm +++ b/engine/overworld/map_sprites.asm @@ -437,4 +437,4 @@ GetSplitMapSpriteSetID: ld a, $01 ret -INCLUDE "data/sprite_sets.asm" +INCLUDE "data/maps/sprite_sets.asm" -- cgit v1.3.1-sl0p From 62e137f6cedeeebb8457fdb710ea725f73ded49f Mon Sep 17 00:00:00 2001 From: Rangi Date: Fri, 3 Jul 2020 16:58:55 -0400 Subject: Factor out data/sprites/ --- data/maps/sprite_sets.asm | 361 --------------------------------------- data/sprite_facings.asm | 57 ------- data/sprites/facings.asm | 57 +++++++ data/sprites/sprites.asm | 360 ++++++++++++++++++++++++++++++++++++++ engine/overworld/map_sprites.asm | 2 + main.asm | 2 +- 6 files changed, 420 insertions(+), 419 deletions(-) delete mode 100644 data/sprite_facings.asm create mode 100644 data/sprites/facings.asm create mode 100644 data/sprites/sprites.asm (limited to 'engine/overworld/map_sprites.asm') diff --git a/data/maps/sprite_sets.asm b/data/maps/sprite_sets.asm index 5b0e1e00..faba21b5 100755 --- a/data/maps/sprite_sets.asm +++ b/data/maps/sprite_sets.asm @@ -188,364 +188,3 @@ SpriteSets: db SPRITE_BUG_CATCHER db SPRITE_BALL db SPRITE_OMANYTE - -SpriteSheetPointerTable: - ; SPRITE_RED - dw RedSprite - db $c0 ; byte count - db BANK(RedSprite) - - ; SPRITE_BLUE - dw BlueSprite - db $c0 ; byte count - db BANK(BlueSprite) - - ; SPRITE_OAK - dw OakSprite - db $c0 ; byte count - db BANK(OakSprite) - - ; SPRITE_BUG_CATCHER - dw BugCatcherSprite - db $c0 ; byte count - db BANK(BugCatcherSprite) - - ; SPRITE_SLOWBRO - dw SlowbroSprite - db $c0 ; byte count - db BANK(SlowbroSprite) - - ; SPRITE_LASS - dw LassSprite - db $c0 ; byte count - db BANK(LassSprite) - - ; SPRITE_BLACK_HAIR_BOY_1 - dw BlackHairBoy1Sprite - db $c0 ; byte count - db BANK(BlackHairBoy1Sprite) - - ; SPRITE_LITTLE_GIRL - dw LittleGirlSprite - db $c0 ; byte count - db BANK(LittleGirlSprite) - - ; SPRITE_BIRD - dw BirdSprite - db $c0 ; byte count - db BANK(BirdSprite) - - ; SPRITE_FAT_BALD_GUY - dw FatBaldGuySprite - db $c0 ; byte count - db BANK(FatBaldGuySprite) - - ; SPRITE_GAMBLER - dw GamblerSprite - db $c0 ; byte count - db BANK(GamblerSprite) - - ; SPRITE_BLACK_HAIR_BOY_2 - dw BlackHairBoy2Sprite - db $c0 ; byte count - db BANK(BlackHairBoy2Sprite) - - ; SPRITE_GIRL - dw GirlSprite - db $c0 ; byte count - db BANK(GirlSprite) - - ; SPRITE_HIKER - dw HikerSprite - db $c0 ; byte count - db BANK(HikerSprite) - - ; SPRITE_FOULARD_WOMAN - dw FoulardWomanSprite - db $c0 ; byte count - db BANK(FoulardWomanSprite) - - ; SPRITE_GENTLEMAN - dw GentlemanSprite - db $c0 ; byte count - db BANK(GentlemanSprite) - - ; SPRITE_DAISY - dw DaisySprite - db $c0 ; byte count - db BANK(DaisySprite) - - ; SPRITE_BIKER - dw BikerSprite - db $c0 ; byte count - db BANK(BikerSprite) - - ; SPRITE_SAILOR - dw SailorSprite - db $c0 ; byte count - db BANK(SailorSprite) - - ; SPRITE_COOK - dw CookSprite - db $c0 ; byte count - db BANK(CookSprite) - - ; SPRITE_BIKE_SHOP_GUY - dw BikeShopGuySprite - db $c0 ; byte count - db BANK(BikeShopGuySprite) - - ; SPRITE_MR_FUJI - dw MrFujiSprite - db $c0 ; byte count - db BANK(MrFujiSprite) - - ; SPRITE_GIOVANNI - dw GiovanniSprite - db $c0 ; byte count - db BANK(GiovanniSprite) - - ; SPRITE_ROCKET - dw RocketSprite - db $c0 ; byte count - db BANK(RocketSprite) - - ; SPRITE_MEDIUM - dw MediumSprite - db $c0 ; byte count - db BANK(MediumSprite) - - ; SPRITE_WAITER - dw WaiterSprite - db $c0 ; byte count - db BANK(WaiterSprite) - - ; SPRITE_ERIKA - dw ErikaSprite - db $c0 ; byte count - db BANK(ErikaSprite) - - ; SPRITE_MOM_GEISHA - dw MomGeishaSprite - db $c0 ; byte count - db BANK(MomGeishaSprite) - - ; SPRITE_BRUNETTE_GIRL - dw BrunetteGirlSprite - db $c0 ; byte count - db BANK(BrunetteGirlSprite) - - ; SPRITE_LANCE - dw LanceSprite - db $c0 ; byte count - db BANK(LanceSprite) - - ; SPRITE_OAK_SCIENTIST_AIDE - dw OakAideSprite - db $c0 ; byte count - db BANK(OakAideSprite) - - ; SPRITE_OAK_AIDE - dw OakAideSprite - db $c0 ; byte count - db BANK(OakAideSprite) - - ; SPRITE_ROCKER - dw RockerSprite - db $c0 ; byte count - db BANK(RockerSprite) - - ; SPRITE_SWIMMER - dw SwimmerSprite - db $c0 ; byte count - db BANK(SwimmerSprite) - - ; SPRITE_WHITE_PLAYER - dw WhitePlayerSprite - db $c0 ; byte count - db BANK(WhitePlayerSprite) - - ; SPRITE_GYM_HELPER - dw GymHelperSprite - db $c0 ; byte count - db BANK(GymHelperSprite) - - ; SPRITE_OLD_PERSON - dw OldPersonSprite - db $c0 ; byte count - db BANK(OldPersonSprite) - - ; SPRITE_MART_GUY - dw MartGuySprite - db $c0 ; byte count - db BANK(MartGuySprite) - - ; SPRITE_FISHER - dw FisherSprite - db $c0 ; byte count - db BANK(FisherSprite) - - ; SPRITE_OLD_MEDIUM_WOMAN - dw OldMediumWomanSprite - db $c0 ; byte count - db BANK(OldMediumWomanSprite) - - ; SPRITE_NURSE - dw NurseSprite - db $c0 ; byte count - db BANK(NurseSprite) - - ; SPRITE_CABLE_CLUB_WOMAN - dw CableClubWomanSprite - db $c0 ; byte count - db BANK(CableClubWomanSprite) - - ; SPRITE_MR_MASTERBALL - dw MrMasterballSprite - db $c0 ; byte count - db BANK(MrMasterballSprite) - - ; SPRITE_LAPRAS_GIVER - dw LaprasGiverSprite - db $c0 ; byte count - db BANK(LaprasGiverSprite) - - ; SPRITE_WARDEN - dw WardenSprite - db $c0 ; byte count - db BANK(WardenSprite) - - ; SPRITE_SS_CAPTAIN - dw SsCaptainSprite - db $c0 ; byte count - db BANK(SsCaptainSprite) - - ; SPRITE_FISHER2 - dw Fisher2Sprite - db $c0 ; byte count - db BANK(Fisher2Sprite) - - ; SPRITE_BLACKBELT - dw BlackbeltSprite - db $c0 ; byte count - db BANK(BlackbeltSprite) - - ; SPRITE_GUARD - dw GuardSprite - db $c0 ; byte count - db BANK(GuardSprite) - - ; $32 - dw GuardSprite - db $c0 ; byte count - db BANK(GuardSprite) - - ; SPRITE_MOM - dw MomSprite - db $c0 ; byte count - db BANK(MomSprite) - - ; SPRITE_BALDING_GUY - dw BaldingGuySprite - db $c0 ; byte count - db BANK(BaldingGuySprite) - - ; SPRITE_YOUNG_BOY - dw YoungBoySprite - db $c0 ; byte count - db BANK(YoungBoySprite) - - ; SPRITE_GAMEBOY_KID - dw GameboyKidSprite - db $c0 ; byte count - db BANK(GameboyKidSprite) - - ; SPRITE_GAMEBOY_KID_COPY - dw GameboyKidSprite - db $c0 ; byte count - db BANK(GameboyKidSprite) - - ; SPRITE_CLEFAIRY - dw ClefairySprite - db $c0 ; byte count - db BANK(ClefairySprite) - - ; SPRITE_AGATHA - dw AgathaSprite - db $c0 ; byte count - db BANK(AgathaSprite) - - ; SPRITE_BRUNO - dw BrunoSprite - db $c0 ; byte count - db BANK(BrunoSprite) - - ; SPRITE_LORELEI - dw LoreleiSprite - db $c0 ; byte count - db BANK(LoreleiSprite) - - ; SPRITE_SEEL - dw SeelSprite - db $c0 ; byte count - db BANK(SeelSprite) - - ; SPRITE_BALL - dw BallSprite - db $40 ; byte count - db BANK(BallSprite) - - ; SPRITE_OMANYTE - dw OmanyteSprite - db $40 ; byte count - db BANK(OmanyteSprite) - - ; SPRITE_BOULDER - dw BoulderSprite - db $40 ; byte count - db BANK(BoulderSprite) - - ; SPRITE_PAPER_SHEET - dw PaperSheetSprite - db $40 ; byte count - db BANK(PaperSheetSprite) - - ; SPRITE_BOOK_MAP_DEX - dw BookMapDexSprite - db $40 ; byte count - db BANK(BookMapDexSprite) - - ; SPRITE_CLIPBOARD - dw ClipboardSprite - db $40 ; byte count - db BANK(ClipboardSprite) - - ; SPRITE_SNORLAX - dw SnorlaxSprite - db $40 ; byte count - db BANK(SnorlaxSprite) - - ; SPRITE_OLD_AMBER_COPY - dw OldAmberSprite - db $40 ; byte count - db BANK(OldAmberSprite) - - ; SPRITE_OLD_AMBER - dw OldAmberSprite - db $40 ; byte count - db BANK(OldAmberSprite) - - ; SPRITE_LYING_OLD_MAN_UNUSED_1 - dw LyingOldManSprite - db $40 ; byte count - db BANK(LyingOldManSprite) - - ; SPRITE_LYING_OLD_MAN_UNUSED_2 - dw LyingOldManSprite - db $40 ; byte count - db BANK(LyingOldManSprite) - - ; SPRITE_LYING_OLD_MAN - dw LyingOldManSprite - db $40 ; byte count - db BANK(LyingOldManSprite) diff --git a/data/sprite_facings.asm b/data/sprite_facings.asm deleted file mode 100644 index c412247a..00000000 --- a/data/sprite_facings.asm +++ /dev/null @@ -1,57 +0,0 @@ -SpriteFacingAndAnimationTable: - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; facing down, walk animation frame 0 - dw SpriteFacingDownAndWalking, SpriteOAMParameters ; facing down, walk animation frame 1 - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; facing down, walk animation frame 2 - dw SpriteFacingDownAndWalking, SpriteOAMParametersFlipped ; facing down, walk animation frame 3 - dw SpriteFacingUpAndStanding, SpriteOAMParameters ; facing up, walk animation frame 0 - dw SpriteFacingUpAndWalking, SpriteOAMParameters ; facing up, walk animation frame 1 - dw SpriteFacingUpAndStanding, SpriteOAMParameters ; facing up, walk animation frame 2 - dw SpriteFacingUpAndWalking, SpriteOAMParametersFlipped ; facing up, walk animation frame 3 - dw SpriteFacingLeftAndStanding, SpriteOAMParameters ; facing left, walk animation frame 0 - dw SpriteFacingLeftAndWalking, SpriteOAMParameters ; facing left, walk animation frame 1 - dw SpriteFacingLeftAndStanding, SpriteOAMParameters ; facing left, walk animation frame 2 - dw SpriteFacingLeftAndWalking, SpriteOAMParameters ; facing left, walk animation frame 3 - dw SpriteFacingLeftAndStanding, SpriteOAMParametersFlipped ; facing right, walk animation frame 0 - dw SpriteFacingLeftAndWalking, SpriteOAMParametersFlipped ; facing right, walk animation frame 1 - dw SpriteFacingLeftAndStanding, SpriteOAMParametersFlipped ; facing right, walk animation frame 2 - dw SpriteFacingLeftAndWalking, SpriteOAMParametersFlipped ; facing right, walk animation frame 3 - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; --- - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; This table is used for sprites $a and $b. - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; All orientation and animation parameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; lead to the same result. Used for immobile - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; sprites like items on the ground - dw SpriteFacingDownAndStanding, SpriteOAMParameters ; --- - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - dw SpriteFacingDownAndStanding, SpriteOAMParameters - -SpriteFacingDownAndStanding: - db $00,$01,$02,$03 -SpriteFacingDownAndWalking: - db $80,$81,$82,$83 -SpriteFacingUpAndStanding: - db $04,$05,$06,$07 -SpriteFacingUpAndWalking: - db $84,$85,$86,$87 -SpriteFacingLeftAndStanding: - db $08,$09,$0a,$0b -SpriteFacingLeftAndWalking: - db $88,$89,$8a,$8b - -SpriteOAMParameters: - db $00,$00, $00 ; top left - db $00,$08, $00 ; top right - db $08,$00, OAMFLAG_CANBEMASKED ; bottom left - db $08,$08, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA ; bottom right -SpriteOAMParametersFlipped: - db $00,$08, OAMFLAG_VFLIPPED - db $00,$00, OAMFLAG_VFLIPPED - db $08,$08, OAMFLAG_VFLIPPED | OAMFLAG_CANBEMASKED - db $08,$00, OAMFLAG_VFLIPPED | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA diff --git a/data/sprites/facings.asm b/data/sprites/facings.asm new file mode 100644 index 00000000..c412247a --- /dev/null +++ b/data/sprites/facings.asm @@ -0,0 +1,57 @@ +SpriteFacingAndAnimationTable: + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; facing down, walk animation frame 0 + dw SpriteFacingDownAndWalking, SpriteOAMParameters ; facing down, walk animation frame 1 + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; facing down, walk animation frame 2 + dw SpriteFacingDownAndWalking, SpriteOAMParametersFlipped ; facing down, walk animation frame 3 + dw SpriteFacingUpAndStanding, SpriteOAMParameters ; facing up, walk animation frame 0 + dw SpriteFacingUpAndWalking, SpriteOAMParameters ; facing up, walk animation frame 1 + dw SpriteFacingUpAndStanding, SpriteOAMParameters ; facing up, walk animation frame 2 + dw SpriteFacingUpAndWalking, SpriteOAMParametersFlipped ; facing up, walk animation frame 3 + dw SpriteFacingLeftAndStanding, SpriteOAMParameters ; facing left, walk animation frame 0 + dw SpriteFacingLeftAndWalking, SpriteOAMParameters ; facing left, walk animation frame 1 + dw SpriteFacingLeftAndStanding, SpriteOAMParameters ; facing left, walk animation frame 2 + dw SpriteFacingLeftAndWalking, SpriteOAMParameters ; facing left, walk animation frame 3 + dw SpriteFacingLeftAndStanding, SpriteOAMParametersFlipped ; facing right, walk animation frame 0 + dw SpriteFacingLeftAndWalking, SpriteOAMParametersFlipped ; facing right, walk animation frame 1 + dw SpriteFacingLeftAndStanding, SpriteOAMParametersFlipped ; facing right, walk animation frame 2 + dw SpriteFacingLeftAndWalking, SpriteOAMParametersFlipped ; facing right, walk animation frame 3 + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; --- + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; This table is used for sprites $a and $b. + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; All orientation and animation parameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; lead to the same result. Used for immobile + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; sprites like items on the ground + dw SpriteFacingDownAndStanding, SpriteOAMParameters ; --- + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + dw SpriteFacingDownAndStanding, SpriteOAMParameters + +SpriteFacingDownAndStanding: + db $00,$01,$02,$03 +SpriteFacingDownAndWalking: + db $80,$81,$82,$83 +SpriteFacingUpAndStanding: + db $04,$05,$06,$07 +SpriteFacingUpAndWalking: + db $84,$85,$86,$87 +SpriteFacingLeftAndStanding: + db $08,$09,$0a,$0b +SpriteFacingLeftAndWalking: + db $88,$89,$8a,$8b + +SpriteOAMParameters: + db $00,$00, $00 ; top left + db $00,$08, $00 ; top right + db $08,$00, OAMFLAG_CANBEMASKED ; bottom left + db $08,$08, OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA ; bottom right +SpriteOAMParametersFlipped: + db $00,$08, OAMFLAG_VFLIPPED + db $00,$00, OAMFLAG_VFLIPPED + db $08,$08, OAMFLAG_VFLIPPED | OAMFLAG_CANBEMASKED + db $08,$00, OAMFLAG_VFLIPPED | OAMFLAG_CANBEMASKED | OAMFLAG_ENDOFDATA diff --git a/data/sprites/sprites.asm b/data/sprites/sprites.asm new file mode 100644 index 00000000..9a6f383f --- /dev/null +++ b/data/sprites/sprites.asm @@ -0,0 +1,360 @@ +SpriteSheetPointerTable: + ; SPRITE_RED + dw RedSprite + db $c0 ; byte count + db BANK(RedSprite) + + ; SPRITE_BLUE + dw BlueSprite + db $c0 ; byte count + db BANK(BlueSprite) + + ; SPRITE_OAK + dw OakSprite + db $c0 ; byte count + db BANK(OakSprite) + + ; SPRITE_BUG_CATCHER + dw BugCatcherSprite + db $c0 ; byte count + db BANK(BugCatcherSprite) + + ; SPRITE_SLOWBRO + dw SlowbroSprite + db $c0 ; byte count + db BANK(SlowbroSprite) + + ; SPRITE_LASS + dw LassSprite + db $c0 ; byte count + db BANK(LassSprite) + + ; SPRITE_BLACK_HAIR_BOY_1 + dw BlackHairBoy1Sprite + db $c0 ; byte count + db BANK(BlackHairBoy1Sprite) + + ; SPRITE_LITTLE_GIRL + dw LittleGirlSprite + db $c0 ; byte count + db BANK(LittleGirlSprite) + + ; SPRITE_BIRD + dw BirdSprite + db $c0 ; byte count + db BANK(BirdSprite) + + ; SPRITE_FAT_BALD_GUY + dw FatBaldGuySprite + db $c0 ; byte count + db BANK(FatBaldGuySprite) + + ; SPRITE_GAMBLER + dw GamblerSprite + db $c0 ; byte count + db BANK(GamblerSprite) + + ; SPRITE_BLACK_HAIR_BOY_2 + dw BlackHairBoy2Sprite + db $c0 ; byte count + db BANK(BlackHairBoy2Sprite) + + ; SPRITE_GIRL + dw GirlSprite + db $c0 ; byte count + db BANK(GirlSprite) + + ; SPRITE_HIKER + dw HikerSprite + db $c0 ; byte count + db BANK(HikerSprite) + + ; SPRITE_FOULARD_WOMAN + dw FoulardWomanSprite + db $c0 ; byte count + db BANK(FoulardWomanSprite) + + ; SPRITE_GENTLEMAN + dw GentlemanSprite + db $c0 ; byte count + db BANK(GentlemanSprite) + + ; SPRITE_DAISY + dw DaisySprite + db $c0 ; byte count + db BANK(DaisySprite) + + ; SPRITE_BIKER + dw BikerSprite + db $c0 ; byte count + db BANK(BikerSprite) + + ; SPRITE_SAILOR + dw SailorSprite + db $c0 ; byte count + db BANK(SailorSprite) + + ; SPRITE_COOK + dw CookSprite + db $c0 ; byte count + db BANK(CookSprite) + + ; SPRITE_BIKE_SHOP_GUY + dw BikeShopGuySprite + db $c0 ; byte count + db BANK(BikeShopGuySprite) + + ; SPRITE_MR_FUJI + dw MrFujiSprite + db $c0 ; byte count + db BANK(MrFujiSprite) + + ; SPRITE_GIOVANNI + dw GiovanniSprite + db $c0 ; byte count + db BANK(GiovanniSprite) + + ; SPRITE_ROCKET + dw RocketSprite + db $c0 ; byte count + db BANK(RocketSprite) + + ; SPRITE_MEDIUM + dw MediumSprite + db $c0 ; byte count + db BANK(MediumSprite) + + ; SPRITE_WAITER + dw WaiterSprite + db $c0 ; byte count + db BANK(WaiterSprite) + + ; SPRITE_ERIKA + dw ErikaSprite + db $c0 ; byte count + db BANK(ErikaSprite) + + ; SPRITE_MOM_GEISHA + dw MomGeishaSprite + db $c0 ; byte count + db BANK(MomGeishaSprite) + + ; SPRITE_BRUNETTE_GIRL + dw BrunetteGirlSprite + db $c0 ; byte count + db BANK(BrunetteGirlSprite) + + ; SPRITE_LANCE + dw LanceSprite + db $c0 ; byte count + db BANK(LanceSprite) + + ; SPRITE_OAK_SCIENTIST_AIDE + dw OakAideSprite + db $c0 ; byte count + db BANK(OakAideSprite) + + ; SPRITE_OAK_AIDE + dw OakAideSprite + db $c0 ; byte count + db BANK(OakAideSprite) + + ; SPRITE_ROCKER + dw RockerSprite + db $c0 ; byte count + db BANK(RockerSprite) + + ; SPRITE_SWIMMER + dw SwimmerSprite + db $c0 ; byte count + db BANK(SwimmerSprite) + + ; SPRITE_WHITE_PLAYER + dw WhitePlayerSprite + db $c0 ; byte count + db BANK(WhitePlayerSprite) + + ; SPRITE_GYM_HELPER + dw GymHelperSprite + db $c0 ; byte count + db BANK(GymHelperSprite) + + ; SPRITE_OLD_PERSON + dw OldPersonSprite + db $c0 ; byte count + db BANK(OldPersonSprite) + + ; SPRITE_MART_GUY + dw MartGuySprite + db $c0 ; byte count + db BANK(MartGuySprite) + + ; SPRITE_FISHER + dw FisherSprite + db $c0 ; byte count + db BANK(FisherSprite) + + ; SPRITE_OLD_MEDIUM_WOMAN + dw OldMediumWomanSprite + db $c0 ; byte count + db BANK(OldMediumWomanSprite) + + ; SPRITE_NURSE + dw NurseSprite + db $c0 ; byte count + db BANK(NurseSprite) + + ; SPRITE_CABLE_CLUB_WOMAN + dw CableClubWomanSprite + db $c0 ; byte count + db BANK(CableClubWomanSprite) + + ; SPRITE_MR_MASTERBALL + dw MrMasterballSprite + db $c0 ; byte count + db BANK(MrMasterballSprite) + + ; SPRITE_LAPRAS_GIVER + dw LaprasGiverSprite + db $c0 ; byte count + db BANK(LaprasGiverSprite) + + ; SPRITE_WARDEN + dw WardenSprite + db $c0 ; byte count + db BANK(WardenSprite) + + ; SPRITE_SS_CAPTAIN + dw SsCaptainSprite + db $c0 ; byte count + db BANK(SsCaptainSprite) + + ; SPRITE_FISHER2 + dw Fisher2Sprite + db $c0 ; byte count + db BANK(Fisher2Sprite) + + ; SPRITE_BLACKBELT + dw BlackbeltSprite + db $c0 ; byte count + db BANK(BlackbeltSprite) + + ; SPRITE_GUARD + dw GuardSprite + db $c0 ; byte count + db BANK(GuardSprite) + + ; $32 + dw GuardSprite + db $c0 ; byte count + db BANK(GuardSprite) + + ; SPRITE_MOM + dw MomSprite + db $c0 ; byte count + db BANK(MomSprite) + + ; SPRITE_BALDING_GUY + dw BaldingGuySprite + db $c0 ; byte count + db BANK(BaldingGuySprite) + + ; SPRITE_YOUNG_BOY + dw YoungBoySprite + db $c0 ; byte count + db BANK(YoungBoySprite) + + ; SPRITE_GAMEBOY_KID + dw GameboyKidSprite + db $c0 ; byte count + db BANK(GameboyKidSprite) + + ; SPRITE_GAMEBOY_KID_COPY + dw GameboyKidSprite + db $c0 ; byte count + db BANK(GameboyKidSprite) + + ; SPRITE_CLEFAIRY + dw ClefairySprite + db $c0 ; byte count + db BANK(ClefairySprite) + + ; SPRITE_AGATHA + dw AgathaSprite + db $c0 ; byte count + db BANK(AgathaSprite) + + ; SPRITE_BRUNO + dw BrunoSprite + db $c0 ; byte count + db BANK(BrunoSprite) + + ; SPRITE_LORELEI + dw LoreleiSprite + db $c0 ; byte count + db BANK(LoreleiSprite) + + ; SPRITE_SEEL + dw SeelSprite + db $c0 ; byte count + db BANK(SeelSprite) + + ; SPRITE_BALL + dw BallSprite + db $40 ; byte count + db BANK(BallSprite) + + ; SPRITE_OMANYTE + dw OmanyteSprite + db $40 ; byte count + db BANK(OmanyteSprite) + + ; SPRITE_BOULDER + dw BoulderSprite + db $40 ; byte count + db BANK(BoulderSprite) + + ; SPRITE_PAPER_SHEET + dw PaperSheetSprite + db $40 ; byte count + db BANK(PaperSheetSprite) + + ; SPRITE_BOOK_MAP_DEX + dw BookMapDexSprite + db $40 ; byte count + db BANK(BookMapDexSprite) + + ; SPRITE_CLIPBOARD + dw ClipboardSprite + db $40 ; byte count + db BANK(ClipboardSprite) + + ; SPRITE_SNORLAX + dw SnorlaxSprite + db $40 ; byte count + db BANK(SnorlaxSprite) + + ; SPRITE_OLD_AMBER_COPY + dw OldAmberSprite + db $40 ; byte count + db BANK(OldAmberSprite) + + ; SPRITE_OLD_AMBER + dw OldAmberSprite + db $40 ; byte count + db BANK(OldAmberSprite) + + ; SPRITE_LYING_OLD_MAN_UNUSED_1 + dw LyingOldManSprite + db $40 ; byte count + db BANK(LyingOldManSprite) + + ; SPRITE_LYING_OLD_MAN_UNUSED_2 + dw LyingOldManSprite + db $40 ; byte count + db BANK(LyingOldManSprite) + + ; SPRITE_LYING_OLD_MAN + dw LyingOldManSprite + db $40 ; byte count + db BANK(LyingOldManSprite) diff --git a/engine/overworld/map_sprites.asm b/engine/overworld/map_sprites.asm index 2079bb6a..eb8edb10 100755 --- a/engine/overworld/map_sprites.asm +++ b/engine/overworld/map_sprites.asm @@ -438,3 +438,5 @@ GetSplitMapSpriteSetID: ret INCLUDE "data/maps/sprite_sets.asm" + +INCLUDE "data/sprites/sprites.asm" diff --git a/main.asm b/main.asm index 39519774..cee9dd0f 100755 --- a/main.asm +++ b/main.asm @@ -3,7 +3,7 @@ INCLUDE "constants.asm" SECTION "bank1", ROMX -INCLUDE "data/sprite_facings.asm" +INCLUDE "data/sprites/facings.asm" INCLUDE "engine/events/black_out.asm" MewPicFront:: INCBIN "gfx/pokemon/front/mew.pic" -- cgit v1.3.1-sl0p From e4e0af4d6713161d46cc0a1d580645ca40d6fa81 Mon Sep 17 00:00:00 2001 From: Rangi Date: Sat, 4 Jul 2020 01:00:45 -0400 Subject: Remove remaining raw $xxxx values, and replace "+ -1" with "- 1" (supported by rgbds 0.4.0) --- constants/hardware_constants.asm | 13 +++++ constants/move_constants.asm | 2 +- constants/pokedex_constants.asm | 2 +- constants/pokemon_constants.asm | 2 +- data/moves/effects_pointers.asm | 14 +++--- engine/battle/animations.asm | 6 +-- engine/battle/core.asm | 12 ++--- engine/battle/trainer_ai.asm | 2 +- engine/events/diploma.asm | 2 +- engine/events/prize_menu.asm | 4 +- engine/menus/display_text_id_init.asm | 4 +- engine/menus/save.asm | 4 +- engine/menus/start_sub_menus.asm | 10 ++-- engine/movie/title.asm | 2 +- engine/overworld/map_sprites.asm | 3 +- engine/overworld/wild_mons.asm | 6 +-- engine/pokemon/status_screen.asm | 4 +- engine/slots/slot_machine.asm | 2 +- home/init.asm | 12 ++--- home/list_menu.asm | 2 +- home/names2.asm | 2 +- home/overworld.asm | 12 ++--- home/pics.asm | 4 +- home/predef_text.asm | 2 +- macros/scripts/events.asm | 12 ++--- macros/wram.asm | 92 ++++++++++++++++++++++++++++++++++ scripts/OaksLab.asm | 2 +- scripts/VermilionDock.asm | 2 +- wram.asm | 94 ++--------------------------------- 29 files changed, 172 insertions(+), 158 deletions(-) create mode 100644 macros/wram.asm (limited to 'engine/overworld/map_sprites.asm') diff --git a/constants/hardware_constants.asm b/constants/hardware_constants.asm index 59ec6170..993a02f5 100644 --- a/constants/hardware_constants.asm +++ b/constants/hardware_constants.asm @@ -2,6 +2,19 @@ GBC EQU $11 +; memory map +VRAM_Begin EQU $8000 +VRAM_End EQU $a000 +SRAM_Begin EQU $a000 +SRAM_End EQU $c000 +WRAM0_Begin EQU $c000 +WRAM0_End EQU $d000 +WRAM1_Begin EQU $d000 +WRAM1_End EQU $e000 +; hardware registers $ff00-$ff80 (see below) +HRAM_Begin EQU $ff80 +HRAM_End EQU $ffff + ; MBC1 MBC1SRamEnable EQU $0000 MBC1RomBank EQU $2000 diff --git a/constants/move_constants.asm b/constants/move_constants.asm index 850662de..5dd06a41 100644 --- a/constants/move_constants.asm +++ b/constants/move_constants.asm @@ -165,7 +165,7 @@ const SLASH ; a3 const SUBSTITUTE ; a4 -NUM_ATTACKS EQU const_value + -1 +NUM_ATTACKS EQU const_value - 1 const STRUGGLE ; a5 diff --git a/constants/pokedex_constants.asm b/constants/pokedex_constants.asm index c8605852..e462586e 100644 --- a/constants/pokedex_constants.asm +++ b/constants/pokedex_constants.asm @@ -151,4 +151,4 @@ const DEX_MEWTWO ; 150 const DEX_MEW ; 151 -NUM_POKEMON EQU const_value + -1 +NUM_POKEMON EQU const_value - 1 diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm index 5484a65d..7abdd4d3 100644 --- a/constants/pokemon_constants.asm +++ b/constants/pokemon_constants.asm @@ -191,4 +191,4 @@ const WEEPINBELL ; $BD const VICTREEBEL ; $BE -NUM_POKEMON_INDEXES EQU const_value + -1 +NUM_POKEMON_INDEXES EQU const_value - 1 diff --git a/data/moves/effects_pointers.asm b/data/moves/effects_pointers.asm index 0d36e887..02f6e5c6 100644 --- a/data/moves/effects_pointers.asm +++ b/data/moves/effects_pointers.asm @@ -7,7 +7,7 @@ MoveEffectPointerTable: dw FreezeBurnParalyzeEffect ; PARALYZE_SIDE_EFFECT1 dw ExplodeEffect ; EXPLODE_EFFECT dw DrainHPEffect ; DREAM_EATER_EFFECT - dw $0000 ; MIRROR_MOVE_EFFECT + dw NULL ; MIRROR_MOVE_EFFECT dw StatModifierUpEffect ; ATTACK_UP1_EFFECT dw StatModifierUpEffect ; DEFENSE_UP1_EFFECT dw StatModifierUpEffect ; SPEED_UP1_EFFECT @@ -15,7 +15,7 @@ MoveEffectPointerTable: dw StatModifierUpEffect ; ACCURACY_UP1_EFFECT dw StatModifierUpEffect ; EVASION_UP1_EFFECT dw PayDayEffect ; PAY_DAY_EFFECT - dw $0000 ; SWIFT_EFFECT + dw NULL ; SWIFT_EFFECT dw StatModifierDownEffect ; ATTACK_DOWN1_EFFECT dw StatModifierDownEffect ; DEFENSE_DOWN1_EFFECT dw StatModifierDownEffect ; SPEED_DOWN1_EFFECT @@ -38,12 +38,12 @@ MoveEffectPointerTable: dw FlinchSideEffect ; FLINCH_SIDE_EFFECT2 dw OneHitKOEffect ; OHKO_EFFECT dw ChargeEffect ; CHARGE_EFFECT - dw $0000 ; SUPER_FANG_EFFECT - dw $0000 ; SPECIAL_DAMAGE_EFFECT + dw NULL ; SUPER_FANG_EFFECT + dw NULL ; SPECIAL_DAMAGE_EFFECT dw TrappingEffect ; TRAPPING_EFFECT dw ChargeEffect ; FLY_EFFECT dw TwoToFiveAttacksEffect ; ATTACK_TWICE_EFFECT - dw $0000 ; JUMP_KICK_EFFECT + dw NULL ; JUMP_KICK_EFFECT dw MistEffect ; MIST_EFFECT dw FocusEnergyEffect ; FOCUS_ENERGY_EFFECT dw RecoilEffect ; RECOIL_EFFECT @@ -76,12 +76,12 @@ MoveEffectPointerTable: dw StatModifierDownEffect ; unused effect dw ConfusionSideEffect ; CONFUSION_SIDE_EFFECT dw TwoToFiveAttacksEffect ; TWINEEDLE_EFFECT - dw $0000 ; unused effect + dw NULL ; unused effect dw SubstituteEffect ; SUBSTITUTE_EFFECT dw HyperBeamEffect ; HYPER_BEAM_EFFECT dw RageEffect ; RAGE_EFFECT dw MimicEffect ; MIMIC_EFFECT - dw $0000 ; METRONOME_EFFECT + dw NULL ; METRONOME_EFFECT dw LeechSeedEffect ; LEECH_SEED_EFFECT dw SplashEffect ; SPLASH_EFFECT dw DisableEffect ; DISABLE_EFFECT diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index d858e066..ee476ce9 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -1735,7 +1735,7 @@ AnimationSlideMonDownAndHide: jr nz, .loop call AnimationHideMonPic ld hl, wTempPic - ld bc, $0310 + ld bc, $310 xor a call FillMemory jp CopyTempPicToMonPic @@ -1896,7 +1896,7 @@ AnimationSubstitute: ; Changes the pokemon's sprite to the mini sprite ld hl, wTempPic xor a - ld bc, $0310 + ld bc, $310 call FillMemory ld a, [hWhoseTurn] and a @@ -1932,7 +1932,7 @@ AnimationSubstitute: jp AnimationShowMonPic CopySlowbroSpriteData: - ld bc, $0010 + ld bc, $10 ld a, BANK(SlowbroSprite) jp FarCopyData2 diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 00852b2b..6881aef5 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -582,7 +582,7 @@ HandlePoisonBurnLeechSeed_DecreaseOwnHP: ld a, [de] ; increment toxic counter inc a ld [de], a - ld hl, $0000 + ld hl, 0 .toxicTicksLoop add hl, bc dec a @@ -5345,8 +5345,8 @@ MoveHitTest: ret z ; Swift never misses (interestingly, Azure Heights lists this is a myth, but it appears to be true) call CheckTargetSubstitute ; substitute check (note that this overwrites a) jr z, .checkForDigOrFlyStatus -; this code is buggy. it's supposed to prevent HP draining moves from working on substitutes. -; since $7b79 overwrites a with either $00 or $01, it never works. +; This code is buggy. It's supposed to prevent HP draining moves from working on substitutes. +; Since CheckTargetSubstitute overwrites a with either $00 or $01, it never works. cp DRAIN_HP_EFFECT jp z, .moveMissed cp DREAM_EATER_EFFECT @@ -6335,9 +6335,9 @@ LoadPlayerBackPic: ld de, vBackPic call InterlaceMergeSpriteBuffers ld a, $a - ld [$0], a + ld [MBC1SRamEnable], a xor a - ld [$4000], a + ld [MBC1SRamBank], a ld hl, vSprites ld de, sSpriteBuffer1 ld a, [hLoadedROMBank] @@ -6345,7 +6345,7 @@ LoadPlayerBackPic: ld c, 7 * 7 call CopyVideoData xor a - ld [$0], a + ld [MBC1SRamEnable], a ld a, $31 ld [hStartTileID], a coord hl, 1, 5 diff --git a/engine/battle/trainer_ai.asm b/engine/battle/trainer_ai.asm index 2178be38..d61b44f8 100644 --- a/engine/battle/trainer_ai.asm +++ b/engine/battle/trainer_ai.asm @@ -134,7 +134,7 @@ AIMoveChoiceModification1: push de push bc ld hl, StatusAilmentMoveEffects - ld de, $0001 + ld de, 1 call IsInArray pop bc pop de diff --git a/engine/events/diploma.asm b/engine/events/diploma.asm index 24bd2f22..53d78e57 100755 --- a/engine/events/diploma.asm +++ b/engine/events/diploma.asm @@ -9,7 +9,7 @@ DisplayDiploma:: call DisableLCD ld hl, CircleTile ld de, vChars2 + $700 - ld bc, $0010 + ld bc, $10 ld a, BANK(CircleTile) call FarCopyData2 coord hl, 0, 0 diff --git a/engine/events/prize_menu.asm b/engine/events/prize_menu.asm index aa86f828..5a00a89e 100755 --- a/engine/events/prize_menu.asm +++ b/engine/events/prize_menu.asm @@ -131,10 +131,8 @@ GetPrizeMenuId: coord hl, 13, 5 ; reg. c: ; [low nybble] number of bytes -; [bit 765 = %100] space-padding (not zero-padding) +; [bits 765 = %100] space-padding (not zero-padding) ld c, (1 << 7 | 2) -; Function $15CD displays BCD value (same routine -; used by text-command $02) call PrintBCDNumber ld de, wPrize2Price coord hl, 13, 7 diff --git a/engine/menus/display_text_id_init.asm b/engine/menus/display_text_id_init.asm index e1f6c678..45c76f9c 100644 --- a/engine/menus/display_text_id_init.asm +++ b/engine/menus/display_text_id_init.asm @@ -43,7 +43,7 @@ DisplayTextIDInit:: ; the original direction they were facing must be restored after the dialogue is over ld hl, wSpriteStateData1 + $19 ld c, $0f - ld de, $0010 + ld de, $10 .spriteFacingDirectionCopyLoop ld a, [hl] inc h @@ -55,7 +55,7 @@ DisplayTextIDInit:: ; loop to force all the sprites in the middle of animation to stand still ; (so that they don't like they're frozen mid-step during the dialogue) ld hl, wSpriteStateData1 + 2 - ld de, $0010 + ld de, $10 ld c, e .spriteStandStillLoop ld a, [hl] diff --git a/engine/menus/save.asm b/engine/menus/save.asm index f2ecc3aa..ee73c850 100755 --- a/engine/menus/save.asm +++ b/engine/menus/save.asm @@ -702,7 +702,7 @@ ClearSAV: PadSRAM_FF: ld [MBC1SRamBank], a - ld hl, $a000 ; start of SRAM - ld bc, $2000 ; size of SRAM + ld hl, SRAM_Begin + ld bc, SRAM_End - SRAM_Begin ld a, $ff jp FillMemory diff --git a/engine/menus/start_sub_menus.asm b/engine/menus/start_sub_menus.asm index 43c767e2..526540df 100755 --- a/engine/menus/start_sub_menus.asm +++ b/engine/menus/start_sub_menus.asm @@ -491,12 +491,12 @@ DrawTrainerInfo: call CopyData ld hl, TrainerInfoTextBoxTileGraphics ; trainer info text box tile patterns ld de, vChars2 + $770 - ld bc, $0080 + ld bc, $80 push bc call TrainerInfo_FarCopyData ld hl, BlankLeaderNames ld de, vChars2 + $600 - ld bc, $0170 + ld bc, $170 call TrainerInfo_FarCopyData pop bc ld hl, BadgeNumbersTileGraphics ; badge number tile patterns @@ -504,14 +504,14 @@ DrawTrainerInfo: call TrainerInfo_FarCopyData ld hl, GymLeaderFaceAndBadgeTileGraphics ; gym leader face and badge tile patterns ld de, vChars2 + $200 - ld bc, $0400 + ld bc, $400 ld a, $03 call FarCopyData2 ld hl, TextBoxGraphics - ld de, $00d0 + ld de, $d0 add hl, de ; hl = colon tile pattern ld de, vChars1 + $560 - ld bc, $0010 + ld bc, $10 ld a, $04 push bc call FarCopyData2 diff --git a/engine/movie/title.asm b/engine/movie/title.asm index 1a2d16a0..9cbe5494 100755 --- a/engine/movie/title.asm +++ b/engine/movie/title.asm @@ -317,7 +317,7 @@ DrawPlayerCharacter: xor a ld [wPlayerCharacterOAMTile], a ld hl, wOAMBuffer - ld de, $605a + lb de, $60, $5a ld b, 7 .loop push de diff --git a/engine/overworld/map_sprites.asm b/engine/overworld/map_sprites.asm index eb8edb10..904e9b04 100755 --- a/engine/overworld/map_sprites.asm +++ b/engine/overworld/map_sprites.asm @@ -133,8 +133,7 @@ LoadMapSpriteTilePatterns: jr nc, .fourTileSpriteVRAMAddr ld d, a dec d -; Equivalent to multiplying $C0 (number of bytes in 12 tiles) times the VRAM -; slot and adding the result to $8000 (the VRAM base address). +; vSprites += [hVRAMSlot] * $C0 (the number of bytes in 12 tiles) .calculateVRAMAddrLoop add hl, bc dec d diff --git a/engine/overworld/wild_mons.asm b/engine/overworld/wild_mons.asm index 24dc7681..2593e0ec 100644 --- a/engine/overworld/wild_mons.asm +++ b/engine/overworld/wild_mons.asm @@ -16,10 +16,10 @@ LoadWildData:: jr z, .NoGrassData ; if no grass data, skip to surfing data push hl ld de, wGrassMons ; otherwise, load grass data - ld bc, $0014 + ld bc, $14 call CopyData pop hl - ld bc, $0014 + ld bc, $14 add hl, bc .NoGrassData ld a, [hli] @@ -27,7 +27,7 @@ LoadWildData:: and a ret z ; if no water data, we're done ld de, wWaterMons ; otherwise, load surfing data - ld bc, $0014 + ld bc, $14 jp CopyData INCLUDE "data/wild/grass_water.asm" diff --git a/engine/pokemon/status_screen.asm b/engine/pokemon/status_screen.asm index f66cdf5a..b262a8b7 100755 --- a/engine/pokemon/status_screen.asm +++ b/engine/pokemon/status_screen.asm @@ -254,7 +254,7 @@ PrintStatsBox: ld c, 8 call TextBoxBorder ; Draws the box coord hl, 1, 9 ; Start printing stats from here - ld bc, $0019 ; Number offset + ld bc, $19 ; Number offset jr .PrintStats .DifferentBox coord hl, 9, 2 @@ -262,7 +262,7 @@ PrintStatsBox: ld c, 9 call TextBoxBorder coord hl, 11, 3 - ld bc, $0018 + ld bc, $18 .PrintStats push bc push hl diff --git a/engine/slots/slot_machine.asm b/engine/slots/slot_machine.asm index 16696713..c3de5dd2 100755 --- a/engine/slots/slot_machine.asm +++ b/engine/slots/slot_machine.asm @@ -31,7 +31,7 @@ PromptUserToPlaySlots: xor a ld [wSlotMachineAllowMatchesCounter], a ld hl, wStoppingWhichSlotMachineWheel - ld bc, $0014 + ld bc, $14 call FillMemory call MainSlotMachineLoop ld hl, wd730 diff --git a/home/init.asm b/home/init.asm index 48294fa6..83238bad 100644 --- a/home/init.asm +++ b/home/init.asm @@ -41,8 +41,8 @@ rLCDC_DEFAULT EQU %11100011 ld sp, wStack - ld hl, $c000 ; start of WRAM - ld bc, $2000 ; size of WRAM + ld hl, WRAM0_Begin + ld bc, WRAM1_End - WRAM0_Begin .loop ld [hl], 0 inc hl @@ -53,8 +53,8 @@ rLCDC_DEFAULT EQU %11100011 call ClearVram - ld hl, $ff80 ; start of HRAM - ld bc, $ffff - $ff80 ; size of HRAM + ld hl, HRAM_Begin + ld bc, HRAM_End - HRAM_Begin call FillMemory call ClearSprites @@ -119,8 +119,8 @@ rLCDC_DEFAULT EQU %11100011 jp SetDefaultNamesBeforeTitlescreen ClearVram:: - ld hl, $8000 - ld bc, $2000 + ld hl, VRAM_Begin + ld bc, VRAM_End - VRAM_Begin xor a jp FillMemory diff --git a/home/list_menu.asm b/home/list_menu.asm index 68335ed5..4ce973b2 100644 --- a/home/list_menu.asm +++ b/home/list_menu.asm @@ -454,7 +454,7 @@ PrintListMenuEntries:: ld [wLoadedMonLevel], a .skipCopyingLevel pop hl - ld bc, $001c + ld bc, $1c add hl, bc call PrintLevel pop af diff --git a/home/names2.asm b/home/names2.asm index 178a0780..319febd3 100644 --- a/home/names2.asm +++ b/home/names2.asm @@ -77,7 +77,7 @@ GetName:: ld h, d ld l, e ld de, wcd6d - ld bc, $0014 + ld bc, $14 call CopyData .gotPtr ld a, e diff --git a/home/overworld.asm b/home/overworld.asm index c959beb6..79e4ea97 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1424,18 +1424,18 @@ LoadCurrentMapView:: dec b jr nz, .rowLoop ld hl, wTileMapBackup - ld bc, $0000 + ld bc, $0 .adjustForYCoordWithinTileBlock ld a, [wYBlockCoord] and a jr z, .adjustForXCoordWithinTileBlock - ld bc, $0030 + ld bc, $30 add hl, bc .adjustForXCoordWithinTileBlock ld a, [wXBlockCoord] and a jr z, .copyToVisibleAreaBuffer - ld bc, $0002 + ld bc, $2 add hl, bc .copyToVisibleAreaBuffer coord de, 0, 0 ; base address for the tiles that are directly transferred to VRAM during V-blank @@ -1739,7 +1739,7 @@ ScheduleSouthRowRedraw:: ld l, a ld a, [wMapViewVRAMPointer + 1] ld h, a - ld bc, $0200 + ld bc, $200 add hl, bc ld a, h and $03 @@ -1835,7 +1835,7 @@ DrawTileBlock:: ld a, [de] ld [hl], a inc de - ld bc, $0015 + ld bc, $15 add hl, bc pop bc dec c @@ -2180,7 +2180,7 @@ LoadMapHeader:: jr nz, .zeroSpriteDataLoop ; initialize all C100-C1FF sprite entries to disabled (other than player's) ld hl, wSpriteStateData1 + $12 - ld de, $0010 + ld de, $10 ld c, $0f .disableSpriteEntriesLoop ld [hl], $ff diff --git a/home/pics.asm b/home/pics.asm index 02683db7..c6d99cbb 100644 --- a/home/pics.asm +++ b/home/pics.asm @@ -93,7 +93,7 @@ LoadUncompressedSpriteData:: add a ; 8*(7*((8-w)/2) + 7-h) ; combined overall offset (in bytes) ld [hSpriteOffset], a xor a - ld [$4000], a + ld [MBC1SRamBank], a ld hl, sSpriteBuffer0 call ZeroSpriteBuffer ; zero buffer 0 ld de, sSpriteBuffer1 @@ -151,7 +151,7 @@ ZeroSpriteBuffer:: ; de: output address InterlaceMergeSpriteBuffers:: xor a - ld [$4000], a + ld [MBC1SRamBank], a push de ld hl, sSpriteBuffer2 + (SPRITEBUFFERSIZE - 1) ; destination: end of buffer 2 ld de, sSpriteBuffer1 + (SPRITEBUFFERSIZE - 1) ; source 2: end of buffer 1 diff --git a/home/predef_text.asm b/home/predef_text.asm index 24001c24..059e23ab 100644 --- a/home/predef_text.asm +++ b/home/predef_text.asm @@ -119,7 +119,7 @@ CloseTextDisplay:: ; loop to make sprites face the directions they originally faced before the dialogue ld hl, wSpriteStateData2 + $19 ld c, $0f - ld de, $0010 + ld de, $10 .restoreSpriteFacingDirectionLoop ld a, [hl] dec h diff --git a/macros/scripts/events.asm b/macros/scripts/events.asm index 9be354e3..c5f90107 100755 --- a/macros/scripts/events.asm +++ b/macros/scripts/events.asm @@ -183,7 +183,7 @@ ENDM ;\3, \4, ... = additional (optional) event indices SetEvents: MACRO SetEvent \1 - rept (_NARG + -1) + rept _NARG - 1 SetEventReuseHL \2 shift endr @@ -235,7 +235,7 @@ ENDM ;\3 = event index (optional) ResetEvents: MACRO ResetEvent \1 - rept (_NARG + -1) + rept _NARG - 1 ResetEventReuseHL \2 shift endr @@ -283,7 +283,7 @@ event_fill_start = event_start_byte + 1 event_fill_count = event_end_byte - event_start_byte - 1 IF ((\1) % 8) == 0 -event_fill_start = event_fill_start + -1 +event_fill_start = event_fill_start - 1 event_fill_count = event_fill_count + 1 ELSE ld a, [wEventFlags + event_start_byte] @@ -304,7 +304,7 @@ event_fill_count = event_fill_count + 1 ld a, $ff ld hl, wEventFlags + event_fill_start - REPT event_fill_count + -1 + REPT event_fill_count - 1 ld [hli], a ENDR @@ -345,7 +345,7 @@ event_fill_start = event_start_byte + 1 event_fill_count = event_end_byte - event_start_byte - 1 IF ((\1) % 8) == 0 -event_fill_start = event_fill_start + -1 +event_fill_start = event_fill_start - 1 event_fill_count = event_fill_count + 1 ELSE ld a, [wEventFlags + event_start_byte] @@ -370,7 +370,7 @@ event_fill_count = event_fill_count + 1 xor a ENDC - REPT event_fill_count + -1 + REPT event_fill_count - 1 ld [hli], a ENDR diff --git a/macros/wram.asm b/macros/wram.asm new file mode 100644 index 00000000..7a9b4a6a --- /dev/null +++ b/macros/wram.asm @@ -0,0 +1,92 @@ +; Used in wram.asm + +flag_array: MACRO + ds ((\1) + 7) / 8 +ENDM + +BOX_STRUCT_LENGTH EQU 25 + NUM_MOVES * 2 + +box_struct: MACRO +\1Species:: db +\1HP:: dw +\1BoxLevel:: db +\1Status:: db +\1Type:: +\1Type1:: db +\1Type2:: db +\1CatchRate:: db +\1Moves:: ds NUM_MOVES +\1OTID:: dw +\1Exp:: ds 3 +\1HPExp:: dw +\1AttackExp:: dw +\1DefenseExp:: dw +\1SpeedExp:: dw +\1SpecialExp:: dw +\1DVs:: ds 2 +\1PP:: ds NUM_MOVES +ENDM + +party_struct: MACRO + box_struct \1 +\1Level:: db +\1Stats:: +\1MaxHP:: dw +\1Attack:: dw +\1Defense:: dw +\1Speed:: dw +\1Special:: dw +ENDM + +battle_struct: MACRO +\1Species:: db +\1HP:: dw +\1PartyPos:: +\1BoxLevel:: db +\1Status:: db +\1Type:: +\1Type1:: db +\1Type2:: db +\1CatchRate:: db +\1Moves:: ds NUM_MOVES +\1DVs:: ds 2 +\1Level:: db +\1Stats:: +\1MaxHP:: dw +\1Attack:: dw +\1Defense:: dw +\1Speed:: dw +\1Special:: dw +\1PP:: ds NUM_MOVES +ENDM + +spritestatedata1: MACRO +\1PictureID:: db +\1MovementStatus:: db +\1ImageIndex:: db +\1YStepVector:: db +\1YPixels:: db +\1XStepVector:: db +\1XPixels:: db +\1IntraAnimFrameCounter:: db +\1AnimFrameCounter:: db +\1FacingDirection:: db + ds 6 +\1End:: +ENDM + +spritestatedata2: MACRO +\1WalkAnimationCounter:: db + ds 1 +\1YDisplacement:: db +\1XDisplacement:: db +\1MapY:: db +\1MapX:: db +\1MovementByte1:: db +\1GrassPriority:: db +\1MovementDelay:: db + ds 5 +\1ImageBaseOffset:: db + ds 1 +\1End:: +ENDM diff --git a/scripts/OaksLab.asm b/scripts/OaksLab.asm index 9bb84923..b3347849 100755 --- a/scripts/OaksLab.asm +++ b/scripts/OaksLab.asm @@ -652,7 +652,7 @@ OaksLabScript18: OaksLabScript_RemoveParcel: ld hl, wBagItems - ld bc, $0000 + ld bc, 0 .loop ld a, [hli] cp $ff diff --git a/scripts/VermilionDock.asm b/scripts/VermilionDock.asm index 4b0cf439..90fef6b2 100755 --- a/scripts/VermilionDock.asm +++ b/scripts/VermilionDock.asm @@ -78,7 +78,7 @@ VermilionDock_1db9b: ld d, $0 ld e, $8 .asm_1dbfa - ld hl, $0002 + ld hl, $2 add hl, bc ld a, l ld [wMapViewVRAMPointer], a diff --git a/wram.asm b/wram.asm index 9c37b3db..e2fa05a6 100755 --- a/wram.asm +++ b/wram.asm @@ -1,63 +1,6 @@ INCLUDE "constants.asm" -flag_array: MACRO - ds ((\1) + 7) / 8 -ENDM - -box_struct_length EQU 25 + NUM_MOVES * 2 -box_struct: MACRO -\1Species:: db -\1HP:: dw -\1BoxLevel:: db -\1Status:: db -\1Type:: -\1Type1:: db -\1Type2:: db -\1CatchRate:: db -\1Moves:: ds NUM_MOVES -\1OTID:: dw -\1Exp:: ds 3 -\1HPExp:: dw -\1AttackExp:: dw -\1DefenseExp:: dw -\1SpeedExp:: dw -\1SpecialExp:: dw -\1DVs:: ds 2 -\1PP:: ds NUM_MOVES -ENDM - -party_struct: MACRO - box_struct \1 -\1Level:: db -\1Stats:: -\1MaxHP:: dw -\1Attack:: dw -\1Defense:: dw -\1Speed:: dw -\1Special:: dw -ENDM - -battle_struct: MACRO -\1Species:: db -\1HP:: dw -\1PartyPos:: -\1BoxLevel:: db -\1Status:: db -\1Type:: -\1Type1:: db -\1Type2:: db -\1CatchRate:: db -\1Moves:: ds NUM_MOVES -\1DVs:: ds 2 -\1Level:: db -\1Stats:: -\1MaxHP:: dw -\1Attack:: dw -\1Defense:: dw -\1Speed:: dw -\1Special:: dw -\1PP:: ds NUM_MOVES -ENDM +INCLUDE "macros/wram.asm" SECTION "WRAM Bank 0", WRAM0 @@ -228,21 +171,6 @@ wSpriteStateData1:: ; C1xD ; C1xE ; C1xF -spritestatedata1: MACRO -\1PictureID:: db -\1MovementStatus:: db -\1ImageIndex:: db -\1YStepVector:: db -\1YPixels:: db -\1XStepVector:: db -\1XPixels:: db -\1IntraAnimFrameCounter:: db -\1AnimFrameCounter:: db -\1FacingDirection:: db - ds 6 -\1End:: -endm - wSpritePlayerStateData1:: spritestatedata1 wSpritePlayerStateData1 wSprite01StateData1:: spritestatedata1 wSprite01StateData1 wSprite02StateData1:: spritestatedata1 wSprite02StateData1 @@ -280,22 +208,6 @@ wSpriteStateData2:: ; C2xD ; C2xE: sprite image base offset (in video ram, player always has value 1, used to compute c1x2) ; C2xF -spritestatedata2: MACRO -\1WalkAnimationCounter:: db - ds 1 -\1YDisplacement:: db -\1XDisplacement:: db -\1MapY:: db -\1MapX:: db -\1MovementByte1:: db -\1GrassPriority:: db -\1MovementDelay:: db - ds 5 -\1ImageBaseOffset:: db - ds 1 -\1End:: -endm - wSpritePlayerStateData2:: spritestatedata2 wSpritePlayerStateData2 wSprite01StateData2:: spritestatedata2 wSprite01StateData2 wSprite02StateData2:: spritestatedata2 wSprite02StateData2 @@ -1050,7 +962,7 @@ wOptionsCancelCursorX:: ds 1 wDayCarePerLevelCost:: -; 2-byte BCD number (always set to $0100) +; 2-byte BCD number (always set to $100) wHoFTeamIndex2:: @@ -3185,7 +3097,7 @@ wBoxSpecies:: ds MONS_PER_BOX + 1 wBoxMons:: wBoxMon1:: box_struct wBoxMon1 -wBoxMon2:: ds box_struct_length * (MONS_PER_BOX + -1) +wBoxMon2:: ds BOX_STRUCT_LENGTH * (MONS_PER_BOX - 1) wBoxMonOT:: ds NAME_LENGTH * MONS_PER_BOX wBoxMonNicks:: ds NAME_LENGTH * MONS_PER_BOX -- cgit v1.3.1-sl0p