libtonc: 8bpp bitmap surfaces

Tonclib

8bpp bitmap surfaces
[Surface functions]


Functions

u32 sbmp8_get_pixel (const TSurface *src, int x, int y)
 Get the pixel value of src at (x, y).
void sbmp8_plot (const TSurface *dst, int x, int y, u32 clr)
 Plot a single pixel on a 8-bit buffer.
void sbmp8_hline (const TSurface *dst, int x1, int y, int x2, u32 clr)
 Draw a horizontal line on an 8-bit buffer.
void sbmp8_vline (const TSurface *dst, int x, int y1, int y2, u32 clr)
 Draw a vertical line on an 8-bit buffer.
void sbmp8_line (const TSurface *dst, int x1, int y1, int x2, int y2, u32 clr)
 Draw a line on an 8-bit buffer.
void sbmp8_rect (const TSurface *dst, int left, int top, int right, int bottom, u32 clr)
 Draw a rectangle in 8-bit mode.
void sbmp8_frame (const TSurface *dst, int left, int top, int right, int bottom, u32 clr)
 Draw a rectangle in 8-bit mode.
void sbmp8_blit (const TSurface *dst, int dstX, int dstY, uint width, uint height, const TSurface *src, int srcX, int srcY)
 16bpp blitter. Copies a rectangle from one surface to another.
void sbmp8_floodfill (const TSurface *dst, int x, int y, u32 clr)
 Floodfill an area of the same color with new color clr.
INLINE void _sbmp8_plot (const TSurface *dst, int x, int y, u32 clr)
 Plot a single pixel on a 8-bit surface; inline version.
INLINE u32 _sbmp8_get_pixel (const TSurface *src, int x, int y)
 Get the pixel value of src at (x, y); inline version.

Detailed Description

Routines for 8bpp linear surfaces. For use in mode 4 and affine tilemaps.

Function Documentation

void sbmp8_blit ( const TSurface *  dst,
int  dstX,
int  dstY,
uint  width,
uint  height,
const TSurface *  src,
int  srcX,
int  srcY 
)

16bpp blitter. Copies a rectangle from one surface to another.

Parameters:
dst Destination surface.
dstX Left coord of rectangle on dst.
dstY Top coord of rectangle on dst.
width Width of rectangle to blit.
height Height of rectangle to blit.
src Source surface.
srcX Left coord of rectangle on src.
srcY Top coord of rectangle on src.
Note:
The rectangle will be clipped to both src and dst.

void sbmp8_floodfill ( const TSurface *  dst,
int  x,
int  y,
u32  clr 
)

Floodfill an area of the same color with new color clr.

Parameters:
dst Destination surface.
x X-coordinate.
y Y-coordinate;
clr Color.

void sbmp8_frame ( const TSurface *  dst,
int  left,
int  top,
int  right,
int  bottom,
u32  clr 
)

Draw a rectangle in 8-bit mode.

Parameters:
dst Destination surface.
left Left side of rectangle;
top Top side of rectangle.
right Right side of rectangle.
bottom Bottom side of rectangle.
clr Color.
Note:
Does normalization, but not bounds checks.

PONDER: RB in- or exclusive?

u32 sbmp8_get_pixel ( const TSurface *  src,
int  x,
int  y 
)

Get the pixel value of src at (x, y).

void sbmp8_hline ( const TSurface *  dst,
int  x1,
int  y,
int  x2,
u32  clr 
)

Draw a horizontal line on an 8-bit buffer.

Parameters:
dst Destination surface.
x1 First X-coord.
y Y-coord.
x2 Second X-coord.
clr Color.
Note:
Does normalization, but not bounds checks.

void sbmp8_line ( const TSurface *  dst,
int  x1,
int  y1,
int  x2,
int  y2,
u32  clr 
)

Draw a line on an 8-bit buffer.

Parameters:
dst Destination surface.
x1 First X-coord.
y1 First Y-coord.
x2 Second X-coord.
y2 Second Y-coord.
clr Color.
Note:
Does normalization, but not bounds checks.

void sbmp8_plot ( const TSurface *  dst,
int  x,
int  y,
u32  clr 
)

Plot a single pixel on a 8-bit buffer.

Parameters:
dst Destination surface.
x X-coord.
y Y-coord.
clr Color.
Note:
Slow as fuck. Inline plotting functionality if possible.

void sbmp8_rect ( const TSurface *  dst,
int  left,
int  top,
int  right,
int  bottom,
u32  clr 
)

Draw a rectangle in 8-bit mode.

Parameters:
dst Destination surface.
left Left side of rectangle;
top Top side of rectangle.
right Right side of rectangle.
bottom Bottom side of rectangle.
clr Color.
Note:
Does normalization, but not bounds checks.

void sbmp8_vline ( const TSurface *  dst,
int  x,
int  y1,
int  y2,
u32  clr 
)

Draw a vertical line on an 8-bit buffer.

Parameters:
dst Destination surface.
x X-coord.
y1 First Y-coord.
y2 Second Y-coord.
clr Color.
Note:
Does normalization, but not bounds checks.


Generated on Mon Aug 25 17:03:57 2008 for libtonc by  doxygen 1.5.3