[Scummvm-git-logs] scummvm master -> a4fe03c0a53ad89960f4934ea677ff0a7c0bc1f7

rsn8887 rsn8887 at users.noreply.github.com
Thu Mar 29 06:01:57 CEST 2018


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
a4fe03c0a5 PSP2: allow loading games from uma0: in addition to ux0:


Commit: a4fe03c0a53ad89960f4934ea677ff0a7c0bc1f7
    https://github.com/scummvm/scummvm/commit/a4fe03c0a53ad89960f4934ea677ff0a7c0bc1f7
Author: rsn8887 (rsn8887 at users.noreply.github.com)
Date: 2018-03-28T23:01:01-05:00

Commit Message:
PSP2: allow loading games from uma0: in addition to ux0:

Changed paths:
    backends/fs/posix/posix-fs.cpp
    backends/fs/psp2/psp2-fs-factory.cpp


diff --git a/backends/fs/posix/posix-fs.cpp b/backends/fs/posix/posix-fs.cpp
index 3f90fc1..01c2751 100644
--- a/backends/fs/posix/posix-fs.cpp
+++ b/backends/fs/posix/posix-fs.cpp
@@ -62,6 +62,16 @@ void POSIXFilesystemNode::setFlags() {
 POSIXFilesystemNode::POSIXFilesystemNode(const Common::String &p) {
 	assert(p.size() > 0);
 
+#ifdef PSP2
+	if (p == "/") {
+		_isDirectory = true;
+		_isValid = false;
+		_path = p;
+		_displayName = p;
+		return;
+	}
+#endif
+
 	// Expand "~/" to the value of the HOME env variable
 	if (p.hasPrefix("~/")) {
 		const char *home = getenv("HOME");
@@ -152,6 +162,15 @@ bool POSIXFilesystemNode::getChildren(AbstractFSList &myList, ListMode mode, boo
 		return true;
 	}
 #endif
+#ifdef PSP2
+	if (_path == "/") {
+		POSIXFilesystemNode *entry1 = new POSIXFilesystemNode("ux0:");
+		myList.push_back(entry1);
+		POSIXFilesystemNode *entry2 = new POSIXFilesystemNode("uma0:");
+		myList.push_back(entry2);
+		return true;
+	}
+#endif
 
 	DIR *dirp = opendir(_path.c_str());
 	struct dirent *dp;
@@ -230,6 +249,10 @@ AbstractFSNode *POSIXFilesystemNode::getParent() const {
         // This is a root directory of a drive
         return makeNode("/");   // return a virtual root for a list of drives
 #endif
+#ifdef PSP2
+	if (_path.hasSuffix(":"))
+		return makeNode("/");
+#endif
 
 	const char *start = _path.c_str();
 	const char *end = start + _path.size();
diff --git a/backends/fs/psp2/psp2-fs-factory.cpp b/backends/fs/psp2/psp2-fs-factory.cpp
index 68d9112..946eb10 100644
--- a/backends/fs/psp2/psp2-fs-factory.cpp
+++ b/backends/fs/psp2/psp2-fs-factory.cpp
@@ -32,7 +32,7 @@
 #include "backends/fs/psp2/psp2-fs-factory.h"
 
 AbstractFSNode *PSP2FilesystemFactory::makeRootFileNode() const {
-	return new POSIXFilesystemNode("ux0:");
+	return new POSIXFilesystemNode("/");
 }
 
 AbstractFSNode *PSP2FilesystemFactory::makeCurrentDirectoryFileNode() const {





More information about the Scummvm-git-logs mailing list