[Scummvm-cvs-logs] SF.net SVN: scummvm:[52577] scummvm/branches/gsoc2010-plugins/backends/ plugins/elf
dhewg at users.sourceforge.net
dhewg at users.sourceforge.net
Mon Sep 6 00:00:42 CEST 2010
Revision: 52577
http://scummvm.svn.sourceforge.net/scummvm/?rev=52577&view=rev
Author: dhewg
Date: 2010-09-05 22:00:41 +0000 (Sun, 05 Sep 2010)
Log Message:
-----------
PLUGINS: Added _segmentVMA to the MIPS loader.
Also added 2 TODOs for all loaders not respection that offset.
Modified Paths:
--------------
scummvm/branches/gsoc2010-plugins/backends/plugins/elf/arm-loader.cpp
scummvm/branches/gsoc2010-plugins/backends/plugins/elf/mips-loader.cpp
Modified: scummvm/branches/gsoc2010-plugins/backends/plugins/elf/arm-loader.cpp
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/plugins/elf/arm-loader.cpp 2010-09-05 22:00:19 UTC (rev 52576)
+++ scummvm/branches/gsoc2010-plugins/backends/plugins/elf/arm-loader.cpp 2010-09-05 22:00:41 UTC (rev 52577)
@@ -59,7 +59,7 @@
// Get the symbol this relocation entry is referring to
Elf32_Sym *sym = _symtab + (REL_INDEX(rel[i].r_info));
- // Get the target instruction in the code
+ // Get the target instruction in the code. TODO: repect _segmentVMA
uint32 *target = (uint32 *)((byte *)relSegment + rel[i].r_offset);
uint32 origTarget = *target; //Save for debugging
Modified: scummvm/branches/gsoc2010-plugins/backends/plugins/elf/mips-loader.cpp
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/plugins/elf/mips-loader.cpp 2010-09-05 22:00:19 UTC (rev 52576)
+++ scummvm/branches/gsoc2010-plugins/backends/plugins/elf/mips-loader.cpp 2010-09-05 22:00:41 UTC (rev 52577)
@@ -69,7 +69,7 @@
// Get the symbol this relocation entry is referring to
Elf32_Sym *sym = _symtab + (REL_INDEX(rel[i].r_info));
- // Get the target instruction in the code
+ // Get the target instruction in the code. TODO: repect _segmentVMA
uint32 *target = (uint32 *)((byte *)relSegment + rel[i].r_offset);
uint32 origTarget = *target; // Save for debugging
@@ -288,6 +288,7 @@
// Get offset to load segment into
baseAddress = _segment + phdr->p_vaddr;
_segmentSize = phdr->p_memsz;
+ _segmentVMA = phdr->p_vaddr;
// Set .bss segment to 0 if necessary
if (phdr->p_memsz > phdr->p_filesz) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list