Archive for August 23rd, 2007

Squeak and OpenEmbedded

Neo1973 running Squeak VM 3.9 Recently, I’ve been getting interested in getting Squeak running on smaller pieces of hardware, such as cellphones or PDAs. Last week I received my FIC Neo1973 open-source GSM cellphone, which runs a system based on OpenEmbedded called OpenMoko.

I’ve managed to get the system compiled and running both in emulation and on the phone itself, and I’ve added support for building Squeak VM 3.9-8 to the base OpenEmbedded packages. It took a little while, but I’ve managed to get past the cross-compilation (libtool) and plugin-loading (-rdynamic) hurdles, and I’m pleased to report that everything is working well. Squeak images old (2.8) and new (3.9-final) run fine.

Here’s a (blurry) picture of the latest Squeak VM, version 3.9, running a tiny, stripped 2.8 image on the handset itself: Squeak on the Neo1973.

The next steps will be to use OSProcess and Flow to access the various bits of hardware jammed into the Neo (GSM modem, GPS, Bluetooth, touchscreen, audio, battery, auxiliary buttons, headset connection/mute-button events, etc), and to use something like Faure (screenshots) to construct a stylus- or finger-driven UI.

The Neo hardware is amazing - the display is VGA resolution at a crisp 285dpi, only slightly lower than a low-end laser printer, which opens up a lot of options for UI design - and the kernel programmers have done a great job of the kernel/userland interfaces.

Update: I’ve added an issue to OpenEmbedded’s bug tracker, to see if they would like to fold my build scripts into the main trunk. You can follow the discussion here: http://bugs.openembedded.org/show_bug.cgi?id=3013

Here’s a link to the squeak-x bitbake scripts, for those who would like to try it out in the meantime.

4 comments August 23rd, 2007 tonyg

Calendar

August 2007
M T W T F S S
« Jul   Sep »
 12345
6789101112
13141516171819
20212223242526
2728293031  

Posts by Month

Posts by Category