2 * Copyright (c) 2010 The VP8 project authors. All Rights Reserved.
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
12 #ifndef VPXBLIT_H_INCL
13 #define VPXBLIT_H_INCL
14 /*==============================================================================
16 ==============================================================================*/
18 /*==============================================================================
20 ==============================================================================*/
24 #define BYTE_ZERO(X) ((X & 0xFF000000) >> (24 - 2) )
25 #define BYTE_ONE(X) ((X & 0x00FF0000) >> (16 - 2) )
26 #define BYTE_TWO(X) ((X & 0x0000FF00) >> (8 - 2) )
27 #define BYTE_THREE(X) ((X & 0x000000FF) << (0 + 2) )
29 #define BYTE_ZERO_UV(X) ((X & 0x0000FF00) >> (8 - 2) )
30 #define BYTE_ONE_UV(X) ((X & 0x000000FF) << (0 + 2) )
32 #define REREFERENCE(X) (*((int *) &(X)))
36 #define BYTE_THREE(X) ((X & 0xFF000000) >> (24 - 2) )
37 #define BYTE_TWO(X) ((X & 0x00FF0000) >> (16 - 2) )
38 #define BYTE_ONE(X) ((X & 0x0000FF00) >> (8 - 2) )
39 #define BYTE_ZERO(X) ((X & 0x000000FF) << (0 + 2) )
41 #define BYTE_ONE_UV(X) ((X & 0x0000FF00) >> (8 - 2) )
42 #define BYTE_ZERO_UV(X) ((X & 0x000000FF) << (0 + 2) )
44 #define REREFERENCE(X) (*((int *) &(X)))
49 /*==============================================================================
51 ==============================================================================*/
52 typedef struct // YUV buffer configuration structure
72 typedef struct tx86_params
74 unsigned int pushed_registers[6];
75 unsigned int return_address;
77 unsigned int scrn_pitch;
78 VPX_BLIT_CONFIG *buff_config;
81 /*=============================================================================
83 ==============================================================================*/
86 /*==============================================================================
88 ==============================================================================*/
90 /*==============================================================================
92 ==============================================================================*/
95 /*==============================================================================
97 ==============================================================================*/
102 /*==============================================================================
103 Function Protoypes/MICROS
104 ==============================================================================*/
105 int vpx_get_size_of_pixel(unsigned int bd);
106 void *vpx_get_blitter(unsigned int bd);
107 void vpx_set_blit(void);
108 void vpx_destroy_blit(void);
112 #endif //VPXBLIT_H_INCL