Commit Graph
458 Commits
Author SHA1 Message Date
teejusb c2b9b09418 Allow Windows users to select a device to use with WaveOut 2023-02-18 09:00:58 -08:00
Brian Phlipotandteejusb d079940fea Address PR feedback. 2023-02-02 11:54:17 -08:00
Brian Phlipotandteejusb 4a6b1a743c Enable more compiler warnings and treat them as errors. 2023-02-02 11:54:17 -08:00
teejusbandcamsta4 bdb067764a mmmagic.dll -> mmmagic64.dll
Co-authored-by: camsta4 <[email protected]>
2022-12-19 20:19:16 -08:00
teejusb ef144a7f9d Remove WITH_MINIMAID CMake option
Always build ITGmania with Minimaid

There's no harm in always having this built as it's configurable based on the LightsDriver field.

Update mmmagic.dll -> mmmagic64.dll to conform with the new dll filename

Also fix PacDrive.h header
2022-12-19 20:19:16 -08:00
Brian Phlipotandteejusb a0e805e511 Add std:: prefixes to all shuffle calls. Use unique_ptr instead of shared_ptr. 2022-10-03 16:21:19 -07:00
Brian Phlipotandteejusb 95e55f5cdd Last RString MSVC compiler error. Eliminate gotos to fix more MSVC compiler errors. 2022-10-03 16:21:19 -07:00
Michael SundqvistandMartin Natano 0cba3579de Remove global "using namespace std;" declarations, use "std::" prefixes on all std elements
Fix whitespace changes
2022-07-31 22:14:38 +02:00
Martin Natano 61f12e8165 Prevent out-of-bounds array access
Fixes https://github.com/itgmania/itgmania/issues/27
2022-06-27 20:10:52 +02:00
teejusb 7d88febd51 Switch to loading the PacDrive64.dll + Update Default 2022-06-21 12:22:29 -07:00
Martin Natano 2e8f906aa8 Return AVERROR_EOF in case of EOF to prevent game freeze 2022-06-08 12:13:51 +02:00
Martin Natano c40985122e Remove workarounds for ancient MSVC versions 2022-06-07 22:49:05 +02:00
Martin Natano 838de6fb81 Remove support for mingw
MSVC works fine and the bundled mingw libraries are outdated.
2022-06-07 22:49:05 +02:00
Martin Natano 1da34b9ba2 Remove WITH_TTY build option
TTY input doesn't seem very useful and the code is broken (requires SDL,
which is not picked up by cmake). The option was disabled by default
too. I doubt anyone is using this.
2022-06-07 22:49:05 +02:00
dinandMartin Natano d694560e63 drio dll support for win32. 2022-06-05 20:56:47 +02:00
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