Hi Jac
All my Hedghogs don't have that problem.
Only once have I ever seen anything like that and in that case I traced it to a faulty modulator chip. But it did look different to what is displayed in your photo. It looked more like ignition noise.
Have you try a different power supply?
If you have a separate System A modulator you could take a look at the video coming out of the Video out socket. That would tell you if the problem is in the modulator or before it.
If it is heat sensitive you could try tracking it down with a hairdryer and freezer spray.
Frank
Hi Frank,
I have tried different power supplies. It makes no difference.
It is not the modulator chip, since this is taken from the video 405 out socket. Or can the modulator chip influence things in an other way? (It is the same with both modulators switched off.)
Jac
edit: A stupid thing, but I have some hope it is in the monitor. I'll try a 405 line set later and let you know.
Very good news:
Nothing visible on the two 405 lines I tried!
So it must originate in this little TV...
I always advise people to double check results, but obviously I do not have the discipline to do so myself....
Mea culpa.
Jac
Hi Jac.
Great you got it sorted.
Frank
yes... my own stupidity.
I should have confirmed the twitching on an other set - it would have taken less time than trying to capture it on a photo.
Jac
We've all been fooled by faults over the years. The laws of physics continue to function.
I don't understand the other problem that Jac showed me in his 567 line experiments. The main output vertical count runs from 0 to N-2. Would normally be N-1 but the reset is pipelined. Reset at 565 (correct for 567 lines) gives a horizontal shift in the picture, 563 works OK.
Quote: if FRAME_RESET = '1' and SW_8A = '1' then V_COUNT <= 403; ODD_FIELD <= false;
elsif FRAME_RESET = '1' and SW_8A = '0' then V_COUNT <= 563; ODD_FIELD <= false; -- was 563
elsif H_RESET then -- H_RESET
V_RESET <= V_COUNT = (LINES_IN_A_FRAME - 2);
if V_RESET then V_COUNT <= 0; ODD_FIELD <= not ODD_FIELD;
else V_COUNT <= V_COUNT + 1;
end if;
It may be something like this. All vertical operations should have a clock enable from an H or H/2 pulse. In this bit of code the CE (H_RESET) is within the IF statement, not outside it. So FRAME_RESET is acting at different point on the line to the self reset.
Jac
It has happened to us all.
Jeffrey
I suspect the reason for the horizontal shift in the picture is due to the need to stop reading from the time redistribution memory for one line during the frame blanking period.
I cant think of the reason right now but the line chosen is critical or horizontal shift or other problems will occur.
Changing the line for 567 will most lightly cure that problem.
Quote:if LINE_PIXEL_COUNT >= MEM_RD_START and LINE_PIXEL_COUNT <= MEM_RD_STOP then AVID_LINE <= '1';
else AVID_LINE <= '0';
end if;
-- stop reading from fifo_tr for 1 line -- 2 3
if (V_COUNT = 16 or V_COUNT = 17) and ODD_FIELD then RD_EN <= '0'; else RD_EN <= AVID_LINE;
end if;
Frank
Frank & Jeffrey,
Changing V_COUNT to 567 gives largely the same picture as 565, but now vertical sync is gone. (563 works.)
Jac
Hi Jac
For 567 lines, in the above snippet of code from the file out_405 you will need to change the values "16" and "17"
if (V_COUNT = 16 or V_COUNT = 17) and ODD_FIELD then RD_EN <= '0'; else RD_EN <= AVID_LINE;
Possibly changing to
if (V_COUNT = 18 or V_COUNT = 19) and ODD_FIELD then RD_EN <= '0'; else RD_EN <= AVID_LINE;
may work.
If not you could try some different values.
Frank
Thanks Frank,
I tried 565 and (V_COUNT = 18 or V_COUNT = 19). This works. On the screen it looks the same as 563 and 16/17.
With 567 I tried 17/18, 18/19, 19/20, and 20/21. None of these combinations work.
I still have to try if 18 / 19 also works for 405 lines (with V_COUNT <= 403).
Perhaps there is no disadvantage to stick to 563 (and 16/17).
Jac