fix register update

This commit is contained in:
Torsten Ruger
2015-07-30 14:00:49 +03:00
parent 08beaa2d93
commit e8a5a20db1
4 changed files with 46 additions and 7 deletions

View File

@ -114,7 +114,7 @@ class Interpreter
value = object_for( @instruction.register )
object = object_for( @instruction.array )
object.internal_object_set( @instruction.index , value )
trigger(:object_changed, @instruction.register )
trigger(:object_changed, @instruction.array )
true
end

View File

@ -12,11 +12,11 @@ module Main
init_blocks
end
def tick
@interpreter.tick
end
private
def marker var
return "W" if var.is_a? String
var.class.name.split("::").last[0]
end
def init_machine
machine = Virtual.machine.boot
code = Ast::ExpressionList.new( [Ast::CallSiteExpression.new(:putstring, [] ,Ast::StringExpression.new("Hello again"))])
@ -28,7 +28,11 @@ module Main
def init_registers
page._registers!.clear
@interpreter.registers.each do |reg , val|
page._registers << RegisterModel.new( :name => reg , :value => val)
model = RegisterModel.new( :name => reg , :value => val)
page._registers << model
@interpreter.register_event(:register_changed, model)
@interpreter.register_event(:object_changed, model)
model.register_changed( reg , nil , @interpreter.registers[reg])
end
end
def init_classes