[Scummvm-cvs-logs] SF.net SVN: scummvm:[52052] scummvm/branches/gsoc2010-plugins

toneman1138 at users.sourceforge.net toneman1138 at users.sourceforge.net
Fri Aug 13 01:55:12 CEST 2010


Revision: 52052
          http://scummvm.svn.sourceforge.net/scummvm/?rev=52052&view=rev
Author:   toneman1138
Date:     2010-08-12 23:55:12 +0000 (Thu, 12 Aug 2010)

Log Message:
-----------
modified DS makefile to use new plugin design where only one plugin is loaded at a time and tested successfully on the DS. Added code to prevent a crash in the case where there are no engine plugins present. Removed code for R_ARM_TARGET1 in arm-loader, as it is no longer used and was never used successfully

Modified Paths:
--------------
    scummvm/branches/gsoc2010-plugins/backends/platform/ds/arm9/makefile
    scummvm/branches/gsoc2010-plugins/backends/plugins/arm-loader.cpp
    scummvm/branches/gsoc2010-plugins/base/plugins.cpp

Modified: scummvm/branches/gsoc2010-plugins/backends/platform/ds/arm9/makefile
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/ds/arm9/makefile	2010-08-12 23:51:49 UTC (rev 52051)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/ds/arm9/makefile	2010-08-12 23:55:12 UTC (rev 52052)
@@ -1,7 +1,7 @@
 srcdir      ?= .
 DEPDIR      := .deps
 
-VERBOSE_BUILD = 1
+VERBOSE_BUILD = 0
 DYNAMIC_MODULES = 1
 libndsdir = $(DEVKITPRO)/libnds
 #libndsdir = /home/neil/devkitpror21/libnds
@@ -237,7 +237,7 @@
 
 
 ASFLAGS = -mcpu=arm9tdmi -mthumb-interwork
-DEFINES += -D__DS__ -DNDS -DARM9 -DNONSTANDARD_PORT -DDISABLE_FANCY_THEMES -DVECTOR_RENDERER_FORMAT=1555 -DDISABLE_DOSBOX_OPL -DDISABLE_DEFAULT_SAVEFILEMANAGER -DELF_LOADER_TARGET -DARM -DARM_TARGET#-DNEW_PLUGIN_DESIGN_FIRST_REFINEMENT
+DEFINES += -D__DS__ -DNDS -DARM9 -DNONSTANDARD_PORT -DDISABLE_FANCY_THEMES -DVECTOR_RENDERER_FORMAT=1555 -DDISABLE_DOSBOX_OPL -DDISABLE_DEFAULT_SAVEFILEMANAGER -DELF_LOADER_TARGET -DARM -DARM_TARGET -DNEW_PLUGIN_DESIGN_FIRST_REFINEMENT
 ifdef USE_MAD
 	DEFINES += -DUSE_MAD
 endif
@@ -364,7 +364,7 @@
 
 clean:
 	$(RM) $(OBJS) $(EXECUTABLE)
-	rm -rf *.h engines plugins scummvm.nds scummvm.ds.gba
+	rm -rf *.h engines plugins graphics gui common sound backends base map.txt scummvm.nds scummvm.ds.gba
 
 dist : SCUMMVM.BIN plugins plugin_dist
 

Modified: scummvm/branches/gsoc2010-plugins/backends/plugins/arm-loader.cpp
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/plugins/arm-loader.cpp	2010-08-12 23:51:49 UTC (rev 52051)
+++ scummvm/branches/gsoc2010-plugins/backends/plugins/arm-loader.cpp	2010-08-12 23:55:12 UTC (rev 52052)
@@ -110,18 +110,6 @@
 			DBG("R_ARM_JUMP24: PC-relative jump, ld takes care of all relocation work for us.\n");
 			break;
 
-		case R_ARM_TARGET1:
-			if (sym->st_shndx < SHN_LOPROC) {			// Only shift for plugin section.
-				a = *target;							// Get full 32 bits of addend
-				relocation = a + (Elf32_Addr)_segment;			   // Shift by main offset
-
-				*target = relocation;
-
-				DBG("R_ARM_TARGET1: i=%d, a=%x, origTarget=%x, target=%x\n", i, a, origTarget, *target);
-				DBG("Make sure --target1-abs is a flag to LD!\n");
-			}
-			break;
-
 		case R_ARM_V4BX:
 			DBG("R_ARM_V4BX: No relocation calculation necessary.\n");
 			break;

Modified: scummvm/branches/gsoc2010-plugins/base/plugins.cpp
===================================================================
--- scummvm/branches/gsoc2010-plugins/base/plugins.cpp	2010-08-12 23:51:49 UTC (rev 52051)
+++ scummvm/branches/gsoc2010-plugins/base/plugins.cpp	2010-08-12 23:55:12 UTC (rev 52052)
@@ -347,6 +347,7 @@
 }
 
 bool PluginManager::loadNextPlugin() {
+	if (nonEnginePlugs == _allPlugs.size()) return false; //There are no Engine Plugins in this case.
 	//To ensure only one engine plugin is loaded at a time, we unload all engine plugins before trying to load a new one.
 	unloadPluginsExcept(PLUGIN_TYPE_ENGINE, NULL);
 	++_currentPlugin;


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