 
   translateInstruction: (instruction) ->
     return @active_mapping.mapCode(instruction)
+
+  isCurrentActionBlank: () ->
+    return (@active_program &&
+            @translateInstruction(@currentInstruction()).type == 'blank')
 
   execute: (requested_action) ->
     ra = requested_action

    x = @botx + dir.dx
    y = @boty + dir.dy

    console.log('want ' +x+','+y)
    
    if @isMoveAllowed(x,y)
      if @active_program?
        @execute({type: 'move', dir: dir})
      else
        # free movement
        @botx = x

      return false

    if @allowed_move?
      if @allowed_move.x != x or @allowed_move.y != y
        return false

