ruby-glfw 0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. data/README +1 -0
  2. data/README.API +73 -0
  3. data/Rakefile +120 -0
  4. data/examples/boing.rb +519 -0
  5. data/examples/gears.rb +327 -0
  6. data/examples/keytest.rb +117 -0
  7. data/examples/listmodes.rb +20 -0
  8. data/examples/mipmaps.rb +104 -0
  9. data/examples/mipmaps.tga +0 -0
  10. data/examples/particles.rb +837 -0
  11. data/examples/pong3d.rb +741 -0
  12. data/examples/pong3d_field.tga +0 -0
  13. data/examples/pong3d_instr.tga +0 -0
  14. data/examples/pong3d_menu.tga +0 -0
  15. data/examples/pong3d_title.tga +0 -0
  16. data/examples/pong3d_winner1.tga +0 -0
  17. data/examples/pong3d_winner2.tga +0 -0
  18. data/examples/splitview.rb +432 -0
  19. data/examples/triangle.rb +89 -0
  20. data/examples/wave.rb +294 -0
  21. data/ext/glfw/glfw.c +1094 -0
  22. data/ext/glfw/mkrf_conf.rb +70 -0
  23. data/glfw-src/Makefile +220 -0
  24. data/glfw-src/compile.ami +61 -0
  25. data/glfw-src/compile.bat +217 -0
  26. data/glfw-src/compile.sh +607 -0
  27. data/glfw-src/docs/Makefile +57 -0
  28. data/glfw-src/docs/Reference.pdf +0 -0
  29. data/glfw-src/docs/UsersGuide.pdf +0 -0
  30. data/glfw-src/docs/cleanup.bat +22 -0
  31. data/glfw-src/docs/glfwdoc.sty +80 -0
  32. data/glfw-src/docs/glfwrm.tex +3034 -0
  33. data/glfw-src/docs/glfwug.tex +2024 -0
  34. data/glfw-src/docs/readme.txt +80 -0
  35. data/glfw-src/examples/Makefile.amigaos.gcc +70 -0
  36. data/glfw-src/examples/Makefile.amigaos.vbcc +70 -0
  37. data/glfw-src/examples/Makefile.dos.djgpp +71 -0
  38. data/glfw-src/examples/Makefile.macosx.gcc +96 -0
  39. data/glfw-src/examples/Makefile.win32.bcc +75 -0
  40. data/glfw-src/examples/Makefile.win32.cross-mgw +79 -0
  41. data/glfw-src/examples/Makefile.win32.cygwin +79 -0
  42. data/glfw-src/examples/Makefile.win32.lcc +74 -0
  43. data/glfw-src/examples/Makefile.win32.mgw +75 -0
  44. data/glfw-src/examples/Makefile.win32.msvc +74 -0
  45. data/glfw-src/examples/Makefile.win32.ow +74 -0
  46. data/glfw-src/examples/Makefile.win32.pellesc +74 -0
  47. data/glfw-src/examples/Makefile.x11.in +54 -0
  48. data/glfw-src/examples/boing.c +606 -0
  49. data/glfw-src/examples/bundle.sh +46 -0
  50. data/glfw-src/examples/gears.c +382 -0
  51. data/glfw-src/examples/keytest.c +264 -0
  52. data/glfw-src/examples/listmodes.c +48 -0
  53. data/glfw-src/examples/mipmaps.c +126 -0
  54. data/glfw-src/examples/mipmaps.tga +0 -0
  55. data/glfw-src/examples/mtbench.c +301 -0
  56. data/glfw-src/examples/mthello.c +48 -0
  57. data/glfw-src/examples/particles.c +1148 -0
  58. data/glfw-src/examples/pong3d.c +839 -0
  59. data/glfw-src/examples/pong3d_field.tga +0 -0
  60. data/glfw-src/examples/pong3d_instr.tga +0 -0
  61. data/glfw-src/examples/pong3d_menu.tga +0 -0
  62. data/glfw-src/examples/pong3d_title.tga +0 -0
  63. data/glfw-src/examples/pong3d_winner1.tga +0 -0
  64. data/glfw-src/examples/pong3d_winner2.tga +0 -0
  65. data/glfw-src/examples/splitview.c +506 -0
  66. data/glfw-src/examples/triangle.c +108 -0
  67. data/glfw-src/examples/wave.c +397 -0
  68. data/glfw-src/images/opengl.gif +0 -0
  69. data/glfw-src/images/osicert.gif +0 -0
  70. data/glfw-src/include/GL/glfw.h +486 -0
  71. data/glfw-src/lib/amigaos/Makefile.amigaos.gcc +128 -0
  72. data/glfw-src/lib/amigaos/Makefile.amigaos.vbcc +128 -0
  73. data/glfw-src/lib/amigaos/SDI_compiler.h +94 -0
  74. data/glfw-src/lib/amigaos/amigaos_enable.c +51 -0
  75. data/glfw-src/lib/amigaos/amigaos_fullscreen.c +319 -0
  76. data/glfw-src/lib/amigaos/amigaos_glext.c +61 -0
  77. data/glfw-src/lib/amigaos/amigaos_init.c +284 -0
  78. data/glfw-src/lib/amigaos/amigaos_joystick.c +359 -0
  79. data/glfw-src/lib/amigaos/amigaos_thread.c +494 -0
  80. data/glfw-src/lib/amigaos/amigaos_time.c +206 -0
  81. data/glfw-src/lib/amigaos/amigaos_window.c +830 -0
  82. data/glfw-src/lib/amigaos/platform.h +337 -0
  83. data/glfw-src/lib/dos/Makefile.dos.djgpp +146 -0
  84. data/glfw-src/lib/dos/dos_enable.c +51 -0
  85. data/glfw-src/lib/dos/dos_events.c +173 -0
  86. data/glfw-src/lib/dos/dos_fullscreen.c +101 -0
  87. data/glfw-src/lib/dos/dos_glext.c +59 -0
  88. data/glfw-src/lib/dos/dos_init.c +105 -0
  89. data/glfw-src/lib/dos/dos_irq.s +246 -0
  90. data/glfw-src/lib/dos/dos_joystick.c +94 -0
  91. data/glfw-src/lib/dos/dos_keyboard.c +694 -0
  92. data/glfw-src/lib/dos/dos_mouse.c +337 -0
  93. data/glfw-src/lib/dos/dos_thread.c +267 -0
  94. data/glfw-src/lib/dos/dos_time.c +309 -0
  95. data/glfw-src/lib/dos/dos_window.c +563 -0
  96. data/glfw-src/lib/dos/platform.h +341 -0
  97. data/glfw-src/lib/enable.c +295 -0
  98. data/glfw-src/lib/fullscreen.c +95 -0
  99. data/glfw-src/lib/glext.c +201 -0
  100. data/glfw-src/lib/image.c +629 -0
  101. data/glfw-src/lib/init.c +108 -0
  102. data/glfw-src/lib/input.c +280 -0
  103. data/glfw-src/lib/internal.h +210 -0
  104. data/glfw-src/lib/joystick.c +101 -0
  105. data/glfw-src/lib/macosx/Makefile.macosx.gcc +172 -0
  106. data/glfw-src/lib/macosx/Makefile.macosx.gcc.universal +166 -0
  107. data/glfw-src/lib/macosx/libglfw.pc.in +11 -0
  108. data/glfw-src/lib/macosx/macosx_enable.c +42 -0
  109. data/glfw-src/lib/macosx/macosx_fullscreen.c +126 -0
  110. data/glfw-src/lib/macosx/macosx_glext.c +52 -0
  111. data/glfw-src/lib/macosx/macosx_init.c +194 -0
  112. data/glfw-src/lib/macosx/macosx_joystick.c +50 -0
  113. data/glfw-src/lib/macosx/macosx_thread.c +414 -0
  114. data/glfw-src/lib/macosx/macosx_time.c +112 -0
  115. data/glfw-src/lib/macosx/macosx_window.c +1279 -0
  116. data/glfw-src/lib/macosx/platform.h +349 -0
  117. data/glfw-src/lib/stream.c +194 -0
  118. data/glfw-src/lib/tga.c +405 -0
  119. data/glfw-src/lib/thread.c +340 -0
  120. data/glfw-src/lib/time.c +83 -0
  121. data/glfw-src/lib/win32/Makefile.win32.bcc +265 -0
  122. data/glfw-src/lib/win32/Makefile.win32.cross-mgw +274 -0
  123. data/glfw-src/lib/win32/Makefile.win32.cygwin +279 -0
  124. data/glfw-src/lib/win32/Makefile.win32.lcc +246 -0
  125. data/glfw-src/lib/win32/Makefile.win32.mgw +243 -0
  126. data/glfw-src/lib/win32/Makefile.win32.msvc +242 -0
  127. data/glfw-src/lib/win32/Makefile.win32.ow +242 -0
  128. data/glfw-src/lib/win32/Makefile.win32.pellesc +242 -0
  129. data/glfw-src/lib/win32/glfwdll.def +67 -0
  130. data/glfw-src/lib/win32/glfwdll_mgw1.def +67 -0
  131. data/glfw-src/lib/win32/glfwdll_mgw2.def +67 -0
  132. data/glfw-src/lib/win32/glfwdll_pellesc.def +65 -0
  133. data/glfw-src/lib/win32/libglfw.pc.in +11 -0
  134. data/glfw-src/lib/win32/platform.h +474 -0
  135. data/glfw-src/lib/win32/win32_dllmain.c +60 -0
  136. data/glfw-src/lib/win32/win32_enable.c +155 -0
  137. data/glfw-src/lib/win32/win32_fullscreen.c +317 -0
  138. data/glfw-src/lib/win32/win32_glext.c +85 -0
  139. data/glfw-src/lib/win32/win32_init.c +356 -0
  140. data/glfw-src/lib/win32/win32_joystick.c +234 -0
  141. data/glfw-src/lib/win32/win32_thread.c +511 -0
  142. data/glfw-src/lib/win32/win32_time.c +146 -0
  143. data/glfw-src/lib/win32/win32_window.c +1714 -0
  144. data/glfw-src/lib/window.c +727 -0
  145. data/glfw-src/lib/x11/Makefile.x11.in +243 -0
  146. data/glfw-src/lib/x11/platform.h +415 -0
  147. data/glfw-src/lib/x11/x11_enable.c +51 -0
  148. data/glfw-src/lib/x11/x11_fullscreen.c +524 -0
  149. data/glfw-src/lib/x11/x11_glext.c +69 -0
  150. data/glfw-src/lib/x11/x11_init.c +275 -0
  151. data/glfw-src/lib/x11/x11_joystick.c +371 -0
  152. data/glfw-src/lib/x11/x11_keysym2unicode.c +902 -0
  153. data/glfw-src/lib/x11/x11_thread.c +507 -0
  154. data/glfw-src/lib/x11/x11_time.c +154 -0
  155. data/glfw-src/lib/x11/x11_window.c +1746 -0
  156. data/glfw-src/license.txt +21 -0
  157. data/glfw-src/readme.html +927 -0
  158. data/glfw-src/support/d/examples/Makefile +59 -0
  159. data/glfw-src/support/d/examples/boing.d +610 -0
  160. data/glfw-src/support/d/examples/gears.d +379 -0
  161. data/glfw-src/support/d/examples/keytest.d +272 -0
  162. data/glfw-src/support/d/examples/listmodes.d +48 -0
  163. data/glfw-src/support/d/examples/mipmaps.d +126 -0
  164. data/glfw-src/support/d/examples/mtbench.d +304 -0
  165. data/glfw-src/support/d/examples/mthello.d +54 -0
  166. data/glfw-src/support/d/examples/particles.d +1150 -0
  167. data/glfw-src/support/d/examples/pong3d.d +840 -0
  168. data/glfw-src/support/d/examples/splitview.d +486 -0
  169. data/glfw-src/support/d/examples/triangle.d +108 -0
  170. data/glfw-src/support/d/examples/wave.d +400 -0
  171. data/glfw-src/support/d/imports/gl.d +4539 -0
  172. data/glfw-src/support/d/imports/glfw.d +349 -0
  173. data/glfw-src/support/d/imports/glu.d +328 -0
  174. data/glfw-src/support/d/lib/glfwdll.def +64 -0
  175. data/glfw-src/support/d/lib/glu32.def +56 -0
  176. data/glfw-src/support/d/lib/makefile +12 -0
  177. data/glfw-src/support/d/lib/opengl32.def +372 -0
  178. data/glfw-src/support/d/readme.html +83 -0
  179. data/glfw-src/support/delphi/examples/Triangle.dpr +105 -0
  180. data/glfw-src/support/delphi/lib/glfw.pas +437 -0
  181. data/glfw-src/support/delphi/readme.html +97 -0
  182. data/glfw-src/support/lua/examples/gears.lua +383 -0
  183. data/glfw-src/support/lua/examples/test1.lua +68 -0
  184. data/glfw-src/support/lua/readme.html +128 -0
  185. data/glfw-src/support/lua/src/luaglfw.c +1179 -0
  186. data/glfw-src/support/lua/src/luaglfw.h +48 -0
  187. data/glfw-src/support/lua/src/runlua.c +82 -0
  188. data/glfw-src/support/masm/examples/fpc.mac +47 -0
  189. data/glfw-src/support/masm/examples/makeit.bat +66 -0
  190. data/glfw-src/support/masm/examples/triangle.asm +232 -0
  191. data/glfw-src/support/masm/include/glfw.inc +326 -0
  192. data/glfw-src/support/masm/include/glu32.inc +55 -0
  193. data/glfw-src/support/masm/include/opengl32.inc +372 -0
  194. data/glfw-src/support/masm/lib/glfwdll.lib +0 -0
  195. data/glfw-src/support/masm/readme.html +170 -0
  196. data/glfw-src/support/msvc80/GLFW.sln +26 -0
  197. data/glfw-src/support/msvc80/GLFW.vcproj +257 -0
  198. data/glfw-src/support/msvc80/GLFWDLL.vcproj +287 -0
  199. data/glfw-src/support/visualbasic/bindings/glfw.bas +320 -0
  200. data/glfw-src/support/visualbasic/bindings/glu32.bas +284 -0
  201. data/glfw-src/support/visualbasic/bindings/opengl32.bas +999 -0
  202. data/glfw-src/support/visualbasic/examples/Triangle.bas +101 -0
  203. data/glfw-src/support/visualbasic/readme.html +164 -0
  204. data/website/index.html +84 -0
  205. data/website/style.css +110 -0
  206. metadata +301 -0
@@ -0,0 +1,51 @@
1
+ //========================================================================
2
+ // GLFW - An OpenGL framework
3
+ // File: dos_enable.c
4
+ // Platform: DOS
5
+ // API version: 2.6
6
+ // WWW: http://glfw.sourceforge.net
7
+ //------------------------------------------------------------------------
8
+ // Copyright (c) 2002-2006 Camilla Berglund
9
+ //
10
+ // This software is provided 'as-is', without any express or implied
11
+ // warranty. In no event will the authors be held liable for any damages
12
+ // arising from the use of this software.
13
+ //
14
+ // Permission is granted to anyone to use this software for any purpose,
15
+ // including commercial applications, and to alter it and redistribute it
16
+ // freely, subject to the following restrictions:
17
+ //
18
+ // 1. The origin of this software must not be misrepresented; you must not
19
+ // claim that you wrote the original software. If you use this software
20
+ // in a product, an acknowledgment in the product documentation would
21
+ // be appreciated but is not required.
22
+ //
23
+ // 2. Altered source versions must be plainly marked as such, and must not
24
+ // be misrepresented as being the original software.
25
+ //
26
+ // 3. This notice may not be removed or altered from any source
27
+ // distribution.
28
+ //
29
+ //========================================================================
30
+
31
+ #include "internal.h"
32
+
33
+
34
+ //************************************************************************
35
+ //**** Platform implementation functions ****
36
+ //************************************************************************
37
+
38
+ //========================================================================
39
+ // _glfwPlatformEnableSystemKeys() - Enable system keys
40
+ // _glfwPlatformDisableSystemKeys() - Disable system keys
41
+ //========================================================================
42
+
43
+ void _glfwPlatformEnableSystemKeys( void )
44
+ {
45
+ // Not supported under DOS (yet)
46
+ }
47
+
48
+ void _glfwPlatformDisableSystemKeys( void )
49
+ {
50
+ // Not supported under DOS (yet)
51
+ }
@@ -0,0 +1,173 @@
1
+ //========================================================================
2
+ // GLFW - An OpenGL framework
3
+ // File: dos_events.c
4
+ // Platform: DOS
5
+ // API version: 2.6
6
+ // WWW: http://glfw.sourceforge.net
7
+ //------------------------------------------------------------------------
8
+ // Copyright (c) 2002-2006 Camilla Berglund
9
+ //
10
+ // This software is provided 'as-is', without any express or implied
11
+ // warranty. In no event will the authors be held liable for any damages
12
+ // arising from the use of this software.
13
+ //
14
+ // Permission is granted to anyone to use this software for any purpose,
15
+ // including commercial applications, and to alter it and redistribute it
16
+ // freely, subject to the following restrictions:
17
+ //
18
+ // 1. The origin of this software must not be misrepresented; you must not
19
+ // claim that you wrote the original software. If you use this software
20
+ // in a product, an acknowledgment in the product documentation would
21
+ // be appreciated but is not required.
22
+ //
23
+ // 2. Altered source versions must be plainly marked as such, and must not
24
+ // be misrepresented as being the original software.
25
+ //
26
+ // 3. This notice may not be removed or altered from any source
27
+ // distribution.
28
+ //
29
+ //========================================================================
30
+
31
+ #include "internal.h"
32
+
33
+
34
+ //========================================================================
35
+ // Global variables
36
+ //========================================================================
37
+
38
+ // Event buffer
39
+ #define _GLFW_EVENT_BUFFER_SIZE 1024
40
+
41
+ static volatile struct {
42
+ volatile int Start, End;
43
+ volatile _GLFWdosevent *Event;
44
+ } _glfwEventBuffer;
45
+
46
+ static int _glfwEventsInitialized = 0;
47
+
48
+
49
+
50
+ //************************************************************************
51
+ //**** GLFW internal functions ****
52
+ //************************************************************************
53
+
54
+ //========================================================================
55
+ // _glfwWaitNextEvent() - Wait for an event to appear in the event FIFO
56
+ // NOTE: Must not be called from an interrupt routine
57
+ //========================================================================
58
+
59
+ void _glfwWaitNextEvent( void )
60
+ {
61
+ int noevent = 1;
62
+
63
+ while( noevent )
64
+ {
65
+ DISABLE();
66
+ noevent = ( _glfwEventBuffer.Start == _glfwEventBuffer.End );
67
+ ENABLE();
68
+ // Wait for an interrupt to happen?...
69
+ }
70
+ }
71
+
72
+
73
+ //========================================================================
74
+ // _glfwGetNextEvent() - Get an event from the event FIFO
75
+ // NOTE: Must not be called from an interrupt routine
76
+ //========================================================================
77
+
78
+ int _glfwGetNextEvent( _GLFWdosevent *event )
79
+ {
80
+ DISABLE();
81
+
82
+ if( _glfwEventBuffer.Start == _glfwEventBuffer.End )
83
+ {
84
+ ENABLE();
85
+ return 0;
86
+ }
87
+
88
+ *event = _glfwEventBuffer.Event[ _glfwEventBuffer.Start ++ ];
89
+ if( _glfwEventBuffer.Start >= _GLFW_EVENT_BUFFER_SIZE )
90
+ {
91
+ _glfwEventBuffer.Start = 0;
92
+ }
93
+
94
+ ENABLE();
95
+
96
+ return 1;
97
+ }
98
+
99
+
100
+ //========================================================================
101
+ // _glfwPostDOSEvent() - Put an event onto the event FIFO
102
+ // NOTE: Must only be called from an interrupt routine
103
+ //========================================================================
104
+
105
+ void _glfwPostDOSEvent( _GLFWdosevent *event )
106
+ {
107
+ // Add event
108
+ _glfwEventBuffer.Event[ _glfwEventBuffer.End ++ ] = *event;
109
+
110
+ // End of FIFO buffer?
111
+ if( _glfwEventBuffer.End >= _GLFW_EVENT_BUFFER_SIZE )
112
+ _glfwEventBuffer.End = 0;
113
+
114
+ // If the buffer is full, drop the oldest event
115
+ if( _glfwEventBuffer.End == _glfwEventBuffer.Start)
116
+ {
117
+ _glfwEventBuffer.Start ++;
118
+ if( _glfwEventBuffer.Start >= _GLFW_EVENT_BUFFER_SIZE )
119
+ _glfwEventBuffer.Start = 0;
120
+ }
121
+ } ENDOFUNC(_glfwPostDOSEvent)
122
+
123
+
124
+ //========================================================================
125
+ // _glfwInitEvents() - Initialize event management functions and the FIFO
126
+ //========================================================================
127
+
128
+ int _glfwInitEvents( void )
129
+ {
130
+ int fifosize;
131
+
132
+ // Allocate memory for the event FIFO buffer
133
+ fifosize = _GLFW_EVENT_BUFFER_SIZE * sizeof(_GLFWdosevent);
134
+ _glfwEventBuffer.Event = malloc( fifosize );
135
+ if( !_glfwEventBuffer.Event )
136
+ {
137
+ return 0;
138
+ }
139
+
140
+ // Lock data & functions
141
+ LOCKBUFF( _glfwEventBuffer.Event, fifosize );
142
+ LOCKDATA( _glfwEventBuffer );
143
+ LOCKFUNC( _glfwPostDOSEvent );
144
+
145
+ // Initialize event FIFO
146
+ _glfwEventBuffer.Start = _glfwEventBuffer.End = 0;
147
+
148
+ _glfwEventsInitialized = 1;
149
+
150
+ return 1;
151
+ }
152
+
153
+
154
+ //========================================================================
155
+ // _glfwTerminateEvents() - Terminate event management
156
+ //========================================================================
157
+
158
+ void _glfwTerminateEvents( void )
159
+ {
160
+ if( !_glfwEventsInitialized )
161
+ {
162
+ return;
163
+ }
164
+
165
+ _glfwEventsInitialized = 0;
166
+
167
+ // Free memory for the event FIFO buffer
168
+ if( _glfwEventBuffer.Event )
169
+ {
170
+ free( (void *) _glfwEventBuffer.Event );
171
+ _glfwEventBuffer.Event = NULL;
172
+ }
173
+ }
@@ -0,0 +1,101 @@
1
+ //========================================================================
2
+ // GLFW - An OpenGL framework
3
+ // File: dos_fullscreen.c
4
+ // Platform: DOS
5
+ // API version: 2.6
6
+ // WWW: http://glfw.sourceforge.net
7
+ //------------------------------------------------------------------------
8
+ // Copyright (c) 2002-2006 Camilla Berglund
9
+ //
10
+ // This software is provided 'as-is', without any express or implied
11
+ // warranty. In no event will the authors be held liable for any damages
12
+ // arising from the use of this software.
13
+ //
14
+ // Permission is granted to anyone to use this software for any purpose,
15
+ // including commercial applications, and to alter it and redistribute it
16
+ // freely, subject to the following restrictions:
17
+ //
18
+ // 1. The origin of this software must not be misrepresented; you must not
19
+ // claim that you wrote the original software. If you use this software
20
+ // in a product, an acknowledgment in the product documentation would
21
+ // be appreciated but is not required.
22
+ //
23
+ // 2. Altered source versions must be plainly marked as such, and must not
24
+ // be misrepresented as being the original software.
25
+ //
26
+ // 3. This notice may not be removed or altered from any source
27
+ // distribution.
28
+ //
29
+ //========================================================================
30
+
31
+ #include "internal.h"
32
+
33
+
34
+ //************************************************************************
35
+ //**** GLFW internal functions ****
36
+ //************************************************************************
37
+
38
+ //========================================================================
39
+ // _glfwBPP2RGB() - Convert BPP to RGB bits (based on "best guess")
40
+ //========================================================================
41
+
42
+ static void _glfwBPP2RGB( int bpp, int *r, int *g, int *b )
43
+ {
44
+ int delta;
45
+ int bpp2;
46
+
47
+ // Special case: bpp = 32
48
+ if( bpp == 32 ) bpp = 24;
49
+
50
+ // Convert "bits per pixel" to red, green & blue sizes
51
+ *r = *g = *b = bpp / 3;
52
+ delta = bpp - (*r * 3);
53
+ if( delta >= 1 )
54
+ {
55
+ *g = *g + 1;
56
+ }
57
+ if( delta == 2 )
58
+ {
59
+ *r = *r + 1;
60
+ }
61
+ }
62
+
63
+
64
+
65
+
66
+ //************************************************************************
67
+ //**** Platform implementation functions ****
68
+ //************************************************************************
69
+
70
+ //========================================================================
71
+ // _glfwPlatformGetVideoModes() - List available video modes
72
+ //========================================================================
73
+
74
+ int _glfwPlatformGetVideoModes( GLFWvidmode *list, int maxcount )
75
+ {
76
+ if( maxcount <= 0 ) return 0;
77
+
78
+ // Dummy...
79
+ list[0].Width = 640;
80
+ list[0].Height = 480;
81
+ list[0].RedBits = 5;
82
+ list[0].GreenBits = 6;
83
+ list[0].BlueBits = 5;
84
+
85
+ return 1;
86
+ }
87
+
88
+
89
+ //========================================================================
90
+ // _glfwPlatformGetDesktopMode() - Get the desktop video mode
91
+ //========================================================================
92
+
93
+ void _glfwPlatformGetDesktopMode( GLFWvidmode *mode )
94
+ {
95
+ // Dummy...
96
+ mode->Width = 640;
97
+ mode->Height = 480;
98
+ mode->RedBits = 5;
99
+ mode->GreenBits = 6;
100
+ mode->BlueBits = 5;
101
+ }
@@ -0,0 +1,59 @@
1
+ //========================================================================
2
+ // GLFW - An OpenGL framework
3
+ // File: dos_glext.c
4
+ // Platform: DOS
5
+ // API version: 2.6
6
+ // WWW: http://glfw.sourceforge.net
7
+ //------------------------------------------------------------------------
8
+ // Copyright (c) 2002-2006 Camilla Berglund
9
+ //
10
+ // This software is provided 'as-is', without any express or implied
11
+ // warranty. In no event will the authors be held liable for any damages
12
+ // arising from the use of this software.
13
+ //
14
+ // Permission is granted to anyone to use this software for any purpose,
15
+ // including commercial applications, and to alter it and redistribute it
16
+ // freely, subject to the following restrictions:
17
+ //
18
+ // 1. The origin of this software must not be misrepresented; you must not
19
+ // claim that you wrote the original software. If you use this software
20
+ // in a product, an acknowledgment in the product documentation would
21
+ // be appreciated but is not required.
22
+ //
23
+ // 2. Altered source versions must be plainly marked as such, and must not
24
+ // be misrepresented as being the original software.
25
+ //
26
+ // 3. This notice may not be removed or altered from any source
27
+ // distribution.
28
+ //
29
+ //========================================================================
30
+
31
+ #include "internal.h"
32
+
33
+
34
+ //************************************************************************
35
+ //**** Platform implementation functions ****
36
+ //************************************************************************
37
+
38
+ //========================================================================
39
+ // _glfwPlatformExtensionSupported() - Check if an OpenGL extension is
40
+ // available at runtime
41
+ //========================================================================
42
+
43
+ int _glfwPlatformExtensionSupported( const char *extension )
44
+ {
45
+ // TODO
46
+ return GL_FALSE;
47
+ }
48
+
49
+
50
+ //========================================================================
51
+ // _glfwPlatformGetProcAddress() - Get the function pointer to an OpenGL
52
+ // function
53
+ //========================================================================
54
+
55
+ void * _glfwPlatformGetProcAddress( const char *procname )
56
+ {
57
+ // TODO
58
+ return NULL;
59
+ }
@@ -0,0 +1,105 @@
1
+ //========================================================================
2
+ // GLFW - An OpenGL framework
3
+ // File: dos_init.c
4
+ // Platform: DOS
5
+ // API version: 2.6
6
+ // WWW: http://glfw.sourceforge.net
7
+ //------------------------------------------------------------------------
8
+ // Copyright (c) 2002-2006 Camilla Berglund
9
+ //
10
+ // This software is provided 'as-is', without any express or implied
11
+ // warranty. In no event will the authors be held liable for any damages
12
+ // arising from the use of this software.
13
+ //
14
+ // Permission is granted to anyone to use this software for any purpose,
15
+ // including commercial applications, and to alter it and redistribute it
16
+ // freely, subject to the following restrictions:
17
+ //
18
+ // 1. The origin of this software must not be misrepresented; you must not
19
+ // claim that you wrote the original software. If you use this software
20
+ // in a product, an acknowledgment in the product documentation would
21
+ // be appreciated but is not required.
22
+ //
23
+ // 2. Altered source versions must be plainly marked as such, and must not
24
+ // be misrepresented as being the original software.
25
+ //
26
+ // 3. This notice may not be removed or altered from any source
27
+ // distribution.
28
+ //
29
+ //========================================================================
30
+
31
+ #include "internal.h"
32
+
33
+
34
+
35
+ //************************************************************************
36
+ //**** GLFW internal functions ****
37
+ //************************************************************************
38
+
39
+ //========================================================================
40
+ // _glfwTerminate_atexit() - Terminate GLFW when exiting application
41
+ //========================================================================
42
+
43
+ void _glfwTerminate_atexit( void )
44
+ {
45
+ glfwTerminate();
46
+ }
47
+
48
+
49
+
50
+ //************************************************************************
51
+ //**** Platform implementation functions ****
52
+ //************************************************************************
53
+
54
+ //========================================================================
55
+ // _glfwPlatformInit() - Initialize various GLFW state
56
+ //========================================================================
57
+
58
+ int _glfwPlatformInit( void )
59
+ {
60
+ // Initialize thread package
61
+ if( !_glfwInitThreads() )
62
+ {
63
+ return GL_FALSE;
64
+ }
65
+
66
+ // Start the timer
67
+ if( !_glfwInitTimer() )
68
+ {
69
+ _glfwTerminateThreads();
70
+ return GL_FALSE;
71
+ }
72
+
73
+ // Initialize joysticks
74
+ _glfwInitJoysticks();
75
+
76
+ // Install atexit() routine
77
+ atexit( _glfwTerminate_atexit );
78
+
79
+ return GL_TRUE;
80
+ }
81
+
82
+
83
+ //========================================================================
84
+ // _glfwPlatformTerminate() - Close window and kill all threads
85
+ //========================================================================
86
+
87
+ int _glfwPlatformTerminate( void )
88
+ {
89
+ // Only the main thread is allowed to do this...
90
+ // TODO
91
+
92
+ // Close OpenGL window
93
+ glfwCloseWindow();
94
+
95
+ // Terminate joysticks
96
+ _glfwTerminateJoysticks();
97
+
98
+ // Kill timer
99
+ _glfwTerminateTimer();
100
+
101
+ // Kill thread package
102
+ _glfwTerminateThreads();
103
+
104
+ return GL_TRUE;
105
+ }