PAlib: Window system

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

# Window system

## Macros

#define | PA_SetWin1XY(screen, x1, y1, x2, y2) {WIN1X(screen) = x2 + ((x1) << 8); WIN1Y(screen) = y2 + ((y1) << 8);}
| Régler les coordonnées X et Y du rectangle de la deuxième fenetre. Il faudra aussi utiliser PA_SetWin1 pour choisir quels fonds sont visibles et si les sprites le sont ou non...
#define | PA_EnableWin0(screen, bg_sprites) {DISPCNTL(screen) |= WINDOW0; WININ(screen) &= 255; WININ(screen) |= bg_sprites;}
| Activer et choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, pour la fenetre 0. Il faudra ensuite régler la taille avec PA_SetWin0XY
#define | PA_DisableWin0(screen) DISPCNTL(screen) &= ~WINDOW0
| Désactiver la première fenetre...
#define | PA_EnableWin1(screen, bg_sprites) {DISPCNTL(screen) |= WINDOW1; WININ(screen) &= 255; WININ(screen) |= (bg_sprites << 8);}
| Activer et choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, pour la fenetre 1. Il faudra ensuite régler la taille avec PA_SetWin1X
#define | PA_DisableWin1(screen) DISPCNTL(screen) &= ~WINDOW1
| Désactiver la deuxième fenetre...
#define | PA_EnableWinObj(screen, bg_sprites) {DISPCNTL(screen) |= WINDOWOBJ; WINOUT(screen) &= 255; WINOUT |= (bg_sprites << 8);}
| Activer et choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, pour la fenetre objets (créée à partir des sprites en mode Window).
#define | PA_DisableWinObj(screen) DISPCNTL(screen) &= ~WINDOWOBJ
| Désactiver la fenetre objet...
#define | PA_SetOutWin(screen, bg_sprites) {WINOUT(screen) &= ~255; WINOUT(screen) |= bg_sprites;}
| Choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, en dehors des fenetres

## Fonctions

void | PA_SetWin0XY (bool screen, u8 x1, u8 y1, u8 x2, u8 y2)
void | PA_WindowFade (bool screen, u8 type, u8 time)
| Permet de faire des entrées/sorties en utilisant le systeme de fenetre

## Description détaillée

Set up 2 windows and a possible object window...

## Documentation des macro

#define PA_DisableWin0 | ( | screen |  | ) | DISPCNTL(screen) &= ~WINDOW0

Désactiver la première fenetre...

Paramètres:

  | screen | Ecran...

#define PA_DisableWin1 | ( | screen |  | ) | DISPCNTL(screen) &= ~WINDOW1

Désactiver la deuxième fenetre...

Paramètres:

  | screen | Ecran...

#define PA_DisableWinObj | ( | screen |  | ) | DISPCNTL(screen) &= ~WINDOWOBJ

Désactiver la fenetre objet...

Paramètres:

  | screen | Ecran...

#define PA_EnableWin0 | ( | screen,
|  | bg_sprites |  | ) | {DISPCNTL(screen) |= WINDOW0; WININ(screen) &= 255; WININ(screen) |= bg_sprites;}

Activer et choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, pour la fenetre 0. Il faudra ensuite régler la taille avec PA_SetWin0XY

Paramètres:

  | screen | Ecran...
  | bg_sprites | Fond et sprites à afficher, que l'on choisi de la facon suivante : WIN_BG0 | WIN_BG1 | WIN_BG2 | WIN_BG3 | WIN_OBJ | WIN_SFX (pour les effets spéciaux)

#define PA_EnableWin1 | ( | screen,
|  | bg_sprites |  | ) | {DISPCNTL(screen) |= WINDOW1; WININ(screen) &= 255; WININ(screen) |= (bg_sprites << 8);}

Activer et choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, pour la fenetre 1. Il faudra ensuite régler la taille avec PA_SetWin1X

Paramètres:

  | screen | Ecran...
  | bg_sprites | Fond et sprites à afficher, que l'on choisi de la facon suivante : WIN_BG0 | WIN_BG1 | WIN_BG2 | WIN_BG3 | WIN_OBJ | WIN_SFX (pour les effets spéciaux)

#define PA_EnableWinObj | ( | screen,
|  | bg_sprites |  | ) | {DISPCNTL(screen) |= WINDOWOBJ; WINOUT(screen) &= 255; WINOUT |= (bg_sprites << 8);}

Activer et choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, pour la fenetre objets (créée à partir des sprites en mode Window).

Paramètres:

  | screen | Ecran...
  | bg_sprites | Fond et sprites à afficher, que l'on choisi de la facon suivante : WIN_BG0 | WIN_BG1 | WIN_BG2 | WIN_BG3 | WIN_OBJ | WIN_SFX (pour les effets spéciaux)

#define PA_SetOutWin | ( | screen,
|  | bg_sprites |  | ) | {WINOUT(screen) &= ~255; WINOUT(screen) |= bg_sprites;}

Choisir quels fonds seront visibles dans la fenetre, et si les sprites le seront ou pas, en dehors des fenetres

Paramètres:

  | screen | Ecran...
  | bg_sprites | Fond et sprites à afficher, que l'on choisi de la facon suivante : WIN_BG0 | WIN_BG1 | WIN_BG2 | WIN_BG3 | WIN_OBJ

#define PA_SetWin1XY | ( | screen,
|  | x1,
|  | y1,
|  | x2,
|  | y2 |  | ) | {WIN1X(screen) = x2 + ((x1) << 8); WIN1Y(screen) = y2 + ((y1) << 8);}

Régler les coordonnées X et Y du rectangle de la deuxième fenetre. Il faudra aussi utiliser PA_SetWin1 pour choisir quels fonds sont visibles et si les sprites le sont ou non...

Paramètres:

  | screen | Ecran...
  | x1 | Coordonnée X du coin supérieur gauche
  | y1 | Coordonnée Y du coin supérieur gauche
  | x2 | Coordonnée X du coin inférieur droit
  | y2 | Coordonnée Y du coin inférieur droit

## Documentation des fonctions

inline void PA_WindowFade | ( | bool | screen,
|  | u8 | type,
|  | u8 | time
| ) | `[inline]`

Permet de faire des entrées/sorties en utilisant le systeme de fenetre

Paramètres:

  | screen | Ecran...
  | type | Type... 8 différents types sont disponibles (0-7)
  | time | Temps, de 0 à 32 (inclus). 0 est écran visisble, 32 invisible