*Il y a des effets de transitions dans Extgraph 2 beta 5: de tête il me semble que tu dois regarder dans le header vers la ligne 1025 pour voir les prototypes.
*En ce qui concerne le changement de contraste, n'utilise pas bêtement les fonctions osContrastDn/osContrastUp parceque tu risques de dérégler le contrast. Il y a moyen de lire la valeur du contrast mais je ne sais pas où il faut la lire.
*Une version amélioré par Travis Fisher de l'effet qu'on trouve sur le site de la TICT:
/* Original by Thomas Nussbaumer, added fading options */
void Dissolve(const short Flag) {
unsigned short seq = 1, offset;
unsigned char mask;
do
{
mask = seq & 0x7;
offset = seq >> 3;
if (seq & 1)
seq = (seq>>1)^0x6000;
else seq = seq>>1;
mask = 0x80 >> mask;
if (offset >= LCD_SIZE)
continue;
if (Flag == 1) { // Fade to Black
*(unsigned char*)(Activel + offset) |= mask;
*(unsigned char*)(Actived + offset) |= mask;
} else if (!Flag) { // Fade to White
*(unsigned char*)(Activel + offset) &= ~mask;
*(unsigned char*)(Actived + offset) &= ~mask;
} else { // Fade to a new screen
/* -------------------------------------------------------------------------
If Flag == 2, the fade will act like a strange double buffer toggle. The
contents of the Hidden planes will be faded onto the Active gray planes!
------------------------------------------------------------------------- */
// Light
if (*(unsigned char*)(Hiddenl + offset) & mask)
*(unsigned char*)(Activel + offset) |= mask;
else *(unsigned char*)(Activel + offset) &= ~mask;
// Dark
if (*(unsigned char*)(Hiddend + offset) & mask)
*(unsigned char*)(Actived + offset) |= mask;
else *(unsigned char*)(Actived + offset) &= ~mask;
}
} while (seq != 1);
}
Je crois qu'il y a aussi une version en asm qui traine quelque part... mais bon, gagner 50 octets sur un projet qui rempli la mémoire de la calculette