Ver la versión completa : Instalación SDKs oficiales compatibles C++
Bueno, creo que ya lo tengo todo bien ligado.
Gracias a Una-i, Mr.Spiv y todos los otros.
Me ha costado lo mío y no puedo asegurar que todo vaya bien al 100% pero por las pruebas que he hecho ya se puede programar en C++ con el SDK oficial, que sea para ARM con GCC o para Windows con VC++6. No he probado la versión .NET ya que no lo tengo instalado.
Por cierto, se pueden utilizar las excepciones, aunque pillan más memoria y más recursos. No las he probado, pero sí que compila.
En mi web encontraréis todo lo necesario: http://www.nekanium.com/gp32/news.htm.
Hasta he preparado una nueva versión del programa de test 16 bits en C++ para que tengais un proyecto de base.
Si alguien ha descargado algo de mi página entre ayer a las 15h00 y hoy a las 13h00, que lo vuelva a descargar porque no estaba todo a punto.
Ya me direis que tal.
Oankali.
PD: lo siento para los que no entienden el inglés, pero no tengo tiempo de traducirlo siempre dodo.
ya has hecho para que se pueda programar con metodologia orientada a objetos??? ahora ire a ver que tal, es que me enseñaron a programar con clases y te sale un codiigo bastante organizado :)
the_goulin
20/07/2005, 17:05
Bueno, creo que ya lo tengo todo bien ligado.
Gracias a Una-i, Mr.Spiv y todos los otros.
Me ha costado lo mío y no puedo asegurar que todo vaya bien al 100% pero por las pruebas que he hecho ya se puede programar en C++ con el SDK oficial, que sea para ARM con GCC o para Windows con VC++6. No he probado la versión .NET ya que no lo tengo instalado.
Por cierto, se pueden utilizar las excepciones, aunque pillan más memoria y más recursos. No las he probado, pero sí que compila.
En mi web encontraréis todo lo necesario: http://www.nekanium.com/gp32/news.htm.
Hasta he preparado una nueva versión del programa de test 16 bits en C++ para que tengais un proyecto de base.
Si alguien ha descargado algo de mi página entre ayer a las 15h00 y hoy a las 13h00, que lo vuelva a descargar porque no estaba todo a punto.
Ya me direis que tal.
Oankali.
PD: lo siento para los que no entienden el inglés, pero no tengo tiempo de traducirlo siempre dodo.
Vaya por fin ^_^ muchisimas gracias Oankali :D esta misma tarde lo probare :)
estas hecho un crack tio.
Saludillos y gracias otra vez,
The_Goulin
No te creas, que la cosa es muy chapucera, y habría que probarlo con muchos más objetos dinámicos.
Pero al menos, a primera vista, he conseguido hacer que el mismo código C++ funcione bajo Windows y en la GP32 sin que tengas que retocar una sola línea.
Por cierto the_goulin, has recibido el MOD?
the_goulin
20/07/2005, 19:26
Si, lo he recibido (el mod) ^_^ lo que no me ha dado tiempo de probarlo :P
Luego te digo algo, pero si tu lo has probado ya no hay problema, igualmente hablare con el creador para futuros MOD's
Posiblemente le meteré caña al Kit con C++ estaba preparando unas pequeñas librerías para uso personal de manejo de sprites y ahora que puedo las pasare a c++ y seguro que utilizare objetos dinámicos por un tubo, seguramente lo empezare a probar con un "remake" del Frogger así que todo los coches,camiones,trocos,etc,etc se creara con objetos que se iran borrando llamando a sus correspondientes constructores y destructores ^_^ .
Y encima ahora podré utilizar sobrecarga de funciones :D todo un avance :)
los de los Set's graficos ya pueden ir pensando en ranas y coches, o tambien se podran hacer Set's grafios de Froggrer del espacio, o de algun manga imaginacion al poder que yo dibujo muy mal xDD
Saludillos y gracias por lo del mod Oankali (hay si no fuera por ti, te debo una birra)
The_Goulin
Si, lo he recibido (el mod) ^_^ lo que no me ha dado tiempo de probarlo :P
Luego te digo algo, pero si tu lo has probado ya no hay problema, igualmente hablare con el creador para futuros MOD's
Ups, olvidé decirte que no lo he probado con la GP32. Es que lo he hecho desde el trabajo :rolleyes: y allí no tenía la GP.
Posiblemente le meteré caña al Kit con C++ estaba preparando unas pequeñas librerías para uso personal de manejo de sprites y ahora que puedo las pasare a c++ y seguro que utilizare objetos dinámicos por un tubo, seguramente lo empezare a probar con un "remake" del Frogger así que todo los coches,camiones,trocos,etc,etc se creara con objetos que se iran borrando llamando a sus correspondientes constructores y destructores ^_^ .
Y encima ahora podré utilizar sobrecarga de funciones :D todo un avance :)
los de los Set's graficos ya pueden ir pensando en ranas y coches, o tambien se podran hacer Set's grafios de Froggrer del espacio, o de algun manga imaginacion al poder que yo dibujo muy mal xDD
Saludillos y gracias por lo del mod Oankali (hay si no fuera por ti, te debo una birra)
The_Goulin
Hmmmm, haz primero unas pruebecillas no muy complicadas a ver si todo va bien, que si vieras lo que he tenido que hace para que new/delete utilicen gm_malloc()/gm_free()! Es un poco chapucero.
No quiero desilusionarte, pero tampoco quiero que te ilusiones demasiado. ^^
Oankali.
the_goulin
21/07/2005, 10:09
pues nada, la primera en la frente ...
intento compilar el ejemplo de prueba y...
C:\devkitARM\project\16bitsCppTest>make
make: *** No rule to make target `C:/devkitARM/gamepark_sdk/gpstart_cpp.o', need
ed by `16b_test.elf'. Stop.
:( que mala suerte tengo y encima de ficheros makefile ni pajotera idea :P
haber si me puedes hechar un cable
Saludillos,
The_Goulin
Acabo de volver a instalar devkitARM v14, el sdk, el make.exe, y el ejemplo tal como lo indico en el tutorial, y me ha funcionado a la primera.
¿Has pensado en agregar C:\devkitARM\bin en el path de Windows?
¿Podría ser que el make que estás ejecutando fuera de otro compilador?
the_goulin
21/07/2005, 14:52
UOOOOPS fallo mio, me faltaba un fichero de tu web :P
Sorry
Saludillos,
The_Goulin
Oankali, por mucho que doy vueltas por tu web no encuentro los ficheros modificados del Gamepark SDK para hacer funcionar C++ ni el ejemplo... ¿Dónde están? Podría ser un buen punto de partida para intentar realizar las primeras pruebas cone el Snes9x...
Gracias y un saludo.
Oankali, por mucho que doy vueltas por tu web no encuentro los ficheros modificados del Gamepark SDK para hacer funcionar C++ ni el ejemplo... ¿Dónde están?Si me permite Oankali, yo mismo te respondo. Se encuentra en la primera parte del tutorial "Gamepark SDK Setup (http://www.nekanium.com/gp32/sdk/docs/tutorial1_en.htm)", parece Oankali ha incluido los cambios para usar C++ en varios ficheros fuentes y cabeceras del SDK de Gamepark que se encuentra para descargar desde allí mismo. El programa de ejemplo, "16 bits C++ test program", también está para bajar en el mismo sitio.
Podría ser un buen punto de partida para intentar realizar las primeras pruebas cone el Snes9x...Ya ni recordaba que el Snex9x estaba programado casi por completo en C++, supongo que lo has mencionado con una intención que se me hace muy interesante... :babea:
Gracias Uncanny :-)
Pozi, tengo varias opciones:
- He encontrado (después de mucho rebuscar por el google) el antiguo código fuente del Snes9x 1.19a (1999) que parece que tiene todo el código en C++ (aunque adicionalmente tiene algunas partes tb en asm i386), es bastante más compacto que las versiones actuales y no sé... Me tienta... Va con sonido y funcionan casi todos los juegos (MS-DOS)...
- Aunque a lo mejor es mejor utilizar las nuevas versiones del Snes9x... Problemas: Más dificil de portar pq el código fuente es mucho más grande y supongo que será mejor pero más lento ¿?
- Ó a lo mejor es más interesante revisar el osnes9x (que parece que tiene todo listo para compilar con el compilador ADS)... Lo malo es que he oido por ahí que el código fuente es un desastre... Y además el programador ya intentó acelerarlo con arm asm con poco éxito...
- Por último envié un correo al antiguo creador del Snes9xGp que parece estar missing, pero encontré un posible e-mail suyo en unos foros... Me parece que es más estable que el osnes9x y si consigo el código fuente se podría llegar a algo grande...
- zsnes: Descartado, parte del código en asm i386.
- sneese: Descartado, parte del código en asm i386.
- sneqr: Descartado, core del procesador de la snes en asm i386.
- snem: Descartado, dice Rlyeh que funciona lentísimo y la compatibilidad muy baja...
En fin, estoy estudiándolo... Lo malo es que mi experiencia con el C++ es muy limitada...
Salu2
anibarro
21/07/2005, 23:29
Desde luego con la experiencia que has tenido que coger portando el mame, ya tienes que poder con todo xD
En fin, estoy estudiándolo... Lo malo es que mi experiencia con el C++ es muy limitada...
Salu2
Eres un fen'omeno fran, ya sabes que yo tiempo poco pero de c++ lo que quiereas, asi que cualquier cosa que te surga me dices y espeor poder ayudar un poquillo...
Unai
the_goulin
22/07/2005, 02:06
Oankali, por mucho que doy vueltas por tu web no encuentro los ficheros modificados del Gamepark SDK para hacer funcionar C++ ni el ejemplo... ¿Dónde están? Podría ser un buen punto de partida para intentar realizar las primeras pruebas cone el Snes9x...
Gracias y un saludo.
perdonad mi ignorancia, pero el Open Snes9x v0.3 beta no esta basado en el Snes9x?
no me digais que el que hizo el port adapto el programa en C++ a C por que si es asi menuda locura.
PD. Felicidades por el GpMame estas hecho un crack
Saludillos,
The_Goulin
Franxis me parece perfecto que alguien como tu que tiene experiencia en portar un emulador tan grande como MAME a la GP32 mire también a uno de los sistemas, para mi al menos, más interesantes y sin embargo con unos emuladores para GP32 que se quedaron todos a medio terminar como es SNES.
Respecto al OSnes9X, hace tiempo le heche un vistazo al codigo de la última versión, ciertamente el codigo y en general los modulos del programa están poco documentados/comentados además de que tiene partes del codigo (p.e. el uso de alguna función) bajo comentarios, aunque claro, tampoco hay que olvidar que era la última versión era una beta y que tampoco salieron muchas versiones para que los autores limpiaran u ordenaran el codigo. A pesar de ello no está tan desorganizado, estaría mejor si tuviera más comentarios en cada parte importante del código, pero menos es nada.
No se si el autor de SNES9xGP se pondrá en contacto contigo, ni siquiera que de hacerlo te ceda o publique el código (si es que aun lo conserva) podía haberlo hecho en su día y no lo hizo, no hubiera perdido entonces nada por hacerlo (y la scene podía haber ganado algo), de hecho creo que fue uno de los motivos por los que Yoyofr y ThunderZ llamaron al suyo otro OpenSnes9xGP, quizás no hubiera pasado si Snes9x tuviera una licencia de software libre de tipo vírica como GPL ya que la licencia de Snes9x es propia de su autor y permite que se haga modicaciones al codigo y distribuirlo ya sea en forma binaria o los fuentes mientras sea algo no comercial, lo que implica que no es obligatorio publicar el codigo fuente, y así fue con SNES9xGP.
Si se parte del codigo de Snes9x, habría que valorar los pros y contras de según el código de la versión que se vaya a intentar portar. Por ejemplo, las versiones de SNES9xGP y OpenSnes9xGP parecen estar basadas en alguna versión de Snes9x de las que había en 2003 / 2004, esto implica que podrían ejecutar más juegos que una versión mucho más anterior pero no implica que lo haga de forma más rápido o de forma más optima.
Respecto a este último punto, y suponiendo que fuera mejor la versión una versión más temprana de Snes9x que una más actual, también habría que preguntarse si hay una cantidad de juegos considerable de diferencia que emulen las versiones posteriores en comparación a esa versión de Snes9x de 1999 de la que hablas (o alguna un poco posterior si es posible encontrar), porque aunque se usara una versión posterior o actual, digamos versiones de 2003 y posteriores, que soportan mejor juegos que usen, por ejemplo, esquemas de compresión S-DD1 sin necesidad del uso de paquetes gráficos extras (ej: Tales of Phantasia y Star Ocean) y otros, como emular chips como DSP-1 (ej: Super Mario Kart) SuperFx (ej: Starwing / Starfox), puede que la GP32, con sus 8 MB de RAM no pudiera ir decentemente con juegos como los citados Tales of Phatansia o Star Ocean, lo que también, en la visión de un programador, sería prácticamente tener codigo inutil ya que la GP32 no podría aprovecharlo y habría que suprimirlo, lo que significa trabajo extra. Todo esto son especulaciones de alguien que aun no ha portado ningún emulador a la GP32, que conste, así que puedo equivocarme en mucho de lo que digo.
Yo he programado tanto en C como en C++, pero los la programación de sistemas no es mi especialidad (y menos en C++), aunque, al igual que Una-i se ha ofrecido, no me importaría ayudar si llegaras a empezar algo y necesitaras colaboración de algún tipo (de paso así podría aprender algo extra, ya que nunca he portado codigo de una arquitectura a otra).
perdonad mi ignorancia, pero el Open Snes9x v0.3 beta no esta basado en el Snes9x?
no me digais que el que hizo el port adapto el programa en C++ a C por que si es asi menuda locura.El módulo principal de OpenSnes9x no parece contener rastros de C++ propiamente dicho, ni clases , ni sobrecarga de operadores (creo), operadores propios solo de C++ como el de resolución de ambito (::), así que practicamente está en C, pero lo que si está en C++ es el codigo original (que también lo usa al parecer) del Snes9x en el que se basa, pero no me hagas mucho caso, solo he visto el codigo por encima.
Si me permite Oankali, yo mismo te respondo. Se encuentra en la primera parte del tutorial "Gamepark SDK Setup (http://www.nekanium.com/gp32/sdk/docs/tutorial1_en.htm)", parece Oankali ha incluido los cambios para usar C++ en varios ficheros fuentes y cabeceras del SDK de Gamepark que se encuentra para descargar desde allí mismo. El programa de ejemplo, "16 bits C++ test program", también está para bajar en el mismo sitio.Ya ni recordaba que el Snex9x estaba programado casi por completo en C++, supongo que lo has mencionado con una intención que se me hace muy interesante... :babea:
¿Has analizado lo que he hecho para que funcione? ¿No es un poco chapuza?
¿Has mirado también la versión Windows? Es que es aún más chapuza a mi parecer y no sé si es libre de fallos.
Oankali, por mucho que doy vueltas por tu web no encuentro los ficheros modificados del Gamepark SDK para hacer funcionar C++ ni el ejemplo... ¿Dónde están? Podría ser un buen punto de partida para intentar realizar las primeras pruebas cone el Snes9x...
Gracias y un saludo.
Para que no vuelva a pasar, he añadido una nueva sección en mi web. Así no habrá que buscar por toda la web.
Oankali.
Correo de respuesta del antiguo creador del snes9xgp... Una pena... En fin...
Hiya Franxis
Unfortunatley I no longer Dev for gp32 for a long time (2 years), in that time I have moved house 3 times across 2 different countries and have lost all the source code :(
But the original snes9xgp - was a very simple port of the current snes9x src code - with some specific arm optimizations.
ZJ
bueno porfin me he bajado el ejemplo pero me he quedado como si na :D, oankali te has dado cuenta que tu ejemplo 16bitsCppTest y 16bitsTest son exactamente el mismo?? pensaba que habrias metido algun class pero no he visto ni uno
the_goulin
27/07/2005, 10:31
bueno porfin me he bajado el ejemplo pero me he quedado como si na :D, oankali te has dado cuenta que tu ejemplo 16bitsCppTest y 16bitsTest son exactamente el mismo?? pensaba que habrias metido algun class pero no he visto ni uno
el make esta preparado para c++
Saludillos,
The_Goulin
entonces ya se pueden hacer clases?? es por empezar a hacer los juegos un poco mas estructurados
¿Has analizado lo que he hecho para que funcione? ¿No es un poco chapuza?
¿Has mirado también la versión Windows? Es que es aún más chapuza a mi parecer y no sé si es libre de fallos.Si, lo miré y a mi no me lo parece ninguna chapuza, son unas cuantas lineas de codigo extra y las tomo como lo que me parece que son, un parche o "fix" en el codigo para que ciertas cosas de C++ funcionen, como lo de los operadores new y delete, el gpstart_cpp, el #ifdef __cplusplus de unas cabeceras y unas modificaciones en el Makefile. Mientras que con estos cambios se pueda programar en C++ con el SDK pues no creo que nadie se queje ni le ponga pegas, ¿cuanto tiempo hace de la pregunta de que si se podía programar en C++ para la GP32? Pues tu has resuelto la eterna pregunta :cool:
Franxis, es lo que me imaginaba, por eso te lo decía, ha pasado ya mucho tiempo y era normal que el código se perdiera puesto que solo lo tenía el propio creador del port (y luego me preguntan porque apoyo la filosofía del software libre y las licencias como GPL...). Ahora que ya se sabe esto, si se quiere intentar lo que dices, ya es cosa de ver que es más viable, si continuar con el OpenSnes9xGP o empezar de cero portando el código de la versión que dices o una más actual.
the_goulin
27/07/2005, 15:05
entonces ya se pueden hacer clases?? es por empezar a hacer los juegos un poco mas estructurados
po ci, ya puedes crear clases que parece ser que funciona sin problemas
Saludillos,
The_Goulin
bueno porfin me he bajado el ejemplo pero me he quedado como si na :D, oankali te has dado cuenta que tu ejemplo 16bitsCppTest y 16bitsTest son exactamente el mismo?? pensaba que habrias metido algun class pero no he visto ni uno
Pues sí, ya sé que son exactamente iguales, pero como dice the_goulin, son el makefile y los archivos de proyecto VC++ que han cambiado.
Es que yo de C++ muy poco, pero que muy muy poco.
De hecho, y ya que me has picado un poco :), he hecho lo que tenía que haber hecho desde el principio y he modificado el ejemplo 16bitsCppTest y ahora sí que tiene una clase. Mi primera clase, completamente mía en C++, con constructores y todo. Hoy es un gran día señores :musico:
Como siempre, encontraréis el programita en mi web.
@Uncanny: efectivamente, un parche. Y si te miras la versión para VC++ aún es más chapuza, no sé si fiarme mucho de ese parche. El tiempo y sobretodo vosotros me lo diréis :)
Oankali.
bueno yo voy a hacer el juego del guiñote en c++ asi que ya te contare si me falla o no, espero ademas el poder tener las 40 cartas en memoria :(
me da un error en c++
char *carta[2];
char *aux[2];
carta[0]="B01";carta[1]="C06";
aux=carta;
me dice que no puedo asignar arrays, ?????, de toda la vida lo he hecho asi
me da un error en c++
char *carta[2];
char *aux[2];
carta[0]="B01";carta[1]="C06";
aux=carta;
me dice que no puedo asignar arrays, ?????, de toda la vida lo he hecho asi
Lo siento pero no te puedo ayudar ya que mi C++ aún está muy verde, pero dudo que sea del parche, ya que aún quitando el parche da el mismo error.
Tendré que mirar la documentación de C++ a ver que dice. Está claro que en C puro esta asignación es incorrecta.
Oankali.
pues no se recuerdo haberlo usado en la carrera de informatica, bueno lo he solucionado haciendo parche con un bucle recorriendo, por cierto las clases van muy bien a ver cuando termino el juego y lo pongo para que me digais que tal se juega :D
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.