Пример #1
0
static int init_raster(void)
{
    raster_t *raster;

    raster = &vdc.raster;

    raster->sprite_status = NULL;
    raster_line_changes_init(raster);

    if (raster_init(raster, VDC_NUM_VMODES) < 0)
        return -1;

    raster_modes_set_idle_mode(raster->modes, VDC_IDLE_MODE);
    resources_touch("VDCVideoCache");

    vdc_set_geometry();

    video_color_palette_internal(vdc.raster.canvas, &vdc_palette);
    if (video_color_update_palette(vdc.raster.canvas) < 0) {
        log_error(vdc.log, "Cannot load palette.");
        return -1;
    }

    raster_set_title(raster, machine_name);

    if (raster_realize(raster) < 0)
        return -1;

    raster->border_color = 0;

    return 0;
}
Пример #2
0
int ted_color_update_palette(struct video_canvas_s *canvas)
{
    int col,lum,cl;
    float tedlum;
    video_cbm_color_t *vc;

    cl = 0;
    for (lum = 0; lum < 8; lum++) {
        tedlum = ted_luminances[lum] * 0.867f;
        for (col = 0; col < 16; col++) {
            vc = &ted_colors_with_lum[cl];
            if (col)
                vc->luminance = tedlum;
            else
                vc->luminance = 0.0f;
            vc->angle = ted_colors[col].angle;
            vc->direction = ted_colors[col].direction;
            vc->name = ted_colors[col].name;
            cl++;
        }
    }

    video_color_palette_internal(canvas, &ted_palette);
    return video_color_update_palette(canvas);
}
Пример #3
0
static int set_palette_file_name(const char *val, void *param)
{
    video_canvas_t *canvas = (video_canvas_t *)param;

    util_string_set(&(canvas->videoconfig->external_palette_name), val);

    return video_color_update_palette(canvas);
}
Пример #4
0
static int set_color_tint(int val, void *param)
{
    if (val < 0)
        val=0;
    if (val > 2000)
        val=2000;
    video_resources.color_tint = val;
    return video_color_update_palette(video_current_canvas);
}
Пример #5
0
static int set_pal_blur(int val, void *param)
{
    if (val < 0)
        val = 0;
    if (val > 1000)
        val = 1000;
    video_resources.pal_blur = val;
    return video_color_update_palette(video_current_canvas);
}
Пример #6
0
static int set_pal_oddlinesphase(int val, void *param)
{
    if (val < 0)
        val = 0;
    if (val > 2000)
        val = 2000;
    video_resources.pal_oddlines_phase = val;
    return video_color_update_palette(video_current_canvas);
}
Пример #7
0
static int set_ext_palette(int val, void *param)
{
    video_canvas_t *canvas;

    canvas = (video_canvas_t *)param;

    canvas->videoconfig->external_palette = (unsigned int)val;

    return video_color_update_palette(canvas);
}
Пример #8
0
static int set_pal_blur(int val, void *param)
{
    video_canvas_t *canvas = (video_canvas_t *)param;
    if (val < 0) {
        val = 0;
    }
    if (val > 1000) {
        val = 1000;
    }
    canvas->videoconfig->video_resources.pal_blur = val;
    return video_color_update_palette(canvas);
}
Пример #9
0
static int set_pal_oddlinesoffset(int val, void *param)
{
    video_canvas_t *canvas = (video_canvas_t *)param;
    if (val < 0) {
        val = 0;
    }
    if (val > 2000) {
        val = 2000;
    }
    canvas->videoconfig->video_resources.pal_oddlines_offset = val;
    return video_color_update_palette(canvas);
}
Пример #10
0
static int set_color_gamma(int val, void *param)
{
    video_canvas_t *canvas = (video_canvas_t *)param;
    if (val < 0) {
        val = 0;
    }
    if (val > 4000) {
        val = 4000;
    }
    canvas->videoconfig->video_resources.color_gamma = val;
    return video_color_update_palette(canvas);
}
Пример #11
0
static int set_chip_rendermode(int val, void *param)
{
    char *chip, *dsize;
    int old, err;
    video_canvas_t *canvas = (video_canvas_t *)param;

    old = canvas->videoconfig->filter;
    chip = canvas->videoconfig->chip_name;

    DBG(("set_chip_rendermode %s (%d->%d)", chip, old, val));

    dsize = util_concat(chip, "DoubleSize", NULL);

    canvas->videoconfig->filter = val;
    canvas->videoconfig->scale2x = 0; /* FIXME: remove this */
    err = 0;
    switch (val) {
        case VIDEO_FILTER_NONE:
            break;
        case VIDEO_FILTER_CRT:
            if (video_color_update_palette(canvas) < 0) {
                err = 1;
            }
            break;
        case VIDEO_FILTER_SCALE2X:
            /* set double size */
            if (resources_set_int(dsize, 1) < 0) {
                err = 1;
            }
            canvas->videoconfig->scale2x = 1; /* FIXME: remove this */
            break;
    }

    if (err) {
        canvas->videoconfig->filter = old;
    }

    lib_free(dsize);

    if (canvas->initialized) {
        video_canvas_refresh_all(canvas);
    }

    video_resources_update_ui(canvas);

    return 0;
}
Пример #12
0
static int set_delayloop_emulation(int val, void *param)
{
    int old = video_resources.delayloop_emulation;
    video_resources.delayloop_emulation = val;

    if (video_color_update_palette(video_current_canvas) < 0) {
        video_resources.delayloop_emulation = old;
        ui_update_pal_ctrls(video_resources.delayloop_emulation);
        return -1;
    }
    ui_update_pal_ctrls(video_resources.delayloop_emulation);

#ifdef WIN32
    video_resources_check_win32_newpal();
#endif

    return 0;
}
Пример #13
0
static int set_hwscale_enabled(int val, void *param)
{
    video_canvas_t *canvas = (video_canvas_t *)param;

    if (val
        && !canvas->videoconfig->hwscale
        && !hwscale_possible) {
        log_message(LOG_DEFAULT, "HW scale not available, forcing to disabled");
        return 0;
    }

    canvas->videoconfig->hwscale = val;

    if (canvas->initialized) {
        video_viewport_resize(canvas, 1);
        video_color_update_palette(canvas);
    }

    video_resources_update_ui(canvas);

    return 0;
}
Пример #14
0
static int set_hwscale_enabled(int val, void *param)
{
    video_canvas_t *canvas = (video_canvas_t *)param;

    if (val && !canvas->videoconfig->hwscale && !hwscale_possible)
    {
    	#ifdef CELL_DEBUG
        printf("INFO - HW scale not available, forcing to disabled\n");
	#endif
        return 0;
    }

    canvas->videoconfig->hwscale = val;

    if (canvas->initialized) {
        video_viewport_resize(canvas);
        video_color_update_palette(canvas);
    }

    video_resources_update_ui(canvas);

    return 0;
}
Пример #15
0
/* FIXME: this one seems weird */
static int video_resources_update_ui(video_canvas_t *canvas)
{
    return video_color_update_palette(canvas);
}
Пример #16
0
void video_render_update_palette(struct video_canvas_s *canvas)
{
    video_color_update_palette(canvas);
}