Author Topic: How do you set up individual consoles with MAME?  (Read 20878 times)

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
How do you set up individual consoles with MAME?
« on: June 23, 2018, 07:48:12 PM »
I have the latest official MAME binary from MAMEdev.org and I'm trying to set up my cabinet with Attract Mode.

I have 4 folders with ROMs/CHDs...

MAME 0.198 ROMs (merged)
MAME 0.198 CHDs (merged)
MAME 0.198 Software List ROMs (merged)
MAME 0.198 Software List CHDs (merged)

The "Software List" folders are the console ROMs and disc images.

I have the "arcade" part of MAME working in AttractMode but I can't figure out how to set up so that the individual consoles work.

At the moment, the consoles appear in the MAME list but launching it just starts the console without any cartridge/disc.

I know that MAME ships with XML lists of supported titles for each console in the /mame/hash/ folder but I don't know what to do with them in Attract Mode.

From a usability standpoint, I think it would be most convenient if there was a separate list for each console.
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #1 on: June 23, 2018, 09:52:51 PM »
Create a separate "Emulator" for each system. You will need them anyway since the launching of each system from the command line will be different.

Here are two samples. You'll need to change the paths for your setup

Nintendo Entertainment System.cfg (using MAME)
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           \Emulators\MAME\mame64.exe
args                 nes -cart "[romfilename]"
rompath              \Roms\Nintendo Entertainment System
romext               .nes;.zip;.7z
system               Nintendo Entertainment System (NES)
info_source          thegamesdb.net
artwork    boxart    \EmuMovies\Nintendo_NES\Box_3D;\EmuMovies\Nintendo_NES\Box
artwork    boxbackart    \EmuMovies\Nintendo_NES\BoxBack
artwork    cartart   \EmuMovies\Nintendo_NES\Cart
artwork    fanart    \EmuMovies\Nintendo_NES\Background
artwork    marquee   \EmuMovies\Nintendo_NES\Banner
artwork    snap      \EmuMovies\Nintendo_NES\Video_MP4_HI_QUAL;\EmuMovies\Nintendo_NES\Snap
artwork    title     \EmuMovies\Nintendo_NES\Titles
artwork    wheel     \EmuMovies\Nintendo_NES\Logos

Sega Genesis.cfg (using MAME)
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           \Emulators\MAME\mame64.exe
args                 genesis -cart "[romfilename]"
rompath              \Roms\Sega Genesis
romext               .gen;.zip;.7z
system               Sega Genesis
info_source          thegamesdb.net
artwork    boxart    \EmuMovies\Sega_Genesis\Box_3D;\EmuMovies\Sega_Genesis\Box
artwork    boxbackart    \EmuMovies\Sega_Genesis\BoxBack
artwork    cartart   \EmuMovies\Sega_Genesis\Cart
artwork    fanart    \EmuMovies\Sega_Genesis\Background
artwork    marquee   \EmuMovies\Sega_Genesis\Banner
artwork    snap      \EmuMovies\Sega_Genesis\Video_MP4_HI_QUAL;\EmuMovies\Sega_Genesis\Snap
artwork    title     \EmuMovies\Sega_Genesis\Titles
artwork    wheel     \EmuMovies\Sega_Genesis\Logos
« Last Edit: June 24, 2018, 12:51:18 AM by progets »

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #2 on: June 25, 2018, 10:15:02 PM »
Thanks for your help. I've set up the Atari 2600 and the ColecoVision so far.

The Atari 2600 works fine but for some reason, I'm having an issue with the ColecoVision.

When I launch a game, ladybug for example, the game loads fine and gets to the blue screen where you have to press a number on the keypad to start the game.  When I press a number, the ColecoVision resets.

The weird thing is that I can run the game fine from the command prompt...

C:\mame>mame64 coleco -cart ladybug

...or...

C:\mame>mame64 coleco -cart "ladybug"

...both work fine.

Is there any way to debug attract mode to figure out what's happening?

Here are my configs...


MAME.cfg  (works fine)
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 [name]
rompath              c:/mame/roms/;E:/MAME 0.198 ROMs (merged);E:/MAME 0.198 CHDs (merged)
romext               .zip;.7z;<DIR>
system               Arcade
info_source          listxml
artwork    flyer           
artwork    marquee         
artwork    snap            E:/MAME 0.198 EXTRAs snap
artwork    wheel           

Atari 2600.cfg  (works fine)
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 a2600 -cart "[romfilename]"
rompath              E:/MAME 0.198 Software List ROMs (merged)/a2600
romext               .zip
info_source          listsoftware
artwork    flyer           
artwork    marquee         
artwork    snap            E:/MAME 0.198 EXTRAs snap_SL/a2600
artwork    wheel           

ColecoVision.cfg  (does not work correctly)
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 coleco -cart "[romfilename]"
rompath              E:/MAME 0.198 Software List ROMs (merged)/coleco
romext               .zip
info_source          listsoftware
artwork    flyer           
artwork    marquee         
artwork    snap            E:/MAME 0.198 EXTRAs snap_SL/coleco
artwork    wheel           
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #3 on: June 25, 2018, 11:00:44 PM »
1. Download the console version of AM from here http://attractmode.org/download.html.
2. Extract the attract.exe file and rename it to attract-console.exe.
3. Place this file in your existing AM install folder and run it. You should see what's happening in the console window.

Why the "/" in Windows instead of the "\"? I don't think this is your issue but the "/" is more of a *nix thing.

Try to add some other systems and see if they have issues or if the issue is isolated to ColecoVision.
« Last Edit: June 25, 2018, 11:11:18 PM by progets »

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #4 on: June 25, 2018, 11:22:51 PM »
Does your entry below work well? I don't think this gets all the correct metadata for the games. Please post the first 20 lines of your \attractmode\romlists\Atari 2600.txt file.

Code: [Select]
info_source          listsoftware
« Last Edit: June 25, 2018, 11:30:54 PM by progets »

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #5 on: June 26, 2018, 07:48:30 PM »
1. Download the console version of AM from here http://attractmode.org/download.html.
2. Extract the attract.exe file and rename it to attract-console.exe.
3. Place this file in your existing AM install folder and run it. You should see what's happening in the console window.

Here's what the console output looks like for NES that I just added...
Code: [Select]
C:\attract>attract-console.exe
Attract-Mode v2.3.0 (Windows, SFML 2.4 +SWF +7z)
avcodec 57.107.100 / avformat 57.83.100 / swscale 4.8.100 / swresample 2.9.100

Config: C:\attract\attract.cfg

*** Initializing display: 'Nintendo Entertainment System (NES)'
 - Loaded master romlist 'Nintendo Entertainment System (NES)' in 36 ms (2477 entries kept, 0 discarded)
 - Constructed 2 filters in 0 ms (4954 comparisons)
 - Loaded layout: C:\attract\layouts/Attrac-Man/ (layout.nut)
Failed to load image "C:\attract\layouts/Attrac-Man/snap.png". Reason: Unable to open file
Error opening input file: C:\attract\layouts/Attrac-Man/snap.png
ERROR loading video: C:\attract\layouts/Attrac-Man/snap.png
 - Working directory: c:\mame
*** Running: c:\mame\mame64.exe nes -cart "e:\MAME 0.198 Software List ROMs (merged)\nes/gradius.zip"

Try to add some other systems and see if they have issues or if the issue is isolated to ColecoVision.

I did.  Above is the output after adding NES.  It doesn't work at all.  It immediately crashes and goes back to AM.  It looks like it's looking for and not finding "snap.png" in the Attrac-Man layout.  Is that normal?

Why the "/" in Windows instead of the "\"? I don't think this is your issue but the "/" is more of a *nix thing.

Actually, windows supports forward slashes just fine.  In fact, I usually use forward slashes because they cause less problems since backslashes are often treated as escape characters.  Just because you mentioned it, I tried changing my slashes back to backslashes.  If you look at the console log, it looks like AM uses forward slashes for its internal paths so it was probably better the way I originally had it.
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #6 on: June 26, 2018, 07:59:56 PM »
Does your entry below work well? I don't think this gets all the correct metadata for the games. Please post the first 20 lines of your \attractmode\romlists\Atari 2600.txt file.

Code: [Select]
info_source          listsoftware

If I generate the ROM list using listxml, I get weird stuff in the ColecoVision list that appears to be information from the Arcade versions...



Here's the first 20 lines  from the ColecoVision romlist using listxml.

In particular, note the description for Congo Bongo that includes "(Rev C, 2 board stack)" and the "mechanical" flag on Fathom.  Something is very wrong with this data.

Code: [Select]
#Name;Title;Emulator;CloneOf;Year;Manufacturer;Category;Players;Rotation;Control;Status;DisplayCount;DisplayType;AltRomname;AltTitle;Extra;Buttons
1on1;1on1;ColecoVision;;;;;;;;;;;;;;
2010;2010;ColecoVision;;;;;;;;;;;;;;
31in1;31in1;ColecoVision;;;;;;;;;;;;;;
63in1;63in1;ColecoVision;;;;;;;;;;;;;;
buckrog;Buck Rogers: Planet of Zoom;ColecoVision;;1982;Sega;;1;0;joystick (8-way);imperfect;1;raster;;;;
bnj;Bump 'n' Jump;ColecoVision;brubber;1982;Data East USA;;2;270;joystick (8-way),joystick (8-way);good;1;raster;brubber;;;
btime;Burger Time (Data East set 1);ColecoVision;;1982;Data East Corporation;;2;270;joystick (4-way),joystick (4-way);good;1;raster;;;;
carnival;Carnival (upright);ColecoVision;;1980;Sega;;1;270;joystick (2-way);imperfect;1;raster;;;;
centiped;Centipede (revision 4);ColecoVision;;1980;Atari;;1;270;joystick (8-way),trackball;good;1;raster;;;;
choplift;Choplifter (8751 315-5151);ColecoVision;;1985;Sega (licensed from Dan Gorlin);;2;0;joystick (8-way),joystick (8-way);good;1;raster;;;;
congo;Congo Bongo (Rev C, 2 board stack);ColecoVision;;1983;Sega;;2;90;joystick (8-way),joystick (8-way);imperfect;1;raster;;;;
cavenger;Cosmic Avenger;ColecoVision;;1981;Universal;;2;0;joystick (8-way),joystick (8-way);good;1;raster;;;;
dambustr;Dambusters (US, set 1);ColecoVision;;1981;South West Research;;1;90;joystick (4-way);good;1;raster;;;;
defender;Defender (Red label);ColecoVision;;1980;Williams;;1;0;joystick (vertical2-way);good;1;raster;;;;
digdug;Dig Dug (rev 2);ColecoVision;;1982;Namco;;2;90;joystick (4-way),joystick (4-way);good;1;raster;;;;
dkong;Donkey Kong (US set 1);ColecoVision;;1981;Nintendo of America;;2;270;joystick (4-way),joystick (4-way);good;1;raster;;;;
dkongjr;Donkey Kong Junior (US set F-2);ColecoVision;;1982;Nintendo of America;;2;270;joystick (4-way),joystick (4-way);good;1;raster;;;;
dlair;Dragon's Lair (US Rev. F2);ColecoVision;;1983;Cinematronics;;1;0;joystick (8-way);preliminary;1;raster;;;chd;
fathom;Fathom;ColecoVision;;1981;Bally;;1;;;preliminary;0;;;;mechanical;

On the other hand, listsoftware seems to get decent information except the title is the same as the ROM name.  I'm wondering if something changed in recent versions of the MAME XML format that Attract Mode can't handle.

Here's the first 20 lines  from the ColecoVision romlist using listsoftware...
Code: [Select]
#Name;Title;Emulator;CloneOf;Year;Manufacturer;Category;Players;Rotation;Control;Status;DisplayCount;DisplayType;AltRomname;AltTitle;Extra;Buttons
1on1;1on1;ColecoVision;;;;;;;;;;;;;;
2010;2010;ColecoVision;;;;;;;;;;;;;;
31in1;31in1;ColecoVision;;;;;;;;;;;;;;
63in1;63in1;ColecoVision;;;;;;;;;;;;;;
alcazar;alcazar;ColecoVision;;;;;;;;;;;;;;
alphazoo;alphazoo;ColecoVision;;;;;;;;;;;;;;
amazing;amazing;ColecoVision;;;;;;;;;;;;;;
antarct;antarct;ColecoVision;;;;;;;;;;;;;;
apshai;apshai;ColecoVision;;;;;;;;;;;;;;
aquatack;aquatack;ColecoVision;;;;;;;;;;;;;;
artduel;artduel;ColecoVision;;;;;;;;;;;;;;
bbears;bbears;ColecoVision;;;;;;;;;;;;;;
bcquest;bcquest;ColecoVision;;;;;;;;;;;;;;
bcquest2;bcquest2;ColecoVision;;;;;;;;;;;;;;
bdash;bdash;ColecoVision;;;;;;;;;;;;;;
beamridr;beamridr;ColecoVision;;;;;;;;;;;;;;
blockrun;blockrun;ColecoVision;;;;;;;;;;;;;;
bnj;bnj;ColecoVision;;;;;;;;;;;;;;
brainstr;brainstr;ColecoVision;;;;;;;;;;;;;;

And here's the first 20 lines from the Atari 2600 romlist using listsoftware...
Code: [Select]
#Name;Title;Emulator;CloneOf;Year;Manufacturer;Category;Players;Rotation;Control;Status;DisplayCount;DisplayType;AltRomname;AltTitle;Extra;Buttons
2pakblac;2pakblac;ATARI 2600;;;;;;;;;;;;;;
2pakblue;2pakblue;ATARI 2600;;;;;;;;;;;;;;
2pakdblu;2pakdblu;ATARI 2600;;;;;;;;;;;;;;
2pakdo;2pakdo;ATARI 2600;;;;;;;;;;;;;;
2pakgrne;2pakgrne;ATARI 2600;;;;;;;;;;;;;;
2paklgrn;2paklgrn;ATARI 2600;;;;;;;;;;;;;;
2pakmage;2pakmage;ATARI 2600;;;;;;;;;;;;;;
2pakoran;2pakoran;ATARI 2600;;;;;;;;;;;;;;
2pakred;2pakred;ATARI 2600;;;;;;;;;;;;;;
2pakyelo;2pakyelo;ATARI 2600;;;;;;;;;;;;;;
32in1;32in1;ATARI 2600;;;;;;;;;;;;;;
3dgensp;3dgensp;ATARI 2600;;;;;;;;;;;;;;
3dghostp;3dghostp;ATARI 2600;;;;;;;;;;;;;;
3dhavocp;3dhavocp;ATARI 2600;;;;;;;;;;;;;;
3dtictac;3dtictac;ATARI 2600;;;;;;;;;;;;;;
4game1;4game1;ATARI 2600;;;;;;;;;;;;;;
4game1a;4game1a;ATARI 2600;;;;;;;;;;;;;;
4in1;4in1;ATARI 2600;;;;;;;;;;;;;;
8in1;8in1;ATARI 2600;;;;;;;;;;;;;;


EDIT: Just for the heck of it, I tried running this from the command line in my MAME folder...

Code: [Select]
mame64.exe a2600 -listsoftware > mame_a2600.xml

The resulting XML file has 1589 "software" tags so I'm thinking my Atari 2600 list would have that many games if this process was working correctly in Attract Mode.

I did the same for coleco and I got 220 titles.
« Last Edit: June 26, 2018, 08:23:51 PM by krick »
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #7 on: June 26, 2018, 09:14:26 PM »
If you use "info_source listsoftware" you must also use "system = x". x = the mame name for the system (i.e. nes, coleco, a2600, etc.) This is likely why your Coleco games have MAME data (and because their rom names match the MAME rom names).

When using console games in MAME you use "[name]" if they use the old 8.3 naming in a zipped format and "[romfilename]" when using long names that aren't zipped.

If you get your romlists using "info_source listsoftware" (or "info_source listxml") you won't get the genre info unless you download and include the "import_extras .\extras\catver.ini" in your configuration.

Samples of your post updated to include this info.

Atari 2600.cfg
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 a2600 -cart "[name]"
rompath              E:/MAME 0.198 Software List ROMs (merged)/a2600
romext               .zip
system               a2600
info_source        listsoftware
import_extras    .\extras\catver.ini
artwork    flyer           
artwork    marquee         
artwork    snap            E:/MAME 0.198 EXTRAs snap_SL/a2600
artwork    wheel           

ColecoVision.cfg
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 coleco -cart "[name]"
rompath              E:/MAME 0.198 Software List ROMs (merged)/coleco
romext               .zip
system               coleco
info_source        listsoftware
import_extras    .\extras\catver.ini
artwork    flyer           
artwork    marquee         
artwork    snap            E:/MAME 0.198 EXTRAs snap_SL/coleco
artwork    wheel           

In my previous examples I'm using "info_source thegamesdb.net" so my "system = x" match the thegamesdb.net naming convention (i.e. Nintendo Entertainment System (NES), Atari 2600, ColecoVision, etc.).

----------

The "snap.png" errors you see have nothing to do with your game launching issue. These are AM errors that will be ignored.

----------

Do the systems you have issues with work if you run them within MAME?

Do they work if you execute the commands from the command line?

Do you have everything setup properly in your mame.ini file? It appears that you took "Pleasure" in your MAME roms, have you followed their MAME installation (Wiki #12)?
« Last Edit: June 26, 2018, 10:25:58 PM by progets »

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #8 on: June 26, 2018, 09:59:35 PM »
OK, I think I figured out how this is supposed to work.  In the MAME directory, there's a "hash" folder that contains XML files for (I assume) every system that uses a software list.

I was able to generate a proper list of game titles that way.  Here's my config file for the Atari 2600.  Notice that I'm using the "import_extras" property instead of the "info_source" property.

Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 a2600 -cart "[romfilename]"
rompath              e:/MAME 0.198 Software List ROMs (merged)/a2600
romext               .zip
import_extras        c:/mame/hash/a2600.xml
artwork    flyer           
artwork    marquee         
artwork    snap            e:/MAME 0.198 EXTRAs snap_SL/a2600
artwork    wheel           

This works.  But I think the reason that it works is that it doesn't have a BIOS file in the MAME ROM set that needs to be loaded.

I did the same setup with the hash XML file for the ColecoVision and games don't load correctly.

When I run attractmode console, it says that it's running this command line...

Code: [Select]
c:/mame/mame64.exe coleco -cart "e:/MAME 0.198 Software List ROMs (merged)/coleco/mrdo.zip"

The game loads but it keeps resetting at the ColecoVision title screen.


If I go into the mame directory and run this from the command line, it works perfectly...

Code: [Select]
mame64 coleco -cart mrdo

However, if I try to add the full path to the ROM like Attract Mode, it fails in the same way... resetting at the title screen...

Code: [Select]
mame64 coleco -cart "e:/MAME 0.198 Software List ROMs (merged)/coleco/mrdo.zip"


So I'm at a loss on how to handle this.  For ColecoVision games, it needs the system (BIOS) ROM from the main ROM set and the individual game ROM from the Software List ROM set and it doesn't appear to be loading correctly.


EDIT:  Your last post had the solution.  I needed to use  [name]  instead of  [romfilename].

Once I did that, it worked perfectly.   :D

For reference, this what the updated ColecoVision config looks like...
Code: [Select]
# Generated by Attract-Mode v2.3.0
#
executable           c:/mame/mame64.exe
args                 coleco -cart "[name]"
rompath              e:/MAME 0.198 Software List ROMs (merged)/coleco
romext               .zip
import_extras        e:/mame/hash/coleco.xml
artwork    flyer           
artwork    marquee         
artwork    snap            e:/MAME 0.198 EXTRAs snap_SL/coleco
artwork    wheel           


EDIT2:  It looks like I don't need both ROM sets in the config rompath.  I guess since I have both paths in my mame.ini...

"e:/MAME 0.198 ROMs (merged);e:/MAME 0.198 Software List ROMs (merged)"

« Last Edit: June 26, 2018, 10:13:55 PM by krick »
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #9 on: June 26, 2018, 10:28:51 PM »
Please reread my post above. I have made changes that might interest you (I didn't know you reposted while I was doing it).

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #10 on: June 26, 2018, 10:47:21 PM »
Please reread my post above. I have made changes that might interest you (I didn't know you reposted while I was doing it).

Yep.  Your post had part of the solution.  I needed to use  [name]  instead of  [romfilename]

Check out my latest post too.  I discovered the XML files in the mame/hash/ folder for consoles

They seem to work better than listxml or listsoftware as I've been using them.

I still haven't tried your suggestion to use "system = x" with listsoftware but I'll check that out tomorrow.
« Last Edit: June 26, 2018, 10:49:06 PM by krick »
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #11 on: June 26, 2018, 10:59:07 PM »
Glad you got it working.

I was mainly talking about the genre/category part. I'm pretty sure you're missing this data and when you have that many roms, filters become important http://forum.attractmode.org/index.php?topic=2297.0.

I know that the mame hash files are used for just that, hash to ensure the roms are 100% correct. I haven't tried using these but I'm curious if they might leave out other data in the romlists? If not, they are probably faster since the files already exist vs. dynamically generating them with listsoftware.
« Last Edit: June 26, 2018, 11:02:05 PM by progets »

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #12 on: June 27, 2018, 06:19:48 PM »
I fired up my arcade cabinet today and changed my three (so far) console configs to use the "system" attribute with listsoftware.

Everything seems to work well so far except that it seem like I'm not seeing all the games (possibly versions and variants).  It might be because I have "merged" ROMs though.  I can use CLRMAMEPRO to convert them into "split" sets if it makes a difference in Attract Mode.

As an aside, it seems like each of my console/systems that use a software list is basically set up the same way more or less with the only variables being the "system" tag e.g. a2600, coleco, nes, ect...  in the various places they appear and the full name of the system.  It's easy enough to copy and rename one of the existing configs and do a search-replace on the system tag.  But it seems like there should be a way to parse the mame.xml and/or listsoftware output and/or the XML files in the hash folder and generate a config for each system automatically.

If a tool for that doesn't already exist, I my try my hand at writing one.


I have a somewhat related issue with configuring MAME properly in Attract Mode.

At the moment, my MAME list includes a bunch of home computers (and consoles, I think).  Is my config incorrect or do I need to do additional work to filter those out with catver.ini and/or custom filters?
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1271
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #13 on: June 27, 2018, 07:41:20 PM »
Everything seems to work well so far except that it seem like I'm not seeing all the games (possibly versions and variants).  It might be because I have "merged" ROMs though.  I can use CLRMAMEPRO to convert them into "split" sets if it makes a difference in Attract Mode.
Yes, you see this because of the merged set. Split sets will work differently. Your method using the hash files might overcome this but I'm not certain. Using third party tools might also help or you could convert your set as you mentioned above.

As an aside, it seems like each of my console/systems that use a software list is basically set up the same way more or less with the only variables being the "system" tag e.g. a2600, coleco, nes, ect...  in the various places they appear and the full name of the system.  It's easy enough to copy and rename one of the existing configs and do a search-replace on the system tag.  But it seems like there should be a way to parse the mame.xml and/or listsoftware output and/or the XML files in the hash folder and generate a config for each system automatically.
Setting up the systems is a one time thing. I'm sure it could be automated but I don't think most care too much since this doesn't take much time.

If a tool for that doesn't already exist, I my try my hand at writing one.
I have seen several over the years. Romlister works well but there are others.

I have a somewhat related issue with configuring MAME properly in Attract Mode.

At the moment, my MAME list includes a bunch of home computers (and consoles, I think).  Is my config incorrect or do I need to do additional work to filter those out with catver.ini and/or custom filters?
Keep in mind that there were actual arcade machines that played Nintendo and Sega games that were similar or the same as the console version.


You need to decide your end goal. It's different for everyone. MAME is great and include tons of games but I wouldn't want 90% of them on my cabinet. I will never play any computer type game or most console games there. Personally, I like the no-intro type of sets/databases because I use very few clones and focus on games that were available in the US. Curating your romlists is the key to an easy to use system. This can be done manually, with tools, with filters, with databases (xml files) from other systems or emulators. My advice is figure out what you want in the end and the best or easiest way to get there. A lot of people think it's cool or important to have as many games as possible (I was once one of them) but this is really the wrong direction if you want a clean and easily navigated system.

Just because you have a rom it doesn't mean it has to be in one of your active romlists. I don't delete or move roms I don't want see or use, I just make sure their hidden via the romlist or filters. A simple trick is to create your complete romlists and call them xxx_all.txt (mame_all.txt, nes_all.txt, etc.) and then create your curated romlists. Make a copy of your attract.cfg and point it to your complete romlists. This will allow you to have a clean system but toggle to a complete system by simply swapping the attract.cfg files. I also like to have multiple attract.cfg files to quickly change complete layouts to keep things fresh but that's another discussion.

P.S. I should also mention that romlists can be generated from the command line using xml files from other systems and these commands can also use filters. This can be a helpful and powerful tool when building your ideal setup.
« Last Edit: June 27, 2018, 08:56:32 PM by progets »

krick

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: How do you set up individual consoles with MAME?
« Reply #14 on: June 27, 2018, 09:08:02 PM »
Yes, you see this because of the merged set. Split sets will work differently. Your using of the hash files might overcome but I'm not certain. Using third party tools might also help or you could convert your set as you mentioned above.

So Attract Mode must try to reconcile the physical zip file names it finds in the ROM path directory with the data in the XML file when building the list.  I understand why they would do it that way since that's probably how most users probably want it to work.

I'd kind of prefer if it just built the list purely based on the XML/DAT file you provide regardless of whether I had the correct ROMs or not.  I think that other front ends I've used in the past worked that way.  If I recall correctly, MAMEwah would ask for your mame exe location and then it would extract the XML and build a list from that.  You had the option of showing parent sets only or parents + clones.  It didn't matter if you actually had any ROM files at all.  It didn't care.

At the moment, my MAME list includes a bunch of home computers (and consoles, I think).  Is my config incorrect or do I need to do additional work to filter those out with catver.ini and/or custom filters?
Keep in mind that there were actual arcade machines that played Nintendo and Sega games that were similar or the same as the console version.

You need to decide your end goal. It's different for everyone. MAME is great and include tons of games but I wouldn't want 90% of them on my cabinet. I will never play any computer type game or most console games there. Personally, I like the no-intro type of sets/databases because I use very few clones and focus on games that were available in the US. Curating your romlists is the key to an easy to use system. This can be done manually, with tools, with filters, with databases (xml files) from other systems or emulators. My advice is figure out what you want in the end and the best or easiest way to get there. A lot of people think it's cool or important to have as many games as possible (I was once one of them) but this is really the wrong direction if you want a clean and easily navigated system.

I guess my end goal is to have the "MAME" list be just arcade games.  So that will require some kind of filtering.  I know systems like the NeoGeo are weird cases though.

Anything with a software list can be separated out into a separate list.  For example, Amiga or Commodore 64.

I'd probably want to do a list of just the cheesy LCD hand-held games but I'm not sure if that's possible because they aren't all within one "system".

Right now, I've noticed two issues.

The first is that all of my CHD games are showing up at the end of the MAME list instead of being mixed in with the rest, alphabetically.  Also, they don't have proper descriptions...


The other issue is what I mentioned above with software list items like computers being in the list.  For example, this chunk of HP computers/devices....


I wouldn't delete or move ROMs.  I'll just try to hide things with filters or creative use of dat files or something once I get a grip on how it all works.
Hantarex Polo 15KHz
Radeon HD 7750 2GB (GCN)
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
GroovyMAME 0.197.017h_d3d9ex
Windows 7 Home Premium 64-bit