Subversion Repositories Kolibri OS

Rev

Rev 1245 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1245 Rev 1776
Line 63... Line 63...
63
 
63
 
64
   .dx12      equ  dword[ebp-28] ;dd ?
64
   .dx12      equ  dword[ebp-28] ;dd ?
Line 65... Line 65...
65
   .tex_dx12  equ  dword[ebp-32] ;dd ?
65
   .tex_dx12  equ  dword[ebp-32] ;dd ?
66
   .tex_dy12  equ  dword[ebp-36] ;dd ?
66
   .tex_dy12  equ	[ebp-36] ;dd ?
67
   .dz12      equ  dword[ebp-40] ;dd ?
67
   .dz12      equ  dword[ebp-40] ;dd ?
68
   .dc12r     equ  dword[ebp-44] ;dd ?
68
   .dc12r     equ	[ebp-44] ;dd ?
69
   .dc12g     equ  dword[ebp-48] ;dd ?
69
   .dc12g     equ  dword[ebp-48] ;dd ?
70
   .dc12b     equ  dword[ebp-52] ;dd ?
70
   .dc12b     equ	[ebp-52] ;dd ?
71
 
71
 
Line 72... Line 72...
72
   .dx23      equ  dword[ebp-56] ;dd ?
72
   .dx23      equ  dword[ebp-56] ;dd ?
73
   .tex_dx23  equ  dword[ebp-60] ;dd ?
73
   .tex_dx23  equ  dword[ebp-60] ;dd ?
74
   .tex_dy23  equ  dword[ebp-64] ;dd ?
74
   .tex_dy23  equ	[ebp-64] ;dd ?
75
   .dz23      equ  dword[ebp-68] ;dd ?
75
   .dz23      equ  dword[ebp-68] ;dd ?
76
   .dc23r     equ  dword[ebp-72] ;dd ?
76
   .dc23r     equ	[ebp-72] ;dd ?
77
   .dc23g     equ  dword[ebp-76] ;dd ?
77
   .dc23g     equ  dword[ebp-76] ;dd ?
78
   .dc23b     equ  dword[ebp-80] ;dword[ebp-8]dd ?
78
   .dc23b     equ	[ebp-80] ;dword[ebp-8]dd ?
Line 79... Line 79...
79
 
79
 
80
   .dx13      equ  dword[ebp-84] ;dd ?
80
   .dx13      equ  dword[ebp-84] ;dd ?
81
   .tex_dx13  equ  dword[ebp-88] ;dd ?
81
   .tex_dx13  equ  dword[ebp-88] ;dd ?
82
   .tex_dy13  equ  dword[ebp-92] ;dd ?
82
   .tex_dy13  equ	[ebp-92] ;dd ?
83
   .dz13      equ  dword[ebp-96] ;dd ?
83
   .dz13      equ  dword[ebp-96] ;dd ?
84
   .dc13r     equ  dword[ebp-100] ;dd ?
84
   .dc13r     equ	[ebp-100] ;dd ?
85
   .dc13g     equ  dword[ebp-104] ;dd ?
85
   .dc13g     equ  dword[ebp-104] ;dd ?
Line 86... Line 86...
86
   .dc13b     equ  dword[ebp-108] ;dd ?
86
   .dc13b     equ	[ebp-108] ;dd ?
87
 
87
 
88
   .zz1       equ  dword[ebp-112] ;dw ?
88
   .scan_x1   equ  dword[ebp-112] ;dd ?
89
   .zz2       equ  dword[ebp-116] ;dw ?
89
   .scan_y1   equ	[ebp-116] ;dd ?
90
   .cur1r     equ  dword[ebp-120] ;dw ?
90
   .zz1       equ  dword[ebp-120] ;dw ?
91
   .cur1g     equ  dword[ebp-124] ;dw ?
91
   .cur1r     equ	[ebp-124] ;dw ?
-
 
92
   .cur1g     equ  dword[ebp-128] ;dw ?
92
   .cur1b     equ  dword[ebp-128] ;dw ?
93
   .cur1b     equ	[ebp-132] ;dw ?
93
   .cur2r     equ  dword[ebp-132] ;dw ?
94
 
94
   .cur2g     equ  dword[ebp-136] ;dw ?
95
   .scan_x2   equ  dword[ebp-136] ;dd ?
95
   .cur2b     equ  dword[ebp-140] ;dw ?
96
   .scan_y2   equ	[ebp-140] ;dd ?
96
   .scan_x1   equ  dword[ebp-144] ;dd ?
97
   .zz2       equ  dword[ebp-144] ;dw ?
97
   .scan_x2   equ  dword[ebp-148] ;dd ?
98
   .cur2r     equ	[ebp-148] ;dw ?
Line 98... Line 99...
98
   .scan_y1   equ  dword[ebp-152] ;dd ?
99
   .cur2g     equ  dword[ebp-152] ;dw ?
99
   .scan_y2   equ  dword[ebp-156] ;dd ?
-
 
100
 
-
 
101
 
-
 
Line 102... Line 100...
102
       mov    ebp,esp
100
   .cur2b     equ	[ebp-156] ;dw ?
103
if Ext>=MMX
101
 
104
       emms
102
 
105
end if
103
       mov    ebp,esp
Line 466... Line 464...
466
       push	.zz2
464
       push	.zz2
Line 467... Line 465...
467
 
465
 
Line 468... Line 466...
468
       push	.scan_x2
466
       push	.scan_x2
469
       push	.scan_y2
467
       push	dword .scan_y2
470
       push	.cur2r
468
       push	dword .cur2r
471
       push	.cur2g
469
       push	.cur2g
472
       push	.cur2b
470
       push	dword .cur2b
Line 473... Line 471...
473
 
471
 
Line 474... Line 472...
474
       push	.zz1
472
       push	.zz1
475
 
473
 
476
       push	.scan_x1
474
       push	.scan_x1
477
       push	.scan_y1
475
       push	dword .scan_y1
478
       push	.cur1r
476
       push	dword .cur1r
Line 479... Line 477...
479
       push	.cur1g
477
       push	.cur1g
480
       push	.cur1b
478
       push	dword .cur1b
481
 
479
 
Line 482... Line 480...
482
       sar	eax,ROUND
480
       sar	eax,ROUND
483
       sar	ebx,ROUND
481
       sar	ebx,ROUND
-
 
482
       call	horizontal_tex_grd_line
-
 
483
 
-
 
484
      ; pop      ebp ebx eax
-
 
485
       popad
-
 
486
 
-
 
487
if Ext >= MMX
-
 
488
       movq	mm0,.cur1b
-
 
489
       movq	mm1,.cur1r
-
 
490
       movq	mm2,.scan_y1
-
 
491
       movq	mm3,.cur2b
-
 
492
       movq	mm4,.cur2r
-
 
493
       movq	mm5,.scan_y2
-
 
494
       paddd	mm0,.dc13b
-
 
495
       paddd	mm1,.dc13r
-
 
496
       paddd	mm2,.tex_dy13
-
 
497
       paddd	mm3,.dc12b
-
 
498
       paddd	mm4,.dc12r
-
 
499
       paddd	mm5,.tex_dy12
-
 
500
       movq	.cur1b,mm0
-
 
501
       movq	.cur1r,mm1
-
 
502
       movq	.scan_y1,mm2
484
       call	horizontal_tex_grd_line
503
       movq	.cur2b,mm3
485
 
504
       movq	.cur2r,mm4
486
      ; pop      ebp ebx eax
505
       movq	.scan_y2,mm5
487
       popad
506
else
488
       mov	edx,.dc13b
507
       mov	edx,.dc13b
489
       add	.cur1b,edx
508
       add	.cur1b,edx
-
 
509
       mov	esi,.dc13g
-
 
510
       add	.cur1g,esi
490
       mov	esi,.dc13g
511
       mov	edi,.dc13r
491
       add	.cur1g,esi
512
       add	.cur1r,edi
492
       mov	edi,.dc13r
513
       mov	edx,.dz13
493
       add	.cur1r,edi
514
       add	.zz1,edx
494
       mov	edx,.tex_dx13
-
 
495
       add	.scan_x1,edx
-
 
Line 496... Line 515...
496
       mov	esi,.tex_dy13
515
       mov	edx,.tex_dx13
497
       add	.scan_y1,esi
516
       add	.scan_x1,edx
498
       mov	edx,.dz13
517
       mov	esi,.tex_dy13
499
       add	.zz1,edx
518
       add	.scan_y1,esi
Line 510... Line 529...
510
       add	.scan_y2,esi
529
       add	.scan_y2,esi
511
       mov	edx,.dz12
530
       mov	edx,.dz12
512
       add	.zz2,edx
531
       add	.zz2,edx
513
       add	eax,.dx13
532
end if
514
       add	ebx,.dx12
533
       add	eax,.dx13
-
 
534
       add	ebx,.dx12
515
       inc	cx
535
       inc	cx
516
       cmp	cx,.y2
536
       cmp	cx,.y2
517
       jl      .loop_1
537
       jl      .loop_1
518
 .loop1_end:
538
 .loop1_end:
519
       movzx	ecx,.y2
539
       movzx	ecx,.y2
Line 561... Line 581...
561
       push	.zz2
581
       push	.zz2
Line 562... Line 582...
562
 
582
 
Line 563... Line 583...
563
       push	.scan_x2
583
       push	.scan_x2
564
       push	.scan_y2
584
       push	dword .scan_y2
565
       push	.cur2r
585
       push	dword .cur2r
566
       push	.cur2g
586
       push	.cur2g
567
       push	.cur2b
587
       push	dword .cur2b
Line 568... Line 588...
568
 
588
 
Line 569... Line 589...
569
       push	.zz1
589
       push	.zz1
570
 
590
 
571
       push	.scan_x1
591
       push	.scan_x1
572
       push	.scan_y1
592
       push	dword .scan_y1
573
       push	.cur1r
593
       push	dword .cur1r
Line 574... Line 594...
574
       push	.cur1g
594
       push	.cur1g
575
       push	.cur1b
595
       push	dword .cur1b
576
 
596
 
Line 577... Line 597...
577
       sar	eax,ROUND
597
       sar	eax,ROUND
-
 
598
       sar	ebx,ROUND
-
 
599
       call	horizontal_tex_grd_line
-
 
600
 
-
 
601
       popad
-
 
602
 
-
 
603
if Ext >= MMX
-
 
604
       movq	mm0,.cur1b
-
 
605
       movq	mm1,.cur1r
-
 
606
       movq	mm2,.scan_y1
-
 
607
       movq	mm3,.cur2b
-
 
608
       movq	mm4,.cur2r
-
 
609
       movq	mm5,.scan_y2
-
 
610
       paddd	mm0,.dc13b
-
 
611
       paddd	mm1,.dc13r
-
 
612
       paddd	mm2,.tex_dy13
-
 
613
       paddd	mm3,.dc23b
-
 
614
       paddd	mm4,.dc23r
-
 
615
       paddd	mm5,.tex_dy23
-
 
616
       movq	.cur1b,mm0
-
 
617
       movq	.cur1r,mm1
-
 
618
       movq	.scan_y1,mm2
578
       sar	ebx,ROUND
619
       movq	.cur2b,mm3
579
       call	horizontal_tex_grd_line
620
       movq	.cur2r,mm4
580
 
621
       movq	.scan_y2,mm5
581
       popad
622
else
582
       mov	edx,.dc13b
623
       mov	edx,.dc13b
Line 604... Line 645...
604
       add	.scan_y2,esi
645
       add	.scan_y2,esi
605
       mov	edx,.dz23
646
       mov	edx,.dz23
606
       add	.zz2,edx
647
       add	.zz2,edx
607
       add	eax,.dx13
648
end if
608
       add	ebx,.dx23
649
       add	eax,.dx13
-
 
650
       add	ebx,.dx23
609
       inc	cx
651
       inc	cx
610
       cmp	cx,.y3
652
       cmp	cx,.y3
611
       jl	.loop_2
653
       jl	.loop_2
612
 
654
 
613
.loop2_end:
655
.loop2_end: