Šta je novo?

Novi džojstik tester

zzarko

Čuven
Učlanjen(a)
13.10.2003
Poruke
1,745
Poena
695
Adap0020a.JPG

Iako me je dugo služio, moj stari tester za džojstike ima jednu krupnu manu: može da testira samo džojstike sa Atari-kompatibilnim rasporedom pinova. Poslednjih par nedelja sam se bacio na rešavanje tog problema (a i to samo zato što ovo zauzima jako malo mesta, pa sam mogao da čačkam na svom stolu u večernjim satima) i iskoristio jednu varijantu Arduina koja mi je dugo ležala u fioci. Rezultat rada je novi tester za džojstike koji može da testira skoro svešto je imalo DB-9 ili DIN konektor:

box1.jpg box2.jpg.



Kompletna šema i kod se nalaze na:
https://bitbucket.org/zzarko/joysticktester
 
Odlično urađeno. Ja bi samo stavio 20x4 LCD sa i2c da bude pregledniji i malo manje geek UI :)
 
Pa OLED ekrani su i glavni razlog što imam viška 7-segmentnih displeja... A mislim da UI taman odgovara 80-tim, kao i džojstici kojima je tester namenjen :) Zasad nemam nameru da otvaram kutiju, osim ako se nešto ne pokvari, ili da bilo šta menjam, dosta je bilo rada na testeru, sada se vraćam na popravku džojstika. Sumnjam da ću praviti još jedan, pa sam baš zato i stavio source na raspolaganje, računam da bi drugi ljudi drugačije rešili neke stvari (naročito pošto je meni ovo bio prvi susret sa arduinom). No, dobre ideje svakako treba staviti na listu mogućih proširenja, hvala!
 
Sve pohvale za rad! :) Nisam razumeo, zašto se menja pozicija prekidača ispod džojstika i kakva su to podešavanja na samom testeru i džojstiku?
 
Menja se konfigracija pinova na konektoru, da odgovara različitim računarima. Prvi džojstik na videu podržava Atari/Commodore, MSX, Amstrad CPC i Sega konfiguraciju pinova, pa mi je bio zgodan za testiranje samog testera.
 
U toku je rad na novoj verziji joystick tester-a (sa OLED-om), pa treba mi da znam šta bi bilo lepo da se može testirati. Trenutno je u planu da tester ima dva konektora na sebi, 9-pinski D-SUB i 6-pinski DIN (kao i prethodni):

dsub9f.png din6pol.jpg

D-SUB zasad pokriva Atari/Commodore 8bit, Amstrad CPC, MSX, Atari/Commodore Paddle, Amiga/Atari mouse, Sinclair ZX +2/+3, Sega Master, Sega Genesis 3-Button, Vectrex, Texas Instruments TI-99/4A, ColecoVision i Apple IIc (zasad netestirano).

DIN pokriva Videopac G7400 i Tandy CoCo/Misedo.

Plan za D-SUB je da se doda podrška za CD32 i Sega Genesis 6-Button (ako ne bude nekih nepredviđenih problema, pošto su im protokoli malo zeznutiji). Da li možda neko zna za džojstik sa DIN-om koji se ne uklapa u predviđeni 6-pinski konektor?

Moje osnovno pitanje je šta bi eventualno bilo zgodno da se još doda? Novi konektori pored dva pomenuta mislim da se ne bi dodavali, pa ograničite predloge na ta dva konektora (uz predlog treba da ide i link(ovi) ka dokumentaciji o džojstiku).

Ako postoji baš velika potreba za još nekim konektorom i ako se uopšte mogu nabaviti u varijanti za montažu na pločicu, moglo bi se razmisliti i na tu temu, pod uslovom da protokol za kominikaciju sa džojstikom nije previše komplikovan...
 
Ilustracija onoga što je trenutno implementirano:

 
Od mene podrška za oled ekran, samo napred :)
 
Možda eventualno da nakačiš serijski game port za stare PC džojstike ako je nekako izvodljivo ?
O ovome je već bilo reči sa ostatkom tima koji radi na ovome (ja sam zadužen za softver). Softverski je izvodljivo, samo je pitanje da li se konektori mogu naći i po kojoj ceni...
Da ubaciš mali buzzer zvučnik pa da daje zvukove tokom detekcije, čisto fore radi :p ....takodje da ubaciš podršku za miševe možda ?
Podrška za Amiga/ST miševe već postoji od prethodne verzije. Ako si mislio na PC miševe, trenutno nisu planirani.
 
O ovome je već bilo reči sa ostatkom tima koji radi na ovome (ja sam zadužen za softver). Softverski je izvodljivo, samo je pitanje da li se konektori mogu naći i po kojoj ceni...
Podrška za Amiga/ST miševe već postoji od prethodne verzije. Ako si mislio na PC miševe, trenutno nisu planirani.

Da, mislio sam na podršku za Amiga/ST/C64 miševe, super ako ima


btw. našao sam u M&G Electronic-u kod nas skoro pa sve moguće varijante ženskog DB15 konektora koje se mogu iskoristiti za PC game port, cena se kreće od 36 do 72din po komadu


https://www.mgelectronic.rs/sub-d-konektor-print-ž-15-pina

https://www.mgelectronic.rs/sub-d-konektor-stand-ženski-15-pina

https://www.mgelectronic.rs/sub-d-konektor-sa-nosačem-ž-15-pina
 
Poslednja izmena:
Tekući plan je da se napravi proizvodnja jednog broja uređaja u Kini, pa da se kasnije sve stavi u open source (nova verzija softvera, kao i hardver). Električna šema hardvera je 90% slična prethodnoj verziji, softver je drugačiji u tome što koristi rotacioni enkoder i OLED umesto dva tastera i LED displeja, ali je core deo za očitavanja isti, to je već objavljeno). Za sklapanje treba da bude zadužen isti čovek koji je pravio i šarena ZX kućišta, tako da je on osoba koja će odlučiti na kraju šta od konektora ide a šta ne...
 
Testiranje inicijalne implementacije menija:
 
Prvo očitavanje PC Gameport džojstika je prošlo uspešno. Pločica za prototip je pretrpela par izmena, malo je rearanžirana, dodat je analogni multiplekser (za očitavanje BBC džojstika; tek treba da vidim da li će moja ideja o tome kako to da odradim upaliti ili ne), kao i nova Ardino pločica, pošto je prethodna ispustila dušu (juče jednostavno nije hteo da se uključi, Marko kaže da sam ga možda preflašovao jedan put previše - sitna cena razvoja :) )

Mnogo više izmena je bilo "ispod haube"... Moja prvobitna ideja o merenju autofire frekvencije korišćenjem Change interapta je pala u vodu kada sam isprobavao džojstike kod kojih treba menjati konfiguraciju pinova u letu puno puta u sekundi (svi koji imaju razne Select linije). Dok sam se još igrao sa njima, naleteo sam na nešto što mi se čini da je bag u delu za optimizaciju kompajlera, ali to ću još ispitati i prijaviti ako stvarno jeste.

Naredna ideja je bila da kompletno očitavanje prebacim u interapt, samo što sam morao da pređem na direktan rad sa portovima umesto digital read/write jer je to bilo suviše sporo za 100 puta u sekundi. A to je onda povuklo za sobom kompletnu izmenu struktura podataka o džojsticima, pa ponovno pisanje potprograma za njihovo pretvaranje u podešavanja portova, i na kraju testiranje svog tog koda.

Usput i par nezgodnih bagova koje sam morao da rešim napamet jer ne mogu da uključim serijsku komunikaciju zbog premalo preostalog RAM-a (imali su za posledicu brljavljenje displeja, pa nije bio od koristi).

Dodato je i korektno očitavanje Sega Genesis džojpeda, ostaje da do kraja uradim PC gameport, da probam BBC i CD32, još malo doradim menije i onda da konačno predam prvu beta verziju Marku, da se igra sa pravljenjem pločice.

Što bi rekao Šekspir, mnogo buke niokočega :)

Nadam se da ću završiti u sledećih nedelju-dve dana, ovo mi oduzima gotovo svo slobodno vreme, hoću malo da se zezam i sa mojim starim mašinama, skroz sam ih zapostavio... Stidim se...
 
Poslednja izmena:
Trenutni izgled protoborda:

jt.JPG

Još treba da dodam vodove za očitavanje BBC džojstika i vodove za DIN konektor...
 
Veliki plus za projekat. Znam taj osecaj, sve muke u razvoju mogu da uspore coveka. Ali na kraju rezultat izgleda odlicno. :)
 
Zahvaljujući jednom prijatelju koji mi je pozajmio ispravan CD32 džojped (ispalo je da je moj pokvaren, crklo nešto od elektronike unutra), završio sam i kod za njegovo očitavanje, a time i sav kod za očitavanje koji sam planirao. Tester sada podržava: Atari/Commodore, Amstrad CPC, MSX, Atari/Commodore Paddle, Amiga/ST Mouse, Amiga CD32 Joypad, ZX Spectrum+2/3, Sega Master, Sega Genesis, Vectrex, Ti 99/4a, ColecoVision, Apple IIC, PC Gameport, BBC B, Videopac G7400, Dragon 32/64, Tandy CoCo/Misedo. Apple IIC podrška je napisana prema dokumentaciji koju sam našao, to jedino nisam istestirao jer nemam takav džojstik, niti znam nekog ko ima.
 
Evo vrlo brzog prolaska kroz tekuću funkcionalnost:



Pošto sam naleteo na još par egzotičnih pinout-a, rešio sam i to da dodam, pa su sada podržani i Tomy Tutor i Sharp X68000. Usput sam dodao i DIN konektor i isprobao par džojstika koji ga koriste i sve je OK. Doduše, izgleda da sam nekom od izmena pokvario čitanje Sega džojpeda, ali se nadam da neće biti problem da to popravim kada prototip dođe nazad do mene (trenutno je kod Marka na beta tstiranju).
 
Nazad
Vrh Dno