summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPatric Stout <truebrain@openttd.org>2019-03-04 19:21:13 +0100
committerPatric Stout <truebrain@openttd.org>2019-03-05 22:03:00 +0100
commit7784d7771362f98145f17c469430e0f3e3b207b5 (patch)
tree30495b40f91078d62b4ef5b4f4c0d180cb569a19 /src
parentdb49efe29afe92cac12184f5562ebc8e4a6795fa (diff)
downloadopenttd-7784d7771362f98145f17c469430e0f3e3b207b5.tar.xz
Remove: MorphOS / AmigaOS support
In 10 years there is no commit to change how MorphOS works, and we have no active maintainer for it. It is unlikely it works in its current state (but not impossible). With the arrival of SDL2 (and removal of SDL), MorphOS is no longer support. There is an SDL2 port for MorphOS, but it is not maintained by upstream SDL2, and nobody can currently test it out. If anyone wants to re-add MorphOS, please do (revert this patch, fix the problems, and create a Pull Request). If you need any help doing so, let us know! It is not that we don't like MorphOS, it is that we don't have anyone fixing the problems :(
Diffstat (limited to 'src')
-rw-r--r--src/core/geometry_type.hpp5
-rw-r--r--src/dedicated.cpp4
-rw-r--r--src/fileio.cpp20
-rw-r--r--src/fios.cpp21
-rw-r--r--src/intro_gui.cpp4
-rw-r--r--src/lang/afrikaans.txt2
-rw-r--r--src/lang/arabic_egypt.txt2
-rw-r--r--src/lang/basque.txt2
-rw-r--r--src/lang/belarusian.txt2
-rw-r--r--src/lang/brazilian_portuguese.txt2
-rw-r--r--src/lang/bulgarian.txt2
-rw-r--r--src/lang/catalan.txt2
-rw-r--r--src/lang/croatian.txt2
-rw-r--r--src/lang/czech.txt2
-rw-r--r--src/lang/danish.txt2
-rw-r--r--src/lang/dutch.txt2
-rw-r--r--src/lang/english.txt2
-rw-r--r--src/lang/english_AU.txt2
-rw-r--r--src/lang/english_US.txt2
-rw-r--r--src/lang/esperanto.txt2
-rw-r--r--src/lang/estonian.txt2
-rw-r--r--src/lang/faroese.txt2
-rw-r--r--src/lang/finnish.txt2
-rw-r--r--src/lang/french.txt2
-rw-r--r--src/lang/gaelic.txt2
-rw-r--r--src/lang/galician.txt2
-rw-r--r--src/lang/german.txt2
-rw-r--r--src/lang/greek.txt2
-rw-r--r--src/lang/hebrew.txt2
-rw-r--r--src/lang/hungarian.txt2
-rw-r--r--src/lang/icelandic.txt2
-rw-r--r--src/lang/indonesian.txt2
-rw-r--r--src/lang/irish.txt2
-rw-r--r--src/lang/italian.txt2
-rw-r--r--src/lang/japanese.txt2
-rw-r--r--src/lang/korean.txt2
-rw-r--r--src/lang/latin.txt2
-rw-r--r--src/lang/latvian.txt2
-rw-r--r--src/lang/lithuanian.txt2
-rw-r--r--src/lang/luxembourgish.txt2
-rw-r--r--src/lang/malay.txt2
-rw-r--r--src/lang/norwegian_bokmal.txt2
-rw-r--r--src/lang/norwegian_nynorsk.txt2
-rw-r--r--src/lang/polish.txt2
-rw-r--r--src/lang/portuguese.txt2
-rw-r--r--src/lang/romanian.txt2
-rw-r--r--src/lang/russian.txt2
-rw-r--r--src/lang/serbian.txt2
-rw-r--r--src/lang/simplified_chinese.txt2
-rw-r--r--src/lang/slovak.txt2
-rw-r--r--src/lang/slovenian.txt2
-rw-r--r--src/lang/spanish.txt2
-rw-r--r--src/lang/spanish_MX.txt2
-rw-r--r--src/lang/swedish.txt2
-rw-r--r--src/lang/tamil.txt2
-rw-r--r--src/lang/thai.txt2
-rw-r--r--src/lang/traditional_chinese.txt2
-rw-r--r--src/lang/turkish.txt2
-rw-r--r--src/lang/ukrainian.txt2
-rw-r--r--src/lang/unfinished/chuvash.txt2
-rw-r--r--src/lang/unfinished/frisian.txt2
-rw-r--r--src/lang/unfinished/macedonian.txt2
-rw-r--r--src/lang/unfinished/persian.txt2
-rw-r--r--src/lang/unfinished/urdu.txt2
-rw-r--r--src/lang/vietnamese.txt2
-rw-r--r--src/lang/welsh.txt2
-rw-r--r--src/network/core/core.cpp47
-rw-r--r--src/network/core/os_abstraction.h41
-rw-r--r--src/network/core/tcp.cpp4
-rw-r--r--src/network/core/tcp_http.cpp4
-rw-r--r--src/network/core/tcp_listen.h4
-rw-r--r--src/openttd.cpp8
-rw-r--r--src/os/unix/unix.cpp54
-rw-r--r--src/rev.cpp.in7
-rw-r--r--src/settingsgen/settingsgen.cpp7
-rw-r--r--src/stdafx.h34
-rw-r--r--src/strgen/strgen.cpp7
-rw-r--r--src/thread/thread_morphos.cpp197
-rw-r--r--src/video/sdl_v.cpp2
79 files changed, 18 insertions, 574 deletions
diff --git a/src/core/geometry_type.hpp b/src/core/geometry_type.hpp
index 2bd8ffbad..d1f363127 100644
--- a/src/core/geometry_type.hpp
+++ b/src/core/geometry_type.hpp
@@ -12,11 +12,6 @@
#ifndef GEOMETRY_TYPE_HPP
#define GEOMETRY_TYPE_HPP
-#if defined(__AMIGA__)
- /* AmigaOS already has a Point declared */
- #define Point OTTD_Point
-#endif /* __AMIGA__ */
-
#if defined(__APPLE__)
/* Mac OS X already has both Rect and Point declared */
#define Rect OTTD_Rect
diff --git a/src/dedicated.cpp b/src/dedicated.cpp
index ce383ee4a..e80abab16 100644
--- a/src/dedicated.cpp
+++ b/src/dedicated.cpp
@@ -16,7 +16,7 @@
char *_log_file = NULL; ///< File to reroute output of a forked OpenTTD to
FILE *_log_fd = NULL; ///< File to reroute output of a forked OpenTTD to
-#if defined(UNIX) && !defined(__MORPHOS__)
+#if defined(UNIX)
#include <unistd.h>
@@ -71,7 +71,7 @@ void DedicatedFork()
#else
-/** Empty helper function call for NOT(UNIX and not MORPHOS) systems */
+/** Empty helper function call for NOT(UNIX) systems */
void DedicatedFork() {}
#endif /* ENABLE_NETWORK */
diff --git a/src/fileio.cpp b/src/fileio.cpp
index 0e6d86e3c..c93d3b3df 100644
--- a/src/fileio.cpp
+++ b/src/fileio.cpp
@@ -539,16 +539,6 @@ void FioCreateDirectory(const char *name)
CreateDirectory(OTTD2FS(name), NULL);
#elif defined(OS2) && !defined(__INNOTEK_LIBC__)
mkdir(OTTD2FS(name));
-#elif defined(__MORPHOS__) || defined(__AMIGAOS__)
- char buf[MAX_PATH];
- strecpy(buf, name, lastof(buf));
-
- size_t len = strlen(name) - 1;
- if (buf[len] == '/') {
- buf[len] = '\0'; // Kill pathsep, so mkdir() will not fail
- }
-
- mkdir(OTTD2FS(buf), 0755);
#else
mkdir(OTTD2FS(name), 0755);
#endif
@@ -1066,7 +1056,7 @@ void DetermineBasePaths(const char *exe)
AppendPathSeparator(tmp, lastof(tmp));
_searchpaths[SP_PERSONAL_DIR_XDG] = stredup(tmp);
#endif
-#if defined(__MORPHOS__) || defined(__AMIGA__) || defined(DOS) || defined(OS2) || !defined(WITH_PERSONAL_DIR)
+#if defined(DOS) || defined(OS2) || !defined(WITH_PERSONAL_DIR)
_searchpaths[SP_PERSONAL_DIR] = NULL;
#else
#ifdef __HAIKU__
@@ -1109,13 +1099,9 @@ void DetermineBasePaths(const char *exe)
_searchpaths[SP_SHARED_DIR] = NULL;
#endif
-#if defined(__MORPHOS__) || defined(__AMIGA__)
- _searchpaths[SP_WORKING_DIR] = NULL;
-#else
if (getcwd(tmp, MAX_PATH) == NULL) *tmp = '\0';
AppendPathSeparator(tmp, lastof(tmp));
_searchpaths[SP_WORKING_DIR] = stredup(tmp);
-#endif
_do_scan_working_directory = DoScanWorkingDirectory();
@@ -1135,7 +1121,7 @@ void DetermineBasePaths(const char *exe)
}
}
-#if defined(__MORPHOS__) || defined(__AMIGA__) || defined(DOS) || defined(OS2)
+#if defined(DOS) || defined(OS2)
_searchpaths[SP_INSTALLATION_DIR] = NULL;
#else
seprintf(tmp, lastof(tmp), "%s", GLOBAL_DATA_DIR);
@@ -1239,7 +1225,7 @@ void DeterminePaths(const char *exe)
}
/* Make the necessary folders */
-#if !defined(__MORPHOS__) && !defined(__AMIGA__) && defined(WITH_PERSONAL_DIR)
+#if defined(WITH_PERSONAL_DIR)
FioCreateDirectory(config_dir);
if (config_dir != _personal_dir) FioCreateDirectory(_personal_dir);
#endif
diff --git a/src/fios.cpp b/src/fios.cpp
index 73365ddc2..aef3a8407 100644
--- a/src/fios.cpp
+++ b/src/fios.cpp
@@ -162,7 +162,7 @@ const char *FiosBrowseTo(const FiosItem *item)
break;
case FIOS_TYPE_PARENT: {
- /* Check for possible NULL ptr (not required for UNIXes, but AmigaOS-alikes) */
+ /* Check for possible NULL ptr */
char *s = strrchr(_fios_path, PATHSEPCHAR);
if (s != NULL && s != _fios_path) {
s[0] = '\0'; // Remove last path separator character, so we can go up one level.
@@ -170,11 +170,6 @@ const char *FiosBrowseTo(const FiosItem *item)
s = strrchr(_fios_path, PATHSEPCHAR);
if (s != NULL) {
s[1] = '\0'; // go up a directory
-#if defined(__MORPHOS__) || defined(__AMIGAOS__)
- /* On MorphOS or AmigaOS paths look like: "Volume:directory/subdirectory" */
- } else if ((s = strrchr(_fios_path, ':')) != NULL) {
- s[1] = '\0';
-#endif
}
break;
}
@@ -215,21 +210,7 @@ static void FiosMakeFilename(char *buf, const char *path, const char *name, cons
/* Don't append the extension if it is already there */
period = strrchr(name, '.');
if (period != NULL && strcasecmp(period, ext) == 0) ext = "";
-#if defined(__MORPHOS__) || defined(__AMIGAOS__)
- if (path != NULL) {
- unsigned char sepchar = path[(strlen(path) - 1)];
-
- if (sepchar != ':' && sepchar != '/') {
- seprintf(buf, last, "%s" PATHSEP "%s%s", path, name, ext);
- } else {
- seprintf(buf, last, "%s%s%s", path, name, ext);
- }
- } else {
- seprintf(buf, last, "%s%s", name, ext);
- }
-#else
seprintf(buf, last, "%s" PATHSEP "%s%s", path, name, ext);
-#endif
}
/**
diff --git a/src/intro_gui.cpp b/src/intro_gui.cpp
index 3659b033c..3541050ac 100644
--- a/src/intro_gui.cpp
+++ b/src/intro_gui.cpp
@@ -297,10 +297,6 @@ void AskExitGame()
SetDParam(0, STR_OSNAME_BEOS);
#elif defined(__HAIKU__)
SetDParam(0, STR_OSNAME_HAIKU);
-#elif defined(__MORPHOS__)
- SetDParam(0, STR_OSNAME_MORPHOS);
-#elif defined(__AMIGA__)
- SetDParam(0, STR_OSNAME_AMIGAOS);
#elif defined(__OS2__)
SetDParam(0, STR_OSNAME_OS2);
#elif defined(SUNOS)
diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt
index 3fd6ff7da..01329000b 100644
--- a/src/lang/afrikaans.txt
+++ b/src/lang/afrikaans.txt
@@ -1773,8 +1773,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt
index 2f658115c..d17ed9518 100644
--- a/src/lang/arabic_egypt.txt
+++ b/src/lang/arabic_egypt.txt
@@ -1445,8 +1445,6 @@ STR_OSNAME_UNIX :يونكس
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :بي او اس
STR_OSNAME_HAIKU :هايكو
-STR_OSNAME_MORPHOS :مورف او اس
-STR_OSNAME_AMIGAOS :اميقا
STR_OSNAME_OS2 :او اس/2
STR_OSNAME_SUNOS :صن
diff --git a/src/lang/basque.txt b/src/lang/basque.txt
index e5ea6a873..5ffac53a3 100644
--- a/src/lang/basque.txt
+++ b/src/lang/basque.txt
@@ -1685,8 +1685,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt
index 5560ef785..c5bf66d02 100644
--- a/src/lang/belarusian.txt
+++ b/src/lang/belarusian.txt
@@ -2098,8 +2098,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt
index 660e9caa7..976501921 100644
--- a/src/lang/brazilian_portuguese.txt
+++ b/src/lang/brazilian_portuguese.txt
@@ -1789,8 +1789,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt
index 50229f6d0..36af6ab17 100644
--- a/src/lang/bulgarian.txt
+++ b/src/lang/bulgarian.txt
@@ -1721,8 +1721,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt
index ab49e700a..a2b4a71c3 100644
--- a/src/lang/catalan.txt
+++ b/src/lang/catalan.txt
@@ -1800,8 +1800,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt
index b8de836fa..3087dd177 100644
--- a/src/lang/croatian.txt
+++ b/src/lang/croatian.txt
@@ -1895,8 +1895,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/czech.txt b/src/lang/czech.txt
index 2e622b142..7ebbff602 100644
--- a/src/lang/czech.txt
+++ b/src/lang/czech.txt
@@ -1867,8 +1867,6 @@ STR_OSNAME_UNIX :Unixu
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/danish.txt b/src/lang/danish.txt
index d10763b59..63826ba4b 100644
--- a/src/lang/danish.txt
+++ b/src/lang/danish.txt
@@ -1799,8 +1799,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt
index 44e6ab104..23a9eb3b5 100644
--- a/src/lang/dutch.txt
+++ b/src/lang/dutch.txt
@@ -1799,8 +1799,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/english.txt b/src/lang/english.txt
index 78b49280e..2a5487588 100644
--- a/src/lang/english.txt
+++ b/src/lang/english.txt
@@ -1803,8 +1803,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt
index 4ca2bf1b5..44f4221f4 100644
--- a/src/lang/english_AU.txt
+++ b/src/lang/english_AU.txt
@@ -1749,8 +1749,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt
index 4928025ab..5a0aeef43 100644
--- a/src/lang/english_US.txt
+++ b/src/lang/english_US.txt
@@ -1803,8 +1803,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt
index c82ca0552..4d0a637fa 100644
--- a/src/lang/esperanto.txt
+++ b/src/lang/esperanto.txt
@@ -1432,8 +1432,6 @@ STR_OSNAME_UNIX :Unikso
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt
index 458c9e9e1..a85cc51ba 100644
--- a/src/lang/estonian.txt
+++ b/src/lang/estonian.txt
@@ -1833,8 +1833,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt
index b738ba9bb..bfa670628 100644
--- a/src/lang/faroese.txt
+++ b/src/lang/faroese.txt
@@ -1596,8 +1596,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt
index 4db5d8fd9..f7196613c 100644
--- a/src/lang/finnish.txt
+++ b/src/lang/finnish.txt
@@ -1803,8 +1803,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/french.txt b/src/lang/french.txt
index b93f94e9e..3a2a7bb3e 100644
--- a/src/lang/french.txt
+++ b/src/lang/french.txt
@@ -1800,8 +1800,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt
index f2096687f..2f465fe0c 100644
--- a/src/lang/gaelic.txt
+++ b/src/lang/gaelic.txt
@@ -1983,8 +1983,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/galician.txt b/src/lang/galician.txt
index f301e71f1..3bfe8b6d7 100644
--- a/src/lang/galician.txt
+++ b/src/lang/galician.txt
@@ -1776,8 +1776,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/german.txt b/src/lang/german.txt
index 7bdc25f3e..379d4ef98 100644
--- a/src/lang/german.txt
+++ b/src/lang/german.txt
@@ -1794,8 +1794,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/greek.txt b/src/lang/greek.txt
index b61abc44a..72bc7de0e 100644
--- a/src/lang/greek.txt
+++ b/src/lang/greek.txt
@@ -1896,8 +1896,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt
index 05fb5fe1d..7523369e2 100644
--- a/src/lang/hebrew.txt
+++ b/src/lang/hebrew.txt
@@ -1798,8 +1798,6 @@ STR_OSNAME_UNIX :יוניקס
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :מערכת הפעלה בי
STR_OSNAME_HAIKU :הייקו
-STR_OSNAME_MORPHOS :מערכת הפעלה מורפ
-STR_OSNAME_AMIGAOS :מערכת הפעלה אניגמה
STR_OSNAME_OS2 :מערכת הפעלה או.אס שתיים
STR_OSNAME_SUNOS :סולריס
diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt
index 820e6f1a1..93a80acc6 100644
--- a/src/lang/hungarian.txt
+++ b/src/lang/hungarian.txt
@@ -1863,8 +1863,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt
index 44f3b4059..49705f02d 100644
--- a/src/lang/icelandic.txt
+++ b/src/lang/icelandic.txt
@@ -1637,8 +1637,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt
index fe1991d83..8f1f6a447 100644
--- a/src/lang/indonesian.txt
+++ b/src/lang/indonesian.txt
@@ -1782,8 +1782,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/irish.txt b/src/lang/irish.txt
index 73a86c940..6a2bcd9c2 100644
--- a/src/lang/irish.txt
+++ b/src/lang/irish.txt
@@ -1772,8 +1772,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/italian.txt b/src/lang/italian.txt
index 2988dc1de..a0d6c3416 100644
--- a/src/lang/italian.txt
+++ b/src/lang/italian.txt
@@ -1823,8 +1823,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt
index d9291ebcd..212630206 100644
--- a/src/lang/japanese.txt
+++ b/src/lang/japanese.txt
@@ -1772,8 +1772,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/korean.txt b/src/lang/korean.txt
index 7deed04c2..cdd469aa1 100644
--- a/src/lang/korean.txt
+++ b/src/lang/korean.txt
@@ -1800,8 +1800,6 @@ STR_OSNAME_UNIX :{G=f}Unix
STR_OSNAME_OSX :{G=f}OS{NBSP}X
STR_OSNAME_BEOS :{G=f}BeOS
STR_OSNAME_HAIKU :{G=f}Haiku
-STR_OSNAME_MORPHOS :{G=f}MorphOS
-STR_OSNAME_AMIGAOS :{G=f}AmigaOS
STR_OSNAME_OS2 :{G=f}OS/2
STR_OSNAME_SUNOS :{G=f}SunOS
diff --git a/src/lang/latin.txt b/src/lang/latin.txt
index ea7171390..4aee90222 100644
--- a/src/lang/latin.txt
+++ b/src/lang/latin.txt
@@ -1973,8 +1973,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt
index 9ab4dd48c..6b7b6a47b 100644
--- a/src/lang/latvian.txt
+++ b/src/lang/latvian.txt
@@ -1719,8 +1719,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt
index f030ba2b4..bad08f2be 100644
--- a/src/lang/lithuanian.txt
+++ b/src/lang/lithuanian.txt
@@ -1991,8 +1991,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt
index 8f8769d43..de8e41ca1 100644
--- a/src/lang/luxembourgish.txt
+++ b/src/lang/luxembourgish.txt
@@ -1775,8 +1775,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/malay.txt b/src/lang/malay.txt
index 0a0c8eb02..040d30a0d 100644
--- a/src/lang/malay.txt
+++ b/src/lang/malay.txt
@@ -1533,8 +1533,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt
index ef621f40f..d7c1dd74f 100644
--- a/src/lang/norwegian_bokmal.txt
+++ b/src/lang/norwegian_bokmal.txt
@@ -1802,8 +1802,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt
index 757ffe25e..03cd84e8c 100644
--- a/src/lang/norwegian_nynorsk.txt
+++ b/src/lang/norwegian_nynorsk.txt
@@ -1695,8 +1695,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/polish.txt b/src/lang/polish.txt
index 046f06553..53211734b 100644
--- a/src/lang/polish.txt
+++ b/src/lang/polish.txt
@@ -2171,8 +2171,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt
index 162276692..16e23126f 100644
--- a/src/lang/portuguese.txt
+++ b/src/lang/portuguese.txt
@@ -1800,8 +1800,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt
index 7d644a3a0..5eea779ac 100644
--- a/src/lang/romanian.txt
+++ b/src/lang/romanian.txt
@@ -1749,8 +1749,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/russian.txt b/src/lang/russian.txt
index 39023c8af..5ebb7fd7a 100644
--- a/src/lang/russian.txt
+++ b/src/lang/russian.txt
@@ -1951,8 +1951,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt
index 20a813b38..b35181aee 100644
--- a/src/lang/serbian.txt
+++ b/src/lang/serbian.txt
@@ -1979,8 +1979,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt
index 27c35cdab..a4de3f33d 100644
--- a/src/lang/simplified_chinese.txt
+++ b/src/lang/simplified_chinese.txt
@@ -1782,8 +1782,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt
index 4ba647de9..73123a7cb 100644
--- a/src/lang/slovak.txt
+++ b/src/lang/slovak.txt
@@ -1840,8 +1840,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt
index 4de468b49..282b537a0 100644
--- a/src/lang/slovenian.txt
+++ b/src/lang/slovenian.txt
@@ -1926,8 +1926,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt
index 79a0dfac1..7505c90ed 100644
--- a/src/lang/spanish.txt
+++ b/src/lang/spanish.txt
@@ -1785,8 +1785,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt
index 261aa155b..71a2a3375 100644
--- a/src/lang/spanish_MX.txt
+++ b/src/lang/spanish_MX.txt
@@ -1800,8 +1800,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt
index d1e2094ee..c89294e30 100644
--- a/src/lang/swedish.txt
+++ b/src/lang/swedish.txt
@@ -1793,8 +1793,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt
index 13e4772d5..6054d51d1 100644
--- a/src/lang/tamil.txt
+++ b/src/lang/tamil.txt
@@ -1542,8 +1542,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/thai.txt b/src/lang/thai.txt
index 1c5d4400d..dfa65c8bf 100644
--- a/src/lang/thai.txt
+++ b/src/lang/thai.txt
@@ -1723,8 +1723,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :ระบบปฏิบัติการ Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt
index 7ddf4fbd3..afc065807 100644
--- a/src/lang/traditional_chinese.txt
+++ b/src/lang/traditional_chinese.txt
@@ -1772,8 +1772,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt
index 74b56f655..09684c587 100644
--- a/src/lang/turkish.txt
+++ b/src/lang/turkish.txt
@@ -1798,8 +1798,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt
index d13654d54..857c6eaf6 100644
--- a/src/lang/ukrainian.txt
+++ b/src/lang/ukrainian.txt
@@ -1901,8 +1901,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/unfinished/chuvash.txt b/src/lang/unfinished/chuvash.txt
index 7366b99fc..41a195c1e 100644
--- a/src/lang/unfinished/chuvash.txt
+++ b/src/lang/unfinished/chuvash.txt
@@ -667,8 +667,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/unfinished/frisian.txt b/src/lang/unfinished/frisian.txt
index 4d4101b1a..28bd4678c 100644
--- a/src/lang/unfinished/frisian.txt
+++ b/src/lang/unfinished/frisian.txt
@@ -1706,8 +1706,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/unfinished/macedonian.txt b/src/lang/unfinished/macedonian.txt
index c08059240..71cc06d42 100644
--- a/src/lang/unfinished/macedonian.txt
+++ b/src/lang/unfinished/macedonian.txt
@@ -953,8 +953,6 @@ STR_OSNAME_WINDOWS :Windows
STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/unfinished/persian.txt b/src/lang/unfinished/persian.txt
index cf9c0098a..427154cbc 100644
--- a/src/lang/unfinished/persian.txt
+++ b/src/lang/unfinished/persian.txt
@@ -1489,8 +1489,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :هایکو
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/unfinished/urdu.txt b/src/lang/unfinished/urdu.txt
index 9f11fa11d..9a6283314 100644
--- a/src/lang/unfinished/urdu.txt
+++ b/src/lang/unfinished/urdu.txt
@@ -1386,8 +1386,6 @@ STR_OSNAME_UNIX :یونیکس
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt
index 6b3c28834..1aca32513 100644
--- a/src/lang/vietnamese.txt
+++ b/src/lang/vietnamese.txt
@@ -1788,8 +1788,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt
index 4e8e0b14f..ebe3d3f7f 100644
--- a/src/lang/welsh.txt
+++ b/src/lang/welsh.txt
@@ -1775,8 +1775,6 @@ STR_OSNAME_UNIX :Unix
STR_OSNAME_OSX :OS{NBSP}X
STR_OSNAME_BEOS :BeOS
STR_OSNAME_HAIKU :Haiku
-STR_OSNAME_MORPHOS :MorphOS
-STR_OSNAME_AMIGAOS :AmigaOS
STR_OSNAME_OS2 :OS/2
STR_OSNAME_SUNOS :SunOS
diff --git a/src/network/core/core.cpp b/src/network/core/core.cpp
index c8db860dd..e5f1df721 100644
--- a/src/network/core/core.cpp
+++ b/src/network/core/core.cpp
@@ -21,48 +21,12 @@
#include "../../safeguards.h"
-#ifdef __MORPHOS__
-/* the library base is required here */
-struct Library *SocketBase = NULL;
-#endif
-
/**
* Initializes the network core (as that is needed for some platforms
* @return true if the core has been initialized, false otherwise
*/
bool NetworkCoreInitialize()
{
-#if defined(__MORPHOS__) || defined(__AMIGA__)
- /*
- * IMPORTANT NOTE: SocketBase needs to be initialized before we use _any_
- * network related function, else: crash.
- */
- DEBUG(net, 3, "[core] loading bsd socket library");
- SocketBase = OpenLibrary("bsdsocket.library", 4);
- if (SocketBase == NULL) {
- DEBUG(net, 0, "[core] can't open bsdsocket.library version 4, network unavailable");
- return false;
- }
-
-#if defined(__AMIGA__)
- /* for usleep() implementation (only required for legacy AmigaOS builds) */
- TimerPort = CreateMsgPort();
- if (TimerPort != NULL) {
- TimerRequest = (struct timerequest*)CreateIORequest(TimerPort, sizeof(struct timerequest);
- if (TimerRequest != NULL) {
- if (OpenDevice("timer.device", UNIT_MICROHZ, (struct IORequest*)TimerRequest, 0) == 0) {
- TimerBase = TimerRequest->tr_node.io_Device;
- if (TimerBase == NULL) {
- /* free resources... */
- DEBUG(net, 0, "[core] can't initialize timer, network unavailable");
- return false;
- }
- }
- }
- }
-#endif /* __AMIGA__ */
-#endif /* __MORPHOS__ / __AMIGA__ */
-
/* Let's load the network in windows */
#ifdef _WIN32
{
@@ -83,17 +47,6 @@ bool NetworkCoreInitialize()
*/
void NetworkCoreShutdown()
{
-#if defined(__MORPHOS__) || defined(__AMIGA__)
- /* free allocated resources */
-#if defined(__AMIGA__)
- if (TimerBase != NULL) CloseDevice((struct IORequest*)TimerRequest); // XXX This smells wrong
- if (TimerRequest != NULL) DeleteIORequest(TimerRequest);
- if (TimerPort != NULL) DeleteMsgPort(TimerPort);
-#endif
-
- if (SocketBase != NULL) CloseLibrary(SocketBase);
-#endif
-
#if defined(_WIN32)
WSACleanup();
#endif
diff --git a/src/network/core/os_abstraction.h b/src/network/core/os_abstraction.h
index 32c6cffff..187e2584c 100644
--- a/src/network/core/os_abstraction.h
+++ b/src/network/core/os_abstraction.h
@@ -48,13 +48,11 @@ typedef unsigned long in_addr_t;
# endif
# define SOCKET int
# define INVALID_SOCKET -1
-# if !defined(__MORPHOS__) && !defined(__AMIGA__)
-# define ioctlsocket ioctl
+# define ioctlsocket ioctl
# if !defined(BEOS_NET_SERVER)
# define closesocket close
# endif
-# define GET_LAST_ERROR() (errno)
-# endif
+# define GET_LAST_ERROR() (errno)
/* Need this for FIONREAD on solaris */
# define BSD_COMP
@@ -74,7 +72,7 @@ typedef unsigned long in_addr_t;
# include <arpa/inet.h>
# include <net/if.h>
/* According to glibc/NEWS, <ifaddrs.h> appeared in glibc-2.3. */
-# if !defined(__sgi__) && !defined(SUNOS) && !defined(__MORPHOS__) && !defined(__BEOS__) && !defined(__HAIKU__) && !defined(__INNOTEK_LIBC__) \
+# if !defined(__sgi__) && !defined(SUNOS) && !defined(__BEOS__) && !defined(__HAIKU__) && !defined(__INNOTEK_LIBC__) \
&& !(defined(__GLIBC__) && (__GLIBC__ <= 2) && (__GLIBC_MINOR__ <= 2)) && !defined(__dietlibc__) && !defined(HPUX)
/* If for any reason ifaddrs.h does not exist on your system, comment out
* the following two lines and an alternative way will be used to fetch
@@ -164,39 +162,6 @@ typedef unsigned long in_addr_t;
#endif /* OS/2 */
-/* MorphOS and Amiga stuff */
-#if defined(__MORPHOS__) || defined(__AMIGA__)
-# include <exec/types.h>
-# include <proto/exec.h> /* required for Open/CloseLibrary() */
- /* MorphOS defines his network functions with UBYTE arrays while we
- * use char arrays. This gives tons of unneeded warnings */
-# define UBYTE char
-# if defined(__MORPHOS__)
-# include <sys/filio.h> /* FIO* defines */
-# include <sys/sockio.h> /* SIO* defines */
-# include <netinet/in.h>
-# else /* __AMIGA__ */
-# include <proto/socket.h>
-# endif
-
-/* Make the names compatible */
-# define closesocket(s) CloseSocket(s)
-# define GET_LAST_ERROR() Errno()
-# define ioctlsocket(s, request, status) IoctlSocket((LONG)s, (ULONG)request, (char*)status)
-# define ioctl ioctlsocket
-
- typedef unsigned int in_addr_t;
- typedef long socklen_t;
- extern struct Library *SocketBase;
-
-# ifdef __AMIGA__
- /* for usleep() implementation */
- extern struct Device *TimerBase;
- extern struct MsgPort *TimerPort;
- extern struct timerequest *TimerRequest;
-# endif
-#endif /* __MORPHOS__ || __AMIGA__ */
-
/**
* Try to set the socket into non-blocking mode.
* @param d The socket to set the non-blocking more for.
diff --git a/src/network/core/tcp.cpp b/src/network/core/tcp.cpp
index 790941fc0..a2f789c09 100644
--- a/src/network/core/tcp.cpp
+++ b/src/network/core/tcp.cpp
@@ -238,11 +238,7 @@ bool NetworkTCPSocketHandler::CanSendReceive()
FD_SET(this->sock, &write_fd);
tv.tv_sec = tv.tv_usec = 0; // don't block at all.
-#if !defined(__MORPHOS__) && !defined(__AMIGA__)
if (select(FD_SETSIZE, &read_fd, &write_fd, NULL, &tv) < 0) return false;
-#else
- if (WaitSelect(FD_SETSIZE, &read_fd, &write_fd, NULL, &tv, NULL) < 0) return false;
-#endif
this->writable = !!FD_ISSET(this->sock, &write_fd);
return FD_ISSET(this->sock, &read_fd) != 0;
diff --git a/src/network/core/tcp_http.cpp b/src/network/core/tcp_http.cpp
index aec198bf5..4cd92e5fe 100644
--- a/src/network/core/tcp_http.cpp
+++ b/src/network/core/tcp_http.cpp
@@ -310,11 +310,7 @@ int NetworkHTTPSocketHandler::Receive()
}
tv.tv_sec = tv.tv_usec = 0; // don't block at all.
-#if !defined(__MORPHOS__) && !defined(__AMIGA__)
int n = select(FD_SETSIZE, &read_fd, NULL, NULL, &tv);
-#else
- int n = WaitSelect(FD_SETSIZE, &read_fd, NULL, NULL, &tv, NULL);
-#endif
if (n == -1) return;
for (NetworkHTTPSocketHandler **iter = _http_connections.Begin(); iter < _http_connections.End(); /* nothing */) {
diff --git a/src/network/core/tcp_listen.h b/src/network/core/tcp_listen.h
index e6b589332..8cd8257b2 100644
--- a/src/network/core/tcp_listen.h
+++ b/src/network/core/tcp_listen.h
@@ -118,11 +118,7 @@ public:
}
tv.tv_sec = tv.tv_usec = 0; // don't block at all.
-#if !defined(__MORPHOS__) && !defined(__AMIGA__)
if (select(FD_SETSIZE, &read_fd, &write_fd, NULL, &tv) < 0) return false;
-#else
- if (WaitSelect(FD_SETSIZE, &read_fd, &write_fd, NULL, &tv, NULL) < 0) return false;
-#endif
/* accept clients.. */
for (SocketList::iterator s = sockets.Begin(); s != sockets.End(); s++) {
diff --git a/src/openttd.cpp b/src/openttd.cpp
index 6265b9684..c2e745566 100644
--- a/src/openttd.cpp
+++ b/src/openttd.cpp
@@ -170,7 +170,7 @@ static void ShowHelp()
" -P password = Password to join company\n"
" -D [ip][:port] = Start dedicated server\n"
" -l ip[:port] = Redirect DEBUG()\n"
-#if !defined(__MORPHOS__) && !defined(__AMIGA__) && !defined(_WIN32)
+#if !defined(_WIN32)
" -f = Fork into the background (dedicated only)\n"
#endif
#endif /* ENABLE_NETWORK */
@@ -497,7 +497,7 @@ struct AfterNewGRFScan : NewGRFScanCallback {
}
};
-#if defined(UNIX) && !defined(__MORPHOS__)
+#if defined(UNIX)
extern void DedicatedFork();
#endif
@@ -516,7 +516,7 @@ static const OptionData _options[] = {
GETOPT_SHORT_VALUE('l'),
GETOPT_SHORT_VALUE('p'),
GETOPT_SHORT_VALUE('P'),
-#if !defined(__MORPHOS__) && !defined(__AMIGA__) && !defined(_WIN32)
+#if !defined(_WIN32)
GETOPT_SHORT_NOVAL('f'),
#endif
#endif /* ENABLE_NETWORK */
@@ -707,7 +707,7 @@ int openttd_main(int argc, char *argv[])
if (dedicated) DEBUG(net, 0, "Starting dedicated version %s", _openttd_revision);
if (_dedicated_forks && !dedicated) _dedicated_forks = false;
-#if defined(UNIX) && !defined(__MORPHOS__)
+#if defined(UNIX)
/* We must fork here, or we'll end up without some resources we need (like sockets) */
if (_dedicated_forks) DedicatedFork();
#endif
diff --git a/src/os/unix/unix.cpp b/src/os/unix/unix.cpp
index bea69ec93..810b062a6 100644
--- a/src/os/unix/unix.cpp
+++ b/src/os/unix/unix.cpp
@@ -43,21 +43,6 @@
#include <sys/sysctl.h>
#endif
-
-#ifdef __MORPHOS__
-#include <exec/types.h>
-ULONG __stack = (1024*1024)*2; // maybe not that much is needed actually ;)
-
-/* The system supplied definition of SIG_IGN does not match */
-#undef SIG_IGN
-#define SIG_IGN (void (*)(int))1
-#endif /* __MORPHOS__ */
-
-#ifdef __AMIGA__
-#warning add stack symbol to avoid that user needs to set stack manually (tokai)
-// ULONG __stack =
-#endif
-
#if defined(__APPLE__)
#if defined(WITH_SDL)
/* the mac implementation needs this file included in the same file as main() */
@@ -69,13 +54,7 @@ ULONG __stack = (1024*1024)*2; // maybe not that much is needed actually ;)
bool FiosIsRoot(const char *path)
{
-#if !defined(__MORPHOS__) && !defined(__AMIGAOS__)
return path[1] == '\0';
-#else
- /* On MorphOS or AmigaOS paths look like: "Volume:directory/subdirectory" */
- const char *s = strchr(path, ':');
- return s != NULL && s[1] == '\0';
-#endif
}
void FiosGetDrives(FileList &file_list)
@@ -106,15 +85,8 @@ bool FiosIsValidFile(const char *path, const struct dirent *ent, struct stat *sb
{
char filename[MAX_PATH];
int res;
-#if defined(__MORPHOS__) || defined(__AMIGAOS__)
- /* On MorphOS or AmigaOS paths look like: "Volume:directory/subdirectory" */
- if (FiosIsRoot(path)) {
- res = seprintf(filename, lastof(filename), "%s:%s", path, ent->d_name);
- } else // XXX - only next line!
-#else
assert(path[strlen(path) - 1] == PATHSEPCHAR);
if (strlen(path) > 2) assert(path[strlen(path) - 2] != PATHSEPCHAR);
-#endif
res = seprintf(filename, lastof(filename), "%s%s", path, ent->d_name);
/* Could we fully concatenate the path and filename? */
@@ -296,36 +268,10 @@ bool GetClipboardContents(char *buffer, const char *last)
/* multi os compatible sleep function */
-#ifdef __AMIGA__
-/* usleep() implementation */
-# include <devices/timer.h>
-# include <dos/dos.h>
-
- extern struct Device *TimerBase = NULL;
- extern struct MsgPort *TimerPort = NULL;
- extern struct timerequest *TimerRequest = NULL;
-#endif /* __AMIGA__ */
-
void CSleep(int milliseconds)
{
#if defined(__BEOS__)
snooze(milliseconds * 1000);
- #elif defined(__AMIGA__)
- {
- ULONG signals;
- ULONG TimerSigBit = 1 << TimerPort->mp_SigBit;
-
- /* send IORequest */
- TimerRequest->tr_node.io_Command = TR_ADDREQUEST;
- TimerRequest->tr_time.tv_secs = (milliseconds * 1000) / 1000000;
- TimerRequest->tr_time.tv_micro = (milliseconds * 1000) % 1000000;
- SendIO((struct IORequest *)TimerRequest);
-
- if (!((signals = Wait(TimerSigBit | SIGBREAKF_CTRL_C)) & TimerSigBit) ) {
- AbortIO((struct IORequest *)TimerRequest);
- }
- WaitIO((struct IORequest *)TimerRequest);
- }
#else
usleep(milliseconds * 1000);
#endif
diff --git a/src/rev.cpp.in b/src/rev.cpp.in
index 2ba406868..d5d19373b 100644
--- a/src/rev.cpp.in
+++ b/src/rev.cpp.in
@@ -83,10 +83,3 @@ const byte _openttd_revision_tagged = !!ISTAG!!;
* version, thus making comparisons on specific revisions easy.
*/
const uint32 _openttd_newgrf_version = 1 << 28 | 10 << 24 | 0 << 20 | !!ISSTABLETAG!! << 19 | 28004;
-
-#ifdef __MORPHOS__
-/**
- * Variable used by MorphOS to show the version.
- */
-extern const char morphos_versions_tag[] = "$VER: OpenTTD !!VERSION!! (!!DATE!!) OpenTTD Team [MorphOS, PowerPC]";
-#endif
diff --git a/src/settingsgen/settingsgen.cpp b/src/settingsgen/settingsgen.cpp
index 298539417..d8d76a4d6 100644
--- a/src/settingsgen/settingsgen.cpp
+++ b/src/settingsgen/settingsgen.cpp
@@ -23,13 +23,6 @@
#include <sys/stat.h>
#endif
-#ifdef __MORPHOS__
-#ifdef stderr
-#undef stderr
-#endif
-#define stderr stdout
-#endif /* __MORPHOS__ */
-
#include "../safeguards.h"
/**
diff --git a/src/stdafx.h b/src/stdafx.h
index 6e96e98fd..80130ff4d 100644
--- a/src/stdafx.h
+++ b/src/stdafx.h
@@ -29,9 +29,9 @@
/* It seems that we need to include stdint.h before anything else
* We need INT64_MAX, which for most systems comes from stdint.h. However, MSVC
- * does not have stdint.h and apparently neither does MorphOS.
+ * does not have stdint.h.
* For OSX the inclusion is already done in osx_stdafx.h. */
-#if !defined(__APPLE__) && (!defined(_MSC_VER) || _MSC_VER >= 1600) && !defined(__MORPHOS__)
+#if !defined(__APPLE__) && (!defined(_MSC_VER) || _MSC_VER >= 1600)
#if defined(SUNOS)
/* SunOS/Solaris does not have stdint.h, but inttypes.h defines everything
* stdint.h defines and we need. */
@@ -104,30 +104,6 @@
#include <alloca.h>
#endif
-#if defined(__MORPHOS__)
- /* MorphOS defines certain Amiga defines per default, we undefine them
- * here to make the rest of source less messy and more clear what is
- * required for morphos and what for AmigaOS */
- #if defined(amigaos)
- #undef amigaos
- #endif
- #if defined(__amigaos__)
- #undef __amigaos__
- # endif
- #if defined(__AMIGA__)
- #undef __AMIGA__
- #endif
- #if defined(AMIGA)
- #undef AMIGA
- #endif
- #if defined(amiga)
- #undef amiga
- #endif
- /* Act like we already included this file, as it somehow gives linkage problems
- * (mismatch linkage of C++ and C between this include and unistd.h). */
- #define CLIB_USERGROUP_PROTOS_H
-#endif /* __MORPHOS__ */
-
/* Stuff for GCC */
#if defined(__GNUC__)
#define NORETURN __attribute__ ((noreturn))
@@ -331,7 +307,7 @@
typedef unsigned char byte;
/* This is already defined in unix, but not in QNX Neutrino (6.x)*/
-#if (!defined(UNIX) && !defined(__CYGWIN__) && !defined(__BEOS__) && !defined(__HAIKU__) && !defined(__MORPHOS__)) || defined(__QNXNTO__)
+#if (!defined(UNIX) && !defined(__CYGWIN__) && !defined(__BEOS__) && !defined(__HAIKU__)) || defined(__QNXNTO__)
typedef unsigned int uint;
#endif
@@ -457,8 +433,8 @@ void NORETURN CDECL error(const char *str, ...) WARN_FORMAT(1, 2);
#define OTTD_ASSERT
#endif
-#if defined(MORPHOS) || defined(__NDS__) || defined(__DJGPP__)
- /* MorphOS and NDS don't have C++ conformant _stricmp... */
+#if defined(__NDS__) || defined(__DJGPP__)
+ /* DJGPP doesn't have C++ conformant _stricmp... */
#define _stricmp stricmp
#elif defined(OPENBSD)
/* OpenBSD uses strcasecmp(3) */
diff --git a/src/strgen/strgen.cpp b/src/strgen/strgen.cpp
index 98e11e2eb..80fe49a48 100644
--- a/src/strgen/strgen.cpp
+++ b/src/strgen/strgen.cpp
@@ -30,13 +30,6 @@
#include <direct.h>
#endif /* _WIN32 || __WATCOMC__ */
-#ifdef __MORPHOS__
-#ifdef stderr
-#undef stderr
-#endif
-#define stderr stdout
-#endif /* __MORPHOS__ */
-
#include "../table/strgen_tables.h"
#include "../safeguards.h"
diff --git a/src/thread/thread_morphos.cpp b/src/thread/thread_morphos.cpp
deleted file mode 100644
index e368663f7..000000000
--- a/src/thread/thread_morphos.cpp
+++ /dev/null
@@ -1,197 +0,0 @@
-/* $Id$ */
-
-/*
- * This file is part of OpenTTD.
- * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
- * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/** @file thread_morphos.cpp MorphOS implementation of Threads. */
-
-#include "../stdafx.h"
-#include "thread.h"
-#include "../debug.h"
-#include "../core/alloc_func.hpp"
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <exec/types.h>
-#include <exec/rawfmt.h>
-#include <dos/dostags.h>
-
-#include <proto/dos.h>
-#include <proto/exec.h>
-
-#include "../safeguards.h"
-
-/**
- * avoid name clashes with MorphOS API functions
- */
-#undef Exit
-#undef Wait
-
-
-/**
- * NOTE: this code heavily depends on latest libnix updates. So make
- * sure you link with new stuff which supports semaphore locking of
- * the IO resources, else it will just go foobar.
- */
-
-
-struct OTTDThreadStartupMessage {
- struct Message msg; ///< standard exec.library message (MUST be the first thing in the message struct!)
- OTTDThreadFunc func; ///< function the thread will execute
- void *arg; ///< functions arguments for the thread function
-};
-
-
-/**
- * Default OpenTTD STDIO/ERR debug output is not very useful for this, so we
- * utilize serial/ramdebug instead.
- */
-void KPutStr(CONST_STRPTR format)
-{
- RawDoFmt(format, NULL, (void (*)())RAWFMTFUNC_SERIAL, NULL);
-}
-
-
-/**
- * MorphOS version for ThreadObject.
- */
-class ThreadObject_MorphOS : public ThreadObject {
-private:
- APTR m_thr; ///< System thread identifier.
- struct MsgPort *m_replyport;
- struct OTTDThreadStartupMessage m_msg;
- bool self_destruct;
-
-public:
- /**
- * Create a sub process and start it, calling proc(param).
- */
- ThreadObject_MorphOS(OTTDThreadFunc proc, void *param, self_destruct) :
- m_thr(0), self_destruct(self_destruct)
- {
- struct Task *parent;
-
- KPutStr("[OpenTTD] Create thread...\n");
-
- parent = FindTask(NULL);
-
- /* Make sure main thread runs with sane priority */
- SetTaskPri(parent, 0);
-
- /* Things we'll pass down to the child by utilizing NP_StartupMsg */
- m_msg.func = proc;
- m_msg.arg = param;
-
- m_replyport = CreateMsgPort();
-
- if (m_replyport != NULL) {
- struct Process *child;
-
- m_msg.msg.mn_Node.ln_Type = NT_MESSAGE;
- m_msg.msg.mn_ReplyPort = m_replyport;
- m_msg.msg.mn_Length = sizeof(struct OTTDThreadStartupMessage);
-
- child = CreateNewProcTags(
- NP_CodeType, CODETYPE_PPC,
- NP_Entry, ThreadObject_MorphOS::Proxy,
- NP_StartupMsg, (IPTR)&m_msg,
- NP_Priority, 5UL,
- NP_Name, (IPTR)"OpenTTD Thread",
- NP_PPCStackSize, 131072UL,
- TAG_DONE);
-
- m_thr = (APTR) child;
-
- if (child != NULL) {
- KPutStr("[OpenTTD] Child process launched.\n");
- } else {
- KPutStr("[OpenTTD] Couldn't create child process. (constructors never fail, yeah!)\n");
- DeleteMsgPort(m_replyport);
- }
- }
- }
-
- /* virtual */ ~ThreadObject_MorphOS()
- {
- }
-
- /* virtual */ bool Exit()
- {
- struct OTTDThreadStartupMessage *msg;
-
- /* You can only exit yourself */
- assert(IsCurrent());
-
- KPutStr("[Child] Aborting...\n");
-
- if (NewGetTaskAttrs(NULL, &msg, sizeof(struct OTTDThreadStartupMessage *), TASKINFOTYPE_STARTUPMSG, TAG_DONE) && msg != NULL) {
- /* For now we terminate by throwing an error, gives much cleaner cleanup */
- throw OTTDThreadExitSignal();
- }
-
- return true;
- }
-
- /* virtual */ void Join()
- {
- struct OTTDThreadStartupMessage *reply;
-
- /* You cannot join yourself */
- assert(!IsCurrent());
-
- KPutStr("[OpenTTD] Join threads...\n");
- KPutStr("[OpenTTD] Wait for child to quit...\n");
- WaitPort(m_replyport);
-
- GetMsg(m_replyport);
- DeleteMsgPort(m_replyport);
- m_thr = 0;
- }
-
- /* virtual */ bool IsCurrent()
- {
- return FindTask(NULL) == m_thr;
- }
-
-private:
- /**
- * On thread creation, this function is called, which calls the real startup
- * function. This to get back into the correct instance again.
- */
- static void Proxy()
- {
- struct Task *child = FindTask(NULL);
- struct OTTDThreadStartupMessage *msg;
-
- /* Make sure, we don't block the parent. */
- SetTaskPri(child, -5);
-
- KPutStr("[Child] Progressing...\n");
-
- if (NewGetTaskAttrs(NULL, &msg, sizeof(struct OTTDThreadStartupMessage *), TASKINFOTYPE_STARTUPMSG, TAG_DONE) && msg != NULL) {
- try {
- msg->func(msg->arg);
- } catch(OTTDThreadExitSignal e) {
- KPutStr("[Child] Returned to main()\n");
- } catch(...) {
- NOT_REACHED();
- }
- }
-
- /* Quit the child, exec.library will reply the startup msg internally. */
- KPutStr("[Child] Done.\n");
-
- if (self_destruct) delete this;
- }
-};
-
-/* static */ bool ThreadObject::New(OTTDThreadFunc proc, void *param, ThreadObject **thread, const char *name)
-{
- ThreadObject *to = new ThreadObject_MorphOS(proc, param, thread == NULL);
- if (thread != NULL) *thread = to;
- return true;
-}
diff --git a/src/video/sdl_v.cpp b/src/video/sdl_v.cpp
index 8493ae89f..2a636d1aa 100644
--- a/src/video/sdl_v.cpp
+++ b/src/video/sdl_v.cpp
@@ -496,8 +496,6 @@ static uint ConvertSdlKeyIntoMy(SDL_keysym *sym, WChar *character)
if (sym->scancode == 41) key = WKC_BACKQUOTE;
#elif defined(__APPLE__)
if (sym->scancode == 10) key = WKC_BACKQUOTE;
-#elif defined(__MORPHOS__)
- if (sym->scancode == 0) key = WKC_BACKQUOTE; // yes, that key is code '0' under MorphOS :)
#elif defined(__BEOS__)
if (sym->scancode == 17) key = WKC_BACKQUOTE;
#elif defined(__SVR4) && defined(__sun)