diff options
13 files changed, 223 insertions, 63 deletions
diff --git a/AUTHORS b/AUTHORS
index 0288703..bad17d1 100644
@@ -1,5 +1,5 @@
-Time Based Text was invented by Denis Jaromil Rojo - jaromil
+Time Based Text was invented by Denis Roio - Jaromil
Concept ideated with the contribution of Jodi -
diff --git a/ChangeLog b/ChangeLog
index a1c786d..b8e1fdd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+TBT 1.1 - 9 Apr 2012 - jaromil
+ Small build fixes
+ Easy to use OSX version
+ New webpage
TBT 1.0 - 22 Mar 2009 - meinhard, robin, jaromil
pure javascript TBT recorder
new docuwiki save format (JSON wrapped)
diff --git a/NEWS b/NEWS
index 9030329..a000c2e 100644
--- a/NEWS
+++ b/NEWS
@@ -1,11 +1,11 @@
-TBT will be exhibited as a net-art project in South Africa
+TBT has been mentioned in the Vilem Flusser award 2009 assigned to Jaromil
+(Berlin, Transmediale)
+TBT has been exhibited as a net-art project in South Africa
JOBURG Art Fair, April 2009, Johannesburg
TBT has been exhibited as an on-site art installation
SPEAKING OUT LOUD - hosted by the Netherlands Media Art Institute
in November 2008, Amsterdam - Montevideo - Time Based Arts
diff --git a/README b/README
index 712834a..4ef5a6c 100644
--- a/README
+++ b/README
@@ -5,14 +5,11 @@
888 888 888 888
o888o o888ooo888 o888o
- Time Based Text v1.0
+ Time Based Text v1.1
- finger[k].start = j+2^{o+1} % (2^y);
- finger[k].interval = finger[k+1].flick - finger[k].flick;
Our objective here is to carry more information in written text.
The solution proposed: record performance time in text and vehicle it
@@ -57,11 +54,8 @@ requirements are:
- Educational purposes
- Multipurpose granular time based protocol
-TBT will be used in an on-site installation for art exhibition
-SPEAKING OUT LOUD - hosted by the Netherlands Media Art Institute
-in November 2008, Amsterdam - Montevideo - Time Based Arts
+TBT is used in an on-site interactive art installation
+If interested, please don't hesitate to contact us.
@@ -96,13 +90,7 @@ the protocol will be an aim for the development of TBT 2.0 .
-TBT is Copyleft 2006 - 2009 by Jaromil & JoDi
-with contributions by Angelo Failla, Pablo Martines, Robin Gareus and
-Meinhard Benn among the others, please refer to the included AUTHORS
-file for complete information.
-artwork commissioned by the festival
+TBT - Time Based Text is Copyright (C) 2006 - 2012 by Jaromil
This source code is free software; you can redistribute it and/or
@@ -118,3 +106,10 @@ the GNU Public License for more details.
You should have received a copy of the GNU Public License along with
this source code; if not, write to: Free Software Foundation, Inc.,
675 Mass Ave, Cambridge, MA 02139, USA.
+Distributed code includes contributions by:
+ JoDi, Angelo Failla, Pablo Martines, Robin Gareus and Meinhard Benn
+please refer to the included AUTHORS file for complete information.
+Artwork commissioned by the festival.
diff --git a/README.html b/README.html
deleted file mode 100644
index 60bcbb2..0000000
--- a/README.html
+++ /dev/null
@@ -1,25 +0,0 @@
-TBT has built-in rendering for HTML pages containing our recordings: a
-javascript class is provided to play them back live on homepages.
-If you use the '-s html' option, an html file will be generated right
-after the recording, you'll be then able to modify it (colors and
-fonts) and then include it on your homepage. Along with the html file,
-you should also include the tbt-typewriter.js file in the same
-Everything in the generated html file can be moved and included in
-bigger html pages, just make sure that you preserve intact all the
-contents of the two &lt;script&gt; tags contained inside.
diff --git a/TODO b/TODO
index 971a74e..3ae2542 100644
--- a/TODO
+++ b/TODO
@@ -22,8 +22,8 @@ x playback control (rewind, fast forward etc.)
-send remarks and patches to
+send remarks and patches to
-or get in touch with coders via IRC: port 9999 (SSL) #dyne
+or get in touch with coders via IRC on
+ port 9999 (SSL) #dyne
diff --git a/contrib/mac/ b/contrib/mac/
index a8e4eee..32696bb 100755
--- a/contrib/mac/
+++ b/contrib/mac/
@@ -42,3 +42,4 @@ install_name_tool -change \
@executable_path/../Frameworks/libslang.2.dylib \
+cp ../../src/tbt-typewriter.js
diff --git a/doc/ b/doc/
new file mode 100644
index 0000000..dfa83d4
--- /dev/null
+++ b/doc/
@@ -0,0 +1,7 @@
+The gesture in computer art
+"Thinking about gesture in art, people usually refer to choreography. If the topic is related to IT, instead, usability becomes the issue. But, what about gesture in computer art? Does it mean natural interaction or is it just a matter of performance? Certainly, a gesture is a way for emphasizing communication. Based on this concept, pioneers of (or as we should better say ' is dead') such as Jaromil and Jodi are exploring this area with a project called Time Based Text (TBT). TBT is a free software that records performances of written text and vehicle it as additional information. This is both a command line and console tool that records and playback keyboard strokes with a millisecond precision. As a command line tool it can record from standard input or playback to standard output (from and to a file or pipeline), so it can be interfaced with other software reproducing a sequence of actions.
+As a console tool it offers a simple typing interface to record and playback text exactly as it is typed, including all corrections and hesitations. This'd be a unique possibility in electronic poetry, literature, and even daily email. The authors simply describe this process as: saving and reproducing every single action during the composition of a text let us vehicle emphasis in written communication. But, this 'recorded' gesture is then a new time-based medium." Valentina Culatti, Neural
diff --git a/doc/doxy/tbt.dox b/doc/doxy/tbt.dox
index 8fe765b..777c529 100644
--- a/doc/doxy/tbt.dox
+++ b/doc/doxy/tbt.dox
@@ -4,7 +4,7 @@
# General configuration options
PROJECT_NAME = Time Based Text _code_doc
@@ -58,7 +58,7 @@ WARN_LOGFILE =
# configuration options related to the input files
-INPUT = ..
+INPUT = ../../src
FILE_PATTERNS = *.h *.cpp
diff --git a/doc/interview.txt b/doc/interview.txt
new file mode 100644
index 0000000..f71d944
--- /dev/null
+++ b/doc/interview.txt
@@ -0,0 +1,181 @@
+<nettime> TBT [Time Based Text]: an experiment(al) (in) writing
+To: nettime-l {AT}
+Subject: <nettime> TBT [Time Based Text]: an experiment(al) (in) writing
+From: annet <annet {AT}>
+Date: Sat, 19 Apr 2008 18:36:27 +0200
+*TBT [Time Based Text]: an experiment(al) (in) writing*
+Time Based Text can be considered software art, but above all it is
+a new form of digital poetics. Time Based Text offers a creative,
+experimental, joyful and critical way of handling digital text by
+implementing interactivity, new software and network communications.
+Time Based Text is a type-performance that illustrates feelings.
+The emphasis of the software is on the process of writing/typing.
+TBT is a tool for time-based recording and playback of the process
+of typing a message, with the accuracy of milliseconds. The basic
+interface for typing records all typing and plays it back exactly the
+way the text was typed the first time, including all hesitations and
+misspellings. It reveals additional information on digital poetry,
+because the speed of typing and reading it, are visualised. E-mail,
+blogs, all kinds of digital media can be given a “human touch” by TBT.
+The software has been kept as basic as possible, is free to use and
+users are encouraged to add functionalities. The special TBT website
+offers space for TBT-created messages, haiku’s and poetry, so that
+visitors can admire each other work.
+TBT was made by Jaromil and conceived by Jaromil and JoDi. Following
+is a short interview with Jaromil about this new tool.
+AD: TBT was born as an idea formulated by you and JoDi. An interesting
+relation, a computer programmer/artist and an artist couple who like
+nothing more than to deconstruct soft -and hardwares. Could you
+describe your relation and your shared interest?
+J: It is definitely a result and very much inspired by JoDi. What
+brought us together, besides the curiosity we nurtured about each
+other, was this commission for "Net art is dead" by Impakt. So we
+spent two weekends together. JoDi initially thought of taking the
+dyne:bolic operating system and subverting its functionalities, but
+the perspective of working further to subvert something I already
+invested a lot of effort on building was really discouraging for me.
+So I opposed their intention and argued that, if we have something in
+common, surely it is a minimalist aesthetic and a passion for text
+and inner processes. At that point JoDi mentioned their interest in
+building a "key logger" that would record keys typed in any program
+running, in particular word processors. I insisted in focusing on
+the aspect of literary production, stripping down the approach to a
+reference implementation of a time-based text protocol for recording
+time-based literature - I was extremely excited about developing
+a software tool for literature. We all realized we like literary
+experiments in automatic writing and we would be interested in a
+tool to publish online time-based poetry as well to be used in email
+communication, where hesitations in writing can be a vehicle for
+AD: One of the important changes in the way of thinking about
+language, typography and poetry came from Italy, Marinetti said "my
+revolution is directed against the so-called typographical harmony of
+the page, instead I want to grasp words brutally and hurl them in the
+reader's face." is this something you can relate to? Does your own
+background, also coming from Italy has been of influence in your work?
+J: Yes, I was born in Italy, but I'm part of a generation that starts,
+for necessity and virtue, to think about a common European heritage
+rather than a restricted (and in case of Italy over-celebrated)
+national identity. I guess this opens even more ways to play with
+language than Italians used to do in Italy anyway. My education was
+as classical as it can get in the south of Italy, mostly focusing on
+literature and philosophy, in particular ancient Latin and Greek; such
+traditions of written poetry respect metrical schemes and sometimes
+adopts a richer punctuation than the modern one we are used to. This
+is certainly a point of contact with the concept of Time Based Text,
+but by now I'd say my frequentation of digital haiku circles as the
+'five7five' mailing list played a more important role in this project.
+I find it very difficult to relate to Futurism, which I consider
+a decadent re-use of Symbolism. While it might be considered true
+that Marinetti's furor has contributed to syntactical innovation and
+modern design, I do believe that was too functional to the mission of
+the industry to be considered art. Furthermore I fear the aggressive
+attitude of futurists, but that has more to do with personal taste
+I guess? My inspiration is coming from writers as James Joyce, Jack
+Kerouac and William Burroughs, to name just a few that challenged in
+various ways the performative act of what used to be called "automatic
+AD: As the title indicates an important aspect of TBT is that it is
+time based, something that seems almost paradoxical when linked with a
+computer. How do you see this relation?
+J: TBT is about the dimension of time in literature. The act of
+writing a flow of consciousness discards information. Such information
+is very abstract when compared to words and concepts, it can
+intimately describe the writer's thoughts with all the hesitations
+occurring in the creative act. TBT offers also to preserve all the
+sentimental information that is related to the mediation of text in
+human communication. With TBT we preserve the emotional information
+produced when writing, at the same time opening the media art domain
+to the world of literature. The existence of a software as TBT draws
+complex relationships between code and language: it softly unveils
+the mutual influence between literary art and computer programming
+suggesting they can benefit from each other not just in terms of
+AD: TBT reflects much the Japanese haiku's or dada experiments. Most
+of these actions in poetry have a strong relation with the human,
+organic and emotions. Very little do they relate it seems with the
+'hard' and 'cold' language and command lines of computers. How do
+you view this difference or better, change? Can we finally start to
+emotionally engage and understand our mechanics?
+J: I guess the exploration of our mechanics (as opposed to the
+mechanics of machines) is always doomed to a sweet failure, the
+one that poetry celebrates with the best tears one can cry. The
+literary approach shifts the analysis to a produced fact, which
+reflects our inner sentiments: a production that is written out of
+our inner emotions but still sub-consciously shaped by them. Today
+the act of writing is arguably the most natural act of creation human
+kind engages on a regular basis, so there are chances to access a
+precedented undisclosed intimacy of thoughts there, in everyone who
+writes, between the lines.
+AD: What do you think is more artistic the TBT software, as being
+software art, or the poetry that can be made by using it?
+J: I think what is most artistic is the concept of TBT. The software
+itself and the poetry that can be made by using TBT are also a
+propagation of the artistic value of this exploration, but the
+artistic value is rather conceptual, probably definable media art.
+There is a formal approach in the realization that also can be argued
+as artistic: it is not by coincidence that both from a programmer's
+and user's point of view TBT will result minimalistic and, when
+adopted, extremely flexible. At least I refuse the usual rhetoric of
+presentation for "artistic software", instead caring very much for
+functionality and a design that is faithful to text.
+AD: In the past you have also talked about making the net more
+'organic' by devising 'new ways for information', is TBT a step in the
+right direction?
+J: Hopefully yes, at least it is an attempt. I hope that it can work
+in a natural and spontaneous way. That is why the work consists of a
+portable source code that works as a clean reference implementation
+and can be included in any other software (being open source and
+licensed GNU GPL), rather than building a TBT software that does
+it all for you, that would probably limit its usefulness on the
+long term. I also expect it to inspire people to think about less
+superficial ways of communication: right in a time in which our
+media-scape is getting polluted by opportunist automatas abusing
+our attention, the difference between us and them might be just...
+AD: How can you use TBT in your email program?
+J: As an external editor: it can be called when the message needs to
+be written, once done will quit giving back the TBT message, which can
+be sent in an attachment. The reference implementation is working with
+the mail client Mutt, but hopefully some mail client will implement
+TBT natively in future.
+/Jaromil is a free software programmer, a media artist and activist.
+He has made significant contributions to the development of multimedia
+and streaming applications on the GNU/Linux platform (the free
+counterpart of commercial brands like Microsoft and Macintosh). He
+was born in Pescara, Italy, but now lives in Amsterdam, Netherlands.
+He is author of the dyne:bolic GNU/Linux liveCD, and of various free
+software projects, including MuSE (a streaming server) and FreeJ (a
+free VJ software to live mix and adjust images and sounds). As an
+artist, he has created performances and netart works as the :(){ :|:&
+};: forkbomb (when typed in the command line of a Unix system the
+computer crashes). He also founded in 2000 under the flag of
+Freedom of Creation, playing hybrid between the fields of politics,
+art and technology./
+/Annet Dekker is program manager at Virtueel Platform and freelance
+curator and researcher based in Amsterdam. / Follow this link to the
+TBT project:
+TBT was a commission of Impakt Online –
diff --git a/doc/tbt.1 b/doc/tbt.1
index 20f745a..18edb4d 100644
--- a/doc/tbt.1
+++ b/doc/tbt.1
@@ -1,4 +1,4 @@
-.TH tbt 1 "November 7, 2008" "tbt"
+.TH tbt 1 "April 9, 2012" "tbt"
TBT \- Time Based Text
@@ -81,7 +81,7 @@ The following switches are optional:
.IP "-s \fI<format_name>\fR"
-save format in [ bin | ascii | html ]. Default is bin (see -x command)
+save format in [ bin | ascii | html | doku ]. Default is bin (see -x command)
The \fIbin\fR mode will store a binary file you can play with the
playtext command.
@@ -95,6 +95,9 @@ README.html file.
The \fIascii\fR mode produces pure ascii text file, one character per
line, with the information about the key pressed, and the timestamp.
+The \fIdocu\fR mode produces output ready to be used in dokuwiki, in
+case the TBT dokuwiki plugin is installed on the webserver.
.IP "-c"
Use the S-Lang console interface
@@ -161,7 +164,7 @@ Thanks to: Florian Cramer, Annet Dekker, Paul Hendriks
-This manual is Copyleft (c) 2007-2008 Denis Roio <\\fR>
+This manual is Copyleft (c) 2007-2012 Denis Roio <\\fR>
Permission is granted to copy, distribute and/or modify this manual
under the terms of the GNU Free Documentation License, Version 1.1 or
@@ -175,7 +178,3 @@ this permission notice are preserved on all copies.
The most recent version of tbt sourcecode and up to date documentation
is always available for download from \fI\fR.
-* README.mutt
-* README.html
diff --git a/src/cmdline.cpp b/src/cmdline.cpp
index 7ebdf54..1807a3c 100644
--- a/src/cmdline.cpp
+++ b/src/cmdline.cpp
@@ -127,6 +127,7 @@ void cmdline(int argc, char **argv) {
filename[0] = 0x0;
fprintf(stderr, "TBT - Time Based Text - %s\n", VERSION);
+ fprintf(stderr, "Software by Jaromil @\n\n");
/// adjust the operation to the way the binary is called
if ( ! strstr(argv[0], "tbt") )
diff --git a/src/tbt.h b/src/tbt.h
index de3a6fb..493190c 100644
--- a/src/tbt.h
+++ b/src/tbt.h
@@ -1,7 +1,6 @@
/* Time Based Text - Recorder
- * (C) Copyright 2006 - 2007 Denis Rojo <>
- * Idea shared with Joan & Dirk <>
+ * (C) Copyright 2006 - 2012 Denis Roio <>
* This source code is free software; you can redistribute it and/or
* modify it under the terms of the GNU Public License as published
@@ -34,9 +33,6 @@
#include <linklist.h>
-// #define VERSION "v0.9 -"
class RTClock; // ghost pointer for rtclock.h
class TBTEntry; // defined later