Adds destructor for passed CpuState.
This commit is contained in:
parent
e8156fea82
commit
5b5b381a2c
4 changed files with 11 additions and 5 deletions
|
@ -54,6 +54,5 @@ namespace csl
|
||||||
#undef COPY
|
#undef COPY
|
||||||
|
|
||||||
return VMValue(CpuStateType, &object);
|
return VMValue(CpuStateType, &object);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,7 +66,8 @@ BEGIN
|
||||||
IF scancode = 1u8 THEN
|
IF scancode = 1u8 THEN
|
||||||
shutdown();
|
shutdown();
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
|
~data;
|
||||||
END
|
END
|
||||||
|
|
||||||
#!
|
#!
|
||||||
|
@ -81,4 +82,7 @@ Was noch gemacht werden muss, bis der Tastatur-Treiber funktionieren könnte:
|
||||||
☑ Bitwise Operations
|
☑ Bitwise Operations
|
||||||
☑ outb und inb
|
☑ outb und inb
|
||||||
☐ eventuell hex literals für Copper
|
☐ eventuell hex literals für Copper
|
||||||
|
☐ NEW/DELETE
|
||||||
|
☐ [TYPE] →
|
||||||
|
☐ ~()
|
||||||
!#
|
!#
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
; =============================================
|
; =============================================
|
||||||
; compiled with Copper 1.0
|
; compiled with Copper 1.0
|
||||||
; 2015-10-13 12:52:49
|
; 2015-10-13 14:57:24
|
||||||
; =============================================
|
; =============================================
|
||||||
|
|
||||||
; native method: print(…)
|
; native method: print(…)
|
||||||
|
@ -140,6 +140,9 @@ _private_7:
|
||||||
|
|
||||||
_private_6:
|
_private_6:
|
||||||
|
|
||||||
|
load -2
|
||||||
|
destruct
|
||||||
|
|
||||||
ret
|
ret
|
||||||
; end of irq
|
; end of irq
|
||||||
|
|
||||||
|
|
|
@ -182,7 +182,7 @@ extern "C" void vm_start()
|
||||||
|
|
||||||
CpuState *cpu = &irqFiFo.items[irqFiFo.read];
|
CpuState *cpu = &irqFiFo.items[irqFiFo.read];
|
||||||
|
|
||||||
/*
|
//*
|
||||||
Thread *thread = irqService->createThread(irqRoutine);
|
Thread *thread = irqService->createThread(irqRoutine);
|
||||||
thread->start({
|
thread->start({
|
||||||
VMValue::Int32(cpu->intr),
|
VMValue::Int32(cpu->intr),
|
||||||
|
@ -207,7 +207,7 @@ extern "C" void vm_start()
|
||||||
|
|
||||||
kprintf("OS failed with: %s\n", execptionName(mainThread->exception()));
|
kprintf("OS failed with: %s\n", execptionName(mainThread->exception()));
|
||||||
|
|
||||||
shutdownRequested = true;
|
// shutdownRequested = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue