Como ya sabréis desde hace un tiempo ando haciendo portables para las competiciones, sobre todo portables de juegos arcade de MAME.
El caso es que también he hecho alguno de Megadrive, Commodore Amiga, ZX Spectrum, etc y excepto el de Commodore Amiga que por defecto creo que generaba pantallazos en el resto no era posible.
Con la competición de Fase Bonus, he acelerado el tema de crear un programita que introduciré en los portables de forma que pulsando una tecla o combinación de dos nos genere un pantallazo en el momento que necesitemos de forma que nos sirva para el tema de las puntuaciones.
Los portables que genere ya irán preconfigurados pero como siempre subiré el programita por si alguien quiere usarlo por su cuenta.
El programa además del ejecutable leerá una serie de parámetros de un fichero ini llamado sshot.ini
El contenido del fichero hasta el momento es el siguiente:
[general]
repeat=1
tecla1=k
tecla2=s
dirScreenshot=c:\snap
ExitAfterScreen=N
procesoVigilado=Fusion.exe
A continuación comento por encima los parámetros.
Repeat podrá contener los valores 1 o 0 de forma que cuando tenga el valor 1 escribirá la tecla pulsada de las que configuremos en tecla1 o tecla2 y con un 0 no lo hará. Esto es un tema visual aunque si no te funcionan las combinaciones tendrás que probar con el 1 o con el 0. (Ya pondré
por aquí link a un problema que tuvo @Zael que se resolvió con esto ya que este parámetro viene tomado del AllInOneFYC).
Tecla1Podrá contener una tecla o un botón de un joystick que será con la que peguemos el pantallazo. Para saber los botones del joystick o gamepad podremos usar bien el AllInOneFYC en modo TEST o el
TestJoystick.
Tecla2Al igual que Tecla1 podrá contener bien una tecla o un botón. Si definimos las dos el pantallazo se hará con la combinación de las pulsaciones de Tecla1 y Tecla2.
dirScreenshotPor defecto, llavará el valor
c:\snap que es la carpeta usada en los portables arcade. Obviamente, podréis usar la que queráis.
ExitAfterScreenEsta variable podrá contener los valores Y o N donde pasamos a explicar lo que ocurre si contiene un valor u otro lo cual os sonará de AllInOneFYC.
Y: El programa se cerrará tras haber pegado el pantallazo.
N: El programa no se cerrará tras haber pegado el pantallazo.
procesoVigiladoAquí pondremos el nombre de un ejecutable; por ejemplo, ando haciendo pruebas con el emulador Fusion para Megadrive por lo que la variable quedaría tal que así:
procesoVigilado=Fusion.exeEsta variable lo que hace es que justo tras pegar un pantallazo, mira a ver si el programa que le pongamos está abierto y en caso de no estarlo se cierra; por lo tanto, una forma de cerrar nuestro programa pantallazos sería que justo tras cerrar nuestro emulador, volvemos a pegar un pantallazo y al haber cerrado nuestro emulador pegamos el pantallazo y a continuación se cierra lo cual nos evita tener que poner otras teclas para cerrar el programa.
Estoy ultimando pruebas así que si a alguien se le ocurre alguna idea que la comente...