PicoGUI.org has moved - This site is for archival only

PicoGUI Logo

Latest screenshot
January 19, 2003 (micah)

Screenshot Thumbnail

This is the demo app I'm running over VNC on navi.picogui.org now. It's using the photonic and crsr_gold_small themes. There are two clients connected, each with their own cursor.

(more screenshots)

- PicoWiki
- PicoGUI Protocol
- C client API Reference
- Tutorial: Writing clients in C
- Authors

- PicoGUI v0.44 source
- Release notes
- Latest CVS and SVN snapshots
- Browse CVS
- CVS info
- Neo-PicoGUI SVN repository
- Uncategorized downloads

- Bug/feature tracker
- Micah Dowty
- Development mailing list
- List archive
- CVS commits mailing list
- Wiki users

- Pico/Linux
- PicoVR3
- Tader's Psion 5mx Linux Pages
- Revol
- FlyingCircus
- TuxScreen
- LinuxDC
- Guild of the Void *
- PyPicoGUI
- James Hollingshead's PicoGUI apps
- jetstream
- Om

Sourceforge Summary Icon
SF Summary
News Icon
Screenshot Icon
Wiki Icon
Themes Icon
Ports Icon
Hosted by:
It's nifty!

Pico/Linux for Helio
Current release: April 17, 2001 (micah)

What is Pico/Linux? What is a Helio?

Pico/Linux is a small OS distrobution for PDAs combining, among other things, PicoGUI and Linux. The Helio is an inexpensive PDA manufactured by VTech, with a 160x160 LCD (same as Palm) and a 75mhz MIPS CPU. Due to the outstanding efforts of the Linux VR, vhl-tools, and PocketLinux projects, Linux now runs pretty well on the Helio.

All the information below pertains to the current release, shown above.


Please read the release notes below before trying these out. See here for a list of all files.
  • Helio ROM image - See this vhl-tools page for info on flashing it to a Helio and booting
  • Linux Kernel source - This is from the source in ftp.pocketlinux.com's "bignoodle" distro, with patches applied for romdisk and power management. I also added a hack to revive the touch panel after turning the Helio back on. See Linux VR for info on cross-compilers
  • Linux Kernel binary - for making your own ROM images without downloading all the kernel source.
  • Romdisk tarball - This is modified from the vhl-tools romdisk, with the W window system removed and some PicoGUI stuff added. Lots of unnecessary files in there and the client apps are statically linked, I'll fix this later.

Known Bugs

This only covers Helio-specific issues
  • Handle error on launching Blackout: this is safe to ignore for the moment (answer 'no' and you can still run Blackout)
  • Various touchpanel / button oddities make checkboxes very hard to toggle
  • Menu test segfaults when 'Array' is clicked
  • Touchpanel calibrator (borrowed from Microwindows) is crufty
  • The clock is only right if you boot up at midnight :)

It's probably safe to expect an on-screen keyboard and a working copy of Brandon's battleship game in the next release.


(I apologize for the picture quality, I took these with a video camera. I know flatbed scanners work really well on handhelds, but I didn't have one handy)

The screen will be blank for about 10 seconds while it decompresses the kernel. (I'll add a splashscreen later) After that, the framebuffer shows some kernel messages.

Then, the tpcal touchscreen calibrator from Microwindows will run

PicoGUI starts up with the "lcdmono" theme and a modified version of omnibar. (in the CVS as omnibar-helio.c) PicoGUI's interface is extremely customizable because all UI parameters come from a flexible theme file. I think this menu type of interface is unsuitable for handhelds. Smartdata is working on a more PalmOS-style launcher, but this is what I had available at the time. The battery meter does work! The clock works, but there's no way to set it yet.

There aren't very many apps in this release

This is a known bug in the Helio port... It's safe to click 'no' to go ahead and play Blackout

This is the game Blackout. It gets pretty hard around level 8 or so, let me know how far you get :)

PicoGUI supports full multitasking. Programs run in non-overlapping panels, designed with screen space economy in mind. The 'x' button on the panelbar closes a program, the circular arrow rotates it, and the rectangular thing 'zooms' the panel. (it controls how the panels stack, and in the future it will also trigger a fullscreen mode)

See more PicoGUI screenshots