Shuriken Video

Find all your GameCube topics here
Locked
happy_bunny
Posts: 106
Joined: Mon Mar 09, 2015 10:57 pm

Re: Shuriken Video

Post by happy_bunny » Tue Aug 25, 2015 10:43 pm

ok so I tried to compile the gcvideo-dvi 2.0 code for my board but it didnt fit, 112% overmapping :-( bad days but ... unseen is a star and saved the day :-) he sent me a cut down version of the infoframe vhdl which got me close 107% overmapping to get the dam thing to fit I had to remove spif vhdl code 99% mapped now.

I have uploaded the now code on my website, I have tried it on the TV and monitor I own seems to produce the audio output over HDMI good work unseen and thanks for the info frame vhdl code.
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Fri Aug 28, 2015 8:33 pm

happy_bunny wrote:ok so I tried to compile the gcvideo-dvi 2.0 code for my board but it didnt fit, 112% overmapping :-( bad days but ... unseen is a star and saved the day :-) he sent me a cut down version of the infoframe vhdl which got me close 107% overmapping to get the dam thing to fit I had to remove spif vhdl code 99% mapped now.

I have uploaded the now code on my website, I have tried it on the TV and monitor I own seems to produce the audio output over HDMI good work unseen and thanks for the info frame vhdl code.
Thank you happy_bunny flashed my shuriken video audio is working great. Do you think you could compile the code so I could use the xilinx xcs200a so we can have OSD and everything the GCvideo-DVI has. I would even pay you for your time to do it I can't code so :(
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Sun Aug 30, 2015 3:19 am

WHAT A GREAT NEWS FOR US!

thank you!
Wild Scientist
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Sun Aug 30, 2015 4:48 am

@happy_bunny, I've tested your new firmware, but I can't get any video/audio output on my TV, it's not hardware fail because when I flash the old firmware (0.2 version), it works again.
Wild Scientist
happy_bunny
Posts: 106
Joined: Mon Mar 09, 2015 10:57 pm

Re: Shuriken Video

Post by happy_bunny » Sun Aug 30, 2015 7:16 am

Oh thats a bit weird does version 0.3 work on your tv
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Sun Aug 30, 2015 2:45 pm

New update seems to be fine for me.
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Thu Sep 03, 2015 3:00 am

happy_bunny wrote:Oh thats a bit weird does version 0.3 work on your tv
0.3 half works, it has some green noise pixels on screen, here are some photos taken from my TV:

Image
Image
Image
Image

I've tried 0.4 again, still no HDMI signal to TV.
Wild Scientist
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Thu Sep 03, 2015 3:08 am

HyperIris wrote:
happy_bunny wrote:Oh thats a bit weird does version 0.3 work on your tv
0.3 half works, it has some green noise pixels on screen, here are some photos taken from my TV:

Image
Image
Image
Image

I've tried 0.4 again, still no HDMI signal to TV.
Indeed it seems that 0.3 has fried my FPGA. I don't think it could Handle it after 1 hour of gameplay its dead. Going to have to order more pcbs and build again i sold my other 2
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Thu Sep 03, 2015 3:14 am

I have enough FPGAs and PCBs for build other 8 boards, so this is not a problem.
Wild Scientist
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Thu Sep 03, 2015 3:21 am

HyperIris wrote:I have enough FPGAs and PCBs for build other 8 boards, so this is not a problem.
That really doesn't solve my problem. I really dont want to use this FPGA again i would rather buy a xcs200a instead so i could have all options and osd. Im away from home right now and bring this cube with me to pass time. Go thing i have my regular av cable
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Shuriken Video

Post by megalomaniac » Thu Sep 03, 2015 6:24 am

andre104623 wrote: Indeed it seems that 0.3 has fried my FPGA. I don't think it could Handle it after 1 hour of gameplay its dead. Going to have to order more pcbs and build again i sold my other 2
0.3 fried the FPGA??? what?
can you elaborate on this?
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Shuriken Video

Post by megalomaniac » Thu Sep 03, 2015 6:45 am

Image
Attachments
cute.jpg
(167.94 KiB) Not downloaded yet
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
happy_bunny
Posts: 106
Joined: Mon Mar 09, 2015 10:57 pm

Re: Shuriken Video

Post by happy_bunny » Thu Sep 03, 2015 7:46 am

@andre104623

which update did you use audio over HDMI (0.4)? or the older one 0.3, is the fpga burnt? If not can you do me a favour when you get home can you check the outputs of the 1.2 vreg and 5 vreg please.

I want to know if the TV was back feeding voltage into the 5 vreg and the 100 ohms resistor didnt protect it and that popped or the 1.2 vreg gave up. The 1.2 vreg is the same as the pluto board but the input and ouput caps are different maybe they need to be beefed up.

between the wife / kids and work I dont have time to do another spin of the board with the bigger fpga on, hopefully at xmas I can look again. Saying that the kids will probably want to play with daddy all xmas so I not use if I will be able to do anything :-(

@hyperIris will do a diff between the 0.2 and 0.3 tonight and see what I did. Cant remember the differences now, maybe I can spot something wrong.
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Thu Sep 03, 2015 3:31 pm

happy_bunny wrote: @hyperIris will do a diff between the 0.2 and 0.3 tonight and see what I did. Cant remember the differences now, maybe I can spot something wrong.
I've done diff between the 0.2 and 0.3 source, I think there is NOT ANY wrong in your modification. the only different is audio part.

So I really can't understand why, may be timing?
Wild Scientist
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Thu Sep 03, 2015 6:47 pm

megalomaniac wrote:
andre104623 wrote: Indeed it seems that 0.3 has fried my FPGA. I don't think it could Handle it after 1 hour of gameplay its dead. Going to have to order more pcbs and build again i sold my other 2
0.3 fried the FPGA??? what?
can you elaborate on this?
I'm not home right now I won't be for a few days but "I'm guessing" that the update fried my FPGA I don't know for sure. It was working fine for a while I have it hooked up at the hotel I was staying at last night and all the sudden the picture started to flicker and cut in and out then nothing no video or audio. I won't be able to flash the older version till I get home the cube still works fine from normal AV cables
Last edited by andre104623 on Thu Sep 03, 2015 6:51 pm, edited 1 time in total.
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Thu Sep 03, 2015 6:51 pm

happy_bunny wrote:@andre104623

which update did you use audio over HDMI (0.4)? or the older one 0.3, is the fpga burnt? If not can you do me a favour when you get home can you check the outputs of the 1.2 vreg and 5 vreg please.

I want to know if the TV was back feeding voltage into the 5 vreg and the 100 ohms resistor didnt protect it and that popped or the 1.2 vreg gave up. The 1.2 vreg is the same as the pluto board but the input and ouput caps are different maybe they need to be beefed up.

between the wife / kids and work I dont have time to do another spin of the board with the bigger fpga on, hopefully at xmas I can look again. Saying that the kids will probably want to play with daddy all xmas so I not use if I will be able to do anything :-(

@hyperIris will do a diff between the 0.2 and 0.3 tonight and see what I did. Cant remember the differences now, maybe I can spot something wrong.
I was using the older 0.3 update. When I get home I will check everything caps, resistors, and regulators. I will say that the FPGA seemed to get hot after the update I been using this PCB for sometime now without problems. I never used this TV before since I was in a hotel but it was a newer sony LED TV. About half of the PCB sticks out the back of my cube so I can easily see the FPGA and with the 0.2 update the fpga would be warm after an hour of use but with this update it was hot like very hot seemed to me it overheated. There wasnt any smoke or anything like that or any damage like burned pins I was thinking that the FPGA doesn't have enough block ram to have the audio over HDMI so it overheated
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Thu Sep 03, 2015 7:32 pm

megalomaniac wrote:Image
LOL I can see it now. That's funny
User avatar
Unseen
Posts: 190
Joined: Fri Jul 04, 2014 11:52 am

Re: Shuriken Video

Post by Unseen » Thu Sep 03, 2015 8:08 pm

andre104623 wrote:About half of the PCB sticks out the back of my cube so I can easily see the FPGA and with the 0.2 update the fpga would be warm after an hour of use but with this update it was hot like very hot seemed to me it overheated.
If I had to guess I would say latch-up or ESD damage - it is very unlikely that the damage is caused by the bitstream if the same bitstream works for other people.
I was thinking that the FPGA doesn't have enough block ram to have the audio over HDMI so it overheated
Nope - if it doesn't have enough block RAM, the synthesis will fail and no .bit file is generated.
Asking for support by PM is anti-social. Ask in an open forum instead, so other people can benefit from the answers!
happy_bunny
Posts: 106
Joined: Mon Mar 09, 2015 10:57 pm

Re: Shuriken Video

Post by happy_bunny » Thu Sep 03, 2015 8:38 pm

@andre104623

i have run this dol for an hour (using 0.5 update)

http://www.chadheim.com/projects/projec ... o-gamecube

its second level of quake 3, I can touch the fpga easy for a minute without it burning me I would say its warm 30C no more. Really weird it gets hot (it should never got really hot) did you have the spdif connector still soldered up? the only thing I can think is it dont like the spdif connector / wiring.

@HyperIris
I think its noise with only the video stuff only ond DCM block was used running at 54Mhz with audio you have two clock circuits running. I think the ground plane is jumping / noisy due to the clocks can you try this please (dam it didnt let me attach the vhdl) its from gcdv_decoder.vhd

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;

use work.video_defs.all;

entity gcdv_decoder is
port (
-- Gamecube signals
VClockI : in std_logic; -- 54 MHz clock, pin 2
VData : in std_logic_vector(7 downto 0);
CSel : in std_logic; -- "ClkSel" signal, pin 3

-- output clock enables
PixelClockEnable : out boolean; -- CE relative to input clock for complete pixels

-- video output
Video : out VideoY422
);
end gcdv_decoder;

architecture Behavioral of gcdv_decoder is
signal current_y : unsigned(7 downto 0);
signal current_cbcr : unsigned(7 downto 0);
signal current_flags: std_logic_vector(7 downto 0);

signal prev_csel : std_logic;
signal in_blanking: boolean;

signal input_30khz: boolean := false;
signal modecounter: natural range 0 to 3 := 0;

signal vdata_buf: std_logic_vector(7 downto 0);
signal csel_buf : std_logic;

begin

process (VClockI)
begin
if rising_edge(VClockI) then

-- buffer incoming data to relax timing
vdata_buf <= VData;
csel_buf <= CSel;

-- read cube signals
prev_csel <= csel_buf;

-- read cube signals
if prev_csel /= csel_buf then
-- csel has changed, current value is Y
current_y <= unsigned(vdata_buf);

if vdata_buf = x"00" then
-- in blanking, next color is flags
in_blanking <= true;
else
in_blanking <= false;
end if;

-- detect if it's a 15kHz or 30kHz video mode
modecounter <= 0;
if modecounter < 2 then
input_30khz <= true;
else
input_30khz <= false;
end if;

else
-- current value is color or flags
modecounter <= modecounter + 1;

-- read color just once in 15kHz mode
if (not input_30khz and modecounter = 1) or input_30khz then
if in_blanking then
current_flags <= vdata_buf;
else
current_cbcr <= unsigned(vdata_buf);
end if;
end if;
end if;

-- generate output signals
if prev_csel /= csel_buf then
-- output pixel data when the next Y value is received
PixelClockEnable <= true;
Video.Blanking <= in_blanking;
Video.HSync <= (current_flags(4) = '0');
Video.VSync <= (current_flags(5) = '0');
Video.CSync <= (current_flags(7) = '0');
Video.IsProgressive <= (current_flags(0) = '1');
Video.IsPAL <= (current_flags(1) = '1');
Video.IsEvenField <= (current_flags(6) = '1');

if in_blanking then
Video.PixelY <= x"10";
-- color during blanking is ignored by the 422-444 interpolator
--Video.PixelCbCr <= x"80";
else
Video.PixelY <= current_y;
Video.PixelCbCr <= current_cbcr;
end if;
Video.CurrentIsCb <= (csel_buf = '1');

Video.Is30kHz <= input_30kHz;

else
PixelClockEnable <= false;
end if;
end if;
end process;

end Behavioral;
Last edited by happy_bunny on Thu Sep 03, 2015 8:49 pm, edited 3 times in total.
happy_bunny
Posts: 106
Joined: Mon Mar 09, 2015 10:57 pm

Re: Shuriken Video

Post by happy_bunny » Thu Sep 03, 2015 8:41 pm

its got meneerbeer buffering code

signal vdata_buf: std_logic_vector(7 downto 0);
signal csel_buf : std_logic;

should help with the noise, bigger caps around the input and output to the 1.2v reg will also help.
andre104623
Posts: 661
Joined: Wed May 07, 2014 2:24 pm

Re: Shuriken Video

Post by andre104623 » Thu Sep 03, 2015 11:25 pm

happy_bunny wrote:@andre104623

i have run this dol for an hour (using 0.5 update)

http://www.chadheim.com/projects/projec ... o-gamecube

its second level of quake 3, I can touch the fpga easy for a minute without it burning me I would say its warm 30C no more. Really weird it gets hot (it should never got really hot) did you have the spdif connector still soldered up? the only thing I can think is it dont like the spdif connector / wiring.

@HyperIris
I think its noise with only the video stuff only ond DCM block was used running at 54Mhz with audio you have two clock circuits running. I think the ground plane is jumping / noisy due to the clocks can you try this please (dam it didnt let me attach the vhdl) its from gcdv_decoder.vhd

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;

use work.video_defs.all;

entity gcdv_decoder is
port (
-- Gamecube signals
VClockI : in std_logic; -- 54 MHz clock, pin 2
VData : in std_logic_vector(7 downto 0);
CSel : in std_logic; -- "ClkSel" signal, pin 3

-- output clock enables
PixelClockEnable : out boolean; -- CE relative to input clock for complete pixels

-- video output
Video : out VideoY422
);
end gcdv_decoder;

architecture Behavioral of gcdv_decoder is
signal current_y : unsigned(7 downto 0);
signal current_cbcr : unsigned(7 downto 0);
signal current_flags: std_logic_vector(7 downto 0);

signal prev_csel : std_logic;
signal in_blanking: boolean;

signal input_30khz: boolean := false;
signal modecounter: natural range 0 to 3 := 0;

signal vdata_buf: std_logic_vector(7 downto 0);
signal csel_buf : std_logic;

begin

process (VClockI)
begin
if rising_edge(VClockI) then

-- buffer incoming data to relax timing
vdata_buf <= VData;
csel_buf <= CSel;

-- read cube signals
prev_csel <= csel_buf;

-- read cube signals
if prev_csel /= csel_buf then
-- csel has changed, current value is Y
current_y <= unsigned(vdata_buf);

if vdata_buf = x"00" then
-- in blanking, next color is flags
in_blanking <= true;
else
in_blanking <= false;
end if;

-- detect if it's a 15kHz or 30kHz video mode
modecounter <= 0;
if modecounter < 2 then
input_30khz <= true;
else
input_30khz <= false;
end if;

else
-- current value is color or flags
modecounter <= modecounter + 1;

-- read color just once in 15kHz mode
if (not input_30khz and modecounter = 1) or input_30khz then
if in_blanking then
current_flags <= vdata_buf;
else
current_cbcr <= unsigned(vdata_buf);
end if;
end if;
end if;

-- generate output signals
if prev_csel /= csel_buf then
-- output pixel data when the next Y value is received
PixelClockEnable <= true;
Video.Blanking <= in_blanking;
Video.HSync <= (current_flags(4) = '0');
Video.VSync <= (current_flags(5) = '0');
Video.CSync <= (current_flags(7) = '0');
Video.IsProgressive <= (current_flags(0) = '1');
Video.IsPAL <= (current_flags(1) = '1');
Video.IsEvenField <= (current_flags(6) = '1');

if in_blanking then
Video.PixelY <= x"10";
-- color during blanking is ignored by the 422-444 interpolator
--Video.PixelCbCr <= x"80";
else
Video.PixelY <= current_y;
Video.PixelCbCr <= current_cbcr;
end if;
Video.CurrentIsCb <= (csel_buf = '1');

Video.Is30kHz <= input_30kHz;

else
PixelClockEnable <= false;
end if;
end if;
end process;

end Behavioral;
It wont burn me if i were to touch it. It just gets hot like if i had to guess maybe 90 to 100 Fahrenheit maybe more. Yes i did have the Spdif line hooked up Because it would have been a hassle removing it. Like i said i can build the pcbs but when it comes to troubleshooting Im kind of lost in that department i can still check all the components with a multimeter thats not a problem. When i get back on Monday hopefully i can figure this out but i want to flash the 0.2 update and see if its back to normal first
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Fri Sep 04, 2015 2:16 am

happy_bunny wrote: @HyperIris
I think its noise with only the video stuff only ond DCM block was used running at 54Mhz with audio you have two clock circuits running. I think the ground plane is jumping / noisy due to the clocks can you try this please (dam it didnt let me attach the vhdl) its from gcdv_decoder.vhd
This code works, it looks nice now. and I'll try 0.4 again now.
Wild Scientist
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Fri Sep 04, 2015 3:27 am

Oh... 0.4 version still very unstable...

look this, unstable video with noisy audio:

http://v.youku.com/v_show/id_XMTMyNjk3N ... s1.8-1-1.2
Wild Scientist
User avatar
megalomaniac
Posts: 2480
Joined: Sun Aug 21, 2011 5:33 am
Location: Drunk in Texas
Contact:

Re: Shuriken Video

Post by megalomaniac » Fri Sep 04, 2015 5:04 am

@HyperIris
with 0.4 or even 0.3 do you notice any elevated temperature of the chip?
if so, can you remove the spdif port and try the tests again to check thermal increase of the chip...
emu_kidid wrote: beer is like WD40 for megalomaniac's brain, gets the gears moving
>>> BadAssConsoles.com <<<

Image Image Image
HyperIris
Posts: 37
Joined: Fri Jul 30, 2010 12:58 pm
Location: China
Contact:

Re: Shuriken Video

Post by HyperIris » Fri Sep 04, 2015 5:37 am

megalomaniac wrote:@HyperIris
with 0.4 or even 0.3 do you notice any elevated temperature of the chip?
if so, can you remove the spdif port and try the tests again to check thermal increase of the chip...
no, I'm not connected the SPDIF port, the FPGA chip is cold (as room temperature).
Wild Scientist
Locked