mirror of
https://github.com/love2d/megasource.git
synced 2026-08-17 11:11:35 +02:00
update SDL3 to 3.1.6.
This commit is contained in:
@@ -493,36 +493,7 @@ if(PSP)
|
||||
ICON_PATH NULL
|
||||
BACKGROUND_PATH NULL
|
||||
PREVIEW_PATH NULL
|
||||
)
|
||||
add_custom_command(
|
||||
TARGET ${APP} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/sdl-${APP}
|
||||
)
|
||||
add_custom_command(
|
||||
TARGET ${APP} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E rename
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/EBOOT.PBP
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/sdl-${APP}/EBOOT.PBP
|
||||
)
|
||||
if(BUILD_PRX)
|
||||
add_custom_command(
|
||||
TARGET ${APP} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/${APP}
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/sdl-${APP}/${APP}
|
||||
)
|
||||
add_custom_command(
|
||||
TARGET ${APP} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E rename
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/${APP}.prx
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/sdl-${APP}/${APP}.prx
|
||||
)
|
||||
endif()
|
||||
add_custom_command(
|
||||
TARGET ${APP} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E remove
|
||||
$<TARGET_FILE_DIR:${ARG_TARGET}>/PARAM.SFO
|
||||
OUTPUT_DIR $<TARGET_FILE_DIR:${APP}>/sdl-${APP}
|
||||
)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
@@ -2263,8 +2263,8 @@ static void RemoveMappingValueAt(MappingParts *parts, int index)
|
||||
SDL_free(parts->values[index]);
|
||||
--parts->num_elements;
|
||||
if (index < parts->num_elements) {
|
||||
SDL_memcpy(&parts->keys[index], &parts->keys[index] + 1, (parts->num_elements - index) * sizeof(parts->keys[index]));
|
||||
SDL_memcpy(&parts->values[index], &parts->values[index] + 1, (parts->num_elements - index) * sizeof(parts->values[index]));
|
||||
SDL_memmove(&parts->keys[index], &parts->keys[index] + 1, (parts->num_elements - index) * sizeof(parts->keys[index]));
|
||||
SDL_memmove(&parts->values[index], &parts->values[index] + 1, (parts->num_elements - index) * sizeof(parts->values[index]));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -101,7 +101,6 @@ struct SwsContextContainer
|
||||
struct SwsContext *context;
|
||||
};
|
||||
static const char *SWS_CONTEXT_CONTAINER_PROPERTY = "SWS_CONTEXT_CONTAINER";
|
||||
static int done;
|
||||
static bool verbose;
|
||||
|
||||
static bool CreateWindowAndRenderer(SDL_WindowFlags window_flags, const char *driver)
|
||||
@@ -1111,9 +1110,8 @@ static void HandleVideoFrame(AVFrame *frame, double pts)
|
||||
video_start = SDL_GetTicks();
|
||||
}
|
||||
double now = (double)(SDL_GetTicks() - video_start) / 1000.0;
|
||||
while (now < pts - 0.001) {
|
||||
SDL_Delay(1);
|
||||
now = (double)(SDL_GetTicks() - video_start) / 1000.0;
|
||||
if (now < pts) {
|
||||
SDL_DelayPrecise((Uint64)((pts - now) * SDL_NS_PER_SECOND));
|
||||
}
|
||||
|
||||
if (BeginFrameRendering(frame) < 0) {
|
||||
@@ -1173,7 +1171,7 @@ static AVCodecContext *OpenAudioStream(AVFormatContext *ic, int stream, const AV
|
||||
return context;
|
||||
}
|
||||
|
||||
static SDL_AudioFormat GetAudioFormat(enum AVSampleFormat format)
|
||||
static SDL_AudioFormat GetAudioFormat(int format)
|
||||
{
|
||||
switch (format) {
|
||||
case AV_SAMPLE_FMT_U8:
|
||||
@@ -1190,11 +1188,11 @@ static SDL_AudioFormat GetAudioFormat(enum AVSampleFormat format)
|
||||
return SDL_AUDIO_F32;
|
||||
default:
|
||||
/* Unsupported */
|
||||
return 0;
|
||||
return SDL_AUDIO_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
static bool IsPlanarAudioFormat(enum AVSampleFormat format)
|
||||
static bool IsPlanarAudioFormat(int format)
|
||||
{
|
||||
switch (format) {
|
||||
case AV_SAMPLE_FMT_U8P:
|
||||
@@ -1313,6 +1311,7 @@ int main(int argc, char *argv[])
|
||||
SDL_WindowFlags window_flags;
|
||||
bool flushing = false;
|
||||
bool decoded = false;
|
||||
bool done = false;
|
||||
SDLTest_CommonState *state;
|
||||
|
||||
/* Initialize test framework */
|
||||
@@ -1497,8 +1496,6 @@ int main(int argc, char *argv[])
|
||||
SDL_ShowWindow(window);
|
||||
|
||||
/* Main render loop */
|
||||
done = 0;
|
||||
|
||||
while (!done) {
|
||||
SDL_Event event;
|
||||
|
||||
@@ -1506,7 +1503,7 @@ int main(int argc, char *argv[])
|
||||
while (SDL_PollEvent(&event)) {
|
||||
if (event.type == SDL_EVENT_QUIT ||
|
||||
(event.type == SDL_EVENT_KEY_DOWN && event.key.key == SDLK_ESCAPE)) {
|
||||
done = 1;
|
||||
done = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1572,7 +1569,7 @@ int main(int argc, char *argv[])
|
||||
/* Wait a little bit for the audio to finish */
|
||||
SDL_Delay(10);
|
||||
} else {
|
||||
done = 1;
|
||||
done = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
#define MAX_SPEED 1
|
||||
|
||||
static SDLTest_CommonState *state;
|
||||
static const char *icon = "icon.bmp";
|
||||
static int num_sprites;
|
||||
static SDL_Texture **sprites;
|
||||
static bool cycle_color;
|
||||
@@ -56,6 +57,9 @@ static int LoadSprite(const char *file)
|
||||
|
||||
for (i = 0; i < state->num_windows; ++i) {
|
||||
/* This does the SDL_LoadBMP step repeatedly, but that's OK for test code. */
|
||||
if (sprites[i]) {
|
||||
SDL_DestroyTexture(sprites[i]);
|
||||
}
|
||||
sprites[i] = LoadTexture(state->renderers[i], file, true, &w, &h);
|
||||
sprite_w = (float)w;
|
||||
sprite_h = (float)h;
|
||||
@@ -390,7 +394,6 @@ SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[])
|
||||
SDL_Rect safe_area;
|
||||
int i;
|
||||
Uint64 seed;
|
||||
const char *icon = "icon.bmp";
|
||||
|
||||
/* Initialize parameters */
|
||||
num_sprites = NUM_SPRITES;
|
||||
@@ -553,6 +556,9 @@ SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[])
|
||||
|
||||
SDL_AppResult SDL_AppEvent(void *appstate, SDL_Event *event)
|
||||
{
|
||||
if (event->type == SDL_EVENT_RENDER_DEVICE_RESET) {
|
||||
LoadSprite(icon);
|
||||
}
|
||||
return SDLTest_CommonEventMainCallbacks(state, event);
|
||||
}
|
||||
|
||||
|
||||
@@ -93,7 +93,8 @@ static void loop(void)
|
||||
|
||||
/* Check for events */
|
||||
while (SDL_PollEvent(&event)) {
|
||||
if (event.type == SDL_EVENT_QUIT || event.type == SDL_EVENT_KEY_DOWN) {
|
||||
if (event.type == SDL_EVENT_QUIT ||
|
||||
(event.type == SDL_EVENT_KEY_DOWN && event.key.key == SDLK_ESCAPE)) {
|
||||
done = 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,65 +27,111 @@ static int active_channel;
|
||||
#define LFE_SINE_FREQ_HZ 50
|
||||
|
||||
/* The channel layout is defined in SDL_audio.h */
|
||||
static const char *
|
||||
get_channel_name(int channel_index, int channel_count)
|
||||
static const char *get_channel_name(int channel_index, int channel_count)
|
||||
{
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
switch (channel_count) {
|
||||
case 1:
|
||||
return "Front Right";
|
||||
return "Mono";
|
||||
case 2:
|
||||
switch (channel_count) {
|
||||
case 3:
|
||||
case 5:
|
||||
return "Low Frequency Effects";
|
||||
case 4:
|
||||
return "Back Left";
|
||||
default:
|
||||
return "Front Center";
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
switch (channel_count) {
|
||||
case 4:
|
||||
return "Back Right";
|
||||
case 5:
|
||||
return "Back Left";
|
||||
default:
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
case 2:
|
||||
return "Low Frequency Effects";
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
switch (channel_count) {
|
||||
case 5:
|
||||
return "Back Right";
|
||||
case 6:
|
||||
return "Side Left";
|
||||
case 7:
|
||||
return "Back Center";
|
||||
case 8:
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
case 2:
|
||||
return "Back Left";
|
||||
case 3:
|
||||
return "Back Right";
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
switch (channel_count) {
|
||||
case 6:
|
||||
return "Side Right";
|
||||
case 7:
|
||||
return "Side Left";
|
||||
case 8:
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
case 2:
|
||||
return "Low Frequency Effects";
|
||||
case 3:
|
||||
return "Back Left";
|
||||
case 4:
|
||||
return "Back Right";
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
switch (channel_count) {
|
||||
case 7:
|
||||
return "Side Right";
|
||||
case 8:
|
||||
return "Side Left";
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
case 2:
|
||||
return "Front Center";
|
||||
case 3:
|
||||
return "Low Frequency Effects";
|
||||
case 4:
|
||||
return "Back Left";
|
||||
case 5:
|
||||
return "Back Right";
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
return "Side Right";
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
case 2:
|
||||
return "Front Center";
|
||||
case 3:
|
||||
return "Low Frequency Effects";
|
||||
case 4:
|
||||
return "Back Center";
|
||||
case 5:
|
||||
return "Side Left";
|
||||
case 6:
|
||||
return "Side Right";
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
switch (channel_index) {
|
||||
case 0:
|
||||
return "Front Left";
|
||||
case 1:
|
||||
return "Front Right";
|
||||
case 2:
|
||||
return "Front Center";
|
||||
case 3:
|
||||
return "Low Frequency Effects";
|
||||
case 4:
|
||||
return "Back Left";
|
||||
case 5:
|
||||
return "Back Right";
|
||||
case 6:
|
||||
return "Side Left";
|
||||
case 7:
|
||||
return "Side Right";
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
SDLTest_AssertCheck(false, "Invalid channel_index for channel_count: channel_count=%d channel_index=%d", channel_count, channel_index);
|
||||
SDL_assert(0);
|
||||
|
||||
Reference in New Issue
Block a user