Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Colour Effects

AddressstdgbaAccessTypetonclib
0x4000050reg_bldcntRWblend_controlREG_BLDCNT
0x4000052reg_bldalpha[2]RWfixed<unsigned char>[2]REG_BLDALPHA
0x4000054reg_bldyRWfixed<unsigned char>REG_BLDY

blend_control

struct blend_control {
    bool dest_bg0 : 1;    // 2nd target layers
    bool dest_bg1 : 1;
    bool dest_bg2 : 1;
    bool dest_bg3 : 1;
    bool dest_obj : 1;
    bool dest_backdrop : 1;
    blend_op blend_op : 2; // none / alpha / brighten / darken
    bool src_bg0 : 1;     // 1st target layers
    bool src_bg1 : 1;
    bool src_bg2 : 1;
    bool src_bg3 : 1;
    bool src_obj : 1;
    bool src_backdrop : 1;
};
gba::reg_bldcnt = {
    .src_bg0 = true,
    .dest_bg1 = true,
    .blend_op = gba::blend_op_alpha
};
gba::reg_bldalpha[0] = 0.5_fx; // EVA (source weight)
gba::reg_bldalpha[1] = 0.5_fx; // EVB (target weight)