my_wiki>Halkun |
|
(21 intermediate revisions by 5 users not shown) |
Line 1: |
Line 1: |
− | == Important Files == | + | == Important Files == |
| | | |
− | <center>[[Image:Gears_img_5.png]]</center>
| + | {| style="border: 1px solid black; border-collapse: collapse; background: rgb(0,255,0)" border="1" cellspacing="1" cellpadding="3" align="center" |
− | | + | ! align="center" | PSX Version |
− | == The KERNEL.BIN Archive ==
| + | ! align="center" | PC Version |
− | | |
− | The file KERNEL.BIN archive is in [[FF7/BIN-GZIP|BIN-GZIP format]]. It consists of 27 gziped sections concatenated together with a 6 byte header for each. This file is the same both on the PC and PSX versions. This holds all the static data and menu text for the game, with a look up table at the beginning of the section. Sections 10-27 are [[FF7/FF Text|FF Text files]].
| |
− | | |
− | The KERNEL.BIN file consists of the following sections.
| |
− | | |
− | {| border="0" cellspacing="1" cellpadding="3" style="background: rgb(0,0,0)" align="center" | |
− | ! style="background:rgb(204,204,204)" align="center" | File
| |
− | ! style="background:rgb(204,204,204)" | Data | |
− | ! style="background:rgb(204,204,204)" | Offset | |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 1
| |
− | |style="background:rgb(255,255,255)" | [[FF7/Command data|Command data]]
| |
− | |style="background:rgb(255,255,255)" | 0x0006
| |
| |- | | |- |
− | |style="background:rgb(255,255,255)" align="center" | 2 | + | | /INIT/KERNEL.BIN |
− | |style="background:rgb(255,255,255)" | [[FF7/Attack data|Attack data]] | + | | /DATA/KERNEL/KERNEL.BIN |
− | |style="background:rgb(255,255,255)" | 0x0086
| |
| |- | | |- |
− | |style="background:rgb(255,255,255)" align="center" | 3 | + | | |
− | |style="background:rgb(255,255,255)" | [[FF7/Savemap|Savemap]]
| + | | /DATA/KERNEL/KERNEL2.BIN |
− | |style="background:rgb(255,255,255)" | 0x063A
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 4
| |
− | |style="background:rgb(255,255,255)" | [[FF7/Character starting stats|Character starting stats]]
| |
− | |style="background:rgb(255,255,255)" | 0x0F7F
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 5
| |
− | |style="background:rgb(255,255,255)" | [[FF7/Item data|Item data]]
| |
− | |style="background:rgb(255,255,255)" | 0x111B
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 6 | |
− | |style="background:rgb(255,255,255)" | [[FF7/Weapon data|Weapon data]]
| |
− | |style="background:rgb(255,255,255)" | 0x137A
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 7
| |
− | |style="background:rgb(255,255,255)" | [[FF7/Armor data|Armor data]]
| |
− | |style="background:rgb(255,255,255)" | 0x1A30
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 8
| |
− | |style="background:rgb(255,255,255)" | [[FF7/Accessory data|Accessory data]]
| |
− | |style="background:rgb(255,255,255)" | 0x1B73
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 9
| |
− | |style="background:rgb(255,255,255)" | [[FF7/Materia data|Materia data]]
| |
− | |style="background:rgb(255,255,255)" | 0x1C11
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 10
| |
− | |style="background:rgb(255,255,255)" | Command descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x1F32
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 11
| |
− | |style="background:rgb(255,255,255)" | Magic descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x2199
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 12
| |
− | |style="background:rgb(255,255,255)" | Item descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x28D4
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 13
| |
− | |style="background:rgb(255,255,255)" | Weapon descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x2EE2
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 14
| |
− | |style="background:rgb(255,255,255)" | Armor descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x307B
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 15
| |
− | |style="background:rgb(255,255,255)" | Accessory descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x315F
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 16
| |
− | |style="background:rgb(255,255,255)" | Materia descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x3384
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 17
| |
− | |style="background:rgb(255,255,255)" | Key Item descriptions
| |
− | |style="background:rgb(255,255,255)" | 0x3838
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 18
| |
− | |style="background:rgb(255,255,255)" | Command Names
| |
− | |style="background:rgb(255,255,255)" | 0x3BE2
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 19
| |
− | |style="background:rgb(255,255,255)" | Magic Names
| |
− | |style="background:rgb(255,255,255)" | 0x3CCA
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 20
| |
− | |style="background:rgb(255,255,255)" | Item Names
| |
− | |style="background:rgb(255,255,255)" | 0x4293
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 21
| |
− | |style="background:rgb(255,255,255)" | Weapon Names
| |
− | |style="background:rgb(255,255,255)" | 0x4651
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 22
| |
− | |style="background:rgb(255,255,255)" | Armor Names
| |
− | |style="background:rgb(255,255,255)" | 0x4B02
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 23
| |
− | |style="background:rgb(255,255,255)" | Accessory Names
| |
− | |style="background:rgb(255,255,255)" | 0x4C4B
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 24
| |
− | |style="background:rgb(255,255,255)" | Materia Names
| |
− | |style="background:rgb(255,255,255)" | 0x4D90
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 25
| |
− | |style="background:rgb(255,255,255)" | Key Item Names
| |
− | |style="background:rgb(255,255,255)" | 0x5040
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 26
| |
− | |style="background:rgb(255,255,255)" | Battle and Battle-Screen Text
| |
− | |style="background:rgb(255,255,255)" | 0x5217
| |
− | |-
| |
− | |style="background:rgb(255,255,255)" align="center" | 27
| |
− | |style="background:rgb(255,255,255)" | Summon Attack Names
| |
− | |style="background:rgb(255,255,255)" | 0x5692
| |
| |} | | |} |
| | | |
| + | == The KERNEL.BIN Archive == |
| | | |
| + | The file KERNEL.BIN archive is in [[FF7/Kernel/Low_level_libraries#BIN-GZIP_Type_Archives|BIN-GZIP format]]. It consists of 27 gziped sections concatenated together with a 6 byte header for each. This file is the same both on the PC and PSX versions. This holds all the static data and menu text for the game, with a look up table at the beginning of the section. The first 9 sections of data (i.e. The non-text related items) are in typical BIN file archive format. Sections 10-27 are [[FF7/FF_Text|FF Text files]]. The text sections have a header of pointers at the beginning of each section and point to a text block below. |
| | | |
| + | The KERNEL.BIN file consists of the following sections. |
| | | |
− | | + | {| class="wikitable" |
− | | + | ! File |
− | == KERNEL.BIN Section formats ==
| + | ! Data |
− | | + | ! Offset |
− | The first 9 sections of data (i.e. The non-text related items) have a typical BIN file format. The text sections (10-27) do not have the typical 6 byte header. The text sections have a header of pointers to the text block. The text is in FF text format.
| |
− | | |
− | | |
− | | |
− | | |
− | | |
− | | |
− | | |
− | === Section 4: Initialization data ===
| |
− | | |
− | This contains the starting stats for the characters and related game states. On "New Game", this data is copied directly into the [[FF&/Savemap|Savemap]] (from offset 0x0054 to 0x0BAF) which is explained in the "Menu" section. This data has the same format as the data explained in that section.
| |
− | | |
− | | |
− | | |
− | | |
− | | |
− | | |
− | | |
− | | |
− | === Section 8: Accessory data format ===
| |
− | | |
− | This contains the accessory data. Each record is 16 bytes long.
| |
− | | |
− | {| border="0" cellpadding="3" cellspacing="1" style="background: rgb(0,0,0)" align="center" | |
− | ! style="background:rgb(204,204,204); width=50px;" align="center" | Offset | |
− | ! style="background:rgb(204,204,204); width=50px;" | Length | |
− | ! style="background:rgb(204,204,204); width:300px;" colspan="2" | Description | |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x00
| |
− | |style="background:rgb(255,255,255);" | 2 bytes
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Stat Bonus
| |
− | |-
| |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="7" |
| |
− | |style="background:rgb(255,255,255); width:120px;" | 0xFF
| |
− | |style="background:rgb(255,255,255);" | None
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x00
| |
− | |style="background:rgb(255,255,255);" | Strength
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x01
| |
− | |style="background:rgb(255,255,255);" | Vitality
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x02
| |
− | |style="background:rgb(255,255,255);" | Magic
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x03
| |
− | |style="background:rgb(255,255,255);" | Spirit
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x04
| |
− | |style="background:rgb(255,255,255);" | Dexterity
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x05
| |
− | |style="background:rgb(255,255,255);" | Luck
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x02
| |
− | |style="background:rgb(255,255,255);" | 2 bytes
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Bonus Amount
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x04
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Elemental Strength
| |
− | |-
| |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="2" |
| |
− | |style="background:rgb(255,255,255);" | 0x00
| |
− | |style="background:rgb(255,255,255);" | Drains
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x01
| |
− | |style="background:rgb(255,255,255);" | Nullifies
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x05
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Special Effect
| |
| |- | | |- |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="7" | | + | | align="center" | 1 |
− | |style="background:rgb(255,255,255);" | 0x00 | + | | |
− | |style="background:rgb(255,255,255);" | Haste | + | [[FF7/Command_data|Command data]] |
| + | | 0x0006 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x01 | + | | align="center" | 2 |
− | |style="background:rgb(255,255,255);" | Fury | + | | |
| + | [[FF7/Attack_data|Attack data]] |
| + | | 0x0086 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x02 | + | | align="center" | 3 |
− | |style="background:rgb(255,255,255);" | Curse Ring | + | | |
| + | [[FF7/Battle_and_growth_data|Battle and growth data]] |
| + | | 0x063A |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x03 | + | | align="center" | 4 |
− | |style="background:rgb(255,255,255);" | Reflect | + | | |
| + | [[FF7/Character_starting_stats|Initialization data]] |
| + | | 0x0F7F |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x04 | + | | align="center" | 5 |
− | |style="background:rgb(255,255,255);" | Increase Stealing Rate | + | | |
| + | [[FF7/Item_data|Item data]] |
| + | | 0x111B |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x05 | + | | align="center" | 6 |
− | |style="background:rgb(255,255,255);" | Increase Manipulation Rate | + | | |
| + | [[FF7/Weapon_data|Weapon data]] |
| + | | 0x137A |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x06 | + | | align="center" | 7 |
− | |style="background:rgb(255,255,255);" | Barrier / MBarrier | + | | |
| + | [[FF7/Armor_data|Armor data]] |
| + | | 0x1A30 |
| |- | | |- |
| + | | align="center" | 8 |
| + | | |
| + | [[FF7/Accessory_data|Accessory data]] |
| + | | 0x1B73 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x06 | + | | align="center" | 9 |
− | |style="background:rgb(255,255,255);" | 2 bytes | + | | |
− | |style="background:rgb(255,255,255);" colspan="2" | Elemental Type | + | [[FF7/Materia_data|Materia data]] |
| + | | 0x1C11 |
| |- | | |- |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="10" | | + | | align="center" | 10 |
− | |style="background:rgb(255,255,255);" | 0x01 | + | | Command descriptions |
− | |style="background:rgb(255,255,255);" | Fire | + | | 0x1F32 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x02 | + | | align="center" | 11 |
− | |style="background:rgb(255,255,255);" | Ice | + | | Magic descriptions |
| + | | 0x2199 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x04 | + | | align="center" | 12 |
− | |style="background:rgb(255,255,255);" | Lightning | + | | Item descriptions |
| + | | 0x28D4 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x08 | + | | align="center" | 13 |
− | |style="background:rgb(255,255,255);" | Earth | + | | Weapon descriptions |
| + | | 0x2EE2 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x10 | + | | align="center" | 14 |
− | |style="background:rgb(255,255,255);" | Poison | + | | Armor descriptions |
| + | | 0x307B |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x20 | + | | align="center" | 15 |
− | |style="background:rgb(255,255,255);" | Gravity | + | | Accessory descriptions |
| + | | 0x315F |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x40 | + | | align="center" | 16 |
− | |style="background:rgb(255,255,255);" | Water | + | | Materia descriptions |
| + | | 0x3384 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x80 | + | | align="center" | 17 |
− | |style="background:rgb(255,255,255);" | Wind | + | | Key Item descriptions |
| + | | 0x3838 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x0001 | + | | align="center" | 18 |
− | |style="background:rgb(255,255,255);" | Holy | + | | Command Names |
| + | | 0x3BE2 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0xFF01 | + | | align="center" | 19 |
− | |style="background:rgb(255,255,255);" | All of the above | + | | Magic Names |
| + | | 0x3CCA |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x08 | + | | align="center" | 20 |
− | |style="background:rgb(255,255,255);" | 4 bytes | + | | Item Names |
− | |style="background:rgb(255,255,255);" colspan="2" | Status Protect | + | | 0x4293 |
| |- | | |- |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="18" | | + | | align="center" | 21 |
− | |style="background:rgb(255,255,255);" | 0x00 | + | | Weapon Names |
− | |style="background:rgb(255,255,255);" | None | + | | 0x4651 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x01 | + | | align="center" | 22 |
− | |style="background:rgb(255,255,255);" | Death | + | | Armor Names |
| + | | 0x4B02 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x02 | + | | align="center" | 23 |
− | |style="background:rgb(255,255,255);" | Near Death | + | | Accessory Names |
| + | | 0x4C4B |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x04 | + | | align="center" | 24 |
− | |style="background:rgb(255,255,255);" | Sleep | + | | Materia Names |
| + | | 0x4D90 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x08 | + | | align="center" | 25 |
− | |style="background:rgb(255,255,255);" | Poison | + | | Key Item Names |
| + | | 0x5040 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x10 | + | | align="center" | 26 |
− | |style="background:rgb(255,255,255);" | Sadness | + | | Battle and Battle-Screen Text |
| + | | 0x5217 |
| |- | | |- |
− | |style="background:rgb(255,255,255);" | 0x20 | + | | align="center" | 27 |
− | |style="background:rgb(255,255,255);" | Fury
| + | | Summon Attack Names |
− | |-
| + | | 0x5692 |
− | |style="background:rgb(255,255,255);" | 0x40
| |
− | |style="background:rgb(255,255,255);" | Confusion
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x80
| |
− | |style="background:rgb(255,255,255);" | Silence
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0010
| |
− | |style="background:rgb(255,255,255);" | Haste
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0020
| |
− | |style="background:rgb(255,255,255);" | Slow
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0040
| |
− | |style="background:rgb(255,255,255);" | Stop
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0080
| |
− | |style="background:rgb(255,255,255);" | Frog
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0001
| |
− | |style="background:rgb(255,255,255);" | Small
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0002
| |
− | |style="background:rgb(255,255,255);" | Slow-numb
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0004
| |
− | |style="background:rgb(255,255,255);" | Petrify
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0008
| |
− | |style="background:rgb(255,255,255);" | Regen
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xFFFF
| |
− | |style="background:rgb(255,255,255);" | All of the above
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0C
| |
− | |style="background:rgb(255,255,255);" | 2 bytes
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Equip Mask
| |
− | |-
| |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="11" |
| |
− | |style="background:rgb(255,255,255);" | 0x0001
| |
− | |style="background:rgb(255,255,255);" | Equipable on Cloud
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0002
| |
− | |style="background:rgb(255,255,255);" | Equipable on Barret
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0004
| |
− | |style="background:rgb(255,255,255);" | Equipable on Tifa
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0008
| |
− | |style="background:rgb(255,255,255);" | Equipable on Aeris
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0010
| |
− | |style="background:rgb(255,255,255);" | Equipable on Red XIII
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0020
| |
− | |style="background:rgb(255,255,255);" | Equipable on Yuffie
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0040
| |
− | |style="background:rgb(255,255,255);" | Equipable on Cait Sith
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0080
| |
− | |style="background:rgb(255,255,255);" | Equipable on Vincent
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0100
| |
− | |style="background:rgb(255,255,255);" | Equipable on Cid
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0200
| |
− | |style="background:rgb(255,255,255);" | Equipable on Young Cloud
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0400
| |
− | |style="background:rgb(255,255,255);" | Equipable on Sephiroth
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0E
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Restriction Mask
| |
− | |-
| |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="10" |
| |
− | |style="background:rgb(255,255,255);" | 0xFF
| |
− | |style="background:rgb(255,255,255);" | Appears in Item Menu. Does<br />not appear in Battle Menu <br />(Not usable at all)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xFE
| |
− | |style="background:rgb(255,255,255);" | Appears in Battle Menu & <br />Item Menu (Not usable at all)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xFD
| |
− | |style="background:rgb(255,255,255);" | Appears in Item Menu. Does <br />not appear in Battle Menu <br />(Usable in Battle Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xFC
| |
− | |style="background:rgb(255,255,255);" | Appears in Battle Menu & <br />Item Menu (Usable in Battle Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xFB
| |
− | |style="background:rgb(255,255,255);" | Appears in Item Menu. Does <br />not appear in Battle Menu <br />(Usable in Item Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xFA
| |
− | |style="background:rgb(255,255,255);" | Appears in Battle Menu & <br />Item Menu (Usable in Item <br />Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xF9
| |
− | |style="background:rgb(255,255,255);" | Appears in Item Menu. <br />Does not appear in Battle Menu (Usable<br /> in Item Menu & Battle Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xF8
| |
− | |style="background:rgb(255,255,255);" | Appears in Battle Menu & <br />Item Menu (Usable in Item <br />Menu & Battle Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xF7
| |
− | |style="background:rgb(255,255,255);" | Appears in Item Menu. Does <br />not appear in Battle Menu <br />(Usable in Battle Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0xF6
| |
− | |style="background:rgb(255,255,255);" | Appears in Battle Menu & <br />Item Menu (Usable in Battle <br />Menu)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0F
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Unknown
| |
− | |style="background:rgb(255,255,255);" | [Always 0xFF]
| |
− | |}
| |
− | | |
− | === Section 9: Materia data format ===
| |
− | | |
− | This contains the Materia data. Each record is 20 bytes long.
| |
− | | |
− | {| border="0" cellpadding="3" cellspacing="1" style="background: rgb(0,0,0)" align="center"
| |
− | ! style="background:rgb(204,204,204); width=50px;" align="center" | Offset
| |
− | ! style="background:rgb(204,204,204); width=50px;" | Length
| |
− | ! style="background:rgb(204,204,204); width:350px;" colspan="2" | Description
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x00
| |
− | |style="background:rgb(255,255,255);" | 8 bytes
| |
− | |style="background:rgb(255,255,255);width:150px;" | Level-up AP limits
| |
− | |style="background:rgb(255,255,255);width:200px;" | Multiples of 100 (4x WORD)
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x08
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Equip Effect
| |
− | |style="background:rgb(255,255,255);" | [See table below]
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x09
| |
− | |style="background:rgb(255,255,255);" | 3 bytes
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Status Bitmask
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0C
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Element
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0D
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" colspan="2" | Materia Type
| |
− | |-
| |
− | |style="background:rgb(204,204,255);" colspan="2" rowspan="15" |
| |
− | |style="background:rgb(255,255,255);" | 0x00
| |
− | |style="background:rgb(255,255,255);" | Unknown
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x08
| |
− | |style="background:rgb(255,255,255);" | Master Command: All commands are available
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0A
| |
− | |style="background:rgb(255,255,255);" | Master Magic: All spells are available | |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0C
| |
− | |style="background:rgb(255,255,255);" | Master Summon: All summons are available
| |
− | |- | |
− | |style="background:rgb(255,255,255);" | 0x12
| |
− | |style="background:rgb(255,255,255);" | Command: Command at offset 0x0E to 0x12 is <br />available, depending on AP level
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x16
| |
− | |style="background:rgb(255,255,255);" | Command: Commands at offset 0x0E to 0x12 <br />become available as you level up
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x19
| |
− | |style="background:rgb(255,255,255);" | Magic: Spells 0x0E to 0x11 become available<br />as you level up
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x20
| |
− | |style="background:rgb(255,255,255);" | Booster%: 0x0E is boosted by offset 0x0F to <br />0x13 depending on AP level
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x21
| |
− | |style="background:rgb(255,255,255);" | Unknown
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x25
| |
− | |style="background:rgb(255,255,255);" | Unknown
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x30
| |
− | |style="background:rgb(255,255,255);" | Unknown
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x33
| |
− | |style="background:rgb(255,255,255);" | W-Command: Command at 0x0E is added to <br />the battle menu
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x35
| |
− | |style="background:rgb(255,255,255);" | Unknown
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x3B
| |
− | |style="background:rgb(255,255,255);" | Summon: Summon: Spell at 0x0E can be used from<br />offset 0x0F to 0x13 times depending on AP level
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x57
| |
− | |style="background:rgb(255,255,255);" | Enemy Skill: Enables command 'Enemy Skill'
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0E
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Materia attributes
| |
− | |style="background:rgb(255,255,255);" | [See Above]
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x0F
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Materia attributes
| |
− | |style="background:rgb(255,255,255);" | [See Above]
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x10
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Materia attributes
| |
− | |style="background:rgb(255,255,255);" | [See Above]
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x11
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Materia attributes
| |
− | |style="background:rgb(255,255,255);" | [See Above]
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x12
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Materia attributes
| |
− | |style="background:rgb(255,255,255);" | [See Above]
| |
− | |-
| |
− | |style="background:rgb(255,255,255);" | 0x13
| |
− | |style="background:rgb(255,255,255);" | 1 byte
| |
− | |style="background:rgb(255,255,255);" | Materia attributes
| |
− | |style="background:rgb(255,255,255);" | [See Above]
| |
| |} | | |} |
| | | |
− | ==== Equip Effects ==== | + | == The KERNEL2.BIN Archive == |
− | | |
− | {| border="0" cellpadding="5" cellspacing="1" style="background: rgb(0,0,0)" align="center"
| |
− | ! style="background:rgb(204,204,204);" align="center" | Byte
| |
− | ! style="background:rgb(204,204,204);" align="center" | STR
| |
− | ! style="background:rgb(204,204,204);" align="center" | VIT
| |
− | ! style="background:rgb(204,204,204);" align="center" | MAG
| |
− | ! style="background:rgb(204,204,204);" align="center" | MDEF
| |
− | ! style="background:rgb(204,204,204);" align="center" | MAXHP
| |
− | ! style="background:rgb(204,204,204);" align="center" | MAXMP
| |
− | ! style="background:rgb(204,204,204);" align="center" | LUCK
| |
− | ! style="background:rgb(204,204,204);" align="center" | DEX
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x00
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x01
| |
− | |style="background:rgb(255,255,255);" align="center" | -02
| |
− | |style="background:rgb(255,255,255);" align="center" | -01
| |
− | |style="background:rgb(255,255,255);" align="center" | +02
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" | -05%
| |
− | |style="background:rgb(255,255,255);" align="center" | +05%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x02
| |
− | |style="background:rgb(255,255,255);" align="center" | -04
| |
− | |style="background:rgb(255,255,255);" align="center" | -04
| |
− | |style="background:rgb(255,255,255);" align="center" | +04
| |
− | |style="background:rgb(255,255,255);" align="center" | +02
| |
− | |style="background:rgb(255,255,255);" align="center" | -10%
| |
− | |style="background:rgb(255,255,255);" align="center" | +10%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x06
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x07
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x08
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x0A
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +02
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x0B
| |
− | |style="background:rgb(255,255,255);" align="center" | -01
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | -02%
| |
− | |style="background:rgb(255,255,255);" align="center" | +02%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x0C
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | -02%
| |
− | |style="background:rgb(255,255,255);" align="center" | +02%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x0D
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" | +01
| |
− | |style="background:rgb(255,255,255);" align="center" | -05%
| |
− | |style="background:rgb(255,255,255);" align="center" | +05%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x0E
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +02
| |
− | |style="background:rgb(255,255,255);" align="center" | +02
| |
− | |style="background:rgb(255,255,255);" align="center" | -10%
| |
− | |style="background:rgb(255,255,255);" align="center" | +10%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x0F
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +04
| |
− | |style="background:rgb(255,255,255);" align="center" | +04
| |
− | |style="background:rgb(255,255,255);" align="center" | -10%
| |
− | |style="background:rgb(255,255,255);" align="center" | +15%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |-
| |
− | ! style="background:rgb(204,204,204);" align="center" | 0x10
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" | +08
| |
− | |style="background:rgb(255,255,255);" align="center" | +08
| |
− | |style="background:rgb(255,255,255);" align="center" | -10%
| |
− | |style="background:rgb(255,255,255);" align="center" | +20%
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |style="background:rgb(255,255,255);" align="center" |
| |
− | |}
| |
| | | |
− | == The KERNEL2.BIN Archive ==
| + | On the PC version there exists a secondary kernel archive called KERNEL2.BIN. This archive contains only sections 10-27 (Text data) of KERNEL.BIN. The data was ungzipped from the original archive, concatenated together, and then LZSed into a single archive with a 4 byte header giving the length of the file. |
| | | |
− | On the PC version there exists a secondary kernel archive called KERNEL2.BIN. This archive contains only sections 10-27 (Text data) of KERNEL.BIN. The data was ungzipped from the original archive, concatenated together, and then LZSed into a single archive with a 4 byte header giving the length of the file. See the section on BIN types and LZS compression later in this document for more information.
| + | The maximum allotted storage space on the PC version for all un-LZSed data in the kernel2.bin is 27KB (27648 bytes). This means that the total size of the extracted files (text and pointers) must be less than this. |