mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-11-03 23:28:48 +00:00 
			
		
		
		
	Sources: Run clang-format on everything.
This commit is contained in:
		
							parent
							
								
									fe948af095
								
							
						
					
					
						commit
						dc8479928c
					
				
					 386 changed files with 19560 additions and 18080 deletions
				
			
		| 
						 | 
				
			
			@ -4,13 +4,13 @@
 | 
			
		|||
 | 
			
		||||
#include <cmath>
 | 
			
		||||
 | 
			
		||||
#include "common/logging/log.h"
 | 
			
		||||
#include "common/emu_window.h"
 | 
			
		||||
#include "common/logging/log.h"
 | 
			
		||||
 | 
			
		||||
#include "core/hle/service/service.h"
 | 
			
		||||
#include "core/hle/service/hid/hid.h"
 | 
			
		||||
#include "core/hle/service/hid/hid_spvr.h"
 | 
			
		||||
#include "core/hle/service/hid/hid_user.h"
 | 
			
		||||
#include "core/hle/service/service.h"
 | 
			
		||||
 | 
			
		||||
#include "core/core_timing.h"
 | 
			
		||||
#include "core/hle/kernel/event.h"
 | 
			
		||||
| 
						 | 
				
			
			@ -37,11 +37,14 @@ static u32 next_accelerometer_index;
 | 
			
		|||
static u32 next_gyroscope_index;
 | 
			
		||||
 | 
			
		||||
static int enable_accelerometer_count = 0; // positive means enabled
 | 
			
		||||
static int enable_gyroscope_count = 0; // positive means enabled
 | 
			
		||||
static int enable_gyroscope_count = 0;     // positive means enabled
 | 
			
		||||
 | 
			
		||||
static PadState GetCirclePadDirectionState(s16 circle_pad_x, s16 circle_pad_y) {
 | 
			
		||||
    constexpr float TAN30 = 0.577350269, TAN60 = 1 / TAN30; // 30 degree and 60 degree are angular thresholds for directions
 | 
			
		||||
    constexpr int CIRCLE_PAD_THRESHOLD_SQUARE = 40 * 40; // a circle pad radius greater than 40 will trigger circle pad direction
 | 
			
		||||
    constexpr float TAN30 = 0.577350269,
 | 
			
		||||
                    TAN60 =
 | 
			
		||||
                        1 / TAN30; // 30 degree and 60 degree are angular thresholds for directions
 | 
			
		||||
    constexpr int CIRCLE_PAD_THRESHOLD_SQUARE =
 | 
			
		||||
        40 * 40; // a circle pad radius greater than 40 will trigger circle pad direction
 | 
			
		||||
    PadState state;
 | 
			
		||||
    state.hex = 0;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -90,7 +93,7 @@ void Update() {
 | 
			
		|||
    PadState old_state = mem->pad.entries[last_entry_index].current_state;
 | 
			
		||||
 | 
			
		||||
    // Compute bitmask with 1s for bits different from the old state
 | 
			
		||||
    PadState changed = { { (state.hex ^ old_state.hex) } };
 | 
			
		||||
    PadState changed = {{(state.hex ^ old_state.hex)}};
 | 
			
		||||
 | 
			
		||||
    // Get the current Pad entry
 | 
			
		||||
    PadDataEntry& pad_entry = mem->pad.entries[mem->pad.index];
 | 
			
		||||
| 
						 | 
				
			
			@ -135,11 +138,13 @@ void Update() {
 | 
			
		|||
    // Update accelerometer
 | 
			
		||||
    if (enable_accelerometer_count > 0) {
 | 
			
		||||
        mem->accelerometer.index = next_accelerometer_index;
 | 
			
		||||
        next_accelerometer_index = (next_accelerometer_index + 1) % mem->accelerometer.entries.size();
 | 
			
		||||
        next_accelerometer_index =
 | 
			
		||||
            (next_accelerometer_index + 1) % mem->accelerometer.entries.size();
 | 
			
		||||
 | 
			
		||||
        AccelerometerDataEntry& accelerometer_entry = mem->accelerometer.entries[mem->accelerometer.index];
 | 
			
		||||
        std::tie(accelerometer_entry.x, accelerometer_entry.y, accelerometer_entry.z)
 | 
			
		||||
            = VideoCore::g_emu_window->GetAccelerometerState();
 | 
			
		||||
        AccelerometerDataEntry& accelerometer_entry =
 | 
			
		||||
            mem->accelerometer.entries[mem->accelerometer.index];
 | 
			
		||||
        std::tie(accelerometer_entry.x, accelerometer_entry.y, accelerometer_entry.z) =
 | 
			
		||||
            VideoCore::g_emu_window->GetAccelerometerState();
 | 
			
		||||
 | 
			
		||||
        // Make up "raw" entry
 | 
			
		||||
        // TODO(wwylele):
 | 
			
		||||
| 
						 | 
				
			
			@ -167,8 +172,8 @@ void Update() {
 | 
			
		|||
        next_gyroscope_index = (next_gyroscope_index + 1) % mem->gyroscope.entries.size();
 | 
			
		||||
 | 
			
		||||
        GyroscopeDataEntry& gyroscope_entry = mem->gyroscope.entries[mem->gyroscope.index];
 | 
			
		||||
        std::tie(gyroscope_entry.x, gyroscope_entry.y, gyroscope_entry.z)
 | 
			
		||||
            = VideoCore::g_emu_window->GetGyroscopeState();
 | 
			
		||||
        std::tie(gyroscope_entry.x, gyroscope_entry.y, gyroscope_entry.z) =
 | 
			
		||||
            VideoCore::g_emu_window->GetGyroscopeState();
 | 
			
		||||
 | 
			
		||||
        // Make up "raw" entry
 | 
			
		||||
        mem->gyroscope.raw_entry.x = gyroscope_entry.x;
 | 
			
		||||
| 
						 | 
				
			
			@ -188,7 +193,7 @@ void Update() {
 | 
			
		|||
void GetIPCHandles(Service::Interface* self) {
 | 
			
		||||
    u32* cmd_buff = Kernel::GetCommandBuffer();
 | 
			
		||||
 | 
			
		||||
    cmd_buff[1] = 0; // No error
 | 
			
		||||
    cmd_buff[1] = 0;          // No error
 | 
			
		||||
    cmd_buff[2] = 0x14000000; // IPC Command Structure translate-header
 | 
			
		||||
    // TODO(yuriks): Return error from SendSyncRequest is this fails (part of IPC marshalling)
 | 
			
		||||
    cmd_buff[3] = Kernel::g_handle_table.Create(Service::HID::shared_mem).MoveFrom();
 | 
			
		||||
| 
						 | 
				
			
			@ -259,9 +264,7 @@ void GetGyroscopeLowCalibrateParam(Service::Interface* self) {
 | 
			
		|||
 | 
			
		||||
    const s16 param_unit = 6700; // an approximate value taken from hw
 | 
			
		||||
    GyroscopeCalibrateParam param = {
 | 
			
		||||
        { 0, param_unit, -param_unit },
 | 
			
		||||
        { 0, param_unit, -param_unit },
 | 
			
		||||
        { 0, param_unit, -param_unit },
 | 
			
		||||
        {0, param_unit, -param_unit}, {0, param_unit, -param_unit}, {0, param_unit, -param_unit},
 | 
			
		||||
    };
 | 
			
		||||
    memcpy(&cmd_buff[2], ¶m, sizeof(param));
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -286,9 +289,9 @@ void Init() {
 | 
			
		|||
    AddService(new HID_SPVR_Interface);
 | 
			
		||||
 | 
			
		||||
    using Kernel::MemoryPermission;
 | 
			
		||||
    shared_mem = SharedMemory::Create(nullptr, 0x1000,
 | 
			
		||||
                                      MemoryPermission::ReadWrite, MemoryPermission::Read,
 | 
			
		||||
                                      0, Kernel::MemoryRegion::BASE, "HID:SharedMemory");
 | 
			
		||||
    shared_mem =
 | 
			
		||||
        SharedMemory::Create(nullptr, 0x1000, MemoryPermission::ReadWrite, MemoryPermission::Read,
 | 
			
		||||
                             0, Kernel::MemoryRegion::BASE, "HID:SharedMemory");
 | 
			
		||||
 | 
			
		||||
    next_pad_index = 0;
 | 
			
		||||
    next_touch_index = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -296,9 +299,9 @@ void Init() {
 | 
			
		|||
    // Create event handles
 | 
			
		||||
    event_pad_or_touch_1 = Event::Create(ResetType::OneShot, "HID:EventPadOrTouch1");
 | 
			
		||||
    event_pad_or_touch_2 = Event::Create(ResetType::OneShot, "HID:EventPadOrTouch2");
 | 
			
		||||
    event_accelerometer  = Event::Create(ResetType::OneShot, "HID:EventAccelerometer");
 | 
			
		||||
    event_gyroscope      = Event::Create(ResetType::OneShot, "HID:EventGyroscope");
 | 
			
		||||
    event_debug_pad      = Event::Create(ResetType::OneShot, "HID:EventDebugPad");
 | 
			
		||||
    event_accelerometer = Event::Create(ResetType::OneShot, "HID:EventAccelerometer");
 | 
			
		||||
    event_gyroscope = Event::Create(ResetType::OneShot, "HID:EventGyroscope");
 | 
			
		||||
    event_debug_pad = Event::Create(ResetType::OneShot, "HID:EventDebugPad");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Shutdown() {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,10 +9,10 @@
 | 
			
		|||
#ifndef _MSC_VER
 | 
			
		||||
#include <cstddef>
 | 
			
		||||
#endif
 | 
			
		||||
#include "core/settings.h"
 | 
			
		||||
#include "common/bit_field.h"
 | 
			
		||||
#include "common/common_funcs.h"
 | 
			
		||||
#include "common/common_types.h"
 | 
			
		||||
#include "core/settings.h"
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -103,7 +103,7 @@ struct SharedMem {
 | 
			
		|||
    struct {
 | 
			
		||||
        s64 index_reset_ticks; ///< CPU tick count for when HID module updated entry index 0
 | 
			
		||||
        s64 index_reset_ticks_previous; ///< Previous `index_reset_ticks`
 | 
			
		||||
        u32 index; ///< Index of the last updated pad state entry
 | 
			
		||||
        u32 index;                      ///< Index of the last updated pad state entry
 | 
			
		||||
 | 
			
		||||
        INSERT_PADDING_WORDS(0x2);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -121,7 +121,7 @@ struct SharedMem {
 | 
			
		|||
    struct {
 | 
			
		||||
        s64 index_reset_ticks; ///< CPU tick count for when HID module updated entry index 0
 | 
			
		||||
        s64 index_reset_ticks_previous; ///< Previous `index_reset_ticks`
 | 
			
		||||
        u32 index; ///< Index of the last updated touch entry
 | 
			
		||||
        u32 index;                      ///< Index of the last updated touch entry
 | 
			
		||||
 | 
			
		||||
        INSERT_PADDING_WORDS(0x1);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -135,7 +135,7 @@ struct SharedMem {
 | 
			
		|||
    struct {
 | 
			
		||||
        s64 index_reset_ticks; ///< CPU tick count for when HID module updated entry index 0
 | 
			
		||||
        s64 index_reset_ticks_previous; ///< Previous `index_reset_ticks`
 | 
			
		||||
        u32 index; ///< Index of the last updated accelerometer entry
 | 
			
		||||
        u32 index;                      ///< Index of the last updated accelerometer entry
 | 
			
		||||
 | 
			
		||||
        INSERT_PADDING_WORDS(0x1);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -149,7 +149,7 @@ struct SharedMem {
 | 
			
		|||
    struct {
 | 
			
		||||
        s64 index_reset_ticks; ///< CPU tick count for when HID module updated entry index 0
 | 
			
		||||
        s64 index_reset_ticks_previous; ///< Previous `index_reset_ticks`
 | 
			
		||||
        u32 index; ///< Index of the last updated accelerometer entry
 | 
			
		||||
        u32 index;                      ///< Index of the last updated accelerometer entry
 | 
			
		||||
 | 
			
		||||
        INSERT_PADDING_WORDS(0x1);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -176,9 +176,9 @@ struct GyroscopeCalibrateParam {
 | 
			
		|||
//       is technically allowed since C++11. This macro should be enabled once MSVC adds
 | 
			
		||||
//       support for that.
 | 
			
		||||
#ifndef _MSC_VER
 | 
			
		||||
#define ASSERT_REG_POSITION(field_name, position)                  \
 | 
			
		||||
    static_assert(offsetof(SharedMem, field_name) == position * 4, \
 | 
			
		||||
                  "Field "#field_name" has invalid position")
 | 
			
		||||
#define ASSERT_REG_POSITION(field_name, position)                                                  \
 | 
			
		||||
    static_assert(offsetof(SharedMem, field_name) == position * 4,                                 \
 | 
			
		||||
                  "Field " #field_name " has invalid position")
 | 
			
		||||
 | 
			
		||||
ASSERT_REG_POSITION(pad.index_reset_ticks, 0x0);
 | 
			
		||||
ASSERT_REG_POSITION(touch.index_reset_ticks, 0x2A);
 | 
			
		||||
| 
						 | 
				
			
			@ -187,33 +187,33 @@ ASSERT_REG_POSITION(touch.index_reset_ticks, 0x2A);
 | 
			
		|||
#endif // !defined(_MSC_VER)
 | 
			
		||||
 | 
			
		||||
// Pre-defined PadStates for single button presses
 | 
			
		||||
const PadState PAD_NONE         = {{0}};
 | 
			
		||||
const PadState PAD_A            = {{1u << 0}};
 | 
			
		||||
const PadState PAD_B            = {{1u << 1}};
 | 
			
		||||
const PadState PAD_SELECT       = {{1u << 2}};
 | 
			
		||||
const PadState PAD_START        = {{1u << 3}};
 | 
			
		||||
const PadState PAD_RIGHT        = {{1u << 4}};
 | 
			
		||||
const PadState PAD_LEFT         = {{1u << 5}};
 | 
			
		||||
const PadState PAD_UP           = {{1u << 6}};
 | 
			
		||||
const PadState PAD_DOWN         = {{1u << 7}};
 | 
			
		||||
const PadState PAD_R            = {{1u << 8}};
 | 
			
		||||
const PadState PAD_L            = {{1u << 9}};
 | 
			
		||||
const PadState PAD_X            = {{1u << 10}};
 | 
			
		||||
const PadState PAD_Y            = {{1u << 11}};
 | 
			
		||||
const PadState PAD_NONE = {{0}};
 | 
			
		||||
const PadState PAD_A = {{1u << 0}};
 | 
			
		||||
const PadState PAD_B = {{1u << 1}};
 | 
			
		||||
const PadState PAD_SELECT = {{1u << 2}};
 | 
			
		||||
const PadState PAD_START = {{1u << 3}};
 | 
			
		||||
const PadState PAD_RIGHT = {{1u << 4}};
 | 
			
		||||
const PadState PAD_LEFT = {{1u << 5}};
 | 
			
		||||
const PadState PAD_UP = {{1u << 6}};
 | 
			
		||||
const PadState PAD_DOWN = {{1u << 7}};
 | 
			
		||||
const PadState PAD_R = {{1u << 8}};
 | 
			
		||||
const PadState PAD_L = {{1u << 9}};
 | 
			
		||||
const PadState PAD_X = {{1u << 10}};
 | 
			
		||||
const PadState PAD_Y = {{1u << 11}};
 | 
			
		||||
 | 
			
		||||
const PadState PAD_ZL           = {{1u << 14}};
 | 
			
		||||
const PadState PAD_ZR           = {{1u << 15}};
 | 
			
		||||
const PadState PAD_ZL = {{1u << 14}};
 | 
			
		||||
const PadState PAD_ZR = {{1u << 15}};
 | 
			
		||||
 | 
			
		||||
const PadState PAD_TOUCH        = {{1u << 20}};
 | 
			
		||||
const PadState PAD_TOUCH = {{1u << 20}};
 | 
			
		||||
 | 
			
		||||
const PadState PAD_C_RIGHT      = {{1u << 24}};
 | 
			
		||||
const PadState PAD_C_LEFT       = {{1u << 25}};
 | 
			
		||||
const PadState PAD_C_UP         = {{1u << 26}};
 | 
			
		||||
const PadState PAD_C_DOWN       = {{1u << 27}};
 | 
			
		||||
const PadState PAD_C_RIGHT = {{1u << 24}};
 | 
			
		||||
const PadState PAD_C_LEFT = {{1u << 25}};
 | 
			
		||||
const PadState PAD_C_UP = {{1u << 26}};
 | 
			
		||||
const PadState PAD_C_DOWN = {{1u << 27}};
 | 
			
		||||
const PadState PAD_CIRCLE_RIGHT = {{1u << 28}};
 | 
			
		||||
const PadState PAD_CIRCLE_LEFT  = {{1u << 29}};
 | 
			
		||||
const PadState PAD_CIRCLE_UP    = {{1u << 30}};
 | 
			
		||||
const PadState PAD_CIRCLE_DOWN  = {{1u << 31}};
 | 
			
		||||
const PadState PAD_CIRCLE_LEFT = {{1u << 29}};
 | 
			
		||||
const PadState PAD_CIRCLE_UP = {{1u << 30}};
 | 
			
		||||
const PadState PAD_CIRCLE_DOWN = {{1u << 31}};
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * HID::GetIPCHandles service function
 | 
			
		||||
| 
						 | 
				
			
			@ -305,6 +305,5 @@ void Init();
 | 
			
		|||
 | 
			
		||||
/// Shutdown HID service
 | 
			
		||||
void Shutdown();
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,16 +9,16 @@ namespace Service {
 | 
			
		|||
namespace HID {
 | 
			
		||||
 | 
			
		||||
const Interface::FunctionInfo FunctionTable[] = {
 | 
			
		||||
    {0x000A0000, GetIPCHandles,                      "GetIPCHandles"},
 | 
			
		||||
    {0x000B0000, nullptr,                            "StartAnalogStickCalibration"},
 | 
			
		||||
    {0x000E0000, nullptr,                            "GetAnalogStickCalibrateParam"},
 | 
			
		||||
    {0x00110000, EnableAccelerometer,                "EnableAccelerometer"},
 | 
			
		||||
    {0x00120000, DisableAccelerometer,               "DisableAccelerometer"},
 | 
			
		||||
    {0x00130000, EnableGyroscopeLow,                 "EnableGyroscopeLow"},
 | 
			
		||||
    {0x00140000, DisableGyroscopeLow,                "DisableGyroscopeLow"},
 | 
			
		||||
    {0x000A0000, GetIPCHandles, "GetIPCHandles"},
 | 
			
		||||
    {0x000B0000, nullptr, "StartAnalogStickCalibration"},
 | 
			
		||||
    {0x000E0000, nullptr, "GetAnalogStickCalibrateParam"},
 | 
			
		||||
    {0x00110000, EnableAccelerometer, "EnableAccelerometer"},
 | 
			
		||||
    {0x00120000, DisableAccelerometer, "DisableAccelerometer"},
 | 
			
		||||
    {0x00130000, EnableGyroscopeLow, "EnableGyroscopeLow"},
 | 
			
		||||
    {0x00140000, DisableGyroscopeLow, "DisableGyroscopeLow"},
 | 
			
		||||
    {0x00150000, GetGyroscopeLowRawToDpsCoefficient, "GetGyroscopeLowRawToDpsCoefficient"},
 | 
			
		||||
    {0x00160000, GetGyroscopeLowCalibrateParam,      "GetGyroscopeLowCalibrateParam"},
 | 
			
		||||
    {0x00170000, GetSoundVolume,                     "GetSoundVolume"},
 | 
			
		||||
    {0x00160000, GetGyroscopeLowCalibrateParam, "GetGyroscopeLowCalibrateParam"},
 | 
			
		||||
    {0x00170000, GetSoundVolume, "GetSoundVolume"},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
HID_SPVR_Interface::HID_SPVR_Interface() {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,16 +9,16 @@ namespace Service {
 | 
			
		|||
namespace HID {
 | 
			
		||||
 | 
			
		||||
const Interface::FunctionInfo FunctionTable[] = {
 | 
			
		||||
    {0x000A0000, GetIPCHandles,                      "GetIPCHandles"},
 | 
			
		||||
    {0x000B0000, nullptr,                            "StartAnalogStickCalibration"},
 | 
			
		||||
    {0x000E0000, nullptr,                            "GetAnalogStickCalibrateParam"},
 | 
			
		||||
    {0x00110000, EnableAccelerometer,                "EnableAccelerometer"},
 | 
			
		||||
    {0x00120000, DisableAccelerometer,               "DisableAccelerometer"},
 | 
			
		||||
    {0x00130000, EnableGyroscopeLow,                 "EnableGyroscopeLow"},
 | 
			
		||||
    {0x00140000, DisableGyroscopeLow,                "DisableGyroscopeLow"},
 | 
			
		||||
    {0x000A0000, GetIPCHandles, "GetIPCHandles"},
 | 
			
		||||
    {0x000B0000, nullptr, "StartAnalogStickCalibration"},
 | 
			
		||||
    {0x000E0000, nullptr, "GetAnalogStickCalibrateParam"},
 | 
			
		||||
    {0x00110000, EnableAccelerometer, "EnableAccelerometer"},
 | 
			
		||||
    {0x00120000, DisableAccelerometer, "DisableAccelerometer"},
 | 
			
		||||
    {0x00130000, EnableGyroscopeLow, "EnableGyroscopeLow"},
 | 
			
		||||
    {0x00140000, DisableGyroscopeLow, "DisableGyroscopeLow"},
 | 
			
		||||
    {0x00150000, GetGyroscopeLowRawToDpsCoefficient, "GetGyroscopeLowRawToDpsCoefficient"},
 | 
			
		||||
    {0x00160000, GetGyroscopeLowCalibrateParam,      "GetGyroscopeLowCalibrateParam"},
 | 
			
		||||
    {0x00170000, GetSoundVolume,                     "GetSoundVolume"},
 | 
			
		||||
    {0x00160000, GetGyroscopeLowCalibrateParam, "GetGyroscopeLowCalibrateParam"},
 | 
			
		||||
    {0x00170000, GetSoundVolume, "GetSoundVolume"},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
HID_U_Interface::HID_U_Interface() {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue