While no SDK or technical documentation concerning SplashTop is publicly available, members of our forums have been successful in their attempts to "hack" SplashTop. No attempts thus far at accessing the SplashTop files that are stored within the flash memory chip on ASUS motherboards have been successful, but instead these developers had acquired one of the SplashTop updates off the ASUS website. ASUS has begun publishing updates to SplashTop on their support website so that owners of current SplashTop-enabled motherboards can update their programs and add new functionality to this embedded Linux environment. On some motherboards, ASUS also has a lower-end version of Express Gate that first needs to be installed (from Microsoft Windows XP or Vista) to a partition on the hard drive and then when booting to this environment it will use that with no flash chip needed. With these files at hand, it's quite easy to extract the image of the SplashTop file-system.
SplashTop with a file manager viewing the complete file-system.
One of the developers that has been working on compromising SplashTop has been Kano, a Debian developer and the leader of the Kanotix distribution. Kano has written scripts (available from the forums) that will then extract the SplashTop files, properly format a USB flash device for booting, and then install the needed files to the flash media.
Another developer, drosky, had modified the SplashTop image so that it's able to mode-set at 1600 x 1200 (normally SplashTop is limited to running at 1400 x 1050). After that, drosky had also got a terminal running within ASUS Express Gate / SplashTop. An xterm binary does ship with SplashTop, but it's not accessible as it's not a menu item, no file manager, or any other way to start xterm. In addition, xterm will fail to run due to a missing shared library. Drosky though had copied over an rxvt binary from Puppy Linux and then wrote a xinitrc script to launch this terminal upon booting. In addition, drosky was successful with bringing over a file manager to view the full Linux file-system instead of just mounted USB devices.
Some of the other modifications that have been successful include adding in new container applications and being able to load other kernel modules. Normally, SplashTop will just load the kernel modules needed for networking (wired and integrated wireless) on the ASUS motherboard(s) in which the SplashTop image was designed to run on. However, modules that ship with the Linux 2.6.20 kernel, for which SplashTop is based, can be manually loaded from the terminal using insmod.
Loading the e1000 network module for the Linux kernel.
For more information on these SplashTop hacks, visit the following links. Users are now able to boot SplashTop from any computer off a USB stick and are also able to load on custom applications, access the terminal, and change other functionality about this very innovative embedded Linux environment.