hacking method not found

was using exit, since raise is not implemented. This was ambiguous as all programs exit.
Using :died as special kernel code and bending it, and reporting it in interpreter.
This commit is contained in:
2019-09-09 11:47:37 +03:00
parent 7334e72458
commit 0ae7c5d8aa
6 changed files with 22 additions and 7 deletions

View File

@ -245,6 +245,8 @@ module Risc
when :exit
set_instruction(nil)
return false
when :died
raise "Method not found #{@registers[:r0]}"
else
raise "un-implemented syscall #{name}"
end