void gfx_set_picasso_state (int on) { printf("gfx_set_picasso_state %d\n", on); if (on == screen_is_picasso) return; viewport_shutdown(); screen_is_picasso = on; if (on) { bm_format = pixel_p96_to_glgfx(picasso_vidinfo.rgbformat); bm_width = picasso_vidinfo.width; bm_height = picasso_vidinfo.height; viewport_setup(); } else { bm_format = glgfx_pixel_format_a4r4g4b4; bm_format = glgfx_pixel_format_a8b8g8r8; bm_width = gfxvidinfo.width; bm_height = gfxvidinfo.height; viewport_setup(); reset_drawing(); } if (on) { DX_SetPalette(0, 256); } }
void DX_SetPalette_vsync(void) { /* printf("DX_SetPalette_vsync\n"); */ if (palette_update_end>palette_update_start) { DX_SetPalette(palette_update_start, palette_update_end-palette_update_start); palette_update_end=0; palette_update_start=256; } }
static void set_window_for_picasso (void) { enter_graphics_mode_picasso (picasso_vgamode); if (linear_mem != NULL) picasso_vidinfo.extra_mem = 1; else picasso_vidinfo.extra_mem = 0; printf ("em: %d\n", picasso_vidinfo.extra_mem); DX_SetPalette (0, 256); }