Standardowy dla Amigi schemat podłączenia drugiego przycisku joya jest prostacki - pin 9 zwierany przez przycisk do pinu 8 (GND) i gotowe. Małe Atari na pinie 9 ma pierwszy (zerowy) kontroler analogowy, który w swoim schemacie zakłada zwarcie pinu 7 (+5V) z pinem 9 przez potencjometr. Wiem, że gry korzystają z tego, a np. soft @jhusak potrafi to wykryć i pokazać. Chciałbym sobie tę funkcjonalność wmontować w joystick bo mam drugi przycisk, który aż się prosi, żeby go wykorzystać ale tak, żeby nie spalić Pokeya. I teraz nie wiem, czy mogę na chama przez przycisk spiąć piny 7 i 9, czy użyć jakiejś rezystancji - jeśli tak to jakiej? Czy moglibyście mi doradzić? Docelowo wstawię jeszcze przełącznik między trybem Amigowym a atarowskim ale to już jest najmniejszy problem - najpierw muszę opanować tryb Atari bez spalenia Pokeya.
Możesz spiąć piny. W środku ładuje się kondensator przez rezystancję z 5V. I czym mniejsza rezystancja, tym szybciej się naładuje. A jak się naładuje to pobudza komparator i wtedy w rejestrze PADDLE zatrzaskuje się linia obrazu, w której się naładował. Potem przez jakiś czas jest rozładowywany ten kondensator. Jeśli rezystancja 7-9 jest wystarczająca do rozładowania, to się rozładuje i będzie mógł pokazywać większe wartości. Jeśli jest zbyt mała, to będzie pokazywał najmniejszą wartość, chyba 0.
No, może nie dosłownie ale ten na ABBUC-a co pisałeś w 2021 wykrywa wciśnięcie przycisku C na padzie segowym - a dokładnie ten sam przycisk działa poprawnie jako drugi w grach co to je mam pościągane jako obsługujące drugi przycisk.
Dzięki @mono. Czyli brakuje mi tylko pull-up 330R do pinu 7. Super, prosta sprawa.
Edit: NES/Famicom ma jeszcze taki patent, że jak fire jest i go nie ma cyklicznie co 16ms to nazywa się to "turbo fire" a i b zależnie od tego na którym fajerze to się odbywa. U nas tego chyba nikt nie robił :(
Standard "amigowy" i "atarowy" jest dokładnie taki sam. Przy przycisku pull-up 330R jest trochę niepotrzebny, bo przez tak mała rezystancję cały czas płynie niepotrzebnie spory prąd. W zupełności sprawdza się tutaj dobrze rezystor 4k7 i ja takie zawsze daję. W Amigach 500 nie potrzeba w ogóle pull-upa, ale w Amigach 600/1200 jak nie damy pull-up, to tam kondensator się tak długo przeładowuje, że w grach wygląda to tak, że po wciśnięciu przycisku on działa poprawnie, ale jak go puścimy, to pozostaje nadal wciśnięty jeszcze przez kilka sekund.
@jhusak tak, źle się wyraziłem, dzięki za poprawkę. Niemniej właśnie o to się rozchodzi, że jak wciśniemy taki fire, to płynie niepotrzebnie 15mA. Czy to dużo czy nie dużo, to kwestia umowna, no ale po co ma płynąć:-) 15mA nieraz pobiera całe urządzenie jakieś, albo rozszerzenie dopięte do Atari:-) Mnie się w każdym razie nie podoba taki niepotrzebnie płynący prąd:-)
@jhusak: Tak, bo to nie są tak naprawdę fajery, a przyciski opisane jako SELECT i START, a przydatne bywają w menu i jakichś listach/wybieraczkach, bo blokują przy okazji obydwa kierunki. No albo może do wejścia w jakieś menu podczas gry. Ale zawsze to dwa guziki więcej do sterowania.
O, czyli wychodzi na to, że byłem pierwszy z interfejsem (S)NESctrl przed innymi interfejsami do podłączania padów od NES i SNES do standardu Atari. Dodam, że drugi przycisk zrobiłem na prośbę Amigowców, bo wtedy Atari nie korzystało z niego, a potem jak zrobiono JOY2B+, to okazało się, że przypadkiem jest to ten sam standard, więc mój interfejs działa też ze wszystkimi grami na Atari z obsługą dwóch przycisków z automatu.
To jak porządek ma być zachowany, to ostatnia wersja (S)NESctrl była taka:
Później jeszcze zrobiłem poprawki dokładając obsługę trzeciego fire, ale nie było to już nigdzie upublicznione, powstało tylko około 5szt takiego interfejsu w wersji 2.3 i sam na takim gram na co dzień:-) Kiedyś upublicznię prawdopodobnie wszystkie materiały swoich projektów elektronicznych, ale muszę znaleźć czas na zrobienie strony internetowej z nimi (co planuję już od kilku lat:-)).