// // Video memory setup // #ifndef GBA_VIDEO_H #define GBA_VIDEO_H #include "gba_types.h" #include "gba_regs.h" //define the screen width and height values to be used #define SCREEN_WIDTH 240 #define SCREEN_HEIGHT 160 #define MODE_0 0x0 //screen mode 0 #define MODE_1 0x1 //screen mode 1 #define MODE_2 0x2 //screen mode 2 #define MODE_3 0x3 //screen mode 3 #define MODE_4 0x4 //screen mode 4 #define MODE_5 0x5 //screen mode 5 #define backbuffer 0x10 //define the buffer which is used to set the //active buffer(using double buffering) #define H_BLANK_OAM 0x20 //This bit, when set allows OAM //(Object Attribute memory) to be updated during a //horizontal blank #define OBJ_MAP_2D 0x00 //Sprite data is stored in a 2D array(dont use this!!) #define OBJ_MAP_1D 0x40 //Sprite data is stored in a 1D array #define BG0_ENABLE 0x100 //Enables background 0 #define BG1_ENABLE 0x200 //Enables background 1 #define BG2_ENABLE 0x400 //Enables background 2 #define BG3_ENABLE 0x800 //Enables background 3 #define OBJ_ENABLE 0x1000 //Enables sprites #define SetMode(mode) REG_DISPCNT = (mode) //Set the mode that you want to use, logical OR them together as below: //e.g. SetMode(MODE_2 | OBJ_ENABLE | OBJ_MAP_1D); #endif