Jump to content
Korean Random

kharlashkin

User
  • Content Count

    829
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by kharlashkin

  1. Плюсанул, интересно данный пост как то связан с этим? После вашего сообщения в теме по ссылке так же начал изучать это направление, но знаний и опыта, как и времени учиться нет и скорее всего не будет. А можно ссылку на подтверждение, что ребята из XVM будут использовать *.pyd?
  2. Конечно сделаю, сегодня заберу наборчик бит и буду опять пробовать разбирать.
  3. Пришла беда откуда не ждали - под наклеечкой на центральном цилиндре руля оказался не torx а хитрый шестигранник. Как результат разборка руля пока отложена...
  4. 22" вроде нормально, 24 от 22 (даже 21,5) отличается только размером пикселя 0,25 против 0,27 мм.
  5. Хм... Копался в магазине комплектующих для Xbox360 случайно наткнулся на Xbox 360 Wireless Microphone. Судя по видео подключению к консоли - соединяется как и гарнитура от геймпада без геймпада ;) Интересно стало что - в описании есть фраза "Sensors that detect when you lift or move the microphone" - т.е. в данном девайсе есть акселерометр, и непонятно подключится ли он к ПК или нет. Потому как если подключится можно будет выяснить каким образом ПК видит акселерометр, через тот же AutoHotkey. Идея в чем - может получится сделать физический или программный переключатель между гироскопом/асклерометром для разных игр. Просто боюсь выброшу денег на девайс а он для ПК окажется бесполезен как Xbox 360 Chatpad. P.S. Поставил на закачку "в ознакомительных целях" Guitar Hero, проверить каким образом работает геймпад в таких играх (и нужен ли там акселерометр и какие функции он там может выполнять). Заказал отвертку по Украине, из Китая не охота ждать, хоть и дешевле в 4 раза :)
  6. А ещё лучше совместить канальный кондиционер и воздуховодом подавать под подставку охлажденный воздух (+16) прямо под подставку ;)
  7. А нафига? Ноутбук не стационарный ПК - кулер особо не заменишь на более производительный и азотом не зальешь ;)
  8. Добавлю вводные данные по геймпаду. Итак, беспроводных есть два вида - старый, так называемый Wireless CG (их есть у меня). Кстати как мне кажется работает лучше нового - вибрация сильнее, нет кваканья в гарнитуре. Новая модификация, Wireless CG2, вибра слабее иногда квакает гарнитура ;) Фото взято с форума, где автор (RDC) отказал мне в исходниках (я его понимаю - убил много времени, а тут я такой - "Дай!"), но в принципе человек очень отзывчив и может помочь в реализации. Вот ещё какая-то схема от него:
  9. Гироскоп. Зачем изобретать велосипед, если все придумано до нас, я всё таки за разбор руля. Правда нужный человечек вернулся из отпуска но необходимых отверток у него нет. Есть вариант с Tilt Board v3, но мое мнение лучше попробовать с оригинальным рулем. Недостающее заказать - не вопрос, с доставкой в руки ;) Переделка схемы - на америкосовском форуме есть разбор оригинальной трассировки платки контроллера, и есть практически готовый шаблон для переноса в редактор схем картинку с miniCG2.
  10. Оффтоп, вспомнилась история одна, не моё, рассказываю как есть. В прошлом веке один из очень хороших мужиков (работает у нас в учебном центре сейчас) был зам директора и присутствовал на конфликте при запуске нефтехимического предприятия в Прибалтике (80-е).Местные рабочие заполняли всевозможные рабочие журналы (дежурство, пожарный, вентиляции и прочее) на литовском языке, так как он у них родной. Данное начало было положено главным инженером того завода, так как по ГОСТам документацию можно вести не только на русском, но и на родном языках. Послало его руководство из Северодонецка на место разобраться что к чему. На четвертые сутки посетила его мысль - наша то компания многонациональная, и украинцы начали заполнять документацию на украинском, грузины на грузинском, татары на татарском и прочее. Прошло несколько дней и этот человек был приглашен к директору и главному инженеру литовского предприятия "на ковер": "В чем дело? Местные рабочие понимают документацию разработчика (русский), свои записи в журналах (литовский), но записи пуско-наладочной организации не понимают вообще!" О чем был дан ответ, что все рабочие заполняют документацию на своем родном языке. После чего вышел отдельный приказ предприятия, что всю документацию необходимо вести на языке разработчика рабочего проекта и пусконаладочных программ (русский). А Вы говорите... P.S. Наша конторка занимает пуско-наладкой нефтехимических производств.
  11. Да ладно, очень даже аркада для пышь-пышь ;) с геймпадом на диване в ПК версию перед теликом играю уже 2 года 8 месяцев и плевать мне консольная она или нет. Кто сказал страдать? Я её запускаю для того чтобы расслабиться и консольно-диванный вариант игры перевешивает преимущества клаво-мыши и неудобной позы. Я не хочу играть в "коробочную" версию танчиков, да и Xbox 360 нет у меня, а вот возможность использования геймпада в игре - открыло бы разработчикам WG путь к тому же Steam например. Приведу пример моих размышлений с оф.форума:
  12. Зачем так сложно? Нельзя ли как в документации мелкомягких отдельно левый и правый, для остановки отправляем 0? Время вибрации берется из файлов накидки, уровень вибраций через коэффициенты проверяется каждые 10мс. Добавил во второе сообщение исходники всего мода. В общем чего сделал "методом тыка". Взял XVM для предыдущего патча, удалил все в нем кроме вибромода и xfw, вибрация заработала :) доволен как слон. Теперь дилемма - нужен ли мне XVM, как то за год я к нему попривык, хоть и не пользовал ничего кроме мини-карты и с недавнего времени автовозврат съемного оборудования. Ну и статистики
  13. Отвертка там torx, вот на али есть, у меня есть знакомый инженер по ноутбукам - у него набор отверток ого-го, но он в Крыму сейчас в отпуске, как вернется так и пойду за отверткой к нему. Про запрос - я понимал на тот момент что добавить поддержку геймпада в танки могут сделать безо всяких "плясок с бубном" буквально за один патч - реально там работы паре программеров на пару дней. Но вот принципиальные какие - сами активно пытаются продвигать танчики в консоли, но поддержка консольных девайсов в игре - ни-ни!
  14. Ну вот есть соответствующий код на С++ Соответствующая документация от Мелкомягких
  15. По ссылке ходили? 11,6, 14 и 15,6 размеры есть.
  16. Да вот это целое дело, там специальная отвертка нужна (пока не приобрел). Проблемы совместимости не будет - так как руль ПК видит как геймпад без рабочих стиков (вернее только с одной рабочей осью Х). Уверен что начинка одна - разводка должна быть разной на платках. Мне это не кажется? Оставлю для истории это здесь:
  17. По размеру платки, диаметр D-Pad контроллера 22 мм (если мне память не изменяет). нужно все таки разобрать и померять всё. Так же имеется дома Wii Remote, который Nintendo изначально проектировала для одной руки. Вот тут есть его детальное описание внутренностей. Я думаю что размеры платки будут по размеру самого контроллера, как на картинке вверху плюс/минус. Давайте попробуем сделать как - ограничим ширину платы до 30 мм, т.е. она должна быть уже miniCG2, а по длине нужно сориентироваться, когда будем размечать места для кнопок/стика/крестовины/вибромоторов и прочего. Просто есть ещё руль, который сразу в базе имеет гироскоп. И он у меня имеется, просто нужно добраться с отверткой до него и разобрать и понять какой именно "родной" гироскоп используется.
  18. Прошу прощения работы навалилось на меня что-то. Вот нагуглил ссылку с переделкой контроллера, где вместо левого стика используют гироскоп.
  19. Стало интересно, кто за что ставит плюсы/минусы на форуме.

    1. kharlashkin

      kharlashkin

      Кому? ангелсофту?

    2. vlad_cs_sr
    3. TornadoCat

      TornadoCat

      Ааха, ангелсофт наверное в шоке )

    4. Show next comments  36 more
  20. Так в том то и дело что предложенное решение @sirmax наверное единственное рабочее и правильное.
  21. Ну смотрите, по ссылке на miniCG2 есть размеры платки (35.5mm x 57.5mm x 5mm), т.е. можно примерно представить размеры компонентов. Общая концепция (я не знаю правильная или нет) размещения компонентов выше я представлял. Мне вот стало интересно маркировка компонентов на платке соответствует маркировке на оригинальной платке? Я могу разобрать один из своих контроллеров и померять размеры посадочных мест под кнопки/крестовину/стики/курки/бамперы на плате. И думаю нужно разобрать руль и сфоткать все (кстати не гуглится разбор нового руля). Чтобы выяснить используемую родную мелкомягкую схему включения гироскопа в платформу Xbox 360 controller.
  22. Вы рассказываете мне то что я и так могу сообразить ;) Вопрос в другом - нужно в каком то редакторе эту плату вычертить, возможно пару экземпляров заказать ну или вытравить самому, потом с геймпада перенести комплектующие, проверить работоспособность, только потом можно переходить к корпусу, кнопкам/стикам/крестовине и удобству хвата. Повторюсь - я в этом полный профан и предлагаю любому желающему попробовать в этом свои силы. От себя могу обещать только поддержку духовно и немного материально ;) Хотите заняться?
  23. Добавил принты в код - ничего не получилось внятное у меня. Никогда логами не занимался, подскажите пример хороший пожалуйста.
  24. Я ждал Вас в этой теме, можно сказать что под Вас она была создана;) Вот набросал как должна выглядеть новая платка: Вот есть разбор трассировки оригинальной платы. Моё мнение нужно как то комплексно подойти к этому вопросу, чтобы одновременно разрабатывать корпус/плату/расположение кнопок. Вот хвалился что у них на предприятии что-то подобное делают, может подскажет что куда. Хочется сделать все таки красиво, без "колхоза".
  25. Собственно вот думаю будет понятно: import ctypes class XINPUT_VIBRATION(ctypes.Structure): _fields_ = [('wLeftMotorSpeed', ctypes.c_ushort), ('wRightMotorSpeed', ctypes.c_ushort)] class gpXInputClass: def __init__(self): xInputDLLFileName = 'xinput1_3' xinput = ctypes.WinDLL(xInputDLLFileName) self.__XInputSetState = xinput.XInputSetState self.__XInputSetState.argtypes = [ctypes.c_uint, ctypes.POINTER(XINPUT_VIBRATION)] self.__XInputSetState.restype = ctypes.c_uint self.__l = 0 self.__r = 0 def adjust_vibration(self, left_motor_delta, right_motor_delta, set = False, controller = 0): if set: self.__l = left_motor self.__r = right_motor else: self.__l += left_motor_delta self.__r += right_motor_delta tempL = self.__l tempR = self.__r if self.__l > 255: tempL = 255 elif self.__l < 0: tempL = 0 if self.__r > 255: tempR = 255 elif self.__r < 0: tempR = 0 vibration = XINPUT_VIBRATION(int(tempL * 65535 / 255), int(tempR * 65535 / 255)) self.__XInputSetState(controller, ctypes.byref(vibration)) def stop_vibration(self, controller = 0): vibration = XINPUT_VIBRATION(0, 0) self.__XInputSetState(controller, ctypes.byref(vibration)) gpXInputObject = gpXInputClass()
×
×
  • Create New...