<?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-20011828</id><updated>2011-06-24T09:01:21.100+02:00</updated><category term='ensamblador'/><category term='retro'/><category term='utilidades'/><title type='text'>Digipure XT</title><subtitle type='html'>Tecnología, programación y retro-informática</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-20011828.post-6224389518281755537</id><published>2007-03-13T15:03:00.000+01:00</published><updated>2007-03-15T18:11:25.804+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='retro'/><category scheme='http://www.blogger.com/atom/ns#' term='utilidades'/><category scheme='http://www.blogger.com/atom/ns#' term='ensamblador'/><title type='text'>Z80 PC Assembler</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_eascEZ1FCjU/RfawNl4VeTI/AAAAAAAAAKo/JUMuxRTJ71s/s1600-h/z80asm.f.z80asmss1.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_eascEZ1FCjU/RfawNl4VeTI/AAAAAAAAAKo/JUMuxRTJ71s/s400/z80asm.f.z80asmss1.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5041410580441037106" /&gt;&lt;/a&gt;&lt;br /&gt;Para los gente interesada en crear programas para ese gran ordenador que es el ZX Spectrum, el grupo Retrospec ha creado un &lt;a href="http://retrospec.sgn.net/game-overview.php?link=z80asm"&gt;ensamblador para Z80&lt;/a&gt;. Comodamente desde tu PC puedes construir el programa en ensamblador, y generar directan un Tap o TZX para probarlo en un emulador.&lt;br /&gt;&lt;br /&gt;Yo ya habia probado a hacerlo utilizando un ensamblador de Z80 standard y convirtiendo el archivo binario resultante con bin2tap, a un Tap para poderlo usar en un emulador. De esta manera es aun más directo y sin complicaciones. Si es quieres crear tu propio juego / programa para Z80, esta herramienta te será muy útil&lt;br /&gt;&lt;a href="http://retrospec.sgn.net/game-overview.php?link=z80asm"&gt;Retrospec&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Update&lt;/span&gt; Parece que este compilador cruzado no es el único. También tenemos el &lt;a href="http://www.arrakis.es/~ninsesabe/pasmo/#bye"&gt;Pasmo&lt;/a&gt;, capaz de generar código para varios ordenadores de 8 bits basados en el Z80. O también el &lt;a href="http://sjasmplus.sourceforge.net/"&gt;SjASMPlus&lt;/a&gt;, con gran cantidad de opciones.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-6224389518281755537?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/6224389518281755537/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=6224389518281755537&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/6224389518281755537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/6224389518281755537'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2007/03/z80-pc-assembler.html' title='Z80 PC Assembler'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_eascEZ1FCjU/RfawNl4VeTI/AAAAAAAAAKo/JUMuxRTJ71s/s72-c/z80asm.f.z80asmss1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-114216472522813964</id><published>2006-03-12T12:55:00.000+01:00</published><updated>2006-03-12T12:58:45.243+01:00</updated><title type='text'>Técnicas del Shadow of The Colossus de Ps2</title><content type='html'>&lt;a href="http://www.watch.impress.co.jp/game/docs/20051207/3dwa.htm"&gt;Game Watch&lt;/a&gt; publicó hace ya unos meses una completa entrevista con los creadores del increible juego de Ps2, Shadow of the Colossus, en la que hablaban extansemente sobre los detalles técnicos en la creación de este juego. Ahora esta completa entrevista se encuentra traducida al ingles en &lt;a href="http://www.dyingduck.com/sotc/making_of_sotc.html"&gt;Dyingduck&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-114216472522813964?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/114216472522813964/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=114216472522813964&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/114216472522813964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/114216472522813964'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/03/tcnicas-del-shadow-of-colossus-de-ps2.html' title='Técnicas del Shadow of The Colossus de Ps2'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113819052899294875</id><published>2006-01-25T15:57:00.000+01:00</published><updated>2006-01-25T15:17:18.636+01:00</updated><title type='text'>Aprende a hacer un RPG en C++... en video</title><content type='html'>&lt;a href="http://www.rdxgames.net/projects/wrathlands/index.html"&gt;Este tutorial&lt;/a&gt; enseña a programar un RPG en C++ en modo texto. Lo curioso es que no es el típico tutorial con texto e imágenes, sino un video. Este formato es más popular en los tutoriales de software complejo (como 3D Studio o Photoshop), pero es el primero que veo en programación. Curioso.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113819052899294875?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113819052899294875/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113819052899294875&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113819052899294875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113819052899294875'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/aprende-hacer-un-rpg-en-c-en-video.html' title='Aprende a hacer un RPG en C++... en video'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113760339559539995</id><published>2006-01-18T18:51:00.000+01:00</published><updated>2006-01-18T17:56:35.670+01:00</updated><title type='text'>Tarjetas / Guías de referencia rápida</title><content type='html'>En &lt;a href="http://tiger.la.asu.edu/quick_reference_card.htm"&gt;esta web&lt;/a&gt; teneis disponible todo un listado de tarjetas y guías de referencia rápidas, comprimidas en unas pocas hojas, tamaño tarjeta y formato PDF. Muy útiles para tener siempre a mano. Hay de los lenguajes de programación y otras tecnologías más importantes: C, Java, HTML, Perl, PHP,... y algunas aplicaciones como Vi o MySQL. Muy práctico&lt;br /&gt;&lt;br /&gt;&lt;div class="tag_list"&gt;Tags: &lt;span class="tags"&gt;&lt;a href="http://technorati.com/tag/programming" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://technorati.com/tag/programación" rel="tag"&gt;programación&lt;/a&gt;, &lt;a href="http://technorati.com/tag/referencia" rel="tag"&gt;referencia&lt;/a&gt;, &lt;a href="http://technorati.com/tag/guía" rel="tag"&gt;guía&lt;/a&gt;, &lt;a href="http://technorati.com/tag/guide" rel="tag"&gt;guide&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113760339559539995?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113760339559539995/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113760339559539995&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113760339559539995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113760339559539995'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/tarjetas-guas-de-referencia-rpida.html' title='Tarjetas / Guías de referencia rápida'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113698074496894246</id><published>2006-01-18T07:22:00.000+01:00</published><updated>2006-01-18T12:05:08.880+01:00</updated><title type='text'>Nuestras amigas, las Expresiones Regulares (II) : Perl</title><content type='html'>Una de las partes más potentes de Perl son su manejo de las expresiones regulares. De una forma potente y sencilla nos permite validar y extraer información de cadenas de texto, a costa de sacrificar un poco de legibilidad.&lt;br /&gt;&lt;br /&gt;Si queremos comprobar si una cadena cumple con una determinada Expresión Regular no tenemos más que fijarnos en este código:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;#!/usr/bin/perl&lt;br /&gt;if ($variable =~ m/\d/i) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf("La cadena '$variable' contiene un dígito\n");&lt;br /&gt;}&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Las expresiones regulares en Perl van entre &lt;span style="font-style:italic;"&gt;/&lt;/span&gt;. La acción que queremos realizar sobre la RegExp va al principio y las opciones al final. La acción &lt;span style="font-style:italic;"&gt;m&lt;/span&gt; es match (es la acción por defecto, no es necesario ponerla) y retorna verdadero si se produce un aparición de la expresión regular. La opción &lt;span style="font-style:italic;"&gt;i&lt;/span&gt; nos sirve para indicar que la búsqueda se realiza 'case insensitive', sin importar si es mayúscula o minúscula. Este comando de Perl es un poco confuso al principio (parece una asignación, pero no lo es), pero es uno de los más prácticos.&lt;br /&gt;&lt;br /&gt;Otra acción que podemos realiar con las expresiones regulares es la substitución (&lt;span style="font-style:italic;"&gt;s&lt;/span&gt;):&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;#!/usr/bin/perl&lt;br /&gt;$variable =~ s/\d/0/; # Reemplaza todos los digitos de $variable por 0 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# y lo asigna a la misma variable&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Bien, ya sabemos como validar y transformar una cadena utilizando las Expresiones Regulares, pero ¿cómo extraer la información? Para ello se utilizan los parentésis durante una acción de match y posteriormente podemos acceder con $1,$2,... por cada parentesis que hayamos colocado:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;#!/usr/bin/perl&lt;br /&gt;$fecha = "10-01-2006";&lt;br /&gt;$fecha =~ /\d\d-(\d\d)-(\d+)/;&lt;br /&gt;printf("El mes es $1 y el año $2\n");&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Realmente sencillo, ¿no? Si ahora queremos obtener todos los encuentros en una cadena, utilizamos la opción &lt;span style="font-style:italic;"&gt;g&lt;/span&gt; para que la operación se realiza en la totalidad de la cadena, no se detenga en el primer encuentro. Por ejemplo, si queremos todos los números de una cadena:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;#!/usr/bin/perl&lt;br /&gt;$string ="aabb1aa2aaa3";&lt;br /&gt;while($string =~ /(\d)/g) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf ("Encontrado $1\n"); # Encontrará 1, 2 y 3&lt;br /&gt;}&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Estas son las operaciones más básicas que se pueden realizar con cadenas, pero son la base para realizar cualquier otra más compleja. Como podéis ver con operaciones muy sencillas (aunque algo crípticas, todo hay que decirlo) podemos manipular como queramos el contenido de una cadena. En el próximo post sobre RegExp explicaré como funcionan en Java.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Links&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://digipurext.blogspot.com/2005/12/nuestras-amigas-las-expresiones.html"&gt;Nuestras amigas, las Expresiones Regulares(I)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.regular-expressions.info/perl.html"&gt;Regular-Expressions.info&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.somacon.com/p127.php"&gt;Regular Expressions By Example&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.cs.tut.fi/~jkorpela/perl/regexp.html"&gt;Regular Expressions in Perl&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="tag_list"&gt;Tags: &lt;span class="tags"&gt;&lt;a href="http://technorati.com/tag/perl" rel="tag"&gt;perl&lt;/a&gt;, &lt;a href="http://technorati.com/tag/regexp" rel="tag"&gt;regexp&lt;/a&gt;, &lt;a href="http://technorati.com/tag/programming" rel="tag"&gt;programming&lt;/a&gt;, &lt;a href="http://technorati.com/tag/parser" rel="tag"&gt;parser&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113698074496894246?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113698074496894246/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113698074496894246&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113698074496894246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113698074496894246'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/nuestras-amigas-las-expresiones.html' title='Nuestras amigas, las Expresiones Regulares (II) : Perl'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113735527119797947</id><published>2006-01-15T20:42:00.000+01:00</published><updated>2006-01-15T21:05:24.080+01:00</updated><title type='text'>Programación en Ensamblador para  ZX Spectrum</title><content type='html'>Para todos aquellos que empezamos programando con un Spectrum, todavía recordamos con añoranza aquella época... &lt;a href="http://www.speccy.org/sromero/spectrum/prog/asm/z80asmtut/"&gt;Aquí&lt;/a&gt; teneis un completo tutorial de como programar para Spectrum, usando lenguaje ensamblador mediante un ensamblador cruzado, un par de utilidades y por supuesto un emulador. Es realmente sencillo hacerlo siguiendo los pasos como se explican, y todas las herramientas son muy fáciles de entender. &lt;br /&gt;&lt;br /&gt;En mi epóca de trastear con el Specturm nunca pasé del Basic; en realidad, mi primer programa en ensamblador para la máquina de Sinclair lo hice ustando estas herramientas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113735527119797947?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113735527119797947/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113735527119797947&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113735527119797947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113735527119797947'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/programacin-en-ensamblador-para-zx.html' title='Programación en Ensamblador para  ZX Spectrum'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113696951800702634</id><published>2006-01-11T07:32:00.000+01:00</published><updated>2006-01-11T09:52:16.006+01:00</updated><title type='text'>Apple  Keynote 2006: La gran decepción</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/macBook.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/1403/899/400/macBook.jpg" border="0" alt="" /&gt;&lt;/a&gt;Mucha gente (yo incluido), esperaba que para esta Keynote se presentaran los primeros modelos de Apple con procesador Intel. Además, según se decía en la anterior, primero se cambiarían los modelos más basicos (iBook, Mac Mini). Sin embargo la realidad es que han presentado modelos con procesador Intel si, pero de gama media-alta. Por un lado tenemos los nuevos iMac, a partir de casi 1400€ y por otro la nueva gama de MacBook (que mal suena ¿no?) a partir de 2000€ más o menos. Eso sí, prometen más de dos veces el rendimiento de sus equivalentes PPC.&lt;br /&gt;&lt;br /&gt;Una gran decepción para quienes esperabamos poder comprar nuestro primer Mac 'barato', ya sea Mac Mini o iBook...&lt;br /&gt;&lt;br /&gt;Para datos más concretos sobre la Keynote, podéis visitar &lt;a href="http://singermornings.blogspot.com/"&gt;Rita the Singer's true story&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113696951800702634?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113696951800702634/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113696951800702634&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113696951800702634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113696951800702634'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/apple-keynote-2006-la-gran-decepcin.html' title='Apple  Keynote 2006: La gran decepción'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113684739481984484</id><published>2006-01-09T23:49:00.000+01:00</published><updated>2006-01-09T23:56:34.830+01:00</updated><title type='text'>Imminente salida de Flash Lite 2</title><content type='html'>Parece que por fin Macromedia va a liberar el software necesario y el nuevo SDK para &lt;a href="http://digipurext.blogspot.com/2005/12/flash-lite-20.html"&gt;Flash Lite 2&lt;/a&gt;, con lo que se podran comenzar a realizar aplicaciones multimedia en este formato. De todas formas, no se espera que los primeros terminales que soporten este formato lleguen antes de fin de año.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;De: &lt;/strong&gt;&lt;a href="http://www.slashphone.com/64/3369.html"&gt;Slashphone&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113684739481984484?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113684739481984484/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113684739481984484&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113684739481984484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113684739481984484'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/imminente-salida-de-flash-lite-2.html' title='Imminente salida de Flash Lite 2'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113682435404539707</id><published>2006-01-09T15:18:00.000+01:00</published><updated>2006-01-09T17:32:35.103+01:00</updated><title type='text'>Web sobre retro-informatica : 1000bit.net</title><content type='html'>&lt;p align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/mz80k-bro1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://photos1.blogger.com/blogger/1403/899/320/mz80k-bro1.jpg" alt="" border="0" /&gt;&lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/tandy2000_ad.jpg"&gt;&lt;img style="cursor: pointer;" src="http://photos1.blogger.com/blogger/1403/899/320/tandy2000_ad.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;a href="http://www.1000bit.net/"&gt;Esta web italiana&lt;/a&gt; (pero con muchísimo contenido en inglés) contiene todo tipo de información sobre los primeros pasos de la microinformatica. Podemos encontrar desde folletos y antiguos anuncios hasta revistas, manuales y articulos completos,  sobre todo de los '80. Tiene un archivo enorme de este tipo de información escaneada en formato jpg, pdf o HTML.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113682435404539707?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113682435404539707/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113682435404539707&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113682435404539707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113682435404539707'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/web-sobre-retro-informatica-1000bitnet.html' title='Web sobre retro-informatica : 1000bit.net'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113620189173034305</id><published>2006-01-02T19:34:00.000+01:00</published><updated>2006-01-05T15:40:47.026+01:00</updated><title type='text'>Sobre Perl</title><content type='html'>El orígen de Perl (el autor lo quiso llamar Pearl,  pero ese nombre ya existia) es el de un lenguaje orientado a tratar textos, pero ha ido evolucionando a lo largo de los años hacia un lenguaje de proposito general con usos tan variados como control de sistema, desarrollo de webs, interfaces gráficas, plug-ins y mucho más.&lt;br /&gt;&lt;br /&gt;Desde sus orígenes Perl tiende a ser más práctico que elegante; por lo que permite crear apliaciones muy potentes en poco tiempo, pero con una alta probabilidad de que sea dificl de leer o destructurada. Sintácticamente, Perl es una mezcla de C con los lenguajes de shell de UNIX. La mayoría de estructuras son similares a C, pero en general más flexibles y las variables son de tipo dinámico, realizando una conversión automática siempre que es posible. También abundan las variables implicitas (variables que por defecto almacenan ciertos valores). También presenta rasgos de otros lenguajes, como listas similares a LISP.&lt;br /&gt;&lt;br /&gt;La forma más natural de encontrar Perl es como lenguaje interpretado. El interprete, por lo general creado en C, suele ser bastante eficiente. La gestión de memoria es realizada totalmente por este interprete, que reserva y libera el espacio según es necesario. Otra característica importante es la gran cantidad de librerías de terceros que estan disponibles para Perl. A parte del interprete, existen multiples implementacione de Perl como lenguaje empotrado para otros lenguajes como C y Java.&lt;br /&gt;&lt;br /&gt;Todo programa en Perl comienza con una linea de comentario (marcada en Perl con '#') indicando donde esta el interpete. Esta linea no es necesaria cuando se usa sobre Windows, pero por portabilidad, casi todos los scripts la incluyen.&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;#!/usr/bin/perl&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Por otro lado, la popular llamada de C printf está disponible:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;printf("¡Hola mundo!");&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;No es necesario declarar variables implicitamente, pero si queremos o necesitamos hacerlo:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;my $una_variable_esalar;&lt;br /&gt;my ($una_variable, $dos_variables);&lt;br /&gt;my @variable_tipo_array;&lt;br /&gt;my %variable_tipo_array_asociativo;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Como veis, las variables llevan un símbolo como primer caracter que indica su tipo. Las variables escalares pueden ser entaras, floats o cadenas, realizandose autoconversión entre ellas. Para declarar más de una variable en un my, debemos hacerlo como lista (o más bien array). Las comparaciones entre cadenas deben usar unos comparadores propios (eq, ne, ...):&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;if ($variable eq "cadena") { printf("Son iguales"); }&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Todo condicional, escrito de esta manera, debe llevar "{" y "}", independientemente que solo haya una insrtucción. Veamos ahora las variables implicitas con un bucle:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;my @mi_array = ("casa","coche","farola");&lt;br /&gt;my $valor = $mi_array[0]; # acceso como escalar&lt;br /&gt;foreach (@mi_array) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf("\n $_");&lt;br /&gt;}&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;La variable implicita $_ contiene el elemento actual cuando tratamos arrays en un bucle. Para escribir una variable por pantalla, se puede escribir directamente en una cadena, realizando el cambio por el valor automáticamente. También hay que tener en cuanta que debemos cambiar el símbolo usado por los arrays ('@') cuando los vamos a utlizar como escalar ('$').&lt;br /&gt;&lt;br /&gt;Un array asociativo se utiliza de esta manera:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;my %mi_array_asocc = ("clave 1" =&gt; "valor 1", "clave 2" =&gt; "valor 2");&lt;br /&gt;my @lista_de_claves = keys %mi_array_asocc;&lt;br /&gt;my @lista_de_valores = values %mi_array_asocc;&lt;br /&gt;&lt;br /&gt;printf ("Claves \n");&lt;br /&gt;foreach (@lista_de_claves) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf("$_\n");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;printf ("Valores \n");&lt;br /&gt;foreach (@lista_de_valores) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf("$_\n");&lt;br /&gt;}&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Una muestra de la potencia de Perl, para leer un archivo por lineas solo tenemos que:&lt;br /&gt;&lt;br /&gt;&lt;table bgcolor="#dec4a9" border="1" width="500"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;my $file = "fichero.txt";&lt;br /&gt;my @lineas;&lt;br /&gt;print (" Leyendo archivo $file...\n");&lt;br /&gt;if (!open (FILE, $file)) {printf("No se puede abrir $file\n"); exit(1); }&lt;br /&gt;@lineas = &lt;file&gt;&lt;file&gt;;&lt;br /&gt;close FILE;&lt;br /&gt;foreach (@lineas) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf("$_\n");&lt;br /&gt;}&lt;br /&gt;&lt;/file&gt;&lt;/file&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Bueno, esto solo es la sintaxis más básica de Perl. Existen aun mas estructuras de control, acceso archivos, redes, ... y un sistema de subrutinas bastante potente. Y por supuesto inacabables librerías externas. Además he dejado intencionadamente fuera una parte importantísima de Perl, las expresiones regulares, que trataré en un post aparte.&lt;br /&gt;&lt;br /&gt;En definitiva, Perl es un potente lenguaje de programación, que en ciertas tareas, permite crear una aplicación de manera rápida y eficiente, la cual nos llevaría mucho más tiempo con cualquier otro lenguaje (Java, C++,...). Con un poco de práctica, se aprende a utilizar todo su potencial y a evitar los problemas de ilegibilidad.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Links&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Perl"&gt;Perl en Wikipedia&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.oreilly.com/catalog/lperl3/"&gt;Learning Perl&lt;/a&gt; &lt;strong&gt;¡Corregido!&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://perldoc.perl.org/"&gt;Perldoc&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113620189173034305?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113620189173034305/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113620189173034305&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113620189173034305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113620189173034305'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2006/01/sobre-perl.html' title='Sobre Perl'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113589766881329578</id><published>2005-12-30T00:03:00.000+01:00</published><updated>2005-12-30T00:07:48.823+01:00</updated><title type='text'>Ya disponible la primera tostadora BLU RAY</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/blurayburner.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/1403/899/400/blurayburner.jpg" border="0" alt="" /&gt;&lt;/a&gt;Pioneer ya tiene disponible la primera grabadora de BR del mercado (que también graba DVDs), la BDR-101A, adelantandose a su fecha de salida en el 2006. Se allana el camino para los futuros dispositivos Blu Ray Disc, incluida la Ps3 de Sony (y yo que creía que los juegos de Ps3 no se podrían pirtear en una temporada por lo del disco...)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;De: &lt;/strong&gt;&lt;a href="http://es.gizmodo.com/2005/12/29/post_9.html"&gt;Gizmoodo&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113589766881329578?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113589766881329578/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113589766881329578&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113589766881329578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113589766881329578'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/ya-disponible-la-primera-tostadora-blu.html' title='Ya disponible la primera tostadora BLU RAY'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113560715779459811</id><published>2005-12-26T15:18:00.000+01:00</published><updated>2005-12-26T15:25:57.796+01:00</updated><title type='text'>Flash Lite 2.0</title><content type='html'>Frente al ya anticuado Flash Lite 1.1 (aunque soportado por muchos terminales), Macromedia presentó hace un tiempo las características de lo que será la segunda versión para terminales móviles. Estos son los puntos que se han revelado:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Código basado en Flash 7 con ActionScript 2.0. En el Flash Lite 1.1, teníamos una sintaxis basada en Flash 4, teniendo que utilizar el comando tellTarget en vez de la sintaxis por puntos. Este es el cambio más importante.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Reproducción de video. A través del propio hardware del móvil, se podrá reproducir cualuquier video que el dispositivo sea capaz de visualizar.&lt;/li&gt;&lt;li&gt;Parseado de XML externo. Se podrán cargar y parsear XMLs.&lt;/li&gt;&lt;li&gt;Posibilidad de guardar datos de manera persitente en el dispostivo.&lt;/li&gt;&lt;li&gt;Carga de imágenes y música externas, lo que facilitará crear aplicaciones más grandes y personalizables.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;strong&gt;De: &lt;/strong&gt;&lt;a href="http://www.macromedia.com/devnet/devices/articles/flashlite_v2_preview.html"&gt;Macromedia&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113560715779459811?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113560715779459811/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113560715779459811&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113560715779459811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113560715779459811'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/flash-lite-20.html' title='Flash Lite 2.0'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113560638896876975</id><published>2005-12-26T15:09:00.000+01:00</published><updated>2005-12-26T15:13:09.646+01:00</updated><title type='text'>¿Podrá Java reemplazar a C++ como lenguaje de programación de juegos?</title><content type='html'>Chris Melissinos es el encargado en Sun de llevar todo lo referente al uso de Java para juegos. En esta &lt;a href="http://www.next-gen.biz/index.php?option=com_content&amp;task=view&amp;id=1502&amp;Itemid=2"&gt;entrevista &lt;/a&gt;Crhis habla del estado actual del uso de este lenguaje en cuanto a la creación de juegos: el uso de las últimas tecnologías 3D, su uso en las futuras consolas y en los terminales móviles. &lt;br /&gt;&lt;br /&gt;Las cosas están mucho mejor que hace unos años, pero aun parece dificil que este cambio se produzca...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113560638896876975?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113560638896876975/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113560638896876975&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113560638896876975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113560638896876975'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/podr-java-reemplazar-c-como-lenguaje.html' title='¿Podrá Java reemplazar a C++ como lenguaje de programación de juegos?'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113556342345939696</id><published>2005-12-26T02:14:00.000+01:00</published><updated>2005-12-26T15:28:54.953+01:00</updated><title type='text'>Nuestras amigas, las Expresiones Regulares (I)</title><content type='html'>Expresiones regulares o también llamadas a menudo RegExp. Odiadas por muchos, amadas por unos pocos que saben utilizar su poder. Y es que dentro de esa mascara de dificultad o ilegibilidad se esconde un gran potencial.&lt;br /&gt;&lt;br /&gt;El origen de las RegExp está en la teoría de autómatas y lenguajes formales, una parte no demasiado sencilla del álgebra que acompaña a cualquier carrera de informática que se precie. Por ello, y por que su notación en ordenador no es demasiado legible, no tienen muy buena fama entre quienes no las conocen.&lt;br /&gt;&lt;br /&gt;Según la definición de la &lt;a href="http://en.wikipedia.org/wiki/Main_Page"&gt;Wikipedia&lt;/a&gt;, una expresión regular es una cadena que describe un conjunto de cadenas, de acuerdo con unas reglas sintacticas.  Comenzaron a usarse en el mundo de la informática dentro de las primeras y potentes aplicaciones del sistema UNIX (por ejemplo el comando grep).&lt;br /&gt;&lt;br /&gt;Prácticamente cualquier lenguaje de programación actual cuenta con RegExp en su sintaxis o en sus librerías básicas (menos algunos que se resisten, como el infame Objective-C).&lt;br /&gt;&lt;br /&gt;Hoy en día la sintaxis UNIX está anticuada, la más popular y utilizada es la PCRE (Perl Compatible Regular Expression); que como su nombre indican, estan implementadas dentro del lenguaje Perl. Estas son en las que nos centraremos.&lt;br /&gt;&lt;br /&gt;Los usos de las RegExp son muy variados, ya que nos permiten tanto validar la estructura de una cadena (pej, un e-mail o fecha, o cosas mucho más complejas) o extraer información (pej, del log de un programa). Incluso podemos utilizarla para describir algun lenguaje de script sencillo, sino queremos crear un compilador completo (y ni así nos libraremos de definirlo con RegExps).&lt;br /&gt;&lt;br /&gt;Comencemos con la práctica. Como se menciona en su definición, una RegExp no es más que una cadena con una sintaxis especial. Así, unos cuantos símbolos clave:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;^  para indicar un comienzo de linea&lt;/li&gt;&lt;li&gt;$  para indicar el finald e una cadena. &lt;/li&gt;&lt;li&gt;.  para cualquier carácter único. &lt;/li&gt;&lt;li&gt;*  indicamos una repetición de un elemento 0 o más veces. &lt;/li&gt;&lt;li&gt;+  indicamos una repetición de un elemento 1 o más veces.&lt;/li&gt;&lt;li&gt;\t indica un tabulador&lt;/li&gt;&lt;li&gt;\w indica cualquier carácter que pueda formar parte de una palabra&lt;/li&gt;&lt;li&gt;\s indica un espacio, tabulador o salto de linea&lt;/li&gt;&lt;li&gt;\d indica un dígito&lt;/li&gt;&lt;/ul&gt;(los tres últimos en mayúscula (\W, \S, \D) indican justo lo contrario)&lt;br /&gt;&lt;br /&gt;Así, por ejemplo, una expresión regular que indique una línea con tres caracteres sería &lt;span style="font-style: italic;"&gt;"^...$"&lt;/span&gt;. Si queremos una RegExp que encaje con una cadena que tenga 3 palabras   en una línea podemos usar &lt;span style="font-style: italic;"&gt;"^\w+ \w+ \w+$"&lt;/span&gt;. Existe toda una sintaxis compleja que nos permite reconocer cualquier tipo de patrón (bueno, cualquier tipo de patrón que pueda resolver un autómata finito). Para ello, mejor consultar una manual de PCRE.&lt;br /&gt;&lt;br /&gt;Estás RegExp nos permiten saber si otra cadena encaja con unas condiciones. Pero las expresiones regulares no solo permiten comprobar, también podemos obtener información de ella. Como en la RegExp &lt;span style="font-style: italic;"&gt;"Busco esta informacion :(.*)"&lt;/span&gt;. Utilizando los parentesis, podemos extraer la información de cada encaje que produzca la RegExp y se encuentre dentro de los parentesis.&lt;br /&gt;&lt;br /&gt;Bueno, esto ya se esta haciendo muy largo. En el siguiente post sobre las RegExp, explicaré como usarlas dentro de Perl y de Java, con algún otro ejemplo más concreto. Mientras tanto, podeis echarle un vistazo a los links.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Links de interes&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Regular_expression"&gt;Wikipedia&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.renatomancuso.com/software/pcreworkbench/pcreworkbench.htm"&gt;PCRE Workbench&lt;/a&gt;, para prácticar con RegExp&lt;br /&gt;&lt;a href="http://www.troubleshooters.com/codecorn/littperl/perlreg.htm"&gt;Perl Regulars Expression&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113556342345939696?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113556342345939696/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113556342345939696&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113556342345939696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113556342345939696'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/nuestras-amigas-las-expresiones.html' title='Nuestras amigas, las Expresiones Regulares (I)'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113533624983197321</id><published>2005-12-23T07:22:00.000+01:00</published><updated>2005-12-23T12:10:49.883+01:00</updated><title type='text'>El Yonah, primero en PC</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/201205_NEC_LR900D.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/1403/899/400/201205_NEC_LR900D.jpg" border="0" alt="http://www.apple.com" /&gt;&lt;/a&gt; El primer sistema en utilizar el nuevo chip de Intel al final no sera &lt;a href=""&gt;Apple&lt;/a&gt;, sino Nec. Recientemente ha presentado su portatil Lavie RX LR900, de gama 'alta' (Y225.000, 1.700€ aprox.). &lt;br /&gt;&lt;br /&gt;   Sus prestaciones, además del nuevo procesador son pantalla de 14.1", 100mb HDD, Bluetoth, wi-fi, grabadora DVD y tan sólo 512mb de RAM.&lt;br /&gt;&lt;br /&gt;  Recordemos que el mercado japones, la presencia de PCs de marca (tanto en portatiles como sobremesa), no solo clónicos es muy importante, siendo Nec dueña del 20% de ese mercado.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;De: &lt;/strong&gt;&lt;a href="http://www.digitalworldtokyo.com/archives/2005/12/nec_yonah_pc_to.html"&gt;Digital World Tokyo&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113533624983197321?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113533624983197321/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113533624983197321&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113533624983197321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113533624983197321'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/el-yonah-primero-en-pc.html' title='El Yonah, primero en PC'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113527100291856234</id><published>2005-12-22T18:59:00.000+01:00</published><updated>2005-12-22T18:03:22.933+01:00</updated><title type='text'>Pequeño tamaño, gran potencia</title><content type='html'>&lt;a href="http://www.tinyapps.org/"&gt;TinyApps.org&lt;/a&gt; es un recopilatorio de apliaciones de pequeño o muy pequeño tamaño y gratuitas; pero de gran potencia y utilidad. Se encuentran clasificadas por areas de utilización, y incluso tiene una sección para MacOS y PalmOS. Merece echarle un vistazo, se encuentran muchas aplicaciones desconocidas y ligeras, pero que pueden solucionarnos grandes problemas. Como dice su eslogan "Small is beautiful".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113527100291856234?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113527100291856234/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113527100291856234&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113527100291856234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113527100291856234'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/pequeo-tamao-gran-potencia.html' title='Pequeño tamaño, gran potencia'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113523763645698709</id><published>2005-12-22T07:05:00.000+01:00</published><updated>2005-12-22T08:47:16.456+01:00</updated><title type='text'>Ejemplos de programación</title><content type='html'>En esta &lt;a href="http://www.ntecs.de/old-hp/uu9r/lang/html/lang.en.html"&gt;web&lt;/a&gt; podeis encontrar ejemplos de programación en más de 100 lenguajes diferentes. La mayoría de las veces los ejemplos se limitan a el típico "Hello World!", pero es curioso ver muchos lenguajes casi desconocidos o que se quedaron por el camino; y sobretodo la evolución a lo largo de los años.&lt;br /&gt;&lt;br /&gt;Recomiendo el Hello world en &lt;a href="http://www.ntecs.de/old-hp/uu9r/lang/html/brainf_ck.en.html#_Hello%20World"&gt;BrainF*ck&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113523763645698709?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113523763645698709/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113523763645698709&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113523763645698709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113523763645698709'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/ejemplos-de-programacin.html' title='Ejemplos de programación'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113520515861081117</id><published>2005-12-21T23:33:00.000+01:00</published><updated>2005-12-22T11:12:25.203+01:00</updated><title type='text'>Cocoa en Objective-C</title><content type='html'>Detras del gran sistema operativo que es MacOs X se encuentra su API nativa de programación, Cocoa. Aunque hay alternativas, Objective-C es el lenguaje principal de programación de esta API, y es la gran apuesta de Apple para la creación de aplicaciones para su flamante sistema operativo.&lt;br /&gt;&lt;br /&gt;Pero, ¿qué es Objective-C? Este lenguaje es un gran desconocido para todos aquellos que no han tocado un Mac. Y ya no digamos de Cocoa. Objective-C (Obj-C) es una extensión C para añadirle objetos; es, digamos, como C++, pero hecho de otra manera. En este caso la sintaxis elegida es similar al Smalltalk, el primer lenguaje orientado a objetos.&lt;br /&gt;&lt;br /&gt;Aunque la idea es la misma, las similitudes con C++ acaban ahí. Obj-C se basa en el pase de mensajes entre objetos para la invocación de metodos (por tanto no hay linkaje  estático hasta el tiempo de ejecución como mínimo). La sintaxis de este envio de mensajes también resulta confusa para los acostumbrados a C++/Java, porque se realiza sin el típico "." o "-&gt;". Así lo que sería:&lt;blockquote&gt;miobjecto.mimetodo(parametro1,parametro2);&lt;/blockquote&gt;se convierte en&lt;br /&gt;&lt;blockquote&gt;[miobjeto mimetodo:parametro1 nombre_parametro2:parametro2];&lt;/blockquote&gt;A parte del uso de los corchetes, y los dos puntos, todos los parametros menos el primero deben de tener un nombre (aparte del nombre de la variable con la que se asocia) y debe ser utilizado al llamar al método. Esta seria la declaración de este metodo en C++:&lt;br /&gt;&lt;blockquote&gt; void mimetodo(int parametro1, int parametro2);&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;en Objective-C es :&lt;br /&gt;&lt;blockquote&gt;- (void)mimetodo:(int)parametro1 nombre_parametro2:(int)parametro2;&lt;/blockquote&gt;Las diferencias también se encuentran en la declaración de clases, ya que en Obj-C tenemos que separar la parte de interface de clase y el de implementación (esto suena mucho a los lenguajes clásicos).&lt;br /&gt;&lt;br /&gt;Esto, después de todo, no son más que cambios de sintaxis y un enlace dinámico; pero existen más diferencias, sobretodo en las librerias standard proporcionadas por Cocoa. Para poner un ejemplo, un NSArray (el equivalente orientado a objetos, aunque por supuesto existe el array original de C) requiere para acceder a un item este código:&lt;br /&gt;&lt;blockquote&gt;valor = [miarray objectAtIndex:0];&lt;/blockquote&gt;No admitiendo los corchetes típicos de C y compañía. Y no solo eso, tampoco hay sobrecarga de operadores; por lo que anexar dos cadenas tiene que hacerse de esta manera:&lt;br /&gt;&lt;blockquote&gt;NSString *cadena_unida = [NSStrng initStringWithFormat:@"%@%@",cadena_1,cadena_2];&lt;/blockquote&gt;Sencillo y práctico, ¿verdad? Lo cierto es que entre tener que nombrar los parámetros, el nombre descriptivo de los métodos básicos y la no sobrecarga de operadores; hacen que usar Objetive-C sea engorroso y lento de utilizar.&lt;br /&gt;&lt;br /&gt;Lo cierto es que todo esto son primeras impresiones, no lleve ni una semana escribiendo Obj-C. Puede que este lenguaje, cuando llevas meses utilizando sea una maravilla, pero despues de haber probado el sabor de una taza de Java; programar en Objective-C parece como si aun estuvieras llevando los pantalones de campana y las melenas de los '80.  A corto plazo, resulta dificil memorizar los nombres de tantos métodos para operaciones simples y he acabado utilizando cut &amp;amp; paste para casi todo.&lt;br /&gt;&lt;br /&gt;Creo que Objective-C queda totalmente fuera de lugar frente a la portabilidad y claridad de Java, la eficencia y popularidad de C/C++ y la rapidez  y potencia de Perl/Phyton. Y además, dado que MacOS es casi la única plataforma que lo aprovecha, no podemos encontrar grandes cantidades de código reaprovechale y bibliotecas.&lt;br /&gt;&lt;br /&gt;Afortunadamente Cocoa, en esta versión también se encuentra bastante unido a Java. Desde el propio XCode (la herramienta que porporciona Apple para desarrollar) permite elegir a la hora de crear un objeto si es Obj-C o Java. Además el Java de toda la vida (usando Swing) también funciona perfectamente integrado en el sistema. Según algunos &lt;a href="http://homepage.mac.com/spullara/rants/C1242049796/E775622191/"&gt;datos&lt;/a&gt;, puede incluso ser más eficiente que Obj-C. Eso si, útltimamente Apple ha hecho público que la única API para Cocoa válida sigue siendo la de Obj-C, la versión Java es solo de puente o aprendizaje.&lt;br /&gt;&lt;br /&gt;Espero que este acercamiento signifique que en las próximas versiones de MacOS se pueda programar en Java de forma nativa, evitando este desfasado lenguaje de programación.&lt;br /&gt;Y más ahora que parece que los Mac van a convertirse en un producto de masas, también debería de tener una lenguaje de programación " de masas", más popular y moderno.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Más información de Objective-C&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://developers.apple.com/cocoa"&gt;Web Oficial de Apple sobre Cocoa&lt;/a&gt;&lt;br /&gt;&lt;a href="http://home.arcor.de/christian_grau/macdev/macdevelop.htm"&gt;Pequeño resumen de la sintaxis y operaciones más comunes&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.cocoabuilder.com"&gt;Recursos para la prrogramación en Cocoa&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Offtopic: &lt;/strong&gt;No dejeis de probar el &lt;a href="http://www.kataoka.com/products/vanhouten/"&gt;Van Houten Cocoa&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;Agradecimientos: &lt;/strong&gt; Este articulo no podria haber sido escrito sin la ayuda de &lt;a href="http://www.singermornings.com"&gt;Willy&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113520515861081117?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113520515861081117/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113520515861081117&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113520515861081117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113520515861081117'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/cocoa-en-objective-c.html' title='Cocoa en Objective-C'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113511212838868805</id><published>2005-12-20T21:44:00.000+01:00</published><updated>2005-12-20T21:55:28.396+01:00</updated><title type='text'>Programando para la Game Boy Advance</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/gbcover_big.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/1403/899/400/gbcover_big.jpg" border="0" alt="" /&gt;&lt;/a&gt;La GBA es uno de los sistemas portatiles para los que mas he programado. Desde antes del lanzamiento de la consola, se liberaron sus especificaciones básicas, y con un sencillo emulador, muchos podimos realizar nuestra primera aplicación homebrew meses antes de que la consola estuviera en la calle.&lt;br /&gt;&lt;br /&gt;Pues bién, durante bastante tiempo estuvo anunciado un libro que prometia explicar la programación para la GBA, mediante herramientas gratuitas y legales. Pero parece que la editorial recibió muchas presiones desde la gran N, y el libro al final no vio la luz. Al menos en papel; porque si es posible descargarlo en formato electronico desde la &lt;a href="http://www.jharbour.com/gameboy/default.aspx"&gt;web del autor&lt;/a&gt;. El libro es muy completo y con él se puede aprender a programar para GBA desde cero. Este sistema ya esta dando los últimos coletazos (revitalizado por la GBA Micro), pero su prima, la NDS comparte muchas características (en realidad lleva una GBA dentro) y es una base para aprender a programar para la consola más moderna de Nintendo.&lt;br /&gt;&lt;br /&gt;Tengo que rebuscar en mis cd/dvds de backups, para encontrar las pequeñas demos que hice para GBA (varios clones de Dragon Quest, una interfaz para juegos de aventura y un inicio de port de Maze of Galious de MSX) y las pondré online.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113511212838868805?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113511212838868805/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113511212838868805&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113511212838868805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113511212838868805'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/programando-para-la-game-boy-advance.html' title='Programando para la Game Boy Advance'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113506568139594288</id><published>2005-12-20T08:48:00.000+01:00</published><updated>2005-12-20T21:35:17.303+01:00</updated><title type='text'>Historia de las interfaces graficas de usuario</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/bigmac1.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/1403/899/400/bigmac1.jpg" border="0" alt="" /&gt;&lt;/a&gt; Aquí teneis una &lt;a href="http://toastytech.com/guis/guitimeline.html"&gt;línea temporal de las interfaces gráficas&lt;/a&gt;; con las mas importantes etapas de las GUI relacionadas con el sistema operativo o como sistema shell. La web es bastante completa con muchisima información visual y textual de todos los sistemas, así como links a webs relacionadas con los sitemas que se comentan. Una lectura recomendada.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;De: &lt;/strong&gt;&lt;a href="http://javimoya.com/blog/2005/11/29/recorrido-visual-de-todas-las-guis/"&gt;...hmmm...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113506568139594288?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113506568139594288/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113506568139594288&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113506568139594288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113506568139594288'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/historia-de-las-interfaces-graficas-de.html' title='Historia de las interfaces graficas de usuario'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-20011828.post-113502513025927832</id><published>2005-12-19T21:23:00.000+01:00</published><updated>2005-12-20T21:39:29.200+01:00</updated><title type='text'>Presentación</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/1403/899/1600/civic-11.0.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/1403/899/400/civic-11.0.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br&gt;¡Hola! Gracias por leerme!&lt;br /&gt;&lt;br /&gt;Llevo ya unos meses escribiendo &lt;a href="http://digipure.blogspot.com/"&gt;un blog sobre juegos, móviles, japón y varias cosas relacionadas con estos temas&lt;/a&gt;. La verdad es que ha sido una gran experiencia, y me lo he pasado bien escribiendo.&lt;br /&gt;&lt;br /&gt;Pero a veces quería hablar de temas que encajan poco en esos parámetros. También me gusta mucho la programación, la historia de la informática y los videojuegos, desde el punto de vista de su creación.&lt;br /&gt;&lt;br /&gt;Por ello me he decidido a llevar este otro blog sobre estos temas. Aquí pondre todas aquellas noticias o conocimientos que peguen más dentro de estos temas clave (programación, programación de videojuegos, retro-informática...).&lt;br /&gt;&lt;br /&gt;¡Muchas gracias! Por leer todo este royo, y que os entretengais con este blog!&lt;br /&gt;&lt;br /&gt;P.D.: ¿la foto? Es una vista de Tokyo, sino me equivoco tomada desde la noria del Tokyo Dome. Me encantan esta tipo de vistas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/20011828-113502513025927832?l=digipurext.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://digipurext.blogspot.com/feeds/113502513025927832/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=20011828&amp;postID=113502513025927832&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113502513025927832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/20011828/posts/default/113502513025927832'/><link rel='alternate' type='text/html' href='http://digipurext.blogspot.com/2005/12/presentacin.html' title='Presentación'/><author><name>Digipure</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_eascEZ1FCjU/Si36oDob70I/AAAAAAAABJs/7APgHWSRKvc/S220/avatar_158.jpg'/></author><thr:total>1</thr:total></entry></feed>
