Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. align 4
  2. proc glGetIntegerv uses eax edi, pname:dword, params:dword
  3.         mov eax,[pname]
  4.         mov edi,[params]
  5.         cmp eax,GL_VIEWPORT
  6.         jne @f
  7.                 push esi
  8.                 call gl_get_context
  9.                 lea esi,[eax+GLContext.viewport]
  10.                 movsd ;m2m dword[edi],dword[eax+GLContext.viewport.xmin]
  11.                 movsd ;copy .ymin
  12.                 movsd ;copy .xsize
  13.                 movsd ;copy .ysize
  14.                 pop esi
  15.                 jmp .endf
  16.         @@:
  17.         cmp eax,GL_MAX_MODELVIEW_STACK_DEPTH
  18.         jne @f
  19.                 mov dword[edi],MAX_MODELVIEW_STACK_DEPTH
  20.                 jmp .endf
  21.         @@:
  22.         cmp eax,GL_MAX_PROJECTION_STACK_DEPTH
  23.         jne @f
  24.                 mov dword[edi],MAX_PROJECTION_STACK_DEPTH
  25.                 jmp .endf
  26.         @@:
  27.         cmp eax,GL_MAX_LIGHTS
  28.         jne @f
  29.                 mov dword[edi],MAX_LIGHTS
  30.                 jmp .endf
  31.         @@:
  32.         cmp eax,GL_MAX_TEXTURE_SIZE
  33.         jne @f
  34.                 mov dword[edi],4096
  35.                 jmp .endf
  36.         @@:
  37.         cmp eax,GL_MAX_TEXTURE_STACK_DEPTH
  38.         jne @f
  39.                 mov dword[edi],MAX_TEXTURE_STACK_DEPTH
  40.                 jmp .endf
  41.         @@:
  42.         stdcall dbg_print,sz_kosglMakeCurrent,err_glGet
  43.         .endf:
  44.         ret
  45. endp