4 releases
0.2.2 | May 19, 2024 |
---|---|
0.2.1 | May 19, 2024 |
0.2.0 | May 18, 2024 |
0.1.2 | May 11, 2024 |
#496 in Command line utilities
154 downloads per month
19KB
416 lines
Iroga
Command line application to pack a single directory into an IRO archive. The IRO archive is a format used in 7th heaven, a FF7 mod manager application
Usage
# Simple usage
iroga pack <DIR>
# For help information
iroga --help
IRO format
Offset | Size | Description |
---|---|---|
0x00 | 20 | IRO Header |
0x20 | (20 + L) * N | File indexing section |
0x20 + (20 + L) * N | B * N | Data section |
N is the number of files, L is the dynamic length of file paths, B is the dynamic byte length of the files
IRO Header
Offset | Size | Description |
---|---|---|
0x00 | 4 | IROS constant text in ASCII |
0x04 | 4 | Version (latest version: 0x10002 ) |
0x08 | 4 | Flags (0 : full IRO, 1 : patch) |
0x0C | 4 | Size of IRO header (always 16 ) |
0x10 | 4 | Number of files inside the archive |
File indexing section
Section repeated for each file inside the archive
Offset | Size | Description |
---|---|---|
0x00 | 2 | Length of this section (filepath_length + 20 ) |
0x02 | 2 | Length of the file path |
0x04 | L | File path in unicode UTF16 |
0x04 + L | 4 | File flags (0 : Non-compressed, other unimplemented) |
0x04 + L + 0x04 | 8 | IRO archive offset pointing to the related file in data section |
0x04 + L + 0x0C | 4 | Length of the data |
Data section
Concatenation of bytes of each file
Dependencies
~2–10MB
~91K SLoC