[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Goo on a cellphone..almost



Chris Double <chris@double.co.nz> writes:

> Just for fun I tried to get Goo running on a Nokia 9210
> cellphone. This cellphone has a keyboard and a 640x200 display and can
> run C++ applications. It uses the Symbian OS [1]. Unfortunately it
> only has about 3.5MB of usable memory as the remaining of its total
> 8MB is used by the OS and core applications.
> 
> The SDK for the phone uses gcc for the ARM. To keep the executable
> size down I changed main.goo so it didn't 'use' anything unneeded on
> the phone like tasks, g2c, etc. The executable built to just on 2MB,
> leaving 1.5MB for heap.

what exactly did you 'use'?

> Unfortunately Boehm doesn't support Symbian so I disabled the GC and
> replaced with 'malloc' planning to work on that latter.
> 
> Every thing compiled (with tweaks) and the executable ran fine in the
> phone emulator supplied with the SDK. On the hardware itself it ran
> out of memory due to nothing being GC'd. To bring Goo to an
> interactive prompt without GC it needs about 2MB of ram. Close.
> 
> If I ever get some time to play with it I'll see if I can get Boehm
> to work on Symbian. Any thoughts on what else could be stripped out
> in terms of standard libraries for a 'Embedded Goo'?

certainly all of eval/* but other things could go and the
representations could be tuned to be smaller and the initialization
code could be made much smaller as this constitutes a large percentage
of the c code.  i'll find out what you actually used and then start
from there.

> The news isn't all bad though. Other Symbian phones, like the
> Sony/Ericcsson P800 have much more memory so it'd probably run with
> ease on that when it comes out. 

jonathan