This repo hosts code for two distinct executables: asm.exe and sim.exe. Usage of these execs is via CLI, i.e.:
asm.exe program.asm imemin.txt dmemin.txt sim.exe imemin.txt dmemin.txt diskin.txt irq2in.txt dmemout.txt regout.txt trace.txt hwregtrace.txt cycles.txt leds.txt display7seg.txt diskout.txt monitor.txt monitor.yuv
Where the actual assembly code supplied by the user (henceforth: the program) is loacted in program.asm, and the machine code generated by the asm.exe is located in imemin.txt.
To support easy development and debugging, the command line arguments are supplied via project configuration; however, at later stages of the development it became important to support differnet input/output locations and files, therefore usage of #defines within main.c was made, i.e. use #define TEST "<test_name>" alter the input/output files' locations to a directory that hosts disktest.asm instead of the generic program.asm (filenames generally don't change, except for the program's name).
current solution looks like this in Simulator:
and Assembler:
make sure you use #define "program", since the string value is used to determine the enitre path!