Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - kisKO

Страницы: [1]
1
ну может хоть тут кто подскажет, а то я уже не знаю как искать (( Была у меня денди когда то, в неё было записано 999 (много 9) игр, работала без картриджа. И там был хак танков, которые после первого уровня не возможно было пройти без бронебойного танка, так как на уровне было очень много брони. Как найти именно эту версию, подскажите, аааа???

2
Здравствуйте! А подскажите пожалуйста, много много лет назад у меня была денди, в которую были встроены игры и там были танки, которые нельзя было пройти без бронебойного танка. Очень хочу найти именно эту версию. Спасибо!

В сборнике танков проверил все, не нашел ( А может пропустил случайно.

3
В тиньку85 лезет 8 кБ... По крайней мере сейчас реализация HID вмещается и еще вагон места остается. Прикол в том, что все типа работает, но работает абсолютно неиграбельно, уже неделю гуглю, понять чужие исходники к сожалению очень сложно, нейросети выдают дичь, а я стараюсь разобраться )

Добавлено позже:
Все, разобрался. Вот код кому надо, джой подключать напрямую к плате дигиспарк. Для денди наверное проще некуда и никакого геморроя со сборкой громадных плат. 5 проводов всего.

#include <DigiJoystick.h>

#define DATA_PIN   0  // Выход 4021 (Q7)
#define LATCH_PIN  1  // Strobe (Latch) (PIN 12 на 4021)
#define CLOCK_PIN  2  // Clock (PIN 10 на 4021)

void setup() {
    pinMode(LATCH_PIN, OUTPUT);
    pinMode(CLOCK_PIN, OUTPUT);
    pinMode(DATA_PIN, INPUT);

    digitalWrite(LATCH_PIN, HIGH);
    digitalWrite(CLOCK_PIN, HIGH);

    //Serial.begin(9600); // Включаем отладку
}

void loop() {
    uint8_t buttons = readNESController();

    // Выводим состояние кнопок в Serial Monitor
    //Serial.print("Buttons: ");
   // Serial.println(buttons, BIN); // Вывод состояния кнопок в двоичном формате
   
    DigiJoystick.setButtons(buttons, 0);
    DigiJoystick.update();

    delay(5);
}

uint8_t readNESController() {
    uint8_t state = 0;

    digitalWrite(LATCH_PIN, HIGH);
    delayMicroseconds(5);
    digitalWrite(LATCH_PIN, LOW);
    delayMicroseconds(5);

    for (uint8_t i = 0; i < 8; i++) {
        digitalWrite(CLOCK_PIN, LOW);  // Начинаем такт
        delayMicroseconds(5);
       
        if (digitalRead(DATA_PIN)) {
            state |= (1 << i);  // Считываем бит
        }
       
        digitalWrite(CLOCK_PIN, HIGH); // Поднимаем такт
        delayMicroseconds(5);
    }

    return ~state;  // НЕ инвертируем, чтобы проверить, что приходит
}

Дата, латх и клок к соответствующим пинам дигиспарка, легко видно из кода. Инпут лаг на глаз не видно, ну и сойдет мне ))

4
А может вы в курсе, что за прикол или что я не так делаю. В принципе опросить джойстик и распознать его кнопки у меня получилось, далее в зависимости от кнопки я на ПК посылаю символ с клавиатуры, настраиваю эмулятор на эти же кнопки. Однако в игре все совсем плохо, движение рывками, удержание кнопки вообще не работает и в том же марио прыжки короткие. При этом на реальной клавиатуре все в полном порядке. Если открыть блокнот и нажимать кнопки джойстика, видно что все отрабатывает хорошо, типа.... Где можно почитать про все это более подробно, именно механизм эмуляции.

5
Спасибо! А вот это собирал кто-нибудь? https://radioded.ru/podklyuchenie-dzhojstika-ot-8-bitnykh-pristavok-k-kompyuteru/ очень не хочется плату собирать и АТ90УСБ в продаже у нас в городе нет, тянуть резину с али не охота.

6
Всем привет из 2025! Загорелся идеей подключить джойстик денди на пк. Воспользовался для этого платой digispark на attiny85. Использовал программный USB, анализировался сигнал с джойстика, после чего с помощью sendKeyStroke выдавался код кнопки, типа нажатие клавиатуры. Однако, как я не долбался, куча проблем то с удержанием кнопки, то с одновременным нажатием, в общем, чтобы я не делал, работает оно крайне плохо и не играбельно совсем.

Может кто что посоветует, кроме готовых USB джойстиков? Может есть проверенное рабочее решение на USB, которое уже кем то проверено лично и оно точно работает?

Страницы: [1]