|
|
|
|
|
|
|
|
|
|
|
|
|
Côté bricolage : Une carte deux joysticks pour votre Zx81 et TS1000. |
TIREZ PLUS DE VOTRE SINCLAIR Mis à
Jour : |
|||||||||||
|
||||||||||||
Merci
de faire part de la présence de cette page à
l'auteur si vous le connaissez ou si vous avez la possibilité
de le joindre.
- |
|
|||||||||
« Carte deux Joysticks pour ZX81. » |
||||||||||
Donc, il est fort peu probable que cette carte puisse fonctionnée avec les jeux du commerce. Toutefois, sa programmation est simple mais nécessite qu'une petite routine en language machine.
Il est a préciser que toutes les manettes de jeux avec une prise 9 broches ne sont pas compatibles avec cette carte ...
Seuls
les joysticks pour Amstrad, Spectrum et Atari, peuvent
fonctionner avec ce montage. Pour les essais, il suffit de court-circuiter les broches avec le commun à l'aide d'un simple fil.
Schéma de câblage. |
||||||||||
|
||||||||||
Carte n°1: |
||||||||||
Version double faces. Implantation: (face avant/composants) |
||||||||||
|
||||||||||
PCB du montage double faces:
Face cuivre (face arrière) |
||||||||||
Face Composants (face avant) |
||||||||||
Photo de la carte (face avant et arrière) |
||||||||||
|
||||||||||
Carte n°2: |
||||||||||
Version simple face. (avec ponts « straps ») |
||||||||||
Face cuivre (face arrière) |
||||||||||
|
||||||||||
Nomenclature des composants : |
||||||||||
Références |
Descriptif |
Quantité |
|
|||||||
|
|
|
||||||||
IC1: 74 LS 32 |
TTL AND 4 modules. |
1 |
||||||||
IC4: 74 LS 244 |
TTL Buffer octal à 3 positions. |
2 |
||||||||
RS1:
10K Ohm x 8 sil |
Réseau de résistances avec point commun. |
2 |
||||||||
R1: 1K |
Résistance – 1/4w |
1 |
||||||||
Connecteur
2x23 points fenelle avec détrompeur réajustable.(Pas
2,54mm) |
Droit à souder. |
1 |
||||||||
Connecteur
9 points mâle Sub-D |
Coudés à souder. |
2 |
||||||||
Supports de CI et boîtier noir pour le côté Pro... |
- |
- |
||||||||
|
||||||||||
Fonctionnement à partir du Basic:
Le système utilise l'entrée IORQ du bus du Zx81. Sa lecture impose une petite routine assembleur qui va recopier l'état du bus dans une valeur basic.
Les deux adresses IORQ sont $DF pour le port A et $EF pour le port B.
Soit le bit A5 à 1 pour le Port A et le bit A4 à 1 pour le Port B.
La fonction IN A,($DF) sera utiliser pour charger le registre A avec le contenu du port de données (de D0 à D7).
|
||||||||||
Port A : IN A,($DF) / Port B : IN A,($DF) |
Avec le bouton action ou « FIRE » |
|||||||||
Valeur: |
Action: |
Valeur: |
Action: |
|||||||
0 |
Repos. |
16 |
FIRE |
|||||||
1 |
RIGHT |
17 |
FIRE+RIGHT |
|||||||
2 |
LEFT |
18 |
FIRE+LEFT |
|||||||
3 |
- |
19 |
- |
|||||||
4 |
DOWN |
20 |
FIRE+DOWN |
|||||||
5 |
DOWN + RIGHT |
21 |
FIRE+DOWN+RIGHT |
|||||||
6 |
DOWN + LEFT |
22 |
FIRE+DOWN+LEFT |
|||||||
7 |
- |
23 |
- |
|||||||
8 |
UP |
24 |
FIRE+UP |
|||||||
9 |
UP + RIGHT |
25 |
FIRE+UP+RIGHT |
|||||||
10 |
UP + LEFT |
26 |
FIRE+UP+LEFT |
|||||||
11 |
- |
27 |
- |
|||||||
12 |
- |
28 |
- |
|||||||
13 |
- |
29 |
- |
|||||||
14 |
- |
30 |
- |
|||||||
15 |
- |
31 |
- |
|||||||
|
||||||||||
Exemples
BASIC et driver en language machine: Analyse simple des directions: (sans associations multiples) 10 REM 12345678901234 160 IF USR 16514<>0
THEN GOTO 200 200 LET PORTA= USR 16514 400 LET PORTB= USR 16521 Nota:
Analyse des directions à associations multiples: (...Enfin ... dans tous les sens, Quoi !) 10 REM 12345678901234 211 REM -FIRE PRESSED- 330 IF PORTA<>5 THEN
GOTO 360 Le code assembleur est noté sur le diagramme de câblage des composants. |
||||||||||
|
||||||||||
Brochage des composants : |
||||||||||
|
|
|||||||||
|
||||||||||
|
||||||||||
Si
vous planifiez de réaliser ce montage, ce serai gentil de
me contacter
|
||||||||||
Vos astuces et vos réactions: |
||||||||||
|
|
|||||||||
|
|
|||||||||
|
|
|||||||||
|
|
|||||||||
|
|
|||||||||