-
Notifications
You must be signed in to change notification settings - Fork 31
/
README
111 lines (86 loc) · 4.4 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
Mac OS X 10.6.5 notes:
Xcode: 3.2.3 64-bit Xcode IDE: 1688.0, Xcode Core: 1691.0, ToolSupport: 1591.0
The configure line I used was:
CC='gcc -m32 -fno-stack-check -fno-stack-protector' OBJC='gcc -m32 -fno-stack-check -fno-stack-protector' ../../src/configure
I'm using the version of syn68k that I built from my ancient_hackage
branch.
========================================================================
Executor is a Macintosh emulator that is able to run many ancient Mac
OS 680x0 binaries (System 6 era, early System 7) without using any
intellectual property from Apple Computer.
Executor has not been actively worked on for many years. It is more
of a curiousity than anything practical; it does not run PowerPC
binaries, nor did it even run most System 7 applications. Unless you
have a particular application that you know works with Executor, or
just like emulation a lot, you probably don't want to spend any time
with Executor.
Included are a bunch of auxiliarly files and miscellaneous front-ends.
The DOS port required various other libraries that we had permission
to use, but that we did not necessarily have the permission to publish
the source for, so the source to some of the packages that the DOS
port requires is not present in the github repository.
If you want to try to build a version of Executor, try this:
cd src
autoreconf --install
cd ..
mkdir build
cd build
../src/configure
make
make install
That should leave you with a binary called "executor" (at least on
32-bit x86 Linux systems, or a Mac (Intel or PowerPC) with XCode 3
installed) and a directory called "skel". By default, executor will
be installed in "/usr/local/bin" and skel will be installed in
"/usr/local/share/executor".
skel itself isn't meant to be written to; it's meant to be copied
somewhere and for the copy to be read/write. For example,
cp -Rp /usr/local/share/executor/skel/volume /tmp/ExecutorVolume
export SystemFolder="/tmp/ExecutorVolume/System Folder"
executor
The environment variables that drive Executor including where Executor
looks for the system folder are a bit arcane and meant to fit together
with installers that we no longer use. It may make sense to make it
so that Executor automatically copies the contents of skel/volume to a
users home-directory the first time Executor is run, but that's an
exercise left to the reader.
If you're on an x86_64 based machine and you have the ability to compile
32-bit binaries and you have these packages installed (where the ? is 3 for
Fedora 10, 5 for Fedora 11 and 6 for Fedora 12):
SDL-devel.i?86
libX11-devel.i?86
db4-devel.i?86
libXext.i?86
libXrender.i?86
libXrandr.i?86
you should be able to build a copy of Executor by overriding CC and
OBJC to be the 32-bit version and explicitly stating that you're
building on a 32-bit system (which is a little bit untrue, but works):
mkdir -p build/debug-linux
cd build/debug-linux
CC='gcc -m32' OBJC='gcc -m32' ../../src/configure --build=i686-pc-linux
make
The above works on Fedora 10, 11 and 12 x86_64.
Yes, the above is pretty messy. Since the x86_64 bit native version of
Executor doesn't build and is likely to anytime soon, it probably makes
sense to make it so that by default we build the ix86 version of Executor
when compiling on x86_64, and that we complain if the various 32-bit
libraries aren't available.
In the past it was possible to cross-compile a version of Executor for
Windows using mingw32. So far that port hasn't been tried since
putting the code on Github. It probably doesn't work, but probably
could be made to work without much effort.
At one time we had Executor running on the Alpha, a 64-bit
environment. We actually modified gcc to support "pointer bit-fields"
and were able to get Executor to run. Now that 64-bit machines are
more popular, I've begun an experiment in supporting 64-bit machines
without modifying the compiler. See README.64 for more info.
As I continue Executor's transition to a recent gnu build system I may
inadvertantly push versions that don't build when using the above
commands. Don't hesitate to ask me if you're having trouble
compiling, linking or running any of the above platforms.
My email address is still <ctm@ardi.com>, although ARDI itself is
defunct. I get a ridiculous amount of spam and will quite possibly
not see email addressed to me. I'm ctm on github (http://github.com)
and typically check my email there once a day.
--Cliff Matthews