TiML

Basics

At a rather early stage of the project we realized, that a user interface on the TI, which could only display text doesn't allow for much complexity while a UI based on server-generated images would be way too slow for the (nominal!) 1920 byte/sec the transceiver IC allows. Also we wanted to have several input types like edit fields, menus and switches. Furthermore as much inputting of data as possible should be done on the TI only, which means without having to communicate with the server until the input is completed. So we came up with several basic content types (see content ids.txt), of which TiML is the most sophisticated one.

What's TiML?

Probably you know about HTML, which stands for Hypertext Markup Language - almost all web pages are "programmed" in HTML. TiML (TI Markup Language) is not only similar name-wise but also by the concept: You have an empty page/screen which you can fill with text and elements like edit fields or images. Also the text can be formatted (bold, italic, size, ...), elements can be positioned and so on.

TiML's features

HTML pages can be really complex, of course it's not possible to gain such complexity on a handheld device, so TiML will only have some of HTML's features. This means that in most cases you have text which can be a little formatted and may contain some elements like links, small graphics and edit fields or other input components. An actual TiML page may look as follows: An underlined headline saying "Phone book entry", below there are several edit fields with descriptions where you can enter name, phone numer etc. as well as two checkboxes where you can select the gender for this person. At the bottom are two links, one saying "store entry" and the other saying "cancel".

Development status

Of course it's a hell lot easier to think of specifications than really making a program out of that - even more, if you have to use assembly language. As of this, we have no working TiML display software. But recently development of a scrolltext routine has reached almost final state. Also the rather complex edit field routine is working since quite some time. So the next step towards a working TiML display software is to modify the scrolltext routine to parse for TiML elements and either temporarily substitute them by constant text or use routines like the one for edit fields to have the user input data. Probably the worst thing is the memory management, as one TiML page may consist of several active elements with variable content.


Last modified: 05/24/2003 mmddyy by Burkart