void PutChar(int X, int Y, unsigned char Char) { unsigned short *Frame; int x, y; Frame = _lcd_get_frame(); for (y = 0; y < CHAR_HEIGHT; y++) { for (x = 0; x < CHAR_WIDTH; x++) { Frame[(Y * CHAR_HEIGHT + y) * 320 + (X * CHAR_WIDTH + x)] = CHARS[Char][y * CHAR_WIDTH + x]; } } }
void drawDraw() { int i, j; WORD* p = FrameBuffer - 8; for (i = 0; i < LCD_MAIN_H; i++) { for (j = 0; j < 8; j++) { *p++ = 0; } p += LCD_MAIN_W; for (j = 0; j < 8; j++) { *p++ = 0; } p += SCREEN_WIDTH - LCD_MAIN_W - 16; } __dcache_writeback_all(); _lcd_set_frame(); lcd_flip(); FrameBuffer = _lcd_get_frame() + SCREN_OFFSET; }
void drawInit(void) { FrameBuffer = _lcd_get_frame() + SCREN_OFFSET; }
void* display_addr() { return (void*)_lcd_get_frame(); }