Upload BIOS Clut (wrong plaette yet)

This commit is contained in:
2023-12-20 16:24:56 -05:00
parent 4bf87bc85f
commit 47fb903103
4 changed files with 66 additions and 40 deletions

View File

@@ -22,6 +22,26 @@ namespace JabyEngine {
namespace internal {
extern SysCall::InterrupCallback callback;
}
namespace SJIS {
void load_clut(const PositionU16& dst_cord) {
struct CLUT {
CPU2VRAM cmd;
Color data[16];
};
const CLUT clut {
.cmd = CPU2VRAM::create(AreaU16::create(dst_cord, GPU::SizeU16::create(16, 1))),
.data = {
Color::Blue(), Color::White(),
Color::Blue(), Color::White(), Color::Blue(), Color::White(), Color::Blue(), Color::White(),
Color::Blue(), Color::White(),
Color::Blue(), Color::White(), Color::Blue(), Color::White(), Color::Blue(), Color::White(),
}
};
GPU::internal::render(reinterpret_cast<const uint32_t*>(&clut), sizeof(CLUT)/sizeof(uint32_t));
}
}
}
namespace boot {
@@ -64,6 +84,7 @@ namespace JabyEngine {
// Now load the BIOS font to the specified location
SJIS::load(BIOS_Font::TextureLoadPos);
SJIS::load_clut(BIOS_Font::CLUTLoadPos);
// Duplicate DisplayBuffer content
::JabyEngine::GPU::internal::copy_vram_to_vram({PositionU16::create(0, Display::Height), SizeU16::create(Display::Width, Display::Height)}, PositionU16::create(0, 0));