Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android: Use octagonal stick gate in overlay #8907

Merged
merged 2 commits into from
Jul 8, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
16 changes: 0 additions & 16 deletions Source/Android/app/src/main/assets/GCPadNew.ini
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,10 @@ Main Stick/Up = `Axis 11`
Main Stick/Down = `Axis 12`
Main Stick/Left = `Axis 13`
Main Stick/Right = `Axis 14`
Main Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Main Stick/Center = 0,00 0,00
C-Stick/Up = `Axis 16`
C-Stick/Down = `Axis 17`
C-Stick/Left = `Axis 18`
C-Stick/Right = `Axis 19`
C-Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
C-Stick/Center = 0,00 0,00
Triggers/L = `Axis 20`
Triggers/R = `Axis 21`
Triggers/L-Analog = `Axis 20`
Expand All @@ -44,14 +40,10 @@ Main Stick/Up = `Axis 11`
Main Stick/Down = `Axis 12`
Main Stick/Left = `Axis 13`
Main Stick/Right = `Axis 14`
Main Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Main Stick/Center = 0,00 0,00
C-Stick/Up = `Axis 16`
C-Stick/Down = `Axis 17`
C-Stick/Left = `Axis 18`
C-Stick/Right = `Axis 19`
C-Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
C-Stick/Center = 0,00 0,00
Triggers/L = `Axis 20`
Triggers/R = `Axis 21`
Triggers/L-Analog = `Axis 20`
Expand All @@ -74,14 +66,10 @@ Main Stick/Up = `Axis 11`
Main Stick/Down = `Axis 12`
Main Stick/Left = `Axis 13`
Main Stick/Right = `Axis 14`
Main Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Main Stick/Center = 0,00 0,00
C-Stick/Up = `Axis 16`
C-Stick/Down = `Axis 17`
C-Stick/Left = `Axis 18`
C-Stick/Right = `Axis 19`
C-Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
C-Stick/Center = 0,00 0,00
Triggers/L = `Axis 20`
Triggers/R = `Axis 21`
Triggers/L-Analog = `Axis 20`
Expand All @@ -104,14 +92,10 @@ Main Stick/Up = `Axis 11`
Main Stick/Down = `Axis 12`
Main Stick/Left = `Axis 13`
Main Stick/Right = `Axis 14`
Main Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Main Stick/Center = 0,00 0,00
C-Stick/Up = `Axis 16`
C-Stick/Down = `Axis 17`
C-Stick/Left = `Axis 18`
C-Stick/Right = `Axis 19`
C-Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
C-Stick/Center = 0,00 0,00
Triggers/L = `Axis 20`
Triggers/R = `Axis 21`
Triggers/L-Analog = `Axis 20`
Expand Down
48 changes: 0 additions & 48 deletions Source/Android/app/src/main/assets/WiimoteNew.ini
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,6 @@ Nunchuk/Stick/Up = `Axis 203`
Nunchuk/Stick/Down = `Axis 204`
Nunchuk/Stick/Left = `Axis 205`
Nunchuk/Stick/Right = `Axis 206`
Nunchuk/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Nunchuk/Stick/Center = 0,00 0,00
Nunchuk/Swing/Up = `Axis 208`
Nunchuk/Swing/Down = `Axis 209`
Nunchuk/Swing/Left = `Axis 210`
Expand Down Expand Up @@ -77,14 +75,10 @@ Classic/Left Stick/Up = `Axis 314`
Classic/Left Stick/Down = `Axis 315`
Classic/Left Stick/Left = `Axis 316`
Classic/Left Stick/Right = `Axis 317`
Classic/Left Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Left Stick/Center = 0,00 0,00
Classic/Right Stick/Up = `Axis 319`
Classic/Right Stick/Down = `Axis 320`
Classic/Right Stick/Left = `Axis 321`
Classic/Right Stick/Right = `Axis 322`
Classic/Right Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Right Stick/Center = 0,00 0,00
Classic/Triggers/L = `Axis 323`
Classic/Triggers/R = `Axis 324`
Classic/Triggers/Threshold = 90,000000
Expand All @@ -101,8 +95,6 @@ Guitar/Stick/Up = `Axis 410`
Guitar/Stick/Down = `Axis 411`
Guitar/Stick/Left = `Axis 412`
Guitar/Stick/Right = `Axis 413`
Guitar/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Guitar/Stick/Center = 0,00 0,00
Guitar/Whammy/Bar = `Axis 414`
Drums/Buttons/- = `Button 500`
Drums/Buttons/+ = `Button 501`
Expand All @@ -116,8 +108,6 @@ Drums/Stick/Up = `Axis 509`
Drums/Stick/Down = `Axis 510`
Drums/Stick/Left = `Axis 511`
Drums/Stick/Right = `Axis 512`
Drums/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Drums/Stick/Center = 0,00 0,00
Turntable/Buttons/Green Left = `Button 600`
Turntable/Buttons/Red Left = `Button 601`
Turntable/Buttons/Blue Left = `Button 602`
Expand All @@ -136,8 +126,6 @@ Turntable/Stick/Up = `Axis 617`
Turntable/Stick/Down = `Axis 618`
Turntable/Stick/Left = `Axis 619`
Turntable/Stick/Right = `Axis 620`
Turntable/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Turntable/Stick/Center = 0,00 0,00
Turntable/Effect/Dial = `Axis 621`
Turntable/Crossfade/Left = `Axis 623`
Turntable/Crossfade/Right = `Axis 624`
Expand Down Expand Up @@ -200,8 +188,6 @@ Nunchuk/Stick/Up = `Axis 203`
Nunchuk/Stick/Down = `Axis 204`
Nunchuk/Stick/Left = `Axis 205`
Nunchuk/Stick/Right = `Axis 206`
Nunchuk/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Nunchuk/Stick/Center = 0,00 0,00
Nunchuk/Swing/Up = `Axis 208`
Nunchuk/Swing/Down = `Axis 209`
Nunchuk/Swing/Left = `Axis 210`
Expand Down Expand Up @@ -234,14 +220,10 @@ Classic/Left Stick/Up = `Axis 314`
Classic/Left Stick/Down = `Axis 315`
Classic/Left Stick/Left = `Axis 316`
Classic/Left Stick/Right = `Axis 317`
Classic/Left Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Left Stick/Center = 0,00 0,00
Classic/Right Stick/Up = `Axis 319`
Classic/Right Stick/Down = `Axis 320`
Classic/Right Stick/Left = `Axis 321`
Classic/Right Stick/Right = `Axis 322`
Classic/Right Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Right Stick/Center = 0,00 0,00
Classic/Triggers/L = `Axis 323`
Classic/Triggers/R = `Axis 324`
Classic/Triggers/Threshold = 90,000000
Expand All @@ -258,8 +240,6 @@ Guitar/Stick/Up = `Axis 410`
Guitar/Stick/Down = `Axis 411`
Guitar/Stick/Left = `Axis 412`
Guitar/Stick/Right = `Axis 413`
Guitar/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Guitar/Stick/Center = 0,00 0,00
Guitar/Whammy/Bar = `Axis 414`
Drums/Buttons/- = `Button 500`
Drums/Buttons/+ = `Button 501`
Expand All @@ -273,8 +253,6 @@ Drums/Stick/Up = `Axis 509`
Drums/Stick/Down = `Axis 510`
Drums/Stick/Left = `Axis 511`
Drums/Stick/Right = `Axis 512`
Drums/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Drums/Stick/Center = 0,00 0,00
Turntable/Buttons/Green Left = `Button 600`
Turntable/Buttons/Red Left = `Button 601`
Turntable/Buttons/Blue Left = `Button 602`
Expand All @@ -293,8 +271,6 @@ Turntable/Stick/Up = `Axis 617`
Turntable/Stick/Down = `Axis 618`
Turntable/Stick/Left = `Axis 619`
Turntable/Stick/Right = `Axis 620`
Turntable/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Turntable/Stick/Center = 0,00 0,00
Turntable/Effect/Dial = `Axis 621`
Turntable/Crossfade/Left = `Axis 623`
Turntable/Crossfade/Right = `Axis 624`
Expand Down Expand Up @@ -357,8 +333,6 @@ Nunchuk/Stick/Up = `Axis 203`
Nunchuk/Stick/Down = `Axis 204`
Nunchuk/Stick/Left = `Axis 205`
Nunchuk/Stick/Right = `Axis 206`
Nunchuk/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Nunchuk/Stick/Center = 0,00 0,00
Nunchuk/Swing/Up = `Axis 208`
Nunchuk/Swing/Down = `Axis 209`
Nunchuk/Swing/Left = `Axis 210`
Expand Down Expand Up @@ -391,14 +365,10 @@ Classic/Left Stick/Up = `Axis 314`
Classic/Left Stick/Down = `Axis 315`
Classic/Left Stick/Left = `Axis 316`
Classic/Left Stick/Right = `Axis 317`
Classic/Left Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Left Stick/Center = 0,00 0,00
Classic/Right Stick/Up = `Axis 319`
Classic/Right Stick/Down = `Axis 320`
Classic/Right Stick/Left = `Axis 321`
Classic/Right Stick/Right = `Axis 322`
Classic/Right Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Right Stick/Center = 0,00 0,00
Classic/Triggers/L = `Axis 323`
Classic/Triggers/R = `Axis 324`
Classic/Triggers/Threshold = 90,000000
Expand All @@ -415,8 +385,6 @@ Guitar/Stick/Up = `Axis 410`
Guitar/Stick/Down = `Axis 411`
Guitar/Stick/Left = `Axis 412`
Guitar/Stick/Right = `Axis 413`
Guitar/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Guitar/Stick/Center = 0,00 0,00
Guitar/Whammy/Bar = `Axis 414`
Drums/Buttons/- = `Button 500`
Drums/Buttons/+ = `Button 501`
Expand All @@ -430,8 +398,6 @@ Drums/Stick/Up = `Axis 509`
Drums/Stick/Down = `Axis 510`
Drums/Stick/Left = `Axis 511`
Drums/Stick/Right = `Axis 512`
Drums/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Drums/Stick/Center = 0,00 0,00
Turntable/Buttons/Green Left = `Button 600`
Turntable/Buttons/Red Left = `Button 601`
Turntable/Buttons/Blue Left = `Button 602`
Expand All @@ -450,8 +416,6 @@ Turntable/Stick/Up = `Axis 617`
Turntable/Stick/Down = `Axis 618`
Turntable/Stick/Left = `Axis 619`
Turntable/Stick/Right = `Axis 620`
Turntable/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Turntable/Stick/Center = 0,00 0,00
Turntable/Effect/Dial = `Axis 621`
Turntable/Crossfade/Left = `Axis 623`
Turntable/Crossfade/Right = `Axis 624`
Expand Down Expand Up @@ -514,8 +478,6 @@ Nunchuk/Stick/Up = `Axis 203`
Nunchuk/Stick/Down = `Axis 204`
Nunchuk/Stick/Left = `Axis 205`
Nunchuk/Stick/Right = `Axis 206`
Nunchuk/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Nunchuk/Stick/Center = 0,00 0,00
Nunchuk/Swing/Up = `Axis 208`
Nunchuk/Swing/Down = `Axis 209`
Nunchuk/Swing/Left = `Axis 210`
Expand Down Expand Up @@ -548,14 +510,10 @@ Classic/Left Stick/Up = `Axis 314`
Classic/Left Stick/Down = `Axis 315`
Classic/Left Stick/Left = `Axis 316`
Classic/Left Stick/Right = `Axis 317`
Classic/Left Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Left Stick/Center = 0,00 0,00
Classic/Right Stick/Up = `Axis 319`
Classic/Right Stick/Down = `Axis 320`
Classic/Right Stick/Left = `Axis 321`
Classic/Right Stick/Right = `Axis 322`
Classic/Right Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Right Stick/Center = 0,00 0,00
Classic/Triggers/L = `Axis 323`
Classic/Triggers/R = `Axis 324`
Classic/Triggers/Threshold = 90,000000
Expand All @@ -572,8 +530,6 @@ Guitar/Stick/Up = `Axis 410`
Guitar/Stick/Down = `Axis 411`
Guitar/Stick/Left = `Axis 412`
Guitar/Stick/Right = `Axis 413`
Guitar/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Guitar/Stick/Center = 0,00 0,00
Guitar/Whammy/Bar = `Axis 414`
Drums/Buttons/- = `Button 500`
Drums/Buttons/+ = `Button 501`
Expand All @@ -587,8 +543,6 @@ Drums/Stick/Up = `Axis 509`
Drums/Stick/Down = `Axis 510`
Drums/Stick/Left = `Axis 511`
Drums/Stick/Right = `Axis 512`
Drums/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Drums/Stick/Center = 0,00 0,00
Turntable/Buttons/Green Left = `Button 600`
Turntable/Buttons/Red Left = `Button 601`
Turntable/Buttons/Blue Left = `Button 602`
Expand All @@ -607,8 +561,6 @@ Turntable/Stick/Up = `Axis 617`
Turntable/Stick/Down = `Axis 618`
Turntable/Stick/Left = `Axis 619`
Turntable/Stick/Right = `Axis 620`
Turntable/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Turntable/Stick/Center = 0,00 0,00
Turntable/Effect/Dial = `Axis 621`
Turntable/Crossfade/Left = `Axis 623`
Turntable/Crossfade/Right = `Axis 624`
Expand Down
12 changes: 0 additions & 12 deletions Source/Android/app/src/main/assets/WiimoteProfile.ini
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,6 @@ Nunchuk/Stick/Up = `Axis 203`
Nunchuk/Stick/Down = `Axis 204`
Nunchuk/Stick/Left = `Axis 205`
Nunchuk/Stick/Right = `Axis 206`
Nunchuk/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Nunchuk/Stick/Center = 0,00 0,00
Nunchuk/Swing/Up = `Axis 208`
Nunchuk/Swing/Down = `Axis 209`
Nunchuk/Swing/Left = `Axis 210`
Expand Down Expand Up @@ -77,14 +75,10 @@ Classic/Left Stick/Up = `Axis 314`
Classic/Left Stick/Down = `Axis 315`
Classic/Left Stick/Left = `Axis 316`
Classic/Left Stick/Right = `Axis 317`
Classic/Left Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Left Stick/Center = 0,00 0,00
Classic/Right Stick/Up = `Axis 319`
Classic/Right Stick/Down = `Axis 320`
Classic/Right Stick/Left = `Axis 321`
Classic/Right Stick/Right = `Axis 322`
Classic/Right Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Classic/Right Stick/Center = 0,00 0,00
Classic/Triggers/L = `Axis 323`
Classic/Triggers/R = `Axis 324`
Classic/Triggers/Threshold = 90,000000
Expand All @@ -101,8 +95,6 @@ Guitar/Stick/Up = `Axis 410`
Guitar/Stick/Down = `Axis 411`
Guitar/Stick/Left = `Axis 412`
Guitar/Stick/Right = `Axis 413`
Guitar/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Guitar/Stick/Center = 0,00 0,00
Guitar/Whammy/Bar = `Axis 414`
Drums/Buttons/- = `Button 500`
Drums/Buttons/+ = `Button 501`
Expand All @@ -116,8 +108,6 @@ Drums/Stick/Up = `Axis 509`
Drums/Stick/Down = `Axis 510`
Drums/Stick/Left = `Axis 511`
Drums/Stick/Right = `Axis 512`
Drums/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Drums/Stick/Center = 0,00 0,00
Turntable/Buttons/Green Left = `Button 600`
Turntable/Buttons/Red Left = `Button 601`
Turntable/Buttons/Blue Left = `Button 602`
Expand All @@ -136,8 +126,6 @@ Turntable/Stick/Up = `Axis 617`
Turntable/Stick/Down = `Axis 618`
Turntable/Stick/Left = `Axis 619`
Turntable/Stick/Right = `Axis 620`
Turntable/Stick/Calibration = 100,00 141,42 100,00 141,42 100,00 141,42 100,00 141,42
Turntable/Stick/Center = 0,00 0,00
Turntable/Effect/Dial = `Axis 621`
Turntable/Crossfade/Left = `Axis 623`
Turntable/Crossfade/Right = `Axis 624`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -269,6 +269,9 @@ public static void rumble(int padID, double state)
public static native void SetMotionSensorsEnabled(boolean accelerometerEnabled,
boolean gyroscopeEnabled);

// Angle is in radians and should be non-negative
public static native double GetInputRadiusAtAngle(int emu_pad_id, int stick, double angle);

public static native void NewGameIniFile();

public static native void LoadGameIniFile(String gameId);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
import android.graphics.drawable.BitmapDrawable;
import android.view.MotionEvent;

import org.dolphinemu.dolphinemu.NativeLibrary;

/**
* Custom {@link BitmapDrawable} that is capable
* of storing it's own ID.
Expand Down Expand Up @@ -214,21 +216,27 @@ public int[] getAxisIDs()

private void SetInnerBounds()
{
int X = getVirtBounds().centerX() + (int) ((axises[1]) * (getVirtBounds().width() / 2));
int Y = getVirtBounds().centerY() + (int) ((axises[0]) * (getVirtBounds().height() / 2));

if (X > getVirtBounds().centerX() + (getVirtBounds().width() / 2))
X = getVirtBounds().centerX() + (getVirtBounds().width() / 2);
if (X < getVirtBounds().centerX() - (getVirtBounds().width() / 2))
X = getVirtBounds().centerX() - (getVirtBounds().width() / 2);
if (Y > getVirtBounds().centerY() + (getVirtBounds().height() / 2))
Y = getVirtBounds().centerY() + (getVirtBounds().height() / 2);
if (Y < getVirtBounds().centerY() - (getVirtBounds().height() / 2))
Y = getVirtBounds().centerY() - (getVirtBounds().height() / 2);
double y = axises[0];
double x = axises[1];

double angle = Math.atan2(y, x) + Math.PI + Math.PI;
double radius = Math.hypot(y, x);
double maxRadius = NativeLibrary.GetInputRadiusAtAngle(0, mJoystickType, angle);
if (radius > maxRadius)
{
y = maxRadius * Math.sin(angle);
x = maxRadius * Math.cos(angle);
axises[0] = (float) y;
axises[1] = (float) x;
}

int pixelX = getVirtBounds().centerX() + (int) (x * (getVirtBounds().width() / 2));
int pixelY = getVirtBounds().centerY() + (int) (y * (getVirtBounds().height() / 2));

int width = mPressedStateInnerBitmap.getBounds().width() / 2;
int height = mPressedStateInnerBitmap.getBounds().height() / 2;
mDefaultStateInnerBitmap.setBounds(X - width, Y - height, X + width, Y + height);
mDefaultStateInnerBitmap.setBounds(pixelX - width, pixelY - height, pixelX + width,
pixelY + height);
mPressedStateInnerBitmap.setBounds(mDefaultStateInnerBitmap.getBounds());
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public final class DirectoryInitialization
"org.dolphinemu.dolphinemu.DIRECTORY_INITIALIZATION";

public static final String EXTRA_STATE = "directoryState";
private static final int WiimoteNewVersion = 4; // Last changed in PR 8503
private static final int WiimoteNewVersion = 5; // Last changed in PR 8907
private static volatile DirectoryInitializationState directoryState = null;
private static String userPath;
private static String internalPath;
Expand Down