#include "assembler.h" #include #include int main(int argc, char *argv[]) { const char *input = NULL; const char *output = "a.gobj"; for (int i = 1; i < argc; i++) { if (strcmp(argv[i], "-o") == 0 && i + 1 < argc) output = argv[++i]; else input = argv[i]; } if (!input) { printf("Usage: %s -o \n", argv[0]); return 1; } Assembler as; asm_init(&as); if (asm_assemble(&as, input) != 0) return 1; if (asm_write_gobj(&as, output) != 0) return 1; printf("Assembled %s -> %s (%u instructions)\n", input, output, as.code_len); return 0; }