<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Autopsy of a Mario-Kart brick (part 1)</title>
	<atom:link href="http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/feed/" rel="self" type="application/rss+xml" />
	<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/</link>
	<description>Notes from inside your Wii</description>
	<lastBuildDate>Mon, 30 Apr 2012 19:38:43 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Anatomy of a Mario-Kart Brick, pt 2</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-1041</link>
		<dc:creator>Anatomy of a Mario-Kart Brick, pt 2</dc:creator>
		<pubDate>Thu, 12 Jun 2008 10:55:18 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-1041</guid>
		<description>[...] a comment in my previous post, Galtor correctly picked up the path I was planning to go down, based on the files I linked to at the end. There are two [...]</description>
		<content:encoded><![CDATA[<p>[...] a comment in my previous post, Galtor correctly picked up the path I was planning to go down, based on the files I linked to at the end. There are two [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CAP9QD</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-1007</link>
		<dc:creator>CAP9QD</dc:creator>
		<pubDate>Sun, 08 Jun 2008 04:12:48 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-1007</guid>
		<description>Oh...I forgot that it doesnt show my email:

curtis (dot) parrott (at) gmail (dot) com</description>
		<content:encoded><![CDATA[<p>Oh&#8230;I forgot that it doesnt show my email:</p>
<p>curtis (dot) parrott (at) gmail (dot) com</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CAP9QD</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-1006</link>
		<dc:creator>CAP9QD</dc:creator>
		<pubDate>Sun, 08 Jun 2008 04:12:06 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-1006</guid>
		<description>I am working on a PCB for the FT2232D chip in Eagle PCB editor.  If anyone is interested I can order multiple PCBs and populate them with the necessary components and FTDI chip.  

Anyway...I am also playing around with the NAND interface above with my Xilinx CPLD devkit.  I&#039;m havnt done much VHDL/Veralog since my intro to logic class in college but its an interesting project.  

At any rate...if anyone wants the breakout let me know.  It seems to take the PCB fab house quite a bit of time to get my orders back to me but its cheaper; I use www.batchpcb.com.</description>
		<content:encoded><![CDATA[<p>I am working on a PCB for the FT2232D chip in Eagle PCB editor.  If anyone is interested I can order multiple PCBs and populate them with the necessary components and FTDI chip.  </p>
<p>Anyway&#8230;I am also playing around with the NAND interface above with my Xilinx CPLD devkit.  I&#8217;m havnt done much VHDL/Veralog since my intro to logic class in college but its an interesting project.  </p>
<p>At any rate&#8230;if anyone wants the breakout let me know.  It seems to take the PCB fab house quite a bit of time to get my orders back to me but its cheaper; I use <a href="http://www.batchpcb.com" rel="nofollow">http://www.batchpcb.com</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Newbie</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-816</link>
		<dc:creator>Newbie</dc:creator>
		<pubDate>Fri, 30 May 2008 20:40:03 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-816</guid>
		<description>Oh boy! I thought you completely forgot about this one!
I guess both A &amp; B are just a matter of time, right?
&lt;i&gt;Anyone know where to find the cheapest FT2232 board?&lt;/i&gt;
I did look again still the best price is on the link in post #56.
For US you can lookup same P/N on http://www.mouser.com
In general prices are ~30-40$
In addition there few sites offer “USB to serial” cables based on same chip (20$-30$), but it might be a hassle to solder on their PCB - i.e. isn&#039;t worth it (IMO!).
I was wondering if skiddd is still there. He might have better ideas!
I had an impression you were sunken completely in HBC &amp; SbFDfA3R. I’m so happy you are back! :-)</description>
		<content:encoded><![CDATA[<p>Oh boy! I thought you completely forgot about this one!<br />
I guess both A &amp; B are just a matter of time, right?<br />
<i>Anyone know where to find the cheapest FT2232 board?</i><br />
I did look again still the best price is on the link in post #56.<br />
For US you can lookup same P/N on <a href="http://www.mouser.com" rel="nofollow">http://www.mouser.com</a><br />
In general prices are ~30-40$<br />
In addition there few sites offer “USB to serial” cables based on same chip (20$-30$), but it might be a hassle to solder on their PCB &#8211; i.e. isn&#8217;t worth it (IMO!).<br />
I was wondering if skiddd is still there. He might have better ideas!<br />
I had an impression you were sunken completely in HBC &amp; SbFDfA3R. I’m so happy you are back! <img src='http://hackmii.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bushing</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-810</link>
		<dc:creator>bushing</dc:creator>
		<pubDate>Fri, 30 May 2008 10:03:44 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-810</guid>
		<description>We have to rely on the ECC check when looking at random dumps, because A) we don&#039;t know the HMAC key for random dumps (yet), and B) even if we did know the HMAC key, we still couldn&#039;t use it, because I can&#039;t figure out how to make my HMAC calculations match Ninty&#039;s.

Anyone know where to find the cheapest FT2232 board?</description>
		<content:encoded><![CDATA[<p>We have to rely on the ECC check when looking at random dumps, because A) we don&#8217;t know the HMAC key for random dumps (yet), and B) even if we did know the HMAC key, we still couldn&#8217;t use it, because I can&#8217;t figure out how to make my HMAC calculations match Ninty&#8217;s.</p>
<p>Anyone know where to find the cheapest FT2232 board?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Newbie</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-407</link>
		<dc:creator>Newbie</dc:creator>
		<pubDate>Sat, 17 May 2008 19:13:46 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-407</guid>
		<description>&lt;i&gt;It would be awesome to just be able to use the FT2232D by itself — any idea how fast we can push data through it?&lt;/i&gt;
Cool! And they not very expensive! Do you think we can one of these pre-soldered boards?
http://www.ftdichip.com/Products/EvaluationKits/DIPModules.htm

&lt;i&gt;Yes, now that I “know better”, I do that D0 trick. I wonder if turning WC24 off would be enough to prevent that from being necessary - not that that is possible on a bricked Wii.&lt;/i&gt;
From another hand, it might be that on bricked Wii WC24 didn’t even started. Can’t be sure about anything anyway. :-(

&lt;i&gt;As for the 2048 vs 2048+64:.. but unfortunately it is “signed” with an HMAC as well, which is what currently has me stuck.&lt;/i&gt;
Does &lt;b&gt;filesystem metadata&lt;/b&gt; also has ECC and every 8 pages are HMAC signed?
I.e. it’s same as &lt;b&gt;filesystem data&lt;/b&gt; except it’s not encrypted.

Back to integrity check algorithm, you would prefer to count on ECC, not on HMAC signature, right?</description>
		<content:encoded><![CDATA[<p><i>It would be awesome to just be able to use the FT2232D by itself — any idea how fast we can push data through it?</i><br />
Cool! And they not very expensive! Do you think we can one of these pre-soldered boards?<br />
<a href="http://www.ftdichip.com/Products/EvaluationKits/DIPModules.htm" rel="nofollow">http://www.ftdichip.com/Products/EvaluationKits/DIPModules.htm</a></p>
<p><i>Yes, now that I “know better”, I do that D0 trick. I wonder if turning WC24 off would be enough to prevent that from being necessary &#8211; not that that is possible on a bricked Wii.</i><br />
From another hand, it might be that on bricked Wii WC24 didn’t even started. Can’t be sure about anything anyway. <img src='http://hackmii.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p><i>As for the 2048 vs 2048+64:.. but unfortunately it is “signed” with an HMAC as well, which is what currently has me stuck.</i><br />
Does <b>filesystem metadata</b> also has ECC and every 8 pages are HMAC signed?<br />
I.e. it’s same as <b>filesystem data</b> except it’s not encrypted.</p>
<p>Back to integrity check algorithm, you would prefer to count on ECC, not on HMAC signature, right?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bushing</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-377</link>
		<dc:creator>bushing</dc:creator>
		<pubDate>Sat, 17 May 2008 13:36:56 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-377</guid>
		<description>@skidd: It would be awesome to just be able to use the FT2232D by itself -- any idea how fast we can push data through it?  

@Newbie:  Yes, now that I &quot;know better&quot;, I do that D0 trick.  I wonder if turning WC24 off would be enough to prevent that from being necessary -- not that that is possible on a bricked Wii.  

As for the 2048  vs 2048+64:  You have to read it in 2048 + 64 mode.  We know how to calculate the ECC bytes for sectors, but every 8 pages, they add in a 20-byte HMAC into some of the empty space after the ECC inside of the 64-byte spare area.

The filesystem metadata must not only be there, but it must be almost intact.  It tells the Wii where all of the files are in the encrypted section -- so without it, the rest of the chip is worthless!  This data is unencrypted, but unfortunately it is &quot;signed&quot; with an HMAC as well, which is what currently has me stuck.</description>
		<content:encoded><![CDATA[<p>@skidd: It would be awesome to just be able to use the FT2232D by itself &#8212; any idea how fast we can push data through it?  </p>
<p>@Newbie:  Yes, now that I &#8220;know better&#8221;, I do that D0 trick.  I wonder if turning WC24 off would be enough to prevent that from being necessary &#8212; not that that is possible on a bricked Wii.  </p>
<p>As for the 2048  vs 2048+64:  You have to read it in 2048 + 64 mode.  We know how to calculate the ECC bytes for sectors, but every 8 pages, they add in a 20-byte HMAC into some of the empty space after the ECC inside of the 64-byte spare area.</p>
<p>The filesystem metadata must not only be there, but it must be almost intact.  It tells the Wii where all of the files are in the encrypted section &#8212; so without it, the rest of the chip is worthless!  This data is unencrypted, but unfortunately it is &#8220;signed&#8221; with an HMAC as well, which is what currently has me stuck.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: skiddd</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-373</link>
		<dc:creator>skiddd</dc:creator>
		<pubDate>Sat, 17 May 2008 04:07:20 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-373</guid>
		<description>@bushing

We can do away with the entire CPLD design
and use a single FTDI chip with dual UART in
bit-bang mode.

http://www.ftdichip.com/Documents/DataSheets/DS_FT2232D.pdf

We can use Channel A as control signals for
CLE, ALE, CE, RE, WE, WP, and R/B(input)

Then we can use Channel B as our IO0-IO7.

All the 16 IOs from Channel A and Channel B can
be individually configured and 3.3v logic levels
of the FTDI requires no further voltage translation
for the 3.3v Wii NAND.

I guess this would be the easiest and fastest way
to do it.

What do you think?</description>
		<content:encoded><![CDATA[<p>@bushing</p>
<p>We can do away with the entire CPLD design<br />
and use a single FTDI chip with dual UART in<br />
bit-bang mode.</p>
<p><a href="http://www.ftdichip.com/Documents/DataSheets/DS_FT2232D.pdf" rel="nofollow">http://www.ftdichip.com/Documents/DataSheets/DS_FT2232D.pdf</a></p>
<p>We can use Channel A as control signals for<br />
CLE, ALE, CE, RE, WE, WP, and R/B(input)</p>
<p>Then we can use Channel B as our IO0-IO7.</p>
<p>All the 16 IOs from Channel A and Channel B can<br />
be individually configured and 3.3v logic levels<br />
of the FTDI requires no further voltage translation<br />
for the 3.3v Wii NAND.</p>
<p>I guess this would be the easiest and fastest way<br />
to do it.</p>
<p>What do you think?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: skiddd</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-372</link>
		<dc:creator>skiddd</dc:creator>
		<pubDate>Sat, 17 May 2008 02:07:19 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-372</guid>
		<description>@bushing

I am using the same cpld as the X-board and in
china it costs about 7 U$D + 2 U$D for the
FTDI.

I have started coding for a small 8-bit core that
will handle the following commands:

Read 		0000 0000	[00h]
Read ID		1001 0000	[90h]
Reset		1111 1111	                      [FFh]
Page Program	1000 0000	[80h]
Block Erase	0110 0000	[60h]
Read Status	0111 0000	[70h]

I do not plan to put the ECC inside the core as
I think this could be done on the PC side instead.
What I plan to do is make the CPLD read each
page (2048 + 64)bytes   and send it over the 
emulated RS232 port of the FTDI in 64byte 
chunks. So it will be 64bytes x 33 RS232 frames.
I can put an additional 8-bit cheksum on each
64 byte frame to check  on weather errors
have occured during the rs232 transfers.

But of course, this will not be the final design as
something like this will take almost 6 days to
read the entire device @ 9600 bps heheheh...
Even at 115200 bps it will take 12 hours for the
entire device, so I guess I really need to push
the FTDI&#039;s maximum 1M Baud to get it clocking
between 1-2 hours. (the computations are just
off my head.. please correct me if something is
wrong...)

The bottleneck here is really the transfer of data
between the CPLD and the FTDI. I can clock the
CPLD @ 300Mhz (even faster than the NAND!)
but still we are limited on the FTDI to PC side ;-((( 

Please click on the link that I put as my homepage
to see the dev board that I will be using. I am 
sorry about the camera resolution as it is just
from my phone.

B.R.
skiddd</description>
		<content:encoded><![CDATA[<p>@bushing</p>
<p>I am using the same cpld as the X-board and in<br />
china it costs about 7 U$D + 2 U$D for the<br />
FTDI.</p>
<p>I have started coding for a small 8-bit core that<br />
will handle the following commands:</p>
<p>Read 		0000 0000	[00h]<br />
Read ID		1001 0000	[90h]<br />
Reset		1111 1111	                      [FFh]<br />
Page Program	1000 0000	[80h]<br />
Block Erase	0110 0000	[60h]<br />
Read Status	0111 0000	[70h]</p>
<p>I do not plan to put the ECC inside the core as<br />
I think this could be done on the PC side instead.<br />
What I plan to do is make the CPLD read each<br />
page (2048 + 64)bytes   and send it over the<br />
emulated RS232 port of the FTDI in 64byte<br />
chunks. So it will be 64bytes x 33 RS232 frames.<br />
I can put an additional 8-bit cheksum on each<br />
64 byte frame to check  on weather errors<br />
have occured during the rs232 transfers.</p>
<p>But of course, this will not be the final design as<br />
something like this will take almost 6 days to<br />
read the entire device @ 9600 bps heheheh&#8230;<br />
Even at 115200 bps it will take 12 hours for the<br />
entire device, so I guess I really need to push<br />
the FTDI&#8217;s maximum 1M Baud to get it clocking<br />
between 1-2 hours. (the computations are just<br />
off my head.. please correct me if something is<br />
wrong&#8230;)</p>
<p>The bottleneck here is really the transfer of data<br />
between the CPLD and the FTDI. I can clock the<br />
CPLD @ 300Mhz (even faster than the NAND!)<br />
but still we are limited on the FTDI to PC side ;-((( </p>
<p>Please click on the link that I put as my homepage<br />
to see the dev board that I will be using. I am<br />
sorry about the camera resolution as it is just<br />
from my phone.</p>
<p>B.R.<br />
skiddd</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anatomy of a Mario-Kart Brick, pt 2 &#171; Gabriel Steinbach</title>
		<link>http://hackmii.com/2008/05/autopsy-of-a-mario-kart-brick/comment-page-2/#comment-369</link>
		<dc:creator>Anatomy of a Mario-Kart Brick, pt 2 &#171; Gabriel Steinbach</dc:creator>
		<pubDate>Fri, 16 May 2008 14:48:25 +0000</pubDate>
		<guid isPermaLink="false">http://hackmii.com/?p=22#comment-369</guid>
		<description>[...] Autopsy of a Mario-Kart brick (part 1) Read: Anatomy of a Mario-Kart Brick, pt [...]</description>
		<content:encoded><![CDATA[<p>[...] Autopsy of a Mario-Kart brick (part 1) Read: Anatomy of a Mario-Kart Brick, pt [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

