diff --git a/src/app/asm/script.h b/src/app/asm/script.h index c0eb30ac..61be3609 100644 --- a/src/app/asm/script.h +++ b/src/app/asm/script.h @@ -23,17 +23,21 @@ namespace snes_asm { const std::string kMosaicChangeOffset = "$02AADB"; constexpr int kSNESToPCOffset = 0x138000; -class Script { +class ScriptTemplate { + public: + virtual absl::Status ApplyPatchToROM(ROM& rom) = 0; +}; + +class Script : public ScriptTemplate { public: Script() { asar_init_with_dll_path("assets/libasar.dll"); } + absl::Status ApplyPatchToROM(ROM& rom) override; absl::Status GenerateMosaicChangeAssembly( ROM& rom, char mosaic_tiles[core::kNumOverworldMaps], int routine_offset, int hook_offset = 0); private: - absl::Status ApplyPatchToROM(ROM& rom); - int64_t patch_size_; std::string patch_filename_; std::string patch_contents_;