diff --git a/src/execute.c b/src/execute.c index b5ad72a..755a0f9 100644 --- a/src/execute.c +++ b/src/execute.c @@ -1,3 +1,4 @@ +#include #include #include "execute.h" #include "print.h" @@ -235,6 +236,9 @@ static bool isConditionMet(Machine* state, a64inst_ConditionType cond) { return state->conditionCodes.Zero || (state->conditionCodes.Negative != state->conditionCodes.Overflow); case AL: return true; + default: + fprintf(stderr, "Unknown condition specified!\n"); + exit(1); } } diff --git a/src/print.c b/src/print.c index 3021356..430f594 100644 --- a/src/print.c +++ b/src/print.c @@ -17,9 +17,9 @@ void printState(Machine *state, FILE *stream) { void printRegisters(Machine *state, FILE *stream) { fprintf(stream, "Registers:\n"); for (int i = 0; i < REGISTER_COUNT; i++) { - fprintf(stream, "X%02d\t= %" PRIu64 "\n", i, state->registers[i]); + fprintf(stream, "X%02d\t= %016x\n", i, (unsigned int)state->registers[i]); } - fprintf(stream, "PC\t= %" PRIu64 "\n", state->pc); + fprintf(stream, "PC\t= %016x\n", (unsigned int)state->pc); fprintf(stream, "PSTATE\t: %c%c%c%c", state->conditionCodes.Negative ? 'N' : UNSET_CONDITION_CODE_CHAR, state->conditionCodes.Zero ? 'Z' : UNSET_CONDITION_CODE_CHAR, state->conditionCodes.Carry ? 'C' : UNSET_CONDITION_CODE_CHAR,