iOS/libraries/allegro/allegro/src/psp/pgfx.c
/* psp_scroll:
 *  PSP scrolling routine.
 *  This handle horizontal scrolling in 8 pixel increments under 15 or 16
 *  bpp modes and 4 pixel increments under 32 bpp mode.
 *  The 8 bpp mode has no restrictions.
 */
PSP scrolling routine.
This handle horizontal scrolling in 8 pixel increments under 15 or 16
bpp modes and 4 pixel increments under 32 bpp mode.
The 8 bpp mode has no restrictions.
PSP scrolling routine . This handle horizontal scrolling in 8 pixel increments under 15 or 16 bpp modes and 4 pixel increments under 32 bpp mode . The 8 bpp mode has no restrictions .
static int psp_scroll(int x, int y)
{
   uintptr_t new_addr;
   if (_wait_for_vsync)
      sceDisplayWaitVblankStart();
   if (gu_psm_format == GU_PSM_T8) {
      displayed_video_bitmap = screen;
      texture_start = screen->line[y] + x;
      psp_draw_to_screen();
   }
   else {
      new_addr =  BMP_EXTRA(screen)->hw_addr + (y * framebuf_width + x) * BYTES_PER_PIXEL(bitmap_color_depth(screen));
      sceDisplaySetFrameBuf((void *)new_addr, framebuf_width, gu_psm_format, PSP_DISPLAY_SETBUF_IMMEDIATE);
   }
   return 0;
}
static int psp_scroll ( int x , int y ) { uintptr_t new_addr ; if ( _wait_for_vsync ) sceDisplayWaitVblankStart ( ) ; if ( gu_psm_format == GU_PSM_T8 ) { displayed_video_bitmap = screen ; texture_start = screen -> line [ y ] + x ; psp_draw_to_screen ( ) ; } else { new_addr = BMP_EXTRA ( screen ) -> hw_addr + ( y * framebuf_width + x ) * BYTES_PER_PIXEL ( bitmap_color_depth ( screen ) ) ; sceDisplaySetFrameBuf ( ( void * ) new_addr , framebuf_width , gu_psm_format , PSP_DISPLAY_SETBUF_IMMEDIATE ) ; } return 0 ; }
psp_scroll:
  PSP scrolling routine.
psp_scroll : PSP scrolling routine .
/* We position the texture data pointer at the requested coordinates
       * and the screen display is updated.
       */ /* Truecolor pixel formats. */