abstract class Processor extends AnyRef
An abstract class defining a processor in a system.
- Alphabetic
- By Inheritance
- Processor
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Processor(descriptor: ProcessorDescriptor)
- descriptor
the descriptor of the processor.
Abstract Value Members
- abstract def calculateRomStart(romSize: Long): Option[Long]
Calculates the start address for a ROM/BIOS based on the size.
Calculates the start address for a ROM/BIOS based on the size. The start address may be constant or dynamic depending on the size (e.g. for x86). The start address is not necessarily the start address for the processor. The start address is None if the ROM/BIOS is too large for the processor.
- returns
the start address for the ROM/BIOS depending on the architecture
- abstract def register(register: Register): Try[Register]
Sets the register of the processor to the given content.
Sets the register of the processor to the given content.
The returned register (in case of Success(_)) contains the new register content. Failure is returned in case that
- the processor is running and therefore the register cannot be set
- the register is unknown to the processor
- the value of the register is invalid
- register
the register to set
- returns
Success with the new register value or Failure if the register cannot be set.
- abstract def register(core: Int, name: String): Try[Register]
Return the register with the given name of the given core, e.g.
Return the register with the given name of the given core, e.g. "AX" or "D1".
- core
the core for which the register should be returned
- name
the name of the register to return
- returns
the register named by name. Failure if the register does not exist or cannot be returned.
- abstract def registers(core: Int): Try[Map[String, Register]]
All registers of a core when the core is stopped.
All registers of a core when the core is stopped.
The result is Success if the core can return the registers. When Failure is returned then the core cannot return the registers at the moment, e.g. because it is running at the moment.
The key of the map is the register name.
- core
the core for which the registers should be queried
- returns
A Try containing a Map with the register name as key and the register as value.
- abstract def registers: Try[Map[Int, Map[String, Register]]]
All registers of all cores when the cores are stopped.
All registers of all cores when the cores are stopped.
The result is Success if the cores can return the registers. When Failure is returned then the cores cannot return the registers at the moment, e.g. because any is running at the moment.
The key of the map is the register name.
- returns
A Try containing a Map with the core as key and a Map with the register name as key and the register as value.
- abstract def reset(): Unit
Resets the processor and starts it new.
- abstract def step(): Unit
Do a single step of the processor (normally execute the next instruction).
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addMemory(baseAddress: Long, memory: Memory): Unit
Adds a memory area to this processor.
Adds a memory area to this processor. The memory has a base address (the lowest address handled by this processor).
- baseAddress
the base address of the memory to add
- memory
the memory to add
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- val descriptor: ProcessorDescriptor
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val maxMemory: Long
- val memoryMap: Map[Long, Memory]
The memory map of the processor.
- val name: String
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val romName: String
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()