441 lines
11 KiB
NASM
441 lines
11 KiB
NASM
title "OpenGL Functions:
|
|
;++
|
|
;
|
|
; Copyright (c) 2000 Microsoft Corporation
|
|
;
|
|
; Module Name:
|
|
;
|
|
; glapi.asm
|
|
;
|
|
; Abstract:
|
|
;
|
|
; OpenGL API function entries for AMD64.
|
|
;
|
|
; Author:
|
|
;
|
|
; David N. Cutler (davec) 31-Dec-2000
|
|
;
|
|
; Environment:
|
|
;
|
|
; User mode only.
|
|
;
|
|
;--
|
|
|
|
include ksamd64.inc
|
|
include glapi.inc
|
|
|
|
extern dwTlsOffset:dword
|
|
|
|
;
|
|
; Define macro for creating aligned public OpenGL API function.
|
|
;
|
|
|
|
MAKEOPENGLAPI macro Func
|
|
|
|
LEAF_ENTRY Func, _TEXT$00
|
|
|
|
mov eax, dwTlsOffset ; get TLS slot index
|
|
add rax, gs:[TeSelf] ; get address of GLTEBINFO address
|
|
mov rax, [rax] ; get GLTEBINFO address
|
|
jmp qword ptr (INDEX_&Func * 8)[rax] ; dispatch to function
|
|
|
|
LEAF_END Func, _TEXT$00
|
|
|
|
endm
|
|
|
|
;
|
|
; Define macro to jump through the OpenGL function dispatch table in the TEB.
|
|
;
|
|
|
|
FASTOPENGLAPI macro Func
|
|
|
|
LEAF_ENTRY Func, _TEXT$00
|
|
|
|
mov rax, gs:[TeSelf] ; get TEB address
|
|
jmp qword ptr TeglDispatchTable+ (FASTINDEX_&Func * 8)[rax] ;
|
|
|
|
LEAF_END Func, _TEXT$00
|
|
|
|
endm
|
|
|
|
FASTOPENGLAPI glCallList
|
|
FASTOPENGLAPI glCallLists
|
|
FASTOPENGLAPI glBegin
|
|
FASTOPENGLAPI glColor3b
|
|
FASTOPENGLAPI glColor3bv
|
|
FASTOPENGLAPI glColor3d
|
|
FASTOPENGLAPI glColor3dv
|
|
FASTOPENGLAPI glColor3f
|
|
FASTOPENGLAPI glColor3fv
|
|
FASTOPENGLAPI glColor3i
|
|
FASTOPENGLAPI glColor3iv
|
|
FASTOPENGLAPI glColor3s
|
|
FASTOPENGLAPI glColor3sv
|
|
FASTOPENGLAPI glColor3ub
|
|
FASTOPENGLAPI glColor3ubv
|
|
FASTOPENGLAPI glColor3ui
|
|
FASTOPENGLAPI glColor3uiv
|
|
FASTOPENGLAPI glColor3us
|
|
FASTOPENGLAPI glColor3usv
|
|
FASTOPENGLAPI glColor4b
|
|
FASTOPENGLAPI glColor4bv
|
|
FASTOPENGLAPI glColor4d
|
|
FASTOPENGLAPI glColor4dv
|
|
FASTOPENGLAPI glColor4f
|
|
FASTOPENGLAPI glColor4fv
|
|
FASTOPENGLAPI glColor4i
|
|
FASTOPENGLAPI glColor4iv
|
|
FASTOPENGLAPI glColor4s
|
|
FASTOPENGLAPI glColor4sv
|
|
FASTOPENGLAPI glColor4ub
|
|
FASTOPENGLAPI glColor4ubv
|
|
FASTOPENGLAPI glColor4ui
|
|
FASTOPENGLAPI glColor4uiv
|
|
FASTOPENGLAPI glColor4us
|
|
FASTOPENGLAPI glColor4usv
|
|
FASTOPENGLAPI glEdgeFlag
|
|
FASTOPENGLAPI glEdgeFlagv
|
|
FASTOPENGLAPI glEnd
|
|
FASTOPENGLAPI glIndexd
|
|
FASTOPENGLAPI glIndexdv
|
|
FASTOPENGLAPI glIndexf
|
|
FASTOPENGLAPI glIndexfv
|
|
FASTOPENGLAPI glIndexi
|
|
FASTOPENGLAPI glIndexiv
|
|
FASTOPENGLAPI glIndexs
|
|
FASTOPENGLAPI glIndexsv
|
|
FASTOPENGLAPI glNormal3b
|
|
FASTOPENGLAPI glNormal3bv
|
|
FASTOPENGLAPI glNormal3d
|
|
FASTOPENGLAPI glNormal3dv
|
|
FASTOPENGLAPI glNormal3f
|
|
FASTOPENGLAPI glNormal3fv
|
|
FASTOPENGLAPI glNormal3i
|
|
FASTOPENGLAPI glNormal3iv
|
|
FASTOPENGLAPI glNormal3s
|
|
FASTOPENGLAPI glNormal3sv
|
|
FASTOPENGLAPI glTexCoord1d
|
|
FASTOPENGLAPI glTexCoord1dv
|
|
FASTOPENGLAPI glTexCoord1f
|
|
FASTOPENGLAPI glTexCoord1fv
|
|
FASTOPENGLAPI glTexCoord1i
|
|
FASTOPENGLAPI glTexCoord1iv
|
|
FASTOPENGLAPI glTexCoord1s
|
|
FASTOPENGLAPI glTexCoord1sv
|
|
FASTOPENGLAPI glTexCoord2d
|
|
FASTOPENGLAPI glTexCoord2dv
|
|
FASTOPENGLAPI glTexCoord2f
|
|
FASTOPENGLAPI glTexCoord2fv
|
|
FASTOPENGLAPI glTexCoord2i
|
|
FASTOPENGLAPI glTexCoord2iv
|
|
FASTOPENGLAPI glTexCoord2s
|
|
FASTOPENGLAPI glTexCoord2sv
|
|
FASTOPENGLAPI glTexCoord3d
|
|
FASTOPENGLAPI glTexCoord3dv
|
|
FASTOPENGLAPI glTexCoord3f
|
|
FASTOPENGLAPI glTexCoord3fv
|
|
FASTOPENGLAPI glTexCoord3i
|
|
FASTOPENGLAPI glTexCoord3iv
|
|
FASTOPENGLAPI glTexCoord3s
|
|
FASTOPENGLAPI glTexCoord3sv
|
|
FASTOPENGLAPI glTexCoord4d
|
|
FASTOPENGLAPI glTexCoord4dv
|
|
FASTOPENGLAPI glTexCoord4f
|
|
FASTOPENGLAPI glTexCoord4fv
|
|
FASTOPENGLAPI glTexCoord4i
|
|
FASTOPENGLAPI glTexCoord4iv
|
|
FASTOPENGLAPI glTexCoord4s
|
|
FASTOPENGLAPI glTexCoord4sv
|
|
FASTOPENGLAPI glVertex2d
|
|
FASTOPENGLAPI glVertex2dv
|
|
FASTOPENGLAPI glVertex2f
|
|
FASTOPENGLAPI glVertex2fv
|
|
FASTOPENGLAPI glVertex2i
|
|
FASTOPENGLAPI glVertex2iv
|
|
FASTOPENGLAPI glVertex2s
|
|
FASTOPENGLAPI glVertex2sv
|
|
FASTOPENGLAPI glVertex3d
|
|
FASTOPENGLAPI glVertex3dv
|
|
FASTOPENGLAPI glVertex3f
|
|
FASTOPENGLAPI glVertex3fv
|
|
FASTOPENGLAPI glVertex3i
|
|
FASTOPENGLAPI glVertex3iv
|
|
FASTOPENGLAPI glVertex3s
|
|
FASTOPENGLAPI glVertex3sv
|
|
FASTOPENGLAPI glVertex4d
|
|
FASTOPENGLAPI glVertex4dv
|
|
FASTOPENGLAPI glVertex4f
|
|
FASTOPENGLAPI glVertex4fv
|
|
FASTOPENGLAPI glVertex4i
|
|
FASTOPENGLAPI glVertex4iv
|
|
FASTOPENGLAPI glVertex4s
|
|
FASTOPENGLAPI glVertex4sv
|
|
FASTOPENGLAPI glMaterialf
|
|
FASTOPENGLAPI glMaterialfv
|
|
FASTOPENGLAPI glMateriali
|
|
FASTOPENGLAPI glMaterialiv
|
|
FASTOPENGLAPI glDisable
|
|
FASTOPENGLAPI glEnable
|
|
FASTOPENGLAPI glPopAttrib
|
|
FASTOPENGLAPI glPushAttrib
|
|
FASTOPENGLAPI glEvalCoord1d
|
|
FASTOPENGLAPI glEvalCoord1dv
|
|
FASTOPENGLAPI glEvalCoord1f
|
|
FASTOPENGLAPI glEvalCoord1fv
|
|
FASTOPENGLAPI glEvalCoord2d
|
|
FASTOPENGLAPI glEvalCoord2dv
|
|
FASTOPENGLAPI glEvalCoord2f
|
|
FASTOPENGLAPI glEvalCoord2fv
|
|
FASTOPENGLAPI glEvalPoint1
|
|
FASTOPENGLAPI glEvalPoint2
|
|
FASTOPENGLAPI glLoadIdentity
|
|
FASTOPENGLAPI glLoadMatrixf
|
|
FASTOPENGLAPI glLoadMatrixd
|
|
FASTOPENGLAPI glMatrixMode
|
|
FASTOPENGLAPI glMultMatrixf
|
|
FASTOPENGLAPI glMultMatrixd
|
|
FASTOPENGLAPI glPopMatrix
|
|
FASTOPENGLAPI glPushMatrix
|
|
FASTOPENGLAPI glRotated
|
|
FASTOPENGLAPI glRotatef
|
|
FASTOPENGLAPI glScaled
|
|
FASTOPENGLAPI glScalef
|
|
FASTOPENGLAPI glTranslated
|
|
FASTOPENGLAPI glTranslatef
|
|
FASTOPENGLAPI glArrayElement
|
|
FASTOPENGLAPI glBindTexture
|
|
FASTOPENGLAPI glColorPointer
|
|
FASTOPENGLAPI glDisableClientState
|
|
FASTOPENGLAPI glDrawArrays
|
|
FASTOPENGLAPI glDrawElements
|
|
FASTOPENGLAPI glEdgeFlagPointer
|
|
FASTOPENGLAPI glEnableClientState
|
|
FASTOPENGLAPI glIndexPointer
|
|
FASTOPENGLAPI glIndexub
|
|
FASTOPENGLAPI glIndexubv
|
|
FASTOPENGLAPI glInterleavedArrays
|
|
FASTOPENGLAPI glNormalPointer
|
|
FASTOPENGLAPI glPolygonOffset
|
|
FASTOPENGLAPI glTexCoordPointer
|
|
FASTOPENGLAPI glVertexPointer
|
|
FASTOPENGLAPI glGetPointerv
|
|
FASTOPENGLAPI glPopClientAttrib
|
|
FASTOPENGLAPI glPushClientAttrib
|
|
FASTOPENGLAPI glDrawRangeElementsWIN
|
|
FASTOPENGLAPI glColorTableEXT
|
|
FASTOPENGLAPI glColorSubTableEXT
|
|
FASTOPENGLAPI glCurrentTextureIndexWIN
|
|
FASTOPENGLAPI glBindNthTextureWIN
|
|
FASTOPENGLAPI glNthTexCombineFuncWIN
|
|
FASTOPENGLAPI glMultiTexCoord1fWIN
|
|
FASTOPENGLAPI glMultiTexCoord1fvWIN
|
|
FASTOPENGLAPI glMultiTexCoord1iWIN
|
|
FASTOPENGLAPI glMultiTexCoord1ivWIN
|
|
FASTOPENGLAPI glMultiTexCoord2fWIN
|
|
FASTOPENGLAPI glMultiTexCoord2fvWIN
|
|
FASTOPENGLAPI glMultiTexCoord2iWIN
|
|
FASTOPENGLAPI glMultiTexCoord2ivWIN
|
|
|
|
MAKEOPENGLAPI glClear
|
|
MAKEOPENGLAPI glClearAccum
|
|
MAKEOPENGLAPI glClearIndex
|
|
MAKEOPENGLAPI glClearColor
|
|
MAKEOPENGLAPI glClearStencil
|
|
MAKEOPENGLAPI glClearDepth
|
|
MAKEOPENGLAPI glBitmap
|
|
MAKEOPENGLAPI glTexImage1D
|
|
MAKEOPENGLAPI glTexImage2D
|
|
MAKEOPENGLAPI glCopyPixels
|
|
MAKEOPENGLAPI glReadPixels
|
|
MAKEOPENGLAPI glDrawPixels
|
|
MAKEOPENGLAPI glRectd
|
|
MAKEOPENGLAPI glRectdv
|
|
MAKEOPENGLAPI glRectf
|
|
MAKEOPENGLAPI glRectfv
|
|
MAKEOPENGLAPI glRecti
|
|
MAKEOPENGLAPI glRectiv
|
|
MAKEOPENGLAPI glRects
|
|
MAKEOPENGLAPI glRectsv
|
|
MAKEOPENGLAPI glNewList
|
|
MAKEOPENGLAPI glEndList
|
|
MAKEOPENGLAPI glDeleteLists
|
|
MAKEOPENGLAPI glGenLists
|
|
MAKEOPENGLAPI glListBase
|
|
MAKEOPENGLAPI glRasterPos2d
|
|
MAKEOPENGLAPI glRasterPos2dv
|
|
MAKEOPENGLAPI glRasterPos2f
|
|
MAKEOPENGLAPI glRasterPos2fv
|
|
MAKEOPENGLAPI glRasterPos2i
|
|
MAKEOPENGLAPI glRasterPos2iv
|
|
MAKEOPENGLAPI glRasterPos2s
|
|
MAKEOPENGLAPI glRasterPos2sv
|
|
MAKEOPENGLAPI glRasterPos3d
|
|
MAKEOPENGLAPI glRasterPos3dv
|
|
MAKEOPENGLAPI glRasterPos3f
|
|
MAKEOPENGLAPI glRasterPos3fv
|
|
MAKEOPENGLAPI glRasterPos3i
|
|
MAKEOPENGLAPI glRasterPos3iv
|
|
MAKEOPENGLAPI glRasterPos3s
|
|
MAKEOPENGLAPI glRasterPos3sv
|
|
MAKEOPENGLAPI glRasterPos4d
|
|
MAKEOPENGLAPI glRasterPos4dv
|
|
MAKEOPENGLAPI glRasterPos4f
|
|
MAKEOPENGLAPI glRasterPos4fv
|
|
MAKEOPENGLAPI glRasterPos4i
|
|
MAKEOPENGLAPI glRasterPos4iv
|
|
MAKEOPENGLAPI glRasterPos4s
|
|
MAKEOPENGLAPI glRasterPos4sv
|
|
MAKEOPENGLAPI glClipPlane
|
|
MAKEOPENGLAPI glColorMaterial
|
|
MAKEOPENGLAPI glCullFace
|
|
MAKEOPENGLAPI glFogf
|
|
MAKEOPENGLAPI glFogfv
|
|
MAKEOPENGLAPI glFogi
|
|
MAKEOPENGLAPI glFogiv
|
|
MAKEOPENGLAPI glFrontFace
|
|
MAKEOPENGLAPI glHint
|
|
MAKEOPENGLAPI glLightf
|
|
MAKEOPENGLAPI glLightfv
|
|
MAKEOPENGLAPI glLighti
|
|
MAKEOPENGLAPI glLightiv
|
|
MAKEOPENGLAPI glLightModelf
|
|
MAKEOPENGLAPI glLightModelfv
|
|
MAKEOPENGLAPI glLightModeli
|
|
MAKEOPENGLAPI glLightModeliv
|
|
MAKEOPENGLAPI glLineStipple
|
|
MAKEOPENGLAPI glLineWidth
|
|
MAKEOPENGLAPI glPointSize
|
|
MAKEOPENGLAPI glPolygonMode
|
|
MAKEOPENGLAPI glPolygonStipple
|
|
MAKEOPENGLAPI glScissor
|
|
MAKEOPENGLAPI glFinish
|
|
MAKEOPENGLAPI glShadeModel
|
|
MAKEOPENGLAPI glTexParameterf
|
|
MAKEOPENGLAPI glTexParameterfv
|
|
MAKEOPENGLAPI glTexParameteri
|
|
MAKEOPENGLAPI glTexParameteriv
|
|
MAKEOPENGLAPI glTexEnvf
|
|
MAKEOPENGLAPI glTexEnvfv
|
|
MAKEOPENGLAPI glTexEnvi
|
|
MAKEOPENGLAPI glTexEnviv
|
|
MAKEOPENGLAPI glTexGend
|
|
MAKEOPENGLAPI glTexGendv
|
|
MAKEOPENGLAPI glTexGenf
|
|
MAKEOPENGLAPI glTexGenfv
|
|
MAKEOPENGLAPI glTexGeni
|
|
MAKEOPENGLAPI glTexGeniv
|
|
MAKEOPENGLAPI glFeedbackBuffer
|
|
MAKEOPENGLAPI glSelectBuffer
|
|
MAKEOPENGLAPI glRenderMode
|
|
MAKEOPENGLAPI glInitNames
|
|
MAKEOPENGLAPI glLoadName
|
|
MAKEOPENGLAPI glPassThrough
|
|
MAKEOPENGLAPI glPopName
|
|
MAKEOPENGLAPI glPushName
|
|
MAKEOPENGLAPI glDrawBuffer
|
|
MAKEOPENGLAPI glStencilMask
|
|
MAKEOPENGLAPI glColorMask
|
|
MAKEOPENGLAPI glDepthMask
|
|
MAKEOPENGLAPI glIndexMask
|
|
MAKEOPENGLAPI glAccum
|
|
MAKEOPENGLAPI glFlush
|
|
MAKEOPENGLAPI glMap1d
|
|
MAKEOPENGLAPI glMap1f
|
|
MAKEOPENGLAPI glMap2d
|
|
MAKEOPENGLAPI glMap2f
|
|
MAKEOPENGLAPI glMapGrid1d
|
|
MAKEOPENGLAPI glMapGrid1f
|
|
MAKEOPENGLAPI glMapGrid2d
|
|
MAKEOPENGLAPI glMapGrid2f
|
|
MAKEOPENGLAPI glEvalMesh1
|
|
MAKEOPENGLAPI glEvalMesh2
|
|
MAKEOPENGLAPI glAlphaFunc
|
|
MAKEOPENGLAPI glBlendFunc
|
|
MAKEOPENGLAPI glLogicOp
|
|
MAKEOPENGLAPI glStencilFunc
|
|
MAKEOPENGLAPI glStencilOp
|
|
MAKEOPENGLAPI glDepthFunc
|
|
MAKEOPENGLAPI glPixelZoom
|
|
MAKEOPENGLAPI glPixelTransferf
|
|
MAKEOPENGLAPI glPixelTransferi
|
|
MAKEOPENGLAPI glPixelStoref
|
|
MAKEOPENGLAPI glPixelStorei
|
|
MAKEOPENGLAPI glPixelMapfv
|
|
MAKEOPENGLAPI glPixelMapuiv
|
|
MAKEOPENGLAPI glPixelMapusv
|
|
MAKEOPENGLAPI glReadBuffer
|
|
MAKEOPENGLAPI glGetBooleanv
|
|
MAKEOPENGLAPI glGetClipPlane
|
|
MAKEOPENGLAPI glGetDoublev
|
|
MAKEOPENGLAPI glGetError
|
|
MAKEOPENGLAPI glGetFloatv
|
|
MAKEOPENGLAPI glGetIntegerv
|
|
MAKEOPENGLAPI glGetLightfv
|
|
MAKEOPENGLAPI glGetLightiv
|
|
MAKEOPENGLAPI glGetMapdv
|
|
MAKEOPENGLAPI glGetMapfv
|
|
MAKEOPENGLAPI glGetMapiv
|
|
MAKEOPENGLAPI glGetMaterialfv
|
|
MAKEOPENGLAPI glGetMaterialiv
|
|
MAKEOPENGLAPI glGetPixelMapfv
|
|
MAKEOPENGLAPI glGetPixelMapuiv
|
|
MAKEOPENGLAPI glGetPixelMapusv
|
|
MAKEOPENGLAPI glGetPolygonStipple
|
|
MAKEOPENGLAPI glGetString
|
|
MAKEOPENGLAPI glGetTexEnvfv
|
|
MAKEOPENGLAPI glGetTexEnviv
|
|
MAKEOPENGLAPI glGetTexGendv
|
|
MAKEOPENGLAPI glGetTexGenfv
|
|
MAKEOPENGLAPI glGetTexGeniv
|
|
MAKEOPENGLAPI glGetTexImage
|
|
MAKEOPENGLAPI glGetTexParameterfv
|
|
MAKEOPENGLAPI glGetTexParameteriv
|
|
MAKEOPENGLAPI glGetTexLevelParameterfv
|
|
MAKEOPENGLAPI glGetTexLevelParameteriv
|
|
MAKEOPENGLAPI glIsEnabled
|
|
MAKEOPENGLAPI glIsList
|
|
MAKEOPENGLAPI glDepthRange
|
|
MAKEOPENGLAPI glFrustum
|
|
MAKEOPENGLAPI glOrtho
|
|
MAKEOPENGLAPI glViewport
|
|
MAKEOPENGLAPI glAreTexturesResident
|
|
MAKEOPENGLAPI glCopyTexImage1D
|
|
MAKEOPENGLAPI glCopyTexImage2D
|
|
MAKEOPENGLAPI glCopyTexSubImage1D
|
|
MAKEOPENGLAPI glCopyTexSubImage2D
|
|
MAKEOPENGLAPI glDeleteTextures
|
|
MAKEOPENGLAPI glGenTextures
|
|
MAKEOPENGLAPI glIsTexture
|
|
MAKEOPENGLAPI glPrioritizeTextures
|
|
MAKEOPENGLAPI glTexSubImage1D
|
|
MAKEOPENGLAPI glTexSubImage2D
|
|
MAKEOPENGLAPI glGetColorTableEXT
|
|
MAKEOPENGLAPI glGetColorTableParameterivEXT
|
|
MAKEOPENGLAPI glGetColorTableParameterfvEXT
|
|
MAKEOPENGLAPI glMultiTexCoord1dWIN
|
|
MAKEOPENGLAPI glMultiTexCoord1dvWIN
|
|
MAKEOPENGLAPI glMultiTexCoord1sWIN
|
|
MAKEOPENGLAPI glMultiTexCoord1svWIN
|
|
MAKEOPENGLAPI glMultiTexCoord2dWIN
|
|
MAKEOPENGLAPI glMultiTexCoord2dvWIN
|
|
MAKEOPENGLAPI glMultiTexCoord2sWIN
|
|
MAKEOPENGLAPI glMultiTexCoord2svWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3dWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3dvWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3fWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3fvWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3iWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3ivWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3sWIN
|
|
MAKEOPENGLAPI glMultiTexCoord3svWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4dWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4dvWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4fWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4fvWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4iWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4ivWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4sWIN
|
|
MAKEOPENGLAPI glMultiTexCoord4svWIN
|
|
|
|
end
|