diff src/xs_config.c @ 75:653c9b0d1320

SIDPlay2 support "works" now. Borked problems with threads.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 15 Sep 2003 11:10:03 +0000
parents e3b205a6bc7e
children 3fca0b13a80a
line wrap: on
line diff
--- a/src/xs_config.c	Sun Sep 14 18:51:05 2003 +0000
+++ b/src/xs_config.c	Mon Sep 15 11:10:03 2003 +0000
@@ -52,14 +52,16 @@
 	{CTYPE_INT,	&xs_cfg.memoryMode,		"memoryMode"},
 	{CTYPE_INT,	&xs_cfg.clockSpeed,		"clockSpeed"},
 	{CTYPE_BOOL,	&xs_cfg.forceSpeed,		"forceSpeed"},
+
 	{CTYPE_INT,	&xs_cfg.optimiseLevel,		"optimiseLevel"},
+
 	{CTYPE_BOOL,	&xs_cfg.oversampleEnable,	"oversampleEnable"},
 	{CTYPE_INT,	&xs_cfg.oversampleFactor,	"oversampleFactor"},
+	{CTYPE_INT,	&xs_cfg.oversampleFilter,	"oversampleFilter"},
 
 	{CTYPE_BOOL,	&xs_cfg.playMaxTimeEnable,	"playMaxTimeEnable"},
 	{CTYPE_INT,	&xs_cfg.playMaxTime,		"playMaxTime"},
 	{CTYPE_BOOL,	&xs_cfg.playMaxTimeUnknown,	"playMaxTimeUnknown"},
-
 	{CTYPE_BOOL,	&xs_cfg.songlenDBEnable,	"songlenDBEnable"},
 	{CTYPE_STR,	&xs_cfg.songlenDBPath,		"songlenDBPath"},
 
@@ -87,24 +89,26 @@
 { WTYPE_SPIN,	CTYPE_INT,	"cfg_samplerate",	&xs_cfg.fmtFrequency,		0 },
 { WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_oversample",	&xs_cfg.oversampleEnable,	0 },
 { WTYPE_SPIN,	CTYPE_INT,	"cfg_oversample_factor",&xs_cfg.oversampleFactor,	0 },
-
-{ WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_mos8580",	&xs_cfg.mos8580,		0 },
-{ WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_filters",	&xs_cfg.emulateFilters,		0 },
+{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_overfilter_average",&xs_cfg.oversampleFilter,	XS_FILTER_AVERAGE },
+{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_overfilter_sinc",	&xs_cfg.oversampleFilter,	XS_FILTER_SINC },
 
-{ WTYPE_SCALE,	CTYPE_FLOAT,	"cfg_emu_filt_fs",	&xs_cfg.filterFs,		0 },
-{ WTYPE_SCALE,	CTYPE_FLOAT,	"cfg_emu_filt_fm",	&xs_cfg.filterFm,		0 },
-{ WTYPE_SCALE,	CTYPE_FLOAT,	"cfg_emu_filt_ft",	&xs_cfg.filterFt,		0 },
-
+{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_sidplay1",	&xs_cfg.playerEngine,		XS_ENG_SIDPLAY1 },
+{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_sidplay2",	&xs_cfg.playerEngine,		XS_ENG_SIDPLAY2 },
+{ WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_sidplay2_opt",	&xs_cfg.optimiseLevel,		0 },
+{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_nanosid",	&xs_cfg.playerEngine,		XS_ENG_NANOSID },
+{ WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_mos8580",	&xs_cfg.mos8580,		0 },
 { WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_mem_real",	&xs_cfg.memoryMode,		XS_MPU_REAL },
 { WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_mem_banksw",	&xs_cfg.memoryMode,		XS_MPU_BANK_SWITCHING },
 { WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_mem_transrom",	&xs_cfg.memoryMode,		XS_MPU_TRANSPARENT_ROM },
 { WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_mem_playsid",	&xs_cfg.memoryMode,		XS_MPU_PLAYSID_ENVIRONMENT },
-
 { WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_clock_ntsc",	&xs_cfg.clockSpeed,		XS_CLOCK_NTSC },
 { WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_clock_pal",	&xs_cfg.clockSpeed,		XS_CLOCK_PAL },
 { WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_clock_force",	&xs_cfg.forceSpeed,		0 },
 
-{ WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_sidplay2_opt",	&xs_cfg.optimiseLevel,		0 },
+{ WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_emu_filters",	&xs_cfg.emulateFilters,		0 },
+{ WTYPE_SCALE,	CTYPE_FLOAT,	"cfg_emu_filt_fs",	&xs_cfg.filterFs,		0 },
+{ WTYPE_SCALE,	CTYPE_FLOAT,	"cfg_emu_filt_fm",	&xs_cfg.filterFm,		0 },
+{ WTYPE_SCALE,	CTYPE_FLOAT,	"cfg_emu_filt_ft",	&xs_cfg.filterFt,		0 },
 
 { WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_maxtime_enable",	&xs_cfg.playMaxTimeEnable,	0 },
 { WTYPE_SPIN,	CTYPE_INT,	"cfg_maxtime",		&xs_cfg.playMaxTime,		0 },
@@ -124,9 +128,6 @@
 { WTYPE_BUTTON,	CTYPE_BOOL,	"cfg_ftitle_override",	&xs_cfg.titleOverride,		0 },
 { WTYPE_TEXT,	CTYPE_STR,	"cfg_ftitle_format",	&xs_cfg.titleFormat,		0 },
 
-{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_sidplay1",	&xs_cfg.playerEngine,	XS_ENG_SIDPLAY1 },
-{ WTYPE_BGROUP,	CTYPE_INT,	"cfg_emu_sidplay2",	&xs_cfg.playerEngine,	XS_ENG_SIDPLAY2 },
-
 };
 
 const gint xs_widtable_max = (sizeof(xs_widtable) / sizeof(t_xs_wid_item));
@@ -174,9 +175,12 @@
 
  xs_cfg.clockSpeed		= XS_CLOCK_PAL;
  xs_cfg.forceSpeed		= FALSE;
+
  xs_cfg.optimiseLevel		= FALSE;
+
  xs_cfg.oversampleEnable	= FALSE;
  xs_cfg.oversampleFactor	= XS_MIN_OVERSAMPLE;
+ xs_cfg.oversampleFilter	= XS_FILTER_AVERAGE;
 
  xs_cfg.playMaxTimeEnable	= FALSE;
  xs_cfg.playMaxTime		= 150;
@@ -512,15 +516,11 @@
  xs_configwin = create_xs_configwin();
 
  /* Based on selected emulation library, disable options */
-#ifdef HAVE_SIDPLAY1
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(LUW("cfg_emu_sidplay1")), TRUE);
-#else
+#ifndef HAVE_SIDPLAY1
  gtk_widget_set_sensitive(LUW("cfg_emu_sidplay1"), FALSE);
 #endif
 
 #ifdef HAVE_SIDPLAY2
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(LUW("cfg_emu_sidplay2")), TRUE);
-#else
  gtk_widget_set_sensitive(LUW("cfg_emu_sidplay2"), FALSE);
  gtk_widget_set_sensitive(LUW("cfg_emu_sidplay2_opt"), FALSE);
 
@@ -529,6 +529,13 @@
  gtk_widget_set_sensitive(LUW("cfg_oversample_grp"), FALSE);
  gtk_widget_set_sensitive(LUW("cfg_oversample"), FALSE);
  gtk_widget_set_sensitive(LUW("cfg_oversample_factor"), FALSE);
+
+ gtk_widget_set_sensitive(LUW("cfg_overfilter_average"), FALSE);
+ gtk_widget_set_sensitive(LUW("cfg_overfilter_sinc"), FALSE);
+#endif
+
+#ifndef HAVE_NANOSID
+ gtk_widget_set_sensitive(LUW("cfg_emu_nanosid"), FALSE);
 #endif
 
 #ifndef HAVE_XMMSEXTRA