TIM Image: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks |
imported>Ikskoks |
||
| (26 intermediate revisions by the same user not shown) | |||
| Line 17: | Line 17: | ||
// "\x08\x00\x00\x00" 4BPP | // "\x08\x00\x00\x00" 4BPP | ||
// "\x09\x00\x00\x00" 8BPP | // "\x09\x00\x00\x00" 8BPP | ||
4 bytes (uint32) - size of CLUT + 12 | |||
// clut header | |||
4 bytes (uint32) - size of CLUT + 12 (size with clut header) | |||
2 bytes (uint16) - palette memory address X | 2 bytes (uint16) - palette memory address X | ||
2 bytes (uint16) - palette memory address Y | 2 bytes (uint16) - palette memory address Y | ||
| Line 26: | Line 28: | ||
num_of_CLUTs * | num_of_CLUTs * | ||
{ | { | ||
CLUT data // 32 bytes per CLUT | x bytes - CLUT data (palette data) // 32 or 512 bytes per CLUT | ||
} | } | ||
// | //image header | ||
4 bytes (uint32) - size of image data + 12 | 4 bytes (uint32) - size of image data + 12 (size with image header) | ||
2 bytes (uint16) - image memory address X | 2 bytes (uint16) - image memory address X | ||
2 bytes (uint16) - image memory address Y | 2 bytes (uint16) - image memory address Y | ||
2 bytes (uint16) - image width / 4 | 2 bytes (uint16) - image width / 4 or image width / 2 | ||
2 bytes (uint16) - image height | 2 bytes (uint16) - image height | ||
| Line 73: | Line 75: | ||
List of games using this file format: | List of games using this file format: | ||
* | * 360: Three Sixty (PS1) | ||
* [[Legacy Of Kain: Soul Reaver]] | * Ape Escape (PS1) | ||
* Tail Concerto | * [[Legacy Of Kain: Soul Reaver]] (PS1) | ||
* | * MediEvil (PS1) | ||
* | * [[PGA Tour 97]] (PS1) | ||
* Ready 2 Rumble Boxing (PS1) | |||
* Space Jam (PS1) | |||
* Tail Concerto (PS1) | |||
* [[Urban Chaos]] (PS1) | |||
* Xena: Warrior Princess (PS1) | |||
* Many more... | * Many more... | ||
=== Compatible Programs === | === Compatible Programs === | ||
* [https://github.com/Lameguy64/img2tim/ img2tim] | |||
* Noesis (native support) | |||
* PSXIMGTS | * PSXIMGTS | ||
* TIM Collection 1.0 | * TIM Collection 1.0 | ||
| Line 92: | Line 101: | ||
* [http://www.romhacking.net/utilities/238/ TIMmay] | * [http://www.romhacking.net/utilities/238/ TIMmay] | ||
* TimRipper | * TimRipper | ||
* [https://forum.xentax.com/viewtopic.php?f=33&t=24608 TIM Tool Converter by Scorpion] | |||
* TimViewer | * TimViewer | ||
* GIMP + TIM Plugin | * GIMP + TIM Plugin | ||
| Line 98: | Line 108: | ||
[[Category:Complete | [[Category:Complete Complete|TIM]] | ||
[[Category:Platform PS1|TIM]] | [[Category:Platform PS1|TIM]] | ||
[[Category:CE None|TIM]] | [[Category:CE None|TIM]] | ||
| Line 104: | Line 114: | ||
[[Category:Extension_tim | Extension: tim]] | [[Category:Extension_tim | Extension: tim]] | ||
[[Category:BMS_None | BMS: None]] | [[Category:BMS_None | BMS: None]] | ||
[[Category:File Format]] | |||
Latest revision as of 22:03, 26 December 2022
TIM
- Format Type : Image
- Endian Order : Little Endian
Format Specifications
4BPP and 8BPP
// TIM file format (4BPP and 8BPP)
//header
4 bytes (uint32) - magic // "\x10\x00\x00\x00"
4 bytes (uint32) - version // "\x00\x00\x00\x00" 4BPP (no CLUT)
// "\x01\x00\x00\x00" 8BPP (no CLUT)
// "\x08\x00\x00\x00" 4BPP
// "\x09\x00\x00\x00" 8BPP
// clut header
4 bytes (uint32) - size of CLUT + 12 (size with clut header)
2 bytes (uint16) - palette memory address X
2 bytes (uint16) - palette memory address Y
2 bytes (uint16) - number of colors in each CLUT
2 bytes (uint16) - number of CLUTs
//CLUT block (this is optional block)
num_of_CLUTs *
{
x bytes - CLUT data (palette data) // 32 or 512 bytes per CLUT
}
//image header
4 bytes (uint32) - size of image data + 12 (size with image header)
2 bytes (uint16) - image memory address X
2 bytes (uint16) - image memory address Y
2 bytes (uint16) - image width / 4 or image width / 2
2 bytes (uint16) - image height
//data
x bytes - image data
16BPP and 24BPP
// TIM file format (16BPP and 24BPP)
//header
4 bytes (uint32) - magic // "\x10\x00\x00\x00"
4 bytes (uint32) - version // "\x02\x00\x00\x00" 16BPP
// "\x03\x00\x00\x00 24BPP
4 bytes (uint32) - Size of image data + 12
2 bytes (uint16) - image memory address X
2 bytes (uint16) - image memory address Y
2 bytes (uint16) - width
2 bytes (uint16) - height
//data
x bytes - image data
MultiEx BMS Script
Not written yet.
Notes and Comments
- TIM is graphics file format used in many PlayStation 1 games.
- CLUT stands for "Color LookUp Table". It is simply a color palette.
Games
List of games using this file format:
- 360: Three Sixty (PS1)
- Ape Escape (PS1)
- Legacy Of Kain: Soul Reaver (PS1)
- MediEvil (PS1)
- PGA Tour 97 (PS1)
- Ready 2 Rumble Boxing (PS1)
- Space Jam (PS1)
- Tail Concerto (PS1)
- Urban Chaos (PS1)
- Xena: Warrior Princess (PS1)
- Many more...
Compatible Programs
- img2tim
- Noesis (native support)
- PSXIMGTS
- TIM Collection 1.0
- TIM Utility
- tim2bmp
- TIMConv
- TIMedit
- Semi trans Tool
- tim2view
- TIMmay
- TimRipper
- TIM Tool Converter by Scorpion
- TimViewer
- GIMP + TIM Plugin
- Adobe Photoshop + TIM Plugin
- XnView