Bueno este va a ser un minituto para que cualquiera que quiera pueda empezar a programar facilmente para GP2X bajo linux
Este tutorial supone que tienes instalado ya tu entorno de trabajo (o toolchain) y que el siguiente paso que quieres dar es programar algo y ver como queda
Una vez arrancado KDevelop (por ejemplo en su version C/C ) vamos a proyectos y nuevo proyecto:
C -> GP2X
Ponemos el nombre de nuestro futuro proyecto y siguiente
Ahora personalizaremos nuestro proyecto preparando las plantillas que se incluiran en cada fichero del proyecto.
Una vez esta todo creado aparecera el entorno de trabajo de nuevo con un pequeño ejemplo, lo siguiente sera seleccionar desde el menu de Proyectos el tipo de fichero a generar, tal y como veis en la imagen inferior:
Aunque haya una opcion para GP32 esta aun esta en desarrollo, si la conseguis modificar para que os genere binarios de GP32 enviadme los parches para que los publique
Ahora solo queda generar el ejecutable deseado pulsando F8 o desde el menu:
CONSTRUIR -> CONSTRUIR PROYECTO
Momento en el que aparecera un pequeño monitor que nos ira ofreciendo la informacion sobre la construccion de nuestro proyecto…
Y listo! ya tenemos nuestro ejemplo compilado, el ejemplo que trae por defecto necesita que copieis un BMP en la misma carpeta que el ejecutable. Si quereis verlo… ¡a que esperais!
Rosa, Rosa, Rosae…
UPDATE: Como Documentar y hacer uso de librerías
Para animar un poco más a los indecisos, he preparado un ejemplo que espero que muestre, aunque sólo sea superficialmente, la potencia y profesionalidad que puede dar a nuestros proyectos Kdevelop.
Este ejemplo, que es una modificación del test basico de GP2x y Linux, una de las intenciones es que podáis ver lo fácil que es documentar completamente vuestro código (usando la opcion Build API Documentation), para ello Kdevelop usa doxygen, que permite generarla automaticamente en: PDF, HTML, RTF, XML… Os dejo un ejemplo de la documentación HTML que genera.
Además este ejemplo hace uso de librerías para que también comprobéis otras formas de trabajo; subarrendando tareas a las diferentes partes de vuestro proyecto, como: una libreria gráfica, de personajes, IA, …
Pulsad aquí para bajar el ejemplo de uso de librerías y documentación.
Para instalarlo sólo descomprimidlo en vuestra carpeta de desarrollo y abrid el proyecto desde Kdevelop.
Notas para Usuarios Avanzados
Si quereis usar vuestro toolchain podeis cambiar las opciones de compilacion desde el menu:
PROYECTO -> OPCIONES DEL PROYECTO -> OPCIONES DE CONFIGURE
Desde el menu despegable de Configuracion seleccionais la configuracion a cambiar:
Por ejemplo si vuestro PATH es diferente aqui tendriais seleccionada la parte a cambiar…
Si nuestro compilador tuviera un nombre diferente al oficial (arm-gp2x-linux-gcc) desde la lengüeta C podreis renombrarlo:
Listo, espero que os sea util y lo disfruteis
PituKa es un emulador para la consola portátil Gamepark GP32 del Amstrad CPC6128.
Mi deseo es que todos disfruteis con el emulador y los que no conozcan esta maravillosa maquina, puedan disfrutar de ella, no hay mas que ver que hoy dia aun siguen saliendo remakes de juegos creados hace muchos años, nada mas ver los lanzamientos de GBA de remakes de NES…
Donwloads Abajo
English
PituKa is an Amstrad CPC6128 emulator for the Gamepark GP32 handheld system.
My hope is that you enjoy this emulator and people who do not know this marvellous machine can enjoy it, even today there are new remakes releases, you only have to llok at the NES remakes released for the GBA.
Donwloads Below!!
ScreenShots!!!
Subido: 2010-05-15 00:09:14 La última versión oficial de PituKa para GP32.
(Basada en Caprice 4.1.0)
- 133mhz - 156mhz -
The Lastest oficial Pituka version for GP32.
(Based on Caprice 4.1.0)
Subido: 2010-05-15 00:19:00 Iconos para la version de GP32 del Pituka, realizados por Pelayo :D
Icons for the GP32 version of Pituka, created by Pelayo :D
Subido: 2010-05-15 00:20:00 Source Code (MiniSDK)
Subido: 2010-08-19 04:39:06 Pituka Relase for Nintendo Wii
aka Wiituka
(Beta Version)
Subido: 2010-08-19 04:40:17 Pituka Relase for Nintendo Wii
aka Wiituka
(Stable Version)
Subido: 2010-08-19 04:41:20 Wiituka - Scenery 2009 Release
(With Domain Public Rom Pack)
Subido: 2010-08-19 04:45:02 Source Code (private SVN)
for Dingux
Subido: 2010-08-19 04:46:00 Pre-release oficial de PituKa para Dingoo Linux.
(Basada en Caprice 4.1.0)
Oficial Pre-release of Pituka for Dingoo Linux.
(Based on Caprice 4.1.0)
Bien lo primero que os preguntareis seguramente es:
¿Para que sirve un Makefile?
Un Makefile contiene todos los pasos para generar (compilar) nuestro programa. Un programa se compone basicamente de librerias (que son un conjunto de utilidades que facilitan nuestra labor), nuestros ficheros del programa y de como debe “montar” nuestros ficheros (optimizaciones).
Quiero preparar mi proyecto ¿que ficheros necesito para compilarlo?
Lo mejor que podemos hacer es tomar como base alguno de los ejemplos que tenemos en el directorio de GP32, por ejemplo: FONTS.
Lo primero sera crearnos un directorio para nuestro proyecto, que nosotros aqui llamaremos EJEMPLO. Luego de FONTS vamos a coger prestado: “Makefile.win32″, “Makefile”, “crt0x_gp32.s” y “arm-gp32bin.x”.
Ya lo siguiente que necesitariamos seria que codearas un poco y lo guardaras con: “ejemplo.c” (o con el nombre que tu quieras).
¿que necesito conocer para compilar un programa sin problemas?
Bien una vez tenemos nuestro programa codeado y el directorio preparado, necesitamos configurar nuestros MAKEFILEs para que compilen nuestro programa; ya sea para GP32 o para testearlo en Windows.
Tenemos: “Makefile” que son las ordenes/instrucciones necesarias para GP32 y “Makefile.win32″ que seria para generar la version de Win32 (windows).
¿Como creo mi Makefile propio?
Bien para compilar cualquier programa basico solo necesitas modificar 2 secciones de cualquiera de estos dos MAKEFILEs:
Para el Makefile.Win32:
TARGET = fonts.exe
[...]
.CFILES = fonts.c
En CFILES debeis poner todos los ficheros que componen vuestro programa, en el nuestro seria solo “ejemplo.c” y en TARGET sera el nombre final que tendra el programa.
Quedando algo como:
TARGET = ejemplo.exe
[...]
.CFILES = ejemplo.c
Para GP32 tenemos alguna distincion pero que es practicamente igual, solo que quizas esta menos comodo…
Para el Makefile (GP32):
MAPFILE = fonts.map
TARGET_ELF = fonts.elf
TARGET_BIN = fonts.gxb
TARGET_FXE = fonts.fxe
[...]
.CFILES = fonts.c
De aqui tenemos que cambiar el nombre de todos los TARGETs de arriba, substituyendo “font” por nuestro nombre, nosotros como de costumbre seguiremos con “ejemplo”, lo demas es como siempre en CFILES poneis todos los “.c” que componen vuestro programa
¿Como compilo para GP32 o para Win32?
Se compila para GP32, usando “make” y “make clean” para limpiar/borrar todo.
Se compila para Win32, usando “make -f Makefile.Win32″ y “make -f Makefile.Win32 clean”, para limpiar/borrar todo.
TODO: Como usar librerias?
Un Saludo y espero que os resuelva algunas dudas, y podais empezar un proyecto básico.