Showing content from http://technical.swissmicros.com/dmcp/doc/DMCP-ifc-html/group__lcd__graphics.html below:
DMCP interface: Graphics functions
LCD graphics and buffer commands. More...
void lcd_clear_buf () Clear LCD buffer.
void lcd_refresh () Start lcd refresh - could be blocking or non-blocking based on current system default (only dirty lines are updated)
void lcd_refresh_dma () Start non-blocking LCD refresh, LCD refresh continues in background (only dirty lines are updated)
void lcd_refresh_wait () Issue LCD refresh and wait until done (only dirty lines are updated)
void lcd_forced_refresh () Write immediately whole LCD buffer to LCD regardless of dirty flags.
void lcd_refresh_lines (int ln, int cnt) Write immediately lines [ln .. ln+cnt-1] to LCD.
void bitblt24 (uint32_t x, uint32_t dx, uint32_t y, uint32_t val, int blt_op, int fill) Blits dx
bits from val
at position x
, y
.
uint8_t * lcd_line_addr (int y) Returns pointer to line data (doesn't depend on LCD_INVERT_XAXIS)
void lcd_fill_rect (uint32_t x, uint32_t y, uint32_t dx, uint32_t dy, int val) Fills rectangular area of LCD.
void lcd_fill_ptrn (int x, int y, int dx, int dy, int ptrn1, int ptrn2) Fills rectangular area with prescribed pattern.
void lcd_fillLine (int ln, uint8_t val) Fill LCD line with value.
void lcd_fillLines (int ln, uint8_t val, int cnt) Fill LCD lines with value.
void lcd_set_buf_cleared (int val) Sets 'LCD buffer cleared' flag.
int lcd_get_buf_cleared () Reads 'LCD buffer cleared' flag.
uint8_t reverse_byte (uint8_t x) Swaps bits in byte.
LCD graphics and buffer commands.
LCD hardware doesn't provide any means to access once written graphics data. Therefore system has to provide graphics buffer to hold LCD data and track access to separate LCD lines to optimize LCD refresh operations.
◆ bitblt24() void bitblt24 ( uint32_t x, uint32_t dx, uint32_t y, uint32_t val, int blt_op, int fill )
Blits dx
bits from val
at position x
, y
.
-
Parameters
-
Value of fill
doesn't apply for BLT_XOR.
BLT_NONE doesn't affect any blit operation.
BLT_SET affects src value of blit operation:
- for BLT_OR src = 0 over width of operation (i.e.
dx
)
- for BLT_ANDN src = 1 over width of operation (i.e.
dx
)
◆ lcd_fill_ptrn() void lcd_fill_ptrn ( int x, int y, int dx, int dy, int ptrn1, int ptrn2 )
Fills rectangular area with prescribed pattern.
-
Parameters
-
x Position x y Position y dx Width x dy Width y ptrn1 Pattern for even lines ptrn2 Pattern for odd lines
◆ lcd_fill_rect() void lcd_fill_rect ( uint32_t x, uint32_t y, uint32_t dx, uint32_t dy, int val )
Fills rectangular area of LCD.
-
Parameters
-
◆ lcd_fillLine() void lcd_fillLine ( int ln, uint8_t val )
Fill LCD line with value.
-
Parameters
-
ln Line number val Data to fill
Written value isn't affected by LCD_INVERT_DATA flag.
◆ lcd_fillLines() void lcd_fillLines ( int ln, uint8_t val, int cnt )
Fill LCD lines with value.
-
Parameters
-
ln Starting line number val Data to fill cnt Number of lines to fill
Written value isn't affected by LCD_INVERT_DATA flag.
◆ lcd_get_buf_cleared() int lcd_get_buf_cleared ( )
Reads 'LCD buffer cleared' flag.
'LCD buffer cleared' flag is set by system every time the LCD buffer is cleared. User can clear this flag and detect later in code whether LCD screen was cleared from other part of program or system and thus optimize screen repaints.
◆ lcd_line_addr() uint8_t * lcd_line_addr ( int y )
Returns pointer to line data (doesn't depend on LCD_INVERT_XAXIS)
Also sets dirty flag for given line.
See LCD_write_line for explanation of line data.
◆ lcd_set_buf_cleared() void lcd_set_buf_cleared ( int val ) ◆ reverse_byte() uint8_t reverse_byte ( uint8_t x )
Swaps bits in byte.
-
Parameters
-
-
Returns
-
Swapped data
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4