Allow changing resolution

This commit is contained in:
Fierelier 2024-10-16 02:57:43 +02:00
parent 851eb61cb2
commit 7ecf26ca7c

View File

@ -25,6 +25,11 @@ unigi_type_error unigi_window_create(unigi_type_resolution resolution, char * ti
#ifndef _EE // if not PS2 #ifndef _EE // if not PS2
SDL_SetHint(SDL_HINT_FRAMEBUFFER_ACCELERATION,"0"); SDL_SetHint(SDL_HINT_FRAMEBUFFER_ACCELERATION,"0");
#endif #endif
if (unigi_platform_window != NULL) {
SDL_DestroyWindow(unigi_platform_window);
}
unigi_platform_window = SDL_CreateWindow(title,SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,resolution.width,resolution.height,0); unigi_platform_window = SDL_CreateWindow(title,SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,resolution.width,resolution.height,0);
if (unigi_platform_window == NULL) { if (unigi_platform_window == NULL) {
printf("[unigi] Could not initialize window: SDL -> %s\n",SDL_GetError()); printf("[unigi] Could not initialize window: SDL -> %s\n",SDL_GetError());
@ -40,6 +45,9 @@ unigi_type_error unigi_window_create(unigi_type_resolution resolution, char * ti
uint32_t color; uint32_t color;
uint32_t color_platform; uint32_t color_platform;
uint8_t * color_platform8 = (uint8_t *)&color_platform; uint8_t * color_platform8 = (uint8_t *)&color_platform;
if (unigi_platform_palette1 != NULL) {
free(unigi_platform_palette1);
}
#ifndef unigi_flag_bigcolor #ifndef unigi_flag_bigcolor
unigi_platform_palette1 = malloc(4096 * unigi_platform_info_depth_bytes); unigi_platform_palette1 = malloc(4096 * unigi_platform_info_depth_bytes);
#else #else
@ -86,6 +94,8 @@ unigi_type_error unigi_window_create(unigi_type_resolution resolution, char * ti
} }
unigi_type_error unigi_graphics_init() { unigi_type_error unigi_graphics_init() {
unigi_platform_palette1 = NULL;
unigi_platform_window = NULL;
return 0; return 0;
} }