home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-01-31 | 85.8 KB | 4,882 lines |
-
- ; Storm C Compiler
- ; TEMP:Mesa_2_5/src/context.c
- mc68030
- mc68881
- XREF _gl_set_color_function
- XREF _gl_set_vertex_function
- XREF _gl_alloc_vb
- XREF _gl_update_texture_state
- XREF _gl_free_texture_object
- XREF _gl_alloc_texture_object
- XREF _gl_free_texture_image
- XREF _gl_alloc_texture_image
- XREF _gl_set_triangle_function
- XREF _gl_alloc_stencil_buffer
- XREF _gl_set_quad_function
- XREF _gl_init_api_function_pointers
- XREF _gl_set_point_function
- XREF _gl_alloc_pb
- XREF _gl_init_math
- XREF _gl_destroy_list
- XREF _gl_init_lists
- XREF _gl_set_line_function
- XREF _gl_update_lighting
- XREF _gl_compute_material_shine_table
- XREF _gl_compute_spot_exp_table
- XREF _gl_material_bitmask
- XREF _HashFirstEntry
- XREF _DeleteHashTable
- XREF _NewHashTable
- XREF _gl_init_eval
- XREF _gl_clear_depth_buffer
- XREF _gl_alloc_depth_buffer
- XREF _gl_read_depth_span_int
- XREF _gl_read_depth_span_float
- XREF _gl_depth_test_pixels_greater
- XREF _gl_depth_test_pixels_less
- XREF _gl_depth_test_pixels_generic
- XREF _gl_depth_test_span_greater
- XREF _gl_depth_test_span_less
- XREF _gl_depth_test_span_generic
- XREF _gl_alloc_alpha_buffers
- XREF _gl_alloc_accum_buffer
- XREF _memset
- XREF _memcpy
- XREF _strcpy
- XREF _getenv
- XREF _free
- XREF _calloc
- XREF _fprintf
- XREF _std__in
- XREF _std__out
- XREF _std__err
-
- SECTION "_CC:1",DATA
-
- XDEF _CC
- _CC
- dc.l 0
-
- SECTION "_alloc_shared_state:0",CODE
-
- rts
-
- ;static struct gl_shared_state *alloc_shared_state( void )
- _alloc_shared_state
- move.l a2,-(a7)
- L203
- ; ss = (struct gl_shared_state*) calloc( 1, sizeof(struct gl_sha
- pea $1C.w
- pea 1.w
- jsr _calloc
- addq.w #$8,a7
- move.l d0,a2
- ; if (!ss)
- cmp.w #0,a2
- bne.b L205
- L204
- moveq #0,d0
- move.l (a7)+,a2
- rts
- L205
- ; ss->DisplayList = NewHashTable();
- jsr _NewHashTable
- move.l d0,4(a2)
- ; ss->TexObjects = NewHashTable();
- jsr _NewHashTable
- move.l d0,$8(a2)
- ; ss->Default1D = gl_alloc_texture_object(ss, 0, 1);
- pea 1.w
- clr.l -(a7)
- move.l a2,-(a7)
- jsr _gl_alloc_texture_object
- add.w #$C,a7
- move.l d0,$10(a2)
- ; ss->Default2D = gl_alloc_texture_object(ss, 0, 2);
- pea 2.w
- clr.l -(a7)
- move.l a2,-(a7)
- jsr _gl_alloc_texture_object
- add.w #$C,a7
- move.l d0,$14(a2)
- ; ss->Default3D = gl_alloc_texture_object(ss, 0, 3);
- pea 3.w
- clr.l -(a7)
- move.l a2,-(a7)
- jsr _gl_alloc_texture_object
- add.w #$C,a7
- move.l d0,$18(a2)
- ; if (!ss->DisplayList || !ss->TexObjects
- move.l 4(a2),a0
- cmp.w #0,a0
- beq.b L210
- L206
- move.l $8(a2),a0
- cmp.w #0,a0
- beq.b L210
- L207
- move.l $10(a2),a0
- cmp.w #0,a0
- beq.b L210
- L208
- move.l $14(a2),a0
- cmp.w #0,a0
- beq.b L210
- L209
- move.l $18(a2),a0
- cmp.w #0,a0
- bne L221
- L210
- ; if (!ss->DisplayList)
- move.l 4(a2),a0
- cmp.w #0,a0
- bne.b L212
- L211
- ; DeleteHashTable(ss->DisplayList);
- move.l 4(a2),a0
- move.l a0,-(a7)
- jsr _DeleteHashTable
- addq.w #4,a7
- L212
- ; if (!ss->TexObjects)
- move.l $8(a2),a0
- cmp.w #0,a0
- bne.b L214
- L213
- ; DeleteHashTable(ss->TexObjects);
- move.l $8(a2),a0
- move.l a0,-(a7)
- jsr _DeleteHashTable
- addq.w #4,a7
- L214
- ; if (!ss->Default1D)
- move.l $10(a2),a0
- cmp.w #0,a0
- bne.b L216
- L215
- ; gl_free_texture_object(ss, ss->Default1D);
- move.l $10(a2),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- L216
- ; if (!ss->Default2D)
- move.l $14(a2),a0
- cmp.w #0,a0
- bne.b L218
- L217
- ; gl_free_texture_object(ss, ss->Default2D);
- move.l $14(a2),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- L218
- ; if (!ss->Default3D)
- move.l $18(a2),a0
- cmp.w #0,a0
- bne.b L220
- L219
- ; gl_free_texture_object(ss, ss->Default3D);
- move.l $18(a2),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- L220
- ; free(ss);
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- moveq #0,d0
- move.l (a7)+,a2
- rts
- L221
- move.l a2,d0
- move.l (a7)+,a2
- rts
-
- SECTION "_free_shared_state:0",CODE
-
-
- ;static void free_shared_state( GLcontext *ctx, struct gl_shared_stat
- _free_shared_state
- L231 EQU -4
- link a5,#L231
- move.l a2,-(a7)
- move.l $C(a5),a2
- L222
- ; while (1)
- bra.b L226
- L223
- ; GLuint list = HashFirstEntry(ss->DisplayList);
- move.l 4(a2),a0
- move.l a0,-(a7)
- jsr _HashFirstEntry
- addq.w #4,a7
- ; if (list)
- tst.l d0
- beq.b L225
- L224
- ; gl_destroy_list(ctx, list);
- move.l d0,-(a7)
- move.l $8(a5),-(a7)
- jsr _gl_destroy_list
- addq.w #$8,a7
- bra.b L226
- L225
- ;
- bra.b L227
- L226
- bra.b L223
- L227
- ; DeleteHashTable(ss->DisplayList);
- move.l 4(a2),a0
- move.l a0,-(a7)
- jsr _DeleteHashTable
- addq.w #4,a7
- ; while (ss->TexObjectList)
- bra.b L229
- L228
- ; gl_free_texture_object(ss, ss->TexObjectList);
- move.l $C(a2),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- L229
- move.l $C(a2),a0
- cmp.w #0,a0
- bne.b L228
- L230
- ; DeleteHashTable(ss->TexObjects);
- move.l $8(a2),a0
- move.l a0,-(a7)
- jsr _DeleteHashTable
- addq.w #4,a7
- ; free(ss);
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- move.l (a7)+,a2
- unlk a5
- rts
-
- SECTION "_init_light:0",CODE
-
-
- ;static void init_light( struct gl_light *l, GLuint n )
- _init_light
- move.l a2,-(a7)
- move.l $C(a7),d0
- move.l $8(a7),a2
- L232
- ; ASSIGN_4V( l->Ambien
- clr.l (a2)
- ; ASSIGN_4V( l->Ambien
- lea 4(a2),a0
- clr.l (a0)
- ; ASSIGN_4V( l->Ambien
- lea $8(a2),a0
- clr.l (a0)
- ; ASSIGN_4V( l->Ambien
- lea $C(a2),a0
- move.l #$3F800000,(a0)
- ; if (n==0)
- tst.l d0
- bne.b L234
- L233
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- addq.w #4,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- addq.w #$8,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- addq.w #4,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- addq.w #$8,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- bra.b L235
- L234
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- clr.l (a0)
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ; ASSIGN_4V( l->
- lea $10(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- clr.l (a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ; ASSIGN_4V( l-
- lea $20(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- L235
- ; ASSIGN_4V( l->Posit
- lea $30(a2),a0
- clr.l (a0)
- ; ASSIGN_4V( l->Posit
- lea $30(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ASSIGN_4V( l->Posit
- lea $30(a2),a0
- addq.w #$8,a0
- move.l #$3F800000,(a0)
- ; ASSIGN_4V( l->Posit
- lea $30(a2),a0
- add.w #$C,a0
- clr.l (a0)
- ; ASSIGN_3V( l->Directio
- lea $40(a2),a0
- clr.l (a0)
- ; ASSIGN_3V( l->Directio
- lea $40(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ASSIGN_3V( l->Directio
- lea $40(a2),a0
- addq.w #$8,a0
- move.l #$BF800000,(a0)
- ; l->SpotExponent = 0.0;
- clr.l $50(a2)
- ; gl_compute_spot_exp_table( l );
- move.l a2,-(a7)
- jsr _gl_compute_spot_exp_table
- addq.w #4,a7
- ; l->SpotCutoff = 180.0;
- move.l #$43340000,$54(a2)
- ; l->CosCutoff = -1.0;
- move.l #$BF800000,$58(a2)
- ; l->ConstantAttenuation = 1.0;
- move.l #$3F800000,$5C(a2)
- ; l->LinearAttenuation = 0.0;
- clr.l $60(a2)
- ; l->QuadraticAttenuation = 0.0;
- clr.l $64(a2)
- ; l->Enabled = GL_FALSE;
- clr.b $68(a2)
- move.l (a7)+,a2
- rts
-
- SECTION "_init_lightmodel:0",CODE
-
-
- ;static void init_lightmodel( struct gl_lightmodel *lm )
- _init_lightmodel
- move.l 4(a7),a0
- L236
- ; ASSIGN_4V( lm->Ambi
- move.l #$3E4CCCCC,(a0)
- ; ASSIGN_4V( lm->Ambi
- lea 4(a0),a1
- move.l #$3E4CCCCC,(a1)
- ; ASSIGN_4V( lm->Ambi
- lea $8(a0),a1
- move.l #$3E4CCCCC,(a1)
- ; ASSIGN_4V( lm->Ambi
- lea $C(a0),a1
- move.l #$3F800000,(a1)
- ; lm->LocalViewer = GL_FALSE;
- clr.b $10(a0)
- ; lm->TwoSide = GL_FALSE;
- clr.b $11(a0)
- rts
-
- SECTION "_init_material:0",CODE
-
-
- ;static void init_material( struct gl_material *m )
- _init_material
- move.l 4(a7),a0
- L237
- ; ASSIGN_4V( m->Ambie
- move.l #$3E4CCCCC,(a0)
- ; ASSIGN_4V( m->Ambie
- lea 4(a0),a1
- move.l #$3E4CCCCC,(a1)
- ; ASSIGN_4V( m->Ambie
- lea $8(a0),a1
- move.l #$3E4CCCCC,(a1)
- ; ASSIGN_4V( m->Ambie
- lea $C(a0),a1
- move.l #$3F800000,(a1)
- ; ASSIGN_4V( m->Diffu
- lea $10(a0),a1
- move.l #$3F4CCCCC,(a1)
- ; ASSIGN_4V( m->Diffu
- lea $10(a0),a1
- addq.w #4,a1
- move.l #$3F4CCCCC,(a1)
- ; ASSIGN_4V( m->Diffu
- lea $10(a0),a1
- addq.w #$8,a1
- move.l #$3F4CCCCC,(a1)
- ; ASSIGN_4V( m->Diffu
- lea $10(a0),a1
- add.w #$C,a1
- move.l #$3F800000,(a1)
- ; ASSIGN_4V( m->Specu
- lea $20(a0),a1
- clr.l (a1)
- ; ASSIGN_4V( m->Specu
- lea $20(a0),a1
- addq.w #4,a1
- clr.l (a1)
- ; ASSIGN_4V( m->Specu
- lea $20(a0),a1
- addq.w #$8,a1
- clr.l (a1)
- ; ASSIGN_4V( m->Specu
- lea $20(a0),a1
- add.w #$C,a1
- move.l #$3F800000,(a1)
- ; ASSIGN_4V( m->Emiss
- lea $30(a0),a1
- clr.l (a1)
- ; ASSIGN_4V( m->Emiss
- lea $30(a0),a1
- addq.w #4,a1
- clr.l (a1)
- ; ASSIGN_4V( m->Emiss
- lea $30(a0),a1
- addq.w #$8,a1
- clr.l (a1)
- ; ASSIGN_4V( m->Emiss
- lea $30(a0),a1
- add.w #$C,a1
- move.l #$3F800000,(a1)
- ; m->Shininess = 0.0;
- clr.l $40(a0)
- ; m->AmbientIndex = 0;
- clr.l $44(a0)
- ; m->DiffuseIndex = 1;
- move.l #$3F800000,$48(a0)
- ; m->SpecularIndex = 1;
- move.l #$3F800000,$4C(a0)
- ; gl_compute_material_shine_table( m );
- move.l a0,-(a7)
- jsr _gl_compute_material_shine_table
- addq.w #4,a7
- rts
-
- SECTION "_initialize_context:0",CODE
-
-
- ;static void initialize_context( GLcontext *ctx )
- _initialize_context
- movem.l d2/a2,-(a7)
- move.l $C(a7),a2
- L242
- ; if (ctx)
- cmp.w #0,a2
- beq L268
- L243
- ; ctx->NewModelViewMatrix = GL_FALSE;
- clr.b $97C(a2)
- ; ctx->ModelViewMatrixType = MATRIX_IDENTITY;
- move.l #1,$97E(a2)
- ;ctx->ModelViewMat
- pea $40.w
- move.l #_identity___initialize_context,-(a7)
- lea $982(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- ;Y( ctx->ModelView
- pea $40.w
- move.l #_identity___initialize_context,-(a7)
- lea $9C2(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- ; ctx->ModelViewStackDepth = 0;
- clr.l $A02(a2)
- ; ctx->NewProjectionMatrix = GL_FALSE;
- clr.b $1206(a2)
- ; ctx->ProjectionMatrixType = MATRIX_IDENTITY;
- move.l #1,$1208(a2)
- ;tx->ProjectionMat
- pea $40.w
- move.l #_identity___initialize_context,-(a7)
- lea $120C(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- ; ctx->ProjectionStackDepth = 0;
- clr.l $124C(a2)
- ; ctx->NearFarStack[0][0] = 1.0;
- lea $1A50(a2),a0
- move.l #$3F800000,(a0)
- ; ctx->NearFarStack[0][1] = 0.0;
- lea $1A50(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ctx->NewTextureMatrix = GL_FALSE;
- clr.b $1B50(a2)
- ; ctx->TextureMatrixType = MATRIX_IDENTITY;
- move.l #1,$1B52(a2)
- ;( ctx->TextureMat
- pea $40.w
- move.l #_identity___initialize_context,-(a7)
- lea $1B56(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- ; ctx->TextureStackDepth = 0;
- clr.l $1B96(a2)
- ;SIGN_4V( ctx->Acc
- lea $1E64(a2),a0
- clr.l (a0)
- ;SIGN_4V( ctx->Acc
- lea $1E64(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Acc
- lea $1E64(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Acc
- lea $1E64(a2),a0
- add.w #$C,a0
- clr.l (a0)
- ; ctx->Color.IndexMask = 0xffffffff;
- move.l #-1,$1E88(a2)
- ; ctx->Color.ColorMask = 0xf;
- move.l #$F,$1E8C(a2)
- ; ctx->Color.SWmasking = GL_FALSE;
- clr.b $1E90(a2)
- ; ctx->Color.ClearIndex = 0;
- clr.l $1E74(a2)
- ;SIGN_4V( ctx->Col
- lea $1E78(a2),a0
- clr.l (a0)
- ;SIGN_4V( ctx->Col
- lea $1E78(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Col
- lea $1E78(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Col
- lea $1E78(a2),a0
- add.w #$C,a0
- clr.l (a0)
- ; ctx->Color.DrawBuffer = GL_FRONT;
- move.l #$404,$1E92(a2)
- ; ctx->Color.AlphaEnabled = GL_FALSE;
- clr.b $1E96(a2)
- ; ctx->Color.AlphaFunc = GL_ALWAYS;
- move.l #$207,$1E98(a2)
- ; ctx->Color.AlphaRef = 0.0;
- clr.l $1E9C(a2)
- ; ctx->Color.AlphaRefUbyte = 0;
- clr.b $1EA0(a2)
- ; ctx->Color.BlendEnabled = GL_FALSE;
- clr.b $1EA1(a2)
- ; ctx->Color.BlendSrc = GL_ONE;
- move.l #1,$1EA2(a2)
- ; ctx->Color.BlendDst = GL_ZERO;
- clr.l $1EA6(a2)
- ; ctx->Color.BlendEquation = GL_FUNC_ADD_EXT;
- move.l #$8006,$1EAA(a2)
- ;SIGN_4V( ctx->Col
- lea $1EAE(a2),a0
- clr.l (a0)
- ;SIGN_4V( ctx->Col
- lea $1EAE(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Col
- lea $1EAE(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Col
- lea $1EAE(a2),a0
- add.w #$C,a0
- clr.l (a0)
- ; ctx->Color.IndexLogicOpEnabled = GL_FALSE;
- clr.b $1EC2(a2)
- ; ctx->Color.ColorLogicOpEnabled = GL_FALSE;
- clr.b $1EC3(a2)
- ; ctx->Color.SWLogicOpEnabled = GL_FALSE;
- clr.b $1EC4(a2)
- ; ctx->Color.LogicOp = GL_COPY;
- move.l #$1503,$1EBE(a2)
- ; ctx->Color.DitherFlag = GL_TRUE;
- move.b #1,$1EC5(a2)
- ; ctx->Current.Index = 1;
- move.l #1,$1ECA(a2)
- ; ASSIGN_3V( c
- lea $1ECE(a2),a0
- clr.l (a0)
- ; ASSIGN_3V( c
- lea $1ECE(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ASSIGN_3V( c
- lea $1ECE(a2),a0
- addq.w #$8,a0
- move.l #$3F800000,(a0)
- ; ctx->Current.ByteColor[0] = (GLint) ctx->Visual->RedScal
- move.l $898(a2),a0
- fmove.s 2(a0),fp0
- fmove.l fp0,d0
- lea $1EC6(a2),a0
- move.b d0,(a0)
- ; ctx->Current.ByteColor[1] = (GLint) ctx->Visual->GreenSc
- move.l $898(a2),a0
- fmove.s 6(a0),fp0
- fmove.l fp0,d0
- lea $1EC6(a2),a0
- addq.w #1,a0
- move.b d0,(a0)
- ; ctx->Current.ByteColor[2] = (GLint) ctx->Visual->BlueSca
- move.l $898(a2),a0
- fmove.s $A(a0),fp0
- fmove.l fp0,d0
- lea $1EC6(a2),a0
- addq.w #2,a0
- move.b d0,(a0)
- ; ctx->Current.ByteColor[3] = (GLint) ctx->Visual->AlphaSc
- move.l $898(a2),a0
- fmove.s $E(a0),fp0
- fmove.l fp0,d0
- lea $1EC6(a2),a0
- addq.w #3,a0
- move.b d0,(a0)
- ;IGN_4V( ctx->Curr
- lea $1EEA(a2),a0
- clr.l (a0)
- ;IGN_4V( ctx->Curr
- lea $1EEA(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ;IGN_4V( ctx->Curr
- lea $1EEA(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ;IGN_4V( ctx->Curr
- lea $1EEA(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- ; ctx->Current.RasterPosValid = GL_TRUE;
- move.b #1,$1F22(a2)
- ; ctx->Current.RasterIndex = 1;
- move.l #1,$1F0E(a2)
- ;SIGN_4V( ctx->Cur
- lea $1EDA(a2),a0
- clr.l (a0)
- ;SIGN_4V( ctx->Cur
- lea $1EDA(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Cur
- lea $1EDA(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Cur
- lea $1EDA(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- ;N_4V( ctx->Curren
- lea $1EFE(a2),a0
- move.l #$3F800000,(a0)
- ;N_4V( ctx->Curren
- lea $1EFE(a2),a0
- addq.w #4,a0
- move.l #$3F800000,(a0)
- ;N_4V( ctx->Curren
- lea $1EFE(a2),a0
- addq.w #$8,a0
- move.l #$3F800000,(a0)
- ;N_4V( ctx->Curren
- lea $1EFE(a2),a0
- add.w #$C,a0
- move.l #$3F800000,(a0)
- ; ctx->Current.EdgeFlag = GL_TRUE;
- move.b #1,$1F23(a2)
- ; ctx->Depth.Test = GL_FALSE;
- clr.b $1F2C(a2)
- ; ctx->Depth.Clear = 1.0;
- move.l #$3F800000,$1F28(a2)
- ; ctx->Depth.Func = GL_LESS;
- move.l #$201,$1F24(a2)
- ; ctx->Depth.Mask = GL_TRUE;
- move.b #1,$1F2D(a2)
- ; ctx->Eval.Map1Color4 = GL_FALSE;
- clr.b $1F2E(a2)
- ; ctx->Eval.Map1Index = GL_FALSE;
- clr.b $1F2F(a2)
- ; ctx->Eval.Map1Normal = GL_FALSE;
- clr.b $1F30(a2)
- ; ctx->Eval.Map1TextureCoord1 = GL_FALSE;
- clr.b $1F31(a2)
- ; ctx->Eval.Map1TextureCoord2 = GL_FALSE;
- clr.b $1F32(a2)
- ; ctx->Eval.Map1TextureCoord3 = GL_FALSE;
- clr.b $1F33(a2)
- ; ctx->Eval.Map1TextureCoord4 = GL_FALSE;
- clr.b $1F34(a2)
- ; ctx->Eval.Map1Vertex3 = GL_FALSE;
- clr.b $1F35(a2)
- ; ctx->Eval.Map1Vertex4 = GL_FALSE;
- clr.b $1F36(a2)
- ; ctx->Eval.Map2Color4 = GL_FALSE;
- clr.b $1F37(a2)
- ; ctx->Eval.Map2Index = GL_FALSE;
- clr.b $1F38(a2)
- ; ctx->Eval.Map2Normal = GL_FALSE;
- clr.b $1F39(a2)
- ; ctx->Eval.Map2TextureCoord1 = GL_FALSE;
- clr.b $1F3A(a2)
- ; ctx->Eval.Map2TextureCoord2 = GL_FALSE;
- clr.b $1F3B(a2)
- ; ctx->Eval.Map2TextureCoord3 = GL_FALSE;
- clr.b $1F3C(a2)
- ; ctx->Eval.Map2TextureCoord4 = GL_FALSE;
- clr.b $1F3D(a2)
- ; ctx->Eval.Map2Vertex3 = GL_FALSE;
- clr.b $1F3E(a2)
- ; ctx->Eval.Map2Vertex4 = GL_FALSE;
- clr.b $1F3F(a2)
- ; ctx->Eval.AutoNormal = GL_FALSE;
- clr.b $1F40(a2)
- ; ctx->Eval.MapGrid1un = 1;
- move.l #1,$1F42(a2)
- ; ctx->Eval.MapGrid1u1 = 0.0;
- clr.l $1F46(a2)
- ; ctx->Eval.MapGrid1u2 = 1.0;
- move.l #$3F800000,$1F4A(a2)
- ; ctx->Eval.MapGrid2un = 1;
- move.l #1,$1F4E(a2)
- ; ctx->Eval.MapGrid2vn = 1;
- move.l #1,$1F52(a2)
- ; ctx->Eval.MapGrid2u1 = 0.0;
- clr.l $1F56(a2)
- ; ctx->Eval.MapGrid2u2 = 1.0;
- move.l #$3F800000,$1F5A(a2)
- ; ctx->Eval.MapGrid2v1 = 0.0;
- clr.l $1F5E(a2)
- ; ctx->Eval.MapGrid2v2 = 1.0;
- move.l #$3F800000,$1F62(a2)
- ; ctx->Fog.Enabled = GL_FALSE;
- clr.b $1F66(a2)
- ; ctx->Fog.Mode = GL_EXP;
- move.l #$800,$1F88(a2)
- ; ASSIGN_4V( c
- lea $1F68(a2),a0
- clr.l (a0)
- ; ASSIGN_4V( c
- lea $1F68(a2),a0
- addq.w #4,a0
- clr.l (a0)
- ; ASSIGN_4V( c
- lea $1F68(a2),a0
- addq.w #$8,a0
- clr.l (a0)
- ; ASSIGN_4V( c
- lea $1F68(a2),a0
- add.w #$C,a0
- clr.l (a0)
- ; ctx->Fog.Index = 0.0;
- clr.l $1F84(a2)
- ; ctx->Fog.Density = 1.0;
- move.l #$3F800000,$1F78(a2)
- ; ctx->Fog.Start = 0.0;
- clr.l $1F7C(a2)
- ; ctx->Fog.End = 1.0;
- move.l #$3F800000,$1F80(a2)
- ; ctx->Hint.PerspectiveCorrection = GL_DONT_CARE;
- move.l #$1100,$1F8C(a2)
- ; ctx->Hint.PointSmooth = GL_DONT_CARE;
- move.l #$1100,$1F90(a2)
- ; ctx->Hint.LineSmooth = GL_DONT_CARE;
- move.l #$1100,$1F94(a2)
- ; ctx->Hint.PolygonSmooth = GL_DONT_CARE;
- move.l #$1100,$1F98(a2)
- ; ctx->Hint.Fog = GL_DONT_CARE;
- move.l #$1100,$1F9C(a2)
- ; for (i=0;
- moveq #0,d2
- bra.b L245
- L244
- ; init_light( &ctx->Light.Light[i], i );
- move.l d2,-(a7)
- lea $1FA0(a2),a0
- move.l d2,d0
- muls.l #$10E2,d0
- add.l d0,a0
- move.l a0,-(a7)
- jsr _init_light
- addq.w #$8,a7
- addq.l #1,d2
- L245
- cmp.l #$8,d2
- blo.b L244
- L246
- ; init_lightmodel( &ctx->Light.Model );
- move.l a2,a0
- add.l #$A6B0,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _init_lightmodel
- addq.w #4,a7
- ; init_material( &ctx->Light.Material[0] );
- move.l a2,a0
- add.l #$A6C2,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _init_material
- addq.w #4,a7
- ; init_material( &ctx->Light.Material[1] );
- move.l a2,a0
- add.l #$A6C2,a0
- lea (a0),a0
- add.w #$370,a0
- move.l a0,-(a7)
- jsr _init_material
- addq.w #4,a7
- ; ctx->Light.ShadeModel = GL_SMOOTH;
- move.l a2,a0
- add.l #$ADA4,a0
- move.l #$1D01,(a0)
- ; ctx->Light.Enabled = GL_FALSE;
- move.l a2,a0
- add.l #$ADA2,a0
- clr.b (a0)
- ; ctx->Light.ColorMaterialFace = GL_FRONT_AND_BACK;
- move.l a2,a0
- add.l #$ADA8,a0
- move.l #$408,(a0)
- ; ctx->Light.ColorMaterialMode = GL_AMBIENT_AND_DIFFUSE;
- move.l a2,a0
- add.l #$ADAC,a0
- move.l #$1602,(a0)
- ; ctx->Light.ColorMaterialBitmask
- pea $1602.w
- pea $408.w
- jsr _gl_material_bitmask
- addq.w #$8,a7
- move.l a2,a0
- add.l #$ADB0,a0
- move.l d0,(a0)
- ; ctx->Light.ColorMaterialEnabled = GL_FALSE;
- move.l a2,a0
- add.l #$ADB4,a0
- clr.b (a0)
- ; ctx->Line.SmoothFlag = GL_FALSE;
- move.l a2,a0
- add.l #$ADDC,a0
- clr.b (a0)
- ; ctx->Line.StippleFlag = GL_FALSE;
- move.l a2,a0
- add.l #$ADDD,a0
- clr.b (a0)
- ; ctx->Line.Width = 1.0;
- move.l a2,a0
- add.l #$ADE4,a0
- move.l #$3F800000,(a0)
- ; ctx->Line.StipplePattern = 0xffff;
- move.l a2,a0
- add.l #$ADDE,a0
- move.w #$FFFF,(a0)
- ; ctx->Line.StippleFactor = 1;
- move.l a2,a0
- add.l #$ADE0,a0
- move.l #1,(a0)
- ; ctx->List.ListBase = 0;
- move.l a2,a0
- add.l #$ADE8,a0
- clr.l (a0)
- ; ctx->Pixel.RedBias = 0.0;
- move.l a2,a0
- add.l #$ADF0,a0
- clr.l (a0)
- ; ctx->Pixel.RedScale = 1.0;
- move.l a2,a0
- add.l #$ADF4,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.GreenBias = 0.0;
- move.l a2,a0
- add.l #$ADF8,a0
- clr.l (a0)
- ; ctx->Pixel.GreenScale = 1.0;
- move.l a2,a0
- add.l #$ADFC,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.BlueBias = 0.0;
- move.l a2,a0
- add.l #$AE00,a0
- clr.l (a0)
- ; ctx->Pixel.BlueScale = 1.0;
- move.l a2,a0
- add.l #$AE04,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.AlphaBias = 0.0;
- move.l a2,a0
- add.l #$AE08,a0
- clr.l (a0)
- ; ctx->Pixel.AlphaScale = 1.0;
- move.l a2,a0
- add.l #$AE0C,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.DepthBias = 0.0;
- move.l a2,a0
- add.l #$AE10,a0
- clr.l (a0)
- ; ctx->Pixel.DepthScale = 1.0;
- move.l a2,a0
- add.l #$AE14,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.IndexOffset = 0;
- move.l a2,a0
- add.l #$AE1C,a0
- clr.l (a0)
- ; ctx->Pixel.IndexShift = 0;
- move.l a2,a0
- add.l #$AE18,a0
- clr.l (a0)
- ; ctx->Pixel.ZoomX = 1.0;
- move.l a2,a0
- add.l #$AE22,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.ZoomY = 1.0;
- move.l a2,a0
- add.l #$AE26,a0
- move.l #$3F800000,(a0)
- ; ctx->Pixel.MapColorFlag = GL_FALSE;
- move.l a2,a0
- add.l #$AE20,a0
- clr.b (a0)
- ; ctx->Pixel.MapStencilFlag = GL_FALSE;
- move.l a2,a0
- add.l #$AE21,a0
- clr.b (a0)
- ; ctx->Pixel.MapStoSsize = 1;
- move.l a2,a0
- add.l #$AE2A,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapItoIsize = 1;
- move.l a2,a0
- add.l #$AE2E,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapItoRsize = 1;
- move.l a2,a0
- add.l #$AE32,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapItoGsize = 1;
- move.l a2,a0
- add.l #$AE36,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapItoBsize = 1;
- move.l a2,a0
- add.l #$AE3A,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapItoAsize = 1;
- move.l a2,a0
- add.l #$AE3E,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapRtoRsize = 1;
- move.l a2,a0
- add.l #$AE42,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapGtoGsize = 1;
- move.l a2,a0
- add.l #$AE46,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapBtoBsize = 1;
- move.l a2,a0
- add.l #$AE4A,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapAtoAsize = 1;
- move.l a2,a0
- add.l #$AE4E,a0
- move.l #1,(a0)
- ; ctx->Pixel.MapStoS[0] = 0;
- move.l a2,a0
- add.l #$AE52,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapItoI[0] = 0;
- move.l a2,a0
- add.l #$B252,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapItoR[0] = 0.0;
- move.l a2,a0
- add.l #$B652,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapItoG[0] = 0.0;
- move.l a2,a0
- add.l #$BA52,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapItoB[0] = 0.0;
- move.l a2,a0
- add.l #$BE52,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapItoA[0] = 0.0;
- move.l a2,a0
- add.l #$C252,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapRtoR[0] = 0.0;
- move.l a2,a0
- add.l #$C652,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapGtoG[0] = 0.0;
- move.l a2,a0
- add.l #$CA52,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapBtoB[0] = 0.0;
- move.l a2,a0
- add.l #$CE52,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Pixel.MapAtoA[0] = 0.0;
- move.l a2,a0
- add.l #$D252,a0
- lea (a0),a0
- clr.l (a0)
- ; ctx->Point.SmoothFlag = GL_FALSE;
- move.l a2,a0
- add.l #$D652,a0
- clr.b (a0)
- ; ctx->Point.Size = 1.0;
- move.l a2,a0
- add.l #$D654,a0
- move.l #$3F800000,(a0)
- ; ctx->Point.Params[0] = 1.0;
- move.l a2,a0
- add.l #$D658,a0
- lea (a0),a0
- move.l #$3F800000,(a0)
- ; ctx->Point.Params[1] = 0.0;
- move.l a2,a0
- add.l #$D658,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ; ctx->Point.Params[2] = 0.0;
- move.l a2,a0
- add.l #$D658,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ; ctx->Point.MinSize = 0.0;
- move.l a2,a0
- add.l #$D664,a0
- clr.l (a0)
- ; ctx->Point.MaxSize = (GLfloat) MAX_POINT_SIZE;
- move.l a2,a0
- add.l #$D668,a0
- move.l #$41200000,(a0)
- ; ctx->Point.Threshold = 1.0;
- move.l a2,a0
- add.l #$D66C,a0
- move.l #$3F800000,(a0)
- ; ctx->Polygon.CullFlag = GL_FALSE;
- move.l a2,a0
- add.l #$D67D,a0
- clr.b (a0)
- ; ctx->Polygon.CullFaceMode = GL_BACK;
- move.l a2,a0
- add.l #$D67E,a0
- move.l #$405,(a0)
- ; ctx->Polygon.FrontFace = GL_CCW;
- move.l a2,a0
- add.l #$D670,a0
- move.l #$901,(a0)
- ; ctx->Polygon.FrontMode = GL_FILL;
- move.l a2,a0
- add.l #$D674,a0
- move.l #$1B02,(a0)
- ; ctx->Polygon.BackMode = GL_FILL;
- move.l a2,a0
- add.l #$D678,a0
- move.l #$1B02,(a0)
- ; ctx->Polygon.Unfilled = GL_FALSE;
- move.l a2,a0
- add.l #$D67C,a0
- clr.b (a0)
- ; ctx->Polygon.SmoothFlag = GL_FALSE;
- move.l a2,a0
- add.l #$D686,a0
- clr.b (a0)
- ; ctx->Polygon.StippleFlag = GL_FALSE;
- move.l a2,a0
- add.l #$D687,a0
- clr.b (a0)
- ; ctx->Polygon.OffsetFactor = 0.0F;
- move.l a2,a0
- add.l #$D688,a0
- clr.l (a0)
- ; ctx->Polygon.OffsetUnits = 0.0F;
- move.l a2,a0
- add.l #$D68C,a0
- clr.l (a0)
- ; ctx->Polygon.OffsetPoint = GL_FALSE;
- move.l a2,a0
- add.l #$D690,a0
- clr.b (a0)
- ; ctx->Polygon.OffsetLine = GL_FALSE;
- move.l a2,a0
- add.l #$D691,a0
- clr.b (a0)
- ; ctx->Polygon.OffsetFill = GL_FALSE;
- move.l a2,a0
- add.l #$D692,a0
- clr.b (a0)
- ; ctx->Polygon.OffsetAny = GL_FALSE;
- move.l a2,a0
- add.l #$D693,a0
- clr.b (a0)
- ;MSET( ctx->Polygo
- pea $80.w
- pea $FF.w
- move.l a2,a0
- add.l #$D694,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memset
- add.w #$C,a7
- ; ctx->Scissor.Enabled = GL_FALSE;
- move.l a2,a0
- add.l #$D714,a0
- clr.b (a0)
- ; ctx->Scissor.X = 0;
- move.l a2,a0
- add.l #$D716,a0
- clr.l (a0)
- ; ctx->Scissor.Y = 0;
- move.l a2,a0
- add.l #$D71A,a0
- clr.l (a0)
- ; ctx->Scissor.Width = 0;
- move.l a2,a0
- add.l #$D71E,a0
- clr.l (a0)
- ; ctx->Scissor.Height = 0;
- move.l a2,a0
- add.l #$D722,a0
- clr.l (a0)
- ; ctx->Stencil.Enabled = GL_FALSE;
- move.l a2,a0
- add.l #$D726,a0
- clr.b (a0)
- ; ctx->Stencil.Function = GL_ALWAYS;
- move.l a2,a0
- add.l #$D728,a0
- move.l #$207,(a0)
- ; ctx->Stencil.FailFunc = GL_KEEP;
- move.l a2,a0
- add.l #$D72C,a0
- move.l #$1E00,(a0)
- ; ctx->Stencil.ZPassFunc = GL_KEEP;
- move.l a2,a0
- add.l #$D730,a0
- move.l #$1E00,(a0)
- ; ctx->Stencil.ZFailFunc = GL_KEEP;
- move.l a2,a0
- add.l #$D734,a0
- move.l #$1E00,(a0)
- ; ctx->Stencil.Ref = 0;
- move.l a2,a0
- add.l #$D738,a0
- clr.b (a0)
- ; ctx->Stencil.ValueMask = 0xff;
- move.l a2,a0
- add.l #$D739,a0
- move.b #$FF,(a0)
- ; ctx->Stencil.Clear = 0;
- move.l a2,a0
- add.l #$D73A,a0
- clr.b (a0)
- ; ctx->Stencil.WriteMask = 0xff;
- move.l a2,a0
- add.l #$D73B,a0
- move.b #$FF,(a0)
- ; ctx->Texture.Enabled = 0;
- move.l a2,a0
- add.l #$D73C,a0
- clr.l (a0)
- ; ctx->Texture.EnvMode = GL_MODULATE;
- move.l a2,a0
- add.l #$D740,a0
- move.l #$2100,(a0)
- ;SIGN_4V( ctx->Tex
- move.l a2,a0
- add.l #$D744,a0
- lea (a0),a0
- clr.l (a0)
- ;SIGN_4V( ctx->Tex
- move.l a2,a0
- add.l #$D744,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Tex
- move.l a2,a0
- add.l #$D744,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;SIGN_4V( ctx->Tex
- move.l a2,a0
- add.l #$D744,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ; ctx->Texture.TexGenEnabled = 0;
- move.l a2,a0
- add.l #$D754,a0
- clr.l (a0)
- ; ctx->Texture.GenModeS = GL_EYE_LINEAR;
- move.l a2,a0
- add.l #$D758,a0
- move.l #$2400,(a0)
- ; ctx->Texture.GenModeT = GL_EYE_LINEAR;
- move.l a2,a0
- add.l #$D75C,a0
- move.l #$2400,(a0)
- ; ctx->Texture.GenModeR = GL_EYE_LINEAR;
- move.l a2,a0
- add.l #$D760,a0
- move.l #$2400,(a0)
- ; ctx->Texture.GenModeQ = GL_EYE_LINEAR;
- move.l a2,a0
- add.l #$D764,a0
- move.l #$2400,(a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D768,a0
- lea (a0),a0
- move.l #$3F800000,(a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D768,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D768,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D768,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D778,a0
- lea (a0),a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D778,a0
- lea (a0),a0
- addq.w #4,a0
- move.l #$3F800000,(a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D778,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D778,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D788,a0
- lea (a0),a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D788,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D788,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D788,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D798,a0
- lea (a0),a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D798,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D798,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;_4V( ctx->Texture
- move.l a2,a0
- add.l #$D798,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7A8,a0
- lea (a0),a0
- move.l #$3F800000,(a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7A8,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7A8,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7A8,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7B8,a0
- lea (a0),a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7B8,a0
- lea (a0),a0
- addq.w #4,a0
- move.l #$3F800000,(a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7B8,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7B8,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7C8,a0
- lea (a0),a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7C8,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7C8,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7C8,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7D8,a0
- lea (a0),a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7D8,a0
- lea (a0),a0
- addq.w #4,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7D8,a0
- lea (a0),a0
- addq.w #$8,a0
- clr.l (a0)
- ;IGN_4V( ctx->Text
- move.l a2,a0
- add.l #$D7D8,a0
- lea (a0),a0
- add.w #$C,a0
- clr.l (a0)
- ; ctx->Texture.Current1D = ctx->Shared->Default1D;
- move.l (a2),a0
- move.l $10(a0),a0
- move.l a2,a1
- add.l #$D7E8,a1
- move.l a0,(a1)
- ; ctx->Texture.Current2D = ctx->Shared->Default2D;
- move.l (a2),a0
- move.l $14(a0),a0
- move.l a2,a1
- add.l #$D7EC,a1
- move.l a0,(a1)
- ; ctx->Texture.Current3D = ctx->Shared->Default3D;
- move.l (a2),a0
- move.l $18(a0),a0
- move.l a2,a1
- add.l #$D7F0,a1
- move.l a0,(a1)
- ; ctx->Texture.SharedPalette = GL_FALSE;
- move.l a2,a0
- add.l #$D804,a0
- clr.b (a0)
- ; ctx->Texture.Palette[0] = 255;
- move.l a2,a0
- add.l #$D805,a0
- lea (a0),a0
- move.b #$FF,(a0)
- ; ctx->Texture.Palette[1] = 255;
- move.l a2,a0
- add.l #$D805,a0
- lea (a0),a0
- addq.w #1,a0
- move.b #$FF,(a0)
- ; ctx->Texture.Palette[2] = 255;
- move.l a2,a0
- add.l #$D805,a0
- lea (a0),a0
- addq.w #2,a0
- move.b #$FF,(a0)
- ; ctx->Texture.Palette[3] = 255;
- move.l a2,a0
- add.l #$D805,a0
- lea (a0),a0
- addq.w #3,a0
- move.b #$FF,(a0)
- ; ctx->Texture.PaletteSize = 1;
- move.l a2,a0
- add.l #$DC06,a0
- move.l #1,(a0)
- ; ctx->Texture.PaletteIntFormat = GL_RGBA;
- move.l a2,a0
- add.l #$DC0A,a0
- move.l #$1908,(a0)
- ; ctx->Texture.PaletteFormat = GL_RGBA;
- move.l a2,a0
- add.l #$DC0E,a0
- move.l #$1908,(a0)
- ; ctx->Transform.MatrixMode = GL_MODELVIEW;
- move.l a2,a0
- add.l #$DC12,a0
- move.l #$1700,(a0)
- ; ctx->Transform.Normalize = GL_FALSE;
- move.l a2,a0
- add.l #$DC7D,a0
- clr.b (a0)
- ; for (i=0;
- moveq #0,d2
- bra.b L248
- L247
- ; ctx->Transform.ClipEnabled[i] = GL_FALSE;
- move.l a2,a0
- add.l #$DC76,a0
- lea (a0),a0
- add.l d2,a0
- clr.b (a0)
- ;ctx->Transform.Cl
- move.l a2,a0
- add.l #$DC16,a0
- lea (a0),a0
- move.l d2,d0
- asl.l #4,d0
- add.l d0,a0
- clr.l (a0)
- ;ctx->Transform.Cl
- move.l a2,a0
- add.l #$DC16,a0
- lea (a0),a0
- move.l d2,d0
- asl.l #4,d0
- add.l d0,a0
- addq.w #4,a0
- clr.l (a0)
- ;ctx->Transform.Cl
- move.l a2,a0
- add.l #$DC16,a0
- lea (a0),a0
- move.l d2,d0
- asl.l #4,d0
- add.l d0,a0
- addq.w #$8,a0
- clr.l (a0)
- ;ctx->Transform.Cl
- move.l a2,a0
- add.l #$DC16,a0
- lea (a0),a0
- move.l d2,d0
- asl.l #4,d0
- add.l d0,a0
- add.w #$C,a0
- clr.l (a0)
- addq.l #1,d2
- L248
- cmp.l #6,d2
- blo.b L247
- L249
- ; ctx->Transform.AnyClip = GL_FALSE;
- move.l a2,a0
- add.l #$DC7C,a0
- clr.b (a0)
- ; ctx->Viewport.X = 0;
- move.l a2,a0
- add.l #$DC7E,a0
- clr.l (a0)
- ; ctx->Viewport.Y = 0;
- move.l a2,a0
- add.l #$DC82,a0
- clr.l (a0)
- ; ctx->Viewport.Width = 0;
- move.l a2,a0
- add.l #$DC86,a0
- clr.l (a0)
- ; ctx->Viewport.Height = 0;
- move.l a2,a0
- add.l #$DC8A,a0
- clr.l (a0)
- ; ctx->Viewport.Near = 0.0;
- move.l a2,a0
- add.l #$DC8E,a0
- clr.l (a0)
- ; ctx->Viewport.Far = 1.0;
- move.l a2,a0
- add.l #$DC92,a0
- move.l #$3F800000,(a0)
- ; ctx->Viewport.Sx = 0.0;
- move.l a2,a0
- add.l #$DC96,a0
- clr.l (a0)
- ; ctx->Viewport.Tx = 0.0;
- move.l a2,a0
- add.l #$DCA2,a0
- clr.l (a0)
- ; ctx->Viewport.Sy = 0.0;
- move.l a2,a0
- add.l #$DC9A,a0
- clr.l (a0)
- ; ctx->Viewport.Ty = 0.0;
- move.l a2,a0
- add.l #$DCA6,a0
- clr.l (a0)
- ; ctx->Viewport.Sz = 0.5 * DEPTH_SCALE;
- move.l a2,a0
- add.l #$DC9E,a0
- move.l #$46FFFF00,(a0)
- ; ctx->Viewport.Tz = 0.5 * DEPTH_SCALE;
- move.l a2,a0
- add.l #$DCAA,a0
- move.l #$46FFFF00,(a0)
- ; ctx->Pack.Alignment = 4;
- move.l a2,a0
- add.l #$DD66,a0
- move.l #4,(a0)
- ; ctx->Pack.RowLength = 0;
- move.l a2,a0
- add.l #$DD6A,a0
- clr.l (a0)
- ; ctx->Pack.SkipPixels = 0;
- move.l a2,a0
- add.l #$DD6E,a0
- clr.l (a0)
- ; ctx->Pack.SkipRows = 0;
- move.l a2,a0
- add.l #$DD72,a0
- clr.l (a0)
- ; ctx->Pack.SwapBytes = GL_FALSE;
- move.l a2,a0
- add.l #$DD7E,a0
- clr.b (a0)
- ; ctx->Pack.LsbFirst = GL_FALSE;
- move.l a2,a0
- add.l #$DD7F,a0
- clr.b (a0)
- ; ctx->Unpack.Alignment = 4;
- move.l a2,a0
- add.l #$DD80,a0
- move.l #4,(a0)
- ; ctx->Unpack.RowLength = 0;
- move.l a2,a0
- add.l #$DD84,a0
- clr.l (a0)
- ; ctx->Unpack.SkipPixels = 0;
- move.l a2,a0
- add.l #$DD88,a0
- clr.l (a0)
- ; ctx->Unpack.SkipRows = 0;
- move.l a2,a0
- add.l #$DD8C,a0
- clr.l (a0)
- ; ctx->Unpack.SwapBytes = GL_FALSE;
- move.l a2,a0
- add.l #$DD98,a0
- clr.b (a0)
- ; ctx->Unpack.LsbFirst = GL_FALSE;
- move.l a2,a0
- add.l #$DD99,a0
- clr.b (a0)
- ; ctx->Feedback.Type = GL_2D;
- move.l a2,a0
- add.l #$DF4A,a0
- move.l #$600,(a0)
- ; ctx->Feedback.Buffer = NULL;
- move.l a2,a1
- add.l #$DF52,a1
- clr.l (a1)
- ; ctx->Feedback.BufferSize = 0;
- move.l a2,a0
- add.l #$DF56,a0
- clr.l (a0)
- ; ctx->Feedback.Count = 0;
- move.l a2,a0
- add.l #$DF5A,a0
- clr.l (a0)
- ; ctx->Select.Buffer = NULL;
- move.l a2,a1
- add.l #$DF5E,a1
- clr.l (a1)
- ; ctx->Select.BufferSize = 0;
- move.l a2,a0
- add.l #$DF62,a0
- clr.l (a0)
- ; ctx->Select.BufferCount = 0;
- move.l a2,a0
- add.l #$DF66,a0
- clr.l (a0)
- ; ctx->Select.Hits = 0;
- move.l a2,a0
- add.l #$DF6A,a0
- clr.l (a0)
- ; ctx->Select.NameStackDepth = 0;
- move.l a2,a0
- add.l #$DF6E,a0
- clr.l (a0)
- ; ctx->AttribStackDepth = 0;
- clr.l $1E20(a2)
- ; ctx->ClientAttribStackDepth = 0;
- move.l a2,a0
- add.l #$DCAE,a0
- clr.l (a0)
- ; ctx->NewState = NEW_ALL;
- move.l a2,a0
- add.l #$E082,a0
- move.l #$F,(a0)
- ; ctx->RenderMode = GL_RENDER;
- move.l a2,a0
- add.l #$E086,a0
- move.l #$1C00,(a0)
- ; ctx->Primitive = GL_BITMAP;
- move.l a2,a0
- add.l #$E08A,a0
- move.l #$1A00,(a0)
- ; ctx->StippleCounter = 0;
- move.l a2,a0
- add.l #$E08E,a0
- clr.l (a0)
- ; ctx->NeedNormals = GL_FALSE;
- move.l a2,a0
- add.l #$E0A8,a0
- clr.b (a0)
- ; if ( ctx->Visual->RedScale==255.0F
- move.l $898(a2),a0
- fmove.s 2(a0),fp0
- fcmp.s #$.437F0000,fp0
- fbne.b L254
- L250
- move.l $898(a2),a0
- fmove.s 6(a0),fp0
- fcmp.s #$.437F0000,fp0
- fbne.b L254
- L251
- move.l $898(a2),a0
- fmove.s $A(a0),fp0
- fcmp.s #$.437F0000,fp0
- fbne.b L254
- L252
- move.l $898(a2),a0
- fmove.s $E(a0),fp0
- fcmp.s #$.437F0000,fp0
- fbne.b L254
- L253
- ; ctx->Visual->EightBitColor = GL_TRUE;
- move.l $898(a2),a0
- move.b #1,$12(a0)
- bra.b L255
- L254
- ; ctx->Visual->EightBitColor = GL_FALSE;
- move.l $898(a2),a0
- clr.b $12(a0)
- L255
- ; ctx->FastDrawPixels = ctx->Visual->RGBAflag && ctx->Visu
- moveq #0,d0
- move.l $898(a2),a0
- move.b (a0),d1
- beq.b L258
- L256
- move.l $898(a2),a0
- move.b $12(a0),d1
- beq.b L258
- L257
- moveq #1,d0
- L258
- move.l a2,a0
- add.l #$E0A9,a0
- move.b d0,(a0)
- ; ctx->DirectContext = GL_TRUE;
- move.l a2,a0
- add.l #$E080,a0
- move.b #1,(a0)
- ; ctx->CallDepth = 0;
- clr.l $1E1A(a2)
- ; ctx->ExecuteFlag = GL_TRUE;
- move.b #1,$1E1E(a2)
- ; ctx->CompileFlag = GL_FALSE;
- clr.b $1E1F(a2)
- ; ctx->ErrorValue = GL_NO_ERROR;
- move.l a2,a0
- add.l #$E07C,a0
- clr.l (a0)
- ; ctx->NoRaster = getenv("MESA_NO_RASTER") ? GL_TRUE : GL_
- move.l #L238,-(a7)
- jsr _getenv
- addq.w #4,a7
- tst.l d0
- beq.b L260
- L259
- moveq #1,d0
- bra.b L261
- L260
- moveq #0,d0
- L261
- move.l a2,a0
- add.l #$E0C8,a0
- move.b d0,(a0)
- ; ctx->NoDither = getenv("MESA_NO_DITHER") ? GL_TRUE : GL_
- move.l #L239,-(a7)
- jsr _getenv
- addq.w #4,a7
- tst.l d0
- beq.b L263
- L262
- moveq #1,d0
- bra.b L264
- L263
- moveq #0,d0
- L264
- move.l a2,a0
- add.l #$E0C9,a0
- move.b d0,(a0)
- ; if (ctx->NoDither)
- move.l a2,a0
- add.l #$E0C9,a0
- move.b (a0),d0
- beq.b L268
- L265
- ; if (getenv("MESA_DEBUG"))
- move.l #L240,-(a7)
- jsr _getenv
- addq.w #4,a7
- tst.l d0
- beq.b L267
- L266
- ; fprintf(stderr, "MESA_NO_DITHER set - dithering disabled\n
- move.l #L241,-(a7)
- move.l #_std__err,-(a7)
- jsr _fprintf
- addq.w #$8,a7
- L267
- ; ctx->Color.DitherFlag = GL_FALSE;
- clr.b $1EC5(a2)
- L268
- movem.l (a7)+,d2/a2
- rts
-
- L240
- dc.b 'MESA_DEBUG',0
- L239
- dc.b 'MESA_NO_DITHER',0
- L241
- dc.b 'MESA_NO_DITHER set - dithering disabled',$A,0
- L238
- dc.b 'MESA_NO_RASTER',0
-
- SECTION "_initialize_context:1",DATA
-
- _identity___initialize_context
- dc.l $3F800000,0,0,0,0,$3F800000,0,0,0,0,$3F800000
- dc.l 0,0,0,0,$3F800000
-
- SECTION "_gl_create_visual:0",CODE
-
-
- ; * the allocations clean up and return GL_FA
- XDEF _gl_create_visual
- _gl_create_visual
- L307 EQU -4
- link a5,#L307
- movem.l d2-d5,-(a7)
- fmovem.x fp2/fp3/fp4/fp5,-(a7)
- move.l $3A(a5),d2
- move.b $A(a5),d3
- move.b $C(a5),d4
- move.l $16(a5),d5
- fmove.s $2A(a5),fp2
- fmove.s $26(a5),fp3
- fmove.s $22(a5),fp4
- fmove.s $1E(a5),fp5
- L269
- ; if (depth_bits > 8*sizeof(GLdepth))
- move.l $E(a5),d0
- cmp.l #$10,d0
- bls.b L271
- L270
- moveq #0,d0
- fmovem.x (a7)+,fp2/fp3/fp4/fp5
- movem.l (a7)+,d2-d5
- unlk a5
- rts
- L271
- ; if (stencil_bits > 8*sizeof(GLstencil))
- move.l $12(a5),d0
- cmp.l #$8,d0
- bls.b L273
- L272
- moveq #0,d0
- fmovem.x (a7)+,fp2/fp3/fp4/fp5
- movem.l (a7)+,d2-d5
- unlk a5
- rts
- L273
- ; if (accum_bits > 8*sizeof(GLaccum))
- cmp.l #$10,d5
- bls.b L275
- L274
- moveq #0,d0
- fmovem.x (a7)+,fp2/fp3/fp4/fp5
- movem.l (a7)+,d2-d5
- unlk a5
- rts
- L275
- ; vis = (GLvisual *) calloc( 1, sizeof(GLvisual) );
- pea $46.w
- pea 1.w
- jsr _calloc
- addq.w #$8,a7
- move.l d0,a0
- ; if (!vis)
- cmp.w #0,a0
- bne.b L277
- L276
- moveq #0,d0
- fmovem.x (a7)+,fp2/fp3/fp4/fp5
- movem.l (a7)+,d2-d5
- unlk a5
- rts
- L277
- ; vis->RGBAflag = rgb_flag;
- move.b $8(a5),(a0)
- ; vis->DBflag = db_flag;
- move.b d4,1(a0)
- ; vis->RedScale = red_scale;
- fmove.s fp5,2(a0)
- ; vis->GreenScale = green_scale;
- fmove.s fp4,6(a0)
- ; vis->BlueScale = blue_scale;
- fmove.s fp3,$A(a0)
- ; vis->AlphaScale = alpha_scale;
- fmove.s fp2,$E(a0)
- ; if (red_scale)
- ftst.s fp5
- fbeq.b L279
- L278
- ; vis->InvRedScale = 1.0F / red_scale;
- fmove.s #$.3F800000,fp0
- fdiv.x fp5,fp0
- fmove.s fp0,$14(a0)
- L279
- ; if (green_scale)
- ftst.s fp4
- fbeq.b L281
- L280
- ; vis->InvGreenScale = 1.0F / green_scale;
- fmove.s #$.3F800000,fp0
- fdiv.x fp4,fp0
- fmove.s fp0,$18(a0)
- L281
- ; if (blue_scale)
- ftst.s fp3
- fbeq.b L283
- L282
- ; vis->InvBlueScale = 1.0F / blue_scale;
- fmove.s #$.3F800000,fp0
- fdiv.x fp3,fp0
- fmove.s fp0,$1C(a0)
- L283
- ; if (alpha_scale)
- ftst.s fp2
- fbeq.b L285
- L284
- ; vis->InvAlphaScale = 1.0F / alpha_scale;
- fmove.s #$.3F800000,fp0
- fdiv.x fp2,fp0
- fmove.s fp0,$20(a0)
- L285
- ; vis->RedBits = red_bits;
- move.l $2E(a5),$24(a0)
- ; vis->GreenBits = green_bits;
- move.l $32(a5),$28(a0)
- ; vis->BlueBits = blue_bits;
- move.l $36(a5),$2C(a0)
- ; vis->AlphaBits = alpha_flag ? 8*sizeof(GLubyte) : alpha_bits;
- tst.b d3
- beq.b L287
- L286
- moveq #$8,d2
- L287
- L288
- move.l d2,$30(a0)
- ; vis->IndexBits = index_bits;
- move.l $1A(a5),$34(a0)
- ; vis->DepthBits = (depth_bits>0) ? 8*sizeof(GLdepth) : 0;
- move.l $E(a5),d0
- cmp.l #0,d0
- ble.b L290
- L289
- moveq #$10,d0
- bra.b L291
- L290
- moveq #0,d0
- L291
- move.l d0,$3C(a0)
- ; vis->AccumBits = (accum_bits>0) ? 8*sizeof(GLaccum) : 0;
- cmp.l #0,d5
- ble.b L293
- L292
- moveq #$10,d0
- bra.b L294
- L293
- moveq #0,d0
- L294
- move.l d0,$38(a0)
- ; vis->StencilBits = (stencil_bits>0) ? 8*sizeof(GLstencil) : 0;
- move.l $12(a5),d0
- cmp.l #0,d0
- ble.b L296
- L295
- moveq #$8,d0
- bra.b L297
- L296
- moveq #0,d0
- L297
- move.l d0,$40(a0)
- ; if (red_scale==255.0F && green_scale==255.0F
- fcmp.s #$.437F0000,fp5
- fbne.b L302
- L298
- fcmp.s #$.437F0000,fp4
- fbne.b L302
- L299
- fcmp.s #$.437F0000,fp3
- fbne.b L302
- L300
- fcmp.s #$.437F0000,fp2
- fbne.b L302
- L301
- ; vis->EightBitColor = GL_TRUE;
- move.b #1,$12(a0)
- bra.b L303
- L302
- ; vis->EightBitColor = GL_FALSE;
- clr.b $12(a0)
- L303
- ; if (alpha_flag)
- tst.b d3
- beq.b L306
- L304
- ; vis->FrontAlphaEnabled = GL_TRUE;
- move.b #1,$44(a0)
- ; if (db_flag)
- tst.b d4
- beq.b L306
- L305
- ; vis->BackAlphaEnabled = GL_TRUE;
- move.b #1,$45(a0)
- L306
- move.l a0,d0
- fmovem.x (a7)+,fp2/fp3/fp4/fp5
- movem.l (a7)+,d2-d5
- unlk a5
- rts
-
- SECTION "_gl_destroy_visual:0",CODE
-
-
- ;void gl_destroy_visual( GLvisual *vis )
- XDEF _gl_destroy_visual
- _gl_destroy_visual
- move.l 4(a7),a0
- L308
- ; free( vis );
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- rts
-
- SECTION "_alloc_proxy_textures:0",CODE
-
-
- ;static GLboolean alloc_proxy_textures( GLcontext *ctx )
- _alloc_proxy_textures
- movem.l d2/d3/a2,-(a7)
- move.l $10(a7),a2
- L309
- ; ctx->Texture.Proxy1D = gl_alloc_texture_object(NULL, 0, 1);
- pea 1.w
- clr.l -(a7)
- clr.l -(a7)
- jsr _gl_alloc_texture_object
- add.w #$C,a7
- move.l a2,a1
- add.l #$D7F8,a1
- move.l d0,(a1)
- ; if (!ctx->Texture.Proxy1D)
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- cmp.w #0,a0
- bne.b L311
- L310
- moveq #0,d0
- movem.l (a7)+,d2/d3/a2
- rts
- L311
- ; ctx->Texture.Proxy2D = gl_alloc_texture_object(NULL, 0, 2);
- pea 2.w
- clr.l -(a7)
- clr.l -(a7)
- jsr _gl_alloc_texture_object
- add.w #$C,a7
- move.l a2,a1
- add.l #$D7FC,a1
- move.l d0,(a1)
- ; if (!ctx->Texture.Proxy2D)
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- cmp.w #0,a0
- bne.b L313
- L312
- ; gl_free_texture_object(NULL, ctx->Texture.Proxy1D);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- moveq #0,d0
- movem.l (a7)+,d2/d3/a2
- rts
- L313
- ; ctx->Texture.Proxy3D = gl_alloc_texture_object(NULL, 0, 3);
- pea 3.w
- clr.l -(a7)
- clr.l -(a7)
- jsr _gl_alloc_texture_object
- add.w #$C,a7
- move.l a2,a1
- add.l #$D800,a1
- move.l d0,(a1)
- ; if (!ctx->Texture.Proxy3D)
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- cmp.w #0,a0
- bne.b L315
- L314
- ; gl_free_texture_object(NULL, ctx->Texture.Proxy1D);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- ; gl_free_texture_object(NULL, ctx->Texture.Proxy2D);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- moveq #0,d0
- movem.l (a7)+,d2/d3/a2
- rts
- L315
- ; out_of_memory = GL_FALSE;
- moveq #0,d3
- ; for (i=0;
- moveq #0,d2
- bra L321
- L316
- ; ctx->Texture.Proxy1D->Image[i] = gl_alloc_texture_image()
- jsr _gl_alloc_texture_image
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l d0,(a0)
- ; ctx->Texture.Proxy2D->Image[i] = gl_alloc_texture_image()
- jsr _gl_alloc_texture_image
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l d0,(a0)
- ; ctx->Texture.Proxy3D->Image[i] = gl_alloc_texture_image()
- jsr _gl_alloc_texture_image
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l d0,(a0)
- ; if (!ctx->Texture.Proxy1D->Image[i]
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- tst.l (a0)
- beq.b L319
- L317
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- tst.l (a0)
- beq.b L319
- L318
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- tst.l (a0)
- bne.b L320
- L319
- ; out_of_memory = GL_TRUE;
- moveq #1,d3
- L320
- addq.l #1,d2
- L321
- cmp.l #$B,d2
- blt L316
- L322
- ; if (out_of_memory)
- tst.b d3
- beq L333
- L323
- ; for (i=0;
- moveq #0,d2
- bra L331
- L324
- ; if (ctx->Texture.Proxy1D->Image[i])
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l (a0),d0
- beq.b L326
- L325
- ; gl_free_texture_image(ctx->Texture.Proxy1D->Image[i]);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l (a0),a0
- move.l a0,-(a7)
- jsr _gl_free_texture_image
- addq.w #4,a7
- L326
- ; if (ctx->Texture.Proxy2D->Image[i])
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l (a0),d0
- beq.b L328
- L327
- ; gl_free_texture_image(ctx->Texture.Proxy2D->Image[i]);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l (a0),a0
- move.l a0,-(a7)
- jsr _gl_free_texture_image
- addq.w #4,a7
- L328
- ; if (ctx->Texture.Proxy3D->Image[i])
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l (a0),d0
- beq.b L330
- L329
- ; gl_free_texture_image(ctx->Texture.Proxy3D->Image[i]);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- add.w #$38,a0
- lea 0(a0,d2.l*4),a0
- move.l (a0),a0
- move.l a0,-(a7)
- jsr _gl_free_texture_image
- addq.w #4,a7
- L330
- addq.l #1,d2
- L331
- cmp.l #$B,d2
- blt L324
- L332
- ; gl_free_texture_object(NULL, ctx->Texture.Proxy1D);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- ; gl_free_texture_object(NULL, ctx->Texture.Proxy2D);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- ; gl_free_texture_object(NULL, ctx->Texture.Proxy3D);
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- moveq #0,d0
- movem.l (a7)+,d2/d3/a2
- rts
- L333
- moveq #1,d0
- movem.l (a7)+,d2/d3/a2
- rts
-
- SECTION "_gl_create_context:0",CODE
-
-
- ;GLcontext *gl_create_context( GLvisual *visual,
- XDEF _gl_create_context
- _gl_create_context
- L350 EQU -$C
- link a5,#L350
- move.l a2,-(a7)
- L334
- ; gl_init_math();
- jsr _gl_init_math
- ; gl_init_lists();
- jsr _gl_init_lists
- ; gl_init_eval();
- jsr _gl_init_eval
- ; ctx = (GLcontext *) calloc( 1, sizeof(GLcontext) );
- move.l #$E0CA,-(a7)
- pea 1.w
- jsr _calloc
- addq.w #$8,a7
- move.l d0,a2
- ; if (!ctx)
- cmp.w #0,a2
- bne.b L336
- L335
- moveq #0,d0
- move.l (a7)+,a2
- unlk a5
- rts
- L336
- ; ctx->DriverCtx = driver_ctx;
- move.l $10(a5),$974(a2)
- ; ctx->Visual = visual;
- move.l $8(a5),$898(a2)
- ; ctx->Buffer = NULL;
- clr.l $89C(a2)
- ; ctx->VB = gl_alloc_vb();
- jsr _gl_alloc_vb
- move.l a2,a1
- add.l #$E0C0,a1
- move.l d0,(a1)
- ; if (!ctx->VB)
- move.l a2,a1
- add.l #$E0C0,a1
- move.l (a1),a0
- cmp.w #0,a0
- bne.b L338
- L337
- ; free( ctx );
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- moveq #0,d0
- move.l (a7)+,a2
- unlk a5
- rts
- L338
- ; ctx->PB = gl_alloc_pb();
- jsr _gl_alloc_pb
- move.l a2,a1
- add.l #$E0C4,a1
- move.l d0,(a1)
- ; if (!ctx->PB)
- move.l a2,a1
- add.l #$E0C4,a1
- move.l (a1),a0
- cmp.w #0,a0
- bne.b L340
- L339
- ; free( ctx->VB );
- move.l a2,a1
- add.l #$E0C0,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; free( ctx );
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- moveq #0,d0
- move.l (a7)+,a2
- unlk a5
- rts
- L340
- ; if (share_list)
- tst.l $C(a5)
- beq.b L342
- L341
- ; ctx->Shared = share_list->Shared;
- move.l $C(a5),a1
- move.l (a1),a0
- move.l a0,(a2)
- bra.b L344
- L342
- ; ctx->Shared = alloc_shared_state();
- jsr _alloc_shared_state
- move.l d0,(a2)
- ; if (!ctx->Shared)
- move.l (a2),a0
- cmp.w #0,a0
- bne.b L344
- L343
- ; free(ctx->VB);
- move.l a2,a1
- add.l #$E0C0,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; free(ctx->PB);
- move.l a2,a1
- add.l #$E0C4,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; free(ctx);
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- moveq #0,d0
- move.l (a7)+,a2
- unlk a5
- rts
- L344
- ; ctx->Shared->RefCount++;
- move.l (a2),a0
- move.l (a0),d0
- addq.l #1,d0
- move.l d0,(a0)
- ; initialize_context( ctx );
- move.l a2,-(a7)
- jsr _initialize_context
- addq.w #4,a7
- ; if (visual->DBflag)
- move.l $8(a5),a0
- move.b 1(a0),d0
- beq.b L346
- L345
- ; ctx->Color.DrawBuffer = GL_BACK;
- move.l #$405,$1E92(a2)
- ; ctx->Pixel.ReadBuffer = GL_BACK;
- move.l a2,a0
- add.l #$ADEC,a0
- move.l #$405,(a0)
- bra.b L347
- L346
- ; ctx->Color.DrawBuffer = GL_FRONT;
- move.l #$404,$1E92(a2)
- ; ctx->Pixel.ReadBuffer = GL_FRONT;
- move.l a2,a0
- add.l #$ADEC,a0
- move.l #$404,(a0)
- L347
- ; if (!alloc_proxy_textures(ctx))
- move.l a2,-(a7)
- jsr _alloc_proxy_textures
- addq.w #4,a7
- tst.b d0
- bne.b L349
- L348
- ; free_shared_state(ctx, ctx->Shared);
- move.l (a2),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- jsr _free_shared_state
- addq.w #$8,a7
- ; free(ctx->VB);
- move.l a2,a1
- add.l #$E0C0,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; free(ctx->PB);
- move.l a2,a1
- add.l #$E0C4,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; free(ctx);
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- moveq #0,d0
- move.l (a7)+,a2
- unlk a5
- rts
- L349
- ; gl_init_api_function_pointers( ctx );
- move.l a2,-(a7)
- jsr _gl_init_api_function_pointers
- addq.w #4,a7
- ; ctx->API = ctx->Exec;
- lea 4(a2),a1
- lea $5BC(a2),a0
- move.w #$B6,d0
- L351
- move.l (a0)+,(a1)+
- dbra d0,L351
- move.l a2,d0
- move.l (a7)+,a2
- unlk a5
- rts
-
- SECTION "_gl_destroy_context:0",CODE
-
-
- ;void gl_destroy_context( GLcontext *ctx )
- XDEF _gl_destroy_context
- _gl_destroy_context
- move.l a2,-(a7)
- move.l $8(a7),a2
- L352
- ; if (ctx)
- cmp.w #0,a2
- beq L357
- L353
- ; free( ctx->PB );
- move.l a2,a1
- add.l #$E0C4,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; free( ctx->VB );
- move.l a2,a1
- add.l #$E0C0,a1
- move.l (a1),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- ; ctx->Shared->RefCount--;
- move.l (a2),a0
- move.l (a0),d0
- subq.l #1,d0
- move.l d0,(a0)
- ; if (ctx->Shared->RefCount==0)
- move.l (a2),a0
- move.l (a0),d0
- bne.b L355
- L354
- ; free_shared_state( ctx, ctx->Shared );
- move.l (a2),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- jsr _free_shared_state
- addq.w #$8,a7
- L355
- ; gl_free_texture_object( NULL, ctx->Texture.Proxy1D );
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $BC(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- ; gl_free_texture_object( NULL, ctx->Texture.Proxy2D );
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C0(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- ; gl_free_texture_object( NULL, ctx->Texture.Proxy3D );
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $C4(a0),a0
- move.l a0,-(a7)
- clr.l -(a7)
- jsr _gl_free_texture_object
- addq.w #$8,a7
- ; free( (void *) ctx );
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- ; if (ctx==CC)
- cmp.l _CC,a2
- bne.b L357
- L356
- ; CC = NULL;
- clr.l _CC
- L357
- move.l (a7)+,a2
- rts
-
- SECTION "_gl_create_framebuffer:0",CODE
-
-
- ;GLframebuffer *gl_create_framebuffer( GLvisual *visual )
- XDEF _gl_create_framebuffer
- _gl_create_framebuffer
- move.l a2,-(a7)
- move.l $8(a7),a2
- L358
- ; buffer = (GLframebuffer *) calloc( 1, sizeof(GLframebuffer) );
- pea $34.w
- pea 1.w
- jsr _calloc
- addq.w #$8,a7
- move.l d0,a0
- ; if (!buffer)
- cmp.w #0,a0
- bne.b L360
- L359
- moveq #0,d0
- move.l (a7)+,a2
- rts
- L360
- ; buffer->Visual = visual;
- move.l a2,(a0)
- move.l a0,d0
- move.l (a7)+,a2
- rts
-
- SECTION "_gl_destroy_framebuffer:0",CODE
-
-
- ;void gl_destroy_framebuffer( GLframebuffer *buffer )
- XDEF _gl_destroy_framebuffer
- _gl_destroy_framebuffer
- move.l a2,-(a7)
- move.l $8(a7),a2
- L361
- ; if (buffer)
- cmp.w #0,a2
- beq L373
- L362
- ; if (buffer->Depth)
- move.l $C(a2),a0
- cmp.w #0,a0
- beq.b L364
- L363
- ; free( buffer->Depth );
- move.l $C(a2),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- L364
- ; if (buffer->Accum)
- move.l $14(a2),a0
- cmp.w #0,a0
- beq.b L366
- L365
- ; free( buffer->Accum );
- move.l $14(a2),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- L366
- ; if (buffer->Stencil)
- move.l $10(a2),a0
- cmp.w #0,a0
- beq.b L368
- L367
- ; free( buffer->Stencil );
- move.l $10(a2),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- L368
- ; if (buffer->FrontAlpha)
- move.l $18(a2),a0
- cmp.w #0,a0
- beq.b L370
- L369
- ; free( buffer->FrontAlpha );
- move.l $18(a2),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- L370
- ; if (buffer->BackAlpha)
- move.l $1C(a2),a0
- cmp.w #0,a0
- beq.b L372
- L371
- ; free( buffer->BackAlpha );
- move.l $1C(a2),a0
- move.l a0,-(a7)
- jsr _free
- addq.w #4,a7
- L372
- ; free(buffer);
- move.l a2,-(a7)
- jsr _free
- addq.w #4,a7
- L373
- move.l (a7)+,a2
- rts
-
- SECTION "_gl_make_current:0",CODE
-
-
- ;void gl_make_current( GLcontext *ctx, GLframebuffer *buffer )
- XDEF _gl_make_current
- _gl_make_current
- movem.l a2/a3,-(a7)
- movem.l $C(a7),a0/a1
- L374
- ; if (CC && CC->Buffer)
- tst.l _CC
- beq.b L377
- L375
- move.l _CC,a2
- move.l $89C(a2),a2
- cmp.w #0,a2
- beq.b L377
- L376
- ; CC->Buffer = NULL;
- move.l _CC,a3
- clr.l $89C(a3)
- L377
- ; CC = ctx;
- move.l a0,_CC
- ; if (ctx && buffer)
- cmp.w #0,a0
- beq.b L380
- L378
- cmp.w #0,a1
- beq.b L380
- L379
- ; ctx->Buffer = buffer;
- move.l a1,$89C(a0)
- ; ctx->NewState = NEW_ALL;
- move.l a0,a1
- add.l #$E082,a1
- move.l #$F,(a1)
- ; gl_update_state( ctx );
- move.l a0,-(a7)
- jsr _gl_update_state
- addq.w #4,a7
- L380
- movem.l (a7)+,a2/a3
- rts
-
- SECTION "_gl_get_current_context:0",CODE
-
-
- ;GLcontext *gl_get_current_context( void )
- XDEF _gl_get_current_context
- _gl_get_current_context
- L381
- move.l _CC,d0
- rts
-
- SECTION "_gl_copy_context:0",CODE
-
-
- ;void gl_copy_context( const GLcontext *src, GLcontext *dst, GLuint m
- XDEF _gl_copy_context
- _gl_copy_context
- L422 EQU 0
- link a5,#L422
- movem.l d2/a2,-(a7)
- move.l $10(a5),d2
- move.l $C(a5),a2
- L382
- ; if (mask & GL_ACCUM_BUFFER_BIT)
- move.l d2,d0
- and.l #$200,d0
- beq.b L384
- L383
- ;Accum, &src->Accu
- pea $10.w
- move.l $8(a5),a1
- lea $1E64(a1),a0
- move.l a0,-(a7)
- lea $1E64(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L384
- ; if (mask & GL_COLOR_BUFFER_BIT)
- move.l d2,d0
- and.l #$4000,d0
- beq.b L386
- L385
- ; &src->Color, siz
- pea $52.w
- move.l $8(a5),a1
- lea $1E74(a1),a0
- move.l a0,-(a7)
- lea $1E74(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L386
- ; if (mask & GL_CURRENT_BIT)
- move.l d2,d0
- and.l #1,d0
- beq.b L388
- L387
- ;t, &src->Current,
- pea $5E.w
- move.l $8(a5),a1
- lea $1EC6(a1),a0
- move.l a0,-(a7)
- lea $1EC6(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L388
- ; if (mask & GL_DEPTH_BUFFER_BIT)
- move.l d2,d0
- and.l #$100,d0
- beq.b L390
- L389
- ; &src->Depth, siz
- pea $A.w
- move.l $8(a5),a1
- lea $1F24(a1),a0
- move.l a0,-(a7)
- lea $1F24(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L390
- ; if (mask & GL_ENABLE_BIT)
- L391
- ; if (mask & GL_EVAL_BIT)
- move.l d2,d0
- and.l #$10000,d0
- beq.b L393
- L392
- ;t->Eval, &src->Ev
- pea $38.w
- move.l $8(a5),a1
- lea $1F2E(a1),a0
- move.l a0,-(a7)
- lea $1F2E(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L393
- ; if (mask & GL_FOG_BIT)
- move.l d2,d0
- and.l #$80,d0
- beq.b L395
- L394
- ;&dst->Fog, &src->
- pea $26.w
- move.l $8(a5),a1
- lea $1F66(a1),a0
- move.l a0,-(a7)
- lea $1F66(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L395
- ; if (mask & GL_HINT_BIT)
- move.l d2,d0
- and.l #$8000,d0
- beq.b L397
- L396
- ;t->Hint, &src->Hi
- pea $14.w
- move.l $8(a5),a1
- lea $1F8C(a1),a0
- move.l a0,-(a7)
- lea $1F8C(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L397
- ; if (mask & GL_LIGHTING_BIT)
- move.l d2,d0
- and.l #$40,d0
- beq.b L399
- L398
- ;Light, &src->Ligh
- move.l #$8E3C,-(a7)
- move.l $8(a5),a1
- lea $1FA0(a1),a0
- move.l a0,-(a7)
- lea $1FA0(a2),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L399
- ; if (mask & GL_LINE_BIT)
- move.l d2,d0
- and.l #4,d0
- beq.b L401
- L400
- ;t->Line, &src->Li
- pea $C.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$ADDC,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$ADDC,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L401
- ; if (mask & GL_LIST_BIT)
- move.l d2,d0
- and.l #$20000,d0
- beq.b L403
- L402
- ;t->List, &src->Li
- pea 4.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$ADE8,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$ADE8,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L403
- ; if (mask & GL_PIXEL_MODE_BIT)
- move.l d2,d0
- and.l #$20,d0
- beq.b L405
- L404
- ;Pixel, &src->Pixe
- pea $2866.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$ADEC,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$ADEC,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L405
- ; if (mask & GL_POINT_BIT)
- move.l d2,d0
- and.l #2,d0
- beq.b L407
- L406
- ;Point, &src->Poin
- pea $1E.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$D652,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$D652,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L407
- ; if (mask & GL_POLYGON_BIT)
- move.l d2,d0
- and.l #$8,d0
- beq.b L409
- L408
- ;n, &src->Polygon,
- pea $24.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$D670,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L409
- ; if (mask & GL_POLYGON_STIPPLE_BIT)
- move.l d2,d0
- and.l #$10,d0
- beq.b L411
- L410
- ;onStipple, &src->
- pea $80.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$D694,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$D694,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L411
- ; if (mask & GL_SCISSOR_BIT)
- move.l d2,d0
- and.l #$80000,d0
- beq.b L413
- L412
- ;r, &src->Scissor,
- pea $12.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L413
- ; if (mask & GL_STENCIL_BUFFER_BIT)
- move.l d2,d0
- and.l #$400,d0
- beq.b L415
- L414
- ;l, &src->Stencil,
- pea $16.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$D726,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$D726,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L415
- ; if (mask & GL_TEXTURE_BIT)
- move.l d2,d0
- and.l #$40000,d0
- beq.b L417
- L416
- ;e, &src->Texture,
- pea $4D6.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L417
- ; if (mask & GL_TRANSFORM_BIT)
- move.l d2,d0
- and.l #$1000,d0
- beq.b L419
- L418
- ;src->Transform, s
- pea $6C.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$DC12,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$DC12,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L419
- ; if (mask & GL_VIEWPORT_BIT)
- and.l #$800,d2
- beq.b L421
- L420
- ; &src->Viewport,
- pea $30.w
- move.l $8(a5),a1
- move.l a1,a0
- add.l #$DC7E,a0
- lea (a0),a0
- move.l a0,-(a7)
- move.l a2,a0
- add.l #$DC7E,a0
- lea (a0),a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L421
- movem.l (a7)+,d2/a2
- unlk a5
- rts
-
- SECTION "_gl_set_api_table:0",CODE
-
-
- ;void gl_set_api_table( GLcontext *ctx, const struct gl_api_table *ap
- XDEF _gl_set_api_table
- _gl_set_api_table
- movem.l 4(a7),a0/a1
- L423
- ; if (api)
- cmp.w #0,a1
- beq.b L425
- L424
- ;EMCPY( &ctx->API,
- pea $2DC.w
- move.l a1,-(a7)
- addq.w #4,a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- bra.b L426
- L425
- ;&ctx->API, &ctx->
- pea $2DC.w
- lea $5BC(a0),a1
- move.l a1,-(a7)
- addq.w #4,a0
- move.l a0,-(a7)
- jsr _memcpy
- add.w #$C,a7
- L426
- rts
-
- SECTION "_gl_problem:0",CODE
-
-
- ;void gl_problem( const GLcontext *ctx, const char *s )
- XDEF _gl_problem
- _gl_problem
- move.l $8(a7),a0
- L429
- ; fprintf( stderr, "Mesa implementation error: %s\n", s );
- move.l a0,-(a7)
- move.l #L427,-(a7)
- move.l #_std__err,-(a7)
- jsr _fprintf
- add.w #$C,a7
- ; fprintf( stderr, "Report to Mesa author.\n" );
- move.l #L428,-(a7)
- move.l #_std__err,-(a7)
- jsr _fprintf
- addq.w #$8,a7
- rts
-
- L427
- dc.b 'Mesa implementation error: %s',$A,0
- L428
- dc.b 'Report to Mesa author.',$A,0
-
- SECTION "_gl_warning:0",CODE
-
-
- ;void gl_warning( const GLcontext *ctx, const char *s )
- XDEF _gl_warning
- _gl_warning
- move.l a2,-(a7)
- move.l $C(a7),a2
- L432
- ; if (getenv("MESA_DEBUG"))
- move.l #L430,-(a7)
- jsr _getenv
- addq.w #4,a7
- tst.l d0
- beq.b L434
- L433
- ; debug = GL_TRUE;
- moveq #1,d0
- bra.b L435
- L434
- ; debug = GL_FALSE;
- moveq #0,d0
- L435
- ; if (debug)
- tst.b d0
- beq.b L437
- L436
- ; fprintf( stderr, "Mesa warning: %s\n", s );
- move.l a2,-(a7)
- move.l #L431,-(a7)
- move.l #_std__err,-(a7)
- jsr _fprintf
- add.w #$C,a7
- L437
- move.l (a7)+,a2
- rts
-
- L430
- dc.b 'MESA_DEBUG',0
- L431
- dc.b 'Mesa warning: %s',$A,0
-
- SECTION "_gl_error:0",CODE
-
-
- ;void gl_error( GLcontext *ctx, GLenum error, const char *s )
- XDEF _gl_error
- _gl_error
- L467 EQU -$3EA
- link a5,#L467
- movem.l d2/a2,-(a7)
- move.l $C(a5),d2
- move.l $8(a5),a2
- L448
- ; if (getenv("MESA_DEBUG"))
- move.l #L438,-(a7)
- jsr _getenv
- addq.w #4,a7
- tst.l d0
- beq.b L450
- L449
- ; debug = GL_TRUE;
- moveq #1,d0
- bra.b L451
- L450
- ; debug = GL_FALSE;
- moveq #0,d0
- L451
- ; if (debug)
- tst.b d0
- beq L462
- L452
- ; switch (error)
- move.l d2,d0
- cmp.l #$502,d0
- beq L456
- bgt.b L468
- cmp.l #$500,d0
- beq.b L455
- bgt.b L469
- cmp.l #0,d0
- beq.b L453
- bra L460
- L469
- bgt.b L454
- L468
- cmp.l #$504,d0
- beq L458
- bgt.b L470
- blt.b L457
- L470
- cmp.l #$505,d0
- beq L459
- bra L460
- ;
- L453
- ; strcpy( errstr, "GL_NO_ERROR" );
- move.l #L439,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra L461
- L454
- ; strcpy( errstr, "GL_INVALID_VALUE" );
- move.l #L440,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra L461
- L455
- ; strcpy( errstr, "GL_INVALID_ENUM" );
- move.l #L441,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra.b L461
- L456
- ; strcpy( errstr, "GL_INVALID_OPERATION" );
- move.l #L442,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra.b L461
- L457
- ; strcpy( errstr, "GL_STACK_OVERFLOW" );
- move.l #L443,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra.b L461
- L458
- ; strcpy( errstr, "GL_STACK_UNDERFLOW" );
- move.l #L444,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra.b L461
- L459
- ; strcpy( errstr, "GL_OUT_OF_MEMORY" );
- move.l #L445,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- bra.b L461
- L460
- ; strcpy( errstr, "unknown" );
- move.l #L446,-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- jsr _strcpy
- addq.w #$8,a7
- ;
- L461
- ; fprintf( stderr, "Mesa user error: %s in %s\n", errstr,
- move.l $10(a5),-(a7)
- lea -$3EA(a5),a0
- move.l a0,-(a7)
- move.l #L447,-(a7)
- move.l #_std__err,-(a7)
- jsr _fprintf
- add.w #$10,a7
- L462
- ; if (ctx->ErrorValue==GL_NO_ERROR)
- move.l a2,a0
- add.l #$E07C,a0
- move.l (a0),d0
- bne.b L464
- L463
- ; ctx->ErrorValue = error;
- move.l a2,a0
- add.l #$E07C,a0
- move.l d2,(a0)
- L464
- ; if (ctx->Driver.Error)
- lea $8A0(a2),a0
- move.l $6C(a0),a0
- cmp.w #0,a0
- beq.b L466
- L465
- ; (*ctx->Driver.Error)( ctx );
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $6C(a0),a0
- jsr (a0)
- addq.w #4,a7
- L466
- movem.l (a7)+,d2/a2
- unlk a5
- rts
-
- L441
- dc.b 'GL_INVALID_ENUM',0
- L442
- dc.b 'GL_INVALID_OPERATION',0
- L440
- dc.b 'GL_INVALID_VALUE',0
- L439
- dc.b 'GL_NO_ERROR',0
- L445
- dc.b 'GL_OUT_OF_MEMORY',0
- L443
- dc.b 'GL_STACK_OVERFLOW',0
- L444
- dc.b 'GL_STACK_UNDERFLOW',0
- L438
- dc.b 'MESA_DEBUG',0
- L447
- dc.b 'Mesa user error: %s in %s',$A,0
- L446
- dc.b 'unknown',0
-
- SECTION "_gl_GetError:0",CODE
-
-
- ;GLenum gl_GetError( GLcontext *ctx )
- XDEF _gl_GetError
- _gl_GetError
- move.l 4(a7),a0
- L472
- ; if (INSIDE_BEGIN_END(ctx))
- move.l a0,a1
- add.l #$E08A,a1
- move.l (a1),d0
- cmp.l #$1A00,d0
- beq.b L474
- L473
- ; gl_error( ctx, GL_INVALID_OPERATION, "glGetError" );
- move.l #L471,-(a7)
- pea $502.w
- move.l a0,-(a7)
- jsr _gl_error
- add.w #$C,a7
- move.l #$502,d0
- rts
- L474
- ; e = ctx->ErrorValue;
- move.l a0,a1
- add.l #$E07C,a1
- move.l (a1),d0
- ; ctx->ErrorValue = GL_NO_ERROR;
- add.l #$E07C,a0
- clr.l (a0)
- rts
-
- L471
- dc.b 'glGetError',0
-
- SECTION "_gl_ResizeBuffersMESA:0",CODE
-
-
- ;void gl_ResizeBuffersMESA( GLcontext *ctx )
- XDEF _gl_ResizeBuffersMESA
- _gl_ResizeBuffersMESA
- L492 EQU -$C
- link a5,#L492
- movem.l d2/a2,-(a7)
- move.l $8(a5),a2
- L475
- ; ctx->NewState |= NEW_ALL;
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- or.l #$F,d0
- move.l a2,a0
- add.l #$E082,a0
- move.l d0,(a0)
- ; (*ctx->Driver.GetBufferSize)( ctx, &buf_width, &buf_height );
- lea -$C(a5),a0
- move.l a0,-(a7)
- lea -$8(a5),a0
- move.l a0,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $20(a0),a0
- jsr (a0)
- add.w #$C,a7
- ; newsize = ctx->Buffer->Width!=buf_width || ctx->Buffer->Height
- moveq #1,d2
- move.l $89C(a2),a0
- move.l 4(a0),d0
- cmp.l -$8(a5),d0
- bne.b L478
- L476
- move.l $89C(a2),a0
- move.l $8(a0),d0
- cmp.l -$C(a5),d0
- bne.b L478
- L477
- moveq #0,d2
- L478
- ; ctx->Buffer->Width = buf_width;
- move.l $89C(a2),a0
- move.l -$8(a5),4(a0)
- ; ctx->Buffer->Height = buf_height;
- move.l $89C(a2),a0
- move.l -$C(a5),$8(a0)
- ; if (newsize && ctx->Visual->DepthBits>0)
- tst.l d2
- beq.b L481
- L479
- move.l $898(a2),a0
- move.l $3C(a0),d0
- cmp.l #0,d0
- ble.b L481
- L480
- ; (*ctx->Driver.AllocDepthBuffer)( ctx );
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $74(a0),a0
- jsr (a0)
- addq.w #4,a7
- L481
- ; if (newsize && ctx->Visual->StencilBits>0)
- tst.l d2
- beq.b L484
- L482
- move.l $898(a2),a0
- move.l $40(a0),d0
- cmp.l #0,d0
- ble.b L484
- L483
- ; gl_alloc_stencil_buffer( ctx );
- move.l a2,-(a7)
- jsr _gl_alloc_stencil_buffer
- addq.w #4,a7
- L484
- ; if (newsize && ctx->Visual->AccumBits>0)
- tst.l d2
- beq.b L487
- L485
- move.l $898(a2),a0
- move.l $38(a0),d0
- cmp.l #0,d0
- ble.b L487
- L486
- ; gl_alloc_accum_buffer( ctx );
- move.l a2,-(a7)
- jsr _gl_alloc_accum_buffer
- addq.w #4,a7
- L487
- ; if (newsize
- tst.l d2
- beq.b L491
- L488
- move.l $898(a2),a0
- move.b $44(a0),d0
- bne.b L490
- L489
- move.l $898(a2),a0
- move.b $45(a0),d0
- beq.b L491
- L490
- ; gl_alloc_alpha_buffers( ctx );
- move.l a2,-(a7)
- jsr _gl_alloc_alpha_buffers
- addq.w #4,a7
- L491
- movem.l (a7)+,d2/a2
- unlk a5
- rts
-
- SECTION "_update_pixel_logic:0",CODE
-
-
- ;static void update_pixel_logic( GLcontext *ctx )
- _update_pixel_logic
- move.l a2,-(a7)
- move.l $8(a7),a2
- L493
- ; if (ctx->Visual->RGBAflag)
- move.l $898(a2),a0
- move.b (a0),d0
- beq.b L504
- L494
- ; if (ctx->Color.ColorLogicOpEnabled)
- lea $1E74(a2),a0
- move.b $4F(a0),d0
- beq.b L500
- L495
- ; if (ctx->Driver.LogicOp
- lea $8A0(a2),a0
- move.l $64(a0),a0
- cmp.w #0,a0
- beq.b L498
- L496
- lea $1E74(a2),a0
- move.l $4A(a0),d0
- move.l d0,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $64(a0),a0
- jsr (a0)
- addq.w #$8,a7
- tst.b d0
- beq.b L498
- L497
- ; ctx->Color.SWLogicOpEnabled = GL_FALSE;
- clr.b $1EC4(a2)
- bra.b L499
- L498
- ; ctx->Color.SWLogicOpEnabled = GL_TRUE;
- move.b #1,$1EC4(a2)
- L499
- bra.b L503
- L500
- ; if (ctx->Driver.LogicOp)
- lea $8A0(a2),a0
- move.l $64(a0),a0
- cmp.w #0,a0
- beq.b L502
- L501
- ; (void) (*ctx->Driver.LogicOp)( ctx, GL_COPY );
- pea $1503.w
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $64(a0),a0
- jsr (a0)
- addq.w #$8,a7
- L502
- ; ctx->Color.SWLogicOpEnabled = GL_FALSE;
- clr.b $1EC4(a2)
- L503
- bra.b L513
- L504
- ; if (ctx->Color.IndexLogicOpEnabled)
- lea $1E74(a2),a0
- move.b $4E(a0),d0
- beq.b L510
- L505
- ; if (ctx->Driver.LogicOp
- lea $8A0(a2),a0
- move.l $64(a0),a0
- cmp.w #0,a0
- beq.b L508
- L506
- lea $1E74(a2),a0
- move.l $4A(a0),d0
- move.l d0,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $64(a0),a0
- jsr (a0)
- addq.w #$8,a7
- tst.b d0
- beq.b L508
- L507
- ; ctx->Color.SWLogicOpEnabled = GL_FALSE;
- clr.b $1EC4(a2)
- bra.b L509
- L508
- ; ctx->Color.SWLogicOpEnabled = GL_TRUE;
- move.b #1,$1EC4(a2)
- L509
- bra.b L513
- L510
- ; if (ctx->Driver.LogicOp)
- lea $8A0(a2),a0
- move.l $64(a0),a0
- cmp.w #0,a0
- beq.b L512
- L511
- ; (void) (*ctx->Driver.LogicOp)( ctx, GL_COPY );
- pea $1503.w
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $64(a0),a0
- jsr (a0)
- addq.w #$8,a7
- L512
- ; ctx->Color.SWLogicOpEnabled = GL_FALSE;
- clr.b $1EC4(a2)
- L513
- move.l (a7)+,a2
- rts
-
- SECTION "_update_pixel_masking:0",CODE
-
-
- ;static void update_pixel_masking( GLcontext *ctx )
- _update_pixel_masking
- movem.l d2-d4/a2,-(a7)
- move.l $14(a7),a2
- L514
- ; if (ctx->Visual->RGBAflag)
- move.l $898(a2),a0
- move.b (a0),d0
- beq L536
- L515
- ; if (ctx->Color.ColorMask==0xf)
- lea $1E74(a2),a0
- move.l $18(a0),d0
- cmp.l #$F,d0
- bne.b L519
- L516
- ; if (ctx->Driver.ColorMask)
- lea $8A0(a2),a0
- move.l $60(a0),a0
- cmp.w #0,a0
- beq.b L518
- L517
- ; (void) (*ctx->Driver.ColorMask)( ctx, GL_TRUE, GL_TRUE, GL
- move.b #1,-(a7)
- move.b #1,-(a7)
- move.b #1,-(a7)
- move.b #1,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $60(a0),a0
- jsr (a0)
- add.w #$C,a7
- L518
- ; ctx->Color.SWmasking = GL_FALSE;
- clr.b $1E90(a2)
- bra L535
- L519
- ; GLboolean red = (ctx->Color.ColorMask & 8) ? GL_TRUE : GL_FALS
- lea $1E74(a2),a0
- move.l $18(a0),d0
- and.l #$8,d0
- beq.b L521
- L520
- moveq #1,d0
- bra.b L522
- L521
- moveq #0,d0
- L522
- move.b d0,d3
- ; GLboolean green = (ctx->Color.ColorMask & 4) ? GL_TRUE : GL_FALS
- lea $1E74(a2),a0
- move.l $18(a0),d0
- and.l #4,d0
- beq.b L524
- L523
- moveq #1,d0
- bra.b L525
- L524
- moveq #0,d0
- L525
- move.b d0,d2
- ; GLboolean blue = (ctx->Color.ColorMask & 2) ? GL_TRUE : GL_FALS
- lea $1E74(a2),a0
- move.l $18(a0),d0
- and.l #2,d0
- beq.b L527
- L526
- moveq #1,d0
- bra.b L528
- L527
- moveq #0,d0
- L528
- move.b d0,d1
- ; GLboolean alpha = (ctx->Color.ColorMask & 1) ? GL_TRUE : GL_FALS
- lea $1E74(a2),a0
- move.l $18(a0),d0
- and.l #1,d0
- beq.b L530
- L529
- moveq #1,d0
- bra.b L531
- L530
- moveq #0,d0
- L531
- ; if (ctx->Driver.ColorMask
- lea $8A0(a2),a0
- move.l $60(a0),a0
- cmp.w #0,a0
- beq.b L534
- L532
- move.b d0,-(a7)
- move.b d1,-(a7)
- move.b d2,-(a7)
- move.b d3,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $60(a0),a0
- jsr (a0)
- add.w #$C,a7
- tst.b d0
- beq.b L534
- L533
- ; ctx->Color.SWmasking = GL_FALSE;
- clr.b $1E90(a2)
- bra.b L535
- L534
- ; ctx->Color.SWmasking = GL_TRUE;
- move.b #1,$1E90(a2)
- L535
- bra.b L544
- L536
- ; if (ctx->Color.IndexMask==0xffffffff)
- lea $1E74(a2),a0
- move.l $14(a0),d0
- cmp.l #-1,d0
- bne.b L540
- L537
- ; if (ctx->Driver.IndexMask)
- lea $8A0(a2),a0
- move.l $5C(a0),a0
- cmp.w #0,a0
- beq.b L539
- L538
- ; (void) (*ctx->Driver.IndexMask)( ctx, 0xffffffff );
- move.l #-1,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $5C(a0),a0
- jsr (a0)
- addq.w #$8,a7
- L539
- ; ctx->Color.SWmasking = GL_FALSE;
- clr.b $1E90(a2)
- bra.b L544
- L540
- ; if (ctx->Driver.IndexMask
- lea $8A0(a2),a0
- move.l $5C(a0),a0
- cmp.w #0,a0
- beq.b L543
- L541
- lea $1E74(a2),a0
- move.l $14(a0),d0
- move.l d0,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $5C(a0),a0
- jsr (a0)
- addq.w #$8,a7
- tst.b d0
- beq.b L543
- L542
- ; ctx->Color.SWmasking = GL_FALSE;
- clr.b $1E90(a2)
- bra.b L544
- L543
- ; ctx->Color.SWmasking = GL_TRUE;
- move.b #1,$1E90(a2)
- L544
- movem.l (a7)+,d2-d4/a2
- rts
-
- SECTION "_update_rasterflags:0",CODE
-
-
- ;static void update_rasterflags( GLcontext *ctx )
- _update_rasterflags
- move.l 4(a7),a0
- L545
- ; ctx->RasterMask = 0;
- move.l a0,a1
- add.l #$E096,a1
- clr.l (a1)
- ; if (ctx->Color.AlphaEnabled)
- lea $1E74(a0),a1
- move.b $22(a1),d0
- beq.b L547
- L546
- ; if (ctx->Color.AlphaEnabl
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #1,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L547
- ; if (ctx->Color.BlendEnabled)
- lea $1E74(a0),a1
- move.b $2D(a1),d0
- beq.b L549
- L548
- ; if (ctx->Color.BlendEnabl
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #2,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L549
- ; if (ctx->Depth.Test)
- lea $1F24(a0),a1
- move.b $8(a1),d0
- beq.b L551
- L550
- ; if (ctx->Depth.Test)
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #4,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L551
- ; if (ctx->Fog.Enabled)
- lea $1F66(a0),a1
- move.b (a1),d0
- beq.b L553
- L552
- ; if (ctx->Fog.Enabled)
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$8,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L553
- ; if (ctx->Color.SWLogicOpEnabled)
- lea $1E74(a0),a1
- move.b $50(a1),d0
- beq.b L555
- L554
- ; if (ctx->Color.SWLogicOpE
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$10,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L555
- ; if (ctx->Scissor.Enabled)
- move.l a0,a1
- add.l #$D714,a1
- lea (a1),a1
- move.b (a1),d0
- beq.b L557
- L556
- ; if (ctx->Scissor.Enabled)
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$20,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L557
- ; if (ctx->Stencil.Enabled)
- move.l a0,a1
- add.l #$D726,a1
- lea (a1),a1
- move.b (a1),d0
- beq.b L559
- L558
- ; if (ctx->Stencil.Enabled)
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$40,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L559
- ; if (ctx->Color.SWmasking)
- lea $1E74(a0),a1
- move.b $1C(a1),d0
- beq.b L561
- L560
- ; if (ctx->Color.SWmasking)
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$80,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L561
- ; if (ctx->Visual->FrontAlphaEnabled)
- move.l $898(a0),a1
- move.b $44(a1),d0
- beq.b L563
- L562
- ; if (ctx->Visual->FrontAlp
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$100,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L563
- ; if (ctx->Visual->BackAlphaEnabled)
- move.l $898(a0),a1
- move.b $45(a1),d0
- beq.b L565
- L564
- ; if (ctx->Visual->BackAlph
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$100,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L565
- ; if ( ctx->Viewport.X<0
- move.l a0,a1
- add.l #$DC7E,a1
- lea (a1),a1
- move.l (a1),d0
- bmi.b L569
- L566
- move.l a0,a1
- add.l #$DC7E,a1
- lea (a1),a1
- move.l (a1),d0
- move.l a0,a1
- add.l #$DC7E,a1
- lea (a1),a1
- move.l $8(a1),d1
- add.l d1,d0
- move.l $89C(a0),a1
- move.l 4(a1),d1
- cmp.l d1,d0
- bgt.b L569
- L567
- move.l a0,a1
- add.l #$DC7E,a1
- lea (a1),a1
- move.l 4(a1),d0
- bmi.b L569
- L568
- move.l a0,a1
- add.l #$DC7E,a1
- lea (a1),a1
- move.l 4(a1),d0
- move.l a0,a1
- add.l #$DC7E,a1
- lea (a1),a1
- move.l $C(a1),d1
- add.l d1,d0
- move.l $89C(a0),a1
- move.l $8(a1),d1
- cmp.l d1,d0
- ble.b L570
- L569
- ; ctx->RasterMask |= WINCLIP_BIT;
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$200,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L570
- ; if (ctx->Color.DrawBuffer==GL_FRONT_AND_BACK)
- lea $1E74(a0),a1
- move.l $1E(a1),d0
- cmp.l #$408,d0
- bne.b L572
- L571
- ; ctx->RasterMask |= FRONT_AND_BACK_BIT;
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- or.l #$400,d0
- move.l a0,a1
- add.l #$E096,a1
- move.l d0,(a1)
- L572
- ; if (ctx->Color.DrawBuffer==GL_NONE)
- lea $1E74(a0),a1
- move.l $1E(a1),d0
- bne.b L574
- L573
- ; ctx->RasterMask |= NO_DRAW_BIT;
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- add.l #$E096,a0
- or.l #$800,d0
- add.l #$E096,a0
- move.l d0,(a0)
- bra.b L580
- L574
- ; else if (ctx->Visual->RGBAflag && ctx->Color.ColorMask==0)
- move.l $898(a0),a1
- move.b (a1),d0
- beq.b L577
- L575
- lea $1E74(a0),a1
- move.l $18(a1),d0
- bne.b L577
- L576
- ; ctx->RasterMask |= NO_DRAW_BIT;
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- add.l #$E096,a0
- or.l #$800,d0
- add.l #$E096,a0
- move.l d0,(a0)
- bra.b L580
- L577
- ; else if (!ctx->Visual->RGBAflag && ctx->Color.IndexMask==
- move.l $898(a0),a1
- move.b (a1),d0
- bne.b L580
- L578
- lea $1E74(a0),a1
- move.l $14(a1),d0
- bne.b L580
- L579
- ; ctx->RasterMask |= NO_DRAW_BIT;
- move.l a0,a1
- add.l #$E096,a1
- move.l (a1),d0
- add.l #$E096,a0
- or.l #$800,d0
- add.l #$E096,a0
- move.l d0,(a0)
- L580
- rts
-
- SECTION "_update_clipmask:0",CODE
-
-
- ;static void update_clipmask(GLcontext *ctx)
- _update_clipmask
- move.l 4(a7),a0
- L581
- ; ctx->ClipMask = 0;
- move.l a0,a1
- add.l #$E092,a1
- clr.l (a1)
- ; if (ctx->Texture.Enabled)
- move.l a0,a1
- add.l #$D73C,a1
- lea (a1),a1
- move.l (a1),d0
- beq.b L583
- L582
- ; ctx->ClipMask |= CLIP_TEXTURE_BIT;
- move.l a0,a1
- add.l #$E092,a1
- move.l (a1),d0
- or.l #$10,d0
- move.l a0,a1
- add.l #$E092,a1
- move.l d0,(a1)
- L583
- ; if (ctx->Light.ShadeModel==GL_SMOOTH)
- lea $1FA0(a0),a1
- add.l #$8E04,a1
- move.l (a1),d0
- cmp.l #$1D01,d0
- bne L590
- L584
- ; if (ctx->Visual->RGBAflag)
- move.l $898(a0),a1
- move.b (a1),d0
- beq.b L588
- L585
- ; ctx->ClipMask |= CLIP_FCOLOR_BIT;
- move.l a0,a1
- add.l #$E092,a1
- move.l (a1),d0
- or.l #1,d0
- move.l a0,a1
- add.l #$E092,a1
- move.l d0,(a1)
- ; if (ctx->Light.Model.TwoSide)
- move.l a0,a1
- add.l #$A6B0,a1
- lea (a1),a1
- move.b $11(a1),d0
- beq.b L587
- L586
- ; ctx->ClipMask |= CLIP_BCOLOR_BIT;
- move.l a0,a1
- add.l #$E092,a1
- move.l (a1),d0
- add.l #$E092,a0
- or.l #2,d0
- add.l #$E092,a0
- move.l d0,(a0)
- L587
- bra.b L590
- L588
- ; ctx->ClipMask |= CLIP_FINDEX_BIT;
- move.l a0,a1
- add.l #$E092,a1
- move.l (a1),d0
- or.l #4,d0
- move.l a0,a1
- add.l #$E092,a1
- move.l d0,(a1)
- ; if (ctx->Light.Model.TwoSide)
- move.l a0,a1
- add.l #$A6B0,a1
- lea (a1),a1
- move.b $11(a1),d0
- beq.b L590
- L589
- ; ctx->ClipMask |= CLIP_BINDEX_BIT;
- move.l a0,a1
- add.l #$E092,a1
- move.l (a1),d0
- add.l #$E092,a0
- or.l #$8,d0
- add.l #$E092,a0
- move.l d0,(a0)
- L590
- rts
-
- SECTION "_gl_update_state:0",CODE
-
-
- ;void gl_update_state( GLcontext *ctx )
- XDEF _gl_update_state
- _gl_update_state
- movem.l d2/a2,-(a7)
- move.l $C(a7),a2
- L591
- ; if (ctx->NewState & NEW_RASTER_OPS)
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #2,d0
- beq.b L594
- L592
- ; update_pixel_logic(ctx);
- move.l a2,-(a7)
- jsr _update_pixel_logic
- addq.w #4,a7
- ; update_pixel_masking(ctx);
- move.l a2,-(a7)
- jsr _update_pixel_masking
- addq.w #4,a7
- ; update_rasterflags(ctx);
- move.l a2,-(a7)
- jsr _update_rasterflags
- addq.w #4,a7
- ; if (ctx->Driver.Dither)
- lea $8A0(a2),a0
- move.l $68(a0),a0
- cmp.w #0,a0
- beq.b L594
- L593
- ; (*ctx->Driver.Dither)( ctx, ctx->Color.DitherFlag );
- lea $1E74(a2),a0
- move.b $51(a0),d0
- move.b d0,-(a7)
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l $68(a0),a0
- jsr (a0)
- addq.w #6,a7
- L594
- ; if (ctx->NewState & (NEW_RASTER_OPS | NEW_LIGHTING))
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #3,d0
- beq.b L596
- L595
- ; update_clipmask(ctx);
- move.l a2,-(a7)
- jsr _update_clipmask
- addq.w #4,a7
- L596
- ; if (ctx->NewState & NEW_LIGHTING)
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #1,d0
- beq.b L598
- L597
- ; gl_update_lighting(ctx);
- move.l a2,-(a7)
- jsr _gl_update_lighting
- addq.w #4,a7
- ; gl_set_color_function(ctx);
- move.l a2,-(a7)
- jsr _gl_set_color_function
- addq.w #4,a7
- L598
- ; if (ctx->NewState & NEW_TEXTURING)
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #4,d0
- beq.b L600
- L599
- ; gl_update_texture_state(ctx);
- move.l a2,-(a7)
- jsr _gl_update_texture_state
- addq.w #4,a7
- L600
- ; if (ctx->NewState & (NEW_LIGHTING | NEW_TEXTURING))
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #5,d0
- beq L611
- L601
- ; ctx->Buffer->Xmin = 0;
- moveq #0,d1
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l (a0),d0
- beq.b L607
- L602
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $1C(a0),d0
- cmp.l #$2402,d0
- bne.b L604
- L603
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $18(a0),d0
- and.l #4,d0
- bne.b L606
- L604
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $20(a0),d0
- cmp.l #$2402,d0
- bne.b L607
- L605
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l $18(a0),d0
- and.l #$8,d0
- beq.b L607
- L606
- moveq #1,d1
- L607
- ; if (ctx->Light.Enabled || sphereGen)
- lea $1FA0(a2),a0
- add.l #$8E02,a0
- move.b (a0),d0
- bne.b L609
- L608
- tst.b d1
- beq.b L610
- L609
- ; ctx->NeedNormals = GL_TRUE;
- move.l a2,a0
- add.l #$E0A8,a0
- move.b #1,(a0)
- bra.b L611
- L610
- ; ctx->NeedNormals = GL_FALSE;
- move.l a2,a0
- add.l #$E0A8,a0
- clr.b (a0)
- L611
- ; if (ctx->NewState & NEW_RASTER_OPS)
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #2,d0
- beq.b L619
- L612
- ; if (ctx->Fog.Enabled ||
- lea $1F66(a2),a0
- move.b (a0),d0
- bne.b L617
- L613
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l (a0),d0
- bne.b L617
- L614
- lea $1E74(a2),a0
- move.b $2D(a0),d0
- bne.b L617
- L615
- lea $1E74(a2),a0
- move.b $1C(a0),d0
- bne.b L617
- L616
- lea $1E74(a2),a0
- move.b $50(a0),d0
- beq.b L618
- L617
- ; ctx->MutablePixels = GL_TRUE;
- move.l a2,a0
- add.l #$E0AA,a0
- move.b #1,(a0)
- bra.b L619
- L618
- ; ctx->MutablePixels = GL_FALSE;
- move.l a2,a0
- add.l #$E0AA,a0
- clr.b (a0)
- L619
- ; if (ctx->NewState & (NEW_RASTER_OPS | NEW_LIGHTING))
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #3,d0
- beq.b L629
- L620
- ; if (ctx->Light.ShadeModel==GL_SMOOTH ||
- lea $1FA0(a2),a0
- add.l #$8E04,a0
- move.l (a0),d0
- cmp.l #$1D01,d0
- beq.b L627
- L621
- lea $1FA0(a2),a0
- add.l #$8E02,a0
- move.b (a0),d0
- bne.b L627
- L622
- lea $1F66(a2),a0
- move.b (a0),d0
- bne.b L627
- L623
- move.l a2,a0
- add.l #$D73C,a0
- lea (a0),a0
- move.l (a0),d0
- bne.b L627
- L624
- lea $1E74(a2),a0
- move.b $2D(a0),d0
- bne.b L627
- L625
- lea $1E74(a2),a0
- move.b $1C(a0),d0
- bne.b L627
- L626
- lea $1E74(a2),a0
- move.b $50(a0),d0
- beq.b L628
- L627
- ; ctx->MonoPixels = GL_FALSE;
- move.l a2,a0
- add.l #$E0AB,a0
- clr.b (a0)
- bra.b L629
- L628
- ; ctx->MonoPixels = GL_TRUE;
- move.l a2,a0
- add.l #$E0AB,a0
- move.b #1,(a0)
- L629
- ; if (ctx->NewState & NEW_POLYGON)
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #$8,d0
- beq L642
- L630
- ; ctx->Polygon.CullBits = 0;
- move.l a2,a0
- add.l #$D682,a0
- clr.l (a0)
- ; if (ctx->Polygon.CullFlag)
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $D(a0),d0
- beq L637
- L631
- ; if (ctx->Polygon.CullFaceMode==GL_FRONT ||
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.l $E(a0),d0
- cmp.l #$404,d0
- beq.b L633
- L632
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.l $E(a0),d0
- cmp.l #$408,d0
- bne.b L634
- L633
- ; ctx->Polygon.CullBits |= 1;
- move.l a2,a0
- add.l #$D682,a0
- move.l (a0),d0
- or.l #1,d0
- move.l a2,a0
- add.l #$D682,a0
- move.l d0,(a0)
- L634
- ; if (ctx->Polygon.CullFaceMode==GL_BACK ||
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.l $E(a0),d0
- cmp.l #$405,d0
- beq.b L636
- L635
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.l $E(a0),d0
- cmp.l #$408,d0
- bne.b L637
- L636
- ; ctx->Polygon.CullBits |= 2;
- move.l a2,a0
- add.l #$D682,a0
- move.l (a0),d0
- or.l #2,d0
- move.l a2,a0
- add.l #$D682,a0
- move.l d0,(a0)
- L637
- ; ctx->Polygon.OffsetAny = ctx->Polygon.OffsetPoint ||
- moveq #1,d0
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $20(a0),d1
- bne.b L641
- L638
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $21(a0),d1
- bne.b L641
- L639
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $22(a0),d1
- bne.b L641
- L640
- moveq #0,d0
- L641
- move.l a2,a0
- add.l #$D693,a0
- move.b d0,(a0)
- ; ctx->PointZoffset = 0.0;
- move.l a2,a0
- add.l #$E0A4,a0
- clr.l (a0)
- ; ctx->LineZoffset = 0.0;
- move.l a2,a0
- add.l #$E0A0,a0
- clr.l (a0)
- ; ctx->PolygonZoffset = 0.0;
- move.l a2,a0
- add.l #$E09C,a0
- clr.l (a0)
- L642
- ; if (ctx->NewState & (NEW_POLYGON | NEW_LIGHTING))
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #$9,d0
- beq.b L650
- L643
- ; if ( ctx->Polygon.Unfilled
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $C(a0),d0
- bne.b L648
- L644
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $23(a0),d0
- bne.b L648
- L645
- move.l a2,a0
- add.l #$D670,a0
- lea (a0),a0
- move.b $D(a0),d0
- bne.b L648
- L646
- move.l a2,a0
- add.l #$A6B0,a0
- lea (a0),a0
- move.b $11(a0),d0
- bne.b L648
- L647
- move.l a2,a0
- add.l #$E086,a0
- move.l (a0),d0
- cmp.l #$1C00,d0
- beq.b L649
- L648
- ; ctx->DirectTriangles = GL_FALSE;
- move.l a2,a0
- add.l #$E09B,a0
- clr.b (a0)
- bra.b L650
- L649
- ; ctx->DirectTriangles = GL_TRUE;
- move.l a2,a0
- add.l #$E09B,a0
- move.b #1,(a0)
- L650
- ; ctx->Buffer->Xmin = 0;
- move.l $89C(a2),a0
- clr.l $24(a0)
- ; ctx->Buffer->Ymin = 0;
- move.l $89C(a2),a0
- clr.l $2C(a0)
- ; ctx->Buffer->Xmax = ctx->Buffer->Width-1;
- move.l $89C(a2),a0
- move.l 4(a0),d0
- subq.l #1,d0
- move.l $89C(a2),a0
- move.l d0,$28(a0)
- ; ctx->Buffer->Ymax = ctx->Buffer->Height-1;
- move.l $89C(a2),a0
- move.l $8(a0),d0
- subq.l #1,d0
- move.l $89C(a2),a0
- move.l d0,$30(a0)
- ; if (ctx->Scissor.Enabled)
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.b (a0),d0
- beq L659
- L651
- ; if (ctx->Scissor.X > ctx->Buffer->Xmin)
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 2(a0),d1
- move.l $89C(a2),a0
- move.l $24(a0),d0
- cmp.l d0,d1
- ble.b L653
- L652
- ; ctx->Buffer->Xmin = ctx->Scissor.X;
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 2(a0),d0
- move.l $89C(a2),a0
- move.l d0,$24(a0)
- L653
- ; if (ctx->Scissor.Y > ctx->Buffer->Ymin)
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 6(a0),d1
- move.l $89C(a2),a0
- move.l $2C(a0),d0
- cmp.l d0,d1
- ble.b L655
- L654
- ; ctx->Buffer->Ymin = ctx->Scissor.Y;
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 6(a0),d0
- move.l $89C(a2),a0
- move.l d0,$2C(a0)
- L655
- ; if (ctx->Scissor.X + ctx->Scissor.Width - 1 < ctx->Buffe
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 2(a0),d0
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l $A(a0),d1
- add.l d1,d0
- subq.l #1,d0
- move.l $89C(a2),a0
- move.l $28(a0),d1
- cmp.l d1,d0
- bge.b L657
- L656
- ; ctx->Buffer->Xmax = ctx->Scissor.X + ctx->Scissor.Width - 1;
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 2(a0),d0
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l $A(a0),d1
- add.l d1,d0
- subq.l #1,d0
- move.l $89C(a2),a0
- move.l d0,$28(a0)
- L657
- ; if (ctx->Scissor.Y + ctx->Scissor.Height - 1 < ctx->Buff
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 6(a0),d0
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l $E(a0),d1
- add.l d1,d0
- subq.l #1,d0
- move.l $89C(a2),a0
- move.l $30(a0),d1
- cmp.l d1,d0
- bge.b L659
- L658
- ; ctx->Buffer->Ymax = ctx->Scissor.Y + ctx->Scissor.Height - 1;
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l 6(a0),d0
- move.l a2,a0
- add.l #$D714,a0
- lea (a0),a0
- move.l $E(a0),d1
- add.l d1,d0
- subq.l #1,d0
- move.l $89C(a2),a0
- move.l d0,$30(a0)
- L659
- ; if (ctx->NewState & NEW_RASTER_OPS)
- move.l a2,a0
- add.l #$E082,a0
- move.l (a0),d0
- and.l #2,d0
- beq L668
- L660
- ; ctx->Driver.AllocDepthBuffer = gl_alloc_depth_buffer;
- move.l #_gl_alloc_depth_buffer,$914(a2)
- ; ctx->Driver.ClearDepthBuffer = gl_clear_depth_buffer;
- move.l #_gl_clear_depth_buffer,$918(a2)
- ; if (ctx->Depth.Mask)
- lea $1F24(a2),a0
- move.b $9(a0),d0
- beq.b L666
- L661
- ; switch (ctx->Depth.Func)
- lea $1F24(a2),a0
- move.l (a0),d0
- cmp.l #$201,d0
- beq.b L662
- cmp.l #$204,d0
- beq.b L663
- bra.b L664
- ;
- L662
- ; ctx->Driver.DepthTestSpan = gl_depth_test_span_less;
- move.l #_gl_depth_test_span_less,$91C(a2)
- ; ctx->Driver.DepthTestPixels = gl_depth_test_pixels_l
- move.l #_gl_depth_test_pixels_less,$920(a2)
- ;
- bra.b L665
- L663
- ; ctx->Driver.DepthTestSpan = gl_depth_test_span_great
- move.l #_gl_depth_test_span_greater,$91C(a2)
- ; ctx->Driver.DepthTestPixels = gl_depth_test_pixels_g
- move.l #_gl_depth_test_pixels_greater,$920(a2)
- ;
- bra.b L665
- L664
- ; ctx->Driver.DepthTestSpan = gl_depth_test_span_gener
- move.l #_gl_depth_test_span_generic,$91C(a2)
- ; ctx->Driver.DepthTestPixels = gl_depth_test_pixels_g
- move.l #_gl_depth_test_pixels_generic,$920(a2)
- L665
- bra.b L667
- L666
- ; ctx->Driver.DepthTestSpan = gl_depth_test_span_generic;
- move.l #_gl_depth_test_span_generic,$91C(a2)
- ; ctx->Driver.DepthTestPixels = gl_depth_test_pixels_generic;
- move.l #_gl_depth_test_pixels_generic,$920(a2)
- L667
- ; ctx->Driver.ReadDepthSpanFloat = gl_read_depth_span_floa
- move.l #_gl_read_depth_span_float,$924(a2)
- ; ctx->Driver.ReadDepthSpanInt = gl_read_depth_span_int;
- move.l #_gl_read_depth_span_int,$928(a2)
- L668
- ; ctx->Driver.PointsFunc = NULL;
- clr.l $92C(a2)
- ; ctx->Driver.LineFunc = NULL;
- clr.l $930(a2)
- ; ctx->Driver.TriangleFunc = NULL;
- clr.l $934(a2)
- ; ctx->Driver.QuadFunc = NULL;
- clr.l $938(a2)
- ; ctx->Driver.RectFunc = NULL;
- clr.l $93C(a2)
- ; if (ctx->Driver.UpdateState)
- lea $8A0(a2),a0
- move.l 4(a0),a0
- cmp.w #0,a0
- beq.b L670
- L669
- ; (*ctx->Driver.UpdateState)(ctx);
- move.l a2,-(a7)
- lea $8A0(a2),a0
- move.l 4(a0),a0
- jsr (a0)
- addq.w #4,a7
- L670
- ; gl_set_point_function(ctx);
- move.l a2,-(a7)
- jsr _gl_set_point_function
- addq.w #4,a7
- ; gl_set_line_function(ctx);
- move.l a2,-(a7)
- jsr _gl_set_line_function
- addq.w #4,a7
- ; gl_set_triangle_function(ctx);
- move.l a2,-(a7)
- jsr _gl_set_triangle_function
- addq.w #4,a7
- ; gl_set_quad_function(ctx);
- move.l a2,-(a7)
- jsr _gl_set_quad_function
- addq.w #4,a7
- ; gl_set_vertex_function(ctx);
- move.l a2,-(a7)
- jsr _gl_set_vertex_function
- addq.w #4,a7
- ; ctx->NewState = 0;
- move.l a2,a0
- add.l #$E082,a0
- clr.l (a0)
- movem.l (a7)+,d2/a2
- rts
-
- END
-