Mercurial > sdl-ios-xcode
annotate src/video/dummy/SDL_nullrender.c @ 4525:3abf0b9cafad
pelya 2010-07-12 03:53:48 PDT
In function GLES_RenderCopy() in SDL_renderer_gles.c:819 there is one memcpy()
that can be avoided if we're updating whole texture.
Because of that the SDL 1.3 in compatibility mode is working even slower than
software rendering in SDL 1.2.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Wed, 14 Jul 2010 07:31:35 -0700 |
parents | f7b03b6838cb |
children | e743b9c3f6d6 |
rev | line source |
---|---|
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
1 /* |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
2 SDL - Simple DirectMedia Layer |
3697 | 3 Copyright (C) 1997-2010 Sam Lantinga |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
4 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
5 This library is free software; you can redistribute it and/or |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
6 modify it under the terms of the GNU Lesser General Public |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
7 License as published by the Free Software Foundation; either |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
8 version 2.1 of the License, or (at your option) any later version. |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
9 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
10 This library is distributed in the hope that it will be useful, |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
11 but WITHOUT ANY WARRANTY; without even the implied warranty of |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
13 Lesser General Public License for more details. |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
14 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
15 You should have received a copy of the GNU Lesser General Public |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
16 License along with this library; if not, write to the Free Software |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
18 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
19 Sam Lantinga |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
20 slouken@libsdl.org |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
21 */ |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
22 #include "SDL_config.h" |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
23 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
24 #include "SDL_video.h" |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
25 #include "../SDL_sysvideo.h" |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
26 #include "../SDL_yuv_sw_c.h" |
2228
bb67fd5ccfdb
Fixed compile warnings with Visual C++
Sam Lantinga <slouken@libsdl.org>
parents:
2227
diff
changeset
|
27 #include "../SDL_renderer_sw.h" |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
28 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
29 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
30 /* SDL surface based renderer implementation */ |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
31 |
1912
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
32 static SDL_Renderer *SDL_DUMMY_CreateRenderer(SDL_Window * window, |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
33 Uint32 flags); |
3596
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
34 static int SDL_DUMMY_RenderDrawPoints(SDL_Renderer * renderer, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
35 const SDL_Point * points, int count); |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
36 static int SDL_DUMMY_RenderDrawLines(SDL_Renderer * renderer, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
37 const SDL_Point * points, int count); |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
38 static int SDL_DUMMY_RenderDrawRects(SDL_Renderer * renderer, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
39 const SDL_Rect ** rects, int count); |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
40 static int SDL_DUMMY_RenderFillRects(SDL_Renderer * renderer, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
41 const SDL_Rect ** rects, int count); |
1912
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
42 static int SDL_DUMMY_RenderCopy(SDL_Renderer * renderer, |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
43 SDL_Texture * texture, |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
44 const SDL_Rect * srcrect, |
1985
8055185ae4ed
Added source color and alpha modulation support.
Sam Lantinga <slouken@libsdl.org>
parents:
1965
diff
changeset
|
45 const SDL_Rect * dstrect); |
3451
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
46 static int SDL_DUMMY_RenderReadPixels(SDL_Renderer * renderer, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
47 const SDL_Rect * rect, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
48 Uint32 format, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
49 void * pixels, int pitch); |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
50 static int SDL_DUMMY_RenderWritePixels(SDL_Renderer * renderer, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
51 const SDL_Rect * rect, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
52 Uint32 format, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
53 const void * pixels, int pitch); |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
54 static void SDL_DUMMY_RenderPresent(SDL_Renderer * renderer); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
55 static void SDL_DUMMY_DestroyRenderer(SDL_Renderer * renderer); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
56 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
57 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
58 SDL_RenderDriver SDL_DUMMY_RenderDriver = { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
59 SDL_DUMMY_CreateRenderer, |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
60 { |
1906
0c49855a7a3e
Changed the name of the dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1895
diff
changeset
|
61 "dummy", |
1965
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
62 (SDL_RENDERER_SINGLEBUFFER | SDL_RENDERER_PRESENTCOPY | |
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
63 SDL_RENDERER_PRESENTFLIP2 | SDL_RENDERER_PRESENTFLIP3 | |
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
64 SDL_RENDERER_PRESENTDISCARD), |
2227
b252359547ed
Exported the software renderer texture functions to make easier to create
Sam Lantinga <slouken@libsdl.org>
parents:
1992
diff
changeset
|
65 } |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
66 }; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
67 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
68 typedef struct |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
69 { |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
70 int current_screen; |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
71 SDL_Surface *screens[3]; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
72 } SDL_DUMMY_RenderData; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
73 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
74 SDL_Renderer * |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
75 SDL_DUMMY_CreateRenderer(SDL_Window * window, Uint32 flags) |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
76 { |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
77 SDL_VideoDisplay *display = window->display; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
78 SDL_DisplayMode *displayMode = &display->current_mode; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
79 SDL_Renderer *renderer; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
80 SDL_DUMMY_RenderData *data; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
81 int i, n; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
82 int bpp; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
83 Uint32 Rmask, Gmask, Bmask, Amask; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
84 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
85 if (!SDL_PixelFormatEnumToMasks |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
86 (displayMode->format, &bpp, &Rmask, &Gmask, &Bmask, &Amask)) { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
87 SDL_SetError("Unknown display format"); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
88 return NULL; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
89 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
90 |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
91 renderer = (SDL_Renderer *) SDL_calloc(1, sizeof(*renderer)); |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
92 if (!renderer) { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
93 SDL_OutOfMemory(); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
94 return NULL; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
95 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
96 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
97 data = (SDL_DUMMY_RenderData *) SDL_malloc(sizeof(*data)); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
98 if (!data) { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
99 SDL_DUMMY_DestroyRenderer(renderer); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
100 SDL_OutOfMemory(); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
101 return NULL; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
102 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
103 SDL_zerop(data); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
104 |
3596
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
105 renderer->RenderDrawPoints = SDL_DUMMY_RenderDrawPoints; |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
106 renderer->RenderDrawLines = SDL_DUMMY_RenderDrawLines; |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
107 renderer->RenderDrawRects = SDL_DUMMY_RenderDrawRects; |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
108 renderer->RenderFillRects = SDL_DUMMY_RenderFillRects; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
109 renderer->RenderCopy = SDL_DUMMY_RenderCopy; |
3451
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
110 renderer->RenderReadPixels = SDL_DUMMY_RenderReadPixels; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
111 renderer->RenderWritePixels = SDL_DUMMY_RenderWritePixels; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
112 renderer->RenderPresent = SDL_DUMMY_RenderPresent; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
113 renderer->DestroyRenderer = SDL_DUMMY_DestroyRenderer; |
2227
b252359547ed
Exported the software renderer texture functions to make easier to create
Sam Lantinga <slouken@libsdl.org>
parents:
1992
diff
changeset
|
114 renderer->info.name = SDL_DUMMY_RenderDriver.info.name; |
b252359547ed
Exported the software renderer texture functions to make easier to create
Sam Lantinga <slouken@libsdl.org>
parents:
1992
diff
changeset
|
115 renderer->info.flags = 0; |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
116 renderer->window = window; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
117 renderer->driverdata = data; |
2227
b252359547ed
Exported the software renderer texture functions to make easier to create
Sam Lantinga <slouken@libsdl.org>
parents:
1992
diff
changeset
|
118 Setup_SoftwareRenderer(renderer); |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
119 |
1965
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
120 if (flags & SDL_RENDERER_PRESENTFLIP2) { |
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
121 renderer->info.flags |= SDL_RENDERER_PRESENTFLIP2; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
122 n = 2; |
1965
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
123 } else if (flags & SDL_RENDERER_PRESENTFLIP3) { |
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
124 renderer->info.flags |= SDL_RENDERER_PRESENTFLIP3; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
125 n = 3; |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
126 } else { |
1965
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
127 renderer->info.flags |= SDL_RENDERER_PRESENTCOPY; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
128 n = 1; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
129 } |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
130 for (i = 0; i < n; ++i) { |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
131 data->screens[i] = |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
132 SDL_CreateRGBSurface(0, window->w, window->h, bpp, Rmask, Gmask, |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
133 Bmask, Amask); |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
134 if (!data->screens[i]) { |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
135 SDL_DUMMY_DestroyRenderer(renderer); |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
136 return NULL; |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
137 } |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
138 SDL_SetSurfacePalette(data->screens[i], display->palette); |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
139 } |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
140 data->current_screen = 0; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
141 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
142 return renderer; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
143 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
144 |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
145 static int |
3596
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
146 SDL_DUMMY_RenderDrawPoints(SDL_Renderer * renderer, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
147 const SDL_Point * points, int count) |
2901 | 148 { |
149 SDL_DUMMY_RenderData *data = | |
150 (SDL_DUMMY_RenderData *) renderer->driverdata; | |
151 SDL_Surface *target = data->screens[data->current_screen]; | |
152 | |
153 if (renderer->blendMode == SDL_BLENDMODE_NONE || | |
154 renderer->blendMode == SDL_BLENDMODE_MASK) { | |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
155 Uint32 color = SDL_MapRGBA(target->format, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
156 renderer->r, renderer->g, renderer->b, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
157 renderer->a); |
2901 | 158 |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
159 return SDL_DrawPoints(target, points, count, color); |
2901 | 160 } else { |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
161 return SDL_BlendPoints(target, points, count, renderer->blendMode, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
162 renderer->r, renderer->g, renderer->b, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
163 renderer->a); |
2901 | 164 } |
165 } | |
166 | |
167 static int | |
3596
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
168 SDL_DUMMY_RenderDrawLines(SDL_Renderer * renderer, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
169 const SDL_Point * points, int count) |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
170 { |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
171 SDL_DUMMY_RenderData *data = |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
172 (SDL_DUMMY_RenderData *) renderer->driverdata; |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
173 SDL_Surface *target = data->screens[data->current_screen]; |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
174 |
2901 | 175 if (renderer->blendMode == SDL_BLENDMODE_NONE || |
176 renderer->blendMode == SDL_BLENDMODE_MASK) { | |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
177 Uint32 color = SDL_MapRGBA(target->format, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
178 renderer->r, renderer->g, renderer->b, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
179 renderer->a); |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
180 |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
181 return SDL_DrawLines(target, points, count, color); |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
182 } else { |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
183 return SDL_BlendLines(target, points, count, renderer->blendMode, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
184 renderer->r, renderer->g, renderer->b, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
185 renderer->a); |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
186 } |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
187 } |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
188 |
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
189 static int |
3596
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
190 SDL_DUMMY_RenderDrawRects(SDL_Renderer * renderer, const SDL_Rect ** rects, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
191 int count) |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
192 { |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
193 SDL_DUMMY_RenderData *data = |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
194 (SDL_DUMMY_RenderData *) renderer->driverdata; |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
195 SDL_Surface *target = data->screens[data->current_screen]; |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
196 |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
197 if (renderer->blendMode == SDL_BLENDMODE_NONE || |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
198 renderer->blendMode == SDL_BLENDMODE_MASK) { |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
199 Uint32 color = SDL_MapRGBA(target->format, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
200 renderer->r, renderer->g, renderer->b, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
201 renderer->a); |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
202 |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
203 return SDL_DrawRects(target, rects, count, color); |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
204 } else { |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
205 return SDL_BlendRects(target, rects, count, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
206 renderer->blendMode, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
207 renderer->r, renderer->g, renderer->b, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
208 renderer->a); |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
209 } |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
210 } |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
211 |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
212 static int |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
213 SDL_DUMMY_RenderFillRects(SDL_Renderer * renderer, const SDL_Rect ** rects, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
214 int count) |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
215 { |
1912
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
216 SDL_DUMMY_RenderData *data = |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
217 (SDL_DUMMY_RenderData *) renderer->driverdata; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
218 SDL_Surface *target = data->screens[data->current_screen]; |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
219 |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
220 if (renderer->blendMode == SDL_BLENDMODE_NONE || |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
221 renderer->blendMode == SDL_BLENDMODE_MASK) { |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
222 Uint32 color = SDL_MapRGBA(target->format, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
223 renderer->r, renderer->g, renderer->b, |
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
224 renderer->a); |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
225 |
3536
0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
Sam Lantinga <slouken@libsdl.org>
parents:
3451
diff
changeset
|
226 return SDL_FillRects(target, rects, count, color); |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
227 } else { |
3596
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
228 return SDL_BlendFillRects(target, rects, count, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
229 renderer->blendMode, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
230 renderer->r, renderer->g, renderer->b, |
f638ded38b8a
Added SDL_RenderClear() as a fast method of clearing the screen to the drawing color.
Sam Lantinga <slouken@libsdl.org>
parents:
3536
diff
changeset
|
231 renderer->a); |
2888
32e8bbba1e94
Added stubs for software implementations of blending fills and line drawing
Sam Lantinga <slouken@libsdl.org>
parents:
2884
diff
changeset
|
232 } |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
233 } |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
234 |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
235 static int |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
236 SDL_DUMMY_RenderCopy(SDL_Renderer * renderer, SDL_Texture * texture, |
1985
8055185ae4ed
Added source color and alpha modulation support.
Sam Lantinga <slouken@libsdl.org>
parents:
1965
diff
changeset
|
237 const SDL_Rect * srcrect, const SDL_Rect * dstrect) |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
238 { |
1912
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
239 SDL_DUMMY_RenderData *data = |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
240 (SDL_DUMMY_RenderData *) renderer->driverdata; |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
241 SDL_Window *window = renderer->window; |
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
242 SDL_VideoDisplay *display = window->display; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
243 |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
244 if (SDL_ISPIXELFORMAT_FOURCC(texture->format)) { |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
245 SDL_Surface *target = data->screens[data->current_screen]; |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
246 void *pixels = |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
247 (Uint8 *) target->pixels + dstrect->y * target->pitch + |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
248 dstrect->x * target->format->BytesPerPixel; |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
249 return SDL_SW_CopyYUVToRGB((SDL_SW_YUVTexture *) texture->driverdata, |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
250 srcrect, display->current_mode.format, |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
251 dstrect->w, dstrect->h, pixels, |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
252 target->pitch); |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
253 } else { |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
254 SDL_Surface *surface = (SDL_Surface *) texture->driverdata; |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
255 SDL_Surface *target = data->screens[data->current_screen]; |
2267
c785543d1843
Okay, still some bugs, but everything builds again...
Sam Lantinga <slouken@libsdl.org>
parents:
2262
diff
changeset
|
256 SDL_Rect real_srcrect = *srcrect; |
c785543d1843
Okay, still some bugs, but everything builds again...
Sam Lantinga <slouken@libsdl.org>
parents:
2262
diff
changeset
|
257 SDL_Rect real_dstrect = *dstrect; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
258 |
2267
c785543d1843
Okay, still some bugs, but everything builds again...
Sam Lantinga <slouken@libsdl.org>
parents:
2262
diff
changeset
|
259 return SDL_LowerBlit(surface, &real_srcrect, target, &real_dstrect); |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
260 } |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
261 } |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
262 |
3451
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
263 static int |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
264 SDL_DUMMY_RenderReadPixels(SDL_Renderer * renderer, const SDL_Rect * rect, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
265 Uint32 format, void * pixels, int pitch) |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
266 { |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
267 SDL_DUMMY_RenderData *data = |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
268 (SDL_DUMMY_RenderData *) renderer->driverdata; |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
269 SDL_Window *window = renderer->window; |
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
270 SDL_VideoDisplay *display = window->display; |
3451
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
271 SDL_Surface *screen = data->screens[data->current_screen]; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
272 Uint32 screen_format = display->current_mode.format; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
273 Uint8 *screen_pixels = (Uint8 *) screen->pixels + |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
274 rect->y * screen->pitch + |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
275 rect->x * screen->format->BytesPerPixel; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
276 int screen_pitch = screen->pitch; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
277 |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
278 return SDL_ConvertPixels(rect->w, rect->h, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
279 screen_format, screen_pixels, screen_pitch, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
280 format, pixels, pitch); |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
281 } |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
282 |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
283 static int |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
284 SDL_DUMMY_RenderWritePixels(SDL_Renderer * renderer, const SDL_Rect * rect, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
285 Uint32 format, const void * pixels, int pitch) |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
286 { |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
287 SDL_DUMMY_RenderData *data = |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
288 (SDL_DUMMY_RenderData *) renderer->driverdata; |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
289 SDL_Window *window = renderer->window; |
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
290 SDL_VideoDisplay *display = window->display; |
3451
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
291 SDL_Surface *screen = data->screens[data->current_screen]; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
292 Uint32 screen_format = display->current_mode.format; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
293 Uint8 *screen_pixels = (Uint8 *) screen->pixels + |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
294 rect->y * screen->pitch + |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
295 rect->x * screen->format->BytesPerPixel; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
296 int screen_pitch = screen->pitch; |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
297 |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
298 return SDL_ConvertPixels(rect->w, rect->h, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
299 format, pixels, pitch, |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
300 screen_format, screen_pixels, screen_pitch); |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
301 } |
a65f7b3a2524
Implemented SDL_RenderReadPixels()/SDL_RenderWritePixels() for the dummy renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
2927
diff
changeset
|
302 |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
303 static void |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
304 SDL_DUMMY_RenderPresent(SDL_Renderer * renderer) |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
305 { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
306 static int frame_number; |
1912
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
307 SDL_DUMMY_RenderData *data = |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
308 (SDL_DUMMY_RenderData *) renderer->driverdata; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
309 |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
310 /* Send the data to the display */ |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
311 if (SDL_getenv("SDL_VIDEO_DUMMY_SAVE_FRAMES")) { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
312 char file[128]; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
313 SDL_snprintf(file, sizeof(file), "SDL_window%d-%8.8d.bmp", |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3596
diff
changeset
|
314 renderer->window->id, ++frame_number); |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
315 SDL_SaveBMP(data->screens[data->current_screen], file); |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
316 } |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
317 |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
318 /* Update the flipping chain, if any */ |
1965
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
319 if (renderer->info.flags & SDL_RENDERER_PRESENTFLIP2) { |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
320 data->current_screen = (data->current_screen + 1) % 2; |
1965
a788656ca29a
SDL constants are all uppercase.
Sam Lantinga <slouken@libsdl.org>
parents:
1912
diff
changeset
|
321 } else if (renderer->info.flags & SDL_RENDERER_PRESENTFLIP3) { |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
322 data->current_screen = (data->current_screen + 1) % 3; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
323 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
324 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
325 |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
326 static void |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
327 SDL_DUMMY_DestroyRenderer(SDL_Renderer * renderer) |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
328 { |
1912
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
329 SDL_DUMMY_RenderData *data = |
8d384b647307
Setting up the OpenGL support
Sam Lantinga <slouken@libsdl.org>
parents:
1908
diff
changeset
|
330 (SDL_DUMMY_RenderData *) renderer->driverdata; |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
331 int i; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
332 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
333 if (data) { |
1908
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
334 for (i = 0; i < SDL_arraysize(data->screens); ++i) { |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
335 if (data->screens[i]) { |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
336 SDL_FreeSurface(data->screens[i]); |
e079dafea2bf
Implemented fully featured dummy renderer
Sam Lantinga <slouken@libsdl.org>
parents:
1907
diff
changeset
|
337 } |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
338 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
339 SDL_free(data); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
340 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
341 SDL_free(renderer); |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
342 } |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
343 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
344 /* vi: set ts=4 sw=4 expandtab: */ |