PAlib: Référence du fichier PA_Draw.h

Page principale | Modules | Liste des fichiers | Portée globale | Rechercher

# Référence du fichier PA_Draw.h

Bitmap mode, for drawing, loading images in 8 or 16 bit mode... Plus de détails...

Aller au code source de ce fichier.

## Structures de données

struct | BMPHeader0
struct | BMP_Headers

## Macros

#define | PA_RGB8(r, g, b) ((((b)>>3)<<10)|(((g)>>3)<<5)|((r)>>3)|(1 << 15))
#define | PA_Get16bitPixel(screen, x, y) PA_DrawBg[screen][x + (y << 8)]
| Récupérer la couleur d'un pixel, en mode dessin 16 bit
#define | PA_SetDrawSize(screen, draw_size) PA_drawsize[screen] = draw_size;
| Regler la taille du stylo quand on dessine.
#define | PA_Load8bitBitmap(screen, bitmap) DMA_Copy(bitmap, (void*)PA_DrawBg[screen], 256*96, DMA_16NOW);
| Charger une image à l'écran... pour une fond dessinable de 8 bits
#define | PA_Load16bitBitmap(screen, bitmap)
| Charger une image à l'écran... pour une fond dessinable de 16 bits
#define | PA_Clear8bitBg(screen) DMA_Copy(Blank, (void*)PA_DrawBg[screen], 256*96, DMA_16NOW);
| Efface l'écran... pour une fond dessinable de 8 bits
#define | PA_Clear16bitBg(screen) DMA_Copy(Blank, (void*)PA_DrawBg[screen], 256*192, DMA_16NOW)
| Efface l'écran... pour une fond dessinable de 16 bits

## Fonctions

void | PA_Load16bitGif (u8 screen, s16 x, s16 y, void *gif)
int | DecodeGif (const u8 *userData, u8 *ScreenBuff, u16 *Palette, u8 nBits, s16 SWidth)
void | PA_Init8bitBg (u8 screen, u8 bg_priority)
| Initialise le mode de dessin 8 bit (avec palette). Il suffit de choisir l'écran et la priorité de ce font (de 0 à 3). Ce fond sera placé sur le fond 3 (le remplacant), et doit etre chargé avant tout autre fond ! Prend environ 3/8 de la VRAM
void | PA_Init16bitBg (u8 screen, u8 bg_priority)

Initialise le mode de dessin 16 bit (sans palettes, couleurs RGB). Il suffit de choisir l'écran et la priorité de ce font (de 0 à 3). Ce fond sera placé sur le fond 3 (le remplacant), et doit etre chargé avant tout autre fond ! Prend environ 3/8 de la VRAM

void | PA_Put8bitPixel (u8 screen, s16 x, s16 y, u8 color)
| Dessine un pixel à l'écran, sur un fond de 8 bits
void | PA_Put2_8bitPixels (u8 screen, s16 x, s16 y, u16 colors)
| Dessine deux pixels à l'écran, sur un fond de 8 bits. Ces pixels sont contigus, et le premier doit avoir une position X pair. Beaucoup plus rapide que de dessiner les 2 pixels séparemment
void | PA_PutDouble8bitPixels (u8 screen, s16 x, s16 y, u8 color1, u8 color2)
| Dessine deux pixels à l'écran, sur un fond de 8 bits. Ces pixels sont contigus, et le premier doit avoir une position X pair. Beaucoup plus rapide que de dessiner les 2 pixels séparemment
void | PA_Put4_8bitPixels (u8 screen, s16 x, s16 y, u32 colors)
| Dessine 4 pixels à l'écran, sur un fond de 8 bits. Ces pixels sont contigus, et le premier doit avoir une position X pair. Façon la plus rapide de dessiner à l'écran
u8 | PA_Get8bitPixel (u8 screen, u8 x, u8 y)
| Récupérer la couleur d'un pixel, en mode dessin 8 bit
void | PA_Put16bitPixel (u8 screen, s16 x, s16 y, u16 color)
| Dessine un pixel à l'écran, sur un fond de 16 bits
void | PA_Draw8bitLine (u8 screen, u16 x1, u16 y1, u16 x2, u16 y2, u8 color)
| Dessiner une ligne en mode dessin... pour le mode dessin 8 bit
void | PA_Draw16bitLine (u8 screen, u16 x1, u16 y1, u16 x2, u16 y2, u16 color)
| Dessiner une ligne en mode dessin... pour le mode dessin 16 bit
void | PA_Draw16bitLineEx (u8 screen, s16 basex, s16 basey, s16 endx, s16 endy, u16 color, s8 size)
| Dessiner une ligne épaisse en mode dessin... pour le mode dessin 16 bit
void | PA_Draw8bitLineEx (u8 screen, s16 basex, s16 basey, s16 endx, s16 endy, u8 color, s8 size)
| Dessiner une ligne épaisse en mode dessin... pour le mode dessin 8 bit
void | PA_Draw16bitRect (u8 screen, s16 basex, s16 basey, s16 endx, s16 endy, u16 color)
| Dessiner rectangle en mode dessin... pour le mode dessin 16 bit
void | PA_8bitDraw (u8 screen, u8 color)

Pour 8 bit : Jolie petite fonction qui dessine à l'écran ! Tout ce qu'il reste à faire, c'est de choisir la couleur. Si le VBL PA n'est pas initialiser, ne pas oublier de rafraichir le Stylet à chaque cycle (et non, pas avec des glacons !). Il suffit d'executer PA_Draw à chaque cycle pour dessiner...

void | PA_16bitDraw (u8 screen, u16 color)

Pour 16 bit : Jolie petite fonction qui dessine à l'écran ! Tout ce qu'il reste à faire, c'est de choisir la couleur. Si le VBL PA n'est pas initialiser, ne pas oublier de rafraichir le Stylet à chaque cycle (et non, pas avec des glacons !). Il suffit d'executer PA_Draw à chaque cycle pour dessiner...

void | PA_LoadJpeg (u8 screen, void *jpeg)
| Charger un jpeg sur un fond de 16 bits... Faut pas oublier de charger ce fond avant !
void | PA_LoadBmpToBuffer (u16 *Buffer, s16 x, s16 y, void *bmp, s16 SWidth)
| Charger un BMP dans un buffer de 16 bit
void | PA_LoadBmpEx (u8 screen, s16 x, s16 y, void *bmp)
| Charger un BMP sur un fond de 16 bits... Faut pas oublier de charger ce fond avant !
void | PA_LoadBmp (u8 screen, void *bmp)
| Charger un BMP sur un fond de 16 bits... Faut pas oublier de charger ce fond avant !
u16 | PA_GetGifWidth (void *gif)
| Récupérer la largeur d'un Gif en pixels
u16 | PA_GetGifHeight (void *gif)
| Récupérer la hauteur d'un Gif en pixels
void | PA_LoadGif (u8 screen, void *gif)
| Charger un Gif sur un fond de 16 bits... Faut pas oublier de charger ce fond avant !
void | PA_LoadGBFSImage (u8 screen, s16 GBFSImage)
| Charger une image depuis GBFS sur l'écran (16 bit). Support le Gif, Jpeg, et BMP
void | PA_LoadGBFSImageToBuffer (void *Buffer, s16 GBFSImage, s16 Width)
u16 | PA_GetBmpWidth (void *bmp)
| Récupérer la largeur d'un BMP en pixels
u16 | PA_GetBmpHeight (void *bmp)
| Récupérer la hauteur d'un BMP en pixels
void | PA_8bit8x8Image (u8 screen, u16 basex, u16 basey, u8 *data)

## Variables

GifFileType * | gifinfo
s16 | gifwidth
s16 | gifheight
u8 | PA_nBit [2]
u16 | PA_oldx [2]
u16 | PA_oldy [2]
u8 | PA_drawsize [2]
u16 * | PA_DrawBg [2]
u16 | PA_temppal [256]

## Description détaillée

Bitmap mode, for drawing, loading images in 8 or 16 bit mode...

Draw on screen, either a pixel or a line, or anything ! Load a Bitmap, a Jpeg...