mirror of
https://github.com/ksherlock/mpw.git
synced 2024-11-25 19:30:50 +00:00
README
This commit is contained in:
parent
1abb98e1dd
commit
958dafa754
93
README.text
Normal file
93
README.text
Normal file
@ -0,0 +1,93 @@
|
||||
MPW Emulator
|
||||
------------
|
||||
|
||||
by Kelvin W Sherlock.
|
||||
|
||||
0. System compatibility:
|
||||
|
||||
Currently, only OS X 10.8 with case-insensitive HFS+ is supported.
|
||||
|
||||
1. License.
|
||||
|
||||
The 680x0 CPU code is from WinFellow (http://fellow.sourceforge.net) and is
|
||||
licensed under GPL v2 or later. Consequently, the rest of the code is licensed
|
||||
under the GPL v2 as well.
|
||||
|
||||
The memory allocator (NewHandle/NewPointer) code is from mempoolite, which
|
||||
is a fork of the SQLite zero-alloc allocator by Jefty Negapatan
|
||||
<jeftyneg@gmail.com>. It, as is SQLite, is in the public domain.
|
||||
|
||||
2. Building
|
||||
|
||||
Compiling requires cmake, ragel, and a recent version of clang++ with
|
||||
c++11 support. It has only been built and tested with OS X 10.8.
|
||||
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
make
|
||||
|
||||
This will generate bin/mpw and bin/disasm.
|
||||
|
||||
3. Installation
|
||||
|
||||
Certain configuration and execution files are generally useful. They are
|
||||
stored in an mpw directory, which may be located:
|
||||
|
||||
$MPW (shell variable)
|
||||
~/mpw/ (your home directory)
|
||||
/usr/local/share/mpw/
|
||||
/usr/share/mpw/
|
||||
|
||||
The layout is reminiscent of actual MPW installations.
|
||||
|
||||
mpw/Environment.text
|
||||
mpw/Tools/...
|
||||
mpw/Interfaces/...
|
||||
mpw/Libraries/...
|
||||
mpw/Help/...
|
||||
|
||||
4. Environment file
|
||||
|
||||
The Environment.text file is new; it contains MPW environment variables (many
|
||||
of them set the library and include file locations). The format is fairly
|
||||
simple.
|
||||
|
||||
# this is a comment
|
||||
|
||||
#this sets a variable
|
||||
name = value
|
||||
|
||||
# this sets a variable if it is undefined.
|
||||
name ?= value
|
||||
|
||||
# values may refer to other variables
|
||||
Libraries=$MPW:Libraries:Libraries:
|
||||
Libraries=${MPW}:Libraries:Libraries:
|
||||
|
||||
eventually, mpw will support a -Dname=value flag, so you can do something like:
|
||||
|
||||
# use 3.2 headers/libraries unless overridden on the command line
|
||||
MPWVersion ?= 3.2
|
||||
Libraries=$MPW:Libraries:Libraries-$MPWVersion:
|
||||
|
||||
|
||||
5. Usage
|
||||
|
||||
mpw [mpw flags] command-name [command arguments]
|
||||
|
||||
you may also create shell aliases:
|
||||
|
||||
alias AsmIIgs='mpw AsmIIgs'
|
||||
|
||||
or create a shell script (in /usr/local/bin, etc)
|
||||
|
||||
/usr/local/bin/AsmIIgs:
|
||||
|
||||
#!/usr/bin/sh
|
||||
|
||||
exec mpw AsmIIgs $@
|
||||
|
||||
mpw looks in the current directory and then in the $MPW:Tools: directory
|
||||
for the command to run. The MPW $Commands variable is not yet supported.
|
||||
|
Loading…
Reference in New Issue
Block a user