aboutsummaryrefslogtreecommitdiff
path: root/basys3/basys3.srcs/ppu_dispctl.vhd
diff options
context:
space:
mode:
Diffstat (limited to 'basys3/basys3.srcs/ppu_dispctl.vhd')
-rw-r--r--basys3/basys3.srcs/ppu_dispctl.vhd13
1 files changed, 6 insertions, 7 deletions
diff --git a/basys3/basys3.srcs/ppu_dispctl.vhd b/basys3/basys3.srcs/ppu_dispctl.vhd
index 1465a58..ce53557 100644
--- a/basys3/basys3.srcs/ppu_dispctl.vhd
+++ b/basys3/basys3.srcs/ppu_dispctl.vhd
@@ -15,7 +15,7 @@ entity ppu_dispctl is port(
RO,GO,BO : out std_logic_vector(PPU_COLOR_OUTPUT_DEPTH-1 downto 0); -- VGA color out
NVSYNC, NHSYNC : out std_logic; -- VGA sync out
- THBLANK, TVBLANK : out std_logic; -- tiny sync signals
+ THBLANK, TVBLANK : out std_logic := '0'; -- tiny sync signals
ACTIVE : out std_logic); -- screen currently active (currently same for tiny/native, TODO: offset tiny for first scanline)
end ppu_dispctl;
@@ -73,7 +73,6 @@ begin
-- tiny VCOUNT and HCOUNT
process(TPIXCLK, NPIXCLK, RESET)
variable TMP_T_POS_X : unsigned(PPU_SCREEN_T_POS_X_WIDTH-1 downto 0) := (others => '0');
- variable TMP_THBLANK, TMP_TVBLANK : std_logic := '0';
variable TMP_NHCOUNT, TMP_NVCOUNT : unsigned(PPU_VGA_SIGNAL_PIXEL_WIDTH-1 downto 0) := (others => '0');
variable TMP_NHACTIVE, TMP_NVACTIVE : std_logic := '0';
variable TMP_NHSYNC, TMP_NVSYNC : std_logic := '0';
@@ -84,8 +83,6 @@ begin
TMP_NVCOUNT := (others => '0');
TMP_NHACTIVE := '0';
TMP_NVACTIVE := '0';
- TMP_THBLANK := '0'; -- TODO
- TMP_TVBLANK := '0'; -- TODO
TMP_NVSYNC := '0';
TMP_NHSYNC := '0';
end if;
@@ -135,9 +132,6 @@ begin
if falling_edge(TPIXCLK) then -- NOTE: falling edge used because of clock offset of 90 (should be 270)
T_POS_X <= TMP_T_POS_X;
- THBLANK <= TMP_THBLANK;
- TVBLANK <= TMP_TVBLANK;
-
if TMP_NACTIVE = '1' then
TMP_T_POS_X := TMP_T_POS_X + 1;
if TMP_T_POS_X >= PPU_SCREEN_WIDTH then
@@ -165,4 +159,9 @@ begin
reset => RESET,
npxclk => NPIXCLK,
tpxclk => TPIXCLK);
+
+ THBLANK <= (not NHACTIVE) and NVACTIVE and nor(T_POS_X);
+ TVBLANK <= not NVACTIVE;
+ --THBLANK <= '0';
+ --TVBLANK <= '0';
end Behavioral;