Section courante

A propos

Section administrative du site

 Langage  Elément  Tutoriel  Programmation  Plateforme  Compilateur  Outils  Emulateur  Annexe  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Introduction
Les remarques
Les opérateurs
Les instructions conditionnelles
Les instructions de boucles
Type de données élémentaire
Référence des registres
Mode d'adressage du processeur
Structure de données
Référence des instructions par catégories
Référence, lexique et dictionnaire des instructions 80x86
Les symboles prédéfinies
Les directives
Mode 8080
Mode réel
Mode protégé
Mode virtuel 8086
Mode SMM
Format du descripteur de segment
Format du TSS
Format du SMM
Format BCD
Format des nombres réels
8086/8088
Série NEC V20/V30
80286
80386
Pentium
Pentium Pro
AVX-512
MMX (MultiMedia eXtensions)
MPX (Memory Protection Extensions)
SGX (Software Guard Extensions)
SHA extensions
SMX (Safer Mode Extensions)
SSE (Streaming SIMD Extensions)
SSE2 (Streaming SIMD Extensions 2)
SSE3 (Streaming SIMD Extensions 3)
SSSE3 (Supplemental Streaming SIMD Extensions 3)
SSE4.1 (Streaming SIMD Extensions 4.1)
SSE4.2 (Streaming SIMD Extensions 4.2)
TSX (Transactional Synchronization Extensions)
VMX (Virtual-Machine eXtensions)
x86-64
Les boucles
Les chaînes
les comparaisons
Les conversions
Les décalages de bits
Les drapeaux
Les opérateurs
Saut conditionnel
Saut inconditionnel
Les transferts de données
Utilisation de la pile
Accès mémoire
Ensemble d'instructions pour les applications 80386
BIOS compatible au micro-ordinateur IBM PC
Démarrage du système
Détermination de la version du BIOS
Détermination du type de PC
Fonctions de sortie de l'écran du BIOS
Détermination de la configuration du système à l'aide du BIOS
Détermination de la RAM disponible à l'aide du BIOS
Accéder à la disquette depuis le BIOS
Accéder au disque dur depuis le BIOS
Accéder au port série depuis le BIOS
L'interruption de la cassette
Accéder au clavier depuis le BIOS
Accéder à l'imprimante à partir du BIOS
Lecture de la date et de l'heure à partir du BIOS
Variables du BIOS
Bonjour
Application
Détection
Mathématique
Temps
Stationnement de voiture
BIOS SCSI
CMOS de XT
DesqView
Valeur absolue (ABS)
Triangle Pascal
Année bissextile
DOS
GeoWorks
86-DOS
MS-DOS 2
MS-DOS 6
A86
LZASM
MASM
NASM
TASM
CodeView
Free Hex Editor Neo
OllyDbg
SoftICE
Turbo Debugger
DOSBox
emu8086
PCE - PC Emulator
PCem
Interruptions
Port d'entrée/sortie
RAM de l'IBM PC
Téléchargement
00h à 07h: Processeur
08h à 0Fh: Périphériques (IRQ0 à IRQ7)
10h: Gestionnaire vidéo
13h: Accès aux disques
14h: Gestion des ports séries
15h: Extension d'Entrée/Sortie
16h: Gestion du clavier
17h: Gestion de l'imprimante
21h: Service DOS
2Ah: Interface de service réseau
2Fh: Multiplexe
33h: Interface du pilote de souris
59h: GSS Computer Graphics Interface
5Ch: Réseau BIOS (NetBIOS)
67h: Gestionnaire EMM/EMS
00h: Mode vidéo
01h: Sélection du type de curseur
10h, F0h: Tseng Labs HiColor
4Fh: Pilote VESA
5Fh: Realtek RTVGA
6Fh: Video 7
18h: Demande des informations SCSI
01h: Écrit dans la RAM non-volatile (Amstrad PC1512)
02h: Lecture dans la RAM non-volatile (Amstrad PC1512)
10h: Gestionnaire principal TopView
89h: Entrée en mode protégé
64h: OS/2 API DOS32StartSession
FFh, 92h: Détecte la présence du pilote «PREDIR.EXE»
16h: Windows & DPMI
0Ah: Détection de Windows
84h: Demande le point d'entrée
86h: Détection du mode DPMI
87h: Détecte l'installation DPMI
8Eh: Machine virtuel et application
Préface
Notes légal
Dictionnaire
Recherche
Port d'entrée/sortie 80x86

0070h/0071h

AT, PS/2 CMOS RAM/RTC (MC146818)

Description

Les ports d'Entrée/Sortie 0070h et 0071h sont reliés au spécification du CMOS, le port 0070h donne accès à un registre, tandis que le 0071h est attribué à une commande de lecture ou d'écriture. Voici donc leur rôle :

Registre Description
00h Ce registre permet d'indiquer les secondes de l'horloge sur pile de l'ordinateur.
01h Ce registre permet d'indiquer les secondes de l'alarme.
02h Ce registre permet d'indiquer les minutes de l'horloge sur pile de l'ordinateur.
03h Ce registre permet d'indiquer les minutes de l'alarme.
04h Ce registre permet d'indiquer les heures de l'horloge sur pile de l'ordinateur.
05h Ce registre permet d'indiquer les heures de l'alarme.
06h Ce registre permet d'indiquer le jour de la semaine sur pile de l'ordinateur :
Valeur Description
01h Cette valeur permet d'indiquer le Dimanche.
02h Cette valeur permet d'indiquer le Lundi.
03h Cette valeur permet d'indiquer le Mardi.
04h Cette valeur permet d'indiquer le Mercredi.
05h Cette valeur permet d'indiquer le Jeudi.
06h Cette valeur permet d'indiquer le Vendredi.
07h Cette valeur permet d'indiquer le Samedi.
07h Ce registre permet d'indiquer le jour du mois sur pile de l'ordinateur.
08h Ce registre permet d'indiquer le mois sur pile de l'ordinateur :
Valeur Description
01h Cette valeur permet d'indiquer le mois de Janvier.
02h Cette valeur permet d'indiquer le mois de Février.
03h Cette valeur permet d'indiquer le mois de Mars.
04h Cette valeur permet d'indiquer le mois d'Avril.
05h Cette valeur permet d'indiquer le mois de Mai.
06h Cette valeur permet d'indiquer le mois de Juin.
07h Cette valeur permet d'indiquer le mois de Juillet.
08h Cette valeur permet d'indiquer le mois d'Août.
09h Cette valeur permet d'indiquer le mois de Septembre.
0Ah Cette valeur permet d'indiquer le mois d'Octobre en mode binaire.
0Bh Cette valeur permet d'indiquer le mois de Novembre en mode binaire.
0Ch Cette valeur permet d'indiquer le mois de Décembre en mode binaire.
10h Cette valeur permet d'indiquer le mois d'Octobre en mode BCD.
11h Cette valeur permet d'indiquer le mois de Novembre en mode BCD.
12h Cette valeur permet d'indiquer le mois de Décembre en mode BCD.
09h Ce registre permet d'indiquer l'année sur pile de l'ordinateur.
0Ah Ce registre permet d'indiquer le registre d'état A de la CMOS RAM/RTC :
Bit Description
0 à 3 Ces bits permettant d'indiquer les impulsions de sorties. Par défaut, fixé à 0110b = 1,024 kHz, 976,562 microsecondes :
Valeur Description
0000b Cette valeur permet d'indiquer qu'il n'y aucune impulsions.
0011b Cette valeur permet d'indiquer qu'il y 122 microsecondes d'impulsions.
0110b Cette valeur permet d'indiquer qu'il y 976,562 microsecondes d'impulsions.
1111b Cette valeur permet d'indiquer qu'il y 500 microsecondes d'impulsions.
4 à 6 Ces bits permettant d'indiquer les impulsions d'entrée. Par défaut, fixé à 010b = 32,768 kHz
7 Ce bit permet d'indiquer si une mise-à-jour est nécessaire :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y a pas de mise-à-jour de l'horloge.
1 Cette valeur permet d'indiquer qu'il y a une mise-à-jour de l'horloge.
0Bh Ce registre permet d'indiquer le registre d'état B de la CMOS RAM/RTC.
Bit Description
0 Ce bit permet d'indiquer l'état de l'heure d'été :
Valeur Description
0 Cette valeur permet d'indiquer que l'heure d'été n'est pas activé.
1 Cette valeur permet d'indiquer que l'heure d'été est activé.
1 Ce bit permet d'indiquer le format de l'heure :
Valeur Description
0 Cette valeur permet d'indiquer que l'heure est sur une base de 12 heures avec un AM et PM.
1 Cette valeur permet d'indiquer que l'heure est sur une base de 24 heures.
2 Ce bit permet d'indiquer le format de données :
Valeur Description
0 Cette valeur permet d'indiquer que les données sont encodés en format BCD.
1 Cette valeur permet d'indiquer que les données sont encodés en format binaire.
3 Ce bit permet d'indiquer le signal de fréquence rectangulaire :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y a pas de signal de fréquence rectangulaire.
1 Cette valeur permet d'indiquer qu'il y a un signal de fréquence rectangulaire.
4 Ce bit permet d'indiquer si les données de l'horloge sont mise-à-jour et l'interruption est exécuté :
Valeur Description
0 Cette valeur permet d'indiquer que les données ne sont pas mise-à-jour et que l'interruption n'est pas exécuté.
1 Cette valeur permet d'indiquer que les données sont mise-à-jour et que l'interruption est exécuté.
5 Ce bit permet d'indiquer si l'interruption d'alarme est autorisé :
Valeur Description
0 Cette valeur permet d'indiquer que l'interruption d'alarme n'est pas autorisé.
1 Cette valeur permet d'indiquer que l'interruption d'alarme est autorisé.
6 Ce bit permet d'indiquer si l'interruption périodique est autorisé :
Valeur Description
0 Cette valeur permet d'indiquer que l'interruption périodique n'est pas autorisé.
1 Cette valeur permet d'indiquer que l'interruption périodique est autorisé.
7 Ce bit permet d'indiquer que la date et l'heure sont réinitialisés :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y a pas de réinitialisation.
1 Cette valeur permet d'indiquer qu'il y a une réinitialisation.
0Ch Ce registre permet d'indiquer le registre d'état C de la CMOS RAM/RTC.
Bit Description
0 à 3 Ces bits ont toujours la valeur 0.
4 Ce bit permet d'indiquer la mise-à-jour de l'horloge après l'interruption :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y pas d'événement de mise-à-jour.
1 Cette valeur permet d'indiquer qu'il a mise-à-jour de l'horloge après l'interruption.
5 Ce bit permet d'indiquer l'interruption d'alarme programmable :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y pas d'événement d'interruption d'alarme.
1 Cette valeur permet d'indiquer qu'il y a un événement d'interruption d'alarme.
6 Ce bit permet d'indiquer l'interruption périodique :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y pas d'événement d'interruption périodique.
1 Cette valeur permet d'indiquer qu'il y a un événement d'interruption périodique.
7 Ce bit permet d'indiquer l'interruption :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y pas d'événement d'interruption.
1 Cette valeur permet d'indiquer qu'il y a un événement d'interruption.
0Dh Ce registre permet d'indiquer le registre d'état D de la CMOS RAM/RTC :
Bit Description
0 à 6 Ces bits ont toujours la valeur 0.
7 Ce bit permet d'indiquer l'état du fonctionnement de l'horloge :
Valeur Description
0 Cette valeur permet d'indiquer que l'horloge fonctionne normalement.
1 Cette valeur permet d'indiquer que l'horloge ne fonctionne pas correctement, problème d'alimentation. Il s'agit la plupart du temps d'une batterie n'ayant plus aucune charge.
0Eh Ce registre permet d'indiquer l'état de diagnostique de la CMOS RAM/RTC :
Bit Description
0 à 1 Ces bits sont réservés
2 Ce bit permet d'indiquer l'état de l'analyse de l'heure :
Valeur Description
0 Cette valeur permet d'indiquer que l'heure est correcte.
1 Cette valeur permet d'indiquer que l'heure est invalide.
3 Ce bit permet d'indiquer l'état de l'analyse du contrôleur de disque dur :
Valeur Description
0 Cette valeur permet d'indiquer que le contrôleur de disque dur est correcte.
1 Cette valeur permet d'indiquer que le contrôleur de disque dur ou le disque dur lui-même n'est pas correctement initialisé.
4 Ce bit permet d'indiquer l'analyse de la taille de la mémoire par défaut :
Valeur Description
0 Cette valeur permet d'indiquer que la taille de la mémoire est correcte.
1 Cette valeur permet d'indiquer que la taille de la mémoire ne correspond pas aux entrées.
5 Ce bit permet d'indiquer l'état de la configuration :
Valeur Description
0 Cette valeur permet d'indiquer que la configuration est correcte.
1 Cette valeur permet d'indiquer que la configuration est incorrecte ou endommagé.
6 Ce bit permet d'indiquer que le résultat du test de sommation de vérification :
Valeur Description
0 Cette valeur permet d'indiquer que la sommation est incorrecte.
1 Cette valeur permet d'indiquer que la sommation est normal.
7 Ce bit permet d'indiquer l'état d'alimentation du MC146818 :
Valeur Description
0 Cette valeur permet d'indiquer qu'il fonctionne correctement.
1 Cette valeur permet d'indiquer que l'heure a été interrompu.
0Fh Ce registre permet d'indiquer l'état de redémarrage de la CMOS RAM/RTC :
Valeur Description
00h Cette valeur permet d'indiquer une réinitialisation logiciel ou redémarrage non demandé.
01h Cette valeur permet d'indiquer un redémarrage après que la taille de la mémoire est identifié.
02h Cette valeur permet d'indiquer un redémarrage après que la mémoire a été testé.
03h Cette valeur permet d'indiquer un redémarrage avec une erreur de mémoire.
04h Cette valeur permet d'indiquer un redémarrage avec une requête de redémarrage de chargement.
05h Cette valeur permet d'indiquer une requête «JMP DWORD» avec une initialisation d'interruption (INT).
06h Cette valeur permet d'indiquer un test 7 de mode protégé passé.
07h Cette valeur permet d'indiquer un test 7 de mode protégé échoué.
08h Cette valeur permet d'indiquer un test 1 de mode protégé échoué.
09h Cette valeur permet d'indiquer une requête de déplacement de bloc lors de redémarrage.
0Ah Cette valeur permet d'indiquer une requête «JMP DWORD» sans initialisation d'interruption (INT).
10h Ce registre permet d'indiquer le type d'unité de disquette :
Bit Description
0 à 3 Ce bit permet d'indiquer le type d'unité de disquette «A:» :
Valeur Description
0000b Cette valeur permet d'indiquer qu'il n'y a pas d'unité de disquette d'installé.
0001b Cette valeur permet d'indiquer une unité de disquette 5 1/4" 360 Ko.
0010b Cette valeur permet d'indiquer une unité de disquette 5 1/4" 1,2 Mo.
0011b Cette valeur permet d'indiquer une unité de disquette 3 1/2" 720 Ko.
0100b Cette valeur permet d'indiquer une unité de disquette 3 1/2" 1,44 Mo.
0101b Cette valeur permet d'indiquer une unité de disquette 3 1/2" 2,88 Mo.
4 à 7 Ce bit permet d'indiquer le type d'unité de disquette «B:» :
Valeur Description
0000b Cette valeur permet d'indiquer qu'il n'y a pas d'unité de disquette d'installé.
0001b Cette valeur permet d'indiquer une unité de disquette 5 1/4" 360 Ko.
0010b Cette valeur permet d'indiquer une unité de disquette 5 1/4" 1,2 Mo.
0011b Cette valeur permet d'indiquer une unité de disquette 3 1/2" 720 Ko.
0100b Cette valeur permet d'indiquer une unité de disquette 3 1/2" 1,44 Mo.
0101b Cette valeur permet d'indiquer une unité de disquette 3 1/2" 2,88 Mo.
11h Ce registre permet d'indiquer la vitesse de répétition du clavier avec un BIOS AMI :
Bit Description
0 à 4 Ces bits permettent d'indiquer taux de répétition d'une touche clavier :
Valeur Description
00000b Cette valeur permet d'indiquer un taux de répétition de 30,0 caractères par seconde
00001b Cette valeur permet d'indiquer un taux de répétition de 26,7 caractères par seconde
00010b Cette valeur permet d'indiquer un taux de répétition de 24,0 caractères par seconde
00011b Cette valeur permet d'indiquer un taux de répétition de 21,8 caractères par seconde
00100b Cette valeur permet d'indiquer un taux de répétition de 20,0 caractères par seconde
00101b Cette valeur permet d'indiquer un taux de répétition de 18,5 caractères par seconde
00110b Cette valeur permet d'indiquer un taux de répétition de 17,1 caractères par seconde
00111b Cette valeur permet d'indiquer un taux de répétition de 16,0 caractères par seconde
01000b Cette valeur permet d'indiquer un taux de répétition de 15,0 caractères par seconde
01001b Cette valeur permet d'indiquer un taux de répétition de 13,3 caractères par seconde
01010b Cette valeur permet d'indiquer un taux de répétition de 12,0 caractères par seconde
01011b Cette valeur permet d'indiquer un taux de répétition de 10,9 caractères par seconde
01100b Cette valeur permet d'indiquer un taux de répétition de 10,0 caractères par seconde
01101b Cette valeur permet d'indiquer un taux de répétition de 9,2 caractères par seconde
01110b Cette valeur permet d'indiquer un taux de répétition de 8,6 caractères par seconde
01111b Cette valeur permet d'indiquer un taux de répétition de 8,0 caractères par seconde
10000b Cette valeur permet d'indiquer un taux de répétition de 7,5 caractères par seconde
10001b Cette valeur permet d'indiquer un taux de répétition de 6,7 caractères par seconde
10010b Cette valeur permet d'indiquer un taux de répétition de 6,0 caractères par seconde
10011b Cette valeur permet d'indiquer un taux de répétition de 5,5 caractères par seconde
10100b Cette valeur permet d'indiquer un taux de répétition de 5,0 caractères par seconde
10101b Cette valeur permet d'indiquer un taux de répétition de 4,6 caractères par seconde
10110b Cette valeur permet d'indiquer un taux de répétition de 4,3 caractères par seconde
10111b Cette valeur permet d'indiquer un taux de répétition de 4,0 caractères par seconde
11000b Cette valeur permet d'indiquer un taux de répétition de 3,7 caractères par seconde
11001b Cette valeur permet d'indiquer un taux de répétition de 3,3 caractères par seconde
11010b Cette valeur permet d'indiquer un taux de répétition de 3,0 caractères par seconde
11011b Cette valeur permet d'indiquer un taux de répétition de 2,7 caractères par seconde
11100b Cette valeur permet d'indiquer un taux de répétition de 2,5 caractères par seconde
11101b Cette valeur permet d'indiquer un taux de répétition de 2,3 caractères par seconde
11110b Cette valeur permet d'indiquer un taux de répétition de 2,1 caractères par seconde
11111b Cette valeur permet d'indiquer un taux de répétition de 2,0 caractères par seconde
5 à 6 Ces bits permettent d'indiquer délai de répétition d'une touche clavier :
Valeur Description
00b Cette valeur permet d'indiquer une 250 millisecondes
01b Cette valeur permet d'indiquer une 500 millisecondes
10b Cette valeur permet d'indiquer une 750 millisecondes
11b Cette valeur permet d'indiquer une 1000 millisecondes
7 Ce bit permet d'indiquer la programmation taux de répétition d'une touche clavier est activé ou désativé.
12h Ce registre permet d'indiquer le type d'unité de disque dur.
13h Ce registre permet d'indiquer le drapeau de configuration système et démarrage avec un BIOS AMI :
Bit Description
0 Ce bit permet d'indiquer si la touche NumLock est activé ou désactivé au démarrage.
1 Ce bit permet d'indiquer si une attente après la touche F1 après n'importe quel message d'erreur est activé ou désactivé au démarrage.
2 Ce bit permet d'indiquer qu'elle type de disque dur 47 dans la région de la RAM est utilisé : 0000h:0300h ou 1 Ko dans la région haute du DOS.
3 Ce bit permet d'indiquer si un déclencheur d'affichage de l'utilitaire SETUP est activé ou désactivé.
4 Ce bit permet d'indiquer si une vérification d'erreur de parité de mémoire est activé ou désactivé.
5 Ce bit permet d'indiquer si un tic sonore lors du test de mémoire est activé ou désactivé.
6 Ce bit permet d'indiquer si un test de la mémoire au delà du 1 Mo est activé ou désactivé.
7 Ce bit permet d'indiquer si le support de la souris est activé ou désactivé.
14h Ce registre permet d'indiquer l'octet d'équipement :
Bit Description
0 Ce bit permet d'indiquer si au moins une unité de disquette est installé :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y a pas d'unité de disquette d'installé.
1 Cette valeur permet d'indiquer qu'il y a au moins une unité de disquette d'installé.
1 Ce bit permet d'indiquer si un coprocesseur mathématique est installé :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y a pas de coprocesseur mathématique d'installé.
1 Cette valeur permet d'indiquer qu'il y a un coprocesseur mathématique d'installé.
2 à 3 Ces bits sont réservés.
4 à 5 Ces bits permettent d'indiquer l'affichage primaire :
Valeur Description
00b Cette valeur permet d'indiquer qu'il n'y a pas d'affichage primaire.
01b Cette valeur permet d'indiquer que l'affichage primaire est 40 caractères par ligne en mode couleur (CGA).
10b Cette valeur permet d'indiquer que l'affichage primaire est 80 caractères par ligne en mode couleur (CGA).
11b Cette valeur permet d'indiquer que l'affichage primaire est monochrome.
6 à 7 Ces bits permettent d'indiquer le nombre d'unité de disquette :
Valeur Description
00b Cette valeur permet d'indiquer qu'il y a qu'un seul unité de disquette.
01b Cette valeur permet d'indiquer qu'il y a deux unités de disquette.
10b Cette valeur permet d'indiquer qu'il y a trois unités de disquette.
11b Cette valeur permet d'indiquer qu'il y a quatre unités de disquette.
15h Ce registre permet d'indiquer l'octet de poids faible de la taille de la mémoire conventionnel en KiloOctets.
16h Ce registre permet d'indiquer l'octet de poids fort de la taille de la mémoire conventionnel en KiloOctets.
17h Ce registre permet d'indiquer l'octet de poids faible de la taille de la mémoire étendue en accord avec la valeur du SETUP du BIOS en KiloOctets.
18h Ce registre permet d'indiquer l'octet de poids fort de la taille de la mémoire étendue en accord avec la valeur du SETUP du BIOS en KiloOctets.
19h Ce registre permet d'indiquer l'octet d'extension de l'unité de disque «C:». Utilisé par les AT seulement.
1Ah Ce registre permet d'indiquer l'octet d'extension de l'unité de disque «D:». Utilisé par les AT seulement.
1Bh Ce registre permet d'indiquer l'octet de poids faible du nombre de cylindres de l'unité de disque «C:» avec une définition utilisateur.
1Ch Ce registre permet d'indiquer l'octet de poids fort du nombre de cylindres de l'unité de disque «C:» avec une définition utilisateur.
1Dh Ce registre permet d'indiquer le nombre de têtes de l'unité de disque «C:» avec une définition utilisateur.
1Eh Ce registre permet d'indiquer l'octet de poids faible du cylindres de précompensation d'écriture de l'unité de disque «C:» avec une définition utilisateur.
1Fh Ce registre permet d'indiquer l'octet de poids fort du cylindres de précompensation d'écriture de l'unité de disque «C:» avec une définition utilisateur.
20h Ce registre permet d'indiquer l'octet de contrôle de l'unité de disque «C:» avec une définition utilisateur.
21h Ce registre permet d'indiquer l'octet de poids faible de la zone Landing de l'unité de disque «C:» avec une définition utilisateur.
22h Ce registre permet d'indiquer l'octet de poids faible de la zone Landing de l'unité de disque «C:» avec une définition utilisateur.
23h Ce registre permet d'indiquer le nombre de secteurs de l'unité de disque «C:» avec une définition utilisateur.
24h Ce registre permet d'indiquer l'octet de poids faible du nombre de cylindres de l'unité de disque «D:» avec une définition utilisateur.
25h Ce registre permet d'indiquer l'octet de poids fort du nombre de cylindres de l'unité de disque «D:» avec une définition utilisateur.
26h Ce registre permet d'indiquer le nombre de têtes de l'unité de disque «D:» avec une définition utilisateur.
27h Ce registre permet d'indiquer l'octet de poids faible du cylindres de précompensation d'écriture de l'unité de disque «D:» avec une définition utilisateur.
28h Ce registre permet d'indiquer l'octet de poids fort du cylindres de précompensation d'écriture de l'unité de disque «D:» avec une définition utilisateur.
29h Ce registre permet d'indiquer l'octet de contrôle de l'unité de disque «D:» avec une définition utilisateur.
2Ah Ce registre permet d'indiquer l'octet de poids faible de la zone Landing de l'unité de disque «D:» avec une définition utilisateur.
2Bh Ce registre permet d'indiquer l'octet de poids faible de la zone Landing de l'unité de disque «D:» avec une définition utilisateur.
2Ch Ce registre permet d'indiquer le nombre de secteurs de l'unité de disque «D:» avec une définition utilisateur.
2Dh Ce registre permet d'indiquer le drapeau d'opérations système avec un BIOS AMI :
Bit Description
0 Ce bit permet d'indiquer si la fonction d'échangeur Turbo est activé ou désactivé.
1 Ce bit permet d'indiquer si le pont d'opération rapide A20 est activé ou désactivé.
2 Ce bit permet d'indiquer si le cache interne est activé ou désactivé.
3 Ce bit permet d'indiquer si le cache interne est activé ou désactivé.
4 Ce bit permet d'indiquer si le démarrage rapide du CPU est haut ou bas.
5 Ce bit permet d'indiquer si le séquence de démarrage est activé ou désactivé.
6 Ce bit permet d'indiquer si le positionnement de la disquette sur un secteur de démarrage est activé ou désactivé.
7 Ce bit permet d'indiquer si le processeur Weitek est présent ou absent.
2Eh Ce registre permet d'indiquer l'octet de la partie basse de la somme de vérification.
2Fh Ce registre permet d'indiquer l'octet de la partie haute de la somme de vérification.
30h Ce registre permet d'indiquer l'octet de poids faible de la taille de la mémoire étendue en accord avec la valeur du POST.
31h Ce registre permet d'indiquer l'octet de poids fort de la taille de la mémoire étendue en accord avec la valeur du POST.
32h Ce registre permet d'indiquer le siècle sur pile de l'ordinateur en format BCD.
33h Ce registre permet d'indiquer les informations d'ajustement :
Bit Description
0 Ce bit permet d'indiquer si le test de cache de POST a réussis ou échoué.
1 à 5 Ces bits sont réservés.
6 Ce bit permet d'indiquer le drapeau d'initialisation de message du SETUP.
7 Ce bit permet d'indiquer si la cartouche d'extension BIOS de 128 Ko est installé :
Valeur Description
0 Cette valeur permet d'indiquer qu'il n'y a pas de cartouche BIOS d'extension de 128 Ko d'installé.
1 Cette valeur permet d'indiquer qu'il y a une cartouche BIOS d'extension de 128 Ko d'installé.
34h Ce registre permet d'indiquer les options de BIOS et de drapeau de Shadow avec un BIOS AMI :
Bit Description
0 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse DC00h d'une taille de 16 Ko.
1 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse D800h d'une taille de 16 Ko.
2 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse D400h d'une taille de 16 Ko.
3 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse D000h d'une taille de 16 Ko.
4 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse CC00h d'une taille de 16 Ko.
5 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse C800h d'une taille de 16 Ko.
6 Ce bit permet d'indiquer que l'option de vérification de mot de passe est activé ou désactivé.
7 Ce bit permet d'indiquer d'activer ou désactiver la protection du secteur de démarrage contre les virus.
35h à 3Ch Ces registres permettent d'indiquer les paramètres de type 49 de disque dur.
35h Ce registre permet d'indiquer les options supplémentaire de BIOS et de drapeau de Shadow avec un BIOS AMI :
Bit Description
0 Ce bit permet d'indiquer d'activer ou désactiver le test de coprocesseur mathématique.
1 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse C400h d'une taille de 16 Ko.
2 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse C000h d'une taille de 16 Ko.
3 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse F000h d'une taille de 16 Ko.
4 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse EC00h d'une taille de 16 Ko.
5 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse E800h d'une taille de 16 Ko.
6 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse E400h d'une taille de 16 Ko.
7 Ce bit permet d'indiquer d'activer ou désactiver le Shadow sur l'adaptateur de ROM à l'adresse E000h d'une taille de 16 Ko.
36h Ce registre permet d'indiquer les informations de l'ensemble de puces sur certains avec un BIOS AWARD.
37h Ce registre permet d'indiquer les options de couleurs et paramètre du mot de passe avec un BIOS AWARD.
38h à 3Dh Ces registres permettent d'indiquer le mot de passe encrypté avec un BIOS AMI.
3Dh à 3Fh Ces registres sont réservés.

Remarques

Exemple

L'exemple suivant permet de retourner dans la paire de registres DX:AX le tic d'horloge de 18,2 par seconde identique à celle retourner par l'Interruption 1Ah, Fonction 00h en utilisant uniquement le contenu des cellules de mémoire du CMOS RAM/RTC :

  1. XOR AX,AX
  2. XOR DX,DX
  3. OUT 70h,AL
  4. IN  AL,71h
  5. MOV BL,AL
  6. MOV BH,AL
  7. AND BL,0Fh
  8. MOV CL,4
  9. SHR BH,CL
  10. MOV AL,10
  11. MUL BH
  12. ADD BL,AL
  13. MOV AL,18
  14. MUL BL
  15. MOV SI,AX
  16. MOV AL,2
  17. OUT 70h,AL
  18. IN  AL,71h
  19. MOV BL,AL
  20. MOV BH,AL
  21. AND BL,0Fh
  22. MOV CL,4
  23. SHR BH,CL
  24. MOV AL,10
  25. MUL BH
  26. ADD BL,AL
  27. MOV AL,182
  28. MUL BL
  29. MOV BX,6
  30. MUL BX
  31. ADD AX,SI
  32. ADC DX,0
  33. MOV SI,AX
  34. MOV DI,DX
  35. MOV AL,4
  36. OUT 070h,AL
  37. IN  AL,071h
  38. MOV BL,AL
  39. MOV BH,AL
  40. AND BL,0Fh
  41. MOV CL,4
  42. SHR BH,CL
  43. MOV AL,10
  44. MUL BH
  45. ADD BL,AL
  46. MOV AL,182
  47. MUL BL
  48. MOV BX,360
  49. MUL BX
  50. ADD AX,SI
  51. ADC DX,DI

Voir également

Langage de programmation - Assembleur 80x86 - Références des ports d'entrée/sortie 80x86 - Registre de données de la CMOS étendue (PS/2)
Langage de programmation - Assembleur 80x86 - Références des ports d'entrée/sortie 80x86 - Registre de données de la CMOS RAM/RTC (Certain XT disposant CMOS (Wyse XT, Amdek System/88)
Interruption 15h: Fonction 01h: Écrit dans la RAM non-volatile (Amstrad PC1512)
Interruption 15h: Fonction 02h: Lecture dans la RAM non-volatile (Amstrad PC1512)

Références

ABIOS for IBM PS/2 Computers and Compatibles - The Complete Guide to ROM-Based System Software for OS/2, Edition Addison-Wesley, Phoenix Technologies Ltd., 1987, ISBN: 0-201-51805-8, page 525 à 528.
Le livre d'Or PC, Martin Althaus, 1992, ISBN: 2-7361-0934-1, page 399 à 403.
The Indispensable PC Hardware Book - Fourth Edition, Edition Addison-Wesley, Hans-Peter Messmer, 2002, ISBN: 0-201-59616-4, page 604.

PARTAGER CETTE PAGE SUR
Dernière mise à jour : Samedi, le 2 août 2014