Adventures in Plugging In
tim at sumeru.stanford.edu
Thu Feb 27 17:47:29 UTC 2003
Brian Brown <rbb at techgame.net> wrote:
> > Using the VMMakerTool will probably seem easier since it provides a GUI;
> > + open the tool (world menu-> open-> VMMaker.
> My image doesn't have this choice, but I read the class comment from VMMakerTool and did: VMMakerTool openInWorld to get the GUI.
Ah- it probably came in recently then, perhaps in the3.4gammaOne
release. Still, you found the right thing anyway.
> > + drag FooPlugin from the leftmost column of possible plugins to the
> > right column (I'm assuming you want to make it an external plugin
> > because to make an internal one you have to make the rest of the vm as
> > well)
> The one I was typing in the code for and the FooPlugin2 example I found in the image don't show up in the list of available plugins, but I imagine I'll have somehow let the system know they are plugins...
Yup. I'd about forgotten that part. As Ned said, you will need to
implement #shouldBeTranslated to return 'true' for your plugin or it is
ignored. Why? Well, in normal VM building circumstances we really don't
want to have to remember to drop FooPlugin, FlippyArrayPlugin2, etc etc.
I suppose one could extend the tool to have amenu option to 'include
every plugin class' or something, though that might mess up things like
DeflatePlugin and SqueakB3D.
> So is the process:
> Build the Squeak Classes to access the plugin (primitives)
> Build the primitive classes
> Have VMMaker generate the C code
> compile and use
> ... or does VMMaker do more in terms of building the primitives ( or should I just read the wiki and quit asking questions ;)
I'd say read the wiki and then ask lots more questions to prompt us to
correct it :-) Having somebody not yet conversant with the area reading
and trying out is very valuable quality assurance work.
Tim Rowledge, tim at sumeru.stanford.edu, http://sumeru.stanford.edu/tim
Useful random insult:- Calling him a pea brain would be an undeserved compliment.
More information about the Squeak-dev