Автор Тема: Добавление джойстика в новую версию Snes9xRx для Wii  (Прочитано 1534 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн cerealkiller

  • Пользователь
  • Сообщений: 57
    • Просмотр профиля
Для Wii есть новая версия эмулятора Snes9xRx  https://gbatemp.net/threads/snes9x-rx-a-new-fork.527131/ с поддержкой некоторых USB падов, кто-нибудь знает как добавить туда ps4 third party пад, вот такие данные у него. (Код ведь оpen source)


Оффлайн Koyote

  • Пользователь
  • Сообщений: 82
    • Просмотр профиля
Это ты тот клоун которого вчера на gbatemp куи облизывать отправили?
https://gbatemp.net/threads/snes9x-rx-a-new-fork.527131/page-37#post-9969431
Лол.
А ведь там довольно приличные и доброжелательные люди.

Впрочем, можешь огласить сумму вознаграждения.

Оффлайн Zykon

  • Emu-Land Team
  • Сообщений: 1199
  • Пол: Мужской
    • Steam
    • Youtube
    • Просмотр профиля
В теории вроде бы ничего сложного, найти или написать библиотеку под DS4, добавить библиотеку в сурсы данного эмуля и написать пару файлов в одном из которых будут прописаны все кнопки, ну а так там есть библиотека под х360 и под DS3

Оффлайн nonamezerox

  • Пользователь
  • Сообщений: 322
    • Просмотр профиля
cerealkiller,
ну так а как это сделать?

См файл sicksaxis.c в исходниках и https://github.com/j0lama/DS4Lib

Нужно из двух написать одно.


Оффлайн cerealkiller

  • Пользователь
  • Сообщений: 57
    • Просмотр профиля
cerealkiller,
См файл sicksaxis.c в исходниках и https://github.com/j0lama/DS4Lib

Нужно из двух написать одно.




Переживете 🤣🤣🤣

Я ни хрена в этом не понимаю, нормально кто-нибудь может объяснить что нужно сделать?

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1570
  • Пол: Мужской
    • Steam
    • Просмотр профиля
cerealkiller, что тебе объяснить? Как программировать?

Оффлайн cerealkiller

  • Пользователь
  • Сообщений: 57
    • Просмотр профиля
cerealkiller, что тебе объяснить? Как программировать?

А ещё лучше как сделать

Оффлайн JARL32

  • Пользователь
  • Сообщений: 605
  • Пол: Мужской
  • Verum facies
    • Просмотр профиля
Там на гбатемпе есть отличное предложение - купить gamecube и classic controller, можно даже на али, тем более, что через месяц черная пятница и рублей 100 можно будет сэкономить. И не парить мозги не себе, не людям.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5077
    • Просмотр профиля
Можно попробовать fakemote, если добавить свой VIP&PID и скомпилировать. Заменить:
   static const struct device_id_t compatible[] = {
      {SONY_VID, 0x05c4},
      {SONY_VID, 0x09cc},
на (в данном случае):
Цитата
   static const struct device_id_t compatible[] = {
      {SONY_VID, 0x05c4},
      {SONY_VID, 0x09cc},
      {0x0C12, 0x0E17},

Если изменять код эмулятора, то, как я понял, для базовой поддержки кнопок (без стиков, вибрации, LED и т. п.) достаточно по аналогии с https://github.com/niuus/Snes9xRX/blob/1c70e2486af14990fe61ae3b4c9a2c540a75ee83/source/utils/hornet.c немного изменить код, можно даже сам hornet.c изменить. В RetroArch и другом софте есть конфиги для устройств, значит в hornet.c нужно изменить VID&PID и какие байты отвечают за кнопки. В этом же эмуляторе retrode.c почти как hornet.c, вместо реализации конфигов. Конкретно заменить:
Какие кнопки отвечают за что есть, например в fakemote/blob/main/source/usb_driver_ds4.c или https://www.psdevwiki.com/ps4/DS4-USB#Data_Format. Должно получиться как-то так:
В buf наверно индекс на 1 меньше, если Report ID нет, тогда buf[5] заменить на buf[4], а buf[6] на buf[5].