Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 6108 → Rev 6143

/programs/develop/libraries/TinyGL/asm_fork/glu.asm
30,7 → 30,7
;{
;}
 
align 4
align 16
gluNewQuadric:
stdcall gl_malloc, sizeof.GLUquadricObj
or eax,eax
43,7 → 43,7
@@:
ret
 
align 4
align 16
proc gluDeleteQuadric, state:dword
cmp dword[state],0
je @f
56,7 → 56,7
; Set the drawing style to be GLU_FILL, GLU_LINE, GLU_SILHOUETTE,
; or GLU_POINT.
;
align 4
align 16
proc gluQuadricDrawStyle uses eax ebx, qobj:dword, drawStyle:dword
mov eax,[qobj]
or eax,eax
71,9 → 71,11
cmp ebx,GLU_POINT
je @f
jmp .err_q
align 4
@@:
mov dword[eax+offs_qobj_DrawStyle],ebx
jmp @f
align 4
.err_q:
stdcall dbg_print,sz_gluQuadricDrawStyle,err_9
@@:
83,7 → 85,7
;
; Set the orientation to GLU_INSIDE or GLU_OUTSIDE.
;
align 4
align 16
proc gluQuadricOrientation uses eax ebx, qobj:dword, orientation:dword
mov eax,[qobj]
or eax,eax
94,9 → 96,11
cmp ebx,GLU_OUTSIDE
je @f
jmp .err_q
align 4
@@:
mov dword[eax+offs_qobj_Orientation],ebx
jmp @f
align 4
.err_q:
stdcall dbg_print,sz_gluQuadricOrientation,err_9
@@:
103,7 → 107,7
ret
endp
 
align 4
align 16
proc gluQuadricTexture uses eax ebx, qobj:dword, texture:dword
mov eax,[qobj]
or eax,eax
116,6 → 120,7
@@:
mov dword[eax+offs_qobj_TextureFlag],ebx
jmp @f
align 4
.err_q:
stdcall dbg_print,sz_gluQuadricTexture,err_9
@@:
138,7 → 143,7
 
;input:
; float radius, int slices, int stacks
align 4
align 16
proc gluSphere qobj:dword, radius:dword, slices:dword, stacks:dword
locals
rho dd ? ;float
165,6 → 170,7
jne .els_0
mov dword[normals],GL_FALSE
jmp @f
align 4
.els_0:
mov dword[normals],GL_TRUE
@@:
172,6 → 178,7
jne .els_1
mov dword[nsign],-1.0
jmp @f
align 4
.els_1:
mov dword[nsign],1.0
@@:
198,7 → 205,7
@@:
cmp dword[eax+offs_qobj_TextureFlag],0 ;if (qobj.TextureFlag)
je @f
stdcall glTexCoord2f, 0.5,0.0
stdcall glTexCoord2f, 0.5,1.0
@@:
sub esp,4
fld dword[nsign]
221,6 → 228,7
fild dword[j]
fmul dword[dtheta]
jmp .t0_end
align 4
@@:
fldz
.t0_end:
262,6 → 270,7
call glVertex3f ;x*radius, y*radius, z*radius
inc dword[j]
jmp .cycle_0
align 4
.cycle_0_end:
call glEnd
 
278,6 → 287,7
mov dword[i],0
mov [imax],ebx
jmp @f
align 4
.els_2:
mov dword[i],1
dec ebx
306,6 → 316,7
fild dword[j]
fmul dword[dtheta]
jmp .t1_end
align 4
@@:
fldz
.t1_end:
339,11 → 350,7
@@:
cmp dword[eax+offs_qobj_TextureFlag],0 ;if (qobj.TextureFlag)
je @f
fld1
fsub dword[t]
fstp dword[esp-4]
sub esp,4
stdcall glTexCoord2f, [s] ;,1-t
stdcall glTexCoord2f, [s],[t]
@@:
fld dword[radius]
fld dword[z]
391,12 → 398,11
@@:
cmp dword[eax+offs_qobj_TextureFlag],0 ;if (qobj.TextureFlag)
je @f
fld1
fsub dword[t]
fadd dword[d_t]
fld dword[t]
fsub dword[d_t]
fstp dword[esp-4]
sub esp,4
stdcall glTexCoord2f, [s] ;,1-(t-dt)
stdcall glTexCoord2f, [s] ;,t-dt
fld dword[s]
fadd dword[d_s]
fstp dword[s]
415,6 → 421,7
call glVertex3f ;x*radius, y*radius, z*radius
inc dword[j]
jmp .cycle_2
align 4
.cycle_2_end:
call glEnd
fld dword[t]
422,6 → 429,7
fstp dword[t]
inc dword[i]
jmp .cycle_1
align 4
.cycle_1_end:
 
; draw -Z end as a triangle fan
432,7 → 440,7
@@:
cmp dword[eax+offs_qobj_TextureFlag],0 ;if (qobj.TextureFlag)
je @f
stdcall glTexCoord2f, 0.5,1.0
stdcall glTexCoord2f, 0.5,0.0
mov dword[s],1.0
mov ebx,[d_t]
mov [t],ebx
460,6 → 468,7
fild dword[j]
fmul dword[dtheta]
jmp .t2_end
align 4
@@:
fldz
.t2_end:
491,11 → 500,7
@@:
cmp dword[eax+offs_qobj_TextureFlag],0 ;if (qobj.TextureFlag)
je @f
fld1
fsub dword[t]
fstp dword[esp-4]
sub esp,4
stdcall glTexCoord2f, [s] ;,1-t
stdcall glTexCoord2f, [s],[t]
fld dword[s]
fsub dword[d_s]
fstp dword[s]
514,10 → 519,12
call glVertex3f ;x*radius, y*radius, z*radius
dec dword[j]
jmp .cycle_3
align 4
.cycle_3_end:
call glEnd
jmp .end_f
 
align 4
.if_glu_line:
cmp dword[eax+offs_qobj_DrawStyle],GLU_LINE ;if (qobj.DrawStyle==GLU_LINE)
je @f
524,6 → 531,7
cmp dword[eax+offs_qobj_DrawStyle],GLU_SILHOUETTE ;if (qobj.DrawStyle==GLU_SILHOUETTE)
je @f
jmp .if_glu_point
align 4
@@:
 
; draw stack lines
590,10 → 598,12
call glVertex3f ;x*radius, y*radius, z*radius
inc dword[j]
jmp .cycle_5
align 4
.cycle_5_end:
call glEnd
inc dword[i]
jmp .cycle_4
align 4
.cycle_4_end:
 
; draw slice lines
655,13 → 665,16
call glVertex3f ;x*radius, y*radius, z*radius
inc dword[i]
jmp .cycle_7
align 4
.cycle_7_end:
call glEnd
inc dword[j]
jmp .cycle_6
align 4
.cycle_6_end:
jmp .end_f
 
align 4
.if_glu_point:
cmp dword[eax+offs_qobj_DrawStyle],GLU_POINT ;if (qobj.DrawStyle==GLU_POINT)
jne .end_f
749,9 → 762,11
call glVertex3f ;x*radius, y*radius, z*radius
inc dword[j]
jmp .cycle_9
align 4
.cycle_9_end:
inc dword[i]
jmp .cycle_8
align 4
.cycle_8_end:
call glEnd