#include #include #include #include #include //basic print funcionality #define MYBASE 8 #define MYOFFSET 31 //--------------------------------------------------------------------------------- int main(void) { //--------------------------------------------------------------------------------- touchPosition touchXY; videoSetMode(MODE_5_2D | DISPLAY_BG0_ACTIVE | DISPLAY_BG3_ACTIVE); videoSetModeSub(MODE_5_2D | DISPLAY_BG0_ACTIVE); vramSetBankA(VRAM_A_MAIN_BG); vramSetBankB(VRAM_B_MAIN_BG); vramSetBankC(VRAM_C_SUB_BG); SUB_BG0_CR = BG_MAP_BASE(31); BG3_CR = BG_BMP16_256x256 | BG_PRIORITY_3; BG0_CR = BG_MAP_BASE(MYBASE+MYOFFSET) | BG_TILE_BASE(MYBASE) | BG_PRIORITY_0; BG3_XDX = 1 << 8; BG3_XDY = 0; BG3_YDX = 0; BG3_YDY = 1 << 8; BG_PALETTE[255] = RGB15(31,31,31); //by default font will be rendered with color 255 consoleInitDefault((u16*)SCREEN_BASE_BLOCK(MYBASE+MYOFFSET), (u16*)CHAR_BASE_BLOCK(MYBASE), 16); int i,j; for(i = 0; i < 192; i++) { //BG_GFX[i] = RGB15(31,0,31); for(j = 0; j < 256; j++) { if(i == 20) BG_GFX[j+(256*i)] = RGB15(31,31,31) | BIT(15); else if(i == 172) BG_GFX[j+(256*i)] = RGB15(0,0,31) | BIT(15); else BG_GFX[j+(256*i)] = RGB15(0,0,31-(int)(i*0.16)) | BIT(15); } } while(1) { touchXY=touchReadXY(); iprintf("\x1b[10;0HTouch x = %04X, %04X\n", touchXY.x, touchXY.px); iprintf("Touch y = %04X, %04X\n", touchXY.y, touchXY.py); } return 0; }