I'm resurrecting this old thread to update casual forum readers about latest changes concerning software lists
First of all, cross dependencies among different lists have been added, so that it's possible for an item (e.g. a PCE CD-ROM) to force loading of a different item (e.g. a CDSYS cartridge), making easier for average users to play with MESS, as long as they have the required items
PCE CDs are not the only situation where this is of benefit: Kaylee has already added the same mechanism to the couple of IBM PCJr carts which need a DOS disk to work, and eventually the bunch of Saturn CDs which support add-on carts will use it too.
The other big news is that Micko has added some basic filtering support to software lists and a7800.c has been updated to take advantage of this. Filters basically help users tnot to load software in the wrong driver by mistake.
The a7800 example should make things clear: PAL and NTSC carts were incompatible, being region locked, so if you load the NTSC version on a7800p or the PAL version on a7800 you'd get stuck to the Atari logo and you might think that there is a bug in the emulation. With filter, otoh, the a7800 accepts NTSC carts and a7800p accepts PAL carts but not viceversa.
Notice that filters only act if you load entries from the internal File Manager or with the noswitch command line, while no restriction is applied if you load files from command line by specifying the media switch (i.e. if you are supposed to know what you're doing)
so for instance
would not work, because a7800 is the NTSC console while ballblaz is the PAL cart (so you would not be able to play it), while
mess a7800 -cart ballblaz
loads fine (even if it does not do anything, due to the region lock)
This will spread through the lists in due time and will save average users to get a "This software cannot be used outside Japan" message for some SNES/MD/Saturn etc. games, unless they explicitly decide to mount the games on the wrong system.
As a side note, QMC2 is adding support for the filters too