This commit is contained in:
2017-02-06 12:14:05 +01:00
parent 209c869eeb
commit 19a2260644
9 changed files with 60 additions and 43 deletions

5
vm.cpp
View File

@@ -141,7 +141,8 @@ static void load_program(const char* filename) {
free(program);
if (error_raised()) {
error_print();
vm_pc = 0xA000;
//error_print(&mem[0xA000]);
}
else {
printf("Compilation complete!\nProgram size: %d bytes\nMemory usage: %d bytes\n", parser_get_codesize(), parser_get_memory_usage());
@@ -174,7 +175,7 @@ const unsigned short vm_step() {
case OP_NOP: vm_cycles++; break;
case OP_PUSH: PUSH(ds, vm_program[vm_pc++]); vm_cycles++; break;
case OP_POP: POP(ds); vm_cycles++; break;
case OP_POP: ds[0]--; vm_cycles++; break;
case OP_DUP: a = PEEK(ds); PUSH(ds, a); vm_cycles++; break;
case OP_SWAP: a = POP(ds); b = POP(ds); PUSH(ds, a); PUSH(ds, b); vm_cycles++; break;
case OP_LOAD: PUSH(ds, mem[WORD()]); vm_cycles++; break;