void goom_set_resolution (guint32 resx, guint32 resy, int cinemascope) { free (pixel); free (back); if (cinemascope) c_black_height = resy / 8; else c_black_height = 0; c_offset = c_black_height * resx; c_resoly = resy - c_black_height * 2; resolx = resx; resoly = resy; buffsize = resx * resy; pixel = (guint32 *) malloc (buffsize * sizeof (guint32) + 128); memset (pixel, 0, buffsize * sizeof (guint32) + 128); back = (guint32 *) malloc (buffsize * sizeof (guint32) + 128); memset (back, 0, buffsize * sizeof (guint32) + 128); p1 = (guint32 *) ((1 + ((uintptr_t) (pixel)) / 128) * 128); p2 = (guint32 *) ((1 + ((uintptr_t) (back)) / 128) * 128); init_ifs (resx, c_resoly); goom_lines_set_res (gmline1, resx, c_resoly); goom_lines_set_res (gmline2, resx, c_resoly); }
void goom_set_resolution (PluginInfo *goomInfo, uint32_t resx, uint32_t resy) { free (goomInfo->pixel); free (goomInfo->back); free (goomInfo->conv); goomInfo->screen.width = resx; goomInfo->screen.height = resy; goomInfo->screen.size = resx * resy; init_buffers(goomInfo, goomInfo->screen.size); /* init_ifs (goomInfo, resx, goomInfo->screen.height); */ goomInfo->ifs_fx.free(&goomInfo->ifs_fx); goomInfo->ifs_fx.init(&goomInfo->ifs_fx, goomInfo); goom_lines_set_res (goomInfo->gmline1, resx, goomInfo->screen.height); goom_lines_set_res (goomInfo->gmline2, resx, goomInfo->screen.height); }