void PutBitmap(short x, short y,unsigned char *pic,unsigned char *video_plane)
{
short i=0,j=0;
short nb_l=*(unsigned short *)(pic+0);
short nb_c=*(unsigned short *)(pic+2);
pic=pic+4;
for(j=0;j<nb_l;j++)
{
short x_ = x;
short i=0;
unsigned char *pointeur = (video_plane+(((y<<8)-(y<<4)+x)>>3));
/* (256y-16y+x)/8 */
for(i=0;i<nb_c;i=i+8)
{
short mask = x_&7;
if(mask)
*(pointeur+1) |=*(pic)<<(8-mask);
*(pointeur++) |=(*pic++)>>(mask);
x_=x_+8;
}
y++;
}
}
Je pense que là ça va déjà mieux.

... parce-qu'en même temps que je teste la routine je fait un bench et là j'en suis à 550-560 contre 209 pour l'AMS... il faudra que je vois après clipping aussi. Mais c'est bien possible de faire deux fois plus vite que l'AMS en C, non ?