17
edits
Changes
From Final Fantasy Inside
no edit summary
By myst6re = 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:
{| borderclass="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;wikitable"! style="background:rgb(204,204,204)" | Offset! style="background:rgb(204,204,204)" | Size! style="background:rgb(204,204,204)" | Data
|-
| 0
| 4
| Location of file in sectors (relative to the start of the '''iso''')
|-
| 4
| 4
| Size of filein 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'''! {| 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= Field Files ==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 />
== Field Files == In the list of root files, the third file is in fact the "FIELD.BIN". This file are 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.
Order of files (sorted by id):
* D000.[[FF8/FileFormat_MCH|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.MAP 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:.<ul><li>EXAMPLE=== First file (*.MIM ) === {| class= HEADER + example.pvp + "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|example.mimBackground data [MIM]]]|-| 438284 (section 3)| ''Varies''|[[FF8/FileFormat_TDW|Font data [TDW]]]|-| ''Varies'' (section 4)| ''Varies''|[[FF8/FileFormat_PMP|Particle Image Data [PMP]]] + example|} === Second file (*.tdw + example.pmpDAT) === <li>EXAMPLE.MAP {| class= HEADER + example.inf + "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|example.caWalkmesh [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|[[FF7FF8/FieldFileFormat_MSD|Texts [MSD]]]|-| 36| 4| Location of section 10 in PSX RAM|[[FF8/WalkmeshFileFormat_PMD|example.idParticle Infos [PMD]]] + |-| 40| 4| Location of section 11 in PSX RAM|[[FF8/FileFormat_MAPFileFormat_JSM|example.mapScripts [JSM]]] + example|-| 44| 4| Location of the end of file in PSX RAM||-| 48| ''varies''| Triggers and gateways||-| .msk + example.rat + example.mrt + AKAO + example| .msd + example.pmd + example.jsm<li>EXAMPLE| ...| ...|} === Third file (*.LZK ) === Unknown, but contains part of Almost like the [[FF8/FileFormat_ONE|chara.one ]] file. Note The main difference is that the file is not quite LZS, the header is largermodels data are compressed.</ul>