Pour commencer, j'ai regardé de près la carte Adlib pour
déterminer quels signaux ISA sont utilisés par la carte. Le tableau ci-dessous
resume les signaux ISA qu'il est nécéssaire de gérer pour faire
fonctionner la carte, avec quelques explications:
| # Contacts ISA | Nom | Connecter à | Direction | Utilité |
| A2 | D7 | Port parallèle 9 (Data 7) | Bi-directionnel | Bit de données 7 |
| A3 | D6 | Port parallèle 8 (Data 6) | Bi-directionnel | Bit de données 6 |
| ...Et ansi de suite... |
| A9 | D0 | Port parallèle 2 (Data 0) | Bi-directionnel | Bit de données 0 |
| A11 | AEN | 0 volts | Vers la carte |
Validation d'addresse, Utilisé en DMA. La
carte adlib ne réponds pas si ce signal est
haut. |
| A22, A23, A24 et A28 | A9,A8,A7,A3 | 5 Volts | Vers la carte |
Bits d'addresse 9,8,7 et 3 (Voir note 1) |
| A25, A26, A27 et A29 | A6,A5,A4,A2 | 0 Volts | Vers la carte |
Bits d'addresse 6,5,4 et 2 (Voir note 1) |
| A30 | A1 | Port parallèle 17 (Select) |
Vers la carte | Bit d'addresse 1 (Voir note 2) |
| A31 | A0 | Port parallèle 1(Strobe) |
Vers la carte | Bit d'addresse 0 (Voir note 1) |
| B1,B10,B31 | Ground | 0 Volts | Alim. | 0 Volts |
| B3,B29 | +5Vdc | 5 Volts | Alim. | Alimentation 5 volts |
| B7 | -12Vdc | -12 Volts | Alim. | Alimentation -12 volts |
| B9 | +12Vdc | 12 Volts | Alim. | Alimentation 12 volts |
| B30 | OSC | Sortie de l'oscillateur | Vers la carte | Horloge de 14,31818 Mhz |
| B13 | /IOW | Port parallèle 16 (Init) | Vers la carte |
Lorsque bas, provoque l'écriture
de l'octet présent sur le BUS de données
à l'addresse sur le BUS. |
| B14 | /IOR | Port parallèle 14 (Autofeed) | Vers la carte |
Lorsque bas, la carte gérant l'addresse
présente sur le BUS écrit un octet
sur le BUS de donnés. |
Voici une page résumant tout les signaux ISA et démontrant ou les signaux se situent
sur le connecteur:
http://pinouts.ru/data/ISA_pinout.shtml
Explication de l'addressage.
La carte adlib utilise les addresses 0x388 et 0x389. Il y a donc un seul
bit qui varie entre 388 et 389. Voici un tableau démontrant cela:
| 3
| 8
| 8
|
| 1 | 1 |
1 | 0 | 0 | 0 |
1 | 0 | 0 | 0 |
| Bit 9 | Bit 8 | Bit 7 |
Bit 6 | Bit 5 | Bit 4 |
Bit 3 | Bit 2 | Bit 1 |
Bit 0 |
| 3
| 8
| 9
|
| 1 | 1 |
1 | 0 | 0 | 0 |
1 | 0 | 0 | 1 |
| Bit 9 | Bit 8 | Bit 7 |
Bit 6 | Bit 5 | Bit 4 |
Bit 3 | Bit 2 | Bit 1 |
Bit 0 |
Ceci explique pourquoi le bit d'addresse #0 est connecté à un signal
en sortie du port parallèle (Strobe).
Note 2:
Puisqu'il restait encore un signal
sortant du port parallèle, j'ai décidé de cabler le bit
d'addresse #1, ce qui va me permettre de pouvoir controler une carte utilisant quatre
ports d'IO consécutifs.
Retour en haut
|