跳转至

附录 —— 文件格式

可读取的格式

格式 扩展名 说明
A2L / DAMOS .a2l .dam .damos ASAM MCD-2 MC;最可靠的路径
Intel HEX .hex 解析记录地址并保留空洞
Motorola S-record .s19 .s28 .s37 S0–S9 记录
原始 ROM .bin .rom .ori .mpc 不含标定图边界信息
WinOLS .ols ROM + 标定图 + 坐标轴 + 元数据
KP 包 .kp 不含 ROM,需要已打开的工程
TunerPro .xdf 定义文件
VAG .frf .sgo .odx .zip 加密内容需要 AES 密钥文件
CSV / JSON 清单 .csv .json 标定图地址清单
标定图包 .mtrpack MRC 格式
补丁 .mtrpatch MRC 格式
Datalog .csv 通道列表与时间序列

可写出的格式

格式 扩展名 说明
工程 .mtrp ROM + 标定图 + 历史 + 元数据(容器)
原始 ROM .bin .rom 保留尺寸与字节序
WinOLS .ols 工程导出
TunerPro .xdf 定义导出
标定图包 .mtrpack / .csv 选中的标定图
标定图清单 .csv .json 名称、地址、尺寸
调校报告 .html 旧值/新值对比
主题 .mtrtheme 配色定义

工程容器格式(.mtrp)

.mtrp 是二进制容器:

  • 头部 —— 魔数(MTRP)、格式版本、总长度、TOC 偏移。
  • TOC —— 每个区块的魔数、偏移与大小。
  • 区块 —— ROM 数据、标定图定义、元数据、历史、样式。
  • 正文校验和 —— 用于检测损坏。

各区块独立写入与读取;读取单个区块无需把整个文件载入内存。

补丁格式(.mtrpatch)

一个 JSON 文档:

{
  "format": "mtrpatch",
  "label": "Stage 1 — low RPM fuel maps",
  "maps": [
    {
      "name": "KRKTE_FIX",
      "address": "0x0012A340",
      "ref":  "0x0B0C0D0E",
      "new":  "0x0B0C1012"
    }
  ],
  "raw": []
}
  • ref —— 改动前的字节,用于校验。
  • new —— 将要写入的字节。
  • raw —— 标定图之外的原始字节补丁(仅对同一软件版本有效)。

标定图包格式(.mtrpack)

以名称 + 地址 + 缩放 + 数值的形式携带标定图。应用在目标 ROM 上分三步匹配: 显式地址、名称、包内记录的地址。

来自 A2L 的缩放

COMPU_METHOD 使用 COEFFS_LINEAR 形式的 f(x) = a·x + b。应用直接把这些 系数换算为标定图的系数与偏移。通过 COMPU_TAB_REF 定义的查表换算同样支持。

字节序

部分 A2L 文件声明 BYTE_ORDER MSB_LAST,表示单元格字节按反向存储。应用会 把它作为属性读取,但仍可用 视图 ▸ 字节序 手动更改。字节序读错会产生 "看似合理"的错误数值,而且很容易被忽略。