Mercurial > sdl-ios-xcode
comparison src/video/gem/SDL_gemvideo.h @ 281:c5010ab8ba35
Added initial support for Atari (thanks Patrice!)
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 17 Feb 2002 19:54:28 +0000 |
parents | |
children | f6ffac90895c |
comparison
equal
deleted
inserted
replaced
280:0ddcea45d829 | 281:c5010ab8ba35 |
---|---|
1 /* | |
2 SDL - Simple DirectMedia Layer | |
3 Copyright (C) 1997, 1998, 1999, 2000, 2001 Sam Lantinga | |
4 | |
5 This library is free software; you can redistribute it and/or | |
6 modify it under the terms of the GNU Library General Public | |
7 License as published by the Free Software Foundation; either | |
8 version 2 of the License, or (at your option) any later version. | |
9 | |
10 This library 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 GNU | |
13 Library General Public License for more details. | |
14 | |
15 You should have received a copy of the GNU Library General Public | |
16 License along with this library; if not, write to the Free | |
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
18 | |
19 Sam Lantinga | |
20 slouken@libsdl.org | |
21 */ | |
22 | |
23 #ifdef SAVE_RCSID | |
24 static char rcsid = | |
25 "@(#) $Id$"; | |
26 #endif | |
27 | |
28 #ifndef _SDL_gemvideo_h | |
29 #define _SDL_gemvideo_h | |
30 | |
31 #include "SDL_sysvideo.h" | |
32 #include "SDL_mutex.h" | |
33 | |
34 /* Hidden "this" pointer for the video functions */ | |
35 #define _THIS SDL_VideoDevice *this | |
36 | |
37 /* Functions prototypes */ | |
38 void GEM_wind_redraw(_THIS, int winhandle, short *inside); | |
39 | |
40 /* Private display data */ | |
41 | |
42 #define SDL_NUMMODES 1 /* Fullscreen */ | |
43 | |
44 struct SDL_PrivateVideoData { | |
45 /* VDI infos */ | |
46 short vdi_handle; /* VDI handle */ | |
47 short full_w, full_h; /* Fullscreen size */ | |
48 int bpp; /* Colour depth */ | |
49 int pixelsize; /* Bytes per pixel */ | |
50 Uint16 old_numcolors; /* Number of colors in saved palette */ | |
51 Uint16 old_palette[256][3]; /* Saved current palette */ | |
52 Uint16 pitch; /* Line length */ | |
53 int format; /* Screen format */ | |
54 void *screen; /* Screen address */ | |
55 Uint32 red, green, blue, alpha; /* Screen components */ | |
56 Uint32 screensize; | |
57 MFDB src_mfdb, dst_mfdb; /* VDI MFDB for bitblt */ | |
58 short blit_coords[8]; /* Coordinates for bitblt */ | |
59 /* Gem infos */ | |
60 short ap_id; /* AES handle */ | |
61 short desk_x, desk_y; /* Desktop properties */ | |
62 short desk_w, desk_h; | |
63 short win_handle; /* Our window handle */ | |
64 void *buffer; /* Our shadow buffer */ | |
65 int window_type; /* Window type */ | |
66 const char *title_name; /* Window title */ | |
67 const char *icon_name; /* Icon title */ | |
68 short version; /* AES version */ | |
69 short wfeatures; /* AES window features */ | |
70 SDL_bool window_fulled; /* Window maximized ? */ | |
71 SDL_bool mouse_relative; /* Report relative mouse movement */ | |
72 SDL_bool locked; /* AES locked for fullscreen ? */ | |
73 SDL_Rect *SDL_modelist[SDL_NUMMODES+1]; /* Mode list */ | |
74 }; | |
75 | |
76 /* Hidden structure -> variables names */ | |
77 #define VDI_handle (this->hidden->vdi_handle) | |
78 #define VDI_w (this->hidden->full_w) | |
79 #define VDI_h (this->hidden->full_h) | |
80 #define VDI_bpp (this->hidden->bpp) | |
81 #define VDI_pixelsize (this->hidden->pixelsize) | |
82 #define VDI_oldnumcolors (this->hidden->old_numcolors) | |
83 #define VDI_oldpalette (this->hidden->old_palette) | |
84 #define VDI_pitch (this->hidden->pitch) | |
85 #define VDI_format (this->hidden->format) | |
86 #define VDI_screen (this->hidden->screen) | |
87 #define VDI_redmask (this->hidden->red) | |
88 #define VDI_greenmask (this->hidden->green) | |
89 #define VDI_bluemask (this->hidden->blue) | |
90 #define VDI_alphamask (this->hidden->alpha) | |
91 #define VDI_screensize (this->hidden->screensize) | |
92 #define VDI_src_mfdb (this->hidden->src_mfdb) | |
93 #define VDI_dst_mfdb (this->hidden->dst_mfdb) | |
94 #define VDI_blit_coords (this->hidden->blit_coords) | |
95 #define GEM_ap_id (this->hidden->ap_id) | |
96 #define GEM_desk_x (this->hidden->desk_x) | |
97 #define GEM_desk_y (this->hidden->desk_y) | |
98 #define GEM_desk_w (this->hidden->desk_w) | |
99 #define GEM_desk_h (this->hidden->desk_h) | |
100 #define GEM_handle (this->hidden->win_handle) | |
101 #define GEM_buffer (this->hidden->buffer) | |
102 #define GEM_win_type (this->hidden->window_type) | |
103 #define GEM_title_name (this->hidden->title_name) | |
104 #define GEM_icon_name (this->hidden->icon_name) | |
105 #define GEM_version (this->hidden->version) | |
106 #define GEM_wfeatures (this->hidden->wfeatures) | |
107 #define GEM_win_fulled (this->hidden->window_fulled) | |
108 #define GEM_mouse_relative (this->hidden->mouse_relative) | |
109 #define GEM_locked (this->hidden->locked) | |
110 #define SDL_modelist (this->hidden->SDL_modelist) | |
111 | |
112 #endif /* _SDL_gemvideo_h */ |