Multi Joy 8
From Atariki
(Różnice między wersjami)
Wersja z dnia 05:24, 23 lip 2005 Stryker (Dyskusja | wkład) ← Previous diff |
Aktualna wersja Dracon (Dyskusja | wkład) |
||
Linia 1: | Linia 1: | ||
+ | Zbudowany przez [[Raster/C.P.U.|Rastera]] prosty interfejs, pozwalający na podłączenie do 8 joysticków Atari [[XL]]/[[XE]], używając w tym celu obu portów joysticka. | ||
+ | |||
+ | |||
+ | Kontrola programowa: | ||
+ | |||
+ | Inicjalizacja:<pre> | ||
+ | LDA #$0 | ||
+ | STA $D302 ;PACTL | ||
+ | LDA #$F0 ;4HIGHERBITS=OUT,4LOWERBITS=IN | ||
+ | STA $D300 ;PORTA | ||
+ | LDA #$3C | ||
+ | STA $D302 ;PACTL</pre> | ||
+ | |||
+ | Uwaga! Ściśle zaleca się poczekać przynajmniej 30 cykli pomiędzy zapisem do rejestru PORTA i kolejnym odczytem tego rejestru (lub przycisku FIRE), ponieważ niektóre interfejsy MultiJoy mogą reagować nieco wolniej. | ||
+ | |||
+ | |||
+ | Wybór aktywnego joysticka:<pre> | ||
+ | |||
+ | LDA #N ;N=numer joysticka: od 0 do 7 (lub od 0 do 15 dla MultiJoy16) | ||
+ | ASL A | ||
+ | ASL A | ||
+ | ASL A | ||
+ | ASL A | ||
+ | STA $D300 ;PORTA | ||
+ | LDX #$06 ;tu czekamy 30 cykli przed odczytem z PORTA | ||
+ | WAI DEX ;ponieważ niektóre interfejsy MultiJoy | ||
+ | BNE WAI ;mogą być nieco wolniejsze. | ||
+ | LDA $D300 ;PORTA | ||
+ | AND #$0F | ||
+ | ;Teraz stan wybranego joysticka (STICK) jest w rejestrze A | ||
+ | LDA $D010 ;TRIG0 | ||
+ | ;Teraz stan wybranego FIRE'a w joysticku (TRIG) jest w rejestrze A</pre> | ||
+ | |||
<center>[[Grafika:Multijoy_8.jpg]]</center> | <center>[[Grafika:Multijoy_8.jpg]]</center> | ||
+ | |||
+ | == Zewnętrzne linki == | ||
+ | *[http://raster.infos.cz/atari/english.htm#MULTIJOY MultiJoy - na stronie Rastera (wersja angielska)] | ||
+ | *[http://raster.infos.cz/atari/hw/multijoy.gif Schemat MultiJoy'a] | ||
+ | *[http://raster.infos.cz/atari/hw/multigam.htm Gry Rastera dla MultiJoy'a] | ||
+ | *[http://www.mathyvannisselroy.nl/quadro.arc Quadro Tron wersja załatana] | ||
+ | *[http://www.foundationtwo.de/f2/f2_rel.htm Bremspunkt przez FoundationTwo] | ||
+ | *[http://www.akk.org/~flo/games.html Gry Floriana Dinglera dla MultiJoy'a] | ||
+ | *[http://mitglied.lycos.de/gunnarbusse/bajamar/download.htm Gry załatane (Schmutzpuppe)] | ||
+ | *[http://a8.fandal.cz/detail.php?files_id=5363 Gra Fujiama Run napisana przez Schmutzpuppe'a] | ||
+ | *[https://atariwiki.org/wiki/Wiki.jsp?page=How%20to%20query%20the%20MultiJoy%20Interface obsługa programowa w jęz. ang.] | ||
+ | {{stub}} | ||
+ | [[Kategoria:Peryferia 8-bit]] |
Aktualna wersja
Zbudowany przez Rastera prosty interfejs, pozwalający na podłączenie do 8 joysticków Atari XL/XE, używając w tym celu obu portów joysticka.
Kontrola programowa:
LDA #$0 STA $D302 ;PACTL LDA #$F0 ;4HIGHERBITS=OUT,4LOWERBITS=IN STA $D300 ;PORTA LDA #$3C STA $D302 ;PACTL
Uwaga! Ściśle zaleca się poczekać przynajmniej 30 cykli pomiędzy zapisem do rejestru PORTA i kolejnym odczytem tego rejestru (lub przycisku FIRE), ponieważ niektóre interfejsy MultiJoy mogą reagować nieco wolniej.
LDA #N ;N=numer joysticka: od 0 do 7 (lub od 0 do 15 dla MultiJoy16) ASL A ASL A ASL A ASL A STA $D300 ;PORTA LDX #$06 ;tu czekamy 30 cykli przed odczytem z PORTA WAI DEX ;ponieważ niektóre interfejsy MultiJoy BNE WAI ;mogą być nieco wolniejsze. LDA $D300 ;PORTA AND #$0F ;Teraz stan wybranego joysticka (STICK) jest w rejestrze A LDA $D010 ;TRIG0 ;Teraz stan wybranego FIRE'a w joysticku (TRIG) jest w rejestrze A
[Edytuj]
Zewnętrzne linki
- MultiJoy - na stronie Rastera (wersja angielska)
- Schemat MultiJoy'a
- Gry Rastera dla MultiJoy'a
- Quadro Tron wersja załatana
- Bremspunkt przez FoundationTwo
- Gry Floriana Dinglera dla MultiJoy'a
- Gry załatane (Schmutzpuppe)
- Gra Fujiama Run napisana przez Schmutzpuppe'a
- obsługa programowa w jęz. ang.
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.