Difference between revisions of "FF8/PlaystationMedia"
my_wiki>Myst6re |
|||
(17 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | = FF8DISCX.IMG File Format = | + | By myst6re |
+ | |||
+ | = FF8DISCX.IMG File Format = | ||
Almost all of the game files are hidden in the FF8DISCX.IMG (with X=disc number) file. | Almost all of the game files are hidden in the FF8DISCX.IMG (with X=disc number) file. | ||
− | == Root Files == | + | == Root Files == |
In the case of a Japanese iso, the file begins directly with a list of file location and size, with the following format: | In the case of a Japanese iso, the file begins directly with a list of file location and size, with the following format: | ||
− | {| | + | {| class="wikitable" |
− | ! | + | ! Offset |
− | ! | + | ! Size |
− | ! | + | ! Data |
|- | |- | ||
| 0 | | 0 | ||
Line 21: | Line 23: | ||
|} | |} | ||
− | In the case of a PAL iso, there are 5 unknown sectors before this list of files. | + | In the case of a PAL iso, there are 5 unknown sectors (a sector = 2048 bytes in data, 2352 bytes in disk) before this list of files. |
'''Notes:''' | '''Notes:''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | * I do not have the American iso, please fix this article if you can. |
+ | * We do not know how many files there are in the list, neither file names! | ||
+ | * Each file in FF8DISCX.IMG are relative to the start of the '''iso'''! | ||
+ | |||
+ | {| class="wikitable" | ||
+ | ! ID | ||
+ | ! Filename (from PC version) | ||
+ | ! Notes | ||
+ | |- | ||
+ | | 0 | ||
+ | | ? + packcode.bin | ||
+ | | Contains a font file (tim format) | ||
+ | |- | ||
+ | | 2 | ||
+ | | | ||
+ | [[#Field_Files|field.bin]] | ||
+ | | LZSed | ||
+ | |- | ||
+ | | 3 | ||
+ | | wm2field.tbl | ||
+ | | size= 72*24 bytes | ||
+ | |- | ||
+ | | 4 | ||
+ | | ? + mmagic.bin + mitem.bin + areames.dc1 + ? | ||
+ | | | ||
+ | |- | ||
+ | | 7 | ||
+ | | ? + pet_exp.bin + ? | ||
+ | | | ||
+ | |- | ||
+ | | 9 | ||
+ | | ? + mwepon.bin + mwepon.msg + shop.bin + price.bin + ? | ||
+ | | | ||
+ | |- | ||
+ | | 11 | ||
+ | | ? + mmag.bin + mthomas.bin | ||
+ | | | ||
+ | |- | ||
+ | | 12 | ||
+ | | ? + magsort.bin | ||
+ | | | ||
+ | |- | ||
+ | | 15 | ||
+ | | ? + mmag2.bin + cyocobo.bin | ||
+ | | | ||
+ | |- | ||
+ | | 16 | ||
+ | | ? + cardanm.sp2 | ||
+ | | | ||
+ | |- | ||
+ | | 17 | ||
+ | | ? + mtmag.bin | ||
+ | | | ||
+ | |- | ||
+ | | 21 | ||
+ | | mngrp.bin | ||
+ | | | ||
+ | |- | ||
+ | | 22 | ||
+ | | init.out | ||
+ | | | ||
+ | |- | ||
+ | | 23 | ||
+ | | Triple Triad (in ff8.exe in PC version) | ||
+ | | Some Triple Triad tims (LZSed) | ||
+ | |- | ||
+ | | 25 | ||
+ | | battle.bin (not present in PC version) | ||
+ | | | ||
+ | |- | ||
+ | | 26 | ||
+ | | world.bin (not present in PC version) | ||
+ | | | ||
+ | |- | ||
+ | | 30 -> 127 | ||
+ | | AKAO files (music) | ||
+ | | | ||
+ | |- | ||
+ | | 128 | ||
+ | | kernel.bin | ||
+ | | | ||
+ | |- | ||
+ | | 129 | ||
+ | | sysfnt.tdw | ||
+ | | | ||
+ | |- | ||
+ | | 130 | ||
+ | | icon.tim | ||
+ | | | ||
+ | |- | ||
+ | | 131 | ||
+ | | namedic.tim | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | <br /> | ||
− | In the list of root files, the third file is in fact the "FIELD.BIN". This file | + | == Field Files == |
+ | |||
+ | In the list of root files, the third file is in fact the "FIELD.BIN". This file is [[FF7/LZS_format|LZS]] compressed, and contains some informations, like the list of field files position and size. | ||
Find the file list is approximate, I am trying to find some bytes: "\x04\x00\x05\x24\x18\x00\xbf\x8f\x14\x00\xb1\x8f\x10\x00\xb0\x8f\x20\x00\xbd\x27\x08\x00\xe0\x03\x00\x00\x00\x00" (size=28), normally, there is the list right after this sequence of bytes, and before the "\x00\x00\x01\x00\x02\x00\x03\x00" (size=8) sequence. | Find the file list is approximate, I am trying to find some bytes: "\x04\x00\x05\x24\x18\x00\xbf\x8f\x14\x00\xb1\x8f\x10\x00\xb0\x8f\x20\x00\xbd\x27\x08\x00\xe0\x03\x00\x00\x00\x00" (size=28), normally, there is the list right after this sequence of bytes, and before the "\x00\x00\x01\x00\x02\x00\x03\x00" (size=8) sequence. | ||
Order of files (sorted by id): | Order of files (sorted by id): | ||
− | |||
− | |||
− | |||
− | |||
− | There are three LZSed files for each field: EXAMPLE.MIM, EXAMPLE. | + | * D000.[[FF8/FileFormat_MCH|MCH]] -> D075.MCH files [id=0 -> id=76] |
− | If you want to convert Playstation fields to PC fields format, this is a concatenation of some PC files | + | * Field files (MIM, DAT and LZK) [id=77 -> id=last] |
− | + | ||
− | + | There are three LZSed files for each field: EXAMPLE.MIM, EXAMPLE.DAT and EXAMPLE.LZK (Extension names *.MIM, *.DAT and *.LZK found in PC version, field.fs > mapdata.fs > map1.bak). If you want to convert Playstation fields to PC fields format, this is a concatenation of some PC files. | |
− | + | ||
− | + | === First file (*.MIM) === | |
− | + | ||
+ | {| class="wikitable" | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Data | ||
+ | |- | ||
+ | | 0 | ||
+ | | 4 | ||
+ | | Location of section 3 in PSX RAM | ||
+ | |- | ||
+ | | 4 | ||
+ | | 4 | ||
+ | | Location of section 4 in PSX RAM | ||
+ | |- | ||
+ | | 8 | ||
+ | | 4 | ||
+ | | style="background: rgb(255,255,204)" | | ||
+ | [[FF8/FileFormat_PVP|Unknown data [PVP]]] | ||
+ | |- | ||
+ | | 12 | ||
+ | | 438272 | ||
+ | | | ||
+ | [[FF8/FileFormat_MIM|Background data [MIM]]] | ||
+ | |- | ||
+ | | 438284 (section 3) | ||
+ | | ''Varies'' | ||
+ | | | ||
+ | [[FF8/FileFormat_TDW|Font data [TDW]]] | ||
+ | |- | ||
+ | | ''Varies'' (section 4) | ||
+ | | ''Varies'' | ||
+ | | | ||
+ | [[FF8/FileFormat_PMP|Particle Image Data [PMP]]] | ||
+ | |} | ||
+ | |||
+ | === Second file (*.DAT) === | ||
+ | |||
+ | {| class="wikitable" | ||
+ | ! Offset | ||
+ | ! Size | ||
+ | ! Data | ||
+ | ! Section Data | ||
+ | |- | ||
+ | | 0 | ||
+ | | 4 | ||
+ | | Location of section 1 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_INF|Triggers & gateways [INF]]] | ||
+ | |- | ||
+ | | 4 | ||
+ | | 4 | ||
+ | | Location of section 2 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_CA|Camera [CA]]] | ||
+ | |- | ||
+ | | 8 | ||
+ | | 4 | ||
+ | | Location of section 3 in PSX RAM | ||
+ | | | ||
+ | [[FF7/Field/Camera_Matrix|Walkmesh [ID]]] | ||
+ | |- | ||
+ | | 12 | ||
+ | | 4 | ||
+ | | Location of section 4 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_MAP|Background infos [MAP]]] | ||
+ | |- | ||
+ | | 16 | ||
+ | | 4 | ||
+ | | Location of section 5 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_MSK|Movie cam [MSK]]] | ||
+ | |- | ||
+ | | 20 | ||
+ | | 4 | ||
+ | | Location of section 6 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_RAT_MRT|Battle rate [RAT]]] | ||
+ | |- | ||
+ | | 24 | ||
+ | | 4 | ||
+ | | Location of section 7 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_RAT_MRT|Battle formations [MRT]]] | ||
+ | |- | ||
+ | | 28 | ||
+ | | 4 | ||
+ | | Location of section 8 in PSX RAM | ||
+ | | Sounds/AKAOs | ||
+ | |- | ||
+ | | 32 | ||
+ | | 4 | ||
+ | | Location of section 9 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_MSD|Texts [MSD]]] | ||
+ | |- | ||
+ | | 36 | ||
+ | | 4 | ||
+ | | Location of section 10 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_PMD|Particle Infos [PMD]]] | ||
+ | |- | ||
+ | | 40 | ||
+ | | 4 | ||
+ | | Location of section 11 in PSX RAM | ||
+ | | | ||
+ | [[FF8/FileFormat_JSM|Scripts [JSM]]] | ||
+ | |- | ||
+ | | 44 | ||
+ | | 4 | ||
+ | | Location of the end of file in PSX RAM | ||
+ | | | ||
+ | |- | ||
+ | | 48 | ||
+ | | ''varies'' | ||
+ | | Triggers and gateways | ||
+ | | | ||
+ | |- | ||
+ | | ... | ||
+ | | ... | ||
+ | | ... | ||
+ | | ... | ||
+ | |} | ||
+ | |||
+ | === Third file (*.LZK) === | ||
+ | |||
+ | Almost like the [[FF8/FileFormat_ONE|chara.one]] file. The main difference is that the models data are compressed. |
Latest revision as of 03:48, 11 January 2020
By myst6re
Contents
FF8DISCX.IMG File Format
Almost all of the game files are hidden in the FF8DISCX.IMG (with X=disc number) file.
Root Files
In the case of a Japanese iso, the file begins directly with a list of file location and size, with the following format:
Offset | Size | Data |
---|---|---|
0 | 4 | Location of file in sectors (relative to the start of the iso) |
4 | 4 | Size of file in bytes |
In the case of a PAL iso, there are 5 unknown sectors (a sector = 2048 bytes in data, 2352 bytes in disk) before this list of files.
Notes:
- I do not have the American iso, please fix this article if you can.
- We do not know how many files there are in the list, neither file names!
- Each file in FF8DISCX.IMG are relative to the start of the iso!
ID | Filename (from PC version) | Notes |
---|---|---|
0 | ? + packcode.bin | Contains a font file (tim format) |
2 | LZSed | |
3 | wm2field.tbl | size= 72*24 bytes |
4 | ? + mmagic.bin + mitem.bin + areames.dc1 + ? | |
7 | ? + pet_exp.bin + ? | |
9 | ? + mwepon.bin + mwepon.msg + shop.bin + price.bin + ? | |
11 | ? + mmag.bin + mthomas.bin | |
12 | ? + magsort.bin | |
15 | ? + mmag2.bin + cyocobo.bin | |
16 | ? + cardanm.sp2 | |
17 | ? + mtmag.bin | |
21 | mngrp.bin | |
22 | init.out | |
23 | Triple Triad (in ff8.exe in PC version) | Some Triple Triad tims (LZSed) |
25 | battle.bin (not present in PC version) | |
26 | world.bin (not present in PC version) | |
30 -> 127 | AKAO files (music) | |
128 | kernel.bin | |
129 | sysfnt.tdw | |
130 | icon.tim | |
131 | namedic.tim |
Field Files
In the list of root files, the third file is in fact the "FIELD.BIN". This file is LZS compressed, and contains some informations, like the list of field files position and size.
Find the file list is approximate, I am trying to find some bytes: "\x04\x00\x05\x24\x18\x00\xbf\x8f\x14\x00\xb1\x8f\x10\x00\xb0\x8f\x20\x00\xbd\x27\x08\x00\xe0\x03\x00\x00\x00\x00" (size=28), normally, there is the list right after this sequence of bytes, and before the "\x00\x00\x01\x00\x02\x00\x03\x00" (size=8) sequence.
Order of files (sorted by id):
- D000.MCH -> D075.MCH files [id=0 -> id=76]
- Field files (MIM, DAT and LZK) [id=77 -> id=last]
There are three LZSed files for each field: EXAMPLE.MIM, EXAMPLE.DAT and EXAMPLE.LZK (Extension names *.MIM, *.DAT and *.LZK found in PC version, field.fs > mapdata.fs > map1.bak). If you want to convert Playstation fields to PC fields format, this is a concatenation of some PC files.
First file (*.MIM)
Offset | Size | Data |
---|---|---|
0 | 4 | Location of section 3 in PSX RAM |
4 | 4 | Location of section 4 in PSX RAM |
8 | 4 | |
12 | 438272 | |
438284 (section 3) | Varies | |
Varies (section 4) | Varies |
Second file (*.DAT)
Offset | Size | Data | Section Data |
---|---|---|---|
0 | 4 | Location of section 1 in PSX RAM | |
4 | 4 | Location of section 2 in PSX RAM | |
8 | 4 | Location of section 3 in PSX RAM | |
12 | 4 | Location of section 4 in PSX RAM | |
16 | 4 | Location of section 5 in PSX RAM | |
20 | 4 | Location of section 6 in PSX RAM | |
24 | 4 | Location of section 7 in PSX RAM | |
28 | 4 | Location of section 8 in PSX RAM | Sounds/AKAOs |
32 | 4 | Location of section 9 in PSX RAM | |
36 | 4 | Location of section 10 in PSX RAM | |
40 | 4 | Location of section 11 in PSX RAM | |
44 | 4 | Location of the end of file in PSX RAM | |
48 | varies | Triggers and gateways | |
... | ... | ... | ... |
Third file (*.LZK)
Almost like the chara.one file. The main difference is that the models data are compressed.