Commit Graph
443 Commits
Author SHA1 Message Date
Martin Natano 3eb239ad3b Replace deprecated macOS APIs with modern equivalents 2022-06-05 12:04:37 +02:00
Martin Natano 327278436d Remove support for building with system libraries 2022-05-31 18:21:35 +02:00
Martin Natano 2bb9124c72 Clean up build system 2022-05-30 23:57:33 +02:00
Martin Natano 15b77ee278 Update documentation 2022-05-28 11:21:13 +02:00
Martin Natano 07e8abf380 Generate downloads folder in portable mode 2022-05-01 10:27:30 +02:00
Martin Natano 9cf66ae643 Update ffmpeg 2.1.3 -> 5.0.1
Old ffmpeg has a lot of vulnerabilities that have been fixed in newer
versions, see https://www.cvedetails.com/vulnerability-list/vendor_id-3611/Ffmpeg.html.
2022-04-30 23:22:52 +02:00
Martin Natanoandteejusb 02008eb469 Rename to ITGmania
- executable name:
  - linux: itgmania
  - windows: ITGmania.exe
  - macOS: ITGmania.app
- config path:
  - linux: ~/.itgmania
  - windows; %AppData%\ITGmania
  - macOS: ~/Library/Application Support/ITGmania
2022-04-02 20:14:57 -07:00
Martin Natanoandteejusb e3347276b5 Build LoadingWindow_Gtk as an object module
CMake object modules have the advantage of allowing to set additional
compile flags for the involved files, but it's linked into the main
binary with the rest of the object files.

This removes GtkModule.so and the dynamic loading code that goes with
it.
2022-03-31 12:06:18 -07:00
Charles Magahernandteejusb ab991981fd Move resource mounting to the right place
Fix from Club Fantastic, but adapted for RageFile changes.
2022-03-20 07:46:03 -07:00
Martin Natanoandteejusb c99477f046 Only make parts of the initial filesystem writable
This prevents overwriting the program binary or other sentitive paths
like /Data/Static.ini from Lua.
2022-03-13 12:46:14 -07:00
Martin Natanoandteejusb ca86f80743 Add support for onProgress and downloadFile to NETWORK:HttpRequest() 2022-03-13 11:31:49 -07:00
Martin Natano 168877f6a8 Mount directories read-only where possible 2022-03-12 22:30:54 +01:00
Martin Natano d8b6d36a78 Allow to mark preferences as immutable or deprecated
- Deprecated: The option is read from the settings, but not written back
  when saving. This can be used for migrating options to a new name or
  format. (Not used yet.)
- Immutable: The option can not be changed from Lua. Used for
  security-relevant options that should not be changable by the theme or
  mod charts. Currently that's networking and some file system access
  options.
2022-03-12 22:19:19 +01:00
Martin Natano 7d8ff85018 Remove access to the root FS from lua
On linux / is mounted to /rootfs in RageFile, which allows access to the
_whole_ filesystem from lua. This means themes and mod files can
re-write user data and extract files via USB profiles.

/rootfs was only added for internal use by the alsa, oss and memory card
drivers, so it can be easily replaced with direct fstream file access.
2022-02-06 15:31:31 +01:00
Crystal SquirrelandGitHub cd7da39a97 Merge pull request #2041 from skogaby/5_1-new
Add a serial lights driver, to output lights information over serial for Win32
2021-10-01 01:00:06 +01:00
din d67cbcf5c1 Fix lighting typo. 2021-06-01 12:09:46 -05:00
Tracy Ward 984dc8668f fix minor merge error in comment 2021-03-23 03:33:26 -04:00
Crystal SquirrelandGitHub f1f76bc71b Merge pull request #2103 from DinsFire64/5_1-new
stac support & Linux LED refactor (2078)
2021-03-23 04:42:05 +00:00
din 67b2d06406 Linux_LED refactor 2021-03-22 23:40:05 -05:00
Crystal SquirrelandGitHub 521b09ea1f Merge pull request #2071 from Davidian1024/not_a_joystick_exceptions
Added an exception to the "not a joystick" logic for the RedOctane USB Pad.
2021-03-23 04:25:47 +00:00
din fa4109b652 stac support 2021-03-21 13:42:03 -05:00
Martin Natano 5c27754b39 Mark keypad buttons as such in the input mapping screen
Both the slash key and the numpad slash key were displayed as 'Key /',
so it's not obvious to the user which key actually has been bound. Let's
display them as 'Key /' and 'KP /' instead. Same for other KP keys.
2021-01-18 21:54:30 +01:00
Colby Klein aab36dae8d macos apparently wants the arm64 define instead sometimes 2021-01-08 08:37:44 -08:00
Colby Klein 261daef933 fix build and no audio out on macOS 11, closes issue #2080 2021-01-08 07:58:35 -08:00
dinandGitHub a7f666ecdb PIUIO Btn board lights, menu lights added. (#2073) 2020-12-17 11:45:58 -08:00
David Brinovec da92003005 Added an exception to the "not a joystick" logic for the RedOctane USB Pad. 2020-11-27 17:24:25 -05:00
ArusekkandGitHub 95d782d3fc input: Low-effort X11 mouse support (#2042)
A simple wrapper around XLookupKeysym, which does not return
expected XK_Pointer_* for button events.
Tested on Gentoo Linux.
2020-11-23 12:21:17 -08:00
dinandquietly-turning 771d0a1c7d check pacdrive functions before calling them
Before, if the PacDrive32.dll provided by Ultimarc wasn't found,
stepmania would attempt to write to the Pac-Drive anyway, resulting in a
call on a null pointer.

This adds a quick check against PacDriveConnected during the update, and
checks if the pacdrive functions exist before calling them.
2020-09-14 23:20:56 -04:00
Kevin Turnerandquietly-turning 2f97420f81 Updated light-setting code to use switch statements
I will say, the version of this that didn't have break statements had
way, way more flashy light patterns than the boring, correctly
functioning version of this.

Also, the preference now defaults to "minimaid"
2020-09-11 16:48:07 -04:00
Kevin Turnerandquietly-turning ad2825ba3c Cleaned up if-else code and made pref check case-insenstive 2020-09-11 16:46:07 -04:00
Kevin Turnerandquietly-turning 47d6d82962 Add preference to change PacDrive light ordering
The currently proposed light ordering presents a problem for those who have bought a LumenAR or have followed the OpenITG standard for wiring lights. With this change, the default ordering stays the same, but users have the option to define "openitg" or "lumenar" as their preferred light ordering in Preferences.ini under the newly defined "PacDriveLightOrdering" preference.
2020-09-11 16:45:42 -04:00
skogaby e81e867ee8 Add a lights driver that outputs the sextet lights protocol over a serial connection, instead of to a pipe. Also refactor the sextet lights driver to use a common utility file that the serial driver takes advantage of as well. 2020-07-19 12:45:10 -05:00
Ben Kirzhner b959bcfc39 Merge branch '5_1-new' into catalina-workaround 2020-07-04 21:49:03 -07:00
Seán de BúrcaandMartin Kröning 6649a116ed Update gtk+ LoadingWindow to use gtk3 2020-06-21 23:31:02 +02:00
Marshall Polaris a10f16cb3c Log errors while reading joystick input 2020-05-15 21:24:16 -07:00
din 653e8ff6fe Small memory fixes. 2020-05-14 16:19:23 -05:00
din e799b292da ITGIO Support for Linux 2020-05-08 19:49:40 -05:00
aeubanksandGitHub e16017bd1a Clean up InputHandler_SextetStream (#1985)
Before, this ended up calling a virtual method in the constructor,
which C++ does not allow, and I got weird crashes.

This removes a lot of unused code and gets rid of unnecessary abstractions.
2020-04-30 13:24:23 -07:00
Prcuvu b38377403e Add LOG->Warn on fallback to English, for consistency on all platforms 2020-02-08 17:08:25 +08:00
Prcuvu 2baade1dd7 ArchHooks modified for macOS 2020-02-08 17:03:27 +08:00
Prcuvu d893c84b7b ArchHooks modified for Unix 2020-02-08 16:08:02 +08:00
Prcuvu de4dc62846 Split Chinese language into Simplified script and Traditional script
ArchHooks function modified for Windows.
2020-02-08 15:46:00 +08:00
Prcuvu 532c430d8f Fix XInput library linkage for compatibility down to Windows Vista 2019-12-31 16:04:17 +08:00
Tommy Li aae68b4b72 Add a draft for NSEvent based keyboard input. 2019-12-22 21:21:18 -06:00
Tommy Li 6b524a6c1f Add CMake instructions to copy default resources to app bundle, and add mounting points for those resources. 2019-12-22 21:20:57 -06:00
Tommy Li d8acd46319 More synchronous call to the main thread to avoid crashes 2019-12-22 12:56:39 -06:00
Matias Hilden cb10b61d34 fix leftover macro loop in JACK sound driver 2019-12-08 13:52:07 +02:00
tommy.li 81a041e3dd "Fixed" some Objective-C API issues blocking the game from launching 2019-11-16 00:31:47 -06:00
Martin NatanoandColby Klein 7dae1384e6 Sort input devices on Linux (#1926)
* Remove unused function

* Sort input devices on Linux

The readdir() function doesn't guarantee any specific ordering, so the
numbers of joysticks might change when restarting StepMania.
(Empirically this usually only happens after a reboot.)

Let's sort the input devices alphabetically before opening them to have
more consistent numbering and avoid annoying remapping of controllers.
2019-10-29 08:05:29 -07:00
Tracy WardandGitHub 81ce0e94d9 Merge: Windows x64 build support (#1899) 2019-10-13 15:56:04 -04:00