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

Subversion Repositories eco32

[/] [eco32/] [tags/] [eco32-0.25/] [fpga/] [src/] [dsp/] [bpp9/] [pixel.v] - Blame information for rev 27

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 hellwig
module pixel(clk, pixclk, attcode,
2
             pixel, blank, hsync_in, vsync_in, blink,
3
             r, g, b, hsync, vsync);
4
    input clk;
5
    input pixclk;
6
    input [7:0] attcode;
7
    input pixel;
8
    input blank;
9
    input hsync_in;
10
    input vsync_in;
11
    input blink;
12
    output reg [2:0] r;
13
    output reg [2:0] g;
14
    output reg [2:0] b;
15
    output reg hsync;
16
    output reg vsync;
17
 
18
  wire blink_bit;
19
  wire bg_red;
20
  wire bg_green;
21
  wire bg_blue;
22
  wire inten_bit;
23
  wire fg_red;
24
  wire fg_green;
25
  wire fg_blue;
26
  wire foreground;
27
  wire intensify;
28
  wire red;
29
  wire green;
30
  wire blue;
31
 
32
  assign blink_bit = attcode[7];
33
  assign bg_red = attcode[6];
34
  assign bg_green = attcode[5];
35
  assign bg_blue = attcode[4];
36
  assign inten_bit = attcode[3];
37
  assign fg_red = attcode[2];
38
  assign fg_green = attcode[1];
39
  assign fg_blue = attcode[0];
40
 
41
  assign foreground = pixel & ~(blink_bit & blink);
42
  assign intensify = foreground & inten_bit;
43
 
44
  assign red = (foreground ? fg_red : bg_red);
45
  assign green = (foreground ? fg_green : bg_green);
46
  assign blue = (foreground ? fg_blue : bg_blue);
47
 
48
  always @(posedge clk) begin
49
    if (pixclk == 1) begin
50
      r[2] <= blank & red;
51
      r[1] <= blank & intensify;
52
      r[0] <= blank & red & intensify;
53
      g[2] <= blank & green;
54
      g[1] <= blank & intensify;
55
      g[0] <= blank & green & intensify;
56
      b[2] <= blank & blue;
57
      b[1] <= blank & intensify;
58
      b[0] <= blank & blue & intensify;
59
      hsync <= hsync_in;
60
      vsync <= vsync_in;
61
    end
62
  end
63
 
64
endmodule

powered by: WebSVN 2.1.0

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