All-in-one VM for 4.4?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
51 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Darius Clarke
As long as the size and number of colors is the same, I think one can automate a byte-by-byte find and replace of it in the .exe file. 


On Tue, Mar 5, 2013 at 4:32 PM, Darius Clarke <[hidden email]> wrote:


Hmm, there are almost certainly tools that can edit the relevant parts but they're going to be of low utility unless they can be scripted. Quite why everybody chose to make that part of developing so annoying I'll never understand. Acorn simply nailed it in 1989 and everyone should have just heaved a sigh of relief and copied it.


Here's an interactive one in a pinch. The source is in Delphi if one wants to read the essential parts to automate:

- Darius 



Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

David T. Lewis
In reply to this post by Eliot Miranda-2
On Tue, Mar 05, 2013 at 01:39:36PM -0800, Eliot Miranda wrote:
>
> Makes sense to me.  The Interpreter VMs can now load Cog-saved images,
> right David?

Yes, it is completely safe to mix and match VMs. If you save your image from
Cog, you will be able to run it again on an interpreter VM and vice versa.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Tobias Pape
In reply to this post by Bert Freudenberg
Am 05.03.2013 um 22:43 schrieb Bert Freudenberg <[hidden email]>:

> On 2013-03-05, at 22:16, Eliot Miranda <[hidden email]> wrote:
>
>> On Tue, Mar 5, 2013 at 1:13 PM, Paul DeBruicker <[hidden email]> wrote:
>>
>> The links for the Mac  vm's from here: http://squeakvm.org/mac/ are broken.
>> Is there another place to find the interpreter VM for mac?
>>
>>  
>>
>> I found this one on the Pharo CI
>> http://pharo.gforge.inria.fr/ci/vm/stack/mac/  Is that the one to use for
>> Mac?
>
> Please don't use VMs from random websites. I know Pharo's CI is not exactly random, but so far we have used the VMs from the official maintainers at squeakvm.org and we should not light-heartedly change that.
>
>> No.  That's a stack VM.  John, are you still building Mac Interpreter VMs?  If so, where are they?
>
> There has been no official interpreter VM release after John's 4.2 series. The latest is Squeak 4.2.5beta1U. These are the only Mac VMs that still work on PowerPC Macs. (we do get reports from US schools that still use those).
>

That's Carbon-Based.

What about the 5.4.7.1, which is cocoa based. ?
It should do on ppc-based macs, still.

Best
        -tobias
Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Bert Freudenberg

On 2013-03-06, at 08:31, Tobias Pape <[hidden email]> wrote:

> Am 05.03.2013 um 22:43 schrieb Bert Freudenberg <[hidden email]>:
>
>> On 2013-03-05, at 22:16, Eliot Miranda <[hidden email]> wrote:
>>
>>> On Tue, Mar 5, 2013 at 1:13 PM, Paul DeBruicker <[hidden email]> wrote:
>>>
>>> The links for the Mac  vm's from here: http://squeakvm.org/mac/ are broken.
>>> Is there another place to find the interpreter VM for mac?
>>>
>>>
>>>
>>> I found this one on the Pharo CI
>>> http://pharo.gforge.inria.fr/ci/vm/stack/mac/  Is that the one to use for
>>> Mac?
>>
>> Please don't use VMs from random websites. I know Pharo's CI is not exactly random, but so far we have used the VMs from the official maintainers at squeakvm.org and we should not light-heartedly change that.
>>
>>> No.  That's a stack VM.  John, are you still building Mac Interpreter VMs?  If so, where are they?
>>
>> There has been no official interpreter VM release after John's 4.2 series. The latest is Squeak 4.2.5beta1U. These are the only Mac VMs that still work on PowerPC Macs. (we do get reports from US schools that still use those).
>>
>
> That's Carbon-Based.
>
> What about the 5.4.7.1, which is cocoa based. ?
> It should do on ppc-based macs, still.
>
> Best
> -tobias


It is a fat binary, true, but John didn't ever get to finish it. E.g., the display doesn't work correctly in 16 bpp.

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Tobias Pape
Am 06.03.2013 um 13:46 schrieb Bert Freudenberg <[hidden email]>:

>
> On 2013-03-06, at 08:31, Tobias Pape <[hidden email]> wrote:
>
>> Am 05.03.2013 um 22:43 schrieb Bert Freudenberg <[hidden email]>:
>>
>>> On 2013-03-05, at 22:16, Eliot Miranda <[hidden email]> wrote:
>>>
>>>
>>> Please don't use VMs from random websites. I know Pharo's CI is not exactly random, but so far we have used the VMs from the official maintainers at squeakvm.org and we should not light-heartedly change that.
>>>
>>>
>>> There has been no official interpreter VM release after John's 4.2 series. The latest is Squeak 4.2.5beta1U. These are the only Mac VMs that still work on PowerPC Macs. (we do get reports from US schools that still use those).
>>>
>>
>> That's Carbon-Based.
>>
>> What about the 5.4.7.1, which is cocoa based. ?
>> It should do on ppc-based macs, still.
>>
>> Best
>> -tobias
>
>
> It is a fat binary, true, but John didn't ever get to finish it. E.g., the display doesn't work correctly in 16 bpp.


:O

I was under the impression, that 5.4.7.1 was the
latest, recommended non-Cog VM for mac… go figure

Best
        -tObias



Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

dcorking
I read Paul's lists of external plugins. Thanks: I, for one,
appreciate the attention to detail.

(1) I recall that there was a plan to include the four Scratch
plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
in the image that requires them, but they may encourage interesting
new packages, or smooth the way for the port of Etoys to trunk.

Please consider adding them in 4.4 or 4.5 all-in-ones.

(2) Cog VMs list of externals seem shorter. Unless Eliot has built the
others as internals, Cog VMs may miss important functionality. For
example, Linux users could get crashes without the pulse audio plugin.
(There are workarounds in one version of Bert's launcher script, but I
don't know if they are well tested, or if that version of the script
can be included in the All-in-One.) I think all platforms will miss
Kedama.

Please mention in the release notes that (for now) users who download
the Cog all-in-one will trade functionality for speed.

(3) Tobias Pape wrote:
> I was under the impression, that 5.4.7.1 was the
> latest, recommended non-Cog VM for mac… go figure

I think Bert has advised you correctly. My recollection is that the
"Cocoa Interpreter VM" line of development was abandoned in favour of
the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
made it difficult to achieve quite the same level of quality as the
'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
Squeak 4.2.5beta1U.app as linked works fine in OS X.

(I think http://squeakvm.org/mac/ might benefit moving 'Cocoa VM'
further down the page.)

(4) Isn't there a stub version of HostWindow for Mac and Win? Should
that be in the VMs?

Please educate me if I have the wrong end of the stick in any of my 4 comments.

Have fun! David

Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Tobias Pape
Am 06.03.2013 um 18:06 schrieb David Corking <[hidden email]>:

> I read Paul's lists of external plugins. Thanks: I, for one,
> appreciate the attention to detail.
>
> (1) I recall that there was a plan to include the four Scratch
> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
> in the image that requires them, but they may encourage interesting
> new packages, or smooth the way for the port of Etoys to trunk.
>
> Please consider adding them in 4.4 or 4.5 all-in-ones.
>
> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
> others as internals, Cog VMs may miss important functionality. For
> example, Linux users could get crashes without the pulse audio plugin.
> (There are workarounds in one version of Bert's launcher script, but I
> don't know if they are well tested, or if that version of the script
> can be included in the All-in-One.) I think all platforms will miss
> Kedama.
>
> Please mention in the release notes that (for now) users who download
> the Cog all-in-one will trade functionality for speed.
>
> (3) Tobias Pape wrote:
>> I was under the impression, that 5.4.7.1 was the
>> latest, recommended non-Cog VM for mac… go figure
>
> I think Bert has advised you correctly. My recollection is that the
> "Cocoa Interpreter VM" line of development was abandoned in favour of
> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
> made it difficult to achieve quite the same level of quality as the
> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>

Now I am quite puzzled. The sqMacMain.c of the Carbon VM states quite clearly:

#error Hi, you are building an obsolete version of the macintosh VM.
#error Instead use the xCode projects found in the iOS folder
#error Remove these error defines if you really need to build this obsolete 4.x VM

(as of SVN revision 2287)

> (I think http://squeakvm.org/mac/ might benefit moving 'Cocoa VM'
> further down the page.)
>
> (4) Isn't there a stub version of HostWindow for Mac and Win? Should
> that be in the VMs?
>
> Please educate me if I have the wrong end of the stick in any of my 4 comments.


Best
        -Tobias
Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Eliot Miranda-2
In reply to this post by Bert Freudenberg
Thanks!!

On Tue, Mar 5, 2013 at 4:11 PM, Bert Freudenberg <[hidden email]> wrote:

On 2013-03-06, at 00:56, Colin Putney <[hidden email]> wrote:




On Tue, Mar 5, 2013 at 3:51 PM, Bert Freudenberg <[hidden email]> wrote:
 Not particularly proposing red, any color except these two would be fine with me.

Green!


- Bert -








--
best,
Eliot


Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Eliot Miranda-2
In reply to this post by dcorking
Hi David,

    I'm very happy to build new plugins.  Cog was developed with the set of plugins that Qwaq/Teleplace used so the current set is a historical accident.  However I'd appreciate any and all help in deciding which ones are needed and updating the build scripts to make then.

Eliot (phone)

On Mar 6, 2013, at 9:06 AM, David Corking <[hidden email]> wrote:

> I read Paul's lists of external plugins. Thanks: I, for one,
> appreciate the attention to detail.
>
> (1) I recall that there was a plan to include the four Scratch
> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
> in the image that requires them, but they may encourage interesting
> new packages, or smooth the way for the port of Etoys to trunk.
>
> Please consider adding them in 4.4 or 4.5 all-in-ones.
>
> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
> others as internals, Cog VMs may miss important functionality. For
> example, Linux users could get crashes without the pulse audio plugin.
> (There are workarounds in one version of Bert's launcher script, but I
> don't know if they are well tested, or if that version of the script
> can be included in the All-in-One.) I think all platforms will miss
> Kedama.
>
> Please mention in the release notes that (for now) users who download
> the Cog all-in-one will trade functionality for speed.
>
> (3) Tobias Pape wrote:
>> I was under the impression, that 5.4.7.1 was the
>> latest, recommended non-Cog VM for mac… go figure
>
> I think Bert has advised you correctly. My recollection is that the
> "Cocoa Interpreter VM" line of development was abandoned in favour of
> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
> made it difficult to achieve quite the same level of quality as the
> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>
> (I think http://squeakvm.org/mac/ might benefit moving 'Cocoa VM'
> further down the page.)
>
> (4) Isn't there a stub version of HostWindow for Mac and Win? Should
> that be in the VMs?
>
> Please educate me if I have the wrong end of the stick in any of my 4 comments.
>
> Have fun! David
>

Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

timrowledge

On 06-03-2013, at 5:07 PM, Eliot Miranda <[hidden email]> wrote:

> Hi David,
>
>    I'm very happy to build new plugins.  Cog was developed with the set of plugins that Qwaq/Teleplace used so the current set is a historical accident.  However I'd appreciate any and all help in deciding which ones are needed and updating the build scripts to make then.

Best bet is to build every one that you can, given available time & OS support. Which, yeah, is "I want it now!" written a little more politely.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Useful random insult:- Understands English as well as any parrot.



Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

David T. Lewis
In reply to this post by Eliot Miranda-2
On Wed, Mar 06, 2013 at 05:07:43PM -0800, Eliot Miranda wrote:
>
> I'm very happy to build new plugins.  Cog was developed with the set of plugins that Qwaq/Teleplace used so the current set is a historical accident.  However I'd appreciate any and all help in deciding which ones are needed and updating the build scripts to make then.
>
> Eliot (phone)


For reference, the default configuration for a Unix VM as distributed by Ian on
the squeakvm.org/unix page is as follows (I think this is correct, but any errors
are mine, not Ian's):

defaultUnixSpec
        "Typical VMMaker spec for a unix/linux target platform"

        "VMMakerTool defaultUnixSpec"

        ^#(
                #( "internal plugins"
                        #ADPCMCodecPlugin
                        #AsynchFilePlugin
                        #BMPReadWriterPlugin
                        #BalloonEnginePlugin
                        #BitBltSimulation
                        #CroquetPlugin
                        #DSAPlugin
                        #DeflatePlugin
                        #DropPlugin
                        #FFTPlugin
                        #FT2Plugin
                        #FilePlugin
                        #FloatArrayPlugin
                        #FloatMathPlugin
                        #GeniePlugin
                        #JPEGReadWriter2Plugin
                        #JPEGReaderPlugin
                        #JoystickTabletPlugin
                        #KlattSynthesizerPlugin
                        #LargeIntegersPlugin
                        #LocalePlugin
                        #MD5Plugin
                        #Matrix2x3Plugin
                        #MiscPrimitivePlugin
                        #RandPlugin
                        #RePlugin
                        #SHA256Plugin
                        #SecurityPlugin
                        #SerialPlugin
                        #SlangTestPlugin
                        #SlangTestSupportPlugin
                        #SocketPlugin
                        #SoundCodecPlugin
                        #SoundGenerationPlugin
                        #SoundPlugin
                        #StarSqueakPlugin
                        #SurfacePlugin
                )
                #( "external plugins"
                        #B3DAcceleratorPlugin
                        #B3DEnginePlugin
                        #ClipboardExtendedPlugin
                        #DBusPlugin
                        #FFIPlugin
                        #FileCopyPlugin
                        #GStreamerPlugin
                        #HostWindowPlugin
                        #KedamaPlugin
                        #KedamaPlugin2
                        #MIDIPlugin
                        #Mpeg3Plugin
                        #RomePlugin
                        #UUIDPlugin
                        #UnixAioPlugin
                        #UnixOSProcessPlugin
                        #XDisplayControlPlugin
                        #CameraPlugin
                        #ScratchPlugin
                        #UnicodePlugin
                        #WeDoPlugin
                )
                true "inline flag"
                false "forBrowser flag"
                'unix' "platform"
                'src' "source directory for generated sources"
                'platforms' "path to platform sources"
                4 "unused, was bytesPerWord which is now a compile time definition"
                true "unused, was flag for source directory pathname is relative"
                true "unused, was flag for platforms directory path is relative"
                'Interpreter' "interpreter class name"
        )




Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

timrowledge

On 06-03-2013, at 5:32 PM, "David T. Lewis" <[hidden email]> wrote:

> ^#(
> #( "internal plugins"
> #ADPCMCodecPlugin
> #AsynchFilePlugin
> #BMPReadWriterPlugin
> #BalloonEnginePlugin
> #BitBltSimulation
> #CroquetPlugin
> #DSAPlugin
> #DeflatePlugin
> #DropPlugin
> #FFTPlugin
> #FT2Plugin
> #FilePlugin
> #FloatArrayPlugin
> #FloatMathPlugin
> #GeniePlugin
> #JPEGReadWriter2Plugin
> #JPEGReaderPlugin
> #JoystickTabletPlugin
> #KlattSynthesizerPlugin
> #LargeIntegersPlugin
> #LocalePlugin
> #MD5Plugin
> #Matrix2x3Plugin
> #MiscPrimitivePlugin
> #RandPlugin
> #RePlugin
> #SHA256Plugin
> #SecurityPlugin
> #SerialPlugin
> #SlangTestPlugin
> #SlangTestSupportPlugin
> #SocketPlugin
> #SoundCodecPlugin
> #SoundGenerationPlugin
> #SoundPlugin
> #StarSqueakPlugin
> #SurfacePlugin
> )
> #( "external plugins"
> #B3DAcceleratorPlugin
> #B3DEnginePlugin
> #ClipboardExtendedPlugin
> #DBusPlugin
> #FFIPlugin
> #FileCopyPlugin
> #GStreamerPlugin
> #HostWindowPlugin
> #KedamaPlugin
> #KedamaPlugin2
> #MIDIPlugin
> #Mpeg3Plugin
> #RomePlugin
> #UUIDPlugin
> #UnixAioPlugin
> #UnixOSProcessPlugin
> #XDisplayControlPlugin
> #CameraPlugin
> #ScratchPlugin
> #UnicodePlugin
> #WeDoPlugin
> )
>

Crikey. I don't recognise half of those.

It does raise another interesting question; why internal? Why external? Given the option, what makes a good reason for either option?

On RISC OS I simply make everything external because it makes my build simpler and has no cost in space or performance. What about other platforms?

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Fractured Idiom:- ICH LIEBE RICH - I'm really crazy about having dough



Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

David T. Lewis
On Wed, Mar 06, 2013 at 06:22:02PM -0800, tim Rowledge wrote:
>
> On 06-03-2013, at 5:32 PM, "David T. Lewis" <[hidden email]> wrote:
> > ^#(
> > #( "internal plugins"
...

> > )
> > #( "external plugins"
...

> > )
>
> Crikey. I don't recognise half of those.
>
> It does raise another interesting question; why internal? Why external? Given the option, what makes a good reason for either option?
>
> On RISC OS I simply make everything external because it makes my build simpler and has no cost in space or performance. What about other platforms?

It probably makes no real difference at all, aside from packaging. Internal
plugins reduce clutter in the installation directory. External plugins can
be easily excluded from the runtime environment. For example, OSProcessPlugin
should be external so that it can be deleted if security is a concern.

IIRC, BitBltSimulation and BalloonEnginePlugin need to be built internal, but
aside from that all plugins can be either internal or external at the discretion
of the VM builder.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

J. Vuletich (mail lists)
In reply to this post by Eliot Miranda-2
Hi Eliot,

The Mac interpreter Squeak 4.2.4beta1U.app, preloaded with lots of  
plugins is about 23Mb. The VM might be an order of magnitude larger  
than a dev image! One of the things I really like about Cog is that it  
is a lot smaller. If at all possible, please add any non-essential  
plugins as external. Most people don't need additional plugins. For  
example, RomePlugin, CurlPlugin, FT2Plugin and OggPlugin are bigger  
than Cog itself, and together they are 16MB.

In any case, ClipboardExtendedPlugin is potentially useful for most  
people and really small, although it doesn't exists for Windows.

Thanks,
Juan Vuletich

Quoting Eliot Miranda <[hidden email]>:

> Hi David,
>
>     I'm very happy to build new plugins.  Cog was developed with the  
> set of plugins that Qwaq/Teleplace used so the current set is a  
> historical accident.  However I'd appreciate any and all help in  
> deciding which ones are needed and updating the build scripts to  
> make then.
>
> Eliot (phone)
>
> On Mar 6, 2013, at 9:06 AM, David Corking <[hidden email]> wrote:
>
>> I read Paul's lists of external plugins. Thanks: I, for one,
>> appreciate the attention to detail.
>>
>> (1) I recall that there was a plan to include the four Scratch
>> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
>> in the image that requires them, but they may encourage interesting
>> new packages, or smooth the way for the port of Etoys to trunk.
>>
>> Please consider adding them in 4.4 or 4.5 all-in-ones.
>>
>> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
>> others as internals, Cog VMs may miss important functionality. For
>> example, Linux users could get crashes without the pulse audio plugin.
>> (There are workarounds in one version of Bert's launcher script, but I
>> don't know if they are well tested, or if that version of the script
>> can be included in the All-in-One.) I think all platforms will miss
>> Kedama.
>>
>> Please mention in the release notes that (for now) users who download
>> the Cog all-in-one will trade functionality for speed.
>>
>> (3) Tobias Pape wrote:
>>> I was under the impression, that 5.4.7.1 was the
>>> latest, recommended non-Cog VM for mac… go figure
>>
>> I think Bert has advised you correctly. My recollection is that the
>> "Cocoa Interpreter VM" line of development was abandoned in favour of
>> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
>> made it difficult to achieve quite the same level of quality as the
>> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
>> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>>
>> (I think http://squeakvm.org/mac/ might benefit moving 'Cocoa VM'
>> further down the page.)
>>
>> (4) Isn't there a stub version of HostWindow for Mac and Win? Should
>> that be in the VMs?
>>
>> Please educate me if I have the wrong end of the stick in any of my  
>> 4 comments.
>>
>> Have fun! David
>>
>


Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Bert Freudenberg
In reply to this post by Eliot Miranda-2
On 2013-03-06, at 21:34, Eliot Miranda <[hidden email]> wrote:

Thanks!!

On Tue, Mar 5, 2013 at 4:11 PM, Bert Freudenberg <[hidden email]> wrote:

On 2013-03-06, at 00:56, Colin Putney <[hidden email]> wrote:




On Tue, Mar 5, 2013 at 3:51 PM, Bert Freudenberg <[hidden email]> wrote:
 Not particularly proposing red, any color except these two would be fine with me.

Here's another idea:



(I do have these at 256x256 pixels)

- Bert -




Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Bert Freudenberg
In reply to this post by Tobias Pape
On 2013-03-06, at 18:15, Tobias Pape <[hidden email]> wrote:

> Am 06.03.2013 um 18:06 schrieb David Corking <[hidden email]>:
>
>> I read Paul's lists of external plugins. Thanks: I, for one,
>> appreciate the attention to detail.
>>
>> (1) I recall that there was a plan to include the four Scratch
>> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
>> in the image that requires them, but they may encourage interesting
>> new packages, or smooth the way for the port of Etoys to trunk.
>>
>> Please consider adding them in 4.4 or 4.5 all-in-ones.
>>
>> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
>> others as internals, Cog VMs may miss important functionality. For
>> example, Linux users could get crashes without the pulse audio plugin.
>> (There are workarounds in one version of Bert's launcher script, but I
>> don't know if they are well tested, or if that version of the script
>> can be included in the All-in-One.) I think all platforms will miss
>> Kedama.
>>
>> Please mention in the release notes that (for now) users who download
>> the Cog all-in-one will trade functionality for speed.
>>
>> (3) Tobias Pape wrote:
>>> I was under the impression, that 5.4.7.1 was the
>>> latest, recommended non-Cog VM for mac… go figure
>>
>> I think Bert has advised you correctly. My recollection is that the
>> "Cocoa Interpreter VM" line of development was abandoned in favour of
>> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
>> made it difficult to achieve quite the same level of quality as the
>> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
>> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>>
>
> Now I am quite puzzled. The sqMacMain.c of the Carbon VM states quite clearly:
>
> #error Hi, you are building an obsolete version of the macintosh VM.
> #error Instead use the xCode projects found in the iOS folder
> #error Remove these error defines if you really need to build this obsolete 4.x VM
>
> (as of SVN revision 2287)

Nobody built that Mac interpreter VM in ages. Current XCode doesn't even ship a PPC tool chain anymore, so you cannot easily build it even if you wanted. Same for the 5.4.x series really (which also is more than 2 years old).

In short, there is no up-to-date interpreter VM for the Mac, indeed. Nor is there an official one for Windows, unless I'm mistaken. The only current ones are on Linux.

- Bert -


Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Bert Freudenberg
In reply to this post by David T. Lewis

On 2013-03-07, at 05:05, "David T. Lewis" <[hidden email]> wrote:

> On Wed, Mar 06, 2013 at 06:22:02PM -0800, tim Rowledge wrote:
>>
>> On 06-03-2013, at 5:32 PM, "David T. Lewis" <[hidden email]> wrote:
>>> ^#(
>>> #( "internal plugins"
> ...
>
>>> )
>>> #( "external plugins"
> ...
>
>>> )
>>
>> Crikey. I don't recognise half of those.
>>
>> It does raise another interesting question; why internal? Why external? Given the option, what makes a good reason for either option?
>>
>> On RISC OS I simply make everything external because it makes my build simpler and has no cost in space or performance. What about other platforms?
>
> It probably makes no real difference at all, aside from packaging. Internal
> plugins reduce clutter in the installation directory. External plugins can
> be easily excluded from the runtime environment. For example, OSProcessPlugin
> should be external so that it can be deleted if security is a concern.
>
> IIRC, BitBltSimulation and BalloonEnginePlugin need to be built internal, but
> aside from that all plugins can be either internal or external at the discretion
> of the VM builder.
>
> Dave


Some plugins should be built externally because they are dynamically linked with system libraries that may or may not exist on any given system. If they were built internally, then the VM itself would have these dependencies, making its use less universal.

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Bert Freudenberg
In reply to this post by J. Vuletich (mail lists)
On 2013-03-07, at 10:57, "Juan Vuletich (mail lists)" <[hidden email]> wrote:

> Hi Eliot,
>
> The Mac interpreter Squeak 4.2.4beta1U.app, preloaded with lots of plugins is about 23Mb.

That's because it includes more plugins than any other VM, and these are fat binaries for both x86 and PPC.

But you can remove the PPC code easily:

bert$ ditto --rsrc --arch i386 "Squeak 4.2.5beta1U.app"  "Squeak 4.2.5beta1i.app"
bert$ du -h "Squeak 4.2.5beta1"* | grep -v app/
 18M Squeak 4.2.5beta1U.app
9.9M Squeak 4.2.5beta1i.app

Now it's not a "U"niversal app anymore but an "i"ntel only one.

> The VM might be an order of magnitude larger than a dev image! One of the things I really like about Cog is that it is a lot smaller. If at all possible, please add any non-essential plugins as external. Most people don't need additional plugins. For example, RomePlugin, CurlPlugin, FT2Plugin and OggPlugin are bigger than Cog itself, and together they are 16MB.

These are external in the interpreter too, it can easily be trimmed down:

mephisto:Downloads bert$ rm -r "Squeak 4.2.5beta1i.app"/Contents/Resources/{Rome,FT2,Curl,Ogg}*
mephisto:Downloads bert$ du -h "Squeak 4.2.5beta1"* | grep -v app/
 18M Squeak 4.2.5beta1U.app
3.9M Squeak 4.2.5beta1i.app

Btw, if you're serious about reducing the installation footprint, consider shipping a compressed sources file, as we do in Etoys (*.stc).

> In any case, ClipboardExtendedPlugin is potentially useful for most people and really small, although it doesn't exists for Windows.

+1

Copying/pasting images and rich text is nice.

- Bert -

> Thanks,
> Juan Vuletich
>
> Quoting Eliot Miranda <[hidden email]>:
>
>> Hi David,
>>
>>    I'm very happy to build new plugins.  Cog was developed with the set of plugins that Qwaq/Teleplace used so the current set is a historical accident.  However I'd appreciate any and all help in deciding which ones are needed and updating the build scripts to make then.
>>
>> Eliot (phone)
>>
>> On Mar 6, 2013, at 9:06 AM, David Corking <[hidden email]> wrote:
>>
>>> I read Paul's lists of external plugins. Thanks: I, for one,
>>> appreciate the attention to detail.
>>>
>>> (1) I recall that there was a plan to include the four Scratch
>>> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
>>> in the image that requires them, but they may encourage interesting
>>> new packages, or smooth the way for the port of Etoys to trunk.
>>>
>>> Please consider adding them in 4.4 or 4.5 all-in-ones.
>>>
>>> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
>>> others as internals, Cog VMs may miss important functionality. For
>>> example, Linux users could get crashes without the pulse audio plugin.
>>> (There are workarounds in one version of Bert's launcher script, but I
>>> don't know if they are well tested, or if that version of the script
>>> can be included in the All-in-One.) I think all platforms will miss
>>> Kedama.
>>>
>>> Please mention in the release notes that (for now) users who download
>>> the Cog all-in-one will trade functionality for speed.
>>>
>>> (3) Tobias Pape wrote:
>>>> I was under the impression, that 5.4.7.1 was the
>>>> latest, recommended non-Cog VM for mac… go figure
>>>
>>> I think Bert has advised you correctly. My recollection is that the
>>> "Cocoa Interpreter VM" line of development was abandoned in favour of
>>> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
>>> made it difficult to achieve quite the same level of quality as the
>>> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
>>> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>>>
>>> (I think http://squeakvm.org/mac/ might benefit moving 'Cocoa VM'
>>> further down the page.)
>>>
>>> (4) Isn't there a stub version of HostWindow for Mac and Win? Should
>>> that be in the VMs?
>>>
>>> Please educate me if I have the wrong end of the stick in any of my 4 comments.
>>>
>>> Have fun! David
>>>
>>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: All-in-one VM for 4.4?

Tobias Pape
In reply to this post by Bert Freudenberg
Am 07.03.2013 um 14:58 schrieb Bert Freudenberg <[hidden email]>:

> On 2013-03-06, at 18:15, Tobias Pape <[hidden email]> wrote:
>
>> Am 06.03.2013 um 18:06 schrieb David Corking <[hidden email]>:
>>
>>> I read Paul's lists of external plugins. Thanks: I, for one,
>>> appreciate the attention to detail.
>>>
>>> (1) I recall that there was a plan to include the four Scratch
>>> plugins, such as Camera, in Squeak 4.4 . I don't know if we have code
>>> in the image that requires them, but they may encourage interesting
>>> new packages, or smooth the way for the port of Etoys to trunk.
>>>
>>> Please consider adding them in 4.4 or 4.5 all-in-ones.
>>>
>>> (2) Cog VMs list of externals seem shorter. Unless Eliot has built the
>>> others as internals, Cog VMs may miss important functionality. For
>>> example, Linux users could get crashes without the pulse audio plugin.
>>> (There are workarounds in one version of Bert's launcher script, but I
>>> don't know if they are well tested, or if that version of the script
>>> can be included in the All-in-One.) I think all platforms will miss
>>> Kedama.
>>>
>>> Please mention in the release notes that (for now) users who download
>>> the Cog all-in-one will trade functionality for speed.
>>>
>>> (3) Tobias Pape wrote:
>>>
>>> I think Bert has advised you correctly. My recollection is that the
>>> "Cocoa Interpreter VM" line of development was abandoned in favour of
>>> the Cog VM (I remember hearing that Xcode had some idiosyncrasies that
>>> made it difficult to achieve quite the same level of quality as the
>>> 'Carbon VM' but that isn't important now.) The 'Carbon VM' interpreter
>>> Squeak 4.2.5beta1U.app as linked works fine in OS X.
>>>
>>
>> Now I am quite puzzled. The sqMacMain.c of the Carbon VM states quite clearly:
>>
>> #error Hi, you are building an obsolete version of the macintosh VM.
>> #error Instead use the xCode projects found in the iOS folder
>> #error Remove these error defines if you really need to build this obsolete 4.x VM
>>
>> (as of SVN revision 2287)
>
> Nobody built that Mac interpreter VM in ages. Current XCode doesn't even ship a PPC tool chain anymore, so you cannot easily build it even if you wanted. Same for the 5.4.x series really (which also is more than 2 years old).
>

I somehow managed to get a 5.4.x vm built, I wanted to play around with the
grapical backend.

How is the Mac CogVM built, then? Does it use vmmaker platform/iOS or something?
Eliot?

> In short, there is no up-to-date interpreter VM for the Mac, indeed. Nor is there an official one for Windows, unless I'm mistaken. The only current ones are on Linux.

 :(

Best
        -Tobias
Reply | Threaded
Open this post in threaded view
|

Windows interpreter VM (was: All-in-one VM for 4.4?)

David T. Lewis
In reply to this post by Bert Freudenberg
On Thu, Mar 07, 2013 at 02:58:24PM +0100, Bert Freudenberg wrote:
>
> Nobody built that Mac interpreter VM in ages. Current XCode doesn't even ship a PPC tool chain anymore, so you cannot easily build it even if you wanted. Same for the 5.4.x series really (which also is more than 2 years old).
>
> In short, there is no up-to-date interpreter VM for the Mac, indeed. Nor is there an official one for Windows, unless I'm mistaken. The only current ones are on Linux.
>

Regarding the Windows VM, Ian has built an up to date interpreter VM for
Windows and made it available through Andreas' squeakvm.org page here:

  http://squeakvm.org/win32/

This is fully up to date to the same level as the unix VM. It is marked
as a beta release that needs testing, so if any Windows users can please
give it a try, that would be very helpful.

The previous Windows builds are still available at http://squeakvm.org/win32/release,
but those older builds cannot be used with images saved from Cog. So barring
any problems that might arise in testing, the latest build provided by Ian
should now be the recommended version for Windows.

Until or unless we have an alternative plan for carrying on Andreas' work
in the trunk code base, I think we can safely treat this as an official
release.

Dave
 

123