remove char_seen from display; update todo

This commit is contained in:
nino-porcino 2022-01-08 13:53:02 +01:00
parent d2db7d0b53
commit 5445cd8335
2 changed files with 6 additions and 18 deletions

View File

@ -11,17 +11,14 @@
// TODO ram powerup initial values // TODO ram powerup initial values
// TODO reorganize file structure // TODO reorganize file structure
// TODO ACI: wav tools // TODO ACI: wav tools
// TODO ACI: audio monitor menu option // TODO A-F chip selection banks?
// TODO more accurate chip selection circuit
// TODO check diff with updated data_io.v and other modules // TODO check diff with updated data_io.v and other modules
// TODO why F5 (reset) can't be pressed twice // TODO why F5 (reset) can't be pressed twice
// TODO keyboard: use a PIA // TODO keyboard: use a PIA
// TODO keyboard: isolate ps2 keyboard from apple1 // TODO keyboard: isolate ps2 keyboard from apple1
// TODO keyboard: check ps2 clock // TODO keyboard: check ps2 clock
// TODO keyboard: make a true ascii keyboard // TODO keyboard: make a true ascii keyboard
// TODO keyboard: check backspace key
// TODO osd menu yellow, why it doesn't work? // TODO osd menu yellow, why it doesn't work?
// TODO display: remove char_seen
// TODO display: check NTSC AD724 hsync problem // TODO display: check NTSC AD724 hsync problem
// TODO display: powerup values // TODO display: powerup values
// TODO display: simplify rom font // TODO display: simplify rom font

View File

@ -66,14 +66,9 @@ module display (
wire [4:0] font_line; wire [4:0] font_line;
wire font_out; wire font_out;
// cpu control registers
reg char_seen;
// active region strobes // active region strobes
wire h_active = (h_cnt >= hbp && h_cnt < hfp); wire h_active = (h_cnt >= hbp && h_cnt < hfp);
wire v_active = (v_cnt >= vbp && v_cnt < vfp); wire v_active = (v_cnt >= vbp && v_cnt < vfp);
// horizontal and vertical counters // horizontal and vertical counters
always @(posedge sys_clock or posedge reset) begin always @(posedge sys_clock or posedge reset) begin
@ -207,8 +202,7 @@ module display (
begin begin
if (reset) begin if (reset) begin
h_cursor <= 6'd0; h_cursor <= 6'd0;
v_cursor <= 5'd0; v_cursor <= 5'd0;
char_seen <= 'b0;
vram_start_addr <= 5'd0; vram_start_addr <= 5'd0;
vram_end_addr <= 5'd24; vram_end_addr <= 5'd24;
ready <= 0; ready <= 0;
@ -250,10 +244,9 @@ module display (
if (address == 1'b0) // address low == TX register if (address == 1'b0) // address low == TX register
begin begin
if (cpu_clken & w_en /*& ~char_seen*/ & ready) if (cpu_clken & w_en & ready)
begin begin
// incoming character // incoming character
char_seen <= 1;
ready <= 0; ready <= 0;
case(din) case(din)
@ -279,9 +272,7 @@ module display (
h_cursor <= h_cursor + 1; h_cursor <= h_cursor + 1;
end end
endcase endcase
end end
else if(~cpu_clken & ~w_en)
char_seen <= 0;
end end
else else
begin begin