; Converted to asm by Franck Charlet
;
; Notes:
;
;  Listed support is for current drivers and should really only be used
;  as a guideline.  ISV should still use glGetString() and
;  glXGetClientString() to determine the exact set of supported
;  GL and GLX extensions.
;
;

ifndef GLX_ATI_pixel_format_float
GLX_ATI_pixel_format_float  equ 1

GLX_RGBA_FLOAT_ATI_BIT				equ 000000100h

endif ; GLX_ATI_pixel_format_float

ifndef GLX_ATI_render_texture
GLX_ATI_render_texture  equ 1

GLX_BIND_TO_TEXTURE_RGB_ATI         equ 09800h ; need real tokens here
GLX_BIND_TO_TEXTURE_RGBA_ATI        equ 09801h
GLX_TEXTURE_FORMAT_ATI              equ 09802h
GLX_TEXTURE_TARGET_ATI              equ 09803h
GLX_MIPMAP_TEXTURE_ATI              equ 09804h
GLX_TEXTURE_RGB_ATI                 equ 09805h
GLX_TEXTURE_RGBA_ATI                equ 09806h
GLX_NO_TEXTURE_ATI                  equ 09807h
GLX_TEXTURE_CUBE_MAP_ATI            equ 09808h
GLX_TEXTURE_1D_ATI                  equ 09809h
GLX_TEXTURE_2D_ATI                  equ 0980Ah
GLX_MIPMAP_LEVEL_ATI                equ 0980Bh
GLX_CUBE_MAP_FACE_ATI               equ 0980Ch
GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI equ 0980Dh
GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI equ 0980Eh
GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI equ 0980Fh
GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI equ 09810h
GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI equ 09811h
GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI equ 09812h
GLX_FRONT_LEFT_ATI                  equ 09813h
GLX_FRONT_RIGHT_ATI                 equ 09814h
GLX_BACK_LEFT_ATI                   equ 09815h
GLX_BACK_RIGHT_ATI                  equ 09816h
GLX_AUX0_ATI                        equ 09817h
GLX_AUX1_ATI                        equ 09818h
GLX_AUX2_ATI                        equ 09819h
GLX_AUX3_ATI                        equ 0981Ah
GLX_AUX4_ATI                        equ 0981Bh
GLX_AUX5_ATI                        equ 0981Ch
GLX_AUX6_ATI                        equ 0981Dh
GLX_AUX7_ATI                        equ 0981Eh
GLX_AUX8_ATI                        equ 0981Fh
GLX_AUX9_ATI                        equ 09820h
GLX_BIND_TO_TEXTURE_LUMINANCE_ATI   equ 09821h
GLX_BIND_TO_TEXTURE_INTENSITY_ATI   equ 09822h

PFNGLXBINDTEXIMAGEATIPROC_proto typedef proto :dword, :dword, :dword
PFNGLXBINDTEXIMAGEATIPROC typedef ptr PFNGLXBINDTEXIMAGEATIPROC_proto

PFNGLXRELEASETEXIMAGEATIPROC_proto typedef proto :dword, :dword, :dword
PFNGLXRELEASETEXIMAGEATIPROC typedef ptr PFNGLXRELEASETEXIMAGEATIPROC_proto

PFNGLXDRAWABLEATTRIBATIPROC_proto typedef proto :dword, :dword, :dword
PFNGLXDRAWABLEATTRIBATIPROC typedef ptr PFNGLXDRAWABLEATTRIBATIPROC_proto

endif ; GLX_ATI_render_texture

ifndef GLX_ARB_multisample
GLX_ARB_multisample                 equ 1

GLX_SAMPLE_BUFFERS_ARB              equ 100000
GLX_SAMPLES_ARB                     equ 100001

; put GL interface here for convenience
ifndef GL_ARB_multisample
GL_ARB_multisample                  equ 1
GL_MULTISAMPLE_ARB                  equ 0809Dh
GL_SAMPLE_ALPHA_TO_COVERAGE_ARB     equ 0809Eh
GL_SAMPLE_ALPHA_TO_ONE_ARB          equ 0809Fh
GL_SAMPLE_COVERAGE_ARB              equ 080A0h
GL_SAMPLE_BUFFERS_ARB               equ 080A8h
GL_SAMPLES_ARB                      equ 080A9h
GL_SAMPLE_COVERAGE_VALUE_ARB        equ 080AAh
GL_SAMPLE_COVERAGE_INVERT_ARB       equ 080ABh
GL_MULTISAMPLE_BIT_ARB              equ 020000000h

PFNGLSAMPLECOVERAGEARBPROC_proto typedef proto :real4, :dword
PFNGLSAMPLECOVERAGEARBPROC typedef ptr PFNGLSAMPLECOVERAGEARBPROC_proto

endif ; GL_ARB_multisample

endif ; GLX_ARB_multisample

ifndef HPV_transmit_buffer
;HPV_transmit_buffer 1
endif

ifdef HPV_transmit_buffer

GLX_TRANSMITTABLE_HPV               equ 070000001h
GLX_TRANSMIT_FORMAT_HPV             equ 070000002h

GLX_RGB_HPV                         equ 070000003h
GLX_RGBA_HPV                        equ 070000004h
GLX_DEPTH_HPV                       equ 070000005h
GLX_DEPTH_STENCIL_HPV               equ 070000006h
GLX_RGB_DEPTH_HPV                   equ 070000007h
GLX_RGBA_DEPTH_STENCIL_HPV          equ 070000008h


GLX_PBUFFER_PITCH_HPV    	        equ 070000009h

GLX_TRANSMIT_HOR_ADDR_TIME_HPV      equ 07000000Ah
GLX_TRANSMIT_HOR_FP_TIME_HPV        equ 07000000Bh
GLX_TRANSMIT_HOR_SYNC_TIME_HPV      equ 07000000Ch
GLX_TRANSMIT_HOR_BP_TIME_HPV        equ 07000000Dh
GLX_TRANSMIT_HOR_POLARITY_HPV		equ 07000000Eh
GLX_TRANSMIT_VER_ADDR_TIME_HPV      equ 07000000Fh
GLX_TRANSMIT_VER_FP_TIME_HPV        equ 070000010h
GLX_TRANSMIT_VER_SYNC_TIME_HPV      equ 070000011h
GLX_TRANSMIT_VER_BP_TIME_HPV        equ 070000012h
GLX_TRANSMIT_VER_POLARITY_HPV		equ 070000013h
GLX_TRANSMIT_PIXELCLOCK_HPV         equ 070000014h

GLX_TRANSMIT_STEREO_ID_NONE         equ 070000020h
GLX_TRANSMIT_STEREO_ID_1            equ 070000021h
GLX_TRANSMIT_STEREO_ID_2            equ 070000022h
GLX_TRANSMIT_STEREO_ID_3            equ 070000023h

PFNGLXTRANSMITPBUFFERHPVPROC_proto typedef proto :dword, :dword, :dword, :dword, :dword
PFNGLXTRANSMITPBUFFERHPVPROC typedef ptr PFNGLXTRANSMITPBUFFERHPVPROC_proto

PFNGLXTRANSMITSTOPHPVPROC_proto typedef proto :dword
PFNGLXTRANSMITSTOPHPVPROC typedef ptr PFNGLXTRANSMITSTOPHPVPROC_proto

endif ; HPV_transmit_buffer
