como poner una imagen de fondo al lanzar un emulador?

Hola amigos, estoy metido en un proyecto de lanzar roms portables con su emulador en windows.
Ya tengo varias, el metodo es bastante sencillo gracias al WINRAR, y la rom con su emulador se convierte en un archivo exe que se ejecuta con solo hacer doble click.
Pero se me a ocurrido ir un paso mas alla y apenas encuentro info por la red por no decir que nada.A ver si alguien me puede hechar un cable....
La idea seria lanzar el exe y que el emu con su rom se ejecuten en un ventana (hasta ahi lo e conseguido) pero me molaria que se abriera una imagen JPG del juego (por ejemplo la portada) de fondo.
No creo que sea demasiado dificil de hacer...pero no doy con la clave.
Un saludo y gracias por tomaros la molestia de leerme.
tortoclas escribió:Hola amigos, estoy metido en un proyecto de lanzar roms portables con su emulador en windows.
Ya tengo varias, el metodo es bastante sencillo gracias al WINRAR, y la rom con su emulador se convierte en un archivo exe que se ejecuta con solo hacer doble click.
Pero se me a ocurrido ir un paso mas alla y apenas encuentro info por la red por no decir que nada.A ver si alguien me puede hechar un cable....
La idea seria lanzar el exe y que el emu con su rom se ejecuten en un ventana (hasta ahi lo e conseguido) pero me molaria que se abriera una imagen JPG del juego (por ejemplo la portada) de fondo.
No creo que sea demasiado dificil de hacer...pero no doy con la clave.
Un saludo y gracias por tomaros la molestia de leerme.


Usa retroarch y te olvidas de emuladores, exes, ventanas, winrar, imagenes de fondo y la barca a pedales.

Te puedes bajar overlays para todos los juegos del mundo desde aquí:

https://github.com/thebezelproject?tab=repositories

Compatibles con switch en modo portatil y dock poniendo el modo de video en core provided.
Para hacer lo que necesitas requieres de Launchbox o Rocketlauncher, aunque seguramente deberás de cambiar el modo de ejecución de portable a método clásico, no porque no sea posible tal y como lo tienes ahora, si no, para ahorrarte problemas de compatibilidad o ejecución.
Dark_Crystal escribió:
tortoclas escribió:Hola amigos, estoy metido en un proyecto de lanzar roms portables con su emulador en windows.
Ya tengo varias, el metodo es bastante sencillo gracias al WINRAR, y la rom con su emulador se convierte en un archivo exe que se ejecuta con solo hacer doble click.
Pero se me a ocurrido ir un paso mas alla y apenas encuentro info por la red por no decir que nada.A ver si alguien me puede hechar un cable....
La idea seria lanzar el exe y que el emu con su rom se ejecuten en un ventana (hasta ahi lo e conseguido) pero me molaria que se abriera una imagen JPG del juego (por ejemplo la portada) de fondo.
No creo que sea demasiado dificil de hacer...pero no doy con la clave.
Un saludo y gracias por tomaros la molestia de leerme.


Usa retroarch y te olvidas de emuladores, exes, ventanas, winrar, imagenes de fondo y la barca a pedales.

Te puedes bajar overlays para todos los juegos del mundo desde aquí:

https://github.com/thebezelproject?tab=repositories

Compatibles con switch en modo portatil y dock poniendo el modo de video en core provided.


Sin duda seria lo ideal.Pero el proyecto se esta haciendo para un canal de youtube donde hablamos de un juego en concreto y dejamos el ejecutable en un link en la descripcion del video.Se queda en un archivito de poco mas de 20 megas.
El retroarch sin duda es la solución (aunque a mi me mola mas hyperspin) pero no para lo que pretendemos hacer.
De todas formas muchas gracias por link, no lo conocia, eso es una mina.
@tortoclas Yo intentaria hacer que el juego se ejecutase en pantalla completa con un overlay desde el propio emulador, si el emulador no tiene esa opción siempre puedes usar retroarch como emulador.
hace un monton q no entraba por aqui, me logie porque me dijeron me mandaron un MP y queria verlo

Ya q estoy, te dejo la solucion. No necesitas ni retroarch, ni overlays, ni nada de eso. Todo eso es matar moscas a cañonazos

Script autohotkey, en apenas unos kb, y si investigas un poco, puedes codificar todo dentro del codigo coniertiendo a binario, y no necesitas winrar ni nada de eso


SetBatchLines, 1000
SetTitleMatchMode, 2
SetWorkingDir %A_ScriptDir%

SysGet, Monitor, Monitor, %A_Index%
SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index%

Gui, -Caption   
Gui, color, Black
Gui, Add, Pic, 0 0 w%MonitorRight% h%MonitorBottom%, radioct.jpg
Gui, Show, x0 y0 w%MonitorRight% h%MonitorBottom%

run, nestopia.exe RADIOACT.NES

Loop{
IfWinActive Nestopia
{
WinSet, Style, -0xC00000, Nestopia
WinSet, Style, -0x800000, Nestopia
WinSet, Style, -0x400000, Nestopia
break
}   
}

Loop{
IfWinNotActive Nestopia
{
exitapp
}     } 


theelf escribió:hace un monton q no entraba por aqui, me logie porque me dijeron me mandaron un MP y queria verlo

Ya q estoy, te dejo la solucion. No necesitas ni retroarch, ni overlays, ni nada de eso. Todo eso es matar moscas a cañonazos

Script autohotkey, en apenas unos kb, y si investigas un poco, puedes codificar todo dentro del codigo coniertiendo a binario, y no necesitas winrar ni nada de eso


SetBatchLines, 1000
SetTitleMatchMode, 2
SetWorkingDir %A_ScriptDir%

SysGet, Monitor, Monitor, %A_Index%
SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index%

Gui, -Caption   
Gui, color, Black
Gui, Add, Pic, 0 0 w%MonitorRight% h%MonitorBottom%, radioct.jpg
Gui, Show, x0 y0 w%MonitorRight% h%MonitorBottom%

run, nestopia.exe RADIOACT.NES

Loop{
IfWinActive Nestopia
{
WinSet, Style, -0xC00000, Nestopia
WinSet, Style, -0x800000, Nestopia
WinSet, Style, -0x400000, Nestopia
break
}   
}

Loop{
IfWinNotActive Nestopia
{
exitapp
}     } 




Jo*** aqui esta la chicha que buscaba.Muchas gracias por tomarte la molestia de contestar.Lo malo es que no se ni por donde meterle mano jajaja. Seria mucha molestia que me pusieras unas pistas de como lanzar el atomic runner por ejemplo con el gens en una ventanita y una imagen de fondo??
Se que pido demasiado, tratare de investigar un poco por mi cuenta.
Reitero mi agradecimiento por enseñarme el camino.Un saludo socio.

Vale edito, lo logré copiando el código que pusiste pero a quedado un poco a mi manera jeje.E metido el script junto al emu, la rom y el archivo JPG en la misma carpeta y funciona con el codigo que pusiste.
Pero ahora se me abren nuevos dilemas, se puede hacer de esa carpeta un solo archivo ejecutable?Igual con el método del winrar para lanzar el emu con la rom me vale, lo mirare, aunque igual hay alguna forma mas facil.
Por otro lado se puede añadir algo al script para que se cierre por ejemplo con la tecla escape?
Muchas gracias @theelf y perdon por la chapa.Eres un crack.
tortoclas escribió:
theelf escribió:hace un monton q no entraba por aqui, me logie porque me dijeron me mandaron un MP y queria verlo

Ya q estoy, te dejo la solucion. No necesitas ni retroarch, ni overlays, ni nada de eso. Todo eso es matar moscas a cañonazos

Script autohotkey, en apenas unos kb, y si investigas un poco, puedes codificar todo dentro del codigo coniertiendo a binario, y no necesitas winrar ni nada de eso


SetBatchLines, 1000
SetTitleMatchMode, 2
SetWorkingDir %A_ScriptDir%

SysGet, Monitor, Monitor, %A_Index%
SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index%

Gui, -Caption   
Gui, color, Black
Gui, Add, Pic, 0 0 w%MonitorRight% h%MonitorBottom%, radioct.jpg
Gui, Show, x0 y0 w%MonitorRight% h%MonitorBottom%

run, nestopia.exe RADIOACT.NES

Loop{
IfWinActive Nestopia
{
WinSet, Style, -0xC00000, Nestopia
WinSet, Style, -0x800000, Nestopia
WinSet, Style, -0x400000, Nestopia
break
}   
}

Loop{
IfWinNotActive Nestopia
{
exitapp
}     } 




Jo*** aqui esta la chicha que buscaba.Muchas gracias por tomarte la molestia de contestar.Lo malo es que no se ni por donde meterle mano jajaja. Seria mucha molestia que me pusieras unas pistas de como lanzar el atomic runner por ejemplo con el gens en una ventanita y una imagen de fondo??
Se que pido demasiado, tratare de investigar un poco por mi cuenta.
Reitero mi agradecimiento por enseñarme el camino.Un saludo socio.

Vale edito, lo logré copiando el código que pusiste pero a quedado un poco a mi manera jeje.E metido el script junto al emu, la rom y el archivo JPG en la misma carpeta y funciona con el codigo que pusiste.
Pero ahora se me abren nuevos dilemas, se puede hacer de esa carpeta un solo archivo ejecutable?Igual con el método del winrar para lanzar el emu con la rom me vale, lo mirare, aunque igual hay alguna forma mas facil.
Por otro lado se puede añadir algo al script para que se cierre por ejemplo con la tecla escape?
Muchas gracias @theelf y perdon por la chapa.Eres un crack.



Hola, ya que te ayude, termino de hacerlo, es q ya no me paso por aqui, pero no te queria dejar a medias

El codigo de autohotkey es muy facil, mira, arrgle un poco en 5 minutos, y te lo deje asi para gens

SetBatchLines, 1000
SetTitleMatchMode, 2
SetWorkingDir %A_ScriptDir%

SysGet, Monitor, Monitor, %A_Index%
SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index%

Gui, -Caption   
Gui, color, Black
Gui, Add, Pic, 0 0 w%MonitorRight% h%MonitorBottom%, atomic.jpg
Gui, Show, x0 y0 w%MonitorRight% h%MonitorBottom%

MouseMove, 10000,10000
BlockInput, MouseMove



run, gens.exe atomic.bin

Loop {

IfWinActive Gens
{
sizew:= MonitorRight / 1.5
sizey:= MonitorBottom / 1.2
posx:=(MonitorRight-sizew)/2
posy:=(MonitorBottom-sizey)/2

winmove,Gens,, %posx%, %posy%, %sizew%, %sizey%

WinSet, Style, -0xC00000, Gens
WinSet, Style, -0x800000, Gens
WinSet, Style, -0x400000, Gens
break
}   
}

Loop {

GetKeyState, state, Esc
if (state = "D")
    {
    Send !f
    Send q
    }


IfWinNotActive Gens
{
mousemove 300,300
BlockInput, MouseMoveOff
exitapp
}     





Si te fijas, agrege algunas cosillas, la primera es que calculo el tamaño de la ventana de gens en base al monitor, segunda, bloqueo el mouse y lo hago desaparecer, y tercera, es que espero que se presione la tecla ESC para remapearla a ALT+F+Q que es la combinacion para salir de gens


Otra cosa, usa siempre nombres 8+3, nunca largos


Sobre lo q dices de tener todo en un ejecutable, lo que tienes que hacer es meter todo como binario en el ejecutable final, y usar los tempo9rarios de windows, con el comando Fileinstall

Por ejemplo

FileInstall, gens.exe, %temp%\gens.exe



Eso lo q hace es incluir el archivo gens.exe dentro del ejecutable final, y luego lanzarlo en %temp%



Usa siempre nombres 8+3 y JAMAS rutas manualmente, o sea %temp% esta bien C:\Windows\temp es una cagada


Aqui lo tienes echo


SetBatchLines, 1000
SetTitleMatchMode, 2
SetWorkingDir %A_ScriptDir%


FileInstall, atomic.jpg, %temp%\atomic.jpg
FileInstall, gens.exe, %temp%\gens.exe
FileInstall, Gens.cfg, %temp%\Gens.cfg
FileInstall, atomic.bin, %temp%\atomic.bin
FileInstall, language.dat, %temp%\language.dat

SetWorkingDir %temp%


SysGet, Monitor, Monitor, %A_Index%
SysGet, MonitorWorkArea, MonitorWorkArea, %A_Index%

Gui, -Caption   
Gui, color, Black
Gui, Add, Pic, 0 0 w%MonitorRight% h%MonitorBottom%, atomic.jpg
Gui, Show, x0 y0 w%MonitorRight% h%MonitorBottom%

MouseMove, 10000,10000
BlockInput, MouseMove





run, gens.exe atomic.bin

Loop {

IfWinActive Gens
{
sizew:= MonitorRight / 1.5
sizey:= MonitorBottom / 1.2
posx:=(MonitorRight-sizew)/2
posy:=(MonitorBottom-sizey)/2

winmove,Gens,, %posx%, %posy%, %sizew%, %sizey%

WinSet, Style, -0xC00000, Gens
WinSet, Style, -0x800000, Gens
WinSet, Style, -0x400000, Gens
break
}   
}

Loop {

GetKeyState, state, Esc
if (state = "D")
    {
    Send !f
    Send q
    }


IfWinNotActive Gens
{
mousemove 300,300
BlockInput, MouseMoveOff
exitapp
}     









Fijate que primero uso SetWorkingDir %A_ScriptDir% para incluir los binarios en la ruta del directorio original, pero luego paso a SetWorkingDir %temp% para trabajar del temporario

Al compilar ese script, te incluye todos los archivos en el ejecutable, luego puedes comprimirlo con upx o lo q sea si quieres reducir tamaño



El codigo te lo hice simple, se puede optimizar, pero creo q asi es mas entendible

Suerte


Imagen
Muchisimas gracias por la molestia de hecharme un cable, un verdadero placer encontrar gente como tu @theelf.
El tema ya va tomando forma.
Joder asi da gusto.
tortoclas escribió:Muchisimas gracias por la molestia de hecharme un cable, un verdadero placer encontrar gente como tu @theelf.
El tema ya va tomando forma.
Joder asi da gusto.


De nada

Pues asi deveria quedarte, fijate, si te funciona, pues ya tienes el codigo, a partir de ahi, es ponerte y pulir a tu gusto

https://www.mediafire.com/file/fm89z0sv ... r.exe/file
9 respuestas