9#ifndef YAZE_SRC_CLI_SERVICE_AGENT_TOOLS_ROM_DIFF_TOOL_H_
10#define YAZE_SRC_CLI_SERVICE_AGENT_TOOLS_ROM_DIFF_TOOL_H_
16#include "absl/status/status.h"
53 std::string
GetName()
const override {
return "rom-diff"; }
56 return "Compare two ROM files and identify differences";
60 return "rom-diff --rom1=<path> --rom2=<path> [--semantic] [--format=<json|text>]";
75 const std::vector<uint8_t>& rom2,
79 std::string
DescribeChange(uint32_t address,
const std::vector<uint8_t>& old_val,
80 const std::vector<uint8_t>& new_val)
const;
95 std::string
GetName()
const override {
return "rom-changes"; }
98 return "Analyze what game elements changed between two ROMs";
102 return "rom-changes --rom1=<path> --rom2=<path> [--format=<json|text>]";
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Utility for parsing common CLI argument patterns.
absl::Status RequireArgs(const std::vector< std::string > &required) const
Validate that required arguments are present.
Base class for CLI command handlers.