Remove/hide vertical games

Installing ARpiCADE for the first time? Having issues? Check here first for solutions and tips on installing.

Moderator: dee2eR

Post Reply
mappy24
Community Member
Community Member
Posts: 7
Joined: Sun Jul 18, 2021 9:17 pm

Remove/hide vertical games

Post by mappy24 » Sun Jul 18, 2021 9:22 pm

Hi,

I've got two cabs, one horizontal and one vertical. My Arpicade running 3.X.1 is in the horizontal cab.

How do I only show horizontal games in the attract mode list? I have no desire to run vertical games on my horizontal cab.

Thanks in advance for any advice.

mikebetz42
Community Member
Community Member
Posts: 2
Joined: Wed Dec 02, 2020 1:23 am

Re: Remove/hide vertical games

Post by mikebetz42 » Fri Oct 22, 2021 1:00 am

I too would like to know if there is a switch (command line) or option to show only horizontal or vertical games.

Or is there an easy way to filter the ROMs?

dee2eR
Inventor
Inventor
Posts: 1860
Joined: Tue Aug 22, 2017 2:07 pm

Re: Remove/hide vertical games

Post by dee2eR » Sat Oct 23, 2021 6:34 am

Sorry I must have missed this post the first time around...

As far as I'm aware there's no convenient way to do this at the moment (there maybe an Attract-Mode option or plugin I'm not aware of), but I could certainly add one to the service menu in the future.

Pretty sure I wrote a script to sepperate roms years ago... may have been prior to my old HDD failing though.

I could write a script to move all vertical games to a different folder that could be run from the command line if you like. That way you could just move all the vert games to your PC (or whatever storage), in case you ever wanted them back.

mappy24
Community Member
Community Member
Posts: 7
Joined: Sun Jul 18, 2021 9:17 pm

Re: Remove/hide vertical games

Post by mappy24 » Sun Mar 31, 2024 8:51 am

Finally managed to do this using a powershell script, first you need the -listxml output from the current version of MAME

Code: Select all

mame -listxml > c:\roms\mame.xml
Then, this script, thanks to ChatGPT :D

Code: Select all

# Path to the MAME XML file
$xmlFilePath = "C:\romsArcade\mame.xml"

# Path to the folder where ROMs are located
$romsFolder = "C:\romsArcade\mame-203"

# Path to the vertical roms folder where we will move the zip files
$verticalFolder = "C:\romsArcade\mame-203\vertical"

# Load the XML file
$xml = [xml](Get-Content $xmlFilePath)

# Loop through each machine entry
foreach ($machine in $xml.mame.machine) {
    $romName = $machine.name

    # Get the associated display entry for the machine
    $display = $machine.display

    # Check if the display entry exists and rotation is set to either 90 or 270
    if ($display -and ($display.rotate -eq "90" -or $display.rotate -eq "270")) {
        # Move the ROM to the vertical Roms folder
        Move-Item -Path "$romsFolder\$romName.*" -Destination $verticalFolder -Force
    }
}
You just need to run this in each of the mame versions folder by updating the $romsFolder and $verticalFolder paths.

It will then copy the vertical roms to the vertical folder. You can then either delete the horizontal roms and move the vertical roms back, or just delete the vertical roms to be left with all the horizontal ones.

I've now got two cabs, with the correct orientation rom sets.

Ian

Post Reply