Squeak on Maemo
Last updated at 11:38 am UTC on 25 March 2008
Derek O'Connell - 25th Mar 2008
Busy time of year for me but here's a quick update: By the middle of Feb when I had to shelf things for a while, I had Squeak running as a Hildon application from the menu and the Squeak window could be minimised and restored. Unfortunately memory consumption had also increased significantly and performance dropped. I am not sure if these aspects are as a result of Hildonising or, quite possible, my hackish coding having had to learn x-windows, GTK+, hildon framework, squeak VM, etc, etc, all on the fly, gulp. My scratchbox environment was also running out of disk space so I am looking at alternative Linux dev platforms that run on top of WinXP (currently soak-testing http://www.andlinux.org/). In the VM I tried and failed to get ALSA sound working, abandoned ESD since it doesn't support recording and instead read-up on GStreamer technology. GStreamer is the way to go for all things multimedia and I was happy to read recently that John M. McIntosh is working on a GStreamer plug-in for OS X/ Linux. I also learned that the VM will need mod'ing to accept the N810's hardware keys (including function keys?).
Finally, actually having Squeak running on the device forces consideration of GUI aspects and user expectations. There have been past Maemo ports of Squeak but my intention here was, and still is, to get a "usable" port. By this I mean one that respects the demands and design of the device but also provides the user with the same/similar experience of Squeak on the desktop. Although specific Squeak apps could be tailored for the N810 other features such as on-device development, debugging, morph manipulations, menu presentation, etc, would be difficult without wide-scale changes. In addition the Hildon desktop does a fine job, IMHO, but those of us that know Squeak can easily envisage spending most of our time exclusively in the Squeak workspace. All this has made me reconsider my approach and gave me an idea for a GUI on top of Morphic (at least initially) which I am calling "STack Fusion" (intentional spelling and should provide some clues ;-) ). I will document this elsewhere when my thoughts are more concrete.
PS: No time ATM to learn the ins-and-outs of debian packaging but if anyone want compiled VM, .desktop file, icon then email me (doconnel-at-notHmail.com) I'm sure you can figure this out!
Derek O'Connell - 13th Jan 2008
Long wait for the N810 but it finally arrived this week. I used the Maemo SDK VMWare Appliance (https://garage.maemo.org/projects/maemovmware/) to set up a development environment hosted on WinXP (no spare machines here). The Squeak Unix sources were obtained from http://www.squeakvm.org/unix/ and compiled unchanged for the CHINOOK ARMEL target (Maemo OS2008). Eager to check the N810 keyboard worked for Squeak I simply copied the binaries and a stock Squeak image over to the N810. Note that this means there is no N810 menu option to run Squeak or a task icon when it is running! However the Terminal application comes as standard on OS2008. After CD'ing into the image directory and starting the VM using the full path to the binaries up comes Squeak... and YES the kb works! That was about 2am this morning so not much more to add except I was getting ~21 fps and Morphic was completely usable, if a little difficult, with a combination of kb and pen input. More to come.
PS: Full screen switch works from menu. Don't minimise Squeak because there is no task bar icon to restore it. I have no external mem card yet so I plan to set up a nw share to access the image (don't like the idea of frequently writing such large files to the internal flash). My priorities atm are OSSO init to get the task bar icon, deb packaging and then nw integration (maybe sound as well just for fun). If any experienced VM devrs want to chip in things will progress much faster.
Göran Krampe: Just wanted to say - yeah! I ordered one today, for my wife. As a birthday present. :) Will get one myself too.
Derek O'Connell - 12th Nov 2007
Good news: hell GREAT news, I have been selected for the "Nokia N810 maemo device program" meaning I get a massive discount on one as soon as they are available. My proposal was of course to get Squeak running (and usuable!) on the device.
Bad news: the notebook I use for development goes in for repair and upgrade in the next few days and I might not get it back for two weeks :-(
Good news: I have access to another machine but it will take some time to set up.
Bad news: the wait!
Tip: discovered recently that if you are VNC'ing to a Mac then for Squeak the "+" on the 770s +/- rocker switch (normally used for zooming) brings up the halo while "-" brings up the context menu.
Hi! Who is this? Awesome to hear about the N810, you'll have to let us know how it is! – AaronReichow on 14.Nov 2007
Hello Aaaron, we swapped a couple of emails earlier this year re Squeak on the 770. The N810 is not in the shops just yet but there are a few vids on youtube. As soon as I have one in my grubby hands and got Squeak on it I will post here. – Derek O'Connell 15th Nov 2007
WIP: collating information on Squeak on the Nokia Internet Tablets in preparation for a renewed effort to get a practical release.
Intro: The addition of a keyboard and additional internal memory on the new Nokia 810 makes the device a much more practical target for Squeak. The availability of a physical keyboard inparticular will make on-device development a much easier and palatable prospect. Of course Squeak has already been shown to run on the Nokia 770/800 but IMHO the demands of Maemo and the lack of keyboard have prevented porting efforts going much further than a simple "it works!" demonstration. Squeak itself also needs to adapt to this type of device in several areas, some obvious and some not so obvious. An example of the obvious would be menus whose height is greater than available screen height (I also have this problem on desktops!). A not so obvious example may be Squeak Image saving on flash memory devices, ie, is it flash-friendly to write multi-mega files if little has changed? I suspect some issues have already been addressed in the OLPC probject and many others have been probably been debated within other contexts. The purpose here will be collect all this information together with the aim of getting a Squeak VM and Image for practical use on the Nokia Internet Tablets and to demonstrate the possibilities of such a powerful combination.