[English]
[Japanese]
Squeak: An additional note for "Hacking Squeak With Apple MPW"
Updated: Jun 8, 1999.
- You must read before going further
- preparation
- to do before starting MPW
- Let's re-build!
- generating sorce codes
- recompiling with MPW
- patch out the unneccesary range check
- get new VM!
- benchmark
Sat, 5 Jun 1999 22:10:52 -0400, there is the post "Hacking Squeak With Apple MPW," by Mr. Andrew C. Greenberg at Squeak-ML.
This is a brief additional note of it with MPW 3.4.3, Squeak 2.4b VM and 2.4c image.
FAQ: Building PowerPC Squeak VMs with MPW by Andrew C. Greenberg.
- MPW (Macintosh Programmer's Workshop)
- using MPW-GM (Golden Master means "final") version with MPW Shell version 3.4.3 (Oct 14, 1998).
I don't have a MPW-PR (Pre-Release) version set.
- Squeak 2.4 base
- VM; 2.4b, image; 2.4c
- MPWInterpreterBuilder.cs
- FAQ: Building PowerPC Squeak VMs with MPW by Andrew C. Greenberg.
MPW shell is assigned 8MB memory as default.
You must assign 24MB at least or more for it.
If less, MPW will shout "Ran out of memory (aborting)" and be terminated, while compiling "interp.c".
- start Squeak and filein "MPWInterpreterBuilder.cs"
- to generate source codes from original Squeak, evaluate below; It will generate 30 files more.
InterpreterSupportCode writeMacMPWSourceFiles.
Interpreter translate: 'interp.c' doInlining: true.
B3DEnginePlugin translateB3D.
- quit Squeak
- make working directory MPWsq (default directory)
- make sub directory src, obj, squeak, doc
- move files *.c, *.h, *.r to src from Squeak directory
- move "readme" to doc from Squeak directory
- change makefile
- MPWsqueak.make
SqueakSources = :src:
SqueakFolder = :squeak:
ObjDir„PPC = :obj:
- MPWsqueak3D.make
SqueakSources = :src:
SqueakFolder = :squeak:
ObjDir„PPC = :obj:
- start MPW and do build!
- to make MPWsqueak...
- "Build..." from the "Build" menu, type "MPWsqueak"
- to make MPWSqueak3D shlb...
- build as above and type "MPWSqueak3D"
- evaluate below;
Interpreter patchInterp: 'MPWsqueak'.
The second comment from Interpreter (c) >> patchInterp:
This will patch out the unneccesary range check (a compare and branch) in the inner interpreter dispatch loop.
Here are your new MPWsqueak and Squeak 3D Engine.
Now MPWsqueak has new BNDL resource!
benchmark result
Created: Jun 8, 1999
[English]
[Japanese]