@@ -35,18 +35,18 @@ module osd_generator_top (
3535 input [11 : 0 ] xpos,
3636 input [10 : 0 ] ypos,
3737 output reg osd_enable,
38- output reg [1 : 0 ] osd_color
38+ output reg [2 : 0 ] osd_color
3939);
4040
4141localparam CHAR_ROWS = 25 ;
4242localparam CHAR_COLS = 20 ;
4343localparam CHAR_SECTIONS = 2 ;
4444localparam CHAR_SEC_SEPARATOR = 2 ;
4545
46- localparam BG_BLACK = 2 'h0 ;
47- localparam BG_BLUE = 2 'h1 ;
48- localparam BG_YELLOW = 2'h2 ;
49- localparam BG_WHITE = 2'h3 ;
46+ localparam BG_BLACK = 3 'h0 ;
47+ localparam BG_BLUE = 3 'h1 ;
48+ localparam BG_YELLOW = 3'h6 ;
49+ localparam BG_WHITE = 3'h7 ;
5050
5151localparam OSD_CONFIG_REGNUM = 8'hfa ;
5252localparam OSD_ROW_LSEC_ENABLE_REGNUM = 8'hfb ;
@@ -71,7 +71,8 @@ wire [2:0] x_offset = osd_config[7:5];
7171wire [2 : 0 ] y_offset = osd_config[10 : 8 ];
7272wire [1 : 0 ] x_size = osd_config[12 : 11 ];
7373wire [1 : 0 ] y_size = osd_config[14 : 13 ];
74- wire [1 : 0 ] border_color = osd_config[16 : 15 ];
74+ wire [2 : 0 ] border_color = osd_config[17 : 15 ];
75+ wire [2 : 0 ] highlight_color = osd_config[20 : 18 ];
7576
7677wire [11 : 0 ] xpos_scaled_w = (xpos >> x_size)- ({ 3'h0 , x_offset} << 3 );
7778wire [10 : 0 ] ypos_scaled_w = (ypos >> y_size)- ({ 3'h0 , y_offset} << 3 );
@@ -147,7 +148,7 @@ always @(posedge vclk) begin
147148
148149 if (osd_text_act_pp[6 ]) begin
149150 if (char_px) begin
150- osd_color <= config_reg[OSD_ROW_COLOR_REGNUM ][char_row] ? BG_YELLOW : BG_WHITE ;
151+ osd_color <= config_reg[OSD_ROW_COLOR_REGNUM ][char_row] ? highlight_color : BG_WHITE ;
151152 end else begin
152153 osd_color <= BG_BLUE ;
153154 end
0 commit comments