From 543bc3d2046359b0cce2bc3da9e57a8270ea8a7e Mon Sep 17 00:00:00 2001 From: scawful Date: Tue, 6 Aug 2024 19:15:16 -0400 Subject: [PATCH] add graphics sheets array and num sheets constant --- src/app/rom.cc | 5 ++++- src/app/rom.h | 8 +++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/app/rom.cc b/src/app/rom.cc index 8835d49c..5540c35e 100644 --- a/src/app/rom.cc +++ b/src/app/rom.cc @@ -81,7 +81,6 @@ absl::Status Rom::LoadLinkGraphics() { } absl::Status Rom::LoadAllGraphicsData() { - constexpr uint32_t kNumGfxSheets = 223; Bytes sheet; bool bpp3 = false; @@ -103,6 +102,10 @@ absl::Status Rom::LoadAllGraphicsData() { if (bpp3) { auto converted_sheet = gfx::SnesTo8bppSheet(sheet, 3); + graphics_sheets_[i].Create(core::kTilesheetWidth, core::kTilesheetHeight, + core::kTilesheetDepth, converted_sheet); + graphics_sheets_[i].CreateTexture(renderer_); + if (flags()->kUseBitmapManager) { graphics_manager_.LoadBitmap(i, converted_sheet, core::kTilesheetWidth, core::kTilesheetHeight, diff --git a/src/app/rom.h b/src/app/rom.h index 3ecb9dff..fee078fd 100644 --- a/src/app/rom.h +++ b/src/app/rom.h @@ -117,6 +117,7 @@ static const std::map kVersionConstantsMap = { 0x67DD0, // kDungeonPalettesGroups }}}; +constexpr uint32_t kNumGfxSheets = 223; constexpr uint32_t kNormalGfxSpaceStart = 0x87000; constexpr uint32_t kNormalGfxSpaceEnd = 0xC4200; constexpr uint32_t kFontSpriteLocation = 0x70000; @@ -557,9 +558,14 @@ class Rom : public core::ExperimentFlags { uchar title_[21] = "ROM Not Loaded"; std::string filename_; + // Full contiguous rom space Bytes rom_data_; + + // Full contiguous graphics space Bytes graphics_buffer_; - Bytes font_gfx_data_; + + // All graphics sheets in the game + std::array graphics_sheets_; Z3_Version version_ = Z3_Version::US; gfx::BitmapTable graphics_bin_;