User Tag List

Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 15 de 24

Tema: Tutorial de programación para GP32 (SDL o Fenix) en Mac con Xcode 3

  1. #1

    Fecha de ingreso
    Jul 2004
    Ubicación
    Madrid
    Mensajes
    906
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido 2 veces en [ARG:2 UNDEFINED] posts

    Lightbulb Tutorial de programación para GP32 (SDL o Fenix) en Mac con Xcode 3

    Hola
    aunque todavía no están todas las cosas que quería poner, el anuncio de la nueva compo para GP32 (http://compo.chemicalkungfu.de/) me ha hecho decidirme a publicar ya este tutorial y las herramientas asociadas, por si esto hace que más gente se anime a presentar algo.

    El resumen rápido es el siguiente; he preparado unas plantillas de XCode (el IDE de Apple para programar en Mac OS X) y una imagen de disco, que permiten comenzar un proyecto de programación en C (con SDL) o en Fenix para GP32. Además, he preparado también una plantilla de lenguaje para que XCode reconozca la sintaxis del código de Fenix y lo coloree adecuadamente.
    Los archivos se pueden bajar de aquí:

    http://homepage.mac.com/kounch/.Publ...0templates.zip (4,8MB)- Plantillas de XCode. Necesario para Fenix y SDL
    http://homepage.mac.com/kounch/.Publ...parsebundle.7z (16,2MB)- Imagen con compilador y librerías de C y SDL. No es necesario para Fenix


    Instalación
    • Bajar e instalar XCode 3, que viene con los discos de instalación de Leopard, o bien se puede bajar de http://developer.apple.com/tools/download/ (el registro es gratuito).
    • Bajar y descomprimir las plantillas.
    • Copiar el contenido de "Project Templates" en el directorio "/Developer/Library/Xcode/Project Templates/" y el contenido de "Specifications" en el directorio "/Developer/Library/Xcode/Specifications/" (se necesita un usuario administrador).
    • Sólo si se va a trabajar con C (y SDL), crear un entorno de desarrollo como se indica aquí o bien bajar la imagen que he preparado.

    Uso de la plantilla de Fenix

    Una vez instalado todo, cerrar si estuviera abierto XCode y volver a abrirlo. Elegir la opción "New Project" del menú "File", y elegir en la ventana que aparece GP32 y luego Fenix:



    Elegir un nombre para el proyecto y el directorio donde se va a crear.

    Una vez creado, os aparecerá la ventana del mismo:



    Para compilar el programa y probarlo, basta con pulsar en el icono "Build"
    De aquí los tres ficheros que se deben ajustar a vuestro gusto (antes de cada compilación, claro) son los siguientes:

    <
    <nombre del projecto>>.prg C&#243;digo fuente en Fenix.
    <<nombre del projecto>>.bmp Icono que se mostrar&#225; en la GP32
    Makefile Archivo con las reglas para compilar el proyecto poner nombre, etc. Interesante para usuarios avanzados que quieran personalizar m&#225;s su programa.

    Notar, si se hace doble clic sobre el archivo .prg, que XCode reconoce el tipo de archivo y colorea adecuadamente el c&#243;digo:



    Despu&#233;s de haber compilado, se crear&#225; todo lo necesario en el directorio build de la carpeta del proyecto:



    Para probarlo en la GP32, basta con copiar el contenido de GPMM al directorio GPMM de una tarjeta SMC y el contenido de GPSYS al directorio GPSYS de una tarjeta. Se puede usar un lector de tarjetas o, por ejemplo, mi programa iGP32 (http://igp32.sourceforge.net) para copiarlo directamente a la consola usando el cable USB.

    Observar tambi&#233;n que se crea un directorio "Mac", con un archivo test.sh:



    Este sirve para probar (parcialmente) nuestro programa en el Mac sin necesidad de copiarlo a la GP32, hacer doble clic sobre dicho archivo test.sh para verlo.



    Uso de la plantilla de SDL

    Una vez instalado todo, cerrar si estuviera abierto XCode y volver a abrirlo. Elegir la opci&#243;n "New Project" del men&#250; "File", y elegir en la ventana que aparece GP32 y luego SDL.

    Elegir un nombre para el proyecto y el directorio donde se va a crear.

    Una vez creado, os aparecer&#225; la ventana del mismo, similar a la que hemos visto antes, pero esta vez con un programa en C, usando las SDL de Chui.

    Para compilar el programa y probarlo, basta con pulsar en el icono "Build"
    De aqu&#237; los tres ficheros que se deben ajustar a vuestro gusto (antes de cada compilaci&#243;n, claro) son los siguientes:

    <<nombre del projecto>>.c C&#243;digo fuente en C.
    <<nombre del projecto>>.bmp Icono que se mostrar&#225; en la GP32
    Makefile Archivo con las reglas para compilar el proyecto poner nombre, etc. Interesante para usuarios avanzados que quieran personalizar m&#225;s su programa.

    Despu&#233;s de haber compilado, se crear&#225; todo lo necesario en el directorio build de la carpeta del proyecto:

    Para probarlo en la GP32, basta con copiar el contenido de GPMM al directorio GPMM de una tarjeta SMC. Como he dicho antes, se puede usar un lector de tarjetas o, por ejemplo, mi programa iGP32 para copiarlo directamente a la consola usando el cable USB.

    Observar tambi&#233;n que, cuando se compila para Mac OS X, se crea un directorio "Mac", con un archivo <<nombre del projecto>>. Este sirve para probar (parcialmente) nuestro programa en el Mac sin necesidad de copiarlo a la GP32, hacer doble clic sobre dicho archivo para verlo.


    Notas:

    El entorno s&#243;lo se ha probado en un equipo Mac con procesador Intel. No hay ninguna garant&#237;a de que funcione en PowerPC.

    Cuidado al editar el .bmp del icono. No hay que alterar la paleta de color, que es la que usa la GP32. Yo he utilizado Gimp para hacer modificaciones sin problemas.

    El archivo Leeme.rtf adjunto a las plantillas tiene m&#225;s informaci&#243;n sobre la asignaci&#243;n de teclas en Fenix, la distribuci&#243;n exacta y significado de todos los archivos de cada plantilla, copyrights, etc.

    En el directorio /bin de los proyectos de Fenix tambi&#233;n ten&#233;is disponibles las utilidades fpg y map para crear paquetes de archivos de Fenix y mapas. Los archivos que as&#237; se hayan creado, tendr&#233;is que copiarlos en build/GPMM/<<nombre del proyecto/ tanto para poder probarlos en el Mac, como para usarlos luego en la GP32.

    La detecci&#243;n de sintaxis de Fenix es a&#250;n muy b&#225;sica (palabras clave, par&#233;ntesis y poco m&#225;s), pero estoy trabajando a ver si consigo m&#225;s cosas (detecci&#243;n de "funciones", plegado -folding- de c&#243;digo, etc)


    Un saludo
    kounch
    Última edición por kounch; 15/01/2008 a las 00:40

  2. #2

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    22,749
    Mencionado
    226 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,240
    Agradecer Thanks Received 
    1,902
    Thanked in
    Agradecido 1,185 veces en [ARG:2 UNDEFINED] posts
    Madre mía Kounch!!! No sabes lo bien que me viene!! Mil gracias

  3. #3

    Fecha de ingreso
    Aug 2003
    Ubicación
    Madrid (Getafe)
    Mensajes
    13,901
    Mencionado
    48 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5
    Agradecer Thanks Received 
    221
    Thanked in
    Agradecido 164 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    2
    Cita Iniciado por ^MiSaTo^ Ver mensaje
    Madre mía Kounch!!! No sabes lo bien que me viene!! Mil gracias
    Animate Misato y nos presentas algo para la compo de GP32

    Mil gracias Kounch! (yo no creo que lo use, pero si gracias a eso sale algun jueguillo para gp32

    Aiken

  4. #4

    Fecha de ingreso
    Feb 2004
    Ubicación
    Madrid
    Mensajes
    22,749
    Mencionado
    226 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,240
    Agradecer Thanks Received 
    1,902
    Thanked in
    Agradecido 1,185 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por Aiken Ver mensaje
    Animate Misato y nos presentas algo para la compo de GP32

    Mil gracias Kounch! (yo no creo que lo use, pero si gracias a eso sale algun jueguillo para gp32

    Aiken
    Qué va tío, no puedo presentarme. Estoy hasta arriba de curro en el trabajo, además tengo que entregar dos prácticas esta semana y los exámenes a la vuelta de la esquina xDDD
    No tengo un minuto para respirar casi!!

  5. #5

    Fecha de ingreso
    Jun 2004
    Ubicación
    A Coruña
    Mensajes
    427
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    kounch, muchas gracias. Me acabas de hacer un gran favor. Con el Xcode 2.4 me manejo, pero con el 3.0 me cambiaron las cosas de sitio y no me entero. Esto me va a venir genial.

    Gracias de nuevo.

  6. #6

    Fecha de ingreso
    Aug 2003
    Ubicación
    Madrid (Getafe)
    Mensajes
    13,901
    Mencionado
    48 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5
    Agradecer Thanks Received 
    221
    Thanked in
    Agradecido 164 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    2
    Para los Mackeros, deciros que Mr.Spiv (uno de los gurus ya dinosaurios de gp32) programaba con un Mac, asi que si visitais su web seguramente encontreis algo interesante (no lo he mirado pero se que tenia cosas para mac y gp32)

    Aiken

  7. #7

    Fecha de ingreso
    Jul 2004
    Ubicación
    Madrid
    Mensajes
    906
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido 2 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por Aiken Ver mensaje
    Para los Mackeros, deciros que Mr.Spiv (uno de los gurus ya dinosaurios de gp32) programaba con un Mac, asi que si visitais su web seguramente encontreis algo interesante (no lo he mirado pero se que tenia cosas para mac y gp32)
    Aiken
    En efefecto, el icono de estas plantillas proviene de allí. Y la utilidad maclink es parte de la base del programa iGP32. La web sige operativa (http://www.cs.helsinki.fi/u/jikorhon/condev/gp32/) aunque no recomiendo usar el devkit que ofrece en un Mac Intel, ya que hace cosas raras.

  8. #8

    Fecha de ingreso
    Jan 2005
    Ubicación
    Esquina inferior derecha(almeria)
    Mensajes
    798
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Eres el **** amo ; te lo agradezco enormemente, lastima que entremos en los parciales de estas fechas y no le pueda dedicar tiempo ...

    Kounch&#191;Siguiendo el modelo de plantilla que has hecho se podria hacer un entorno de desarrollo de fenix para Dreamcast en Xcode 3.0?seria interesante
    Última edición por jean la montard; 09/01/2008 a las 20:36 Razón: pregunta

  9. #9

    Fecha de ingreso
    Jul 2004
    Ubicación
    Madrid
    Mensajes
    906
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido 2 veces en [ARG:2 UNDEFINED] posts
    Hola

    Cita Iniciado por jean la montard Ver mensaje
    Eres el **** amo ; te lo agradezco enormemente, lastima que entremos en los parciales de estas fechas y no le pueda dedicar tiempo ...

    Kounch¿Siguiendo el modelo de plantilla que has hecho se podria hacer un entorno de desarrollo de fenix para Dreamcast en Xcode 3.0?seria interesante
    Me alegro de que sea útil

    Respecto a lo que comentas, no se cómo funciona Fenix en Dreamcast, pero, si la versión que necesita es la misma (la 0.84b), entonces el .DCB que se genera sería perfectamente aprovechable. Sería entonces cuestión de hacerte una copia, eliminar la parte de GP32 (directorio runtime y el archivo .bmp) de la plantilla, así como del Makefile y, si en Dreamcast hay que hacer algún cambio para instalar un runtime personalizado (como en GP32 que le incorporamos un icono y un nombre), añadirlos así como incluirlo en el Makefile.

    Un saludo
    kounch

  10. #10

    Fecha de ingreso
    Jan 2005
    Ubicación
    Esquina inferior derecha(almeria)
    Mensajes
    798
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Siento abusar de la confianza de los foreros pero esto ya ralla lo absurdo ...

    Si lo he entendido bien los archivos a editar son el test.prg y el test.bmp &#191;No?

    Bien pues al ejecutar un codigo en plan Hola mundo siguiendo un tuto para probarlo pero me manda a la mierda y me dice que no encuentra el test.dcb , concretamente dice:
    Building target "test" of project "test" with configuration "Release"---(1 error)>
    Running external build tool (1 error)>
    mv: test.DCB: No such file or directory

    Y aqui el codigo

    Código:
    Program miprograma;
    
    private
    	Int mivar1;
    end
    
    Begin
    	mivar1=10;
    	while(mivar1<320)
    		delete_text(0);
    		mivar1=mivar1+2;
    		write(0,mivar1,,100,1,"hola mundo");
    		frame;
    	end
    end

    Lo mas curioso de todo es que si dejo el codigo que lleva originalmente el proyecto compila perfectamente y se ejecuta... :S
    Última edición por jean la montard; 09/01/2008 a las 21:41

  11. #11

    Fecha de ingreso
    Jul 2004
    Ubicación
    Madrid
    Mensajes
    906
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido 2 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por jean la montard Ver mensaje
    Siento abusar de la confianza de los foreros pero esto ya ralla lo absurdo ...

    Si lo he entendido bien los archivos a editar son el test.prg y el test.bmp ¿No?

    Bien pues al ejecutar un codigo en plan Hola mundo siguiendo un tuto para probarlo pero me manda a la mierda y me dice que no encuentra el test.dcb , concretamente dice:
    Building target "test" of project "test" with configuration "Release"---(1 error)>
    Running external build tool (1 error)>
    mv: test.DCB: No such file or directory

    Y aqui el codigo

    Código:
    Program miprograma;
    
    private
    	Int mivar1;
    end
    
    Begin
    	mivar1=10;
    	while(mivar1<320)
    		delete_text(0);
    		mivar1=mivar1+2;
    		write(0,mivar1,,100,1,"hola mundo");
    		frame;
    	end
    end

    Lo mas curioso de todo es que si dejo el codigo que lleva originalmente el proyecto compila perfectamente y se ejecuta... :S
    Cambia la línea

    Código:
    write(0,mivar1,,100,1,"hola mundo");
    por
    Código:
    write(0,mivar1,100,1,"hola mundo");
    Te sobra una coma.

  12. #12

    Fecha de ingreso
    Jan 2005
    Ubicación
    Esquina inferior derecha(almeria)
    Mensajes
    798
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Pido disculpas por molestar con un error asin :S si ya funciona perfect

    reitero mi agradecimiento

  13. #13

    Fecha de ingreso
    Jul 2004
    Ubicación
    Madrid
    Mensajes
    906
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido 2 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por jean la montard Ver mensaje
    Pido disculpas por molestar con un error asin :S si ya funciona perfect

    reitero mi agradecimiento
    Hola otra vez
    a raíz de tu problema, he visto cómo hacer que, cuando compiles un programa, aparezcan errores más descriptivos que el que te ha salido. Ahora, en vez del que te ha aparecido, saldría algo así:
    Código:
    Error in file test.prg at line 18: Unknown identifier (",")
    make: *** [build/gpmm/test/test.DCB] Error 2
    He actualizado el .zip con estos cambios, así que basta con que os volváis a bajar las plantillas para tenerlos.

    Un saludo
    kounch

  14. #14

    Fecha de ingreso
    Jun 2004
    Ubicación
    A Coruña
    Mensajes
    427
    Mencionado
    3 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    kounch, un offtopic.

    ¿Sabes de algun tutorial para ir pillandole el truco al xcode 3.0? Manual para torpes, ya sabes.

    Gracias

  15. #15

    Fecha de ingreso
    Jul 2004
    Ubicación
    Madrid
    Mensajes
    906
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido 2 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por cyberbask Ver mensaje
    kounch, un offtopic.

    ¿Sabes de algun tutorial para ir pillandole el truco al xcode 3.0? Manual para torpes, ya sabes.

    Gracias
    Pues no se decirte, yo me las arreglo con la ayuda del programa, Google y lo que hay aquí
    http://developer.apple.com/reference...ols/index.html
    http://developer.apple.com/documenta...section_1.html

Página 1 de 2 12 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •