mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 01:29:19 +02:00
* perform the clipping before initializing ES in PutPixel320, so it runs faster
when the pixel happens to be outside the viewport git-svn-id: trunk@41005 -
This commit is contained in:
parent
7c4466025a
commit
a854411e7c
@ -2236,13 +2236,6 @@ End;
|
|||||||
{$else asmgraph}
|
{$else asmgraph}
|
||||||
Procedure PutPixel320(X,Y : smallint; Pixel: ColorType); assembler;
|
Procedure PutPixel320(X,Y : smallint; Pixel: ColorType); assembler;
|
||||||
asm
|
asm
|
||||||
{$ifdef FPC_MM_HUGE}
|
|
||||||
mov ax, SEG SegA000
|
|
||||||
mov es, ax
|
|
||||||
mov es, es:[SegA000]
|
|
||||||
{$else FPC_MM_HUGE}
|
|
||||||
mov es, [SegA000]
|
|
||||||
{$endif FPC_MM_HUGE}
|
|
||||||
mov ax, [Y]
|
mov ax, [Y]
|
||||||
mov di, [X]
|
mov di, [X]
|
||||||
cmp byte ptr [ClipPixels], 0
|
cmp byte ptr [ClipPixels], 0
|
||||||
@ -2258,6 +2251,13 @@ End;
|
|||||||
jg @@Done
|
jg @@Done
|
||||||
|
|
||||||
@@ClipDone:
|
@@ClipDone:
|
||||||
|
{$ifdef FPC_MM_HUGE}
|
||||||
|
mov bx, SEG SegA000
|
||||||
|
mov es, bx
|
||||||
|
mov es, es:[SegA000]
|
||||||
|
{$else FPC_MM_HUGE}
|
||||||
|
mov es, [SegA000]
|
||||||
|
{$endif FPC_MM_HUGE}
|
||||||
add ax, [StartYViewPort]
|
add ax, [StartYViewPort]
|
||||||
add di, [StartXViewPort]
|
add di, [StartXViewPort]
|
||||||
xchg ah, al { The value of Y must be in AH }
|
xchg ah, al { The value of Y must be in AH }
|
||||||
|
Loading…
Reference in New Issue
Block a user