Build Your Own Arcade Controls Forum
Software Support => GroovyMAME => Topic started by: ahofle on February 21, 2013, 09:14:11 pm
-
Hi Calamity.
I'm hoping this is a quick monitor specs change. I'm getting a blank screen on Bosconian. I've attached the output and below is my core switchres section. Any help would be appreciated as always!
#
# CORE SWITCHRES OPTIONS
#
modeline 1
monitor cga
monitor_connector auto
monitor_orientation rotate
monitor_aspect 4:3
monitor_debug 0
monitor_doublescan 1
monitor_dotclock 0
monitor_ymin 0
soundsync 0
cleanstretch 1
changeres 1
redraw 0
#monitor_specs0 auto
monitor_specs0 15250-15700, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 288, 384
monitor_specs1 auto
monitor_specs2 auto
monitor_specs3 auto
monitor_specs4 auto
monitor_specs5 auto
monitor_specs6 auto
monitor_specs7 auto
magic_resolution auto
powerstrip 0
-
Do you have the mame artwork zip for bosconian in your artwork folder?
I seem to recall having an issue with that in the past. I don't remember why, but I think it had something to do with the artwork layout.
-
I had artwork turned off, but I renamed the bosco.zip in artwork just to make sure. Same thing. :(
-
The surface created doesn't fit the screen vertically, that's the issue:
DirectDraw: primary surface created: 1234x240x32 (R=00FF0000 G=0000FF00 B=000000FF)
DirectDraw: New blit size = 224x288
DirectDraw: blit surface created: 224x288x32 (R=00FF0000 G=0000FF00 B=000000FF)
This is because this is an horizontal game, and it's recognized and calculated as horizontal, but it's passed to DirectDraw as vertical.
I suspect your 'galaga.ini' file. Try removing it. Also, delete its cfg and nvram files.
BTW please consider upgrading, things work in a more logical way now.
-
Thanks Calamity.
I've been postponing upgrading mostly because I don't want the pain of a bunch of broken roms. I will check the galaga cfg/ini files and will post back soon with results.
-
You were right about galaga.ini...I had one because I am using an older MAME for that rom and had ror set to 1. I'm still confused why bosco uses galaga.ini though. ???
Thanks again!
-
I'm still confused why bosco uses galaga.ini though. ???
Because MAME allows you to create ini files for a whole driver. Since bosconian is defined in galaga.c, the galaga.ini file applies as an ini file for all games in the driver.
I don't know what you're supposed to do when the driver name is the same as a game name and you only want it to apply to a single game.
For instance, if you wanted a special ini file for ONLY galaga, how would you do that?
MAME reads the following config files in order:
- mame.ini
- <mymame>.ini (i.e. if MAME was renamed mame060.exe, MAME parses mame060.ini here)
- debug.ini (if the debugger is enabled)
- <parent>.ini (for clones only, may be called recursively)
- <gamename>.ini
- vertical.ini (for games with vertical monitor orientation)
- horizont.ini (for games with horizontal monitor orientation)
- vector.ini (for vector games only)
- <driver>.ini (based on the source filename of the driver)
The settings in the later ini's override those in the earlier ini's.
So, for example, if you wanted to disable overlay effects in the
vector games, you can create a vector.ini with the "effect none" line
in it, and it will override whatever effect value you have in your
mame.ini.
Though there was some weirdness reported a while back, so the docs may no longer be correct...
http://www.mameworld.info/ubbthreads/showflat.php?Number=297923 (http://www.mameworld.info/ubbthreads/showflat.php?Number=297923)
-
That's interesting. The docs must be out of date though because I got around the problem by creating a bosco.ini and adding 'ror 0' in it, which then overrode the 'ror 1' in galaga.ini. :dunno
-
This is the priority order, as defined in emuopts.h (notice the 'switchres' priority is added by GM):
// option priorities
enum
{
// command-line options are HIGH priority
OPTION_PRIORITY_CMDLINE = OPTION_PRIORITY_HIGH,
// INI-based options are NORMAL priority, in increasing order:
OPTION_PRIORITY_INI = OPTION_PRIORITY_NORMAL,
OPTION_PRIORITY_MAME_INI,
OPTION_PRIORITY_SWITCHRES,
OPTION_PRIORITY_DEBUG_INI,
OPTION_PRIORITY_ORIENTATION_INI,
OPTION_PRIORITY_VECTOR_INI,
OPTION_PRIORITY_SOURCE_INI,
OPTION_PRIORITY_GPARENT_INI,
OPTION_PRIORITY_PARENT_INI,
OPTION_PRIORITY_DRIVER_INI
};
I'd say that 'source' there is what we usually call 'driver', so:
source_ini = galaga.ini
driver_ini = bosco.ini (highest priority)
-
the question remains... What do you do if you want an ini for just "galaga" and not the whole "galaga" driver?
-
I guess you'd have to identify all the clones and override the behavior you don't want in galaga.ini and then put your galaga specific stuff in the galaga.ini file. That sucks.