Build Your Own Arcade Controls Forum

Main => Software Forum => Topic started by: u_rebelscum on January 09, 2009, 01:42:13 pm

Title: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: u_rebelscum on January 09, 2009, 01:42:13 pm
Background:  Some games have dipswitches that mean one thing if other switches are set one way, and something else if the others are set differently.  Mame semi-recently came out with conditional dipswitches so the names change to match the differences.  Example: xevious (galaga.c); if the number of players per credit is set to 5 (vs 1, 2, or 3), it's harder to get extra men, and the dipswitch that sets the extra point levels changes (10k 50k vs 10k 40k, etc) in mame's dipswitch menu.

Currently, the only way this is seen in listxml is that that dipswitch has has two defaults, lots of posibilities, and (in this case) two "none" options.  I can search the source, but I get the driver files and line numbers where the dipswitches are declared, but these input declarations can cover clones or not, and other games or not, or be a "common" declaration than different games modify differently (meaning the conditional might be left in for some games, modified for others, or removed by even others).

Is it possible to make a list of all the games that have conditional dipswitches?  (That's easier than going through the source?)
Title: Re: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: NOP on January 09, 2009, 03:13:02 pm
if you could post the <game> ... </game> xml data for an example or two of what you'd like to search for, I'll see if there's something we can do in romlister to dig those out.

it may take something custom, but i'd be happy to work on it for you.

Title: Re: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: u_rebelscum on January 09, 2009, 06:22:39 pm
Well, here's xevious's conditional dipswitch in listxml:
Code: [Select]
<dipswitch name="Bonus Life">
<dipvalue name="10K 40K 40K"/>
<dipvalue name="10K 50K 50K"/>
<dipvalue name="20K 50K 50K"/>
<dipvalue name="20K 60K 60K" default="yes"/>
<dipvalue name="20K 70K 70K"/>
<dipvalue name="20K 80K 80K"/>
<dipvalue name="20K 60K"/>
<dipvalue name="None"/>
<dipvalue name="10K 50K 50K"/>
<dipvalue name="20K 50K 50K"/>
<dipvalue name="20K 60K 60K"/>
<dipvalue name="20K 70K 70K" default="yes"/>
<dipvalue name="20K 80K 80K"/>
<dipvalue name="30K 100K 100K"/>
<dipvalue name="20K 80K"/>
<dipvalue name="None"/>
</dipswitch>
You can't really tell it's conditional, except two of the dipvalues are default="yes".  Under non-conditional, er, conditions only one dipvalue can be default=yes per dipswitch.  I don't know if it's possible to do multi-dipvalue lines until the the /dipswitch (is closed) query for two defaults, or something like that.  Nothing important, as I'm just wondering how many games have conditional dipswitches, and if there are any dips with 3+ possible conditions.  Thanks.


Hmm, I wonder if conditionally of dips should be added to listxml output?  It would be nice to see what other dip these names depend on, and when they're which ones.  But the dips haven't included the values since the beginning, so the latter is hard to do without adding the values, or recursive through the dips, or something like that.  And the former might not be worth it if the latter isn't also done (and romlister can find them without it  :laugh:).
Title: Re: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: NOP on January 12, 2009, 11:11:49 am
I'm definitely going to have to write something custom to pull that information out.
It's doable, but may be a one-off type of thing.

standby.

ok, for what it's worth, here's the ones with multiple "default=yes" dipswitch settings.
I pulled out the clones.
Code: [Select]
Air Buster: Trouble Specialty Raid Unit (World)
American Poker II
Batsugun (set 1)
Battle Garegga (Europe / USA / Japan / Asia) (Sat Feb 3 1996)
Blue Hawk
Colony 7 (set 1)
Datsun 280 Zzzap
D-Day
Dig Dug (rev 2)
Dogyuun
Flying Tiger
Funny Mouse
Gaia Crusaders
Galmedes (Japan)
Ghox (set 1)
Golden Crown (Dutch, Game Card 95-752-011)
Gulf Storm
Gun Dealer '94
High Way Race
Knuckle Bash
Knuckle Bash 2 (bootleg)
Kung-Fu Taikun
Laguna Racer
Macho Mouse
Mahou Daisakusen (Japan)
Mappy (US)
Meta Fox
Multi 5 / New Multi Game 5
Pac & Pal
Phozon (Japan)
Pipi & Bibis / Whoopee!! (Z80 sound cpu)
Pollux (set 1)
Pop Bingo
Rainbow Islands (new version)
Rally X
Rim Rockin' Basketball (V2.2)
Romar Triv
R-Shark
Sadari
Sea Wolf
Shippu Mahou Daisakusen (Japan)
Sigma Poker
Sky Army
Snow Bros. - Nick & Tom (set 1)
Snow Bros. 2 - With New Elves / Otenki Paradise
Super Pac-Man
Super Shanghai Dragon's Eye (Japan)
Super Triv
Super-X (NTC)
Teki Paki
The Combatribes (US)
The Last Day (set 1)
Thunder Heroes
Truxton II / Tatsujin Oh
V-Five (Japan)
X Multiply (Japan)
Xevious (Namco)

Hopefully that helped.  That made me write a new helper routine for romlister, so even though this was a custom job, that helper routine will come in handy later, so it's all good.
Title: Re: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: u_rebelscum on January 12, 2009, 03:23:19 pm
Thanks!  That's what I was looking for. (mame 0.129, yes?)  :cheers:

Sorry for the extra work, but glad to hear it helped elsewhere. 
Title: Re: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: NOP on January 13, 2009, 09:48:38 am
that was actually from 0.127 (just what I had here at work to mess with)
I suspect there are very few additional games that I've missed, but if you need me to run it again with the absolute latest, let me know.

Title: Re: Can I find conditional dipswitches? (Romlister Q, unless there's anyother way)
Post by: u_rebelscum on January 13, 2009, 03:53:22 pm
Good enough for now.  I'm going to submit a couple conditional dips soon.  After that maybe, but I'm happy with the list.  Thanks again!