This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
mario_kart_64:tkmk00 [2016/05/01 21:48] queueram Add header info and clean up texture table |
mario_kart_64:tkmk00 [2017/06/23 11:10] (current) shygoo |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== TKMK00 ====== | + | ====== TKMK00 Compression Format ====== |
TKMK00 is a format for some compressed textures used in the Mario Kart 64 title screen and menus. | TKMK00 is a format for some compressed textures used in the Mario Kart 64 title screen and menus. | ||
+ | |||
+ | ===== TKMK00 Decoder ===== | ||
+ | The TKMK00 decoder function is located at 800405D0/0411D0 in the Mario Kart 64 (U) ROM. It takes 4 parameters: | ||
+ | ^ Param ^ Type ^ Description ^ | ||
+ | | A0 | u8* | pointer to input TKMK00 compressed data | | ||
+ | | A1 | u8* | pointer to output buffer (1 byte per pixel) | | ||
+ | | A2 | u16* | pointer to RGBA16 texture output buffer (2 bytes per pixel) | | ||
+ | | A3 | u16 | RGBA mask to clear alpha bit for in output (usually 0x0001 or 0x00BE) | | ||
===== TKMK00 Header ===== | ===== TKMK00 Header ===== | ||
Line 78: | Line 86: | ||
| 820AC0 | 01 | {{http://queueram.com/n64/mk64/tkmk00/01/820AC0.png}} | | | 820AC0 | 01 | {{http://queueram.com/n64/mk64/tkmk00/01/820AC0.png}} | | ||
| 820FC0 | 01 | {{http://queueram.com/n64/mk64/tkmk00/01/820FC0.png}} | | | 820FC0 | 01 | {{http://queueram.com/n64/mk64/tkmk00/01/820FC0.png}} | | ||
+ | |||
+ | ===== Software Libraries ===== | ||
+ | C: tkmk00: [[https://github.com/queueRAM/tkmk00]] | ||
+ | |||
+ | C#: TKMK00Encoder:[[https://github.com/mib-f8sm9c/MiscellaneousHacks/blob/master/BetaTools/MarioKartTestingTool/TKMK00Encoder.cs]] | ||
+ | ===== References ===== | ||
+ | * http://origami64.net/showthread.php?tid=47&pid=3064#pid3064 | ||
+ | * http://acmlm.kafuka.org/archive3/thread.php?id=3283 |