From 257baf1520b02ba5049a53a79503a2b86562908a Mon Sep 17 00:00:00 2001 From: kub Date: Mon, 20 May 2024 10:07:42 +0200 Subject: [PATCH] platform ps2, fixes for gcc14 --- pico/pico_int.h | 1 + platform/common/mp3.c | 2 +- platform/ps2/emu.c | 12 ++++++------ platform/ps2/in_ps2.c | 3 ++- platform/ps2/plat.c | 1 + 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/pico/pico_int.h b/pico/pico_int.h index 2f70b31d..06f00c2f 100644 --- a/pico/pico_int.h +++ b/pico/pico_int.h @@ -969,6 +969,7 @@ void PicoVideoCacheSAT(int load); // misc.c PICO_INTERNAL_ASM void memcpy16bswap(unsigned short *dest, void *src, int count); PICO_INTERNAL_ASM void memset32(void *dest, int c, int count); +PICO_INTERNAL_ASM void memset32_uncached(int *dest, int c, int count); // eeprom.c void EEPROM_write8(unsigned int a, unsigned int d); diff --git a/platform/common/mp3.c b/platform/common/mp3.c index 7c50652e..2f3846f5 100644 --- a/platform/common/mp3.c +++ b/platform/common/mp3.c @@ -131,7 +131,7 @@ void mp3_start_play(void *f_, int pos1024) void mp3_update(s32 *buffer, int length, int stereo) { int length_mp3; - void (*mix_samples)(int *dest_buf, short *mp3_buf, int count, int fac16) = mix_16h_to_32_resample_stereo; + void (*mix_samples)(s32 *dest_buf, short *mp3_buf, int count, int fac16) = mix_16h_to_32_resample_stereo; if (mp3_current_file == NULL || mp3_file_pos >= mp3_file_len) return; /* no file / EOF */ diff --git a/platform/ps2/emu.c b/platform/ps2/emu.c index 35db9744..bd06d162 100644 --- a/platform/ps2/emu.c +++ b/platform/ps2/emu.c @@ -64,7 +64,7 @@ static GSTEXTURE *g_screens[2]; static int g_screen_index; static GSTEXTURE *g_screen; static GSPRIMUVPOINT *g_screen_vertices; -static u16 *g_screen_palette; +static void *g_screen_palette; static GSTEXTURE *osd; static uint32_t osd_vertices_count; @@ -386,7 +386,7 @@ void set_g_screen_values() { g_screen_vertices = (GSPRIMUVPOINT *)calloc(2, sizeof(GSPRIMUVPOINT)); for (i = 0; i < 2; i++) { g_screens[i] = (GSTEXTURE *)calloc(1, sizeof(GSTEXTURE)); - g_screens[i]->Mem = (uint32_t *)malloc(g_screenSize); + g_screens[i]->Mem = malloc(g_screenSize); g_screens[i]->Width = 328; g_screens[i]->Height = 256; @@ -414,7 +414,7 @@ void set_cdleds_values() { size_t cdledsSize = gsKit_texture_size_ee(14, 5, GS_PSM_CT16); cdleds = (GSTEXTURE *)calloc(1, sizeof(GSTEXTURE)); - cdleds->Mem = (uint32_t *)malloc(cdledsSize); + cdleds->Mem = malloc(cdledsSize); cdleds_vertices = (GSPRIMUVPOINT *)calloc(2, sizeof(GSPRIMUVPOINT)); cdleds->Width = 14; @@ -435,7 +435,7 @@ void set_osd_values() { int num_osds = 4, i; osd = (GSTEXTURE *)calloc(1, sizeof(GSTEXTURE)); - osd->Mem = (uint32_t *)malloc(osdSize); + osd->Mem = malloc(osdSize); osd_vertices_count = 2*num_osds; osd_vertices = (GSPRIMUVPOINT *)calloc(osd_vertices_count, sizeof(GSPRIMUVPOINT)); @@ -488,7 +488,7 @@ static void video_init(void) set_osd_values(); set_cdleds_values(); - g_menubg_ptr = (uint8_t *)malloc(2 * g_menuscreen_pp * g_menuscreen_h); + g_menubg_ptr = malloc(2 * g_menuscreen_pp * g_menuscreen_h); g_menubg_src_w = g_screen->Width; g_menubg_src_h = g_screen->Height; g_menubg_src_pp = g_screen->Width; @@ -654,7 +654,7 @@ static void osd_text(int x, const char *text) int old_pitch = g_screen_ppitch; int len = strlen(text) * 8; - u16 *osd_buf = osd->Mem; + u16 *osd_buf = (u16 *)osd->Mem; int *p, h; g_screen_ptr = osd_buf; diff --git a/platform/ps2/in_ps2.c b/platform/ps2/in_ps2.c index d58d514c..0b033f37 100644 --- a/platform/ps2/in_ps2.c +++ b/platform/ps2/in_ps2.c @@ -5,6 +5,7 @@ #include #include #include +#include #include "libpad.h" #include "libmtap.h" @@ -21,7 +22,7 @@ static int in_ps2_combo_keys = 0; static int in_ps2_combo_acts = 0; -static uintptr_t padBuf[2][4]; +static void *padBuf[2][4]; static uint32_t padConnected[2][4]; // 2 ports, 4 slots static uint32_t padOpen[2][4]; static uint32_t maxslot[2]; diff --git a/platform/ps2/plat.c b/platform/ps2/plat.c index 253e1878..40813792 100644 --- a/platform/ps2/plat.c +++ b/platform/ps2/plat.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include -- 2.39.5