Joystick 4004/482

Z PMD 85 Infoserver

(Rozdiel medzi revíziami)
Rombor (Diskusia | príspevky)
(Nový článok)
Aktuálna verzia (12:41, 1. november 2022) (upraviť) (vrátiť)
Rombor (Diskusia | príspevky)
(Doplnený link na Tlačidlový Joystick Libora Lasotu.)
 
3 medziľahlé revízie nie sú zobrazené.
Riadok 1: Riadok 1:
-
== Joystick 4004/482 ==
+
[[Obrázok:Joystick-IRISA.jpg|right|thumb|400px|joystick pre PMD 85 vyrábaný vo VD IRISA Vsetín.]]
-
{| align="right"
+
{{Nadpis|Joystick 4004/482}}
-
| [[Obrázok:Joystick-4004-482-sch.png|thumb|Schéma Joysticku 4004/482]]
+
 
-
| [[Obrázok:Stick-4004-482.PNG|thumb|Ikonka označujúca možnosť ovládania hry Joystickom]]
+
__TOC__
-
|}
+
 
 +
Podobne, ako u iných typov počítačov, aj k [[PMD 85]] je možné pripojiť joystick. Údajne existovalo viac spôsobov pripojenia, ale akýmsi štandardom sa stalo zapojenie joysticku podľa návrhu [[4004/482 ZO Svazarmu]].
 +
 
 +
[[Obrázok:Stick-4004-482.PNG|left|ikonka označujúca možnosť ovládania hry joystickom]]
 +
Toto zapojenie joysticku používala drvivá väčšina najznámejších hier a to práve z produkcie [[4004/482 ZO Svazarmu]] a tiež [[VBG Software]].
-
Podobne, ako u iných typov počítačov, aj k [[PMD 85]] je možné pripojiť Joystick. Údajne existovalo viac spôsobov pripojenia, ale akýmsi štandardom sa stalo zapojenie Joysticku podľa návrhu [[4004/482 ZO Svazarmu]].
+
Hry, ktoré mali možnosť ovládania pomocou tohto zapojenia joysticku, mali v úvodnom obrázku alebo v samotnej hre ikonku, ktorá symbolicky túto možnosť označovala.
-
Toto zapojenie Joysticku používala drvivá väčšina najznámejších hier a to práve z produkcie [[4004/482 ZO Svazarmu]] a tiež [[VBG Software]]. Hry, ktoré mali možnosť ovládania pomocou tohto zapojenia Joysticku, mali v úvodnom obrázku alebo v samotnej hre ikonku, ktorá symbolicky túto možnosť označovala.
+
{{-}}
 +
[[Obrázok:Joystick-4004-482-sch.png|right|thumb|Schéma Joysticku 4004/482]]
 +
=== zapojenie ===
-
Zapojenie Joysticku je navrhnuté tak, že chráni obojsmerné budiče MH8286, ktoré GPIO obsahuje. Po naprogramovaní portu PA (PB) 8255 na vstup a portu PCH (PCL) na výstup, sa musí správne nastaviť smer budiča na vstup. Nastavením log.1 na PC4 (PC0) sa cez otvorený tranzistor dostáva log.0 na signál DIR, ktorý nastaví smer budiča na vstup a zároveň predstavuje GND pre dolné konce tlačidiel. Ak je tranzistor uzatvorený, zapojenie nepredstavuje pre budič žiadnu záťaž a ten je tak chránený.
+
Zapojenie Joysticku 4004/482 je navrhnuté tak, že chráni obojsmerné budiče MH8286, ktoré GPIO obsahuje. Po naprogramovaní portu PA (PB) 8255 na vstup a portu PCH (PCL) na výstup, sa musí správne nastaviť smer budiča na vstup. Nastavením log.1 na PC4 (PC0) sa cez otvorený tranzistor dostáva log.0 na signál DIR, ktorý nastaví smer budiča na vstup a zároveň predstavuje GND pre dolné konce tlačidiel. Ak je tranzistor uzatvorený, zapojenie nepredstavuje pre budič žiadnu záťaž a ten je tak chránený.
-
Joystick sa primárne pripája na konektor K3-GPIO0, ale je ho možné pripojiť aj na konektor K4-GPIO1. Podľa toho sa samozrejme líši spôsob inicializácie a čítania stavu joysticku. Stav joysticku sa číta v negovanej forme, teda aktívnou hodnotou je log.0. Jednotlivé smery sú v poradí od 0. bitu: dolu, hore, doprava, dolava, akcia. Na horných troch bitoch by mali byť jednotky, ale lepšie je tieto nepotrebné bity po prečítaní zamaskovať.
+
Joystick sa primárne pripája na konektor K3-GPIO0, ale je ho možné pripojiť aj na konektor K4-GPIO1. Podľa toho sa samozrejme líši spôsob inicializácie a čítania stavu joysticku. Stav joysticku sa číta v negovanej forme, teda aktívnou hodnotou je log.0. Jednotlivé smery sú v poradí od 0. bitu: dolu, hore, doprava, doľava, akcia. Na horných troch bitoch by mali byť jednotky, ale lepšie je tieto nepotrebné bity po prečítaní zamaskovať.
{| cellpadding="0" cellspacing="0" border="0" class="wikitable"
{| cellpadding="0" cellspacing="0" border="0" class="wikitable"
Riadok 28: Riadok 34:
| align="center" | ?
| align="center" | ?
| align="center" | ?
| align="center" | ?
-
| align="center" | F
+
| align="center" title="streľba" | F
-
| align="center" | L
+
| align="center" title="doľava" | L
-
| align="center" | R
+
| align="center" title="doprava" | R
-
| align="center" | U
+
| align="center" title="hore" | U
-
| align="center" | D
+
| align="center" title="dolu" | D
|}
|}
-
'''Joystick na GPIO0 a GPIO1'''
+
Veľmi pekné zapojenie a konštrukciu [https://www.pmd85.cz/?page_id=1590 Tlačidlového Joysticku] si navrhol Libor Lasota.
 +
 
 +
=== joystick na GPIO0 a GPIO1 ===
Nasledujúci príklad ukazuje inicializáciu GPIO pre možnosť pripojenia joystickov na oba porty. Pokiaľ by bolo potrebné, aby druhý z portov bol použitý v inom režime, musí sa príslušne upraviť inicializačná a aktivačná hodnota.
Nasledujúci príklad ukazuje inicializáciu GPIO pre možnosť pripojenia joystickov na oba porty. Pokiaľ by bolo potrebné, aby druhý z portov bol použitý v inom režime, musí sa príslušne upraviť inicializačná a aktivačná hodnota.
Riadok 47: Riadok 55:
 
 
IN   4Ch       ; čítanie joysticku 0
IN   4Ch       ; čítanie joysticku 0
-
CPL            ; invertuj
+
CMA            ; invertuj
ANI  1Fh       ; odmaskuj iba platné bity
ANI  1Fh       ; odmaskuj iba platné bity
...
...
 
 
IN   4Dh       ; čítanie joysticku 1
IN   4Dh       ; čítanie joysticku 1
-
CPL            ; invertuj
+
CMA            ; invertuj
ANI  1Fh       ; odmaskuj iba platné bity
ANI  1Fh       ; odmaskuj iba platné bity
...
...
-
'''Joystick na GPIO1 a PMD 32-SD na GPIO0'''
+
=== joystick na GPIO1 a PMD 32-SD na GPIO0 ===
Nasledujúci príklad ukazuje inicializáciu GPIO pre možnosť pripojenia PMD 32-SD na GPIO0 a joysticku na GPIO1.
Nasledujúci príklad ukazuje inicializáciu GPIO pre možnosť pripojenia PMD 32-SD na GPIO0 a joysticku na GPIO1.
Riadok 67: Riadok 75:
 
 
IN   4Dh       ; čítanie joysticku 1
IN   4Dh       ; čítanie joysticku 1
-
CPL            ; invertuj
+
CMA            ; invertuj
ANI  1Fh       ; odmaskuj iba platné bity
ANI  1Fh       ; odmaskuj iba platné bity
...
...
- 
[[Category:Hardvér]]
[[Category:Hardvér]]

Aktuálna verzia

joystick pre PMD 85 vyrábaný vo VD IRISA Vsetín.
joystick pre PMD 85 vyrábaný vo VD IRISA Vsetín.
Joystick 4004/482


Obsah


Podobne, ako u iných typov počítačov, aj k PMD 85 je možné pripojiť joystick. Údajne existovalo viac spôsobov pripojenia, ale akýmsi štandardom sa stalo zapojenie joysticku podľa návrhu 4004/482 ZO Svazarmu.

ikonka označujúca možnosť ovládania hry joystickom

Toto zapojenie joysticku používala drvivá väčšina najznámejších hier a to práve z produkcie 4004/482 ZO Svazarmu a tiež VBG Software.

Hry, ktoré mali možnosť ovládania pomocou tohto zapojenia joysticku, mali v úvodnom obrázku alebo v samotnej hre ikonku, ktorá symbolicky túto možnosť označovala.


Schéma Joysticku 4004/482
Schéma Joysticku 4004/482

zapojenie

Zapojenie Joysticku 4004/482 je navrhnuté tak, že chráni obojsmerné budiče MH8286, ktoré GPIO obsahuje. Po naprogramovaní portu PA (PB) 8255 na vstup a portu PCH (PCL) na výstup, sa musí správne nastaviť smer budiča na vstup. Nastavením log.1 na PC4 (PC0) sa cez otvorený tranzistor dostáva log.0 na signál DIR, ktorý nastaví smer budiča na vstup a zároveň predstavuje GND pre dolné konce tlačidiel. Ak je tranzistor uzatvorený, zapojenie nepredstavuje pre budič žiadnu záťaž a ten je tak chránený.

Joystick sa primárne pripája na konektor K3-GPIO0, ale je ho možné pripojiť aj na konektor K4-GPIO1. Podľa toho sa samozrejme líši spôsob inicializácie a čítania stavu joysticku. Stav joysticku sa číta v negovanej forme, teda aktívnou hodnotou je log.0. Jednotlivé smery sú v poradí od 0. bitu: dolu, hore, doprava, doľava, akcia. Na horných troch bitoch by mali byť jednotky, ale lepšie je tieto nepotrebné bity po prečítaní zamaskovať.

7 6 5 4 3 2 1 0
 ?  ?  ? F L R U D


Veľmi pekné zapojenie a konštrukciu Tlačidlového Joysticku si navrhol Libor Lasota.

joystick na GPIO0 a GPIO1

Nasledujúci príklad ukazuje inicializáciu GPIO pre možnosť pripojenia joystickov na oba porty. Pokiaľ by bolo potrebné, aby druhý z portov bol použitý v inom režime, musí sa príslušne upraviť inicializačná a aktivačná hodnota.

MVI  A,92h     ; inicializácia 8255: PA, PB - mód 0, vstup; PC - výstup
OUT  4Fh
MVI  A,11h     ; aktivácia budičov pre vstup
OUT  4Eh
...
 
IN   4Ch       ; čítanie joysticku 0
CMA            ; invertuj
ANI  1Fh       ; odmaskuj iba platné bity
...
 
IN   4Dh       ; čítanie joysticku 1
CMA            ; invertuj
ANI  1Fh       ; odmaskuj iba platné bity
...

joystick na GPIO1 a PMD 32-SD na GPIO0

Nasledujúci príklad ukazuje inicializáciu GPIO pre možnosť pripojenia PMD 32-SD na GPIO0 a joysticku na GPIO1.

MVI  A,C2h     ; inicializácia 8255: PA, PCH - mód 2; PB - mód 0; vstup, PCL - výstup
OUT  4Fh
MVI  A,01h     ; aktivácia budiča pre vstup
OUT  4Eh
...
 
IN   4Dh       ; čítanie joysticku 1
CMA            ; invertuj
ANI  1Fh       ; odmaskuj iba platné bity
...