WarmFluffyUK
The Big Wad Bolf.
I have just received some info from GPH that they want me to pass on, so I cut and pasted it here:
In case of the latest firmware of Wiz, frame buffer of AMOLED is set in 240x320 mode. Existing contents of 320x240 mode are converted by SDL library or GLBasic graphic library etc into 240x320 when contents are played.
In case of graphic library that does not convert 320x240 into 240x320 mode or in case when the contents are sensitive to delay caused by converting, you will need to do following process.
(occasional bug of fleeting white diagonal line may follow)
(1) In case of application which use SDL: functions that support sdl
CODE
#define LCD_DIRECTION_ON_CMD 5
#define LCD_DIRECTION_OFF_CMD 6
(1.1) when converting into 320x 240 mode
CODE
SDL_SetLcdChange(LCD_DIRECTION_ON_CMD,0);
(1.2) when re-converting back into 240 x 320 mode
CODE
SDL_SetLcdChange(LCD_DIRECTION_OFF_CMD ,0);
(2) In case of applications that do not use SDL: call video driver to convert
CODE
#define FBIO_LCD_CHANGE_CONTROL _IOW(FBIO_MAGIC, 90, unsigned int[2])
#define LCD_DIRECTION_ON_CMD 5
#define LCD_DIRECTION_OFF_CMD 6
static int fb_fd;
(2.1) when converting into 320x 240 mode
CODE
{
unsigned int send;
send[0] = LCD_DIRECTION_ON_CMD;
send[1] = 0;
fb_fd = open ("/dev/fb0", O_RDWR);
ioctl(fb_fd, FBIO_LCD_CHANGE_CONTROL , &send);
close(fb_fd);
}
(2.2) when re-converting back into 240 x 320 mode
CODE
{
unsigned int send;
send[0] = LCD_DIRECTION_ON_CMD;
send[1] = 0;
fb_fd = open ("/dev/fb0", O_RDWR);
ioctl(fb_fd, LCD_DIRECTION_OFF_CMD ,&send);
close(fb_fd);
}
In case of the latest firmware of Wiz, frame buffer of AMOLED is set in 240x320 mode. Existing contents of 320x240 mode are converted by SDL library or GLBasic graphic library etc into 240x320 when contents are played.
In case of graphic library that does not convert 320x240 into 240x320 mode or in case when the contents are sensitive to delay caused by converting, you will need to do following process.
(occasional bug of fleeting white diagonal line may follow)
(1) In case of application which use SDL: functions that support sdl
CODE
#define LCD_DIRECTION_ON_CMD 5
#define LCD_DIRECTION_OFF_CMD 6
(1.1) when converting into 320x 240 mode
CODE
SDL_SetLcdChange(LCD_DIRECTION_ON_CMD,0);
(1.2) when re-converting back into 240 x 320 mode
CODE
SDL_SetLcdChange(LCD_DIRECTION_OFF_CMD ,0);
(2) In case of applications that do not use SDL: call video driver to convert
CODE
#define FBIO_LCD_CHANGE_CONTROL _IOW(FBIO_MAGIC, 90, unsigned int[2])
#define LCD_DIRECTION_ON_CMD 5
#define LCD_DIRECTION_OFF_CMD 6
static int fb_fd;
(2.1) when converting into 320x 240 mode
CODE
{
unsigned int send;
send[0] = LCD_DIRECTION_ON_CMD;
send[1] = 0;
fb_fd = open ("/dev/fb0", O_RDWR);
ioctl(fb_fd, FBIO_LCD_CHANGE_CONTROL , &send);
close(fb_fd);
}
(2.2) when re-converting back into 240 x 320 mode
CODE
{
unsigned int send;
send[0] = LCD_DIRECTION_ON_CMD;
send[1] = 0;
fb_fd = open ("/dev/fb0", O_RDWR);
ioctl(fb_fd, LCD_DIRECTION_OFF_CMD ,&send);
close(fb_fd);
}