Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 530 → Rev 531

/shark/trunk/drivers/fb/fun16.c
208,6 → 208,22
}
 
void grx_clear(DWORD color)
{
if (!grx_info || grx_info->var.bits_per_pixel != 16) return;
 
DWORD addr;
WORD dx, y;
addr = (DWORD)(grx_info->screen_base);
dx = grx_info->var.xres * 2;
for (y = 0; y < grx_info->var.yres; y++) {
memsetw((LIN_ADDR)addr, color, dx);
addr += dx;
}
}
 
void grx_rect(WORD x1, WORD y1, WORD x2, WORD y2, DWORD color)
{
WORD bpr;
264,6 → 280,8
int xerr=0, yerr=0, deltax, deltay;
int incx, incy;
 
if (!grx_info || grx_info->var.bits_per_pixel != 16) return;
 
bpr = grx_info->var.xres * 2;
addr = (DWORD)(grx_info->screen_base);
deltax = x2 - x1; /* compute both distances */
330,6 → 348,9
 
static void circlepixels(WORD x, WORD y, WORD sx, WORD sy, DWORD c)
{
 
if (!grx_info || grx_info->var.bits_per_pixel != 16) return;
 
grx_plot(sx + x, sy + y, c);
grx_plot(sx - x, sy + y, c);
grx_plot(sx + x, sy - y, c);
369,6 → 390,9
 
static __inline__ void discpixels(WORD x, WORD y, WORD sx, WORD sy, DWORD c)
{
 
if (!grx_info || grx_info->var.bits_per_pixel != 16) return;
 
grx_line(sx + x, sy + y, sx + x, sy - y, c);
grx_line(sx - x, sy + y, sx - x, sy - y, c);
grx_line(sx + y, sy + x, sx + y, sy - x , c);
/shark/trunk/drivers/fb/include/drivers/shark_fb26.h
43,6 → 43,7
void grx_getimage(WORD x1, WORD y1, WORD x2, WORD y2, BYTE *buf);
void grx_putimage(WORD x1, WORD y1, WORD x2, WORD y2, BYTE *buf);
void grx_box(WORD x1, WORD y1, WORD x2, WORD y2, DWORD color);
void grx_clear(DWORD color);
void grx_rect(WORD x1, WORD y1, WORD x2, WORD y2, DWORD color);
void grx_line(WORD x1, WORD y1, WORD x2, WORD y2, DWORD color);
void grx_text(char *text, WORD x, WORD y, DWORD fg, DWORD bg);
49,5 → 50,16
void grx_circle(WORD x, WORD y, WORD r, DWORD col);
void grx_disc(WORD x, WORD y, WORD r, DWORD col);
 
/* 15bpp, 16bpp, 24bpp and 32bpp colors... */
#define color15(r, g, b) (((WORD)(r & 0x1F) << 10) | ((WORD)(g & 0x1F) << 5) | ((WORD)(b & 0x1F)))
#define color16(r, g, b) (((WORD)(r & 0x1F) << 11) | ((WORD)(g & 0x3F) << 5) | ((WORD)(b & 0x1F)))
#define color24(r, g, b) (((DWORD)(r & 0xFF) << 16) | ((DWORD)(g & 0xFF) << 8) | (DWORD)(b & 0xFF))
#define color32(r, g, b) (((DWORD)(r & 0xFF) << 16) | ((DWORD)(g & 0xFF) << 8) | (DWORD)(b & 0xFF))
#define rgb15(r, g, b) ((((WORD)(r & 0xF8)>>3) << 10) | (((WORD)(g & 0xF8)>>3) << 5) | ((WORD)(b & 0xF8)>>3))
#define rgb16(r, g, b) ((((WORD)(r & 0xF8)>>3) << 11) | (((WORD)(g & 0xFC)>>2) << 5) | ((WORD)(b & 0xF8)>>3))
#define rgb24(r, g, b) (((DWORD)(r & 0xFF) << 16) | ((DWORD)(g & 0xFF) << 8) | (DWORD)(b & 0xFF))
#define rgb32(r, g, b) (((DWORD)(r & 0xFF) << 16) | ((DWORD)(g & 0xFF) << 8) | (DWORD)(b & 0xFF))
 
#endif