Pocket Computing @ WRL

Release Notes


     
 

This page describes the major Itsy Software releases, the new features contained in each release, and steps users need to take in order to use the new release.

Release 5.0: Itsy v2 Support, better power management, and some bug-fixes

This release encompasses a number of important changes, the most important of which are as follows:

  • Although the compiler and tools have not changed in this release, the source for the kernel has. You must upgrade your kernel sources. You can either reinstall the compiler tools distribution which includes the complete kernel sources, by running unpack-itsy --extract as root in the tools directory. Alternatively, you can replace your existing kernel sources using the tar file containing only the kernel sources. The kernel sources must be installed in /usr/local/arm-unknown-linuxelf/src/linux.

  • This release includes major changes to many device drivers. In particular, support for v2 units has been added. In addition, more support for power management has been added to several drivers (e.g. the MCP stays off unless it is actively used). These fixes are included in a new ramdisk. It should be installed in the motherboard flash.

  • This release includes minor updates to the source code for many Itsy applications for v2 support. Please install the apps tar file in /usr/local/arm-unknown-linuxelf/src; in general, the apps source tree should be a sibling of the linux source tree to ensure that the Makefiles work properly. Once you have installed both the apps and kernel sources (as well as the compiler tools), you should be able to build the entire apps tree simply by typing "make" in the top-level apps directory.

  • This release also includes a few new packages plus updates to the previously existing packages. This is the list of new ones; the source for the rest of them is available here.

    1. X.tar.gz. The X window system.
    2. ae.tar.gz. "Anthony's Editor", a small configurable non-vi editor that can
    3. album.tar.gz. A photo album controlled by the Rock 'n' Scroll gesturing mechanism. Directions for using it are in the apps/album directory.
    4. be used directly on the Itsy.
    5. ip.tar.gz. Some convenient applications (rcp, rlogin, telnet, rsh, etc).
    6. modem.tar.gz. Software for dialup (only useful if you have an Itsy v2 with a modem). Probably needs some minor adjustments to make it work outside of Compaq.
    7. oneko.tar.gz. A game. Tilt the Itsy to make the cat catch mice.
    8. scribhelp.tar.gz. A few help screens describing how to draw unistroke characters.
    9. v2test.tar.gz. Useful for v2 Itsy units only. Tests all the hardware functionality.

Release 4.1: Instruction Profiling and Bug Fixes

This release encompasses a number of important changes, the most important of which are as follows:

  • Although the compiler and tools have not changed in this release, the source for the kernel has. You must upgrade your kernel sources. You can either reinstall the compiler tools distribution which includes the complete kernel sources, by running unpack-itsy --extract as root in the tools directory. Alternatively, you can replace your existing kernel sources using the tar file containing only the kernel sources. The kernel sources must be installed in /usr/local/arm-unknown-linuxelf/src/linux.

  • This release includes minor fixes and feature additions to many device drivers. In particular, a bug in the FTL flash file system that caused it to occasionally hang has been fixed. Also, the audio driver now provides improved conformance to the OSS API specifications, allows for select() calls on audio input, and allows for mulaw sample conversion on audio output. These fixes are included in a new ramdisk. It should be installed in the motherboard flash.

  • The release includes support for instruction profiling. In order to use this functionality, (1) you must reinstall the Itsy utilities binaries. These are contained in the tar file (bin.tar.gz). Install them in the /usr/local/bin directory on your host machine; (2) you must install the prof package on your Itsy. This document explains how to install and use the instruction profiler.

  • This release includes minor updates to the source code for many Itsy applications. Please install the apps tar file in /usr/local/arm-unknown-linuxelf/src; in general, the apps source tree should be a sibling of the linux source tree to ensure that the Makefiles work properly. Once you have installed both the apps and kernel sources (as well as the compiler tools), you should be able to build the entire apps tree simply by typing "make" in the top-level apps directory.

Release 4.0: Sessions

This release encompasses a number of important changes, the most important of which are as follows:

  • There is a new, updated version of the Itsy Monitor (version 1.3). Please upgrade your monitor.

  • Although the compiler and tools have not changed in this release, the source for the kernel has. You must upgrade your kernel sources. You can either reinstall the compiler tools distribution which includes the complete kernel sources, by running unpack-itsy --extract as root in the tools directory. Alternatively, you can replace your existing kernel sources using the tar file containing only the kernel sources. The kernel sources must be installed in /usr/local/arm-unknown-linuxelf/src/linux.

  • This release introduces a new device sharing model called Itsy sessions. Sessions allow multiple applications to coherently share user-interface oriented devices such as the display, buttons, and touchscreen. The Itsy now boots into a touchscreen-based manager program called gmanager that can launch, monitor, and terminate concurrent applications. For more information, please refer to the overview of Itsy sessions.

  • Most device drivers that manage user-interface oriented I/O devices have been substantially changed to support Itsy Sessions. Many related header files have been updated, and many interfaces have changed. If you wrote your own applications that interacts with these devices, you will definitely need to recompile them, and they will probably also require some modification. For more information, please read the updated device driver documentation..

  • This release also includes support for a persistent flash-based file system based on a port of the Linux FTL code. Please refer to the documentation on the flash file system.See here for a disclaimer and important information concerning FTL.

  • This release includes source code for many Itsy applications that we have written or ported. Please install the apps tar file in /usr/local/arm-unknown-linuxelf/src; in general, the apps source tree should be a sibling of the linux source tree to ensure that the Makefiles work properly. Once you have installed both the apps and kernel sources (as well as the compiler tools), you should be able to build the entire apps tree simply by typing "make" in the top-level apps directory.

  • The itsy utilities tar file (bin.tar.gz), which contains the Itsy utilities, has changed, so you will probably want to reinstall the binaries. Install them in the /usr/local/bin directory on your host machine.

  • This release introduces an improved model for managing Itsy ramdisks, flash filesystems, and startup scripts based on Itsy packages. For more information, please refer to the Itsy Packages document.

    A collection of useful and fun packages containing binary applications has been included with this release. Unfortunately, there is currently very little documentation for these packages. However, the source code for many of the packages is provided in the "apps" tree. The packages that are included are as follows. For members of WRL, there are additional packages available in the directory /wrl/proj/itsy/packages.

    1. developer.tar.gz, containing diff, time, gdb, strace, and other tools which can be run on an ARM processor.
    2. java.tar.gz, containing the kaffe java virtual machine from Transvirtual. Note: for external users, while Java is available for you to use, it requres some additional paperwork, and will thus be distributed separately to those who complete this paperwork.
    3. rsync.tar.gz, a file synchronization tool
    4. doom.tar.gz, a port of the popular 3D game Doom
    5. midi.tar.gz, the MIDI synthesis program with GUI
    6. mpeg.tar.gz, an MPEG player with sample clips
    7. sounds.tar.gz, a collection of random audio clips

     

  • Note: after you've upgraded to the new environment, you may need to recallibrate the touchscreen.

Errata

  1. Scribble
    Scribapp (the unistroke recogizer program) expects to load three "classifier" files which describe the character sets to be recognized. The files are named "digits.cl", "letters.cl", and "punc.cl". Scribapp is currently configured to look for classifier files in two places. First, it looks in $HOME/.classifiers/. If the directory doesn't exist, or if some of the required files are not in that directory, then it looks in "/usr/lib/scribble/classifiers". Through an oversight, the ramdisk as currently configured has classifier directories in two places: "/root/.classifiers" and "/usr/local/lib/classifiers". Both of these directories contain the same classifier files. So, when logged in as root, scribapp works correctly. To enable scribapp to find classifier files when logged in as any other user, it is necessary to either create "~/.classifiers" for that user, or to create "/usr/lib/scribble/classifiers" (either of which can be a symlink to one of the existing classifier directories).
  2. Compiling the Kernel and the Serial Driver
    If you recompile the kernel yourself, the serial driver may not work properly (there are known problems with compiling serial.c with egcs-2.91.66). If you need a working version of serial.o to recompile the rest of the kernel with, let us know and we'll send you one.

Release 3.0: The Elf Release

This release introduces a number of changes, the more significant of which are:

  • the flash memory has been laid out differently than before
  • the monitor has been upgraded
  • ramdisks no longer need to be padded
  • much of the params file is filled in at boot time by the monitor
    • the name of the params file has changed
    • boot-itsy only loads new kernels (not ramdisks, nor params files)
  • the compiler has changed from aout to elf
    • the softfloat library is no longer supported
    • the "Wl,-N -Wl,-Bdynamic" link options will result in binaries which don't work
  • the UNIX environment startup can be bypassed
  • the 'apps' source tree can now be built easily
    • note that you can use these makefiles for your own applications

Upgrading to ELF

If your system is still using the a.out binary format, please upgrade it to the elf format. The notes in this section tell you how.

Your Itsy should now be able to boot the new system.

Notes on things that have changed:

Many more things may have changed; please re-read through the documentation.

 

The Itsy Project is a joint effort of the Western Research Lab and the Systems Research Center