diff options
-rw-r--r-- | abc80.v | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -1080,16 +1080,25 @@ module abc80 ( .strobe ( key1_strobe ) ); + reg video_width_sw_q; + always @(negedge rst_n or posedge cpu_clk) begin if ( ~rst_n ) - video_width <= ~sw[9]; // Set SW9 to go to 40 column after reset + begin + video_width <= 1'b0; + video_width_sw_q <= 1'b0; + end else begin + video_width_sw_q <= ~sw[9]; + if ( ~abc_in_n[3] ) video_width <= 1'b0; else if ( ~abc_in_n[4] ) video_width <= 1'b1; + else if ( ~sw[9] ^ video_width_sw_q ) + video_width <= ~sw[9]; else if ( key1_strobe & key1_debounced ) video_width <= ~video_width; end @@ -1196,7 +1205,7 @@ module abc80 ( wire intio_sel; // Selected for access via I/O ports reg [7:0] intio_do; // Data out from MMU I/O ports reg intio_sel_q; - reg abc_out_7_q; + reg abc_out_7_q; reg turbo_set; reg nmi_dis; |