Posté le 28/08/2013 00:11
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 128 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements
Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd
Citer : Posté le 30/08/2013 00:48 | #
memcpy est dans "string.h"
je l'utilise pour les fond d'écrans :
unsigned char fond[] = {0x42, ...};
memcpy(ML_vram_adress(), fond, 1024);
ML_display_vram();
ce qui est bien plus rapide que ML_bmp_or(fond, 0, 0, 128, 64)
Citer : Posté le 30/08/2013 11:24 | #
Je suis en C dodormeur
Il y a un bug Limachi
System ERROR
TLB ERROR
TARGET 00000000
PC = 00305A01
Citer : Posté le 30/08/2013 13:24 | #
si c'est un sprite 8*8:
{
int i;
for(i=0; i<8; ++i) spriteModifie[i ] = spriteOriginal[7-i];
}
si c'est du 16*16 :
(je te prépare le code )
Ajouté le 30/08/2013 à 13:25 :
{
int i;
for(i=0; i<8; ++i) {
spriteModifie[2*i] = spriteOriginal[14-2*i];
spriteModifie[2*i+1] = spriteOriginal[15-2*i];
}
}
normalement ça marche
Citer : Posté le 07/09/2013 20:11 | #
Merci quand même DS mais j'ai fais le mien du coup il correspond exactement à ce que je veux.
{
[purple]int[/purple] i, j;
[purple]unsigned char[/purple] registre;
unsigned char* rev_sprite = NULL;
rev_sprite = calloc(largeur*hauteur, sizeof(char));
[b][blue]if[/blue][/b] (largeur == [maroon]8[/maroon])
{
[b][blue]for[/blue][/b] (i=[maroon]0[/maroon]; i<hauteur; i++)
{
[b][blue]for[/blue][/b] (j=[maroon]0[/maroon]; j<8; j++)
{
[b][blue]if[/blue][/b] (sprite[i ] & 1<<j) rev_sprite[i ] |= [maroon]1[/maroon]<<(7-j);
}
}
}
[b][blue]if[/blue][/b] (largeur == [maroon]16[/maroon])
{
[b][blue]for[/blue][/b] (i=[maroon]0[/maroon]; i<hauteur*2; i++)
{
[b][blue]for[/blue][/b] (j=[maroon]0[/maroon]; j<8; j++)
{
[b][blue]if[/blue][/b] (sprite[i ] & 1<<j) rev_sprite[i ] |= [maroon]1[/maroon]<<(7-j);
}
[b][blue]if[/blue][/b] (i % 2)
{
registre = rev_sprite[i-1];
rev_sprite[i-1] = rev_sprite[i ];
rev_sprite[i ] = registre;
}
}
}
[b][blue]return[/blue][/b] rev_sprite;
}