<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3814641069442668949</id><updated>2012-01-25T21:47:44.701-08:00</updated><category term='linux'/><category term='pascal'/><category term='ext3'/><category term='android'/><category term='ldc'/><category term='opengl'/><category term='fpc'/><category term='programming'/><category term='macosx'/><category term='gcc'/><category term='optimizations'/><category term='d_language'/><category term='ubuntu'/><category term='laptop'/><category term='hp'/><category term='c'/><title type='text'>Penguin's Diary</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-1966173935089780239</id><published>2012-01-25T21:47:00.001-08:00</published><updated>2012-01-25T21:47:44.706-08:00</updated><title type='text'>HDD power off disable for HP 6510b</title><content type='html'>&amp;nbsp;sudo hdparm -B 254 /dev/sda&lt;br /&gt;&lt;br /&gt;That prevents drive parking at sec interval when running on battery.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-1966173935089780239?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/1966173935089780239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=1966173935089780239' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1966173935089780239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1966173935089780239'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2012/01/hdd-power-off-disable-for-hp-6510b.html' title='HDD power off disable for HP 6510b'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-8047283961834648914</id><published>2012-01-02T15:02:00.001-08:00</published><updated>2012-01-02T15:03:59.190-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='opengl'/><title type='text'>OpenGL tutorials</title><content type='html'>http://ogldev.atspace.co.uk/index.html&lt;br /&gt;&lt;br /&gt;http://www.arcsynthesis.org/gltut/index.html&amp;nbsp; -- book&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-8047283961834648914?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/8047283961834648914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=8047283961834648914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8047283961834648914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8047283961834648914'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2012/01/opengl-tutorials.html' title='OpenGL tutorials'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-3294172771105343890</id><published>2011-12-29T07:19:00.001-08:00</published><updated>2011-12-29T07:19:08.801-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gcc'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>GCC vector intrinsics example</title><content type='html'>typedef int v4si __attribute__ ((vector_size(16)));&lt;br /&gt;&lt;br /&gt;typedef int RGBA[4];&lt;br /&gt;&lt;br /&gt;void diff(const RGBA &amp;amp; a, const RGBA &amp;amp; b, RGBA &amp;amp; out) {&lt;br /&gt;#if 0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(int i = 0; i &amp;lt; 4; ++i)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out[i] = a[i] - b[i];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(int i = 0; i &amp;lt; 4; ++i) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int v = out[i];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (v &amp;lt; 0) v =0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (v &amp;gt; 255) v = 255;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; out[i] = v;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;#else&lt;br /&gt;v4si va = *(v4si*)a;//{a[0], a[1], a[2], a[3]};&lt;br /&gt;v4si vb = *(v4si*)b;//{b[0], b[1], b[2], b[3]};&lt;br /&gt;v4si vr;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; vr = __builtin_ia32_psubd128(va, vb);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(v4si*)(&amp;amp;out[0]) = vr;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;#endif&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-3294172771105343890?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/3294172771105343890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=3294172771105343890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3294172771105343890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3294172771105343890'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/gcc-vector-intrinsics-example.html' title='GCC vector intrinsics example'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-2841068038966665108</id><published>2011-12-28T13:44:00.001-08:00</published><updated>2011-12-28T13:44:53.164-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>nimrod programming language</title><content type='html'>Found this interesting: &lt;br /&gt;&lt;br /&gt;http://force7.de/nimrod/download.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-2841068038966665108?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/2841068038966665108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=2841068038966665108' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/2841068038966665108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/2841068038966665108'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/nimrod-programming-language.html' title='nimrod programming language'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-3974030570183449588</id><published>2011-12-28T05:00:00.000-08:00</published><updated>2011-12-28T05:00:15.580-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='optimizations'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Integer division optimization</title><content type='html'>The idea is to replace division with multiplication and bit shift. &lt;br /&gt;&lt;br /&gt;Found it interesting (GCC does it for you, but FPC not): &lt;br /&gt;&amp;nbsp; &lt;br /&gt;http://www.codeproject.com/KB/cs/FindMulShift.aspx &lt;br /&gt;&lt;br /&gt;http://libdivide.com/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-3974030570183449588?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/3974030570183449588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=3974030570183449588' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3974030570183449588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3974030570183449588'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/integer-division-optimization.html' title='Integer division optimization'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-7253653763695264897</id><published>2011-12-22T12:33:00.000-08:00</published><updated>2011-12-22T12:33:19.674-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fpc'/><category scheme='http://www.blogger.com/atom/ns#' term='pascal'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Memory Leaks</title><content type='html'>Nice article on the topic: http://www.delphibasics.co.uk/Article.asp?Name=Memory&lt;br /&gt;&lt;br /&gt;By the way, Pascal's manner of declaring variables in a single place ('var section') seems unproductive for C/C++ fans but it is very helpful in tracking resources (class references) -- look for the known block in a function and check if all of the references are properly freed on return.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-7253653763695264897?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/7253653763695264897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=7253653763695264897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/7253653763695264897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/7253653763695264897'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/memory-leaks.html' title='Memory Leaks'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-5677136215491836647</id><published>2011-12-16T14:43:00.000-08:00</published><updated>2011-12-16T14:43:16.608-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fpc'/><category scheme='http://www.blogger.com/atom/ns#' term='pascal'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Lazarus problem solution for Ubuntu 11.10</title><content type='html'>"   Lazarus applications have problems to run on latest Ubuntu 11.10 where the reason is new Taskbar menu and scrollbar.&lt;br /&gt;&lt;br /&gt;To get application running like on older Ubuntu we have to remove some functionality from Ubuntu using by this command:&lt;br /&gt;&lt;br /&gt;sudo apt-get remove appmenu-gtk3 appmenu-gtk appmenu-qt&lt;br /&gt;liboverlay-scrollbar-0.2-0 " &lt;br /&gt;&lt;br /&gt;http://62.166.198.202/view.php?id=20520&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-5677136215491836647?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/5677136215491836647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=5677136215491836647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/5677136215491836647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/5677136215491836647'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/lazarus-problem-solution-for-ubuntu.html' title='Lazarus problem solution for Ubuntu 11.10'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-1657248545586962142</id><published>2011-12-12T02:07:00.001-08:00</published><updated>2011-12-12T02:08:25.283-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>LG Optimus One P500 factory menu</title><content type='html'>Working solution for GPS problem for LG P500 Optimus after update to Gingerbread lies in hidden menu which can be opened with &lt;b&gt;3845#*500#&lt;/b&gt; combination in Dialer. Then choose &lt;b&gt;GPS Test &amp;gt; gpsApp Main Menu &amp;gt; Settings &amp;gt; GPS Type&lt;/b&gt; and choose &lt;b&gt;Standalone&lt;/b&gt; instead of &lt;b&gt;A-GPS&lt;/b&gt; (as shown on picture).&lt;br /&gt;&lt;br /&gt;http://muj.trus.cz/post/9622985470/working-solution-for-gps-problem-for-lg-p500&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-1657248545586962142?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/1657248545586962142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=1657248545586962142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1657248545586962142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1657248545586962142'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/lg-optimus-one-p500-factory-menu.html' title='LG Optimus One P500 factory menu'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-5982105752423803414</id><published>2011-12-11T08:54:00.001-08:00</published><updated>2011-12-11T09:13:10.110-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fpc'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='pascal'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='macosx'/><title type='text'>FreePascal experience</title><content type='html'>Tried FPC 2.4.4 recently, what I must say, Lazarus and console fpide are unusable under Ubuntu 11.10 and MacOSX -- crash all the time, no debugger support and strange GUI bugs, although I have not tried them under Windows.&lt;br /&gt;&lt;br /&gt;However, the big POSITIVE side is that the compiler (FPC) is a lightning fast one and easy to install at any platform. It's even faster than javac. I'm really impressed. And GDB understands well pascal programs, tried to debug and it's amazingly feature rich. The language is plain simple and you can easily program in any decent text editor. I really enjoyed playing around with it. The generated applications are lightweight like in good old times, native, fast, not so hungry for memory and cpu resources. Also FPCMAKE is a good tool if you plan to develop a more or less complex application.&lt;br /&gt;&lt;br /&gt;FPDOC tool is not what I like to use (it requires documentation not in the source comments but in a separate xml file), better to pick pasdoc (http://pasdoc.sipsolutions.net/) for those who used to javadoc and doxygen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As for the Pascal programs I've used -- they are not pretty stable, I think it's the fault of the poor memory management strategy applied. It's better to use reference-counting techniques like in GNUstep/Cocoa than TComponent's sole ownership and dangling pointers.&lt;br /&gt;&lt;br /&gt;Playing with the compiler I have tried to implement a base class to do that counting and one more to track weak references. It was a success, so it's not the language fault but the programmers who use it, because my solution looks good and I plan to publish a library on GitHub if I ever program in FP.&lt;br /&gt;&lt;br /&gt;One more deficiency is the lack of Unicode strings support in OS calls, e.g. for file names on Windows. Although it's no problem under Linux and/or MacOSX.&lt;br /&gt;&lt;br /&gt;Generally FPC is a great tool, and there are a lot of useful libraries to make life easy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-5982105752423803414?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/5982105752423803414/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=5982105752423803414' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/5982105752423803414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/5982105752423803414'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/freepascal-experience.html' title='FreePascal experience'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-1658107944213280142</id><published>2011-12-11T08:52:00.001-08:00</published><updated>2011-12-11T08:53:38.116-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>jEdit performance workaround</title><content type='html'>Runs slow on my Ubuntu, but if I make &lt;br /&gt;&lt;br /&gt;jEdit global options -&amp;gt; Appearance -&amp;gt; Show the systray icon to OFF.&lt;br /&gt;&lt;br /&gt;it runs as fast as native. Strange bug on Gnome 3.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-1658107944213280142?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/1658107944213280142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=1658107944213280142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1658107944213280142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1658107944213280142'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/jedit-performance-workaround.html' title='jEdit performance workaround'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-193671123184448671</id><published>2011-12-06T23:04:00.001-08:00</published><updated>2011-12-06T23:05:08.673-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='d_language'/><category scheme='http://www.blogger.com/atom/ns#' term='ldc'/><title type='text'>D language status, LDC2</title><content type='html'>https://github.com/ldc-developers/ldc&lt;br /&gt;&lt;br /&gt;http://www.digitalmars.com/d/archives/digitalmars/D/State_of_LDC_148791.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-193671123184448671?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/193671123184448671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=193671123184448671' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/193671123184448671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/193671123184448671'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/d-language-status-ldc2.html' title='D language status, LDC2'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-6049197215127150706</id><published>2011-12-04T08:06:00.001-08:00</published><updated>2011-12-04T08:08:13.346-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fpc'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>FreePascal status</title><content type='html'>Unicode is supported by LCL (Lazarus) via UTF-8. There are several functions to convert from system encoding strings (codepage on Windows) to utf-8 strings.&lt;br /&gt;&lt;br /&gt;http://wiki.freepascal.org/LCL_Unicode_Support&lt;br /&gt;&lt;br /&gt;According to the docs, fpc supports MacOSX 32 and 64-bit, iOS targets.http://wiki.freepascal.org/LCL_Unicode_Support&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-6049197215127150706?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/6049197215127150706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=6049197215127150706' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/6049197215127150706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/6049197215127150706'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/12/freepascal-status.html' title='FreePascal status'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-8723188193694213506</id><published>2011-11-06T12:24:00.000-08:00</published><updated>2011-11-06T12:24:56.812-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='d_language'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Digitalmars D version 2 a fresh look</title><content type='html'>A few years ago I spotted the D language and was quite impressed by it, although the division of standard library, the development of a new 2.0 version and the stale state of many libraries stopped from active usage of it.&lt;br /&gt;&lt;br /&gt;Now a lot of things changed, the 2.0 version is more or less stable and there's a GNU D compiler for this version and it's actively developed/supported, and even planned to be maintained as one of the GNU Compiler Collection. I wish it come true.&lt;br /&gt;&lt;br /&gt;Having reviewed the specs for the D 2.0 I should admit that the language is engineered VERY thoroughly, with many features I was missing in Java and C++, it's clean and rich at the same time.&lt;br /&gt;&lt;br /&gt;At first I was planning to use LDC compiler for D 1.0 because failed to compile GDC for MacOSX, but then I decided to start coding something useful for Linux only to study the language, and probably later there will be a viable implementation for MacOSX. The official implementation (DMD) can compile only 32-bit binaries for MacOSX, that's why I'm concerned on alternative implementations like GDC, LDC2...&lt;br /&gt;&lt;br /&gt;Here's the link to the site:&lt;br /&gt;&lt;br /&gt;http://www.d-programming-language.org&lt;br /&gt;http://www.digitalmars.com&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-8723188193694213506?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/8723188193694213506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=8723188193694213506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8723188193694213506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8723188193694213506'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/11/digitalmars-d-version-2-fresh-look.html' title='Digitalmars D version 2 a fresh look'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-4288690905922284876</id><published>2011-11-02T00:36:00.000-07:00</published><updated>2011-11-02T00:40:43.079-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='d_language'/><category scheme='http://www.blogger.com/atom/ns#' term='ldc'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>LDC under ubuntu 11.10 one more try</title><content type='html'>Installed through apt llvm-2.9, downloaded trunk LDC, executed ccmake, and added -ldl to LIBCONFIG_LDFLAGS. Successfully built!&lt;br /&gt;&lt;br /&gt;Build tango, and adjusted /usr/local/etc/ldc.conf:&lt;br /&gt;&lt;br /&gt;// This configuration file uses libconfig.&lt;br /&gt;// See http://www.hyperrealm.com/libconfig/ for syntax details.&lt;br /&gt;&lt;br /&gt;// Special macros:&lt;br /&gt;// %%ldcbinarypath%%&lt;br /&gt;//&amp;nbsp; - is replaced with the path to the directory holding the ldc executable&lt;br /&gt;&lt;br /&gt;// The default group is required&lt;br /&gt;default:&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 'switches' holds array of string that are appends to the command line&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // arguments before they are parsed.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; switches = [&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-I/usr/local/include/d",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-I/usr/local/include/d/tango/core/vendor",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-L-L/usr/local/lib",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-L-ltango-ldc",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-d-version=Tango",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-defaultlib=tango-ldc",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "-debuglib=tango-ldc"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ];&lt;br /&gt;};&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-4288690905922284876?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/4288690905922284876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=4288690905922284876' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/4288690905922284876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/4288690905922284876'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/11/ldc-under-ubuntu-1110-one-more-try.html' title='LDC under ubuntu 11.10 one more try'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-3335096679179363733</id><published>2011-11-01T13:23:00.000-07:00</published><updated>2011-11-01T13:57:36.400-07:00</updated><title type='text'>LDC under Ubuntu 11.10</title><content type='html'>Install llvm 2.9 from repo, ccmake, specify path to llvm-config tool: /usr/lib/llvm-2.9/bin/llvm-config, finally was unable to build from sources. :(&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-3335096679179363733?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/3335096679179363733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=3335096679179363733' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3335096679179363733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3335096679179363733'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/11/ldc-under-ubuntu-1110.html' title='LDC under Ubuntu 11.10'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-7567706903753389789</id><published>2011-10-31T12:46:00.000-07:00</published><updated>2011-11-02T00:37:36.128-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='d_language'/><category scheme='http://www.blogger.com/atom/ns#' term='ldc'/><category scheme='http://www.blogger.com/atom/ns#' term='macosx'/><title type='text'>D programming under MacOS X 10.6, LDC</title><content type='html'>See http://dsource.org/projects/ldc/wiki/OSXBuildInstructions&lt;br /&gt;&lt;br /&gt;Macports to install llvm package (2.9). Then get the latest LDC (tip) from bitbucket mercurial repo, ccmake, adjust paths to match those of MacPorts (/opt/local).&lt;br /&gt;&lt;br /&gt;Then build and install tango, as described in the link above.&lt;br /&gt;&lt;br /&gt;Edit ldc.conf&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; switches = [&lt;br /&gt;        "-I/opt/local/include/d",&lt;br /&gt;        "-I/opt/local/include/d/tango/core/vendor",&lt;br /&gt;        "-L-L%%ldcbinarypath%%/../lib",&lt;br /&gt;        "-L-ltango",&lt;br /&gt;        "-d-version=Tango",&lt;br /&gt;        "-defaultlib=tango-ldc",&lt;br /&gt;        "-debuglib=tango-ldc"&lt;br /&gt;    ];&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-7567706903753389789?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/7567706903753389789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=7567706903753389789' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/7567706903753389789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/7567706903753389789'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/10/d-programming-under-macos-x-106-ldc.html' title='D programming under MacOS X 10.6, LDC'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-2895528479967727748</id><published>2011-01-27T07:43:00.000-08:00</published><updated>2011-01-28T02:54:44.532-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='d_language'/><category scheme='http://www.blogger.com/atom/ns#' term='ldc'/><category scheme='http://www.blogger.com/atom/ns#' term='macosx'/><title type='text'>LDC under MacOSX</title><content type='html'>Can't build it yet but the information I gathered is as follows:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Setup&lt;/strong&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo port install llvm&lt;br /&gt;sudo port install llvm-devel&lt;br /&gt;sudo port install mercurial&lt;br /&gt;sudo port install ruby&lt;br /&gt;sudo port install cmake&lt;br /&gt;&lt;br /&gt;hg clone -r 0.9.2 https://bitbucket.org/lindquist/ldc&lt;br /&gt;svn co http://svn.dsource.org/projects/tango/tags/releases/0.99.9 tango&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Building LDC&lt;/strong&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cmake -DCMAKE_BUILD_TYPE=Release -DDEFAULT_TARGET="x86_64-apple-darwin10" ../ldc&lt;br /&gt;make -j2&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Building Tango&lt;/strong&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Links&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;https://bitbucket.org/lindquist/ldc&lt;br /&gt;http://www.dsource.org/projects/tango&lt;br /&gt;http://dsource.org/projects/ldc/wiki/BuildInstructionsTangoTrunk&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-2895528479967727748?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/2895528479967727748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=2895528479967727748' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/2895528479967727748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/2895528479967727748'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/01/ldc-under-macosx.html' title='LDC under MacOSX'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-3619597320255630704</id><published>2011-01-26T07:44:00.000-08:00</published><updated>2011-01-26T07:52:31.787-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='macosx'/><category scheme='http://www.blogger.com/atom/ns#' term='ext3'/><title type='text'>ext2/3 from macosx</title><content type='html'>http://code.google.com/p/macfuse/&lt;br /&gt;&lt;br /&gt;http://sourceforge.net/projects/fuse-ext2/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-3619597320255630704?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/3619597320255630704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=3619597320255630704' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3619597320255630704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3619597320255630704'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2011/01/ext23-from-macosx.html' title='ext2/3 from macosx'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-3976428450087881639</id><published>2010-10-02T14:11:00.000-07:00</published><updated>2010-10-02T14:12:38.771-07:00</updated><title type='text'>Genius G-Pen 560 under Ubuntu 10.04</title><content type='html'>1) add ppa and install wizardpen driver (xorg) from it&lt;br /&gt;2) edit /usr/lib/X11/xorg.conf.d/70-wizardpen.conf to the following:&lt;br /&gt;&lt;br /&gt;Section "InputClass"&lt;br /&gt;   Identifier "wizardpen"&lt;br /&gt;   MatchIsTablet "on"&lt;br /&gt;   MatchDevicePath "/dev/input/event*"&lt;br /&gt;#   MatchVendor "UC-LOGIC|KYE Systems|Ace Cad"&lt;br /&gt;   Driver "wizardpen"&lt;br /&gt;   Option "TopZ" "32"&lt;br /&gt;   Option "BottomZ" "1023"&lt;br /&gt;   Option "TopX" "185"&lt;br /&gt;   Option "TopY" "372"&lt;br /&gt;   Option "BottomX" "11811"&lt;br /&gt;   Option "BottomY" "8793"&lt;br /&gt;   &lt;br /&gt;EndSection&lt;br /&gt;Section "InputClass"&lt;br /&gt;   Identifier "wizardpen ignore mouse dev"&lt;br /&gt;   MatchIsTablet "on"&lt;br /&gt;   MatchDevicePath "/dev/input/mouse*"&lt;br /&gt;#   MatchVendor "UC-LOGIC|KYE Systems|Ace Cad"&lt;br /&gt;   Driver ""&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;3) reboot&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-3976428450087881639?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/3976428450087881639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=3976428450087881639' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3976428450087881639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/3976428450087881639'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2010/10/genius-g-pen-560-under-ubuntu-1004.html' title='Genius G-Pen 560 under Ubuntu 10.04'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-5865498374555246734</id><published>2009-12-27T09:20:00.001-08:00</published><updated>2009-12-27T09:22:38.439-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gcc'/><category scheme='http://www.blogger.com/atom/ns#' term='c'/><title type='text'>link once (simulating c++ template code in pure c with GCC extensions)</title><content type='html'>The following definition will be merged in all compiled object files, i.e. the first function implementation will be linked into the produced binary and the following copies rejected.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;__attribute__((section(".gnu.linkonce.c"))) int commonFunc(int a, int b) {&lt;br /&gt;    return a-b;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-5865498374555246734?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/5865498374555246734/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=5865498374555246734' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/5865498374555246734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/5865498374555246734'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2009/12/link-once-simulating-c-template-code-in.html' title='link once (simulating c++ template code in pure c with GCC extensions)'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-2516525968699384668</id><published>2009-12-27T08:06:00.000-08:00</published><updated>2009-12-27T08:25:08.650-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='c'/><title type='text'>Simmulating "exceptions" in pure C</title><content type='html'>&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; #include &amp;lt;stdio.h&amp;gt;  &lt;br /&gt; #include &amp;lt;setjmp.h&amp;gt;  &lt;br /&gt; typedef struct ExcHandlerDesc_ {  &lt;br /&gt;     struct ExcHandlerDesc_ * prev;  &lt;br /&gt;     jmp_buf jmpBuf;  &lt;br /&gt;     int handled; // 0 = did not handle the exception  &lt;br /&gt;     int excId; // the id of unhandled exception for rethrow  &lt;br /&gt; } ExcHandlerDesc;  &lt;br /&gt; static ExcHandlerDesc * xroot;  &lt;br /&gt; #define XR_CODE_BLOCK 0  &lt;br /&gt; #define XR_FINALLY_BLOCK -1  &lt;br /&gt; // starting exception id  &lt;br /&gt; #define XR_EXC_ID 2  &lt;br /&gt; //#define X_TRY(exchd_) addXHandler(exchd_); switch (setjmp(exchd_.jmpBuf)) {  &lt;br /&gt; //#define X_END(exchd_) }; removeXHandler(exchd_);  &lt;br /&gt; ////////  &lt;br /&gt; void throwIt(int v) {  &lt;br /&gt;     if (xroot == 0) {  &lt;br /&gt;         printf("Unhandled exception %i !!!\n", v);  &lt;br /&gt;         exit(1);  &lt;br /&gt;     }  &lt;br /&gt;     xroot-&amp;gt;excId = v;  &lt;br /&gt;     //xroot-&amp;gt;handled = 1;  &lt;br /&gt;     longjmp(xroot-&amp;gt;jmpBuf, v);  &lt;br /&gt; }  &lt;br /&gt; void addXHandler(ExcHandlerDesc*d) {  &lt;br /&gt;     d-&amp;gt;handled = 1;  &lt;br /&gt;     d-&amp;gt;prev = xroot;  &lt;br /&gt;     xroot = d;  &lt;br /&gt; }  &lt;br /&gt; void removeXHandler() {  &lt;br /&gt;     if (xroot) {  &lt;br /&gt;         xroot = xroot-&amp;gt;prev;      &lt;br /&gt;     }  &lt;br /&gt; }  &lt;br /&gt; ////////  &lt;br /&gt; void funcWithExc() {  &lt;br /&gt;     // throw  &lt;br /&gt;     throwIt(2);  &lt;br /&gt; }  &lt;br /&gt; void func1() {  &lt;br /&gt;     funcWithExc();  &lt;br /&gt; }  &lt;br /&gt; void func0()   &lt;br /&gt; {  &lt;br /&gt;     int a;  &lt;br /&gt;     // try  &lt;br /&gt;     ExcHandlerDesc xhd;  &lt;br /&gt;     addXHandler(&amp;amp;xhd);  &lt;br /&gt;     a = setjmp(xhd.jmpBuf);  &lt;br /&gt;     if ((a != XR_CODE_BLOCK) &amp;amp;&amp;amp; (xroot == &amp;amp;xhd)) {  &lt;br /&gt;         removeXHandler();  &lt;br /&gt;     }  &lt;br /&gt;     switch(a) {  &lt;br /&gt;         case XR_CODE_BLOCK:  &lt;br /&gt;             func1();  &lt;br /&gt;             break;  &lt;br /&gt;         case XR_FINALLY_BLOCK:  &lt;br /&gt;             // do cleanup  &lt;br /&gt;             if (!xhd.handled)  &lt;br /&gt;                 throwIt(xhd.excId);  &lt;br /&gt;             break;  &lt;br /&gt;         case XR_EXC_ID:  &lt;br /&gt;             // handle it  &lt;br /&gt;             printf("Caught %i !\n", xhd.excId);  &lt;br /&gt;             // handler is removed and rethrow here is allowed  &lt;br /&gt;             throwIt(2);  &lt;br /&gt;             break;  &lt;br /&gt;         default:  &lt;br /&gt;             // unhandled!  &lt;br /&gt;             xhd.handled = 0;  &lt;br /&gt;             break;  &lt;br /&gt;     }  &lt;br /&gt;     // cleanup  &lt;br /&gt;     if (a != XR_FINALLY_BLOCK)  &lt;br /&gt;         longjmp(xhd.jmpBuf, XR_FINALLY_BLOCK);  &lt;br /&gt;     /// end exception handling  &lt;br /&gt; }  &lt;br /&gt; int main() {  &lt;br /&gt;     func0();  &lt;br /&gt;     return 0;  &lt;br /&gt; }  &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-2516525968699384668?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/2516525968699384668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=2516525968699384668' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/2516525968699384668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/2516525968699384668'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2009/12/simmulating-exceptions-in-pure-c.html' title='Simmulating &quot;exceptions&quot; in pure C'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-9122319741961713295</id><published>2009-05-17T03:05:00.000-07:00</published><updated>2009-05-17T03:07:54.083-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='laptop'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='hp'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu 9.04 on HP Compaq 6510b</title><content type='html'>Core2Duo T7250, 2GB, intel 965&lt;br /&gt;&lt;br /&gt;LiveCD runs fine, all hardware works.&lt;br /&gt;After installation everything works just fine except compiz -- it doesn't run, although 3D games like TuxRacer, Chromium etc. run smooth.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-9122319741961713295?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/9122319741961713295/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=9122319741961713295' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/9122319741961713295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/9122319741961713295'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2009/05/ubuntu-904-on-hp-compaq-6510b.html' title='Ubuntu 9.04 on HP Compaq 6510b'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-1457943982984710488</id><published>2009-03-19T16:27:00.000-07:00</published><updated>2009-03-19T16:28:46.915-07:00</updated><title type='text'>Beholder BeholdTV 507 Lirc settings</title><content type='html'>/etc/lircd.conf&lt;br /&gt;&lt;br /&gt;begin remote&lt;br /&gt;name Beholder&lt;br /&gt;bits 16&lt;br /&gt;eps 30&lt;br /&gt;aeps 100&lt;br /&gt;one 0 0&lt;br /&gt;zero 0 0&lt;br /&gt;pre_data_bits 16&lt;br /&gt;pre_data 0x8001&lt;br /&gt;gap 132757&lt;br /&gt;toggle_bit 0&lt;br /&gt;&lt;br /&gt;begin codes&lt;br /&gt;1 0x0002&lt;br /&gt;2 0x0003&lt;br /&gt;3 0x0004&lt;br /&gt;4 0x0005&lt;br /&gt;5 0x0006&lt;br /&gt;6 0x0007&lt;br /&gt;7 0x0008&lt;br /&gt;8 0x0009&lt;br /&gt;9 0x000A&lt;br /&gt;0 0x000B&lt;br /&gt;UP 0x0067&lt;br /&gt;LEFT 0x0069&lt;br /&gt;RIGHT 0x006A&lt;br /&gt;DOWN 0x006C&lt;br /&gt;MUTE 0x0071&lt;br /&gt;VOL- 0x0072&lt;br /&gt;VOL+ 0x0073&lt;br /&gt;POWER 0x0074&lt;br /&gt;RECALL 0x0081&lt;br /&gt;MENU 0x008B&lt;br /&gt;SLEEP 0x008E&lt;br /&gt;OK 0x0160&lt;br /&gt;INFO 0x0166&lt;br /&gt;MODE 0x0175&lt;br /&gt;TV/AV 0x0179&lt;br /&gt;FUNCTION 0x0181&lt;br /&gt;AUDIO 0x0188&lt;br /&gt;CHANNEL+ 0x0192&lt;br /&gt;CHANNEL- 0x0193&lt;br /&gt;DIGITS 0x019D&lt;br /&gt;end codes&lt;br /&gt;end remote&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-1457943982984710488?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/1457943982984710488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=1457943982984710488' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1457943982984710488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1457943982984710488'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2009/03/beholder-beholdtv-507-lirc-settings.html' title='Beholder BeholdTV 507 Lirc settings'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-7626773468740728757</id><published>2008-11-29T09:20:00.000-08:00</published><updated>2008-11-29T09:32:28.206-08:00</updated><title type='text'>Genius G-Pen 560 Tablet on Ubuntu Linux 8.10 Intrepid</title><content type='html'>This tablet is detected as "Aiptek" and successfully managed by aiptek kernel driver. However, for X11 you'll need a recent wizardpen_drv (0.6.x)&lt;br /&gt;&lt;br /&gt;1) Find in "wizardpen.c" lines with case BTN_LEFT etc. and add BTN_STYLUS, BTN_STYLUS2 and BTN_TOUCH where appropriate. Compile and install as described in the README.&lt;br /&gt;&lt;br /&gt;2) Do not add tablet description to xorg.conf, instead comment the mouse definition in the layout section of the config and add file "99-x11-wizardpen.fdi" to "/etc/hal/fdi/policy"&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="ISO-8859-1" ?&amp;gt;&lt;br /&gt;&amp;lt;deviceinfo version="0.2"&amp;gt;&lt;br /&gt;&amp;lt;device&amp;gt;&lt;br /&gt;&amp;lt;!-- This MUST match with the name of your tablet --&amp;gt;&lt;br /&gt;&amp;lt;match key="info.product" contains="Aiptek"&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_driver" type="string"&amp;gt;wizardpen&amp;lt;/merge&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;!-- &amp;lt;merge key="input.x11_driver" type="string"&amp;gt;wacom&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.Type" type="string"&amp;gt;stylus&amp;lt;/merge&amp;gt; --&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.SendCoreEvents" type="string"&amp;gt;true&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.TopX" type="string"&amp;gt;185&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.TopY" type="string"&amp;gt;372&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.BottomX" type="string"&amp;gt;11811&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.BottomY" type="string"&amp;gt;8793&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.MaxX" type="string"&amp;gt;11811&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.MaxY" type="string"&amp;gt;8793&amp;lt;/merge&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.TopZ" type="string"&amp;gt;32&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.MaxZ" type="string"&amp;gt;1023&amp;lt;/merge&amp;gt;&lt;br /&gt;&amp;lt;merge key="input.x11_options.BottomZ" type="string"&amp;gt;1023&amp;lt;/merge&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/match&amp;gt;&lt;br /&gt;&amp;lt;/device&amp;gt;&lt;br /&gt;&amp;lt;/deviceinfo&amp;gt;&lt;br /&gt;---&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-7626773468740728757?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/7626773468740728757/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=7626773468740728757' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/7626773468740728757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/7626773468740728757'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2008/11/genius-g-pen-560-tablet-on-ubuntu-linux.html' title='Genius G-Pen 560 Tablet on Ubuntu Linux 8.10 Intrepid'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-1271838686425187140</id><published>2008-11-29T09:18:00.000-08:00</published><updated>2008-11-29T09:20:18.845-08:00</updated><title type='text'>Beholder TV tuner 507 on Ubuntu Linux 8.10 Intrepid</title><content type='html'>Create new file, e.g. "beholder.conf" in /etc/modprobe.d/&lt;br /&gt;with the following text:&lt;br /&gt;&lt;br /&gt;-----&lt;br /&gt;&lt;br /&gt;options tuner secam=d&lt;br /&gt;options tda9887 secam=d&lt;br /&gt;options saa7134 tuner=38 card=67 gbuffers=4&lt;br /&gt;alias char-major-89-* i2c-dev&lt;br /&gt;options i2c-algo-bit bit_test=1&lt;br /&gt;&lt;br /&gt;----&lt;br /&gt;&lt;br /&gt;Now reboot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-1271838686425187140?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/1271838686425187140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=1271838686425187140' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1271838686425187140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/1271838686425187140'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2008/11/beholder-tv-tuner-507-on-ubuntu-linux.html' title='Beholder TV tuner 507 on Ubuntu Linux 8.10 Intrepid'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-8680177317578718142</id><published>2007-07-11T03:15:00.000-07:00</published><updated>2007-07-11T03:18:53.349-07:00</updated><title type='text'>watch and capture TV on Linux</title><content type='html'>&lt;p style="margin-bottom: 0cm;"&gt;How to capture and watch tv&lt;/p&gt;  &lt;p style="margin-bottom: 0cm;"&gt;Use xawtv (it doesn't lock the devices and doesn't hang, at least while I was experimenting ;) and ffmpeg.&lt;/p&gt;  &lt;p style="margin-bottom: 0cm;"&gt;run xawtv, switch to favourite channel.&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm;"&gt;ffmpeg -f mpegvideo -acodec mp2 -ar 48000 -ab 192 -ac 2 -ad /dev/dsp -vd /dev/video0 -vcodec mpeg2video -b 6000 -s 720x576 -aspect 4:3 test_cap.mpeg&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;To fix problems with SECAM:&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;select SECAM channel in xawtv, then&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;v4lctl setattr norm SECAM-DK&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;Here is a sample .xawtv file:&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[defaults]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = PAL&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[tv xxi]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 77.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[tdk]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 111.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[eurosport]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 119.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[nat. geo]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 126.899&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[discovery]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 135.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[animal planet]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 143.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[tvc]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 151.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[dziecki]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 159.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[euronews]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 167.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[hallmark]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 175.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[soviet kino]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 191.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[one.by]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 215.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[ont]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = SECAM&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 222.599&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[belmuztv]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 239.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[8]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 247.239&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[rambler]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 487.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[disc. science]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 503.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[extreme]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 551.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[history]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 567.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[dziecki2]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 575.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[WF]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 783.240&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[ntv]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = SECAM&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 58.930&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[lad]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = SECAM&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 84.900&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[stv]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = SECAM&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 92.930&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[bt]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = secam&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 182.970&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[mtv]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 198.510&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[rtr]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = SECAM&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 207.150&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;[mir]&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;norm = SECAM&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;freq = 230.750&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-8680177317578718142?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/8680177317578718142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=8680177317578718142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8680177317578718142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8680177317578718142'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2007/07/watch-and-capture-tv-on-linux.html' title='watch and capture TV on Linux'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-8936089970070717967</id><published>2007-06-04T01:11:00.000-07:00</published><updated>2007-06-04T01:12:13.057-07:00</updated><title type='text'>Beholder TV tuner</title><content type='html'>For kernel 2.6.19.2&lt;br /&gt;&lt;br /&gt;How to setup Beholder TV tuner&lt;br /&gt;&lt;br /&gt;1)see README.saa7134 in linux-source/Documentation&lt;br /&gt;2)modprobe -r saa7134&lt;br /&gt;3)modprobe saa7134 card=67&lt;br /&gt;&lt;br /&gt;Create /etc/modprobe.d/beholder.conf with:&lt;br /&gt; options saa7134 card=67&lt;br /&gt;&lt;br /&gt;Sound card setup:&lt;br /&gt;&lt;br /&gt;Create /etc/modprobe.d/sound.conf with&lt;br /&gt; options snd-hda-intel model=6stack-dig&lt;br /&gt;&lt;br /&gt;Use ALSA mixer, Front for general sound, Analog Mix for TV sound + Line-In for kdetv.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-8936089970070717967?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/8936089970070717967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=8936089970070717967' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8936089970070717967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/8936089970070717967'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2007/06/beholder-tv-tuner.html' title='Beholder TV tuner'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3814641069442668949.post-6502593843247589103</id><published>2007-06-01T08:42:00.000-07:00</published><updated>2007-06-01T08:52:02.758-07:00</updated><title type='text'>G-Pen 560</title><content type='html'>How I made my Genius G-560 tablet working in Debian Linux 4.0 .&lt;br /&gt;&lt;br /&gt;1) Downloaded wizardpen driver&lt;br /&gt;&lt;br /&gt;http://www.stud.fit.vutbr.cz/~xhorak28/index.php?page=WizardPen_Driver&lt;br /&gt;&lt;br /&gt;2) Unpacked to home directory.&lt;br /&gt;3) In the make file  Adjusted the directory for the directory where x.org drivers lie.&lt;br /&gt;4) Did as it is written in INSTALL and README.&lt;br /&gt;5) with cat and hexdump utilites I have found the proper /dev/input/event device for the tablet ;-) &lt;br /&gt;6) Modified the x.org file for:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Section "InputDevice"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Identifier     "Tablet"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Driver         "wizardpen"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Option         "Device" "/dev/input/event1"  # adjust for yours device for the tablet&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Option    "MaxX"    "11939"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Option    "MaxY"    "8939"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Option    "MaxZ"    "1023"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Option    "TopZ"    "32"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Option     "BottomY"    "8650"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;EndSection &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;Section "ServerLayout"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Identifier     "Default Layout"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    Screen         "Default Screen" 0 0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    InputDevice    "Generic Keyboard"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    InputDevice    "Configured Mouse" "CorePointer"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    InputDevice       "Tablet" "AlwaysCore"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;EndSection &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7) Restarted the x.org server.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3814641069442668949-6502593843247589103?l=penguins-diary.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://penguins-diary.blogspot.com/feeds/6502593843247589103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3814641069442668949&amp;postID=6502593843247589103' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/6502593843247589103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3814641069442668949/posts/default/6502593843247589103'/><link rel='alternate' type='text/html' href='http://penguins-diary.blogspot.com/2007/06/g-pen-560.html' title='G-Pen 560'/><author><name>Yury</name><uri>http://www.blogger.com/profile/07149334256590529499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>
