From 7fe60435bce6595a9c58a9bfd8244d74b5320e96 Mon Sep 17 00:00:00 2001 From: Benjamin Franzke Date: Tue, 15 Jan 2013 08:46:13 +0100 Subject: Import DirectFB141_2k11R3_beta5 --- Source/DirectFB/gfxdrivers/cle266/uc_hw.h | 93 +++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100755 Source/DirectFB/gfxdrivers/cle266/uc_hw.h (limited to 'Source/DirectFB/gfxdrivers/cle266/uc_hw.h') diff --git a/Source/DirectFB/gfxdrivers/cle266/uc_hw.h b/Source/DirectFB/gfxdrivers/cle266/uc_hw.h new file mode 100755 index 0000000..83e3085 --- /dev/null +++ b/Source/DirectFB/gfxdrivers/cle266/uc_hw.h @@ -0,0 +1,93 @@ +// Shared header file for uc_hwmap.c and uc_hwset.c. + +#ifndef __UC_HW_H__ +#define __UC_HW_H__ + +#include + +#include + +#include "unichrome.h" +#include "uc_fifo.h" + +// GPU - mapping functions (uc_hwmap.c) + +/// Map a DirectFB destination surface pixel format to the hw. (3D) +static inline int uc_map_dst_format( DFBSurfacePixelFormat format ) +{ + switch (format) { + case DSPF_ARGB1555: return HC_HDBFM_ARGB1555; + case DSPF_RGB16: return HC_HDBFM_RGB565; + case DSPF_RGB32: return HC_HDBFM_ARGB0888; + case DSPF_ARGB: return HC_HDBFM_ARGB8888; + + default: + D_BUG( "unexpected pixel format" ); + } + + return 0; +} + +/// Map a DirectFB source surface pixel format to the hw. (3D) +static inline int uc_map_src_format_3d( DFBSurfacePixelFormat format ) +{ + switch (format) { + case DSPF_ARGB1555: return HC_HTXnFM_ARGB1555; + case DSPF_RGB16: return HC_HTXnFM_RGB565; + case DSPF_RGB32: return HC_HTXnFM_ARGB0888; + case DSPF_ARGB: return HC_HTXnFM_ARGB8888; + case DSPF_A8: return HC_HTXnFM_A8; + case DSPF_LUT8: return HC_HTXnFM_Index8; + + default: + D_BUG( "unexpected pixel format" ); + } + + return 0; +} + +void uc_map_blending_fn( struct uc_hw_alpha *hwalpha, + DFBSurfaceBlendFunction sblend, + DFBSurfaceBlendFunction dblend, + DFBSurfacePixelFormat dformat ); + +void uc_map_blitflags ( struct uc_hw_texture *tex, + DFBSurfaceBlittingFlags bflags, + DFBSurfacePixelFormat sformat ); + +// GPU - setting functions (uc_hwset.c) + +void uc_set_blending_fn( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_texenv ( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_clip ( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_destination( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_source_2d ( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_source_3d ( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_color_2d ( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +void uc_set_colorkey_2d( UcDriverData *ucdrv, + UcDeviceData *ucdev, + CardState *state ); + +#endif // __UC_HW_H__ + -- cgit