From 8b5681eccbbdea83f09bb301f3c41352aa0e69c7 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Thu, 16 Jul 2009 07:04:39 +0000 Subject: [PATCH] -"fixed" warning about vars being used uninitialized (may happen if mouse cursor is totally offscreen or screen resolution is 0 pixel height, that is, never). -Put some cursor drawing loops in the right order (loop on y, then on x) to make them a little more cache-friendly (and easier to read). I wrote them the wrong way, sorry! -Some code formatting to 80 columns (not really important, don't worry about it) -Added a sample neochrome picture to the pic-samples folder. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@923 416bcca6-2ee7-4201-b75f-2eb2f807beb1 --- pic-samples/BALLOONS.NEO | Bin 0 -> 32128 bytes windows.c | 108 +++++++++++++++++++-------------------- 2 files changed, 54 insertions(+), 54 deletions(-) create mode 100644 pic-samples/BALLOONS.NEO diff --git a/pic-samples/BALLOONS.NEO b/pic-samples/BALLOONS.NEO new file mode 100644 index 0000000000000000000000000000000000000000..d4fb7497ff91f344792ee8e04bb3749f4cf6baf1 GIT binary patch literal 32128 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 cNB%xo=uWZRbf@Y!Cursor_offset_X[temp]; start_y=Mouse_Y-Gfx->Cursor_offset_Y[temp]; - for (x_pos=start_x,counter_x=0;counter_x<15 && x_pos < Screen_width;x_pos++,counter_x++) - { - if( x_pos < 0 ) continue; - for (y_pos=start_y,counter_y=0;counter_y<15 && y_pos < Screen_height;y_pos++,counter_y++) - { - if( y_pos < 0 || y_pos >= Screen_height) continue; - color=Gfx->Cursor_sprite[temp][counter_y][counter_x]; - CURSOR_BACKGROUND[counter_y][counter_x]=Read_pixel(x_pos,y_pos); - if (color!=MC_Trans) - Pixel(x_pos,y_pos,color); + for (y_pos=start_y,counter_y=0; counter_y<15 && y_pos < Screen_height; + y_pos++,counter_y++) + { + if( y_pos < 0 ) continue; + for (x_pos=start_x,counter_x=0; + counter_x<15 && x_pos < Screen_width; x_pos++,counter_x++) + { + if( x_pos < 0 ) continue; + color=Gfx->Cursor_sprite[temp][counter_y][counter_x]; + CURSOR_BACKGROUND[counter_y][counter_x]=Read_pixel(x_pos,y_pos); + if (color!=MC_Trans) + Pixel(x_pos,y_pos,color); } - } + } Update_rect(Max(start_x,0),Max(start_y,0),counter_x,counter_y); } @@ -1721,20 +1723,20 @@ void Display_cursor(void) start_x=Mouse_X-Gfx->Cursor_offset_X[temp]; start_y=Mouse_Y-Gfx->Cursor_offset_Y[temp]; - for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) { + if(y_pos<0) continue; + if(y_pos>=Screen_height) break; + for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + { if(x_pos<0) continue; if(x_pos>=Screen_width) break; - for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) - { - if(y_pos<0) continue; - if(y_pos>=Screen_height) break; - color=Gfx->Cursor_sprite[temp][counter_y][counter_x]; - // On sauvegarde dans CURSOR_BACKGROUND pour restaurer plus tard - CURSOR_BACKGROUND[counter_y][counter_x]=Read_pixel(x_pos,y_pos); - if (color!=MC_Trans) - Pixel(x_pos,y_pos,color); - } + color=Gfx->Cursor_sprite[temp][counter_y][counter_x]; + // On sauvegarde dans CURSOR_BACKGROUND pour restaurer plus tard + CURSOR_BACKGROUND[counter_y][counter_x]=Read_pixel(x_pos,y_pos); + if (color!=MC_Trans) + Pixel(x_pos,y_pos,color); + } } Update_rect(Max(start_x,0),Max(start_y,0),counter_x,counter_y); } @@ -1750,18 +1752,18 @@ void Display_cursor(void) case CURSOR_SHAPE_HOURGLASS : start_x=Mouse_X-Gfx->Cursor_offset_X[shape]; start_y=Mouse_Y-Gfx->Cursor_offset_Y[shape]; - for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) { - if(x_pos<0) continue; - if(x_pos>=Screen_width) break; - for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) - { - if(y_pos<0) continue; - if(y_pos>=Screen_height) break; - color=Gfx->Cursor_sprite[shape][counter_y][counter_x]; - // On sauvegarde dans CURSOR_BACKGROUND pour restaurer plus tard - CURSOR_BACKGROUND[counter_y][counter_x]=Read_pixel(x_pos,y_pos); - if (color!=MC_Trans) + if(y_pos<0) continue; + if(y_pos>=Screen_height) break; + for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + { + if(x_pos<0) continue; + if(x_pos>=Screen_width) break; + color=Gfx->Cursor_sprite[shape][counter_y][counter_x]; + // On sauvegarde dans CURSOR_BACKGROUND pour restaurer plus tard + CURSOR_BACKGROUND[counter_y][counter_x]=Read_pixel(x_pos,y_pos); + if (color!=MC_Trans) Pixel(x_pos,y_pos,color); } } @@ -1908,14 +1910,11 @@ void Hide_cursor(void) int start_y; short end_x; short end_y; - int x_pos; + int x_pos = 0; int y_pos; - short counter_x; + short counter_x = 0; short counter_y; - //short end_counter_x; // Position X ou s'arręte l'affichage de la brosse/pinceau - //short end_counter_y; // Position Y ou s'arręte l'affichage de la brosse/pinceau int temp; - //byte color; float cos_a,sin_a; short x1,y1,x2,y2,x3,y3,x4,y4; @@ -1960,10 +1959,11 @@ void Hide_cursor(void) for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) { + if(y_pos < 0) continue; if(y_pos>=Screen_height) break; for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) { - if ( (x_pos<0) || (y_pos < 0)) continue; + if(x_pos < 0) continue; else if (x_pos>=Screen_width) break; Pixel(x_pos,y_pos,CURSOR_BACKGROUND[counter_y][counter_x]); } @@ -2026,18 +2026,18 @@ void Hide_cursor(void) start_x=Mouse_X-Gfx->Cursor_offset_X[temp]; start_y=Mouse_Y-Gfx->Cursor_offset_Y[temp]; - for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) { + if(y_pos<0) continue; + if(y_pos>=Screen_height) break; + for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + { if(x_pos<0) continue; if(x_pos>=Screen_width) break; - for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) - { - if(y_pos<0) continue; - if(y_pos>=Screen_height) break; Pixel(x_pos,y_pos,CURSOR_BACKGROUND[counter_y][counter_x]); - } } - Update_rect(Max(start_x,0),Max(start_y,0),counter_x,counter_y); + } + Update_rect(Max(start_x,0),Max(start_y,0),counter_x,counter_y); } } if (!Paintbrush_hidden) @@ -2054,14 +2054,14 @@ void Hide_cursor(void) start_x=Mouse_X-Gfx->Cursor_offset_X[shape]; start_y=Mouse_Y-Gfx->Cursor_offset_Y[shape]; - for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) { - if(x_pos<0) continue; - if(x_pos>=Screen_width) break; - for (y_pos=start_y,counter_y=0;counter_y<15;y_pos++,counter_y++) - { - if(y_pos<0) continue; - if(y_pos>=Screen_height) break; + if(y_pos<0) continue; + if(y_pos>=Screen_height) break; + for (x_pos=start_x,counter_x=0;counter_x<15;x_pos++,counter_x++) + { + if(x_pos<0) continue; + if(x_pos>=Screen_width) break; Pixel(x_pos,y_pos,CURSOR_BACKGROUND[counter_y][counter_x]); } }