Accueil        Lexique        UNITéS        Algorithmes        Tutoriel   

Les unités de Pure Pascal (langage Pascal pour les ordinateurs de la gamme Atari ST), compatible Turbo Pascal.

Unité GEM : Procédure v_getbitmap_info

Cette page a été ajoutée au document HLP Atari d'Origine, car manquante

Déclaration

procedure v_getbitmap_info( handle, ch : Integer; var advx, advy, xoff, yoff, width, height : fix31 );

Description

L'appel v_getbitmap_info renvoie un pointeur vers la bitmap du caractère et fournit des informations sur le placement, la taille et l'alignement du caractère.
Paramètre Signification
handle Identifiant du poste de travail
ch Caractère don't on veut les infos
advx Avance X en 1/65536 pixels
advy Avance Y en 1/65536 pixels
xoff Décalage X en 1/65536 pixels
yoff Décalage Y en 1/65536 pixels
width Largeur du bitmap en pixels
height Hauteur du bitmap en pixels
Remarques : advx/y représentent les vecteurs de décalage pour le placement correct du caractère suivant. x/yoff sont les vecteurs de décalage du coin supérieur gauche de l'image bitmap par rapport à la position de la cellule de caractère. Ces vecteurs sont nécessaires car la plupart des images bitmap sont plus petites que la cellule qui les contient.

Pour obtenir une sortie reproductible, même sans NVDI, il est conseillé de désactiver les effets de texte. Le pointeur vers l'image bitmap pointant généralement vers le cache de caractères, il est conseillé de copier l'image bitmap directement après l'appel (conseil : inhiber le changement de contexte AES avec wind_update !), sinon le pointeur pourrait être invalide.

De plus, il est déconseillé d'appeler v_getbitmap_info pour les caractères très grands (par exemple, 300 points ou plus), car leur construction complète, selon la taille du cache, peut être impossible ; dans ce cas, l'image bitmap ne contient qu'une partie du caractère.

N'utilisez pas cette fonction pour écrire votre propre fonction de sortie de texte : elle ne serait pas plus rapide que v_ftext et vous ne pourriez pas effectuer de crénage par paires. Utilisez v_ftext !

Disponibilité 

À partir de SpeedoGDOS 4.00 et NVDI 3.00. (L'appel existait également dans FSMGDOS, mais avec un format d'appel complètement différent ; Atari l'a modifié, car aucun programme FSMGDOS ne l'utilisait à l'époque.)

Vous trouverez dans cette zone la liste de toutes les Unités (équivalent des "Librairies" en C) de Pure Pascal. Les Unités indiqués comme standards existent dans la majorité des compilateurs Pascal existant sur ordinateurs 16 bits et au dela (dont Turbo Pascal 3 mini). Les unités indiqués comme Atari sont spécifiques aux systèmes d'exploitation des Atari ST (TOS n.n).

Accès aux unités

Les menus déroulants de chaque unité sont des accès directs aux procédures et fonctions, classés alphabétiquement (sans tenir compte de la casse, puisque le langage Pascal ne tient pas compte de la casse!)
CRT (Standard)

DOS (Standard)

GEM : AES (Atari)

GEM : VDI (Atari)

Graph (Standard)

Overlay (Standard)

Printer Strings (Standard)

System (Standard)

TOS : BIOS (Atari)

TOS : GEMDOS (Atari)

TOS : XBIOS (Atari)

Cette page Unités est issu du fichier UNIT.HLP de la documentation de Pure Pascal (d'Application Systems Heidelberg), qui a été convertie en format TXT puis traduite de l'Allemand grâce à Google Translator : des milliers de copier/coller de et vers Google translator ont été nécessaires, ne connaissant pas un mot d'Allemand!

Les unités CRT, DOS, Graph, Overlay, Printer et System sont standard à TOUS les compilateurs Pascal compatible avec Turbo Pascal 5. L'unité String a été introduit avec Turbo Pascal 7 (Et Pure Pascal 1.1) et permet de manipuler les chaines de caractères de type langage C. Les Unités GEM (VDI et AES) et TOS (BIOS, GEMDOS et XBIOS) sont spécifiques au système Atari ST et contiennent parfois des fonctions équivalentes à certaines fonctions des Unités générales (notamment BIOS). Les fonction XBIOS sont des fonctions permettant de tirer pleinement partie du matériel spécifique Atari, notamment Falcon (Audio, DSP, Blitter, Résolutions étendues etc)


Copyright © 2021 par Albatros Concept (Bruno Aubin)