El sitio personal de David Colmenero (D_Skywalk)

Posts tagged with 'gph'

Actualizado el tutorial de la Blanquita

Hace unos días anibarro me pidió que resubiera el pequeño parche que preparé para que el GEEPEE (Emulador de GP32 para PC), funcionara con las librerías de MRMirko.

Bueno pues aun con cierto retraso, por culpa de la aglomeración de trabajo de los últimos días, he añadido el fichero junto con un pequeño “ejemplo makefile” para facilitar su uso, al artículo sobre el entorno de programación para GP32 bajo Windows.

Un Saludo! Smiley: guay!


Como unir Eclipse y nuestra negrita!

Aunque personalmente siga usando Kdevelop para desarrollar en GP2x, estoy empezando a usar Eclipse para programar en otros lenguajes y me va gustando, asi que previa petición del foro de gp32spain, vamos a explicar como configurar un entorno de desarrollo para GP2x bajo Linux usando un proyecto que he creado como base común.

Como características el proyecto incluye un test de ejemplo y permite crear ejecutables de SDL SDL_mixer SDL_Image para GP2x (Debug/Release) y Linux (Debug).
Puede ser Fácilmente ampliado, ver más abajo.

Pasos previos

Lo primero que necesitamos es Eclipse, para ello nada más fácil que ir al “Gestor de paquetes Synaptic” e instalarlo, una vez instalado entraremos por primera vez en Eclipse, apareciendo una ventana que nos pedirá la ubicación de la carpeta de trabajo (donde descansarán nuestros proyectos), la seleccionamos y listo Smiley: contento!

El siguiente paso previo que se requiere es la instalación del plugin que nos permitirá usar la configuración “custom” que he preparado para la GP2X. Si seguís estos pasos no tendréis problema.
Pulsad en: HELP -> Software Updates -> Find and Install… -> Search for new features -> New Remote Site.

Ahora en Name ponemos “CDT” y en URL:
“http://download.eclipse.org/tools/cdt/releases/callisto”
Pulsamos en “Finish”, para que aparezca la lista de mirrors (Rec. Uk).
Finalmente seleccionamos las actualizaciones, esperamos a que se instalen y permitimos que Eclipse se reinicie. Como último paso debemos asegurarnos que *la perspectiva C/C * está seleccionada (Window->Open perspective->Other).

Instalando el proyecto base de GP2x

Una vez descargado (ver abajo), lo descomprimimos en una carpeta que no se encuentre dentro de nuestro directorio de trabajo seleccionado en Eclipse. Por ejemplo mi directorio de trabajo en eclipse es “/home/david/desarrollo” y he descomprimido el fichero en “/home/david/descargas/gp2x”, espero que haya quedado claro, por que es importante Smiley: guiño

Bien, pues empieza el show: File -> New -> Project… Y seleccionad la opción tal y como aparece en la imagen.

Aparece el diálogo para importar nuestro proyecto de GP2x en Eclipse, seleccionad [Browse]

Seleccionamos la carpeta descomprimida del proyecto que acabamos de bajar y pulsamos [Aceptar]
Imagen del articulo

Si todo ha ido bien debería de aparecer algo similar a esto…
Imagen del articulo

Que no se os olvide marcar “Copy project…”
Imagen del articulo

Y poco más, al pulsar [Finish] el proyecto nos aparecerá en la lengüeta de proyectos Smiley: contento!

Modificando el proyecto base de GP2x

Lo más normal es que cada desarrollador use las herramientas (toolchain) que más le apetezcan. Yo en esta ocasión lo he configurado para que funcione de primeras con el DevKit de Uncanny, pero para que ninguno se tenga que complicar mucho, si desea usar su entorno de desarrollo con Eclipse, dejo unas instrucciones, que seguro también valdrán para que los desarrolladores de Windows puedan adaptar el proyecto base.

Pulsando con el botón derecho encima de nuestro nuevo proyecto de GP2x, seleccionad “Properties” (propiedades) y C/C Build…
Imagen del articulo
En el diálogo que aparece por defecto podemos modificar muchos aspectos como agregar librerías o cambiar las opciones de compilación.

Pero para cambiar cosas como el prefijo del compilador (prefix) o la ruta de trabajo he preferido usar variables de entorno que tenéis a vuestra disposición desde la lengüeta “Environment”…
Imagen del articulo

Como se puede observar con cambiar GPPATH y/o PREFIX-TOOL, lo tendríais configurado para la mayoría de entornos de desarrollo Smiley: contento!

Por Hacer

Seguro que algún fleco se me ha quedado suelto, así que iremos mejorando este tutorial, poco a poco Smiley: Muy contento!
La verdad que lo suyo sería hacer una especie de perspectiva para desarrollar en GP, y que pudieramos crear también ejecutables de GP32, etc…

Bueno, es un comienzo Smiley: guiño

gp2x-eclipse-templates-linux

Subido: 2010-05-15 00:48:00 Eclipse template GP2x for Linux
Version 0.1 Beta

libReadINI - reads your INI files!!

LibReadINI es librería que lee ficheros INI, hecha completamente en C, lo que permite ser usada en proyectos de GP32 sin problemas Smiley: Muy contento! Aunque evidentemente puede ser usada en cualquier otra plataforma que soporte C, como proyectos para programas en MSDOS u otros pequeños sistemas embebidos.

Español

See the english version of this text below

La librería no tiene dependencias externas de SDL, libxml o similares, como la librería “oficial” de lectura de INIs que por ejemplo se usa en GP2X. Y lo mejor pesa muy poquito -unos 6kb- y es bastante rápida, aunque seguro que se podría mejorar, así comparte tus mejoras Smiley: guiño

La librería lee dos tipos de ficheros INI tipo, M$ (los que todos conocemos), o tipo “conf” de linux.

Un fichero INI podría ser algo como esto:

[General]
    name = Junk Config File Test
    version = 2

[Mode]
    StrictMode = yes
    useflags = no
    phase = 5

[OtherSection]
    name = Hello

[AnotherSection]
    name = Bye

Ejemplo Práctico

Su uso es muy simple:
- Primero abrimos el fichero, que podría ser algo como:

if(!cfgOpen("./configs/ejemplo.ini", MS_STYLE))
    {
       //no encontre el fichero
    }else
    {
        //fichero leido!
    }
  • Una vez abierto, hay que elegir una sección que la librería se encargara de buscar. Para seleccionar una sección seria:

    if(cfgSelectSection(“General”)) { //haz lo que sea… }else { //pues se ve que no la encontro!!! xD }

  • Una vez seleccionada se pueden pedir datos de la misma usando funciones para cadenas, números y booleanos… unos ejemplos finales:

    currentVersion = (Uint8) cfgReadInt(“version”, 1);

Ex: Lee la variable versión del fichero INI y la almacena en nuestra variable, currentVersion.
(El numero del final es un valor por defecto, por si no lo encuentra, etc.)

Finalmente cuando hemos terminado de trastearla debemos hacer, simplemente:

cfgClose();

La ventaja de usar ficheros INI es que puede hacer cambios en las configuraciones de sus programas y ver los cambios sin que se requiera una nueva compilación. Y si luego lo necesita siempre podría encapsular todo el código “INI” en un fichero binario… Smiley: guiño

Para acceder a más ejemplos vea la documentación de la libreria


English

LibReadINI is a library to read INI files, developed in C code.

Now you can read your game/program INI files on your GP32 and other embeddeds platforms that can run a C code!! Smiley: Muy contento!

Dont have any external dependencies (SDL, libxml, etc…)
Little -6kb- and quick code, but if you can make a better code, share your changes Smiley: guiño

Examples and more info on the library`s documentation


Is used by… / usada por…

If you used this lib email me, thanks!
Si usas esta librería mándeme un email, gracias!

libReadINI

Subido: 2010-05-15 00:43:00 Primera versión publica para GP2x/Gp32 o su tostadora.
[b]libReadINI 0.8f[/b]

First Test release for GP2x/Gp32 or your toaster.
[b]libReadINI 0.8f[/b]

(License changed to LGPL, thanks Uncanny)


ScummVM: GP2X Skywalker Port

ScummVM es un interprete de aventuras y esta que os disponéis a disfrutar en vuestra GP2x, es una versión basada en el port inicial de Dj Willis.

Esta es mi primera versión, que se podría considerar como beta; pero antes de dar ese paso, me gustaría recibir vuestros comentarios de como os van los nuevos cambios Smiley: Muy contento!

Español

See the english version of this text below

Novedades – Alpha 8a

  • MAS ESTABLE, basado en el código final del ScummVM 0.9.0 Smiley: contento!
  • MEJORADO el codigo del ratón – Ahora el ratón no se para totalmente cuando cambias de dirección Smiley: Muy contento!
  • MEJORADO el codigo de sonido – Probando una nueva configuración (enviandme vuestros comentarios).
  • AÑADIDO un nuevo código para el “Aspect Ratio” – He añadido un nuevo código al gui, para que el usuario pueda regular cómodamente si quiere activar la corrección de aspecto (Aspect Ratio) o no.
    (Este código no existe en el scummvm nuevo, lo he creado hace un rato para la gp2x xD)
  • Pequeños cambios que ya no recuerdo :-? (heheh)
  • Nuevas Librerias soportadas:
    • Raw audio.
    • MP3 audio.
    • OGG Vorbis audio.
    • Mpeg Videos (Broken Sword 1 y 2)

English

ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. This is a test release of ScummVM for the GP2X and it is based on Dj Willis previous port.

This is my first release, please send me your coments Smiley: Muy contento!

News – Alpha 8a

  • BASED on ScummVM 0.9.0 stable code Smiley: contento!
  • FIXED mouse code – Don`t more stops when you change your direction Smiley: Muy contento!
  • FIXED sound code – Trying with a new configuration (please send me your feedback).
  • ADDED new Aspect Ratio code – I add a new code, now you can do change on/off the aspect ratio correction.
    (This code no exist in scummvm code, is been created by me Smiley: Muy contento!)
  • Little changes that i dont remember now :-? (heheh)
  • New supported Libs:
    • Raw audio.
    • MP3 audio.
    • OGG Vorbis audio.
    • Mpeg Videos (Broken Sword 1 and 2)

ScreenShots!!!

Imagen del articulo

ScummVM for GP2x Alpha-8a (sky)

Subido: 2010-05-15 00:26:17 Primera version publica para GP2x.
(Incluye mi parche que puede ser directamente aplicado al fuente del ScummVM 0.9.0)

First Test release for GP2x.
(My ScummVM 0.9.0 source patch is incluyed)