Rev 5380 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5380 | Rev 6523 | ||
---|---|---|---|
Line 14... | Line 14... | ||
14 | endl |
14 | endl |
15 | mov eax,[context] |
15 | mov eax,[context] |
16 | mov ebx,[param] |
16 | mov ebx,[param] |
17 | mov ebx,[ebx+4] ;ebx = p[1] |
17 | mov ebx,[ebx+4] ;ebx = p[1] |
Line 18... | Line 18... | ||
18 | 18 | ||
19 | bt dword[eax+offs_cont_client_states],1 ;2^1=COLOR_ARRAY |
19 | bt dword[eax+GLContext.client_states],1 ;2^1=COLOR_ARRAY |
20 | jnc @f |
20 | jnc @f |
21 | mov ecx,[eax+offs_cont_color_array_size] |
21 | mov ecx,[eax+GLContext.color_array_size] |
22 | add ecx,[eax+offs_cont_color_array_stride] |
22 | add ecx,[eax+GLContext.color_array_stride] |
23 | imul ecx,ebx |
23 | imul ecx,ebx |
24 | shl ecx,2 |
24 | shl ecx,2 |
25 | add ecx,[eax+offs_cont_color_array] ;ecx = &context.color_array[i] |
25 | add ecx,[eax+GLContext.color_array] ;ecx = &context.color_array[i] |
26 | mov ebx,ebp |
26 | mov ebx,ebp |
27 | sub ebx,20 ;=sizeof(dd)*5 |
27 | sub ebx,20 ;=sizeof(dd)*5 |
28 | mov edx,[ecx] |
28 | mov edx,[ecx] |
29 | mov [ebx+4],edx |
29 | mov [ebx+4],edx |
30 | mov edx,[ecx+4] |
30 | mov edx,[ecx+4] |
31 | mov [ebx+8],edx |
31 | mov [ebx+8],edx |
32 | mov edx,[ecx+8] |
32 | mov edx,[ecx+8] |
33 | mov [ebx+12],edx |
33 | mov [ebx+12],edx |
34 | cmp dword[eax+offs_cont_color_array_size],3 |
34 | cmp dword[eax+GLContext.color_array_size],3 |
35 | jg .l0 |
35 | jg .l0 |
36 | mov edx,1.0 |
36 | mov edx,1.0 |
37 | jmp .l1 |
37 | jmp .l1 |
38 | .l0: |
38 | .l0: |
39 | mov edx,[ecx+12] |
39 | mov edx,[ecx+12] |
40 | .l1: |
40 | .l1: |
41 | mov [ebx+16],edx |
41 | mov [ebx+16],edx |
42 | stdcall glopColor, eax,ebx |
42 | stdcall glopColor, eax,ebx |
43 | @@: |
43 | @@: |
44 | bt dword[eax+offs_cont_client_states],2 ;2^2=NORMAL_ARRAY |
44 | bt dword[eax+GLContext.client_states],2 ;2^2=NORMAL_ARRAY |
45 | jnc @f |
45 | jnc @f |
46 | mov esi,dword[eax+offs_cont_normal_array_stride] |
46 | mov esi,dword[eax+GLContext.normal_array_stride] |
47 | add esi,3 |
47 | add esi,3 |
48 | imul esi,ebx |
48 | imul esi,ebx |
49 | shl esi,2 |
49 | shl esi,2 |
50 | add esi,[eax+offs_cont_normal_array] ;esi = &normal_array[ebx * (3 + c->normal_array_stride)] |
50 | add esi,[eax+GLContext.normal_array] ;esi = &normal_array[ebx * (3 + c->normal_array_stride)] |
51 | mov edi,eax |
51 | mov edi,eax |
52 | add edi,offs_cont_current_normal |
52 | add edi,GLContext.current_normal |
53 | mov ecx,3 |
53 | mov ecx,3 |
54 | rep movsd |
54 | rep movsd |
55 | mov dword[edi],0.0 |
55 | mov dword[edi],0.0 |
56 | @@: |
56 | @@: |
57 | bt dword[eax+offs_cont_client_states],3 ;2^3=TEXCOORD_ARRAY |
57 | bt dword[eax+GLContext.client_states],3 ;2^3=TEXCOORD_ARRAY |
58 | jnc @f |
58 | jnc @f |
59 | mov ecx,[eax+offs_cont_texcoord_array_size] |
59 | mov ecx,[eax+GLContext.texcoord_array_size] |
60 | add ecx,[eax+offs_cont_texcoord_array_stride] |
60 | add ecx,[eax+GLContext.texcoord_array_stride] |
61 | imul ecx,ebx |
61 | imul ecx,ebx |
62 | shl ecx,2 |
62 | shl ecx,2 |
63 | add ecx,[eax+offs_cont_texcoord_array] ;ecx = &context.texcoord_array[i] |
63 | add ecx,[eax+GLContext.texcoord_array] ;ecx = &context.texcoord_array[i] |
64 | mov edx,[ecx] |
64 | mov edx,[ecx] |
65 | mov [eax+offs_cont_current_tex_coord],edx |
65 | mov [eax+GLContext.current_tex_coord],edx |
66 | mov edx,[ecx+4] |
66 | mov edx,[ecx+4] |
Line 67... | Line 67... | ||
67 | mov [eax+offs_cont_current_tex_coord+4],edx |
67 | mov [eax+GLContext.current_tex_coord+4],edx |
68 | 68 | ||
69 | cmp dword[eax+offs_cont_texcoord_array_size],2 |
69 | cmp dword[eax+GLContext.texcoord_array_size],2 |
70 | jg .l2 |
70 | jg .l2 |
71 | mov edx,0.0 |
71 | mov edx,0.0 |
72 | jmp .l3 |
72 | jmp .l3 |
73 | .l2: |
73 | .l2: |
74 | mov edx,[ecx+8] |
74 | mov edx,[ecx+8] |
Line 75... | Line 75... | ||
75 | .l3: |
75 | .l3: |
76 | mov [eax+offs_cont_current_tex_coord+8],edx |
76 | mov [eax+GLContext.current_tex_coord+8],edx |
77 | 77 | ||
78 | cmp dword[eax+offs_cont_texcoord_array_size],3 |
78 | cmp dword[eax+GLContext.texcoord_array_size],3 |
79 | jg .l4 |
79 | jg .l4 |
80 | mov edx,1.0 |
80 | mov edx,1.0 |
81 | jmp .l5 |
81 | jmp .l5 |
Line 82... | Line 82... | ||
82 | .l4: |
82 | .l4: |
83 | mov edx,[ecx+12] |
83 | mov edx,[ecx+12] |
84 | .l5: |
84 | .l5: |
85 | 85 | ||
86 | mov [eax+offs_cont_current_tex_coord+12],edx |
86 | mov [eax+GLContext.current_tex_coord+12],edx |
87 | @@: |
87 | @@: |
88 | bt dword[eax+offs_cont_client_states],0 ;2^0=VERTEX_ARRAY |
88 | bt dword[eax+GLContext.client_states],0 ;2^0=VERTEX_ARRAY |
89 | jnc @f |
89 | jnc @f |
90 | mov ecx,[eax+offs_cont_vertex_array_size] |
90 | mov ecx,[eax+GLContext.vertex_array_size] |
91 | add ecx,[eax+offs_cont_vertex_array_stride] |
91 | add ecx,[eax+GLContext.vertex_array_stride] |
92 | imul ecx,ebx |
92 | imul ecx,ebx |
93 | shl ecx,2 |
93 | shl ecx,2 |
94 | add ecx,[eax+offs_cont_vertex_array] ;ecx = &context.vertex_array[i] |
94 | add ecx,[eax+GLContext.vertex_array] ;ecx = &context.vertex_array[i] |
95 | mov ebx,ebp |
95 | mov ebx,ebp |
96 | sub ebx,20 ;=sizeof(dd)*5 |
96 | sub ebx,20 ;=sizeof(dd)*5 |
Line 97... | Line 97... | ||
97 | mov edx,[ecx] |
97 | mov edx,[ecx] |
98 | mov [ebx+4],edx |
98 | mov [ebx+4],edx |
99 | mov edx,[ecx+4] |
99 | mov edx,[ecx+4] |
100 | mov [ebx+8],edx |
100 | mov [ebx+8],edx |
101 | 101 | ||
102 | cmp dword[eax+offs_cont_vertex_array_size],2 |
102 | cmp dword[eax+GLContext.vertex_array_size],2 |
103 | jg .l6 |
103 | jg .l6 |
104 | mov edx,0.0 |
104 | mov edx,0.0 |
105 | jmp .l7 |
105 | jmp .l7 |
106 | .l6: |
106 | .l6: |
107 | mov edx,[ecx+8] |
107 | mov edx,[ecx+8] |
108 | .l7: |
108 | .l7: |
109 | mov [ebx+12],edx |
109 | mov [ebx+12],edx |
110 | cmp dword[eax+offs_cont_vertex_array_size],3 |
110 | cmp dword[eax+GLContext.vertex_array_size],3 |
Line 147... | Line 147... | ||
147 | endl |
147 | endl |
148 | pushad |
148 | pushad |
149 | mov edx,[context] |
149 | mov edx,[context] |
150 | mov ebx,[param] |
150 | mov ebx,[param] |
151 | mov ecx,[ebx+12] ;count = param[3].i |
151 | mov ecx,[ebx+12] ;count = param[3].i |
152 | mov eax,[edx+offs_cont_client_states] |
152 | mov eax,[edx+GLContext.client_states] |
153 | mov [states],eax |
153 | mov [states],eax |
154 | mov eax,[ebx+8] |
154 | mov eax,[ebx+8] |
155 | mov [idx],eax ;param[2].i |
155 | mov [idx],eax ;param[2].i |
156 | mov eax,[ebx+4] |
156 | mov eax,[ebx+4] |
157 | mov [p+4],eax ;p[1].i = param[1].i |
157 | mov [p+4],eax ;p[1].i = param[1].i |
Line 164... | Line 164... | ||
164 | .cycle_0: ;for (int vi=0; vi |
164 | .cycle_0: ;for (int vi=0; vi |
165 | cmp dword[vi],ecx |
165 | cmp dword[vi],ecx |
166 | jge .cycle_0_end |
166 | jge .cycle_0_end |
167 | bt dword[states],1 ;2^1=COLOR_ARRAY |
167 | bt dword[states],1 ;2^1=COLOR_ARRAY |
168 | jnc @f |
168 | jnc @f |
169 | mov esi,[edx+offs_cont_color_array_size] |
169 | mov esi,[edx+GLContext.color_array_size] |
170 | mov [size],esi |
170 | mov [size],esi |
171 | add esi,[edx+offs_cont_color_array_stride] |
171 | add esi,[edx+GLContext.color_array_stride] |
172 | imul esi,[idx] ;esi = i |
172 | imul esi,[idx] ;esi = i |
173 | shl esi,2 |
173 | shl esi,2 |
174 | add esi,[edx+offs_cont_color_array] ;esi = &context.color_array[i] |
174 | add esi,[edx+GLContext.color_array] ;esi = &context.color_array[i] |
175 | mov edi,ebp |
175 | mov edi,ebp |
176 | sub edi,28 ;edi = &p[1] |
176 | sub edi,28 ;edi = &p[1] |
177 | mov ebx,[esi+8] |
177 | mov ebx,[esi+8] |
178 | mov [edi],ebx ;p[1].f = context.color_array[i+2] |
178 | mov [edi],ebx ;p[1].f = context.color_array[i+2] |
179 | mov ebx,[esi+4] |
179 | mov ebx,[esi+4] |
Line 201... | Line 201... | ||
201 | stdcall RGBFtoRGBI,[edi+12],[edi+8],[edi+4] ;call: r,g,b,&p[7],&p[6],&p[5] |
201 | stdcall RGBFtoRGBI,[edi+12],[edi+8],[edi+4] ;call: r,g,b,&p[7],&p[6],&p[5] |
202 | stdcall glopColor, edx,edi ;(context, p(op,rf,gf,bf,af,ri,gi,bi)) |
202 | stdcall glopColor, edx,edi ;(context, p(op,rf,gf,bf,af,ri,gi,bi)) |
203 | @@: |
203 | @@: |
204 | bt dword[states],2 ;2^2=NORMAL_ARRAY |
204 | bt dword[states],2 ;2^2=NORMAL_ARRAY |
205 | jnc @f |
205 | jnc @f |
206 | mov esi,[edx+offs_cont_normal_array_stride] |
206 | mov esi,[edx+GLContext.normal_array_stride] |
207 | add esi,3 |
207 | add esi,3 |
208 | imul esi,[idx] |
208 | imul esi,[idx] |
209 | shl esi,2 |
209 | shl esi,2 |
210 | add esi,[edx+offs_cont_normal_array] ;esi = &context.normal_array[ idx * (3 + context.normal_array_stride) ] |
210 | add esi,[edx+GLContext.normal_array] ;esi = &context.normal_array[ idx * (3 + context.normal_array_stride) ] |
211 | mov edi,edx |
211 | mov edi,edx |
212 | add edi,offs_cont_current_normal |
212 | add edi,GLContext.current_normal |
213 | movsd ;context.current_normal.X = context.normal_array[i] |
213 | movsd ;context.current_normal.X = context.normal_array[i] |
214 | movsd |
214 | movsd |
215 | movsd |
215 | movsd |
216 | mov dword[edi],0.0 ;context.current_normal.W = 0.0f |
216 | mov dword[edi],0.0 ;context.current_normal.W = 0.0f |
217 | @@: |
217 | @@: |
218 | bt dword[states],3 ;2^3=TEXCOORD_ARRAY |
218 | bt dword[states],3 ;2^3=TEXCOORD_ARRAY |
219 | jnc @f |
219 | jnc @f |
220 | mov esi,[edx+offs_cont_texcoord_array_size] |
220 | mov esi,[edx+GLContext.texcoord_array_size] |
221 | mov [size],esi |
221 | mov [size],esi |
222 | add esi,[edx+offs_cont_texcoord_array_stride] |
222 | add esi,[edx+GLContext.texcoord_array_stride] |
223 | imul esi,[idx] ;esi = i |
223 | imul esi,[idx] ;esi = i |
224 | shl esi,2 |
224 | shl esi,2 |
225 | add esi,[edx+offs_cont_texcoord_array] ;esi = &context.texcoord_array[i] |
225 | add esi,[edx+GLContext.texcoord_array] ;esi = &context.texcoord_array[i] |
226 | mov edi,edx |
226 | mov edi,edx |
227 | add edi,offs_cont_current_tex_coord |
227 | add edi,GLContext.current_tex_coord |
228 | movsd ;context.current_tex_coord.X = ccontext.texcoord_array[i] |
228 | movsd ;context.current_tex_coord.X = ccontext.texcoord_array[i] |
229 | movsd |
229 | movsd |
230 | cmp dword[size],2 |
230 | cmp dword[size],2 |
231 | jle .e3 |
231 | jle .e3 |
232 | movsd |
232 | movsd |
Line 242... | Line 242... | ||
242 | .e5: |
242 | .e5: |
243 | mov dword[edi],1.0 ;если задано 3 параметра, то 4-й ставим по умолчанию 1.0 |
243 | mov dword[edi],1.0 ;если задано 3 параметра, то 4-й ставим по умолчанию 1.0 |
244 | @@: |
244 | @@: |
245 | bt dword[states],0 ;2^0=VERTEX_ARRAY |
245 | bt dword[states],0 ;2^0=VERTEX_ARRAY |
246 | jnc @f |
246 | jnc @f |
247 | mov esi,[edx+offs_cont_vertex_array_size] |
247 | mov esi,[edx+GLContext.vertex_array_size] |
248 | mov [size],esi |
248 | mov [size],esi |
249 | add esi,[edx+offs_cont_vertex_array_stride] |
249 | add esi,[edx+GLContext.vertex_array_stride] |
250 | imul esi,[idx] ;esi = i |
250 | imul esi,[idx] ;esi = i |
251 | shl esi,2 |
251 | shl esi,2 |
252 | add esi,[edx+offs_cont_vertex_array] ;esi = &context.vertex_array[i] |
252 | add esi,[edx+GLContext.vertex_array] ;esi = &context.vertex_array[i] |
253 | mov edi,ebp |
253 | mov edi,ebp |
254 | sub edi,28 ;edi = &p[1] |
254 | sub edi,28 ;edi = &p[1] |
255 | movsd ;p[1].f = context.vertex_array[i] |
255 | movsd ;p[1].f = context.vertex_array[i] |
256 | movsd |
256 | movsd |
257 | cmp dword[size],2 |
257 | cmp dword[size],2 |
Line 317... | Line 317... | ||
317 | p rd 8 |
317 | p rd 8 |
318 | endl |
318 | endl |
319 | pushad |
319 | pushad |
320 | mov edx,[context] |
320 | mov edx,[context] |
321 | mov ebx,[param] |
321 | mov ebx,[param] |
322 | mov eax,[edx+offs_cont_client_states] |
322 | mov eax,[edx+GLContext.client_states] |
323 | mov [states],eax |
323 | mov [states],eax |
324 | mov eax,[ebx+4] |
324 | mov eax,[ebx+4] |
325 | mov [p+4],eax ;p[1].i = param[1].i |
325 | mov [p+4],eax ;p[1].i = param[1].i |
326 | mov ecx,[ebx+8] ;count = param[2].i |
326 | mov ecx,[ebx+8] ;count = param[2].i |
327 | mov eax,[ebx+12] |
327 | mov eax,[ebx+12] |
Line 351... | Line 351... | ||
351 | .end_0: |
351 | .end_0: |
352 | mov [idx],esi |
352 | mov [idx],esi |
Line 353... | Line 353... | ||
353 | 353 | ||
354 | bt dword[states],1 ;2^1=COLOR_ARRAY |
354 | bt dword[states],1 ;2^1=COLOR_ARRAY |
355 | jnc @f |
355 | jnc @f |
356 | mov esi,[edx+offs_cont_color_array_size] |
356 | mov esi,[edx+GLContext.color_array_size] |
357 | mov [size],esi |
357 | mov [size],esi |
358 | add esi,[edx+offs_cont_color_array_stride] |
358 | add esi,[edx+GLContext.color_array_stride] |
359 | imul esi,[idx] ;esi = i |
359 | imul esi,[idx] ;esi = i |
360 | shl esi,2 |
360 | shl esi,2 |
361 | add esi,[edx+offs_cont_color_array] ;esi = &context.color_array[i] |
361 | add esi,[edx+GLContext.color_array] ;esi = &context.color_array[i] |
362 | mov edi,ebp |
362 | mov edi,ebp |
363 | sub edi,28 ;edi = &p[1] |
363 | sub edi,28 ;edi = &p[1] |
364 | mov ebx,[esi+8] |
364 | mov ebx,[esi+8] |
365 | mov [edi],ebx ;p[1].f = context.color_array[i+2] |
365 | mov [edi],ebx ;p[1].f = context.color_array[i+2] |
Line 388... | Line 388... | ||
388 | stdcall RGBFtoRGBI,[edi+12],[edi+8],[edi+4] ;call: r,g,b,&p[7],&p[6],&p[5] |
388 | stdcall RGBFtoRGBI,[edi+12],[edi+8],[edi+4] ;call: r,g,b,&p[7],&p[6],&p[5] |
389 | stdcall glopColor, edx,edi ;(context, p(op,rf,gf,bf,af,ri,gi,bi)) |
389 | stdcall glopColor, edx,edi ;(context, p(op,rf,gf,bf,af,ri,gi,bi)) |
390 | @@: |
390 | @@: |
391 | bt dword[states],2 ;2^2=NORMAL_ARRAY |
391 | bt dword[states],2 ;2^2=NORMAL_ARRAY |
392 | jnc @f |
392 | jnc @f |
393 | mov esi,[edx+offs_cont_normal_array_stride] |
393 | mov esi,[edx+GLContext.normal_array_stride] |
394 | add esi,3 |
394 | add esi,3 |
395 | imul esi,[idx] ;esi = idx * (3 + context.normal_array_stride) |
395 | imul esi,[idx] ;esi = idx * (3 + context.normal_array_stride) |
396 | shl esi,2 |
396 | shl esi,2 |
397 | add esi,[edx+offs_cont_normal_array] |
397 | add esi,[edx+GLContext.normal_array] |
398 | mov edi,edx |
398 | mov edi,edx |
399 | add edi,offs_cont_current_normal |
399 | add edi,GLContext.current_normal |
400 | movsd ;context.current_normal.X = context.normal_array[i] |
400 | movsd ;context.current_normal.X = context.normal_array[i] |
401 | movsd |
401 | movsd |
402 | movsd |
402 | movsd |
403 | mov dword[edi],0.0 ;context.current_normal.W = 0.0f |
403 | mov dword[edi],0.0 ;context.current_normal.W = 0.0f |
404 | @@: |
404 | @@: |
405 | bt dword[states],3 ;2^3=TEXCOORD_ARRAY |
405 | bt dword[states],3 ;2^3=TEXCOORD_ARRAY |
406 | jnc @f |
406 | jnc @f |
407 | mov esi,[edx+offs_cont_texcoord_array_size] |
407 | mov esi,[edx+GLContext.texcoord_array_size] |
408 | mov [size],esi |
408 | mov [size],esi |
409 | add esi,[edx+offs_cont_texcoord_array_stride] |
409 | add esi,[edx+GLContext.texcoord_array_stride] |
410 | imul esi,[idx] ;esi = i |
410 | imul esi,[idx] ;esi = i |
411 | shl esi,2 |
411 | shl esi,2 |
412 | add esi,[edx+offs_cont_texcoord_array] ;esi = &context.texcoord_array[i] |
412 | add esi,[edx+GLContext.texcoord_array] ;esi = &context.texcoord_array[i] |
413 | mov edi,edx |
413 | mov edi,edx |
414 | add edi,offs_cont_current_tex_coord |
414 | add edi,GLContext.current_tex_coord |
415 | movsd ;context.current_tex_coord.X = ccontext.texcoord_array[i] |
415 | movsd ;context.current_tex_coord.X = ccontext.texcoord_array[i] |
416 | movsd |
416 | movsd |
417 | cmp dword[size],2 |
417 | cmp dword[size],2 |
418 | jle .e3 |
418 | jle .e3 |
419 | movsd |
419 | movsd |
Line 429... | Line 429... | ||
429 | .e5: |
429 | .e5: |
430 | mov dword[edi],1.0 ;если задано 3 параметра, то 4-й ставим по умолчанию 1.0 |
430 | mov dword[edi],1.0 ;если задано 3 параметра, то 4-й ставим по умолчанию 1.0 |
431 | @@: |
431 | @@: |
432 | bt dword[states],0 ;2^0=VERTEX_ARRAY |
432 | bt dword[states],0 ;2^0=VERTEX_ARRAY |
433 | jnc @f |
433 | jnc @f |
434 | mov esi,[edx+offs_cont_vertex_array_size] |
434 | mov esi,[edx+GLContext.vertex_array_size] |
435 | mov [size],esi |
435 | mov [size],esi |
436 | add esi,[edx+offs_cont_vertex_array_stride] |
436 | add esi,[edx+GLContext.vertex_array_stride] |
437 | imul esi,[idx] ;esi = i |
437 | imul esi,[idx] ;esi = i |
438 | shl esi,2 |
438 | shl esi,2 |
439 | add esi,[edx+offs_cont_vertex_array] ;esi = &context.vertex_array[i] |
439 | add esi,[edx+GLContext.vertex_array] ;esi = &context.vertex_array[i] |
440 | mov edi,ebp |
440 | mov edi,ebp |
441 | sub edi,28 ;edi = &p[1] |
441 | sub edi,28 ;edi = &p[1] |
442 | movsd ;p[1].f = context.vertex_array[i] |
442 | movsd ;p[1].f = context.vertex_array[i] |
443 | movsd |
443 | movsd |
444 | cmp dword[size],2 |
444 | cmp dword[size],2 |
Line 497... | Line 497... | ||
497 | align 4 |
497 | align 4 |
498 | proc glopEnableClientState uses eax ebx, context:dword, p:dword |
498 | proc glopEnableClientState uses eax ebx, context:dword, p:dword |
499 | mov eax,[context] |
499 | mov eax,[context] |
500 | mov ebx,[p] |
500 | mov ebx,[p] |
501 | mov ebx,[ebx+4] ;ebx = p[1] |
501 | mov ebx,[ebx+4] ;ebx = p[1] |
502 | or dword[eax+offs_cont_client_states],ebx |
502 | or dword[eax+GLContext.client_states],ebx |
503 | ret |
503 | ret |
504 | endp |
504 | endp |
Line 505... | Line 505... | ||
505 | 505 | ||
506 | align 4 |
506 | align 4 |
Line 542... | Line 542... | ||
542 | align 4 |
542 | align 4 |
543 | proc glopDisableClientState uses eax ebx, context:dword, p:dword |
543 | proc glopDisableClientState uses eax ebx, context:dword, p:dword |
544 | mov eax,[context] |
544 | mov eax,[context] |
545 | mov ebx,[p] |
545 | mov ebx,[p] |
546 | mov ebx,[ebx+4] ;ebx = p[1] |
546 | mov ebx,[ebx+4] ;ebx = p[1] |
547 | and dword[eax+offs_cont_client_states],ebx |
547 | and dword[eax+GLContext.client_states],ebx |
548 | ret |
548 | ret |
549 | endp |
549 | endp |
Line 550... | Line 550... | ||
550 | 550 | ||
551 | align 4 |
551 | align 4 |
Line 587... | Line 587... | ||
587 | align 4 |
587 | align 4 |
588 | proc glopVertexPointer uses eax ebx ecx, context:dword, p:dword |
588 | proc glopVertexPointer uses eax ebx ecx, context:dword, p:dword |
589 | mov eax,[context] |
589 | mov eax,[context] |
590 | mov ebx,[p] |
590 | mov ebx,[p] |
591 | mov ecx,[ebx+4] ;ecx = p[1] |
591 | mov ecx,[ebx+4] ;ecx = p[1] |
592 | mov dword[eax+offs_cont_vertex_array_size],ecx |
592 | mov dword[eax+GLContext.vertex_array_size],ecx |
593 | mov ecx,[ebx+8] ;ecx = p[2] |
593 | mov ecx,[ebx+8] ;ecx = p[2] |
594 | mov dword[eax+offs_cont_vertex_array_stride],ecx |
594 | mov dword[eax+GLContext.vertex_array_stride],ecx |
595 | mov ecx,[ebx+12] ;ecx = p[3] |
595 | mov ecx,[ebx+12] ;ecx = p[3] |
596 | mov dword[eax+offs_cont_vertex_array],ecx |
596 | mov dword[eax+GLContext.vertex_array],ecx |
597 | ret |
597 | ret |
598 | endp |
598 | endp |
Line 599... | Line 599... | ||
599 | 599 | ||
600 | align 4 |
600 | align 4 |
Line 621... | Line 621... | ||
621 | align 4 |
621 | align 4 |
622 | proc glopColorPointer uses eax ebx ecx, context:dword, p:dword |
622 | proc glopColorPointer uses eax ebx ecx, context:dword, p:dword |
623 | mov eax,[context] |
623 | mov eax,[context] |
624 | mov ebx,[p] |
624 | mov ebx,[p] |
625 | mov ecx,[ebx+4] ;ecx = p[1] |
625 | mov ecx,[ebx+4] ;ecx = p[1] |
626 | mov dword[eax+offs_cont_color_array_size],ecx |
626 | mov dword[eax+GLContext.color_array_size],ecx |
627 | mov ecx,[ebx+8] ;ecx = p[2] |
627 | mov ecx,[ebx+8] ;ecx = p[2] |
628 | mov dword[eax+offs_cont_color_array_stride],ecx |
628 | mov dword[eax+GLContext.color_array_stride],ecx |
629 | mov ecx,[ebx+12] ;ecx = p[3] |
629 | mov ecx,[ebx+12] ;ecx = p[3] |
630 | mov dword[eax+offs_cont_color_array],ecx |
630 | mov dword[eax+GLContext.color_array],ecx |
631 | ret |
631 | ret |
632 | endp |
632 | endp |
Line 633... | Line 633... | ||
633 | 633 | ||
634 | align 4 |
634 | align 4 |
Line 655... | Line 655... | ||
655 | align 4 |
655 | align 4 |
656 | proc glopNormalPointer uses eax ebx ecx, context:dword, p:dword |
656 | proc glopNormalPointer uses eax ebx ecx, context:dword, p:dword |
657 | mov eax,[context] |
657 | mov eax,[context] |
658 | mov ebx,[p] |
658 | mov ebx,[p] |
659 | mov ecx,[ebx+4] ;ecx = p[1] |
659 | mov ecx,[ebx+4] ;ecx = p[1] |
660 | mov dword[eax+offs_cont_normal_array_stride],ecx |
660 | mov dword[eax+GLContext.normal_array_stride],ecx |
661 | mov ecx,[ebx+8] ;ecx = p[2] |
661 | mov ecx,[ebx+8] ;ecx = p[2] |
662 | mov dword[eax+offs_cont_normal_array],ecx |
662 | mov dword[eax+GLContext.normal_array],ecx |
663 | ret |
663 | ret |
664 | endp |
664 | endp |
Line 665... | Line 665... | ||
665 | 665 | ||
666 | align 4 |
666 | align 4 |
Line 685... | Line 685... | ||
685 | align 4 |
685 | align 4 |
686 | proc glopTexCoordPointer uses eax ebx ecx, context:dword, p:dword |
686 | proc glopTexCoordPointer uses eax ebx ecx, context:dword, p:dword |
687 | mov eax,[context] |
687 | mov eax,[context] |
688 | mov ebx,[p] |
688 | mov ebx,[p] |
689 | mov ecx,[ebx+4] ;ecx = p[1] |
689 | mov ecx,[ebx+4] ;ecx = p[1] |
690 | mov dword[eax+offs_cont_texcoord_array_size],ecx |
690 | mov dword[eax+GLContext.texcoord_array_size],ecx |
691 | mov ecx,[ebx+8] ;ecx = p[2] |
691 | mov ecx,[ebx+8] ;ecx = p[2] |
692 | mov dword[eax+offs_cont_texcoord_array_stride],ecx |
692 | mov dword[eax+GLContext.texcoord_array_stride],ecx |
693 | mov ecx,[ebx+12] ;ecx = p[3] |
693 | mov ecx,[ebx+12] ;ecx = p[3] |
694 | mov dword[eax+offs_cont_texcoord_array],ecx |
694 | mov dword[eax+GLContext.texcoord_array],ecx |
695 | ret |
695 | ret |
696 | endp |
696 | endp |
Line 697... | Line 697... | ||
697 | 697 | ||
698 | align 4 |
698 | align 4 |