Skip to content

Commit

Permalink
Merge pull request #1 from hiddenswitch/fixed-original
Browse files Browse the repository at this point in the history
Fixed original
  • Loading branch information
doctorpangloss authored May 18, 2017
2 parents e3582a5 + 06b4fc9 commit 876a7dd
Show file tree
Hide file tree
Showing 33 changed files with 139 additions and 3,048 deletions.
15 changes: 13 additions & 2 deletions DMGEULA/DMGEULA.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,11 @@
08FB7793FE84155DC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
TargetAttributes = {
8DD76F620486A84900D96B5E = {
ProvisioningStyle = Manual;
};
};
};
buildConfigurationList = 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "DMGEULA" */;
compatibilityVersion = "Xcode 3.1";
Expand Down Expand Up @@ -363,12 +368,15 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "Mac Developer";
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = "";
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_FIX_AND_CONTINUE = YES;
GCC_MODEL_TUNING = G5;
GCC_OPTIMIZATION_LEVEL = 0;
INSTALL_PATH = /usr/local/bin;
INFOPLIST_FILE = "$(SRCROOT)/DMGEULA-Info.plist";
INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
PRODUCT_NAME = dmgeula;
};
name = Debug;
Expand All @@ -377,9 +385,12 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "Mac Developer";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
GCC_MODEL_TUNING = G5;
INSTALL_PATH = /usr/local/bin;
INFOPLIST_FILE = "$(SRCROOT)/DMGEULA-Info.plist";
INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
PRODUCT_NAME = dmgeula;
};
name = Release;
Expand Down
9 changes: 9 additions & 0 deletions OCLog/OCLog.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,11 @@
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0510;
TargetAttributes = {
8DC2EF4F0486A6940098B216 = {
ProvisioningStyle = Automatic;
};
};
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "OCLog" */;
compatibilityVersion = "Xcode 3.1";
Expand Down Expand Up @@ -309,7 +314,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "Mac Developer";
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = K4T4R33YU4;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
FRAMEWORK_VERSION = A;
Expand All @@ -329,7 +336,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "Mac Developer";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = K4T4R33YU4;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
FRAMEWORK_VERSION = A;
Expand Down
56 changes: 30 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,39 @@
# WJoy-foohid
# WJoy

WJoy allows you to use Wii controllers as native gamepads on OS X.
You must have SIP disabled for this application to work. Please disable it by booting your Mac into recovery mode, opening the Terminal and running:

The following controllers are supported
```sh
csrutil disable
```

- Wii Remote
- Nunchuck
- Classic Controller
- Wii U Pro Controller
- Every other contoller supported by the original WJoy project
You may read more here: http://www.imore.com/el-capitan-system-integrity-protection-helps-keep-malware-away

This project is a fork of the original (now unsupported) Wjoy project. WJoy-foohid uses foohid as the input driver rather than using the original (now unsupported) WJoy driver.
##### Installation Instructions

1. Download WJoy here: https://www.dropbox.com/s/oowoqvnx091bcjx/WJoy%20Package.zip?dl=1
2. Move the `wjoy.kext` file to `/Library/Extensions`
3. Move the `WJoy.app` to `/Applications`
4. Turn on Bluetooth.
5. Start the WJoy application.
6. In the system tray, click the WJoy icon and click Begin Discovery.
7. Turn on the Wiimote or Wii U Pro Controller by pressing any key on it.
8. Press the sync button (red flat button on the controller) while in discovery mode.
9. Once connected, configure the Wii U Pro controller as a Steam controller in Steam Big Picture Mode. Read more here: https://www.howtogeek.com/234427/how-to-remap-buttons-on-your-steam-controller/

In my experience, Unity games for Mac do not support the Wii U Pro Controller, since they tend to use the XInput package. There is no application that emulates an Xbox controller for Mac.

## Quick Start
Working:

1. Download and install the latest release of foohid: https://github.com/unbit/foohid/releases/latest
2. Download and run the latest release of WJoy-foohid: https://github.com/JustinBis/wjoy-foohid/releases/latest
3. Ensure that bluetooth is enabled and then click the wiimote icon on the menu bar
4. Click "start discovery" and then hit the red sync button on your Wii Remote or other accessory
5. Once connected, your controller is ready to be used in any games that support native gamepads. Enjoy!
- Binding of Isaac
- Gang Beasts
- DolphinEmu
- Antichamber
- Hotline Miami
- Teleglitch

Not working:

## Wii U Pro Controller Analog Stick Calibration

WJoy will now automatically calibrate the Wii U Pro Controller analog sticks on the fly so that they reach 100% of the analog stick range rather than being stuck around 60-70% range. To calibrate the sticks, simply move them in a few full circles so that WJoy can detect the range of motion for each stick.

Thanks to [Kametrixom](https://github.com/Kametrixom) for this fix.

## Why foohid?

In OS X El Capitan (version 10.11), Apple added [System Integrity Protection (AKA "rootless" mode)](http://apple.stackexchange.com/questions/193368/) as a security feature. Among other things, this feature prevents the operating system from running unsigned kernel extensions (kexts). The original WJoy project included an unsigned kext to provide a virtual HID for each connected wiimote and thus the original project no longer works on modern versions of OS X.

Thankfully, you can still run kexts signed by Apple or by approved developers. That's where foohid comes in. foohid is a signed kext that allows programs to create virtual HID devices on demand -- exactly what we need. With foohid installed, we can use WJoy without having to disable important security features on the operating system.
- Ultimate Chicken Horse
- Broforce
- Monaco
- Superhot
9 changes: 9 additions & 0 deletions UpdateChecker/UpdateChecker.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -234,6 +234,11 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
TargetAttributes = {
8DC2EF4F0486A6940098B216 = {
ProvisioningStyle = Manual;
};
};
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "UpdateChecker" */;
compatibilityVersion = "Xcode 3.1";
Expand Down Expand Up @@ -356,7 +361,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "Mac Developer";
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = "";
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
FRAMEWORK_VERSION = A;
Expand All @@ -375,7 +382,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CODE_SIGN_IDENTITY = "Mac Developer";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = "";
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
FRAMEWORK_VERSION = A;
Expand Down
1 change: 0 additions & 1 deletion UserNotification/10.5/Growl.framework/Growl

This file was deleted.

1 change: 0 additions & 1 deletion UserNotification/10.5/Growl.framework/Headers

This file was deleted.

1 change: 0 additions & 1 deletion UserNotification/10.5/Growl.framework/Resources

This file was deleted.

Binary file not shown.

This file was deleted.

Loading

0 comments on commit 876a7dd

Please sign in to comment.