Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

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

Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

johnmci
I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.

http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip

I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
Open/GL.  I am still doing some further optimization, but people should test this version and let
me know what they find.

Other Fixes.
I think the control-arrow keys should work now, someone test this and let me know.


--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Ken G. Brown
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Tried 'Update Squeak', got 'Error: unmatched string quote' in scanner while processing update.nice.150.mcm and snapshotting methods.
Logs attached.

When Squeak has focus, cntl-arrow keys change Spaces as is normal on MacPro 10.6.4

Ken G. Brown


At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:

>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>
>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>
>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>Open/GL.  I am still doing some further optimization, but people should test this version and let
>me know what they find.
>
>Other Fixes.
>I think the control-arrow keys should work now, someone test this and let me know.
>
>
>--
>===========================================================================
>John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
>Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
>===========================================================================



%update-nice.150-Squeak4.2-10382-alpha.1.image.log (192 bytes) Download Attachment
update-nice.150-Squeak4.2-10382-alpha.1.image.log (4K) Download Attachment
%SqueakDebug.log (172 bytes) Download Attachment
SqueakDebug.log (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

johnmci
Ok, so I have Ken Brown  & Mariano Martinez Peck saying  the cntl-arrow keys work, and Tudor Girba saying they don't work.
Obviously I need someone to document the behaviour in a 4.x VM and then in 5.8b4 so we understand what happens or doesn't happen.


On 2010-08-29, at 7:45 AM, Ken G. Brown wrote:

> ...
> When Squeak has focus, cntl-arrow keys change Spaces as is normal on MacPro 10.6.4
>
> Ken G. Brown
>

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

johnmci
In reply to this post by johnmci

On 2010-08-29, at 4:57 AM, Tudor Girba wrote:

> What are the implications of these optimizations? By the sound of it they should influence the rendering. Is that correct? Are there any tests we could do to see the improvements?


You can use the frame rate morphic to observe the rate  rate you get in your application, compare to 4.x.  
Comparing to a 5.7 in 64bit mode may not be fair because with the same open/GL code it does a frame rate 25% better.

I'm also interested in any drawing issues, yes it does lose it's mind when you resize the window (I might fix that someday),
but I'm more concerned about drawing artifacts & visual differences between it now and 4.x
--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Tudor Girba
In reply to this post by johnmci
On 4.2.2beta1 these keys work as expected.

I have to mention that I am still on Mac OS X 10.5.8. Perhaps the  
others are on Snow Leopard. Could that be a difference?

Cheers,
Doru


On 29 Aug 2010, at 19:27, John M McIntosh wrote:

> Ok, so I have Ken Brown  & Mariano Martinez Peck saying  the cntl-
> arrow keys work, and Tudor Girba saying they don't work.
> Obviously I need someone to document the behaviour in a 4.x VM and  
> then in 5.8b4 so we understand what happens or doesn't happen.
>
>
> On 2010-08-29, at 7:45 AM, Ken G. Brown wrote:
>
>> ...
>> When Squeak has focus, cntl-arrow keys change Spaces as is normal  
>> on MacPro 10.6.4
>>
>> Ken G. Brown
>>
>
> --
> =
> =
> =
> =
> =
> ======================================================================
> John M. McIntosh <[hidden email]>   Twitter:  
> squeaker68882
> Corporate Smalltalk Consulting Ltd.  http://
> www.smalltalkconsulting.com
> =
> =
> =
> =
> =
> ======================================================================
>
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
www.tudorgirba.com

"Be rather willing to give than demanding to get."




Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

johnmci
Ah, yes this is a functional change between 10.5 and 10.6

Can you document a test case for me in a 4.x squeak VM so I can figure out what to do for the 10.5 users


On 2010-08-29, at 10:37 AM, Tudor Girba wrote:

> On 4.2.2beta1 these keys work as expected.
>
> I have to mention that I am still on Mac OS X 10.5.8. Perhaps the others are on Snow Leopard. Could that be a difference?
>
> Cheers,
> Doru

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Tudor Girba
Hi,

On 29 Aug 2010, at 19:44, John M McIntosh wrote:

> Ah, yes this is a functional change between 10.5 and 10.6
>
> Can you document a test case for me in a 4.x squeak VM so I can  
> figure out what to do for the 10.5 users

How exactly should I do that?

I just checked in a 4.2.2 and everything works as expected.

Cheers,
Doru

>
> On 2010-08-29, at 10:37 AM, Tudor Girba wrote:
>
>> On 4.2.2beta1 these keys work as expected.
>>
>> I have to mention that I am still on Mac OS X 10.5.8. Perhaps the  
>> others are on Snow Leopard. Could that be a difference?
>>
>> Cheers,
>> Doru
>
> --
> =
> =
> =
> =
> =
> ======================================================================
> John M. McIntosh <[hidden email]>   Twitter:  
> squeaker68882
> Corporate Smalltalk Consulting Ltd.  http://
> www.smalltalkconsulting.com
> =
> =
> =
> =
> =
> ======================================================================
>
>
>
>

--
www.tudorgirba.com

"Speaking louder won't make the point worthier."


Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Ken G. Brown
In reply to this post by johnmci
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Cool! Can now resize the window to extend all the way to the right of the third monitor. Have 30" (2048x1280), 20"(1280x960), 20"(1280x960).

Not sure what the logic is that it uses to decide which monitor to fill when you click the green '+' button.
Seems like if the left hand side of the Squeak window is on the left screen, and more than a certain amount is on the middle screen, it resizes to the middle. If the right extends to the right of the right screen, it resizes to the right screen unless the left hand side of the window is closer to the left side of the left screen, then it resizes to the left. Doesn't seem to make complete sense.

Full screen on in Squeak World/Appearance seems to follow the same logic for which screen to end up full screen on.
More than likely I suppose this is OS determined.

Yes, get the artifacts when resizing the Squeak window. At least they go away when operation is complete.

Anything in particular you want me to try?

Ken G. Brown


At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:

>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>
>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>
>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>Open/GL.  I am still doing some further optimization, but people should test this version and let
>me know what they find.
>
>Other Fixes.
>I think the control-arrow keys should work now, someone test this and let me know.
>
>
>--
>===========================================================================
>John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
>Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
>===========================================================================


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

johnmci
In reply to this post by Tudor Girba
Ok, well I have no idea what you are using control-arrow-left key for.
if you bring up a browser window, place the cursor in the text entry input field then?
What do you expect to happen when you tap certain keys?

On 2010-08-29, at 10:50 AM, Tudor Girba wrote:

> Hi,
>
> On 29 Aug 2010, at 19:44, John M McIntosh wrote:
>
>> Ah, yes this is a functional change between 10.5 and 10.6
>>
>> Can you document a test case for me in a 4.x squeak VM so I can figure out what to do for the 10.5 users
>
> How exactly should I do that?
>
> I just checked in a 4.2.2 and everything works as expected.
>
> Cheers,
> Doru

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Tudor Girba
Ahh, I see.

I expect it to jump between words. On regular Mac applications, you  
get this behavior by pressing alt-arrow.

And when I press shift-ctrl-arrow, I expect it to select up to the end  
of the word. On regular Mac applications, you get this behavior by  
pressing alt-shift-arrow.

Of course, I would not mind if instead of ctrl we would have alt :).

Cheers,
Doru


On 29 Aug 2010, at 20:52, John M McIntosh wrote:

> Ok, well I have no idea what you are using control-arrow-left key for.
> if you bring up a browser window, place the cursor in the text entry  
> input field then?
> What do you expect to happen when you tap certain keys?
>
> On 2010-08-29, at 10:50 AM, Tudor Girba wrote:
>
>> Hi,
>>
>> On 29 Aug 2010, at 19:44, John M McIntosh wrote:
>>
>>> Ah, yes this is a functional change between 10.5 and 10.6
>>>
>>> Can you document a test case for me in a 4.x squeak VM so I can  
>>> figure out what to do for the 10.5 users
>>
>> How exactly should I do that?
>>
>> I just checked in a 4.2.2 and everything works as expected.
>>
>> Cheers,
>> Doru
>
> --
> =
> =
> =
> =
> =
> ======================================================================
> John M. McIntosh <[hidden email]>   Twitter:  
> squeaker68882
> Corporate Smalltalk Consulting Ltd.  http://
> www.smalltalkconsulting.com
> =
> =
> =
> =
> =
> ======================================================================
>
>
>
>

--
www.tudorgirba.com

"Next time you see your life passing by, say 'hi' and get to know her."




Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Mariano Martinez Peck
In reply to this post by Tudor Girba


On Sun, Aug 29, 2010 at 7:37 PM, Tudor Girba <[hidden email]> wrote:
On 4.2.2beta1 these keys work as expected.

I have to mention that I am still on Mac OS X 10.5.8. Perhaps the others are on Snow Leopard. Could that be a difference?


I am in 10.6.4
 
Cheers,
Doru



On 29 Aug 2010, at 19:27, John M McIntosh wrote:

Ok, so I have Ken Brown  & Mariano Martinez Peck saying  the cntl-arrow keys work, and Tudor Girba saying they don't work.
Obviously I need someone to document the behaviour in a 4.x VM and then in 5.8b4 so we understand what happens or doesn't happen.


On 2010-08-29, at 7:45 AM, Ken G. Brown wrote:

...
When Squeak has focus, cntl-arrow keys change Spaces as is normal on MacPro 10.6.4

Ken G. Brown


--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
www.tudorgirba.com

"Be rather willing to give than demanding to get."





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Ken G. Brown
In reply to this post by Ken G. Brown
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Open Monticello Browser from World menu.
+Repository select HTTP, Accept. click 'Open' with http://www.squeaksource.com/ selected.
Get 'Error: Could not access http://www.squeaksource.com/'

http://www.squeaksource.com/ is accessible from Safari.

SqueakDebug.log is attached.

Ken G. Brown

>
>
>At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:
>>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>>
>>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>>
>>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>>Open/GL.  I am still doing some further optimization, but people should test this version and let
>>me know what they find.
>>
>>Other Fixes.
>>I think the control-arrow keys should work now, someone test this and let me know.
>>
>>
>>--
>>===========================================================================
>>John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
>>Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
>>===========================================================================



%SqueakDebug.log (172 bytes) Download Attachment
SqueakDebug.log (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Ken G. Brown
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Open image, do Save As new version. then quit.
Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
Console message:
10/08/29 1:51:57 PM [0x0-0x2fe2fe].org.squeak.Squeak[8275] This interpreter (vers. 6502) cannot read image file (vers. 6505).

Ken G. Brown

> >
>>
>>At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:
>>>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>>>
>>>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>>>
>>>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>>>Open/GL.  I am still doing some further optimization, but people should test this version and let
>>>me know what they find.
>>>
>>>Other Fixes.
>>>I think the control-arrow keys should work now, someone test this and let me know.
>>>
>>>
>>>--
>>>===========================================================================
>>>John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
>>>Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
>>>===========================================================================
>
>Attachment converted: MacProHD0:SqueakDebug 51.log (TEXT/R*ch) (079F0B79)


Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Nicolas Cellier
In reply to this post by johnmci
In flagrante delicto cogitandum

Well, I've lost my latin, but you might understand it nevertheless

Nicolas

2010/8/29 Ken G. Brown <[hidden email]>:

> Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.
>
> Open image, do Save As new version. then quit.
> Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
> Console message:
> 10/08/29 1:51:57 PM     [0x0-0x2fe2fe].org.squeak.Squeak[8275]  This interpreter (vers. 6502) cannot read image file (vers. 6505).
>
> Ken G. Brown
>
>> >
>>>
>>>At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:
>>>>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>>>>
>>>>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>>>>
>>>>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>>>>Open/GL.  I am still doing some further optimization, but people should test this version and let
>>>>me know what they find.
>>>>
>>>>Other Fixes.
>>>>I think the control-arrow keys should work now, someone test this and let me know.
>>>>
>>>>
>>>>--
>>>>===========================================================================
>>>>John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
>>>>Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
>>>>===========================================================================
>>
>>Attachment converted: MacProHD0:SqueakDebug 51.log (TEXT/R*ch) (079F0B79)
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Eliot Miranda-2
In reply to this post by johnmci


On Sun, Aug 29, 2010 at 12:56 PM, Ken G. Brown <[hidden email]> wrote:
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Open image, do Save As new version. then quit.
Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
Console message:
10/08/29 1:51:57 PM     [0x0-0x2fe2fe].org.squeak.Squeak[8275]  This interpreter (vers. 6502) cannot read image file (vers. 6505).

John's  5.8b4 is a Cog VM.  Once an image is saved on Cog it will only run on a Cog VM.

cheers
Eliot


Ken G. Brown

> >
>>
>>At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:
>>>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>>>
>>>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>>>
>>>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>>>Open/GL.  I am still doing some further optimization, but people should test this version and let
>>>me know what they find.
>>>
>>>Other Fixes.
>>>I think the control-arrow keys should work now, someone test this and let me know.
>>>
>>>
>>>--
>>>===========================================================================
>>>John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
>>>Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
>>>===========================================================================
>
>Attachment converted: MacProHD0:SqueakDebug 51.log (TEXT/R*ch) (079F0B79)





Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Bert Freudenberg

On 29.08.2010, at 22:22, Eliot Miranda wrote:



On Sun, Aug 29, 2010 at 12:56 PM, Ken G. Brown <[hidden email]> wrote:
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Open image, do Save As new version. then quit.
Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
Console message:
10/08/29 1:51:57 PM     [0x0-0x2fe2fe].org.squeak.Squeak[8275]  This interpreter (vers. 6502) cannot read image file (vers. 6505).

John's  5.8b4 is a Cog VM.  Once an image is saved on Cog it will only run on a Cog VM.

cheers
Eliot

I'm sure you mentioned it before, but where can I read about the image format changes?

- Bert -




Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Eliot Miranda-2


On Sun, Aug 29, 2010 at 1:31 PM, Bert Freudenberg <[hidden email]> wrote:

On 29.08.2010, at 22:22, Eliot Miranda wrote:



On Sun, Aug 29, 2010 at 12:56 PM, Ken G. Brown <[hidden email]> wrote:
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Open image, do Save As new version. then quit.
Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
Console message:
10/08/29 1:51:57 PM     [0x0-0x2fe2fe].org.squeak.Squeak[8275]  This interpreter (vers. 6502) cannot read image file (vers. 6505).

John's  5.8b4 is a Cog VM.  Once an image is saved on Cog it will only run on a Cog VM.

cheers
Eliot

I'm sure you mentioned it before, but where can I read about the image format changes?

Lazily I've yet to write this up.  But I think the only change above and beyond support for the closure bytecodes (and not using BlockContext at all) is that image float order now depends on platform, so on x86 it is little-endian; this was forced by the JIT implementation of floating-point arithmetic (its hard to byte swap efficiently given the lack of sophistication of the code generator), and by my not wanting to waste cycles converting to/from big-endian byte order on image load/save or image segment export.  Bit 1 of the image header flags word (which used to contain only the full screen flag) is 1 if the image's floats are little-endian.  So the existing VMs would need to read and write this bit and either convert back to big-endian or copy the Cog VMs in keeping floats in platform-specific order.  For me throwing performance away on each floating-point op on x86 is a heinous sin, so at least internally floats should be little-endian.  The basicAt: & basicAt:put: primitives 38 & 39 need to be implemented to present floats as big endian to the image level.

There are other changes to the image header, using unused bits and fields to store Cog-specific info and it would be convenient if the standard VMs preserve these fields.  But they don't prevent loading on a standard VM; IIRC only the float-order changes would cause errors running a Cog image on a closure-enabled Interpreter VM.

If people think this is important enough I could put together a change set for VMMaker that includes the relevant changes (to image load/save, floating-point arithmetic, image segment load/store and float at:/at:put:).

best
Eliot



- Bert -








Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] [squeak-dev] Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

johnmci
In reply to this post by Tudor Girba
Ok, you are mixing two issues here

(a) I need to make the 5.8 behaviour the same as the 4.2.x VM behaviour.
 
(b) Once we have the same behaviour then you are welcome to propose changing the smalltalk text editor code to make the cursor and word
selection dance however you or the community would like it to...


On 2010-08-29, at 11:55 AM, Tudor Girba wrote:

> Ahh, I see.
>
> I expect it to jump between words. On regular Mac applications, you get this behavior by pressing alt-arrow.
>
> And when I press shift-ctrl-arrow, I expect it to select up to the end of the word. On regular Mac applications, you get this behavior by pressing alt-shift-arrow.
>
> Of course, I would not mind if instead of ctrl we would have alt :).
>
> Cheers,
> Doru
>

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

Ken G. Brown
In reply to this post by Eliot Miranda-2
Might it be desirable at this point to change the extension to .cogimage or some such thing to avoid confusion in the future?
Isn't this a bit like requiring a different program to open a certain file type?

Ken G. Brown

At 1:22 PM -0700 8/29/10, Eliot Miranda apparently wrote:

>On Sun, Aug 29, 2010 at 12:56 PM, Ken G. Brown <<mailto:[hidden email]>[hidden email]> wrote:
>
>Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.
>
>Open image, do Save As new version. then quit.
>Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
>Console message:
>10/08/29 1:51:57 PM     [0x0-0x2fe2fe].org.squeak.Squeak[8275]  This interpreter (vers. 6502) cannot read image file (vers. 6505).
>
>
>John's  5.8b4 is a Cog VM.  Once an image is saved on Cog it will only run on a Cog VM.
>
>cheers
>Eliot
>
>
>Ken G. Brown
>
>> >
>>>
>>>At 5:39 PM -0700 8/28/10, John M McIntosh apparently wrote:
>>>>I've stuck a version (5.8b4) of the cocoa based os-x squeak cog JIT based VM in my experimental folder.
>>>>
>>>><http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip>http://homepage.mac.com/johnmci/.Public/experimental/Squeak%205.8b4.app.zip
>>>>
>>>>I spent the last two days becoming very familiar with Open/GL and rewrote the display logic to use
>>>>Open/GL.  I am still doing some further optimization, but people should test this version and let
>>>>me know what they find.
>>>>
>>>>Other Fixes.
>>>>I think the control-arrow keys should work now, someone test this and let me know.
>>>>
>>>>
>>>>--
>>>>===========================================================================
>>>>John M. McIntosh <<mailto:[hidden email]>[hidden email]>   Twitter:  squeaker68882
>>>>Corporate Smalltalk Consulting Ltd.  <http://www.smalltalkconsulting.com>http://www.smalltalkconsulting.com
>>>>===========================================================================
> >
>
> >Attachment converted: MacProHD0:SqueakDebug 51.log (TEXT/R*ch) (079F0B79)


Reply | Threaded
Open this post in threaded view
|

Re: Experimental Cocoa OS-X based Squeak Cog JIT VM 5.8b4.

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

On 29.08.2010, at 23:02, Eliot Miranda wrote:



On Sun, Aug 29, 2010 at 1:31 PM, Bert Freudenberg <[hidden email]> wrote:

On 29.08.2010, at 22:22, Eliot Miranda wrote:



On Sun, Aug 29, 2010 at 12:56 PM, Ken G. Brown <[hidden email]> wrote:
Running a fresh Squeak4.2-10382-alpha on your latest 5.8b4.

Open image, do Save As new version. then quit.
Attempt to open saved new version image on Squeak 4.2.4beta1U.app by dragging and dropping on VM, it does not open.
Console message:
10/08/29 1:51:57 PM     [0x0-0x2fe2fe].org.squeak.Squeak[8275]  This interpreter (vers. 6502) cannot read image file (vers. 6505).

John's  5.8b4 is a Cog VM.  Once an image is saved on Cog it will only run on a Cog VM.

cheers
Eliot

I'm sure you mentioned it before, but where can I read about the image format changes?

Lazily I've yet to write this up.  But I think the only change above and beyond support for the closure bytecodes (and not using BlockContext at all) is that image float order now depends on platform, so on x86 it is little-endian; this was forced by the JIT implementation of floating-point arithmetic (its hard to byte swap efficiently given the lack of sophistication of the code generator), and by my not wanting to waste cycles converting to/from big-endian byte order on image load/save or image segment export.  Bit 1 of the image header flags word (which used to contain only the full screen flag) is 1 if the image's floats are little-endian.  So the existing VMs would need to read and write this bit and either convert back to big-endian or copy the Cog VMs in keeping floats in platform-specific order.  For me throwing performance away on each floating-point op on x86 is a heinous sin, so at least internally floats should be little-endian.  The basicAt: & basicAt:put: primitives 38 & 39 need to be implemented to present floats as big endian to the image level.

There are other changes to the image header, using unused bits and fields to store Cog-specific info and it would be convenient if the standard VMs preserve these fields.  But they don't prevent loading on a standard VM; IIRC only the float-order changes would cause errors running a Cog image on a closure-enabled Interpreter VM.

If people think this is important enough I could put together a change set for VMMaker that includes the relevant changes (to image load/save, floating-point arithmetic, image segment load/store and float at:/at:put:).

best
Eliot

If it's really so easy to make the regular VM work with that image, couldn't we just do it and not even bump the format?

- Bert -




12