summaryrefslogtreecommitdiff
path: root/tools/src/asset_processor/assets/macroasm.cpp
blob: c64df2e153875eb99116c916952d8d503d435235 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "macroasm.h"
#include <fmt/format.h>
#include <util/file.h>

std::filesystem::path BaseMacroAsmAsset::generateAssetPath() {
    std::filesystem::path asset_path = path;
    return asset_path.replace_extension(".s");
}

std::filesystem::path BaseMacroAsmAsset::generateBuildPath() {
    std::filesystem::path build_path = path;
    return build_path.replace_extension(".s");
}

void BaseMacroAsmAsset::extractBinary(const std::vector<char>& baserom) {
    BaseAsset::extractBinary(baserom);
    // Create dummy .s file that just incbins the .bin file.
    auto file = util::open_file(assetPath, "w");
    fmt::print(file.get(), "\t.incbin \"{}\"\n", path.native());
}