[Scummvm-git-logs] scummvm master -> 7c9a1fa9f3f0e21757cfb7822baac5a31861a2d9

lephilousophe lephilousophe at users.noreply.github.com
Sat May 1 16:03:27 UTC 2021


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

Summary:
81124a5214 AMIGAOS: Small changes
27857d895f AMIGAOS: Janitorial
4c5b906474 AMIGAOS: Janitorial
cbaaa28ddb AMIGAOS: Change to work with assigns as install dir
d0185f5172 AMIGAOS: Quite some clean up
abd09fd5b0 MORPHOS: Fix oversight in debug message
630a58d262 AMIGAOS: Revert most of the superfluous spaces
8a35ceddda AMIGAOS: Add ALL switch to makedir
6a4adb24d3 AMIGAOS: Add switches to delete
e776921a7e AMIGAOS: Revert some chnages to use new install path
13d5b6660e AMIGAOS: More changes
ae9ad5b187 AMIGAOS: Revert MorphOS change (taken care in another PR)
3c498b4a35 AMIGAOS: Revert install assign to install subdirectory
37ef6b4204 AMIGAOS: Typo in comment
0cd93d8113 AMIGAOS: Update commands
213232ea85 AMIGAOS: Update commands
c889a126b8 AMIGAOS: Janitorial
993779259f AMIGAOS: Strip trailing / to ensure .info file is placed beside folder
7c9a1fa9f3 AMIGAOS4: Add support for dynamic linking (and plugins)


Commit: 81124a521446a117f647c895cda63dec020263cc
    https://github.com/scummvm/scummvm/commit/81124a521446a117f647c895cda63dec020263cc
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Small changes

- Change install path to use an assign instead of an absolute path
- Change system dialogs output to print "asl" instead of "amigaos (asl)", incorporated with morphos (since both targets use the same dialog system) to save some lines

Changed paths:
    configure


diff --git a/configure b/configure
index 636bf690cf..1c429ace70 100755
--- a/configure
+++ b/configure
@@ -230,7 +230,7 @@ _dwp=dwp
 _windres=windres
 _stagingpath="staging"
 _win32path="c:/scummvm"
-_amigaospath="Games:ScummVM"
+_amigaospath="ScummVM:"
 _morphospath="PROGDIR:"
 _staticlibpath=
 _xcodetoolspath=
@@ -5731,8 +5731,8 @@ if test "$_dialogs" = "no"; then
 	echo "no"
 else
 	case $_host_os in
-	amigaos*)
-		echo "amigaos (asl)"
+	amigaos* | morphos*)
+		echo "asl"
 		_dialogs=yes
 		;;
 	darwin*)
@@ -5744,10 +5744,6 @@ else
 		echo "win32"
 		_dialogs=yes
 		;;
-	morphos*)
-		echo "morphos"
-		_dialogs=yes
-		;;
 	*)
 		if test "$_gtk" = yes; then
 			echo "gtk"


Commit: 27857d895f32edf09fc7ba6920988aee66b6bd70
    https://github.com/scummvm/scummvm/commit/27857d895f32edf09fc7ba6920988aee66b6bd70
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Janitorial

Changed paths:
    dists/amigaos/RM2AG.rexx


diff --git a/dists/amigaos/RM2AG.rexx b/dists/amigaos/RM2AG.rexx
index 2af9e2d41d..9b4e2ce90c 100644
--- a/dists/amigaos/RM2AG.rexx
+++ b/dists/amigaos/RM2AG.rexx
@@ -41,7 +41,7 @@ ELSE DO
 	Check for destination path and create it, if needed.
 	*/
 	IF ~EXISTS(install_path'/') THEN
-		ADDRESS COMMAND 'makedir ALL FORCE 'install_path
+		ADDRESS COMMAND 'makedir ALL 'install_path
 END
 
 IF ~OPEN(check_readme,readme_md,'R') THEN DO
@@ -307,7 +307,7 @@ END
 /*
 Install finished README.guide to installation path and delete it on closure.
 */
-ADDRESS COMMAND 'copy QUIET README.guide 'install_path
+ADDRESS COMMAND 'copy CLONE QUIET README.guide 'install_path
 ADDRESS COMMAND 'delete FORCE QUIET README.guide'
 
 EXIT


Commit: 4c5b906474c0c56922d00566f316abceebd87fe5
    https://github.com/scummvm/scummvm/commit/4c5b906474c0c56922d00566f316abceebd87fe5
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Janitorial

Changed paths:
    dists/amigaos/RM2AG.rexx.in


diff --git a/dists/amigaos/RM2AG.rexx.in b/dists/amigaos/RM2AG.rexx.in
index 3d7f889f06..301fe98720 100644
--- a/dists/amigaos/RM2AG.rexx.in
+++ b/dists/amigaos/RM2AG.rexx.in
@@ -41,7 +41,7 @@ ELSE DO
 	Check for destination path and create it, if needed.
 	*/
 	IF ~EXISTS(install_path'/') THEN
-		ADDRESS COMMAND 'makedir ALL FORCE 'install_path
+		ADDRESS COMMAND 'makedir ALL 'install_path
 END
 
 IF ~OPEN(check_readme,readme_md,'R') THEN DO
@@ -307,7 +307,7 @@ END
 /*
 Install finished README.guide to installation path and delete it on closure.
 */
-ADDRESS COMMAND 'copy QUIET README.guide 'install_path
+ADDRESS COMMAND 'copy CLONE QUIET README.guide 'install_path
 ADDRESS COMMAND 'delete FORCE QUIET README.guide'
 
 EXIT


Commit: cbaaa28ddb871ff73052fc1c9f52f082558f7d7f
    https://github.com/scummvm/scummvm/commit/cbaaa28ddb871ff73052fc1c9f52f082558f7d7f
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Change to work with assigns as install dir

Also janitorial

Changed paths:
    dists/amigaos/Ext_Inst_so.rexx


diff --git a/dists/amigaos/Ext_Inst_so.rexx b/dists/amigaos/Ext_Inst_so.rexx
index 945121e7e9..93c148ceb0 100644
--- a/dists/amigaos/Ext_Inst_so.rexx
+++ b/dists/amigaos/Ext_Inst_so.rexx
@@ -1,5 +1,5 @@
 /*
-$VER: Ext_Inst_so.rexx 0.5 (05.12.2020) Extract and install compiled-in shared libraries from a given ELF binary.
+$VER: Ext_Inst_so.rexx 0.6 (19.04.2021) Extract and install compiled-in shared libraries from a given ELF binary.
 */
 
 PARSE ARG executable install_path
@@ -25,7 +25,7 @@ IF ~EXISTS(executable) THEN DO
 END
 ELSE DO
 	executable=STRIP(executable)
-	executable=COMPRESS(executable,'"')
+	executable=STRIP(executable,'B','"')
 END
 IF installpath='' THEN DO
 	SAY 'No installation destination given!'
@@ -34,12 +34,12 @@ END
 ELSE DO
 	install_path=STRIP(install_path)
 	install_path=STRIP(install_path,'T','/')
-	install_path=COMPRESS(install_path,'"')
+	install_path=STRIP(install_path,'B','"')
 	/*
 	Check for destination path and create it, if needed.
 	*/
-	IF ~EXISTS(install_path'/sobjs/') THEN
-		ADDRESS COMMAND 'makedir 'install_path'/sobjs'
+	IF ~EXISTS(install_path'sobjs/') THEN
+		ADDRESS COMMAND 'makedir 'install_path'sobjs'
 END
 
 /*
@@ -91,13 +91,13 @@ DO WHILE i>0
 		  determine which to use the correct path.
 		*/
 		IF EXISTS('SDK:local/newlib/lib/'lib.so) THEN
-			ADDRESS COMMAND 'copy clone SDK:local/newlib/lib/'lib.so install_path'/sobjs/'
+			ADDRESS COMMAND 'copy clone SDK:local/newlib/lib/'lib.so install_path'sobjs/'
 		ELSE DO
 			IF EXISTS('SDK:gcc/lib/'lib.so) THEN
-				ADDRESS COMMAND 'copy clone SDK:gcc/lib/'lib.so install_path'/sobjs/'
+				ADDRESS COMMAND 'copy clone SDK:gcc/lib/'lib.so install_path'sobjs/'
 			ELSE DO
 				IF EXISTS('SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so) THEN
-					ADDRESS COMMAND 'copy clone SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'/sobjs/'
+					ADDRESS COMMAND 'copy clone SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'sobjs/'
 				ELSE DO
 					/*
 					If a shared library is not found, abort.


Commit: d0185f51721882b527f0551b29ed8c360f8556e6
    https://github.com/scummvm/scummvm/commit/d0185f51721882b527f0551b29ed8c360f8556e6
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Quite some clean up

- Cleaned up comments
- Debug messages enhanced
- Fix some leftover spaces instead of TABs
- Removed the newlib workaround: A new version has been released which fixed the cause
- Removed an old workaround dealing with a buffer set too low due to an ill combination of newlib build and disk filesystem.
Even forcing the described behaviour i was not able to see slowdowns in videos.
Also, since "slow video playback" is rather vague and no specific case were given in the comment, i wasn´t able to do specific tesing.

Works for me...

Changed paths:
    backends/fs/amigaos/amigaos-fs.cpp


diff --git a/backends/fs/amigaos/amigaos-fs.cpp b/backends/fs/amigaos/amigaos-fs.cpp
index 5f1ed71da0..3f8f205c28 100644
--- a/backends/fs/amigaos/amigaos-fs.cpp
+++ b/backends/fs/amigaos/amigaos-fs.cpp
@@ -27,20 +27,19 @@
 #include "common/debug.h"
 #include "common/util.h"
 
-#define ENTER() /* debug(6, "Enter") */
-#define LEAVE() /* debug(6, "Leave") */
-
 /**
- * Returns the last component of a given path.
+ * Returns the last component of a given path
  *
- * @param str Common::String containing the path.
- * @return Pointer to the first char of the last component inside str.
+ * @param str Common::String containing the path
+ * @return Pointer to the first char of the last component inside str
  */
+
 const char *lastPathComponent(const Common::String &str) {
+
 	int offset = str.size();
 
 	if (offset <= 0) {
-		debug(6, "Bad offset!");
+		debug(6, "lastPathComponent() failed -> Bad offset!");
 		return 0;
 	}
 
@@ -56,23 +55,22 @@ const char *lastPathComponent(const Common::String &str) {
 }
 
 AmigaOSFilesystemNode::AmigaOSFilesystemNode() {
-	ENTER();
+
 	_sDisplayName = "Available HDDs/Partitions";
 	_bIsValid = true;
 	_bIsDirectory = true;
 	_sPath = "";
 	_pFileLock = 0;
-	_nProt = 0; // Protection is ignored for the root volume.
-	LEAVE();
+	// Protection is ignored for the root volume
+	_nProt = 0;
 }
 
 AmigaOSFilesystemNode::AmigaOSFilesystemNode(const Common::String &p) {
-	ENTER();
 
 	int offset = p.size();
 
 	if (offset <= 0) {
-		debug(6, "Bad offset!");
+		debug(6, "AmigaOSFileSystemNode() failed -> Bad offset!");
 		return;
 	}
 
@@ -82,56 +80,40 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(const Common::String &p) {
 	_bIsDirectory = false;
 	_bIsValid = false;
 
-	// WORKAROUND:
-	// This is a workaround for a bug present in AmigaOS
-	// newlib.library 53.30 and lower.
-	// It will be removed once a fixed version of said library is
-	// available to the public.
-	// DESCRIPTION:
-	// We need to explicitly open dos.library and it's IDOS interface.
-	// Otherwise it will hit a NULL pointer with a shared binary build.
-	// The hit will happen on loading a game from any engine, if
-	// more than one engine (shared) plugin is available.
-	DOSBase = IExec->OpenLibrary("dos.library", 0);
-	IDOS = (struct DOSIFace *)IExec->GetInterface(DOSBase, "main", 1, NULL);
-
-	// Check whether the node exists and if it's a directory.
+	// Check whether the node exists and if it's a directory
 	struct ExamineData * pExd = IDOS->ExamineObjectTags(EX_StringNameInput,_sPath.c_str(),TAG_END);
+
 	if (pExd) {
+
 		_nProt = pExd->Protection;
+
 		if (EXD_IS_DIRECTORY(pExd)) {
+
 			_bIsDirectory = true;
 			_pFileLock = IDOS->Lock((CONST_STRPTR)_sPath.c_str(), SHARED_LOCK);
 			_bIsValid = (_pFileLock != 0);
-
-			// Add a trailing slash, if needed.
+			// Add a trailing slash, if needed
 			const char c = _sPath.lastChar();
 			if (c != '/' && c != ':')
 				_sPath += '/';
 		} else {
-			//_bIsDirectory = false;
+			_bIsDirectory = false;
 			_bIsValid = true;
 		}
 
 		IDOS->FreeDosObject(DOS_EXAMINEDATA, pExd);
 	}
-
-	// WORKAROUND:
-	// Close dos.library and its IDOS interface again.
-	IExec->DropInterface((struct Interface *)IDOS);
-	IExec->CloseLibrary(DOSBase);
-
-	LEAVE();
 }
 
 AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayName) {
-	ENTER();
+
 	int bufSize = MAXPATHLEN;
 	_pFileLock = 0;
 
 	while (true) {
 		char *n = new char[bufSize];
 		if (IDOS->NameFromLock(pLock, (STRPTR)n, bufSize) != DOSFALSE) {
+
 			_sPath = n;
 			_sDisplayName = pDisplayName ? pDisplayName : IDOS->FilePart((STRPTR)n);
 			delete[] n;
@@ -139,9 +121,9 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayNam
 		}
 
 		if (IDOS->IoErr() != ERROR_LINE_TOO_LONG) {
+
 			_bIsValid = false;
-			debug(6, "IDOS->IoErr() failed - ERROR_LINE_TOO_LONG not matched!");
-			LEAVE();
+			debug(6, "IDOS->IoErr() failed -> ERROR_LINE_TOO_LONG not matched!");
 			delete[] n;
 			return;
 		}
@@ -153,90 +135,73 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayNam
 	_bIsDirectory = false;
 	_bIsValid = false;
 
-	// Check whether the node exists and if it's a directory.
+	// Check whether the node exists and if it's a directory
 	struct ExamineData * pExd = IDOS->ExamineObjectTags(EX_FileLockInput,pLock,TAG_END);
+
 	if (pExd) {
+
 		_nProt = pExd->Protection;
+
 		if (EXD_IS_DIRECTORY(pExd)) {
+
 			_bIsDirectory = true;
 			_pFileLock = IDOS->DupLock(pLock);
 			_bIsValid = _pFileLock != 0;
 
-			// Add a trailing slash, if needed.
+			// Add a trailing slash, if needed
 			const char c = _sPath.lastChar();
 			if (c != '/' && c != ':')
 				_sPath += '/';
 		} else {
-			//_bIsDirectory = false;
 			_bIsValid = true;
 		}
 
-		IDOS->FreeDosObject(DOS_EXAMINEDATA, pExd);
+	IDOS->FreeDosObject(DOS_EXAMINEDATA, pExd);
+
 	} else {
-		debug(6, "IDOS->ExamineData() failed - ExamineDosObject returned NULL!");
-	}
 
-	LEAVE();
+		debug(6, "IDOS->ExamineObjectTags() failed -> ExamineDosObject returned NULL!");
+	}
 }
 
-// We need the custom copy constructor because of DupLock().
+// We need the custom copy constructor because of DupLock()
 AmigaOSFilesystemNode::AmigaOSFilesystemNode(const AmigaOSFilesystemNode& node)
 : AbstractFSNode() {
-	ENTER();
+
 	_sDisplayName = node._sDisplayName;
 	_bIsValid = node._bIsValid;
 	_bIsDirectory = node._bIsDirectory;
 	_sPath = node._sPath;
 	_pFileLock = IDOS->DupLock(node._pFileLock);
 	_nProt = node._nProt;
-	LEAVE();
 }
 
 AmigaOSFilesystemNode::~AmigaOSFilesystemNode() {
-	ENTER();
+
 	if (_pFileLock)
 		IDOS->UnLock(_pFileLock);
-	LEAVE();
 }
 
 bool AmigaOSFilesystemNode::exists() const {
-	ENTER();
+
 	if (_sPath.empty())
 		return false;
 
 	bool nodeExists = false;
 
-	// Previously we were trying to examine the node in order
-	// to determine if the node exists or not.
-	// I don't see the point : once you have been granted a
-	// lock on it, it means it exists...
-	//
-	// =============================  Old code
-	// BPTR pLock = IDOS->Lock((STRPTR)_sPath.c_str(), SHARED_LOCK);
-	// if (pLock)
-	// {
-	// 	if (IDOS->Examine(pLock, fib) != DOSFALSE)
-	// 		nodeExists = true;
-	// 	IDOS->UnLock(pLock);
-	// }
-	//
-	// IDOS->FreeDosObject(DOS_FIB, fib);
-	//
-	// =============================  New code
 	BPTR pLock = IDOS->Lock(_sPath.c_str(), SHARED_LOCK);
 	if (pLock) {
 		nodeExists = true;
 		IDOS->UnLock(pLock);
 	}
 
-	LEAVE();
 	return nodeExists;
 }
 
 AbstractFSNode *AmigaOSFilesystemNode::getChild(const Common::String &n) const {
-	ENTER();
+
 	if (!_bIsDirectory) {
-		debug(6, "Not a directory!");
+		debug(6, "AmigaOSFileSystemNode::getChild() failed -> Not a directory!");
 		return 0;
 	}
 
@@ -246,52 +211,50 @@ AbstractFSNode *AmigaOSFilesystemNode::getChild(const Common::String &n) const {
 		newPath += '/';
 
 	newPath += n;
-
-	LEAVE();
 	return new AmigaOSFilesystemNode(newPath);
 }
 
 bool AmigaOSFilesystemNode::getChildren(AbstractFSList &myList, ListMode mode, bool hidden) const {
-	ENTER();
-	bool ret = false;
 
 	if (!_bIsValid) {
-		debug(6, "Invalid node!");
-		LEAVE();
-		return false; // Empty list
+		debug(6, "AmigaOSFileSystemNode::getChildren() failed -> Invalid node (Empty list)!");
+		return false;
 	}
 
 	if (!_bIsDirectory) {
-		debug(6, "Not a directory!");
-		LEAVE();
-		return false; // Empty list
+		debug(6, "AmigaOSFileSystemNode::getChildren() failed -> Invalid node (Not a directory)!");
+		return false;
 	}
 
 	if (isRootNode()) {
-		debug(6, "Root node!");
-		LEAVE();
+		debug(6, "AmigaOSFileSystemNode::getChildren() -> Root node obtained!");
 		myList = listVolumes();
 		return true;
 	}
 
-	APTR context = IDOS->ObtainDirContextTags(  	EX_FileLockInput,	_pFileLock,
-							EX_DoCurrentDir,	TRUE,  /* for softlinks */
-							EX_DataFields,		(EXF_NAME|EXF_LINK|EXF_TYPE),
+	APTR context = IDOS->ObtainDirContextTags(	EX_FileLockInput,	_pFileLock,
+							EX_DoCurrentDir,	TRUE, /* for softlinks */
+							EX_DataFields,	(EXF_NAME|EXF_LINK|EXF_TYPE),
 							TAG_END);
+
 	if (context) {
-		// No need to free the value after usage, everything will be dealt with by the DirContext release.
+
+		// No need to free the value after usage, everything will be dealt with by the
+		// DirContext release
 		struct ExamineData * pExd = NULL;
 
 		AmigaOSFilesystemNode *entry;
-		while ( (pExd = IDOS->ExamineDir(context)) ) {
-			if (     (EXD_IS_FILE(pExd) && ( Common::FSNode::kListFilesOnly == mode ))
-				||  (EXD_IS_DIRECTORY(pExd) && ( Common::FSNode::kListDirectoriesOnly == mode ))
-				||  Common::FSNode::kListAll == mode
-				)
+
+		while ((pExd = IDOS->ExamineDir(context))) {
+			if ((EXD_IS_FILE(pExd) && (Common::FSNode::kListFilesOnly == mode))
+			|| (EXD_IS_DIRECTORY(pExd) && (Common::FSNode::kListDirectoriesOnly == mode))
+			|| Common::FSNode::kListAll == mode)
 			{
 				BPTR pLock = IDOS->Lock( pExd->Name, SHARED_LOCK );
+
 				if (pLock) {
 					entry = new AmigaOSFilesystemNode( pLock, pExd->Name );
+
 					if (entry) {
 						myList.push_back(entry);
 					}
@@ -302,30 +265,23 @@ bool AmigaOSFilesystemNode::getChildren(AbstractFSList &myList, ListMode mode, b
 		}
 
 		if (ERROR_NO_MORE_ENTRIES != IDOS->IoErr() ) {
-			debug(6, "IDOS->IoErr() failed - ERROR_NO_MORE_ENTRIES!");
-			ret = false;
-		} else {
-			ret = true;
+			debug(6, "IDOS->IoErr() failed -> ERROR_NO_MORE_ENTRIES not matched!");
+			return false;
 		}
 
-
 		IDOS->ReleaseDirContext(context);
+		return true;
+
 	} else {
 		debug(6, "IDOS->ObtainDirContext() failed!");
-		ret = false;
+		return false;
 	}
-
-	LEAVE();
-
-	return ret;
 }
 
 AbstractFSNode *AmigaOSFilesystemNode::getParent() const {
-	ENTER();
 
 	if (isRootNode()) {
-		debug(6, "Root node!");
-		LEAVE();
+		debug(6, "AmigaOSFileSystemNode::getParent() -> Root node obtained!");
 		return new AmigaOSFilesystemNode(*this);
 	}
 
@@ -340,6 +296,7 @@ AbstractFSNode *AmigaOSFilesystemNode::getParent() const {
 	AmigaOSFilesystemNode *node;
 
 	BPTR parentDir = IDOS->ParentDir( pLock );
+
 	if (parentDir) {
 		node = new AmigaOSFilesystemNode(parentDir);
 		IDOS->UnLock(parentDir);
@@ -350,91 +307,72 @@ AbstractFSNode *AmigaOSFilesystemNode::getParent() const {
 		IDOS->UnLock(pLock);
 	}
 
-	LEAVE();
-
 	return node;
+
 }
 
 bool AmigaOSFilesystemNode::isReadable() const {
+
 	if (!_bIsValid)
 		return false;
 
 	// Regular RWED protection flags are low-active or inverted,
 	// thus the negation. Moreover, a pseudo root filesystem is
-	// readable whatever the protection says.
+	// always readable, whatever the protection says
 	bool readable = !(_nProt & EXDF_OTR_READ) || isRootNode();
-
 	return readable;
 }
 
 bool AmigaOSFilesystemNode::isWritable() const {
+
 	if (!_bIsValid)
 		return false;
 
 	// Regular RWED protection flags are low-active or inverted,
 	// thus the negation. Moreover, a pseudo root filesystem is
-	// never writable whatever the protection says.
-	// (Because of it's pseudo nature).
+	// never writable (due of it's pseudo nature), whatever the protection says
 	bool writable = !(_nProt & EXDF_OTR_WRITE) && !isRootNode();
-
 	return writable;
 }
 
 AbstractFSList AmigaOSFilesystemNode::listVolumes() const {
-	ENTER();
 
 	AbstractFSList myList;
-
 	const uint32 kLockFlags = LDF_READ | LDF_VOLUMES;
 	char buffer[MAXPATHLEN];
 
 	struct DosList *dosList = IDOS->LockDosList(kLockFlags);
+
 	if (!dosList) {
 		debug(6, "IDOS->LockDOSList() failed!");
-		LEAVE();
 		return myList;
 	}
 
 	dosList = IDOS->NextDosEntry(dosList, LDF_VOLUMES);
+
 	while (dosList) {
 		if (dosList->dol_Type == DLT_VOLUME &&
 			dosList->dol_Name &&
 			dosList->dol_Port) {
 
-			// The original line was
-			//
-			//	if (dosList->dol_Type == DLT_VOLUME &&
-			//		dosList->dol_Name &&
-			//		dosList->dol_Task) {
-			//
-			// which errored using SDK 53.24 with a
-			//	'struct dosList' has no member called 'dol_Task'
-			// The reason for that was, that
-			//	1) dol_Task wasn't a task pointer, it was a message port instead.
-			//	2) it was redefined to be dol_Port in dos/obsolete.h in aforementioned SDK.
-
-			// Copy name to buffer.
+			// Copy name to buffer
 			IDOS->CopyStringBSTRToC(dosList->dol_Name, buffer, MAXPATHLEN);
 
-			// Volume name + '\0'.
+			// Volume name + '\0'
 			char *volName = new char [strlen(buffer) + 1];
 
 			strcpy(volName, buffer);
-
 			strcat(buffer, ":");
 
 			BPTR volumeLock = IDOS->Lock((STRPTR)buffer, SHARED_LOCK);
-			if (volumeLock) {
 
+			if (volumeLock) {
 				char *devName = new char [MAXPATHLEN];
 
-				// Find device name.
+				// Find device name
 				IDOS->DevNameFromLock(volumeLock, devName, MAXPATHLEN, DN_DEVICEONLY);
-
 				snprintf(buffer, MAXPATHLEN, "%s (%s)", volName, devName);
-
 				delete[] devName;
-
 				AmigaOSFilesystemNode *entry = new AmigaOSFilesystemNode(volumeLock, buffer);
 				if (entry) {
 					myList.push_back(entry);
@@ -442,7 +380,6 @@ AbstractFSList AmigaOSFilesystemNode::listVolumes() const {
 
 				IDOS->UnLock(volumeLock);
 			}
-
 			delete[] volName;
 		}
 		dosList = IDOS->NextDosEntry(dosList, LDF_VOLUMES);
@@ -450,34 +387,20 @@ AbstractFSList AmigaOSFilesystemNode::listVolumes() const {
 
 	IDOS->UnLockDosList(kLockFlags);
 
-	LEAVE();
-
 	return myList;
 }
 
 Common::SeekableReadStream *AmigaOSFilesystemNode::createReadStream() {
-	StdioStream *readStream = StdioStream::makeFromPath(getPath(), false);
-
-	//
-	// Work around for possibility that someone uses AmigaOS "newlib" build
-	// with SmartFileSystem (blocksize 512 bytes), leading to buffer size
-	// being only 512 bytes. "Clib2" sets the buffer size to 8KB, resulting
-	// smooth movie playback. This forces the buffer to be enough also when
-	// using "newlib" compile on SFS.
-	//
-	if (readStream) {
-		readStream->setBufferSize(8192);
-	}
-
-	return readStream;
+	return StdioStream::makeFromPath(getPath(), false);
 }
 
+
 Common::WriteStream *AmigaOSFilesystemNode::createWriteStream() {
 	return StdioStream::makeFromPath(getPath(), true);
 }
 
 bool AmigaOSFilesystemNode::createDirectory() {
-	warning("AmigaOSFilesystemNode::createDirectory(): Not supported");
+	warning("AmigaOSFilesystemNode::createDirectory() -> Not supported");
 	return _bIsValid && _bIsDirectory;
 }
 


Commit: abd09fd5b03f4c37d94df1051c1674979cfdbc48
    https://github.com/scummvm/scummvm/commit/abd09fd5b03f4c37d94df1051c1674979cfdbc48
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
MORPHOS: Fix oversight in debug message

Changed paths:
    backends/fs/morphos/morphos-fs.cpp


diff --git a/backends/fs/morphos/morphos-fs.cpp b/backends/fs/morphos/morphos-fs.cpp
index a15f5fc30e..3a2d4e3e00 100644
--- a/backends/fs/morphos/morphos-fs.cpp
+++ b/backends/fs/morphos/morphos-fs.cpp
@@ -358,7 +358,7 @@ Common::WriteStream *MorphOSFilesystemNode::createWriteStream() {
 }
 
 bool MorphOSFilesystemNode::createDirectory() {
-	warning("AmigaOSFilesystemNode::createDirectory(): Not supported");
+	warning("MorphOSFilesystemNode::createDirectory(): Not supported");
 	return _bIsValid && _bIsDirectory;
 }
 


Commit: 630a58d262c6bb5d657b9f767b4f07eeccc8d58c
    https://github.com/scummvm/scummvm/commit/630a58d262c6bb5d657b9f767b4f07eeccc8d58c
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Revert most of the superfluous spaces

Changed paths:
    backends/fs/amigaos/amigaos-fs.cpp


diff --git a/backends/fs/amigaos/amigaos-fs.cpp b/backends/fs/amigaos/amigaos-fs.cpp
index 3f8f205c28..155e04be9f 100644
--- a/backends/fs/amigaos/amigaos-fs.cpp
+++ b/backends/fs/amigaos/amigaos-fs.cpp
@@ -33,9 +33,7 @@
  * @param str Common::String containing the path
  * @return Pointer to the first char of the last component inside str
  */
-
 const char *lastPathComponent(const Common::String &str) {
-
 	int offset = str.size();
 
 	if (offset <= 0) {
@@ -82,22 +80,18 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(const Common::String &p) {
 
 	// Check whether the node exists and if it's a directory
 	struct ExamineData * pExd = IDOS->ExamineObjectTags(EX_StringNameInput,_sPath.c_str(),TAG_END);
-
 	if (pExd) {
-
 		_nProt = pExd->Protection;
-
 		if (EXD_IS_DIRECTORY(pExd)) {
-
 			_bIsDirectory = true;
 			_pFileLock = IDOS->Lock((CONST_STRPTR)_sPath.c_str(), SHARED_LOCK);
 			_bIsValid = (_pFileLock != 0);
+
 			// Add a trailing slash, if needed
 			const char c = _sPath.lastChar();
 			if (c != '/' && c != ':')
 				_sPath += '/';
 		} else {
-			_bIsDirectory = false;
 			_bIsValid = true;
 		}
 
@@ -113,7 +107,6 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayNam
 	while (true) {
 		char *n = new char[bufSize];
 		if (IDOS->NameFromLock(pLock, (STRPTR)n, bufSize) != DOSFALSE) {
-
 			_sPath = n;
 			_sDisplayName = pDisplayName ? pDisplayName : IDOS->FilePart((STRPTR)n);
 			delete[] n;
@@ -121,7 +114,6 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayNam
 		}
 
 		if (IDOS->IoErr() != ERROR_LINE_TOO_LONG) {
-
 			_bIsValid = false;
 			debug(6, "IDOS->IoErr() failed -> ERROR_LINE_TOO_LONG not matched!");
 			delete[] n;
@@ -137,13 +129,9 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayNam
 
 	// Check whether the node exists and if it's a directory
 	struct ExamineData * pExd = IDOS->ExamineObjectTags(EX_FileLockInput,pLock,TAG_END);
-
 	if (pExd) {
-
 		_nProt = pExd->Protection;
-
 		if (EXD_IS_DIRECTORY(pExd)) {
-
 			_bIsDirectory = true;
 			_pFileLock = IDOS->DupLock(pLock);
 			_bIsValid = _pFileLock != 0;
@@ -156,10 +144,8 @@ AmigaOSFilesystemNode::AmigaOSFilesystemNode(BPTR pLock, const char *pDisplayNam
 			_bIsValid = true;
 		}
 
-	IDOS->FreeDosObject(DOS_EXAMINEDATA, pExd);
-
+		IDOS->FreeDosObject(DOS_EXAMINEDATA, pExd);
 	} else {
-
 		debug(6, "IDOS->ExamineObjectTags() failed -> ExamineDosObject returned NULL!");
 	}
 }
@@ -211,6 +197,7 @@ AbstractFSNode *AmigaOSFilesystemNode::getChild(const Common::String &n) const {
 		newPath += '/';
 
 	newPath += n;
+
 	return new AmigaOSFilesystemNode(newPath);
 }
 
@@ -236,25 +223,21 @@ bool AmigaOSFilesystemNode::getChildren(AbstractFSList &myList, ListMode mode, b
 							EX_DoCurrentDir,	TRUE, /* for softlinks */
 							EX_DataFields,	(EXF_NAME|EXF_LINK|EXF_TYPE),
 							TAG_END);
-
 	if (context) {
-
 		// No need to free the value after usage, everything will be dealt with by the
 		// DirContext release
 		struct ExamineData * pExd = NULL;
 
 		AmigaOSFilesystemNode *entry;
-
 		while ((pExd = IDOS->ExamineDir(context))) {
 			if ((EXD_IS_FILE(pExd) && (Common::FSNode::kListFilesOnly == mode))
 			|| (EXD_IS_DIRECTORY(pExd) && (Common::FSNode::kListDirectoriesOnly == mode))
-			|| Common::FSNode::kListAll == mode)
+			|| Common::FSNode::kListAll == mode
+			)
 			{
 				BPTR pLock = IDOS->Lock( pExd->Name, SHARED_LOCK );
-
 				if (pLock) {
 					entry = new AmigaOSFilesystemNode( pLock, pExd->Name );
-
 					if (entry) {
 						myList.push_back(entry);
 					}
@@ -296,7 +279,6 @@ AbstractFSNode *AmigaOSFilesystemNode::getParent() const {
 	AmigaOSFilesystemNode *node;
 
 	BPTR parentDir = IDOS->ParentDir( pLock );
-
 	if (parentDir) {
 		node = new AmigaOSFilesystemNode(parentDir);
 		IDOS->UnLock(parentDir);
@@ -308,11 +290,9 @@ AbstractFSNode *AmigaOSFilesystemNode::getParent() const {
 	}
 
 	return node;
-
 }
 
 bool AmigaOSFilesystemNode::isReadable() const {
-
 	if (!_bIsValid)
 		return false;
 
@@ -320,11 +300,11 @@ bool AmigaOSFilesystemNode::isReadable() const {
 	// thus the negation. Moreover, a pseudo root filesystem is
 	// always readable, whatever the protection says
 	bool readable = !(_nProt & EXDF_OTR_READ) || isRootNode();
+
 	return readable;
 }
 
 bool AmigaOSFilesystemNode::isWritable() const {
-
 	if (!_bIsValid)
 		return false;
 
@@ -332,24 +312,24 @@ bool AmigaOSFilesystemNode::isWritable() const {
 	// thus the negation. Moreover, a pseudo root filesystem is
 	// never writable (due of it's pseudo nature), whatever the protection says
 	bool writable = !(_nProt & EXDF_OTR_WRITE) && !isRootNode();
+
 	return writable;
 }
 
 AbstractFSList AmigaOSFilesystemNode::listVolumes() const {
 
 	AbstractFSList myList;
+
 	const uint32 kLockFlags = LDF_READ | LDF_VOLUMES;
 	char buffer[MAXPATHLEN];
 
 	struct DosList *dosList = IDOS->LockDosList(kLockFlags);
-
 	if (!dosList) {
 		debug(6, "IDOS->LockDOSList() failed!");
 		return myList;
 	}
 
 	dosList = IDOS->NextDosEntry(dosList, LDF_VOLUMES);
-
 	while (dosList) {
 		if (dosList->dol_Type == DLT_VOLUME &&
 			dosList->dol_Name &&
@@ -362,17 +342,21 @@ AbstractFSList AmigaOSFilesystemNode::listVolumes() const {
 			char *volName = new char [strlen(buffer) + 1];
 
 			strcpy(volName, buffer);
+
 			strcat(buffer, ":");
 
 			BPTR volumeLock = IDOS->Lock((STRPTR)buffer, SHARED_LOCK);
-
 			if (volumeLock) {
+
 				char *devName = new char [MAXPATHLEN];
 
 				// Find device name
 				IDOS->DevNameFromLock(volumeLock, devName, MAXPATHLEN, DN_DEVICEONLY);
+
 				snprintf(buffer, MAXPATHLEN, "%s (%s)", volName, devName);
+
 				delete[] devName;
+
 				AmigaOSFilesystemNode *entry = new AmigaOSFilesystemNode(volumeLock, buffer);
 				if (entry) {
 					myList.push_back(entry);
@@ -380,6 +364,7 @@ AbstractFSList AmigaOSFilesystemNode::listVolumes() const {
 
 				IDOS->UnLock(volumeLock);
 			}
+
 			delete[] volName;
 		}
 		dosList = IDOS->NextDosEntry(dosList, LDF_VOLUMES);


Commit: 8a35ceddda50a94e64cc57e60fc6262bcaa44e65
    https://github.com/scummvm/scummvm/commit/8a35ceddda50a94e64cc57e60fc6262bcaa44e65
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Add ALL switch to makedir

Changed paths:
    dists/amigaos/Ext_Inst_so.rexx


diff --git a/dists/amigaos/Ext_Inst_so.rexx b/dists/amigaos/Ext_Inst_so.rexx
index 93c148ceb0..8cfc1edca5 100644
--- a/dists/amigaos/Ext_Inst_so.rexx
+++ b/dists/amigaos/Ext_Inst_so.rexx
@@ -39,7 +39,7 @@ ELSE DO
 	Check for destination path and create it, if needed.
 	*/
 	IF ~EXISTS(install_path'sobjs/') THEN
-		ADDRESS COMMAND 'makedir 'install_path'sobjs'
+		ADDRESS COMMAND 'makedir ALL 'install_path'sobjs'
 END
 
 /*
@@ -113,7 +113,7 @@ DO WHILE i>0
 END
 
 /*
-AREXX is doing its own cleaning up of open files.
+AREXX is doing it's own cleaning up of open files.
 Close the file manually anyway.
 */
 IF ~CLOSE(SO_Read) THEN DO


Commit: 6a4adb24d388a5f974db55dba4ecd08c84238654
    https://github.com/scummvm/scummvm/commit/6a4adb24d388a5f974db55dba4ecd08c84238654
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Add switches to delete

Changed paths:
    dists/amigaos/Ext_Inst_so.rexx


diff --git a/dists/amigaos/Ext_Inst_so.rexx b/dists/amigaos/Ext_Inst_so.rexx
index 8cfc1edca5..fa204bd8ba 100644
--- a/dists/amigaos/Ext_Inst_so.rexx
+++ b/dists/amigaos/Ext_Inst_so.rexx
@@ -121,6 +121,6 @@ IF ~CLOSE(SO_Read) THEN DO
 	EXIT
 END
 
-ADDRESS COMMAND 'delete so_dump'
+ADDRESS COMMAND 'delete FORCE QUIET so_dump'
 
 EXIT


Commit: e776921a7e0567b6b5b047d4ed8e9c6f2c7d45e5
    https://github.com/scummvm/scummvm/commit/e776921a7e0567b6b5b047d4ed8e9c6f2c7d45e5
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Revert some chnages to use new install path

Changed paths:
    backends/platform/sdl/amigaos/amigaos.mk


diff --git a/backends/platform/sdl/amigaos/amigaos.mk b/backends/platform/sdl/amigaos/amigaos.mk
index fb6ee93d52..ff8ee1538a 100644
--- a/backends/platform/sdl/amigaos/amigaos.mk
+++ b/backends/platform/sdl/amigaos/amigaos.mk
@@ -5,52 +5,51 @@
 # 'mkdir' seems to incorrectly set permissions to path/dirs on AmigaOS.
 # Once a vanilla installation was created, none of the special subdirectories
 # are found/accessible (extras, themes, plugins), instead ScummVM reports
-# missing theme files and a valid translation.dat.
+# missing theme files and a mssing valid translation.dat.
 # Switching to AmigaOS' own "makedir" until there is a fix or other solution. 
 #
 amigaosdist: $(EXECUTABLE) $(PLUGINS)
-	makedir ALL FORCE $(AMIGAOSPATH)
-	makedir ALL FORCE $(AMIGAOSPATH)/extras
+	makedir all $(AMIGAOSPATH)
 	cp ${srcdir}/dists/amigaos/scummvm_drawer.info $(AMIGAOSPATH).info
 	cp ${srcdir}/dists/amigaos/scummvm.info $(AMIGAOSPATH)/$(EXECUTABLE).info
 ifdef DIST_FILES_DOCS
-	makedir ALL FORCE $(AMIGAOSPATH)/doc
 	cp -r $(srcdir)/doc/ $(AMIGAOSPATH)
-	cp $(DIST_FILES_DOCS) $(AMIGAOSPATH)/doc/
+	cp $(DIST_FILES_DOCS) $(AMIGAOSPATH)/doc
 	# Prepare README.md for AmigaGuide conversion.
 	cat ${srcdir}/README.md | sed -f ${srcdir}/dists/amigaos/convertRM.sed > README.conv
-	# AmigaOS AREXX will break with a "Program not found" error, if srcdir is
-	# '.'. Copy the script to cwd instead.
+	# AmigaOS AREXX will error with a "Program not found" message
+	# if srcdir is '.'. Copy the script to cwd instead.
 	cp ${srcdir}/dists/amigaos/RM2AG.rexx .
 	rx RM2AG.rexx README.conv $(AMIGAOSPATH)/doc/
 	rm -f README.conv
 	rm -f RM2AG.rexx
 endif
 	# Copy mandatory installation files.
+	makedir all $(AMIGAOSPATH)/extras
 ifdef DIST_FILES_ENGINEDATA
-	cp $(DIST_FILES_ENGINEDATA) $(AMIGAOSPATH)/extras/
+	cp $(DIST_FILES_ENGINEDATA) $(AMIGAOSPATH)/extras
 endif
 ifdef DIST_FILES_NETWORKING
-	cp $(DIST_FILES_NETWORKING) $(AMIGAOSPATH)/extras/
+	cp $(DIST_FILES_NETWORKING) $(AMIGAOSPATH)/extras
 endif
 ifdef DIST_FILES_VKEYBD
-	cp $(DIST_FILES_VKEYBD) $(AMIGAOSPATH)/extras/
+	cp $(DIST_FILES_VKEYBD) $(AMIGAOSPATH)/extras
 endif
 ifdef DIST_FILES_THEMES
-	makedir ALL FORCE $(AMIGAOSPATH)/themes
-	cp $(DIST_FILES_THEMES) $(AMIGAOSPATH)/themes/
+	makedir all $(AMIGAOSPATH)/themes
+	cp $(DIST_FILES_THEMES) $(AMIGAOSPATH)/themes
 endif
 	# Strip and copy engine plugins.
 ifdef DYNAMIC_MODULES
-	makedir ALL FORCE $(AMIGAOSPATH)/plugins
+	makedir all $(AMIGAOSPATH)/plugins
 	$(foreach plugin, $(PLUGINS), $(STRIP) $(plugin) -o $(AMIGAOSPATH)/$(plugin);)
-	# Shared objects on AmigaOS change. To avoid conflicts with old or
-	# outdated .so's, always remove and install them completely.
+	# Shared objects get updates. To avoid conflicts with obsolete
+	# or outdated .so's, always remove and install them completely.
 	rm -rf $(AMIGAOSPATH)/sobjs
-	makedir ALL FORCE $(AMIGAOSPATH)/sobjs
+	makedir all $(AMIGAOSPATH)/sobjs
 	# Extract and install compiled-in shared libraries.
-	# Not every AmigaOS installation, especially vanilla ones, have
-	# every mandatory shared library installed in the correct place.
+	# Not every AmigaOS install, especially vanilla ones, will have
+	# every mandatory shared library, in the correct place, available.
 	cp ${srcdir}/dists/amigaos/Ext_Inst_so.rexx .
 	rx Ext_Inst_so.rexx $(EXECUTABLE) $(AMIGAOSPATH)
 	rm -f Ext_Inst_so.rexx


Commit: 13d5b6660e3c32eeef511f9ade34e4ca82107093
    https://github.com/scummvm/scummvm/commit/13d5b6660e3c32eeef511f9ade34e4ca82107093
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: More changes

Changed paths:
    dists/amigaos/Ext_Inst_so.rexx


diff --git a/dists/amigaos/Ext_Inst_so.rexx b/dists/amigaos/Ext_Inst_so.rexx
index fa204bd8ba..945121e7e9 100644
--- a/dists/amigaos/Ext_Inst_so.rexx
+++ b/dists/amigaos/Ext_Inst_so.rexx
@@ -1,5 +1,5 @@
 /*
-$VER: Ext_Inst_so.rexx 0.6 (19.04.2021) Extract and install compiled-in shared libraries from a given ELF binary.
+$VER: Ext_Inst_so.rexx 0.5 (05.12.2020) Extract and install compiled-in shared libraries from a given ELF binary.
 */
 
 PARSE ARG executable install_path
@@ -25,7 +25,7 @@ IF ~EXISTS(executable) THEN DO
 END
 ELSE DO
 	executable=STRIP(executable)
-	executable=STRIP(executable,'B','"')
+	executable=COMPRESS(executable,'"')
 END
 IF installpath='' THEN DO
 	SAY 'No installation destination given!'
@@ -34,12 +34,12 @@ END
 ELSE DO
 	install_path=STRIP(install_path)
 	install_path=STRIP(install_path,'T','/')
-	install_path=STRIP(install_path,'B','"')
+	install_path=COMPRESS(install_path,'"')
 	/*
 	Check for destination path and create it, if needed.
 	*/
-	IF ~EXISTS(install_path'sobjs/') THEN
-		ADDRESS COMMAND 'makedir ALL 'install_path'sobjs'
+	IF ~EXISTS(install_path'/sobjs/') THEN
+		ADDRESS COMMAND 'makedir 'install_path'/sobjs'
 END
 
 /*
@@ -91,13 +91,13 @@ DO WHILE i>0
 		  determine which to use the correct path.
 		*/
 		IF EXISTS('SDK:local/newlib/lib/'lib.so) THEN
-			ADDRESS COMMAND 'copy clone SDK:local/newlib/lib/'lib.so install_path'sobjs/'
+			ADDRESS COMMAND 'copy clone SDK:local/newlib/lib/'lib.so install_path'/sobjs/'
 		ELSE DO
 			IF EXISTS('SDK:gcc/lib/'lib.so) THEN
-				ADDRESS COMMAND 'copy clone SDK:gcc/lib/'lib.so install_path'sobjs/'
+				ADDRESS COMMAND 'copy clone SDK:gcc/lib/'lib.so install_path'/sobjs/'
 			ELSE DO
 				IF EXISTS('SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so) THEN
-					ADDRESS COMMAND 'copy clone SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'sobjs/'
+					ADDRESS COMMAND 'copy clone SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'/sobjs/'
 				ELSE DO
 					/*
 					If a shared library is not found, abort.
@@ -113,7 +113,7 @@ DO WHILE i>0
 END
 
 /*
-AREXX is doing it's own cleaning up of open files.
+AREXX is doing its own cleaning up of open files.
 Close the file manually anyway.
 */
 IF ~CLOSE(SO_Read) THEN DO
@@ -121,6 +121,6 @@ IF ~CLOSE(SO_Read) THEN DO
 	EXIT
 END
 
-ADDRESS COMMAND 'delete FORCE QUIET so_dump'
+ADDRESS COMMAND 'delete so_dump'
 
 EXIT


Commit: ae9ad5b18793dd867db8bc56abb4508280cca86e
    https://github.com/scummvm/scummvm/commit/ae9ad5b18793dd867db8bc56abb4508280cca86e
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Revert MorphOS change (taken care in another PR)

Changed paths:
    backends/fs/morphos/morphos-fs.cpp


diff --git a/backends/fs/morphos/morphos-fs.cpp b/backends/fs/morphos/morphos-fs.cpp
index 3a2d4e3e00..a15f5fc30e 100644
--- a/backends/fs/morphos/morphos-fs.cpp
+++ b/backends/fs/morphos/morphos-fs.cpp
@@ -358,7 +358,7 @@ Common::WriteStream *MorphOSFilesystemNode::createWriteStream() {
 }
 
 bool MorphOSFilesystemNode::createDirectory() {
-	warning("MorphOSFilesystemNode::createDirectory(): Not supported");
+	warning("AmigaOSFilesystemNode::createDirectory(): Not supported");
 	return _bIsValid && _bIsDirectory;
 }
 


Commit: 3c498b4a3542376c7fac3bdee34395ba6ebf0c92
    https://github.com/scummvm/scummvm/commit/3c498b4a3542376c7fac3bdee34395ba6ebf0c92
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Revert install assign to install subdirectory

Changed paths:
    configure


diff --git a/configure b/configure
index 1c429ace70..66d2325fe8 100755
--- a/configure
+++ b/configure
@@ -230,7 +230,7 @@ _dwp=dwp
 _windres=windres
 _stagingpath="staging"
 _win32path="c:/scummvm"
-_amigaospath="ScummVM:"
+_amigaospath="install"
 _morphospath="PROGDIR:"
 _staticlibpath=
 _xcodetoolspath=


Commit: 37ef6b420400b424a6fb9083819c2385f16f404c
    https://github.com/scummvm/scummvm/commit/37ef6b420400b424a6fb9083819c2385f16f404c
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Typo in comment

Changed paths:
    backends/platform/sdl/amigaos/amigaos.mk


diff --git a/backends/platform/sdl/amigaos/amigaos.mk b/backends/platform/sdl/amigaos/amigaos.mk
index ff8ee1538a..6696249a6b 100644
--- a/backends/platform/sdl/amigaos/amigaos.mk
+++ b/backends/platform/sdl/amigaos/amigaos.mk
@@ -5,7 +5,7 @@
 # 'mkdir' seems to incorrectly set permissions to path/dirs on AmigaOS.
 # Once a vanilla installation was created, none of the special subdirectories
 # are found/accessible (extras, themes, plugins), instead ScummVM reports
-# missing theme files and a mssing valid translation.dat.
+# missing theme files and a missing valid translation.dat.
 # Switching to AmigaOS' own "makedir" until there is a fix or other solution. 
 #
 amigaosdist: $(EXECUTABLE) $(PLUGINS)


Commit: 0cd93d8113dd456dfbb59ae0c8973047a890e6a1
    https://github.com/scummvm/scummvm/commit/0cd93d8113dd456dfbb59ae0c8973047a890e6a1
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Update commands

Changed paths:
    dists/amigaos/Ext_Inst_so.rexx


diff --git a/dists/amigaos/Ext_Inst_so.rexx b/dists/amigaos/Ext_Inst_so.rexx
index 945121e7e9..6763269d86 100644
--- a/dists/amigaos/Ext_Inst_so.rexx
+++ b/dists/amigaos/Ext_Inst_so.rexx
@@ -39,7 +39,7 @@ ELSE DO
 	Check for destination path and create it, if needed.
 	*/
 	IF ~EXISTS(install_path'/sobjs/') THEN
-		ADDRESS COMMAND 'makedir 'install_path'/sobjs'
+		ADDRESS COMMAND 'makedir all 'install_path'/sobjs'
 END
 
 /*
@@ -91,13 +91,13 @@ DO WHILE i>0
 		  determine which to use the correct path.
 		*/
 		IF EXISTS('SDK:local/newlib/lib/'lib.so) THEN
-			ADDRESS COMMAND 'copy clone SDK:local/newlib/lib/'lib.so install_path'/sobjs/'
+			ADDRESS COMMAND 'copy clone quiet SDK:local/newlib/lib/'lib.so install_path'/sobjs/'
 		ELSE DO
 			IF EXISTS('SDK:gcc/lib/'lib.so) THEN
-				ADDRESS COMMAND 'copy clone SDK:gcc/lib/'lib.so install_path'/sobjs/'
+				ADDRESS COMMAND 'copy clone quiet SDK:gcc/lib/'lib.so install_path'/sobjs/'
 			ELSE DO
 				IF EXISTS('SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so) THEN
-					ADDRESS COMMAND 'copy clone SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'/sobjs/'
+					ADDRESS COMMAND 'copy clone quiet SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'/sobjs/'
 				ELSE DO
 					/*
 					If a shared library is not found, abort.
@@ -121,6 +121,6 @@ IF ~CLOSE(SO_Read) THEN DO
 	EXIT
 END
 
-ADDRESS COMMAND 'delete so_dump'
+ADDRESS COMMAND 'delete force quiet so_dump'
 
 EXIT


Commit: 213232ea856510e77bbaded251ff1c38af2a05a5
    https://github.com/scummvm/scummvm/commit/213232ea856510e77bbaded251ff1c38af2a05a5
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Update commands

Changed paths:
    dists/amigaos/RM2AG.rexx


diff --git a/dists/amigaos/RM2AG.rexx b/dists/amigaos/RM2AG.rexx
index 9b4e2ce90c..d41789d348 100644
--- a/dists/amigaos/RM2AG.rexx
+++ b/dists/amigaos/RM2AG.rexx
@@ -41,7 +41,7 @@ ELSE DO
 	Check for destination path and create it, if needed.
 	*/
 	IF ~EXISTS(install_path'/') THEN
-		ADDRESS COMMAND 'makedir ALL 'install_path
+		ADDRESS COMMAND 'makedir all 'install_path
 END
 
 IF ~OPEN(check_readme,readme_md,'R') THEN DO
@@ -307,7 +307,7 @@ END
 /*
 Install finished README.guide to installation path and delete it on closure.
 */
-ADDRESS COMMAND 'copy CLONE QUIET README.guide 'install_path
-ADDRESS COMMAND 'delete FORCE QUIET README.guide'
+ADDRESS COMMAND 'copy clone quiet README.guide 'install_path
+ADDRESS COMMAND 'delete force quiet README.guide'
 
 EXIT


Commit: c889a126b8e3d34df24f33f0a62bea876640be27
    https://github.com/scummvm/scummvm/commit/c889a126b8e3d34df24f33f0a62bea876640be27
Author: Hubert Maier (raziel- at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Janitorial

Changed paths:
    dists/amigaos/RM2AG.rexx.in


diff --git a/dists/amigaos/RM2AG.rexx.in b/dists/amigaos/RM2AG.rexx.in
index 301fe98720..a5f5d537b3 100644
--- a/dists/amigaos/RM2AG.rexx.in
+++ b/dists/amigaos/RM2AG.rexx.in
@@ -41,7 +41,7 @@ ELSE DO
 	Check for destination path and create it, if needed.
 	*/
 	IF ~EXISTS(install_path'/') THEN
-		ADDRESS COMMAND 'makedir ALL 'install_path
+		ADDRESS COMMAND 'makedir all 'install_path
 END
 
 IF ~OPEN(check_readme,readme_md,'R') THEN DO
@@ -307,7 +307,7 @@ END
 /*
 Install finished README.guide to installation path and delete it on closure.
 */
-ADDRESS COMMAND 'copy CLONE QUIET README.guide 'install_path
-ADDRESS COMMAND 'delete FORCE QUIET README.guide'
+ADDRESS COMMAND 'copy clone quiet README.guide 'install_path
+ADDRESS COMMAND 'delete force quiet README.guide'
 
 EXIT


Commit: 993779259f4cca0d841d5de8b7b4b18f5b7bfd72
    https://github.com/scummvm/scummvm/commit/993779259f4cca0d841d5de8b7b4b18f5b7bfd72
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS: Strip trailing / to ensure .info file is placed beside folder

Changed paths:
    backends/platform/sdl/amigaos/amigaos.mk


diff --git a/backends/platform/sdl/amigaos/amigaos.mk b/backends/platform/sdl/amigaos/amigaos.mk
index 6696249a6b..8c96f07407 100644
--- a/backends/platform/sdl/amigaos/amigaos.mk
+++ b/backends/platform/sdl/amigaos/amigaos.mk
@@ -10,7 +10,7 @@
 #
 amigaosdist: $(EXECUTABLE) $(PLUGINS)
 	makedir all $(AMIGAOSPATH)
-	cp ${srcdir}/dists/amigaos/scummvm_drawer.info $(AMIGAOSPATH).info
+	cp ${srcdir}/dists/amigaos/scummvm_drawer.info $(patsubst %/,%,$(AMIGAOSPATH)).info
 	cp ${srcdir}/dists/amigaos/scummvm.info $(AMIGAOSPATH)/$(EXECUTABLE).info
 ifdef DIST_FILES_DOCS
 	cp -r $(srcdir)/doc/ $(AMIGAOSPATH)


Commit: 7c9a1fa9f3f0e21757cfb7822baac5a31861a2d9
    https://github.com/scummvm/scummvm/commit/7c9a1fa9f3f0e21757cfb7822baac5a31861a2d9
Author: Le Philousophe (lephilousophe at users.noreply.github.com)
Date: 2021-05-01T18:03:13+02:00

Commit Message:
AMIGAOS4: Add support for dynamic linking (and plugins)

Changed paths:
    configure
    dists/amigaos/Ext_Inst_so.rexx


diff --git a/configure b/configure
index 66d2325fe8..95927e3749 100755
--- a/configure
+++ b/configure
@@ -3472,20 +3472,12 @@ if test -n "$_host"; then
 			# PPC Linker requires this to fix relocation errors
 			append_var CXXFLAGS "-mlongcall"
 
-			# Only static builds link successfully on buildbot
-			LDFLAGS=`echo $LDFLAGS | sed 's/-use-dynld//'`
-			append_var LDFLAGS "-static"
-
 			_port_mk="backends/platform/sdl/amigaos/amigaos.mk"
 			;;
 		ppc-morphos)
 			# PPC Linker requires this to fix relocation errors
 			append_var CXXFLAGS "-mlongcall"
 
-			# Only static builds link successfully on buildbot
-			LDFLAGS=`echo $LDFLAGS | sed 's/-use-dynld//'`
-			append_var LDFLAGS "-static"
-
 			_port_mk="backends/platform/sdl/morphos/morphos.mk"
 			;;
 		ps3)
diff --git a/dists/amigaos/Ext_Inst_so.rexx b/dists/amigaos/Ext_Inst_so.rexx
index 6763269d86..93d3e0658f 100644
--- a/dists/amigaos/Ext_Inst_so.rexx
+++ b/dists/amigaos/Ext_Inst_so.rexx
@@ -4,6 +4,11 @@ $VER: Ext_Inst_so.rexx 0.5 (05.12.2020) Extract and install compiled-in shared l
 
 PARSE ARG executable install_path
 
+/*
+Determine REXX interpreter
+*/
+PARSE UPPER VERSION language .
+
 /*
 Check if arguments are available, otherwise quit.
 */
@@ -74,7 +79,33 @@ working_line=CALL READLN(SO_read)
 working_line=CALL READLN(SO_read)
 
 i=1
+libpaths.i = 'SDK:local/newlib/lib/'
+i=i+1
+libpaths.i = 'SDK:gcc/lib/'
+i=i+1
+libpaths.i = 'SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'
+i=i+1
 
+/*
+VALUE(arg,, 'ENVIRONMENT') is a Regina REXX extension
+*/
+IF POS('REGINA', language) ~= 0 THEN DO
+	prefix = VALUE('PREFIX',, 'ENVIRONMENT')
+	IF prefix <> '' THEN DO
+		libpaths.i = prefix'/lib/'
+		i=i+1
+	END
+	prefix = VALUE('CROSS_PREFIX',, 'ENVIRONMENT')
+	IF prefix ~= '' THEN DO
+		libpaths.i = prefix'/lib/gcc/ppc-amigaos/'gcc_version'/'
+		i=i+1
+		libpaths.i = prefix'/ppc-amigaos/lib/'
+		i=i+1
+	END
+END
+libpaths.0 = i - 1
+
+i=1
 DO WHILE i>0
 	working_line=READLN(SO_read)
 	IF POS('Shared library:', working_line)>0 THEN DO
@@ -90,23 +121,19 @@ DO WHILE i>0
 		  by default. Since people can use different gcc versions we have
 		  determine which to use the correct path.
 		*/
-		IF EXISTS('SDK:local/newlib/lib/'lib.so) THEN
-			ADDRESS COMMAND 'copy clone quiet SDK:local/newlib/lib/'lib.so install_path'/sobjs/'
-		ELSE DO
-			IF EXISTS('SDK:gcc/lib/'lib.so) THEN
-				ADDRESS COMMAND 'copy clone quiet SDK:gcc/lib/'lib.so install_path'/sobjs/'
-			ELSE DO
-				IF EXISTS('SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so) THEN
-					ADDRESS COMMAND 'copy clone quiet SDK:gcc/lib/gcc/ppc-amigaos/'gcc_version'/'lib.so install_path'/sobjs/'
-				ELSE DO
-					/*
-					If a shared library is not found, abort.
-					*/
-					SAY lib.so' not found! Aborting!'
-					EXIT
-				END
+		DO j = 1 TO libpaths.0
+			IF EXISTS(libpaths.j''lib.so) THEN DO
+				ADDRESS COMMAND 'copy clone quiet' libpaths.j''lib.so install_path'/sobjs/'
+				LEAVE
 			END
 		END
+		IF j > libpaths.0 THEN DO
+			/*
+			If a shared library is not found, abort.
+			*/
+			SAY lib.so' not found! Aborting!'
+			EXIT
+		END
 	END
 	ELSE
 		i=0




More information about the Scummvm-git-logs mailing list