Software Support > GroovyMAME

GroovyMAME 0.283 - Switchres 2.21f

<< < (94/99) > >>

haynor666:
I only tested till the end only Mystic Warriors Wild West COW so far. Mystic Warriors seems to be ok but Wild West COW still has problems on final boss.

EDIT. Looking at what new and Bob Zed wideo only Mystic Warrios seems to fixed. Fade effects in GX driver are not tested.

Recapnation:
Supposedly Gaiapolis is glitches-free at this point as well? Not sure if that predates the latest MAME release, though. Keeping track of MAME development these days is harder than ever.

arc11:
Hello

First of all, Thank you for the great work made for GroovyMame !!!


I have 2 things to report.

1)
I compile the mame.exe for windows from source with gcc / llvm-ld in a mingw64 environment (msys2), without SDL on windows 7.
the GroovyMame compilation was broken in 273 (I started modifying the source to work around this, and stopped because lack of time). The 246 was fine in my environment. And in 277 it's almost corrected. (Of course unpatched mame 246, 273 and 277 compile fine in my environment)

I corrected it myself.

The "#define MISTER_INPUT 1"  line must be moved from input_common.h to input_mister.cpp (before the first #include)


2) But there is another problem, I use a JAMMAsd USB hardware to connect my arcade cabinet to my PC.
The cabinet inputs are seen in my PC as a keyboard, and buttons pressed on the cabinet produce key-stroke on PC (standard MAME binding)
.




In GM246 the pseudo keyboard is detected correctly :

Input: Adding keyboard #0: Périphérique clavier PIH (device id: \\?\HID#VID_0461&PID_4DD7&MI_00#7&38a8056e&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding keyboard #1: Périphérique clavier PIH (device id: \\?\HID#VID_04D8&PID_F3AD&MI_01&Col01#7&14c413dd&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding mouse #0: Souris HID (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding lightgun #0: Souris HID (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})


(one keyboard is the regular keyboard attached to the PC, the other one is the jammaSD usb connected.

in regular (unpatched) mame 277 I have this :
Input: Adding keyboard #1: Périphérique clavier PIH (device id: \\?\HID#VID_0461&PID_4DD7&MI_00#7&38a8056e&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding keyboard #2: Périphérique clavier PIH (device id: \\?\HID#VID_04D8&PID_F3AD&MI_01&Col01#7&14c413dd&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding mouse #1: Souris HID (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding lightgun #1: Souris HID (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})







In GM277 (maybe before, I'm not sure since I had compilation problem due to SDL etc...)  :

Input: Adding keyboard #1: HP USB Multimedia Keyboard (Ð%) (device id: \\?\HID#VID_0461&PID_4DD7&MI_00#7&38a8056e&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding mouse #1: USB Optical Mouse (Logitech) (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding lightgun #1: USB Optical Mouse (Logitech) (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})

So The jammasd pseudo keyboard is not seen and no arcade cabinet control work, only regular keyboard on pc.



I managed to get it working by reverting the function in src/osd/module/input/input_rawinput.cpp (I'm not certain of the path)
template<class TDevice>
TDevice *create_rawinput_device
to the mame 277 (unpatched) version of this function.

But there must be a correct way to fix this.

I attached my register dump of the CurrentControlSet\Enum\HID , I suspect a problem with the parsing of this tree, but I've never tried to run gdb on a mame.exe (is it possible ?, symbol table not too big ?)

added verbose log with GM277 and with the workaround (reverting the function above to original mame version)


Thank you for your help

arc11:
I managed to debug the create_rawinput_device function.

The faulty test is this :

      // this is for duplicate devices in a collection such as extra mouse buttons
      if (tname_basic_string.find(L"&Col01") != std::string::npos)
         return nullptr;


When I comment these 2 lines, the jammasd keyboard is correctly detected :

Input: Adding keyboard #1: HP USB Multimedia Keyboard (Љ) (device id: \\?\HID#VID_0461&PID_4DD7&MI_00#7&38a8056e&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding keyboard #2: ASD Keyboard (ASD) (device id: \\?\HID#VID_04D8&PID_F3AD&MI_01&Col01#7&2a8c704e&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding mouse #1: USB Optical Mouse (Logitech) (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})
Input: Adding lightgun #1: USB Optical Mouse (Logitech) (device id: \\?\HID#VID_046D&PID_C05A#6&370e698b&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd})


There is still a minor cosmetic error while retrieving the HP manufacturer string, but it's really minor....

I attached a groovymame277.patch that includes the 2 fixes (compilation and jammasd pseudo keyboard).







In a completely different matter :
I have a general question about the game selection menu (native mame frontend).
Is there a way to set the resolution ?
Because I have a NAC cabinet with MS9-29 chassis with auto switching between the 24k and 15k mode.
And each time I enter this menu and run a game the mecanical relay that switches from 15k to 24k mode toggles several time each time I enter/exit the menu.

It's not very good for the longevity of this device.

Is there a way to avoid this ? If I add the -resolution AxB@C when launching groovymame, it no longer toggles, but the switchres doesn't switch to other resolution either...

Thank you

arc11:
Hello

I found another issue, related to the font size.

with groovymame277 the text is unreadable in the menu. (readable in the mame 277 non patched)

searching into the patch file, I found in the file src/frontend/mame/ui/ui.cpp
this change :
    float const one_to_one_line_height = float(raw_font_pixel_height) / target_pixel_height;
 
    // determine the scale factor
-   float scale_factor = target_font_height() * scale / one_to_one_line_height;
+   float scale_factor = std::min(target_pixel_height / float(raw_font_pixel_height) / options().font_rows(),
+                        target_pixel_width / float(raw_font_pixel_height) / options().font_rows());
 
    // if our font is small-ish, do integral scaling
    if (raw_font_pixel_height < 24)



I think the expression target_pixel_width / float(raw_font_pixel_height) / options().font_rows()
should probably be target_pixel_width / float(raw_font_pixel_width) / options().font_rows()

but I guess the get_font()->pixel_width() doesn't exist....

I removed this change, and the font size is readable again...

I attached a path file includng the correction.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version