Ethan Lee
79395fa47d
ci: Update to VS2026.
...
GitHub Actions doesn't provide 2022 by default anymore :(
2026-08-08 10:53:25 -04:00
Ethan Lee
9adb0552ff
Network: Update to latest Steamworks SDK ABI.
...
This is mostly to support AArch64.
2026-07-15 10:13:26 -04:00
Ethan Lee
ed795ea457
CMake: Rework Linux RPATH generation.
...
This is mostly to fix the AArch64 rpath. i686 will be different after this
change, but I haven't been shipping that architecture for a while now...
Also, took out BIN_LIBROOT which wasn't doing anything, woops!
2026-07-15 10:08:07 -04:00
Ethan Lee
1099a9ee8e
Update to FAudio 26.05
2026-05-05 16:51:32 -04:00
Ethan Lee
ea811e15bd
2.4.4
2026-04-21 12:02:06 -04:00
Ethan Lee
f22ae5fbf5
CMake: Use rpath, not runpath
2025-07-05 18:07:45 -04:00
Ethan Lee
529ff46eb2
2.4.3
2025-06-19 12:17:27 -04:00
Ethan Lee
aa9fa04d86
CI: Update from CentOS 7 to Steam Linux Runtime 3.0
2025-06-08 22:51:59 -04:00
Ethan Lee
5523d5597d
CI: Replace -o with -OutFile, works around Invoke-WebRequest regression
2024-01-31 18:19:22 -05:00
Ethan Lee
afbcb3f867
Add support for GameCube glyphs.
...
It's kind of a bummer that L/R don't actually do anything... we should add ZL/ZR support at some point.
Also note that GameCube binds X to 'back' rather than B, this will be fixed by SDL_ActionSet for 2.5.
2024-01-18 00:10:20 -05:00
Ethan Lee
b619f38086
Fix Switch button glyphs being double swapped
2024-01-10 09:02:09 -05:00
Ethan Lee
07d4bdbc14
Update PhysicsFS to 3.2.0
2024-01-10 08:55:59 -05:00
Ethan Lee
148b518745
Steam now shares device info with SDL!
2023-12-20 23:17:28 -05:00
Ethan Lee
2d1009e815
Add "type:" override check for virtual Sony gamepads.
...
Fixes #1056
2023-12-01 12:08:26 -05:00
Ethan Lee
8426e0930d
VS2010 buildfixes.
...
The main issue was mostly that we have to build C files as C++ in some
cases, and extern "C" wasn't being used everywhere, so linker errors
popped up. The rest is the usual tedious VS2010 stuff like casting void*
to other stuff, so this commit as a whole is pretty boring!
2023-11-27 12:09:42 -05:00
Ethan Lee
c881f621a3
Handle WiiU/Switch GameCube adapter product ID
2023-09-06 09:56:49 -04:00
Ethan Lee
68b6bd07ba
Add 8BitDo wireless Xbox product ID to detector
2023-08-28 11:25:17 -04:00
Ethan Lee
c44e8d056a
Fix glyphs for 8BitDo Ultimate Wired Controller for Xbox
2023-08-24 09:58:22 -04:00
Ethan Lee
7b40a052ed
Controller layout detection
2023-08-22 15:34:03 -04:00
Ethan Lee
f88ed0dc1b
Remove SDL2_mixer dependencies from Dockerfile
2022-03-29 02:27:58 -04:00
Ethan Lee
8980b2e546
Remove SDL2_mixer line from fixupMac.sh
2022-03-29 02:27:15 -04:00
Ethan Lee
b3f645d84c
README: Minor adjustments to dependencies text
2022-03-24 19:28:03 -04:00
Ethan Lee
84f9bb6dd6
Point to SDL_LoadWAV for SoundTrack FAudio suggestion
2022-01-15 01:02:24 -05:00
Ethan Lee
3b18a475dd
Move MusicTrack below SoundTrack.
...
It's very likely that MusicTrack will be pulling from the SoundTrack FAudio
context, so make it so forward declarations are unnecessary.
2022-01-14 17:24:22 -05:00
Ethan Lee
adcabb9483
Add notes for FAudio implementation
2022-01-14 17:11:16 -05:00
Ethan Lee
5202b80a3d
Remove unused m_isValid value from MusicTrack
2022-01-14 16:56:00 -05:00
Ethan Lee
d36741fa07
Move the Mix_OpenAudio call to SoundTrack, from MusicTrack.
...
In hindsight, the FAudio pointer will likely be in SoundTrack since we will
want to keep the mastering voice closer to the sounds and their source voice
arrays, while the MusicTrack will likely just be one source voice that gets
PCM from different streams.
2022-01-14 16:52:52 -05:00
Ethan Lee
df618e6d22
Isolate all SDL_mixer references to SoundTrack/MusicTrack.
...
This looks redundant but will actually help in the transition to FAudio; we
mostly want to keep the game logic the same while reimplementing the current
mixer, weirdness and all. Once that's done and confirmed to be stable and
consistent we can start cutting out the workarounds and quirks.
2022-01-14 16:46:04 -05:00
Ethan Lee
81aa02e29b
SDL_mixer is now entirely contained in Music.cpp.
...
This meant making the track vectors static, but that's kind of what we do with musicclass anyway?
In any case, this will make the transition to FAudio MUCH less invasive.
2021-12-26 08:57:38 -05:00
Ethan Lee
1eda3647ff
Move the mute logic to musicclass.
...
This moves the last of the SDL_mixer calls to Music.cpp.
2021-12-26 08:48:23 -05:00
Ethan Lee
579f0f763a
Update docs for MusicTrack/SoundTrack
2021-12-26 08:41:57 -05:00
Ethan Lee
230859f8f9
Inline SoundSystem into musicclass constructor
2021-12-26 08:41:01 -05:00
Ethan Lee
c87f0e1a0c
Consolidate SoundSystem into Music.
...
It's just some small wrappers, and SoundSystem can be inlined trivially.
2021-12-26 08:38:19 -05:00
Ethan Lee
f723e03871
Remove unused MusicTrack constructor.
...
This wouldn't work anyway since music would need to be loaded via physfs.
2021-12-26 08:31:40 -05:00
Ethan Lee
aba3a8ee9d
Updated .ico
2021-09-03 15:57:16 -04:00
Ethan Lee
ac0644a70a
Added my quick script to fixup Mac dylib paths
2021-09-01 12:07:57 -04:00
Ethan Lee
342dfcb48d
Minor VS buildfix
2021-08-31 19:07:24 -04:00
Ethan Lee
8ebf8a21e4
Default to VSync being enabled
2021-08-31 15:08:46 -04:00
Ethan Lee
fe1c8d3336
Embedded .ico
2021-08-28 11:21:49 -04:00
Ethan Lee
12e8924efc
Similar to unmountAssets, avoid printing a message when custom assets don't exist
2021-08-18 16:26:13 -04:00
Ethan Lee
d50367ac62
When custom assets aren't mounted, unmount should be quiet
2021-08-18 11:02:45 -04:00
Ethan Lee
ea74b93f38
Fix loading levels that are... uh, just levels.
2021-08-18 11:00:26 -04:00
Ethan Lee
4154066c26
Reduce memory footprint in FILESYSTEM_mountAssets
2021-08-18 10:59:50 -04:00
Ethan Lee
43e8d31aa9
Music: Enforce the quick fade time as soon as we know it's happening.
...
Not every music path will trip the quick_fade bool that resets the timer to
500ms, so we need to do this as soon as it's asked of us. This fixes the fade
when quitting to the main menu.
Fixes #764
2021-06-14 15:11:39 -04:00
Ethan Lee
8520533296
Music: Reset step_ms on every fade call.
...
Without this you end up with two problems:
- Fades will start past their fade time, causing it to just not fade at all
- Fades will start in the middle of their fade time, causing dramatic changes
in volume that are unintentional
The fade system already preserves the volume that music is playing during a
previous fade, so we can always reset the timer and get a good result.
Part of #764
2021-06-14 15:09:23 -04:00
Ethan Lee
73c1c9a798
Revert "Change final stretch song to Piercing the Sky"
...
Upon further discussion it was decided to keep the soundtrack as originally
shipped, instead of changing it after the fact.
This reverts commit cf51379097 .
2021-05-20 23:01:43 -04:00
Ethan Lee
aa5c2d9dc2
Move first CreateDirectory to getOSDirectory, avoids redundancy on non-Win32
2021-04-11 11:55:35 -04:00
Ethan Lee
2e630ce06c
Forgot a 0...
2021-04-11 11:44:56 -04:00
Ethan Lee
2f0a0bce4c
Revert to my old userdata folder creation code.
...
PhysFS requires a write dir to create a directory, so the first PHYSFS_mkdir
never could have worked. Because of that we need to go back to the old mkdir,
and since we're bringing that back we can reuse it for saves/levels, because we
know it works and we don't have to worry about middlewares ruining anything.
2021-04-11 11:32:29 -04:00
Ethan Lee
aa97a5d6a1
Revert "Only migrate savedata if "saves" was created", need this for levels too
...
This reverts commit fcb09f85cb .
2021-04-11 11:26:11 -04:00
Ethan Lee
fcb09f85cb
Only migrate savedata if "saves" was created
2021-04-11 11:19:49 -04:00
Ethan Lee
5060b4dfe3
Only do focus fullscreen toggling on X11.
...
I haven't been able to reproduce this old thing on any setup I have. The patch
from 2013 was originally for X11, and Wayland's fullscreen doesn't allow for
this sort of thing, so let's start scoping this down for eventual removal when
X11 is finally out of our minds forever.
2021-04-05 11:07:32 -04:00
Ethan Lee
051fe9eba9
Skip the icon on Apple targets, it also has the icns
2021-03-31 02:50:38 -04:00
Ethan Lee
b99abaf1d5
Put Misa at the top of GitHub Friends
2021-03-31 02:43:15 -04:00
Ethan Lee
4c4f8de0d5
Fix leaking GetBasePath result
2021-03-31 02:43:15 -04:00
Ethan Lee
9d2ebbc982
Re-sync CONTRIBUTORS and GitHub Friends lists
2021-03-30 23:08:25 -04:00
Ethan Lee
b87f6e487a
Use SDL_GetBashPath instead of PHYSFS_getBaseDir, latter is made of fail on macOS
2021-03-30 12:18:09 -04:00
Ethan Lee
076a870ba2
VS2010 buildfix
2021-03-30 11:51:42 -04:00
Ethan Lee
415d4790e2
Fix a crash on first unfocus
2021-03-21 17:19:08 -04:00
Ethan Lee
7abd4bb8d8
Visual Studio buildfix
2021-03-21 17:15:36 -04:00
Ethan Lee
47df6c9d66
Ignore resize events for unfocused windows
2021-02-14 22:51:07 -05:00
Ethan Lee
264279d17a
Warning fix for uninitialized prefix
2020-07-15 12:11:23 -04:00
Ethan Lee
b302e4dbbb
Valgrind warning fix
2020-07-15 12:09:24 -04:00
Ethan Lee
5ff5ae7294
mmmmmm is initialized earlier in init()
2020-07-15 11:58:00 -04:00
Ethan Lee
11312976fc
Fall back to default settings when screenbuffer is not present
2020-07-13 16:09:48 -04:00
Ethan Lee
82666a1875
Set both filter and vsync hints with override priority
2020-07-08 21:43:05 -04:00
Ethan Lee
2716296a10
Haiku: Keep the option visible, but note the bug
2020-07-08 14:43:04 -04:00
Ethan Lee
86fde7bf99
More VSync Haiku hackery
2020-07-08 14:38:55 -04:00
Ethan Lee
d3f9a36941
Refactor startup to load config before calling Screen::init
2020-07-08 14:30:57 -04:00
Ethan Lee
f8bb8cde32
HACK: Disable VSync option for Haiku
2020-07-08 14:06:45 -04:00
Ethan Lee
c4853688b4
Separate mkdirs from path string generation
2020-07-02 15:57:40 -04:00
Ethan Lee
c3e4e8589d
Check saves dir in addition to levels dir for migration
2020-07-02 14:58:04 -04:00
Ethan Lee
d057c6a348
PHYSFS_mkdir uses the mount location when a system is mounted
2020-07-02 14:56:59 -04:00
Ethan Lee
ee610238b5
Try to preserve the script args for createentity when using default args
2020-07-02 14:34:21 -04:00
Ethan Lee
0f450f3e39
Move the VSync work to Screen.
...
The problem we're running into is entirely contained in the Screen - we need to
either decouple graphics context init from Screen::init or we need to take out
the screenbuffer interaction from loadstats (which I'm more in favor of since we
can just pull the config values and pass them to Screen::init later).
2020-07-02 00:19:40 -04:00
Ethan Lee
8e4be6112d
Fix a couple spots where sizeof referred to array size
2020-07-01 00:46:55 -04:00
Ethan Lee
641277b430
Timing fixes for processVsync recreation workaround
2020-07-01 00:46:27 -04:00
Ethan Lee
708c8be089
NULL checks for processVsync
2020-07-01 00:36:04 -04:00
Ethan Lee
ffe425a202
Copypaste error for s_besttimes
2020-07-01 00:31:41 -04:00
Ethan Lee
3d8f53cfd2
Fix memset writing past bestframes
2020-06-30 23:02:18 -04:00
Ethan Lee
e85d5a8714
Merge pull request #326 from InfoTeddy/general-refactors
...
Refactor how custom level stats are stored, read, and written
2020-06-29 22:31:03 -04:00
Ethan Lee
38a42b484d
Merge pull request #322 from Dav999-v/auto-center-menu
...
Make menus automatically centered and narrowed
2020-06-29 19:10:39 -04:00
Ethan Lee
9804fbc383
Fix gamecontrollerdb.txt path
2020-06-23 19:08:08 -04:00
Ethan Lee
f0ec627628
Sigh.
2020-06-15 07:37:05 -04:00
Ethan Lee
3323b7e3cf
Maybe check the right size m8
2020-06-14 22:44:34 -04:00
Ethan Lee
bd71fb8a68
Disallow negative size values in BinaryBlob
2020-06-14 22:43:58 -04:00
Ethan Lee
4894639b3a
valid needs to have either exactly 1 or 0
2020-06-14 22:40:57 -04:00
Ethan Lee
06a71bab18
Some sanity checks for BinaryBlob header data
2020-06-14 22:39:06 -04:00
Ethan Lee
a15d01ad80
Fix fullscreen focus behavior
2020-06-13 10:35:05 -04:00
Ethan Lee
506628cef1
Revert "Fix unfocusing the game while in fullscreen mode"
...
This reverts commit c322ae131e .
2020-06-13 10:23:52 -04:00
Ethan Lee
b2f842376b
Avoid calling music.init on startup, reloadresources does this
2020-06-12 16:24:21 -04:00
Ethan Lee
8d652dc256
Like the thing I did but the opposite
2020-06-12 16:21:45 -04:00
Ethan Lee
f815b1ee62
Replace mkdir with PHYSFS_mkdir
2020-06-12 16:20:18 -04:00
Ethan Lee
43f1204407
Whitespace consistency for FileSystemUtils
2020-05-31 19:43:24 -04:00
Ethan Lee
21b6c22195
Minor visual cleanup of reloadresources
2020-05-31 19:43:24 -04:00
Ethan Lee
f422d02dcd
Minor visual cleanup of endsWith
2020-05-31 19:43:21 -04:00
Ethan Lee
f444e74550
Mention the in-game credits for the Legal Stuff
2020-04-24 12:52:11 -04:00
Ethan Lee
ac7ee0e959
Check for GCC7 for implicit-fallthrough support
2020-04-23 15:32:34 -04:00
Ethan Lee
68bb84f90b
Bools are hard...
2020-04-18 11:38:27 -04:00
Ethan Lee
6f26443783
Pull openDirectoryEnabled out of the openDirectory ifdefness
2020-04-18 11:37:28 -04:00