Search
lxdream.org :: lxdream/src/pvr2/pvr2.h :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/pvr2/pvr2.h
changeset 282:01e53698ff38
prev222:541d9d899aba
next284:808617ee7135
author nkeynes
date Sun Jan 14 11:43:00 2007 +0000 (13 years ago)
permissions -rw-r--r--
last change First cut of YUV converter
file annotate diff log raw
1.1 --- a/src/pvr2/pvr2.h Tue Sep 12 11:54:19 2006 +0000
1.2 +++ b/src/pvr2/pvr2.h Sun Jan 14 11:43:00 2007 +0000
1.3 @@ -1,5 +1,5 @@
1.4 /**
1.5 - * $Id: pvr2.h,v 1.18 2006-09-12 11:54:19 nkeynes Exp $
1.6 + * $Id: pvr2.h,v 1.19 2007-01-14 11:43:00 nkeynes Exp $
1.7 *
1.8 * PVR2 (video chip) functions and macros.
1.9 *
1.10 @@ -114,6 +114,13 @@
1.11 void pvr2_vram64_write( sh4addr_t dest, char *src, uint32_t length );
1.12
1.13 /**
1.14 + * Write to the interleaved memory address space (aka 64-bit address space),
1.15 + * using a line length and stride.
1.16 + */
1.17 +void pvr2_vram64_write_stride( sh4addr_t dest, char *src, uint32_t line_bytes,
1.18 + uint32_t line_stride_bytes, uint32_t line_count );
1.19 +
1.20 +/**
1.21 * Read from the interleaved memory address space (aka 64-bit address space)
1.22 */
1.23 void pvr2_vram64_read( char *dest, sh4addr_t src, uint32_t length );
1.24 @@ -138,6 +145,19 @@
1.25 */
1.26 void pvr2_ta_init( void );
1.27
1.28 +
1.29 +/****************************** YUV Converter ****************************/
1.30 +
1.31 +/**
1.32 + * Process a block of YUV data.
1.33 + */
1.34 +void pvr2_yuv_write( char *buf, uint32_t length );
1.35 +
1.36 +/**
1.37 + * Initialize the YUV converter.
1.38 + */
1.39 +void pvr2_yuv_init( uint32_t target_addr, uint32_t config );
1.40 +
1.41 /********************************* Renderer ******************************/
1.42
1.43 /**
1.44 @@ -220,8 +240,8 @@
1.45
1.46 #define POLY2_SRC_BLEND(poly2) ( pvr2_poly_srcblend[(poly2) >> 29] )
1.47 #define POLY2_DEST_BLEND(poly2) ( pvr2_poly_dstblend[((poly2)>>26)&0x07] )
1.48 -#define POLY2_SRC_BLEND_ENABLE(poly2) ((poly2)&0x02000000)
1.49 -#define POLY2_DEST_BLEND_ENABLE(poly2) ((poly2)&0x01000000)
1.50 +#define POLY2_SRC_BLEND_TARGET(poly2) ((poly2)&0x02000000)
1.51 +#define POLY2_DEST_BLEND_TARGET(poly2) ((poly2)&0x01000000)
1.52 #define POLY2_COLOUR_CLAMP_ENABLE(poly2) ((poly2)&0x00200000)
1.53 #define POLY2_ALPHA_ENABLE(poly2) ((poly2)&0x001000000)
1.54 #define POLY2_TEX_ALPHA_ENABLE(poly2) (((poly2)&0x00080000) == 0 )
.