From 6a736dbcf0f34b04d3a950a38fbb539a7807d2d8 Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Sun, 18 Apr 2021 11:34:22 +0200 Subject: Rename OAM_x to OBJ_x since they refer to objects --- src/main.c | 62 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/src/main.c b/src/main.c index f3c07df..b09d54f 100644 --- a/src/main.c +++ b/src/main.c @@ -81,17 +81,17 @@ rgb15(u32 red, u32 green, u32 blue ) { // Sprites. // -// Using macros instead of aligned structs for setting up OAM attributes and +// Using macros instead of aligned structs for setting up OBJ attributes and // affine parameters. // TODO: Benchmark if this would be slower or the same that TONC's // implementation. -#define OAM_ATTR_0(N) *((vu16*)(MEM_OAM + 0 + 8 * (N))) -#define OAM_ATTR_1(N) *((vu16*)(MEM_OAM + 2 + 8 * (N))) -#define OAM_ATTR_2(N) *((vu16*)(MEM_OAM + 4 + 8 * (N))) -#define OAM_AFFINE_PA(N) *((vs16*)(MEM_OAM + 6 + 8 * 0 + 8 * 4 * (N))) -#define OAM_AFFINE_PB(N) *((vs16*)(MEM_OAM + 6 + 8 * 1 + 8 * 4 * (N))) -#define OAM_AFFINE_PC(N) *((vs16*)(MEM_OAM + 6 + 8 * 2 + 8 * 4 * (N))) -#define OAM_AFFINE_PD(N) *((vs16*)(MEM_OAM + 6 + 8 * 3 + 8 * 4 * (N))) +#define OBJ_ATTR_0(N) *((vu16*)(MEM_OAM + 0 + 8 * (N))) +#define OBJ_ATTR_1(N) *((vu16*)(MEM_OAM + 2 + 8 * (N))) +#define OBJ_ATTR_2(N) *((vu16*)(MEM_OAM + 4 + 8 * (N))) +#define OBJ_AFFINE_PA(N) *((vs16*)(MEM_OAM + 6 + 8 * 0 + 8 * 4 * (N))) +#define OBJ_AFFINE_PB(N) *((vs16*)(MEM_OAM + 6 + 8 * 1 + 8 * 4 * (N))) +#define OBJ_AFFINE_PC(N) *((vs16*)(MEM_OAM + 6 + 8 * 2 + 8 * 4 * (N))) +#define OBJ_AFFINE_PD(N) *((vs16*)(MEM_OAM + 6 + 8 * 3 + 8 * 4 * (N))) // Using bd-font, an 8x8 bitmap font. static void @@ -370,29 +370,29 @@ key_hold(u32 key) { int main(void) { DISP_CTRL = DISP_MODE_3 | DISP_BG_2; - // Test setting OAM parameters for sprite N with my custom macros. - OAM_ATTR_0(0) = 0xBADD; - OAM_ATTR_1(0) = 0x10DE; - OAM_ATTR_2(0) = 0xAC1D; - OAM_ATTR_0(1) = 0xFA7E; - OAM_ATTR_1(1) = 0xD15E; - OAM_ATTR_2(1) = 0xA5ED; - OAM_ATTR_0(2) = 0xBADD; - OAM_ATTR_1(2) = 0x10DE; - OAM_ATTR_2(2) = 0xAC1D; - OAM_ATTR_0(3) = 0xFA7E; - OAM_ATTR_1(3) = 0xD15E; - OAM_ATTR_2(3) = 0xA5ED; - OAM_AFFINE_PA(0) = 0x0011; - OAM_AFFINE_PB(0) = 0x2233; - OAM_AFFINE_PC(0) = 0x4455; - OAM_AFFINE_PD(0) = 0x6677; - OAM_AFFINE_PA(1) = 0xAABB; - OAM_AFFINE_PB(1) = 0xCCDD; - OAM_AFFINE_PC(1) = 0xEEFF; - OAM_AFFINE_PD(1) = 0x0101; - - draw_fill_rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, COLOR_GREY); + // Test setting OBJ parameters for sprite N with my custom macros. + OBJ_ATTR_0(0) = 0xBADD; + OBJ_ATTR_1(0) = 0x10DE; + OBJ_ATTR_2(0) = 0xAC1D; + OBJ_ATTR_0(1) = 0xFA7E; + OBJ_ATTR_1(1) = 0xD15E; + OBJ_ATTR_2(1) = 0xA5ED; + OBJ_ATTR_0(2) = 0xBADD; + OBJ_ATTR_1(2) = 0x10DE; + OBJ_ATTR_2(2) = 0xAC1D; + OBJ_ATTR_0(3) = 0xFA7E; + OBJ_ATTR_1(3) = 0xD15E; + OBJ_ATTR_2(3) = 0xA5ED; + OBJ_AFFINE_PA(0) = 0x0011; + OBJ_AFFINE_PB(0) = 0x2233; + OBJ_AFFINE_PC(0) = 0x4455; + OBJ_AFFINE_PD(0) = 0x6677; + OBJ_AFFINE_PA(1) = 0xAABB; + OBJ_AFFINE_PB(1) = 0xCCDD; + OBJ_AFFINE_PC(1) = 0xEEFF; + OBJ_AFFINE_PD(1) = 0x0101; + + // draw_fill_rect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, COLOR_GREY); int side = 60; int line = 35; -- cgit v1.2.1