Section courante

A propos

Section administrative du site

Interruption 10h

Fonction 11h, Sous-Fonction 12h

Active/charge une police 8x8
EGA, MCGA, VGA, IBM 8514/A, SVGA

Description

Cette fonction permet de charger/activer un ensemble de police de caractères de dimension 8x8 pixels.

Entrée

Registre Description
AX 1112h
BL Ce registre permet d'indiquer la table de caractères appelée (0 ou 1)

Sortie

 Aucune

Remarques

Exemple

Voici un exemple montrant comment utiliser le mode d'écran texte 80x43 sans utilisé les routines de base du Turbo Pascal :

  1. Program Mode43;
  2.  
  3. Var
  4.  I:Byte;
  5.  S:String;
  6.  
  7. Procedure GotoXY43(X,Y:Byte);Begin
  8.  Mem[$0000:$0450]:=X-1;
  9.  Mem[$0000:$0451]:=Y-1;
  10. End;
  11.  
  12. Procedure Write43(Const S:String);
  13. Var
  14.  X:Byte Absolute $0000:$0450;
  15.  Y:Byte Absolute $0000:$0451;
  16.  I:Byte;
  17. Begin
  18.  For I:=1 to Length(S)do Begin
  19.   Mem[$B800:(X+I-1+(Y*80))shl 1]:=Byte(S[I]);
  20.  End;
  21. End;
  22.  
  23. BEGIN
  24.  ASM
  25.   MOV AX,0003h
  26.   INT 10h
  27.   MOV AX,01201h
  28.   MOV BX,00030h
  29.   INT 010h
  30.   MOV AX,1112h
  31.   MOV BL,0
  32.   INT 10h
  33.  END;
  34.  For I:=1 to 43 do Begin
  35.   GotoXY43(1,I);
  36.   Str(I,S);
  37.   Write43('Ligne '+S);
  38.  End;
  39.  GotoXY43(1,43);
  40.  Write43('Presse une touche pour quitter...');
  41.  ASM
  42.   XOR AX,AX
  43.   INT 16h
  44.  END;
  45. END.

on obtiendra le résultat suivant :

Voir également

Assembleur 80x86 - Interruption 10h: Fonction 12h, Sous-Fonction 30h - Fixe le balayage

Références

La Bible du PC: Programmation système - Sixième Edition, Edition Micro-Application, Michael Tischer, 1996, ISBN: 2-7429-0544-8, page 1597.
The Undocumented PC: A programmer's Guide to I/O, CPUs, and Fixed Memory Areas - Second Edition, Edition Addison-Wesley, Frank van Gilluwe, 1997, ISBN: 0-201-47950-8, page 420.

Dernière mise à jour : Jeudi, le 3 mars 2016