Пример #1
0
int cellGcmMapMainMemory(u32 address, u32 size, mem32_t offset)
{
	cellGcmSys.Warning("cellGcmMapMainMemory(address=0x%x,size=0x%x,offset_addr=0x%x)", address, size, offset.GetAddr());
	if(!offset.IsGood()) return CELL_EFAULT;

	Emu.GetGSManager().GetRender().m_main_mem_addr = Emu.GetGSManager().GetRender().m_ioAddress;

	offset = address - Emu.GetGSManager().GetRender().m_main_mem_addr;
	Emu.GetGSManager().GetRender().m_main_mem_info.AddCpy(MemInfo(address, size));

	return CELL_OK;
}
Пример #2
0
int cellGcmMapMainMemory(u32 address, u32 size, u32 offset_addr)
{
	cellGcmSys.Warning("cellGcmMapMainMemory(address=0x%x,size=0x%x,offset_addr=0x%x)", address, size, offset_addr);
	if(!Memory.IsGoodAddr(offset_addr, sizeof(u32))) return CELL_EFAULT;

	Emu.GetGSManager().GetRender().m_main_mem_addr = Emu.GetGSManager().GetRender().m_ioAddress;

	u32 offset = address - Emu.GetGSManager().GetRender().m_main_mem_addr;
	Emu.GetGSManager().GetRender().m_main_mem_info.AddCpy(MemInfo(address, size));

	Memory.Write32(offset_addr, offset);

	return CELL_OK;
}
Пример #3
0
void PrintGameInfo(bool showfullinfo) {
    if (showfullinfo) {

        //Con_Clear();

        //printf("id: %s version: %s region: %s",gameinfo.id, gameinfo.version, gameinfo.region);
        //printf("title: %s\n",gameinfo.title);
        int i;
        printf("languages:");
        for (i=1;strcmp(gameinfo.locales[i],"") != 0;i++) {
            printf(" %s",gameinfo.locales[i]);
        }
        printf("\n");
        //printf("developer: %s\n",gameinfo.developer);
        //printf("publisher: %s\n",gameinfo.publisher);
        //printf("publisher from ID: %s\n",gameinfo.publisherfromid);
        printf("year:%s month:%s day:%s\n",gameinfo.year,gameinfo.month,gameinfo.day);
        printf("genre: %s\n",gameinfo.genre);
        //printf("rating: %s %s (CERO: %s ESRB: %s PEGI: %s)\n",gameinfo.ratingtype, gameinfo.ratingvalue,
        //       gameinfo.ratingvalueCERO,gameinfo.ratingvalueESRB,gameinfo.ratingvaluePEGI);
        printf("content descriptors:");
        for (i=1;strcmp(gameinfo.wififeatures[i],"") != 0;i++) {
            printf(" %s",gameinfo.ratingdescriptors[i]);
        }
        printf("\n");
        printf("players: %s online: %s\n",gameinfo.players,gameinfo.wifiplayers);
        printf("online features:");
        for (i=1;strcmp(gameinfo.wififeatures[i],"") != 0;i++) {
            printf(" %s",gameinfo.wififeatures[i]);
        }
        printf("\n");
        printf("required accessories:");
        for (i=1;strcmp(gameinfo.accessoriesReq[i],"") != 0;i++) {
            printf(" %s",gameinfo.accessoriesReq[i]);
        }
        printf("\n");
        printf("accessories:");
        for (i=1;strcmp(gameinfo.accessories[i],"") != 0;i++) {
            printf(" %s",gameinfo.accessories[i]);
        }
        printf("\n");
        //printf("iso_crc: %s iso_md5: %s\n",gameinfo.iso_crc,gameinfo.iso_md5);
        //printf("iso_sha1: %s\n",gameinfo.iso_sha1);
        //printf("synopsis: %s\n",gameinfo.synopsis);

    } else {

        char linebuf[1000] = "";

        if (xmldebug) {
            //char xmltime[100];
            //sprintf(xmltime,"%d",xmlloadtime);
            //printf("xml load time: %s\n",xmltime);
            /*
            printf("xml forcelang: %s\n",CFG.db_lang);
            printf("xml url: %s\n",CFG.db_url);
            printf("xml file: %s\n",CFG.db_filename);
            char xmljptoen[100];
            sprintf(xmljptoen,"%d",CFG.db_JPtoEN);
            printf("xml JPtoEN: %s\n",xmljptoen);
            */
            printf(MemInfo()); // guidebug
        }

        //printf("%s: ",gameidfull);
        //printf("%s\n",gameinfo.title);
        if (strcmp(gameinfo.year,"") != 0)
            snprintf(linebuf, sizeof(linebuf), "%s ", gameinfo.year);
        if (strcmp(gameinfo.publisher,"") != 0)
            snprintf(linebuf, sizeof(linebuf), "%s%s", linebuf, gameinfo.publisher);
        if (strcmp(gameinfo.developer,"") != 0 && strcmp(gameinfo.developer,gameinfo.publisher) != 0)
            snprintf(linebuf, sizeof(linebuf), "%s / %s", linebuf, gameinfo.developer);
        if (strlen(linebuf) >= 100) {
            char buffer[200] = "";
            strlcpy(buffer, linebuf,  100);
            strcat(buffer, "...");
            snprintf(linebuf, sizeof(linebuf), "%s", buffer);
        }
        printf("%s\n",linebuf);
        strcpy(linebuf,"");

        if (strcmp(gameinfo.ratingvalue,"") != 0) {
            snprintf(linebuf, sizeof(linebuf), "rated %s", gameinfo.ratingvalue);
            if (!strcmp(gameinfo.ratingtype,"PEGI"))
                snprintf(linebuf, sizeof(linebuf), "%s+ ", linebuf);
            snprintf(linebuf, sizeof(linebuf), "%s ", linebuf);
        }
        if (strcmp(gameinfo.players,"") != 0) {
            snprintf(linebuf, sizeof(linebuf), "%sfor %s player", linebuf, gameinfo.players);
            if (atoi(gameinfo.players) > 1)
                snprintf(linebuf, sizeof(linebuf), "%ss", linebuf);
            if (atoi(gameinfo.wifiplayers) > 1)
                snprintf(linebuf, sizeof(linebuf), "%s (%s online)", linebuf, gameinfo.wifiplayers);
        }
        printf("%s\n",linebuf);
        strcpy(linebuf,"");
    }
}