• 車種別
  • パーツ
  • 整備手帳
  • ブログ
  • みんカラ+

赤Xの愛車 [三菱 ランサーエボリューションX]

整備手帳

作業日:2009年2月21日

DASH3 HEX解析

他の整備手帳を見る 他の整備手帳を見る

目的 修理・故障・メンテナンス
作業 DIY
難易度

初級

作業時間 30分以内
1
アドレスはword単位。BYTE ORDER は Big Endian。

003EC000~ 計算式テーブル
003F0000~ DASH3レイアウトテーブル
003F0600~ variableデータテーブル
003F2600~ Gear変換テーブル
003F2800~ ShiftLightsテーブル
003F2A00~ Display Screenテーブル
003F4000~ Startup Bitmapデータ
003F5000~ Bitmapデータ
* bit orderは MSB,[30-23,][22-15,][14-7,]6,5,4,3,2,1,LSBとすると
* word のバイト順は MSB-bit8, bit7-LSB
* floatのバイト順は bit15-bit8, bit7-LSB, MSB-bit24, bit23-bit16
2
計算式テーブル

003EC000 1word 計算式テーブル先頭マーク(0x00CD)
003EC001 1word 計算式テーブルのバイトサイズ(<SIZE>)
003EC002 可変  計算式1 (time)
003Exxxx 可変  計算式2 (long accel)

003Exxxx 可変  計算式184 (Last sector time)
003EC002+<SIZE>/2まで

計算式の中身 - 記述は逆ポーランド記法を使います。
+00 に word で計算式のwordサイズを入れて
+02 以降に word で、stack番号(1~)、演算子番号を順番に入れていきます。
stack番号0x0019、演算子番号0x0019、エンドマーク0x0000で終わります。

演算子一覧
0x0000 : <=
0x0001 : >=
0x0002 : !=
0x0003 : ==
0x0004 : <
0x0005 : >
0x0006 : + (加算)
0x0007 : - (減算)
0x0008 : * (乗算)
0x0009 : / (除算)
0x000A : ^ (べき乗)
0x000B : AND (論理積)
0x000C : OR (論理和)
0x000D : XOR (排他論理和)
0x0012 : 続く 2word で variable index を指定する。
0x0014 : 続く 4word で float値を指定する。
0x0015 : 続く 2word で引数の数と関数を指定する。

0x0015に続く関数
0x0001 : SIN (引数の数は1)
0x0002 : COS (引数の数は1)
0x0003 : TAN (引数の数は1)
0x0004 : ASIN (引数の数は1)
0x0005 : ACOS (引数の数は1)
0x0006 : ATAN (引数の数は1)
0x0007 : SINH (引数の数は1)
0x0008 : COSH (引数の数は1)
0x0009 : TANH (引数の数は1)
0x000A : ASINH (引数の数は1)
0x000B : ACOSH (引数の数は1)
0x000C : ATANHだと思われるが、1.2.21ではエラーとなり記述できない
0x000D : LOG2 (引数の数は1)
0x000E : LOG (引数の数は1)
0x000F : LN (引数の数は1)
0x0010 : EXP (引数の数は1)
0x0011 : SQRT (引数の数は1)
0x0012 : SIGN (引数の数は1)
0x0013 : ROUND (引数の数は1)
0x0014 : ABS (引数の数は1)
0x0015 : INT (引数の数は1)
0x0016 : IF (引数の数は3)
0x0017 : - (符号反転、 引数の数は1)
0x0018 : SUM (引数の数は可変)
0x0019 : AVG (引数の数は可変)
0x0020 : MIN (引数の数は2)
0x0021 : MAX (引数の数は2)

例1.計算式無しの場合
+00 0x0002 (サイズ)
+01 0x0000 (エンドマーク)

例2.Y = -Analog1 の場合
+00 0x000C (サイズ)
+01 0x0001 0x0012 0x00C7 0x0000 : stack1 に Analog1(variable index=200))を保存
+05 0x0001 0x0015 0x0001 0x0017 : stack1に stackから1つ取り出して-(符号反転)して保存
+09 0x0019 0x0019 (計算終了のおまじない? 25番stackに保存する?)
+0B 0x0000 (エンドマーク)
3
DASH3レイアウトテーブル

003F0000 18word Screen1 のパーツ1
003F0012 18word Screen1 のパーツ2

003F00B4 18word Screen2 のパーツ1

003F0168 18word Screen3 のパーツ1

003F021C 18word Screen4 のパーツ1

003F02D0 18word Sector のパーツ1

003F0384 18word Lap のパーツ1

003F0438 18word Min/Max のパーツ1


18word(36バイト)の構造
+00 word index(1~70)
+02 word variable index
+04 byte Update rate (20/Update rate:10Hzのとき0x02)
+05 byte MSB-bit6: パーツタイプ(00-digits, 01-barchat, 10-graph?, 11-text only)
     bit5-bit4: フォントサイズ(01-small, 10-medium, 11-Large)
     bit3: 負号表示(0-しない, 1-する)
     bit2: time表示(0-しない, 1-する)
     bit1: 単位表示(0-しない, 1-する)
     bit0: 単位の[]表示(0-しない, 1-する。barchart時は 1 の模様)
+06 byte Leading Digits(digits表示時)
+07 byte Decimal Places(digits表示時)
+08 byte Left
+09 byte Top
+10 byte Right (barchart, graph表示時)
+11 byte Bottom (barchart, graph表示時)
+12 float Low alarm値
+16 float High alarm値
+20 8word Channel Name(最長7文字+NULL)

-------------
+04 byte 0x01
+05 byte 0x10
のとき bitmap image を意味し
+20 word bitmap image 格納先の003F5002からのoffset
となる。
4
variableデータテーブル

003F0600 1word variableデータテーブル先頭マーク(0x00C9)
003F0601 1word variableデータテーブルのバイトサイズ(0x2E04)
003F0602 32word index 1 : time
003F0622 32word index 2 : long accell
003F0642 32word index 4 : lat accell

003F1CE2 32word index 7010 : Last sector time

32word(64バイト)の構造
+00 word variable index
+02 word 計算式(003EC002からのオフセット。未使用時は0xFFFF)
+04 float Smoothed over値(None Setは0.0)
+08 float Maximum rate of change値(None Setは0.0)
+12 float Low alarm値(None Setは0.0)
+16 float High alarm値(None Setは0.0)
+20 4word Units(最長3文字+NULL)
+28 18word Variable Name(最長17文字+NULL)
5
Gear変換テーブル

003F2600 1word Gear変換テーブル先頭マーク(0x00CB)
003F2601 1word Gear変換テーブルのバイトサイズ(<SIZE>)
003F2602 1word Gear数(<N>)
003F2603 1word ???(0x0000)
003F2604 float 1速ギヤ速度最低値(1000rpm時)
003F2606 float 1速ギヤ速度最高値(1000rpm時)

003F26XX float N速ギヤ速度最低値(1000rpm時)
003F26XX float N速ギヤ速度最高値(1000rpm時)
003F26XX 1word GearBox センサー
003F26XX 1word GearBox センサー variable index
003F26XX float 1速ギヤレシオ
003F26XX float 2速ギヤレシオ
003F26XX float 3速ギヤレシオ
003F26XX float 4速ギヤレシオ
003F26XX float 5速ギヤレシオ
003F26XX float 6速ギヤレシオ
003F26XX float 7速ギヤレシオ
003F26XX float ファイナルギヤレシオ
003F26XX float タイヤの円周
003F2602+<SIZE>/2まで
6
ShiftLightsテーブル (Pulses per rev.も含む)

003F2800 1word ShiftLightsテーブル先頭マーク(0x00CC)
003F2801 1word ShiftLightsテーブルのバイトサイズ(<SIZE>)
003F2802 1word ShiftLightsテーブル variable index
003F2803 1word Diff RPM in Diff Gear フラグ
003F2804 float Pulses per revelution
003F2806 float 1番目LED点灯回転数(DiffRPM時は1速ギヤ用)
003F2808 float 2番目LED点灯回転数(DiffRPM時は1速ギヤ用)
003F280A float 3番目LED点灯回転数(DiffRPM時は1速ギヤ用)
003F280C float 4番目LED点灯回転数(DiffRPM時は1速ギヤ用)
003F280E float 5番目LED点灯回転数(DiffRPM時は1速ギヤ用)
003F2810 float 6番目LED点灯回転数(DiffRPM時は1速ギヤ用)
003F2812 float フラッシュ点灯回転数(DiffRPM時は1速ギヤ用)
003F2814 float 1番目LED点灯回転数(DiffRPM時の2速ギヤ)

003F2822 float 1番目LED点灯回転数(DiffRPM時の3速ギヤ)

003F2830 float 1番目LED点灯回転数(DiffRPM時の4速ギヤ)

003F283E float 1番目LED点灯回転数(DiffRPM時の5速ギヤ)

003F284C float 1番目LED点灯回転数(DiffRPM時の6速ギヤ)

003F285A float 1番目LED点灯回転数(DiffRPM時の7速ギヤ)

003F2802+<SIZE>/2まで
7
Display Screenテーブル

003F2A00 1word Display Screenテーブル先頭マーク(0x00CE)
003F2A01 1word Display Screenテーブルのバイトサイズ(0x0028)
003F2A02 1word Display Screenテーブル variable index
003F2A03 1word ???(0x0000)
003F2A04 float Screen1の最低値
003F2A06 float Screen1の最高値
003F2A08 float Screen2の最低値
003F2A0A float Screen2の最高値
003F2A0C float Screen3の最低値
003F2A0E float Screen3の最高値
003F2A10 float Screen4の最低値
003F2A12 float Screen4の最高値
8
Startup Bitmapデータ

003F4000 1word Startup Bitmapデータ先頭マーク(0x00CA)
003F4001 1word Startup Bitmapデータのバイトサイズ(<SIZE>)
003F4002 1byte ドットの色(白:0x00 or 黒:0xFF)
003F4003 1byte 横方向に続く数
003F4004~ 2byte 色と数をペアにして繰り返し
003F4002+<SIZE>/2まで

------------
Bitmapデータ

003F5000 1word Bitmapデータ先頭マーク(0x00D0)
003F5001 1word Bitmapデータのバイトサイズ(<SIZE>)

003F5002 1byte 縦のドット数
003F5003 1byte 幅のドット数
003F5004 ?byte 横x縦ドットのpaddingなしのbitdata
003F5XXX word align まで padding

003F5XXX 1byte 縦のドット数
003F5XXX 1byte 幅のドット数
003F5XXX ?byte 横x縦ドットのpaddingなしのbitdata
003F5XXX word align まで padding
の繰り返し
003F5002+<SIZE>/2まで

関連パーツレビュー

イイね!0件




タグ

関連整備ピックアップ

エアコンフィルターとワイパーゴムの交換

難易度:

エアコンガス交換

難易度:

2回目 SST修理

難易度: ★★★

御守りアルミテープチュン

難易度:

フロント マッドフラップ リベット交換

難易度:

35万キロ到達

難易度:

関連リンク

この記事へのコメント

コメントはありません。

プロフィール

「DTM II 付けたった http://cvw.jp/b/355608/32726428/
何シテル?   04/01 00:36
基本はDIYでこつこつと。 力仕事は、、、お店任せ (はぁと)
みんカラ新規会員登録

ユーザー内検索

掲示板

リンク・クリップ

【悲報】ニコ・ロスベルグ、運転がヘタだった 
カテゴリ:その他(カテゴリ未設定)
2016/12/12 19:53:12
シムフリーiPhone 5 x docomo LTE のその後… 
カテゴリ:その他(カテゴリ未設定)
2015/10/26 15:17:50
DTM2 Evo10・R35GT-R用のセッティング方法(だいたい) 
カテゴリ:その他(カテゴリ未設定)
2014/04/04 09:31:09

愛車一覧

三菱 ランサーエボリューションX 三菱 ランサーエボリューションX
初めての白以外の車です。 この車はチョコチョコいじり始めました。。。
三菱 ランサーエボリューションVII 三菱 ランサーエボリューションVII
ほぼフルノーマルで乗ってました。 前の車のフルバケを乗せ換えたくらいだったかな。 写真は ...
三菱 ギャラン 三菱 ギャラン
初めて「所有」した4WDターボ車でした。 ガチガチ車高調+フルバケ+ECU書き換えで乗っ ...
ヘルプ利用規約サイトマップ

あなたの愛車、今いくら?

複数社の査定額を比較して愛車の最高額を調べよう!

あなたの愛車、今いくら?
メーカー
モデル
年式
走行距離(km)
© LY Corporation