mac VM 3.2.5b7

John M McIntosh johnmci at smalltalkconsulting.com
Wed Mar 6 19:02:42 UTC 2002


>Thanks to John this is now on the ftp site in
>
>ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.2gamma/mac
>
>cheers
>
>bruce

Beware this version of the VM is significantly different inside!

a) Broke sqMacWindow.c into 10 different files by function type.

b) Moved most of the memory allocation logic out of sqMacMain.c into 
sqMacMemory.c. and ensure memory is freed when Squeak is terminated.
The major change in this code is support for OS 9.x virtual memory 
mapping. This only applies to Mac OS 9.2.0 or higher, excluding os-x. 
It appears  Mac OS 9.1 has a bug that prevents this feature from 
working.

For images that require less than 128MB of memory, mapping is used to 
allow the image to grow/shrink to the 128MB boundary, therefore you 
can change the application memory size to about 2MB.

For images that require more than 128MB then change the application 
memory size to > 128MB and mapping will not occur.

If mapping is not available because virtual memory is turned off or 
the api is not supported by the macintosh OS then mapping is not 
used. Note that mapping is not support under the classic os-9.x 
environment under OS-X, however in this case you should be using the 
OS-X version of Squeak, not the classic version.

c) Use of Carbon event logic for OS-X only. This is a major structural change.

It also encouraged the use of a pthread for interp.c.

All user interaction with the VM follows a new code path, so problems 
with keyboard or mouse input should be reported asap. Also any issues 
with application switching, windows being brought to the foreground 
or sent to the background and usage of the full screen logic should 
be reported asap.

As part of this change I have build in support for scroll-wheeled 
multi-button mice under os-x. Thanks to Doug Way for testing this for 
me. Maybe someone can post to the list what their favorite 3 button 
scroll wheeled mouse/trackball is.

d) Use of a carbon call to get the dominate Device if you have 
multiple screens. People with multiple screens should confirm window 
resizing, full screen on/off works as expected.

e) Corrected comment in sqMacFileLogic.c

f) Changes to sqMacNSPlugin.c. This makes it compile, but it's not usable yet.

-- 
--
===========================================================================
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================



More information about the Squeak-dev mailing list