Unexamined Files - krcenov/RNS510-Map-Viewer GitHub Wiki
Unexamined Files
Status: ✅ Historical — every file on the disc has now been examined
at least once. eeu.tmc (partially cracked — see
TMC Traffic-Data File) and zone.cfg
(identified — see Disc-Root Subsystems) were
the last two. This page is kept as a historical record of how each file
got there, and for its still-useful "how to start" methodology below.
(eeu.abc, eeu.aff, eeu.cal, eeu.cat, and eeu.cny, previously
listed here, are now cracked — see
Alphabet/Languages,
Affix Table,
Country Names,
Country Bounding Boxes, and
County Catalog — .cal's, .cat's, and
.cny's derived record-size candidates below all turned out exactly
right. Investigating eeu.aff's header led to cracking 3 more fields
shared by every NOT_COMPRESSED file's header — see
Header Trailer Fields — used below to derive
real record-size candidates for the remaining still-unexamined files.
eeu.mod, also previously listed here, turned out not to be a data
file at all — it's the disc's own schema dictionary, and cracking it is
now the single biggest lead for every file remaining on this page — see
Database Schema and the per-file notes below.
eeu.pcl, the one file eeu.mod couldn't identify at all, is also now
cracked — not through eeu.mod, but through the disc's own files.cfg
— see Phoneme Cluster List. eeu.pmc/
eeu.pmm, previously listed here as "not clean at k=0..4", are now
cracked too — the real wraparound multiple was just larger (k=62) than
the small search range originally tried — see
Postal-Code Merge Tables. eeu.pmp,
eeu.pol, and eeu.pot, previously listed here as confirmed-empty with
no further write-up, now have a full page reconstructing their intended
design from eeu.mod's schema — see
Postal-Code Files (Empty).
eeu.si, whose 8-byte derived record size below was already exact, is
also now fully cracked (all 20 real leaf fields positioned in exact
schema order) — see
Segment Classification Table,
which also corrects this page's own "strong lead for eeu.rd's
bytes[1:5]" claim below — that cross-reference doesn't hold up.
eeu.stt, previously the top "worth investigating first" candidate
below, is now fully cracked — see
State/Region Catalog, which also closes
the loop on eeu.cny's own state_id field. eeu.ti, then the last
remaining "worth investigating first" candidate, is now fully cracked
(a later pass assigned byte positions for all 14 remaining named
fields, though a couple of fields' exact semantics — e.g. the precise
DST transition hour — aren't independently confirmed) — see
Time-Info / DST Rule Table, which closes
the loop on eeu.cny's own timeinfo_id field. eeu.tmc, then the
last "still genuinely unexplained" file below, is also now partially
cracked — see TMC Traffic-Data File, using
ground truth found via config/create_cd.
zone.cfg has also since been opened and identified — see
Disc-Root Subsystems.)
They all share the same known container
Every one of these started with the identical 94-byte SIEMENS/
(C) SIEMENS AG NOT_COMPRESSED header already cracked for
eeu.rd/.il/
.iof/.typ/
.ctr/.cty — so the
outer container was a known quantity for all of them, including 3 more
fields in the header's own tail (full write-up).
eeu.tmc was file_type 16, record_count_lo16 0 (correctly
consistent with the variable-length directory it turned out to have —
see TMC Traffic-Data File), and
eeu.mod's own schema had already named its
real table "tmc file" (74 fields) before it was opened.
Every file's real table name and full field count was known
from eeu.mod — none of these are actually unidentified anymore, only
un-opened. research/mod_reader.py's extract_blocks() prints each
table's ordered field-name list directly and is the fastest way to start
any of the entries below (know what you're looking for before guessing at
byte offsets).
Files whose original speculation was superseded by eeu.mod
eeu.pmc/.pmmwere originally guessed to be a POI ("point of interest") file family based on the sharedpmprefix and the firmware's ownEDB/POI/*.db3convention.eeu.mod's schema already showed this was wrong — real postal-code list variants (postalcodeListMergeCity/postalcodeListSeparate) — and both files are now fully cracked: fixed 4-byte records (the real wraparound multiple neededk=62, not the smallk=0..4range tried here), and the content is a provable placeholder identity array, confirming these are siblings of the three confirmed-empty.pmp/.pol/.potfiles — see Postal-Code Merge Tables.eeu.pmp/.pol/.potwere confirmed empty early on but never given a full write-up;eeu.mod's schema reconstructs each one's intended design (.potuses the identical character-trie field template aseeuz.rt/.ct;.polis a postalcode+lat/lon+list-index lookup record;.pmpis the third "merge" sibling of.pmc/.pmm, which is also what resolved.pmc/.pmm's own open question about their field count) — see Postal-Code Files (Empty).eeu.moditself was originally just another unexamined file in this table, guessed to be "variable-length" from its zerorecord_count_lo16alone (correctly, as it turned out) — now fully cracked, see Database Schema.eeu.pclwas flagged here as having "no block at all" ineeu.mod's schema, purpose completely open.eeu.modgenuinely couldn't identify it (confirmed: only appears as a prefix inside unrelated MAP_COMPRESSED tile field names,pcl_cnt/pcl_dir/etc.) — but the disc's ownfiles.cfgnames it directly (fileId 27, "phoneme cluster list") and is now cracked — see Phoneme Cluster List. A reminder thateeu.mod's schema, while comprehensive, isn't the only source of ground truth on this disc.eeu.siwas flagged here as "a strong lead foreeu.rd's own long-unresolvedbytes[1:5]". Opened and fully cracked — all 20 real leaf fields positioned in exact schema order (rank/class/divided,route_num_type/paved, and 15 more including the last 11 single-bit flags assigned by position in a later pass) — but theeeu.rdcross-reference itself doesn't hold up: even at full-file scale (eeu.rd'sbytes[1:5]actually has 6,174 distinct values, a since- corrected earlier session's claim of "~5 distinct patterns"), decodingeeu.rd's own bytes witheeu.si's bit layout produces values outsideeeu.si's own bounded ranges. See Segment Classification Table for the corrected lead (the realseginfoIDFK more likely lives on the MAP_COMPRESSED tile format's own segment records instead).eeu.sttwas the top "worth investigating first" candidate here, on the strength of its 114-byte exact record-size match toeeu.cny's own 691 distinctstate_idvalues. Opened and fully cracked:country_idis a real FK intoeeu.ctr's own row order (noteeu.cal's numbering — a 3rd distinct country-numbering scheme on this disc), andeeu.cny'sstate_idis now confirmed a genuine FK into this table by full set equality, not just plausibility — see State/Region Catalog.eeu.tiwas the last "worth investigating first" candidate here (17 records, 23-byte exact candidate, small enough to fully hand-inspect). Opened and fully cracked:timeinfo_id/seqnr/ grouping confirmed,eeu.cny's owntimeinfo_idfield is confirmed a genuine FK into this table by an exact id-frequency correspondence (not just schema-consistency),timezoneis cracked by an exact formula validated against all 11 real Russian UTC offsets, and (a still later pass) byte positions are assigned for all 14 remaining named fields (the transition-date/duration DST-rule data), though a couple of fields' exact semantics (e.g.starthourshowing the same value3for both CET and EET, where real-world DST rules should make them differ by 1 real hour) aren't independently confirmed — see Time-Info / DST Rule Table.
Formerly "still genuinely unexplained" — both since resolved
eeu.tmc(25.8 MB) was flagged here as still fully unexamined, with only a speculative "TMC/ALERT-C" guess and a real 74-field schema name to go on.config/create_cd(the disc's own build script, Disc-Root Subsystems) revealedtelemat/tmc2/, whose real, self-documentingTMCCONFIG.inigave this investigation concrete ALERT-C ground truth to test against — now partially cracked (the file's own header + 44-table directory, fully validated) — see TMC Traffic-Data File.zone.cfg(81 bytes, plain text) — was flagged here as "quick to just read directly" but never actually was, until now: one line,eeu = 10.1/DB 01234 18408555 4444444444444443444111144444444421411 4442222444444— the18408555token ends in8555, this disc's own volume number. See Disc-Root Subsystems for the full picture.
With these two, every file on the whole disc — db/ and all 5
disc-root subsystems — has now been examined at least once.
Files declared by the format but not on this disc at all
Reading files.cfg in full (while tracking down eeu.pcl) surfaced 3
more logical file types the format defines that this disc doesn't even
create — not even as an empty 94-byte placeholder like eeu.pcl/
.pmp/.pol/.pot: 7 = ptp ("point types"), 15 = pdx ("poi index
file"), 16 = pti ("point types international"). None of
eeu.ptp/eeu.pdx/eeu.pti (or their eeuz. compressed forms) exist
under db/ on this reference disc. Not pursued further — noted here in
case a different region/market disc does populate them.
How to start
research/*.py all follow the same pattern: read the 94-byte header
(now including the 3 trailer fields, see
Header Trailer Fields), then try dividing
(filesize - 94) by the derived record size above (or small candidate
sizes if record_count_lo16 was 0 or didn't divide cleanly), or look for
embedded plausible-range coordinate int32s (/100000, same convention used
everywhere else on this disc) if a fixed record size doesn't pan out.
Cross-check candidate field boundaries against
eeu.mod's own ordered field-name list for
that table (research/mod_reader.py's extract_blocks()) before
guessing blind.