Essential utilities for the onHandPC, from a GNU/Linux developer


Note: Almost all of the software in this site have the sources commented in Spanish. I apologize for the inconvenience, but at first I didn't mean to distribute them. I have the intention to translate them, but that probably means in 2003! :-o. If you have questions or want me to translate a specific part of one of them, just mail me.

Note2: The programs are packaged using GZIP's tar.gz, ubiquitous in UNIX. This type of zipfiles are also supported by Winzip for windows (well, I'm quite sure that winzip 7 or later support them, but don't know about earlier versions). If you have problems dealing with this type of files, mail me and I'll try to post real ZIP files also.

About this site

The onhandpc (ruputer in Japan) is an incredible machine. Packed in a somewhat large wristwatch, you have the equivalent processing power of an IBM PC of the 1980s.

What makes it so special is that is one of the first wear-hard devices available to the general public that comes with a programming kit and it's fully programmable in C.

Despite it's incredible hardware, the software that comes with the watch is just usable, but very dependant on a PC to do the housekeeping of the information.

This site holds my efforts to make the watch useable by it's own as a computer. My first programs (games) have been solely to learn how to program the onhand. Now I'm focusing on packing more functionality, primarly with the text editor, but more programs are about to come; for instance I would like a better scheduler and addressbook.

My long-term plans are to make it an independent computer, one that doesn't require the PC just to do this or that. Actually, I would like to make a programming environment hosted in the watch, but that's a very long-term project (and likely to be abandoned).

End-user programs

These are programs that I've missed a lot in the onHandPC, so I've just tried to fill the gap.

And these some games that I made just to familiarize with the onhand API:

Finally, here are some utilities that I needed:

All programs listed here are distributed under the GNU GPL license, with the exception of the libraries (see the programming libraries section) , that are distributed under the GNU LGPL license. That means that all programs came with source code, and you can (should :-) modify and improve them. If you want to redistribute modified programs, you have to include the source code too, so others can improve them also. I would be grateful if you also send me the modifications, so I can update the programs here too O:-).

Programming libraries

These are some libraries that I've done to ease the programming with the onhand (they're distributed under the GNU LGPL license, so you can use them in your propietary/commercial/closed-source programs).

Programming documentation

Not yet. Please, visit the developers section of PConHand site.

onHand API emulator for GNU/Linux

I've implemented a some of the lcdbios.h, psdos.h, rupsys.h, ruptool.h and wbios.h calls in linux using standard POSIX calls and linux's libGGI API (exactly the libggi2 package included in Debian 2.2 ('potato'), that is libggi version So, technically, it's not an emulator... just an API compatibility layer or a simulator.

I developed it because in my first session of onhand-pc programming I almost drained the batteries with all the write-compile-UPLOAD-test cycles I required to make it just work (to iron out the bugs). So I needed something to debug the programs in the PC and then, when all seemed all right, upload it to the onhand for the final test.

There are a reasonable subset of the APIs implemented, but they are not complete. For blinking it uses the timer signal, that you can disable with a compile-time '#define' so you can use standard debuggers to trace the program (I'm very fond of DDD and GNU's GVD; try them, they're fine pieces of software ;-).

So, here is it:


Some interesting links:
Dario Rodriguez, Madrid, Espaņa    March 14, 2002.