Posts Tagged ‘PAlib’

h1

Isométrico para nds (versión 2)

junio 24, 2009


He desarrollado un programa para dibujar piezas sencillas en perspectiva isométrica para la nintendo DS (nds), pensado principalmente para ser usado por alumnos de primer ciclo de la ESO (obviamente extensible a cualquiera que le sea útil, por supuesto), tanto para plástica como para tecnologías. El programa se puede descargar desde aquí. (Se descomprime el fichero y luego se cambiar la extensión .nnn a .nds). Se corresponde con una versión nueva de una entrada anterior en la que aparecía solamente la red isométrica con la que podíamos ir dibujando con el Stylus (ver versión anterior).

Las mejoras de esta versión son básicamente dos:
1.- con el PAD seleccionamos diferentes conjuntos de vistas (alzado, planta y perfil), hasta un total de 10 piezas sin contar con el ejemplo.
2.- con la tecla A aparece la solución correcta del dibujo.

Una aplicación parecida pero para ser usada vía web con un navegador y que programé en Flash hace tiempo, también la tienes en este enlace.

PD: en la zona propia nds tengo algunos otros programas desarrollados para la nintendoDS (nds).

Anuncios
h1

Convirtiendo diapositivas de PowerPoint para ver en la NDS

junio 18, 2009

Para pasar las diapositivas de PowerPoint a la Nintendo DS (sin animaciones ni efectos, sólo las imágenes tal cual) he creado un archivo BAT (apoyado en otros dos archivos) que crea el código generando el archivo main.c que se puede compilar directamente con PALib (se necesita tener instalado PALib). Eso sí, previamente habría que hacer una serie de pasos que paso a detallar:

1.- Conversión de diapositivas de PowerPoint a un conjunto de imágenes jpg:
Convertimos nuestra presentación de PowerPoint a un conjunto de imágenes jpg, esto se hace directamente con Powerpoint siguiendo este menú: Archivo –> guardar como… –> Guardar como tipo y aquí elegimos Formato de Intercambios de Archivos JPEG (*.jpg). Aquí nos pregunta el programa ¿Desea exportar todas las diapositivas de la presentación o sólo la diapositiva actual? y elegimos Cada diapositiva.

2.- Conversión de las imágenes jpg a imágenes jpg de tamaño adecuado para la NintendoDS: 256×192 píxeles.
Para ello podemos elegir cualquier programa de tratamiento de imágenes, pero yo recomiendo IrfanView porque podemos hacerlo todo de una tacada y cambiar los nombres a la vez. Con Irfanview seguiríamos el menú Archivo –> Convertir/Renombrar por lotes. Dentro de esta ventana elegimos Convertir por lotes: renombrar los archivos resultantes, en Modelo de nombre elegimos imagen# (esto nos generará archivos con nombres imagen1.jpg, imagen2.jpg, etc.). En Opciones avanzadas seleccionamos CAMBIAR DE TAMAÑO y cambiar los dos lados a Ancho 256 y alto 192 (en píxeles).

3.- Copiar las imágenes al directorio data de palib.
Si todo ha ido bien tendríamos tantas imágenes jpg como diapositivas de tamaño 256×192 pixeles y que se llaman imagen1.jpg, imagen2.jpg, … imagen10.jpg, imagen11.jpg… Estas imágenes sencillamente las copiamos en el directoria data de palib (palib/template/data). Nota: el compilador distingue minúsculas y mayúsculas, así que hay que guardarlo todo en minúsculas (incluída la extensión .jpg).

4.-Creación del archivo main.c usando los archivos por lotes.
Esta parte es muy fácil, pues no hay más que descargar este fichero comprimido (actualmente no disponible)y descomprimirlo. Aparecerán 3 ficheros (main.old, diapositivas.bat y pp2nds.bat). Uno es un archivo main.old que no hay que hacerle nada. Sólo hay que modificar el archivo diapositivas.bat. Para ello con el botón derecho elegimos editar y escribimos el número de diapositivas de nuestra presentación en el segundo renglón set diapositivas=10, cambiando el número 10 por el número de diapositivas de nuestra presentación. Hecho esto, sólo nos queda ejecutar el tercer archivo: pp2nds.bat haciendo doble click sobre él. Si todo va bien creará un archivo main.c con el código para ser compilado.

5.- Cuestiones finales
Sólo nos queda copiar el archivo main.c a la carpeta source de palib (palib/template/source) y ejecutar el fichero build.bat que nos compilará el proyecto y obtendremos el fichero template.nds y… ya estaría, solo queda probarlo.

Ejemplo
A modo de ejemplo he compilado una presentación que tengo subida a SlideShare de un trabajo de un alumno de hace años. En la nds se pasan las diapositivas con el PAD (izquierda diapositiva anterior y derecha diapositiva siguiente).

Código del archivo diapositivas.bat
Realmente el que crea el código para main.c es este archivo por lotes cuyo código (en BAT) es el siguiente:

Read the rest of this entry ?

h1

Telesketch para NDS

junio 17, 2009


He implementado usando Palib un sencillo telesketch para la NDS. El telesketch se puede descargar desde aquí. También puedes descargarte el código fuente (aquí) por si te interesa. Este código (el correspondiente al archivo main.c) es el siguiente:

Read the rest of this entry ?

h1

Echo y los caracteres especiales de redirección

mayo 18, 2009

Tengo en mente hacer un pequeño archivo por lotes (batch) para poder transformar un conjunto de imágenes (que podrían provenir de una presentación en Powerpoint) en un archivo que lea la NintendoDS (moviéndo las imágenes con el Pad) después de haberla compilado con la librería PALib.

Y me encontré con un “pequeño problema”. Quiero que el fichero por lotes genere el código en C de PALib y para ello ha de escribir alguna línea como #include <PA9.h> y esto tiene el ligero problema de que para la función echo, los símbolos “<” y “>” son de redirección y no son fácilmente imprimibles en un fichero.

Después de mucho buscar, encontré esta solución en esta web: if you wish to include any of the redirection symbols (<, >, >>, or pipe ( | )) in message, they must be enclosed in inverted commas. These inverted commas are, of course, displayed in the ECHOed message(…) a way to avoid the quotation marks being displayed by following each mark with a backspace character (ASCII 8, Ctrl-H). To include such a character you have to be writing the batch file with a text editor such as EDIT that allows the entry of such “special” characters – in the case of EDIT, you would enter Ctrl-P, Ctrl-H. For some reason, the backspace does not work if it is the last character on the line – it must be followed by something – even a space.

Así que nos fuimos al símbolo de sistema, invocamos el programa EDIT, escribimos echo #include “<“PA9.h”>” con los Ctrl+H después de cada , pero… no funcionó.

Entonces manteniendo el mismo espíritu hicimos algo sencillo: escribimos echo #include “_<“_PA9.h“_>”_, es decir, añadiendo un caracter cualquiera después de las comillas, ejecutamos un editor hexadecimal, y cambiamos el código ASCII de este caracter _ por el código ASCII del símbolo de borrado: el 08. Y así… funcionó…

Dejo el fichero “tratado” como ejemplo para descargar desde aquí. Si se edita con el Bloc de Notas, el carácter 08 ASCII aparece como un cuadrado.

h1

Aplicación de dibujo isométrico para nds

mayo 14, 2009


Probando PALib para la consola de Nintendo nds, he programado esta sencilla aplicación para dibujar piezas simples en perspectiva isométrica. (Más información sobre programar nds en nuestra sección). El código fuente es el siguiente:

Read the rest of this entry ?

h1

Minijuego para nds: “disquete volador”

mayo 12, 2009


Probando PALib para la consola de Nintendo nds, he programado este minijuego consistente en tener que pulsar sobre el disquete que se mueve. (Más información sobre programar nds en nuestra sección).
El código fuente es el siguiente:

Read the rest of this entry ?

h1

Retro frontón para NDS usando PALib

mayo 10, 2009


Usando PALib para programar la Nintendo DS, he realizado este “frontón retro” usando caracteres ASCII. El código fuente del programa es el siguiente:

Read the rest of this entry ?