ARCADE FOREVER

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

« Older   Newer »
  Share  
Alex-Arcade
view post Posted on 28/2/2014, 20:55     +1   -1




Hi Daesdae!!

Cualquier pronóstico va a salir uno nuevo version para windowns con estas nuevas características añadidas?
 
Top
soyneo2
view post Posted on 14/3/2014, 22:39     +1   -1




Mmmm mola, no lo conocia
 
Top
daesdae
view post Posted on 24/7/2014, 19:49     +1   -1




Hi a todos.

Retomando proyecto ...

A ver si esta vez no me lio con otras cosas.

Salu2
 
Top
Alex-Arcade
view post Posted on 26/7/2014, 01:48     +1   -1




QUOTE (daesdae @ 24/7/2014, 20:49) 
Hi a todos.

Retomando proyecto ...

A ver si esta vez no me lio con otras cosas.

Salu2

Para celebrar el regreso de daesdae subir un layout que he estado editando los tiempos.
Link

:woot: :woot: :woot:

Edited by Alex-Arcade - 26/7/2014, 20:23
 
Top
daesdae
view post Posted on 28/7/2014, 12:33     +1   -1




Buenas, dejo por aquí la 2014.07.27

AdvMenuPLUS 2014.07.27


Download

Código fuente: advmenuplus-20140727-src.tar.gz
Windows 32: advmenuplus-20140727-bin-win32.zip
DOS: advmenuplus-20140727-bin-dos.zip
Ubuntu 32: advmenuplus-20140727-bin-ubuntu32.tar.gz
Ubuntu 64: advmenuplus-20140727-bin-ubuntu64.tar.gz


History/caracteristicas

ADVMENUPLUS VERSION 2012.11.27
========================

* AdvMenuPLUS 2012.11.27


ADVMENUPLUS VERSION 2013.02.02
========================

* Updated to advanceMENU 2.6

* fIxEd SoMe BuGs

* Font size in mode no-custom (ui_fontsize, emulator_font_size) to the original format (no pixels).

* Added new filters for M.A.M.E. games (by VeS)

* Substituted "groups" to "favorite lists"
SPOILER (click to view)
Cambiados los nombres de las opciones del advmenu.rc:
- group -> favorites
- group_include -> favorites_include
- event_assign group f2 -> event_assign favorites_next f2
- event_assign setgroup f9 -> event_assign setfavorites f9

Algunas características de las listas de favoritos:

- Declaración de las listas: favorites "lista 1"

- Las lista de cada juego se guardan en el advmenu.rc en la propiedad
game "Emulador/rom" "Lista 1/.../Lista N" "..." "..." "..."

- Siempre existe la lista "All Games" que muestra todos los juegos del emulador, aunque no esté declarada en el advmenu.rc

- Los filtros y los tipos solo afectan a la lista "All Games"

- Muestra la Lista de Favoritos cargada en modo no-custom en la barra superior

- Si no hay juegos en la lista muestra un mensaje informando de la lista de favoritos cargada y el emulador

- F2 : muestra la lista siguiente

- F9 ó Menu->Settings...->Game Lists... : muestra una ventana/menú para escoger en que listas incluir o excluir el juego seleccionado.

Teclas utilizadas:
ARROWS -> desplazarse por las listas
SPACE -> incluir/excluir el juego en la lista seleccionada.
ENTER -> guarda los cambios
ESC -> sale del menú sin guardar cambios

Acceso desde el menu de AdvmenuPlus:
- Menu->Listing...->Game Lists... : muestra un menú para seleccionar la lista a mostrar

* Layouts: New tags for bars information layouts
SPOILER (click to view)
%emulator% -> nombre del emulador
%­rom% -> nombre del rom o clone seleccionado
%­type% -> tipo/categoria a la que pertenece el juego seleccionado
%­group% -> grupo al que pertenece el juego seleccionado
%­refresh% -> frecuencia de refresco del juego seleccionado
%favorites% : lista de favoritos cargada
%­game_favorites% : listas de favoritos a las que pertenece el juego seleccionado
%clone% : muestra el numero de clones.
- juego seleccionado es un parent -> N clones
- juego seleccionado es un clone -> clone of EMULATOR/PARENT


ADVMENUPLUS VERSION 2014.07.27
========================

* Updated to advanceMENU 2.7

* Layouts: Modified %clone% tag.
SPOILER (click to view)
Si el juego seleccionado es:
- Parent, sin clones -> "No Clones"
- Parent, con 1 clone -> "1 Clone"
- Parent, con N > 1 clones -> "N Clones"
- Clone -> "Clone of PARENT"

* Added joysticks configuration in options 'event_assign'
SPOILER (click to view)
Los joysticks se configuran como las teclas, en los event_assign del advmenu.rc

Configurables hasta 4 joysticks de 16 botones cada uno

event_assign EVENTO Njoy_BUTTON

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
El evento ESC se producirá cuando se pulsa la tecla ESC o cuando se pulsa la combinacion del
botón 7 y 8 del joystick 1

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

* DOS: Added support AC97 audio to chips (Intel, NVidia)
SPOILER (click to view)
- Intel 82801EB/ER (ICH5)
- Intel 82801FB/FR/FW/FRW (ICH6)
- Intel unknown (ICH7)
- Intel unknown (ESB/ESB5)
- Intel unknown (ESB2)

- NVIDIA nForce 2 (MCP2)
- NVIDIA nForce 3 (MCP3)
- NVIDIA unknown (MCP04)
- NVIDIA unknown (MCP51)
- NVIDIA unknown (CK804)
- NVIDIA unknown (CK8)
- NVIDIA unknown (CK8S)

* DOS: Added driver for IPP Arcade Joystick (Interfaz Puerto Paralelo)
SPOILER (click to view)
Supports 1 joystick with up to 56 buttons.

advmenu.rc: device_joystick ipp

See <http://www.retrovicio.org/tutoriales/interfaz-puerto-paralelo>
for details on how to build the interface.

LPT1 | Pin 10 | Pin 11 | Pin 12 | Pin 13 | Pin 15
-----------------------------------------------------------
Pin 02 | UP DOWN LEFT RIGHT button_01
Pin 03 | button_02 button_03 button_04 button_05 button_06
Pin 04 | button_07 button_08 button_09 button_10 button_11
Pin 05 | button_12 button_13 button_14 button_15 button_16
Pin 06 | button_17 button_18 button_19 button_20 button_21
Pin 07 | button_22 button_23 button_24 button_25 button_26
Pin 08 | button_27 button_28 button_29 button_30 button_31
Pin 09 | button_32 button_33 button_34 button_35 button_36
Pin 01 | button_37 button_38 button_39 button_40 button_41
Pin 14 | button_42 button_43 button_44 button_45 button_46
Pin 16 | button_47 button_48 button_49 button_50 button_51
Pin 17 | button_52 button_53 button_54 button_55 button_56



Salu2
 
Top
Alex-Arcade
view post Posted on 28/7/2014, 18:35     +1   -1




Thanks Daesdae!

buenas noticias, las pruebas!
 
Top
Alex-Arcade
view post Posted on 31/7/2014, 17:35     +1   -1




Hi Daesdae.

Una imagen de fondo estaba editando en el menú Ayuda, y ella se aplana mediante la resolución de 1600x1200
 
Top
daesdae
view post Posted on 31/7/2014, 21:09     +1   -1




Hola Alex, acabo de comprobarlo, es un bug que viene del advmenu original. Mañana intento solucionarlo.

Apunto...

Bug Resoluciones Altas (>1360x...):

A resoluciones altas (display_size 1360) el vídeo de comienzo y la imagen de ayuda se muestran estrechas o achatadas.
Supongo que algo tendrá que ver con este otro bug #entry538389238 -> aparece estrechado/achatado el propio advmenu
-----------------------------------------

Otra cosa, aunque no diga nada por aquí, estoy dándole al código, refactorizando (limpiando, reestructurando) alguna cosita, ya os contaré...

Salu2 y gracias por reportar fallos y demás.
 
Top
daesdae
view post Posted on 31/7/2014, 21:43     +1   -1




Alex, la resolucion 1600x1200 ¿es la de tu monitor (la del windows7) o de la imagen help?
¿que resolucion tienes en el advmenu.rc? ¿display_size 1600?
 
Top
Alex-Arcade
view post Posted on 31/7/2014, 23:49     +1   -1




QUOTE (daesdae @ 31/7/2014, 22:43) 
Alex, la resolucion 1600x1200 ¿es la de tu monitor (la del windows7) o de la imagen help?
¿que resolucion tienes en el advmenu.rc? ¿display_size 1600?

la resolución del monitor es 1600x1200 utilizando AdvanceMENU también. (windows 7)

advmenu.rc
display_size 1600
 
Top
daesdae
view post Posted on 1/8/2014, 10:09     +1   -1




Bug cazado!!! :D

Alex, prueba y cuenta.

Download binario Windows: advmenuplus-bugres-win.zip
Es el advmenuplus 2014.07.27 + Arreglado Bug Resoluciones Altas

Me voy que no llego!!!!!!!!!!!

Salu2
 
Top
Alex-Arcade
view post Posted on 2/8/2014, 00:55     +1   -1




QUOTE (daesdae @ 1/8/2014, 11:09) 
Bug cazado!!! :D

Alex, prueba y cuenta.

Download binario Windows: advmenuplus-bugres-win.zip
Es el advmenuplus 2014.07.27 + Arreglado Bug Resoluciones Altas

Me voy que no llego!!!!!!!!!!!

Salu2

Hi Daesdae!

En mis pruebas sigue siendo la llanura de la imagen de la HELP, pero sólo en horizontal
q4dzon5l

Descargar advmenu así que puedes probar.
Advmenu_BUG
 
Top
daesdae
view post Posted on 2/8/2014, 03:25     +1   -1




Hi Alex

La imagen que has subido es 16:9, ¿tu monitor es 4:3 o 16:9?

Descargo, pruebo y te cuento...
 
Top
Alex-Arcade
view post Posted on 2/8/2014, 14:54     +1   -1




QUOTE (daesdae @ 2/8/2014, 04:25) 
Hi Alex

La imagen que has subido es 16:9, ¿tu monitor es 4:3 o 16:9?

Descargo, pruebo y te cuento...

OK..realidad hizo la prueba en un monitor y 4:3 es correcto. :P
 
Top
daesdae
view post Posted on 2/8/2014, 16:54     +1   -1




:B):

jejeje, entonces solucionado para 4:3 :woot:

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

Cuento un poco cuales son los problemas con las resoluciones:

1.- Para resoluciones mayores de 1200 las imágenes de help y start a fullscreen se muestran muy estrechas. SOLUCIONADO
2.- En monitores panorámicos (no 4:3) a fullscreen hay problemas de escalado de las imágenes.
Esto es porque por diversas partes del código, asume que tenemos monitor 4:3, como por ejemplo en la función del bug anterior
CODE
aspectx *= 3 * video_size_x();
aspecty *= 4 * video_size_y();

y claro la lía.
Esto en principio, porque lo estoy mirando...

-------------------------------------------------------------------------------------------
Para curiosos (VeS ande andaras), Solución al problema 1:
text.cc
CODE
void cell_pos_t::compute_size(unsigned* rx, unsigned* ry, const adv_bitmap* bitmap, unsigned aspectx, unsigned aspecty, double aspect_expand)
{        ...

       aspectx *= 3 * video_size_x();
       aspecty *= 4 * video_size_y();

       //arreglado bug resoluciones altas.
       if (aspectx * real_dy > aspecty * real_dx) {
               *rx = real_dx;
               *ry = static_cast<unsigned>(real_dx * aspecty * aspect_expand / aspectx);
       } else {
               *rx =  static_cast<unsigned>(real_dy * aspectx * aspect_expand / aspecty);
               *ry = real_dy;
       }

       ...
}


En concreto el problema está en las lineas:
CODE
*ry = static_cast<unsigned>(real_dx * aspecty * aspect_expand / aspectx);
*rx =  static_cast<unsigned>(real_dy * aspectx * aspect_expand / aspecty);

En lenguaje mas entendible, no es mas que una multiplicación y división
R = A * B / C
¿hace mal la cuenta? pues SI,
Para resoluciones grandes, por ejemplo 1600, A * B es enorme, del orden de 9.000.000.000 (9 mil millones) :o:
y este numero no cabe en la variable R que es unsigned (enteros positivos) que como máximo caben unos 4.000.000.000 (4 mil millones) jejeje
y se flipa y hace mal la cuenta.

Solución: hacer primero la división (resultado entorno a 1) y luego la multiplicación (resultado entorno a la resolución 1600)
R_tmp = B / C
R = A * R_tmp
CODE
double ry_tmp = aspecty * aspect_expand / aspectx;
*ry = static_cast<unsigned>(real_dx * ry_tmp);


Y problema 1 solucionado a falta de hacer muchas mas pruebas y tal...

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

Ufff, vaya chapa he metido <_<

Bueno, a ver si mañana me pongo con el problemo 2.

Salu2

Edited by daesdae - 2/8/2014, 18:14
 
Top
647 replies since 8/9/2009, 21:56   30302 views
  Share