diff --git a/src/term_renderer.v b/src/term_renderer.v index b0f49e5..038a149 100644 --- a/src/term_renderer.v +++ b/src/term_renderer.v @@ -71,7 +71,7 @@ reg [11:0] glyph_y; reg [FONT_GLYPH_W-1:0] glyph_sreg_out; reg [5:0] px_x; reg [5:0] px_y; -reg in_hsync_last, in_vsync_last; +reg in_hsync_last, in_vsync_last, in_blank_last; wire [7:0] gm_data_glyph = glyphmem_data[7:0]; wire [11:0] gm_data_style = glyphmem_data[19:8]; @@ -98,6 +98,7 @@ always @(posedge clk) begin px_y <= 0; in_hsync_last <= 0; in_vsync_last <= 0; + in_blank_last <= 0; glyph_sreg_out <= 0; glyphmem_style_reg <= 0; newline_found <= 0; @@ -105,8 +106,9 @@ always @(posedge clk) begin end else begin in_hsync_last <= in_hsync; in_vsync_last <= in_vsync; + in_blank_last <= in_blank; - if (in_hsync_last && !in_hsync) begin + if (!in_blank_last && in_blank) begin glyph_x <= 0; px_x <= 0; newline_found <= 0; @@ -118,7 +120,9 @@ always @(posedge clk) begin px_y <= 0; end - end else if (!in_blank) begin + end + + if (!in_blank) begin if (px_x != FONT_GLYPH_W-1) begin px_x <= px_x + 1;