#include #include #include #include #include "assembler.h" #include "instruction.h" void dump(const code_sequence& c) { for (size_t i = 0; i < c.size(); ++i) { if ((i % 16) == 0) { if (i > 0) std::cout << std::endl; } else { std::cout << " "; } std::cout << fmt::format("{:02x}", c[i]); } std::cout << std::endl; } int main(int argc, char* argv[]) { try { if (argc == 2) { Assembler assembler; std::string source {Reichwein::File::getFile(argv[1])}; code_sequence result {assembler.encode(source)}; dump(result); } else { throw std::runtime_error("Unknown arguments"); } return 0; } catch (const std::exception& ex) { std::cerr << "Error: " << ex.what() << std::endl; return 1; } return 2; }