[Squeak Installer] MobVM compatibility

PhiHo Hoang phiho.hoang at home.com
Wed Aug 29 17:47:41 UTC 2001


I wrote:

>    If you have any external plugin of your own, you are encouraged to try
> them with MobVM. I would like to hear your comments. it should be fully
> compatible with Squeak-D3D (625,644 bytes dated May-17-2001).

    I forgot a little issue, in Squeak-D3D, the plugin B3DAcceleratorPlugin
was already 'external-ready'. However, I had to change a bit:

//static HWND *theSTWindow = NULL; /* a reference to Squeak's main window */
//  theSTWindow = (HWND*)
interpreterProxy->ioLoadFunctionFrom("stWindow","");

  static HWND stWindow = NULL; /* Squeak's main window */
  static HWND *theSTWindow = &stWindow ; /* a reference to Squeak's main
window */

  stWindow = windowProxy->getStWindow();


//  preMessageHook = (messageHook*)
interpreterProxy->ioLoadFunctionFrom("preMessageHook","");
  preMessageHook = windowProxy->getPreMessageHookAddress() ;


    The main reason for this incompatibility is that I am not sure how to
best handle things like this. So I just settle for uniformity in the way
properties are accessed, through getters and setters. Somehow, I feel a bit
uneasy in using 'interpreterProxy->ioLoadFunctionFrom' to get at a property.

    So, if your plugin use  'interpreterProxy->ioLoadFunctionFrom' to get at
a property, it will not work with MobVM.

> P.S: Please ensure that you do not have the official VM and MobVM in the
> same directory. This should do no harm to MobVM but the official VM will
> just display a black screen because it found the external plugins
(belonging
> to MobVM, requiring a higher minor version for the interpreter) and cannot
> use it (because of the version). The official VM should fall back to the
> internal plugins and proceed as if there were no (useless) external
plugins.
> Andreas, please consider this as a bug report ;-)

    New feature to avoid this situation, all plugins distributed with MobVM
will reside in the subdirectory 'plugins' below the directory where
Squeak.exe stay. MobVM will look for the plugins in the usual places, if not
found, will look in this subdirectory 'plugins'.

    One question, to ensure that MobVM and official VM can coexist
peacefully in the same place, should the traditional name 'Squeak.exe' be
changed to say 'MobSqueak.exe' or 'SqueakMobVM.exe' or 'SqueakInstaller.exe'
?

    Cheers,

    PhiHo

----- Original Message -----
From: "PhiHo Hoang" <phiho.hoang at home.com>
To: <squeak-dev at lists.squeakfoundation.org>
Sent: Saturday, August 25, 2001 12:17 AM
Subject: [Squeak Installer] Progress Report


> Hi List,
>
>     There is some progress. Not much though, merely 11KB. The codes were
> mainly stolen from the existing InterpreterPlugin and PlatformPlugin.
>
>     What it does is looking around for a Squeak image, if not found it
will
> bring up a file open dialog box so that the user can pick up an image
> somewhere on the local file system. It then loads the image, read some
> saved information, then initialised the ObjectMemory,
> CompilerHooks...prepare the scene for interpret().
>
>     This new plugin, for now, is named 'ModManPlugin' (Module Manager). Of
> course this is only a place holder for the true Module Manager. I hope at
> some stage, with help from the list, this plugin will be able to look for,
> instead of a pre-built image, the modules (Smalltalk source files) whether
> on the local file system or on the internet (via http/ftp ), pass them to
> the compiler, get back the result from the compiler, building up an image
> (?) in memory......prepare the scene for interpret().
>
>     Please find attached the file 'ObjectMemoryStartup.zip' to see what
was
> stolen from where. Beware, it's pretty dirty with '#if  1' and '#if     0'
> and other commented out things.
>
>     If you are curious to see if it really works or you want to help
beating
> it to death (in the process of bug hunting ;-), please email me. I will
send
> you Squeak.exe and 33 plugins, excluding SqueakFFIPrims.dll and
> Mpeg3Plugin.dll, you should get these from the official distribution
> (they have been external all time).
>
>     If you have any external plugin of your own, you are encouraged to try
> them with MobVM. I would like to hear your comments. it should be fully
> compatible with Squeak-D3D (625,644 bytes dated May-17-2001).
>
>     The file MobVM.zip is 328KB. I am sorry, it's for Win32 only (tested
> on Win2K Pro, somewhat tested on Win2KAS and WinME. It should just work on
> YourWin ;-)
>
>     Cheers,
>
>     PhiHo
>
> P.S: Please ensure that you do not have the official VM and MobVM in the
> same directory. This should do no harm to MobVM but the official VM will
> just display a black screen because it found the external plugins
(belonging
> to MobVM, requiring a higher minor version for the interpreter) and cannot
> use it (because of the version). The official VM should fall back to the
> internal plugins and proceed as if there were no (useless) external
plugins.
> Andreas, please consider this as a bug report ;-)
>
>
>





More information about the Squeak-dev mailing list