Tingeltangel - Handbuch

Inhalt

Grundlagen zu IDs
Beispiel: Eigenes Buch erstellen
Objekt Eintrag
Rechte Fensterseite
Menü
Skripte

Grundlagen zu IDs

Um sich in Tingeltangel zurechtzufinden, sind ein paar wenige Grundkenntnisse n&oouml;tig. Voraussetzung zum Verstehen der Grundlagen ist, dass man schon einmal ein Ting-Buch ausprobiert hat.
Es gibt in Ting-Büchern verschiedene Codes, die von dem Stift ausgelesen werden können. Sie unterteilen sich im wesentlichen in zwei Gruppen: Gleiche Objekt-IDs können somit in verschiedenen Büchern vorkommen.
Nicht von jeder ID ist der Code bekannt, d.h. für einige IDs kann keine Code erzeugt werden. Bekannt sind im Moment die IDs 0-1134 und 4716-19443. Diese IDs sollten für die meisten Zwecke ausreichend sein.

Media-IDs
Media-IDs liegen in dem Bereich 1-10000 wobei nicht jede beliebige ID genutzt werden kann, da sie u.U. schon von einem offiziellen Ting-Buch genutzt wird. Tingeltangel unterstützt Dich dabei eine freie Media-ID für ein eigenes Buch zu finden.

Objekt-IDs
Objekt-IDs liegen in dem Bereich 15001-65535. Von einigen offiziellen Büchern wird auch die ID 15000 "genutzt". Das ist nicht zu empfehlen und kann zu unerwünschtem Verhalten führen.

Beispiel: Eigenes Buch erstellen

Wähle im Menü "Buch"->"Neu" aus. Wähle eine der angezeigten IDs aus und klicke auf "OK". Im rechten Teil des Bildschirms können einige Meta-Daten zu dem Buch angegeben werden.
ID Die Buch-ID (MID) (kann mit einem Klick geändert werden)
Name Buchname
Verleger Verleger
Autor Autor
Version Versionsnummer (für eigene Bücher kann hier immer eine 1 stehen)
URL Eine beliebige Webadresse
? Unbekannter Zahlwert (sollte auf 11 stehen)
Datum Erstellungsdatum des Buchs (kann nicht geändert werden)

Desweiteren kann das Buchcover mit einem Klick auf "Sample" ausgewechselt werden. Das Cover muss als PNG-Datei vorliegen und sollte eine Größe von 140 mal 193 Pixel haben.

Nun fügen wir ein paar Tracks, also Objekt-IDs hinzu. Hierzu muss man rechts oben die Anzahl der gewünschten IDs eintragen (z.B. 3) und die Start ID angeben. Der Vorausgewählte Wert von 15001 (erste nutzbare Objekt-ID) genügt. Danach klickt man auf "hinzufügen".

Füge nun für die Einträge unterschiedliche MP3s durch Klicks auf das "Eject" Symbol () hinzu. Nun ist es Zeit das Buch mit der Menüauswahl "Buch"->"Speichern" zu speichern. Jetzt kann man den Ting-Stift mit dem Rechner verbinden und warten bis rechts der Button "deployen" anwählbar ist. Bei einem Klick auf "deployen" wird das Buch generiert und auf den Stift kopiert. Der Stift kann nun wieder entfernt werden (Vorsicht: Der Stift muss "sicher" entfernt werden).

Jetzt wählt man im Menü unter "Buch"->"alle Codes generieren" aus und speichert die ZIP Datei ab. In der Datei findet man nun alles Codes als einzelne PNG Dateien, die in einem Grafikprogramm weiter verarbeitet werden können.

Objekt Eintrag

MP3
Skript
Skript (Unterroutine)
TTS (Text-To-Speach)
Zeigt den Typ des Eintrags an. Mit einem Klick aus das Symbol kann er geändert werden
Löscht diesen Eintrag
Spielt diesen Eintrag ab
Ändert das MP3 zu diesem Eintrag
Kompiliert diesen Eintrag
Speichert den Ting-Code als PNG
Kopiert den Ting-Code in die Zwischenablage
speichert das MP3

Die Textbox unter den Icons hat je nach Typ des Eintrags eine andere Bedeutung.
MP3 Frei wäbarer Text (z.B. Traskript des MP3s)
Skript / Unterroutine Der Code
TTS Der vorzulesende Text

Rechte Fensterseite

Skip Überspringt diesen Track
Stop Beendet das Playback

Menü

Buch
Aktionen
Einstellungen
Codes (600dpi)
Informationen

Skripte

offizielle Befehle
end Beendet das Skript
clearver Löscht alle Register
set [Register] [Value|Register] arg1 := arg2
cmp [Register] [Value|Register] Vergleich zweier Werte
and [Register] [Value|Register] arg1 := arg1 & arg2 (Binäres-Und)
or [Register] [Value|Register] arg1 := arg1 | arg2 (Binäres-Oder)
not [Register] arg1 := ^arg1 (Binäres-Nicht)
jmp [Label] Sprung ohne Bedingung
je [Label] Sprung, wenn letzter cmd Vergleich: arg1 == arg2
jne [Label] Sprung, wenn letzter cmd Vergleich: arg1 != arg2
jg [Label] Sprung, wenn letzter cmd Vergleich: arg1 > arg2
jge [Label] Sprung, wenn letzter cmd Vergleich: arg1 >= arg2
jb [Label] Sprung, wenn letzter cmd Vergleich: arg1 < arg2
jbe [Label] Sprung, wenn letzter cmd Vergleich: arg1 <= arg2
add [Register] [Value|Register] arg1 := arg1 + arg2
sub [Register] [Value|Register] arg1 := arg1 - arg2
playoid [Value|Register] Spielt das MP3 mit der gegebenen OID ab
pause [Value|Register] Pausiert für n zehntel Sekunden
call [Value] Ruft eine subroutine auf
return Rückkehr von einer Subroutine

inoffizielle Befehle
callid [Value] Entspricht einer Auswahl der Ting-ID mit dem Stift. Wenn man hier eine MID angibt, kann man auch das aktuelle Buch wechseln.
mul [Register] [Register|Value] arg1 := arg1 * arg2
div [Register] [Register|Value] arg1 := arg1 / arg2
mod [Register] [Register|Value] arg1 := arg1 mod arg2
divmod [Register] [Register] help := arg1
arg1 := arg1 / arg2
arg2 := help mod arg2
min [Register] [Register|Value] arg1 := min(arg1, arg2)
max [Register] [Register|Value] arg1 := max(arg1, arg2)
exp2 [Register] arg1 := 2 ^ arg1
rnd [Register] [Register|Value] arg1 wird auf einen zufälligen Wert zw. 0 (inclusive) und arg1 (inclusive) gesetzt
volume [Register|Value] setzt die Stiftlautstärke (1-20)
lastid [Register] arg1 = "letzte angewählte Ting-OID"
lang [Register] arg1 = "Sprachcode"
setbit [Register] [Register|Value] setzt das arg2-te Bit im Register arg1 auf 1
unsetbit [Register] [Register|Value] setzt das arg2-te Bit im Register arg1 auf 0
getbit [Register] [Register|Value] [Register|Value] arg1 = 1 wenn das arg3-te Bit von arg2 auf 1 gesetzt ist, ansonsten 0
lock Sperrt die Auswahl neuer Codes während ein Tack abspielt
unlock Erlaubt die Auswahl neuer Codes während ein Tack abspielt. Der aktuelle Track wird dann abgebrochen.

Alle "Value"-Parameter sind in den offiziellen Büchern als Dezimalzahlen angegeben. Bei Tingeltangel ist es alternativ möglich diese Werte als Hexadezimalzahlen anzugeben. Hierzu muss dem Wert ein 0x vorangestellt werden.

Register
V0 - V91 Speicherregister (read + write)
V92 lock ?
V93 Sprachcode (siehe unten) (read)
V94 Volume (2-20) (write)
V95 Lezter mit dem Stift angewählter Code (read)
V96 ?
V97 ? (Interrupt)
V98 zufälliger Wert (0 bis 0x7FFF) (read)
V99 ?
V100 - ? ?

Sprachcodes
20 englisch ?
33 französisch
34 ?
35 ?
44 englisch
49 deutsch
55 ?
86 chinesisch
90 ?
99 ?