From 45756f682da48f2e53b78e887a0d48d2049d709b Mon Sep 17 00:00:00 2001 From: Steven Hugg Date: Sun, 7 Jan 2018 16:57:17 -0600 Subject: [PATCH] changed CRT timing --- package.json | 3 ++- presets/verilog/ball_slip_counter.v | 2 +- presets/verilog/hvsync_generator.v | 8 ++++---- src/platform/verilog.js | 7 ++++--- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 577ee4c4..4fac35b8 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "dependencies": {}, "devDependencies": { "mocha": "^3.2.0", - "mocha-phantomjs": "^4.1.0" + "mocha-phantomjs": "^4.1.0", + "wavedrom-cli": "^0.5.0" }, "description": "8bitworkshop.com", "main": "main.js", diff --git a/presets/verilog/ball_slip_counter.v b/presets/verilog/ball_slip_counter.v index a9a845fc..06402cec 100644 --- a/presets/verilog/ball_slip_counter.v +++ b/presets/verilog/ball_slip_counter.v @@ -13,7 +13,7 @@ module ball_paddle_top(clk, reset, hsync, vsync, rgb); reg [8:0] ball_htimer; reg [8:0] ball_vtimer; - reg [8:0] ball_horiz_stop = 209; + reg [8:0] ball_horiz_stop = 204; reg [8:0] ball_horiz_move = -2; reg [8:0] ball_vert_stop = 251; reg [8:0] ball_vert_move = 2; diff --git a/presets/verilog/hvsync_generator.v b/presets/verilog/hvsync_generator.v index e41b75c3..5fbe589b 100644 --- a/presets/verilog/hvsync_generator.v +++ b/presets/verilog/hvsync_generator.v @@ -13,9 +13,9 @@ module hvsync_generator( // constant declarations for TV-simulator sync parameters localparam H_DISPLAY = 256; // horizontal display area - localparam H_L_BORDER = 16; // horizontal left border - localparam H_R_BORDER = 16; // horizontal right border - localparam H_RETRACE = 16; // horizontal retrace + localparam H_L_BORDER = 23; // horizontal left border (back porch) + localparam H_R_BORDER = 7; // horizontal right border (front porch) + localparam H_RETRACE = 23; // horizontal retrace (sync) localparam H_MAX = H_DISPLAY + H_L_BORDER + H_R_BORDER + H_RETRACE - 1; localparam START_H_RETRACE = H_DISPLAY + H_R_BORDER; localparam END_H_RETRACE = H_DISPLAY + H_R_BORDER + H_RETRACE - 1; @@ -23,7 +23,7 @@ module hvsync_generator( localparam V_DISPLAY = 240; // vertical display area localparam V_T_BORDER = 4; // vertical top border localparam V_B_BORDER = 14; // vertical bottom border - localparam V_RETRACE = 4; // vertical retrace + localparam V_RETRACE = 4; // vertical retrace (sync) localparam V_MAX = V_DISPLAY + V_T_BORDER + V_B_BORDER + V_RETRACE - 1; localparam START_V_RETRACE = V_DISPLAY + V_B_BORDER; localparam END_V_RETRACE = V_DISPLAY + V_B_BORDER + V_RETRACE - 1; diff --git a/src/platform/verilog.js b/src/platform/verilog.js index a45a9d7f..daa9478c 100644 --- a/src/platform/verilog.js +++ b/src/platform/verilog.js @@ -170,8 +170,9 @@ function VerilatorBase() { var VerilogPlatform = function(mainElement, options) { var self = this; var video, audio; - var videoWidth = 288; + var videoWidth = 304; var videoHeight = 248; + var maxVideoBlankLines = 80; var idata, timer; var gen; var frameRate = 60; @@ -263,8 +264,8 @@ var VerilogPlatform = function(mainElement, options) { while (gen.hsync && z++