[DS] Configurar Visual Studio .Net 2003, para desarrollar en GBA/NDS

Saludos a todos. Lo que a continuación expongo es un tutorial muy sencillo para poder trabajar con Visual Studio .NET 2003 para desarrollar aplicaciones para la GBA y NDS. El porque de hacer este tutorial, es debido a que despues de bajarme el kit de desarrollo de DevkitPro ( Version 1.1.0 ) , no estaba conforme con el Programmers Notepad (sibarita que es uno) teniendo el Visual Studio. Como me llevo algo de tiempo encontrar la información para ajustarlo, he pensado hacer este tutorial para alguien que quiera empezar y lo tenga más fácil.
La forma que he seguido para hacer este tutorial, es a traves de un ejemplo. En concreto es el tipico Hola Mundo!!, esta hecho para la GBA pero todo lo puesto es aplicable para preparlo para NDS.

Así pues empezemos:

1º Paso)
Como he puesto arriba lo primero es bajarse el kit de desarrollo de DevkitPro ->http://prdownloads.sourceforge.net/devkitpro/devkitProUpdater-1.1.0.exe?download

El propio instalador, nos bajara los archivos que necesitamos para trabajar y se encargara de configurar el entorno. Por defecto se instala en C:\DevKitPro , si quereís cambiar el directorio adelante, pero recomiendo que en el nombre del directorio no dejeis espacios .

2º Paso)
Supongo que ya tendreís instalado Visual Studio .NET. Así pues vamos a empezar su configuración.
Iniciamos el programa y vamos al menú: Herramientas->Opciones, Dentro del cuadro de Opciones, bajamos a la carpeta Proyectos y dentro de proyectos a Directorios de VC++
Desde aqui le daremos al icono de la carpeta, para crear 3 entradas nuevas que seran las correspondientes a los directorios Bin, de DevkitARM, msys y DevkitARM\arm-elf. Al final nos queda como se puede apreciar en la siguiente imágen

Imagen

3º Paso)
Ahora toca la creación del proyecto, vamos al menú: Archivo->Nuevo->Proyecto
El tipo de proyecto que debemos elegir es: Proyecto de archivo MAKE, que se encuentra dentro de Proyectos de Visual C++\General. Se puede ver en la siguiente imagen

Imagen

Depues de elegir la ubicación y un nombre nos aparecera un asistente para aplicaciones MAKE, de las opciones que hay elegiremosConfiguración de la aplicación y de momento lo unico que vamos a modificar es el campo de texto resultados: Cambiaremos la extensión de .exe a -> .gba ó .nds (segun corresponda, en este ejemplo .gba)

Imagen

4º Paso)
Ya tenemos nuestro proyecto, ahora necesitamos introducir los elementos necesarios para que nos compile. En la version que nos hemos bajado de DevKitPro, tenemos una carpeta de ejemplos, dentro de esos ejemplos tenemos unas plantillas de makefile (un makefile es un archivo de texto, que le da instrucciones al sistema de como debe construir (compilar, linkar, etc..), para entender los makefiles haría falta otro tutorial y no es el proposito de éste). Como decía vamos a la carpeta de ejemplos y copiaremos el makefile que viene de ejemplo dentro de las plantillas de gba. A parte creamos 3 ficheros .bat con los siguientes nombres: compila.bat , limpia.bat y recompila.bat. Estos archivos serviran para llamar al comando "make".
Compila.bat : llama a make
Limpia.bat: llama a make clean
Recompila.bat: llama a make clean, llama a make
Cogemos el makefile y los 3 ficheros .bat y los copiamos a la carpeta donde esta creado el proyecto.
Adjunto teneís un rar, donde esta todo lo que digo, simplemente extraeís el contenido dentro del proyecto y ya esta.

Descargar Pegar en Proyecto Nuevo

5º Paso)
Volvemos al Visual Studio, y vamos al menu Proyecto->Propiedades. Dentro de la ventana, elegimos donde pone NMAKE y lo rellenamos respectivamente con los nombres que le hemos puesto a nuestros archivos .bat. A continuación pongo una imágen donde se ve claramente.

Imagen

Con esto ya estaría listo nuestro entorno para trabajar haciendo aplicaciones para GBA.


Para probarla tengo un archivo .c que muestra un hola mundo. Lo cogeis del adjunto que he puesto. Vamos a la carpeta del proyecto que hemos creado y lo copiamos (si quereís ser un poco más ordenados, crearos una carpeta con nombre source, y pegarlo dentro). Ahora vamos al Visual Studio .NET y lo agregamos al proyecto (boton dcho, encima del nombre del proyecto y agregar->agregar elemento existente)

Archivo C de prueba

Si todo ha ido bien, ahora podemos ir al menu: Generar, y desde alli ya podremos generar, limpiar y volver a generar solución.

El único handicap es para probar el archivo, ya que si le damos al depurado VS. Net nos dara un error ya que el binario generado no es reconocido por él. Necesitamos probarlo en la máquina o en su defecto en un emulador.
Pero lo que podemos hacer es integrar un emulador en el entorno, para que lance la rom creada en él.

Así que aqui comienza la segunda parte del tutorial:

(Como he empezado para la GBA, el ejemplo continua con esta, pero todo es valido para la NDS tambien).

1º Paso)
Despues de mirar varios emuladores de GBA, me decanto por Visual Boy Advance http://vba.ngemu.com/ , acabo de ver que en la página esta ya para probar la versión 1.8.0 beta3, pero de momento creo que con la 1.7.2. nos sobra descargar 1.7.2

Lo bajamos y los descomprimos en un directorio.

2º Paso)
Ahora vamos a VS .Net, y vamos al menu: Herramientas->Herramientas Externas.
Dentro del nuevo formulario, le damos al boton Agregar, y escribimos un titulo, yo por ejemplo le he puesto "Test de GBA Rom".
En comando, escribimos la ruta del emulador, o si le damos al boton que lleva 3 puntos lo buscamos por nuestro PC.
Ahora viene lo importante,
en Argumentos, escribimos lo siguiente: $(TargetName)$(TargetExt)
y por último en Directorio inicial: $(TargetDir)

Veamos en la siguiente imágen como quedaría:

Imagen

Antes de aceptar, mirar en que posición os queda insertada la nueva herramienta, en mi caso como se puede apreciar en la imágen empezando por arriba esta en la posición 8.

3º Paso)
Ahora vamos a hacer que se muestre en nuestro entorno de desarrollo.

Vamos al menu: Herramientas->Personalizar, en el cuadro de dialogo que nos aparece le damos al TAB que pone Barra de Herramientas, y le damos al boton de Nueva. Ponemos el nombre que queramos, por ejemplo Test Gba y le damos a Aceptar, nos aparecera una nueva barra de herramientas.
Ahora cambiamos al TAB Comandos, y en Categorias vamos a Herramientas, una vez seleccionada, en Comandos buscaremos Comando Externo más el número en el que se encontraba la herramienta que habíamos creado en mi caso el 8, en la siguiente imágen se ve más claro:

Imagen


Ahora hacemos click en Comando Externo , y sin soltar lo arrastramos a la barra de herramientas que nos había salido antes.
Por último colocamos la nueva barra de herramientas en el lugar del IDE que más nos guste y listo.

Vamos a probarla, generamos el proyecto. Y una vez generado hacemos click en Test de GBA y si todo ha ido bien nos aparecera en el emulador ya cargada

Imagen



PD: Esta información esta sacada de varios sitios, recomiendo sobre todo a la gente que empieza que heche un vistazo a los foros de gbadev http://forum.gbadev.org/
esto deberia estar como tema importante, cojonudo tutorial ^^ me voy a poner a trastear con el ^^
Bueno, pues ya lo tengo acabado, espero que os resulte util para los que empiezan. Cualquier duda o sugerencia es bienvenida.
Genial, otra forma mas para acceder a la programacion de GBA/DS. [toctoc] . Estaria bien ponerlo en el post oficial de programacion, o almenos meter un link a este post. Gracias!!

Por cierto:
Eres Belmonte, no? Juas, me podrias decir de donde es el tema que suena en tu famoso video?


Gracias de nuevo, y saludos!
me da fallos al intentar instalar el devkit pro, no me descarga los archivos, bueno en fin, seria genial intentar adaptarlo al devc++ que es libre, y seria muy interesante hacerlo, yo tengo experiencia en otros temas de programacion y la verdad me esta dando mucha guerra el tema de NDS, ( mas que nada problemas de instalacion de librerias y demas), espero solucionarlo pronto.
zeroshcr escribió:Genial, otra forma mas para acceder a la programacion de GBA/DS. [toctoc] . Estaria bien ponerlo en el post oficial de programacion, o almenos meter un link a este post. Gracias!!

Por cierto:
Eres Belmonte, no? Juas, me podrias decir de donde es el tema que suena en tu famoso video?


Gracias de nuevo, y saludos!


Lo siento pero te equivocas, no soy Belmonte ni lo conozco


Para grey_fox_mg, si no te descarga con la versión 1.1.0 prueba a bajarte la version 1.0.9, no vaya a ser que haya algun problema (yo lo hice con esa y funciono todo a la primera)
Muchas gracias!!!

Es justo lo que necesitaba para empezar a aprogramar para mi NDS!!!

Gracias de verdad! ;)

PD: El nick de Belmonte es Psycool3r
Buen tutorial.

Aunque yo recomiendo usar el Programers Notepad que es free y viene con el instalador del DevKitPro. Además casi todos los ejemplos vienen con un fichero para el Programmers Notepad :)
Como ya puse en otro hilo perdido, somoms muchos los que sabemos porogramar por aki y los que nos molaria hacer algo para ds. Podriamos intentar hacer algo entre todos no? Propongo hacer un 7 y medio a nivel consola para empezar a familiarizarse con los botones y demas, aunque supongo que no tendra mucho secreto. Que me decis?
Yo estoy empezando el modulo de informática y también estoy empezando con las PA_lib así que me apunto a lo que sea ^^
[qmparto] [qmparto] [qmparto] Joder, siento el malentendido.
También me apunto Weikath, pero antes tengo que ver cómo configurar el entorno en Linux y meterle mano a las libnds para sentirme cómodo.

Este fin de semana me da que no me despegaré del pc porque también quiero probar opensuse10 y hasta dejarlo a mi gusto ufff XD.
Yo tb me lo makeare este finde el PC, le metere una Fedora 4 a ver q tal q me lo baje y aun lo tengo aki tirao. El unico problema q veo es que, yo por ejemplo, en opengl to lo que quieras (programacion orientada a objetos 3D y soportada por NDS), pero lo que son graficos 2D nunca me lo he mirao. Me toca documentarme :)

A mas, en la uni no me dejan el CD del visual studio pq hace como un año que les devo un cd XD
Buenas a todos, he estado haciendo algunas pruebas y despues de algunos errores con los makefiles para la nds, por fin he dejado preparados unos para trabajar tanto solos, como con las PA_Libs. Así con los de ayer para trabajar con la GBA, ya podeis tambien trabajar con la NDS.

La pena que todavia no haya un emulador para la NDS que funcione decentemente

Pegar en Proyecto Nuevo_NDS_sinPA_LIB

Adjuntos

Todo muy bien hasta la parte de configurar los emus en herramientas externas. He probado con el ideas, dualis, dsemu y ensata con la configuracion que viene en el tuto y nada, no arranca la rom directamente.
alguin podria subir su makefail pero ya configurado con los 3 .bat y ay con la caveza del archivo gba para empezar mas facil con la programacion ?

seria una buena idea para los novatos y no liarnos tanto al principio no cren ?
Jefe, el programa para descargar no es el mismo con el que trabajas en el tutorial eh? ¬_¬
miradlo
si tio porfavor miralo y comentanos :D
Porque creo que tu utilizas el Microsoft Visual C++ no? ein?
desgraciadamente descubri este hilo tarde... hay algunos links rotos (2, lo de los archivos para compilar y nosekualotro) si lo pudierais subir de nuevo, mandarmelos o simplemente explicar 1 poko mas detallademente lo agradeceria muxo



-----salu2
Saludos a todos, acabo de ver que este post ha sido reflotado. No os preocupeis darme un poco de tiempo, que os voy a corregir y actualizar lo que haga falta.
[maszz] sigues trabajando en el post?? ;)

no existe algun game maker para DS o GBA? , como x ejemplo el (RPG maker), algo basiko y muy facilon, pa q la gente menos entendida, como yo, podamos difrutar de los "Backups caseros"... [amor] [maszz] [angelito]

Salu2 asias [ok]
cierto, ya no funcionan los links y las fotos, pues y a no se ven, podrían darle vida de neuvo a eso? es que quiero empezar y esto se me parece muy bueno, pues tengo un VS legal y quiero sacarle jugo...
25 respuestas