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; }
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; }
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,""); } }