FAQ | Points | Add... | Recent posts | Search | Register | Log in


Commodore, control port, pytanie nie tylko dla posiadaczy!


Post new topic  Reply to topic      Main Page -> Forum Index -> Electronic Circuits DIY ideas, problems -> Commodore, control port, pytanie nie tylko dla posiadaczy!
Author
Message
Gizmoń
Poziom 21
Poziom 21


Joined: 06 Jun 2007
Posts: 1167
Location: Kiełczów k. Wrocławia

Post#1 Post from the author of the topic 19 Dec 2007 17:33   

Commodore, control port, pytanie nie tylko dla posiadaczy!


Muszę zrobić "sterownik" komputera Commodore. Np. joystick, schemat na rysunku:
Commodore, control port, pytanie nie tylko dla posiadaczy!
Tylko jest jeden problem (po stronie technicznej): Które nóżki gniazda control port 1 i 2 zwierać, by komputer odbierał jednoznaczne informacje? Łącząc nóżki JOYA0...JOYA3 oraz Button A/LP do masy (GND) na ekranie czasem pojawiają się przypadkowe znaki. To tylko dotyczy portu Control Port 1, bo na drugi komputer wcale nie reaguje (mam dwa komputerki, więc uszkodzenie jako przyczyna odpada).
Zdobyłem schematy komputera na których widać gniazda control port oraz miejsce, do którego są podłączone. Tutaj ten schemat:
http://www.zimmers.net/anonftp/pub/cbm/schematics/computers/c64/prg-cpu-left.gif
Myślę, że ktoś obeznany z techniką cyfrową odpowie, co potraktować jako nóżkę wspólną (albo jak inaczej to zrobić) dla czterech włączników - cztery kierunki ruchu dla joysticka oraz dodatkowo przycisku A/LP.

Jest jeszcze jedno pytanie: wiem, że POT AX,AY,BX,BY to potencjometry 100kΩ (po 1 na gniazdo control port). Układ SID zawiera dwa przetworniki A/C, które są połączone z potencjometrami. I teraz tak: suwak potencjometru podłączam do masy, a końce ścieżek do AX, AY?
I w jaki sposób programowo rozpoznać położenie potencjometru?

W załączniku opis z Instrukcji Obsługi układu SID oraz gniazda.



dokument0005.pdf
 Description:
 n/a

Download
 Filename:  dokument0005.pdf
 Contents:  
 Filesize:  124.04 KB
 Punkty:  0.00

Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 19 Dec 2007 17:33   





Back to top
   
electro_Nick
Poziom 19
Poziom 19


Joined: 26 Mar 2003
Posts: 676
Location: Kwidzyn/Roros

Post#2 19 Dec 2007 19:39   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


Z tego co wiem to te sygnały zwiera się z masą (GND), a co do analogowych wejść to nie podpowiem, pewnie sid mierzy napięcie w zakresie 0-5V i potencjometr trzeba tak właśnie podłączyć. Korzystałeś z tego: http://www.hardwarebook.info/Amiga_Mouse/Joy
Back to top
   
Gizmoń
Poziom 21
Poziom 21


Joined: 06 Jun 2007
Posts: 1167
Location: Kiełczów k. Wrocławia

Post#3 Post from the author of the topic 20 Dec 2007 17:12   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


TO widziałem, ale niepomogło. Schemat joysticka by się przydał...
Piszesz, że zwierając do masy osiągnę jakiś efekt. Tak robię, i nic!

Niezbyt mi się podoba podłączenie gniazda. Jedno tylko do kolumn, a drugie tylko do wierszy klawiatury. Zwierając wiersz do masy nic nie osiągam, zwierając piny sąsiednich gniazd Control Port (np. JOYA0 do JOYB3) mam to, o co chodzi. Ale zajmuję w ten sposób oba gniazda :(
Back to top
   
electro_Nick
Poziom 19
Poziom 19


Joined: 26 Mar 2003
Posts: 676
Location: Kwidzyn/Roros

Post#4 20 Dec 2007 18:02   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


Wedle schematu to prawidłowo ze pojawiają sie znaki, masz jakiś program do sprawdzania stanu tych linii czy jak? a potencjometr podobno ma być 470k
Back to top
   
Google

Google Adsense


Post# 20 Dec 2007 18:02   





Back to top
   
Gizmoń
Poziom 21
Poziom 21


Joined: 06 Jun 2007
Posts: 1167
Location: Kiełczów k. Wrocławia

Post#5 Post from the author of the topic 21 Dec 2007 19:57   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


Rzeczywiście (czytałem opis), widzę, że jeśli nacisnę jeden przycisk 5 razy, to pojawienie się znaków & brak A L brak jest objawem działania poprawnego! No to już widzę kontrolę np. jakiejś gry za pomocą joysticka, gdy dobry kierunek ruchu postaci uzyska się po 4 ruchach drążkiem, a np. strzał nastąpi po dziesięciokrotnym wciśnięciu guzika! I czemu działa tylko control port 1?
Back to top
   
electro_Nick
Poziom 19
Poziom 19


Joined: 26 Mar 2003
Posts: 676
Location: Kwidzyn/Roros

Post#6 21 Dec 2007 20:04   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


Nadal nie napisałeś czego używasz do sprawdzania stanu tych linii, jak widzisz na schemacie te linie są podłączone bezpośrednio do klawiatury, po pierwszym naciśnięciu już powinno dać na ekranie jakiś znak... W sumie wiecej pomóc Ci nie mogę nie mając sprawnego commodorka w domu...
Back to top
   
PabloL
Poziom 3
Poziom 3


Joined: 20 Mar 2005
Posts: 6

Post#7 21 Dec 2007 21:43helpful post - solution   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


Do odczytu portów służą odpowiednie rejestry w układzie CIA1. Adresy tych rejestrów (dziesiętnie) to 56320 i 56321. Z tego co pamiętam znaki pokazywane są na ekranie tylko dla portu 1.
Do pomocy mapa pamięci C64, tu jest wszystko opisane: http://sta.c64.org/cbm64mem.html
Back to top
   
Google

Google Adsense


Post# 21 Dec 2007 21:43helpful post - solution   





Back to top
   
Gizmoń
Poziom 21
Poziom 21


Joined: 06 Jun 2007
Posts: 1167
Location: Kiełczów k. Wrocławia

Post#8 Post from the author of the topic 22 Dec 2007 11:42   

Re: Commodore, control port, pytanie nie tylko dla posiadacz


Wielkie dzięki PabloL!!! Oba porty działają (prawie)!

Najpierw napisałem coś takiego:
10 GET A$: IF A$="" THEN 10
20 PRINT A$: GOTO 10

I zwierając do masy te piny było to, co opisałem w pierwszym poście.

Przed chwilą napisałem to:
10 PRINT CHR$ (147)
20 PRINT PEEK (56320)
30 PRINT PEEK (56321)
40 GOTO 10

I wartości się zmieniały dla obydwu portów i wszystkich przycisków - tak jak być powinno.

Wcześniej podłączyłem potencjometr, i program

10 PRINT CHR$ (147) [Zmiany w programie:]
20 PRINT PEEK(54297) [control port 2: 54299]
30 PRINT PEEK(54298) [control port 2: 54300]
40 GOTO 10

Wyraźnie pokazywał zmianę wartości od 0 do 100 (gdy wartości jednego rejestru rosną, drugiego maleją), co później wykorzystałem do sterowania częstotliwością dźwięku. Ale w porcie control port 2 już było inaczej. Zmieniłem program, i mimo kręcenia potencjometrem wartości obu rejestrów były stałe i równe 0 . Zobaczę jeszcze na drugim komputerze, czy jest tak samo.
Wesołych Świąt!
Back to top
   
Post new topic  Reply to topic      Main Page -> Forum Index -> Electronic Circuits DIY ideas, problems -> Commodore, control port, pytanie nie tylko dla posiadaczy!
Page 1 of 1
Similar topics
Jak zrobić płytkę drukowaną - dla początkujących i nie tylko (47)
Lampka elektroniczna (nie tylko) dla dzieci:) (9)
Podstawy?! elektroniki dla modera i nie tylko... (11)
NE555 i Voltage control - Szybkie pytanie. (5)
Commodore powróci jako Commodore keyboard PC (17)
Koniec Xbox Live dla posiadaczy pierwszej generacji konsoli (8)
Microsoft Internet Explorer 9 nie dla posiadaczy Windows XP (12)
Nie, dla upgradu do Windows Phone 7 dla posiadaczy WinMob6.x (2)
Kingston Wi-Drive bezprzewodowy dysk SSD przeznaczony dla iPada i nie tylko (1)

Page generation time: 0.215 seconds


FAQ || Administrator || Moderators || Widgets and banners || Contact
elektroda.pl topic RSS feed