// Header File // Created 25/10/2003; 19:18:34 //Gestions de l'écran de scrolling sur TI89 ou TI92+, ce concentre sur un objet... //Scrolling de haut en bas début d'un niveau #define INT1_SCROLL_LEVEL_UP_DOWN 20 #define __INT1_SCROLL_LEVEL_UP_DOWN_FREQUENCY 2570 static unsigned short __COUNTER_SCROLL_LEVEL_UP_DOWN=0; //Variables de scrollage static short xScroll, yScroll; //Concentration de la caméra sur une bille void CenterScrolling (void) { short center_x,center_y; //TI92+ ou V200 (Mode Graphique Scrolling) if (CALCULATOR && !GRAPHIC_MODE) { xScroll=0; if (EndCounterLogo) { //Ce concentrer sur une Bille if (nbrBille==1) { center_y=Bille [0]->ypos+(BILLE_SIZEY/2); yScroll=center_y-51; //LCD_HEIGHT/2 } //Racket else if (HUMAIN0!=0xFF) { center_y=Racket [HUMAIN0]->ypos+(Racket [HUMAIN0]->size_y/2); yScroll=center_y-64; //LCD_HEIGHT/2 } //Défaut else yScroll=72; } //Dépassement de capacité if (yScroll<0) yScroll=0; else if (yScroll>72) yScroll=72; //72=200-128 } //TI89 (Mode Graphique Scrolling) else if (!GRAPHIC_MODE) { if (EndCounterLogo) { //Ce concentre sur une Bille if (nbrBille==1) { center_x=Bille [0]->xpos+(BILLE_SIZEX/2); center_y=Bille [0]->ypos+(BILLE_SIZEY/2); xScroll=center_x-80; //LCD_WIDTH/2 yScroll=center_y-40; //LCD_HEIGHT/2 } else if (HUMAIN0!=0xFF) { center_x=Racket [HUMAIN0]->xpos+(Racket [HUMAIN0]->size_x/2); center_y=Racket [HUMAIN0]->ypos+(Racket [HUMAIN0]->size_y/2); xScroll=center_x-80; //LCD_WIDTH/2 yScroll=center_y-50; //LCD_HEIGHT/2 } //Défaut else //{ //xScroll=32; yScroll=100;//} //100=200-100 } //Dépassement de capacité if (xScroll<0) xScroll=0; else if (xScroll>64) xScroll=64; //80=240-160 if (yScroll<0) yScroll=0; else if (yScroll>100) yScroll=100; //100=200-100 } } //Afficher écran void ShowScreenBuffer (void) { //TI92+ ou V200 if (CALCULATOR) { //Mode Scrolling vertical if (!GRAPHIC_MODE) CopyScreenBufferToScreen (xScroll,yScroll,ScreenBuffer,GetPlane (0),GetPlane (1)); //Mode Dézoom else CopyScreenBufferToScreen2 (ScreenBuffer,GetPlane (0),GetPlane (1)); } //TI89 else { //Mode Scrolling Vertical et Horizontal if (!GRAPHIC_MODE) CopyScreenBufferToScreen4 (xScroll,yScroll,ScreenBuffer,GetPlane (0),GetPlane (1)); } } //Initialisation scrolling niveau void InitScrollingLevel (void) { //TI92+ ou V200 if (CALCULATOR && !GRAPHIC_MODE) yScroll=72; else if (!GRAPHIC_MODE) yScroll=100; ScrollLevelLogo=FALSE; }