OpenCores
URL https://opencores.org/ocsvn/openfire2/openfire2/trunk

Subversion Repositories openfire2

[/] [openfire2/] [trunk/] [sw/] [vga/] [vga_drawpixel.c] - Blame information for rev 6

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 toni32
#include "vga.h"
2
 
3
void vga_drawpixel(unsigned short x, unsigned short y, unsigned short color)
4
{
5
  unsigned ptr = (unsigned) &_VIDEO_RAM_ADDR;
6
 
7
  unsigned short pixel, mascara = 0x7;
8
  unsigned short w = x / 5;                     /* word donde esta el pixel */
9
  unsigned short p = 12 - (x % 5) * 3;  /* obtenemos el # de pixel dentro del grupo */
10
 
11
  ptr += y * 256 + w * 2;
12
 
13
  pixel = *(unsigned short *) ptr;      /* obtenemos el valor del grupo de 5 pixels */
14
  mascara = ~(0x7 << p);                /* mascara para el pixel */
15
  color <<= p;                          /* ponemos el pixel en su sitio */
16
 
17
  pixel &= mascara;     /* aplicamos la mascara en el pixel actual */
18
  pixel |= color;       /* dibujamos el pixel en el hueco de la mascara */
19
 
20
  *(unsigned short *) ptr = pixel;
21
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.