www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

ata.h (1664B)


      1 #ifndef STOCKAGE_ATA_ATA_H
      2 #define STOCKAGE_ATA_ATA_H
      3 
      4 #define PORT_ATA                             0x1f0
      5 
      6 #define PORT_ATA_DONNEES                     PORT_ATA + 0
      7 
      8 #define PORT_ATA_ERREUR                      PORT_ATA + 1
      9 
     10 #define PORT_ATA_NOMBRE_SECTEURS             PORT_ATA + 2
     11 
     12 #define PORT_ATA_ADRESSE_PARTIELLE_SECTEUR   PORT_ATA + 3
     13 #define PORT_ATA_ADRESSE_PARTIELLE_SECTEUR_1 PORT_ATA_ADRESSE_PARTIELLE_SECTEUR + 0
     14 #define PORT_ATA_ADRESSE_PARTIELLE_SECTEUR_2 PORT_ATA_ADRESSE_PARTIELLE_SECTEUR + 1
     15 #define PORT_ATA_ADRESSE_PARTIELLE_SECTEUR_3 PORT_ATA_ADRESSE_PARTIELLE_SECTEUR + 2
     16 
     17 
     18 #define PORT_ATA_DIVERS                      PORT_ATA + 6
     19 #define PORT_ATA_SELECTION_LECTEUR           PORT_ATA_DIVERS
     20 #define PORT_ATA_DRAPEAUX                    PORT_ATA_DIVERS
     21 #define PORT_ATA_FIN_ADRESSE_SECTEUR         PORT_ATA_DIVERS
     22 
     23 #define PORT_ATA_COMMANDE_ETAT               PORT_ATA + 7
     24 #define PORT_ATA_COMMANDE                    PORT_ATA_COMMANDE_ETAT
     25 #define PORT_ATA_ETAT                        PORT_ATA_COMMANDE_ETAT
     26 
     27 #define PORT_ATA_CONTROLE_ETAT_ALTERNATIF    0x3f6
     28 #define PORT_ATA_CONTROLE                    PORT_ATA_CONTROLE_ETAT_ALTERNATIF
     29 #define PORT_ATA_ETAT_ALTERNATIF             PORT_ATA_CONTROLE_ETAT_ALTERNATIF
     30 
     31 typedef struct AtaOctetEtat {
     32 	bool srv:1; /* TODO : traduire "Overlapped mode service request" */
     33 	bool erreurDisque:1;
     34 	bool pret:1;
     35 	bool occupe:1;
     36 	bool transfertPret:1;
     37 	uint8 reserve:2;
     38 	bool erreur;
     39 } AtaOctetEtat;
     40 
     41 typedef struct AtaControle {
     42 	uint8 reserve_b:1;
     43 	bool interruptions:1;
     44 	bool reInitialisation:1;
     45 	uint8 reserve_a:4;
     46 	bool octetHaut:1;
     47 } AtaControle;
     48 
     49 
     50 typedef struct EtatAta {
     51 } EtatAta;
     52 
     53 #endif