<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Feb 7, 2020 at 11:07 AM David T. Lewis <<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">On Fri, Feb 07, 2020 at 08:41:36AM +0100, Tobias Pape wrote:<br>
> <br>
> > On 07.02.2020, at 03:03, David T. Lewis <<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>> wrote:<br>
> > <br>
> > A 64-bit to 32-bit image converter would be a very good thing to have<br>
> > in our toolkit :-)<br>
> <br>
> Or, you know, making the VMs understand both formats ;)<br>
><br>
<br>
Changing the subject line, because this is really a different topic.<br>
<br>
It is very easy to set up VM to run various image formats. Technically,<br>
it would be hard to do this from a single compiled VM executable, but<br>
fortunately that is not needed. The only requirement is an agreed naming<br>
convention for the installations.<br>
<br>
I've posted a run script to handle this several times over the years, but<br>
the key thing is this:<br>
<br>
  # Scripts for running various interpreters<br>
  INTERP_SCRIPT="squeak"       # Context VM for 32 and 64 bit images<br>
  COG_SCRIPT="cog"             # Cog VM<br>
  SPUR_SCRIPT="spur"           # Spur VM for 32-bit Spur image<br>
  SPUR64_SCRIPT="spur64"       # Spur VM for 64-bit Spur image<br>
<br>
As long as each flavor of VM is installed in a distict directory under<br>
/usr/local/lib/squeak, and as long as the run scripts that point to<br>
those directories have distinct names in /usr/local/bin, then the<br>
selection of a correct VM executable for any given image format is<br>
handled from a single shell script. I call it /usr/local/bin/run on<br>
my PC, hence "$ run squeak.image" for any flavor of squeak.image.<br>
<br>
I can re-post my run script if there is an interest, but it's useless<br>
without establishing a naming convention.<br>
<br>
Is there any interest?<br></blockquote><div><br></div><div>Yes.  I've already gone some way to producing a 64-bit to 32-bit Spur image converter.  The refactored code which shares almost all methods between the 32->64 and 64->32 is committed, and 32->64 works. I'll work on finishing 64->32 when time allows.</div></div><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div></div>