If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Donkey Kong Land 2/Notes: Difference between revisions
Jump to navigation
Jump to search
m (→Drawing Metasprites: Renamed this section) |
m (→Metasprites: Shortened some link syntax) |
||
Line 3: | Line 3: | ||
== Metasprites == | == Metasprites == | ||
<tt>0x18001</tt>: A list of 24-bit pointers (bank first, big endian) to [[ | <tt>0x18001</tt>: A list of 24-bit pointers (bank first, big endian) to [[#MetaspriteSet Structure|MetaspriteSet]] structures. It's indexed using a metasprite set ID. | ||
=== MetaspriteSet Structure === | === MetaspriteSet Structure === | ||
*The first byte is the number of metasprites in the set. | *The first byte is the number of metasprites in the set. | ||
*Following that is a list of [[ | *Following that is a list of [[#MetaspriteInfo Structure|MetaspriteInfo]] structures- one for each metasprite in the set. | ||
*Following that is a list of [[ | *Following that is a list of [[#MetaspriteLayout Structure|MetaspriteLayout]] structures- one for each metasprite in the set. | ||
=== MetaspriteInfo Structure === | === MetaspriteInfo Structure === | ||
Line 20: | Line 20: | ||
=== MetaspriteLayout Structure === | === MetaspriteLayout Structure === | ||
*A list of [[ | *A list of [[#SignedPoint Structure|SignedPoint]] structures- one for each sprite in a metasprite- that define the locations of the sprites that compose said metasprite. Each consecutive [[#SignedPoint Structure|SignedPoint]] is relative to the one before it. | ||
=== SignedPoint Structure === | === SignedPoint Structure === | ||
Line 29: | Line 29: | ||
=== Drawing Metasprites === | === Drawing Metasprites === | ||
* Each consecutive sprite forming a metasprite is drawn relative to the previous one based on the offsets defined in its [[ | * Each consecutive sprite forming a metasprite is drawn relative to the previous one based on the offsets defined in its [[#MetaspriteLayout Structure|MetaspriteLayout]] structure. | ||
* Only 8x16 sprites are used. | * Only 8x16 sprites are used. | ||
* Tile pattern indices increase by 2 for every consecutively drawn sprite. | * Tile pattern indices increase by 2 for every consecutively drawn sprite. |
Revision as of 22:37, 16 December 2014
The following article is a Notes Page for Donkey Kong Land 2.
Metasprites
0x18001: A list of 24-bit pointers (bank first, big endian) to MetaspriteSet structures. It's indexed using a metasprite set ID.
MetaspriteSet Structure
- The first byte is the number of metasprites in the set.
- Following that is a list of MetaspriteInfo structures- one for each metasprite in the set.
- Following that is a list of MetaspriteLayout structures- one for each metasprite in the set.
MetaspriteInfo Structure
- 0x0: The number of sprites used by this metasprite.
- 0x1-2: A 16-bit pointer (big endian) to the first of the uncompressed tile patterns used by this metasprite. The pointer uses a special format (detailed below).
- Bits 0x0-A: The address can be calculated as this value * 0x20.
- Bits 0xB-F: The bank.
MetaspriteLayout Structure
- A list of SignedPoint structures- one for each sprite in a metasprite- that define the locations of the sprites that compose said metasprite. Each consecutive SignedPoint is relative to the one before it.
SignedPoint Structure
- 0x0: Y coordinate (signed)
- 0x1: X coordinate (signed)
Drawing Metasprites
- Each consecutive sprite forming a metasprite is drawn relative to the previous one based on the offsets defined in its MetaspriteLayout structure.
- Only 8x16 sprites are used.
- Tile pattern indices increase by 2 for every consecutively drawn sprite.
- Each sprite forming the metasprite uses the same sprite palette.
- When flipping the metasprite horizontally, negate the X offset of each sprite before adding it. Additionally, the metasprite should be drawn 7 pixels to the left.
Compression
This game uses the same compression formats as Donkey Kong Land and Donkey Kong Land III. The tables used for Huffman coding decompression can be found at the same locations as in Donkey Kong Land.
Descriptions of the compression formats can be found at Donkey Kong Land:Notes#Compression.