aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2003-09-13 17:36:31 +0000
committerMax Horn2003-09-13 17:36:31 +0000
commit5aa69da8efc79fcd5252811de17b62957a9bab5d (patch)
tree345189b15e91c7411e18b41b7efab5db8d5b5e3b
parent0c0f967c596a8f9933ab6584f81993db62658d89 (diff)
downloadscummvm-rg350-5aa69da8efc79fcd5252811de17b62957a9bab5d.tar.gz
scummvm-rg350-5aa69da8efc79fcd5252811de17b62957a9bab5d.tar.bz2
scummvm-rg350-5aa69da8efc79fcd5252811de17b62957a9bab5d.zip
convert run lists in the res manager
svn-id: r10233
-rw-r--r--sword2/logic.cpp2
-rw-r--r--sword2/resman.cpp8
2 files changed, 8 insertions, 2 deletions
diff --git a/sword2/logic.cpp b/sword2/logic.cpp
index 1642ed8ed9..836eb8258e 100644
--- a/sword2/logic.cpp
+++ b/sword2/logic.cpp
@@ -81,7 +81,7 @@ int logic::Process_session(void) //Tony6June96 (first run 21Oct96)
Con_fatal_error("Logic_engine %d not a run_list", run_list);
game_object_list = (uint32 *) (head+1);
- ID = FROM_LE_32(game_object_list[pc++]); //read the next id
+ ID = game_object_list[pc++]; //read the next id
id=ID;
res_man.Res_close(run_list); //release the list again so it can float in memory - at this point not one thing should be locked
diff --git a/sword2/resman.cpp b/sword2/resman.cpp
index b06621986a..20d0bf0741 100644
--- a/sword2/resman.cpp
+++ b/sword2/resman.cpp
@@ -397,8 +397,14 @@ static void convertEndian(uint8 *file, uint32 len) {
break;
case PARALLAX_FILE_null:
break;
- case RUN_LIST:
+ case RUN_LIST: {
+ uint32 *list = (uint32 *)file;
+ while (*list) {
+ SWAP32(*list);
+ list++;
+ }
break;
+ }
case TEXT_FILE: {
_textHeader *textHeader = (_textHeader *)file;
SWAP32(textHeader->noOfLines);