mirror of
https://github.com/libretro/vice-libretro.git
synced 2026-11-07 11:16:00 -10:00
Internal video filter core option
This commit is contained in:
1 parent
bd4d84109d
commit
3f799019c7
21 files changed
+244
-57
No files matched your search
+5
-2
@@ -394,10 +394,15 @@ SOURCES_C += \
|
||||
$(EMU)/vicii/vicii-timing.c \
|
||||
$(EMU)/vicii/vicii.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1crt.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-crt.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -423,6 +428,4 @@ SOURCES_C += \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/video-render-1x2.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+4
-2
@@ -382,10 +382,13 @@ SOURCES_C += \
|
||||
$(EMU)/vicii/vicii-timing.c \
|
||||
$(EMU)/vicii/vicii.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -409,7 +412,6 @@ SOURCES_C += \
|
||||
$(RETRODEP)/printerdrv/drv-nl10.c \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/renderscale2x.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+4
-2
@@ -342,10 +342,13 @@ SOURCES_C += \
|
||||
$(EMU)/vicii/viciidtv-draw.c \
|
||||
$(EMU)/vicii/viciidtv-snapshot.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -370,7 +373,6 @@ SOURCES_C += \
|
||||
$(RETRODEP)/printerdrv/drv-nl10.c \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/renderscale2x.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+5
-3
@@ -382,10 +382,13 @@ SOURCES_C += \
|
||||
$(EMU)/viciisc/vicii-timing.c \
|
||||
$(EMU)/viciisc/vicii.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -409,7 +412,6 @@ SOURCES_C += \
|
||||
$(RETRODEP)/printerdrv/drv-nl10.c \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/renderscale2x.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
|
||||
+5
-2
@@ -319,10 +319,15 @@ SOURCES_C += \
|
||||
$(EMU)/vdrive/vdrive.c \
|
||||
$(EMU)/vicefeatures.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1crt.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-crt.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -345,6 +350,4 @@ SOURCES_C += \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/video-render-1x2.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+5
-2
@@ -319,10 +319,15 @@ SOURCES_C += \
|
||||
$(EMU)/vicii/vicii-timing.c \
|
||||
$(EMU)/vicii/vicii.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1crt.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-crt.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -345,6 +350,4 @@ SOURCES_C += \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/video-render-1x2.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+3
-2
@@ -323,10 +323,12 @@ SOURCES_C += \
|
||||
$(EMU)/vdrive/vdrive.c \
|
||||
$(EMU)/vicefeatures.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1crt.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-crt.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -348,8 +350,7 @@ SOURCES_C += \
|
||||
$(RETRODEP)/printerdrv/drv-nl10.c \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/renderscale2x.c \
|
||||
$(RETRODEP)/video/video-render-1x2.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+3
-2
@@ -343,10 +343,13 @@ SOURCES_C += \
|
||||
$(EMU)/vdrive/vdrive.c \
|
||||
$(EMU)/vicefeatures.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -369,6 +372,4 @@ SOURCES_C += \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+3
-2
@@ -363,10 +363,13 @@ SOURCES_C += \
|
||||
$(EMU)/viciisc/vicii-timing.c \
|
||||
$(EMU)/viciisc/vicii.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -392,6 +395,4 @@ SOURCES_C += \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
+3
-2
@@ -347,10 +347,13 @@ SOURCES_C += \
|
||||
$(EMU)/vic20/vic20video.c \
|
||||
$(EMU)/vicefeatures.c \
|
||||
$(EMU)/video/render1x1.c \
|
||||
$(EMU)/video/render1x1ntsc.c \
|
||||
$(EMU)/video/render1x1pal.c \
|
||||
$(EMU)/video/video-canvas.c \
|
||||
$(EMU)/video/video-cmdline-options.c \
|
||||
$(EMU)/video/video-color.c \
|
||||
$(EMU)/video/video-render.c \
|
||||
$(EMU)/video/video-render-pal.c \
|
||||
$(EMU)/video/video-resources.c \
|
||||
$(EMU)/video/video-sound.c \
|
||||
$(EMU)/video/video-viewport.c \
|
||||
@@ -373,6 +376,4 @@ SOURCES_C += \
|
||||
$(RETRODEP)/samplerdrv/file_drv.c \
|
||||
$(RETRODEP)/samplerdrv/sampler.c \
|
||||
$(RETRODEP)/video/video-render-2x2.c \
|
||||
$(RETRODEP)/video/video-render-crt.c \
|
||||
$(RETRODEP)/video/video-render-pal.c \
|
||||
|
||||
@@ -84,7 +84,7 @@ unsigned int retroh = WINDOW_HEIGHT;
|
||||
unsigned int lastw = 0;
|
||||
unsigned int lasth = 0;
|
||||
|
||||
unsigned int pix_bytes = 2;
|
||||
unsigned short int pix_bytes = 2;
|
||||
static bool pix_bytes_initialized = false;
|
||||
unsigned short int retro_bmp[RETRO_BMP_SIZE] = {0};
|
||||
|
||||
@@ -2374,7 +2374,7 @@ void retro_set_environment(retro_environment_t cb)
|
||||
{
|
||||
"vice_joyport_pointer_color",
|
||||
"Video > Light Pen/Gun Pointer Color",
|
||||
"Color for light guns and pens.",
|
||||
"Crosshair color for light pens and guns.",
|
||||
{
|
||||
{ "disabled", NULL },
|
||||
{ "black", "Black" },
|
||||
@@ -2388,6 +2388,29 @@ void retro_set_environment(retro_environment_t cb)
|
||||
},
|
||||
"blue"
|
||||
},
|
||||
{
|
||||
#if defined(__X64__) || defined(__X64SC__) || defined(__X64DTV__) || defined(__X128__) || defined(__XSCPU64__) || defined(__XCBM5x0__)
|
||||
"vice_vicii_filter",
|
||||
"Video > VIC-II Filter",
|
||||
#elif defined(__XVIC__)
|
||||
"vice_vic_filter",
|
||||
"Video > VIC Filter",
|
||||
#elif defined(__XPLUS4__)
|
||||
"vice_ted_filter",
|
||||
"Video > TED Filter",
|
||||
#elif defined(__XPET__) || defined(__XCBM2__)
|
||||
"vice_crtc_filter",
|
||||
"Video > CRTC Filter",
|
||||
#endif
|
||||
"CRT emulation filter with custom horizontal blur.",
|
||||
{
|
||||
{ "disabled", NULL },
|
||||
{ "enabled", NULL },
|
||||
{ "enabled_medblur", "50% blur" },
|
||||
{ "enabled_lowblur", "10% blur" },
|
||||
},
|
||||
"disabled"
|
||||
},
|
||||
#if defined(__XVIC__)
|
||||
{
|
||||
"vice_vic20_external_palette",
|
||||
@@ -4457,6 +4480,48 @@ static void update_variables(void)
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(__X64__) || defined(__X64SC__) || defined(__X64DTV__) || defined(__X128__) || defined(__XSCPU64__) || defined(__XCBM5x0__)
|
||||
var.key = "vice_vicii_filter";
|
||||
#elif defined(__XVIC__)
|
||||
var.key = "vice_vic_filter";
|
||||
#elif defined(__XPLUS4__)
|
||||
var.key = "vice_ted_filter";
|
||||
#elif defined(__XPET__) || defined(__XCBM2__)
|
||||
var.key = "vice_crtc_filter";
|
||||
#endif
|
||||
var.value = NULL;
|
||||
if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
|
||||
{
|
||||
int filter = strcmp(var.value, "disabled");
|
||||
int blur = 0;
|
||||
|
||||
if (filter)
|
||||
{
|
||||
if (strstr(var.value, "lowblur")) blur = 50;
|
||||
else if (strstr(var.value, "medblur")) blur = 250;
|
||||
else blur = 500;
|
||||
}
|
||||
|
||||
if (retro_ui_finalized && vice_opt.Filter != blur)
|
||||
{
|
||||
#if defined(__XPET__) || defined(__XCBM2__)
|
||||
log_resources_set_int("CrtcFilter", filter);
|
||||
log_resources_set_int("CrtcPALBlur", blur);
|
||||
#elif defined(__XPLUS4__)
|
||||
log_resources_set_int("TEDFilter", filter);
|
||||
log_resources_set_int("TEDPALBlur", blur);
|
||||
#elif defined(__XVIC__)
|
||||
log_resources_set_int("VICFilter", filter);
|
||||
log_resources_set_int("VICPALBlur", blur);
|
||||
#else
|
||||
log_resources_set_int("VICIIFilter", filter);
|
||||
log_resources_set_int("VICIIPALBlur", blur);
|
||||
#endif
|
||||
}
|
||||
|
||||
vice_opt.Filter = blur;
|
||||
}
|
||||
|
||||
#if defined(__XVIC__)
|
||||
var.key = "vice_vic20_external_palette";
|
||||
var.value = NULL;
|
||||
@@ -5358,6 +5423,8 @@ static void update_variables(void)
|
||||
#if defined(__XVIC__)
|
||||
option_display.key = "vice_vic20_external_palette";
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_vic_filter",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_vic_color_gamma",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_vic_color_tint",
|
||||
@@ -5371,6 +5438,8 @@ static void update_variables(void)
|
||||
#elif defined(__XPLUS4__)
|
||||
option_display.key = "vice_plus4_external_palette";
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_ted_filter",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_ted_color_gamma",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_ted_color_tint",
|
||||
@@ -5384,12 +5453,18 @@ static void update_variables(void)
|
||||
#elif defined(__XPET__)
|
||||
option_display.key = "vice_pet_external_palette";
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_crtc_filter",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
#elif defined(__XCBM2__)
|
||||
option_display.key = "vice_cbm2_external_palette";
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_crtc_filter",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
#else
|
||||
option_display.key = "vice_external_palette";
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_vicii_filter",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_vicii_color_gamma",
|
||||
environ_cb(RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY, &option_display);
|
||||
option_display.key = "vice_vicii_color_tint",
|
||||
|
||||
@@ -66,7 +66,7 @@ typedef uint8_t uint8;
|
||||
#endif
|
||||
#define RETRO_BMP_SIZE (WINDOW_WIDTH * WINDOW_HEIGHT * 2)
|
||||
extern unsigned short int retro_bmp[RETRO_BMP_SIZE];
|
||||
extern unsigned int pix_bytes;
|
||||
extern unsigned short int pix_bytes;
|
||||
|
||||
#define MANUAL_CROP_OPTIONS \
|
||||
{ \
|
||||
@@ -209,6 +209,7 @@ struct vice_core_options
|
||||
int SidResid8580FilterBias;
|
||||
int SFXSoundExpanderChip;
|
||||
char ExternalPalette[RETRO_PATH_MAX];
|
||||
int Filter;
|
||||
int ColorGamma;
|
||||
int ColorTint;
|
||||
int ColorSaturation;
|
||||
|
||||
@@ -186,8 +186,13 @@ int ui_init_finalize(void)
|
||||
log_resources_set_int("FileSystemDevice8", 0);
|
||||
log_resources_set_int("FSDevice8ConvertP00", 0);
|
||||
|
||||
/* Machine specific defaults */
|
||||
#if defined(__X64DTV__)
|
||||
log_resources_set_int("Drive8Type", 0);
|
||||
#elif defined(__X128__)
|
||||
log_resources_set_int("VDCStretchVertical", 0);
|
||||
#elif defined(__XPET__) || defined(__XCBM2__)
|
||||
log_resources_set_int("CrtcStretchVertical", 0);
|
||||
#endif
|
||||
|
||||
/*** Core options ***/
|
||||
@@ -235,6 +240,20 @@ int ui_init_finalize(void)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(__X64__) || defined(__X64SC__) || defined(__X64DTV__) || defined(__X128__) || defined(__XSCPU64__) || defined(__XCBM5x0__)
|
||||
log_resources_set_int("VICIIFilter", (vice_opt.Filter > 0) ? 1 : 0);
|
||||
log_resources_set_int("VICIIPALBlur", vice_opt.Filter);
|
||||
#elif defined(__XVIC__)
|
||||
log_resources_set_int("VICFilter", (vice_opt.Filter > 0) ? 1 : 0);
|
||||
log_resources_set_int("VICPALBlur", vice_opt.Filter);
|
||||
#elif defined(__XPLUS4__)
|
||||
log_resources_set_int("TEDFilter", (vice_opt.Filter > 0) ? 1 : 0);
|
||||
log_resources_set_int("TEDPALBlur", vice_opt.Filter);
|
||||
#elif defined(__XPET__) || defined(__XCBM2__)
|
||||
log_resources_set_int("CrtcFilter", (vice_opt.Filter > 0) ? 1 : 0);
|
||||
log_resources_set_int("CrtcPALBlur", vice_opt.Filter);
|
||||
#endif
|
||||
|
||||
#if defined(__X64__) || defined(__X64SC__) || defined(__X64DTV__) || defined(__X128__) || defined(__XSCPU64__) || defined(__XCBM5x0__)
|
||||
log_resources_set_int("VICIIColorGamma", vice_opt.ColorGamma);
|
||||
log_resources_set_int("VICIIColorTint", vice_opt.ColorTint);
|
||||
|
||||
+11
-6
@@ -22,8 +22,6 @@
|
||||
|
||||
#include "libretro-core.h"
|
||||
|
||||
struct video_canvas_s *retro_canvas;
|
||||
|
||||
int machine_ui_done = 0;
|
||||
|
||||
static const cmdline_option_t cmdline_options[] = {
|
||||
@@ -40,7 +38,7 @@ int video_arch_cmdline_options_init(void)
|
||||
return cmdline_register_options(cmdline_options);
|
||||
}
|
||||
|
||||
void video_canvas_resize(struct video_canvas_s *canvas, char resizecv)
|
||||
void video_canvas_resize(struct video_canvas_s *canvas, char resize_canvas)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -81,7 +79,7 @@ int video_canvas_set_palette(struct video_canvas_s *canvas,
|
||||
if (pix_bytes == 2)
|
||||
col = RGB565(palette->entries[i].red, palette->entries[i].green, palette->entries[i].blue);
|
||||
else
|
||||
col = palette->entries[i].red<<16 | palette->entries[i].green<<8 | palette->entries[i].blue;
|
||||
col = palette->entries[i].red << 16 | palette->entries[i].green << 8 | palette->entries[i].blue;
|
||||
|
||||
video_render_setphysicalcolor(canvas->videoconfig, i, col, canvas->depth);
|
||||
}
|
||||
@@ -90,7 +88,7 @@ int video_canvas_set_palette(struct video_canvas_s *canvas,
|
||||
if (pix_bytes == 2)
|
||||
video_render_setrawrgb(i, RGB565(i, 0, 0), RGB565(0, i, 0), RGB565(0, 0, i));
|
||||
else
|
||||
video_render_setrawrgb(i, i, i, i);
|
||||
video_render_setrawrgb(i, i << 16, i << 8, i);
|
||||
}
|
||||
video_render_initraw(canvas->videoconfig);
|
||||
|
||||
@@ -105,7 +103,14 @@ void video_canvas_refresh(struct video_canvas_s *canvas,
|
||||
#ifdef RETRO_DEBUG
|
||||
printf("XS:%d YS:%d XI:%d YI:%d W:%d H:%d\n",xs,ys,xi,yi,w,h);
|
||||
#endif
|
||||
retro_canvas = canvas;
|
||||
|
||||
video_canvas_render(
|
||||
canvas, (uint8_t *)&retro_bmp,
|
||||
retrow, retroh,
|
||||
retroXS, retroYS,
|
||||
0, 0, /*xi, yi,*/
|
||||
retrow*pix_bytes, 8*pix_bytes
|
||||
);
|
||||
}
|
||||
|
||||
int video_init()
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
/*
|
||||
* renderscale2x.c - scale2x renderers
|
||||
*
|
||||
* Written by
|
||||
* Andreas Matthies <[email protected]>
|
||||
* Original Scale2x code by
|
||||
* Andrea Mazzoleni <[email protected]>
|
||||
*
|
||||
* This file is part of VICE, the Versatile Commodore Emulator.
|
||||
* See README for copyright notice.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
* 02111-1307 USA.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "vice.h"
|
||||
|
||||
#include "renderscale2x.h"
|
||||
#include "types.h"
|
||||
|
||||
static uint32_t scale2x(const uint32_t *colortab, const uint8_t **srcx1,
|
||||
const uint8_t **srcx2, const uint8_t **srcy1,
|
||||
const uint8_t **srcy2, const uint8_t **srce)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
void render_08_scale2x(const video_render_color_tables_t *color_tab,
|
||||
const uint8_t *src, uint8_t *trg,
|
||||
unsigned int width, const unsigned int height,
|
||||
const unsigned int xs, const unsigned int ys,
|
||||
const unsigned int xt, const unsigned int yt,
|
||||
const unsigned int pitchs, const unsigned int pitcht)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void render_16_scale2x(const video_render_color_tables_t *color_tab,
|
||||
const uint8_t *src, uint8_t *trg,
|
||||
unsigned int width, const unsigned int height,
|
||||
const unsigned int xs, const unsigned int ys,
|
||||
const unsigned int xt, const unsigned int yt,
|
||||
const unsigned int pitchs, const unsigned int pitcht)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void render_24_scale2x(const video_render_color_tables_t *color_tab,
|
||||
const uint8_t *src, uint8_t *trg,
|
||||
unsigned int width, const unsigned int height,
|
||||
const unsigned int xs, const unsigned int ys,
|
||||
const unsigned int xt, const unsigned int yt,
|
||||
const unsigned int pitchs, const unsigned int pitcht)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void render_32_scale2x(const video_render_color_tables_t *color_tab,
|
||||
const uint8_t *src, uint8_t *trg,
|
||||
unsigned int width, const unsigned int height,
|
||||
const unsigned int xs, const unsigned int ys,
|
||||
const unsigned int xt, const unsigned int yt,
|
||||
const unsigned int pitchs, const unsigned int pitcht)
|
||||
{
|
||||
}
|
||||
@@ -16,14 +16,6 @@
|
||||
|
||||
#include "libretro-core.h"
|
||||
|
||||
#if defined(VITA)
|
||||
#include <psp2/kernel/threadmgr.h>
|
||||
#endif
|
||||
|
||||
extern struct video_canvas_s *retro_canvas;
|
||||
|
||||
#include <time.h>
|
||||
|
||||
/*#define TICKSPERSECOND 1000000L*/ /* Microseconds resolution. */
|
||||
#ifdef HAVE_NANOSLEEP
|
||||
#define TICKSPERSECOND 1000000000L /* Nanoseconds resolution. */
|
||||
@@ -58,14 +50,6 @@ void vsyncarch_init(void)
|
||||
|
||||
void vsyncarch_presync(void)
|
||||
{
|
||||
video_canvas_render(
|
||||
retro_canvas, (BYTE *)&retro_bmp,
|
||||
retrow, retroh,
|
||||
retroXS, retroYS,
|
||||
0, 0, /*xi, yi,*/
|
||||
retrow*pix_bytes, 8*pix_bytes
|
||||
);
|
||||
|
||||
if (uistatusbar_state & UISTATUSBAR_ACTIVE) {
|
||||
uistatusbar_draw();
|
||||
}
|
||||
|
||||
+5
-2
@@ -497,7 +497,12 @@ int log_debug(const char *format, ...)
|
||||
int rc;
|
||||
|
||||
va_start(ap, format);
|
||||
#if 1
|
||||
printf(format, ap);
|
||||
printf("\n");
|
||||
#else
|
||||
rc = log_helper(RETRO_LOG_DEBUG, 0, format, ap);
|
||||
#endif
|
||||
va_end(ap);
|
||||
|
||||
return rc;
|
||||
@@ -521,7 +526,6 @@ int log_verbose(const char *format, ...)
|
||||
int log_resources_init(void) {return 0;}
|
||||
void log_resources_shutdown(void) {}
|
||||
int log_cmdline_options_init(void) {return 0;}
|
||||
//int log_init(void) {return 0;}
|
||||
int log_init_with_fd(FILE *f) {return 0;}
|
||||
int log_set_verbose(int n) {verbose=n?1:0;return 0;}
|
||||
int log_verbose_init(int argc, char **argv) {return 0;}
|
||||
@@ -532,7 +536,6 @@ int log_init(void)
|
||||
return (log_cb == NULL) ? -1 : 0;
|
||||
}
|
||||
|
||||
|
||||
void log_enable(int on)
|
||||
{
|
||||
log_enabled = on;
|
||||
|
||||
@@ -1267,7 +1267,7 @@ extern cmdline_option_ram_t *options;
|
||||
static char* disabled_resources[] =
|
||||
{
|
||||
/* Core options */
|
||||
"Mouse", "AutostartPrgMode", "AutostartDelayRandom", "VirtualDevices", "CrtcFilter", "CrtcStretchVertical",
|
||||
"Mouse", "AutostartPrgMode", "AutostartDelayRandom", "VirtualDevices", "CrtcStretchVertical", "VDCStretchVertical",
|
||||
"VICExternalPalette", "VICPaletteFile", "TEDExternalPalette", "TEDPaletteFile",
|
||||
"CrtcExternalPalette", "CrtcPaletteFile", "VICIIExternalPalette", "VICIIPaletteFile",
|
||||
"VICColorGamma", "VICColorSaturation", "VICColorContrast", "VICColorBrightness", "VICColorTint",
|
||||
@@ -1287,8 +1287,8 @@ static char* disabled_resources[] =
|
||||
"SDLStatusbar", "ExitScreenshotName", "ExitScreenshotName1", "RefreshRate", "SoundRecordDeviceName", "SoundRecordDeviceArg",
|
||||
"SoundDeviceName", "Sound", "SoundSampleRate", "SoundBufferSize", "SoundFragmentSize", "SoundDeviceArg",
|
||||
"SoundSuspendTime", "SoundSpeedAdjustment", "SoundVolume", "SoundOutput", "MachineVideoStandard",
|
||||
"VICIIVideoCache", "VICIIDoubleScan", "VICIIHwScale", "VICIIDoubleSize", "VICIIBorderMode",
|
||||
"VICIIPALScanLineShade", "VICIIPALBlur", "VICIIPALOddLinePhase", "VICIIPALOddLineOffset", "VICIIFilter",
|
||||
"VICIIDoubleScan", "VICIIDoubleSize", "VICIIHwScale", "VICIIFilter", "VICIIBorderMode",
|
||||
"VICDoubleSize", "VICFilter", "VICBorderMode", "TEDDoubleSize", "TEDFilter", "TEDBorderMode",
|
||||
"EventSnapshotDir", "EventStartSnapshot", "EventEndSnapshot", "EventStartMode", "EventImageInclude",
|
||||
|
||||
/* Stubbed resources */
|
||||
|
||||
@@ -120,6 +120,7 @@ static void video_render_crt_main(video_render_config_t *config,
|
||||
}
|
||||
}
|
||||
break;
|
||||
#ifndef __LIBRETRO__
|
||||
case VIDEO_RENDER_CRT_1X2:
|
||||
if (delayloop && depth != 8) {
|
||||
switch (depth) {
|
||||
@@ -253,6 +254,7 @@ static void video_render_crt_main(video_render_config_t *config,
|
||||
}
|
||||
}
|
||||
break;
|
||||
#endif /* __LIBRETRO__ */
|
||||
}
|
||||
if (rendermode_error != rendermode) {
|
||||
log_error(LOG_DEFAULT, "video_render_crt_main: unsupported rendermode (%d)", rendermode);
|
||||
|
||||
@@ -134,6 +134,7 @@ static void video_render_pal_main(video_render_config_t *config,
|
||||
}
|
||||
}
|
||||
return;
|
||||
#ifndef __LIBRETRO__
|
||||
case VIDEO_RENDER_PAL_2X2:
|
||||
if (delayloop && depth != 8) {
|
||||
switch (video) {
|
||||
@@ -215,6 +216,7 @@ static void video_render_pal_main(video_render_config_t *config,
|
||||
return;
|
||||
}
|
||||
}
|
||||
#endif /* __LIBRETRO__ */
|
||||
}
|
||||
log_debug("video_render_pal_main unsupported rendermode (%d)\n", rendermode);
|
||||
}
|
||||
|
||||
@@ -99,13 +99,16 @@ typedef struct video_resource_chip_mode_s video_resource_chip_mode_t;
|
||||
|
||||
static int set_double_size_enabled(int value, void *param)
|
||||
{
|
||||
#ifndef __LIBRETRO__
|
||||
cap_render_t *cap_render;
|
||||
video_canvas_t *canvas = (video_canvas_t *)param;
|
||||
int old_scalex, old_scaley;
|
||||
video_chip_cap_t *video_chip_cap = canvas->videoconfig->cap;
|
||||
int val = value ? 1 : 0;
|
||||
|
||||
#ifdef __LIBRETRO__
|
||||
val = 0;
|
||||
#endif
|
||||
|
||||
if (val) {
|
||||
cap_render = &video_chip_cap->double_mode;
|
||||
} else {
|
||||
@@ -149,7 +152,6 @@ static int set_double_size_enabled(int value, void *param)
|
||||
}
|
||||
|
||||
canvas->videoconfig->double_size_enabled = val;
|
||||
#endif /* __LIBRETRO__ */
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -270,11 +272,7 @@ static const char *vname_chip_rendermode[] = { "Filter", NULL };
|
||||
|
||||
static resource_int_t resources_chip_rendermode[] =
|
||||
{
|
||||
#ifdef __LIBRETRO__
|
||||
{ NULL, VIDEO_FILTER_NONE, RES_EVENT_NO, NULL,
|
||||
#else
|
||||
{ NULL, VIDEO_FILTER_CRT, RES_EVENT_NO, NULL,
|
||||
#endif
|
||||
NULL, set_chip_rendermode, NULL },
|
||||
RESOURCE_INT_LIST_END
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user