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)