#pragma once

#include <stdint.h>

namespace mini
{
    namespace pal
    {
        extern uint32_t palette[256];
        
        void init();
        
        uint32_t *load(const char* filename, uint16_t *palsize=nullptr);
        void set(uint32_t *pal);
        namespace color {
            void set(uint8_t index, uint32_t color);
            uint32_t get(uint8_t index);
        }
        namespace trans {
            void set(uint8_t index);
            uint8_t get();
        }
        namespace subpal {
            uint8_t set(uint8_t index, uint8_t color);
            void reset();
        }
    }
}
