revert "change res on the fly"
there's a major slowdown when doing several res changes in the same session, and its need is questionable anyway, because of potential inconsistency of screensize across states and stuff.
This commit is contained in:
parent
6da42f7559
commit
358515e07e
Binary file not shown.
|
@ -129,7 +129,7 @@ namespace BizHawk.Emulation.Cores.Computers.Doom
|
|||
public bool DoUpdate = false;
|
||||
|
||||
[DisplayName("Internal Resolution Scale Factor")]
|
||||
[Description("Which factor to increase internal resolution by [1 - 12]. Affects \"quality\" of rendered image at the cost of accuracy. Native resolution is 320x200 resized to 4:3 DAR on a CRT monitor.")]
|
||||
[Description("Which factor to increase internal resolution by [1 - 12]. Affects \"quality\" of rendered image at the cost of accuracy. Native resolution is 320x200 resized to 4:3 DAR on a CRT monitor.\n\nRequires restart.")]
|
||||
[Range(1, 12)]
|
||||
[DefaultValue(1)]
|
||||
[TypeConverter(typeof(ConstrainedIntConverter))]
|
||||
|
@ -198,13 +198,16 @@ namespace BizHawk.Emulation.Cores.Computers.Doom
|
|||
}
|
||||
public PutSettingsDirtyBits PutSettings(DoomSettings o)
|
||||
{
|
||||
var ret = _settings.ScaleFactor == o.ScaleFactor
|
||||
? PutSettingsDirtyBits.None
|
||||
: PutSettingsDirtyBits.RebootCore;
|
||||
_settings = o;
|
||||
if (_settings.DisplayPlayer == 1 && !_syncSettings.Player1Present) throw new Exception($"Trying to set display player '{_settings.DisplayPlayer}' but it is not active in this movie.");
|
||||
if (_settings.DisplayPlayer == 2 && !_syncSettings.Player2Present) throw new Exception($"Trying to set display player '{_settings.DisplayPlayer}' but it is not active in this movie.");
|
||||
if (_settings.DisplayPlayer == 3 && !_syncSettings.Player3Present) throw new Exception($"Trying to set display player '{_settings.DisplayPlayer}' but it is not active in this movie.");
|
||||
if (_settings.DisplayPlayer == 4 && !_syncSettings.Player4Present) throw new Exception($"Trying to set display player '{_settings.DisplayPlayer}' but it is not active in this movie.");
|
||||
_settings.DoUpdate = true;
|
||||
return PutSettingsDirtyBits.None;
|
||||
return ret;
|
||||
}
|
||||
|
||||
[CoreSettings]
|
||||
|
|
|
@ -161,15 +161,8 @@ ECL_EXPORT bool dsda_frame_advance(CommonButtons commonButtons, struct PackedPla
|
|||
{
|
||||
if (renderInfo->DoUpdate)
|
||||
{
|
||||
char setting_buffer[512];
|
||||
sprintf(setting_buffer, "%dx%d",
|
||||
SCREENWIDTH * renderInfo->ScaleFactor,
|
||||
SCREENHEIGHT * renderInfo->ScaleFactor);
|
||||
dsda_UpdateStringConfig(dsda_config_screen_resolution, setting_buffer, true);
|
||||
|
||||
dsda_UpdateIntConfig(dsda_config_screenblocks, renderInfo->HeadsUpMode ? 11 : 10, true);
|
||||
dsda_UpdateIntConfig(dsda_config_hud_displayed, renderInfo->HeadsUpMode == 2 ? 0 : 1, true);
|
||||
|
||||
dsda_UpdateIntConfig(dsda_config_screenblocks, renderInfo->HeadsUpMode != HUD_VANILLA ? 11 : 10, true);
|
||||
dsda_UpdateIntConfig(dsda_config_hud_displayed, renderInfo->HeadsUpMode == HUD_NONE ? 0 : 1, true);
|
||||
dsda_UpdateIntConfig(dsda_config_usegamma, renderInfo->Gamma, true);
|
||||
dsda_UpdateIntConfig(dsda_config_show_messages, renderInfo->ShowMessages, true);
|
||||
dsda_UpdateIntConfig(dsda_config_hudadd_secretarea, renderInfo->ReportSecrets, true);
|
||||
|
|
|
@ -83,10 +83,17 @@ extern fixed_t scale_ftom;
|
|||
#define PALETTE_SIZE 256
|
||||
uint32_t _convertedPaletteBuffer[PALETTE_SIZE];
|
||||
|
||||
enum HudMode
|
||||
{
|
||||
HUD_VANILLA = 0,
|
||||
HUD_DSDA = 1,
|
||||
HUD_NONE = 2
|
||||
};
|
||||
|
||||
enum MemoryArrayType
|
||||
{
|
||||
ARRAY_THINGS = 0,
|
||||
ARRAY_LINES = 1,
|
||||
ARRAY_THINGS = 0,
|
||||
ARRAY_LINES = 1,
|
||||
ARRAY_SECTORS = 2
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit dafb3a130ebece8bc2320d8fe144eee17541ac12
|
||||
Subproject commit aedab0b2825646f06f85a9d13b4c67e231baa5dc
|
Loading…
Reference in New Issue