Commit Graph
334 Commits
Author SHA1 Message Date
Kyzentun Keeslala d6cf7575b2 Don't allow trying to use a sound driver that is not in the list for the platform. 2016-06-07 18:28:06 -06:00
Jason Felds 6102c0dab9 Prevent crashes from unconnected Mimimaid devices.
This only affects Windows.
2016-05-11 20:49:01 -04:00
Jason Felds bec18a0d36 Fix minor windows pedantic warnings. 2016-03-27 22:03:15 -04:00
Jason Felds edabf4605b Clean up three sets of warnings:
* Ensure all switches have a default when working with enums.
* Match defined new[] calls with delete[] calls.
* Respect variable initialization order.
2016-03-24 18:30:29 -04:00
Kyzentun ec524f7b82 Merge pull request #1014 from kyzentun/linux_minimaid
Linux minimaid
2016-03-13 08:47:30 -06:00
Kyzentun Keeslala bd19b1b29a Added global lua function for fetching the list of available sound drivers. Moved WaveOut to the front of the list to make it the first driver to try on Windows. 2016-03-05 18:11:59 -07:00
Kyzentun Keeslala 4b0e6f3e0a Moved minimaid linking command to proper place in src/CMakeLists.txt. Removed wrapper function pointers from LightsDriver_LinuxMinimaid.h because it doesn't load a dynamic lib. Link udev when linking libmmmagic. 2016-02-16 20:06:46 -07:00
Kyzentun Keeslala 7cce462dd1 Start event devices at JOY10 so that they won't overlap with joystick devices. 2016-02-15 16:58:36 -07:00
Kyzentun Keeslala 10c304a80d Add libmmmagic lights support to linux. Mostly copy paste of windows driver. 2016-02-13 17:53:39 -07:00
Kyzentun Keeslala 7a26044934 Changed DirectInput mouse input to use an if statement instead of a while loop to avoid input lockup. 2015-10-09 23:54:35 -06:00
Prcuvu d98a25797e Fix GCC warnings on Linux. 2015-10-08 12:51:28 +08:00
Vincent Laviron 85599a7a43 FFMpeg: Fix uninitialized AVFrame
Fixes crashes with recent version of libav and ffmpeg on Linux while attempting to play a video
2015-10-04 22:21:06 +02:00
Jason Felds b3a5a82b5c Bring us closer to working with MinGW again.
The biggest obstacle right now deals with FFMPEG. I insist on being able to utilize the git clone/submodule (5_1_0) section. I'm just struggling with the commands.

As part of this commit, some linux files are restored in the compilation chain. This is for consistency with the old Makefile approach.

Assistance will be needed at this point to complete MinGW support.
2015-09-27 17:07:15 -04:00
Jason Felds 8512665f27 NOW all of the buffer calls should be dead. 2015-09-19 20:06:33 -04:00
Kyzentun Keeslala e1eceda031 Moved AxisFix to GamePreferences so that the preference exists on all platforms and doesn't cause a crash on the Advanced Input Options screen on OS X. Preference does nothing on OS X for now. 2015-09-06 14:10:26 -06:00
Jason Felds e093d204c8 Use proper cmake detection of features.
This attempts to organize all needed items and places appropriate defines
in a single location. Redundant comparisons/defines were removed when noticed.

A few caveats, however:

* This may be better targeted towards the 5_1_0 branch instead of master right now.
* Cmake will run a little slower on configuration/generation now. That's due to the sanity checks it runs.
* There are some more checks to be added later, but this should be a solid start.

Thanks to the [libical](https://github.com/libical/libical) project for inspiration.
2015-09-05 10:51:17 -04:00
Dan Guzek 759c8c0897 have udev only log PIUIO LightState upon change
Previously, the PIUIO_Leds code logged every LightState of every PIUIO_Led light with every call of Set()

This commit adds checks to see if each of the PIUIO_Leds have changed LightState since the last Set() and skips logging the current LightState if there is no change.  Each set of lights was already being looped through; the new code here just issues a continue to skip logging where possible.

This helps reduce CPU usage when PIUIO_Leds are in use as the LightsDriver.
2015-08-04 03:12:49 -04:00
Kyzentun Keeslala f6d369372f Changed HOOKS singleton to register itself with lua correctly so that it can be used by lua. 2015-07-08 15:39:00 -06:00
Jason Felds 80542a5a7d Require reasons for checkpoints. 2015-06-08 18:37:13 -04:00
Renaud Lepage a2183d15c1 Reactivating Crash Manager on the Linux platform 2015-05-25 09:57:43 -07:00
Dan Guzek 40f1554724 fix Loading Window splash image for OS X
This commit allows OS X users to enjoy their current theme's custom splash graphic if it is available at ./Graphics/Common splash.png
I have been wanting to fix this for a fairly long time.

My fix is probably not the cleanest or proper way to do this.  StepMania.cpp already looks up the current theme's "Common splash.png" and passes it off to the arch-appropriate LoadingWindow as a RageSurface.  This fix repeats the lookup in LoadingWindow_MacOSX.mm, and loads the splash image into a Ragefile which is easily loaded into an NSImage.

Still, my fix does work, and if you actually know how to work with a Ragesurface and can help out here, I'll give you a cookie. :)
2015-05-15 08:28:34 -04:00
Fighter19 73ee19b7cf Adds option for an Axis Fix for some (PS2) adapters which map the D-Pad to Axis 2015-05-06 10:04:55 +02:00
Matt McCutchen cb7efb1570 getDevice: Do not read a dirent after calling closedir.
On my Fedora 20 system, closedir apparently frees the dirent, and
reading it afterwards returns garbage data.  This prevented my dance pad
from being detected.
2015-04-23 21:38:45 -04:00
Colin Wallace 8ed944368c Fix OSX key translation crash (#504) 2015-04-05 02:55:54 +00:00
Dan Guzek 2c16c6870c log OS X version properly - take 2
There was code in place to log the OS X kernel version (14.1.0, for
example) to log, but it stopped working some time ago. "Mac OS X
unknown." has been logged for the last several releases.

This commit swaps out that C++ code for a some Obj-C which logs the OS
X release version (10.10.2, for example) correctly. In order to mix
Obj-C with an otherwise C++ file, I changed the file extension from .cpp
to .mm to make it Objective-C++.

At the suggestion of wolfman2000, I have updated
src/CMakeData-arch.cmake to reflect the changes in this commit; that
will follow in the next commit from me.
2015-03-25 22:53:42 -04:00
Jason Felds 541389ea7d Resolve casting warning where no one would check. 2015-03-25 22:09:46 -04:00
Colby Klein 75949d3646 Merge pull request #512 from wolfman2000/wolf-product-idless
Remove unused function.
2015-03-18 21:47:07 -07:00
Jason Felds 3e965152c9 Remove unused function.
Is there really a point for us to have this?
2015-03-15 11:46:07 -04:00
Dan Guzek 042c9fbcd8 prevent OS X Desktop directory from being created
As of commit dd0896d3eb, a "StepMania 5" directory is searched for at ~/Desktop and created if one is not found.  It doesn't seem that directory is ever used in any way, however, causing confusion and annoyance for OS X users.

See: http://www.stepmania.com/forums/general-questions/show/1893
2015-02-23 17:03:16 -05:00
Kyzentun 87ccbbd5dd Merge branch 'SextetStream-lights-and-input' of https://github.com/psmay/stepmania 2014-12-08 16:46:41 -07:00
Jonathan Berney 4c7c64de62 Preserves backwards compatibility with 10.6
sync_volume_np was introduced in the 10.8 SDK. This commit ensures that
some related constants are defined before calling the function. If they
are not, we fallback to the older logic.
2014-10-30 14:36:10 -07:00
Peter S. May a991ae18a0 SextetStream input and lights drivers. 2014-10-19 16:51:54 -04:00
Jason Felds 578f0b8b0b Merge pull request #324 from jberney/master
Mac OS X 10.10 Yosemite crash fix
2014-10-13 18:54:05 -04:00
Thai Pangsakulyanont 36aa012f03 fallback to the fallback when KeyCodeToChar does not work 2014-10-11 21:10:23 +07:00
Thai Pangsakulyanont 85f6f2e5d4 added the code that works. It is tested outside of StepMania 2014-10-11 14:34:05 +07:00
Thai Pangsakulyanont b0106312c4 remove untested code 2014-10-11 14:19:20 +07:00
Thai Pangsakulyanont a2e66a7803 Use Quarts to map raw keyboard to character code. 2014-10-11 13:49:43 +07:00
Thai Pangsakulyanont a4f9df9cbc Merge branch 'master' of https://github.com/stepmania/stepmania into MacOSX10.9.sdk 2014-10-11 12:40:18 +07:00
Jonathan Berney f9f486b812 Fixed indentation issues accidentally introduced 2014-10-07 19:56:33 -07:00
Jonathan Berney 218c10ef97 Update RageSoundDriver_AU.cpp
The Yosemite crash happens when we call CFRunLoopAddObserver. It doesn't seem to like runLoopRef. Replacing the first argument to this call with CFRunLoopGetCurrent() avoids the crash, but the app then hangs because CFRunLoopWakeUp doesn't cause observerRef (NameHALThread) to fire, so the semaphore is not posted. Commenting the semaphore wait line allows the game to boot in Yosemite, and seems to play totally normally. This doesn't really fix our problem (we are trying to name the HAL thread, and a catastrophic error occurs), but it shows us what the problem is.

We are obtaining runLoopRef using an API call that was deprecated years ago. However, the Apple-approved replacement code doesn't produce a runLoopRef that avoids the crash, either. So I'm not sure how we get the correct runLoopRef so we can name the thread.

This is my first time looking at the code base, but I don't see the value of naming the thread. In the interest of keeping Stepmania compatible with the upcoming operating system, I propose we just remove the thread-naming logic.
2014-10-07 19:48:58 -07:00
freem ef04f2914a Replace the usage of SOUND_PCM_WRITE_RATE with SNDCTL_DSP_SPEED. (See issue #292) 2014-09-05 03:43:00 -05:00
Devin J. Pohly 4ccdf776cb point at the right file in the filesystem 2014-08-31 17:23:42 -07:00
Devin J. Pohly 9a76fdf04e don't set lights for nonexistent lights
duh.
2014-08-31 17:23:41 -07:00
Devin J. Pohly f386a7ae58 add PIUIO_Leds driver
The mappings in this driver are specific to the piuio kernel driver, but
once lights mapping is possible this could be made into a generic leds
class driver.
2014-08-31 17:23:41 -07:00
freem 194c8de8f8 add pkgingo's (Win32) Minimaid driver.
* new makefile config option "HAVE_MINIMAID"
* update all Visual Studio projects
2014-08-02 00:38:20 -07:00
Thai Pangsakulyanont c4c0e9b0a1 [WIP] Update to Mac OS X 10.9 SDK
Untested Parts
--------------

`ArchHooks_MacOSX::DumpDebugInfo()`

- Used `sysctlbyname` to find the Mac OS X version instead of the deprecated `Gestalt`.
    - http://stackoverflow.com/questions/11072804/how-do-i-determine-the-os-version-at-runtime-in-os-x-or-ios-without-using-gesta

`MemoryCardDriverThreaded_MacOSX::Unmount( UsbStorageDevice *pDevice )`

- Updated to use `sync_volume_np` instead of deprecated `PBFlushVolSync`.
    - http://lists.apple.com/archives/carbon-dev/2010/Nov/msg00030.html
2014-07-25 09:14:06 +09:00
freem 995a9c6d37 add pkgingo's (Win32) Minimaid driver.
* new makefile config option "HAVE_MINIMAID"
* update all Visual Studio projects
2014-07-08 16:51:11 -05:00
Elliot Wolk 62630f7960 Revert "FFMpeg: Fix uninitialized AVFrame, which led to crashes with recent version of libav and ffmpeg"
This reverts commit 84903fce25.
2014-05-07 22:51:39 -04:00
David Buckley 71a499481f Properly handle Linux event device button numbers
Old code would, by coincidence, map 1->16 to 1->16, then 17->32 to
1->32, leaving 1 and 17 on the same button number.

We still map 33->56 to 1->24, creating some overlap. But at least that's
because StepMania will have run out of buttons.

THIS PATCH WILL CHANGE THE CODES OF JOYSTICK BUTTONS 17 AND UP.
2014-04-27 17:19:31 +01:00
Vincent Laviron 44fede6c1e Fix building on older versions on FFMpeg 2014-04-16 15:12:23 +02:00