The following are my (very rough) notes for building a squeak VM from scratch using Squeak 2.3 as the source generator and compiling on a Macintosh PPC using CodeWarrior Pro 4:
- Enter image, open browser.
- Go to Squeak-Translation to C: CCodeGenerator, hit ? for class desc.
- Hilight source example and doit.
- Go to Squeak-Interpreter: InterpreterSupport Code and do the same as 2-3.
- Unstuff project files.
- Open 68K and PPC projects at same time. Merge and update project w/ CW Pro 4
- Build. Many errors in MacTypes.h and others.
- Batch find “false” in project headers.
- sq.h defines false 0, which breaks MacTypes.h’s definition.
- add “#if defined(MWERKS) && TARGET_OS_MAC” to sq.h to wrap true & false
- Add “#include <Devices.h>” to sqMacAsyncFilePrims.c
- Change kCurrentCFragArch to kCompiledCFragArch in sqMacExternalPrims.c
- Change declaration from “long” to “unsigned long” for variable junk in snd_Stop in sqMacSound.c
- Add “MSL MWCFM68KRuntime.Lib”, “MathLibCFM68K (4i8d).Lib”, and “MSL C.CFM68K Fa(4i8d).Lib” to project for 68K app only and remove old versions that are close in name.
- Add “MSL SIOUX.CFM68K.Lib” and “MSL SIOUX.PPC.Lib” to their respective apps. Replace “MWCRuntime.Lib” with “MSL RuntimePPC.Lib” in SqueakPPC.
I can’t test out the 68K VM but it builds and links w/ the same code as the PPC version. The PPC version seems to work fine. I looked through several of the “Play With Me” examples.
If you have any problems with this document, or would like to add or change anything, please email me.