Squeak on Palm Zire?
Brian Brown
rbb at techgame.net
Fri Feb 18 15:29:15 UTC 2005
On Feb 17, 2005, at 9:29 PM, Neil Rhodes wrote:
> I worked on a Squeak port to Palm OS about 1999 (coming at it as a
> very experienced Palm OS programmer and a newbie Squeaker), and am
> very familiar with the issues involved:
>
> The Palm OS is split into the dynamic heap and the storage heap (which
> is write-protected, and requires an API to write). It isn't practical
> to run an image directly from the storage heap. Either every write to
> the image requires an API call (DmWrite), or you've got to use the
> undocumented (and dangerous) MemSemaphoreReserve, which turns off
> write-protection.
>
> At the time I was working, there were no devices with a large enough
> dynamic heap to hold an image. I looked at two different ways of
> running the image from the storage heap:
> Storing the image in separate 64K chunks, and using a macro to
> determine the actual memory address to use to read from/write to
> Storing the image in a large storage heap chunk (allocated using
> FtrPtrNew). When the app opened, it'd copy the image from the
> database to the large chunk. On close, it'd write it back out.
>
> Another alternative to storing the image would be as a file on an SD
> card. You use VFS calls to open/close/read/write.
>
> If I were approaching it today, I'd target the couple of devices that
> have a large enough dynamic heap to be useful:
>
> Tungsten C 12MB
> Tungsten T3 11MB
> Zire 72 5MB
>
> I think the Tungsten C or T3 would be a very workable Squeak device.
>
>
> When the app opened, I'd allocate a large dynamic memory chunk (using
> MemChunkNew with the memNewChunkFlagAllowLarge flag to allow a larger
> than 64K allocation).
>
So does Palm OS 5 still enforce these types of memory limits and
segregation now that the high end models are running on XScale
processors? I had *hoped* that they would take advantage of some of the
potential of the new hardware platform, but I realize that they would
have issues with backward compatibility if they did that, although they
could probably do some emulation.
Brian
More information about the Squeak-dev
mailing list
|