Exemplo n.º 1
0
 public void DoSetup()
 {
     mWatch      = Stopwatch.StartNew();
     mList       = new List <WorkInfo>();
     mHalt       = new HaltEvent();
     mThrowUntil = -1;
     mHaltOn     = -1;
 }
Exemplo n.º 2
0
        public void Announce(Event ev, object payload = null)
        {
            Assert(ev != null, "Machine cannot announce a null event");
            if (ev is PHalt)
            {
                ev = new HaltEvent();
            }

            System.Reflection.ConstructorInfo oneArgConstructor = ev.GetType().GetConstructors().First(x => x.GetParameters().Length > 0);
            Event @event = (Event)oneArgConstructor.Invoke(new[] { payload });

            AnnounceInternal(@event);
        }
Exemplo n.º 3
0
        public void Execute()
        {
            switch (AssemblerExecute.registers.AH)
            {
            case 0:
            {
                AssemblerExecute.flags.InterruptFlag = false;
                AssemblerExecute.Halt = true;
                HaltEvent.onHalt();
                ProcessStatusUpateEvent.onProcessUpdate(new ProcessStatusUpdateEventArgs("Process Terminated"));
                AssemblerExecute.flags.InterruptFlag = true;

                if (CurrentOpcodeEvent.IsNULL())
                {
                    Process.GetCurrentProcess().Kill();
                }
            }
            break;
            }
        }
Exemplo n.º 4
0
 public void Init()
 {
     haltEvent = new HaltEvent();
 }
Exemplo n.º 5
0
 public void SetUp()
 {
     mHalt = new HaltEvent();
 }