moving many attributes into the attributes hash, but not nearly all

This commit is contained in:
Torsten Ruger
2014-05-10 15:59:46 +03:00
parent 8faf0ba17f
commit 9e5b60dfab
10 changed files with 49 additions and 90 deletions

View File

@@ -1,30 +0,0 @@
require "vm/instruction"
require_relative "constants"
class Saved
def initializ(opcode , condition_code , update_status , args)
@update_status_flag = update_status
@condition_code = condition_code.to_sym
@opcode = opcode
@args = args
@operand = 0
end
attr_reader :opcode, :args
# Many arm instructions may be conditional, where the default condition is always (al)
# ArmMachine::COND_CODES names them, and this attribute reflects it
attr_reader :condition_code
attr_reader :operand
# Logic instructions may be executed with or without affecting the status register
# Only when an instruction affects the status is a subsequent compare instruction effective
# But to make the conditional execution (see cond) work for more than one instruction, one needs to
# be able to execute without changing the status
attr_reader :update_status_flag
# arm intrucioons are pretty sensible, and always 4 bytes (thumb not supported)
def length
4
end
end