gpulib: handle vram copy in gpulib
[pcsx_rearmed.git] / plugins / gpu_unai / gpu.h
CommitLineData
86aad47b 1/***************************************************************************
2* Copyright (C) 2010 PCSX4ALL Team *
3* Copyright (C) 2010 Unai *
4* *
5* This program is free software; you can redistribute it and/or modify *
6* it under the terms of the GNU General Public License as published by *
7* the Free Software Foundation; either version 2 of the License, or *
8* (at your option) any later version. *
9* *
10* This program is distributed in the hope that it will be useful, *
11* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13* GNU General Public License for more details. *
14* *
15* You should have received a copy of the GNU General Public License *
16* along with this program; if not, write to the *
17* Free Software Foundation, Inc., *
18* 51 Franklin Street, Fifth Floor, Boston, MA 02111-1307 USA. *
19***************************************************************************/
20
21#ifndef NEW_GPU_H
22#define NEW_GPU_H
23
24///////////////////////////////////////////////////////////////////////////////
25// GPU global definitions
26#define FRAME_BUFFER_SIZE (1024*512*2)
27#define FRAME_WIDTH 1024
28#define FRAME_HEIGHT 512
29#define FRAME_OFFSET(x,y) (((y)<<10)+(x))
30
31#define VIDEO_WIDTH 320
32
33typedef char s8;
34typedef signed short s16;
35typedef signed int s32;
36typedef signed long long s64;
37
38typedef unsigned char u8;
39typedef unsigned short u16;
40typedef unsigned int u32;
41typedef unsigned long long u64;
42
43#include "gpu_fixedpoint.h"
44
45///////////////////////////////////////////////////////////////////////////////
46// Tweaks and Hacks
47extern int skipCount;
48extern bool enableAbbeyHack;
49extern bool show_fps;
50extern bool alt_fps;
51
52///////////////////////////////////////////////////////////////////////////////
53// interlaced rendering
54extern int linesInterlace_user;
55extern bool progressInterlace;
56
57extern bool light;
58extern bool blend;
59
60typedef struct {
61 u32 Version;
62 u32 GPU_gp1;
63 u32 Control[256];
64 unsigned char FrameBuffer[1024*512*2];
65} GPUFreeze_t;
66
67struct GPUPacket
68{
69 union
70 {
71 u32 U4[16];
72 s32 S4[16];
73 u16 U2[32];
74 s16 S2[32];
75 u8 U1[64];
76 s8 S1[64];
77 };
78};
79
80///////////////////////////////////////////////////////////////////////////////
81// Compile Options
82
83//#define ENABLE_GPU_NULL_SUPPORT // Enables NullGPU support
84//#define ENABLE_GPU_LOG_SUPPORT // Enables gpu logger, very slow only for windows debugging
85
86///////////////////////////////////////////////////////////////////////////////
87#endif // NEW_GPU_H