ARCADE FOREVER

[Proyecto] AdvMenu+, Modificando el codigo fuente del Advmenu

« Older   Newer »
  Share  
daesdae
view post Posted on 25/1/2014, 19:07     +1   -1




Puesta la funcion joy_code, compilada, comprobado y como todo a ido bien, subido el arreglo al Git.

Pues tienes razon, cuando se genera el rc con las opciones por defecto no pone las de configuracion del joy:
joystick_assign up_joy up ...

una de dos: se me pasó en su día o lo decidí así para no liar a los que no usen joystick, apuntado. jeje

¿lo has probado?, en linux con un gamepad usb y la opcion device_joystick sdl le pilla de lujo.

Ufff las 19h, se me acumula el trabajo y las cervezas en el cuerpo...
 
Top
view post Posted on 1/2/2014, 10:37     +1   -1
Avatar

V.I.P.

Group:
Usuarios AFFA
Posts:
526
Reputation:
+10

Status:


Nene no lo he podido probar no tengo joystick :huh: , hoy mirando el Git he visto que has añadido soporte para 16 botones, por que no añades soporte completo para 2 joystick / panel arcade, que serian de 24 botones?

Joystick/Arcade --> 4 direcciones + 1 player/start + 1 coin/select + 6 botones

Yo uso todos los botones del panel en Advmenu para tener casi todas las opciones ;)
 
Top
daesdae
view post Posted on 1/2/2014, 15:05     +1   -1




Tu es que eres un maquina, jejeje

¿por que lo he puesto para una palanca y 16 botones, ademas, de no distingir entre joysticks?
poooooooooooo nu sé.
Me pareció que para manejar el menu con las direcciones y 16 botones ya era suficiente, pero siempre he tenido la duda de si meterle mas.
quizas le meta para poder configurar hasta 56botones mas palanca, tampoco consume mas el programa por aumentar esto ni nada.
Como esta hecho no distingue entre joystick, osea que si configuras el boton 5 del joy 1 para que por ejemplo cambie de emulador, el boton 5 del joy 2 tambien lo hace.
Tampoco supone mucho, está tirado, hacer que distinga entre joysticks.
Lo miraré.

Mira, nuevo cambio en la agenda, hoy y mañana le doy caña a esto y el lunes comienzo con el diff que me pasaste.
Ya tengo ganas de meterle mano al VeShistory.

Salu2

EDITO:
Ya que estamos, VeS, como tienes conectados los controles?
esto de configurar los botones del joystick sirve para todo lo que esté bajo la opcion device_joystick.
Y otra cosa, sobre la combinacion de botones y tal.
Si tienes, por ejemplo, el boton 1 -> enter y quieres hacer que boton1+botonN -> lo que sea.
coñe, no se va a acertar a pulsar los dos botones justo a la vez, si pulsas boton1 (le dejas pulsado) y luego el botonN, como leches hace para que no lance el el evento enter y sepa que lo que quieres hacer la combinacion. :wacko:
jejeje, mis pelis y tal.
Supongo que tenga que mirar como va con las teclas, pero lo habitual en las makas que es? destinar un boton exclusivo para hacer combinaciones de teclas (ese boton por sí solo no haria nada).
Es que estoy pensando hacer una especie de evento que funcionase como digo, exclusivo para las combinaciones.
A ver si me explico leñe:
Digamos que el evento para combinaciones le llamo shift, entonces:
boton1 -> enter
boton2 -> emulator_next
...
boton5 -> shift
boton5+boton1 -> help
boton5+boton2 -> favoritos

No se si me explicado bien, ¿que opinas?

todo esto solo son cabalas previas para cuando llegue el momento.

EDITO 2:
Llevo ya en el cuerpo unas cuantas cervezas, asi que perdonad si se me va la pelota...

Lo de que no distinguiese entre joys (todos hacen lo mismo), lo hice así porque como solo tengo un gamepad usb, no tengo ni idea si al enchufar otro los asigna bien.
En linux/windows: gamepad usb y en device_joystisk sdl (o similar, ahora no me acuerdo)
Ok, le reconoce como joystick 0 (el primero)
pero que pasa si enchufo otro al usb ¿le asigna joystick 1? no se. Asi que me dije, a tomar pol'culo, todos los joys que esten enchufados que hagan lo mismo indistintamente de que numerajo los asigne. :lol:
A le, a dormir las cervezas, jejeje

Edited by daesdae - 1/2/2014, 16:07
 
Top
view post Posted on 1/2/2014, 18:04     +1   -1
Avatar

V.I.P.

Group:
Usuarios AFFA
Posts:
526
Reputation:
+10

Status:


La combinacion de botones solo la tengo activa en los emuladores, si se pulsa "Coin1+Player1+boton 4" salgo del emu, en advmenu no lo he usado, tengo un boton para cada accion, seguramente la combinacion en un frontend este pensada para que ninguno de esos botones haga nada hasta que no se hace dicha combinacion, de esa forma se asegura que el usuario ha querido hacer tal cosa.

Yo pense agregar un contador de pulsacion para poder mostrar el menu Apagar, como hacen otros frontend, pero aun no lo hice, asi que supongo que esa seria una buena opcion para la combinacion de teclas en un frontend.

Con respecto a los joystick, para mi la mejor opcion es que cada joystick haga cosas independientes, ya que en un arcade normalmente no vas a usar un joystick con mil botones si no 2 joystick, una interface usb2jamma que emula 2 joystick independientes o un ipp que en linux/windows son joystick con sus correspondientes botones.

La asignacion deteccion de los joystick lo ves en el log del advmenu o en el debug? estoy probando con 2 mandos de ps3 y solo reconoce un con -1 , pero no me puedo fiar ya que no son mandos de pc normales.
 
Top
daesdae
view post Posted on 2/2/2014, 17:22     +1   -1




Buenas, tarde de Domingo de subidón Plusero total!!!!!!!!!!

He comprobado lo de poner dos joystick y me los ha reconocido, uno el mando de la ps2 al puerto paralelo y el otro un gamepad usb. ^_^
Al ps2 le asigna el joy 0 y al usb el joy 1. Esto hay que mirarlo por codigo. Con los dos joys funcionando bien, en el log me pone "josytickb:sdl: joystickb_sdl_init(id:-1)" por lo que la info del log para esto no vale, ni siquiera informa de los dos joys detectados <_<
Por codigo lo que hace es segun va detectando los joys los va asignando 0, 1, ... .
advmenu los dos joys hacen lo mismo, y que razón tienes VeS, lo ideal es que se puedan configurar independientemente.

Por otro lado he probado como va lo de la combinacion de teclas para ver como lo hace y efectivamente, una de las teclas de la combinacion no puede ser asignada a otro evento, por ejemplo:
event_assign mode tab not x
event_assign menu x tab
De esta forma funciona como queremos (pulsamos tab hace mode, pulsamos x (dejamos pulsado) + tab hace menu), siempre que:
- x no esté asignado a otro evento
- la combinacion sea, x + tab y no tab + x
- el "not x" hay que añadirselo para que cuando pulsemos el tab de la combinacion no lanze el mode.
Vamos, como si destinases un botón exclusivo para las combinaciones.

De momento, voy a meterle mano a la configuracion de los joys para que se puedan configurar independientemente.

QUOTE
Yo pense agregar un contador de pulsacion para poder mostrar el menu Apagar, como hacen otros frontend, pero aun no lo hice, asi que supongo que esa seria una buena opcion para la combinacion de teclas en un frontend.

Uhnnnnnn, interesante, no sabia de esto.

La combinacion de botones lo dejo para despues, tengo que pensar si hago que funcione como las del teclado, incluso que se declaren en los mismos event_assign o como hasta ahora en joystick_assign, creo que lo cojonudo sería la primera, quedaría así:
event_assign up up or 1joy_up
event_assign mode tab or 1joy_3

Salu2 y al lio.
 
Top
Alex-Arcade
view post Posted on 2/2/2014, 19:08     +1   -1




Hola!

Estoy con una cuestión personal contra los archivos .lst estoy creando para Visual pinball.
Agregando "cloneof" y pulsando F12 aparece correctamente, pero el juego de la copia se queda en la lista principal.
El clon correcto sólo aparecerán en la lista cuando se presiona F12, algún consejo sobre cómo resolver?

game ( name terminator_2 description "Terminator 2" manufacturer "Williams" year 1991 )
game ( name terminator_chrome description "Terminator 2 - Chrome" manufacturer "MOD" year 1991 cloneof terminator_2)

wb7f
 
Top
daesdae
view post Posted on 2/2/2014, 19:35     +1   -1




Hola, Alex-Arcade

A ver si te he entendido:
- tienes dos pinballs (terminator_2 y terminator_chrome)
- en el lst declaras al chrome como un clone de terminator_2
- y en la lista principal solo aparece terminator_2
- si pulsas F12 se muestran los dos en una ventana
hasta aquí correcto

Si lo que quieres es que te aparezcan los dos en la lista principal
F4 (filters) -> Parent or Clone
 
Top
Alex-Arcade
view post Posted on 2/2/2014, 19:58     +1   -1




Hi Daesdae!!

De otro modo, en la lista principal clon no debería aparecer sólo cuando debería aparecer F12 presionado.

Utilizando el .lst no hay las mismas opciones de filtro de modo de "MAME" con ".Xml"

rrt3

Edited by Alex-Arcade - 2/2/2014, 20:20
 
Top
daesdae
view post Posted on 2/2/2014, 20:47     +1   -1




QUOTE
If you want, you can manually write a MAME like information file and name it as `ENUNAME.lst'. This file has the same format of the output of the `-listinfo' MAME command. Actually only the information `game', `name', `description', `year', `manufacturer', `cloneof' are used. Please note that this file is used only to add information at the existing games. The games present in this file are not automatically added at the game list.

existen las tablas terminator_2 y terminator_chrome ?

------------------------------------------------------------------------------

- lo de los filtros para lst -> lo apunto para implementarlo
 
Top
view post Posted on 2/2/2014, 21:01     +1   -1
Avatar

V.I.P.

Group:
Usuarios AFFA
Posts:
526
Reputation:
+10

Status:


Hola, ya tengo solucionado el problema del Menu fantasma Sercurity_exit, me faltaban estas dos... funciones

QUOTE
do{
void* save = int_save();
int key = ch.security_run(etiqueta, SECOND_CHOICE_X, SECOND_CHOICE_Y, 500,a);
int_restore(save);
if (key == EVENT_ESC || key == EVENT_ENTER)
done = true;
tecla = key;
}while (!done);

Una cosa que no tienes que mirar, bueno si, de limpiar el codigo ;) , ahora que se donde esta el error voy a revisar todo para limpiar chapuzas.

Acabo de recordar que se nos quedo varias cosas en el tintero que para mi son muy importantes:
1-Guarda en que juego estas aunque cambies de grupo o tipo, ahora solo lo hace cuando cambias entre emulador.

2-Añadir All-Game a los tipos para que podamos tener la lista completa aunque tengamos dichas categorias (esto
dijimos de hacerlo verdad¿?¿?¿?)

3-MultiLayout para cada emu, me ha dado una idea el nuevo frontend attratmode (no estoy poniendo los cuernos, lo han pedido y como era facil de incluir..... se ha colado, pero AdvmenuPlus sera el primero y por defecto )que he incluido en GA, es que muestre desde el menu todos los layout que vea en su directorio configurado.


EDITO

QUOTE (daesdae @ 2/2/2014, 17:22) 
La combinacion de botones lo dejo para despues, tengo que pensar si hago que funcione como las del teclado, incluso que se declaren en los mismos event_assign o como hasta ahora en joystick_assign, creo que lo cojonudo sería la primera, quedaría así:
event_assign up up or 1joy_up
event_assign mode tab or 1joy_3

No habia visto esto, para mi es la mejor forma que se asigne a los event del teclado.


Alex-Arcade puedes explicar como usas los soft-list en AdvmenuPlus?


Saludos.

Edited by VeS - 2/2/2014, 23:41
 
Top
Alex-Arcade
view post Posted on 3/2/2014, 00:20     +1   -1




QUOTE (VeS @ 2/2/2014, 21:01) 
Alex-Arcade puedes explicar como usas los soft-list en AdvmenuPlus?

@Ves lo siento no entender, te refieres a cómo utilizar múltiples sistemas en un único AdvanceMENU?
 
Top
view post Posted on 3/2/2014, 00:30     +1   -1
Avatar

V.I.P.

Group:
Usuarios AFFA
Posts:
526
Reputation:
+10

Status:


Hola Alex-Arcade , pensaba que los ficheros lst , eran los softlist que usa mess para mostrar todos sus sistemas emulados como el xml de mame, pero he visto ahora mismo que usan xml, tambien para los demas sistemas, de todas formas podrias explicar que son los lst y como los usas?


Saludos.
 
Top
daesdae
view post Posted on 3/2/2014, 01:30     +1   -1




Buenas Noches

Acabo de subir al Git la nueva la nueva configuración de los joys:
Ahora en el advmenuplus son configurables hasta 4 joysticks con 16 botones cada uno.
y probado con rotundo éxito :woot:
Aunque de momento siguen declarandose en joystick_assign, pero ahora el boton a configurar es 1joy_up, ..., 1joy_16, ..., 2joy_up,...
ejemplo: joystick_assign 2joy_5 menu -> el boton 5 del joystick 2

Ole, es VeS-cazafantasmas, jejeje

En cuanto a las cosas del tintero:
1- sí, cierto
2- All Games en tipos, creo que yo estaba por el NO, pero lo repensaré
3- "no estoy poniendo los cuernos" <_< "AdvmenuPlus sera el primero y por defecto" a vale ^_^
para lo de buscar los layouts en la carpeta que se supone le pasariamos en el rc, aunque supongo que ya lo habras pensado, sigue la pista de como crea la lista de las snaps, como las busca y añade supongo que a un listado o similar. el menu deberia mostrar esa lista y el escogido le meteria en la estructura del emulador correspondiente en algo así como (*j)->layout_path , al salir del advmenu creo que la guardaria directamente en el rc.
Bueno, mas o menos así sería la peli.

Hasta mañana que me empieza la Super Bowl.
Salu2
 
Top
Alex-Arcade
view post Posted on 3/2/2014, 01:42     +1   -1




Hi Ves, emuladores que utilizan "generic" en "advmenurc" uso .lst para obtener más información "description, manufacturer, year"

Crear .lst son bastante tedioso, utilizo como referencia el hyperpin .xml y subo al .lst los detalles de la descripción, fabricante, año, uno por uno. wacko wallbash
Sería interesante que algún programa para convertir .xml a .lst :wub:

En el archivo advmenu.rc tener
emulator "Sega_Model2" generic "E:\003-Advmenu-003\Arcade\Sega_Model2\Sega_Model2.bat" %­s
Actualmente las opciones de filtros utilizados en el .xml no funcionan con .lst

Sega_Model2.lst
SPOILER (click to view)
game ( name daytona description "Daytona USA" manufacturer "Sega - Model 2" year 1994 )
game ( name dayton93 description "Daytona USA 93 Edition" manufacturer "Sega - Model 2" year 1994 )
game ( name daytonas description "Daytona USA (Saturn ADS)" manufacturer "Sega - Model 2" year 1994 )
game ( name daytonat description "Daytona USA Turbo" manufacturer "Sega - Model 2" year 1994)
game ( name daytonagtx description "Daytona USA: GTX2004" manufacturer "Sega - Model 2" year 1994 )
game ( name daytonam description "Daytona USA: To The Maxx" manufacturer "Sega - Model 2" year 1994 )
game ( name desert description "Desert Tank" manufacturer "Sega - Model 2" year 1994 )
game ( name vcop description "Virtua Cop" manufacturer "Sega - Model 2" year 1994 )
game ( name vcop2 description "Virtua Cop 2" manufacturer "Sega - Model 2" year 1995 )
game ( name doaa description "Dead or Alive" manufacturer "Sega - Model 2A" year 1996 )
game ( name dymancop description "Dynamite Cop" manufacturer "Sega - Model 2A" year 1996 )
game ( name dyndeka2 description "Dybamite Deka 2" manufacturer "Sega - Model 2A" year 1996 )
game ( name manxtt description "MAnxTT Superbike" manufacturer "Sega - Model 2A" year 1995 )
game ( name motoraid description "Motor Raid" manufacturer "Sega - Model 2A" year 1997 )
game ( name pltkidsa description "Pilot Kids" manufacturer "Sega - Model 2A" year 1998 )
game ( name srallyc description "Sega Rally Champioshiop" manufacturer "Sega - Model 2A" year 1995 )
game ( name srallycb description "Sega Rally Championship (RevB)" manufacturer "Sega - Model 2A" year 1995 )
game ( name srallyp description "Sega Rally Pro Drivin'" manufacturer "Sega - Model 2A" year 1992 )
game ( name skytargt description "Sky Target" manufacturer "Sega - Model 2A" year 1995 )
game ( name Vcop2 description "Virtua cop 2" manufacturer "Sega - Model 2A" year 1995 )
game ( name vf2o description "Virtua Fighter 2" manufacturer "Sega - Model 2A" year 1995 )
game ( name vf2a description "Virtua Fighter 2 (RevA)" manufacturer "Sega - Model 2A" year 1995 )
game ( name vf2b description "Virtua Fighter 2 (RevB)" manufacturer "Sega - Model 2A" year 1995 )
game ( name vf2 description "Virtua Fighter 2.1" manufacturer "Sega - Model 2A" year 1995 )
game ( name zeroguna description "Zero Gunner" manufacturer "Sega - Model 2A" year 1997 )
game ( name doa description "Dead or Alive" manufacturer "Sega - Model 2B" year 1996 )
game ( name dynabb description "Dynamite Baseball" manufacturer "Sega - Model 2B" year 1996 )
game ( name dynmcopb description "Dynamite Cop" manufacturer "Sega - Model 2B" year 1996 )
game ( name dyndek2b description "Dynamite Deka 2" manufacturer "Sega - Model 2B" year 1997 )
game ( name fvipers description "Fighting Vipers" manufacturer "Sega - Model 2B" year 1995 )
game ( name gunblade description "Gunblade NY" manufacturer "Sega - Model 2B" year 1995 )
game ( name indy500b description "Indianapolis 500 (RevA-Deluxe)" manufacturer "Sega - Model 2B" year 1995 )
game ( name indy500 description "Indianapolis 500 (RevA-Twin)" manufacturer "Sega - Model 2B" year 1996 )
game ( name lastbrnx description "Last Bronx (Export-RevA)" manufacturer "Sega - Model 2B" year 1996 )
game ( name lastbrnj description "Last Bronx (RevA)" manufacturer "Sega - Model 2B" year 1996 )
game ( name pltkids description "Pilot Kids" manufacturer "Sega - Model 2B" year 1998 )
game ( name rchase2 description "Rail Chase 2" manufacturer "Sega - Model 2B" year 1994 )
game ( name schamp description "Sonic Championship" manufacturer "Sega - Model 2B" year 1996 )
game ( name sfight description "Sonic The Fighters" manufacturer "Sega - Model 2B" year 1996 )
game ( name sgt24h description "Super GT 24h" manufacturer "Sega - Model 2B" year 1996 )
game ( name vstrikro description "Virtua Striker" manufacturer "Sega - Model 2B" year 1994 )
game ( name vstriker description "Virtua Striker (RevA)" manufacturer "Sega - Model 2B" year 1994 )
game ( name vonj description "Virtual On Cybertroopers (Japan)" manufacturer "Sega - Model 2B" year 1995 )
game ( name von description "Virtual On Cybertroopers (US)" manufacturer "Sega - Model 2B" year 1995 )
game ( name zerogunj description "Zero Gunner (Jap)" manufacturer "Sega - Model 2B" year 1997)
game ( name zerogun description "Zero Gunner" manufacturer "Sega - Model 2B" year 1997 )
game ( name bel description "Behind Enemy Lines" manufacturer "Sega - Model 2C" year 1997 )
game ( name dynmcopc description "Dynamite Cop" manufacturer "Sega - Model 2C" year 1998 )
game ( name hotd description "House of Dead" manufacturer "Sega - Model 2C" year 1996 )
game ( name overrev description "Over Rev" manufacturer "Sega - Model 2C" year 1997 )
game ( name skisuprg description "Sega Ski Super G" manufacturer "Sega - Model 2C" year 1997 )
game ( name stcc description "Sega Touring Car Championship" manufacturer "Sega - Model 2C" year 1996 )
game ( name stcce description "Sega Touring Car Championship (Euro)" manufacturer "Sega - Model 2C" year 1996 )
game ( name segawski description "Sega Water Ski" manufacturer "Sega - Model 2C" year 1996 )
game ( name topskatr description "Top Skater" manufacturer "Sega - Model 2C" year 1997)
game ( name topskatu description "Top Skater (Usa)" manufacturer "Sega - Model 2C" year 1997 )
game ( name waverunr description "Wave Runner" manufacturer "Sega - Model 2C" year 1996 )


Edited by Alex-Arcade - 3/2/2014, 03:46
 
Top
daesdae
view post Posted on 5/2/2014, 17:21     +1   -1




Bueno gente, ya anda por el Git la nueva y definitiva configuracion de los botones para el advmenuplus :D
Ahora se configuran como las teclas del teclado, en event_assign y como las teclas, tambien se pueden hacer combinaciones de botones.
La verdad que ha sido mucho mas sencillo de hacer que lo que tenia antes y el poco codigo que he tocado está de p.m.

Configurables hasta 4 joysticks de 16 botones cada uno

Njoy_BUTTON (1joy_up, ..., 1joy_16, ..., 4joy_up, ..., 4joy_16)
N: number of joystick (1, 2, 3, 4)
BUTTON: number button or joystick direction (up, down, left, right, 1, ..., 16)

Example:
event_assign esc esc or 1joy_7 1joy_8

Default:
event_assign up up or 8_pad or 1joy_up
event_assign down down or 2_pad or 1joy_down
event_assign left left or 4_pad or 1joy_left
event_assign right right or 6_pad or 1joy_right
event_assign enter enter or enter_pad or 1joy_1
event_assign esc esc or 1joy_2
event_assign menu backquote or backslash or 1joy_3
event_assign preview space or 1joy_4
event_assign mode tab or 1joy_5

-----------------------------------------------------------------------------------

Hoy me ha dado por darle una vueltita el ipp, y aunque ya tengo una version cojonuda para DOS, estoy cambiando el driver a ver si lo hago compatible con todos los sistemas.
Si hoy no lo consigo pasaré de él, de momento, y me pongo con el diff de VeS y/o cosas pendientes.

Salu2
 
Top
647 replies since 8/9/2009, 21:56   30302 views
  Share