소스 검색

hid: Implement CreateActiveVibrationDeviceList.

bunnei 8 년 전
부모
커밋
ad97414057
1개의 변경된 파일25개의 추가작업 그리고 0개의 파일을 삭제
  1. 25 0
      src/core/hle/service/hid/hid.cpp

+ 25 - 0
src/core/hle/service/hid/hid.cpp

@@ -151,11 +151,29 @@ private:
         buttons;
 };
 
+class IActiveVibrationDeviceList final : public ServiceFramework<IActiveVibrationDeviceList> {
+public:
+    IActiveVibrationDeviceList() : ServiceFramework("IActiveVibrationDeviceList") {
+        static const FunctionInfo functions[] = {
+            {0, &IActiveVibrationDeviceList::ActivateVibrationDevice, "ActivateVibrationDevice"},
+        };
+        RegisterHandlers(functions);
+    }
+
+private:
+    void ActivateVibrationDevice(Kernel::HLERequestContext& ctx) {
+        IPC::ResponseBuilder rb{ctx, 2};
+        rb.Push(RESULT_SUCCESS);
+        LOG_WARNING(Service_HID, "(STUBBED) called");
+    }
+};
+
 class Hid final : public ServiceFramework<Hid> {
 public:
     Hid() : ServiceFramework("hid") {
         static const FunctionInfo functions[] = {
             {0x00000000, &Hid::CreateAppletResource, "CreateAppletResource"},
+            {203, &Hid::CreateActiveVibrationDeviceList, "CreateActiveVibrationDeviceList"},
         };
         RegisterHandlers(functions);
     }
@@ -174,6 +192,13 @@ private:
         rb.PushIpcInterface<IAppletResource>(applet_resource);
         LOG_DEBUG(Service_HID, "called");
     }
+
+    void CreateActiveVibrationDeviceList(Kernel::HLERequestContext& ctx) {
+        IPC::ResponseBuilder rb{ctx, 2, 0, 1};
+        rb.Push(RESULT_SUCCESS);
+        rb.PushIpcInterface<IActiveVibrationDeviceList>();
+        LOG_DEBUG(Service_HID, "called");
+    }
 };
 
 void ReloadInputDevices() {}