OBJ file: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:
* First long word value is the compressed file length (/4-1).
* First long word value is the compressed file length (/4-1).
* The system works by checking single long words at a time.
* The system works by checking single long words at a time.
* When a zero value is found it is stored and the next value is checked. If non zero a fill of zero is created to match the value read.
* When a zero value is found it is stored and the next value is checked. A fill of zero is created to match the value read unless it is zero.


Example.
Example.

Revision as of 10:32, 8 December 2013

OBJ files contain the sprites graphics (equivalent to the C ROMs on cartridge systems). Data is compressed however using a simple RLE compression removing runs with a value of 0x00000000. Once decompressed the format is described here: sprite graphics format.

RLE compression.

  • First long word value is the compressed file length (/4-1).
  • The system works by checking single long words at a time.
  • When a zero value is found it is stored and the next value is checked. A fill of zero is created to match the value read unless it is zero.

Example.

compressed:

0x00000007, 0x11111111, 0x00000000, 0x00000003, 0x22222222, 0x00000000, 0x00000000, 0x33333333, 0x44444444

decompressed:

0x11111111, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x22222222, 0x00000000, 0x33333333, 0x44444444