conker64/libdragon

TLUT palette issues

Closed this issue · 1 comments

This problem could be related to 4 & 8bit texture issue.

16 color palettes won't load properly unless are sent as 4 times more (64 colors)
Different palettes won't work: Right now only palette 0 can be used (from 0 to 15)
Similar issues may happen with the 8bit palette.

Functions involved (rdp.c):

  • rdp_load_tlut(uint8_t _pal_bp, uint8_t _pal_num, uint16_t *_palette)
  • __rdp_load_texpal(sprite_t *sprite, int sh, int th )

Research how the data is sent to the RDP.

This problem has been fixed.

Functions:

  • rdp_select_palette( uint8_t pal ); // Select a palette from 0 to 15 on 4bit mode
  • rdp_load_palette( uint8_t pal, uint8_t col_num, uint16_t *palette );