16 static int s_couleur = 0xc0c0c0c0;
17 static std::array<int,4> s_v { 2, 4, 3, 2 };
18 static std::array<int,4> s_col { 2, 4, 3, 2 };
25 static MODE s_mode = MOD_MERVER;
26 static int s_justChanged = 0;
27 static int s_cycle = 0;
29 int couleursl = s_couleur;
36 cycle10 = s_cycle / 10;
38 cycle10 = 7 - s_cycle / 10;
41 auto *
tmp = (
unsigned char *) &couleursl;
43 for (
int i = 0; i < 4; i++) {
44 *
tmp = (*tmp) >> cycle10;
54 movd_m2r (couleursl, mm1);
55 punpckldq_r2r (mm1, mm1);
56 for (
int i = 0; i < nbpt; i += increment) {
60 if ((x < width) && (y < height) && (x > 0) && (y > 0)) {
61 int pos = x + (y * width);
62 movd_m2r (
back[pos], mm0);
63 paddusb_r2r (mm1, mm0);
64 movd_r2m (mm0, data[pos]);
69 for (
int i = 0; i < nbpt; i += increment) {
70 int x = (int) points[i].x & 0x7fffffff;
71 int y = (int) points[i].y & 0x7fffffff;
73 if ((x < width) && (y < height)) {
74 int pos = x + (int) (y * width);
76 unsigned char *bra = (
unsigned char *) &
back[pos];
77 unsigned char *dra = (
unsigned char *) &data[pos];
78 unsigned char *cra = (
unsigned char *) &couleursl;
80 for (
int j = 0; j < 4; j++) {
95 s_col[
ALPHA] = s_couleur >> (
ALPHA * 8) & 0xff;
96 s_col[
BLEU] = s_couleur >> (
BLEU * 8) & 0xff;
97 s_col[
VERT] = s_couleur >> (
VERT * 8) & 0xff;
98 s_col[
ROUGE] = s_couleur >> (
ROUGE * 8) & 0xff;
100 if (s_mode == MOD_MER) {
102 if (s_col[
BLEU] > 255) {
106 if (s_col[
BLEU] < 32) {
112 if (s_col[
VERT] > 200) {
120 if (s_col[
VERT] < 32) {
126 if (s_col[
ROUGE] > 64) {
130 if (s_col[
ROUGE] < 0) {
136 if (s_col[
ALPHA] > 0) {
140 if (s_col[
ALPHA] < 0) {
147 && (
RAND () % 20 == 0)) && (s_justChanged < 0)) {
148 s_mode = (
RAND () % 3) ? MOD_FEU : MOD_MERVER;
152 else if (s_mode == MOD_MERVER) {
154 if (s_col[
BLEU] > 128) {
158 if (s_col[
BLEU] < 16) {
164 if (s_col[
VERT] > 200) {
172 if (s_col[
VERT] < 32) {
178 if (s_col[
ROUGE] > 128) {
182 if (s_col[
ROUGE] < 0) {
188 if (s_col[
ALPHA] > 255) {
192 if (s_col[
ALPHA] < 0) {
199 && (
RAND () % 20 == 0)) && (s_justChanged < 0)) {
200 s_mode = (
RAND () % 3) ? MOD_FEU : MOD_MER;
204 else if (s_mode == MOD_FEU) {
207 if (s_col[
BLEU] > 64) {
211 if (s_col[
BLEU] < 0) {
217 if (s_col[
VERT] > 200) {
227 if (s_col[
VERT] < 0) {
233 if (s_col[
ROUGE] > 255) {
241 if (s_col[
ROUGE] < 0) {
247 if (s_col[
ALPHA] > 0) {
251 if (s_col[
ALPHA] < 0) {
257 && (s_col[
BLEU] > 32)
258 && (
RAND () % 20 == 0)) && (s_justChanged < 0)) {
259 s_mode = (
RAND () % 2) ? MOD_MER : MOD_MERVER;