====== Code-IDs und Ting-IDs ====== ===== Code-IDs ===== ==== Erstellung ==== Die Ting-Codes setzen sich aus einem 4×4 Raster zusammen. {{:sample1.jpg|}} {{:diag1.png|}} Die grünen Felder sind bei jedem Code gleich. Bis auf das linke Feld in der dritten Zeile sind alle Punkte mittig. Dieser eine Punkt ist leicht nach rechts verschoben. Die roten Felder beinhalten den eigentlichen Code und eine Prüfsumme. Den 4 moeglichen Positionen wird ein Wert zugeordnet. ^ Position ^ Wert (binär) ^ | rechts unten | 00 | | links unten | 01 | | links oben | 10 | | rechts oben | 11 | Die binäre Codenummer setzt sich aus der Feldern W7 bis W0 zusammen. Also: W7 W6 W5 W4 W3 W2 W1 W0 Das Prüfsummenfeld CK wird wie folgt berechnet: CK = (((W1 XOR W4 XOR W6 XOR W7) AND 0x01) << 1) OR ((W0 XOR W2 XOR W3 XOR W5) AND 0x01) (Vielen Dank an den mir unbekannten Tüftler, der das geknackt hat!) ==== Beispiel ==== {{:diag2.png|}} Codenummer: 10967 (binär: 00 10 10 10 11 01 01 11) (Ting-ID: 15073) CK = (((0x01 XOR 0x10 XOR 0x10 XOR 0x00) AND 0x01) << 1) OR ((0x11 XOR 0x01 XOR 0x11 XOR 0x10) AND 0x01) = ((0x01 AND 0x01) << 1) OR (0x11 AND 0x01) = (0x01 << 1) OR 0x01 = 0x10 OR 0x01 = 0x11 ==== Besonderheit: Aufnahmecodes ==== //siehe hierzu auch den Hauptartikel:// [[Aufnahmecodes|Aufnahmecodes]] Die Aufnahmecodes setzen sich ähnlich zusammen wie die "normalen" Ting-Codes, aber es gibt einige bedeutende Unterschiede. ==== Erstellung ==== Auch hier setzen sich die Codes aus einem 4×4 Raster zusammen, jedoch ist das linke Feld in der dritten Zeile nach links anstatt nach rechts verschoben. Bei den anderen grünen Feldern sitzen die Punkte wie gehabt mittig. {{:sample2.jpg?144}} {{:diag3.png|}} Die Werte der roten Felder unterscheiden sich von den "normalen" Bookii-Codes dadurch, dass die Zählung oben links beginnt: ^ Position ^ Wert (binär) ^ | links oben | 00 | | rechts oben | 10 | | rechts unten | 01 | | links unten | 11 | Der resultierende Wert ist eine Little-Endian-Binärzahl. Daher folgt auf 00 die 10 und erst dann die 01. Bei der Berechnung der Checksumme werden die einzelnen Werte wie folgt auf die linke und rechte Seite der Berechnungsformel aufgeteilt: CK = (((W1 XOR W7 XOR W4 XOR W6 ) AND 0x01) << 1) OR ((W0 XOR W2 XOR W3 XOR W5) AND 0x01) Im Handel sind maximal 504 Aufnahme-Sticker erhältlich, deshalb wird es oberhalb der ersten neun Bit schwieriger, die Richtigkeit der obigen Codes zu überprüfen. ==== Abspielcodes ==== Die Punktemuster, um die Töne dann auch wieder abzuspielen, werden ebenso codiert wie die Aufnahmecodes; es wird einfach nur eine um 1019 erhöhte Zahl benutzt - Beispiele: ^ Wiedergabecode ^ dazugehöriger Aufnahmecode ^ Nummer auf dem Sticker ^ Dateiname ^ |6729|5710|031|TestRec32.wav| |6730|5711|032|TestRec33.wav| |6731|5712|033|TestRec34.wav| |6732|5713|034|TestRec35.wav| |6733|5714|035|TestRec36.wav| |6734|5715|036|TestRec37.wav| | usw. | usf. | | | ===== Ting-IDs ===== ==== Allgemeines ==== Zwischen Code-IDs und Ting-IDs besteht eine 1:1 Zuordnung. Ting-IDs genauso wie Code-IDs liegen im Bereich 0x0000 bis 0xFFFF. Einen Auszug aus der Zuordnungstabelle findet man [[bekannte_ting-ids|hier]]. Eine Tabelle mit allen bekannten Zuordnungen kann mit dem [[download|Tingeltangel-Tool]] erzeugt werden. Damit ist es auch möglich Tabelle von Code-IDs und Ting-IDs zum Ausdrucken zu erstellen. Im Moment sind die Code-IDs für die Ting-IDs 0-1134 und 4716-19443 bekannt. ==== Klassen von Ting-IDs ==== Grundsätzlich gibt es drei Klassen von Ting-IDs. Media-IDs (MIDs), Commercial-IDs (CIDs) und Object-IDs (OIDs). Media-IDs (MIDs) entsprechen den Aktivierungscodes der Bücher, Object-IDs den Codes in den Büchern. Verschiedenen Bücher nutzen die gleichen Object-IDs. Jedes Buch muss eine eindeutige Media-ID besitzen. Infos zu Commercial-IDs gibt es [[commercials|hier]]. ^ Ting-ID Bereich ^ Zweck ^ | 0 | Spezieller Code (MID) für Commercials | | 1 - 9999 | Media-IDs (MID) | | 10000 | Theoretisch eine "normale" MID (besser nicht nutzen, da diese u.U. zu den CIDs gerechnet wird) | | 10001 - 14999 | Commercial-IDs (CIDs) | | 15000 | Theoretisch eine "normale" MID (besser nicht nutzen, da diese teilweise falsch als OID genutzt wird) | | 15001 - 65535 | Object-IDs (OIDs) | Bei den Media-IDs ist zu beachten, dass man für eigenen Bücher keine schon offiziell genutzte MID verwendet um Konflikte zu vermeiden. Eine Liste der bekannten Bücher gibt es [[offizielle_buecher|hier]]. Hier eine Übersicht über den Raum der Media-IDs: ^ Media-ID Bereich ^ Nutzung ^ | 0 | Spezieller Code (MID) für Commercials | | 1 - 100 | offizielle Ting-Testbücher | | 101 - 4999 | frei nutzbarer Bereich | | 5000 - 5999 | offizielle Ting-Bücher | | 6000 - 8799 | frei nutzbarer Bereich | | 8800 - 8899 | offizielle Ting-Testbücher | | 8900 - 9499(?) | frei nutzbarer Bereich | | 9500(?) - 9999 | teilweise werden diese MIDs von Bookii genutzt | | 10000 | Theoretisch eine "normale" MID (besser nicht nutzen, da diese u.U. zu den CIDs gerechnet wird) | Ich empfehle, aufgrund der MID Verteilung, MIDs in den Bereichen 8000 - 8500 zu nutzen. ==== Bekanntheit von Code-IDs nach ID-Klassen ==== **Abdeckung MIDs** * alle MIDs von offiziellen Büchern * über 5000 freie MIDs für eigene Bücher **Abdeckung CIDs** * alle **Abdeckung OIDs** * über 4400 für eigene Codes