summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README13
1 files changed, 13 insertions, 0 deletions
diff --git a/README b/README
index 824bb38..2686785 100644
--- a/README
+++ b/README
@@ -6,3 +6,16 @@ version 1) Teleauskunft 1188 from 1992, (April-June)
6version 2) Teleauskunft 1188 Telefon-Teilnehmer, Oktober 1995 / Telefon-Teilnehmer Gesamtausgabe from 1995/1996 6version 2) Teleauskunft 1188 Telefon-Teilnehmer, Oktober 1995 / Telefon-Teilnehmer Gesamtausgabe from 1995/1996
7version 3) Telefonbuch für Deutschland, Version 1.0 1996 through DasTelefonbuch, Deutschland, Herbst 2003 7version 3) Telefonbuch für Deutschland, Version 1.0 1996 through DasTelefonbuch, Deutschland, Herbst 2003
8version 4) DasTelefonbuch, Map&Route, Frühjahr 2004 until now 8version 4) DasTelefonbuch, Map&Route, Frühjahr 2004 until now
9
10version 1
11=========
12
13Notes: Strings are encoded in cp437, those inside records stored in 7-bit packed encoding. Only the .001 files on each CD are interesting.
14
15Each file consists of a standard header and a number of pages, with pages starting at 0x800, being spaced at 0x2000 steps.
16
17The header's important values are (uint16_t*)0x40 number of pages, (uint32_t*)0x42 total number of records in file and a \0 separated list of gasse, city, zip and prefix, starting at 0xe8.
18
19Each page can either be a "normal" one, with phone entries or a "blob" one, with multi line records, being referenced from "normal" pages inside the same file. It starts with a flag (uint8_t*)0x00, a size of blob's contents (i.e. if != 0, this is a blob page) at (uint16_t*)0x02, a count of records in that page at (uint16_t*)0x04 and for each record a pointer into this page (plus offset 0x0e), starting at 0x0e.
20
21Each record