Changeset 2962 for trunk/src/opengl/mesa
- Timestamp:
- Mar 1, 2000, 7:50:02 PM (26 years ago)
- Location:
- trunk/src/opengl/mesa
- Files:
-
- 20 added
- 1 deleted
- 70 edited
-
3dnow.c (modified) (2 diffs)
-
3dnow_norm_raw.asm (added)
-
3dnow_xform_masked1.asm (added)
-
3dnow_xform_masked2.asm (added)
-
3dnow_xform_masked3.asm (added)
-
3dnow_xform_masked4.asm (added)
-
3dnow_xform_raw1.asm (added)
-
3dnow_xform_raw2.asm (added)
-
3dnow_xform_raw3.asm (added)
-
3dnow_xform_raw4.asm (added)
-
GL/wmesa.h (modified) (3 diffs)
-
OPENGL32.DEF (modified) (1 diff)
-
accum.c (modified) (6 diffs)
-
alpha.c (modified) (3 diffs)
-
alphabuf.c (modified) (2 diffs)
-
api2.c (modified) (8 diffs)
-
apiext.c (modified) (15 diffs)
-
blend.c (modified) (8 diffs)
-
clip.c (modified) (2 diffs)
-
clip_tmp.h (modified) (5 diffs)
-
colors.h (modified) (9 diffs)
-
common_x86.c (modified) (4 diffs)
-
config.h (modified) (2 diffs)
-
context.c (modified) (39 diffs)
-
context.h (modified) (2 diffs)
-
copypix.c (modified) (3 diffs)
-
ddsample.c (modified) (3 diffs)
-
depth.c (modified) (2 diffs)
-
diveos2.h (added)
-
dlist.c (modified) (3 diffs)
-
drawpix.c (modified) (3 diffs)
-
enable.c (modified) (3 diffs)
-
eval.c (modified) (2 diffs)
-
extensions.c (modified) (2 diffs)
-
feedback.c (modified) (4 diffs)
-
fog.c (modified) (2 diffs)
-
get.c (modified) (4 diffs)
-
glmisc.c (modified) (12 diffs)
-
hash.c (modified) (7 diffs)
-
image.c (modified) (3 diffs)
-
indirect (deleted)
-
initterm.cpp (modified) (4 diffs)
-
internal.c (added)
-
internal.h (added)
-
light.c (modified) (3 diffs)
-
lines.c (modified) (3 diffs)
-
logic.c (modified) (3 diffs)
-
makefile (modified) (5 diffs)
-
masking.c (modified) (3 diffs)
-
matrix.c (modified) (3 diffs)
-
mesadive.c (added)
-
mesadive.h (added)
-
mmx.h (modified) (2 diffs)
-
mmx_blend.asm (added)
-
opengl32.rc (added)
-
osmesa.c (added)
-
pipeline.c (modified) (3 diffs)
-
pixel.c (modified) (2 diffs)
-
pointers.c (modified) (3 diffs)
-
points.c (modified) (3 diffs)
-
polygon.c (modified) (3 diffs)
-
rastpos.c (modified) (3 diffs)
-
readpix.c (modified) (4 diffs)
-
rect.c (modified) (2 diffs)
-
scissor.c (modified) (2 diffs)
-
stages.c (modified) (3 diffs)
-
stencil.c (modified) (2 diffs)
-
teximage.c (modified) (3 diffs)
-
texobj.c (modified) (3 diffs)
-
texstate.c (modified) (3 diffs)
-
texture.c (modified) (3 diffs)
-
triangle.c (modified) (4 diffs)
-
types.h (modified) (2 diffs)
-
varray.c (modified) (3 diffs)
-
vbcull.c (modified) (2 diffs)
-
vbfill.c (modified) (3 diffs)
-
vbrender.c (modified) (3 diffs)
-
vbxform.c (modified) (3 diffs)
-
vertex.asm (added)
-
vertex_3dnow.asm (added)
-
vertices.c (modified) (4 diffs)
-
vertices.h (modified) (2 diffs)
-
wgl.c (modified) (4 diffs)
-
winpos.c (modified) (2 diffs)
-
wmesa.c (modified) (49 diffs)
-
wmesadef.h (modified) (9 diffs)
-
x86.c (modified) (5 diffs)
-
x86a.asm (added)
-
xform.c (modified) (2 diffs)
-
xform.h (modified) (3 diffs)
-
xform_tmp.h (modified) (43 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/opengl/mesa/3dnow.c
r2938 r2962 1 /* $Id: 3dnow.c,v 1. 1 2000-02-29 00:49:56 sandervlExp $ */1 /* $Id: 3dnow.c,v 1.2 2000-03-01 18:49:20 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #include <math.h> 39 39 40 #include "types.h" 40 41 #include "context.h" 41 #include "types.h"42 42 #include "xform.h" 43 43 #include "vertices.h" -
trunk/src/opengl/mesa/GL/wmesa.h
r2938 r2962 1 /* $Id: wmesa.h,v 1. 1 2000-02-29 00:43:33 sandervlExp $ */1 /* $Id: wmesa.h,v 1.2 2000-03-01 18:49:42 jeroen Exp $ */ 2 2 3 3 /* … … 25 25 /* 26 26 * $Log: wmesa.h,v $ 27 * Revision 1.1 2000-02-29 00:43:33 sandervl 27 * Revision 1.2 2000-03-01 18:49:42 jeroen 28 * *** empty log message *** 29 * 30 * Revision 1.1 2000/02/29 00:43:33 sandervl 28 31 * created 29 32 * … … 112 115 * Return: a WMesa_context or NULL if error. 113 116 */ 114 extern WMesaContext W MesaCreateContext(HWND hWnd,HPALETTE* pPal,117 extern WMesaContext WIN32API WMesaCreateContext(HWND hWnd,HPALETTE* pPal, 115 118 GLboolean rgb_flag,GLboolean db_flag); 116 119 -
trunk/src/opengl/mesa/OPENGL32.DEF
r2938 r2962 16 16 DescribePixelFormat 17 17 SwapBuffers 18 ; OSMesaCreateContext=_OSMesaCreateContext@8 19 ; OSMesaDestroyContext=_OSMesaDestroyContext@4 20 ; OSMesaGetCurrentContext=_OSMesaGetCurrentContext@0 21 ; OSMesaGetDepthBuffer=_OSMesaGetDepthBuffer 22 ; OSMesaGetIntegerv=_OSMesaGetIntegerv 23 ; OSMesaMakeCurrent=_OSMesaMakeCurrent@20 24 ; OSMesaPixelStore=_OSMesaPixelStore 25 ; WMesaCreateContext=_WMesaCreateContext 26 ; WMesaDestroyContext=_WMesaDestroyContext 27 ; WMesaMakeCurrent=_WMesaMakeCurrent 28 ; WMesaPaletteChange=_WMesaPaletteChange 29 ; WMesaSwapBuffers=_WMesaSwapBuffers 30 glAccum=_glAccum@8 @8 31 glAlphaFunc=_glAlphaFunc@8 @9 32 glAreTexturesResident=_glAreTexturesResident@12 @10 33 ; glAreTexturesResidentEXT=_glAreTexturesResidentEXT 34 glArrayElement=_glArrayElement@4 @11 35 ; glArrayElementEXT=_glArrayElementEXT 36 glBegin=_glBegin@4 @12 37 ; glBindTexture=_glBindTexture@8 @13 38 ; glBindTextureEXT=_glBindTextureEXT 39 glBitmap=_glBitmap@28 @14 40 ; glBlendColorEXT=_glBlendColorEXT 41 ; glBlendEquationEXT=_glBlendEquationEXT 42 glBlendFunc=_glBlendFunc@8 @15 43 glCallList=_glCallList@4 @16 44 glCallLists=_glCallLists@12 @17 45 glClear=_glClear@4 @18 46 glClearAccum=_glClearAccum@16 @19 47 glClearColor=_glClearColor@16 @20 48 glClearDepth=_glClearDepth@8 @21 49 glClearIndex=_glClearIndex@4 @22 50 glClearStencil=_glClearStencil@4 @23 51 glClipPlane=_glClipPlane@8 @24 52 glColor3b=_glColor3b@12 @25 53 glColor3bv=_glColor3bv@4 @26 54 glColor3d=_glColor3d@24 @27 55 glColor3dv=_glColor3dv@4 @28 56 glColor3f=_glColor3f@12 @29 57 glColor3fv=_glColor3fv@4 @30 58 glColor3i=_glColor3i@12 @31 59 glColor3iv=_glColor3iv@4 @32 60 glColor3s=_glColor3s@12 @33 61 glColor3sv=_glColor3sv@4 @34 62 glColor3ub=_glColor3ub@12 @35 63 glColor3ubv=_glColor3ubv@4 @36 64 glColor3ui=_glColor3ui@12 @37 65 glColor3uiv=_glColor3uiv@4 @38 66 glColor3us=_glColor3us@12 @39 67 glColor3usv=_glColor3usv@4 @40 68 glColor4b=_glColor4b@16 @41 69 glColor4bv=_glColor4bv@4 @42 70 glColor4d=_glColor4d@32 @43 71 glColor4dv=_glColor4dv@4 @44 72 glColor4f=_glColor4f@16 @45 73 glColor4fv=_glColor4fv@4 @46 74 glColor4i=_glColor4i@16 @47 75 glColor4iv=_glColor4iv@4 @48 76 glColor4s=_glColor4s@16 @49 77 glColor4sv=_glColor4sv@4 @50 78 glColor4ub=_glColor4ub@16 @51 79 glColor4ubv=_glColor4ubv@4 @52 80 glColor4ui=_glColor4ui@16 @53 81 glColor4uiv=_glColor4uiv@4 @54 82 glColor4us=_glColor4us@16 @55 83 glColor4usv=_glColor4usv@4 @56 84 glColorMask=_glColorMask@16 @57 85 glColorMaterial=_glColorMaterial@8 @58 86 glColorPointer=_glColorPointer@16 @59 87 ; glColorPointerEXT=_glColorPointerEXT 88 ; glColorSubTableEXT=_glColorSubTableEXT 89 ; glColorTableEXT=_glColorTableEXT 90 glCopyPixels=_glCopyPixels@20 @60 91 glCopyTexImage1D=_glCopyTexImage1D@28 @61 92 glCopyTexImage2D=_glCopyTexImage2D@32 @62 93 glCopyTexSubImage1D=_glCopyTexSubImage1D@24 @63 94 glCopyTexSubImage2D=_glCopyTexSubImage2D@32 @64 95 ; glCopyTexSubImage3DEXT=_glCopyTexSubImage3DEXT 96 glCullFace=_glCullFace@4 @65 97 glDeleteLists=_glDeleteLists@8 @67 98 ; glDebugEntry @66 99 glDeleteTextures=_glDeleteTextures@8 @68 100 ; glDeleteTexturesEXT=_glDeleteTexturesEXT 101 glDepthFunc=_glDepthFunc@4 @69 102 glDepthMask=_glDepthMask@4 @70 103 glDepthRange=_glDepthRange@16 @71 104 glDisable=_glDisable@4 @72 105 glDisableClientState=_glDisableClientState@4 @73 106 glDrawArrays=_glDrawArrays@12 @74 107 ; glDrawArraysEXT=_glDrawArraysEXT 108 glDrawBuffer=_glDrawBuffer@4 @75 109 glDrawElements=_glDrawElements@16 @76 110 glDrawPixels=_glDrawPixels@20 @77 111 glEdgeFlag=_glEdgeFlag@4 @78 112 glEdgeFlagPointer=_glEdgeFlagPointer@8 @79 113 ; glEdgeFlagPointerEXT=_glEdgeFlagPointerEXT 114 glEdgeFlagv=_glEdgeFlagv@4 @80 115 glEnable=_glEnable@4 @81 116 glEnableClientState=_glEnableClientState@4 @82 117 glEnd=_glEnd@0 @83 118 glEndList=_glEndList@0 @84 119 glEvalCoord1d=_glEvalCoord1d@8 @85 120 glEvalCoord1dv=_glEvalCoord1dv@4 @86 121 glEvalCoord1f=_glEvalCoord1f@4 @87 122 glEvalCoord1fv=_glEvalCoord1fv@4 @88 123 glEvalCoord2d=_glEvalCoord2d@16 @89 124 glEvalCoord2dv=_glEvalCoord2dv@4 @90 125 glEvalCoord2f=_glEvalCoord2f@8 @91 126 glEvalCoord2fv=_glEvalCoord2fv@4 @92 127 glEvalMesh1=_glEvalMesh1@12 @93 128 glEvalMesh2=_glEvalMesh2@20 @94 129 glEvalPoint1=_glEvalPoint1@4 @95 130 glEvalPoint2=_glEvalPoint2@8 @96 131 glFeedbackBuffer=_glFeedbackBuffer@12 @97 132 glFinish=_glFinish@0 @98 133 glFlush=_glFlush@0 @99 134 glFogf=_glFogf@8 @100 135 glFogfv=_glFogfv@8 @101 136 glFogi=_glFogi@8 @102 137 glFogiv=_glFogiv@8 @103 138 glFrontFace=_glFrontFace@4 @104 139 glFrustum=_glFrustum@48 @105 140 glGenLists=_glGenLists@4 @106 141 glGenTextures=_glGenTextures@8 @107 142 ; glGenTexturesEXT=_glGenTexturesEXT 143 glGetBooleanv=_glGetBooleanv@8 @108 144 glGetClipPlane=_glGetClipPlane@8 @109 145 ; glGetColorTableEXT=_glGetColorTableEXT 146 ; glGetColorTableParameterfvEXT=_glGetColorTableParameterfvEXT 147 ; glGetColorTableParameterivEXT=_glGetColorTableParameterivEXT 148 glGetDoublev=_glGetDoublev@8 @110 149 glGetError=_glGetError@0 @111 150 glGetFloatv=_glGetFloatv@8 @112 151 glGetIntegerv=_glGetIntegerv@8 @113 152 glGetLightfv=_glGetLightfv@12 @114 153 glGetLightiv=_glGetLightiv@12 @115 154 glGetMapdv=_glGetMapdv@12 @116 155 glGetMapfv=_glGetMapfv@12 @117 156 glGetMapiv=_glGetMapiv@12 @118 157 glGetMaterialfv=_glGetMaterialfv@12 @119 158 glGetMaterialiv=_glGetMaterialiv@12 @120 159 glGetPixelMapfv=_glGetPixelMapfv@8 @121 160 glGetPixelMapuiv=_glGetPixelMapuiv@8 @122 161 glGetPixelMapusv=_glGetPixelMapusv@8 @123 162 glGetPointerv=_glGetPointerv@8 @124 163 ; glGetPointervEXT=_glGetPointervEXT 164 glGetPolygonStipple=_glGetPolygonStipple@4 @125 165 glGetString=_glGetString@4 @126 166 glGetTexEnvfv=_glGetTexEnvfv@12 @127 167 glGetTexEnviv=_glGetTexEnviv@12 @128 168 glGetTexGendv=_glGetTexGendv@12 @129 169 glGetTexGenfv=_glGetTexGenfv@12 @130 170 glGetTexGeniv=_glGetTexGeniv@12 @131 171 glGetTexImage=_glGetTexImage@20 @132 172 glGetTexLevelParameterfv=_glGetTexLevelParameterfv@16 @133 173 glGetTexLevelParameteriv=_glGetTexLevelParameteriv@16 @134 174 glGetTexParameterfv=_glGetTexParameterfv@12 @135 175 glGetTexParameteriv=_glGetTexParameteriv@12 @136 176 glHint=_glHint@8 @137 177 glIndexMask=_glIndexMask@4 @138 178 glIndexPointer=_glIndexPointer@12 @139 179 ; glIndexPointerEXT=_glIndexPointerEXT 180 glIndexd=_glIndexd@8 @140 181 glIndexdv=_glIndexdv@4 @141 182 glIndexf=_glIndexf@4 @142 183 glIndexfv=_glIndexfv@4 @143 184 glIndexi=_glIndexi@4 @144 185 glIndexiv=_glIndexiv@4 @145 186 glIndexs=_glIndexs@4 @146 187 glIndexsv=_glIndexsv@4 @147 188 glIndexub=_glIndexub@4 @148 189 glIndexubv=_glIndexubv@4 @149 190 glInitNames=_glInitNames@0 @150 191 glInterleavedArrays=_glInterleavedArrays@12 @151 192 glIsEnabled=_glIsEnabled@4 @152 193 glIsList=_glIsList@4 @153 194 glIsTexture=_glIsTexture@4 @154 195 ; glIsTextureEXT=_glIsTextureEXT 196 glLightModelf=_glLightModelf@8 @155 197 glLightModelfv=_glLightModelfv@8 @156 198 glLightModeli=_glLightModeli@8 @157 199 glLightModeliv=_glLightModeliv@8 @158 200 glLightf=_glLightf@12 @159 201 glLightfv=_glLightfv@12 @160 202 glLighti=_glLighti@12 @161 203 glLightiv=_glLightiv@12 @162 204 glLineStipple=_glLineStipple@8 @163 205 glLineWidth=_glLineWidth@4 @164 206 glListBase=_glListBase@4 @165 207 glLoadIdentity=_glLoadIdentity@0 @166 208 glLoadMatrixd=_glLoadMatrixd@4 @167 209 glLoadMatrixf=_glLoadMatrixf@4 @168 210 glLoadName=_glLoadName@4 @169 211 glLogicOp=_glLogicOp@4 @170 212 glMap1d=_glMap1d@32 @171 213 glMap1f=_glMap1f@24 @172 214 glMap2d=_glMap2d@56 @173 215 glMap2f=_glMap2f@40 @174 216 glMapGrid1d=_glMapGrid1d@20 @175 217 glMapGrid1f=_glMapGrid1f@12 @176 218 glMapGrid2d=_glMapGrid2d@40 @177 219 glMapGrid2f=_glMapGrid2f@24 @178 220 glMaterialf=_glMaterialf@12 @179 221 glMaterialfv=_glMaterialfv@12 @180 222 glMateriali=_glMateriali@12 @181 223 glMaterialiv=_glMaterialiv@12 @182 224 glMatrixMode=_glMatrixMode@4 @183 225 glMultMatrixd=_glMultMatrixd@4 @184 226 glMultMatrixf=_glMultMatrixf@4 @185 227 glNewList=_glNewList@8 @186 228 glNormal3b=_glNormal3b@12 @187 229 glNormal3bv=_glNormal3bv@4 @188 230 glNormal3d=_glNormal3d@24 @189 231 glNormal3dv=_glNormal3dv@4 @190 232 glNormal3f=_glNormal3f@12 @191 233 glNormal3fv=_glNormal3fv@4 @192 234 glNormal3i=_glNormal3i@12 @193 235 glNormal3iv=_glNormal3iv@4 @194 236 glNormal3s=_glNormal3s@12 @195 237 glNormal3sv=_glNormal3sv@4 @196 238 glNormalPointer=_glNormalPointer@12 @197 239 ; glNormalPointerEXT=_glNormalPointerEXT 240 glOrtho=_glOrtho@48 @198 241 glPassThrough=_glPassThrough@4 @199 242 glPixelMapfv=_glPixelMapfv@12 @200 243 glPixelMapuiv=_glPixelMapuiv@12 @201 244 glPixelMapusv=_glPixelMapusv@12 @202 245 glPixelStoref=_glPixelStoref@8 @203 246 glPixelStorei=_glPixelStorei@8 @204 247 glPixelTransferf=_glPixelTransferf@8 @205 248 glPixelTransferi=_glPixelTransferi@8 @206 249 glPixelZoom=_glPixelZoom@8 @207 250 ; glPointParameterfEXT=_glPointParameterfEXT 251 ; glPointParameterfvEXT=_glPointParameterfvEXT 252 glPointSize=_glPointSize@4 @208 253 glPolygonMode=_glPolygonMode@8 @209 254 glPolygonOffset=_glPolygonOffset@8 @210 255 ; glPolygonOffsetEXT=_glPolygonOffsetEXT 256 glPolygonStipple=_glPolygonStipple@4 @211 257 glPopAttrib=_glPopAttrib@0 @212 258 glPopClientAttrib=_glPopClientAttrib@0 @213 259 glPopMatrix=_glPopMatrix@0 @214 260 glPopName=_glPopName@0 @215 261 glPrioritizeTextures=_glPrioritizeTextures@12 @216 262 ; glPrioritizeTexturesEXT=_glPrioritizeTexturesEXT 263 glPushAttrib=_glPushAttrib@4 @217 264 glPushClientAttrib=_glPushClientAttrib@4 @218 265 glPushMatrix=_glPushMatrix@0 @219 266 glPushName=_glPushName@4 @220 267 glRasterPos2d=_glRasterPos2d@16 @221 268 glRasterPos2dv=_glRasterPos2dv@4 @222 269 glRasterPos2f=_glRasterPos2f@8 @223 270 glRasterPos2fv=_glRasterPos2fv@4 @224 271 glRasterPos2i=_glRasterPos2i@8 @225 272 glRasterPos2iv=_glRasterPos2iv@4 @226 273 glRasterPos2s=_glRasterPos2s@8 @227 274 glRasterPos2sv=_glRasterPos2sv@4 @228 275 glRasterPos3d=_glRasterPos3d@24 @229 276 glRasterPos3dv=_glRasterPos3dv@4 @230 277 glRasterPos3f=_glRasterPos3f@12 @231 278 glRasterPos3fv=_glRasterPos3fv@4 @232 279 glRasterPos3i=_glRasterPos3i@12 @233 280 glRasterPos3iv=_glRasterPos3iv@4 @234 281 glRasterPos3s=_glRasterPos3s@12 @235 282 glRasterPos3sv=_glRasterPos3sv@4 @236 283 glRasterPos4d=_glRasterPos4d@32 @237 284 glRasterPos4dv=_glRasterPos4dv@4 @238 285 glRasterPos4f=_glRasterPos4f@16 @239 286 glRasterPos4fv=_glRasterPos4fv@4 @240 287 glRasterPos4i=_glRasterPos4i@16 @241 288 glRasterPos4iv=_glRasterPos4iv@4 @242 289 glRasterPos4s=_glRasterPos4s@16 @243 290 glRasterPos4sv=_glRasterPos4sv@4 @244 291 glReadBuffer=_glReadBuffer@4 @245 292 glReadPixels=_glReadPixels@28 @246 293 glRectd=_glRectd@32 @247 294 glRectdv=_glRectdv@8 @248 295 glRectf=_glRectf@16 @249 296 glRectfv=_glRectfv@8 @250 297 glRecti=_glRecti@16 @251 298 glRectiv=_glRectiv@8 @252 299 glRects=_glRects@16 @253 300 glRectsv=_glRectsv@8 @254 301 glRenderMode=_glRenderMode@4 @255 302 ; glResizeBuffersMESA=_glResizeBuffersMESA 303 glRotated=_glRotated@32 @256 304 glRotatef=_glRotatef@16 @257 305 glScaled=_glScaled@24 @258 306 glScalef=_glScalef@12 @259 307 glScissor=_glScissor@16 @260 308 glSelectBuffer=_glSelectBuffer@8 @261 309 glShadeModel=_glShadeModel@4 @262 310 glStencilFunc=_glStencilFunc@12 @263 311 glStencilMask=_glStencilMask@4 @264 312 glStencilOp=_glStencilOp@12 @265 313 glTexCoord1d=_glTexCoord1d@8 @266 314 glTexCoord1dv=_glTexCoord1dv@4 @267 315 glTexCoord1f=_glTexCoord1f@4 @268 316 glTexCoord1fv=_glTexCoord1fv@4 @269 317 glTexCoord1i=_glTexCoord1i@4 @270 318 glTexCoord1iv=_glTexCoord1iv@4 @271 319 glTexCoord1s=_glTexCoord1s@4 @272 320 glTexCoord1sv=_glTexCoord1sv@4 @273 321 glTexCoord2d=_glTexCoord2d@16 @274 322 glTexCoord2dv=_glTexCoord2dv@4 @275 323 glTexCoord2f=_glTexCoord2f@8 @276 324 glTexCoord2fv=_glTexCoord2fv@4 @277 325 glTexCoord2i=_glTexCoord2i@8 @278 326 glTexCoord2iv=_glTexCoord2iv@4 @279 327 glTexCoord2s=_glTexCoord2s@8 @280 328 glTexCoord2sv=_glTexCoord2sv@4 @281 329 glTexCoord3d=_glTexCoord3d@24 @282 330 glTexCoord3dv=_glTexCoord3dv@4 @283 331 glTexCoord3f=_glTexCoord3f@12 @284 332 glTexCoord3fv=_glTexCoord3fv@4 @285 333 glTexCoord3i=_glTexCoord3i@12 @286 334 glTexCoord3iv=_glTexCoord3iv@4 @287 335 glTexCoord3s=_glTexCoord3s@12 @288 336 glTexCoord3sv=_glTexCoord3sv@4 @289 337 glTexCoord4d=_glTexCoord4d@32 @290 338 glTexCoord4dv=_glTexCoord4dv@4 @291 339 glTexCoord4f=_glTexCoord4f@16 @292 340 glTexCoord4fv=_glTexCoord4fv@4 @293 341 glTexCoord4i=_glTexCoord4i@16 @294 342 glTexCoord4iv=_glTexCoord4iv@4 @295 343 glTexCoord4s=_glTexCoord4s@16 @296 344 glTexCoord4sv=_glTexCoord4sv@4 @297 345 glTexCoordPointer=_glTexCoordPointer@16 @298 346 ; glTexCoordPointerEXT=_glTexCoordPointerEXT 347 glTexEnvf=_glTexEnvf@12 @299 348 glTexEnvfv=_glTexEnvfv@12 @300 349 glTexEnvi=_glTexEnvi@12 @301 350 glTexEnviv=_glTexEnviv@12 @302 351 glTexGend=_glTexGend@16 @303 352 glTexGendv=_glTexGendv@12 @304 353 glTexGenf=_glTexGenf@12 @305 354 glTexGenfv=_glTexGenfv@12 @306 355 glTexGeni=_glTexGeni@12 @307 356 glTexGeniv=_glTexGeniv@12 @308 357 glTexImage1D=_glTexImage1D@32 @309 358 glTexImage2D=_glTexImage2D@36 @310 359 glTexImage3D=_glTexImage3D@40 @400 360 ; glTexImage3DEXT=_glTexImage3DEXT 361 glTexParameterf=_glTexParameterf@12 @311 362 glTexParameterfv=_glTexParameterfv@12 @312 363 glTexParameteri=_glTexParameteri@12 @313 364 glTexParameteriv=_glTexParameteriv@12 @314 365 glTexSubImage1D=_glTexSubImage1D@28 @315 366 glTexSubImage2D=_glTexSubImage2D@36 @316 367 ; glTexSubImage3DEXT=_glTexSubImage3DEXT 368 glTranslated=_glTranslated@24 @317 369 glTranslatef=_glTranslatef@12 @318 370 glVertex2d=_glVertex2d@16 @319 371 glVertex2dv=_glVertex2dv@4 @320 372 glVertex2f=_glVertex2f@8 @321 373 glVertex2fv=_glVertex2fv@4 @322 374 glVertex2i=_glVertex2i@8 @323 375 glVertex2iv=_glVertex2iv@4 @324 376 glVertex2s=_glVertex2s@8 @325 377 glVertex2sv=_glVertex2sv@4 @326 378 glVertex3d=_glVertex3d@24 @327 379 glVertex3dv=_glVertex3dv@4 @328 380 glVertex3f=_glVertex3f@12 @329 381 glVertex3fv=_glVertex3fv@4 @330 382 glVertex3i=_glVertex3i@12 @331 383 glVertex3iv=_glVertex3iv@4 @332 384 glVertex3s=_glVertex3s@12 @333 385 glVertex3sv=_glVertex3sv@4 @334 386 glVertex4d=_glVertex4d@32 @335 387 glVertex4dv=_glVertex4dv@4 @336 388 glVertex4f=_glVertex4f@16 @337 389 glVertex4fv=_glVertex4fv@4 @338 390 glVertex4i=_glVertex4i@16 @339 391 glVertex4iv=_glVertex4iv@4 @340 392 glVertex4s=_glVertex4s@16 @341 393 glVertex4sv=_glVertex4sv@4 @342 394 ; glVertexPointer=_glVertexPointer@20 @343 395 ; glVertexPointerEXT=_glVertexPointerEXT 396 glViewport=_glViewport@16 @344 397 ; glWindowPos2dMESA=_glWindowPos2dMESA 398 ; glWindowPos2dvMESA=_glWindowPos2dvMESA 399 ; glWindowPos2fMESA=_glWindowPos2fMESA 400 ; glWindowPos2fvMESA=_glWindowPos2fvMESA 401 ; glWindowPos2iMESA=_glWindowPos2iMESA 402 ; glWindowPos2ivMESA=_glWindowPos2ivMESA 403 ; glWindowPos2sMESA=_glWindowPos2sMESA 404 ; glWindowPos2svMESA=_glWindowPos2svMESA 405 ; glWindowPos3dMESA=_glWindowPos3dMESA 406 ; glWindowPos3dvMESA=_glWindowPos3dvMESA 407 ; glWindowPos3fMESA=_glWindowPos3fMESA 408 ; glWindowPos3fvMESA=_glWindowPos3fvMESA 409 ; glWindowPos3iMESA=_glWindowPos3iMESA 410 ; glWindowPos3ivMESA=_glWindowPos3ivMESA 411 ; glWindowPos3sMESA=_glWindowPos3sMESA 412 ; glWindowPos3svMESA=_glWindowPos3svMESA 413 ; glWindowPos4dMESA=_glWindowPos4dMESA 414 ; glWindowPos4dvMESA=_glWindowPos4dvMESA 415 ; glWindowPos4fMESA=_glWindowPos4fMESA 416 ; glWindowPos4fvMESA=_glWindowPos4fvMESA 417 ; glWindowPos4iMESA=_glWindowPos4iMESA 418 ; glWindowPos4ivMESA=_glWindowPos4ivMESA 419 ; glWindowPos4sMESA=_glWindowPos4sMESA 420 ; glWindowPos4svMESA=_glWindowPos4svMESA 421 wglChoosePixelFormat=_wglChoosePixelFormat@8 @345 422 wglCopyContext=_wglCopyContext@12 @346 423 wglCreateContext=_wglCreateContext@4 @347 424 wglCreateLayerContext=_wglCreateLayerContext@8 @348 425 wglDeleteContext=_wglDeleteContext@4 @349 426 wglDescribeLayerPlane=_wglDescribeLayerPlane@20 @350 427 wglDescribePixelFormat=_wglDescribePixelFormat@16 @351 428 wglGetCurrentContext=_wglGetCurrentContext@0 @352 429 wglGetCurrentDC=_wglGetCurrentDC@0 @353 430 ; wglGetDefaultProcAddress @354 431 wglGetLayerPaletteEntries=_wglGetLayerPaletteEntries@20 @355 432 wglGetPixelFormat=_wglGetPixelFormat@4 @356 433 wglGetProcAddress=_wglGetProcAddress@4 @357 434 wglMakeCurrent=_wglMakeCurrent@8 @358 435 wglRealizeLayerPalette=_wglRealizeLayerPalette@12 @359 436 wglSetLayerPaletteEntries=_wglSetLayerPaletteEntries@20 @360 437 wglSetPixelFormat=_wglSetPixelFormat@12 @361 438 wglShareLists=_wglShareLists@8 @362 439 wglSwapBuffers=_wglSwapBuffers@4 @363 440 wglSwapLayerBuffers=_wglSwapLayerBuffers@8 @364 441 wglUseFontBitmapsA=_wglUseFontBitmapsA@16 @365 442 wglUseFontBitmapsW=_wglUseFontBitmapsW@16 @366 443 wglUseFontOutlinesA=_wglUseFontOutlinesA@32 @367 444 wglUseFontOutlinesW=_wglUseFontOutlinesW@32 @368 445 18 19 _InternalOGLQueryBB @1000 20 _InternalOGLQueryFB @1001 21 22 OSMesaCreateContext=_OSMesaCreateContext@8 @401 23 OSMesaDestroyContext=_OSMesaDestroyContext@4 @402 24 OSMesaGetCurrentContext=_OSMesaGetCurrentContext@0 @403 25 OSMesaGetDepthBuffer=_OSMesaGetDepthBuffer@20 @404 26 OSMesaGetIntegerv=_OSMesaGetIntegerv@8 @405 27 OSMesaMakeCurrent=_OSMesaMakeCurrent@20 @406 28 OSMesaPixelStore=_OSMesaPixelStore@8 @407 29 WMesaCreateContext=_WMesaCreateContext@16 @408 30 WMesaDestroyContext=_WMesaDestroyContext@0 @409 31 WMesaMakeCurrent=_WMesaMakeCurrent@4 @410 32 WMesaPaletteChange=_WMesaPaletteChange@4 @411 33 WMesaSwapBuffers=_WMesaSwapBuffers@0 @412 34 glAccum=_glAccum@8 @8 35 glAlphaFunc=_glAlphaFunc@8 @9 36 glAreTexturesResident=_glAreTexturesResident@12 @10 37 glAreTexturesResidentEXT=_glAreTexturesResidentEXT@12 @413 38 glArrayElement=_glArrayElement@4 @11 39 glArrayElementEXT=_glArrayElementEXT@4 @414 40 glBegin=_glBegin@4 @12 41 glBindTexture=_glBindTexture@8 @13 42 glBindTextureEXT=_glBindTextureEXT@8 @415 43 glBitmap=_glBitmap@28 @14 44 glBlendColorEXT=_glBlendColorEXT@16 @416 45 glBlendEquationEXT=_glBlendEquationEXT@4 @417 46 glBlendFunc=_glBlendFunc@8 @15 47 glCallList=_glCallList@4 @16 48 glCallLists=_glCallLists@12 @17 49 glClear=_glClear@4 @18 50 glClearAccum=_glClearAccum@16 @19 51 glClearColor=_glClearColor@16 @20 52 glClearDepth=_glClearDepth@8 @21 53 glClearIndex=_glClearIndex@4 @22 54 glClearStencil=_glClearStencil@4 @23 55 glClipPlane=_glClipPlane@8 @24 56 glColor3b=_glColor3b@12 @25 57 glColor3bv=_glColor3bv@4 @26 58 glColor3d=_glColor3d@24 @27 59 glColor3dv=_glColor3dv@4 @28 60 glColor3f=_glColor3f@12 @29 61 glColor3fv=_glColor3fv@4 @30 62 glColor3i=_glColor3i@12 @31 63 glColor3iv=_glColor3iv@4 @32 64 glColor3s=_glColor3s@12 @33 65 glColor3sv=_glColor3sv@4 @34 66 glColor3ub=_glColor3ub@12 @35 67 glColor3ubv=_glColor3ubv@4 @36 68 glColor3ui=_glColor3ui@12 @37 69 glColor3uiv=_glColor3uiv@4 @38 70 glColor3us=_glColor3us@12 @39 71 glColor3usv=_glColor3usv@4 @40 72 glColor4b=_glColor4b@16 @41 73 glColor4bv=_glColor4bv@4 @42 74 glColor4d=_glColor4d@32 @43 75 glColor4dv=_glColor4dv@4 @44 76 glColor4f=_glColor4f@16 @45 77 glColor4fv=_glColor4fv@4 @46 78 glColor4i=_glColor4i@16 @47 79 glColor4iv=_glColor4iv@4 @48 80 glColor4s=_glColor4s@16 @49 81 glColor4sv=_glColor4sv@4 @50 82 glColor4ub=_glColor4ub@16 @51 83 glColor4ubv=_glColor4ubv@4 @52 84 glColor4ui=_glColor4ui@16 @53 85 glColor4uiv=_glColor4uiv@4 @54 86 glColor4us=_glColor4us@16 @55 87 glColor4usv=_glColor4usv@4 @56 88 glColorMask=_glColorMask@16 @57 89 glColorMaterial=_glColorMaterial@8 @58 90 glColorPointer=_glColorPointer@16 @59 91 glColorPointerEXT=_glColorPointerEXT@20 @418 92 glColorSubTableEXT=_glColorSubTableEXT@24 @419 93 glColorTableEXT=_glColorTableEXT@24 @420 94 glCopyPixels=_glCopyPixels@20 @60 95 glCopyTexImage1D=_glCopyTexImage1D@28 @61 96 glCopyTexImage2D=_glCopyTexImage2D@32 @62 97 glCopyTexSubImage1D=_glCopyTexSubImage1D@24 @63 98 glCopyTexSubImage2D=_glCopyTexSubImage2D@32 @64 99 glCopyTexSubImage3DEXT=_glCopyTexSubImage3DEXT@36 @421 100 glCullFace=_glCullFace@4 @65 101 glDeleteLists=_glDeleteLists@8 @67 102 ; glDebugEntry @66 103 glDeleteTextures=_glDeleteTextures@8 @68 104 glDeleteTexturesEXT=_glDeleteTexturesEXT@8 @422 105 glDepthFunc=_glDepthFunc@4 @69 106 glDepthMask=_glDepthMask@4 @70 107 glDepthRange=_glDepthRange@16 @71 108 glDisable=_glDisable@4 @72 109 glDisableClientState=_glDisableClientState@4 @73 110 glDrawArrays=_glDrawArrays@12 @74 111 glDrawArraysEXT=_glDrawArraysEXT@12 @423 112 glDrawBuffer=_glDrawBuffer@4 @75 113 glDrawElements=_glDrawElements@16 @76 114 glDrawPixels=_glDrawPixels@20 @77 115 glEdgeFlag=_glEdgeFlag@4 @78 116 glEdgeFlagPointer=_glEdgeFlagPointer@8 @79 117 glEdgeFlagPointerEXT=_glEdgeFlagPointerEXT@12 @424 118 glEdgeFlagv=_glEdgeFlagv@4 @80 119 glEnable=_glEnable@4 @81 120 glEnableClientState=_glEnableClientState@4 @82 121 glEnd=_glEnd@0 @83 122 glEndList=_glEndList@0 @84 123 glEvalCoord1d=_glEvalCoord1d@8 @85 124 glEvalCoord1dv=_glEvalCoord1dv@4 @86 125 glEvalCoord1f=_glEvalCoord1f@4 @87 126 glEvalCoord1fv=_glEvalCoord1fv@4 @88 127 glEvalCoord2d=_glEvalCoord2d@16 @89 128 glEvalCoord2dv=_glEvalCoord2dv@4 @90 129 glEvalCoord2f=_glEvalCoord2f@8 @91 130 glEvalCoord2fv=_glEvalCoord2fv@4 @92 131 glEvalMesh1=_glEvalMesh1@12 @93 132 glEvalMesh2=_glEvalMesh2@20 @94 133 glEvalPoint1=_glEvalPoint1@4 @95 134 glEvalPoint2=_glEvalPoint2@8 @96 135 glFeedbackBuffer=_glFeedbackBuffer@12 @97 136 glFinish=_glFinish@0 @98 137 glFlush=_glFlush@0 @99 138 glFogf=_glFogf@8 @100 139 glFogfv=_glFogfv@8 @101 140 glFogi=_glFogi@8 @102 141 glFogiv=_glFogiv@8 @103 142 glFrontFace=_glFrontFace@4 @104 143 glFrustum=_glFrustum@48 @105 144 glGenLists=_glGenLists@4 @106 145 glGenTextures=_glGenTextures@8 @107 146 glGenTexturesEXT=_glGenTexturesEXT@8 @425 147 glGetBooleanv=_glGetBooleanv@8 @108 148 glGetClipPlane=_glGetClipPlane@8 @109 149 glGetColorTableEXT=_glGetColorTableEXT@16 @426 150 glGetColorTableParameterfvEXT=_glGetColorTableParameterfvEXT@12 @427 151 glGetColorTableParameterivEXT=_glGetColorTableParameterivEXT@12 @428 152 glGetDoublev=_glGetDoublev@8 @110 153 glGetError=_glGetError@0 @111 154 glGetFloatv=_glGetFloatv@8 @112 155 glGetIntegerv=_glGetIntegerv@8 @113 156 glGetLightfv=_glGetLightfv@12 @114 157 glGetLightiv=_glGetLightiv@12 @115 158 glGetMapdv=_glGetMapdv@12 @116 159 glGetMapfv=_glGetMapfv@12 @117 160 glGetMapiv=_glGetMapiv@12 @118 161 glGetMaterialfv=_glGetMaterialfv@12 @119 162 glGetMaterialiv=_glGetMaterialiv@12 @120 163 glGetPixelMapfv=_glGetPixelMapfv@8 @121 164 glGetPixelMapuiv=_glGetPixelMapuiv@8 @122 165 glGetPixelMapusv=_glGetPixelMapusv@8 @123 166 glGetPointerv=_glGetPointerv@8 @124 167 glGetPointervEXT=_glGetPointervEXT@8 @429 168 glGetPolygonStipple=_glGetPolygonStipple@4 @125 169 glGetString=_glGetString@4 @126 170 glGetTexEnvfv=_glGetTexEnvfv@12 @127 171 glGetTexEnviv=_glGetTexEnviv@12 @128 172 glGetTexGendv=_glGetTexGendv@12 @129 173 glGetTexGenfv=_glGetTexGenfv@12 @130 174 glGetTexGeniv=_glGetTexGeniv@12 @131 175 glGetTexImage=_glGetTexImage@20 @132 176 glGetTexLevelParameterfv=_glGetTexLevelParameterfv@16 @133 177 glGetTexLevelParameteriv=_glGetTexLevelParameteriv@16 @134 178 glGetTexParameterfv=_glGetTexParameterfv@12 @135 179 glGetTexParameteriv=_glGetTexParameteriv@12 @136 180 glHint=_glHint@8 @137 181 glIndexMask=_glIndexMask@4 @138 182 glIndexPointer=_glIndexPointer@12 @139 183 glIndexPointerEXT=_glIndexPointerEXT@16 @430 184 glIndexd=_glIndexd@8 @140 185 glIndexdv=_glIndexdv@4 @141 186 glIndexf=_glIndexf@4 @142 187 glIndexfv=_glIndexfv@4 @143 188 glIndexi=_glIndexi@4 @144 189 glIndexiv=_glIndexiv@4 @145 190 glIndexs=_glIndexs@4 @146 191 glIndexsv=_glIndexsv@4 @147 192 glIndexub=_glIndexub@4 @148 193 glIndexubv=_glIndexubv@4 @149 194 glInitNames=_glInitNames@0 @150 195 glInterleavedArrays=_glInterleavedArrays@12 @151 196 glIsEnabled=_glIsEnabled@4 @152 197 glIsList=_glIsList@4 @153 198 glIsTexture=_glIsTexture@4 @154 199 glIsTextureEXT=_glIsTextureEXT@4 @431 200 glLightModelf=_glLightModelf@8 @155 201 glLightModelfv=_glLightModelfv@8 @156 202 glLightModeli=_glLightModeli@8 @157 203 glLightModeliv=_glLightModeliv@8 @158 204 glLightf=_glLightf@12 @159 205 glLightfv=_glLightfv@12 @160 206 glLighti=_glLighti@12 @161 207 glLightiv=_glLightiv@12 @162 208 glLineStipple=_glLineStipple@8 @163 209 glLineWidth=_glLineWidth@4 @164 210 glListBase=_glListBase@4 @165 211 glLoadIdentity=_glLoadIdentity@0 @166 212 glLoadMatrixd=_glLoadMatrixd@4 @167 213 glLoadMatrixf=_glLoadMatrixf@4 @168 214 glLoadName=_glLoadName@4 @169 215 glLogicOp=_glLogicOp@4 @170 216 glMap1d=_glMap1d@32 @171 217 glMap1f=_glMap1f@24 @172 218 glMap2d=_glMap2d@56 @173 219 glMap2f=_glMap2f@40 @174 220 glMapGrid1d=_glMapGrid1d@20 @175 221 glMapGrid1f=_glMapGrid1f@12 @176 222 glMapGrid2d=_glMapGrid2d@40 @177 223 glMapGrid2f=_glMapGrid2f@24 @178 224 glMaterialf=_glMaterialf@12 @179 225 glMaterialfv=_glMaterialfv@12 @180 226 glMateriali=_glMateriali@12 @181 227 glMaterialiv=_glMaterialiv@12 @182 228 glMatrixMode=_glMatrixMode@4 @183 229 glMultMatrixd=_glMultMatrixd@4 @184 230 glMultMatrixf=_glMultMatrixf@4 @185 231 glNewList=_glNewList@8 @186 232 glNormal3b=_glNormal3b@12 @187 233 glNormal3bv=_glNormal3bv@4 @188 234 glNormal3d=_glNormal3d@24 @189 235 glNormal3dv=_glNormal3dv@4 @190 236 glNormal3f=_glNormal3f@12 @191 237 glNormal3fv=_glNormal3fv@4 @192 238 glNormal3i=_glNormal3i@12 @193 239 glNormal3iv=_glNormal3iv@4 @194 240 glNormal3s=_glNormal3s@12 @195 241 glNormal3sv=_glNormal3sv@4 @196 242 glNormalPointer=_glNormalPointer@12 @197 243 glNormalPointerEXT=_glNormalPointerEXT@16 @432 244 glOrtho=_glOrtho@48 @198 245 glPassThrough=_glPassThrough@4 @199 246 glPixelMapfv=_glPixelMapfv@12 @200 247 glPixelMapuiv=_glPixelMapuiv@12 @201 248 glPixelMapusv=_glPixelMapusv@12 @202 249 glPixelStoref=_glPixelStoref@8 @203 250 glPixelStorei=_glPixelStorei@8 @204 251 glPixelTransferf=_glPixelTransferf@8 @205 252 glPixelTransferi=_glPixelTransferi@8 @206 253 glPixelZoom=_glPixelZoom@8 @207 254 glPointParameterfEXT=_glPointParameterfEXT@8 @462 255 glPointParameterfvEXT=_glPointParameterfvEXT@8 @463 256 glPointSize=_glPointSize@4 @208 257 glPolygonMode=_glPolygonMode@8 @209 258 glPolygonOffset=_glPolygonOffset@8 @210 259 glPolygonOffsetEXT=_glPolygonOffsetEXT@8 @464 260 glPolygonStipple=_glPolygonStipple@4 @211 261 glPopAttrib=_glPopAttrib@0 @212 262 glPopClientAttrib=_glPopClientAttrib@0 @213 263 glPopMatrix=_glPopMatrix@0 @214 264 glPopName=_glPopName@0 @215 265 glPrioritizeTextures=_glPrioritizeTextures@12 @216 266 glPrioritizeTexturesEXT=_glPrioritizeTexturesEXT@12 @465 267 glPushAttrib=_glPushAttrib@4 @217 268 glPushClientAttrib=_glPushClientAttrib@4 @218 269 glPushMatrix=_glPushMatrix@0 @219 270 glPushName=_glPushName@4 @220 271 glRasterPos2d=_glRasterPos2d@16 @221 272 glRasterPos2dv=_glRasterPos2dv@4 @222 273 glRasterPos2f=_glRasterPos2f@8 @223 274 glRasterPos2fv=_glRasterPos2fv@4 @224 275 glRasterPos2i=_glRasterPos2i@8 @225 276 glRasterPos2iv=_glRasterPos2iv@4 @226 277 glRasterPos2s=_glRasterPos2s@8 @227 278 glRasterPos2sv=_glRasterPos2sv@4 @228 279 glRasterPos3d=_glRasterPos3d@24 @229 280 glRasterPos3dv=_glRasterPos3dv@4 @230 281 glRasterPos3f=_glRasterPos3f@12 @231 282 glRasterPos3fv=_glRasterPos3fv@4 @232 283 glRasterPos3i=_glRasterPos3i@12 @233 284 glRasterPos3iv=_glRasterPos3iv@4 @234 285 glRasterPos3s=_glRasterPos3s@12 @235 286 glRasterPos3sv=_glRasterPos3sv@4 @236 287 glRasterPos4d=_glRasterPos4d@32 @237 288 glRasterPos4dv=_glRasterPos4dv@4 @238 289 glRasterPos4f=_glRasterPos4f@16 @239 290 glRasterPos4fv=_glRasterPos4fv@4 @240 291 glRasterPos4i=_glRasterPos4i@16 @241 292 glRasterPos4iv=_glRasterPos4iv@4 @242 293 glRasterPos4s=_glRasterPos4s@16 @243 294 glRasterPos4sv=_glRasterPos4sv@4 @244 295 glReadBuffer=_glReadBuffer@4 @245 296 glReadPixels=_glReadPixels@28 @246 297 glRectd=_glRectd@32 @247 298 glRectdv=_glRectdv@8 @248 299 glRectf=_glRectf@16 @249 300 glRectfv=_glRectfv@8 @250 301 glRecti=_glRecti@16 @251 302 glRectiv=_glRectiv@8 @252 303 glRects=_glRects@16 @253 304 glRectsv=_glRectsv@8 @254 305 glRenderMode=_glRenderMode@4 @255 306 glResizeBuffersMESA=_glResizeBuffersMESA@0 @433 307 glRotated=_glRotated@32 @256 308 glRotatef=_glRotatef@16 @257 309 glScaled=_glScaled@24 @258 310 glScalef=_glScalef@12 @259 311 glScissor=_glScissor@16 @260 312 glSelectBuffer=_glSelectBuffer@8 @261 313 glShadeModel=_glShadeModel@4 @262 314 glStencilFunc=_glStencilFunc@12 @263 315 glStencilMask=_glStencilMask@4 @264 316 glStencilOp=_glStencilOp@12 @265 317 glTexCoord1d=_glTexCoord1d@8 @266 318 glTexCoord1dv=_glTexCoord1dv@4 @267 319 glTexCoord1f=_glTexCoord1f@4 @268 320 glTexCoord1fv=_glTexCoord1fv@4 @269 321 glTexCoord1i=_glTexCoord1i@4 @270 322 glTexCoord1iv=_glTexCoord1iv@4 @271 323 glTexCoord1s=_glTexCoord1s@4 @272 324 glTexCoord1sv=_glTexCoord1sv@4 @273 325 glTexCoord2d=_glTexCoord2d@16 @274 326 glTexCoord2dv=_glTexCoord2dv@4 @275 327 glTexCoord2f=_glTexCoord2f@8 @276 328 glTexCoord2fv=_glTexCoord2fv@4 @277 329 glTexCoord2i=_glTexCoord2i@8 @278 330 glTexCoord2iv=_glTexCoord2iv@4 @279 331 glTexCoord2s=_glTexCoord2s@8 @280 332 glTexCoord2sv=_glTexCoord2sv@4 @281 333 glTexCoord3d=_glTexCoord3d@24 @282 334 glTexCoord3dv=_glTexCoord3dv@4 @283 335 glTexCoord3f=_glTexCoord3f@12 @284 336 glTexCoord3fv=_glTexCoord3fv@4 @285 337 glTexCoord3i=_glTexCoord3i@12 @286 338 glTexCoord3iv=_glTexCoord3iv@4 @287 339 glTexCoord3s=_glTexCoord3s@12 @288 340 glTexCoord3sv=_glTexCoord3sv@4 @289 341 glTexCoord4d=_glTexCoord4d@32 @290 342 glTexCoord4dv=_glTexCoord4dv@4 @291 343 glTexCoord4f=_glTexCoord4f@16 @292 344 glTexCoord4fv=_glTexCoord4fv@4 @293 345 glTexCoord4i=_glTexCoord4i@16 @294 346 glTexCoord4iv=_glTexCoord4iv@4 @295 347 glTexCoord4s=_glTexCoord4s@16 @296 348 glTexCoord4sv=_glTexCoord4sv@4 @297 349 glTexCoordPointer=_glTexCoordPointer@16 @298 350 glTexCoordPointerEXT=_glTexCoordPointerEXT@20 @434 351 glTexEnvf=_glTexEnvf@12 @299 352 glTexEnvfv=_glTexEnvfv@12 @300 353 glTexEnvi=_glTexEnvi@12 @301 354 glTexEnviv=_glTexEnviv@12 @302 355 glTexGend=_glTexGend@16 @303 356 glTexGendv=_glTexGendv@12 @304 357 glTexGenf=_glTexGenf@12 @305 358 glTexGenfv=_glTexGenfv@12 @306 359 glTexGeni=_glTexGeni@12 @307 360 glTexGeniv=_glTexGeniv@12 @308 361 glTexImage1D=_glTexImage1D@32 @309 362 glTexImage2D=_glTexImage2D@36 @310 363 glTexImage3D=_glTexImage3D@40 @400 364 glTexImage3DEXT=_glTexImage3DEXT@40 @435 365 glTexParameterf=_glTexParameterf@12 @311 366 glTexParameterfv=_glTexParameterfv@12 @312 367 glTexParameteri=_glTexParameteri@12 @313 368 glTexParameteriv=_glTexParameteriv@12 @314 369 glTexSubImage1D=_glTexSubImage1D@28 @315 370 glTexSubImage2D=_glTexSubImage2D@36 @316 371 glTexSubImage3DEXT=_glTexSubImage3DEXT@44 @436 372 glTranslated=_glTranslated@24 @317 373 glTranslatef=_glTranslatef@12 @318 374 glVertex2d=_glVertex2d@16 @319 375 glVertex2dv=_glVertex2dv@4 @320 376 glVertex2f=_glVertex2f@8 @321 377 glVertex2fv=_glVertex2fv@4 @322 378 glVertex2i=_glVertex2i@8 @323 379 glVertex2iv=_glVertex2iv@4 @324 380 glVertex2s=_glVertex2s@8 @325 381 glVertex2sv=_glVertex2sv@4 @326 382 glVertex3d=_glVertex3d@24 @327 383 glVertex3dv=_glVertex3dv@4 @328 384 glVertex3f=_glVertex3f@12 @329 385 glVertex3fv=_glVertex3fv@4 @330 386 glVertex3i=_glVertex3i@12 @331 387 glVertex3iv=_glVertex3iv@4 @332 388 glVertex3s=_glVertex3s@12 @333 389 glVertex3sv=_glVertex3sv@4 @334 390 glVertex4d=_glVertex4d@32 @335 391 glVertex4dv=_glVertex4dv@4 @336 392 glVertex4f=_glVertex4f@16 @337 393 glVertex4fv=_glVertex4fv@4 @338 394 glVertex4i=_glVertex4i@16 @339 395 glVertex4iv=_glVertex4iv@4 @340 396 glVertex4s=_glVertex4s@16 @341 397 glVertex4sv=_glVertex4sv@4 @342 398 glVertexPointer=_glVertexPointer@16 @343 399 glVertexPointerEXT=_glVertexPointerEXT@20 @437 400 glViewport=_glViewport@16 @344 401 glWindowPos2dMESA=_glWindowPos2dMESA@16 @438 402 glWindowPos2dvMESA=_glWindowPos2dvMESA@4 @439 403 glWindowPos2fMESA=_glWindowPos2fMESA@8 @440 404 glWindowPos2fvMESA=_glWindowPos2fvMESA@4 @441 405 glWindowPos2iMESA=_glWindowPos2iMESA@8 @442 406 glWindowPos2ivMESA=_glWindowPos2ivMESA@4 @443 407 glWindowPos2sMESA=_glWindowPos2sMESA@8 @444 408 glWindowPos2svMESA=_glWindowPos2svMESA@4 @445 409 glWindowPos3dMESA=_glWindowPos3dMESA@24 @446 410 glWindowPos3dvMESA=_glWindowPos3dvMESA@4 @447 411 glWindowPos3fMESA=_glWindowPos3fMESA@12 @448 412 glWindowPos3fvMESA=_glWindowPos3fvMESA@4 @449 413 glWindowPos3iMESA=_glWindowPos3iMESA@12 @450 414 glWindowPos3ivMESA=_glWindowPos3ivMESA@4 @451 415 glWindowPos3sMESA=_glWindowPos3sMESA@12 @452 416 glWindowPos3svMESA=_glWindowPos3svMESA@4 @453 417 glWindowPos4dMESA=_glWindowPos4dMESA@32 @454 418 glWindowPos4dvMESA=_glWindowPos4dvMESA@4 @455 419 glWindowPos4fMESA=_glWindowPos4fMESA@16 @456 420 glWindowPos4fvMESA=_glWindowPos4fvMESA@4 @457 421 glWindowPos4iMESA=_glWindowPos4iMESA@16 @458 422 glWindowPos4ivMESA=_glWindowPos4ivMESA@4 @459 423 glWindowPos4sMESA=_glWindowPos4sMESA@16 @460 424 glWindowPos4svMESA=_glWindowPos4svMESA@4 @461 425 wglChoosePixelFormat=_wglChoosePixelFormat@8 @345 426 wglCopyContext=_wglCopyContext@12 @346 427 wglCreateContext=_wglCreateContext@4 @347 428 wglCreateLayerContext=_wglCreateLayerContext@8 @348 429 wglDeleteContext=_wglDeleteContext@4 @349 430 wglDescribeLayerPlane=_wglDescribeLayerPlane@20 @350 431 wglDescribePixelFormat=_wglDescribePixelFormat@16 @351 432 wglGetCurrentContext=_wglGetCurrentContext@0 @352 433 wglGetCurrentDC=_wglGetCurrentDC@0 @353 434 ; wglGetDefaultProcAddress @354 435 wglGetLayerPaletteEntries=_wglGetLayerPaletteEntries@20 @355 436 wglGetPixelFormat=_wglGetPixelFormat@4 @356 437 wglGetProcAddress=_wglGetProcAddress@4 @357 438 wglMakeCurrent=_wglMakeCurrent@8 @358 439 wglRealizeLayerPalette=_wglRealizeLayerPalette@12 @359 440 wglSetLayerPaletteEntries=_wglSetLayerPaletteEntries@20 @360 441 wglSetPixelFormat=_wglSetPixelFormat@12 @361 442 wglShareLists=_wglShareLists@8 @362 443 wglSwapBuffers=_wglSwapBuffers@4 @363 444 wglSwapLayerBuffers=_wglSwapLayerBuffers@8 @364 445 wglUseFontBitmapsA=_wglUseFontBitmapsA@16 @365 446 wglUseFontBitmapsW=_wglUseFontBitmapsW@16 @366 447 wglUseFontOutlinesA=_wglUseFontOutlinesA@32 @367 448 wglUseFontOutlinesW=_wglUseFontOutlinesW@32 @368 449 -
trunk/src/opengl/mesa/accum.c
r2938 r2962 1 /* $Id: accum.c,v 1. 1 2000-02-29 00:49:57 sandervlExp $ */1 /* $Id: accum.c,v 1.2 2000-03-01 18:49:22 jeroen Exp $ */ 2 2 3 3 /* … … 40 40 #endif 41 41 #include "accum.h" 42 #include "types.h" 42 43 #include "context.h" 43 44 #include "macros.h" 44 45 #include "masking.h" 45 46 #include "span.h" 46 #include "types.h"47 47 #endif 48 48 … … 204 204 case GL_ADD: 205 205 { 206 const GLaccum intVal = (GLaccum) (value * acc_scale);207 GLuint j;206 const GLaccum intVal = (GLaccum) (value * acc_scale); 207 GLuint j; 208 208 /* Leave optimized accum buffer mode */ 209 209 if (ctx->IntegerAccumMode) 210 210 rescale_accum(ctx); 211 for (j = 0; j < height; j++) {212 GLaccum * acc = ctx->Buffer->Accum + ypos * width4 + 4 * xpos;211 for (j = 0; j < height; j++) { 212 GLaccum * acc = ctx->Buffer->Accum + ypos * width4 + 4 * xpos; 213 213 GLuint i; 214 for (i = 0; i < width4; i++) {214 for (i = 0; i < width4; i++) { 215 215 acc[i] += intVal; 216 }217 ypos++;218 }219 }220 break;216 } 217 ypos++; 218 } 219 } 220 break; 221 221 222 222 case GL_MULT: 223 {224 GLuint j;223 { 224 GLuint j; 225 225 /* Leave optimized accum buffer mode */ 226 226 if (ctx->IntegerAccumMode) 227 227 rescale_accum(ctx); 228 for (j = 0; j < height; j++) {229 GLaccum *acc = ctx->Buffer->Accum + ypos * width4 + 4 * xpos;228 for (j = 0; j < height; j++) { 229 GLaccum *acc = ctx->Buffer->Accum + ypos * width4 + 4 * xpos; 230 230 GLuint i; 231 for (i = 0; i < width4; i++) {231 for (i = 0; i < width4; i++) { 232 232 acc[i] = (GLaccum) ( (GLfloat) acc[i] * value ); 233 }234 ypos++;235 }236 }237 break;233 } 234 ypos++; 235 } 236 } 237 break; 238 238 239 239 case GL_ACCUM: … … 287 287 } 288 288 (void) (*ctx->Driver.SetBuffer)( ctx, ctx->Color.DriverDrawBuffer ); 289 break;289 break; 290 290 291 291 case GL_LOAD: … … 470 470 /* try to alloc accumulation buffer */ 471 471 ctx->Buffer->Accum = (GLaccum *) 472 MALLOC( buffersize * 4 * sizeof(GLaccum) );472 MALLOC( buffersize * 4 * sizeof(GLaccum) ); 473 473 } 474 474 475 475 if (ctx->Buffer->Accum) { 476 476 if (ctx->Scissor.Enabled) { 477 /* Limit clear to scissor box */478 GLaccum r, g, b, a;479 GLint i, j;477 /* Limit clear to scissor box */ 478 GLaccum r, g, b, a; 479 GLint i, j; 480 480 GLint width, height; 481 481 GLaccum *row; 482 r = (GLaccum) (ctx->Accum.ClearColor[0] * acc_scale);483 g = (GLaccum) (ctx->Accum.ClearColor[1] * acc_scale);484 b = (GLaccum) (ctx->Accum.ClearColor[2] * acc_scale);485 a = (GLaccum) (ctx->Accum.ClearColor[3] * acc_scale);482 r = (GLaccum) (ctx->Accum.ClearColor[0] * acc_scale); 483 g = (GLaccum) (ctx->Accum.ClearColor[1] * acc_scale); 484 b = (GLaccum) (ctx->Accum.ClearColor[2] * acc_scale); 485 a = (GLaccum) (ctx->Accum.ClearColor[3] * acc_scale); 486 486 /* size of region to clear */ 487 487 width = 4 * (ctx->Buffer->Xmax - ctx->Buffer->Xmin + 1); … … 497 497 row[i+2] = b; 498 498 row[i+3] = a; 499 }499 } 500 500 row += 4 * ctx->Buffer->Width; 501 }501 } 502 502 } 503 503 else { 504 /* clear whole buffer */505 if (ctx->Accum.ClearColor[0]==0.0 &&506 ctx->Accum.ClearColor[1]==0.0 &&507 ctx->Accum.ClearColor[2]==0.0 &&508 ctx->Accum.ClearColor[3]==0.0) {509 /* Black */510 MEMSET( ctx->Buffer->Accum, 0, buffersize * 4 * sizeof(GLaccum) );511 }512 else {513 /* Not black */514 GLaccum *acc, r, g, b, a;515 GLuint i;516 517 acc = ctx->Buffer->Accum;518 r = (GLaccum) (ctx->Accum.ClearColor[0] * acc_scale);519 g = (GLaccum) (ctx->Accum.ClearColor[1] * acc_scale);520 b = (GLaccum) (ctx->Accum.ClearColor[2] * acc_scale);521 a = (GLaccum) (ctx->Accum.ClearColor[3] * acc_scale);522 for (i=0;i<buffersize;i++) {523 *acc++ = r;524 *acc++ = g;525 *acc++ = b;526 *acc++ = a;527 }528 }504 /* clear whole buffer */ 505 if (ctx->Accum.ClearColor[0]==0.0 && 506 ctx->Accum.ClearColor[1]==0.0 && 507 ctx->Accum.ClearColor[2]==0.0 && 508 ctx->Accum.ClearColor[3]==0.0) { 509 /* Black */ 510 MEMSET( ctx->Buffer->Accum, 0, buffersize * 4 * sizeof(GLaccum) ); 511 } 512 else { 513 /* Not black */ 514 GLaccum *acc, r, g, b, a; 515 GLuint i; 516 517 acc = ctx->Buffer->Accum; 518 r = (GLaccum) (ctx->Accum.ClearColor[0] * acc_scale); 519 g = (GLaccum) (ctx->Accum.ClearColor[1] * acc_scale); 520 b = (GLaccum) (ctx->Accum.ClearColor[2] * acc_scale); 521 a = (GLaccum) (ctx->Accum.ClearColor[3] * acc_scale); 522 for (i=0;i<buffersize;i++) { 523 *acc++ = r; 524 *acc++ = g; 525 *acc++ = b; 526 *acc++ = a; 527 } 528 } 529 529 } 530 530 -
trunk/src/opengl/mesa/alpha.c
r2938 r2962 1 /* $Id: alpha.c,v 1. 1 2000-02-29 00:49:57 sandervlExp $ */1 /* $Id: alpha.c,v 1.2 2000-03-01 18:49:22 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 #endif 37 37 #include "alpha.h" 38 #include "types.h" 38 39 #include "context.h" 39 #include "types.h"40 40 #include "macros.h" 41 41 #include "mmath.h" … … 95 95 case GL_LESS: 96 96 for (i=0;i<n;i++) { 97 mask[i] &= (rgba[i][ACOMP] < ref);98 }99 return 1;97 mask[i] &= (rgba[i][ACOMP] < ref); 98 } 99 return 1; 100 100 case GL_LEQUAL: 101 101 for (i=0;i<n;i++) { 102 mask[i] &= (rgba[i][ACOMP] <= ref);103 }104 return 1;102 mask[i] &= (rgba[i][ACOMP] <= ref); 103 } 104 return 1; 105 105 case GL_GEQUAL: 106 106 for (i=0;i<n;i++) { 107 mask[i] &= (rgba[i][ACOMP] >= ref);108 }109 return 1;107 mask[i] &= (rgba[i][ACOMP] >= ref); 108 } 109 return 1; 110 110 case GL_GREATER: 111 111 for (i=0;i<n;i++) { 112 mask[i] &= (rgba[i][ACOMP] > ref);113 }114 return 1;112 mask[i] &= (rgba[i][ACOMP] > ref); 113 } 114 return 1; 115 115 case GL_NOTEQUAL: 116 116 for (i=0;i<n;i++) { 117 mask[i] &= (rgba[i][ACOMP] != ref);118 }119 return 1;117 mask[i] &= (rgba[i][ACOMP] != ref); 118 } 119 return 1; 120 120 case GL_EQUAL: 121 121 for (i=0;i<n;i++) { 122 mask[i] &= (rgba[i][ACOMP] == ref);123 }124 return 1;122 mask[i] &= (rgba[i][ACOMP] == ref); 123 } 124 return 1; 125 125 case GL_ALWAYS: 126 /* do nothing */127 return 1;126 /* do nothing */ 127 return 1; 128 128 case GL_NEVER: 129 129 /* caller should check for zero! */ 130 return 0;130 return 0; 131 131 default: 132 gl_problem( ctx, "Invalid alpha test in gl_alpha_test" );132 gl_problem( ctx, "Invalid alpha test in gl_alpha_test" ); 133 133 return 0; 134 134 } -
trunk/src/opengl/mesa/alphabuf.c
r2938 r2962 1 /* $Id: alphabuf.c,v 1. 1 2000-02-29 00:49:57 sandervlExp $ */1 /* $Id: alphabuf.c,v 1.2 2000-03-01 18:49:22 jeroen Exp $ */ 2 2 3 3 /* … … 39 39 #include "all.h" 40 40 #else 41 #include "types.h" 41 42 #include "alphabuf.h" 42 43 #include "context.h" 43 44 #include "macros.h" 44 #include "types.h"45 45 #endif 46 46 -
trunk/src/opengl/mesa/api2.c
r2938 r2962 1 /* $Id: api2.c,v 1. 1 2000-02-29 00:49:58 sandervlExp $ */1 /* $Id: api2.c,v 1.2 2000-03-01 18:49:23 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #endif 38 38 #include "api.h" 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "varray.h" … … 43 44 #include "matrix.h" 44 45 #include "teximage.h" 45 #include "types.h"46 46 #include "vb.h" 47 47 #endif … … 663 663 } 664 664 665 #define TEXCOORD1(s) \666 { \667 GLuint count; \668 GLfloat *tc; \669 GET_IMMEDIATE; \670 count = IM->Count; \671 IM->Flag[count] |= VERT_TEX0_1; \672 tc = IM->TexCoord[0][count]; \673 ASSIGN_4V(tc,s,0,0,1); \674 } 675 676 #define TEXCOORD2(s,t) \677 { \678 GLuint count; \679 GLfloat *tc; \680 GET_IMMEDIATE; \681 count = IM->Count; \682 IM->Flag[count] |= VERT_TEX0_12; \683 tc = IM->TexCoord[0][count]; \684 ASSIGN_4V(tc, s,t,0,1); \685 } 686 687 #define TEXCOORD3(s,t,u) \688 { \689 GLuint count; \690 GLfloat *tc; \691 GET_IMMEDIATE; \692 count = IM->Count; \693 IM->Flag[count] |= VERT_TEX0_123; \694 tc = IM->TexCoord[0][count]; \695 ASSIGN_4V(tc, s,t,u,1); \696 } 697 698 #define TEXCOORD4(s,t,u,v) \699 { \700 GLuint count; \701 GLfloat *tc; \702 GET_IMMEDIATE; \703 count = IM->Count; \704 IM->Flag[count] |= VERT_TEX0_1234; \705 tc = IM->TexCoord[0][count]; \706 ASSIGN_4V(tc, s,t,u,v); \665 #define TEXCOORD1(s) \ 666 { \ 667 GLuint count; \ 668 GLfloat *tc; \ 669 GET_IMMEDIATE; \ 670 count = IM->Count; \ 671 IM->Flag[count] |= VERT_TEX0_1; \ 672 tc = IM->TexCoord[0][count]; \ 673 ASSIGN_4V(tc,s,0,0,1); \ 674 } 675 676 #define TEXCOORD2(s,t) \ 677 { \ 678 GLuint count; \ 679 GLfloat *tc; \ 680 GET_IMMEDIATE; \ 681 count = IM->Count; \ 682 IM->Flag[count] |= VERT_TEX0_12; \ 683 tc = IM->TexCoord[0][count]; \ 684 ASSIGN_4V(tc, s,t,0,1); \ 685 } 686 687 #define TEXCOORD3(s,t,u) \ 688 { \ 689 GLuint count; \ 690 GLfloat *tc; \ 691 GET_IMMEDIATE; \ 692 count = IM->Count; \ 693 IM->Flag[count] |= VERT_TEX0_123; \ 694 tc = IM->TexCoord[0][count]; \ 695 ASSIGN_4V(tc, s,t,u,1); \ 696 } 697 698 #define TEXCOORD4(s,t,u,v) \ 699 { \ 700 GLuint count; \ 701 GLfloat *tc; \ 702 GET_IMMEDIATE; \ 703 count = IM->Count; \ 704 IM->Flag[count] |= VERT_TEX0_1234; \ 705 tc = IM->TexCoord[0][count]; \ 706 ASSIGN_4V(tc, s,t,u,v); \ 707 707 } 708 708 … … 1146 1146 * the incoming vertices. 1147 1147 */ 1148 #define VERTEX2(IM, x,y) \1149 { \1150 GLuint count = IM->Count++; \1151 GLfloat *dest = IM->Obj[count]; \1152 IM->Flag[count] |= VERT_OBJ_2; \1153 ASSIGN_4V(dest, x, y, 0, 1); \1154 if (dest == IM->Obj[VB_MAX-1]) \1155 IM->maybe_transform_vb( IM ); \1156 } 1157 1158 #define VERTEX3(IM,x,y,z) \1159 { \1160 GLuint count = IM->Count++; \1161 GLfloat *dest = IM->Obj[count]; \1162 IM->Flag[count] |= VERT_OBJ_23; \1163 ASSIGN_4V(dest, x, y, z, 1); \1164 if (dest == IM->Obj[VB_MAX-1]) \1165 IM->maybe_transform_vb( IM ); \1166 } 1167 1168 #define VERTEX4(IM, x,y,z,w) \1169 { \1170 GLuint count = IM->Count++; \1171 GLfloat *dest = IM->Obj[count]; \1172 IM->Flag[count] |= VERT_OBJ_234; \1173 ASSIGN_4V(dest, x, y, z, w); \1174 if (dest == IM->Obj[VB_MAX-1]) \1175 IM->maybe_transform_vb( IM ); \1148 #define VERTEX2(IM, x,y) \ 1149 { \ 1150 GLuint count = IM->Count++; \ 1151 GLfloat *dest = IM->Obj[count]; \ 1152 IM->Flag[count] |= VERT_OBJ_2; \ 1153 ASSIGN_4V(dest, x, y, 0, 1); \ 1154 if (dest == IM->Obj[VB_MAX-1]) \ 1155 IM->maybe_transform_vb( IM ); \ 1156 } 1157 1158 #define VERTEX3(IM,x,y,z) \ 1159 { \ 1160 GLuint count = IM->Count++; \ 1161 GLfloat *dest = IM->Obj[count]; \ 1162 IM->Flag[count] |= VERT_OBJ_23; \ 1163 ASSIGN_4V(dest, x, y, z, 1); \ 1164 if (dest == IM->Obj[VB_MAX-1]) \ 1165 IM->maybe_transform_vb( IM ); \ 1166 } 1167 1168 #define VERTEX4(IM, x,y,z,w) \ 1169 { \ 1170 GLuint count = IM->Count++; \ 1171 GLfloat *dest = IM->Obj[count]; \ 1172 IM->Flag[count] |= VERT_OBJ_234; \ 1173 ASSIGN_4V(dest, x, y, z, w); \ 1174 if (dest == IM->Obj[VB_MAX-1]) \ 1175 IM->maybe_transform_vb( IM ); \ 1176 1176 } 1177 1177 … … 1324 1324 GET_IMMEDIATE; 1325 1325 VERTEX4( IM, 1326 (GLfloat) v[0], (GLfloat) v[1],1327 (GLfloat) v[2], (GLfloat) v[3] );1326 (GLfloat) v[0], (GLfloat) v[1], 1327 (GLfloat) v[2], (GLfloat) v[3] ); 1328 1328 } 1329 1329 … … 1340 1340 GET_IMMEDIATE; 1341 1341 VERTEX4( IM, 1342 (GLfloat) v[0], (GLfloat) v[1],1343 (GLfloat) v[2], (GLfloat) v[3] );1342 (GLfloat) v[0], (GLfloat) v[1], 1343 (GLfloat) v[2], (GLfloat) v[3] ); 1344 1344 } 1345 1345 … … 1349 1349 GET_IMMEDIATE; 1350 1350 VERTEX4( IM, 1351 (GLfloat) v[0], (GLfloat) v[1],1352 (GLfloat) v[2], (GLfloat) v[3] );1351 (GLfloat) v[0], (GLfloat) v[1], 1352 (GLfloat) v[2], (GLfloat) v[3] ); 1353 1353 } 1354 1354 -
trunk/src/opengl/mesa/apiext.c
r2938 r2962 1 /* $Id: apiext.c,v 1. 1 2000-02-29 00:49:58 sandervlExp $ */1 /* $Id: apiext.c,v 1.2 2000-03-01 18:49:23 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #endif 38 38 #include "api.h" 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "cva.h" 41 42 #include "image.h" 42 #include "types.h"43 43 #include "varray.h" 44 44 #endif … … 427 427 */ 428 428 429 #define TEXCOORD1(s) \430 { \431 GLuint count; \432 GLfloat *tc; \433 count = IM->Count; \434 IM->Flag[count] |= IM->TF1[texSet]; \435 tc = IM->TexCoordPtr[texSet][count]; \436 ASSIGN_4V(tc, s,0,0,1); \437 } 438 439 440 #define TEXCOORD2(s,t) \441 { \442 GLuint count; \443 GLfloat *tc; \444 count = IM->Count; \445 IM->Flag[count] |= IM->TF2[texSet]; \446 tc = IM->TexCoordPtr[texSet][count]; \447 ASSIGN_4V(tc, s,t,0,1); \448 } 449 450 #define TEXCOORD3(s,t,u) \451 { \452 GLuint count; \453 GLfloat *tc; \454 count = IM->Count; \455 IM->Flag[count] |= IM->TF3[texSet]; \456 tc = IM->TexCoordPtr[texSet][count]; \457 ASSIGN_4V(tc, s,t,u,1); \458 } 459 460 #define TEXCOORD4(s,t,u,v) \461 { \462 GLuint count; \463 GLfloat *tc; \464 count = IM->Count; \465 IM->Flag[count] |= IM->TF4[texSet]; \466 tc = IM->TexCoordPtr[texSet][count]; \467 ASSIGN_4V(tc, s,t,u,v); \429 #define TEXCOORD1(s) \ 430 { \ 431 GLuint count; \ 432 GLfloat *tc; \ 433 count = IM->Count; \ 434 IM->Flag[count] |= IM->TF1[texSet]; \ 435 tc = IM->TexCoordPtr[texSet][count]; \ 436 ASSIGN_4V(tc, s,0,0,1); \ 437 } 438 439 440 #define TEXCOORD2(s,t) \ 441 { \ 442 GLuint count; \ 443 GLfloat *tc; \ 444 count = IM->Count; \ 445 IM->Flag[count] |= IM->TF2[texSet]; \ 446 tc = IM->TexCoordPtr[texSet][count]; \ 447 ASSIGN_4V(tc, s,t,0,1); \ 448 } 449 450 #define TEXCOORD3(s,t,u) \ 451 { \ 452 GLuint count; \ 453 GLfloat *tc; \ 454 count = IM->Count; \ 455 IM->Flag[count] |= IM->TF3[texSet]; \ 456 tc = IM->TexCoordPtr[texSet][count]; \ 457 ASSIGN_4V(tc, s,t,u,1); \ 458 } 459 460 #define TEXCOORD4(s,t,u,v) \ 461 { \ 462 GLuint count; \ 463 GLfloat *tc; \ 464 count = IM->Count; \ 465 IM->Flag[count] |= IM->TF4[texSet]; \ 466 tc = IM->TexCoordPtr[texSet][count]; \ 467 ASSIGN_4V(tc, s,t,u,v); \ 468 468 } 469 469 … … 480 480 */ 481 481 482 #define CHECK_ARB \483 if (target >= GL_TEXTURE0_ARB && target <= GL_TEXTURE1_ARB) { \484 texSet = target - GL_TEXTURE0_ARB; \485 } \486 else { \487 gl_error(IM->backref, GL_INVALID_ENUM, "glMultiTexCoord(target)"); \488 return; \482 #define CHECK_ARB \ 483 if (target >= GL_TEXTURE0_ARB && target <= GL_TEXTURE1_ARB) { \ 484 texSet = target - GL_TEXTURE0_ARB; \ 485 } \ 486 else { \ 487 gl_error(IM->backref, GL_INVALID_ENUM, "glMultiTexCoord(target)"); \ 488 return; \ 489 489 } 490 490 … … 883 883 void GLAPIENTRY 884 884 glHistogram(CTX_ARG GLenum target, GLsizei width, GLenum internalFormat, 885 GLboolean sink )885 GLboolean sink ) 886 886 { 887 887 GET_CONTEXT; … … 907 907 void GLAPIENTRY 908 908 glGetHistogram(CTX_ARG GLenum target, GLboolean reset, GLenum format, 909 GLenum type, GLvoid *values )909 GLenum type, GLvoid *values ) 910 910 { 911 911 GET_CONTEXT; … … 1007 1007 void GLAPIENTRY 1008 1008 glConvolutionFilter1D(CTX_ARG GLenum target, GLenum internalFormat, GLsizei width, 1009 GLenum format, GLenum type, const GLvoid *image )1009 GLenum format, GLenum type, const GLvoid *image ) 1010 1010 { 1011 1011 GET_CONTEXT; … … 1023 1023 void GLAPIENTRY 1024 1024 glConvolutionFilter2D(CTX_ARG GLenum target, GLenum internalFormat, GLsizei width, 1025 GLsizei height, GLenum format, GLenum type,1026 const GLvoid *image )1025 GLsizei height, GLenum format, GLenum type, 1026 const GLvoid *image ) 1027 1027 { 1028 1028 GET_CONTEXT; … … 1089 1089 void GLAPIENTRY 1090 1090 glCopyConvolutionFilter1D(CTX_ARG GLenum target, GLenum internalFormat, 1091 GLint x, GLint y, GLsizei width )1091 GLint x, GLint y, GLsizei width ) 1092 1092 { 1093 1093 GET_CONTEXT; … … 1104 1104 void GLAPIENTRY 1105 1105 glCopyConvolutionFilter2D(CTX_ARG GLenum target, GLenum internalFormat, 1106 GLint x, GLint y, GLsizei width, GLsizei height)1106 GLint x, GLint y, GLsizei width, GLsizei height) 1107 1107 { 1108 1108 GET_CONTEXT; … … 1120 1120 void GLAPIENTRY 1121 1121 glGetConvolutionFilter(CTX_ARG GLenum target, GLenum format, 1122 GLenum type, GLvoid *image )1122 GLenum type, GLvoid *image ) 1123 1123 { 1124 1124 GET_CONTEXT; … … 1158 1158 void GLAPIENTRY 1159 1159 glSeparableFilter2D(CTX_ARG GLenum target, GLenum internalFormat, 1160 GLsizei width, GLsizei height, GLenum format,1161 GLenum type, const GLvoid *row, const GLvoid *column )1160 GLsizei width, GLsizei height, GLenum format, 1161 GLenum type, const GLvoid *row, const GLvoid *column ) 1162 1162 { 1163 1163 GET_CONTEXT; … … 1178 1178 void GLAPIENTRY 1179 1179 glGetSeparableFilter(CTX_ARG GLenum target, GLenum format, GLenum type, 1180 GLvoid *row, GLvoid *column, GLvoid *span )1180 GLvoid *row, GLvoid *column, GLvoid *span ) 1181 1181 { 1182 1182 GET_CONTEXT; … … 1194 1194 void GLAPIENTRY 1195 1195 glCopyColorSubTable(CTX_ARG GLenum target, GLsizei start, GLint x, GLint y, 1196 GLsizei width )1196 GLsizei width ) 1197 1197 { 1198 1198 GET_CONTEXT; … … 1209 1209 void GLAPIENTRY 1210 1210 glCopyColorTable(CTX_ARG GLenum target, GLenum internalFormat, 1211 GLint x, GLint y, GLsizei width )1211 GLint x, GLint y, GLsizei width ) 1212 1212 { 1213 1213 GET_CONTEXT; -
trunk/src/opengl/mesa/blend.c
r2938 r2962 1 /* $Id: blend.c,v 1. 1 2000-02-29 00:49:59 sandervlExp $ */1 /* $Id: blend.c,v 1.2 2000-03-01 18:49:23 jeroen Exp $ */ 2 2 3 3 /* … … 275 275 * Common transparency blending mode. 276 276 */ 277 static void blend_transparency( GLcontext *ctx, GLuint n, const GLubyte mask[],277 static void __cdecl blend_transparency( GLcontext *ctx, GLuint n, const GLubyte mask[], 278 278 GLubyte rgba[][4], CONST GLubyte dest[][4] ) 279 279 { … … 320 320 * Add src and dest. 321 321 */ 322 static void blend_add( GLcontext *ctx, GLuint n, const GLubyte mask[],322 static void __cdecl blend_add( GLcontext *ctx, GLuint n, const GLubyte mask[], 323 323 GLubyte rgba[][4], CONST GLubyte dest[][4] ) 324 324 { … … 348 348 * Blend min function (for GL_EXT_blend_minmax) 349 349 */ 350 static void blend_min( GLcontext *ctx, GLuint n, const GLubyte mask[],350 static void __cdecl blend_min( GLcontext *ctx, GLuint n, const GLubyte mask[], 351 351 GLubyte rgba[][4], CONST GLubyte dest[][4] ) 352 352 { … … 370 370 * Blend max function (for GL_EXT_blend_minmax) 371 371 */ 372 static void blend_max( GLcontext *ctx, GLuint n, const GLubyte mask[],372 static void __cdecl blend_max( GLcontext *ctx, GLuint n, const GLubyte mask[], 373 373 GLubyte rgba[][4], CONST GLubyte dest[][4] ) 374 374 { … … 392 392 * Modulate: result = src * dest 393 393 */ 394 static void blend_modulate( GLcontext *ctx, GLuint n, const GLubyte mask[],394 static void __cdecl blend_modulate( GLcontext *ctx, GLuint n, const GLubyte mask[], 395 395 GLubyte rgba[][4], CONST GLubyte dest[][4] ) 396 396 { … … 421 421 * Input: dest - the pixels from the dest color buffer 422 422 */ 423 static void blend_general( GLcontext *ctx, GLuint n, const GLubyte mask[],423 static void __cdecl blend_general( GLcontext *ctx, GLuint n, const GLubyte mask[], 424 424 GLubyte rgba[][4], CONST GLubyte dest[][4] ) 425 425 { … … 481 481 break; 482 482 case GL_SRC_ALPHA_SATURATE: 483 #ifdef __WIN32OS2__ 484 if(As < 255 - Ad) { 485 #else 483 486 if (As < 1.0F - (GLfloat) Ad * ascale) { 487 #endif 484 488 sR = sG = sB = (GLfloat) As * ascale; 485 489 } -
trunk/src/opengl/mesa/clip.c
r2938 r2962 1 /* $Id: clip.c,v 1. 1 2000-02-29 00:49:59 sandervlExp $ */1 /* $Id: clip.c,v 1.2 2000-03-01 18:49:24 jeroen Exp $ */ 2 2 3 3 /* … … 40 40 #endif 41 41 #include "clip.h" 42 #include "types.h" 42 43 #include "context.h" 43 44 #include "macros.h" 44 45 #include "matrix.h" 45 46 #include "mmath.h" 46 #include "types.h"47 47 #include "vb.h" 48 48 #include "xform.h" -
trunk/src/opengl/mesa/clip_tmp.h
r2938 r2962 1 /* $Id: clip_tmp.h,v 1. 1 2000-02-29 00:48:26 sandervlExp $ */1 /* $Id: clip_tmp.h,v 1.2 2000-03-01 18:49:24 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 * and an asm implementation needn't replicate that behaviour. 37 37 */ 38 static GLvector4f * TAG(cliptest_points4)( GLvector4f *clip_vec,39 GLvector4f *proj_vec,40 GLubyte clipMask[],41 GLubyte *orMask,42 GLubyte *andMask )38 static GLvector4f * __cdecl TAG(cliptest_points4)( GLvector4f *clip_vec, 39 GLvector4f *proj_vec, 40 GLubyte clipMask[], 41 GLubyte *orMask, 42 GLubyte *andMask ) 43 43 { 44 44 const GLuint stride = clip_vec->stride; … … 76 76 clipMask[i] = mask; 77 77 if (mask) { 78 c++;79 tmpAndMask &= mask;80 tmpOrMask |= mask;81 vProj[i][0] = 0;/* no longer required? */82 vProj[i][1] = 0;83 vProj[i][2] = 0;84 vProj[i][3] = 1;78 c++; 79 tmpAndMask &= mask; 80 tmpOrMask |= mask; 81 vProj[i][0] = 0; /* no longer required? */ 82 vProj[i][1] = 0; 83 vProj[i][2] = 0; 84 vProj[i][3] = 1; 85 85 } else { 86 GLfloat oow = 1.0F / cw; 87 vProj[i][3] = oow;88 vProj[i][0] = cx * oow;89 vProj[i][1] = cy * oow;90 vProj[i][2] = cz * oow;91 } 86 GLfloat oow = 1.0F / cw; 87 vProj[i][3] = oow; 88 vProj[i][0] = cx * oow; 89 vProj[i][1] = cy * oow; 90 vProj[i][2] = cz * oow; 91 } 92 92 } 93 93 … … 101 101 } 102 102 103 static GLvector4f * TAG(cliptest_points3)( GLvector4f *clip_vec,104 GLvector4f *proj_vec,105 GLubyte clipMask[],106 GLubyte *orMask,107 GLubyte *andMask )103 static GLvector4f * __cdecl TAG(cliptest_points3)( GLvector4f *clip_vec, 104 GLvector4f *proj_vec, 105 GLubyte clipMask[], 106 GLubyte *orMask, 107 GLubyte *andMask ) 108 108 { 109 109 const GLuint stride = clip_vec->stride; … … 135 135 } 136 136 137 static GLvector4f * TAG(cliptest_points2)( GLvector4f *clip_vec,138 GLvector4f *proj_vec,139 GLubyte clipMask[],140 GLubyte *orMask,141 GLubyte *andMask )137 static GLvector4f * __cdecl TAG(cliptest_points2)( GLvector4f *clip_vec, 138 GLvector4f *proj_vec, 139 GLubyte clipMask[], 140 GLubyte *orMask, 141 GLubyte *andMask ) 142 142 { 143 143 const GLuint stride = clip_vec->stride; -
trunk/src/opengl/mesa/colors.h
r2938 r2962 1 /* $Id: colors.h,v 1. 1 2000-02-29 00:48:26 sandervlExp $ */1 /* $Id: colors.h,v 1.2 2000-03-01 18:49:24 jeroen Exp $ */ 2 2 3 3 /* File name : colors.h … … 27 27 /* 28 28 * $Log: colors.h,v $ 29 * Revision 1. 1 2000-02-29 00:48:26 sandervl30 * created29 * Revision 1.2 2000-03-01 18:49:24 jeroen 30 * *** empty log message *** 31 31 * 32 32 * Revision 1.1.1.1 1999/08/19 00:55:42 jtg … … 45 45 /* 46 46 * $Log: colors.h,v $ 47 * Revision 1. 1 2000-02-29 00:48:26 sandervl48 * created47 * Revision 1.2 2000-03-01 18:49:24 jeroen 48 * *** empty log message *** 49 49 * 50 50 * Revision 1.1.1.1 1999/08/19 00:55:42 jtg … … 63 63 /* 64 64 * $Log: colors.h,v $ 65 * Revision 1. 1 2000-02-29 00:48:26 sandervl66 * created65 * Revision 1.2 2000-03-01 18:49:24 jeroen 66 * *** empty log message *** 67 67 * 68 68 * Revision 1.1.1.1 1999/08/19 00:55:42 jtg … … 89 89 #define PF_INDEX8 12 90 90 91 char ColorMap16[] = {91 static char ColorMap16[] = { 92 92 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 93 93 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, … … 123 123 0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F}; 124 124 125 #define BGR8(r,g,b) (unsigned)(((BYTE)(b & 0xc0 | (g & 0xe0)>>2 | (r & 0xe0)>>5)))125 #define BGR8(r,g,b) (unsigned)(((BYTE)(b & 0xc0 | (g & 0xe0)>>2 | (r & 0xe0)>>5))) 126 126 #ifdef DDRAW 127 #define BGR16(r,g,b) ((WORD)(((BYTE)(ColorMap16[b]) | ((BYTE)(g&0xfc) << 3)) | (((WORD)(BYTE)(ColorMap16[r])) << 11)))127 #define BGR16(r,g,b) ((WORD)(((BYTE)(ColorMap16[b]) | ((BYTE)(g&0xfc) << 3)) | (((WORD)(BYTE)(ColorMap16[r])) << 11))) 128 128 #else 129 #ifdef __WIN32OS2__ 130 #define BGR16(r,g,b) ((WORD)(((BYTE)(ColorMap16[b]) | ((BYTE)(ColorMap16[g]*2) << 5)) | (((WORD)(BYTE)(ColorMap16[r])) << 11))) 131 #else 132 #define BGR16(r,g,b) ((WORD)(((BYTE)(ColorMap16[b]) | ((BYTE)(ColorMap16[g]) << 5)) | (((WORD)(BYTE)(ColorMap16[r])) << 10))) 129 #define BGR16(r,g,b) ((WORD)(((BYTE)(ColorMap16[b]) | ((BYTE)(ColorMap16[g]) << 5)) | (((WORD)(BYTE)(ColorMap16[r])) << 10))) 133 130 #endif 134 #endif 135 #define BGR24(r,g,b) (unsigned long)(((DWORD)(((BYTE)(b)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(r))<<16))))136 #define BGR32(r,g,b) (unsigned long)((DWORD)(((BYTE)(b)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(r))<<16)))131 /* JvdH -- FIX! In BGR24 don't shift another 8 bits (was <<8) */ 132 #define BGR24(r,g,b) (unsigned long)(((DWORD)(((BYTE)(b)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(r))<<16)))) 133 #define BGR32(r,g,b) (unsigned long)((DWORD)(((BYTE)(b)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(r))<<16))) 137 134 138 135 … … 141 138 * If pixelformat==PF_8A8B8G8R: 142 139 */ 143 #define PACK_8A8B8G8R( R, G, B, A ) \144 ( ((A) << 24) | ((B) << 16) | ((G) << 8) | (R) )140 #define PACK_8A8B8G8R( R, G, B, A ) \ 141 ( ((A) << 24) | ((B) << 16) | ((G) << 8) | (R) ) 145 142 146 143 … … 148 145 * If pixelformat==PF_8R8G8B: 149 146 */ 150 #define PACK_8R8G8B( R, G, B) ( ((R) << 16) | ((G) << 8) | (B) )147 #define PACK_8R8G8B( R, G, B) ( ((R) << 16) | ((G) << 8) | (B) ) 151 148 152 149 … … 160 157 #else 161 158 #ifdef __WIN32OS2__ 162 #define PACK_5R6G5B( R, G, B) ((WORD)(((BYTE)(ColorMap16[B]) | ((BYTE)(ColorMap16[G]*2) << 5)) | (((WORD)(BYTE)(ColorMap16[R])) << 11)))159 #define PACK_5R6G5B( R, G, B) ((WORD)(((BYTE)(ColorMap16[B]) | ((BYTE)(ColorMap16[G]*2) << 5)) | (((WORD)(BYTE)(ColorMap16[R])) << 11))) 163 160 #else 164 #define PACK_5R6G5B( R, G, B) ((WORD)(((BYTE)(ColorMap16[B]) | ((BYTE)(ColorMap16[G]) << 5)) | (((WORD)(BYTE)(ColorMap16[R])) << 10)))161 #define PACK_5R6G5B( R, G, B) ((WORD)(((BYTE)(ColorMap16[B]) | ((BYTE)(ColorMap16[G]) << 5)) | (((WORD)(BYTE)(ColorMap16[R])) << 10))) 165 162 #endif 166 163 #endif -
trunk/src/opengl/mesa/common_x86.c
r2938 r2962 1 /* $Id: common_x86.c,v 1. 1 2000-02-29 00:49:59 sandervlExp $ */1 /* $Id: common_x86.c,v 1.2 2000-03-01 18:49:24 jeroen Exp $ */ 2 2 3 3 /* … … 54 54 { 55 55 #ifdef USE_X86_ASM 56 56 57 #ifdef __WIN32OS2__ 57 58 /* Odin specific - use 'built in' cpuhlp lib */ 58 59 if(CPUFeatures & CPUID_FPU_PRESENT) 59 gl_init_x86_asm_transforms(); 60 { 61 dprintf(("OPENGL32: Initializing Assembly Transforms")); 62 gl_init_x86_asm_transforms(); 63 } 60 64 61 65 #if defined(USE_3DNOW_ASM) 62 66 if(CPUFeatures /*& CPUID_3DNOW*/) 63 gl_init_3dnow_asm_transforms(); 64 #endif 65 #else 67 { 68 dprintf(("OPENGL32: Initializing 3DNow! Transforms")); 69 gl_init_3dnow_asm_transforms(); 70 } 71 #endif /* USE_3DNOW_ASM */ 72 73 #else /* __WIN32OS2__ */ 66 74 gl_x86_cpu_features = gl_identify_x86_cpu_features (); 67 75 gl_x86_cpu_features |= GL_CPU_AnyX86; … … 87 95 } 88 96 } 89 #endif 97 #endif /* USE_MMX_ASM */ 90 98 91 99 … … 100 108 } 101 109 } 102 #endif 103 #endif 104 #endif 110 #endif /* USE_3DNOW_ASM */ 111 112 #endif /* __WIN32OS2__ */ 113 114 #endif /* USE_X86_ASM */ 105 115 } 106 116 -
trunk/src/opengl/mesa/config.h
r2938 r2962 1 /* $Id: config.h,v 1. 1 2000-02-29 00:48:27 sandervlExp $ */1 /* $Id: config.h,v 1.2 2000-03-01 18:49:24 jeroen Exp $ */ 2 2 3 3 /* … … 217 217 218 218 typedef struct gl_context GLcontext; 219 typedef struct gl_visual GLvisual; 220 typedef struct gl_frame_buffer GLframebuffer; 219 221 220 222 extern void gl_read_config_file( struct gl_context *ctx ); -
trunk/src/opengl/mesa/context.c
r2938 r2962 1 /* $Id: context.c,v 1. 1 2000-02-29 00:50:00 sandervlExp $ */1 /* $Id: context.c,v 1.2 2000-03-01 18:49:25 jeroen Exp $ */ 2 2 3 3 /* … … 35 35 * the address space. 36 36 */ 37 38 #ifdef __WIN32OS2__ 39 #include <os2win.h> 40 #ifdef DIVE 41 #include "types.h" 42 #include "wmesadef.h" 43 #include "mesadive.h" 44 #endif 45 #endif 37 46 38 47 #ifdef PC_HEADER … … 138 147 #ifdef THREADS 139 148 140 #include "mthreads.h" /* Mesa platform independent threads interface*/149 #include "mthreads.h" /* Mesa platform independent threads interface*/ 141 150 142 151 static MesaTSD mesa_ctx_tsd; … … 333 342 { 334 343 static GLboolean alreadyCalled = GL_FALSE; 344 335 345 if (!alreadyCalled) { 336 346 gl_init_clip(); … … 346 356 gl_init_vbxform(); 347 357 gl_init_vertices(); 358 #ifdef THREADS 359 mesa_ctx_thread_init(); 360 #endif 348 361 alreadyCalled = GL_TRUE; 349 362 } … … 1262 1275 1263 1276 ctx->VB = gl_vb_create_for_immediate( ctx ); 1277 1264 1278 if (!ctx->VB) { 1265 1279 FREE( ctx ); … … 1269 1283 1270 1284 ctx->PB = gl_alloc_pb(); 1285 1271 1286 if (!ctx->PB) { 1272 1287 FREE( ctx->VB ); … … 1382 1397 gl_matrix_dtr( &ctx->ModelView ); 1383 1398 for (i = 0 ; i < MAX_MODELVIEW_STACK_DEPTH ; i++) { 1384 gl_matrix_dtr( &ctx->ModelViewStack[i] );1399 gl_matrix_dtr( &ctx->ModelViewStack[i] ); 1385 1400 } 1386 1401 gl_matrix_dtr( &ctx->ProjectionMatrix ); 1387 1402 for (i = 0 ; i < MAX_PROJECTION_STACK_DEPTH ; i++) { 1388 gl_matrix_dtr( &ctx->ProjectionStack[i] );1403 gl_matrix_dtr( &ctx->ProjectionStack[i] ); 1389 1404 } 1390 1405 … … 1399 1414 assert(ctx->Shared->RefCount>=0); 1400 1415 if (ctx->Shared->RefCount==0) { 1401 /* free shared state */1402 free_shared_state( ctx, ctx->Shared );1416 /* free shared state */ 1417 free_shared_state( ctx, ctx->Shared ); 1403 1418 } 1404 1419 1405 1420 foreach_s( s, tmps, ctx->ShineTabList ) { 1406 FREE( s );1421 FREE( s ); 1407 1422 } 1408 1423 FREE( ctx->ShineTabList ); … … 1465 1480 if (ctx==CC) { 1466 1481 CC = NULL; 1467 CURRENT_INPUT = NULL;1482 CURRENT_INPUT = NULL; 1468 1483 } 1469 1484 #endif … … 1540 1555 */ 1541 1556 if (CC) { 1542 ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(CC, "gl_make_current");1557 ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(CC, "gl_make_current"); 1543 1558 } 1544 1559 … … 1551 1566 CC->Buffer = NULL; 1552 1567 } 1568 1553 1569 CC = ctx; 1554 1570 if (ctx) { 1555 SET_IMMEDIATE(ctx, ctx->input);1571 SET_IMMEDIATE(ctx, ctx->input); 1556 1572 } 1557 1573 #endif 1558 1559 if (MESA_VERBOSE) fprintf(stderr, "gl_make_current()\n");1560 1574 1561 1575 if (ctx && buffer) { 1562 1576 /* TODO: check if ctx and buffer's visual match??? */ 1563 ctx->Buffer = buffer; /* Bind the frame buffer to the context*/1564 ctx->NewState = NEW_ALL; /* just to be safe*/1577 ctx->Buffer = buffer; /* Bind the frame buffer to the context*/ 1578 ctx->NewState = NEW_ALL; /* just to be safe*/ 1565 1579 gl_update_state( ctx ); 1566 1580 } … … 1571 1585 * information. 1572 1586 */ 1573 if (ctx && ctx->FirstTimeCurrent) {1574 if (getenv("MESA_INFO")){1575 fprintf(stderr, "Mesa GL_VERSION = %s\n", (char *) gl_GetString(ctx, GL_VERSION));1576 fprintf(stderr, "Mesa GL_RENDERER = %s\n", (char *) gl_GetString(ctx, GL_RENDERER));1577 fprintf(stderr, "Mesa GL_VENDOR = %s\n", (char *) gl_GetString(ctx, GL_VENDOR));1578 fprintf(stderr, "Mesa GL_EXTENSIONS = %s\n", (char *) gl_GetString(ctx, GL_EXTENSIONS));1579 } 1580 ctx->FirstTimeCurrent = GL_FALSE;1581 }1587 if (ctx && ctx->FirstTimeCurrent) 1588 { 1589 dprintf(("Mesa GL_VERSION = %s\n", (char *) gl_GetString(ctx, GL_VERSION))); 1590 dprintf(("Mesa GL_RENDERER = %s\n", (char *) gl_GetString(ctx, GL_RENDERER))); 1591 dprintf(("Mesa GL_VENDOR = %s\n", (char *) gl_GetString(ctx, GL_VENDOR))); 1592 dprintf(("Mesa GL_EXTENSIONS = %s\n", (char *) gl_GetString(ctx, GL_EXTENSIONS))); 1593 1594 ctx->FirstTimeCurrent = GL_FALSE; 1595 } 1582 1596 } 1583 1597 … … 1649 1663 } 1650 1664 if (mask & GL_POLYGON_STIPPLE_BIT) { 1665 #ifdef __WIN32OS2__ 1666 MEMCPY( &dst->PolygonStipple, &src->PolygonStipple, 32*sizeof(GLint) ); 1667 #else 1651 1668 /* Use loop instead of MEMCPY due to problem with Portland Group's 1652 1669 * C compiler. Reported by John Stone. … … 1656 1673 dst->PolygonStipple[i] = src->PolygonStipple[i]; 1657 1674 } 1675 #endif 1658 1676 } 1659 1677 if (mask & GL_SCISSOR_BIT) { … … 1707 1725 void gl_problem( const GLcontext *ctx, const char *s ) 1708 1726 { 1727 #ifdef __WIN32OS2__ 1728 dprintf(("OPENGL32: Mesa implementation error: %s\n", s) ); 1729 dprintf(("OPENGL32: Report to J.vandenHorn@fibre.a2000.nl\n" )); 1730 #else 1709 1731 fprintf( stderr, "Mesa implementation error: %s\n", s ); 1710 1732 fprintf( stderr, "Report to mesa-bugs@mesa3d.org\n" ); 1711 1733 (void) ctx; 1734 #endif 1712 1735 } 1713 1736 … … 1732 1755 } 1733 1756 #endif 1757 #ifdef __WIN32OS2__ 1758 dprintf(("OPENGL32: Mesa warning: %s\n", s )); 1759 #else 1734 1760 if (debug) { 1735 1761 fprintf( stderr, "Mesa warning: %s\n", s ); 1736 1762 } 1763 #endif 1737 1764 (void) ctx; 1738 1765 } … … 1772 1799 } 1773 1800 #endif 1774 1801 #ifdef __WIN32OS2__ 1802 { 1803 #else 1775 1804 if (debug) { 1805 #endif 1776 1806 char errstr[1000]; 1777 1807 1778 1808 switch (error) { 1779 case GL_NO_ERROR: 1780 strcpy( errstr, "GL_NO_ERROR" ); 1781 break; 1782 case GL_INVALID_VALUE: 1783 strcpy( errstr, "GL_INVALID_VALUE" ); 1784 break; 1785 case GL_INVALID_ENUM: 1786 strcpy( errstr, "GL_INVALID_ENUM" ); 1787 break; 1788 case GL_INVALID_OPERATION: 1789 strcpy( errstr, "GL_INVALID_OPERATION" ); 1790 break; 1791 case GL_STACK_OVERFLOW: 1792 strcpy( errstr, "GL_STACK_OVERFLOW" ); 1793 break; 1794 case GL_STACK_UNDERFLOW: 1795 strcpy( errstr, "GL_STACK_UNDERFLOW" ); 1796 break; 1797 case GL_OUT_OF_MEMORY: 1798 strcpy( errstr, "GL_OUT_OF_MEMORY" ); 1799 break; 1800 default: 1801 strcpy( errstr, "unknown" ); 1802 break; 1803 } 1809 case GL_NO_ERROR: 1810 strcpy( errstr, "GL_NO_ERROR" ); 1811 break; 1812 case GL_INVALID_VALUE: 1813 strcpy( errstr, "GL_INVALID_VALUE" ); 1814 break; 1815 case GL_INVALID_ENUM: 1816 strcpy( errstr, "GL_INVALID_ENUM" ); 1817 break; 1818 case GL_INVALID_OPERATION: 1819 strcpy( errstr, "GL_INVALID_OPERATION" ); 1820 break; 1821 case GL_STACK_OVERFLOW: 1822 strcpy( errstr, "GL_STACK_OVERFLOW" ); 1823 break; 1824 case GL_STACK_UNDERFLOW: 1825 strcpy( errstr, "GL_STACK_UNDERFLOW" ); 1826 break; 1827 case GL_OUT_OF_MEMORY: 1828 strcpy( errstr, "GL_OUT_OF_MEMORY" ); 1829 break; 1830 default: 1831 strcpy( errstr, "unknown" ); 1832 break; 1833 } 1834 #ifdef __WIN32OS2__ 1835 dprintf( ("OPENGL32: Mesa user error: %s in %s\n", errstr, s )); 1836 #else 1804 1837 fprintf( stderr, "Mesa user error: %s in %s\n", errstr, s ); 1838 #endif 1805 1839 } 1806 1840 … … 1844 1878 /* ask device driver for size of output buffer */ 1845 1879 (*ctx->Driver.GetBufferSize)( ctx, &buf_width, &buf_height ); 1880 1881 dprintf(("OPENGL32: gl_ResizeBuffersMESA - new w/h %d/%d\n",buf_width,buf_height)); 1846 1882 1847 1883 /* see if size of device driver's color buffer (window) has changed */ … … 1850 1886 return; 1851 1887 1852 ctx->NewState |= NEW_RASTER_OPS; /* to update scissor / window bounds*/1888 ctx->NewState |= NEW_RASTER_OPS; /* to update scissor / window bounds*/ 1853 1889 1854 1890 /* save buffer size */ … … 1872 1908 gl_alloc_alpha_buffers( ctx ); 1873 1909 } 1910 1911 #ifdef DIVE 1912 DiveResizeBuffers(ctx->Buffer->Width,ctx->Buffer->Height); 1913 #endif 1874 1914 } 1875 1915 … … 1892 1932 /* RGBA mode blending w/ Logic Op */ 1893 1933 if (ctx->Color.ColorLogicOpEnabled) { 1894 if (ctx->Driver.LogicOp1934 if (ctx->Driver.LogicOp 1895 1935 && (*ctx->Driver.LogicOp)( ctx, ctx->Color.LogicOp )) { 1896 /* Device driver can do logic, don't have to do it in software */1897 ctx->Color.SWLogicOpEnabled = GL_FALSE;1898 }1899 else {1900 /* Device driver can't do logic op so we do it in software */1901 ctx->Color.SWLogicOpEnabled = GL_TRUE;1902 }1936 /* Device driver can do logic, don't have to do it in software */ 1937 ctx->Color.SWLogicOpEnabled = GL_FALSE; 1938 } 1939 else { 1940 /* Device driver can't do logic op so we do it in software */ 1941 ctx->Color.SWLogicOpEnabled = GL_TRUE; 1942 } 1903 1943 } 1904 1944 else { 1905 /* no logic op */1906 if (ctx->Driver.LogicOp) {1945 /* no logic op */ 1946 if (ctx->Driver.LogicOp) { 1907 1947 (void) (*ctx->Driver.LogicOp)( ctx, GL_COPY ); 1908 1948 } 1909 ctx->Color.SWLogicOpEnabled = GL_FALSE;1949 ctx->Color.SWLogicOpEnabled = GL_FALSE; 1910 1950 } 1911 1951 } … … 1913 1953 /* CI mode Logic Op */ 1914 1954 if (ctx->Color.IndexLogicOpEnabled) { 1915 if (ctx->Driver.LogicOp1955 if (ctx->Driver.LogicOp 1916 1956 && (*ctx->Driver.LogicOp)( ctx, ctx->Color.LogicOp )) { 1917 /* Device driver can do logic, don't have to do it in software */1918 ctx->Color.SWLogicOpEnabled = GL_FALSE;1919 }1920 else {1921 /* Device driver can't do logic op so we do it in software */1922 ctx->Color.SWLogicOpEnabled = GL_TRUE;1923 }1957 /* Device driver can do logic, don't have to do it in software */ 1958 ctx->Color.SWLogicOpEnabled = GL_FALSE; 1959 } 1960 else { 1961 /* Device driver can't do logic op so we do it in software */ 1962 ctx->Color.SWLogicOpEnabled = GL_TRUE; 1963 } 1924 1964 } 1925 1965 else { 1926 /* no logic op */1927 if (ctx->Driver.LogicOp) {1966 /* no logic op */ 1967 if (ctx->Driver.LogicOp) { 1928 1968 (void) (*ctx->Driver.LogicOp)( ctx, GL_COPY ); 1929 1969 } 1930 ctx->Color.SWLogicOpEnabled = GL_FALSE;1970 ctx->Color.SWLogicOpEnabled = GL_FALSE; 1931 1971 } 1932 1972 } … … 1999 2039 2000 2040 if (ctx->Texture.Enabled || ctx->Hint.Fog == GL_NICEST) 2001 ctx->FogMode = FOG_FRAGMENT;2041 ctx->FogMode = FOG_FRAGMENT; 2002 2042 2003 2043 if ( ctx->Driver.GetParameteri && 2004 ctx->Driver.GetParameteri( ctx, DD_HAVE_HARDWARE_FOG ) )2005 ctx->FogMode = FOG_FRAGMENT;2044 ctx->Driver.GetParameteri( ctx, DD_HAVE_HARDWARE_FOG ) ) 2045 ctx->FogMode = FOG_FRAGMENT; 2006 2046 } 2007 2047 … … 2019 2059 ctx->RasterMask = 0; 2020 2060 2021 if (ctx->Color.AlphaEnabled) ctx->RasterMask |= ALPHATEST_BIT;2022 if (ctx->Color.BlendEnabled) ctx->RasterMask |= BLEND_BIT;2023 if (ctx->Depth.Test) ctx->RasterMask |= DEPTH_BIT;2024 if (ctx->FogMode==FOG_FRAGMENT) ctx->RasterMask |= FOG_BIT;2025 if (ctx->Color.SWLogicOpEnabled) ctx->RasterMask |= LOGIC_OP_BIT;2026 if (ctx->Scissor.Enabled) ctx->RasterMask |= SCISSOR_BIT;2027 if (ctx->Stencil.Enabled) ctx->RasterMask |= STENCIL_BIT;2028 if (ctx->Color.SWmasking) ctx->RasterMask |= MASKING_BIT;2061 if (ctx->Color.AlphaEnabled) ctx->RasterMask |= ALPHATEST_BIT; 2062 if (ctx->Color.BlendEnabled) ctx->RasterMask |= BLEND_BIT; 2063 if (ctx->Depth.Test) ctx->RasterMask |= DEPTH_BIT; 2064 if (ctx->FogMode==FOG_FRAGMENT) ctx->RasterMask |= FOG_BIT; 2065 if (ctx->Color.SWLogicOpEnabled) ctx->RasterMask |= LOGIC_OP_BIT; 2066 if (ctx->Scissor.Enabled) ctx->RasterMask |= SCISSOR_BIT; 2067 if (ctx->Stencil.Enabled) ctx->RasterMask |= STENCIL_BIT; 2068 if (ctx->Color.SWmasking) ctx->RasterMask |= MASKING_BIT; 2029 2069 2030 2070 if (ctx->Visual->SoftwareAlpha && ctx->Color.ColorMask[ACOMP] … … 2072 2112 { 2073 2113 fprintf(stderr, 2074 "%s: (0x%x) %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s\n",2075 msg,2076 state,2077 (state & NEW_LIGHTING) ? "lighting, " : "",2078 (state & NEW_RASTER_OPS) ? "raster-ops, " : "",2079 (state & NEW_TEXTURING) ? "texturing, " : "",2080 (state & NEW_POLYGON) ? "polygon, " : "",2081 (state & NEW_DRVSTATE0) ? "driver-0, " : "",2082 (state & NEW_DRVSTATE1) ? "driver-1, " : "",2083 (state & NEW_DRVSTATE2) ? "driver-2, " : "",2084 (state & NEW_DRVSTATE3) ? "driver-3, " : "",2085 (state & NEW_MODELVIEW) ? "modelview, " : "",2086 (state & NEW_PROJECTION) ? "projection, " : "",2087 (state & NEW_TEXTURE_MATRIX) ? "texture-matrix, " : "",2088 (state & NEW_USER_CLIP) ? "user-clip, " : "",2089 (state & NEW_TEXTURE_ENV) ? "texture-env, " : "",2090 (state & NEW_CLIENT_STATE) ? "client-state, " : "",2091 (state & NEW_FOG) ? "fog, " : "",2092 (state & NEW_NORMAL_TRANSFORM) ? "normal-transform, " : "",2093 (state & NEW_VIEWPORT) ? "viewport, " : "",2094 (state & NEW_TEXTURE_ENABLE) ? "texture-enable, " : "");2114 "%s: (0x%x) %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s\n", 2115 msg, 2116 state, 2117 (state & NEW_LIGHTING) ? "lighting, " : "", 2118 (state & NEW_RASTER_OPS) ? "raster-ops, " : "", 2119 (state & NEW_TEXTURING) ? "texturing, " : "", 2120 (state & NEW_POLYGON) ? "polygon, " : "", 2121 (state & NEW_DRVSTATE0) ? "driver-0, " : "", 2122 (state & NEW_DRVSTATE1) ? "driver-1, " : "", 2123 (state & NEW_DRVSTATE2) ? "driver-2, " : "", 2124 (state & NEW_DRVSTATE3) ? "driver-3, " : "", 2125 (state & NEW_MODELVIEW) ? "modelview, " : "", 2126 (state & NEW_PROJECTION) ? "projection, " : "", 2127 (state & NEW_TEXTURE_MATRIX) ? "texture-matrix, " : "", 2128 (state & NEW_USER_CLIP) ? "user-clip, " : "", 2129 (state & NEW_TEXTURE_ENV) ? "texture-env, " : "", 2130 (state & NEW_CLIENT_STATE) ? "client-state, " : "", 2131 (state & NEW_FOG) ? "fog, " : "", 2132 (state & NEW_NORMAL_TRANSFORM) ? "normal-transform, " : "", 2133 (state & NEW_VIEWPORT) ? "viewport, " : "", 2134 (state & NEW_TEXTURE_ENABLE) ? "texture-enable, " : ""); 2095 2135 } 2096 2136 … … 2098 2138 { 2099 2139 fprintf(stderr, 2100 "%s: (0x%x) %s%s%s%s%s%s%s%s%s%s%s\n",2101 msg,2102 flags,2103 (flags & ENABLE_TEX0) ? "tex-0, " : "",2104 (flags & ENABLE_TEX1) ? "tex-1, " : "",2105 (flags & ENABLE_LIGHT) ? "light, " : "",2106 (flags & ENABLE_FOG) ? "fog, " : "",2107 (flags & ENABLE_USERCLIP) ? "userclip, " : "",2108 (flags & ENABLE_TEXGEN0) ? "tex-gen-0, " : "",2109 (flags & ENABLE_TEXGEN1) ? "tex-gen-1, " : "",2110 (flags & ENABLE_TEXMAT0) ? "tex-mat-0, " : "",2111 (flags & ENABLE_TEXMAT1) ? "tex-mat-1, " : "",2112 (flags & ENABLE_NORMALIZE) ? "normalize, " : "",2113 (flags & ENABLE_RESCALE) ? "rescale, " : "");2140 "%s: (0x%x) %s%s%s%s%s%s%s%s%s%s%s\n", 2141 msg, 2142 flags, 2143 (flags & ENABLE_TEX0) ? "tex-0, " : "", 2144 (flags & ENABLE_TEX1) ? "tex-1, " : "", 2145 (flags & ENABLE_LIGHT) ? "light, " : "", 2146 (flags & ENABLE_FOG) ? "fog, " : "", 2147 (flags & ENABLE_USERCLIP) ? "userclip, " : "", 2148 (flags & ENABLE_TEXGEN0) ? "tex-gen-0, " : "", 2149 (flags & ENABLE_TEXGEN1) ? "tex-gen-1, " : "", 2150 (flags & ENABLE_TEXMAT0) ? "tex-mat-0, " : "", 2151 (flags & ENABLE_TEXMAT1) ? "tex-mat-1, " : "", 2152 (flags & ENABLE_NORMALIZE) ? "normalize, " : "", 2153 (flags & ENABLE_RESCALE) ? "rescale, " : ""); 2114 2154 } 2115 2155 … … 2136 2176 if (ctx->NewState & NEW_TEXTURE_ENV) { 2137 2177 if (ctx->Texture.Unit[0].EnvMode == ctx->Texture.Unit[0].LastEnvMode && 2138 ctx->Texture.Unit[1].EnvMode == ctx->Texture.Unit[1].LastEnvMode)2139 ctx->NewState &= ~NEW_TEXTURE_ENV;2178 ctx->Texture.Unit[1].EnvMode == ctx->Texture.Unit[1].LastEnvMode) 2179 ctx->NewState &= ~NEW_TEXTURE_ENV; 2140 2180 ctx->Texture.Unit[0].LastEnvMode = ctx->Texture.Unit[0].EnvMode; 2141 2181 ctx->Texture.Unit[1].LastEnvMode = ctx->Texture.Unit[1].EnvMode; … … 2146 2186 2147 2187 for (i=0; i < MAX_TEXTURE_UNITS; i++) { 2148 if (ctx->TextureMatrix[i].flags & MAT_DIRTY_ALL_OVER)2149 {2150 gl_matrix_analyze( &ctx->TextureMatrix[i] );2151 ctx->TextureMatrix[i].flags &= ~MAT_DIRTY_DEPENDENTS;2152 2153 if (ctx->Texture.Unit[i].Enabled &&2154 ctx->TextureMatrix[i].type != MATRIX_IDENTITY)2155 ctx->Enabled |= ENABLE_TEXMAT0 << i;2156 }2188 if (ctx->TextureMatrix[i].flags & MAT_DIRTY_ALL_OVER) 2189 { 2190 gl_matrix_analyze( &ctx->TextureMatrix[i] ); 2191 ctx->TextureMatrix[i].flags &= ~MAT_DIRTY_DEPENDENTS; 2192 2193 if (ctx->Texture.Unit[i].Enabled && 2194 ctx->TextureMatrix[i].type != MATRIX_IDENTITY) 2195 ctx->Enabled |= ENABLE_TEXMAT0 << i; 2196 } 2157 2197 } 2158 2198 } … … 2165 2205 2166 2206 for (i=0; i < MAX_TEXTURE_UNITS; i++) { 2167 if (ctx->Texture.Unit[i].Enabled) {2168 gl_update_texture_unit( ctx, &ctx->Texture.Unit[i] );2169 2170 ctx->Texture.ReallyEnabled |=2171 ctx->Texture.Unit[i].ReallyEnabled<<(i*4);2172 2173 if (ctx->Texture.Unit[i].GenFlags != 0) {2174 ctx->Enabled |= ENABLE_TEXGEN0 << i;2175 2176 if (ctx->Texture.Unit[i].GenFlags & TEXGEN_NEED_NORMALS)2177 {2178 ctx->Texture.NeedNormals = GL_TRUE;2179 ctx->Texture.NeedEyeCoords = GL_TRUE;2180 }2181 2182 if (ctx->Texture.Unit[i].GenFlags & TEXGEN_NEED_EYE_COORD)2183 {2184 ctx->Texture.NeedEyeCoords = GL_TRUE;2185 }2186 }2187 }2207 if (ctx->Texture.Unit[i].Enabled) { 2208 gl_update_texture_unit( ctx, &ctx->Texture.Unit[i] ); 2209 2210 ctx->Texture.ReallyEnabled |= 2211 ctx->Texture.Unit[i].ReallyEnabled<<(i*4); 2212 2213 if (ctx->Texture.Unit[i].GenFlags != 0) { 2214 ctx->Enabled |= ENABLE_TEXGEN0 << i; 2215 2216 if (ctx->Texture.Unit[i].GenFlags & TEXGEN_NEED_NORMALS) 2217 { 2218 ctx->Texture.NeedNormals = GL_TRUE; 2219 ctx->Texture.NeedEyeCoords = GL_TRUE; 2220 } 2221 2222 if (ctx->Texture.Unit[i].GenFlags & TEXGEN_NEED_EYE_COORD) 2223 { 2224 ctx->Texture.NeedEyeCoords = GL_TRUE; 2225 } 2226 } 2227 } 2188 2228 } 2189 2229 … … 2196 2236 2197 2237 if (ctx->NewState & NEW_RASTER_OPS) { 2198 update_pixel_logic(ctx);2199 update_pixel_masking(ctx);2200 update_fog_mode(ctx);2201 update_rasterflags(ctx);2202 if (ctx->Driver.Dither) {2203 (*ctx->Driver.Dither)( ctx, ctx->Color.DitherFlag );2204 }2205 2206 /* Check if incoming colors can be modified during rasterization */2207 if (ctx->Fog.Enabled ||2208 ctx->Texture.Enabled ||2209 ctx->Color.BlendEnabled ||2210 ctx->Color.SWmasking ||2211 ctx->Color.SWLogicOpEnabled) {2212 ctx->MutablePixels = GL_TRUE;2213 }2214 else {2215 ctx->MutablePixels = GL_FALSE;2216 }2217 2218 /* update scissor region */2219 2220 ctx->Buffer->Xmin = 0;2221 ctx->Buffer->Ymin = 0;2222 ctx->Buffer->Xmax = ctx->Buffer->Width-1;2223 ctx->Buffer->Ymax = ctx->Buffer->Height-1;2224 if (ctx->Scissor.Enabled) {2225 if (ctx->Scissor.X > ctx->Buffer->Xmin) {2226 ctx->Buffer->Xmin = ctx->Scissor.X;2227 }2228 if (ctx->Scissor.Y > ctx->Buffer->Ymin) {2229 ctx->Buffer->Ymin = ctx->Scissor.Y;2230 }2231 if (ctx->Scissor.X + ctx->Scissor.Width - 1 < ctx->Buffer->Xmax) {2232 ctx->Buffer->Xmax = ctx->Scissor.X + ctx->Scissor.Width - 1;2233 }2234 if (ctx->Scissor.Y + ctx->Scissor.Height - 1 < ctx->Buffer->Ymax) {2235 ctx->Buffer->Ymax = ctx->Scissor.Y + ctx->Scissor.Height - 1;2236 }2237 }2238 2239 /* The driver isn't managing the depth buffer.2240 */2241 if (ctx->Driver.AllocDepthBuffer == gl_alloc_depth_buffer)2242 {2243 if (ctx->Depth.Mask) {2244 switch (ctx->Depth.Func) {2245 case GL_LESS:2246 ctx->Driver.DepthTestSpan = gl_depth_test_span_less;2247 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_less;2248 break;2249 case GL_GREATER:2250 ctx->Driver.DepthTestSpan = gl_depth_test_span_greater;2251 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_greater;2252 break;2253 default:2254 ctx->Driver.DepthTestSpan = gl_depth_test_span_generic;2255 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_generic;2256 }2257 }2258 else {2259 ctx->Driver.DepthTestSpan = gl_depth_test_span_generic;2260 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_generic;2261 }2262 }2238 update_pixel_logic(ctx); 2239 update_pixel_masking(ctx); 2240 update_fog_mode(ctx); 2241 update_rasterflags(ctx); 2242 if (ctx->Driver.Dither) { 2243 (*ctx->Driver.Dither)( ctx, ctx->Color.DitherFlag ); 2244 } 2245 2246 /* Check if incoming colors can be modified during rasterization */ 2247 if (ctx->Fog.Enabled || 2248 ctx->Texture.Enabled || 2249 ctx->Color.BlendEnabled || 2250 ctx->Color.SWmasking || 2251 ctx->Color.SWLogicOpEnabled) { 2252 ctx->MutablePixels = GL_TRUE; 2253 } 2254 else { 2255 ctx->MutablePixels = GL_FALSE; 2256 } 2257 2258 /* update scissor region */ 2259 2260 ctx->Buffer->Xmin = 0; 2261 ctx->Buffer->Ymin = 0; 2262 ctx->Buffer->Xmax = ctx->Buffer->Width-1; 2263 ctx->Buffer->Ymax = ctx->Buffer->Height-1; 2264 if (ctx->Scissor.Enabled) { 2265 if (ctx->Scissor.X > ctx->Buffer->Xmin) { 2266 ctx->Buffer->Xmin = ctx->Scissor.X; 2267 } 2268 if (ctx->Scissor.Y > ctx->Buffer->Ymin) { 2269 ctx->Buffer->Ymin = ctx->Scissor.Y; 2270 } 2271 if (ctx->Scissor.X + ctx->Scissor.Width - 1 < ctx->Buffer->Xmax) { 2272 ctx->Buffer->Xmax = ctx->Scissor.X + ctx->Scissor.Width - 1; 2273 } 2274 if (ctx->Scissor.Y + ctx->Scissor.Height - 1 < ctx->Buffer->Ymax) { 2275 ctx->Buffer->Ymax = ctx->Scissor.Y + ctx->Scissor.Height - 1; 2276 } 2277 } 2278 2279 /* The driver isn't managing the depth buffer. 2280 */ 2281 if (ctx->Driver.AllocDepthBuffer == gl_alloc_depth_buffer) 2282 { 2283 if (ctx->Depth.Mask) { 2284 switch (ctx->Depth.Func) { 2285 case GL_LESS: 2286 ctx->Driver.DepthTestSpan = gl_depth_test_span_less; 2287 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_less; 2288 break; 2289 case GL_GREATER: 2290 ctx->Driver.DepthTestSpan = gl_depth_test_span_greater; 2291 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_greater; 2292 break; 2293 default: 2294 ctx->Driver.DepthTestSpan = gl_depth_test_span_generic; 2295 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_generic; 2296 } 2297 } 2298 else { 2299 ctx->Driver.DepthTestSpan = gl_depth_test_span_generic; 2300 ctx->Driver.DepthTestPixels = gl_depth_test_pixels_generic; 2301 } 2302 } 2263 2303 } 2264 2304 2265 2305 if (ctx->NewState & NEW_LIGHTING) { 2266 ctx->TriangleCaps &= ~(DD_TRI_LIGHT_TWOSIDE|DD_LIGHTING_CULL);2267 if (ctx->Light.Enabled) {2268 if (ctx->Light.Model.TwoSide)2269 ctx->TriangleCaps |= (DD_TRI_LIGHT_TWOSIDE|DD_LIGHTING_CULL);2270 gl_update_lighting(ctx);2271 }2306 ctx->TriangleCaps &= ~(DD_TRI_LIGHT_TWOSIDE|DD_LIGHTING_CULL); 2307 if (ctx->Light.Enabled) { 2308 if (ctx->Light.Model.TwoSide) 2309 ctx->TriangleCaps |= (DD_TRI_LIGHT_TWOSIDE|DD_LIGHTING_CULL); 2310 gl_update_lighting(ctx); 2311 } 2272 2312 } 2273 2313 } … … 2278 2318 2279 2319 if (ctx->NewState & NEW_POLYGON) { 2280 /* Setup CullBits bitmask */2281 if (ctx->Polygon.CullFlag) {2282 ctx->backface_sign = 1;2283 switch(ctx->Polygon.CullFaceMode) {2284 case GL_BACK:2285 if(ctx->Polygon.FrontFace==GL_CCW)2286 ctx->backface_sign = -1;2287 ctx->Polygon.CullBits = 1;2288 break;2289 case GL_FRONT:2290 if(ctx->Polygon.FrontFace!=GL_CCW)2291 ctx->backface_sign = -1;2292 ctx->Polygon.CullBits = 2;2293 break;2294 default:2295 case GL_FRONT_AND_BACK:2296 ctx->backface_sign = 0;2297 ctx->Polygon.CullBits = 0;2298 ctx->TriangleCaps |= DD_TRI_CULL_FRONT_BACK;2299 break;2300 }2301 }2302 else {2303 ctx->Polygon.CullBits = 3;2304 ctx->backface_sign = 0;2305 }2306 2307 /* Any Polygon offsets enabled? */2308 ctx->TriangleCaps &= ~DD_TRI_OFFSET;2309 2310 if (ctx->Polygon.OffsetPoint ||2311 ctx->Polygon.OffsetLine ||2312 ctx->Polygon.OffsetFill)2313 ctx->TriangleCaps |= DD_TRI_OFFSET;2314 2315 /* reset Z offsets now */2316 ctx->PointZoffset = 0.0;2317 ctx->LineZoffset = 0.0;2318 ctx->PolygonZoffset = 0.0;2320 /* Setup CullBits bitmask */ 2321 if (ctx->Polygon.CullFlag) { 2322 ctx->backface_sign = 1; 2323 switch(ctx->Polygon.CullFaceMode) { 2324 case GL_BACK: 2325 if(ctx->Polygon.FrontFace==GL_CCW) 2326 ctx->backface_sign = -1; 2327 ctx->Polygon.CullBits = 1; 2328 break; 2329 case GL_FRONT: 2330 if(ctx->Polygon.FrontFace!=GL_CCW) 2331 ctx->backface_sign = -1; 2332 ctx->Polygon.CullBits = 2; 2333 break; 2334 default: 2335 case GL_FRONT_AND_BACK: 2336 ctx->backface_sign = 0; 2337 ctx->Polygon.CullBits = 0; 2338 ctx->TriangleCaps |= DD_TRI_CULL_FRONT_BACK; 2339 break; 2340 } 2341 } 2342 else { 2343 ctx->Polygon.CullBits = 3; 2344 ctx->backface_sign = 0; 2345 } 2346 2347 /* Any Polygon offsets enabled? */ 2348 ctx->TriangleCaps &= ~DD_TRI_OFFSET; 2349 2350 if (ctx->Polygon.OffsetPoint || 2351 ctx->Polygon.OffsetLine || 2352 ctx->Polygon.OffsetFill) 2353 ctx->TriangleCaps |= DD_TRI_OFFSET; 2354 2355 /* reset Z offsets now */ 2356 ctx->PointZoffset = 0.0; 2357 ctx->LineZoffset = 0.0; 2358 ctx->PolygonZoffset = 0.0; 2319 2359 } 2320 2360 } 2321 2361 2322 2362 if (ctx->NewState & ~(NEW_CLIENT_STATE| 2323 NEW_DRIVER_STATE|NEW_USER_CLIP|2324 NEW_POLYGON))2363 NEW_DRIVER_STATE|NEW_USER_CLIP| 2364 NEW_POLYGON)) 2325 2365 gl_update_clipmask(ctx); 2326 2366 2327 2367 if (ctx->NewState & (NEW_LIGHTING| 2328 NEW_RASTER_OPS|2329 NEW_TEXTURING|2330 NEW_TEXTURE_ENABLE|2331 NEW_TEXTURE_ENV|2332 NEW_POLYGON|2333 NEW_DRVSTATE0|2334 NEW_DRVSTATE1|2335 NEW_DRVSTATE2|2336 NEW_DRVSTATE3|2337 NEW_USER_CLIP))2368 NEW_RASTER_OPS| 2369 NEW_TEXTURING| 2370 NEW_TEXTURE_ENABLE| 2371 NEW_TEXTURE_ENV| 2372 NEW_POLYGON| 2373 NEW_DRVSTATE0| 2374 NEW_DRVSTATE1| 2375 NEW_DRVSTATE2| 2376 NEW_DRVSTATE3| 2377 NEW_USER_CLIP)) 2338 2378 { 2339 2379 ctx->IndirectTriangles = ctx->TriangleCaps & ~ctx->Driver.TriangleCaps; … … 2341 2381 2342 2382 if (MESA_VERBOSE&VERBOSE_CULL) 2343 gl_print_tri_caps("initial indirect tris", ctx->IndirectTriangles);2383 gl_print_tri_caps("initial indirect tris", ctx->IndirectTriangles); 2344 2384 2345 2385 ctx->Driver.PointsFunc = NULL; … … 2359 2399 2360 2400 if (MESA_VERBOSE&VERBOSE_CULL) 2361 gl_print_tri_caps("indirect tris", ctx->IndirectTriangles);2401 gl_print_tri_caps("indirect tris", ctx->IndirectTriangles); 2362 2402 2363 2403 /* … … 2367 2407 */ 2368 2408 if (ctx->IndirectTriangles & DD_SW_RASTERIZE) { 2369 gl_set_point_function(ctx);2370 gl_set_line_function(ctx);2371 gl_set_triangle_function(ctx);2372 gl_set_quad_function(ctx);2373 2374 if ((ctx->IndirectTriangles &2375 (DD_TRI_SW_RASTERIZE|DD_QUAD_SW_RASTERIZE|DD_TRI_CULL)) ==2376 (DD_TRI_SW_RASTERIZE|DD_QUAD_SW_RASTERIZE|DD_TRI_CULL))2377 ctx->IndirectTriangles &= ~DD_TRI_CULL;2409 gl_set_point_function(ctx); 2410 gl_set_line_function(ctx); 2411 gl_set_triangle_function(ctx); 2412 gl_set_quad_function(ctx); 2413 2414 if ((ctx->IndirectTriangles & 2415 (DD_TRI_SW_RASTERIZE|DD_QUAD_SW_RASTERIZE|DD_TRI_CULL)) == 2416 (DD_TRI_SW_RASTERIZE|DD_QUAD_SW_RASTERIZE|DD_TRI_CULL)) 2417 ctx->IndirectTriangles &= ~DD_TRI_CULL; 2378 2418 } 2379 2419 2380 2420 if (MESA_VERBOSE&VERBOSE_CULL) 2381 gl_print_tri_caps("indirect tris 2", ctx->IndirectTriangles);2421 gl_print_tri_caps("indirect tris 2", ctx->IndirectTriangles); 2382 2422 2383 2423 gl_set_render_vb_function(ctx); … … 2388 2428 if (ctx->NewState & (NEW_MODELVIEW|NEW_PROJECTION)) { 2389 2429 if (ctx->NewState & NEW_MODELVIEW) { 2390 gl_matrix_analyze( &ctx->ModelView );2391 ctx->ProjectionMatrix.flags &= ~MAT_DIRTY_DEPENDENTS;2430 gl_matrix_analyze( &ctx->ModelView ); 2431 ctx->ProjectionMatrix.flags &= ~MAT_DIRTY_DEPENDENTS; 2392 2432 } 2393 2433 2394 2434 if (ctx->NewState & NEW_PROJECTION) { 2395 gl_matrix_analyze( &ctx->ProjectionMatrix );2396 ctx->ProjectionMatrix.flags &= ~MAT_DIRTY_DEPENDENTS;2397 2398 if (ctx->Transform.AnyClip) {2399 gl_update_userclip( ctx );2400 }2435 gl_matrix_analyze( &ctx->ProjectionMatrix ); 2436 ctx->ProjectionMatrix.flags &= ~MAT_DIRTY_DEPENDENTS; 2437 2438 if (ctx->Transform.AnyClip) { 2439 gl_update_userclip( ctx ); 2440 } 2401 2441 } 2402 2442 … … 2409 2449 */ 2410 2450 if ((ctx->Enabled & (ENABLE_POINT_ATTEN | ENABLE_LIGHT | ENABLE_FOG | 2411 ENABLE_TEXGEN0 | ENABLE_TEXGEN1)) &&2451 ENABLE_TEXGEN0 | ENABLE_TEXGEN1)) && 2412 2452 (ctx->NewState & (NEW_LIGHTING | 2413 2453 NEW_FOG | 2414 NEW_MODELVIEW |2415 NEW_PROJECTION |2416 NEW_TEXTURING |2417 NEW_RASTER_OPS |2418 NEW_USER_CLIP)))2454 NEW_MODELVIEW | 2455 NEW_PROJECTION | 2456 NEW_TEXTURING | 2457 NEW_RASTER_OPS | 2458 NEW_USER_CLIP))) 2419 2459 { 2420 2460 GLboolean oldcoord, oldnorm; … … 2425 2465 ctx->NeedNormals = (ctx->Light.Enabled || ctx->Texture.NeedNormals); 2426 2466 ctx->NeedEyeCoords = (ctx->FogMode == FOG_VERTEX || 2427 ctx->Point.Attenuated);2467 ctx->Point.Attenuated); 2428 2468 ctx->NeedEyeNormals = GL_FALSE; 2429 2469 2430 2470 if (ctx->Light.Enabled) { 2431 if (ctx->Light.Flags & LIGHT_POSITIONAL) {2432 /* Need length for attenuation */2433 if (!TEST_MAT_FLAGS( &ctx->ModelView, MAT_FLAGS_LENGTH_PRESERVING))2434 ctx->NeedEyeCoords = GL_TRUE;2435 } else if (ctx->Light.NeedVertices) {2436 /* Need angle for spot calculations */2437 if (!TEST_MAT_FLAGS( &ctx->ModelView, MAT_FLAGS_ANGLE_PRESERVING))2438 ctx->NeedEyeCoords = GL_TRUE;2439 }2440 ctx->NeedEyeNormals = ctx->NeedEyeCoords;2471 if (ctx->Light.Flags & LIGHT_POSITIONAL) { 2472 /* Need length for attenuation */ 2473 if (!TEST_MAT_FLAGS( &ctx->ModelView, MAT_FLAGS_LENGTH_PRESERVING)) 2474 ctx->NeedEyeCoords = GL_TRUE; 2475 } else if (ctx->Light.NeedVertices) { 2476 /* Need angle for spot calculations */ 2477 if (!TEST_MAT_FLAGS( &ctx->ModelView, MAT_FLAGS_ANGLE_PRESERVING)) 2478 ctx->NeedEyeCoords = GL_TRUE; 2479 } 2480 ctx->NeedEyeNormals = ctx->NeedEyeCoords; 2441 2481 } 2442 2482 if (ctx->Texture.Enabled || ctx->RenderMode==GL_FEEDBACK) { 2443 if (ctx->Texture.NeedEyeCoords) ctx->NeedEyeCoords = GL_TRUE;2444 if (ctx->Texture.NeedNormals)2445 ctx->NeedNormals = ctx->NeedEyeNormals = GL_TRUE;2483 if (ctx->Texture.NeedEyeCoords) ctx->NeedEyeCoords = GL_TRUE; 2484 if (ctx->Texture.NeedNormals) 2485 ctx->NeedNormals = ctx->NeedEyeNormals = GL_TRUE; 2446 2486 } 2447 2487 … … 2449 2489 2450 2490 if (ctx->NeedEyeCoords) 2451 ctx->vb_proj_matrix = &ctx->ProjectionMatrix;2491 ctx->vb_proj_matrix = &ctx->ProjectionMatrix; 2452 2492 2453 2493 if (ctx->Light.Enabled) { 2454 gl_update_lighting_function(ctx);2455 2456 if ( (ctx->NewState & NEW_LIGHTING) ||2457 ((ctx->NewState & (NEW_MODELVIEW| NEW_PROJECTION)) &&2458 !ctx->NeedEyeCoords) ||2459 oldcoord != ctx->NeedEyeCoords ||2460 oldnorm != ctx->NeedEyeNormals) {2461 gl_compute_light_positions(ctx);2462 }2463 2464 ctx->rescale_factor = 1.0F;2465 2466 if (ctx->ModelView.flags & (MAT_FLAG_UNIFORM_SCALE |2467 MAT_FLAG_GENERAL_SCALE |2468 MAT_FLAG_GENERAL_3D |2469 MAT_FLAG_GENERAL) )2470 2471 {2472 GLfloat *m = ctx->ModelView.inv;2473 GLfloat f = m[2]*m[2] + m[6]*m[6] + m[10]*m[10];2474 if (f > 1e-12 && (f-1)*(f-1) > 1e-12)2475 ctx->rescale_factor = 1.0/GL_SQRT(f);2476 }2494 gl_update_lighting_function(ctx); 2495 2496 if ( (ctx->NewState & NEW_LIGHTING) || 2497 ((ctx->NewState & (NEW_MODELVIEW| NEW_PROJECTION)) && 2498 !ctx->NeedEyeCoords) || 2499 oldcoord != ctx->NeedEyeCoords || 2500 oldnorm != ctx->NeedEyeNormals) { 2501 gl_compute_light_positions(ctx); 2502 } 2503 2504 ctx->rescale_factor = 1.0F; 2505 2506 if (ctx->ModelView.flags & (MAT_FLAG_UNIFORM_SCALE | 2507 MAT_FLAG_GENERAL_SCALE | 2508 MAT_FLAG_GENERAL_3D | 2509 MAT_FLAG_GENERAL) ) 2510 2511 { 2512 GLfloat *m = ctx->ModelView.inv; 2513 GLfloat f = m[2]*m[2] + m[6]*m[6] + m[10]*m[10]; 2514 if (f > 1e-12 && (f-1)*(f-1) > 1e-12) 2515 ctx->rescale_factor = 1.0/GL_SQRT(f); 2516 } 2477 2517 } 2478 2518 -
trunk/src/opengl/mesa/context.h
r2938 r2962 1 /* $Id: context.h,v 1. 1 2000-02-29 00:48:27 sandervlExp $ */1 /* $Id: context.h,v 1.2 2000-03-01 18:49:25 jeroen Exp $ */ 2 2 3 3 /* … … 33 33 34 34 35 #include "types.h" 36 37 35 /* #include "types.h" */ 38 36 39 37 #ifdef THREADS -
trunk/src/opengl/mesa/copypix.c
r2938 r2962 1 /* $Id: copypix.c,v 1. 1 2000-02-29 00:50:01 sandervlExp $ */1 /* $Id: copypix.c,v 1.2 2000-03-01 18:49:25 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "copypix.h" … … 46 47 #include "span.h" 47 48 #include "stencil.h" 48 #include "types.h"49 49 #include "zoom.h" 50 50 #endif -
trunk/src/opengl/mesa/ddsample.c
r2938 r2962 1 /* $Id: ddsample.c,v 1. 1 2000-02-29 00:50:01 sandervlExp $ */1 /* $Id: ddsample.c,v 1.2 2000-03-01 18:49:26 jeroen Exp $ */ 2 2 3 3 /* … … 63 63 #endif 64 64 #include "GL/FooMesa.h" 65 #include "types.h" 65 66 #include "context.h" 66 67 #include "matrix.h" 67 #include "types.h"68 68 #include "vb.h" 69 69 … … 76 76 struct foo_mesa_visual { 77 77 GLvisual *gl_visual; 78 GLboolean db_flag; /* double buffered? */79 GLboolean rgb_flag; /* RGB mode? */80 GLuint depth; /* bits per pixel (1, 8, 24, etc) */78 GLboolean db_flag; /* double buffered? */ 79 GLboolean rgb_flag; /* RGB mode? */ 80 GLuint depth; /* bits per pixel (1, 8, 24, etc) */ 81 81 }; 82 82 -
trunk/src/opengl/mesa/depth.c
r2938 r2962 1 /* $Id: depth.c,v 1. 1 2000-02-29 00:50:02 sandervlExp $ */1 /* $Id: depth.c,v 1.2 2000-03-01 18:49:26 jeroen Exp $ */ 2 2 3 3 /* … … 43 43 #include "GL/xf86glx.h" 44 44 #endif 45 #include "types.h" 45 46 #include "context.h" 46 47 #include "enums.h" 47 48 #include "depth.h" 48 49 #include "macros.h" 49 #include "types.h"50 50 #endif 51 51 -
trunk/src/opengl/mesa/dlist.c
r2938 r2962 1 /* $Id: dlist.c,v 1. 1 2000-02-29 00:50:02 sandervlExp $ */1 /* $Id: dlist.c,v 1.2 2000-03-01 18:49:26 jeroen Exp $ */ 2 2 3 3 /* … … 48 48 #include "clip.h" 49 49 #include "colortab.h" 50 #include "types.h" 50 51 #include "context.h" 51 52 #include "copypix.h" … … 81 82 #include "teximage.h" 82 83 #include "texstate.h" 83 #include "types.h"84 84 #include "varray.h" 85 85 #include "vb.h" -
trunk/src/opengl/mesa/drawpix.c
r2938 r2962 1 /* $Id: drawpix.c,v 1. 1 2000-02-29 00:50:02 sandervlExp $ */1 /* $Id: drawpix.c,v 1.2 2000-03-01 18:49:27 jeroen Exp $ */ 2 2 3 3 /* … … 39 39 #include "GL/xf86glx.h" 40 40 #endif 41 #include "types.h" 41 42 #include "context.h" 42 43 #include "drawpix.h" … … 48 49 #include "span.h" 49 50 #include "stencil.h" 50 #include "types.h"51 51 #include "zoom.h" 52 52 #endif -
trunk/src/opengl/mesa/enable.c
r2938 r2962 1 /* $Id: enable.c,v 1. 1 2000-02-29 00:50:02 sandervlExp $ */1 /* $Id: enable.c,v 1.2 2000-03-01 18:49:27 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "enable.h" … … 44 45 #include "mmath.h" 45 46 #include "simple_list.h" 46 #include "types.h"47 47 #include "vbfill.h" 48 48 #include "xform.h" -
trunk/src/opengl/mesa/eval.c
r2938 r2962 1 /* $Id: eval.c,v 1. 1 2000-02-29 00:50:03 sandervlExp $ */1 /* $Id: eval.c,v 1.2 2000-03-01 18:49:28 jeroen Exp $ */ 2 2 3 3 /* … … 49 49 #include "GL/xf86glx.h" 50 50 #endif 51 #include "types.h" 51 52 #include "context.h" 52 53 #include "eval.h" -
trunk/src/opengl/mesa/extensions.c
r2938 r2962 1 /* $Id: extensions.c,v 1. 1 2000-02-29 00:50:03 sandervlExp $ */1 /* $Id: extensions.c,v 1.2 2000-03-01 18:49:28 jeroen Exp $ */ 2 2 3 3 /* … … 31 31 #include "GL/xf86glx.h" 32 32 #endif 33 #include "types.h" 33 34 #include "context.h" 34 35 #include "extensions.h" 35 36 #include "simple_list.h" 36 #include "types.h"37 37 38 38 -
trunk/src/opengl/mesa/feedback.c
r2938 r2962 1 /* $Id: feedback.c,v 1. 1 2000-02-29 00:50:03 sandervlExp $ */1 /* $Id: feedback.c,v 1.2 2000-03-01 18:49:28 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #include "GL/xf86glx.h" 39 39 #endif 40 #include "types.h" 40 41 #include "context.h" 41 42 #include "enums.h" … … 43 44 #include "macros.h" 44 45 #include "mmath.h" 45 #include "types.h"46 46 #include "triangle.h" 47 47 #endif … … 49 49 50 50 51 #define FB_3D 0x0152 #define FB_4D 0x0253 #define FB_INDEX 0x0454 #define FB_COLOR 0x0855 #define FB_TEXTURE 0X1051 #define FB_3D 0x01 52 #define FB_4D 0x02 53 #define FB_INDEX 0x04 54 #define FB_COLOR 0x08 55 #define FB_TEXTURE 0X10 56 56 57 57 -
trunk/src/opengl/mesa/fog.c
r2938 r2962 1 /* $Id: fog.c,v 1. 1 2000-02-29 00:50:04 sandervlExp $ */1 /* $Id: fog.c,v 1.2 2000-03-01 18:49:28 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "fog.h" 41 42 #include "macros.h" 42 43 #include "mmath.h" 43 #include "types.h"44 44 #include "xform.h" 45 45 #endif -
trunk/src/opengl/mesa/get.c
r2938 r2962 1 /* $Id: get.c,v 1. 1 2000-02-29 00:50:04 sandervlExp $ */1 /* $Id: get.c,v 1.2 2000-03-01 18:49:29 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #include "GL/xf86glx.h" 39 39 #endif 40 #include "types.h" 40 41 #include "context.h" 41 42 #include "enable.h" … … 45 46 #include "macros.h" 46 47 #include "mmath.h" 47 #include "types.h"48 48 #include "vb.h" 49 49 #endif … … 51 51 52 52 53 #define FLOAT_TO_BOOL(X) ( (X)==0.0F ? GL_FALSE : GL_TRUE )54 #define INT_TO_BOOL(I) ( (I)==0 ? GL_FALSE : GL_TRUE )55 #define ENUM_TO_BOOL(E) ( (E)==0 ? GL_FALSE : GL_TRUE )53 #define FLOAT_TO_BOOL(X) ( (X)==0.0F ? GL_FALSE : GL_TRUE ) 54 #define INT_TO_BOOL(I) ( (I)==0 ? GL_FALSE : GL_TRUE ) 55 #define ENUM_TO_BOOL(E) ( (E)==0 ? GL_FALSE : GL_TRUE ) 56 56 57 57 #ifdef SPECIALCAST -
trunk/src/opengl/mesa/glmisc.c
r2938 r2962 1 /* $Id: glmisc.c,v 1. 1 2000-02-29 00:50:04 sandervlExp $ */1 /* $Id: glmisc.c,v 1.2 2000-03-01 18:49:29 jeroen Exp $ */ 2 2 3 3 /* … … 56 56 { 57 57 ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx, "glClearIndex"); 58 58 59 ctx->Color.ClearIndex = (GLuint) c; 59 60 if (!ctx->Visual->RGBAflag) { … … 83 84 } 84 85 } 85 86 87 88 86 89 87 /* … … 126 124 gl_mask_rgba_span( ctx, width, x, y, rgba ); 127 125 (*ctx->Driver.WriteRGBASpan)( ctx, width, x, y, 128 (const GLubyte (*)[4])rgba, NULL );126 (const GLubyte (*)[4])rgba, NULL ); 129 127 } 130 128 } … … 153 151 static void clear_color_buffers( GLcontext *ctx ) 154 152 { 155 156 153 if (ctx->RasterMask & MULTI_DRAW_BIT) { 157 154 GLuint bufferBit; … … 200 197 else { 201 198 /* normal case: clear exactly one color buffer */ 202 199 #ifndef DIVE 203 200 if (ctx->Color.SWmasking) { 204 201 clear_color_buffer_with_masking( ctx ); … … 213 210 x, y, width, height ); 214 211 } 212 #endif 215 213 } 216 214 } … … 281 279 /* Don't compile into display list */ 282 280 ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx, "glFinish"); 281 283 282 if (ctx->Driver.Finish) { 284 283 (*ctx->Driver.Finish)( ctx ); … … 286 285 } 287 286 288 289 290 287 void gl_Flush( GLcontext *ctx ) 291 288 { 292 289 /* Don't compile into display list */ 293 290 ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx, "glFlush"); 291 294 292 if (ctx->Driver.Flush) { 295 293 (*ctx->Driver.Flush)( ctx ); 296 294 } 297 295 } 298 299 300 296 301 297 GLboolean gl_Hint( GLcontext *ctx, GLenum target, GLenum mode ) … … 337 333 case GL_ALWAYS_FAST_HINT_PGI: 338 334 if (mode) { 339 ctx->Hint.AllowDrawWin = GL_TRUE;340 ctx->Hint.AllowDrawSpn = GL_FALSE;341 ctx->Hint.AllowDrawMem = GL_FALSE;335 ctx->Hint.AllowDrawWin = GL_TRUE; 336 ctx->Hint.AllowDrawSpn = GL_FALSE; 337 ctx->Hint.AllowDrawMem = GL_FALSE; 342 338 } else { 343 ctx->Hint.AllowDrawWin = GL_TRUE;344 ctx->Hint.AllowDrawSpn = GL_TRUE;345 ctx->Hint.AllowDrawMem = GL_TRUE;339 ctx->Hint.AllowDrawWin = GL_TRUE; 340 ctx->Hint.AllowDrawSpn = GL_TRUE; 341 ctx->Hint.AllowDrawMem = GL_TRUE; 346 342 } 347 343 break; … … 386 382 return GL_TRUE; 387 383 } 388 389 390 384 391 385 void gl_DrawBuffer( GLcontext *ctx, GLenum mode ) … … 538 532 } 539 533 540 541 542 534 void gl_ReadBuffer( GLcontext *ctx, GLenum mode ) 543 535 { -
trunk/src/opengl/mesa/hash.c
r2938 r2962 1 /* $Id: hash.c,v 1. 1 2000-02-29 00:50:04 sandervlExp $ */1 /* $Id: hash.c,v 1.2 2000-03-01 18:49:29 jeroen Exp $ */ 2 2 3 3 /* … … 85 85 struct HashEntry *entry = table->Table[i]; 86 86 while (entry) { 87 struct HashEntry *next = entry->Next;88 FREE(entry);89 entry = next;87 struct HashEntry *next = entry->Next; 88 FREE(entry); 89 entry = next; 90 90 } 91 91 } … … 106 106 const struct HashEntry *entry; 107 107 108 assert(table);108 /* assert(table); 109 109 assert(key); 110 110 */ 111 111 pos = key & (TABLE_SIZE-1); 112 112 entry = table->Table[pos]; 113 113 while (entry) { 114 114 if (entry->Key == key) { 115 return entry->Data;115 return entry->Data; 116 116 } 117 117 entry = entry->Next; … … 146 146 if (entry->Key == key) { 147 147 /* replace entry's data */ 148 entry->Data = data;149 return;148 entry->Data = data; 149 return; 150 150 } 151 151 entry = entry->Next; … … 188 188 } 189 189 FREE(entry); 190 return;190 return; 191 191 } 192 192 prev = entry; … … 225 225 const struct HashEntry *entry = table->Table[i]; 226 226 while (entry) { 227 printf("%u %p\n", entry->Key, entry->Data);228 entry = entry->Next;227 printf("%u %p\n", entry->Key, entry->Data); 228 entry = entry->Next; 229 229 } 230 230 } … … 252 252 GLuint key; 253 253 for (key=0; key!=maxKey; key++) { 254 if (HashLookup(table, key)) {255 /* darn, this key is already in use */256 freeCount = 0;257 freeStart = key+1;258 }259 else {260 /* this key not in use, check if we've found enough */261 freeCount++;262 if (freeCount == numKeys) {263 return freeStart;264 }265 }254 if (HashLookup(table, key)) { 255 /* darn, this key is already in use */ 256 freeCount = 0; 257 freeStart = key+1; 258 } 259 else { 260 /* this key not in use, check if we've found enough */ 261 freeCount++; 262 if (freeCount == numKeys) { 263 return freeStart; 264 } 265 } 266 266 } 267 267 /* cannot allocate a block of numKeys consecutive keys */ -
trunk/src/opengl/mesa/image.c
r2938 r2962 1 /* $Id: image.c,v 1. 1 2000-02-29 00:50:05 sandervlExp $ */1 /* $Id: image.c,v 1.2 2000-03-01 18:49:30 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "image.h" … … 42 43 #include "mmath.h" 43 44 #include "pixel.h" 44 #include "types.h"45 45 #endif 46 46 -
trunk/src/opengl/mesa/initterm.cpp
r2938 r2962 1 /* $Id: initterm.cpp,v 1. 1 2000-02-29 00:50:05 sandervlExp $ */1 /* $Id: initterm.cpp,v 1.2 2000-03-01 18:49:30 jeroen Exp $ */ 2 2 3 3 /* … … 40 40 void CDECL _ctordtorTerm( void ); 41 41 } 42 43 #ifdef DIVE 44 void _System DiveGlobalInitialize(void); 45 void _System DiveGlobalTerminate(void); 46 #endif 42 47 43 48 /*-------------------------------------------------------------------*/ … … 87 92 if(rc) 88 93 return 0UL; 94 95 #ifdef DIVE 96 /* Dive specific - get capabilities */ 97 DiveGlobalInitialize(); 98 #endif 89 99 break; 90 100 … … 106 116 static void APIENTRY cleanup(ULONG ulReason) 107 117 { 118 DiveGlobalTerminate(); 119 108 120 _ctordtorTerm(); 109 121 -
trunk/src/opengl/mesa/light.c
r2938 r2962 1 /* $Id: light.c,v 1. 1 2000-02-29 00:50:05 sandervlExp $ */1 /* $Id: light.c,v 1.2 2000-03-01 18:49:31 jeroen Exp $ */ 2 2 3 3 /* … … 42 42 #include "GL/xf86glx.h" 43 43 #endif 44 #include "types.h" 44 45 #include "context.h" 45 46 #include "enums.h" … … 49 50 #include "mmath.h" 50 51 #include "simple_list.h" 51 #include "types.h"52 52 #include "vb.h" 53 53 #include "xform.h" -
trunk/src/opengl/mesa/lines.c
r2938 r2962 1 /* $Id: lines.c,v 1. 1 2000-02-29 00:50:06 sandervlExp $ */1 /* $Id: lines.c,v 1.2 2000-03-01 18:49:31 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "depth.h" … … 45 46 #include "pb.h" 46 47 #include "texstate.h" 47 #include "types.h"48 48 #include "vb.h" 49 49 #endif -
trunk/src/opengl/mesa/logic.c
r2938 r2962 1 /* $Id: logic.c,v 1. 1 2000-02-29 00:50:06 sandervlExp $ */1 /* $Id: logic.c,v 1.2 2000-03-01 18:49:31 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #endif 39 39 #include "alphabuf.h" 40 #include "types.h" 40 41 #include "context.h" 41 42 #include "logic.h" … … 43 44 #include "pb.h" 44 45 #include "span.h" 45 #include "types.h"46 46 #endif 47 47 -
trunk/src/opengl/mesa/makefile
r2961 r2962 1 # $Id: makefile,v 1. 2 2000-03-01 14:50:16 sandervlExp $1 # $Id: makefile,v 1.3 2000-03-01 18:49:31 jeroen Exp $ 2 2 # 3 3 # PD-Win32 … … 17 17 !endif 18 18 19 #MESADEFS=-DNO_PARALLEL -DNO_STEREO -DGL_MESA_window_pos -DTHREADS -DDDRAW \ 20 MESADEFS=-DNO_PARALLEL -DNO_STEREO -DGL_MESA_window_pos -DTHREADS \ 21 -DUSE_X86_ASM_NOT -DUSE_MMX_ASM_NOT -DUSE_3DNOW_ASM_NOT 19 MESADEFS=-DNO_PARALLEL -DNO_STEREO -DGL_MESA_window_pos -DTHREADS -DDIVE \ 20 -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM_NOT 22 21 23 22 CFLAGS = -I. -IGL $(CFLAGS_WIN32APP) -I$(PDWIN32_INCLUDE) -I..\glut $(MESADEFS) /Tdp /Wcnd- … … 102 101 texture.obj \ 103 102 mthreads.obj \ 104 wmesa.obj 103 wmesa.obj \ 104 x86a.obj \ 105 vertex.obj \ 106 mmx_blend.obj \ 107 osmesa.obj \ 108 resource.obj \ 109 mesadive.obj \ 110 internal.obj 111 112 resource.asm: $(TARGET).rc 113 $(RC) $(RCFLAGS) -o resource.asm $(TARGET).rc 105 114 106 115 $(TARGET).DLL: $(OBJS) $(TARGET).lrf $(TARGET).def … … 118 127 $(RTLLIB_O) 119 128 OS2386.LIB 129 MMPM2.LIB 120 130 $(TARGET).def 121 131 <<keep … … 137 147 138 148 clean: 139 $(RM) *.obj 140 $(RM) *.dll 141 $(RM) *.lib 149 $(RM) *.obj 150 $(RM) *.dll 151 $(RM) *.lib 142 152 $(RM) *.lrf 143 153 $(RM) resource.asm -
trunk/src/opengl/mesa/masking.c
r2938 r2962 1 /* $Id: masking.c,v 1. 1 2000-02-29 00:50:06 sandervlExp $ */1 /* $Id: masking.c,v 1.2 2000-03-01 18:49:31 jeroen Exp $ */ 2 2 3 3 /* … … 44 44 #endif 45 45 #include "alphabuf.h" 46 #include "types.h" 46 47 #include "context.h" 47 48 #include "enums.h" … … 50 51 #include "pb.h" 51 52 #include "span.h" 52 #include "types.h"53 53 #endif 54 54 -
trunk/src/opengl/mesa/matrix.c
r2938 r2962 1 /* $Id: matrix.c,v 1. 1 2000-02-29 00:50:06 sandervlExp $ */1 /* $Id: matrix.c,v 1.2 2000-03-01 18:49:31 jeroen Exp $ */ 2 2 3 3 /* … … 52 52 #include "GL/xf86glx.h" 53 53 #endif 54 #include "types.h" 54 55 #include "context.h" 55 56 #include "enums.h" … … 57 58 #include "matrix.h" 58 59 #include "mmath.h" 59 #include "types.h"60 60 #endif 61 61 -
trunk/src/opengl/mesa/mmx.h
r2938 r2962 1 /* $Id: mmx.h,v 1. 1 2000-02-29 00:48:34 sandervlExp $ */1 /* $Id: mmx.h,v 1.2 2000-03-01 18:49:32 jeroen Exp $ */ 2 2 3 3 /* … … 33 33 34 34 35 extern void 35 extern void __cdecl 36 36 gl_mmx_blend_transparency( GLcontext *ctx, GLuint n, const GLubyte mask[], 37 37 GLubyte rgba[][4], const GLubyte dest[][4] ); -
trunk/src/opengl/mesa/pipeline.c
r2938 r2962 1 /* $Id: pipeline.c,v 1. 1 2000-02-29 00:50:07 sandervlExp $ */1 /* $Id: pipeline.c,v 1.2 2000-03-01 18:49:33 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 #include "bbox.h" 37 37 #include "clip.h" 38 #include "types.h" 38 39 #include "context.h" 39 40 #include "cva.h" … … 48 49 #include "shade.h" 49 50 #include "stages.h" 50 #include "types.h"51 51 #include "translate.h" 52 52 #include "xform.h" -
trunk/src/opengl/mesa/pixel.c
r2938 r2962 1 /* $Id: pixel.c,v 1. 1 2000-02-29 00:50:08 sandervlExp $ */1 /* $Id: pixel.c,v 1.2 2000-03-01 18:49:33 jeroen Exp $ */ 2 2 3 3 /* … … 44 44 #include "GL/xf86glx.h" 45 45 #endif 46 #include "types.h" 46 47 #include "context.h" 47 48 #include "macros.h" 48 49 #include "pixel.h" 49 #include "types.h"50 50 #endif 51 51 -
trunk/src/opengl/mesa/pointers.c
r2938 r2962 1 /* $Id: pointers.c,v 1. 1 2000-02-29 00:50:08 sandervlExp $ */1 /* $Id: pointers.c,v 1.2 2000-03-01 18:49:34 jeroen Exp $ */ 2 2 3 3 /* … … 45 45 #include "blend.h" 46 46 #include "clip.h" 47 #include "types.h" 47 48 #include "context.h" 48 49 #include "colortab.h" … … 76 77 #include "texobj.h" 77 78 #include "texstate.h" 78 #include "types.h"79 79 #include "varray.h" 80 80 #include "vbfill.h" -
trunk/src/opengl/mesa/points.c
r2938 r2962 1 /* $Id: points.c,v 1. 1 2000-02-29 00:50:08 sandervlExp $ */1 /* $Id: points.c,v 1.2 2000-03-01 18:49:34 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 #include "GL/xf86glx.h" 37 37 #endif 38 #include "types.h" 38 39 #include "context.h" 39 40 #include "feedback.h" … … 44 45 #include "span.h" 45 46 #include "texstate.h" 46 #include "types.h"47 47 #include "vb.h" 48 48 #include "mmath.h" -
trunk/src/opengl/mesa/polygon.c
r2938 r2962 1 /* $Id: polygon.c,v 1. 1 2000-02-29 00:50:09 sandervlExp $ */1 /* $Id: polygon.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 39 39 #include "GL/xf86glx.h" 40 40 #endif 41 #include "types.h" 41 42 #include "context.h" 42 43 #include "image.h" … … 44 45 #include "macros.h" 45 46 #include "polygon.h" 46 #include "types.h"47 47 #endif 48 48 -
trunk/src/opengl/mesa/rastpos.c
r2938 r2962 1 /* $Id: rastpos.c,v 1. 1 2000-02-29 00:50:09 sandervlExp $ */1 /* $Id: rastpos.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 39 39 #endif 40 40 #include "clip.h" 41 #include "types.h" 41 42 #include "context.h" 42 43 #include "feedback.h" … … 47 48 #include "rastpos.h" 48 49 #include "shade.h" 49 #include "types.h"50 50 #include "xform.h" 51 51 #endif -
trunk/src/opengl/mesa/readpix.c
r2938 r2962 1 /* $Id: readpix.c,v 1. 1 2000-02-29 00:50:09 sandervlExp $ */1 /* $Id: readpix.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 40 40 #endif 41 41 #include "alphabuf.h" 42 #include "types.h" 42 43 #include "context.h" 43 44 #include "depth.h" … … 49 50 #include "span.h" 50 51 #include "stencil.h" 51 #include "types.h"52 52 #endif 53 53 … … 60 60 static void read_index_pixels( GLcontext *ctx, 61 61 GLint x, GLint y, 62 GLsizei width, GLsizei height,62 GLsizei width, GLsizei height, 63 63 GLenum type, GLvoid *pixels, 64 64 const struct gl_pixelstore_attrib *packing ) -
trunk/src/opengl/mesa/rect.c
r2938 r2962 1 /* $Id: rect.c,v 1. 1 2000-02-29 00:50:09 sandervlExp $ */1 /* $Id: rect.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "macros.h" -
trunk/src/opengl/mesa/scissor.c
r2938 r2962 1 /* $Id: scissor.c,v 1. 1 2000-02-29 00:50:09 sandervlExp $ */1 /* $Id: scissor.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #include "GL/xf86glx.h" 39 39 #endif 40 #include "types.h" 40 41 #include "context.h" 41 42 #include "macros.h" 42 43 #include "scissor.h" 43 #include "types.h"44 44 #endif 45 45 -
trunk/src/opengl/mesa/stages.c
r2938 r2962 1 /* $Id: stages.c,v 1. 1 2000-02-29 00:50:10 sandervlExp $ */1 /* $Id: stages.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 #include "bbox.h" 37 37 #include "clip.h" 38 #include "types.h" 38 39 #include "context.h" 39 40 #include "cva.h" … … 44 45 #include "shade.h" 45 46 #include "stages.h" 46 #include "types.h"47 47 #include "translate.h" 48 48 #include "vbcull.h" -
trunk/src/opengl/mesa/stencil.c
r2938 r2962 1 /* $Id: stencil.c,v 1. 1 2000-02-29 00:50:10 sandervlExp $ */1 /* $Id: stencil.c,v 1.2 2000-03-01 18:49:35 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "macros.h" 41 42 #include "pb.h" 42 43 #include "stencil.h" 43 #include "types.h"44 44 #include "enable.h" 45 45 #endif -
trunk/src/opengl/mesa/teximage.c
r2938 r2962 1 /* $Id: teximage.c,v 1. 1 2000-02-29 00:50:11 sandervlExp $ */1 /* $Id: teximage.c,v 1.2 2000-03-01 18:49:36 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "image.h" … … 44 45 #include "teximage.h" 45 46 #include "texstate.h" 46 #include "types.h"47 47 #endif 48 48 -
trunk/src/opengl/mesa/texobj.c
r2938 r2962 1 /* $Id: texobj.c,v 1. 1 2000-02-29 00:50:11 sandervlExp $ */1 /* $Id: texobj.c,v 1.2 2000-03-01 18:49:36 jeroen Exp $ */ 2 2 3 3 /* … … 39 39 #include "GL/xf86glx.h" 40 40 #endif 41 #include "types.h" 41 42 #include "context.h" 42 43 #include "enums.h" … … 46 47 #include "texstate.h" 47 48 #include "texobj.h" 48 #include "types.h"49 49 #endif 50 50 -
trunk/src/opengl/mesa/texstate.c
r2938 r2962 1 /* $Id: texstate.c,v 1. 1 2000-02-29 00:50:12 sandervlExp $ */1 /* $Id: texstate.c,v 1.2 2000-03-01 18:49:36 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 #include "GL/xf86glx.h" 37 37 #endif 38 #include "types.h" 38 39 #include "context.h" 39 40 #include "enums.h" … … 44 45 #include "texstate.h" 45 46 #include "texture.h" 46 #include "types.h"47 47 #include "xform.h" 48 48 #endif -
trunk/src/opengl/mesa/texture.c
r2938 r2962 1 /* $Id: texture.c,v 1. 1 2000-02-29 00:50:12 sandervlExp $ */1 /* $Id: texture.c,v 1.2 2000-03-01 18:49:37 jeroen Exp $ */ 2 2 3 3 /* … … 36 36 #include "GL/xf86glx.h" 37 37 #endif 38 #include "types.h" 38 39 #include "context.h" 39 40 #include "macros.h" … … 41 42 #include "pb.h" 42 43 #include "texture.h" 43 #include "types.h"44 44 #include "xform.h" 45 45 #endif -
trunk/src/opengl/mesa/triangle.c
r2938 r2962 1 /* $Id: triangle.c,v 1. 1 2000-02-29 00:50:12 sandervlExp $ */1 /* $Id: triangle.c,v 1.2 2000-03-01 18:49:38 jeroen Exp $ */ 2 2 3 3 /* … … 45 45 #include "GL/xf86glx.h" 46 46 #endif 47 #include "types.h" 47 48 #include "context.h" 48 49 #include "depth.h" … … 53 54 #include "texstate.h" 54 55 #include "triangle.h" 55 #include "types.h"56 56 #include "vb.h" 57 57 #endif … … 59 59 60 60 GLboolean gl_cull_triangle( GLcontext *ctx, 61 GLuint v0, GLuint v1, GLuint v2, GLuint pv )61 GLuint v0, GLuint v1, GLuint v2, GLuint pv ) 62 62 { 63 63 struct vertex_buffer *VB = ctx->VB; -
trunk/src/opengl/mesa/types.h
r2938 r2962 1 /* $Id: types.h,v 1. 1 2000-02-29 00:48:41 sandervlExp $ */1 /* $Id: types.h,v 1.2 2000-03-01 18:49:38 jeroen Exp $ */ 2 2 3 3 /* … … 184 184 * Blending function 185 185 */ 186 typedef void (* blend_func)( GLcontext *ctx, GLuint n, const GLubyte mask[],186 typedef void (* __cdecl blend_func)( GLcontext *ctx, GLuint n, const GLubyte mask[], 187 187 GLubyte src[][4], CONST GLubyte dst[][4] ); 188 188 -
trunk/src/opengl/mesa/varray.c
r2938 r2962 1 /* $Id: varray.c,v 1. 1 2000-02-29 00:50:13 sandervlExp $ */1 /* $Id: varray.c,v 1.2 2000-03-01 18:49:38 jeroen Exp $ */ 2 2 3 3 /* … … 35 35 #include "GL/xf86glx.h" 36 36 #endif 37 #include "types.h" 37 38 #include "context.h" 38 39 #include "api.h" … … 47 48 #include "texstate.h" 48 49 #include "translate.h" 49 #include "types.h"50 50 #include "varray.h" 51 51 #include "vb.h" -
trunk/src/opengl/mesa/vbcull.c
r2938 r2962 1 /* $Id: vbcull.c,v 1. 1 2000-02-29 00:50:13 sandervlExp $ */1 /* $Id: vbcull.c,v 1.2 2000-03-01 18:49:39 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #include "GL/xf86glx.h" 39 39 #endif 40 #include "types.h" 40 41 #include "context.h" 41 42 #include "macros.h" 42 #include "types.h"43 43 #include "vb.h" 44 44 #include "vbcull.h" -
trunk/src/opengl/mesa/vbfill.c
r2938 r2962 1 /* $Id: vbfill.c,v 1. 1 2000-02-29 00:50:14 sandervlExp $ */1 /* $Id: vbfill.c,v 1.2 2000-03-01 18:49:39 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "enums.h" … … 43 44 #include "matrix.h" 44 45 #include "mmath.h" 45 #include "types.h"46 46 #include "varray.h" 47 47 #include "vb.h" -
trunk/src/opengl/mesa/vbrender.c
r2938 r2962 1 /* $Id: vbrender.c,v 1. 1 2000-02-29 00:50:14 sandervlExp $ */1 /* $Id: vbrender.c,v 1.2 2000-03-01 18:49:39 jeroen Exp $ */ 2 2 3 3 /* … … 48 48 #endif 49 49 #include "clip.h" 50 #include "types.h" 50 51 #include "context.h" 51 52 #include "light.h" … … 57 58 #include "pipeline.h" 58 59 #include "stages.h" 59 #include "types.h"60 60 #include "vb.h" 61 61 #include "vbcull.h" -
trunk/src/opengl/mesa/vbxform.c
r2938 r2962 1 /* $Id: vbxform.c,v 1. 1 2000-02-29 00:50:14 sandervlExp $ */1 /* $Id: vbxform.c,v 1.2 2000-03-01 18:49:39 jeroen Exp $ */ 2 2 3 3 /* … … 37 37 #include "GL/xf86glx.h" 38 38 #endif 39 #include "types.h" 39 40 #include "context.h" 40 41 #include "cva.h" … … 51 52 #include "shade.h" 52 53 #include "texture.h" 53 #include "types.h"54 54 #include "varray.h" 55 55 #include "vb.h" -
trunk/src/opengl/mesa/vertices.c
r2938 r2962 1 /* $Id: vertices.c,v 1. 1 2000-02-29 00:50:15 sandervlExp $ */1 /* $Id: vertices.c,v 1.2 2000-03-01 18:49:39 jeroen Exp $ */ 2 2 3 3 /* … … 68 68 69 69 70 static void transform_v16(GLfloat *f,71 const GLfloat *m,72 const GLfloat *obj,73 GLuint obj_stride,74 GLuint count )70 static void __cdecl transform_v16(GLfloat *f, 71 const GLfloat *m, 72 const GLfloat *obj, 73 GLuint obj_stride, 74 GLuint count ) 75 75 { 76 76 GLuint i; … … 122 122 if (!*clipmask) { 123 123 const GLfloat oow = 1.0F / f[3]; 124 f[0] = sx * f[0] * oow + tx;125 f[1] = sy * f[1] * oow + ty;126 f[2] = sz * f[2] * oow + tz;127 f[3] = oow;124 f[0] = sx * f[0] * oow + tx; 125 f[1] = sy * f[1] * oow + ty; 126 f[2] = sz * f[2] * oow + tz; 127 f[3] = oow; 128 128 } 129 129 } … … 133 133 134 134 135 static void cliptest_v16( GLfloat *first,136 GLfloat *last,137 GLubyte *p_clipOr,138 GLubyte *p_clipAnd,139 GLubyte *clipmask )140 { 135 static void __cdecl cliptest_v16( GLfloat *first, 136 GLfloat *last, 137 GLubyte *p_clipOr, 138 GLubyte *p_clipAnd, 139 GLubyte *clipmask ) 140 { 141 141 GLubyte clipAnd = (GLubyte) ~0; 142 142 GLubyte clipOr = 0; -
trunk/src/opengl/mesa/vertices.h
r2938 r2962 1 /* $Id: vertices.h,v 1. 1 2000-02-29 00:48:43 sandervlExp $ */1 /* $Id: vertices.h,v 1.2 2000-03-01 18:49:39 jeroen Exp $ */ 2 2 3 3 /* … … 30 30 31 31 32 typedef void (* gl_transform_func)( GLfloat *first_vert,33 const GLfloat *m,34 const GLfloat *src,35 GLuint src_stride,36 GLuint count );32 typedef void (* __cdecl gl_transform_func)( GLfloat *first_vert, 33 const GLfloat *m, 34 const GLfloat *src, 35 GLuint src_stride, 36 GLuint count ); 37 37 38 typedef void (* gl_cliptest_func)( GLfloat *first_vert,39 GLfloat *last_vert, /* use count instead? */40 GLubyte *or_mask,41 GLubyte *and_mask,42 GLubyte *clip_mask );38 typedef void (* __cdecl gl_cliptest_func)( GLfloat *first_vert, 39 GLfloat *last_vert, /* use count instead? */ 40 GLubyte *or_mask, 41 GLubyte *and_mask, 42 GLubyte *clip_mask ); 43 43 44 44 typedef void (*gl_project_clipped_func)( GLfloat *first, -
trunk/src/opengl/mesa/wgl.c
r2938 r2962 1 /* $Id: wgl.c,v 1. 1 2000-02-29 00:50:15 sandervlExp $ */1 /* $Id: wgl.c,v 1.2 2000-03-01 18:49:40 jeroen Exp $ */ 2 2 3 3 /* … … 38 38 #include <tchar.h> 39 39 #include "gl.h" 40 #include "types.h" 41 #include "context.h" 40 42 #include "wmesadef.h" 41 43 #include "wmesa.h" 42 #include "types.h"43 44 44 45 #define MAX_MESA_ATTRS 20 … … 484 485 } 485 486 486 GLAPI BOOL GLWINAPI wglSetPixelFormat(HDC hdc, int iPixelFormat,487 GLAPI BOOL GLWINAPI wglSetPixelFormat(HDC hdc, int iPixelFormat, 487 488 PIXELFORMATDESCRIPTOR *ppfd) 488 489 { … … 512 513 } 513 514 514 #endif /* WIN32 or __WIN32OS2__*/515 #endif /* WIN32 or __WIN32OS2__ */ -
trunk/src/opengl/mesa/winpos.c
r2938 r2962 1 /* $Id: winpos.c,v 1. 1 2000-02-29 00:50:15 sandervlExp $ */1 /* $Id: winpos.c,v 1.2 2000-03-01 18:49:40 jeroen Exp $ */ 2 2 3 3 /* … … 86 86 * OpenGL implementation of glWindowPos*MESA() 87 87 */ 88 /* FIX: JvdH - was glWindowPos4fMESA */89 88 void glWindowPos4fMESA( GLfloat x, GLfloat y, GLfloat z, GLfloat w ) 90 89 { -
trunk/src/opengl/mesa/wmesa.c
r2938 r2962 1 /* $Id: wmesa.c,v 1. 1 2000-02-29 00:50:15 sandervlExp $ */1 /* $Id: wmesa.c,v 1.2 2000-03-01 18:49:40 jeroen Exp $ */ 2 2 3 3 /* … … 23 23 /* 24 24 * $Log: wmesa.c,v $ 25 * Revision 1. 1 2000-02-29 00:50:15 sandervl26 * created25 * Revision 1.2 2000-03-01 18:49:40 jeroen 26 * *** empty log message *** 27 27 * 28 28 * Revision 1.1.1.1 1999/08/19 00:55:42 jtg … … 67 67 #define WMESA_STEREO_C 68 68 69 #ifdef __WIN32OS2__ 70 #include <os2win.h> 71 #else 69 72 #include <windows.h> 73 #endif 70 74 #include <stdio.h> 71 75 #include <stdlib.h> … … 74 78 #include "colors.h" 75 79 #include "macros.h" 80 #include "types.h" 76 81 #include "context.h" 77 82 #include "dd.h" … … 84 89 #ifndef __WIN32OS2__ 85 90 #pragma warning ( disable : 4133 4761 ) 91 #else 92 #ifdef DIVE 93 #include <mesadive.h> 94 extern HWND Win32ToOS2Handle(HWND); 95 #endif 86 96 #endif 87 97 … … 122 132 /* end of added code*/ 123 133 124 staticPWMC Current = NULL;134 PWMC Current = NULL; 125 135 WMesaContext WC = NULL; 126 136 … … 134 144 char Msg[512]; 135 145 sprintf(Msg,"%s %s %d",Cond,File,Line); 146 #ifdef __WIN32OS2__ 147 dprintf((Msg,"%s %s %d",Cond,File,Line)); 148 #endif 136 149 MessageBox(NULL,Msg,"Assertion failed.",MB_OK); 137 150 exit(1); … … 214 227 static void wmSetPixelFormat( PWMC wc, HDC hDC) 215 228 { 229 dprintf(("OPENGL32: Setting PixelFormat\n")); 230 231 #ifdef DIVE 232 wc->cColorBits=DiveQueryDepth(); 233 234 wc->pixelformat=DiveQueryNativePixelFormat(); 235 #else 216 236 if(wc->rgb_flag) 217 wc->cColorBits = GetDeviceCaps(hDC, BITSPIXEL);237 wc->cColorBits = GetDeviceCaps(hDC, BITSPIXEL); 218 238 else 219 wc->cColorBits = 8; 239 wc->cColorBits = 8; 240 220 241 switch(wc->cColorBits){ 221 242 case 8: … … 225 246 wc->pixelformat = PF_DITHER8; 226 247 break; 248 227 249 case 16: 228 250 wc->pixelformat = PF_5R6G5B; 229 251 break; 252 230 253 case 32: 231 254 wc->pixelformat = PF_8R8G8B; 232 255 break; 233 default: 256 257 default: /* This also handles 24 bpp*/ 234 258 wc->pixelformat = PF_BADFORMAT; 235 } 259 break; 260 } 261 #endif 262 263 dprintf(("OPENGL32: Color Bits: %d\n",wc->cColorBits)); 236 264 } 237 265 238 266 // 239 // This function sets the color table of a DIB section 240 // to match that of the destination DC 267 /* This function sets the color table of a DIB section*/ 268 /* to match that of the destination DC*/ 241 269 // 242 270 BOOL /*WINAPI*/ wmSetDibColors(PWMC pwc) … … 297 325 LPBITMAPINFO pbmi = &(pwc->bmi); 298 326 int iUsage; 327 328 dprintf(("OPENGL32: Creating BackingStore for %08X\n",pwc)); 299 329 300 330 pbmi->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); … … 341 371 DWORD dwScanWidth = (uiScanWidth * nBypp); 342 372 343 dprintf(("OPENGL32: wmSetDIBits\n"));344 345 373 // 346 374 // We need to round up to the nearest DWORD … … 400 428 } 401 429 ENDPROFILE(flush) 402 403 } 404 405 430 } 406 431 407 432 /* … … 433 458 * or index as specified by one of the two functions above. 434 459 */ 435 //static void clear(GLcontext* ctx, 436 // GLboolean all,GLint x, GLint y, GLint width, GLint height ) 437 / / TODO: I modified this function to match the prototype in dd.h. (swansma@geocities.com)438 / / dd.h does not explain what the return type is so I could not set this to the proper439 // value. 460 /* static void clear(GLcontext* ctx,*/ 461 /* GLboolean all,GLint x, GLint y, GLint width, GLint height )*/ 462 /* TODO: I modified this function to match the prototype in dd.h. (swansma@geocities.com)*/ 463 /* dd.h does not explain what the return type is so I could not set this to the proper*/ 464 /* value. */ 440 465 static GLbitfield clear(GLcontext* ctx, GLbitfield mask, 441 466 GLboolean all, GLint x, GLint y, GLint width, GLint height) … … 449 474 int lines; 450 475 451 dprintf(("OPENGL32: clear\n")); 476 dprintf(("OPENGL32: clear - all %08d - x %d - y %d - width %d - height %d\n", 477 all,x,y,width,height)); 452 478 453 479 STARTPROFILE … … 458 484 height=Current->height; 459 485 } 486 487 dprintf(("OPENGL32: clear - all %08d - x %d - y %d - width %d - height %d\n", 488 all,x,y,width,height)); 489 460 490 if(Current->db_flag==GL_TRUE){ 461 491 UINT nBypp = Current->cColorBits / 8; 462 492 int i = 0; 463 493 int iSize = 0; 494 495 dprintf(("OPENGL32: Clearing BackBuffer\n")); 464 496 465 497 if(nBypp ==1 ){ … … 520 552 while (i<lines-1); 521 553 } 522 else { // For single buffer 554 else 555 { /* For single buffer*/ 556 dprintf(("OPENGL32: Clearing FrontBuffer\n")); 557 523 558 HDC DC=DD_GETDC; 559 560 dprintf(("OPENGL32: Clearing FrontBuffer DC is %08X\n",DC)); 561 524 562 HPEN Pen=CreatePen(PS_SOLID,1,Current->clearpixel); 525 563 HBRUSH Brush=CreateSolidBrush(Current->clearpixel); 526 564 HPEN Old_Pen=SelectObject(DC,Pen); 527 565 HBRUSH Old_Brush=SelectObject(DC,Brush); 528 // Rectangle(DC,x,y,x+width,y+height); 566 567 Rectangle(DC,x,y,x+width,y+height); 568 529 569 SelectObject(DC,Old_Pen); 530 570 SelectObject(DC,Old_Brush); 531 571 DeleteObject(Pen); 532 572 DeleteObject(Brush); 573 533 574 DD_RELEASEDC; 534 } 535 536 575 } 537 576 538 577 ENDPROFILE(clear) 539 578 540 return mask; // TODO: I doubt this is correct. dd.h doesn't explain what this should541 // be...579 return mask;/* TODO: I doubt this is correct. dd.h doesn't explain what this should*/ 580 /* be... */ 542 581 } 543 582 … … 640 679 641 680 STARTPROFILE 681 642 682 GetClientRect(Current->Window,&CR); 643 683 … … 651 691 Current->height=*height; 652 692 Current->ScanWidth=Current->width; 693 653 694 if ((Current->ScanWidth%sizeof(long))!=0) 654 695 Current->ScanWidth+=(sizeof(long)-(Current->ScanWidth%sizeof(long))); 655 696 656 697 if (Current->db_flag){ 698 #ifdef DIVE 699 if(!DiveDirectAccess()) 700 if (Current->rgb_flag==GL_TRUE && Current->dither_flag!=GL_TRUE){ 701 wmDeleteBackingStore(Current); 702 wmCreateBackingStore(Current, Current->width, Current->height); 703 } 704 #else 657 705 #ifdef DDRAW 658 706 DDDeleteOffScreen(Current); … … 663 711 wmCreateBackingStore(Current, Current->width, Current->height); 664 712 } 713 #endif 665 714 #endif 666 715 } … … 719 768 } 720 769 } 721 // DD_RELEASEDC; 770 771 /* DD_RELEASEDC; */ 722 772 ENDPROFILE(fast_rgb_points) 723 773 } … … 753 803 754 804 if (0 /*Current->gl_ctx->VB->MonoColor*/) { 755 pixel = Current->pixel; /* use current color*/805 pixel = Current->pixel; /* use current color*/ 756 806 } 757 807 else { 758 pixel = RGB((GLubyte)(Current->gl_ctx->VB->ColorPtr->data[pv][0]), 759 (GLubyte)(Current->gl_ctx->VB->ColorPtr->data[pv][1]), 760 (GLubyte)(Current->gl_ctx->VB->ColorPtr->data[pv][2])); 808 dprintf(("OPENGL32: READADDR: %08X - pv %d - LINE R-G-B is %d,%d,%d\n", 809 Current->gl_ctx->VB->ColorPtr->data[pv], 810 pv, 811 Current->gl_ctx->VB->ColorPtr->data[pv][0], 812 Current->gl_ctx->VB->ColorPtr->data[pv][1], 813 Current->gl_ctx->VB->ColorPtr->data[pv][2])); 814 815 pixel = RGB((GLubyte)(Current->gl_ctx->VB->ColorPtr->data[pv][0]/* *255.0*/), 816 (GLubyte)(Current->gl_ctx->VB->ColorPtr->data[pv][1]/* *255.0*/), 817 (GLubyte)(Current->gl_ctx->VB->ColorPtr->data[pv][2]/* *255.0*/)); 818 819 dprintf(("OPENGL32: PIXEL set to %08X",pixel)); 761 820 } 762 821 … … 769 828 BEGINGDICALL 770 829 771 Pen=CreatePen(PS_SOLID,1, pixel);830 Pen=CreatePen(PS_SOLID,1,(COLORREF)pixel); 772 831 Old_Pen=SelectObject(DC,Pen); 773 832 MoveToEx(DC,x0,y0,NULL); … … 902 961 } 903 962 } 963 904 964 ENDPROFILE(write_rgba_span) 905 965 … … 945 1005 } 946 1006 } 1007 947 1008 ENDPROFILE(write_rgb_span) 948 1009 … … 963 1024 assert(Current->rgb_flag==GL_TRUE); 964 1025 y=FLIP(y); 1026 965 1027 if(Current->rgb_flag==GL_TRUE){ 966 1028 for (i=0; i<n; i++) 967 1029 if (mask[i]) 968 // Trying1030 /* Trying */ 969 1031 wmSetPixel(pwc,y,x+i,GetRValue(Current->pixel), GetGValue(Current->pixel), GetBValue(Current->pixel)); 970 1032 } … … 975 1037 } 976 1038 DD_RELEASEDC; 1039 977 1040 ENDPROFILE(write_mono_rgba_span) 978 1041 } … … 1033 1096 { 1034 1097 STARTPROFILE 1098 1035 1099 GLuint i; 1036 1100 PWMC pwc = Current; 1037 1101 HDC DC=DD_GETDC; 1038 1102 assert(Current->rgb_flag==GL_TRUE); 1103 1039 1104 for (i=0; i<n; i++) 1040 1105 if (mask[i]) 1041 1106 wmSetPixel(pwc, FLIP(y[i]),x[i],rgba[i][RCOMP],rgba[i][GCOMP],rgba[i][BCOMP]); 1107 1042 1108 DD_RELEASEDC; 1043 1109 ENDPROFILE(write_rgba_pixels) … … 1060 1126 HDC DC=DD_GETDC; 1061 1127 assert(Current->rgb_flag==GL_TRUE); 1128 1062 1129 for (i=0; i<n; i++) 1063 1130 if (mask[i]) 1064 1131 wmSetPixel(pwc, FLIP(y[i]),x[i],GetRValue(Current->pixel), 1065 1132 GetGValue(Current->pixel), GetBValue(Current->pixel)); 1133 1066 1134 DD_RELEASEDC; 1067 1135 ENDPROFILE(write_mono_rgba_pixels) … … 1285 1353 } 1286 1354 1287 1288 WMesaContext WMesaCreateContext( HWND hWnd, HPALETTE* Pal, 1355 void WMesaUpdateScreenPos(PWMC c,HWND hWnd) 1356 { 1357 RECT CR; 1358 1359 GetWindowRect(hWnd,&CR); 1360 1361 c->WinPos.x=CR.left+GetSystemMetrics(SM_CXFRAME); 1362 c->WinPos.y=CR.top+GetSystemMetrics(SM_CYCAPTION)+GetSystemMetrics(SM_CYFRAME); 1363 1364 c->width=CR.right-CR.left-2*GetSystemMetrics(SM_CXFRAME); 1365 c->height=CR.bottom-CR.top-GetSystemMetrics(SM_CYCAPTION)-2*GetSystemMetrics(SM_CYFRAME); 1366 1367 dprintf(("OPENGL32: WMesaUpdateScreenPos %08X - x/y %d/%d, w/h %d/%d\n", 1368 hWnd, 1369 c->WinPos.x, 1370 c->WinPos.y, 1371 c->width, 1372 c->height)); 1373 } 1374 1375 WMesaContext WIN32API WMesaCreateContext( HWND hWnd, HPALETTE* Pal, 1289 1376 GLboolean rgb_flag, 1290 1377 GLboolean db_flag ) … … 1294 1381 GLboolean true_color_flag; 1295 1382 c = (struct wmesa_context * ) calloc(1,sizeof(struct wmesa_context)); 1383 1384 dprintf(("OPENGL32: Creating MESA Context (%s)\n", 1385 db_flag?"DOUBLE BUFFERED":"SINGLE_BUFFERED")); 1386 1296 1387 if (!c) 1297 1388 return NULL; … … 1300 1391 c->hDC = GetDC(hWnd); 1301 1392 true_color_flag = GetDeviceCaps(c->hDC, BITSPIXEL) > 8; 1302 #ifdef DDRAW 1393 1394 #if defined(DDRAW) || defined(DIVE) 1303 1395 if(true_color_flag) c->rgb_flag = rgb_flag = GL_TRUE; 1304 1396 #endif … … 1316 1408 #endif 1317 1409 1410 dprintf(("OPENGL32: WMesaCreateContext - db_flag is %d\n",db_flag)); 1318 1411 1319 1412 if (rgb_flag==GL_FALSE) 1320 1413 { 1321 1414 c->rgb_flag = GL_FALSE; 1322 // c->pixel = 1; 1323 c->db_flag = db_flag =GL_TRUE; // WinG requires double buffering 1324 printf("Single buffer is not supported in color index mode, setting to double buffer.\n"); 1415 #ifndef DIVE 1416 c->db_flag = db_flag =GL_TRUE; /* WinG requires double buffering*/ 1417 1418 dprintf(("OPENGL32: Single buffer is not supported in color index mode, setting to double buffer.\n")); 1419 #endif 1325 1420 } 1326 1421 else 1327 1422 { 1328 1423 c->rgb_flag = GL_TRUE; 1329 // c->pixel = 0; 1330 } 1424 /* c->pixel = 0; */ 1425 } 1426 1331 1427 GetClientRect(c->Window,&CR); 1428 1332 1429 c->width=CR.right; 1333 1430 c->height=CR.bottom; 1431 1334 1432 if (db_flag) 1335 1433 { 1336 1434 c->db_flag = 1; 1337 1435 /* Double buffered */ 1338 #if ndef DDRAW1339 // if (c->rgb_flag==GL_TRUE && c->dither_flag != GL_TRUE )1436 #if !defined(DDRAW) && !defined(DIVE) 1437 /* if (c->rgb_flag==GL_TRUE && c->dither_flag != GL_TRUE )*/ 1340 1438 { 1341 1439 wmCreateBackingStore(c, c->width, c->height); 1342 1440 1343 1441 } 1442 #else 1443 #ifdef DIVE 1444 /* Dive direct access unavailable - switch to DIB mode */ 1445 if(!DiveDirectAccess()) 1446 wmCreateBackingStore(c, c->width, c->height); 1447 #endif 1344 1448 #endif 1345 1449 } … … 1350 1454 c->db_flag = 0; 1351 1455 } 1456 1457 /* Also set the correct PixelFormat now! */ 1458 wmSetPixelFormat(c, c->hDC); 1459 1460 #ifdef DIVE 1461 /* Store window position for DIVE draws - all x/y's are relative to this */ 1462 /* base position of the screen... */ 1463 dprintf(("OPENGL32: Creating context (%08X)\n",c)); 1464 1465 WMesaUpdateScreenPos(c,hWnd); 1466 1467 if(DiveDirectAccess()) 1468 if(!DiveInit(c,hWnd)) 1469 { 1470 free( (void *) c ); 1471 Current=0; 1472 dprintf(("OPENGL32: DIVEINIT failed - exiting!\n")); 1473 MessageBoxA( hWnd, "Dive Init FAILED", "", MB_OK ); 1474 exit(1); 1475 } 1476 #else 1352 1477 #ifdef DDRAW 1353 1478 if (DDInit(c,hWnd) == GL_FALSE) { 1354 1479 free( (void *) c ); 1480 dprintf(("OPENGL32: DIVEINIT failed - exiting!\n")); 1355 1481 exit(1); 1356 1482 } 1357 1483 #endif 1358 1484 #endif 1485 1486 /* JvdH - Enable software Alpha! (was FALSE!!) */ 1359 1487 1360 1488 c->gl_visual = gl_create_visual(rgb_flag, 1361 GL_ FALSE, /* software alpha*/1362 db_flag, /* db_flag*/1363 GL_FALSE, /* stereo*/1364 16, /* depth_bits*/1365 8, /* stencil_bits*/1366 8, /* accum_bits*/1367 0, /* index bits*/1368 8,8,8,8 ); /* r, g, b, a bits*/1489 GL_TRUE, /* software alpha*/ 1490 db_flag, /* db_flag*/ 1491 GL_FALSE, /* stereo*/ 1492 16, /* depth_bits*/ 1493 8, /* stencil_bits*/ 1494 8, /* accum_bits*/ 1495 0, /* index bits*/ 1496 8,8,8,8 ); /* r, g, b, a bits*/ 1369 1497 1370 1498 if (!c->gl_visual) { … … 1382 1510 1383 1511 c->gl_buffer = gl_create_framebuffer( c->gl_visual ); 1512 1384 1513 if (!c->gl_buffer) { 1385 1514 gl_destroy_visual( c->gl_visual ); … … 1389 1518 } 1390 1519 1391 c->gl_ctx->Driver.UpdateState = setup_DD_pointers; 1392 1393 // setup_DD_pointers(c->gl_ctx); 1520 c->gl_ctx->Driver.UpdateState = setup_DD_pointers; 1521 1522 /* setup_DD_pointers(c->gl_ctx); */ 1523 1524 dprintf(("OPENGL32: Created context %08X - (%s)\n",c,c->db_flag?"DOUBLE":"SINGLE")); 1394 1525 1395 1526 return c; 1396 1527 } 1397 1528 1398 void W MesaDestroyContext( void )1529 void WIN32API WMesaDestroyContext( void ) 1399 1530 { 1400 1531 WMesaContext c = Current; 1532 1401 1533 ReleaseDC(c->Window,c->hDC); 1534 1402 1535 WC = c; 1536 1403 1537 if(c->hPalHalfTone != NULL) 1404 1538 DeleteObject(c->hPalHalfTone); 1539 1405 1540 gl_destroy_visual( c->gl_visual ); 1406 1541 gl_destroy_framebuffer( c->gl_buffer ); … … 1408 1543 1409 1544 if (c->db_flag) 1545 #ifdef DIVE 1546 if(DiveDirectAccess()) 1547 { 1548 DiveFree(c); 1549 /* Clean up the screen on exit */ 1550 RedrawWindow( NULL, NULL, NULL, RDW_INVALIDATE | RDW_ERASE | 1551 RDW_ALLCHILDREN ); 1552 } 1553 else 1554 wmDeleteBackingStore(c); 1555 #else 1410 1556 #ifdef DDRAW 1557 { 1411 1558 DDFree(c); 1559 } 1412 1560 #else 1413 1561 wmDeleteBackingStore(c); 1414 1562 #endif 1563 #endif 1415 1564 free( (void *) c ); 1416 //Following code is added to enable parallel render 1417 // Parallel render only work in double buffer mode 1565 1566 /* Set current context to 0, otherwise exitlist-routine will trap */ 1567 Current=0; 1568 /* Following code is added to enable parallel render*/ 1569 /* Parallel render only work in double buffer mode*/ 1418 1570 #if !defined(NO_PARALLEL) 1419 1571 if(parallelMachine) 1420 1572 PRDestroyRenderBuffer(); 1421 1573 #endif 1422 // End modification 1423 } 1424 1425 1574 /* End modification */ 1575 } 1426 1576 1427 1577 void WIN32API WMesaMakeCurrent( WMesaContext c ) 1428 1578 { 1579 dprintf(("OPENGL32: WMesaMakeCurrent %08X\n",c)); 1580 1429 1581 if(!c){ 1430 1582 Current = c; … … 1459 1611 { 1460 1612 HDC DC = Current->hDC; 1613 1614 dprintf(("OPENGL32: WMesaSwapBuffers() - Current %08X (%s)\n", 1615 Current,Current->db_flag?"DOUBLE":"SINGLE")); 1616 1461 1617 if (Current->db_flag) 1462 1618 wmFlush(Current); … … 1469 1625 int vRet; 1470 1626 LPPALETTEENTRY pPal; 1627 ULONG rc; 1628 1629 dprintf(("OPENGL32: WMesaPaletteChange - Pal %08X",Pal)); 1630 1471 1631 if (Current && (Current->rgb_flag==GL_FALSE || Current->dither_flag == GL_TRUE)) 1472 1632 { 1473 1633 pPal = (PALETTEENTRY *)malloc( 256 * sizeof(PALETTEENTRY)); 1474 1634 Current->hPal=Pal; 1475 // GetPaletteEntries( Pal, 0, 256, pPal );1635 /* GetPaletteEntries( Pal, 0, 256, pPal );*/ 1476 1636 GetPalette( Pal, (RGBQUAD *)pPal ); 1637 #ifdef DIVE 1638 /* rc=DiveSetSourcePalette(Current->hDiveInstance, 1639 0, 1640 256, 1641 (PBYTE)pPal); 1642 */ 1643 dprintf(("OPENGL32: DiveSetupSourcePalette rc %d\n",rc)); 1644 #else 1477 1645 #ifdef DDRAW 1478 1646 Current->lpDD->lpVtbl->CreatePalette(Current->lpDD,DDPCAPS_8BIT, … … 1481 1649 Current->lpDDSPrimary->lpVtbl->SetPalette(Current->lpDDSPrimary,Current->lpDDPal); 1482 1650 #else 1483 vRet = SetDIBColorTable(Current->dib.hDC,0,256,(RGBQUAD *)pPal); 1651 vRet = SetDIBColorTable(Current->dib.hDC,0,256, (RGBQUAD *)pPal); 1652 #endif 1484 1653 #endif 1485 1654 free( pPal ); … … 1577 1746 } 1578 1747 1748 void DibSetPixel(PWMC pwc, int iScanLine, int iPixel, BYTE r, BYTE g, BYTE b) 1749 { 1750 if (Current->db_flag) 1751 { 1752 LPBYTE lpb = pwc->pbPixels; 1753 LPDWORD lpdw; 1754 LPWORD lpw; 1755 UINT nBypp = pwc->cColorBits >> 3; 1756 UINT nOffset = iPixel % nBypp; 1757 1758 // Move the pixel buffer pointer to the scanline that we 1759 // want to access 1760 1761 // pwc->dib.fFlushed = FALSE; 1762 1763 lpb += pwc->ScanWidth * iScanLine; 1764 /* Now move to the desired pixel */ 1765 lpb += iPixel * nBypp; 1766 lpb = PIXELADDR(iPixel, iScanLine); 1767 lpdw = (LPDWORD)lpb; 1768 lpw = (LPWORD)lpb; 1769 1770 if(nBypp == 1){ 1771 if(pwc->dither_flag) 1772 *lpb = DITHER_RGB_2_8BIT(r,g,b,iScanLine,iPixel); 1773 else 1774 *lpb = BGR8(r,g,b); 1775 } 1776 else if(nBypp == 2) 1777 *lpw = BGR16(r,g,b); 1778 else if (nBypp == 3){ 1779 *lpdw = BGR24(r,g,b); 1780 } 1781 else if (nBypp == 4) 1782 *lpdw = BGR32(r,g,b); 1783 } 1784 else{ 1785 SetPixel(Current->hDC, iPixel, iScanLine, RGB(r,g,b)); 1786 DD_RELEASEDC; 1787 } 1788 } 1789 1579 1790 void /*WINAPI*/ wmSetPixel(PWMC pwc, int iScanLine, int iPixel, BYTE r, BYTE g, BYTE b) 1580 1791 { 1581 if (Current->db_flag) { 1582 LPBYTE lpb = pwc->pbPixels; 1583 LPDWORD lpdw; 1584 LPWORD lpw; 1585 UINT nBypp = pwc->cColorBits >> 3; 1586 UINT nOffset = iPixel % nBypp; 1587 1588 // Move the pixel buffer pointer to the scanline that we 1589 // want to access 1590 1591 // pwc->dib.fFlushed = FALSE; 1592 1593 lpb += pwc->ScanWidth * iScanLine; 1594 // Now move to the desired pixel 1595 lpb += iPixel * nBypp; 1596 lpb = PIXELADDR(iPixel, iScanLine); 1597 lpdw = (LPDWORD)lpb; 1598 lpw = (LPWORD)lpb; 1599 1600 if(nBypp == 1){ 1601 if(pwc->dither_flag) 1602 *lpb = DITHER_RGB_2_8BIT(r,g,b,iScanLine,iPixel); 1603 else 1604 *lpb = BGR8(r,g,b); 1792 #ifdef DIVE 1793 if(DiveDirectAccess()) 1794 { 1795 if (Current->db_flag) 1796 { 1797 /* We're using a buffered context - write to the backbuffer */ 1798 DiveWriteBackbuffer(pwc,iScanLine,iPixel,r,g,b); 1605 1799 } 1606 else if(nBypp == 2) 1607 *lpw = BGR16(r,g,b); 1608 else if (nBypp == 3){ 1609 *lpdw = BGR24(r,g,b); 1800 else 1801 { 1802 /* We're using a non-buffered context - write to the video mem! */ 1803 /* TODO: What about cards that do not support direct access?? */ 1804 DiveWriteFrontbuffer(pwc,iScanLine,iPixel,r,g,b); 1610 1805 } 1611 else if (nBypp == 4) 1612 *lpdw = BGR32(r,g,b); 1613 } 1614 else{ 1615 SetPixel(Current->hDC, iPixel, iScanLine, RGB(r,g,b)); 1616 DD_RELEASEDC; 1617 } 1806 } 1807 else 1808 DibSetPixel(pwc, iScanLine, iPixel, r, g, b); 1809 #else 1810 DibSetPixel(pwc, iScanLine, iPixel, r, g, b); 1811 #endif 1618 1812 } 1619 1813 1620 1814 void /*WINAPI*/ wmCreateDIBSection( 1621 1815 HDC hDC, 1622 PWMC pwc, // handle of device context1623 CONST BITMAPINFO *pbmi, // address of structure containing bitmap size, format, and color data1624 UINT iUsage // color data type indicator: RGB values or palette indices1816 PWMC pwc, /* handle of device context */ 1817 CONST BITMAPINFO *pbmi,/* address of structure containing bitmap size, format, and color data*/ 1818 UINT iUsage/* color data type indicator: RGB values or palette indices*/ 1625 1819 ) 1626 1820 { … … 1641 1835 dwSize = sizeof(BITMAPINFO) + (dwScanWidth * pwc->height); 1642 1836 1837 #ifdef __WIN32OS2__ 1838 pwc->dib.hFileMap = CreateFileMappingA((HANDLE)PAGE_FILE, 1839 #else 1643 1840 pwc->dib.hFileMap = CreateFileMapping((HANDLE)PAGE_FILE, 1841 #endif 1644 1842 NULL, 1645 1843 PAGE_READWRITE | SEC_COMMIT, … … 1668 1866 memcpy(pwc->dib.base, pbmi, sizeof(BITMAPINFO)); 1669 1867 1868 #ifdef __WIN32OS2__ 1869 hic = CreateICA("display", NULL, NULL, NULL); 1870 #else 1670 1871 hic = CreateIC("display", NULL, NULL, NULL); 1872 #endif 1671 1873 pwc->dib.hDC = CreateCompatibleDC(hic); 1672 1874 … … 1693 1895 0); 1694 1896 */ 1695 dprintf(("CreateDIBSection set pix %08X\n",pwc->pbPixels));1696 1897 1697 1898 pwc->ScreenMem = pwc->addrOffScreen = pwc->pbPixels; … … 1711 1912 BOOL bRet = 0; 1712 1913 DWORD dwErr = 0; 1914 #ifdef DIVE 1915 ULONG rc; 1916 #endif 1713 1917 #ifdef DDRAW 1714 1918 HRESULT ddrval; 1715 1919 #endif 1716 1920 1717 // Now search through the torus frames and mark used colors1718 1921 if(pwc->db_flag){ 1922 #ifdef DIVE 1923 if(DiveDirectAccess()) 1924 DiveFlush(pwc); 1925 else 1926 bRet = BitBlt(pwc->hDC, 0, 0, pwc->width, pwc->height, 1927 pwc->dib.hDC, 0, 0, SRCCOPY); 1928 #else 1719 1929 #ifdef DDRAW 1720 1930 if (pwc->lpDDSOffScreen == NULL) … … 1756 1966 pwc->dib.hDC, 0, 0, SRCCOPY); 1757 1967 #endif 1968 #endif 1758 1969 } 1759 1970 … … 1956 2167 { 1957 2168 DDFree(wc); 2169 #ifdef __WIN32OS2__ 2170 MessageBoxA( hwnd, "DirectDraw Init FAILED", "", MB_OK ); 2171 #else 1958 2172 MessageBox( hwnd, "DirectDraw Init FAILED", "", MB_OK ); 2173 #endif 1959 2174 return FALSE; 1960 2175 … … 2124 2339 2125 2340 return 0; /* Eliminate compiler warning */ 2126 } /* DDInit*/2341 } /* DDInit*/ 2127 2342 2128 2343 static void DDFree( WMesaContext wc) … … 2135 2350 wc->lpDD = NULL; 2136 2351 } 2137 // Clean up the screen on exit2352 /* Clean up the screen on exit */ 2138 2353 RedrawWindow( NULL, NULL, NULL, RDW_INVALIDATE | RDW_ERASE | 2139 2354 RDW_ALLCHILDREN ); … … 2153 2368 } 2154 2369 } 2155 2156 2157 2370 2158 2371 /* -
trunk/src/opengl/mesa/wmesadef.h
r2938 r2962 1 /* $Id: wmesadef.h,v 1. 1 2000-02-29 00:48:44 sandervlExp $ */1 /* $Id: wmesadef.h,v 1.2 2000-03-01 18:49:40 jeroen Exp $ */ 2 2 /* File name : wmesadef.h 3 3 * Version : 2.3 … … 20 20 /* 21 21 * $Log: wmesadef.h,v $ 22 * Revision 1.1 2000-02-29 00:48:44 sandervl 22 * Revision 1.2 2000-03-01 18:49:40 jeroen 23 * *** empty log message *** 24 * 25 * Revision 1.1 2000/02/29 00:48:44 sandervl 23 26 * created 24 27 * … … 34 37 /* 35 38 * $Log: wmesadef.h,v $ 36 * Revision 1.1 2000-02-29 00:48:44 sandervl 39 * Revision 1.2 2000-03-01 18:49:40 jeroen 40 * *** empty log message *** 41 * 42 * Revision 1.1 2000/02/29 00:48:44 sandervl 37 43 * created 38 44 * … … 50 56 /* 51 57 * $Log: wmesadef.h,v $ 52 * Revision 1.1 2000-02-29 00:48:44 sandervl 58 * Revision 1.2 2000-03-01 18:49:40 jeroen 59 * *** empty log message *** 60 * 61 * Revision 1.1 2000/02/29 00:48:44 sandervl 53 62 * created 54 63 * … … 68 77 #define DDMESADEF_H 69 78 70 #ifdef __WIN32OS2__ 71 #include <os2win.h> 79 #ifdef __WIN32OS2__/* Nope, we use this hdr in DIVE code, so instead include*/ 80 /* os2win.h in the source if it is needed! */ 81 //#include <os2win.h> 72 82 #else 73 83 #include <windows.h> … … 78 88 #endif 79 89 80 #include "gl.h"81 #include "context.h"90 //#include "gl.h" 91 //#include "context.h" 82 92 //#include "profile.h" 83 93 … … 96 106 }WMDIBSECTION, *PWMDIBSECTION; 97 107 108 typedef struct tagMY_RECTL 109 { 110 LONG xLeft,xRight,yBottom,yTop; 111 }MY_RECTL; 98 112 99 113 typedef struct wmesa_context{ 100 GLcontext *gl_ctx; /* The core GL/Mesa context */ 101 GLvisual *gl_visual; /* Describes the buffers */ 102 GLframebuffer *gl_buffer; /* Depth, stencil, accum, etc buffers */ 114 /* This defs *MUST* be at the TOP, since some structure definitions below */ 115 /* are NOT correct!! This is because of the fact that wmesa is WIN based, */ 116 /* whereas this file is OS/2 based. If we put this stuff at the end of the */ 117 /* structure the offsets to for example the hDiveInstance will be */ 118 /* interpreted differently in this file and in wmesa.c. */ 119 #ifdef DIVE 120 ULONG hDiveInstance; /* This actually is a DIVE Handle */ 121 ULONG BackBufferNumber; 122 PVOID ppFrameBuffer; 123 ULONG ScanLineBytes,ScanLines; 124 POINT WinPos; 125 WNDPROC hWndProc; 126 BOOL DiveSoftwareBlit;/* If BlitSetup failed do it in SW*/ 127 ULONG NumClipRects; /* Clip-info is maintained here */ 128 MY_RECTL rctls[50]; 129 HRGN hrgn; 130 HDC hps; 131 BOOL BackBufferOwnAllocation; 132 GLint awidth,aheight; /* Allocated w/h for ImageBuffer */ 133 #endif 134 PBYTE pbPixels; 135 int nColors; 136 BYTE cColorBits; 137 int pixelformat; 138 GLboolean db_flag; /* double buffered? */ 139 GLboolean rgb_flag; /* RGB mode? */ 140 GLboolean dither_flag;/* use dither when 256 color mode for RGB?*/ 141 GLuint depth; /* bits per pixel (1, 8, 24, etc) */ 142 ULONG pixel; /* current color index or RGBA pixel value*/ 143 ULONG clearpixel; //* pixel for clearing the color buffers*/ 144 GLuint width; 145 GLuint height; 146 unsigned long ScanWidth; 103 147 104 105 HWND Window; 148 GLcontext *gl_ctx; /* The core GL/Mesa context*/ 149 GLvisual *gl_visual; /* Describes the buffers*/ 150 GLframebuffer *gl_buffer; /* Depth, stencil, accum, etc buffers*/ 151 RECT drawRect; 152 UINT uiDIBoffset; 153 PBYTE ScreenMem; /* WinG memory */ 154 HPALETTE hPal; /* Current Palette */ 155 HPALETTE hPalHalfTone; 156 HPALETTE hGLPalette; 157 WMDIBSECTION dib; 158 BITMAPINFO *IndexFormat; 159 BITMAPINFO bmi; 160 HBITMAP hbmDIB; 161 HBITMAP hOldBitmap; 162 HBITMAP Old_Compat_BM; 163 HBITMAP Compat_BM; /* Bitmap for double buffering */ 164 HWND Window; 106 165 HDC hDC; 107 166 HPALETTE hPalette; … … 111 170 HCURSOR hOldCursor; 112 171 COLORREF crColor; 113 // 3D projection stuff114 RECT drawRect;115 UINT uiDIBoffset;116 // OpenGL stuff117 HPALETTE hGLPalette;118 GLuint width;119 GLuint height;120 GLuint ScanWidth;121 GLboolean db_flag; //* double buffered?122 GLboolean rgb_flag; //* RGB mode?123 GLboolean dither_flag; //* use dither when 256 color mode for RGB?124 GLuint depth; //* bits per pixel (1, 8, 24, etc)125 ULONG pixel; // current color index or RGBA pixel value126 ULONG clearpixel; //* pixel for clearing the color buffers127 PBYTE ScreenMem; // WinG memory128 BITMAPINFO *IndexFormat;129 HPALETTE hPal; // Current Palette130 HPALETTE hPalHalfTone;131 132 133 WMDIBSECTION dib;134 BITMAPINFO bmi;135 HBITMAP hbmDIB;136 HBITMAP hOldBitmap;137 HBITMAP Old_Compat_BM;138 HBITMAP Compat_BM; // Bitmap for double buffering139 PBYTE pbPixels;140 int nColors;141 BYTE cColorBits;142 int pixelformat;143 144 172 #ifdef DDRAW 145 LPDIRECTDRAW lpDD; // DirectDraw object146 // LPDIRECTDRAW2 lpDD2; // DirectDraw object147 LPDIRECTDRAWSURFACE lpDDSPrimary; // DirectDraw primary surface173 LPDIRECTDRAW lpDD; /* DirectDraw object */ 174 // LPDIRECTDRAW2 lpDD2; /* DirectDraw object*/ 175 LPDIRECTDRAWSURFACE lpDDSPrimary; /* DirectDraw primary surface*/ 148 176 LPDIRECTDRAWSURFACE lpDDSOffScreen; // DirectDraw off screen surface 149 177 LPDIRECTDRAWPALETTE lpDDPal; // DirectDraw palette 150 BOOL bActive; // is application active?178 BOOL bActive; /* is application active? */ 151 179 DDSURFACEDESC ddsd; 152 180 int fullScreen; … … 158 186 DWORD pitch; 159 187 PBYTE addrOffScreen; 160 //#ifdef PROFILE 161 // MESAPROF profile; 162 //#endif 188 /* #ifdef PROFILE */ 189 /* MESAPROF profile; */ 190 /* #endif */ 163 191 } *PWMC; 164 192 -
trunk/src/opengl/mesa/x86.c
r2938 r2962 1 /* $Id: x86.c,v 1. 1 2000-02-29 00:50:16 sandervlExp $ */1 /* $Id: x86.c,v 1.2 2000-03-01 18:49:40 jeroen Exp $ */ 2 2 3 3 /* … … 35 35 #include <math.h> 36 36 37 #include "types.h" 37 38 #include "context.h" 38 #include "types.h"39 39 #include "vertices.h" 40 40 #include "xform.h" 41 41 #include "x86.h" 42 42 43 extern void gl_v16_x86_cliptest_points4(GLfloat *first_vert,43 extern void __cdecl gl_v16_x86_cliptest_points4(GLfloat *first_vert, 44 44 GLfloat *last_vert, 45 45 GLubyte *or_mask, … … 48 48 49 49 50 extern void gl_v16_x86_general_xform(GLfloat *dest,50 extern void __cdecl gl_v16_x86_general_xform(GLfloat *dest, 51 51 const GLfloat *m, 52 52 const GLfloat *src, … … 63 63 64 64 #define DECLARE_XFORM_GROUP(pfx, vsize, masked) \ 65 extern void gl_##pfx##_transform_points##vsize##_general_##masked(XFORM_ARGS); \66 extern void gl_##pfx##_transform_points##vsize##_identity_##masked(XFORM_ARGS); \67 extern void gl_##pfx##_transform_points##vsize##_3d_no_rot_##masked(XFORM_ARGS); \68 extern void gl_##pfx##_transform_points##vsize##_perspective_##masked(XFORM_ARGS); \69 extern void gl_##pfx##_transform_points##vsize##_2d_##masked(XFORM_ARGS); \70 extern void gl_##pfx##_transform_points##vsize##_2d_no_rot_##masked(XFORM_ARGS); \71 extern void gl_##pfx##_transform_points##vsize##_3d_##masked(XFORM_ARGS);65 extern void __cdecl gl_##pfx##_transform_points##vsize##_general_##masked(XFORM_ARGS); \ 66 extern void __cdecl gl_##pfx##_transform_points##vsize##_identity_##masked(XFORM_ARGS); \ 67 extern void __cdecl gl_##pfx##_transform_points##vsize##_3d_no_rot_##masked(XFORM_ARGS); \ 68 extern void __cdecl gl_##pfx##_transform_points##vsize##_perspective_##masked(XFORM_ARGS); \ 69 extern void __cdecl gl_##pfx##_transform_points##vsize##_2d_##masked(XFORM_ARGS); \ 70 extern void __cdecl gl_##pfx##_transform_points##vsize##_2d_no_rot_##masked(XFORM_ARGS); \ 71 extern void __cdecl gl_##pfx##_transform_points##vsize##_3d_##masked(XFORM_ARGS); 72 72 73 73 #define ASSIGN_XFORM_GROUP( pfx, cma, vsize, masked ) \ … … 97 97 DECLARE_XFORM_GROUP( x86, 4, masked ) 98 98 99 extern GLvector4f * gl_x86_cliptest_points4( GLvector4f *clip_vec,99 extern GLvector4f * __cdecl gl_x86_cliptest_points4( GLvector4f *clip_vec, 100 100 GLvector4f *proj_vec, 101 101 GLubyte clipMask[], -
trunk/src/opengl/mesa/xform.c
r2938 r2962 1 /* $Id: xform.c,v 1. 1 2000-02-29 00:50:16 sandervlExp $ */1 /* $Id: xform.c,v 1.2 2000-03-01 18:49:41 jeroen Exp $ */ 2 2 3 3 /* … … 50 50 #endif 51 51 #include "vb.h" 52 #include "types.h" 52 53 #include "context.h" 53 54 #include "mmath.h" 54 #include "types.h"55 55 #include "vb.h" 56 56 #include "xform.h" -
trunk/src/opengl/mesa/xform.h
r2938 r2962 1 /* $Id: xform.h,v 1. 1 2000-02-29 00:48:44 sandervlExp $ */1 /* $Id: xform.h,v 1.2 2000-03-01 18:49:41 jeroen Exp $ */ 2 2 3 3 /* … … 104 104 * automatically available. 105 105 */ 106 typedef GLvector4f *(* clip_func)( GLvector4f *vClip,107 GLvector4f *vProj,108 GLubyte clipMask[],109 GLubyte *orMask,110 GLubyte *andMask );106 typedef GLvector4f *(* __cdecl clip_func)( GLvector4f *vClip, 107 GLvector4f *vProj, 108 GLubyte clipMask[], 109 GLubyte *orMask, 110 GLubyte *andMask ); 111 111 112 112 113 113 typedef void (*dotprod_func)( GLvector4f *out_vec, 114 GLuint elt,115 const GLvector4f *coord_vec,116 const GLfloat plane[4],117 const GLubyte mask[]);114 GLuint elt, 115 const GLvector4f *coord_vec, 116 const GLfloat plane[4], 117 const GLubyte mask[]); 118 118 119 119 typedef void (*vec_copy_func)( GLvector4f *to, 120 const GLvector4f *from,121 const GLubyte mask[]);120 const GLvector4f *from, 121 const GLubyte mask[]); 122 122 123 123 … … 129 129 * parameter, to allow a unified interface. 130 130 */ 131 typedef void (* transform_func)( GLvector4f *to_vec,132 const GLmatrix *mat,133 const GLvector4f *from_vec,134 const GLubyte *clipmask,135 const GLubyte flag );131 typedef void (* __cdecl transform_func)( GLvector4f *to_vec, 132 const GLmatrix *mat, 133 const GLvector4f *from_vec, 134 const GLubyte *clipmask, 135 const GLubyte flag ); 136 136 137 137 138 138 extern GLvector4f *gl_project_points( GLvector4f *to, 139 const GLvector4f *from );139 const GLvector4f *from ); 140 140 141 141 extern void gl_transform_bounds3( GLubyte *orMask, GLubyte *andMask, 142 const GLmatrix *mat,142 const GLmatrix *mat, 143 143 CONST GLfloat src[][3] ); 144 144 -
trunk/src/opengl/mesa/xform_tmp.h
r2938 r2962 1 /* $Id: xform_tmp.h,v 1. 1 2000-02-29 00:48:45 sandervlExp $ */1 /* $Id: xform_tmp.h,v 1.2 2000-03-01 18:49:41 jeroen Exp $ */ 2 2 3 3 /* … … 66 66 */ 67 67 68 static void TAG(transform_points1_general)( GLvector4f *to_vec,69 const GLmatrix *mat,70 const GLvector4f *from_vec,71 const GLubyte *mask,72 const GLubyte flag )68 static void __cdecl TAG(transform_points1_general)( GLvector4f *to_vec, 69 const GLmatrix *mat, 70 const GLvector4f *from_vec, 71 const GLubyte *mask, 72 const GLubyte flag ) 73 73 { 74 74 const GLuint stride = from_vec->stride; … … 88 88 const GLfloat ox = from[0]; 89 89 to[i][0] = m0 * ox + m12; 90 to[i][1] = m1 * ox + m13;91 to[i][2] = m2 * ox + m14;92 to[i][3] = m3 * ox + m15;93 } 94 } 95 96 to_vec->size = 4; 97 to_vec->flags |= VEC_SIZE_4; 98 to_vec->count = from_vec->count; 99 } 100 101 static void TAG(transform_points1_identity)( GLvector4f *to_vec,102 const GLmatrix *mat,103 const GLvector4f *from_vec,104 const GLubyte *mask,105 const GLubyte flag )90 to[i][1] = m1 * ox + m13; 91 to[i][2] = m2 * ox + m14; 92 to[i][3] = m3 * ox + m15; 93 } 94 } 95 96 to_vec->size = 4; 97 to_vec->flags |= VEC_SIZE_4; 98 to_vec->count = from_vec->count; 99 } 100 101 static void __cdecl TAG(transform_points1_identity)( GLvector4f *to_vec, 102 const GLmatrix *mat, 103 const GLvector4f *from_vec, 104 const GLubyte *mask, 105 const GLubyte flag ) 106 106 { 107 107 const GLuint stride = from_vec->stride; … … 117 117 STRIDE_LOOP { 118 118 CLIP_CHECK { 119 to[i][0] = from[0];119 to[i][0] = from[0]; 120 120 } 121 121 } … … 126 126 } 127 127 128 static void TAG(transform_points1_2d)( GLvector4f *to_vec,129 const GLmatrix *mat,130 const GLvector4f *from_vec,131 const GLubyte *mask,132 const GLubyte flag )128 static void __cdecl TAG(transform_points1_2d)( GLvector4f *to_vec, 129 const GLmatrix *mat, 130 const GLvector4f *from_vec, 131 const GLubyte *mask, 132 const GLubyte flag ) 133 133 { 134 134 const GLuint stride = from_vec->stride; … … 145 145 STRIDE_LOOP { 146 146 CLIP_CHECK { 147 const GLfloat ox = from[0];148 to[i][0] = m0 * ox + m12;149 to[i][1] = m1 * ox + m13;147 const GLfloat ox = from[0]; 148 to[i][0] = m0 * ox + m12; 149 to[i][1] = m1 * ox + m13; 150 150 } 151 151 } … … 155 155 } 156 156 157 static void TAG(transform_points1_2d_no_rot)( GLvector4f *to_vec,158 const GLmatrix *mat,159 const GLvector4f *from_vec,160 const GLubyte *mask,161 const GLubyte flag )157 static void __cdecl TAG(transform_points1_2d_no_rot)( GLvector4f *to_vec, 158 const GLmatrix *mat, 159 const GLvector4f *from_vec, 160 const GLubyte *mask, 161 const GLubyte flag ) 162 162 { 163 163 const GLuint stride = from_vec->stride; … … 173 173 STRIDE_LOOP { 174 174 CLIP_CHECK { 175 const GLfloat ox = from[0];176 to[i][0] = m0 * ox + m12;177 to[i][1] = m13;175 const GLfloat ox = from[0]; 176 to[i][0] = m0 * ox + m12; 177 to[i][1] = m13; 178 178 } 179 179 } … … 184 184 } 185 185 186 static void TAG(transform_points1_3d)( GLvector4f *to_vec,187 const GLmatrix *mat,188 const GLvector4f *from_vec,189 const GLubyte *mask,190 const GLubyte flag )186 static void __cdecl TAG(transform_points1_3d)( GLvector4f *to_vec, 187 const GLmatrix *mat, 188 const GLvector4f *from_vec, 189 const GLubyte *mask, 190 const GLubyte flag ) 191 191 { 192 192 const GLuint stride = from_vec->stride; … … 204 204 CLIP_CHECK { 205 205 const GLfloat ox = from[0]; 206 to[i][0] = m0 * ox + m12;207 to[i][1] = m1 * ox + m13;208 to[i][2] = m2 * ox + m14;206 to[i][0] = m0 * ox + m12; 207 to[i][1] = m1 * ox + m13; 208 to[i][2] = m2 * ox + m14; 209 209 } 210 210 } … … 215 215 216 216 217 static void TAG(transform_points1_3d_no_rot)( GLvector4f *to_vec,218 const GLmatrix *mat,219 const GLvector4f *from_vec,220 const GLubyte *mask,221 const GLubyte flag )217 static void __cdecl TAG(transform_points1_3d_no_rot)( GLvector4f *to_vec, 218 const GLmatrix *mat, 219 const GLvector4f *from_vec, 220 const GLubyte *mask, 221 const GLubyte flag ) 222 222 { 223 223 const GLuint stride = from_vec->stride; … … 234 234 STRIDE_LOOP { 235 235 CLIP_CHECK { 236 const GLfloat ox = from[0];237 to[i][0] = m0 * ox + m12;238 to[i][1] = m13;239 to[i][2] = m14;236 const GLfloat ox = from[0]; 237 to[i][0] = m0 * ox + m12; 238 to[i][1] = m13; 239 to[i][2] = m14; 240 240 } 241 241 } … … 245 245 } 246 246 247 static void TAG(transform_points1_perspective)( GLvector4f *to_vec,248 const GLmatrix *mat,249 const GLvector4f *from_vec,250 const GLubyte *mask,251 const GLubyte flag )247 static void __cdecl TAG(transform_points1_perspective)( GLvector4f *to_vec, 248 const GLmatrix *mat, 249 const GLvector4f *from_vec, 250 const GLubyte *mask, 251 const GLubyte flag ) 252 252 { 253 253 const GLuint stride = from_vec->stride; … … 282 282 * texture pipeline. 283 283 */ 284 static void TAG(transform_points2_general)( GLvector4f *to_vec,285 const GLmatrix *mat,286 const GLvector4f *from_vec,287 const GLubyte *mask,288 const GLubyte flag )284 static void __cdecl TAG(transform_points2_general)( GLvector4f *to_vec, 285 const GLmatrix *mat, 286 const GLvector4f *from_vec, 287 const GLubyte *mask, 288 const GLubyte flag ) 289 289 { 290 290 const GLuint stride = from_vec->stride; … … 303 303 CLIP_CHECK { 304 304 const GLfloat ox = from[0], oy = from[1]; 305 to[i][0] = m0 * ox + m4 * oy + m12;306 to[i][1] = m1 * ox + m5 * oy + m13;307 to[i][2] = m2 * ox + m6 * oy + m14;308 to[i][3] = m3 * ox + m7 * oy + m15;309 } 310 } 311 to_vec->size = 4; 312 to_vec->flags |= VEC_SIZE_4; 313 to_vec->count = from_vec->count; 314 } 315 316 static void TAG(transform_points2_identity)( GLvector4f *to_vec,317 const GLmatrix *mat,318 const GLvector4f *from_vec,319 const GLubyte *mask,320 const GLubyte flag )305 to[i][0] = m0 * ox + m4 * oy + m12; 306 to[i][1] = m1 * ox + m5 * oy + m13; 307 to[i][2] = m2 * ox + m6 * oy + m14; 308 to[i][3] = m3 * ox + m7 * oy + m15; 309 } 310 } 311 to_vec->size = 4; 312 to_vec->flags |= VEC_SIZE_4; 313 to_vec->count = from_vec->count; 314 } 315 316 static void __cdecl TAG(transform_points2_identity)( GLvector4f *to_vec, 317 const GLmatrix *mat, 318 const GLvector4f *from_vec, 319 const GLubyte *mask, 320 const GLubyte flag ) 321 321 { 322 322 const GLuint stride = from_vec->stride; … … 332 332 STRIDE_LOOP { 333 333 CLIP_CHECK { 334 to[i][0] = from[0];335 to[i][1] = from[1];334 to[i][0] = from[0]; 335 to[i][1] = from[1]; 336 336 } 337 337 } … … 341 341 } 342 342 343 static void TAG(transform_points2_2d)( GLvector4f *to_vec,344 const GLmatrix *mat,345 const GLvector4f *from_vec,346 const GLubyte *mask,347 const GLubyte flag )343 static void __cdecl TAG(transform_points2_2d)( GLvector4f *to_vec, 344 const GLmatrix *mat, 345 const GLvector4f *from_vec, 346 const GLubyte *mask, 347 const GLubyte flag ) 348 348 { 349 349 const GLuint stride = from_vec->stride; … … 360 360 STRIDE_LOOP { 361 361 CLIP_CHECK { 362 const GLfloat ox = from[0], oy = from[1];363 to[i][0] = m0 * ox + m4 * oy + m12;364 to[i][1] = m1 * ox + m5 * oy + m13;362 const GLfloat ox = from[0], oy = from[1]; 363 to[i][0] = m0 * ox + m4 * oy + m12; 364 to[i][1] = m1 * ox + m5 * oy + m13; 365 365 } 366 366 } … … 371 371 } 372 372 373 static void TAG(transform_points2_2d_no_rot)( GLvector4f *to_vec,374 const GLmatrix *mat,375 const GLvector4f *from_vec,376 const GLubyte *mask,377 const GLubyte flag )373 static void __cdecl TAG(transform_points2_2d_no_rot)( GLvector4f *to_vec, 374 const GLmatrix *mat, 375 const GLvector4f *from_vec, 376 const GLubyte *mask, 377 const GLubyte flag ) 378 378 { 379 379 const GLuint stride = from_vec->stride; … … 389 389 STRIDE_LOOP { 390 390 CLIP_CHECK { 391 const GLfloat ox = from[0], oy = from[1];392 to[i][0] = m0 * ox + m12;393 to[i][1] = m5 * oy + m13;391 const GLfloat ox = from[0], oy = from[1]; 392 to[i][0] = m0 * ox + m12; 393 to[i][1] = m5 * oy + m13; 394 394 } 395 395 } … … 400 400 } 401 401 402 static void TAG(transform_points2_3d)( GLvector4f *to_vec,403 const GLmatrix *mat,404 const GLvector4f *from_vec,405 const GLubyte *mask,406 const GLubyte flag )402 static void __cdecl TAG(transform_points2_3d)( GLvector4f *to_vec, 403 const GLmatrix *mat, 404 const GLvector4f *from_vec, 405 const GLubyte *mask, 406 const GLubyte flag ) 407 407 { 408 408 const GLuint stride = from_vec->stride; … … 434 434 * a texture transformation point of view. 435 435 */ 436 static void TAG(transform_points2_3d_no_rot)( GLvector4f *to_vec,437 const GLmatrix *mat,438 const GLvector4f *from_vec,439 const GLubyte *mask,440 const GLubyte flag )436 static void __cdecl TAG(transform_points2_3d_no_rot)( GLvector4f *to_vec, 437 const GLmatrix *mat, 438 const GLvector4f *from_vec, 439 const GLubyte *mask, 440 const GLubyte flag ) 441 441 { 442 442 const GLuint stride = from_vec->stride; … … 473 473 * attached to the assertions that have appeared in them. 474 474 */ 475 static void TAG(transform_points2_perspective)( GLvector4f *to_vec,476 const GLmatrix *mat,477 const GLvector4f *from_vec,478 const GLubyte *mask,479 const GLubyte flag )475 static void __cdecl TAG(transform_points2_perspective)( GLvector4f *to_vec, 476 const GLmatrix *mat, 477 const GLvector4f *from_vec, 478 const GLubyte *mask, 479 const GLubyte flag ) 480 480 { 481 481 const GLuint stride = from_vec->stride; … … 494 494 to[i][0] = m0 * ox ; 495 495 to[i][1] = m5 * oy ; 496 to[i][2] = m14;497 to[i][3] = 0;498 } 499 } 500 to_vec->size = 4; 501 to_vec->flags |= VEC_SIZE_4; 502 to_vec->count = from_vec->count; 503 } 504 505 506 507 static void TAG(transform_points3_general)( GLvector4f *to_vec,508 const GLmatrix *mat,509 const GLvector4f *from_vec,510 const GLubyte *mask,511 const GLubyte flag )496 to[i][2] = m14; 497 to[i][3] = 0; 498 } 499 } 500 to_vec->size = 4; 501 to_vec->flags |= VEC_SIZE_4; 502 to_vec->count = from_vec->count; 503 } 504 505 506 507 static void __cdecl TAG(transform_points3_general)( GLvector4f *to_vec, 508 const GLmatrix *mat, 509 const GLvector4f *from_vec, 510 const GLubyte *mask, 511 const GLubyte flag ) 512 512 { 513 513 const GLuint stride = from_vec->stride; … … 526 526 STRIDE_LOOP { 527 527 CLIP_CHECK { 528 const GLfloat ox = from[0], oy = from[1], oz = from[2];529 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12;530 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13;531 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14;532 to[i][3] = m3 * ox + m7 * oy + m11 * oz + m15;533 } 534 } 535 to_vec->size = 4; 536 to_vec->flags |= VEC_SIZE_4; 537 to_vec->count = from_vec->count; 538 } 539 540 static void TAG(transform_points3_identity)( GLvector4f *to_vec,541 const GLmatrix *mat,542 const GLvector4f *from_vec,543 const GLubyte *mask,544 const GLubyte flag )528 const GLfloat ox = from[0], oy = from[1], oz = from[2]; 529 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12; 530 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13; 531 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14; 532 to[i][3] = m3 * ox + m7 * oy + m11 * oz + m15; 533 } 534 } 535 to_vec->size = 4; 536 to_vec->flags |= VEC_SIZE_4; 537 to_vec->count = from_vec->count; 538 } 539 540 static void __cdecl TAG(transform_points3_identity)( GLvector4f *to_vec, 541 const GLmatrix *mat, 542 const GLvector4f *from_vec, 543 const GLubyte *mask, 544 const GLubyte flag ) 545 545 { 546 546 const GLuint stride = from_vec->stride; … … 556 556 STRIDE_LOOP { 557 557 CLIP_CHECK { 558 to[i][0] = from[0];559 to[i][1] = from[1];560 to[i][2] = from[2];558 to[i][0] = from[0]; 559 to[i][1] = from[1]; 560 to[i][2] = from[2]; 561 561 } 562 562 } … … 566 566 } 567 567 568 static void TAG(transform_points3_2d)( GLvector4f *to_vec,569 const GLmatrix *mat,570 const GLvector4f *from_vec,571 const GLubyte *mask,572 const GLubyte flag )568 static void __cdecl TAG(transform_points3_2d)( GLvector4f *to_vec, 569 const GLmatrix *mat, 570 const GLvector4f *from_vec, 571 const GLubyte *mask, 572 const GLubyte flag ) 573 573 { 574 574 const GLuint stride = from_vec->stride; … … 585 585 STRIDE_LOOP { 586 586 CLIP_CHECK { 587 const GLfloat ox = from[0], oy = from[1], oz = from[2];588 to[i][0] = m0 * ox + m4 * oy + m12 ;589 to[i][1] = m1 * ox + m5 * oy + m13 ;590 to[i][2] = + oz ;587 const GLfloat ox = from[0], oy = from[1], oz = from[2]; 588 to[i][0] = m0 * ox + m4 * oy + m12 ; 589 to[i][1] = m1 * ox + m5 * oy + m13 ; 590 to[i][2] = + oz ; 591 591 } 592 592 } … … 596 596 } 597 597 598 static void TAG(transform_points3_2d_no_rot)( GLvector4f *to_vec,599 const GLmatrix *mat,600 const GLvector4f *from_vec,601 const GLubyte *mask,602 const GLubyte flag )598 static void __cdecl TAG(transform_points3_2d_no_rot)( GLvector4f *to_vec, 599 const GLmatrix *mat, 600 const GLvector4f *from_vec, 601 const GLubyte *mask, 602 const GLubyte flag ) 603 603 { 604 604 const GLuint stride = from_vec->stride; … … 614 614 STRIDE_LOOP { 615 615 CLIP_CHECK { 616 const GLfloat ox = from[0], oy = from[1], oz = from[2];617 to[i][0] = m0 * ox + m12 ;618 to[i][1] = m5 * oy + m13 ;619 to[i][2] = + oz ;616 const GLfloat ox = from[0], oy = from[1], oz = from[2]; 617 to[i][0] = m0 * ox + m12 ; 618 to[i][1] = m5 * oy + m13 ; 619 to[i][2] = + oz ; 620 620 } 621 621 } … … 625 625 } 626 626 627 static void TAG(transform_points3_3d)( GLvector4f *to_vec,628 const GLmatrix *mat,629 const GLvector4f *from_vec,630 const GLubyte *mask,631 const GLubyte flag )627 static void __cdecl TAG(transform_points3_3d)( GLvector4f *to_vec, 628 const GLmatrix *mat, 629 const GLvector4f *from_vec, 630 const GLubyte *mask, 631 const GLubyte flag ) 632 632 { 633 633 const GLuint stride = from_vec->stride; … … 645 645 STRIDE_LOOP { 646 646 CLIP_CHECK { 647 const GLfloat ox = from[0], oy = from[1], oz = from[2];648 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12 ;649 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13 ;650 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14 ;647 const GLfloat ox = from[0], oy = from[1], oz = from[2]; 648 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12 ; 649 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13 ; 650 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14 ; 651 651 } 652 652 } … … 658 658 /* previously known as ortho... 659 659 */ 660 static void TAG(transform_points3_3d_no_rot)( GLvector4f *to_vec,661 const GLmatrix *mat,662 const GLvector4f *from_vec,663 const GLubyte *mask,664 const GLubyte flag )660 static void __cdecl TAG(transform_points3_3d_no_rot)( GLvector4f *to_vec, 661 const GLmatrix *mat, 662 const GLvector4f *from_vec, 663 const GLubyte *mask, 664 const GLubyte flag ) 665 665 { 666 666 const GLuint stride = from_vec->stride; … … 677 677 STRIDE_LOOP { 678 678 CLIP_CHECK { 679 const GLfloat ox = from[0], oy = from[1], oz = from[2];680 to[i][0] = m0 * ox + m12 ;681 to[i][1] = m5 * oy + m13 ;682 to[i][2] = m10 * oz + m14 ;679 const GLfloat ox = from[0], oy = from[1], oz = from[2]; 680 to[i][0] = m0 * ox + m12 ; 681 to[i][1] = m5 * oy + m13 ; 682 to[i][2] = m10 * oz + m14 ; 683 683 } 684 684 } … … 688 688 } 689 689 690 static void TAG(transform_points3_perspective)( GLvector4f *to_vec,691 const GLmatrix *mat,692 const GLvector4f *from_vec,693 const GLubyte *mask,694 const GLubyte flag )690 static void __cdecl TAG(transform_points3_perspective)( GLvector4f *to_vec, 691 const GLmatrix *mat, 692 const GLvector4f *from_vec, 693 const GLubyte *mask, 694 const GLubyte flag ) 695 695 { 696 696 const GLuint stride = from_vec->stride; … … 707 707 STRIDE_LOOP { 708 708 CLIP_CHECK { 709 const GLfloat ox = from[0], oy = from[1], oz = from[2];710 to[i][0] = m0 * ox + m8 * oz ;711 to[i][1] = m5 * oy + m9 * oz ;712 to[i][2] = m10 * oz + m14 ;713 to[i][3] = -oz ;714 } 715 } 716 to_vec->size = 4; 717 to_vec->flags |= VEC_SIZE_4; 718 to_vec->count = from_vec->count; 719 } 720 721 722 723 static void TAG(transform_points4_general)( GLvector4f *to_vec,724 const GLmatrix *mat,725 const GLvector4f *from_vec,726 const GLubyte *mask,727 const GLubyte flag )709 const GLfloat ox = from[0], oy = from[1], oz = from[2]; 710 to[i][0] = m0 * ox + m8 * oz ; 711 to[i][1] = m5 * oy + m9 * oz ; 712 to[i][2] = m10 * oz + m14 ; 713 to[i][3] = -oz ; 714 } 715 } 716 to_vec->size = 4; 717 to_vec->flags |= VEC_SIZE_4; 718 to_vec->count = from_vec->count; 719 } 720 721 722 723 static void __cdecl TAG(transform_points4_general)( GLvector4f *to_vec, 724 const GLmatrix *mat, 725 const GLvector4f *from_vec, 726 const GLubyte *mask, 727 const GLubyte flag ) 728 728 { 729 729 const GLuint stride = from_vec->stride; … … 742 742 STRIDE_LOOP { 743 743 CLIP_CHECK { 744 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3];745 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12 * ow;746 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13 * ow;747 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14 * ow;748 to[i][3] = m3 * ox + m7 * oy + m11 * oz + m15 * ow;749 } 750 } 751 to_vec->size = 4; 752 to_vec->flags |= VEC_SIZE_4; 753 to_vec->count = from_vec->count; 754 } 755 756 static void TAG(transform_points4_identity)( GLvector4f *to_vec,757 const GLmatrix *mat,758 const GLvector4f *from_vec,759 const GLubyte *mask,760 const GLubyte flag )744 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3]; 745 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12 * ow; 746 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13 * ow; 747 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14 * ow; 748 to[i][3] = m3 * ox + m7 * oy + m11 * oz + m15 * ow; 749 } 750 } 751 to_vec->size = 4; 752 to_vec->flags |= VEC_SIZE_4; 753 to_vec->count = from_vec->count; 754 } 755 756 static void __cdecl TAG(transform_points4_identity)( GLvector4f *to_vec, 757 const GLmatrix *mat, 758 const GLvector4f *from_vec, 759 const GLubyte *mask, 760 const GLubyte flag ) 761 761 { 762 762 const GLuint stride = from_vec->stride; … … 772 772 STRIDE_LOOP { 773 773 CLIP_CHECK { 774 to[i][0] = from[0];775 to[i][1] = from[1];776 to[i][2] = from[2];777 to[i][3] = from[3];778 } 779 } 780 to_vec->size = 4; 781 to_vec->flags |= VEC_SIZE_4; 782 to_vec->count = from_vec->count; 783 } 784 785 static void TAG(transform_points4_2d)( GLvector4f *to_vec,786 const GLmatrix *mat,787 const GLvector4f *from_vec,788 const GLubyte *mask,789 const GLubyte flag )774 to[i][0] = from[0]; 775 to[i][1] = from[1]; 776 to[i][2] = from[2]; 777 to[i][3] = from[3]; 778 } 779 } 780 to_vec->size = 4; 781 to_vec->flags |= VEC_SIZE_4; 782 to_vec->count = from_vec->count; 783 } 784 785 static void __cdecl TAG(transform_points4_2d)( GLvector4f *to_vec, 786 const GLmatrix *mat, 787 const GLvector4f *from_vec, 788 const GLubyte *mask, 789 const GLubyte flag ) 790 790 { 791 791 const GLuint stride = from_vec->stride; … … 802 802 STRIDE_LOOP { 803 803 CLIP_CHECK { 804 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3];805 to[i][0] = m0 * ox + m4 * oy + m12 * ow;806 to[i][1] = m1 * ox + m5 * oy + m13 * ow;807 to[i][2] = + oz ;808 to[i][3] = ow;809 } 810 } 811 to_vec->size = 4; 812 to_vec->flags |= VEC_SIZE_4; 813 to_vec->count = from_vec->count; 814 } 815 816 static void TAG(transform_points4_2d_no_rot)( GLvector4f *to_vec,817 const GLmatrix *mat,818 const GLvector4f *from_vec,819 const GLubyte *mask,820 const GLubyte flag )804 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3]; 805 to[i][0] = m0 * ox + m4 * oy + m12 * ow; 806 to[i][1] = m1 * ox + m5 * oy + m13 * ow; 807 to[i][2] = + oz ; 808 to[i][3] = ow; 809 } 810 } 811 to_vec->size = 4; 812 to_vec->flags |= VEC_SIZE_4; 813 to_vec->count = from_vec->count; 814 } 815 816 static void __cdecl TAG(transform_points4_2d_no_rot)( GLvector4f *to_vec, 817 const GLmatrix *mat, 818 const GLvector4f *from_vec, 819 const GLubyte *mask, 820 const GLubyte flag ) 821 821 { 822 822 const GLuint stride = from_vec->stride; … … 832 832 STRIDE_LOOP { 833 833 CLIP_CHECK { 834 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3];835 to[i][0] = m0 * ox + m12 * ow;836 to[i][1] = m5 * oy + m13 * ow;837 to[i][2] = + oz ;838 to[i][3] = ow;839 } 840 } 841 to_vec->size = 4; 842 to_vec->flags |= VEC_SIZE_4; 843 to_vec->count = from_vec->count; 844 } 845 846 static void TAG(transform_points4_3d)( GLvector4f *to_vec,847 const GLmatrix *mat,848 const GLvector4f *from_vec,849 const GLubyte *mask,850 const GLubyte flag )834 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3]; 835 to[i][0] = m0 * ox + m12 * ow; 836 to[i][1] = m5 * oy + m13 * ow; 837 to[i][2] = + oz ; 838 to[i][3] = ow; 839 } 840 } 841 to_vec->size = 4; 842 to_vec->flags |= VEC_SIZE_4; 843 to_vec->count = from_vec->count; 844 } 845 846 static void __cdecl TAG(transform_points4_3d)( GLvector4f *to_vec, 847 const GLmatrix *mat, 848 const GLvector4f *from_vec, 849 const GLubyte *mask, 850 const GLubyte flag ) 851 851 { 852 852 const GLuint stride = from_vec->stride; … … 864 864 STRIDE_LOOP { 865 865 CLIP_CHECK { 866 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3];867 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12 * ow;868 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13 * ow;869 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14 * ow;870 to[i][3] = ow;871 } 872 } 873 to_vec->size = 4; 874 to_vec->flags |= VEC_SIZE_4; 875 to_vec->count = from_vec->count; 876 } 877 878 static void TAG(transform_points4_3d_no_rot)( GLvector4f *to_vec,879 const GLmatrix *mat,880 const GLvector4f *from_vec,881 const GLubyte *mask,882 const GLubyte flag )866 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3]; 867 to[i][0] = m0 * ox + m4 * oy + m8 * oz + m12 * ow; 868 to[i][1] = m1 * ox + m5 * oy + m9 * oz + m13 * ow; 869 to[i][2] = m2 * ox + m6 * oy + m10 * oz + m14 * ow; 870 to[i][3] = ow; 871 } 872 } 873 to_vec->size = 4; 874 to_vec->flags |= VEC_SIZE_4; 875 to_vec->count = from_vec->count; 876 } 877 878 static void __cdecl TAG(transform_points4_3d_no_rot)( GLvector4f *to_vec, 879 const GLmatrix *mat, 880 const GLvector4f *from_vec, 881 const GLubyte *mask, 882 const GLubyte flag ) 883 883 { 884 884 const GLuint stride = from_vec->stride; … … 895 895 STRIDE_LOOP { 896 896 CLIP_CHECK { 897 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3];898 to[i][0] = m0 * ox + m12 * ow;899 to[i][1] = m5 * oy + m13 * ow;900 to[i][2] = m10 * oz + m14 * ow;901 to[i][3] = ow;902 } 903 } 904 to_vec->size = 4; 905 to_vec->flags |= VEC_SIZE_4; 906 to_vec->count = from_vec->count; 907 } 908 909 static void TAG(transform_points4_perspective)( GLvector4f *to_vec,910 const GLmatrix *mat,911 const GLvector4f *from_vec,912 const GLubyte *mask,913 const GLubyte flag )897 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3]; 898 to[i][0] = m0 * ox + m12 * ow; 899 to[i][1] = m5 * oy + m13 * ow; 900 to[i][2] = m10 * oz + m14 * ow; 901 to[i][3] = ow; 902 } 903 } 904 to_vec->size = 4; 905 to_vec->flags |= VEC_SIZE_4; 906 to_vec->count = from_vec->count; 907 } 908 909 static void __cdecl TAG(transform_points4_perspective)( GLvector4f *to_vec, 910 const GLmatrix *mat, 911 const GLvector4f *from_vec, 912 const GLubyte *mask, 913 const GLubyte flag ) 914 914 { 915 915 const GLuint stride = from_vec->stride; … … 926 926 STRIDE_LOOP { 927 927 CLIP_CHECK { 928 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3];929 to[i][0] = m0 * ox + m8 * oz ;930 to[i][1] = m5 * oy + m9 * oz ;931 to[i][2] = m10 * oz + m14 * ow ;932 to[i][3] = -oz ;928 const GLfloat ox = from[0], oy = from[1], oz = from[2], ow = from[3]; 929 to[i][0] = m0 * ox + m8 * oz ; 930 to[i][1] = m5 * oy + m9 * oz ; 931 to[i][2] = m10 * oz + m14 * ow ; 932 to[i][3] = -oz ; 933 933 } 934 934 }
Note:
See TracChangeset
for help on using the changeset viewer.
