Firmware Fn SetRouteObject - krcenov/RNS510-Map-Viewer GitHub Wiki
Part of Firmware Reversing.
-
File offset:
0x7919f8(VA0xf701f6ec) — immediately followsmv_convert_slot_nr's own cleanblr, no gap. -
Status: 🟡* Partially traced — real call-target evidence
confirmed throughout; ends in the same "no locally-visible
blr" anomaly as several other functions on this wiki (frame popped, 3 undecodable<data>words follow instead ofblrthis time — the count varies per instance, still the same general pattern). -
Full mangled name:
SetRouteObject__15AdasRouteObjectP9RoutePath
Registers a RoutePath* with the ADAS subsystem's own route-tracking
object. Real, confirmed call targets:
| Target | What it suggests |
|---|---|
setJunctionId__16CfcTypeNavDBInfoi (called twice) |
Same shared primitive seen throughout the mv_*/Adas functions on this wiki |
parseMessage__13CArr_AdasMainRC9msgheader |
Same ADAS message dispatch already confirmed on mv_convert_slot_nr
|
writeProtocolHeader__19CfcNetMemoryChannel |
Wrong name, corrected — same call ADDRESS as mv_convert_slot_nr's own reference to this, now confirmed to be a trivial single-field getter/setter inside a real, confirmed struct-layout cluster, not a protocol-header writer |
IsValid__10EHTreeNodel |
Wrong name, corrected — same address resolves to a field-by-field object-comparison function (operator==-shaped), part of the same struct-layout cluster linked above, not a validity check |
swap_poss_leafs__FP10master_recPP14possible_pathsT1 / on_pattern_fact__FP10master_recP14possible_pathsii
|
Real route-search/pattern-matching internals — master_rec/possible_paths are real global function parameter types, strongly suggesting this function drives (or queries) the SAME route-search algorithm machinery this wiki's own name-search catalog pages document from the map-disc side, now confirmed reachable from the ADAS subsystem too |
getCurrentCarPosition__FR11DyCoCCPDataR16vehicle_location |
A real, previously-uncatalogued global function — reads the current car position into a real vehicle_location struct from a DyCoCCPData source (plausibly "Dynamic Coordinate/Car Position" data) — called conditionally near the end, gated on the function's own 3rd argument equalling 1
|
AdasRouteObject::SetRouteObject is the real function that hands the
ADAS subsystem a route to track, looping over a master_rec/
possible_paths-shaped candidate-path search structure (the same real
route-pattern-matching machinery used elsewhere in this codebase's
routing/name-search stack) and, depending on an argument flag, also
fetches the car's current live position — consistent with the ADAS
module needing to know both the active route AND the live vehicle
position to correlate detected signs/features against the right
stretch of road.