Line 11:
Line 11:
{
{
char sig [4]; // "RLYT" in ASCII
char sig [4]; // "RLYT" in ASCII
β
u32 unk; // Always 0xFE 0xFF 0x 00 0x08.
+
u32 version; // Always 0xFE 0xFF 0x 00 0x08.
u32 file_size; // Size of whole file, including the header.
u32 file_size; // Size of whole file, including the header.
u32 num; // number of sections
u32 num; // number of sections
Line 22:
Line 22:
char sig [4]; // "lyt1" in ASCII.
char sig [4]; // "lyt1" in ASCII.
u32 size_header;
u32 size_header;
β
u32 unk2;
+
u8 section_count;
+
u8 pad[3];
u32 width;
u32 width;
u32 height;
u32 height;
Line 34:
Line 35:
u32 size_section; // Size of the whole section.
u32 size_section; // Size of the whole section.
u16 num_textures; // Number of textures in list.
u16 num_textures; // Number of textures in list.
β
u16 unk2; // Always zero?
+
u16 offset_to_next_section; // Should be 0
} txl1_header;
} txl1_header;
After that comes an 64-bits entry per each texture in the list. The entry looks like this:
After that comes an 64-bits entry per each texture in the list. The entry looks like this:
typedef struct
typedef struct
{
{
β
u32 offset_filename; // Offset to a null-terminated ASCII string containing the filename.
+
u32 offset_filename; // Offset to a null-terminated ASCII string containing the filename.
// The offset-base should be after the txl1-header.
// The offset-base should be after the txl1-header.
β
u32 unk; // Always zero?
+
u32 pad; // Always zero
} txl1_offset;
} txl1_offset;
After the offset list is the names list, all names are null terminated and the section is an even number of bytes in length. An extra '\0' is added to the end if needed.
After the offset list is the names list, all names are null terminated and the section is an even number of bytes in length. An extra '\0' is added to the end if needed.
Line 78:
Line 79:
=== fnl1 section (FileName List(?)) ===
=== fnl1 section (FileName List(?)) ===
WhoDares : Nov 2008 [Updated] : This appears to be an "include" list for using other files in the banner.
WhoDares : Nov 2008 [Updated] : This appears to be an "include" list for using other files in the banner.
+
+
Megazig: Aug 2009 [Updated] : This is a font list.
A common item appears to be 'wbf1.brfna'. This file is part of the System Menu, and looks like it might be used for adding text into banners without the need of an image.
A common item appears to be 'wbf1.brfna'. This file is part of the System Menu, and looks like it might be used for adding text into banners without the need of an image.
Line 84:
Line 87:
{
{
char sig [4]; // "fnl1" in ASCII.
char sig [4]; // "fnl1" in ASCII.
β
u32 size_section; // // Size of the whole section.
+
u32 size_section; // Size of the whole section.
β
u16 num_filenames; //
+
u16 num_fonts; //
β
u16 unk; // 0
+
u16 offset_to_next_section; // 0
} fnl1_header;
} fnl1_header;
Line 93:
Line 96:
{
{
u32 offset; // Offset from beginning of a filename (Null terminated ASCII)
u32 offset; // Offset from beginning of a filename (Null terminated ASCII)
β
u32 unk; // Hi-order word for the offset?
+
u32 pad; // Always 0
} fnl1_offset;
} fnl1_offset;
After the fnl1_offset is the list of filenames null terminated. If the full fnl section is not an even number of bytes, the section is padded with an extra '\0'.
After the fnl1_offset is the list of filenames null terminated. If the full fnl section is not an even number of bytes, the section is padded with an extra '\0'.
Line 108:
Line 111:
char sig [4]; // "pan1" in ASCII.
char sig [4]; // "pan1" in ASCII.
u32 size_section;
u32 size_section;
β
u32 unk; // Always 01 04 FF 00?
+
u8 visibility;
+
u8 pane_origin;
+
u8 alpha1;
+
u8 alpha2;
char pane_name [0x18]; // Pane name in ASCII.
char pane_name [0x18]; // Pane name in ASCII.
float x;
float x;
Line 115:
Line 121:
float xFlip;
float xFlip;
float yFlip;
float yFlip;
β
float zFlip; //rotate
+
float angle;
float xMag;
float xMag;
float yMag;
float yMag;
Line 145:
Line 151:
char name[16];
char name[16];
u16 numsubs;
u16 numsubs;
β
u16 unk1;
+
u16 offset_to_next_section; // Should be 0
} grp1_header;
} grp1_header;
Line 160:
Line 166:
char sig [4]; // "pic1" in ASCII.
char sig [4]; // "pic1" in ASCII.
u32 size_section;
u32 size_section;
β
u16 flags;
+
u8 visibility;
β
u16 alpha;
+
u8 pane_origin;
+
u8 alpha1;
+
u8 alpha2;
char name[0x18];
char name[0x18];
β
float coords[10]; // x, y, unk, unk, unk, angle, xmag, ymag, width, height.
+
float x;
+
float y;
+
float z;
+
float xFlip;
+
float yFlip;
+
float angle;
+
float xMag;
+
float yMag;
+
float width;
+
float height;
} pic1_header;
} pic1_header;
'''TODO: Section incomplete.'''
'''TODO: Section incomplete.'''