Adjust DrawArea for NTSC

This commit is contained in:
Jaby 2024-02-04 21:43:11 -05:00
parent 16cfcf42b2
commit 0fb6ea8190
2 changed files with 6 additions and 3 deletions

View File

@ -75,6 +75,7 @@ namespace JabyEngine {
} }
void display_logo() { void display_logo() {
static constexpr uint16_t TexturePageHeight = 256;
const auto bytes_ready = decompress_logo(); const auto bytes_ready = decompress_logo();
// Upload SplashScreen picture // Upload SplashScreen picture
@ -86,7 +87,7 @@ namespace JabyEngine {
SJIS::load_clut(BIOS_Font::CLUTLoadPos); SJIS::load_clut(BIOS_Font::CLUTLoadPos);
// Duplicate DisplayBuffer content // 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)); ::JabyEngine::GPU::internal::copy_vram_to_vram({PositionU16::create(0, TexturePageHeight), SizeU16::create(Display::Width, TexturePageHeight)}, PositionU16::create(0, 0));
Display::enable(); Display::enable();
} }

View File

@ -39,11 +39,13 @@ namespace JabyEngine {
} }
uint32_t Display :: exchange_buffer_and_display() { uint32_t Display :: exchange_buffer_and_display() {
const uint16_t draw_area_y = (PublicDisplay::Height*PublicDisplay::current_id); static constexpr uint16_t TexturePageHeight = 256;
const uint16_t draw_area_y = (TexturePageHeight*PublicDisplay::current_id);
GPU::internal::set_draw_area(GPU::PositionU16::create(0, draw_area_y)); GPU::internal::set_draw_area(GPU::PositionU16::create(0, draw_area_y));
PublicDisplay::current_id ^= 1; PublicDisplay::current_id ^= 1;
GPU_IO::GP1.write(GPU_IO::Command::DisplayArea(GPU::PositionU16::create(0, static_cast<uint16_t>((PublicDisplay::Height*PublicDisplay::current_id))))); GPU_IO::GP1.write(GPU_IO::Command::DisplayArea(GPU::PositionU16::create(0, static_cast<uint16_t>((TexturePageHeight*PublicDisplay::current_id)))));
return draw_area_y; return draw_area_y;
} }