diff --git a/src/app/core/common.cc b/src/app/core/common.cc index 2cf0dce7..fe4eba1f 100644 --- a/src/app/core/common.cc +++ b/src/app/core/common.cc @@ -15,6 +15,7 @@ #include "absl/status/statusor.h" #include "absl/strings/str_format.h" +#include "app/core/constants.h" #include "imgui/imgui.h" namespace yaze { @@ -323,12 +324,12 @@ void ApplyBpsPatch(const std::vector &source, } } -absl::StatusOr CheckVersion(const char* version) { +absl::StatusOr CheckVersion(const char *version) { std::string version_string = version; - if (version_string != kYazeVersion) { - std::string message = absl::StrFormat( - "Yaze version mismatch: expected %s, got %s", kYazeVersion, - version_string.c_str()); + if (version_string != core::kYazeVersion) { + std::string message = + absl::StrFormat("Yaze version mismatch: expected %s, got %s", + core::kYazeVersion, version_string.c_str()); return absl::InvalidArgumentError(message); } return version_string; diff --git a/src/app/core/common.h b/src/app/core/common.h index e977f360..9621a3ff 100644 --- a/src/app/core/common.h +++ b/src/app/core/common.h @@ -10,6 +10,7 @@ #include #include +#include "absl/status/statusor.h" #include "absl/strings/str_format.h" #include "imgui/imgui.h" diff --git a/src/app/editor/editor_manager.cc b/src/app/editor/editor_manager.cc index ee66a4d3..cf3d3288 100644 --- a/src/app/editor/editor_manager.cc +++ b/src/app/editor/editor_manager.cc @@ -375,7 +375,7 @@ void EditorManager::DrawInfoPopup() { if (rom_info_) OpenPopup("ROM Information"); if (BeginPopupModal("ROM Information", nullptr, ImGuiWindowFlags_AlwaysAutoResize)) { - Text("Title: %s", rom()->title()); + Text("Title: %s", rom()->title().c_str()); Text("ROM Size: %ld", rom()->size()); if (Button("Close", gui::kDefaultModalSize) || diff --git a/src/app/rom.cc b/src/app/rom.cc index 14e85f34..0ac48ab8 100644 --- a/src/app/rom.cc +++ b/src/app/rom.cc @@ -209,7 +209,9 @@ absl::Status Rom::LoadFromFile(const std::string& filename, bool z3_load) { // Copy ROM title constexpr uint32_t kTitleStringOffset = 0x7FC0; constexpr uint32_t kTitleStringLength = 20; - memcpy(title_, rom_data_.data() + kTitleStringOffset, kTitleStringLength); + std::copy(rom_data_.begin() + kTitleStringOffset, + rom_data_.begin() + kTitleStringOffset + kTitleStringLength, + title_.begin()); if (rom_data_[kTitleStringOffset + 0x19] == 0) { version_ = Z3_Version::JP; } else { @@ -247,7 +249,9 @@ absl::Status Rom::LoadFromPointer(uchar* data, size_t length, bool z3_load) { // Copy ROM title constexpr uint32_t kTitleStringOffset = 0x7FC0; constexpr uint32_t kTitleStringLength = 20; - memcpy(title_, rom_data_.data() + kTitleStringOffset, kTitleStringLength); + std::copy(rom_data_.begin() + kTitleStringOffset, + rom_data_.begin() + kTitleStringOffset + kTitleStringLength, + title_.begin()); if (rom_data_[kTitleStringOffset + 0x19] == 0) { version_ = Z3_Version::JP; } else { diff --git a/src/app/rom.h b/src/app/rom.h index 4ab913b6..3c6f0c22 100644 --- a/src/app/rom.h +++ b/src/app/rom.h @@ -5,35 +5,35 @@ #include #include -#include // for size_t -#include // for uint32_t, uint8_t, uint16_t +#include +#include #include #include #include #include -#include // for function -#include // for string, operator<<, basic_... -#include // for map -#include // for shared_ptr, make_shared -#include // for stack -#include // for hash, operator== -#include // for unordered_map +#include +#include +#include +#include +#include +#include +#include #include -#include // for vector +#include -#include "absl/container/flat_hash_map.h" // for flat_hash_map -#include "absl/status/status.h" // for Status -#include "absl/status/statusor.h" // for StatusOr +#include "absl/container/flat_hash_map.h" +#include "absl/status/status.h" +#include "absl/status/statusor.h" #include "absl/strings/match.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" -#include "absl/strings/string_view.h" // for string_view +#include "absl/strings/string_view.h" #include "app/core/common.h" -#include "app/core/constants.h" // for Bytes, uchar, armorPalettes +#include "app/core/constants.h" #include "app/core/labeling.h" -#include "app/gfx/bitmap.h" // for Bitmap, BitmapTable +#include "app/gfx/bitmap.h" #include "app/gfx/compression.h" -#include "app/gfx/snes_palette.h" // for PaletteGroup, SNESColor +#include "app/gfx/snes_palette.h" #include "app/gfx/snes_tile.h" namespace yaze { @@ -511,8 +511,8 @@ class Rom : public core::ExperimentFlags { long size_ = 0; bool is_loaded_ = false; bool has_header_ = false; - uchar title_[21] = "ROM Not Loaded"; - std::string filename_; + std::string title_ = "ROM Not Loaded"; + std::string filename_ = ""; // Full contiguous rom space Bytes rom_data_;