Early init of the scaler - to prevent ComI trying to use a huge window by default.
This may require porters to make a small backend change, not to reinit a scaler on hotswap if the display has not been init_size'ed. svn-id: r6449
This commit is contained in:
parent
62780b34d7
commit
0b46f85b7e
2 changed files with 8 additions and 5 deletions
|
@ -191,6 +191,8 @@ void OSystem_SDL::unload_gfx_mode() {
|
|||
}
|
||||
|
||||
void OSystem_SDL::hotswap_gfx_mode() {
|
||||
if (!_screen)
|
||||
return;
|
||||
|
||||
// Keep around the old _screen & _tmpscreen so we can restore the screen data
|
||||
// after the mode switch.
|
||||
|
|
|
@ -124,6 +124,12 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)
|
|||
_sound->_sound_volume_sfx = detector->_sfx_volume;
|
||||
_sound->_sound_volume_music = detector->_music_volume;
|
||||
|
||||
// Override global scaler with any game-specific define
|
||||
if (g_config->get("gfx_mode")) {
|
||||
prop.gfx_mode = detector->parseGraphicsMode(g_config->get("gfx_mode"));
|
||||
syst->property(OSystem::PROP_SET_GFX_MODE, &prop);
|
||||
}
|
||||
|
||||
/* Initialize backend */
|
||||
syst->init_size(_realWidth, _realHeight);
|
||||
prop.cd_num = detector->_cdrom;
|
||||
|
@ -136,11 +142,6 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)
|
|||
syst->property(OSystem::PROP_TOGGLE_FULLSCREEN, 0);
|
||||
}
|
||||
|
||||
// Override global scaler with any game-specific define
|
||||
if (g_config->get("gfx_mode")) {
|
||||
prop.gfx_mode = detector->parseGraphicsMode(g_config->get("gfx_mode"));
|
||||
syst->property(OSystem::PROP_SET_GFX_MODE, &prop);
|
||||
}
|
||||
|
||||
#ifndef __GP32__ //ph0x FIXME, "quick dirty hack"
|
||||
/* Bind the mixer to the system => mixer will be invoked
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue