<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Opcode0x90's Blog</title>
	<atom:link href="http://opcode0x90.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://opcode0x90.wordpress.com</link>
	<description>The digital endoscopy</description>
	<lastBuildDate>Sun, 16 Oct 2011 22:07:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='opcode0x90.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Opcode0x90's Blog</title>
		<link>http://opcode0x90.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://opcode0x90.wordpress.com/osd.xml" title="Opcode0x90&#039;s Blog" />
	<atom:link rel='hub' href='http://opcode0x90.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Injecting DLL into process on load</title>
		<link>http://opcode0x90.wordpress.com/2011/01/15/injecting-dll-into-process-on-load/</link>
		<comments>http://opcode0x90.wordpress.com/2011/01/15/injecting-dll-into-process-on-load/#comments</comments>
		<pubDate>Sat, 15 Jan 2011 12:17:47 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Reverse Engineering]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/?p=132</guid>
		<description><![CDATA[If you ever had the need to inject DLL into a process right before it starts executing, you should have experienced many headaches in the process. You should have tried injecting the DLL by creating the process CREATE_SUSPENDED, and have failed miserably. There are a few reasons to this. When a process is CREATE_SUSPENDED, many [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=132&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you ever had the need to inject DLL into a process right before it starts executing, you should have experienced many headaches in the process.</p>
<p>You should have tried injecting the DLL by creating the process CREATE_SUSPENDED, and have failed miserably. There are a few reasons to this. When a process is CREATE_SUSPENDED, many process state and environment structures arent initialized yet. The process main thread is supposed to initialize them and by introducing your thread at this early stage, there are many things that can go wrong. You, or the Windows API youve called might be reading structures that doesnt exist yet. You might run into a deadlock as your thread and process main thread each trying to fight for the loader lock. But the end result is same, you cant successfully inject your DLL into the process.</p>
<p>There are quite a few others have came up with the solution, but I guess my workaround is much easier.</p>
<p>1. Create your target process CREATE_SUSPENDED.<br />
2. Patch the process entry point with 0xEBFE (JMP $-2, infinite jump to itself). Dont forget to save the original bytes of course.<br />
3. Resume the main thread.<br />
4. Poll the main thread EIP and see if it reached the EP already. If not, wait for a while and poll again.<br />
5. Inject your DLL.<br />
6. Suspend the main thread, restore the original EP bytes, resume.</p>
<p>Here is a snippet from my unreleased injector.</p>
<pre class="brush: cpp; collapse: true; light: false; toolbar: true;">
void Inject_Loader( const DllPayload&amp; Payload, const std::string&amp; Path )
{
  STARTUPINFOA StartupInfo = {0};
  PROCESS_INFORMATION ProcessInformation;

  // initialize the structures
  StartupInfo.cb = sizeof(StartupInfo);

  // attempt to load the specified target
  if ( CreateProcessA(
      Path.c_str(),
      NULL,
      NULL,
      NULL,
      FALSE,
      CREATE_SUSPENDED,
      NULL,
      NULL,
      &amp;StartupInfo,
      &amp;ProcessInformation
    ) )
  {
    Handle hProcess( ProcessInformation.hProcess );

    // wait for the process to done
    try
    {
      // locate the entry point
      OptionalHeader optionalheader = PortableExecutable::FromFile( Path.c_str() ).NtHeaders.OptionalHeader;
      LPVOID entry = (LPVOID)(optionalheader.ImageBase + optionalheader.AddressOfEntryPoint);

      // patch the entry point with infinite loop
      PageProtect protect( hProcess, entry, 2, PAGE_EXECUTE_READWRITE );

      std::string oep = VMemory::Read( hProcess, entry, 2 );
      VMemory::Write( hProcess, entry, &quot;\xEB\xFE&quot; );			// JMP $-2

      // resume the main thread
      ResumeThread( ProcessInformation.hThread );

      // wait until the thread stuck at entry point
      CONTEXT context;

      for ( unsigned int i = 0; i &lt; 50 &amp;&amp; context.Eip != (DWORD)entry; ++i )
      {
        // patience.
        Sleep(100);

        // read the thread context
        context.ContextFlags = CONTEXT_CONTROL;
        GetThreadContext( ProcessInformation.hThread, &amp;context );
      }
      if ( context.Eip != (DWORD)entry )
      {
        // wait timed out
        throw &quot;entry point blockade timed out&quot;;
      }

      // inject DLL payload into remote process
      Inject_CreateRemoteThread( Payload, hProcess );

      // pause and restore original entry point
      SuspendThread( ProcessInformation.hThread );
      VMemory::Write( hProcess, entry, oep );

      // you are ready to go
      ResumeThread( ProcessInformation.hThread );
    }
    catch ( ... )
    {
      // terminate the newly spawned process
      TerminateProcess( hProcess, -1 );

      // rethrow the exception to top-level handler
      throw;
    }
  }
  else
  {
    // are you sure this is a valid target ?
    throw &quot;unable to load the specified executable&quot;;
  }
}
</pre>
<p>I wasnt the first one to figure this out, but Matt had gone AWOL for so long I had to suspect California actually passed a law banning all WEPs. :/</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/132/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/132/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/132/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/132/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/132/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/132/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/132/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/132/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=132&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2011/01/15/injecting-dll-into-process-on-load/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>[VB6] Invoke arbitary native API without Declare keyword</title>
		<link>http://opcode0x90.wordpress.com/2010/11/30/vb6-invoke-arbitary-native-api-without-declare-keyword/</link>
		<comments>http://opcode0x90.wordpress.com/2010/11/30/vb6-invoke-arbitary-native-api-without-declare-keyword/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 04:46:07 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<category><![CDATA[undocumented]]></category>
		<category><![CDATA[Zombie_AddRef]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/?p=103</guid>
		<description><![CDATA[Many would have thought this is not possible. However, Karcrack had written a nice hack to (ab)use undocumented MSVBVM60.Zombie_AddRef to indirectly invoke his dynamically generated call stub. While his technique is pretty l33t, he overlooked one important fact: you need to mark the stub executable with VirtualProtect. While it will work fine and happy on [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=103&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Many would have thought this is not possible. However, <a href="http://cobein.com/wp/?author=3">Karcrack</a> had written a nice hack to (ab)use undocumented MSVBVM60.Zombie_AddRef to indirectly invoke his dynamically generated call stub. While his technique is pretty l33t, he overlooked one important fact: you need to mark the stub executable with <a href="http://msdn.microsoft.com/en-us/library/aa366898.aspx">VirtualProtect</a>. While it will work fine and happy on most PC, when DEP is enabled the process will throw an access violation.</p>
<p>Ironically, I first came across this technique when I was reversing a malware sample.</p>
<p>mZombieInvoke – Native VB6 Invoke <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<a href="http://cobein.com/wp/?p=567">http://cobein.com/wp/?p=567</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=103&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2010/11/30/vb6-invoke-arbitary-native-api-without-declare-keyword/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>Still Alive Doing Reversing</title>
		<link>http://opcode0x90.wordpress.com/2010/11/26/still-alive-doing-reversing/</link>
		<comments>http://opcode0x90.wordpress.com/2010/11/26/still-alive-doing-reversing/#comments</comments>
		<pubDate>Fri, 26 Nov 2010 15:00:30 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/?p=97</guid>
		<description><![CDATA[I am honestly surprised after 2 years of inactivity, this blog is still getting random hits and comments. Wipe the dust off this forgotten blog, I am not here to say goodbye. :3 Lurking deep within the jungle of IRC pipes, been lying low and reek of inactivity. Look around for a bit, I am [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=97&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I am honestly surprised after 2 years of inactivity, this blog is still getting random hits and comments. Wipe the dust off this forgotten blog, I am not here to say goodbye. :3</p>
<p>Lurking deep within the jungle of IRC pipes, been lying low and reek of inactivity. Look around for a bit, I am probably the only  survivor from the past scene. That makes me feel a bit lonely and demotivated I guess. Fortunately, Moose is still around, although now a pure HoN-tard and nerdy as usual. :/</p>
<p>Also, gotten a twitter for the lulz. I have no idea what to do with it anyway.</p>
<p><a href="https://twitter.com/opcode0x90">https://twitter.com/opcode0x90</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/97/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=97&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2010/11/26/still-alive-doing-reversing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>Moved all stuff to Google Code</title>
		<link>http://opcode0x90.wordpress.com/2008/11/23/moved-all-stuff-to-google-code/</link>
		<comments>http://opcode0x90.wordpress.com/2008/11/23/moved-all-stuff-to-google-code/#comments</comments>
		<pubDate>Sun, 23 Nov 2008 05:35:34 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/?p=65</guid>
		<description><![CDATA[After some hassle I finally got my own SVN repository at Google Code. Slowly I will be migrating all my stuff there and say goodbye to free filehosting. Hopefully Google Code won&#8217;t fail me. Also, I decided to rewrite most of my MASM source here in C++, since most of you guys aren&#8217;t assembly freak [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=65&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>After some hassle I finally got my own SVN repository at Google Code. Slowly I will be migrating all my stuff there and say goodbye to free filehosting. Hopefully Google Code won&#8217;t fail me.</p>
<p>Also, I decided to rewrite most of my MASM source here in C++, since most of you guys aren&#8217;t assembly freak like me <img src='http://s2.wp.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  and probably C++ is much easier to code than assembly too. (Side note: C/C++ pointer is very much different from assembly and that, have seriously confused me at times. :/)</p>
<p>My SVN repository is available here. Feel free to look around and leave comments here.<br />
<a href="http://code.google.com/p/opcode0x90/">http://code.google.com/p/opcode0x90/</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/65/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=65&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2008/11/23/moved-all-stuff-to-google-code/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>MySql 5.0 Unsigned Integer Underflow</title>
		<link>http://opcode0x90.wordpress.com/2008/08/01/mysql-50-unsigned-integer-underflow/</link>
		<comments>http://opcode0x90.wordpress.com/2008/08/01/mysql-50-unsigned-integer-underflow/#comments</comments>
		<pubDate>Fri, 01 Aug 2008 04:11:12 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/?p=27</guid>
		<description><![CDATA[This is tested on MySql 5.0.60-r1 (gentoo portage). mysql&#62; system uname -a Linux meepo 2.6.24-hardened-r3 #11 Mon Jul 28 07:31:20 MYT 2008 i686 AMD Sempron(tm) 2200+ AuthenticAMD GNU/Linux mysql&#62; SELECT VERSION(); +------------+ &#124; VERSION()  &#124; +------------+ &#124; 5.0.60-log &#124; +------------+ 1 row in set (0.00 sec) mysql&#62; system uname -a Linux gentoo 2.6.24-hardened-r3 #11 Mon [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=27&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is tested on MySql 5.0.60-r1 (gentoo portage).</p>
<pre>mysql&gt; system uname -a
Linux meepo 2.6.24-hardened-r3 #11 Mon Jul 28 07:31:20 MYT 2008 i686 AMD Sempron(tm) 2200+ AuthenticAMD GNU/Linux
mysql&gt; SELECT VERSION();
+------------+
| VERSION()  |
+------------+
| 5.0.60-log |
+------------+
1 row in set (0.00 sec)

mysql&gt; system uname -a
Linux gentoo 2.6.24-hardened-r3 #11 Mon Jul 28 07:31:20 MYT 2008 i686 AMD Sempron(tm) 2200+ AuthenticAMD GNU/Linux
mysql&gt; SELECT CAST( -1 AS UNSIGNED );
+------------------------+
| CAST( -1 AS UNSIGNED ) |
+------------------------+
|   18446744073709551615 |
+------------------------+
1 row in set (0.00 sec)

mysql&gt; SELECT CAST( 0 AS UNSIGNED ) - 1;
+---------------------------+
| CAST( 0 AS UNSIGNED ) - 1 |
+---------------------------+
|      18446744073709551615 |
+---------------------------+
1 row in set (0.00 sec)

mysql&gt;</pre>
<p>It is expected that any negative unsigned value to be &#8220;casted&#8221; to 0.</p>
<p>I have filed a bug report at bugs.mysql.com<br />
<a href="http://bugs.mysql.com/bug.php?id=38512">http://bugs.mysql.com/bug.php?id=38512</a></p>
<p>Edit:<br />
Its now fixed and closed. They introduced a strict mode instead of rounding the value to 0. You should upgrade your MySql now.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/opcode0x90.wordpress.com/27/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/opcode0x90.wordpress.com/27/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/27/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=27&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2008/08/01/mysql-50-unsigned-integer-underflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>Speeding up Portage and Kernel Compiling</title>
		<link>http://opcode0x90.wordpress.com/2008/06/05/speeding-up-portage-and-kernel-compiling/</link>
		<comments>http://opcode0x90.wordpress.com/2008/06/05/speeding-up-portage-and-kernel-compiling/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 17:25:29 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/2008/06/05/speeding-up-portage-and-kernel-compiling/</guid>
		<description><![CDATA[Ever get annoyed by Gentoo&#8217;s forever-lasting compiling? Here is few tricks I found that really helps when surfing through gentoo-wiki.com. Speedup compiling using tmpfs To speed up Portage compiling, the trick here is to mount a ramdisk at Portage temp compile directory. Everything in that directory will be placed onto RAM instead of going to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=25&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ever get annoyed by Gentoo&#8217;s forever-lasting compiling? Here is few tricks I found that really helps when surfing through gentoo-wiki.com.</p>
<p><a href="http://gentoo-wiki.com/TIP_Speeding_up_portage_with_tmpfs">Speedup compiling using tmpfs</a></p>
<p>To speed up Portage compiling, the trick here is to mount a ramdisk at Portage temp compile directory. Everything in that directory will be placed onto RAM instead of going to disk, therefore greatly improves speed.</p>
<p>This is the time needed to compile xorg-server.</p>
<p>Before:</p>
<p>real    9m18.899s<br />
user    9m49.958s<br />
sys    4m18.195s</p>
<p>After:</p>
<p>real    6m48.731s<br />
user    5m9.471s<br />
sys    4m6.079s</p>
<p>Impressive eh? <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Its a 33% speed up. Since everything is placed in RAM, when compiling very large package (namely openoffice) you might get this message.</p>
<pre>IOError: [Errno 28] No space left on device</pre>
<p>It means we have ran out of space for ramdisk. Unmount the ramdisk and proceed with emerge.</p>
<pre>gentoo ~ # umount /var/tmp/portage/
gentoo ~ # emerge something
Calculating dependencies -
...
gentoo ~ # mount /var/tmp/portage/</pre>
<p>Next, we can speed up kernel compiling by using ccache. Since most of the time kernel is compiled with minor changes, ccache would speed up the process dramatically by &#8220;re-using&#8221; files that are already compiled. Its quite troublesome to <em>make CC=&#8221;ccache gcc&#8221; -j3</em> everytime you want to compile the kernel, we can write up a script that simplifies the process.</p>
<pre>File: /sbin/compile-kernel

cd /usr/src/linux

mount /boot
make clean

make CC="ccache gcc" -j3 &amp;&amp; \  # -jN for parallel compiling (follow N = number of core + 1)
make modules_install &amp;&amp; \
make install &amp;&amp; \              # this will install kernel to default /boot/vmlinuz symlink
module-rebuild rebuild &amp;&amp; \    # / You might want to comment out these two lines if
update-modules                 # \ you dont have <em>module-rebuild</em> installed.

make clean
umount /boot

cd $OLDPWD</pre>
<p>As root, <em>chmod u+x /sbin/compile-kernel</em> to make it executable. <strong>Edit the script if necessary</strong>. To (re)compile kernel, just issue <em>compile-kernel</em> to do so.</p>
<p>Enjoy the blazing fast compiling. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<hr />Further reading:<a href="http://gentoo-wiki.com/Ccache"><br />
Using ccache</a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/opcode0x90.wordpress.com/25/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/opcode0x90.wordpress.com/25/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/25/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=25&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2008/06/05/speeding-up-portage-and-kernel-compiling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing Gentoo on Dell Inspiron 1420</title>
		<link>http://opcode0x90.wordpress.com/2008/03/26/installing-gentoo-on-dell-inspiron-1420/</link>
		<comments>http://opcode0x90.wordpress.com/2008/03/26/installing-gentoo-on-dell-inspiron-1420/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 18:07:34 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Dell]]></category>
		<category><![CDATA[Inspiron 1420]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/?p=24</guid>
		<description><![CDATA[Note: This post is depreciated as the things had changed quite a lot since then. You can find the updated info from gentoo-wiki.com here. Its been a while since my last post. Again busy with real life stuff. :/ Things have started to settle down a bit, so I might have more time to spend [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=24&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Note: This post is depreciated as the things had changed quite a lot since then. You can find the updated info from gentoo-wiki.com <a href="http://en.gentoo-wiki.com/wiki/Dell_Inspiron_1420">here</a>.</strong></p>
<p><span id="more-24"></span> Its been a while since my last post. Again busy with real life stuff. :/ Things have started to settle down a bit, so I might have more time to spend on the blog. (hopefully)</p>
<p>This blog is about installing Gentoo on my new Dell Inspiron 1420, and meant to cover something else not mentioned in the Gentoo handbook. It seems the Gentoo documentation is not so complete and slightly outdated, so it leaves to us the user to close up the gap. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Before you start</strong></p>
<p>Did anyone mentioned that the latest LiveCD on Gentoo website is 1 year old now? <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  This is why it doesnt support some of the hardware found in my shiny new laptop. Neither Intel Corporation PRO/Wireless 3945ABG (ipw3945) nor Broadcom NetLink Fast Ethernet Controller (BCM5906M) is supported, this means we do not have any access to the Internet ! We will need an alternative Gentoo-based LiveCD to install Gentoo. In this guide, I used iloog (<a href="http://www.ilug.gr/iloog/">http://www.ilug.gr/iloog/</a>) as an example. Download the iso and burn it.</p>
<p><strong>Time to install</strong></p>
<p>I will point you to various sites for you to reference with. Its always helpful to know more about your hardware before you start. Another note, do not stress yourself with the long (and very possibly annoying) installation. Gentoo is not designed to work out of the box, and the documentation is not centralized. (so to say) Bits of useful information is only found using google here and there. You have been warned. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The official Gentoo installation guide is found <a href="http://www.gentoo.org/doc/en/handbook/handbook-x86.xml">here</a>. Id suggest you to read through before you start so you can get a rough idea of the whole installation process. Also, info about Dell MediaDirect, Restore and other utility is found <a href="http://gentoo-wiki.com/Dell_XPS_M1330">here</a> and <a href="http://gentoo-wiki.com/HARDWARE_Dell_XPS_M1210">here.</a> You might want to read through before you start partitioning your drive and messing up stuff. <img src='http://s2.wp.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>Proceed with the installation until the mirrorselect part. iloog doesnt have mirrorselect installed, so we have to emerge it manually. Skip that part and proceed with chroot-ing. After you chroot-ed to your new Gentoo, synchronize your portage tree, emerge mirrorselect and go back to the mirrorselect part.</p>
<pre>~ $ emerge --sync
~ $ emerge mirrorselect
...
# proceed with the mirror select configuration</pre>
<p><strong>Configure your kernel (and hope it works) </strong></p>
<p>Time to get to know your laptop well. This will *definitely* help when it comes to kernel configuration.</p>
<p>Now we will list out our processor attributes. Important entries are highlighted.</p>
<pre>~ $ cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 Duo CPU     T5450  @ 1.66GHz
stepping        : 13
cpu MHz         : 1000.000
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep <strong>mtrr</strong> pge mca cmov pat pse36 clflush dts <strong>acpi</strong> <strong>mmx</strong> fxsr <strong>sse sse2</strong> ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl est tm2 <strong>ssse3</strong> cx16 xtpr lahf_lm
bogomips        : 3327.07
clflush size    : 64

processor       : 1
vendor_id       : GenuineIntel
...
# duplicated entry
~ $</pre>
<p>The same entry is duplicated twice because we have 2 cores. Its a Intel Core 2 Duo T5450 with clock speed 1.66GHz and supports MTRR (Memory Type Range Register), ACPI (Advanced Configuration and Power Interface), MMX, SSE, SSE2 and SSSE3. No hardware virtualization support though. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>Emerge pciutils and run lspci to list all your hardware connected to PCI bus.</p>
<pre>~ $ emerge pciutils
~ $ lspci
00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 0c)
00:02.0 VGA compatible controller: Intel Corporation Mobile Integrated Graphics Controller (rev 0c)
00:02.1 Display controller: <strong>Intel Corporation Mobile Integrated Graphics Controller</strong> <strong>(rev 0c)</strong>
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) <strong>USB UHCI</strong> Controller #5 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) <strong>USB2 EHCI</strong> Controller #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) <strong>HD Audio Controller</strong> (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) <strong>PCI Express</strong> Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 02)
00:1c.5 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 6 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f2)
00:1f.0 ISA bridge: Intel Corporation Mobile LPC Interface Controller (rev 02)
00:1f.1 IDE interface: Intel Corporation Mobile IDE Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation Mobile <strong>SATA AHCI</strong> Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02)
03:01.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 <strong>IEEE 1394</strong> Controller (rev 05)
03:01.1 SD Host controller: <strong>Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro</strong> Host Adapter (rev 22)
03:01.2 System peripheral: Ricoh Co Ltd <strong>R5C592 Memory Stick</strong> Bus Host Adapter (rev 12)
03:01.3 System peripheral: Ricoh Co Ltd <strong>xD-Picture Card Controller</strong> (rev 12)
09:00.0 Ethernet controller: <strong>Broadcom Corporation NetLink BCM5906M</strong> Fast Ethernet PCI Express (rev 02)
0c:00.0 Network controller: <strong>Intel Corporation PRO/Wireless 3945ABG</strong> Network Connection (rev 02)
~ $</pre>
<p>We can see that our laptop (in specified order) is powered by Intel 82801H (ICH8) chipset and equipped with  Intel GMA965M Graphics Card (aka Intel Graphics Media Accelerator X3100), USB 2.0, Intel HD audio controller, PCI Express, SATA AHCI controller, FireWire (IEEE1394), Ricoh memory card reader, Broadcom ethernet controller and Intel 3945abg wireless card. You can google up about your hardware (and I suggest you to do so) to know more about it.</p>
<p>Wait, what about Bluetooth and webcam? Okay both our device is connected to an internal USB hub (you will see when you rip open your laptop <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ) and therefore not listed in lspci. Now we need another tool to list USB devices.</p>
<pre>~ $ emerge usbutils
~ $ lsusb -v | less
 Bus 002 Device 003: ID 05a9:2640 OmniVision Technologies, Inc.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x05a9 OmniVision Technologies, Inc.
  idProduct          0x2640
  bcdDevice            1.00
  iManufacturer           1 OmniVision Technologies, Inc. -2640-07.07.20.3
  iProduct                2 <strong>Laptop Integrated Webcam</strong>
  iSerial                 0
  bNumConfigurations      1
...
# very long list
...
Bus 003 Device 003: ID 413c:8126 Dell Computer Corp.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 <strong>Bluetooth</strong>
  bMaxPacketSize0        64
  idVendor           0x413c Dell Computer Corp.
  idProduct          0x8126
  bcdDevice            1.00
  iManufacturer           1 Broadcom Corp
  iProduct                2 BCM2045
  iSerial                 0
  bNumConfigurations      1
...
# press q to quit
~ $</pre>
<p>Found our missing Bluetooth and camera. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  So we now listed most parts of our laptop, now we can configure our kernel accordingly. Proceed with Gentoo handbook.</p>
<p>This is the guidelines for your kernel configuration. Kernel used is version 2.6.24-gentoo-r3, options maybe different for older and newer kernels. If you find some options is missing, skip that and proceed to other options. Some options are dependent of another options and are hidden until its ticked. Go back to check if its available now.</p>
<p><strong>Processor : Intel Core 2 Duo with MTRR and ACPI support</strong></p>
<pre>Processor type and features  ---&gt;
    [*] Symmetric multi-processing support
    Processor family (Core 2/newer Xeon)  ---&gt;
    (2) Maximum number of CPUs (2-255)
    [*] SMT (Hyperthreading) scheduler support
    [*] Multi-core scheduler support
    [*] Machine Check Exception
        [*] check for P4 thermal throttling interrupt.
    &lt;*&gt; Dell laptop support</pre>
<p>Also check out Gentoo&#8217;s Intel Core 2 Duo guide<br />
<a href="http://gentoo-wiki.com/HARDWARE_Intel_Core2_Duo">http://gentoo-wiki.com/HARDWARE_Intel_Core2_Duo</a></p>
<p><strong>ACPI and Power Management</strong></p>
<pre>Power management options  ---&gt;
    [*] Power Management support
	[*] ACPI (Advanced Configuration and Power Interface) Support  ---&gt;
    CPU Frequency scaling  ---&gt;
	[*] CPU Frequency scaling
            *** CPUFreq processor drivers ***
            &lt;*&gt;   ACPI Processor P-States driver</pre>
<p>Refer to Gentoo wiki for more power saving kernel options.<br />
<a href="http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets">http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets </a></p>
<p><strong>ISA, PCI Express and ICH8H chipset </strong></p>
<pre>Bus options (PCI etc.)  ---&gt;
    [*] PCI support
        PCI access mode (MMConfig)  ---&gt;
    [*] PCI Express support
    [*] Message Signaled Interrupts (MSI and MSI-X)
    [*] Interrupts on hypertransport devices
    [*] ISA support
 Device Drivers  ---&gt;
    -*- I2C support  ---&gt;
        &lt;*&gt;   I2C device interface
        I2C Algorithms  ---&gt;
            -*- I2C bit-banging interfaces
        I2C Hardware Bus support  ---&gt;
            &lt;*&gt; Intel 82801 (ICH)</pre>
<p><strong>SATA Drivers</strong></p>
<pre>Device Drivers  ---&gt;
    SCSI device support  ---&gt;
        -*- SCSI device support
        *** SCSI support type (disk, tape, CD-ROM) ***
        &lt;*&gt; SCSI disk support
        &lt;*&gt; SCSI CDROM support
    &lt;*&gt; Serial ATA (prod) and Parallel ATA (experimental) drivers  ---&gt;
        &lt;*&gt;   AHCI SATA support
        &lt;*&gt;   Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support</pre>
<p><strong>Network Drivers</strong></p>
<pre>Device Drivers  ---&gt;
    [*] Network device support  ---&gt;
        [*]   Ethernet (1000 Mbit)  ---&gt;
            &lt;*&gt;   Broadcom Tigon3 support</pre>
<p><strong>Graphics Drivers </strong></p>
<pre>Device Drivers  ---&gt;
    Character devices  ---&gt;
        -*- Virtual terminal
        &lt;*&gt; Enhanced Real Time Clock Support
    Graphics support  ---&gt;
        -*- /dev/agpgart (AGP Support)  ---&gt;
            -*-   Intel 440LX/BX/GX, I8xx and E7x05 chipset support
        &lt;*&gt; Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)  ---&gt;
            &lt;*&gt;   Intel 830M, 845G, 852GM, 855GM, 865G (i915 driver)  ---&gt;
        &lt;*&gt; Support for frame buffer devices  ---&gt;
            -*-   Enable Video Mode Handling Helpers
            *** Frame buffer hardware drivers ***
            &lt;*&gt;   Userspace VESA VGA graphics support					# for uvesafb
            &lt;*&gt;   Intel 830M/845G/852GM/855GM/865G/915G/945G support (EXPERIMENTAL)
                [*]     DDC/I2C for Intel framebuffer support</pre>
<p><strong>USB  Drivers</strong></p>
<p>You can follow this guide for its sound and USB kernel config.<br />
<a href="http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets">http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets</a></p>
<p><strong>Sound Card</strong></p>
<pre>Device Drivers  ---&gt;
    Sound  ---&gt;
        &lt;*&gt; Sound card support
        Advanced Linux Sound Architecture  ---&gt;
            &lt;M&gt; Advanced Linux Sound Architecture
            &lt;M&gt;   Sequencer support
            PCI devices  ---&gt;
                &lt;M&gt; Intel HD Audio
                [*]   Enable generic HD-audio codec parser
                [*]   Aggressive power-saving on HD-audio
                (1)     Default time-out for HD-audio power-save mode
                &lt;M&gt; Intel/SiS/nVidia/AMD/ALi AC97 Controller
                [*] AC97 Power-Saving Mode
                (1)   Default time-out for AC97 power-save mode</pre>
<p>In /etc/make.conf, tell ALSA we are using Intel HD Audio driver.</p>
<pre>ALSA_CARDS="hda-intel"</pre>
<p>Follow the Gentoo ALSA guide to setup your sound card.</p>
<p><strong>Bluetooth</strong></p>
<p>You can follow this guide for its bluetooth kernel config.<br />
<a href="http://www.gentoo.org/doc/en/bluetooth-guide.xml">http://www.gentoo.org/doc/en/bluetooth-guide.xml</a></p>
<p><strong>MMC/SD/MSPro Card Reader</strong></p>
<p>I havent tested. You can refer to guide here<br />
<a href="http://gentoo-wiki.com/HOWTO_SD_and_MMC_card_readers">http://gentoo-wiki.com/HOWTO_SD_and_MMC_card_readers</a></p>
<p><strong>Laptop Intergrated Camera</strong></p>
<p>I havent tested. You can refer to these guides.<a href="http://gentoo-wiki.com/HARDWARE_Dell_XPS_M1210"></p>
<p>http://gentoo-wiki.com/HARDWARE_Dell_XPS_M1210</a></p>
<p><a href="http://gentoo-wiki.com/Dell_XPS_M1330">http://gentoo-wiki.com/Dell_XPS_M1330</a></p>
<p><strong>Wireless</strong></p>
<p>Available here<br />
<a href="http://gentoo-wiki.com/HARDWARE_ipw3945">http://gentoo-wiki.com/HARDWARE_ipw3945</a></p>
<p>I would suggest you stick to ipw3945 unless you have a good reason to switch to iwl3945, its very buggy currently.<br />
Proceed with Gentoo handbook. If everything goes well, you should end up in your new Gentoo with login prompt. If not, check out the troubleshooting section.</p>
<p><strong>Troubleshooting</strong></p>
<p><strong> kernel panic &#8211; not syncing :VFS: unable to mount root fs on unknown block (0,0)</strong></p>
<p>If you are getting this message, it could be 2 causes. It could be due to /dev not populated with devices. This is a bug I think, because after I gave the root maintance password and run the following command it gives this wierd output.</p>
<pre>~ $ ls /dev

~ $</pre>
<p>Scroll up the console and you should find something about udev error. If thats the case, reboot with LiveCD and proceed with chroot.</p>
<pre>~ $ mkdir /mnt/gentoo
~ $ mount /dev/sda3 /mnt/gentoo
~ $ mount /dev/sda1 /mnt/gentoo/boot
~ $ mount -t proc none /mnt/gentoo/proc
~ $ mount -o bind /dev /mnt/gentoo/dev
~ $ chroot /mnt/gentoo /bin/bash
~ $ env-update &amp;&amp; source /etc/profile
&gt;&gt; Regenerating /etc/ld.so.cache...
~ $ export PS1="(chroot) $PS1"</pre>
<p>Now follow this guide to emerge udev.<a href="http://www.gentoo.org/doc/en/udev-guide.xml"></p>
<p>http://www.gentoo.org/doc/en/udev-guide.xml</a></p>
<p>Reboot. Everything should be working now.</p>
<p>If its still not working, reboot into LiveCD, do the chroot-ing and check your kernel config. You might be missing some important hard disk controller (note: SATA is SCSI) or filesystem support. All filesystem support must be compiled-in and cannot be compiled as modules. Reboot and recheck. If its not, proceed with the vicious cycle. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Good luck.</p>
<p><strong>More configuration !</strong></p>
<p>Finish everything in Gentoo handbook before you continue with system configuration. Most of these configuration is covered in other guides.</p>
<p><span style="text-decoration:underline;">CFLAGS and USE flags</span></p>
<p>Although you included supports for your shiny new harware features, the packages wont be using them unless you tell them to. In /etc/make.conf, include these flags.</p>
<pre>VIDEO_CARDS="i810"
ALSA_CARDS="hda-intel"
USE="
xcomposite dell wifi mmap dvdr bluetooth ipw3945 ieee1394 usb
mmx sse sse2 ssse3 pae
"</pre>
<p>DO NOT use the CFLAGS, FFLAGS and LDFLAGS flags found in the <a href="http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets">Intel G33, Q35 and Q35 Chipsets</a> guide, this will cause problems when compiling certain packages. Just stick to the &#8220;vanilla&#8221; CFLAGS.</p>
<pre>CFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer -msse3"</pre>
<p><span style="text-decoration:underline;">Power Saving/Power Management / CPU Frequency Scaling</span><br />
<a href="http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets">http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets<br />
</a><a href="http://gentoo-wiki.com/HARDWARE_Intel_Core2_Duo">http://gentoo-wiki.com/HARDWARE_Intel_Core2_Duo</a></p>
<p><span style="text-decoration:underline;">Graphics Card</span><br />
<a href="http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets">http://gentoo-wiki.com/HARDWARE_Intel_G33%2C_Q35%2C_and_Q33_Chipsets</a></p>
<p>In /etc/X11/xorg.conf, remove Option &#8220;PageFlip&#8221; &#8220;true&#8221;. Its not working on my laptop for some reasons.</p>
<p><span style="text-decoration:underline;">gensplash/fbsplash</span></p>
<p>Use uvesafb instead of vesafb/i810fb. They dont work on my laptop either.<br />
<a href="http://dev.gentoo.org/~spock/projects/uvesafb/">http://dev.gentoo.org/~spock/projects/uvesafb/</a></p>
<p><span style="text-decoration:underline;">Sound Card<br />
</span><a href="http://www.gentoo.org/doc/en/alsa-guide.xml">http://www.gentoo.org/doc/en/alsa-guide.xml</a><span style="text-decoration:underline;"><br />
</span></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>That is all. I guess you would be very tired of reading, tweaking and compiling now. Welcome to Gentoo. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  I have spent a week trying to get Gentoo working, and still tweaking here and there to get the most out of it. I will update when I found some interesting tweaks and fixes. For now, let me get some rest lol.</p>
<p>Best regards,<br />
opcode0x90</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/opcode0x90.wordpress.com/24/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/opcode0x90.wordpress.com/24/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/24/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=24&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2008/03/26/installing-gentoo-on-dell-inspiron-1420/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>Experiencing freeze with ollydbg?</title>
		<link>http://opcode0x90.wordpress.com/2008/01/13/experiencing-freeze-with-ollydbg/</link>
		<comments>http://opcode0x90.wordpress.com/2008/01/13/experiencing-freeze-with-ollydbg/#comments</comments>
		<pubDate>Sun, 13 Jan 2008 11:31:13 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[ollydbg]]></category>
		<category><![CDATA[Reverse Engineering]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/2008/01/13/experiencing-freeze-with-ollydbg/</guid>
		<description><![CDATA[At ollydbg&#8217;s Debugging Options, uncheck Registers -&#62; Decode SSE Registers. This should fix the hang up when debugging multi-threaded apps. Sometimes the hang up is caused by the plugins, check if any causing it and remove it accordingly.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=23&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>At ollydbg&#8217;s Debugging Options, uncheck Registers -&gt; Decode SSE Registers. This should fix the hang up when debugging multi-threaded apps. Sometimes the hang up is caused by the plugins, check if any causing it and remove it accordingly.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/opcode0x90.wordpress.com/23/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/opcode0x90.wordpress.com/23/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/23/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=23&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2008/01/13/experiencing-freeze-with-ollydbg/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
		<item>
		<title>Patch for AppLocale</title>
		<link>http://opcode0x90.wordpress.com/2008/01/09/patch-for-applocale/</link>
		<comments>http://opcode0x90.wordpress.com/2008/01/09/patch-for-applocale/#comments</comments>
		<pubDate>Tue, 08 Jan 2008 16:11:20 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[Reverse Engineering]]></category>
		<category><![CDATA[AppLocale]]></category>
		<category><![CDATA[Patch]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/2008/01/09/patch-for-applocale/</guid>
		<description><![CDATA[Finally back in action. My PC has broke down quite a while ago, spitting random BSOD and eventually met its uneventful death. Amen. Now I am starting a new year with a brand new laptop. Yay! Okay lets get back to business. I am a person who frequently use non-English application while running on the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=21&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Finally back in action. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  My PC has broke down quite a while ago, spitting random BSOD and eventually met its uneventful death. Amen. Now I am starting a new year with a brand new laptop. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  Yay! Okay lets get back to business.</p>
<p>I am a person who frequently use non-English application while running on the default system locale. The result ? Garbage characters in UI as the Microsoft puts it. This is where AppLocale come in, it allows you to run an application in a specific locale without messing around with the default system locale. Unfortunately, for no good reason Microsoft left an annoying message that kept reminds you about &#8220;AppLocale is just a temporary solution&#8221; whenever you launch AppLocale via shortcut.</p>
<p><img src="http://opcode0x90.files.wordpress.com/2008/01/annoyance.jpg?w=497" alt="" align="middle" /></p>
<p>So I made a patch to remove the nag. All you have to do is drop the patched AppLoc.exe into <strong>C:\Windows\AppPatch\AppLoc.exe</strong> and replace it.</p>
<p>Enjoy !</p>
<hr />AppLoc.exe Patch<br />
<span><a href="http://opcode0x90.googlecode.com/files/AppLoc.rar">http://opcode0x90.googlecode.com/files/AppLoc.rar</a><br />
</span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/opcode0x90.wordpress.com/21/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/opcode0x90.wordpress.com/21/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/21/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=21&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2008/01/09/patch-for-applocale/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>

		<media:content url="http://opcode0x90.files.wordpress.com/2008/01/annoyance.jpg" medium="image" />
	</item>
		<item>
		<title>Some Correction</title>
		<link>http://opcode0x90.wordpress.com/2007/11/01/a-correction/</link>
		<comments>http://opcode0x90.wordpress.com/2007/11/01/a-correction/#comments</comments>
		<pubDate>Thu, 01 Nov 2007 14:14:50 +0000</pubDate>
		<dc:creator>opcode0x90</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://opcode0x90.wordpress.com/2007/11/01/a-correction/</guid>
		<description><![CDATA[After switching to Code::Blocks, I then realize it is a bug of MinGW and not of Dev-C++&#8217;s. The same bugfix too applies to Code::Blocks only with a few difference in the user interface. For Code::Blocks the directories can be found under Settings -&#62; Compiler. (version 1.0 RC2) Just replace\Dev-Cpp\ with \CodeBlocks\. After that just follow [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=20&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>After switching to Code::Blocks, I then realize it is a bug of MinGW and not of Dev-C++&#8217;s. The same bugfix too applies to Code::Blocks only with a few difference in the user interface.</p>
<p>For Code::Blocks the directories can be found under Settings -&gt; Compiler. (version 1.0 RC2) Just replace\Dev-Cpp\ with \CodeBlocks\.</p>
<p>After that just follow this link if you still having problem with Code::Blocks:<br />
<a href="http://wiki.codeblocks.org/index.php?title=Installing_MinGW_with_Vista">http://wiki.codeblocks.org/index.php?title=Installing_MinGW_with_Vista </a></p>
<p>Hope I have clear things up.</p>
<hr />
<p>Here is a snip that tell us why &#8220;ld: XXXXXX.o: No such file: No such file or directory&#8221; happens</p>
<p>&nbsp;</p>
<p><span id="more-20"></span></p>
<p>g++.exe    -LC:\CodeBlocks\lib -LC:\CodeBlocks\lib\gcc\mingw32\3.4.5 -o C:\Users\XXX\Projects\HelloWorldConsole\console.exe .objs\main.o      -s -Wl,&#8211;verbose<br />
GNU ld version 2.15.94 20050118<br />
Supported emulations:<br />
i386pe<br />
using internal linker script:<br />
==================================================<br />
/* Default linker script, for normal executables */<br />
OUTPUT_FORMAT(pei-i386)<br />
<strong> SEARCH_DIR(&#8220;/mingw/mingw32/lib&#8221;); SEARCH_DIR(&#8220;/mingw/lib&#8221;); SEARCH_DIR(&#8220;/usr/local/lib&#8221;); SEARCH_DIR(&#8220;/lib&#8221;); SEARCH_DIR(&#8220;/usr/lib&#8221;);<br />
</strong> ENTRY(_mainCRTStartup)<br />
SECTIONS<br />
{<br />
/* Make the virtual address and file offset synced if the alignment is</p>
<p>&#8230;.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/opcode0x90.wordpress.com/20/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/opcode0x90.wordpress.com/20/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/opcode0x90.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/opcode0x90.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/opcode0x90.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/opcode0x90.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/opcode0x90.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/opcode0x90.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/opcode0x90.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/opcode0x90.wordpress.com/20/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=opcode0x90.wordpress.com&amp;blog=990722&amp;post=20&amp;subd=opcode0x90&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://opcode0x90.wordpress.com/2007/11/01/a-correction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/ef4acfc57292f1f3b4889d1f7fea684d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">opcode0x90</media:title>
		</media:content>
	</item>
	</channel>
</rss>
