mrchrisster / MiSTer_SAM

152 stars 22 forks source link

Removed "arcadepath" configuration, empty path issue #206

Closed garrettkapp closed 2 years ago

garrettkapp commented 2 years ago

Hi devs,

Your README recommends using "arcadepath" for cases like limiting arcade MRAs to horizontal or vertical only, however it looks like this has been removed. I was previously using this to limit my games to a directory of symlinked MRAs that I had curated so I'm a little sad to see this go.

Additionally, with only the "arcade" selected, I now get errors when starting SAM that look like:

 There is no valid file at /media/fat/Scripts/Marvel Super Heroes Vs. Street Fighter (Euro 970625).mra... Rebuilding list.
 Looking for games in  ... The path '' contains no MRA files!

So I can't actually get any games to load at all! Please let me know if I can provide any more info

mrchrisster commented 2 years ago

Hey Garrett, good catch - and we are aware of it. We changed the code base a couple of days ago to use faster gamelist creation. My plan was to re-implement arcadepath next week and I was hoping nobody will notice until then ;)

garrettkapp commented 2 years ago

Oh perfect, thanks for the update!

mrchrisster commented 2 years ago

hey garrett, please update and see if it's working now. cheers!

garrettkapp commented 2 years ago

Hey mrchrisster,

Thanks for taking a look, I really appreciate it! I updated just now and selected 'Start SAM now and monitor (ssh)' and it's a different error than before:

 Starting Super Attract Mode...
 Let Mortal Kombat begin!

grep: Three Wonders -World 910520-.mra: No such file or directory
 Starting now on the MiSTer Arcade: Three Wonders -World 910520-

And the MiSTer remains on the main menu screen

mrchrisster commented 2 years ago

Hey Garrett, please try again after update. Just changed some more things

garrettkapp commented 2 years ago

Hi again,

I just did the following steps to try to make sure I'm in a clean state

  1. I removed my custom symlinked MRA directory (_Arcade folder should now just contain what is provided by update_all)
  2. I updated SAM (using the option in the menu)
  3. I did a 'Reset/Delete all files'
  4. I did a 'Reinstall SAM and enable Autostart'
  5. I deleted all game lists
  6. Changed the corelist to just 'arcade' and samquiet to 'No'
  7. Ran the Start and Monitor option

and I get the following output:

 Stopping tty2oled Daemon... Done!
 Starting Super Attract Mode...
 Let Mortal Kombat begin!

 Selected core: ARCADE
 Found blacklist for core arcade. Stripping out unwanted games now.
 Selected file: Marvel Vs. Capcom Clash of Super Heroes (Asia 980123)
 Starting now on the MiSTer Arcade: Marvel Vs. Capcom Clash of Super Heroes (Asia 980123)

It wasn't doing this previously, but now the screen blinks black for a second and returns to the main menu.

Bizarrely, the background image for the mister main menu also sometimes changes / gets corrupted when this happens. This may also be related to the menu background, but I noticed that if I manually start a game and then launch SAM, it does a black screen and then kicks be back to the previous game, however the settings for that game are a bit messed up for some reason, e.g. I had 1942 set up for vertical (tate) play, but after getting kicked back after SAM tried to start a game, it went back to 1942 and it is now horizontal and upside down

mrchrisster commented 2 years ago

Ok very strange and thanks for your detailed feedback. For Sam's mute function to work we mount the config dir to a temporary folder which might explain why the settings are different. If you stop Sam the game should play the same as you set it.

As for the quick black screen, i currently only have ssh access to the Mister and can't see what's being played on screen. So it might be an issue with my setup as well. I will check next week, sorry for the trouble.

Did you have sam working before? In your MiSTer_SAM.ini, you can set branch="main-rollback" and then update to return to the previous version of SAM

garrettkapp commented 2 years ago

I'll have to give the rollback branch a try, I had things working before so switching back should get things up and running again.

Thank you for all your hard work on SAM, it's really changed the way I use my MiSTer and I really appreciate all the effort you put into this project! I look forward to your next update :)

mrchrisster commented 2 years ago

Hey Garrett, Everything should be working now. Could you please update main branch and report back?

garrettkapp commented 2 years ago

Hi again, it looks like arcade games are loading again, thank you! I'm not sure if the arcadepathfilter is working properly. I've got a subdirectory in the _Arcade directory that I'm trying to limit my games to, but it will select games outside what I have configured in the filter as well

mrchrisster commented 2 years ago

Thanks for letting me know. I checked the pathfilters for none arcade games only when I was testing everything earlier. I'll take a look tomorrow if there are any issues with arcade filters

mrchrisster commented 2 years ago

It seems to work fine for me, but I had to reset my arcade gamelist first so it picked up all available games. You can do this in the menu "Gamelists - Create or Delete". In the last version of SAM you tried, it stripped out duplicate mra files first, that's why _Horizontal subfolder was stripped out and your path filter didn't work. (assuming you were trying one of the arcade organizer subfolders)

garrettkapp commented 2 years ago

I tried to make a simple reproducible case here

I've set up my MiSTer_SAM.ini like so:

samtimeout=60
# short timer for testing
gametimer=20

menuonly="Yes"
# arcade only
corelist="arcade"
mute="No"
playcurrentgame="Yes" 
roulettetimer="500"
ttyenable="No"
bgm="No"

amigapathfilter=""
# custom directory (in _Arcade)
arcadepathfilter="_my_games/"
atari2600pathfilter=""
atari5200pathfilter=""
atari7800pathfilter=""
atarilynxpathfilter=""
c64pathfilter=""
fdspathfilter=""
gbpathfilter=""
gbcpathfilter=""
gbapathfilter=""
genesispathfilter=""
ggpathfilter=""
megacdpathfilter=""
neogeopathfilter=""
nespathfilter=""
s32xpathfilter=""
smspathfilter=""
snespathfilter=""
tgfx16pathfilter=""
tgfx16cdpathfilter=""
psxpathfilter=""

exclude=( vgm readme hes-v3 unsupported sounds music palettes )
listenmouse="Yes"
listenkeyboard="No"
listenjoy="Yes"

ttysystemini="/media/fat/tty2oled/tty2oled-system.ini"
ttyuserini="/media/fat/tty2oled/tty2oled-user.ini"
ttyuseack="Yes"

norepeat="Yes"

usezip="Yes"
samtrace="Yes"
samquiet="No"
branch="main"

And I've created a subdirectory in _Arcade with 2 games

# ls /media/fat/_Arcade/_my_games/
Vulgus.mra  zaxxon.mra

I then did 'Update SAM to latest' and then 'Delete all game lists', followed by 'Start SAM now and monitor (ssh)'

 Stopping tty2oled Daemon... Done!
 Starting Super Attract Mode...
 Let Mortal Kombat begin!

 Selected core: ARCADE
 Found blacklist for core arcade. Stripping out unwanted games now.
 Found path filter for Arcade core. Stripping out unwanted games now.
 Selected file: /media/fat/_Arcade/_Organized/_4 Video & Inputs/_6 Players/_n/Wacko.mra
 Starting now on the MiSTer Arcade: Wacko
 Keyboard activity ignored!

Interestingly, it usually plays the 2 games from that directory early, but will often start with a different game, and will continue to play games that don't match that filter.

I also tried the filter without the trailing slash and got the same results

EDIT: removed part where I am bad at making symlinks and did it wrong

mrchrisster commented 2 years ago

Thanks for the detailed write up. I just tested this with your settings and it worked for me after a reboot. The reason is SAM stores the lists in /tmp dir and it might still read the old arcade list there.

Edit spoke too soon. Yes it does reset the list. I see the problem now.

mrchrisster commented 2 years ago

Ok, I think we got it now ;) Please update and try again.

garrettkapp commented 2 years ago

Perfect! Everything is working great now, thank you so much for fixing this