2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
8 #include <aros/debug.h>
9 #include "graphics_intern.h"
10 #include "gfxfuncsupport.h"
12 /*****************************************************************************
15 #include <proto/graphics.h>
17 AROS_LH7(void, WriteChunkyPixels
,
20 AROS_LHA(struct RastPort
*, rp
, A0
),
21 AROS_LHA(LONG
, xstart
, D0
),
22 AROS_LHA(LONG
, ystart
, D1
),
23 AROS_LHA(LONG
, xstop
, D2
),
24 AROS_LHA(LONG
, ystop
, D3
),
25 AROS_LHA(UBYTE
*, array
, A2
),
26 AROS_LHA(LONG
, bytesperrow
, D4
),
29 struct GfxBase
*, GfxBase
, 176, Graphics
)
32 Write a rectangular region of pen values into a rastport.
35 rp - destination RastPort
36 xstart,ystart - starting point
37 xstop,ystop - stopping point
38 array - array with pen values
39 bytesperrow - The number of bytes per row in the source array.
40 This should be at least as large as the number of pixels
41 being written per line.
56 27-11-96 digulla automatically created from
57 graphics_lib.fd and clib/graphics_protos.h
59 *****************************************************************************/
63 HIDDT_PixelLUT pixlut
;
65 pixlut
.entries
= AROS_PALETTE_SIZE
;
66 pixlut
.pixels
= IS_HIDD_BM(rp
->BitMap
) ? HIDD_BM_PIXTAB(rp
->BitMap
) : NULL
;
73 if ((xstart
> xstop
) || (ystart
> ystop
)) return;
77 if (GetBitMapAttr(rp
->BitMap
, BMA_DEPTH
) > 8)
79 D(bug("WriteChunkyPixels: can't work on hicolor/truecolor screen without LUT"));
84 write_pixels_8(rp
, array
93 } /* WriteChunkyPixels */