I have a branch on a clone on github:

https://github.com/yoshikiohshima/opensmalltalk-vm/tree/composition-input-fix-2020-Oct

It might be easier to pull from this?  Separately, I'll mail you sqUnixX11.c.

On Tue, Oct 27, 2020 at 9:58 AM Eliot Miranda <eliot.miranda@gmail.com> wrote:
 
Hi Yoshiki,

    on my Mac patch isn't smart enough to decode a git diff.  Can you just email me your platforms/unix/vm-display-X11/sqUnixX11.c and I'll integrate?  Thanks! 

On Tue, Oct 27, 2020 at 8:21 AM Yoshiki Ohshima <Yoshiki.Ohshima@acm.org> wrote:
 
The previous one was just a hack but I think I found the real problem. It was about the variable symbolic, that gets symbolic key code *when* it is needed has to be zero'ed  out when it is not needed.

The diff is attached... I'll a make pull request if that helps.

On Sat, Oct 24, 2020 at 5:32 PM Yoshiki Ohshima <Yoshiki.Ohshima@acm.org> wrote:
For the /build.linuxARMv6/squeak.cog.spur/build.debug  case, a hack I did was like this:

diff --git a/platforms/unix/vm/sqPlatformSpecific.h b/platforms/unix/vm/sqPlatformSpecific.h

index 268593673..bfb57257b 100644

--- a/platforms/unix/vm/sqPlatformSpecific.h

+++ b/platforms/unix/vm/sqPlatformSpecific.h

@@ -105,8 +105,8 @@ extern void sqFilenameFromString(char *uxName, sqInt stNameIndex, int sqNameLeng

 #undef sqFTruncate

 /* sqFTruncate should return 0 on success, ftruncate does also */

 #define        sqFTruncate(f,o) ftruncate(fileno(f), o)

-#define ftell(s) ftello(s)

-#define fseek(s,o,w) fseeko(s,o,w)

+// #define ftell(s) ftello(s)

+// #define fseek(s,o,w) fseeko(s,o,w)


 #if defined(__GNUC__)

 # if !defined(VM_LABEL)

diff --git a/spur64src/vm/cogit.c b/spur64src/vm/cogit.c

index d62b05f40..e1c14a021 100644

--- a/spur64src/vm/cogit.c

+++ b/spur64src/vm/cogit.c

@@ -6,6 +6,8 @@

 # define SysV 1

 #endif


+#define __arm64__

+

 #if defined(__arm64__) || defined(__aarch64__) || defined(__ARM_ARCH_ISA_A64) || defined(ARM64) || defined(ARMv8)


and this produced a runnable VM on Raspberry Pi4


On Sat, Oct 24, 2020 at 4:41 PM Yoshiki Ohshima <Yoshiki.Ohshima@acm.org> wrote:
And I tried a few more things by checking out the last release tag 202003021730 or try opensmalltalk-vm/build.linuxARMv6/squeak.cog.spur/build.debug but those attempts did not work. For the latter got this error:

In file included from /usr/include/features.h:424,

                 from /usr/include/pthread.h:21,

                 from /home/pi/opensmalltalk-vm/platforms/unix/vm/sqPlatformSpecific.h:62,

                 from /home/pi/opensmalltalk-vm/platforms/Cross/vm/sqAssert.h:16,

                 from /home/pi/opensmalltalk-vm/platforms/unix/vm/aio.c:35:

/usr/include/stdio.h:721:12: error: conflicting types for ‘fseeko’

 extern int __REDIRECT (fseeko,

            ^~~~~~~~~~

In file included from /home/pi/opensmalltalk-vm/platforms/Cross/vm/sqAssert.h:16,

                 from /home/pi/opensmalltalk-vm/platforms/unix/vm/aio.c:35:

/home/pi/opensmalltalk-vm/platforms/unix/vm/sqPlatformSpecific.h:109:22: note: previous declaration \

of ‘fseeko’ was here

 #define fseek(s,o,w) fseeko(s,o,w)

                      ^~~~~~




On Sat, Oct 24, 2020 at 1:59 PM Yoshiki Ohshima <Yoshiki.Ohshima@acm.org> wrote:
Hi Eliot,

For build.linux64ARMv8/squeak.cog.spur/build.debug, i get the following error. I think I followed the steps in the instructions, including running updateSCCSVersion and mvm. How can I fix it?

/home/pi/opensmalltalk-vm/spur64src/vm/cogit.c:22:3: error: #error As yet no Cogit implementation appears to exist for your platform.

 # error As yet no Cogit implementation appears to exist for your platform.

   ^~~~~

/home/pi/opensmalltalk-vm/spur64src/vm/cogit.c:23:3: error: #error Consider implementing it, starting by adding a subclass of CogAbstractInstruction.

 # error Consider implementing it, starting by adding a subclass of CogAbstractInstruction.

   ^~~~~

make[1]: *** [Makefile:207: cogit.o]


On Wed, Oct 21, 2020 at 10:21 AM Eliot Miranda <eliot.miranda@gmail.com> wrote:
 
Hi Yoshiki,

On Wed, Oct 21, 2020 at 10:14 AM Yoshiki Ohshima <Yoshiki.Ohshima@acm.org> wrote:
 
Hi,

I heard that people got a new problem in inputting Japanese text into Scratch 1.4 running on Raspberry Pi OS after, or around the version 2020-08-20. I would like to take a look at it but it might involve recompiling and generating  the VM with debugging info.  Last time I looked into it was years and years ago and I need to basically make a fresh start.

Is the process of making NuSqeauk VM For Raspberry Pi up to date and straightforward? Can people point me to the right point to start?

Making a Cog VM for Raspberry pi is straight-forward.  Clone opensmalltalk-vm.  cd to build.linux64ARMv8, read the HowToBuild, cd to build.linux64ARMv8/squeak.cog.spur/build.debug, or build.linux64ARMv8/squeak.stack.spur/build.debug, then run ./mvm

_,,,^..^,,,_
best, Eliot


--
-- Yoshiki



--
-- Yoshiki



--
-- Yoshiki



--
-- Yoshiki



--
_,,,^..^,,,_
best, Eliot


--
-- Yoshiki