capi/2d.h File Reference

#include "io.h"
#include "ssd192X.h"
#include "window.h"
Include dependency graph for 2d.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _2d_cmd

Defines

#define SSD192X_DISPLAYMODE_RGB16   0
#define SSD192X_DISPLAYMODE_RGB32   1
#define SSD192X_DISPLAYMODE_YUV   2
#define SSD192X_DISPLAYMODE_RGB1   4
#define SSD192X_DISPLAYMODE_RGB8   5
#define SSD192X_DISPLAYMODE_RGB2   6
#define SSD192X_ROTATE_NONE   0
#define SSD192X_ROTATE_VFLIP   1
#define SSD192X_ROTATE_HFLIP   2
#define SSD192X_ROTATE_VHFLIP   3
#define SSD192X_ROTATE_HFLIP_ROT90   4
#define SSD192X_ROTATE_ROT90   5
#define SSD192X_ROTATE_ROT270   6
#define SSD192X_ROTATE_HFLIP_ROT270   7

Typedefs

typedef struct _2d_cmd D2D_CMD

Enumerations

enum  ROTATE_TYPE {
  NONE = 0, VFLIP = 0x10, HFLIP = 0x40, VHFLIP = 0x50,
  HFLIP_ROT90 = 0xa0, ROT90 = 0xb0, ROT270 = 0xe0, HFLIP_ROT270 = 0xf0,
  TRANSPARENT = 0x01
}
enum  CMD_TYPE {
  DRAW_LINE = 1, DRAW_ELLIPSE = 3, BLIT_TRANS = 4, BLIT_BIT = 5,
  CLUT_SET = 6, ALPHABLEND = 7, BLIT_STRETCH = 8, BLIT_PATTERN = 9
}
enum  ERROR_CODE {
  _NO_ERROR = 0, BOUNDARY_ERROR = 1, NEGATIVE_REGVAL_ERROR = 2, MODE_ERROR_1 = 3,
  MODE_ERROR_2 = 4, OVERLAP_ERROR = 5, STRETCH_RATIO_ERROR = 6, SET_MODE_ERROR = 7
}
enum  SRCDST_MODE {
  MODE_16BIT = 0, MODE_32BIT = 1, MODE_YUV = 2, MODE_1BIT = 3,
  MODE_8BIT = 4
}

Functions

void WAIT_2D (void)
void ssd_set_16bbp_srcdst_mode ()
void ssd_2d_line (WINDOW *pWnd, UINT16 x1, UINT16 y1, UINT16 x2, UINT16 y2, UINT16 c)
void ssd_2d_arc (WINDOW *pWnd, UINT16 x1, UINT16 y1, UINT16 rx, UINT16 ry, UINT16 startAng, UINT16 endAng, UINT16 c)
void ssd_2d_blt (WINDOW *pSrcWnd, UINT16 x1, UINT16 y1, UINT16 srcWidth, UINT16 srcHeight, WINDOW *pDstWnd, UINT16 x2, UINT16 y2, UINT16 dstWidth, UINT16 dstHeight, ROTATE_TYPE orient)
void ssd_2d_rect (WINDOW *pWnd, INT32 x, INT32 y, INT32 x2, INT32 y2, UINT16 rgb16Colour)
void ssd_2d_rect_outline (WINDOW *pWnd, INT32 x, INT32 y, INT32 x2, INT32 y2, UINT16 rgb16Colour)
void ssd192X_2d_rect (WINDOW *pWnd, INT32 x, INT32 y, INT32 x2, INT32 y2, UINT16 rgb16Colour)
void ssd192X_2d_stretch (INT32 SRC_STARTADDR, UINT16 SRC_LINEWIDTH, UINT16 SRC_WIDTH, UINT16 SRC_HEIGHT, INT32 DEST_STARTADDR, UINT16 DEST_LINEWIDTH, UINT16 DEST_WIDTH, UINT16 DEST_HEIGHT, UINT8 ORIENT)
void ssd192X_2d_blt (INT32 SRC_STARTADDR, UINT16 SRC_LINEWIDTH, UINT16 SRC_WIDTH, UINT16 SRC_HEIGHT, INT32 DEST_STARTADDR, UINT16 DEST_LINEWIDTH, ROTATE_TYPE orient)
void ClearDisplay (int DEST_STARTADDR, int DEST_LINEWIDTH, int DEST_WIDTH, int DEST_HEIGHT)

Define Documentation

#define SSD192X_DISPLAYMODE_RGB1   4
#define SSD192X_DISPLAYMODE_RGB16   0

Referenced by main().

#define SSD192X_DISPLAYMODE_RGB2   6

Referenced by main().

#define SSD192X_DISPLAYMODE_RGB32   1
#define SSD192X_DISPLAYMODE_RGB8   5
#define SSD192X_DISPLAYMODE_YUV   2

Referenced by ssd_window_create().

#define SSD192X_ROTATE_HFLIP   2
#define SSD192X_ROTATE_HFLIP_ROT270   7
#define SSD192X_ROTATE_HFLIP_ROT90   4
#define SSD192X_ROTATE_NONE   0
#define SSD192X_ROTATE_ROT270   6
#define SSD192X_ROTATE_ROT90   5
#define SSD192X_ROTATE_VFLIP   1
#define SSD192X_ROTATE_VHFLIP   3

Typedef Documentation

typedef struct _2d_cmd D2D_CMD

Enumeration Type Documentation

enum CMD_TYPE
Enumerator:
DRAW_LINE 
DRAW_ELLIPSE 
BLIT_TRANS 
BLIT_BIT 
CLUT_SET 
ALPHABLEND 
BLIT_STRETCH 
BLIT_PATTERN 
enum ERROR_CODE
Enumerator:
_NO_ERROR 
BOUNDARY_ERROR 
NEGATIVE_REGVAL_ERROR 
MODE_ERROR_1 
MODE_ERROR_2 
OVERLAP_ERROR 
STRETCH_RATIO_ERROR 
SET_MODE_ERROR 
Enumerator:
NONE 
VFLIP 
HFLIP 
VHFLIP 
HFLIP_ROT90 
ROT90 
ROT270 
HFLIP_ROT270 
TRANSPARENT 
Enumerator:
MODE_16BIT 
MODE_32BIT 
MODE_YUV 
MODE_1BIT 
MODE_8BIT 

Function Documentation

void ClearDisplay ( int  DEST_STARTADDR,
int  DEST_LINEWIDTH,
int  DEST_WIDTH,
int  DEST_HEIGHT 
)

References ssd192X_2d_stretch(), and SSD_MEMWW.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

void ssd192X_2d_blt ( INT32  SRC_STARTADDR,
UINT16  SRC_LINEWIDTH,
UINT16  SRC_WIDTH,
UINT16  SRC_HEIGHT,
INT32  DEST_STARTADDR,
UINT16  DEST_LINEWIDTH,
ROTATE_TYPE  orient 
)
void ssd192X_2d_rect ( WINDOW pWnd,
INT32  x,
INT32  y,
INT32  x2,
INT32  y2,
UINT16  rgb16Colour 
)
void ssd192X_2d_stretch ( INT32  SRC_STARTADDR,
UINT16  SRC_LINEWIDTH,
UINT16  SRC_WIDTH,
UINT16  SRC_HEIGHT,
INT32  DEST_STARTADDR,
UINT16  DEST_LINEWIDTH,
UINT16  DEST_WIDTH,
UINT16  DEST_HEIGHT,
UINT8  ORIENT 
)
void ssd_2d_arc ( WINDOW pWnd,
UINT16  x1,
UINT16  y1,
UINT16  rx,
UINT16  ry,
UINT16  startAng,
UINT16  endAng,
UINT16  c 
)
void ssd_2d_blt ( WINDOW pSrcWnd,
UINT16  x1,
UINT16  y1,
UINT16  srcWidth,
UINT16  srcHeight,
WINDOW pDstWnd,
UINT16  x2,
UINT16  y2,
UINT16  dstWidth,
UINT16  dstHeight,
ROTATE_TYPE  orient 
)
void ssd_2d_line ( WINDOW pWnd,
UINT16  x1,
UINT16  y1,
UINT16  x2,
UINT16  y2,
UINT16  c 
)
void ssd_2d_rect ( WINDOW pWnd,
INT32  x,
INT32  y,
INT32  x2,
INT32  y2,
UINT16  rgb16Colour 
)

References abs, ssd192X_2d_stretch(), ssd_calc_start_addr(), ssd_calc_start_addr_direct(), SSD_MEMWW, and _WINDOW::width.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

void ssd_2d_rect_outline ( WINDOW pWnd,
INT32  x,
INT32  y,
INT32  x2,
INT32  y2,
UINT16  rgb16Colour 
)

References ssd_2d_line().

Referenced by DrawWidgets(), and main().

Here is the call graph for this function:

Here is the caller graph for this function:

void ssd_set_16bbp_srcdst_mode (  ) 

References MODE_16BIT, ssd_set_16bbp_dst_mode(), and ssd_set_16bbp_src_mode().

Referenced by main(), ssd192X_2d_blt(), ssd192X_2d_stretch(), ssd_2d_arc(), and ssd_2d_line().

Here is the call graph for this function:

Here is the caller graph for this function:

void WAIT_2D ( void   ) 

References REG_2D_CMD_FIFO_FLAG, and SSD_REGRB.

Referenced by ssd_mem_dma_copy(), and ssd_start_fifo().

Here is the caller graph for this function:

Generated on Wed Mar 23 11:08:20 2011 for Omnima LCD by  doxygen 1.6.3