Closed Riddler1 closed 4 years ago
@Riddler1 do the same graphical problems happen when using MAME2003.??
Actually i think i know what the problem is, check the dip switch options for this game and make sure flip screen is set to off as if it's on you'll get those graphical problems as some games do not have their flip screen / cocktail mode emulated correctly in MAME.
Thanks. Yes same thing in mame2003 aswell. Screen flipping was turned off, i toggled it but same issue.
Hmmm, can of worms here....3 things. So i found that using player 2 ship, the controls are forced to move to the right and the craft is automatically shooting.
1) When i change coin slot dip setting to "same" it stops firing. 2) When i turn off the dip setting for "2 coins to start, 1 to continue" the ship stops flying to the right. 3) The dip setting for "Max players 3" does not work
EDIT: Brian Troha made a good working DIP change for this in mame082b
mame\source\drivers\aerofgt.c line: 688 - 728
PORT_START PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coinage ) ) / Coins 1, 2 & 3 / PORT_DIPSETTING( 0x0004, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x0003, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x0002, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x0001, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0x0000, DEF_STR( 1C_6C ) ) PORT_DIPNAME( 0x0008, 0x0008, "2 Coins to Start, 1 to Continue" ) PORT_DIPSETTING( 0x0008, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPNAME( 0x0010, 0x0000, "Coin Slot" ) PORT_DIPSETTING( 0x0010, "Same" ) PORT_DIPSETTING( 0x0000, "Individual" ) PORT_DIPNAME( 0x0020, 0x0000, "Max Players" ) PORT_DIPSETTING( 0x0020, "2" ) PORT_DIPSETTING( 0x0000, "3" ) PORT_DIPNAME( 0x0040, 0x0000, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x0040, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_SERVICE( 0x0080, IP_ACTIVE_LOW ) PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x0100, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPNAME( 0x0e00, 0x0800, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x0e00, "1 (Easiest)") PORT_DIPSETTING( 0x0c00, "2" ) PORT_DIPSETTING( 0x0a00, "3" ) PORT_DIPSETTING( 0x0800, "4 (Normal)" ) PORT_DIPSETTING( 0x0600, "5" ) PORT_DIPSETTING( 0x0400, "6" ) PORT_DIPSETTING( 0x0200, "7" ) PORT_DIPSETTING( 0x0000, "8 (Hardest)" ) PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x0000, "2" ) PORT_DIPSETTING( 0x1000, "3" ) PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Bonus_Life ) ) PORT_DIPSETTING( 0x2000, "200000" ) PORT_DIPSETTING( 0x0000, "300000" )
OK doing some bactrack testing i found this...
video and dip issues were all correct working normally in mame072b (aug 2003)
video and dip change issues began in mame073b (sept 2003)
still looking into what change caused it....
Aye you were on the right track it's this change to the inputs circa MAME72 which broke the game.......
0.72u2: Added dipswitches 'Difficulty' and 'Bonus Life'.
I'll update the inputs to MAME82 which will sort all the issues......
0.81u7: Brian Troha fixed dipswitches in Turbo Force. Added 'Coinage' dipswitch. 0.78u5: Added 'Unknown' dips.
There is another problem however which will need sorting sometime
0.109: Canim fixed some sprite priorities problems in Turbo Force (the problem is related with the final enemy in stage 3, which is moving along the level under the floor).
@Riddler1 https://github.com/libretro/mame2003-plus-libretro/pull/844
Thanks for the bug report, you'll need to delete turbofrc.cfg most likely as that file saves the dip settings and you dont want a save file with the previously broken inputs messing up the new fixed ones.
cool, đź‘Ť looks great now and i certainly prefer this current solution....
but....
The 2 dips "Coinage" & "Difficulty", can only be increased and not decreased. These two dips are the only non binary ones.
i deleted the turbofrc.cfg and the values go back to default but still only can be increased to the right and not changed back.
See video... https://youtu.be/p3ndhKj4T0c
Can anyone else test to see its not just me.
@Riddler1 - It looks good here. I am able to go all the way up and down on both coinage and difficulty with no issues. Tested both keyboard and XBOX 360 controller. ROM is turbofrc.
You did delete /home/pi/RetroPie/roms/arcade/mame2003-plus/cfg/turbofrc.cfg
I am using the arcade folder vs. mame-libretro.
Raspberry Pi 4 RetroPie 4.6.5 (74b9ffe4) Retroarch 1.8.5 Emulation Station 2.9.1 Mame2003-Plus (69dbfb7)
@Riddler1 - I did some more testing last night and it seems there is some weird anomalies. It does work perfect with the keyboard, as well as, the dpad (XBOX 360 controller) but if you try and use the analog stick in the settings it's off when decrementing.
You can use the full throw of the stick incrementing and it increments one at a time (it works perfect as it should) but when using the full throw for decrementing it decreases one but seems to add it back so it never really changes. You have to watch as it happens fast.
There's a sweet spot about 10 o'clock (not left and not up) half way through the throw that will decrement the full range (auto repeat).
I did test this on two different models of 360 sticks and also different games and it seems consistent regardless of game or controller for me.
interesting, yes i deleted that cfg, even the whole folder to be sure.
i was using a super nes controller d-pad and as my video shows, it flickers when you try to decrement as you say.
what do you mean "also different games" is it not just turbofrc affected?
@Riddler1 - It seems to be an controller issue and not game specific as far as I can tell. On an XBOX 360 controller the dpad works perfect. I was also testing Fast Food's new update and one of the dip switch settings (debounce) goes from 0 to 10 so it's a good game to test with also. It does the exact same thing.
The funny thing as you pointed out is it works properly going right (incrementing) but doesn't go left (decrementing) properly on the left analog stick for me. If you find the perfect spot around 10 o'clock at half the throw it will go from 10 to 0 quickly like an auto-repeat or one decrement at a time but you have to fiddle the analog stick around quite a bit to find the exact spot.
I updated to commit f0ea72e and it seems to have changed a little. Pressing right does nothing now. and pressing left makes it fast switch between two options. Basically if I am sitting on 2 coins
and the next left option is 1 coin
it alternates between those two options very rapidly when holding left. Once you let up it will randomly pick one or the other.
If it stops on 1 coin
and the next option to the left is free play
and you press left again it will still only cycle between 2 coins
and 1 coin
.
If you use the keyboard or a the d-pad to select an option that becomes the "main" option and pressing left on the controller only cycles between those two options. It will never go to the 3rd option to the left. Right does nothing.
If you're already all the way to the left it will cycle between the last two options.
If you do it enough times it seems to crash the core with this error repeated over and over:
DRM_IOCTL_MODE_CREATE_DUMB failed: Cannot allocate memory
Failed to create scanout resource
It seems the same with all the games I tested.
Basically if only you have analog controls you can't use the TAB menu to adjust the settings. You'll need a keyboard.
I just tried food fight with analog controls to adjust debounce and it's working fine for me. Under retroarch, I'm using Quick Menu -> Controls -> Port 1 Controls -> Analog to Digital Type: Left Analog
if that makes a difference. I'm curious if the new core option "center joystick axis for digital controls" is at all related. Try disabling that core option and test it out. I can't replicate the issue but maybe my controller type isn't effected.
make sure you exit the game then delete the cfg files too, anytime input ports change this is neccasary.
make sure you bind your analog stick to up, down, left, and right under input general and input this game.
Check the UI mapped buttons under input general. Could be mapped wrong.
@mahoneyt944 - Center joystick doesn’t seem to affect it so that’s good. I am setup the same as you, left analog for digital on classic gamepad in RA. Tab bindings look good. The ROM should inherit from the default.cfg in MAME unless there’s a highlighted override In the ROM but either way they do look correct. What platform are you running on? @Riddler1 and I are on the same, RetroPie on a Pi 4. Oddly enough I fired up an old version on Stretch with the same issue as RetroPie on Buster. It must be something in my setup. Maybe the xpad driver. It’s not a show stopper by no means but I’ll keep poking around. I appreciate the feedback to know it’s not global.
@Wilstorm I use a rpi3b+. This maybe an issue with rpi4?
issue occurs with Pi 3B+ also. I even just tested Final Fight (ffight) arcade game with USB Super Nes D-dpad. Coin A and Coin B dips both get stuck.
No issues with keyboard input though.
@Riddler1 is it ever dip option or only certain ones?
only dip options from what ive tested. And only Dip options that are not binary and have more than 2 choices, like difficulty and coinage.
I can't seem to reproduce this issue. Perhaps your default cfg is corrupt. Try deleting it or temperarily renaming it so the core creates a fresh one to test
Try running the game with verbose logging. Post your log after the issue occurs
I did some additional testing last night. I deleted the default.cfg, burnfrc.cfg and the retroarch-core-options.cfg to reset everything. I also tried a few other miscellaneous things like switching from simultaneous to retropad on the input interface.
I can see why binary options aren't affected as the issue flips between two options only so they don't look like they are affected.
Here's a verbose log from turbofrc if it helps.
Parameters:
Executing: /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame2003-plus/mame2003_plus_libretro.so --config /opt/retropie/configs/arcade/retroarch.cfg "/home/pi/RetroPie/roms/arcade/turbofrc.zip" --verbose --appendconfig /dev/shm/retroarch.cfg
[INFO] RetroArch 1.8.8 (Git 9552f87)
[INFO] Redirecting save file to "/home/pi/RetroPie/roms/arcade/turbofrc.srm".
[INFO] Redirecting save state to "/home/pi/RetroPie/roms/arcade/turbofrc.state".
[INFO] === Build =======================================
[INFO] Capabilities: NEON VFPv3 VFPv4
[INFO] Built: Jul 17 2020
[INFO] Version: 1.8.8
[INFO] Git: 9552f87
[INFO] =================================================
[INFO] Loading dynamic libretro core from: "/opt/retropie/libretrocores/lr-mame2003-plus/mame2003_plus_libretro.so"
[INFO] [Overrides] no core-specific overrides found at /home/pi/.config/retroarch/config/MAME 2003-Plus/MAME 2003-Plus.cfg.
[INFO] [Overrides] no content-dir-specific overrides found at /home/pi/.config/retroarch/config/MAME 2003-Plus/arcade.cfg.
[INFO] [Overrides] no game-specific overrides found at /home/pi/.config/retroarch/config/MAME 2003-Plus/turbofrc.cfg.
[INFO] [Remaps]: remap directory: /opt/retropie/configs/arcade/
[INFO] Redirecting save file to "/home/pi/RetroPie/roms/arcade/turbofrc.srm".
[INFO] Redirecting save state to "/home/pi/RetroPie/roms/arcade/turbofrc.state".
[INFO] [Environ]: GET_LOG_INTERFACE.
[INFO] [Environ]: PERFORMANCE_LEVEL: 10.
[INFO] Content loading skipped. Implementation will load it on its own.
[libretro INFO] [MAME 2003+] Full content path /home/pi/RetroPie/roms/arcade/turbofrc.zip
[libretro INFO] [MAME 2003+] Git Version f0ea72e
[libretro INFO] [MAME 2003+] Content lookup name: turbofrc
[libretro INFO] [MAME 2003+] Driver index counter: 4083. Matched game driver: turbofrc
[libretro INFO] [MAME 2003+] Content identified as having a service button.
[libretro INFO] [MAME 2003+] Content identified as having a tilt feature.
[libretro INFO] [MAME 2003+] Content identified as using 8-way joystick controls.
[libretro INFO] [MAME 2003+] Content identified by controls.c as having joysticks on axis with respect to the cabinet.
[libretro INFO] [MAME 2003+] Content identified as supporting 3 players with 3 distinct controls.
[libretro INFO] [MAME 2003+] Content identified as supporting 1 button controls.
[libretro INFO] [MAME 2003+] Content identified by controls.c as having mirrored multiplayer control labels.
[INFO] [Environ]: SYSTEM_DIRECTORY: "/home/pi/RetroPie/BIOS".
[libretro INFO] [MAME 2003+] content path: /home/pi/RetroPie/roms/arcade
[libretro INFO] [MAME 2003+] system path: /home/pi/RetroPie/BIOS
[libretro INFO] [MAME 2003+] save path: /home/pi/RetroPie/roms/arcade/
[INFO] [Environ]: SET_VARIABLES.
[INFO] [Environ]: SET_CONTROLLER_INFO.
[libretro INFO] [MAME 2003+] Opening ROM file: tfrc2.bin
[libretro INFO] [MAME 2003+] read_rom_data: All done
[libretro INFO] [MAME 2003+] Opening ROM file: tfrc1.bin
[libretro INFO] [MAME 2003+] read_rom_data: All done
[libretro INFO] [MAME 2003+] Opening ROM file: tfrc3.bin
[libretro INFO] [MAME 2003+] read_rom_data: All done
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu166.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu94.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu95.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu105.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu106.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu116.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu118.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu117.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu119.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu134.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu135.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu180.bin
[libretro INFO] [MAME 2003+] Opening ROM file: tfrcu179.bin
[libretro INFO] [MAME 2003+] Succesfully loaded ROMs.
[libretro ERROR] cpunum_get_localtime() called for invalid cpu num!
[INFO] [Environ]: SET_ROTATION: 0
[INFO] [Environ]: SET_ROTATION: 1
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[libretro WARN] [MAME 2003+]
Driver warnings: missing cocktail mode[libretro INFO] [MAME 2003+]
CONTROLS:
GAMEINFO: Turbo Force
1991 Video System Co.
CPU:
68000 10.000000 MHz
Z80 4.000000 MHz (sound)
Sound (stereo):
1xYM2610 8.000000 MHz
Screen Resolution:
352 x 240 (V) 60.000000 Hz
[INFO] Skipping SRAM load..
[INFO] Version of libretro API: 1
[INFO] Compiled against API: 1
[libretro INFO] [MAME 2003+] Sample rate set to 48000
[INFO] [Cheats]: Load game-specific cheatfile: /home/pi/.config/retroarch/cheats/MAME 2003-Plus/turbofrc.cht
[INFO] [Audio]: Set audio input rate to: 48000.00 Hz.
[INFO] [Video]: Video @ 792x1056
[INFO] [Video]: Starting threaded video driver ...
[INFO] [EGL] Falling back to eglGetDisplay
[INFO] [EGL]: EGL version: 1.4
[INFO] [EGL]: Current context: 0x1.
[INFO] [GL]: Found GL context: videocore
[INFO] [GL]: Detecting screen resolution 1920x1200.
[INFO] [EGL]: eglSwapInterval(1)
[INFO] [GL]: Vendor: Broadcom, Renderer: VideoCore IV HW.
[INFO] [GL]: Version: OpenGL ES 2.0.
[INFO] Querying EGL extension: KHR_image => exists
[INFO] [GL]: Using resolution 1920x1200
[INFO] [GL]: Default shader backend found: glsl.
[INFO] [Shaders]: preset directory: /home/pi/.config/retroarch/config
[INFO] [Shaders]: preset directory: /opt/retropie/configs/arcade/
[INFO] [Shaders]: preset directory: /home/pi/.config/retroarch/shaders/presets
[INFO] [Shader driver]: Using GLSL shader backend.
[WARN] [GL]: Stock GLSL shaders will be used.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] Shader log: Compiled
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] Shader log: Compiled
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] Shader log: Compiled
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] Shader log: Compiled
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] Shader log: Compiled
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] Shader log: Compiled
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GL]: Using 4 textures.
[INFO] [GL]: Loaded 1 program(s).
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Video]: Graphics driver did not initialize an input driver. Attempting to pick a suitable driver.
[INFO] [udev]: Keyboard #0 (/dev/input/event0).
[INFO] [udev]: Keyboard #1 (/dev/input/mouse0).
[INFO] [udev]: Mouse #0 (/dev/input/event0).
[INFO] [udev]: Mouse #1 (/dev/input/mouse0).
[INFO] [Joypad]: Found joypad driver: "udev".
[WARN] [udev]: Full-screen pointer won't be available.
[INFO] [Video]: Found display server: null
[INFO] Found shader "/home/pi/.config/retroarch/shaders/2xsal-level2-crt.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/2xsal.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/2xScaleHQ.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/barrel-distortion.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/barrel-distortion_lanczos4.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/barrel-distortion_phosphor.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/barrel-distortion_snes.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/Brighter-with_Contrast.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/bsnes_gamma_ramp.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/crt-pi-curvature-vertical.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/crt-pi-curvature.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/crt-pi-vertical.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/crt-pi.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/gameboy-screen-grid.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/gameboy.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/gameboy2.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/gba-color.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2x&lcd3x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2x2.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2x_lcd3x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2x_phosphor.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2xwaterpaint.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq2xwaterpaintscanline.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq4x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/hq4x_lcd3x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/nds-color.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/nds.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/nedi.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/palm-color.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/phosphor.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/psp-color.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/sharp-bilinear-2x-prescale.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/sharp-bilinear-scanlines.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/sharp-bilinear-simple.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes2.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_hq2x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_hq2xwaterpaint.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_hq2xwaterpainthicontrast.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_hq2xwaterpaintscanline.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_lcd3x.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_phosphor.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_scanline.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/snes_waterpaint.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/stock.glsl"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/super-2xsai.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/super-eagle.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/vba-color.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/xbr-lv1-noblend.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/zfast_crt_curve.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/zfast_crt_curve_vertical.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/zfast_crt_standard.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/zfast_crt_standard_vertical.glslp"
[INFO] Found shader "/home/pi/.config/retroarch/shaders/zfast_lcd_standard.glslp"
[INFO] ALSA: Using signed 16-bit format.
[INFO] ALSA: Period size: 384 frames
[INFO] ALSA: Buffer size: 1536 frames
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [LED]: LED driver = 'null' 0x3cd0b8
[INFO] [MIDI]: Initializing ...
[INFO] [MIDI]: Input disabled.
[INFO] [MIDI]: Output disabled.
[INFO] [MIDI]: Initialized "alsa" driver.
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[INFO] Loading history file: [/opt/retropie/configs/arcade/content_history.lpl].
[INFO] Loading history file: [/opt/retropie/configs/arcade/content_music_history.lpl].
[INFO] Loading history file: [/opt/retropie/configs/arcade/content_video_history.lpl].
[INFO] Loading history file: [/opt/retropie/configs/arcade/content_image_history.lpl].
[INFO] Loading favorites file: [/opt/retropie/configs/arcade/content_favorites.lpl].
[INFO] Written to playlist file: /opt/retropie/configs/arcade/content_history.lpl
[libretro INFO] [MAME 2003+] Preparing emulated CPUs for execution.
[libretro INFO] [MAME 2003+] turbofrc hiscore memory map found in hiscore.dat!
[INFO] [Environ]: SET_GEOMETRY.
Guys that last log is from a Pi 3 running RetroPie 4.6.5 on Stretch.
Also when I have a bit more time this weekend I'll rebuild a new image from scratch just to verify it isn't something silly like a setting I'm missing here or something.
@mahoneyt944 @Riddler1 - I did a quick test with a clean image running RetroPie 4.6 upgraded to 4.6.5 on a Pi 4. RA 1.8.5. I used an old core commit d3baf58 (the stock version that comes with RetroPie 4.6). I left the Input Interface at the defaults - RetroPad and mapped analog to digital on the left stick. No other changes. I configured a keyboard and controller. Using turbofrc it does the same thing but interestingly enough using mame2003 it works perfect so it seems be something in the core causing the issue.
Well at least this seems to be an old issue then and not something added recently. This core has a lot of differences with inputs over mame 2003. Unfortunately the person who worked on a lot of these changes no longer is apart of the build so finding the cause might be problematic. Out of curiosity, try changing the input type to digital instead of analog in the core options and delete the default config. See if it's any different.
Yeah analog or digital it's the same. Grant is incredibly capable and quick study. He really makes incredibly short work of this interface stuff and other things. I argued with him on many things but I appreciate him all the same. Ah well, dang, I guess it'll have to be what it is.
I can't seem to replicate this issue. I've tried a PS2 style controller, a sanwa joystick, and a keyboard. All are working fine for multi selectable options in the dip menu. If I could replicate it I could probably track down the issue.
If I'm understanding this correctly, the issue is that analog sticks are malfunctioning when selecting dip menu items with more than two choices. Digital is working properly though?
yes it is definately an analogue problem. Retropie is seeing my controller's d-pad as analogue therefor retroarch does aswell. (not bad thing as it optimises the controls for games like Outrun)
if i change the retroarch "User 1 binds" for Left and Right to the L&R shoulder buttons, the dip setting change normally.
changing the input type in the options menu doesnt help as it is the Retroarch "User Binds" that ultimately need to see the "Left D-pad" and "Right D-pad" as single button values instead of "-0" and "+0"
Ok. Well what's odd is I'm using my analog controller and everything works normally. I wonder if there was an update on the RA side of things. Or maybe I'm just using an older config for something.
for my comment above im currently on pi 3b+ using retroarch 1.7.6
Try to reconfigure your controller in emulationstation. Making sure you bind your analog stick and the d-pad appropriately. There must be something that's getting mixed up somewhere.
I went ahead and posted this in the forums to get a wider audience. Hopefully we can get more testers to see what's going on here. https://retropie.org.uk/forum/topic/27402/mame2003-plus-analog-dip-menu-possible-bug
Just to clarify the issue I've been seeing. Maybe the analog to digital is confusing things and isn't really needed to demonstrate the issue.
When I use the left analog stick to decrease/increase, say the difficulty setting in burnforc, it doesn't work correctly decreasing but increasing works correctly. The dpad works correctly regardless of the setting.
Basically analog to digital allows you to use your analog stick to work for digital games like burnfrc (the dpad works by default). So when using the dpad it only sends digital input but if you map the left stick analog to digital it sends two inputs one analog and one digital.
I've tried the Pi 3 and 4 with several different RP versions all with the same result. I don't have any another analog sticks besides the XBOX 360's (two models) to test with though.
Another way to look at it is "analog to digital" is altering how your analog stick works and not how the dpad works, On the XBOX 360 the dpad is digital and that setting can't change the hardware and make it work as analog.
Games like Burning Force don't respond to analog input but with analog to digital it allows the left (or right) stick to operate as digital.
Basically all that's doing really is sending two inputs, one analog and one digital. You'll always have an extraneous input being sent but it allows you to play both analog or digital games on a single stick if you're mapped correctly.
Anyway the thought was to clear up any confusion and to make testing easier by excluding any settings with the analog to digital controls and just focus on controllers with analog controls. Heading out of work here, have a great weekend.
@Wilstorm @Riddler1
I still can't replicate this issue. So maybe my controller just works, idk. I did start to skim through the coding and found some possibilities but since I have no way to test, I may need one of you two to test this for me. I'll revert this change if it's not working or if it broke more stuff. This isn't an area of the code I know much about so we'll play it by ear. Merge pending #868
@mahoneyt944 - I would definitely do any testing. I usually use RetroPie and they have a menu option "Download from source" and that's pretty much it to update to the current build. I would need some basic steps on how to download and compile from a branch or whatever if it's not part of the official version.
@Wilstorm It might get merged today to test. Check later.
@mahoneyt944 - Will do, thanks!
Sorry i am unable to compile at this time but happy test when merged.
Hopefully it gets merged soon. I should probably inquire about getting merge access since I'm updating stuff daily as of recently. I typically update plus first then if it's appropriate, I apply the finished solution to mame2003. @markwkidd @twinaphex . I'm not sure whose call it is to get access or not? Maybe someone can point me in the right direction on that. Either way it will get merged before too long.
@mahoneyt944 - No worries as I'm in no hurry here but I think that would be nice. I thought the same the other day since you've been doing quite a lot of nice updates as of recent! ;)
@Wilstorm @Riddler1 update from source and test. Let me know if your issue is solved. So we can close this. Thanks.
Yes works great.đź‘Ť
Tested with Turbo Force and Final Fight. No side affects with other dips found. Seems good
@Riddler1 great news. Please close this issue then. Thanks.
@mahoneyt944 - Going through several games it seems to have fixed the issue. I saw your discussion with Grant, is there a core option to shut off to make games like Terminator or Rex not snap to center? He's a pretty sharp guy, he's helped me or has taken time to explain things many times over the years.
@Wilstorm
Going through several games it seems to have fixed the issue. I saw your discussion with Grant, is there a core option to shut off to make games like Terminator or Rex not snap to center? He's a pretty sharp guy, he's helped me or has taken time to explain things many times over the years.
The snap to center is how a analog stick is suppose to work and has nothing to do with the centering fix we added for digital controls. The analog stick doesn't actually snap to center, it's just returning the actual position of the joystick which is "centered" when you let go. I also prefer light gun games to not play this way though. If you want your analog stick to feel more like how the dpad plays in light gun games, you have to map the game in the mame menu (input this game) to the dpad only then open RA and go to controls, port 1, and set "left analog to digital". This will allow the analog stick to behave as the dpad does and not center.
I was actually looking into this as well but determined that even though I don't prefer how the analog sticks play light gun games, it's technically behaving properly by following the actual position of the stick, so changing it would break lots of games.
@mahoneyt944 - Ah, ok thanks, yeah I know how to do it that way. That's what I was mentioning to Riddler in that other thread. The digital controls on a joystick work much better than the analog for light gun games. I read through the discussion and didn't quite understand. I thought is there another option I'm missing.
You can actually do it two ways. If you do left (or right) to digital it will map two inputs or you can just do the d-pad and then map left to digital for a single input. Either way works.
Discovered this... not sure if known already.
vertical display position causing layer scroll issue near top of screen and cutting off the osd info at the bottom.
video example: https://youtu.be/D6CFZqNDUPo
Raspberry Pi 4 Retropi 4.6 Retroarch: 1.8.5 Emulation Station: 2.9.1 Mame 2003 plus commit: d3baf582d0c9b5431126bb262aa1934042442d3f