1

Muszę w końcu spiąć poślady i zabrać się za kolejny projekt joya.

Tutaj ma już być bajer w postaci autofire, włączany osobno dla każdego z 3 fire + regulacja częstotliwości (przełącznik 3 pozycyjny).
Generator ma być oparty na jednym NE555, bo nie widzę sensu 3 osobnych. Przełącznik do częstotliwości i tak mam tylko 1 wolny.

Stworzyłem coś takiego:

https://www.atari.org.pl/forum/misc.php?action=pun_attachment&item=12697

I teraz pytania.
1. Który wariant podłączenia do fire lepiej zastosować A czy B?
2. W ogóle to zadziała z fire 2 i 3? (nie mam akurat NE555 pod ręką żeby sprawdzić).
3. Standardowa częstotliwość autofire (jak znalazłem) to 7Hz, ale mogę jeszcze dodać 2.Jak tak to jakie?

4. Coś byście zmienili? Tranzystor dałem taki, bo mam cały pojemnik, ale tutaj nie jest to przecież element krytyczny.

Post's attachments

autofire.png 66.9 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

2

Ponieważ się nie znam to się zapytam - czy wyjście Q NE555 jest typu "open collector" czy ściąga do gleby przy zerze?

Pamięć studenta ma charakter kwantowy - student wie wszystko, ale jednocześnie nic nie pamięta.
- Kilka(naście?) pudełek z klawiszami i światełkami. I jeden Vectrex, żeby nimi wszystkimi rządzić.

3

Jako, że mało się znam i dlatego pytam, to wiem tylko, że na wyjściu jest bufor (nie wnikałem w szczegóły) i tutaj układ generuje sygnał prostokątny, więc naprzemiennie ściąga do gleby i daje 5V, czy ile tam jest na wyjściu.

4

555 ma wyjście typu totem pole - inaczej mówiąc nie open cokolwiek.
Obie wersje sa funkcjonalne niemal identyczne. Pod warunkiem ze żadne z wejść fire nie jest jakos dziwnie podlaczone.

"tatusiu zobacz, narysowałam tobie takie same coś jak na twojej koszulce" 
https://github.com/willyvmm/mouSTer
jmp $e477

5 Ostatnio edytowany przez Zgrd (2025-02-23 19:28:11)

Wrrrrrr, znowu mnie wylogowało nim napisałem.

Fire standardoweo + 2 przez paddle.


https://www.atari.org.pl/forum/misc.php?action=pun_attachment&item=12745

W standardzie, czyli 1 fire to działa, bo w jakimś joyu miałem auto na NE.
Pytanie jest co będzie lepsze dla ataryny i pewniejsze w działaniu w rozbudowanej wersji.

Post's attachments

joy2b.png 34.11 kb, nikt jeszcze nie pobierał tego pliku. 

Tylko zalogowani mogą pobierać załączniki.

6

Te rezystory podciągające daj 4k7 na przykład. Nie rozumiem dlaczego ktoś wymyślił tam 330R i płynie tamtędy cały czas prąd bez sensu.

7 Ostatnio edytowany przez mono (2025-02-24 16:27:52)

Tam są paddle i chodzi o to, żeby się szybko naładowały (paddle są do 5V przez rezystor a nie do masy, jak kierunki i fire) i pewnie dlatego tam rezystorki są małe. Na płycie jest jeszcze 220 Ohm szeregowo.

Edit: Przepraszam, są 1.8k szeregowo.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

8

Ja zawsze dawałem 4k7 zarówno w (S)NESctrl, jak i w zwykłych przeróbkach padów/joyów/myszy. I zawsze działa natychmiastowo taki fire.

9 Ostatnio edytowany przez mono (2025-02-24 11:34:58)

@Mq: A to z ciekawości - jakie wartości tam się w takim paddlu pokazują jak fire jest wciśnięty (bo jak zwolniony to zakładam, że 228/229)?

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

10

zobacz tu
https://www.speccy.pl/forum/index.php?topic=4287.15

kiedyś taka płytkę na NE555 zaprojektował dla mnie Klaud
może coś wniesie do tematu :)

PunBB bbcode test

I am Groot .......

11

mono napisał/a:

A to z ciekawości - jakie wartości tam się w takim paddlu pokazują jak fire jest wciśnięty (bo jak zwolniony to zakładam, że 228/229)?

Odwrotnie: jak jest wciśnięty fire2(fire3), to wtedy pokazuje 228. Po to właśnie jest ten rezystor podciągający do plusa zasilania, żeby fire2(fire3) działał na zwarcie do masy, tak samo jak pozostałe styki w joysticku i podstawowy fire1. Defaultowo wejście potencjometryczne jest ściągane do masy, dlatego żeby bez przeróbek mieć tam fire, to trzeba by było przyciskiem zwierać to wejście do plusa zasilania a nie do masy. Nie było by takie rozwiązanie jednak zgodne z tym stosowanym od lat w Amidze, a po drugie tak się nie robi, bo nie powinno występować napięcie zasilania na przyciskach żadnych, lepiej jeśli zwiera się przyciskami wszystko zawsze do masy. Tak że rezystor o którym mowa jest rezystorem podciągającym i ma za zadanie odwracać nam sytuację defaultowo nadając potencjał plusa zasilania wejściu potencjometrycznemu.

Jak się podciągnie do plusa rezystorem, to paddle pokazuje wartość 2/3 zazwyczaj, a czasami 4 może pokazać nawet. Przy czym nie zależy to od wartości tego rezystora, tylko od egzemplarza Atari (z moich obserwacji). Ten rezystor nadaje potencjał wejściu potencjometrycznemu, a na nim samym nie występuje spadek napięcia. Napięcie przed i za rezystorem jest takie samo.

Wartości wskazywane przez paddle przy różnych rozwiązaniach zgodnych z Joy2B+ z tego co zaobserwowałem doświadczalnie, wahają się nieznacznie przy różnych egzemplarzach Atari. W rozwiązaniach "mechanicznych" występuje dodatkowo często problem śniedziejących styków i jak rośnie przez to opór na przycisku fire, to z kolei po wciśnięciu tego fire paddle nie pokazuje 228/229, tylko mniejsze wartości. Połączenie od plusa zasilania poprzez rezystor podciągający dalej przez przycisk fire do masy, stanowi dzielnik napięcia. I teraz jeśli rezystancja jakaś się pojawia na samym przycisku, to im mniejszy mamy ten rezystor podciągający, tym bardziej rezystancja przycisku ma wpływ na zmianę liczby na mniejszą z 228/229. Więc chociażby z tego powodu również warto dawać większy ten rezystor.

Biorąc też pod uwagę powyższe rozważania, warto odpowiednio oprogramowywać drugi i trzeci fire w grach tak, żeby zniwelować wpływ rodzaju rozwiązania w różnych joystickach na sposób działania samej gry. Ja zalecam oprogramowywać to tak, żeby interpretację fire przyjmować na jakiejś bezpiecznej granicy. Czyli nie sprawdzać np. czy jest 228, albo czy jest 2/3, tylko podzielić ten zakres np. na pół. Generalnie bierzemy wartość paddle i tesujemy sobie jako fire jeden ze starszych bitów, np. 128, albo 64, albo 32. I od tego bitu uzależniamy nasz wynik odczytu i interpretację czy przycisk jest wciśnięty czy odpuszczony.

12

@Mq, dzięki za sugestię, chociaż te rezystory dawałem większe. Niestety nie pamiętam już jakie, bo jedyny obecnie działający prototyp 3 fire mojego joya ma Sikor.

@Kacper, ze strony speccy też mam jakieś materiał, a to co podałeś to akurat jest schowane za logowaniem ;)
I chcę właśnie zrobić coś podobnego, tylko zamiast potencjometru 3 wybierane częstotliwości, bo w projekcie mam miejsce na 3 pozycyjny przełącznik.

Panowie, w pytaniu chodzi tutaj właśnie o "kapryśność" naszych atarynek.
Osobiście skłaniam się ku rozwiązaniu z tranzystorami, bo straty na kablach (niby przy tych długościach ciężko o tym mówić, ale no właśnie kapryśność ;) ), będą straty na diodach i czy ataryny nie będą po prostu kaprysić.

Ja mam w zasadzie tylko 1 do testów (nie liczę rozgrzebanego projektu bez klawiatury) i tutaj już wpadłem na wtyczce joya, bo na mojej działało pięknie, a na innych egzemplarzach już był brak kontaktu.

13

Czy te 3 fire maja byc polaczone razem?

"tatusiu zobacz, narysowałam tobie takie same coś jak na twojej koszulce" 
https://github.com/willyvmm/mouSTer
jmp $e477

14 Ostatnio edytowany przez Mq (2025-02-24 21:09:51)

Zgrd napisał/a:

3. Standardowa częstotliwość autofire (jak znalazłem) to 7Hz, ale mogę jeszcze dodać 2.Jak tak to jakie?

Sprawdziłem jak projektowałem autofire do (S)NESctrl. Robiłem to już parę lat temu, więc musiałem poszukać w projekcie jak to mam zrobione. Tam jest mikrokontroler, więc mogłem się dowolnie bawić i testować różne częstotliwości. Pamiętam, że rozważałem możliwość regulacji prędkości autofire przez użytkownika, ale doszedłem do wniosku, że nie ma to sensu i dobrałem optymalnie metodą prób i błędów w różnych grach na Atari i na Amidze. Widzę w programie, że mam zmienną jednobitową, której przestawiam stan na przeciwny z użyciem timera ustawionego na 15Hz. Jak timer się przepełnia, to przerwanie zmienia bit na przeciwny, a więc jest to około 7,5Hz. Czyli Twoje założenie 7Hz jest identyczne. To potwierdza że taki autofire będzie optymalny. Sprawdź sobie sam, ale ja pamiętam, że jak się dawało większą częstotliwość, to gry gubiły te wciśnięcia i było słabo, a jak się dawało mniejszą częstotliwość, to było strzelane za rzadko i też bez sensu.
Dodam jeszcze że w oparciu o ten sam timer w moim (S)NESctrl działa funkcja machania prawo-lewo automatycznie do gier typu Decathlon, i też to testowałem na kilku tego typu grach i ta częstotliwość była optymalna.

Aha, coś jeszcze: przejrzyj sobie gry i zobacz do czego wykorzystywane są przyciski 2 i 3 w grach. Nie kojarzy mi się ani jedna gra, w której miał by sens autofire na drugim lub trzecim przycisku. Ja bym sugerował się tym nie przejmować i zrobić autofire tylko do pierwszego fire, bo myślę, że do dwóch pozostałych w ogóle nie będzie to przydatne. Ale mogę się mylić:-) Podsuwam do przemyślenia.

15

To ja jeszcze wam poddam pod rozwagę pewien patent stosowany w NES-ach właśnie. Chodzi mianowicie o przyciski TURBO A i TURBO B: https://www.nesdev.org/wiki/Standard_controller#Turbo One są realizowane w taki sposób, że po wciśnięciu takiego TURBO A generowana jest na przycisku A fala prostokątna 50% o częstotliwości 15-30 Hz. To samo z TURBO B. Nikt tego patentu nie stosował na Atari, ale może najwyższy czas? :) I ni kolidowałoby to nawet z autofire, bo on jest "poziom wyżej".

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

16

@Willy, jak na schemacie. 1 wspólny generator i wyjście rozbite na 3 niezależne. Na schemacie uproszczone, bo nie dałem przełączników..

@Mono, czyli AF na przycisk. Wszystko można, tylko gdzie upchnąć przyciski ;) Wprawdzie to ma być coś w rodzaju arcade sticka, ale z ograniczoną ilością miejsca.

@Mq, czyli mówisz zmiana częstotliwości niema większego sensu. Kombinowałem w tę stronę, bo pamiętam któreś joye miały taką funkcje, chociaż nie miałem przyjemności z takich korzystać i nie wiem jak to działało w praktyce.
W razie czego zwolni się przełącznik i będę mógł go wykorzystać do czegoś innego.

Natomiast co do AF na 2 i 3 fire, to może wyprzedzę przyszłość ;)
Opcje decathlonowej nie chcę robić, to czitowanie ;D

17

Wiesz, ja testowałem sobie te częstotliwości autofire i uznałem że nie ma sensu ich zmieniać, bo to więcej przeszkadza niż pomaga. Ale zrób sobie własne testy najlepiej jak to poskładasz w jakiś prototyp, to sam zobaczysz i uznasz co tam będziesz chciał.

To co mówi @mono, to ja jestem zwolennikiem takiego właśnie autofire, że pod przyciskiem jest autofire, a nie włączany na stałe przełącznikiem. Tak dokładnie jak działają te przyciski turbo, to w (S)NESctrl jest zrealizowany pod osobnym przyciskiem autofire, i pod osobnym przyciskiem tryb decathlonowy. Czyli działa tylko jak się trzyma przycisk. Podobne rozwiązanie z tego co wiem chyba jest zastosowane w larkowym JoyCart'cie.

O opcji decathlonowej wspomniałem tylko przy okazji, bo ja akurat coś takiego kiedyś sobie zrobiłem. Chodziło o to, że (S)NESctrl służył do podłączenia padów od NES-a/SNES-a do Atari, a na takim padzie z krzyżakiem za bardzo nie da się grać w Decathlona. Sama gra nie robi się bezsensowna, bo pomimo że siłę mamy z automatu pod jednym przyciskiem, to jeszcze w grach tego typu trzeba w odpowiednim momencie wciskać i puszczać fire, więc powstają różnice w wynikach, spalone skoki/rzuty, przewrócone płotki itd.

18

AF pod (osobnym) przyciskiem jak pisałem nie przejdzie, bo zwyczajnie niema dla niego miejsca tak żeby był "pod ręką".
Może zrobię tak jak w niektórych joyach było, że AF owszem się włączało, ale aktywowało przyciskiem od fire.
Bedzie myślane jak będzie prototyp obudowy, ale najpierw muszę ogarnąć drukarkę, bo w weekend wyzionęła ducha.

Częstotliwości sprawdzę, ot choćby z ciekawości.

Wiem, że na padzie ciężko jest machać i trzeba też umiejętnie wyłapać moment, dlatego śmieje się z przymrożeniem oka ;)