public void Load(Stream FileStream, Stream MemoryStream, MemoryPartition MemoryPartition, HleModuleManager ModuleManager)
{
this.ElfLoader = new ElfLoader();
this.ModuleManager = ModuleManager;
this.ElfLoader.Load(FileStream);
PspEmulatorContext.PspConfig.InfoExeHasRelocation = this.ElfLoader.NeedsRelocation;
BaseAddress = (uint)(this.ElfLoader.NeedsRelocation ? 0x08900000 : 0);
this.ElfLoader.AllocateAndWrite(MemoryStream, MemoryPartition, BaseAddress);
if (this.ElfLoader.NeedsRelocation)
{
RelocateFromHeaders();
}
this.ModuleInfo = ElfLoader.SectionHeaderFileStream(ElfLoader.SectionHeadersByName[".rodata.sceModuleInfo"]).ReadStruct<ElfPsp.ModuleInfo>(); ;
//Console.WriteLine(this.ModuleInfo.ToStringDefault());
this.InitInfo.PC = ElfLoader.Header.EntryPoint + BaseAddress;
this.InitInfo.GP = this.ModuleInfo.GP + BaseAddress;
UpdateModuleImports();
}