This repository has been archived by the owner on Feb 11, 2021. It is now read-only.
/
SDL_nxvideo.h
99 lines (84 loc) · 3.15 KB
1
2
/*
SDL - Simple DirectMedia Layer
3
Copyright (C) 1997-2009 Sam Lantinga
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Copyright (C) 2001 Hsieh-Fu Tsai
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Sam Lantinga
21
slouken@libsdl.org
22
23
24
25
Hsieh-Fu Tsai
clare@setabox.com
*/
26
#include "SDL_config.h"
27
28
29
30
31
32
#ifndef _SDL_nxvideo_h
#define _SDL_nxvideo_h
#include <microwin/nano-X.h>
33
#include "../SDL_sysvideo.h"
34
35
36
37
38
39
40
41
42
43
44
#ifdef ENABLE_NANOX_DEBUG
#define Dprintf printf
#else
#define Dprintf(ignore...)
#endif
// Hidden "this" pointer for the video functions
#define _THIS SDL_VideoDevice * this
// Private display data
45
46
47
48
49
50
51
typedef struct NX_SDL_VISUAL
{
int bpp;
Uint32 red_mask;
Uint32 green_mask;
Uint32 blue_mask;
} nx_sdl_visual_t;
52
53
54
55
56
struct SDL_PrivateVideoData
{
GR_WINDOW_ID SDL_Window;
GR_WINDOW_ID FSwindow;
57
// Flag: true if we have been passed a window
58
59
60
61
62
63
char *SDL_windowid;
GR_GC_ID GC;
unsigned char *Image;
unsigned char *Image_buff; /* for GrArea */
unsigned char *Clientfb; /* for DirectFB */
nx_sdl_visual_t SDL_Visual;
64
// The current list of available video modes
65
66
SDL_Rect **modelist;
int currently_fullscreen;
67
// for fullscreen
68
int OffsetX, OffsetY;
69
// for GammaRamp
70
Uint16 *GammaRamp_R, *GammaRamp_G, *GammaRamp_B;
71
// for GrArea, r_mask, g_mask, b_mask
72
int pixel_type;
73
74
75
#ifdef ENABLE_NANOX_DIRECT_FB
GR_WINDOW_FB_INFO fbinfo;
#endif
76
};
77
78
79
80
81
82
83
#define SDL_Window (this -> hidden -> SDL_Window)
#define FSwindow (this -> hidden -> FSwindow)
#define SDL_windowid (this -> hidden -> SDL_windowid)
#define SDL_GC (this -> hidden -> GC)
#define SDL_Image (this -> hidden -> Image)
#define Image_buff (this -> hidden -> Image_buff)
84
#define Clientfb (this -> hidden -> Clientfb)
85
86
87
88
89
90
91
92
93
#define SDL_Visual (this -> hidden -> SDL_Visual)
#define SDL_modelist (this -> hidden -> modelist)
#define currently_fullscreen (this -> hidden -> currently_fullscreen)
#define OffsetX (this -> hidden -> OffsetX)
#define OffsetY (this -> hidden -> OffsetY)
#define GammaRamp_R (this -> hidden -> GammaRamp_R)
#define GammaRamp_G (this -> hidden -> GammaRamp_G)
#define GammaRamp_B (this -> hidden -> GammaRamp_B)
#define pixel_type (this -> hidden -> pixel_type)
94
#define fbinfo (this -> hidden -> fbinfo)
95
96
#define CI_SIZE 256 // color index size
97
98
99
#endif // _SDL_nxvideo_h
/* vi: set ts=4 sw=4 expandtab: */