diff options
author | Marcus Huderle <huderlem@gmail.com> | 2019-03-23 09:39:46 -0500 |
---|---|---|
committer | Marcus Huderle <huderlem@gmail.com> | 2019-03-23 09:39:46 -0500 |
commit | 65391a1eb2979dc050dd4a98afea02bb0ef310ea (patch) | |
tree | e31a90d0966cec7e8713ead9ca8083d439c8d9b5 /include/gba/types.h | |
parent | eb48cc2f7eefc1e56c2dcec21c38381b4534b897 (diff) | |
parent | abe56579c107af58e6f3a43968ba2257ff358189 (diff) |
Merge remote-tracking branch 'upstream/master' into use_pokeblock
# Conflicts:
# src/use_pokeblock.c
Diffstat (limited to 'include/gba/types.h')
-rw-r--r-- | include/gba/types.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/include/gba/types.h b/include/gba/types.h index 3d78b5b5e..cb370c785 100644 --- a/include/gba/types.h +++ b/include/gba/types.h @@ -87,6 +87,29 @@ struct OamData #define ST_OAM_H_RECTANGLE 1 #define ST_OAM_V_RECTANGLE 2 +#define ST_OAM_SIZE_0 0 +#define ST_OAM_SIZE_1 1 +#define ST_OAM_SIZE_2 2 +#define ST_OAM_SIZE_3 3 + +#define SPRITE_SIZE_8x8 ((ST_OAM_SIZE_0 << 2) | (ST_OAM_SQUARE)) +#define SPRITE_SIZE_16x16 ((ST_OAM_SIZE_1 << 2) | (ST_OAM_SQUARE)) +#define SPRITE_SIZE_32x32 ((ST_OAM_SIZE_2 << 2) | (ST_OAM_SQUARE)) +#define SPRITE_SIZE_64x64 ((ST_OAM_SIZE_3 << 2) | (ST_OAM_SQUARE)) + +#define SPRITE_SIZE_16x8 ((ST_OAM_SIZE_0 << 2) | (ST_OAM_H_RECTANGLE)) +#define SPRITE_SIZE_32x8 ((ST_OAM_SIZE_1 << 2) | (ST_OAM_H_RECTANGLE)) +#define SPRITE_SIZE_32x16 ((ST_OAM_SIZE_2 << 2) | (ST_OAM_H_RECTANGLE)) +#define SPRITE_SIZE_64x32 ((ST_OAM_SIZE_3 << 2) | (ST_OAM_H_RECTANGLE)) + +#define SPRITE_SIZE_8x16 ((ST_OAM_SIZE_0 << 2) | (ST_OAM_V_RECTANGLE)) +#define SPRITE_SIZE_8x32 ((ST_OAM_SIZE_1 << 2) | (ST_OAM_V_RECTANGLE)) +#define SPRITE_SIZE_16x32 ((ST_OAM_SIZE_2 << 2) | (ST_OAM_V_RECTANGLE)) +#define SPRITE_SIZE_32x64 ((ST_OAM_SIZE_3 << 2) | (ST_OAM_V_RECTANGLE)) + +#define SPRITE_SIZE(dim) (SPRITE_SIZE_##dim >> 2) +#define SPRITE_SHAPE(dim) (SPRITE_SIZE_##dim & 0xFF) + struct BgAffineSrcData { s32 texX; |