- Implemented RAW SPU.

- Implemented memory mapping.
This commit is contained in:
DH 2013-07-12 15:42:17 +03:00
parent 027a31bd84
commit 559852a8fc
43 changed files with 1106 additions and 224 deletions

View file

@ -413,16 +413,6 @@ bool ELF64Loader::LoadShdrData(u64 offset)
{
Elf64_Shdr& shdr = shdr_arr[i];
if(shdr.sh_addr < min_addr)
{
min_addr = shdr.sh_addr;
}
if(shdr.sh_addr + shdr.sh_size > max_addr)
{
max_addr = shdr.sh_addr + shdr.sh_size;
}
if(i < shdr_name_arr.GetCount())
{
const wxString& name = shdr_name_arr[i];
@ -445,6 +435,22 @@ bool ELF64Loader::LoadShdrData(u64 offset)
if(size == 0 || !Memory.IsGoodAddr(offset + addr, size)) continue;
if(shdr.sh_addr < min_addr)
{
min_addr = shdr.sh_addr;
}
if(shdr.sh_addr + shdr.sh_size > max_addr)
{
max_addr = shdr.sh_addr + shdr.sh_size;
}
if((shdr.sh_type == SHT_RELA) || (shdr.sh_type == SHT_REL))
{
ConLog.Error("ELF64 ERROR: Relocation");
continue;
}
switch(shdr.sh_type)
{
case SHT_NOBITS:
@ -457,6 +463,10 @@ bool ELF64Loader::LoadShdrData(u64 offset)
elf64_f.Read(&Memory[addr], shdr.sh_size);
*/
break;
case SHT_RELA:
ConLog.Warning("ELF64: RELA");
break;
}
}