Previous Thread
Next Thread
Print Thread
Page 3 of 6 1 2 3 4 5 6
Re: megadriv/megadrij/genesis region auto-selection? [Re: EoceneMiacid] #103126 12/20/15 02:47 AM
Joined: Mar 2001
Posts: 16,394
R
R. Belmont Online Content
Very Senior Member
Online Content
Very Senior Member
R
Joined: Mar 2001
Posts: 16,394
Our intent is that the current hardcoded cheat system will go away in favor of Lua scripts that can do more intelligent things with the games, while reducing the surface of specialized non-emulation code that MAMEdev has to maintain.

Re: megadriv/megadrij/genesis region auto-selection? [Re: ICEknight] #103127 12/20/15 04:33 AM
Joined: Feb 2004
Posts: 55
E
enik Offline
Member
Offline
Member
E
Joined: Feb 2004
Posts: 55
Originally Posted By ICEknight
Maybe it would be easier to just not consider any adaptors for the lists and separate the Japanese Mega Drive cartridges from the rest? ...Although that would require to duplicate the Electronic Arts/Tengen/pirate cartridges for that list, since they fit on both Japanese and overseas consoles, don't they? :S (That is, unless it would possible to add them to a separate "shared softlist" between all the Mega Drive systems)

Also, a good number of SG-1000/SMS games were released on two media formats (cartridge and card), both containing the same ROM image. MAME has catalog of the cartridge games only. Additional files for card games would generate mostly duplicated information, what would harm maintenance.

A possible improvement which comes to my mind is to have some tag for each software entry that allows to list each media (cart/card) an exact copy of the ROM image was released on. The emulator would set what media is compatible with the device and a frontend could filter the software list to obtain only those released on media compatible with that device. An improvement on top of that would be a list of media editions (re-release/special/limited/localized), so a frontend could pick the exact box image or manual when selected.

But despite being named as "software list", the entries it currently contains are tied to a media format.

Originally Posted By Haze
Your post was fine, even if I don't really agree with it (because when you do add those flags MAME will enforce them)

I don't have games for a system that uses the "compatibility" shared feat. So wouldn't it just show a "might not run correctly" warning as the flags for imperfect emulation do?

Re: megadriv/megadrij/genesis region auto-selection? [Re: LoganB] #103128 12/20/15 05:06 AM
Joined: Mar 2013
Posts: 307
I
ICEknight Offline
Senior Member
Offline
Senior Member
I
Joined: Mar 2013
Posts: 307
Originally Posted By LoganB
Originally Posted By AJR
Couldn't the MAME cheat system also be used to defeat region lockout headers? That would be another case for allowing systems to load normally incompatible software. I think the appropriate way to implement this would involve a command-line option.

To do so would require cheats being made to NOP out the region checks. I take it you're volunteering to make all <1119 game cheats?
Oh, that's also given that you are also having to make cheats that patch out the checksum check, or making cheats that fix the checksum :P
I've already volunteered some time ago to document the changes needed to run many problematic PAL games on 60Hz machines, so that could be a start: http://forums.sonicretro.org/index.php?s...st&p=223074

Some of them need further invertigation, of course.

EDIT: Certain official Virtual Console releases will give away some official fixes... And I don't know much about how NES emulation is handled on the 3DS, but it's the only system with PAL versions running flawlessly at 60Hz, so that may also be worth looking into.

EDIT 2:
Originally Posted By enik
Originally Posted By ICEknight
Maybe it would be easier to just not consider any adaptors for the lists and separate the Japanese Mega Drive cartridges from the rest? ...Although that would require to duplicate the Electronic Arts/Tengen/pirate cartridges for that list, since they fit on both Japanese and overseas consoles, don't they? :S (That is, unless it would possible to add them to a separate "shared softlist" between all the Mega Drive systems)

Also, a good number of SG-1000/SMS games were released on two media formats (cartridge and card), both containing the same ROM image. MAME has catalog of the cartridge games only. Additional files for card games would generate mostly duplicated information, what would harm maintenance.
Or "shared softlists" that could be applied to any number of systems/media formats, in addition to the exclusive title lists.

Last edited by ICEknight; 12/20/15 05:21 AM.

LCD artwork scans and cleanups: https://mega.nz/#F!uFYSzK7S!U-lJon9jsqyoCX_3y7_KLA
Re: megadriv/megadrij/genesis region auto-selection? [Re: enik] #103131 12/20/15 08:36 AM
Joined: Dec 2013
Posts: 129
X
xinyingho Offline
Senior Member
Offline
Senior Member
X
Joined: Dec 2013
Posts: 129
Originally Posted By enik

A possible improvement which comes to my mind is to have some tag for each software entry that allows to list each media (cart/card) an exact copy of the ROM image was released on. The emulator would set what media is compatible with the device and a frontend could filter the software list to obtain only those released on media compatible with that device. An improvement on top of that would be a list of media editions (re-release/special/limited/localized), so a frontend could pick the exact box image or manual when selected.

It's funny you're talking about about adding tags to recognise the different editions of each ROM image. It's exactly what I'm doing for my front-end Negatron. I already did this work for Neo Geo games by adding tags to clearly recognise retail and arcade editions, some others to differentiate regions. I'm currently doing the same for Mega Drive games by indicating which ROMs have been released in which regions, and also by tagging those have been reprinted in cardboard boxes in the USA.
I'm not directly modifying the softlists but by editing additional XML files that link back to the softlists through the name tags used as codes.

Re: megadriv/megadrij/genesis region auto-selection? [Re: enik] #103135 12/20/15 09:52 AM
Joined: Apr 2004
Posts: 1,554
J
judge Offline
Very Senior Member
Offline
Very Senior Member
J
Joined: Apr 2004
Posts: 1,554
Originally Posted By enik

Also, a good number of SG-1000/SMS games were released on two media formats (cartridge and card), both containing the same ROM image. MAME has catalog of the cartridge games only. Additional files for card games would generate mostly duplicated information, what would harm maintenance.

A possible improvement which comes to my mind is to have some tag for each software entry that allows to list each media (cart/card) an exact copy of the ROM image was released on. The emulator would set what media is compatible with the device and a frontend could filter the software list to obtain only those released on media compatible with that device. An improvement on top of that would be a list of media editions (re-release/special/limited/localized), so a frontend could pick the exact box image or manual when selected.

But despite being named as "software list", the entries it currently contains are tied to a media format.


That is correct. The software lists contain software where each piece of software consists of one of more physical parts; that is how we handle games released on 2 floppies and a dongle cartridge for instance. Each of those physical parts has an "interface", a description of where you can plug the part into (a specific type of cartridge port, floppy drive size, etc).

If the same rom image is used on 2 physical formats (cartridge and card) then, yes, those would actually become 2 different entries in software lists. The formats could very well have different release dates or regions and it would be nice to document that. Also frontends could use this distinction for displaying different pictures of the physical cartridge/box/manual, for instance.

This is similar to some of the systems we have in MAME where the rom sets are the same but the hardware of the systems is different. In those cases we also use separate machine descriptions. We document the systems; the rom sets are just a part of that.

Re: megadriv/megadrij/genesis region auto-selection? [Re: judge] #103149 12/20/15 02:07 PM
Joined: Feb 2004
Posts: 55
E
enik Offline
Member
Offline
Member
E
Joined: Feb 2004
Posts: 55
Originally Posted By judge

That is correct. The software lists contain software where each piece of software consists of one of more physical parts; that is how we handle games released on 2 floppies and a dongle cartridge for instance. Each of those physical parts has an "interface", a description of where you can plug the part into (a specific type of cartridge port, floppy drive size, etc).

Yeah, I see MAME as a historical documentary of how each game was released. For example, it documents the cartridge, not just the plain game data. I think this is what justifies the option for the post-production one-file-per-chip layout, versus byuu's pre-production one-file-per-type layout. If the pre-production approach would be applied to cartridge boxes, it would be like trying to obtain the original cover art without all publisher logos and other labels.

Just to make it clear, my idea would turn a simple software entry like this one:
Code:
	<software name="hangon">
		<description>Hang-On (Euro, Bra, Aus)</description>
		<year>1985</year>
		<publisher>Sega</publisher>
		<info name="serial" value="4080 (Card), 4580 (Cart)"/>
		<part name="cart" interface="sms_cart">
			<dataarea name="rom" size="32768">
				<rom name="hang-on (europe).bin" size="32768" crc="071b045e" sha1="e601257f6477b85eb0b25a5b6d46ebc070d8a05a" offset="000000" />
			</dataarea>
		</part>
	</software>

Into more complex entries like this hypothetical example (with arbitrary data):
Code:
	<software name="hangon">
		<description>Hang-On (v1.0)</description>
		<info name="developer" value="Sega" />
		<year>1985</year>
		<dataarea name="unique_rom" size="32768">
			<rom name="hang-on (v1.0).bin" size="32768" crc="071b045e" sha1="e601257f6477b85eb0b25a5b6d46ebc070d8a05a" offset="000000" />
		</dataarea>
		<dataarea name="two_roms" size="32768">
			<rom name="epr10001.u1" size="16384" crc="xxxxxxxx" sha1="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" offset="0x0000" />
			<rom name="epr10002.u2" size="16384" crc="yyyyyyyy" sha1="yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy" offset="0x4000" />
		</dataarea>
		<!-- and as an example I set in the end another rom layout for a specific release. -->
		<!-- Also, an unused dataarea could be defined, as documentation, for plain game data (byuu style) -->
		<interface="sms_card">
			<description>Euro</description>
			<publisher>Sega</publisher>
			<releaseyear>1985</releaseyear>
			<part name="card">
				<info name="serial" value="4080"/>
				<data_layout>unique_rom</data_layout>
			</part>
		</interface>
		<interface="sms_cart">
			<description>Euro</description>
			<releaseyear>1986</releaseyear>
			<publisher>Sega</publisher>
			<part name="cart">
				<info name="serial" value="4580"/>
				<data_layout>two_roms</data_layout>
			</part>
		</interface>
		<interface="sms_cart">
			<description>Aus</description>
			<releaseyear>1988</releaseyear>
			<publisher>Sega</publisher>
			<part name="cart">
				<info name="serial" value="8950"/>
				<data_layout>two_roms</data_layout>
			</part>
		</interface>
		<interface="sms_cart">
			<description>Bra</description>
			<releaseyear>1989</releaseyear>
			<publisher>Tec Toy</publisher>
			<part name="cart">
				<info name="serial" value="8950"/>
				<!-- exclusive rom layout -->
				<dataarea name="padded_rom" size="65536"> <!-- padded with 0xff -->
					<rom name="epr20001.u1" size="65536" crc="zzzzzzzz" sha1="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" offset="0x0000" />
				</dataarea>
			</part>
		</interface>
	</software>

Last edited by enik; 12/20/15 04:46 PM.
Re: megadriv/megadrij/genesis region auto-selection? [Re: EoceneMiacid] #103150 12/20/15 02:24 PM
Joined: Apr 2015
Posts: 380
E
EoceneMiacid Offline OP
Senior Member
OP Offline
Senior Member
E
Joined: Apr 2015
Posts: 380
Uh-oh, you've just made a suggestion

*ducks for cover*

Re: megadriv/megadrij/genesis region auto-selection? [Re: EoceneMiacid] #103154 12/20/15 02:45 PM
Joined: Dec 2012
Posts: 242
L
LoganB Offline
Senior Member
Offline
Senior Member
L
Joined: Dec 2012
Posts: 242
I'm not sure how this is any better. IMO, just having a separate sms_card.xml (which I already have made, just yet to implement) for the SMS card releases is better. That way, a user can plug a cart and a card in at the same time, much like what is able to be done on the console.
In your example, how would you insert two different media at once? In standard MAME form, it'd be
Code:
mame64 smsj -cart sonic -card hangon

Re: megadriv/megadrij/genesis region auto-selection? [Re: EoceneMiacid] #103155 12/20/15 03:05 PM
Joined: Feb 2004
Posts: 55
E
enik Offline
Member
Offline
Member
E
Joined: Feb 2004
Posts: 55
With my example, the smsj driver would be set with:

MCFG_SOFTWARE_LIST_ADD("soft_list","sms")
MCFG_SMS_CARTRIDGE_ADD("slot", sms_cart, nullptr)
MCFG_SMS_CARD_ADD("mycard", sms_card, nullptr)

Then with two different media at once, it would search in the sms.xml two times, the first time for entries with the sms_cart interface and the second time for those with the sms_card interface.

Well, in my example there are three entries with the sms_cart interface for the same software, so something would be needed to define what entry would be used. But it is just a brainstorm work, not a defined spec.

Re: megadriv/megadrij/genesis region auto-selection? [Re: EoceneMiacid] #103186 12/21/15 01:37 PM
Joined: Jan 2006
Posts: 3,687
etabeta78 Offline
Very Senior Member
Offline
Very Senior Member
Joined: Jan 2006
Posts: 3,687
but the idea behind softlists has always been that each softlist entry represents a real media users could buy, as judge explained.

as such, the card and cart releases shall go to different sets, no matter whether we split the lists based on the media or not wink

Page 3 of 6 1 2 3 4 5 6

Who's Online Now
3 registered members (Olivier Galibert, R. Belmont, 1 invisible), 187 guests, and 2 spiders.
Key: Admin, Global Mod, Mod
ShoutChat Box
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics8,722
Posts114,645
Members4,873
Most Online510
Aug 26th, 2019
Powered by UBB.threads™ PHP Forum Software 7.7.3