<div dir="ltr">This change set make the project ALMOST load in a 32 bit 6.0 Squeak image.<div>But there are some conversion issues I have not figured out.</div><div><br></div><div>NOTE: Image will probably crash. USE WITH CARE</div><div><br></div><div><br></div><div>Best,</div><div>Karl</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 30, 2018 at 3:37 PM, H. Hirzel <span dir="ltr"><<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Unfortunately the dynamic essay <a href="http://MorphLayoutArticle.019.pr" rel="noreferrer" target="_blank">MorphLayoutArticle.019.pr</a> did not load<br>
in a fairly recent Squeak 6.0a trunk image.<br>
<br>
an OrderedCollection(<wbr>ImageSegment(Object)>><wbr>doesNotUnderstand:<br>
#scanFrom: ObjectScanner>>scanFrom: [] in [] in<br>
MultiByteBinaryOrTextStream(<wbr>PositionableStream)>><wbr>fileInAnnouncing:<br>
BlockClosure>>on:do: [] in<br>
MultiByteBinaryOrTextStream(<wbr>PositionableStream)>><wbr>fileInAnnouncing: []<br>
in [] in MorphicUIManager>><wbr>displayProgress:at:from:to:<wbr>during:<br>
BlockClosure>>on:do: [] in<br>
MorphicUIManager>><wbr>displayProgress:at:from:to:<wbr>during:<br>
BlockClosure>>ensure:<br>
MorphicUIManager>><wbr>displayProgress:at:from:to:<wbr>during:<br>
ProgressInitiationException>><wbr>defaultResumeValue<br>
ProgressInitiationException(<wbr>Exception)>>resume<br>
ProgressInitiationException>><wbr>defaultAction<br>
UndefinedObject>>handleSignal: Context>>handleSignal:<br>
Context>>handleSignal: Context>>handleSignal:<br>
ProgressInitiationException(<wbr>Exception)>>signal<br>
ProgressInitiationException>><wbr>display:at:from:to:during:<br>
ProgressInitiationException class>>display:at:from:to:<wbr>during:<br>
ByteString(String)>><wbr>displayProgressAt:from:to:<wbr>during:<br>
ByteString(String)>><wbr>displayProgressFrom:to:during:<br>
MultiByteBinaryOrTextStream(<wbr>PositionableStream)>><wbr>fileInAnnouncing:<br>
MultiByteBinaryOrTextStream(<wbr>PositionableStream)>>fileIn<br>
MultiByteBinaryOrTextStream>><wbr>fileInProject<br>
MultiByteBinaryOrTextStream>><wbr>fileInObjectAndCodeForProject [] in [] in<br>
ProjectLoading class>>fileInName:archive:<wbr>morphOrList:<br>
BlockClosure>>on:do: [] in ProjectLoading<br>
class>>fileInName:archive:<wbr>morphOrList: BlockClosure>>ensure:<br>
ProjectLoading class>>fileInName:archive:<wbr>morphOrList: ProjectLoading<br>
class>>openName:stream:<wbr>fromDirectory:withProjectView:<wbr>clearOriginFlag:<br>
ProjectLoading class>>openName:stream:<wbr>fromDirectory:withProjectView:<br>
[] in ProjectLoading class>>openOn: BlockClosure>>on:do: [] in<br>
ByteString(String)>><wbr>displaySequentialProgress: [] in [] in<br>
MorphicUIManager>><wbr>displayProgress:at:from:to:<wbr>during:<br>
BlockClosure>>on:do: [] in<br>
MorphicUIManager>><wbr>displayProgress:at:from:to:<wbr>during:<br>
BlockClosure>>ensure:<br>
MorphicUIManager>><wbr>displayProgress:at:from:to:<wbr>during:<br>
ProgressInitiationException>><wbr>defaultResumeValue<br>
ProgressInitiationException(<wbr>Exception)>>resume<br>
ProgressInitiationException>><wbr>defaultAction<br>
UndefinedObject>>handleSignal:<br>
ProgressInitiationException(<wbr>Exception)>>signal<br>
ProgressInitiationException>><wbr>display:at:from:to:during:<br>
ProgressInitiationException class>>display:at:from:to:<wbr>during:<br>
ProgressInitiationException class>>display:from:to:during:<br>
ByteString(String)>><wbr>displaySequentialProgress: ProjectLoading<br>
class>>openOn: [] in ExternalDropHandler class>>defaultProjectHandler<br>
ExternalDropHandler>>handle:<wbr>in:dropEvent:<br>
PasteUpMorph>><wbr>handleDroppedItem:event: [] in PasteUpMorph>>dropFiles:<br>
BlockClosure>>ensure: PasteUpMorph>>dropFiles:<br>
PasteUpMorph(Morph)>><wbr>handleDropFiles: DropFilesEvent>>sentTo:<br>
PasteUpMorph(Morph)>><wbr>handleEvent:<br>
MorphicEventDispatcher>><wbr>dispatchEvent:withHandler:<wbr>withMorph:<br>
MorphicEventDispatcher>><wbr>dispatchDefault:with:<br>
MorphicEventDispatcher>><wbr>dispatchEvent:with:<br>
PasteUpMorph(Morph)>><wbr>processEvent:using: [] in<br>
PasteUpMorph>>processEvent:<wbr>using: BlockClosure>>ensure:<br>
PasteUpMorph>>processEvent:<wbr>using: PasteUpMorph(Morph)>><wbr>processEvent:<br>
[] in [] in [] in HandMorph>>sendEvent:focus:<wbr>clear:<br>
BlockClosure>>ensure:<br>
DropFilesEvent(MorphicEvent)>><wbr>becomeActiveDuring: [] in [] in<br>
HandMorph>>sendEvent:focus:<wbr>clear: BlockClosure>>ensure:<br>
HandMorph>>becomeActiveDuring: [] in HandMorph>>sendEvent:focus:<wbr>clear:<br>
BlockClosure>>ensure: PasteUpMorph>><wbr>becomeActiveDuring:<br>
HandMorph>>sendEvent:focus:<wbr>clear: HandMorph>>sendEvent:focus:<br>
HandMorph>>handleEvent: HandMorph>>processEvents [] in<br>
WorldState>>doOneCycleNowFor: Array(SequenceableCollection)><wbr>>do:<br>
WorldState>>handsDo: WorldState>>doOneCycleNowFor:<br>
WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in<br>
MorphicProject>><wbr>spawnNewProcess [] in BlockClosure>>newProcess)<br>
<span class="im HOEnZb"><br>
On 4/30/18, H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com">hannes.hirzel@gmail.com</a>> wrote:<br>
</span><div class="HOEnZb"><div class="h5">> Hi Tim<br>
><br>
> Implementing your suggestion [1] worked to make<br>
> <a href="http://MorphLayoutArticle.019.pr" rel="noreferrer" target="_blank">MorphLayoutArticle.019.pr</a> load into<br>
> Squeak 3.8.1, see screen shot.<br>
><br>
> What I aiming at next  at is to load it into Squeak 6.0a trunk. I<br>
> assume this should be possible quite easily because of the<br>
> enhancements done last year [2][3].<br>
><br>
> Regards<br>
> Hannes<br>
><br>
><br>
><br>
><br>
><br>
> [1] Extend #initKnownRenames<br>
><br>
> SmartRefStream>><wbr>initKnownRenames<br>
>       renamed<br>
>           at: #AlansTextPlusMorph put: #TextPlusMorph;<br>
>               at: #FlasherMorph put: #Flasher;<br>
>               yourself<br>
><br>
> made <a href="http://MorphLayoutArticle.019.pr" rel="noreferrer" target="_blank">MorphLayoutArticle.019.pr</a> to load.<br>
><br>
><br>
> [2] 6502 format<br>
> <a href="http://wiki.squeak.org/squeak/6502" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>6502</a><br>
><br>
> ImageFormat of the interpreter Virtual Machine.<br>
> May be loaded transparently into Squeak 6.0a through the help of<br>
> LegacyImageSegment.<br>
><br>
> [3]<br>
> <a href="http://wiki.squeak.org/squeak/6579" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>6579</a><br>
> LegacyImageSegment<br>
> A new class introduced in March 2017 in Squeak 6.0a to enable the<br>
> loading of the older 6502 image segment format type .<br>
><br>
> More see Smalltalk imageFormatVersion  <a href="http://wiki.squeak.org/squeak/873" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>873</a><br>
><br>
><br>
> On 4/30/18, Tm Jhnsn <<a href="mailto:digit@sonic.net">digit@sonic.net</a>> wrote:<br>
>> Hi Hannes,<br>
>><br>
>> In 5.1 there is SmartRefStream>>#<wbr>initKnownRenames which includes:<br>
>><br>
>> at: #AlansTextPlusMorph put: #TextPlusMorph;<br>
>><br>
>> HTH,<br>
>> Tim<br>
>><br>
>><br>
>> On 4/30/2018 7:33 AM, H. Hirzel wrote:<br>
>>> Hi Bob<br>
>>><br>
>>> It still loads fine in Squeak 3.2. Thank you.<br>
>>><br>
>>> In Squeak 3.8.1 the SmartRefStream needs a new class for<br>
>>><br>
>>>       AlansTextPlusMorph<br>
>>><br>
>>><br>
>>> SmartRefStream>><br>
>>> alansTextPlusMorphbosfcebbmsop<wbr>ssrsggshtt0<br>
>>><br>
>>>     ^ PutNewClassHere<br>
>>><br>
>>><br>
>>> Any suggestions what I should put as a new class?<br>
>>><br>
>>> Regards<br>
>>> Hannes<br>
>>><br>
>>><br>
>>><br>
>>><br>
>>> On 4/30/18, Bob Arning <<a href="mailto:arning315@comcast.net">arning315@comcast.net</a>> wrote:<br>
>>>> Here is the latest one I have. It loaded fine in 3.2.<br>
>>>><br>
>>>><br>
>>>> On 4/29/18 10:20 PM, H. Hirzel wrote:<br>
>>>>> Hello<br>
>>>>><br>
>>>>> Is there a backup-copy/mirror available of the<br>
>>>>><br>
>>>>>                   MorphLayoutArticle<br>
>>>>><br>
>>>>> project which was on Bob's SuperSwiki? [1]<br>
>>>>><br>
>>>>> Regards<br>
>>>>> Hannes<br>
>>>>><br>
>>>>><br>
>>>>><br>
>>>>> ------------------------------<wbr>----<br>
>>>>> [1]<br>
>>>>> <a href="http://wiki.squeak.org/squeak/2141" rel="noreferrer" target="_blank">http://wiki.squeak.org/squeak/<wbr>2141</a><br>
>>>>><br>
>>>>> How to lay out submorphs<br>
>>>>><br>
>>>>> Please read the excellent dynamic essay project MorphLayoutArticle<br>
>>>>> (broken link) on Bob's SuperSwiki.<br>
>>>>><br>
>>>>> Every Morph now has the capability to layout it's submorphs.<br>
>>>>> (Previously, only the AlignmentMorph could implement layout policies.<br>
>>>>> AlignmentMorph is still available because of compatibility reasons and<br>
>>>>> some utility methods it implements.<br>
>>>>><br>
>>>><br>
>>>><br>
>>>><br>
>><br>
>><br>
><br>
<br>
</div></div></blockquote></div><br></div>