BNCD files (Binary Nitro Cell Data) store cell bank and graphics data. These files are present in the DS firmware program.

Format Version 1.1#

This version of the format appears in the DS firmware program (IPL2). It has a header that takes on the following structure:

OffsetTypeMeaning
0x00 char[4] File signature ("JNCD")
0x04 u16 Version (0x101 for 1.1)
0x06 u16 Number of cells
0x08 u32 Offset to cell data, relative to the start of the file.
0x0C u32 Offset to OBJ data, relative to the start of the file.
0x10 u32 Offset to OBJ graphics, relative to the start of the file.
0x14 u32 Size of OBJ graphics, in bytes.
0x18 u32 Mapping mode shift. This corresponds to bits 20-21 of DISPCNT.

Cells are looked up by index. The offset to cell data points to an array of the following structure:

OffsetTypeMeaning
0x00 u8 Cell width in pixels
0x01 u8 Cell height in pixels
0x02 u16 Starting OBJ index
0x04 u16 Number of OBJ in this cell

The cell data references OBJ in the OBJ data array pointed to by the file header. It is an array of the following structure:

OffsetTypeMeaning
0x00 u16 OAM attribute 0
0x02 u16 OAM attribute 1
0x04 u16 OAM attribute 2, with the character name field cleared.
0x06 u16 Padding
0x08 u16 Character name for this OBJ. Used to relocate character name pointers at runtime.
0x0A u16 Size of character data referenced by this OBJ, in character name units.

OBJ data is arranged with (0,0) at the top left corner of the cell, hence no minimum/maximum coordinates are stored.

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-2) was last changed on 19-Dec-2024 19:19 by Garhoogin