DSM/Mitsubishi CAPS: Difference between revisions
| Line 208: | Line 208: | ||
| !KIGOD.DAT | !KIGOD.DAT | ||
| | | | | ||
| |Language Dutche | |Language Dutche | ||
| | | | | ||
| | | | | ||
| | | | | ||
| |Data | |||
| |- | |- | ||
| !KIGOE.DAT | !KIGOE.DAT | ||
| Line 220: | Line 220: | ||
| | | | | ||
| | | | | ||
| | | |Data | ||
| |- | |- | ||
| !KIGOF.DAT | !KIGOF.DAT | ||
| Line 228: | Line 228: | ||
| | | | | ||
| | | | | ||
| | | |Data | ||
| |- | |- | ||
| !KIGOG.DAT | !KIGOG.DAT | ||
| | | | | ||
| |Language German | |Language German | ||
| | | | | ||
| | | | | ||
| | | | | ||
| |Data | |||
| |- | |- | ||
| !KIGOP.DAT | !KIGOP.DAT | ||
| | | | | ||
| |Language  | |Language Portuguese | ||
| | | | | ||
| | | | | ||
| | | | | ||
| |Data | |||
| |- | |- | ||
| !KIGOS.DAT | !KIGOS.DAT | ||
| | | | | ||
| |Language | |Language Spanish | ||
| | | | | ||
| | | | | ||
| | | | | ||
| |Data | |||
| |- | |- | ||
| !KIGOU.DAT | !KIGOU.DAT | ||
| | | | | ||
| |Language?? | |Language ?Universal? | ||
| | | | | ||
| | | | | ||
| | | | | ||
| |Data, same as KIGOE.DAT (English) | |||
| |- | |- | ||
| !KOYUU.DAT | !KOYUU.DAT | ||
Revision as of 18:41, 23 April 2023
Database Files
| Filename | Table Name | Desc | Translation | Note | ||
|---|---|---|---|---|---|---|
| Kana | Kanji | English | ||||
| BUBAN_A.DAT | Part Numbers A | ぶばん | 部番 | Part Number | Data | |
| BUBAN_A.IDX | ```BUBAN_A IDX``` | Part Numbers A | ぶばん | 部番 | Part Number | Index | 
| BUBAN_B.DAT | Part Numbers B | ぶばん | 部番 | Part Number | Data | |
| BUBAN_B.IDX | ```BUBAN_A IDX``` | Part Numbers B | ぶばん | 部番 | Part Number | Index | 
| BUKYOU.DAT | ぶきょう | 武侠 | chivalry-chivalry?) | Data | ||
| BUKYOU.IDX | ```BUKYOU IDX``` | ぶきょう | 武侠 | chivalrychivalry? | Index | |
| CD_ID.DAT | ||||||
| COLOUR.DAT | Color? | |||||
| HLP_MDL.DAT | Help Modal? | |||||
| HLP_MDL.IDX | ```HLP_MDL IDX``` | Help Modal? | ||||
| HLP_RUI.DAT | Help terms? | |||||
| HLP_RUI.IDX | ```HLP_RUI IDX``` | Help terms? | ||||
| HLP_TOK.DAT | Help Token? | |||||
| HLP_TOK.IDX | ```HLP_TOK IDX``` | Help Token? | ||||
| HLP_TOKC.DAT | Help Token C? | |||||
| HLP_TOKC.IDX | ```HLP_TOK_CIDX``` | Help Token C? | ||||
| ILLUST.IMG | Illustrations? | Image? | ||||
| ILLUSTX.DAT | Illustrations X? | Data | ||||
| ILLUSTX.IDX | ```ILLUSTX IDX``` | Illustrations X? | Index | |||
| ILST_NWS.IMG | Illustration Something?? | Image? | ||||
| KATARUI.DAT | かた | 語る | word class? Construction class? | Data | ||
| KATARUI.IDX | ```KATARUI IDX``` | かた | 語る | word class? Construction class? | Index | |
| KAT_SEQ.DAT | Construction sequence? | Data | ||||
| KAT_SEQ.IDX | ```KAT_SEQ IDX``` | Construction sequence? | Index | |||
| KIGOD.DAT | Language Dutche | Data | ||||
| KIGOE.DAT | Language English | Data | ||||
| KIGOF.DAT | Language French | Data | ||||
| KIGOG.DAT | Language German | Data | ||||
| KIGOP.DAT | Language Portuguese | Data | ||||
| KIGOS.DAT | Language Spanish | Data | ||||
| KIGOU.DAT | Language ?Universal? | Data, same as KIGOE.DAT (English) | ||||
| KOYUU.DAT | Public? | |||||
| KOYUU.IDX | ```KOYUU IDX``` | Public? | ||||
| NAMSEQD.DAT | Names - See index notes | Data, same as NAMSEQE.DAT | ||||
| NAMSEQD.IDX | ```NAM_FRA IDX``` | Names - See notes | Index, same as NAMSEQE.IDX, table name suggests it is supposed to be French, filename suggests Dutche | |||
| NAMSEQE.DAT | Names - English | Data | ||||
| NAMSEQE.IDX | ```NAM_ENG IDX``` | Names - English | Index | |||
| NAMSEQF.DAT | Names - French | Index, same as NAMSEQE.DAT | ||||
| NAMSEQF.IDX | ```NAM_FRA IDX``` | Names - French | Index, same as NAMSEQE.IDX | |||
| NAMSEQG.DAT | Names - German | Data, the ONLY NAMSEQ file that differs from NAMSEQE, actually contains German language! | ||||
| NAMSEQG.IDX | ```NAM_GER IDX``` | Names - German | Index, same as NAMSEQE.IDX | |||
| NAMSEQP.DAT | ||||||
| NAMSEQP.IDX | ```NAM_FRA IDX``` | Index, same as NAMSEQE.IDX | ||||
| NAMSEQS.DAT | ||||||
| NAMSEQS.IDX | ```NAM_FRA IDX``` | Index, same as NAMSEQE.IDX | ||||
| NAMSEQU.DAT | ||||||
| NAMSEQU.IDX | ```NAM_ENG IDX``` | Index, same as NAMSEQE.IDX | ||||
| NAM_KATA.DAT | ||||||
| NAM_KATA.IDX | ||||||
| NAM_RUI.DAT | ||||||
| NAM_RUI.IDX | ||||||
| OPC.DAT | ||||||
| OPC.IDX | ||||||
| OPTION.DAT | ||||||
| OPTION.IDX | ||||||
| PN_KATA.DAT | ||||||
| PN_KATA.IDX | ||||||
| SEIBI.DAT | ||||||
| SEIBI.IDX | ||||||
| SEISAN.DAT | ||||||
| SEISAN.IDX | ||||||
| SEQ_KATA.DAT | ||||||
| SEQ_KATA.IDX | ||||||
| SHARYO.DAT | しゃりょう | 車両 | Car/Vehicle | Date | ||
| SHARYO.IDX | Contains vehicle VIN as primary key | しゃりょう | 車両 | Car/Vehicle | Index | |
| SIRYO.DAT | ||||||
| SPCNO.DAT | ||||||
| SPCNO.IDX | ||||||
| TANGO2D.DAT | ||||||
| TANGO2D.IDX | ||||||
| TANGO2E.DAT | ||||||
| TANGO2E.IDX | ||||||
| TANGO2F.DAT | ||||||
| TANGO2F.IDX | ||||||
| TANGO2G.DAT | ||||||
| TANGO2G.IDX | ||||||
| TANGO2P.DAT | ||||||
| TANGO2P.IDX | ||||||
| TANGO2S.DAT | ||||||
| TANGO2S.IDX | ||||||
| TANGO2U.DAT | ||||||
| TANGO2U.IDX | ||||||
| TANGOD.DAT | ||||||
| TANGOD.IDX | ||||||
| TANGOE.DAT | ||||||
| TANGOE.IDX | ||||||
| TANGOF.DAT | ||||||
| TANGOF.IDX | ||||||
| TANGOG.DAT | ||||||
| TANGOG.IDX | ||||||
| TANGOP.DAT | ||||||
| TANGOP.IDX | ||||||
| TANGOS.DAT | ||||||
| TANGOS.IDX | ||||||
| TANGOU.DAT | ||||||
| TANGOU.IDX | ||||||
| TANPNC2D.DAT | ||||||
| TANPNC2D.IDX | ||||||
| TANPNC2E.DAT | ||||||
| TANPNC2E.IDX | ||||||
| TANPNC2F.DAT | ||||||
| TANPNC2F.IDX | ||||||
| TANPNC2G.DAT | ||||||
| TANPNC2G.IDX | ||||||
| TANPNC2P.DAT | ||||||
| TANPNC2P.IDX | ||||||
| TANPNC2S.DAT | ||||||
| TANPNC2S.IDX | ||||||
| TANPNC2U.DAT | ||||||
| TANPNC2U.IDX | ||||||
| TANPNCD.DAT | ||||||
| TANPNCD.IDX | ||||||
| TANPNCE.DAT | ||||||
| TANPNCE.IDX | ||||||
| TANPNCF.DAT | ||||||
| TANPNCF.IDX | ||||||
| TANPNCG.DAT | ||||||
| TANPNCG.IDX | ||||||
| TANPNCP.DAT | ||||||
| TANPNCP.IDX | ||||||
| TANPNCS.DAT | ||||||
| TANPNCS.IDX | ||||||
| TANPNCU.DAT | ||||||
| TANPNCU.IDX | ||||||
| TOKTBL.DAT | Token Table? | Data | ||||
| TOKTBL.IDX | Token Table? | Index | ||||
| UNKATA.DAT | うんかた | |||||
| UNKATA.IDX | うんかた | |||||
| YOUGO.DAT | ようご | 用語 | Term | Data | ||
| YOUGO.IDX | ようご | 用語 | Term | Index | ||
| YOUGOB.DAT | Term B | ようご | 用語 | Term | Data | |
| YOUGOB.IDX | Term B | ようご | 用語 | Term | Index | |
| YPCNO.DAT | ||||||
| YPCNO.IDX | ||||||
File Formats
VIN Lookup
SHARYO.IDX Lookup:
| Read start | Bytes read | 
|---|---|
| 0 | 2048 | 
| 4096 | 2048 | 
| 229376 | 2048 | 
| 229376 | 4096 | 
| 21,833,728 | 2048 | 
| 21,831,680 | 4096 | 
SHARYO.DAT Lookup:
| Read start | Bytes read | 
|---|---|
| 35,073,568 | 2048 | 
| 35,069,952 | 8192 | 
IDX - Index
Index files are broken up into 2048 byte chunks, which I will refer to as "pages". Index file must be at least 1 page in size, meaning the smallest IDX file will be 2048 bytes, filled mostly with null bytes(00h) if it has 1 or 2 indexes (there are 60 indexes per page in SHARYO.IDX for example).
Header
The first 32 bytes of each page is the "header". The header's first 8 bytes contain the filename, if the filename is less than 8 bytes the remaining bytes will be padded with 20h. After the name is "IDX", followed by 00h as a seperator.
Byte 13 (14th byte) is the "page number", starting with 01h and incrementing each page.
Bytes 14-32 appear to be other informational flags which have yet to be understood.
| Byte # | Description | 
|---|---|
| 0-7 | Uppercase ASCII, matches file name, if name < 8 bytes it is padded with 20h | 
| 8-10 | 49h 44h 58h, literal: "IDX", Uppercase ASCII | 
| 11 | Always 00h, separator or null byte for the string? | 
| 12 | Always the same in all headers that are in the same file, often seen: 09h 11h, is this multiplier or record length? | 
| 13 | The "page" count, starts at 01h increments by 1 every "header" | 
| 14-31 | Other flags | 
| 15 | 00h or 01h or 02h, always set with byte 16? Always the same as byte 16? | 
| 16 | 00h or 01h or 02h, always set with byte 15? Always the same as byte 15? | 
| 18 | Secondary counter, starts at 01h and increments by 01h, always used with bytes 15 and 16 set? | 
| 22 | Number of records on this page | 
index entry
| Byte # | Description | 
|---|
Examples
NU = NULL BYTE (00h) PA = PADDING (20h)
SEIBI.IDX - 2048 bytes
Byte : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 Hex : 53 45 49 42 49 20 20 20 49 44 58 00 09 01 00 00 00 00 00 00 01 00 01 00 00 00 00 00 00 00 00 00 39 39 39 39 39 39 39 39 39 01 ASCII: S E I B I I D X 9 9 9 9 9 9 9 9 9
UNKATA.IDX - 2048 bytes
Byte : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 Hex : 55 4E 4B 41 54 41 20 20 49 44 58 00 09 01 00 00 00 00 00 00 01 00 01 00 00 00 00 00 00 00 00 00 39 39 39 39 39 39 39 39 39 01 ASCII: U N K A T A I D X 9 9 9 9 9 9 9 9 9
SHARYO.IDX - bytes
#Header - 32 bytes:                            \/ Page (1)                  \/ Number of records
Byte : 0  1  2  3  4  5  6  7  8  9  10 11 12  13  14 15 16 17 18 19 20 21  22  23 24 25 26 27 28 29 30 31
Hex  : 53 48 41 52 59 4F 20 20 49 44 58 00 11  01  00 00 00 00 00 00 00 00  06  00 00 00 00 00 00 00 00 00
ASCII: S  H  A  R  Y  O        I  D  X
Data :                   PA PA          NU 11  1                            6
#VIN (02) - 21 bytes                                       \/-- Count Column (2)
       { 17 bytes                                        }
Byte : 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48  49  50 51 52
Hex  : 34 41 33 41 43 38 34 4C 33 59 45 30 35 31 32 36 31  02  00 00 00
ASCII: 4  A  3  A  C  8  4  L  3  Y  E  0  5  1  2  6  1
Data :                                                     2   NU NU NU
#VIN (03) - 21 bytes
Hex  : 34 41 33 43 53 34 34 54 58 4D 45 30 30 36 31 30 36  03  00 00 00
ASCII: 4  A  3  C  S  4  4  T  X  M  E  0  0  6  1  0  6
Data :                                                     3   NU NU NU
#VIN (04) - 21 bytes
Hex  : 4A 41 33 41 4D 36 34 4A 37 52 59 30 30 35 33 35 33  04  00 00 00
ASCII: J  A  3  A  M  6  4  J  7  R  Y  0  0  5  3  5  3
Data :                                                     4   NU NU NU
#VIN (05) - 21 bytes
Hex  : 4A 41 34 47 4A 33 31 53 31 4D 4A 30 31 33 39 31 34  05  00 00 00
ASCII: J  A  4  G  J  3  1  S  1  M  J  0  1  3  9  1  4
Data :                                                     5   NU NU NU
#VIN (06) - 21 bytes
Hex  : 4A 41 37 4C 53 32 31 47 34 52 50 30 31 32 37 33 34  06  00 00 00
ASCII: J  A  7  L  S  2  1  G  4  R  P  0  1  2  7  3  4
Data :                                                     6   NU NU NU
#??? (07) - 18 bytes
Hex  : 5A 31 36 41 57 59 30 59 30 30 31 36 39 37 20 20 20  07 ... \
ASCII: Z  1  6  A  W  Y  0  Y  0  0  1  6  9  7               ... + 1893 Null Bytes (2048 byte total header space)
Data :                                           PA PA PA  7  ... /
                                             | Always 11??
#Header 2 (Start at 2048 Bytes) - 32 Bytes  \/  \/Page (2)                  \/ Number of records
Byte : 0  1  2  3  4  5  6  7  8  9  10 11  12  13  14 15 16 17 18 19 20 21  22  23 24 25 26 27 28 29 30 31
Hex  : 53 48 41 52 59 4F 20 20 49 44 58 00  11  02  00 01 01 00 01 00 00 00  60  00 00 00 00 00 00 00 00 00
ASCII: S  H  A  R  Y  O        I  D  X                                        '
Data :                   PA PA          NU  11  2      1  1     1            60     
#Indexes from page 2
       { 17 bytes                                        } \/-- Count Column (8)
Hex  : 32 36 41 58 4E 20 20 45 30 38 37 35 34 31 20 20 20  08  00 00 00
ASCII: 2  6  A  X  N        E  0  8  7  5  4  1
Data :                PA PA                      PA PA PA  8   NU NU NU
Hex  : 33 34 42 31 52 20 20 45 30 39 35 37 37 32 20 20 20  09  00 00 00 
ASCII: 3  4  B  1  R        E  0  9  5  7  7  2         
Data :                PA PA                      PA PA PA  9   NU NU NU
Hex  : 33 34 42 33 52 20 20 45 30 38 32 30 37 30 20 20 20  0A  00 00 00
ASCII: 3  4  B  3  R        E  0  8  2  0  7  0            
Data :                PA PA                      PA PA PA  10  NU NU NU
#Header 3 Byte : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Hex : 53 48 41 52 59 4F 20 20 49 44 58 00 11 03 00 01 01 00 02 00 00 00 60 00 00 00 00 00 00 00 00 00 ASCII: S H A R Y O I D X ' Data : PA PA NU 11 3 1 1 2 60 #Indexes from page 3 \/-- Count Column (68) Hex : 34 41 33 41 43 38 34 4C 39 59 45 30 31 38 33 37 36 68 00 00 00 ASCII: 4 A 3 A C 8 4 L 9 Y E 0 1 8 3 7 6 h Data : 68 NU NU NU Hex : 34 41 33 41 45 34 35 47 31 33 45 31 33 38 36 34 30 69 00 00 00 ASCII: 4 A 3 A E 4 5 G 1 3 E 1 3 8 6 4 0 i Data : 69 NU NU NU Hex : 34 41 33 41 45 34 35 47 36 31 45 30 33 30 33 32 30 6A 00 00 00 ASCII: 4 A 3 A E 4 5 G 6 1 E 0 3 0 3 2 0 j Data : 6A NU NU NU Hex: ASCII: Data: