<?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-8786117032177741671</id><updated>2012-02-16T10:43:09.420-08:00</updated><category term='caché'/><category term='Modem'/><category term='Pruebas servidor'/><category term='VHDL'/><category term='9.10'/><category term='Programación'/><category term='unisim'/><category term='rapidshare'/><category term='Microcontroladores'/><category term='ISEWebPACK'/><category term='Puertos'/><category term='Freepascal'/><category term='Escritorio'/><category term='Shell'/><category term='Nvidia'/><category term='Kubuntu'/><category term='mesa'/><category term='python'/><category term='PCTel'/><category term='Recuerdos'/><category term='Mandrake'/><category term='Humor'/><category term='c++'/><category term='capturas'/><category term='KDE'/><category term='Microchip'/><category term='simulación'/><category term='sdcc'/><category term='octave'/><category term='Debian'/><category term='Xilinx'/><category term='Karmic Koala'/><category term='vcomponents'/><category term='PicKit2'/><category term='dyndsn'/><category term='PicoBlaze'/><category term='SuSE'/><category term='c'/><category term='zv6130us'/><category term='code2html'/><category term='no-ip'/><category term='Lucid'/><category term='Linux'/><category term='ATI'/><category term='GHDL'/><category term='Hardware'/><category term='Ubuntu'/><category term='Karmic'/><category term='Xpress200M'/><category term='Piklab'/><category term='Cable Xilinx'/><category term='Pascal'/><category term='google'/><title type='text'>De todo un poco</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>tskyW1lk</name><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>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-1864180160077652615</id><published>2011-12-26T08:51:00.000-08:00</published><updated>2011-12-26T09:04:36.587-08:00</updated><title type='text'>Simulación BPSK en python/numpy/matplotlib</title><content type='html'>&lt;div&gt;Una pequeña prueba&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://1.bp.blogspot.com/-VYIeA8AeVNU/Tviniyff2ZI/AAAAAAAAANU/0Og6nCNf8Ds/s1600/bpsk.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 301px;" src="http://1.bp.blogspot.com/-VYIeA8AeVNU/Tviniyff2ZI/AAAAAAAAANU/0Og6nCNf8Ds/s400/bpsk.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5690482345293896082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import &lt;b&gt;numpy&lt;/b&gt; &lt;b&gt;as&lt;/b&gt; &lt;b&gt;np&lt;/b&gt;&lt;br /&gt;from &lt;b&gt;scipy&lt;/b&gt;.&lt;b&gt;special&lt;/b&gt; import &lt;b&gt;erfc&lt;/b&gt;&lt;br /&gt;&lt;i&gt;#from scipy import weave&lt;/i&gt;&lt;br /&gt;&lt;i&gt;#from scipy.weave import converters&lt;/i&gt;&lt;br /&gt;import &lt;b&gt;matplotlib&lt;/b&gt;.&lt;b&gt;pyplot&lt;/b&gt; &lt;b&gt;as&lt;/b&gt; &lt;b&gt;plt&lt;/b&gt;&lt;br /&gt;from &lt;b&gt;time&lt;/b&gt; import &lt;b&gt;time&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;N&lt;/b&gt; = 5000000&lt;br /&gt;&lt;b&gt;ip&lt;/b&gt; = &lt;b&gt;np&lt;/b&gt;.&lt;b&gt;random&lt;/b&gt;.&lt;b&gt;rand&lt;/b&gt;(1,&lt;b&gt;N&lt;/b&gt;)&amp;gt;0.5;&lt;br /&gt;&lt;b&gt;s&lt;/b&gt; = 2*&lt;b&gt;ip&lt;/b&gt;-1&lt;br /&gt;&lt;b&gt;t&lt;/b&gt; = &lt;b&gt;time&lt;/b&gt;()&lt;br /&gt;&lt;b&gt;n&lt;/b&gt; = 1.0/&lt;b&gt;np&lt;/b&gt;.&lt;b&gt;sqrt&lt;/b&gt;(2.0)*(&lt;b&gt;np&lt;/b&gt;.&lt;b&gt;random&lt;/b&gt;.&lt;b&gt;randn&lt;/b&gt;(1,&lt;b&gt;N&lt;/b&gt;)+1&lt;b&gt;j&lt;/b&gt;*&lt;b&gt;np&lt;/b&gt;.&lt;b&gt;random&lt;/b&gt;.&lt;b&gt;randn&lt;/b&gt;(1,&lt;b&gt;N&lt;/b&gt;))&lt;br /&gt;print(&lt;b&gt;time&lt;/b&gt;()-&lt;b&gt;t&lt;/b&gt;)&lt;br /&gt;&lt;b&gt;Eb_N0_dB&lt;/b&gt; = &lt;b&gt;np&lt;/b&gt;.&lt;b&gt;arange&lt;/b&gt;(-3.0,11.0,1.0) &lt;i&gt;#-3 a 10 dB&lt;/i&gt;&lt;br /&gt;&lt;b&gt;errors&lt;/b&gt; = []&lt;br /&gt;&lt;b&gt;terrors&lt;/b&gt; = []&lt;br /&gt;for &lt;b&gt;EbN0&lt;/b&gt; in &lt;b&gt;Eb_N0_dB&lt;/b&gt;:&lt;br /&gt; &lt;b&gt;t&lt;/b&gt; = &lt;b&gt;time&lt;/b&gt;()&lt;br /&gt; &lt;b&gt;y&lt;/b&gt; = &lt;b&gt;s&lt;/b&gt;+10**(-&lt;b&gt;EbN0&lt;/b&gt;/20.0)*&lt;b&gt;n&lt;/b&gt;&lt;br /&gt; &lt;b&gt;ipHat&lt;/b&gt; = &lt;b&gt;y&lt;/b&gt;.&lt;b&gt;real&lt;/b&gt;&amp;gt;0&lt;br /&gt; &lt;b&gt;err&lt;/b&gt; = &lt;b&gt;float&lt;/b&gt;((&lt;b&gt;ip&lt;/b&gt; != &lt;b&gt;ipHat&lt;/b&gt;).&lt;b&gt;sum&lt;/b&gt;())/&lt;b&gt;N&lt;/b&gt;&lt;br /&gt; &lt;b&gt;errors&lt;/b&gt;.&lt;b&gt;append&lt;/b&gt;(&lt;b&gt;err&lt;/b&gt;)&lt;br /&gt; &lt;b&gt;terrors&lt;/b&gt;.&lt;b&gt;append&lt;/b&gt;(0.5*&lt;b&gt;erfc&lt;/b&gt;(&lt;b&gt;np&lt;/b&gt;.&lt;b&gt;sqrt&lt;/b&gt;(10**(&lt;b&gt;EbN0&lt;/b&gt;/10.0))))&lt;br /&gt; print(&lt;i&gt;"time = %s, EbN0 = %s, ber = %s"&lt;/i&gt;%(&lt;b&gt;time&lt;/b&gt;()-&lt;b&gt;t&lt;/b&gt;,&lt;b&gt;EbN0&lt;/b&gt;,&lt;b&gt;err&lt;/b&gt;))&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;semilogy&lt;/b&gt;(&lt;b&gt;Eb_N0_dB&lt;/b&gt;,&lt;b&gt;errors&lt;/b&gt;,&lt;i&gt;'-o'&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;semilogy&lt;/b&gt;(&lt;b&gt;Eb_N0_dB&lt;/b&gt;,&lt;b&gt;terrors&lt;/b&gt;,&lt;i&gt;':v'&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;legend&lt;/b&gt;((&lt;i&gt;'simulation'&lt;/i&gt;,&lt;i&gt;'theory'&lt;/i&gt;),&lt;i&gt;'upper right'&lt;/i&gt;,&lt;b&gt;shadow&lt;/b&gt;=&lt;b&gt;True&lt;/b&gt;,&lt;b&gt;fancybox&lt;/b&gt;=&lt;b&gt;True&lt;/b&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;title&lt;/b&gt;(&lt;i&gt;'Bit Error Rate for BPSK'&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;xlabel&lt;/b&gt;(&lt;b&gt;r&lt;/b&gt;&lt;i&gt;'$\frac{Eb}{N0}$, dB'&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;ylabel&lt;/b&gt;(&lt;i&gt;'Bit Error Rate'&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;grid&lt;/b&gt;(&lt;b&gt;True&lt;/b&gt;)&lt;br /&gt;&lt;b&gt;plt&lt;/b&gt;.&lt;b&gt;show&lt;/b&gt;()&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&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/8786117032177741671-1864180160077652615?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1864180160077652615/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1864180160077652615' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1864180160077652615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1864180160077652615'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2011/12/simulacion-bpsk-en-pythonnumpymatplotli.html' title='Simulación BPSK en python/numpy/matplotlib'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-VYIeA8AeVNU/Tviniyff2ZI/AAAAAAAAANU/0Og6nCNf8Ds/s72-c/bpsk.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-4952161537477711861</id><published>2011-07-29T10:16:00.000-07:00</published><updated>2011-07-29T10:28:15.798-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='code2html'/><title type='text'>Una prueba de code2html</title><content type='html'>&lt;a href="http://www.palfrader.org/code2html/"&gt;code2html&lt;/a&gt; es una aplicación destinada a convertir tu código en html para poder publicarlo.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;$ code2html -h&lt;br /&gt;Code2Html, version 0.9.1, Jan 2002, peter@palfrader.org&lt;br /&gt;Usage: code2html [options] [input_file [output_file]]&lt;br /&gt;&lt;br /&gt;Convert a program source to syntax highlighted HTML,&lt;br /&gt;or any other  format for wich rules are defined.&lt;br /&gt;&lt;br /&gt;-l, --language-mode   set language mode&lt;br /&gt;   --fallback LANG   fallback language mode&lt;br /&gt;-v, --verbose         prints progress information to STDER&lt;br /&gt;-n, --linenumbers     print out the source code with line numbers&lt;br /&gt;-P, --prefix          optional prefix to use for linenumber anchors&lt;br /&gt;-N, --linknumbers     linenumbers will link to themselves&lt;br /&gt;-t, --replace-tabs[=TABSTOP-WIDTH]&lt;br /&gt;                     replace &lt;tabs&gt; with spaces&lt;br /&gt;-L, --language-file=LANGUAGE-FILE&lt;br /&gt;                     specify an alternate file for definitions&lt;br /&gt;-m, --modes           print all available modes&lt;br /&gt;-h, --help            print this message&lt;br /&gt;-V, --version         print version&lt;br /&gt;-c, --content-type    prints a Content-Type header&lt;br /&gt;-o, --output-format   selects the output-format&lt;br /&gt;-H, --no-header       don't use the template&lt;br /&gt;   --template=FILE   override template&lt;br /&gt;-T, --title           set title&lt;br /&gt;&lt;br /&gt;-w, --linewidth       max characters per line&lt;br /&gt;-b, --linebreakprefix prefix of the new lines&lt;br /&gt;&lt;br /&gt;see the man-page code2html for further help&lt;br /&gt;&lt;/tabs&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;$ code2html -m&lt;br /&gt;Defined modes: ada, ada95, awk, c, c++, cc, cpp, cxx, gpasm, groff, html, java, javascript, js, lisp, m4, make, makefile, pas, pascal, patch, perl, plain, pov, povray, python, ruby, sh, shellscript, sql.&lt;br /&gt;Defined outputformats: html, html-dark, html-fntlck, html-light, html-nobg, html-nocolor, html-simple.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;ejemplos:&lt;br /&gt;&lt;br /&gt;code2html pex.py -H&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;import&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlrd&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;import&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;from&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlutils&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;copy&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;strong&gt;import&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;copy&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;class&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xls&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Workbook&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;   &lt;span style="color:ff0000;"&gt; def&lt;/span&gt;&lt;span style="color:ff0000;"&gt; __init__&lt;/span&gt;&lt;span style="color:2040a0;"&gt;(self, encoding='ascii', style_compression=0)&lt;/span&gt;:&lt;br /&gt;&lt;/strong&gt;        &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Workbook&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;__init__&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;encoding&lt;/span&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;style_compression&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;      &lt;br /&gt;&lt;strong&gt;   &lt;span style="color:ff0000;"&gt; def&lt;/span&gt;&lt;span style="color:ff0000;"&gt; add_sheet2&lt;/span&gt;&lt;span style="color:2040a0;"&gt;(self,worksheet)&lt;/span&gt;:&lt;br /&gt;&lt;/strong&gt;        &lt;strong&gt;if&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;isinstance&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;worksheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Worksheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;           &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;_Workbook__worksheet_idx_from_name&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;[&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;worksheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;lower&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;]&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;len&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;_Workbook__worksheets&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;           &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;_Workbook__worksheets&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;append&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;worksheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;       &lt;strong&gt;else&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;           &lt;strong&gt;raise&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Exception&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"invalid worksheet"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;file_name&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;'tb_wbdh13.xls'&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlrd&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;open_workbook&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;file_name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;formatting_info&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;True&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_and_scope_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_obj_list&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"____________________________________"&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;for&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;strong&gt;in&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_obj_list&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;raw_formula&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;result&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;text&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;scope&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet_by_index&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;0&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;colinfo_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rowinfo_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;col_label_ranges&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;row_label_ranges&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;cell&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;1&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;3&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xf_index&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;colinfo_map&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;[&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;0&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;]&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xf_index&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;dir&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#444444;"&gt;#print xlrd.dump(file_name)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;wb&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;copy&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;ws&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;wb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;get_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;0&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xls&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"CLK_PROCESS_0"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"CLK_PROCESS_1"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"CLK_PROCESS_bak"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet2&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;ws&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;save&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;'out.xls'&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;code2html -n pex.py -H&lt;br /&gt;&lt;pre&gt;&lt;a name="line1"&gt; &lt;span style="font-size:85%;"&gt;1&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; &lt;strong&gt;import&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlrd&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line2"&gt; 2&lt;/a&gt; &lt;strong&gt;import&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line3"&gt; 3&lt;/a&gt; &lt;strong&gt;from&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlutils&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;copy&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;strong&gt;import&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;copy&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line4"&gt; 4&lt;/a&gt;&lt;br /&gt;&lt;a name="line5"&gt; 5&lt;/a&gt; &lt;strong&gt;class&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xls&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Workbook&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line6"&gt; 6&lt;/a&gt; &lt;strong&gt;   &lt;span style="color:ff0000;"&gt; def&lt;/span&gt;&lt;span style="color:ff0000;"&gt; __init__&lt;/span&gt;&lt;span style="color:2040a0;"&gt;(self, encoding='ascii', style_compression=0)&lt;/span&gt;:&lt;br /&gt;&lt;a name="line7"&gt; 7&lt;/a&gt; &lt;/strong&gt;        &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Workbook&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;__init__&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;encoding&lt;/span&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;style_compression&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line8"&gt; 8&lt;/a&gt;        &lt;br /&gt;&lt;a name="line9"&gt; 9&lt;/a&gt; &lt;strong&gt;   &lt;span style="color:ff0000;"&gt; def&lt;/span&gt;&lt;span style="color:ff0000;"&gt; add_sheet2&lt;/span&gt;&lt;span style="color:2040a0;"&gt;(self,worksheet)&lt;/span&gt;:&lt;br /&gt;&lt;a name="line10"&gt;10&lt;/a&gt; &lt;/strong&gt;        &lt;strong&gt;if&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;isinstance&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;worksheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlwt&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Worksheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line11"&gt;11&lt;/a&gt;             &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;_Workbook__worksheet_idx_from_name&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;[&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;worksheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;lower&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;]&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;len&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;_Workbook__worksheets&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line12"&gt;12&lt;/a&gt;             &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;self&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;_Workbook__worksheets&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;append&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;worksheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line13"&gt;13&lt;/a&gt;         &lt;strong&gt;else&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line14"&gt;14&lt;/a&gt;             &lt;strong&gt;raise&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;Exception&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"invalid worksheet"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line15"&gt;15&lt;/a&gt;&lt;br /&gt;&lt;a name="line16"&gt;16&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;file_name&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;'tb_wbdh13.xls'&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line17"&gt;17&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xlrd&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;open_workbook&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;file_name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;formatting_info&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;True&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line18"&gt;18&lt;/a&gt;&lt;br /&gt;&lt;a name="line19"&gt;19&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line20"&gt;20&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_and_scope_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line21"&gt;21&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line22"&gt;22&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_obj_list&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line23"&gt;23&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"____________________________________"&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line24"&gt;24&lt;/a&gt; &lt;strong&gt;for&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;strong&gt;in&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name_obj_list&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line25"&gt;25&lt;/a&gt;     &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line26"&gt;26&lt;/a&gt;     &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line27"&gt;27&lt;/a&gt;     &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;raw_formula&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line28"&gt;28&lt;/a&gt;     &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;result&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;text&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line29"&gt;29&lt;/a&gt;     &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;name&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;scope&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line30"&gt;30&lt;/a&gt;&lt;br /&gt;&lt;a name="line31"&gt;31&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet_by_index&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;0&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line32"&gt;32&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;colinfo_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line33"&gt;33&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rowinfo_map&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line34"&gt;34&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;col_label_ranges&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line35"&gt;35&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;row_label_ranges&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line36"&gt;36&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;cell&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;1&lt;/span&gt;&lt;span style="font-size:85%;"&gt;,&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;3&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xf_index&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line37"&gt;37&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;colinfo_map&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;[&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;0&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;]&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xf_index&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line38"&gt;38&lt;/a&gt; &lt;strong&gt;print&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;dir&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line39"&gt;39&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#444444;"&gt;#print xlrd.dump(file_name)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line40"&gt;40&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;wb&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;copy&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;rb&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line41"&gt;41&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;ws&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;wb&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;get_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#FF0000;"&gt;0&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line42"&gt;42&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;=&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;xls&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line43"&gt;43&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"CLK_PROCESS_0"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line44"&gt;44&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"CLK_PROCESS_1"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line45"&gt;45&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;"CLK_PROCESS_bak"&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line46"&gt;46&lt;/a&gt;&lt;br /&gt;&lt;a name="line47"&gt;47&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;add_sheet2&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;ws&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;a name="line48"&gt;48&lt;/a&gt; &lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;doc&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;span style="font-size:85%;color:#2040a0;"&gt;save&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;(&lt;/span&gt;&lt;span style="font-size:85%;color:#008000;"&gt;'out.xls'&lt;/span&gt;&lt;span style="font-size:85%;color:4444FF;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;code2html -o html-nocolors -H prex.py&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;import &lt;b&gt;xlrd&lt;/b&gt;&lt;br /&gt;import &lt;b&gt;xlwt&lt;/b&gt;&lt;br /&gt;from &lt;b&gt;xlutils&lt;/b&gt;.&lt;b&gt;copy&lt;/b&gt; import &lt;b&gt;copy&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;class &lt;b&gt;xls&lt;/b&gt;(&lt;b&gt;xlwt&lt;/b&gt;.&lt;b&gt;Workbook&lt;/b&gt;):&lt;br /&gt;   def __init__(self, encoding='ascii', style_compression=0):&lt;br /&gt;       &lt;b&gt;xlwt&lt;/b&gt;.&lt;b&gt;Workbook&lt;/b&gt;.&lt;b&gt;__init__&lt;/b&gt;(&lt;b&gt;self&lt;/b&gt;,&lt;b&gt;encoding&lt;/b&gt;, &lt;b&gt;style_compression&lt;/b&gt;)&lt;br /&gt;      &lt;br /&gt;   def add_sheet2(self,worksheet):&lt;br /&gt;       if &lt;b&gt;isinstance&lt;/b&gt;(&lt;b&gt;worksheet&lt;/b&gt;,&lt;b&gt;xlwt&lt;/b&gt;.&lt;b&gt;Worksheet&lt;/b&gt;):&lt;br /&gt;           &lt;b&gt;self&lt;/b&gt;.&lt;b&gt;_Workbook__worksheet_idx_from_name&lt;/b&gt;[&lt;b&gt;worksheet&lt;/b&gt;.&lt;b&gt;name&lt;/b&gt;.&lt;b&gt;lower&lt;/b&gt;()] = &lt;b&gt;len&lt;/b&gt;(&lt;b&gt;self&lt;/b&gt;.&lt;b&gt;_Workbook__worksheets&lt;/b&gt;)&lt;br /&gt;           &lt;b&gt;self&lt;/b&gt;.&lt;b&gt;_Workbook__worksheets&lt;/b&gt;.&lt;b&gt;append&lt;/b&gt;(&lt;b&gt;worksheet&lt;/b&gt;)&lt;br /&gt;       else:&lt;br /&gt;           raise &lt;b&gt;Exception&lt;/b&gt;(&lt;i&gt;"invalid worksheet"&lt;/i&gt;)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;file_name&lt;/b&gt; = &lt;i&gt;'tb_wbdh13.xls'&lt;/i&gt;&lt;br /&gt;&lt;b&gt;rb&lt;/b&gt; = &lt;b&gt;xlrd&lt;/b&gt;.&lt;b&gt;open_workbook&lt;/b&gt;(&lt;b&gt;file_name&lt;/b&gt;,&lt;b&gt;formatting_info&lt;/b&gt;=&lt;b&gt;True&lt;/b&gt;)&lt;br /&gt;&lt;br /&gt;print &lt;b&gt;rb&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;rb&lt;/b&gt;.&lt;b&gt;name_and_scope_map&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;rb&lt;/b&gt;.&lt;b&gt;name_map&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;rb&lt;/b&gt;.&lt;b&gt;name_obj_list&lt;/b&gt;&lt;br /&gt;print &lt;i&gt;"____________________________________"&lt;/i&gt;&lt;br /&gt;for &lt;b&gt;name&lt;/b&gt; in &lt;b&gt;rb&lt;/b&gt;.&lt;b&gt;name_obj_list&lt;/b&gt;:&lt;br /&gt;   print &lt;b&gt;name&lt;/b&gt;&lt;br /&gt;   print &lt;b&gt;name&lt;/b&gt;.&lt;b&gt;name&lt;/b&gt;&lt;br /&gt;   print &lt;b&gt;name&lt;/b&gt;.&lt;b&gt;raw_formula&lt;/b&gt;&lt;br /&gt;   print &lt;b&gt;name&lt;/b&gt;.&lt;b&gt;result&lt;/b&gt;.&lt;b&gt;text&lt;/b&gt;&lt;br /&gt;   print &lt;b&gt;name&lt;/b&gt;.&lt;b&gt;scope&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;sheet&lt;/b&gt; = &lt;b&gt;rb&lt;/b&gt;.&lt;b&gt;sheet_by_index&lt;/b&gt;(0)&lt;br /&gt;print &lt;b&gt;sheet&lt;/b&gt;.&lt;b&gt;colinfo_map&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;sheet&lt;/b&gt;.&lt;b&gt;rowinfo_map&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;sheet&lt;/b&gt;.&lt;b&gt;col_label_ranges&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;sheet&lt;/b&gt;.&lt;b&gt;row_label_ranges&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;sheet&lt;/b&gt;.&lt;b&gt;cell&lt;/b&gt;(1,3).&lt;b&gt;xf_index&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;sheet&lt;/b&gt;.&lt;b&gt;colinfo_map&lt;/b&gt;[0].&lt;b&gt;xf_index&lt;/b&gt;&lt;br /&gt;print &lt;b&gt;dir&lt;/b&gt;(&lt;b&gt;sheet&lt;/b&gt;)&lt;br /&gt;&lt;i&gt;#print xlrd.dump(file_name)&lt;/i&gt;&lt;br /&gt;&lt;b&gt;wb&lt;/b&gt; = &lt;b&gt;copy&lt;/b&gt;(&lt;b&gt;rb&lt;/b&gt;)&lt;br /&gt;&lt;b&gt;ws&lt;/b&gt; = &lt;b&gt;wb&lt;/b&gt;.&lt;b&gt;get_sheet&lt;/b&gt;(0)&lt;br /&gt;&lt;b&gt;doc&lt;/b&gt; = &lt;b&gt;xls&lt;/b&gt;()&lt;br /&gt;&lt;b&gt;doc&lt;/b&gt;.&lt;b&gt;add_sheet&lt;/b&gt;(&lt;i&gt;"CLK_PROCESS_0"&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;doc&lt;/b&gt;.&lt;b&gt;add_sheet&lt;/b&gt;(&lt;i&gt;"CLK_PROCESS_1"&lt;/i&gt;)&lt;br /&gt;&lt;b&gt;doc&lt;/b&gt;.&lt;b&gt;add_sheet&lt;/b&gt;(&lt;i&gt;"CLK_PROCESS_bak"&lt;/i&gt;)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;doc&lt;/b&gt;.&lt;b&gt;add_sheet2&lt;/b&gt;(&lt;b&gt;ws&lt;/b&gt;)&lt;br /&gt;&lt;b&gt;doc&lt;/b&gt;.&lt;b&gt;save&lt;/b&gt;(&lt;i&gt;'out.xls'&lt;/i&gt;)&lt;/span&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/8786117032177741671-4952161537477711861?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/4952161537477711861/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=4952161537477711861' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4952161537477711861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4952161537477711861'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2011/07/code2html-es-una-aplicacion-destinada.html' title='Una prueba de code2html'/><author><name>tskyW1lk</name><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-8786117032177741671.post-1526866212391844706</id><published>2011-07-24T09:54:00.000-07:00</published><updated>2011-07-29T08:18:18.142-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rapidshare'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>[Python] Descargando desde rapidshare usando la api</title><content type='html'>Sólo por probar como funciona la api de rapidshare que se encuentra documentada en http://images.rapidshare.com/apidoc.txt&lt;br /&gt;&lt;pre&gt;#!/usr/bin/env python&lt;br /&gt;&lt;br /&gt;import sys&lt;br /&gt;import urllib2&lt;br /&gt;import urllib&lt;br /&gt;import time&lt;br /&gt;&lt;/pre&gt;&lt;pre&gt;url =  "http://rapidshare.com/#!download|958tl|40"&lt;br /&gt;url += "20022538|NarutoKizunaDriveSaveData.rar|222|"&lt;br /&gt;url += "R~3187F38923AB1D7B76BF6D2C55ADDCEE"&lt;br /&gt;print url #link de prueba&lt;br /&gt;&lt;/pre&gt;&lt;pre&gt;url_api = "http://api.rapidshare.com/cgi-bin/rsapi.cgi"&lt;br /&gt;&lt;br /&gt;status_file = {0:'File not found',&lt;br /&gt;             1:'File OK',&lt;br /&gt;             3:'Server down',&lt;br /&gt;             4:'File marked as illegal',&lt;br /&gt;             5:'Direct download'&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;headers = {'User-Agent':'Firefox Mozilla 7.0'}&lt;br /&gt;&lt;br /&gt;class opener(urllib.FancyURLopener):&lt;br /&gt;  version = headers['User-Agent']&lt;br /&gt;&lt;br /&gt;def check_files(link):&lt;br /&gt;  #Aquí vamos a verficar que el link sea válido&lt;br /&gt;  #?sub=checkfiles_v1&amp;amp;filenames=?&amp;amp;files=?&lt;br /&gt;  try:&lt;br /&gt;      file_id, file_name = link.rsplit('/')[3].split('|')[2:4]&lt;br /&gt;  except:&lt;br /&gt;      print("No rapidshare link")&lt;br /&gt;      sys.exit(1)&lt;br /&gt;&lt;br /&gt;  params = {'filenames':file_name,&lt;br /&gt;            'files':file_id,&lt;br /&gt;           }&lt;br /&gt;  params_string = urllib.urlencode(params)&lt;br /&gt;  check_link = "%s?sub=checkfiles_v1&amp;amp;%s"%(url_api,params_string)&lt;br /&gt;  request = urllib2.Request(url=check_link, headers=headers)&lt;br /&gt;  conn = urllib2.urlopen(request)&lt;br /&gt;  file_id, file_name,size,serverid,status,short_host,fmd5 = conn.read().split(',')&lt;br /&gt;  print("check_files -----------------|\n")&lt;br /&gt;  print(status_file[int(status)])&lt;br /&gt;  if status == '1':&lt;br /&gt;      print("File ID: %s\nFile Name: %s\nsize: %s bytes"%(file_id,file_name,size))&lt;br /&gt;      print("Server ID: %s\nShort host: %s\nmd5_hex: %s"%(serverid,short_host,fmd5))&lt;br /&gt;      return file_id,file_name,size,serverid,fmd5&lt;br /&gt;  else:&lt;br /&gt;      print('Aborting download')&lt;br /&gt;      sys.exit(1)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;def get_download_auth(file_id,file_name):&lt;br /&gt;  #Para usuarios con cuentas gratuitas obtenemos primero el la autorización de descarga&lt;br /&gt;  # y el tiempo de espera para descargar&lt;br /&gt;  #?sub=download_v1&amp;amp;filname=?&amp;amp;fileid=?&lt;br /&gt;  params = {'filename':file_name,&lt;br /&gt;            'fileid':file_id&lt;br /&gt;           }&lt;br /&gt;  params_string = urllib.urlencode(params)&lt;br /&gt;  link = "%s?sub=download_v1&amp;amp;%s"%(url_api,params_string)&lt;br /&gt;  request = urllib2.Request(url=link, headers=headers)&lt;br /&gt;  conn = urllib2.urlopen(request)&lt;br /&gt;  key, value = conn.read().split(':')&lt;br /&gt;  if key == "ERROR":&lt;br /&gt;      print("Error:%s"%value)&lt;br /&gt;      sys.exit(1)&lt;br /&gt;  host, dlauth, countdown, fmd5 = value.split(',')&lt;br /&gt;  print("get_download_auth ---------------|\n")&lt;br /&gt;  print(link)&lt;br /&gt;  print("\nHost: %s\ndlauth: %s\ncountdown: %s seconds"%(host,dlauth,countdown))&lt;br /&gt;  return host, dlauth, countdown, fmd5&lt;br /&gt;&lt;br /&gt;def download_file(file_id,file_name,host,dlauth, countdown, fmd5):&lt;br /&gt;  #Descargamos el archivo&lt;br /&gt;  params = {'fileid':file_id,&lt;br /&gt;            'filename':file_name,&lt;br /&gt;            'dlauth':dlauth&lt;br /&gt;           }&lt;br /&gt;  params_string = urllib.urlencode(params)&lt;br /&gt;  download_link = "http://%s/cgi-bin/rsapi.cgi?sub=download_v1&amp;amp;%s"%(host,&lt;br /&gt;                                                                    params_string)&lt;br /&gt;  time.spleep(int(countdown))&lt;br /&gt;  print("download_file --------------|\n")&lt;br /&gt;  print(download_link)&lt;br /&gt;  download_opener = opener()&lt;br /&gt;  filename, headers = download_opener.retrieve(download_link, file_name)&lt;br /&gt;  print('Download Completed')&lt;br /&gt;  print("File Name: %s"%filename)&lt;br /&gt;  print("Headers: %s"%headers)&lt;br /&gt;&lt;br /&gt;if __name__== '__main__':&lt;br /&gt;  file_id,file_name,size,serverid,fmd5 = check_files(url)&lt;br /&gt;  host,dlauth,countdown,fmd5 = get_download_auth(file_id,file_name)&lt;br /&gt;  download_file(file_id,file_name,host,dlauth,countdown, fmd5)&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;Salida&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;http://rapidshare.com/#!download|958tl|4020022538|NarutoKizunaDriveSaveData.rar|222|R~3187F38923AB1D7B76BF6D2C55ADDCEE&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;check_files -----------------|&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;File OK&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;File ID: 4020022538&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;File Name: NarutoKizunaDriveSaveData.rar&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;size: 222575 bytes&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Server ID: 958&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Short host: tg&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;md5_hex: 41C7C90CDA303BDBBF90A053130255F6&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;get_download_auth ---------------|&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;http://api.rapidshare.com/cgi-bin/rsapi.cgi?sub=download_v1&amp;amp;fileid=4020022538&amp;amp;filename=NarutoKizunaDriveSaveData.rar&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Host: rs958tl2.rapidshare.com&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;dlauth: 189BDE52B120B121E40E4B492293947FFB6A0EDB426797339B9045C39527BC28EFEAE1F4FAE96472AFC73963140F1485706FC8FCE1E931D4ADB4A3B0AD3F5A4E505C6225F0C4F70DB7CA37B9D9E35886189BDE52B120B121E40E4B492293947FFB6A0EDB426797339B9045C39527BC283F2A732A85F08C6E98E793B05368EB42&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;countdown: 0 seconds&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;download_file --------------|&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;http://rs958tl2.rapidshare.com/cgi-bin/rsapi.cgi?sub=download_v1&amp;amp;filename=NarutoKizunaDriveSaveData.rar&amp;amp;dlauth=189BDE52B120B121E40E4B492293947FFB6A0EDB426797339B9045C39527BC28EFEAE1F4FAE96472AFC73963140F1485706FC8FCE1E931D4ADB4A3B0AD3F5A4E505C6225F0C4F70DB7CA37B9D9E35886189BDE52B120B121E40E4B492293947FFB6A0EDB426797339B9045C39527BC283F2A732A85F08C6E98E793B05368EB42&amp;amp;fileid=4020022538&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Download Completed&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;File Name: NarutoKizunaDriveSaveData.rar&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Headers: Date: Sun, 24 Jul 2011 19:50:00 GMT&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Connection: close&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Content-Type: application/octet-stream&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Accept-Ranges: bytes&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Content-Disposition: Attachment; filename=NarutoKizunaDriveSaveData.rar&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Content-Length: 222575&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;Es un ejemplo sencillo y nada elaborado, que no pretende ser de uso diario, para eso tenemos plowshare (http://code.google.com/p/plowshare/).&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/8786117032177741671-1526866212391844706?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1526866212391844706/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1526866212391844706' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1526866212391844706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1526866212391844706'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2011/07/python-descargando-desde-rapidshare.html' title='[Python] Descargando desde rapidshare usando la api'/><author><name>tskyW1lk</name><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-8786117032177741671.post-5960489271630339672</id><published>2011-07-14T10:14:00.000-07:00</published><updated>2011-07-14T10:36:35.174-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>[Python] manejando parámetros con optparser</title><content type='html'>&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;import sys&lt;br /&gt;from optparse import make_option,OptionParser&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;def opciones(argv):&lt;br /&gt;   usage = "usage: %prog [options] Archivo"&lt;br /&gt;   usage +="\nManejo de parametros desde la linea de comandos"&lt;br /&gt;&lt;br /&gt;   option_list = (&lt;br /&gt;       make_option("-o","--opcion_1",action='store', dest='opcion_1', default ="", help="Opcion 1"),&lt;br /&gt;       make_option("-p","--pi",action='store', type="float", dest='pi', default = 3.1416, help="Constante Pi"),&lt;br /&gt;       make_option("-v",action='store_true', dest='verbose', default = True),&lt;br /&gt;       make_option("-q",action='store_false', dest='verbose'),&lt;br /&gt;   )&lt;br /&gt;&lt;br /&gt;   parser = OptionParser(prog = argv[0],&lt;br /&gt;                         usage=usage,&lt;br /&gt;                         option_list = option_list&lt;br /&gt;                        )&lt;br /&gt;&lt;br /&gt;   options, args = parser.parse_args(argv[1:])&lt;br /&gt;&lt;br /&gt;   if argv[1:] == []:&lt;br /&gt;       parser.print_help()&lt;br /&gt;   elif argv[1] in ('-h','--help'):&lt;br /&gt;       parser.print_help()&lt;br /&gt;   elif args == []:&lt;br /&gt;       parser.print_help()&lt;br /&gt;   else:&lt;br /&gt;       print(options.opcion_1)&lt;br /&gt;       print(options.pi)&lt;br /&gt;       print(options.verbose)&lt;br /&gt;       print(args[0])&lt;br /&gt;if __name__ == "__main__":&lt;br /&gt;   opciones(sys.argv[:])&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;ej.&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%"&gt;&lt;code&gt;&lt;br /&gt;$ python options.py&lt;br /&gt;Usage: options.py [options] Archivo&lt;br /&gt;Manejo de parametros desde la linea de comandos&lt;br /&gt;&lt;br /&gt;Options:&lt;br /&gt; -o OPCION_1, --opcion_1=OPCION_1&lt;br /&gt;                       Opcion 1&lt;br /&gt; -p PI, --pi=PI        Constante Pi&lt;br /&gt; -v                   &lt;br /&gt; -q                   &lt;br /&gt; -h, --help            show this help message and exit&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/8786117032177741671-5960489271630339672?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/5960489271630339672/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=5960489271630339672' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/5960489271630339672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/5960489271630339672'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2011/07/python-manejando-parametros-con.html' title='[Python] manejando parámetros con optparser'/><author><name>tskyW1lk</name><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-8786117032177741671.post-4489374078449265890</id><published>2010-04-20T07:19:00.000-07:00</published><updated>2010-04-20T07:34:50.742-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Nvidia'/><category scheme='http://www.blogger.com/atom/ns#' term='Lucid'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='Kubuntu'/><title type='text'>nvidiactl</title><content type='html'>Después de actualizar a kubuntu 10.04 Beta 2 y reinstalar los drivers de la tarjeta nvidia como usuario normal perdí la aceleración 3D.&lt;br /&gt;&lt;br /&gt;cuando le daba&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;glxinfo | grep render&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;me salia una línea que rezaba así&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;NVIDIA: could not open the device file /dev/nvidiactl (Permission denied).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:monospace;"&gt;&lt;br /&gt;&lt;/span&gt;solución:&lt;br /&gt;&lt;br /&gt;Agregamos a nuestro usuario al grupo de video:&lt;br /&gt;&lt;br /&gt;¿Porque?&lt;br /&gt;&lt;br /&gt;si hacemos un ls -l al dispositivo veremos&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ls -l /dev/nvidiactl&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;crw-rw---- 1 root video 195, 255 2010-04-20 08:02 /dev/nvidiactl&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El dispositivo pertenece a root y al grupo de video&lt;br /&gt;&lt;br /&gt;Si vemos el contenido de /etc/group veremos que nuestor usuario no pertenece a ese grupo&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;cat /etc/group | grep video&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;video:x:44:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Editamos el archivo para agregarnos y que quede algo como&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;cat /etc/group | grep video&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;video:x:44:usuario&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cerramos la sesión actual, nos logeamos de nuevo y ya tendremos la aceleración perdida:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;glxinfo | grep render&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;direct rendering: Yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OpenGL renderer string: GeForce Go 6150/PCI/SSE2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    GL_NVX_conditional_render, GL_SGIS_generate_mipmap, GL_SGIS_texture_lod, &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;glxgears&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Running synchronized to the vertical refresh.  The framerate should be&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;approximately the same as the monitor refresh rate.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;7866 frames in 5.0 seconds&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;9066 frames in 5.0 seconds&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;9059 frames in 5.0 seconds&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-4489374078449265890?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/4489374078449265890/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=4489374078449265890' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4489374078449265890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4489374078449265890'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2010/04/nvidiactl.html' title='nvidiactl'/><author><name>tskyW1lk</name><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-8786117032177741671.post-5097903465848992676</id><published>2010-02-23T14:27:00.000-08:00</published><updated>2010-03-02T10:25:20.024-08:00</updated><title type='text'>webcam como camara IP en Linux (debian, ubutu)</title><content type='html'>Primero tenemos que tener instalado los siguientes paquetes, y tener configurado un servidor web (puede ser apache o cualquier otro)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;sudo apt-get install webcam lib4l-0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;No se crea ningún archivo de configuración por lo cual no creamos en nuestro home, o si vamos a usar la ruta principal del servidor web (/var/www) creamos el archivo webcam.conf dentro de /etc&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;vim .webcamrc&lt;/span&gt;   (o con el editor de texto que uses)&lt;br /&gt;&lt;span style="font-size:85%;"&gt;vim /etc/webcam.conf&lt;/span&gt;  (como root o anteponiendo sudo, en caso de pertenecer a los sudoers)&lt;br /&gt;&lt;br /&gt;El archivo va contener algo como lo que se muestra enseguida&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;[ftp]&lt;br /&gt;host = localhost&lt;br /&gt;user = nobody&lt;br /&gt;pass = xxxxxx&lt;br /&gt;dir = /home/usuario/public_html&lt;br /&gt;file = webcam.jpg&lt;br /&gt;tmp = imageup.jpg&lt;br /&gt;local = 1&lt;br /&gt;&lt;br /&gt;[grab]&lt;br /&gt;device = /dev/video0&lt;br /&gt;width = 320&lt;br /&gt;height = 240&lt;br /&gt;text = "Webcam  %Y-%m-%d %H:%M:%S"&lt;br /&gt;delay = 0&lt;br /&gt;input =sonixj&lt;br /&gt;quality = 75&lt;br /&gt;trigger = 180&lt;br /&gt;fg_red = 255&lt;br /&gt;fg_green = 255&lt;br /&gt;fg_blue = 255&lt;br /&gt;rotate = 2&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Como mi webcam pone de cabeza las capturas, con rotate = 2 lo arreglo (1=90 grados 2= 180, etc.)&lt;br /&gt;&lt;br /&gt;¿Como saber cual es el nombre de la webcam(input = nombrewebcam)? con v4l-info (dese la terminal)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;$ v4l-info&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Las partes que nos interesan es la que nos dice el nombre de la camara (sonixj) y la altura y el ancho máximo&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;inputs&lt;br /&gt;VIDIOC_ENUMINPUT(0)&lt;br /&gt;index                   : 0&lt;br /&gt;name                    : "sonixj"    &lt;---Este es el valor de input =sonixj  type                    : CAMERA  audioset                : 0      tuner                   : 0  std                     : 0x0 []      status                  : 0x0 [] &lt;/span&gt;&lt;br /&gt;y&lt;br /&gt;&lt;span style="font-size:85%;"&gt;### video4linux device info [/dev/video0] ###&lt;br /&gt;general info&lt;br /&gt;VIDIOCGCAP&lt;br /&gt;name                    : "USB camera"&lt;br /&gt;type                    : 0x1 [CAPTURE]&lt;br /&gt;channels                : 1&lt;br /&gt;audios                  : 0&lt;br /&gt;maxwidth                : 640&lt;br /&gt;maxheight               : 480&lt;br /&gt;minwidth                : 48&lt;br /&gt;minheight               : 32&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ahora si lo probamos con&lt;br /&gt;&lt;br /&gt;@anaconda-server:~$ webcam&lt;br /&gt;reading config file: /home/usuario/.webcamrc&lt;br /&gt;can't get rgb24 data&lt;br /&gt;&lt;br /&gt;Ops! ¿Qué hace ese rgb24 data? si nunca lo mandé llamar.&lt;br /&gt;&lt;br /&gt;Solución:&lt;br /&gt;&lt;br /&gt;Se me ocurrió que se podría asociar con el LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so webcam, por lo que es la misma solución que para algunas webcam es necesaria para poderlas usar con skype&lt;br /&gt;&lt;br /&gt;https://wiki.ubuntu.com/SkypeWebCams&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;$ LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so webcam&lt;br /&gt;reading config file: /home/usuario/.webcamrc&lt;br /&gt;video4linux webcam v1.5 - (c) 1998-2002 Gerd Knorr&lt;br /&gt;grabber config:&lt;br /&gt;size 320x240 [none]&lt;br /&gt;input sonixj, norm (null), jpeg quality 75&lt;br /&gt;rotate=2, top=0, left=0, bottom=240, right=320&lt;br /&gt;write config [ftp]:&lt;br /&gt;local transfer /home/usuario/public_html/imageup.jpg =&gt; /home/usuario/public_html/webcam.jpg&lt;br /&gt;compare: max=50,avg=4&lt;br /&gt;compare: max=255,avg=78&lt;br /&gt;compare: max=8,avg=0&lt;br /&gt;compare: max=24,avg=0&lt;br /&gt;compare: max=17,avg=0&lt;br /&gt;compare: max=33,avg=0&lt;br /&gt;compare: max=29,avg=0&lt;br /&gt;compare: max=35,avg=0&lt;br /&gt;compare: max=34,avg=0&lt;br /&gt;compare: max=42,avg=0&lt;br /&gt;compare: max=39,avg=0&lt;br /&gt;compare: max=46,avg=0&lt;br /&gt;compare: max=52,avg=0&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Ya sólo queda ver el resultado en la web, mover la camara y recargar el navedador para ver los resultados. Para probar su funcionamiento utilicé la siguiente página web.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;WebCam&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="REFRESH" content="1"&amp;gt;&amp;lt;/meta&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;img src="webcam.jpg"&amp;gt;&amp;lt;/img&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Recargo la página cada segundo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-ffdd8a9cfbb999fb" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v21.nonxt5.googlevideo.com/videoplayback?id%3Dffdd8a9cfbb999fb%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331837728%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D2039770A7CC65224EC333217E2F9ECEF5A10EBBB.573C1ED3F123CE34A0739A3512EBDA6A7F1DB249%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Dffdd8a9cfbb999fb%26offsetms%3D5000%26itag%3Dw160%26sigh%3DTL4MG3VFRmbydg9_jFZ3n_4P1po&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v21.nonxt5.googlevideo.com/videoplayback?id%3Dffdd8a9cfbb999fb%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331837728%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D2039770A7CC65224EC333217E2F9ECEF5A10EBBB.573C1ED3F123CE34A0739A3512EBDA6A7F1DB249%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Dffdd8a9cfbb999fb%26offsetms%3D5000%26itag%3Dw160%26sigh%3DTL4MG3VFRmbydg9_jFZ3n_4P1po&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;webcam a 320x240&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-c18da33040b2200e" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v8.nonxt8.googlevideo.com/videoplayback?id%3Dc18da33040b2200e%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331837728%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D7DFA989B73211D1E9676F93B73EC32200BB3DC6D.223D69931298522D2FA390D3780FE8E9EF0B4192%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Dc18da33040b2200e%26offsetms%3D5000%26itag%3Dw160%26sigh%3DyVC0-rG2xd8COvJzmAdGCOpeOTw&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v8.nonxt8.googlevideo.com/videoplayback?id%3Dc18da33040b2200e%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331837728%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D7DFA989B73211D1E9676F93B73EC32200BB3DC6D.223D69931298522D2FA390D3780FE8E9EF0B4192%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Dc18da33040b2200e%26offsetms%3D5000%26itag%3Dw160%26sigh%3DyVC0-rG2xd8COvJzmAdGCOpeOTw&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;webcam a 640x480&lt;br /&gt;&lt;div style="text-align: left;"&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/8786117032177741671-5097903465848992676?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/5097903465848992676/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=5097903465848992676' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/5097903465848992676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/5097903465848992676'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2010/02/webcam-como-camara-ip-en-linux-debian.html' title='webcam como camara IP en Linux (debian, ubutu)'/><author><name>tskyW1lk</name><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-8786117032177741671.post-1022445754036842674</id><published>2009-12-30T20:55:00.000-08:00</published><updated>2009-12-30T21:02:44.469-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PCTel'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='Modem'/><title type='text'>PCTel Winmodem Debian Testing</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;Linux anaconda-server 2.6.30-2-686 #1 SMP Fri Dec 4 00:53:20 UTC 2009 i686 GNU/Linux&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;1.- Creamos un directorio temporal&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;mkdir tmp&lt;br /&gt;cd tmp&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;2.- Descargamos el driver de http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-10.tar.gz&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;wget http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-10.tar.gz&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;3.- Descomprimimos&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;tar -xvzf pctel-0.9.7-9-rht-10.tar.gz&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;cd pctel-0.9.7-9-rht-10&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;tratamos de instalar logueandonos como root (o en su defecto con sudo si es que lo tenemos habilitado para el usuario)&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;sudo ./setup&lt;br /&gt;checking for running kernel version...2.6.30&lt;br /&gt;checking for ptserial...ptserial-2.6.c&lt;br /&gt;checking for gcc...4.3.4&lt;br /&gt;checking for kernel gcc version...4.3.4&lt;br /&gt;searching for kernel includes...found at /lib/modules/2.6.30-2-686/build/include&lt;br /&gt;checking for autoconf.h.../lib/modules/2.6.30-2-686/build/include/linux/autoconf.h&lt;br /&gt;checking for asm/mach-default...** error  &lt;&lt;ups y="" ahora="" que="" directory="" could="" not="" be="" found="" you="" probably="" need="" to="" configure="" your="" please="" read="" the="" faq="" about="" no="" include="" asm="" default=""&gt;&lt;/ups&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Después de andar busque y busque por internet no encontré nada, así que me dí a la tarea de ver el directorio de los source y headers del kernel. Para mi sorpresa el mach-default no existe, así que procedí a modificar el archivo configure dentro del src&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;vim src/configure&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ubicamos la línea siguente  (línea 424)&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;  echo -n "checking for asm/mach-default..."&lt;br /&gt; kernel_inc2=${kernel_inc}&lt;br /&gt; if [ ! -d ${kernel_inc}/asm/mach-default ]&lt;br /&gt; then&lt;br /&gt;    # SuSE 9.3 doesn't have 'asm' under the build directory, so revert to&lt;br /&gt;    # /usr/src/linux&lt;br /&gt;    if [ -d /usr/src/linux/include/asm/mach-default ]&lt;br /&gt;    then&lt;br /&gt;        kernel_inc2=/usr/src/linux/include&lt;br /&gt;    else&lt;br /&gt;        echo "** error"&lt;br /&gt;        echo include/asm/mach-default directory could not be found&lt;br /&gt;        echo you probably need to configure your kernel, please read the FAQ&lt;br /&gt;        echo about no include/asm/mach-default directory.&lt;br /&gt;        exit 1&lt;br /&gt;    fi&lt;br /&gt; fi&lt;br /&gt; echo "yes"&lt;br /&gt; extra_includes=-I${kernel_inc2}/asm/mach-default&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;y las modificamos para que quede&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;   echo -n "checking for asm..."&lt;br /&gt; kernel_inc2=${kernel_inc}&lt;br /&gt; if [ ! -d ${kernel_inc}/asm ]&lt;br /&gt; then&lt;br /&gt;    # SuSE 9.3 doesn't have 'asm' under the build directory, so revert to&lt;br /&gt;    # /usr/src/linux&lt;br /&gt;    if [ -d /usr/src/linux/include/asm/mach-default ]&lt;br /&gt;    then&lt;br /&gt;        kernel_inc2=/usr/src/linux/include&lt;br /&gt;    else&lt;br /&gt;        echo "** error"&lt;br /&gt;        echo include/asm directory could not be found&lt;br /&gt;        echo you probably need to configure your kernel, please read the FAQ&lt;br /&gt;        echo about no include/asm/mach-default directory.&lt;br /&gt;        exit 1&lt;br /&gt;    fi&lt;br /&gt; fi&lt;br /&gt; echo "yes"&lt;br /&gt; extra_includes=-I${kernel_inc2}/asm&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Quitamos todo lo referente a /mach-default  (líneas 424,426 y 442)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;~/tmp/pctel-0.9.7-9-rht-10$ sudo ./setup&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for running kernel version...2.6.30&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for ptserial...ptserial-2.6.c&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for gcc...4.3.4&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for kernel gcc version...4.3.4&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;searching for kernel includes...found at /lib/modules/2.6.30-2-686/build/include&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for autoconf.h.../lib/modules/2.6.30-2-686/build/include/linux/autoconf.h&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for asm/mach-default...yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for kernel version in utsrelease.h...UTS_RELEASE is 2.6.30-2-686&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking type of tty_struct.count...int&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;checking for presence of udev...present (kernel version 2.6.13 or later)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;detecting your modem...found. Your modem is a cm8738 type modem.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;compilation done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;installation done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;modem activated&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;~/tmp/pctel-0.9.7-9-rht-10$ ls -l /dev/modem &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;lrwxrwxrwx 1 root root 11 dic 30 21:49 /dev/modem -&gt; ttyS_PCTEL0&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Por lo que se ve ya esta funcionando, para probarlo&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;sudo minicom -s&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;con las flechas nos movemos hasta configuración de la puerta serial y le damos enter&lt;br /&gt;&lt;br /&gt;Presionamos A para modificar la ruta del dispositivo colocando /dev/modem&lt;br /&gt;&lt;br /&gt;Le damos un segundo enter para regresar al menu anterior y con la flechas buscamos Salir y le damos enter, despues de esto vamos a ver que el minicom consulta al modem.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Welcome to minicom 2.4-rc1                                                     &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                                                                               &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OPCIONES: I18n                                                                 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Compilado en Nov 23 2009, 17:11:14.                                            &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Port /dev/modem                                                                &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                                                                               &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Presione CTRL-A Z para obtener ayuda sobre teclas especiales                      &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                                                                                  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;AT S7=45 S0=0 L1 V1 X4 &amp;amp;c1 E1 Q0                                                  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OK                                                     &lt;/span&gt;&lt;/span&gt;                        &lt;br /&gt;&lt;br /&gt;Si aparece algo como lo de arriba, quiere decir que si esta trabajando el modem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-1022445754036842674?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1022445754036842674/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1022445754036842674' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1022445754036842674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1022445754036842674'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/12/pctel-winmodem-debian-testing.html' title='PCTel Winmodem Debian Testing'/><author><name>tskyW1lk</name><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-8786117032177741671.post-2682350344892550476</id><published>2009-11-21T22:07:00.000-08:00</published><updated>2009-11-21T22:50:07.944-08:00</updated><title type='text'>KylinOS</title><content type='html'>Sólo para recordar, pero será Ciencia Ficción o realidad o una divertida exageración a la que nos suelen tener acostumbrados. Lo bueno es que lo puede descargar para que lo prueben (los enlaces los debo, ya que desde donde los baje ya estan fuera de linea)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.securityfocus.com/brief/964"&gt;http://www.securityfocus.com/brief/964&lt;br /&gt;&lt;/a&gt;&lt;blockquote&gt;&lt;p&gt; In a statemen (pdf&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;) before the U.S.-China Economic and Security Review Commission, consultant Kevin Coleman characterized the Kylin operating system as a technology that could give China the upper hand in the race to use cyberspace for national ends.&lt;/p&gt; &lt;p&gt; "This race was intensified when China created Kylin, their own hardened server operating system and began to convert their systems back in 2007," Coleman, a senior fellow at Technolytics, "This action also made our offensive cyber capabilities ineffective against them given the cyber weapons were designed to be used against Linux, UNIX and Windows.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Si pueden lean el pdf&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="http://muycomputer.com/FrontOffice/ZonaPractica/Especiales/especialDet/_wE9ERk2XxDCMnF402YF5BaZxlsgTTBLDTKDOQ73uRx5Wj6RUU6-QWs7AijiQYxTk"&gt;http://muycomputer.com/FrontOffice/ZonaPractica/Especiales/especialDet/_wE9ERk2XxDCMnF402YF5BaZxlsgTTBLDTKDOQ73uRx5Wj6RUU6-QWs7AijiQYxTk&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Junto al sistema operativo, los chinos también habrían fabricado e instalado un microprocesador "invulnerable" que aseguraría una defensa sólida de la plataforma. “En el área cibernética, China está jugando al ajedrez y Estados unidos a las damas”, dijo al periódico el especialista en seguridad militar Kevin Coleman, que advirtió de una guerra fría cibernética militar.&lt;/blockquote&gt;&lt;a href="http://news.smh.com.au/breaking-news-technology/china-deploys-secure-computer-operating-system-20090513-b24h.html"&gt;http://news.smh.com.au/breaking-news-technology/china-deploys-secure-computer-operating-system-20090513-b24h.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://diariored.com/blog/001107.php"&gt;&lt;br /&gt;http://diariored.com/blog/001107.php&lt;/a&gt;   (2005)&lt;br /&gt;&lt;br /&gt;Y el culpable:&lt;br /&gt;&lt;a href="http://www.kylin.org.cn/"&gt;http://www.kylin.org.cn/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Pues en su momento lo baje para probar (KylinOS 2.1) y esta son sus capturas&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjbfFlzPKI/AAAAAAAAAKg/bo64Ezn-_Z8/s1600/KylinOS.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 334px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjbfFlzPKI/AAAAAAAAAKg/bo64Ezn-_Z8/s400/KylinOS.png" alt="" id="BLOGGER_PHOTO_ID_5406812679781432482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/Swjbez2FhwI/AAAAAAAAAKY/5T0FhQdA1Uo/s1600/KylinOS1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 327px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/Swjbez2FhwI/AAAAAAAAAKY/5T0FhQdA1Uo/s400/KylinOS1.png" alt="" id="BLOGGER_PHOTO_ID_5406812675017901826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjbegBdfgI/AAAAAAAAAKQ/rJMJooOZEdQ/s1600/KylinOS2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 325px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjbegBdfgI/AAAAAAAAAKQ/rJMJooOZEdQ/s400/KylinOS2.png" alt="" id="BLOGGER_PHOTO_ID_5406812669696900610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Otras más que acabo de sacar hoy&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SwjchjqO5FI/AAAAAAAAALA/lRUUinhp9oQ/s1600/sKylinOS01.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 322px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SwjchjqO5FI/AAAAAAAAALA/lRUUinhp9oQ/s400/sKylinOS01.png" alt="" id="BLOGGER_PHOTO_ID_5406813821724451922" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SwjchRb8PnI/AAAAAAAAAK4/f9aK0kpyxb4/s1600/sKylinOS02.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 318px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SwjchRb8PnI/AAAAAAAAAK4/f9aK0kpyxb4/s400/sKylinOS02.png" alt="" id="BLOGGER_PHOTO_ID_5406813816832671346" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/Swjcg_oCyfI/AAAAAAAAAKw/aTMZedbB-1g/s1600/sKylinOS03.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 318px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/Swjcg_oCyfI/AAAAAAAAAKw/aTMZedbB-1g/s400/sKylinOS03.png" alt="" id="BLOGGER_PHOTO_ID_5406813812051593714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjcgimRGeI/AAAAAAAAAKo/himD8Gq0cCE/s1600/sKylinOS04.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 318px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjcgimRGeI/AAAAAAAAAKo/himD8Gq0cCE/s400/sKylinOS04.png" alt="" id="BLOGGER_PHOTO_ID_5406813804259514850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Si encuentran los ISOs para probar y necesitan ayuda, pueden encontrarla en los foros de este SO que se encuentran en&lt;br /&gt;&lt;a href="http://www.kylin.org.cn/KylinForum/"&gt;http://www.kylin.org.cn/KylinForum/&lt;/a&gt;&lt;br /&gt;Aunque literalmente "esta en Chino"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2682350344892550476?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2682350344892550476/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2682350344892550476' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2682350344892550476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2682350344892550476'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/11/kylinos.html' title='KylinOS'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjbfFlzPKI/AAAAAAAAAKg/bo64Ezn-_Z8/s72-c/KylinOS.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-2089034645672674725</id><published>2009-10-22T21:26:00.000-07:00</published><updated>2009-10-23T08:38:36.740-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='9.10'/><category scheme='http://www.blogger.com/atom/ns#' term='Xilinx'/><category scheme='http://www.blogger.com/atom/ns#' term='Cable Xilinx'/><category scheme='http://www.blogger.com/atom/ns#' term='Programación'/><category scheme='http://www.blogger.com/atom/ns#' term='Karmic Koala'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='ISEWebPACK'/><title type='text'>Karmic Koala: Spartan 3E Starter Kit y cable usb</title><content type='html'>El problema fue que al actualizar a Karmic Koala, me dejo de detectar la tarjeta. Que es lo que pasa cuando conectamos la Tarjeta a la PC:&lt;br /&gt;&lt;br /&gt;1.- Cuando conectamos la tarjeta a un puerto USB, udev detecta el dispositivo.&lt;br /&gt;2.- Ya que lo detecto el siguiente paso es que le actualize el firmware con fxload (según las reglas que tenga para dicho dispositivo, y se encuentran en el archivo /etc/udev/rules.d/xusbdfwu.rules).&lt;br /&gt;3- Si tuvo exito se enciende un led de color verde que se encuentra a lado derecho del conector usb de la tarjeta y además al hacer lusb veremos que que el dispositivo lo identifica como 03fd:0008, en el caso contrarío veremos 03fd:000d.&lt;br /&gt;&lt;br /&gt;¿Como solucionar este problema?&lt;br /&gt;&lt;br /&gt;En caso de que hicieron una actualización de Jaunty a Karmic:&lt;br /&gt;&lt;br /&gt;1.- Tienen que editar el archivo de reglas, que se encuentra en /etc/udev/rules.d&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sudo gedit /etc/udev/rules.d/xusbdfwu.rules&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Y reemplazar todos los $TEMPNODE por $tempnode&lt;br /&gt;&lt;br /&gt;2.- Reinicar el servicio udev&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sudo service udev restart&lt;/span&gt;  o &lt;span style="font-style: italic;"&gt;sudo /etc/init.d/udev restart&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;En caso de ser una instalación nueva:&lt;br /&gt;&lt;br /&gt;0.- Requisitos: Tener instaldo el ISE Webpack y los paquetes fxload, libusb-dev y el build-essential.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;sudo apt-get install fxload libusb-dev build-essential&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.- Suponiendo que ya tenemos instalado el ISE Webpack 11.1 (ó el 10.x), nos movemos al la ruta donde quedó instalado.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;cd /ruta_instalación_Xilinx/11.1/ISE/bin/lin/ o cd /ruta_instalación_Xilinx/11.1/ISE/bin/lin64/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ahí encontraremos los siguientes archivos&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;$ ls *.hex&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;xusbdfwu.hex  xusb_emb.hex  xusb_xlp.hex  xusb_xp2.hex  xusb_xpr.hex  xusb_xse.hex  xusb_xup.hex&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Los cuales copiaremos a /usr/share&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sudo cp xusb*.hex /usr/share/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2.- Enseguida editamos el archivo &lt;span style="font-style: italic;"&gt;xusbdfwu.rules&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;gedit xusbdfwu.rules&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;# version 0003&lt;br /&gt;SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", MODE="666"&lt;br /&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $TEMPNODE"&lt;br /&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $TEMPNODE"&lt;br /&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $TEMPNODE"&lt;br /&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $TEMPNODE"&lt;br /&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $TEMPNODE"&lt;br /&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $TEMPNODE"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cambiando $TEMPNODE por $tempnode, si lo dejan tan y como esta, no les va a funcionar. El contenido les debe de quedar algo como:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;# version 0003&lt;/span&gt; &lt;span style="font-style: italic;"&gt;SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", MODE="666"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $tempnode"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode"&lt;/span&gt; &lt;span style="font-style: italic;"&gt;BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode"&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;3.- Ya que lo modificamos lo copiamos a /etc/&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sudo cp xusbdfwu.rules /etc/udev/rules.d/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;4.- reiniciamos el servicio udev&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sudo service udev restart&lt;/span&gt;  o &lt;span style="font-style: italic;"&gt;sudo /etc/init.d/udev restart&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5.- Ahora nos movemos al $HOME creamos una carpeta tmp&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;cd&lt;br /&gt;mkdir tmp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;cd tmp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Vamos a &lt;a href="http://www.rmdir.de/%7Emichael/xilinx/"&gt;http://www.rmdir.de/~michael/xilinx/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Y descargamos de ahí el archivo &lt;a href="http://git.zerfleddert.de/cgi-bin/gitweb.cgi/usb-driver?a=snapshot;h=HEAD;sf=tgz"&gt;usb-driver-HEAD.tar.gz&lt;/a&gt; en la carpeta que acabamos de crear&lt;br /&gt;&lt;br /&gt;6.- estando en tmp descomprimimos el archivo y entramos al directorio recién creado y ejecutamos el make&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;tar -xvzf usb-driver-HEAD.tar.gz&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;cd usb-driver&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;7.- Lo anterior nos generará dos archivos, libusb-driver-DEBUG.so y libusb-driver.so los cuales copiaremos a /usr/lib/&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;sudo cp *.so /usr/lib/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;8.- Ya podemos conectar nuestra tarjeta al la PC con el Karmic Kola y ver&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;$ lsusb | grep Xilinx&lt;/span&gt; &lt;span style="font-style: italic;"&gt;Bus 001 Device 007: ID 03fd:0008 Xilinx, Inc.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;en lugar del&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;$ lsusb | grep Xilinx&lt;br /&gt;Bus 001 Device 007: ID 03fd:000d Xilinx, Inc.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Que al actualizar de versión me venía saliendo&lt;br /&gt;&lt;br /&gt;En la versión 11.1 para que el impact use el libusb-driver.so en vez de los windrvr, ya no es necesario hacer lo de "export LD_PRELOAD=/ruta/libusb-driver.so" antes de ejecutarlo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SuE6ap2U_jI/AAAAAAAAAJI/kEoyNgR1DaE/s1600-h/ss19.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 288px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SuE6ap2U_jI/AAAAAAAAAJI/kEoyNgR1DaE/s400/ss19.png" alt="" id="BLOGGER_PHOTO_ID_5395658058151296562" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2089034645672674725?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2089034645672674725/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2089034645672674725' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2089034645672674725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2089034645672674725'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/10/karmic-koala-spartan-3e-starter-kit.html' title='Karmic Koala: Spartan 3E Starter Kit y cable usb'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Nue6fu8xt9Q/SuE6ap2U_jI/AAAAAAAAAJI/kEoyNgR1DaE/s72-c/ss19.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-8308306898100396475</id><published>2009-09-29T09:15:00.000-07:00</published><updated>2009-09-29T09:35:46.838-07:00</updated><title type='text'>Actualización a Debian Testing</title><content type='html'>He actualizado anaconda a Debian Testing, pero no si problemas, el problema que me topé fue con el paquete netatalk, que sirve para compartir en una Red con MACs, pero ni tengo MACs, entonces para que lo quiero, y mas si me estaba dando problemas, sobre todo para poder instalar otros programas.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;div&gt;apt-get install linux-sound-base alsa-tools&lt;/div&gt;&lt;div&gt;Leyendo lista de paquetes... Hecho                     &lt;/div&gt;&lt;div&gt;Creando árbol de dependencias                          &lt;/div&gt;&lt;div&gt;Leyendo la información de estado... Hecho              &lt;/div&gt;&lt;div&gt;linux-sound-base ya está en su versión más reciente.   &lt;/div&gt;&lt;div&gt;fijado linux-sound-base como instalado manualmente.    &lt;/div&gt;&lt;div&gt;Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.&lt;/div&gt;&lt;div&gt;  libswfdec-0.6-90 libstlport4.6ldbl libhsqldb-java-gcj menu-xdg libuser-identity-perl libwpd8c2a libartsc0 libxfce4mcs-client3 fakeroot libmd5-perl&lt;/div&gt;&lt;div&gt;  libraw1394-8 libicu38 libmime-types-perl libvorbisfile3 doc-base libbeecrypt6 libhyphen0 libwpg-0.1-1 bsh-gcj kdelibs-data libjaxp1.3-java-gcj    &lt;/div&gt;&lt;div&gt;  python-numeric libmagick10 libterm-readkey-perl postgresql-doc-8.3 libsqlite0 libfile-remove-perl libservlet2.4-java tsocks libsuitesparse-3.1.0 socat&lt;/div&gt;&lt;div&gt;  libxerces2-java-gcj libmysqlclient15off libmail-sendmail-perl libdirectfb-1.0-0 ttf-liberation bluez-utils libakode2 bsh libavahi-qt3-1 libmikmod2    &lt;/div&gt;&lt;div&gt;  xfce4-icon-theme libio-stringy-perl libjaxp1.3-java ttf-opensymbol libpoppler3 libjline-java libmldbm-perl libxerces2-java libuuid-perl libbluetooth2 &lt;/div&gt;&lt;div&gt;  libobject-realize-later-perl libwps-0.1-1 libxalan2-java libsdl-mixer1.2 libconfuse0 libfreezethaw-perl libavcodec51 xfce4-mcs-manager svgalibg1      &lt;/div&gt;&lt;div&gt;  libhsqldb-java html2text xfce4-mixer-alsa libqt3-mt libxfce4mcs-manager3 libcupsys2 xfce4-minicmd-plugin libavahi-core5 libsys-hostname-long-perl     &lt;/div&gt;&lt;div&gt;  libcucul0 libxalan2-java-gcj libltdl3 libpoppler-glib3 libsdl-image1.2 libsmpeg0                                                                      &lt;/div&gt;&lt;div&gt;Utilice «apt-get autoremove» para eliminarlos.                                                                                                          &lt;/div&gt;&lt;div&gt;Se instalarán los siguientes paquetes extras:                                                                                                           &lt;/div&gt;&lt;div&gt;  netatalk                                                                                                                                              &lt;/div&gt;&lt;div&gt;Paquetes sugeridos:                                                                                                                                     &lt;/div&gt;&lt;div&gt;  texlive-base-bin quota timeout db4.2-util libpam-cracklib                                                                                             &lt;/div&gt;&lt;div&gt;Se instalarán los siguientes paquetes NUEVOS:                                                                                                           &lt;/div&gt;&lt;div&gt;  alsa-tools                                                                                                                                            &lt;/div&gt;&lt;div&gt;Se actualizarán los siguientes paquetes:                                                                                                                &lt;/div&gt;&lt;div&gt;  netatalk                                                                                                                                              &lt;/div&gt;&lt;div&gt;1 actualizados, 1 se instalarán, 0 para eliminar y 0 no actualizados.                                                                                   &lt;/div&gt;&lt;div&gt;5 no instalados del todo o eliminados.                                                                                                                  &lt;/div&gt;&lt;div&gt;Se necesita descargar 81.7kB/997kB de archivos.                                                                                                         &lt;/div&gt;&lt;div&gt;Se utilizarán 766kB de espacio de disco adicional después de esta operación.                                                                            &lt;/div&gt;&lt;div&gt;¿Desea continuar [S/n]?                                                                                                                                 &lt;/div&gt;&lt;div&gt;Des:1 http://ftp.fr.debian.org testing/main alsa-tools 1.0.20-1 [81.7kB]                                                                                &lt;/div&gt;&lt;div&gt;Descargados 81.7kB en 2s (32.3kB/s)                                                                                                                     &lt;/div&gt;&lt;div&gt;(Leyendo la base de datos ...  00%                                                                                                                      &lt;/div&gt;&lt;div&gt;114186 ficheros y directorios instalados actualmente.)                                                                                                  &lt;/div&gt;&lt;div&gt;Preparando para reemplazar netatalk 2.0.3-11+lenny1 (usando .../netatalk_2.0.4-1_i386.deb) ...                                                          &lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                                                                                     &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "stop" failed.                                                                                                 &lt;/div&gt;&lt;div&gt;dpkg: warning: script de `pre-removal' antiguo returned error exit status 1                                                                             &lt;/div&gt;&lt;div&gt;dpkg - probando el script del nuevo paquete en su lugar...                                                                                              &lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                                                                                     &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "stop" failed.                                                                                                 &lt;/div&gt;&lt;div&gt;dpkg: error al procesar /var/cache/apt/archives/netatalk_2.0.4-1_i386.deb (--unpack):                                                                   &lt;/div&gt;&lt;div&gt; el subproceso script pre-removal nuevo devolvió el código de salida de error 1                                                                         &lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                                                                                     &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "start" failed.                                                                                                &lt;/div&gt;&lt;div&gt;dpkg: error al reorganizar:                                                                                                                             &lt;/div&gt;&lt;div&gt; el subproceso installed post-installation script devolvió el código de salida de error 1                                                               &lt;/div&gt;&lt;div&gt;Seleccionando el paquete alsa-tools previamente no seleccionado.                                                                                        &lt;/div&gt;&lt;div&gt;Desempaquetando alsa-tools (de .../alsa-tools_1.0.20-1_i386.deb) ...                                                                                    &lt;/div&gt;&lt;div&gt;Procesando disparadores para man-db ...                                                                                                                 &lt;/div&gt;&lt;div&gt;Se encontraron errores al procesar:                                                                                                                     &lt;/div&gt;&lt;div&gt; /var/cache/apt/archives/netatalk_2.0.4-1_i386.deb                                                                                                      &lt;/div&gt;&lt;div&gt;E: Sub-process /usr/bin/dpkg returned an error code (1)           &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Entonces intente copiar el deb e instalarlo con el dpkg para después desinstalarlo&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;div&gt;anaconda:~# cp /var/cache/apt/archives/netatalk_2.0.4-1_i386.deb .&lt;/div&gt;&lt;div&gt;anaconda:~# ls                                                    &lt;/div&gt;&lt;div&gt;netatalk_2.0.4-1_i386.deb  null  p.sh                             &lt;/div&gt;&lt;div&gt;anaconda:~# dpkg -i netatalk_2.0.4-1_i386.deb&lt;/div&gt;&lt;div&gt;(Leyendo la base de datos ...  00%           &lt;/div&gt;&lt;div&gt;114224 ficheros y directorios instalados actualmente.)&lt;/div&gt;&lt;div&gt;Preparando para reemplazar netatalk 2.0.3-11+lenny1 (usando netatalk_2.0.4-1_i386.deb) ...&lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                       &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "stop" failed.                                   &lt;/div&gt;&lt;div&gt;dpkg: warning: script de `pre-removal' antiguo returned error exit status 1               &lt;/div&gt;&lt;div&gt;dpkg - probando el script del nuevo paquete en su lugar...                                &lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                       &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "stop" failed.                                   &lt;/div&gt;&lt;div&gt;dpkg: error al procesar netatalk_2.0.4-1_i386.deb (--install):                            &lt;/div&gt;&lt;div&gt; el subproceso script pre-removal nuevo devolvió el código de salida de error 1           &lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                       &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "start" failed.                                  &lt;/div&gt;&lt;div&gt;dpkg: error al reorganizar:                                                               &lt;/div&gt;&lt;div&gt; el subproceso installed post-installation script devolvió el código de salida de error 1 &lt;/div&gt;&lt;div&gt;Se encontraron errores al procesar:                                                       &lt;/div&gt;&lt;div&gt; netatalk_2.0.4-1_i386.deb               &lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Y de nuevo nada, el siguiente paso fue descomprimir el deb y cambiar los scripts de pre y post instalación, y borrarle el contenido de los scripts que invocaban el /etc/init.d/netatalk, que era el del problema.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;div&gt;anaconda:~# ar x netatalk_2.0.4-1_i386.deb&lt;/div&gt;&lt;div&gt;anaconda:~# ls                            &lt;/div&gt;&lt;div&gt;control.tar.gz  data.tar.gz  debian-binary  netatalk_2.0.4-1_i386.deb  null  p.sh&lt;/div&gt;&lt;div&gt;anaconda:~# mkdir tmp&lt;/div&gt;&lt;div&gt;anaconda:~# cd tmp/  &lt;/div&gt;&lt;div&gt;anaconda:~/tmp# mkdir DEBIAN&lt;/div&gt;&lt;div&gt;anaconda:~/tmp# cd DEBIAN/  &lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# vim ../../debian-binary&lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# cd ..                  &lt;/div&gt;&lt;div&gt;anaconda:~/tmp# tar xzvpf ../data.tar.gz&lt;/div&gt;&lt;div&gt;&lt;div&gt;anaconda:~/tmp# cd DEBIAN/&lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# tar xzvpf ../../control.tar.gz&lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# ls                            &lt;/div&gt;&lt;div&gt;conffiles  control  md5sums  postinst  postrm  prerm             &lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# vim prerm&lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# vim postinst&lt;/div&gt;&lt;div&gt;anaconda:~/tmp/DEBIAN# cd ..&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Y construir el nuevo paquete&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;div&gt;anaconda:~/tmp# dpkg --build . ..&lt;/div&gt;&lt;div&gt;dpkg-deb: construyendo el paquete `netatalk' en `../netatalk_2.0.4-1_i386.deb'.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Instalé el nuevo paquete&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;div&gt;anaconda:~# cd ..&lt;/div&gt;&lt;div&gt;&lt;div&gt;anaconda:~# dpkg -i netatalk_2.0.4-1_i386.deb&lt;/div&gt;&lt;div&gt;Seleccionando el paquete netatalk previamente no seleccionado.&lt;/div&gt;&lt;div&gt;(Leyendo la base de datos ...  00%                            &lt;/div&gt;&lt;div&gt;114224 ficheros y directorios instalados actualmente.)        &lt;/div&gt;&lt;div&gt;Preparando para reemplazar netatalk 2.0.3-11+lenny1 (usando netatalk_2.0.4-1_i386.deb) ...&lt;/div&gt;&lt;div&gt;hostname: Name or service not known                                                       &lt;/div&gt;&lt;div&gt;invoke-rc.d: initscript netatalk, action "stop" failed.                                   &lt;/div&gt;&lt;div&gt;dpkg: warning: script de `pre-removal' antiguo returned error exit status 1               &lt;/div&gt;&lt;div&gt;dpkg - probando el script del nuevo paquete en su lugar...                                &lt;/div&gt;&lt;div&gt;dpkg: ... parece que todo fue bien.                                                       &lt;/div&gt;&lt;div&gt;Desempaquetando el reemplazo de netatalk ...                                              &lt;/div&gt;&lt;div&gt;Configurando netatalk (2.0.4-1) ...                                                       &lt;/div&gt;&lt;div&gt;Instalando una nueva versión del fichero de configuración /etc/logcheck/ignore.d.server/netatalk ...&lt;/div&gt;&lt;div&gt;Instalando una nueva versión del fichero de configuración /etc/init.d/netatalk ...                  &lt;/div&gt;&lt;div&gt;Instalando una nueva versión del fichero de configuración /etc/netatalk/afpd.conf ...               &lt;/div&gt;&lt;div&gt;Instalando una nueva versión del fichero de configuración /etc/netatalk/AppleVolumes.default ...    &lt;/div&gt;&lt;div&gt;Instalando una nueva versión del fichero de configuración /etc/default/netatalk ...                 &lt;/div&gt;&lt;div&gt;Instalando una nueva versión del fichero de configuración /etc/pam.d/netatalk ...                   &lt;/div&gt;&lt;div&gt;Procesando disparadores para man-db ... &lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Y enseguida lo removí&lt;/div&gt;&lt;div&gt;                                                          &lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;div&gt;anaconda:~# apt-get remove netatalk                                                       &lt;/div&gt;&lt;div&gt;Leyendo lista de paquetes... Hecho                                                        &lt;/div&gt;&lt;div&gt;Creando árbol de dependencias                                                             &lt;/div&gt;&lt;div&gt;Leyendo la información de estado... Hecho                                                 &lt;/div&gt;&lt;div&gt;Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.         &lt;/div&gt;&lt;div&gt;  libswfdec-0.6-90 libstlport4.6ldbl libhsqldb-java-gcj menu-xdg libuser-identity-perl libwpd8c2a libartsc0 libxfce4mcs-client3 fakeroot libmd5-perl&lt;/div&gt;&lt;div&gt;  libraw1394-8 libicu38 libmime-types-perl libvorbisfile3 doc-base libbeecrypt6 libhyphen0 libwpg-0.1-1 bsh-gcj kdelibs-data libjaxp1.3-java-gcj    &lt;/div&gt;&lt;div&gt;  python-numeric libmagick10 libterm-readkey-perl postgresql-doc-8.3 libsqlite0 libfile-remove-perl libservlet2.4-java tsocks libsuitesparse-3.1.0 socat&lt;/div&gt;&lt;div&gt;  libxerces2-java-gcj libmysqlclient15off libmail-sendmail-perl libdirectfb-1.0-0 ttf-liberation bluez-utils libakode2 bsh libavahi-qt3-1 libmikmod2    &lt;/div&gt;&lt;div&gt;  xfce4-icon-theme libio-stringy-perl libjaxp1.3-java ttf-opensymbol libpoppler3 libjline-java libmldbm-perl libxerces2-java libuuid-perl libbluetooth2 &lt;/div&gt;&lt;div&gt;  libobject-realize-later-perl libwps-0.1-1 libxalan2-java libsdl-mixer1.2 libconfuse0 libfreezethaw-perl libavcodec51 xfce4-mcs-manager svgalibg1      &lt;/div&gt;&lt;div&gt;  libhsqldb-java html2text xfce4-mixer-alsa libqt3-mt libxfce4mcs-manager3 libcupsys2 xfce4-minicmd-plugin libavahi-core5 libsys-hostname-long-perl     &lt;/div&gt;&lt;div&gt;  libcucul0 libxalan2-java-gcj libltdl3 libpoppler-glib3 libsdl-image1.2 libsmpeg0                                                                      &lt;/div&gt;&lt;div&gt;Utilice «apt-get autoremove» para eliminarlos.                                                                                                          &lt;/div&gt;&lt;div&gt;Los siguientes paquetes se ELIMINARÁN:                                                                                                                  &lt;/div&gt;&lt;div&gt;  netatalk                                                                                                                                              &lt;/div&gt;&lt;div&gt;0 actualizados, 0 se instalarán, 1 para eliminar y 0 no actualizados.                                                                                   &lt;/div&gt;&lt;div&gt;5 no instalados del todo o eliminados.                                                                                                                  &lt;/div&gt;&lt;div&gt;Se liberarán 2310kB después de esta operación.                                                                                                          &lt;/div&gt;&lt;div&gt;¿Desea continuar [S/n]?                                                                                                                                 &lt;/div&gt;&lt;div&gt;(Leyendo la base de datos ...  00%                                                                                                                      &lt;/div&gt;&lt;div&gt;114228 ficheros y directorios instalados actualmente.)                                                                                                  &lt;/div&gt;&lt;div&gt;Desinstalando netatalk ...                                                                                                                              &lt;/div&gt;&lt;div&gt;Procesando disparadores para man-db ...                                                                                                                 &lt;/div&gt;&lt;div&gt;Configurando lockfile-progs (0.1.13) ...                                                                                                                &lt;/div&gt;&lt;div&gt;Configurando ntp (1:4.2.4p6+dfsg-2) ...                                                                                                                 &lt;/div&gt;&lt;div&gt;Starting NTP server: ntpd.                                                                                                                              &lt;/div&gt;&lt;div&gt;Configurando ntpdate (1:4.2.4p6+dfsg-2) ...                                                                                                             &lt;/div&gt;&lt;div&gt;Configurando rc (1.7.1-3) ...                                                                                                                           &lt;/div&gt;&lt;div&gt;Configurando alsa-tools (1.0.20-1) ...                                                                                                                  &lt;/div&gt;&lt;div&gt;Procesando disparadores para menu ...&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;      &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Y ya pudo configurar los programas que no había podido configurar por el problema con el paquete netatalk&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&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/8786117032177741671-8308306898100396475?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/8308306898100396475/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=8308306898100396475' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8308306898100396475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8308306898100396475'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/09/actualizacion-debian-testing.html' title='Actualización a Debian Testing'/><author><name>tskyW1lk</name><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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-2202411670609974236</id><published>2009-09-23T10:02:00.000-07:00</published><updated>2009-09-23T10:11:44.974-07:00</updated><title type='text'>ATI Radeon Xpress 200M Karmic</title><content type='html'>Al parecer ya no hay necesidad de hacer compilación alguna en Karmic Koala, para muestra dejo una captura del resultado arrojado por glxgears&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SrpWD3QNo1I/AAAAAAAAAIY/5O1Ctufqi6s/s1600-h/renderati.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 206px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SrpWD3QNo1I/AAAAAAAAAIY/5O1Ctufqi6s/s400/renderati.png" alt="" id="BLOGGER_PHOTO_ID_5384710928846398290" border="0" /&gt;&lt;/a&gt;Y siendo que estan activados los efectos&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2202411670609974236?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2202411670609974236/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2202411670609974236' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2202411670609974236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2202411670609974236'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/09/ati-radeon-xpress-200m-karmic.html' title='ATI Radeon Xpress 200M Karmic'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Nue6fu8xt9Q/SrpWD3QNo1I/AAAAAAAAAIY/5O1Ctufqi6s/s72-c/renderati.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-8337211632639924332</id><published>2009-08-22T10:31:00.000-07:00</published><updated>2009-08-22T10:48:21.427-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mandrake'/><category scheme='http://www.blogger.com/atom/ns#' term='SuSE'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='capturas'/><category scheme='http://www.blogger.com/atom/ns#' term='Recuerdos'/><title type='text'>Imágenes del recuerdo Parte II (2004)</title><content type='html'>Llegamos al 2004 ya con SuSE en una PC, la otra continuando con Mandrake.&lt;br /&gt;&lt;br /&gt;Captura del escritorio del SuSE&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAusjY11aI/AAAAAAAAAH0/szR-IUqQEvA/s1600-h/linux3.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 150px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAusjY11aI/AAAAAAAAAH0/szR-IUqQEvA/s200/linux3.png" alt="" id="BLOGGER_PHOTO_ID_5372845698401555874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Haciendo un programa en Lazarus para controlar cuatro focos via el puerto paralelo&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAtvFb5BLI/AAAAAAAAAHk/Dg8LMjuPSpA/s1600-h/img1.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 178px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAtvFb5BLI/AAAAAAAAAHk/Dg8LMjuPSpA/s200/img1.png" alt="" id="BLOGGER_PHOTO_ID_5372844642389263538" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAtum5yCSI/AAAAAAAAAHc/Y261SMvyu6Y/s1600-h/imag3.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 178px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAtum5yCSI/AAAAAAAAAHc/Y261SMvyu6Y/s200/imag3.png" alt="" id="BLOGGER_PHOTO_ID_5372844634193135906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAtuf6aaGI/AAAAAAAAAHU/J9xYpjbnkqA/s1600-h/imag2.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 178px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAtuf6aaGI/AAAAAAAAAHU/J9xYpjbnkqA/s200/imag2.png" alt="" id="BLOGGER_PHOTO_ID_5372844632316733538" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAtt80eENI/AAAAAAAAAHM/kZS4mKDfRks/s1600-h/imag1.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAtt80eENI/AAAAAAAAAHM/kZS4mKDfRks/s200/imag1.png" alt="" id="BLOGGER_PHOTO_ID_5372844622896566482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAusGtyF0I/AAAAAAAAAHs/pWq12F91FDs/s1600-h/DCP02109.JPG"&gt;&lt;img style="cursor: pointer; width: 200px; height: 150px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAusGtyF0I/AAAAAAAAAHs/pWq12F91FDs/s200/DCP02109.JPG" alt="" id="BLOGGER_PHOTO_ID_5372845690704762690" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Usando en gpsim&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAttqobmyI/AAAAAAAAAHE/KeFZ7Uz0YsI/s1600-h/gpsimr.png"&gt;&lt;img style="cursor: pointer; width: 199px; height: 150px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAttqobmyI/AAAAAAAAAHE/KeFZ7Uz0YsI/s200/gpsimr.png" alt="" id="BLOGGER_PHOTO_ID_5372844618014235426" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Haciendo un programa en Lazarus para la materia de robótica&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAut7zJUII/AAAAAAAAAIM/v6hiLhxgMZw/s1600-h/robotica2.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 150px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAut7zJUII/AAAAAAAAAIM/v6hiLhxgMZw/s200/robotica2.png" alt="" id="BLOGGER_PHOTO_ID_5372845722134204546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAutgMoX3I/AAAAAAAAAIE/wMo-0bk0Z-U/s1600-h/robotica3.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 91px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAutgMoX3I/AAAAAAAAAIE/wMo-0bk0Z-U/s200/robotica3.png" alt="" id="BLOGGER_PHOTO_ID_5372845714724904818" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAutB6zpEI/AAAAAAAAAH8/yGIdht-iq68/s1600-h/robotica1.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 91px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAutB6zpEI/AAAAAAAAAH8/yGIdht-iq68/s200/robotica1.png" alt="" id="BLOGGER_PHOTO_ID_5372845706597082178" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-8337211632639924332?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/8337211632639924332/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=8337211632639924332' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8337211632639924332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8337211632639924332'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/08/imagenes-del-recuerdo-parte-ii-2004.html' title='Imágenes del recuerdo Parte II (2004)'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAusjY11aI/AAAAAAAAAH0/szR-IUqQEvA/s72-c/linux3.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-1923017153124201621</id><published>2009-08-22T10:12:00.000-07:00</published><updated>2009-08-22T10:29:30.803-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mandrake'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='capturas'/><category scheme='http://www.blogger.com/atom/ns#' term='Recuerdos'/><title type='text'>Imágenes del recuerdo Parte I (2002-2003)  (cont.)</title><content type='html'>Siguiendo con las imágenes del recuerdo ... (VisSim)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAnjUmGkkI/AAAAAAAAAFM/d0lttZfFfWA/s1600-h/pimotordia.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAnjUmGkkI/AAAAAAAAAFM/d0lttZfFfWA/s400/pimotordia.png" alt="" id="BLOGGER_PHOTO_ID_5372837843230429762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Scilab&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAnjvMA8eI/AAAAAAAAAFU/T5qt3jnD9yY/s1600-h/sci2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAnjvMA8eI/AAAAAAAAAFU/T5qt3jnD9yY/s400/sci2.png" alt="" id="BLOGGER_PHOTO_ID_5372837850368766434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAnkOCU_9I/AAAAAAAAAFc/W0jcDoKu7Tk/s1600-h/sci6.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAnkOCU_9I/AAAAAAAAAFc/W0jcDoKu7Tk/s400/sci6.png" alt="" id="BLOGGER_PHOTO_ID_5372837858649636818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAnkdQpLOI/AAAAAAAAAFk/0djiL9SrU_k/s1600-h/sci8.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAnkdQpLOI/AAAAAAAAAFk/0djiL9SrU_k/s400/sci8.png" alt="" id="BLOGGER_PHOTO_ID_5372837862736211170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAnkz_AWgI/AAAAAAAAAFs/3NufsAAyRjs/s1600-h/sci9.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAnkz_AWgI/AAAAAAAAAFs/3NufsAAyRjs/s400/sci9.png" alt="" id="BLOGGER_PHOTO_ID_5372837868836248066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Oregano (Simulador de Circuitos)&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAoe_o0bvI/AAAAAAAAAGU/5qnRR-h3q3k/s1600-h/instantnea26.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAoe_o0bvI/AAAAAAAAAGU/5qnRR-h3q3k/s400/instantnea26.png" alt="" id="BLOGGER_PHOTO_ID_5372838868396830450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Algun juego&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAoedoRC0I/AAAAAAAAAGM/EsdC0MfzUvU/s1600-h/instantnea21.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAoedoRC0I/AAAAAAAAAGM/EsdC0MfzUvU/s400/instantnea21.png" alt="" id="BLOGGER_PHOTO_ID_5372838859267705666" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;El programa que usaba para quemar CDs&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAoePHmB_I/AAAAAAAAAGE/nWlwsEfJjeM/s1600-h/instantnea18.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpAoePHmB_I/AAAAAAAAAGE/nWlwsEfJjeM/s400/instantnea18.png" alt="" id="BLOGGER_PHOTO_ID_5372838855372572658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Viendo un programa en c++&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAodin2QYI/AAAAAAAAAF8/BqbqHlUjx9g/s1600-h/instantnea15.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAodin2QYI/AAAAAAAAAF8/BqbqHlUjx9g/s400/instantnea15.png" alt="" id="BLOGGER_PHOTO_ID_5372838843428258178" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Probando Dia&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAodXL2SgI/AAAAAAAAAF0/QBHrOCcsRhY/s1600-h/instantnea13.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAodXL2SgI/AAAAAAAAAF0/QBHrOCcsRhY/s400/instantnea13.png" alt="" id="BLOGGER_PHOTO_ID_5372838840358029826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Navegadores&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpApms7FreI/AAAAAAAAAG0/u18fKMTPZqU/s1600-h/instantnea28.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpApms7FreI/AAAAAAAAAG0/u18fKMTPZqU/s400/instantnea28.png" alt="" id="BLOGGER_PHOTO_ID_5372840100323765730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpApmReMmDI/AAAAAAAAAGs/AHs1GM6JvWo/s1600-h/instantnea29.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpApmReMmDI/AAAAAAAAAGs/AHs1GM6JvWo/s400/instantnea29.png" alt="" id="BLOGGER_PHOTO_ID_5372840092954826802" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpApl5MPmuI/AAAAAAAAAGk/UExLMs1UzZQ/s1600-h/instantnea30.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpApl5MPmuI/AAAAAAAAAGk/UExLMs1UzZQ/s400/instantnea30.png" alt="" id="BLOGGER_PHOTO_ID_5372840086437075682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Instalación de paquetes&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAplrDu69I/AAAAAAAAAGc/roduTZtsijA/s1600-h/instantnea34.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 364px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAplrDu69I/AAAAAAAAAGc/roduTZtsijA/s400/instantnea34.png" alt="" id="BLOGGER_PHOTO_ID_5372840082643282898" border="0" /&gt;&lt;/a&gt;En la siguiente parte vendrán algunas capturas del 2004&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-1923017153124201621?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1923017153124201621/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1923017153124201621' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1923017153124201621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1923017153124201621'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/08/imagenes-del-recuerdo-parte-i-2002-2003.html' title='Imágenes del recuerdo Parte I (2002-2003)  (cont.)'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAnjUmGkkI/AAAAAAAAAFM/d0lttZfFfWA/s72-c/pimotordia.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-1764358142666162709</id><published>2009-08-22T08:55:00.000-07:00</published><updated>2009-08-22T10:30:17.340-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mandrake'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='capturas'/><title type='text'>Imágenes del recuerdo Parte I (2002-2003)</title><content type='html'>Desués de varios años en el mundo de GNU/Linux, es grato recordar como era que teníamos nuestra PC años atrás, aunque no tengo capturas de pantalla de 2001 si las tengo apartrir del 2002 y 2003, que son con las que voy a empezar.&lt;br /&gt;&lt;br /&gt;Así se veía mi Instalación de Mandrake 8.2 y 9.0, estaban mezcladas que realmente no supe cual era cual.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAZX0hxgBI/AAAAAAAAAD8/hO60zyHGw1s/s1600-h/KDE.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAZX0hxgBI/AAAAAAAAAD8/hO60zyHGw1s/s400/KDE.png" alt="" id="BLOGGER_PHOTO_ID_5372822252480987154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAhqsMPd7I/AAAAAAAAAEc/GpRVk1oj-mQ/s1600-h/instantnea8.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAhqsMPd7I/AAAAAAAAAEc/GpRVk1oj-mQ/s400/instantnea8.png" alt="" id="BLOGGER_PHOTO_ID_5372831372753729458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAhqOFwKLI/AAAAAAAAAEU/tDIFlabEV4U/s1600-h/instantnea7.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAhqOFwKLI/AAAAAAAAAEU/tDIFlabEV4U/s400/instantnea7.png" alt="" id="BLOGGER_PHOTO_ID_5372831364673448114" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAhptV7dUI/AAAAAAAAAEM/rWAKOk8NUpc/s1600-h/instantnea6.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAhptV7dUI/AAAAAAAAAEM/rWAKOk8NUpc/s400/instantnea6.png" alt="" id="BLOGGER_PHOTO_ID_5372831355882927426" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAhpIxj-sI/AAAAAAAAAEE/tYwOPY0Aqe8/s1600-h/instantnea5.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpAhpIxj-sI/AAAAAAAAAEE/tYwOPY0Aqe8/s400/instantnea5.png" alt="" id="BLOGGER_PHOTO_ID_5372831346066717378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Haciendo trabajos y probando OpenOffice, scilab, maxima, oregano, VisSim (con Wine), etc., etc.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAmN8M9JtI/AAAAAAAAAFE/kJas71ELcto/s1600-h/maxima.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAmN8M9JtI/AAAAAAAAAFE/kJas71ELcto/s400/maxima.png" alt="" id="BLOGGER_PHOTO_ID_5372836376393623250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAmNYZ48WI/AAAAAAAAAE8/atKpTQOYP1w/s1600-h/insvsim1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAmNYZ48WI/AAAAAAAAAE8/atKpTQOYP1w/s400/insvsim1.png" alt="" id="BLOGGER_PHOTO_ID_5372836366784196962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAmM_DOs_I/AAAAAAAAAE0/NW3AOgyZRl8/s1600-h/instantnea19.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAmM_DOs_I/AAAAAAAAAE0/NW3AOgyZRl8/s400/instantnea19.png" alt="" id="BLOGGER_PHOTO_ID_5372836359978267634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAmMk3iD6I/AAAAAAAAAEs/_pg-10qu6pM/s1600-h/instantnea3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAmMk3iD6I/AAAAAAAAAEs/_pg-10qu6pM/s400/instantnea3.png" alt="" id="BLOGGER_PHOTO_ID_5372836352949882786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAmMfGwsvI/AAAAAAAAAEk/pfkKZ95O3J0/s1600-h/instantnea1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SpAmMfGwsvI/AAAAAAAAAEk/pfkKZ95O3J0/s400/instantnea1.png" alt="" id="BLOGGER_PHOTO_ID_5372836351403143922" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-1764358142666162709?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1764358142666162709/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1764358142666162709' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1764358142666162709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1764358142666162709'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/08/el-recuerdo-2002-2003-parte-i.html' title='Imágenes del recuerdo Parte I (2002-2003)'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Nue6fu8xt9Q/SpAZX0hxgBI/AAAAAAAAAD8/hO60zyHGw1s/s72-c/KDE.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-5250102827527517459</id><published>2009-08-22T08:09:00.000-07:00</published><updated>2009-08-22T08:41:30.910-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='caché'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>La caché de Google</title><content type='html'>&lt;p&gt; &lt;span style=""&gt;&lt;a name="cached"&gt;&lt;b&gt;&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;Segun leo en http://www.google.com/intl/es/help/features.html&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;p&gt; &lt;span style=""&gt;&lt;a name="cached"&gt;&lt;b&gt;Vínculos en caché&lt;/b&gt; &lt;/a&gt;       &lt;/span&gt;         &lt;/p&gt;&lt;p&gt;&lt;span style=""&gt;Google toma una instantánea de cada página examinada mientras explora la web y  la guarda en caché como copia de   seguridad en caso de que la página original no esté disponible. Si hace clic en el vínculo "Caché", verá la página   web como se veía cuando fue indexada. El contenido caché es el contenido que Google usó para juzgar si la página es   una buena coincidencia para su búsqueda.&lt;/span&gt;&lt;/p&gt;      &lt;span style=""&gt;La página almacenada en caché se mostrará con un encabezado que recuerda que se trata de una versión caché de la página y no la propia página. Los términos que coinciden con su consulta están resaltados en la versión caché para que le sea más fácil saber por qué su página es importante. &lt;p&gt;El vínculo "Caché" no estará presente en los sitios que no han sido indexados, ni tampoco en aquellos sitios cuyos dueños nos han pedido que quitemos el contenido almacenado en caché. &lt;/p&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span style=""&gt;&lt;p&gt;&lt;/p&gt;      &lt;/span&gt;Lectura actual&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpANV5J4IsI/AAAAAAAAACQ/74JsDRp6BEM/s1600-h/Actual.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 253px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpANV5J4IsI/AAAAAAAAACQ/74JsDRp6BEM/s400/Actual.png" alt="" id="BLOGGER_PHOTO_ID_5372809025223664322" border="0" /&gt;&lt;/a&gt;Caché de Google&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpANWKnWd1I/AAAAAAAAACY/tjsC4Vq91So/s1600-h/CacheGoogle.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 232px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpANWKnWd1I/AAAAAAAAACY/tjsC4Vq91So/s400/CacheGoogle.png" alt="" id="BLOGGER_PHOTO_ID_5372809029910689618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;La imagen tanto en la cache y mi página es la misma, por lo tanto la imágen que muestra google en su caché no es la que le corresponde al día en que fue indexada, sino a la actual, como dirían, no es una copia fiel, jejeje.&lt;br /&gt;&lt;br /&gt;15 minutos después.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpANWi9RXcI/AAAAAAAAACg/uK1xXNhEHuc/s1600-h/15md.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 365px; height: 342px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpANWi9RXcI/AAAAAAAAACg/uK1xXNhEHuc/s400/15md.png" alt="" id="BLOGGER_PHOTO_ID_5372809036445081026" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpANWyhTReI/AAAAAAAAACo/u_NETkFSD1I/s1600-h/15mdc.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 373px; height: 339px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SpANWyhTReI/AAAAAAAAACo/u_NETkFSD1I/s400/15mdc.png" alt="" id="BLOGGER_PHOTO_ID_5372809040622732770" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Tendré que tirar el servidor para ver que imágen pone la caché de google, pero en este momento no me dan ganas de probar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-5250102827527517459?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/5250102827527517459/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=5250102827527517459' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/5250102827527517459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/5250102827527517459'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/08/la-cache-de-google.html' title='La caché de Google'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Nue6fu8xt9Q/SpANV5J4IsI/AAAAAAAAACQ/74JsDRp6BEM/s72-c/Actual.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-8250898417347684778</id><published>2009-08-16T18:45:00.000-07:00</published><updated>2009-08-16T19:07:26.612-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='octave'/><category scheme='http://www.blogger.com/atom/ns#' term='Karmic'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Octave 3.0 en Karmic Koala Alpha 4 amd64</title><content type='html'>Al intentar instalar el octave 3.0 en el Karmic Koala Alpha 4 versión para amd64, fallaba la depedencia del octave3.0-common&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo apt-get install octave3.0                    &lt;br /&gt;Leyendo lista de paquetes... Hecho                                           &lt;br /&gt;Creando árbol de dependencias                                                &lt;br /&gt;Leyendo la información de estado... Hecho                                    &lt;br /&gt;No se pudieron instalar algunos paquetes. Esto puede significar que          &lt;br /&gt;usted pidió una situación imposible o, si está usando la distribución        &lt;br /&gt;inestable, que algunos paquetes necesarios no han sido creados o han         &lt;br /&gt;sido movidos fuera de Incoming.                                              &lt;br /&gt;La siguiente información puede ayudar a resolver la situación:               &lt;br /&gt;&lt;br /&gt;Los siguientes paquetes tienen dependencias incumplidas:&lt;br /&gt; octave3.0: Depende: octave3.0-common (= 1:3.0.5-6ubuntu2) pero 1:3.0.5-6ubuntu1 va a ser instalado                                                        &lt;br /&gt;E: Paquetes rotos&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Viendo en la página del Ubuntu me encuentro que:&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;dt&gt;&lt;a href="http://packages.ubuntu.com/karmic/octave3.0-common"&gt;&lt;/a&gt;&lt;br /&gt;&lt;/dt&gt;&lt;/dl&gt;&lt;blockquote&gt;&lt;dl&gt;&lt;dt&gt;&lt;a href="http://packages.ubuntu.com/karmic/octave3.0-common"&gt;octave3.0-common&lt;/a&gt;   (= 1:3.0.5-6ubuntu1)          [i386]&lt;/dt&gt;&lt;dd lang="en"&gt;architecture-independent files for octave3.0         &lt;/dd&gt;&lt;/dl&gt;                         &lt;dl&gt;&lt;dt&gt;&lt;span class="nonvisual"&gt;dep:&lt;/span&gt;  &lt;a href="http://packages.ubuntu.com/karmic/octave3.0-common"&gt;octave3.0-common&lt;/a&gt;   (= 1:3.0.5-6ubuntu2)          [amd64]&lt;/dt&gt;&lt;/dl&gt;&lt;/blockquote&gt;&lt;dl&gt;&lt;dt&gt;&lt;br /&gt;&lt;/dt&gt;&lt;/dl&gt;&lt;br /&gt;Pero la segunda no esta, sólo la 3.0.5-6ubuntu1, de ahí el problema.&lt;br /&gt;&lt;br /&gt;Como engañarlo para poder instalar octave&lt;br /&gt;&lt;br /&gt;Primero instalamos el octave3.0-common&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo apt-get install octave3.0-common&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Ya que esta instalado, abrimos el archivo (/var/lib/dpkg/status) y buscamos dentro del el paquete octave3.0-common&lt;br /&gt;&lt;br /&gt;Veremos algo como lo que sigue&lt;br /&gt;&lt;blockquote&gt;Package: octave3.0-common&lt;br /&gt;Status: install ok installed&lt;br /&gt;Priority: extra&lt;br /&gt;Section: devel&lt;br /&gt;Installed-Size: 5020&lt;br /&gt;Maintainer: Ubuntu MOTU Developers &lt;ubuntu-motu@lists.ubuntu.com&gt;&lt;br /&gt;Architecture: all&lt;br /&gt;Source: octave3.0&lt;br /&gt;Version: 1:3.0.5-6ubuntu1&lt;br /&gt;Description: architecture-independent files for octave3.0&lt;/ubuntu-motu@lists.ubuntu.com&gt;&lt;/blockquote&gt;&lt;br /&gt;Modificamos la línea de la versión (Version: 1:3.0.5-6ubuntu1) para que diga Version: 1:3.0.5-6ubuntu2, que es la que necesitamos.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Package: octave3.0-common&lt;br /&gt;Status: install ok installed&lt;br /&gt;Priority: extra&lt;br /&gt;Section: devel&lt;br /&gt;Installed-Size: 5020&lt;br /&gt;Maintainer: Ubuntu MOTU Developers &lt;ubuntu-motu@lists.ubuntu.com&gt;&lt;br /&gt;Architecture: all&lt;br /&gt;Source: octave3.0&lt;br /&gt;Version: 1:3.0.5-6ubuntu2&lt;br /&gt;Description: architecture-independent files for octave3.0&lt;/ubuntu-motu@lists.ubuntu.com&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Guardamos y ahora si podremos instalar el octave3.0, sea desde synaptic o con:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo apt-get install octave3.0&lt;/blockquote&gt;Y listo, ya podemos usar el octave&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-8250898417347684778?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/8250898417347684778/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=8250898417347684778' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8250898417347684778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8250898417347684778'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/08/octave-30-en-karmic-koala-alpha-4-amd64.html' title='Octave 3.0 en Karmic Koala Alpha 4 amd64'/><author><name>tskyW1lk</name><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-8786117032177741671.post-1465817231934378766</id><published>2009-07-01T12:10:00.000-07:00</published><updated>2009-07-01T12:37:57.142-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='Escritorio'/><category scheme='http://www.blogger.com/atom/ns#' term='Recuerdos'/><title type='text'>La PC que se niega morir</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/Sku2HCqumEI/AAAAAAAAACI/K8vNA9TZnok/s1600-h/screenshot3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/Sku2HCqumEI/AAAAAAAAACI/K8vNA9TZnok/s400/screenshot3.png" alt="" id="BLOGGER_PHOTO_ID_5353572814151391298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CPU: Celeron 366 Mhz&lt;br /&gt;RAM: 256 Mb&lt;br /&gt;SO: Ubuntu 9.04&lt;br /&gt;Resolución de Pantalla: 1152x864&lt;br /&gt;Escritorio. Gnome&lt;br /&gt;&lt;br /&gt;Hace mucho que no manejaba esta PC con una interfaz gráfica, de hecho la tenía sin monitor, pero ahora que se lo puse, he recordado los viejos tiempos, lo que pasé con ella aprendiendo, y por lo que veo todavía me va a dar más satisfacciones.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/Sku1cj_uRgI/AAAAAAAAAB4/hhOpqJ8Je3I/s1600-h/screenshot1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/Sku1cj_uRgI/AAAAAAAAAB4/hhOpqJ8Je3I/s400/screenshot1.png" alt="" id="BLOGGER_PHOTO_ID_5353572084363445762" border="0" /&gt;&lt;/a&gt;Aquí es donde me pregunto ¿Porqué ahora las cosas las hacen para que no te duren? No estamos comprando chocolates para que las empresas nos pretendan hacer creer que necesitamos PCs de última generación.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/Sku13y7o_nI/AAAAAAAAACA/ieFCY-gqjiM/s1600-h/screenshot2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/Sku13y7o_nI/AAAAAAAAACA/ieFCY-gqjiM/s400/screenshot2.png" alt="" id="BLOGGER_PHOTO_ID_5353572552229322354" border="0" /&gt;&lt;/a&gt;Esta PC va para los 10 años de edad y sigue inquebrantable, en pie, día y noche, día y noche. Sólo ve su ciclo interrumpido cuando tengo que salir por más de 1 día, y así lleva ya más de 2 años, cuando decidí darle nueva vida como servidor de páginas web.&lt;br /&gt;&lt;br /&gt;Después postearé capturas de pantalla del recuerdo (las que en su momento saque)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-1465817231934378766?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1465817231934378766/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1465817231934378766' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1465817231934378766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1465817231934378766'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/07/la-pc-que-se-niega-morir.html' title='La PC que se niega morir'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Nue6fu8xt9Q/Sku2HCqumEI/AAAAAAAAACI/K8vNA9TZnok/s72-c/screenshot3.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-6607310077096346316</id><published>2009-06-15T10:48:00.000-07:00</published><updated>2009-06-17T08:34:28.035-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroladores'/><category scheme='http://www.blogger.com/atom/ns#' term='Programación'/><category scheme='http://www.blogger.com/atom/ns#' term='sdcc'/><title type='text'>Segundo intento sdcc (12f675)</title><content type='html'>Mi segunda prueba, me demostró que aunque el sdcc me evite usar el ensamblador me siento más comodo programando en ensamblador, la costumbre es más fuerte.&lt;br /&gt;&lt;br /&gt;En este caso estoy utilizando el conversor de ADC del PIC 12F675 para enviar la lectura de una foto resistencia (LDR) a la PC por medio de RS232&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;/* ----------------------------------------------------------------------- */&lt;br /&gt;/* Template source file generated by piklab */&lt;br /&gt;#include &lt;pic12f675.h&gt;&lt;br /&gt;&lt;br /&gt;/* ----------------------------------------------------------------------- */&lt;br /&gt;/* Bits de configuración: adapte los parámetros a su necesidad */&lt;br /&gt;typedef unsigned int word;&lt;br /&gt;word at 0x2007 CONFIG = _INTRC_OSC_NOCLKOUT &amp;amp; _WDT_OFF &amp;amp; _PWRTE_ON &amp;amp; _MCLRE_OFF &amp;amp; _BODEN_OFF &amp;amp; _CP_OFF &amp;amp; _CPD_OFF;&lt;br /&gt;&lt;br /&gt;unsigned char Count,Temp,SerBuf;&lt;br /&gt;&lt;br /&gt;#define Tx 1&lt;br /&gt;#define Rx 2&lt;br /&gt;&lt;br /&gt;void baud(unsigned char baudrate)&lt;br /&gt;{&lt;br /&gt;_asm&lt;br /&gt;baud:&lt;br /&gt;   movlw    D'16'&lt;br /&gt;   movwf    _Count&lt;br /&gt;baud1:    decfsz    _Count,F&lt;br /&gt;   goto    baud1&lt;br /&gt;&lt;br /&gt;half_baud:&lt;br /&gt;   movlw    D'16'&lt;br /&gt;   movwf    _Count&lt;br /&gt;hbaud1:    decfsz    _Count,F&lt;br /&gt;   goto    hbaud1&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void recv_suart()&lt;br /&gt;{&lt;br /&gt;_asm&lt;br /&gt;inch_n:    btfsc    GPIO,Rx&lt;br /&gt;   goto    inch_n&lt;br /&gt;   movlw    8&lt;br /&gt;   movwf    _Temp&lt;br /&gt;   clrf    _SerBuf&lt;br /&gt;   call    half_baud&lt;br /&gt;   ;btfsc    GPIO,Rx&lt;br /&gt;   ;goto    inch_n&lt;br /&gt;inch_n1:&lt;br /&gt;   call    baud&lt;br /&gt;   bcf    STATUS,0&lt;br /&gt;   rrf    _SerBuf,F&lt;br /&gt;   btfsc    GPIO,Rx&lt;br /&gt;   bsf    _SerBuf,7&lt;br /&gt;   decfsz    _Temp,F&lt;br /&gt;   goto    inch_n1&lt;br /&gt;   call    baud&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void send_suart()&lt;br /&gt;{&lt;br /&gt;_asm&lt;br /&gt;outch_n:&lt;br /&gt;   ;movwf    _SerBuf&lt;br /&gt;   movlw    8&lt;br /&gt;   movwf    _Temp&lt;br /&gt;   bcf    GPIO,Tx&lt;br /&gt;   call    baud&lt;br /&gt;outch_n1:&lt;br /&gt;   rrf    _SerBuf,F&lt;br /&gt;   btfss    STATUS,0&lt;br /&gt;   bcf    GPIO,Tx&lt;br /&gt;   btfsc    STATUS,0&lt;br /&gt;   bsf    GPIO,Tx&lt;br /&gt;   call    baud&lt;br /&gt;   decfsz    _Temp,F&lt;br /&gt;   goto    outch_n1&lt;br /&gt;&lt;br /&gt;   rrf    _SerBuf,F&lt;br /&gt;   bsf    GPIO,Tx&lt;br /&gt;   call    baud&lt;br /&gt;   call    baud&lt;br /&gt;_endasm;  &lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;void on_adc() {&lt;br /&gt;_asm&lt;br /&gt;   movlw    0x01&lt;br /&gt;   movwf    ADCON0&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void off_adc() {&lt;br /&gt;_asm&lt;br /&gt;   clrf    ADCON0&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void read_adc() {&lt;br /&gt;_asm&lt;br /&gt;   bsf    ADCON0,1&lt;br /&gt;waitfc:    btfsc    ADCON0,1&lt;br /&gt;   goto    waitfc&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;void initPIC()&lt;br /&gt;{&lt;br /&gt;/*Poner a Ceros el Puerto*/&lt;br /&gt;_asm&lt;br /&gt;BANKSEL    GPIO&lt;br /&gt;movlw    0x02&lt;br /&gt;movwf    GPIO&lt;br /&gt;movlw    0x07&lt;br /&gt;movwf    CMCON&lt;br /&gt;BANKSEL    ANSEL&lt;br /&gt;movlw    0x11&lt;br /&gt;movwf    ANSEL&lt;br /&gt;movlw    0x0d&lt;br /&gt;movwf    TRISIO&lt;br /&gt;BANKSEL    GPIO&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/*Rutina de Retardo*/&lt;br /&gt;void delay(int ret) {&lt;br /&gt;int r;&lt;br /&gt;for(r=0;r&lt;=ret;r++) { } }   void main() {  initPIC();  SerBuf=0x70;  send_suart();  SerBuf=0x69;  send_suart();  SerBuf=0x63;  send_suart();  SerBuf=0x31;  send_suart();  SerBuf=0x32;  send_suart();  SerBuf=0x66;  send_suart();  SerBuf=0x36;  send_suart();  SerBuf=0x37;  send_suart();  SerBuf=0x35;  send_suart();  SerBuf=0x0D;  send_suart();   recv_suart();  send_suart();  while(1){  on_adc();  read_adc();  off_adc();  SerBuf=ADRESH;  send_suart();  GP5=1;  delay(20000000);  GP5=0;  delay(20000000);  } }  &lt;/pic12f675.h&gt;&lt;/blockquote&gt;Que es lo que hago:&lt;br /&gt;&lt;br /&gt;1.- Envió a la PC pic12f675&lt;br /&gt;2.- Espero a recibir cualquier caracter para iniciar las conversiones&lt;br /&gt;3.- Después de hacer una lectura y enviar el resultado a la PC prendo y apago un led&lt;br /&gt;&lt;br /&gt;Necesito más práctica para abandonar el uso del ensamblador cuando use el sdcc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-6607310077096346316?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/6607310077096346316/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=6607310077096346316' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/6607310077096346316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/6607310077096346316'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/06/mi-segunda-prueba-me-demostro-que.html' title='Segundo intento sdcc (12f675)'/><author><name>tskyW1lk</name><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-8786117032177741671.post-647689128905970063</id><published>2009-06-01T21:38:00.000-07:00</published><updated>2009-07-09T21:12:16.776-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='Piklab'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroladores'/><category scheme='http://www.blogger.com/atom/ns#' term='sdcc'/><title type='text'>Mi intento de aprender sdcc para PICs</title><content type='html'>Con el Piklab en Linux me decidí a aprender a usar el sdcc, de lo cual resultó esta pequeña obra de arte (si como no)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;/* ----------------------------------------------------------------------- */&lt;br /&gt;/* Template source file generated by piklab */&lt;br /&gt;#include &lt;pic12f675.h&gt;&lt;br /&gt;&lt;br /&gt;/* ----------------------------------------------------------------------- */&lt;br /&gt;/* Bits de configuración: adapte los parámetros a su necesidad */&lt;br /&gt;typedef unsigned int word;&lt;br /&gt;word at 0x2007 CONFIG = _INTRC_OSC_NOCLKOUT &amp;amp; _WDT_OFF &amp;amp; _PWRTE_OFF &amp;amp; _MCLRE_OFF &amp;amp; _BODEN_OFF &amp;amp; _CP_OFF &amp;amp; _CPD_OFF;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;void initPIC()&lt;br /&gt;{&lt;br /&gt;/*Poner a Ceros el Puerto*/&lt;br /&gt;_asm&lt;br /&gt;BANKSEL GPIO&lt;br /&gt;clrf GPIO&lt;br /&gt;movlw 0x07&lt;br /&gt;movwf CMCON&lt;br /&gt;BANKSEL ANSEL&lt;br /&gt;CLRF ANSEL&lt;br /&gt;movlw 0x0c&lt;br /&gt;movwf TRISIO&lt;br /&gt;BANKSEL GPIO&lt;br /&gt;_endasm;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/*Rutina de Retardo*/&lt;br /&gt;void delay(int ret) {&lt;br /&gt;int r;&lt;br /&gt;for(r=0;r&lt;=ret;r++) { } } &lt;br /&gt;&lt;br /&gt;void main() {&lt;br /&gt; initPIC();&lt;br /&gt; while(1){&lt;br /&gt; GP5=1;&lt;br /&gt; delay(10000);&lt;br /&gt; GP5=0;&lt;br /&gt; delay(10000);&lt;br /&gt;}&lt;br /&gt;}  &lt;/pic12f675.h&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Lo que quería aprender hacerlo en C, pero le terminé metiendo ensamblador para la configuración de los puertos, no puedo negar mis origenes.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SiSwAVCzFcI/AAAAAAAAABw/tvUufyH2OYY/s1600-h/DellSS1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 250px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SiSwAVCzFcI/AAAAAAAAABw/tvUufyH2OYY/s400/DellSS1.png" alt="" id="BLOGGER_PHOTO_ID_5342588577663620546" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-647689128905970063?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/647689128905970063/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=647689128905970063' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/647689128905970063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/647689128905970063'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/06/mi-intento-de-aprender-sdcc-para-pics.html' title='Mi intento de aprender sdcc para PICs'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Nue6fu8xt9Q/SiSwAVCzFcI/AAAAAAAAABw/tvUufyH2OYY/s72-c/DellSS1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-1591397086755270566</id><published>2009-05-28T12:11:00.000-07:00</published><updated>2009-09-23T09:42:45.747-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='zv6130us'/><category scheme='http://www.blogger.com/atom/ns#' term='Xpress200M'/><category scheme='http://www.blogger.com/atom/ns#' term='mesa'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='ATI'/><title type='text'>Aceleración ATI Xpress Radeon 200M Jaunty</title><content type='html'>A partir de Jaunty la versión propietaria de los drivers de ATI dejaron de soportar algunas tarjetas, para los que necesiten tener mejor rendimiento que los controladores que vienen por default en Jaunty lo que se debe de hacer es recompilar mesa con el parche para radeon tal y como se muestra acontinuación:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1.- Instalamos todas las dependecias para poder compilar mesa.&lt;br /&gt;&lt;br /&gt;sudo apt-get install autoconf&lt;br /&gt;sudo apt-get build-dep mesa&lt;br /&gt;sudo apt-get install libxmu-dev libdrm-dev x11proto-dri2-dev libxi-dev&lt;br /&gt;&lt;br /&gt;2.- Descargamos las fuentes de mesa con el radeo-rewrite:&lt;br /&gt;&lt;br /&gt;git clone git://anongit.freedesktop.org/git/mesa/mesa&lt;br /&gt;cd mesa&lt;br /&gt;git branch radeon-rewrite origin/radeon-rewrite&lt;br /&gt;git checkout radeon-rewrite&lt;br /&gt;&lt;br /&gt;3.- Procedemos a ejecutar el siguiente comando:&lt;br /&gt;&lt;br /&gt;./autogen.sh --prefix=/usr --with-dri-drivers=radeon,r200,r300&lt;br /&gt;&lt;br /&gt;4.- Si no hubo ningún error, de dependencias, podemos hacer el conocido:&lt;br /&gt;&lt;br /&gt;make&lt;br /&gt;sudo make install&lt;br /&gt;&lt;br /&gt;Y tendremos el rendimiento de los drivers propietarios en Ubuntu 9.04&lt;br /&gt;semael@anaconda2:~/tmp/mesa$ glxinfo | grep render&lt;br /&gt;direct rendering: Yes&lt;br /&gt;OpenGL renderer string: Mesa DRI R300 20090101  NO-TCL&lt;br /&gt;semael@anaconda2:~/tmp/mesa$ glx&lt;br /&gt;glxdemo   glxgears  glxheads  glxinfo&lt;br /&gt;semael@anaconda2:~/tmp/mesa$ glxgears&lt;br /&gt;5097 frames in 5.0 seconds = 1019.280 FPS&lt;br /&gt;5789 frames in 5.0 seconds = 1157.639 FPS&lt;br /&gt;5767 frames in 5.0 seconds = 1153.326 FPS&lt;br /&gt;5794 frames in 5.0 seconds = 1158.684 FPS&lt;br /&gt;5799 frames in 5.0 seconds = 1159.756 FPS&lt;br /&gt;5750 frames in 5.0 seconds = 1149.966 FPS&lt;br /&gt;XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"&lt;br /&gt;after 107180 requests (65066 known processed) with 0 events remaining.&lt;br /&gt;semael@anaconda2:~/tmp/mesa$&lt;br /&gt;&lt;br /&gt;El rendimiento que me estaba dando antes de efectua este proceso:&lt;br /&gt;&lt;br /&gt;semael@anaconda2:~/tmp/mesa$ glxgears&lt;br /&gt;1057 frames in 5.0 seconds = 211.367 FPS&lt;br /&gt;1084 frames in 5.0 seconds = 216.691 FPS&lt;br /&gt;XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"&lt;br /&gt;after 8927 requests (41 known processed) with 0 events remaining.&lt;br /&gt;semael@anaconda2:~/tmp/mesa$&lt;br /&gt;&lt;br /&gt;Visto en: &lt;a href="http://www.phoronix.com/forums/showthread.php?t=16554"&gt;http://www.phoronix.com/forums/showthread.php?t=16554&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-1591397086755270566?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/1591397086755270566/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=1591397086755270566' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1591397086755270566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/1591397086755270566'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/05/aceleracion-ati-xpress-radeon-200m.html' title='Aceleración ATI Xpress Radeon 200M Jaunty'/><author><name>tskyW1lk</name><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-8786117032177741671.post-2990841570722740634</id><published>2009-05-17T11:33:00.000-07:00</published><updated>2009-05-17T14:25:58.884-07:00</updated><title type='text'>Nueva funcionalidad Termómetro</title><content type='html'>Al programa le he agregado la posibilidad de guardar las mediciones en una base de datos en mysql además de graficar el comportamiento de la temperatura a lo largo del día.&lt;br /&gt;&lt;br /&gt;Para ver el resultado puedes visitar &lt;a href="http://aarmagnac.no-ip.org:1540"&gt;aarmagnac.no-ip.org:1540&lt;/a&gt; .&lt;br /&gt;&lt;br /&gt;El proximo paso será hacer una pequeña red de sensores.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2990841570722740634?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2990841570722740634/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2990841570722740634' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2990841570722740634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2990841570722740634'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/05/nueva-funcionalidad-termometro.html' title='Nueva funcionalidad Termómetro'/><author><name>tskyW1lk</name><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-8786117032177741671.post-2305722019295212914</id><published>2009-03-09T11:34:00.000-07:00</published><updated>2009-03-09T11:39:46.703-07: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'>Montar directorios Remotos vía ssh</title><content type='html'>Suponiendo que tenemos un servidor ssh en la máquina remota y un usario al cual conectarnos procedemos a instalar el programa sshfs&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;sudo apt-get install sshfs&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Creamos el Directorio local donde montaremos el directorio remoto&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;mkdir DRemoto&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Y lo montamos de la siguiente forma:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;sshfs user@mipcdesktop:/home/user/ DRemoto&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;el user debe tener permisos sobre el directorio que deseamos montar&lt;br /&gt;&lt;br /&gt;para desmontarlo&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;sudo umount DRemoto&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2305722019295212914?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2305722019295212914/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2305722019295212914' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2305722019295212914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2305722019295212914'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/03/montar-directorios-remotos-via-ssh.html' title='Montar directorios Remotos vía ssh'/><author><name>tskyW1lk</name><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-8786117032177741671.post-3729266058058140050</id><published>2009-02-23T11:18:00.000-08:00</published><updated>2011-03-09T07:06:28.034-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='c++'/><category scheme='http://www.blogger.com/atom/ns#' term='octave'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='simulación'/><category scheme='http://www.blogger.com/atom/ns#' term='c'/><title type='text'>Hola Mundo con octave y c++</title><content type='html'>Requisitos:&lt;br /&gt;Tener instalado octave, octave-headers y build-essential&lt;br /&gt;&lt;br /&gt;En nuestro editor de texto predilecto (vim) escribimos lo siguiente&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#include &amp;lt;octave/oct.h&amp;gt;&lt;br /&gt;DEFUN_DLD(miHolaMundo, args, ,&lt;br /&gt;       "Sirve para imprimir un N Holas Mundo " )&lt;br /&gt;{&lt;br /&gt;unsigned int N = args(0).int_value(); //El argumento 0 lo convertimos a entero y&lt;br /&gt;//se lo almacenamos en N&lt;br /&gt;&lt;br /&gt;for(int i = 0; i&amp;lt;N;i++)&lt;br /&gt;octave_stdout&amp;lt;&amp;lt;"Hola Mundo"&amp;lt;&amp;lt;endl;&lt;br /&gt;&lt;br /&gt;return octave_value(0);&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;En la primera línea incluimos las cabeceras de octave y el la segunda definimos que nombre tendrá nuestra función. Guardamos el archivo con el mismo nombre de la función (miHolaMundo.cc) y compilamos&lt;br /&gt;&lt;br /&gt;mkoctfile miHolaMundo.cc&lt;br /&gt;&lt;br /&gt;Esto nos va a generar dos archivos:&lt;br /&gt;&lt;br /&gt;miHolaMundo.o  miHolaMundo.oct&lt;br /&gt;&lt;br /&gt;donde miHolaMundo.oct es la función que acabamos de hacer.&lt;br /&gt;&lt;br /&gt;Inicamos el octave y probamos:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;octave:1&gt; help miHolaMundo&lt;br /&gt;Sirve para imprimir un Hola Mundo /home/s/proyectos/c/octave/miHolaMundo.oct&lt;br /&gt;&lt;br /&gt;Additional help for built-in functions and operators is&lt;br /&gt;available in the on-line version of the manual.  Use the command&lt;br /&gt;`doc &lt;topic&gt;' to search the manual index.&lt;br /&gt;&lt;br /&gt;Help and information about Octave is also available on the WWW&lt;br /&gt;at http://www.octave.org and via the help@octave.org&lt;br /&gt;mailing list.&lt;br /&gt;octave:2&gt;&lt;br /&gt;octave:2&gt; miHolaMundo(1)&lt;br /&gt;Hola Mundo&lt;br /&gt;ans = 0&lt;br /&gt;octave:3&gt; miHolaMundo(4)&lt;br /&gt;Hola Mundo&lt;br /&gt;Hola Mundo&lt;br /&gt;Hola Mundo&lt;br /&gt;Hola Mundo&lt;br /&gt;ans = 0&lt;br /&gt;octave:4&gt;&lt;/topic&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El que sigue es parte del código para probar una Memoria RAM que esta dentro de un FPGA, lo recorte sólo para mostrar, como se usan Complejos y como se retorna a octave una o más variables. Esta función tiene como parametros de entrada un Vector Complejo, tamaño de la palabra y tamaño de la parte fraccional para convertir a punto fijo los valores del vector comlejo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#include &amp;lt;octave/oct.h&amp;gt;&lt;br /&gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;#include &amp;lt;fstream&amp;gt;&lt;br /&gt;using namespace std;&lt;br /&gt;#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;#include &amp;lt;math.h&amp;gt;&lt;br /&gt;#include &amp;lt;oct-rand.h&amp;gt;&lt;br /&gt;#include &amp;lt;oct-cmplx.h&amp;gt;&lt;br /&gt;&lt;br /&gt;//inline void dec2bin(unsigned int a,unsigned int width_word,char * cadena);&lt;br /&gt;inline int to_fixed(double data_in, unsigned int QW,unsigned int QF);&lt;br /&gt;inline double f2d(int Dfixed,unsigned QF);&lt;br /&gt;&lt;br /&gt;DEFUN_DLD (MemTest,args, ,&lt;br /&gt;     "Probar RAM FPGA via RS232\n")&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;ComplexColumnVector Data = args(0).complex_column_vector_value();&lt;br /&gt;int len = Data.length();&lt;br /&gt;ComplexColumnVector DataF=Data;&lt;br /&gt;ComplexColumnVector DataR=Data;&lt;br /&gt;unsigned int QW=args(1).int_value();&lt;br /&gt;unsigned int QF=args(2).int_value();&lt;br /&gt;&lt;br /&gt;for (int i = 0; i&amp;lt;len;i++) {&lt;br /&gt;real(DataF(i))=f2d(to_fixed(real(Data(i)),QW,QF),QF);&lt;br /&gt;imag(DataF(i))=f2d(to_fixed(imag(Data(i)),QW,QF),QF);&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;octave_value_list retval;&lt;br /&gt;&lt;br /&gt;retval(0) = octave_value(DataF);&lt;br /&gt;retval(1) = octave_value(DataR);&lt;br /&gt;return retval;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;inline int to_fixed(double data_in, unsigned int QW,unsigned int QF)&lt;br /&gt;{&lt;br /&gt;int x_0=0,j=1;&lt;br /&gt;//we need to convert to double to QW and QF because oct.h only have pow(double,double)&lt;br /&gt;if(data_in&amp;lt;0){ int x_0=pow(2.0,double(QW)); };&lt;br /&gt;return int(x_0+pow(2.0,double(QF))*data_in);&lt;br /&gt;}&lt;br /&gt;inline double f2d(int Dfixed,unsigned QF)&lt;br /&gt;{&lt;br /&gt;  return double(Dfixed)/(pow(2.0,double(QF)));&lt;br /&gt;}&lt;br /&gt;                &lt;br /&gt;&lt;/code&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:100%;"&gt;Compilamos con mkoctfile y probamos&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;octave:1&gt; x=randn(4,1)+j*randn(4,1)&lt;br /&gt;x =&lt;br /&gt;&lt;br /&gt; -0.80972 + 3.54049i&lt;br /&gt; -0.38686 - 0.35778i&lt;br /&gt; -0.45699 + 0.05577i&lt;br /&gt; -0.48280 + 1.01243i&lt;br /&gt;&lt;br /&gt;octave:2&gt; MemTest(x,13,10)&lt;br /&gt;ans =&lt;br /&gt;&lt;br /&gt; -0.80957 + 3.54004i&lt;br /&gt; -0.38672 - 0.35742i&lt;br /&gt; -0.45605 + 0.05566i&lt;br /&gt; -0.48242 + 1.01172i&lt;br /&gt;&lt;br /&gt;octave:3&gt; [y z]=MemTest(x,13,10)&lt;br /&gt;y =&lt;br /&gt;&lt;br /&gt; -0.80957 + 3.54004i&lt;br /&gt; -0.38672 - 0.35742i&lt;br /&gt; -0.45605 + 0.05566i&lt;br /&gt; -0.48242 + 1.01172i&lt;br /&gt;&lt;br /&gt;z =&lt;br /&gt;&lt;br /&gt; -0.80972 + 3.54049i&lt;br /&gt; -0.38686 - 0.35778i&lt;br /&gt; -0.45699 + 0.05577i&lt;br /&gt; -0.48280 + 1.01243i&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Como se puede ver, el primer resultado que nos regresa nuestra función es equivalente en punto fijo de 13 bits de los cuales 10 bits son para la parte fraccional y 1 para el signo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-3729266058058140050?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/3729266058058140050/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=3729266058058140050' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/3729266058058140050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/3729266058058140050'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/02/hola-mundo-con-octave-y-c.html' title='Hola Mundo con octave y c++'/><author><name>tskyW1lk</name><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-8786117032177741671.post-6924575823767065621</id><published>2009-02-16T18:57:00.000-08:00</published><updated>2009-02-16T19:11:47.383-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Escritorio'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Mi Escritorio Ubuntu en la Acer One</title><content type='html'>Por fin tengo este juguetito para divertirme un rato y este es mi ubuntu con el compiz&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SZooAlJpYUI/AAAAAAAAABo/-2OG1idf64A/s1600-h/Ubuntu01.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 234px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SZooAlJpYUI/AAAAAAAAABo/-2OG1idf64A/s400/Ubuntu01.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5303595501619863874" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Acer One:&lt;br /&gt;Intel(R) Atom(TM) N270 a 1.6 Ghz&lt;br /&gt;RAM: 1Gb&lt;br /&gt;HD: 120 Gb&lt;br /&gt;&lt;br /&gt;En el fondo se ve el Firefox, el gimp y la terminal ejecutando el comando top&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-6924575823767065621?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/6924575823767065621/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=6924575823767065621' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/6924575823767065621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/6924575823767065621'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2009/02/mi-escritorio-ubuntu-en-la-acer-one.html' title='Mi Escritorio Ubuntu en la Acer One'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Nue6fu8xt9Q/SZooAlJpYUI/AAAAAAAAABo/-2OG1idf64A/s72-c/Ubuntu01.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-4526374650630728713</id><published>2008-08-12T22:32:00.000-07:00</published><updated>2009-11-21T22:07:50.283-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microchip'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroladores'/><category scheme='http://www.blogger.com/atom/ns#' term='PicKit2'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='PicoBlaze'/><title type='text'>PICKit2 en Kubuntu Hardy</title><content type='html'>Requeriremos los siguientes programas:&lt;br /&gt;1.- pk2cmd (http://home.pacbell.net/theposts/picmicro/pk2cmd-0.9.tar.gz)&lt;br /&gt;2.- Kpk2cmd – GUI para pk2cmd (http://www.cannasoftware.com/downloads/kpk2cmd-Ubuntu-1.0.2.tar.gz)&lt;br /&gt;&lt;br /&gt;Abrimos una terminal, en la cual navegaremos al directorio donde descargamos los programas y descomprimimos el archivo pk2cmd-0.9.tar.gz&lt;br /&gt;&lt;br /&gt;~$ cd Desktop/PicKit2/&lt;br /&gt;~/Desktop/PicKit2$ tar -xvzf pk2cmd-0.9.tar.gz&lt;br /&gt;&lt;br /&gt;Se creará una carpeta llamada pk2cmd-0.9 a la cual entraremos y ejecutaremos make linux. Si no hubo errores entonces procederemos a ejecutar sudo make install&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjSmoFwUtI/AAAAAAAAAJQ/jtS7J05lVdA/s1600/TPK2Linux1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 259px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjSmoFwUtI/AAAAAAAAAJQ/jtS7J05lVdA/s400/TPK2Linux1.png" alt="" id="BLOGGER_PHOTO_ID_5406802913696699090" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 1. Terminal en el directorio  ~/Desktop/PicKit2/pk2cmd-0.9&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SwjSm9RKdlI/AAAAAAAAAJY/cSoNEbeL7PI/s1600/TPK2Linux3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 259px;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SwjSm9RKdlI/AAAAAAAAAJY/cSoNEbeL7PI/s400/TPK2Linux3.png" alt="" id="BLOGGER_PHOTO_ID_5406802919381694034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 2. Ejecutando sudo make install&lt;br /&gt;&lt;br /&gt;Enseguida regresamos al directorio anterior y descomprimimos kpk2cmd-Ubuntu-1.0.2.tar.gz&lt;br /&gt;&lt;br /&gt;~/Desktop/PicKit2$ tar -xvzf kpk2cmd-Ubuntu-1.0.2.tar.gz&lt;br /&gt;&lt;br /&gt;Para compilar este programa necesitaremos instalar los siguientes paquetes:&lt;br /&gt;&lt;br /&gt;sudo apt-get install qt3-dev-tools&lt;br /&gt;sudo apt-get install libqt3-headers libqt3-mt-dev qt3-qtconfig libqt3-compat-headers&lt;br /&gt;sudo apt-get install kdebase-dev kde-devel&lt;br /&gt;&lt;br /&gt;Terminada la instalación nos movemos al directorio kpk2cmd-1.0.2/ y ejecutamos&lt;br /&gt;&lt;br /&gt;~/Desktop/PicKit2/kpk2cmd-1.0.2 $ make&lt;br /&gt;&lt;br /&gt;Al finalizar de compilar se habrá creado dentro de la carpeta bin el ejecutable kpk2cmd el cual copiaremos al directorio /usr/bin&lt;br /&gt;&lt;br /&gt;~/Desktop/PicKit2/kpk2cmd-1.0.2 $ sudo cp bin/kpk2cmd /usr/bin&lt;br /&gt;&lt;br /&gt;Enseguida conectaremos el PICKit2 al PC. Si ejecutamos lsusb veremos a su salida algo parecido a lo que muestra la figura 3.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjSnE2X7rI/AAAAAAAAAJg/FnbaOXNLzuk/s1600/TPK2Linux11.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 259px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjSnE2X7rI/AAAAAAAAAJg/FnbaOXNLzuk/s400/TPK2Linux11.png" alt="" id="BLOGGER_PHOTO_ID_5406802921416814258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 3. lusb nos muestra los dispositivos usb conectados actualmente.&lt;br /&gt;&lt;br /&gt;En la misma termina escribimos el comando kpk2cmd y enseguida de presionar la tecla ENTER nos aparecera un GUI como el que se ve en la figura 4. No tiene auto detección por lo que tenemos que seleccionar el microcontrolador en (1).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SwjSncFXaTI/AAAAAAAAAJo/iJyOHT1998U/s1600/TPK2Linux5.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 293px; height: 400px;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SwjSncFXaTI/AAAAAAAAAJo/iJyOHT1998U/s400/TPK2Linux5.png" alt="" id="BLOGGER_PHOTO_ID_5406802927653710130" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 4. kpk2cmd&lt;br /&gt;&lt;br /&gt;Al presionar “Program Chip” (2) nos aparecerá un dialogo donde elegiremos nuestro .HEX (figura 5). En el caso que queramos leer el contenido del PIC (3), nos preguntará donde queremos guardarlo para su posterior lectura(figura 6)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjSnu1xe8I/AAAAAAAAAJw/fCf49lsmJl0/s1600/TPK2Linux6.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 218px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjSnu1xe8I/AAAAAAAAAJw/fCf49lsmJl0/s400/TPK2Linux6.png" alt="" id="BLOGGER_PHOTO_ID_5406802932688583618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 5. Dialogo para elegir el programa para grabar en el PIC.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjUwavJ3JI/AAAAAAAAAKI/BDzG1KjCttI/s1600/TPK2Linux7.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 218px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjUwavJ3JI/AAAAAAAAAKI/BDzG1KjCttI/s400/TPK2Linux7.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5406805280934190226" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 6. Dialogo para elegir la localización para guardar el HEX.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjUwXK1XwI/AAAAAAAAAKA/hUqreTfgcmQ/s1600/TPK2Linux8.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 247px;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjUwXK1XwI/AAAAAAAAAKA/hUqreTfgcmQ/s400/TPK2Linux8.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5406805279976546050" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 7. Contenido del archivo lectura.hex.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjUwPQfR4I/AAAAAAAAAJ4/MgsVzOwwoYc/s1600/TPK2Linux10.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 297px;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SwjUwPQfR4I/AAAAAAAAAJ4/MgsVzOwwoYc/s400/TPK2Linux10.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5406805277852780418" /&gt;&lt;/a&gt;&lt;br /&gt;Figura 8. Por si no nos la creemos que es el contenido del PIC12F683.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-4526374650630728713?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/4526374650630728713/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=4526374650630728713' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4526374650630728713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4526374650630728713'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/08/pickit2-en-kubuntu-hardy.html' title='PICKit2 en Kubuntu Hardy'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Nue6fu8xt9Q/SwjSmoFwUtI/AAAAAAAAAJQ/jtS7J05lVdA/s72-c/TPK2Linux1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-4174603206894039857</id><published>2008-08-08T18:37:00.000-07:00</published><updated>2008-08-10T12:12:53.468-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><title type='text'>Reparando una Tarjeta de Red PCMCIA</title><content type='html'>Los materiales necesarios para realizar esta operación son:&lt;br /&gt;- Soldadura&lt;br /&gt;- Cautín&lt;br /&gt;- Pasta para soldar&lt;br /&gt;- Multímetro&lt;br /&gt;- Juego de desarmadores para relojero&lt;br /&gt;- Tarjeta PCMCIA&lt;br /&gt;- Y no tener pasta para comprar una nueva (sobre todo esta última)&lt;br /&gt;&lt;br /&gt;Primero procederemos a abrir nuestra tarjeta, usando los desarmadores, de tal forma que dejemos la placa al descubierto, tal y como se muestra en la siguiente figura.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SJz_7fiAg7I/AAAAAAAAAAk/oY9XAU2LYr8/s1600-h/p8070093.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SJz_7fiAg7I/AAAAAAAAAAk/oY9XAU2LYr8/s400/p8070093.jpg" alt="" id="BLOGGER_PHOTO_ID_5232338264639177650" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: center;"&gt;Tarjeta Desarmada&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SJ0B-qyz6lI/AAAAAAAAAAs/hfuAFQMNI_Q/s1600-h/p8070087.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SJ0B-qyz6lI/AAAAAAAAAAs/hfuAFQMNI_Q/s400/p8070087.jpg" alt="" id="BLOGGER_PHOTO_ID_5232340518225308242" border="0" /&gt;&lt;/a&gt;Aprovechando y cambiandole los leds&lt;br /&gt;&lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;Ya que la tenemos despedazada procederemos a verificar cual puede ser el posible problema. El problema detectado en esta tarjeta es que todos los pines de RJ45 estaba desoldados de la placa.&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SJ0C3uOOOeI/AAAAAAAAAA0/aGmNToflufM/s1600-h/p8070088.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_Nue6fu8xt9Q/SJ0C3uOOOeI/AAAAAAAAAA0/aGmNToflufM/s400/p8070088.jpg" alt="" id="BLOGGER_PHOTO_ID_5232341498398128610" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; text-align: center;"&gt;Aquí se muestra cuales son los pines desoldados&lt;/p&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;Ya identificado el problema procedemos con cautela y sin miedo a meter el cautín. Como los pines de esta tarjeta están soldados de manera superficial, es bueno suponer que queda algo de soldadura reusable en las pistas, que por supuesto no alcanzamos a ver porque están un poco metidas.&lt;br /&gt;&lt;br /&gt;Con un desarmador cogemos un poco de pasta para soldar y embarramos todos los pines.&lt;br /&gt;&lt;br /&gt;Ya embarrados y con nuestro cautín bien caliente lo pasamos por todos y cada uno de los pines para calentarlos y provocar que la soldadura de la pista agarre de nuevo la patita.&lt;br /&gt;&lt;br /&gt;Ya que le dimos la pasada, agarramos el multímetro para verificar la continuidad, en caso de que no hayan quedado soldados el multímetro mostrara circuito abierto.&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SJ0DtY2azbI/AAAAAAAAAA8/phvvT1KdaKU/s1600-h/p8070098.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SJ0DtY2azbI/AAAAAAAAAA8/phvvT1KdaKU/s400/p8070098.jpg" alt="" id="BLOGGER_PHOTO_ID_5232342420374080946" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Multímetro: Seleccionamos la opción para comprobar diodos y continuidad. Si al colocar las puntas de prueba entre dos puntos escuchamos un pitido entonces quiere decir que hay continuidad. Útil para verificar que los pines estén soldados.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;En el caso que hallan quedado pines sin soldar, colocaremos un poco de soldadura (con un poco me refiero nada más a la puntita) en el cautín y se lo pasamos por los pines que no quedaron soldados. Verificamos de nuevo con el multímetro.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;br /&gt;En el caso que queden sin soldar repetimos el paso anterior, de lo contrario ensamblamos de nuevo la tarjeta, y procedemos a probar.&lt;br /&gt;&lt;br /&gt;Colocamos la tarjeta en posición y le enchufamos el cable, encendemos la laptop y procedemos a rezar.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SJ0F5uG9xPI/AAAAAAAAABE/h5MEOoBlqnk/s1600-h/p8070100.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_Nue6fu8xt9Q/SJ0F5uG9xPI/AAAAAAAAABE/h5MEOoBlqnk/s400/p8070100.jpg" alt="" id="BLOGGER_PHOTO_ID_5232344831262311666" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: center;"&gt;Máquina de pruebas (mejor dicho víctima)&lt;br /&gt;&lt;/div&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;Si nuestros rezos fueron escuchados veremos que nuestra laptop de nuevo está en línea y dispuesta a descargarnos cuanta cosa se nos ocurra (Ver figura siguiente).&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SJ0IPucnbpI/AAAAAAAAABM/0PtfUMcjJzw/s1600-h/resultado.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Nue6fu8xt9Q/SJ0IPucnbpI/AAAAAAAAABM/0PtfUMcjJzw/s400/resultado.png" alt="" id="BLOGGER_PHOTO_ID_5232347408333500050" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SJ0IV0Uf3dI/AAAAAAAAABU/OEE72ASvVNo/s1600-h/resultados2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_Nue6fu8xt9Q/SJ0IV0Uf3dI/AAAAAAAAABU/OEE72ASvVNo/s400/resultados2.png" alt="" id="BLOGGER_PHOTO_ID_5232347512989277650" border="0" /&gt;&lt;/a&gt;Hago un ping para corroborar que no estoy soñando&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/8786117032177741671-4174603206894039857?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/4174603206894039857/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=4174603206894039857' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4174603206894039857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4174603206894039857'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/08/reparando-una-tarjeta-de-red-pcmcia.html' title='Reparando una Tarjeta de Red PCMCIA'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Nue6fu8xt9Q/SJz_7fiAg7I/AAAAAAAAAAk/oY9XAU2LYr8/s72-c/p8070093.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-7808031078583911920</id><published>2008-05-02T01:25:00.000-07:00</published><updated>2008-05-02T01:27:05.794-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pruebas servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Programación'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Termómetro</title><content type='html'>Ahora en &lt;a href="http://aarmagnac.no-ip.org:1540/"&gt;aarmagnac.no-ip.org:1540&lt;/a&gt; tengo un termometro realizado con un PIC 12f683 y un LM35 conectado al PC por medio del puerto serie. Cada 5 minutos se actualiza.&lt;br /&gt;&lt;br /&gt;El programa del PIC lo hice para probar la programación en C de estos microcontroladores ya que siempre los había programado en ensamblador.&lt;br /&gt;&lt;br /&gt;El programa de la PC está realizado en C++ el cual es ejecutado por medio del cron cada 5 minutos, generandome la página web que se puede ver en la página.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-7808031078583911920?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/7808031078583911920/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=7808031078583911920' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/7808031078583911920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/7808031078583911920'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/05/termmetro.html' title='Termómetro'/><author><name>tskyW1lk</name><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-8786117032177741671.post-8546947821707632493</id><published>2008-02-01T10:04:00.000-08:00</published><updated>2008-02-01T11:17:34.252-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='GHDL'/><category scheme='http://www.blogger.com/atom/ns#' term='Xilinx'/><category scheme='http://www.blogger.com/atom/ns#' term='vcomponents'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='simulación'/><category scheme='http://www.blogger.com/atom/ns#' term='Programación'/><category scheme='http://www.blogger.com/atom/ns#' term='unisim'/><category scheme='http://www.blogger.com/atom/ns#' term='VHDL'/><category scheme='http://www.blogger.com/atom/ns#' term='ISEWebPACK'/><title type='text'>GHDL con las librerías UNISIM de Xilinx</title><content type='html'>¿Porqué usar ghdl?. En primer lugar surgió de la necesidad de poder realizar simulaciones de mi código de VHDL en linux debido a que el simulador del ISEWebPACK 9.1 y 9.2 de &lt;a href="http://www.xilinx.com/"&gt;Xilinx&lt;/a&gt; no se digna en trabajar, siempre me manda el error &lt;a href="http://www.xilinx.com/support/answers/24067.htm"&gt;607&lt;/a&gt; el cual si no es mi culpa, como lo puedo demostrar, pues fácilmente, abrí el ISE e inicié un nuevo proyecto pero en esta ocasión que fueran esquemáticos y no vhdl, hice una "and" y lo traté de simular y me arrojó el mismo error. Conclusión no es error mío es de la herramienta, ellos mismos está diciendo que no saben como construir una "and", jejejeje.&lt;br /&gt;&lt;br /&gt;En segundo lugar, tenía que utilizar las librerías unisim:&lt;br /&gt;&lt;br /&gt;Library UNISIM;&lt;br /&gt;use UNISIM.vcomponents.all;&lt;br /&gt;&lt;br /&gt;Voy a suponer que tenemos instalado en nuestro sistema alguna de las dos versiones anteriores del ISEWebPACK.&lt;br /&gt;&lt;br /&gt;Desde la consola primero nos creamos una carpeta para ubicar nuestro código vhdl y dentro de ella crearemos una carpeta llamada unisim.&lt;br /&gt;&lt;br /&gt;$ mkdir vhdl&lt;br /&gt;$ mkdir vhdl/unisim&lt;br /&gt;&lt;br /&gt;Ahora copiamos el contenido de la carpeta vhdl/src/unisims en el directorio del ISEWebPack, que en mi caso se encuentra en /opt/Xilinx92i/vhdl/src/unisims/, al directorio unisim que acabamos de crear.&lt;br /&gt;&lt;br /&gt;$ cp /opt/Xilinx92i/vhdl/src/unisims/* vhdl/unisim/&lt;br /&gt;&lt;br /&gt;Ahora nos movemos a la carpeta vhdl/unisim/&lt;br /&gt;&lt;br /&gt;$ cd vhdl/unism&lt;br /&gt;&lt;br /&gt;y compilamos estas librerías con&lt;br /&gt;&lt;br /&gt;~/vhdl/unisim$ ghdl -a --work=unisim --ieee=synopsys -fexplicit unisim_VCOMP.vhd&lt;br /&gt;~/vhdl/unisim$ ghdl -a --work=unisim --ieee=synopsys -fexplicit unisim_SMODEL.vhd&lt;br /&gt;~/vhdl/unisim$ ghdl -a --work=unisim --ieee=synopsys -fexplicit unisim_VPKG.vhd&lt;br /&gt;&lt;br /&gt;~/vhdl/unisim$ ghdl -a --work=unisim --ieee=synopsys -fexplicit --warn-no-vital-generic unisim_VITAL.vhd&lt;br /&gt;unisim_VITAL.vhd:150533:18:warning: universal integer bound must be numeric literal or attribute&lt;br /&gt;unisim_VITAL.vhd:176564:57: variable "write_a_write_b" is not visible here&lt;br /&gt;unisim_VITAL.vhd:176565:57: variable "read_a_write_b" is not visible here&lt;br /&gt;unisim_VITAL.vhd:176566:57: variable "write_a_read_b" is not visible here&lt;br /&gt;unisim_VITAL.vhd:176567:57: variable "write_b_write_a" is not visible here&lt;br /&gt;unisim_VITAL.vhd:176568:57: variable "read_b_write_a" is not visible here&lt;br /&gt;unisim_VITAL.vhd:176569:57: variable "write_b_read_a" is not visible here&lt;br /&gt;/usr/lib/ghdl/bin/ghdl: compilation error&lt;br /&gt;Observamos que nos manda un error, pero no es de preocuparse es solo cuestion de abrir el archivo unisim_VITAL.vhd y comentar las líneas que nos indica (176564,176565,176566,176567,176568,176569).&lt;br /&gt;Las líneas en cuestion son:&lt;br /&gt;  variable Write_A_Write_B : memory_collision_type := Write_A_Write_B;&lt;br /&gt;  variable Read_A_Write_B  : memory_collision_type := Read_A_Write_B;&lt;br /&gt;  variable Write_A_Read_B  : memory_collision_type := Write_A_Read_B;&lt;br /&gt;  variable Write_B_Write_A : memory_collision_type := Write_B_Write_A;&lt;br /&gt;  variable Read_B_Write_A  : memory_collision_type := Read_B_Write_A;&lt;br /&gt;  variable Write_B_Read_A  : memory_collision_type := Write_B_Read_A;&lt;br /&gt;&lt;br /&gt;En este punto si volvieramos a tratar de compilar nos arrojaría el mismo error sólo que en líneas distintas.&lt;br /&gt;&lt;br /&gt;unisim_VITAL.vhd:188630:57: variable "write_a_write_b" is not visible here&lt;br /&gt;unisim_VITAL.vhd:188631:57: variable "read_a_write_b" is not visible here&lt;br /&gt;unisim_VITAL.vhd:188632:57: variable "write_a_read_b" is not visible here&lt;br /&gt;unisim_VITAL.vhd:188633:57: variable "write_b_write_a" is not visible here&lt;br /&gt;unisim_VITAL.vhd:188634:57: variable "read_b_write_a" is not visible here&lt;br /&gt;unisim_VITAL.vhd:188635:57: variable "write_b_read_a" is not visible here&lt;br /&gt;&lt;br /&gt;Por lo tanto sería buena idea comentarlas también, ya sea que busquemos en el archivo por "variable Write_A_Write_B : memory_collision_type := Write_A_Write_B;" , comentar esta línea y las subsecuentes o movernos hasta la línea indicada que sería la 188630 y comentarlas.&lt;br /&gt;&lt;br /&gt;Hecho lo anterior volvemos a compilar con:&lt;br /&gt;ghdl -a --work=unisim --ieee=synopsys -fexplicit --warn-no-vital-generic unisim_VITAL.vhd&lt;br /&gt;&lt;br /&gt;Ya compilado nos retachamos a la carpeta vhdl ($ cd ..) para empezar a realizar nuestras pruebas, en donde compilaremos nuestros proyectos con:&lt;br /&gt;&lt;br /&gt;ghdl -a --ieee=synopsys -Punisim -fexplicit&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-8546947821707632493?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/8546947821707632493/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=8546947821707632493' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8546947821707632493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/8546947821707632493'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/02/ghdl-con-los-unisim-de-xilinx.html' title='GHDL con las librerías UNISIM de Xilinx'/><author><name>tskyW1lk</name><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-8786117032177741671.post-251213774293781794</id><published>2008-01-30T16:00:00.000-08:00</published><updated>2010-05-10T20:06:18.173-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Humor'/><title type='text'>La Cigüeña: Detrás del Mito.</title><content type='html'>&lt;span style="font-weight: bold;"&gt;(Estado al escribir: bloqueo mental   crónico)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;De casualidad no se han puesto a pensar el   ¿porqué surgió la teoría de la cigüeña? y que consecuencias trajo a   nuestra sociedad.&lt;br /&gt;&lt;br /&gt;Según dicha teoría los bebes son traídos por   una cigüeña. ¿Que verdad se oculta? ¿Porqué no elegir otro animal como   el perro salchicha o un camello?&lt;br /&gt;&lt;br /&gt;Para responder la segunda   pregunta he consultado a un grupo de expertos, que me mostraron con datos experimentales y estadístios, que, aunque esten presentes diversas semejanzas morfológicas ,el   perro salchica no es una de las especies ideales para hacer la  analogía  (conste que no lo puse por separado) y que el uso del nombre  "perro  salchicha" no por ser obvio y sugestivo representa la total  realidad.&lt;br /&gt;&lt;br /&gt;Entonces,  ¿porqué no elegir un camello?. Pues todos  sabemos que tiene dos  jorobas, cuello largo y escupe. La razón es muy  obvia: Sería imposible  explicarle a un niño que fue escupido por un  camello, ¿o no?, además de  ser algo asqueroso y grotesco, nos bajaría  la autoestima.&lt;br /&gt;&lt;br /&gt;Por lo  tanto el grupo de expertos y yo creemos  que la especie elegida (La  Cigüeña) fue la mejor  opción por:&lt;br /&gt;&lt;br /&gt;1.-  Tiene un pico largo que  termina en punta.&lt;br /&gt;&lt;br /&gt;2.- El color.&lt;br /&gt;&lt;br /&gt;3.-  Puede cargar el peso  de un bebé, lo que representa el peso de la  responsabilidad.&lt;br /&gt;&lt;br /&gt;4.- Y  que por lógica siempre hay un pajaro  metido en eso y revoloteando.&lt;br /&gt;&lt;br /&gt;Pero  con esta teoría surgio un  problema. Se preguntarán cuál es el problema:  Muchas madres solteras!&lt;br /&gt;&lt;br /&gt;Si,  si, si, como lo escucharon muchas  madres solteras.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Demostración:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tomando  como  cierto que Los pajaros vuelan y que existen una falta de   responsabilidad generalizada (pues ni modo somos hombres que le vamos a   hacer no nos gustan mucho las responsabilidades), y que hombre lo   podemos substituir por el punto 1 y 4.&lt;br /&gt;Sabemos que:&lt;br /&gt;&lt;br /&gt;hombre+mujer=bebé&lt;br /&gt;&lt;br /&gt;y&lt;br /&gt;&lt;br /&gt;hombre+mujer=1+4+mujer=bebé&lt;br /&gt;&lt;br /&gt;Pero   bebé=responsabilidad&lt;br /&gt;&lt;br /&gt;entonces&lt;br /&gt;&lt;br /&gt;1+4+mujer=responsabilidad&lt;br /&gt;&lt;br /&gt;responsabilidad=1/irresponsabilidad&lt;br /&gt;&lt;br /&gt;responsabilidad*irresponsabilidad=1&lt;br /&gt;&lt;br /&gt;responsabilidad*irresponsabilidad+4+mujer=responsabilidad&lt;br /&gt;4+mujer=responsabilidad(1-irresponsabilidad)&lt;br /&gt;&lt;br /&gt;Pero   sabemos que si al punto 1 le quitamos la irresponsabilidad, el que   posea 1 ,va a ser una persona responsable con su manejo y uso, por lo   tanto:&lt;br /&gt;&lt;br /&gt;4+mujer=responsabilidad^2;&lt;br /&gt;&lt;br /&gt;mujer=responsabilidad^2-4,  &lt;br /&gt;&lt;br /&gt;donde responsabilidad sólo puede tomar valores positivos&lt;br /&gt;&lt;br /&gt;El   significado de la última ecucación es que la mujer es responsable al   cuadrado, pero que existe la tentación negativa 4 (Pájaro metido y   revoloteando), pero cuyo efecto se va minimizando cuando&lt;br /&gt;&lt;br /&gt;resposabilidad&gt;2&lt;br /&gt;&lt;br /&gt;Pero   que en caso de que&lt;br /&gt;&lt;br /&gt;responsabilidad&lt;2  la responsabilidad  se  ve eclipsada por la lujuria.&lt;br /&gt;&lt;br /&gt;En el remoto caso en el que el   valor de la responsabilidad tienda a 2 llegamos a un punto  donde  mujer  va a tender a cero, siendo el punto crítico cuando responsabilidad=2.&lt;br /&gt;&lt;br /&gt;Interpretandolo  para los no iniciados,  representa que de mujer no tiene nada, osea  cero, pero aun así, este  problema tiene una solución real, y una gran  cantidad en el campo de los  imaginarios, las cuales son relativas al  punto de vista del observador.&lt;br /&gt;&lt;br /&gt;Estas  soluciones imaginarias  esta representadas por&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;i&lt;/span&gt;*x,&lt;br /&gt;&lt;br /&gt;donde   el valor de x va a ser relativo al observador (I, You, He, She, We,   You, They).   Siendo&lt;br /&gt;&lt;br /&gt;x&gt;0  -&gt; care&lt;br /&gt;x&lt;0&gt; don't,   doesn't care&lt;br /&gt;x=0 -&gt; Tiene dos interpretaciones: Punto de   indesición o Punto de conocimiento previo, pero puede recibir distintos   nombres dependiendo del observador.&lt;br /&gt;&lt;br /&gt;Por si no se han dado  cuenta:  ¿Dónde quedó el hombre en la ecuación?&lt;br /&gt;&lt;br /&gt;La respuesta es  muy  simple: Tomando en cuenta que los pajaros vuelan pues el hombre  hizo lo  suyo y voló.&lt;br /&gt;&lt;br /&gt;Conclusión:&lt;br /&gt;- El aumento en los casos de  madres  solteras es debido en su mayor parte a que, subliminalmente,  con la  teoría de la cigüeña, nuestra forma de pensar e  irresponsabilidad  salieron a flote. En la realización de esta teoría  nunca, pero nunca,  tomaron en cuenta de que las cigüeñas vuelan.&lt;br /&gt;-  Hubiera sido mejor la  teoría del camello y de esa forma nos habrían  bajado la autoestima en  vez de hacernos más irresponsables.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-251213774293781794?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/251213774293781794/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=251213774293781794' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/251213774293781794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/251213774293781794'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/01/la-cigea-detrs-del-mito.html' title='La Cigüeña: Detrás del Mito.'/><author><name>tskyW1lk</name><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-8786117032177741671.post-7979262029958904809</id><published>2008-01-30T15:08:00.000-08:00</published><updated>2008-01-30T15:11:44.554-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='PCTel'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='Modem'/><title type='text'>Instalación de un winmodem pctel en ubuntu gusty</title><content type='html'>&lt;div class="entry"&gt;     &lt;p&gt;Pues a altas horas de la noche se me ocurrió probar que tal era la configuración de mi winmodem en Linux, ya que de hace tiempo me acordaba de que era un poco tortuoso, aunque al final gane experiencia y para poder instalarlo sin problemas. La primera vez que lo instalé fue en un Mandrake 8.0, y así me fuí de versión en versión hasta la 10.0 ya que después no tuve la necesidad de volverlo a instalar porque ahora contabamos con internet de banda ancha (yupi!!!!!).&lt;/p&gt; &lt;p&gt;Pero como a eso de la 1:30 am me pregunté si sería igual la forma de instalación o no. Me di a la tarea de buscarlo de nuevo en internet tal y como lo hacia antes (”san google”). Di rápidamente com &lt;a href="http://linmodems.technion.ac.il/pctel-linux/welcome.html"&gt;http://linmodems.technion.ac.il/pctel-linux/welcome.html&lt;/a&gt; y que me bajo la última versión que tienen del &lt;a href="http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-8.tar.gz"&gt;driver&lt;/a&gt; para el kernel 2.6.22.&lt;/p&gt; &lt;p&gt;&lt;span id="more-9"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;Descargado me di a la tarea de hacer un lspci para ver como me identificaba mi modem.&lt;/p&gt; &lt;p&gt;00:0d.1 Communication controller: C-Media Electronics Inc CM8738 (rev 10)&lt;/p&gt; &lt;p&gt;Enseguida descomprimí el driver:&lt;/p&gt; &lt;pre&gt;$tar -xvzf pctel-0.9.7-9-rht-8.tar.gz&lt;/pre&gt; &lt;pre&gt;$cd  cd pctel-0.9.7-9-rht-8/&lt;/pre&gt; &lt;p&gt;le doy un ls para ver que hay el el directorio:&lt;/p&gt; &lt;pre&gt;$ ls&lt;br /&gt;ChangeLog  driver  FAQ  README  setup  src&lt;/pre&gt; &lt;p&gt;Y me veo en la imperiosa necesidad de teclear&lt;/p&gt; &lt;pre&gt;$sudo ./setup&lt;/pre&gt; &lt;p&gt;a lo cual alegremente me responde:&lt;/p&gt; &lt;pre&gt;checking for running kernel version...2.6.22&lt;br /&gt;checking for ptserial...ptserial-2.6.c&lt;br /&gt;checking for gcc...4.1.3&lt;br /&gt;checking for kernel gcc version...4.1.3&lt;br /&gt;searching for kernel includes...found at /lib/modules/2.6.22-14-server/build/include&lt;br /&gt;checking for autoconf.h.../lib/modules/2.6.22-14-server/build/include/linux/autoconf.h&lt;br /&gt;checking for asm/mach-default...yes&lt;br /&gt;checking for kernel version in utsrelease.h...UTS_RELEASE is 2.6.22-14-server&lt;br /&gt;checking type of tty_struct.count...int&lt;br /&gt;checking for presence of udev...present (kernel version 2.6.13 or later)&lt;br /&gt;detecting your modem...found. Your modem is a cm8738 type modem.&lt;br /&gt;&lt;br /&gt;compilation done&lt;br /&gt;&lt;br /&gt;installation done&lt;br /&gt;&lt;br /&gt;modem activated&lt;/pre&gt; &lt;p&gt;Demasiado bueno para ser verdad esas palabras de modem activado fueron como música para mis oidos.  Me dije a mi mismo:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Yo&lt;/strong&gt;: Mi mismo ¿lo probamos?.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Mimismo&lt;/strong&gt;: Si pero ¿con que? ¿de casualidad te acuerdas cual era el programa que usabas para conectarte a internet por modem con el Mandrake?&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Yo: &lt;/strong&gt;Como que era el kppp.&lt;/p&gt; &lt;p&gt;Después procedí a instalarlo, como siempre de desperado.&lt;/p&gt; &lt;p&gt;$sudo apt-get install kppp&lt;/p&gt; &lt;p&gt;Terminando la instalación lo ejecuté.&lt;/p&gt; &lt;p&gt;$kppp&lt;/p&gt; &lt;p&gt;Y me salió una hermosa pantalla en donde se encontraba en la parte inferior un botoncito que me insistía configurar mi conexión (no se cual). Que le pico al botón y que me aparece otra con 3 pestañas, la que me interesaba era la que rezaba Modems en su etiqueta.&lt;/p&gt; &lt;p&gt;Entré y luego luego ubiqué el botón de Query al Modem ni tardo ni perezoso que le doy y no me arrojó ningún error. Viendo que todo iba bien me fuí al siguiente botón “Terminal” y al abrirla vi el glorioso comando ATZ y de respuesta OK.&lt;/p&gt; &lt;p&gt;Ahora que es lo que sigue. Pues no se tal vez, no se. No se me ocurré. Probablemente lo use para enviar fax, de contestador, o lo que sea pero menos conectarme a internet, jejejeje.&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/8786117032177741671-7979262029958904809?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/7979262029958904809/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=7979262029958904809' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/7979262029958904809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/7979262029958904809'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/01/instalacin-de-un-winmodem-pctel-en.html' title='Instalación de un winmodem pctel en ubuntu gusty'/><author><name>tskyW1lk</name><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-8786117032177741671.post-7518769811550835049</id><published>2008-01-29T11:27:00.000-08:00</published><updated>2008-02-15T10:51:27.957-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pruebas servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='dyndsn'/><category scheme='http://www.blogger.com/atom/ns#' term='no-ip'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Pruebas con Linux</title><content type='html'>&lt;div style="text-align: justify;"&gt;En estos días he andado probando lo que se refiere a la instalación de un servidor de páginas web en Linux y el uso de DDNS como &lt;a href="http://www.no-ip.com/"&gt;no-ip.com&lt;/a&gt; o &lt;a href="http://www.dyndns.com/"&gt;dyndns&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Por lo pronto he instalado dos servidores uno en una Desktop que tiene un Intel Celeron 366 Mhz con 256 Mb en RAM y con Ubuntu 7.10 versión servidor en el cual he instalado con fines educativos y de prueba:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Foro con phpBB3 : &lt;a href="http://aarmagnac.no-ip.org:1540/%7Eaarmalo/foros/"&gt;http://aarmagnac.no-ip.org:1540/~aarmalo/foros/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Foro con phpBB2 especificamente el IntegraMOD 1.41 : &lt;a href="http://aarmagnac.no-ip.org:1540/%7Eaarmalo/phpBB2/"&gt;http://aarmagnac.no-ip.org:1540/~aarmalo/phpBB2/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Blog con Wordpress : &lt;a href="http://aarmagnac.no-ip.org:1540/%7Eaarmalo/blog/"&gt;http://aarmagnac.no-ip.org:1540/~aarmalo/blog/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;El otro servidor se encuentra instalado en una Laptop Compaq Presario 1261 con un AMD K6 233Mhz con 96 Mb en RAM en el que todavía no he puesto nada.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://aarmagnac.homelinux.org:8080/"&gt;http://aarmagnac.homelinux.org:8080/&lt;/a&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/8786117032177741671-7518769811550835049?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/7518769811550835049/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=7518769811550835049' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/7518769811550835049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/7518769811550835049'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2008/01/pruebas-con-linux.html' title='Pruebas con Linux'/><author><name>tskyW1lk</name><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-8786117032177741671.post-2183754824061943242</id><published>2007-10-26T23:28:00.000-07:00</published><updated>2008-01-29T11:48:59.808-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Escritorio'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>KDE de lujo</title><content type='html'>&lt;a href="http://img132.imageshack.us/my.php?image=sc0jh9.png" target="_blank"&gt;&lt;img src="http://img132.imageshack.us/img132/1484/sc0jh9.th.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;El decorador de ventanas es Crystal y el estilo es keramik&lt;br /&gt;&lt;a href="http://img98.imageshack.us/my.php?image=sc3md4.png" target="_blank"&gt;&lt;img src="http://img98.imageshack.us/img98/5074/sc3md4.th.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://img98.imageshack.us/my.php?image=sc4ho0.png" target="_blank"&gt;&lt;img src="http://img98.imageshack.us/img98/4711/sc4ho0.th.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://img156.imageshack.us/my.php?image=sc5sk0.png" target="_blank"&gt;&lt;img src="http://img156.imageshack.us/img156/101/sc5sk0.th.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;En la configuración del panel habilito la transparencia&lt;br /&gt;&lt;a href="http://img156.imageshack.us/my.php?image=sc6xo1.png" target="_blank"&gt;&lt;img src="http://img156.imageshack.us/img156/7516/sc6xo1.th.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Para la consola (konsole) en preferencias selecciona en preferencias-&gt;esquema la opción de transparente,fondo oscuro y lo guardo como predeterminado.&lt;br /&gt;&lt;a href="http://img156.imageshack.us/my.php?image=sc8vj2.png" target="_blank"&gt;&lt;img src="http://img156.imageshack.us/img156/267/sc8vj2.th.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;el wallpaper que uso esta aquí:&lt;br /&gt;&lt;a href="http://img156.imageshack.us/my.php?image=hellsing81024wv9.jpg" target="_blank"&gt;&lt;img src="http://img156.imageshack.us/img156/1577/hellsing81024wv9.th.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2183754824061943242?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2183754824061943242/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2183754824061943242' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2183754824061943242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2183754824061943242'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2007/10/kde-de-lujo.html' title='KDE de lujo'/><author><name>tskyW1lk</name><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-8786117032177741671.post-913950982653192054</id><published>2007-08-02T16:44:00.000-07:00</published><updated>2008-01-29T12:43:04.428-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Programación'/><category scheme='http://www.blogger.com/atom/ns#' term='Puertos'/><category scheme='http://www.blogger.com/atom/ns#' term='Shell'/><title type='text'>Puerto Paralelo desde la shell de linux</title><content type='html'>También podemos trabajar con el puerto paralelo desde la shell de Linux, para ello tenemos las funciones outb e inb. Para ejecutar estas instrucciones es necesario ser root.&lt;br /&gt;&lt;br /&gt;outb &lt;puerto&gt;&lt;dato&gt;puerto dato; Para enviar al Puerto y&lt;br /&gt;inb &lt;puerto&gt; puerto ;Para leer el puerto.&lt;br /&gt;&lt;br /&gt;Hay que animarse a probar, ¿que es lo peor que puede pasar?.&lt;br /&gt;&lt;br /&gt;Para probar con leds se puede emplear el CI ULN2803 que es un arreglo de 8 NPN transistores con la configuración Darlington.&lt;/puerto&gt;&lt;/dato&gt;&lt;/puerto&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-913950982653192054?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/913950982653192054/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=913950982653192054' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/913950982653192054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/913950982653192054'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2007/08/puerto-paralelo-desde-la-shell-de-linux.html' title='Puerto Paralelo desde la shell de linux'/><author><name>tskyW1lk</name><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-8786117032177741671.post-4059636825523392291</id><published>2007-08-01T22:10:00.000-07:00</published><updated>2008-01-29T12:48:17.190-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Freepascal'/><category scheme='http://www.blogger.com/atom/ns#' term='Hardware'/><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='Programación'/><category scheme='http://www.blogger.com/atom/ns#' term='Puertos'/><title type='text'>Puerto Paralelo con Freepascal en Linux</title><content type='html'>Ahora si que al grano, para poder escribir y leer datos del puerto paralelo de nuestra PC en linux usando freepascal tenemos que declarar que vamos a usar la librería oldlinux la cual nos dará acceso a las instrucciones ioperm, WritePortB, ReadPortB que nos ayudará en nuestro propósito de controlar este puerto.&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;program&lt;/span&gt;&lt;span style="font-size:85%;"&gt; pp;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;uses&lt;/span&gt;&lt;span style="font-size:85%;"&gt; oldlinux;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;begin&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;ioperm(888,3,1); {Para dar permisos al puerto}&lt;br /&gt;WritePortB(888,0); {Para escribir en el puerto}&lt;br /&gt;ReadPortB(888); {Para leer el puerto o el estado del puerto}&lt;br /&gt;Writeln(ReadPortB(888));&lt;br /&gt;ioperm(888,3,0);  {Quitamos los permisos al puerto}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;end.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El numero 888 corresponde al 0x378 que es el registro de datos del puerto paralelo, enseguida tenemos los registro de estado y de control.&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_Nue6fu8xt9Q/RrFuJvGD50I/AAAAAAAAAAM/UqXRjcN7JZ0/s1600-h/paralelo.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_Nue6fu8xt9Q/RrFuJvGD50I/AAAAAAAAAAM/UqXRjcN7JZ0/s320/paralelo.png" alt="" id="BLOGGER_PHOTO_ID_5093973767072507714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Con lo cual podemos hacer lo que deseemos sobre el puerto. Como manejar una carga o varias como se muestra en la siguiente figura.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_Nue6fu8xt9Q/RrFwCvGD51I/AAAAAAAAAAU/S-CdPlZ17d4/s1600-h/dcp02890.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp0.blogger.com/_Nue6fu8xt9Q/RrFwCvGD51I/AAAAAAAAAAU/S-CdPlZ17d4/s400/dcp02890.jpg" alt="" id="BLOGGER_PHOTO_ID_5093975845836678994" border="0" /&gt;&lt;/a&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/8786117032177741671-4059636825523392291?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/4059636825523392291/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=4059636825523392291' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4059636825523392291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/4059636825523392291'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2007/08/puerto-paralelo-con-freepascal-en-linux.html' title='Puerto Paralelo con Freepascal en Linux'/><author><name>tskyW1lk</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_Nue6fu8xt9Q/RrFuJvGD50I/AAAAAAAAAAM/UqXRjcN7JZ0/s72-c/paralelo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8786117032177741671.post-2953970359220872000</id><published>2007-07-30T20:39:00.000-07:00</published><updated>2007-07-30T20:51:23.842-07:00</updated><title type='text'>Primero a lo primero</title><content type='html'>Que tal a todos.&lt;br /&gt;&lt;br /&gt;Esta es la primera edición de este blog donde podemos hablar y compartir en temas de electrónica, Microcontroladores, programación (Pascal, C, SystemC, VHDL y los que vengan), Linux, etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8786117032177741671-2953970359220872000?l=dtupelektro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dtupelektro.blogspot.com/feeds/2953970359220872000/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8786117032177741671&amp;postID=2953970359220872000' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2953970359220872000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8786117032177741671/posts/default/2953970359220872000'/><link rel='alternate' type='text/html' href='http://dtupelektro.blogspot.com/2007/07/primero-lo-primero.html' title='Primero a lo primero'/><author><name>tskyW1lk</name><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></feed>
