Autor Tema: ¿Se puede ejecutar un dcb desde el código sin usar bgdi?  (Leído 1352 veces)

DCelso

  • Hero Member
  • *****
  • Mensajes: 3708
  • Karma: 181
¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« en: Octubre 21, 2016, 07:27:46 am »
Hola,
Una pregunta.
¿Sería posible desde el código cambiar la ejecución a otro dcb?
algo como
Código: [Seleccionar]
begin
 newdcb = dcb_open("minuevoarchivo.dcb");
 goto(newdcb);
end

Lo digo porque en windows, linux no hay problema de usar exec y lanzar "bgdi nombredcb"
pero en consolas en las que el intérprete es el programa en memoria no existe esa posiblidad.
por ejemplo en dreamcast, wii, android.





Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Ryo Suzuki

  • Full Member
  • ***
  • Mensajes: 144
  • Karma: 3
    • SEGASaturno
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #1 en: Octubre 21, 2016, 08:30:06 am »
Pues es algo que tenía intención de preguntar ya que me interesa bastante.

Por ejemplo para hacer una compilación de varios juegos hechos en BennuGD y lanzarlos desde una especie de menú.

También por tema RAM, comodidad y demás sería bueno si se hace un proyecto muy largo y complicado cambiar de .dcb en un momento determinado.

Si no fuera posible así de forma convencional, en Dreamcast creo que se podría hacer de una manera al menos teoricamente. Sería tener albergado otro binario (1st_read.bin) en otra carpeta junto a su correspondiente main.dcb y obligarle a ejecutar ese binario mediante KOS. Supongo que se podría hacer mediante mod_dream forzándole a abrir y lanzar ese binario que estararía lanzando otro .dcb.

Supongo que en Wii y en otras máquinas se podría conseguir algo así, ya que Bennu tiene que estar corriendo bajo otra capa de lenguaje y siempre se podría recurrir a ella para hacer uso de algún comando que nos interesara...

DCelso

  • Hero Member
  • *****
  • Mensajes: 3708
  • Karma: 181
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #2 en: Octubre 21, 2016, 08:49:50 am »
Sería lo suyo.
el main.dcd sería el enlace principal y desde él abririamos  cualquier otro .dcb

Tipo como los emuladores hacen con las roms.

Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

panreyes

  • Administrator
  • *****
  • Mensajes: 2233
  • Karma: 81
    • panreyes.com
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #3 en: Octubre 21, 2016, 10:25:09 am »
DCelso. Nosotros en PiXJuegos teníamos un launcher que resolvía eso con cierto apaño.

Si no recuerdo mal, era un bat que recogía la salida del launcher y lanzaba el ejecutable devuelto por el launcher.

Por si quieres revisarlo:
https://github.com/panreyes/pixjuegos/tree/master/arcade

SplinterGU

  • Hero Member
  • *****
  • Mensajes: 12887
  • Karma: 377
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #4 en: Octubre 21, 2016, 04:19:23 pm »
en android se deberia poder hacer el exec... no se como esta el port...

con respecto a hacer un "run" dcb por ahora no existe, pero lo anoto...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

  • Administrator
  • *****
  • Mensajes: 2233
  • Karma: 81
    • panreyes.com
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #5 en: Octubre 21, 2016, 04:53:03 pm »
Vale, perdón xD
No me había leído bien el primer mensaje. Actualmente no se puede hacer nada ya que "exec" en Android sólo sirve para abrir una web.

Habría que modificar la función openUrl en Java para que pudiera lanzar otras aplicaciones. Creo que sería fácilmente posible modificando el siguiente archivo:
android\src\org\pixtudio\samplegame\MyGame.java

SplinterGU

  • Hero Member
  • *****
  • Mensajes: 12887
  • Karma: 377
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #6 en: Octubre 21, 2016, 07:28:35 pm »
Vale, perdón xD
No me había leído bien el primer mensaje. Actualmente no se puede hacer nada ya que "exec" en Android sólo sirve para abrir una web.

Habría que modificar la función openUrl en Java para que pudiera lanzar otras aplicaciones. Creo que sería fácilmente posible modificando el siguiente archivo:
android\src\org\pixtudio\samplegame\MyGame.java

pero eso es asi, porque se hizo asi la implementacion de bennugd en android?
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

  • Administrator
  • *****
  • Mensajes: 2233
  • Karma: 81
    • panreyes.com
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #7 en: Octubre 21, 2016, 07:54:21 pm »
Porque me venía a mí bien para abrir webs y mandar high scores xD

DCelso

  • Hero Member
  • *****
  • Mensajes: 3708
  • Karma: 181
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #8 en: Octubre 21, 2016, 08:59:32 pm »
Vale, perdón xD
No me había leído bien el primer mensaje. Actualmente no se puede hacer nada ya que "exec" en Android sólo sirve para abrir una web.

Habría que modificar la función openUrl en Java para que pudiera lanzar otras aplicaciones. Creo que sería fácilmente posible modificando el siguiente archivo:
android\src\org\pixtudio\samplegame\MyGame.java

Molaría mucho, habrá que investigar esta vía entonces.

Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

  • Hero Member
  • *****
  • Mensajes: 12887
  • Karma: 377
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #9 en: Octubre 22, 2016, 12:22:25 am »
Porque me venía a mí bien para abrir webs y mandar high scores xD

se puede sobrecargar la funcion o en base a si lo que le pasas es una url o un file, que el exec haga una ejecucion de pagina o una ejecucion de binarios. por ejemplo, un "http://www.bennugd.org/" es sin dudas una pagina, ahora un "bgdi blablah" es la ejecucion de un programa.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

  • Hero Member
  • *****
  • Mensajes: 3708
  • Karma: 181
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #10 en: Octubre 22, 2016, 10:46:42 am »
Si, eso puede ser una solución temporal para android.

Pero si bgdi la integra, mejor que mejor, ya valdría para cualquier plataforma  ;)

Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

  • Hero Member
  • *****
  • Mensajes: 12887
  • Karma: 377
Re:¿Se puede ejecutar un dcb desde el código sin usar bgdi?
« Respuesta #11 en: Octubre 23, 2016, 05:11:52 pm »
es un poco dificil, porque el tema es estar seguro de desacargar todo recurso reservado, y si bien seria pesado descargar todo lo que reserva bennugd, el problema esta en que no hay control en lo que reserva el usuario (quizas deberia meter un control a las alocaciones y liberaciones, pero esto añadiria otro problema, la reduccion de performance)
Download Lastest BennuGD Release: http://www.bennugd.org/node/2