Simple DirectMedia Layer https://libsdl.org
Find a file
nmlgc ff667d35f2 SDL_mslibc: Implement _ftoul2_legacy()
cl.exe versions ≥v19.41 call this builtin for double → uint64_t
conversions on x86. SDL currently needs such conversions in:

* MainCallbackRateHintChanged()
* SDL_PrintFloat()
* WIN_ApplyWindowProgress()

This seems enough to justify implementing this function rather than
trying to work around it, as it was done in sdl12-compat:

	https://github.com/libsdl-org/sdl12-compat/issues/352

This implementation was taken from ReactOS:

	https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f637e6b809adb5e0ae420ef4f80c73b19172a2e7

Passes the stdlib testautomation, and also matches the behavior of
Microsoft's 64-bit libc for the currently implementation-defined case
of calling SDL_PrintFloat() with values >SDL_MAX_UINT64.

(cherry picked from commit f39e49a3dd)
2025-10-03 07:22:59 -07:00
.github ci: disable ccache on macOS 13 job 2025-09-17 22:06:16 +02:00
android-project replace script with flags 2025-10-02 16:01:17 -07:00
build-scripts Add elf alignment check for Android artifacts (#13818) 2025-08-28 16:31:25 -07:00
cmake cmake: make SDL_CPU_xxx variable visible when using CMAKE_OSX_ARCHITECTURES 2025-09-02 23:00:10 +03:00
docs README-macos.md: replace old API calls 2025-07-11 12:08:58 -07:00
examples examples: Use SDL_GetAudioStreamQueued, not SDL_GetAudioStreamAvailable. 2025-02-27 11:46:56 -05:00
include Updated to version 3.2.25 for development 2025-10-02 11:36:07 -07:00
src SDL_mslibc: Implement _ftoul2_legacy() 2025-10-03 07:22:59 -07:00
test Fixed testprocess on 32-bit Windows 2025-09-14 15:40:06 -07:00
VisualC Cocoa metal layers need their size updated before renderer updates 2025-02-24 15:37:13 -08:00
VisualC-GDK GDK: Handle ProjectDir with space 2025-04-25 15:01:07 -07:00
wayland-protocols wayland: Add color manager protocol support 2025-02-17 11:31:12 -05:00
Xcode Updated to version 3.2.25 for development 2025-10-02 11:36:07 -07:00
.clang-format Add 'wl_list_for_each_safe' to the clang-format macro list 2024-03-14 10:22:23 -04:00
.clang-tidy Fix size of memcpy in SDL_AudioDeviceFormatChangedAlreadyLocked 2023-08-05 14:14:45 -04:00
.editorconfig .editorconfig: Remove excess apostrophe at *.cocci 2024-06-16 09:18:17 -07:00
.gitignore Allow in-tree build 2024-10-30 00:04:17 +01:00
.wikiheaders-options .wikiheaders-options: Removed wikipreamble setting. 2025-01-24 01:53:51 -05:00
Android.mk Revert "Support Google Play 16 KB Page Size Requirement (#13470)" 2025-08-07 11:41:43 -07:00
BUGS.txt Added a Discord link to BUGS.txt 2025-01-13 16:42:50 -08:00
CMakeLists.txt build: Fix typo in SDL_uclibc target name for 32-bit Windows 2025-10-03 07:22:59 -07:00
CREDITS.md Updated the credits for SDL 3.0 2025-01-13 16:42:50 -08:00
INSTALL.md Add a link to docs/INTRO-mingw.md 2025-03-06 16:26:15 -08:00
LICENSE.txt Updated copyright for 2025 2025-01-01 07:45:52 -08:00
README.md Updating documentation for the 3.2.0 release 2025-01-15 20:38:16 -08:00
WhatsNew.txt Added SDL_HINT_VIDEO_X11_EXTERNAL_WINDOW_INPUT 2025-03-05 09:13:10 -08:00

Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multi-media software, such as games and emulators.

You can find the latest release and additional information at: https://www.libsdl.org/

Installation instructions and a quick introduction is available in INSTALL.md

This library is distributed under the terms of the zlib license, available in LICENSE.txt.

Enjoy!

Sam Lantinga (slouken@libsdl.org)