Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

440 lines
11 KiB

  1. title "OpenGL Functions:
  2. ;++
  3. ;
  4. ; Copyright (c) 2000 Microsoft Corporation
  5. ;
  6. ; Module Name:
  7. ;
  8. ; glapi.asm
  9. ;
  10. ; Abstract:
  11. ;
  12. ; OpenGL API function entries for AMD64.
  13. ;
  14. ; Author:
  15. ;
  16. ; David N. Cutler (davec) 31-Dec-2000
  17. ;
  18. ; Environment:
  19. ;
  20. ; User mode only.
  21. ;
  22. ;--
  23. include ksamd64.inc
  24. include glapi.inc
  25. extern dwTlsOffset:dword
  26. ;
  27. ; Define macro for creating aligned public OpenGL API function.
  28. ;
  29. MAKEOPENGLAPI macro Func
  30. LEAF_ENTRY Func, _TEXT$00
  31. mov eax, dwTlsOffset ; get TLS slot index
  32. add rax, gs:[TeSelf] ; get address of GLTEBINFO address
  33. mov rax, [rax] ; get GLTEBINFO address
  34. jmp qword ptr (INDEX_&Func * 8)[rax] ; dispatch to function
  35. LEAF_END Func, _TEXT$00
  36. endm
  37. ;
  38. ; Define macro to jump through the OpenGL function dispatch table in the TEB.
  39. ;
  40. FASTOPENGLAPI macro Func
  41. LEAF_ENTRY Func, _TEXT$00
  42. mov rax, gs:[TeSelf] ; get TEB address
  43. jmp qword ptr TeglDispatchTable+ (FASTINDEX_&Func * 8)[rax] ;
  44. LEAF_END Func, _TEXT$00
  45. endm
  46. FASTOPENGLAPI glCallList
  47. FASTOPENGLAPI glCallLists
  48. FASTOPENGLAPI glBegin
  49. FASTOPENGLAPI glColor3b
  50. FASTOPENGLAPI glColor3bv
  51. FASTOPENGLAPI glColor3d
  52. FASTOPENGLAPI glColor3dv
  53. FASTOPENGLAPI glColor3f
  54. FASTOPENGLAPI glColor3fv
  55. FASTOPENGLAPI glColor3i
  56. FASTOPENGLAPI glColor3iv
  57. FASTOPENGLAPI glColor3s
  58. FASTOPENGLAPI glColor3sv
  59. FASTOPENGLAPI glColor3ub
  60. FASTOPENGLAPI glColor3ubv
  61. FASTOPENGLAPI glColor3ui
  62. FASTOPENGLAPI glColor3uiv
  63. FASTOPENGLAPI glColor3us
  64. FASTOPENGLAPI glColor3usv
  65. FASTOPENGLAPI glColor4b
  66. FASTOPENGLAPI glColor4bv
  67. FASTOPENGLAPI glColor4d
  68. FASTOPENGLAPI glColor4dv
  69. FASTOPENGLAPI glColor4f
  70. FASTOPENGLAPI glColor4fv
  71. FASTOPENGLAPI glColor4i
  72. FASTOPENGLAPI glColor4iv
  73. FASTOPENGLAPI glColor4s
  74. FASTOPENGLAPI glColor4sv
  75. FASTOPENGLAPI glColor4ub
  76. FASTOPENGLAPI glColor4ubv
  77. FASTOPENGLAPI glColor4ui
  78. FASTOPENGLAPI glColor4uiv
  79. FASTOPENGLAPI glColor4us
  80. FASTOPENGLAPI glColor4usv
  81. FASTOPENGLAPI glEdgeFlag
  82. FASTOPENGLAPI glEdgeFlagv
  83. FASTOPENGLAPI glEnd
  84. FASTOPENGLAPI glIndexd
  85. FASTOPENGLAPI glIndexdv
  86. FASTOPENGLAPI glIndexf
  87. FASTOPENGLAPI glIndexfv
  88. FASTOPENGLAPI glIndexi
  89. FASTOPENGLAPI glIndexiv
  90. FASTOPENGLAPI glIndexs
  91. FASTOPENGLAPI glIndexsv
  92. FASTOPENGLAPI glNormal3b
  93. FASTOPENGLAPI glNormal3bv
  94. FASTOPENGLAPI glNormal3d
  95. FASTOPENGLAPI glNormal3dv
  96. FASTOPENGLAPI glNormal3f
  97. FASTOPENGLAPI glNormal3fv
  98. FASTOPENGLAPI glNormal3i
  99. FASTOPENGLAPI glNormal3iv
  100. FASTOPENGLAPI glNormal3s
  101. FASTOPENGLAPI glNormal3sv
  102. FASTOPENGLAPI glTexCoord1d
  103. FASTOPENGLAPI glTexCoord1dv
  104. FASTOPENGLAPI glTexCoord1f
  105. FASTOPENGLAPI glTexCoord1fv
  106. FASTOPENGLAPI glTexCoord1i
  107. FASTOPENGLAPI glTexCoord1iv
  108. FASTOPENGLAPI glTexCoord1s
  109. FASTOPENGLAPI glTexCoord1sv
  110. FASTOPENGLAPI glTexCoord2d
  111. FASTOPENGLAPI glTexCoord2dv
  112. FASTOPENGLAPI glTexCoord2f
  113. FASTOPENGLAPI glTexCoord2fv
  114. FASTOPENGLAPI glTexCoord2i
  115. FASTOPENGLAPI glTexCoord2iv
  116. FASTOPENGLAPI glTexCoord2s
  117. FASTOPENGLAPI glTexCoord2sv
  118. FASTOPENGLAPI glTexCoord3d
  119. FASTOPENGLAPI glTexCoord3dv
  120. FASTOPENGLAPI glTexCoord3f
  121. FASTOPENGLAPI glTexCoord3fv
  122. FASTOPENGLAPI glTexCoord3i
  123. FASTOPENGLAPI glTexCoord3iv
  124. FASTOPENGLAPI glTexCoord3s
  125. FASTOPENGLAPI glTexCoord3sv
  126. FASTOPENGLAPI glTexCoord4d
  127. FASTOPENGLAPI glTexCoord4dv
  128. FASTOPENGLAPI glTexCoord4f
  129. FASTOPENGLAPI glTexCoord4fv
  130. FASTOPENGLAPI glTexCoord4i
  131. FASTOPENGLAPI glTexCoord4iv
  132. FASTOPENGLAPI glTexCoord4s
  133. FASTOPENGLAPI glTexCoord4sv
  134. FASTOPENGLAPI glVertex2d
  135. FASTOPENGLAPI glVertex2dv
  136. FASTOPENGLAPI glVertex2f
  137. FASTOPENGLAPI glVertex2fv
  138. FASTOPENGLAPI glVertex2i
  139. FASTOPENGLAPI glVertex2iv
  140. FASTOPENGLAPI glVertex2s
  141. FASTOPENGLAPI glVertex2sv
  142. FASTOPENGLAPI glVertex3d
  143. FASTOPENGLAPI glVertex3dv
  144. FASTOPENGLAPI glVertex3f
  145. FASTOPENGLAPI glVertex3fv
  146. FASTOPENGLAPI glVertex3i
  147. FASTOPENGLAPI glVertex3iv
  148. FASTOPENGLAPI glVertex3s
  149. FASTOPENGLAPI glVertex3sv
  150. FASTOPENGLAPI glVertex4d
  151. FASTOPENGLAPI glVertex4dv
  152. FASTOPENGLAPI glVertex4f
  153. FASTOPENGLAPI glVertex4fv
  154. FASTOPENGLAPI glVertex4i
  155. FASTOPENGLAPI glVertex4iv
  156. FASTOPENGLAPI glVertex4s
  157. FASTOPENGLAPI glVertex4sv
  158. FASTOPENGLAPI glMaterialf
  159. FASTOPENGLAPI glMaterialfv
  160. FASTOPENGLAPI glMateriali
  161. FASTOPENGLAPI glMaterialiv
  162. FASTOPENGLAPI glDisable
  163. FASTOPENGLAPI glEnable
  164. FASTOPENGLAPI glPopAttrib
  165. FASTOPENGLAPI glPushAttrib
  166. FASTOPENGLAPI glEvalCoord1d
  167. FASTOPENGLAPI glEvalCoord1dv
  168. FASTOPENGLAPI glEvalCoord1f
  169. FASTOPENGLAPI glEvalCoord1fv
  170. FASTOPENGLAPI glEvalCoord2d
  171. FASTOPENGLAPI glEvalCoord2dv
  172. FASTOPENGLAPI glEvalCoord2f
  173. FASTOPENGLAPI glEvalCoord2fv
  174. FASTOPENGLAPI glEvalPoint1
  175. FASTOPENGLAPI glEvalPoint2
  176. FASTOPENGLAPI glLoadIdentity
  177. FASTOPENGLAPI glLoadMatrixf
  178. FASTOPENGLAPI glLoadMatrixd
  179. FASTOPENGLAPI glMatrixMode
  180. FASTOPENGLAPI glMultMatrixf
  181. FASTOPENGLAPI glMultMatrixd
  182. FASTOPENGLAPI glPopMatrix
  183. FASTOPENGLAPI glPushMatrix
  184. FASTOPENGLAPI glRotated
  185. FASTOPENGLAPI glRotatef
  186. FASTOPENGLAPI glScaled
  187. FASTOPENGLAPI glScalef
  188. FASTOPENGLAPI glTranslated
  189. FASTOPENGLAPI glTranslatef
  190. FASTOPENGLAPI glArrayElement
  191. FASTOPENGLAPI glBindTexture
  192. FASTOPENGLAPI glColorPointer
  193. FASTOPENGLAPI glDisableClientState
  194. FASTOPENGLAPI glDrawArrays
  195. FASTOPENGLAPI glDrawElements
  196. FASTOPENGLAPI glEdgeFlagPointer
  197. FASTOPENGLAPI glEnableClientState
  198. FASTOPENGLAPI glIndexPointer
  199. FASTOPENGLAPI glIndexub
  200. FASTOPENGLAPI glIndexubv
  201. FASTOPENGLAPI glInterleavedArrays
  202. FASTOPENGLAPI glNormalPointer
  203. FASTOPENGLAPI glPolygonOffset
  204. FASTOPENGLAPI glTexCoordPointer
  205. FASTOPENGLAPI glVertexPointer
  206. FASTOPENGLAPI glGetPointerv
  207. FASTOPENGLAPI glPopClientAttrib
  208. FASTOPENGLAPI glPushClientAttrib
  209. FASTOPENGLAPI glDrawRangeElementsWIN
  210. FASTOPENGLAPI glColorTableEXT
  211. FASTOPENGLAPI glColorSubTableEXT
  212. FASTOPENGLAPI glCurrentTextureIndexWIN
  213. FASTOPENGLAPI glBindNthTextureWIN
  214. FASTOPENGLAPI glNthTexCombineFuncWIN
  215. FASTOPENGLAPI glMultiTexCoord1fWIN
  216. FASTOPENGLAPI glMultiTexCoord1fvWIN
  217. FASTOPENGLAPI glMultiTexCoord1iWIN
  218. FASTOPENGLAPI glMultiTexCoord1ivWIN
  219. FASTOPENGLAPI glMultiTexCoord2fWIN
  220. FASTOPENGLAPI glMultiTexCoord2fvWIN
  221. FASTOPENGLAPI glMultiTexCoord2iWIN
  222. FASTOPENGLAPI glMultiTexCoord2ivWIN
  223. MAKEOPENGLAPI glClear
  224. MAKEOPENGLAPI glClearAccum
  225. MAKEOPENGLAPI glClearIndex
  226. MAKEOPENGLAPI glClearColor
  227. MAKEOPENGLAPI glClearStencil
  228. MAKEOPENGLAPI glClearDepth
  229. MAKEOPENGLAPI glBitmap
  230. MAKEOPENGLAPI glTexImage1D
  231. MAKEOPENGLAPI glTexImage2D
  232. MAKEOPENGLAPI glCopyPixels
  233. MAKEOPENGLAPI glReadPixels
  234. MAKEOPENGLAPI glDrawPixels
  235. MAKEOPENGLAPI glRectd
  236. MAKEOPENGLAPI glRectdv
  237. MAKEOPENGLAPI glRectf
  238. MAKEOPENGLAPI glRectfv
  239. MAKEOPENGLAPI glRecti
  240. MAKEOPENGLAPI glRectiv
  241. MAKEOPENGLAPI glRects
  242. MAKEOPENGLAPI glRectsv
  243. MAKEOPENGLAPI glNewList
  244. MAKEOPENGLAPI glEndList
  245. MAKEOPENGLAPI glDeleteLists
  246. MAKEOPENGLAPI glGenLists
  247. MAKEOPENGLAPI glListBase
  248. MAKEOPENGLAPI glRasterPos2d
  249. MAKEOPENGLAPI glRasterPos2dv
  250. MAKEOPENGLAPI glRasterPos2f
  251. MAKEOPENGLAPI glRasterPos2fv
  252. MAKEOPENGLAPI glRasterPos2i
  253. MAKEOPENGLAPI glRasterPos2iv
  254. MAKEOPENGLAPI glRasterPos2s
  255. MAKEOPENGLAPI glRasterPos2sv
  256. MAKEOPENGLAPI glRasterPos3d
  257. MAKEOPENGLAPI glRasterPos3dv
  258. MAKEOPENGLAPI glRasterPos3f
  259. MAKEOPENGLAPI glRasterPos3fv
  260. MAKEOPENGLAPI glRasterPos3i
  261. MAKEOPENGLAPI glRasterPos3iv
  262. MAKEOPENGLAPI glRasterPos3s
  263. MAKEOPENGLAPI glRasterPos3sv
  264. MAKEOPENGLAPI glRasterPos4d
  265. MAKEOPENGLAPI glRasterPos4dv
  266. MAKEOPENGLAPI glRasterPos4f
  267. MAKEOPENGLAPI glRasterPos4fv
  268. MAKEOPENGLAPI glRasterPos4i
  269. MAKEOPENGLAPI glRasterPos4iv
  270. MAKEOPENGLAPI glRasterPos4s
  271. MAKEOPENGLAPI glRasterPos4sv
  272. MAKEOPENGLAPI glClipPlane
  273. MAKEOPENGLAPI glColorMaterial
  274. MAKEOPENGLAPI glCullFace
  275. MAKEOPENGLAPI glFogf
  276. MAKEOPENGLAPI glFogfv
  277. MAKEOPENGLAPI glFogi
  278. MAKEOPENGLAPI glFogiv
  279. MAKEOPENGLAPI glFrontFace
  280. MAKEOPENGLAPI glHint
  281. MAKEOPENGLAPI glLightf
  282. MAKEOPENGLAPI glLightfv
  283. MAKEOPENGLAPI glLighti
  284. MAKEOPENGLAPI glLightiv
  285. MAKEOPENGLAPI glLightModelf
  286. MAKEOPENGLAPI glLightModelfv
  287. MAKEOPENGLAPI glLightModeli
  288. MAKEOPENGLAPI glLightModeliv
  289. MAKEOPENGLAPI glLineStipple
  290. MAKEOPENGLAPI glLineWidth
  291. MAKEOPENGLAPI glPointSize
  292. MAKEOPENGLAPI glPolygonMode
  293. MAKEOPENGLAPI glPolygonStipple
  294. MAKEOPENGLAPI glScissor
  295. MAKEOPENGLAPI glFinish
  296. MAKEOPENGLAPI glShadeModel
  297. MAKEOPENGLAPI glTexParameterf
  298. MAKEOPENGLAPI glTexParameterfv
  299. MAKEOPENGLAPI glTexParameteri
  300. MAKEOPENGLAPI glTexParameteriv
  301. MAKEOPENGLAPI glTexEnvf
  302. MAKEOPENGLAPI glTexEnvfv
  303. MAKEOPENGLAPI glTexEnvi
  304. MAKEOPENGLAPI glTexEnviv
  305. MAKEOPENGLAPI glTexGend
  306. MAKEOPENGLAPI glTexGendv
  307. MAKEOPENGLAPI glTexGenf
  308. MAKEOPENGLAPI glTexGenfv
  309. MAKEOPENGLAPI glTexGeni
  310. MAKEOPENGLAPI glTexGeniv
  311. MAKEOPENGLAPI glFeedbackBuffer
  312. MAKEOPENGLAPI glSelectBuffer
  313. MAKEOPENGLAPI glRenderMode
  314. MAKEOPENGLAPI glInitNames
  315. MAKEOPENGLAPI glLoadName
  316. MAKEOPENGLAPI glPassThrough
  317. MAKEOPENGLAPI glPopName
  318. MAKEOPENGLAPI glPushName
  319. MAKEOPENGLAPI glDrawBuffer
  320. MAKEOPENGLAPI glStencilMask
  321. MAKEOPENGLAPI glColorMask
  322. MAKEOPENGLAPI glDepthMask
  323. MAKEOPENGLAPI glIndexMask
  324. MAKEOPENGLAPI glAccum
  325. MAKEOPENGLAPI glFlush
  326. MAKEOPENGLAPI glMap1d
  327. MAKEOPENGLAPI glMap1f
  328. MAKEOPENGLAPI glMap2d
  329. MAKEOPENGLAPI glMap2f
  330. MAKEOPENGLAPI glMapGrid1d
  331. MAKEOPENGLAPI glMapGrid1f
  332. MAKEOPENGLAPI glMapGrid2d
  333. MAKEOPENGLAPI glMapGrid2f
  334. MAKEOPENGLAPI glEvalMesh1
  335. MAKEOPENGLAPI glEvalMesh2
  336. MAKEOPENGLAPI glAlphaFunc
  337. MAKEOPENGLAPI glBlendFunc
  338. MAKEOPENGLAPI glLogicOp
  339. MAKEOPENGLAPI glStencilFunc
  340. MAKEOPENGLAPI glStencilOp
  341. MAKEOPENGLAPI glDepthFunc
  342. MAKEOPENGLAPI glPixelZoom
  343. MAKEOPENGLAPI glPixelTransferf
  344. MAKEOPENGLAPI glPixelTransferi
  345. MAKEOPENGLAPI glPixelStoref
  346. MAKEOPENGLAPI glPixelStorei
  347. MAKEOPENGLAPI glPixelMapfv
  348. MAKEOPENGLAPI glPixelMapuiv
  349. MAKEOPENGLAPI glPixelMapusv
  350. MAKEOPENGLAPI glReadBuffer
  351. MAKEOPENGLAPI glGetBooleanv
  352. MAKEOPENGLAPI glGetClipPlane
  353. MAKEOPENGLAPI glGetDoublev
  354. MAKEOPENGLAPI glGetError
  355. MAKEOPENGLAPI glGetFloatv
  356. MAKEOPENGLAPI glGetIntegerv
  357. MAKEOPENGLAPI glGetLightfv
  358. MAKEOPENGLAPI glGetLightiv
  359. MAKEOPENGLAPI glGetMapdv
  360. MAKEOPENGLAPI glGetMapfv
  361. MAKEOPENGLAPI glGetMapiv
  362. MAKEOPENGLAPI glGetMaterialfv
  363. MAKEOPENGLAPI glGetMaterialiv
  364. MAKEOPENGLAPI glGetPixelMapfv
  365. MAKEOPENGLAPI glGetPixelMapuiv
  366. MAKEOPENGLAPI glGetPixelMapusv
  367. MAKEOPENGLAPI glGetPolygonStipple
  368. MAKEOPENGLAPI glGetString
  369. MAKEOPENGLAPI glGetTexEnvfv
  370. MAKEOPENGLAPI glGetTexEnviv
  371. MAKEOPENGLAPI glGetTexGendv
  372. MAKEOPENGLAPI glGetTexGenfv
  373. MAKEOPENGLAPI glGetTexGeniv
  374. MAKEOPENGLAPI glGetTexImage
  375. MAKEOPENGLAPI glGetTexParameterfv
  376. MAKEOPENGLAPI glGetTexParameteriv
  377. MAKEOPENGLAPI glGetTexLevelParameterfv
  378. MAKEOPENGLAPI glGetTexLevelParameteriv
  379. MAKEOPENGLAPI glIsEnabled
  380. MAKEOPENGLAPI glIsList
  381. MAKEOPENGLAPI glDepthRange
  382. MAKEOPENGLAPI glFrustum
  383. MAKEOPENGLAPI glOrtho
  384. MAKEOPENGLAPI glViewport
  385. MAKEOPENGLAPI glAreTexturesResident
  386. MAKEOPENGLAPI glCopyTexImage1D
  387. MAKEOPENGLAPI glCopyTexImage2D
  388. MAKEOPENGLAPI glCopyTexSubImage1D
  389. MAKEOPENGLAPI glCopyTexSubImage2D
  390. MAKEOPENGLAPI glDeleteTextures
  391. MAKEOPENGLAPI glGenTextures
  392. MAKEOPENGLAPI glIsTexture
  393. MAKEOPENGLAPI glPrioritizeTextures
  394. MAKEOPENGLAPI glTexSubImage1D
  395. MAKEOPENGLAPI glTexSubImage2D
  396. MAKEOPENGLAPI glGetColorTableEXT
  397. MAKEOPENGLAPI glGetColorTableParameterivEXT
  398. MAKEOPENGLAPI glGetColorTableParameterfvEXT
  399. MAKEOPENGLAPI glMultiTexCoord1dWIN
  400. MAKEOPENGLAPI glMultiTexCoord1dvWIN
  401. MAKEOPENGLAPI glMultiTexCoord1sWIN
  402. MAKEOPENGLAPI glMultiTexCoord1svWIN
  403. MAKEOPENGLAPI glMultiTexCoord2dWIN
  404. MAKEOPENGLAPI glMultiTexCoord2dvWIN
  405. MAKEOPENGLAPI glMultiTexCoord2sWIN
  406. MAKEOPENGLAPI glMultiTexCoord2svWIN
  407. MAKEOPENGLAPI glMultiTexCoord3dWIN
  408. MAKEOPENGLAPI glMultiTexCoord3dvWIN
  409. MAKEOPENGLAPI glMultiTexCoord3fWIN
  410. MAKEOPENGLAPI glMultiTexCoord3fvWIN
  411. MAKEOPENGLAPI glMultiTexCoord3iWIN
  412. MAKEOPENGLAPI glMultiTexCoord3ivWIN
  413. MAKEOPENGLAPI glMultiTexCoord3sWIN
  414. MAKEOPENGLAPI glMultiTexCoord3svWIN
  415. MAKEOPENGLAPI glMultiTexCoord4dWIN
  416. MAKEOPENGLAPI glMultiTexCoord4dvWIN
  417. MAKEOPENGLAPI glMultiTexCoord4fWIN
  418. MAKEOPENGLAPI glMultiTexCoord4fvWIN
  419. MAKEOPENGLAPI glMultiTexCoord4iWIN
  420. MAKEOPENGLAPI glMultiTexCoord4ivWIN
  421. MAKEOPENGLAPI glMultiTexCoord4sWIN
  422. MAKEOPENGLAPI glMultiTexCoord4svWIN
  423. end