virtualSoC  0.6.2
baskett
Vcsos.mm.vmcall Class Reference
+ Inheritance diagram for Vcsos.mm.vmcall:

Public Member Functions

bool ParseAndRun (ParserFactory factory)
 

Properties

string Name [get]
 
string Info [get]
 

Detailed Description

Member Function Documentation

◆ ParseAndRun()

bool Vcsos.mm.vmcall.ParseAndRun ( ParserFactory  factory)

Implements Vcsos.mm.vmoperator.

36  {
37  InstructionParam2 param1 = factory.getParam(4);
38  int param1V = VM.Instance.Ram.Read32 (VM.Instance.CurrentCore.Register.ip + 5);
39 
40  VM.Instance.CurrentCore.Stack.Push32 (VM.Instance.CurrentCore.Register.ip+9);
41  VM.Instance.CurrentCore.Register.Set ("IP", param1V);
42 
43  if (param1 == InstructionParam2.Value)
44  VM.Instance.CurrentCore.Register.Set ("IP", param1V);
45  else if (param1 == InstructionParam2.Register) {
46  VM.Instance.CurrentCore.Register.Set ("IP", VM.Instance.CurrentCore.Register.Get(factory.m_pRegisters [param1V].Name));
47  }
48  else if (param1 == InstructionParam2.Pointer) {
49  VM.Instance.CurrentCore.Register.Set ("IP", MemoryMap.Read32(param1V));
50  }
51 
52  return true;
53  }
InstructionParam2
Typ arten eines Parameter
Definition: Instruction.cs:30

Property Documentation

◆ Info

string Vcsos.mm.vmcall.Info
get

◆ Name

string Vcsos.mm.vmcall.Name
get

The documentation for this class was generated from the following file: