This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
super:technical_information:data_structures [2019/02/14 23:55] – Enemy projectiles, animated tiles objects, HDMA objects p.jboy | super:technical_information:data_structures [2019/03/03 14:13] – [Special x-ray blocks] s/flowglow/flexglow/ p.jboy | ||
---|---|---|---|
Line 549: | Line 549: | ||
The **X/Y position** is specified in (16px x 16px) block units. | The **X/Y position** is specified in (16px x 16px) block units. | ||
The **block** uses the level data block format, except that the block type is ignored. | The **block** uses the level data block format, except that the block type is ignored. | ||
+ | |||
+ | Note that [[http:// | ||
==== PLM population ==== | ==== PLM population ==== | ||
Line 704: | Line 706: | ||
The **table timer** is how many frames to wait until the next instruction in the instruction list is proceeded to. | The **table timer** is how many frames to wait until the next instruction in the instruction list is proceeded to. | ||
+ | |||
+ | ===== Palette FX objects ===== | ||
+ | Palette FX objects are objects that modify palette data in real-time. | ||
+ | They exist in bank $8D and are loaded with a room from an FX header. | ||
+ | |||
+ | Palette FX object header format: | ||
+ | | ||
+ | | _ Instruction list pointer | ||
+ | | | | ||
+ | aaaa iiii | ||
+ | |||
+ | The **special instructions** for palette FX objects have the format: | ||
+ | | ||
+ | | _ Palette instruction list | ||
+ | | | | ||
+ | tttt [...] | ||
+ | |||
+ | The **palette timer** is how many frames to wait until the next instruction in the instruction list is proceeded to. | ||
+ | |||
+ | The ASM instructions are usually used for setting the initial colour index, | ||
+ | which is an index into CGRAM equal to '' | ||
+ | |||
+ | **Palette instructions** are a mix of colours (which are positive values) and ASM instructions (negative values). | ||
+ | Colours are written to successive positions in CGRAM starting from initial colour index. | ||
+ | ASM instructions can modify the colour index between listed colour values, | ||
+ | and the instruction $C595 is used to terminate the palette instruction list. | ||