View Single Post
  #173 (permalink)  
Old 26th Jul 2009, 8:58 am
knob's Avatar
knob knob is offline
Senior Member
Valued Member
 
Join Date: May 2007
Posts: 1,285
Default

There is some code in Platform.c which would launch rkp games from this RK2606 firmware.

Tried to use the code which extracts a .bmp icon from the rkp file to load album art, but it crashed!
This code is not included in the build but is there as an option to build in a rkp loader.


PlatformProtect(1);

LoadPicFromFlash(BMP_BROWSER_BK, &BrowserBKPic, BMP_BROWSER_BK_XSIZE, BMP_BROWSER_BK_YSIZE);
LoadPicFromFlash(BMP_BROWSER_SELECT, &SelectBKPIC, BMP_BROWSER_SELECT_XSIZE, BMP_BROWSER_SELECT_YSIZE);
for(i=0;i<7;i++)
LoadPicFromFlash(BMP_FILEDEFAULT, &IconPIC[i], BMP_FILEDEFAULT_XSIZE, BMP_FILEDEFAULT_YSIZE);
LoadPicFromFlash(BMP_FOLDER, &IconPIC[7], BMP_FOLDER_XSIZE, BMP_FOLDER_YSIZE);

PlatformMsgArray[0]=BROWSE_INIT;
Fun2MsgArray[1]=PLATFORM_FUN_WINDOW;

CurrentDrawPicBase=SDRAM_LOGICSCREEN_BASE;
PlatformPicType=0;
WindOutCnt=0;
}


/************************************************** ****************
*º¯ÊýÃû :GameExit
*¹¦ÄÜÃèÊö :Í˳öÓÎÏ·
*²ÎÊý²ÎÊý :ÎÞ
*Êä³ö²ÎÊý :ÎÞ
*°æ±¾ËµÃ÷ :×÷Õß Ê±¼ä ±¸×¢
* ÂÞÄþ 11/11/2006 Ô*°æ
************************************************** ****************/
PLATFORM_CODE
void GameExit(){
int i;

Fun2MsgArray[1]=PLATFORM_FUN_WINDOW;
PlatformMsgArray[0]=BROWSE_DISP;
WindowSet[0]=0;
WindowSet[1]=0;
WindowSet[2]=219;
WindowSet[3]=175;
PlatformProtect(1);
Platform_MusicOff();
FileClose(ProgramFile);
FileClose(MusicHandle);
ScreenWide=SYS_XSIZE;
ScreenHigh=SYS_YSIZE;
PicLoad_SdramAdd=SDRAM_RESOURCE_BASE;
LoadPicFromFlash(BMP_BROWSER_BK, &BrowserBKPic, BMP_BROWSER_BK_XSIZE, BMP_BROWSER_BK_YSIZE);
LoadPicFromFlash(BMP_BROWSER_SELECT, &SelectBKPIC, BMP_BROWSER_SELECT_XSIZE, BMP_BROWSER_SELECT_YSIZE);
for(i=0;i<7;i++)
LoadPicFromFlash(BMP_FILEDEFAULT, &IconPIC[i], BMP_FILEDEFAULT_XSIZE, BMP_FILEDEFAULT_YSIZE);
LoadPicFromFlash(BMP_FOLDER, &IconPIC[7], BMP_FOLDER_XSIZE, BMP_FOLDER_YSIZE);
Platform_Browse_FileInit();
while(DmaStateFlag&0x0002);
PlatformPicType=0;
DMA_LcdJpegInitX();
}


/************************************************** ****************
*º¯ÊýÃû :PlatformVolDown
*¹¦ÄÜÃèÊö :ÒôÁ¿¼õСһ¸ö¿Ì¶È
*²ÎÊý²ÎÊý :ÎÞ
*Êä³ö²ÎÊý :ÎÞ
*°æ±¾ËµÃ÷ :×÷Õß Ê±¼ä ±¸×¢
* ÂÞÄþ 11/11/2006 Ô*°æ
************************************************** ****************/
PLATFORM_CODE
void PlatformVolDown(){
if(GameVolValue<0x1f){
GameVolValue++;
Platform_VolumeSet(GameVolValue);
}
}

/************************************************** ****************
*º¯ÊýÃû :PlatformVolUp
*¹¦ÄÜÃèÊö :ÒôÁ¿Ôö´óÒ»¸ö¿Ì¶È
*²ÎÊý²ÎÊý :ÎÞ
*Êä³ö²ÎÊý :ÎÞ
*°æ±¾ËµÃ÷ :×÷Õß Ê±¼ä ±¸×¢
* ÂÞÄþ 11/11/2006 Ô*°æ
************************************************** ****************/
PLATFORM_CODE
void PlatformVolUp(){
if(GameVolValue>0){
GameVolValue--;
Platform_VolumeSet(GameVolValue);
}
}


/************************************************** ****************
*º¯ÊýÃû :Platform_Browse_SysInit
*¹¦ÄÜÃèÊö :ä¯ÀÀÆ÷³õʼ»¯º¯Êý
*²ÎÊý²ÎÊý :ÎÞ
*Êä³ö²ÎÊý :ÎÞ
*°æ±¾ËµÃ÷ :×÷Õß Ê±¼ä ±¸×¢
* ÂÞÄþ 11/11/2006 Ô*°æ
************************************************** ****************/
PLATFORM_CODE
void Platform_Browse_SysInit(){
int i;

PlatformBrowseInfo.DirDeep=0;
PlatformBrowseInfo.PathBuff[0]='\\';
PlatformBrowseInfo.PathBuff[1]='\0';
PlatformBrowseInfo.CurPickFileType[0]='R';
PlatformBrowseInfo.CurPickFileType[1]='K';
PlatformBrowseInfo.CurPickFileType[2]='P';
PlatformBrowseInfo.CurPickFileType[3]='\0';
}
__________________
-----------------------------------------------------------------------------------------------------------
Reply With Quote