Archive for the 'Nueva versión' Category

Regalito

Viernes, diciembre 25th, 2009

Acabo de lanzar la versión 2.2.0 de FBZX. Los cambios son bastante sutiles, porque afectan únicamente al emulador del procesador. Ahora la emulación es mucho más precisa gracias a que ya pasa casi todos los tests de compatibilidad de FUSE. Estos tests ejecutan trozos de código y comparan el resultado obtenido con el que debería ser. Quedan sólo un par de detalles con los flags H3 y H5, los cuales no deberían dar problemas a nadie. Entre las correcciones, están las temporizaciones de varias instrucciones que trabajan con los registros IX e IY, y un par de detalles en INI, IND, INIR y INDR.

Por otro lado, hace unas semanas lancé también una nueva versión de Devede, la 3.15. Los principales cambios han sido:

  • Soporte de OGG/Vorbis para el sonido de fondo del menú. Esto ha sido necesario porque en algunas distribuciones recientes falla algo con los MP3. Cambiar a OGG soluciona el problema.
  • Nuevos fondos para los menús: ahora se incluyen varios fondos en una carpeta aparte, por lo que el usuario puede escoger entre ellos. En el futuro espero añadir más.
  • Vuelve a permitir dividir en dos una película al hacer un SVCD o un CVD. Fue un error eliminarlo.
  • Al utilizar la resolución por defecto al crear un DivX, directamente no se toca la resolución ni se añaden barras ni nada. De esta manera es posible recomprimir un vídeo en resolución no estándar conservando al máximo la calidad.
  • Admite la externsión RMVB (RealMedia Video). En realidad ya soportaba RM como extensión de vídeo porque estaba añadida en los tipos MIME de Gnome, pero esta en concreto no, así que por petición popular la añadí “a mano”.

Y otros pequeños cambios menores.

Mal número si no crece

Viernes, mayo 15th, 2009

Me refiero, obviamente, a la versión 13 de DeVeDe, que estaba terminada y prometida desde finales del mes pasado. No la publiqué antes no sólo por movidas personales, sino también porque necesita de la versión 2.16 de GTK, que sólo está disponible en la nueva Ubuntu.

Los cambios son pequeños, muy pequeños: para empezar, unas correcciones en la traducción a griego, y por otro lado la comentada migración de LibGlade a GtkBuilder.

En la próxima versión quiero hacer algunos cambios internos en el código que convierte los archivos, para que sea más sencillo añadir nuevos formatos de salida. También espero añadir nuevas opciones, como por ejemplo permitir hacer DVDs sin menú principal, o añadir por defecto ficheros de subtítulos que haya en el mismo directorio que una película, para poder hacer más cosas con un simple Arrastrar y Soltar. También quiero retocar un poco más la interfaz para que sea más utilizable en equipos con pantallas pequeñas (como los netbooks).

¡Que la disfruteis!

Re-retocando

Martes, enero 27th, 2009

Y no hay dos sin tres, como ya viene siendo habitual en DeVeDe: me acaban de enviar un par de correcciones extra para la traducción francesa, y además me han avisado de que no actualicé el fichero CHANGELOG.DEBIAN en el paquete DEB. Por eso acabo de lanzar DeVeDe 3.12c, que corrige ambos.

Retocando

Lunes, enero 26th, 2009

Al poco de sacar DeVeDe 3.12 me llegó la traducción a italiano, así como un comentario (en la entrada anterior) en la que me comentan un par de errores en la versión francesa. Por eso acabo de sacar DeVeDe 3.12b, añadiendo dichos cambios (no todos, en realidad. En la traducción francesa sólo corregí el detalle de las marcas HTML; el resto esperaré a que me lo envíe el traductor oficial).

DeVeDe again

Domingo, enero 25th, 2009

Tras casi diez días de espera, hoy llegó la última traducción pendiente para la nueva versión de DeVeDe. Los cambios son más bien pequeños (ya llegarán los grandes en la próxima):

El primero es soportar caracteres HTML (<, >, & …) en los nombres de fichero. Hasta ahora no expandía dichos caracteres en los ficheros XML que se usan en DVDAuthor, por lo que daba un error al intentar usar un fichero que contuviese uno de ellos en su nombre.

El segundo es no mostrar la previsualización de la imagen de fondo de menú cuando se escoge un directorio. Esto ha sido necesario para que el programa no se cuelgue al escoger un directorio o un fichero que no es una imagen en la ventana de selección de fondo para el menú del DVD.

El tercero, muy reclamado por los usuarios, consiste en comprobar si existe algún archivo o directorio con el mismo nombre que la imagen ISO (o algún fichero temporal) que se va a crear, en cuyo caso pregunta antes de borrarlo. Yo siempre di por supuesto que la gente no pondría un nombre igual a algo que ya existiese en el directorio final, pero no ha sido así. Dado que DeVeDe tiene que crear, al menos, una carpeta con el nombre genérico (para DVDAuthor) y otros archivos (XML, MPEG, etc) temporales, las probabilidades de colisión son muy grandes. Para resolverlo he decidido que se cree primero una carpeta con el nombre genérico, y meter dentro absolutamente todos los archivos que se generen. Y, por supuesto, preguntar antes en caso de que dicha carpeta exista.

El cuarto y último es una petición que viene de muy antiguo: rehacer la pantalla de selección de tipo de disco. Mucha gente se quejaba de que era muy fea y poco profesional. La he cambiado por un diseño que Jonathan Estrella subió a gnome-look.

Como viene siendo costumbre, está disponible en TAR.BZ2 y en DEB.

Retocando

Viernes, diciembre 26th, 2008

Dos nuevas versiones con pequeños cambios.

El primer programa modificado es FBZX. Me había puesto en contacto con el mantenedor de la página de FBZX en Launchpad  para que actualizase la información, y resultó que era un viejo usuario que ya me había hecho un montón de buenas sugerencias, y como no podía ser de otra manera, me hizo dos más: por un lado, un nuevo icono, y por otro lado, utilizar las imágenes ROM en el mismo formato y directorios que el resto de emuladores.

En efecto, FBZX tenía las imágenes en un sólo fichero por modelo (una imagen de 16Kbytes para el Spectrum original, una imagen de 32Kbytes para cada uno de los modelos de 128K “clásicos”, y una imagen de 64KBytes para el +2A/+3). Sin embargo, el resto de emuladores usan ficheros de 16Kbytes, dividiendo las imágenes en varios ficheros, cada uno con una página.

La razón de hacerlo así es que, de esta forma, no hay que duplicar los ficheros en distribuciones como Debian, en donde éstos están en un paquete separado: SPECTRUM-ROMS. Así, además, se eliminan de un plumazo muchos líos de licencias, porque el paquete FBZX será 100% GPLv3, y el código propiedad de Amstrad estará claramente separado en un paquete distinto, con sus condiciones de distribución bien claras.

El otro programa modificado es mi viejo Z88Transfer. El cambio fundamental es que ahora ya permite transferir ficheros binarios al Z88 en windows. La razón de que fallase es que, por costumbre, abría los ficheros de disco sin forzar modo binario porque en Linux da igual (siempre los abre en binario). Por desgracia en Windows ésto no es así, sino que si no se especifica el modo binario lo abre en modo ASCII, con lo que si aparece un byte 26 creerá que ha llegado al final de fichero y parará.

Otro fallo corregido es que ahora permite enviar ficheros cuyo nombre contenga mayúsculas: por un fallo, convertía el nombre de fichero siempre a minúsculas, con lo que en sistemas de archivos que distinguen unas de otras (como por ejemplo, EXT3), si el nombre tenía alguna mayúscula daría error.

Otro cambio importante es que ahora también permite enviar ficheros que contengan un guión en su nombre, y que controla mejor qué nombres son válidos para el Z88 (en base a la longitud del nombre, de la extensión, etc).

Por último, no muestra los ficheros cuyo nombre termina en ~. Estos ficheros suelen ser copias temporales de ficheros, y de hecho buena parte de los navegadores de ficheros los ocultan por defecto (así tenía la carpeta DESKTOP llena de ellos sin saberlo).

A disfrutarlo con salud. Ah, y que tengais una feliz newtondad y porrompompero año nuevo :)

!Libre!

Domingo, noviembre 30th, 2008

Después de cinco años de vida, FBZX por fin es totalmente libre. Efectivamente, cuando escribí mi emulador de Spectrum, había intentado sin éxito escribir también el emulador de Z80. Por desgracia la tarea era muy pesada (sobre todo por repetitiva y propensa a errores), así que al final decidí usar uno hecho por un programador llamado Marat Fayzullin.

Por desgracia había un serio inconveniente: las condiciones de uso de este código eran incompatibles con la GPL (y mucho). Esta situación nunca me agradó demasiado, pero dado que escribir desde cero y depurar un emulador de un procesador era una tarea demasiado árdua, al igual que intentar adaptar el código de FBZX a otro emulador de Z80 diferente, lo fuí dejando de lado durante años.

Así estuvo la cosa hasta que hace un mes, más o menos, recibí un mensaje de un empaquetador de ArchLinux que se encontró con el problema: en efecto, no podía seguir manteniendo el emulador en el repositorio por culpa de la incompatibilidad de licencias.

Ante ésto decidí que ya era hora de tomar cartas en el asunto, así que me puse a escribir un emulador desde cero. Sin embargo, tenía claro que no podía limitarme a teclear largas listas de sentencias CASE XX:, sino que tenía que emplear una aproximación más inteligente si quería hacerlo en un tiempo razonable y con unas mínimas garantías de éxito. Así, se me ocurrió que podía partir de una lista de opcodes de Z80, la cual podría parsearse con un pequeño programa que generaría por mí el código en C. En efecto, partiendo de una lista como:

    LD A,B
    LD A,C
    LD A,(HL)
    CP (HL)

es posible separar el comando (LD, CP…) de los parámetros (A, B, C, (HL)), y generar automáticamente código que realice las operaciones. De esta forma sólo tuve que escribir una vez el código que implementase la lectura y escritura de cada uno de los 51 posibles parámetros, la comprobación de las 8 posibles condiciones, y el funcionamiento de cada uno de los 81 comandos diferentes, y dejar que el parser se encargase de generar los 1792 opcodes posibles que puede ejecutar el Z80. Además, una ventaja extra es que cualquier error que cometiese sería más fácil de corregir, porque sólo tendría que hacerlo en el parser, y automáticamente se arreglarían todas las instrucciones afectadas.

El resultado es que he necesitado tan sólo unas cuarenta horas netas, repartidas en tres semanas, para escribir desde cero un emulador de Z80 plenamente funcional, y que, además, emula el juego completo de instrucciones del Z80, tanto las oficiales como las no oficiales. Y gracias a él, FBZX ya es completamente libre.

Dado que la idea del parser puede ser útil para hacer otros emuladores diferentes, he tenido especial cuidado en escribirlo de manera que se pueda cambiar fácilmente la lista de comandos, parámetros, etc, y así poder adaptarlo a otros procesadores como el 6502, el 6800, ARM…

Otros cambios

Aprovechando la nueva versión, también añadí soporte para sonido mediante los controladores ALSA, y la emulación del Spectrum 128K español (el original de Investrónica y Sinclair Research). Además, también almacena el nivel de volumen que se está usando, de manera que no haya que ajustarlo cada vez que se ejecute el programa de nuevo. Por último, he cambiado la licencia a la GPLv3.

SuperShow

También aproveché para sacar una pequeña revisión de SuperShow. El único cambio que hice fue traducir las variables de la plantilla que se usa para generar los scripts de Flash, de manera que si alguien que no hable castellano quiere mejorarla, lo tendrá más fácil.

Lapsus linguae

Miércoles, agosto 27th, 2008

Acabo de lanzar la versión 3.11b de DeVeDe que corrige un par de fallos en las locales EL, SV, SK y PL. En las dos primeras el fallo impedía que se mostrasen los iconos en los botones; en la tercera una frase no aparecía en negrita; y en la cuarta, la más grave, directamente no arrancaba el programa.

También actualicé el paquete DEB, como debe ser, y añadí una respuesta extra en la FAQ sobre como hacer DVDs sin menú.

DeVeDe 3.11

Domingo, agosto 24th, 2008

Acabo de lanzar una nueva revisión de DeVeDe, la 3.11. Los cambios en sí son pocos, aunque necesarios, por tratarse de algunas correcciones.

El primer cambio importante es de apariencia: en efecto, hubo varias quejas en la zona de comentarios de GnomeFiles sobre ella, y me dieron varias sugerencias interesantes, entre ellas limitar el tamaño vertical de las ventanas para que se pueda utilizar cómodamente en equipos con resolución vertical de 800 pixels (como muchos ultraportátiles).

Otro cambio es que ahora puede trabajar indistintamente con mkisofs o genisoimage, con lo que no habrá problemas para usarlo en el futuro en el caso de que alguna distribución se niegue a instalar el primero o hacer un enlace al segundo (para los que no sepan de qué va la movida: el autor de mkisofs cambió la licencia de algunas partes a CDDL, que es incompatible con la GPL, ante lo que la gente de Debian decidió coger la última versión GPL y hacer un fork). Esta corrección la he extendido al paquete DEB, en donde exijo uno cualquiera de los dos paquetes para que funcione.

Respecto a la corrección de errores, el primero es limitar el número de archivos que se pueden añadir a un DVD a 61. En efecto: el estándar de DVD sólo permite un máximo de 128 comandos en cada título. Dado que el código que añado necesita dos comandos por cada fichero que se añada, además de 6 comandos extra para inicialización, ese es el número máximo que se puede meter. En el futuro espero poder cambiar el sistema para elevar el máximo a 99 archivos, igual que en VCD, sVCD, CVD y DivX.

Otro error corregido es que no recuperaba las opciones del menú al cargar una estructura de disco por culpa de un despiste tonto. Ahora ya lo hace. Ahora también muestra la fuente en el botón para escoger el tipo de letra del título del menú. Por último, al previsualizar el menú en formato NTSC usa una ventana un poco más pequeña para que no quede la ventana medio vacía.

Actualización: acabo de subir la revisión 2 del paquete DEB, en donde quito la dependencia de ImageMagik. Esto me pasa por reciclar los ficheros de control de paquetes viejos O:-)

DeVeDe 3.10

Sábado, agosto 16th, 2008

Por fin. Tras un par de meses en espera por fin he tenido tiempo de darle los últimos retoques a la versión 3.10 de DeVeDe. Y además, no sólo en formato TAR.BZ2, sino también en forma de paquete DEB, para instalarlo directamente en sistemas con Ubuntu o Debian.

La principal novedad está, sin duda, en el sistema de menús: por fin he eliminado el límite de doce títulos por disco. Ahora puede haber hasta 90, mostrando un máximo de diez por menú y añadiendo flechas para pasar al siguiente o anterior. Los usuarios de grabadoras de doble capa ya no tienen queja.

Otros cambios en los menús permiten ahora añadir un título, música de fondo, mover a la derecha o a la izquierda los textos, o añadir sombras a las letras (del color que se quiera). Con todos estos cambios creo que el 95% de los usuarios no necesitarán irse a un editor externo como QDVDAuthor, DVD Styler o Polidori.

Otro cambio que mejorará la calidad de los discos es que cuando el vídeo original es de 24 fotogramas por segundo y se quiere hacer un disco PAL (a 25 fotogramas por segundo), en lugar de repetir un fotograma cada 24 (lo que produce un molesto efecto, como si el vídeo fuese a saltos) lo acelera un 4%, igual que se hace en los estudios de televisión. El único inconveniente es que el sonido también se acelera, con lo que un oido entrenado notará que todo suena un poco más agudo y rápido que en el vídeo original. Afortunadamente este efecto normalmente no se nota, salvo, quizás, en musicales. Al crear un disco NTSC a partir de un vídeo a 24fps este problema no existe porque se utiliza la opción telecine de Mencoder, que suaviza las transiciones al repetir fotogramas.

Otra novedad interesante es la ayuda contextual: en las ventanas principales hay un botón de ayuda. Al pulsarlo se desplegará la ayuda para esa ventana concreta, pudiendo ir en cualquier momento al índice, por supuesto.

Por último, se ha simplificado aún más el uso. Ahora se escoge en la ventana principal el tipo de disco que se va a crear (PAL o NTSC), y los nuevos vídeos que se añadan, así como el menú, estarán en dicho formato. Aún así, es posible cambiar de manera individual el formato de cada vídeo si se desea. También se han ocultado las opciones avanzadas de la ventana principal, aunque siguen estando disponibles simplemente pulsando un botón.

El resto de cambios son pequeñas correcciones de errores.